fuli-context 0.7.9 → 0.7.10-beta.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -2
- package/README.zh-CN.md +5 -3
- package/dist/web/assets/{AboutPage-Bp-Xz6yo.js → AboutPage-EtWPOSpz.js} +1 -1
- package/dist/web/assets/AboutPage-vYIBifKw.css +1 -0
- package/dist/web/assets/AgentHand-D5pOgVjJ.js +1 -0
- package/dist/web/assets/AgentHand-DvdNtJ3_.css +1 -0
- package/dist/web/assets/ConnectionsPage-DXkvMuyK.js +1 -0
- package/dist/web/assets/EmployeeRecruitDialog-B59X3rOi.css +1 -0
- package/dist/web/assets/EmployeeRecruitDialog-DONxXnd2.js +1 -0
- package/dist/web/assets/EmployeeWorkbenchPage-Cd4hd4bf.js +3 -0
- package/dist/web/assets/EmployeeWorkbenchPage-Cz7y-IFD.css +1 -0
- package/dist/web/assets/GrowthLoading-B_Hh0CRS.css +1 -0
- package/dist/web/assets/GrowthLoading-CCYPgE2f.js +1 -0
- package/dist/web/assets/KnowledgeEditDialog-BUqMfa0a.js +1 -0
- package/dist/web/assets/KnowledgeEditDialog-D9NuRHvp.css +1 -0
- package/dist/web/assets/KnowledgeInspector-DlVPDGP3.js +1 -0
- package/dist/web/assets/KnowledgeOrganizerPage-DhthZGKZ.js +1 -0
- package/dist/web/assets/KnowledgeOrganizerPage-h2iKvQpO.css +1 -0
- package/dist/web/assets/KnowledgePage-B6RDVxq-.js +1 -0
- package/dist/web/assets/KnowledgeWorkspace-mVFHQcxr.js +4 -0
- package/dist/web/assets/KnowledgeWorkspace-sb8OJ97I.css +1 -0
- package/dist/web/assets/NotFoundPage-CCeEdBy9.js +1 -0
- package/dist/web/assets/{OverviewPage-HwoSW-5z.js → OverviewPage-CnYWoZ3r.js} +1 -1
- package/dist/web/assets/PersonalProfilePage-Bz4zpTPC.js +1 -0
- package/dist/web/assets/PersonalProfilePage-yQRCBude.css +1 -0
- package/dist/web/assets/PersonalProjectsPage-2u1o6dvA.js +1 -0
- package/dist/web/assets/ProjectAgentsPage-8tci631q.js +11 -0
- package/dist/web/assets/ProjectAgentsPage-BN4k3ubu.css +1 -0
- package/dist/web/assets/ProjectScopePicker-BcPtIcv8.js +1 -0
- package/dist/web/assets/ProjectScopePicker-BvaGTMFx.css +1 -0
- package/dist/web/assets/PublicProjectsPage-BmBHfnud.js +1 -0
- package/dist/web/assets/ReviewPage-tvt2eqhw.js +1 -0
- package/dist/web/assets/{SearchableSelect-CFZNdtlY.js → SearchableSelect-BjBDBVuZ.js} +1 -1
- package/dist/web/assets/SettingsPage-Brl-SL33.css +1 -0
- package/dist/web/assets/SettingsPage-D9mNzBg-.js +1 -0
- package/dist/web/assets/SharedJefaReportPage-DXbj_JhO.css +1 -0
- package/dist/web/assets/SharedJefaReportPage-Dn_HBgaa.js +1 -0
- package/dist/web/assets/WritingTastePage-BCwimXC-.js +1 -0
- package/dist/web/assets/WritingTastePage-tb_pgude.css +1 -0
- package/dist/web/assets/bole-avatar-CVIr-bU_.webp +0 -0
- package/dist/web/assets/client-v8XKgQji.js +1 -0
- package/dist/web/assets/console-C9HS-zbd.js +1 -0
- package/dist/web/assets/conversation-launcher-settings-DMDCpf_N.js +1 -0
- package/dist/web/assets/employee-dialog-Bh5ccIbK.css +1 -0
- package/dist/web/assets/{i18n-DQH9D35M.js → i18n-BkJjUsz_.js} +3 -3
- package/dist/web/assets/{identity-JjZG6aS5.js → identity-74yGiMzO.js} +1 -1
- package/dist/web/assets/index-CwjxeHGk.css +1 -0
- package/dist/web/assets/index-Dioqmmvf.js +2 -0
- package/dist/web/assets/{model-zL97NJ-U.js → model-86tZgY0r.js} +1 -1
- package/dist/web/assets/shared-report-CLg82y4D.js +1 -0
- package/dist/web/assets/shared-report-ezeb8dW4.css +1 -0
- package/dist/web/assets/{useApi-CROJJdhE-CElDxEZI.js → useApi-CROJJdhE-BBUO_YEu.js} +1 -1
- package/dist/web/assets/useModalDialog-DrLhqtjR.js +1 -0
- package/dist/web/assets/{vue-router-F7MnkVlW.js → vue-router-Cw4QZxM1.js} +1 -1
- package/dist/web/index.html +14 -8
- package/docs/agent-interface-architecture.md +97 -0
- package/docs/employee-agents.md +58 -2
- package/graph-provider/fuli_graph/collaboration_context.py +2 -1
- package/graph-provider/fuli_graph/graph_models.py +5 -3
- package/graph-provider/fuli_graph/graph_query.py +4 -0
- package/graph-provider/fuli_graph/knowledge_search.py +2 -1
- package/graph-provider/fuli_graph/project_agent_access.py +2 -0
- package/graph-provider/fuli_graph/project_agent_attention_models.py +64 -0
- package/graph-provider/fuli_graph/project_agent_attention_routes.py +38 -0
- package/graph-provider/fuli_graph/project_agent_models.py +2 -0
- package/graph-provider/fuli_graph/project_agent_names.py +33 -0
- package/graph-provider/fuli_graph/project_agent_routes.py +12 -0
- package/graph-provider/fuli_graph/runtime.py +49 -20
- package/graph-provider/fuli_graph/store.py +2 -0
- package/graph-provider/fuli_graph/store_knowledge.py +4 -2
- package/graph-provider/fuli_graph/store_project_agent_attention.py +138 -0
- package/graph-provider/fuli_graph/store_project_agent_executor_learning.py +8 -0
- package/graph-provider/fuli_graph/store_project_agent_memory.py +40 -13
- package/graph-provider/fuli_graph/store_project_agent_task_recruitment.py +4 -1
- package/graph-provider/fuli_graph/store_project_agent_task_staffing.py +4 -1
- package/graph-provider/fuli_graph/store_project_agent_tasks.py +3 -0
- package/graph-provider/fuli_graph/store_project_agents.py +109 -0
- package/graph-provider/fuli_graph/store_task_contexts.py +1 -1
- package/graph-provider/fuli_graph/system_hr_identity.py +218 -0
- package/graph-provider/pyproject.toml +1 -1
- package/npm-shrinkwrap.json +52 -60
- package/package.json +2 -2
- package/skills/operating-fuli/SKILL.md +47 -0
- package/skills/operating-fuli/agents/openai.yaml +4 -0
- package/skills/operating-fuli/references/workflow-recipes.md +33 -0
- package/src/agent-tools/agent-attention-definitions.js +33 -0
- package/src/agent-tools/graph-definitions.js +8 -2
- package/src/agent-tools/graph-handlers.js +41 -0
- package/src/agent-tools/interface-catalog.js +101 -0
- package/src/agent-tools/interface-definitions.js +184 -0
- package/src/agent-tools/project-agent-definitions.js +1 -0
- package/src/cli/local-runtime-command.js +2 -1
- package/src/employees/catalog/bole.json +19 -0
- package/src/employees/install-package.js +3 -0
- package/src/employees/manifest.js +4 -0
- package/src/employees/package-registry.js +2 -0
- package/src/employees/recruitment.js +3 -0
- package/src/employees/service.js +10 -0
- package/src/external-knowledge/registry.js +24 -0
- package/src/external-knowledge/service.js +34 -1
- package/src/graphiti/agent-attention.js +26 -0
- package/src/graphiti/agent-knowledge-workflows.js +1 -0
- package/src/graphiti/project-agent-control-plane.js +21 -0
- package/src/graphiti/project-agent-mapping.js +6 -0
- package/src/graphiti/provider-client.js +13 -0
- package/src/graphiti/workspace-provider-client.js +9 -1
- package/src/http/agent-attention-api-router.js +28 -0
- package/src/http/error-mapping.js +3 -0
- package/src/http/graph-api-router.js +2 -0
- package/src/local-runtime/lifecycle.js +8 -2
- package/src/mcp/create-mcp-server.js +10 -1
- package/src/mcp/tool-annotations.js +31 -0
- package/src/mcp/tool-result.js +4 -4
- package/src/setup/agent-installation-status.js +2 -1
- package/src/setup/agents.js +4 -0
- package/src/setup/graph-runtime.js +4 -0
- package/src/setup/paths.js +2 -1
- package/src/setup/setup.js +4 -2
- package/src/setup/uninstall.js +4 -2
- package/src/system/resource-monitor.js +11 -1
- package/src/system/runtime-settings.js +7 -0
- package/dist/web/assets/AboutPage-DXh7Fwxt.css +0 -1
- package/dist/web/assets/ConnectionsPage-BMpkYeSE.js +0 -1
- package/dist/web/assets/EmployeeRecruitDialog-CnA7rOnB.css +0 -1
- package/dist/web/assets/EmployeeRecruitDialog-DbMVuLAI.js +0 -1
- package/dist/web/assets/EmployeeWorkbenchPage-BpkqpEs7.css +0 -1
- package/dist/web/assets/EmployeeWorkbenchPage-DtXSJOpq.js +0 -1
- package/dist/web/assets/KnowledgeEditDialog-DADXj_BT.js +0 -1
- package/dist/web/assets/KnowledgeEditDialog-iv-dgUeD.css +0 -1
- package/dist/web/assets/KnowledgeInspector-Xs4VCUg8.js +0 -1
- package/dist/web/assets/KnowledgeOrganizerPage-B_Ct4bB2.js +0 -1
- package/dist/web/assets/KnowledgeOrganizerPage-Cx1w1jb2.css +0 -1
- package/dist/web/assets/KnowledgePage-RG9Ttnrp.js +0 -1
- package/dist/web/assets/KnowledgeWorkspace-DI8YqTVI.js +0 -4
- package/dist/web/assets/PersonalProfilePage-B7T09bow.css +0 -1
- package/dist/web/assets/PersonalProfilePage-DCoG52SW.js +0 -1
- package/dist/web/assets/PersonalProjectsPage-CNb9mlbp.js +0 -1
- package/dist/web/assets/ProjectAgentsPage-C3vW6wmk.css +0 -1
- package/dist/web/assets/ProjectAgentsPage-zQ9BZW9v.js +0 -11
- package/dist/web/assets/PublicProjectsPage-BuLqkZ8g.js +0 -1
- package/dist/web/assets/ReviewPage-8A7N5pJs.js +0 -1
- package/dist/web/assets/SettingsPage-4ah1u906.js +0 -1
- package/dist/web/assets/SettingsPage-CwZp2ka4.css +0 -1
- package/dist/web/assets/WritingTastePage-DSgvTH6x.css +0 -1
- package/dist/web/assets/WritingTastePage-DztRj6MK.js +0 -1
- package/dist/web/assets/avatars-LvVKbDF7.js +0 -1
- package/dist/web/assets/console-B7dWYAoU.js +0 -1
- package/dist/web/assets/conversation-launcher-settings-D1xhW1S5.js +0 -1
- package/dist/web/assets/index-Ch1jmkyO.css +0 -1
- package/dist/web/assets/index-DRd-2Tii.js +0 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e}from"./i18n-BkJjUsz_.js";var t=class extends Error{status;detail;constructor(e,t,n=``){super(e),this.name=`ApiError`,this.status=t,this.detail=n}};async function n(n,r){let i=await fetch(n,r);if(!i.ok){let n=(await i.text()).trim();throw new t(i.status>=500?e(`common.errors.serviceUnavailable`,{status:i.status}):n||e(`common.errors.requestFailed`,{status:i.status}),i.status,n)}return i.json()}function r(e,t){return n(e,t)}function i(e,t){return n(e,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(t)})}function a(e,t){return n(e,{method:`PUT`,headers:{"content-type":`application/json`},body:JSON.stringify(t)})}function o(e,t){return n(e,{method:`PATCH`,headers:{"content-type":`application/json`},body:JSON.stringify(t)})}function s(e){return n(e,{method:`DELETE`})}export{a,i,r as n,o as r,s as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{$ as e,A as t,D as n,G as r,J as i,K as a,O as o,U as s,W as c,Y as l,Z as u,_ as d,a as f,et as p,q as m,tt as h,z as g}from"./i18n-BkJjUsz_.js";import{n as _,r as v}from"./client-v8XKgQji.js";var y=typeof window<`u`,b,x=e=>b=e,S=Symbol();function C(e){return e&&typeof e==`object`&&Object.prototype.toString.call(e)===`[object Object]`&&typeof e.toJSON!=`function`}var w=typeof window==`object`&&window.window===window?window:typeof self==`object`&&self.self===self?self:typeof global==`object`&&global.global===global?global:typeof globalThis==`object`?globalThis:{HTMLElement:null};function T(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 E(e,t,n){let r=new XMLHttpRequest;r.open(`GET`,e),r.responseType=`blob`,r.onload=function(){j(r.response,t,n)},r.onerror=function(){console.error(`could not download file`)},r.send()}function D(e){let t=new XMLHttpRequest;t.open(`HEAD`,e,!1);try{t.send()}catch{}return t.status>=200&&t.status<=299}function O(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 k=typeof navigator==`object`?navigator:{userAgent:``},A=/Macintosh/.test(k.userAgent)&&/AppleWebKit/.test(k.userAgent)&&!/Safari/.test(k.userAgent),j=y?typeof HTMLAnchorElement<`u`&&`download`in HTMLAnchorElement.prototype&&!A?M:`msSaveOrOpenBlob`in k?N:P:()=>{};function M(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?O(r):D(r.href)?E(e,t,n):(r.target=`_blank`,O(r))):(r.href=URL.createObjectURL(e),setTimeout(function(){URL.revokeObjectURL(r.href)},4e4),setTimeout(function(){O(r)},0))}function N(e,t=`download`,n){if(typeof e==`string`)if(D(e))E(e,t,n);else{let t=document.createElement(`a`);t.href=e,t.target=`_blank`,setTimeout(function(){O(t)})}else navigator.msSaveOrOpenBlob(T(e,n),t)}function P(e,t,n,r){if(r||=open(``,`_blank`),r&&(r.document.title=r.document.body.innerText=`downloading...`),typeof e==`string`)return E(e,t,n);let i=e.type===`application/octet-stream`,a=/constructor/i.test(String(w.HTMLElement))||`safari`in w,o=/CriOS\/[\d]+/.test(navigator.userAgent);if((o||i&&a||A)&&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:F}=Object;function I(){let e=s(!0),t=e.run(()=>u({})),n=[],r=[],i=m({install(e){x(i),i._a=e,e.provide(S,i),e.config.globalProperties.$pinia=i,r.forEach(e=>n.push(e)),r=[]},use(e){return this._a?n.push(e):r.push(e),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return i}var L=()=>{};function R(e,t,n,r=L){e.add(t);let a=()=>{e.delete(t)&&r()};return!n&&c()&&i(a),a}function z(e,...t){e.forEach(e=>{e(...t)})}var B=e=>e(),V=Symbol(),H=Symbol();function U(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 i=t[n],o=e[n];C(o)&&C(i)&&Object.hasOwn(e,n)&&!a(i)&&!r(i)?e[n]=U(o,i):e[n]=i}return e}var W=Symbol();function G(e){return!e||typeof e!=`object`||!Object.hasOwn(e,W)}var{assign:K}=Object;function q(e){return!!(a(e)&&e.effect)}function J(e,t,n,r){let{state:i,actions:a,getters:o}=t,s=n.state.value[e],c;function l(){return s||(n.state.value[e]=i?i():{}),K(h(n.state.value[e]),a,Object.keys(o||{}).reduce((t,r)=>(t[r]=m(d(()=>{x(n);let t=n._s.get(e);return o[r].call(t,t)})),t),{}))}return c=Y(e,l,t,n,r,!0),c}function Y(e,n,i={},o,c,u){let d,f=K({actions:{}},i),m={deep:!0},h,_,v=new Set,y=new Set,b=o.state.value[e];!u&&!b&&(o.state.value[e]={});let S;function C(n){let r;h=_=!1,typeof n==`function`?(n(o.state.value[e]),r={type:`patch function`,storeId:e,events:void 0}):(U(o.state.value[e],n),r={type:`patch object`,payload:n,storeId:e,events:void 0});let i=S=Symbol();t().then(()=>{S===i&&(h=!0)}),_=!0,z(v,r,o.state.value[e])}let w=u?function(){let{state:e}=i,t=e?e():{};this.$patch(e=>{K(e,t)})}:L;function T(){d.stop(),v.clear(),y.clear(),o._s.delete(e)}let E=(t,n=``)=>{if(V in t)return t[H]=n,t;let r=function(){x(o);let n=Array.from(arguments),i=new Set,a=new Set;function s(e){i.add(e)}function c(e){a.add(e)}z(y,{args:n,name:r[H],store:D,after:s,onError:c});let l;try{l=t.apply(this&&this.$id===e?this:D,n)}catch(e){throw z(a,e),e}return l instanceof Promise?l.then(e=>(z(i,e),e)).catch(e=>(z(a,e),Promise.reject(e))):(z(i,l),l)};return r[V]=!0,r[H]=n,r},D=l({_p:o,$id:e,$onAction:R.bind(null,y),$patch:C,$reset:w,$subscribe(t,n={}){if(v.has(t))return L;let r=R(v,t,n.detached,()=>i()),i=d.run(()=>g(()=>o.state.value[e],r=>{(n.flush===`sync`?_:h)&&t({storeId:e,type:`direct`,events:void 0},r)},K({},m,n)));return r},$dispose:T});o._s.set(e,D);let O=(o._a&&o._a.runWithContext||B)(()=>o._e.run(()=>(d=s()).run(()=>n({action:E}))));for(let t in O){let n=O[t];a(n)&&!q(n)||r(n)?u||(b&&G(n)&&(a(n)?n.value=b[t]:U(n,b[t])),o.state.value[e][t]=n):typeof n==`function`&&(O[t]=E(n,t),f.actions[t]=n)}return K(D,O),K(p(D),O),Object.defineProperty(D,"$state",{get:()=>o.state.value[e],set:e=>{C(t=>{K(t,e)})}}),o._p.forEach(e=>{let t=d.run(()=>e({store:D,app:o._a,pinia:o,options:f}));K(D,t)}),b&&u&&i.hydrate&&i.hydrate(D.$state,b),h=!0,_=!0,D}function X(e,t,r){let i,a=typeof t==`function`;i=a?r:t;function s(r,s){let c=n();return r||=c?o(S,null):null,r&&x(r),r=b,r._s.has(e)||(a?Y(e,t,i,r):J(e,i,r)),r._s.get(e)}return s.$id=e,s}var Z=X(`console`,()=>{let t=e(null),n=u(`idle`),r=u(!1),i=u(null),a=d(()=>{let e=t.value;return e?e.personalSpaces.find(({id:t})=>t===e.activePersonalSpaceId)??e.personalSpaces[0]??null:null}),o=d(()=>t.value?.mode===`connected`?`ready`:t.value?.mode===`degraded`?`error`:`disconnected`);async function s(){n.value=`loading`;try{t.value=await _(`/api/state`),n.value=`ready`}catch(e){n.value=`error`,h(e)}}async function c(e){try{let n=await v(`/api/capture-policy`,{enabled:e});t.value&&={...t.value,capturePolicy:n},m(f(e?`console.captureNotices.enabled`:`console.captureNotices.disabled`))}catch(e){h(e)}}async function l(e){try{let n=await v(`/api/agent-access-policy`,{enabled:e});t.value&&={...t.value,agentAccessPolicy:n},m(f(e?`console.agentAccess.enabledNotice`:`console.agentAccess.disabledNotice`))}catch(e){h(e)}}function p(e){return t.value?.capabilities?.[e]===!0}function m(e){i.value={message:e,tone:`success`}}function h(e){i.value={message:e instanceof Error?e.message:f(`common.errors.operationFailed`),tone:`error`}}function g(){i.value=null}return{state:t,runtimeStatus:n,settingsSaving:r,feedback:i,activePersonalSpace:a,publicRuntimeStatus:o,refresh:s,updateCapturePolicy:c,updateAgentAccessPolicy:l,hasCapability:p,notify:m,reportError:h,clearFeedback:g}});export{I as n,X as r,Z as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{$ as e,X as t,a as n}from"./i18n-BkJjUsz_.js";import{n as r}from"./client-v8XKgQji.js";var i=[`codex`,`claude`,`claude_code`,`cursor`,`gemini_cli`,`kiro`,`other`],a={codex:`Codex`,claude:`Claude`,claude_code:`Claude Code`,cursor:`Cursor`,gemini_cli:`Gemini CLI`,kiro:`Kiro`,other:`Other Agent`},o=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,s=/^[^\u0000-\u001f\u007f]{1,512}$/,c=new Set([`about`,`blob`,`data`,`file`,`javascript`]),l={codex:{enabled:!0,idFormat:`uuid`,appName:`Codex`,urlTemplate:`codex://threads/{id}`},claude:{enabled:!1,idFormat:`any`,appName:`Claude`,urlTemplate:``},claude_code:{enabled:!1,idFormat:`any`,appName:`Claude Code`,urlTemplate:``},cursor:{enabled:!1,idFormat:`any`,appName:`Cursor`,urlTemplate:``},gemini_cli:{enabled:!1,idFormat:`any`,appName:`Gemini CLI`,urlTemplate:``},kiro:{enabled:!1,idFormat:`any`,appName:`Kiro`,urlTemplate:``},other:{enabled:!1,idFormat:`any`,appName:`Other Agent`,urlTemplate:``}};function u(e={}){let t=e.source_application?.trim().toLocaleLowerCase().replaceAll(`-`,`_`).replaceAll(` `,`_`);if(t&&a[t])return t;let n=`${e.source_kind??``} ${e.source_description??``}`.toLocaleLowerCase();return n.includes(`claude`)?`claude_code`:n.includes(`cursor`)?`cursor`:n.includes(`gemini`)?`gemini_cli`:n.includes(`kiro`)?`kiro`:n.includes(`codex`)?`codex`:`other`}function d(e){let t=u(e);return t===`other`?n(`knowledge.domain.actors.otherAgent`):a[t]}function f(e){return a[e]}function p(e={},t=l){if(m(e,t)!==`available`)return null;let n=t[u(e)],r=e.session_id.trim();return n.urlTemplate.replace(`{id}`,encodeURIComponent(r))}function m(e={},t=l){let n=t[u(e)];return n?.enabled?_(e.session_id?.trim()??``,n.idFormat)?v(n.urlTemplate)?`available`:`invalid_template`:`invalid_id`:`disabled`}function h(e={},t=l){let n=t[u(e)];return n?.enabled&&n.appName.trim()?n.appName.trim():null}async function g(e={},t=globalThis.navigator?.clipboard){return!e.session_id||!t?.writeText?!1:(await t.writeText(e.session_id),!0)}function _(e,t){return s.test(e)?t===`any`||o.test(e):!1}function v(e){if(e.split(`{id}`).length!==2||/\s/.test(e))return!1;let t=/^([a-z][a-z0-9+.-]*):/i.exec(e)?.[1]?.toLocaleLowerCase();return!!t&&!c.has(t)}var y=e(w(l)),b=null;function x(){return C(),t(y)}function S(e){y.value=w(e)}function C({force:e=!1}={}){return!e&&b||(b=r(`/api/system/settings`).then(e=>{S(e.configured.conversationLaunchers)}).catch(()=>void 0)),b}function w(e){return Object.fromEntries(i.map(t=>[t,{...l[t],...e?.[t]??{}}]))}export{g as a,h as c,i,p as l,S as n,d as o,x as r,f as s,w as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.employee-dialog{color:#253c2f;box-sizing:border-box;background:#fff;border:1px solid #dce4df;border-radius:16px;width:min(640px,100vw - 32px);max-height:calc(100dvh - 32px);padding:0;overflow:hidden}.employee-dialog::backdrop{background:#0f1d1561}.employee-dialog-shell{flex-direction:column;min-height:0;max-height:calc(100dvh - 34px);display:flex}.employee-dialog header,.employee-dialog footer{flex:none;justify-content:space-between;align-items:center;gap:12px;padding:18px 24px;display:flex}.employee-dialog header{border-bottom:1px solid #e6ece8}.employee-dialog h2{margin:0;font-size:20px}.employee-dialog button{color:#36523f;min-height:40px;font:inherit;cursor:pointer;background:#fff;border:1px solid #d8e2dc;border-radius:8px;padding:8px 12px}.employee-dialog header>button{border:0;font-size:24px}.employee-dialog button:disabled{opacity:.5;cursor:default}.employee-dialog .primary{color:#fff;background:#315c43;border-color:#315c43}.employee-dialog footer{border-top:1px solid #e6ece8;justify-content:flex-end}.employee-dialog-body{overscroll-behavior:contain;flex-direction:column;gap:18px;min-height:0;padding:20px 24px;display:flex;overflow-y:auto}.employee-dialog-body>label{color:#526659;flex-direction:column;gap:8px;font-size:13px;display:flex}.employee-dialog-body input:not([type=checkbox]),.employee-dialog-body select,.employee-dialog-body textarea{width:100%;min-width:0;min-height:40px;font:inherit;color:#253c2f;box-sizing:border-box;background:#fff;border:1px solid #cddbd2;border-radius:8px;padding:9px 11px}.employee-dialog-body textarea{resize:vertical}.employee-dialog :is(button,input,textarea,select,a):focus-visible{outline-offset:2px;outline:2px solid #356448}.employee-dialog-error{color:#903c30}.employee-dialog-body p{overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.6}.employee-task-status{color:#526659}@media (width<=640px){.employee-dialog header,.employee-dialog footer,.employee-dialog-body{padding:16px}}
|