@lunora/studio 1.0.0-alpha.153 → 1.0.0-alpha.155
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 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.mjs +1 -1
- package/dist/packem_chunks/ExportImportPanel.mjs +1 -1
- package/dist/packem_chunks/TableEditor.mjs +1 -1
- package/dist/packem_chunks/organizations-panel.mjs +1 -1
- package/dist/packem_chunks/payments-panel.mjs +1 -1
- package/dist/packem_chunks/users-panel.mjs +1 -1
- package/dist/packem_shared/{DataBrowser-O22nJCCN.mjs → DataBrowser-FiF2tNdq.mjs} +1 -1
- package/dist/packem_shared/use-auth-config-CuM3eJZz.mjs +1 -0
- package/dist/packem_shared/wire-codec-DnslZGxC.mjs +1 -0
- package/dist/standalone/{chunk-S26CQFMN.js → chunk-2GUY4BYT.js} +1 -1
- package/dist/standalone/{chunk-CIEJPCUW.js → chunk-3BOMO6FO.js} +1 -1
- package/dist/standalone/{chunk-GEITRXJJ.js → chunk-3SCT7QG7.js} +1 -1
- package/dist/standalone/{chunk-XJGHAQOK.js → chunk-4YPDEUPJ.js} +1 -1
- package/dist/standalone/{chunk-ACZ62CXX.js → chunk-57JVL7N6.js} +1 -1
- package/dist/standalone/{chunk-Q7UGJSBF.js → chunk-6BI6AL3F.js} +1 -1
- package/dist/standalone/{chunk-PHQZEAGF.js → chunk-6RMHV7CC.js} +1 -1
- package/dist/standalone/{chunk-CQMOOU7U.js → chunk-73S4ZMSC.js} +1 -1
- package/dist/standalone/{chunk-4ECJUS5H.js → chunk-7SA3C6AD.js} +1 -1
- package/dist/standalone/{chunk-C37WBSYD.js → chunk-7SPAXZ55.js} +1 -1
- package/dist/standalone/{chunk-SWQC2USV.js → chunk-7VYWS2FY.js} +1 -1
- package/dist/standalone/{chunk-GWV47763.js → chunk-ANFY2LUW.js} +1 -1
- package/dist/standalone/{chunk-Z4GCX456.js → chunk-B7IXABRK.js} +1 -1
- package/dist/standalone/{chunk-LX3GATRO.js → chunk-BFPZHZ5M.js} +1 -1
- package/dist/standalone/{chunk-G4F3D3I7.js → chunk-BHRODRCE.js} +1 -1
- package/dist/standalone/{chunk-P6P4OBT2.js → chunk-BI3WYQT4.js} +1 -1
- package/dist/standalone/{chunk-R2IHJBT6.js → chunk-CJMZSHN3.js} +1 -1
- package/dist/standalone/chunk-CXNY45A3.js +1 -0
- package/dist/standalone/{chunk-32CGYBP7.js → chunk-D722YMVG.js} +1 -1
- package/dist/standalone/{chunk-23PYJYIE.js → chunk-EFXL7F5E.js} +1 -1
- package/dist/standalone/{chunk-OEGOE365.js → chunk-ENE4N6ZV.js} +1 -1
- package/dist/standalone/chunk-ET6VU4YM.js +11 -0
- package/dist/standalone/{chunk-XUZKCNPR.js → chunk-FAIPFZHS.js} +1 -1
- package/dist/standalone/{chunk-II7XZKMV.js → chunk-FFSMP4KF.js} +1 -1
- package/dist/standalone/{chunk-YUFHPV5Q.js → chunk-FMRAZ6MD.js} +4 -4
- package/dist/standalone/{chunk-HKOSEDH4.js → chunk-HETDJ4ZA.js} +1 -1
- package/dist/standalone/{chunk-ILD64B5N.js → chunk-HMRLSE2Y.js} +1 -1
- package/dist/standalone/{chunk-ZAU7W7ST.js → chunk-IBCJ44SS.js} +1 -1
- package/dist/standalone/{chunk-NITR6C4Q.js → chunk-J2REGA6E.js} +1 -1
- package/dist/standalone/{chunk-3AP7VVQQ.js → chunk-JXCWNZ7T.js} +1 -1
- package/dist/standalone/{chunk-4B2XXMFJ.js → chunk-JXZBR6KQ.js} +1 -1
- package/dist/standalone/{chunk-2UYOGRM4.js → chunk-KEXRHVLN.js} +1 -1
- package/dist/standalone/{chunk-WXDJSSI3.js → chunk-KHIJLXVN.js} +1 -1
- package/dist/standalone/{chunk-5OKOOE7F.js → chunk-KJGAW36O.js} +1 -1
- package/dist/standalone/{chunk-IHFI6CAR.js → chunk-L2PBRJ7G.js} +1 -1
- package/dist/standalone/chunk-LPTEXH2G.js +1 -0
- package/dist/standalone/{chunk-A7FVAGCX.js → chunk-M2KEQODB.js} +1 -1
- package/dist/standalone/{chunk-ALDKIXZV.js → chunk-M55KXW5Z.js} +1 -1
- package/dist/standalone/{chunk-EL76NZKP.js → chunk-M5ITKPZN.js} +1 -1
- package/dist/standalone/{chunk-S6WJJWE2.js → chunk-MAIRKGBC.js} +1 -1
- package/dist/standalone/{chunk-5BHA637G.js → chunk-MMYETC7K.js} +1 -1
- package/dist/standalone/{chunk-TPPJQZRS.js → chunk-NJSJI7SX.js} +1 -1
- package/dist/standalone/{chunk-MDV7YLA4.js → chunk-O3OLYWXH.js} +1 -1
- package/dist/standalone/{chunk-6KU6XZBN.js → chunk-ODULTMQE.js} +1 -1
- package/dist/standalone/{chunk-TLROCZPY.js → chunk-PBMIQYWZ.js} +1 -1
- package/dist/standalone/{chunk-YWC6MTH4.js → chunk-PEC7L2M2.js} +1 -1
- package/dist/standalone/{chunk-IECKH2X5.js → chunk-Q2XPCZNR.js} +1 -1
- package/dist/standalone/{chunk-S7Z5HIXB.js → chunk-QY7ZYGFB.js} +1 -1
- package/dist/standalone/{chunk-SYJSEF4X.js → chunk-RBUZXGW4.js} +1 -1
- package/dist/standalone/{chunk-TWZTDUXT.js → chunk-SZD6O7K2.js} +1 -1
- package/dist/standalone/{chunk-G4Y2UUW4.js → chunk-T3NZUPJT.js} +1 -1
- package/dist/standalone/{chunk-S35A5JDQ.js → chunk-UAA6K2G3.js} +1 -1
- package/dist/standalone/{chunk-YKS246NP.js → chunk-VHFBBAB3.js} +1 -1
- package/dist/standalone/{chunk-IAP6HECV.js → chunk-VP7HSAYW.js} +1 -1
- package/dist/standalone/{chunk-CY3TZEJJ.js → chunk-VVIGMZZI.js} +1 -1
- package/dist/standalone/{chunk-HB4BX7WR.js → chunk-WO3CKCCK.js} +1 -1
- package/dist/standalone/{chunk-PNHK6UE2.js → chunk-X6XVQUHD.js} +2 -2
- package/dist/standalone/chunk-XAG625PN.js +1 -0
- package/dist/standalone/{chunk-EZ5WA3RT.js → chunk-Y4S6PSQJ.js} +1 -1
- package/dist/standalone/{chunk-NLCYWLK6.js → chunk-Y7BODRFB.js} +1 -1
- package/dist/standalone/{chunk-74MH4UBQ.js → chunk-YVNA6TPB.js} +1 -1
- package/dist/standalone/{chunk-XNMDBPSX.js → chunk-ZFT2GFBE.js} +1 -1
- package/dist/standalone/{chunk-TXH6IAVS.js → chunk-ZUFIKCHC.js} +1 -1
- package/dist/standalone/studio.js +1 -1
- package/package.json +6 -6
- package/dist/packem_shared/use-auth-config-BQKGdSFh.mjs +0 -1
- package/dist/packem_shared/wire-codec-oeb8YWV3.mjs +0 -1
- package/dist/standalone/chunk-2AQPSJ2A.js +0 -1
- package/dist/standalone/chunk-FGSNEPHU.js +0 -11
- package/dist/standalone/chunk-G6U7Z75E.js +0 -1
- package/dist/standalone/chunk-OVTMYZN2.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as f}from"./chunk-IMOHEGMV.js";import{a as j}from"./chunk-66UGPQVC.js";import{a as C}from"./chunk-SU737V7V.js";import{P as v}from"./chunk-46ZJ3TM4.js";import"./chunk-4L4WTGN5.js";import{a as U}from"./chunk-EBWXFG4H.js";import"./chunk-TGHH7ZFA.js";import"./chunk-5GFSKIB2.js";import{b as q}from"./chunk-NCCAMFB6.js";import"./chunk-25NFR6EB.js";import{a as w}from"./chunk-4ZEL6BYL.js";import{f as L}from"./chunk-
|
|
1
|
+
import{a as f}from"./chunk-IMOHEGMV.js";import{a as j}from"./chunk-66UGPQVC.js";import{a as C}from"./chunk-SU737V7V.js";import{P as v}from"./chunk-46ZJ3TM4.js";import"./chunk-4L4WTGN5.js";import{a as U}from"./chunk-EBWXFG4H.js";import"./chunk-TGHH7ZFA.js";import"./chunk-5GFSKIB2.js";import{b as q}from"./chunk-NCCAMFB6.js";import"./chunk-25NFR6EB.js";import{a as w}from"./chunk-4ZEL6BYL.js";import{f as L}from"./chunk-ET6VU4YM.js";import"./chunk-FSRSK4LY.js";import"./chunk-FMRAZ6MD.js";import{d as P,f as y,g as p,h,o as u}from"./chunk-FODLDLE2.js";import{a as s,d as S,e as W,g as X}from"./chunk-YKXDMIHQ.js";var a=S(W(),1);var e=S(X(),1);var B=y(w.getPitrBookmark),Y=y(w.pitrRestore),de=s(({initialShardKey:z})=>{let m=L(),t=P(),o=z??"",[A,x]=(0,a.useState)(null),[l,O]=(0,a.useState)(""),[R,I]=(0,a.useState)(null),[c,D]=(0,a.useState)(""),[k,E]=(0,a.useState)(!1),[i,K]=(0,a.useState)(null),[T,n]=(0,a.useState)(null),[b,d]=(0,a.useState)(!1),g=(0,a.useCallback)(async()=>{d(!0),n(null);try{let r=await m.query(B,{},p(o));x(r.current)}catch(r){n(h(r))}d(!1)},[m,o]);(0,a.useEffect)(()=>{u(g())},[g]),j(()=>{u((async()=>{try{let r=await m.query(B,{},p(o));x(r.current)}catch{}})())},!0);let M=s(r=>{O(r.target.value)},"A"),Z=s(r=>{D(r.target.value)},"U"),_=s(r=>{E(r.target.checked)},"q"),G=s(()=>{l.trim()!==""&&u((async()=>{d(!0),n(null);try{let r=await m.query(B,{time:l.trim()},p(o));I(r.forTime??null),x(r.current)}catch(r){I(null),n(h(r))}d(!1)})())},"K"),F=s(r=>{u((async()=>{d(!0),n(null);try{let N=await m.mutation(Y,r,p(o));K(N),await g()}catch(N){n(h(N))}d(!1)})())},"C"),H=c.trim()!==""||l.trim()!=="",J=t("Restore {shard} to {target}?",{shard:o===""?t("root"):o,target:c.trim()===""?l.trim():t("the given bookmark")}),Q=s(()=>{let r=k?{restart:!0}:{};c.trim()===""?r.time=l.trim():r.bookmark=c.trim(),F(r)},"z"),V=s(()=>{i!==null&&F(k?{bookmark:i.undoBookmark,restart:!0}:{bookmark:i.undoBookmark})},"D");return(0,e.jsxs)("div",{className:"flex flex-col gap-4","data-testid":"lunora-pitr",children:[(0,e.jsx)("div",{className:"flex flex-wrap items-center gap-3",children:(0,e.jsxs)("span",{className:"text-xs text-muted-foreground",children:[t("Shard"),": ",(0,e.jsx)("span",{className:"font-mono",children:o===""?t("root"):o})]})}),(0,e.jsx)("p",{className:"text-sm text-muted-foreground","data-testid":"pitr-note",children:t("In-place recovery to any moment in the last 30 days. For older or portable recovery, use the snapshot backup tier.")}),T!==null&&(0,e.jsx)("p",{className:"text-sm text-destructive","data-testid":"pitr-error",role:"alert",children:T}),(0,e.jsxs)("section",{className:"rounded-xl border border-border bg-card p-3 shadow-xs",children:[(0,e.jsx)("h3",{className:"mb-2 text-sm font-semibold",children:t("Current bookmark")}),(0,e.jsx)("p",{className:"font-mono text-xs break-all text-muted-foreground","data-testid":"pitr-current",children:A??(0,e.jsx)("span",{className:"text-muted-foreground",children:"\u2014"})})]}),(0,e.jsxs)("section",{className:"flex flex-col gap-3 rounded-xl border border-border bg-card p-3 shadow-xs",children:[(0,e.jsx)("h3",{className:"text-sm font-semibold",children:t("Restore")}),(0,e.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,e.jsx)(f,{htmlFor:"pitr-time",children:t("Time (ISO or epoch-ms, last 30 days)")}),(0,e.jsxs)("div",{className:"flex items-center gap-2",children:[(0,e.jsx)(v,{"data-testid":"pitr-time",id:"pitr-time",onChange:M,placeholder:"2026-06-01T00:00:00.000Z",value:l}),(0,e.jsx)(U,{"data-testid":"pitr-preview",disabled:b||l.trim()==="",onClick:G,size:"sm",type:"button",variant:"outline",children:t("Preview")})]}),R!==null&&(0,e.jsxs)("p",{className:"font-mono text-xs break-all text-muted-foreground","data-testid":"pitr-preview-bookmark",children:[t("Bookmark for that time"),": ",R]})]}),(0,e.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,e.jsx)(f,{htmlFor:"pitr-bookmark",children:t("Or an explicit bookmark (wins over time)")}),(0,e.jsx)(v,{"data-testid":"pitr-bookmark",id:"pitr-bookmark",onChange:Z,placeholder:t("bookmark string"),value:c})]}),(0,e.jsxs)(f,{className:"flex items-center gap-2 text-xs font-normal text-muted-foreground",htmlFor:"pitr-restart",children:[(0,e.jsx)("input",{checked:k,className:"size-4 accent-primary","data-testid":"pitr-restart",id:"pitr-restart",onChange:_,type:"checkbox"}),t("Restart the shard now so recovery applies immediately")]}),(0,e.jsx)("div",{children:(0,e.jsx)(C,{confirmLabel:J,disabled:b||!H,onConfirm:Q,testId:"pitr-restore",children:t("Restore")})})]}),i!==null&&(0,e.jsxs)("section",{className:"flex flex-col gap-2 rounded-xl border border-border bg-card p-3 shadow-xs","data-testid":"pitr-result",children:[(0,e.jsxs)("div",{className:"flex items-center gap-2",children:[(0,e.jsx)("h3",{className:"text-sm font-semibold",children:t("Restore armed")}),(0,e.jsx)(q,{variant:i.restarted?"destructive":"secondary",children:i.restarted?t("restarted now"):t("on next restart")})]}),(0,e.jsxs)("p",{className:"font-mono text-xs break-all text-muted-foreground",children:[t("Restored to"),": ",i.restoredTo]}),(0,e.jsxs)("p",{className:"font-mono text-xs break-all text-muted-foreground","data-testid":"pitr-undo-bookmark",children:[t("Undo bookmark"),": ",i.undoBookmark]}),(0,e.jsx)("div",{children:(0,e.jsx)(C,{confirmLabel:t("Confirm undo"),disabled:b,onConfirm:V,testId:"pitr-undo",children:t("Undo restore")})})]})]})},"ce");export{de as PitrPanel};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{P as R}from"./chunk-46ZJ3TM4.js";import"./chunk-4L4WTGN5.js";import{a as B}from"./chunk-EBWXFG4H.js";import"./chunk-TGHH7ZFA.js";import"./chunk-5GFSKIB2.js";import{b as S}from"./chunk-NCCAMFB6.js";import"./chunk-25NFR6EB.js";import{a as q}from"./chunk-
|
|
1
|
+
import{P as R}from"./chunk-46ZJ3TM4.js";import"./chunk-4L4WTGN5.js";import{a as B}from"./chunk-EBWXFG4H.js";import"./chunk-TGHH7ZFA.js";import"./chunk-5GFSKIB2.js";import{b as S}from"./chunk-NCCAMFB6.js";import"./chunk-25NFR6EB.js";import{a as q}from"./chunk-NJSJI7SX.js";import"./chunk-ULIQFBZU.js";import"./chunk-7SPAXZ55.js";import"./chunk-35DM4JJG.js";import{a as U}from"./chunk-4ZEL6BYL.js";import{c as O}from"./chunk-6BI6AL3F.js";import"./chunk-ET6VU4YM.js";import"./chunk-FSRSK4LY.js";import"./chunk-FMRAZ6MD.js";import{a as D}from"./chunk-FKVZRPV5.js";import{a as G,b as J,c as K,d as F,e as s,f as o}from"./chunk-HEAQVSNS.js";import{a as V,e as W}from"./chunk-WUWBZPUK.js";import{d as P,r as H}from"./chunk-FODLDLE2.js";import{a as n,d as j,e as re,f as ae,g as ie}from"./chunk-YKXDMIHQ.js";var X=j(ae(),1),M=j(re(),1);var t=j(ie(),1);var ne=n(e=>e==="ok"?"success":e==="failed"?"destructive":e==="expired"?"warning":"secondary","te"),Q=n(e=>e.endpoint??e.id,"M"),ve=n(()=>{let e=(0,X.c)(38),r=P(),[i,Y]=(0,M.useState)("all"),[l,Z]=(0,M.useState)(""),g;e[0]===Symbol.for("react.memo_cache_sentinel")?(g={},e[0]=g):g=e[0];let{data:I,error:d,errorSource:x,isLoading:_,refetch:v}=O(U.listPushSubscriptions,g),N;if(e[1]!==I?.subscriptions||e[2]!==d||e[3]!==x||e[4]!==_||e[5]!==i||e[6]!==v||e[7]!==l||e[8]!==r){let L=I?.subscriptions??[],T=l.trim().toLowerCase(),A=L.filter(a=>i!=="all"&&a.kind!==i?!1:T===""?!0:`${Q(a)} ${a.userId??""}`.toLowerCase().includes(T)),b;e[10]===Symbol.for("react.memo_cache_sentinel")?(b=n(a=>{Z(a.target.value)},"w"),e[10]=b):b=e[10];let ee=b,w;e[11]!==v?(w=n(()=>{v()},"y"),e[11]=v,e[12]=w):w=e[12];let E=w,k;e[13]===Symbol.for("react.memo_cache_sentinel")?(k=["all","web-push","fcm"],e[13]=k):k=e[13];let te=k,c;e[14]!==i||e[15]!==r?(c=(0,t.jsx)("div",{className:"flex items-center gap-1","data-testid":"nt-kind-filter",role:"tablist",children:te.map(a=>(0,t.jsx)(B,{"aria-selected":i===a,"data-testid":`nt-kind-${a}`,onClick:n(()=>{Y(a)},"onClick"),role:"tab",size:"sm",type:"button",variant:i===a?"secondary":"ghost",children:a==="all"?r("All"):a},a))}),e[14]=i,e[15]=r,e[16]=c):c=e[16];let m;e[17]!==r?(m=r("Filter devices"),e[17]=r,e[18]=m):m=e[18];let h;e[19]!==r?(h=r("filter endpoint, user"),e[19]=r,e[20]=h):h=e[20];let u;e[21]!==l||e[22]!==m||e[23]!==h?(u=(0,t.jsx)(R,{"aria-label":m,className:"h-8 w-56","data-testid":"nt-search",onChange:ee,placeholder:h,value:l}),e[21]=l,e[22]=m,e[23]=h,e[24]=u):u=e[24];let f;e[25]!==r?(f=r("Refresh"),e[25]=r,e[26]=f):f=e[26];let p;e[27]!==E||e[28]!==f?(p=(0,t.jsx)(B,{className:"ml-auto","data-testid":"nt-refresh",onClick:E,size:"sm",type:"button",variant:"outline",children:f}),e[27]=E,e[28]=f,e[29]=p):p=e[29];let $=L.length>0&&(0,t.jsx)(S,{"data-testid":"nt-count",variant:"secondary",children:r("{count} devices",{count:L.length})}),y;e[30]!==p||e[31]!==$||e[32]!==c||e[33]!==u?(y=(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[c,u,p,$]}),e[30]=p,e[31]=$,e[32]=c,e[33]=u,e[34]=y):y=e[34];let C;e[35]!==d||e[36]!==x?(C=d!==null&&(0,t.jsx)(q,{error:x,testId:"nt-error"}),e[35]=d,e[36]=x,e[37]=C):C=e[37],N=(0,t.jsxs)("div",{className:"flex flex-col gap-4","data-testid":"lunora-notifications",children:[y,C,d===null&&!_&&A.length===0&&(0,t.jsx)(D,{description:r("Registered Web Push / FCM devices appear here. Configure lunora/notify.ts with defineNotify({ store }) and register a device with ctx.push.register(...)."),icon:(0,t.jsx)("svg",{"aria-hidden":"true",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.6,viewBox:"0 0 24 24",children:(0,t.jsx)("path",{d:"M15 17h5l-1.4-1.4A2 2 0 0 1 18 14.2V11a6 6 0 0 0-4-5.7V5a2 2 0 1 0-4 0v.3A6 6 0 0 0 6 11v3.2a2 2 0 0 1-.6 1.4L4 17h5m6 0v1a3 3 0 1 1-6 0v-1m6 0H9"})}),testId:"nt-empty",title:r("No registered devices.")}),A.length>0&&(0,t.jsx)(V,{className:"overflow-hidden py-0",children:(0,t.jsx)(W,{className:"max-h-[30rem] overflow-auto px-0",children:(0,t.jsxs)(G,{"data-testid":"nt-table",children:[(0,t.jsx)(J,{children:(0,t.jsxs)(F,{children:[(0,t.jsx)(s,{children:r("kind")}),(0,t.jsx)(s,{children:r("endpoint")}),(0,t.jsx)(s,{children:r("user")}),(0,t.jsx)(s,{children:r("last seen")}),(0,t.jsx)(s,{children:r("status")}),(0,t.jsx)(s,{children:r("error")})]})}),(0,t.jsx)(K,{children:A.map(a=>{let z=Q(a);return(0,t.jsxs)(F,{"data-testid":"nt-row",children:[(0,t.jsx)(o,{children:(0,t.jsx)(S,{variant:"outline",children:a.kind})}),(0,t.jsx)(o,{className:"max-w-[28ch] truncate font-mono text-xs",title:z,children:z}),(0,t.jsx)(o,{className:"max-w-[16ch] truncate font-mono text-xs",children:a.userId??(0,t.jsx)("span",{className:"text-muted-foreground",children:"\u2014"})}),(0,t.jsx)(o,{className:"text-muted-foreground tabular-nums",children:H(a.lastSeenAt,"\u2014")}),(0,t.jsx)(o,{children:(0,t.jsx)(S,{"data-testid":`nt-status-${a.id}`,variant:ne(a.lastStatus),children:a.lastStatus??r("n/a")})}),(0,t.jsx)(o,{className:"max-w-[28ch] truncate font-mono text-xs text-muted-foreground",title:a.lastError??void 0,children:a.lastError??(0,t.jsx)("span",{className:"text-muted-foreground",children:"\u2014"})})]},a.id)})})]})})})]}),e[1]=I?.subscriptions,e[2]=d,e[3]=x,e[4]=_,e[5]=i,e[6]=v,e[7]=l,e[8]=r,e[9]=N}else N=e[9];return N},"ge");export{ve as default};
|