upfynai-code 2.4.1 → 2.5.1

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 (149) hide show
  1. package/README.md +131 -0
  2. package/client/dist/assets/AppContent-C0CyP3g5.js +513 -0
  3. package/client/dist/assets/CanvasPanel-0u9QR7U-.js +34 -0
  4. package/client/dist/assets/CanvasPanel-WhZulBJw.css +1 -0
  5. package/client/dist/assets/DashboardPanel-Dgqw1yZk.js +1 -0
  6. package/client/dist/assets/LoginModal-CZDEzqjK.js +19 -0
  7. package/client/dist/assets/Onboarding-DR6NZ4Vz.js +1 -0
  8. package/client/dist/assets/{SetupForm-B4p8im5O.js → SetupForm-D49gtWY4.js} +1 -1
  9. package/client/dist/assets/WorkflowsPanel-CqlbEJA_.js +1 -0
  10. package/client/dist/assets/{ar-SA-G6X2FPQ2-2gfmdvHk.js → ar-SA-G6X2FPQ2-BWqa1yBH.js} +2 -2
  11. package/client/dist/assets/{arc-DCZSHhoJ.js → arc-BegSKqEW.js} +1 -1
  12. package/client/dist/assets/az-AZ-76LH7QW2-DrVlbZDP.js +1 -0
  13. package/client/dist/assets/{bg-BG-XCXSNQG7-D6__XtOK.js → bg-BG-XCXSNQG7-DdunjBgT.js} +2 -2
  14. package/client/dist/assets/{blockDiagram-38ab4fdb-Cfbaeyp6.js → blockDiagram-38ab4fdb-BKMbwGHu.js} +2 -2
  15. package/client/dist/assets/{bn-BD-2XOGV67Q-DHNJw3OG.js → bn-BD-2XOGV67Q-_7DtmvwO.js} +2 -2
  16. package/client/dist/assets/{c4Diagram-3d4e48cf-BBCnjOTy.js → c4Diagram-3d4e48cf-hJuiHhSn.js} +2 -2
  17. package/client/dist/assets/{ca-ES-6MX7JW3Y-r5g4o3zQ.js → ca-ES-6MX7JW3Y-BFIrmojG.js} +3 -3
  18. package/client/dist/assets/channel-Bur-rRTp.js +1 -0
  19. package/client/dist/assets/classDiagram-70f12bd4-BjiAf9cM.js +2 -0
  20. package/client/dist/assets/classDiagram-v2-f2320105-pwBewejc.js +2 -0
  21. package/client/dist/assets/clone-BtqXeoBJ.js +1 -0
  22. package/client/dist/assets/{createText-2e5e7dd3-B8jCDmF_.js → createText-2e5e7dd3-Dq_acOWe.js} +1 -1
  23. package/client/dist/assets/{cs-CZ-2BRQDIVT-p08jRLRC.js → cs-CZ-2BRQDIVT-B-x4F6TJ.js} +2 -2
  24. package/client/dist/assets/{da-DK-5WZEPLOC-CnhOImFf.js → da-DK-5WZEPLOC-Btlc8Dgn.js} +2 -2
  25. package/client/dist/assets/{de-DE-XR44H4JA-BunSXZ-Y.js → de-DE-XR44H4JA-BVu3ZIoD.js} +2 -2
  26. package/client/dist/assets/{edges-e0da2a9e-CGBBhG8k.js → edges-e0da2a9e-DH0wVTXR.js} +1 -1
  27. package/client/dist/assets/{el-GR-BZB4AONW-D4wv1oIz.js → el-GR-BZB4AONW-h2ll8_ZC.js} +2 -2
  28. package/client/dist/assets/{erDiagram-9861fffd-CYaF3q1I.js → erDiagram-9861fffd-BYezLIR7.js} +2 -2
  29. package/client/dist/assets/{es-ES-U4NZUMDT-CGeTKXgd.js → es-ES-U4NZUMDT-Cveiulwt.js} +2 -2
  30. package/client/dist/assets/{eu-ES-A7QVB2H4-Cayx1TxR.js → eu-ES-A7QVB2H4-DQluL2PY.js} +2 -2
  31. package/client/dist/assets/{fa-IR-HGAKTJCU-CmUg8pmw.js → fa-IR-HGAKTJCU-BJtcMBSv.js} +2 -2
  32. package/client/dist/assets/{fi-FI-Z5N7JZ37-xvHcPhsU.js → fi-FI-Z5N7JZ37-D8NfbVXV.js} +2 -2
  33. package/client/dist/assets/{flowDb-956e92f1-C-_LFz70.js → flowDb-956e92f1-scnUykhM.js} +1 -1
  34. package/client/dist/assets/{flowDiagram-66a62f08-C1sHdSjn.js → flowDiagram-66a62f08-jVyWsfyU.js} +2 -2
  35. package/client/dist/assets/flowDiagram-v2-96b9c2cf-N6xgi25h.js +1 -0
  36. package/client/dist/assets/{flowchart-elk-definition-4a651766-CNGfpudb.js → flowchart-elk-definition-4a651766-gKGX3HqR.js} +2 -2
  37. package/client/dist/assets/{fr-FR-RHASNOE6-DBoHEcNj.js → fr-FR-RHASNOE6-vdj42kC6.js} +2 -2
  38. package/client/dist/assets/ganttDiagram-c361ad54-C2CiWFUP.js +257 -0
  39. package/client/dist/assets/{gitGraphDiagram-72cf32ee-DojCDvlS.js → gitGraphDiagram-72cf32ee-C59Yz2LK.js} +2 -2
  40. package/client/dist/assets/{gl-ES-HMX3MZ6V-p6hrn2cN.js → gl-ES-HMX3MZ6V-DQo0TzoP.js} +2 -2
  41. package/client/dist/assets/{graph-DXM7lcy1.js → graph-Dx_H43Kv.js} +1 -1
  42. package/client/dist/assets/{he-IL-6SHJWFNN-y2jEX6-0.js → he-IL-6SHJWFNN-DKXK5e33.js} +2 -2
  43. package/client/dist/assets/{hi-IN-IWLTKZ5I-99pNfyWr.js → hi-IN-IWLTKZ5I-C2Qgqc0R.js} +2 -2
  44. package/client/dist/assets/{hu-HU-A5ZG7DT2-hygceGMS.js → hu-HU-A5ZG7DT2-Ss-6vX0m.js} +2 -2
  45. package/client/dist/assets/{id-ID-SAP4L64H-CyIqi1hv.js → id-ID-SAP4L64H-D7Wsg1S2.js} +2 -2
  46. package/client/dist/assets/{index-3862675e-4idOQN2N.js → index-3862675e-u8Nv7hHC.js} +1 -1
  47. package/client/dist/assets/{index-BHZfFT_V.js → index-BVowJdZF.js} +4 -4
  48. package/client/dist/assets/{index-BGmwbRlb.js → index-ce18TYkg.js} +6 -6
  49. package/client/dist/assets/index-kQoJx-bc.css +1 -0
  50. package/client/dist/assets/{infoDiagram-f8f76790-CFLrHqtc.js → infoDiagram-f8f76790-LmoJYsxo.js} +2 -2
  51. package/client/dist/assets/{it-IT-JPQ66NNP-DzVvVdQI.js → it-IT-JPQ66NNP-CAPTVl7M.js} +2 -2
  52. package/client/dist/assets/{ja-JP-DBVTYXUO-BI4fPexV.js → ja-JP-DBVTYXUO-eNVPawR2.js} +2 -2
  53. package/client/dist/assets/{journeyDiagram-49397b02-C3CFDo8z.js → journeyDiagram-49397b02-BaJqehpR.js} +2 -2
  54. package/client/dist/assets/kaa-6HZHGXH3-tpuNkKhS.js +1 -0
  55. package/client/dist/assets/{kab-KAB-ZGHBKWFO-DBI_ri48.js → kab-KAB-ZGHBKWFO-Dp83kx4x.js} +2 -2
  56. package/client/dist/assets/kk-KZ-P5N5QNE5-B9IlC6YN.js +1 -0
  57. package/client/dist/assets/{km-KH-HSX4SM5Z-DOMFSres.js → km-KH-HSX4SM5Z-B_KMYaMj.js} +2 -2
  58. package/client/dist/assets/{ko-KR-MTYHY66A-tb08hXzd.js → ko-KR-MTYHY66A-yebnUNdb.js} +3 -3
  59. package/client/dist/assets/{ku-TR-6OUDTVRD-DlIQCCY4.js → ku-TR-6OUDTVRD-BR6fh6-5.js} +2 -2
  60. package/client/dist/assets/{layout-B_11mCXA.js → layout-DLl5Jwcl.js} +1 -1
  61. package/client/dist/assets/{line-B-qmK_vI.js → line-FpB7omSK.js} +1 -1
  62. package/client/dist/assets/{linear-Ph6uuYcX.js → linear-CkXqUFJ8.js} +1 -1
  63. package/client/dist/assets/{lt-LT-XHIRWOB4--qWy24_Z.js → lt-LT-XHIRWOB4-SutZSWtR.js} +2 -2
  64. package/client/dist/assets/{lv-LV-5QDEKY6T-Bnd_1GDb.js → lv-LV-5QDEKY6T-DuAxdcZL.js} +2 -2
  65. package/client/dist/assets/{mindmap-definition-fc14e90a-Do79tIc0.js → mindmap-definition-fc14e90a-DyxXOExh.js} +2 -2
  66. package/client/dist/assets/{mr-IN-CRQNXWMA-BsV6HaD9.js → mr-IN-CRQNXWMA-DqDUWM_8.js} +2 -2
  67. package/client/dist/assets/my-MM-5M5IBNSE-C40kMFMR.js +1 -0
  68. package/client/dist/assets/{nb-NO-T6EIAALU-Cvf9FdSF.js → nb-NO-T6EIAALU-DVij32Ju.js} +3 -3
  69. package/client/dist/assets/{nl-NL-IS3SIHDZ-DA1yqpXw.js → nl-NL-IS3SIHDZ-rT84mDYq.js} +2 -2
  70. package/client/dist/assets/{nn-NO-6E72VCQL-89lm3vku.js → nn-NO-6E72VCQL-BBZXBW8V.js} +2 -2
  71. package/client/dist/assets/{oc-FR-POXYY2M6-BsrjTJQh.js → oc-FR-POXYY2M6-DzjOugOf.js} +2 -2
  72. package/client/dist/assets/{pa-IN-N4M65BXN-CczefYaj.js → pa-IN-N4M65BXN-DD1iU8_F.js} +2 -2
  73. package/client/dist/assets/{percentages-BXMCSKIN-Be6p9phi.js → percentages-BXMCSKIN-WVlHS4wx.js} +7 -7
  74. package/client/dist/assets/{pieDiagram-8a3498a8-CfblQHdm.js → pieDiagram-8a3498a8-Dd_85qBH.js} +3 -3
  75. package/client/dist/assets/{pl-PL-T2D74RX3-DdhH-zcK.js → pl-PL-T2D74RX3-ukVXa48G.js} +2 -2
  76. package/client/dist/assets/{pt-BR-5N22H2LF-gpwlheL6.js → pt-BR-5N22H2LF-BibawarT.js} +2 -2
  77. package/client/dist/assets/{pt-PT-UZXXM6DQ-Cs87vICi.js → pt-PT-UZXXM6DQ-So3i9l9w.js} +2 -2
  78. package/client/dist/assets/{quadrantDiagram-120e2f19-CRMSamSP.js → quadrantDiagram-120e2f19-C4dFVDEx.js} +2 -2
  79. package/client/dist/assets/{requirementDiagram-deff3bca-D3LBN016.js → requirementDiagram-deff3bca-DrTO7yFl.js} +2 -2
  80. package/client/dist/assets/{ro-RO-JPDTUUEW-CWTSJ1Dt.js → ro-RO-JPDTUUEW-DY0Xq_Hd.js} +2 -2
  81. package/client/dist/assets/{ru-RU-B4JR7IUQ-Bq7aN2ep.js → ru-RU-B4JR7IUQ-B7u_Zvkd.js} +2 -2
  82. package/client/dist/assets/sankeyDiagram-04a897e0-D24gfzuS.js +8 -0
  83. package/client/dist/assets/{sequenceDiagram-704730f1-BRYXVDGX.js → sequenceDiagram-704730f1-Dgji2XLQ.js} +2 -2
  84. package/client/dist/assets/si-LK-N5RQ5JYF-OejsLzQ_.js +1 -0
  85. package/client/dist/assets/{sk-SK-C5VTKIMK-ByjKQzUb.js → sk-SK-C5VTKIMK-_vy2Bt-M.js} +2 -2
  86. package/client/dist/assets/{sl-SI-NN7IZMDC-B8WCyMBU.js → sl-SI-NN7IZMDC-DKOl_u2M.js} +2 -2
  87. package/client/dist/assets/stateDiagram-587899a1-CJ8eBaiU.js +1 -0
  88. package/client/dist/assets/stateDiagram-v2-d93cdb3a-C5K3l-Nt.js +1 -0
  89. package/client/dist/assets/{styles-6aaf32cf-Dr-lfIOW.js → styles-6aaf32cf-DAKE0jbx.js} +1 -1
  90. package/client/dist/assets/{styles-9a916d00-DS4wRpL7.js → styles-9a916d00-LFAJCgEy.js} +1 -1
  91. package/client/dist/assets/{styles-c10674c1-nKRF6NrH.js → styles-c10674c1-CllKO8NG.js} +1 -1
  92. package/client/dist/assets/{subset-shared.chunk-KT79s7KG.js → subset-shared.chunk-Uy-J87FQ.js} +3 -3
  93. package/client/dist/assets/subset-worker.chunk-dvgDvqt9.js +1 -0
  94. package/client/dist/assets/{sv-SE-XGPEYMSR-BiIPUVbv.js → sv-SE-XGPEYMSR-CDCB2ZV5.js} +2 -2
  95. package/client/dist/assets/{svgDrawCommon-08f97a94-C3uP9PYr.js → svgDrawCommon-08f97a94-CObOzbFQ.js} +1 -1
  96. package/client/dist/assets/{ta-IN-2NMHFXQM-Cidadso2.js → ta-IN-2NMHFXQM-DHUNdO69.js} +2 -2
  97. package/client/dist/assets/th-TH-HPSO5L25-zI2hnBq3.js +2 -0
  98. package/client/dist/assets/{timeline-definition-85554ec2-BSsLsIgF.js → timeline-definition-85554ec2-C2XHRmxK.js} +2 -2
  99. package/client/dist/assets/{tr-TR-DEFEU3FU-DaFcI-KL.js → tr-TR-DEFEU3FU-l-6Hu4-D.js} +2 -2
  100. package/client/dist/assets/{uk-UA-QMV73CPH-DkBW36St.js → uk-UA-QMV73CPH-CqSOwrl7.js} +3 -3
  101. package/client/dist/assets/vendor-codemirror-D_s0aGBu.js +35 -0
  102. package/client/dist/assets/{vendor-icons-Dh9m_Ydt.js → vendor-icons-Lb69KSFJ.js} +167 -117
  103. package/client/dist/assets/{vi-VN-M7AON7JQ-KrtfxOzl.js → vi-VN-M7AON7JQ-CUL8-mBZ.js} +2 -2
  104. package/client/dist/assets/{xychartDiagram-e933f94c-CgNgZ4pp.js → xychartDiagram-e933f94c-1fmf6slj.js} +2 -2
  105. package/client/dist/assets/{zh-CN-LNUGB5OW-BQu12RoD.js → zh-CN-LNUGB5OW-CB5y5VVU.js} +3 -3
  106. package/client/dist/assets/zh-HK-E62DVLB3-BHcrrEeJ.js +1 -0
  107. package/client/dist/assets/{zh-TW-RAJ6MFWO-ffJWgVxn.js → zh-TW-RAJ6MFWO-DoDUdkaJ.js} +2 -2
  108. package/client/dist/index.html +3 -3
  109. package/package.json +20 -8
  110. package/server/cli.js +44 -0
  111. package/server/database/auth.db +0 -0
  112. package/server/database/db.js +203 -1
  113. package/server/index.js +111 -18
  114. package/server/middleware/auth.js +11 -6
  115. package/server/projects.js +95 -202
  116. package/server/relay-client.js +47 -10
  117. package/server/routes/auth.js +6 -0
  118. package/server/routes/dashboard.js +52 -0
  119. package/server/routes/projects.js +38 -35
  120. package/server/routes/voice.js +198 -0
  121. package/server/routes/webhooks.js +166 -0
  122. package/server/routes/workflows.js +118 -0
  123. package/server/services/whisperService.js +84 -0
  124. package/server/services/workflowScheduler.js +186 -0
  125. package/client/dist/assets/AppContent-DTZ2FbvM.js +0 -513
  126. package/client/dist/assets/CanvasPanel-DlTW6Jh6.js +0 -6
  127. package/client/dist/assets/CanvasPanel-q4HEqNtV.css +0 -1
  128. package/client/dist/assets/LoginModal-CWoFm0au.js +0 -19
  129. package/client/dist/assets/Onboarding-CtIoXiTp.js +0 -1
  130. package/client/dist/assets/az-AZ-76LH7QW2-CDdeucRZ.js +0 -1
  131. package/client/dist/assets/channel-O3ovC0x9.js +0 -1
  132. package/client/dist/assets/classDiagram-70f12bd4-D0lhAcxU.js +0 -2
  133. package/client/dist/assets/classDiagram-v2-f2320105-BuwUsF3F.js +0 -2
  134. package/client/dist/assets/clone-BG9u7vLi.js +0 -1
  135. package/client/dist/assets/flowDiagram-v2-96b9c2cf-Cd0Iascd.js +0 -1
  136. package/client/dist/assets/ganttDiagram-c361ad54-B8HJQqjt.js +0 -257
  137. package/client/dist/assets/index-B8wwD_Xo.css +0 -1
  138. package/client/dist/assets/kaa-6HZHGXH3-fwOleoQB.js +0 -1
  139. package/client/dist/assets/kk-KZ-P5N5QNE5-zpl7uvyF.js +0 -1
  140. package/client/dist/assets/my-MM-5M5IBNSE-kZQURVIi.js +0 -1
  141. package/client/dist/assets/sankeyDiagram-04a897e0-CsFqOQZN.js +0 -8
  142. package/client/dist/assets/si-LK-N5RQ5JYF-BBjcNYQh.js +0 -1
  143. package/client/dist/assets/stateDiagram-587899a1-BHoy9LtD.js +0 -1
  144. package/client/dist/assets/stateDiagram-v2-d93cdb3a-BvMUA6bS.js +0 -1
  145. package/client/dist/assets/subset-worker.chunk-BMx1eyv3.js +0 -1
  146. package/client/dist/assets/th-TH-HPSO5L25-CFNnJwSv.js +0 -2
  147. package/client/dist/assets/vendor-codemirror-langs-BH1ZcKHY.js +0 -20
  148. package/client/dist/assets/vendor-codemirror-rix45NST.js +0 -16
  149. package/client/dist/assets/zh-HK-E62DVLB3-zx9CvERq.js +0 -1
@@ -1,6 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/percentages-BXMCSKIN-Be6p9phi.js","assets/vendor-syntax-DnmwQQJF.js","assets/vendor-react-9mUTKBHH.js","assets/vendor-markdown-BXEi_H3G.js","assets/AppContent-DTZ2FbvM.js","assets/index-BGmwbRlb.js","assets/vendor-icons-Dh9m_Ydt.js","assets/vendor-i18n-DCFGyhQR.js","assets/index-B8wwD_Xo.css","assets/LoginModal-CWoFm0au.js","assets/vendor-xterm-CZq1hqo1.js","assets/vendor-xterm-qxJ8_QYu.css","assets/vendor-codemirror-rix45NST.js","assets/vendor-codemirror-langs-BH1ZcKHY.js"])))=>i.map(i=>d[i]);
2
- import{b as O}from"./vendor-syntax-DnmwQQJF.js";import{r as m,j as i,v as W}from"./vendor-react-9mUTKBHH.js";import{S as $,F,d as G,A as V}from"./vendor-icons-Dh9m_Ydt.js";import"./vendor-markdown-BXEi_H3G.js";const _=240,j=120,D=32,K=12,p={note:{bg:"#1e293b",border:"#3b82f6",text:"#e2e8f0",accent:"#60a5fa"},pdf:{bg:"#1e1b2e",border:"#ef4444",text:"#e2e8f0",accent:"#f87171"},summary:{bg:"#1a2e1a",border:"#22c55e",text:"#e2e8f0",accent:"#4ade80"}};function g(){return crypto.randomUUID()}function M(n,e,t,s,o){return{id:o.id,type:"rectangle",x:n,y:e,width:t,height:s,angle:0,strokeColor:o.border,backgroundColor:o.bg,fillStyle:"solid",strokeWidth:2,roughness:0,opacity:100,groupIds:o.groupIds,roundness:{type:3,value:K},isDeleted:!1,boundElements:null,locked:!1,customData:o.customData,version:1,versionNonce:Math.floor(Math.random()*1e9),seed:Math.floor(Math.random()*1e9)}}function w(n,e,t,s){const o=s.fontSize??14;return{id:s.id,type:"text",x:n,y:e,width:s.width??_-24,height:s.height??o+6,angle:0,strokeColor:s.color,backgroundColor:"transparent",fillStyle:"solid",strokeWidth:1,roughness:0,opacity:100,groupIds:s.groupIds,roundness:null,isDeleted:!1,boundElements:null,locked:!1,text:t,fontSize:o,fontFamily:1,textAlign:"left",verticalAlign:"top",containerId:null,originalText:t,autoResize:!1,lineHeight:1.25,customData:s.customData,version:1,versionNonce:Math.floor(Math.random()*1e9),seed:Math.floor(Math.random()*1e9)}}function R(n,e,t="New note..."){const s=g(),o=g(),c=t.split(`
3
- `),a=Math.max(j-D,c.length*20+16),r=D+a,l=M(n,e,_,r,{id:o,groupIds:[s],bg:p.note.bg,border:p.note.border,customData:{blockType:"note",blockId:o,content:t}}),d=w(n+12,e+8,"📝 Note",{id:g(),groupIds:[s],color:p.note.accent,fontSize:13}),f=w(n+12,e+D+4,t,{id:g(),groupIds:[s],color:p.note.text,fontSize:13,height:a-12});return{elements:[l,d,f],blockId:o,groupId:s}}function z(n,e,t,s,o,c){const a=g(),r=g(),l=t.length>28?t.slice(0,25)+"...":t,d=M(n,e,_,j,{id:r,groupIds:[a],bg:p.pdf.bg,border:p.pdf.border,customData:{blockType:"pdf",blockId:r,fileName:t,pageCount:s,extractedText:o,thumbnail:c??null}}),f=w(n+12,e+8,`📄 ${l}`,{id:g(),groupIds:[a],color:p.pdf.accent,fontSize:13}),h=w(n+12,e+32,`${s} page${s!==1?"s":""}`,{id:g(),groupIds:[a],color:p.pdf.text,fontSize:12}),u=w(n+12,e+56,o.slice(0,80)+(o.length>80?"...":""),{id:g(),groupIds:[a],color:"#94a3b8",fontSize:11,height:48});return{elements:[d,f,h,u],blockId:r,groupId:a}}function H(n,e,t,s="Generating summary..."){const o=g(),c=g(),a=s.split(`
4
- `),r=Math.max(j-D,a.length*20+16),l=D+r,d=M(n,e,_,l,{id:c,groupIds:[o],bg:p.summary.bg,border:p.summary.border,customData:{blockType:"summary",blockId:c,sourceIds:t,generatedContent:s}}),f=w(n+12,e+8,"✨ Summary",{id:g(),groupIds:[o],color:p.summary.accent,fontSize:13}),h=w(n+12,e+D+4,s,{id:g(),groupIds:[o],color:p.summary.text,fontSize:13,height:r-12});return{elements:[d,f,h],blockId:c,groupId:o}}function U(n,e){const t=g();return{element:{id:t,type:"arrow",x:0,y:0,width:100,height:0,angle:0,strokeColor:"#6366f1",backgroundColor:"transparent",fillStyle:"solid",strokeWidth:2,roughness:0,opacity:80,groupIds:[],roundness:{type:2},isDeleted:!1,boundElements:null,locked:!1,points:[[0,0],[100,0]],startBinding:{elementId:n,focus:0,gap:4},endBinding:{elementId:e,focus:0,gap:4},startArrowhead:null,endArrowhead:"arrow",customData:{blockType:"context-link",sourceId:n,targetId:e},version:1,versionNonce:Math.floor(Math.random()*1e9),seed:Math.floor(Math.random()*1e9)},linkId:t}}async function J(n){try{const e=await O(()=>import("./pdf-CE_K4jFx.js"),[]);e.GlobalWorkerOptions.workerSrc=new URL("/assets/pdf.worker-BA9kU3Pw.mjs",import.meta.url).toString();const t=await n.arrayBuffer(),s=await e.getDocument({data:t}).promise,o=s.numPages,c=[],a=Math.min(o,10);for(let l=1;l<=a;l++){const h=(await(await s.getPage(l)).getTextContent()).items.map(u=>u.str).join(" ");c.push(h)}let r=null;try{const l=await s.getPage(1),d=l.getViewport({scale:.5}),f=document.createElement("canvas");f.width=d.width,f.height=d.height;const h=f.getContext("2d");h&&(await l.render({canvasContext:h,viewport:d}).promise,r=f.toDataURL("image/png",.6))}catch{}return{text:c.join(`
5
-
6
- `),pageCount:o,thumbnail:r}}catch(e){return console.error("PDF extraction failed:",e),{text:"",pageCount:0,thumbnail:null}}}function P(n){const e=n.getAppState(),t=(-e.scrollX+e.width/2)/e.zoom.value,s=(-e.scrollY+e.height/2)/e.zoom.value;return{x:Math.round(t-120),y:Math.round(s-60)}}function A(n,e){const t=n.getSceneElements();n.updateScene({elements:[...t,...e]})}function Y({api:n}){const e=m.useRef(null),[t,s]=m.useState(!1),[o,c]=m.useState(!1),a=m.useCallback(()=>{if(!n)return;const{x:u,y:k}=P(n),I=R(u,k);A(n,I.elements)},[n]),r=m.useCallback(()=>{var u;(u=e.current)==null||u.click()},[]),l=m.useCallback(async u=>{var I;const k=(I=u.target.files)==null?void 0:I[0];if(!(!k||!n)){u.target.value="",c(!0);try{const{text:x,pageCount:y,thumbnail:S}=await J(k),{x:N,y:C}=P(n),E=z(N,C,k.name,y,x,S);A(n,E.elements)}finally{c(!1)}}},[n]),d=m.useCallback(()=>{if(!n)return;const u=n.getAppState(),k=Object.keys(u.selectedElementIds||{}),x=n.getSceneElements().filter(C=>{var E;return k.includes(C.id)&&((E=C.customData)==null?void 0:E.blockId)}).map(C=>C.customData.blockId),{x:y,y:S}=P(n),N=H(y+280,S,x,x.length?"Summary of selected blocks":"Select blocks to summarize");A(n,N.elements)},[n]),f=m.useCallback(()=>{if(!n)return;const u=n.getAppState(),k=Object.keys(u.selectedElementIds||{}),x=n.getSceneElements().filter(y=>{var S;return k.includes(y.id)&&((S=y.customData)==null?void 0:S.blockId)});if(x.length===2){const y=U(x[0].id,x[1].id);A(n,[y.element]),s(!1)}else s(!t)},[n,t]),h="flex items-center justify-center w-9 h-9 rounded-lg transition-colors text-muted-foreground hover:text-foreground hover:bg-white/10";return i.jsxs("div",{className:"canvas-block-toolbar",children:[i.jsx("button",{onClick:a,className:h,title:"Add Note",children:i.jsx($,{className:"w-4 h-4"})}),i.jsx("button",{onClick:r,className:h,title:"Add PDF",disabled:o,children:i.jsx(F,{className:`w-4 h-4 ${o?"animate-pulse":""}`})}),i.jsx("button",{onClick:d,className:h,title:"Add Summary",children:i.jsx(G,{className:"w-4 h-4"})}),i.jsx("div",{className:"w-5 border-t border-white/10 mx-auto"}),i.jsx("button",{onClick:f,className:`${h} ${t?"bg-indigo-500/20 text-indigo-400":""}`,title:"Connect Blocks (select 2)",children:i.jsx(V,{className:"w-4 h-4"})}),i.jsx("input",{ref:e,type:"file",accept:".pdf",onChange:l,className:"hidden"}),t&&i.jsx("div",{className:"absolute left-12 top-1/2 -translate-y-1/2 bg-background/90 border border-border rounded-md px-2 py-1 text-xs text-muted-foreground whitespace-nowrap",children:"Select 2 blocks, then click Connect"})]})}function v(){return window.__excalidrawAPI??null}function B(n){const e=v();if(!e)return;const t=e.getSceneElements();e.updateScene({elements:[...t,...n]})}function T(){const n=v();if(!n)return{x:100,y:100};const e=n.getAppState(),t=(-e.scrollX+e.width/2)/e.zoom.value,s=(-e.scrollY+e.height/2)/e.zoom.value;return{x:Math.round(t-120),y:Math.round(s-60)}}const b={addNote(n,e,t){const s=n!=null&&e!=null?{x:n,y:e}:T(),o=R(s.x,s.y,t);return B(o.elements),{blockId:o.blockId}},addPdf(n,e,t,s,o=0,c){const a=z(n,e,t,o,s,c);return B(a.elements),{blockId:a.blockId}},addSummary(n,e,t,s){const o=t!=null&&s!=null?{x:t,y:s}:T(),c=H(o.x,o.y,n,e);return B(c.elements),{blockId:c.blockId}},connectBlocks(n,e){const t=U(n,e);return B([t.element]),{linkId:t.linkId}},getBlocks(){const n=v();return n?n.getSceneElements().filter(e=>{var t;return((t=e.customData)==null?void 0:t.blockType)&&e.customData.blockType!=="context-link"}).map(e=>({id:e.id,x:e.x,y:e.y,width:e.width,height:e.height,...e.customData})):[]},getConnections(){const n=v();return n?n.getSceneElements().filter(e=>{var t;return((t=e.customData)==null?void 0:t.blockType)==="context-link"}).map(e=>({id:e.id,sourceId:e.customData.sourceId,targetId:e.customData.targetId})):[]},updateBlockContent(n,e){const t=v();if(!t)return;const s=t.getSceneElements().map(o=>{var c;if(o.id===n&&o.customData)return{...o,customData:{...o.customData,content:e,generatedContent:e}};if(o.type==="text"&&((c=o.groupIds)!=null&&c.length)){const a=t.getSceneElements().find(r=>{var l;return r.id===n&&((l=r.groupIds)==null?void 0:l.some(d=>o.groupIds.includes(d)))});if(a&&o.y>a.y+28)return{...o,text:e,originalText:e}}return o});t.updateScene({elements:s})},removeBlock(n){const e=v();if(!e)return;const t=e.getSceneElements().find(c=>c.id===n);if(!t)return;const s=t.groupIds??[],o=e.getSceneElements().map(c=>{var a,r;return c.id===n||s.length&&((a=c.groupIds)!=null&&a.some(l=>s.includes(l)))?{...c,isDeleted:!0}:((r=c.customData)==null?void 0:r.blockType)==="context-link"&&(c.customData.sourceId===n||c.customData.targetId===n)?{...c,isDeleted:!0}:c});e.updateScene({elements:o})}};function X(){window.__canvasBlockAPI=b}function q(){delete window.__canvasBlockAPI}function Q(n){const{action:e,params:t}=n;switch(e){case"addNote":return b.addNote(t.x,t.y,t.content);case"addPdf":return b.addPdf(t.x,t.y,t.fileName,t.text,t.pageCount,t.thumbnail);case"addSummary":return b.addSummary(t.sourceIds,t.content,t.x,t.y);case"connectBlocks":return b.connectBlocks(t.sourceId,t.targetId);case"updateBlockContent":return b.updateBlockContent(t.blockId,t.content);case"removeBlock":return b.removeBlock(t.blockId);case"getBlocks":return b.getBlocks();case"getConnections":return b.getConnections();default:console.warn("Unknown canvas block command:",e)}}const L="upfynai-excalidraw-scene";function Z(){const[n,e]=m.useState(null),[t,s]=m.useState(null);m.useEffect(()=>{O(()=>import("./percentages-BXMCSKIN-Be6p9phi.js").then(a=>a.i),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13])).then(a=>{e(()=>a.Excalidraw)})},[]);const o=m.useCallback(()=>{try{const a=localStorage.getItem(L);if(a)return{elements:JSON.parse(a).elements||[],appState:{theme:"dark"}}}catch{}return{elements:[],appState:{theme:"dark"}}},[]),c=m.useCallback(a=>{try{localStorage.setItem(L,JSON.stringify({elements:a}))}catch{}},[]);return m.useEffect(()=>{if(!t)return;window.__excalidrawAPI=t,X();const a=l=>{try{const d=JSON.parse(l.data);d.type==="canvas-update"&&d.elements&&t&&t.updateScene({elements:d.elements}),d.type==="canvas-block-command"&&d.action&&Q(d)}catch{}},r=window.__upfynWs;return r&&r.addEventListener("message",a),()=>{delete window.__excalidrawAPI,q(),r&&r.removeEventListener("message",a)}},[t]),n?i.jsxs("div",{className:"excalidraw-wrapper h-full w-full relative",children:[t&&i.jsx(Y,{api:t}),i.jsx(n,{excalidrawAPI:a=>s(a),initialData:o(),onChange:c,theme:"dark",UIOptions:{welcomeScreen:!1}})]}):i.jsx("div",{className:"flex items-center justify-center h-full text-muted-foreground text-sm",children:"Loading whiteboard..."})}const se=W.memo(Z);export{se as default};
@@ -1 +0,0 @@
1
- .excalidraw .main-menu-trigger,.excalidraw .welcome-screen-center,.excalidraw a[href*="excalidraw.com"],.excalidraw .encrypted-icon{display:none!important}.excalidraw.theme--dark{--color-surface-lowest: #0a0a0a;--color-surface-low: #111111;--color-surface-mid: #1a1a1a;--island-bg-color: #1a1a1a}.excalidraw-wrapper{width:100%;height:100%}.excalidraw .App-menu_top .buttonList{background:#1a1a1a}.canvas-block-toolbar{position:absolute;top:50%;left:12px;transform:translateY(-50%);z-index:10;display:flex;flex-direction:column;gap:4px;padding:6px;background:#111111e6;border:1px solid rgba(255,255,255,.08);border-radius:12px;backdrop-filter:blur(8px)}.excalidraw [data-block-type=note]{filter:drop-shadow(0 0 6px rgba(59,130,246,.3))}.excalidraw [data-block-type=pdf]{filter:drop-shadow(0 0 6px rgba(239,68,68,.3))}.excalidraw [data-block-type=summary]{filter:drop-shadow(0 0 6px rgba(34,197,94,.3))}.excalidraw [data-block-type=context-link]{filter:drop-shadow(0 0 4px rgba(99,102,241,.4))}
@@ -1,19 +0,0 @@
1
- import{a as xe,r as a,j as e}from"./vendor-react-9mUTKBHH.js";import{I as he,R as me,g as pe,b as ge,c as oe}from"./index-BGmwbRlb.js";import{x as ye,a as be,b as we,c as Ne}from"./vendor-xterm-CZq1hqo1.js";import{X as je}from"./vendor-icons-Dh9m_Ydt.js";const ve=(t,r,o,h)=>{var s,y,i,p;const m=[o,{code:r,...h||{}}];if((y=(s=t==null?void 0:t.services)==null?void 0:s.logger)!=null&&y.forward)return t.services.logger.forward(m,"warn","react-i18next::",!0);W(m[0])&&(m[0]=`react-i18next:: ${m[0]}`),(p=(i=t==null?void 0:t.services)==null?void 0:i.logger)!=null&&p.warn?t.services.logger.warn(...m):console!=null&&console.warn&&console.warn(...m)},ee={},le=(t,r,o,h)=>{W(o)&&ee[o]||(W(o)&&(ee[o]=new Date),ve(t,r,o,h))},ce=(t,r)=>()=>{if(t.isInitialized)r();else{const o=()=>{setTimeout(()=>{t.off("initialized",o)},0),r()};t.on("initialized",o)}},Y=(t,r,o)=>{t.loadNamespaces(r,ce(t,o))},te=(t,r,o,h)=>{if(W(o)&&(o=[o]),t.options.preload&&t.options.preload.indexOf(r)>-1)return Y(t,o,h);o.forEach(m=>{t.options.ns.indexOf(m)<0&&t.options.ns.push(m)}),t.loadLanguages(r,ce(t,h))},ke=(t,r,o={})=>!r.languages||!r.languages.length?(le(r,"NO_LANGUAGES","i18n.languages were undefined or empty",{languages:r.languages}),!0):r.hasLoadedNamespace(t,{lng:o.lng,precheck:(h,m)=>{if(o.bindI18n&&o.bindI18n.indexOf("languageChanging")>-1&&h.services.backendConnector.backend&&h.isLanguageChangingTo&&!m(h.isLanguageChangingTo,t))return!1}}),W=t=>typeof t=="string",Ce=t=>typeof t=="object"&&t!==null;var V={exports:{}},X={};/**
2
- * @license React
3
- * use-sync-external-store-shim.production.js
4
- *
5
- * Copyright (c) Meta Platforms, Inc. and affiliates.
6
- *
7
- * This source code is licensed under the MIT license found in the
8
- * LICENSE file in the root directory of this source tree.
9
- */var re;function Se(){if(re)return X;re=1;var t=xe();function r(n,u){return n===u&&(n!==0||1/n===1/u)||n!==n&&u!==u}var o=typeof Object.is=="function"?Object.is:r,h=t.useState,m=t.useEffect,s=t.useLayoutEffect,y=t.useDebugValue;function i(n,u){var w=u(),N=h({inst:{value:w,getSnapshot:u}}),v=N[0].inst,L=N[1];return s(function(){v.value=w,v.getSnapshot=u,p(v)&&L({inst:v})},[n,w,u]),m(function(){return p(v)&&L({inst:v}),n(function(){p(v)&&L({inst:v})})},[n]),y(w),w}function p(n){var u=n.getSnapshot;n=n.value;try{var w=u();return!o(n,w)}catch{return!0}}function l(n,u){return u()}var j=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?l:i;return X.useSyncExternalStore=t.useSyncExternalStore!==void 0?t.useSyncExternalStore:j,X}var ne;function Le(){return ne||(ne=1,V.exports=Se()),V.exports}var Ee=Le();const Re=(t,r)=>W(r)?r:Ce(r)&&W(r.defaultValue)?r.defaultValue:Array.isArray(t)?t[t.length-1]:t,Oe={t:Re,ready:!1},Ie=()=>()=>{},Te=(t,r={})=>{var I,U,R;const{i18n:o}=r,{i18n:h,defaultNS:m}=a.useContext(he)||{},s=o||h||ge();s&&!s.reportNamespaces&&(s.reportNamespaces=new me),s||le(s,"NO_I18NEXT_INSTANCE","useTranslation: You will need to pass in an i18next instance by using initReactI18next");const y=a.useMemo(()=>{var d;return{...pe(),...(d=s==null?void 0:s.options)==null?void 0:d.react,...r}},[s,r]),{useSuspense:i,keyPrefix:p}=y,l=t||m||((I=s==null?void 0:s.options)==null?void 0:I.defaultNS),j=W(l)?[l]:l||["translation"],n=a.useMemo(()=>j,j);(R=(U=s==null?void 0:s.reportNamespaces)==null?void 0:U.addUsedNamespaces)==null||R.call(U,n);const u=a.useRef(0),w=a.useCallback(d=>{if(!s)return Ie;const{bindI18n:f,bindI18nStore:g}=y,x=()=>{u.current+=1,d()};return f&&s.on(f,x),g&&s.store.on(g,x),()=>{f&&f.split(" ").forEach(T=>s.off(T,x)),g&&g.split(" ").forEach(T=>s.store.off(T,x))}},[s,y]),N=a.useRef(),v=a.useCallback(()=>{if(!s)return Oe;const d=!!(s.isInitialized||s.initializedStoreOnce)&&n.every(J=>ke(J,s,y)),f=r.lng||s.language,g=u.current,x=N.current;if(x&&x.ready===d&&x.lng===f&&x.keyPrefix===p&&x.revision===g)return x;const O={t:s.getFixedT(f,y.nsMode==="fallback"?n:n[0],p),ready:d,lng:f,keyPrefix:p,revision:g};return N.current=O,O},[s,n,p,y,r.lng]),[L,F]=a.useState(0),{t:z,ready:_}=Ee.useSyncExternalStore(w,v,v);a.useEffect(()=>{if(s&&!_&&!i){const d=()=>F(f=>f+1);r.lng?te(s,r.lng,n,d):Y(s,n,d)}},[s,r.lng,n,_,i,L]);const C=s||{},E=a.useRef(null),D=a.useRef(),M=d=>{const f=Object.getOwnPropertyDescriptors(d);f.__original&&delete f.__original;const g=Object.create(Object.getPrototypeOf(d),f);if(!Object.prototype.hasOwnProperty.call(g,"__original"))try{Object.defineProperty(g,"__original",{value:d,writable:!1,enumerable:!1,configurable:!1})}catch{}return g},K=a.useMemo(()=>{const d=C,f=d==null?void 0:d.language;let g=d;d&&(E.current&&E.current.__original===d?D.current!==f?(g=M(d),E.current=g,D.current=f):g=E.current:(g=M(d),E.current=g,D.current=f));const x=[z,g,_];return x.t=z,x.i18n=g,x.ready=_,x},[z,C,_,C.resolvedLanguage,C.language,C.languages]);if(s&&i&&!_)throw new Promise(d=>{const f=()=>d();r.lng?te(s,r.lng,n,f):Y(s,n,f)});return K},De=({className:t="w-5 h-5"})=>e.jsx("img",{src:"/icons/claude-ai-icon.svg",alt:"Claude",className:t}),He=({className:t="w-5 h-5"})=>{const{isDarkMode:r}=oe();return e.jsx("img",{src:r?"/icons/cursor-white.svg":"/icons/cursor.svg",alt:"Cursor",className:t})},Fe=({className:t="w-5 h-5"})=>{const{isDarkMode:r}=oe();return e.jsx("img",{src:r?"/icons/codex-white.svg":"/icons/codex.svg",alt:"Codex",className:t})},Ae=`
10
- .xterm .xterm-screen {
11
- outline: none !important;
12
- }
13
- .xterm:focus .xterm-screen {
14
- outline: none !important;
15
- }
16
- .xterm-screen:focus {
17
- outline: none !important;
18
- }
19
- `;if(typeof document<"u"){const t=document.createElement("style");t.type="text/css",t.innerText=Ae,document.head.appendChild(t)}function _e(t){if(!t||typeof document>"u")return!1;const r=document.createElement("textarea");r.value=t,r.setAttribute("readonly",""),r.style.position="fixed",r.style.opacity="0",r.style.pointerEvents="none",document.body.appendChild(r),r.focus(),r.select();let o=!1;try{o=document.execCommand("copy")}catch{o=!1}finally{document.body.removeChild(r)}return o}const se="https://auth.openai.com/codex/device";function ae(t){return typeof t=="string"&&/\bcodex\s+login\b/i.test(t)}function Me({selectedProject:t,selectedSession:r,initialCommand:o,isPlainShell:h=!1,onProcessComplete:m,minimal:s=!1,autoConnect:y=!1}){const{t:i}=Te("chat"),p=a.useRef(null),l=a.useRef(null),j=a.useRef(null),n=a.useRef(null),[u,w]=a.useState(!1),[N,v]=a.useState(!1),[L,F]=a.useState(!1),[z,_]=a.useState(null),[C,E]=a.useState(!1),[D,M]=a.useState(""),[K,I]=a.useState("idle"),[U,R]=a.useState(!1),d=a.useRef(t),f=a.useRef(r),g=a.useRef(o),x=a.useRef(h),T=a.useRef(m),O=a.useRef("");a.useEffect(()=>{d.current=t,f.current=r,g.current=o,x.current=h,T.current=m});const J=a.useCallback((b=O.current)=>{if(!b)return!1;const S=window.open(b,"_blank","noopener,noreferrer");if(S){try{S.opener=null}catch{}return!0}return!1},[]),$=a.useCallback(async(b=O.current)=>{var k;if(!b)return!1;let S=!1;try{typeof navigator<"u"&&((k=navigator.clipboard)!=null&&k.writeText)&&(await navigator.clipboard.writeText(b),S=!0)}catch{S=!1}return S||(S=_e(b)),S},[]),Q=a.useCallback(async()=>{if(!(C||u))try{let b;b=`${window.location.protocol==="https:"?"wss:":"ws:"}//${window.location.host}/shell`,n.current=new WebSocket(b),n.current.onopen=()=>{w(!0),E(!1),O.current="",M(""),I("idle"),R(!1),setTimeout(()=>{var k,c;j.current&&l.current&&(j.current.fit(),n.current.send(JSON.stringify({type:"init",projectPath:d.current.fullPath||d.current.path,sessionId:x.current?null:(k=f.current)==null?void 0:k.id,hasSession:x.current?!1:!!f.current,provider:x.current?"plain-shell":((c=f.current)==null?void 0:c.__provider)||"claude",cols:l.current.cols,rows:l.current.rows,initialCommand:g.current,isPlainShell:x.current})))},100)},n.current.onmessage=k=>{try{const c=JSON.parse(k.data);if(c.type==="output"){let A=c.data;if(x.current&&T.current){const B=A.replace(/\x1b\[[0-9;]*m/g,"");if(B.includes("Process exited with code 0"))T.current(0);else if(B.match(/Process exited with code (\d+)/)){const H=parseInt(B.match(/Process exited with code (\d+)/)[1]);H!==0&&T.current(H)}}l.current&&l.current.write(A)}else(c.type==="auth_url"&&c.url||c.type==="url_open"&&c.url)&&(O.current=c.url,M(c.url),I("idle"),R(!1))}catch(c){console.error("[Shell] Error handling WebSocket message:",c,k.data)}},n.current.onclose=k=>{w(!1),E(!1),I("idle"),R(!1),l.current&&(l.current.clear(),l.current.write("\x1B[2J\x1B[H"))},n.current.onerror=k=>{w(!1),E(!1)}}catch{w(!1),E(!1)}},[C,u,J]),q=a.useCallback(()=>{!N||u||C||(E(!0),Q())},[N,u,C,Q]),G=a.useCallback(()=>{n.current&&(n.current.close(),n.current=null),l.current&&(l.current.clear(),l.current.write("\x1B[2J\x1B[H")),w(!1),E(!1),O.current="",M(""),I("idle"),R(!1)},[]),P=a.useMemo(()=>r?r.__provider==="cursor"?r.name||"Untitled Session":r.summary||"New Session":null,[r]),ie=a.useMemo(()=>P?P.slice(0,30):null,[P]),ue=a.useMemo(()=>P?P.slice(0,50):null,[P]),de=()=>{F(!0),n.current&&(n.current.close(),n.current=null),l.current&&(l.current.dispose(),l.current=null,j.current=null),w(!1),v(!1),O.current="",M(""),I("idle"),R(!1),setTimeout(()=>{F(!1)},200)};if(a.useEffect(()=>{const b=(r==null?void 0:r.id)||null;z!==null&&z!==b&&N&&G(),_(b)},[r==null?void 0:r.id,N,G]),a.useEffect(()=>{if(!p.current||!t||L||l.current)return;l.current=new ye.Terminal({cursorBlink:!0,fontSize:14,fontFamily:'Menlo, Monaco, "Courier New", monospace',allowProposedApi:!0,allowTransparency:!1,convertEol:!0,scrollback:1e4,tabStopWidth:4,windowsMode:!1,macOptionIsMeta:!0,macOptionClickForcesSelection:!0,theme:{background:"#1e1e1e",foreground:"#d4d4d4",cursor:"#ffffff",cursorAccent:"#1e1e1e",selection:"#264f78",selectionForeground:"#ffffff",black:"#000000",red:"#cd3131",green:"#0dbc79",yellow:"#e5e510",blue:"#2472c8",magenta:"#bc3fbc",cyan:"#11a8cd",white:"#e5e5e5",brightBlack:"#666666",brightRed:"#f14c4c",brightGreen:"#23d18b",brightYellow:"#f5f543",brightBlue:"#3b8eea",brightMagenta:"#d670d6",brightCyan:"#29b8db",brightWhite:"#ffffff",extendedAnsi:["#000000","#800000","#008000","#808000","#000080","#800080","#008080","#c0c0c0","#808080","#ff0000","#00ff00","#ffff00","#0000ff","#ff00ff","#00ffff","#ffffff"]}}),j.current=new be.FitAddon;const b=new we.WebglAddon,S=new Ne.WebLinksAddon;l.current.loadAddon(j.current),s||l.current.loadAddon(S);try{l.current.loadAddon(b)}catch{console.warn("[Shell] WebGL renderer unavailable, using Canvas fallback")}l.current.open(p.current),l.current.attachCustomKeyEventHandler(c=>{var B,H,Z;const A=ae(g.current)?se:O.current;return c.type==="keydown"&&s&&x.current&&A&&!c.ctrlKey&&!c.metaKey&&!c.altKey&&((B=c.key)==null?void 0:B.toLowerCase())==="c"&&$(A).catch(()=>{}),c.type==="keydown"&&(c.ctrlKey||c.metaKey)&&((H=c.key)==null?void 0:H.toLowerCase())==="c"&&l.current.hasSelection()?(c.preventDefault(),c.stopPropagation(),document.execCommand("copy"),!1):c.type==="keydown"&&(c.ctrlKey||c.metaKey)&&((Z=c.key)==null?void 0:Z.toLowerCase())==="v"?(c.preventDefault(),c.stopPropagation(),navigator.clipboard.readText().then(fe=>{n.current&&n.current.readyState===WebSocket.OPEN&&n.current.send(JSON.stringify({type:"input",data:fe}))}).catch(()=>{}),!1):!0}),setTimeout(()=>{j.current&&(j.current.fit(),l.current&&n.current&&n.current.readyState===WebSocket.OPEN&&n.current.send(JSON.stringify({type:"resize",cols:l.current.cols,rows:l.current.rows})))},100),v(!0),l.current.onData(c=>{n.current&&n.current.readyState===WebSocket.OPEN&&n.current.send(JSON.stringify({type:"input",data:c}))});const k=new ResizeObserver(()=>{j.current&&l.current&&setTimeout(()=>{j.current.fit(),n.current&&n.current.readyState===WebSocket.OPEN&&n.current.send(JSON.stringify({type:"resize",cols:l.current.cols,rows:l.current.rows}))},50)});return p.current&&k.observe(p.current),()=>{k.disconnect(),n.current&&(n.current.readyState===WebSocket.OPEN||n.current.readyState===WebSocket.CONNECTING)&&n.current.close(),n.current=null,l.current&&(l.current.dispose(),l.current=null)}},[(t==null?void 0:t.path)||(t==null?void 0:t.fullPath),L,s,$]),a.useEffect(()=>{!y||!N||C||u||q()},[y,N,C,u,q]),!t)return e.jsx("div",{className:"h-full flex items-center justify-center",children:e.jsxs("div",{className:"text-center text-gray-500 dark:text-gray-400",children:[e.jsx("div",{className:"w-16 h-16 mx-auto mb-4 bg-gray-100 dark:bg-gray-800 rounded-full flex items-center justify-center",children:e.jsx("svg",{className:"w-8 h-8 text-gray-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M8 9l3 3-3 3m5 0h3M5 20h14a2 2 0 002-2V6a2 2 0 00-2-2H5a2 2 0 00-2 2v14a2 2 0 002 2z"})})}),e.jsx("h3",{className:"text-lg font-semibold mb-2",children:i("shell.selectProject.title")}),e.jsx("p",{children:i("shell.selectProject.description")})]})});if(s){const b=ae(o)?se:D,S=!!b,k=S&&!U,c=S&&U;return e.jsxs("div",{className:"h-full w-full bg-gray-900 relative",children:[e.jsx("div",{ref:p,className:"h-full w-full focus:outline-none",style:{outline:"none"}}),k&&e.jsx("div",{className:"absolute inset-x-0 bottom-14 z-20 border-t border-gray-700/80 bg-gray-900/95 p-3 backdrop-blur-sm md:hidden",children:e.jsxs("div",{className:"flex flex-col gap-2",children:[e.jsxs("div",{className:"flex items-center justify-between gap-2",children:[e.jsx("p",{className:"text-xs text-gray-300",children:"Open or copy the login URL:"}),e.jsx("button",{type:"button",onClick:()=>R(!0),className:"rounded bg-gray-700 px-2 py-1 text-[10px] font-medium uppercase tracking-wide text-gray-100 hover:bg-gray-600",children:"Hide"})]}),e.jsx("input",{type:"text",value:b,readOnly:!0,onClick:A=>A.currentTarget.select(),className:"w-full rounded border border-gray-600 bg-gray-800 px-2 py-1 text-xs text-gray-100 focus:outline-none focus:ring-1 focus:ring-blue-500","aria-label":"Authentication URL"}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("button",{type:"button",onClick:()=>{J(b)},className:"flex-1 rounded bg-blue-600 px-3 py-2 text-xs font-medium text-white hover:bg-blue-700",children:"Open URL"}),e.jsx("button",{type:"button",onClick:async()=>{const A=await $(b);I(A?"copied":"failed")},className:"flex-1 rounded bg-gray-700 px-3 py-2 text-xs font-medium text-white hover:bg-gray-600",children:K==="copied"?"Copied":"Copy URL"})]})]})}),c&&e.jsx("div",{className:"absolute bottom-14 right-3 z-20 md:hidden",children:e.jsx("button",{type:"button",onClick:()=>R(!1),className:"rounded bg-gray-800/95 px-3 py-2 text-xs font-medium text-gray-100 shadow-lg backdrop-blur-sm hover:bg-gray-700",children:"Show login URL"})})]})}return e.jsxs("div",{className:"h-full flex flex-col bg-gray-900 w-full",children:[e.jsx("div",{className:"flex-shrink-0 bg-gray-800 border-b border-gray-700 px-4 py-2",children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsx("div",{className:`w-2 h-2 rounded-full ${u?"bg-green-500":"bg-red-500"}`}),r&&e.jsxs("span",{className:"text-xs text-blue-300",children:["(",ie,"...)"]}),!r&&e.jsx("span",{className:"text-xs text-gray-400",children:i("shell.status.newSession")}),!N&&e.jsx("span",{className:"text-xs text-yellow-400",children:i("shell.status.initializing")}),L&&e.jsx("span",{className:"text-xs text-blue-400",children:i("shell.status.restarting")})]}),e.jsxs("div",{className:"flex items-center space-x-3",children:[u&&e.jsxs("button",{onClick:G,className:"px-3 py-1 text-xs bg-red-600 text-white rounded hover:bg-red-700 flex items-center space-x-1",title:i("shell.actions.disconnectTitle"),children:[e.jsx("svg",{className:"w-3 h-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})}),e.jsx("span",{children:i("shell.actions.disconnect")})]}),e.jsxs("button",{onClick:de,disabled:L||u,className:"text-xs text-gray-400 hover:text-white disabled:opacity-50 disabled:cursor-not-allowed flex items-center space-x-1",title:i("shell.actions.restartTitle"),children:[e.jsx("svg",{className:"w-3 h-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})}),e.jsx("span",{children:i("shell.actions.restart")})]})]})]})}),e.jsxs("div",{className:"flex-1 p-2 overflow-hidden relative",children:[e.jsx("div",{ref:p,className:"h-full w-full focus:outline-none",style:{outline:"none"}}),!N&&e.jsx("div",{className:"absolute inset-0 flex items-center justify-center bg-gray-900 bg-opacity-90",children:e.jsx("div",{className:"text-white",children:i("shell.loading")})}),N&&!u&&!C&&e.jsx("div",{className:"absolute inset-0 flex items-center justify-center bg-gray-900 bg-opacity-90 p-4",children:e.jsxs("div",{className:"text-center max-w-sm w-full",children:[e.jsxs("button",{onClick:q,className:"px-6 py-3 bg-green-600 text-white rounded-lg hover:bg-green-700 transition-colors flex items-center justify-center space-x-2 text-base font-medium w-full sm:w-auto",title:i("shell.actions.connectTitle"),children:[e.jsx("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M13 10V3L4 14h7v7l9-11h-7z"})}),e.jsx("span",{children:i("shell.actions.connect")})]}),e.jsx("p",{className:"text-gray-400 text-sm mt-3 px-2",children:h?i("shell.runCommand",{command:o||i("shell.defaultCommand"),projectName:t.displayName}):r?i("shell.resumeSession",{displayName:ue}):i("shell.startSession")})]})}),C&&e.jsx("div",{className:"absolute inset-0 flex items-center justify-center bg-gray-900 bg-opacity-90 p-4",children:e.jsxs("div",{className:"text-center max-w-sm w-full",children:[e.jsxs("div",{className:"flex items-center justify-center space-x-3 text-yellow-400",children:[e.jsx("div",{className:"w-6 h-6 animate-spin rounded-full border-2 border-yellow-400 border-t-transparent"}),e.jsx("span",{className:"text-base font-medium",children:i("shell.connecting")})]}),e.jsx("p",{className:"text-gray-400 text-sm mt-3 px-2",children:h?i("shell.runCommand",{command:o||i("shell.defaultCommand"),projectName:t.displayName}):i("shell.startCli",{projectName:t.displayName})})]})})]})]})}function Ue({project:t,session:r=null,command:o=null,isPlainShell:h=null,autoConnect:m=!0,onComplete:s=null,onClose:y=null,title:i=null,className:p="",showHeader:l=!0,compact:j=!1,minimal:n=!1}){const[u,w]=a.useState(!1),N=h!==null?h:o!==null,v=a.useCallback(L=>{w(!0),s&&s(L)},[s]);return t?e.jsxs("div",{className:`h-full w-full flex flex-col ${p}`,children:[!n&&l&&i&&e.jsx("div",{className:"flex-shrink-0 bg-gray-800 border-b border-gray-700 px-4 py-2",children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsx("h3",{className:"text-sm font-medium text-gray-200",children:i}),u&&e.jsx("span",{className:"text-xs text-green-400",children:"(Completed)"})]}),y&&e.jsx("button",{onClick:y,className:"text-gray-400 hover:text-white",title:"Close",children:e.jsx("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})})]})}),e.jsx("div",{className:"flex-1 w-full min-h-0",children:e.jsx(Me,{selectedProject:t,selectedSession:r,initialCommand:o,isPlainShell:N,onProcessComplete:v,minimal:n,autoConnect:n?!0:m})})]}):e.jsx("div",{className:`h-full flex items-center justify-center ${p}`,children:e.jsxs("div",{className:"text-center text-gray-500 dark:text-gray-400",children:[e.jsx("div",{className:"w-16 h-16 mx-auto mb-4 bg-gray-100 dark:bg-gray-800 rounded-full flex items-center justify-center",children:e.jsx("svg",{className:"w-8 h-8 text-gray-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M8 9l3 3-3 3m5 0h3M5 20h14a2 2 0 002-2V6a2 2 0 00-2-2H5a2 2 0 002 2z"})})}),e.jsx("h3",{className:"text-lg font-semibold mb-2",children:"No Project Selected"}),e.jsx("p",{children:"A project is required to open a shell"})]})})}function Je({isOpen:t,onClose:r,provider:o="claude",project:h,onComplete:m,customCommand:s,isAuthenticated:y=!1,isOnboarding:i=!1}){if(!t)return null;const p=()=>{if(s)return s;switch(o){case"claude":return y?"claude setup-token --dangerously-skip-permissions":i?"claude /exit --dangerously-skip-permissions":"claude /login --dangerously-skip-permissions";case"cursor":return"cursor-agent login";case"codex":return"codex login";default:return y?"claude setup-token --dangerously-skip-permissions":i?"claude /exit --dangerously-skip-permissions":"claude /login --dangerously-skip-permissions"}},l=()=>{switch(o){case"claude":return"Claude CLI Login";case"cursor":return"Cursor CLI Login";case"codex":return"Codex CLI Login";default:return"CLI Login"}},j=n=>{m&&m(n)};return e.jsx("div",{className:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-[9999] max-md:items-stretch max-md:justify-stretch",children:e.jsxs("div",{className:"bg-white dark:bg-gray-800 rounded-lg shadow-xl w-full max-w-4xl h-3/4 flex flex-col md:max-w-4xl md:h-3/4 md:rounded-lg md:m-4 max-md:max-w-none max-md:h-full max-md:rounded-none max-md:m-0",children:[e.jsxs("div",{className:"flex items-center justify-between p-4 border-b border-gray-200 dark:border-gray-700",children:[e.jsx("h3",{className:"text-lg font-semibold text-gray-900 dark:text-white",children:l()}),e.jsx("button",{onClick:r,className:"text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 transition-colors","aria-label":"Close login modal",children:e.jsx(je,{className:"w-6 h-6"})})]}),e.jsx("div",{className:"flex-1 overflow-hidden",children:e.jsx(Ue,{project:h,command:p(),onComplete:j,minimal:!0})})]})})}export{De as C,Je as L,Me as S,He as a,Fe as b,Ue as c,Le as r,Te as u};
@@ -1 +0,0 @@
1
- import{r as a,j as e,v as Y}from"./vendor-react-9mUTKBHH.js";import{L as D,C as V,a as H,b as K}from"./LoginModal-CWoFm0au.js";import{u as Q,a as m}from"./index-BGmwbRlb.js";import{G as P,L as W,C as g,a as X,b as G,c as Z,U as _,M as ee}from"./vendor-icons-Dh9m_Ydt.js";import"./vendor-xterm-CZq1hqo1.js";import"./vendor-syntax-DnmwQQJF.js";import"./vendor-markdown-BXEi_H3G.js";import"./vendor-i18n-DCFGyhQR.js";const ce=({onComplete:y})=>{const[r,b]=a.useState(0),[x,w]=a.useState(""),[u,C]=a.useState(""),[i,h]=a.useState(!1),[k,o]=a.useState(""),[n,f]=a.useState(null),[I]=a.useState({name:"default",fullPath:""}),[l,p]=a.useState({authenticated:!1,email:null,loading:!0,error:null}),[d,j]=a.useState({authenticated:!1,email:null,loading:!0,error:null}),[c,N]=a.useState({authenticated:!1,email:null,loading:!0,error:null}),{user:te}=Q(),S=a.useRef(void 0);a.useEffect(()=>{M()},[]);const M=async()=>{try{const t=await m("/api/user/git-config");if(t.ok){const s=await t.json();s.gitName&&w(s.gitName),s.gitEmail&&C(s.gitEmail)}}catch(t){console.error("Error loading git config:",t)}};a.useEffect(()=>{const t=S.current;S.current=n,(t===void 0||t!==null&&n===null)&&(L(),A(),E())},[n]);const L=async()=>{try{const t=await m("/api/cli/claude/status");if(t.ok){const s=await t.json();p({authenticated:s.authenticated,email:s.email,loading:!1,error:s.error||null})}else p({authenticated:!1,email:null,loading:!1,error:"Failed to check authentication status"})}catch(t){console.error("Error checking Claude auth status:",t),p({authenticated:!1,email:null,loading:!1,error:t.message})}},A=async()=>{try{const t=await m("/api/cli/cursor/status");if(t.ok){const s=await t.json();j({authenticated:s.authenticated,email:s.email,loading:!1,error:s.error||null})}else j({authenticated:!1,email:null,loading:!1,error:"Failed to check authentication status"})}catch(t){console.error("Error checking Cursor auth status:",t),j({authenticated:!1,email:null,loading:!1,error:t.message})}},E=async()=>{try{const t=await m("/api/cli/codex/status");if(t.ok){const s=await t.json();N({authenticated:s.authenticated,email:s.email,loading:!1,error:s.error||null})}else N({authenticated:!1,email:null,loading:!1,error:"Failed to check authentication status"})}catch(t){console.error("Error checking Codex auth status:",t),N({authenticated:!1,email:null,loading:!1,error:t.message})}},$=()=>f("claude"),q=()=>f("cursor"),O=()=>f("codex"),R=t=>{t===0&&(n==="claude"?L():n==="cursor"?A():n==="codex"&&E())},T=async()=>{if(o(""),r===0){if(!x.trim()||!u.trim()){o("Both git name and email are required");return}if(!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(u)){o("Please enter a valid email address");return}h(!0);try{const s=await m("/api/user/git-config",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({gitName:x,gitEmail:u})});if(!s.ok){const F=await s.json();throw new Error(F.error||"Failed to save git configuration")}b(r+1)}catch(s){o(s.message)}finally{h(!1)}return}b(r+1)},z=()=>{o(""),b(r-1)},B=async()=>{h(!0),o("");try{const t=await m("/api/user/complete-onboarding",{method:"POST"});if(!t.ok){const s=await t.json();throw new Error(s.error||"Failed to complete onboarding")}y&&y()}catch(t){o(t.message)}finally{h(!1)}},v=[{title:"Git Configuration",description:"Set up your git identity for commits",icon:P,required:!0},{title:"Connect Agents",description:"Connect your AI coding assistants",icon:W,required:!1}],J=()=>{switch(r){case 0:return e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{className:"text-center mb-8",children:[e.jsx("div",{className:"w-16 h-16 bg-blue-100 dark:bg-blue-900/30 rounded-full flex items-center justify-center mx-auto mb-4",children:e.jsx(P,{className:"w-8 h-8 text-blue-600 dark:text-blue-400"})}),e.jsx("h2",{className:"text-2xl font-bold text-foreground mb-2",children:"Git Configuration"}),e.jsx("p",{className:"text-muted-foreground",children:"Configure your git identity to ensure proper attribution for your commits"})]}),e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{children:[e.jsxs("label",{htmlFor:"gitName",className:"flex items-center gap-2 text-sm font-medium text-foreground mb-2",children:[e.jsx(_,{className:"w-4 h-4"}),"Git Name ",e.jsx("span",{className:"text-red-500",children:"*"})]}),e.jsx("input",{type:"text",id:"gitName",value:x,onChange:t=>w(t.target.value),className:"w-full px-4 py-3 border border-border rounded-lg bg-background text-foreground focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent",placeholder:"John Doe",required:!0,disabled:i}),e.jsx("p",{className:"mt-1 text-xs text-muted-foreground",children:"This will be used as: git config --global user.name"})]}),e.jsxs("div",{children:[e.jsxs("label",{htmlFor:"gitEmail",className:"flex items-center gap-2 text-sm font-medium text-foreground mb-2",children:[e.jsx(ee,{className:"w-4 h-4"}),"Git Email ",e.jsx("span",{className:"text-red-500",children:"*"})]}),e.jsx("input",{type:"email",id:"gitEmail",value:u,onChange:t=>C(t.target.value),className:"w-full px-4 py-3 border border-border rounded-lg bg-background text-foreground focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent",placeholder:"john@example.com",required:!0,disabled:i}),e.jsx("p",{className:"mt-1 text-xs text-muted-foreground",children:"This will be used as: git config --global user.email"})]})]})]});case 1:return e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{className:"text-center mb-6",children:[e.jsx("h2",{className:"text-2xl font-bold text-foreground mb-2",children:"Connect Your AI Agents"}),e.jsx("p",{className:"text-muted-foreground",children:"Login to one or more AI coding assistants. All are optional."})]}),e.jsxs("div",{className:"space-y-3",children:[e.jsx("div",{className:`border rounded-lg p-4 transition-colors ${l.authenticated?"bg-blue-50 dark:bg-blue-900/20 border-blue-200 dark:border-blue-800":"border-border bg-card"}`,children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("div",{className:"w-10 h-10 bg-blue-100 dark:bg-blue-900/30 rounded-full flex items-center justify-center",children:e.jsx(V,{size:20})}),e.jsxs("div",{children:[e.jsxs("div",{className:"font-medium text-foreground flex items-center gap-2",children:["Claude Code",l.authenticated&&e.jsx(g,{className:"w-4 h-4 text-green-500"})]}),e.jsx("div",{className:"text-xs text-muted-foreground",children:l.loading?"Checking...":l.authenticated?l.email||"Connected":"Not connected"})]})]}),!l.authenticated&&!l.loading&&e.jsx("button",{onClick:$,className:"bg-blue-600 hover:bg-blue-700 text-white text-sm font-medium py-2 px-4 rounded-lg transition-colors",children:"Login"})]})}),e.jsx("div",{className:`border rounded-lg p-4 transition-colors ${d.authenticated?"bg-purple-50 dark:bg-purple-900/20 border-purple-200 dark:border-purple-800":"border-border bg-card"}`,children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("div",{className:"w-10 h-10 bg-purple-100 dark:bg-purple-900/30 rounded-full flex items-center justify-center",children:e.jsx(H,{size:20})}),e.jsxs("div",{children:[e.jsxs("div",{className:"font-medium text-foreground flex items-center gap-2",children:["Cursor",d.authenticated&&e.jsx(g,{className:"w-4 h-4 text-green-500"})]}),e.jsx("div",{className:"text-xs text-muted-foreground",children:d.loading?"Checking...":d.authenticated?d.email||"Connected":"Not connected"})]})]}),!d.authenticated&&!d.loading&&e.jsx("button",{onClick:q,className:"bg-purple-600 hover:bg-purple-700 text-white text-sm font-medium py-2 px-4 rounded-lg transition-colors",children:"Login"})]})}),e.jsx("div",{className:`border rounded-lg p-4 transition-colors ${c.authenticated?"bg-gray-100 dark:bg-gray-800/50 border-gray-300 dark:border-gray-600":"border-border bg-card"}`,children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("div",{className:"w-10 h-10 bg-gray-100 dark:bg-gray-800 rounded-full flex items-center justify-center",children:e.jsx(K,{className:"w-5 h-5"})}),e.jsxs("div",{children:[e.jsxs("div",{className:"font-medium text-foreground flex items-center gap-2",children:["OpenAI Codex",c.authenticated&&e.jsx(g,{className:"w-4 h-4 text-green-500"})]}),e.jsx("div",{className:"text-xs text-muted-foreground",children:c.loading?"Checking...":c.authenticated?c.email||"Connected":"Not connected"})]})]}),!c.authenticated&&!c.loading&&e.jsx("button",{onClick:O,className:"bg-gray-800 hover:bg-gray-900 dark:bg-gray-700 dark:hover:bg-gray-600 text-white text-sm font-medium py-2 px-4 rounded-lg transition-colors",children:"Login"})]})})]}),e.jsx("div",{className:"text-center text-sm text-muted-foreground pt-2",children:e.jsx("p",{children:"You can configure these later in Settings."})})]});default:return null}},U=()=>{switch(r){case 0:return x.trim()&&u.trim()&&/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(u);case 1:return!0;default:return!1}};return e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"min-h-screen bg-background flex items-center justify-center p-4",children:e.jsxs("div",{className:"w-full max-w-2xl",children:[e.jsx("div",{className:"mb-8",children:e.jsx("div",{className:"flex items-center justify-between",children:v.map((t,s)=>e.jsxs(Y.Fragment,{children:[e.jsxs("div",{className:"flex flex-col items-center flex-1",children:[e.jsx("div",{className:`w-12 h-12 rounded-full flex items-center justify-center border-2 transition-colors duration-200 ${s<r?"bg-green-500 border-green-500 text-white":s===r?"bg-blue-600 border-blue-600 text-white":"bg-background border-border text-muted-foreground"}`,children:s<r?e.jsx(g,{className:"w-6 h-6"}):typeof t.icon=="function"?e.jsx(t.icon,{}):e.jsx(t.icon,{className:"w-6 h-6"})}),e.jsxs("div",{className:"mt-2 text-center",children:[e.jsx("p",{className:`text-sm font-medium ${s===r?"text-foreground":"text-muted-foreground"}`,children:t.title}),t.required&&e.jsx("span",{className:"text-xs text-red-500",children:"Required"})]})]}),s<v.length-1&&e.jsx("div",{className:`flex-1 h-0.5 mx-2 transition-colors duration-200 ${s<r?"bg-green-500":"bg-border"}`})]},s))})}),e.jsxs("div",{className:"bg-card rounded-lg shadow-lg border border-border p-8",children:[J(),k&&e.jsx("div",{className:"mt-6 p-4 bg-red-100 dark:bg-red-900/20 border border-red-300 dark:border-red-800 rounded-lg",children:e.jsx("p",{className:"text-sm text-red-700 dark:text-red-400",children:k})}),e.jsxs("div",{className:"flex items-center justify-between mt-8 pt-6 border-t border-border",children:[e.jsxs("button",{onClick:z,disabled:r===0||i,className:"flex items-center gap-2 px-4 py-2 text-sm font-medium text-muted-foreground hover:text-foreground disabled:opacity-50 disabled:cursor-not-allowed transition-colors duration-200",children:[e.jsx(X,{className:"w-4 h-4"}),"Previous"]}),e.jsx("div",{className:"flex items-center gap-3",children:r<v.length-1?e.jsx("button",{onClick:T,disabled:!U()||i,className:"flex items-center gap-2 px-6 py-3 bg-blue-600 hover:bg-blue-700 disabled:bg-blue-400 disabled:cursor-not-allowed text-white font-medium rounded-lg transition-colors duration-200",children:i?e.jsxs(e.Fragment,{children:[e.jsx(G,{className:"w-4 h-4 animate-spin"}),"Saving..."]}):e.jsxs(e.Fragment,{children:["Next",e.jsx(Z,{className:"w-4 h-4"})]})}):e.jsx("button",{onClick:B,disabled:i,className:"flex items-center gap-2 px-6 py-3 bg-green-600 hover:bg-green-700 disabled:bg-green-400 disabled:cursor-not-allowed text-white font-medium rounded-lg transition-colors duration-200",children:i?e.jsxs(e.Fragment,{children:[e.jsx(G,{className:"w-4 h-4 animate-spin"}),"Completing..."]}):e.jsxs(e.Fragment,{children:[e.jsx(g,{className:"w-4 h-4"}),"Complete Setup"]})})})]})]})]})}),n&&e.jsx(D,{isOpen:!!n,onClose:()=>f(null),provider:n,project:I,onComplete:R,isOnboarding:!0})]})};export{ce as default};
@@ -1 +0,0 @@
1
- import"./percentages-BXMCSKIN-Be6p9phi.js";import"./vendor-syntax-DnmwQQJF.js";import"./vendor-react-9mUTKBHH.js";import"./vendor-markdown-BXEi_H3G.js";import"./AppContent-DTZ2FbvM.js";import"./index-BGmwbRlb.js";import"./vendor-icons-Dh9m_Ydt.js";import"./vendor-i18n-DCFGyhQR.js";import"./LoginModal-CWoFm0au.js";import"./vendor-xterm-CZq1hqo1.js";import"./vendor-codemirror-rix45NST.js";import"./vendor-codemirror-langs-BH1ZcKHY.js";var e={paste:"Yapışdır",pasteAsPlaintext:"Düz mətn kimi yapışdırın",pasteCharts:"Diaqramları yapışdırın",selectAll:"Hamısını seç",multiSelect:"Seçimə element əlavə edin",moveCanvas:"Kanvası köçürün",cut:"Kəs",copy:"Kopyala",copyAsPng:"PNG olaraq panoya kopyala",copyAsSvg:"SVG olaraq panoya kopyala",copyText:"Mətn olaraq panoya kopyala",copySource:"",convertToCode:"",bringForward:"Önə daşı",sendToBack:"Geriyə göndərin",bringToFront:"Önə gətirin",sendBackward:"Geriyə göndərin",delete:"Sil",copyStyles:"Stilləri kopyalayın",pasteStyles:"Stilləri yapışdırın",stroke:"Strok rəngi",background:"Arxa fon",fill:"Doldur",strokeWidth:"Strok eni",strokeStyle:"Strok stili",strokeStyle_solid:"Solid",strokeStyle_dashed:"Kəsik",strokeStyle_dotted:"Nöqtəli",sloppiness:"Səliqəsizlik",opacity:"Şəffaflıq",textAlign:"Mətni uyğunlaşdır",edges:"Kənarlar",sharp:"Kəskin",round:"Dəyirmi",arrowheads:"Ox ucları",arrowhead_none:"Heç biri",arrowhead_arrow:"Ox",arrowhead_bar:"Çubuq",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Üçbucaq",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Şrift ölçüsü",fontFamily:"Şrift qrupu",addWatermark:'"Made with Excalidraw" əlavə et',handDrawn:"Əllə çəkilmiş",normal:"Normal",code:"Kod",small:"Kiçik",medium:"Orta",large:"Böyük",veryLarge:"Çox böyük",solid:"Solid",hachure:"Ştrix",zigzag:"Ziqzaq",crossHatch:"Çarpaz dəlik",thin:"İncə",bold:"Qalın",left:"Sol",center:"Mərkəz",right:"Sağ",extraBold:"Ekstra qalın",architect:"Memar",artist:"Rəssam",cartoonist:"Karikaturaçı",fileTitle:"Fayl adı",colorPicker:"Rəng seçən",canvasColors:"Kanvas üzərində istifadə olunur",canvasBackground:"Kanvas arxa fonu",drawingCanvas:"Kanvas çəkmək",layers:"Qatlar",actions:"Hərəkətlər",language:"Dil",liveCollaboration:"Canlı əməkdaşlıq...",duplicateSelection:"Dublikat",untitled:"Başlıqsız",name:"Ad",yourName:"Adınız",madeWithExcalidraw:"Excalidraw ilə hazırlanmışdır",group:"Qrup şəklində seçim",ungroup:"Qrupsuz seçim",collaborators:"",showGrid:"",addToLibrary:"",removeFromLibrary:"",libraryLoadingMessage:"",libraries:"",loadingScene:"",align:"",alignTop:"",alignBottom:"",alignLeft:"",alignRight:"",centerVertically:"",centerHorizontally:"",distributeHorizontally:"",distributeVertically:"",flipHorizontal:"",flipVertical:"",viewMode:"",share:"",showStroke:"",showBackground:"",toggleTheme:"",personalLib:"",excalidrawLib:"",decreaseFontSize:"",increaseFontSize:"",unbindText:"",bindText:"",createContainerFromText:"",link:{edit:"",editEmbed:"",create:"",createEmbed:"",label:"",labelEmbed:"",empty:""},lineEditor:{edit:"",exit:""},elementLock:{lock:"",unlock:"",lockAll:"",unlockAll:""},statusPublished:"",sidebarLock:"",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},a={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},r={clearReset:"",exportJSON:"",exportImage:"",export:"",copyToClipboard:"",save:"",saveAs:"",load:"",getShareableLink:"",close:"",selectLanguage:"",scrollBackToContent:"",zoomIn:"",zoomOut:"",resetZoom:"",menu:"",done:"",edit:"",undo:"",redo:"",resetLibrary:"",createNewRoom:"",fullScreen:"",darkMode:"",lightMode:"",zenMode:"",objectsSnapMode:"",exitZenMode:"",cancel:"",clear:"",remove:"",embed:"",publishLibrary:"",submit:"",confirm:"",embeddableInteractionButton:""},o={clearReset:"",couldNotCreateShareableLink:"",couldNotCreateShareableLinkTooBig:"",couldNotLoadInvalidFile:"",importBackendFailed:"",cannotExportEmptyCanvas:"",couldNotCopyToClipboard:"",decryptFailed:"",uploadedSecurly:"",loadSceneOverridePrompt:"",collabStopOverridePrompt:"",errorAddingToLibrary:"",errorRemovingFromLibrary:"",confirmAddLibrary:"",imageDoesNotContainScene:"",cannotRestoreFromImage:"",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"",invalidEncryptionKey:"",collabOfflineWarning:""},t={unsupportedFileType:"",imageInsertError:"",fileTooBig:"",svgImageInsertError:"",failedToFetchImage:"",invalidSVGString:"",cannotResolveCollabServer:"",importLibraryError:"",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},i={selection:"",image:"",rectangle:"",diamond:"",ellipse:"",arrow:"",line:"",freedraw:"",text:"",library:"",lock:"",penMode:"",link:"",eraser:"",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},l={canvasActions:"",selectedShapeActions:"",shapes:""},n={canvasPanning:"",linearElement:"",freeDraw:"",text:"",embeddable:"",text_selected:"",text_editing:"",linearElementMulti:"",lockAngle:"",resize:"",resizeImage:"",rotate:"",lineEditor_info:"",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},s={cannotShowPreview:"",canvasTooBig:"",canvasTooBigTip:""},d={headingMain:"",clearCanvasMessage:"",clearCanvasCaveat:"",trackedToSentry:"",openIssueMessage:"",sceneContent:""},u={desc_intro:"",desc_privacy:"",button_startSession:"",button_stopSession:"",desc_inProgressIntro:"",desc_shareLink:"",desc_exitSession:"",shareTitle:""},c={title:""},m={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:""},p={blog:"",click:"",deepSelect:"",deepBoxSelect:"",curvedArrow:"",curvedLine:"",documentation:"",doubleClick:"",drag:"",editor:"",editLineArrowPoints:"",editText:"",github:"",howto:"",or:"",preventBinding:"",tools:"",shortcuts:"",textFinish:"",textNewLine:"",title:"",view:"",zoomToFit:"",zoomToSelection:"",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:""},g={title:""},b={title:"",itemName:"",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},y={title:"",content:""},x={resetLibrary:"",removeItemsFromLib:""},h={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},k={tooltip:"",link:""},S={angle:"",element:"",elements:"",height:"",scene:"",selected:"",storage:"",title:"",total:"",version:"",versionCopy:"",versionNotAvailable:"",width:""},v={addedToLibrary:"",copyStyles:"",copyToClipboard:"",copyToClipboardAsPng:"",fileSaved:"",fileSavedToFilename:"",canvas:"",selection:"",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},F={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},w={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},E={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},T={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},_={title:"",button:"",description:"",syntax:"",preview:""},H={labels:e,library:a,buttons:r,alerts:o,errors:t,toolBar:i,headings:l,hints:n,canvasError:s,errorSplash:d,roomDialog:u,errorDialog:c,exportDialog:m,helpDialog:p,clearCanvasDialog:g,publishDialog:b,publishSuccessDialog:y,confirmDialog:x,imageExportDialog:h,encrypted:k,stats:S,toast:v,colors:F,welcomeScreen:w,colorPicker:E,overwriteConfirm:T,mermaid:_};export{o as alerts,r as buttons,s as canvasError,g as clearCanvasDialog,E as colorPicker,F as colors,x as confirmDialog,H as default,k as encrypted,c as errorDialog,d as errorSplash,t as errors,m as exportDialog,l as headings,p as helpDialog,n as hints,h as imageExportDialog,e as labels,a as library,_ as mermaid,T as overwriteConfirm,b as publishDialog,y as publishSuccessDialog,u as roomDialog,S as stats,v as toast,i as toolBar,w as welcomeScreen};
@@ -1 +0,0 @@
1
- import{U as a,C as n}from"./index-BHZfFT_V.js";const t=(r,o)=>a.lang.round(n.parse(r)[o]);export{t as c};
@@ -1,2 +0,0 @@
1
- import{s as A,d as S,p as G}from"./styles-9a916d00-DS4wRpL7.js";import{c as v,l as y,d as B,e as W,r as $,u as M,Y as I}from"./index-BHZfFT_V.js";import{G as Y}from"./graph-DXM7lcy1.js";import{l as O}from"./layout-B_11mCXA.js";import"./percentages-BXMCSKIN-Be6p9phi.js";import{l as P}from"./line-B-qmK_vI.js";import"./vendor-syntax-DnmwQQJF.js";import"./vendor-react-9mUTKBHH.js";import"./vendor-markdown-BXEi_H3G.js";import"./AppContent-DTZ2FbvM.js";import"./index-BGmwbRlb.js";import"./vendor-icons-Dh9m_Ydt.js";import"./vendor-i18n-DCFGyhQR.js";import"./LoginModal-CWoFm0au.js";import"./vendor-xterm-CZq1hqo1.js";import"./vendor-codemirror-rix45NST.js";import"./vendor-codemirror-langs-BH1ZcKHY.js";import"./array-BKyUJesY.js";import"./path-CbwjOpE9.js";let H=0;const X=function(i,r,t,o,p){const g=function(e){switch(e){case p.db.relationType.AGGREGATION:return"aggregation";case p.db.relationType.EXTENSION:return"extension";case p.db.relationType.COMPOSITION:return"composition";case p.db.relationType.DEPENDENCY:return"dependency";case p.db.relationType.LOLLIPOP:return"lollipop"}};r.points=r.points.filter(e=>!Number.isNaN(e.y));const s=r.points,c=P().x(function(e){return e.x}).y(function(e){return e.y}).curve($),n=i.append("path").attr("d",c(s)).attr("id","edge"+H).attr("class","relation");let a="";o.arrowMarkerAbsolute&&(a=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,a=a.replace(/\(/g,"\\("),a=a.replace(/\)/g,"\\)")),t.relation.lineType==1&&n.attr("class","relation dashed-line"),t.relation.lineType==10&&n.attr("class","relation dotted-line"),t.relation.type1!=="none"&&n.attr("marker-start","url("+a+"#"+g(t.relation.type1)+"Start)"),t.relation.type2!=="none"&&n.attr("marker-end","url("+a+"#"+g(t.relation.type2)+"End)");let m,h;const x=r.points.length;let b=M.calcLabelPosition(r.points);m=b.x,h=b.y;let u,f,w,k;if(x%2!==0&&x>1){let e=M.calcCardinalityPosition(t.relation.type1!=="none",r.points,r.points[0]),d=M.calcCardinalityPosition(t.relation.type2!=="none",r.points,r.points[x-1]);y.debug("cardinality_1_point "+JSON.stringify(e)),y.debug("cardinality_2_point "+JSON.stringify(d)),u=e.x,f=e.y,w=d.x,k=d.y}if(t.title!==void 0){const e=i.append("g").attr("class","classLabel"),d=e.append("text").attr("class","label").attr("x",m).attr("y",h).attr("fill","red").attr("text-anchor","middle").text(t.title);window.label=d;const l=d.node().getBBox();e.insert("rect",":first-child").attr("class","box").attr("x",l.x-o.padding/2).attr("y",l.y-o.padding/2).attr("width",l.width+o.padding).attr("height",l.height+o.padding)}y.info("Rendering relation "+JSON.stringify(t)),t.relationTitle1!==void 0&&t.relationTitle1!=="none"&&i.append("g").attr("class","cardinality").append("text").attr("class","type1").attr("x",u).attr("y",f).attr("fill","black").attr("font-size","6").text(t.relationTitle1),t.relationTitle2!==void 0&&t.relationTitle2!=="none"&&i.append("g").attr("class","cardinality").append("text").attr("class","type2").attr("x",w).attr("y",k).attr("fill","black").attr("font-size","6").text(t.relationTitle2),H++},J=function(i,r,t,o){y.debug("Rendering class ",r,t);const p=r.id,g={id:p,label:r.id,width:0,height:0},s=i.append("g").attr("id",o.db.lookUpDomId(p)).attr("class","classGroup");let c;r.link?c=s.append("svg:a").attr("xlink:href",r.link).attr("target",r.linkTarget).append("text").attr("y",t.textHeight+t.padding).attr("x",0):c=s.append("text").attr("y",t.textHeight+t.padding).attr("x",0);let n=!0;r.annotations.forEach(function(d){const l=c.append("tspan").text("«"+d+"»");n||l.attr("dy",t.textHeight),n=!1});let a=C(r);const m=c.append("tspan").text(a).attr("class","title");n||m.attr("dy",t.textHeight);const h=c.node().getBBox().height;let x,b,u;if(r.members.length>0){x=s.append("line").attr("x1",0).attr("y1",t.padding+h+t.dividerMargin/2).attr("y2",t.padding+h+t.dividerMargin/2);const d=s.append("text").attr("x",t.padding).attr("y",h+t.dividerMargin+t.textHeight).attr("fill","white").attr("class","classText");n=!0,r.members.forEach(function(l){_(d,l,n,t),n=!1}),b=d.node().getBBox()}if(r.methods.length>0){u=s.append("line").attr("x1",0).attr("y1",t.padding+h+t.dividerMargin+b.height).attr("y2",t.padding+h+t.dividerMargin+b.height);const d=s.append("text").attr("x",t.padding).attr("y",h+2*t.dividerMargin+b.height+t.textHeight).attr("fill","white").attr("class","classText");n=!0,r.methods.forEach(function(l){_(d,l,n,t),n=!1})}const f=s.node().getBBox();var w=" ";r.cssClasses.length>0&&(w=w+r.cssClasses.join(" "));const e=s.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",f.width+2*t.padding).attr("height",f.height+t.padding+.5*t.dividerMargin).attr("class",w).node().getBBox().width;return c.node().childNodes.forEach(function(d){d.setAttribute("x",(e-d.getBBox().width)/2)}),r.tooltip&&c.insert("title").text(r.tooltip),x&&x.attr("x2",e),u&&u.attr("x2",e),g.width=e,g.height=f.height+t.padding+.5*t.dividerMargin,g},C=function(i){let r=i.id;return i.type&&(r+="<"+I(i.type)+">"),r},Z=function(i,r,t,o){y.debug("Rendering note ",r,t);const p=r.id,g={id:p,text:r.text,width:0,height:0},s=i.append("g").attr("id",p).attr("class","classGroup");let c=s.append("text").attr("y",t.textHeight+t.padding).attr("x",0);const n=JSON.parse(`"${r.text}"`).split(`
2
- `);n.forEach(function(x){y.debug(`Adding line: ${x}`),c.append("tspan").text(x).attr("class","title").attr("dy",t.textHeight)});const a=s.node().getBBox(),h=s.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",a.width+2*t.padding).attr("height",a.height+n.length*t.textHeight+t.padding+.5*t.dividerMargin).node().getBBox().width;return c.node().childNodes.forEach(function(x){x.setAttribute("x",(h-x.getBBox().width)/2)}),g.width=h,g.height=a.height+n.length*t.textHeight+t.padding+.5*t.dividerMargin,g},_=function(i,r,t,o){const{displayText:p,cssStyle:g}=r.getDisplayDetails(),s=i.append("tspan").attr("x",o.padding).text(p);g!==""&&s.attr("style",r.cssStyle),t||s.attr("dy",o.textHeight)},N={getClassTitleString:C,drawClass:J,drawEdge:X,drawNote:Z};let T={};const E=20,L=function(i){const r=Object.entries(T).find(t=>t[1].label===i);if(r)return r[0]},R=function(i){i.append("defs").append("marker").attr("id","extensionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),i.append("defs").append("marker").attr("id","extensionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z"),i.append("defs").append("marker").attr("id","compositionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","compositionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","aggregationStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","aggregationEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","dependencyStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},F=function(i,r,t,o){const p=v().class;T={},y.info("Rendering diagram "+i);const g=v().securityLevel;let s;g==="sandbox"&&(s=B("#i"+r));const c=g==="sandbox"?B(s.nodes()[0].contentDocument.body):B("body"),n=c.select(`[id='${r}']`);R(n);const a=new Y({multigraph:!0});a.setGraph({isMultiGraph:!0}),a.setDefaultEdgeLabel(function(){return{}});const m=o.db.getClasses(),h=Object.keys(m);for(const e of h){const d=m[e],l=N.drawClass(n,d,p,o);T[l.id]=l,a.setNode(l.id,l),y.info("Org height: "+l.height)}o.db.getRelations().forEach(function(e){y.info("tjoho"+L(e.id1)+L(e.id2)+JSON.stringify(e)),a.setEdge(L(e.id1),L(e.id2),{relation:e},e.title||"DEFAULT")}),o.db.getNotes().forEach(function(e){y.debug(`Adding note: ${JSON.stringify(e)}`);const d=N.drawNote(n,e,p,o);T[d.id]=d,a.setNode(d.id,d),e.class&&e.class in m&&a.setEdge(e.id,L(e.class),{relation:{id1:e.id,id2:e.class,relation:{type1:"none",type2:"none",lineType:10}}},"DEFAULT")}),O(a),a.nodes().forEach(function(e){e!==void 0&&a.node(e)!==void 0&&(y.debug("Node "+e+": "+JSON.stringify(a.node(e))),c.select("#"+(o.db.lookUpDomId(e)||e)).attr("transform","translate("+(a.node(e).x-a.node(e).width/2)+","+(a.node(e).y-a.node(e).height/2)+" )"))}),a.edges().forEach(function(e){e!==void 0&&a.edge(e)!==void 0&&(y.debug("Edge "+e.v+" -> "+e.w+": "+JSON.stringify(a.edge(e))),N.drawEdge(n,a.edge(e),a.edge(e).relation,p,o))});const u=n.node().getBBox(),f=u.width+E*2,w=u.height+E*2;W(n,w,f,p.useMaxWidth);const k=`${u.x-E} ${u.y-E} ${f} ${w}`;y.debug(`viewBox ${k}`),n.attr("viewBox",k)},U={draw:F},ct={parser:G,db:S,renderer:U,styles:A,init:i=>{i.class||(i.class={}),i.class.arrowMarkerAbsolute=i.arrowMarkerAbsolute,S.clear()}};export{ct as diagram};
@@ -1,2 +0,0 @@
1
- import{s as M,d as _,p as R}from"./styles-9a916d00-DS4wRpL7.js";import{l as d,c,d as w,u as B,_ as G,$ as D,a0 as E,a1 as C,j as $}from"./index-BHZfFT_V.js";import{G as z}from"./graph-DXM7lcy1.js";import{r as P}from"./index-3862675e-4idOQN2N.js";import"./percentages-BXMCSKIN-Be6p9phi.js";import"./layout-B_11mCXA.js";import"./vendor-syntax-DnmwQQJF.js";import"./vendor-react-9mUTKBHH.js";import"./vendor-markdown-BXEi_H3G.js";import"./clone-BG9u7vLi.js";import"./edges-e0da2a9e-CGBBhG8k.js";import"./createText-2e5e7dd3-B8jCDmF_.js";import"./line-B-qmK_vI.js";import"./array-BKyUJesY.js";import"./path-CbwjOpE9.js";import"./AppContent-DTZ2FbvM.js";import"./index-BGmwbRlb.js";import"./vendor-icons-Dh9m_Ydt.js";import"./vendor-i18n-DCFGyhQR.js";import"./LoginModal-CWoFm0au.js";import"./vendor-xterm-CZq1hqo1.js";import"./vendor-codemirror-rix45NST.js";import"./vendor-codemirror-langs-BH1ZcKHY.js";const S=s=>$.sanitizeText(s,c());let k={dividerMargin:10,padding:5,textHeight:10,curve:void 0};const q=function(s,e,y,a){const t=Object.keys(s);d.info("keys:",t),d.info(s),t.forEach(function(i){var o,r;const l=s[i],p={shape:"rect",id:l.id,domId:l.domId,labelText:S(l.id),labelStyle:"",style:"fill: none; stroke: black",padding:((o=c().flowchart)==null?void 0:o.padding)??((r=c().class)==null?void 0:r.padding)};e.setNode(l.id,p),A(l.classes,e,y,a,l.id),d.info("setNode",p)})},A=function(s,e,y,a,t){const i=Object.keys(s);d.info("keys:",i),d.info(s),i.filter(o=>s[o].parent==t).forEach(function(o){var r,l;const n=s[o],p=n.cssClasses.join(" "),f=D(n.styles),m=n.label??n.id,u=0,b={labelStyle:f.labelStyle,shape:"class_box",labelText:S(m),classData:n,rx:u,ry:u,class:p,style:f.style,id:n.id,domId:n.domId,tooltip:a.db.getTooltip(n.id,t)||"",haveCallback:n.haveCallback,link:n.link,width:n.type==="group"?500:void 0,type:n.type,padding:((r=c().flowchart)==null?void 0:r.padding)??((l=c().class)==null?void 0:l.padding)};e.setNode(n.id,b),t&&e.setParent(n.id,t),d.info("setNode",b)})},F=function(s,e,y,a){d.info(s),s.forEach(function(t,i){var o,r;const l=t,n="",p={labelStyle:"",style:""},f=l.text,m=0,h={labelStyle:p.labelStyle,shape:"note",labelText:S(f),noteData:l,rx:m,ry:m,class:n,style:p.style,id:l.id,domId:l.id,tooltip:"",type:"note",padding:((o=c().flowchart)==null?void 0:o.padding)??((r=c().class)==null?void 0:r.padding)};if(e.setNode(l.id,h),d.info("setNode",h),!l.class||!(l.class in a))return;const b=y+i,x={id:`edgeNote${b}`,classes:"relation",pattern:"dotted",arrowhead:"none",startLabelRight:"",endLabelLeft:"",arrowTypeStart:"none",arrowTypeEnd:"none",style:"fill:none",labelStyle:"",curve:E(k.curve,C)};e.setEdge(l.id,l.class,x,b)})},H=function(s,e){const y=c().flowchart;let a=0;s.forEach(function(t){var i;a++;const o={classes:"relation",pattern:t.relation.lineType==1?"dashed":"solid",id:`id_${t.id1}_${t.id2}_${a}`,arrowhead:t.type==="arrow_open"?"none":"normal",startLabelRight:t.relationTitle1==="none"?"":t.relationTitle1,endLabelLeft:t.relationTitle2==="none"?"":t.relationTitle2,arrowTypeStart:N(t.relation.type1),arrowTypeEnd:N(t.relation.type2),style:"fill:none",labelStyle:"",curve:E(y==null?void 0:y.curve,C)};if(d.info(o,t),t.style!==void 0){const r=D(t.style);o.style=r.style,o.labelStyle=r.labelStyle}t.text=t.title,t.text===void 0?t.style!==void 0&&(o.arrowheadStyle="fill: #333"):(o.arrowheadStyle="fill: #333",o.labelpos="c",((i=c().flowchart)==null?void 0:i.htmlLabels)??c().htmlLabels?(o.labelType="html",o.label='<span class="edgeLabel">'+t.text+"</span>"):(o.labelType="text",o.label=t.text.replace($.lineBreakRegex,`
2
- `),t.style===void 0&&(o.style=o.style||"stroke: #333; stroke-width: 1.5px;fill:none"),o.labelStyle=o.labelStyle.replace("color:","fill:"))),e.setEdge(t.id1,t.id2,o,a)})},V=function(s){k={...k,...s}},W=async function(s,e,y,a){d.info("Drawing class - ",e);const t=c().flowchart??c().class,i=c().securityLevel;d.info("config:",t);const o=(t==null?void 0:t.nodeSpacing)??50,r=(t==null?void 0:t.rankSpacing)??50,l=new z({multigraph:!0,compound:!0}).setGraph({rankdir:a.db.getDirection(),nodesep:o,ranksep:r,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),n=a.db.getNamespaces(),p=a.db.getClasses(),f=a.db.getRelations(),m=a.db.getNotes();d.info(f),q(n,l,e,a),A(p,l,e,a),H(f,l),F(m,l,f.length+1,p);let u;i==="sandbox"&&(u=w("#i"+e));const h=i==="sandbox"?w(u.nodes()[0].contentDocument.body):w("body"),b=h.select(`[id="${e}"]`),x=h.select("#"+e+" g");if(await P(x,l,["aggregation","extension","composition","dependency","lollipop"],"classDiagram",e),B.insertTitle(b,"classTitleText",(t==null?void 0:t.titleTopMargin)??5,a.db.getDiagramTitle()),G(l,b,t==null?void 0:t.diagramPadding,t==null?void 0:t.useMaxWidth),!(t!=null&&t.htmlLabels)){const T=i==="sandbox"?u.nodes()[0].contentDocument:document,I=T.querySelectorAll('[id="'+e+'"] .edgeLabel .label');for(const g of I){const L=g.getBBox(),v=T.createElementNS("http://www.w3.org/2000/svg","rect");v.setAttribute("rx",0),v.setAttribute("ry",0),v.setAttribute("width",L.width),v.setAttribute("height",L.height),g.insertBefore(v,g.firstChild)}}};function N(s){let e;switch(s){case 0:e="aggregation";break;case 1:e="extension";break;case 2:e="composition";break;case 3:e="dependency";break;case 4:e="lollipop";break;default:e="none"}return e}const J={setConf:V,draw:W},ut={parser:R,db:_,renderer:J,styles:M,init:s=>{s.class||(s.class={}),s.class.arrowMarkerAbsolute=s.arrowMarkerAbsolute,_.clear()}};export{ut as diagram};
@@ -1 +0,0 @@
1
- import{b as r}from"./graph-DXM7lcy1.js";var e=4;function a(o){return r(o,e)}export{a as c};
@@ -1 +0,0 @@
1
- import{f as o,p as i}from"./flowDb-956e92f1-C-_LFz70.js";import{f as m,a as t}from"./styles-c10674c1-nKRF6NrH.js";import{y as p}from"./index-BHZfFT_V.js";import"./graph-DXM7lcy1.js";import"./layout-B_11mCXA.js";import"./percentages-BXMCSKIN-Be6p9phi.js";import"./index-3862675e-4idOQN2N.js";import"./clone-BG9u7vLi.js";import"./edges-e0da2a9e-CGBBhG8k.js";import"./createText-2e5e7dd3-B8jCDmF_.js";import"./vendor-markdown-BXEi_H3G.js";import"./vendor-react-9mUTKBHH.js";import"./line-B-qmK_vI.js";import"./array-BKyUJesY.js";import"./path-CbwjOpE9.js";import"./channel-O3ovC0x9.js";import"./vendor-syntax-DnmwQQJF.js";import"./AppContent-DTZ2FbvM.js";import"./index-BGmwbRlb.js";import"./vendor-icons-Dh9m_Ydt.js";import"./vendor-i18n-DCFGyhQR.js";import"./LoginModal-CWoFm0au.js";import"./vendor-xterm-CZq1hqo1.js";import"./vendor-codemirror-rix45NST.js";import"./vendor-codemirror-langs-BH1ZcKHY.js";const j={parser:i,db:o,renderer:t,styles:m,init:r=>{r.flowchart||(r.flowchart={}),r.flowchart.arrowMarkerAbsolute=r.arrowMarkerAbsolute,p({flowchart:{arrowMarkerAbsolute:r.arrowMarkerAbsolute}}),t.setConf(r.flowchart),o.clear(),o.setGen("gen-2")}};export{j as diagram};