@munchi_oy/native-ui 0.1.5 → 0.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -1
- package/dist/index.mjs +1 -1
- package/package.json +7 -8
- package/src/MNumpad.tsx +12 -4
package/dist/index.d.mts
CHANGED
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var co=Object.create;var ze=Object.defineProperty;var mo=Object.getOwnPropertyDescriptor;var po=Object.getOwnPropertyNames;var uo=Object.getPrototypeOf,fo=Object.prototype.hasOwnProperty;var xo=(e,t)=>{for(var r in t)ze(e,r,{get:t[r],enumerable:!0})},wr=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of po(t))!fo.call(e,s)&&s!==r&&ze(e,s,{get:()=>t[s],enumerable:!(o=mo(t,s))||o.enumerable});return e};var b=(e,t,r)=>(r=e!=null?co(uo(e)):{},wr(t||!e||!e.__esModule?ze(r,"default",{value:e,enumerable:!0}):r,e)),go=e=>wr(ze({},"__esModule",{value:!0}),e);var la={};xo(la,{MAlert:()=>Ct,MAnimation:()=>Vt,MAvatar:()=>At,MBadge:()=>Et,MButton:()=>Bt,MCard:()=>rt,MCardContent:()=>nt,MCardDescription:()=>st,MCardFooter:()=>it,MCardHeader:()=>ot,MCardTitle:()=>at,MChevron:()=>Ot,MConfirmation:()=>ar,MCountDown:()=>Qt,MDateTimePicker:()=>zt,MDivider:()=>$t,MDrawerRightPanel:()=>Xt,MDropdown:()=>Jt,MInput:()=>gr,MLabel:()=>yt,MLucideIcon:()=>jt,MModal:()=>_e,MNativeAlert:()=>Yt,MNumpad:()=>mr,MPicker:()=>Gt,MPinPadKeys:()=>ir,MPortal:()=>Se.Portal,MPortalHost:()=>Se.PortalHost,MProgressBar:()=>Zt,MRadioGroup:()=>ht,MRadioGroupItem:()=>Pt,MRequiredLabel:()=>Or,MResponsiveContainer:()=>qt,MSearch:()=>tr,MSelector:()=>rr,MSkeleton:()=>fr,MSwitch:()=>xr,MTable:()=>ct,MTableBody:()=>mt,MTableCell:()=>xt,MTableFooter:()=>pt,MTableHead:()=>ft,MTableHeader:()=>dt,MTableRow:()=>ut,MTabs:()=>pr,MText:()=>I,MTimerUp:()=>ur,MToggle:()=>or,ModalContent:()=>Gr,ModalHeight:()=>Ut,ModalScrollContext:()=>Xe,NAV_THEME:()=>U,NumpadMode:()=>cr,buttonVariants:()=>Ft,cn:()=>a,darkVars:()=>Ne,getDecimalSeparator:()=>dr,lightVars:()=>Me,typography:()=>Cr,useColorScheme:()=>j,useIconColors:()=>L});module.exports=go(la);var Mr=require("clsx"),Nr=require("tailwind-merge");function a(...e){return(0,Nr.twMerge)((0,Mr.clsx)(e))}function wt(e,t=4,r="0"){return e.toString().padStart(t,r)}var Tr=require("nativewind");function j(){let{colorScheme:e,setColorScheme:t,toggleColorScheme:r}=(0,Tr.useColorScheme)();return{colorScheme:e??"light",isDarkColorScheme:e==="dark",setColorScheme:t,toggleColorScheme:r}}var Me={"--background":"0 0% 95.7%","--foreground":"0 0% 7.8%","--card":"0 0% 100%","--card-foreground":"0 0% 7.8%","--popover":"0 0% 100%","--popover-foreground":"0 0% 7.8%","--primary":"0 0% 7.8%","--primary-foreground":"0 0% 100%","--secondary":"0 0% 93%","--secondary-foreground":"0 0% 7.8%","--muted":"0 0% 93%","--muted-foreground":"0 0% 45%","--accent":"0 0% 89.4%","--accent-foreground":"0 0% 7.8%","--destructive":"0 84.2% 60.2%","--destructive-foreground":"0 0% 100%","--border":"0 0% 78%","--input":"0 0% 78%","--ring":"0 0% 7.8%"},Ne={"--background":"0 0% 7.8%","--foreground":"0 0% 100%","--card":"0 0% 14.5%","--card-foreground":"0 0% 100%","--popover":"0 0% 14.5%","--popover-foreground":"0 0% 100%","--primary":"0 0% 100%","--primary-foreground":"0 0% 7.8%","--secondary":"0 0% 18%","--secondary-foreground":"0 0% 100%","--muted":"0 0% 11%","--muted-foreground":"0 0% 60%","--accent":"0 0% 21.2%","--accent-foreground":"0 0% 100%","--destructive":"0 72% 51%","--destructive-foreground":"0 0% 100%","--border":"0 0% 28%","--input":"0 0% 28%","--ring":"0 0% 60%"};var Te=(e,t)=>`hsl(${e[t]})`,vr=e=>({background:Te(e,"--background"),border:Te(e,"--border"),card:Te(e,"--card"),notification:Te(e,"--destructive"),primary:Te(e,"--primary"),text:Te(e,"--foreground")}),U={light:vr(Me),dark:vr(Ne)};function L(){let{colorScheme:e}=j(),t=e==="dark"?"dark":"light",r=U[t];return{foreground:r.text,muted:t==="dark"?"hsl(240 5% 64.9%)":"hsl(240 3.8% 46.1%)",primary:r.primary,destructive:r.notification,onDestructive:"hsl(0 0% 100%)",onPrimary:t==="dark"?"hsl(240 5.9% 10%)":"hsl(0 0% 98%)"}}var Cr={regular:"DMSans_400Regular",medium:"DMSans_500Medium",bold:"DMSans_700Bold"};var Sr=require("class-variance-authority"),Q=b(require("react")),Mt=require("react-native");var Rr=b(require("@rn-primitives/slot")),ne=b(require("react")),Vr=require("react-native");var Ie=ne.createContext(void 0),$e=ne.forwardRef(({className:e,asChild:t=!1,...r},o)=>{let s=ne.useContext(Ie);return ne.createElement(t?Rr.Text:Vr.Text,{className:a("text-base text-foreground web:select-text",s,e),ref:o,...r})});$e.displayName="Text";var bo=(0,Sr.cva)("relative bg-background w-full rounded-lg border border-border p-4 shadow shadow-foreground/10",{variants:{variant:{default:"",destructive:"border-destructive"}},defaultVariants:{variant:"default"}}),yo={default:"hsl(240 10% 3.9%)",destructive:"hsl(0 84.2% 60.2%)"},Nt=Q.forwardRef(({className:e,variant:t,children:r,icon:o,iconSize:s=16,iconClassName:n,...c},l)=>{let i=yo[t??"default"];return Q.createElement(Mt.View,{ref:l,role:"alert",className:bo({variant:t,className:e}),...c},Q.createElement(Mt.View,{className:"absolute left-3.5 top-4 -translate-y-0.5"},Q.createElement(o,{size:s,color:i})),r)});Nt.displayName="Alert";var Tt=Q.forwardRef(({className:e,...t},r)=>Q.createElement($e,{ref:r,className:a("pl-7 mb-1 font-medium text-base leading-none tracking-tight text-foreground",e),...t}));Tt.displayName="AlertTitle";var vt=Q.forwardRef(({className:e,...t},r)=>Q.createElement($e,{ref:r,className:a("pl-7 text-sm leading-relaxed text-foreground",e),...t}));vt.displayName="AlertDescription";var Ct=({title:e,description:t,icon:r,iconSize:o,iconClassName:s,variant:n="default",className:c})=>React.createElement(Nt,{icon:r,iconSize:o,iconClassName:s,variant:n,className:a(c)},React.createElement(Tt,null,e),t&&React.createElement(vt,null,t));Ct.displayName="MAlert";var Dr=b(require("lottie-react-native")),De=require("react-native");var kr=require("class-variance-authority"),Rt=b(require("react")),Ir=require("react-native");var ho=(0,kr.cva)("text-base text-foreground",{variants:{variant:{default:"font-munchi"},size:{xs:"text-xs",sm:"text-sm",base:"text-base",lg:"text-lg",xl:"text-xl","2xl":"text-2xl","3xl":"text-3xl","4xl":"text-4xl"}},defaultVariants:{variant:"default",size:"base"}}),I=Rt.default.forwardRef(({className:e,variant:t,size:r,children:o,...s},n)=>Rt.default.createElement(Ir.Text,{ref:n,className:a(ho({variant:t,size:r}),e),...s,allowFontScaling:!1},o));I.displayName="MText";var Vt=({children:e,animationSource:t,lottieViewProps:r,childrenClass:o,text:s,subText:n})=>React.createElement(De.View,{className:"w-full flex-1 flex-col gap-4"},React.createElement(De.View,{className:"flex-1 flex items-center justify-center"},React.createElement(Dr.default,{...r,source:t})),(s||n)&&React.createElement(De.View,{className:"items-center gap-1 px-4"},s&&React.createElement(I,{className:"text-center text-2xl font-munchi-semibold"},s),n&&React.createElement(I,{className:"text-center text-base text-muted-foreground"},n)),e&&React.createElement(De.View,{className:a("flex flex-col items-center",o)},e));Vt.displayName="MAnimation";var Dt=require("class-variance-authority"),ve=b(require("react")),je=require("react-native");var oe=b(require("@rn-primitives/avatar")),ie=b(require("react"));var St=ie.forwardRef(({className:e,...t},r)=>ie.createElement(oe.Root,{ref:r,className:a("relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full",e),...t}));St.displayName=oe.Root.displayName;var kt=ie.forwardRef(({className:e,...t},r)=>ie.createElement(oe.Image,{ref:r,className:a("aspect-square h-full w-full",e),...t}));kt.displayName=oe.Image.displayName;var It=ie.forwardRef(({className:e,...t},r)=>ie.createElement(oe.Fallback,{ref:r,className:a("flex h-full w-full items-center justify-center rounded-full bg-muted",e),...t}));It.displayName=oe.Fallback.displayName;var Po=(0,Dt.cva)("relative flex shrink-0 overflow-hidden rounded-full",{variants:{size:{xs:"h-6 w-6",sm:"h-8 w-8",md:"h-10 w-10",lg:"h-12 w-12",xl:"h-16 w-16",xxl:"h-20 w-20",full:"h-full w-full"}},defaultVariants:{size:"md"}}),wo=(0,Dt.cva)("font-munchi text-background",{variants:{size:{xs:"text-sm",sm:"text-sm",md:"text-base",lg:"text-xl",xl:"text-3xl",xxl:"text-4xl",full:"text-2xl"}},defaultVariants:{size:"md"}}),At=ve.default.forwardRef(({className:e,size:t,source:r,fallbackText:o,imageClassName:s,fallbackClassName:n,fallbackTextClassName:c,...l},i)=>ve.default.createElement(St,{ref:i,className:a(Po({size:t}),e),...l},r&&ve.default.createElement(kt,{source:r,className:a("aspect-square h-full w-full",s)}),ve.default.createElement(It,{className:a("flex h-full w-full items-center justify-center rounded-full bg-muted",n)},ve.default.createElement(je.Text,{className:a(wo({size:t}),je.Platform.OS==="ios"&&"text-foreground",c)},o))));At.displayName="MAvatar";var _t=require("class-variance-authority"),Ge=require("react-native");var Mo=(0,_t.cva)("p-1 px-2 rounded-md border-0",{variants:{variant:{default:"bg-secondary",accent:"bg-accent",muted:"bg-muted text-muted-foreground",destructive:"bg-destructive",primary:"bg-primary text-primary-foreground mx-1",gray:"bg-muted text-muted-foreground",custom:""}},defaultVariants:{variant:"gray"}}),No=(0,_t.cva)("text-xs font-munchi",{variants:{variant:{default:"text-secondary-foreground",accent:"text-accent-foreground",muted:"text-muted-foreground",destructive:"text-destructive-foreground",primary:"text-primary-foreground",gray:"text-muted-foreground",custom:"text-foreground"}},defaultVariants:{variant:"gray"}}),Et=({variant:e="gray",text:t,show:r=!0,customBackgroundColor:o,className:s,textClassName:n})=>{if(!r)return null;let c=e==="custom";return React.createElement(Ge.View,{className:a(Mo({variant:e}),s),style:c?{backgroundColor:o}:void 0},React.createElement(Ge.Text,{className:a(No({variant:e}),n)},t))};Et.displayName="MBadge";var Ar=require("class-variance-authority"),We=b(require("react")),Lt=require("react-native");var Ft=(0,Ar.cva)("flex-row justify-center items-center rounded-full",{variants:{variant:{default:"bg-primary",primary:"bg-primary",white:"bg-card border border-border",destructive:"bg-destructive",outline:"bg-transparent border border-border",secondary:"bg-secondary",ghost:"bg-transparent",link:"bg-transparent",none:"none",custom:""},size:{none:"",default:"h-auto px-4 md:py-2",sm:"h-8 px-3 py-1.5",lg:"h-10 px-6 py-2.5",icon:"h-9 w-9 p-2 justify-center items-center"}},defaultVariants:{variant:"default",size:"default"}}),Bt=We.default.forwardRef((e,t)=>{let{onPress:r,variant:o="default",size:s="default",disabled:n=!1,children:c,className:l,...i}=e;return o==="custom"?We.default.createElement(Lt.Pressable,{ref:t,disabled:n,className:a(n&&"opacity-50",l),onPress:r,android_ripple:null,...i},c):We.default.createElement(Lt.Pressable,{ref:t,disabled:n,className:a(Ft({variant:o,size:s}),n&&"opacity-50",l),onPress:r,...i},c)});Bt.displayName="MButton";var Ze=require("react"),Ke=require("react-native"),qe=b(require("react-native-svg"));var Ot=({isOpen:e,size:t=11,color:r})=>{let{colorScheme:o}=j(),s=r??U[o].text,n=(0,Ze.useRef)(new Ke.Animated.Value(e?90:0)).current;(0,Ze.useEffect)(()=>{Ke.Animated.timing(n,{toValue:e?90:0,duration:200,useNativeDriver:!0}).start()},[e,n]);let c=n.interpolate({inputRange:[0,90],outputRange:["0deg","90deg"]});return React.createElement(Ke.Animated.View,{style:{transform:[{rotate:c}]}},React.createElement(qe.default,{width:t,height:t,viewBox:"0 0 11 11",fill:"none"},React.createElement(qe.Path,{fillRule:"evenodd",clipRule:"evenodd",d:"M3.80026 1.96823C3.97925 1.78924 4.26945 1.78924 4.44844 1.96823L7.65677 5.17656C7.83575 5.35554 7.83575 5.64576 7.65677 5.82474L4.44844 9.03307C4.26945 9.21205 3.97925 9.21205 3.80026 9.03307C3.62127 8.85409 3.62127 8.56388 3.80026 8.3849L6.68451 5.50065L3.80026 2.61641C3.62127 2.43742 3.62127 2.14722 3.80026 1.96823Z",fill:s})))};Ot.displayName="MChevron";var Ht=require("react-native"),Ue=b(require("react-native-ui-datepicker"));var zt=({className:e,classNames:t,showOutsideDays:r=!0,containerHeight:o=220,components:s,minDate:n,maxDate:c,...l})=>{let i=(0,Ue.useDefaultClassNames)(),u=n||(()=>{let m=new Date;return m.setFullYear(m.getFullYear()-1),m})(),w=c||(()=>{let m=new Date;return m.setDate(m.getDate()),m})(),y={IconPrev:React.createElement(Ht.Text,{className:"font-munchi text-lg text-foreground"},"<"),IconNext:React.createElement(Ht.Text,{className:"font-munchi text-lg text-foreground"},">")};return React.createElement(Ue.default,{showOutsideDays:r,className:a("bg-card w-full rounded-xl",e),containerHeight:o,minDate:u,maxDate:w,classNames:{...i,day_cell:"p-0.5",day:a(i.day,"font-munchi rounded-xl text-foreground w-10 h-10"),day_label:"font-munchi text-base text-foreground",outside_label:"font-munchi text-base text-foreground opacity-40",today_label:"text-destructive font-munchi-bold text-base",month_selector_label:a(i.month_selector_label,"text-base font-munchi-semibold text-foreground"),year_selector_label:a(i.year_selector_label,"text-base font-munchi-semibold text-foreground"),time_selector_label:a(i.time_selector_label,"text-base font-munchi text-foreground"),header:"font-munchi-semibold text-lg text-foreground pb-2",weekday_label:"font-munchi-semibold text-sm text-muted-foreground",selected:a(i.selected,"font-munchi bg-primary rounded-xl"),selected_label:"font-munchi-semibold text-primary-foreground text-base",range_end:a(i.range_end,"font-munchi bg-primary rounded-r-xl"),range_start:a(i.range_start,"font-munchi bg-primary rounded-l-xl"),range_end_label:a(i.range_end_label,"font-munchi-semibold text-primary-foreground text-base"),range_start_label:a(i.range_start_label,"font-munchi-semibold text-primary-foreground text-base"),range_fill:"bg-primary/20 my-1",range_fill_weekstart:"rounded-s-lg",range_fill_weekend:"rounded-e-lg",range_middle_label:"font-munchi text-base text-foreground",month:a(i.month,"font-munchi rounded-xl text-foreground"),month_label:"font-munchi text-base text-foreground",year:a(i.year,"font-munchi rounded-xl text-foreground"),year_label:"font-munchi text-base text-foreground",time_label:"font-munchi text-2xl text-foreground",...t},components:{...y,...s},...l})};zt.displayName="MDateTimePicker";var _r=require("class-variance-authority"),Er=require("react-native");var To=(0,_r.cva)("",{variants:{direction:{horizontal:"my-2",vertical:"mx-2"},variant:{sm:"",md:"",lg:""}},defaultVariants:{direction:"horizontal",variant:"md"}}),vo={sm:1,md:2,lg:4},$t=({className:e,direction:t="horizontal",variant:r="md",color:o,style:s})=>{let n=t==="horizontal",c=vo[r??"md"],l=o?{backgroundColor:o,[n?"height":"width"]:c,[n?"width":"height"]:"100%"}:{[n?"height":"width"]:c,[n?"width":"height"]:"100%"};return React.createElement(Er.View,{className:a(!o&&"bg-border",To({direction:t,variant:r}),e),style:[l,s]})};$t.displayName="MDivider";var Lr=b(require("react")),Co=b(require("lucide-react-native")),jt=({name:e,...t})=>{let r=Co[e];return r?Lr.default.createElement(r,{...t}):null};jt.displayName="MLucideIcon";var Ae=require("react"),G=require("react-native");var Gt=({data:e,onSelect:t,placeholder:r,selectedValue:o,className:s,textClassName:n,dropdownContainerClassName:c,itemContainerClassName:l,itemTextClassName:i})=>{let[u,w]=(0,Ae.useState)(!1),y=(0,Ae.useRef)(null),[m,p]=(0,Ae.useState)({x:0,y:0,width:0,height:0}),P=e.find(x=>x.value===o),M=x=>{t(x),w(!1)},T=({item:x})=>{let S=x.value===o;return React.createElement(G.Pressable,{className:a("p-3 rounded-md m-1",S?"bg-primary":"active:bg-muted",l),onPress:()=>M(x)},React.createElement(G.Text,{className:a(S?"text-primary-foreground":"text-foreground",i),numberOfLines:1},x.label))},C=()=>{u?w(!1):y.current?.measureInWindow((x,S,R,v)=>{p({x,y:S,width:R,height:v}),w(!0)})};return React.createElement(G.View,{className:"flex-col items-center justify-center"},React.createElement(G.Pressable,{ref:y,className:a("bg-primary rounded-full py-4 px-6 flex-row items-center",s),onPress:C},React.createElement(G.Text,{className:a("text-primary-foreground text-base",n),numberOfLines:1,ellipsizeMode:"tail"},P?P.label:r)),React.createElement(G.Modal,{animationType:"none",transparent:!0,visible:u,onRequestClose:()=>{w(!1)}},React.createElement(G.Pressable,{className:"absolute inset-0",onPress:()=>w(!1)}),React.createElement(G.View,{style:{position:"absolute",top:m.y+m.height,left:m.x},className:a("min-w-[100px] bg-background shadow-lg rounded-lg border border-border p-1 z-50 mt-2",c)},React.createElement(G.FlatList,{data:e,renderItem:T,keyExtractor:x=>String(x.value),className:"max-h-[200px]"}))))};Gt.displayName="MPicker";var Kt=require("class-variance-authority"),Wt=require("react-native");var Ro=(0,Kt.cva)("w-full h-2 rounded-full relative",{variants:{size:{sm:"h-1",md:"h-2",lg:"h-3"},variant:{default:"bg-muted",accent:"bg-accent/30",destructive:"bg-destructive/30",secondary:"bg-secondary",gray:"bg-gray",pink:"bg-pink",blue:"bg-blue-200",green:"bg-green-200"}},defaultVariants:{size:"md",variant:"default"}}),Vo=(0,Kt.cva)("h-full rounded-full absolute top-0 left-0",{variants:{variant:{default:"bg-foreground",accent:"bg-accent",destructive:"bg-destructive",secondary:"bg-secondary-foreground",gray:"bg-gray-600",pink:"bg-pink",blue:"bg-blue-600",green:"bg-green-600"}},defaultVariants:{variant:"default"}}),Zt=({progress:e,size:t="md",variant:r="default",className:o,fillClassName:s})=>{let n=Math.min(Math.max(e,0),100);return React.createElement(Wt.View,{className:a(Ro({size:t,variant:r}),o)},React.createElement(Wt.View,{style:{width:`${n}%`},className:a(Vo({variant:r}),s)}))};Zt.displayName="MProgressBar";var Fr=require("react-native");var qt=({children:e,className:t,style:r,padding:o,margin:s,...n})=>React.createElement(Fr.View,{className:a((()=>{let l=[];if(o)for(let[i,u]of Object.entries(o))u!==void 0&&l.push(`${i}:p-${u}`);if(s)for(let[i,u]of Object.entries(s))u!==void 0&&l.push(`${i}:m-${u}`);return l.join(" ")})(),t),style:r,...n},e);qt.displayName="MResponsiveContainer";var Br=require("react-native");var Or=({label:e,className:t,...r})=>React.createElement(Br.View,{className:a("flex-row items-center gap-1 mb-3",t),...r},React.createElement(I,{className:"font-munchi-bold text-xl"},e),React.createElement(I,{className:"font-munchi-bold text-xl text-destructive"},"*"));var Hr=require("class-variance-authority"),Ce=require("lucide-react-native"),J=require("react"),h=require("react-native");var Ut=(l=>(l.ExtraSmall="xs",l.Small="sm",l.Medium="md",l.Large="lg",l.ExtraLarge="xl",l.ExtraExtraLarge="xxl",l.Auto="auto",l))(Ut||{}),zr=(0,J.createContext)({isFixed:!1}),Xe=(0,J.createContext)(null),So=(0,Hr.cva)("rounded-2xl p-6 shadow-lg flex flex-col",{variants:{variant:{xs:"w-[40%]",sm:"w-[60%]",md:"w-[80%]",lg:"w-[95%]",auto:"w-auto self-center",fullscreen:"w-full h-full rounded-none"},height:{xs:"h-[30%]",sm:"h-[40%]",md:"h-[60%]",lg:"h-[80%]",xl:"h-[90%]",xxl:"h-[96%]",auto:"h-auto"},background:{white:"bg-card",dark:"bg-secondary",primary:"bg-muted",transparent:"bg-transparent"}},defaultVariants:{variant:"md",height:"auto",background:"white"}}),$r=({children:e,scrollable:t=!0})=>{let{isFixed:r}=(0,J.useContext)(zr),o=(0,J.useContext)(Xe);return t?React.createElement(h.View,{className:a(r&&"flex-1")},React.createElement(h.ScrollView,{ref:o,showsVerticalScrollIndicator:!1,contentContainerStyle:{flexGrow:1},keyboardShouldPersistTaps:"handled",style:r?{flex:1}:void 0},React.createElement(h.Pressable,{style:{flex:1}},e))):React.createElement(h.View,{className:a(r&&"flex-1"),style:r?{flex:1}:void 0},React.createElement(h.Pressable,{style:{flex:1}},e))};$r.displayName="ModalBody";var jr=({children:e})=>React.createElement(h.View,{className:"mt-auto flex-shrink-0"},e),Gr=({body:e,footer:t})=>React.createElement(J.Fragment,null,React.createElement(_e.Body,null,e),t&&React.createElement(_e.Footer,null,t)),ko=e=>{let{isVisible:t,onClose:r,children:o,onBack:s,onDismiss:n,header:c,headingText:l,closable:i=!0,variant:u="sm",containerClassName:w,height:y,background:m="white",footer:p,onButtonClose:P,showCloseButton:M=!0,showBackButton:T=!0,keyboardAvoidingEnabled:C=!0}=e,S={isFixed:(y&&y!=="auto")??!1},R=(0,J.useRef)(null),{foreground:v}=L(),k=()=>s&&T?React.createElement(h.View,{className:"flex-row items-center justify-between"},React.createElement(h.Pressable,{onPress:s,className:"bg-muted rounded-full p-2"},React.createElement(Ce.ArrowLeft,{color:v,size:24})),l&&React.createElement(I,{className:"font-munchi-bold text-foreground flex-1 text-left mx-3",size:"2xl",numberOfLines:1},l),M&&React.createElement(h.Pressable,{onPress:r,className:"bg-muted rounded-full p-3"},React.createElement(Ce.X,{color:v,size:24}))):c||(l?React.createElement(h.View,{className:"flex-row items-center justify-between"},React.createElement(I,{className:"font-munchi-bold text-foreground w-11/12",size:"2xl",numberOfLines:1},l),M&&React.createElement(h.Pressable,{onPress:P??r,className:"bg-muted rounded-full p-3"},React.createElement(Ce.X,{color:v,size:24}))):M?React.createElement(h.View,{className:"flex-row items-center justify-between"},React.createElement(h.View,{className:"flex-1"}),React.createElement(h.Pressable,{onPress:r,className:"bg-muted rounded-full p-3"},React.createElement(Ce.X,{color:v,size:24}))):null),D=A=>{A.target===A.currentTarget&&i&&r()};return React.createElement(h.Modal,{transparent:!0,visible:t,onRequestClose:i?r:void 0,animationType:"fade",onDismiss:n},React.createElement(h.KeyboardAvoidingView,{className:"flex-1",enabled:C,behavior:h.Platform.select({ios:"padding",default:"height"})},React.createElement(h.Pressable,{className:"flex-1 items-center justify-center bg-black/50 p-4",onPress:D},React.createElement(h.View,{className:a("max-h-[95%]",So({variant:u,height:y,background:m}),w)},React.createElement(zr.Provider,{value:S},React.createElement(Xe.Provider,{value:R},k()!==null&&React.createElement(h.View,{className:"pb-4 flex-shrink-0"},k()),o,p&&React.createElement(jr,null,p)))))))},_e=Object.assign(ko,{Body:$r,Footer:jr});_e.displayName="MModal";var pe=require("react"),F=require("react-native"),O=b(require("react-native-reanimated")),Kr=require("react-native-safe-area-context");var Io={mass:.4,stiffness:110,damping:16,overshootClamping:!1},Do={mass:.4,stiffness:140,damping:22,overshootClamping:!0},Wr=340,Xt=({isVisible:e,onClose:t,header:r,footer:o,children:s,closable:n=!0,widthFraction:c=.45,className:l,scrollable:i=!0})=>{let{colorScheme:u}=j(),w=U[u],{width:y}=(0,F.useWindowDimensions)(),m=(0,Kr.useSafeAreaInsets)(),p=y*c,[P,M]=(0,pe.useState)(!1),T=(0,pe.useRef)(null),C=(0,pe.useRef)(!1),x=(0,O.useSharedValue)(p),S=(0,O.useSharedValue)(0),R=q=>{C.current||(C.current=!0,x.value=(0,O.withSpring)(p,Do),S.value=(0,O.withTiming)(0,{duration:Wr}),T.current=setTimeout(()=>{M(!1),C.current=!1,q?.()},Wr))};(0,pe.useEffect)(()=>(e?(T.current&&(clearTimeout(T.current),T.current=null,C.current=!1),M(!0),x.value=(0,O.withSpring)(0,Io),S.value=(0,O.withTiming)(1,{duration:300})):R(),()=>{T.current&&clearTimeout(T.current)}),[e]);let v=()=>{n&&R(t)},k=()=>{R(t)},D=(0,O.useAnimatedStyle)(()=>({transform:[{translateX:x.value}]})),A=(0,O.useAnimatedStyle)(()=>({opacity:S.value}));return React.createElement(F.Modal,{transparent:!0,visible:P,animationType:"none",onRequestClose:n?k:void 0},React.createElement(F.View,{className:"flex-1 flex-row justify-end",style:{paddingTop:m.top,paddingBottom:m.bottom}},React.createElement(F.TouchableWithoutFeedback,{onPress:v},React.createElement(O.default.View,{className:"absolute inset-0 bg-black/60",style:A})),React.createElement(O.default.View,{style:[D,{width:p}],className:a("h-full overflow-hidden border rounded-2xl border-border",l)},React.createElement(F.View,{className:"flex-1",style:{backgroundColor:w.background}},r&&React.createElement(F.View,{className:"px-6 pt-6 flex-shrink-0"},r),i?React.createElement(F.ScrollView,{className:"flex-1 px-6",showsVerticalScrollIndicator:!1,contentContainerStyle:{paddingTop:16,paddingBottom:24},keyboardShouldPersistTaps:"handled",automaticallyAdjustKeyboardInsets:F.Platform.OS==="ios",keyboardDismissMode:"interactive"},s):React.createElement(F.View,{className:"flex-1 overflow-hidden"},s),o&&React.createElement(F.View,{className:"px-6 pb-6 pt-4 border-t-2 border-border flex-shrink-0"},o)))))};Xt.displayName="MDrawerRightPanel";var Zr=require("react-native"),Yt=({title:e,description:t,onPress:r,onPressText:o,onCancel:s,onCancelText:n})=>{Zr.Alert.alert(e,t,[{text:o,onPress:r},{text:n,style:"cancel",onPress:s}])};Yt.displayName="MNativeAlert";var qr=require("react"),Ur=b(require("react-countdown")),Ye=require("react-native");var Qt=({warningThreshold:e=3,className:t="",textClassName:r="",showPrefix:o=!0,countUp:s=!1,renderer:n,onComplete:c,date:l,...i})=>{let u=(0,qr.useMemo)(()=>({minutes:y,seconds:m,completed:p})=>{let P,M,T="";if(p)if(s){let D=new Date(l),q=new Date().getTime()-D.getTime();P=Math.floor(q/6e4),M=Math.floor(q%6e4/1e3),o&&(T="-")}else P=0,M=0;else P=y,M=m;let C=!p||s?wt(Math.abs(P),2):"00",x=!p||s?wt(Math.abs(M),2):"00",S=!p&&y<e,R=p,v=S||R?"bg-destructive/15":"bg-green-500/15",k=S||R?"text-destructive":"text-green-600";return React.createElement(Ye.View,{className:a("rounded-md flex items-center justify-center",v,t)},React.createElement(Ye.Text,{className:a("font-munchi-semibold text-center",k,r)},T,C,":",x))},[e,s,l,o,t,r]);return React.createElement(Ur.default,{renderer:n??u,onComplete:c,overtime:s,date:l,...i})};Qt.displayName="MCountDown";var Xr=require("lucide-react-native"),Yr=require("react"),Re=require("react-native"),Qr=require("react-native-element-dropdown");function Ao(e){return{trigger:{width:"100%",paddingHorizontal:16,paddingVertical:12,borderRadius:16,borderWidth:1,borderColor:e.borderColor,backgroundColor:e.cardColor},containerStyle:{marginTop:6,borderRadius:16,borderWidth:1,borderColor:e.borderColor,backgroundColor:e.cardColor,shadowColor:e.textColor,shadowOpacity:.06,shadowRadius:8,shadowOffset:{width:0,height:2},elevation:3,overflow:"hidden"},itemContainerStyle:{backgroundColor:e.cardColor,padding:0},activeColor:e.mutedColor}}function _o(e){return{trigger:{width:"100%",paddingHorizontal:12,paddingVertical:8,borderRadius:12,borderWidth:1,borderColor:e.borderColor,backgroundColor:e.cardColor},containerStyle:{marginTop:4,borderRadius:12,borderWidth:1,borderColor:e.borderColor,backgroundColor:e.cardColor,shadowColor:e.textColor,shadowOpacity:.06,shadowRadius:6,shadowOffset:{width:0,height:1},elevation:2,overflow:"hidden"},itemContainerStyle:{backgroundColor:e.cardColor,padding:0},activeColor:e.mutedColor}}function Eo(e){return{trigger:{paddingHorizontal:16,paddingVertical:8,borderRadius:999,borderWidth:0,backgroundColor:e.bgColor,minWidth:160},containerStyle:{marginTop:4,borderRadius:16,borderWidth:1,borderColor:e.borderColor,backgroundColor:e.cardColor,shadowColor:e.textColor,shadowOpacity:.06,shadowRadius:6,shadowOffset:{width:0,height:1},elevation:2,overflow:"hidden"},itemContainerStyle:{backgroundColor:e.cardColor,padding:0},activeColor:e.mutedColor}}var Jt=({data:e=[],placeholder:t="",value:r,onFocus:o,onBlur:s,onChange:n,customStyles:c,fieldFrame:l="none",style:i,containerStyle:u,itemContainerStyle:w,selectedTextStyle:y,placeholderStyle:m,activeColor:p,maxHeight:P=300,renderRightIcon:M,selectedTextProps:T,mode:C="auto",...x})=>{let{colorScheme:S}=j(),{foreground:R,muted:v}=L(),k=e.length===0,D=S==="dark",A=U[D?"dark":"light"],te=`hsl(${(D?Ne:Me)["--muted"]})`,re=(0,Yr.useMemo)(()=>{let he={cardColor:A.card,borderColor:A.border,textColor:A.text,mutedColor:te};return l==="mInputSm2xl"?Ao(he):l==="mInputCompact"?_o(he):l==="pill"?Eo({...he,bgColor:te}):null},[l,A.card,A.border,A.text,te]),d=Re.StyleSheet.flatten([re?.trigger,c,i]),f=Re.StyleSheet.flatten([re?.containerStyle,u]),g=Re.StyleSheet.flatten([re?.itemContainerStyle,w]),V=l==="mInputSm2xl"?18:l==="mInputCompact"?15:14,N=Re.StyleSheet.flatten([{fontSize:V,color:R},y]),$=Re.StyleSheet.flatten([{fontSize:V,color:k?v:R},m]),ye=re?re.activeColor:p??te,br=l==="mInputCompact"?16:20;return React.createElement(Qr.Dropdown,{...x,mode:C,data:e,maxHeight:P,placeholder:t,value:r,onFocus:o,onBlur:s,onChange:n,style:d,containerStyle:f,itemContainerStyle:g,activeColor:ye,fontFamily:"DMSans_400Regular",selectedTextStyle:N,selectedTextProps:{numberOfLines:1,ellipsizeMode:"tail",...T??{}},placeholderStyle:$,renderRightIcon:M??(()=>React.createElement(Xr.ArrowDown,{color:k?v:R,size:br}))})};Jt.displayName="MDropdown";var er=require("class-variance-authority"),Qe=require("lucide-react-native"),ae=b(require("react")),Y=require("react-native");var Lo=(0,er.cva)("flex-row items-center bg-card rounded-full border border-border",{variants:{size:{default:"",sm:"",lg:""}},defaultVariants:{size:"default"}}),Fo={default:18,sm:15,lg:21},Bo={default:36,sm:30,lg:52},Oo=(0,er.cva)("flex-1 min-w-0 px-2 font-munchi",{variants:{size:{default:"text-lg",sm:"text-base",lg:"text-xl"}},defaultVariants:{size:"default"}}),tr=ae.default.forwardRef(({value:e,onChangeText:t,onClear:r,placeholder:o="Search...",size:s="default",className:n,containerClassName:c,inputClassName:l,iconSize:i=20,placeholderTextColor:u,...w},y)=>{let{foreground:m,muted:p}=L(),P=()=>{r?r():t(""),Y.Keyboard.isVisible()&&Y.Keyboard.dismiss()};return ae.default.createElement(Y.View,{className:a(Lo({size:s}),n,c)},ae.default.createElement(Y.View,{className:"pl-3 shrink-0"},ae.default.createElement(Qe.Search,{size:i,color:p})),ae.default.createElement(Y.TextInput,{ref:y,placeholder:o,placeholderTextColor:u??p,value:e,onChangeText:t,textAlignVertical:"center",style:{color:m,fontSize:Fo[s??"default"],height:Bo[s??"default"],paddingVertical:0,includeFontPadding:!1},className:a(Oo({size:s}),l),...w}),ae.default.createElement(Y.View,{className:"pr-2 shrink-0",style:{width:i+16}},e.length>0&&ae.default.createElement(Y.Pressable,{onPress:P,className:"items-center justify-center p-2"},ae.default.createElement(Qe.X,{size:i,color:p}))))});tr.displayName="MSearch";var ue=b(require("react")),le=require("react-native");var rr=ue.default.memo(({label:e,isSelected:t,onPress:r,description:o})=>ue.default.createElement(le.Pressable,{className:"flex flex-row justify-between items-center p-2",onPress:r},ue.default.createElement(le.Text,{className:a("font-munchi",t&&"font-munchi-semibold")},e),t&&o&&ue.default.createElement(le.Text,{className:"text-muted-foreground text-sm mx-2 flex-1 text-right"},o),ue.default.createElement(le.View,{className:a("w-6 h-6 rounded-full border-2 border-primary ml-2",!t&&"bg-card")},t&&ue.default.createElement(le.View,{className:"absolute inset-0 m-1 rounded-full bg-primary"}))));rr.displayName="MSelector";var Ve=require("react-native");var or=({options:e,selectedKey:t,onSelect:r})=>React.createElement(Ve.View,{className:"flex flex-row gap-4 w-full items-center justify-between"},e.map(o=>React.createElement(Ve.Pressable,{key:String(o.key),className:a("flex-1 rounded-lg py-4",t===o.key?"bg-primary":"bg-muted"),onPress:()=>r(o.key),disabled:o.disabled},React.createElement(Ve.Text,{className:a("text-center font-munchi",t===o.key?"text-primary-foreground":"text-muted-foreground")},o.label))));or.displayName="MToggle";var X=require("react-native");var ar=({message:e,onConfirm:t,onCancel:r,confirmText:o="Confirm",cancelText:s="Cancel",isLoading:n=!1})=>{let{onPrimary:c}=L();return React.createElement(X.View,{className:"p-4"},React.createElement(X.Text,{className:"font-munchi text-center mb-10 mt-4 text-foreground"},e),React.createElement(X.View,{className:"flex-row justify-between"},React.createElement(X.Pressable,{className:a("flex-1 mr-2 border border-border rounded-md py-3 bg-card",n&&"opacity-50"),onPress:r,disabled:n},React.createElement(X.Text,{className:"font-munchi text-center text-card-foreground"},s)),React.createElement(X.Pressable,{className:a("flex-1 ml-2 bg-primary rounded-md py-3",n&&"opacity-50"),onPress:t,disabled:n},n?React.createElement(X.ActivityIndicator,{color:c}):React.createElement(X.Text,{className:"font-munchi text-center text-primary-foreground"},o))))};ar.displayName="MConfirmation";var nr=require("lucide-react-native"),fe=require("react-native");var sr=({label:e,onPress:t,testID:r,icon:o,disabled:s,iconTint:n,labelClassName:c})=>React.createElement(fe.Pressable,{testID:r,onPress:t,className:"w-20 h-20 md:w-24 md:h-24 rounded-full items-center justify-center active:bg-accent",disabled:s},e?React.createElement(I,{className:a("text-3xl md:text-4xl font-light",c)},e):o??React.createElement(nr.Delete,{size:26,color:n})),ir=({onDigit:e,onBackspace:t,isLoading:r})=>{let{foreground:o}=L();return React.createElement(fe.View,{className:"w-full items-center gap-0"},[["1","2","3"],["4","5","6"],["7","8","9"]].map((n,c)=>React.createElement(fe.View,{key:c,className:"flex-row justify-center gap-24"},n.map(l=>React.createElement(sr,{key:l,label:l,onPress:()=>e(l),disabled:r,iconTint:o,labelClassName:"text-foreground"})))),React.createElement(fe.View,{className:"flex-row justify-center gap-24"},React.createElement(fe.View,{className:"w-20 h-20 md:w-24 md:h-24"}),React.createElement(sr,{label:"0",onPress:()=>e("0"),disabled:r,iconTint:o,labelClassName:"text-foreground"}),React.createElement(sr,{onPress:t,testID:"backspace",disabled:r,iconTint:o,labelClassName:"text-foreground",icon:React.createElement(nr.Delete,{size:26,color:o})})))};ir.displayName="MPinPadKeys";var to=require("class-variance-authority"),ro=require("lucide-react-native"),ee=require("react"),K=require("react-native");var cr=(l=>(l.Discount="discount",l.Table="table",l.Price="price",l.Cash="cash",l.Quantity="quantity",l.Phone="phone",l.GiftCard="giftcard",l))(cr||{}),dr=()=>new Intl.NumberFormat(void 0,{minimumFractionDigits:1,maximumFractionDigits:1}).format(1.1).match(/[^0-9]/)?.[0]||".";function lr(e,t){if(!e)return"";if(t==="."){let[o="",...s]=e.split(".");return s.length===0?o:`${o}.${s.join("")}`}if(e.includes("."))return e;let r=e.split(t);return r.length<=1?e.replace(/\./g,""):`${(r[0]??"").replace(/\./g,"")}.${r.slice(1).join("")}`}function Je(e,t){let r=e.replace(/\D/g,"");if(r===""||r==="0")return`0${t}00`;let o=r.padStart(3,"0"),s=o.slice(0,-2).replace(/^0+/,"")||"0",n=o.slice(-2);return`${s}${t}${n}`}function Jr(e,t){if(!e)return"";let r=t==="."?e:e.replace(t,"."),o=Number.parseFloat(r);return Number.isNaN(o)||o<=0?"":Math.round(o*100).toString()}var Ho=90,zo=118,$o=78,jo=106,Go=72,Wo=90,Ko=62,Zo=80,qo=24,Uo=36,Xo=22,Yo=32,Qo=6,Jo=5,Ee=3,et="00",eo=/^(\d+)\.00$/;function ea(e){switch(e){case"X":return"munchi.numpad.key.backspace";case et:return"munchi.numpad.key.double-zero";case"-":return"munchi.numpad.key.minus";case"+":return"munchi.numpad.key.plus";default:return`munchi.numpad.key.digit-${e}`}}var ta=(0,to.cva)("items-center justify-center rounded-2xl",{variants:{pressed:{true:"",false:"bg-muted"},scheme:{dark:"",light:""}},compoundVariants:[{pressed:!0,scheme:"dark",className:"bg-white/15 border-white/20"},{pressed:!0,scheme:"light",className:"bg-foreground/10 border-foreground/15"}],defaultVariants:{pressed:!1,scheme:"light"}}),mr=({customAmount:e,setCustomAmount:t,mode:r,maxDigits:o=6})=>{let s=dr(),n=r==="price"||r==="cash"||r==="discount",c=n,l=r==="phone",i=(0,ee.useRef)(e);i.current=e;let u=(0,ee.useRef)(0),{foreground:w}=L(),{colorScheme:y}=j(),{width:m}=(0,K.useWindowDimensions)(),p=m>=768,P=K.Platform.OS==="android",M=P?p?jo:$o:p?zo:Ho,T=P?p?Zo:Ko:p?Wo:Go,C=P?Jo:Qo,x=P?p?Yo:Xo:p?Uo:qo,S=y==="dark"?"dark":"light",R=(0,ee.useCallback)(d=>{if(n){let _=d===et;if(!_&&!/^\d$/.test(d))return;let B=Jr(i.current??"",s);if(_){let we=`${B}00`.replace(/^0+/,"")||"";if(we===""){u.current=0;return}if(we.length>o+2)return;u.current=2;let He=Je(we,s);i.current=He,t(He);return}if(u.current>0){let we=B.padStart(3,"0"),He=we.slice(0,-2),lo=(we.slice(-2)[1]??"0")+d,hr=(He+lo).replace(/^0+/,"")||"";if(hr.length>o+2)return;u.current-=1;let Pr=Je(hr,s);i.current=Pr,t(Pr);return}let Pe=(B+d).replace(/^0+/,"")||"";if(Pe.length>o+2)return;if(Pe===""){i.current=null,t(null);return}let ke=Je(Pe,s);i.current=ke,t(ke);return}let f=i.current??"",g=lr(f,s),[V="",N=""]=g.split("."),$=g.includes("."),ye=d===s;if(d===et&&c){if(!$){let B=V===""?"0.00":`${V}.00`;i.current=B,t(B);return}let _=eo.exec(g);if(_){let B=_[1]??"";i.current=B,t(B);return}return}if(ye){if($)return;t(f+s);return}let he=c?eo.exec(g):null;if(he&&/^\d$/.test(d)){let _=he[1]??"";if(d==="0"){let Pe=`${_}0`;if(Pe.length>o)return;let ke=`${Pe}.00`;i.current=ke,t(ke);return}let B=`${_}.${d}0`;i.current=B,t(B);return}if(c&&$){if(N.length===2&&N[0]!=="0"&&N[1]!=="0"&&/^\d$/.test(d)){let _=`${V}${d}`;if(_.length>o)return;let B=`${_}.${N}`;i.current=B,t(B);return}if(N.length===2&&N[1]==="0"){let _=`${V}.${N[0]}${d}`;i.current=_,t(_);return}if(N.length===1&&/^\d$/.test(N)){let _=`${V}.${N}${d}`;i.current=_,t(_);return}if(N.length>=2)return}if(c){if(!$&&V.length>=o)return}else if(V.length>=o)return;let io=f+d,yr=lr(io,s);i.current=yr,t(yr)},[s,n,c,o,t]),v=(0,ee.useCallback)(()=>{let d=i.current;if(n){if(u.current=0,d==null||d===""){i.current=null,t(null);return}let $=Jr(d,s).slice(0,-1).replace(/^0+/,"")||"";if($===""){i.current=null,t(null);return}let ye=Je($,s);i.current=ye,t(ye);return}if(d==null||d===""){i.current=null,t(null);return}let f=lr(d,s);if(!f.includes(".")){let N=f.slice(0,-1);if(N===""){i.current=null,t(null);return}i.current=N,t(N);return}let[g="",V=""]=f.split(".");if(V.length>0){let N=V.slice(0,-1);if(N===""){i.current=g===""?null:g,t(g===""?null:g);return}let $=`${g}.${N}`;i.current=$,t($);return}i.current=g===""?null:g,t(g===""?null:g)},[s,n,t]),k=(0,ee.useMemo)(()=>["1","2","3","4","5","6","7","8","9",r==="giftcard"?"-":c?et:l?"+":"","0","X"],[r,c,l]),[D,A]=(0,ee.useState)(0),q=D>0?Math.floor((D-C*(Ee-1))/Ee):M,te=Math.round(q*(T/M)),re=Math.round(x*(q/M));return React.createElement(K.View,{style:{width:"100%",gap:C},onLayout:d=>A(d.nativeEvent.layout.width)},[0,1,2,3].map(d=>React.createElement(K.View,{key:d,style:{flexDirection:"row",gap:C}},k.slice(d*Ee,d*Ee+Ee).map((f,g)=>{let V=`${d}-${g}`;return f===""?React.createElement(K.View,{key:V,style:{width:q,height:te}}):React.createElement(ra,{key:V,testID:ea(f),item:f,width:q,height:te,fontSize:re,foreground:w,scheme:S,onPress:f==="X"?v:()=>R(f)})}))))},ra=({testID:e,item:t,width:r,height:o,fontSize:s,foreground:n,scheme:c,onPress:l})=>React.createElement(K.Pressable,{testID:e,onPress:l,style:{width:r,height:o}},({pressed:i})=>React.createElement(K.View,{style:{width:r,height:o},className:a(ta({pressed:i,scheme:c}))},t==="X"?React.createElement(ro.Delete,{size:s,color:n}):React.createElement(K.Text,{style:{fontSize:s,lineHeight:s*1.4},className:"text-foreground font-munchi"},t)));mr.displayName="MNumpad";var ge=require("react"),Le=require("react-native"),H=b(require("react-native-reanimated"));var xe={damping:20,stiffness:200,mass:.8},pr=({tabs:e,activeTab:t,onTabChange:r,className:o,style:s,disabled:n=!1,size:c="default",variant:l="default",stretch:i=!1,...u})=>{let{colorScheme:w}=j(),y=U[w==="dark"?"dark":"light"],m=c==="compact",p=l==="ghost",P=p?0:m?2:4,M=p?20:m?8:12,T=m?8:12,C=p?7:m?2:4,x=p?22:m?8:12,S=m?2:4,R=(0,ge.useRef)({}),v=(0,H.useSharedValue)(0),k=(0,H.useSharedValue)(0),D=(0,ge.useRef)(!1),[,A]=(0,ge.useState)(0);(0,ge.useEffect)(()=>{if(t==null){D.current=!1,k.value=(0,H.withSpring)(0,xe);return}let d=String(t),f=R.current[d];if(f){v.value=(0,H.withSpring)(f.x,xe),k.value=(0,H.withSpring)(f.width,xe),D.current=!0,A(g=>g+1);return}D.current=!1},[t,k,v]);let q=(0,H.useAnimatedStyle)(()=>({transform:[{translateX:v.value}],width:k.value})),te=(d,f)=>{R.current[d]=f;let g=String(t);if(d===g){if(!D.current){v.value=f.x,k.value=f.width,D.current=!0,A(V=>V+1);return}v.value=(0,H.withSpring)(f.x,xe),k.value=(0,H.withSpring)(f.width,xe)}},re=d=>{let f=String(d),g=R.current[f];g&&(v.value=(0,H.withSpring)(g.x,xe),k.value=(0,H.withSpring)(g.width,xe)),r(d)};return React.createElement(Le.View,{className:a("flex-row",!p&&"bg-accent",m?"gap-0.5 rounded-xl p-0.5":"gap-1 rounded-2xl p-1",i?"self-stretch":"self-start",o),style:s,...u},React.createElement(H.default.View,{pointerEvents:"none",style:[{position:"absolute",top:P,bottom:P,borderRadius:M,backgroundColor:y.card,shadowColor:y.text,shadowOpacity:p?0:w==="dark"?.08:.14,shadowRadius:m?4:6,shadowOffset:{width:0,height:m?1:2},elevation:m?2:3},q]}),e.map(({key:d,label:f,icon:g,disabled:V=!1})=>{let N=n||V;return React.createElement(Le.Pressable,{key:String(d),onPress:()=>re(d),disabled:N,onLayout:$=>te(String(d),$.nativeEvent.layout),style:{...i?{flex:1,minWidth:0}:{flexShrink:1,minWidth:0},alignItems:"center",justifyContent:"center",paddingHorizontal:T,paddingVertical:C,borderRadius:x,opacity:N?.5:1}},React.createElement(Le.View,{style:{flexDirection:"row",alignItems:"center",gap:S,flexShrink:1,overflow:"hidden"}},g,f&&React.createElement(I,{size:p?"lg":"xl",numberOfLines:1,style:{flexShrink:1}},f)))}))};pr.displayName="MTabs";var Fe=b(require("dayjs")),be=require("react"),tt=require("react-native");var oa=(e,t)=>{let r=e.diff(t,"minute");if(r<1)return"0m";let o=Math.floor(r/1440),s=r%1440,n=Math.floor(s/60),c=s%60,l="";return o>0&&(l+=`${o}d `),(n>0||o>0)&&(l+=`${n}h `),l+=`${c}m`,l.trim()},ur=({date:e,className:t="",textClassName:r=""})=>{let o=(0,be.useMemo)(()=>(0,Fe.default)(e),[e]),[s,n]=(0,be.useState)(()=>(0,Fe.default)());(0,be.useEffect)(()=>{let i=(()=>{let u=(0,Fe.default)(),y=u.add(1,"minute").startOf("minute").diff(u);return setTimeout(()=>{n((0,Fe.default)())},y>0?y:6e4)})();return()=>clearTimeout(i)},[s]);let c=(0,be.useMemo)(()=>oa(s,o),[s,o]);return React.createElement(tt.View,{className:a("rounded-md flex items-center justify-center bg-muted border border-border/60","dark:border-white/20 dark:bg-white/12",t)},React.createElement(tt.Text,{className:a("font-munchi-semibold text-foreground dark:text-neutral-200",r)},c))};ur.displayName="MTimerUp";var z=b(require("react")),ce=require("react-native");var rt=z.forwardRef(({className:e,...t},r)=>z.createElement(ce.View,{ref:r,className:a("rounded-lg border border-border bg-card shadow-sm shadow-foreground/10",e),...t}));rt.displayName="Card";var ot=z.forwardRef(({className:e,...t},r)=>z.createElement(ce.View,{ref:r,className:a("flex flex-col space-y-1.5 p-6",e),...t}));ot.displayName="CardHeader";var at=z.forwardRef(({className:e,...t},r)=>z.createElement(ce.Text,{role:"heading","aria-level":3,ref:r,className:a("text-2xl text-card-foreground font-semibold leading-none tracking-tight",e),...t}));at.displayName="CardTitle";var st=z.forwardRef(({className:e,...t},r)=>z.createElement(ce.Text,{ref:r,className:a("text-sm text-muted-foreground",e),...t}));st.displayName="CardDescription";var nt=z.forwardRef(({className:e,...t},r)=>z.createElement(Ie.Provider,{value:"text-card-foreground"},z.createElement(ce.View,{ref:r,className:a("p-6 pt-0",e),...t})));nt.displayName="CardContent";var it=z.forwardRef(({className:e,...t},r)=>z.createElement(ce.View,{ref:r,className:a("flex flex-row items-center p-6 pt-0",e),...t}));it.displayName="CardFooter";var lt=b(require("react")),Z=b(require("react-native-reanimated"));var oo=1e3;function fr({className:e,...t}){let r=(0,Z.useSharedValue)(1);lt.useEffect(()=>{r.value=(0,Z.withRepeat)((0,Z.withSequence)((0,Z.withTiming)(.5,{duration:oo}),(0,Z.withTiming)(1,{duration:oo})),-1)},[]);let o=(0,Z.useAnimatedStyle)(()=>({opacity:r.value}));return lt.createElement(Z.default.View,{style:o,className:a("rounded-md bg-secondary dark:bg-muted",e),...t})}var ao=require("react-native"),xr=e=>React.createElement(ao.Switch,{...e});xr.displayName="MSwitch";var W=b(require("@rn-primitives/table")),E=b(require("react"));var ct=E.forwardRef(({className:e,...t},r)=>E.createElement(W.Root,{ref:r,className:a("w-full caption-bottom text-sm",e),...t}));ct.displayName="Table";var dt=E.forwardRef(({className:e,...t},r)=>E.createElement(W.Header,{ref:r,className:a("border-border [&_tr]:border-b",e),...t}));dt.displayName="TableHeader";var mt=E.forwardRef(({className:e,style:t,...r},o)=>E.createElement(W.Body,{ref:o,className:a("flex-1 border-border [&_tr:last-child]:border-0",e),style:[{minHeight:2},t],...r}));mt.displayName="TableBody";var pt=E.forwardRef(({className:e,...t},r)=>E.createElement(W.Footer,{ref:r,className:a("bg-muted/50 font-medium [&>tr]:last:border-b-0",e),...t}));pt.displayName="TableFooter";var ut=E.forwardRef(({className:e,...t},r)=>E.createElement(W.Row,{ref:r,className:a("flex-row border-border border-b web:transition-colors web:hover:bg-muted/50 web:data-[state=selected]:bg-muted",e),...t}));ut.displayName="TableRow";var ft=E.forwardRef(({className:e,...t},r)=>E.createElement(Ie.Provider,{value:"text-muted-foreground"},E.createElement(W.Head,{ref:r,className:a("h-12 px-4 text-left justify-center font-medium [&:has([role=checkbox])]:pr-0",e),...t})));ft.displayName="TableHead";var xt=E.forwardRef(({className:e,...t},r)=>E.createElement(W.Cell,{ref:r,className:a("p-4 align-middle [&:has([role=checkbox])]:pr-0",e),...t}));xt.displayName="TableCell";var Se=require("@rn-primitives/portal");var gt=require("class-variance-authority"),so=require("lucide-react-native"),bt=require("react"),se=require("react-native");var aa=(0,gt.cva)("w-full",{variants:{size:{default:"gap-1.5",sm:"gap-1",lg:"gap-2"}},defaultVariants:{size:"default"}}),sa=(0,gt.cva)("flex-row items-center bg-card border border-border",{variants:{size:{default:"px-4 py-3",sm:"px-3 py-2",lg:"px-5 py-4"},radius:{xl:"rounded-xl","2xl":"rounded-2xl"},hasError:{true:"border border-destructive",false:""},focused:{true:"border border-primary",false:""}},compoundVariants:[{hasError:!0,focused:!0,class:"border border-destructive"}],defaultVariants:{size:"default",radius:"xl",hasError:!1,focused:!1}}),na=(0,gt.cva)("flex-1 min-w-0 font-munchi text-foreground p-0",{variants:{size:{default:"text-lg",sm:"text-base",lg:"text-xl"}},defaultVariants:{size:"default"}}),ia={default:18,sm:16,lg:20},gr=({label:e,errorMessage:t,rightIcon:r,size:o="default",radius:s="xl",className:n,inputClassName:c,onFocus:l,onBlur:i,placeholderTextColor:u,...w})=>{let{foreground:y,muted:m,destructive:p}=L(),[P,M]=(0,bt.useState)(!1),T=(0,bt.useRef)(null),C=!!t;return React.createElement(se.View,{className:a(aa({size:o}),n)},e&&React.createElement(I,{size:o==="lg"?"lg":o==="sm"?"sm":"base",className:"font-munchi-semibold text-foreground"},e),React.createElement(se.Pressable,{onPress:()=>T.current?.focus()},React.createElement(se.View,{className:sa({size:o,radius:s,hasError:C,focused:P})},React.createElement(se.TextInput,{ref:T,placeholderTextColor:u??m,onFocus:x=>{M(!0),l?.(x)},onBlur:x=>{M(!1),i?.(x)},style:{color:y,fontSize:ia[o??"default"],paddingVertical:0,includeFontPadding:!1},className:a(na({size:o}),c),...w}),r&&React.createElement(se.View,{className:"ml-2 shrink-0"},r))),C&&React.createElement(se.View,{className:"flex-row items-center gap-1.5"},React.createElement(so.AlertCircle,{size:14,color:p}),React.createElement(I,{size:"sm",className:"text-destructive flex-1"},t)))};gr.displayName="MInput";var Oe=b(require("@rn-primitives/label")),Be=b(require("react"));var yt=Be.forwardRef(({className:e,onPress:t,onLongPress:r,onPressIn:o,onPressOut:s,...n},c)=>Be.createElement(Oe.Root,{className:"web:cursor-default",onPress:t,onLongPress:r,onPressIn:o,onPressOut:s},Be.createElement(Oe.Text,{ref:c,className:a("text-sm text-foreground native:text-base font-medium leading-none web:peer-disabled:cursor-not-allowed web:peer-disabled:opacity-70",e),...n})));yt.displayName=Oe.Root.displayName;var me=b(require("@rn-primitives/radio-group")),de=b(require("react")),no=require("react-native");var ht=de.forwardRef(({className:e,...t},r)=>de.createElement(me.Root,{className:a("web:grid gap-2",e),...t,ref:r}));ht.displayName=me.Root.displayName;var Pt=de.forwardRef(({className:e,...t},r)=>de.createElement(me.Item,{ref:r,className:a("aspect-square h-4 w-4 native:h-5 native:w-5 rounded-full justify-center items-center border border-border web:ring-offset-background web:focus:outline-none web:focus-visible:ring-2 web:focus-visible:ring-ring web:focus-visible:ring-offset-2",t.disabled&&"web:cursor-not-allowed opacity-50",e),...t},de.createElement(me.Indicator,{className:"flex items-center justify-center"},de.createElement(no.View,{className:"aspect-square h-[9px] w-[9px] native:h-[10] native:w-[10] bg-primary rounded-full"}))));Pt.displayName=me.Item.displayName;0&&(module.exports={MAlert,MAnimation,MAvatar,MBadge,MButton,MCard,MCardContent,MCardDescription,MCardFooter,MCardHeader,MCardTitle,MChevron,MConfirmation,MCountDown,MDateTimePicker,MDivider,MDrawerRightPanel,MDropdown,MInput,MLabel,MLucideIcon,MModal,MNativeAlert,MNumpad,MPicker,MPinPadKeys,MPortal,MPortalHost,MProgressBar,MRadioGroup,MRadioGroupItem,MRequiredLabel,MResponsiveContainer,MSearch,MSelector,MSkeleton,MSwitch,MTable,MTableBody,MTableCell,MTableFooter,MTableHead,MTableHeader,MTableRow,MTabs,MText,MTimerUp,MToggle,ModalContent,ModalHeight,ModalScrollContext,NAV_THEME,NumpadMode,buttonVariants,cn,darkVars,getDecimalSeparator,lightVars,typography,useColorScheme,useIconColors});
|
|
1
|
+
"use strict";var po=Object.create;var $e=Object.defineProperty;var uo=Object.getOwnPropertyDescriptor;var fo=Object.getOwnPropertyNames;var xo=Object.getPrototypeOf,bo=Object.prototype.hasOwnProperty;var go=(e,t)=>{for(var r in t)$e(e,r,{get:t[r],enumerable:!0})},Mr=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of fo(t))!bo.call(e,s)&&s!==r&&$e(e,s,{get:()=>t[s],enumerable:!(o=uo(t,s))||o.enumerable});return e};var b=(e,t,r)=>(r=e!=null?po(xo(e)):{},Mr(t||!e||!e.__esModule?$e(r,"default",{value:e,enumerable:!0}):r,e)),yo=e=>Mr($e({},"__esModule",{value:!0}),e);var da={};go(da,{MAlert:()=>Rt,MAnimation:()=>St,MAvatar:()=>_t,MBadge:()=>Lt,MButton:()=>Bt,MCard:()=>ot,MCardContent:()=>it,MCardDescription:()=>nt,MCardFooter:()=>lt,MCardHeader:()=>at,MCardTitle:()=>st,MChevron:()=>Ht,MConfirmation:()=>sr,MCountDown:()=>Jt,MDateTimePicker:()=>$t,MDivider:()=>jt,MDrawerRightPanel:()=>Yt,MDropdown:()=>er,MInput:()=>gr,MLabel:()=>ht,MLucideIcon:()=>Gt,MModal:()=>_e,MNativeAlert:()=>Qt,MNumpad:()=>pr,MPicker:()=>Wt,MPinPadKeys:()=>lr,MPortal:()=>Se.Portal,MPortalHost:()=>Se.PortalHost,MProgressBar:()=>qt,MRadioGroup:()=>Pt,MRadioGroupItem:()=>wt,MRequiredLabel:()=>Hr,MResponsiveContainer:()=>Ut,MSearch:()=>rr,MSelector:()=>or,MSkeleton:()=>xr,MSwitch:()=>br,MTable:()=>dt,MTableBody:()=>pt,MTableCell:()=>bt,MTableFooter:()=>ut,MTableHead:()=>xt,MTableHeader:()=>mt,MTableRow:()=>ft,MTabs:()=>ur,MText:()=>k,MTimerUp:()=>fr,MToggle:()=>ar,ModalContent:()=>Wr,ModalHeight:()=>Xt,ModalScrollContext:()=>Ye,NAV_THEME:()=>U,NumpadMode:()=>dr,buttonVariants:()=>Ot,cn:()=>a,darkVars:()=>Ne,getDecimalSeparator:()=>mr,lightVars:()=>Me,typography:()=>Rr,useColorScheme:()=>j,useIconColors:()=>L});module.exports=yo(da);var Nr=require("clsx"),Tr=require("tailwind-merge");function a(...e){return(0,Tr.twMerge)((0,Nr.clsx)(e))}function Mt(e,t=4,r="0"){return e.toString().padStart(t,r)}var vr=require("nativewind");function j(){let{colorScheme:e,setColorScheme:t,toggleColorScheme:r}=(0,vr.useColorScheme)();return{colorScheme:e??"light",isDarkColorScheme:e==="dark",setColorScheme:t,toggleColorScheme:r}}var Me={"--background":"0 0% 95.7%","--foreground":"0 0% 7.8%","--card":"0 0% 100%","--card-foreground":"0 0% 7.8%","--popover":"0 0% 100%","--popover-foreground":"0 0% 7.8%","--primary":"0 0% 7.8%","--primary-foreground":"0 0% 100%","--secondary":"0 0% 93%","--secondary-foreground":"0 0% 7.8%","--muted":"0 0% 93%","--muted-foreground":"0 0% 45%","--accent":"0 0% 89.4%","--accent-foreground":"0 0% 7.8%","--destructive":"0 84.2% 60.2%","--destructive-foreground":"0 0% 100%","--border":"0 0% 78%","--input":"0 0% 78%","--ring":"0 0% 7.8%"},Ne={"--background":"0 0% 7.8%","--foreground":"0 0% 100%","--card":"0 0% 14.5%","--card-foreground":"0 0% 100%","--popover":"0 0% 14.5%","--popover-foreground":"0 0% 100%","--primary":"0 0% 100%","--primary-foreground":"0 0% 7.8%","--secondary":"0 0% 18%","--secondary-foreground":"0 0% 100%","--muted":"0 0% 11%","--muted-foreground":"0 0% 60%","--accent":"0 0% 21.2%","--accent-foreground":"0 0% 100%","--destructive":"0 72% 51%","--destructive-foreground":"0 0% 100%","--border":"0 0% 28%","--input":"0 0% 28%","--ring":"0 0% 60%"};var Te=(e,t)=>`hsl(${e[t]})`,Cr=e=>({background:Te(e,"--background"),border:Te(e,"--border"),card:Te(e,"--card"),notification:Te(e,"--destructive"),primary:Te(e,"--primary"),text:Te(e,"--foreground")}),U={light:Cr(Me),dark:Cr(Ne)};function L(){let{colorScheme:e}=j(),t=e==="dark"?"dark":"light",r=U[t];return{foreground:r.text,muted:t==="dark"?"hsl(240 5% 64.9%)":"hsl(240 3.8% 46.1%)",primary:r.primary,destructive:r.notification,onDestructive:"hsl(0 0% 100%)",onPrimary:t==="dark"?"hsl(240 5.9% 10%)":"hsl(0 0% 98%)"}}var Rr={regular:"DMSans_400Regular",medium:"DMSans_500Medium",bold:"DMSans_700Bold"};var kr=require("class-variance-authority"),ee=b(require("react")),Nt=require("react-native");var Vr=b(require("@rn-primitives/slot")),ie=b(require("react")),Sr=require("react-native");var Ie=ie.createContext(void 0),je=ie.forwardRef(({className:e,asChild:t=!1,...r},o)=>{let s=ie.useContext(Ie);return ie.createElement(t?Vr.Text:Sr.Text,{className:a("text-base text-foreground web:select-text",s,e),ref:o,...r})});je.displayName="Text";var ho=(0,kr.cva)("relative bg-background w-full rounded-lg border border-border p-4 shadow shadow-foreground/10",{variants:{variant:{default:"",destructive:"border-destructive"}},defaultVariants:{variant:"default"}}),Po={default:"hsl(240 10% 3.9%)",destructive:"hsl(0 84.2% 60.2%)"},Tt=ee.forwardRef(({className:e,variant:t,children:r,icon:o,iconSize:s=16,iconClassName:n,...l},i)=>{let d=Po[t??"default"];return ee.createElement(Nt.View,{ref:i,role:"alert",className:ho({variant:t,className:e}),...l},ee.createElement(Nt.View,{className:"absolute left-3.5 top-4 -translate-y-0.5"},ee.createElement(o,{size:s,color:d})),r)});Tt.displayName="Alert";var vt=ee.forwardRef(({className:e,...t},r)=>ee.createElement(je,{ref:r,className:a("pl-7 mb-1 font-medium text-base leading-none tracking-tight text-foreground",e),...t}));vt.displayName="AlertTitle";var Ct=ee.forwardRef(({className:e,...t},r)=>ee.createElement(je,{ref:r,className:a("pl-7 text-sm leading-relaxed text-foreground",e),...t}));Ct.displayName="AlertDescription";var Rt=({title:e,description:t,icon:r,iconSize:o,iconClassName:s,variant:n="default",className:l})=>React.createElement(Tt,{icon:r,iconSize:o,iconClassName:s,variant:n,className:a(l)},React.createElement(vt,null,e),t&&React.createElement(Ct,null,t));Rt.displayName="MAlert";var Ar=b(require("lottie-react-native")),De=require("react-native");var Ir=require("class-variance-authority"),Vt=b(require("react")),Dr=require("react-native");var wo=(0,Ir.cva)("text-base text-foreground",{variants:{variant:{default:"font-munchi"},size:{xs:"text-xs",sm:"text-sm",base:"text-base",lg:"text-lg",xl:"text-xl","2xl":"text-2xl","3xl":"text-3xl","4xl":"text-4xl"}},defaultVariants:{variant:"default",size:"base"}}),k=Vt.default.forwardRef(({className:e,variant:t,size:r,children:o,...s},n)=>Vt.default.createElement(Dr.Text,{ref:n,className:a(wo({variant:t,size:r}),e),...s,allowFontScaling:!1},o));k.displayName="MText";var St=({children:e,animationSource:t,lottieViewProps:r,childrenClass:o,text:s,subText:n})=>React.createElement(De.View,{className:"w-full flex-1 flex-col gap-4"},React.createElement(De.View,{className:"flex-1 flex items-center justify-center"},React.createElement(Ar.default,{...r,source:t})),(s||n)&&React.createElement(De.View,{className:"items-center gap-1 px-4"},s&&React.createElement(k,{className:"text-center text-2xl font-munchi-semibold"},s),n&&React.createElement(k,{className:"text-center text-base text-muted-foreground"},n)),e&&React.createElement(De.View,{className:a("flex flex-col items-center",o)},e));St.displayName="MAnimation";var At=require("class-variance-authority"),ve=b(require("react")),Ge=require("react-native");var ae=b(require("@rn-primitives/avatar")),le=b(require("react"));var kt=le.forwardRef(({className:e,...t},r)=>le.createElement(ae.Root,{ref:r,className:a("relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full",e),...t}));kt.displayName=ae.Root.displayName;var It=le.forwardRef(({className:e,...t},r)=>le.createElement(ae.Image,{ref:r,className:a("aspect-square h-full w-full",e),...t}));It.displayName=ae.Image.displayName;var Dt=le.forwardRef(({className:e,...t},r)=>le.createElement(ae.Fallback,{ref:r,className:a("flex h-full w-full items-center justify-center rounded-full bg-muted",e),...t}));Dt.displayName=ae.Fallback.displayName;var Mo=(0,At.cva)("relative flex shrink-0 overflow-hidden rounded-full",{variants:{size:{xs:"h-6 w-6",sm:"h-8 w-8",md:"h-10 w-10",lg:"h-12 w-12",xl:"h-16 w-16",xxl:"h-20 w-20",full:"h-full w-full"}},defaultVariants:{size:"md"}}),No=(0,At.cva)("font-munchi text-background",{variants:{size:{xs:"text-sm",sm:"text-sm",md:"text-base",lg:"text-xl",xl:"text-3xl",xxl:"text-4xl",full:"text-2xl"}},defaultVariants:{size:"md"}}),_t=ve.default.forwardRef(({className:e,size:t,source:r,fallbackText:o,imageClassName:s,fallbackClassName:n,fallbackTextClassName:l,...i},d)=>ve.default.createElement(kt,{ref:d,className:a(Mo({size:t}),e),...i},r&&ve.default.createElement(It,{source:r,className:a("aspect-square h-full w-full",s)}),ve.default.createElement(Dt,{className:a("flex h-full w-full items-center justify-center rounded-full bg-muted",n)},ve.default.createElement(Ge.Text,{className:a(No({size:t}),Ge.Platform.OS==="ios"&&"text-foreground",l)},o))));_t.displayName="MAvatar";var Et=require("class-variance-authority"),We=require("react-native");var To=(0,Et.cva)("p-1 px-2 rounded-md border-0",{variants:{variant:{default:"bg-secondary",accent:"bg-accent",muted:"bg-muted text-muted-foreground",destructive:"bg-destructive",primary:"bg-primary text-primary-foreground mx-1",gray:"bg-muted text-muted-foreground",custom:""}},defaultVariants:{variant:"gray"}}),vo=(0,Et.cva)("text-xs font-munchi",{variants:{variant:{default:"text-secondary-foreground",accent:"text-accent-foreground",muted:"text-muted-foreground",destructive:"text-destructive-foreground",primary:"text-primary-foreground",gray:"text-muted-foreground",custom:"text-foreground"}},defaultVariants:{variant:"gray"}}),Lt=({variant:e="gray",text:t,show:r=!0,customBackgroundColor:o,className:s,textClassName:n})=>{if(!r)return null;let l=e==="custom";return React.createElement(We.View,{className:a(To({variant:e}),s),style:l?{backgroundColor:o}:void 0},React.createElement(We.Text,{className:a(vo({variant:e}),n)},t))};Lt.displayName="MBadge";var _r=require("class-variance-authority"),Ke=b(require("react")),Ft=require("react-native");var Ot=(0,_r.cva)("flex-row justify-center items-center rounded-full",{variants:{variant:{default:"bg-primary",primary:"bg-primary",white:"bg-card border border-border",destructive:"bg-destructive",outline:"bg-transparent border border-border",secondary:"bg-secondary",ghost:"bg-transparent",link:"bg-transparent",none:"none",custom:""},size:{none:"",default:"h-auto px-4 md:py-2",sm:"h-8 px-3 py-1.5",lg:"h-10 px-6 py-2.5",icon:"h-9 w-9 p-2 justify-center items-center"}},defaultVariants:{variant:"default",size:"default"}}),Bt=Ke.default.forwardRef((e,t)=>{let{onPress:r,variant:o="default",size:s="default",disabled:n=!1,children:l,className:i,...d}=e;return o==="custom"?Ke.default.createElement(Ft.Pressable,{ref:t,disabled:n,className:a(n&&"opacity-50",i),onPress:r,android_ripple:null,...d},l):Ke.default.createElement(Ft.Pressable,{ref:t,disabled:n,className:a(Ot({variant:o,size:s}),n&&"opacity-50",i),onPress:r,...d},l)});Bt.displayName="MButton";var qe=require("react"),Ze=require("react-native"),Ue=b(require("react-native-svg"));var Ht=({isOpen:e,size:t=11,color:r})=>{let{colorScheme:o}=j(),s=r??U[o].text,n=(0,qe.useRef)(new Ze.Animated.Value(e?90:0)).current;(0,qe.useEffect)(()=>{Ze.Animated.timing(n,{toValue:e?90:0,duration:200,useNativeDriver:!0}).start()},[e,n]);let l=n.interpolate({inputRange:[0,90],outputRange:["0deg","90deg"]});return React.createElement(Ze.Animated.View,{style:{transform:[{rotate:l}]}},React.createElement(Ue.default,{width:t,height:t,viewBox:"0 0 11 11",fill:"none"},React.createElement(Ue.Path,{fillRule:"evenodd",clipRule:"evenodd",d:"M3.80026 1.96823C3.97925 1.78924 4.26945 1.78924 4.44844 1.96823L7.65677 5.17656C7.83575 5.35554 7.83575 5.64576 7.65677 5.82474L4.44844 9.03307C4.26945 9.21205 3.97925 9.21205 3.80026 9.03307C3.62127 8.85409 3.62127 8.56388 3.80026 8.3849L6.68451 5.50065L3.80026 2.61641C3.62127 2.43742 3.62127 2.14722 3.80026 1.96823Z",fill:s})))};Ht.displayName="MChevron";var zt=require("react-native"),Xe=b(require("react-native-ui-datepicker"));var $t=({className:e,classNames:t,showOutsideDays:r=!0,containerHeight:o=220,components:s,minDate:n,maxDate:l,...i})=>{let d=(0,Xe.useDefaultClassNames)(),c=n||(()=>{let p=new Date;return p.setFullYear(p.getFullYear()-1),p})(),x=l||(()=>{let p=new Date;return p.setDate(p.getDate()),p})(),g={IconPrev:React.createElement(zt.Text,{className:"font-munchi text-lg text-foreground"},"<"),IconNext:React.createElement(zt.Text,{className:"font-munchi text-lg text-foreground"},">")};return React.createElement(Xe.default,{showOutsideDays:r,className:a("bg-card w-full rounded-xl",e),containerHeight:o,minDate:c,maxDate:x,classNames:{...d,day_cell:"p-0.5",day:a(d.day,"font-munchi rounded-xl text-foreground w-10 h-10"),day_label:"font-munchi text-base text-foreground",outside_label:"font-munchi text-base text-foreground opacity-40",today_label:"text-destructive font-munchi-bold text-base",month_selector_label:a(d.month_selector_label,"text-base font-munchi-semibold text-foreground"),year_selector_label:a(d.year_selector_label,"text-base font-munchi-semibold text-foreground"),time_selector_label:a(d.time_selector_label,"text-base font-munchi text-foreground"),header:"font-munchi-semibold text-lg text-foreground pb-2",weekday_label:"font-munchi-semibold text-sm text-muted-foreground",selected:a(d.selected,"font-munchi bg-primary rounded-xl"),selected_label:"font-munchi-semibold text-primary-foreground text-base",range_end:a(d.range_end,"font-munchi bg-primary rounded-r-xl"),range_start:a(d.range_start,"font-munchi bg-primary rounded-l-xl"),range_end_label:a(d.range_end_label,"font-munchi-semibold text-primary-foreground text-base"),range_start_label:a(d.range_start_label,"font-munchi-semibold text-primary-foreground text-base"),range_fill:"bg-primary/20 my-1",range_fill_weekstart:"rounded-s-lg",range_fill_weekend:"rounded-e-lg",range_middle_label:"font-munchi text-base text-foreground",month:a(d.month,"font-munchi rounded-xl text-foreground"),month_label:"font-munchi text-base text-foreground",year:a(d.year,"font-munchi rounded-xl text-foreground"),year_label:"font-munchi text-base text-foreground",time_label:"font-munchi text-2xl text-foreground",...t},components:{...g,...s},...i})};$t.displayName="MDateTimePicker";var Er=require("class-variance-authority"),Lr=require("react-native");var Co=(0,Er.cva)("",{variants:{direction:{horizontal:"my-2",vertical:"mx-2"},variant:{sm:"",md:"",lg:""}},defaultVariants:{direction:"horizontal",variant:"md"}}),Ro={sm:1,md:2,lg:4},jt=({className:e,direction:t="horizontal",variant:r="md",color:o,style:s})=>{let n=t==="horizontal",l=Ro[r??"md"],i=o?{backgroundColor:o,[n?"height":"width"]:l,[n?"width":"height"]:"100%"}:{[n?"height":"width"]:l,[n?"width":"height"]:"100%"};return React.createElement(Lr.View,{className:a(!o&&"bg-border",Co({direction:t,variant:r}),e),style:[i,s]})};jt.displayName="MDivider";var Fr=b(require("react")),Vo=b(require("lucide-react-native")),Gt=({name:e,...t})=>{let r=Vo[e];return r?Fr.default.createElement(r,{...t}):null};Gt.displayName="MLucideIcon";var Ae=require("react"),G=require("react-native");var Wt=({data:e,onSelect:t,placeholder:r,selectedValue:o,className:s,textClassName:n,dropdownContainerClassName:l,itemContainerClassName:i,itemTextClassName:d})=>{let[c,x]=(0,Ae.useState)(!1),g=(0,Ae.useRef)(null),[p,u]=(0,Ae.useState)({x:0,y:0,width:0,height:0}),y=e.find(f=>f.value===o),P=f=>{t(f),x(!1)},M=({item:f})=>{let V=f.value===o;return React.createElement(G.Pressable,{className:a("p-3 rounded-md m-1",V?"bg-primary":"active:bg-muted",i),onPress:()=>P(f)},React.createElement(G.Text,{className:a(V?"text-primary-foreground":"text-foreground",d),numberOfLines:1},f.label))},R=()=>{c?x(!1):g.current?.measureInWindow((f,V,C,v)=>{u({x:f,y:V,width:C,height:v}),x(!0)})};return React.createElement(G.View,{className:"flex-col items-center justify-center"},React.createElement(G.Pressable,{ref:g,className:a("bg-primary rounded-full py-4 px-6 flex-row items-center",s),onPress:R},React.createElement(G.Text,{className:a("text-primary-foreground text-base",n),numberOfLines:1,ellipsizeMode:"tail"},y?y.label:r)),React.createElement(G.Modal,{animationType:"none",transparent:!0,visible:c,onRequestClose:()=>{x(!1)}},React.createElement(G.Pressable,{className:"absolute inset-0",onPress:()=>x(!1)}),React.createElement(G.View,{style:{position:"absolute",top:p.y+p.height,left:p.x},className:a("min-w-[100px] bg-background shadow-lg rounded-lg border border-border p-1 z-50 mt-2",l)},React.createElement(G.FlatList,{data:e,renderItem:M,keyExtractor:f=>String(f.value),className:"max-h-[200px]"}))))};Wt.displayName="MPicker";var Zt=require("class-variance-authority"),Kt=require("react-native");var So=(0,Zt.cva)("w-full h-2 rounded-full relative",{variants:{size:{sm:"h-1",md:"h-2",lg:"h-3"},variant:{default:"bg-muted",accent:"bg-accent/30",destructive:"bg-destructive/30",secondary:"bg-secondary",gray:"bg-gray",pink:"bg-pink",blue:"bg-blue-200",green:"bg-green-200"}},defaultVariants:{size:"md",variant:"default"}}),ko=(0,Zt.cva)("h-full rounded-full absolute top-0 left-0",{variants:{variant:{default:"bg-foreground",accent:"bg-accent",destructive:"bg-destructive",secondary:"bg-secondary-foreground",gray:"bg-gray-600",pink:"bg-pink",blue:"bg-blue-600",green:"bg-green-600"}},defaultVariants:{variant:"default"}}),qt=({progress:e,size:t="md",variant:r="default",className:o,fillClassName:s})=>{let n=Math.min(Math.max(e,0),100);return React.createElement(Kt.View,{className:a(So({size:t,variant:r}),o)},React.createElement(Kt.View,{style:{width:`${n}%`},className:a(ko({variant:r}),s)}))};qt.displayName="MProgressBar";var Or=require("react-native");var Ut=({children:e,className:t,style:r,padding:o,margin:s,...n})=>React.createElement(Or.View,{className:a((()=>{let i=[];if(o)for(let[d,c]of Object.entries(o))c!==void 0&&i.push(`${d}:p-${c}`);if(s)for(let[d,c]of Object.entries(s))c!==void 0&&i.push(`${d}:m-${c}`);return i.join(" ")})(),t),style:r,...n},e);Ut.displayName="MResponsiveContainer";var Br=require("react-native");var Hr=({label:e,className:t,...r})=>React.createElement(Br.View,{className:a("flex-row items-center gap-1 mb-3",t),...r},React.createElement(k,{className:"font-munchi-bold text-xl"},e),React.createElement(k,{className:"font-munchi-bold text-xl text-destructive"},"*"));var zr=require("class-variance-authority"),Ce=require("lucide-react-native"),te=require("react"),h=require("react-native");var Xt=(i=>(i.ExtraSmall="xs",i.Small="sm",i.Medium="md",i.Large="lg",i.ExtraLarge="xl",i.ExtraExtraLarge="xxl",i.Auto="auto",i))(Xt||{}),$r=(0,te.createContext)({isFixed:!1}),Ye=(0,te.createContext)(null),Io=(0,zr.cva)("rounded-2xl p-6 shadow-lg flex flex-col",{variants:{variant:{xs:"w-[40%]",sm:"w-[60%]",md:"w-[80%]",lg:"w-[95%]",auto:"w-auto self-center",fullscreen:"w-full h-full rounded-none"},height:{xs:"h-[30%]",sm:"h-[40%]",md:"h-[60%]",lg:"h-[80%]",xl:"h-[90%]",xxl:"h-[96%]",auto:"h-auto"},background:{white:"bg-card",dark:"bg-secondary",primary:"bg-muted",transparent:"bg-transparent"}},defaultVariants:{variant:"md",height:"auto",background:"white"}}),jr=({children:e,scrollable:t=!0})=>{let{isFixed:r}=(0,te.useContext)($r),o=(0,te.useContext)(Ye);return t?React.createElement(h.View,{className:a(r&&"flex-1")},React.createElement(h.ScrollView,{ref:o,showsVerticalScrollIndicator:!1,contentContainerStyle:{flexGrow:1},keyboardShouldPersistTaps:"handled",style:r?{flex:1}:void 0},React.createElement(h.Pressable,{style:{flex:1}},e))):React.createElement(h.View,{className:a(r&&"flex-1"),style:r?{flex:1}:void 0},React.createElement(h.Pressable,{style:{flex:1}},e))};jr.displayName="ModalBody";var Gr=({children:e})=>React.createElement(h.View,{className:"mt-auto flex-shrink-0"},e),Wr=({body:e,footer:t})=>React.createElement(te.Fragment,null,React.createElement(_e.Body,null,e),t&&React.createElement(_e.Footer,null,t)),Do=e=>{let{isVisible:t,onClose:r,children:o,onBack:s,onDismiss:n,header:l,headingText:i,closable:d=!0,variant:c="sm",containerClassName:x,height:g,background:p="white",footer:u,onButtonClose:y,showCloseButton:P=!0,showBackButton:M=!0,keyboardAvoidingEnabled:R=!0}=e,V={isFixed:(g&&g!=="auto")??!1},C=(0,te.useRef)(null),{foreground:v}=L(),S=()=>s&&M?React.createElement(h.View,{className:"flex-row items-center justify-between"},React.createElement(h.Pressable,{onPress:s,className:"bg-muted rounded-full p-2"},React.createElement(Ce.ArrowLeft,{color:v,size:24})),i&&React.createElement(k,{className:"font-munchi-bold text-foreground flex-1 text-left mx-3",size:"2xl",numberOfLines:1},i),P&&React.createElement(h.Pressable,{onPress:r,className:"bg-muted rounded-full p-3"},React.createElement(Ce.X,{color:v,size:24}))):l||(i?React.createElement(h.View,{className:"flex-row items-center justify-between"},React.createElement(k,{className:"font-munchi-bold text-foreground w-11/12",size:"2xl",numberOfLines:1},i),P&&React.createElement(h.Pressable,{onPress:y??r,className:"bg-muted rounded-full p-3"},React.createElement(Ce.X,{color:v,size:24}))):P?React.createElement(h.View,{className:"flex-row items-center justify-between"},React.createElement(h.View,{className:"flex-1"}),React.createElement(h.Pressable,{onPress:r,className:"bg-muted rounded-full p-3"},React.createElement(Ce.X,{color:v,size:24}))):null),E=I=>{I.target===I.currentTarget&&d&&r()};return React.createElement(h.Modal,{transparent:!0,visible:t,onRequestClose:d?r:void 0,animationType:"fade",onDismiss:n},React.createElement(h.KeyboardAvoidingView,{className:"flex-1",enabled:R,behavior:h.Platform.select({ios:"padding",default:"height"})},React.createElement(h.Pressable,{className:"flex-1 items-center justify-center bg-black/50 p-4",onPress:E},React.createElement(h.View,{className:a("max-h-[95%]",Io({variant:c,height:g,background:p}),x)},React.createElement($r.Provider,{value:V},React.createElement(Ye.Provider,{value:C},S()!==null&&React.createElement(h.View,{className:"pb-4 flex-shrink-0"},S()),o,u&&React.createElement(Gr,null,u)))))))},_e=Object.assign(Do,{Body:jr,Footer:Gr});_e.displayName="MModal";var ue=require("react"),F=require("react-native"),H=b(require("react-native-reanimated")),Zr=require("react-native-safe-area-context");var Ao={mass:.4,stiffness:110,damping:16,overshootClamping:!1},_o={mass:.4,stiffness:140,damping:22,overshootClamping:!0},Kr=340,Yt=({isVisible:e,onClose:t,header:r,footer:o,children:s,closable:n=!0,widthFraction:l=.45,className:i,scrollable:d=!0})=>{let{colorScheme:c}=j(),x=U[c],{width:g}=(0,F.useWindowDimensions)(),p=(0,Zr.useSafeAreaInsets)(),u=g*l,[y,P]=(0,ue.useState)(!1),M=(0,ue.useRef)(null),R=(0,ue.useRef)(!1),f=(0,H.useSharedValue)(u),V=(0,H.useSharedValue)(0),C=oe=>{R.current||(R.current=!0,f.value=(0,H.withSpring)(u,_o),V.value=(0,H.withTiming)(0,{duration:Kr}),M.current=setTimeout(()=>{P(!1),R.current=!1,oe?.()},Kr))};(0,ue.useEffect)(()=>(e?(M.current&&(clearTimeout(M.current),M.current=null,R.current=!1),P(!0),f.value=(0,H.withSpring)(0,Ao),V.value=(0,H.withTiming)(1,{duration:300})):C(),()=>{M.current&&clearTimeout(M.current)}),[e]);let v=()=>{n&&C(t)},S=()=>{C(t)},E=(0,H.useAnimatedStyle)(()=>({transform:[{translateX:f.value}]})),I=(0,H.useAnimatedStyle)(()=>({opacity:V.value}));return React.createElement(F.Modal,{transparent:!0,visible:y,animationType:"none",onRequestClose:n?S:void 0},React.createElement(F.View,{className:"flex-1 flex-row justify-end",style:{paddingTop:p.top,paddingBottom:p.bottom}},React.createElement(F.TouchableWithoutFeedback,{onPress:v},React.createElement(H.default.View,{className:"absolute inset-0 bg-black/60",style:I})),React.createElement(H.default.View,{style:[E,{width:u}],className:a("h-full overflow-hidden border rounded-2xl border-border",i)},React.createElement(F.View,{className:"flex-1",style:{backgroundColor:x.background}},r&&React.createElement(F.View,{className:"px-6 pt-6 flex-shrink-0"},r),d?React.createElement(F.ScrollView,{className:"flex-1 px-6",showsVerticalScrollIndicator:!1,contentContainerStyle:{paddingTop:16,paddingBottom:24},keyboardShouldPersistTaps:"handled",automaticallyAdjustKeyboardInsets:F.Platform.OS==="ios",keyboardDismissMode:"interactive"},s):React.createElement(F.View,{className:"flex-1 overflow-hidden"},s),o&&React.createElement(F.View,{className:"px-6 pb-6 pt-4 border-t-2 border-border flex-shrink-0"},o)))))};Yt.displayName="MDrawerRightPanel";var qr=require("react-native"),Qt=({title:e,description:t,onPress:r,onPressText:o,onCancel:s,onCancelText:n})=>{qr.Alert.alert(e,t,[{text:o,onPress:r},{text:n,style:"cancel",onPress:s}])};Qt.displayName="MNativeAlert";var Ur=require("react"),Xr=b(require("react-countdown")),Qe=require("react-native");var Jt=({warningThreshold:e=3,className:t="",textClassName:r="",showPrefix:o=!0,countUp:s=!1,renderer:n,onComplete:l,date:i,...d})=>{let c=(0,Ur.useMemo)(()=>({minutes:g,seconds:p,completed:u})=>{let y,P,M="";if(u)if(s){let E=new Date(i),oe=new Date().getTime()-E.getTime();y=Math.floor(oe/6e4),P=Math.floor(oe%6e4/1e3),o&&(M="-")}else y=0,P=0;else y=g,P=p;let R=!u||s?Mt(Math.abs(y),2):"00",f=!u||s?Mt(Math.abs(P),2):"00",V=!u&&g<e,C=u,v=V||C?"bg-destructive/15":"bg-green-500/15",S=V||C?"text-destructive":"text-green-600";return React.createElement(Qe.View,{className:a("rounded-md flex items-center justify-center",v,t)},React.createElement(Qe.Text,{className:a("font-munchi-semibold text-center",S,r)},M,R,":",f))},[e,s,i,o,t,r]);return React.createElement(Xr.default,{renderer:n??c,onComplete:l,overtime:s,date:i,...d})};Jt.displayName="MCountDown";var Yr=require("lucide-react-native"),Qr=require("react"),Re=require("react-native"),Jr=require("react-native-element-dropdown");function Eo(e){return{trigger:{width:"100%",paddingHorizontal:16,paddingVertical:12,borderRadius:16,borderWidth:1,borderColor:e.borderColor,backgroundColor:e.cardColor},containerStyle:{marginTop:6,borderRadius:16,borderWidth:1,borderColor:e.borderColor,backgroundColor:e.cardColor,shadowColor:e.textColor,shadowOpacity:.06,shadowRadius:8,shadowOffset:{width:0,height:2},elevation:3,overflow:"hidden"},itemContainerStyle:{backgroundColor:e.cardColor,padding:0},activeColor:e.mutedColor}}function Lo(e){return{trigger:{width:"100%",paddingHorizontal:12,paddingVertical:8,borderRadius:12,borderWidth:1,borderColor:e.borderColor,backgroundColor:e.cardColor},containerStyle:{marginTop:4,borderRadius:12,borderWidth:1,borderColor:e.borderColor,backgroundColor:e.cardColor,shadowColor:e.textColor,shadowOpacity:.06,shadowRadius:6,shadowOffset:{width:0,height:1},elevation:2,overflow:"hidden"},itemContainerStyle:{backgroundColor:e.cardColor,padding:0},activeColor:e.mutedColor}}function Fo(e){return{trigger:{paddingHorizontal:16,paddingVertical:8,borderRadius:999,borderWidth:0,backgroundColor:e.bgColor,minWidth:160},containerStyle:{marginTop:4,borderRadius:16,borderWidth:1,borderColor:e.borderColor,backgroundColor:e.cardColor,shadowColor:e.textColor,shadowOpacity:.06,shadowRadius:6,shadowOffset:{width:0,height:1},elevation:2,overflow:"hidden"},itemContainerStyle:{backgroundColor:e.cardColor,padding:0},activeColor:e.mutedColor}}var er=({data:e=[],placeholder:t="",value:r,onFocus:o,onBlur:s,onChange:n,customStyles:l,fieldFrame:i="none",style:d,containerStyle:c,itemContainerStyle:x,selectedTextStyle:g,placeholderStyle:p,activeColor:u,maxHeight:y=300,renderRightIcon:P,selectedTextProps:M,mode:R="auto",...f})=>{let{colorScheme:V}=j(),{foreground:C,muted:v}=L(),S=e.length===0,E=V==="dark",I=U[E?"dark":"light"],Y=`hsl(${(E?Ne:Me)["--muted"]})`,Q=(0,Qr.useMemo)(()=>{let He={cardColor:I.card,borderColor:I.border,textColor:I.text,mutedColor:Y};return i==="mInputSm2xl"?Eo(He):i==="mInputCompact"?Lo(He):i==="pill"?Fo({...He,bgColor:Y}):null},[i,I.card,I.border,I.text,Y]),O=Re.StyleSheet.flatten([Q?.trigger,l,d]),m=Re.StyleSheet.flatten([Q?.containerStyle,c]),w=Re.StyleSheet.flatten([Q?.itemContainerStyle,x]),N=i==="mInputSm2xl"?18:i==="mInputCompact"?15:14,D=Re.StyleSheet.flatten([{fontSize:N,color:C},g]),T=Re.StyleSheet.flatten([{fontSize:N,color:S?v:C},p]),q=Q?Q.activeColor:u??Y,he=i==="mInputCompact"?16:20;return React.createElement(Jr.Dropdown,{...f,mode:R,data:e,maxHeight:y,placeholder:t,value:r,onFocus:o,onBlur:s,onChange:n,style:O,containerStyle:m,itemContainerStyle:w,activeColor:q,fontFamily:"DMSans_400Regular",selectedTextStyle:D,selectedTextProps:{numberOfLines:1,ellipsizeMode:"tail",...M??{}},placeholderStyle:T,renderRightIcon:P??(()=>React.createElement(Yr.ArrowDown,{color:S?v:C,size:he}))})};er.displayName="MDropdown";var tr=require("class-variance-authority"),Je=require("lucide-react-native"),se=b(require("react")),J=require("react-native");var Oo=(0,tr.cva)("flex-row items-center bg-card rounded-full border border-border",{variants:{size:{default:"",sm:"",lg:""}},defaultVariants:{size:"default"}}),Bo={default:18,sm:15,lg:21},Ho={default:36,sm:30,lg:52},zo=(0,tr.cva)("flex-1 min-w-0 px-2 font-munchi",{variants:{size:{default:"text-lg",sm:"text-base",lg:"text-xl"}},defaultVariants:{size:"default"}}),rr=se.default.forwardRef(({value:e,onChangeText:t,onClear:r,placeholder:o="Search...",size:s="default",className:n,containerClassName:l,inputClassName:i,iconSize:d=20,placeholderTextColor:c,...x},g)=>{let{foreground:p,muted:u}=L(),y=()=>{r?r():t(""),J.Keyboard.isVisible()&&J.Keyboard.dismiss()};return se.default.createElement(J.View,{className:a(Oo({size:s}),n,l)},se.default.createElement(J.View,{className:"pl-3 shrink-0"},se.default.createElement(Je.Search,{size:d,color:u})),se.default.createElement(J.TextInput,{ref:g,placeholder:o,placeholderTextColor:c??u,value:e,onChangeText:t,textAlignVertical:"center",style:{color:p,fontSize:Bo[s??"default"],height:Ho[s??"default"],paddingVertical:0,includeFontPadding:!1},className:a(zo({size:s}),i),...x}),se.default.createElement(J.View,{className:"pr-2 shrink-0",style:{width:d+16}},e.length>0&&se.default.createElement(J.Pressable,{onPress:y,className:"items-center justify-center p-2"},se.default.createElement(Je.X,{size:d,color:u}))))});rr.displayName="MSearch";var fe=b(require("react")),ce=require("react-native");var or=fe.default.memo(({label:e,isSelected:t,onPress:r,description:o})=>fe.default.createElement(ce.Pressable,{className:"flex flex-row justify-between items-center p-2",onPress:r},fe.default.createElement(ce.Text,{className:a("font-munchi",t&&"font-munchi-semibold")},e),t&&o&&fe.default.createElement(ce.Text,{className:"text-muted-foreground text-sm mx-2 flex-1 text-right"},o),fe.default.createElement(ce.View,{className:a("w-6 h-6 rounded-full border-2 border-primary ml-2",!t&&"bg-card")},t&&fe.default.createElement(ce.View,{className:"absolute inset-0 m-1 rounded-full bg-primary"}))));or.displayName="MSelector";var Ve=require("react-native");var ar=({options:e,selectedKey:t,onSelect:r})=>React.createElement(Ve.View,{className:"flex flex-row gap-4 w-full items-center justify-between"},e.map(o=>React.createElement(Ve.Pressable,{key:String(o.key),className:a("flex-1 rounded-lg py-4",t===o.key?"bg-primary":"bg-muted"),onPress:()=>r(o.key),disabled:o.disabled},React.createElement(Ve.Text,{className:a("text-center font-munchi",t===o.key?"text-primary-foreground":"text-muted-foreground")},o.label))));ar.displayName="MToggle";var X=require("react-native");var sr=({message:e,onConfirm:t,onCancel:r,confirmText:o="Confirm",cancelText:s="Cancel",isLoading:n=!1})=>{let{onPrimary:l}=L();return React.createElement(X.View,{className:"p-4"},React.createElement(X.Text,{className:"font-munchi text-center mb-10 mt-4 text-foreground"},e),React.createElement(X.View,{className:"flex-row justify-between"},React.createElement(X.Pressable,{className:a("flex-1 mr-2 border border-border rounded-md py-3 bg-card",n&&"opacity-50"),onPress:r,disabled:n},React.createElement(X.Text,{className:"font-munchi text-center text-card-foreground"},s)),React.createElement(X.Pressable,{className:a("flex-1 ml-2 bg-primary rounded-md py-3",n&&"opacity-50"),onPress:t,disabled:n},n?React.createElement(X.ActivityIndicator,{color:l}):React.createElement(X.Text,{className:"font-munchi text-center text-primary-foreground"},o))))};sr.displayName="MConfirmation";var ir=require("lucide-react-native"),xe=require("react-native");var nr=({label:e,onPress:t,testID:r,icon:o,disabled:s,iconTint:n,labelClassName:l})=>React.createElement(xe.Pressable,{testID:r,onPress:t,className:"w-20 h-20 md:w-24 md:h-24 rounded-full items-center justify-center active:bg-accent",disabled:s},e?React.createElement(k,{className:a("text-3xl md:text-4xl font-light",l)},e):o??React.createElement(ir.Delete,{size:26,color:n})),lr=({onDigit:e,onBackspace:t,isLoading:r})=>{let{foreground:o}=L();return React.createElement(xe.View,{className:"w-full items-center gap-0"},[["1","2","3"],["4","5","6"],["7","8","9"]].map((n,l)=>React.createElement(xe.View,{key:l,className:"flex-row justify-center gap-24"},n.map(i=>React.createElement(nr,{key:i,label:i,onPress:()=>e(i),disabled:r,iconTint:o,labelClassName:"text-foreground"})))),React.createElement(xe.View,{className:"flex-row justify-center gap-24"},React.createElement(xe.View,{className:"w-20 h-20 md:w-24 md:h-24"}),React.createElement(nr,{label:"0",onPress:()=>e("0"),disabled:r,iconTint:o,labelClassName:"text-foreground"}),React.createElement(nr,{onPress:t,testID:"backspace",disabled:r,iconTint:o,labelClassName:"text-foreground",icon:React.createElement(ir.Delete,{size:26,color:o})})))};lr.displayName="MPinPadKeys";var oo=require("class-variance-authority"),ao=require("lucide-react-native"),re=require("react"),K=require("react-native");var dr=(i=>(i.Discount="discount",i.Table="table",i.Price="price",i.Cash="cash",i.Quantity="quantity",i.Phone="phone",i.GiftCard="giftcard",i))(dr||{}),mr=()=>new Intl.NumberFormat(void 0,{minimumFractionDigits:1,maximumFractionDigits:1}).format(1.1).match(/[^0-9]/)?.[0]||".";function cr(e,t){if(!e)return"";if(t==="."){let[o="",...s]=e.split(".");return s.length===0?o:`${o}.${s.join("")}`}if(e.includes("."))return e;let r=e.split(t);return r.length<=1?e.replace(/\./g,""):`${(r[0]??"").replace(/\./g,"")}.${r.slice(1).join("")}`}function et(e,t){let r=e.replace(/\D/g,"");if(r===""||r==="0")return`0${t}00`;let o=r.padStart(3,"0"),s=o.slice(0,-2).replace(/^0+/,"")||"0",n=o.slice(-2);return`${s}${t}${n}`}function eo(e,t){if(!e)return"";let r=t==="."?e:e.replace(t,"."),o=Number.parseFloat(r);return Number.isNaN(o)||o<=0?"":Math.round(o*100).toString()}var $o=90,jo=118,Go=78,Wo=106,Ko=72,Zo=90,qo=62,Uo=80,Xo=24,Yo=36,Qo=22,Jo=32,ea=6,ta=5,Ee=3,tt="00",to=/^(\d+)\.00$/;function ra(e){switch(e){case"X":return"munchi.numpad.key.backspace";case tt:return"munchi.numpad.key.double-zero";case"-":return"munchi.numpad.key.minus";case"+":return"munchi.numpad.key.plus";default:return`munchi.numpad.key.digit-${e}`}}var oa=(0,oo.cva)("items-center justify-center rounded-2xl",{variants:{pressed:{true:"",false:"bg-muted"},scheme:{dark:"",light:""}},compoundVariants:[{pressed:!0,scheme:"dark",className:"bg-white/15 border-white/20"},{pressed:!0,scheme:"light",className:"bg-foreground/10 border-foreground/15"}],defaultVariants:{pressed:!1,scheme:"light"}}),ro=4,pr=({customAmount:e,setCustomAmount:t,mode:r,maxDigits:o=6,availableHeight:s})=>{let n=mr(),l=r==="price"||r==="cash"||r==="discount",i=l,d=r==="phone",c=(0,re.useRef)(e);c.current=e;let x=(0,re.useRef)(0),{foreground:g}=L(),{colorScheme:p}=j(),{width:u}=(0,K.useWindowDimensions)(),y=u>=768,P=K.Platform.OS==="android",M=P?y?Wo:Go:y?jo:$o,R=P?y?Uo:qo:y?Zo:Ko,f=P?ta:ea,V=P?y?Jo:Qo:y?Yo:Xo,C=p==="dark"?"dark":"light",v=(0,re.useCallback)(m=>{if(l){let A=m===tt;if(!A&&!/^\d$/.test(m))return;let B=eo(c.current??"",n);if(A){let we=`${B}00`.replace(/^0+/,"")||"";if(we===""){x.current=0;return}if(we.length>o+2)return;x.current=2;let ze=et(we,n);c.current=ze,t(ze);return}if(x.current>0){let we=B.padStart(3,"0"),ze=we.slice(0,-2),mo=(we.slice(-2)[1]??"0")+m,Pr=(ze+mo).replace(/^0+/,"")||"";if(Pr.length>o+2)return;x.current-=1;let wr=et(Pr,n);c.current=wr,t(wr);return}let Pe=(B+m).replace(/^0+/,"")||"";if(Pe.length>o+2)return;if(Pe===""){c.current=null,t(null);return}let ke=et(Pe,n);c.current=ke,t(ke);return}let w=c.current??"",N=cr(w,n),[D="",T=""]=N.split("."),q=N.includes("."),he=m===n;if(m===tt&&i){if(!q){let B=D===""?"0.00":`${D}.00`;c.current=B,t(B);return}let A=to.exec(N);if(A){let B=A[1]??"";c.current=B,t(B);return}return}if(he){if(q)return;t(w+n);return}let yr=i?to.exec(N):null;if(yr&&/^\d$/.test(m)){let A=yr[1]??"";if(m==="0"){let Pe=`${A}0`;if(Pe.length>o)return;let ke=`${Pe}.00`;c.current=ke,t(ke);return}let B=`${A}.${m}0`;c.current=B,t(B);return}if(i&&q){if(T.length===2&&T[0]!=="0"&&T[1]!=="0"&&/^\d$/.test(m)){let A=`${D}${m}`;if(A.length>o)return;let B=`${A}.${T}`;c.current=B,t(B);return}if(T.length===2&&T[1]==="0"){let A=`${D}.${T[0]}${m}`;c.current=A,t(A);return}if(T.length===1&&/^\d$/.test(T)){let A=`${D}.${T}${m}`;c.current=A,t(A);return}if(T.length>=2)return}if(i){if(!q&&D.length>=o)return}else if(D.length>=o)return;let co=w+m,hr=cr(co,n);c.current=hr,t(hr)},[n,l,i,o,t]),S=(0,re.useCallback)(()=>{let m=c.current;if(l){if(x.current=0,m==null||m===""){c.current=null,t(null);return}let q=eo(m,n).slice(0,-1).replace(/^0+/,"")||"";if(q===""){c.current=null,t(null);return}let he=et(q,n);c.current=he,t(he);return}if(m==null||m===""){c.current=null,t(null);return}let w=cr(m,n);if(!w.includes(".")){let T=w.slice(0,-1);if(T===""){c.current=null,t(null);return}c.current=T,t(T);return}let[N="",D=""]=w.split(".");if(D.length>0){let T=D.slice(0,-1);if(T===""){c.current=N===""?null:N,t(N===""?null:N);return}let q=`${N}.${T}`;c.current=q,t(q);return}c.current=N===""?null:N,t(N===""?null:N)},[n,l,t]),E=(0,re.useMemo)(()=>["1","2","3","4","5","6","7","8","9",r==="giftcard"?"-":i?tt:d?"+":"","0","X"],[r,i,d]),[I,oe]=(0,re.useState)(0),Y=I>0?Math.floor((I-f*(Ee-1))/Ee):M,Q=s!=null&&s>0?Math.floor((s-f*(ro-1))/ro):Math.round(Y*(R/M)),O=Math.round(Math.min(Y,Q)*(V/M));return React.createElement(K.View,{style:{width:"100%",gap:f},onLayout:m=>oe(m.nativeEvent.layout.width)},[0,1,2,3].map(m=>React.createElement(K.View,{key:m,style:{flexDirection:"row",gap:f}},E.slice(m*Ee,m*Ee+Ee).map((w,N)=>{let D=`${m}-${N}`;return w===""?React.createElement(K.View,{key:D,style:{width:Y,height:Q}}):React.createElement(aa,{key:D,testID:ra(w),item:w,width:Y,height:Q,fontSize:O,foreground:g,scheme:C,onPress:w==="X"?S:()=>v(w)})}))))},aa=({testID:e,item:t,width:r,height:o,fontSize:s,foreground:n,scheme:l,onPress:i})=>React.createElement(K.Pressable,{testID:e,onPress:i,style:{width:r,height:o}},({pressed:d})=>React.createElement(K.View,{style:{width:r,height:o},className:a(oa({pressed:d,scheme:l}))},t==="X"?React.createElement(ao.Delete,{size:s,color:n}):React.createElement(K.Text,{style:{fontSize:s,lineHeight:s*1.4},className:"text-foreground font-munchi"},t)));pr.displayName="MNumpad";var ge=require("react"),Le=require("react-native"),z=b(require("react-native-reanimated"));var be={damping:20,stiffness:200,mass:.8},ur=({tabs:e,activeTab:t,onTabChange:r,className:o,style:s,disabled:n=!1,size:l="default",variant:i="default",stretch:d=!1,...c})=>{let{colorScheme:x}=j(),g=U[x==="dark"?"dark":"light"],p=l==="compact",u=i==="ghost",y=u?0:p?2:4,P=u?20:p?8:12,M=p?8:12,R=u?7:p?2:4,f=u?22:p?8:12,V=p?2:4,C=(0,ge.useRef)({}),v=(0,z.useSharedValue)(0),S=(0,z.useSharedValue)(0),E=(0,ge.useRef)(!1),[,I]=(0,ge.useState)(0);(0,ge.useEffect)(()=>{if(t==null){E.current=!1,S.value=(0,z.withSpring)(0,be);return}let O=String(t),m=C.current[O];if(m){v.value=(0,z.withSpring)(m.x,be),S.value=(0,z.withSpring)(m.width,be),E.current=!0,I(w=>w+1);return}E.current=!1},[t,S,v]);let oe=(0,z.useAnimatedStyle)(()=>({transform:[{translateX:v.value}],width:S.value})),Y=(O,m)=>{C.current[O]=m;let w=String(t);if(O===w){if(!E.current){v.value=m.x,S.value=m.width,E.current=!0,I(N=>N+1);return}v.value=(0,z.withSpring)(m.x,be),S.value=(0,z.withSpring)(m.width,be)}},Q=O=>{let m=String(O),w=C.current[m];w&&(v.value=(0,z.withSpring)(w.x,be),S.value=(0,z.withSpring)(w.width,be)),r(O)};return React.createElement(Le.View,{className:a("flex-row",!u&&"bg-accent",p?"gap-0.5 rounded-xl p-0.5":"gap-1 rounded-2xl p-1",d?"self-stretch":"self-start",o),style:s,...c},React.createElement(z.default.View,{pointerEvents:"none",style:[{position:"absolute",top:y,bottom:y,borderRadius:P,backgroundColor:g.card,shadowColor:g.text,shadowOpacity:u?0:x==="dark"?.08:.14,shadowRadius:p?4:6,shadowOffset:{width:0,height:p?1:2},elevation:p?2:3},oe]}),e.map(({key:O,label:m,icon:w,disabled:N=!1})=>{let D=n||N;return React.createElement(Le.Pressable,{key:String(O),onPress:()=>Q(O),disabled:D,onLayout:T=>Y(String(O),T.nativeEvent.layout),style:{...d?{flex:1,minWidth:0}:{flexShrink:1,minWidth:0},alignItems:"center",justifyContent:"center",paddingHorizontal:M,paddingVertical:R,borderRadius:f,opacity:D?.5:1}},React.createElement(Le.View,{style:{flexDirection:"row",alignItems:"center",gap:V,flexShrink:1,overflow:"hidden"}},w,m&&React.createElement(k,{size:u?"lg":"xl",numberOfLines:1,style:{flexShrink:1}},m)))}))};ur.displayName="MTabs";var Fe=b(require("dayjs")),ye=require("react"),rt=require("react-native");var sa=(e,t)=>{let r=e.diff(t,"minute");if(r<1)return"0m";let o=Math.floor(r/1440),s=r%1440,n=Math.floor(s/60),l=s%60,i="";return o>0&&(i+=`${o}d `),(n>0||o>0)&&(i+=`${n}h `),i+=`${l}m`,i.trim()},fr=({date:e,className:t="",textClassName:r=""})=>{let o=(0,ye.useMemo)(()=>(0,Fe.default)(e),[e]),[s,n]=(0,ye.useState)(()=>(0,Fe.default)());(0,ye.useEffect)(()=>{let d=(()=>{let c=(0,Fe.default)(),g=c.add(1,"minute").startOf("minute").diff(c);return setTimeout(()=>{n((0,Fe.default)())},g>0?g:6e4)})();return()=>clearTimeout(d)},[s]);let l=(0,ye.useMemo)(()=>sa(s,o),[s,o]);return React.createElement(rt.View,{className:a("rounded-md flex items-center justify-center bg-muted border border-border/60","dark:border-white/20 dark:bg-white/12",t)},React.createElement(rt.Text,{className:a("font-munchi-semibold text-foreground dark:text-neutral-200",r)},l))};fr.displayName="MTimerUp";var $=b(require("react")),de=require("react-native");var ot=$.forwardRef(({className:e,...t},r)=>$.createElement(de.View,{ref:r,className:a("rounded-lg border border-border bg-card shadow-sm shadow-foreground/10",e),...t}));ot.displayName="Card";var at=$.forwardRef(({className:e,...t},r)=>$.createElement(de.View,{ref:r,className:a("flex flex-col space-y-1.5 p-6",e),...t}));at.displayName="CardHeader";var st=$.forwardRef(({className:e,...t},r)=>$.createElement(de.Text,{role:"heading","aria-level":3,ref:r,className:a("text-2xl text-card-foreground font-semibold leading-none tracking-tight",e),...t}));st.displayName="CardTitle";var nt=$.forwardRef(({className:e,...t},r)=>$.createElement(de.Text,{ref:r,className:a("text-sm text-muted-foreground",e),...t}));nt.displayName="CardDescription";var it=$.forwardRef(({className:e,...t},r)=>$.createElement(Ie.Provider,{value:"text-card-foreground"},$.createElement(de.View,{ref:r,className:a("p-6 pt-0",e),...t})));it.displayName="CardContent";var lt=$.forwardRef(({className:e,...t},r)=>$.createElement(de.View,{ref:r,className:a("flex flex-row items-center p-6 pt-0",e),...t}));lt.displayName="CardFooter";var ct=b(require("react")),Z=b(require("react-native-reanimated"));var so=1e3;function xr({className:e,...t}){let r=(0,Z.useSharedValue)(1);ct.useEffect(()=>{r.value=(0,Z.withRepeat)((0,Z.withSequence)((0,Z.withTiming)(.5,{duration:so}),(0,Z.withTiming)(1,{duration:so})),-1)},[]);let o=(0,Z.useAnimatedStyle)(()=>({opacity:r.value}));return ct.createElement(Z.default.View,{style:o,className:a("rounded-md bg-secondary dark:bg-muted",e),...t})}var no=require("react-native"),br=e=>React.createElement(no.Switch,{...e});br.displayName="MSwitch";var W=b(require("@rn-primitives/table")),_=b(require("react"));var dt=_.forwardRef(({className:e,...t},r)=>_.createElement(W.Root,{ref:r,className:a("w-full caption-bottom text-sm",e),...t}));dt.displayName="Table";var mt=_.forwardRef(({className:e,...t},r)=>_.createElement(W.Header,{ref:r,className:a("border-border [&_tr]:border-b",e),...t}));mt.displayName="TableHeader";var pt=_.forwardRef(({className:e,style:t,...r},o)=>_.createElement(W.Body,{ref:o,className:a("flex-1 border-border [&_tr:last-child]:border-0",e),style:[{minHeight:2},t],...r}));pt.displayName="TableBody";var ut=_.forwardRef(({className:e,...t},r)=>_.createElement(W.Footer,{ref:r,className:a("bg-muted/50 font-medium [&>tr]:last:border-b-0",e),...t}));ut.displayName="TableFooter";var ft=_.forwardRef(({className:e,...t},r)=>_.createElement(W.Row,{ref:r,className:a("flex-row border-border border-b web:transition-colors web:hover:bg-muted/50 web:data-[state=selected]:bg-muted",e),...t}));ft.displayName="TableRow";var xt=_.forwardRef(({className:e,...t},r)=>_.createElement(Ie.Provider,{value:"text-muted-foreground"},_.createElement(W.Head,{ref:r,className:a("h-12 px-4 text-left justify-center font-medium [&:has([role=checkbox])]:pr-0",e),...t})));xt.displayName="TableHead";var bt=_.forwardRef(({className:e,...t},r)=>_.createElement(W.Cell,{ref:r,className:a("p-4 align-middle [&:has([role=checkbox])]:pr-0",e),...t}));bt.displayName="TableCell";var Se=require("@rn-primitives/portal");var gt=require("class-variance-authority"),io=require("lucide-react-native"),yt=require("react"),ne=require("react-native");var na=(0,gt.cva)("w-full",{variants:{size:{default:"gap-1.5",sm:"gap-1",lg:"gap-2"}},defaultVariants:{size:"default"}}),ia=(0,gt.cva)("flex-row items-center bg-card border border-border",{variants:{size:{default:"px-4 py-3",sm:"px-3 py-2",lg:"px-5 py-4"},radius:{xl:"rounded-xl","2xl":"rounded-2xl"},hasError:{true:"border border-destructive",false:""},focused:{true:"border border-primary",false:""}},compoundVariants:[{hasError:!0,focused:!0,class:"border border-destructive"}],defaultVariants:{size:"default",radius:"xl",hasError:!1,focused:!1}}),la=(0,gt.cva)("flex-1 min-w-0 font-munchi text-foreground p-0",{variants:{size:{default:"text-lg",sm:"text-base",lg:"text-xl"}},defaultVariants:{size:"default"}}),ca={default:18,sm:16,lg:20},gr=({label:e,errorMessage:t,rightIcon:r,size:o="default",radius:s="xl",className:n,inputClassName:l,onFocus:i,onBlur:d,placeholderTextColor:c,...x})=>{let{foreground:g,muted:p,destructive:u}=L(),[y,P]=(0,yt.useState)(!1),M=(0,yt.useRef)(null),R=!!t;return React.createElement(ne.View,{className:a(na({size:o}),n)},e&&React.createElement(k,{size:o==="lg"?"lg":o==="sm"?"sm":"base",className:"font-munchi-semibold text-foreground"},e),React.createElement(ne.Pressable,{onPress:()=>M.current?.focus()},React.createElement(ne.View,{className:ia({size:o,radius:s,hasError:R,focused:y})},React.createElement(ne.TextInput,{ref:M,placeholderTextColor:c??p,onFocus:f=>{P(!0),i?.(f)},onBlur:f=>{P(!1),d?.(f)},style:{color:g,fontSize:ca[o??"default"],paddingVertical:0,includeFontPadding:!1},className:a(la({size:o}),l),...x}),r&&React.createElement(ne.View,{className:"ml-2 shrink-0"},r))),R&&React.createElement(ne.View,{className:"flex-row items-center gap-1.5"},React.createElement(io.AlertCircle,{size:14,color:u}),React.createElement(k,{size:"sm",className:"text-destructive flex-1"},t)))};gr.displayName="MInput";var Be=b(require("@rn-primitives/label")),Oe=b(require("react"));var ht=Oe.forwardRef(({className:e,onPress:t,onLongPress:r,onPressIn:o,onPressOut:s,...n},l)=>Oe.createElement(Be.Root,{className:"web:cursor-default",onPress:t,onLongPress:r,onPressIn:o,onPressOut:s},Oe.createElement(Be.Text,{ref:l,className:a("text-sm text-foreground native:text-base font-medium leading-none web:peer-disabled:cursor-not-allowed web:peer-disabled:opacity-70",e),...n})));ht.displayName=Be.Root.displayName;var pe=b(require("@rn-primitives/radio-group")),me=b(require("react")),lo=require("react-native");var Pt=me.forwardRef(({className:e,...t},r)=>me.createElement(pe.Root,{className:a("web:grid gap-2",e),...t,ref:r}));Pt.displayName=pe.Root.displayName;var wt=me.forwardRef(({className:e,...t},r)=>me.createElement(pe.Item,{ref:r,className:a("aspect-square h-4 w-4 native:h-5 native:w-5 rounded-full justify-center items-center border border-border web:ring-offset-background web:focus:outline-none web:focus-visible:ring-2 web:focus-visible:ring-ring web:focus-visible:ring-offset-2",t.disabled&&"web:cursor-not-allowed opacity-50",e),...t},me.createElement(pe.Indicator,{className:"flex items-center justify-center"},me.createElement(lo.View,{className:"aspect-square h-[9px] w-[9px] native:h-[10] native:w-[10] bg-primary rounded-full"}))));wt.displayName=pe.Item.displayName;0&&(module.exports={MAlert,MAnimation,MAvatar,MBadge,MButton,MCard,MCardContent,MCardDescription,MCardFooter,MCardHeader,MCardTitle,MChevron,MConfirmation,MCountDown,MDateTimePicker,MDivider,MDrawerRightPanel,MDropdown,MInput,MLabel,MLucideIcon,MModal,MNativeAlert,MNumpad,MPicker,MPinPadKeys,MPortal,MPortalHost,MProgressBar,MRadioGroup,MRadioGroupItem,MRequiredLabel,MResponsiveContainer,MSearch,MSelector,MSkeleton,MSwitch,MTable,MTableBody,MTableCell,MTableFooter,MTableHead,MTableHeader,MTableRow,MTabs,MText,MTimerUp,MToggle,ModalContent,ModalHeight,ModalScrollContext,NAV_THEME,NumpadMode,buttonVariants,cn,darkVars,getDecimalSeparator,lightVars,typography,useColorScheme,useIconColors});
|
package/dist/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{clsx as _r}from"clsx";import{twMerge as Er}from"tailwind-merge";function a(...e){return Er(_r(e))}function Se(e,t=4,r="0"){return e.toString().padStart(t,r)}import{useColorScheme as Lr}from"nativewind";function O(){let{colorScheme:e,setColorScheme:t,toggleColorScheme:r}=Lr();return{colorScheme:e??"light",isDarkColorScheme:e==="dark",setColorScheme:t,toggleColorScheme:r}}var le={"--background":"0 0% 95.7%","--foreground":"0 0% 7.8%","--card":"0 0% 100%","--card-foreground":"0 0% 7.8%","--popover":"0 0% 100%","--popover-foreground":"0 0% 7.8%","--primary":"0 0% 7.8%","--primary-foreground":"0 0% 100%","--secondary":"0 0% 93%","--secondary-foreground":"0 0% 7.8%","--muted":"0 0% 93%","--muted-foreground":"0 0% 45%","--accent":"0 0% 89.4%","--accent-foreground":"0 0% 7.8%","--destructive":"0 84.2% 60.2%","--destructive-foreground":"0 0% 100%","--border":"0 0% 78%","--input":"0 0% 78%","--ring":"0 0% 7.8%"},ce={"--background":"0 0% 7.8%","--foreground":"0 0% 100%","--card":"0 0% 14.5%","--card-foreground":"0 0% 100%","--popover":"0 0% 14.5%","--popover-foreground":"0 0% 100%","--primary":"0 0% 100%","--primary-foreground":"0 0% 7.8%","--secondary":"0 0% 18%","--secondary-foreground":"0 0% 100%","--muted":"0 0% 11%","--muted-foreground":"0 0% 60%","--accent":"0 0% 21.2%","--accent-foreground":"0 0% 100%","--destructive":"0 72% 51%","--destructive-foreground":"0 0% 100%","--border":"0 0% 28%","--input":"0 0% 28%","--ring":"0 0% 60%"};var se=(e,t)=>`hsl(${e[t]})`,pt=e=>({background:se(e,"--background"),border:se(e,"--border"),card:se(e,"--card"),notification:se(e,"--destructive"),primary:se(e,"--primary"),text:se(e,"--foreground")}),z={light:pt(le),dark:pt(ce)};function E(){let{colorScheme:e}=O(),t=e==="dark"?"dark":"light",r=z[t];return{foreground:r.text,muted:t==="dark"?"hsl(240 5% 64.9%)":"hsl(240 3.8% 46.1%)",primary:r.primary,destructive:r.notification,onDestructive:"hsl(0 0% 100%)",onPrimary:t==="dark"?"hsl(240 5.9% 10%)":"hsl(0 0% 98%)"}}var Fr={regular:"DMSans_400Regular",medium:"DMSans_500Medium",bold:"DMSans_700Bold"};import{cva as Or}from"class-variance-authority";import*as $ from"react";import{View as ft}from"react-native";import*as ut from"@rn-primitives/slot";import*as Z from"react";import{Text as Br}from"react-native";var de=Z.createContext(void 0),ye=Z.forwardRef(({className:e,asChild:t=!1,...r},o)=>{let s=Z.useContext(de);return Z.createElement(t?ut.Text:Br,{className:a("text-base text-foreground web:select-text",s,e),ref:o,...r})});ye.displayName="Text";var Hr=Or("relative bg-background w-full rounded-lg border border-border p-4 shadow shadow-foreground/10",{variants:{variant:{default:"",destructive:"border-destructive"}},defaultVariants:{variant:"default"}}),zr={default:"hsl(240 10% 3.9%)",destructive:"hsl(0 84.2% 60.2%)"},ke=$.forwardRef(({className:e,variant:t,children:r,icon:o,iconSize:s=16,iconClassName:n,...c},l)=>{let i=zr[t??"default"];return $.createElement(ft,{ref:l,role:"alert",className:Hr({variant:t,className:e}),...c},$.createElement(ft,{className:"absolute left-3.5 top-4 -translate-y-0.5"},$.createElement(o,{size:s,color:i})),r)});ke.displayName="Alert";var Ie=$.forwardRef(({className:e,...t},r)=>$.createElement(ye,{ref:r,className:a("pl-7 mb-1 font-medium text-base leading-none tracking-tight text-foreground",e),...t}));Ie.displayName="AlertTitle";var De=$.forwardRef(({className:e,...t},r)=>$.createElement(ye,{ref:r,className:a("pl-7 text-sm leading-relaxed text-foreground",e),...t}));De.displayName="AlertDescription";var xt=({title:e,description:t,icon:r,iconSize:o,iconClassName:s,variant:n="default",className:c})=>React.createElement(ke,{icon:r,iconSize:o,iconClassName:s,variant:n,className:a(c)},React.createElement(Ie,null,e),t&&React.createElement(De,null,t));xt.displayName="MAlert";import Wr from"lottie-react-native";import{View as he}from"react-native";import{cva as $r}from"class-variance-authority";import gt from"react";import{Text as jr}from"react-native";var Gr=$r("text-base text-foreground",{variants:{variant:{default:"font-munchi"},size:{xs:"text-xs",sm:"text-sm",base:"text-base",lg:"text-lg",xl:"text-xl","2xl":"text-2xl","3xl":"text-3xl","4xl":"text-4xl"}},defaultVariants:{variant:"default",size:"base"}}),S=gt.forwardRef(({className:e,variant:t,size:r,children:o,...s},n)=>gt.createElement(jr,{ref:n,className:a(Gr({variant:t,size:r}),e),...s,allowFontScaling:!1},o));S.displayName="MText";var bt=({children:e,animationSource:t,lottieViewProps:r,childrenClass:o,text:s,subText:n})=>React.createElement(he,{className:"w-full flex-1 flex-col gap-4"},React.createElement(he,{className:"flex-1 flex items-center justify-center"},React.createElement(Wr,{...r,source:t})),(s||n)&&React.createElement(he,{className:"items-center gap-1 px-4"},s&&React.createElement(S,{className:"text-center text-2xl font-munchi-semibold"},s),n&&React.createElement(S,{className:"text-center text-base text-muted-foreground"},n)),e&&React.createElement(he,{className:a("flex flex-col items-center",o)},e));bt.displayName="MAnimation";import{cva as yt}from"class-variance-authority";import me from"react";import{Platform as Kr,Text as Zr}from"react-native";import*as W from"@rn-primitives/avatar";import*as q from"react";var Ae=q.forwardRef(({className:e,...t},r)=>q.createElement(W.Root,{ref:r,className:a("relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full",e),...t}));Ae.displayName=W.Root.displayName;var _e=q.forwardRef(({className:e,...t},r)=>q.createElement(W.Image,{ref:r,className:a("aspect-square h-full w-full",e),...t}));_e.displayName=W.Image.displayName;var Ee=q.forwardRef(({className:e,...t},r)=>q.createElement(W.Fallback,{ref:r,className:a("flex h-full w-full items-center justify-center rounded-full bg-muted",e),...t}));Ee.displayName=W.Fallback.displayName;var qr=yt("relative flex shrink-0 overflow-hidden rounded-full",{variants:{size:{xs:"h-6 w-6",sm:"h-8 w-8",md:"h-10 w-10",lg:"h-12 w-12",xl:"h-16 w-16",xxl:"h-20 w-20",full:"h-full w-full"}},defaultVariants:{size:"md"}}),Ur=yt("font-munchi text-background",{variants:{size:{xs:"text-sm",sm:"text-sm",md:"text-base",lg:"text-xl",xl:"text-3xl",xxl:"text-4xl",full:"text-2xl"}},defaultVariants:{size:"md"}}),ht=me.forwardRef(({className:e,size:t,source:r,fallbackText:o,imageClassName:s,fallbackClassName:n,fallbackTextClassName:c,...l},i)=>me.createElement(Ae,{ref:i,className:a(qr({size:t}),e),...l},r&&me.createElement(_e,{source:r,className:a("aspect-square h-full w-full",s)}),me.createElement(Ee,{className:a("flex h-full w-full items-center justify-center rounded-full bg-muted",n)},me.createElement(Zr,{className:a(Ur({size:t}),Kr.OS==="ios"&&"text-foreground",c)},o))));ht.displayName="MAvatar";import{cva as Pt}from"class-variance-authority";import{Text as Xr,View as Yr}from"react-native";var Qr=Pt("p-1 px-2 rounded-md border-0",{variants:{variant:{default:"bg-secondary",accent:"bg-accent",muted:"bg-muted text-muted-foreground",destructive:"bg-destructive",primary:"bg-primary text-primary-foreground mx-1",gray:"bg-muted text-muted-foreground",custom:""}},defaultVariants:{variant:"gray"}}),Jr=Pt("text-xs font-munchi",{variants:{variant:{default:"text-secondary-foreground",accent:"text-accent-foreground",muted:"text-muted-foreground",destructive:"text-destructive-foreground",primary:"text-primary-foreground",gray:"text-muted-foreground",custom:"text-foreground"}},defaultVariants:{variant:"gray"}}),wt=({variant:e="gray",text:t,show:r=!0,customBackgroundColor:o,className:s,textClassName:n})=>{if(!r)return null;let c=e==="custom";return React.createElement(Yr,{className:a(Qr({variant:e}),s),style:c?{backgroundColor:o}:void 0},React.createElement(Xr,{className:a(Jr({variant:e}),n)},t))};wt.displayName="MBadge";import{cva as eo}from"class-variance-authority";import Le from"react";import{Pressable as Mt}from"react-native";var Nt=eo("flex-row justify-center items-center rounded-full",{variants:{variant:{default:"bg-primary",primary:"bg-primary",white:"bg-card border border-border",destructive:"bg-destructive",outline:"bg-transparent border border-border",secondary:"bg-secondary",ghost:"bg-transparent",link:"bg-transparent",none:"none",custom:""},size:{none:"",default:"h-auto px-4 md:py-2",sm:"h-8 px-3 py-1.5",lg:"h-10 px-6 py-2.5",icon:"h-9 w-9 p-2 justify-center items-center"}},defaultVariants:{variant:"default",size:"default"}}),Tt=Le.forwardRef((e,t)=>{let{onPress:r,variant:o="default",size:s="default",disabled:n=!1,children:c,className:l,...i}=e;return o==="custom"?Le.createElement(Mt,{ref:t,disabled:n,className:a(n&&"opacity-50",l),onPress:r,android_ripple:null,...i},c):Le.createElement(Mt,{ref:t,disabled:n,className:a(Nt({variant:o,size:s}),n&&"opacity-50",l),onPress:r,...i},c)});Tt.displayName="MButton";import{useEffect as to,useRef as ro}from"react";import{Animated as Fe}from"react-native";import oo,{Path as ao}from"react-native-svg";var vt=({isOpen:e,size:t=11,color:r})=>{let{colorScheme:o}=O(),s=r??z[o].text,n=ro(new Fe.Value(e?90:0)).current;to(()=>{Fe.timing(n,{toValue:e?90:0,duration:200,useNativeDriver:!0}).start()},[e,n]);let c=n.interpolate({inputRange:[0,90],outputRange:["0deg","90deg"]});return React.createElement(Fe.View,{style:{transform:[{rotate:c}]}},React.createElement(oo,{width:t,height:t,viewBox:"0 0 11 11",fill:"none"},React.createElement(ao,{fillRule:"evenodd",clipRule:"evenodd",d:"M3.80026 1.96823C3.97925 1.78924 4.26945 1.78924 4.44844 1.96823L7.65677 5.17656C7.83575 5.35554 7.83575 5.64576 7.65677 5.82474L4.44844 9.03307C4.26945 9.21205 3.97925 9.21205 3.80026 9.03307C3.62127 8.85409 3.62127 8.56388 3.80026 8.3849L6.68451 5.50065L3.80026 2.61641C3.62127 2.43742 3.62127 2.14722 3.80026 1.96823Z",fill:s})))};vt.displayName="MChevron";import{Text as Ct}from"react-native";import so,{useDefaultClassNames as no}from"react-native-ui-datepicker";var Rt=({className:e,classNames:t,showOutsideDays:r=!0,containerHeight:o=220,components:s,minDate:n,maxDate:c,...l})=>{let i=no(),u=n||(()=>{let m=new Date;return m.setFullYear(m.getFullYear()-1),m})(),h=c||(()=>{let m=new Date;return m.setDate(m.getDate()),m})(),b={IconPrev:React.createElement(Ct,{className:"font-munchi text-lg text-foreground"},"<"),IconNext:React.createElement(Ct,{className:"font-munchi text-lg text-foreground"},">")};return React.createElement(so,{showOutsideDays:r,className:a("bg-card w-full rounded-xl",e),containerHeight:o,minDate:u,maxDate:h,classNames:{...i,day_cell:"p-0.5",day:a(i.day,"font-munchi rounded-xl text-foreground w-10 h-10"),day_label:"font-munchi text-base text-foreground",outside_label:"font-munchi text-base text-foreground opacity-40",today_label:"text-destructive font-munchi-bold text-base",month_selector_label:a(i.month_selector_label,"text-base font-munchi-semibold text-foreground"),year_selector_label:a(i.year_selector_label,"text-base font-munchi-semibold text-foreground"),time_selector_label:a(i.time_selector_label,"text-base font-munchi text-foreground"),header:"font-munchi-semibold text-lg text-foreground pb-2",weekday_label:"font-munchi-semibold text-sm text-muted-foreground",selected:a(i.selected,"font-munchi bg-primary rounded-xl"),selected_label:"font-munchi-semibold text-primary-foreground text-base",range_end:a(i.range_end,"font-munchi bg-primary rounded-r-xl"),range_start:a(i.range_start,"font-munchi bg-primary rounded-l-xl"),range_end_label:a(i.range_end_label,"font-munchi-semibold text-primary-foreground text-base"),range_start_label:a(i.range_start_label,"font-munchi-semibold text-primary-foreground text-base"),range_fill:"bg-primary/20 my-1",range_fill_weekstart:"rounded-s-lg",range_fill_weekend:"rounded-e-lg",range_middle_label:"font-munchi text-base text-foreground",month:a(i.month,"font-munchi rounded-xl text-foreground"),month_label:"font-munchi text-base text-foreground",year:a(i.year,"font-munchi rounded-xl text-foreground"),year_label:"font-munchi text-base text-foreground",time_label:"font-munchi text-2xl text-foreground",...t},components:{...b,...s},...l})};Rt.displayName="MDateTimePicker";import{cva as io}from"class-variance-authority";import{View as lo}from"react-native";var co=io("",{variants:{direction:{horizontal:"my-2",vertical:"mx-2"},variant:{sm:"",md:"",lg:""}},defaultVariants:{direction:"horizontal",variant:"md"}}),mo={sm:1,md:2,lg:4},Vt=({className:e,direction:t="horizontal",variant:r="md",color:o,style:s})=>{let n=t==="horizontal",c=mo[r??"md"],l=o?{backgroundColor:o,[n?"height":"width"]:c,[n?"width":"height"]:"100%"}:{[n?"height":"width"]:c,[n?"width":"height"]:"100%"};return React.createElement(lo,{className:a(!o&&"bg-border",co({direction:t,variant:r}),e),style:[l,s]})};Vt.displayName="MDivider";import po from"react";import*as uo from"lucide-react-native";var St=({name:e,...t})=>{let r=uo[e];return r?po.createElement(r,{...t}):null};St.displayName="MLucideIcon";import{useRef as fo,useState as kt}from"react";import{FlatList as xo,Modal as go,Pressable as Be,Text as It,View as Dt}from"react-native";var At=({data:e,onSelect:t,placeholder:r,selectedValue:o,className:s,textClassName:n,dropdownContainerClassName:c,itemContainerClassName:l,itemTextClassName:i})=>{let[u,h]=kt(!1),b=fo(null),[m,p]=kt({x:0,y:0,width:0,height:0}),y=e.find(x=>x.value===o),P=x=>{t(x),h(!1)},M=({item:x})=>{let R=x.value===o;return React.createElement(Be,{className:a("p-3 rounded-md m-1",R?"bg-primary":"active:bg-muted",l),onPress:()=>P(x)},React.createElement(It,{className:a(R?"text-primary-foreground":"text-foreground",i),numberOfLines:1},x.label))},T=()=>{u?h(!1):b.current?.measureInWindow((x,R,v,N)=>{p({x,y:R,width:v,height:N}),h(!0)})};return React.createElement(Dt,{className:"flex-col items-center justify-center"},React.createElement(Be,{ref:b,className:a("bg-primary rounded-full py-4 px-6 flex-row items-center",s),onPress:T},React.createElement(It,{className:a("text-primary-foreground text-base",n),numberOfLines:1,ellipsizeMode:"tail"},y?y.label:r)),React.createElement(go,{animationType:"none",transparent:!0,visible:u,onRequestClose:()=>{h(!1)}},React.createElement(Be,{className:"absolute inset-0",onPress:()=>h(!1)}),React.createElement(Dt,{style:{position:"absolute",top:m.y+m.height,left:m.x},className:a("min-w-[100px] bg-background shadow-lg rounded-lg border border-border p-1 z-50 mt-2",c)},React.createElement(xo,{data:e,renderItem:M,keyExtractor:x=>String(x.value),className:"max-h-[200px]"}))))};At.displayName="MPicker";import{cva as Et}from"class-variance-authority";import{View as _t}from"react-native";var bo=Et("w-full h-2 rounded-full relative",{variants:{size:{sm:"h-1",md:"h-2",lg:"h-3"},variant:{default:"bg-muted",accent:"bg-accent/30",destructive:"bg-destructive/30",secondary:"bg-secondary",gray:"bg-gray",pink:"bg-pink",blue:"bg-blue-200",green:"bg-green-200"}},defaultVariants:{size:"md",variant:"default"}}),yo=Et("h-full rounded-full absolute top-0 left-0",{variants:{variant:{default:"bg-foreground",accent:"bg-accent",destructive:"bg-destructive",secondary:"bg-secondary-foreground",gray:"bg-gray-600",pink:"bg-pink",blue:"bg-blue-600",green:"bg-green-600"}},defaultVariants:{variant:"default"}}),Lt=({progress:e,size:t="md",variant:r="default",className:o,fillClassName:s})=>{let n=Math.min(Math.max(e,0),100);return React.createElement(_t,{className:a(bo({size:t,variant:r}),o)},React.createElement(_t,{style:{width:`${n}%`},className:a(yo({variant:r}),s)}))};Lt.displayName="MProgressBar";import{View as ho}from"react-native";var Ft=({children:e,className:t,style:r,padding:o,margin:s,...n})=>React.createElement(ho,{className:a((()=>{let l=[];if(o)for(let[i,u]of Object.entries(o))u!==void 0&&l.push(`${i}:p-${u}`);if(s)for(let[i,u]of Object.entries(s))u!==void 0&&l.push(`${i}:m-${u}`);return l.join(" ")})(),t),style:r,...n},e);Ft.displayName="MResponsiveContainer";import{View as Po}from"react-native";var wo=({label:e,className:t,...r})=>React.createElement(Po,{className:a("flex-row items-center gap-1 mb-3",t),...r},React.createElement(S,{className:"font-munchi-bold text-xl"},e),React.createElement(S,{className:"font-munchi-bold text-xl text-destructive"},"*"));import{cva as Mo}from"class-variance-authority";import{ArrowLeft as No,X as Oe}from"lucide-react-native";import{Fragment as To,createContext as Ot,useContext as Bt,useRef as vo}from"react";import{KeyboardAvoidingView as Co,Modal as Ro,Platform as Vo,Pressable as Q,ScrollView as So,View as K}from"react-native";var Ht=(l=>(l.ExtraSmall="xs",l.Small="sm",l.Medium="md",l.Large="lg",l.ExtraLarge="xl",l.ExtraExtraLarge="xxl",l.Auto="auto",l))(Ht||{}),zt=Ot({isFixed:!1}),He=Ot(null),ko=Mo("rounded-2xl p-6 shadow-lg flex flex-col",{variants:{variant:{xs:"w-[40%]",sm:"w-[60%]",md:"w-[80%]",lg:"w-[95%]",auto:"w-auto self-center",fullscreen:"w-full h-full rounded-none"},height:{xs:"h-[30%]",sm:"h-[40%]",md:"h-[60%]",lg:"h-[80%]",xl:"h-[90%]",xxl:"h-[96%]",auto:"h-auto"},background:{white:"bg-card",dark:"bg-secondary",primary:"bg-muted",transparent:"bg-transparent"}},defaultVariants:{variant:"md",height:"auto",background:"white"}}),$t=({children:e,scrollable:t=!0})=>{let{isFixed:r}=Bt(zt),o=Bt(He);return t?React.createElement(K,{className:a(r&&"flex-1")},React.createElement(So,{ref:o,showsVerticalScrollIndicator:!1,contentContainerStyle:{flexGrow:1},keyboardShouldPersistTaps:"handled",style:r?{flex:1}:void 0},React.createElement(Q,{style:{flex:1}},e))):React.createElement(K,{className:a(r&&"flex-1"),style:r?{flex:1}:void 0},React.createElement(Q,{style:{flex:1}},e))};$t.displayName="ModalBody";var jt=({children:e})=>React.createElement(K,{className:"mt-auto flex-shrink-0"},e),Io=({body:e,footer:t})=>React.createElement(To,null,React.createElement(Pe.Body,null,e),t&&React.createElement(Pe.Footer,null,t)),Do=e=>{let{isVisible:t,onClose:r,children:o,onBack:s,onDismiss:n,header:c,headingText:l,closable:i=!0,variant:u="sm",containerClassName:h,height:b,background:m="white",footer:p,onButtonClose:y,showCloseButton:P=!0,showBackButton:M=!0,keyboardAvoidingEnabled:T=!0}=e,R={isFixed:(b&&b!=="auto")??!1},v=vo(null),{foreground:N}=E(),V=()=>s&&M?React.createElement(K,{className:"flex-row items-center justify-between"},React.createElement(Q,{onPress:s,className:"bg-muted rounded-full p-2"},React.createElement(No,{color:N,size:24})),l&&React.createElement(S,{className:"font-munchi-bold text-foreground flex-1 text-left mx-3",size:"2xl",numberOfLines:1},l),P&&React.createElement(Q,{onPress:r,className:"bg-muted rounded-full p-3"},React.createElement(Oe,{color:N,size:24}))):c||(l?React.createElement(K,{className:"flex-row items-center justify-between"},React.createElement(S,{className:"font-munchi-bold text-foreground w-11/12",size:"2xl",numberOfLines:1},l),P&&React.createElement(Q,{onPress:y??r,className:"bg-muted rounded-full p-3"},React.createElement(Oe,{color:N,size:24}))):P?React.createElement(K,{className:"flex-row items-center justify-between"},React.createElement(K,{className:"flex-1"}),React.createElement(Q,{onPress:r,className:"bg-muted rounded-full p-3"},React.createElement(Oe,{color:N,size:24}))):null),k=I=>{I.target===I.currentTarget&&i&&r()};return React.createElement(Ro,{transparent:!0,visible:t,onRequestClose:i?r:void 0,animationType:"fade",onDismiss:n},React.createElement(Co,{className:"flex-1",enabled:T,behavior:Vo.select({ios:"padding",default:"height"})},React.createElement(Q,{className:"flex-1 items-center justify-center bg-black/50 p-4",onPress:k},React.createElement(K,{className:a("max-h-[95%]",ko({variant:u,height:b,background:m}),h)},React.createElement(zt.Provider,{value:R},React.createElement(He.Provider,{value:v},V()!==null&&React.createElement(K,{className:"pb-4 flex-shrink-0"},V()),o,p&&React.createElement(jt,null,p)))))))},Pe=Object.assign(Do,{Body:$t,Footer:jt});Pe.displayName="MModal";import{useEffect as Ao,useRef as Gt,useState as _o}from"react";import{Modal as Eo,Platform as Lo,ScrollView as Fo,TouchableWithoutFeedback as Bo,View as pe,useWindowDimensions as Oo}from"react-native";import Wt,{useAnimatedStyle as Kt,useSharedValue as Zt,withSpring as qt,withTiming as Ut}from"react-native-reanimated";import{useSafeAreaInsets as Ho}from"react-native-safe-area-context";var zo={mass:.4,stiffness:110,damping:16,overshootClamping:!1},$o={mass:.4,stiffness:140,damping:22,overshootClamping:!0},Xt=340,Yt=({isVisible:e,onClose:t,header:r,footer:o,children:s,closable:n=!0,widthFraction:c=.45,className:l,scrollable:i=!0})=>{let{colorScheme:u}=O(),h=z[u],{width:b}=Oo(),m=Ho(),p=b*c,[y,P]=_o(!1),M=Gt(null),T=Gt(!1),x=Zt(p),R=Zt(0),v=H=>{T.current||(T.current=!0,x.value=qt(p,$o),R.value=Ut(0,{duration:Xt}),M.current=setTimeout(()=>{P(!1),T.current=!1,H?.()},Xt))};Ao(()=>(e?(M.current&&(clearTimeout(M.current),M.current=null,T.current=!1),P(!0),x.value=qt(0,zo),R.value=Ut(1,{duration:300})):v(),()=>{M.current&&clearTimeout(M.current)}),[e]);let N=()=>{n&&v(t)},V=()=>{v(t)},k=Kt(()=>({transform:[{translateX:x.value}]})),I=Kt(()=>({opacity:R.value}));return React.createElement(Eo,{transparent:!0,visible:y,animationType:"none",onRequestClose:n?V:void 0},React.createElement(pe,{className:"flex-1 flex-row justify-end",style:{paddingTop:m.top,paddingBottom:m.bottom}},React.createElement(Bo,{onPress:N},React.createElement(Wt.View,{className:"absolute inset-0 bg-black/60",style:I})),React.createElement(Wt.View,{style:[k,{width:p}],className:a("h-full overflow-hidden border rounded-2xl border-border",l)},React.createElement(pe,{className:"flex-1",style:{backgroundColor:h.background}},r&&React.createElement(pe,{className:"px-6 pt-6 flex-shrink-0"},r),i?React.createElement(Fo,{className:"flex-1 px-6",showsVerticalScrollIndicator:!1,contentContainerStyle:{paddingTop:16,paddingBottom:24},keyboardShouldPersistTaps:"handled",automaticallyAdjustKeyboardInsets:Lo.OS==="ios",keyboardDismissMode:"interactive"},s):React.createElement(pe,{className:"flex-1 overflow-hidden"},s),o&&React.createElement(pe,{className:"px-6 pb-6 pt-4 border-t-2 border-border flex-shrink-0"},o)))))};Yt.displayName="MDrawerRightPanel";import{Alert as jo}from"react-native";var Qt=({title:e,description:t,onPress:r,onPressText:o,onCancel:s,onCancelText:n})=>{jo.alert(e,t,[{text:o,onPress:r},{text:n,style:"cancel",onPress:s}])};Qt.displayName="MNativeAlert";import{useMemo as Go}from"react";import Wo from"react-countdown";import{Text as Ko,View as Zo}from"react-native";var Jt=({warningThreshold:e=3,className:t="",textClassName:r="",showPrefix:o=!0,countUp:s=!1,renderer:n,onComplete:c,date:l,...i})=>{let u=Go(()=>({minutes:b,seconds:m,completed:p})=>{let y,P,M="";if(p)if(s){let k=new Date(l),H=new Date().getTime()-k.getTime();y=Math.floor(H/6e4),P=Math.floor(H%6e4/1e3),o&&(M="-")}else y=0,P=0;else y=b,P=m;let T=!p||s?Se(Math.abs(y),2):"00",x=!p||s?Se(Math.abs(P),2):"00",R=!p&&b<e,v=p,N=R||v?"bg-destructive/15":"bg-green-500/15",V=R||v?"text-destructive":"text-green-600";return React.createElement(Zo,{className:a("rounded-md flex items-center justify-center",N,t)},React.createElement(Ko,{className:a("font-munchi-semibold text-center",V,r)},M,T,":",x))},[e,s,l,o,t,r]);return React.createElement(Wo,{renderer:n??u,onComplete:c,overtime:s,date:l,...i})};Jt.displayName="MCountDown";import{ArrowDown as qo}from"lucide-react-native";import{useMemo as Uo}from"react";import{StyleSheet as ue}from"react-native";import{Dropdown as Xo}from"react-native-element-dropdown";function Yo(e){return{trigger:{width:"100%",paddingHorizontal:16,paddingVertical:12,borderRadius:16,borderWidth:1,borderColor:e.borderColor,backgroundColor:e.cardColor},containerStyle:{marginTop:6,borderRadius:16,borderWidth:1,borderColor:e.borderColor,backgroundColor:e.cardColor,shadowColor:e.textColor,shadowOpacity:.06,shadowRadius:8,shadowOffset:{width:0,height:2},elevation:3,overflow:"hidden"},itemContainerStyle:{backgroundColor:e.cardColor,padding:0},activeColor:e.mutedColor}}function Qo(e){return{trigger:{width:"100%",paddingHorizontal:12,paddingVertical:8,borderRadius:12,borderWidth:1,borderColor:e.borderColor,backgroundColor:e.cardColor},containerStyle:{marginTop:4,borderRadius:12,borderWidth:1,borderColor:e.borderColor,backgroundColor:e.cardColor,shadowColor:e.textColor,shadowOpacity:.06,shadowRadius:6,shadowOffset:{width:0,height:1},elevation:2,overflow:"hidden"},itemContainerStyle:{backgroundColor:e.cardColor,padding:0},activeColor:e.mutedColor}}function Jo(e){return{trigger:{paddingHorizontal:16,paddingVertical:8,borderRadius:999,borderWidth:0,backgroundColor:e.bgColor,minWidth:160},containerStyle:{marginTop:4,borderRadius:16,borderWidth:1,borderColor:e.borderColor,backgroundColor:e.cardColor,shadowColor:e.textColor,shadowOpacity:.06,shadowRadius:6,shadowOffset:{width:0,height:1},elevation:2,overflow:"hidden"},itemContainerStyle:{backgroundColor:e.cardColor,padding:0},activeColor:e.mutedColor}}var er=({data:e=[],placeholder:t="",value:r,onFocus:o,onBlur:s,onChange:n,customStyles:c,fieldFrame:l="none",style:i,containerStyle:u,itemContainerStyle:h,selectedTextStyle:b,placeholderStyle:m,activeColor:p,maxHeight:y=300,renderRightIcon:P,selectedTextProps:M,mode:T="auto",...x})=>{let{colorScheme:R}=O(),{foreground:v,muted:N}=E(),V=e.length===0,k=R==="dark",I=z[k?"dark":"light"],j=`hsl(${(k?ce:le)["--muted"]})`,G=Uo(()=>{let re={cardColor:I.card,borderColor:I.border,textColor:I.text,mutedColor:j};return l==="mInputSm2xl"?Yo(re):l==="mInputCompact"?Qo(re):l==="pill"?Jo({...re,bgColor:j}):null},[l,I.card,I.border,I.text,j]),d=ue.flatten([G?.trigger,c,i]),f=ue.flatten([G?.containerStyle,u]),g=ue.flatten([G?.itemContainerStyle,h]),C=l==="mInputSm2xl"?18:l==="mInputCompact"?15:14,w=ue.flatten([{fontSize:C,color:v},b]),F=ue.flatten([{fontSize:C,color:V?N:v},m]),te=G?G.activeColor:p??j,lt=l==="mInputCompact"?16:20;return React.createElement(Xo,{...x,mode:T,data:e,maxHeight:y,placeholder:t,value:r,onFocus:o,onBlur:s,onChange:n,style:d,containerStyle:f,itemContainerStyle:g,activeColor:te,fontFamily:"DMSans_400Regular",selectedTextStyle:w,selectedTextProps:{numberOfLines:1,ellipsizeMode:"tail",...M??{}},placeholderStyle:F,renderRightIcon:P??(()=>React.createElement(qo,{color:V?N:v,size:lt}))})};er.displayName="MDropdown";import{cva as rr}from"class-variance-authority";import{Search as ea,X as ta}from"lucide-react-native";import U from"react";import{Keyboard as tr,Pressable as ra,TextInput as oa,View as ze}from"react-native";var aa=rr("flex-row items-center bg-card rounded-full border border-border",{variants:{size:{default:"",sm:"",lg:""}},defaultVariants:{size:"default"}}),sa={default:18,sm:15,lg:21},na={default:36,sm:30,lg:52},ia=rr("flex-1 min-w-0 px-2 font-munchi",{variants:{size:{default:"text-lg",sm:"text-base",lg:"text-xl"}},defaultVariants:{size:"default"}}),or=U.forwardRef(({value:e,onChangeText:t,onClear:r,placeholder:o="Search...",size:s="default",className:n,containerClassName:c,inputClassName:l,iconSize:i=20,placeholderTextColor:u,...h},b)=>{let{foreground:m,muted:p}=E(),y=()=>{r?r():t(""),tr.isVisible()&&tr.dismiss()};return U.createElement(ze,{className:a(aa({size:s}),n,c)},U.createElement(ze,{className:"pl-3 shrink-0"},U.createElement(ea,{size:i,color:p})),U.createElement(oa,{ref:b,placeholder:o,placeholderTextColor:u??p,value:e,onChangeText:t,textAlignVertical:"center",style:{color:m,fontSize:sa[s??"default"],height:na[s??"default"],paddingVertical:0,includeFontPadding:!1},className:a(ia({size:s}),l),...h}),U.createElement(ze,{className:"pr-2 shrink-0",style:{width:i+16}},e.length>0&&U.createElement(ra,{onPress:y,className:"items-center justify-center p-2"},U.createElement(ta,{size:i,color:p}))))});or.displayName="MSearch";import ne from"react";import{Pressable as la,Text as ar,View as sr}from"react-native";var nr=ne.memo(({label:e,isSelected:t,onPress:r,description:o})=>ne.createElement(la,{className:"flex flex-row justify-between items-center p-2",onPress:r},ne.createElement(ar,{className:a("font-munchi",t&&"font-munchi-semibold")},e),t&&o&&ne.createElement(ar,{className:"text-muted-foreground text-sm mx-2 flex-1 text-right"},o),ne.createElement(sr,{className:a("w-6 h-6 rounded-full border-2 border-primary ml-2",!t&&"bg-card")},t&&ne.createElement(sr,{className:"absolute inset-0 m-1 rounded-full bg-primary"}))));nr.displayName="MSelector";import{Pressable as ca,Text as da,View as ma}from"react-native";var ir=({options:e,selectedKey:t,onSelect:r})=>React.createElement(ma,{className:"flex flex-row gap-4 w-full items-center justify-between"},e.map(o=>React.createElement(ca,{key:String(o.key),className:a("flex-1 rounded-lg py-4",t===o.key?"bg-primary":"bg-muted"),onPress:()=>r(o.key),disabled:o.disabled},React.createElement(da,{className:a("text-center font-munchi",t===o.key?"text-primary-foreground":"text-muted-foreground")},o.label))));ir.displayName="MToggle";import{ActivityIndicator as pa,Pressable as lr,Text as $e,View as cr}from"react-native";var dr=({message:e,onConfirm:t,onCancel:r,confirmText:o="Confirm",cancelText:s="Cancel",isLoading:n=!1})=>{let{onPrimary:c}=E();return React.createElement(cr,{className:"p-4"},React.createElement($e,{className:"font-munchi text-center mb-10 mt-4 text-foreground"},e),React.createElement(cr,{className:"flex-row justify-between"},React.createElement(lr,{className:a("flex-1 mr-2 border border-border rounded-md py-3 bg-card",n&&"opacity-50"),onPress:r,disabled:n},React.createElement($e,{className:"font-munchi text-center text-card-foreground"},s)),React.createElement(lr,{className:a("flex-1 ml-2 bg-primary rounded-md py-3",n&&"opacity-50"),onPress:t,disabled:n},n?React.createElement(pa,{color:c}):React.createElement($e,{className:"font-munchi text-center text-primary-foreground"},o))))};dr.displayName="MConfirmation";import{Delete as mr}from"lucide-react-native";import{Pressable as ua,View as we}from"react-native";var je=({label:e,onPress:t,testID:r,icon:o,disabled:s,iconTint:n,labelClassName:c})=>React.createElement(ua,{testID:r,onPress:t,className:"w-20 h-20 md:w-24 md:h-24 rounded-full items-center justify-center active:bg-accent",disabled:s},e?React.createElement(S,{className:a("text-3xl md:text-4xl font-light",c)},e):o??React.createElement(mr,{size:26,color:n})),pr=({onDigit:e,onBackspace:t,isLoading:r})=>{let{foreground:o}=E();return React.createElement(we,{className:"w-full items-center gap-0"},[["1","2","3"],["4","5","6"],["7","8","9"]].map((n,c)=>React.createElement(we,{key:c,className:"flex-row justify-center gap-24"},n.map(l=>React.createElement(je,{key:l,label:l,onPress:()=>e(l),disabled:r,iconTint:o,labelClassName:"text-foreground"})))),React.createElement(we,{className:"flex-row justify-center gap-24"},React.createElement(we,{className:"w-20 h-20 md:w-24 md:h-24"}),React.createElement(je,{label:"0",onPress:()=>e("0"),disabled:r,iconTint:o,labelClassName:"text-foreground"}),React.createElement(je,{onPress:t,testID:"backspace",disabled:r,iconTint:o,labelClassName:"text-foreground",icon:React.createElement(mr,{size:26,color:o})})))};pr.displayName="MPinPadKeys";import{cva as fa}from"class-variance-authority";import{Delete as xa}from"lucide-react-native";import{useCallback as ur,useMemo as ga,useRef as fr,useState as ba}from"react";import{Platform as ya,Pressable as ha,Text as Pa,View as Ne,useWindowDimensions as wa}from"react-native";var br=(l=>(l.Discount="discount",l.Table="table",l.Price="price",l.Cash="cash",l.Quantity="quantity",l.Phone="phone",l.GiftCard="giftcard",l))(br||{}),yr=()=>new Intl.NumberFormat(void 0,{minimumFractionDigits:1,maximumFractionDigits:1}).format(1.1).match(/[^0-9]/)?.[0]||".";function Ge(e,t){if(!e)return"";if(t==="."){let[o="",...s]=e.split(".");return s.length===0?o:`${o}.${s.join("")}`}if(e.includes("."))return e;let r=e.split(t);return r.length<=1?e.replace(/\./g,""):`${(r[0]??"").replace(/\./g,"")}.${r.slice(1).join("")}`}function Me(e,t){let r=e.replace(/\D/g,"");if(r===""||r==="0")return`0${t}00`;let o=r.padStart(3,"0"),s=o.slice(0,-2).replace(/^0+/,"")||"0",n=o.slice(-2);return`${s}${t}${n}`}function xr(e,t){if(!e)return"";let r=t==="."?e:e.replace(t,"."),o=Number.parseFloat(r);return Number.isNaN(o)||o<=0?"":Math.round(o*100).toString()}var Ma=90,Na=118,Ta=78,va=106,Ca=72,Ra=90,Va=62,Sa=80,ka=24,Ia=36,Da=22,Aa=32,_a=6,Ea=5,fe=3,Te="00",gr=/^(\d+)\.00$/;function La(e){switch(e){case"X":return"munchi.numpad.key.backspace";case Te:return"munchi.numpad.key.double-zero";case"-":return"munchi.numpad.key.minus";case"+":return"munchi.numpad.key.plus";default:return`munchi.numpad.key.digit-${e}`}}var Fa=fa("items-center justify-center rounded-2xl",{variants:{pressed:{true:"",false:"bg-muted"},scheme:{dark:"",light:""}},compoundVariants:[{pressed:!0,scheme:"dark",className:"bg-white/15 border-white/20"},{pressed:!0,scheme:"light",className:"bg-foreground/10 border-foreground/15"}],defaultVariants:{pressed:!1,scheme:"light"}}),hr=({customAmount:e,setCustomAmount:t,mode:r,maxDigits:o=6})=>{let s=yr(),n=r==="price"||r==="cash"||r==="discount",c=n,l=r==="phone",i=fr(e);i.current=e;let u=fr(0),{foreground:h}=E(),{colorScheme:b}=O(),{width:m}=wa(),p=m>=768,y=ya.OS==="android",P=y?p?va:Ta:p?Na:Ma,M=y?p?Sa:Va:p?Ra:Ca,T=y?Ea:_a,x=y?p?Aa:Da:p?Ia:ka,R=b==="dark"?"dark":"light",v=ur(d=>{if(n){let D=d===Te;if(!D&&!/^\d$/.test(d))return;let _=xr(i.current??"",s);if(D){let ae=`${_}00`.replace(/^0+/,"")||"";if(ae===""){u.current=0;return}if(ae.length>o+2)return;u.current=2;let be=Me(ae,s);i.current=be,t(be);return}if(u.current>0){let ae=_.padStart(3,"0"),be=ae.slice(0,-2),Ar=(ae.slice(-2)[1]??"0")+d,dt=(be+Ar).replace(/^0+/,"")||"";if(dt.length>o+2)return;u.current-=1;let mt=Me(dt,s);i.current=mt,t(mt);return}let oe=(_+d).replace(/^0+/,"")||"";if(oe.length>o+2)return;if(oe===""){i.current=null,t(null);return}let ie=Me(oe,s);i.current=ie,t(ie);return}let f=i.current??"",g=Ge(f,s),[C="",w=""]=g.split("."),F=g.includes("."),te=d===s;if(d===Te&&c){if(!F){let _=C===""?"0.00":`${C}.00`;i.current=_,t(_);return}let D=gr.exec(g);if(D){let _=D[1]??"";i.current=_,t(_);return}return}if(te){if(F)return;t(f+s);return}let re=c?gr.exec(g):null;if(re&&/^\d$/.test(d)){let D=re[1]??"";if(d==="0"){let oe=`${D}0`;if(oe.length>o)return;let ie=`${oe}.00`;i.current=ie,t(ie);return}let _=`${D}.${d}0`;i.current=_,t(_);return}if(c&&F){if(w.length===2&&w[0]!=="0"&&w[1]!=="0"&&/^\d$/.test(d)){let D=`${C}${d}`;if(D.length>o)return;let _=`${D}.${w}`;i.current=_,t(_);return}if(w.length===2&&w[1]==="0"){let D=`${C}.${w[0]}${d}`;i.current=D,t(D);return}if(w.length===1&&/^\d$/.test(w)){let D=`${C}.${w}${d}`;i.current=D,t(D);return}if(w.length>=2)return}if(c){if(!F&&C.length>=o)return}else if(C.length>=o)return;let Dr=f+d,ct=Ge(Dr,s);i.current=ct,t(ct)},[s,n,c,o,t]),N=ur(()=>{let d=i.current;if(n){if(u.current=0,d==null||d===""){i.current=null,t(null);return}let F=xr(d,s).slice(0,-1).replace(/^0+/,"")||"";if(F===""){i.current=null,t(null);return}let te=Me(F,s);i.current=te,t(te);return}if(d==null||d===""){i.current=null,t(null);return}let f=Ge(d,s);if(!f.includes(".")){let w=f.slice(0,-1);if(w===""){i.current=null,t(null);return}i.current=w,t(w);return}let[g="",C=""]=f.split(".");if(C.length>0){let w=C.slice(0,-1);if(w===""){i.current=g===""?null:g,t(g===""?null:g);return}let F=`${g}.${w}`;i.current=F,t(F);return}i.current=g===""?null:g,t(g===""?null:g)},[s,n,t]),V=ga(()=>["1","2","3","4","5","6","7","8","9",r==="giftcard"?"-":c?Te:l?"+":"","0","X"],[r,c,l]),[k,I]=ba(0),H=k>0?Math.floor((k-T*(fe-1))/fe):P,j=Math.round(H*(M/P)),G=Math.round(x*(H/P));return React.createElement(Ne,{style:{width:"100%",gap:T},onLayout:d=>I(d.nativeEvent.layout.width)},[0,1,2,3].map(d=>React.createElement(Ne,{key:d,style:{flexDirection:"row",gap:T}},V.slice(d*fe,d*fe+fe).map((f,g)=>{let C=`${d}-${g}`;return f===""?React.createElement(Ne,{key:C,style:{width:H,height:j}}):React.createElement(Ba,{key:C,testID:La(f),item:f,width:H,height:j,fontSize:G,foreground:h,scheme:R,onPress:f==="X"?N:()=>v(f)})}))))},Ba=({testID:e,item:t,width:r,height:o,fontSize:s,foreground:n,scheme:c,onPress:l})=>React.createElement(ha,{testID:e,onPress:l,style:{width:r,height:o}},({pressed:i})=>React.createElement(Ne,{style:{width:r,height:o},className:a(Fa({pressed:i,scheme:c}))},t==="X"?React.createElement(xa,{size:s,color:n}):React.createElement(Pa,{style:{fontSize:s,lineHeight:s*1.4},className:"text-foreground font-munchi"},t)));hr.displayName="MNumpad";import{useEffect as Oa,useRef as Pr,useState as Ha}from"react";import{Pressable as za,View as wr}from"react-native";import $a,{useAnimatedStyle as ja,useSharedValue as Mr,withSpring as J}from"react-native-reanimated";var ee={damping:20,stiffness:200,mass:.8},Nr=({tabs:e,activeTab:t,onTabChange:r,className:o,style:s,disabled:n=!1,size:c="default",variant:l="default",stretch:i=!1,...u})=>{let{colorScheme:h}=O(),b=z[h==="dark"?"dark":"light"],m=c==="compact",p=l==="ghost",y=p?0:m?2:4,P=p?20:m?8:12,M=m?8:12,T=p?7:m?2:4,x=p?22:m?8:12,R=m?2:4,v=Pr({}),N=Mr(0),V=Mr(0),k=Pr(!1),[,I]=Ha(0);Oa(()=>{if(t==null){k.current=!1,V.value=J(0,ee);return}let d=String(t),f=v.current[d];if(f){N.value=J(f.x,ee),V.value=J(f.width,ee),k.current=!0,I(g=>g+1);return}k.current=!1},[t,V,N]);let H=ja(()=>({transform:[{translateX:N.value}],width:V.value})),j=(d,f)=>{v.current[d]=f;let g=String(t);if(d===g){if(!k.current){N.value=f.x,V.value=f.width,k.current=!0,I(C=>C+1);return}N.value=J(f.x,ee),V.value=J(f.width,ee)}},G=d=>{let f=String(d),g=v.current[f];g&&(N.value=J(g.x,ee),V.value=J(g.width,ee)),r(d)};return React.createElement(wr,{className:a("flex-row",!p&&"bg-accent",m?"gap-0.5 rounded-xl p-0.5":"gap-1 rounded-2xl p-1",i?"self-stretch":"self-start",o),style:s,...u},React.createElement($a.View,{pointerEvents:"none",style:[{position:"absolute",top:y,bottom:y,borderRadius:P,backgroundColor:b.card,shadowColor:b.text,shadowOpacity:p?0:h==="dark"?.08:.14,shadowRadius:m?4:6,shadowOffset:{width:0,height:m?1:2},elevation:m?2:3},H]}),e.map(({key:d,label:f,icon:g,disabled:C=!1})=>{let w=n||C;return React.createElement(za,{key:String(d),onPress:()=>G(d),disabled:w,onLayout:F=>j(String(d),F.nativeEvent.layout),style:{...i?{flex:1,minWidth:0}:{flexShrink:1,minWidth:0},alignItems:"center",justifyContent:"center",paddingHorizontal:M,paddingVertical:T,borderRadius:x,opacity:w?.5:1}},React.createElement(wr,{style:{flexDirection:"row",alignItems:"center",gap:R,flexShrink:1,overflow:"hidden"}},g,f&&React.createElement(S,{size:p?"lg":"xl",numberOfLines:1,style:{flexShrink:1}},f)))}))};Nr.displayName="MTabs";import ve from"dayjs";import{useEffect as Ga,useMemo as Tr,useState as Wa}from"react";import{Text as Ka,View as Za}from"react-native";var qa=(e,t)=>{let r=e.diff(t,"minute");if(r<1)return"0m";let o=Math.floor(r/1440),s=r%1440,n=Math.floor(s/60),c=s%60,l="";return o>0&&(l+=`${o}d `),(n>0||o>0)&&(l+=`${n}h `),l+=`${c}m`,l.trim()},vr=({date:e,className:t="",textClassName:r=""})=>{let o=Tr(()=>ve(e),[e]),[s,n]=Wa(()=>ve());Ga(()=>{let i=(()=>{let u=ve(),b=u.add(1,"minute").startOf("minute").diff(u);return setTimeout(()=>{n(ve())},b>0?b:6e4)})();return()=>clearTimeout(i)},[s]);let c=Tr(()=>qa(s,o),[s,o]);return React.createElement(Za,{className:a("rounded-md flex items-center justify-center bg-muted border border-border/60","dark:border-white/20 dark:bg-white/12",t)},React.createElement(Ka,{className:a("font-munchi-semibold text-foreground dark:text-neutral-200",r)},c))};vr.displayName="MTimerUp";import*as L from"react";import{Text as Cr,View as Ce}from"react-native";var We=L.forwardRef(({className:e,...t},r)=>L.createElement(Ce,{ref:r,className:a("rounded-lg border border-border bg-card shadow-sm shadow-foreground/10",e),...t}));We.displayName="Card";var Ke=L.forwardRef(({className:e,...t},r)=>L.createElement(Ce,{ref:r,className:a("flex flex-col space-y-1.5 p-6",e),...t}));Ke.displayName="CardHeader";var Ze=L.forwardRef(({className:e,...t},r)=>L.createElement(Cr,{role:"heading","aria-level":3,ref:r,className:a("text-2xl text-card-foreground font-semibold leading-none tracking-tight",e),...t}));Ze.displayName="CardTitle";var qe=L.forwardRef(({className:e,...t},r)=>L.createElement(Cr,{ref:r,className:a("text-sm text-muted-foreground",e),...t}));qe.displayName="CardDescription";var Ue=L.forwardRef(({className:e,...t},r)=>L.createElement(de.Provider,{value:"text-card-foreground"},L.createElement(Ce,{ref:r,className:a("p-6 pt-0",e),...t})));Ue.displayName="CardContent";var Xe=L.forwardRef(({className:e,...t},r)=>L.createElement(Ce,{ref:r,className:a("flex flex-row items-center p-6 pt-0",e),...t}));Xe.displayName="CardFooter";import*as Re from"react";import Ua,{useAnimatedStyle as Xa,useSharedValue as Ya,withRepeat as Qa,withSequence as Ja,withTiming as Rr}from"react-native-reanimated";var Vr=1e3;function Sr({className:e,...t}){let r=Ya(1);Re.useEffect(()=>{r.value=Qa(Ja(Rr(.5,{duration:Vr}),Rr(1,{duration:Vr})),-1)},[]);let o=Xa(()=>({opacity:r.value}));return Re.createElement(Ua.View,{style:o,className:a("rounded-md bg-secondary dark:bg-muted",e),...t})}import{Switch as es}from"react-native";var kr=e=>React.createElement(es,{...e});kr.displayName="MSwitch";import*as B from"@rn-primitives/table";import*as A from"react";var Ye=A.forwardRef(({className:e,...t},r)=>A.createElement(B.Root,{ref:r,className:a("w-full caption-bottom text-sm",e),...t}));Ye.displayName="Table";var Qe=A.forwardRef(({className:e,...t},r)=>A.createElement(B.Header,{ref:r,className:a("border-border [&_tr]:border-b",e),...t}));Qe.displayName="TableHeader";var Je=A.forwardRef(({className:e,style:t,...r},o)=>A.createElement(B.Body,{ref:o,className:a("flex-1 border-border [&_tr:last-child]:border-0",e),style:[{minHeight:2},t],...r}));Je.displayName="TableBody";var et=A.forwardRef(({className:e,...t},r)=>A.createElement(B.Footer,{ref:r,className:a("bg-muted/50 font-medium [&>tr]:last:border-b-0",e),...t}));et.displayName="TableFooter";var tt=A.forwardRef(({className:e,...t},r)=>A.createElement(B.Row,{ref:r,className:a("flex-row border-border border-b web:transition-colors web:hover:bg-muted/50 web:data-[state=selected]:bg-muted",e),...t}));tt.displayName="TableRow";var rt=A.forwardRef(({className:e,...t},r)=>A.createElement(de.Provider,{value:"text-muted-foreground"},A.createElement(B.Head,{ref:r,className:a("h-12 px-4 text-left justify-center font-medium [&:has([role=checkbox])]:pr-0",e),...t})));rt.displayName="TableHead";var ot=A.forwardRef(({className:e,...t},r)=>A.createElement(B.Cell,{ref:r,className:a("p-4 align-middle [&:has([role=checkbox])]:pr-0",e),...t}));ot.displayName="TableCell";import{Portal as ts,PortalHost as rs}from"@rn-primitives/portal";import{cva as at}from"class-variance-authority";import{AlertCircle as os}from"lucide-react-native";import{useRef as as,useState as ss}from"react";import{Pressable as ns,TextInput as is,View as Ve}from"react-native";var ls=at("w-full",{variants:{size:{default:"gap-1.5",sm:"gap-1",lg:"gap-2"}},defaultVariants:{size:"default"}}),cs=at("flex-row items-center bg-card border border-border",{variants:{size:{default:"px-4 py-3",sm:"px-3 py-2",lg:"px-5 py-4"},radius:{xl:"rounded-xl","2xl":"rounded-2xl"},hasError:{true:"border border-destructive",false:""},focused:{true:"border border-primary",false:""}},compoundVariants:[{hasError:!0,focused:!0,class:"border border-destructive"}],defaultVariants:{size:"default",radius:"xl",hasError:!1,focused:!1}}),ds=at("flex-1 min-w-0 font-munchi text-foreground p-0",{variants:{size:{default:"text-lg",sm:"text-base",lg:"text-xl"}},defaultVariants:{size:"default"}}),ms={default:18,sm:16,lg:20},Ir=({label:e,errorMessage:t,rightIcon:r,size:o="default",radius:s="xl",className:n,inputClassName:c,onFocus:l,onBlur:i,placeholderTextColor:u,...h})=>{let{foreground:b,muted:m,destructive:p}=E(),[y,P]=ss(!1),M=as(null),T=!!t;return React.createElement(Ve,{className:a(ls({size:o}),n)},e&&React.createElement(S,{size:o==="lg"?"lg":o==="sm"?"sm":"base",className:"font-munchi-semibold text-foreground"},e),React.createElement(ns,{onPress:()=>M.current?.focus()},React.createElement(Ve,{className:cs({size:o,radius:s,hasError:T,focused:y})},React.createElement(is,{ref:M,placeholderTextColor:u??m,onFocus:x=>{P(!0),l?.(x)},onBlur:x=>{P(!1),i?.(x)},style:{color:b,fontSize:ms[o??"default"],paddingVertical:0,includeFontPadding:!1},className:a(ds({size:o}),c),...h}),r&&React.createElement(Ve,{className:"ml-2 shrink-0"},r))),T&&React.createElement(Ve,{className:"flex-row items-center gap-1.5"},React.createElement(os,{size:14,color:p}),React.createElement(S,{size:"sm",className:"text-destructive flex-1"},t)))};Ir.displayName="MInput";import*as ge from"@rn-primitives/label";import*as xe from"react";var st=xe.forwardRef(({className:e,onPress:t,onLongPress:r,onPressIn:o,onPressOut:s,...n},c)=>xe.createElement(ge.Root,{className:"web:cursor-default",onPress:t,onLongPress:r,onPressIn:o,onPressOut:s},xe.createElement(ge.Text,{ref:c,className:a("text-sm text-foreground native:text-base font-medium leading-none web:peer-disabled:cursor-not-allowed web:peer-disabled:opacity-70",e),...n})));st.displayName=ge.Root.displayName;import*as Y from"@rn-primitives/radio-group";import*as X from"react";import{View as ps}from"react-native";var nt=X.forwardRef(({className:e,...t},r)=>X.createElement(Y.Root,{className:a("web:grid gap-2",e),...t,ref:r}));nt.displayName=Y.Root.displayName;var it=X.forwardRef(({className:e,...t},r)=>X.createElement(Y.Item,{ref:r,className:a("aspect-square h-4 w-4 native:h-5 native:w-5 rounded-full justify-center items-center border border-border web:ring-offset-background web:focus:outline-none web:focus-visible:ring-2 web:focus-visible:ring-ring web:focus-visible:ring-offset-2",t.disabled&&"web:cursor-not-allowed opacity-50",e),...t},X.createElement(Y.Indicator,{className:"flex items-center justify-center"},X.createElement(ps,{className:"aspect-square h-[9px] w-[9px] native:h-[10] native:w-[10] bg-primary rounded-full"}))));it.displayName=Y.Item.displayName;export{xt as MAlert,bt as MAnimation,ht as MAvatar,wt as MBadge,Tt as MButton,We as MCard,Ue as MCardContent,qe as MCardDescription,Xe as MCardFooter,Ke as MCardHeader,Ze as MCardTitle,vt as MChevron,dr as MConfirmation,Jt as MCountDown,Rt as MDateTimePicker,Vt as MDivider,Yt as MDrawerRightPanel,er as MDropdown,Ir as MInput,st as MLabel,St as MLucideIcon,Pe as MModal,Qt as MNativeAlert,hr as MNumpad,At as MPicker,pr as MPinPadKeys,ts as MPortal,rs as MPortalHost,Lt as MProgressBar,nt as MRadioGroup,it as MRadioGroupItem,wo as MRequiredLabel,Ft as MResponsiveContainer,or as MSearch,nr as MSelector,Sr as MSkeleton,kr as MSwitch,Ye as MTable,Je as MTableBody,ot as MTableCell,et as MTableFooter,rt as MTableHead,Qe as MTableHeader,tt as MTableRow,Nr as MTabs,S as MText,vr as MTimerUp,ir as MToggle,Io as ModalContent,Ht as ModalHeight,He as ModalScrollContext,z as NAV_THEME,br as NumpadMode,Nt as buttonVariants,a as cn,ce as darkVars,yr as getDecimalSeparator,le as lightVars,Fr as typography,O as useColorScheme,E as useIconColors};
|
|
1
|
+
import{clsx as Lr}from"clsx";import{twMerge as Fr}from"tailwind-merge";function a(...e){return Fr(Lr(e))}function ke(e,t=4,r="0"){return e.toString().padStart(t,r)}import{useColorScheme as Or}from"nativewind";function B(){let{colorScheme:e,setColorScheme:t,toggleColorScheme:r}=Or();return{colorScheme:e??"light",isDarkColorScheme:e==="dark",setColorScheme:t,toggleColorScheme:r}}var le={"--background":"0 0% 95.7%","--foreground":"0 0% 7.8%","--card":"0 0% 100%","--card-foreground":"0 0% 7.8%","--popover":"0 0% 100%","--popover-foreground":"0 0% 7.8%","--primary":"0 0% 7.8%","--primary-foreground":"0 0% 100%","--secondary":"0 0% 93%","--secondary-foreground":"0 0% 7.8%","--muted":"0 0% 93%","--muted-foreground":"0 0% 45%","--accent":"0 0% 89.4%","--accent-foreground":"0 0% 7.8%","--destructive":"0 84.2% 60.2%","--destructive-foreground":"0 0% 100%","--border":"0 0% 78%","--input":"0 0% 78%","--ring":"0 0% 7.8%"},ce={"--background":"0 0% 7.8%","--foreground":"0 0% 100%","--card":"0 0% 14.5%","--card-foreground":"0 0% 100%","--popover":"0 0% 14.5%","--popover-foreground":"0 0% 100%","--primary":"0 0% 100%","--primary-foreground":"0 0% 7.8%","--secondary":"0 0% 18%","--secondary-foreground":"0 0% 100%","--muted":"0 0% 11%","--muted-foreground":"0 0% 60%","--accent":"0 0% 21.2%","--accent-foreground":"0 0% 100%","--destructive":"0 72% 51%","--destructive-foreground":"0 0% 100%","--border":"0 0% 28%","--input":"0 0% 28%","--ring":"0 0% 60%"};var se=(e,t)=>`hsl(${e[t]})`,ut=e=>({background:se(e,"--background"),border:se(e,"--border"),card:se(e,"--card"),notification:se(e,"--destructive"),primary:se(e,"--primary"),text:se(e,"--foreground")}),j={light:ut(le),dark:ut(ce)};function L(){let{colorScheme:e}=B(),t=e==="dark"?"dark":"light",r=j[t];return{foreground:r.text,muted:t==="dark"?"hsl(240 5% 64.9%)":"hsl(240 3.8% 46.1%)",primary:r.primary,destructive:r.notification,onDestructive:"hsl(0 0% 100%)",onPrimary:t==="dark"?"hsl(240 5.9% 10%)":"hsl(0 0% 98%)"}}var Br={regular:"DMSans_400Regular",medium:"DMSans_500Medium",bold:"DMSans_700Bold"};import{cva as zr}from"class-variance-authority";import*as G from"react";import{View as xt}from"react-native";import*as ft from"@rn-primitives/slot";import*as q from"react";import{Text as Hr}from"react-native";var de=q.createContext(void 0),he=q.forwardRef(({className:e,asChild:t=!1,...r},o)=>{let n=q.useContext(de);return q.createElement(t?ft.Text:Hr,{className:a("text-base text-foreground web:select-text",n,e),ref:o,...r})});he.displayName="Text";var $r=zr("relative bg-background w-full rounded-lg border border-border p-4 shadow shadow-foreground/10",{variants:{variant:{default:"",destructive:"border-destructive"}},defaultVariants:{variant:"default"}}),jr={default:"hsl(240 10% 3.9%)",destructive:"hsl(0 84.2% 60.2%)"},Ie=G.forwardRef(({className:e,variant:t,children:r,icon:o,iconSize:n=16,iconClassName:s,...l},i)=>{let d=jr[t??"default"];return G.createElement(xt,{ref:i,role:"alert",className:$r({variant:t,className:e}),...l},G.createElement(xt,{className:"absolute left-3.5 top-4 -translate-y-0.5"},G.createElement(o,{size:n,color:d})),r)});Ie.displayName="Alert";var De=G.forwardRef(({className:e,...t},r)=>G.createElement(he,{ref:r,className:a("pl-7 mb-1 font-medium text-base leading-none tracking-tight text-foreground",e),...t}));De.displayName="AlertTitle";var Ae=G.forwardRef(({className:e,...t},r)=>G.createElement(he,{ref:r,className:a("pl-7 text-sm leading-relaxed text-foreground",e),...t}));Ae.displayName="AlertDescription";var bt=({title:e,description:t,icon:r,iconSize:o,iconClassName:n,variant:s="default",className:l})=>React.createElement(Ie,{icon:r,iconSize:o,iconClassName:n,variant:s,className:a(l)},React.createElement(De,null,e),t&&React.createElement(Ae,null,t));bt.displayName="MAlert";import Zr from"lottie-react-native";import{View as Pe}from"react-native";import{cva as Gr}from"class-variance-authority";import gt from"react";import{Text as Wr}from"react-native";var Kr=Gr("text-base text-foreground",{variants:{variant:{default:"font-munchi"},size:{xs:"text-xs",sm:"text-sm",base:"text-base",lg:"text-lg",xl:"text-xl","2xl":"text-2xl","3xl":"text-3xl","4xl":"text-4xl"}},defaultVariants:{variant:"default",size:"base"}}),k=gt.forwardRef(({className:e,variant:t,size:r,children:o,...n},s)=>gt.createElement(Wr,{ref:s,className:a(Kr({variant:t,size:r}),e),...n,allowFontScaling:!1},o));k.displayName="MText";var yt=({children:e,animationSource:t,lottieViewProps:r,childrenClass:o,text:n,subText:s})=>React.createElement(Pe,{className:"w-full flex-1 flex-col gap-4"},React.createElement(Pe,{className:"flex-1 flex items-center justify-center"},React.createElement(Zr,{...r,source:t})),(n||s)&&React.createElement(Pe,{className:"items-center gap-1 px-4"},n&&React.createElement(k,{className:"text-center text-2xl font-munchi-semibold"},n),s&&React.createElement(k,{className:"text-center text-base text-muted-foreground"},s)),e&&React.createElement(Pe,{className:a("flex flex-col items-center",o)},e));yt.displayName="MAnimation";import{cva as ht}from"class-variance-authority";import me from"react";import{Platform as qr,Text as Ur}from"react-native";import*as K from"@rn-primitives/avatar";import*as U from"react";var _e=U.forwardRef(({className:e,...t},r)=>U.createElement(K.Root,{ref:r,className:a("relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full",e),...t}));_e.displayName=K.Root.displayName;var Ee=U.forwardRef(({className:e,...t},r)=>U.createElement(K.Image,{ref:r,className:a("aspect-square h-full w-full",e),...t}));Ee.displayName=K.Image.displayName;var Le=U.forwardRef(({className:e,...t},r)=>U.createElement(K.Fallback,{ref:r,className:a("flex h-full w-full items-center justify-center rounded-full bg-muted",e),...t}));Le.displayName=K.Fallback.displayName;var Xr=ht("relative flex shrink-0 overflow-hidden rounded-full",{variants:{size:{xs:"h-6 w-6",sm:"h-8 w-8",md:"h-10 w-10",lg:"h-12 w-12",xl:"h-16 w-16",xxl:"h-20 w-20",full:"h-full w-full"}},defaultVariants:{size:"md"}}),Yr=ht("font-munchi text-background",{variants:{size:{xs:"text-sm",sm:"text-sm",md:"text-base",lg:"text-xl",xl:"text-3xl",xxl:"text-4xl",full:"text-2xl"}},defaultVariants:{size:"md"}}),Pt=me.forwardRef(({className:e,size:t,source:r,fallbackText:o,imageClassName:n,fallbackClassName:s,fallbackTextClassName:l,...i},d)=>me.createElement(_e,{ref:d,className:a(Xr({size:t}),e),...i},r&&me.createElement(Ee,{source:r,className:a("aspect-square h-full w-full",n)}),me.createElement(Le,{className:a("flex h-full w-full items-center justify-center rounded-full bg-muted",s)},me.createElement(Ur,{className:a(Yr({size:t}),qr.OS==="ios"&&"text-foreground",l)},o))));Pt.displayName="MAvatar";import{cva as wt}from"class-variance-authority";import{Text as Qr,View as Jr}from"react-native";var eo=wt("p-1 px-2 rounded-md border-0",{variants:{variant:{default:"bg-secondary",accent:"bg-accent",muted:"bg-muted text-muted-foreground",destructive:"bg-destructive",primary:"bg-primary text-primary-foreground mx-1",gray:"bg-muted text-muted-foreground",custom:""}},defaultVariants:{variant:"gray"}}),to=wt("text-xs font-munchi",{variants:{variant:{default:"text-secondary-foreground",accent:"text-accent-foreground",muted:"text-muted-foreground",destructive:"text-destructive-foreground",primary:"text-primary-foreground",gray:"text-muted-foreground",custom:"text-foreground"}},defaultVariants:{variant:"gray"}}),Mt=({variant:e="gray",text:t,show:r=!0,customBackgroundColor:o,className:n,textClassName:s})=>{if(!r)return null;let l=e==="custom";return React.createElement(Jr,{className:a(eo({variant:e}),n),style:l?{backgroundColor:o}:void 0},React.createElement(Qr,{className:a(to({variant:e}),s)},t))};Mt.displayName="MBadge";import{cva as ro}from"class-variance-authority";import Fe from"react";import{Pressable as Nt}from"react-native";var Tt=ro("flex-row justify-center items-center rounded-full",{variants:{variant:{default:"bg-primary",primary:"bg-primary",white:"bg-card border border-border",destructive:"bg-destructive",outline:"bg-transparent border border-border",secondary:"bg-secondary",ghost:"bg-transparent",link:"bg-transparent",none:"none",custom:""},size:{none:"",default:"h-auto px-4 md:py-2",sm:"h-8 px-3 py-1.5",lg:"h-10 px-6 py-2.5",icon:"h-9 w-9 p-2 justify-center items-center"}},defaultVariants:{variant:"default",size:"default"}}),vt=Fe.forwardRef((e,t)=>{let{onPress:r,variant:o="default",size:n="default",disabled:s=!1,children:l,className:i,...d}=e;return o==="custom"?Fe.createElement(Nt,{ref:t,disabled:s,className:a(s&&"opacity-50",i),onPress:r,android_ripple:null,...d},l):Fe.createElement(Nt,{ref:t,disabled:s,className:a(Tt({variant:o,size:n}),s&&"opacity-50",i),onPress:r,...d},l)});vt.displayName="MButton";import{useEffect as oo,useRef as ao}from"react";import{Animated as Oe}from"react-native";import so,{Path as no}from"react-native-svg";var Ct=({isOpen:e,size:t=11,color:r})=>{let{colorScheme:o}=B(),n=r??j[o].text,s=ao(new Oe.Value(e?90:0)).current;oo(()=>{Oe.timing(s,{toValue:e?90:0,duration:200,useNativeDriver:!0}).start()},[e,s]);let l=s.interpolate({inputRange:[0,90],outputRange:["0deg","90deg"]});return React.createElement(Oe.View,{style:{transform:[{rotate:l}]}},React.createElement(so,{width:t,height:t,viewBox:"0 0 11 11",fill:"none"},React.createElement(no,{fillRule:"evenodd",clipRule:"evenodd",d:"M3.80026 1.96823C3.97925 1.78924 4.26945 1.78924 4.44844 1.96823L7.65677 5.17656C7.83575 5.35554 7.83575 5.64576 7.65677 5.82474L4.44844 9.03307C4.26945 9.21205 3.97925 9.21205 3.80026 9.03307C3.62127 8.85409 3.62127 8.56388 3.80026 8.3849L6.68451 5.50065L3.80026 2.61641C3.62127 2.43742 3.62127 2.14722 3.80026 1.96823Z",fill:n})))};Ct.displayName="MChevron";import{Text as Rt}from"react-native";import io,{useDefaultClassNames as lo}from"react-native-ui-datepicker";var Vt=({className:e,classNames:t,showOutsideDays:r=!0,containerHeight:o=220,components:n,minDate:s,maxDate:l,...i})=>{let d=lo(),c=s||(()=>{let p=new Date;return p.setFullYear(p.getFullYear()-1),p})(),x=l||(()=>{let p=new Date;return p.setDate(p.getDate()),p})(),b={IconPrev:React.createElement(Rt,{className:"font-munchi text-lg text-foreground"},"<"),IconNext:React.createElement(Rt,{className:"font-munchi text-lg text-foreground"},">")};return React.createElement(io,{showOutsideDays:r,className:a("bg-card w-full rounded-xl",e),containerHeight:o,minDate:c,maxDate:x,classNames:{...d,day_cell:"p-0.5",day:a(d.day,"font-munchi rounded-xl text-foreground w-10 h-10"),day_label:"font-munchi text-base text-foreground",outside_label:"font-munchi text-base text-foreground opacity-40",today_label:"text-destructive font-munchi-bold text-base",month_selector_label:a(d.month_selector_label,"text-base font-munchi-semibold text-foreground"),year_selector_label:a(d.year_selector_label,"text-base font-munchi-semibold text-foreground"),time_selector_label:a(d.time_selector_label,"text-base font-munchi text-foreground"),header:"font-munchi-semibold text-lg text-foreground pb-2",weekday_label:"font-munchi-semibold text-sm text-muted-foreground",selected:a(d.selected,"font-munchi bg-primary rounded-xl"),selected_label:"font-munchi-semibold text-primary-foreground text-base",range_end:a(d.range_end,"font-munchi bg-primary rounded-r-xl"),range_start:a(d.range_start,"font-munchi bg-primary rounded-l-xl"),range_end_label:a(d.range_end_label,"font-munchi-semibold text-primary-foreground text-base"),range_start_label:a(d.range_start_label,"font-munchi-semibold text-primary-foreground text-base"),range_fill:"bg-primary/20 my-1",range_fill_weekstart:"rounded-s-lg",range_fill_weekend:"rounded-e-lg",range_middle_label:"font-munchi text-base text-foreground",month:a(d.month,"font-munchi rounded-xl text-foreground"),month_label:"font-munchi text-base text-foreground",year:a(d.year,"font-munchi rounded-xl text-foreground"),year_label:"font-munchi text-base text-foreground",time_label:"font-munchi text-2xl text-foreground",...t},components:{...b,...n},...i})};Vt.displayName="MDateTimePicker";import{cva as co}from"class-variance-authority";import{View as mo}from"react-native";var po=co("",{variants:{direction:{horizontal:"my-2",vertical:"mx-2"},variant:{sm:"",md:"",lg:""}},defaultVariants:{direction:"horizontal",variant:"md"}}),uo={sm:1,md:2,lg:4},St=({className:e,direction:t="horizontal",variant:r="md",color:o,style:n})=>{let s=t==="horizontal",l=uo[r??"md"],i=o?{backgroundColor:o,[s?"height":"width"]:l,[s?"width":"height"]:"100%"}:{[s?"height":"width"]:l,[s?"width":"height"]:"100%"};return React.createElement(mo,{className:a(!o&&"bg-border",po({direction:t,variant:r}),e),style:[i,n]})};St.displayName="MDivider";import fo from"react";import*as xo from"lucide-react-native";var kt=({name:e,...t})=>{let r=xo[e];return r?fo.createElement(r,{...t}):null};kt.displayName="MLucideIcon";import{useRef as bo,useState as It}from"react";import{FlatList as go,Modal as yo,Pressable as Be,Text as Dt,View as At}from"react-native";var _t=({data:e,onSelect:t,placeholder:r,selectedValue:o,className:n,textClassName:s,dropdownContainerClassName:l,itemContainerClassName:i,itemTextClassName:d})=>{let[c,x]=It(!1),b=bo(null),[p,u]=It({x:0,y:0,width:0,height:0}),g=e.find(f=>f.value===o),y=f=>{t(f),x(!1)},P=({item:f})=>{let C=f.value===o;return React.createElement(Be,{className:a("p-3 rounded-md m-1",C?"bg-primary":"active:bg-muted",i),onPress:()=>y(f)},React.createElement(Dt,{className:a(C?"text-primary-foreground":"text-foreground",d),numberOfLines:1},f.label))},v=()=>{c?x(!1):b.current?.measureInWindow((f,C,T,N)=>{u({x:f,y:C,width:T,height:N}),x(!0)})};return React.createElement(At,{className:"flex-col items-center justify-center"},React.createElement(Be,{ref:b,className:a("bg-primary rounded-full py-4 px-6 flex-row items-center",n),onPress:v},React.createElement(Dt,{className:a("text-primary-foreground text-base",s),numberOfLines:1,ellipsizeMode:"tail"},g?g.label:r)),React.createElement(yo,{animationType:"none",transparent:!0,visible:c,onRequestClose:()=>{x(!1)}},React.createElement(Be,{className:"absolute inset-0",onPress:()=>x(!1)}),React.createElement(At,{style:{position:"absolute",top:p.y+p.height,left:p.x},className:a("min-w-[100px] bg-background shadow-lg rounded-lg border border-border p-1 z-50 mt-2",l)},React.createElement(go,{data:e,renderItem:P,keyExtractor:f=>String(f.value),className:"max-h-[200px]"}))))};_t.displayName="MPicker";import{cva as Lt}from"class-variance-authority";import{View as Et}from"react-native";var ho=Lt("w-full h-2 rounded-full relative",{variants:{size:{sm:"h-1",md:"h-2",lg:"h-3"},variant:{default:"bg-muted",accent:"bg-accent/30",destructive:"bg-destructive/30",secondary:"bg-secondary",gray:"bg-gray",pink:"bg-pink",blue:"bg-blue-200",green:"bg-green-200"}},defaultVariants:{size:"md",variant:"default"}}),Po=Lt("h-full rounded-full absolute top-0 left-0",{variants:{variant:{default:"bg-foreground",accent:"bg-accent",destructive:"bg-destructive",secondary:"bg-secondary-foreground",gray:"bg-gray-600",pink:"bg-pink",blue:"bg-blue-600",green:"bg-green-600"}},defaultVariants:{variant:"default"}}),Ft=({progress:e,size:t="md",variant:r="default",className:o,fillClassName:n})=>{let s=Math.min(Math.max(e,0),100);return React.createElement(Et,{className:a(ho({size:t,variant:r}),o)},React.createElement(Et,{style:{width:`${s}%`},className:a(Po({variant:r}),n)}))};Ft.displayName="MProgressBar";import{View as wo}from"react-native";var Ot=({children:e,className:t,style:r,padding:o,margin:n,...s})=>React.createElement(wo,{className:a((()=>{let i=[];if(o)for(let[d,c]of Object.entries(o))c!==void 0&&i.push(`${d}:p-${c}`);if(n)for(let[d,c]of Object.entries(n))c!==void 0&&i.push(`${d}:m-${c}`);return i.join(" ")})(),t),style:r,...s},e);Ot.displayName="MResponsiveContainer";import{View as Mo}from"react-native";var No=({label:e,className:t,...r})=>React.createElement(Mo,{className:a("flex-row items-center gap-1 mb-3",t),...r},React.createElement(k,{className:"font-munchi-bold text-xl"},e),React.createElement(k,{className:"font-munchi-bold text-xl text-destructive"},"*"));import{cva as To}from"class-variance-authority";import{ArrowLeft as vo,X as He}from"lucide-react-native";import{Fragment as Co,createContext as Ht,useContext as Bt,useRef as Ro}from"react";import{KeyboardAvoidingView as Vo,Modal as So,Platform as ko,Pressable as J,ScrollView as Io,View as Z}from"react-native";var zt=(i=>(i.ExtraSmall="xs",i.Small="sm",i.Medium="md",i.Large="lg",i.ExtraLarge="xl",i.ExtraExtraLarge="xxl",i.Auto="auto",i))(zt||{}),$t=Ht({isFixed:!1}),ze=Ht(null),Do=To("rounded-2xl p-6 shadow-lg flex flex-col",{variants:{variant:{xs:"w-[40%]",sm:"w-[60%]",md:"w-[80%]",lg:"w-[95%]",auto:"w-auto self-center",fullscreen:"w-full h-full rounded-none"},height:{xs:"h-[30%]",sm:"h-[40%]",md:"h-[60%]",lg:"h-[80%]",xl:"h-[90%]",xxl:"h-[96%]",auto:"h-auto"},background:{white:"bg-card",dark:"bg-secondary",primary:"bg-muted",transparent:"bg-transparent"}},defaultVariants:{variant:"md",height:"auto",background:"white"}}),jt=({children:e,scrollable:t=!0})=>{let{isFixed:r}=Bt($t),o=Bt(ze);return t?React.createElement(Z,{className:a(r&&"flex-1")},React.createElement(Io,{ref:o,showsVerticalScrollIndicator:!1,contentContainerStyle:{flexGrow:1},keyboardShouldPersistTaps:"handled",style:r?{flex:1}:void 0},React.createElement(J,{style:{flex:1}},e))):React.createElement(Z,{className:a(r&&"flex-1"),style:r?{flex:1}:void 0},React.createElement(J,{style:{flex:1}},e))};jt.displayName="ModalBody";var Gt=({children:e})=>React.createElement(Z,{className:"mt-auto flex-shrink-0"},e),Ao=({body:e,footer:t})=>React.createElement(Co,null,React.createElement(we.Body,null,e),t&&React.createElement(we.Footer,null,t)),_o=e=>{let{isVisible:t,onClose:r,children:o,onBack:n,onDismiss:s,header:l,headingText:i,closable:d=!0,variant:c="sm",containerClassName:x,height:b,background:p="white",footer:u,onButtonClose:g,showCloseButton:y=!0,showBackButton:P=!0,keyboardAvoidingEnabled:v=!0}=e,C={isFixed:(b&&b!=="auto")??!1},T=Ro(null),{foreground:N}=L(),R=()=>n&&P?React.createElement(Z,{className:"flex-row items-center justify-between"},React.createElement(J,{onPress:n,className:"bg-muted rounded-full p-2"},React.createElement(vo,{color:N,size:24})),i&&React.createElement(k,{className:"font-munchi-bold text-foreground flex-1 text-left mx-3",size:"2xl",numberOfLines:1},i),y&&React.createElement(J,{onPress:r,className:"bg-muted rounded-full p-3"},React.createElement(He,{color:N,size:24}))):l||(i?React.createElement(Z,{className:"flex-row items-center justify-between"},React.createElement(k,{className:"font-munchi-bold text-foreground w-11/12",size:"2xl",numberOfLines:1},i),y&&React.createElement(J,{onPress:g??r,className:"bg-muted rounded-full p-3"},React.createElement(He,{color:N,size:24}))):y?React.createElement(Z,{className:"flex-row items-center justify-between"},React.createElement(Z,{className:"flex-1"}),React.createElement(J,{onPress:r,className:"bg-muted rounded-full p-3"},React.createElement(He,{color:N,size:24}))):null),A=V=>{V.target===V.currentTarget&&d&&r()};return React.createElement(So,{transparent:!0,visible:t,onRequestClose:d?r:void 0,animationType:"fade",onDismiss:s},React.createElement(Vo,{className:"flex-1",enabled:v,behavior:ko.select({ios:"padding",default:"height"})},React.createElement(J,{className:"flex-1 items-center justify-center bg-black/50 p-4",onPress:A},React.createElement(Z,{className:a("max-h-[95%]",Do({variant:c,height:b,background:p}),x)},React.createElement($t.Provider,{value:C},React.createElement(ze.Provider,{value:T},R()!==null&&React.createElement(Z,{className:"pb-4 flex-shrink-0"},R()),o,u&&React.createElement(Gt,null,u)))))))},we=Object.assign(_o,{Body:jt,Footer:Gt});we.displayName="MModal";import{useEffect as Eo,useRef as Wt,useState as Lo}from"react";import{Modal as Fo,Platform as Oo,ScrollView as Bo,TouchableWithoutFeedback as Ho,View as pe,useWindowDimensions as zo}from"react-native";import Kt,{useAnimatedStyle as Zt,useSharedValue as qt,withSpring as Ut,withTiming as Xt}from"react-native-reanimated";import{useSafeAreaInsets as $o}from"react-native-safe-area-context";var jo={mass:.4,stiffness:110,damping:16,overshootClamping:!1},Go={mass:.4,stiffness:140,damping:22,overshootClamping:!0},Yt=340,Qt=({isVisible:e,onClose:t,header:r,footer:o,children:n,closable:s=!0,widthFraction:l=.45,className:i,scrollable:d=!0})=>{let{colorScheme:c}=B(),x=j[c],{width:b}=zo(),p=$o(),u=b*l,[g,y]=Lo(!1),P=Wt(null),v=Wt(!1),f=qt(u),C=qt(0),T=W=>{v.current||(v.current=!0,f.value=Ut(u,Go),C.value=Xt(0,{duration:Yt}),P.current=setTimeout(()=>{y(!1),v.current=!1,W?.()},Yt))};Eo(()=>(e?(P.current&&(clearTimeout(P.current),P.current=null,v.current=!1),y(!0),f.value=Ut(0,jo),C.value=Xt(1,{duration:300})):T(),()=>{P.current&&clearTimeout(P.current)}),[e]);let N=()=>{s&&T(t)},R=()=>{T(t)},A=Zt(()=>({transform:[{translateX:f.value}]})),V=Zt(()=>({opacity:C.value}));return React.createElement(Fo,{transparent:!0,visible:g,animationType:"none",onRequestClose:s?R:void 0},React.createElement(pe,{className:"flex-1 flex-row justify-end",style:{paddingTop:p.top,paddingBottom:p.bottom}},React.createElement(Ho,{onPress:N},React.createElement(Kt.View,{className:"absolute inset-0 bg-black/60",style:V})),React.createElement(Kt.View,{style:[A,{width:u}],className:a("h-full overflow-hidden border rounded-2xl border-border",i)},React.createElement(pe,{className:"flex-1",style:{backgroundColor:x.background}},r&&React.createElement(pe,{className:"px-6 pt-6 flex-shrink-0"},r),d?React.createElement(Bo,{className:"flex-1 px-6",showsVerticalScrollIndicator:!1,contentContainerStyle:{paddingTop:16,paddingBottom:24},keyboardShouldPersistTaps:"handled",automaticallyAdjustKeyboardInsets:Oo.OS==="ios",keyboardDismissMode:"interactive"},n):React.createElement(pe,{className:"flex-1 overflow-hidden"},n),o&&React.createElement(pe,{className:"px-6 pb-6 pt-4 border-t-2 border-border flex-shrink-0"},o)))))};Qt.displayName="MDrawerRightPanel";import{Alert as Wo}from"react-native";var Jt=({title:e,description:t,onPress:r,onPressText:o,onCancel:n,onCancelText:s})=>{Wo.alert(e,t,[{text:o,onPress:r},{text:s,style:"cancel",onPress:n}])};Jt.displayName="MNativeAlert";import{useMemo as Ko}from"react";import Zo from"react-countdown";import{Text as qo,View as Uo}from"react-native";var er=({warningThreshold:e=3,className:t="",textClassName:r="",showPrefix:o=!0,countUp:n=!1,renderer:s,onComplete:l,date:i,...d})=>{let c=Ko(()=>({minutes:b,seconds:p,completed:u})=>{let g,y,P="";if(u)if(n){let A=new Date(i),W=new Date().getTime()-A.getTime();g=Math.floor(W/6e4),y=Math.floor(W%6e4/1e3),o&&(P="-")}else g=0,y=0;else g=b,y=p;let v=!u||n?ke(Math.abs(g),2):"00",f=!u||n?ke(Math.abs(y),2):"00",C=!u&&b<e,T=u,N=C||T?"bg-destructive/15":"bg-green-500/15",R=C||T?"text-destructive":"text-green-600";return React.createElement(Uo,{className:a("rounded-md flex items-center justify-center",N,t)},React.createElement(qo,{className:a("font-munchi-semibold text-center",R,r)},P,v,":",f))},[e,n,i,o,t,r]);return React.createElement(Zo,{renderer:s??c,onComplete:l,overtime:n,date:i,...d})};er.displayName="MCountDown";import{ArrowDown as Xo}from"lucide-react-native";import{useMemo as Yo}from"react";import{StyleSheet as ue}from"react-native";import{Dropdown as Qo}from"react-native-element-dropdown";function Jo(e){return{trigger:{width:"100%",paddingHorizontal:16,paddingVertical:12,borderRadius:16,borderWidth:1,borderColor:e.borderColor,backgroundColor:e.cardColor},containerStyle:{marginTop:6,borderRadius:16,borderWidth:1,borderColor:e.borderColor,backgroundColor:e.cardColor,shadowColor:e.textColor,shadowOpacity:.06,shadowRadius:8,shadowOffset:{width:0,height:2},elevation:3,overflow:"hidden"},itemContainerStyle:{backgroundColor:e.cardColor,padding:0},activeColor:e.mutedColor}}function ea(e){return{trigger:{width:"100%",paddingHorizontal:12,paddingVertical:8,borderRadius:12,borderWidth:1,borderColor:e.borderColor,backgroundColor:e.cardColor},containerStyle:{marginTop:4,borderRadius:12,borderWidth:1,borderColor:e.borderColor,backgroundColor:e.cardColor,shadowColor:e.textColor,shadowOpacity:.06,shadowRadius:6,shadowOffset:{width:0,height:1},elevation:2,overflow:"hidden"},itemContainerStyle:{backgroundColor:e.cardColor,padding:0},activeColor:e.mutedColor}}function ta(e){return{trigger:{paddingHorizontal:16,paddingVertical:8,borderRadius:999,borderWidth:0,backgroundColor:e.bgColor,minWidth:160},containerStyle:{marginTop:4,borderRadius:16,borderWidth:1,borderColor:e.borderColor,backgroundColor:e.cardColor,shadowColor:e.textColor,shadowOpacity:.06,shadowRadius:6,shadowOffset:{width:0,height:1},elevation:2,overflow:"hidden"},itemContainerStyle:{backgroundColor:e.cardColor,padding:0},activeColor:e.mutedColor}}var tr=({data:e=[],placeholder:t="",value:r,onFocus:o,onBlur:n,onChange:s,customStyles:l,fieldFrame:i="none",style:d,containerStyle:c,itemContainerStyle:x,selectedTextStyle:b,placeholderStyle:p,activeColor:u,maxHeight:g=300,renderRightIcon:y,selectedTextProps:P,mode:v="auto",...f})=>{let{colorScheme:C}=B(),{foreground:T,muted:N}=L(),R=e.length===0,A=C==="dark",V=j[A?"dark":"light"],z=`hsl(${(A?ce:le)["--muted"]})`,$=Yo(()=>{let ge={cardColor:V.card,borderColor:V.border,textColor:V.text,mutedColor:z};return i==="mInputSm2xl"?Jo(ge):i==="mInputCompact"?ea(ge):i==="pill"?ta({...ge,bgColor:z}):null},[i,V.card,V.border,V.text,z]),_=ue.flatten([$?.trigger,l,d]),m=ue.flatten([$?.containerStyle,c]),h=ue.flatten([$?.itemContainerStyle,x]),w=i==="mInputSm2xl"?18:i==="mInputCompact"?15:14,S=ue.flatten([{fontSize:w,color:T},b]),M=ue.flatten([{fontSize:w,color:R?N:T},p]),H=$?$.activeColor:u??z,re=i==="mInputCompact"?16:20;return React.createElement(Qo,{...f,mode:v,data:e,maxHeight:g,placeholder:t,value:r,onFocus:o,onBlur:n,onChange:s,style:_,containerStyle:m,itemContainerStyle:h,activeColor:H,fontFamily:"DMSans_400Regular",selectedTextStyle:S,selectedTextProps:{numberOfLines:1,ellipsizeMode:"tail",...P??{}},placeholderStyle:M,renderRightIcon:y??(()=>React.createElement(Xo,{color:R?N:T,size:re}))})};tr.displayName="MDropdown";import{cva as or}from"class-variance-authority";import{Search as ra,X as oa}from"lucide-react-native";import X from"react";import{Keyboard as rr,Pressable as aa,TextInput as sa,View as $e}from"react-native";var na=or("flex-row items-center bg-card rounded-full border border-border",{variants:{size:{default:"",sm:"",lg:""}},defaultVariants:{size:"default"}}),ia={default:18,sm:15,lg:21},la={default:36,sm:30,lg:52},ca=or("flex-1 min-w-0 px-2 font-munchi",{variants:{size:{default:"text-lg",sm:"text-base",lg:"text-xl"}},defaultVariants:{size:"default"}}),ar=X.forwardRef(({value:e,onChangeText:t,onClear:r,placeholder:o="Search...",size:n="default",className:s,containerClassName:l,inputClassName:i,iconSize:d=20,placeholderTextColor:c,...x},b)=>{let{foreground:p,muted:u}=L(),g=()=>{r?r():t(""),rr.isVisible()&&rr.dismiss()};return X.createElement($e,{className:a(na({size:n}),s,l)},X.createElement($e,{className:"pl-3 shrink-0"},X.createElement(ra,{size:d,color:u})),X.createElement(sa,{ref:b,placeholder:o,placeholderTextColor:c??u,value:e,onChangeText:t,textAlignVertical:"center",style:{color:p,fontSize:ia[n??"default"],height:la[n??"default"],paddingVertical:0,includeFontPadding:!1},className:a(ca({size:n}),i),...x}),X.createElement($e,{className:"pr-2 shrink-0",style:{width:d+16}},e.length>0&&X.createElement(aa,{onPress:g,className:"items-center justify-center p-2"},X.createElement(oa,{size:d,color:u}))))});ar.displayName="MSearch";import ne from"react";import{Pressable as da,Text as sr,View as nr}from"react-native";var ir=ne.memo(({label:e,isSelected:t,onPress:r,description:o})=>ne.createElement(da,{className:"flex flex-row justify-between items-center p-2",onPress:r},ne.createElement(sr,{className:a("font-munchi",t&&"font-munchi-semibold")},e),t&&o&&ne.createElement(sr,{className:"text-muted-foreground text-sm mx-2 flex-1 text-right"},o),ne.createElement(nr,{className:a("w-6 h-6 rounded-full border-2 border-primary ml-2",!t&&"bg-card")},t&&ne.createElement(nr,{className:"absolute inset-0 m-1 rounded-full bg-primary"}))));ir.displayName="MSelector";import{Pressable as ma,Text as pa,View as ua}from"react-native";var lr=({options:e,selectedKey:t,onSelect:r})=>React.createElement(ua,{className:"flex flex-row gap-4 w-full items-center justify-between"},e.map(o=>React.createElement(ma,{key:String(o.key),className:a("flex-1 rounded-lg py-4",t===o.key?"bg-primary":"bg-muted"),onPress:()=>r(o.key),disabled:o.disabled},React.createElement(pa,{className:a("text-center font-munchi",t===o.key?"text-primary-foreground":"text-muted-foreground")},o.label))));lr.displayName="MToggle";import{ActivityIndicator as fa,Pressable as cr,Text as je,View as dr}from"react-native";var mr=({message:e,onConfirm:t,onCancel:r,confirmText:o="Confirm",cancelText:n="Cancel",isLoading:s=!1})=>{let{onPrimary:l}=L();return React.createElement(dr,{className:"p-4"},React.createElement(je,{className:"font-munchi text-center mb-10 mt-4 text-foreground"},e),React.createElement(dr,{className:"flex-row justify-between"},React.createElement(cr,{className:a("flex-1 mr-2 border border-border rounded-md py-3 bg-card",s&&"opacity-50"),onPress:r,disabled:s},React.createElement(je,{className:"font-munchi text-center text-card-foreground"},n)),React.createElement(cr,{className:a("flex-1 ml-2 bg-primary rounded-md py-3",s&&"opacity-50"),onPress:t,disabled:s},s?React.createElement(fa,{color:l}):React.createElement(je,{className:"font-munchi text-center text-primary-foreground"},o))))};mr.displayName="MConfirmation";import{Delete as pr}from"lucide-react-native";import{Pressable as xa,View as Me}from"react-native";var Ge=({label:e,onPress:t,testID:r,icon:o,disabled:n,iconTint:s,labelClassName:l})=>React.createElement(xa,{testID:r,onPress:t,className:"w-20 h-20 md:w-24 md:h-24 rounded-full items-center justify-center active:bg-accent",disabled:n},e?React.createElement(k,{className:a("text-3xl md:text-4xl font-light",l)},e):o??React.createElement(pr,{size:26,color:s})),ur=({onDigit:e,onBackspace:t,isLoading:r})=>{let{foreground:o}=L();return React.createElement(Me,{className:"w-full items-center gap-0"},[["1","2","3"],["4","5","6"],["7","8","9"]].map((s,l)=>React.createElement(Me,{key:l,className:"flex-row justify-center gap-24"},s.map(i=>React.createElement(Ge,{key:i,label:i,onPress:()=>e(i),disabled:r,iconTint:o,labelClassName:"text-foreground"})))),React.createElement(Me,{className:"flex-row justify-center gap-24"},React.createElement(Me,{className:"w-20 h-20 md:w-24 md:h-24"}),React.createElement(Ge,{label:"0",onPress:()=>e("0"),disabled:r,iconTint:o,labelClassName:"text-foreground"}),React.createElement(Ge,{onPress:t,testID:"backspace",disabled:r,iconTint:o,labelClassName:"text-foreground",icon:React.createElement(pr,{size:26,color:o})})))};ur.displayName="MPinPadKeys";import{cva as ba}from"class-variance-authority";import{Delete as ga}from"lucide-react-native";import{useCallback as fr,useMemo as ya,useRef as xr,useState as ha}from"react";import{Platform as Pa,Pressable as wa,Text as Ma,View as Te,useWindowDimensions as Na}from"react-native";var hr=(i=>(i.Discount="discount",i.Table="table",i.Price="price",i.Cash="cash",i.Quantity="quantity",i.Phone="phone",i.GiftCard="giftcard",i))(hr||{}),Pr=()=>new Intl.NumberFormat(void 0,{minimumFractionDigits:1,maximumFractionDigits:1}).format(1.1).match(/[^0-9]/)?.[0]||".";function We(e,t){if(!e)return"";if(t==="."){let[o="",...n]=e.split(".");return n.length===0?o:`${o}.${n.join("")}`}if(e.includes("."))return e;let r=e.split(t);return r.length<=1?e.replace(/\./g,""):`${(r[0]??"").replace(/\./g,"")}.${r.slice(1).join("")}`}function Ne(e,t){let r=e.replace(/\D/g,"");if(r===""||r==="0")return`0${t}00`;let o=r.padStart(3,"0"),n=o.slice(0,-2).replace(/^0+/,"")||"0",s=o.slice(-2);return`${n}${t}${s}`}function br(e,t){if(!e)return"";let r=t==="."?e:e.replace(t,"."),o=Number.parseFloat(r);return Number.isNaN(o)||o<=0?"":Math.round(o*100).toString()}var Ta=90,va=118,Ca=78,Ra=106,Va=72,Sa=90,ka=62,Ia=80,Da=24,Aa=36,_a=22,Ea=32,La=6,Fa=5,fe=3,ve="00",gr=/^(\d+)\.00$/;function Oa(e){switch(e){case"X":return"munchi.numpad.key.backspace";case ve:return"munchi.numpad.key.double-zero";case"-":return"munchi.numpad.key.minus";case"+":return"munchi.numpad.key.plus";default:return`munchi.numpad.key.digit-${e}`}}var Ba=ba("items-center justify-center rounded-2xl",{variants:{pressed:{true:"",false:"bg-muted"},scheme:{dark:"",light:""}},compoundVariants:[{pressed:!0,scheme:"dark",className:"bg-white/15 border-white/20"},{pressed:!0,scheme:"light",className:"bg-foreground/10 border-foreground/15"}],defaultVariants:{pressed:!1,scheme:"light"}}),yr=4,wr=({customAmount:e,setCustomAmount:t,mode:r,maxDigits:o=6,availableHeight:n})=>{let s=Pr(),l=r==="price"||r==="cash"||r==="discount",i=l,d=r==="phone",c=xr(e);c.current=e;let x=xr(0),{foreground:b}=L(),{colorScheme:p}=B(),{width:u}=Na(),g=u>=768,y=Pa.OS==="android",P=y?g?Ra:Ca:g?va:Ta,v=y?g?Ia:ka:g?Sa:Va,f=y?Fa:La,C=y?g?Ea:_a:g?Aa:Da,T=p==="dark"?"dark":"light",N=fr(m=>{if(l){let I=m===ve;if(!I&&!/^\d$/.test(m))return;let E=br(c.current??"",s);if(I){let ae=`${E}00`.replace(/^0+/,"")||"";if(ae===""){x.current=0;return}if(ae.length>o+2)return;x.current=2;let ye=Ne(ae,s);c.current=ye,t(ye);return}if(x.current>0){let ae=E.padStart(3,"0"),ye=ae.slice(0,-2),Er=(ae.slice(-2)[1]??"0")+m,mt=(ye+Er).replace(/^0+/,"")||"";if(mt.length>o+2)return;x.current-=1;let pt=Ne(mt,s);c.current=pt,t(pt);return}let oe=(E+m).replace(/^0+/,"")||"";if(oe.length>o+2)return;if(oe===""){c.current=null,t(null);return}let ie=Ne(oe,s);c.current=ie,t(ie);return}let h=c.current??"",w=We(h,s),[S="",M=""]=w.split("."),H=w.includes("."),re=m===s;if(m===ve&&i){if(!H){let E=S===""?"0.00":`${S}.00`;c.current=E,t(E);return}let I=gr.exec(w);if(I){let E=I[1]??"";c.current=E,t(E);return}return}if(re){if(H)return;t(h+s);return}let ct=i?gr.exec(w):null;if(ct&&/^\d$/.test(m)){let I=ct[1]??"";if(m==="0"){let oe=`${I}0`;if(oe.length>o)return;let ie=`${oe}.00`;c.current=ie,t(ie);return}let E=`${I}.${m}0`;c.current=E,t(E);return}if(i&&H){if(M.length===2&&M[0]!=="0"&&M[1]!=="0"&&/^\d$/.test(m)){let I=`${S}${m}`;if(I.length>o)return;let E=`${I}.${M}`;c.current=E,t(E);return}if(M.length===2&&M[1]==="0"){let I=`${S}.${M[0]}${m}`;c.current=I,t(I);return}if(M.length===1&&/^\d$/.test(M)){let I=`${S}.${M}${m}`;c.current=I,t(I);return}if(M.length>=2)return}if(i){if(!H&&S.length>=o)return}else if(S.length>=o)return;let _r=h+m,dt=We(_r,s);c.current=dt,t(dt)},[s,l,i,o,t]),R=fr(()=>{let m=c.current;if(l){if(x.current=0,m==null||m===""){c.current=null,t(null);return}let H=br(m,s).slice(0,-1).replace(/^0+/,"")||"";if(H===""){c.current=null,t(null);return}let re=Ne(H,s);c.current=re,t(re);return}if(m==null||m===""){c.current=null,t(null);return}let h=We(m,s);if(!h.includes(".")){let M=h.slice(0,-1);if(M===""){c.current=null,t(null);return}c.current=M,t(M);return}let[w="",S=""]=h.split(".");if(S.length>0){let M=S.slice(0,-1);if(M===""){c.current=w===""?null:w,t(w===""?null:w);return}let H=`${w}.${M}`;c.current=H,t(H);return}c.current=w===""?null:w,t(w===""?null:w)},[s,l,t]),A=ya(()=>["1","2","3","4","5","6","7","8","9",r==="giftcard"?"-":i?ve:d?"+":"","0","X"],[r,i,d]),[V,W]=ha(0),z=V>0?Math.floor((V-f*(fe-1))/fe):P,$=n!=null&&n>0?Math.floor((n-f*(yr-1))/yr):Math.round(z*(v/P)),_=Math.round(Math.min(z,$)*(C/P));return React.createElement(Te,{style:{width:"100%",gap:f},onLayout:m=>W(m.nativeEvent.layout.width)},[0,1,2,3].map(m=>React.createElement(Te,{key:m,style:{flexDirection:"row",gap:f}},A.slice(m*fe,m*fe+fe).map((h,w)=>{let S=`${m}-${w}`;return h===""?React.createElement(Te,{key:S,style:{width:z,height:$}}):React.createElement(Ha,{key:S,testID:Oa(h),item:h,width:z,height:$,fontSize:_,foreground:b,scheme:T,onPress:h==="X"?R:()=>N(h)})}))))},Ha=({testID:e,item:t,width:r,height:o,fontSize:n,foreground:s,scheme:l,onPress:i})=>React.createElement(wa,{testID:e,onPress:i,style:{width:r,height:o}},({pressed:d})=>React.createElement(Te,{style:{width:r,height:o},className:a(Ba({pressed:d,scheme:l}))},t==="X"?React.createElement(ga,{size:n,color:s}):React.createElement(Ma,{style:{fontSize:n,lineHeight:n*1.4},className:"text-foreground font-munchi"},t)));wr.displayName="MNumpad";import{useEffect as za,useRef as Mr,useState as $a}from"react";import{Pressable as ja,View as Nr}from"react-native";import Ga,{useAnimatedStyle as Wa,useSharedValue as Tr,withSpring as ee}from"react-native-reanimated";var te={damping:20,stiffness:200,mass:.8},vr=({tabs:e,activeTab:t,onTabChange:r,className:o,style:n,disabled:s=!1,size:l="default",variant:i="default",stretch:d=!1,...c})=>{let{colorScheme:x}=B(),b=j[x==="dark"?"dark":"light"],p=l==="compact",u=i==="ghost",g=u?0:p?2:4,y=u?20:p?8:12,P=p?8:12,v=u?7:p?2:4,f=u?22:p?8:12,C=p?2:4,T=Mr({}),N=Tr(0),R=Tr(0),A=Mr(!1),[,V]=$a(0);za(()=>{if(t==null){A.current=!1,R.value=ee(0,te);return}let _=String(t),m=T.current[_];if(m){N.value=ee(m.x,te),R.value=ee(m.width,te),A.current=!0,V(h=>h+1);return}A.current=!1},[t,R,N]);let W=Wa(()=>({transform:[{translateX:N.value}],width:R.value})),z=(_,m)=>{T.current[_]=m;let h=String(t);if(_===h){if(!A.current){N.value=m.x,R.value=m.width,A.current=!0,V(w=>w+1);return}N.value=ee(m.x,te),R.value=ee(m.width,te)}},$=_=>{let m=String(_),h=T.current[m];h&&(N.value=ee(h.x,te),R.value=ee(h.width,te)),r(_)};return React.createElement(Nr,{className:a("flex-row",!u&&"bg-accent",p?"gap-0.5 rounded-xl p-0.5":"gap-1 rounded-2xl p-1",d?"self-stretch":"self-start",o),style:n,...c},React.createElement(Ga.View,{pointerEvents:"none",style:[{position:"absolute",top:g,bottom:g,borderRadius:y,backgroundColor:b.card,shadowColor:b.text,shadowOpacity:u?0:x==="dark"?.08:.14,shadowRadius:p?4:6,shadowOffset:{width:0,height:p?1:2},elevation:p?2:3},W]}),e.map(({key:_,label:m,icon:h,disabled:w=!1})=>{let S=s||w;return React.createElement(ja,{key:String(_),onPress:()=>$(_),disabled:S,onLayout:M=>z(String(_),M.nativeEvent.layout),style:{...d?{flex:1,minWidth:0}:{flexShrink:1,minWidth:0},alignItems:"center",justifyContent:"center",paddingHorizontal:P,paddingVertical:v,borderRadius:f,opacity:S?.5:1}},React.createElement(Nr,{style:{flexDirection:"row",alignItems:"center",gap:C,flexShrink:1,overflow:"hidden"}},h,m&&React.createElement(k,{size:u?"lg":"xl",numberOfLines:1,style:{flexShrink:1}},m)))}))};vr.displayName="MTabs";import Ce from"dayjs";import{useEffect as Ka,useMemo as Cr,useState as Za}from"react";import{Text as qa,View as Ua}from"react-native";var Xa=(e,t)=>{let r=e.diff(t,"minute");if(r<1)return"0m";let o=Math.floor(r/1440),n=r%1440,s=Math.floor(n/60),l=n%60,i="";return o>0&&(i+=`${o}d `),(s>0||o>0)&&(i+=`${s}h `),i+=`${l}m`,i.trim()},Rr=({date:e,className:t="",textClassName:r=""})=>{let o=Cr(()=>Ce(e),[e]),[n,s]=Za(()=>Ce());Ka(()=>{let d=(()=>{let c=Ce(),b=c.add(1,"minute").startOf("minute").diff(c);return setTimeout(()=>{s(Ce())},b>0?b:6e4)})();return()=>clearTimeout(d)},[n]);let l=Cr(()=>Xa(n,o),[n,o]);return React.createElement(Ua,{className:a("rounded-md flex items-center justify-center bg-muted border border-border/60","dark:border-white/20 dark:bg-white/12",t)},React.createElement(qa,{className:a("font-munchi-semibold text-foreground dark:text-neutral-200",r)},l))};Rr.displayName="MTimerUp";import*as F from"react";import{Text as Vr,View as Re}from"react-native";var Ke=F.forwardRef(({className:e,...t},r)=>F.createElement(Re,{ref:r,className:a("rounded-lg border border-border bg-card shadow-sm shadow-foreground/10",e),...t}));Ke.displayName="Card";var Ze=F.forwardRef(({className:e,...t},r)=>F.createElement(Re,{ref:r,className:a("flex flex-col space-y-1.5 p-6",e),...t}));Ze.displayName="CardHeader";var qe=F.forwardRef(({className:e,...t},r)=>F.createElement(Vr,{role:"heading","aria-level":3,ref:r,className:a("text-2xl text-card-foreground font-semibold leading-none tracking-tight",e),...t}));qe.displayName="CardTitle";var Ue=F.forwardRef(({className:e,...t},r)=>F.createElement(Vr,{ref:r,className:a("text-sm text-muted-foreground",e),...t}));Ue.displayName="CardDescription";var Xe=F.forwardRef(({className:e,...t},r)=>F.createElement(de.Provider,{value:"text-card-foreground"},F.createElement(Re,{ref:r,className:a("p-6 pt-0",e),...t})));Xe.displayName="CardContent";var Ye=F.forwardRef(({className:e,...t},r)=>F.createElement(Re,{ref:r,className:a("flex flex-row items-center p-6 pt-0",e),...t}));Ye.displayName="CardFooter";import*as Ve from"react";import Ya,{useAnimatedStyle as Qa,useSharedValue as Ja,withRepeat as es,withSequence as ts,withTiming as Sr}from"react-native-reanimated";var kr=1e3;function Ir({className:e,...t}){let r=Ja(1);Ve.useEffect(()=>{r.value=es(ts(Sr(.5,{duration:kr}),Sr(1,{duration:kr})),-1)},[]);let o=Qa(()=>({opacity:r.value}));return Ve.createElement(Ya.View,{style:o,className:a("rounded-md bg-secondary dark:bg-muted",e),...t})}import{Switch as rs}from"react-native";var Dr=e=>React.createElement(rs,{...e});Dr.displayName="MSwitch";import*as O from"@rn-primitives/table";import*as D from"react";var Qe=D.forwardRef(({className:e,...t},r)=>D.createElement(O.Root,{ref:r,className:a("w-full caption-bottom text-sm",e),...t}));Qe.displayName="Table";var Je=D.forwardRef(({className:e,...t},r)=>D.createElement(O.Header,{ref:r,className:a("border-border [&_tr]:border-b",e),...t}));Je.displayName="TableHeader";var et=D.forwardRef(({className:e,style:t,...r},o)=>D.createElement(O.Body,{ref:o,className:a("flex-1 border-border [&_tr:last-child]:border-0",e),style:[{minHeight:2},t],...r}));et.displayName="TableBody";var tt=D.forwardRef(({className:e,...t},r)=>D.createElement(O.Footer,{ref:r,className:a("bg-muted/50 font-medium [&>tr]:last:border-b-0",e),...t}));tt.displayName="TableFooter";var rt=D.forwardRef(({className:e,...t},r)=>D.createElement(O.Row,{ref:r,className:a("flex-row border-border border-b web:transition-colors web:hover:bg-muted/50 web:data-[state=selected]:bg-muted",e),...t}));rt.displayName="TableRow";var ot=D.forwardRef(({className:e,...t},r)=>D.createElement(de.Provider,{value:"text-muted-foreground"},D.createElement(O.Head,{ref:r,className:a("h-12 px-4 text-left justify-center font-medium [&:has([role=checkbox])]:pr-0",e),...t})));ot.displayName="TableHead";var at=D.forwardRef(({className:e,...t},r)=>D.createElement(O.Cell,{ref:r,className:a("p-4 align-middle [&:has([role=checkbox])]:pr-0",e),...t}));at.displayName="TableCell";import{Portal as os,PortalHost as as}from"@rn-primitives/portal";import{cva as st}from"class-variance-authority";import{AlertCircle as ss}from"lucide-react-native";import{useRef as ns,useState as is}from"react";import{Pressable as ls,TextInput as cs,View as Se}from"react-native";var ds=st("w-full",{variants:{size:{default:"gap-1.5",sm:"gap-1",lg:"gap-2"}},defaultVariants:{size:"default"}}),ms=st("flex-row items-center bg-card border border-border",{variants:{size:{default:"px-4 py-3",sm:"px-3 py-2",lg:"px-5 py-4"},radius:{xl:"rounded-xl","2xl":"rounded-2xl"},hasError:{true:"border border-destructive",false:""},focused:{true:"border border-primary",false:""}},compoundVariants:[{hasError:!0,focused:!0,class:"border border-destructive"}],defaultVariants:{size:"default",radius:"xl",hasError:!1,focused:!1}}),ps=st("flex-1 min-w-0 font-munchi text-foreground p-0",{variants:{size:{default:"text-lg",sm:"text-base",lg:"text-xl"}},defaultVariants:{size:"default"}}),us={default:18,sm:16,lg:20},Ar=({label:e,errorMessage:t,rightIcon:r,size:o="default",radius:n="xl",className:s,inputClassName:l,onFocus:i,onBlur:d,placeholderTextColor:c,...x})=>{let{foreground:b,muted:p,destructive:u}=L(),[g,y]=is(!1),P=ns(null),v=!!t;return React.createElement(Se,{className:a(ds({size:o}),s)},e&&React.createElement(k,{size:o==="lg"?"lg":o==="sm"?"sm":"base",className:"font-munchi-semibold text-foreground"},e),React.createElement(ls,{onPress:()=>P.current?.focus()},React.createElement(Se,{className:ms({size:o,radius:n,hasError:v,focused:g})},React.createElement(cs,{ref:P,placeholderTextColor:c??p,onFocus:f=>{y(!0),i?.(f)},onBlur:f=>{y(!1),d?.(f)},style:{color:b,fontSize:us[o??"default"],paddingVertical:0,includeFontPadding:!1},className:a(ps({size:o}),l),...x}),r&&React.createElement(Se,{className:"ml-2 shrink-0"},r))),v&&React.createElement(Se,{className:"flex-row items-center gap-1.5"},React.createElement(ss,{size:14,color:u}),React.createElement(k,{size:"sm",className:"text-destructive flex-1"},t)))};Ar.displayName="MInput";import*as be from"@rn-primitives/label";import*as xe from"react";var nt=xe.forwardRef(({className:e,onPress:t,onLongPress:r,onPressIn:o,onPressOut:n,...s},l)=>xe.createElement(be.Root,{className:"web:cursor-default",onPress:t,onLongPress:r,onPressIn:o,onPressOut:n},xe.createElement(be.Text,{ref:l,className:a("text-sm text-foreground native:text-base font-medium leading-none web:peer-disabled:cursor-not-allowed web:peer-disabled:opacity-70",e),...s})));nt.displayName=be.Root.displayName;import*as Q from"@rn-primitives/radio-group";import*as Y from"react";import{View as fs}from"react-native";var it=Y.forwardRef(({className:e,...t},r)=>Y.createElement(Q.Root,{className:a("web:grid gap-2",e),...t,ref:r}));it.displayName=Q.Root.displayName;var lt=Y.forwardRef(({className:e,...t},r)=>Y.createElement(Q.Item,{ref:r,className:a("aspect-square h-4 w-4 native:h-5 native:w-5 rounded-full justify-center items-center border border-border web:ring-offset-background web:focus:outline-none web:focus-visible:ring-2 web:focus-visible:ring-ring web:focus-visible:ring-offset-2",t.disabled&&"web:cursor-not-allowed opacity-50",e),...t},Y.createElement(Q.Indicator,{className:"flex items-center justify-center"},Y.createElement(fs,{className:"aspect-square h-[9px] w-[9px] native:h-[10] native:w-[10] bg-primary rounded-full"}))));lt.displayName=Q.Item.displayName;export{bt as MAlert,yt as MAnimation,Pt as MAvatar,Mt as MBadge,vt as MButton,Ke as MCard,Xe as MCardContent,Ue as MCardDescription,Ye as MCardFooter,Ze as MCardHeader,qe as MCardTitle,Ct as MChevron,mr as MConfirmation,er as MCountDown,Vt as MDateTimePicker,St as MDivider,Qt as MDrawerRightPanel,tr as MDropdown,Ar as MInput,nt as MLabel,kt as MLucideIcon,we as MModal,Jt as MNativeAlert,wr as MNumpad,_t as MPicker,ur as MPinPadKeys,os as MPortal,as as MPortalHost,Ft as MProgressBar,it as MRadioGroup,lt as MRadioGroupItem,No as MRequiredLabel,Ot as MResponsiveContainer,ar as MSearch,ir as MSelector,Ir as MSkeleton,Dr as MSwitch,Qe as MTable,et as MTableBody,at as MTableCell,tt as MTableFooter,ot as MTableHead,Je as MTableHeader,rt as MTableRow,vr as MTabs,k as MText,Rr as MTimerUp,lr as MToggle,Ao as ModalContent,zt as ModalHeight,ze as ModalScrollContext,j as NAV_THEME,hr as NumpadMode,Tt as buttonVariants,a as cn,ce as darkVars,Pr as getDecimalSeparator,le as lightVars,Br as typography,B as useColorScheme,L as useIconColors};
|
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@munchi_oy/native-ui",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.6",
|
|
4
4
|
"description": "Munchi design system for React Native",
|
|
5
5
|
"license": "UNLICENSED",
|
|
6
6
|
"publishConfig": {
|
|
7
|
-
"access": "
|
|
7
|
+
"access": "public"
|
|
8
8
|
},
|
|
9
9
|
"main": "./dist/index.js",
|
|
10
10
|
"module": "./dist/index.mjs",
|
|
@@ -29,11 +29,6 @@
|
|
|
29
29
|
"tailwind.config.ts",
|
|
30
30
|
"nativewind-env.d.ts"
|
|
31
31
|
],
|
|
32
|
-
"scripts": {
|
|
33
|
-
"build": "tsup",
|
|
34
|
-
"prepublishOnly": "pnpm build",
|
|
35
|
-
"typecheck": "tsc --noEmit"
|
|
36
|
-
},
|
|
37
32
|
"devDependencies": {
|
|
38
33
|
"@types/react": "~19.2.14",
|
|
39
34
|
"@types/react-native": "~0.70.19",
|
|
@@ -88,5 +83,9 @@
|
|
|
88
83
|
"dayjs": "*",
|
|
89
84
|
"react-countdown": "*",
|
|
90
85
|
"react-native-element-dropdown": "*"
|
|
86
|
+
},
|
|
87
|
+
"scripts": {
|
|
88
|
+
"build": "tsup",
|
|
89
|
+
"typecheck": "tsc --noEmit"
|
|
91
90
|
}
|
|
92
|
-
}
|
|
91
|
+
}
|
package/src/MNumpad.tsx
CHANGED
|
@@ -71,6 +71,7 @@ export interface MNumpadProps {
|
|
|
71
71
|
setCustomAmount: (amount: string | null) => void;
|
|
72
72
|
mode: NumpadMode;
|
|
73
73
|
maxDigits?: number;
|
|
74
|
+
availableHeight?: number;
|
|
74
75
|
}
|
|
75
76
|
|
|
76
77
|
const CELL_SIZE_PHONE = 90;
|
|
@@ -127,11 +128,14 @@ const numpadKeyVariants = cva("items-center justify-center rounded-2xl", {
|
|
|
127
128
|
defaultVariants: { pressed: false, scheme: "light" }
|
|
128
129
|
});
|
|
129
130
|
|
|
131
|
+
const ROWS = 4;
|
|
132
|
+
|
|
130
133
|
export const MNumpad: React.FC<MNumpadProps> = ({
|
|
131
134
|
customAmount,
|
|
132
135
|
setCustomAmount,
|
|
133
136
|
mode,
|
|
134
|
-
maxDigits = 6
|
|
137
|
+
maxDigits = 6,
|
|
138
|
+
availableHeight
|
|
135
139
|
}) => {
|
|
136
140
|
const decimalSeparator = getDecimalSeparator();
|
|
137
141
|
const isCashRegisterMode =
|
|
@@ -417,10 +421,14 @@ export const MNumpad: React.FC<MNumpadProps> = ({
|
|
|
417
421
|
? Math.floor((containerWidth - gap * (COLS - 1)) / COLS)
|
|
418
422
|
: cellSize;
|
|
419
423
|
|
|
420
|
-
const derivedCellHeight =
|
|
421
|
-
|
|
424
|
+
const derivedCellHeight =
|
|
425
|
+
availableHeight != null && availableHeight > 0
|
|
426
|
+
? Math.floor((availableHeight - gap * (ROWS - 1)) / ROWS)
|
|
427
|
+
: Math.round(effectiveCellSize * (cellHeight / cellSize));
|
|
428
|
+
|
|
429
|
+
const derivedFontSize = Math.round(
|
|
430
|
+
Math.min(effectiveCellSize, derivedCellHeight) * (fontSize / cellSize)
|
|
422
431
|
);
|
|
423
|
-
const derivedFontSize = Math.round(fontSize * (effectiveCellSize / cellSize));
|
|
424
432
|
|
|
425
433
|
return (
|
|
426
434
|
<View
|