@runeya/runeya 2.0.142 → 2.0.143

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 (94) hide show
  1. package/package.json +1 -1
  2. package/web/assets/{AgentScalarChatInterface.vue-uNy1P-l4.js → AgentScalarChatInterface.vue-B-SjOsdj.js} +1 -1
  3. package/web/assets/{AgentTerminalPage-CFnALyb1.js → AgentTerminalPage-JzC8DUgu.js} +1 -1
  4. package/web/assets/{AiChatModals-B6svb69W.js → AiChatModals-D1928AxG.js} +1 -1
  5. package/web/assets/AppLayout-8sBPr3od.css +1 -0
  6. package/web/assets/AppLayout-CVQIBYqg.js +1 -0
  7. package/web/assets/{AuditPage-BsSpX2TJ.js → AuditPage-BZIJ3_Kr.js} +1 -1
  8. package/web/assets/{CloudAccountPage-DabrwDsa.js → CloudAccountPage-DBv470sT.js} +1 -1
  9. package/web/assets/CloudMessagingPage-Cn3JhJsY.css +1 -0
  10. package/web/assets/CloudMessagingPage-qCI8-UDL.js +2 -0
  11. package/web/assets/{DashboardPage-DMByzpgW.js → DashboardPage-D0UZM0mr.js} +1 -1
  12. package/web/assets/{DirectoryPickerDialog-CDyk4Z_Q.js → DirectoryPickerDialog-B5DvDfQP.js} +1 -1
  13. package/web/assets/{EditorIcon-BGHxAlSR.js → EditorIcon-CypGLV6w.js} +1 -1
  14. package/web/assets/{EnvironmentForm-BlGWpU2_.js → EnvironmentForm-Bw8Djnqm.js} +1 -1
  15. package/web/assets/EnvironmentForm-CkKVSiT7.css +1 -0
  16. package/web/assets/EnvironmentFormPage-B59uiYtp.js +1 -0
  17. package/web/assets/EnvironmentFormPage-C1gS0BI_.css +1 -0
  18. package/web/assets/EnvironmentListPage-BKhq_xXN.css +1 -0
  19. package/web/assets/EnvironmentListPage-W9zLDZAg.js +1 -0
  20. package/web/assets/{FlagChip-CHio0TB3.js → FlagChip-R_T5qYpL.js} +1 -1
  21. package/web/assets/{KanbanBoardPage-C52zM-Zw.js → KanbanBoardPage-DwPqoJDJ.js} +3 -3
  22. package/web/assets/{KanbanListPage-BmNdd1aP.js → KanbanListPage-Bn9k8Rpc.js} +1 -1
  23. package/web/assets/{LaunchProjectPage-B5sXxaet.js → LaunchProjectPage-Dc7v1UjQ.js} +1 -1
  24. package/web/assets/{LaunchServicesPage-C1u6lV4l.js → LaunchServicesPage-CXUS9O3y.js} +1 -1
  25. package/web/assets/{LaunchShell-CeyVMzL2.js → LaunchShell-LonTJpb3.js} +1 -1
  26. package/web/assets/LogViewer-DkuqWYkQ.js +3 -0
  27. package/web/assets/{LogViewer-DEsbVxax.css → LogViewer-OHdSLleq.css} +1 -1
  28. package/web/assets/{OrgKeyPrompt-NDfCQ-In.js → OrgKeyPrompt-By1VjlSN.js} +1 -1
  29. package/web/assets/{ProcessControls-D23gTUiv.js → ProcessControls-C0skzKGL.js} +1 -1
  30. package/web/assets/{ProcessDetailPage-vHpK0Eer.js → ProcessDetailPage-BvPX6z_X.js} +1 -1
  31. package/web/assets/{ProcessMetrics-DtneQJzo.js → ProcessMetrics-Crlfkelj.js} +1 -1
  32. package/web/assets/{ProjectCreateDialog-2PZX7tq2.js → ProjectCreateDialog-C4o9u15L.js} +1 -1
  33. package/web/assets/{ProjectLocationGate-fMAxwT0y.js → ProjectLocationGate-BJ1CSQt0.js} +1 -1
  34. package/web/assets/{ProjectPublishDialog-BylWoa0n.js → ProjectPublishDialog-Cp-zXdGm.js} +1 -1
  35. package/web/assets/{RandomJobTestPage-DUclmkBw.js → RandomJobTestPage-DF4a1U13.js} +1 -1
  36. package/web/assets/{ScenarioEditorPage-DbEsfuZa.js → ScenarioEditorPage-Dl-gEkJI.js} +1 -1
  37. package/web/assets/{SendToChatDialog-DGuOMMrS.js → SendToChatDialog-Dg2SHkVD.js} +1 -1
  38. package/web/assets/{ServiceControlsBar-D6M8hYFk.js → ServiceControlsBar-q2VHWaxK.js} +1 -1
  39. package/web/assets/ServiceDetailPage-CJ8WaFod.js +2 -0
  40. package/web/assets/ServiceDetailPage-COdaCZ6r.css +1 -0
  41. package/web/assets/{ServiceFormPage-BgHSW1XX.js → ServiceFormPage-tT_n7WUy.js} +1 -1
  42. package/web/assets/{SettingsPage-CPFBr7QE.js → SettingsPage-CWakkv0V.js} +4 -4
  43. package/web/assets/{UnlockPage-B4VEN9LN.js → UnlockPage-BKAdMJkb.js} +1 -1
  44. package/web/assets/{VaultMigrationPage-9qDGbF9X.js → VaultMigrationPage-D9KUTTss.js} +1 -1
  45. package/web/assets/{VersionBadge-CqHdCnuJ.js → VersionBadge-moKP5bAv.js} +1 -1
  46. package/web/assets/{WikiPage-Pjosr1Vn.js → WikiPage-hLUndDxo.js} +1 -1
  47. package/web/assets/{WikiView-Bcxq2mQW.js → WikiView-rrjXRR72.js} +1 -1
  48. package/web/assets/{add-scalar-classes-BnJYThbS.js → add-scalar-classes-CBfRr8B2.js} +1 -1
  49. package/web/assets/{agent.store-DTyu_McS.js → agent.store-B3dVemmT.js} +1 -1
  50. package/web/assets/{auth-D_pCPFq7.js → auth-BCrvnP1U.js} +2 -2
  51. package/web/assets/{cloud-chat.store-CMklOB48.js → cloud-chat.store-Wg1poFem.js} +1 -1
  52. package/web/assets/{cloud-client-CX0pW7Kt.js → cloud-client-DQlUaoAw.js} +2 -2
  53. package/web/assets/{cloud-session-ja0-uvVS.js → cloud-session-DRUqcSGP.js} +2 -2
  54. package/web/assets/{editor.store-BAjGG8Ji.js → editor.store-SoH48ux2.js} +1 -1
  55. package/web/assets/i18n-BszFg0ko.js +1 -0
  56. package/web/assets/{index-eb4FRryj.css → index-C_JV7fYy.css} +1 -1
  57. package/web/assets/{index-DTrxphh3.js → index-D_x2s8Ut.js} +3 -3
  58. package/web/assets/{modal-Cvv2YgUo.js → modal-CpsVK_dA.js} +1 -1
  59. package/web/assets/{project-launch.store-C7xfTlMc.js → project-launch.store-C3fZeRGb.js} +1 -1
  60. package/web/assets/{project.store-ZpH_PaSy.js → project.store-BEk4fciH.js} +1 -1
  61. package/web/assets/{scenario.store-F78cizck.js → scenario.store-D-JrRiVO.js} +1 -1
  62. package/web/assets/{service.store-Dti7eDhR.js → service.store-B5uYZtyM.js} +1 -1
  63. package/web/assets/{settings-scope-CUuHrUpc.js → settings-scope-Blnwj3rR.js} +1 -1
  64. package/web/assets/{settings.store-De1-3IG8.js → settings.store-Bo3FYs1o.js} +1 -1
  65. package/web/assets/{src-Ds4DOFJs.js → src--GO-VSJ0.js} +2 -2
  66. package/web/assets/{src-DXlxwMXe.js → src-CAwAaB5j.js} +1 -1
  67. package/web/assets/src-CcvmgMAA.css +1 -0
  68. package/web/assets/{src-C0KK-qsF.js → src-DValZNJU.js} +2 -2
  69. package/web/assets/{src-DUVb4kUw.css → src-DuBXN1hu.css} +1 -1
  70. package/web/assets/{trpc-B5Yw_z6v.js → trpc-DbsE5GvQ.js} +3 -3
  71. package/web/assets/{useCloudOrg-QzX8ryg1.js → useCloudOrg-DygUBG1a.js} +1 -1
  72. package/web/assets/{useEnvVarAutocomplete-BdGgINv9.js → useEnvVarAutocomplete-DmYNOXgd.js} +1 -1
  73. package/web/assets/{useProjectCatalog-Cr90BND4.js → useProjectCatalog-D2mHB7dg.js} +1 -1
  74. package/web/assets/{useProjectCloudOrg-2wwByg2k.js → useProjectCloudOrg-avTCVold.js} +1 -1
  75. package/web/assets/{useServiceUrlHost-CxbARDeg.js → useServiceUrlHost-Q3fzGox3.js} +1 -1
  76. package/web/assets/vue-draggable-plus-BHsveB8w.css +1 -0
  77. package/web/assets/vue-draggable-plus-WgrMXXmE.js +1 -0
  78. package/web/index.html +20 -20
  79. package/web/assets/AppLayout-BKlJtfuQ.js +0 -1
  80. package/web/assets/AppLayout-C4sv2O-I.css +0 -1
  81. package/web/assets/CloudMessagingPage-BcEvuswL.css +0 -1
  82. package/web/assets/CloudMessagingPage-BtOJO5FB.js +0 -2
  83. package/web/assets/EnvironmentForm-CMwzl9kA.css +0 -1
  84. package/web/assets/EnvironmentFormPage-B-dpyO0_.js +0 -1
  85. package/web/assets/EnvironmentFormPage-CYv6PG5q.css +0 -1
  86. package/web/assets/EnvironmentListPage-BlaOiTVh.js +0 -1
  87. package/web/assets/EnvironmentListPage-fRWTY84U.css +0 -1
  88. package/web/assets/LogViewer-CAvRwSZu.js +0 -3
  89. package/web/assets/ServiceDetailPage-DOycCWLP.css +0 -1
  90. package/web/assets/ServiceDetailPage-G-A9ryZD.js +0 -2
  91. package/web/assets/i18n-CXvcscXP.js +0 -1
  92. package/web/assets/src-CR9xphzo.css +0 -1
  93. package/web/assets/vue-draggable-plus-2Opxvs3C.css +0 -1
  94. package/web/assets/vue-draggable-plus-pTwVkhnN.js +0 -1
@@ -1 +1 @@
1
- import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{A as t,C as n,N as r,P as i,_ as a,c as o,f as s,g as c,l,m as u,x as d}from"./reactivity.esm-bundler-BQ9SB2vv.js";import{H as f,Ht as p,J as m,g as h,tt as g}from"./runtime-core.esm-bundler-DujKY9QV.js";import{r as _}from"./trpc-B5Yw_z6v.js";var v=typeof window<`u`,y,b=e=>y=e,x=Symbol();function S(e){return e&&typeof e==`object`&&Object.prototype.toString.call(e)===`[object Object]`&&typeof e.toJSON!=`function`}var C=typeof window==`object`&&window.window===window?window:typeof self==`object`&&self.self===self?self:typeof globalThis==`object`&&globalThis.global===globalThis||typeof globalThis==`object`?globalThis:{HTMLElement:null};function w(e,{autoBom:t=!1}={}){return t&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob([``,e],{type:e.type}):e}function T(e,t,n){let r=new XMLHttpRequest;r.open(`GET`,e),r.responseType=`blob`,r.onload=function(){A(r.response,t,n)},r.onerror=function(){console.error(`could not download file`)},r.send()}function E(e){let t=new XMLHttpRequest;t.open(`HEAD`,e,!1);try{t.send()}catch{}return t.status>=200&&t.status<=299}function D(e){try{e.dispatchEvent(new MouseEvent(`click`))}catch{let t=new MouseEvent(`click`,{bubbles:!0,cancelable:!0,view:window,detail:0,screenX:80,screenY:20,clientX:80,clientY:20,ctrlKey:!1,altKey:!1,shiftKey:!1,metaKey:!1,button:0,relatedTarget:null});e.dispatchEvent(t)}}var O=typeof navigator==`object`?navigator:{userAgent:``},k=/Macintosh/.test(O.userAgent)&&/AppleWebKit/.test(O.userAgent)&&!/Safari/.test(O.userAgent),A=v?typeof HTMLAnchorElement<`u`&&`download`in HTMLAnchorElement.prototype&&!k?ee:`msSaveOrOpenBlob`in O?te:j:()=>{};function ee(e,t=`download`,n){let r=document.createElement(`a`);r.download=t,r.rel=`noopener`,typeof e==`string`?(r.href=e,r.origin===location.origin?D(r):E(r.href)?T(e,t,n):(r.target=`_blank`,D(r))):(r.href=URL.createObjectURL(e),setTimeout(function(){URL.revokeObjectURL(r.href)},4e4),setTimeout(function(){D(r)},0))}function te(e,t=`download`,n){if(typeof e==`string`){if(E(e))T(e,t,n);else{let t=document.createElement(`a`);t.href=e,t.target=`_blank`,setTimeout(function(){D(t)})}}else navigator.msSaveOrOpenBlob(w(e,n),t)}function j(e,t,n,r){if(r||=open(``,`_blank`),r&&(r.document.title=r.document.body.innerText=`downloading...`),typeof e==`string`)return T(e,t,n);let i=e.type===`application/octet-stream`,a=/constructor/i.test(String(C.HTMLElement))||`safari`in C,o=/CriOS\/[\d]+/.test(navigator.userAgent);if((o||i&&a||k)&&typeof FileReader<`u`){let t=new FileReader;t.onloadend=function(){let e=t.result;if(typeof e!=`string`)throw r=null,Error(`Wrong reader.result type`);e=o?e:e.replace(/^data:[^;]*;/,`data:attachment/file;`),r?r.location.href=e:location.assign(e),r=null},t.readAsDataURL(e)}else{let t=URL.createObjectURL(e);r?r.location.assign(t):location.href=t,r=null,setTimeout(function(){URL.revokeObjectURL(t)},4e4)}}var{assign:ne}=Object;function re(){let e=o(!0),t=e.run(()=>n({})),r=[],i=[],a=c({install(e){b(a),a._a=e,e.provide(x,a),e.config.globalProperties.$pinia=a,i.forEach(e=>r.push(e)),i=[]},use(e){return this._a?r.push(e):i.push(e),this},_p:r,_a:null,_e:e,_s:new Map,state:t});return a}var M=()=>{};function N(e,t,n,r=M){e.add(t);let i=()=>{e.delete(t)&&r()};return!n&&l()&&a(i),i}function P(e,...t){e.forEach(e=>{e(...t)})}var F=e=>e(),I=Symbol(),L=Symbol();function R(e,t){e instanceof Map&&t instanceof Map?t.forEach((t,n)=>e.set(n,t)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(let n in t){if(!Object.hasOwn(t,n))continue;let r=t[n],i=e[n];e[n]=S(i)&&S(r)&&Object.hasOwn(e,n)&&!u(r)&&!s(r)?R(i,r):r}return e}var ie=Symbol();function ae(e){return!e||typeof e!=`object`||!Object.hasOwn(e,ie)}var{assign:z}=Object;function B(e){return!!(u(e)&&e.effect)}function V(e,t,n,r){let{state:a,actions:o,getters:s}=t,l=n.state.value[e],u;function d(){return l||(n.state.value[e]=a?a():{}),z(i(n.state.value[e]),o,Object.keys(s||{}).reduce((t,r)=>(t[r]=c(h(()=>{b(n);let t=n._s.get(e);return s[r].call(t,t)})),t),{}))}return u=H(e,d,t,n,r,!0),u}function H(e,n,r={},i,a,c){let l,f=z({actions:{}},r),m={deep:!0},h,_,v=new Set,y=new Set,x,S=i.state.value[e];!c&&!S&&(i.state.value[e]={});let C;function w(t){let n;h=_=!1,typeof t==`function`?(t(i.state.value[e]),n={type:`patch function`,storeId:e,events:x}):(R(i.state.value[e],t),n={type:`patch object`,payload:t,storeId:e,events:x});let r=C=Symbol();g().then(()=>{C===r&&(h=!0)}),_=!0,P(v,n,i.state.value[e])}let T=c?function(){let{state:e}=r,t=e?e():{};this.$patch(e=>{z(e,t)})}:M;function E(){l.stop(),v.clear(),y.clear(),i._s.delete(e)}let D=(t,n=``)=>{if(I in t)return t[L]=n,t;let r=function(){b(i);let n=Array.from(arguments),a=new Set,o=new Set;function s(e){a.add(e)}function c(e){o.add(e)}P(y,{args:n,name:r[L],store:k,after:s,onError:c});let l;try{l=t.apply(this&&this.$id===e?this:k,n)}catch(e){throw P(o,e),e}return l instanceof Promise?l.then(e=>(P(a,e),e)).catch(e=>(P(o,e),Promise.reject(e))):(P(a,l),l)};return r[I]=!0,r[L]=n,r},O={_p:i,$id:e,$onAction:N.bind(null,y),$patch:w,$reset:T,$subscribe(t,n={}){if(v.has(t))return M;let r=N(v,t,n.detached,()=>a()),a=l.run(()=>p(()=>i.state.value[e],r=>{(n.flush===`sync`?_:h)&&t({storeId:e,type:`direct`,events:x},r)},z({},m,n)));return r},$dispose:E},k=d(O);i._s.set(e,k);let A=(i._a&&i._a.runWithContext||F)(()=>i._e.run(()=>(l=o()).run(()=>n({action:D}))));for(let t in A){let n=A[t];u(n)&&!B(n)||s(n)?c||(S&&ae(n)&&(u(n)?n.value=S[t]:((n instanceof Set||n instanceof Map)&&n.clear(),R(n,S[t]))),i.state.value[e][t]=n):typeof n==`function`&&(A[t]=D(n,t),f.actions[t]=n)}return z(k,A),z(t(k),A),Object.defineProperty(k,"$state",{get:()=>i.state.value[e],set:e=>{w(t=>{z(t,e)})}}),i._p.forEach(e=>{let t=l.run(()=>e({store:k,app:i._a,pinia:i,options:f}));z(k,t)}),S&&c&&r.hydrate&&r.hydrate(k.$state,S),h=!0,_=!0,k}function U(e,t,n){let r,i=typeof t==`function`;r=i?n:t;function a(n,a){let o=f();return n||=o?m(x,null):null,n&&b(n),n=y,n._s.has(e)||(i?H(e,t,r,n):V(e,r,n)),n._s.get(e)}return a.$id=e,a}function W(e){let n=t(e),i={};for(let t in n){let a=n[t];a?.effect?i[t]=h({get:()=>e[t],set(n){e[t]=n}}):(u(a)||s(a))&&(i[t]=r(e,t))}return i}function G(e,t){return e.id===t.id&&e.orgId===t.orgId}function K(e,t,n=5){return[t,...e.filter(e=>!G(e,t))].slice(0,n)}function q(e){if(!e)return[];try{let t=JSON.parse(e);return Array.isArray(t)?t.filter(e=>typeof e==`object`&&!!e&&typeof e.id==`string`).map(e=>({id:e.id,orgId:typeof e.orgId==`string`?e.orgId:null})).slice(0,5):[]}catch{return[]}}var J=e({useProjectLaunchStore:()=>$}),Y=`runeya:last-project`,X=`runeya:last-org`,Z=`runeya:launch-selection:`,Q=`runeya:recent-projects`,$=U(`launch`,()=>{let e=localStorage.getItem(Y),t=n(e),r=n(localStorage.getItem(X)),i=n(!!e),a=n(q(localStorage.getItem(Q)));function o(e){return`${Z}${e.orgId??`local`}:${e.id}`}function s(e){try{let t=localStorage.getItem(o(e))??localStorage.getItem(Z+e.id);if(!t)return[];let n=JSON.parse(t);return Array.isArray(n)?n.filter(e=>typeof e==`string`):[]}catch{return[]}}function c(e,t){localStorage.removeItem(Z+e.id),localStorage.setItem(o(e),JSON.stringify(t))}function l(e){_.project.setCurrent.mutate(e?{id:e.id,orgId:e.orgId}:null).catch(()=>void 0)}function u(e,n=null){t.value=e,localStorage.setItem(Y,e),r.value=n,n?localStorage.setItem(X,n):localStorage.removeItem(X),l({id:e,orgId:n}),a.value=K(a.value,{id:e,orgId:n}),localStorage.setItem(Q,JSON.stringify(a.value))}t.value&&l({id:t.value,orgId:r.value});function d(){return localStorage.getItem(Y)}function f(){i.value=!0}function p(){t.value=null,r.value=null,i.value=!1,localStorage.removeItem(Y),localStorage.removeItem(X),l(null)}function m(e,t){let n=s(e);n.includes(t)||(n.push(t),c(e,n))}function h(e,t){c(e,s(e).filter(e=>e!==t))}function g(){return t.value?{id:t.value,orgId:r.value}:null}return{activeProjectId:t,activeOrgId:r,launchCompleted:i,recentProjects:a,getSavedSelection:s,saveSelection:c,setActiveProject:u,getLastProjectId:d,completeLaunch:f,resetLaunch:p,addServiceToSelection:m,removeServiceFromSelection:h,activeRef:g}});export{W as a,U as i,$ as n,re as r,J as t};
1
+ import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{A as t,C as n,N as r,P as i,_ as a,c as o,f as s,g as c,l,m as u,x as d}from"./reactivity.esm-bundler-BQ9SB2vv.js";import{H as f,Ht as p,J as m,g as h,tt as g}from"./runtime-core.esm-bundler-DujKY9QV.js";import{r as _}from"./trpc-DbsE5GvQ.js";var v=typeof window<`u`,y,b=e=>y=e,x=Symbol();function S(e){return e&&typeof e==`object`&&Object.prototype.toString.call(e)===`[object Object]`&&typeof e.toJSON!=`function`}var C=typeof window==`object`&&window.window===window?window:typeof self==`object`&&self.self===self?self:typeof globalThis==`object`&&globalThis.global===globalThis||typeof globalThis==`object`?globalThis:{HTMLElement:null};function w(e,{autoBom:t=!1}={}){return t&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob([``,e],{type:e.type}):e}function T(e,t,n){let r=new XMLHttpRequest;r.open(`GET`,e),r.responseType=`blob`,r.onload=function(){A(r.response,t,n)},r.onerror=function(){console.error(`could not download file`)},r.send()}function E(e){let t=new XMLHttpRequest;t.open(`HEAD`,e,!1);try{t.send()}catch{}return t.status>=200&&t.status<=299}function D(e){try{e.dispatchEvent(new MouseEvent(`click`))}catch{let t=new MouseEvent(`click`,{bubbles:!0,cancelable:!0,view:window,detail:0,screenX:80,screenY:20,clientX:80,clientY:20,ctrlKey:!1,altKey:!1,shiftKey:!1,metaKey:!1,button:0,relatedTarget:null});e.dispatchEvent(t)}}var O=typeof navigator==`object`?navigator:{userAgent:``},k=/Macintosh/.test(O.userAgent)&&/AppleWebKit/.test(O.userAgent)&&!/Safari/.test(O.userAgent),A=v?typeof HTMLAnchorElement<`u`&&`download`in HTMLAnchorElement.prototype&&!k?ee:`msSaveOrOpenBlob`in O?te:j:()=>{};function ee(e,t=`download`,n){let r=document.createElement(`a`);r.download=t,r.rel=`noopener`,typeof e==`string`?(r.href=e,r.origin===location.origin?D(r):E(r.href)?T(e,t,n):(r.target=`_blank`,D(r))):(r.href=URL.createObjectURL(e),setTimeout(function(){URL.revokeObjectURL(r.href)},4e4),setTimeout(function(){D(r)},0))}function te(e,t=`download`,n){if(typeof e==`string`){if(E(e))T(e,t,n);else{let t=document.createElement(`a`);t.href=e,t.target=`_blank`,setTimeout(function(){D(t)})}}else navigator.msSaveOrOpenBlob(w(e,n),t)}function j(e,t,n,r){if(r||=open(``,`_blank`),r&&(r.document.title=r.document.body.innerText=`downloading...`),typeof e==`string`)return T(e,t,n);let i=e.type===`application/octet-stream`,a=/constructor/i.test(String(C.HTMLElement))||`safari`in C,o=/CriOS\/[\d]+/.test(navigator.userAgent);if((o||i&&a||k)&&typeof FileReader<`u`){let t=new FileReader;t.onloadend=function(){let e=t.result;if(typeof e!=`string`)throw r=null,Error(`Wrong reader.result type`);e=o?e:e.replace(/^data:[^;]*;/,`data:attachment/file;`),r?r.location.href=e:location.assign(e),r=null},t.readAsDataURL(e)}else{let t=URL.createObjectURL(e);r?r.location.assign(t):location.href=t,r=null,setTimeout(function(){URL.revokeObjectURL(t)},4e4)}}var{assign:ne}=Object;function re(){let e=o(!0),t=e.run(()=>n({})),r=[],i=[],a=c({install(e){b(a),a._a=e,e.provide(x,a),e.config.globalProperties.$pinia=a,i.forEach(e=>r.push(e)),i=[]},use(e){return this._a?r.push(e):i.push(e),this},_p:r,_a:null,_e:e,_s:new Map,state:t});return a}var M=()=>{};function N(e,t,n,r=M){e.add(t);let i=()=>{e.delete(t)&&r()};return!n&&l()&&a(i),i}function P(e,...t){e.forEach(e=>{e(...t)})}var F=e=>e(),I=Symbol(),L=Symbol();function R(e,t){e instanceof Map&&t instanceof Map?t.forEach((t,n)=>e.set(n,t)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(let n in t){if(!Object.hasOwn(t,n))continue;let r=t[n],i=e[n];e[n]=S(i)&&S(r)&&Object.hasOwn(e,n)&&!u(r)&&!s(r)?R(i,r):r}return e}var ie=Symbol();function ae(e){return!e||typeof e!=`object`||!Object.hasOwn(e,ie)}var{assign:z}=Object;function B(e){return!!(u(e)&&e.effect)}function V(e,t,n,r){let{state:a,actions:o,getters:s}=t,l=n.state.value[e],u;function d(){return l||(n.state.value[e]=a?a():{}),z(i(n.state.value[e]),o,Object.keys(s||{}).reduce((t,r)=>(t[r]=c(h(()=>{b(n);let t=n._s.get(e);return s[r].call(t,t)})),t),{}))}return u=H(e,d,t,n,r,!0),u}function H(e,n,r={},i,a,c){let l,f=z({actions:{}},r),m={deep:!0},h,_,v=new Set,y=new Set,x,S=i.state.value[e];!c&&!S&&(i.state.value[e]={});let C;function w(t){let n;h=_=!1,typeof t==`function`?(t(i.state.value[e]),n={type:`patch function`,storeId:e,events:x}):(R(i.state.value[e],t),n={type:`patch object`,payload:t,storeId:e,events:x});let r=C=Symbol();g().then(()=>{C===r&&(h=!0)}),_=!0,P(v,n,i.state.value[e])}let T=c?function(){let{state:e}=r,t=e?e():{};this.$patch(e=>{z(e,t)})}:M;function E(){l.stop(),v.clear(),y.clear(),i._s.delete(e)}let D=(t,n=``)=>{if(I in t)return t[L]=n,t;let r=function(){b(i);let n=Array.from(arguments),a=new Set,o=new Set;function s(e){a.add(e)}function c(e){o.add(e)}P(y,{args:n,name:r[L],store:k,after:s,onError:c});let l;try{l=t.apply(this&&this.$id===e?this:k,n)}catch(e){throw P(o,e),e}return l instanceof Promise?l.then(e=>(P(a,e),e)).catch(e=>(P(o,e),Promise.reject(e))):(P(a,l),l)};return r[I]=!0,r[L]=n,r},O={_p:i,$id:e,$onAction:N.bind(null,y),$patch:w,$reset:T,$subscribe(t,n={}){if(v.has(t))return M;let r=N(v,t,n.detached,()=>a()),a=l.run(()=>p(()=>i.state.value[e],r=>{(n.flush===`sync`?_:h)&&t({storeId:e,type:`direct`,events:x},r)},z({},m,n)));return r},$dispose:E},k=d(O);i._s.set(e,k);let A=(i._a&&i._a.runWithContext||F)(()=>i._e.run(()=>(l=o()).run(()=>n({action:D}))));for(let t in A){let n=A[t];u(n)&&!B(n)||s(n)?c||(S&&ae(n)&&(u(n)?n.value=S[t]:((n instanceof Set||n instanceof Map)&&n.clear(),R(n,S[t]))),i.state.value[e][t]=n):typeof n==`function`&&(A[t]=D(n,t),f.actions[t]=n)}return z(k,A),z(t(k),A),Object.defineProperty(k,"$state",{get:()=>i.state.value[e],set:e=>{w(t=>{z(t,e)})}}),i._p.forEach(e=>{let t=l.run(()=>e({store:k,app:i._a,pinia:i,options:f}));z(k,t)}),S&&c&&r.hydrate&&r.hydrate(k.$state,S),h=!0,_=!0,k}function U(e,t,n){let r,i=typeof t==`function`;r=i?n:t;function a(n,a){let o=f();return n||=o?m(x,null):null,n&&b(n),n=y,n._s.has(e)||(i?H(e,t,r,n):V(e,r,n)),n._s.get(e)}return a.$id=e,a}function W(e){let n=t(e),i={};for(let t in n){let a=n[t];a?.effect?i[t]=h({get:()=>e[t],set(n){e[t]=n}}):(u(a)||s(a))&&(i[t]=r(e,t))}return i}function G(e,t){return e.id===t.id&&e.orgId===t.orgId}function K(e,t,n=5){return[t,...e.filter(e=>!G(e,t))].slice(0,n)}function q(e){if(!e)return[];try{let t=JSON.parse(e);return Array.isArray(t)?t.filter(e=>typeof e==`object`&&!!e&&typeof e.id==`string`).map(e=>({id:e.id,orgId:typeof e.orgId==`string`?e.orgId:null})).slice(0,5):[]}catch{return[]}}var J=e({useProjectLaunchStore:()=>$}),Y=`runeya:last-project`,X=`runeya:last-org`,Z=`runeya:launch-selection:`,Q=`runeya:recent-projects`,$=U(`launch`,()=>{let e=localStorage.getItem(Y),t=n(e),r=n(localStorage.getItem(X)),i=n(!!e),a=n(q(localStorage.getItem(Q)));function o(e){return`${Z}${e.orgId??`local`}:${e.id}`}function s(e){try{let t=localStorage.getItem(o(e))??localStorage.getItem(Z+e.id);if(!t)return[];let n=JSON.parse(t);return Array.isArray(n)?n.filter(e=>typeof e==`string`):[]}catch{return[]}}function c(e,t){localStorage.removeItem(Z+e.id),localStorage.setItem(o(e),JSON.stringify(t))}function l(e){_.project.setCurrent.mutate(e?{id:e.id,orgId:e.orgId}:null).catch(()=>void 0)}function u(e,n=null){t.value=e,localStorage.setItem(Y,e),r.value=n,n?localStorage.setItem(X,n):localStorage.removeItem(X),l({id:e,orgId:n}),a.value=K(a.value,{id:e,orgId:n}),localStorage.setItem(Q,JSON.stringify(a.value))}t.value&&l({id:t.value,orgId:r.value});function d(){return localStorage.getItem(Y)}function f(){i.value=!0}function p(){t.value=null,r.value=null,i.value=!1,localStorage.removeItem(Y),localStorage.removeItem(X),l(null)}function m(e,t){let n=s(e);n.includes(t)||(n.push(t),c(e,n))}function h(e,t){c(e,s(e).filter(e=>e!==t))}function g(){return t.value?{id:t.value,orgId:r.value}:null}return{activeProjectId:t,activeOrgId:r,launchCompleted:i,recentProjects:a,getSavedSelection:s,saveSelection:c,setActiveProject:u,getLastProjectId:d,completeLaunch:f,resetLaunch:p,addServiceToSelection:m,removeServiceFromSelection:h,activeRef:g}});export{W as a,U as i,$ as n,re as r,J as t};
@@ -1 +1 @@
1
- import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{C as t}from"./reactivity.esm-bundler-BQ9SB2vv.js";import{g as n}from"./runtime-core.esm-bundler-DujKY9QV.js";import{i as r,n as i}from"./project-launch.store-C7xfTlMc.js";import{r as a}from"./trpc-B5Yw_z6v.js";import{n as o}from"./error-DpF7X5iu.js";var s=r(`environment`,()=>{let e=t([]),r=t(!1),o=t(null),s=n(()=>t=>e.value.find(e=>e.id===t)),c=n(()=>e.value.filter(e=>e.scope===`global`||!e.scope));async function l(t,n=!1){if(!(!n&&o.value===t&&e.value.length>0)){o.value=t,r.value=!0;try{let n=await a.environment.list.query({projectId:t,orgId:i().activeOrgId});e.value=n.map(e=>({...e}))}finally{r.value=!1}}}async function u(e){await a.environment.create.mutate({...e,orgId:i().activeOrgId}),o.value&&await l(o.value,!0)}async function d(e){await a.environment.update.mutate(e),o.value&&await l(o.value,!0)}async function f(e){await a.environment.delete.mutate({id:e}),o.value&&await l(o.value,!0)}async function p(e){return await a.environment.resolve.query({environmentId:e})}async function m(e,t,n){return await a.environment.keyUsages.query({projectId:e,orgId:i().activeOrgId,key:t,...n?{environmentId:n}:{}})}async function h(e,t){return await a.environment.setOverride.mutate({variableId:e,variable:t})}async function g(e){return await a.environment.removeOverride.mutate({variableId:e})}async function _(e,t,n,r){return await a.environment.fillVariable.mutate({environmentId:e,variableId:t,value:n,reason:r})}async function v(e){return await a.environment.missingVariables.query({environmentId:e})}async function y(){return await a.environment.getOverrides.query()}async function b(e,t,n){await a.environment.upsertVariable.mutate({environmentId:e,variableId:t,variable:n}),o.value&&await l(o.value,!0)}async function x(e,t){await a.environment.removeVariable.mutate({environmentId:e,variableId:t}),o.value&&await l(o.value,!0)}function S(t,n){return e.value.find(e=>e.scope===`service`&&e.reference===t&&e.activateOn===n)??null}function C(t){return e.value.filter(e=>e.scope===`service`&&e.reference===t)}return{environments:e,loading:r,currentProjectId:o,getById:s,globalEnvironments:c,fetchAll:l,create:u,update:d,deleteEnv:f,resolve:p,keyUsages:m,setOverride:h,removeOverride:g,getOverrides:y,missingVariables:v,fillVariable:_,findServiceEnvironment:S,findServiceEnvironments:C,upsertVariable:b,removeVariable:x}}),c=e({useProjectStore:()=>d});function l(e){let{id:t,name:n,description:r,serviceIds:i,environmentIds:a,activeEnvironmentId:o,orgId:s,groupOrder:c}=e;return{id:t,name:n,description:r,serviceIds:i,environmentIds:a,activeEnvironmentId:o,orgId:s,groupOrder:c??[]}}function u(e,t){return e.id===t.id?t.orgId===void 0||(e.orgId??null)===(t.orgId??null):!1}var d=r(`project`,()=>{let e=t([]),r=t(!1),c=t(null),d=n(()=>e.value.length),f=n(()=>t=>{let n=e.value.filter(e=>e.id===t);return n.length===1?n[0]:null}),p=n(()=>t=>e.value.find(e=>u(e,t))??null);function m(t,n){let r=e.value.findIndex(e=>u(e,t)),i=[...e.value];r>=0?i[r]=n:i.push(n),e.value=i}async function h(){r.value=!0,c.value=null;try{let t=await a.project.list.query();e.value=t.map(l)}catch(e){c.value=o(e)??`Failed to fetch projects`}finally{r.value=!1}}async function g(e){c.value=null;try{let t=l(await a.project.get.query({id:e.id,orgId:e.orgId}));return m(e,t),t}catch(e){return c.value=o(e)??`Failed to fetch project`,null}}async function _(t){c.value=null;try{let n=l(await a.project.create.mutate(t));return e.value=[...e.value,n],n}catch(e){return c.value=o(e)??`Failed to create project`,null}}async function v(t){c.value=null;let n=l(await a.project.importLocal.mutate({path:t}));return e.value.some(e=>e.id===n.id&&!e.orgId)||(e.value=[...e.value,n]),n}async function y(e,t){c.value=null;try{let n=l(await a.project.update.mutate({id:e.id,orgId:e.orgId,...t}));return m(e,n),n}catch(e){return c.value=o(e)??`Failed to update project`,null}}async function b(t,n){let r=e.value.findIndex(e=>u(e,t)),i=r>=0?e.value[r].groupOrder:void 0;if(r>=0){let t=[...e.value];t[r]={...t[r],groupOrder:n},e.value=t}try{let e=l(await a.project.update.mutate({id:t.id,orgId:t.orgId,groupOrder:n}));return m(t,e),e}catch(n){if(c.value=o(n)??`Failed to update group order`,r>=0&&i!==void 0){let n=[...e.value],r=n.findIndex(e=>u(e,t));r>=0&&(n[r]={...n[r],groupOrder:i}),e.value=n}return null}}async function x(t){c.value=null;try{return await a.project.delete.mutate({id:t.id,orgId:t.orgId}),e.value=e.value.filter(e=>!u(e,t)),!0}catch(e){return c.value=o(e)??`Failed to delete project`,!1}}async function S(e,t){c.value=null;try{let n=l(await a.project.addService.mutate({projectId:e.id,orgId:e.orgId,serviceId:t}));return m(e,n),await s().fetchAll(e.id,!0),n}catch(e){return c.value=o(e)??`Failed to add service to project`,null}}async function C(e,t){c.value=null;try{let n=l(await a.project.removeService.mutate({projectId:e.id,orgId:e.orgId,serviceId:t}));return m(e,n),n}catch(e){return c.value=o(e)??`Failed to remove service from project`,null}}async function w(e,t){c.value=null;try{let n=l(await a.project.setActiveEnvironment.mutate({projectId:e.id,orgId:e.orgId,environmentId:t}));return m(e,n),n}catch(e){return c.value=o(e)??`Failed to set active environment`,null}}let T=n(()=>{let t=i(),n=t.activeProjectId;if(n){let r=e.value.find(e=>u(e,{id:n,orgId:t.activeOrgId}))??e.value.find(e=>e.id===n);if(r)return r}return e.value[0]??null});return{projects:e,loading:r,error:c,projectCount:d,currentProject:T,currentProjectOrgId:n(()=>T.value?.orgId??null),getById:f,getByRef:p,fetchAll:h,fetchOne:g,create:_,importLocal:v,update:y,remove:x,addService:S,removeService:C,setActiveEnvironment:w,updateGroupOrder:b}});export{d as n,s as r,c as t};
1
+ import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{C as t}from"./reactivity.esm-bundler-BQ9SB2vv.js";import{g as n}from"./runtime-core.esm-bundler-DujKY9QV.js";import{i as r,n as i}from"./project-launch.store-C3fZeRGb.js";import{r as a}from"./trpc-DbsE5GvQ.js";import{n as o}from"./error-DpF7X5iu.js";var s=r(`environment`,()=>{let e=t([]),r=t(!1),o=t(null),s=n(()=>t=>e.value.find(e=>e.id===t)),c=n(()=>e.value.filter(e=>e.scope===`global`||!e.scope));async function l(t,n=!1){if(!(!n&&o.value===t&&e.value.length>0)){o.value=t,r.value=!0;try{let n=await a.environment.list.query({projectId:t,orgId:i().activeOrgId});e.value=n.map(e=>({...e}))}finally{r.value=!1}}}async function u(e){await a.environment.create.mutate({...e,orgId:i().activeOrgId}),o.value&&await l(o.value,!0)}async function d(e){await a.environment.update.mutate(e),o.value&&await l(o.value,!0)}async function f(e){await a.environment.delete.mutate({id:e}),o.value&&await l(o.value,!0)}async function p(e){return await a.environment.resolve.query({environmentId:e})}async function m(e,t,n){return await a.environment.keyUsages.query({projectId:e,orgId:i().activeOrgId,key:t,...n?{environmentId:n}:{}})}async function h(e,t){return await a.environment.setOverride.mutate({variableId:e,variable:t})}async function g(e){return await a.environment.removeOverride.mutate({variableId:e})}async function _(e,t,n,r){return await a.environment.fillVariable.mutate({environmentId:e,variableId:t,value:n,reason:r})}async function v(e){return await a.environment.missingVariables.query({environmentId:e})}async function y(){return await a.environment.getOverrides.query()}async function b(e,t,n){await a.environment.upsertVariable.mutate({environmentId:e,variableId:t,variable:n}),o.value&&await l(o.value,!0)}async function x(e,t){await a.environment.removeVariable.mutate({environmentId:e,variableId:t}),o.value&&await l(o.value,!0)}function S(t,n){return e.value.find(e=>e.scope===`service`&&e.reference===t&&e.activateOn===n)??null}function C(t){return e.value.filter(e=>e.scope===`service`&&e.reference===t)}return{environments:e,loading:r,currentProjectId:o,getById:s,globalEnvironments:c,fetchAll:l,create:u,update:d,deleteEnv:f,resolve:p,keyUsages:m,setOverride:h,removeOverride:g,getOverrides:y,missingVariables:v,fillVariable:_,findServiceEnvironment:S,findServiceEnvironments:C,upsertVariable:b,removeVariable:x}}),c=e({useProjectStore:()=>d});function l(e){let{id:t,name:n,description:r,serviceIds:i,environmentIds:a,activeEnvironmentId:o,orgId:s,groupOrder:c}=e;return{id:t,name:n,description:r,serviceIds:i,environmentIds:a,activeEnvironmentId:o,orgId:s,groupOrder:c??[]}}function u(e,t){return e.id===t.id?t.orgId===void 0||(e.orgId??null)===(t.orgId??null):!1}var d=r(`project`,()=>{let e=t([]),r=t(!1),c=t(null),d=n(()=>e.value.length),f=n(()=>t=>{let n=e.value.filter(e=>e.id===t);return n.length===1?n[0]:null}),p=n(()=>t=>e.value.find(e=>u(e,t))??null);function m(t,n){let r=e.value.findIndex(e=>u(e,t)),i=[...e.value];r>=0?i[r]=n:i.push(n),e.value=i}async function h(){r.value=!0,c.value=null;try{let t=await a.project.list.query();e.value=t.map(l)}catch(e){c.value=o(e)??`Failed to fetch projects`}finally{r.value=!1}}async function g(e){c.value=null;try{let t=l(await a.project.get.query({id:e.id,orgId:e.orgId}));return m(e,t),t}catch(e){return c.value=o(e)??`Failed to fetch project`,null}}async function _(t){c.value=null;try{let n=l(await a.project.create.mutate(t));return e.value=[...e.value,n],n}catch(e){return c.value=o(e)??`Failed to create project`,null}}async function v(t){c.value=null;let n=l(await a.project.importLocal.mutate({path:t}));return e.value.some(e=>e.id===n.id&&!e.orgId)||(e.value=[...e.value,n]),n}async function y(e,t){c.value=null;try{let n=l(await a.project.update.mutate({id:e.id,orgId:e.orgId,...t}));return m(e,n),n}catch(e){return c.value=o(e)??`Failed to update project`,null}}async function b(t,n){let r=e.value.findIndex(e=>u(e,t)),i=r>=0?e.value[r].groupOrder:void 0;if(r>=0){let t=[...e.value];t[r]={...t[r],groupOrder:n},e.value=t}try{let e=l(await a.project.update.mutate({id:t.id,orgId:t.orgId,groupOrder:n}));return m(t,e),e}catch(n){if(c.value=o(n)??`Failed to update group order`,r>=0&&i!==void 0){let n=[...e.value],r=n.findIndex(e=>u(e,t));r>=0&&(n[r]={...n[r],groupOrder:i}),e.value=n}return null}}async function x(t){c.value=null;try{return await a.project.delete.mutate({id:t.id,orgId:t.orgId}),e.value=e.value.filter(e=>!u(e,t)),!0}catch(e){return c.value=o(e)??`Failed to delete project`,!1}}async function S(e,t){c.value=null;try{let n=l(await a.project.addService.mutate({projectId:e.id,orgId:e.orgId,serviceId:t}));return m(e,n),await s().fetchAll(e.id,!0),n}catch(e){return c.value=o(e)??`Failed to add service to project`,null}}async function C(e,t){c.value=null;try{let n=l(await a.project.removeService.mutate({projectId:e.id,orgId:e.orgId,serviceId:t}));return m(e,n),n}catch(e){return c.value=o(e)??`Failed to remove service from project`,null}}async function w(e,t){c.value=null;try{let n=l(await a.project.setActiveEnvironment.mutate({projectId:e.id,orgId:e.orgId,environmentId:t}));return m(e,n),n}catch(e){return c.value=o(e)??`Failed to set active environment`,null}}let T=n(()=>{let t=i(),n=t.activeProjectId;if(n){let r=e.value.find(e=>u(e,{id:n,orgId:t.activeOrgId}))??e.value.find(e=>e.id===n);if(r)return r}return e.value[0]??null});return{projects:e,loading:r,error:c,projectCount:d,currentProject:T,currentProjectOrgId:n(()=>T.value?.orgId??null),getById:f,getByRef:p,fetchAll:h,fetchOne:g,create:_,importLocal:v,update:y,remove:x,addService:S,removeService:C,setActiveEnvironment:w,updateGroupOrder:b}});export{d as n,s as r,c as t};
@@ -1,4 +1,4 @@
1
- import{B as e,C as t,O as n}from"./reactivity.esm-bundler-BQ9SB2vv.js";import{$ as r,Ft as i,Ht as a,ct as o,g as s,k as c,mt as l,v as u,y as d}from"./runtime-core.esm-bundler-DujKY9QV.js";import{P as f,S as p,ft as m,mt as h}from"./src-Ds4DOFJs.js";import{i as g,n as _}from"./project-launch.store-C7xfTlMc.js";import{r as v}from"./i18n-CXvcscXP.js";import{n as y,r as b}from"./trpc-B5Yw_z6v.js";import{n as ee}from"./project.store-ZpH_PaSy.js";import{t as x}from"./use-polling-CEkhIY_9.js";import{t as S}from"./useAiChatDrawer-D_ofn8Eo.js";import{t as C}from"./settings-scope-CUuHrUpc.js";import{o as w}from"./dist-DoChtT9t.js";import{t as T}from"./service.store-Dti7eDhR.js";var E={"align-left":`align-left`,"angle-double-down":`chevrons-down`,"angle-double-left":`chevrons-left`,"angle-double-right":`chevrons-right`,"angle-down":`chevron-down`,"angle-left":`chevron-left`,"angle-right":`chevron-right`,"angle-up":`chevron-up`,"arrow-circle-up":`circle-arrow-up`,"arrow-down":`arrow-down`,"arrow-down-left":`arrow-down-left`,"arrow-left":`arrow-left`,"arrow-right":`arrow-right`,"arrow-right-arrow-left":`arrows-exchange`,"arrow-up":`arrow-up`,"arrow-up-right":`arrow-up-right`,"arrows-alt":`arrows-move`,asterisk:`asterisk`,ban:`ban`,bars:`menu-2`,bell:`bell`,"bell-slash":`bell-off`,bolt:`bolt`,book:`book`,bookmark:`bookmark`,box:`box`,building:`building`,calendar:`calendar`,"calendar-plus":`calendar-plus`,"chart-line":`chart-line`,check:`check`,"check-circle":`circle-check`,"check-square":`square-check`,"chevron-down":`chevron-down`,"chevron-left":`chevron-left`,"chevron-right":`chevron-right`,"chevron-up":`chevron-up`,circle:`circle`,"circle-fill":`circle-filled`,clock:`clock`,clone:`copy`,cloud:`cloud`,"cloud-off":`cloud-off`,"cloud-slash":`cloud-off`,"cloud-upload":`cloud-upload`,code:`code`,cog:`settings`,comment:`message`,comments:`messages`,copy:`copy`,crown:`crown`,database:`database`,desktop:`device-desktop`,directions:`directions`,download:`download`,"ellipsis-v":`dots-vertical`,envelope:`mail`,eraser:`eraser`,"exclamation-circle":`alert-circle`,"exclamation-triangle":`alert-triangle`,"external-link":`external-link`,eye:`eye`,"eye-slash":`eye-off`,file:`file`,"file-check":`file-check`,"file-edit":`file-pencil`,"file-plus":`file-plus`,filter:`filter`,"filter-slash":`filter-off`,folder:`folder`,"folder-open":`folder-open`,"folder-plus":`folder-plus`,github:`brand-github`,globe:`world`,hashtag:`hash`,heart:`heart`,"heart-fill":`heart-filled`,history:`history`,home:`home`,hourglass:`hourglass`,image:`photo`,inbox:`inbox`,"info-circle":`info-circle`,key:`key`,language:`language`,link:`link`,list:`list`,"list-check":`list-check`,lock:`lock`,"map-marker":`map-pin`,microchip:`cpu`,"microchip-ai":`brain`,minus:`minus`,moon:`moon`,palette:`palette`,paperclip:`paperclip`,pause:`player-pause`,"pause-circle":`player-pause`,pencil:`pencil`,play:`player-play`,"play-circle":`player-play`,plus:`plus`,"plus-circle":`circle-plus`,"power-off":`power`,"question-circle":`help-circle`,refresh:`refresh`,replay:`rotate`,save:`device-floppy`,search:`search`,send:`send`,server:`server`,shield:`shield`,"sign-in":`login`,"sign-out":`logout`,sitemap:`sitemap`,"sliders-h":`adjustments-horizontal`,"sort-alt":`arrows-sort`,sparkles:`sparkles`,spinner:`loader-2`,star:`star`,"star-fill":`star-filled`,stop:`player-stop`,"stop-circle":`player-stop`,stopwatch:`stopwatch`,sun:`sun`,sync:`refresh`,table:`table`,tag:`tag`,terminal:`terminal-2`,"th-large":`layout-grid`,thumbtack:`pin`,times:`x`,"times-circle":`circle-x`,trash:`trash`,undo:`arrow-back-up`,upload:`upload`,user:`user`,"user-plus":`user-plus`,users:`users`,"volume-off":`volume-off`,"volume-up":`volume`,"wave-pulse":`activity`,"window-maximize":`maximize`,"window-minimize":`minimize`};function D(e,t=`circle`){let n=(e??``).trim().split(/\s+/).pop()??``,r=n.replace(/^(ti|pi)-/,``);return n.startsWith(`pi-`)&&(r=E[r]??t),`ti ti-${r||t}`}var O=`runeya:ai-chat-debug`;function k(){try{return localStorage.getItem(O)===`1`}catch{return!1}}var A=m(c({__name:`AiProviderSelector`,props:r({storageKey:{},hideWhenSingle:{type:Boolean,default:!0},size:{default:`small`},placeholder:{},disabled:{type:Boolean},inputId:{}},{modelValue:{required:!0},modelModifiers:{},model:{default:null},modelModifiers:{}}),emits:r([`loaded`],[`update:modelValue`,`update:model`]),setup(n,{emit:r}){let a=n,c=i(n,`modelValue`),f=i(n,`model`),m=r,{t:g}=h(),_=t([]),v=t(!0),y=s(()=>_.value.reduce((e,t)=>e+t.items.length,0)),ee=s(()=>v.value?!0:a.hideWhenSingle?y.value>1:y.value>0);function x(e,t){return`${e}::${t??``}`}let S=s(()=>c.value?x(c.value,f.value):null);function w(e){let[t,n]=e?e.split(`::`):[null,``];c.value=t||null,f.value=n||null,a.storageKey&&(e?localStorage.setItem(a.storageKey,e):localStorage.removeItem(a.storageKey))}function T(e){return{label:e.model||g(`aiProviderSelector.defaultModel`),value:x(e.id,e.model??null),providerId:e.id,model:e.model??null}}return o(async()=>{let e=[];try{e=await b.settings.listAIProviders.query(C())}catch{e=[]}_.value=e.map(e=>({label:`${e.name} (${e.provider})`,providerId:e.id,items:[T(e)]}));let t=a.storageKey?localStorage.getItem(a.storageKey):null,n=S.value??t,r=(e.find(e=>e.active)??e[0])?.id??null,i=_.value.find(e=>e.providerId===r)?.items[0]?.value??null;w(n??i),m(`loaded`,e.length),await Promise.all(e.map(async e=>{let t=[];try{t=await b.chat.listModels.query({providerId:e.id,...C()})}catch{return}if(t.length===0)return;let n=_.value.find(t=>t.providerId===e.id);n&&(n.items=t.map(t=>({label:t,value:x(e.id,t),providerId:e.id,model:t})))})),S.value&&!_.value.some(e=>e.items.some(e=>e.value===S.value))&&w(_.value.find(e=>e.providerId===c.value)?.items[0]?.value??_.value[0]?.items[0]?.value??null),v.value=!1}),(t,r)=>ee.value?(l(),u(e(p),{key:0,"model-value":S.value,options:_.value,"option-group-label":`label`,"option-group-children":`items`,"option-label":`label`,"option-value":`value`,size:n.size,"input-id":n.inputId,disabled:n.disabled,loading:v.value,filter:y.value>8,placeholder:v.value?e(g)(`aiProviderSelector.loading`):n.placeholder??e(g)(`aiProviderSelector.placeholder`),title:e(g)(`aiProviderSelector.title`),class:`ai-provider-selector`,"onUpdate:modelValue":w},null,8,[`model-value`,`options`,`size`,`input-id`,`disabled`,`loading`,`filter`,`placeholder`,`title`])):d(``,!0)}}),[[`__scopeId`,`data-v-ea66f89f`]]);function j(e,t){let n=new Set(t),r=new Set(e),i=t.filter(e=>!r.has(e)),a=e.filter(e=>!n.has(e)),o=e.length===t.length&&e.every((e,n)=>e===t[n]);return{added:i,removed:a,unchanged:i.length===0&&a.length===0&&o}}function te(e,t){let n=j(e.pinned,t.pinned),r=new Set(t.pinned);for(let e of Object.values(t.sections))for(let t of e)r.add(t);let i=[],a=[],o=new Set([...Object.keys(e.sections),...Object.keys(t.sections)]);for(let n of o){let o=j(e.sections[n]??[],t.sections[n]??[]);o.unchanged||(i.push(n),a.push(...o.removed.filter(e=>!r.has(e))))}let s=n.removed.filter(e=>!r.has(e));return{unchanged:n.unchanged&&i.length===0,pinAdded:n.added,pinnedChanged:!n.unchanged,unpinnedToList:s,changedSections:i,sectionToList:a,removed:[...s,...a]}}function M(e,t,n){let r=new Map(t.pinned.map((e,t)=>[e,t])),i=new Map;for(let[e,n]of Object.entries(t.sections))n.forEach((t,n)=>i.set(t,{sectionId:e,rank:n}));let a=new Set(n);return e.map(e=>{let{pinOrder:t,sectionId:n,sectionOrder:o,...s}=e,c=r.get(e.id);if(c!==void 0)return{...s,pinOrder:c};let l=i.get(e.id);return l?{...s,sectionId:l.sectionId,sectionOrder:l.rank}:a.has(e.id)?s:e})}function ne(e){return e.runner===`claude-code`||e.runner===`codex`||!!e.isCli&&!e.providerId}var N=`runeya:ai-chat-model`,P=`runeya:ai-chat-effort`,F=`runeya:ai-chat-active-id`,I=`runeya:ai-chat-unread`,L=`runeya:ai-chat-provider-id`,R=`runeya:ai-chat-provider-model`,z=()=>new Date().toISOString();function re(e,n,r,i,a,o,s,c,l,u,d,p,m,h,g){let _=f(),y=null;function x(e){y=e}let C=t([]),w=t(!1),E=[`image/png`,`image/jpeg`,`image/webp`,`image/gif`];async function D(e){for(let t of e)await A(t)}async function O(e){await A(e)}async function A(e){let{t}=v.global;if(!E.includes(e.type)){_.add({severity:`error`,summary:t(`imageUpload.errorUnsupportedType`,{name:e.name}),life:5e3});return}if(e.size>0&&e.size>5242880){_.add({severity:`error`,summary:t(`imageUpload.errorTooLarge`,{name:e.name}),life:5e3});return}if(C.value.length>=5){_.add({severity:`error`,summary:t(`imageUpload.errorTooMany`),life:5e3});return}let n=r.value?.id;if(!n){_.add({severity:`error`,summary:t(`imageUpload.errorNetwork`,{name:e.name}),life:5e3});return}let i=URL.createObjectURL(e);w.value=!0;try{let r=new FormData;r.append(`image`,e);let a=await fetch(`/api/images/upload?conversationId=${encodeURIComponent(n)}`,{method:`POST`,body:r});if(!a.ok){URL.revokeObjectURL(i),_.add({severity:`error`,summary:t(`imageUpload.errorNetwork`,{name:e.name}),life:5e3});return}let o=await a.json();C.value.push({imageId:o.imageId,url:o.url,mimeType:o.mimeType,localPreviewUrl:i,fileName:e.name})}catch{URL.revokeObjectURL(i),_.add({severity:`error`,summary:t(`imageUpload.errorNetwork`,{name:e.name}),life:5e3})}finally{w.value=!1}}function j(e){let t=C.value.findIndex(t=>t.imageId===e);t!==-1&&(URL.revokeObjectURL(C.value[t].localPreviewUrl),C.value.splice(t,1))}function te(){for(let e of C.value)URL.revokeObjectURL(e.localPreviewUrl);C.value=[]}function M(){let e=n.value;e&&p(e)&&(a.get(e)?.unsubscribe(),d(e),e&&b.chat.stopSession.mutate({conversationId:e}).catch(()=>{}))}function ne(e){return e.slice(0,50).trim()+(e.length>50?`…`:``)}async function N(t,n){let{pendingContext:o,pendingPopulateContext:f}=S();if(!t.trim()&&C.value.length===0&&!o.value&&!f.value)return;!t.trim()&&o.value&&(t=`Voici le contexte ci-joint, aide-moi à avancer.`),!t.trim()&&f.value&&(t=f.value),r.value||await m();let h=r.value.id;await g(h);let _=e.value.find(e=>e.id===h);if(!_||r.value?.id!==h)return;if(_.messagesOmitted)throw Error(v.global.t(`aiChat.historyLoadFailed`));if(p(_.id))return;let{pendingContext:y,pendingDiffContext:x,pendingPopulateContext:w}=S(),E=y.value?.text??null,D=x.value,O=[D,E].filter(Boolean).join(`
1
+ import{B as e,C as t,O as n}from"./reactivity.esm-bundler-BQ9SB2vv.js";import{$ as r,Ft as i,Ht as a,ct as o,g as s,k as c,mt as l,v as u,y as d}from"./runtime-core.esm-bundler-DujKY9QV.js";import{P as f,S as p,ft as m,mt as h}from"./src--GO-VSJ0.js";import{i as g,n as _}from"./project-launch.store-C3fZeRGb.js";import{r as v}from"./i18n-BszFg0ko.js";import{n as y,r as b}from"./trpc-DbsE5GvQ.js";import{n as ee}from"./project.store-BEk4fciH.js";import{t as x}from"./use-polling-CEkhIY_9.js";import{t as S}from"./useAiChatDrawer-D_ofn8Eo.js";import{t as C}from"./settings-scope-Blnwj3rR.js";import{o as w}from"./dist-DoChtT9t.js";import{t as T}from"./service.store-B5uYZtyM.js";var E={"align-left":`align-left`,"angle-double-down":`chevrons-down`,"angle-double-left":`chevrons-left`,"angle-double-right":`chevrons-right`,"angle-down":`chevron-down`,"angle-left":`chevron-left`,"angle-right":`chevron-right`,"angle-up":`chevron-up`,"arrow-circle-up":`circle-arrow-up`,"arrow-down":`arrow-down`,"arrow-down-left":`arrow-down-left`,"arrow-left":`arrow-left`,"arrow-right":`arrow-right`,"arrow-right-arrow-left":`arrows-exchange`,"arrow-up":`arrow-up`,"arrow-up-right":`arrow-up-right`,"arrows-alt":`arrows-move`,asterisk:`asterisk`,ban:`ban`,bars:`menu-2`,bell:`bell`,"bell-slash":`bell-off`,bolt:`bolt`,book:`book`,bookmark:`bookmark`,box:`box`,building:`building`,calendar:`calendar`,"calendar-plus":`calendar-plus`,"chart-line":`chart-line`,check:`check`,"check-circle":`circle-check`,"check-square":`square-check`,"chevron-down":`chevron-down`,"chevron-left":`chevron-left`,"chevron-right":`chevron-right`,"chevron-up":`chevron-up`,circle:`circle`,"circle-fill":`circle-filled`,clock:`clock`,clone:`copy`,cloud:`cloud`,"cloud-off":`cloud-off`,"cloud-slash":`cloud-off`,"cloud-upload":`cloud-upload`,code:`code`,cog:`settings`,comment:`message`,comments:`messages`,copy:`copy`,crown:`crown`,database:`database`,desktop:`device-desktop`,directions:`directions`,download:`download`,"ellipsis-v":`dots-vertical`,envelope:`mail`,eraser:`eraser`,"exclamation-circle":`alert-circle`,"exclamation-triangle":`alert-triangle`,"external-link":`external-link`,eye:`eye`,"eye-slash":`eye-off`,file:`file`,"file-check":`file-check`,"file-edit":`file-pencil`,"file-plus":`file-plus`,filter:`filter`,"filter-slash":`filter-off`,folder:`folder`,"folder-open":`folder-open`,"folder-plus":`folder-plus`,github:`brand-github`,globe:`world`,hashtag:`hash`,heart:`heart`,"heart-fill":`heart-filled`,history:`history`,home:`home`,hourglass:`hourglass`,image:`photo`,inbox:`inbox`,"info-circle":`info-circle`,key:`key`,language:`language`,link:`link`,list:`list`,"list-check":`list-check`,lock:`lock`,"map-marker":`map-pin`,microchip:`cpu`,"microchip-ai":`brain`,minus:`minus`,moon:`moon`,palette:`palette`,paperclip:`paperclip`,pause:`player-pause`,"pause-circle":`player-pause`,pencil:`pencil`,play:`player-play`,"play-circle":`player-play`,plus:`plus`,"plus-circle":`circle-plus`,"power-off":`power`,"question-circle":`help-circle`,refresh:`refresh`,replay:`rotate`,save:`device-floppy`,search:`search`,send:`send`,server:`server`,shield:`shield`,"sign-in":`login`,"sign-out":`logout`,sitemap:`sitemap`,"sliders-h":`adjustments-horizontal`,"sort-alt":`arrows-sort`,sparkles:`sparkles`,spinner:`loader-2`,star:`star`,"star-fill":`star-filled`,stop:`player-stop`,"stop-circle":`player-stop`,stopwatch:`stopwatch`,sun:`sun`,sync:`refresh`,table:`table`,tag:`tag`,terminal:`terminal-2`,"th-large":`layout-grid`,thumbtack:`pin`,times:`x`,"times-circle":`circle-x`,trash:`trash`,undo:`arrow-back-up`,upload:`upload`,user:`user`,"user-plus":`user-plus`,users:`users`,"volume-off":`volume-off`,"volume-up":`volume`,"wave-pulse":`activity`,"window-maximize":`maximize`,"window-minimize":`minimize`};function D(e,t=`circle`){let n=(e??``).trim().split(/\s+/).pop()??``,r=n.replace(/^(ti|pi)-/,``);return n.startsWith(`pi-`)&&(r=E[r]??t),`ti ti-${r||t}`}var O=`runeya:ai-chat-debug`;function k(){try{return localStorage.getItem(O)===`1`}catch{return!1}}var A=m(c({__name:`AiProviderSelector`,props:r({storageKey:{},hideWhenSingle:{type:Boolean,default:!0},size:{default:`small`},placeholder:{},disabled:{type:Boolean},inputId:{}},{modelValue:{required:!0},modelModifiers:{},model:{default:null},modelModifiers:{}}),emits:r([`loaded`],[`update:modelValue`,`update:model`]),setup(n,{emit:r}){let a=n,c=i(n,`modelValue`),f=i(n,`model`),m=r,{t:g}=h(),_=t([]),v=t(!0),y=s(()=>_.value.reduce((e,t)=>e+t.items.length,0)),ee=s(()=>v.value?!0:a.hideWhenSingle?y.value>1:y.value>0);function x(e,t){return`${e}::${t??``}`}let S=s(()=>c.value?x(c.value,f.value):null);function w(e){let[t,n]=e?e.split(`::`):[null,``];c.value=t||null,f.value=n||null,a.storageKey&&(e?localStorage.setItem(a.storageKey,e):localStorage.removeItem(a.storageKey))}function T(e){return{label:e.model||g(`aiProviderSelector.defaultModel`),value:x(e.id,e.model??null),providerId:e.id,model:e.model??null}}return o(async()=>{let e=[];try{e=await b.settings.listAIProviders.query(C())}catch{e=[]}_.value=e.map(e=>({label:`${e.name} (${e.provider})`,providerId:e.id,items:[T(e)]}));let t=a.storageKey?localStorage.getItem(a.storageKey):null,n=S.value??t,r=(e.find(e=>e.active)??e[0])?.id??null,i=_.value.find(e=>e.providerId===r)?.items[0]?.value??null;w(n??i),m(`loaded`,e.length),await Promise.all(e.map(async e=>{let t=[];try{t=await b.chat.listModels.query({providerId:e.id,...C()})}catch{return}if(t.length===0)return;let n=_.value.find(t=>t.providerId===e.id);n&&(n.items=t.map(t=>({label:t,value:x(e.id,t),providerId:e.id,model:t})))})),S.value&&!_.value.some(e=>e.items.some(e=>e.value===S.value))&&w(_.value.find(e=>e.providerId===c.value)?.items[0]?.value??_.value[0]?.items[0]?.value??null),v.value=!1}),(t,r)=>ee.value?(l(),u(e(p),{key:0,"model-value":S.value,options:_.value,"option-group-label":`label`,"option-group-children":`items`,"option-label":`label`,"option-value":`value`,size:n.size,"input-id":n.inputId,disabled:n.disabled,loading:v.value,filter:y.value>8,placeholder:v.value?e(g)(`aiProviderSelector.loading`):n.placeholder??e(g)(`aiProviderSelector.placeholder`),title:e(g)(`aiProviderSelector.title`),class:`ai-provider-selector`,"onUpdate:modelValue":w},null,8,[`model-value`,`options`,`size`,`input-id`,`disabled`,`loading`,`filter`,`placeholder`,`title`])):d(``,!0)}}),[[`__scopeId`,`data-v-ea66f89f`]]);function j(e,t){let n=new Set(t),r=new Set(e),i=t.filter(e=>!r.has(e)),a=e.filter(e=>!n.has(e)),o=e.length===t.length&&e.every((e,n)=>e===t[n]);return{added:i,removed:a,unchanged:i.length===0&&a.length===0&&o}}function te(e,t){let n=j(e.pinned,t.pinned),r=new Set(t.pinned);for(let e of Object.values(t.sections))for(let t of e)r.add(t);let i=[],a=[],o=new Set([...Object.keys(e.sections),...Object.keys(t.sections)]);for(let n of o){let o=j(e.sections[n]??[],t.sections[n]??[]);o.unchanged||(i.push(n),a.push(...o.removed.filter(e=>!r.has(e))))}let s=n.removed.filter(e=>!r.has(e));return{unchanged:n.unchanged&&i.length===0,pinAdded:n.added,pinnedChanged:!n.unchanged,unpinnedToList:s,changedSections:i,sectionToList:a,removed:[...s,...a]}}function M(e,t,n){let r=new Map(t.pinned.map((e,t)=>[e,t])),i=new Map;for(let[e,n]of Object.entries(t.sections))n.forEach((t,n)=>i.set(t,{sectionId:e,rank:n}));let a=new Set(n);return e.map(e=>{let{pinOrder:t,sectionId:n,sectionOrder:o,...s}=e,c=r.get(e.id);if(c!==void 0)return{...s,pinOrder:c};let l=i.get(e.id);return l?{...s,sectionId:l.sectionId,sectionOrder:l.rank}:a.has(e.id)?s:e})}function ne(e){return e.runner===`claude-code`||e.runner===`codex`||!!e.isCli&&!e.providerId}var N=`runeya:ai-chat-model`,P=`runeya:ai-chat-effort`,F=`runeya:ai-chat-active-id`,I=`runeya:ai-chat-unread`,L=`runeya:ai-chat-provider-id`,R=`runeya:ai-chat-provider-model`,z=()=>new Date().toISOString();function re(e,n,r,i,a,o,s,c,l,u,d,p,m,h,g){let _=f(),y=null;function x(e){y=e}let C=t([]),w=t(!1),E=[`image/png`,`image/jpeg`,`image/webp`,`image/gif`];async function D(e){for(let t of e)await A(t)}async function O(e){await A(e)}async function A(e){let{t}=v.global;if(!E.includes(e.type)){_.add({severity:`error`,summary:t(`imageUpload.errorUnsupportedType`,{name:e.name}),life:5e3});return}if(e.size>0&&e.size>5242880){_.add({severity:`error`,summary:t(`imageUpload.errorTooLarge`,{name:e.name}),life:5e3});return}if(C.value.length>=5){_.add({severity:`error`,summary:t(`imageUpload.errorTooMany`),life:5e3});return}let n=r.value?.id;if(!n){_.add({severity:`error`,summary:t(`imageUpload.errorNetwork`,{name:e.name}),life:5e3});return}let i=URL.createObjectURL(e);w.value=!0;try{let r=new FormData;r.append(`image`,e);let a=await fetch(`/api/images/upload?conversationId=${encodeURIComponent(n)}`,{method:`POST`,body:r});if(!a.ok){URL.revokeObjectURL(i),_.add({severity:`error`,summary:t(`imageUpload.errorNetwork`,{name:e.name}),life:5e3});return}let o=await a.json();C.value.push({imageId:o.imageId,url:o.url,mimeType:o.mimeType,localPreviewUrl:i,fileName:e.name})}catch{URL.revokeObjectURL(i),_.add({severity:`error`,summary:t(`imageUpload.errorNetwork`,{name:e.name}),life:5e3})}finally{w.value=!1}}function j(e){let t=C.value.findIndex(t=>t.imageId===e);t!==-1&&(URL.revokeObjectURL(C.value[t].localPreviewUrl),C.value.splice(t,1))}function te(){for(let e of C.value)URL.revokeObjectURL(e.localPreviewUrl);C.value=[]}function M(){let e=n.value;e&&p(e)&&(a.get(e)?.unsubscribe(),d(e),e&&b.chat.stopSession.mutate({conversationId:e}).catch(()=>{}))}function ne(e){return e.slice(0,50).trim()+(e.length>50?`…`:``)}async function N(t,n){let{pendingContext:o,pendingPopulateContext:f}=S();if(!t.trim()&&C.value.length===0&&!o.value&&!f.value)return;!t.trim()&&o.value&&(t=`Voici le contexte ci-joint, aide-moi à avancer.`),!t.trim()&&f.value&&(t=f.value),r.value||await m();let h=r.value.id;await g(h);let _=e.value.find(e=>e.id===h);if(!_||r.value?.id!==h)return;if(_.messagesOmitted)throw Error(v.global.t(`aiChat.historyLoadFailed`));if(p(_.id))return;let{pendingContext:y,pendingDiffContext:x,pendingPopulateContext:w}=S(),E=y.value?.text??null,D=x.value,O=[D,E].filter(Boolean).join(`
2
2
 
3
3
  `)||void 0;y.value=null,w.value=null;let k=[...C.value],A=k.map(e=>({type:`image`,imageId:e.imageId,url:e.url,mimeType:e.mimeType,altText:e.fileName})),j=A.length>0?[...t.trim()?[{type:`text`,text:t.trim()}]:[],...A]:void 0,{contextServiceId:M}=S(),N=M.value?T().getById(M.value):null,P=[N?`[Contexte: l'utilisateur consulte actuellement le service "${N.name}" (id: ${N.id})]`:null,O].filter(Boolean).join(`
4
4
 
@@ -1 +1 @@
1
- import{C as e}from"./reactivity.esm-bundler-BQ9SB2vv.js";import{Ht as t,g as n}from"./runtime-core.esm-bundler-DujKY9QV.js";import{i as r,n as i}from"./project-launch.store-C7xfTlMc.js";import{r as a}from"./trpc-B5Yw_z6v.js";import{r as o}from"./project.store-ZpH_PaSy.js";import{n as s}from"./error-DpF7X5iu.js";var c=r(`service`,()=>{let r=e([]),c=e(!1),l=e(null),u=n(()=>r.value.length),d=n(()=>e=>r.value.find(t=>t.id===e)??null),f=n(()=>e=>r.value.filter(t=>e.includes(t.id))),p=e(void 0);t(()=>{let e=i();return`${e.activeOrgId??`local`}::${e.activeProjectId??``}`},()=>{p.value!==void 0&&m()});async function m(e){let t=i().activeRef(),n=e??(t?{projectId:t.id,orgId:t.orgId}:null);p.value=n,c.value=!0,l.value=null;try{r.value=await a.service.list.query(n??void 0)}catch(e){l.value=s(e)??`Failed to fetch services`}finally{c.value=!1}}async function h(e){l.value=null;try{let t=await a.service.get.query({id:e}),n=r.value.findIndex(t=>t.id===e);if(n>=0){let e=[...r.value];e[n]=t,r.value=e}return t}catch(e){return l.value=s(e)??`Failed to fetch service`,null}}async function g(e){l.value=null;try{let t=await a.service.create.mutate(e);return r.value=[...r.value,t],t}catch(e){return l.value=s(e)??`Failed to create service`,null}}async function _(e,t){l.value=null;try{let n=r.value.find(t=>t.id===e),i=await a.service.update.mutate({id:e,...t}),s=r.value.findIndex(t=>t.id===e);if(s>=0){let e=[...r.value];e[s]=i,r.value=e}if(t.name&&n&&t.name!==n.name){let e=o();e.currentProjectId&&await e.fetchAll(e.currentProjectId,!0)}return i}catch(e){return l.value=s(e)??`Failed to update service`,null}}async function v(e){l.value=null;try{return await a.service.delete.mutate({id:e}),r.value=r.value.filter(t=>t.id!==e),!0}catch(e){return l.value=s(e)??`Failed to delete service`,!1}}return{services:r,loading:c,error:l,serviceCount:u,getById:d,getByIds:f,fetchAll:m,fetchOne:h,create:g,update:_,remove:v}});export{c as t};
1
+ import{C as e}from"./reactivity.esm-bundler-BQ9SB2vv.js";import{Ht as t,g as n}from"./runtime-core.esm-bundler-DujKY9QV.js";import{i as r,n as i}from"./project-launch.store-C3fZeRGb.js";import{r as a}from"./trpc-DbsE5GvQ.js";import{r as o}from"./project.store-BEk4fciH.js";import{n as s}from"./error-DpF7X5iu.js";var c=r(`service`,()=>{let r=e([]),c=e(!1),l=e(null),u=n(()=>r.value.length),d=n(()=>e=>r.value.find(t=>t.id===e)??null),f=n(()=>e=>r.value.filter(t=>e.includes(t.id))),p=e(void 0);t(()=>{let e=i();return`${e.activeOrgId??`local`}::${e.activeProjectId??``}`},()=>{p.value!==void 0&&m()});async function m(e){let t=i().activeRef(),n=e??(t?{projectId:t.id,orgId:t.orgId}:null);p.value=n,c.value=!0,l.value=null;try{r.value=await a.service.list.query(n??void 0)}catch(e){l.value=s(e)??`Failed to fetch services`}finally{c.value=!1}}async function h(e){l.value=null;try{let t=await a.service.get.query({id:e}),n=r.value.findIndex(t=>t.id===e);if(n>=0){let e=[...r.value];e[n]=t,r.value=e}return t}catch(e){return l.value=s(e)??`Failed to fetch service`,null}}async function g(e){l.value=null;try{let t=await a.service.create.mutate(e);return r.value=[...r.value,t],t}catch(e){return l.value=s(e)??`Failed to create service`,null}}async function _(e,t){l.value=null;try{let n=r.value.find(t=>t.id===e),i=await a.service.update.mutate({id:e,...t}),s=r.value.findIndex(t=>t.id===e);if(s>=0){let e=[...r.value];e[s]=i,r.value=e}if(t.name&&n&&t.name!==n.name){let e=o();e.currentProjectId&&await e.fetchAll(e.currentProjectId,!0)}return i}catch(e){return l.value=s(e)??`Failed to update service`,null}}async function v(e){l.value=null;try{return await a.service.delete.mutate({id:e}),r.value=r.value.filter(t=>t.id!==e),!0}catch(e){return l.value=s(e)??`Failed to delete service`,!1}}return{services:r,loading:c,error:l,serviceCount:u,getById:d,getByIds:f,fetchAll:m,fetchOne:h,create:g,update:_,remove:v}});export{c as t};
@@ -1 +1 @@
1
- import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{n as t}from"./project.store-ZpH_PaSy.js";var n=e({settingsScope:()=>r});function r(){let e=t().currentProject;return e?{projectId:e.id,orgId:e.orgId??null}:{}}export{n,r as t};
1
+ import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{n as t}from"./project.store-BEk4fciH.js";var n=e({settingsScope:()=>r});function r(){let e=t().currentProject;return e?{projectId:e.id,orgId:e.orgId??null}:{}}export{n,r as t};
@@ -1 +1 @@
1
- import{C as e}from"./reactivity.esm-bundler-BQ9SB2vv.js";import{Ht as t,g as n}from"./runtime-core.esm-bundler-DujKY9QV.js";import{P as r}from"./src-Ds4DOFJs.js";import{i}from"./project-launch.store-C7xfTlMc.js";import{r as a}from"./trpc-B5Yw_z6v.js";import{n as o}from"./project.store-ZpH_PaSy.js";import{t as s}from"./settings-scope-CUuHrUpc.js";var c=i(`settings`,()=>{let i=r(),c=e([]),l=e(!1),u=e(!1),d=e(null),f=n(()=>[...c.value].sort((e,t)=>e.name.localeCompare(t.name))),p=n(()=>f.value.filter(e=>!e.builtin)),m=null,h,g=0;function _(){g+=1,v()}function v(){let e=s(),t=e.orgId??void 0;m&&h===t||(b(),h=t,m=a.settings.onParsersChanged.subscribe(e,{onData(e){c.value=e},onError(){m=null}}))}function y(){g=Math.max(0,g-1),g===0&&b()}function b(){m?.unsubscribe(),m=null,h=void 0}t(()=>o().currentProject?.orgId??null,()=>{g!==0&&(x(),v())});async function x(){l.value=!0;try{let e=await a.settings.listParsers.query(s());c.value=e}catch(e){let t=e instanceof Error?e.message:`Failed to fetch parsers`;i.add({severity:`error`,summary:`Error`,detail:t,life:3e3})}finally{l.value=!1}}async function S(e){l.value=!0;try{let t=await a.settings.createParser.mutate({name:e.name,description:e.description,code:e.code,enabled:e.enabled??!0,version:2,...s()});return c.value=[...c.value,t],u.value=!1,i.add({severity:`success`,summary:`Success`,detail:`Parser "${t.name}" created`,life:3e3}),t}catch(e){let t=e instanceof Error?e.message:`Failed to create parser`;throw i.add({severity:`error`,summary:`Error`,detail:t,life:3e3}),e}finally{l.value=!1}}async function C(e){l.value=!0;try{let t=await a.settings.updateParser.mutate({...e,...s()});return c.value=c.value.map(n=>n.id===e.id?t:n),d.value=null,i.add({severity:`success`,summary:`Success`,detail:`Parser "${t.name}" updated`,life:3e3}),t}catch(e){let t=e instanceof Error?e.message:`Failed to update parser`;throw i.add({severity:`error`,summary:`Error`,detail:t,life:3e3}),e}finally{l.value=!1}}async function w(e){l.value=!0;try{await a.settings.deleteParser.mutate({id:e,...s()}),c.value=c.value.filter(t=>t.id!==e),i.add({severity:`success`,summary:`Success`,detail:`Parser deleted`,life:3e3})}catch(e){let t=e instanceof Error?e.message:`Failed to delete parser`;throw i.add({severity:`error`,summary:`Error`,detail:t,life:3e3}),e}finally{l.value=!1}}async function T(e,t){l.value=!0;try{let n=await a.settings.testParser.mutate({code:e,sampleLogs:t});return i.add({severity:`info`,summary:`Validation`,detail:`Validated ${n.results.length} log(s)`,life:3e3}),n}catch(e){let t=e instanceof Error?e.message:`Validation failed`;throw i.add({severity:`error`,summary:`Validation Error`,detail:t,life:3e3}),e}finally{l.value=!1}}function E(){d.value=null,u.value=!0}function D(e){d.value={...e},u.value=!0}function O(){u.value=!1,d.value=null}return{parsers:c,sortedParsers:f,userParsers:p,loading:l,createDialogOpen:u,editingParser:d,fetchParsers:x,subscribeParsers:_,unsubscribeParsers:y,createParser:S,updateParser:C,deleteParser:w,testParser:T,openCreateDialog:E,openEditDialog:D,closeDialog:O}});export{c as t};
1
+ import{C as e}from"./reactivity.esm-bundler-BQ9SB2vv.js";import{Ht as t,g as n}from"./runtime-core.esm-bundler-DujKY9QV.js";import{P as r}from"./src--GO-VSJ0.js";import{i}from"./project-launch.store-C3fZeRGb.js";import{r as a}from"./trpc-DbsE5GvQ.js";import{n as o}from"./project.store-BEk4fciH.js";import{t as s}from"./settings-scope-Blnwj3rR.js";var c=i(`settings`,()=>{let i=r(),c=e([]),l=e(!1),u=e(!1),d=e(null),f=n(()=>[...c.value].sort((e,t)=>e.name.localeCompare(t.name))),p=n(()=>f.value.filter(e=>!e.builtin)),m=null,h,g=0;function _(){g+=1,v()}function v(){let e=s(),t=e.orgId??void 0;m&&h===t||(b(),h=t,m=a.settings.onParsersChanged.subscribe(e,{onData(e){c.value=e},onError(){m=null}}))}function y(){g=Math.max(0,g-1),g===0&&b()}function b(){m?.unsubscribe(),m=null,h=void 0}t(()=>o().currentProject?.orgId??null,()=>{g!==0&&(x(),v())});async function x(){l.value=!0;try{let e=await a.settings.listParsers.query(s());c.value=e}catch(e){let t=e instanceof Error?e.message:`Failed to fetch parsers`;i.add({severity:`error`,summary:`Error`,detail:t,life:3e3})}finally{l.value=!1}}async function S(e){l.value=!0;try{let t=await a.settings.createParser.mutate({name:e.name,description:e.description,code:e.code,enabled:e.enabled??!0,version:2,...s()});return c.value=[...c.value,t],u.value=!1,i.add({severity:`success`,summary:`Success`,detail:`Parser "${t.name}" created`,life:3e3}),t}catch(e){let t=e instanceof Error?e.message:`Failed to create parser`;throw i.add({severity:`error`,summary:`Error`,detail:t,life:3e3}),e}finally{l.value=!1}}async function C(e){l.value=!0;try{let t=await a.settings.updateParser.mutate({...e,...s()});return c.value=c.value.map(n=>n.id===e.id?t:n),d.value=null,i.add({severity:`success`,summary:`Success`,detail:`Parser "${t.name}" updated`,life:3e3}),t}catch(e){let t=e instanceof Error?e.message:`Failed to update parser`;throw i.add({severity:`error`,summary:`Error`,detail:t,life:3e3}),e}finally{l.value=!1}}async function w(e){l.value=!0;try{await a.settings.deleteParser.mutate({id:e,...s()}),c.value=c.value.filter(t=>t.id!==e),i.add({severity:`success`,summary:`Success`,detail:`Parser deleted`,life:3e3})}catch(e){let t=e instanceof Error?e.message:`Failed to delete parser`;throw i.add({severity:`error`,summary:`Error`,detail:t,life:3e3}),e}finally{l.value=!1}}async function T(e,t){l.value=!0;try{let n=await a.settings.testParser.mutate({code:e,sampleLogs:t});return i.add({severity:`info`,summary:`Validation`,detail:`Validated ${n.results.length} log(s)`,life:3e3}),n}catch(e){let t=e instanceof Error?e.message:`Validation failed`;throw i.add({severity:`error`,summary:`Validation Error`,detail:t,life:3e3}),e}finally{l.value=!1}}function E(){d.value=null,u.value=!0}function D(e){d.value={...e},u.value=!0}function O(){u.value=!1,d.value=null}return{parsers:c,sortedParsers:f,userParsers:p,loading:l,createDialogOpen:u,editingParser:d,fetchParsers:x,subscribeParsers:_,unsubscribeParsers:y,createParser:S,updateParser:C,deleteParser:w,testParser:T,openCreateDialog:E,openEditDialog:D,closeDialog:O}});export{c as t};