@kkwww/casual-ui 0.0.0-stage → 2.0.2
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/BRAND.md +34 -0
- package/COMPATIBILITY-2.0.2.md +45 -0
- package/LICENSE-icons +43 -0
- package/NUXT.md +140 -0
- package/README.md +131 -2
- package/UPGRADE-1.3.1.md +43 -0
- package/UPGRADE-1.3.md +128 -0
- package/UPGRADE-1.4.md +35 -0
- package/UPGRADE-1.5.md +46 -0
- package/UPGRADE-2.0.md +45 -0
- package/brand/casual-ui-logo-v1.png +0 -0
- package/brand/casual-ui-symbol.svg +1 -0
- package/brand/casual-ui-wordmark.svg +1 -0
- package/brand/favicon-dark.svg +1 -0
- package/brand/favicon-light.svg +1 -0
- package/brand/favicon.svg +1 -0
- package/brand/theme-favicon.js +1 -0
- package/chunk-3O26VH2L.js +1 -0
- package/chunk-73K6DAZB.js +1 -0
- package/chunk-AJHTWQ5B.js +1 -0
- package/chunk-DSZMS7XD.js +1 -0
- package/chunk-EC2SUYMJ.js +1 -0
- package/chunk-EHLXY56Q.js +1 -0
- package/chunk-FBD64CWY.js +1 -0
- package/chunk-HKDQF2DK.js +1 -0
- package/chunk-IMPED3KO.js +1 -0
- package/chunk-ISPGAXUQ.js +1 -0
- package/chunk-KLB5X6TJ.js +1 -0
- package/chunk-MTT6ZOSW.js +1 -0
- package/chunk-N6HACZLW.js +1 -0
- package/chunk-U3BHQM3U.js +1 -0
- package/chunk-Z4DEGZHK.js +1 -0
- package/command.d.ts +1 -0
- package/command.js +1 -0
- package/data-display.d.ts +1 -0
- package/data-display.js +1 -0
- package/dates.d.ts +1 -0
- package/dates.js +1 -0
- package/feedback.d.ts +2 -0
- package/feedback.js +1 -0
- package/floating.d.ts +1 -0
- package/floating.js +1 -0
- package/fonts/instrument-sans-400-normal-DRC__1Mx.woff2 +0 -0
- package/fonts/instrument-sans-500-normal-Dk9ku72i.woff2 +0 -0
- package/fonts/instrument-sans-600-normal-B7fBEWYG.woff2 +0 -0
- package/forms.d.ts +1 -0
- package/forms.js +1 -0
- package/i18n.d.ts +1 -0
- package/i18n.js +1 -0
- package/icons.d.ts +1 -0
- package/icons.js +1 -0
- package/index.d.ts +77 -0
- package/index.js +1 -0
- package/layout.d.ts +1 -0
- package/layout.js +1 -0
- package/navigation.d.ts +1 -0
- package/navigation.js +1 -0
- package/nuxt/components.mjs +1 -0
- package/nuxt/module.d.ts +22 -0
- package/nuxt/module.mjs +15 -0
- package/nuxt/runtime/composables.d.mts +8 -0
- package/nuxt/runtime/composables.mjs +8 -0
- package/nuxt/runtime/plugin.mjs +25 -0
- package/overlays.d.ts +1 -0
- package/overlays.js +1 -0
- package/package.json +112 -3
- package/primitives.d.ts +1 -0
- package/primitives.js +1 -0
- package/styles.css +144 -0
- package/time.d.ts +1 -0
- package/time.js +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(()=>{const update=()=>{const href='/brand/favicon-'+(document.documentElement.classList.contains('dark')?'dark':'light')+'.svg';document.querySelectorAll('link[rel="icon"]').forEach(link=>{if(link.getAttribute('href')!==href)link.setAttribute('href',href)})};update();new MutationObserver(update).observe(document.documentElement,{attributes:true,attributeFilter:['class']})})();
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as m,d as f,e as b,h as x}from"./chunk-73K6DAZB.js";import{j as u}from"./chunk-DSZMS7XD.js";import{b as s}from"./chunk-KLB5X6TJ.js";import{defineComponent as h,h as o,ref as y,computed as g}from"vue";import*as a from"reka-ui";var S=h({name:"CommandPalette",props:{open:Boolean,query:String,groups:{type:Array,default:()=>[]},loading:Boolean,title:String,placeholder:String},emits:["update:open","update:query","select"],setup(l,{slots:d,emit:r}){let p=y(""),{t:n}=u(),i=g(()=>l.query??p.value),c=g(()=>l.groups.map(e=>({...e,items:e.items.filter(t=>[t.label,t.description,...t.keywords??[]].filter(Boolean).join(" ").toLocaleLowerCase().includes(i.value.toLocaleLowerCase()))})).filter(e=>e.items.length));return()=>o(m,{open:l.open,"onUpdate:open":e=>r("update:open",e)},()=>o(x,{class:"gap-0 overflow-hidden p-0",showClose:!1},()=>[o(f,{class:"sr-only"},()=>l.title??n("command.title")),o(b,{class:"sr-only"},()=>n("command.description")),o(a.ComboboxRoot,{open:!0,"onUpdate:open":e=>{e||r("update:open",!1)},ignoreFilter:!0,resetSearchTermOnBlur:!1,resetSearchTermOnSelect:!1,"onUpdate:modelValue":e=>{!e||e.disabled||(r("select",e),r("update:open",!1))}},()=>[o("div",{class:"flex items-center gap-2 border-b px-4"},[o(s,{name:"Search",class:"text-muted-foreground"}),o(a.ComboboxInput,{modelValue:i.value,"onUpdate:modelValue":e=>{p.value=e,r("update:query",e)},placeholder:l.placeholder??n("form.search"),"aria-label":l.placeholder??n("form.search"),class:"h-12 w-full min-w-0 bg-transparent text-sm outline-none"})]),o(a.ComboboxContent,{position:"inline",class:"max-h-80 overflow-y-auto p-1"},()=>l.loading?o("div",{role:"status",class:"p-6 text-center text-sm text-muted-foreground"},n("feedback.loading")):c.value.length?c.value.map(e=>o(a.ComboboxGroup,{key:e.label},()=>[o(a.ComboboxLabel,{class:"text-muted-foreground px-2 py-1.5 text-xs font-medium"},()=>e.label),...e.items.map(t=>o(a.ComboboxItem,{key:t.id,value:t,disabled:t.disabled,class:"data-[highlighted]:bg-accent data-[disabled]:opacity-50 relative flex cursor-default items-center gap-2 rounded-sm px-2 py-2 text-sm outline-none"},()=>d.item?.({item:t})??[t.icon&&o(s,{name:t.icon}),o("span",{class:"min-w-0"},[o("span",{class:"block truncate"},t.label),t.description&&o("span",{class:"text-muted-foreground block text-xs"},t.description)])]))])):o("div",{role:"status",class:"p-6 text-center text-sm text-muted-foreground"},d.empty?.()??n("table.empty")))])]))}});export{S as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{b as p}from"./chunk-EHLXY56Q.js";import{j as s}from"./chunk-DSZMS7XD.js";import{j as a}from"./chunk-IMPED3KO.js";import{b as g,c as n}from"./chunk-MTT6ZOSW.js";import{b as c}from"./chunk-KLB5X6TJ.js";import{defineComponent as f,h as e,mergeProps as m}from"vue";import*as o from"reka-ui";var u=o.DialogRoot,L=o.DialogTrigger,D=o.DialogClose,x=n("DialogTitle",o.DialogTitle,"text-lg leading-none font-semibold"),v=n("DialogDescription",o.DialogDescription,"text-muted-foreground text-sm"),C=n("DialogHeader","div","flex flex-col gap-2 text-center sm:text-left"),b=n("DialogFooter","div","flex flex-col-reverse gap-2 sm:flex-row sm:justify-end"),h=f({name:"DialogContent",inheritAttrs:!1,props:{showClose:{type:Boolean,default:!0}},setup(t,{attrs:l,slots:i}){let r=p(),{t:d}=s();return()=>e(o.DialogPortal,{to:r},()=>[e(o.DialogOverlay,{class:"fixed inset-0 z-50 bg-black/80"}),e(o.DialogContent,m(l,{"data-slot":"dialog-content",class:g("bg-background fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] max-h-[calc(100svh-2rem)] overflow-y-auto translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg",l.class)}),()=>[i.default?.(),t.showClose&&e(o.DialogClose,{class:"ring-offset-background focus:ring-ring absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden"},()=>[e(c,{name:"X",class:"size-4"}),e("span",{class:"sr-only"},d("actions.close"))])])])}}),S=f({name:"ConfirmDialog",props:{open:Boolean,title:String,description:String,confirmLabel:String,cancelLabel:String,destructive:Boolean},emits:["update:open","confirm"],setup(t,{emit:l}){let{t:i}=s();return()=>e(u,{open:t.open,"onUpdate:open":r=>l("update:open",r)},()=>e(h,null,()=>[e(C,null,()=>[e(x,null,()=>t.title),e(v,null,()=>t.description)]),e(b,null,()=>[e(D,{asChild:!0},()=>e(a,{variant:"secondary"},()=>t.cancelLabel??i("actions.cancel"))),e(a,{variant:t.destructive?"destructive":"default",onClick:()=>l("confirm")},()=>t.confirmLabel??i("actions.confirm"))])]))}});export{u as a,L as b,D as c,x as d,v as e,C as f,b as g,h,S as i};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as s}from"./chunk-DSZMS7XD.js";import{n as i}from"./chunk-IMPED3KO.js";import{c as a}from"./chunk-MTT6ZOSW.js";import{defineComponent as l,h as e}from"vue";var p=a("PageContainer","main","flex flex-1 flex-col gap-4 p-4"),m=a("FilterBar","div","flex flex-wrap items-center gap-2"),f=a("StatsGrid","div","grid gap-4 sm:grid-cols-2 xl:grid-cols-4"),g=a("ContentGrid","div","grid gap-4 xl:grid-cols-2"),u=l({name:"PageHeader",props:{title:String,description:String},setup(r,{slots:t}){return()=>e("header",{class:"flex flex-wrap items-center justify-between gap-4"},[e("div",{class:"min-w-0"},[e("h2",{class:"mb-0.5 text-base font-medium"},r.title),r.description&&e("p",{class:"text-muted-foreground text-sm"},r.description)]),(t.actions||t.default)&&e("div",{class:"flex flex-wrap items-center gap-2"},[t.actions?.(),t.default?.()])])}}),w=l({name:"SettingsLayout",setup(r,{slots:t}){let{t:n}=s();return()=>e("div",{class:"flex flex-col lg:flex-row lg:space-x-12"},[e("aside",{class:"w-full max-w-xl lg:w-48"},[e("nav",{"aria-label":n("nav.settings"),class:"flex flex-col space-y-1"},t.navigation?.())]),e(i,{class:"my-6 lg:hidden"}),e("div",{class:"flex-1 md:max-w-2xl"},[e("section",{class:"max-w-xl space-y-12"},t.default?.())])])}});export{p as a,m as b,f as c,g as d,u as e,w as f};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{defineComponent as w,provide as D,inject as P,computed as u,ref as b}from"vue";var m={"actions.cancel":"Cancel","actions.confirm":"Confirm","actions.close":"Close","actions.save":"Save","actions.delete":"Delete","actions.copy":"Copy","actions.done":"Done","actions.reset":"Reset","form.select":"Select\u2026","form.search":"Search\u2026","form.showPassword":"Show password","form.hidePassword":"Hide password","period.label":"Period","period.today":"Today","period.yesterday":"Yesterday","period.this_month":"This month","period.last_month":"Last month","table.empty":"No results found","table.summary":"{from}\u2013{to} of {total} row(s)","table.rowsPerPage":"Rows per page","table.page":"Page {page} of {pages}","table.previous":"Previous","table.next":"Next","table.previousPage":"Go to previous page","table.nextPage":"Go to next page","nav.breadcrumb":"breadcrumb","nav.pagination":"pagination","nav.settings":"Settings","nav.sidebar":"Sidebar","nav.sidebarDescription":"Displays the mobile sidebar.","nav.toggleSidebar":"Toggle sidebar","nav.organization":"Organization","nav.documentation":"Documentation","nav.platform":"Platform","nav.agent":"Agent","nav.developers":"Developers","nav.dashboard":"Dashboard","nav.orders":"Orders","nav.payments":"Payments","nav.payouts":"Payouts","nav.transactions":"Transactions","nav.reports":"Reports","nav.deposits":"Deposits","nav.withdrawals":"Withdrawals","nav.agent/dashboard":"Agent dashboard","nav.agent/merchants":"Merchants","nav.agent/commissions":"Commissions","nav.agent/transactions":"Agent transactions","nav.agent/settlements":"Settlements","nav.agent/reports":"Agent reports","nav.api-keys":"API Keys","i18n.language":"Language","i18n.exampleDate":"Example date","i18n.exampleNumber":"Example number","i18n.exampleCurrency":"Example currency","demo.buttonClicked":"{variant} button clicked"},l={"actions.cancel":"\u53D6\u6D88","actions.confirm":"\u786E\u8BA4","actions.close":"\u5173\u95ED","actions.save":"\u4FDD\u5B58","actions.delete":"\u5220\u9664","actions.copy":"\u590D\u5236","actions.done":"\u5B8C\u6210","actions.reset":"\u91CD\u7F6E","form.select":"\u8BF7\u9009\u62E9\u2026","form.search":"\u641C\u7D22\u2026","form.showPassword":"\u663E\u793A\u5BC6\u7801","form.hidePassword":"\u9690\u85CF\u5BC6\u7801","period.label":"\u5468\u671F","period.today":"\u4ECA\u5929","period.yesterday":"\u6628\u5929","period.this_month":"\u672C\u6708","period.last_month":"\u4E0A\u6708","table.empty":"\u6682\u65E0\u7ED3\u679C","table.summary":"\u7B2C {from}\u2013{to} \u6761\uFF0C\u5171 {total} \u6761","table.rowsPerPage":"\u6BCF\u9875\u6761\u6570","table.page":"\u7B2C {page} \u9875\uFF0C\u5171 {pages} \u9875","table.previous":"\u4E0A\u4E00\u9875","table.next":"\u4E0B\u4E00\u9875","table.previousPage":"\u8F6C\u5230\u4E0A\u4E00\u9875","table.nextPage":"\u8F6C\u5230\u4E0B\u4E00\u9875","nav.breadcrumb":"\u9762\u5305\u5C51\u5BFC\u822A","nav.pagination":"\u5206\u9875\u5BFC\u822A","nav.settings":"\u8BBE\u7F6E","nav.sidebar":"\u4FA7\u680F","nav.sidebarDescription":"\u663E\u793A\u79FB\u52A8\u7AEF\u4FA7\u680F\u3002","nav.toggleSidebar":"\u5207\u6362\u4FA7\u680F","nav.organization":"\u7EC4\u7EC7","nav.documentation":"\u6587\u6863","nav.platform":"\u5E73\u53F0","nav.agent":"\u4EE3\u7406","nav.developers":"\u5F00\u53D1\u8005","nav.dashboard":"\u9996\u9875","nav.orders":"\u8BA2\u5355","nav.payments":"\u6536\u6B3E","nav.payouts":"\u4ED8\u6B3E","nav.transactions":"\u4EA4\u6613\u6D41\u6C34","nav.reports":"\u62A5\u8868","nav.deposits":"\u5145\u503C","nav.withdrawals":"\u63D0\u73B0","nav.agent/dashboard":"\u4EE3\u7406\u9996\u9875","nav.agent/merchants":"\u5546\u6237","nav.agent/commissions":"\u4F63\u91D1","nav.agent/transactions":"\u4EE3\u7406\u6D41\u6C34","nav.agent/settlements":"\u7ED3\u7B97","nav.agent/reports":"\u4EE3\u7406\u62A5\u8868","nav.api-keys":"API \u5BC6\u94A5","i18n.language":"\u8BED\u8A00","i18n.exampleDate":"\u65E5\u671F\u793A\u4F8B","i18n.exampleNumber":"\u6570\u5B57\u793A\u4F8B","i18n.exampleCurrency":"\u8D27\u5E01\u793A\u4F8B","demo.buttonClicked":"\u5DF2\u70B9\u51FB {variant} \u6309\u94AE"};Object.assign(m,{"time.start":"Start time","time.end":"End time","time.chooseDateTimeRange":"Choose date and time range","time.invalidRange":"Enter complete dates and times, including seconds.","time.rangeOrder":"End time must be on or after start time.","time.rangeBounds":"The range is outside the allowed dates and times.","time.rangeUnavailable":"A selected date is unavailable.","time.choose":"Time","time.chooseDateTime":"Choose date and time","time.hour":"Hour","time.minute":"Minute","time.second":"Second","time.dayPeriod":"AM/PM","date.apply":"Apply","date.clearAction":"Clear","date.chooseDate":"Choose date","date.chooseRange":"Choose date range","date.clear":"Clear dates","date.previousMonth":"Previous month","date.nextMonth":"Next month","feedback.loading":"Loading\u2026","feedback.notifications":"Notifications","command.title":"Search","command.description":"Search and select an item. Use arrow keys to navigate."});Object.assign(l,{"time.start":"\u5F00\u59CB\u65F6\u95F4","time.end":"\u7ED3\u675F\u65F6\u95F4","time.chooseDateTimeRange":"\u9009\u62E9\u65E5\u671F\u65F6\u95F4\u533A\u95F4","time.invalidRange":"\u8BF7\u586B\u5199\u5B8C\u6574\u65E5\u671F\u53CA\u65F6\u95F4\uFF0C\u7CBE\u786E\u5230\u79D2\u3002","time.rangeOrder":"\u7ED3\u675F\u65F6\u95F4\u4E0D\u80FD\u65E9\u4E8E\u5F00\u59CB\u65F6\u95F4\u3002","time.rangeBounds":"\u6240\u9009\u533A\u95F4\u8D85\u51FA\u4E86\u5141\u8BB8\u7684\u65E5\u671F\u65F6\u95F4\u8303\u56F4\u3002","time.rangeUnavailable":"\u6240\u9009\u65E5\u671F\u4E0D\u53EF\u7528\u3002","time.choose":"\u65F6\u95F4","time.chooseDateTime":"\u9009\u62E9\u65E5\u671F\u548C\u65F6\u95F4","time.hour":"\u65F6","time.minute":"\u5206","time.second":"\u79D2","time.dayPeriod":"\u4E0A\u5348/\u4E0B\u5348","date.apply":"\u5E94\u7528","date.clearAction":"\u6E05\u7A7A","date.chooseDate":"\u9009\u62E9\u65E5\u671F","date.chooseRange":"\u9009\u62E9\u65E5\u671F\u533A\u95F4","date.clear":"\u6E05\u7A7A\u65E5\u671F","date.previousMonth":"\u4E0A\u4E2A\u6708","date.nextMonth":"\u4E0B\u4E2A\u6708","feedback.loading":"\u52A0\u8F7D\u4E2D\u2026","feedback.notifications":"\u901A\u77E5","command.title":"\u641C\u7D22","command.description":"\u641C\u7D22\u5E76\u9009\u62E9\u6761\u76EE\uFF0C\u4F7F\u7528\u65B9\u5411\u952E\u5207\u6362\u3002"});var x=Object.freeze({en:m,"zh-CN":l}),C=Object.freeze(["en","zh-CN"]);function c(e="en"){try{return Intl.getCanonicalLocales(e)[0]||"en"}catch{return"en"}}function p(e="en",s={}){e=c(e);let d=e.toLowerCase().startsWith("zh")?l:m,t=(a,o)=>Object.hasOwn(a,o)?a[o]:void 0,n=(a,o={},v)=>String(t(s,a)??t(d,a)??t(m,a)??v??a).replace(/\{(\w+)\}/g,(y,g)=>Object.hasOwn(o,g)&&o[g]!==void 0?String(o[g]):y),i=(a,o={})=>new Intl.NumberFormat(e,o).format(a);return{locale:e,t:n,formatNumber:i,formatDate:(a,o={})=>new Intl.DateTimeFormat(e,o).format(a instanceof Date?a:new Date(a)),formatCurrency:(a,o="USD",v={})=>i(a,{style:"currency",currency:o,...v})}}var h=Symbol("casual-i18n");function A(e,s=b({}),d=t=>{e.value=c(t)}){let t=u(()=>p(e.value,s.value));return{locale:u(()=>c(e.value)),setLocale:d,t:(...n)=>t.value.t(...n),formatNumber:(...n)=>t.value.formatNumber(...n),formatDate:(...n)=>t.value.formatDate(...n),formatCurrency:(...n)=>t.value.formatCurrency(...n)}}function T(e,s){e.provide(h,s)}var R=w({name:"I18nProvider",props:{locale:String,defaultLocale:{type:String,default:"en"},messages:{type:Object,default:()=>({})}},emits:["update:locale"],setup(e,{slots:s,emit:d}){let t=b(e.defaultLocale),n=u(()=>c(e.locale??t.value)),i=u(()=>p(n.value,e.messages));return D(h,{locale:n,setLocale:r=>{t.value=c(r),d("update:locale",t.value)},t:(...r)=>i.value.t(...r),formatNumber:(...r)=>i.value.formatNumber(...r),formatDate:(...r)=>i.value.formatDate(...r),formatCurrency:(...r)=>i.value.formatCurrency(...r)}),()=>s.default?.()}}),M=()=>P(h,null)??{...p(),locale:b("en"),setLocale:()=>{}};export{m as a,l as b,x as c,C as d,c as e,p as f,A as g,T as h,R as i,M as j};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as u}from"./chunk-DSZMS7XD.js";import{j as m}from"./chunk-IMPED3KO.js";import{b as l}from"./chunk-MTT6ZOSW.js";import{b as c}from"./chunk-KLB5X6TJ.js";import{defineComponent as p,h as e,ref as C,inject as v,provide as b,computed as h}from"vue";import*as r from"reka-ui";var d=Symbol("casual-toast"),w=Symbol("casual-toast-config"),x=Object.freeze(["top-left","bottom-left","top-right","bottom-right","center","top-center","bottom-center"]),y=t=>x.includes(t)?t:"bottom-right";function T(){let t=C([]),a=0;return{items:t,add(i){let n=String(++a);return t.value=[...t.value,{...i,id:n}].slice(-5),n},remove(i){t.value=t.value.filter(n=>n.id!==i)},update(i,n){t.value=t.value.map(s=>s.id===i?{...s,...n,id:i}:s)},clear(){t.value=[]}}}function V(t,a){t.provide(d,a)}function S(){let t=v(d,null);if(!t)throw new Error("Wrap the application in ToastProvider, or enable the Casual Nuxt module");return t}var X=p({name:"ToastProvider",props:{duration:{type:Number,default:5e3},viewport:{type:Boolean,default:!0},position:{type:String,default:"bottom-right"},viewportClass:[String,Array,Object],viewportStyle:[String,Array,Object]},setup(t,{slots:a}){let i=v(d,null)??T();b(d,i),b(w,h(()=>({position:y(t.position),duration:t.duration})));let{t:n}=u();return()=>e(r.ToastProvider,{duration:t.duration,label:n("feedback.notifications")},()=>[a.default?.(),t.viewport&&e(R,{class:t.viewportClass,style:t.viewportStyle})])}}),R=p({name:"ToastViewport",inheritAttrs:!1,props:{position:String},setup(t,{attrs:a}){let i=S(),{t:n}=u(),s=v(w,h(()=>({position:"bottom-right",duration:5e3})));return()=>x.map(f=>{let g=i.items.value.filter(o=>y(o.position??t.position??s.value.position)===f);return g.length?e(r.ToastProvider,{key:f,duration:s.value.duration,label:n("feedback.notifications")},()=>[...g.map(o=>e(r.ToastRoot,{key:o.id,open:!0,duration:o.duration,"onUpdate:open":k=>{k||i.remove(o.id)},class:l("cu-toast bg-background text-foreground flex items-start gap-3 rounded-lg border p-4 shadow-lg",o.variant&&"cu-semantic-"+o.variant)},()=>[e(c,{name:{success:"CircleCheck",error:"CircleX",warning:"CircleAlert",info:"Info"}[o.variant]??"Info",class:"mt-0.5 shrink-0"}),e("div",{class:"min-w-0 flex-1 space-y-1"},[o.title&&e(r.ToastTitle,{class:"text-sm font-medium"},()=>o.title),o.description&&e(r.ToastDescription,{class:"break-words text-sm"},()=>o.description),o.action&&e(r.ToastAction,{asChild:!0,altText:o.action.label},()=>e(m,{variant:"outline",size:"sm",class:"h-auto min-h-8 max-w-full whitespace-normal break-words",onClick:o.action.onClick},()=>o.action.label))]),e(r.ToastClose,{asChild:!0},()=>e(m,{variant:"ghost",size:"icon",class:"size-6 shrink-0","aria-label":n("actions.close")},()=>e(c,{name:"X"})))])),e(r.ToastViewport,{label:n("feedback.notifications"),"data-position":f,class:l("cu-toast-viewport",a.class),style:a.style})]):null})}}),B=p({name:"Alert",props:{title:String,description:String,variant:{type:String,default:"info"},icon:String},setup(t,{slots:a}){return()=>e("div",{role:t.variant==="error"?"alert":"status",class:l("flex items-start gap-3 rounded-lg border p-4",t.variant&&"cu-semantic-"+t.variant)},[e(c,{name:t.icon??{success:"CircleCheck",warning:"CircleAlert",error:"CircleX",info:"Info"}[t.variant]??"Info",class:"mt-0.5 shrink-0"}),e("div",{class:"min-w-0 flex-1 space-y-1"},[t.title&&e("h3",{class:"text-sm font-medium"},t.title),t.description&&e("p",{class:"break-words text-sm"},t.description),a.default?.(),a.actions?.()])])}}),K=p({name:"Skeleton",inheritAttrs:!1,props:{shape:{type:String,default:"rectangle"}},setup(t,{attrs:a}){let{t:i}=u();return()=>e("div",{...a,role:"status","aria-label":i("feedback.loading"),class:l("bg-muted motion-safe:animate-pulse motion-reduce:animate-none",t.shape==="circle"?"size-8 rounded-full":"h-4 w-full rounded-md",a.class)})}});export{x as a,T as b,V as c,S as d,X as e,R as f,B as g,K as h};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{inject as e}from"vue";var o=Symbol("casual-config");function r(t,a={}){t.provide(o,a)}var i=()=>e(o,{}).portalTarget;export{r as a,i as b};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{b as y}from"./chunk-EHLXY56Q.js";import{j as g}from"./chunk-DSZMS7XD.js";import{j as f,p as v}from"./chunk-IMPED3KO.js";import{b as h}from"./chunk-MTT6ZOSW.js";import{b as d,c as b}from"./chunk-KLB5X6TJ.js";import{defineComponent as m,h as a,ref as P}from"vue";import*as i from"reka-ui";var k=[{label:"Platform",items:[["Dashboard","dashboard","LayoutGrid"],["Orders","orders","ShoppingBag"],["Payments","payments","CreditCard"],["Payouts","payouts","Banknote"],["Transactions","transactions","ArrowLeftRight"],["Reports","reports","FileText"],["Deposits","deposits","LogIn"],["Withdrawals","withdrawals","LogOut"]]},{label:"Agent",items:[["Agent dashboard","agent/dashboard","LayoutDashboard"],["Merchants","agent/merchants","Users"],["Commissions","agent/commissions","Percent"],["Agent transactions","agent/transactions","ArrowLeftRight"],["Settlements","agent/settlements","Landmark"],["Agent reports","agent/reports","FileText"]]},{label:"Developers",items:[["API Keys","api-keys","KeyRound"]]}],x=m({name:"NavGroup",props:{label:String,items:{type:Array,default:()=>[]},basePath:{type:String,default:"/s-organization"},currentPath:{type:String,default:""}},emits:["navigate"],setup(e,{emit:t,slots:n}){return()=>a("section",{class:"cu-nav-group"},[a("div",{class:"cu-nav-label"},e.label),a("ul",null,e.items.map(([s,o,u])=>{let r=e.basePath+"/"+o,l=e.currentPath===r||e.currentPath.startsWith(r+"/"),c={href:r,"aria-current":l?"page":void 0,class:h("cu-nav-item",l&&"is-active"),onClick:p=>t("navigate",p)};return a("li",{key:o},n.link?.({title:s,path:o,icon:u,href:r,active:l,attrs:c})??a("a",c,[a(d,{name:u}),a("span",null,s)]))}))])}}),w=m({name:"Breadcrumbs",props:{items:{type:Array,default:()=>[]}},setup(e){let{t}=g();return()=>a("nav",{"aria-label":t("nav.breadcrumb")},[a("ol",{class:"flex flex-wrap items-center gap-1.5 text-sm"},e.items.map((n,s)=>a("li",{class:"inline-flex items-center gap-1.5"},[s>0&&a(d,{name:"ChevronRight",class:"text-muted-foreground size-3.5"}),n.href&&s<e.items.length-1?a("a",{class:"text-muted-foreground hover:text-foreground",href:n.href},n.title):a("span",{"aria-current":s===e.items.length-1?"page":void 0},n.title)])))])}}),z={groups:{type:Array,default:()=>k},currentPath:{type:String,default:""},basePath:{type:String,default:"/s-organization"},organizationName:String,user:Object,brandHref:String,userHref:{type:String,default:"/settings/profile"}},C=m({name:"SidebarContent",props:z,emits:["navigate","organization"],setup(e,{emit:t,slots:n}){let{t:s}=g();return()=>{let o=e.organizationName??s("nav.organization"),u=e.groups===k?e.groups.map(r=>({...r,label:s("nav."+r.label.toLowerCase()),items:r.items.map(([l,c,p])=>[s("nav."+c,{},l),c,p])})):e.groups;return[a("div",{class:"cu-sidebar-head"},[n.brand?.({href:e.brandHref??e.basePath+"/dashboard"})??a("a",{href:e.brandHref??e.basePath+"/dashboard",class:"cu-sidebar-brand"},[a("span",{class:"cu-sidebar-symbol"},[a(b,{width:24,height:24})]),a("span",{class:"cu-sidebar-wordmark"},[a("span",{style:{display:"inline-block",width:"109px",overflow:"hidden"}},[a(b,{variant:"wordmark",width:141,height:32,style:{marginLeft:"-32px",maxWidth:"none"}})])])]),n.organization?.({organizationName:o})??a("button",{class:"cu-organization-button",type:"button",onClick:()=>t("organization")},[a("span",null,o),a(d,{name:"ChevronsUpDown"})])]),a("div",{class:"cu-sidebar-scroll"},u.map(r=>a(x,{...r,key:r.label,basePath:e.basePath,currentPath:e.currentPath,onNavigate:l=>t("navigate",l)},{link:n.link}))),a("div",{class:"cu-sidebar-footer"},[n.footer?.()??a("a",{href:"https://docs.dayangpay.com",target:"_blank",rel:"noreferrer",class:"cu-nav-item"},[a(d,{name:"BookOpen"}),a("span",null,s("nav.documentation"))]),n.user?.({user:e.user,organizationName:o,href:e.userHref})??(e.user&&a("a",{href:e.userHref,class:"cu-sidebar-user"},[a(v,{src:e.user.avatar,name:e.user.name}),a("span",null,[a("span",null,e.user.name),a("small",null,o)]),a(d,{name:"ChevronsUpDown"})]))])]}}}),H=m({name:"AppShell",props:{...z,breadcrumbs:{type:Array,default:()=>[]}},emits:["navigate","organization"],setup(e,{slots:t,emit:n}){let s=y(),o=P(!1),u=P(!1),{t:r}=g(),l=()=>a(C,{groups:e.groups,currentPath:e.currentPath,basePath:e.basePath,organizationName:e.organizationName,user:e.user,brandHref:e.brandHref,userHref:e.userHref,onNavigate:c=>{o.value=!1,n("navigate",c)},onOrganization:()=>n("organization")},{footer:t.footer,link:t.link,brand:t.brand,organization:t.organization,user:t.user});return()=>a("div",{class:h("cu-app-shell",u.value&&"cu-sidebar-collapsed")},[a("aside",{class:"cu-desktop-sidebar"},[l()]),a(i.DialogRoot,{open:o.value,"onUpdate:open":c=>o.value=c},()=>a(i.DialogPortal,{to:s},()=>[a(i.DialogOverlay,{class:"fixed inset-0 z-50 bg-black/80"}),a(i.DialogContent,{class:"cu-mobile-sidebar"},()=>[a(i.DialogTitle,{class:"sr-only"},()=>r("nav.sidebar")),a(i.DialogDescription,{class:"sr-only"},()=>r("nav.sidebarDescription")),l()])])),a("div",{class:"cu-app-content"},[a("header",{class:"cu-app-header"},[a(f,{variant:"ghost",size:"icon",class:"cu-mobile-trigger -ml-1 h-7 w-7","aria-label":r("nav.toggleSidebar"),onClick:()=>o.value=!0},()=>a(d,{name:"PanelLeftOpen"})),a(f,{variant:"ghost",size:"icon",class:"cu-desktop-trigger -ml-1 h-7 w-7","aria-label":r("nav.toggleSidebar"),onClick:()=>u.value=!u.value},()=>a(d,{name:u.value?"PanelLeftOpen":"PanelLeftClose"})),a(w,{items:e.breadcrumbs}),t["header-actions"]&&a("div",{class:"ml-auto flex min-w-0 items-center gap-2"},t["header-actions"]())]),t.default?.()])])}});export{k as a,x as b,w as c,C as d,H as e};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as xe,b as De,j as ge}from"./chunk-N6HACZLW.js";import{j as N}from"./chunk-DSZMS7XD.js";import{j as S}from"./chunk-IMPED3KO.js";import{b as J}from"./chunk-MTT6ZOSW.js";import{b as L}from"./chunk-KLB5X6TJ.js";import{defineComponent as Be,h as d,ref as pe,onMounted as aa,onBeforeUnmount as ta,computed as be}from"vue";function q(e,a){return e-a*Math.floor(e/a)}var Me=1721426;function B(e,a,t,r){a=F(e,a);let n=a-1,o=-2;return t<=2?o=0:P(a)&&(o=-1),Me-1+365*n+Math.floor(n/4)-Math.floor(n/100)+Math.floor(n/400)+Math.floor((367*t-362)/12+o+r)}function P(e){return e%4===0&&(e%100!==0||e%400===0)}function F(e,a){return e==="BC"?1-a:a}function Fe(e){let a="AD";return e<=0&&(a="BC",e=1-e),[a,e]}var Ge={standard:[31,28,31,30,31,30,31,31,30,31,30,31],leapyear:[31,29,31,30,31,30,31,31,30,31,30,31]},y=class{fromJulianDay(a){let t=a,r=t-Me,n=Math.floor(r/146097),o=q(r,146097),s=Math.floor(o/36524),c=q(o,36524),f=Math.floor(c/1461),u=q(c,1461),l=Math.floor(u/365),m=n*400+s*100+f*4+l+(s!==4&&l!==4?1:0),[i,b]=Fe(m),h=t-B(i,b,1,1),g=2;t<B(i,b,3,1)?g=0:P(b)&&(g=1);let M=Math.floor(((h+g)*12+373)/367),$=t-B(i,b,M,1)+1;return new w(i,b,M,$)}toJulianDay(a){return B(a.era,a.year,a.month,a.day)}getDaysInMonth(a){return Ge[P(a.year)?"leapyear":"standard"][a.month-1]}getMonthsInYear(a){return 12}getDaysInYear(a){return P(a.year)?366:365}getMaximumMonthsInYear(){return 12}getMaximumDaysInMonth(){return 31}getYearsInEra(a){return 9999}getEras(){return["BC","AD"]}isInverseEra(a){return a.era==="BC"}balanceDate(a){a.year<=0&&(a.era=a.era==="BC"?"AD":"BC",a.year=1-a.year)}constructor(){this.identifier="gregory"}};function K(e,a){return e.isEqual?.(a)??a.isEqual?.(e)??e.identifier===a.identifier}function Te(e){return D(Date.now(),e)}function Q(e){return Ie(Te(e))}function X(e,a){return e.calendar.toJulianDay(e)-a.calendar.toJulianDay(a)}function ee(e,a){return we(e)-we(a)}function we(e){return e.hour*36e5+e.minute*6e4+e.second*1e3+e.millisecond}var _=null,Ve=!1;function G(){return _==null&&(_=new Intl.DateTimeFormat().resolvedOptions().timeZone),_}function ae(){return Ve}function v(e){e=p(e,new y);let a=F(e.era,e.year);return Se(a,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}function Se(e,a,t,r,n,o,s){let c=new Date;return c.setUTCHours(r,n,o,s),c.setUTCFullYear(e,a-1,t),c.getTime()}function te(e,a){if(a==="UTC")return 0;if(e>0&&a===G()&&!ae())return new Date(e).getTimezoneOffset()*-6e4;let{year:t,month:r,day:n,hour:o,minute:s,second:c}=Ee(e,a);return Se(t,r,n,o,s,c,0)-Math.floor(e/1e3)*1e3}var Ce=new Map;function Ee(e,a){let t=Ce.get(a);t||(t=new Intl.DateTimeFormat("en-US",{timeZone:a,hour12:!1,era:"short",year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"}),Ce.set(a,t));let r=t.formatToParts(new Date(e)),n={};for(let o of r)o.type!=="literal"&&(n[o.type]=o.value);return{year:n.era==="BC"||n.era==="B"?-n.year+1:+n.year,month:+n.month,day:+n.day,hour:n.hour==="24"?0:+n.hour,minute:+n.minute,second:+n.second}}var ve=864e5;function He(e,a,t,r){return(t===r?[t]:[t,r]).filter(o=>je(e,a,o))}function je(e,a,t){let r=Ee(t,a);return e.year===r.year&&e.month===r.month&&e.day===r.day&&e.hour===r.hour&&e.minute===r.minute&&e.second===r.second}function x(e,a,t="compatible"){let r=T(e);if(a==="UTC")return v(r);if(a===G()&&t==="compatible"&&!ae()){r=p(r,new y);let f=new Date,u=F(r.era,r.year);return f.setFullYear(u,r.month-1,r.day),f.setHours(r.hour,r.minute,r.second,r.millisecond),f.getTime()}let n=v(r),o=te(n-ve,a),s=te(n+ve,a),c=He(r,a,n-o,n-s);if(c.length===1)return c[0];if(c.length>1)switch(t){case"compatible":case"earlier":return c[0];case"later":return c[c.length-1];case"reject":throw new RangeError("Multiple possible absolute times found")}switch(t){case"earlier":return Math.min(n-o,n-s);case"compatible":case"later":return Math.max(n-o,n-s);case"reject":throw new RangeError("No such absolute time found")}}function re(e,a,t="compatible"){return new Date(x(e,a,t))}function D(e,a){let t=te(e,a),r=new Date(e+t),n=r.getUTCFullYear(),o=r.getUTCMonth()+1,s=r.getUTCDate(),c=r.getUTCHours(),f=r.getUTCMinutes(),u=r.getUTCSeconds(),l=r.getUTCMilliseconds();return new E(n<1?"BC":"AD",n<1?-n+1:n,o,s,a,t,c,f,u,l)}function Ie(e){return new w(e.calendar,e.era,e.year,e.month,e.day)}function T(e,a){let t=0,r=0,n=0,o=0;if("timeZone"in e)({hour:t,minute:r,second:n,millisecond:o}=e);else if("hour"in e&&!a)return e;return a&&({hour:t,minute:r,second:n,millisecond:o}=a),new Y(e.calendar,e.era,e.year,e.month,e.day,t,r,n,o)}function p(e,a){if(K(e.calendar,a))return e;let t=a.fromJulianDay(e.calendar.toJulianDay(e)),r=e.copy();return r.calendar=a,r.era=t.era,r.year=t.year,r.month=t.month,r.day=t.day,I(r),r}function Oe(e,a,t){if(e instanceof E)return e.timeZone===a?e:ke(e,a);let r=x(e,a,t);return D(r,a)}function Ze(e){let a=v(e)-e.offset;return new Date(a)}function ke(e,a){let t=v(e)-e.offset;return p(D(t,a),e.calendar)}var W=36e5;function R(e,a){let t=e.copy(),r="hour"in t?Ye(t,a):0;ne(t,a.years||0),t.calendar.balanceYearMonth&&t.calendar.balanceYearMonth(t,e),t.month+=a.months||0,oe(t),Ae(t),t.day+=(a.weeks||0)*7,t.day+=a.days||0,t.day+=r,ze(t),t.calendar.balanceDate&&t.calendar.balanceDate(t),t.year<1&&(t.year=1,t.month=1,t.day=1);let n=t.calendar.getYearsInEra(t);if(t.year>n){let s=t.calendar.isInverseEra?.(t);t.year=n,t.month=s?1:t.calendar.getMonthsInYear(t),t.day=s?1:t.calendar.getDaysInMonth(t)}t.month<1&&(t.month=1,t.day=1);let o=t.calendar.getMonthsInYear(t);return t.month>o&&(t.month=o,t.day=t.calendar.getDaysInMonth(t)),t.day=Math.max(1,Math.min(t.calendar.getDaysInMonth(t),t.day)),t}function ne(e,a){e.calendar.isInverseEra?.(e)&&(a=-a),e.year+=a}function oe(e){for(;e.month<1;)ne(e,-1),e.month+=e.calendar.getMonthsInYear(e);let a=0;for(;e.month>(a=e.calendar.getMonthsInYear(e));)e.month-=a,ne(e,1)}function ze(e){for(;e.day<1;)e.month--,oe(e),e.day+=e.calendar.getDaysInMonth(e);for(;e.day>e.calendar.getDaysInMonth(e);)e.day-=e.calendar.getDaysInMonth(e),e.month++,oe(e)}function Ae(e){e.month=Math.max(1,Math.min(e.calendar.getMonthsInYear(e),e.month)),e.day=Math.max(1,Math.min(e.calendar.getDaysInMonth(e),e.day))}function I(e){e.calendar.constrainDate&&e.calendar.constrainDate(e),e.year=Math.max(1,Math.min(e.calendar.getYearsInEra(e),e.year)),Ae(e)}function se(e){let a={};for(let t in e)typeof e[t]=="number"&&(a[t]=-e[t]);return a}function ce(e,a){return R(e,se(a))}function H(e,a){let t=e.copy();return a.era!=null&&(t.era=a.era),a.year!=null&&(t.year=a.year),a.month!=null&&(t.month=a.month),a.day!=null&&(t.day=a.day),I(t),t}function U(e,a){let t=e.copy();return a.hour!=null&&(t.hour=a.hour),a.minute!=null&&(t.minute=a.minute),a.second!=null&&(t.second=a.second),a.millisecond!=null&&(t.millisecond=a.millisecond),de(t),t}function Je(e){e.second+=Math.floor(e.millisecond/1e3),e.millisecond=V(e.millisecond,1e3),e.minute+=Math.floor(e.second/60),e.second=V(e.second,60),e.hour+=Math.floor(e.minute/60),e.minute=V(e.minute,60);let a=Math.floor(e.hour/24);return e.hour=V(e.hour,24),a}function de(e){e.millisecond=Math.max(0,Math.min(e.millisecond,999)),e.second=Math.max(0,Math.min(e.second,59)),e.minute=Math.max(0,Math.min(e.minute,59)),e.hour=Math.max(0,Math.min(e.hour,23))}function V(e,a){let t=e%a;return t<0&&(t+=a),t}function Ye(e,a){return e.hour+=a.hours||0,e.minute+=a.minutes||0,e.second+=a.seconds||0,e.millisecond+=a.milliseconds||0,Je(e)}function ie(e,a){let t=e.copy();return Ye(t,a),t}function Ue(e,a){return ie(e,se(a))}function j(e,a,t,r){let n=e.copy();switch(a){case"era":{let o=e.calendar.getEras(),s=o.indexOf(e.era);if(s<0)throw new Error("Invalid era: "+e.era);s=C(s,t,0,o.length-1,r?.round),n.era=o[s],I(n);break}case"year":n.calendar.isInverseEra?.(n)&&(t=-t),n.year=C(e.year,t,-1/0,9999,r?.round),n.year===-1/0&&(n.year=1),n.calendar.balanceYearMonth&&n.calendar.balanceYearMonth(n,e);break;case"month":n.month=C(e.month,t,1,e.calendar.getMonthsInYear(e),r?.round);break;case"day":n.day=C(e.day,t,1,e.calendar.getDaysInMonth(e),r?.round);break;default:throw new Error("Unsupported field "+a)}return e.calendar.balanceDate&&e.calendar.balanceDate(n),I(n),n}function z(e,a,t,r){let n=e.copy();switch(a){case"hour":{let o=e.hour,s=0,c=23;if(r?.hourCycle===12){let f=o>=12;s=f?12:0,c=f?23:11}n.hour=C(o,t,s,c,r?.round);break}case"minute":n.minute=C(e.minute,t,0,59,r?.round);break;case"second":n.second=C(e.second,t,0,59,r?.round);break;case"millisecond":n.millisecond=C(e.millisecond,t,0,999,r?.round);break;default:throw new Error("Unsupported field "+a)}return n}function C(e,a,t,r,n=!1){if(n){e+=Math.sign(a),e<t&&(e=r);let o=Math.abs(a);a>0?e=Math.ceil(e/o)*o:e=Math.floor(e/o)*o,e>r&&(e=t)}else e+=a,e<t?e=r-(t-e-1):e>r&&(e=t+(e-r-1));return e}function le(e,a){let t;if(a.years!=null&&a.years!==0||a.months!=null&&a.months!==0||a.weeks!=null&&a.weeks!==0||a.days!=null&&a.days!==0){let n=R(T(e),{years:a.years,months:a.months,weeks:a.weeks,days:a.days});t=x(n,e.timeZone)}else t=v(e)-e.offset;t+=a.milliseconds||0,t+=(a.seconds||0)*1e3,t+=(a.minutes||0)*6e4,t+=(a.hours||0)*36e5;let r=D(t,e.timeZone);return p(r,e.calendar)}function Le(e,a){return le(e,se(a))}function We(e,a,t,r){switch(a){case"hour":{let n=0,o=23;if(r?.hourCycle===12){let h=e.hour>=12;n=h?12:0,o=h?23:11}let s=T(e),c=p(U(s,{hour:n}),new y),f=[x(c,e.timeZone,"earlier"),x(c,e.timeZone,"later")].filter(h=>D(h,e.timeZone).day===c.day)[0],u=p(U(s,{hour:o}),new y),l=[x(u,e.timeZone,"earlier"),x(u,e.timeZone,"later")].filter(h=>D(h,e.timeZone).day===u.day).pop(),m=v(e)-e.offset,i=Math.floor(m/W),b=m%W;return m=C(i,t,Math.floor(f/W),Math.floor(l/W),r?.round)*W+b,p(D(m,e.timeZone),e.calendar)}case"minute":case"second":case"millisecond":return z(e,a,t,r);case"era":case"year":case"month":case"day":{let n=j(T(e),a,t,r),o=x(n,e.timeZone);return p(D(o,e.timeZone),e.calendar)}default:throw new Error("Unsupported field "+a)}}function Re(e,a,t){let r=T(e),n=U(H(r,a),a);if(n.compare(r)===0)return e;let o=x(n,e.timeZone,t);return p(D(o,e.timeZone),e.calendar)}var Ne=/^(\d{2})(?::(\d{2}))?(?::(\d{2}))?(\.\d+)?$/,_e=/^([+-]\d{6}|\d{4})-(\d{2})-(\d{2})$/;var Ke=/^([+-]\d{6}|\d{4})-(\d{2})-(\d{2})(?:T(\d{2}))?(?::(\d{2}))?(?::(\d{2}))?(\.\d+)?(?:(?:([+-]\d{2})(?::?(\d{2}))?)|Z)$/;var Qe=["hours","minutes","seconds"],Ta=["years","months","weeks","days",...Qe];function Xe(e){let a=e.match(Ne);if(!a)throw new Error("Invalid ISO 8601 time string: "+e);return new A(O(a[1],0,23),a[2]?O(a[2],0,59):0,a[3]?O(a[3],0,59):0,a[4]?O(a[4],0,1/0)*1e3:0)}function $e(e){let a=e.match(_e);if(!a)throw Ke.test(e)?new Error(`Invalid ISO 8601 date string: ${e}. Use parseAbsolute() instead.`):new Error("Invalid ISO 8601 date string: "+e);let t=new w(O(a[1],0,9999),O(a[2],1,12),1);return t.day=O(a[3],1,t.calendar.getDaysInMonth(t)),t}function O(e,a,t){let r=Number(e);if(r<a||r>t)throw new RangeError(`Value out of range: ${a} <= ${r} <= ${t}`);return r}function fe(e){return`${String(e.hour).padStart(2,"0")}:${String(e.minute).padStart(2,"0")}:${String(e.second).padStart(2,"0")}${e.millisecond?String(e.millisecond/1e3).slice(1):""}`}function ue(e){let a=p(e,new y),t;return a.era==="BC"?t=a.year===1?"0000":"-"+String(Math.abs(1-a.year)).padStart(6,"00"):t=String(a.year).padStart(4,"0"),`${t}-${String(a.month).padStart(2,"0")}-${String(a.day).padStart(2,"0")}`}function me(e){return`${ue(e)}T${fe(e)}`}function ea(e){let a=Math.sign(e)<0?"-":"+";e=Math.abs(e);let t=Math.floor(e/36e5),r=Math.floor(e%36e5/6e4),n=Math.floor(e%36e5%6e4/1e3),o=`${a}${String(t).padStart(2,"0")}:${String(r).padStart(2,"0")}`;return n!==0&&(o+=`:${String(n).padStart(2,"0")}`),o}function qe(e){return`${me(e)}${ea(e.offset)}[${e.timeZone}]`}function he(e){let a=typeof e[0]=="object"?e.shift():new y,t;if(typeof e[0]=="string")t=e.shift();else{let s=a.getEras();t=s[s.length-1]}let r=e.shift(),n=e.shift(),o=e.shift();return[a,t,r,n,o]}var w=class e{#e;constructor(...a){let[t,r,n,o,s]=he(a);this.calendar=t,this.era=r,this.year=n,this.month=o,this.day=s,I(this)}copy(){return this.era?new e(this.calendar,this.era,this.year,this.month,this.day):new e(this.calendar,this.year,this.month,this.day)}add(a){return R(this,a)}subtract(a){return ce(this,a)}set(a){return H(this,a)}cycle(a,t,r){return j(this,a,t,r)}toDate(a){return re(this,a)}toString(){return ue(this)}compare(a){return X(this,a)}},A=class e{#e;constructor(a=0,t=0,r=0,n=0){this.hour=a,this.minute=t,this.second=r,this.millisecond=n,de(this)}copy(){return new e(this.hour,this.minute,this.second,this.millisecond)}add(a){return ie(this,a)}subtract(a){return Ue(this,a)}set(a){return U(this,a)}cycle(a,t,r){return z(this,a,t,r)}toString(){return fe(this)}compare(a){return ee(this,a)}},Y=class e{#e;constructor(...a){let[t,r,n,o,s]=he(a);this.calendar=t,this.era=r,this.year=n,this.month=o,this.day=s,this.hour=a.shift()||0,this.minute=a.shift()||0,this.second=a.shift()||0,this.millisecond=a.shift()||0,I(this)}copy(){return this.era?new e(this.calendar,this.era,this.year,this.month,this.day,this.hour,this.minute,this.second,this.millisecond):new e(this.calendar,this.year,this.month,this.day,this.hour,this.minute,this.second,this.millisecond)}add(a){return R(this,a)}subtract(a){return ce(this,a)}set(a){return H(U(this,a),a)}cycle(a,t,r){switch(a){case"era":case"year":case"month":case"day":return j(this,a,t,r);default:return z(this,a,t,r)}}toDate(a,t){return re(this,a,t)}toString(){return me(this)}compare(a){let t=X(this,a);return t===0?ee(this,T(a)):t}},E=class e{#e;constructor(...a){let[t,r,n,o,s]=he(a),c=a.shift(),f=a.shift();this.calendar=t,this.era=r,this.year=n,this.month=o,this.day=s,this.timeZone=c,this.offset=f,this.hour=a.shift()||0,this.minute=a.shift()||0,this.second=a.shift()||0,this.millisecond=a.shift()||0,I(this)}copy(){return this.era?new e(this.calendar,this.era,this.year,this.month,this.day,this.timeZone,this.offset,this.hour,this.minute,this.second,this.millisecond):new e(this.calendar,this.year,this.month,this.day,this.timeZone,this.offset,this.hour,this.minute,this.second,this.millisecond)}add(a){return le(this,a)}subtract(a){return Le(this,a)}set(a,t){return Re(this,a,t)}cycle(a,t,r){return We(this,a,t,r)}toDate(){return Ze(this)}toString(){return qe(this)}toAbsoluteString(){return this.toDate().toISOString()}compare(a){return this.toDate().getTime()-Oe(a,this.timeZone).toDate().getTime()}};import*as ra from"reka-ui";function Z(e){if(e)try{return $e(e)}catch{return}}var ye={modelValue:[String,Object],defaultMonth:String,min:String,max:String,disabled:Boolean,isDateDisabled:Function,isDateUnavailable:Function,timeZone:{type:String,default:"UTC"},numberOfMonths:Number},na=Be({name:"CalendarPicker",inheritAttrs:!1,props:{...ye,range:Boolean},emits:["update:modelValue"],setup(e,{emit:a,attrs:t}){let{locale:r,t:n}=N(),o=pe(!1),s,c=()=>o.value=s.matches;aa(()=>{s=matchMedia("(min-width:768px)"),c(),s.addEventListener("change",c)}),ta(()=>s?.removeEventListener("change",c));let f=be(()=>e.numberOfMonths??(e.range&&o.value?2:1));return()=>{let u=e.range?"RangeCalendar":"Calendar",l=i=>ra[u+i],m=e.range?{start:Z(e.modelValue?.start),end:Z(e.modelValue?.end)}:Z(e.modelValue);return d(l("Root"),{modelValue:m,defaultPlaceholder:Z(e.defaultMonth)||m?.start||!e.range&&m||Q(e.timeZone),locale:r.value,weekStartsOn:0,calendarLabel:n(e.range?"date.chooseRange":"date.chooseDate"),numberOfMonths:f.value,disabled:e.disabled,minValue:Z(e.min),maxValue:Z(e.max),isDateDisabled:e.isDateDisabled?i=>e.isDateDisabled(i.toString()):void 0,isDateUnavailable:e.isDateUnavailable?i=>e.isDateUnavailable(i.toString()):void 0,"onUpdate:modelValue":i=>a("update:modelValue",e.range?{start:i?.start?.toString()??"",end:i?.end?.toString()??""}:i?.toString()??null),...Object.fromEntries(Object.entries(t).filter(([i])=>i==="id"||i==="style"||i.startsWith("aria-")||i.startsWith("data-"))),class:J("cu-calendar",t.class),"data-range":e.range?"true":void 0},{default:({grid:i,weekDays:b})=>[d("div",{class:"cu-calendar-nav"},[d(l("Prev"),{asChild:!0},()=>d(S,{variant:"ghost",size:"icon",class:"cu-calendar-nav-button","aria-label":n("date.previousMonth")},()=>d(L,{name:"ChevronLeft"}))),d(l("Next"),{asChild:!0},()=>d(S,{variant:"ghost",size:"icon",class:"cu-calendar-nav-button","aria-label":n("date.nextMonth")},()=>d(L,{name:"ChevronRight"})))]),d("div",{class:"cu-calendar-months"},i.map(h=>d("div",{key:h.value.toString(),class:"cu-calendar-month"},[d("div",{class:"cu-calendar-title"},new Intl.DateTimeFormat(r.value,{month:"long",year:"numeric",timeZone:"UTC"}).format(h.value.toDate("UTC"))),d(l("Grid"),{class:"cu-calendar-grid"},()=>[d(l("GridHead"),null,()=>d(l("GridRow"),{class:"cu-calendar-weekdays"},()=>i[0].rows[0].map(g=>d(l("HeadCell"),{class:"cu-calendar-weekday"},()=>{let M=new Intl.DateTimeFormat(r.value,{weekday:"short",timeZone:"UTC"}).format(g.toDate("UTC"));return r.value.startsWith("zh")?M.slice(-1):M.slice(0,2)})))),d(l("GridBody"),null,()=>h.rows.map((g,M)=>d(l("GridRow"),{key:M,class:"cu-calendar-row"},()=>g.map($=>d(l("Cell"),{key:$.toString(),date:$,class:"cu-calendar-cell"},()=>d(l("CellTrigger"),{day:$,month:h.value,class:"cu-calendar-day"},()=>d("span",{class:"cu-calendar-number"},String($.day))))))))])])))]})}}}),oa=e=>e?.start?{start:e.start,end:e.end||""}:null;function Pe(e,a){return Be({name:e,inheritAttrs:!1,props:{...ye,start:String,end:String,placeholder:String,clearable:{type:Boolean,default:!0}},emits:["update:modelValue","update:start","update:end","change"],setup(t,{attrs:r,emit:n,slots:o}){let{locale:s,t:c}=N(),f=pe(!1),u=pe(null),l=be(()=>t.modelValue??(a&&t.start?{start:t.start,end:t.end||""}:null)),m=be(()=>a&&f.value?u.value:l.value),i=$=>{n("update:modelValue",$),a&&(n("update:start",$?.start??""),n("update:end",$?.end??"")),n("change",$)},b=$=>{if($!==f.value){if($&&a&&(u.value=oa(l.value)),!$&&a){let k=u.value?.start?{start:u.value.start,end:u.value.end||u.value.start}:null;((k?.start||"")!==(l.value?.start||"")||(k?.end||"")!==(l.value?.end||""))&&i(k)}f.value=$}},h=$=>{a?u.value=$:(i($),b(!1))},g=$=>{let k=Z($);return k?new Intl.DateTimeFormat(s.value,{month:"short",day:"2-digit",year:"numeric",timeZone:"UTC"}).format(k.toDate("UTC")):""},M=()=>a?m.value?.start?g(m.value.start)+(m.value.end&&m.value.end!==m.value.start?" \u2013 "+g(m.value.end):""):t.placeholder??c("date.chooseRange"):m.value?g(m.value):t.placeholder??c("date.chooseDate");return()=>d("div",{class:"inline-flex max-w-full items-center gap-1"},[d(xe,{open:f.value,"onUpdate:open":b},()=>[d(De,{asChild:!0},()=>d(S,{...r,variant:"outline",disabled:t.disabled,"aria-label":r["aria-label"]??t.placeholder??c(a?"date.chooseRange":"date.chooseDate"),class:J("cu-date-trigger max-w-full min-w-0 justify-start px-3 text-left font-normal",a&&"w-64",!m.value&&"text-muted-foreground",r.class)},()=>[d(L,{name:"Calendar"}),o.value?.({value:m.value})??d("span",{class:"truncate"},M())])),d(ge,{class:"cu-date-popover w-auto max-w-[calc(100vw-1rem)] p-0",align:"start"},()=>[d(na,{...Object.fromEntries(Object.keys(ye).map($=>[$,t[$]])),modelValue:a?u.value:l.value,range:a,"onUpdate:modelValue":h}),a&&d("div",{class:"cu-date-footer"},[t.clearable&&d(S,{variant:"ghost",size:"sm",disabled:!u.value?.start,onClick:()=>u.value=null},()=>c("date.clearAction")),d(S,{size:"sm",onClick:()=>b(!1)},()=>c("date.apply"))])])]),!a&&t.clearable&&l.value&&d(S,{variant:"ghost",size:"icon",disabled:t.disabled,"aria-label":c("date.clear"),onClick:()=>i(null)},()=>d(L,{name:"X"}))])}})}var yt=Pe("DatePicker",!1),xt=Pe("DateRangePicker",!0);export{Xe as a,Y as b,Z as c,na as d,yt as e,xt as f};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as w,b as m,c as k}from"./chunk-MTT6ZOSW.js";import{b as y}from"./chunk-KLB5X6TJ.js";import{inject as C,provide as F,useId as O}from"vue";var E=Symbol("casual-form"),S=Symbol("casual-field"),f=()=>C(E,null),z=()=>C(S,null),D=e=>F(S,e);function V(e,r={}){let t=z(),n=f(),i=t?.claimControl?.(O());return()=>({id:e.id??i?.value??t?.id.value,name:e.name??t?.name.value,disabled:r.disabled||e.disabled||n?.disabled.value||void 0,"aria-invalid":e["aria-invalid"]??(t?.error.value?!0:void 0),"aria-describedby":e["aria-describedby"]??t?.describedBy.value})}function T(e,r){return String(r).split(".").reduce((t,n)=>t?.[n],e)}function W(e,r,t){let n=String(r).split(".");if(n.some(a=>["__proto__","constructor","prototype"].includes(a)))throw new Error("Unsafe field name");let i=e;for(let a of n.slice(0,-1))i=i[a]??={};i[n.at(-1)]=t}function g(e,r){let t=z(),n=f();return i=>{let a=(typeof e=="function"?e():e)||t?.name.value;a&&n?.change(a,r,i)}}import{defineComponent as c,h as o,mergeProps as x}from"vue";import{Primitive as j}from"reka-ui";var B=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,P=w,_=(e,r)=>t=>{var n;if(r?.variants==null)return P(e,t?.class,t?.className);let{variants:i,defaultVariants:a}=r,p=Object.keys(i).map(s=>{let l=t?.[s],v=a?.[s];if(l===null)return null;let u=B(l)||B(v);return i[s][u]}),d=t&&Object.entries(t).reduce((s,l)=>{let[v,u]=l;return u===void 0||(s[v]=u),s},{}),N=r==null||(n=r.compoundVariants)===null||n===void 0?void 0:n.reduce((s,l)=>{let{class:v,className:u,...A}=l;return Object.entries(A).every(I=>{let[h,b]=I;return Array.isArray(b)?b.includes({...a,...d}[h]):{...a,...d}[h]===b})?[...s,v,u]:s},[]);return P(e,p,N,t?.class,t?.className)};var K=_("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-[color,box-shadow] disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground shadow-xs hover:bg-primary/90",destructive:"bg-destructive text-white shadow-xs hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40",outline:"border border-input bg-background shadow-xs hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-xs hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",sm:"h-8 rounded-md px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9"}},defaultVariants:{variant:"default",size:"default"}}),Z=c({name:"Button",inheritAttrs:!1,props:{variant:String,size:String,asChild:Boolean,loading:Boolean},setup(e,{attrs:r,slots:t}){let n=f();return()=>o(j,x({as:"button",type:"button","data-slot":"button"},r,{asChild:e.asChild,class:m(K(e),r.class),"aria-busy":e.loading||void 0,disabled:r.disabled||e.loading||n?.disabled.value,onClickCapture:i=>{e.loading&&(i.preventDefault(),i.stopImmediatePropagation())}}),{default:()=>[e.loading&&o(y,{name:"LoaderCircle",class:"motion-safe:animate-spin motion-reduce:animate-none"}),t.default?.()]})}}),L="border-input file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",ee=c({name:"Input",inheritAttrs:!1,props:{modelValue:[String,Number],disabled:Boolean},emits:["update:modelValue"],setup(e,{attrs:r,emit:t}){let n=V(r,e),i=g(r.name,"input"),a=g(r.name,"change"),p=g(r.name,"blur");return()=>o("input",x({"data-slot":"input",value:e.modelValue},r,n(),{class:m(L,r.class),onInput:d=>{t("update:modelValue",d.target.value),i(d.target.value)},onChange:d=>a(d.target.value),onBlur:d=>p(d.target.value)}))}}),te=k("Label","label","text-sm leading-none font-medium select-none peer-disabled:cursor-not-allowed peer-disabled:opacity-50",{"data-slot":"label"}),re=c({name:"Separator",props:{orientation:{type:String,default:"horizontal"}},setup:e=>()=>o("div",{role:"separator","aria-orientation":e.orientation,"data-slot":"separator",class:m("bg-border shrink-0",e.orientation==="horizontal"?"h-px w-full":"h-full w-px")})}),ne=c({name:"Badge",inheritAttrs:!1,props:{variant:{type:String,default:"default"},asChild:Boolean},setup(e,{attrs:r,slots:t}){return()=>o(j,x({as:"span",asChild:e.asChild,"data-slot":"badge"},r,{class:m("inline-flex items-center justify-center rounded-md border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{success:"cu-semantic-success border-transparent",info:"cu-semantic-info border-transparent",warning:"cu-semantic-warning border-transparent",error:"cu-semantic-error border-transparent",default:"border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground"}[e.variant],r.class)}),t)}}),ie=c({name:"Avatar",props:{src:String,name:{type:String,default:""},size:{type:Number,default:32}},setup:e=>()=>o("span",{class:"relative flex shrink-0 overflow-hidden rounded-lg",style:{width:e.size+"px",height:e.size+"px"}},e.src?o("img",{class:"size-full object-cover",src:e.src,alt:e.name}):o("span",{class:"bg-muted flex size-full items-center justify-center text-sm"},e.name.slice(0,2)))}),ae=c({name:"Heading",props:{title:String,description:String,variant:String},setup:e=>()=>o("header",{class:e.variant==="small"?"":"mb-8 space-y-0.5"},[o("h2",{class:e.variant==="small"?"mb-0.5 text-base font-medium":"text-xl font-semibold tracking-tight"},e.title),e.description&&o("p",{class:"text-muted-foreground text-sm"},e.description)])});export{E as a,S as b,f as c,D as d,V as e,T as f,W as g,g as h,K as i,Z as j,L as k,ee as l,te as m,re as n,ne as o,ie as p,ae as q};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{b as U}from"./chunk-EHLXY56Q.js";import{j as k}from"./chunk-DSZMS7XD.js";import{a as F,c as B,d as j,e as R,f as D,g as E,h as w,k as N,l as T,m as O}from"./chunk-IMPED3KO.js";import{b as S}from"./chunk-MTT6ZOSW.js";import{b as h}from"./chunk-KLB5X6TJ.js";import{defineComponent as A,h as y,ref as de,mergeProps as Z}from"vue";import"reka-ui";import{defineComponent as L,h as n,useId as q,computed as I,ref as z,cloneVNode as H,onBeforeUnmount as _,watch as G,mergeProps as J,Fragment as Q}from"vue";import*as i from"reka-ui";var W=L({name:"FormField",props:{id:String,name:String,label:String,description:String,error:String},setup(e,{slots:r}){let u=q(),t=B(),o=I(()=>e.id||u),s=I(()=>e.error??t?.errors.value.find(m=>m.name===e.name)?.message),f=I(()=>e.name),c=I(()=>[e.description&&o.value+"-description",s.value&&o.value+"-error"].filter(Boolean).join(" ")||void 0),g=z(0),b=z([]);j({id:o,name:f,error:s,describedBy:c,claimControl:m=>(b.value.push(m),_(()=>b.value=b.value.filter(l=>l!==m)),I(()=>!g.value&&b.value[0]===m?o.value:o.value+"-control-"+m))});let v;G([f,o],()=>{v?.(),e.name&&(v=t?.register(e.name,o.value))},{immediate:!0}),_(()=>v?.());let p=new Set(["Input","Textarea","Select","PasswordInput","SearchInput","TimePicker","DatePicker","DateRangePicker","DateTimePicker","DateTimeRangePicker"]);return()=>{let m={id:o.value,name:e.name,"aria-invalid":s.value?!0:void 0,"aria-describedby":c.value},l=0,a=x=>x?.map(d=>{if(!d||typeof d!="object")return d;if(typeof d.type=="string"&&["input","textarea","select"].includes(d.type)&&d.props?.type!=="hidden"||p.has(d.type?.name)){let C=l++?o.value+"-control-"+l:o.value;return H(d,{...m,id:C})}if((typeof d.type=="string"||d.type===Q)&&Array.isArray(d.children)){let C=H(d);return C.children=a(d.children),C}return d}),P=a(r.default?.({...m,error:s.value}));return g.value=l,n("div",{"data-slot":"form-field",class:"grid gap-2"},[e.label&&n(O,{for:o.value},()=>e.label),P,e.description&&n("p",{id:o.value+"-description",class:"text-muted-foreground text-sm"},e.description),s.value&&n("p",{id:o.value+"-error",role:"alert",class:"cu-field-error text-destructive text-sm"},s.value)])}}}),X=L({name:"Select",inheritAttrs:!1,props:{modelValue:[String,Number],defaultValue:[String,Number],options:{type:Array,default:()=>[]},placeholder:String,label:String,disabled:Boolean,name:String,id:String,size:{type:String,default:"default"}},emits:["update:modelValue","change","blur"],setup(e,{attrs:r,emit:u,slots:t}){let o=z(e.defaultValue),s=U(),{t:f}=k(),c=R(r,e),g=w(()=>e.name,"input"),b=w(()=>e.name,"change"),V=w(()=>e.name,"blur"),v=p=>{o.value=p,u("update:modelValue",p),u("change",p),g(p),b(p)};return()=>{let p={...c(),id:e.id??c().id,name:e.name??c().name},m=e.modelValue!==void 0?e.modelValue:o.value,l=e.options.find(a=>a.value===m);return n(i.SelectRoot,{modelValue:m,defaultValue:e.defaultValue,disabled:p.disabled,name:p.name,"onUpdate:modelValue":v},()=>[n(i.SelectTrigger,J(r,p,{"data-slot":"select-trigger","data-size":e.size,"aria-label":e.label,onBlur:a=>{u("blur",a),V(e.modelValue)},class:S("cu-select-trigger border-input data-[placeholder]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:border-destructive dark:bg-input/30 flex w-fit max-w-full min-w-0 items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm shadow-xs outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 [&_svg]:shrink-0",r.class)}),()=>[n(i.SelectValue,{placeholder:e.placeholder??f("form.select"),class:"cu-select-value min-w-0 flex-1 truncate text-left"},{default:t.value?()=>t.value({option:l,value:m}):l?()=>n("span",{class:"block min-w-0 truncate",title:l.label},l.label):void 0}),n(i.SelectIcon,{asChild:!0},()=>n(h,{name:"ChevronDown",class:"size-4 shrink-0 text-muted-foreground opacity-50"}))]),n(i.SelectPortal,{to:s},()=>n(i.SelectContent,{"data-slot":"select-content",position:"popper",sideOffset:4,class:"cu-select-content bg-popover text-popover-foreground z-50 min-w-[8rem] overflow-x-hidden overflow-y-auto rounded-md border shadow-md"},()=>[n(i.SelectScrollUpButton,{class:"flex justify-center py-1"},()=>n(h,{name:"ChevronUp"})),n(i.SelectViewport,{class:"min-w-[var(--reka-select-trigger-width)] p-1"},()=>e.options.map(a=>n(i.SelectItem,{key:typeof a.value+":"+a.value,value:a.value,disabled:a.disabled,textValue:a.label,"data-slot":"select-item",class:"focus:bg-accent focus:text-accent-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden data-[disabled]:pointer-events-none data-[disabled]:opacity-50"},()=>[n("span",{class:"absolute right-2 flex size-3.5 items-center justify-center"},[n(i.SelectItemIndicator,null,()=>n(h,{name:"Check"}))]),n(i.SelectItemText,{class:"min-w-0 whitespace-normal break-words"},()=>t.option?.({option:a,selected:a.value===e.modelValue})??[n("span",{class:"flex items-center gap-2"},[a.icon&&n(h,{name:a.icon}),a.color&&n("span",{class:"size-2 shrink-0 rounded-full",style:{background:a.color}}),a.label]),a.description&&n("span",{class:"text-muted-foreground block text-xs"},a.description)])]))),n(i.SelectScrollDownButton,{class:"flex justify-center py-1"},()=>n(h,{name:"ChevronDown"}))]))])}}});import{defineComponent as Y,h as $,ref as K,computed as ee,provide as te,onBeforeUnmount as ae,nextTick as re}from"vue";function M(e=[]){return e.map(r=>({name:Array.isArray(r.path)?r.path.map(u=>typeof u=="object"?u.key:u).join("."):String(r.name??r.path??""),message:String(r.message??r)}))}async function le(e,r,u){let t=[];if(e?.["~standard"]?.validate)t=(await e["~standard"].validate(r)).issues??[];else if(e?.safeParseAsync||e?.safeParse){let o=await(e.safeParseAsync?.(r)??e.safeParse(r));t=o.success?[]:o.error?.issues??[]}else if(e)throw new TypeError("Use a Standard Schema, Zod safeParse schema, or the validate prop");return u&&(t=[...t,...await u(r)??[]]),M(t)}var oe=Y({name:"Form",inheritAttrs:!1,props:{state:{type:Object,default:()=>({})},schema:Object,validate:Function,validateOn:{type:Array,default:()=>["input","blur","change"]},disabled:Boolean,loading:Boolean,submitHandler:Function},emits:["submit","error","update:state"],setup(e,{attrs:r,slots:u,emit:t,expose:o}){let s=K([]),f=K(!1),c=new Map,g=0,b=!0;ae(()=>{b=!1,g++});let V=ee(()=>e.disabled||e.loading||f.value),v=async({name:l,silent:a=!1}={})=>{let P=++g,x=await le(e.schema,e.state,e.validate);return!b||P!==g?!1:(a||(s.value=l?[...s.value.filter(d=>d.name!==l),...x.filter(d=>d.name===l)]:x),!(l?x.filter(d=>d.name===l):x).length)};te(F,{errors:s,disabled:V,submitting:f,register:(l,a)=>(c.set(l,a),()=>{c.get(l)===a&&c.delete(l)}),change:(l,a,P)=>{(a==="input"||a==="change")&&D(e.state,l)!==P&&(E(e.state,l,P),t("update:state",e.state)),!f.value&&e.validateOn.includes(a)&&v({name:l}).catch(x=>t("error",{errors:[],cause:x}))}});let m=async l=>{if(l?.preventDefault(),!V.value){f.value=!0;try{await v()?(e.submitHandler&&await e.submitHandler(e.state),t("submit",{data:e.state,event:l})):t("error",{errors:s.value})}catch(a){t("error",{errors:s.value,cause:a})}finally{f.value=!1,await re();let a=c.get(s.value[0]?.name);typeof document<"u"&&a&&document.getElementById(a)?.focus()}}};return o({validate:v,submit:m,clear:l=>{g++,s.value=l?s.value.filter(a=>a.name!==l):[]},setErrors:l=>{g++,s.value=M(l)},getErrors:()=>s.value,submitting:f}),()=>$("form",{...r,novalidate:!0,"aria-busy":f.value||void 0,onSubmit:m},u.default?.({errors:s.value,submitting:f.value,disabled:V.value}))}});import{defineComponent as ne,h as se,mergeProps as ie}from"vue";var ue=ne({name:"Textarea",inheritAttrs:!1,props:{modelValue:[String,Number],rows:{type:Number,default:3},resize:{type:String,default:"vertical"},disabled:Boolean},emits:["update:modelValue"],setup(e,{attrs:r,emit:u}){let t=R(r,e),o=w(()=>r.name,"input"),s=w(()=>r.name,"change"),f=w(()=>r.name,"blur");return()=>se("textarea",ie(r,t(),{"data-slot":"textarea",rows:e.rows,value:e.modelValue,style:{resize:e.resize},class:S(N,"min-h-20 h-auto py-2",r.class),onInput:c=>{u("update:modelValue",c.target.value),o(c.target.value)},onChange:c=>s(c.target.value),onBlur:c=>f(c.target.value)}))}});var He=A({name:"PasswordInput",inheritAttrs:!1,props:{modelValue:[String,Number]},emits:["update:modelValue"],setup(e,{attrs:r,emit:u}){let t=de(!1),{t:o}=k();return()=>y("div",{class:"relative"},[y(T,Z(r,{modelValue:e.modelValue,"onUpdate:modelValue":s=>u("update:modelValue",s),type:t.value?"text":"password",class:S("pr-10",r.class)})),y("button",{type:"button",tabindex:-1,class:"text-muted-foreground hover:text-foreground focus-visible:ring-ring absolute inset-y-0 right-0 flex items-center rounded-r-md px-3 focus-visible:ring-[3px] focus-visible:outline-none","aria-label":o(t.value?"form.hidePassword":"form.showPassword"),onClick:()=>t.value=!t.value},[y(h,{name:t.value?"EyeOff":"Eye",class:"size-4"})])])}}),_e=A({name:"SearchInput",inheritAttrs:!1,props:{modelValue:[String,Number],placeholder:String},emits:["update:modelValue"],setup(e,{attrs:r,emit:u}){let{t}=k();return()=>y("div",{class:"cu-search-control"},[y(h,{name:"Search",class:"cu-search-icon text-muted-foreground"}),y(T,Z({type:"search",placeholder:e.placeholder??t("form.search"),"aria-label":r["aria-label"]??e.placeholder??t("form.search")},r,{modelValue:e.modelValue,"onUpdate:modelValue":o=>u("update:modelValue",o),class:S("cu-search-field",r.class)}))])}}),Le=A({name:"PeriodTabs",props:{modelValue:{type:String,default:"today"},options:Array},emits:["update:modelValue"],setup(e,{emit:r}){let{t:u}=k();return()=>y("div",{role:"radiogroup","aria-label":u("period.label"),class:"inline-flex max-w-full overflow-x-auto rounded-md border shadow-xs"},(e.options??["today","yesterday","this_month","last_month"].map(t=>({value:t,label:u("period."+t)}))).map((t,o)=>y("button",{type:"button",role:"radio","aria-checked":e.modelValue===t.value,onClick:()=>r("update:modelValue",t.value),class:S("h-9 shrink-0 px-3 text-sm whitespace-nowrap",o>0&&"border-l",e.modelValue===t.value?"bg-muted":"bg-background hover:bg-accent")},t.label)))}});export{W as a,X as b,oe as c,ue as d,He as e,_e as f,Le as g};
|