@rubytech/create-maxy-code 0.1.386 → 0.1.388

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.
Files changed (110) hide show
  1. package/dist/__tests__/cron-heartbeat-registration.test.js +5 -0
  2. package/dist/cron-registration.js +1 -0
  3. package/dist/index.js +4 -0
  4. package/package.json +1 -1
  5. package/payload/platform/neo4j/schema.cypher +36 -1
  6. package/payload/platform/plugins/.claude-plugin/marketplace.json +5 -0
  7. package/payload/platform/plugins/admin/skills/platform-architecture/SKILL.md +61 -1
  8. package/payload/platform/plugins/docs/references/graph.md +11 -0
  9. package/payload/platform/plugins/docs/references/plugins-guide.md +1 -0
  10. package/payload/platform/plugins/docs/references/sweep-guide.md +43 -0
  11. package/payload/platform/plugins/memory/references/schema-estate-agent.md +34 -0
  12. package/payload/platform/plugins/scheduling/PLUGIN.md +17 -1
  13. package/payload/platform/plugins/scheduling/mcp/dist/index.js +12 -0
  14. package/payload/platform/plugins/scheduling/mcp/dist/index.js.map +1 -1
  15. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/agent-dispatch.test.d.ts +2 -0
  16. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/agent-dispatch.test.d.ts.map +1 -0
  17. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/agent-dispatch.test.js +101 -0
  18. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/agent-dispatch.test.js.map +1 -0
  19. package/payload/platform/plugins/scheduling/mcp/dist/lib/agent-dispatch.d.ts +54 -0
  20. package/payload/platform/plugins/scheduling/mcp/dist/lib/agent-dispatch.d.ts.map +1 -0
  21. package/payload/platform/plugins/scheduling/mcp/dist/lib/agent-dispatch.js +117 -0
  22. package/payload/platform/plugins/scheduling/mcp/dist/lib/agent-dispatch.js.map +1 -0
  23. package/payload/platform/plugins/scheduling/mcp/dist/lib/schedule-classify.d.ts +7 -0
  24. package/payload/platform/plugins/scheduling/mcp/dist/lib/schedule-classify.d.ts.map +1 -1
  25. package/payload/platform/plugins/scheduling/mcp/dist/lib/schedule-classify.js +6 -3
  26. package/payload/platform/plugins/scheduling/mcp/dist/lib/schedule-classify.js.map +1 -1
  27. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/agent-turn-dispatch.test.d.ts +2 -0
  28. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/agent-turn-dispatch.test.d.ts.map +1 -0
  29. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/agent-turn-dispatch.test.js +88 -0
  30. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/agent-turn-dispatch.test.js.map +1 -0
  31. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/standing-audit.test.d.ts +2 -0
  32. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/standing-audit.test.d.ts.map +1 -0
  33. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/standing-audit.test.js +77 -0
  34. package/payload/platform/plugins/scheduling/mcp/dist/scripts/__tests__/standing-audit.test.js.map +1 -0
  35. package/payload/platform/plugins/scheduling/mcp/dist/scripts/agent-turn-dispatch.d.ts +59 -0
  36. package/payload/platform/plugins/scheduling/mcp/dist/scripts/agent-turn-dispatch.d.ts.map +1 -0
  37. package/payload/platform/plugins/scheduling/mcp/dist/scripts/agent-turn-dispatch.js +131 -0
  38. package/payload/platform/plugins/scheduling/mcp/dist/scripts/agent-turn-dispatch.js.map +1 -0
  39. package/payload/platform/plugins/scheduling/mcp/dist/scripts/check-due-events.js +62 -15
  40. package/payload/platform/plugins/scheduling/mcp/dist/scripts/check-due-events.js.map +1 -1
  41. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-event-agent.test.d.ts +2 -0
  42. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-event-agent.test.d.ts.map +1 -0
  43. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-event-agent.test.js +110 -0
  44. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-event-agent.test.js.map +1 -0
  45. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-get-agent.test.d.ts +2 -0
  46. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-get-agent.test.d.ts.map +1 -0
  47. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-get-agent.test.js +35 -0
  48. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-get-agent.test.js.map +1 -0
  49. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-update-agent.test.d.ts +2 -0
  50. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-update-agent.test.d.ts.map +1 -0
  51. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-update-agent.test.js +81 -0
  52. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-update-agent.test.js.map +1 -0
  53. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-event.d.ts +7 -0
  54. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-event.d.ts.map +1 -1
  55. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-event.js +21 -4
  56. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-event.js.map +1 -1
  57. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-get.d.ts +4 -0
  58. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-get.d.ts.map +1 -1
  59. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-get.js +6 -0
  60. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-get.js.map +1 -1
  61. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-update.d.ts +2 -1
  62. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-update.d.ts.map +1 -1
  63. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-update.js +32 -1
  64. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-update.js.map +1 -1
  65. package/payload/platform/plugins/sweep/.claude-plugin/plugin.json +8 -0
  66. package/payload/platform/plugins/sweep/PLUGIN.md +15 -0
  67. package/payload/platform/plugins/sweep/skills/sweep-workflow/SKILL.md +113 -0
  68. package/payload/platform/plugins/whatsapp/PLUGIN.md +1 -1
  69. package/payload/platform/plugins/whatsapp/mcp/dist/index.js +19 -4
  70. package/payload/platform/plugins/whatsapp/mcp/dist/index.js.map +1 -1
  71. package/payload/platform/plugins/whatsapp/references/channels-whatsapp.md +9 -4
  72. package/payload/platform/plugins/whatsapp/skills/manage-whatsapp-config/SKILL.md +12 -0
  73. package/payload/platform/scripts/seed-neo4j.sh +38 -0
  74. package/payload/platform/services/whatsapp-channel/dist/notification.d.ts +5 -0
  75. package/payload/platform/services/whatsapp-channel/dist/notification.d.ts.map +1 -1
  76. package/payload/platform/services/whatsapp-channel/dist/notification.js.map +1 -1
  77. package/payload/platform/services/whatsapp-channel/dist/server.js +1 -1
  78. package/payload/platform/services/whatsapp-channel/dist/server.js.map +1 -1
  79. package/payload/server/public/assets/{AdminLoginScreens-oxqHKL3C.js → AdminLoginScreens-BejIjbmU.js} +1 -1
  80. package/payload/server/public/assets/{AdminShell-DBD6ruS1.js → AdminShell-D2-uBSB5.js} +1 -1
  81. package/payload/server/public/assets/{Checkbox-yr8-ftrE.js → Checkbox-1F1tzqca.js} +1 -1
  82. package/payload/server/public/assets/Transcript-DkGa4CQH.js +2 -0
  83. package/payload/server/public/assets/{admin-CQfZnuFy.js → admin-DqQARkjy.js} +1 -1
  84. package/payload/server/public/assets/{browser-DbdPeDK1.js → browser-nDtEK6RC.js} +1 -1
  85. package/payload/server/public/assets/{calendar-CFdOhe7Q.js → calendar-CO4Bwmho.js} +1 -1
  86. package/payload/server/public/assets/chat-DeIge_bC.js +1 -0
  87. package/payload/server/public/assets/chevron-left-DhVdq0aN.js +1 -0
  88. package/payload/server/public/assets/data-B1GIdzHk.js +1 -0
  89. package/payload/server/public/assets/{graph-Bluocsf_.js → graph-DFyicKd7.js} +1 -1
  90. package/payload/server/public/assets/{graph-labels-BcLJmY-v.js → graph-labels-D3BQdcpD.js} +1 -1
  91. package/payload/server/public/assets/{operator-DjK3MBSS.js → operator-BxrjWdT9.js} +1 -1
  92. package/payload/server/public/assets/{page-DQNYTb2d.js → page-ByDLq_o1.js} +1 -1
  93. package/payload/server/public/assets/{page-zJQTRXB2.js → page-D-Ep4bXd.js} +1 -1
  94. package/payload/server/public/assets/{public-CHCniosp.js → public-DbdqfdYq.js} +1 -1
  95. package/payload/server/public/assets/{rotate-ccw-JDfwjfIL.js → rotate-ccw-BkX8HODe.js} +1 -1
  96. package/payload/server/public/assets/{useSubAccountSwitcher-CfI3J2IX.css → useSubAccountSwitcher-DS0iqSkP.css} +1 -1
  97. package/payload/server/public/browser.html +4 -4
  98. package/payload/server/public/calendar.html +5 -5
  99. package/payload/server/public/chat.html +8 -8
  100. package/payload/server/public/data.html +7 -7
  101. package/payload/server/public/graph.html +8 -8
  102. package/payload/server/public/index.html +10 -10
  103. package/payload/server/public/operator.html +10 -10
  104. package/payload/server/public/public.html +8 -8
  105. package/payload/server/server.js +713 -331
  106. package/payload/server/public/assets/Transcript-FX_w6no6.js +0 -2
  107. package/payload/server/public/assets/chat-BunxcNDk.js +0 -1
  108. package/payload/server/public/assets/chevron-left-Cngmu0Py.js +0 -1
  109. package/payload/server/public/assets/data-IqZlMSwG.js +0 -1
  110. /package/payload/server/public/assets/{useSubAccountSwitcher-BpQ3oKiJ.js → useSubAccountSwitcher-DMbRhLPv.js} +0 -0
@@ -1,2 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/pdf-render-NQmflZ7K.js","assets/preload-helper-C5gCWwwF.js"])))=>i.map(i=>d[i]);
2
- import{o as e}from"./chunk-CAM3fms7.js";import{D as t,L as n,M as r,m as i}from"./useSubAccountSwitcher-BpQ3oKiJ.js";import{t as a}from"./preload-helper-C5gCWwwF.js";var o=t(`maximize-2`,[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`m21 3-7 7`,key:`1l2asr`}],[`path`,{d:`m3 21 7-7`,key:`tjx5ai`}],[`path`,{d:`M9 21H3v-6`,key:`wtvkvv`}]]),s=t(`paperclip`,[[`path`,{d:`m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551`,key:`1miecu`}]]),c=e(n(),1),l=r();function u({children:e,tail:t=null,repinSignals:n}){let r=(0,c.useRef)(null),i=(0,c.useRef)(null),a=(0,c.useRef)(!0),[o,s]=(0,c.useState)(!0),u=(0,c.useRef)(0),d=(0,c.useRef)(0),f=()=>{let e=r.current;if(!e)return;let t=e.clientHeight,n=e.scrollHeight,i=t!==u.current||n!==d.current;if(u.current=t,d.current=n,i){a.current&&(e.scrollTop=e.scrollHeight);return}let o=n-e.scrollTop-t<=32;a.current=o,s(e=>e===o?e:o)},p=()=>{let e=r.current;e&&(e.scrollTop=e.scrollHeight,d.current=e.scrollHeight,u.current=e.clientHeight,a.current=!0,s(!0))},m=t!=null;return(0,c.useLayoutEffect)(()=>{let e=r.current;e&&a.current&&(e.scrollTop=e.scrollHeight),e&&(d.current=e.scrollHeight,u.current=e.clientHeight)},[...n,m]),(0,c.useLayoutEffect)(()=>{if(typeof ResizeObserver>`u`)return;let e=new ResizeObserver(()=>f());return r.current&&e.observe(r.current),i.current&&e.observe(i.current),()=>e.disconnect()},[]),(0,l.jsxs)(`div`,{className:`wa-reader`,children:[(0,l.jsx)(`div`,{className:`wa-reader-thread`,ref:r,onScroll:f,children:(0,l.jsxs)(`div`,{className:`wa-thread-scroll`,ref:i,children:[e,t]})}),!o&&(0,l.jsx)(`button`,{type:`button`,className:`wa-jump`,onClick:p,"aria-label":`Jump to latest message`,title:`Jump to latest message`,children:`↓`})]})}var d={auth_expired:`Your session has expired. Please sign in again.`,claude_down:`Claude is currently experiencing an outage. Please try again in a few minutes.`,claude_overloaded:`Claude is overloaded right now. Please try again shortly.`,model_unavailable:`The selected model is currently unavailable. Switch to a different model from the model picker to continue.`,agent_error:`Something went wrong. Please try again.`},f={auth_expired:`I'm not available right now. Please try again later.`,claude_down:`I'm not available right now. Please try again later.`,claude_overloaded:`I'm not available right now. Please try again shortly.`,model_unavailable:`I'm not available right now. Please try again later.`,agent_error:`I'm not available right now. Please try again later.`};function p(e,t=`admin`){return t===`public`?f[e]:d[e]}function m(e){return e===`whatsapp`?` · via WhatsApp`:e===`webchat`?` · via web`:``}var h=/\.(png|jpe?g|gif|webp|svg|bmp)$/i,g=/\.pdf$/i;function _(e,t){return(t?t.startsWith(`image/`):h.test(e))?`image`:t&&t.startsWith(`audio/`)?`audio`:(t?t===`application/pdf`:g.test(e))?`pdf`:`file`}function v(e,t,n,r){let i=encodeURIComponent(e.path),a=encodeURIComponent(n),o=r?`&disposition=${r}`:``;return e.root===`scratchpad`?`/api/admin/files/download?path=${i}&root=scratchpad&sessionId=${encodeURIComponent(t)}&session_key=${a}${o}`:`/api/admin/files/download?path=${i}&root=data&session_key=${a}${o}`}function y(e,t,n,r){return t===`public`?`/api/public-reader/attachment/${e}?sessionId=${encodeURIComponent(n)}`:`/api/admin/attachment/${e}?session_key=${encodeURIComponent(r)}`}function b(e){if(e<1024)return`${e} B`;let t=e/1024;if(t<1024)return`${t<10?t.toFixed(1):Math.round(t)} KB`;let n=t/1024;return`${n<10?n.toFixed(1):Math.round(n)} MB`}function x({href:e,filename:t,label:n}){return(0,l.jsxs)(`a`,{className:`chat-attachment-chip`,href:e,download:t,children:[(0,l.jsx)(s,{size:14,"aria-hidden":!0}),n]})}function S({src:e,filename:t,sizeBytes:n,expandable:r,onFail:i}){let[a,o]=(0,c.useState)(!1),[s,u]=(0,c.useState)(!1),d=n==null?t:`${t} · ${b(n)}`;return s?(0,l.jsx)(x,{href:e,filename:t,label:d}):(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`img`,{className:`chat-attachment-image`,src:e,alt:t,onClick:r?()=>o(!0):void 0,onError:()=>{u(!0),i?.(`fetch`)}}),r&&a&&(0,l.jsx)(`div`,{className:`chat-attachment-overlay`,role:`dialog`,"aria-label":t,onClick:()=>o(!1),children:(0,l.jsx)(`img`,{className:`chat-attachment-overlay-image`,src:e,alt:t})})]})}var C=280,w=360,T=16;function E({src:e,filename:t,sizeBytes:n,onFail:r}){let[i,s]=(0,c.useState)(!1),[u,d]=(0,c.useState)(!1),f=(0,c.useRef)(null),p=n==null?t:`${t} · ${b(n)}`;return(0,c.useEffect)(()=>{let t=!1,n=null;return(async()=>{try{let{loadPdf:r,renderPageToFit:i}=await a(async()=>{let{loadPdf:e,renderPageToFit:t}=await import(`./pdf-render-NQmflZ7K.js`);return{loadPdf:e,renderPageToFit:t}},__vite__mapDeps([0,1])),o=await r(e);n=o;let s=f.current;if(t||!s)return;await i(o,1,s,C,w)}catch{t||(d(!0),r?.(`render`))}})(),()=>{t=!0;try{n?.destroy()}catch{}}},[e]),u?(0,l.jsx)(x,{href:e,filename:t,label:p}):(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(`div`,{className:`chat-attachment-pdf`,children:[(0,l.jsx)(`canvas`,{ref:f,className:`chat-attachment-pdf-canvas`,"aria-label":t}),(0,l.jsx)(`button`,{type:`button`,className:`chat-attachment-pdf-expand`,"aria-label":`Expand ${t}`,onClick:()=>s(!0),children:(0,l.jsx)(o,{size:14,"aria-hidden":!0})})]}),i&&(0,l.jsx)(D,{src:e,filename:t,label:p,onClose:()=>s(!1),onFail:r})]})}function D({src:e,filename:t,label:n,onClose:r,onFail:o}){let s=(0,c.useRef)(null),u=(0,c.useRef)(null),[d,f]=(0,c.useState)(null),[p,m]=(0,c.useState)(!1);return(0,c.useEffect)(()=>{let t=!1;return(async()=>{try{let{loadPdf:n}=await a(async()=>{let{loadPdf:e}=await import(`./pdf-render-NQmflZ7K.js`);return{loadPdf:e}},__vite__mapDeps([0,1])),r=await n(e);if(t){try{r.destroy()}catch{}return}u.current=r,f(r.numPages)}catch{t||(m(!0),o?.(`render`))}})(),()=>{t=!0;try{u.current?.destroy()}catch{}}},[e]),(0,c.useEffect)(()=>{if(d==null)return;let e=s.current,t=u.current;if(!e||!t)return;let n=!1;return(async()=>{try{let{renderPageToWidth:r}=await a(async()=>{let{renderPageToWidth:e}=await import(`./pdf-render-NQmflZ7K.js`);return{renderPageToWidth:e}},__vite__mapDeps([0,1])),i=Array.from(e.querySelectorAll(`canvas.chat-attachment-overlay-page`)),o=Math.max(e.clientWidth-T*2,1);for(let e=0;e<i.length;e++){if(n)return;await r(t,e+1,i[e],o)}}catch{n||(m(!0),o?.(`render`))}})(),()=>{n=!0}},[d]),(0,l.jsxs)(`div`,{className:`chat-attachment-overlay`,role:`dialog`,"aria-label":t,onClick:r,children:[(0,l.jsx)(`div`,{ref:s,className:`chat-attachment-overlay-pdf`,onClick:e=>e.stopPropagation(),children:p?(0,l.jsx)(x,{href:e,filename:t,label:n}):Array.from({length:d??0},(e,n)=>(0,l.jsx)(`canvas`,{className:`chat-attachment-overlay-page`,"aria-label":`${t} page ${n+1}`},n))}),(0,l.jsx)(`button`,{type:`button`,className:`chat-attachment-overlay-close`,"aria-label":`Close`,onClick:r,children:(0,l.jsx)(i,{size:20,"aria-hidden":!0})})]})}function O({filename:e,href:t,mimeType:n,sizeBytes:r,expandable:i,telemetry:a}){let o=_(e,n);(0,c.useEffect)(()=>{a?.onRender?.({kind:o,mime:n,served:!!t})},[]);let u=a?.onFail?e=>a.onFail({kind:o===`pdf`?`pdf`:`image`,mime:n,reason:e}):void 0;if(o===`image`&&t)return(0,l.jsx)(S,{src:t,filename:e,sizeBytes:r,expandable:i,onFail:u});if(o===`audio`&&t)return(0,l.jsx)(`audio`,{className:`chat-attachment-audio`,controls:!0,preload:`metadata`,src:t});if(o===`pdf`&&t)return(0,l.jsx)(E,{src:t,filename:e,sizeBytes:r,onFail:u});let d=r==null?e:`${e} · ${b(r)}`;return t?(0,l.jsx)(x,{href:t,filename:e,label:d}):(0,l.jsxs)(`p`,{className:`chat-doc`,children:[(0,l.jsx)(s,{size:14,"aria-hidden":!0,style:{verticalAlign:`text-bottom`}}),` `,d]})}function k(e,t,n,r=`/api/whatsapp-reader/stream`,i=e,a=!0){let[o,s]=(0,c.useState)([]),[l,u]=(0,c.useState)(`open`),[d,f]=(0,c.useState)(null),p=(0,c.useRef)([]);return(0,c.useEffect)(()=>{p.current=o},[o]),(0,c.useEffect)(()=>{s([]),p.current=[],f(null)},[i,t,n,r]),(0,c.useEffect)(()=>{if(u(`open`),!a)return;let i=p.current.slice(),o=i.map(A),c=0,l=i.length>0,d=`${r}?sessionId=${encodeURIComponent(e)}&projectDir=${encodeURIComponent(t)}&session_key=${encodeURIComponent(n)}`,m=new EventSource(d);return m.onopen=()=>{console.info(`[admin-ui] wa-stream onopen sessionId=${e}`),u(`open`)},m.onmessage=e=>{let t;try{t=JSON.parse(e.data)}catch{return}if(l){if(c<o.length&&A(t)===o[c]){c+=1;return}l=!1}s(e=>[...e,t])},m.addEventListener(`activity`,e=>{try{f(JSON.parse(e.data))}catch{}}),m.addEventListener(`activity-clear`,()=>f(null)),m.onerror=()=>{m.readyState===2&&(console.error(`[admin-ui] wa-stream onerror readyState=${m.readyState}`),u(`error`))},()=>m.close()},[e,t,n,r,i,a]),{turns:o,status:l,subagentActivity:d}}function A(e){return JSON.stringify(e)}function j(e,t,n,r=!0){let[i,a]=(0,c.useState)([]),[o,s]=(0,c.useState)(`open`);return(0,c.useEffect)(()=>{if(a([]),s(`open`),!r||!e||!t)return;let i=`/api/whatsapp-reader/store-stream?accountId=${encodeURIComponent(e)}&remoteJid=${encodeURIComponent(t)}&session_key=${encodeURIComponent(n)}`,o=new EventSource(i);return o.onopen=()=>s(`open`),o.onmessage=e=>{let t;try{t=JSON.parse(e.data)}catch{return}a(e=>[...e,t])},o.onerror=()=>{o.readyState===2&&s(`error`)},()=>o.close()},[e,t,n,r]),{turns:i,status:o}}var M=e=>{if(!e)return 1/0;let t=new Date(e).getTime();return Number.isNaN(t)?1/0:t};function N(e,t){let n=[],r=0;return e.forEach((e,t)=>n.push({sort:M(e.ts),sub:1,ins:r++,item:{kind:`turn`,turn:e,idx:t}})),t.forEach(e=>n.push({sort:M(e.ts),sub:0,ins:r++,item:{kind:`directive`,entry:e}})),n.sort((e,t)=>e.sort===t.sort?e.sort===1/0?e.ins-t.ins:e.sub-t.sub||e.ins-t.ins:e.sort<t.sort?-1:1).map(e=>e.item)}function P(e,t,n=!0){let[r,i]=(0,c.useState)([]);return(0,c.useEffect)(()=>{if(!n||typeof fetch!=`function`)return;let r=!0,a=`/api/whatsapp-reader/directives?sessionId=${encodeURIComponent(e)}&session_key=${encodeURIComponent(t)}`;return fetch(a).then(e=>e.ok?e.json():{entries:[]}).then(e=>{r&&i(Array.isArray(e.entries)?e.entries:[])}).catch(()=>{r&&i([])}),()=>{r=!1}},[e,t,n]),r}var F=new Set([`operator-inbound`,`operator-typed`,`agent-reply`,`agent-reply-document`,`agent-file`,`agent-error`,`whatsapp-persisted`]);function I(e){if(!e)return``;let t=new Date(e);return Number.isNaN(t.getTime())?``:t.toLocaleTimeString([],{hour:`2-digit`,minute:`2-digit`})}function L(e){let t=e.lastIndexOf(`/`);return t===-1?e:e.slice(t+1)}var R=[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],z=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`];function B(e){let t=String(e.getMonth()+1).padStart(2,`0`),n=String(e.getDate()).padStart(2,`0`);return`${e.getFullYear()}-${t}-${n}`}function V(e){if(!e)return null;let t=new Date(e);return Number.isNaN(t.getTime())?null:B(t)}function H(e,t=new Date){if(!e)return``;let n=new Date(e);if(Number.isNaN(n.getTime()))return``;let r=B(n);if(r===B(t))return`Today`;let i=new Date(t);return i.setDate(i.getDate()-1),r===B(i)?`Yesterday`:`${R[n.getDay()]} ${n.getDate()} ${z[n.getMonth()]} ${n.getFullYear()}`}function U(e){return e.kind===`turn`?e.turn.ts:e.entry.ts}function W({ts:e}){return(0,l.jsx)(`div`,{className:`day-divider`,role:`separator`,children:(0,l.jsx)(`span`,{className:`day-divider-label`,children:H(e)})})}function G(){return(0,l.jsx)(`div`,{className:`session-divider`,role:`separator`,children:(0,l.jsx)(`span`,{className:`session-divider-label`,children:`Conversation continued`})})}function K({label:e,ts:t}){return(0,l.jsxs)(`div`,{className:`wa-turn-head`,children:[(0,l.jsx)(`span`,{className:`wa-who`,children:e}),(0,l.jsx)(`time`,{className:`wa-time`,children:I(t)})]})}function q({turn:e}){let[t,n]=(0,c.useState)(!1),r=e.kind===`tool-result`,i=r?`wa-turn wa-turn-result${e.isError?` is-error`:``}`:`wa-turn wa-turn-tool`,a=r?e.isError?`result (error)`:`result`:`↳ ${e.name}`,o=r?e.text:JSON.stringify(e.input,null,2);return(0,l.jsxs)(`div`,{className:i,children:[(0,l.jsxs)(`button`,{type:`button`,className:`wa-tool-toggle`,"aria-expanded":t,onClick:()=>n(e=>!e),children:[(0,l.jsx)(`span`,{className:`wa-chevron`,children:t?`▾`:`▸`}),(0,l.jsx)(`span`,{className:`wa-who`,children:a}),(0,l.jsx)(`time`,{className:`wa-time`,children:I(e.ts)})]}),t&&(0,l.jsx)(`pre`,{className:`wa-code`,children:o})]})}function J({entry:e,sessionId:t,sessionKey:n}){let[r,i]=(0,c.useState)(!1),[a,o]=(0,c.useState)(null),s=()=>{let s=!r;if(i(s),s&&a===null&&typeof fetch==`function`){let r=`/api/whatsapp-reader/directive?sessionId=${encodeURIComponent(t)}&name=${encodeURIComponent(e.name)}&session_key=${encodeURIComponent(n)}`;fetch(r).then(e=>e.ok?e.text():`(directive unavailable)`).then(o).catch(()=>o(`(directive unavailable)`))}};return(0,l.jsxs)(`div`,{className:`wa-turn wa-turn-directive`,children:[(0,l.jsxs)(`button`,{type:`button`,className:`wa-tool-toggle`,"aria-expanded":r,onClick:s,children:[(0,l.jsx)(`span`,{className:`wa-chevron`,children:r?`▾`:`▸`}),(0,l.jsxs)(`span`,{className:`wa-who`,children:[`⚙ directive injected (`,e.len,` B)`]}),(0,l.jsx)(`time`,{className:`wa-time`,children:I(e.ts)})]}),r&&(0,l.jsx)(`pre`,{className:`wa-code`,children:a??`Loading…`})]})}var Y={onRender:({kind:e,mime:t,served:n})=>console.info(`[operator-ui] op=reader-attachment kind=${e} mime=${t??``} served=${n}`),onFail:({kind:e,mime:t,reason:n})=>console.info(`[operator-ui] op=reader-attachment-fail kind=${e} mime=${t??``} reason=${n}`)};function X(e,t,n){switch(e.kind){case`operator-inbound`:return(0,l.jsxs)(`div`,{className:`wa-turn wa-turn-in`,children:[(0,l.jsx)(K,{label:`Operator${m(e.source)}`,ts:e.ts}),e.text&&(0,l.jsx)(`p`,{className:`wa-body`,children:e.text}),e.attachments&&e.attachments.length>0&&(0,l.jsx)(`div`,{className:`chat-attachment-list`,children:e.attachments.map((e,t)=>(0,l.jsx)(O,{expandable:!0,filename:e.filename,mimeType:e.mimeType,sizeBytes:e.sizeBytes,href:y(e.attachmentId,n.audience,n.sessionId,n.sessionKey),telemetry:Y},t))})]},t);case`operator-typed`:return(0,l.jsxs)(`div`,{className:`wa-turn wa-turn-in wa-turn-typed`,children:[(0,l.jsx)(K,{label:`Operator (web)`,ts:e.ts}),(0,l.jsx)(`p`,{className:`wa-body`,children:e.text})]},t);case`agent-text`:return(0,l.jsxs)(`div`,{className:`wa-turn wa-turn-think`,children:[(0,l.jsx)(K,{label:`Agent`,ts:e.ts}),(0,l.jsx)(`p`,{className:`wa-body`,children:e.text})]},t);case`agent-reply`:return(0,l.jsxs)(`div`,{className:`wa-turn wa-turn-out`,children:[(0,l.jsx)(K,{label:`Agent`,ts:e.ts}),(0,l.jsx)(`p`,{className:`wa-body`,children:e.text})]},t);case`agent-reply-document`:return(0,l.jsxs)(`div`,{className:`wa-turn wa-turn-out`,children:[(0,l.jsx)(K,{label:`Agent`,ts:e.ts}),(0,l.jsxs)(`p`,{className:`wa-doc`,children:[(0,l.jsx)(s,{size:14,"aria-hidden":!0,style:{verticalAlign:`text-bottom`}}),` `,`sent document(s): `,e.files.map(L).join(`, `)]}),e.caption&&(0,l.jsx)(`p`,{className:`wa-body`,children:e.caption})]},t);case`agent-file`:return(0,l.jsxs)(`div`,{className:`wa-turn wa-turn-out`,children:[(0,l.jsx)(K,{label:`Agent`,ts:e.ts}),e.files.map((t,r)=>{let i=L(t),a=e.downloads?.[r];return(0,l.jsx)(O,{expandable:!0,filename:i,href:a?v(a,n.sessionId,n.sessionKey,g.test(i)?`inline`:void 0):void 0,telemetry:Y},r)}),e.caption&&(0,l.jsx)(`p`,{className:`wa-body`,children:e.caption})]},t);case`whatsapp-persisted`:return(0,l.jsxs)(`div`,{className:`wa-turn ${e.fromMe?`wa-turn-out`:`wa-turn-in`}`,children:[(0,l.jsx)(K,{label:e.fromMe?`Sent`:e.senderName??`Contact`,ts:e.ts}),(0,l.jsx)(`p`,{className:`wa-body`,children:e.text})]},t);case`session-continued`:return(0,l.jsx)(G,{},t);case`tool-call`:case`tool-result`:return(0,l.jsx)(q,{turn:e},t);case`agent-error`:return(0,l.jsxs)(`div`,{className:`wa-turn wa-turn-error`,role:`alert`,children:[(0,l.jsx)(K,{label:`Agent`,ts:e.ts}),(0,l.jsx)(`p`,{className:`wa-body wa-error-body`,children:p(e.code,`admin`)}),e.code===`agent_error`&&e.raw&&(0,l.jsx)(`pre`,{className:`wa-code`,children:e.raw})]},t)}}function Z(e,t,n,r=`admin`){let i={sessionId:t,sessionKey:n,audience:r},a=[],o=null;return e.forEach((e,r)=>{let s=U(e),c=V(s);c!==null&&c!==o&&(a.push((0,l.jsx)(W,{ts:s},`day-${r}`)),o=c),a.push(e.kind===`turn`?X(e.turn,r,i):(0,l.jsx)(J,{entry:e.entry,sessionId:t,sessionKey:n},r))}),a}function Q(e){return e.filter(e=>e.kind===`turn`&&F.has(e.turn.kind))}function $({sessionId:e,projectDir:t,sessionKey:n,renderItems:r=Z,clean:i,onToggleClean:a,forceDeliveredOnly:o=!1,streamEndpoint:s=`/api/whatsapp-reader/stream`,suppressDirectives:d=!1,tail:f=null,resetKey:p,onTurnsChange:m,onActivityChange:h,store:g}){let _=!!g,v=k(e,t,n,s,p,!_),y=j(g?.accountId??``,g?.remoteJid??``,n,_),{turns:b,status:x}=_?{turns:y.turns,status:y.status}:{turns:v.turns,status:v.status},S=_?null:v.subagentActivity;(0,c.useEffect)(()=>{h?.(S)},[S,h]),(0,c.useEffect)(()=>{m?.(b.length)},[b.length,m]);let C=N(b,P(e,n,!d)),w=a==null?!1:!!i,T=o||w?Q(C):C;return(0,l.jsxs)(u,{repinSignals:[b,w],tail:f,children:[x===`error`&&(0,l.jsx)(`div`,{className:`wa-reader-error`,children:`Stream disconnected.`}),b.length===0&&x===`open`&&(0,l.jsx)(`div`,{className:`wa-reader-placeholder`,children:`No messages in this conversation yet.`}),r(T,e,n)]})}export{s as _,L as a,U as c,h as d,g as f,p as g,m as h,$ as i,O as l,v as m,J as n,V as o,y as p,G as r,I as s,W as t,E as u};
@@ -1 +0,0 @@
1
- import{F as e,M as t}from"./useSubAccountSwitcher-BpQ3oKiJ.js";import"./admin-types-hioowVct.js";import"./AdminShell-DBD6ruS1.js";import{n}from"./page-zJQTRXB2.js";import"./Transcript-FX_w6no6.js";var r=e(),i=t();(0,r.createRoot)(document.getElementById(`root`)).render((0,i.jsx)(n,{}));
@@ -1 +0,0 @@
1
- import{D as e}from"./useSubAccountSwitcher-BpQ3oKiJ.js";var t=e(`chevron-left`,[[`path`,{d:`m15 18-6-6 6-6`,key:`1wnfg3`}]]);export{t};
@@ -1 +0,0 @@
1
- import{F as e,M as t}from"./useSubAccountSwitcher-BpQ3oKiJ.js";import{t as n}from"./page-DQNYTb2d.js";import"./Transcript-FX_w6no6.js";import"./graph-labels-BcLJmY-v.js";var r=e(),i=t();(0,r.createRoot)(document.getElementById(`root`)).render((0,i.jsx)(n,{}));