graview 0.1.66 → 0.1.67
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/preview/{chunk.LSN2IPAI.js → chunk.25QFDTCU.js} +1 -1
- package/dist/preview/{chunk.BFAFCVL4.js → chunk.264PB572.js} +1 -1
- package/dist/preview/chunk.2FHIINXG.js +2 -0
- package/dist/preview/{chunk.HSSIMVVM.js → chunk.2VUX54XH.js} +1 -1
- package/dist/preview/{chunk.CTASTRQN.js → chunk.35KMZHB7.js} +1 -1
- package/dist/preview/{chunk.OWFS2YDQ.js → chunk.37RFCHSS.js} +1 -1
- package/dist/preview/chunk.3ENPWZBG.js +1 -0
- package/dist/preview/{chunk.XMQG2PSM.js → chunk.3GNT5MKP.js} +1 -1
- package/dist/preview/{chunk.BXBEGMPO.js → chunk.3NSV3WKM.js} +2 -2
- package/dist/preview/chunk.3ZODN6BW.js +1 -0
- package/dist/preview/{chunk.OPTYYIGC.js → chunk.47XEJZ3O.js} +1 -1
- package/dist/preview/{chunk.5FNFRVTL.js → chunk.4EMKCKDB.js} +1 -1
- package/dist/preview/{chunk.B6JRTW3A.js → chunk.4UUJHLHR.js} +1 -1
- package/dist/preview/{chunk.FBILPNGH.js → chunk.4W57E7AX.js} +1 -1
- package/dist/preview/chunk.55G4IPOO.js +1 -0
- package/dist/preview/{chunk.72XP2ARZ.js → chunk.5AKZROMR.js} +1 -1
- package/dist/preview/chunk.5J6DVR7S.js +1 -0
- package/dist/preview/{chunk.FXT5CN32.js → chunk.5R744JGZ.js} +1 -1
- package/dist/preview/{chunk.NJRLJEJY.js → chunk.6KJGRM7A.js} +1 -1
- package/dist/preview/{chunk.4AC2QM7T.js → chunk.6N4PE3U5.js} +1 -1
- package/dist/preview/{chunk.LGRVEHXT.js → chunk.6NG76MDA.js} +2 -2
- package/dist/preview/{chunk.4FCFNAA4.js → chunk.6SJEZWH3.js} +1 -1
- package/dist/preview/{chunk.7VADSNPZ.js → chunk.6UQFV53C.js} +1 -1
- package/dist/preview/{chunk.WAB3L3ZI.js → chunk.6W6XMLSF.js} +1 -1
- package/dist/preview/{chunk.4JULYKGD.js → chunk.77C556NM.js} +1 -1
- package/dist/preview/{chunk.IGK7EZCX.js → chunk.7ARRVNUR.js} +1 -1
- package/dist/preview/{chunk.CBXS23YH.js → chunk.7BJRHPE3.js} +2 -2
- package/dist/preview/{chunk.ZQR2SN65.js → chunk.7S6ZRMW4.js} +1 -1
- package/dist/preview/{chunk.IAEHUSQQ.js → chunk.7UHPHEH5.js} +1 -1
- package/dist/preview/chunk.7WHQWLL6.js +1 -0
- package/dist/preview/{chunk.KACSYPEV.js → chunk.A4EZAGG7.js} +1 -1
- package/dist/preview/chunk.A5PSEU3W.js +25 -0
- package/dist/preview/{chunk.VKZIEZ5C.js → chunk.A7GVTE5Y.js} +2 -2
- package/dist/preview/{chunk.45JP6VGJ.js → chunk.AJMVRFYX.js} +2 -2
- package/dist/preview/{chunk.6P6NGZ6D.js → chunk.AKJS2NUM.js} +1 -1
- package/dist/preview/{chunk.CU2WCYMK.js → chunk.ARWO4WOV.js} +1 -1
- package/dist/preview/chunk.B5SJMCTT.js +7 -0
- package/dist/preview/{chunk.JXNVNFV4.js → chunk.B7KZBT27.js} +1 -1
- package/dist/preview/{chunk.E3UL4MCD.js → chunk.BDNQMKDG.js} +1 -1
- package/dist/preview/{chunk.YNEHJWJV.js → chunk.BKYZSV2Y.js} +1 -1
- package/dist/preview/{chunk.5BX66FBP.js → chunk.CKDCTFLU.js} +1 -1
- package/dist/preview/chunk.CTUJZ3IV.js +1 -0
- package/dist/preview/chunk.CY7FFKEZ.js +1 -0
- package/dist/preview/{chunk.3PBTN7RO.js → chunk.D4WJ7OM5.js} +1 -1
- package/dist/preview/{chunk.C2C3AXGI.js → chunk.D7NWMXSX.js} +3 -3
- package/dist/preview/chunk.DEKRFTRN.js +4 -0
- package/dist/preview/{chunk.E7EWNWAN.js → chunk.DKEIEH2D.js} +1 -1
- package/dist/preview/{chunk.I2737CPF.js → chunk.DWM7AR5Y.js} +1 -1
- package/dist/preview/{chunk.ANS2IEEV.js → chunk.DZMIYEHQ.js} +1 -1
- package/dist/preview/{chunk.BMENTGDC.js → chunk.E5PYNAYT.js} +2 -2
- package/dist/preview/chunk.EBKH3ILT.js +1 -0
- package/dist/preview/{chunk.DTCAUPLC.js → chunk.EFVSZKB5.js} +1 -1
- package/dist/preview/{chunk.QOS5T46W.js → chunk.EGPCVMDU.js} +1 -1
- package/dist/preview/{chunk.7ZKBYXUM.js → chunk.EJ2EZL2G.js} +1 -1
- package/dist/preview/{chunk.7VP6Y6D2.js → chunk.EP6Q32WT.js} +1 -1
- package/dist/preview/{chunk.OOSIKCOS.js → chunk.F464JKHZ.js} +1 -1
- package/dist/preview/{chunk.VGHO3VCB.js → chunk.FLJXYESX.js} +1 -1
- package/dist/preview/chunk.FOUBDGL3.js +1 -0
- package/dist/preview/chunk.FPHRAO3R.js +1 -0
- package/dist/preview/{chunk.4FDVINRJ.js → chunk.FRQSLWP4.js} +1 -1
- package/dist/preview/{chunk.2MHNPBHC.js → chunk.FVQKSN33.js} +1 -1
- package/dist/preview/{chunk.PDDIQ6PK.js → chunk.G3GFDVO2.js} +1 -1
- package/dist/preview/{chunk.ZD7T234N.js → chunk.G5GVT6JY.js} +1 -1
- package/dist/preview/{chunk.3L4JMM3P.js → chunk.GFLH7RCI.js} +1 -1
- package/dist/preview/{chunk.OO2OP76C.js → chunk.GMLONS5L.js} +1 -1
- package/dist/preview/{chunk.FK722SHI.js → chunk.GRFD42WM.js} +1 -1
- package/dist/preview/{chunk.2VR7YEJ6.js → chunk.GVT4UUQA.js} +1 -1
- package/dist/preview/{chunk.GME63ZHI.js → chunk.H3EGBDW2.js} +1 -1
- package/dist/preview/{chunk.DQFHIJFN.js → chunk.H6KIEDZN.js} +1 -1
- package/dist/preview/{chunk.5B5SRTUK.js → chunk.HAOB6O72.js} +1 -1
- package/dist/preview/chunk.HB5NWHFP.js +3 -0
- package/dist/preview/{chunk.6EHHMWPP.js → chunk.HJUZMOW2.js} +1 -1
- package/dist/preview/{chunk.6MQ5NT7S.js → chunk.HN4ZJ4B4.js} +1 -1
- package/dist/preview/chunk.HVBKI5ZO.js +1 -0
- package/dist/preview/chunk.I3SDKMQS.js +1 -0
- package/dist/preview/{chunk.QQAZQDRW.js → chunk.IAEGJDF3.js} +1 -1
- package/dist/preview/{chunk.QWNSHISU.js → chunk.IDALEKIW.js} +1 -1
- package/dist/preview/{chunk.QFHWG4LN.js → chunk.ILJDLBPJ.js} +1 -1
- package/dist/preview/{chunk.ZR2TP3BF.js → chunk.J2OPIS3H.js} +1 -1
- package/dist/preview/chunk.J5OLYVZ4.js +1 -0
- package/dist/preview/{chunk.LETAQTLJ.js → chunk.J6HF7IRQ.js} +1 -1
- package/dist/preview/{chunk.RWIN3POV.js → chunk.JEC5FDKX.js} +1 -1
- package/dist/preview/chunk.JKFVNQY7.js +1 -0
- package/dist/preview/{chunk.LLIURXFP.js → chunk.JQ2WNKDW.js} +1 -1
- package/dist/preview/{chunk.Z7Y3R3YR.js → chunk.JQ63N4MZ.js} +1 -1
- package/dist/preview/{chunk.DZFM6GSY.js → chunk.JU6UFWS3.js} +1 -1
- package/dist/preview/{chunk.INHS3KTK.js → chunk.JVB5KDSG.js} +1 -1
- package/dist/preview/{chunk.4U4D7WOI.js → chunk.KFT7JIEH.js} +1 -1
- package/dist/preview/chunk.KGMSSXZL.js +1 -0
- package/dist/preview/{chunk.5CXIEYHY.js → chunk.KX5ZBHMA.js} +2 -2
- package/dist/preview/{chunk.V7W5AQKL.js → chunk.LP2ZMAT2.js} +1 -1
- package/dist/preview/{chunk.BUVTUAB5.js → chunk.LRNFE3UK.js} +1 -1
- package/dist/preview/{chunk.PAGEGBUD.js → chunk.LVOTLGJB.js} +1 -1
- package/dist/preview/{chunk.QHMHUL6B.js → chunk.LYEGRY77.js} +1 -1
- package/dist/preview/{chunk.PPSYUOH7.js → chunk.M7KXQGQL.js} +1 -1
- package/dist/preview/{chunk.7BIPZTJB.js → chunk.MAKCZ6B6.js} +1 -1
- package/dist/preview/{chunk.EQ4OODGO.js → chunk.MJY4SLWA.js} +1 -1
- package/dist/preview/{chunk.EMFOMSMI.js → chunk.MSAYU25L.js} +1 -1
- package/dist/preview/{chunk.F4VB6Q2W.js → chunk.MUSMNKE4.js} +1 -1
- package/dist/preview/{chunk.BGAC3B7X.js → chunk.MW7R5G3C.js} +1 -1
- package/dist/preview/{chunk.AK7NGFEX.js → chunk.N4ZKZ4GM.js} +1 -1
- package/dist/preview/{chunk.TXHYGFIZ.js → chunk.NAXOXBOF.js} +1 -1
- package/dist/preview/{chunk.IWYMKGZZ.js → chunk.NKLPL7QD.js} +1 -1
- package/dist/preview/{chunk.QU52E5RG.js → chunk.NKYWIGC7.js} +1 -1
- package/dist/preview/{chunk.KSIEO5W7.js → chunk.NRURQGXV.js} +1 -1
- package/dist/preview/{chunk.FV72U33M.js → chunk.NSOPYIT4.js} +1 -1
- package/dist/preview/chunk.NXZL5CA2.js +1 -0
- package/dist/preview/{chunk.WVLEGCRI.js → chunk.O2OL6RQQ.js} +1 -1
- package/dist/preview/{chunk.TGEL6EUA.js → chunk.O5VFKVZS.js} +1 -1
- package/dist/preview/{chunk.CEVGND3Y.js → chunk.OCXY5DCD.js} +3 -3
- package/dist/preview/chunk.OHAO6KKH.js +1 -0
- package/dist/preview/{chunk.DSYP43NN.js → chunk.P2EKKKK2.js} +1 -1
- package/dist/preview/chunk.PSNMZBVS.js +1 -0
- package/dist/preview/{chunk.W53YNBSM.js → chunk.PZ7KY6XH.js} +1 -1
- package/dist/preview/{chunk.WSO7JOW5.js → chunk.QAM76AXV.js} +1 -1
- package/dist/preview/{chunk.PSQYDCVM.js → chunk.QF5QB5YR.js} +1 -1
- package/dist/preview/chunk.QNP5OR3P.js +93 -0
- package/dist/preview/{chunk.5LJVOLKR.js → chunk.QRQ5WPZI.js} +1 -1
- package/dist/preview/chunk.QWGWOEBZ.js +90 -0
- package/dist/preview/{chunk.OMT4QUZY.js → chunk.QXLJGHMC.js} +4 -4
- package/dist/preview/{chunk.J2MM6BUW.js → chunk.QZQCQWQG.js} +1 -1
- package/dist/preview/{chunk.6FQW6FNL.js → chunk.R6JBA7UK.js} +1 -1
- package/dist/preview/chunk.R7CRBRD4.js +1 -0
- package/dist/preview/chunk.RD2FSSLV.js +1 -0
- package/dist/preview/{chunk.OEIWIZCP.js → chunk.RG5G6YQD.js} +1 -1
- package/dist/preview/{chunk.PFQBCHQA.js → chunk.RJY7VJBH.js} +1 -1
- package/dist/preview/chunk.RR25BGWP.js +1 -0
- package/dist/preview/{chunk.BZ7QWHAE.js → chunk.RSQ432QN.js} +1 -1
- package/dist/preview/{chunk.MWGZKZD6.js → chunk.SFBHPYRD.js} +1 -1
- package/dist/preview/{chunk.FFOD5B4B.js → chunk.SJQPTDAT.js} +1 -1
- package/dist/preview/{chunk.OTV5XTBB.js → chunk.SNHKYH72.js} +1 -1
- package/dist/preview/{chunk.WSDJPXJD.js → chunk.SO6NT5K7.js} +1 -1
- package/dist/preview/{chunk.FDZE5LTJ.js → chunk.STPA7HBK.js} +2 -2
- package/dist/preview/{chunk.ONYBW45K.js → chunk.SY5ID44D.js} +1 -1
- package/dist/preview/chunk.T27QKVKP.js +1 -0
- package/dist/preview/{chunk.U6TEW6YD.js → chunk.T2OUHRAA.js} +1 -1
- package/dist/preview/chunk.T3WCRS6M.js +1 -0
- package/dist/preview/{chunk.QGIM2WAY.js → chunk.TI5FR2QQ.js} +1 -1
- package/dist/preview/{chunk.HOCD7KIR.js → chunk.TTSGCNPT.js} +1 -1
- package/dist/preview/{chunk.ES63XSIM.js → chunk.TXZQEJ5T.js} +1 -1
- package/dist/preview/{chunk.6LXIEM6B.js → chunk.UDHPMVC4.js} +1 -1
- package/dist/preview/{chunk.KBPJ7X7W.js → chunk.UGQYMN4J.js} +1 -1
- package/dist/preview/{chunk.M6ZN2KUO.js → chunk.UQIPEMJ5.js} +1 -1
- package/dist/preview/{chunk.FIFUMX5X.js → chunk.URQTF5SY.js} +1 -1
- package/dist/preview/{chunk.J7W2OFHY.js → chunk.UW52CMGJ.js} +1 -1
- package/dist/preview/{chunk.LINSO5PN.js → chunk.UWS4RMM3.js} +1 -1
- package/dist/preview/{chunk.QPF4KSAW.js → chunk.V7H4BUEB.js} +1 -1
- package/dist/preview/{chunk.KHRS2SKB.js → chunk.VBHV4TLG.js} +1 -1
- package/dist/preview/{chunk.U3ED7W2U.js → chunk.VBLQJVQ5.js} +1 -1
- package/dist/preview/{chunk.CVPMSPCH.js → chunk.WALVW3KJ.js} +1 -1
- package/dist/preview/{chunk.2KFZHUAC.js → chunk.WEMUKZKH.js} +1 -1
- package/dist/preview/{chunk.YIPXZUTT.js → chunk.X226YATK.js} +1 -1
- package/dist/preview/{chunk.GNEOSHQ6.js → chunk.XFLGSUYO.js} +1 -1
- package/dist/preview/{chunk.W4YDPHCQ.js → chunk.XSWSBTUO.js} +1 -1
- package/dist/preview/{chunk.OJY7VJ7D.js → chunk.YCD4JSXD.js} +1 -1
- package/dist/preview/{chunk.72ZCLEQC.js → chunk.YZPESGCP.js} +1 -1
- package/dist/preview/{chunk.XOE4KNP2.js → chunk.Z27NSSYL.js} +2 -2
- package/dist/preview/{chunk.DEHIR4EG.js → chunk.Z2XUVJAL.js} +1 -1
- package/dist/preview/{chunk.YXEO3Y65.js → chunk.Z3O2VZAJ.js} +1 -1
- package/dist/preview/{chunk.M2JCFNHJ.js → chunk.Z4TY44CD.js} +1 -1
- package/dist/preview/{chunk.EXYCN4WI.js → chunk.ZAPS4J6G.js} +1 -1
- package/dist/preview/{chunk.6TLXFMX2.js → chunk.ZAQ4IDX6.js} +1 -1
- package/dist/preview/{chunk.6HY6ZGEE.js → chunk.ZEZUKRC6.js} +1 -1
- package/dist/preview/{chunk.GEFXU4VO.js → chunk.ZG5VGP5U.js} +1 -1
- package/dist/preview/index.html +56 -56
- package/dist/preview/page.js +2 -2
- package/package.json +6 -6
- package/dist/preview/chunk.4WGYUYWU.js +0 -2
- package/dist/preview/chunk.5EMIWORS.js +0 -1
- package/dist/preview/chunk.6EVMXBNB.js +0 -1
- package/dist/preview/chunk.BCQWAFGD.js +0 -1
- package/dist/preview/chunk.BOCVLC7X.js +0 -1
- package/dist/preview/chunk.DPJNGFEZ.js +0 -4
- package/dist/preview/chunk.E4VRRWFP.js +0 -1
- package/dist/preview/chunk.EUAO4QNV.js +0 -1
- package/dist/preview/chunk.F7672TKJ.js +0 -1
- package/dist/preview/chunk.FA42HCPW.js +0 -1
- package/dist/preview/chunk.FBJAQPZ6.js +0 -1
- package/dist/preview/chunk.GAFMWOME.js +0 -1
- package/dist/preview/chunk.I4Z7HVRT.js +0 -1
- package/dist/preview/chunk.JMXXA4YG.js +0 -1
- package/dist/preview/chunk.JMYUQNXN.js +0 -6
- package/dist/preview/chunk.K6DFXDPZ.js +0 -1
- package/dist/preview/chunk.KF27ME27.js +0 -1
- package/dist/preview/chunk.L25DCT5S.js +0 -1
- package/dist/preview/chunk.MODLZJD4.js +0 -25
- package/dist/preview/chunk.OJGHDWI6.js +0 -1
- package/dist/preview/chunk.SSF47GUY.js +0 -1
- package/dist/preview/chunk.T6DPWW2K.js +0 -3
- package/dist/preview/chunk.TA36WBHK.js +0 -1
- package/dist/preview/chunk.TTGKX7LT.js +0 -1
- package/dist/preview/chunk.U3HERHAI.js +0 -88
- package/dist/preview/chunk.V5I4GZEY.js +0 -1
- package/dist/preview/chunk.VT2YGDK2.js +0 -1
- package/dist/preview/chunk.XK65Y2KX.js +0 -1
- package/dist/preview/chunk.Z274CL7J.js +0 -1
- package/dist/preview/chunk.ZBVYD4OX.js +0 -90
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var __graviewPreload=(base,files)=>{if(typeof document>"u")return;const asked=globalThis.__graviewPreloaded??=new Set;for(const file of files){const href=new URL(file,base).href;if(asked.has(href))continue;asked.add(href);const link=document.createElement("link");link.rel="modulepreload";link.href=href;document.head.append(link)}};import{a as Mt}from"./chunk.JO2X52D4.js";import{a as Ae,b as me}from"./chunk.ZRBGYXAO.js";import{a as pe}from"./chunk.CEQQIW7Z.js";import{a as St,b as At,c as Gt,d as fe,e as Ot,f as Kt,g as Pt}from"./chunk.
|
|
1
|
+
var __graviewPreload=(base,files)=>{if(typeof document>"u")return;const asked=globalThis.__graviewPreloaded??=new Set;for(const file of files){const href=new URL(file,base).href;if(asked.has(href))continue;asked.add(href);const link=document.createElement("link");link.rel="modulepreload";link.href=href;document.head.append(link)}};import{a as Mt}from"./chunk.JO2X52D4.js";import{a as Ae,b as me}from"./chunk.ZRBGYXAO.js";import{a as pe}from"./chunk.CEQQIW7Z.js";import{a as St,b as At,c as Gt,d as fe,e as Ot,f as Kt,g as Pt}from"./chunk.NRURQGXV.js";import{a as Ee,e as xt}from"./chunk.BBLIT7S7.js";import{b as wt,h as vt,i as kt,k as bt}from"./chunk.H6KIEDZN.js";import"./chunk.264PB572.js";import{h as Tt}from"./chunk.GG47EIKO.js";import"./chunk.NYLKG25K.js";import{e as Rt}from"./chunk.G3GFDVO2.js";import{c as Wt,f as We,g as Re}from"./chunk.D4WJ7OM5.js";import{d as Et}from"./chunk.QDVGHI7R.js";import{b as ue,e as ce}from"./chunk.AKJS2NUM.js";import"./chunk.M5FP4Y4Q.js";import"./chunk.LP2ZMAT2.js";import{a as B}from"./chunk.SDO3U72B.js";import"./chunk.ZEZUKRC6.js";import"./chunk.FQLNBIQ5.js";import"./chunk.AJZBJBMO.js";var Lt=["good","warn","bad","neutral","accent"],_t=["value","max","aria-label","placeholder","disabled"],Vt=["click","change"],Ge=["_blank","_self"],It=["section","div","span","strong","p","hr","a","button","input","progress"],ge={type:{oneOf:Lt}},Oe={"gv-card":{host:"section",properties:{tone:ge},events:{},children:"any"},"gv-group":{host:"div",properties:{direction:{type:{oneOf:["row","column"]}}},events:{},children:"any"},"gv-title":{host:"strong",properties:{},events:{},children:"text"},"gv-text":{host:"p",properties:{tone:ge},events:{},children:"text"},"gv-badge":{host:"span",properties:{tone:ge},events:{},children:"text"},"gv-field":{host:"div",properties:{label:{type:"string"}},events:{},children:"text"},"gv-progress":{host:"progress",properties:{value:{type:"number",as:"value"},max:{type:"number",as:"max"},label:{type:"string",as:"aria-label"}},events:{},children:"none"},"gv-divider":{host:"hr",properties:{},events:{},children:"none"},"gv-link":{host:"a",properties:{href:{type:"url"}},events:{},children:"text"},"gv-button":{host:"button",properties:{tone:ge,disabled:{type:"boolean",as:"disabled"}},events:{press:{from:"click"}},children:"text"},"gv-input":{host:"input",properties:{label:{type:"string",as:"aria-label"},value:{type:"string",as:"value"},placeholder:{type:"string",as:"placeholder"}},events:{change:{from:"change",detail:"value"}},children:"none"}},Ke=1e4;var fr=0,mr=1,gr=2,yr=3,Ct=1,hr=2,wr=3,vr=1,kr=3,br=8,Pe="~",Le=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),ne=t=>typeof t=="object"&&t!==null&&!Array.isArray(t);function Nt(t,e){return e.type==="url"?"href":e.as??`data-gv-${t.toLowerCase()}`}var xr=2e3;function Ht(t,e){if(e==null)return{ok:!0,value:null};let a=t.type;if(a==="boolean")return typeof e=="boolean"?{ok:!0,value:e}:{ok:!1,reason:"value"};if(a==="number")return typeof e=="number"&&Number.isFinite(e)?{ok:!0,value:String(e)}:{ok:!1,reason:"value"};if(typeof e!="string"||e.length>xr)return{ok:!1,reason:a==="url"?"url":"value"};if(typeof a=="object")return a.oneOf.includes(e)?{ok:!0,value:e}:{ok:!1,reason:"value"};if(a==="url"){let p;try{p=new URL(e)}catch{return{ok:!1,reason:"url"}}return p.protocol!=="https:"||p.hostname===""||!/^https:\/\//i.test(e)?{ok:!1,reason:"url"}:{ok:!0,value:p.href}}return{ok:!0,value:e}}function Sr(t){let e=t.host==="a";return It.includes(t.host)&&(t.target===void 0||e&&Ge.includes(t.target))&&Object.values(t.properties).every(a=>a.type!=="url"||e)&&Object.values(t.properties).every(a=>a.as===void 0||a.type!=="url"&&_t.includes(a.as))&&Object.values(t.events).every(a=>Vt.includes(a.from))}function _e(t,e){let a=e.kit??Oe,p=e.maxNodes??2e3,o=t.ownerDocument,m=[],g=new Map,w={dom:t,name:Pe,component:{host:"div",properties:{},events:{},children:"any"},children:[],listeners:new Map,id:Pe};g.set(Pe,w);let E=e.links?new Set(e.links.origins.flatMap(n=>{try{let c=new URL(n);return c.protocol==="https:"&&c.hostname!==""?[c.origin]:[]}catch{return[]}})):void 0,A=0,y=0,V=!1,f=n=>{m.push(n),m.length>200&&m.shift()},v=()=>({dom:o.createComment(""),children:[],refused:!0,listeners:new Map}),G=(n,c,h)=>{let k=n.component;if(!Le(k.properties,c))return f({reason:"property",element:n.name,name:c});let l=k.properties[c],d=Ht(l,h),b=d.ok&&l.type==="url"&&E&&typeof d.value=="string"&&!E.has(new URL(d.value).origin)?{ok:!1,reason:"url"}:d,K=n.dom,R=Nt(c,l);if(!b.ok)return K.removeAttribute(R),f({reason:b.reason,element:n.name,name:c});let P=b.value;P===null||P===!1?K.removeAttribute(R):K.setAttribute(R,P===!0?"":P),R==="value"&&"value"in K&&(K.value=typeof P=="string"?P:""),R==="disabled"&&"disabled"in K&&(K.disabled=P!==null&&P!==!1)},S=(n,c,h)=>{let k=n.component;if(!Le(k.events,c))return f({reason:"event",element:n.name,name:c});let l=n.listeners.get(c);if(l&&(l(),n.listeners.delete(c),y-=1),h==null)return;if(!ne(h)||typeof h.listener!="number")return f({reason:"value",element:n.name,name:c});let d=h.listener,b=k.events[c],K=n.dom,R=()=>e.onEvent(d,b.detail==="value"?String(K.value??""):void 0);K.addEventListener(b.from,R),n.listeners.set(c,()=>K.removeEventListener(b.from,R)),y+=1},W=n=>{if(!n.refused){A-=1,n.id!==void 0&&g.delete(n.id);for(let c of n.listeners.values())c();y-=n.listeners.size,n.listeners.clear();for(let c of n.children)W(c)}},T=(n,c)=>{if(!ne(n)||typeof n.id!="string"||g.has(n.id))return f({reason:"record"}),v();if(A>=p)return f({reason:"budget"}),V||(V=!0,e.onOverBudget?.()),v();let h=n.id,k=c.component.children;if(n.type===br)return v();if(n.type===kr){if(k==="none")return f({reason:"child",element:c.name}),v();let R={dom:o.createTextNode(String(n.data??"").slice(0,Ke)),children:[],text:!0,listeners:new Map,id:h};return g.set(h,R),A+=1,R}if(n.type!==vr)return f({reason:"record"}),v();let l=String(n.element);if(!Le(a,l)||!Sr(a[l]))return f({reason:"element",element:l}),v();if(k!=="any")return f({reason:"child",element:l}),v();let d=a[l],b=o.createElement(d.host);b.setAttribute("data-gv",l.replace(/^gv-/,"")),b.className=`graview-guest-${l.replace(/^gv-/,"")}`,d.host==="a"&&(b.setAttribute("rel","noopener noreferrer"),b.setAttribute("target",d.target??"_blank"),b.setAttribute("referrerpolicy","no-referrer")),d.host==="button"&&b.setAttribute("type","button");let K={dom:b,name:l,component:d,children:[],listeners:new Map,id:h};if(g.set(h,K),A+=1,ne(n.properties))for(let[R,P]of Object.entries(n.properties))G(K,R,P);if(ne(n.attributes))for(let R of Object.keys(n.attributes))f({reason:"attribute",element:l,name:R});if(ne(n.eventListeners))for(let[R,P]of Object.entries(n.eventListeners))S(K,R,P);if(Array.isArray(n.children))for(let R of n.children){let P=T(R,K);K.children.push(P),b.appendChild(P.dom)}return K},O=n=>{if(!Array.isArray(n))return f({reason:"record"});let[c,h]=n,k=typeof h=="string"?g.get(h):void 0;if(!k)return f({reason:"record"});switch(c){case fr:{if(k.text)return f({reason:"record"});let l=Number(n[3]),d=Number.isInteger(l)&&l>=0&&l<=k.children.length?l:k.children.length,b=T(n[2],k);k.dom.insertBefore(b.dom,k.children[d]?.dom??null),k.children.splice(d,0,b);return}case mr:{let l=Number(n[2]),d=k.children[l];if(!d)return f({reason:"record"});k.children.splice(l,1),d.dom.parentNode?.removeChild(d.dom),W(d);return}case gr:if(!k.text)return f({reason:"record"});k.dom.data=String(n[2]??"").slice(0,Ke);return;case yr:{if(k===w||k.text)return f({reason:"record"});let l=String(n[2]),d=n[4]??Ct;return d===Ct?G(k,l,n[3]):d===wr?S(k,l,n[3]):f(d===hr?{reason:"attribute",element:k.name,name:l}:{reason:"record"})}default:return f({reason:"record"})}};return{apply(n,c){if(!Array.isArray(n))return f({reason:"record"}),!0;for(let h=0;h<n.length;h+=1){if(c&&h%32===0&&c())return!1;O(n[h])}return!0},get refused(){return m},get size(){return A},get listening(){return y},dispose(){for(let n of w.children)W(n);w.children.length=0,t.replaceChildren()}}}var Ve=`
|
|
2
2
|
.graview-guest { display: flex; flex-direction: column; gap: 8px; min-width: 0; color: var(--graview-ink, inherit); font: inherit; }
|
|
3
3
|
.graview-guest-card { display: flex; flex-direction: column; gap: 6px; padding: 12px; border: 1px solid var(--graview-edge, #d0d0d0); border-radius: 10px; background: var(--graview-panel, transparent); }
|
|
4
4
|
.graview-guest-group { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
|
|
@@ -18,4 +18,4 @@ var __graviewPreload=(base,files)=>{if(typeof document>"u")return;const asked=gl
|
|
|
18
18
|
.graview-guest [data-gv-tone="warn"] { color: var(--graview-warn, inherit); }
|
|
19
19
|
.graview-guest [data-gv-tone="accent"] { color: var(--graview-accent, inherit); }
|
|
20
20
|
.graview-guest [data-gv-tone="neutral"] { color: var(--graview-ink-muted, inherit); }
|
|
21
|
-
`;var Dt=new WeakSet;function Tr(t,e){if(t.startsWith("blob:"))return"blob:";try{return new URL(t,e.location.href).origin}catch{return t}}function jt(t,e,a){let p=Tr(e,t),o=`this page's Content-Security-Policy${a?` (${a})`:""} does not allow a worker from ${p}: it needs worker-src ${p}`;return Dt.has(t)||(Dt.add(t),t.console?.warn?.(`Graview: worker views cannot start on this page, because ${o}. A host that will not allow ${p} serves each view's whole script from its own origin and passes worker: { url } (the @graview/guest README, "What the host page allows").`)),o}function Mr(t,e){return t===""?!0:e.startsWith("blob:")?t.startsWith("blob"):e.startsWith(t)||t.startsWith(e)}function ye(t,e){let a="script"in e.source?t.URL.createObjectURL(new t.Blob([e.source.script],{type:"text/javascript"})):void 0,p="script"in e.source?a:e.source.url,o,m,g=!1,w=!1,E=0,A=0,y="",V=0,f=0,v=t.performance,G=v.now(),S,W=l=>{let d=l,b=String(d.effectiveDirective||d.violatedDirective||"").split(" ")[0];/^(worker-src|script-src|script-src-elem|child-src|default-src)$/.test(b)&&Mr(String(d.blockedURI??""),p)&&(S=b)},T=t.document;T?.addEventListener("securitypolicyviolation",W);let O=()=>T?.removeEventListener("securitypolicyviolation",W),n=()=>{w||(w=!0,m?.close(),o?.terminate(),o=void 0,t.clearTimeout(E),t.clearInterval(A),O(),a&&t.URL.revokeObjectURL(a))},c=(l,d)=>{w||(n(),e.onStop(l,d))},h=()=>{t.clearTimeout(E),O(),y=St();let l=new t.MessageChannel;m=l.port1;let d=Math.max(1,e.silentMs),b=Math.max(10,Math.min(1e3,Math.floor(d/4)));G=v.now();let K=G;A=t.setInterval(()=>{let P=v.now();if(P-K>b*2&&(G+=P-K-b),K=P,P-G>=d)return c("silent");V+=1,l.port1.postMessage({type:"heartbeat",beat:V})},b);let R={graview:"host-hello",protocol:1,nonce:y,view:e.name};o.postMessage(R,[l.port2]),e.onReady(y,l.port1,v.now()-k)},k=v.now();try{o=new t.Worker(p,{name:e.name})}catch(l){o=void 0;let d=l,b=d?.name==="SecurityError"?jt(t,p,S):`the worker could not be made: ${String(d?.message??l)}`;queueMicrotask(()=>c("start",b))}return o&&(E=t.setTimeout(()=>c("start",`it never said it was ready in ${e.readyMs.toLocaleString("en-US")} ms`),e.readyMs),o.onerror=l=>{let d=typeof l.message=="string"&&l.message!==""?l.message:void 0;if(g)return void e.onError?.(d??"an error");t.clearTimeout(E),t.setTimeout(()=>!g&&c("start",S?jt(t,p,S):d?`it failed before it said ready: ${d}`:"it failed before it said ready, and the engine gave no reason (a page policy that refuses it, or a script that does not load)"),0)},o.onmessage=l=>{if(!e.limiter.message()||g||!xt(l.data)||l.data.protocol!==1){e.onDropped();return}g=!0,h()}),{get worker(){return o},answer(l){let d=l;return typeof d!="object"||d===null||d.type!=="heartbeat"||d.nonce!==y?!1:(typeof d.beat=="number"&&d.beat>f&&d.beat<=V&&(f=d.beat,G=v.now()),!0)},stop:n}}function he(t,e){let a=e(),p=0;return{draw(o){let m=e();m-a>=1e3&&(a=m,p=0);let g=t(),w=o(()=>p+(e()-m)>=g);return p+=e()-m,w&&p<g}}}function Bt(t){return!Number.isFinite(t)||t<=60?1:Math.min(4,Math.round(t/60*10)/10)}function Ft(t,e){return{...t,pushMs:Math.round(t.pushMs*e),drawMs:Math.round(t.drawMs*e)}}var $t=new WeakMap;function Ut(t,e){let a=$t.get(t);return a!==void 0?a:($t.set(t,e),e)}var Er=B(()=>(__graviewPreload(import.meta.url,["./chunk.32SHA3EY.js","./chunk.GG47EIKO.js","./chunk.NYLKG25K.js","./chunk.AJZBJBMO.js"]),import("./chunk.U6QXLNHF.js"))),Wr=B(()=>(__graviewPreload(import.meta.url,["./chunk.DTCAUPLC.js","./chunk.PDDIQ6PK.js","./chunk.3PBTN7RO.js","./chunk.QDVGHI7R.js","./chunk.6P6NGZ6D.js","./chunk.M5FP4Y4Q.js","./chunk.6HY6ZGEE.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.XK65Y2KX.js"))),Rr=B(()=>(__graviewPreload(import.meta.url,["./chunk.RSMCTI2N.js","./chunk.AJZBJBMO.js"]),import("./chunk.UJPX3BUV.js"))),Ar=B(()=>(__graviewPreload(import.meta.url,["./chunk.WVUJXDXZ.js","./chunk.I2737CPF.js","./chunk.NJRLJEJY.js","./chunk.CVPMSPCH.js","./chunk.OTV5XTBB.js","./chunk.KBPJ7X7W.js","./chunk.OEIWIZCP.js","./chunk.Z7Y3R3YR.js","./chunk.YXEO3Y65.js","./chunk.6HY6ZGEE.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.E7EWNWAN.js"))),Gr=B(()=>(__graviewPreload(import.meta.url,["./chunk.3PBTN7RO.js","./chunk.QDVGHI7R.js","./chunk.6P6NGZ6D.js","./chunk.6HY6ZGEE.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.PFQBCHQA.js"))),Or=B(()=>(__graviewPreload(import.meta.url,["./chunk.BBLIT7S7.js","./chunk.AJZBJBMO.js"]),import("./chunk.RRCPEHM4.js"))),Kr=B(()=>(__graviewPreload(import.meta.url,["./chunk.WVUJXDXZ.js","./chunk.I2737CPF.js","./chunk.NJRLJEJY.js","./chunk.CVPMSPCH.js","./chunk.OTV5XTBB.js","./chunk.KBPJ7X7W.js","./chunk.OEIWIZCP.js","./chunk.Z7Y3R3YR.js","./chunk.YXEO3Y65.js","./chunk.6HY6ZGEE.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.5EMIWORS.js"))),Pr=B(()=>(__graviewPreload(import.meta.url,["./chunk.QDVGHI7R.js","./chunk.AJZBJBMO.js"]),import("./chunk.EG7OOJH5.js"))),Lr=B(()=>(__graviewPreload(import.meta.url,["./chunk.6HY6ZGEE.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.4U4D7WOI.js"))),_r='a[href^="#"], [data-sight], [data-file]';function Vr(t,e,a){switch(t){case"manifest":return a??"Its manifest names something this app does not have.";case"source":return a??`Its code is longer than the ${e.maxSourceBytes.toLocaleString("en-US")} bytes a view may be.`;case"start":return`It could not start${a?`: ${a}.`:"."}`;case"error":return`It failed before it drew anything${a?`: ${a}`:"."}`;case"silent":return`It stopped answering for ${e.silentMs.toLocaleString("en-US")} ms.`;case"nodes":return`It drew more than the ${e.maxNodes.toLocaleString("en-US")} things a view may draw.`;case"flood":return`It sent more than ${e.messages} messages in ${e.messageWindowMs.toLocaleString("en-US")} ms.`;case"slow":return`It took longer than ${e.pushMs.toLocaleString("en-US")} ms to draw what it was shown.`}}function Ir(t,e){let a=t.ownerDocument,p=a.defaultView,{manifest:o}=e,m=a.createElement("div");m.className="graview-worker-view",m.setAttribute("role","region"),m.setAttribute("aria-label",o.title??o.name),m.setAttribute("data-worker-view",o.name),m.style.cssText="display:block;position:relative;contain:layout paint style;isolation:isolate;overflow:clip;min-width:0",t.appendChild(m);let g=m.attachShadow({mode:"open"}),w=e.author?a.createElement("p"):void 0;w&&(w.className="graview-worker-view-author",w.setAttribute("data-worker-view-author",o.name),w.style.cssText="margin:4px 0 0;font-size:0.75rem;color:var(--graview-ink-muted, inherit)",w.textContent=e.author,t.appendChild(w));let E={applied:0,refused:0,dropped:0},A=ue(e.limits),y={maxSourceBytes:e.limits?.maxSourceBytes??256e3,maxNodes:e.limits?.maxNodes??5e3,messages:e.limits?.messages??120,messageWindowMs:e.limits?.messageWindowMs??1e3,pushMs:e.limits?.pushMs??1e3,silentMs:e.limits?.silentMs??5e3,drawMs:e.limits?.drawMs??100},V={pushMs:y.pushMs,drawMs:y.drawMs},f,v,G,S,W,T,O=!1,n={applied:0,refused:0,dropped:0},c=[],h=()=>{if(!S)return;let r=S.stats;E.applied+=r.applied-n.applied,E.refused+=r.refused-n.refused,E.dropped+=r.dropped-n.dropped,n={...r}},k=()=>{},l,d,b=()=>{let r=g.querySelector("[data-graview-view-root]"),s=p.ResizeObserver;d||!r||typeof s!="function"||(d=new s(M=>{let _=M[M.length-1]?.borderBoxSize?.[0],I=Math.ceil(_?_.blockSize:r.offsetHeight);I!==l&&(l=I,m.setAttribute("data-graview-content-height",String(I)),e.onContentHeight?.(I))}),d.observe(r))},K=()=>{d&&(d.disconnect(),d=void 0,l=void 0,m.removeAttribute("data-graview-content-height"),e.onContentHeight?.(void 0))},R=0,P=()=>{},F,Jt,q,Ie=[],Ce=()=>{P(),P=()=>{},F?.dispose(),h(),S?.dispose(),S=void 0,W?.stop(),k(),p.clearInterval(R)},H=(r,s)=>{if(O)return;O=!0,Ce(),K(),T?.dispose();let M=Vr(r,y,s);m.removeAttribute("data-worker-view-drawn"),m.setAttribute("data-worker-view-failed",r),e.fallback!==!1&&(e.fallback??Qt)(m,r,M),e.onFailure?.(r,M)},Qt=(r,s,M)=>{let _=v??(()=>{try{return Re(e.store,e.principal,{manifest:o,...e.input?{input:e.input()}:{},...G?{computed:G}:{}})}catch{return}})(),I=a.createElement("div");I.setAttribute("data-graview-fallback",s),I.style.cssText="padding:12px;display:grid;gap:6px;color:var(--graview-ink, inherit);font-family:var(--graview-font-body, inherit)";let u=a.createElement("strong");u.textContent=o.title??o.name;let C=a.createElement("ul");C.style.cssText="margin:0;padding-left:1.2em";for(let j of[..._?.node?[_.node]:[],..._?.nodes??[]]){let de=a.createElement("li");de.textContent=j.label??j.id,C.appendChild(de)}let N=a.createElement("p");N.style.cssText="margin:0;font-size:0.8125rem;color:var(--graview-ink-muted, inherit)",N.textContent=`This view was stopped. ${M}`,I.append(u,C,N),g.replaceChildren(I)},Ne=Wt(o,e.store);if(Ne.length>0)return queueMicrotask(()=>H("manifest",Ne.join(" "))),Se();let He=r=>{if(("source"in r?new TextEncoder().encode(r.source).length:"script"in r?new TextEncoder().encode(r.script).length:0)>y.maxSourceBytes)return["source"];let M="source"in r?pe(r.source):[];return M.length>0?["source",M.join(" ")]:void 0},X=e.worker,De=typeof X=="function"?void 0:He(X);if(De)return queueMicrotask(()=>H(...De)),Se();let je=Pt(p,()=>Fe(),"blob"),we=()=>Kt(()=>e.theme?.()??fe(m),e.brand,je),$e=()=>{let r=e.brand?.()?.views;T?.theme(r?.css),T?.motion(r?.motion??"none")},Be="",ve=()=>{Be=JSON.stringify(we()),$e(),S?.push()},Fe=()=>{S&&JSON.stringify(we())!==Be&&ve()},Zt=Ot(a,Fe),U,er=We(e.store,o)?Kr().then(({computedOn:r})=>{G=r(e.store.schema)}):Promise.resolve(),z,tr=o.pictures?Rr().then(({createGuestPictures:r})=>{O||(U=r(p,{as:"blob",view:`"${o.title??o.name}"`,pictures:o.pictures,...e.limits?{limits:e.limits}:{},...e.file?{file:e.file}:{},moved:()=>S?.push(),onLeft:s=>{$?.postMessage({type:"notice",text:s}),e.onProblem?.(s)}}))}):Promise.resolve();k=()=>{Zt(),je.dispose(),U?.dispose(),ee?.dispose(),z?.dispose(),ae?.dispose()};let $,Y=r=>$?.postMessage(r),Ue=!1,ze=!1,oe=()=>m.toggleAttribute("data-worker-view-drawn",!O&&ze&&T!==void 0&&c.length===0&&Q.size===0&&!U?.waiting()&&!(z?.waiting??0)),J=p.performance,Q=new Map,se=J.now(),rr=()=>{if(R)return;let r=Math.max(10,Math.min(250,Math.floor(y.pushMs/4)));se=J.now(),R=p.setInterval(()=>{let s=J.now(),M=s-se>r*2?s-se-r:0;se=s;for(let[_,I]of Q){let u=I+M;if(Q.set(_,u),s-u>=y.pushMs)return H("slow")}},r)},nr=he(()=>y.drawMs,()=>J.now()),qe=()=>{},ke=r=>{if(O)return;if(!T)return void c.push(r);let s=T;if(!nr.draw(_=>r[0]==="render"?s.apply(r[1],_):(s.style(r[1]),!0)))return H("slow");r[0]==="render"&&qe()},Xe=()=>new Set([...e.store.kindsKeptFrom(e.principal),...e.store.modules.disabledKinds]),Ye=()=>vt(e.store.schema,Xe()),be=()=>kt(e.store.schema,e.places?.()??[],{kept:Xe(),...e.arrangement?{pages:e.arrangement()}:{}}),Z=bt({sees:r=>e.store.seenBy(e.principal).graph.has(r),places:be,lists:Ye,schema:e.store.schema,...e.onNavigate?{onNavigate:e.onNavigate}:e.goTo?{onNavigate:r=>At(e.goTo(),r)}:{},...e.hrefOf?{hrefOf:e.hrefOf}:!e.onNavigate&&e.goTo?{hrefOf:r=>Gt(e.goTo(),r)}:{},onLost:r=>{$?.postMessage({type:"notice",text:r}),e.onProblem?.(r)}}),D=new Set,Je=new Set,ee,Qe=!1,Ze=()=>{Qe||(Qe=!0,Ar().then(({createGuestMedia:r})=>{O||(ee=r(p,{view:`"${o.title??o.name}"`,pictures:o.pictures!==void 0,shown:()=>v,...e.file?{file:e.file}:{},onProblem:s=>{$?.postMessage({type:"notice",text:s}),e.onProblem?.(s)}}),ee.refresh(g))},()=>e.onProblem?.(`The view "${o.title??o.name}" places a video or a full-screen viewer, and the host's player could not be loaded.`)))},et=!1,tt=!1,ie=new Map,rt=()=>{et||!o.accepts?.length||(et=!0,Gr().then(({createGuestDrops:r})=>{O||(z=r(p,{shadow:g,manifest:o,store:e.store,principal:e.principal,files:()=>e.files?.(),shown:()=>D,hears:()=>tt,idOf:s=>T?.renderer.idOf(s),send:Y,change:(s,M)=>{if(!S)return{ok:!1,reason:"refused",message:"The view has gone."};let _=S.change(s,M);return h(),_},handed:(s,M)=>ie.set(s.href,{file:s,drop:M}),onProblem:s=>{$?.postMessage({type:"notice",text:s}),e.onProblem?.(s)},onBusy:()=>oe()}),z.refresh())},()=>e.onProblem?.(`The view "${o.title??o.name}" takes files, and the host's drop could not be loaded.`)))},ae,nt=[],ot=!1,or=r=>{nt=r,ae?.bind(r),!(ot||r.length===0)&&(ot=!0,Or().then(({createGuestGestures:s,unheardWords:M})=>{if(!O){if(o.gestures!==!0){let _=M(o.title??o.name);return $?.postMessage({type:"notice",text:_}),e.onProblem?.(_)}ae=s(g,{root:()=>g.querySelector("[data-graview-view-root]")??void 0,idOf:_=>T?.renderer.idOf(_),send:Y}),ae.bind(nt)}},()=>{}))},sr=r=>{let s=e.store.seenBy(e.principal).graph;for(let M of D){let _=s.getNode(M);for(let I of Object.values(_??{}))for(let u of Et(I))if(u.href===r)return u}},st=()=>Jt??=Pr().then(({createGuestSections:r})=>{if(!O)return F=r(p,{shadow:g,idOf:s=>T?.renderer.idOf(s),send:Y,record:s=>D.has(s)?e.store.seenBy(e.principal).graph.getNode(s):void 0,...e.file?{file:e.file}:{},onProblem:s=>{$?.postMessage({type:"notice",text:s}),e.onProblem?.(s)}}),F.refresh(),F},()=>{e.onProblem?.(`The view "${o.title??o.name}" draws a jump or a file link, and the host's part of it could not be loaded.`)}),it=r=>{if(r.localName==="graview-video")return Ze();r.hasAttribute("data-lightbox")&&(r.setAttribute("aria-haspopup","dialog"),Ze())};Promise.all([Er(),Wr()]).then(([{createOpenDrawing:r,handedLinks:s,judgeLink:M,linkRefusedWords:_},{createPressReader:I,createSaver:u,fillPrefills:C,judgePress:N,markPresses:j,prefillOf:de,quietPictures:ir}])=>{if(O)return;let te=I(),ar=i=>Ie.some(x=>{try{for(let L=i;L&&L.getRootNode()===g&&!L.hasAttribute("data-graview-view-root");L=L.parentElement)if(L.matches(x))return!0}catch{}return!1}),ut=(i,x)=>{let L=T?.renderer.idOf(i);if(L!==void 0&&Y({type:"dom-event",target:L,event:"acted",pressed:x}),x.ok)return q?.clear(i);ar(i)||Lr().then(({createRefusalNotes:re})=>{O||!i.isConnected||(q??=re(g),q.say(i,x.message??"That was not applied."))},()=>e.onProblem?.(`A press in the view "${o.title??o.name}" was refused: ${x.message??x.reason??"not applied"}`))},Te=u({reader:te,save:(i,x)=>{if(!S)return;let L=S.pressed(N(e.store,o,D,i));h(),ut(x,{as:i.as,...L})}}),ct=()=>Te.flush();p.addEventListener("pagehide",ct),P=()=>{p.removeEventListener("pagehide",ct),Te.flush()};let dr=new WeakSet;qe=()=>{Z.refresh(g),j(g),ir(g),C(g,te,dr,i=>de(e.store,e.principal,o,D,i)),ee?.refresh(g),z?.refresh(),q?.refresh(),F?F.refresh():g.querySelector(_r)&&st()};let pt,ft=new Set,lr=()=>(pt!==v&&([pt,ft]=[v,s(v)]),ft),mt=new Set;T=r(g,{origin:e.origin??p.location.origin,link:i=>M(i,{handed:lr(),...e.links?{origins:e.links.origins}:{}}),...e.asset?{asset:e.asset}:{},...e.images?{imageOrigins:e.images.origins}:{},...o.pictures?{picture:i=>U?.drawn(i)}:{},onRefused:i=>{if(i.reason==="url"&&i.element==="a"&&i.address!==void 0&&!mt.has(i.address)){mt.add(i.address);let L=_(i.address,e.links?.origins);return $?.postMessage({type:"notice",text:L}),e.onProblem?.(L)}if(i.reason!=="url"||i.element!=="img"||i.address===void 0||Je.has(i.address))return;Je.add(i.address);let x=Tt(i.address,{...e.images?{origins:e.images.origins}:{},assets:e.asset!==void 0},i.length);$?.postMessage({type:"notice",text:x}),e.onProblem?.(x)},...e.limits?.maxNodes!==void 0?{maxNodes:e.limits.maxNodes}:{},onOverBudget:()=>H("nodes"),send:Y,onFieldSet:i=>te.filled(i),onAttribute:(i,x)=>{(x==="data-record"||x==="data-place")&&Z.link(i),x==="data-lightbox"&&it(i),x==="data-drop"&&rt()},decorate:i=>{(i.hasAttribute("data-record")||i.hasAttribute("data-place"))&&Z.link(i),it(i),i.hasAttribute("data-drop")&&rt()},before:(i,x,L)=>{te.heard(i,x),Te.heard(i,x,L),Z.pressed(i,x,L);let re=x.closest("a[href]");re&&L.contains(re)&&!re.hasAttribute("data-graview-link")&&i.type==="click"&&i.stopPropagation();let le=x.closest("[data-lightbox]"),gt=i.type==="keydown"?i.key:void 0;if(le&&L.contains(le)&&i.isTrusted&&(i.type==="click"||(gt==="Enter"||gt===" ")&&le.localName!=="button")&&(i.preventDefault(),i.stopPropagation(),ee?.open(le)),z?.before(i,x,L))return!1;let yt=i.type==="click"&&i.isTrusted?x.closest('a[href^="#"]'):null;yt&&L.contains(yt)&&(i.preventDefault(),F?F.jump(x,L):st().then(pr=>pr?.jump(x,L)));let Me=te.press(i,x,L);if(!Me||!S)return;i.stopPropagation(),q?.clear(x.closest("[data-act]")),i.type==="keydown"&&i.preventDefault();let ur=S.pressed(N(e.store,o,D,Me));h();let ht={as:Me.as,...ur},cr=x.closest("[data-act]");return queueMicrotask(()=>ut(cr,ht)),{pressed:ht}}}),$e();for(let i of c.splice(0))ke(i);b(),oe()},()=>H("start","the view's drawing could not be loaded"));let xe=r=>W=ye(p,{source:r,name:o.name,limiter:A,readyMs:e.limits?.readyMs??5e3,silentMs:e.limits?.silentMs??5e3,onDropped:()=>E.dropped+=1,onStop:(s,M)=>H(s,M),onError:s=>{Ue||H("error",s)},onReady:(s,M,_)=>{$=M,f=Bt(Ut(p,_)),Object.assign(y,Ft(V,f)),rr();let I=ce({store:e.store,principal:e.principal,view:o.name,nonce:s,send:u=>{u.type==="props"&&typeof u.push=="number"&&(Q.set(u.push,J.now()),oe()),M.postMessage(u)},props:()=>{let u=Re(e.store,e.principal,{manifest:o,...e.input?{input:e.input()}:{},theme:we(),places:wt(be()),...G?{computed:G}:{}}),C=D;return D=new Set([...u.node?[u.node.id]:[],...(u.nodes??[]).map(N=>N.id)]),v&&(C.size!==D.size||[...D].some(N=>!C.has(N)))&&T?.fade(),v=u,u},...U?{hand:U.hand}:{},judgeAct:(u,C)=>{let N=Rt(e.store,o,u,C,{shown:D,file:j=>ie.get(j)?.file??sr(j),dropped:j=>ie.get(j)?.drop});if(N.ok)for(let j of N.spent??[])ie.delete(j);return N},onHears:u=>{u.includes("drop")&&(tt=!0)},onGestures:or,onClicks:(u,C)=>{Mt(m,u),Ie=C},onRender:u=>{Ue=!0,ke(["render",u])},onPushed:(u,C)=>{if(Q.delete(u),C>=y.pushMs)return H("slow");ze=!0,oe()},onFlood:()=>H("flood"),onStyle:u=>ke(["style",u]),places:()=>[...new Set([...be().map(u=>u.as),...Ye().map(u=>u.slug)])],...e.limits?{limits:e.limits}:{},limiter:A});S=I,M.onmessage=({data:u})=>{if(!W?.answer(u)&&(I.receive(u),h(),!O&&u?.nonce===s&&u.type==="navigate")){let C={...u.where!==void 0?{where:u.where}:{},...u.section!==void 0?{section:u.section}:{}},N=typeof u.place=="string"?{place:u.place,...C}:typeof u.to=="string"&&{record:u.to,...C};N&&Z.go(N)}},ve()}}),at=o.pictures!==void 0||We(e.store,o),dt=()=>Promise.all([tr.catch(()=>Promise.reject(new Error("the view's pictures could not be loaded"))),er.catch(()=>Promise.reject(new Error("the view's computed values could not be worked out")))]),lt=r=>{"source"in r?(at?Promise.all([Ae(r.source),dt()]).then(([s])=>s):Ae(r.source)).then(s=>{O||xe({script:s})},s=>H("start",s instanceof Error&&s.message.startsWith("the view's")?s.message:"the view's runtime could not be loaded")):at?dt().then(()=>{O||xe(r)},s=>H("start",s instanceof Error?s.message:"the view's pictures could not be loaded")):xe(r)};return typeof X=="function"?me(X).then(r=>{if(O)return;let s=He(r);s?H(...s):lt(r)},r=>H("source",`Its code did not arrive${r instanceof Error&&r.message?`: ${r.message}`:""}.`)):lt(X),Se();function Se(){return{element:m,shadow:g,get worker(){return W?.worker},update:()=>{S&&ve()},get stats(){return h(),E},get refused(){return T?.refused??[]},get contentHeight(){return l},get css(){return T?.css??""},get pace(){return f},dispose(){O=!0,Ce(),d?.disconnect(),T?.dispose(),m.remove(),w?.remove()}}}}var zt=8e3,qt=t=>({root:t?.shadow.querySelector("[data-graview-view-root]")??void 0,css:t?.css??"",height:t?.contentHeight}),Xt=t=>(t?.refused??[]).map(e=>`Refused ${e.reason==="css"?"a rule of the stylesheet":`${e.element?`<${e.element}>`:"something"}${e.name?` ${e.name}`:""}`} (${e.reason}).`);function Cr({element:t,definition:e,mounted:a,optionsFor:p,draw:o,mount:m,pressing:g}){return{name:e.manifest.name,title:e.manifest.title??e.manifest.name,source:async()=>{let w=typeof e.worker=="function"?await me(e.worker):e.worker;return"source"in w?w.source:void 0},theme:async()=>{let w=a()?.element;return w?{...fe(w)}:{}},drawing:()=>qt(a()),refused:()=>Xt(a()),check:async w=>pe(w),presses:async w=>{let E=g?.();if(!E)throw new Error("This page cannot press a view's controls.");let{pressedHere:A}=await E(),y=p({source:w}),V=await A({manifest:y.manifest,source:w,store:y.store,principal:y.principal,...y.input?{input:y.input()}:{},...y.places?{places:y.places()}:{}});if(!V.ok){let v={control:"the view",element:"",does:"nothing",ok:!1,says:V.detail};return{ok:!1,controls:[v],problems:[v]}}let f=V.presses;return f?{ok:f.ok,controls:f.controls,problems:f.problems}:{ok:!0,controls:[],problems:[]}},draft:w=>{let E=a()?.element,A=t.ownerDocument.createElement("div");A.setAttribute("data-graview-section-draft",e.manifest.name),A.style.minWidth="0",t.appendChild(A),E&&(E.style.display="none");let y=()=>{},V=new Promise(G=>y=G),f=setTimeout(()=>y({failed:`It did not draw in ${zt/1e3} seconds.`}),zt),v=m(A,{...p({source:w}),fallback:!1,onFailure:(G,S)=>y({failed:S??`It failed (${G}).`}),onContentHeight:G=>{G!==void 0&&G>0&&y({})}});return V.then(()=>clearTimeout(f)),{drawn:V,drawing:()=>qt(v),refused:()=>Xt(v),dispose:()=>{clearTimeout(f),v.dispose(),A.remove(),E&&(E.style.display="")}}},draw:o}}var Yt="graview-guest-kit";function kn(t,e){let a=t.ownerDocument,p=a.defaultView;if(!a.getElementById(Yt)){let W=a.createElement("style");W.id=Yt,W.textContent=Ve,a.head.appendChild(W)}let o=a.createElement("div");o.className="graview-guest",o.setAttribute("role","group"),o.setAttribute("aria-label",e.title??e.view),o.setAttribute("data-guest-view",e.view),t.appendChild(o);let m={applied:0,refused:0,dropped:0},g=ue(e.limits),w=he(()=>e.limits?.drawMs??100,()=>p.performance.now()),E,A,y,V=!1,f={applied:0,refused:0,dropped:0},v=()=>{if(!E)return;let W=E.stats;m.applied+=W.applied-f.applied,m.refused+=W.refused-f.refused,m.dropped+=W.dropped-f.dropped,f={...W}},G=()=>{v(),E?.dispose(),E=void 0,y?.stop()},S=(W,T)=>{V||(V=!0,G(),A?.dispose(),e.onFailure?.(W,T))};return y=ye(p,{source:e.worker,name:e.view,limiter:g,readyMs:e.limits?.readyMs??5e3,silentMs:e.limits?.silentMs??5e3,onDropped:()=>m.dropped+=1,onStop:(W,T)=>S(W,T),onReady:(W,T)=>{let O=_e(o,{...e.kit?{kit:e.kit}:{},...e.links?{links:e.links}:{},onEvent:(c,h)=>T.postMessage({type:"event",listener:c,...h!==void 0?{detail:h}:{}}),...e.limits?.maxNodes!==void 0?{maxNodes:e.limits.maxNodes}:{},onOverBudget:()=>S("budget")});A=O;let n=ce({store:e.store,principal:e.principal,view:e.view,nonce:W,send:c=>T.postMessage(c),onRender:c=>{w.draw(h=>O.apply(c,h))||S("slow")},...e.input?{input:e.input}:{},...e.onNavigate?{onNavigate:e.onNavigate}:{},onSize:e.onSize??(c=>o.style.minHeight=`${c}px`),...e.limits?{limits:e.limits}:{},limiter:g});E=n,T.onmessage=c=>{y?.answer(c.data)||(n.receive(c.data),v())},n.push()}}),{element:o,get worker(){return y?.worker},update:()=>E?.push(),get stats(){return v(),m},get refused(){return A?.refused??[]},dispose(){V=!0,G(),A?.dispose(),o.remove()}}}export{Oe as GUEST_KIT,Ve as GUEST_KIT_CSS,Ge as KIT_LINK_TARGETS,Lt as KIT_TONES,_e as createKitRenderer,Nt as hostAttribute,Ht as kitValue,kn as mountGuestWorker,Ir as mountWorkerView,Cr as viewPlaceHandle};
|
|
21
|
+
`;var Dt=new WeakSet;function Tr(t,e){if(t.startsWith("blob:"))return"blob:";try{return new URL(t,e.location.href).origin}catch{return t}}function jt(t,e,a){let p=Tr(e,t),o=`this page's Content-Security-Policy${a?` (${a})`:""} does not allow a worker from ${p}: it needs worker-src ${p}`;return Dt.has(t)||(Dt.add(t),t.console?.warn?.(`Graview: worker views cannot start on this page, because ${o}. A host that will not allow ${p} serves each view's whole script from its own origin and passes worker: { url } (the @graview/guest README, "What the host page allows").`)),o}function Mr(t,e){return t===""?!0:e.startsWith("blob:")?t.startsWith("blob"):e.startsWith(t)||t.startsWith(e)}function ye(t,e){let a="script"in e.source?t.URL.createObjectURL(new t.Blob([e.source.script],{type:"text/javascript"})):void 0,p="script"in e.source?a:e.source.url,o,m,g=!1,w=!1,E=0,A=0,y="",V=0,f=0,v=t.performance,G=v.now(),S,W=l=>{let d=l,b=String(d.effectiveDirective||d.violatedDirective||"").split(" ")[0];/^(worker-src|script-src|script-src-elem|child-src|default-src)$/.test(b)&&Mr(String(d.blockedURI??""),p)&&(S=b)},T=t.document;T?.addEventListener("securitypolicyviolation",W);let O=()=>T?.removeEventListener("securitypolicyviolation",W),n=()=>{w||(w=!0,m?.close(),o?.terminate(),o=void 0,t.clearTimeout(E),t.clearInterval(A),O(),a&&t.URL.revokeObjectURL(a))},c=(l,d)=>{w||(n(),e.onStop(l,d))},h=()=>{t.clearTimeout(E),O(),y=St();let l=new t.MessageChannel;m=l.port1;let d=Math.max(1,e.silentMs),b=Math.max(10,Math.min(1e3,Math.floor(d/4)));G=v.now();let K=G;A=t.setInterval(()=>{let P=v.now();if(P-K>b*2&&(G+=P-K-b),K=P,P-G>=d)return c("silent");V+=1,l.port1.postMessage({type:"heartbeat",beat:V})},b);let R={graview:"host-hello",protocol:1,nonce:y,view:e.name};o.postMessage(R,[l.port2]),e.onReady(y,l.port1,v.now()-k)},k=v.now();try{o=new t.Worker(p,{name:e.name})}catch(l){o=void 0;let d=l,b=d?.name==="SecurityError"?jt(t,p,S):`the worker could not be made: ${String(d?.message??l)}`;queueMicrotask(()=>c("start",b))}return o&&(E=t.setTimeout(()=>c("start",`it never said it was ready in ${e.readyMs.toLocaleString("en-US")} ms`),e.readyMs),o.onerror=l=>{let d=typeof l.message=="string"&&l.message!==""?l.message:void 0;if(g)return void e.onError?.(d??"an error");t.clearTimeout(E),t.setTimeout(()=>!g&&c("start",S?jt(t,p,S):d?`it failed before it said ready: ${d}`:"it failed before it said ready, and the engine gave no reason (a page policy that refuses it, or a script that does not load)"),0)},o.onmessage=l=>{if(!e.limiter.message()||g||!xt(l.data)||l.data.protocol!==1){e.onDropped();return}g=!0,h()}),{get worker(){return o},answer(l){let d=l;return typeof d!="object"||d===null||d.type!=="heartbeat"||d.nonce!==y?!1:(typeof d.beat=="number"&&d.beat>f&&d.beat<=V&&(f=d.beat,G=v.now()),!0)},stop:n}}function he(t,e){let a=e(),p=0;return{draw(o){let m=e();m-a>=1e3&&(a=m,p=0);let g=t(),w=o(()=>p+(e()-m)>=g);return p+=e()-m,w&&p<g}}}function Bt(t){return!Number.isFinite(t)||t<=60?1:Math.min(4,Math.round(t/60*10)/10)}function Ft(t,e){return{...t,pushMs:Math.round(t.pushMs*e),drawMs:Math.round(t.drawMs*e)}}var $t=new WeakMap;function Ut(t,e){let a=$t.get(t);return a!==void 0?a:($t.set(t,e),e)}var Er=B(()=>(__graviewPreload(import.meta.url,["./chunk.32SHA3EY.js","./chunk.GG47EIKO.js","./chunk.NYLKG25K.js","./chunk.AJZBJBMO.js"]),import("./chunk.U6QXLNHF.js"))),Wr=B(()=>(__graviewPreload(import.meta.url,["./chunk.EFVSZKB5.js","./chunk.G3GFDVO2.js","./chunk.D4WJ7OM5.js","./chunk.QDVGHI7R.js","./chunk.AKJS2NUM.js","./chunk.M5FP4Y4Q.js","./chunk.ZEZUKRC6.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.T3WCRS6M.js"))),Rr=B(()=>(__graviewPreload(import.meta.url,["./chunk.RSMCTI2N.js","./chunk.AJZBJBMO.js"]),import("./chunk.UJPX3BUV.js"))),Ar=B(()=>(__graviewPreload(import.meta.url,["./chunk.WVUJXDXZ.js","./chunk.DWM7AR5Y.js","./chunk.6KJGRM7A.js","./chunk.WALVW3KJ.js","./chunk.SNHKYH72.js","./chunk.UGQYMN4J.js","./chunk.RG5G6YQD.js","./chunk.JQ63N4MZ.js","./chunk.Z3O2VZAJ.js","./chunk.ZEZUKRC6.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.DKEIEH2D.js"))),Gr=B(()=>(__graviewPreload(import.meta.url,["./chunk.D4WJ7OM5.js","./chunk.QDVGHI7R.js","./chunk.AKJS2NUM.js","./chunk.ZEZUKRC6.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.RJY7VJBH.js"))),Or=B(()=>(__graviewPreload(import.meta.url,["./chunk.BBLIT7S7.js","./chunk.AJZBJBMO.js"]),import("./chunk.RRCPEHM4.js"))),Kr=B(()=>(__graviewPreload(import.meta.url,["./chunk.WVUJXDXZ.js","./chunk.DWM7AR5Y.js","./chunk.6KJGRM7A.js","./chunk.WALVW3KJ.js","./chunk.SNHKYH72.js","./chunk.UGQYMN4J.js","./chunk.RG5G6YQD.js","./chunk.JQ63N4MZ.js","./chunk.Z3O2VZAJ.js","./chunk.ZEZUKRC6.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.7WHQWLL6.js"))),Pr=B(()=>(__graviewPreload(import.meta.url,["./chunk.QDVGHI7R.js","./chunk.AJZBJBMO.js"]),import("./chunk.EG7OOJH5.js"))),Lr=B(()=>(__graviewPreload(import.meta.url,["./chunk.ZEZUKRC6.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.KFT7JIEH.js"))),_r='a[href^="#"], [data-sight], [data-file]';function Vr(t,e,a){switch(t){case"manifest":return a??"Its manifest names something this app does not have.";case"source":return a??`Its code is longer than the ${e.maxSourceBytes.toLocaleString("en-US")} bytes a view may be.`;case"start":return`It could not start${a?`: ${a}.`:"."}`;case"error":return`It failed before it drew anything${a?`: ${a}`:"."}`;case"silent":return`It stopped answering for ${e.silentMs.toLocaleString("en-US")} ms.`;case"nodes":return`It drew more than the ${e.maxNodes.toLocaleString("en-US")} things a view may draw.`;case"flood":return`It sent more than ${e.messages} messages in ${e.messageWindowMs.toLocaleString("en-US")} ms.`;case"slow":return`It took longer than ${e.pushMs.toLocaleString("en-US")} ms to draw what it was shown.`}}function Ir(t,e){let a=t.ownerDocument,p=a.defaultView,{manifest:o}=e,m=a.createElement("div");m.className="graview-worker-view",m.setAttribute("role","region"),m.setAttribute("aria-label",o.title??o.name),m.setAttribute("data-worker-view",o.name),m.style.cssText="display:block;position:relative;contain:layout paint style;isolation:isolate;overflow:clip;min-width:0",t.appendChild(m);let g=m.attachShadow({mode:"open"}),w=e.author?a.createElement("p"):void 0;w&&(w.className="graview-worker-view-author",w.setAttribute("data-worker-view-author",o.name),w.style.cssText="margin:4px 0 0;font-size:0.75rem;color:var(--graview-ink-muted, inherit)",w.textContent=e.author,t.appendChild(w));let E={applied:0,refused:0,dropped:0},A=ue(e.limits),y={maxSourceBytes:e.limits?.maxSourceBytes??256e3,maxNodes:e.limits?.maxNodes??5e3,messages:e.limits?.messages??120,messageWindowMs:e.limits?.messageWindowMs??1e3,pushMs:e.limits?.pushMs??1e3,silentMs:e.limits?.silentMs??5e3,drawMs:e.limits?.drawMs??100},V={pushMs:y.pushMs,drawMs:y.drawMs},f,v,G,S,W,T,O=!1,n={applied:0,refused:0,dropped:0},c=[],h=()=>{if(!S)return;let r=S.stats;E.applied+=r.applied-n.applied,E.refused+=r.refused-n.refused,E.dropped+=r.dropped-n.dropped,n={...r}},k=()=>{},l,d,b=()=>{let r=g.querySelector("[data-graview-view-root]"),s=p.ResizeObserver;d||!r||typeof s!="function"||(d=new s(M=>{let _=M[M.length-1]?.borderBoxSize?.[0],I=Math.ceil(_?_.blockSize:r.offsetHeight);I!==l&&(l=I,m.setAttribute("data-graview-content-height",String(I)),e.onContentHeight?.(I))}),d.observe(r))},K=()=>{d&&(d.disconnect(),d=void 0,l=void 0,m.removeAttribute("data-graview-content-height"),e.onContentHeight?.(void 0))},R=0,P=()=>{},F,Jt,q,Ie=[],Ce=()=>{P(),P=()=>{},F?.dispose(),h(),S?.dispose(),S=void 0,W?.stop(),k(),p.clearInterval(R)},H=(r,s)=>{if(O)return;O=!0,Ce(),K(),T?.dispose();let M=Vr(r,y,s);m.removeAttribute("data-worker-view-drawn"),m.setAttribute("data-worker-view-failed",r),e.fallback!==!1&&(e.fallback??Qt)(m,r,M),e.onFailure?.(r,M)},Qt=(r,s,M)=>{let _=v??(()=>{try{return Re(e.store,e.principal,{manifest:o,...e.input?{input:e.input()}:{},...G?{computed:G}:{}})}catch{return}})(),I=a.createElement("div");I.setAttribute("data-graview-fallback",s),I.style.cssText="padding:12px;display:grid;gap:6px;color:var(--graview-ink, inherit);font-family:var(--graview-font-body, inherit)";let u=a.createElement("strong");u.textContent=o.title??o.name;let C=a.createElement("ul");C.style.cssText="margin:0;padding-left:1.2em";for(let j of[..._?.node?[_.node]:[],..._?.nodes??[]]){let de=a.createElement("li");de.textContent=j.label??j.id,C.appendChild(de)}let N=a.createElement("p");N.style.cssText="margin:0;font-size:0.8125rem;color:var(--graview-ink-muted, inherit)",N.textContent=`This view was stopped. ${M}`,I.append(u,C,N),g.replaceChildren(I)},Ne=Wt(o,e.store);if(Ne.length>0)return queueMicrotask(()=>H("manifest",Ne.join(" "))),Se();let He=r=>{if(("source"in r?new TextEncoder().encode(r.source).length:"script"in r?new TextEncoder().encode(r.script).length:0)>y.maxSourceBytes)return["source"];let M="source"in r?pe(r.source):[];return M.length>0?["source",M.join(" ")]:void 0},X=e.worker,De=typeof X=="function"?void 0:He(X);if(De)return queueMicrotask(()=>H(...De)),Se();let je=Pt(p,()=>Fe(),"blob"),we=()=>Kt(()=>e.theme?.()??fe(m),e.brand,je),$e=()=>{let r=e.brand?.()?.views;T?.theme(r?.css),T?.motion(r?.motion??"none")},Be="",ve=()=>{Be=JSON.stringify(we()),$e(),S?.push()},Fe=()=>{S&&JSON.stringify(we())!==Be&&ve()},Zt=Ot(a,Fe),U,er=We(e.store,o)?Kr().then(({computedOn:r})=>{G=r(e.store.schema)}):Promise.resolve(),z,tr=o.pictures?Rr().then(({createGuestPictures:r})=>{O||(U=r(p,{as:"blob",view:`"${o.title??o.name}"`,pictures:o.pictures,...e.limits?{limits:e.limits}:{},...e.file?{file:e.file}:{},moved:()=>S?.push(),onLeft:s=>{$?.postMessage({type:"notice",text:s}),e.onProblem?.(s)}}))}):Promise.resolve();k=()=>{Zt(),je.dispose(),U?.dispose(),ee?.dispose(),z?.dispose(),ae?.dispose()};let $,Y=r=>$?.postMessage(r),Ue=!1,ze=!1,oe=()=>m.toggleAttribute("data-worker-view-drawn",!O&&ze&&T!==void 0&&c.length===0&&Q.size===0&&!U?.waiting()&&!(z?.waiting??0)),J=p.performance,Q=new Map,se=J.now(),rr=()=>{if(R)return;let r=Math.max(10,Math.min(250,Math.floor(y.pushMs/4)));se=J.now(),R=p.setInterval(()=>{let s=J.now(),M=s-se>r*2?s-se-r:0;se=s;for(let[_,I]of Q){let u=I+M;if(Q.set(_,u),s-u>=y.pushMs)return H("slow")}},r)},nr=he(()=>y.drawMs,()=>J.now()),qe=()=>{},ke=r=>{if(O)return;if(!T)return void c.push(r);let s=T;if(!nr.draw(_=>r[0]==="render"?s.apply(r[1],_):(s.style(r[1]),!0)))return H("slow");r[0]==="render"&&qe()},Xe=()=>new Set([...e.store.kindsKeptFrom(e.principal),...e.store.modules.disabledKinds]),Ye=()=>vt(e.store.schema,Xe()),be=()=>kt(e.store.schema,e.places?.()??[],{kept:Xe(),...e.arrangement?{pages:e.arrangement()}:{}}),Z=bt({sees:r=>e.store.seenBy(e.principal).graph.has(r),places:be,lists:Ye,schema:e.store.schema,...e.onNavigate?{onNavigate:e.onNavigate}:e.goTo?{onNavigate:r=>At(e.goTo(),r)}:{},...e.hrefOf?{hrefOf:e.hrefOf}:!e.onNavigate&&e.goTo?{hrefOf:r=>Gt(e.goTo(),r)}:{},onLost:r=>{$?.postMessage({type:"notice",text:r}),e.onProblem?.(r)}}),D=new Set,Je=new Set,ee,Qe=!1,Ze=()=>{Qe||(Qe=!0,Ar().then(({createGuestMedia:r})=>{O||(ee=r(p,{view:`"${o.title??o.name}"`,pictures:o.pictures!==void 0,shown:()=>v,...e.file?{file:e.file}:{},onProblem:s=>{$?.postMessage({type:"notice",text:s}),e.onProblem?.(s)}}),ee.refresh(g))},()=>e.onProblem?.(`The view "${o.title??o.name}" places a video or a full-screen viewer, and the host's player could not be loaded.`)))},et=!1,tt=!1,ie=new Map,rt=()=>{et||!o.accepts?.length||(et=!0,Gr().then(({createGuestDrops:r})=>{O||(z=r(p,{shadow:g,manifest:o,store:e.store,principal:e.principal,files:()=>e.files?.(),shown:()=>D,hears:()=>tt,idOf:s=>T?.renderer.idOf(s),send:Y,change:(s,M)=>{if(!S)return{ok:!1,reason:"refused",message:"The view has gone."};let _=S.change(s,M);return h(),_},handed:(s,M)=>ie.set(s.href,{file:s,drop:M}),onProblem:s=>{$?.postMessage({type:"notice",text:s}),e.onProblem?.(s)},onBusy:()=>oe()}),z.refresh())},()=>e.onProblem?.(`The view "${o.title??o.name}" takes files, and the host's drop could not be loaded.`)))},ae,nt=[],ot=!1,or=r=>{nt=r,ae?.bind(r),!(ot||r.length===0)&&(ot=!0,Or().then(({createGuestGestures:s,unheardWords:M})=>{if(!O){if(o.gestures!==!0){let _=M(o.title??o.name);return $?.postMessage({type:"notice",text:_}),e.onProblem?.(_)}ae=s(g,{root:()=>g.querySelector("[data-graview-view-root]")??void 0,idOf:_=>T?.renderer.idOf(_),send:Y}),ae.bind(nt)}},()=>{}))},sr=r=>{let s=e.store.seenBy(e.principal).graph;for(let M of D){let _=s.getNode(M);for(let I of Object.values(_??{}))for(let u of Et(I))if(u.href===r)return u}},st=()=>Jt??=Pr().then(({createGuestSections:r})=>{if(!O)return F=r(p,{shadow:g,idOf:s=>T?.renderer.idOf(s),send:Y,record:s=>D.has(s)?e.store.seenBy(e.principal).graph.getNode(s):void 0,...e.file?{file:e.file}:{},onProblem:s=>{$?.postMessage({type:"notice",text:s}),e.onProblem?.(s)}}),F.refresh(),F},()=>{e.onProblem?.(`The view "${o.title??o.name}" draws a jump or a file link, and the host's part of it could not be loaded.`)}),it=r=>{if(r.localName==="graview-video")return Ze();r.hasAttribute("data-lightbox")&&(r.setAttribute("aria-haspopup","dialog"),Ze())};Promise.all([Er(),Wr()]).then(([{createOpenDrawing:r,handedLinks:s,judgeLink:M,linkRefusedWords:_},{createPressReader:I,createSaver:u,fillPrefills:C,judgePress:N,markPresses:j,prefillOf:de,quietPictures:ir}])=>{if(O)return;let te=I(),ar=i=>Ie.some(x=>{try{for(let L=i;L&&L.getRootNode()===g&&!L.hasAttribute("data-graview-view-root");L=L.parentElement)if(L.matches(x))return!0}catch{}return!1}),ut=(i,x)=>{let L=T?.renderer.idOf(i);if(L!==void 0&&Y({type:"dom-event",target:L,event:"acted",pressed:x}),x.ok)return q?.clear(i);ar(i)||Lr().then(({createRefusalNotes:re})=>{O||!i.isConnected||(q??=re(g),q.say(i,x.message??"That was not applied."))},()=>e.onProblem?.(`A press in the view "${o.title??o.name}" was refused: ${x.message??x.reason??"not applied"}`))},Te=u({reader:te,save:(i,x)=>{if(!S)return;let L=S.pressed(N(e.store,o,D,i));h(),ut(x,{as:i.as,...L})}}),ct=()=>Te.flush();p.addEventListener("pagehide",ct),P=()=>{p.removeEventListener("pagehide",ct),Te.flush()};let dr=new WeakSet;qe=()=>{Z.refresh(g),j(g),ir(g),C(g,te,dr,i=>de(e.store,e.principal,o,D,i)),ee?.refresh(g),z?.refresh(),q?.refresh(),F?F.refresh():g.querySelector(_r)&&st()};let pt,ft=new Set,lr=()=>(pt!==v&&([pt,ft]=[v,s(v)]),ft),mt=new Set;T=r(g,{origin:e.origin??p.location.origin,link:i=>M(i,{handed:lr(),...e.links?{origins:e.links.origins}:{}}),...e.asset?{asset:e.asset}:{},...e.images?{imageOrigins:e.images.origins}:{},...o.pictures?{picture:i=>U?.drawn(i)}:{},onRefused:i=>{if(i.reason==="url"&&i.element==="a"&&i.address!==void 0&&!mt.has(i.address)){mt.add(i.address);let L=_(i.address,e.links?.origins);return $?.postMessage({type:"notice",text:L}),e.onProblem?.(L)}if(i.reason!=="url"||i.element!=="img"||i.address===void 0||Je.has(i.address))return;Je.add(i.address);let x=Tt(i.address,{...e.images?{origins:e.images.origins}:{},assets:e.asset!==void 0},i.length);$?.postMessage({type:"notice",text:x}),e.onProblem?.(x)},...e.limits?.maxNodes!==void 0?{maxNodes:e.limits.maxNodes}:{},onOverBudget:()=>H("nodes"),send:Y,onFieldSet:i=>te.filled(i),onAttribute:(i,x)=>{(x==="data-record"||x==="data-place")&&Z.link(i),x==="data-lightbox"&&it(i),x==="data-drop"&&rt()},decorate:i=>{(i.hasAttribute("data-record")||i.hasAttribute("data-place"))&&Z.link(i),it(i),i.hasAttribute("data-drop")&&rt()},before:(i,x,L)=>{te.heard(i,x),Te.heard(i,x,L),Z.pressed(i,x,L);let re=x.closest("a[href]");re&&L.contains(re)&&!re.hasAttribute("data-graview-link")&&i.type==="click"&&i.stopPropagation();let le=x.closest("[data-lightbox]"),gt=i.type==="keydown"?i.key:void 0;if(le&&L.contains(le)&&i.isTrusted&&(i.type==="click"||(gt==="Enter"||gt===" ")&&le.localName!=="button")&&(i.preventDefault(),i.stopPropagation(),ee?.open(le)),z?.before(i,x,L))return!1;let yt=i.type==="click"&&i.isTrusted?x.closest('a[href^="#"]'):null;yt&&L.contains(yt)&&(i.preventDefault(),F?F.jump(x,L):st().then(pr=>pr?.jump(x,L)));let Me=te.press(i,x,L);if(!Me||!S)return;i.stopPropagation(),q?.clear(x.closest("[data-act]")),i.type==="keydown"&&i.preventDefault();let ur=S.pressed(N(e.store,o,D,Me));h();let ht={as:Me.as,...ur},cr=x.closest("[data-act]");return queueMicrotask(()=>ut(cr,ht)),{pressed:ht}}}),$e();for(let i of c.splice(0))ke(i);b(),oe()},()=>H("start","the view's drawing could not be loaded"));let xe=r=>W=ye(p,{source:r,name:o.name,limiter:A,readyMs:e.limits?.readyMs??5e3,silentMs:e.limits?.silentMs??5e3,onDropped:()=>E.dropped+=1,onStop:(s,M)=>H(s,M),onError:s=>{Ue||H("error",s)},onReady:(s,M,_)=>{$=M,f=Bt(Ut(p,_)),Object.assign(y,Ft(V,f)),rr();let I=ce({store:e.store,principal:e.principal,view:o.name,nonce:s,send:u=>{u.type==="props"&&typeof u.push=="number"&&(Q.set(u.push,J.now()),oe()),M.postMessage(u)},props:()=>{let u=Re(e.store,e.principal,{manifest:o,...e.input?{input:e.input()}:{},theme:we(),places:wt(be()),...G?{computed:G}:{}}),C=D;return D=new Set([...u.node?[u.node.id]:[],...(u.nodes??[]).map(N=>N.id)]),v&&(C.size!==D.size||[...D].some(N=>!C.has(N)))&&T?.fade(),v=u,u},...U?{hand:U.hand}:{},judgeAct:(u,C)=>{let N=Rt(e.store,o,u,C,{shown:D,file:j=>ie.get(j)?.file??sr(j),dropped:j=>ie.get(j)?.drop});if(N.ok)for(let j of N.spent??[])ie.delete(j);return N},onHears:u=>{u.includes("drop")&&(tt=!0)},onGestures:or,onClicks:(u,C)=>{Mt(m,u),Ie=C},onRender:u=>{Ue=!0,ke(["render",u])},onPushed:(u,C)=>{if(Q.delete(u),C>=y.pushMs)return H("slow");ze=!0,oe()},onFlood:()=>H("flood"),onStyle:u=>ke(["style",u]),places:()=>[...new Set([...be().map(u=>u.as),...Ye().map(u=>u.slug)])],...e.limits?{limits:e.limits}:{},limiter:A});S=I,M.onmessage=({data:u})=>{if(!W?.answer(u)&&(I.receive(u),h(),!O&&u?.nonce===s&&u.type==="navigate")){let C={...u.where!==void 0?{where:u.where}:{},...u.section!==void 0?{section:u.section}:{}},N=typeof u.place=="string"?{place:u.place,...C}:typeof u.to=="string"&&{record:u.to,...C};N&&Z.go(N)}},ve()}}),at=o.pictures!==void 0||We(e.store,o),dt=()=>Promise.all([tr.catch(()=>Promise.reject(new Error("the view's pictures could not be loaded"))),er.catch(()=>Promise.reject(new Error("the view's computed values could not be worked out")))]),lt=r=>{"source"in r?(at?Promise.all([Ae(r.source),dt()]).then(([s])=>s):Ae(r.source)).then(s=>{O||xe({script:s})},s=>H("start",s instanceof Error&&s.message.startsWith("the view's")?s.message:"the view's runtime could not be loaded")):at?dt().then(()=>{O||xe(r)},s=>H("start",s instanceof Error?s.message:"the view's pictures could not be loaded")):xe(r)};return typeof X=="function"?me(X).then(r=>{if(O)return;let s=He(r);s?H(...s):lt(r)},r=>H("source",`Its code did not arrive${r instanceof Error&&r.message?`: ${r.message}`:""}.`)):lt(X),Se();function Se(){return{element:m,shadow:g,get worker(){return W?.worker},update:()=>{S&&ve()},get stats(){return h(),E},get refused(){return T?.refused??[]},get contentHeight(){return l},get css(){return T?.css??""},get pace(){return f},dispose(){O=!0,Ce(),d?.disconnect(),T?.dispose(),m.remove(),w?.remove()}}}}var zt=8e3,qt=t=>({root:t?.shadow.querySelector("[data-graview-view-root]")??void 0,css:t?.css??"",height:t?.contentHeight}),Xt=t=>(t?.refused??[]).map(e=>`Refused ${e.reason==="css"?"a rule of the stylesheet":`${e.element?`<${e.element}>`:"something"}${e.name?` ${e.name}`:""}`} (${e.reason}).`);function Cr({element:t,definition:e,mounted:a,optionsFor:p,draw:o,mount:m,pressing:g}){return{name:e.manifest.name,title:e.manifest.title??e.manifest.name,source:async()=>{let w=typeof e.worker=="function"?await me(e.worker):e.worker;return"source"in w?w.source:void 0},theme:async()=>{let w=a()?.element;return w?{...fe(w)}:{}},drawing:()=>qt(a()),refused:()=>Xt(a()),check:async w=>pe(w),presses:async w=>{let E=g?.();if(!E)throw new Error("This page cannot press a view's controls.");let{pressedHere:A}=await E(),y=p({source:w}),V=await A({manifest:y.manifest,source:w,store:y.store,principal:y.principal,...y.input?{input:y.input()}:{},...y.places?{places:y.places()}:{}});if(!V.ok){let v={control:"the view",element:"",does:"nothing",ok:!1,says:V.detail};return{ok:!1,controls:[v],problems:[v]}}let f=V.presses;return f?{ok:f.ok,controls:f.controls,problems:f.problems}:{ok:!0,controls:[],problems:[]}},draft:w=>{let E=a()?.element,A=t.ownerDocument.createElement("div");A.setAttribute("data-graview-section-draft",e.manifest.name),A.style.minWidth="0",t.appendChild(A),E&&(E.style.display="none");let y=()=>{},V=new Promise(G=>y=G),f=setTimeout(()=>y({failed:`It did not draw in ${zt/1e3} seconds.`}),zt),v=m(A,{...p({source:w}),fallback:!1,onFailure:(G,S)=>y({failed:S??`It failed (${G}).`}),onContentHeight:G=>{G!==void 0&&G>0&&y({})}});return V.then(()=>clearTimeout(f)),{drawn:V,drawing:()=>qt(v),refused:()=>Xt(v),dispose:()=>{clearTimeout(f),v.dispose(),A.remove(),E&&(E.style.display="")}}},draw:o}}var Yt="graview-guest-kit";function kn(t,e){let a=t.ownerDocument,p=a.defaultView;if(!a.getElementById(Yt)){let W=a.createElement("style");W.id=Yt,W.textContent=Ve,a.head.appendChild(W)}let o=a.createElement("div");o.className="graview-guest",o.setAttribute("role","group"),o.setAttribute("aria-label",e.title??e.view),o.setAttribute("data-guest-view",e.view),t.appendChild(o);let m={applied:0,refused:0,dropped:0},g=ue(e.limits),w=he(()=>e.limits?.drawMs??100,()=>p.performance.now()),E,A,y,V=!1,f={applied:0,refused:0,dropped:0},v=()=>{if(!E)return;let W=E.stats;m.applied+=W.applied-f.applied,m.refused+=W.refused-f.refused,m.dropped+=W.dropped-f.dropped,f={...W}},G=()=>{v(),E?.dispose(),E=void 0,y?.stop()},S=(W,T)=>{V||(V=!0,G(),A?.dispose(),e.onFailure?.(W,T))};return y=ye(p,{source:e.worker,name:e.view,limiter:g,readyMs:e.limits?.readyMs??5e3,silentMs:e.limits?.silentMs??5e3,onDropped:()=>m.dropped+=1,onStop:(W,T)=>S(W,T),onReady:(W,T)=>{let O=_e(o,{...e.kit?{kit:e.kit}:{},...e.links?{links:e.links}:{},onEvent:(c,h)=>T.postMessage({type:"event",listener:c,...h!==void 0?{detail:h}:{}}),...e.limits?.maxNodes!==void 0?{maxNodes:e.limits.maxNodes}:{},onOverBudget:()=>S("budget")});A=O;let n=ce({store:e.store,principal:e.principal,view:e.view,nonce:W,send:c=>T.postMessage(c),onRender:c=>{w.draw(h=>O.apply(c,h))||S("slow")},...e.input?{input:e.input}:{},...e.onNavigate?{onNavigate:e.onNavigate}:{},onSize:e.onSize??(c=>o.style.minHeight=`${c}px`),...e.limits?{limits:e.limits}:{},limiter:g});E=n,T.onmessage=c=>{y?.answer(c.data)||(n.receive(c.data),v())},n.push()}}),{element:o,get worker(){return y?.worker},update:()=>E?.push(),get stats(){return v(),m},get refused(){return A?.refused??[]},dispose(){V=!0,G(),A?.dispose(),o.remove()}}}export{Oe as GUEST_KIT,Ve as GUEST_KIT_CSS,Ge as KIT_LINK_TARGETS,Lt as KIT_TONES,_e as createKitRenderer,Nt as hostAttribute,Ht as kitValue,kn as mountGuestWorker,Ir as mountWorkerView,Cr as viewPlaceHandle};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as n}from"./chunk.QXLJGHMC.js";import"./chunk.DZMIYEHQ.js";import"./chunk.3GNT5MKP.js";import"./chunk.AJMVRFYX.js";import"./chunk.Q355UPFG.js";import{o as s}from"./chunk.GMLONS5L.js";import"./chunk.264PB572.js";import"./chunk.6NG76MDA.js";import"./chunk.35KMZHB7.js";import"./chunk.IAEGJDF3.js";import"./chunk.YZPESGCP.js";import"./chunk.SY5ID44D.js";import"./chunk.GVT4UUQA.js";import"./chunk.5R744JGZ.js";import"./chunk.O2OL6RQQ.js";import"./chunk.J6HF7IRQ.js";import"./chunk.LRNFE3UK.js";import"./chunk.MB7LKKUD.js";import"./chunk.T2OUHRAA.js";import"./chunk.GRFD42WM.js";import"./chunk.EP6Q32WT.js";import"./chunk.QAM76AXV.js";import"./chunk.Z27NSSYL.js";import"./chunk.PZ7KY6XH.js";import"./chunk.WEMUKZKH.js";import"./chunk.T27QKVKP.js";import"./chunk.LP2ZMAT2.js";import"./chunk.BJUUSIQY.js";import"./chunk.MSAYU25L.js";import"./chunk.EGPCVMDU.js";import"./chunk.XOZU4OFA.js";import"./chunk.H3EGBDW2.js";import"./chunk.WVUJXDXZ.js";import"./chunk.DWM7AR5Y.js";import"./chunk.6KJGRM7A.js";import"./chunk.WALVW3KJ.js";import"./chunk.SNHKYH72.js";import"./chunk.UGQYMN4J.js";import"./chunk.RG5G6YQD.js";import"./chunk.MIE4TJRW.js";import"./chunk.QRQ5WPZI.js";import"./chunk.RD2FSSLV.js";import"./chunk.37RFCHSS.js";import"./chunk.SO6NT5K7.js";import"./chunk.MUSMNKE4.js";import"./chunk.SJQPTDAT.js";import"./chunk.JQ63N4MZ.js";import"./chunk.Z3O2VZAJ.js";import"./chunk.QNP5OR3P.js";import"./chunk.4W57E7AX.js";import{G as y,W as i}from"./chunk.A5PSEU3W.js";import"./chunk.SDO3U72B.js";import"./chunk.ZEZUKRC6.js";import"./chunk.FQLNBIQ5.js";import{b as r}from"./chunk.AJZBJBMO.js";var c=r(y(),1),e=r(i(),1);function v({store:d,views:t,as:a,scope:o}){let l=(0,c.useMemo)(()=>s({scope:`.${o}`}),[o]);return(0,e.jsxs)("div",{"data-testid":"embed-picture","data-embed-content":"",tabIndex:0,"aria-label":t.places().find(m=>m.as===a)?.title??"The picture",style:{flex:"1 1 auto",minHeight:0,display:"grid",gridTemplateRows:"minmax(0, 1fr)",overflow:"auto",background:"var(--graview-ground)",color:"var(--graview-ink)",fontFamily:"var(--graview-font-body, system-ui)"},children:[(0,e.jsx)("style",{children:l}),(0,e.jsx)(n,{store:d,views:t,as:a})]})}export{v as PictureFace};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as T,c as m,d as k}from"./chunk.
|
|
1
|
+
import{b as T,c as m,d as k}from"./chunk.G3GFDVO2.js";import{b as v,d as w,e as P,f as M,g as N}from"./chunk.M5FP4Y4Q.js";var j=new Set(["input","select","textarea"]),g=r=>r.namespaceURI==="http://www.w3.org/1999/xhtml"&&j.has(r.localName),R=r=>r.localName==="select"||r.type==="checkbox"||r.type==="radio",S=r=>r.type==="checkbox"||r.type==="radio"?!r.checked:r.localName!=="select"&&r.value==="";function y(r){return r.type==="checkbox"||r.type==="radio"?`checked:${r.checked}`:r.localName==="select"&&r.multiple?`selected:${[...r.selectedOptions].map(t=>t.value).join("\0")}`:`value:${r.value}`}function D(r=t=>t.isTrusted){let t=new WeakMap,s=new WeakSet,o=new WeakMap,i={heard(e,n){if(!(!g(n)||!r(e))&&(e.type==="input"||e.type==="change"&&R(n))&&((R(n)||S(n))&&s.delete(n),S(n)&&o.delete(n),t.set(n,y(n)),n.type==="radio"&&n.name)){let u=n.getRootNode();for(let c of u.querySelectorAll?.('input[type="radio"]')??[])c.name===n.name&&t.set(c,y(c))}},filled(e){t.delete(e),o.delete(e),g(e)&&!S(e)?s.add(e):s.delete(e)},press(e,n,u){if(!r(e))return;let c=n.closest("[data-act]");if(!c||!w(c))return;let l=e.type==="keydown"?e.key:void 0;if(!(e.type!=="click"&&!((l==="Enter"||l===" ")&&n===c&&!v(c))))return i.collect(c,u)},collect(e,n){if(!e.hasAttribute("data-act")||!n.contains(e))return;let u=e.closest("[data-record]"),c=e.closest("fieldset, [role='group']")??n,l=[];for(let a of c.querySelectorAll("input[name], select[name], textarea[name]")){let d=a,f=!s.has(d)&&t.get(d)===y(d);if(d.type==="radio"){if(!d.checked)continue;l.push({name:d.name,value:d.value,typed:f,empty:!1,chosen:!0});continue}if(d.localName==="select"){l.push({name:d.name,value:d.value,typed:f,empty:d.value===""&&!f,chosen:!0});continue}if(d.type==="checkbox"){l.push({name:d.name,value:d.checked,typed:f,empty:!d.checked&&!s.has(d)&&!f});continue}let O=(d.type==="number"||d.type==="range")&&d.value!==""&&Number.isFinite(d.valueAsNumber)?d.valueAsNumber:d.value,x=f?o.get(d):void 0;l.push({name:d.name,value:O,typed:f,empty:d.value===""&&!f,...x?{from:x}:{}})}return{as:e.getAttribute("data-act")??"",...u&&n.contains(u)?{record:u.getAttribute("data-record")}:{},fields:l}},prefilled(e,n){s.delete(e),o.set(e,n),t.set(e,y(e))}};return i}var b=new WeakMap,L=(r,t)=>{t.tab&&r.removeAttribute("tabindex"),t.role&&r.getAttribute("role")==="button"&&r.removeAttribute("role"),r.removeAttribute("data-graview-press"),b.delete(r)};function V(r){for(let t of r.querySelectorAll("[data-act], [data-graview-press], [role], [aria-pressed], [aria-expanded]")){let s=b.get(t),o=w(t)&&!v(t)&&!g(t),i=!o&&P(t,s?.role?null:t.getAttribute("role"));if(s&&(s.bound!==o||!(o||i))&&L(t,s),(o||i)&&!b.has(t)){let e=!M(t),n=o&&N(t);e&&t.setAttribute("tabindex","0"),n&&t.setAttribute("role","button"),t.setAttribute("data-graview-press",""),b.set(t,{tab:e,role:n,bound:o})}}}var h=new WeakSet;function z(r){for(let t of r.querySelectorAll("svg")){let s=t.hasAttribute("role")||t.hasAttribute("aria-label")||t.hasAttribute("aria-labelledby")||[...t.children].some(e=>e.localName==="title"),o=t.hasAttribute("tabindex")||t.hasAttribute("data-graview-link")||t.hasAttribute("data-graview-press")||t.querySelector("[tabindex], [data-graview-link], [data-graview-press], a")!==null,i=!s&&!o;i&&!h.has(t)&&!t.hasAttribute("aria-hidden")?(t.setAttribute("aria-hidden","true"),h.add(t)):!i&&h.has(t)&&(t.removeAttribute("aria-hidden"),h.delete(t))}}var I=1e3;function H(r){let t=r.getAttribute("data-debounce")?.trim(),s=t?Number(t):Number.NaN;return Number.isFinite(s)?Math.min(1e4,Math.max(250,Math.round(s))):I}function B(r){let t=r.trusted??(e=>e.isTrusted),s=r.timers??{set:(e,n)=>setTimeout(e,n),clear:e=>clearTimeout(e)},o=new Map,i=(e,n)=>{let u=o.get(e);u&&s.clear(u.handle),o.delete(e);let c=r.reader.collect(e,n);c&&r.save(c,e)};return{heard(e,n,u){if(!g(n)||!t(e)||!n.hasAttribute("data-act"))return;let c=n.getAttribute("data-save");if(e.type==="input"&&c==="input"){let l=o.get(n);l&&s.clear(l.handle),o.set(n,{root:u,handle:s.set(()=>i(n,u),H(n))})}else e.type==="change"&&(c==="change"||c==="input"&&o.has(n))&&i(n,u)},flush(){for(let[e,{root:n}]of[...o])i(e,n)},get waiting(){return o.size}}}var q=new Set(["text","search","email","url","tel","number"]);function C(r,t,s,o){for(let i of r.querySelectorAll("input[data-prefill], textarea[data-prefill]")){let e=i;if(s.has(e))continue;let n=e.getAttribute("data-prefill")??"";if(n===""||e.getAttribute("name")!==n||e.localName==="input"&&!q.has(e.type))continue;if(e.value!==""){s.add(e);continue}let c=[...(e.closest("fieldset, [role='group']")??r).querySelectorAll("[data-act]")],l=e.closest("[data-record]"),a=new Set(c.map(p=>p.closest("[data-record]")?.getAttribute("data-record")).filter(p=>typeof p=="string")),d=l&&r.contains(l)?l.getAttribute("data-record"):a.size===1?[...a][0]:void 0;if(!d)continue;let f=o({record:d,field:n,acts:c.map(p=>p.getAttribute("data-act")??"")});if(f!==void 0){if(e.value=f,s.add(e),e.value!==f){e.value="";continue}t.prefilled(e,{record:d,field:n,value:f})}}}function J(r,t,s,o){let i=k(t,o.as);if(!i)return m("undeclared",`This view may not ask for \u201C${o.as}\u201D: its manifest does not name it.`);let e=r.allMutations().find(a=>a.name===i.act);if(!e)return m("unknown-act","There is no act by that name here.");let n={};if(o.record!==void 0){let a=i.record??e.subject?.arg;if(!a)return m("unbound",`\u201C${o.as}\u201D is not done to a record.`);if(!s.has(o.record))return m("unbound","That press is bound to a record this view was not shown.");n[a]=o.record}for(let[a,d]of Object.entries(i.constants??{})){if(a in n)return m("malformed",`\u201C${a}\u201D is both the bound record and a constant.`);n[a]=d}let u=e.input?.shape??{},c=new Set(Object.keys(u)),l=new Set;for(let a of o.fields){if(!c.has(a.name)||a.name in n)continue;if(l.has(a.name))return m("malformed",`Two fields here are called \u201C${a.name}\u201D.`);l.add(a.name);let d=u[a.name];if(!a.chosen&&a.value===""&&!E(d,"")){a.typed&&a.from&&E(d,null)&&(n[a.name]=null);continue}if(a.typed&&a.chosen){let f=T(u[a.name])?.find(p=>String(p)===String(a.value));if(f!==void 0)n[a.name]=f;else if(typeof a.value=="string"&&s.has(a.value))n[a.name]=a.value;else return m("untyped",`\u201C${a.name}\u201D was a choice among the view's own words, not one this app declares, so it was not sent.`)}else{if(a.typed&&a.from&&!(o.record===a.from.record&&a.name===a.from.field&&A(r,i,a.from.record,a.from.field)))return m("untyped",`\u201C${a.name}\u201D was filled in from a record for an act that writes it back there, not for this one, so it was not sent.`);if(a.typed&&a.from&&String(a.value)===a.from.value)n[a.name]=r.graph.getNode(a.from.record)?.[a.name]??a.value;else if(a.typed)n[a.name]=a.value;else if(!a.empty)if(F(r,d,a.value,o.record!==void 0&&A(r,i,o.record,a.name)?o.record:void 0,a.name))n[a.name]=a.value;else return m("untyped",`\u201C${a.name}\u201D was filled in by the view, not typed by you, so it was not sent.`)}}return{ok:!0,name:i.act,args:n}}function E(r,t){let s=r?.safeParse;return typeof s=="function"?s.call(r,t).success:!1}function $(r){let t=r;for(let s=0;s<8&&t?._zod?.def;s+=1){let o=t._zod.def;if(o.type==="default"||o.type==="prefault"){let i=o.defaultValue;return{value:typeof i=="function"?i():i}}if(!("innerType"in o))return;t=o.innerType}}function F(r,t,s,o,i){if(!E(t,s))return!1;if(s===0||s===!1||s==="0")return!0;let e=$(t);if(e&&Object.is(e.value,s))return!0;if(o===void 0)return!1;let n=r.graph.getNode(o)?.[i];return n!=null&&String(n)===String(s)}function A(r,t,s,o){let i=r.allMutations().find(c=>c.name===t.act),e=i?.subject;if(!i||!e||(t.record??e.arg)!==e.arg||o===e.arg||Object.hasOwn(t.constants??{},o)||!Object.hasOwn(i.input.shape??{},o)||Object.keys(i.writesOther??{}).length>0)return!1;let n=r.graph.getNode(s)?.kind,u=n===void 0?void 0:r.schema.tryDefinition(n);return!u||e.kinds!=="*"&&!e.kinds.includes(n)||!Object.hasOwn(u.fields.shape??{},o)?!1:i.writes?.includes(o)??!1}function K(r,t,s,o,i){if(!o.has(i.record))return;let e=r.seenBy(t).graph.getNode(i.record);if(!e||!i.acts.some(c=>{let l=k(s,c);if(!l||!A(r,l,i.record,i.field))return!1;let a=r.allMutations().find(d=>d.name===l.act).subject;return r.permits({name:l.act,args:{[a.arg]:i.record}},t).ok}))return;let u=e[i.field];return typeof u=="string"?u:typeof u=="number"&&Number.isFinite(u)?String(u):void 0}export{D as a,V as b,z as c,I as d,H as e,B as f,C as g,J as h,E as i,A as j,K as k};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{db as g}from"./chunk.
|
|
1
|
+
import{db as g}from"./chunk.ZEZUKRC6.js";function y(e){return[e.basis,...e.confidence!==void 0?[`${Math.round(e.confidence*100)}% sure`]:[],...e.model?[e.model]:[]].join(" \xB7 ")}var u=e=>`Not yet kept by a person. ${e.by.name??e.by.id??"Something"} made it${e.lineage?`: ${y(e.lineage)}`:""}.`,p=e=>`${e.kind}\0${e.from}\0${e.to}`;function k(e,o){let r=new Map;for(let n of e){if(n.undoes!==void 0||o.has(n.id)||n.withheld)continue;let l=g(n.author),s=l==="human"||l==="visitor",c=new Map;for(let t of n.primitives){if(t.op!=="add-edge"&&t.op!=="remove-edge")continue;let i=p(t.edge),a=r.get(i)??c.get(i);if(r.delete(i),t.op==="remove-edge")a&&c.set(i,a);else if(a&&(s||!n.lineage))r.set(i,s?{...a,provisional:!1,keptBy:n.id}:a);else{let d=n.lineage;r.set(i,{edge:t.edge,made:n.id,by:n.author,...d?{lineage:d}:{},provisional:!s&&(d?.confidence??1)<1})}}}return r}var f=new WeakMap;function v({log:e}){let o=e.all(),r=`${e.horizon}:${o.length}:${o.at(-1)?.id}`,n=f.get(e);return n?.at!==r&&f.set(e,n={at:r,links:k(o,e.undoneIds())}),n.links}var L=(e,o)=>v(e).get(p(o));var m=e=>[...v(e).values()].filter(o=>o.provisional);export{y as a,u as b,L as c,m as d};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as y,b as h}from"./chunk.
|
|
1
|
+
import{a as y,b as h}from"./chunk.MJY4SLWA.js";import"./chunk.4UUJHLHR.js";import"./chunk.SNHKYH72.js";import"./chunk.UGQYMN4J.js";import"./chunk.RG5G6YQD.js";import{Bd as b}from"./chunk.ZEZUKRC6.js";import"./chunk.FQLNBIQ5.js";import"./chunk.AJZBJBMO.js";var k=(d,i)=>({id:i.id,said:h(d,i),when:i.when,...i.alsoMine?{alsoMine:!0}:{}});async function A(d,i,t){let a=b(t.principal);if(a.id===void 0)return{ok:!1,error:"This seat acts for nobody the app knows by id, so there is nobody to tell. Nothing was kept."};let r=t.store.seenBy(a),p=async()=>(await t.subscriptions.list(a.id)).filter(n=>n.app===t.app);if(d==="list_subscriptions")return{ok:!0,data:{subscriptions:(await p()).map(n=>k(r,n))}};if(d==="unsubscribe"){let n=String(i.id??"");return(await p()).some(g=>g.id===n)?(await t.subscriptions.remove(n),{ok:!0,data:{removed:n}}):{ok:!1,error:`No subscription "${n}" of yours. list_subscriptions says which there are.`}}let o=String(i.on??""),c=n=>typeof i[n]=="string"&&i[n].trim()!==""?i[n].trim():void 0,e=c("record");if(e!==void 0&&!r.graph.getNode(e)){let n=t.store.resolveRef({name:"record",kinds:["*"]},e,a);if(!n.ok)return{ok:!1,error:`${n.message} Nothing was kept.`};e=n.id}let s=c("kind")??(e!==void 0&&o!=="act"?r.graph.getNode(e)?.kind:void 0),f=c("act"),m=c("condition"),u=o==="act"?{on:o,...f!==void 0?{act:f}:{},...e!==void 0?{record:e}:{}}:o==="created"&&s!==void 0?{on:o,kind:s}:o==="changed"?{on:o,...s!==void 0&&e===void 0?{kind:s}:{},...e!==void 0?{record:e}:{}}:o==="reaches"&&s!==void 0?{on:o,kind:s,condition:m??"",...e!==void 0?{record:e}:{}}:void 0;if(!u)return{ok:!1,error:'Say what to be told of: on is "act", "created", "changed" or "reaches", with a kind (or a record) for all but act. Nothing was kept.'};let l=y({schema:r.schema,allMutations:()=>t.store.allMutations(),graph:r.graph},u);if(l)return{ok:!1,error:`${l} Nothing was kept.`};let S=await t.subscriptions.add({who:a,app:t.app,when:u,...i.alsoMine===!0?{alsoMine:!0}:{}});return{ok:!0,data:{subscription:k(r,S)}}}export{A as runSubscriptionTool};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{h as g}from"./chunk.
|
|
1
|
+
import{h as g}from"./chunk.QNP5OR3P.js";import{W as p}from"./chunk.A5PSEU3W.js";import{Rc as u,Zc as c}from"./chunk.ZEZUKRC6.js";import{b as h}from"./chunk.AJZBJBMO.js";var s={person:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"><circle cx="11.6" cy="5.4" r="2.5"/><path d="M7.9 12.4c0-2.1 1.7-3.8 3.7-3.8s3.7 1.7 3.7 3.8v3.2H7.9z"/><path d="M8 12.6 6.4 17.2"/><path d="M15.2 12.6 16.8 17.2"/><path d="M9.8 15.6v5"/><path d="M13.4 15.6v5"/></svg>',plot:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"><path d="M2.6 9.4 12 4.6l9.4 4.8-9.4 4.8z"/><path d="M2.6 9.4v4.4l9.4 4.8 9.4-4.8V9.4"/><path d="M12 14.2v4.4"/><path d="M7 11.9v3"/><path d="M17 11.9v3"/></svg>',box:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"><path d="M3.4 7.9 12 3.6l8.6 4.3-8.6 4.3z"/><path d="M3.4 7.9v8.2L12 20.4l8.6-4.3V7.9"/><path d="M12 12.2v8.2"/></svg>',task:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"><path d="M4.4 6.6 12 2.9l7.6 3.7v9.5L12 19.8 4.4 16.1z"/><path d="M12 12.4v7.4"/><path d="M4.4 6.6 12 10.3l7.6-3.7"/><path d="M8 9.6l2.4 2.4L16 8.4"/></svg>',shift:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"><path d="M3.2 8.2 12 4l8.8 4.2-8.8 4.2z"/><path d="M3.2 8.2v7.2L12 19.6l8.8-4.2V8.2"/><path d="M12 12.4v7.2"/><path d="M6.6 10.8v3.4"/><path d="M9.3 12v3.4"/></svg>',list:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"><path d="M2.8 10.4 12 6l9.2 4.4-9.2 4.4z"/><path d="M2.8 10.4v3.2L12 18l9.2-4.4v-3.2"/><path d="M6.6 8.6 15.8 13"/><path d="M9.4 7.2 18.6 11.6"/></svg>',vehicle:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"><path d="M2.8 14.2 5 9.4l8.6-1.6 5.4 3-1 3.6z"/><path d="M2.8 14.2v2.2h2.4"/><path d="M18 16.4h1.9l.1-2.2"/><circle cx="7.6" cy="16.6" r="1.9"/><circle cx="16.1" cy="16.6" r="1.9"/><path d="M8.6 8.2 9.8 12l7.2-1"/></svg>',rule:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"><path d="M5.4 19.4V6.6l12 12.8z"/><path d="M5.4 6.6 7.6 5.5l12 12.8-2.2 1.1"/><path d="M5.4 19.4 7.6 18.3h12"/><path d="M5.4 10.1h1.7"/><path d="M5.4 13.3h1.7"/><path d="M5.4 16.5h1.7"/></svg>',note:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"><path d="M6.2 6.2 14.8 10.5v9L6.2 15.2z"/><path d="M12.4 9.3 14.8 10.5l-.6 2.3"/><path d="M8.2 10.6 12.8 12.9"/><path d="M8.2 13.2 11.4 14.8"/></svg>'},w=Object.keys(s);function o(e){if(!e)return;let t=s[e];return t||(e.trimStart().startsWith("<svg")&&c(e)===null?e:void 0)}var a=h(p(),1);function j({kind:e,schema:t,brand:i,size:r=16,title:n}){let f=t?.tryDefinition?.(e)?.figure,d=o(i?.figures?.[e]??f),l=Math.round(u(e,i?.accents)),v=g(d);return d?(0,a.jsx)("span",{"aria-hidden":n===void 0?"true":void 0,...n===void 0?{}:{role:"img","aria-label":n},"data-graview-figure":e,"data-graview-figure-kind":"figure",dangerouslySetInnerHTML:v,style:{display:"inline-flex",alignItems:"center",justifyContent:"center",width:r,height:r,flex:"0 0 auto",color:`hsl(${l} 55% 52%)`,"--graview-figure-size":`${r}px`}}):(0,a.jsx)("span",{"aria-hidden":n===void 0?"true":void 0,...n===void 0?{}:{role:"img","aria-label":n},"data-graview-figure":e,"data-graview-figure-kind":"dot",style:{display:"inline-block",width:Math.round(r*.8),height:Math.round(r*.5),flex:"0 0 auto",background:`hsl(${l} 55% 52%)`,clipPath:"polygon(50% 0, 100% 50%, 50% 100%, 0 50%)"}})}function A(e,t,i){return o(i?.figures?.[e]??t?.tryDefinition?.(e)?.figure)!==void 0}export{j as a,A as b};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{q as K}from"./chunk.
|
|
1
|
+
import{q as K}from"./chunk.QNP5OR3P.js";import"./chunk.4W57E7AX.js";import{G as R,W as x,ea as N,fa as $}from"./chunk.A5PSEU3W.js";import"./chunk.SDO3U72B.js";import{$d as k,Rd as v,Sd as b,Td as f,Zd as h,pa as g}from"./chunk.ZEZUKRC6.js";import"./chunk.FQLNBIQ5.js";import{b as w}from"./chunk.AJZBJBMO.js";var u=w(R(),1);var o=w(x(),1),E=()=>()=>{};function C(e){let n=(0,u.useMemo)(()=>e?.onChange?i=>e.onChange(i):E,[e]),t=()=>e?.current()??b;return(0,u.useSyncExternalStore)(n,t,t)}var D=(e,n)=>e.lens?n.may.lenses:n.may.views;async function p(e,n,t){try{return await n(),!0}catch(i){let r=i?.code,d=typeof r=="string"?r:void 0;return e?.notify({kind:"toast",tone:"bad",sentence:i instanceof Error&&i.message?i.message:t,...d?{code:d}:{}}),!1}}function H(e,n,t,i,r){let d=e.name;return p(r,()=>n==="view"&&d!==void 0?i?t.hide(d):t.show(d):t.lens?.({op:"set-lens-hidden",title:e.title,on:e.kind,hidden:i}),i?`\u201C${e.title}\u201D could not be hidden.`:`\u201C${e.title}\u201D could not be shown.`)}function L(e,n,t,i,r){return p(r,()=>t.lens?.({op:"set-lens-hidden",title:e,hidden:i}),i?`\u201C${n}\u201D could not be hidden.`:`\u201C${n}\u201D could not be shown.`)}function V(e,n,t){return p(t,()=>n.restore(e.name),`\u201C${e.title}\u201D could not be restored.`)}async function A(e,n,t,i){let r=n==="view"&&e.name!==void 0?e.name:v(e.title),d=await p(i,()=>n==="view"&&e.name!==void 0?t.remove(e.name,{title:e.title,kind:e.kind}):t.lens?.({op:"remove-lens",title:e.title,on:e.kind}),`\u201C${e.title}\u201D could not be deleted.`);return d&&i?.notify({kind:"toast",id:`deleted-view-${r}`,sentence:`Deleted \u201C${e.title}\u201D. It is under Recently deleted in the places for ${30} days.`,action:{label:"Restore",onSelect:()=>void V({name:r,title:e.title},t,i)}}),d}function G(){let e=$(),n=e?.keptViews,t=C(n),i=e?.views;return(0,u.useMemo)(()=>{if(!n||!i)return null;let r=s=>f(s,t,n),d=new Set,c=i.places().filter(s=>{if(!s.hidden||r(s)===null)return!1;let m=`${s.name??""}|${s.title}`;return d.has(m)?!1:(d.add(m),!0)}),l=e?.store.schema,y=t.may.lenses&&n.lens&&l?(i.arrangement?.()?.hide??[]).filter(s=>l.tryDefinition(s)!==void 0).map(s=>({kind:s,title:g(l,s),path:h(l,s)})):[];return{keeper:n,hidden:c,lists:y,removed:t.removed.filter(s=>D(s,t)),how:r}},[n,t,i,e?.store.schema])}function T(e,n){let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleDateString(n??"en-US",{month:"short",day:"numeric"})}var I=`.graview-bar-list li.graview-bar-tidied{display:flex;align-items:flex-start;gap:8px;padding:0 0 0 2px}
|
|
2
2
|
.graview-bar-tidied>.graview-bar-item,.graview-bar-gone{flex:1 1 auto;min-width:0}
|
|
3
3
|
.graview-bar-gone{display:grid;gap:1px;padding:7px 8px;font-size:.875rem;line-height:1.3;overflow-wrap:anywhere;color:var(--graview-ink-muted)}
|
|
4
4
|
.graview-bar-gone small{font-size:.75rem}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as Ee,b as Re,c as Le,d as we,e as U,f as ue,g as pe,h as fe}from"./chunk.
|
|
1
|
+
import{a as Ee,b as Re,c as Le,d as we,e as U,f as ue,g as pe,h as fe}from"./chunk.A4EZAGG7.js";import{c as j,e as ce}from"./chunk.ZG5VGP5U.js";import{a as ge}from"./chunk.37RFCHSS.js";import{G as H,W as z,ea as le,ga as de}from"./chunk.A5PSEU3W.js";import"./chunk.SDO3U72B.js";import{Z as q,la as ae,oa as se,rd as _}from"./chunk.ZEZUKRC6.js";import"./chunk.FQLNBIQ5.js";import{b as C}from"./chunk.AJZBJBMO.js";var b=C(H(),1);var I=C(H(),1),Ae=(e,t)=>`graview:last-visit:${t??"anyone"}:${e.join(",")}`;function Oe(e,t,o){let n=new Set;for(let r of e)if(!(r.author.id!==void 0&&r.author.id===o)&&Date.parse(r.at)>t)for(let i of r.writes)n.add(i);return n}function ye(e,t,o){let n=Ae(t,o?.id),[r]=(0,I.useState)(()=>{try{let i=globalThis.localStorage?.getItem(n);return i?Number(i):null}catch{return null}});return(0,I.useEffect)(()=>{let i=()=>{if(document.visibilityState==="hidden")try{globalThis.localStorage?.setItem(n,String(Date.now()))}catch{}};return document.addEventListener("visibilitychange",i),window.addEventListener("pagehide",i),()=>{document.removeEventListener("visibilitychange",i),window.removeEventListener("pagehide",i)}},[n]),(0,I.useMemo)(()=>r===null?new Set:Oe(e,r,o?.id),[e,r,o?.id])}function me(e,t,o){let n=new Set;if(o===void 0)return n;n.add(o);for(let r of[...e.out(o),...e.in(o)])n.add(r.id);for(let r of t)if(r.author.id===o)for(let i of r.primitives)i.op==="add-node"&&n.add(i.node.id);return n}var J=C(H(),1);var v=C(z(),1),Ce=`.graview-workflows{position:absolute;left:0;top:0;pointer-events:none;z-index:${_.plots};opacity:var(--graview-altitude);transition:opacity 640ms cubic-bezier(.33,0,.2,1)}
|
|
2
2
|
.graview-workflow-wire{fill:none;stroke:var(--graview-accent);stroke-width:1.5;stroke-opacity:.7;stroke-linecap:round}
|
|
3
3
|
.graview-workflow-wire[data-wire=reads]{stroke-dasharray:3 4;stroke-opacity:.55}
|
|
4
4
|
.graview-workflow-spot{fill:var(--graview-accent);stroke:var(--graview-panel);stroke-width:1.5}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a,b}from"./chunk.47XEJZ3O.js";import"./chunk.BKYZSV2Y.js";import"./chunk.LP2ZMAT2.js";import"./chunk.MSAYU25L.js";import"./chunk.EGPCVMDU.js";import"./chunk.H3EGBDW2.js";import"./chunk.DWM7AR5Y.js";import"./chunk.6KJGRM7A.js";import"./chunk.WALVW3KJ.js";import"./chunk.SNHKYH72.js";import"./chunk.UGQYMN4J.js";import"./chunk.RG5G6YQD.js";import"./chunk.SO6NT5K7.js";import"./chunk.MUSMNKE4.js";import"./chunk.SJQPTDAT.js";import"./chunk.JQ63N4MZ.js";import"./chunk.Z3O2VZAJ.js";import"./chunk.ZEZUKRC6.js";import"./chunk.FQLNBIQ5.js";import"./chunk.AJZBJBMO.js";export{b as actOnSeveral,a as actsForSeveral};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var __graviewPreload=(base,files)=>{if(typeof document>"u")return;const asked=globalThis.__graviewPreloaded??=new Set;for(const file of files){const href=new URL(file,base).href;if(asked.has(href))continue;asked.add(href);const link=document.createElement("link");link.rel="modulepreload";link.href=href;document.head.append(link)}};import{a as le,b as O,c as ue}from"./chunk.LVOTLGJB.js";import{B as re,D as oe,F as ae,H as ie,L as se,N as de,Q as ce,i as J,j as Q,l as X,r as Y,u as ee,v as ne,z as te}from"./chunk.QNP5OR3P.js";import{a as W}from"./chunk.4W57E7AX.js";import{Aa as j,G as $,Ma as Z,Ta as U,W as G,ea as q,ga as z,ya as _,za as V}from"./chunk.A5PSEU3W.js";import{a as K}from"./chunk.SDO3U72B.js";import{$c as T,dd as I}from"./chunk.ZEZUKRC6.js";import{b as F}from"./chunk.AJZBJBMO.js";var o=F($(),1);var h=F($(),1),k,he=K(()=>(__graviewPreload(import.meta.url,["./chunk.ZRBGYXAO.js","./chunk.CEQQIW7Z.js","./chunk.G3GFDVO2.js","./chunk.D4WJ7OM5.js","./chunk.QDVGHI7R.js","./chunk.AKJS2NUM.js","./chunk.5AKZROMR.js","./chunk.MIE4TJRW.js","./chunk.QRQ5WPZI.js","./chunk.RD2FSSLV.js","./chunk.37RFCHSS.js","./chunk.SO6NT5K7.js","./chunk.MUSMNKE4.js","./chunk.SJQPTDAT.js","./chunk.JQ63N4MZ.js","./chunk.Z3O2VZAJ.js","./chunk.A5PSEU3W.js","./chunk.SDO3U72B.js","./chunk.ZEZUKRC6.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.JEC5FDKX.js"))),ye=()=>he().then(e=>void(k=e),()=>new Promise(e=>setTimeout(e,2e3)).then(ye)),pe=j(ye),ke=e=>!!e&&k===void 0;function Ae({onReady:e,fetch:n}){return(0,h.useLayoutEffect)(()=>void n().then(e),[e,n]),null}var ge=0;function xe(e){let[n,t]=(0,h.useState)(()=>k);(0,h.useEffect)(()=>{if(!e||n)return;let i=!1;return pe().then(()=>{i||t(k)}),()=>{i=!0}},[e,n]);let r=(0,h.useMemo)(()=>ge+=1,[e]);return{over:(0,h.useMemo)(()=>{let i=n??k;if(!e||!i)return;let{source:s,worker:d,...l}=e,c={...l,worker:d??{source:s},draft:!0};return{name:e.manifest.name,home:e.manifest.attach==="home",register:g=>i.registerWorkerView(g,c)}},[e,n]),n:r}}var we=[];function me(e,n,t){let[r,a]=(0,h.useState)(we);return(0,h.useEffect)(()=>{let i=()=>void pe().then(()=>a(n.forked()));if(n?.forked)return n.forked().length>0&&i(),n.onChange?.(i)},[n]),(0,h.useMemo)(()=>r.length>0&&k?r.reduce((i,s)=>k.registerWorkerView(i,{manifest:s.manifest,worker:{source:s.source}}),V(_(t),e)):e,[e,r,t])}var p=F(G(),1),Le=e=>typeof e=="object"?e:{};function Ne({rootRef:e,firstLook:n,app:t}){let r=(0,o.useCallback)(()=>e.current,[e]);return n?(0,p.jsx)(ce,{firstLook:n,root:r,app:t}):null}function De(e,n,t){let{app:r}=e,a=(0,o.useMemo)(()=>{let s=se(n(r.schema,r.viewSpecs),r),d=t?Se(s,t):s,l=e.views?e.views(r.schema,d):s,c=l===d?s:V(s,l);return de(c,r.schema,ae(e.brand??r.brand,r.schema)),t?t.register(c):c},[e.views,r.schema,r.viewSpecs,r.lenses,r.pages,r.home,t]),i=me(a,e.keptViews,r.schema);return Z(i,e.keptViews)}function Se(e,n){let t={...e,register(r,a,i,s){return s?.name!==n.name&&e.register(r,a,i,s),t},...e.home?{home:(r,a)=>(n.home||e.home(r,a),t)}:{}};return t}var B=e=>e?e.getBoundingClientRect().height:0;function Te(e,n,t){let r=(0,o.useRef)(t);r.current=t;let a=t!==void 0;(0,o.useLayoutEffect)(()=>{let i=e.current;if(!i||!a)return;let s=()=>{let m=[...i.children],w=m.find(v=>v.hasAttribute("data-graview-app-bar")),f=m.find(v=>v.hasAttribute("data-embed-content")),S=f?.querySelector("[data-embed-measure]")??null,u=m.find(v=>v.hasAttribute("data-graview-place-line"));return{strip:w,line:u,content:f,measure:S}},d=-1,l=()=>{let{strip:m,line:w,content:f,measure:S}=s(),u=Math.ceil(B(m)+B(w)+B(S||f));u!==d&&(d=u,r.current?.(u))};if(l(),typeof ResizeObserver>"u")return;let c=new ResizeObserver(l),g=()=>{c.disconnect();let{strip:m,line:w,content:f,measure:S}=s();for(let u of[i,m,w,f,S])u&&c.observe(u)};g();let R=new MutationObserver(()=>{g(),l()});return R.observe(i,{childList:!0}),()=>{c.disconnect(),R.disconnect()}},[e,n,a])}var Ie=480,ve=0;function Ke(e){let{app:n,seed:t,scheme:r="auto",brand:a=n.brand,fonts:i=!0,height:s="100%",label:d}=e,l=(0,o.useRef)(null);U(l);let c=s==="viewport"?"100dvh":s,g=X(typeof c=="string"&&/vh\b/.test(c)),R=(0,o.useMemo)(()=>`graview-embed-${++ve}`,[]),m=(0,o.useMemo)(()=>e.store??e.remote?.store??O(n,t),[e.store,e.remote,n,t]),w=e.presence??e.remote?.presence,f=e.hostContext?.theme,S=ue(r==="auto"&&f===void 0,a?.scheme),u=r==="auto"?f??S:r,v=(0,o.useMemo)(()=>W(u,a,{scope:`.${R}`}),[u,a,R]);J(e.favicon?I(e.assetsAt,T(a)):void 0),Q(e.favicon?a:void 0),(0,o.useEffect)(()=>{if(!i||typeof document>"u")return;let b=le(a);if(!b||document.querySelector(`link[href="${b}"]`))return;let y=document.createElement("link");y.rel="stylesheet",y.href=b,document.head.appendChild(y)},[a,i]);let C=(0,o.useRef)(void 0);(0,o.useLayoutEffect)(()=>{let b=l.current,y=C.current;if(C.current=d,!b||!d)return;let P=E=>{let A=E.getAttribute("aria-label")??"",x=y&&y!==d?A.startsWith(`${y} \xB7 `)?A.slice(y.length+3):A===y?"":A:A;x===d&&(E.getAttribute("role")==="region"||E.tagName==="SECTION"&&!E.hasAttribute("role"))&&E.setAttribute("role","group");let D=x.startsWith(`${d} \xB7 `)||x===d?x:x?`${d} \xB7 ${x}`:d;D!==A&&E.setAttribute("aria-label",D)},L=()=>b.querySelectorAll("aside, nav, main, header, footer, section[aria-label]:not([role]), [role=region], [role=complementary], [role=navigation], [role=search]").forEach(E=>{E.hasAttribute("data-graview-named-by-lens")||P(E)});L();let N=new MutationObserver(L);return N.observe(b,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["aria-label"]}),()=>N.disconnect()},[d]);let H=g?`${c}`.replace(/([\d.]+)[sdl]?vh\b/g,(b,y)=>`${+y*g/100}px`):c;return{rootRef:l,scope:R,css:v,scheme:u,store:m,presence:w,brand:a,auto:s==="auto",height:H}}function We({rootRef:e,board:n,onReport:t,where:r}){let a=(0,o.useCallback)(()=>e.current?.querySelector("[data-embed-content]")??e.current,[e]),i=(0,o.useRef)(r);i.current=r;let s=(0,o.useMemo)(()=>t?{tell:t,where:()=>i.current()}:void 0,[t]);return(0,p.jsx)(Y,{board:n,anchor:a,report:s})}function $e(e){let n=e.split(/[?#]/)[0].split("/").filter(Boolean).map(t=>{try{return decodeURIComponent(t)}catch{return t}});return n.length===0?{place:"home"}:n[0]==="places"?{place:n[1]??"places"}:{place:n[0],...n[1]!==void 0?{record:n[1]}:{}}}function Ge(e,n,t){return{brand:t,locale:e.locale,timeZone:e.timeZone,principal:e.principal,seats:e.seats,presence:n,typing:e.remote?.typing,people:e.people,memory:e.memory,presenceTtlMs:e.presenceTtlMs,onKeepLens:e.onKeepLens,onProposeChange:e.onProposeChange,composeChange:e.composeChange,onDraftChange:e.onDraftChange,ai:e.ai,files:e.files,assetsAt:e.assetsAt,resolveApp:e.resolveApp,history:e.history,linkedRecords:e.linkedRecords,subscriptions:e.subscriptions,dismissals:e.dismissals,whileAway:e.whileAway,notifications:e.notifications,onNotificationsSeen:e.onNotificationsSeen,workflowRuns:e.workflowRuns,keptViews:e.keptViews,onExport:e.onExport,signIn:e.signIn,menuSections:e.menuSections,app:e.app}}function qe({name:e,heading:n,faces:t,at:r,without:a,home:i,reach:s,standing:d,hostActions:l,barActions:c,appMenu:g,schemeChoice:R,share:m,status:w,keeping:f,onFind:S,named:u=!0}){let{brand:v,store:C,principal:H,views:b}=q();z();let y=a?.has("places")?[]:ee({store:C,principal:H,views:b}),P=oe();return(0,p.jsx)(te,{brand:v,name:e,named:u,description:v?.subtitle,heading:n,faces:t,home:i,places:y,current:r===null?null:ne(y,r),reach:s,onFind:S,...t||r===null?{scenePlaces:P}:{},...c?{actions:c}:{},...g?{appMenu:g}:{},...R?{scheme:R}:{},...m?{share:m}:{},...w?{status:w}:{},tools:(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(ie,{clean:d}),(0,p.jsx)(re,{...l?{hostActions:l}:{},...f?{keeping:f}:{}})]})})}var ze=e=>({appMenu:e.appMenu,share:e.share,status:e.status,schemeChoice:e.schemeChoice,notifications:e.notifications});function _e(e){return{...e.appMenu?{appMenu:e.appMenu}:{},...e.share?{share:e.share}:{},...e.status?{status:e.status}:{},...e.schemeChoice?{schemeChoice:e.schemeChoice}:{},...e.notifications?{notifications:e.notifications}:{}}}var je=e=>e===!1?2:Math.min(e+1,6);function Ze(e){let[n,t]=(0,o.useState)(e),r=(0,o.useRef)(void 0),a=(0,o.useRef)(void 0),i=(0,o.useMemo)(()=>({go:r,at:t,pending:a}),[]),s=(0,o.useCallback)(d=>{if(r.current){r.current(d);return}a.current=d,t(d)},[]);return{at:n,setAt:t,steering:i,steer:s}}function be(e){let n=typeof e=="object"&&e!==null?e.name:void 0;return{name:typeof n=="string"&&n.length>0?n:typeof e=="object"?"Error":typeof e}}var M=()=>typeof performance<"u"?performance.now():Date.now();function Ue(e,n){let t=(0,o.useRef)({onError:e,face:n});return t.current={onError:e,face:n},(0,o.useCallback)((r,a)=>t.current.onError?.(be(r),{module:a.module,face:t.current.face}),[])}function Je(e,n){let t=(0,o.useRef)(null);t.current===null&&(t.current=M());let r=(0,o.useRef)({onReady:e,face:n});r.current={onReady:e,face:n};let a=(0,o.useRef)(!1);return(0,o.useCallback)(i=>{a.current||(a.current=!0,r.current.onReady?.({ms:Math.max(0,M()-(t.current??M())),face:i}))},[])}var fe=class extends o.Component{state={failed:!1};static getDerivedStateFromError(){return{failed:!0}}componentDidCatch(n,t){console.error(`[graview] ${this.props.module} threw while rendering`,n,t.componentStack),this.props.report(n,{module:this.props.module})}render(){return this.state.failed?(0,p.jsxs)("div",{role:"alert","data-graview-face-error":this.props.module,...this.props.content?{"data-embed-content":""}:{},style:this.props.content?{flex:"1 1 auto",display:"grid",alignContent:"center",justifyItems:"center",gap:8,padding:24,background:"var(--graview-ground)",color:"var(--graview-ink)",fontSize:"0.9375rem"}:{display:"inline-flex",alignItems:"center",gap:6,fontSize:"0.8125rem",color:"var(--graview-ink-muted)"},children:[(0,p.jsx)("span",{children:this.props.content?"This part of the app could not draw.":"Could not draw."}),(0,p.jsx)("button",{type:"button",onClick:()=>this.setState({failed:!1}),style:{padding:"3px 11px",fontSize:"0.8125rem"},children:"Try again"})]}):this.props.children}};export{pe as a,ke as b,Ae as c,xe as d,Le as e,Ne as f,De as g,Te as h,Ie as i,Ke as j,We as k,$e as l,Ge as m,qe as n,ze as o,_e as p,je as q,Ze as r,Ue as s,Je as t,fe as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./chunk.MIE4TJRW.js";import{o as P}from"./chunk.
|
|
1
|
+
import"./chunk.MIE4TJRW.js";import{o as P}from"./chunk.QRQ5WPZI.js";import"./chunk.RD2FSSLV.js";import"./chunk.37RFCHSS.js";import"./chunk.SO6NT5K7.js";import"./chunk.MUSMNKE4.js";import"./chunk.SJQPTDAT.js";import"./chunk.JQ63N4MZ.js";import"./chunk.Z3O2VZAJ.js";import"./chunk.QNP5OR3P.js";import"./chunk.4W57E7AX.js";import{G as A,W as S,fa as b}from"./chunk.A5PSEU3W.js";import"./chunk.SDO3U72B.js";import{Ja as w,sd as x,wa as L}from"./chunk.ZEZUKRC6.js";import"./chunk.FQLNBIQ5.js";import{b as R}from"./chunk.AJZBJBMO.js";var u=R(A(),1);var n=R(S(),1),C={kind:"human"},p={color:"var(--graview-ink-muted)"};function I(e){if(e){if(/^https?:\/\//i.test(e))try{return new URL(e).href}catch{return}return L(e)?e:void 0}}function z(e){let o=b(),t=o?.linkedReads,[i,a]=(0,u.useState)(()=>t?t.answered(e)??"asking":null);return(0,u.useEffect)(()=>{if(!t){a(o?.linkedRecords?"asking":null);return}let d=t.answered(e);if(a(d===void 0?"asking":d),d!==void 0)return;let s=!0;return t.ask(e).then(l=>s&&a(l)),()=>{s=!1}},[t,o?.linkedRecords,e.address,e.kind,e.id]),i}function V({reference:e,as:o}){let t=b(),i=z(e),a={position:"relative",zIndex:x.raised,overflowWrap:"anywhere",minWidth:0,maxWidth:"100%"};if(i==="asking")return(0,n.jsx)("span",{"data-graview-linked":"","data-graview-linked-state":"asking","aria-busy":"true",style:{...p,...a},children:"Linked record"});if(i&&"denied"in i)return(0,n.jsx)("span",{"data-graview-linked":"","data-graview-linked-state":"denied",style:{...p,fontStyle:"italic",...a},children:"linked record (no access)"});if(!i)return(0,n.jsx)("span",{"data-graview-linked":"","data-graview-linked-state":"missing",style:{...p,fontStyle:"italic",...a},children:"linked record (not found)"});let d=I(i.href),s=t?.linkedRecords,l=t?.principal??C,g=s?.open?c=>{c.metaKey||c.ctrlKey||(c.preventDefault(),s.open(e,l))}:void 0,k=(0,n.jsx)("a",{"data-graview-linked-title":"",...d?{href:d}:{role:"link",tabIndex:0},...g?{onClick:g,onKeyDown:c=>!d&&(c.key==="Enter"||c.key===" ")?g(c):void 0}:{},style:{fontWeight:600,color:"inherit",textUnderlineOffset:3,cursor:d||g?"pointer":"default"},children:i.label});return o==="chip"?(0,n.jsx)("span",{"data-graview-linked":"","data-graview-linked-state":"found",title:i.describe,style:{display:"inline-flex",alignItems:"center",minHeight:24,...a},children:k}):(0,n.jsx)(D,{record:i,title:k,base:a})}function D({record:e,title:o,base:t}){return(0,n.jsxs)("span",{"data-graview-linked":"","data-graview-linked-state":"found",style:{display:"grid",gap:2,padding:"8px 10px",border:"1px solid var(--graview-line)",borderRadius:"var(--graview-radius-sm, 6px)",background:"var(--graview-surface)",...t},children:[(0,n.jsxs)("span",{style:{display:"flex",flexWrap:"wrap",alignItems:"baseline",gap:"2px 8px"},children:[o,e.app?(0,n.jsxs)("span",{"data-graview-linked-app":"",style:{...p,fontSize:"0.75rem"},children:["in ",e.app]}):null]}),e.describe?(0,n.jsx)("span",{"data-graview-linked-describe":"",style:{...p,fontSize:"0.8125rem"},children:e.describe}):null,e.card&&e.card.length>0?(0,n.jsx)("span",{"data-graview-linked-card":"",style:{display:"flex",flexWrap:"wrap",gap:"2px 12px",fontSize:"0.8125rem"},children:e.card.map(i=>(0,n.jsxs)("span",{children:[(0,n.jsx)("span",{style:p,children:i.label})," ",i.text]},i.label))}):null]})}function H({relation:e,refs:o,as:t="record",nodeId:i,field:a,style:d}){let s=(0,n.jsx)("span",{"data-graview-linked-list":"",style:{display:"grid",gap:6,minWidth:0,...d},children:o.map(l=>(0,n.jsx)(V,{reference:l,as:t},w(l)))});return i&&a?(0,n.jsx)(K,{nodeId:i,field:a,relation:e,refs:o,drawn:s}):s}function K({nodeId:e,field:o,relation:t,refs:i,drawn:a}){let{fields:d,commit:s}=P(e),l=d.find(f=>f.field===o),[g,k]=(0,u.useState)(!1);if(!l)return a;let c=t.cardinality==="one"?i[0]?w(i[0]):void 0:i.map(w);return(0,n.jsxs)("span",{style:{display:"grid",gap:6,minWidth:0},children:[a,g?(0,n.jsx)(N,{relation:t,value:c,label:"Link another record",onChange:f=>{s(l,f),k(!1)},onCancel:()=>k(!1)}):(0,n.jsx)("button",{type:"button","data-graview-linked-change":"",onClick:()=>k(!0),style:{justifySelf:"start",font:"inherit",fontSize:"0.8125rem",background:"none",border:0,padding:"4px 0",color:"var(--graview-accent)",cursor:"pointer",minHeight:24},children:"Change"})]})}function N({relation:e,value:o,onChange:t,onCancel:i,label:a}){let d=b(),s=d?.linkedRecords,l=d?.principal??C,g=(0,u.useId)(),[k,c]=(0,u.useState)(""),[f,m]=(0,u.useState)("asking");(0,u.useEffect)(()=>{if(!s)return;let r=!0;m("asking");let y=setTimeout(()=>{Promise.resolve().then(()=>s.find({address:e.address,kinds:e.kinds,query:k,limit:20},l)).then(h=>r&&m(Array.isArray(h)?h:"denied"),()=>r&&m([]))},150);return()=>{r=!1,clearTimeout(y)}},[s,e.address,e.kinds.join(","),k,l.kind,l.id]);let v=new Set([o].flat().filter(r=>typeof r=="string")),W=r=>{let y=w(r);if(e.cardinality==="one")return t(y);t(v.has(y)?[...v].filter(h=>h!==y):[...v,y])};return s?(0,n.jsxs)("span",{"data-graview-linked-picker":"",style:{display:"grid",gap:6,minWidth:0},children:[(0,n.jsx)("label",{htmlFor:g,style:{...p,fontSize:"0.8125rem"},children:a}),(0,n.jsx)("input",{id:g,type:"search",value:k,placeholder:`Find one in ${e.address}`,onChange:r=>c(r.target.value),style:{font:"inherit",minHeight:32,padding:"4px 8px",border:"1px solid var(--graview-line)",borderRadius:6,background:"var(--graview-surface)",color:"inherit",minWidth:0}}),f==="asking"?(0,n.jsx)("span",{"aria-busy":"true",style:p,children:"Looking\u2026"}):f==="denied"?(0,n.jsx)("span",{"data-graview-linked-state":"denied",style:{...p,fontStyle:"italic"},children:"linked record (no access)"}):f.length===0?(0,n.jsx)("span",{style:p,children:"Nothing there matches."}):(0,n.jsx)("ul",{role:"list",style:{listStyle:"none",margin:0,padding:0,display:"grid",gap:4},children:f.map(r=>{let y=v.has(w(r));return(0,n.jsx)("li",{children:(0,n.jsxs)("button",{type:"button","data-graview-linked-candidate":w(r),"aria-pressed":y,onClick:()=>W(r),style:{display:"grid",gap:2,width:"100%",textAlign:"start",font:"inherit",padding:"6px 8px",minHeight:32,border:"1px solid var(--graview-line)",borderRadius:6,background:y?"var(--graview-accent-soft, var(--graview-surface))":"var(--graview-surface)",color:"inherit",cursor:"pointer"},children:[(0,n.jsx)("span",{style:{fontWeight:600},children:r.label}),r.describe?(0,n.jsx)("span",{style:{...p,fontSize:"0.8125rem"},children:r.describe}):null]})},w(r))})}),i?(0,n.jsx)("button",{type:"button",onClick:i,style:{justifySelf:"start",font:"inherit",fontSize:"0.8125rem",background:"none",border:0,padding:"4px 0",color:"var(--graview-ink-muted)",cursor:"pointer",minHeight:24},children:"Keep it as it is"}):null]}):(0,n.jsxs)("span",{"data-graview-linked-picker":"","data-graview-linked-state":"no-host",style:p,children:["This page cannot read ",e.address,", so nothing there can be linked here."]})}var T=e=>(0,n.jsx)(H,{...e}),U=e=>(0,n.jsx)(N,{...e});export{N as LinkedPicker,H as LinkedRecordView,U as drawLinkedPicker,T as drawLinkedRecord};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as V}from"./chunk.
|
|
1
|
+
import{a as V}from"./chunk.DZMIYEHQ.js";import"./chunk.T27QKVKP.js";import"./chunk.XOZU4OFA.js";import{f as C,g as x,h as R}from"./chunk.H3EGBDW2.js";import{a as D}from"./chunk.JQ2WNKDW.js";import{a as T,b as A,c as M}from"./chunk.LVOTLGJB.js";import"./chunk.SO6NT5K7.js";import"./chunk.MUSMNKE4.js";import"./chunk.SJQPTDAT.js";import"./chunk.JQ63N4MZ.js";import"./chunk.Z3O2VZAJ.js";import{a as F,c as $}from"./chunk.4W57E7AX.js";import{G as k,O as E,T as H,W as g}from"./chunk.A5PSEU3W.js";import"./chunk.SDO3U72B.js";import"./chunk.ZEZUKRC6.js";import"./chunk.FQLNBIQ5.js";import{b as l}from"./chunk.AJZBJBMO.js";var m=l(k());var n=l(g()),B={maxWidth:560,margin:"0 auto",padding:"40px 20px 64px",display:"grid",gridTemplateColumns:"minmax(0, 1fr)",gap:16};function G({app:r,store:e,form:o,principal:i,heading:f=1,onSubmitted:a}){let t=(0,m.useMemo)(()=>C(r,o,e.allMutations()),[r,o,e]),d=H(e),v=(0,m.useMemo)(()=>d?e.seenBy(i):e,[d,e,i]),[p,b]=(0,m.useState)(!1),u=(0,m.useRef)(null);(0,m.useEffect)(()=>{p&&u.current?.focus()},[p]);let y=`h${f}`;if(!d)return null;if(!t)return(0,n.jsx)("main",{"data-graview-visitor-form":o,style:B,children:(0,n.jsx)("p",{role:"alert",children:"There is no form here."})});let S=R(t);return(0,n.jsxs)("main",{"data-graview-visitor-form":o,"aria-labelledby":"graview-visitor-form-title",style:B,children:[(0,n.jsx)(y,{id:"graview-visitor-form-title",style:{margin:0,fontSize:"var(--graview-text-title)"},children:t.title}),p?(0,n.jsxs)("div",{ref:u,role:"status",tabIndex:-1,"data-graview-part":"received",style:{display:"grid",gap:8,outline:"none"},children:[(0,n.jsx)("p",{style:{margin:0,fontWeight:600},children:S.said}),S.next?(0,n.jsx)("p",{style:{margin:0},children:S.next}):null]}):(0,n.jsxs)(n.Fragment,{children:[t.intro?(0,n.jsx)("p",{style:{margin:0,color:"var(--graview-ink-muted)"},children:t.intro}):null,(0,n.jsx)(V,{store:v,mutation:t.act,principal:i,only:t.fields.map(h=>h.name),label:t.submit,onDone:()=>{b(!0),a?.(o)}})]})]})}var s=l(k()),P=l($()),O=l(D());var c=l(g());function L(r){let{app:e,form:o,principal:i,scheme:f="auto",brand:a=e.brand,fonts:t=!0,height:d}=r,v=(0,s.useMemo)(()=>typeof i!="string"?i:e.forms?.[o]?x(e,o,i):{kind:"human",id:i,roles:[]},[e,o,i]),p=(0,s.useMemo)(()=>r.store??r.remote?.store??A(e,r.seed),[r.store,r.remote,e,r.seed]),b=M(f==="auto",a?.scheme),u=f==="auto"?b:f,y=`graview-form-${(0,s.useId)().replace(/[^a-zA-Z0-9_-]/g,"")}`,S=(0,s.useMemo)(()=>F(u,a,{scope:`.${y}`}),[u,a,y]);return(0,s.useEffect)(()=>{if(!t||typeof document>"u")return;let h=T(a);if(!h||document.querySelector(`link[href="${h}"]`))return;let w=document.createElement("link");w.rel="stylesheet",w.href=h,document.head.appendChild(w)},[a,t]),(0,c.jsxs)("section",{className:y,"aria-label":r.label??e.forms?.[o]?.title??e.name,"data-graview-embed":"form","data-graview-scheme":u,style:{position:"relative",isolation:"isolate",...d===void 0?{}:{minHeight:d},background:"var(--graview-ground)",color:"var(--graview-ink)",fontFamily:"var(--graview-font-body, system-ui)"},children:[(0,c.jsx)("style",{children:S}),(0,c.jsx)(E.Provider,{value:r.assetsAt,children:(0,c.jsx)(G,{app:e,store:p,form:o,principal:v,heading:r.heading??1,...r.onSubmitted?{onSubmitted:r.onSubmitted}:{}})})]})}function U(r,e){e.app.forms?.[e.form]||x(e.app,e.form,"form:");let o=e.store??e.remote?.store??A(e.app,e.seed),i=null;function f(){let[t,d]=(0,s.useState)(e.scheme??"auto");return i=d,(0,c.jsx)(L,{...e,store:o,scheme:t})}let a=(0,O.createRoot)(r);return(0,P.flushSync)(()=>a.render((0,c.jsx)(f,{}))),{store:o,setScheme:t=>(0,P.flushSync)(()=>i?.(t)),unmount:()=>a.unmount()}}export{L as FormEmbed,U as mount};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as p}from"./chunk.
|
|
1
|
+
import{b as p}from"./chunk.D4WJ7OM5.js";import{vc as g}from"./chunk.ZEZUKRC6.js";function w(n){let r=n.policy?.sees??[];if(r.length===0)return!0;let t=o=>o.fields===void 0&&(o.hide?.length??0)===0;return n.schema.kinds.every(o=>r.some(s=>s.roles==="*"&&!s.own&&!s.via&&t(s)&&s.kinds.includes(o)))}function b(n){let r=n;for(let t=0;t<8&&r?._zod?.def;t+=1){let o=r._zod.def;if(o.type==="enum")return Object.values(o.entries);if(o.type==="literal")return o.values;if(!("innerType"in o))return;r=o.innerType}}var c=(n,r)=>({ok:!1,reason:n,message:r});function k(n,r){return p(n).find(t=>(t.as??t.act)===r)??p(n).find(t=>t.act===r&&t.as===void 0)}var m=n=>typeof n=="object"&&n!==null&&!Array.isArray(n)&&"href"in n;function S(n,r,t,o,s){let l=k(r,t);if(!l)return c("undeclared",`This view may not ask for \u201C${t}\u201D: its manifest does not name it.`);let u={},f=new Map;for(let[a,d]of Object.entries(o)){let y=i=>{if(!m(i))return i;let e=typeof i.href=="string"?s?.file(i.href):void 0;if(!e)throw c("malformed",`\u201C${a}\u201D is a file the host did not hand this view: a view hands an act a file the person dropped (event.files), or one a record it was shown holds, as it was handed.`);let h=s?.dropped(e.href);if(h){if(f.has(e.href))throw c("malformed",`\u201C${a}\u201D hands the act a dropped file it already carries: each file a person dropped goes in one act, once.`);f.set(e.href,h)}return e};try{u[a]=Array.isArray(d)?d.map(y):y(d)}catch(i){return i}}if(!w(n)){let a=new Set([...f.values()].map(e=>e.target)),d=a.size===1?[...a][0]:void 0,y=e=>m(e)&&typeof e.href=="string"&&f.has(e.href)||g(e)||d!==void 0&&e===d&&s?.shown.has(d)===!0;return f.size>0&&a.size===1&&Object.values(u).every(e=>Array.isArray(e)?e.every(y):y(e))?{ok:!0,name:l.act,args:{...u,...l.constants??{}},spent:[...f.keys()]}:c("press-only","In this app some members may not see some records, so a view's act applies only when you press it.")}return{ok:!0,name:l.act,args:{...u,...l.constants??{}}}}export{w as a,b,c,k as d,S as e};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./chunk.
|
|
1
|
+
import"./chunk.QNP5OR3P.js";import"./chunk.4W57E7AX.js";import{G as W,W as x}from"./chunk.A5PSEU3W.js";import"./chunk.SDO3U72B.js";import"./chunk.ZEZUKRC6.js";import"./chunk.FQLNBIQ5.js";import{b as D}from"./chunk.AJZBJBMO.js";var g=D(W(),1);var o=D(x(),1),v=864e5,l=t=>Date.UTC(+t.slice(0,4),+t.slice(5,7)-1,+t.slice(8,10)),I=t=>new Date(t).toISOString().slice(0,10),s=(t,i)=>I(l(t)+i*v),m=(t,i)=>{let a=new Date(l(t)),u=a.getUTCMonth()+i,d=Date.UTC(a.getUTCFullYear(),u,1),w=new Date(Date.UTC(a.getUTCFullYear(),u+1,0)).getUTCDate();return I(d+(Math.min(a.getUTCDate(),w)-1)*v)};function p(t,i,a){try{return new Intl.DateTimeFormat(t??"en-US",{...i,timeZone:"UTC"}).format(a)}catch{return new Intl.DateTimeFormat("en-US",{...i,timeZone:"UTC"}).format(a)}}function F(t){try{let i=new Intl.Locale(t??"en-US"),a=i.getWeekInfo?.().firstDay??i.weekInfo?.firstDay;if(a!==void 0)return a%7}catch{return 0}return/^en-US|^en$|-(US|CA|JP|BR|IL|MX|PH)$/.test(t??"en-US")?0:1}function H({id:t,label:i,selected:a,today:u,locale:d,onPick:w,onClose:T}){let[r,f]=(0,g.useState)(a??u),U=(0,g.useRef)(null),y=F(d),b=`${r.slice(0,7)}-01`,M=(new Date(l(b)).getUTCDay()-y+7)%7,P=s(b,-M),A=Array.from({length:6},(e,n)=>Array.from({length:7},(S,c)=>s(P,n*7+c))),$=p(d,{month:"long",year:"numeric"},l(b)),h=(0,g.useRef)(!0);(0,g.useEffect)(()=>{h.current&&U.current?.querySelector(`[data-day="${r}"]`)?.focus(),h.current=!1},[r]);let E=e=>{let n={ArrowLeft:()=>s(r,-1),ArrowRight:()=>s(r,1),ArrowUp:()=>s(r,-7),ArrowDown:()=>s(r,7),PageUp:()=>m(r,e.shiftKey?-12:-1),PageDown:()=>m(r,e.shiftKey?12:1),Home:()=>s(r,-((new Date(l(r)).getUTCDay()-y+7)%7)),End:()=>s(r,6-(new Date(l(r)).getUTCDay()-y+7)%7)};n[e.key]?(e.preventDefault(),h.current=!0,f(n[e.key]())):e.key==="Escape"&&(e.preventDefault(),e.stopPropagation(),T())},R=Array.from({length:7},(e,n)=>l("1970-01-04")+(y+n)%7*v),C={minWidth:32,minHeight:32,padding:"0 8px",borderRadius:6};return(0,o.jsxs)("div",{id:t,role:"group","aria-label":`Pick a date for ${i}`,"data-graview-part":"when-month",onKeyDown:e=>{e.key==="Escape"&&(e.preventDefault(),e.stopPropagation(),T())},style:{flexBasis:"100%",width:"min(100%, 20rem)",boxSizing:"border-box",padding:8,border:"1px solid var(--graview-edge)",borderRadius:8,background:"var(--graview-panel)",color:"var(--graview-ink)"},children:[(0,o.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:6,marginBottom:6},children:[(0,o.jsx)("button",{type:"button","aria-label":"Previous month",onClick:()=>f(m(r,-1)),style:C,children:"\u2039"}),(0,o.jsx)("span",{id:`${t}-title`,"aria-live":"polite",style:{fontWeight:600,fontSize:"0.875rem"},children:$}),(0,o.jsx)("button",{type:"button","aria-label":"Next month",onClick:()=>f(m(r,1)),style:C,children:"\u203A"})]}),(0,o.jsxs)("table",{ref:U,role:"grid","aria-labelledby":`${t}-title`,onKeyDown:E,style:{width:"100%",borderCollapse:"collapse",tableLayout:"fixed",fontSize:"0.8125rem"},children:[(0,o.jsx)("thead",{children:(0,o.jsx)("tr",{children:R.map(e=>(0,o.jsx)("th",{scope:"col",abbr:p(d,{weekday:"long"},e),style:{fontWeight:500,color:"var(--graview-ink-faint)",padding:"2px 0"},children:p(d,{weekday:"narrow"},e)},e))})}),(0,o.jsx)("tbody",{children:A.map(e=>(0,o.jsx)("tr",{children:e.map(n=>{let S=n.slice(0,7)===b.slice(0,7),c=n===a,k=n===u;return(0,o.jsx)("td",{role:"gridcell","aria-selected":c||void 0,style:{padding:1,textAlign:"center"},children:(0,o.jsx)("button",{type:"button","data-day":n,tabIndex:n===r?0:-1,"aria-label":`${p(d,{weekday:"long",year:"numeric",month:"long",day:"numeric"},l(n))}${k?", today":""}${c?", selected":""}`,...k?{"aria-current":"date"}:{},onClick:()=>w(n),onFocus:()=>n!==r&&f(n),style:{width:"100%",minHeight:36,padding:0,borderRadius:6,border:k?"1px solid var(--graview-accent)":"1px solid transparent",background:c?"var(--graview-accent)":"transparent",color:c?"var(--graview-accent-ink)":S?"var(--graview-ink)":"var(--graview-ink-faint)",fontWeight:c?600:400},children:Number(n.slice(8,10))})},n)})},e[0]))})]})]})}export{H as WhenMonth};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as x}from"./chunk.
|
|
1
|
+
import{b as x}from"./chunk.QAM76AXV.js";import"./chunk.Z27NSSYL.js";import"./chunk.T27QKVKP.js";import"./chunk.WVUJXDXZ.js";import"./chunk.DWM7AR5Y.js";import"./chunk.6KJGRM7A.js";import"./chunk.WALVW3KJ.js";import"./chunk.SNHKYH72.js";import"./chunk.UGQYMN4J.js";import"./chunk.RG5G6YQD.js";import"./chunk.MIE4TJRW.js";import{o as R}from"./chunk.QRQ5WPZI.js";import"./chunk.RD2FSSLV.js";import"./chunk.37RFCHSS.js";import"./chunk.SO6NT5K7.js";import"./chunk.MUSMNKE4.js";import"./chunk.SJQPTDAT.js";import"./chunk.JQ63N4MZ.js";import"./chunk.Z3O2VZAJ.js";import"./chunk.QNP5OR3P.js";import"./chunk.4W57E7AX.js";import{G as A,W as v,fa as g}from"./chunk.A5PSEU3W.js";import"./chunk.SDO3U72B.js";import{ra as y,sd as k,wa as c}from"./chunk.ZEZUKRC6.js";import"./chunk.FQLNBIQ5.js";import{b as u}from"./chunk.AJZBJBMO.js";var f=u(A(),1);var L=u(A(),1),S=(0,L.createContext)(void 0);var i=u(v(),1),W=new WeakMap,m=new WeakMap,P=(e,n)=>`${n.kind}\0${n.id??""}\0${e}`;function b(e,n,a){let p=P(n,a),o=W.get(e);o||W.set(e,o=new Map);let t=o.get(p);return t||(t=Promise.resolve().then(()=>e(n,a)).then(r=>C(r)?r:null,()=>null).then(r=>{let s=m.get(e);return s||m.set(e,s=new Map),s.set(p,r),r}),o.set(p,t)),t}function C(e){if(e===null)return!0;if(typeof e!="object"||e===void 0)return!1;if(e.denied===!0)return!0;let n=e;return typeof n.name=="string"&&n.name.trim()!==""&&typeof n.href=="string"}function h(e){if(/^https?:\/\//i.test(e))try{return new URL(e).href}catch{return}}var N=e=>h(e)??(c(e)?e:void 0),E=e=>h(e)??(e.startsWith("/")&&c(e)?e:void 0),I={kind:"human"},w={color:"var(--graview-ink-muted)"};function M({icon:e}){if(!e)return null;let n=E(e);if(n)return(0,i.jsx)("img",{src:n,alt:"",width:20,height:20,"data-graview-app-icon":"",style:{width:20,height:20,borderRadius:5,objectFit:"cover",flex:"0 0 auto"}});let a=[...e.trim()].slice(0,2).join("");return a?(0,i.jsx)("span",{"aria-hidden":"true","data-graview-app-icon":"",style:{flex:"0 0 auto",lineHeight:"20px"},children:a}):null}function V(e){let n=g(),a=(0,f.useContext)(S)??n?.resolveApp,p=n?.principal??I,o=()=>a?m.get(a)?.get(P(e,p))??"asking":null,[t,r]=(0,f.useState)(o);return(0,f.useEffect)(()=>{let s=o();if(r(s),s!=="asking"||!a)return;let l=!0;return b(a,e,p).then(d=>l&&r(d)),()=>{l=!1}},[a,e,p.kind,p.id]),t}function D({address:e,as:n="chip",nodeId:a,field:p,style:o}){let t=V(e),r={position:"relative",zIndex:k.raised,overflowWrap:"anywhere",minWidth:0,maxWidth:"100%",...o},s;if(t==="asking")s=(0,i.jsx)("span",{"data-graview-app-link":"","data-graview-app-state":"asking","aria-busy":"true",style:{...w,...r},children:"Linked app"});else if(t&&"denied"in t)s=(0,i.jsx)("span",{"data-graview-app-link":"","data-graview-app-state":"denied",style:{...w,fontStyle:"italic",...r},children:"linked app (no access)"});else if(t){let l=N(t.href),d=n==="record"?t.headline?.trim():void 0;s=(0,i.jsxs)(l?"a":"span",{"data-graview-app-link":"","data-graview-app-state":"found",...l?{href:l}:{},...!d&&t.headline?{title:t.headline}:{},style:{display:"inline-flex",alignItems:d?"flex-start":"center",minHeight:24,gap:8,color:"inherit",textUnderlineOffset:3,...r},children:[(0,i.jsx)(M,{icon:t.icon}),(0,i.jsxs)("span",{style:{display:"grid",minWidth:0},children:[(0,i.jsx)("span",{"data-graview-app-name":"",style:{fontWeight:600},children:t.name}),d?(0,i.jsx)("span",{"data-graview-app-headline":"",style:{...w,fontSize:"0.8125em",fontWeight:400},children:d}):null]})]})}else{let l=h(e);s=l?(0,i.jsx)("a",{"data-graview-app-link":"","data-graview-app-state":"plain",href:l,rel:"noopener noreferrer",target:"_blank",style:{color:"var(--graview-accent)",display:"inline-flex",alignItems:"center",minHeight:24,...r},children:e}):(0,i.jsx)("span",{"data-graview-app-link":"","data-graview-app-state":"plain",style:r,children:e})}return a&&p?(0,i.jsx)(H,{nodeId:a,field:p,address:e,drawn:s}):s}function H({nodeId:e,field:n,address:a,drawn:p}){let o=R(e).fields.some(s=>s.field===n),t=g()?.store;if(!o)return p;let r=y(t?t.schema.tryDefinition(String(t.graph.getNode(e)?.kind)):void 0,n).toLowerCase();return(0,i.jsxs)("span",{style:{display:"inline-flex",flexWrap:"wrap",alignItems:"baseline",gap:"4px 12px",maxWidth:"100%",minWidth:0},children:[p,(0,i.jsx)("span",{style:{fontSize:"0.8125rem"},children:(0,i.jsx)(x,{nodeId:e,field:n,value:"Change",stored:a,said:`Change the ${r}`})})]})}var Y=e=>(0,i.jsx)(D,{...e});export{D as AppLink,Y as drawAppLink};
|