ocean-brain 0.13.3 → 0.15.0
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/README.md +66 -2
- package/dist/mcp.js +439 -480
- package/package.json +3 -2
- package/server/client/dist/assets/ArrowClockwise.es-BwtKWcmj.js +1 -0
- package/server/client/dist/assets/{ArrowRight.es-BlNsZQFs.js → ArrowRight.es-E09Lfefr.js} +1 -1
- package/server/client/dist/assets/{AuxiliaryPanelHeader-HAttwVby.js → AuxiliaryPanelHeader-Bys98BJJ.js} +1 -1
- package/server/client/dist/assets/Calendar-BOhJYi8K.js +25 -0
- package/server/client/dist/assets/Callout-CAH1ua9B.js +1 -0
- package/server/client/dist/assets/{CaretUp.es-C8iY5OlB.js → CaretUp.es-DSWjIa-J.js} +1 -1
- package/server/client/dist/assets/{CheckCircle.es-Dqr3WImn.js → CheckCircle.es-Cou6rItm.js} +1 -1
- package/server/client/dist/assets/{Copy.es-fMv0ETir.js → Copy.es-ftEldGIL.js} +1 -1
- package/server/client/dist/assets/{File.es-CHtXXafR.js → File.es-DlKAX1uO.js} +1 -1
- package/server/client/dist/assets/{FileText.es-DPIwDCEe.js → FileText.es-D6JM_MqM.js} +1 -1
- package/server/client/dist/assets/{FlowArrow.es-Dxee98ir.js → FlowArrow.es-BRWXqf9A.js} +1 -1
- package/server/client/dist/assets/{Graph-hVj6vAYJ.js → Graph-BaqGi3M7.js} +1 -1
- package/server/client/dist/assets/{Graph-CdEu8eAn.js → Graph-L-d0cdMk.js} +1 -1
- package/server/client/dist/assets/{Image.es-CjXY1JVf.js → Image.es-Bh2mTNtr.js} +1 -1
- package/server/client/dist/assets/{Info.es-CYxg-Vku.js → Info.es-Bwz4CSvS.js} +1 -1
- package/server/client/dist/assets/Integration-C-rva2X9.js +1 -0
- package/server/client/dist/assets/{LinkSimple.es-B-P-7Iem.js → LinkSimple.es-iJvLf-MB.js} +1 -1
- package/server/client/dist/assets/Note-OO_uh2a7.js +19 -0
- package/server/client/dist/assets/{NotePropertiesPanel-6P7UfRBR.js → NotePropertiesPanel-BFWjxL_w.js} +1 -1
- package/server/client/dist/assets/{Plus.es-Dy6onD-Z.js → Plus.es-Dmb3oijD.js} +1 -1
- package/server/client/dist/assets/{Reminders-DnuALBL6.js → Reminders-CtpFtvu6.js} +1 -1
- package/server/client/dist/assets/{Search-AaD1Mt0d.js → Search-t48pkUg-.js} +2 -2
- package/server/client/dist/assets/{SurfaceCard-D5QxOte_.js → SurfaceCard-zdJ8k1o0.js} +1 -1
- package/server/client/dist/assets/{Tag-B2Qiq1Hv.js → Tag-BL2h3ZaX.js} +1 -1
- package/server/client/dist/assets/TagNotes-BpRTCEBf.js +1 -0
- package/server/client/dist/assets/Trash.es-DFnO8iF5.js +1 -0
- package/server/client/dist/assets/{ViewChip-BVkZAXyx.js → ViewChip-BdPhSEvG.js} +1 -1
- package/server/client/dist/assets/{Views-B5oh8GVM.js → Views-BoO6vgnF.js} +1 -1
- package/server/client/dist/assets/WarningCircle.es-BAvgGuQK.js +1 -0
- package/server/client/dist/assets/{abnfDiagram-N423BO3Z-D44O4T7q.js → abnfDiagram-N423BO3Z-CPgGmCbn.js} +1 -1
- package/server/client/dist/assets/app-OGsLwSqJ.js +151 -0
- package/server/client/dist/assets/app-yYMsgUrz.css +1 -0
- package/server/client/dist/assets/{arc-Cil9fXuW.js → arc-DqTgRpuF.js} +1 -1
- package/server/client/dist/assets/{architectureDiagram-T3A2C74G-Cjq6ayF2.js → architectureDiagram-T3A2C74G-rTYMAQ-J.js} +1 -1
- package/server/client/dist/assets/{blockDiagram-VBNYF7ZC-B2Xm5N0i.js → blockDiagram-VBNYF7ZC-BOluytVz.js} +1 -1
- package/server/client/dist/assets/{c4Diagram-5PPSVZJV-Dp0y-lCR.js → c4Diagram-5PPSVZJV-C8gbPpcb.js} +1 -1
- package/server/client/dist/assets/{calendar-data-wB0ifXdo.js → calendar-data-CwVF7Pz3.js} +1 -1
- package/server/client/dist/assets/channel--aI9fJWX.js +1 -0
- package/server/client/dist/assets/{chunk-2GRJ4B5K-CWaaNkFx.js → chunk-2GRJ4B5K-CRER5Ka0.js} +1 -1
- package/server/client/dist/assets/{chunk-2Q5K7J3B-Ces-xz2S.js → chunk-2Q5K7J3B-hxmJWGu_.js} +1 -1
- package/server/client/dist/assets/{chunk-5RXB4S5H-B-4Chlfc.js → chunk-5RXB4S5H-Bpr5Us8Y.js} +1 -1
- package/server/client/dist/assets/{chunk-5VM5RSS4-C8_HVwuz.js → chunk-5VM5RSS4-CKUz9fAb.js} +1 -1
- package/server/client/dist/assets/{chunk-6Q2QTUOP-xZ8ofRqk.js → chunk-6Q2QTUOP-B8XEOHPN.js} +1 -1
- package/server/client/dist/assets/{chunk-GF5L2VYU-Bpa43a7s.js → chunk-GF5L2VYU-BBUD-HJi.js} +1 -1
- package/server/client/dist/assets/{chunk-JWPE2WC7-DsyTXbuq.js → chunk-JWPE2WC7-Dq6_B8-d.js} +1 -1
- package/server/client/dist/assets/{chunk-KBJHAD2P-BDhjm9-8.js → chunk-KBJHAD2P--2VZEwNJ.js} +1 -1
- package/server/client/dist/assets/{chunk-RYQCIY6F-Cn-jdp6I.js → chunk-RYQCIY6F-CKCwnKiC.js} +1 -1
- package/server/client/dist/assets/{chunk-XXDRQBXY-BKsc_0wh.js → chunk-XXDRQBXY-VDufR1Oi.js} +1 -1
- package/server/client/dist/assets/classDiagram-JCYQIIEL-BsbwE38V.js +1 -0
- package/server/client/dist/assets/classDiagram-v2-OCEON4UE-BsbwE38V.js +1 -0
- package/server/client/dist/assets/{cose-bilkent-JH36ORCC-jmn3Q4zj.js → cose-bilkent-JH36ORCC-D4nqOx8S.js} +1 -1
- package/server/client/dist/assets/{cynefinDiagram-MW4NZA55-BpLstuBJ.js → cynefinDiagram-MW4NZA55-CUuLMs-6.js} +1 -1
- package/server/client/dist/assets/{dagre-VZM6K2ZE-B5ft5Yzm.js → dagre-VZM6K2ZE-CUSkhZgS.js} +1 -1
- package/server/client/dist/assets/{diagram-7IWD3JNH-B_W9IsWZ.js → diagram-7IWD3JNH-D95eVcKx.js} +4 -4
- package/server/client/dist/assets/{diagram-B4RE2ZJO-32chS3GX.js → diagram-B4RE2ZJO-7OH_fb0K.js} +1 -1
- package/server/client/dist/assets/{diagram-LBJQPF4R-Bqupdb3-.js → diagram-LBJQPF4R-D9UwEIMd.js} +1 -1
- package/server/client/dist/assets/{diagram-Q27KOJAE-BD8jKBsv.js → diagram-Q27KOJAE-Dx7WFDuX.js} +1 -1
- package/server/client/dist/assets/{diagram-UB23O5K3-C40jAU8D.js → diagram-UB23O5K3-D2BYwAKT.js} +1 -1
- package/server/client/dist/assets/{ebnfDiagram-BXEA7PRR-BQfW9mFA.js → ebnfDiagram-BXEA7PRR-DbeA-fk4.js} +1 -1
- package/server/client/dist/assets/{erDiagram-JOGREHBK-ILZnLzz2.js → erDiagram-JOGREHBK-jWW-ICGO.js} +1 -1
- package/server/client/dist/assets/{flowDiagram-UKHOOZJN-CDmwr2dI.js → flowDiagram-UKHOOZJN-68iZdxxw.js} +1 -1
- package/server/client/dist/assets/{ganttDiagram-PKOTCBZU-DBcrUc49.js → ganttDiagram-PKOTCBZU-CxwY3VXg.js} +1 -1
- package/server/client/dist/assets/{gitGraphDiagram-DS77QQ5N-_xO6__FK.js → gitGraphDiagram-DS77QQ5N-Ci6o5MfZ.js} +1 -1
- package/server/client/dist/assets/{image.api-ChvlfuZg.js → image.api-CHuhmq_G.js} +1 -1
- package/server/client/dist/assets/index-CuCzOHJ6.js +1 -0
- package/server/client/dist/assets/{infoDiagram-6WML65LV-CuIIcu-L.js → infoDiagram-6WML65LV-DY7aMdjV.js} +1 -1
- package/server/client/dist/assets/integrations-B5SIEnG_.js +1 -0
- package/server/client/dist/assets/{ishikawaDiagram-WSZJBQD7-BVtRGTOj.js → ishikawaDiagram-WSZJBQD7-Bh5qKh1d.js} +1 -1
- package/server/client/dist/assets/{journeyDiagram-NVQOT4AX-D5-Nzb2N.js → journeyDiagram-NVQOT4AX-B_svXTTT.js} +1 -1
- package/server/client/dist/assets/{kanban-definition-27J2QSJJ-DmOhgC8H.js → kanban-definition-27J2QSJJ-CaJslHGg.js} +1 -1
- package/server/client/dist/assets/manage-image-Kd-7IGfB.js +1 -0
- package/server/client/dist/assets/{manage-image-detail-Dw3tAW3h.js → manage-image-detail-HU0QLP-t.js} +1 -1
- package/server/client/dist/assets/mcp-BQ418pyx.js +5 -0
- package/server/client/dist/assets/{mcp-admin-adapter-D0R8p9az.js → mcp-admin-adapter-CUakQ_Xm.js} +1 -1
- package/server/client/dist/assets/{mermaid.core-C2tL9tq7.js → mermaid.core-BfUQM5vF.js} +4 -4
- package/server/client/dist/assets/{mindmap-definition-FAOFIHXS-DuvsPqrh.js → mindmap-definition-FAOFIHXS-DGbkJda2.js} +1 -1
- package/server/client/dist/assets/{note-core-YhYEmI_R.js → note-core-DRBsBf9H.js} +9 -9
- package/server/client/dist/assets/{note-runtime-B3ats-dC.js → note-runtime-ztZvXRIu.js} +16 -16
- package/server/client/dist/assets/{note-ui-BtzPk8gA.js → note-ui-CRcP5BjO.js} +1 -1
- package/server/client/dist/assets/{pegDiagram-VL7TDLO6-D64crEZV.js → pegDiagram-VL7TDLO6-Bip6zQct.js} +1 -1
- package/server/client/dist/assets/{pieDiagram-7S7Q4E2Y--kl7vopC.js → pieDiagram-7S7Q4E2Y-CjfjGY8Y.js} +1 -1
- package/server/client/dist/assets/{placeholder-B5uPsE7-.js → placeholder-D7JKnpuh.js} +1 -1
- package/server/client/dist/assets/{properties-B7Fv95qY.js → properties-CtagYHMr.js} +1 -1
- package/server/client/dist/assets/{quadrantDiagram-CIZ2JOQS-DuvJ4M2y.js → quadrantDiagram-CIZ2JOQS-B6F1yUT-.js} +1 -1
- package/server/client/dist/assets/{railroadDiagram-AXF67PYL-BMKmCOY7.js → railroadDiagram-AXF67PYL-D-0fLe0F.js} +1 -1
- package/server/client/dist/assets/{requirementDiagram-LRYGKXZP-DY1eJcy0.js → requirementDiagram-LRYGKXZP-tm4mnCyJ.js} +1 -1
- package/server/client/dist/assets/route-preload.js +2 -2
- package/server/client/dist/assets/{sankeyDiagram-W5VNT64P-C3Ka4GKM.js → sankeyDiagram-W5VNT64P-DSBWFurb.js} +1 -1
- package/server/client/dist/assets/search-B5tCkhwj.js +1 -0
- package/server/client/dist/assets/{search-admin-adapter-Daf7e2YQ.js → search-admin-adapter-Be9xSY88.js} +1 -1
- package/server/client/dist/assets/{sequenceDiagram-SI44F4Z6-Bhpwtk2s.js → sequenceDiagram-SI44F4Z6-KrwjjJIV.js} +1 -1
- package/server/client/dist/assets/{sizeCapture-X5ZJPWSS-BFta71TW.js → sizeCapture-X5ZJPWSS-DL2cn_Q6.js} +1 -1
- package/server/client/dist/assets/{stateDiagram-OKZ733FA-D6GCn1io.js → stateDiagram-OKZ733FA-CKuNDH85.js} +1 -1
- package/server/client/dist/assets/{stateDiagram-v2-UEYNNEHI-g4yinGDn.js → stateDiagram-v2-UEYNNEHI-BFaj2wbM.js} +1 -1
- package/server/client/dist/assets/{swimlanes-SLNWSIFB-DLFvOjUl.js → swimlanes-SLNWSIFB-5S17nqhK.js} +2 -2
- package/server/client/dist/assets/swimlanesDiagram-ULZ7WXOC-dexsHJq2.js +8 -0
- package/server/client/dist/assets/{tag.api-DEUROVKQ.js → tag.api-DGfi8hWL.js} +1 -1
- package/server/client/dist/assets/time-Kh6oav5R.js +361 -0
- package/server/client/dist/assets/{timeline-definition-Z64GVDOM-DTSIekSM.js → timeline-definition-Z64GVDOM-CU1hp_7d.js} +3 -3
- package/server/client/dist/assets/{trash-BHida7BG.js → trash-Di2BWyUO.js} +1 -1
- package/server/client/dist/assets/url-Bp8sXMb4.js +1 -0
- package/server/client/dist/assets/{useNoteMutate-BjvZUmtX.js → useNoteMutate-BQj6jHhV.js} +3 -3
- package/server/client/dist/assets/{useReminderMutate-C5n-5LM-.js → useReminderMutate-jubqwSD9.js} +1 -1
- package/server/client/dist/assets/{vennDiagram-T6HMQDX7-CMNqSI2X.js → vennDiagram-T6HMQDX7-MoiVLnil.js} +1 -1
- package/server/client/dist/assets/{wardleyDiagram-T6FBY63Y-DV-JOYqB.js → wardleyDiagram-T6FBY63Y-cZkfdI6C.js} +1 -1
- package/server/client/dist/assets/{xychartDiagram-ELKLHX3M-BUIniF4m.js → xychartDiagram-ELKLHX3M-B63hxD-r.js} +1 -1
- package/server/client/dist/index.html +6 -6
- package/server/dist/app.js +11 -1
- package/server/dist/features/app-gateway/access.js +73 -0
- package/server/dist/features/app-gateway/database.js +20 -0
- package/server/dist/features/app-gateway/gateway.js +208 -0
- package/server/dist/features/integration/access-events.js +17 -0
- package/server/dist/features/integration/auth.js +21 -0
- package/server/dist/features/integration/manifest.js +116 -0
- package/server/dist/features/integration/note-sync.js +156 -0
- package/server/dist/features/integration/schema.js +54 -0
- package/server/dist/features/integration/service.js +246 -0
- package/server/dist/features/integration/status-report.js +22 -0
- package/server/dist/features/mcp-admin/service.js +19 -83
- package/server/dist/features/note/graphql/note.field.resolver.js +1 -1
- package/server/dist/features/note/graphql/note.mutation.resolver.js +20 -12
- package/server/dist/features/note/graphql/note.query.resolver.js +10 -1
- package/server/dist/features/note/graphql/note.type-defs.js +13 -1
- package/server/dist/features/note/http/authoring.js +493 -0
- package/server/dist/features/note/http/mcp.js +15 -463
- package/server/dist/features/note/services/authoring.js +17 -1
- package/server/dist/features/note/services/change-events.js +26 -0
- package/server/dist/features/note/services/markdown-intent-write.js +1 -0
- package/server/dist/features/note/services/markdown-read.js +85 -0
- package/server/dist/features/note/services/properties.js +36 -30
- package/server/dist/features/note/services/search.js +17 -0
- package/server/dist/features/search/graphql/resolver.js +10 -1
- package/server/dist/features/search/graphql/type-defs.js +3 -0
- package/server/dist/features/search/search-manager.js +4 -7
- package/server/dist/features/tag/graphql/tag.query.resolver.js +10 -0
- package/server/dist/features/tag/graphql/tag.type-defs.js +1 -0
- package/server/dist/features/view/graphql/mcp.query.resolver.js +22 -0
- package/server/dist/features/view/graphql/view.query.resolver.js +2 -0
- package/server/dist/features/view/graphql/view.type-defs.js +27 -0
- package/server/dist/features/view/services/mcp-read.js +142 -0
- package/server/dist/features/view/services/workspace.js +12 -4
- package/server/dist/modules/auth-guard.js +24 -1
- package/server/dist/modules/integration-token.js +27 -0
- package/server/dist/modules/mcp-auth.js +37 -23
- package/server/dist/modules/mcp-token.js +6 -25
- package/server/dist/modules/server-events.js +3 -0
- package/server/dist/routes/api.js +2 -0
- package/server/dist/routes/apps.js +163 -0
- package/server/dist/routes/graphql.js +2 -1
- package/server/dist/routes/index.js +2 -0
- package/server/dist/routes/integrations.js +137 -0
- package/server/dist/routes/mcp.js +29 -9
- package/server/prisma/migrations/20260917120000_0020_plugin_installations/migration.sql +39 -0
- package/server/prisma/migrations/20260917150000_0021_integration_connections/migration.sql +29 -0
- package/server/prisma/migrations/20260919090000_0022_integration_proxy_url/migration.sql +2 -0
- package/server/prisma/schema.prisma +36 -10
- package/server/client/dist/assets/Calendar-DwQBllfw.js +0 -25
- package/server/client/dist/assets/Callout-CcYyvHQP.js +0 -1
- package/server/client/dist/assets/Note-CpzLtGVM.js +0 -19
- package/server/client/dist/assets/TagNotes-B27G1ZVg.js +0 -1
- package/server/client/dist/assets/Trash.es-XEcWG_aq.js +0 -1
- package/server/client/dist/assets/app-EwvT7bMw.css +0 -1
- package/server/client/dist/assets/app-NgiBDISG.js +0 -151
- package/server/client/dist/assets/channel-DZFalh-h.js +0 -1
- package/server/client/dist/assets/classDiagram-JCYQIIEL-CkEhFvVV.js +0 -1
- package/server/client/dist/assets/classDiagram-v2-OCEON4UE-CkEhFvVV.js +0 -1
- package/server/client/dist/assets/index-CIEap4bu.js +0 -1
- package/server/client/dist/assets/manage-image-CSJ3Flgc.js +0 -1
- package/server/client/dist/assets/mcp-D8footel.js +0 -5
- package/server/client/dist/assets/search-ddYl3qH-.js +0 -1
- package/server/client/dist/assets/swimlanesDiagram-ULZ7WXOC-Ci4mcvmo.js +0 -8
- package/server/client/dist/assets/time-PxWila4-.js +0 -361
- package/server/client/dist/assets/url-DKUMNVCI.js +0 -1
- package/server/dist/features/search/note-change.js +0 -16
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/mermaid.core-BfUQM5vF.js","assets/preload-helper-BXl3LOEh.js","assets/floating-ui.react-dom-BWTnA00G.js","assets/transform-BUB79_za.js","assets/katex-DywYRkvg.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{r as i,j as a}from"./floating-ui.react-dom-BWTnA00G.js";import{av as Wn,C as Ot,T as S,l as rt,t as Kn,q as D,M as O,B as M,aw as Yn,ax as Qn,c as U,N as Bt,K as Ft,V as qn,e as _e,u as st,ay as Gn,az as Jn,aA as Xn,J as er,s as tr,aB as nr,a4 as Ht,Y as It,aC as Ge,aD as rr,Z as sr,as as ar,at as or,aE as ir,Q as at,P as ot,aF as it,k as cr,o as ce,F as lr}from"./time-Kh6oav5R.js";import{M as Pe,h as $t,m as dr,a as Ze,b as ur,d as G,s as fr,l as Ut,o as pr,p as zt,k as Vt,q as mr,r as mt,e as hr}from"./useNoteMutate-BQj6jHhV.js";import{m as gr}from"./WarningCircle.es-BAvgGuQK.js";import{J as Zt,g as xr,A as Wt,S as yr,i as br,U as ht,F as vr,N as wr}from"./NotePropertiesPanel-BFWjxL_w.js";import{c as Cr}from"./Info.es-Bwz4CSvS.js";import{N as Oe,T as Nr,a as Sr}from"./url-Bp8sXMb4.js";import{C as gt}from"./Callout-CAH1ua9B.js";import{S as Er}from"./SurfaceCard-zdJ8k1o0.js";import{b as Ar,c as Rr,u as kr,R as jr}from"./useReminderMutate-jubqwSD9.js";import{n as Tr}from"./Plus.es-Dmb3oijD.js";import{h as ct,m as Mr,L as Kt,Z as Yt,M as Dr,K as Lr,a as _r}from"./note-ui-CRcP5BjO.js";import{u as Pr}from"./image.api-CHuhmq_G.js";import{L as Or,t as xt,q as Br,B as Ce,G as Fr,y as yt,z as Hr}from"./note-core-DRBsBf9H.js";import{s as Qt}from"./FlowArrow.es-BRWXqf9A.js";import{_ as Je}from"./preload-helper-BXl3LOEh.js";import{s as Ir}from"./Copy.es-ftEldGIL.js";import{A as $r}from"./AuxiliaryPanelHeader-Bys98BJJ.js";import{f as Ur,c as zr}from"./tag.api-DGfi8hWL.js";import{cn as qt,a as Vr,P as Zr,D as je,b as We,co as bt}from"./note-runtime-ztZvXRIu.js";import{s as Wr}from"./File.es-DlKAX1uO.js";import{p as Kr}from"./LinkSimple.es-iJvLf-MB.js";function Yr(e,n){if(e===void 0)return{shouldBlockFn:()=>!0,withResolver:!1};if("shouldBlockFn"in e)return e;if(typeof e=="function")return{shouldBlockFn:async()=>await e(),enableBeforeUnload:!0,withResolver:!1};const t=!!(e.condition??!0),s=e.blockerFn;return{shouldBlockFn:async()=>t&&s!==void 0?await s():t,enableBeforeUnload:t,withResolver:s===void 0}}function Qr(e,n){const{shouldBlockFn:t,enableBeforeUnload:s=!0,disabled:r=!1,withResolver:o=!1}=Yr(e),c=Wn(),{history:l}=c,[u,d]=i.useState({status:"idle",current:void 0,next:void 0,action:void 0,proceed:void 0,reset:void 0});return i.useEffect(()=>{const m=async f=>{function g(k){const w=c.parseLocation(k),x=c.getMatchedRoutes(w.pathname);return x.foundRoute===void 0?{routeId:"__notFound__",fullPath:w.pathname,pathname:w.pathname,params:x.routeParams,search:c.options.parseSearch(k.search)}:{routeId:x.foundRoute.id,fullPath:x.foundRoute.fullPath,pathname:w.pathname,params:x.routeParams,search:c.options.parseSearch(k.search)}}const p=g(f.currentLocation),h=g(f.nextLocation);if(p.routeId==="__notFound__"&&h.routeId!=="__notFound__")return!1;const v=await t({action:f.action,current:p,next:h});if(!o)return v;if(!v)return!1;const A=await new Promise(k=>{d({status:"blocked",current:p,next:h,action:f.action,proceed:()=>k(!1),reset:()=>k(!0)})});return d({status:"idle",current:void 0,next:void 0,action:void 0,proceed:void 0,reset:void 0}),A};return r?void 0:l.block({blockerFn:m,enableBeforeUnload:s})},[t,s,r,o,l,c]),u}const qr=new Map([["bold",i.createElement(i.Fragment,null,i.createElement("path",{d:"M212,40a12,12,0,0,1-12,12H170.71A20,20,0,0,0,151,68.42L142.38,116H184a12,12,0,0,1,0,24H138l-9.44,51.87A44,44,0,0,1,85.29,228H56a12,12,0,0,1,0-24H85.29A20,20,0,0,0,105,187.58L113.62,140H72a12,12,0,0,1,0-24h46l9.44-51.87A44,44,0,0,1,170.71,28H200A12,12,0,0,1,212,40Z"}))],["duotone",i.createElement(i.Fragment,null,i.createElement("path",{d:"M200,40V200a16,16,0,0,1-16,16H56V56A16,16,0,0,1,72,40Z",opacity:"0.2"}),i.createElement("path",{d:"M208,40a8,8,0,0,1-8,8H170.71a24,24,0,0,0-23.62,19.71L137.59,120H184a8,8,0,0,1,0,16H134.68l-10,55.16A40,40,0,0,1,85.29,224H56a8,8,0,0,1,0-16H85.29a24,24,0,0,0,23.62-19.71l9.5-52.29H72a8,8,0,0,1,0-16h49.32l10-55.16A40,40,0,0,1,170.71,32H200A8,8,0,0,1,208,40Z"}))],["fill",i.createElement(i.Fragment,null,i.createElement("path",{d:"M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM176,72H159.92a16,16,0,0,0-15.73,13l-6.55,35H168a8,8,0,0,1,0,16H134.64l-7.11,37.9A32,32,0,0,1,96.08,200H80a8,8,0,0,1,0-16H96.08A16,16,0,0,0,111.81,171L118.36,136H88a8,8,0,0,1,0-16h33.36l7.11-37.9A32,32,0,0,1,159.92,56H176a8,8,0,0,1,0,16Z"}))],["light",i.createElement(i.Fragment,null,i.createElement("path",{d:"M206,40a6,6,0,0,1-6,6H170.71a26,26,0,0,0-25.58,21.35L135.19,122H184a6,6,0,0,1,0,12H133l-10.33,56.8A38,38,0,0,1,85.29,222H56a6,6,0,0,1,0-12H85.29a26,26,0,0,0,25.58-21.35L120.81,134H72a6,6,0,0,1,0-12h51l10.33-56.8A38,38,0,0,1,170.71,34H200A6,6,0,0,1,206,40Z"}))],["regular",i.createElement(i.Fragment,null,i.createElement("path",{d:"M208,40a8,8,0,0,1-8,8H170.71a24,24,0,0,0-23.62,19.71L137.59,120H184a8,8,0,0,1,0,16H134.68l-10,55.16A40,40,0,0,1,85.29,224H56a8,8,0,0,1,0-16H85.29a24,24,0,0,0,23.62-19.71l9.5-52.29H72a8,8,0,0,1,0-16h49.32l10-55.16A40,40,0,0,1,170.71,32H200A8,8,0,0,1,208,40Z"}))],["thin",i.createElement(i.Fragment,null,i.createElement("path",{d:"M204,40a4,4,0,0,1-4,4H170.71a28,28,0,0,0-27.55,23l-10.37,57H184a4,4,0,0,1,0,8H131.34l-10.63,58.44A36,36,0,0,1,85.29,220H56a4,4,0,0,1,0-8H85.29a28,28,0,0,0,27.55-23l10.37-57H72a4,4,0,0,1,0-8h52.66l10.63-58.44A36,36,0,0,1,170.71,36H200A4,4,0,0,1,204,40Z"}))]]),Gr=new Map([["bold",i.createElement(i.Fragment,null,i.createElement("path",{d:"M230.15,70.54,185.46,25.86a20,20,0,0,0-28.28,0L33.86,149.17A19.86,19.86,0,0,0,28,163.31V208a20,20,0,0,0,20,20H216a12,12,0,0,0,0-24H125L230.15,98.83A20,20,0,0,0,230.15,70.54ZM136,81l11,11L76,163,65,152ZM52,204V173l15.52,15.51h0L83,204Zm52-13L93,180l71-71,11,11Zm88-88L153,64l18.34-18.34,39,39Z"}))],["duotone",i.createElement(i.Fragment,null,i.createElement("path",{d:"M221.66,90.34,192,120,136,64l29.66-29.66a8,8,0,0,1,11.31,0L221.66,79A8,8,0,0,1,221.66,90.34Z",opacity:"0.2"}),i.createElement("path",{d:"M227.32,73.37,182.63,28.69a16,16,0,0,0-22.63,0L36.69,152A15.86,15.86,0,0,0,32,163.31V208a16,16,0,0,0,16,16H216a8,8,0,0,0,0-16H115.32l112-112A16,16,0,0,0,227.32,73.37ZM79.32,188,164,103.31,180.69,120,96,204.69ZM68,176.69,51.31,160,136,75.31,152.69,92Zm-20,2.62L76.69,208H48Zm144-70.62L147.32,64l24-24L216,84.69Z"}))],["fill",i.createElement(i.Fragment,null,i.createElement("path",{d:"M227.32,73.37,182.63,28.69a16,16,0,0,0-22.63,0L36.69,152A15.86,15.86,0,0,0,32,163.31V208a16,16,0,0,0,16,16H216a8,8,0,0,0,0-16H115.32l112-112A16,16,0,0,0,227.32,73.37ZM79.32,188l90.34-90.34,16.69,16.68L96,204.69Zm79-101.66h0L68,176.69,51.31,160l90.35-90.34ZM48,179.31,76.69,208H48Z"}))],["light",i.createElement(i.Fragment,null,i.createElement("path",{d:"M225.91,74.79,181.22,30.1a14,14,0,0,0-19.8,0L38.1,153.41a13.94,13.94,0,0,0-4.1,9.9V208a14,14,0,0,0,14,14H216a6,6,0,0,0,0-12H110.49L225.91,94.59A14,14,0,0,0,225.91,74.79ZM76.49,188,164,100.48,183.52,120,96,207.51ZM68,179.52,48.49,160,136,72.49,155.52,92ZM46,208V174.48L81.52,210H48A2,2,0,0,1,46,208ZM217.42,86.1,192,111.52,144.49,64,169.9,38.59a2,2,0,0,1,2.83,0l44.69,44.68A2,2,0,0,1,217.42,86.1Z"}))],["regular",i.createElement(i.Fragment,null,i.createElement("path",{d:"M227.32,73.37,182.63,28.69a16,16,0,0,0-22.63,0L36.69,152A15.86,15.86,0,0,0,32,163.31V208a16,16,0,0,0,16,16H216a8,8,0,0,0,0-16H115.32l112-112A16,16,0,0,0,227.32,73.37ZM136,75.31,152.69,92,68,176.69,51.31,160ZM48,208V179.31L76.69,208Zm48-3.31L79.32,188,164,103.31,180.69,120Zm96-96L147.32,64l24-24L216,84.69Z"}))],["thin",i.createElement(i.Fragment,null,i.createElement("path",{d:"M224.49,76.2,179.8,31.51a12,12,0,0,0-17,0L39.51,154.83A12,12,0,0,0,36,163.31V208a12,12,0,0,0,12,12H216a4,4,0,0,0,0-8H105.66L224.49,93.17A12,12,0,0,0,224.49,76.2ZM73.66,188,164,97.66,186.35,120,96,210.34ZM68,182.34,45.66,160,136,69.66,158.35,92ZM44,208V169.66l21.17,21.17h0L86.34,212H48A4,4,0,0,1,44,208ZM218.83,87.51,192,114.34,141.66,64l26.83-26.83a4,4,0,0,1,5.66,0l44.68,44.69A4,4,0,0,1,218.83,87.51Z"}))]]),Gt=i.forwardRef((e,n)=>i.createElement(Ot,{ref:n,...e,weights:qr}));Gt.displayName="FunctionIcon";const Jt=Gt,Xt=i.forwardRef((e,n)=>i.createElement(Ot,{ref:n,...e,weights:Gr}));Xt.displayName="PencilLineIcon";const Jr=Xt;function Xr({title:e,description:n,selected:t=!1,onClick:s,children:r}){return a.jsxs("button",{type:"button","aria-pressed":t,className:`focus-ring-soft flex w-full items-start justify-between gap-3 p-3 text-left transition-colors sm:p-4 ${t?"surface-floating bg-elevated":"rounded-[14px] border border-border-subtle bg-transparent hover:border-border-secondary hover:bg-hover-subtle"}`,onClick:s,children:[a.jsxs("div",{className:"min-w-0",children:[a.jsx(S,{as:"div",variant:"body",weight:"semibold",tone:t?"default":"secondary",children:e}),a.jsx(S,{as:"div",variant:"meta",weight:"medium",tone:t?"secondary":"tertiary",className:"mt-1",children:n})]}),r?a.jsx("div",{className:"shrink-0",children:r}):null]})}const es=e=>{const{data:n}=rt({queryKey:D.notes.backReferences(e.noteId),async queryFn(){const t=await Kn(e.noteId);if(t.type==="error")throw t;return t.backReferences}});return e.render(n)};function ts({noteId:e,searchParams:n,render:t}){const{data:s}=rt({queryKey:e?D.reminders.note(e,n):D.reminders.upcoming(n),queryFn:async()=>{if(e){const o=await Ar(e,n);if(o.type==="error")throw o;return o.noteReminders}const r=await Rr(n);if(r.type==="error")throw r;return r.upcomingReminders}});return a.jsx(a.Fragment,{children:t(s)})}const ns=[{value:"narrow",label:"Narrow",description:"Optimized for reading long-form content"},{value:"wide",label:"Wide",description:"Balanced width suitable for most content"},{value:"full",label:"Full Width",description:"Maximize screen space utilization"}];function rs({isOpen:e,onClose:n,onSave:t,currentLayout:s="wide"}){const[r,o]=i.useState(s);i.useEffect(()=>{e&&o(s)},[e,s]);const c=()=>{t(r),n()};return a.jsxs(O,{isOpen:e,onClose:n,variant:"compact",children:[a.jsx(O.Header,{title:"Layout Settings",onClose:n}),a.jsx(O.Body,{children:a.jsx("div",{className:"flex flex-col gap-3 sm:gap-4",children:a.jsxs("div",{className:"flex flex-col gap-2",children:[a.jsx(S,{as:"div",variant:"body",weight:"semibold",tone:"secondary",children:"Note layout"}),a.jsx("div",{className:"flex flex-col gap-2",children:ns.map(l=>a.jsx(Xr,{title:l.label,description:l.description,selected:r===l.value,onClick:()=>o(l.value)},l.value))})]})})}),a.jsx(O.Footer,{children:a.jsxs(Pe,{children:[a.jsx(M,{variant:"ghost",size:"sm",onClick:n,children:"Cancel"}),a.jsx(M,{variant:"primary",size:"sm",onClick:c,children:"Apply"})]})})]})}const Ne=e=>{const n=/^\d+$/.test(e)?Number(e):Date.parse(e);return Number.isFinite(n)?n:null},De=(e,n)=>{const t=Ne(e),s=Ne(n);return t===null||s===null?e===n?0:null:t===s?0:t<s?-1:1},ss=2200;function as({status:e,savedAt:n,savedVersion:t,confirmationRevision:s}){const[r,o]=i.useState(()=>Date.now()),[c,l]=i.useState(!1);i.useEffect(()=>{if(e!=="saved")return;const p=window.setTimeout(()=>o(Date.now()),Yn(Ne(t),r));return()=>window.clearTimeout(p)},[r,t,e]),i.useEffect(()=>{if(s===0)return;l(!0);const p=window.setTimeout(()=>l(!1),ss);return()=>window.clearTimeout(p)},[s]);const u=e==="saved"&&c,d=e==="pending"?"Saving...":e==="saving"?"Saving now...":e==="error"?"Save failed. Try again.":e==="conflict"?"Save paused: changed elsewhere":`Saved ${Qn(Ne(t),r)}`,m=U("inline-flex items-center gap-2 transition-colors",e==="saved"&&!u&&"text-fg-secondary",u&&"text-accent-success",(e==="pending"||e==="saving")&&"text-fg-default",(e==="error"||e==="conflict")&&"text-fg-error"),f=U("save-progress-ring flex h-4 w-4 shrink-0 items-center justify-center rounded-full",(e==="pending"||e==="saving")&&"save-progress-ring-active",e==="saved"&&u&&"save-progress-ring-complete",(e==="error"||e==="conflict")&&"save-progress-ring-error"),g=e==="error"||e==="conflict"?a.jsx(gr,{className:"h-3.5 w-3.5",weight:"fill"}):a.jsx("span",{className:f,"aria-hidden":!0,children:a.jsx("span",{className:"h-2 w-2 rounded-full bg-elevated"})});return a.jsxs(S,{as:"span",variant:"label",weight:"medium",className:m,role:"status","aria-live":"polite",title:n,children:[g,d]})}function os({title:e,titleRef:n,isPinned:t,createdAt:s,saveStatus:r,savedAt:o,savedVersion:c,saveConfirmationRevision:l,onTitleChange:u,onCopyMarkdown:d,onDownloadDocument:m,onTogglePinned:f,onChangeLayout:g,onCloneNote:p,onRestoreVersion:h,onDelete:v,onSave:C}){return a.jsx("div",{className:"surface-floating sticky top-20 z-[1001] mb-7 px-5 pt-4 pb-3.5",children:a.jsxs("div",{className:"flex flex-col gap-3.5",children:[a.jsxs("div",{className:"flex items-start justify-between gap-5",children:[a.jsxs("div",{className:"min-w-0 flex-1 pt-0.5",children:[a.jsx(S,{as:"div",variant:"micro",weight:"semibold",tracking:"widest",transform:"uppercase",tone:"tertiary",className:"mb-1.5",children:"Thought in progress"}),a.jsx("input",{ref:n,"aria-label":"Note title",placeholder:"Title",className:"text-heading sm:text-display w-full bg-transparent font-semibold leading-[1.25] tracking-[-0.02em] outline-none",type:"text",value:e,onChange:A=>u(A.target.value)})]}),a.jsxs("div",{className:"flex shrink-0 items-center gap-2",children:[a.jsx(Bt,{button:a.jsx($t,{label:"Note actions",size:"lg"}),items:[{name:"Copy Markdown",onClick:d},{name:"Download document",onClick:m},{type:"separator",key:"export-separator"},{name:t?"Unpin":"Pin",onClick:f},{name:"Change layout",onClick:g},{type:"separator"},{name:"Clone this note",onClick:p},{name:"Restore previous version",onClick:h},{type:"separator"},{name:"Delete",onClick:v}]}),a.jsx(M,{size:"sm",variant:"subtle",isLoading:r==="saving",disabled:r==="conflict",onClick:C,children:"Save"})]})]}),a.jsxs("div",{className:"flex flex-wrap items-center gap-x-2.5 gap-y-1.5 border-t border-border-subtle/80 pt-3",children:[t&&a.jsxs(S,{as:"span",variant:"label",weight:"medium",tone:"secondary",className:"inline-flex items-center gap-1.5",children:[a.jsx(dr,{className:"h-3 w-3",weight:"fill"}),"Pinned"]}),t&&a.jsx("span",{className:"h-1 w-1 rounded-full bg-border-secondary"}),a.jsx(as,{status:r,savedAt:o,savedVersion:c,confirmationRevision:l}),a.jsx("span",{className:"h-1 w-1 rounded-full bg-border-secondary"}),a.jsxs(S,{as:"span",variant:"micro",weight:"medium",tone:"tertiary",children:["Created ",s]})]})]})})}const is="/assets/images/",cs=120,ls=100,en=/^(?:con|prn|aux|nul|com[1-9\u00b9\u00b2\u00b3]|lpt[1-9\u00b9\u00b2\u00b3])(?:\.|$)/i,tn=e=>{const n=e.codePointAt(0)??0;return n<=31||n>=127&&n<=159},nn=(e,n)=>{const t=new TextEncoder;let s=0,r="";for(const o of e){const c=t.encode(o).byteLength;if(s+c>n)break;r+=o,s+=c}return r},Xe=e=>e.replace(/^[.\s-]+|[.\s-]+$/g,""),ds=e=>{let n=Array.from(e.normalize("NFC").trim().toLowerCase(),t=>tn(t)||/[\\/:*?"<>|\s]/.test(t)?"-":t).join("").replace(/-+/g,"-").replace(/^[.-]+|[.-]+$/g,"");return en.test(n)&&(n=`note-${n}`),n=Xe(nn(n,cs)),n||"untitled-note"},Te=e=>JSON.stringify(e),Me=e=>{const n=e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/--/g,"--");return Array.from(n,t=>tn(t)?`&#${t.codePointAt(0)};`:t).join("")},Le=e=>{if(!e)return;const n=Number(e);if(!Number.isFinite(n))return e;const t=new Date(n);return Number.isNaN(t.getTime())?e:t.toISOString()},lt=()=>typeof window>"u"||!window.location?.origin?"http://localhost":window.location.origin,Be=(e,n=lt())=>{try{const t=new URL(e,n);return t.origin===n&&t.pathname.startsWith(is)}catch{return!1}},rn=(e,n=lt())=>{const t=new URL(e,n);return`${t.pathname}${t.search}`},us=e=>e.headers.get("content-type")?.split(";")[0]?.trim().toLowerCase()??"",fs=(e,n)=>{let t=e.normalize("NFC").trim().replace(/[^\p{L}\p{M}\p{N}._-]+/gu,"-").replace(/-+/g,"-");return t=Xe(t),en.test(t)&&(t=`image-${t}`),Xe(nn(t,ls))||n},ps=e=>{const n=e.lastIndexOf(".");return n<=0||n===e.length-1?{baseName:e,extension:""}:{baseName:e.slice(0,n),extension:e.slice(n)}},ms=e=>{try{return decodeURIComponent(e)}catch{return e}},hs=(e,n,t,s)=>{const o=new URL(e,lt()).pathname.split("/").filter(Boolean),c=ms(o[o.length-1]??""),l=`image-${n+1}`,{baseName:u}=ps(c||l),d=fs(u,l);let m=`${d}.${t}`,f=2;for(;s.has(m.normalize("NFC").toLowerCase());)m=`${d}-${f}.${t}`,f+=1;return s.add(m.normalize("NFC").toLowerCase()),`assets/${m}`},sn=e=>e.replace(/\\([!"#$%&'()*+,\-./:;<=>?@[\]\\^_`{|}~])/g,"$1"),an=async(e,n,t,s,r)=>{const o=s.get(n);if(o)return o;const c=await t(n,{credentials:"same-origin"});if(!c.ok)throw new Error(`Failed to fetch image asset: ${n}`);const l=xr(us(c));if(!l)throw new Error(`Image asset did not return image content: ${n}`);const u=hs(n,s.size,l,r);return e.file(u,new Uint8Array(await c.arrayBuffer())),s.set(n,u),u},gs=(e,n)=>{let t=null;for(let s=n;s<e.length;s+=1){const r=e[s];if(t){r===t&&(t=null);continue}if(r==='"'||r==="'"){t=r;continue}if(r===">")return s}return-1},xs=(e,n)=>{let t=n;for(;t<e.length;){const s=e.toLowerCase().indexOf("<img",t);if(s===-1)return-1;const r=e[s+4],o=s===0?-1:e.lastIndexOf("<",s-1),c=s===0?-1:e.lastIndexOf(">",s-1);if(o<=c&&(!r||/[\s/>]/.test(r)))return s;t=s+4}return-1},ys=(e,n,t,s)=>{let r=n;for(;r<t;){for(;r<t&&/[\s/]/.test(e[r]);)r+=1;const o=r;for(;r<t&&/[^\s=/>]/.test(e[r]);)r+=1;const c=e.slice(o,r).toLowerCase();for(;r<t&&/\s/.test(e[r]);)r+=1;if(e[r]!=="=")continue;for(r+=1;r<t&&/\s/.test(e[r]);)r+=1;const l=e[r];if(l==='"'||l==="'"){const d=r+1,m=e.indexOf(l,d);if(m===-1||m>t)return;if(r=m+1,c===s)return{end:m,start:d,value:e.slice(d,m)};continue}const u=r;for(;r<t&&/[^\s>]/.test(e[r]);)r+=1;if(c===s)return{end:r,start:u,value:e.slice(u,r)}}},on=e=>{const n=[];let t=0;for(;t<e.length;){const s=xs(e,t);if(s===-1)break;const r=gs(e,s+4);if(r===-1)break;const o=ys(e,s+4,r,"src");o&&n.push({end:r+1,source:o,start:s}),t=r+1}return n},cn=(e,n)=>{let t=e;for(const s of[...n].sort((r,o)=>o.start-r.start))t=`${t.slice(0,s.start)}${s.value}${t.slice(s.end)}`;return t},ln=(e,n)=>{let t=e;for(const s of[...n].sort((r,o)=>o.start-r.start))t=`${t.slice(0,s.start)}${s.value}${t.slice(s.end)}`;return t},dn=e=>{const n=[];let t=0;for(;t<e.length;){const s=e.indexOf("![",t);if(s===-1)break;let r=s+2,o=1;for(;r<e.length&&o>0&&e[r]!==`
|
|
3
|
+
`;){if(e[r]==="\\"){r+=2;continue}e[r]==="["?o+=1:e[r]==="]"&&(o-=1),r+=1}if(o!==0||e[r]!=="("){t=s+2;continue}const c=r+1;let l=c;for(;l<e.length&&e[l]!==`
|
|
4
|
+
`&&/\s/.test(e[l]);)l+=1;if(l>=e.length||e[l]===`
|
|
5
|
+
`){t=s+2;continue}let u=l,d=l,m=l;if(e[l]==="<"){for(r=l+1;r<e.length&&e[r]!==">"&&e[r]!==`
|
|
6
|
+
`;)r+=e[r]==="\\"?2:1;if(e[r]!==">"){t=s+2;continue}u=r+1,d=l+1,m=r}else{let f=0;for(r=l;r<e.length&&e[r]!==`
|
|
7
|
+
`;){const g=e[r];if(g==="\\"){r+=2;continue}if(/\s/.test(g)&&f===0)break;if(g==="(")f+=1;else if(g===")"){if(f===0)break;f-=1}r+=1}u=r,d=l,m=u}if(m<=d){t=s+2;continue}for(r=u;r<e.length&&e[r]!==`
|
|
8
|
+
`&&/\s/.test(e[r]);)r+=1;if(e[r]==='"'||e[r]==="'"){const f=e[r];for(r+=1;r<e.length&&e[r]!==`
|
|
9
|
+
`;){if(e[r]==="\\"){r+=2;continue}if(e[r]===f){r+=1;break}r+=1}}for(;r<e.length&&e[r]!==`
|
|
10
|
+
`&&/\s/.test(e[r]);)r+=1;if(e[r]!==")"){t=s+2;continue}n.push({end:r+1,source:{end:u,start:c,value:e.slice(d,m)},start:s}),t=r+1}return n},bs=(e,n)=>`${ds(e)}.${n}`,vs=({id:e,title:n,createdAt:t,updatedAt:s})=>{const r=["---",`title: ${Te(n)}`,`note_id: ${Te(e)}`],o=Le(t),c=Le(s);return o&&r.push(`created_at: ${Te(o)}`),c&&r.push(`updated_at: ${Te(c)}`),r.push("source: ocean-brain","---"),r.join(`
|
|
11
|
+
`)},un=(e,n,t=!1)=>t?`${vs(n)}
|
|
12
|
+
|
|
13
|
+
${e}`:e,fn=(e,n,{includeMetadata:t=!1}={})=>{const s=un(e,n,t),r=dn(s).filter(o=>Be(sn(o.source.value))).map(o=>({end:o.end,start:o.start,value:""}));return ln(s,r)},pn=(e,n,{includeMetadata:t=!1}={})=>`${t?["<!--","source: ocean-brain",`note_id: ${Me(n.id)}`,`title: ${Me(n.title)}`,`created_at: ${Me(Le(n.createdAt)??"")}`,`updated_at: ${Me(Le(n.updatedAt)??"")}`,"-->",""].join(`
|
|
14
|
+
`):""}${e}`,ws=(e,n,{includeMetadata:t=!1}={})=>{const s=pn(e,n,{includeMetadata:t}),r=on(s).filter(o=>Be(o.source.value)).map(o=>({end:o.end,start:o.start,value:""}));return cn(s,r)},Cs=async(e,n,{fetchImpl:t=fetch,includeMetadata:s=!1}={})=>{const r=new Zt,o=pn(e,n,{includeMetadata:s}),c=on(o),l=[],u=new Set,d=new Map;for(const{source:m}of c){if(!Be(m.value))continue;const f=rn(m.value),g=await an(r,f,t,d,u);l.push({end:m.end,start:m.start,value:`./${g}`})}return r.file("note.html",cn(o,l)),r.generateAsync({type:"blob"})},Ns=async(e,n,{fetchImpl:t=fetch,includeMetadata:s=!1}={})=>{const r=new Zt,o=un(e,n,s),c=dn(o),l=[],u=new Set,d=new Map;for(const{source:m}of c){const f=sn(m.value);if(!Be(f))continue;const g=rn(f),p=await an(r,g,t,d,u);l.push({end:m.end,start:m.start,value:`./${p}`})}return r.file("note.md",ln(o,l)),r.generateAsync({type:"blob"})},Ss=(e,n)=>{const t=document.createElement("a"),s=URL.createObjectURL(e);try{t.href=s,t.download=n,document.body.appendChild(t),t.click()}finally{t.remove(),URL.revokeObjectURL(s)}},mn={html:{extension:"html",getContent:e=>e.getHtml(),createDocumentBlob:(e,n)=>new Blob([ws(e,n.metadata,{includeMetadata:n.includeMetadata})],{type:"text/html;charset=utf-8"}),createZipBlob:(e,n)=>Cs(e,n.metadata,{fetchImpl:n.fetchImpl,includeMetadata:n.includeMetadata})},markdown:{extension:"md",getContent:e=>e.getMarkdown(),createDocumentBlob:(e,n)=>new Blob([fn(e,n.metadata,{includeMetadata:n.includeMetadata})],{type:"text/markdown;charset=utf-8"}),createZipBlob:(e,n)=>Ns(e,n.metadata,{fetchImpl:n.fetchImpl,includeMetadata:n.includeMetadata})}},hn=(e,n)=>n?"zip":mn[e].extension,Es=async e=>{const n=mn[e.format],t=n.getContent(e.source);if(t===void 0)return{type:"not-ready",format:e.format};const s=hn(e.format,e.includeAssets);return{type:"success",blob:e.includeAssets?await n.createZipBlob(t,e):n.createDocumentBlob(t,e),filename:bs(e.metadata.title,s)}},As=e=>e==="markdown"?"Markdown is not ready yet.":"HTML is not ready yet.",vt=({checked:e,description:n,id:t,label:s,onChange:r})=>{const o=`${t}-label`;return a.jsxs("div",{className:"flex min-h-6 items-center gap-2",children:[a.jsx(Ft,{id:t,size:"sm",checked:e,onChange:c=>r(c.target.checked),"aria-labelledby":o}),a.jsx("label",{id:o,htmlFor:t,className:"min-w-0 cursor-pointer",children:a.jsx(S,{as:"span",variant:"label",weight:"medium",tone:"secondary",className:"block",children:s})}),a.jsx(qn,{content:a.jsx("span",{className:"block max-w-[240px] leading-4",children:n}),side:"top",children:a.jsx("button",{type:"button",className:"focus-ring-soft inline-flex h-5 w-5 shrink-0 items-center justify-center rounded-full text-fg-tertiary transition-colors hover:bg-hover-subtle hover:text-fg-secondary","aria-label":`${s} help`,children:a.jsx(Cr,{className:"h-3.5 w-3.5"})})})]})};function Rs({isOpen:e,metadata:n,getHtml:t,getMarkdown:s,onClose:r}){const o=_e(),[c,l]=i.useState("html"),[u,d]=i.useState(!0),[m,f]=i.useState(!1),[g,p]=i.useState(!1),h=hn(c,u),v=async()=>{p(!0);try{const C=await Es({format:c,includeAssets:u,includeMetadata:m,metadata:n,source:{getHtml:t,getMarkdown:s}});if(C.type==="not-ready"){o(As(C.format));return}Ss(C.blob,C.filename),r(),o("Downloaded note.")}catch{o("Failed to download note.")}finally{p(!1)}};return a.jsxs(O,{isOpen:e,onClose:r,variant:"compact",children:[a.jsx(O.Header,{title:"Download document",onClose:r}),a.jsx(O.Body,{children:a.jsxs("div",{className:"flex flex-col gap-5",children:[a.jsxs("div",{className:"flex flex-col gap-3",role:"radiogroup","aria-label":"Format",children:[a.jsx(S,{as:"span",variant:"meta",weight:"bold",tone:"muted",children:"Format"}),a.jsxs("div",{className:"flex flex-wrap gap-4",children:[a.jsxs("label",{className:"flex cursor-pointer items-center gap-2",children:[a.jsx("input",{type:"radio",name:"note-export-format",value:"html",checked:c==="html",onChange:()=>l("html"),className:"h-4 w-4 accent-cta"}),a.jsx(S,{as:"span",variant:"label",weight:"medium",tone:"secondary",children:".html"})]}),a.jsxs("label",{className:"flex cursor-pointer items-center gap-2",children:[a.jsx("input",{type:"radio",name:"note-export-format",value:"markdown",checked:c==="markdown",onChange:()=>l("markdown"),className:"h-4 w-4 accent-cta"}),a.jsx(S,{as:"span",variant:"label",weight:"medium",tone:"secondary",children:".md"})]})]})]}),a.jsxs("div",{className:"flex flex-col gap-3",role:"group","aria-label":"Options",children:[a.jsx(S,{as:"span",variant:"meta",weight:"bold",tone:"muted",children:"Options"}),a.jsxs("div",{className:"flex flex-col gap-2",children:[a.jsx(vt,{id:"note-export-include-assets",label:"Include local image assets",checked:u,onChange:d,description:"Bundle uploaded Ocean Brain images with the document. Without assets, local images are omitted."}),a.jsx(vt,{id:"note-export-include-metadata",label:"Include metadata",checked:m,onChange:f,description:"Add the note title, note id, timestamps, and Ocean Brain source information."})]})]})]})}),a.jsx(O.Footer,{children:a.jsxs(Pe,{children:[a.jsx(M,{variant:"ghost",size:"sm",onClick:r,children:"Cancel"}),a.jsx(M,{variant:"primary",size:"sm",onClick:v,disabled:g,children:g?"Downloading...":`Download .${h}`})]})})]})}const gn=e=>e==="integration"?{actor:"An integration",place:"an integration",target:"integration version"}:e==="mcp"?{actor:"An MCP client",place:"through MCP",target:"the MCP update"}:e==="web"?{actor:"Another browser tab",place:"in another tab",target:"the tab update"}:{actor:"Another editor",place:"elsewhere",target:"the outside change"},ks=({isDeleted:e,isConflict:n,source:t})=>{const s=gn(t);return e?`This note was moved to trash ${s.place}`:n?`Save paused: note changed ${s.place}`:`This note changed ${s.place}`},js=({isDeleted:e,isConflict:n,hasDraft:t,source:s})=>{const r=gn(s);return e?`${r.actor} moved this note to trash. Open trash to review or restore it.`:n&&t?`Your draft is saved locally. Reload the latest note, overwrite ${r.target}, or clone your draft into a new note.`:n?`The layout change is paused because the note changed ${r.place}. Reload the latest note or overwrite only the layout.`:`${r.actor} changed this note while it was open here. Reload the latest version before continuing.`};function Ts({isOpen:e,isDeleted:n,isConflict:t,hasDraft:s,source:r,isReloading:o,onReload:c,onOverwrite:l,onCloneDraft:u,onOpenTrash:d}){return a.jsxs(O,{isOpen:e,onClose:()=>{},variant:"inspect",children:[a.jsx(O.Header,{title:ks({isDeleted:n,isConflict:t,source:r})}),a.jsx(O.Body,{children:a.jsx(S,{as:"p",variant:"body",tone:"secondary",className:"leading-6",children:js({isDeleted:n,isConflict:t,hasDraft:s,source:r})})}),a.jsx(O.Footer,{children:a.jsx(Pe,{children:n?a.jsx(M,{type:"button",variant:"primary",size:"sm",onClick:d,children:"Open trash"}):t?a.jsxs(a.Fragment,{children:[a.jsx(M,{type:"button",variant:"subtle",size:"sm",isLoading:o,onClick:c,children:"Reload latest"}),s&&a.jsx(M,{type:"button",variant:"ghost",size:"sm",onClick:u,children:"Clone draft"}),a.jsx(M,{type:"button",variant:"danger",size:"sm",onClick:l,children:"Overwrite"})]}):a.jsx(M,{type:"button",variant:"primary",size:"sm",isLoading:o,onClick:c,children:"Reload latest"})})})]})}function Ms({localDraftCreatedAt:e,hasSaveError:n,onRestoreDraft:t,onDiscardDraft:s,onRetrySave:r,onSaveAsNewNote:o}){return a.jsxs(a.Fragment,{children:[e&&a.jsx(gt,{tone:"danger",className:"mb-6",children:a.jsxs("div",{className:"flex w-full flex-col gap-3 sm:flex-row sm:items-center sm:justify-between",children:[a.jsxs("span",{children:["A draft from ",e," is saved only in this browser."]}),a.jsxs("div",{className:"flex flex-wrap gap-2",children:[a.jsx(M,{type:"button",size:"sm",variant:"subtle",className:"self-start",onClick:t,children:"Restore draft"}),a.jsx(M,{type:"button",size:"sm",variant:"ghost",className:"self-start",onClick:s,children:"Discard"})]})]})}),n&&a.jsx(gt,{tone:"danger",className:"mb-6",children:a.jsxs("div",{className:"flex w-full flex-col gap-3 sm:flex-row sm:items-center sm:justify-between",children:[a.jsx("span",{children:"Save failed. Your latest draft is still available here. Retry before leaving this note."}),a.jsxs("div",{className:"flex flex-wrap gap-2",children:[a.jsx(M,{type:"button",size:"sm",variant:"subtle",className:"self-start",onClick:r,children:"Retry save"}),a.jsx(M,{type:"button",size:"sm",variant:"ghost",className:"self-start",onClick:o,children:"Save as new note"})]})]})})]})}const wt=(e,n)=>e||(n==="mobile"?"Mobile browser":n==="mcp"?"MCP":"Web browser");function Ds({isOpen:e,noteId:n,onClose:t,restoreSnapshot:s,onRestored:r}){const o=_e(),c=st(),[l,u]=i.useState(null),[d,m]=i.useState("diff"),f=i.useRef(null),g=Ze({queryKey:D.notes.snapshots(n),queryFn:async()=>{const x=await Gn(n);if(x.type==="error")throw x;return x.noteSnapshots},enabled:e}),p=ur({mutationFn:s,onSuccess:async x=>{if(x){if(x.type==="error"){o(x.errors[0].message);return}await Promise.all([c.invalidateQueries({queryKey:D.notes.detail(n),exact:!0}),c.invalidateQueries({queryKey:D.notes.listAll(),exact:!1}),c.invalidateQueries({queryKey:D.notes.tagListAll(),exact:!1}),c.invalidateQueries({queryKey:D.notes.tagNameListAll(),exact:!1}),c.invalidateQueries({queryKey:D.notes.pinned(),exact:!0}),c.invalidateQueries({queryKey:D.notes.backReferencesAll(),exact:!1}),c.invalidateQueries({queryKey:D.notes.graph(),exact:!0}),c.invalidateQueries({queryKey:D.notes.snapshots(n),exact:!1}),c.invalidateQueries({queryKey:D.views.sectionNotesAll(),exact:!1}),c.invalidateQueries({queryKey:D.views.sectionCalendarsAll(),exact:!1}),c.invalidateQueries({queryKey:D.tags.all(),exact:!1})]),o("Previous version restored."),r?.(x.restoreNoteSnapshot),u(null),t()}}}),h=g.data?.find(x=>x.id===l)??null,v=Ze({queryKey:[...D.notes.snapshotDetail(l??"pending"),"diff"],queryFn:async()=>{if(!l)throw new Error("SNAPSHOT_NOT_SELECTED");const x=await Jn(l,"current");if(x.type==="error")throw x;if(!x.noteSnapshotDiff)throw new Error("SNAPSHOT_DIFF_NOT_FOUND");return x.noteSnapshotDiff},enabled:!!l&&d==="diff"}),C=Ze({queryKey:D.notes.snapshotDetail(l??"pending"),queryFn:async()=>{if(!l)throw new Error("SNAPSHOT_NOT_SELECTED");const x=await Xn(l);if(x.type==="error")throw x;if(!x.noteSnapshot)throw new Error("SNAPSHOT_NOT_FOUND");return x.noteSnapshot},enabled:!!l&&d==="content"}),A=C.data?.contentAsMarkdown.trim()??"";i.useEffect(()=>{l&&f.current?.focus()},[l]);const k=(x,b)=>{m(b),u(x)},w=()=>{u(null),m("diff"),t()};return a.jsxs(O,{isOpen:e,onClose:w,variant:"inspect",children:[a.jsx(O.Header,{title:h?d==="diff"?"Snapshot Diff":"Snapshot Content":"Restore Previous Version",onClose:w}),a.jsx(O.Description,{className:"sr-only",children:h?d==="diff"?"Review the markdown diff between this snapshot and the current note.":"Read this snapshot content before restoring it.":"Choose a previous snapshot to restore."}),a.jsx(O.Body,{children:h?a.jsxs("div",{className:"flex flex-col gap-3",children:[a.jsxs("div",{className:"min-w-0",children:[a.jsx(S,{as:"p",variant:"body",weight:"semibold",truncate:!0,children:h.title}),a.jsxs(S,{as:"p",variant:"label",tone:"tertiary",children:["Before"," ",wt(h.meta.label,h.meta.entrypoint)," ","edit - ",G(h.createdAt).format("YYYY-MM-DD HH:mm:ss")]})]}),a.jsxs("div",{className:"flex flex-wrap gap-2",children:[a.jsx(M,{variant:d==="diff"?"primary":"subtle",size:"sm",onClick:()=>m("diff"),children:"Show diff"}),a.jsx(M,{variant:d==="content"?"primary":"subtle",size:"sm",onClick:()=>m("content"),children:"View content"})]}),d==="diff"?v.isLoading?a.jsx(S,{as:"p",variant:"meta",tone:"secondary",className:"rounded-[14px] border border-border-subtle bg-hover-subtle/50 px-4 py-3",children:"Loading snapshot diff..."}):v.isError?a.jsx(S,{as:"p",variant:"meta",tone:"secondary",className:"rounded-[14px] border border-border-subtle bg-hover-subtle/50 px-4 py-3",children:"Snapshot diff could not be loaded."}):v.data?a.jsxs("div",{className:"flex flex-col gap-2",children:[a.jsx(S,{as:"p",variant:"meta",tone:"secondary",children:"Changes from this snapshot to the current note. Red lines were in the snapshot; green lines are in the current note."}),a.jsx("pre",{className:"max-h-[60vh] overflow-y-auto overflow-x-hidden whitespace-pre-wrap break-words rounded-[14px] border border-border-subtle bg-hover-subtle/50 px-0 py-3 text-xs leading-5 text-fg-secondary",children:v.data.diff.markdown.split(`
|
|
15
|
+
`).map((x,b)=>{const j=x.startsWith("+")&&!x.startsWith("+++")?"bg-emerald-500/12 text-emerald-700 dark:text-emerald-200":x.startsWith("-")&&!x.startsWith("---")?"bg-rose-500/12 text-rose-700 dark:text-rose-200":x.startsWith("@@")?"bg-sky-500/12 text-sky-700 dark:text-sky-200":"text-fg-secondary";return a.jsx("span",{className:`block min-w-full whitespace-pre-wrap break-words px-4 ${j}`,children:x||" "},`${b}-${x}`)})})]}):null:C.isLoading?a.jsx(S,{as:"p",variant:"meta",tone:"secondary",className:"rounded-[14px] border border-border-subtle bg-hover-subtle/50 px-4 py-3",children:"Loading snapshot content..."}):C.isError?a.jsx(S,{as:"p",variant:"meta",tone:"secondary",className:"rounded-[14px] border border-border-subtle bg-hover-subtle/50 px-4 py-3",children:"Snapshot content could not be loaded."}):A?a.jsx("pre",{className:"max-h-[60vh] overflow-auto whitespace-pre-wrap break-words rounded-[14px] border border-border-subtle bg-hover-subtle/50 px-4 py-3 text-sm leading-6 text-fg-secondary",children:A}):a.jsx(S,{as:"p",variant:"meta",tone:"secondary",className:"rounded-[14px] border border-border-subtle bg-hover-subtle/50 px-4 py-3",children:"No readable content was found for this snapshot."})]}):a.jsxs("div",{className:"flex flex-col gap-3",children:[a.jsx(S,{as:"p",variant:"meta",tone:"secondary",children:"Choose a previous snapshot to restore this note back to that state."}),g.isLoading&&a.jsx(S,{as:"div",variant:"meta",tone:"secondary",children:"Loading previous versions..."}),!g.isLoading&&g.data?.length===0&&a.jsx(S,{as:"div",variant:"meta",tone:"secondary",className:"rounded-[14px] border border-border-subtle bg-hover-subtle/50 px-4 py-3",children:"A recovery snapshot appears before the first edit in a session. Up to 10 recent snapshots are kept for 7 days, and identical versions are skipped."}),!g.isLoading&&g.data&&g.data.length>0&&a.jsx("div",{className:"flex flex-col gap-2",children:g.data.map(x=>a.jsx(Er,{padding:"compact",children:a.jsxs("div",{className:"flex flex-col gap-3",children:[a.jsxs("div",{className:"flex flex-col gap-3 sm:flex-row sm:items-start sm:justify-between",children:[a.jsxs("div",{className:"min-w-0",children:[a.jsxs(S,{as:"p",variant:"body",weight:"semibold",children:["Before"," ",wt(x.meta.label,x.meta.entrypoint)," ","edit"]}),a.jsx(S,{as:"p",variant:"meta",truncate:!0,tone:"secondary",children:x.title}),a.jsx(S,{as:"p",variant:"label",tone:"tertiary",children:G(x.createdAt).format("YYYY-MM-DD HH:mm:ss")})]}),a.jsxs("div",{className:"flex shrink-0 flex-wrap gap-2 sm:justify-end",children:[a.jsx(M,{variant:"subtle",size:"sm",onClick:()=>k(x.id,"diff"),children:"Compare"}),a.jsx(M,{size:"sm",isLoading:p.isPending,onClick:()=>p.mutate(x.id),children:"Restore"})]})]}),x.contentPreview&&a.jsx("div",{className:"rounded-[14px] border border-border-subtle bg-hover-subtle/50 px-3 py-2",children:a.jsx(S,{as:"p",variant:"meta",tone:"secondary",className:"line-clamp-4 whitespace-pre-wrap break-words",children:x.contentPreview})})]})},x.id))})]})}),h&&a.jsx(O.Footer,{children:a.jsxs(Pe,{children:[a.jsx(M,{ref:f,variant:"subtle",onClick:()=>{u(null),m("diff")},children:"Back"}),a.jsx(M,{isLoading:p.isPending,onClick:()=>p.mutate(h.id),children:"Restore this version"})]})})]})}function Ls({noteId:e}){const[n,t]=i.useState(!1),[s,r]=i.useState(!1),[o,c]=i.useState("create"),[l,u]=i.useState(void 0),{onCreate:d,onUpdate:m,onDelete:f}=kr(),g=()=>{c("create"),u(void 0),r(!0)},p=w=>{c("edit"),u(w),r(!0)},h=(w,x,b)=>{o==="create"?d(e,w,x,()=>{r(!1)},b):o==="edit"&&l&&m(l.id,e,{reminderDate:w,priority:x,content:b},()=>{r(!1)})},v=w=>{m(w.id,e,{completed:!w.completed})},C=w=>{const x=G(Number(w)),b=G();return x.isSame(b,"day")?`Today at ${x.format("HH:mm")}`:x.isSame(b.add(1,"day"),"day")?`Tomorrow at ${x.format("HH:mm")}`:x.format("YYYY-MM-DD HH:mm")},A=w=>{const x=G(Number(w)),b=G(),j=x.diff(b,"hour");return j<=6?"high":j<=24?"medium":"low"},k=w=>{const x=G(Number(w)),b=G(),j=x.diff(b,"hour"),B=x.diff(b,"minute")%60;return j<0||B<0?"Overdue":j===0?`${B}m remaining`:`${j}h ${B}m remaining`};return a.jsxs(a.Fragment,{children:[a.jsx(Wt,{title:"Reminders",icon:a.jsx(fr,{className:"h-3.5 w-3.5"}),action:a.jsxs(a.Fragment,{children:[!n&&a.jsxs(M,{size:"sm",variant:"ghost",onClick:g,children:[a.jsx(Tr,{className:"w-3 h-3"}),a.jsx(S,{as:"span",variant:"label",className:"hidden sm:inline",children:"Add"})]}),a.jsxs(M,{type:"button",size:"sm",variant:"ghost","aria-label":n?"Expand reminders":"Collapse reminders","aria-expanded":!n,onClick:()=>t(!n),children:[n?a.jsx(er,{className:"h-3.5 w-3.5"}):a.jsx(tr,{className:"h-3.5 w-3.5"}),n?"Expand":"Collapse"]})]}),children:!n&&a.jsx(ts,{noteId:e,searchParams:{offset:0,limit:9999},render:({reminders:w,totalCount:x})=>a.jsx("div",{className:"flex flex-col gap-2",children:w.length===0?a.jsx(S,{as:"p",variant:"meta",tone:"secondary",className:"py-3 text-center",children:x===0?"No reminders yet":"All reminders complete"}):a.jsx("div",{className:"flex flex-col",children:w.map(b=>{const j=b.priority||A(b.reminderDate),B=k(b.reminderDate),H=B==="Overdue";return a.jsxs("div",{className:U("flex items-center gap-2.5 px-2 py-1.5"),children:[a.jsx(Ft,{checked:b.completed,onChange:()=>v(b),size:"sm","aria-label":`Reminder: ${b.content||C(b.reminderDate)}`}),a.jsx(S,{as:"div",variant:"body",weight:"medium",className:U("truncate flex-1 min-w-0",b.completed&&"line-through opacity-40"),children:b.content||C(b.reminderDate)}),a.jsxs("div",{className:U("shrink-0 flex items-center gap-1",b.completed&&"opacity-40"),children:[b.content&&a.jsx(S,{as:"span",variant:"meta",tone:"secondary",children:C(b.reminderDate)}),!b.completed&&a.jsx(S,{as:"span",variant:"label",weight:"medium",tone:H||j==="high"?"error":"tertiary",className:U(b.content&&'before:content-["·"] before:mr-1'),children:B})]}),a.jsx(Bt,{button:a.jsx($t,{label:"Reminder actions"}),items:[{name:"Edit",onClick:()=>p(b)},{name:"Delete",onClick:()=>f(b.id,e)}]})]},b.id)})})})})}),a.jsx(jr,{isOpen:s,onClose:()=>r(!1),onSave:h,reminder:l,mode:o})]})}const _s=e=>[{title:"Diagram",subtext:"Create a flowchart or diagram with Mermaid syntax",onItemClick:()=>{xt(e,{type:"codeBlock",props:{language:"mermaid"}})},aliases:["mermaid","diagram","flowchart","sequence"],group:"Other",icon:a.jsx(Qt,{})},{title:"Math Formula",subtext:"Write a formula with KaTeX or LaTeX",onItemClick:()=>{xt(e,{type:"codeBlock",props:{language:"math"}})},aliases:["math","formula","equation","katex","latex"],group:"Other",icon:a.jsx(Jt,{})}],Ps=({editor:e})=>a.jsx(ct,{triggerCharacter:"/",getItems:async n=>Or([...Mr(e).filter(t=>t.title!=="Audio"&&t.title!=="Video"&&t.title!=="File"),..._s(e),{title:"Table of Contents",subtext:"Insert a table of contents based on headings",onItemClick:()=>{e.insertBlocks([{type:"tableOfContents"}],e.getTextCursorPosition().block,"after")},aliases:["toc","table of contents","contents","outline","index"],group:"Other",icon:a.jsx(Ut,{})}],n)}),Os=(e,n)=>n?e.filter(t=>t.id!==n):e,Bs=({currentNoteId:e,onClick:n})=>a.jsx(ct,{triggerCharacter:"[",getItems:async t=>{const s=await nr({query:t,limit:5});return s.type==="error"?[]:Os(s.allNotes.notes,e).map(o=>({title:o.title,onItemClick:()=>n({type:"reference",props:{id:o.id,title:o.title}})}))}});let Ct,Nt;const Fs=()=>(Ct??=Je(async()=>{const{default:e}=await import("./mermaid.core-BfUQM5vF.js").then(n=>n.bc);return{default:e}},__vite__mapDeps([0,1,2,3])).then(({default:e})=>e),Ct),Hs=()=>(Nt??=Promise.all([Je(()=>import("./katex-x288kqHd.js"),[]),Je(()=>Promise.resolve({}),__vite__mapDeps([4]))]).then(([{default:e}])=>e),Nt),Is=e=>{const n=e?.trim().toLowerCase();return n==="mermaid"?"mermaid":n==="math"||n==="katex"||n==="latex"?"math":null},$s=e=>`ocean-brain-mermaid-${e.replace(/[^a-zA-Z0-9_-]/g,"")||"diagram"}`,Us=async(e,n,t,s="light")=>{if(e==="mermaid"){const o=await Fs();o.initialize({securityLevel:"strict",startOnLoad:!1,suppressErrorRendering:!0,theme:s==="dark"?"dark":"default"});const c=await o.render($s(t),n);return{html:c.svg,bindFunctions:c.bindFunctions}}return{html:(await Hs()).renderToString(n,{displayMode:!0,output:"htmlAndMathml",strict:"warn",throwOnError:!0,trust:!1})}},zs={floating:"pointer-events-auto inline-flex h-7 cursor-pointer select-none items-center gap-1.5 rounded-[8px] border border-white/10 bg-white/10 px-2.5 text-xs font-medium text-white/60 opacity-75 shadow-[0_8px_18px_-14px_rgba(0,0,0,0.45)] backdrop-blur-sm transition-colors hover:bg-white/20 hover:text-white/90 hover:opacity-100 focus-ring-soft focus:text-white/90 focus:opacity-100",toolbar:"focus-ring-soft inline-flex h-8 cursor-pointer select-none items-center gap-1.5 rounded-[8px] border border-transparent px-2.5 text-xs font-semibold text-fg-secondary outline-none transition-colors hover:border-border-subtle hover:bg-hover-subtle hover:text-fg-default"},Vs={idle:"",copied:"text-accent-success hover:text-accent-success focus:text-accent-success",failed:"text-fg-error hover:text-fg-error focus:text-fg-error"},Zs={idle:"Copy",copied:"Copied",failed:"Copy failed"},St=({getText:e,resetDelayMs:n=2e3,variant:t="floating"})=>{const[s,r]=i.useState("idle"),o=i.useRef(null),c=i.useCallback(()=>{o.current&&(clearTimeout(o.current),o.current=null)},[]),l=i.useCallback(()=>{c(),o.current=setTimeout(()=>{r("idle"),o.current=null},n)},[c,n]);i.useEffect(()=>c,[c]);const u=f=>{f.stopPropagation()},d=f=>{f.preventDefault(),f.stopPropagation()},m=async f=>{u(f);try{await navigator.clipboard.writeText(e()),r("copied")}catch{r("failed")}l()};return a.jsx("div",{className:U(t==="floating"&&"pointer-events-none absolute right-3 top-2 z-[1]"),contentEditable:!1,onMouseDown:d,children:a.jsxs("button",{type:"button",className:U(zs[t],Vs[s]),contentEditable:!1,onClick:m,children:[a.jsx(Ir,{className:"h-3.5 w-3.5"}),a.jsx("span",{"aria-live":"polite",children:Zs[s]})]})})},Ws=({kind:e,source:n})=>{const t=i.useId(),s=i.useRef(null),r=Ht(d=>d.theme),[o,c]=i.useState(()=>typeof IntersectionObserver>"u"),[l,u]=i.useState({status:"idle"});return i.useEffect(()=>{const d=s.current;if(o||!d||typeof IntersectionObserver>"u"){c(!0);return}const m=new IntersectionObserver(([f])=>{f?.isIntersecting&&(c(!0),m.disconnect())},{rootMargin:"240px"});return m.observe(d),()=>m.disconnect()},[o]),i.useEffect(()=>{if(!o)return;let d=!1;return u({status:"loading"}),Us(e,n,t,r).then(m=>{d||u({status:"success",...m})}).catch(()=>{d||u({status:"error"})}),()=>{d=!0}},[e,t,o,n,r]),i.useEffect(()=>{l.status==="success"&&l.bindFunctions&&s.current&&l.bindFunctions(s.current)},[l]),a.jsxs("div",{ref:s,"data-rich-code-preview":!0,className:"min-h-24 w-full overflow-auto bg-surface px-4 py-5 text-fg-default sm:px-6 sm:py-6",contentEditable:!1,"aria-label":e==="mermaid"?"Mermaid diagram preview":"Math formula preview",children:[l.status==="success"&&a.jsx("div",{className:"[&_.katex-display]:m-0 [&_svg]:mx-auto [&_svg]:block [&_svg]:h-auto [&_svg]:max-h-[min(68vh,640px)] [&_svg]:max-w-full",dangerouslySetInnerHTML:{__html:l.html}}),(l.status==="idle"||l.status==="loading")&&a.jsx("div",{className:"flex min-h-8 items-center justify-center text-sm text-black/55",children:"Rendering preview…"}),l.status==="error"&&a.jsxs("div",{className:"text-left",children:[a.jsx("p",{className:"mb-3 text-sm text-red-700",children:"Preview could not be rendered. The source is preserved."}),a.jsx("pre",{className:"overflow-x-auto whitespace-pre-wrap rounded-[6px] bg-black/5 p-4 text-sm text-black",children:a.jsx("code",{children:n})})]})]})},Et="focus-ring-soft inline-flex h-8 cursor-pointer select-none items-center gap-1.5 rounded-[8px] border px-2.5 text-xs font-semibold outline-none transition-colors",et=e=>typeof e=="string"?e:!e||typeof e!="object"?"":"text"in e&&typeof e.text=="string"?e.text:"content"in e?Array.isArray(e.content)?e.content.map(et).join(""):et(e.content):"",Ks=({block:e,contentRef:n})=>{const t=i.useRef(null),s=Is(e.props.language),r=e.content.map(et).join(""),[o,c]=i.useState(r),[l,u]=i.useState(r.length===0),d=s!==null&&!l,m=s==="mermaid"?"Diagram":"Math Formula",f=`${m} controls`,g=i.useCallback(h=>{t.current=h,n(h)},[n]);i.useEffect(()=>{const h=t.current;if(!h)return;const v=()=>c(h.textContent??""),C=new MutationObserver(v);return C.observe(h,{characterData:!0,childList:!0,subtree:!0}),()=>C.disconnect()},[]);const p=h=>{h.preventDefault(),h.stopPropagation()};return a.jsxs(a.Fragment,{children:[s&&a.jsxs("div",{role:"toolbar","aria-label":f,"data-rich-code-toolbar":!0,className:"flex min-h-11 w-full flex-wrap items-center justify-between gap-2 border-b border-border-subtle bg-elevated px-3 py-1.5 text-fg-secondary",contentEditable:!1,onMouseDown:p,children:[a.jsxs("div",{className:"flex min-w-0 items-center gap-2 px-1 text-xs font-semibold text-fg-secondary",children:[s==="mermaid"?a.jsx(Qt,{className:"h-4 w-4 shrink-0 text-fg-tertiary"}):a.jsx(Jt,{className:"h-4 w-4 shrink-0 text-fg-tertiary"}),a.jsx("span",{className:"truncate",children:m})]}),a.jsxs("div",{className:"flex items-center gap-1",children:[a.jsxs("div",{className:"flex items-center gap-0.5 rounded-[10px] border border-border-subtle bg-hover-subtle/55 p-0.5",children:[a.jsxs("button",{type:"button","aria-pressed":l,className:U(Et,l?"border-border-secondary/70 bg-elevated text-fg-default shadow-[0_8px_18px_-16px_rgba(15,18,24,0.28)]":"border-transparent text-fg-secondary hover:bg-hover-subtle hover:text-fg-default"),contentEditable:!1,onClick:h=>{h.stopPropagation(),u(!0)},children:[a.jsx(Jr,{className:"h-3.5 w-3.5"}),"Edit"]}),a.jsxs("button",{type:"button","aria-pressed":d,className:U(Et,d?"border-border-secondary/70 bg-elevated text-fg-default shadow-[0_8px_18px_-16px_rgba(15,18,24,0.28)]":"border-transparent text-fg-secondary hover:bg-hover-subtle hover:text-fg-default"),contentEditable:!1,onClick:h=>{h.stopPropagation(),u(!1)},children:[a.jsx(pr,{className:"h-3.5 w-3.5"}),"Preview"]})]}),a.jsx(St,{variant:"toolbar",getText:()=>t.current?.textContent?.trimEnd()??""})]})]}),a.jsx("pre",{className:U(d&&"hidden",s&&"bg-[#181b20]"),children:a.jsx("code",{ref:g})}),s&&d&&a.jsx(Ws,{kind:s,source:o}),!s&&a.jsx(St,{getText:()=>t.current?.textContent?.trimEnd()??""})]})},Ys="focus-ring-soft inline-flex cursor-pointer items-center rounded-[8px] border border-border-subtle bg-[color-mix(in_srgb,var(--elevated)_72%,var(--hover-subtle))] px-2 py-0.5 text-xs font-semibold text-fg-secondary transition-colors hover:border-border-secondary hover:bg-elevated hover:text-fg-default dark:bg-[color-mix(in_srgb,var(--elevated)_82%,var(--hover-subtle))]",Qs={type:"reference",propSchema:{id:{default:""},title:{default:"Unknown"}},content:"none"};function qs(e){const n=It(),t=()=>{e.editor.blur(),n({to:Oe,params:{id:e.inlineContent.props.id}})},s=r=>{r.preventDefault(),r.stopPropagation()};return a.jsx("span",{role:"link",tabIndex:0,contentEditable:!1,className:Ys,onMouseDown:s,onClick:r=>{s(r),t()},onKeyDown:r=>{r.key!=="Enter"&&r.key!==" "||(s(r),t())},children:a.jsxs("span",{children:["[",e.inlineContent.props.title,"]"]})})}const Gs=Kt(Qs,{render:e=>a.jsx(qs,{...e})}),Js=()=>{const e=Dr(),[n,t]=i.useState([]),s={1:"pl-3",2:"pl-[26px]",3:"pl-[40px]",4:"pl-[54px]",5:"pl-[68px]",6:"pl-[82px]"};i.useEffect(()=>{const c=()=>{const u=e.document,d=[],m=f=>{for(const g of f){if(g.type==="heading"){const p=g,h=p.props.level||1,v=p.content?.map(C=>C.text||"").join("")||"";v.trim()&&d.push({id:g.id,level:h,text:v})}g.children&&Array.isArray(g.children)&&m(g.children)}};m(u),t(d)};c();const l=e.onChange?.(c);return()=>{l&&l()}},[e]);const r=c=>{e.setTextCursorPosition(c);const l=document.querySelector(`[data-id="${c}"]`);if(l){const u=window.matchMedia?.("(prefers-reduced-motion: reduce)").matches??!1;l.scrollIntoView({behavior:u?"auto":"smooth",block:"center"})}},o=a.jsx($r,{icon:a.jsx(Ut,{className:"h-3.5 w-3.5"}),title:"Table of Contents",className:"text-fg-tertiary"});return n.length===0?a.jsxs("div",{className:"surface-base w-full p-4",children:[o,a.jsx(S,{as:"p",variant:"meta",tone:"secondary",className:"mt-2",children:"Add headings to your document to generate a table of contents"})]}):a.jsxs("div",{className:"surface-base w-full p-4",children:[a.jsx("div",{className:"mb-2",children:o}),a.jsx("nav",{className:"space-y-0.5",children:n.map(c=>{const l=c.level===1;return a.jsxs("button",{type:"button",onClick:()=>r(c.id),className:U("focus-ring-soft","flex","w-full","items-center","gap-2","rounded-[10px]","px-2.5","py-1.5",s[c.level]??"pl-2.5","text-left","transition-colors","hover:bg-hover-subtle",l?"text-fg-default":"text-fg-secondary"),children:[a.jsxs(S,{as:"span",variant:"label",weight:"medium",tone:"tertiary",className:"min-w-[1.5rem]",children:["H",c.level]}),a.jsx(S,{as:"span",variant:"body",weight:l?"semibold":"medium",className:"line-clamp-2 text-current",children:c.text})]},c.id)})})]})},Xs=Yt({type:"tableOfContents",propSchema:{},content:"none"},{render:()=>a.jsx(Js,{})})(),ea="focus-ring-soft inline-flex cursor-pointer items-center rounded-[8px] border border-border-subtle bg-emphasis px-2 py-0.5 text-xs font-semibold text-fg-secondary transition-colors hover:border-border-secondary hover:bg-hover-subtle hover:text-fg-default dark:bg-emphasis",ta={type:"tag",propSchema:{id:{default:""},tag:{default:"@Unknown"}},content:"none"};function na(e){const n=It(),t=()=>{e.editor.blur(),n({to:Nr,params:{id:e.inlineContent.props.id},search:{page:1}})},s=r=>{r.preventDefault(),r.stopPropagation()};return a.jsx("span",{role:"link",tabIndex:0,contentEditable:!1,className:ea,onMouseDown:s,onClick:r=>{s(r),t()},onKeyDown:r=>{r.key!=="Enter"&&r.key!==" "||(s(r),t())},children:a.jsx("span",{children:e.inlineContent.props.tag})})}const ra=Kt(ta,{render:e=>a.jsx(na,{...e})}),sa=e=>e,aa=e=>e,oa=sa({tag:ra,reference:Gs}),ia=aa({tableOfContents:Xs}),le=Ce.codeBlock,At=Yt(le.config,{meta:le.implementation.meta,parse:le.implementation.parse,parseContent:le.implementation.parseContent,runsBefore:le.implementation.runsBefore,render:Ks})(),ca={...At,extensions:le.extensions,implementation:{...At.implementation,toExternalHTML:le.implementation.toExternalHTML}},la={...Ce.image,implementation:{...Ce.image.implementation,meta:{...Ce.image.implementation.meta,fileBlockAccept:[...yr]}}},da=Br.create({inlineContentSpecs:{...Fr,...oa},blockSpecs:{...Ce,image:la,codeBlock:ca,...ia}}),ua=(e,n)=>n.some(t=>t.name===`@${e}`),fa=({onClick:e})=>a.jsx(ct,{triggerCharacter:"@",getItems:async n=>{const t=await Ur({query:n,limit:5});if(t.type==="error")return[];const{tags:s}=t.allTags,r=ua(n,s),o=[{title:"Add a new tag",onItemClick:async()=>{const c=await zr({name:"@"+n});if(c.type==="error")return;const{id:l,name:u}=c.createTag;e({type:"tag",props:{id:l,tag:u}})}}];return s.length===0?o:s.map(c=>({title:c.name,onItemClick:()=>e({type:"tag",props:{id:c.id,tag:c.name}})})).concat(n&&!r?o:[])}}),pa=/^ {0,3}(`{3,}|~{3,})/,ma=/<[^<>\n]*>/g,xn=/~+/g,yn=/[\p{L}\p{M}\p{N}\p{Sc}%‰.,+\-/:°℃℉µμ·²³^]/u,tt=new RegExp("^(?:[+-]?\\p{Sc}?|\\p{Sc}[+-]?)\\p{N}","u"),bn=/&#(?:x[0-9a-f]+|\d+);/giu,ha=new Set(["Files","blocknote/html","vscode-editor-data"]),Rt="OBTILDE",kt="",ga=[/(^|\n) {0,3}#{1,6} {1,8}[^\n]{1,64}\r?\n\r?\n\s{0,32}\S/,/(_|__|\*|\*\*|~~|==|\+\+)(?!\s)(?:[^\s](?:.{0,62}[^\s])?|\S)(?=\1)/,/\[[^\]]{1,128}\]\(https?:\/\/\S{1,999}\)/,/(?:\s|^)`(?!\s)(?:[^\s`](?:[^`]{0,46}[^\s`])?|[^\s`])`([^\w]|$)/,/(?:^|\n)\s{0,5}-\s{1}[^\n]+\n\s{0,15}-\s/,/(?:^|\n)\s{0,5}\d+\.\s{1}[^\n]+\n\s{0,15}\d+\.\s/,/\n{2} {0,3}-{2,48}\n{2}/,/(?:\n|^)(```|~~~|\$\$)(?!`|~)[^\s]{0,64} {0,64}[^\n]{0,64}\n[\s\S]{0,9999}?\s*\1 {0,64}(?:\n+|$)/,/(?:\n|^)(?!\s)\w[^\n]{0,64}\n(-|=)\1{0,64}\n\n\s{0,64}(\w|$)/,/(?:^|(\r?\n\r?\n))( {0,3}>[^\n]{1,333}\n){1,999}($|(\r?\n))/],xa=e=>e.split(`
|
|
16
|
+
`).some(n=>{const t=n.trim();return t.length>2&&t.startsWith("|")&&t.endsWith("|")}),ya=e=>ga.some(n=>n.test(e))||xa(e),ba=e=>e.endsWith(`\r
|
|
17
|
+
`)?{body:e.slice(0,-2),ending:`\r
|
|
18
|
+
`}:e.endsWith(`
|
|
19
|
+
`)||e.endsWith("\r")?{body:e.slice(0,-1),ending:e.slice(-1)}:{body:e,ending:""},vn=(e,n,t)=>{let s=n;for(;e[s]===t;)s+=1;return s-n},wn=e=>{const n=e.slice(2,-1),t=n[0]?.toLowerCase()==="x",s=Number.parseInt(t?n.slice(1):n,t?16:10);return!Number.isSafeInteger(s)||s<0||s>1114111?e:String.fromCodePoint(s)},va=e=>{const n=e.replace(bn,wn),t=e.toLowerCase();let s=0,r=`${Rt}${s}${kt}`;for(;e.includes(r)||t.includes(encodeURIComponent(r).toLowerCase())||n.includes(r);)s+=1,r=`${Rt}${s}${kt}`;return r},wa=(e,n,t)=>t-n>2?!1:Cn(e,n)&&Na(e,t),jt=(e,n)=>{let t=n;for(;t>0&&yn.test(e[t-1]??"");)t-=1;return{start:t,token:e.slice(t,n)}},Ca=(e,n)=>{let t=n;for(;t<e.length&&yn.test(e[t]??"");)t+=1;return e.slice(n,t)},Cn=(e,n)=>{const t=jt(e,n);if(tt.test(t.token))return!0;if(!t.token)return!1;let s=t.start;for(;s>0&&(e[s-1]===" "||e[s-1]===" ");)s-=1;return s===t.start?!1:tt.test(jt(e,s).token)},Na=(e,n)=>tt.test(Ca(e,n)),Nn=e=>{const n=[],t=new Set;for(const s of e.matchAll(xn)){const r=s.index,o=s[0].length,c=r+o;if(o>2)continue;const l=c<e.length&&!/\s/u.test(e[c]??""),u=r>0&&!/\s/u.test(e[r-1]??"");if(wa(e,r,c)){if(u&&t.delete(o))continue;n.push({length:o,start:r});continue}u&&t.delete(o)||l&&Cn(e,r)&&t.add(o)}return n},Ke=(e,n)=>{let t="",s=0;const r=new Set(Nn(e).map(o=>o.start));for(const o of e.matchAll(xn)){const c=o.index,l=c+o[0].length;t+=e.slice(s,c),t+=r.has(c)?n.repeat(o[0].length):o[0],s=l}return t+e.slice(s)},Sa=e=>{const n=e.slice(1,-1),t=/^[a-z][a-z0-9.+-]{1,31}:[^\s<>]*$/i.test(n)||/^[^\s@<>]+@[^\s@<>]+\.[^\s@<>]+$/.test(n),s=/^<\/?[a-z][\w:-]*(?:\s[^<>]*)?\/?\s*>$/i.test(e)||/^<![^<>]*>$/.test(e);return t||s},Ea=(e,n)=>{let t="",s=0;for(const r of e.matchAll(ma)){const o=r.index;t+=Ke(e.slice(s,o),n),t+=Sa(r[0])?r[0]:Ke(r[0],n),s=o+r[0].length}return t+Ke(e.slice(s),n)},Sn=e=>Nn(e).length>0,Aa=e=>{if(!Sn(e))return yt(e);const n=va(e),t=Ea(e,n),s=encodeURIComponent(n);return yt(t).split(n).join("~").split(s).join("~")},Ra=(e,n)=>{let t=0;for(let s=n-1;s>=0&&e[s]==="\\";s-=1)t+=1;return t%2===1},ka=(e,n,t)=>{let s=n+t;for(;s<e.length;){const r=e.indexOf("`",s);if(r===-1)return null;const o=vn(e,r,"`");if(o===t)return r+o;s=r+o}return null},ja=(e,n)=>{let t=e.indexOf("`",n);for(;t!==-1;){const s=vn(e,t,"`");if(!Ra(e,t)){const r=ka(e,t,s);if(r!==null)return{start:t,end:r}}t=e.indexOf("`",t+s)}return null},Ta=(e,n)=>{let t="",s=0;for(;s<e.length;){const r=ja(e,s);if(!r){t+=n(e.slice(s));break}t+=n(e.slice(s,r.start)),t+=e.slice(r.start,r.end),s=r.end}return t},En=(e,n)=>{let t=null;return e.split(new RegExp("(?<=\\n)")).map(s=>{const{body:r,ending:o}=ba(s);if(t)return new RegExp(`^ {0,3}${t.marker}{${t.length},} *$`).test(r)&&(t=null),s;const c=r.match(pa)?.[1];return c?(t={marker:c[0],length:c.length},s):`${Ta(r,n)}${o}`}).join("")},Ma=(e,n)=>{let t=0;for(let s=n;s<e.length;s+=1){const r=e[s];if(r==="\\"){s+=1;continue}if(r==="("){t+=1;continue}if(r===")"){if(t>0){t-=1;continue}return s}}return null},An=e=>{let n="",t=0;for(;t<e.length;){const s=e.indexOf("](",t);if(s===-1){n+=e.slice(t);break}const r=s+2,o=Ma(e,r);if(o===null){n+=e.slice(t);break}n+=e.slice(t,r),n+=e.slice(r,o).split("\\&").join("&"),n+=")",t=o+1}return n},Da=(e,n)=>{const t=e[n-1];if(t!=="*"&&t!=="_")return!1;let s=n-1;for(;s>0&&e[s-1]===t;)s-=1;const r=e.slice(s,n),o=e.lastIndexOf(r,s-1);return o!==-1&&o+r.length<s},La=(e,n)=>{const t=e[n];if(t!=="*"&&t!=="_")return!1;let s=n+1;for(;s<e.length&&e[s]===t;)s+=1;const r=e.slice(n,s),o=e.indexOf(r,s);return o!==-1&&s<o},_a=(e,n,t)=>Da(e,n)||La(e,n+t),Pa=e=>En(e,n=>{const t=n.replace(bn,(s,r,o)=>_a(o,r,s.length)?wn(s):s);return An(t)}),Oa=e=>En(e,An),Ba=e=>{const n=e.getData("text/plain");n&&(e.setData("text/markdown",n),e.setData("text/plain",Pa(n)))},Fa=({event:e,editor:n,defaultPasteHandler:t})=>{const s=e.clipboardData;if(!s||n.getTextCursorPosition().block.type==="codeBlock")return t();const r=Array.from(s.types);if(r.some(l=>ha.has(l)))return t();const o=r.includes("text/markdown"),c=s.getData(o?"text/markdown":"text/plain");return!c||!Sn(c)||!o&&r.includes("text/html")&&!ya(c)?t():(n.pasteHTML(Aa(c)),!0)},Ha=new Set(["tableOfContents"]),Ia="OCEAN_BRAIN_TAG_",$a="_TOKEN",Tt=e=>`${Ia}${e}${$a}`,Ua=e=>{const n=JSON.stringify(e);let t=0;return()=>{let s=Tt(t);for(;n.includes(s);)t+=1,s=Tt(t);return t+=1,s}},za=e=>!Array.isArray(e)&&e?.type==="tableContent",Va=(e,n)=>Array.isArray(e)?e.map(n):za(e)?{...e,rows:e.rows?.map(t=>({...t,cells:t.cells?.map(s=>({...s,content:s.content?.map(n)}))}))}:e,Rn=(e,n)=>e.filter(t=>!Ha.has(t.type)).map(t=>({...t,content:n(t.content),children:t.children?.length?Rn(t.children,n):[]}));function Za(e){const n=new Map,t=Ua(e);return{blocks:Rn(e,r=>Va(r,o=>{if(o.type==="reference"){const c=String(o.props?.id||""),l=String(o.props?.title||o.props?.id||"");return{type:"text",text:c?`[[${l}]](note:${c})`:`[[${l}]]`,styles:{}}}if(o.type==="tag"){const c=o.props?.tag||"",l=t();return n.set(l,c),{type:"text",text:l,styles:{}}}return o})),placeholderToTag:n}}function Wa(e,n){let t=e;for(const[s,r]of n.entries())t=t.split(s).join(`[${r}]`);return t}async function Ka(e){return new Promise((n,t)=>{const s=new FileReader;s.readAsDataURL(e),s.onload=()=>n(s.result),s.onerror=r=>t(r)})}const Ya=128,kn=(e,n)=>e.id===n.id||e.fingerprint===n.fingerprint,jn=e=>e!==null&&typeof e=="object"&&!Array.isArray(e),nt=e=>Array.isArray(e)?e.map(nt):jn(e)?Object.fromEntries(Object.keys(e).sort().map(n=>[n,nt(e[n])])):e,Mt=e=>{const n=[],t=s=>{if(Array.isArray(s))for(const r of s)!jn(r)||typeof r.id!="string"||(n.push({id:r.id,fingerprint:JSON.stringify(nt({type:r.type,props:r.props,content:r.content}))}),t(r.children))};try{t(JSON.parse(e))}catch{}return n},Dt=(e,n)=>{const t=new Set(n.map(r=>r.id)),s=new Set(n.map(r=>r.fingerprint));return e.map((r,o)=>({...r,index:o})).filter(r=>t.has(r.id)||s.has(r.fingerprint))},Qa=(e,n)=>{const t=Dt(e,n),s=Dt(n,e),r=qt(t,s,{comparator:kn}),o=[];let c=0,l=0;const u=(f,g)=>{const p=Math.min(f-c,g-l);for(let h=l;h<g;h++)o.push({id:n[h].id,kind:h-l<p?"modified":"added"})};let d=0,m=0;for(const f of r)if(f.removed)d+=f.value.length;else if(f.added)m+=f.value.length;else{for(let g=0;g<f.value.length;g++){const p=t[d+g],h=s[m+g];u(p.index,h.index),p.fingerprint!==h.fingerprint&&o.push({id:h.id,kind:"modified"}),c=p.index+1,l=h.index+1}d+=f.value.length,m+=f.value.length}return u(e.length,n.length),o};function qa(e,n){const t=Mt(e),s=Mt(n),r=[],o=qt(t,s,{comparator:kn,maxEditLength:Ya});if(!o)return{changes:Qa(t,s)};let c=0,l=0;for(let u=0;u<o.length;u++){const d=o[u];if(d.removed){const m=o[u+1]?.added?o[u+1].value:[],f=Math.min(d.value.length,m.length);for(let g=0;g<f;g++)r.push({id:m[g].id,kind:"modified"});for(const g of m.slice(f))r.push({id:g.id,kind:"added"});c+=d.value.length,m.length&&(l+=m.length,u++)}else if(d.added){for(const m of d.value)r.push({id:m.id,kind:"added"});l+=d.value.length}else{for(let m=0;m<d.value.length;m++)t[c+m].fingerprint!==s[l+m].fingerprint&&r.push({id:s[l+m].id,kind:"modified"});c+=d.value.length,l+=d.value.length}}return{changes:r}}function Lt(e){const n=[];let t=e?.parentElement;for(;t;)(t.scrollHeight>t.clientHeight||t.scrollWidth>t.clientWidth)&&n.push({element:t,top:t.scrollTop,left:t.scrollLeft}),t=t.parentElement;return{scroll:n}}function _t(e){for(const{element:n,top:t,left:s}of e?.scroll??[])n.isConnected&&(n.scrollTop=t,n.scrollLeft=s)}const we=new Vr("external-note-changes"),Pt=Hr(({editor:e})=>({key:"externalNoteChanges",prosemirrorPlugins:[new Zr({key:we,state:{init:()=>je.empty,apply:(n,t)=>{const s=n.getMeta(we);return s instanceof je?s:t.map(n.mapping,n.doc)}},props:{decorations:n=>we.getState(n)}})],showChanges(n,t){const{changes:s}=qa(n,JSON.stringify(e.document));e.transact(r=>{const o=[],c=new Map(s.map(u=>[u.id,u.kind]));let l=null;r.doc.descendants((u,d)=>{if(typeof u.attrs.id!="string")return;const m=c.get(u.attrs.id);m&&(l=Math.max(l??0,d+u.nodeSize),o.push(We.node(d,d+u.nodeSize,{"data-external-change":m,"aria-label":m==="added"?"Added by MCP":"Updated by MCP"})),u.descendants((f,g)=>{if(typeof f.attrs.id=="string")return!1;if(f.isTextblock){if(f.content.size>0){const p=d+g+2;o.push(We.inline(p,p+f.content.size,{class:"note-change-text"}))}return!1}}))}),l!==null&&t&&o.push(We.widget(l,()=>{const u=document.createElement("div");u.className="note-change-review",u.contentEditable="false";const d=document.createElement("span");d.className="note-change-status";const m=document.createElement("span");m.className="note-change-status__label",m.textContent="AI changes",d.append(m);const f=document.createElement("button");return f.type="button",f.className="note-change-review__done focus-ring-soft",f.textContent="Done reviewing",f.title="Hide AI change highlights",f.addEventListener("click",t),u.append(d,f),u},{side:1,ignoreSelection:!0,stopEvent:()=>!0})),r.setMeta(we,je.create(r.doc,o))})},clearChanges(){e.transact(n=>n.setMeta(we,je.empty))}})),Ga=i.forwardRef(({content:e,currentNoteId:n,editable:t,onChange:s,externalUpdate:r,onClearChangeMarks:o},c)=>{const{theme:l}=Ht(f=>f),u=_e(),d=Lr({schema:da,extensions:[Pt()],initialContent:e&&JSON.parse(e)||void 0,pasteHandler:f=>Fa(f),uploadFile:async(f,g)=>{const p=()=>{g&&d.getBlock(g)&&d.removeBlocks([g])};if(!br(f.type))throw p(),u(ht),new Error(ht);try{return await Pr({base64:await Ka(f)})}catch(h){throw p(),u(vr),h}}},[u]);i.useLayoutEffect(()=>{const f=d.getExtension(Pt);if(!r){const g=Lt(d.domElement);f?.clearChanges(),_t(g);return}f?.showChanges(r.previousContent,o),_t(r.viewport)},[d,r,o]),i.useImperativeHandle(c,()=>({captureViewport:()=>Lt(d.domElement),getContent:()=>JSON.stringify(d.document),getMarkdown:()=>{const f=Za(d.document),g=d.blocksToMarkdownLossy(f.blocks);return Oa(Wa(g,f.placeholderToTag))},getHtml:()=>d.blocksToHTMLLossy(d.document)}));const m=f=>{Ba(f.clipboardData)};return a.jsxs(_r,{slashMenu:!1,theme:l,editor:d,editable:t,onChange:s,onCopy:m,onCut:m,children:[a.jsx(Ps,{editor:d}),a.jsx(Bs,{currentNoteId:n,onClick:f=>{d.insertInlineContent([f," "])}}),a.jsx(fa,{onClick:f=>{d.insertInlineContent([f," "])}})]})}),Ja=({event:e,noteId:n,editSessionId:t,loadedUpdatedAt:s,acceptedUpdatedAt:r,hasUnsavedChanges:o})=>{if(e.noteId!==n||e.type==="mcp.note.created"||e.type==="integration.note.created")return{type:"ignore"};if(e.source==="web"&&e.editSessionId===t)return{type:"ignore"};if(e.type==="mcp.note.deleted"||e.type==="integration.note.deleted")return{type:"notify",change:{type:"deleted",source:e.source},shouldPauseSave:!1};const c=De(e.updatedAt,s),l=De(e.updatedAt,r);return c!==null&&c<=0||l!==null&&l<=0?{type:"ignore"}:{type:"notify",change:{type:"updated",updatedAt:e.updatedAt,source:e.source},shouldPauseSave:o}},Xa=({change:e,isConflict:n,loadedUpdatedAt:t})=>e?!(e.type==="updated"&&!n&&e.updatedAt===t):!1;function eo({allowNextNavigationRef:e,hasExternalPendingChanges:n,saveStatus:t,flushPendingChanges:s,notify:r}){const o=i.useCallback(async()=>{if(e.current)return e.current=!1,!1;if(t==="conflict")return r("Resolve the note conflict before leaving."),!0;const c=await s();return c==="error"?(r("Save failed. Stay on this note and try again."),!0):c==="conflict"},[e,s,r,t]);Qr({disabled:t==="saved"&&!n,enableBeforeUnload:!1,shouldBlockFn:o})}const dt=e=>`ocean-brain.note-draft.${e}`,to=e=>{if(typeof window>"u")return null;try{const n=window.localStorage.getItem(dt(e));if(!n)return null;const t=JSON.parse(n);return typeof t.title!="string"||typeof t.content!="string"||typeof t.baseUpdatedAt!="string"?null:{title:t.title,content:t.content,baseUpdatedAt:t.baseUpdatedAt,createdAt:typeof t.createdAt=="number"?t.createdAt:Date.now(),...t.layout==="narrow"||t.layout==="wide"||t.layout==="full"?{layout:t.layout}:{}}}catch{return null}},Ye=(e,n)=>{if(!(typeof window>"u"))try{window.localStorage.setItem(dt(e),JSON.stringify(n))}catch{}},Qe=e=>{if(!(typeof window>"u"))try{window.localStorage.removeItem(dt(e))}catch{}},no=1e3,ro="NOTE_UPDATE_CONFLICT";function so({noteId:e,initialContent:n,initialUpdatedAt:t,editSessionIdRef:s,getContent:r,beforeSave:o,hasExternalPendingChanges:c,serverVersionRef:l,executeWrite:u,onSaved:d,onConflict:m,onError:f}){const g=st(),p=i.useRef(null),h=i.useRef(null),v=i.useRef(!1),C=i.useRef(null),A=i.useRef(!1),k=i.useRef(t),w=l??k,x=i.useRef(0),b=i.useRef(!1),j=i.useRef(!0),B=i.useRef(d),H=i.useRef(m),ge=i.useRef(f),W=i.useRef(o),I=i.useRef(c),xe=i.useRef(u),[oe,ee]=i.useState("saved"),[de,ue]=i.useState(null),L=i.useCallback(()=>{p.current!==null&&(window.clearTimeout(p.current),p.current=null)},[]),P=i.useCallback(R=>{j.current&&ee(R)},[]),Fe=i.useCallback(R=>{w.current=R},[]),Se=i.useCallback((R,_={})=>({title:R,content:r()??n,createdAt:Date.now(),baseUpdatedAt:w.current,..._.layout?{layout:_.layout}:{}}),[r,n]),te=i.useCallback(()=>{h.current&&Ye(e,h.current)},[e]),fe=i.useCallback(R=>{b.current=!0,P("conflict"),H.current(R??w.current)},[P]),J=i.useCallback(async({ignoreConflict:R=!1,silent:_=!1}={})=>{if(v.current)return A.current=!0,C.current??"idle";const ne=h.current!==null,Ae=I.current?.()??!1;if(!ne&&!Ae)return A.current=!1,"idle";const re=x.current;A.current=!1,L(),v.current=!0,_||P("saving");const K=(async()=>{const z=await W.current?.()??"idle";if(re!==x.current)return"idle";if(z==="error")return v.current=!1,C.current=null,h.current?P("error"):P("saved"),"error";const T=h.current;if(!T)return v.current=!1,C.current=null,P("saved"),z;h.current=null;const Re=async()=>{if(re!==x.current)return"idle";let V;try{V=await Ge({id:e,title:T.title,content:T.content,...T.layout?{layout:T.layout}:{},editSessionId:s.current,...R?{force:!0}:{expectedUpdatedAt:w.current}})}catch{V={type:"error",category:"network",errors:[{code:"NETWORK_ERROR",message:"Failed to save note."}]}}if(re!==x.current)return"idle";if(V.type==="error"){v.current=!1,C.current=null,h.current||(h.current=T),te();const Y=V.errors[0];if(Y.code===ro&&!R){const q=Y.details?.extensions?.currentUpdatedAt;return b.current=!0,!_&&j.current&&(P("conflict"),H.current(q??w.current)),"conflict"}return!_&&j.current&&(P("error"),ge.current(Y.message)),"error"}const se=!_&&j.current,Z=D.notes.detail(e);if(await g.cancelQueries({queryKey:Z,exact:!0}),re!==x.current)return"idle";v.current=!1,C.current=null,b.current=!1,w.current=V.updateNote.updatedAt,se&&B.current(V.updateNote.updatedAt),g.setQueryData(Z,Y=>Y&&{...Y,title:V.updateNote.title,content:T.content,...T.layout?{layout:T.layout}:{},updatedAt:V.updateNote.updatedAt}),zt({noteId:e,updatedAt:V.updateNote.updatedAt,editSessionId:s.current});const F=h.current;return F?.baseUpdatedAt===T.baseUpdatedAt?(h.current={...F,baseUpdatedAt:V.updateNote.updatedAt},te()):F||Qe(e),h.current||Vt(g),se&&(h.current?ee("pending"):ee("saved")),"saved"},ie=xe.current?await xe.current(Re):await Re();return ie?ie==="saved"&&(h.current||A.current)?J({silent:_}):ie:(h.current||(h.current=T),te(),v.current=!1,C.current=null,P("pending"),"idle")})();return C.current=K,K},[L,s,e,te,g,w,P]),ye=i.useCallback((R,_={})=>{if(h.current=R,Ye(e,R),b.current){P("conflict");return}if(P("pending"),L(),_.immediate){J();return}p.current=window.setTimeout(()=>{J()},no)},[L,J,e,P]),He=i.useCallback(R=>{if(h.current=R,Ye(e,R),ue(null),R.baseUpdatedAt!==w.current){fe(w.current);return}ye(R)},[e,ye,fe]),Ie=i.useCallback(()=>{x.current+=1,L(),h.current=null,v.current=!1,C.current=null,A.current=!1,b.current=!1,Qe(e),ue(null),ee("saved")},[L,e]),$e=i.useCallback(()=>{L(),C.current=null,A.current=!1,b.current=!1,P(h.current?"pending":"saved")},[L,P]),Ee=i.useCallback(()=>{Qe(e),ue(null)},[e]),Ue=i.useCallback(()=>h.current,[]),be=i.useCallback(R=>{L(),fe(R)},[L,fe]);return i.useEffect(()=>{W.current=o,xe.current=u,I.current=c,H.current=m,ge.current=f,B.current=d},[o,u,c,m,f,d]),i.useEffect(()=>(j.current=!0,()=>{j.current=!1}),[]),i.useEffect(()=>{h.current||v.current||b.current||(w.current=t,ee("saved"))},[t]),i.useEffect(()=>{x.current+=1,h.current=null,v.current=!1,C.current=null,A.current=!1,b.current=!1,w.current=t,ue(to(e)),ee("saved")},[e]),i.useEffect(()=>{const R=_=>{!h.current&&!v.current&&!b.current&&!I.current?.()||(_.preventDefault(),_.returnValue="")};return window.addEventListener("beforeunload",R),()=>{window.removeEventListener("beforeunload",R)}},[]),i.useEffect(()=>()=>{L(),h.current&&!b.current&&J({silent:!0})},[L,J]),{saveStatus:oe,localDraft:de,serverUpdatedAtRef:w,hasUnsavedChanges:oe!=="saved",buildDraft:Se,queueSave:ye,flushPendingSave:J,restoreLocalDraft:He,discardLocalDraft:Ee,clearDrafts:Ie,resolveConflict:$e,pauseForConflict:be,getPendingDraft:Ue,setServerUpdatedAt:Fe}}function ao(){const e=i.useRef(Promise.resolve()),n=i.useRef(0),t=i.useRef(0),[s,r]=i.useState(!1),o=i.useCallback(d=>{t.current+=1,r(!0);const m=n.current,f=()=>m===n.current?d():void 0,g=e.current.then(f,f);e.current=g.then(()=>{},()=>{});const p=()=>{t.current-=1,t.current===0&&r(!1)};return g.then(p,p),g},[]),c=i.useCallback(()=>{n.current+=1},[]),l=i.useCallback(()=>e.current,[]),u=i.useCallback(()=>t.current>0,[]);return i.useMemo(()=>({execute:o,invalidatePending:c,drain:l,isBusy:s,hasPendingWrites:u}),[l,o,u,c,s])}const oo="NOTE_UPDATE_CONFLICT",qe=e=>{const n=Ne(e);return G(n??Number(e)).format("YYYY-MM-DD HH:mm:ss")},io=e=>e?.extensions?.currentUpdatedAt;function co({noteId:e,navigateToNote:n,notify:t}){const s=st(),r=i.useRef(null),o=i.useRef(null),[c]=i.useState(bt),l=i.useRef(c),u=i.useRef(null),d=i.useRef(null),m=i.useRef(!1),f=i.useRef(0),g=rt({queryKey:D.notes.detail(e),queryFn:async()=>{const y=await rr(e);if(y.type==="error")throw y;return y.note},gcTime:0}),p=g.data,h=g.refetch,v=i.useRef(p.updatedAt),C=i.useRef(p.updatedAt),[A,k]=i.useState(p.title),[w,x]=i.useState(p.properties),[b,j]=i.useState(p.pinned),[B,H]=i.useState(p.layout||"wide"),ge=i.useRef(B),[W,I]=i.useState(null),[xe,oe]=i.useState(null),[ee,de]=i.useState(0),[ue,L]=i.useState(null),P=i.useCallback(()=>L(null),[]),[Fe,Se]=i.useState(!1),te=i.useRef(!1),[fe,J]=i.useState(()=>qe(p.updatedAt)),[ye,He]=i.useState(p.updatedAt),[Ie,$e]=i.useState(0),[Ee,Ue]=i.useState(!1),be=i.useRef(!1),{execute:R,invalidatePending:_,drain:ne,isBusy:Ae,hasPendingWrites:re}=ao(),K=i.useCallback(y=>{ge.current=y,H(y)},[]),z=i.useCallback((y,N={})=>{v.current=y,C.current=y,J(qe(y)),He(y),N.confirmSave&&$e(E=>E+1)},[]),T=i.useCallback(async({updatedAt:y,patch:N,confirmSave:E=!0})=>{const $=D.notes.detail(e),ve=f.current;return await s.cancelQueries({queryKey:$,exact:!0}),ve!==f.current?!1:(z(y,{confirmSave:E}),s.setQueryData($,Ve=>Ve&&{...Ve,...N,updatedAt:y}),zt({noteId:e,updatedAt:y,editSessionId:l.current}),Vt(s),!0)},[z,e,s]),Re=i.useCallback(y=>{be.current=y,Ue(y)},[]),ie=i.useCallback(()=>u.current?.flushPendingSave({expectedUpdatedAt:v.current})??Promise.resolve("idle"),[]),V=so({noteId:e,initialContent:p.content,initialUpdatedAt:C.current,editSessionIdRef:l,serverVersionRef:v,executeWrite:R,getContent:()=>r.current?.getContent(),beforeSave:ie,hasExternalPendingChanges:()=>be.current||re(),onSaved:y=>{d.current=null,z(y,{confirmSave:!0})},onConflict:y=>{I({type:"updated",updatedAt:y,source:"unknown"}),t("This note changed elsewhere. Choose how to resolve the draft.")},onError:t}),{saveStatus:se,localDraft:Z,serverUpdatedAtRef:F,hasUnsavedChanges:Y,buildDraft:q,queueSave:ae,flushPendingSave:X,restoreLocalDraft:ut,discardLocalDraft:Mn,clearDrafts:pe,resolveConflict:ft,pauseForConflict:me,getPendingDraft:Q}=V,he=Y||Ee||Ae,pt=i.useCallback(async y=>{const N=await X(y);return N==="error"||N==="conflict"||await ne(),N},[ne,X]),Dn=i.useCallback(y=>R(async()=>{const N=await sr({...y,expectedUpdatedAt:v.current});return N.type==="success"&&await T({updatedAt:N.updateNoteProperties.updatedAt,patch:{properties:N.updateNoteProperties.properties}}),N}),[T,R]);eo({allowNextNavigationRef:m,hasExternalPendingChanges:Ee||Ae,saveStatus:se,flushPendingChanges:pt,notify:t}),i.useEffect(()=>{if(he||Q()){p.updatedAt!==F.current&&(De(p.updatedAt,F.current)??0)>0&&me(p.updatedAt);return}const y=C.current;if(!(y&&p.updatedAt!==y&&(De(p.updatedAt,y)??0)<0)&&(j(p.pinned),x(p.properties),K(p.layout||"wide"),k(p.title),y!==p.updatedAt)){const N=r.current?.getContent();z(p.updatedAt),(N===void 0||N!==p.content)&&(L(te.current&&N!==void 0?{previousContent:N,viewport:r.current?.captureViewport()}:null),oe(null),de(E=>E+1)),te.current=!1}},[z,he,Q,p.content,p.layout,p.pinned,p.properties,p.title,p.updatedAt,me,F]),i.useEffect(()=>{W?.type!=="updated"||he||Q()||se==="conflict"||W.updatedAt!==p.updatedAt||(z(p.updatedAt),I(null))},[z,W,Q,he,p.updatedAt,se]),i.useEffect(()=>{let y=!0;const N=mr(E=>{const $=Ja({event:E,noteId:e,editSessionId:l.current,loadedUpdatedAt:p.updatedAt,acceptedUpdatedAt:F.current,hasUnsavedChanges:he||Q()!==null||be.current||re()});$.type!=="ignore"&&($.shouldPauseSave&&$.change.type==="updated"&&me($.change.updatedAt),I($.change),E.type==="mcp.note.updated"&&!$.shouldPauseSave&&(te.current=!0,Se(!1),h().then(ve=>{y&&ve.error&&Se(!0)})))});return()=>{y=!1,N()}},[Q,re,he,p.updatedAt,e,me,h,F]);const Ln=i.useCallback(()=>{ae(q(A))},[q,ae,A]),_n=i.useCallback(y=>{k(y),ae(q(y))},[q,ae]),Pn=i.useCallback(()=>{ae(q(A),{immediate:!0})},[q,ae,A]),On=i.useCallback(async y=>{if(Y){K(y),ae(q(A,{layout:y}),{immediate:!0}),t("Layout will be saved with your draft.");return}const N=await X();N==="error"||N==="conflict"||await R(async()=>{const E=await Ge({id:e,layout:y,editSessionId:l.current,expectedUpdatedAt:F.current});if(E.type==="error"){E.errors[0].code===oo&&(d.current=y,K(y),me(io(E.errors[0].details)??F.current)),t(E.errors[0].message);return}await T({updatedAt:E.updateNote.updatedAt,patch:{layout:y}})&&(d.current=null,K(y),t("Layout has been updated."))})},[T,q,R,X,Y,e,t,me,ae,F,A]),Bn=i.useCallback(async()=>{const y=await X();if(y==="error"||y==="conflict")return;const N=!b;await R(async()=>{const E=await ar(e,N);if(E.type==="error"){t(E.errors[0].message);return}await T({updatedAt:E.pinNote.updatedAt,patch:{pinned:N},confirmSave:!1})&&j(N)})},[T,R,X,b,e,t]),ze=i.useCallback(()=>({id:e,title:A,createdAt:p.createdAt,updatedAt:F.current||p.updatedAt}),[p.createdAt,p.updatedAt,e,F,A]),Fn=i.useCallback(async()=>{const y=r.current?.getMarkdown();if(y===void 0){t("Markdown is not ready yet.");return}try{await navigator.clipboard.writeText(fn(y,ze())),t("Copied note as Markdown.")}catch{t("Failed to copy Markdown.")}},[ze,t]),Hn=i.useCallback(async()=>{u.current?.invalidateInFlightSave(),_(),await ne(),f.current+=1;const y=await h();if(y.error||!y.data){t("Failed to reload the latest note state.");return}u.current?.discardPendingChanges(),pe(),d.current=null,z(y.data.updatedAt),k(y.data.title),x(y.data.properties),K(y.data.layout||"wide"),L(null),oe(null),de(N=>N+1),I(null)},[pe,z,ne,_,t,h]),In=i.useCallback(async()=>{if(Q()){d.current=null,I(null),await X({ignoreConflict:!0});return}const N=d.current;if(!N){I(null),await X({ignoreConflict:!0});return}await R(async()=>{const E=await Ge({id:e,layout:N,editSessionId:l.current,force:!0});if(E.type==="error"){t(E.errors[0].message);return}await T({updatedAt:E.updateNote.updatedAt,patch:{layout:N}})&&(d.current=null,ft(),I(null),K(N))})},[T,R,X,Q,e,t,ft]),$n=i.useCallback(async()=>{const y=Q();if(!y||await ie()==="error")return;const E=await or({title:mt(y.title||"untitled"),content:mt(y.content),layout:y.layout??B});if(E.type==="error"){t(E.errors[0].message);return}m.current=!0,d.current=null,I(null),pe(),Promise.resolve(n(E.createNote.id)).finally(()=>{m.current=!1})},[pe,ie,Q,B,n,t]),Un=i.useCallback(()=>{Z&&(k(Z.title),Z.layout&&K(Z.layout),oe(Z.content),L(null),de(y=>y+1),ut(Z))},[Z,ut]),zn=i.useCallback(()=>{},[]),Vn=i.useCallback(async y=>(u.current?.invalidateInFlightSave(),_(),await ne(),f.current+=1,R(async()=>{const N=await ir(y,F.current);if(N.type==="error")return N;const E=N.restoreNoteSnapshot;return await T({updatedAt:E.updatedAt,patch:{title:E.title,content:E.content,layout:E.layout,pinned:E.pinned}})&&(l.current=bt(),u.current?.discardPendingChanges(),pe(),d.current=null,I(null),k(E.title),K(E.layout||"wide"),j(E.pinned),oe(E.content),L(null),de(ve=>ve+1)),N})),[T,pe,ne,R,_]),ke=se==="conflict"&&W?.type==="updated",Zn=ke?Q():null;return{document:{title:A,titleRef:o,isPinned:b,layout:B,getLayout:()=>ge.current,properties:w,createdAt:qe(p.createdAt),onTitleChange:_n,onLayoutSave:On,onTogglePinned:Bn},editor:{ref:r,key:`${e}:${ee}`,content:xe??p.content,externalUpdate:ue,onClearChangeMarks:P,getContent:()=>r.current?.getContent()??"",getHtml:()=>r.current?.getHtml(),getMarkdown:()=>r.current?.getMarkdown(),onChange:Ln},save:{status:se,lastSavedAt:fe,lastSavedVersion:ye,confirmationRevision:Ie,onManualSave:Pn,flushPendingChanges:pt},recovery:{localDraftCreatedAt:Z?G(Z.createdAt).format("YYYY-MM-DD HH:mm:ss"):null,onRestoreLocalDraft:Un,onDiscardLocalDraft:Mn,onClonePendingDraft:$n},externalChange:{value:W,isConflict:ke,hasConflictDraft:Zn!==null,isBlocking:!(W?.source==="mcp"&&W.type==="updated"&&!ke&&!Fe)&&Xa({change:W,isConflict:ke,loadedUpdatedAt:p.updatedAt}),isReloading:g.isRefetching,onReload:Hn,onOverwrite:In},properties:{ref:u,expectedUpdatedAt:F.current,editSessionId:l.current,saveProperties:Dn,onPendingChange:Re,onSaved:zn},exportDocument:{metadata:ze(),onCopyMarkdown:Fn},snapshots:{restore:Vn}}}const Tn=cr(Oe),lo={narrow:"max-w-[640px]",wide:"max-w-[896px]",full:"max-w-full px-4"},uo=a.jsx(ot,{title:"Loading note",variant:"none",children:a.jsxs("main",{className:"mx-auto max-w-[896px]",children:[a.jsx(ce,{className:"mb-8",height:123}),a.jsxs("div",{className:"flex flex-col gap-5",children:[a.jsx(ce,{height:135}),a.jsx(ce,{className:"ml-12",height:320}),a.jsx(ce,{height:107}),a.jsx(ce,{height:100})]})]})});function fo({noteId:e}){return a.jsx(at,{fallback:a.jsx(ce,{height:107}),errorTitle:"Failed to load reminders",errorDescription:"Retry loading reminder details for this note.",renderError:({error:n,retry:t})=>a.jsx(it,{title:"Failed to load reminders",description:"Retry loading reminder details for this note.",error:n,onRetry:t,showBackAction:!1,showHomeAction:!1}),children:a.jsx(Ls,{noteId:e})})}function po({noteId:e}){return a.jsx(at,{fallback:a.jsx(ce,{height:100}),errorTitle:"Failed to load back references",errorDescription:"Retry loading notes that link back here.",renderError:({error:n,retry:t})=>a.jsx(it,{title:"Failed to load back references",description:"Retry loading notes that link back here.",error:n,onRetry:t,showBackAction:!1,showHomeAction:!1}),children:a.jsx(es,{noteId:e,render:n=>n?.length?a.jsx(Wt,{icon:a.jsx(Kr,{className:"h-3.5 w-3.5"}),title:"Back References",children:a.jsx("ul",{className:"flex flex-col",children:n.map(t=>a.jsx("li",{children:a.jsxs(lr,{to:Oe,params:{id:t.id},className:"flex items-center gap-2 rounded-[10px] px-2.5 py-1.5 text-fg-secondary transition-colors hover:bg-hover-subtle hover:text-fg-default",children:[a.jsx(Wr,{className:"h-3.5 w-3.5 shrink-0 text-fg-tertiary"}),a.jsx(S,{as:"span",variant:"body",weight:"medium",className:"text-current",children:t.title})]})},t.id))})}):null})})}function mo({id:e}){const n=_e(),t=Tn.useNavigate(),[s,r]=i.useState(!1),[o,c]=i.useState(!1),[l,u]=i.useState(!1),d=co({noteId:e,notify:n,navigateToNote:H=>t({to:Oe,params:{id:H}})}),{onCreate:m,onDelete:f,deleteWarningDialog:g}=hr(),{document:p,editor:h,save:v,recovery:C,externalChange:A,properties:k,exportDocument:w,snapshots:x}=d,b=()=>t({to:Sr,search:{page:1}}),j=async()=>{const H=await v.flushPendingChanges();H==="error"||H==="conflict"||await f(e,b)},B=async()=>{const H=await v.flushPendingChanges();H==="error"||H==="conflict"||await m(p.titleRef.current?.value||"untitled",h.getContent(),p.getLayout())};return a.jsx(ot,{title:p.title,variant:"none",children:a.jsxs("main",{className:U("mx-auto",lo[p.layout]),children:[a.jsx(os,{title:p.title,titleRef:p.titleRef,isPinned:p.isPinned,createdAt:p.createdAt,saveStatus:v.status,savedAt:v.lastSavedAt,savedVersion:v.lastSavedVersion,saveConfirmationRevision:v.confirmationRevision,onTitleChange:p.onTitleChange,onCopyMarkdown:()=>{w.onCopyMarkdown()},onDownloadDocument:()=>u(!0),onTogglePinned:()=>{p.onTogglePinned()},onChangeLayout:()=>r(!0),onCloneNote:()=>{B()},onRestoreVersion:()=>c(!0),onDelete:()=>{j()},onSave:v.onManualSave}),a.jsx(Ms,{localDraftCreatedAt:C.localDraftCreatedAt,hasSaveError:v.status==="error",onRestoreDraft:C.onRestoreLocalDraft,onDiscardDraft:C.onDiscardLocalDraft,onRetrySave:v.onManualSave,onSaveAsNewNote:()=>{C.onClonePendingDraft()}}),a.jsxs("div",{className:"flex flex-col gap-5",children:[a.jsx(wr,{ref:k.ref,noteId:e,properties:p.properties,expectedUpdatedAt:k.expectedUpdatedAt,editSessionId:k.editSessionId,disabled:v.status!=="saved",saveProperties:k.saveProperties,onPendingChange:k.onPendingChange,onSaved:k.onSaved}),a.jsx(Ga,{ref:h.ref,content:h.content,currentNoteId:e,onChange:h.onChange,externalUpdate:h.externalUpdate,onClearChangeMarks:h.onClearChangeMarks},h.key),a.jsx(fo,{noteId:e}),a.jsx(po,{noteId:e})]}),a.jsx(rs,{isOpen:s,onClose:()=>r(!1),onSave:p.onLayoutSave,currentLayout:p.layout}),a.jsx(Ts,{isOpen:A.isBlocking,isDeleted:A.value?.type==="deleted",isConflict:A.isConflict,hasDraft:A.hasConflictDraft,source:A.value?.source??"unknown",isReloading:A.isReloading,onReload:()=>{A.onReload()},onOverwrite:()=>{A.onOverwrite()},onCloneDraft:()=>{C.onClonePendingDraft()},onOpenTrash:()=>{b()}}),a.jsx(Rs,{isOpen:l,metadata:w.metadata,getHtml:h.getHtml,getMarkdown:h.getMarkdown,onClose:()=>u(!1)}),a.jsx(Ds,{isOpen:o,noteId:e,onClose:()=>c(!1),restoreSnapshot:x.restore}),g]})})}function Bo(){const{id:e}=Tn.useParams();if(!e)throw new Error("Note id is required.");return a.jsx(at,{fallback:uo,errorTitle:"Failed to load note",errorDescription:"Retry loading the note editor.",resetKeys:[e],renderError:({error:n,retry:t})=>a.jsx(ot,{title:"Note",variant:"none",children:a.jsx(it,{title:"Failed to load note",description:"Retry loading the note editor.",error:n,onRetry:t})}),children:a.jsx(mo,{id:e},e)})}export{mo as NoteContent,Bo as default};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{j as J,q as Et,g as Kt,r as lt}from"./floating-ui.react-dom-BWTnA00G.js";import{a as Ht,n as Yt,j as qt}from"./useNoteMutate-
|
|
1
|
+
import{j as J,q as Et,g as Kt,r as lt}from"./floating-ui.react-dom-BWTnA00G.js";import{a as Ht,n as Yt,j as qt}from"./useNoteMutate-BQj6jHhV.js";import{c as Ct,u as Vt,q as Nt,Z as Xt,T as gt,h as Dt,i as It,I as Pt,B as kt,G as Jt,_ as $t,$ as Qt,a0 as te,a1 as ee,a2 as re,a3 as ne,F as jt,e as ie,w as ae}from"./time-Kh6oav5R.js";import{A as se}from"./AuxiliaryPanelHeader-Bys98BJJ.js";import{b as Ft}from"./url-Bp8sXMb4.js";import{p as oe}from"./LinkSimple.es-iJvLf-MB.js";import{n as Ut}from"./Plus.es-Dmb3oijD.js";function le({title:nt,icon:ft,action:m,titleButtonProps:D,ariaLabel:b,className:o,children:l}){const n=l!=null&&l!==!1,h=m!=null&&m!==!1,v=J.jsx(se,{icon:ft,title:nt,className:"text-fg-tertiary"});return J.jsxs("section",{className:Ct("surface-base p-4",o),"aria-label":b??nt,children:[J.jsxs("div",{className:Ct("relative",h&&"pr-44 sm:pr-48",n&&"mb-3"),children:[D?J.jsx("button",{...D,type:"button",className:Ct("focus-ring-soft -m-1 flex items-center gap-2 rounded-[10px] p-1 text-fg-tertiary transition-colors hover:bg-hover-subtle hover:text-fg-default",D.className),children:v}):v,h&&J.jsx("div",{className:"absolute top-1/2 right-0 flex -translate-y-1/2 items-center gap-2",children:m})]}),l]})}function zt(nt){throw new Error('Could not dynamically require "'+nt+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var Tt={exports:{}};var Lt;function ue(){return Lt||(Lt=1,(function(nt,ft){(function(m){nt.exports=m()})(function(){return(function m(D,b,o){function l(v,k){if(!b[v]){if(!D[v]){var _=typeof zt=="function"&&zt;if(!k&&_)return _(v,!0);if(n)return n(v,!0);var g=new Error("Cannot find module '"+v+"'");throw g.code="MODULE_NOT_FOUND",g}var i=b[v]={exports:{}};D[v][0].call(i.exports,function(c){var r=D[v][1][c];return l(r||c)},i,i.exports,m,D,b,o)}return b[v].exports}for(var n=typeof zt=="function"&&zt,h=0;h<o.length;h++)l(o[h]);return l})({1:[function(m,D,b){var o=m("./utils"),l=m("./support"),n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";b.encode=function(h){for(var v,k,_,g,i,c,r,u=[],a=0,d=h.length,w=d,E=o.getTypeOf(h)!=="string";a<h.length;)w=d-a,_=E?(v=h[a++],k=a<d?h[a++]:0,a<d?h[a++]:0):(v=h.charCodeAt(a++),k=a<d?h.charCodeAt(a++):0,a<d?h.charCodeAt(a++):0),g=v>>2,i=(3&v)<<4|k>>4,c=1<w?(15&k)<<2|_>>6:64,r=2<w?63&_:64,u.push(n.charAt(g)+n.charAt(i)+n.charAt(c)+n.charAt(r));return u.join("")},b.decode=function(h){var v,k,_,g,i,c,r=0,u=0,a="data:";if(h.substr(0,a.length)===a)throw new Error("Invalid base64 input, it looks like a data url.");var d,w=3*(h=h.replace(/[^A-Za-z0-9+/=]/g,"")).length/4;if(h.charAt(h.length-1)===n.charAt(64)&&w--,h.charAt(h.length-2)===n.charAt(64)&&w--,w%1!=0)throw new Error("Invalid base64 input, bad content length.");for(d=l.uint8array?new Uint8Array(0|w):new Array(0|w);r<h.length;)v=n.indexOf(h.charAt(r++))<<2|(g=n.indexOf(h.charAt(r++)))>>4,k=(15&g)<<4|(i=n.indexOf(h.charAt(r++)))>>2,_=(3&i)<<6|(c=n.indexOf(h.charAt(r++))),d[u++]=v,i!==64&&(d[u++]=k),c!==64&&(d[u++]=_);return d}},{"./support":30,"./utils":32}],2:[function(m,D,b){var o=m("./external"),l=m("./stream/DataWorker"),n=m("./stream/Crc32Probe"),h=m("./stream/DataLengthProbe");function v(k,_,g,i,c){this.compressedSize=k,this.uncompressedSize=_,this.crc32=g,this.compression=i,this.compressedContent=c}v.prototype={getContentWorker:function(){var k=new l(o.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new h("data_length")),_=this;return k.on("end",function(){if(this.streamInfo.data_length!==_.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")}),k},getCompressedWorker:function(){return new l(o.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},v.createWorkerFrom=function(k,_,g){return k.pipe(new n).pipe(new h("uncompressedSize")).pipe(_.compressWorker(g)).pipe(new h("compressedSize")).withStreamInfo("compression",_)},D.exports=v},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(m,D,b){var o=m("./stream/GenericWorker");b.STORE={magic:"\0\0",compressWorker:function(){return new o("STORE compression")},uncompressWorker:function(){return new o("STORE decompression")}},b.DEFLATE=m("./flate")},{"./flate":7,"./stream/GenericWorker":28}],4:[function(m,D,b){var o=m("./utils"),l=(function(){for(var n,h=[],v=0;v<256;v++){n=v;for(var k=0;k<8;k++)n=1&n?3988292384^n>>>1:n>>>1;h[v]=n}return h})();D.exports=function(n,h){return n!==void 0&&n.length?o.getTypeOf(n)!=="string"?(function(v,k,_,g){var i=l,c=g+_;v^=-1;for(var r=g;r<c;r++)v=v>>>8^i[255&(v^k[r])];return-1^v})(0|h,n,n.length,0):(function(v,k,_,g){var i=l,c=g+_;v^=-1;for(var r=g;r<c;r++)v=v>>>8^i[255&(v^k.charCodeAt(r))];return-1^v})(0|h,n,n.length,0):0}},{"./utils":32}],5:[function(m,D,b){b.base64=!1,b.binary=!1,b.dir=!1,b.createFolders=!0,b.date=null,b.compression=null,b.compressionOptions=null,b.comment=null,b.unixPermissions=null,b.dosPermissions=null},{}],6:[function(m,D,b){var o=null;o=typeof Promise<"u"?Promise:m("lie"),D.exports={Promise:o}},{lie:37}],7:[function(m,D,b){var o=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Uint32Array<"u",l=m("pako"),n=m("./utils"),h=m("./stream/GenericWorker"),v=o?"uint8array":"array";function k(_,g){h.call(this,"FlateWorker/"+_),this._pako=null,this._pakoAction=_,this._pakoOptions=g,this.meta={}}b.magic="\b\0",n.inherits(k,h),k.prototype.processChunk=function(_){this.meta=_.meta,this._pako===null&&this._createPako(),this._pako.push(n.transformTo(v,_.data),!1)},k.prototype.flush=function(){h.prototype.flush.call(this),this._pako===null&&this._createPako(),this._pako.push([],!0)},k.prototype.cleanUp=function(){h.prototype.cleanUp.call(this),this._pako=null},k.prototype._createPako=function(){this._pako=new l[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var _=this;this._pako.onData=function(g){_.push({data:g,meta:_.meta})}},b.compressWorker=function(_){return new k("Deflate",_)},b.uncompressWorker=function(){return new k("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(m,D,b){function o(i,c){var r,u="";for(r=0;r<c;r++)u+=String.fromCharCode(255&i),i>>>=8;return u}function l(i,c,r,u,a,d){var w,E,S=i.file,T=i.compression,O=d!==v.utf8encode,U=n.transformTo("string",d(S.name)),I=n.transformTo("string",v.utf8encode(S.name)),W=S.comment,q=n.transformTo("string",d(W)),p=n.transformTo("string",v.utf8encode(W)),R=I.length!==S.name.length,e=p.length!==W.length,N="",X="",L="",Q=S.dir,Z=S.date,$={crc32:0,compressedSize:0,uncompressedSize:0};c&&!r||($.crc32=i.crc32,$.compressedSize=i.compressedSize,$.uncompressedSize=i.uncompressedSize);var A=0;c&&(A|=8),O||!R&&!e||(A|=2048);var y=0,H=0;Q&&(y|=16),a==="UNIX"?(H=798,y|=(function(j,at){var ut=j;return j||(ut=at?16893:33204),(65535&ut)<<16})(S.unixPermissions,Q)):(H=20,y|=(function(j){return 63&(j||0)})(S.dosPermissions)),w=Z.getUTCHours(),w<<=6,w|=Z.getUTCMinutes(),w<<=5,w|=Z.getUTCSeconds()/2,E=Z.getUTCFullYear()-1980,E<<=4,E|=Z.getUTCMonth()+1,E<<=5,E|=Z.getUTCDate(),R&&(X=o(1,1)+o(k(U),4)+I,N+="up"+o(X.length,2)+X),e&&(L=o(1,1)+o(k(q),4)+p,N+="uc"+o(L.length,2)+L);var K="";return K+=`
|
|
2
2
|
\0`,K+=o(A,2),K+=T.magic,K+=o(w,2),K+=o(E,2),K+=o($.crc32,4),K+=o($.compressedSize,4),K+=o($.uncompressedSize,4),K+=o(U.length,2),K+=o(N.length,2),{fileRecord:_.LOCAL_FILE_HEADER+K+U+N,dirRecord:_.CENTRAL_FILE_HEADER+o(H,2)+K+o(q.length,2)+"\0\0\0\0"+o(y,4)+o(u,4)+U+N+q}}var n=m("../utils"),h=m("../stream/GenericWorker"),v=m("../utf8"),k=m("../crc32"),_=m("../signature");function g(i,c,r,u){h.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=c,this.zipPlatform=r,this.encodeFileName=u,this.streamFiles=i,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}n.inherits(g,h),g.prototype.push=function(i){var c=i.meta.percent||0,r=this.entriesCount,u=this._sources.length;this.accumulate?this.contentBuffer.push(i):(this.bytesWritten+=i.data.length,h.prototype.push.call(this,{data:i.data,meta:{currentFile:this.currentFile,percent:r?(c+100*(r-u-1))/r:100}}))},g.prototype.openedSource=function(i){this.currentSourceOffset=this.bytesWritten,this.currentFile=i.file.name;var c=this.streamFiles&&!i.file.dir;if(c){var r=l(i,c,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:r.fileRecord,meta:{percent:0}})}else this.accumulate=!0},g.prototype.closedSource=function(i){this.accumulate=!1;var c=this.streamFiles&&!i.file.dir,r=l(i,c,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(r.dirRecord),c)this.push({data:(function(u){return _.DATA_DESCRIPTOR+o(u.crc32,4)+o(u.compressedSize,4)+o(u.uncompressedSize,4)})(i),meta:{percent:100}});else for(this.push({data:r.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},g.prototype.flush=function(){for(var i=this.bytesWritten,c=0;c<this.dirRecords.length;c++)this.push({data:this.dirRecords[c],meta:{percent:100}});var r=this.bytesWritten-i,u=(function(a,d,w,E,S){var T=n.transformTo("string",S(E));return _.CENTRAL_DIRECTORY_END+"\0\0\0\0"+o(a,2)+o(a,2)+o(d,4)+o(w,4)+o(T.length,2)+T})(this.dirRecords.length,r,i,this.zipComment,this.encodeFileName);this.push({data:u,meta:{percent:100}})},g.prototype.prepareNextSource=function(){this.previous=this._sources.shift(),this.openedSource(this.previous.streamInfo),this.isPaused?this.previous.pause():this.previous.resume()},g.prototype.registerPrevious=function(i){this._sources.push(i);var c=this;return i.on("data",function(r){c.processChunk(r)}),i.on("end",function(){c.closedSource(c.previous.streamInfo),c._sources.length?c.prepareNextSource():c.end()}),i.on("error",function(r){c.error(r)}),this},g.prototype.resume=function(){return!!h.prototype.resume.call(this)&&(!this.previous&&this._sources.length?(this.prepareNextSource(),!0):this.previous||this._sources.length||this.generatedError?void 0:(this.end(),!0))},g.prototype.error=function(i){var c=this._sources;if(!h.prototype.error.call(this,i))return!1;for(var r=0;r<c.length;r++)try{c[r].error(i)}catch{}return!0},g.prototype.lock=function(){h.prototype.lock.call(this);for(var i=this._sources,c=0;c<i.length;c++)i[c].lock()},D.exports=g},{"../crc32":4,"../signature":23,"../stream/GenericWorker":28,"../utf8":31,"../utils":32}],9:[function(m,D,b){var o=m("../compressions"),l=m("./ZipFileWorker");b.generateWorker=function(n,h,v){var k=new l(h.streamFiles,v,h.platform,h.encodeFileName),_=0;try{n.forEach(function(g,i){_++;var c=(function(d,w){var E=d||w,S=o[E];if(!S)throw new Error(E+" is not a valid compression method !");return S})(i.options.compression,h.compression),r=i.options.compressionOptions||h.compressionOptions||{},u=i.dir,a=i.date;i._compressWorker(c,r).withStreamInfo("file",{name:g,dir:u,date:a,comment:i.comment||"",unixPermissions:i.unixPermissions,dosPermissions:i.dosPermissions}).pipe(k)}),k.entriesCount=_}catch(g){k.error(g)}return k}},{"../compressions":3,"./ZipFileWorker":8}],10:[function(m,D,b){function o(){if(!(this instanceof o))return new o;if(arguments.length)throw new Error("The constructor with parameters has been removed in JSZip 3.0, please check the upgrade guide.");this.files=Object.create(null),this.comment=null,this.root="",this.clone=function(){var l=new o;for(var n in this)typeof this[n]!="function"&&(l[n]=this[n]);return l}}(o.prototype=m("./object")).loadAsync=m("./load"),o.support=m("./support"),o.defaults=m("./defaults"),o.version="3.10.1",o.loadAsync=function(l,n){return new o().loadAsync(l,n)},o.external=m("./external"),D.exports=o},{"./defaults":5,"./external":6,"./load":11,"./object":15,"./support":30}],11:[function(m,D,b){var o=m("./utils"),l=m("./external"),n=m("./utf8"),h=m("./zipEntries"),v=m("./stream/Crc32Probe"),k=m("./nodejsUtils");function _(g){return new l.Promise(function(i,c){var r=g.decompressed.getContentWorker().pipe(new v);r.on("error",function(u){c(u)}).on("end",function(){r.streamInfo.crc32!==g.decompressed.crc32?c(new Error("Corrupted zip : CRC32 mismatch")):i()}).resume()})}D.exports=function(g,i){var c=this;return i=o.extend(i||{},{base64:!1,checkCRC32:!1,optimizedBinaryString:!1,createFolders:!1,decodeFileName:n.utf8decode}),k.isNode&&k.isStream(g)?l.Promise.reject(new Error("JSZip can't accept a stream when loading a zip file.")):o.prepareContent("the loaded zip file",g,!0,i.optimizedBinaryString,i.base64).then(function(r){var u=new h(i);return u.load(r),u}).then(function(r){var u=[l.Promise.resolve(r)],a=r.files;if(i.checkCRC32)for(var d=0;d<a.length;d++)u.push(_(a[d]));return l.Promise.all(u)}).then(function(r){for(var u=r.shift(),a=u.files,d=0;d<a.length;d++){var w=a[d],E=w.fileNameStr,S=o.resolve(w.fileNameStr);c.file(S,w.decompressed,{binary:!0,optimizedBinaryString:!0,date:w.date,dir:w.dir,comment:w.fileCommentStr.length?w.fileCommentStr:null,unixPermissions:w.unixPermissions,dosPermissions:w.dosPermissions,createFolders:i.createFolders}),w.dir||(c.file(S).unsafeOriginalName=E)}return u.zipComment.length&&(c.comment=u.zipComment),c})}},{"./external":6,"./nodejsUtils":14,"./stream/Crc32Probe":25,"./utf8":31,"./utils":32,"./zipEntries":33}],12:[function(m,D,b){var o=m("../utils"),l=m("../stream/GenericWorker");function n(h,v){l.call(this,"Nodejs stream input adapter for "+h),this._upstreamEnded=!1,this._bindStream(v)}o.inherits(n,l),n.prototype._bindStream=function(h){var v=this;(this._stream=h).pause(),h.on("data",function(k){v.push({data:k,meta:{percent:0}})}).on("error",function(k){v.isPaused?this.generatedError=k:v.error(k)}).on("end",function(){v.isPaused?v._upstreamEnded=!0:v.end()})},n.prototype.pause=function(){return!!l.prototype.pause.call(this)&&(this._stream.pause(),!0)},n.prototype.resume=function(){return!!l.prototype.resume.call(this)&&(this._upstreamEnded?this.end():this._stream.resume(),!0)},D.exports=n},{"../stream/GenericWorker":28,"../utils":32}],13:[function(m,D,b){var o=m("readable-stream").Readable;function l(n,h,v){o.call(this,h),this._helper=n;var k=this;n.on("data",function(_,g){k.push(_)||k._helper.pause(),v&&v(g)}).on("error",function(_){k.emit("error",_)}).on("end",function(){k.push(null)})}m("../utils").inherits(l,o),l.prototype._read=function(){this._helper.resume()},D.exports=l},{"../utils":32,"readable-stream":16}],14:[function(m,D,b){D.exports={isNode:typeof Buffer<"u",newBufferFrom:function(o,l){if(Buffer.from&&Buffer.from!==Uint8Array.from)return Buffer.from(o,l);if(typeof o=="number")throw new Error('The "data" argument must not be a number');return new Buffer(o,l)},allocBuffer:function(o){if(Buffer.alloc)return Buffer.alloc(o);var l=new Buffer(o);return l.fill(0),l},isBuffer:function(o){return Buffer.isBuffer(o)},isStream:function(o){return o&&typeof o.on=="function"&&typeof o.pause=="function"&&typeof o.resume=="function"}}},{}],15:[function(m,D,b){function o(S,T,O){var U,I=n.getTypeOf(T),W=n.extend(O||{},k);W.date=W.date||new Date,W.compression!==null&&(W.compression=W.compression.toUpperCase()),typeof W.unixPermissions=="string"&&(W.unixPermissions=parseInt(W.unixPermissions,8)),W.unixPermissions&&16384&W.unixPermissions&&(W.dir=!0),W.dosPermissions&&16&W.dosPermissions&&(W.dir=!0),W.dir&&(S=a(S)),W.createFolders&&(U=u(S))&&d.call(this,U,!0);var q=I==="string"&&W.binary===!1&&W.base64===!1;O&&O.binary!==void 0||(W.binary=!q),(T instanceof _&&T.uncompressedSize===0||W.dir||!T||T.length===0)&&(W.base64=!1,W.binary=!0,T="",W.compression="STORE",I="string");var p=null;p=T instanceof _||T instanceof h?T:c.isNode&&c.isStream(T)?new r(S,T):n.prepareContent(S,T,W.binary,W.optimizedBinaryString,W.base64);var R=new g(S,p,W);this.files[S]=R}var l=m("./utf8"),n=m("./utils"),h=m("./stream/GenericWorker"),v=m("./stream/StreamHelper"),k=m("./defaults"),_=m("./compressedObject"),g=m("./zipObject"),i=m("./generate"),c=m("./nodejsUtils"),r=m("./nodejs/NodejsStreamInputAdapter"),u=function(S){S.slice(-1)==="/"&&(S=S.substring(0,S.length-1));var T=S.lastIndexOf("/");return 0<T?S.substring(0,T):""},a=function(S){return S.slice(-1)!=="/"&&(S+="/"),S},d=function(S,T){return T=T!==void 0?T:k.createFolders,S=a(S),this.files[S]||o.call(this,S,null,{dir:!0,createFolders:T}),this.files[S]};function w(S){return Object.prototype.toString.call(S)==="[object RegExp]"}var E={load:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},forEach:function(S){var T,O,U;for(T in this.files)U=this.files[T],(O=T.slice(this.root.length,T.length))&&T.slice(0,this.root.length)===this.root&&S(O,U)},filter:function(S){var T=[];return this.forEach(function(O,U){S(O,U)&&T.push(U)}),T},file:function(S,T,O){if(arguments.length!==1)return S=this.root+S,o.call(this,S,T,O),this;if(w(S)){var U=S;return this.filter(function(W,q){return!q.dir&&U.test(W)})}var I=this.files[this.root+S];return I&&!I.dir?I:null},folder:function(S){if(!S)return this;if(w(S))return this.filter(function(I,W){return W.dir&&S.test(I)});var T=this.root+S,O=d.call(this,T),U=this.clone();return U.root=O.name,U},remove:function(S){S=this.root+S;var T=this.files[S];if(T||(S.slice(-1)!=="/"&&(S+="/"),T=this.files[S]),T&&!T.dir)delete this.files[S];else for(var O=this.filter(function(I,W){return W.name.slice(0,S.length)===S}),U=0;U<O.length;U++)delete this.files[O[U].name];return this},generate:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},generateInternalStream:function(S){var T,O={};try{if((O=n.extend(S||{},{streamFiles:!1,compression:"STORE",compressionOptions:null,type:"",platform:"DOS",comment:null,mimeType:"application/zip",encodeFileName:l.utf8encode})).type=O.type.toLowerCase(),O.compression=O.compression.toUpperCase(),O.type==="binarystring"&&(O.type="string"),!O.type)throw new Error("No output type specified.");n.checkSupport(O.type),O.platform!=="darwin"&&O.platform!=="freebsd"&&O.platform!=="linux"&&O.platform!=="sunos"||(O.platform="UNIX"),O.platform==="win32"&&(O.platform="DOS");var U=O.comment||this.comment||"";T=i.generateWorker(this,O,U)}catch(I){(T=new h("error")).error(I)}return new v(T,O.type||"string",O.mimeType)},generateAsync:function(S,T){return this.generateInternalStream(S).accumulate(T)},generateNodeStream:function(S,T){return(S=S||{}).type||(S.type="nodebuffer"),this.generateInternalStream(S).toNodejsStream(T)}};D.exports=E},{"./compressedObject":2,"./defaults":5,"./generate":9,"./nodejs/NodejsStreamInputAdapter":12,"./nodejsUtils":14,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31,"./utils":32,"./zipObject":35}],16:[function(m,D,b){D.exports=m("stream")},{stream:void 0}],17:[function(m,D,b){var o=m("./DataReader");function l(n){o.call(this,n);for(var h=0;h<this.data.length;h++)n[h]=255&n[h]}m("../utils").inherits(l,o),l.prototype.byteAt=function(n){return this.data[this.zero+n]},l.prototype.lastIndexOfSignature=function(n){for(var h=n.charCodeAt(0),v=n.charCodeAt(1),k=n.charCodeAt(2),_=n.charCodeAt(3),g=this.length-4;0<=g;--g)if(this.data[g]===h&&this.data[g+1]===v&&this.data[g+2]===k&&this.data[g+3]===_)return g-this.zero;return-1},l.prototype.readAndCheckSignature=function(n){var h=n.charCodeAt(0),v=n.charCodeAt(1),k=n.charCodeAt(2),_=n.charCodeAt(3),g=this.readData(4);return h===g[0]&&v===g[1]&&k===g[2]&&_===g[3]},l.prototype.readData=function(n){if(this.checkOffset(n),n===0)return[];var h=this.data.slice(this.zero+this.index,this.zero+this.index+n);return this.index+=n,h},D.exports=l},{"../utils":32,"./DataReader":18}],18:[function(m,D,b){var o=m("../utils");function l(n){this.data=n,this.length=n.length,this.index=0,this.zero=0}l.prototype={checkOffset:function(n){this.checkIndex(this.index+n)},checkIndex:function(n){if(this.length<this.zero+n||n<0)throw new Error("End of data reached (data length = "+this.length+", asked index = "+n+"). Corrupted zip ?")},setIndex:function(n){this.checkIndex(n),this.index=n},skip:function(n){this.setIndex(this.index+n)},byteAt:function(){},readInt:function(n){var h,v=0;for(this.checkOffset(n),h=this.index+n-1;h>=this.index;h--)v=(v<<8)+this.byteAt(h);return this.index+=n,v},readString:function(n){return o.transformTo("string",this.readData(n))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var n=this.readInt(4);return new Date(Date.UTC(1980+(n>>25&127),(n>>21&15)-1,n>>16&31,n>>11&31,n>>5&63,(31&n)<<1))}},D.exports=l},{"../utils":32}],19:[function(m,D,b){var o=m("./Uint8ArrayReader");function l(n){o.call(this,n)}m("../utils").inherits(l,o),l.prototype.readData=function(n){this.checkOffset(n);var h=this.data.slice(this.zero+this.index,this.zero+this.index+n);return this.index+=n,h},D.exports=l},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(m,D,b){var o=m("./DataReader");function l(n){o.call(this,n)}m("../utils").inherits(l,o),l.prototype.byteAt=function(n){return this.data.charCodeAt(this.zero+n)},l.prototype.lastIndexOfSignature=function(n){return this.data.lastIndexOf(n)-this.zero},l.prototype.readAndCheckSignature=function(n){return n===this.readData(4)},l.prototype.readData=function(n){this.checkOffset(n);var h=this.data.slice(this.zero+this.index,this.zero+this.index+n);return this.index+=n,h},D.exports=l},{"../utils":32,"./DataReader":18}],21:[function(m,D,b){var o=m("./ArrayReader");function l(n){o.call(this,n)}m("../utils").inherits(l,o),l.prototype.readData=function(n){if(this.checkOffset(n),n===0)return new Uint8Array(0);var h=this.data.subarray(this.zero+this.index,this.zero+this.index+n);return this.index+=n,h},D.exports=l},{"../utils":32,"./ArrayReader":17}],22:[function(m,D,b){var o=m("../utils"),l=m("../support"),n=m("./ArrayReader"),h=m("./StringReader"),v=m("./NodeBufferReader"),k=m("./Uint8ArrayReader");D.exports=function(_){var g=o.getTypeOf(_);return o.checkSupport(g),g!=="string"||l.uint8array?g==="nodebuffer"?new v(_):l.uint8array?new k(o.transformTo("uint8array",_)):new n(o.transformTo("array",_)):new h(_)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(m,D,b){b.LOCAL_FILE_HEADER="PK",b.CENTRAL_FILE_HEADER="PK",b.CENTRAL_DIRECTORY_END="PK",b.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK\x07",b.ZIP64_CENTRAL_DIRECTORY_END="PK",b.DATA_DESCRIPTOR="PK\x07\b"},{}],24:[function(m,D,b){var o=m("./GenericWorker"),l=m("../utils");function n(h){o.call(this,"ConvertWorker to "+h),this.destType=h}l.inherits(n,o),n.prototype.processChunk=function(h){this.push({data:l.transformTo(this.destType,h.data),meta:h.meta})},D.exports=n},{"../utils":32,"./GenericWorker":28}],25:[function(m,D,b){var o=m("./GenericWorker"),l=m("../crc32");function n(){o.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}m("../utils").inherits(n,o),n.prototype.processChunk=function(h){this.streamInfo.crc32=l(h.data,this.streamInfo.crc32||0),this.push(h)},D.exports=n},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(m,D,b){var o=m("../utils"),l=m("./GenericWorker");function n(h){l.call(this,"DataLengthProbe for "+h),this.propName=h,this.withStreamInfo(h,0)}o.inherits(n,l),n.prototype.processChunk=function(h){if(h){var v=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=v+h.data.length}l.prototype.processChunk.call(this,h)},D.exports=n},{"../utils":32,"./GenericWorker":28}],27:[function(m,D,b){var o=m("../utils"),l=m("./GenericWorker");function n(h){l.call(this,"DataWorker");var v=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,h.then(function(k){v.dataIsReady=!0,v.data=k,v.max=k&&k.length||0,v.type=o.getTypeOf(k),v.isPaused||v._tickAndRepeat()},function(k){v.error(k)})}o.inherits(n,l),n.prototype.cleanUp=function(){l.prototype.cleanUp.call(this),this.data=null},n.prototype.resume=function(){return!!l.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,o.delay(this._tickAndRepeat,[],this)),!0)},n.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(o.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},n.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var h=null,v=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case"string":h=this.data.substring(this.index,v);break;case"uint8array":h=this.data.subarray(this.index,v);break;case"array":case"nodebuffer":h=this.data.slice(this.index,v)}return this.index=v,this.push({data:h,meta:{percent:this.max?this.index/this.max*100:0}})},D.exports=n},{"../utils":32,"./GenericWorker":28}],28:[function(m,D,b){function o(l){this.name=l||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}o.prototype={push:function(l){this.emit("data",l)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(l){this.emit("error",l)}return!0},error:function(l){return!this.isFinished&&(this.isPaused?this.generatedError=l:(this.isFinished=!0,this.emit("error",l),this.previous&&this.previous.error(l),this.cleanUp()),!0)},on:function(l,n){return this._listeners[l].push(n),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(l,n){if(this._listeners[l])for(var h=0;h<this._listeners[l].length;h++)this._listeners[l][h].call(this,n)},pipe:function(l){return l.registerPrevious(this)},registerPrevious:function(l){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.streamInfo=l.streamInfo,this.mergeStreamInfo(),this.previous=l;var n=this;return l.on("data",function(h){n.processChunk(h)}),l.on("end",function(){n.end()}),l.on("error",function(h){n.error(h)}),this},pause:function(){return!this.isPaused&&!this.isFinished&&(this.isPaused=!0,this.previous&&this.previous.pause(),!0)},resume:function(){if(!this.isPaused||this.isFinished)return!1;var l=this.isPaused=!1;return this.generatedError&&(this.error(this.generatedError),l=!0),this.previous&&this.previous.resume(),!l},flush:function(){},processChunk:function(l){this.push(l)},withStreamInfo:function(l,n){return this.extraStreamInfo[l]=n,this.mergeStreamInfo(),this},mergeStreamInfo:function(){for(var l in this.extraStreamInfo)Object.prototype.hasOwnProperty.call(this.extraStreamInfo,l)&&(this.streamInfo[l]=this.extraStreamInfo[l])},lock:function(){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.isLocked=!0,this.previous&&this.previous.lock()},toString:function(){var l="Worker "+this.name;return this.previous?this.previous+" -> "+l:l}},D.exports=o},{}],29:[function(m,D,b){var o=m("../utils"),l=m("./ConvertWorker"),n=m("./GenericWorker"),h=m("../base64"),v=m("../support"),k=m("../external"),_=null;if(v.nodestream)try{_=m("../nodejs/NodejsStreamOutputAdapter")}catch{}function g(c,r){return new k.Promise(function(u,a){var d=[],w=c._internalType,E=c._outputType,S=c._mimeType;c.on("data",function(T,O){d.push(T),r&&r(O)}).on("error",function(T){d=[],a(T)}).on("end",function(){try{var T=(function(O,U,I){switch(O){case"blob":return o.newBlob(o.transformTo("arraybuffer",U),I);case"base64":return h.encode(U);default:return o.transformTo(O,U)}})(E,(function(O,U){var I,W=0,q=null,p=0;for(I=0;I<U.length;I++)p+=U[I].length;switch(O){case"string":return U.join("");case"array":return Array.prototype.concat.apply([],U);case"uint8array":for(q=new Uint8Array(p),I=0;I<U.length;I++)q.set(U[I],W),W+=U[I].length;return q;case"nodebuffer":return Buffer.concat(U);default:throw new Error("concat : unsupported type '"+O+"'")}})(w,d),S);u(T)}catch(O){a(O)}d=[]}).resume()})}function i(c,r,u){var a=r;switch(r){case"blob":case"arraybuffer":a="uint8array";break;case"base64":a="string"}try{this._internalType=a,this._outputType=r,this._mimeType=u,o.checkSupport(a),this._worker=c.pipe(new l(a)),c.lock()}catch(d){this._worker=new n("error"),this._worker.error(d)}}i.prototype={accumulate:function(c){return g(this,c)},on:function(c,r){var u=this;return c==="data"?this._worker.on(c,function(a){r.call(u,a.data,a.meta)}):this._worker.on(c,function(){o.delay(r,arguments,u)}),this},resume:function(){return o.delay(this._worker.resume,[],this._worker),this},pause:function(){return this._worker.pause(),this},toNodejsStream:function(c){if(o.checkSupport("nodestream"),this._outputType!=="nodebuffer")throw new Error(this._outputType+" is not supported by this method");return new _(this,{objectMode:this._outputType!=="nodebuffer"},c)}},D.exports=i},{"../base64":1,"../external":6,"../nodejs/NodejsStreamOutputAdapter":13,"../support":30,"../utils":32,"./ConvertWorker":24,"./GenericWorker":28}],30:[function(m,D,b){if(b.base64=!0,b.array=!0,b.string=!0,b.arraybuffer=typeof ArrayBuffer<"u"&&typeof Uint8Array<"u",b.nodebuffer=typeof Buffer<"u",b.uint8array=typeof Uint8Array<"u",typeof ArrayBuffer>"u")b.blob=!1;else{var o=new ArrayBuffer(0);try{b.blob=new Blob([o],{type:"application/zip"}).size===0}catch{try{var l=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);l.append(o),b.blob=l.getBlob("application/zip").size===0}catch{b.blob=!1}}}try{b.nodestream=!!m("readable-stream").Readable}catch{b.nodestream=!1}},{"readable-stream":16}],31:[function(m,D,b){for(var o=m("./utils"),l=m("./support"),n=m("./nodejsUtils"),h=m("./stream/GenericWorker"),v=new Array(256),k=0;k<256;k++)v[k]=252<=k?6:248<=k?5:240<=k?4:224<=k?3:192<=k?2:1;v[254]=v[254]=1;function _(){h.call(this,"utf-8 decode"),this.leftOver=null}function g(){h.call(this,"utf-8 encode")}b.utf8encode=function(i){return l.nodebuffer?n.newBufferFrom(i,"utf-8"):(function(c){var r,u,a,d,w,E=c.length,S=0;for(d=0;d<E;d++)(64512&(u=c.charCodeAt(d)))==55296&&d+1<E&&(64512&(a=c.charCodeAt(d+1)))==56320&&(u=65536+(u-55296<<10)+(a-56320),d++),S+=u<128?1:u<2048?2:u<65536?3:4;for(r=l.uint8array?new Uint8Array(S):new Array(S),d=w=0;w<S;d++)(64512&(u=c.charCodeAt(d)))==55296&&d+1<E&&(64512&(a=c.charCodeAt(d+1)))==56320&&(u=65536+(u-55296<<10)+(a-56320),d++),u<128?r[w++]=u:(u<2048?r[w++]=192|u>>>6:(u<65536?r[w++]=224|u>>>12:(r[w++]=240|u>>>18,r[w++]=128|u>>>12&63),r[w++]=128|u>>>6&63),r[w++]=128|63&u);return r})(i)},b.utf8decode=function(i){return l.nodebuffer?o.transformTo("nodebuffer",i).toString("utf-8"):(function(c){var r,u,a,d,w=c.length,E=new Array(2*w);for(r=u=0;r<w;)if((a=c[r++])<128)E[u++]=a;else if(4<(d=v[a]))E[u++]=65533,r+=d-1;else{for(a&=d===2?31:d===3?15:7;1<d&&r<w;)a=a<<6|63&c[r++],d--;1<d?E[u++]=65533:a<65536?E[u++]=a:(a-=65536,E[u++]=55296|a>>10&1023,E[u++]=56320|1023&a)}return E.length!==u&&(E.subarray?E=E.subarray(0,u):E.length=u),o.applyFromCharCode(E)})(i=o.transformTo(l.uint8array?"uint8array":"array",i))},o.inherits(_,h),_.prototype.processChunk=function(i){var c=o.transformTo(l.uint8array?"uint8array":"array",i.data);if(this.leftOver&&this.leftOver.length){if(l.uint8array){var r=c;(c=new Uint8Array(r.length+this.leftOver.length)).set(this.leftOver,0),c.set(r,this.leftOver.length)}else c=this.leftOver.concat(c);this.leftOver=null}var u=(function(d,w){var E;for((w=w||d.length)>d.length&&(w=d.length),E=w-1;0<=E&&(192&d[E])==128;)E--;return E<0||E===0?w:E+v[d[E]]>w?E:w})(c),a=c;u!==c.length&&(l.uint8array?(a=c.subarray(0,u),this.leftOver=c.subarray(u,c.length)):(a=c.slice(0,u),this.leftOver=c.slice(u,c.length))),this.push({data:b.utf8decode(a),meta:i.meta})},_.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:b.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},b.Utf8DecodeWorker=_,o.inherits(g,h),g.prototype.processChunk=function(i){this.push({data:b.utf8encode(i.data),meta:i.meta})},b.Utf8EncodeWorker=g},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(m,D,b){var o=m("./support"),l=m("./base64"),n=m("./nodejsUtils"),h=m("./external");function v(r){return r}function k(r,u){for(var a=0;a<r.length;++a)u[a]=255&r.charCodeAt(a);return u}m("setimmediate"),b.newBlob=function(r,u){b.checkSupport("blob");try{return new Blob([r],{type:u})}catch{try{var a=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);return a.append(r),a.getBlob(u)}catch{throw new Error("Bug : can't construct the Blob.")}}};var _={stringifyByChunk:function(r,u,a){var d=[],w=0,E=r.length;if(E<=a)return String.fromCharCode.apply(null,r);for(;w<E;)u==="array"||u==="nodebuffer"?d.push(String.fromCharCode.apply(null,r.slice(w,Math.min(w+a,E)))):d.push(String.fromCharCode.apply(null,r.subarray(w,Math.min(w+a,E)))),w+=a;return d.join("")},stringifyByChar:function(r){for(var u="",a=0;a<r.length;a++)u+=String.fromCharCode(r[a]);return u},applyCanBeUsed:{uint8array:(function(){try{return o.uint8array&&String.fromCharCode.apply(null,new Uint8Array(1)).length===1}catch{return!1}})(),nodebuffer:(function(){try{return o.nodebuffer&&String.fromCharCode.apply(null,n.allocBuffer(1)).length===1}catch{return!1}})()}};function g(r){var u=65536,a=b.getTypeOf(r),d=!0;if(a==="uint8array"?d=_.applyCanBeUsed.uint8array:a==="nodebuffer"&&(d=_.applyCanBeUsed.nodebuffer),d)for(;1<u;)try{return _.stringifyByChunk(r,a,u)}catch{u=Math.floor(u/2)}return _.stringifyByChar(r)}function i(r,u){for(var a=0;a<r.length;a++)u[a]=r[a];return u}b.applyFromCharCode=g;var c={};c.string={string:v,array:function(r){return k(r,new Array(r.length))},arraybuffer:function(r){return c.string.uint8array(r).buffer},uint8array:function(r){return k(r,new Uint8Array(r.length))},nodebuffer:function(r){return k(r,n.allocBuffer(r.length))}},c.array={string:g,array:v,arraybuffer:function(r){return new Uint8Array(r).buffer},uint8array:function(r){return new Uint8Array(r)},nodebuffer:function(r){return n.newBufferFrom(r)}},c.arraybuffer={string:function(r){return g(new Uint8Array(r))},array:function(r){return i(new Uint8Array(r),new Array(r.byteLength))},arraybuffer:v,uint8array:function(r){return new Uint8Array(r)},nodebuffer:function(r){return n.newBufferFrom(new Uint8Array(r))}},c.uint8array={string:g,array:function(r){return i(r,new Array(r.length))},arraybuffer:function(r){return r.buffer},uint8array:v,nodebuffer:function(r){return n.newBufferFrom(r)}},c.nodebuffer={string:g,array:function(r){return i(r,new Array(r.length))},arraybuffer:function(r){return c.nodebuffer.uint8array(r).buffer},uint8array:function(r){return i(r,new Uint8Array(r.length))},nodebuffer:v},b.transformTo=function(r,u){if(u=u||"",!r)return u;b.checkSupport(r);var a=b.getTypeOf(u);return c[a][r](u)},b.resolve=function(r){for(var u=r.split("/"),a=[],d=0;d<u.length;d++){var w=u[d];w==="."||w===""&&d!==0&&d!==u.length-1||(w===".."?a.pop():a.push(w))}return a.join("/")},b.getTypeOf=function(r){return typeof r=="string"?"string":Object.prototype.toString.call(r)==="[object Array]"?"array":o.nodebuffer&&n.isBuffer(r)?"nodebuffer":o.uint8array&&r instanceof Uint8Array?"uint8array":o.arraybuffer&&r instanceof ArrayBuffer?"arraybuffer":void 0},b.checkSupport=function(r){if(!o[r.toLowerCase()])throw new Error(r+" is not supported by this platform")},b.MAX_VALUE_16BITS=65535,b.MAX_VALUE_32BITS=-1,b.pretty=function(r){var u,a,d="";for(a=0;a<(r||"").length;a++)d+="\\x"+((u=r.charCodeAt(a))<16?"0":"")+u.toString(16).toUpperCase();return d},b.delay=function(r,u,a){setImmediate(function(){r.apply(a||null,u||[])})},b.inherits=function(r,u){function a(){}a.prototype=u.prototype,r.prototype=new a},b.extend=function(){var r,u,a={};for(r=0;r<arguments.length;r++)for(u in arguments[r])Object.prototype.hasOwnProperty.call(arguments[r],u)&&a[u]===void 0&&(a[u]=arguments[r][u]);return a},b.prepareContent=function(r,u,a,d,w){return h.Promise.resolve(u).then(function(E){return o.blob&&(E instanceof Blob||["[object File]","[object Blob]"].indexOf(Object.prototype.toString.call(E))!==-1)&&typeof FileReader<"u"?new h.Promise(function(S,T){var O=new FileReader;O.onload=function(U){S(U.target.result)},O.onerror=function(U){T(U.target.error)},O.readAsArrayBuffer(E)}):E}).then(function(E){var S=b.getTypeOf(E);return S?(S==="arraybuffer"?E=b.transformTo("uint8array",E):S==="string"&&(w?E=l.decode(E):a&&d!==!0&&(E=(function(T){return k(T,o.uint8array?new Uint8Array(T.length):new Array(T.length))})(E))),E):h.Promise.reject(new Error("Can't read the data of '"+r+"'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?"))})}},{"./base64":1,"./external":6,"./nodejsUtils":14,"./support":30,setimmediate:54}],33:[function(m,D,b){var o=m("./reader/readerFor"),l=m("./utils"),n=m("./signature"),h=m("./zipEntry"),v=m("./support");function k(_){this.files=[],this.loadOptions=_}k.prototype={checkSignature:function(_){if(!this.reader.readAndCheckSignature(_)){this.reader.index-=4;var g=this.reader.readString(4);throw new Error("Corrupted zip or bug: unexpected signature ("+l.pretty(g)+", expected "+l.pretty(_)+")")}},isSignature:function(_,g){var i=this.reader.index;this.reader.setIndex(_);var c=this.reader.readString(4)===g;return this.reader.setIndex(i),c},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2),this.diskWithCentralDirStart=this.reader.readInt(2),this.centralDirRecordsOnThisDisk=this.reader.readInt(2),this.centralDirRecords=this.reader.readInt(2),this.centralDirSize=this.reader.readInt(4),this.centralDirOffset=this.reader.readInt(4),this.zipCommentLength=this.reader.readInt(2);var _=this.reader.readData(this.zipCommentLength),g=v.uint8array?"uint8array":"array",i=l.transformTo(g,_);this.zipComment=this.loadOptions.decodeFileName(i)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8),this.reader.skip(4),this.diskNumber=this.reader.readInt(4),this.diskWithCentralDirStart=this.reader.readInt(4),this.centralDirRecordsOnThisDisk=this.reader.readInt(8),this.centralDirRecords=this.reader.readInt(8),this.centralDirSize=this.reader.readInt(8),this.centralDirOffset=this.reader.readInt(8),this.zip64ExtensibleData={};for(var _,g,i,c=this.zip64EndOfCentralSize-44;0<c;)_=this.reader.readInt(2),g=this.reader.readInt(4),i=this.reader.readData(g),this.zip64ExtensibleData[_]={id:_,length:g,value:i}},readBlockZip64EndOfCentralLocator:function(){if(this.diskWithZip64CentralDirStart=this.reader.readInt(4),this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8),this.disksCount=this.reader.readInt(4),1<this.disksCount)throw new Error("Multi-volumes zip are not supported")},readLocalFiles:function(){var _,g;for(_=0;_<this.files.length;_++)g=this.files[_],this.reader.setIndex(g.localHeaderOffset),this.checkSignature(n.LOCAL_FILE_HEADER),g.readLocalPart(this.reader),g.handleUTF8(),g.processAttributes()},readCentralDir:function(){var _;for(this.reader.setIndex(this.centralDirOffset);this.reader.readAndCheckSignature(n.CENTRAL_FILE_HEADER);)(_=new h({zip64:this.zip64},this.loadOptions)).readCentralPart(this.reader),this.files.push(_);if(this.centralDirRecords!==this.files.length&&this.centralDirRecords!==0&&this.files.length===0)throw new Error("Corrupted zip or bug: expected "+this.centralDirRecords+" records in central dir, got "+this.files.length)},readEndOfCentral:function(){var _=this.reader.lastIndexOfSignature(n.CENTRAL_DIRECTORY_END);if(_<0)throw this.isSignature(0,n.LOCAL_FILE_HEADER)?new Error("Corrupted zip: can't find end of central directory"):new Error("Can't find end of central directory : is this a zip file ? If it is, see https://stuk.github.io/jszip/documentation/howto/read_zip.html");this.reader.setIndex(_);var g=_;if(this.checkSignature(n.CENTRAL_DIRECTORY_END),this.readBlockEndOfCentral(),this.diskNumber===l.MAX_VALUE_16BITS||this.diskWithCentralDirStart===l.MAX_VALUE_16BITS||this.centralDirRecordsOnThisDisk===l.MAX_VALUE_16BITS||this.centralDirRecords===l.MAX_VALUE_16BITS||this.centralDirSize===l.MAX_VALUE_32BITS||this.centralDirOffset===l.MAX_VALUE_32BITS){if(this.zip64=!0,(_=this.reader.lastIndexOfSignature(n.ZIP64_CENTRAL_DIRECTORY_LOCATOR))<0)throw new Error("Corrupted zip: can't find the ZIP64 end of central directory locator");if(this.reader.setIndex(_),this.checkSignature(n.ZIP64_CENTRAL_DIRECTORY_LOCATOR),this.readBlockZip64EndOfCentralLocator(),!this.isSignature(this.relativeOffsetEndOfZip64CentralDir,n.ZIP64_CENTRAL_DIRECTORY_END)&&(this.relativeOffsetEndOfZip64CentralDir=this.reader.lastIndexOfSignature(n.ZIP64_CENTRAL_DIRECTORY_END),this.relativeOffsetEndOfZip64CentralDir<0))throw new Error("Corrupted zip: can't find the ZIP64 end of central directory");this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir),this.checkSignature(n.ZIP64_CENTRAL_DIRECTORY_END),this.readBlockZip64EndOfCentral()}var i=this.centralDirOffset+this.centralDirSize;this.zip64&&(i+=20,i+=12+this.zip64EndOfCentralSize);var c=g-i;if(0<c)this.isSignature(g,n.CENTRAL_FILE_HEADER)||(this.reader.zero=c);else if(c<0)throw new Error("Corrupted zip: missing "+Math.abs(c)+" bytes.")},prepareReader:function(_){this.reader=o(_)},load:function(_){this.prepareReader(_),this.readEndOfCentral(),this.readCentralDir(),this.readLocalFiles()}},D.exports=k},{"./reader/readerFor":22,"./signature":23,"./support":30,"./utils":32,"./zipEntry":34}],34:[function(m,D,b){var o=m("./reader/readerFor"),l=m("./utils"),n=m("./compressedObject"),h=m("./crc32"),v=m("./utf8"),k=m("./compressions"),_=m("./support");function g(i,c){this.options=i,this.loadOptions=c}g.prototype={isEncrypted:function(){return(1&this.bitFlag)==1},useUTF8:function(){return(2048&this.bitFlag)==2048},readLocalPart:function(i){var c,r;if(i.skip(22),this.fileNameLength=i.readInt(2),r=i.readInt(2),this.fileName=i.readData(this.fileNameLength),i.skip(r),this.compressedSize===-1||this.uncompressedSize===-1)throw new Error("Bug or corrupted zip : didn't get enough information from the central directory (compressedSize === -1 || uncompressedSize === -1)");if((c=(function(u){for(var a in k)if(Object.prototype.hasOwnProperty.call(k,a)&&k[a].magic===u)return k[a];return null})(this.compressionMethod))===null)throw new Error("Corrupted zip : compression "+l.pretty(this.compressionMethod)+" unknown (inner file : "+l.transformTo("string",this.fileName)+")");this.decompressed=new n(this.compressedSize,this.uncompressedSize,this.crc32,c,i.readData(this.compressedSize))},readCentralPart:function(i){this.versionMadeBy=i.readInt(2),i.skip(2),this.bitFlag=i.readInt(2),this.compressionMethod=i.readString(2),this.date=i.readDate(),this.crc32=i.readInt(4),this.compressedSize=i.readInt(4),this.uncompressedSize=i.readInt(4);var c=i.readInt(2);if(this.extraFieldsLength=i.readInt(2),this.fileCommentLength=i.readInt(2),this.diskNumberStart=i.readInt(2),this.internalFileAttributes=i.readInt(2),this.externalFileAttributes=i.readInt(4),this.localHeaderOffset=i.readInt(4),this.isEncrypted())throw new Error("Encrypted zip are not supported");i.skip(c),this.readExtraFields(i),this.parseZIP64ExtraField(i),this.fileComment=i.readData(this.fileCommentLength)},processAttributes:function(){this.unixPermissions=null,this.dosPermissions=null;var i=this.versionMadeBy>>8;this.dir=!!(16&this.externalFileAttributes),i==0&&(this.dosPermissions=63&this.externalFileAttributes),i==3&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||this.fileNameStr.slice(-1)!=="/"||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var i=o(this.extraFields[1].value);this.uncompressedSize===l.MAX_VALUE_32BITS&&(this.uncompressedSize=i.readInt(8)),this.compressedSize===l.MAX_VALUE_32BITS&&(this.compressedSize=i.readInt(8)),this.localHeaderOffset===l.MAX_VALUE_32BITS&&(this.localHeaderOffset=i.readInt(8)),this.diskNumberStart===l.MAX_VALUE_32BITS&&(this.diskNumberStart=i.readInt(4))}},readExtraFields:function(i){var c,r,u,a=i.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});i.index+4<a;)c=i.readInt(2),r=i.readInt(2),u=i.readData(r),this.extraFields[c]={id:c,length:r,value:u};i.setIndex(a)},handleUTF8:function(){var i=_.uint8array?"uint8array":"array";if(this.useUTF8())this.fileNameStr=v.utf8decode(this.fileName),this.fileCommentStr=v.utf8decode(this.fileComment);else{var c=this.findExtraFieldUnicodePath();if(c!==null)this.fileNameStr=c;else{var r=l.transformTo(i,this.fileName);this.fileNameStr=this.loadOptions.decodeFileName(r)}var u=this.findExtraFieldUnicodeComment();if(u!==null)this.fileCommentStr=u;else{var a=l.transformTo(i,this.fileComment);this.fileCommentStr=this.loadOptions.decodeFileName(a)}}},findExtraFieldUnicodePath:function(){var i=this.extraFields[28789];if(i){var c=o(i.value);return c.readInt(1)!==1||h(this.fileName)!==c.readInt(4)?null:v.utf8decode(c.readData(i.length-5))}return null},findExtraFieldUnicodeComment:function(){var i=this.extraFields[25461];if(i){var c=o(i.value);return c.readInt(1)!==1||h(this.fileComment)!==c.readInt(4)?null:v.utf8decode(c.readData(i.length-5))}return null}},D.exports=g},{"./compressedObject":2,"./compressions":3,"./crc32":4,"./reader/readerFor":22,"./support":30,"./utf8":31,"./utils":32}],35:[function(m,D,b){function o(c,r,u){this.name=c,this.dir=u.dir,this.date=u.date,this.comment=u.comment,this.unixPermissions=u.unixPermissions,this.dosPermissions=u.dosPermissions,this._data=r,this._dataBinary=u.binary,this.options={compression:u.compression,compressionOptions:u.compressionOptions}}var l=m("./stream/StreamHelper"),n=m("./stream/DataWorker"),h=m("./utf8"),v=m("./compressedObject"),k=m("./stream/GenericWorker");o.prototype={internalStream:function(c){var r=null,u="string";try{if(!c)throw new Error("No output type specified.");var a=(u=c.toLowerCase())==="string"||u==="text";u!=="binarystring"&&u!=="text"||(u="string"),r=this._decompressWorker();var d=!this._dataBinary;d&&!a&&(r=r.pipe(new h.Utf8EncodeWorker)),!d&&a&&(r=r.pipe(new h.Utf8DecodeWorker))}catch(w){(r=new k("error")).error(w)}return new l(r,u,"")},async:function(c,r){return this.internalStream(c).accumulate(r)},nodeStream:function(c,r){return this.internalStream(c||"nodebuffer").toNodejsStream(r)},_compressWorker:function(c,r){if(this._data instanceof v&&this._data.compression.magic===c.magic)return this._data.getCompressedWorker();var u=this._decompressWorker();return this._dataBinary||(u=u.pipe(new h.Utf8EncodeWorker)),v.createWorkerFrom(u,c,r)},_decompressWorker:function(){return this._data instanceof v?this._data.getContentWorker():this._data instanceof k?this._data:new n(this._data)}};for(var _=["asText","asBinary","asNodeBuffer","asUint8Array","asArrayBuffer"],g=function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},i=0;i<_.length;i++)o.prototype[_[i]]=g;D.exports=o},{"./compressedObject":2,"./stream/DataWorker":27,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31}],36:[function(m,D,b){(function(o){var l,n,h=o.MutationObserver||o.WebKitMutationObserver;if(h){var v=0,k=new h(c),_=o.document.createTextNode("");k.observe(_,{characterData:!0}),l=function(){_.data=v=++v%2}}else if(o.setImmediate||o.MessageChannel===void 0)l="document"in o&&"onreadystatechange"in o.document.createElement("script")?function(){var r=o.document.createElement("script");r.onreadystatechange=function(){c(),r.onreadystatechange=null,r.parentNode.removeChild(r),r=null},o.document.documentElement.appendChild(r)}:function(){setTimeout(c,0)};else{var g=new o.MessageChannel;g.port1.onmessage=c,l=function(){g.port2.postMessage(0)}}var i=[];function c(){var r,u;n=!0;for(var a=i.length;a;){for(u=i,i=[],r=-1;++r<a;)u[r]();a=i.length}n=!1}D.exports=function(r){i.push(r)!==1||n||l()}}).call(this,typeof Et<"u"?Et:typeof self<"u"?self:typeof window<"u"?window:{})},{}],37:[function(m,D,b){var o=m("immediate");function l(){}var n={},h=["REJECTED"],v=["FULFILLED"],k=["PENDING"];function _(a){if(typeof a!="function")throw new TypeError("resolver must be a function");this.state=k,this.queue=[],this.outcome=void 0,a!==l&&r(this,a)}function g(a,d,w){this.promise=a,typeof d=="function"&&(this.onFulfilled=d,this.callFulfilled=this.otherCallFulfilled),typeof w=="function"&&(this.onRejected=w,this.callRejected=this.otherCallRejected)}function i(a,d,w){o(function(){var E;try{E=d(w)}catch(S){return n.reject(a,S)}E===a?n.reject(a,new TypeError("Cannot resolve promise with itself")):n.resolve(a,E)})}function c(a){var d=a&&a.then;if(a&&(typeof a=="object"||typeof a=="function")&&typeof d=="function")return function(){d.apply(a,arguments)}}function r(a,d){var w=!1;function E(O){w||(w=!0,n.reject(a,O))}function S(O){w||(w=!0,n.resolve(a,O))}var T=u(function(){d(S,E)});T.status==="error"&&E(T.value)}function u(a,d){var w={};try{w.value=a(d),w.status="success"}catch(E){w.status="error",w.value=E}return w}(D.exports=_).prototype.finally=function(a){if(typeof a!="function")return this;var d=this.constructor;return this.then(function(w){return d.resolve(a()).then(function(){return w})},function(w){return d.resolve(a()).then(function(){throw w})})},_.prototype.catch=function(a){return this.then(null,a)},_.prototype.then=function(a,d){if(typeof a!="function"&&this.state===v||typeof d!="function"&&this.state===h)return this;var w=new this.constructor(l);return this.state!==k?i(w,this.state===v?a:d,this.outcome):this.queue.push(new g(w,a,d)),w},g.prototype.callFulfilled=function(a){n.resolve(this.promise,a)},g.prototype.otherCallFulfilled=function(a){i(this.promise,this.onFulfilled,a)},g.prototype.callRejected=function(a){n.reject(this.promise,a)},g.prototype.otherCallRejected=function(a){i(this.promise,this.onRejected,a)},n.resolve=function(a,d){var w=u(c,d);if(w.status==="error")return n.reject(a,w.value);var E=w.value;if(E)r(a,E);else{a.state=v,a.outcome=d;for(var S=-1,T=a.queue.length;++S<T;)a.queue[S].callFulfilled(d)}return a},n.reject=function(a,d){a.state=h,a.outcome=d;for(var w=-1,E=a.queue.length;++w<E;)a.queue[w].callRejected(d);return a},_.resolve=function(a){return a instanceof this?a:n.resolve(new this(l),a)},_.reject=function(a){var d=new this(l);return n.reject(d,a)},_.all=function(a){var d=this;if(Object.prototype.toString.call(a)!=="[object Array]")return this.reject(new TypeError("must be an array"));var w=a.length,E=!1;if(!w)return this.resolve([]);for(var S=new Array(w),T=0,O=-1,U=new this(l);++O<w;)I(a[O],O);return U;function I(W,q){d.resolve(W).then(function(p){S[q]=p,++T!==w||E||(E=!0,n.resolve(U,S))},function(p){E||(E=!0,n.reject(U,p))})}},_.race=function(a){var d=this;if(Object.prototype.toString.call(a)!=="[object Array]")return this.reject(new TypeError("must be an array"));var w=a.length,E=!1;if(!w)return this.resolve([]);for(var S=-1,T=new this(l);++S<w;)O=a[S],d.resolve(O).then(function(U){E||(E=!0,n.resolve(T,U))},function(U){E||(E=!0,n.reject(T,U))});var O;return T}},{immediate:36}],38:[function(m,D,b){var o={};(0,m("./lib/utils/common").assign)(o,m("./lib/deflate"),m("./lib/inflate"),m("./lib/zlib/constants")),D.exports=o},{"./lib/deflate":39,"./lib/inflate":40,"./lib/utils/common":41,"./lib/zlib/constants":44}],39:[function(m,D,b){var o=m("./zlib/deflate"),l=m("./utils/common"),n=m("./utils/strings"),h=m("./zlib/messages"),v=m("./zlib/zstream"),k=Object.prototype.toString,_=0,g=-1,i=0,c=8;function r(a){if(!(this instanceof r))return new r(a);this.options=l.assign({level:g,method:c,chunkSize:16384,windowBits:15,memLevel:8,strategy:i,to:""},a||{});var d=this.options;d.raw&&0<d.windowBits?d.windowBits=-d.windowBits:d.gzip&&0<d.windowBits&&d.windowBits<16&&(d.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new v,this.strm.avail_out=0;var w=o.deflateInit2(this.strm,d.level,d.method,d.windowBits,d.memLevel,d.strategy);if(w!==_)throw new Error(h[w]);if(d.header&&o.deflateSetHeader(this.strm,d.header),d.dictionary){var E;if(E=typeof d.dictionary=="string"?n.string2buf(d.dictionary):k.call(d.dictionary)==="[object ArrayBuffer]"?new Uint8Array(d.dictionary):d.dictionary,(w=o.deflateSetDictionary(this.strm,E))!==_)throw new Error(h[w]);this._dict_set=!0}}function u(a,d){var w=new r(d);if(w.push(a,!0),w.err)throw w.msg||h[w.err];return w.result}r.prototype.push=function(a,d){var w,E,S=this.strm,T=this.options.chunkSize;if(this.ended)return!1;E=d===~~d?d:d===!0?4:0,typeof a=="string"?S.input=n.string2buf(a):k.call(a)==="[object ArrayBuffer]"?S.input=new Uint8Array(a):S.input=a,S.next_in=0,S.avail_in=S.input.length;do{if(S.avail_out===0&&(S.output=new l.Buf8(T),S.next_out=0,S.avail_out=T),(w=o.deflate(S,E))!==1&&w!==_)return this.onEnd(w),!(this.ended=!0);S.avail_out!==0&&(S.avail_in!==0||E!==4&&E!==2)||(this.options.to==="string"?this.onData(n.buf2binstring(l.shrinkBuf(S.output,S.next_out))):this.onData(l.shrinkBuf(S.output,S.next_out)))}while((0<S.avail_in||S.avail_out===0)&&w!==1);return E===4?(w=o.deflateEnd(this.strm),this.onEnd(w),this.ended=!0,w===_):E!==2||(this.onEnd(_),!(S.avail_out=0))},r.prototype.onData=function(a){this.chunks.push(a)},r.prototype.onEnd=function(a){a===_&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=l.flattenChunks(this.chunks)),this.chunks=[],this.err=a,this.msg=this.strm.msg},b.Deflate=r,b.deflate=u,b.deflateRaw=function(a,d){return(d=d||{}).raw=!0,u(a,d)},b.gzip=function(a,d){return(d=d||{}).gzip=!0,u(a,d)}},{"./utils/common":41,"./utils/strings":42,"./zlib/deflate":46,"./zlib/messages":51,"./zlib/zstream":53}],40:[function(m,D,b){var o=m("./zlib/inflate"),l=m("./utils/common"),n=m("./utils/strings"),h=m("./zlib/constants"),v=m("./zlib/messages"),k=m("./zlib/zstream"),_=m("./zlib/gzheader"),g=Object.prototype.toString;function i(r){if(!(this instanceof i))return new i(r);this.options=l.assign({chunkSize:16384,windowBits:0,to:""},r||{});var u=this.options;u.raw&&0<=u.windowBits&&u.windowBits<16&&(u.windowBits=-u.windowBits,u.windowBits===0&&(u.windowBits=-15)),!(0<=u.windowBits&&u.windowBits<16)||r&&r.windowBits||(u.windowBits+=32),15<u.windowBits&&u.windowBits<48&&(15&u.windowBits)==0&&(u.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new k,this.strm.avail_out=0;var a=o.inflateInit2(this.strm,u.windowBits);if(a!==h.Z_OK)throw new Error(v[a]);this.header=new _,o.inflateGetHeader(this.strm,this.header)}function c(r,u){var a=new i(u);if(a.push(r,!0),a.err)throw a.msg||v[a.err];return a.result}i.prototype.push=function(r,u){var a,d,w,E,S,T,O=this.strm,U=this.options.chunkSize,I=this.options.dictionary,W=!1;if(this.ended)return!1;d=u===~~u?u:u===!0?h.Z_FINISH:h.Z_NO_FLUSH,typeof r=="string"?O.input=n.binstring2buf(r):g.call(r)==="[object ArrayBuffer]"?O.input=new Uint8Array(r):O.input=r,O.next_in=0,O.avail_in=O.input.length;do{if(O.avail_out===0&&(O.output=new l.Buf8(U),O.next_out=0,O.avail_out=U),(a=o.inflate(O,h.Z_NO_FLUSH))===h.Z_NEED_DICT&&I&&(T=typeof I=="string"?n.string2buf(I):g.call(I)==="[object ArrayBuffer]"?new Uint8Array(I):I,a=o.inflateSetDictionary(this.strm,T)),a===h.Z_BUF_ERROR&&W===!0&&(a=h.Z_OK,W=!1),a!==h.Z_STREAM_END&&a!==h.Z_OK)return this.onEnd(a),!(this.ended=!0);O.next_out&&(O.avail_out!==0&&a!==h.Z_STREAM_END&&(O.avail_in!==0||d!==h.Z_FINISH&&d!==h.Z_SYNC_FLUSH)||(this.options.to==="string"?(w=n.utf8border(O.output,O.next_out),E=O.next_out-w,S=n.buf2string(O.output,w),O.next_out=E,O.avail_out=U-E,E&&l.arraySet(O.output,O.output,w,E,0),this.onData(S)):this.onData(l.shrinkBuf(O.output,O.next_out)))),O.avail_in===0&&O.avail_out===0&&(W=!0)}while((0<O.avail_in||O.avail_out===0)&&a!==h.Z_STREAM_END);return a===h.Z_STREAM_END&&(d=h.Z_FINISH),d===h.Z_FINISH?(a=o.inflateEnd(this.strm),this.onEnd(a),this.ended=!0,a===h.Z_OK):d!==h.Z_SYNC_FLUSH||(this.onEnd(h.Z_OK),!(O.avail_out=0))},i.prototype.onData=function(r){this.chunks.push(r)},i.prototype.onEnd=function(r){r===h.Z_OK&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=l.flattenChunks(this.chunks)),this.chunks=[],this.err=r,this.msg=this.strm.msg},b.Inflate=i,b.inflate=c,b.inflateRaw=function(r,u){return(u=u||{}).raw=!0,c(r,u)},b.ungzip=c},{"./utils/common":41,"./utils/strings":42,"./zlib/constants":44,"./zlib/gzheader":47,"./zlib/inflate":49,"./zlib/messages":51,"./zlib/zstream":53}],41:[function(m,D,b){var o=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Int32Array<"u";b.assign=function(h){for(var v=Array.prototype.slice.call(arguments,1);v.length;){var k=v.shift();if(k){if(typeof k!="object")throw new TypeError(k+"must be non-object");for(var _ in k)k.hasOwnProperty(_)&&(h[_]=k[_])}}return h},b.shrinkBuf=function(h,v){return h.length===v?h:h.subarray?h.subarray(0,v):(h.length=v,h)};var l={arraySet:function(h,v,k,_,g){if(v.subarray&&h.subarray)h.set(v.subarray(k,k+_),g);else for(var i=0;i<_;i++)h[g+i]=v[k+i]},flattenChunks:function(h){var v,k,_,g,i,c;for(v=_=0,k=h.length;v<k;v++)_+=h[v].length;for(c=new Uint8Array(_),v=g=0,k=h.length;v<k;v++)i=h[v],c.set(i,g),g+=i.length;return c}},n={arraySet:function(h,v,k,_,g){for(var i=0;i<_;i++)h[g+i]=v[k+i]},flattenChunks:function(h){return[].concat.apply([],h)}};b.setTyped=function(h){h?(b.Buf8=Uint8Array,b.Buf16=Uint16Array,b.Buf32=Int32Array,b.assign(b,l)):(b.Buf8=Array,b.Buf16=Array,b.Buf32=Array,b.assign(b,n))},b.setTyped(o)},{}],42:[function(m,D,b){var o=m("./common"),l=!0,n=!0;try{String.fromCharCode.apply(null,[0])}catch{l=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch{n=!1}for(var h=new o.Buf8(256),v=0;v<256;v++)h[v]=252<=v?6:248<=v?5:240<=v?4:224<=v?3:192<=v?2:1;function k(_,g){if(g<65537&&(_.subarray&&n||!_.subarray&&l))return String.fromCharCode.apply(null,o.shrinkBuf(_,g));for(var i="",c=0;c<g;c++)i+=String.fromCharCode(_[c]);return i}h[254]=h[254]=1,b.string2buf=function(_){var g,i,c,r,u,a=_.length,d=0;for(r=0;r<a;r++)(64512&(i=_.charCodeAt(r)))==55296&&r+1<a&&(64512&(c=_.charCodeAt(r+1)))==56320&&(i=65536+(i-55296<<10)+(c-56320),r++),d+=i<128?1:i<2048?2:i<65536?3:4;for(g=new o.Buf8(d),r=u=0;u<d;r++)(64512&(i=_.charCodeAt(r)))==55296&&r+1<a&&(64512&(c=_.charCodeAt(r+1)))==56320&&(i=65536+(i-55296<<10)+(c-56320),r++),i<128?g[u++]=i:(i<2048?g[u++]=192|i>>>6:(i<65536?g[u++]=224|i>>>12:(g[u++]=240|i>>>18,g[u++]=128|i>>>12&63),g[u++]=128|i>>>6&63),g[u++]=128|63&i);return g},b.buf2binstring=function(_){return k(_,_.length)},b.binstring2buf=function(_){for(var g=new o.Buf8(_.length),i=0,c=g.length;i<c;i++)g[i]=_.charCodeAt(i);return g},b.buf2string=function(_,g){var i,c,r,u,a=g||_.length,d=new Array(2*a);for(i=c=0;i<a;)if((r=_[i++])<128)d[c++]=r;else if(4<(u=h[r]))d[c++]=65533,i+=u-1;else{for(r&=u===2?31:u===3?15:7;1<u&&i<a;)r=r<<6|63&_[i++],u--;1<u?d[c++]=65533:r<65536?d[c++]=r:(r-=65536,d[c++]=55296|r>>10&1023,d[c++]=56320|1023&r)}return k(d,c)},b.utf8border=function(_,g){var i;for((g=g||_.length)>_.length&&(g=_.length),i=g-1;0<=i&&(192&_[i])==128;)i--;return i<0||i===0?g:i+h[_[i]]>g?i:g}},{"./common":41}],43:[function(m,D,b){D.exports=function(o,l,n,h){for(var v=65535&o|0,k=o>>>16&65535|0,_=0;n!==0;){for(n-=_=2e3<n?2e3:n;k=k+(v=v+l[h++]|0)|0,--_;);v%=65521,k%=65521}return v|k<<16|0}},{}],44:[function(m,D,b){D.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},{}],45:[function(m,D,b){var o=(function(){for(var l,n=[],h=0;h<256;h++){l=h;for(var v=0;v<8;v++)l=1&l?3988292384^l>>>1:l>>>1;n[h]=l}return n})();D.exports=function(l,n,h,v){var k=o,_=v+h;l^=-1;for(var g=v;g<_;g++)l=l>>>8^k[255&(l^n[g])];return-1^l}},{}],46:[function(m,D,b){var o,l=m("../utils/common"),n=m("./trees"),h=m("./adler32"),v=m("./crc32"),k=m("./messages"),_=0,g=4,i=0,c=-2,r=-1,u=4,a=2,d=8,w=9,E=286,S=30,T=19,O=2*E+1,U=15,I=3,W=258,q=W+I+1,p=42,R=113,e=1,N=2,X=3,L=4;function Q(t,B){return t.msg=k[B],B}function Z(t){return(t<<1)-(4<t?9:0)}function $(t){for(var B=t.length;0<=--B;)t[B]=0}function A(t){var B=t.state,C=B.pending;C>t.avail_out&&(C=t.avail_out),C!==0&&(l.arraySet(t.output,B.pending_buf,B.pending_out,C,t.next_out),t.next_out+=C,B.pending_out+=C,t.total_out+=C,t.avail_out-=C,B.pending-=C,B.pending===0&&(B.pending_out=0))}function y(t,B){n._tr_flush_block(t,0<=t.block_start?t.block_start:-1,t.strstart-t.block_start,B),t.block_start=t.strstart,A(t.strm)}function H(t,B){t.pending_buf[t.pending++]=B}function K(t,B){t.pending_buf[t.pending++]=B>>>8&255,t.pending_buf[t.pending++]=255&B}function j(t,B){var C,f,s=t.max_chain_length,x=t.strstart,P=t.prev_length,F=t.nice_match,z=t.strstart>t.w_size-q?t.strstart-(t.w_size-q):0,M=t.window,Y=t.w_mask,G=t.prev,V=t.strstart+W,it=M[x+P-1],rt=M[x+P];t.prev_length>=t.good_match&&(s>>=2),F>t.lookahead&&(F=t.lookahead);do if(M[(C=B)+P]===rt&&M[C+P-1]===it&&M[C]===M[x]&&M[++C]===M[x+1]){x+=2,C++;do;while(M[++x]===M[++C]&&M[++x]===M[++C]&&M[++x]===M[++C]&&M[++x]===M[++C]&&M[++x]===M[++C]&&M[++x]===M[++C]&&M[++x]===M[++C]&&M[++x]===M[++C]&&x<V);if(f=W-(V-x),x=V-W,P<f){if(t.match_start=B,F<=(P=f))break;it=M[x+P-1],rt=M[x+P]}}while((B=G[B&Y])>z&&--s!=0);return P<=t.lookahead?P:t.lookahead}function at(t){var B,C,f,s,x,P,F,z,M,Y,G=t.w_size;do{if(s=t.window_size-t.lookahead-t.strstart,t.strstart>=G+(G-q)){for(l.arraySet(t.window,t.window,G,G,0),t.match_start-=G,t.strstart-=G,t.block_start-=G,B=C=t.hash_size;f=t.head[--B],t.head[B]=G<=f?f-G:0,--C;);for(B=C=G;f=t.prev[--B],t.prev[B]=G<=f?f-G:0,--C;);s+=G}if(t.strm.avail_in===0)break;if(P=t.strm,F=t.window,z=t.strstart+t.lookahead,M=s,Y=void 0,Y=P.avail_in,M<Y&&(Y=M),C=Y===0?0:(P.avail_in-=Y,l.arraySet(F,P.input,P.next_in,Y,z),P.state.wrap===1?P.adler=h(P.adler,F,Y,z):P.state.wrap===2&&(P.adler=v(P.adler,F,Y,z)),P.next_in+=Y,P.total_in+=Y,Y),t.lookahead+=C,t.lookahead+t.insert>=I)for(x=t.strstart-t.insert,t.ins_h=t.window[x],t.ins_h=(t.ins_h<<t.hash_shift^t.window[x+1])&t.hash_mask;t.insert&&(t.ins_h=(t.ins_h<<t.hash_shift^t.window[x+I-1])&t.hash_mask,t.prev[x&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=x,x++,t.insert--,!(t.lookahead+t.insert<I)););}while(t.lookahead<q&&t.strm.avail_in!==0)}function ut(t,B){for(var C,f;;){if(t.lookahead<q){if(at(t),t.lookahead<q&&B===_)return e;if(t.lookahead===0)break}if(C=0,t.lookahead>=I&&(t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+I-1])&t.hash_mask,C=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),C!==0&&t.strstart-C<=t.w_size-q&&(t.match_length=j(t,C)),t.match_length>=I)if(f=n._tr_tally(t,t.strstart-t.match_start,t.match_length-I),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=I){for(t.match_length--;t.strstart++,t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+I-1])&t.hash_mask,C=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart,--t.match_length!=0;);t.strstart++}else t.strstart+=t.match_length,t.match_length=0,t.ins_h=t.window[t.strstart],t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+1])&t.hash_mask;else f=n._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++;if(f&&(y(t,!1),t.strm.avail_out===0))return e}return t.insert=t.strstart<I-1?t.strstart:I-1,B===g?(y(t,!0),t.strm.avail_out===0?X:L):t.last_lit&&(y(t,!1),t.strm.avail_out===0)?e:N}function et(t,B){for(var C,f,s;;){if(t.lookahead<q){if(at(t),t.lookahead<q&&B===_)return e;if(t.lookahead===0)break}if(C=0,t.lookahead>=I&&(t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+I-1])&t.hash_mask,C=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),t.prev_length=t.match_length,t.prev_match=t.match_start,t.match_length=I-1,C!==0&&t.prev_length<t.max_lazy_match&&t.strstart-C<=t.w_size-q&&(t.match_length=j(t,C),t.match_length<=5&&(t.strategy===1||t.match_length===I&&4096<t.strstart-t.match_start)&&(t.match_length=I-1)),t.prev_length>=I&&t.match_length<=t.prev_length){for(s=t.strstart+t.lookahead-I,f=n._tr_tally(t,t.strstart-1-t.prev_match,t.prev_length-I),t.lookahead-=t.prev_length-1,t.prev_length-=2;++t.strstart<=s&&(t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+I-1])&t.hash_mask,C=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),--t.prev_length!=0;);if(t.match_available=0,t.match_length=I-1,t.strstart++,f&&(y(t,!1),t.strm.avail_out===0))return e}else if(t.match_available){if((f=n._tr_tally(t,0,t.window[t.strstart-1]))&&y(t,!1),t.strstart++,t.lookahead--,t.strm.avail_out===0)return e}else t.match_available=1,t.strstart++,t.lookahead--}return t.match_available&&(f=n._tr_tally(t,0,t.window[t.strstart-1]),t.match_available=0),t.insert=t.strstart<I-1?t.strstart:I-1,B===g?(y(t,!0),t.strm.avail_out===0?X:L):t.last_lit&&(y(t,!1),t.strm.avail_out===0)?e:N}function tt(t,B,C,f,s){this.good_length=t,this.max_lazy=B,this.nice_length=C,this.max_chain=f,this.func=s}function ht(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=d,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new l.Buf16(2*O),this.dyn_dtree=new l.Buf16(2*(2*S+1)),this.bl_tree=new l.Buf16(2*(2*T+1)),$(this.dyn_ltree),$(this.dyn_dtree),$(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new l.Buf16(U+1),this.heap=new l.Buf16(2*E+1),$(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new l.Buf16(2*E+1),$(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function st(t){var B;return t&&t.state?(t.total_in=t.total_out=0,t.data_type=a,(B=t.state).pending=0,B.pending_out=0,B.wrap<0&&(B.wrap=-B.wrap),B.status=B.wrap?p:R,t.adler=B.wrap===2?0:1,B.last_flush=_,n._tr_init(B),i):Q(t,c)}function pt(t){var B=st(t);return B===i&&(function(C){C.window_size=2*C.w_size,$(C.head),C.max_lazy_match=o[C.level].max_lazy,C.good_match=o[C.level].good_length,C.nice_match=o[C.level].nice_length,C.max_chain_length=o[C.level].max_chain,C.strstart=0,C.block_start=0,C.lookahead=0,C.insert=0,C.match_length=C.prev_length=I-1,C.match_available=0,C.ins_h=0})(t.state),B}function dt(t,B,C,f,s,x){if(!t)return c;var P=1;if(B===r&&(B=6),f<0?(P=0,f=-f):15<f&&(P=2,f-=16),s<1||w<s||C!==d||f<8||15<f||B<0||9<B||x<0||u<x)return Q(t,c);f===8&&(f=9);var F=new ht;return(t.state=F).strm=t,F.wrap=P,F.gzhead=null,F.w_bits=f,F.w_size=1<<F.w_bits,F.w_mask=F.w_size-1,F.hash_bits=s+7,F.hash_size=1<<F.hash_bits,F.hash_mask=F.hash_size-1,F.hash_shift=~~((F.hash_bits+I-1)/I),F.window=new l.Buf8(2*F.w_size),F.head=new l.Buf16(F.hash_size),F.prev=new l.Buf16(F.w_size),F.lit_bufsize=1<<s+6,F.pending_buf_size=4*F.lit_bufsize,F.pending_buf=new l.Buf8(F.pending_buf_size),F.d_buf=1*F.lit_bufsize,F.l_buf=3*F.lit_bufsize,F.level=B,F.strategy=x,F.method=C,pt(t)}o=[new tt(0,0,0,0,function(t,B){var C=65535;for(C>t.pending_buf_size-5&&(C=t.pending_buf_size-5);;){if(t.lookahead<=1){if(at(t),t.lookahead===0&&B===_)return e;if(t.lookahead===0)break}t.strstart+=t.lookahead,t.lookahead=0;var f=t.block_start+C;if((t.strstart===0||t.strstart>=f)&&(t.lookahead=t.strstart-f,t.strstart=f,y(t,!1),t.strm.avail_out===0)||t.strstart-t.block_start>=t.w_size-q&&(y(t,!1),t.strm.avail_out===0))return e}return t.insert=0,B===g?(y(t,!0),t.strm.avail_out===0?X:L):(t.strstart>t.block_start&&(y(t,!1),t.strm.avail_out),e)}),new tt(4,4,8,4,ut),new tt(4,5,16,8,ut),new tt(4,6,32,32,ut),new tt(4,4,16,16,et),new tt(8,16,32,32,et),new tt(8,16,128,128,et),new tt(8,32,128,256,et),new tt(32,128,258,1024,et),new tt(32,258,258,4096,et)],b.deflateInit=function(t,B){return dt(t,B,d,15,8,0)},b.deflateInit2=dt,b.deflateReset=pt,b.deflateResetKeep=st,b.deflateSetHeader=function(t,B){return t&&t.state?t.state.wrap!==2?c:(t.state.gzhead=B,i):c},b.deflate=function(t,B){var C,f,s,x;if(!t||!t.state||5<B||B<0)return t?Q(t,c):c;if(f=t.state,!t.output||!t.input&&t.avail_in!==0||f.status===666&&B!==g)return Q(t,t.avail_out===0?-5:c);if(f.strm=t,C=f.last_flush,f.last_flush=B,f.status===p)if(f.wrap===2)t.adler=0,H(f,31),H(f,139),H(f,8),f.gzhead?(H(f,(f.gzhead.text?1:0)+(f.gzhead.hcrc?2:0)+(f.gzhead.extra?4:0)+(f.gzhead.name?8:0)+(f.gzhead.comment?16:0)),H(f,255&f.gzhead.time),H(f,f.gzhead.time>>8&255),H(f,f.gzhead.time>>16&255),H(f,f.gzhead.time>>24&255),H(f,f.level===9?2:2<=f.strategy||f.level<2?4:0),H(f,255&f.gzhead.os),f.gzhead.extra&&f.gzhead.extra.length&&(H(f,255&f.gzhead.extra.length),H(f,f.gzhead.extra.length>>8&255)),f.gzhead.hcrc&&(t.adler=v(t.adler,f.pending_buf,f.pending,0)),f.gzindex=0,f.status=69):(H(f,0),H(f,0),H(f,0),H(f,0),H(f,0),H(f,f.level===9?2:2<=f.strategy||f.level<2?4:0),H(f,3),f.status=R);else{var P=d+(f.w_bits-8<<4)<<8;P|=(2<=f.strategy||f.level<2?0:f.level<6?1:f.level===6?2:3)<<6,f.strstart!==0&&(P|=32),P+=31-P%31,f.status=R,K(f,P),f.strstart!==0&&(K(f,t.adler>>>16),K(f,65535&t.adler)),t.adler=1}if(f.status===69)if(f.gzhead.extra){for(s=f.pending;f.gzindex<(65535&f.gzhead.extra.length)&&(f.pending!==f.pending_buf_size||(f.gzhead.hcrc&&f.pending>s&&(t.adler=v(t.adler,f.pending_buf,f.pending-s,s)),A(t),s=f.pending,f.pending!==f.pending_buf_size));)H(f,255&f.gzhead.extra[f.gzindex]),f.gzindex++;f.gzhead.hcrc&&f.pending>s&&(t.adler=v(t.adler,f.pending_buf,f.pending-s,s)),f.gzindex===f.gzhead.extra.length&&(f.gzindex=0,f.status=73)}else f.status=73;if(f.status===73)if(f.gzhead.name){s=f.pending;do{if(f.pending===f.pending_buf_size&&(f.gzhead.hcrc&&f.pending>s&&(t.adler=v(t.adler,f.pending_buf,f.pending-s,s)),A(t),s=f.pending,f.pending===f.pending_buf_size)){x=1;break}x=f.gzindex<f.gzhead.name.length?255&f.gzhead.name.charCodeAt(f.gzindex++):0,H(f,x)}while(x!==0);f.gzhead.hcrc&&f.pending>s&&(t.adler=v(t.adler,f.pending_buf,f.pending-s,s)),x===0&&(f.gzindex=0,f.status=91)}else f.status=91;if(f.status===91)if(f.gzhead.comment){s=f.pending;do{if(f.pending===f.pending_buf_size&&(f.gzhead.hcrc&&f.pending>s&&(t.adler=v(t.adler,f.pending_buf,f.pending-s,s)),A(t),s=f.pending,f.pending===f.pending_buf_size)){x=1;break}x=f.gzindex<f.gzhead.comment.length?255&f.gzhead.comment.charCodeAt(f.gzindex++):0,H(f,x)}while(x!==0);f.gzhead.hcrc&&f.pending>s&&(t.adler=v(t.adler,f.pending_buf,f.pending-s,s)),x===0&&(f.status=103)}else f.status=103;if(f.status===103&&(f.gzhead.hcrc?(f.pending+2>f.pending_buf_size&&A(t),f.pending+2<=f.pending_buf_size&&(H(f,255&t.adler),H(f,t.adler>>8&255),t.adler=0,f.status=R)):f.status=R),f.pending!==0){if(A(t),t.avail_out===0)return f.last_flush=-1,i}else if(t.avail_in===0&&Z(B)<=Z(C)&&B!==g)return Q(t,-5);if(f.status===666&&t.avail_in!==0)return Q(t,-5);if(t.avail_in!==0||f.lookahead!==0||B!==_&&f.status!==666){var F=f.strategy===2?(function(z,M){for(var Y;;){if(z.lookahead===0&&(at(z),z.lookahead===0)){if(M===_)return e;break}if(z.match_length=0,Y=n._tr_tally(z,0,z.window[z.strstart]),z.lookahead--,z.strstart++,Y&&(y(z,!1),z.strm.avail_out===0))return e}return z.insert=0,M===g?(y(z,!0),z.strm.avail_out===0?X:L):z.last_lit&&(y(z,!1),z.strm.avail_out===0)?e:N})(f,B):f.strategy===3?(function(z,M){for(var Y,G,V,it,rt=z.window;;){if(z.lookahead<=W){if(at(z),z.lookahead<=W&&M===_)return e;if(z.lookahead===0)break}if(z.match_length=0,z.lookahead>=I&&0<z.strstart&&(G=rt[V=z.strstart-1])===rt[++V]&&G===rt[++V]&&G===rt[++V]){it=z.strstart+W;do;while(G===rt[++V]&&G===rt[++V]&&G===rt[++V]&&G===rt[++V]&&G===rt[++V]&&G===rt[++V]&&G===rt[++V]&&G===rt[++V]&&V<it);z.match_length=W-(it-V),z.match_length>z.lookahead&&(z.match_length=z.lookahead)}if(z.match_length>=I?(Y=n._tr_tally(z,1,z.match_length-I),z.lookahead-=z.match_length,z.strstart+=z.match_length,z.match_length=0):(Y=n._tr_tally(z,0,z.window[z.strstart]),z.lookahead--,z.strstart++),Y&&(y(z,!1),z.strm.avail_out===0))return e}return z.insert=0,M===g?(y(z,!0),z.strm.avail_out===0?X:L):z.last_lit&&(y(z,!1),z.strm.avail_out===0)?e:N})(f,B):o[f.level].func(f,B);if(F!==X&&F!==L||(f.status=666),F===e||F===X)return t.avail_out===0&&(f.last_flush=-1),i;if(F===N&&(B===1?n._tr_align(f):B!==5&&(n._tr_stored_block(f,0,0,!1),B===3&&($(f.head),f.lookahead===0&&(f.strstart=0,f.block_start=0,f.insert=0))),A(t),t.avail_out===0))return f.last_flush=-1,i}return B!==g?i:f.wrap<=0?1:(f.wrap===2?(H(f,255&t.adler),H(f,t.adler>>8&255),H(f,t.adler>>16&255),H(f,t.adler>>24&255),H(f,255&t.total_in),H(f,t.total_in>>8&255),H(f,t.total_in>>16&255),H(f,t.total_in>>24&255)):(K(f,t.adler>>>16),K(f,65535&t.adler)),A(t),0<f.wrap&&(f.wrap=-f.wrap),f.pending!==0?i:1)},b.deflateEnd=function(t){var B;return t&&t.state?(B=t.state.status)!==p&&B!==69&&B!==73&&B!==91&&B!==103&&B!==R&&B!==666?Q(t,c):(t.state=null,B===R?Q(t,-3):i):c},b.deflateSetDictionary=function(t,B){var C,f,s,x,P,F,z,M,Y=B.length;if(!t||!t.state||(x=(C=t.state).wrap)===2||x===1&&C.status!==p||C.lookahead)return c;for(x===1&&(t.adler=h(t.adler,B,Y,0)),C.wrap=0,Y>=C.w_size&&(x===0&&($(C.head),C.strstart=0,C.block_start=0,C.insert=0),M=new l.Buf8(C.w_size),l.arraySet(M,B,Y-C.w_size,C.w_size,0),B=M,Y=C.w_size),P=t.avail_in,F=t.next_in,z=t.input,t.avail_in=Y,t.next_in=0,t.input=B,at(C);C.lookahead>=I;){for(f=C.strstart,s=C.lookahead-(I-1);C.ins_h=(C.ins_h<<C.hash_shift^C.window[f+I-1])&C.hash_mask,C.prev[f&C.w_mask]=C.head[C.ins_h],C.head[C.ins_h]=f,f++,--s;);C.strstart=f,C.lookahead=I-1,at(C)}return C.strstart+=C.lookahead,C.block_start=C.strstart,C.insert=C.lookahead,C.lookahead=0,C.match_length=C.prev_length=I-1,C.match_available=0,t.next_in=F,t.input=z,t.avail_in=P,C.wrap=x,i},b.deflateInfo="pako deflate (from Nodeca project)"},{"../utils/common":41,"./adler32":43,"./crc32":45,"./messages":51,"./trees":52}],47:[function(m,D,b){D.exports=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}},{}],48:[function(m,D,b){D.exports=function(o,l){var n,h,v,k,_,g,i,c,r,u,a,d,w,E,S,T,O,U,I,W,q,p,R,e,N;n=o.state,h=o.next_in,e=o.input,v=h+(o.avail_in-5),k=o.next_out,N=o.output,_=k-(l-o.avail_out),g=k+(o.avail_out-257),i=n.dmax,c=n.wsize,r=n.whave,u=n.wnext,a=n.window,d=n.hold,w=n.bits,E=n.lencode,S=n.distcode,T=(1<<n.lenbits)-1,O=(1<<n.distbits)-1;t:do{w<15&&(d+=e[h++]<<w,w+=8,d+=e[h++]<<w,w+=8),U=E[d&T];e:for(;;){if(d>>>=I=U>>>24,w-=I,(I=U>>>16&255)===0)N[k++]=65535&U;else{if(!(16&I)){if((64&I)==0){U=E[(65535&U)+(d&(1<<I)-1)];continue e}if(32&I){n.mode=12;break t}o.msg="invalid literal/length code",n.mode=30;break t}W=65535&U,(I&=15)&&(w<I&&(d+=e[h++]<<w,w+=8),W+=d&(1<<I)-1,d>>>=I,w-=I),w<15&&(d+=e[h++]<<w,w+=8,d+=e[h++]<<w,w+=8),U=S[d&O];r:for(;;){if(d>>>=I=U>>>24,w-=I,!(16&(I=U>>>16&255))){if((64&I)==0){U=S[(65535&U)+(d&(1<<I)-1)];continue r}o.msg="invalid distance code",n.mode=30;break t}if(q=65535&U,w<(I&=15)&&(d+=e[h++]<<w,(w+=8)<I&&(d+=e[h++]<<w,w+=8)),i<(q+=d&(1<<I)-1)){o.msg="invalid distance too far back",n.mode=30;break t}if(d>>>=I,w-=I,(I=k-_)<q){if(r<(I=q-I)&&n.sane){o.msg="invalid distance too far back",n.mode=30;break t}if(R=a,(p=0)===u){if(p+=c-I,I<W){for(W-=I;N[k++]=a[p++],--I;);p=k-q,R=N}}else if(u<I){if(p+=c+u-I,(I-=u)<W){for(W-=I;N[k++]=a[p++],--I;);if(p=0,u<W){for(W-=I=u;N[k++]=a[p++],--I;);p=k-q,R=N}}}else if(p+=u-I,I<W){for(W-=I;N[k++]=a[p++],--I;);p=k-q,R=N}for(;2<W;)N[k++]=R[p++],N[k++]=R[p++],N[k++]=R[p++],W-=3;W&&(N[k++]=R[p++],1<W&&(N[k++]=R[p++]))}else{for(p=k-q;N[k++]=N[p++],N[k++]=N[p++],N[k++]=N[p++],2<(W-=3););W&&(N[k++]=N[p++],1<W&&(N[k++]=N[p++]))}break}}break}}while(h<v&&k<g);h-=W=w>>3,d&=(1<<(w-=W<<3))-1,o.next_in=h,o.next_out=k,o.avail_in=h<v?v-h+5:5-(h-v),o.avail_out=k<g?g-k+257:257-(k-g),n.hold=d,n.bits=w}},{}],49:[function(m,D,b){var o=m("../utils/common"),l=m("./adler32"),n=m("./crc32"),h=m("./inffast"),v=m("./inftrees"),k=1,_=2,g=0,i=-2,c=1,r=852,u=592;function a(p){return(p>>>24&255)+(p>>>8&65280)+((65280&p)<<8)+((255&p)<<24)}function d(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new o.Buf16(320),this.work=new o.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function w(p){var R;return p&&p.state?(R=p.state,p.total_in=p.total_out=R.total=0,p.msg="",R.wrap&&(p.adler=1&R.wrap),R.mode=c,R.last=0,R.havedict=0,R.dmax=32768,R.head=null,R.hold=0,R.bits=0,R.lencode=R.lendyn=new o.Buf32(r),R.distcode=R.distdyn=new o.Buf32(u),R.sane=1,R.back=-1,g):i}function E(p){var R;return p&&p.state?((R=p.state).wsize=0,R.whave=0,R.wnext=0,w(p)):i}function S(p,R){var e,N;return p&&p.state?(N=p.state,R<0?(e=0,R=-R):(e=1+(R>>4),R<48&&(R&=15)),R&&(R<8||15<R)?i:(N.window!==null&&N.wbits!==R&&(N.window=null),N.wrap=e,N.wbits=R,E(p))):i}function T(p,R){var e,N;return p?(N=new d,(p.state=N).window=null,(e=S(p,R))!==g&&(p.state=null),e):i}var O,U,I=!0;function W(p){if(I){var R;for(O=new o.Buf32(512),U=new o.Buf32(32),R=0;R<144;)p.lens[R++]=8;for(;R<256;)p.lens[R++]=9;for(;R<280;)p.lens[R++]=7;for(;R<288;)p.lens[R++]=8;for(v(k,p.lens,0,288,O,0,p.work,{bits:9}),R=0;R<32;)p.lens[R++]=5;v(_,p.lens,0,32,U,0,p.work,{bits:5}),I=!1}p.lencode=O,p.lenbits=9,p.distcode=U,p.distbits=5}function q(p,R,e,N){var X,L=p.state;return L.window===null&&(L.wsize=1<<L.wbits,L.wnext=0,L.whave=0,L.window=new o.Buf8(L.wsize)),N>=L.wsize?(o.arraySet(L.window,R,e-L.wsize,L.wsize,0),L.wnext=0,L.whave=L.wsize):(N<(X=L.wsize-L.wnext)&&(X=N),o.arraySet(L.window,R,e-N,X,L.wnext),(N-=X)?(o.arraySet(L.window,R,e-N,N,0),L.wnext=N,L.whave=L.wsize):(L.wnext+=X,L.wnext===L.wsize&&(L.wnext=0),L.whave<L.wsize&&(L.whave+=X))),0}b.inflateReset=E,b.inflateReset2=S,b.inflateResetKeep=w,b.inflateInit=function(p){return T(p,15)},b.inflateInit2=T,b.inflate=function(p,R){var e,N,X,L,Q,Z,$,A,y,H,K,j,at,ut,et,tt,ht,st,pt,dt,t,B,C,f,s=0,x=new o.Buf8(4),P=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!p||!p.state||!p.output||!p.input&&p.avail_in!==0)return i;(e=p.state).mode===12&&(e.mode=13),Q=p.next_out,X=p.output,$=p.avail_out,L=p.next_in,N=p.input,Z=p.avail_in,A=e.hold,y=e.bits,H=Z,K=$,B=g;t:for(;;)switch(e.mode){case c:if(e.wrap===0){e.mode=13;break}for(;y<16;){if(Z===0)break t;Z--,A+=N[L++]<<y,y+=8}if(2&e.wrap&&A===35615){x[e.check=0]=255&A,x[1]=A>>>8&255,e.check=n(e.check,x,2,0),y=A=0,e.mode=2;break}if(e.flags=0,e.head&&(e.head.done=!1),!(1&e.wrap)||(((255&A)<<8)+(A>>8))%31){p.msg="incorrect header check",e.mode=30;break}if((15&A)!=8){p.msg="unknown compression method",e.mode=30;break}if(y-=4,t=8+(15&(A>>>=4)),e.wbits===0)e.wbits=t;else if(t>e.wbits){p.msg="invalid window size",e.mode=30;break}e.dmax=1<<t,p.adler=e.check=1,e.mode=512&A?10:12,y=A=0;break;case 2:for(;y<16;){if(Z===0)break t;Z--,A+=N[L++]<<y,y+=8}if(e.flags=A,(255&e.flags)!=8){p.msg="unknown compression method",e.mode=30;break}if(57344&e.flags){p.msg="unknown header flags set",e.mode=30;break}e.head&&(e.head.text=A>>8&1),512&e.flags&&(x[0]=255&A,x[1]=A>>>8&255,e.check=n(e.check,x,2,0)),y=A=0,e.mode=3;case 3:for(;y<32;){if(Z===0)break t;Z--,A+=N[L++]<<y,y+=8}e.head&&(e.head.time=A),512&e.flags&&(x[0]=255&A,x[1]=A>>>8&255,x[2]=A>>>16&255,x[3]=A>>>24&255,e.check=n(e.check,x,4,0)),y=A=0,e.mode=4;case 4:for(;y<16;){if(Z===0)break t;Z--,A+=N[L++]<<y,y+=8}e.head&&(e.head.xflags=255&A,e.head.os=A>>8),512&e.flags&&(x[0]=255&A,x[1]=A>>>8&255,e.check=n(e.check,x,2,0)),y=A=0,e.mode=5;case 5:if(1024&e.flags){for(;y<16;){if(Z===0)break t;Z--,A+=N[L++]<<y,y+=8}e.length=A,e.head&&(e.head.extra_len=A),512&e.flags&&(x[0]=255&A,x[1]=A>>>8&255,e.check=n(e.check,x,2,0)),y=A=0}else e.head&&(e.head.extra=null);e.mode=6;case 6:if(1024&e.flags&&(Z<(j=e.length)&&(j=Z),j&&(e.head&&(t=e.head.extra_len-e.length,e.head.extra||(e.head.extra=new Array(e.head.extra_len)),o.arraySet(e.head.extra,N,L,j,t)),512&e.flags&&(e.check=n(e.check,N,j,L)),Z-=j,L+=j,e.length-=j),e.length))break t;e.length=0,e.mode=7;case 7:if(2048&e.flags){if(Z===0)break t;for(j=0;t=N[L+j++],e.head&&t&&e.length<65536&&(e.head.name+=String.fromCharCode(t)),t&&j<Z;);if(512&e.flags&&(e.check=n(e.check,N,j,L)),Z-=j,L+=j,t)break t}else e.head&&(e.head.name=null);e.length=0,e.mode=8;case 8:if(4096&e.flags){if(Z===0)break t;for(j=0;t=N[L+j++],e.head&&t&&e.length<65536&&(e.head.comment+=String.fromCharCode(t)),t&&j<Z;);if(512&e.flags&&(e.check=n(e.check,N,j,L)),Z-=j,L+=j,t)break t}else e.head&&(e.head.comment=null);e.mode=9;case 9:if(512&e.flags){for(;y<16;){if(Z===0)break t;Z--,A+=N[L++]<<y,y+=8}if(A!==(65535&e.check)){p.msg="header crc mismatch",e.mode=30;break}y=A=0}e.head&&(e.head.hcrc=e.flags>>9&1,e.head.done=!0),p.adler=e.check=0,e.mode=12;break;case 10:for(;y<32;){if(Z===0)break t;Z--,A+=N[L++]<<y,y+=8}p.adler=e.check=a(A),y=A=0,e.mode=11;case 11:if(e.havedict===0)return p.next_out=Q,p.avail_out=$,p.next_in=L,p.avail_in=Z,e.hold=A,e.bits=y,2;p.adler=e.check=1,e.mode=12;case 12:if(R===5||R===6)break t;case 13:if(e.last){A>>>=7&y,y-=7&y,e.mode=27;break}for(;y<3;){if(Z===0)break t;Z--,A+=N[L++]<<y,y+=8}switch(e.last=1&A,y-=1,3&(A>>>=1)){case 0:e.mode=14;break;case 1:if(W(e),e.mode=20,R!==6)break;A>>>=2,y-=2;break t;case 2:e.mode=17;break;case 3:p.msg="invalid block type",e.mode=30}A>>>=2,y-=2;break;case 14:for(A>>>=7&y,y-=7&y;y<32;){if(Z===0)break t;Z--,A+=N[L++]<<y,y+=8}if((65535&A)!=(A>>>16^65535)){p.msg="invalid stored block lengths",e.mode=30;break}if(e.length=65535&A,y=A=0,e.mode=15,R===6)break t;case 15:e.mode=16;case 16:if(j=e.length){if(Z<j&&(j=Z),$<j&&(j=$),j===0)break t;o.arraySet(X,N,L,j,Q),Z-=j,L+=j,$-=j,Q+=j,e.length-=j;break}e.mode=12;break;case 17:for(;y<14;){if(Z===0)break t;Z--,A+=N[L++]<<y,y+=8}if(e.nlen=257+(31&A),A>>>=5,y-=5,e.ndist=1+(31&A),A>>>=5,y-=5,e.ncode=4+(15&A),A>>>=4,y-=4,286<e.nlen||30<e.ndist){p.msg="too many length or distance symbols",e.mode=30;break}e.have=0,e.mode=18;case 18:for(;e.have<e.ncode;){for(;y<3;){if(Z===0)break t;Z--,A+=N[L++]<<y,y+=8}e.lens[P[e.have++]]=7&A,A>>>=3,y-=3}for(;e.have<19;)e.lens[P[e.have++]]=0;if(e.lencode=e.lendyn,e.lenbits=7,C={bits:e.lenbits},B=v(0,e.lens,0,19,e.lencode,0,e.work,C),e.lenbits=C.bits,B){p.msg="invalid code lengths set",e.mode=30;break}e.have=0,e.mode=19;case 19:for(;e.have<e.nlen+e.ndist;){for(;tt=(s=e.lencode[A&(1<<e.lenbits)-1])>>>16&255,ht=65535&s,!((et=s>>>24)<=y);){if(Z===0)break t;Z--,A+=N[L++]<<y,y+=8}if(ht<16)A>>>=et,y-=et,e.lens[e.have++]=ht;else{if(ht===16){for(f=et+2;y<f;){if(Z===0)break t;Z--,A+=N[L++]<<y,y+=8}if(A>>>=et,y-=et,e.have===0){p.msg="invalid bit length repeat",e.mode=30;break}t=e.lens[e.have-1],j=3+(3&A),A>>>=2,y-=2}else if(ht===17){for(f=et+3;y<f;){if(Z===0)break t;Z--,A+=N[L++]<<y,y+=8}y-=et,t=0,j=3+(7&(A>>>=et)),A>>>=3,y-=3}else{for(f=et+7;y<f;){if(Z===0)break t;Z--,A+=N[L++]<<y,y+=8}y-=et,t=0,j=11+(127&(A>>>=et)),A>>>=7,y-=7}if(e.have+j>e.nlen+e.ndist){p.msg="invalid bit length repeat",e.mode=30;break}for(;j--;)e.lens[e.have++]=t}}if(e.mode===30)break;if(e.lens[256]===0){p.msg="invalid code -- missing end-of-block",e.mode=30;break}if(e.lenbits=9,C={bits:e.lenbits},B=v(k,e.lens,0,e.nlen,e.lencode,0,e.work,C),e.lenbits=C.bits,B){p.msg="invalid literal/lengths set",e.mode=30;break}if(e.distbits=6,e.distcode=e.distdyn,C={bits:e.distbits},B=v(_,e.lens,e.nlen,e.ndist,e.distcode,0,e.work,C),e.distbits=C.bits,B){p.msg="invalid distances set",e.mode=30;break}if(e.mode=20,R===6)break t;case 20:e.mode=21;case 21:if(6<=Z&&258<=$){p.next_out=Q,p.avail_out=$,p.next_in=L,p.avail_in=Z,e.hold=A,e.bits=y,h(p,K),Q=p.next_out,X=p.output,$=p.avail_out,L=p.next_in,N=p.input,Z=p.avail_in,A=e.hold,y=e.bits,e.mode===12&&(e.back=-1);break}for(e.back=0;tt=(s=e.lencode[A&(1<<e.lenbits)-1])>>>16&255,ht=65535&s,!((et=s>>>24)<=y);){if(Z===0)break t;Z--,A+=N[L++]<<y,y+=8}if(tt&&(240&tt)==0){for(st=et,pt=tt,dt=ht;tt=(s=e.lencode[dt+((A&(1<<st+pt)-1)>>st)])>>>16&255,ht=65535&s,!(st+(et=s>>>24)<=y);){if(Z===0)break t;Z--,A+=N[L++]<<y,y+=8}A>>>=st,y-=st,e.back+=st}if(A>>>=et,y-=et,e.back+=et,e.length=ht,tt===0){e.mode=26;break}if(32&tt){e.back=-1,e.mode=12;break}if(64&tt){p.msg="invalid literal/length code",e.mode=30;break}e.extra=15&tt,e.mode=22;case 22:if(e.extra){for(f=e.extra;y<f;){if(Z===0)break t;Z--,A+=N[L++]<<y,y+=8}e.length+=A&(1<<e.extra)-1,A>>>=e.extra,y-=e.extra,e.back+=e.extra}e.was=e.length,e.mode=23;case 23:for(;tt=(s=e.distcode[A&(1<<e.distbits)-1])>>>16&255,ht=65535&s,!((et=s>>>24)<=y);){if(Z===0)break t;Z--,A+=N[L++]<<y,y+=8}if((240&tt)==0){for(st=et,pt=tt,dt=ht;tt=(s=e.distcode[dt+((A&(1<<st+pt)-1)>>st)])>>>16&255,ht=65535&s,!(st+(et=s>>>24)<=y);){if(Z===0)break t;Z--,A+=N[L++]<<y,y+=8}A>>>=st,y-=st,e.back+=st}if(A>>>=et,y-=et,e.back+=et,64&tt){p.msg="invalid distance code",e.mode=30;break}e.offset=ht,e.extra=15&tt,e.mode=24;case 24:if(e.extra){for(f=e.extra;y<f;){if(Z===0)break t;Z--,A+=N[L++]<<y,y+=8}e.offset+=A&(1<<e.extra)-1,A>>>=e.extra,y-=e.extra,e.back+=e.extra}if(e.offset>e.dmax){p.msg="invalid distance too far back",e.mode=30;break}e.mode=25;case 25:if($===0)break t;if(j=K-$,e.offset>j){if((j=e.offset-j)>e.whave&&e.sane){p.msg="invalid distance too far back",e.mode=30;break}at=j>e.wnext?(j-=e.wnext,e.wsize-j):e.wnext-j,j>e.length&&(j=e.length),ut=e.window}else ut=X,at=Q-e.offset,j=e.length;for($<j&&(j=$),$-=j,e.length-=j;X[Q++]=ut[at++],--j;);e.length===0&&(e.mode=21);break;case 26:if($===0)break t;X[Q++]=e.length,$--,e.mode=21;break;case 27:if(e.wrap){for(;y<32;){if(Z===0)break t;Z--,A|=N[L++]<<y,y+=8}if(K-=$,p.total_out+=K,e.total+=K,K&&(p.adler=e.check=e.flags?n(e.check,X,K,Q-K):l(e.check,X,K,Q-K)),K=$,(e.flags?A:a(A))!==e.check){p.msg="incorrect data check",e.mode=30;break}y=A=0}e.mode=28;case 28:if(e.wrap&&e.flags){for(;y<32;){if(Z===0)break t;Z--,A+=N[L++]<<y,y+=8}if(A!==(4294967295&e.total)){p.msg="incorrect length check",e.mode=30;break}y=A=0}e.mode=29;case 29:B=1;break t;case 30:B=-3;break t;case 31:return-4;default:return i}return p.next_out=Q,p.avail_out=$,p.next_in=L,p.avail_in=Z,e.hold=A,e.bits=y,(e.wsize||K!==p.avail_out&&e.mode<30&&(e.mode<27||R!==4))&&q(p,p.output,p.next_out,K-p.avail_out)?(e.mode=31,-4):(H-=p.avail_in,K-=p.avail_out,p.total_in+=H,p.total_out+=K,e.total+=K,e.wrap&&K&&(p.adler=e.check=e.flags?n(e.check,X,K,p.next_out-K):l(e.check,X,K,p.next_out-K)),p.data_type=e.bits+(e.last?64:0)+(e.mode===12?128:0)+(e.mode===20||e.mode===15?256:0),(H==0&&K===0||R===4)&&B===g&&(B=-5),B)},b.inflateEnd=function(p){if(!p||!p.state)return i;var R=p.state;return R.window&&(R.window=null),p.state=null,g},b.inflateGetHeader=function(p,R){var e;return p&&p.state?(2&(e=p.state).wrap)==0?i:((e.head=R).done=!1,g):i},b.inflateSetDictionary=function(p,R){var e,N=R.length;return p&&p.state?(e=p.state).wrap!==0&&e.mode!==11?i:e.mode===11&&l(1,R,N,0)!==e.check?-3:q(p,R,N,N)?(e.mode=31,-4):(e.havedict=1,g):i},b.inflateInfo="pako inflate (from Nodeca project)"},{"../utils/common":41,"./adler32":43,"./crc32":45,"./inffast":48,"./inftrees":50}],50:[function(m,D,b){var o=m("../utils/common"),l=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],n=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],h=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],v=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];D.exports=function(k,_,g,i,c,r,u,a){var d,w,E,S,T,O,U,I,W,q=a.bits,p=0,R=0,e=0,N=0,X=0,L=0,Q=0,Z=0,$=0,A=0,y=null,H=0,K=new o.Buf16(16),j=new o.Buf16(16),at=null,ut=0;for(p=0;p<=15;p++)K[p]=0;for(R=0;R<i;R++)K[_[g+R]]++;for(X=q,N=15;1<=N&&K[N]===0;N--);if(N<X&&(X=N),N===0)return c[r++]=20971520,c[r++]=20971520,a.bits=1,0;for(e=1;e<N&&K[e]===0;e++);for(X<e&&(X=e),p=Z=1;p<=15;p++)if(Z<<=1,(Z-=K[p])<0)return-1;if(0<Z&&(k===0||N!==1))return-1;for(j[1]=0,p=1;p<15;p++)j[p+1]=j[p]+K[p];for(R=0;R<i;R++)_[g+R]!==0&&(u[j[_[g+R]]++]=R);if(O=k===0?(y=at=u,19):k===1?(y=l,H-=257,at=n,ut-=257,256):(y=h,at=v,-1),p=e,T=r,Q=R=A=0,E=-1,S=($=1<<(L=X))-1,k===1&&852<$||k===2&&592<$)return 1;for(;;){for(U=p-Q,W=u[R]<O?(I=0,u[R]):u[R]>O?(I=at[ut+u[R]],y[H+u[R]]):(I=96,0),d=1<<p-Q,e=w=1<<L;c[T+(A>>Q)+(w-=d)]=U<<24|I<<16|W|0,w!==0;);for(d=1<<p-1;A&d;)d>>=1;if(d!==0?(A&=d-1,A+=d):A=0,R++,--K[p]==0){if(p===N)break;p=_[g+u[R]]}if(X<p&&(A&S)!==E){for(Q===0&&(Q=X),T+=e,Z=1<<(L=p-Q);L+Q<N&&!((Z-=K[L+Q])<=0);)L++,Z<<=1;if($+=1<<L,k===1&&852<$||k===2&&592<$)return 1;c[E=A&S]=X<<24|L<<16|T-r|0}}return A!==0&&(c[T+A]=p-Q<<24|64<<16|0),a.bits=X,0}},{"../utils/common":41}],51:[function(m,D,b){D.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},{}],52:[function(m,D,b){var o=m("../utils/common"),l=0,n=1;function h(s){for(var x=s.length;0<=--x;)s[x]=0}var v=0,k=29,_=256,g=_+1+k,i=30,c=19,r=2*g+1,u=15,a=16,d=7,w=256,E=16,S=17,T=18,O=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],U=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],I=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],W=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],q=new Array(2*(g+2));h(q);var p=new Array(2*i);h(p);var R=new Array(512);h(R);var e=new Array(256);h(e);var N=new Array(k);h(N);var X,L,Q,Z=new Array(i);function $(s,x,P,F,z){this.static_tree=s,this.extra_bits=x,this.extra_base=P,this.elems=F,this.max_length=z,this.has_stree=s&&s.length}function A(s,x){this.dyn_tree=s,this.max_code=0,this.stat_desc=x}function y(s){return s<256?R[s]:R[256+(s>>>7)]}function H(s,x){s.pending_buf[s.pending++]=255&x,s.pending_buf[s.pending++]=x>>>8&255}function K(s,x,P){s.bi_valid>a-P?(s.bi_buf|=x<<s.bi_valid&65535,H(s,s.bi_buf),s.bi_buf=x>>a-s.bi_valid,s.bi_valid+=P-a):(s.bi_buf|=x<<s.bi_valid&65535,s.bi_valid+=P)}function j(s,x,P){K(s,P[2*x],P[2*x+1])}function at(s,x){for(var P=0;P|=1&s,s>>>=1,P<<=1,0<--x;);return P>>>1}function ut(s,x,P){var F,z,M=new Array(u+1),Y=0;for(F=1;F<=u;F++)M[F]=Y=Y+P[F-1]<<1;for(z=0;z<=x;z++){var G=s[2*z+1];G!==0&&(s[2*z]=at(M[G]++,G))}}function et(s){var x;for(x=0;x<g;x++)s.dyn_ltree[2*x]=0;for(x=0;x<i;x++)s.dyn_dtree[2*x]=0;for(x=0;x<c;x++)s.bl_tree[2*x]=0;s.dyn_ltree[2*w]=1,s.opt_len=s.static_len=0,s.last_lit=s.matches=0}function tt(s){8<s.bi_valid?H(s,s.bi_buf):0<s.bi_valid&&(s.pending_buf[s.pending++]=s.bi_buf),s.bi_buf=0,s.bi_valid=0}function ht(s,x,P,F){var z=2*x,M=2*P;return s[z]<s[M]||s[z]===s[M]&&F[x]<=F[P]}function st(s,x,P){for(var F=s.heap[P],z=P<<1;z<=s.heap_len&&(z<s.heap_len&&ht(x,s.heap[z+1],s.heap[z],s.depth)&&z++,!ht(x,F,s.heap[z],s.depth));)s.heap[P]=s.heap[z],P=z,z<<=1;s.heap[P]=F}function pt(s,x,P){var F,z,M,Y,G=0;if(s.last_lit!==0)for(;F=s.pending_buf[s.d_buf+2*G]<<8|s.pending_buf[s.d_buf+2*G+1],z=s.pending_buf[s.l_buf+G],G++,F===0?j(s,z,x):(j(s,(M=e[z])+_+1,x),(Y=O[M])!==0&&K(s,z-=N[M],Y),j(s,M=y(--F),P),(Y=U[M])!==0&&K(s,F-=Z[M],Y)),G<s.last_lit;);j(s,w,x)}function dt(s,x){var P,F,z,M=x.dyn_tree,Y=x.stat_desc.static_tree,G=x.stat_desc.has_stree,V=x.stat_desc.elems,it=-1;for(s.heap_len=0,s.heap_max=r,P=0;P<V;P++)M[2*P]!==0?(s.heap[++s.heap_len]=it=P,s.depth[P]=0):M[2*P+1]=0;for(;s.heap_len<2;)M[2*(z=s.heap[++s.heap_len]=it<2?++it:0)]=1,s.depth[z]=0,s.opt_len--,G&&(s.static_len-=Y[2*z+1]);for(x.max_code=it,P=s.heap_len>>1;1<=P;P--)st(s,M,P);for(z=V;P=s.heap[1],s.heap[1]=s.heap[s.heap_len--],st(s,M,1),F=s.heap[1],s.heap[--s.heap_max]=P,s.heap[--s.heap_max]=F,M[2*z]=M[2*P]+M[2*F],s.depth[z]=(s.depth[P]>=s.depth[F]?s.depth[P]:s.depth[F])+1,M[2*P+1]=M[2*F+1]=z,s.heap[1]=z++,st(s,M,1),2<=s.heap_len;);s.heap[--s.heap_max]=s.heap[1],(function(rt,ct){var yt,mt,bt,ot,xt,At,_t=ct.dyn_tree,Rt=ct.max_code,Wt=ct.stat_desc.static_tree,Mt=ct.stat_desc.has_stree,Gt=ct.stat_desc.extra_bits,Bt=ct.stat_desc.extra_base,wt=ct.stat_desc.max_length,St=0;for(ot=0;ot<=u;ot++)rt.bl_count[ot]=0;for(_t[2*rt.heap[rt.heap_max]+1]=0,yt=rt.heap_max+1;yt<r;yt++)wt<(ot=_t[2*_t[2*(mt=rt.heap[yt])+1]+1]+1)&&(ot=wt,St++),_t[2*mt+1]=ot,Rt<mt||(rt.bl_count[ot]++,xt=0,Bt<=mt&&(xt=Gt[mt-Bt]),At=_t[2*mt],rt.opt_len+=At*(ot+xt),Mt&&(rt.static_len+=At*(Wt[2*mt+1]+xt)));if(St!==0){do{for(ot=wt-1;rt.bl_count[ot]===0;)ot--;rt.bl_count[ot]--,rt.bl_count[ot+1]+=2,rt.bl_count[wt]--,St-=2}while(0<St);for(ot=wt;ot!==0;ot--)for(mt=rt.bl_count[ot];mt!==0;)Rt<(bt=rt.heap[--yt])||(_t[2*bt+1]!==ot&&(rt.opt_len+=(ot-_t[2*bt+1])*_t[2*bt],_t[2*bt+1]=ot),mt--)}})(s,x),ut(M,it,s.bl_count)}function t(s,x,P){var F,z,M=-1,Y=x[1],G=0,V=7,it=4;for(Y===0&&(V=138,it=3),x[2*(P+1)+1]=65535,F=0;F<=P;F++)z=Y,Y=x[2*(F+1)+1],++G<V&&z===Y||(G<it?s.bl_tree[2*z]+=G:z!==0?(z!==M&&s.bl_tree[2*z]++,s.bl_tree[2*E]++):G<=10?s.bl_tree[2*S]++:s.bl_tree[2*T]++,M=z,it=(G=0)===Y?(V=138,3):z===Y?(V=6,3):(V=7,4))}function B(s,x,P){var F,z,M=-1,Y=x[1],G=0,V=7,it=4;for(Y===0&&(V=138,it=3),F=0;F<=P;F++)if(z=Y,Y=x[2*(F+1)+1],!(++G<V&&z===Y)){if(G<it)for(;j(s,z,s.bl_tree),--G!=0;);else z!==0?(z!==M&&(j(s,z,s.bl_tree),G--),j(s,E,s.bl_tree),K(s,G-3,2)):G<=10?(j(s,S,s.bl_tree),K(s,G-3,3)):(j(s,T,s.bl_tree),K(s,G-11,7));M=z,it=(G=0)===Y?(V=138,3):z===Y?(V=6,3):(V=7,4)}}h(Z);var C=!1;function f(s,x,P,F){K(s,(v<<1)+(F?1:0),3),(function(z,M,Y,G){tt(z),H(z,Y),H(z,~Y),o.arraySet(z.pending_buf,z.window,M,Y,z.pending),z.pending+=Y})(s,x,P)}b._tr_init=function(s){C||((function(){var x,P,F,z,M,Y=new Array(u+1);for(z=F=0;z<k-1;z++)for(N[z]=F,x=0;x<1<<O[z];x++)e[F++]=z;for(e[F-1]=z,z=M=0;z<16;z++)for(Z[z]=M,x=0;x<1<<U[z];x++)R[M++]=z;for(M>>=7;z<i;z++)for(Z[z]=M<<7,x=0;x<1<<U[z]-7;x++)R[256+M++]=z;for(P=0;P<=u;P++)Y[P]=0;for(x=0;x<=143;)q[2*x+1]=8,x++,Y[8]++;for(;x<=255;)q[2*x+1]=9,x++,Y[9]++;for(;x<=279;)q[2*x+1]=7,x++,Y[7]++;for(;x<=287;)q[2*x+1]=8,x++,Y[8]++;for(ut(q,g+1,Y),x=0;x<i;x++)p[2*x+1]=5,p[2*x]=at(x,5);X=new $(q,O,_+1,g,u),L=new $(p,U,0,i,u),Q=new $(new Array(0),I,0,c,d)})(),C=!0),s.l_desc=new A(s.dyn_ltree,X),s.d_desc=new A(s.dyn_dtree,L),s.bl_desc=new A(s.bl_tree,Q),s.bi_buf=0,s.bi_valid=0,et(s)},b._tr_stored_block=f,b._tr_flush_block=function(s,x,P,F){var z,M,Y=0;0<s.level?(s.strm.data_type===2&&(s.strm.data_type=(function(G){var V,it=4093624447;for(V=0;V<=31;V++,it>>>=1)if(1&it&&G.dyn_ltree[2*V]!==0)return l;if(G.dyn_ltree[18]!==0||G.dyn_ltree[20]!==0||G.dyn_ltree[26]!==0)return n;for(V=32;V<_;V++)if(G.dyn_ltree[2*V]!==0)return n;return l})(s)),dt(s,s.l_desc),dt(s,s.d_desc),Y=(function(G){var V;for(t(G,G.dyn_ltree,G.l_desc.max_code),t(G,G.dyn_dtree,G.d_desc.max_code),dt(G,G.bl_desc),V=c-1;3<=V&&G.bl_tree[2*W[V]+1]===0;V--);return G.opt_len+=3*(V+1)+5+5+4,V})(s),z=s.opt_len+3+7>>>3,(M=s.static_len+3+7>>>3)<=z&&(z=M)):z=M=P+5,P+4<=z&&x!==-1?f(s,x,P,F):s.strategy===4||M===z?(K(s,2+(F?1:0),3),pt(s,q,p)):(K(s,4+(F?1:0),3),(function(G,V,it,rt){var ct;for(K(G,V-257,5),K(G,it-1,5),K(G,rt-4,4),ct=0;ct<rt;ct++)K(G,G.bl_tree[2*W[ct]+1],3);B(G,G.dyn_ltree,V-1),B(G,G.dyn_dtree,it-1)})(s,s.l_desc.max_code+1,s.d_desc.max_code+1,Y+1),pt(s,s.dyn_ltree,s.dyn_dtree)),et(s),F&&tt(s)},b._tr_tally=function(s,x,P){return s.pending_buf[s.d_buf+2*s.last_lit]=x>>>8&255,s.pending_buf[s.d_buf+2*s.last_lit+1]=255&x,s.pending_buf[s.l_buf+s.last_lit]=255&P,s.last_lit++,x===0?s.dyn_ltree[2*P]++:(s.matches++,x--,s.dyn_ltree[2*(e[P]+_+1)]++,s.dyn_dtree[2*y(x)]++),s.last_lit===s.lit_bufsize-1},b._tr_align=function(s){K(s,2,3),j(s,w,q),(function(x){x.bi_valid===16?(H(x,x.bi_buf),x.bi_buf=0,x.bi_valid=0):8<=x.bi_valid&&(x.pending_buf[x.pending++]=255&x.bi_buf,x.bi_buf>>=8,x.bi_valid-=8)})(s)}},{"../utils/common":41}],53:[function(m,D,b){D.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},{}],54:[function(m,D,b){(function(o){(function(l,n){if(!l.setImmediate){var h,v,k,_,g=1,i={},c=!1,r=l.document,u=Object.getPrototypeOf&&Object.getPrototypeOf(l);u=u&&u.setTimeout?u:l,h={}.toString.call(l.process)==="[object process]"?function(E){process.nextTick(function(){d(E)})}:(function(){if(l.postMessage&&!l.importScripts){var E=!0,S=l.onmessage;return l.onmessage=function(){E=!1},l.postMessage("","*"),l.onmessage=S,E}})()?(_="setImmediate$"+Math.random()+"$",l.addEventListener?l.addEventListener("message",w,!1):l.attachEvent("onmessage",w),function(E){l.postMessage(_+E,"*")}):l.MessageChannel?((k=new MessageChannel).port1.onmessage=function(E){d(E.data)},function(E){k.port2.postMessage(E)}):r&&"onreadystatechange"in r.createElement("script")?(v=r.documentElement,function(E){var S=r.createElement("script");S.onreadystatechange=function(){d(E),S.onreadystatechange=null,v.removeChild(S),S=null},v.appendChild(S)}):function(E){setTimeout(d,0,E)},u.setImmediate=function(E){typeof E!="function"&&(E=new Function(""+E));for(var S=new Array(arguments.length-1),T=0;T<S.length;T++)S[T]=arguments[T+1];var O={callback:E,args:S};return i[g]=O,h(g),g++},u.clearImmediate=a}function a(E){delete i[E]}function d(E){if(c)setTimeout(d,0,E);else{var S=i[E];if(S){c=!0;try{(function(T){var O=T.callback,U=T.args;switch(U.length){case 0:O();break;case 1:O(U[0]);break;case 2:O(U[0],U[1]);break;case 3:O(U[0],U[1],U[2]);break;default:O.apply(n,U)}})(S)}finally{a(E),c=!1}}}}function w(E){E.source===l&&typeof E.data=="string"&&E.data.indexOf(_)===0&&d(+E.data.slice(_.length))}})(typeof self>"u"?o===void 0?this:o:self)}).call(this,typeof Et<"u"?Et:typeof self<"u"?self:typeof window<"u"?window:{})},{}]},{},[10])(10)})})(Tt)),Tt.exports}var he=ue();const Se=Kt(he),fe=["image/png","image/jpeg","image/gif","image/webp","image/bmp","image/avif"],ce=new Set(fe),de=new Map([["image/png","png"],["image/jpeg","jpg"],["image/gif","gif"],["image/webp","webp"],["image/bmp","bmp"],["image/avif","avif"]]),Ee="Unsupported image type. Use PNG, JPEG, GIF, WebP, BMP, or AVIF.",ze="Failed to upload image.",Ae=nt=>ce.has(nt),Ce=nt=>de.get(nt),pe=nt=>{const ft=nt.trim();if(!ft)return null;try{const m=new URL(ft);return m.protocol==="http:"||m.protocol==="https:"?m.toString():null}catch{return null}},me=nt=>({id:nt?.key??"",key:nt?.key??"",name:nt?.name??"",value:nt?.value??"",valueType:nt?.valueType??"text",persistedKey:nt?.key}),_e=nt=>{if(Array.isArray(nt))return nt;const ft=nt?.keys;return Array.isArray(ft)?ft:[]},Ot=(nt=[])=>nt.map(me),Zt=(nt,ft)=>{const m=[],D=new Set(ft);for(const b of nt){const o=b.key.trim();if(!o)continue;const l=b.value.trim(),n=!!b.persistedKey&&(b.valueType==="number"||b.valueType==="date"||b.valueType==="select"||b.valueType==="url");if(!l&&n){D.add(b.persistedKey);continue}!l&&b.valueType!=="text"&&b.valueType!=="boolean"||m.push({key:o,name:b.name.trim()||o,value:b.valueType==="boolean"?l||"false":l,valueType:b.valueType})}return{set:m.sort((b,o)=>b.key.localeCompare(o.key)),deleteKeys:Array.from(D).sort()}},vt=(nt,ft=[])=>JSON.stringify(Zt(nt,ft)),Ie=lt.forwardRef(function({noteId:ft,properties:m=[],expectedUpdatedAt:D,editSessionId:b,disabled:o,saveProperties:l=Xt,onPendingChange:n,onSaved:h},v){const k=ie(),_=Vt(),[g,i]=lt.useState(()=>Ot(m)),[c,r]=lt.useState([]),[u,a]=lt.useState("idle"),d=lt.useRef(g),w=lt.useRef(c),E=lt.useRef(D),S=lt.useRef(vt(g)),T=lt.useRef(null),O=lt.useRef(!1),U=lt.useRef(null),I=lt.useRef(!1),W=lt.useRef(0),q=Ht({queryKey:Nt.notes.propertyKeys({limit:50}),queryFn:async()=>{const y=await ae({limit:50});if(y.type==="error")throw y;return y.notePropertyKeys.keys}});lt.useEffect(()=>{const y=Ot(m);i(y),r([]),S.current=vt(y),a("idle")},[m]),lt.useEffect(()=>{d.current=g},[g]),lt.useEffect(()=>{w.current=c},[c]),lt.useEffect(()=>{E.current=D},[D]);const p=_e(q.data),R=p.filter(y=>!g.some(H=>H.key===y.key)),e=p.length>0,N=vt(g,c)!==S.current,X=lt.useCallback(async({ignoreDisabled:y=!1,expectedUpdatedAt:H}={})=>{if(T.current&&(clearTimeout(T.current),T.current=null),U.current){I.current=!0;const tt=await U.current;return tt==="error"?tt:X({ignoreDisabled:y})}const K=vt(d.current,w.current);if(!y&&o||K===S.current)return"idle";const j=Zt(d.current,w.current);if(j.set.length===0&&j.deleteKeys.length===0)return"idle";O.current=!0,I.current=!1,a("saving");const at=W.current,ut=(async()=>{try{const tt=await l({id:ft,set:j.set,deleteKeys:j.deleteKeys,editSessionId:b,expectedUpdatedAt:H??E.current});return!tt||at!==W.current?(a("idle"),"idle"):tt.type==="error"?(a("error"),k(tt.errors[0]?.message??"Failed to save properties."),"error"):(E.current=tt.updateNoteProperties.updatedAt,S.current=vt(Ot(tt.updateNoteProperties.properties??[])),await h(tt.updateNoteProperties),_.invalidateQueries({queryKey:Nt.notes.propertyKeysAll(),exact:!1}),a("saved"),"saved")}catch{return a("error"),k("Failed to save properties."),"error"}finally{O.current=!1}})();U.current=ut;const et=await ut;if(U.current===ut&&(U.current=null),I.current){I.current=!1;const tt=await X({ignoreDisabled:y});return tt==="idle"?et:tt}return et},[o,b,ft,h,_,l,k]);lt.useImperativeHandle(v,()=>({flushPendingSave:({expectedUpdatedAt:y}={})=>X({ignoreDisabled:!0,expectedUpdatedAt:y}),invalidateInFlightSave:()=>{W.current+=1,T.current&&(clearTimeout(T.current),T.current=null)},discardPendingChanges:()=>{W.current+=1,I.current=!1,S.current=vt(d.current,w.current),a("idle"),T.current&&(clearTimeout(T.current),T.current=null)}}),[X]),lt.useEffect(()=>{n?.(N||u==="saving")},[u,N,n]),lt.useEffect(()=>{if(T.current&&clearTimeout(T.current),!(o||vt(g,c)===S.current))return T.current=setTimeout(()=>{X()},500),()=>{T.current&&clearTimeout(T.current)}},[c,o,g,X]);const L=y=>{i(H=>[...H,{id:y.key,key:y.key,name:y.name,value:"",valueType:y.valueType,persistedKey:void 0}]),r(H=>H.filter(K=>K!==y.key))},Q=(y,H)=>{i(K=>K.map(j=>j.id===y?{...j,...H}:j))},Z=y=>{y.persistedKey&&r(H=>[...new Set([...H,y.persistedKey])]),i(H=>H.filter(K=>K.id!==y.id))},$=vt(g,c)!==S.current,A=o||!$&&u==="idle"?null:u==="saving"?"Saving...":u==="error"?"Save failed":$?"Waiting...":"Saved";return J.jsxs(le,{title:"Properties",icon:J.jsx(qt,{className:"h-3.5 w-3.5"}),ariaLabel:"Note properties",action:J.jsxs(J.Fragment,{children:[A&&J.jsx(gt,{as:"span",variant:"micro",tone:u==="error"?"error":"tertiary",className:"px-1",children:A}),e&&J.jsx(kt,{asChild:!0,size:"sm",variant:"ghost",children:J.jsxs(jt,{to:Ft,search:{page:1},children:[J.jsx(Yt,{className:"h-3 w-3"}),"Manage"]})})]}),children:[g.length===0?J.jsx(gt,{as:"p",variant:"label",tone:"tertiary",className:"px-1 py-2",children:"No properties yet."}):J.jsx("div",{className:"divide-y divide-border-subtle",children:g.map(y=>{const H=`note-property-${y.id}-label`,K=y.valueType==="url"?pe(y.value):null;return J.jsxs("div",{className:"group grid grid-cols-[minmax(0,5.5rem)_minmax(0,1fr)_auto] items-center gap-1 py-1.5 sm:grid-cols-[minmax(0,180px)_minmax(0,1fr)_auto] sm:gap-2 sm:py-2",children:[J.jsxs("div",{className:"flex min-w-0 items-center gap-2 px-1",children:[J.jsx(gt,{id:H,as:"span",variant:"label",tone:"secondary",className:"truncate",children:y.name}),J.jsx(gt,{as:"span",variant:"micro",tone:"tertiary",className:"hidden truncate font-mono sm:inline",children:y.key})]}),y.valueType==="boolean"?J.jsxs(Dt,{size:"sm",variant:"ghost",className:"min-w-0",value:y.value||"false",disabled:o,"aria-labelledby":H,onValueChange:j=>Q(y.id,{value:j}),children:[J.jsx(It,{value:"false",children:"False"}),J.jsx(It,{value:"true",children:"True"})]}):y.valueType==="select"?J.jsx(Dt,{size:"sm",variant:"ghost",className:"min-w-0",value:y.value,placeholder:"Select option",disabled:o,"aria-labelledby":H,onValueChange:j=>Q(y.id,{value:j}),children:(p.find(j=>j.key===y.key)?.options??[]).map(j=>J.jsx(It,{value:j.value,children:j.label},j.id))}):y.valueType==="url"?J.jsxs("div",{className:"flex min-w-0 items-center gap-1",children:[J.jsx(Pt,{className:"min-w-0",size:"sm",variant:"ghost",type:"url","aria-label":"Property value",placeholder:"https://example.com",value:y.value,disabled:o,onChange:j=>Q(y.id,{value:j.target.value})}),K?J.jsx(kt,{asChild:!0,size:"icon-sm",variant:"ghost","aria-label":`Open ${y.name}`,className:"shrink-0 text-fg-tertiary",children:J.jsx("a",{href:K,target:"_blank",rel:"noopener noreferrer",title:K,children:J.jsx(oe,{className:"h-4 w-4"})})}):null]}):J.jsx(Pt,{size:"sm",variant:"ghost",type:y.valueType==="date"?"date":y.valueType==="number"?"number":"text","aria-label":"Property value",placeholder:"Value",value:y.value,disabled:o,onChange:j=>Q(y.id,{value:j.target.value})}),J.jsx(kt,{type:"button",size:"icon-sm",variant:"ghost","aria-label":`Remove ${y.name}`,disabled:o,className:"justify-self-end text-fg-tertiary sm:opacity-0 sm:group-hover:opacity-100 sm:focus-visible:opacity-100",onClick:()=>Z(y),children:J.jsx(Jt,{className:"h-4 w-4"})})]},y.id)})}),J.jsx("div",{className:"mt-2 flex flex-wrap items-center gap-2",children:q.isLoading?J.jsx(kt,{type:"button",size:"sm",variant:"ghost",disabled:!0,children:"Loading properties..."}):R.length>0?J.jsxs($t,{children:[J.jsx(Qt,{asChild:!0,children:J.jsxs(kt,{type:"button",size:"sm",variant:"ghost",disabled:o,children:[J.jsx(Ut,{className:"h-4 w-4"}),"Add property"]})}),J.jsxs(te,{align:"start",sideOffset:6,className:"max-h-80 w-[min(22rem,calc(100vw-2rem))]",style:{overflowY:"auto"},children:[J.jsx(ee,{children:J.jsx(gt,{as:"span",variant:"label",weight:"semibold",children:"Add property"})}),J.jsx(re,{}),R.map(y=>J.jsxs(ne,{className:"flex-col items-start gap-0.5 whitespace-normal",onClick:()=>L(y),children:[J.jsxs("span",{className:"flex w-full min-w-0 items-center justify-between gap-3",children:[J.jsx(gt,{as:"span",variant:"label",weight:"medium",className:"truncate",children:y.name}),J.jsx(gt,{as:"span",variant:"micro",tone:"tertiary",className:"shrink-0 capitalize",children:y.valueType})]}),J.jsx(gt,{as:"span",variant:"micro",tone:"tertiary",className:"font-mono",children:y.key})]},y.key))]})]}):e?J.jsx(gt,{as:"span",variant:"micro",tone:"tertiary",className:"px-1",children:"All shared properties are attached."}):J.jsxs(jt,{to:Ft,search:{page:1},className:"focus-ring-soft inline-flex items-center gap-2 rounded-[12px] px-2.5 py-1.5 text-sm font-medium text-fg-secondary outline-none hover:bg-hover-subtle hover:text-fg-default",children:[J.jsx(Ut,{className:"h-4 w-4"}),"Create property definition"]})})]})});export{le as A,ze as F,Se as J,Ie as N,fe as S,Ee as U,Ce as g,Ae as i};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as e}from"./floating-ui.react-dom-BWTnA00G.js";import{
|
|
1
|
+
import{r as e}from"./floating-ui.react-dom-BWTnA00G.js";import{C as l}from"./time-Kh6oav5R.js";const r=new Map([["bold",e.createElement(e.Fragment,null,e.createElement("path",{d:"M228,128a12,12,0,0,1-12,12H140v76a12,12,0,0,1-24,0V140H40a12,12,0,0,1,0-24h76V40a12,12,0,0,1,24,0v76h76A12,12,0,0,1,228,128Z"}))],["duotone",e.createElement(e.Fragment,null,e.createElement("path",{d:"M216,56V200a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V56A16,16,0,0,1,56,40H200A16,16,0,0,1,216,56Z",opacity:"0.2"}),e.createElement("path",{d:"M224,128a8,8,0,0,1-8,8H136v80a8,8,0,0,1-16,0V136H40a8,8,0,0,1,0-16h80V40a8,8,0,0,1,16,0v80h80A8,8,0,0,1,224,128Z"}))],["fill",e.createElement(e.Fragment,null,e.createElement("path",{d:"M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM184,136H136v48a8,8,0,0,1-16,0V136H72a8,8,0,0,1,0-16h48V72a8,8,0,0,1,16,0v48h48a8,8,0,0,1,0,16Z"}))],["light",e.createElement(e.Fragment,null,e.createElement("path",{d:"M222,128a6,6,0,0,1-6,6H134v82a6,6,0,0,1-12,0V134H40a6,6,0,0,1,0-12h82V40a6,6,0,0,1,12,0v82h82A6,6,0,0,1,222,128Z"}))],["regular",e.createElement(e.Fragment,null,e.createElement("path",{d:"M224,128a8,8,0,0,1-8,8H136v80a8,8,0,0,1-16,0V136H40a8,8,0,0,1,0-16h80V40a8,8,0,0,1,16,0v80h80A8,8,0,0,1,224,128Z"}))],["thin",e.createElement(e.Fragment,null,e.createElement("path",{d:"M220,128a4,4,0,0,1-4,4H132v84a4,4,0,0,1-8,0V132H40a4,4,0,0,1,0-8h84V40a4,4,0,0,1,8,0v84h84A4,4,0,0,1,220,128Z"}))]]),a=e.forwardRef((t,n)=>e.createElement(l,{ref:n,...t,weights:r}));a.displayName="PlusIcon";const c=a;export{c as n};
|