@forsion/unit 2.12.2 → 2.13.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 (204) hide show
  1. package/README.md +61 -0
  2. package/backendWorker.mjs +6 -2
  3. package/main.mjs +991 -497
  4. package/package.json +1 -1
  5. package/release.json +5 -5
  6. package/web/assets/ArtificialView-XwHMLUFb.js +1 -0
  7. package/web/assets/{AutomationBuilder-sxWdUa0L.js → AutomationBuilder-hqs0QhMt.js} +1 -1
  8. package/web/assets/CalendarConfigView-DKib8Oed.js +1 -0
  9. package/web/assets/CalendarView-DJ5iOzvu.js +1 -0
  10. package/web/assets/CapabilityMenu-SwVlZ06x.js +1 -0
  11. package/web/assets/{CheckboxInput-BsaoUHZ0.js → CheckboxInput-BC-5a_C9.js} +1 -1
  12. package/web/assets/Chrome-HdfyYV3i.js +1 -0
  13. package/web/assets/{CodeView-j065KtVh.js → CodeView-CFL6yQ-6.js} +3 -3
  14. package/web/assets/DashboardGridView-B9DCWYVb.js +17 -0
  15. package/web/assets/{EventCard-BmDQkEj9.js → EventCard-B_ndpqH_.js} +1 -1
  16. package/web/assets/ExcalidrawCanvas-BQ4KKLJP.js +1 -0
  17. package/web/assets/{FloatingToc-CENybkAA.js → FloatingToc-Ce9GamvH.js} +1 -1
  18. package/web/assets/HomepageView-RCOfcVbE.js +1 -0
  19. package/web/assets/ImageStudioPanels-lkS_y2uM.js +3 -0
  20. package/web/assets/ImageStudioView-UPv52acl.js +1 -0
  21. package/web/assets/InlineFiles-CQbQumkf.js +1 -0
  22. package/web/assets/MarkdownBlock--__nPQGh.css +1 -0
  23. package/web/assets/MarkdownBlock-CkqiwPXa.js +58 -0
  24. package/web/assets/ModelPill-CY-rU1RU.js +2 -0
  25. package/web/assets/MuseLibraryView-CtTHlVnT.js +2 -0
  26. package/web/assets/{MuseView-d-iBk3sc.js → MuseView-CC2A7MBs.js} +2 -2
  27. package/web/assets/{PageHistoryPanel-CR-k1AM7.js → PageHistoryPanel-KhKT1DLy.js} +2 -2
  28. package/web/assets/PdfAnnotator-C_kglLCA.css +1 -0
  29. package/web/assets/PdfAnnotator-DUyrgY-t.js +505 -0
  30. package/web/assets/{ProductView-u2aezVsl.js → ProductView-CgsIYZqD.js} +1 -1
  31. package/web/assets/RightPanel-BHDgqTFs.js +4 -0
  32. package/web/assets/RunLocationPicker-BE5mxnab.css +1 -0
  33. package/web/assets/RunLocationPicker-DBnXYV5B.js +38 -0
  34. package/web/assets/{SidebarRow-BuSkKH5q.js → SidebarRow-BAJxbMcx.js} +1 -1
  35. package/web/assets/{SketchCard-D87GADyG.js → SketchCard-BGYz-bXP.js} +5 -5
  36. package/web/assets/{StudioGuestSurface-BijU_EEb.js → StudioGuestSurface-lt6znmkl.js} +1 -1
  37. package/web/assets/{TodoListView-DPPVpPUn.js → TodoListView-DPKhee6i.js} +1 -1
  38. package/web/assets/{Tooltip-DY4ISA-e.js → Tooltip-ZxrDqN4p.js} +1 -1
  39. package/web/assets/UnifiedPage-BX6ZQL0h.js +68 -0
  40. package/web/assets/UnifiedPage-CWXc_mo1.css +1 -0
  41. package/web/assets/{amadeus-manual.en-DWaN2fPs.js → amadeus-manual.en-DzRWr4BL.js} +18 -18
  42. package/web/assets/{amadeus-manual.zh--7D5TS8X.js → amadeus-manual.zh-DW32DkL7.js} +18 -18
  43. package/web/assets/{appStore-Dg9WALEA.js → appStore-DWP8UET9.js} +208 -122
  44. package/web/assets/appStore-wtOILggO.css +1 -0
  45. package/web/assets/{arrow-up-right-CpQs92mu.js → arrow-up-right-DrCXuWS7.js} +1 -1
  46. package/web/assets/{astryxBridge-BZhaZPs4.js → astryxBridge-D-m4_kYt.js} +3 -3
  47. package/web/assets/automationListSource-C8BNy6RY.js +1 -0
  48. package/web/assets/book-open-OLNm7OaB.js +1 -0
  49. package/web/assets/{calendarNavStore-C7fGRpoH.js → calendarNavStore-Cylfvv3s.js} +1 -1
  50. package/web/assets/{canvasPrefs-BeG4oEgP.js → canvasPrefs-8taQ42Cz.js} +1 -1
  51. package/web/assets/chatBoxSurface-CIlzs45H.js +1 -0
  52. package/web/assets/{circle-question-mark-WL3vbp-Z.js → circle-question-mark-XbAFplz1.js} +1 -1
  53. package/web/assets/{circle-x-D7s-M5sB.js → circle-x-fcReAZaE.js} +1 -1
  54. package/web/assets/{client-BSKpsyAw.js → client-0MPbodA6.js} +1 -1
  55. package/web/assets/{code-xml-BALV9u_c.js → code-xml-Cuna8Kh4.js} +1 -1
  56. package/web/assets/{codeStudioStore-C2mWfm32.js → codeStudioStore-BBU62GTy.js} +1 -1
  57. package/web/assets/codingNavigation-CZB4v1ZW.css +1 -0
  58. package/web/assets/codingNavigation-DDlPpPk5.js +47 -0
  59. package/web/assets/{create-4xUyKtAF.js → create-BGtEfCcg.js} +4 -4
  60. package/web/assets/dashboardSurface-BYM3C7WG.js +1 -0
  61. package/web/assets/{deskCapture-Df701U8L.js → deskCapture-BiUCmqfc.js} +1 -1
  62. package/web/assets/{diff2html-BV-zCH4d.js → diff2html-BNp2FTbk.js} +1 -1
  63. package/web/assets/{docx-preview-DW4IyU_Q.js → docx-preview-CFznGVOU.js} +1 -1
  64. package/web/assets/{emoji-DGaxpCIu.js → emoji-6zl4yfOS.js} +1 -1
  65. package/web/assets/floatingTocSurface-DreXPCa6.js +1 -0
  66. package/web/assets/{foldActions-B7KByFdN.js → foldActions-05QcQziQ.js} +1 -1
  67. package/web/assets/folder-BpsfOHD4.js +1 -0
  68. package/web/assets/{folder-plus-D1TDb7k9.js → folder-plus-BeQHr4AZ.js} +1 -1
  69. package/web/assets/gestures-DQBCcK4y.js +1 -0
  70. package/web/assets/{hand-Crrw-nSn.js → hand-Bko7ms15.js} +1 -1
  71. package/web/assets/{hard-drive-BbyVSbfP.js → hard-drive-BpuI5ebj.js} +1 -1
  72. package/web/assets/i18n-ecQQxiMQ.css +1 -0
  73. package/web/assets/i18n.generated-BuLjnmY8.js +15 -0
  74. package/web/assets/imageStudio--KF9gwHA.css +1 -0
  75. package/web/assets/imageStudio-BLVNKmEG.js +2 -0
  76. package/web/assets/{index-DKhyDkGB.js → index-BF10xp_K.js} +1 -1
  77. package/web/assets/{index-C7U6T-k8.js → index-BHm6K743.js} +1 -1
  78. package/web/assets/{index-CF4RV4mh.js → index-BM2o7PeV.js} +90 -90
  79. package/web/assets/{index-Brik2pf9.js → index-BgnNNv3e.js} +1 -1
  80. package/web/assets/{index--drOLtq7.js → index-C0Gy2NQ6.js} +1 -1
  81. package/web/assets/{index-CflzrdSt.js → index-C1doZp5H.js} +1 -1
  82. package/web/assets/{index-SZ5waGAq.js → index-C4L6vjd_.js} +1 -1
  83. package/web/assets/{index-Cmr7gVZQ.js → index-CD3yIkOA.js} +1 -1
  84. package/web/assets/{index-BYsdKR_1.js → index-CJeUgjPU.js} +1 -1
  85. package/web/assets/{index-CzM-C2Sd.js → index-CLHoq1w-.js} +1 -1
  86. package/web/assets/{index-tAXBa_fN.js → index-CUZI62qU.js} +1 -1
  87. package/web/assets/{index-C6GJulug.js → index-Cff42k7q.js} +1 -1
  88. package/web/assets/index-Ck_O3Jdd.js +1 -0
  89. package/web/assets/index-CuiYK18N.js +1 -0
  90. package/web/assets/{index-BRW82CsP.js → index-CwcOeZdT.js} +1 -1
  91. package/web/assets/{index-DUWR2nZi.js → index-D6AycQIz.js} +1 -1
  92. package/web/assets/{index-BCZZVJ_w.js → index-D7gVhvNY.js} +1 -1
  93. package/web/assets/{index-DjzSBM0U.js → index-D9UZQy42.js} +1 -1
  94. package/web/assets/{index-KL5Rj9kP.js → index-DuBQ0j2g.js} +1 -1
  95. package/web/assets/{index-Dg9oixs4.js → index-OD1gSX3h.js} +1 -1
  96. package/web/assets/{index-gPSbFSUn.js → index-Uo5tswys.js} +1 -1
  97. package/web/assets/{index-D1f_JwPH.js → index-o8cj0pRH.js} +1 -1
  98. package/web/assets/{index-OHi69jDq.js → index-rHjhbwvm.js} +1 -1
  99. package/web/assets/{index-CqyM6tQ0.js → index-rggq2czF.js} +1 -1
  100. package/web/assets/{index-Czu_bbDM.js → index-sCXThwqZ.js} +1 -1
  101. package/web/assets/{invitePage-lLQ-e0pj.js → invitePage-b0HGvMj6.js} +1 -1
  102. package/web/assets/{ipc-DQOD2UKk.js → ipc-CxAyeo8q.js} +1 -1
  103. package/web/assets/{jszip.min-DZxV9uZ_.js → jszip.min-B94KpE21.js} +1 -1
  104. package/web/assets/launchpad-C2c1MSVX.css +1 -0
  105. package/web/assets/{layout-grid-B_pjJwz4.js → layout-grid-BBVuEdWG.js} +1 -1
  106. package/web/assets/{linkFollow-C0_3k_PC.js → linkFollow-B7ivDZMM.js} +4 -4
  107. package/web/assets/{list-tree-DkAJYEXd.js → list-tree-4-0QDbLu.js} +1 -1
  108. package/web/assets/{listFold-BsOVn9UZ.js → listFold-DLuxXiIj.js} +1 -1
  109. package/web/assets/{lock-BnGHxjeE.js → lock-CnbZm4vo.js} +1 -1
  110. package/web/assets/{log-out-DBuMeqik.js → log-out-BEynWaHa.js} +1 -1
  111. package/web/assets/{main-NgUPPqDn.css → main-BiS_5wrB.css} +1 -1
  112. package/web/assets/main-sIq2N9Z5.js +20 -0
  113. package/web/assets/markdownEditorSurface-ZSJ3RHAv.js +3 -0
  114. package/web/assets/mdMarkStore-DQHDjG7s.js +2 -0
  115. package/web/assets/{mdMarks-Bq7Hl-4C.js → mdMarks-DbIcRa0O.js} +1 -1
  116. package/web/assets/{message-square-plus-BiAZAvcw.js → message-square-plus-CpiKDvle.js} +1 -1
  117. package/web/assets/{messages-BH5MfQdZ.js → messages-_jta1lSI.js} +1 -1
  118. package/web/assets/minus-C9ndHJ9O.js +1 -0
  119. package/web/assets/mobileEntry-CPmU_c4m.js +13 -0
  120. package/web/assets/nativeDownload-BYT082bY.js +1 -0
  121. package/web/assets/{pageChrome-xLNdFaSg.css → pageChrome-CovzZPdb.css} +1 -1
  122. package/web/assets/pageChrome-D3Niv1JM.js +1 -0
  123. package/web/assets/{pageTree-CZH2J6cc.js → pageTree-CgfvpzIj.js} +2 -2
  124. package/web/assets/{pen-tool-lkmBqliH.js → pen-tool-BXEFnU2i.js} +1 -1
  125. package/web/assets/{pencil-Cvk91P_Z.js → pencil-cqvCkekG.js} +1 -1
  126. package/web/assets/pluginChat-BbBukMuN.js +2 -0
  127. package/web/assets/{redo-2-DSi54z4e.js → redo-2-BO7wCDwy.js} +1 -1
  128. package/web/assets/{rotate-ccw-CUlnplr0.js → rotate-ccw-BvipPIjC.js} +1 -1
  129. package/web/assets/{sharePage-MM6UpPJ9.js → sharePage-XbN50US7.js} +2 -2
  130. package/web/assets/{shareViewer-CDZ8lTdy.js → shareViewer-BaYogetW.js} +1 -1
  131. package/web/assets/{star-CwDiGyUW.js → star-BQWMXnn7.js} +1 -1
  132. package/web/assets/tableSurface-BXqqidd1.js +1 -0
  133. package/web/assets/{terminal-DIXogYJY.js → terminal-l9k6RDrH.js} +1 -1
  134. package/web/assets/{terminalView-B3aZSsrQ.js → terminalView-Cpnt5_0P.js} +1 -1
  135. package/web/assets/theme-C6D3tMGV.css +1 -0
  136. package/web/assets/type-CFoaj2eD.js +1 -0
  137. package/web/assets/{undo-2-tUKCv5Gs.js → undo-2-DusxpdLa.js} +1 -1
  138. package/web/assets/{unitAccount-D8lVwaaT.js → unitAccount-DwutFPPw.js} +1 -1
  139. package/web/assets/{unitBridge-D547ublk.js → unitBridge-CcgQpkqV.js} +1 -1
  140. package/web/assets/{unitCloudTransport-BVF6lVp4.js → unitCloudTransport-vA7cLDts.js} +1 -1
  141. package/web/assets/{unitOwnerAccess-BfnEjsZb.js → unitOwnerAccess-LBlJ1YfA.js} +1 -1
  142. package/web/assets/{unitShim-DxetRgmP.js → unitShim-B_M9IrbC.js} +3 -3
  143. package/web/assets/{upload-BbeAsMuD.js → upload-ZrOj6tXA.js} +1 -1
  144. package/web/assets/userSpaces-uJOnsedR.js +1 -0
  145. package/web/assets/viewportLock-D3SNkwS2.js +631 -0
  146. package/web/assets/viewportLock-IP1zaVkz.css +1 -0
  147. package/web/assets/{workflow-DuoVRSSX.js → workflow-DPoG4QE2.js} +1 -1
  148. package/web/assets/{zoom-in-hr5bRpDL.js → zoom-in-lbTgzdQP.js} +1 -1
  149. package/web/index.html +232 -13
  150. package/web/assets/ArtificialView-B4ESD4iK.js +0 -1
  151. package/web/assets/CalendarConfigView-cCfo_EvZ.js +0 -1
  152. package/web/assets/CalendarView-wgLapctk.js +0 -1
  153. package/web/assets/CapabilityMenu-BQBsM638.js +0 -1
  154. package/web/assets/ChatView-BIUk0OJd.css +0 -1
  155. package/web/assets/ChatView-C-jCJnyS.js +0 -47
  156. package/web/assets/Chrome-CwFiDmre.js +0 -1
  157. package/web/assets/DashboardGridView-DXqe0vPd.js +0 -17
  158. package/web/assets/ExcalidrawCanvas-C3egkikA.js +0 -1
  159. package/web/assets/HomepageView-CRdhjLXu.js +0 -1
  160. package/web/assets/ImageStudioPanels-Dke7xf8E.js +0 -3
  161. package/web/assets/ImageStudioView-g38V8gaj.js +0 -1
  162. package/web/assets/InlineFiles-C_hjvn3u.js +0 -1
  163. package/web/assets/MarkdownBlock-DIjYEhTK.js +0 -56
  164. package/web/assets/ModelPill-BPlgovPo.js +0 -1
  165. package/web/assets/MuseLibraryView-CenyTTim.js +0 -2
  166. package/web/assets/PdfAnnotator-CGzC_o1Q.css +0 -1
  167. package/web/assets/PdfAnnotator-D79ip27w.js +0 -560
  168. package/web/assets/RightPanel-C3OJTIqT.js +0 -4
  169. package/web/assets/RunLocationPicker-BNcZ7KKF.css +0 -1
  170. package/web/assets/RunLocationPicker-CTYXUH2z.js +0 -34
  171. package/web/assets/UnifiedPage-CKNtVD_n.js +0 -57
  172. package/web/assets/UnifiedPage-DX_sTpyZ.css +0 -1
  173. package/web/assets/appStore-Di8LXuJ9.css +0 -1
  174. package/web/assets/automationListSource-DP5xZBxo.js +0 -1
  175. package/web/assets/chatBoxSurface-zvcyfrxE.js +0 -1
  176. package/web/assets/dashboardSurface-CFTH5z4c.js +0 -1
  177. package/web/assets/ellipsis-r1EcXsFq.js +0 -1
  178. package/web/assets/floatingTocSurface-C6RJ6i41.js +0 -1
  179. package/web/assets/folder-DlxnPmWY.js +0 -1
  180. package/web/assets/frame-_xBVYe3P.js +0 -1
  181. package/web/assets/gestures-CkW1Kfs9.js +0 -1
  182. package/web/assets/i18n-D-eU58uw.css +0 -1
  183. package/web/assets/i18n.generated-Bbsz16cl.js +0 -15
  184. package/web/assets/imageStudio-BqbNOvpu.css +0 -1
  185. package/web/assets/imageStudio-C_Rs630L.js +0 -2
  186. package/web/assets/index-BCubCwdT.js +0 -1
  187. package/web/assets/index-DZfZTksa.js +0 -1
  188. package/web/assets/main-Dki8NlsT.js +0 -21
  189. package/web/assets/markdownEditorSurface-B4PeUzed.js +0 -3
  190. package/web/assets/mdMarkStore-CsKl7C8O.js +0 -2
  191. package/web/assets/minus-Cyv1YzOU.js +0 -1
  192. package/web/assets/mobileEntry-Bd_nKr0D.js +0 -13
  193. package/web/assets/nativeDownload-D-f1_L2S.js +0 -1
  194. package/web/assets/pageChrome-C9_azUYW.js +0 -1
  195. package/web/assets/panel-left-rOc8As0s.js +0 -1
  196. package/web/assets/pen-line-m6_HvWZ9.js +0 -1
  197. package/web/assets/sticky-note-BIuPUSOU.js +0 -1
  198. package/web/assets/tableSurface-Y_JBQsuz.js +0 -1
  199. package/web/assets/theme-DfEi_DND.css +0 -1
  200. package/web/assets/type-Cqoabh7H.js +0 -1
  201. package/web/assets/userSpaces-DyyAn7vj.js +0 -1
  202. package/web/assets/viewportLock-C4SX-9PO.js +0 -103
  203. package/web/assets/viewportLock-DYSe7Jsn.css +0 -1
  204. package/web/assets/waves-horizontal-B8ZpHQ5H.js +0 -1
@@ -1 +0,0 @@
1
- import{t as i}from"./index-CF4RV4mh.js";import{bg as O,gS as s,u as p,aB as M,q1 as C,k as g,q4 as D,jd as N,h0 as $,g8 as E,cI as q,q5 as K,g4 as B,gZ as L,g7 as x,hy as P,i as U}from"./appStore-Dg9WALEA.js";import{n as W}from"./nativeDownload-D-f1_L2S.js";import"./messages-BH5MfQdZ.js";const Z="plugin:automation:rules",d=t=>t?JSON.stringify(t):null,m=()=>U.getState().openView("automation-detail",{},"main"),f=async t=>{try{return await t(),s.getState().bump(),!0}catch(o){return p.getState().toast(String(o instanceof Error?o.message:o),!0),!1}},w=5e3,_=6e4,S=new Set,A=new Map,y=t=>S.has(t)||Date.now()-(A.get(t)??-1/0)<_,z=t=>y(d(t));function v(t,o,u,a){const n=d(t);if(y(n))return;const e=O()==="main";if(!e&&!window.confirm(i("automation.deleteConfirm",{name:o})))return;S.add(n);const r=s.getState();d(r.sel)===n&&r.setSel(null),r.bump();const c=()=>{S.delete(n),s.getState().bump()};let l=!1;const h=()=>{l||(l=!0,f(u).then(I=>{I&&(A.set(n,Date.now()),a?.())}).finally(c))};if(!e){h();return}W({text:i("automation.deleted",{name:o}),level:"info",dedupeKey:`automation.delete:${n}`,receipt:!0,durationMs:w,onClose:h,action:{label:i("automation.undo"),run(){l||(l=!0,c())}}})||setTimeout(h,w)}let k=0,b;function J(t){const o=s.subscribe(t),u=P(t);if(k++===0){const a=()=>{s.getState().refresh(p.getState().cfg)},n=s.subscribe((c,l)=>{c.refreshNonce!==l.refreshNonce&&a()}),e=p.subscribe((c,l)=>{c.cfg!==l.cfg&&a()}),r=setInterval(a,8e3);b=()=>{clearInterval(r),n(),e()},a()}return()=>{o(),u(),--k===0&&(b?.(),b=void 0)}}const T={id:"rules",get title(){return i("space.automation")},search:!0,activeKey:()=>s.getState().builder?null:d(s.getState().sel),subscribe:J,items(t){const o=s.getState(),u=K(),a=t?.query?.trim().toLowerCase(),n=o.triggers.map(e=>({key:d({kind:"trigger",triggerId:e.id}),title:e.desc,icon:"today",category:x(e)?"finished":e.cond.type==="manual"?"buttons":"rules",hint:i(x(e)?"automation.finished":e.enabled?"automation.ux.on":"automation.ux.off"),searchText:`${B(i,e.cond)} ${L(i,u,e)}`}));for(const e of o.schedules)for(const r of e.entries)r.date&&r.prompt&&n.push({key:d({kind:"schedule",slug:e.slug,rowId:r.id}),title:r.name,icon:"calendar",category:"schedules",searchText:e.name,hint:i(r.auto?"automation.ux.on":"automation.ux.off")});for(const e of["muse","historian"])n.push({key:d({kind:e}),title:i(`automation.${e}.title`),icon:e==="muse"?"sparkles":"history",category:"system",hint:i(o.specialCfg?.[e].enabled?"automation.ux.on":"automation.ux.off")});return n.filter(e=>!y(e.key)&&(t?.group?e.category===t.group:a||e.category!=="finished")&&(!a||`${e.title} ${e.searchText||""}`.toLowerCase().includes(a)))},groups:()=>["rules","buttons","schedules","system","finished"].map(t=>({key:t,title:i(t==="rules"?"automation.ux.myWorkflows":t==="finished"?"automation.finished":`automation.group.${t}`),count:T.items({group:t}).length})).filter(t=>t.count>0||t.key==="rules"),open(t){s.getState().setSel(JSON.parse(t.key)),m()},actions:[{id:"new",get label(){return i("automation.new")},run(){s.getState().openBuilder(),m()}},{id:"overview",get label(){return i("automation.ux.overview")},run(){s.getState().setSel(null),m()}}],itemMenu(t){const o=JSON.parse(t.key),u=s.getState();if(p.getState().cfg,o.kind==="trigger"){const n=u.triggers.find(e=>e.id===o.triggerId);return n?[{id:"edit",label:i("common.edit"),run(){u.openBuilder(n.id),m()}},{id:"toggle",label:i(n.enabled?"automation.ux.pause":"automation.ux.enable"),run(){f(()=>C(g(),{...D(n),enabled:!n.enabled,actor:"user"}))}},{id:"delete",label:i("common.delete"),danger:!0,run(){v(o,n.desc,()=>N(g(),n.id))}}]:[]}if(o.kind==="schedule"){const n=u.schedules.find(e=>e.slug===o.slug)?.entries.find(e=>e.id===o.rowId);return n?[{id:"toggle",label:i(n.auto?"automation.ux.pause":"automation.ux.enable"),run(){f(()=>$(g(),o.slug,{id:n.id,name:n.name,date:n.date,repeat:n.repeat,auto:!n.auto,prompt:n.prompt,description:n.description,todo:n.todo}))}},{id:"delete",label:i("common.delete"),danger:!0,run(){v(o,n.name,()=>E(g(),o.slug,n.id))}}]:[]}const a=u.specialCfg?.[o.kind];return a?[{id:"toggle",label:i(a.enabled?"automation.ux.pause":"automation.ux.enable"),run(){f(()=>q(g(),{[o.kind]:{...a,enabled:!a.enabled}}))}}]:[]}};function G(){M.setState(t=>({listSources:[...t.listSources.filter(o=>!(o.pluginId==="automation"&&o.item.id==="rules")),{pluginId:"automation",item:T}]}))}export{Z as A,T as a,v as d,z as i,G as r,J as s};
@@ -1 +0,0 @@
1
- import{j as o,J as I,u as S,d as u,r as k}from"./index-CF4RV4mh.js";import{u as C,C as j}from"./index-DZfZTksa.js";import{fv as B}from"./appStore-Dg9WALEA.js";import"./client-BSKpsyAw.js";import"./ModelPill-BPlgovPo.js";import"./nativeDownload-D-f1_L2S.js";import"./ipc-DQOD2UKk.js";k({"chatbox.label":{zh:"输入内容",en:"Message"},"chatbox.submitFailed":{zh:"提交失败,内容已保留,请重试。",en:"Submission failed. Your draft is preserved; try again."}});function P({options:e,revision:d,input:c,isAlive:n}){const{t:l}=S(),[a,s]=u.useState(e.value||""),[i,m]=C(e.agentSlug),[x,v]=u.useState(!1),[g,f]=u.useState(!1),h=u.useRef(!1),r={modelId:e.modelId??i.modelId,thinkingLevel:e.thinkingLevel??i.thinkingLevel};u.useEffect(()=>{e.value!==void 0&&s(e.value)},[e.value,d]);const b=t=>{s(t.text),m(t),f(!1),e.value=t.text,e.modelId=t.modelId,e.thinkingLevel=t.thinkingLevel,e.onChange?.(t)};return o.jsx(j,{value:a,onValueChange:t=>b({...r,text:t}),selection:r,onSelectionChange:t=>b({...t,text:a}),inputRef:c,inputProps:{"aria-label":e.label||l("chatbox.label"),placeholder:e.placeholder},disabled:e.disabled||x,submitDisabled:!a.trim(),submitOn:e.submitOn,submitLabel:e.submitLabel||l("input.send"),afterInput:g?o.jsx("p",{role:"alert",children:l("chatbox.submitFailed")}):void 0,onSubmit:()=>{if(h.current||!a.trim()||!n())return;h.current=!0,v(!0),f(!1);const t={...r,text:a};Promise.resolve().then(()=>e.onSubmit(t)).then(L=>{n()&&L&&e.value===t.text&&b({modelId:e.modelId??r.modelId,thinkingLevel:e.thinkingLevel??r.thinkingLevel,text:""})}).catch(()=>{n()&&f(!0)}).finally(()=>{h.current=!1,n()&&v(!1)})}})}function H(e,d){const c={...d},n={current:null};let l=!0,a=0,s=()=>{};const i=()=>{s=B(e,o.jsx(I,{children:o.jsx(P,{options:c,revision:a++,input:n,isAlive:()=>l})}))};return i(),{update(m){l&&(Object.assign(c,m),i())},focus(){l&&n.current?.focus()},dispose(){l&&(l=!1,s())}}}export{H as mountPluginChatBox};
@@ -1 +0,0 @@
1
- import{t as f,j as m,aY as h,cl as g,bD as x,a_ as b,cm as v,a$ as y,aH as S,d as P,r as k,aD as E}from"./index-CF4RV4mh.js";import{D as j}from"./DashboardGridView-DXqe0vPd.js";import{qr as w,fs as D,fv as R,eR as F,fq as _}from"./appStore-Dg9WALEA.js";import"./UnifiedPage-CKNtVD_n.js";import"./MarkdownBlock-DIjYEhTK.js";import"./index-BCubCwdT.js";import"./linkFollow-C0_3k_PC.js";import"./mdMarks-Bq7Hl-4C.js";import"./emoji-DGaxpCIu.js";import"./listFold-BsOVn9UZ.js";import"./pageChrome-C9_azUYW.js";import"./upload-BbeAsMuD.js";import"./client-BSKpsyAw.js";import"./SketchCard-D87GADyG.js";import"./nativeDownload-D-f1_L2S.js";import"./Chrome-CwFiDmre.js";import"./minus-Cyv1YzOU.js";import"./canvasPrefs-BeG4oEgP.js";import"./hand-Crrw-nSn.js";import"./sticky-note-BIuPUSOU.js";import"./type-Cqoabh7H.js";import"./frame-_xBVYe3P.js";import"./foldActions-B7KByFdN.js";import"./ipc-DQOD2UKk.js";import"./lock-BnGHxjeE.js";import"./code-xml-BALV9u_c.js";import"./undo-2-tUKCv5Gs.js";import"./message-square-plus-BiAZAvcw.js";import"./FloatingToc-CENybkAA.js";import"./pageTree-CZH2J6cc.js";import"./pluginExt-Byb64tQO.js";import"./SidebarRow-BuSkKH5q.js";import"./list-tree-DkAJYEXd.js";import"./pen-tool-lkmBqliH.js";import"./pencil-Cvk91P_Z.js";import"./star-CwDiGyUW.js";import"./folder-plus-D1TDb7k9.js";import"./redo-2-DSi54z4e.js";import"./ellipsis-r1EcXsFq.js";import"./folder-DlxnPmWY.js";import"./layout-grid-B_pjJwz4.js";k({"plugindash.recipeInvalid":{zh:"仪表盘配方无效:{err}",en:"Invalid dashboard recipe: {err}"}});function C(t,r){const e=h(t),s=g(x(t)),o=[],i={};for(const a of s)a.id&&(o.push(a.id),i[a.id]={id:a.id,type:"markdown",content:a.content});const p=new Date().toISOString();return{manifest:{schema:S,id:e.amadeus_page||"plugin-dashboard",title:r,createdAt:p,updatedAt:p,compiler:{version:y},root:v(e.amadeus_layout),blocks:Object.fromEntries(o.map(a=>[a,{type:"markdown"}])),fmExtra:b(t)},blocks:i}}function $({scope:t,dashPath:r,locked:e}){const[s,o]=P.useState({dashPath:r,locked:e}),i={id:t,type:"dashboard",loc:"main",params:s,setTitle:()=>{},setParams:p=>o(p),close:()=>{}};return m.jsx("div",{className:"amadeus-root am-app tangu-lovable",style:{height:"100%"},children:m.jsx(j,{leaf:i,params:s})})}let A=0;function Pt(t,r,e){const s=w(e.recipe,{existingFileText:e.layoutText||void 0,pageId:`plugin-dash-${t}`});if(!s.ok)return r.textContent=f("plugindash.recipeInvalid",{err:s.error}),{dispose:()=>{r.replaceChildren()},scope:""};const o=`plugin:${t}:dashboard:${++A}`,i=`plugin:${t}/overview.dashboard.md`,p=D(o,{sink:(I,l,u)=>{e.onLayout?.(E(l,u))}}),{manifest:n,blocks:a}=C(s.text,t);p.setState({activePage:i,pendingPage:null,manifest:n,blocks:a,status:"ready",error:null}),r.style.height="100%",r.style.overflow="hidden";const c=R(r,m.jsx(F.Provider,{value:o,children:m.jsx($,{scope:o,dashPath:i,locked:e.locked!==!1})}));let d=!1;return{scope:o,dispose:()=>{d||(d=!0,c(),_(o))}}}export{Pt as mountPluginDashboard,C as pageStateFromText};
@@ -1 +0,0 @@
1
- import{z as c}from"./appStore-Dg9WALEA.js";const e=[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]],r=c("ellipsis",e);export{r as E};
@@ -1 +0,0 @@
1
- import{j as a}from"./index-CF4RV4mh.js";import{fv as c}from"./appStore-Dg9WALEA.js";import{F as f}from"./FloatingToc-CENybkAA.js";import"./nativeDownload-D-f1_L2S.js";import"./ipc-DQOD2UKk.js";import"./client-BSKpsyAw.js";function R(t,e){const o=document.createElement("div");o.className="lcl-ftoc-mount-layer";const m=t.style.position,r=getComputedStyle(t).position==="static";r&&(t.style.position="relative"),t.appendChild(o);let n=0,i=!1,s=()=>{};const l=()=>{s=c(o,a.jsx(f,{scrollContainer:e.scrollContainer,contentRoot:e.contentRoot??e.scrollContainer,selector:e.selector,itemFromElement:e.itemFromElement,label:e.label,minItems:e.minItems,hideBelow:e.hideBelow,topOffset:e.topOffset,side:e.side,scanTrigger:n}))};return l(),{refresh:()=>{i||(n++,l())},dispose:()=>{i||(i=!0,s(),o.remove(),r&&t.style.position==="relative"&&(t.style.position=m))}}}export{R as mountPluginFloatingToc};
@@ -1 +0,0 @@
1
- import{z as a}from"./appStore-Dg9WALEA.js";const o=[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]],c=a("book-open",o);const e=[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]],n=a("folder",e);export{c as B,n as F};
@@ -1 +0,0 @@
1
- import{z as e}from"./appStore-Dg9WALEA.js";const y=[["line",{x1:"22",x2:"2",y1:"6",y2:"6",key:"15w7dq"}],["line",{x1:"22",x2:"2",y1:"18",y2:"18",key:"1ip48p"}],["line",{x1:"6",x2:"6",y1:"2",y2:"22",key:"a2lnyx"}],["line",{x1:"18",x2:"18",y1:"2",y2:"22",key:"8vb6jd"}]],n=e("frame",y);export{n as F};
@@ -1 +0,0 @@
1
- import{d as w}from"./index-CF4RV4mh.js";import{mq as xe,mp as ve,ms as me,mt as ke,a7 as q,my as re,qo as be,qp as ge,mr as we,qq as he,fo as ie}from"./appStore-Dg9WALEA.js";import{r as Ee}from"./Chrome-CwFiDmre.js";const A='button, a[href], input, select, textarea, [contenteditable="true"]',O=".amx-stage-hud, .amx-stage-minimap, .amx-stage-tools, .ctx-menu, .dash-add-menu, .dash-menu-scrim";function Me(Le,_,P,B){const[oe,se]=w.useState([]),[ce,le]=w.useState(null),[ue,X]=w.useState(null),[ae,Y]=w.useState(!1),v=w.useRef([]),h=w.useCallback(s=>{v.current=s,se(s)},[]),G=w.useRef(P);G.current=P;const R=w.useRef(B);R.current=B;const H=w.useRef(_);H.current=_,w.useEffect(()=>{if(!v.current.length)return;const s=P.boxes(),r=v.current.filter(m=>s.has(m));r.length!==v.current.length&&h(r)});const de=w.useCallback(s=>{if(!s)return()=>{};const r=()=>G.current,m=()=>H.current,S=()=>r().identity?.()??null,U=e=>{try{s.hasPointerCapture(e)&&s.releasePointerCapture(e)}catch{}};let n=null,N=null;const C=e=>{N=e,le(e)},p=new Map;let k=null,E=null;const I=e=>m().toStage(e.clientX,e.clientY),fe=()=>(q(s)||1)*m().vpRef.current.z,L=()=>{E&&(clearTimeout(E.timer),E=null)},M=()=>{n=null,C(null),X(null),Y(!1)},K=()=>{L();for(const e of p.keys())U(e);p.clear(),k=null,n&&U(n.id),M()},V=()=>{if(p.size<2)return null;const[[e,t],[o,i]]=[...p.entries()].slice(0,2),f=s.getBoundingClientRect(),b=q(s)||1;return{x:((t.x+i.x)/2-f.left)/b,y:((t.y+i.y)/2-f.top)/b,d:Math.max(1,Math.hypot(t.x-i.x,t.y-i.y)),ids:[e,o].sort((a,u)=>a-u).join(",")}},W=()=>{const e=V();if(!e)return;const t=m().vpRef.current;k={ids:e.ids,d:e.d,cx:e.x,cy:e.y,anchor:{x:(e.x-t.x)/t.z,y:(e.y-t.y)/t.z},z:t.z}},pe=()=>{const e=V();if(!e||!k)return;if(e.ids!==k.ids){W();return}const t=he(k.z*(e.d/k.d));m().setVp({z:t,x:e.x-k.anchor.x*t,y:e.y-k.anchor.y*t})},F=e=>{const t=e.target;if(t.closest?.(O))return;if(r().locked){p.clear(),k=null;const l=r().hitKey(t);if(l&&!r().isEditing?.(l)&&!t.closest?.(A)){e.preventDefault();try{s.setPointerCapture(e.pointerId)}catch{}}l||h([]);return}if(e.pointerType==="touch"&&p.set(e.pointerId,{x:e.clientX,y:e.clientY}),p.size>=2){L(),M(),W();return}if(e.button===2)return;const o=r().hitKey(t);if(o&&(r().isEditing?.(o)||t.closest?.(A)))return;const i=o?r().hitEdge?.(t)??null:null,f=!!r().locked,b=fe(),a=e.pointerType==="touch"?xe/b:ve;if(e.pointerType==="touch"){L();const l=I(e);E={t:Date.now(),x:e.clientX,y:e.clientY,id:e.pointerId,timer:window.setTimeout(()=>{E=null,M(),r().onContextMenu?.(o,{...l,clientX:e.clientX,clientY:e.clientY})},me)}}const u=()=>{try{s.setPointerCapture(e.pointerId)}catch{}};if(o&&!f&&i){const l=r().boxes().get(o);if(!l)return;e.preventDefault(),u(),h([o]),n={kind:"size",id:e.pointerId,who:S(),key:o,edge:i,b0:l,x0:e.clientX,y0:e.clientY,live:!1,slop:a};return}if(o&&!f){e.preventDefault(),u();const y=e.shiftKey||e.metaKey?v.current.includes(o)?v.current.filter(D=>D!==o):[...v.current,o]:v.current.includes(o)?v.current:[o];h(y);const x=r().boxes(),z=y.includes(o)?y:[o],g=new Map;for(const D of z){const ne=x.get(D);ne&&g.set(D,ne)}n={kind:"move",id:e.pointerId,who:S(),keys:[...g.keys()],base:g,x0:e.clientX,y0:e.clientY,live:!1,slop:a};return}if(o){e.preventDefault(),u();return}if(h([]),f)return;const c=e.pointerType==="touch"||e.button===1||e.altKey,d=m().vpRef.current;if(u(),c)n={kind:"pan",id:e.pointerId,who:S(),x0:e.clientX,y0:e.clientY,vx:d.x,vy:d.y,live:!1};else{const l=I(e);n={kind:"marquee",id:e.pointerId,who:S(),x0:e.clientX,y0:e.clientY,sx:l.x,sy:l.y,additive:e.shiftKey,base:[...v.current],live:!1}}s.focus({preventScroll:!0})},j=e=>{if(e.pointerType==="touch"&&p.has(e.pointerId)&&p.set(e.pointerId,{x:e.clientX,y:e.clientY}),E&&Math.hypot(e.clientX-E.x,e.clientY-E.y)>ke&&L(),p.size>=2){pe();return}if(!n||e.pointerId!==n.id)return;const t=e.clientX-n.x0,o=e.clientY-n.y0;if(n.kind==="pan"){const c=q(s)||1,d=m().vpRef.current;m().setVp({z:d.z,x:n.vx+t/c,y:n.vy+o/c}),n.live=!0;return}const{dx:i,dy:f}=m().toStageDelta(t,o);if(!n.live&&n.kind!=="marquee"&&Math.hypot(i,f)<n.slop)return;if(n.live||(n.live=!0,Y(!0),L()),n.kind==="move"){const c=new Map;for(const[d,l]of n.base)c.set(d,{...l,x:Math.round(l.x+i),y:Math.round(l.y+f)});C(r().constrain?.(c,{kind:"move"})??c);return}if(n.kind==="size"){const{minW:c,minH:d}=r(),l=re(n.b0,n.edge,i,f,!1,c,d),y=new Map([[n.key,l]]);C(r().constrain?.(y,{kind:"resize",key:n.key,edge:n.edge})??y);return}const b=m().toStage(e.clientX,e.clientY),a=be(n.sx,n.sy,b.x,b.y);X(a);const u=ge(a,r().boxes());h(n.additive?[...new Set([...n.base,...u])]:u)},ye=e=>{if(!n||e.pointerId!==n.id)return;const t=n;n=null,Y(!1),X(null);try{s.hasPointerCapture(e.pointerId)&&s.releasePointerCapture(e.pointerId)}catch{}if(t.kind==="pan"||t.kind==="marquee")return;if(!t.live){C(null);return}if(t.who!==S()){C(null);return}const o=new Map(N??[]);if(C(null),!o.size)return;let i=new Map(o);if(R.current&&t.kind==="move"){const a=t.keys[0],u=t.base.get(a),c=i.get(a);if(u&&c){const d=ie(c.x)-c.x,l=ie(c.y)-c.y;if(d||l)for(const[y,x]of i)i.set(y,{...x,x:x.x+d,y:x.y+l});i=r().constrain?.(i,{kind:"move"})??i}}else if(R.current&&t.kind==="size"){const a=i.get(t.key);if(a){const u=t.edge.includes("w"),c=t.edge.includes("e"),d=t.edge.includes("n"),l=t.edge.includes("s"),y=u?a.x-t.b0.x:c?a.x+a.w-(t.b0.x+t.b0.w):0,x=d?a.y-t.b0.y:l?a.y+a.h-(t.b0.y+t.b0.h):0,{minW:z,minH:g}=r();i=new Map([[t.key,re(t.b0,t.edge,y,x,!0,z,g)]]),i=r().constrain?.(i,{kind:"resize",key:t.key,edge:t.edge})??i}}let f=!1;if(t.kind==="move"&&r().repel!==!1){const a=r().boxes(),u=[];for(const[z,g]of a)i.has(z)||u.push(g);const c=t.keys[0],d=t.base.get(c),l=i.get(c),y=d&&l?{x:l.x-d.x,y:l.y-d.y}:{x:0,y:0},x=Ee([...i.values()],u,y,void 0,r().repelBounds);if(x.x||x.y){f=!0;for(const[z,g]of i)i.set(z,{...g,x:g.x+x.x,y:g.y+x.y});i=r().constrain?.(i,{kind:"move"})??i}}r().commit(i),[...i].some(([a,u])=>{const c=o.get(a);return!!c&&(c.x!==u.x||c.y!==u.y||c.w!==u.w||c.h!==u.h)})&&r().onSettle?.(o,i,f?"repel":"snap")},T=e=>{if(L(),e.pointerType==="touch"&&(p.delete(e.pointerId),p.size<2&&(k=null),p.size>=1)){M();return}ye(e)},Z=e=>{L(),e.pointerType==="touch"&&(p.delete(e.pointerId),p.size<2&&(k=null)),n&&e.pointerId===n.id&&M()},J=e=>document.elementFromPoint(e.clientX,e.clientY)??e.target,Q=e=>{const t=J(e);t.closest?.(O)||r().onDoubleClick?.(r().hitKey(t),I(e))},$=e=>{const t=J(e);if(t.closest?.(O))return;const o=r().hitKey(t);if(!r().onContextMenu)return;e.preventDefault();const i=I(e);r().onContextMenu?.(o,{...i,clientX:e.clientX,clientY:e.clientY})},ee=e=>{if(r().locked||e.target?.closest?.(A))return;const o=v.current;if(e.key==="Escape"){h([]);return}if((e.metaKey||e.ctrlKey)&&e.key.toLowerCase()==="a"){e.preventDefault(),h([...r().boxes().keys()]);return}if(!o.length)return;if(e.key==="Delete"||e.key==="Backspace"){e.preventDefault(),r().onDelete?.(o);return}if(e.key===" "&&o.length===1){e.preventDefault(),r().onEnterEdit?.(o[0]);return}const i=e.key==="ArrowLeft"?-1:e.key==="ArrowRight"?1:0,f=e.key==="ArrowUp"?-1:e.key==="ArrowDown"?1:0;if(!i&&!f)return;e.preventDefault();const b=we(R.current,e.shiftKey),a=r().boxes(),u=new Map;for(const c of o){const d=a.get(c);d&&u.set(c,{...d,x:d.x+i*b,y:d.y+f*b})}u.size&&r().commit(r().constrain?.(u,{kind:"move"})??u)},te=e=>{n&&e.pointerId===n.id&&T(e)};return s.addEventListener("pointerdown",F),s.addEventListener("pointermove",j),s.addEventListener("pointerup",T),s.addEventListener("pointercancel",Z),s.addEventListener("dblclick",Q),s.addEventListener("contextmenu",$),s.addEventListener("keydown",ee),window.addEventListener("pointerup",te,!0),window.addEventListener("blur",K),()=>{K(),s.removeEventListener("pointerdown",F),s.removeEventListener("pointermove",j),s.removeEventListener("pointerup",T),s.removeEventListener("pointercancel",Z),s.removeEventListener("dblclick",Q),s.removeEventListener("contextmenu",$),s.removeEventListener("keydown",ee),window.removeEventListener("pointerup",te,!0),window.removeEventListener("blur",K)}},[h]);return{sel:oe,setSel:h,live:ce,marquee:ue,busy:ae,bind:de}}export{Me as u};