@redocly/replay 0.28.0-next.4 → 0.28.0-next.6
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/dist/{replay-AiChatProvider-BIplPHOS.js → replay-AiChatProvider-Bj2P_hdU.js} +371 -369
- package/dist/replay-AiChatProvider-GeumgtIo.js +6 -0
- package/dist/{replay-AiChatSqliteDBStorage-Bay95FHW.js → replay-AiChatSqliteDBStorage-0M2Ejnzu.js} +1 -1
- package/dist/{replay-AiChatSqliteDBStorage-C-rkQ3jG.js → replay-AiChatSqliteDBStorage-BWJl1qdO.js} +1 -1
- package/dist/{replay-AiPanel-DU5aVA3q.js → replay-AiPanel-DfOpKMDQ.js} +709 -712
- package/dist/replay-AiPanel-ON_QfwBN.js +742 -0
- package/dist/replay-FileWatcher-04GlEkra.js +360 -0
- package/dist/replay-FileWatcher-B-T0jz_R.js +1 -0
- package/dist/{replay-SemanticSearchService-Dk4UTm2r.js → replay-SemanticSearchService-BQgdj2wy.js} +1 -1
- package/dist/{replay-SemanticSearchService-BWwCFW3F.js → replay-SemanticSearchService-CPIb_cUk.js} +7 -7
- package/dist/{replay-SqliteDBStorage-BFdjYsG7.js → replay-SqliteDBStorage-Bt2xXqei.js} +1 -1
- package/dist/{replay-SqliteDBStorage-DGQjzDy4.js → replay-SqliteDBStorage-vehgvWXZ.js} +1 -1
- package/dist/{replay-TauriFileSystemAdapter-CLzYSck7.js → replay-TauriFileSystemAdapter-D2yxrS6Q.js} +1 -1
- package/dist/{replay-TauriFileSystemAdapter-C8k9RvT1.js → replay-TauriFileSystemAdapter-YLdtT-Xp.js} +1 -1
- package/dist/{replay-TauriRootStorage-C1MIH5ji.js → replay-TauriRootStorage-BE6RmQfE.js} +162 -165
- package/dist/replay-TauriRootStorage-DcENVsBJ.js +1 -0
- package/dist/{replay-agent-loop-BoEw65rR.js → replay-agent-loop-CvopOugZ.js} +13 -13
- package/dist/{replay-agent-loop-Cm1iS9G2.js → replay-agent-loop-UwDSVh-4.js} +1 -1
- package/dist/{replay-ai-chat-mappers-IZNFNXug.js → replay-ai-chat-mappers-B7fm-v_w.js} +1 -1
- package/dist/{replay-ai-chat-mappers-Csm9vJrG.js → replay-ai-chat-mappers-yKBypIXh.js} +1 -1
- package/dist/{replay-create-model-BqvD-0wF.js → replay-create-model-CHahxEJy.js} +3 -3
- package/dist/{replay-create-model-Y9UJSztb.js → replay-create-model-CyBZMAWB.js} +4 -4
- package/dist/{replay-db-BImXgUGU.js → replay-db-CifZMdnr.js} +5 -5
- package/dist/{replay-db-C7FD3opa.js → replay-db-EWL-uAt-.js} +1 -1
- package/dist/{replay-external-resolver-CjM7Da6t.js → replay-external-resolver-D5fSfJEm.js} +1 -1
- package/dist/{replay-external-resolver-Bj3sLTnz.js → replay-external-resolver-G11iwLVZ.js} +2 -2
- package/dist/{replay-index-Dxk-kqkZ.js → replay-index-B2NUTBd8.js} +1 -1
- package/dist/{replay-index-CKRKzXMt.js → replay-index-B3MQaIS-.js} +1 -1
- package/dist/replay-index-Coy4kD_x.js +7009 -0
- package/dist/{replay-index-DJwfdo0s.js → replay-index-CqRiEj9e.js} +1 -1
- package/dist/{replay-index-DlTloE6S.js → replay-index-D0mbH_TN.js} +1 -1
- package/dist/{replay-index-Cp06WK82.js → replay-index-DDqKE6bs.js} +5 -5
- package/dist/{replay-index-xheWgsnj.js → replay-index-DrI9ZFwH.js} +2 -2
- package/dist/{replay-index-BH8cTSEK.js → replay-index-Dx8O3ZoA.js} +68783 -67874
- package/dist/{replay-lint-BIbkYU09.js → replay-lint-BiOcDIDr.js} +3 -3
- package/dist/{replay-lint--iBW-6Vj.js → replay-lint-CAo2fuiZ.js} +3 -3
- package/dist/{replay-lint-graphql-EXBI8I89.js → replay-lint-graphql-DAa8UNRg.js} +1 -1
- package/dist/{replay-lint-graphql-2b4GIER6.js → replay-lint-graphql-DzI2rUbR.js} +1 -1
- package/dist/replay-periodic-revalidation-D18ihfUc.js +1 -0
- package/dist/replay-periodic-revalidation-w7mrtjYg.js +22 -0
- package/dist/{replay-resolve-D9BUvjqv.js → replay-resolve-CojDRP37.js} +1 -1
- package/dist/{replay-resolve-B5yIfyuT.js → replay-resolve-DgAthAfi.js} +1 -1
- package/dist/{replay-respect-run-DNFoFnJU.js → replay-respect-run-3ukV7LMg.js} +1 -1
- package/dist/{replay-respect-run-Bx46aUHi.js → replay-respect-run-DNvB8rLX.js} +3 -3
- package/dist/replay-tauri-path-DM8PdMK8.js +22 -0
- package/dist/{replay-tauri-path-C8GiFO5s.js → replay-tauri-path-kr9DtxLs.js} +1 -1
- package/dist/{replay-useAiChatQueries-BTuu2xLG.js → replay-useAiChatQueries-BULoKr4E.js} +1564 -1395
- package/dist/replay-useAiChatQueries-BdjsFz1P.js +215 -0
- package/dist/{replay-validate-key-D4M7QvCw.js → replay-validate-key-CGmguj5X.js} +1 -1
- package/dist/{replay-validate-key-CjcIElmE.js → replay-validate-key-DzseOR5a.js} +2 -2
- package/dist/replay.cjs +1 -1
- package/dist/replay.d.ts +3 -3
- package/dist/replay.js +10 -10
- package/package.json +12 -5
- package/dist/replay-AiChatProvider-TF1u9E5L.js +0 -6
- package/dist/replay-AiPanel-DzGN1t86.js +0 -742
- package/dist/replay-FileWatcher-XMkIoDEA.js +0 -1
- package/dist/replay-FileWatcher-iYbHpwCv.js +0 -352
- package/dist/replay-TauriRootStorage-CiGY8MO6.js +0 -1
- package/dist/replay-index-BuYoH96w.js +0 -6982
- package/dist/replay-periodic-revalidation-BoyLQHtg.js +0 -1
- package/dist/replay-periodic-revalidation-Dsp-n7ui.js +0 -21
- package/dist/replay-tauri-path-BVoW6En0.js +0 -22
- package/dist/replay-useAiChatQueries-BDgjmzz-.js +0 -215
|
@@ -0,0 +1,742 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react/jsx-runtime"),h=require("react"),X=require("styled-components"),f=require("./replay-index-Coy4kD_x.js"),x=require("./replay-useAiChatQueries-BdjsFz1P.js"),Ge=require("@redocly/theme/core/constants/search"),E=require("@redocly/theme/components/Button/Button"),Ue=require("@redocly/theme/icons/SendIcon/SendIcon"),We=require("@redocly/theme/icons/StopIcon/StopIcon"),M=require("./replay-db-EWL-uAt-.js"),Ye=require("@redocly/theme/icons/CheckboxIcon/CheckboxIcon"),Ke=require("@redocly/theme/icons/CheckmarkFilledIcon/CheckmarkFilledIcon"),Je=require("@redocly/theme/icons/CloseFilledIcon/CloseFilledIcon"),Xe=require("@redocly/theme/icons/AddIcon/AddIcon"),Ze=require("@redocly/theme/icons/SubtractIcon/SubtractIcon"),K=require("@redocly/theme/core/utils"),Qe=require("@redocly/theme/icons/ChevronDownIcon/ChevronDownIcon"),et=require("@redocly/theme/icons/ChevronRightIcon/ChevronRightIcon"),tt=require("@redocly/theme/components/Dropdown/Dropdown"),nt=require("@redocly/theme/components/Dropdown/DropdownMenu"),Ie=require("@redocly/theme/components/Dropdown/DropdownMenuItem"),rt=require("@redocly/theme/icons/CheckmarkIcon/CheckmarkIcon"),ot=require("@redocly/theme/icons/SettingsCogIcon/SettingsCogIcon"),it=require("@redocly/theme/icons/ChatGptIcon/ChatGptIcon"),st=require("@redocly/theme/icons/GeminiIcon/GeminiIcon"),at=require("@redocly/theme/icons/ClaudeIcon/ClaudeIcon"),B=require("@redocly/theme/components/Tooltip/Tooltip"),ae=require("./replay-SemanticSearchService-BQgdj2wy.js");require("@tanstack/react-query");const G=require("@redocly/theme/components/Typography/Typography"),lt=require("@redocly/theme/icons/TrashCanIcon/TrashCanIcon"),ct=require("@redocly/theme/icons/AiStarsGradientIcon/AiStarsGradientIcon"),dt=require("@redocly/theme/icons/CloseIcon/CloseIcon"),ut=require("@redocly/theme/icons/NewChatIcon/NewChatIcon"),ft=require("@redocly/theme/icons/RecentlyViewedIcon/RecentlyViewedIcon"),pt=require("@redocly/theme/icons/ArrowLeftIcon/ArrowLeftIcon"),ht=e=>e&&e.__esModule?e:{default:e},l=ht(X);function xt({placeholder:e="Ask anything...",className:t,disabled:n,isStreaming:r=!1,onStop:o,modelSelector:s,value:a,onValueChange:c,onSubmit:d,textareaRef:u}){const p=a.trim(),v=!n&&p.length>0&&!r,g=!n&&p.length>0,w=A=>{c(A.target.value)},m=()=>{!p||n||r||d()},b=()=>{!r||!o||o()},C=A=>{A.key==="Enter"&&!A.shiftKey&&!A.nativeEvent.isComposing&&(A.preventDefault(),r&&o?b():m())};return i.jsxs(gt,{className:t,$isActive:g,children:[i.jsx(vt,{ref:u,rows:1,maxLength:Ge.AI_SEARCH_MAX_MESSAGE_LENGTH,placeholder:e,value:a,disabled:n,spellCheck:!1,onChange:w,onKeyDown:C}),i.jsxs(mt,{children:[s,r&&o?i.jsx(wt,{type:"button",size:"small","aria-label":"Stop generating",icon:i.jsx(We.StopIcon,{color:"var(--icon-color-on-color)"}),onClick:b}):i.jsx(yt,{type:"button",size:"small","aria-label":"Send message",icon:i.jsx(Ue.SendIcon,{color:"var(--icon-color-on-color)"}),onClick:m,disabled:!v})]})]})}const gt=l.default.div`
|
|
2
|
+
display: flex;
|
|
3
|
+
flex-direction: column;
|
|
4
|
+
gap: var(--spacing-xs);
|
|
5
|
+
width: 100%;
|
|
6
|
+
padding: var(--spacing-xs);
|
|
7
|
+
border: var(--search-ai-conversation-input-border, 1px solid var(--border-color-secondary));
|
|
8
|
+
border-radius: var(--search-ai-conversation-input-border-radius, var(--border-radius-lg));
|
|
9
|
+
background-color: var(--layer-color);
|
|
10
|
+
box-sizing: border-box;
|
|
11
|
+
|
|
12
|
+
&:hover,
|
|
13
|
+
&:focus-within {
|
|
14
|
+
border-color: transparent;
|
|
15
|
+
background:
|
|
16
|
+
linear-gradient(var(--layer-color), var(--layer-color)) padding-box,
|
|
17
|
+
var(--replay-ai-gradient-soft) border-box;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
${({$isActive:e})=>e&&X.css`
|
|
21
|
+
border-color: transparent;
|
|
22
|
+
background:
|
|
23
|
+
linear-gradient(var(--layer-color), var(--layer-color)) padding-box,
|
|
24
|
+
var(--replay-ai-gradient-soft) border-box;
|
|
25
|
+
`}
|
|
26
|
+
`,vt=l.default.textarea`
|
|
27
|
+
max-height: 150px;
|
|
28
|
+
min-height: var(--search-ai-conversation-input-min-height);
|
|
29
|
+
|
|
30
|
+
resize: none;
|
|
31
|
+
border: none;
|
|
32
|
+
outline: none;
|
|
33
|
+
padding: 0;
|
|
34
|
+
font-family: var(--font-family-base);
|
|
35
|
+
font-size: var(--font-size-base);
|
|
36
|
+
line-height: var(--line-height-base);
|
|
37
|
+
color: var(--text-color-primary);
|
|
38
|
+
caret-color: var(--text-color-primary);
|
|
39
|
+
background-color: transparent;
|
|
40
|
+
field-sizing: content;
|
|
41
|
+
|
|
42
|
+
&::placeholder {
|
|
43
|
+
color: var(--text-color-helper);
|
|
44
|
+
text-indent: 2px;
|
|
45
|
+
}
|
|
46
|
+
`,mt=l.default.div`
|
|
47
|
+
display: flex;
|
|
48
|
+
justify-content: space-between;
|
|
49
|
+
align-items: center;
|
|
50
|
+
gap: var(--spacing-xs);
|
|
51
|
+
`,yt=l.default(E.Button)`
|
|
52
|
+
box-sizing: border-box;
|
|
53
|
+
background: var(--search-ai-gradient);
|
|
54
|
+
|
|
55
|
+
&:disabled {
|
|
56
|
+
background: var(--replay-ai-gradient-disabled);
|
|
57
|
+
border: var(--replay-ai-send-button-disabled-border);
|
|
58
|
+
width: 24px;
|
|
59
|
+
height: 24px;
|
|
60
|
+
}
|
|
61
|
+
`,wt=l.default(E.Button)`
|
|
62
|
+
box-sizing: border-box;
|
|
63
|
+
background: var(--color-warm-grey-9);
|
|
64
|
+
border-radius: var(--border-radius-xxl);
|
|
65
|
+
`,bt=new Set(["collection","workflow","step","operation","workflow-run"]);function re(e){return`replay://step?${new URLSearchParams({collectionId:e.collectionId.trim(),workflowId:e.workflowId.trim(),stepId:e.stepId.trim()}).toString()}`}function O(e,t){const n=e.get(t);if(n==null)return null;const r=n.trim();return r.length>0?r:null}function Ct(e){let t;try{t=new URL(e)}catch{return null}if(t.protocol!=="replay:")return null;const n=t.hostname.toLowerCase();if(!bt.has(n))return null;const r=t.searchParams;switch(n){case"collection":{const o=O(r,"collectionId");return o?{kind:"collection",collectionId:o}:null}case"workflow":{const o=O(r,"collectionId"),s=O(r,"workflowId");return!o||!s?null:{kind:"workflow",collectionId:o,workflowId:s}}case"step":{const o=O(r,"collectionId"),s=O(r,"workflowId"),a=O(r,"stepId");return!o||!s||!a?null:{kind:"step",collectionId:o,workflowId:s,stepId:a}}case"operation":{const o=O(r,"operationId");return o?{kind:"operation",operationId:o}:null}case"workflow-run":{const o=O(r,"collectionId"),s=O(r,"workflowId");if(!o||!s)return null;const a=O(r,"historyId"),c=a==="null"||a==="undefined"?null:a;return{kind:"workflow-run",collectionId:o,workflowId:s,...c?{historyId:c}:{}}}default:return null}}function At(e,t,n={}){switch(t.kind){case"collection":e.openCollectionTab({collectionId:t.collectionId,activeTabName:f.TAB_NAMES.COLLECTION_SETTINGS});break;case"workflow":e.openWorkflowTab({collectionId:t.collectionId,workflowId:t.workflowId,activeTabName:f.TAB_NAMES.WORKFLOW_SETTINGS});break;case"step":e.openStepTabFromCollection({collectionId:t.collectionId,workflowId:t.workflowId,stepId:t.stepId,state:f.TabState.Normal});break;case"workflow-run":{const r=n.workflowRunHistoryIds?.[x.workflowRunKey(t.collectionId,t.workflowId)]??[],o=t.historyId&&r.includes(t.historyId)?t.historyId:r.at(-1)??t.historyId;if(o){e.openWorkflowRunTabFromHistory(o,{state:f.TabState.Normal});break}e.focusWorkflowRunTab({collectionId:t.collectionId,workflowId:t.workflowId})||e.openWorkflowRunTab({collectionId:t.collectionId,workflowId:t.workflowId});break}case"operation":{const r=x.resolveOperation(e.apis,t.operationId);if(!r.ok){console.warn("[executeReplayChatLink] Operation not resolved",{operationId:t.operationId,message:r.message});return}x.openOrFocusOperationEditorTab(x.operationListItemToCollectionOperation(r.value),e);break}}}function Tt(e,t,n={}){const r=Ct(t);r&&At(e,r,n)}function je({workflowRunHistoryIds:e}={}){const t=f.useApis(),{getApiOperation:n}=f.useApiOperation(),{focusOperationTab:r,addNewTab:o,openCollectionTab:s,openWorkflowTab:a,openStepTabFromCollection:c,openWorkflowRunTab:d,openWorkflowRunTabFromHistory:u,focusWorkflowRunTab:p}=f.useTabHandlers();return h.useCallback(v=>{const g=v.target;if(!(g instanceof Element))return;const w=g.closest("a[href]");if(!(w instanceof HTMLAnchorElement))return;const m=w.getAttribute("href");m?.startsWith("replay:")&&(v.preventDefault(),v.stopPropagation(),Tt({apis:t,getApiOperation:n,focusOperationTab:r,addNewTab:o,openCollectionTab:s,openWorkflowTab:a,openStepTabFromCollection:c,openWorkflowRunTab:d,openWorkflowRunTabFromHistory:u,focusWorkflowRunTab:p},m,{workflowRunHistoryIds:e}))},[e,t,n,r,o,s,a,c,d,u,p])}class It{diff(t,n,r={}){let o;typeof r=="function"?(o=r,r={}):"callback"in r&&(o=r.callback);const s=this.castInput(t,r),a=this.castInput(n,r),c=this.removeEmpty(this.tokenize(s,r)),d=this.removeEmpty(this.tokenize(a,r));return this.diffWithOptionsObj(c,d,r,o)}diffWithOptionsObj(t,n,r,o){var s;const a=y=>{if(y=this.postProcess(y,r),o){setTimeout(function(){o(y)},0);return}else return y},c=n.length,d=t.length;let u=1,p=c+d;r.maxEditLength!=null&&(p=Math.min(p,r.maxEditLength));const v=(s=r.timeout)!==null&&s!==void 0?s:1/0,g=Date.now()+v,w=[{oldPos:-1,lastComponent:void 0}];let m=this.extractCommon(w[0],n,t,0,r);if(w[0].oldPos+1>=d&&m+1>=c)return a(this.buildValues(w[0].lastComponent,n,t));let b=-1/0,C=1/0;const A=()=>{for(let y=Math.max(b,-u);y<=Math.min(C,u);y+=2){let S;const R=w[y-1],P=w[y+1];R&&(w[y-1]=void 0);let z=!1;if(P){const U=P.oldPos-y;z=P&&0<=U&&U<c}const D=R&&R.oldPos+1<d;if(!z&&!D){w[y]=void 0;continue}if(!D||z&&R.oldPos<P.oldPos?S=this.addToPath(P,!0,!1,0,r):S=this.addToPath(R,!1,!0,1,r),m=this.extractCommon(S,n,t,y,r),S.oldPos+1>=d&&m+1>=c)return a(this.buildValues(S.lastComponent,n,t))||!0;w[y]=S,S.oldPos+1>=d&&(C=Math.min(C,y-1)),m+1>=c&&(b=Math.max(b,y+1))}u++};if(o)(function y(){setTimeout(function(){if(u>p||Date.now()>g)return o(void 0);A()||y()},0)})();else for(;u<=p&&Date.now()<=g;){const y=A();if(y)return y}}addToPath(t,n,r,o,s){const a=t.lastComponent;return a&&!s.oneChangePerToken&&a.added===n&&a.removed===r?{oldPos:t.oldPos+o,lastComponent:{count:a.count+1,added:n,removed:r,previousComponent:a.previousComponent}}:{oldPos:t.oldPos+o,lastComponent:{count:1,added:n,removed:r,previousComponent:a}}}extractCommon(t,n,r,o,s){const a=n.length,c=r.length;let d=t.oldPos,u=d-o,p=0;for(;u+1<a&&d+1<c&&this.equals(r[d+1],n[u+1],s);)u++,d++,p++,s.oneChangePerToken&&(t.lastComponent={count:1,previousComponent:t.lastComponent,added:!1,removed:!1});return p&&!s.oneChangePerToken&&(t.lastComponent={count:p,previousComponent:t.lastComponent,added:!1,removed:!1}),t.oldPos=d,u}equals(t,n,r){return r.comparator?r.comparator(t,n):t===n||!!r.ignoreCase&&t.toLowerCase()===n.toLowerCase()}removeEmpty(t){const n=[];for(let r=0;r<t.length;r++)t[r]&&n.push(t[r]);return n}castInput(t,n){return t}tokenize(t,n){return Array.from(t)}join(t){return t.join("")}postProcess(t,n){return t}get useLongestToken(){return!1}buildValues(t,n,r){const o=[];let s;for(;t;)o.push(t),s=t.previousComponent,delete t.previousComponent,t=s;o.reverse();const a=o.length;let c=0,d=0,u=0;for(;c<a;c++){const p=o[c];if(p.removed)p.value=this.join(r.slice(u,u+p.count)),u+=p.count;else{if(!p.added&&this.useLongestToken){let v=n.slice(d,d+p.count);v=v.map(function(g,w){const m=r[u+w];return m.length>g.length?m:g}),p.value=this.join(v)}else p.value=this.join(n.slice(d,d+p.count));d+=p.count,p.added||(u+=p.count)}}return o}}class jt extends It{constructor(){super(...arguments),this.tokenize=Et}equals(t,n,r){return r.ignoreWhitespace?((!r.newlineIsToken||!t.includes(`
|
|
66
|
+
`))&&(t=t.trim()),(!r.newlineIsToken||!n.includes(`
|
|
67
|
+
`))&&(n=n.trim())):r.ignoreNewlineAtEof&&!r.newlineIsToken&&(t.endsWith(`
|
|
68
|
+
`)&&(t=t.slice(0,-1)),n.endsWith(`
|
|
69
|
+
`)&&(n=n.slice(0,-1))),super.equals(t,n,r)}}const St=new jt;function kt(e,t,n){return St.diff(e,t,n)}function Et(e,t){t.stripTrailingCr&&(e=e.replace(/\r\n/g,`
|
|
70
|
+
`));const n=[],r=e.split(/(\n|\r\n)/);r[r.length-1]||r.pop();for(let o=0;o<r.length;o++){const s=r[o];o%2&&!t.newlineIsToken?n[n.length-1]+=s:n.push(s)}return n}const Lt=500;function Rt(e,t){const n=Pt(e,t);if(n.length===0)return[];const r=[];let o=0;for(;o<n.length;){let s=o;const a=n[o].type==="context";for(;s<n.length&&n[s].type==="context"===a;)s++;const c=n.slice(o,s);r.push({start:o,end:s,rows:c,hasAdditions:c.some(d=>d.type==="add"),hasRemovals:c.some(d=>d.type==="remove")}),o=s}return r}function Pt(e,t){if(e===void 0)return t===void 0?[]:H(t,"add");if(t===void 0)return H(e,"remove");if(e===t)return H(t,"context");const n=Ot(e,t);return n?n.flatMap(r=>H(r.value,r.added?"add":r.removed?"remove":"context")):[...H(e,"remove"),...H(t,"add")]}function Ot(e,t){try{return kt(e,t,{timeout:Lt})}catch{return}}function H(e,t){const n=e.split(`
|
|
71
|
+
`);return n.length>1&&n[n.length-1]===""&&n.pop(),n.map(r=>({type:t,text:r}))}const le=1,ce=e=>e&&e.hasAdditions!==e.hasRemovals,de=e=>e&&(e.hasAdditions||e.hasRemovals);function _t(e,t,n){if(e.hasAdditions||e.hasRemovals)return W(e.rows);const r=n[t-1],o=n[t+1],s=ce(r)?le:0,a=ce(o)?le:0;if(s+a>=e.rows.length)return W(e.rows);const c=e.rows.slice(0,s),d=a>0?e.rows.slice(-a):[],u=[];return u.push(...W(c)),de(r)&&de(o)&&u.push({kind:"separator"}),u.push(...W(d)),u}function W(e){return e.map(t=>({kind:"row",row:t}))}const Mt=200;function ue({oldValue:e,newValue:t}){const n=h.useMemo(()=>Rt(e,t),[e,t]),r=h.useMemo(()=>n.flatMap(_t),[n]);return h.useMemo(()=>n.some(s=>s.hasAdditions||s.hasRemovals),[n])?i.jsx(Nt,{$maxHeight:Mt,children:r.map((s,a)=>{if(s.kind==="separator")return i.jsx($t,{children:i.jsx(fe,{children:"···"})},a);const{row:c}=s,d=Dt(c.type);return i.jsxs(d,{children:[i.jsxs(zt,{children:[c.type==="remove"&&i.jsx(Ze.SubtractIcon,{size:"12px"}),c.type==="add"&&i.jsx(Xe.AddIcon,{size:"12px"})]}),i.jsx(fe,{children:c.text===""?" ":c.text})]},a)})}):null}function Dt(e){return e==="remove"?Ht:e==="add"?Bt:Vt}const Nt=l.default.div`
|
|
72
|
+
display: flex;
|
|
73
|
+
flex-direction: column;
|
|
74
|
+
width: 100%;
|
|
75
|
+
min-width: 0;
|
|
76
|
+
max-height: ${({$maxHeight:e})=>e}px;
|
|
77
|
+
overflow-y: auto;
|
|
78
|
+
border-radius: var(--border-radius);
|
|
79
|
+
&::-webkit-scrollbar-track {
|
|
80
|
+
margin: var(--spacing-xxs) 0;
|
|
81
|
+
}
|
|
82
|
+
`,ee=l.default.div`
|
|
83
|
+
display: flex;
|
|
84
|
+
font-size: var(--font-size-sm);
|
|
85
|
+
line-height: var(--line-height-sm);
|
|
86
|
+
font-weight: var(--font-weight-regular);
|
|
87
|
+
padding-right: var(--spacing-xxs);
|
|
88
|
+
`,Ht=l.default(ee)`
|
|
89
|
+
background: var(--admonition-danger-bg-color);
|
|
90
|
+
color: var(--color-raspberry-7);
|
|
91
|
+
`,Bt=l.default(ee)`
|
|
92
|
+
background: var(--admonition-success-bg-color);
|
|
93
|
+
color: var(--color-green-7);
|
|
94
|
+
`,Vt=l.default(ee)`
|
|
95
|
+
background: transparent;
|
|
96
|
+
color: var(--text-color-secondary);
|
|
97
|
+
`,zt=l.default.span`
|
|
98
|
+
display: flex;
|
|
99
|
+
align-items: center;
|
|
100
|
+
justify-content: center;
|
|
101
|
+
min-width: 16px;
|
|
102
|
+
height: 20px;
|
|
103
|
+
flex-shrink: 0;
|
|
104
|
+
`,fe=l.default.span`
|
|
105
|
+
width: 100%;
|
|
106
|
+
min-width: 0;
|
|
107
|
+
line-height: var(--line-height-sm);
|
|
108
|
+
font-size: var(--font-size-sm);
|
|
109
|
+
font-weight: var(--font-weight-regular);
|
|
110
|
+
white-space: pre-wrap;
|
|
111
|
+
word-break: break-all;
|
|
112
|
+
`,$t=l.default(ee)`
|
|
113
|
+
user-select: none;
|
|
114
|
+
`,Ft=e=>typeof e!="object"||e===null?!1:"kind"in e&&e.kind==="batch"?"changes"in e?Array.isArray(e.changes)&&e.changes.every(pe):!1:pe(e);function pe(e){return typeof e!="object"||e===null||!("id"in e)||!("target"in e)||!("included"in e)||!("kind"in e)?!1:e.kind==="single"}const qt={approveLabel:"Approve",denyLabel:"Deny"};function Gt(e,t){const n=T(t,"action");if(n){const o=x.TOOL_APPROVAL_ACTION_BUTTON_LABELS[n];if(o)return o}const r=x.TOOL_APPROVAL_BUTTON_LABELS[e];return r||qt}function T(e,t){if(!e||typeof e!="object")return null;const n=e.payload;if(!n||typeof n!="object")return null;const r=n[t];return typeof r!="string"?null:r.trim()||null}function Y(e,t){if(!(typeof t>"u"))return e?`${e}: ${t}`:t}function Ut(e){return e?"changes"in e?Array.isArray(e.changes)?e.changes.map(t=>!t||typeof t!="object"||!("approved"in t)?!1:t.approved===!0):[]:[]:[]}function Wt(e,t){if(!e||typeof e!="object")return;const n=Z(e,f.REPLAY_MESSAGE_METADATA_NS),r=Z(n,f.REPLAY_CHANGE_PREVIEW_SNAPSHOT_KEY);if(!(t in r))return;const o=r[t];if(Array.isArray(o)&&o.length!==0&&o.every(Ft))return o}function Se(e,t){return x.isToolApprovalPart(e)&&x.isApprovalRequested(e)&&e.toolCallId===t}function Yt(e,t,n){const r=e.parts.map(d=>Se(d,t)?{...d,input:Kt(d.input,n)}:d),o=e.metadata&&typeof e.metadata=="object"?e.metadata:{},s=Z(o,f.REPLAY_MESSAGE_METADATA_NS),c={...Z(s,f.REPLAY_CHANGE_PREVIEW_SNAPSHOT_KEY),[t]:f.cloneObject(n)};return{...e,parts:r,metadata:{...o,[f.REPLAY_MESSAGE_METADATA_NS]:{...s,[f.REPLAY_CHANGE_PREVIEW_SNAPSHOT_KEY]:c}}}}function Z(e,t){const n=e[t];return typeof n=="object"&&n!==null?n:{}}function Kt(e,t){if(!e||!("changes"in e)||!Array.isArray(e.changes))return e;const{changes:n,...r}=e;return{...r,changes:n.map((o,s)=>({...o,approved:t[s]?.included??!1}))}}function Jt({preview:e,isIncluded:t,onToggle:n,readOnly:r}){const{primaryLabel:o,categoryLabel:s,diffLineKey:a}=Xt(e.target);return i.jsx(Zt,{isIncluded:t,onToggle:n,readOnly:r,primaryLabel:o,categoryLabel:s,children:e.kind==="batch"?i.jsx(dn,{children:e.changes.map(c=>i.jsx(ue,{oldValue:Y(c.target.key,c.oldValue),newValue:Y(c.target.key,c.newValue)},c.id))}):i.jsx(ue,{oldValue:Y(a,e.oldValue),newValue:Y(a,e.newValue)})})}function Xt(e){const t=e.schemeId??e.type;return e.stepId||e.schemeId?{primaryLabel:e.stepId??t,categoryLabel:e.stepId?t:void 0,diffLineKey:e.key}:{primaryLabel:e.key??e.type,categoryLabel:e.key?e.type:void 0,diffLineKey:void 0}}function Zt({isIncluded:e,onToggle:t,readOnly:n,primaryLabel:r,categoryLabel:o,children:s}){return i.jsxs(Qt,{$dimmed:n&&!e,children:[i.jsxs(en,{children:[n?i.jsx(an,{children:e?i.jsx(ln,{size:"16px"}):i.jsx(cn,{size:"16px"})}):i.jsxs(on,{children:[i.jsx(rn,{checked:e}),i.jsx(sn,{type:"checkbox",checked:e,onChange:t})]}),i.jsx(tn,{children:r}),o?i.jsx(nn,{children:o}):null]}),s]})}const Qt=l.default.div`
|
|
115
|
+
display: flex;
|
|
116
|
+
flex-direction: column;
|
|
117
|
+
gap: var(--spacing-xs);
|
|
118
|
+
min-width: 0;
|
|
119
|
+
padding: var(--spacing-xs);
|
|
120
|
+
border-bottom: 1px solid var(--border-color-secondary);
|
|
121
|
+
box-sizing: border-box;
|
|
122
|
+
opacity: ${({$dimmed:e})=>e?.4:1};
|
|
123
|
+
&:last-child {
|
|
124
|
+
border-bottom: none;
|
|
125
|
+
}
|
|
126
|
+
`,en=l.default.div`
|
|
127
|
+
display: flex;
|
|
128
|
+
align-items: center;
|
|
129
|
+
gap: var(--spacing-xs);
|
|
130
|
+
min-width: 0;
|
|
131
|
+
`,tn=l.default.span`
|
|
132
|
+
flex: 1;
|
|
133
|
+
min-width: 0;
|
|
134
|
+
color: var(--text-color-primary);
|
|
135
|
+
font-size: var(--font-size-sm);
|
|
136
|
+
font-weight: var(--font-weight-medium);
|
|
137
|
+
line-height: var(--line-height-sm);
|
|
138
|
+
overflow: hidden;
|
|
139
|
+
text-overflow: ellipsis;
|
|
140
|
+
white-space: nowrap;
|
|
141
|
+
`,nn=l.default.span`
|
|
142
|
+
flex-shrink: 0;
|
|
143
|
+
font-family: var(--code-block-font-family, var(--font-family-monospace, monospace));
|
|
144
|
+
font-size: var(--font-size-sm);
|
|
145
|
+
font-weight: var(--font-weight-regular);
|
|
146
|
+
line-height: var(--line-height-sm);
|
|
147
|
+
color: var(--text-color-secondary);
|
|
148
|
+
`,rn=l.default(Ye.CheckboxIcon).attrs({"aria-hidden":!0})`
|
|
149
|
+
--checkbox-border-color: var(--color-blueberry-6);
|
|
150
|
+
--checkbox-box-color: var(--color-blueberry-6);
|
|
151
|
+
--checkbox-box-color-active: var(--color-blueberry-6);
|
|
152
|
+
`,on=l.default.span`
|
|
153
|
+
position: relative;
|
|
154
|
+
display: inline-flex;
|
|
155
|
+
flex-shrink: 0;
|
|
156
|
+
width: 16px;
|
|
157
|
+
height: 16px;
|
|
158
|
+
`,sn=l.default.input`
|
|
159
|
+
position: absolute;
|
|
160
|
+
inset: 0;
|
|
161
|
+
width: 16px;
|
|
162
|
+
height: 16px;
|
|
163
|
+
margin: 0;
|
|
164
|
+
opacity: 0;
|
|
165
|
+
cursor: pointer;
|
|
166
|
+
`,an=l.default.span`
|
|
167
|
+
display: inline-flex;
|
|
168
|
+
flex-shrink: 0;
|
|
169
|
+
width: 16px;
|
|
170
|
+
height: 16px;
|
|
171
|
+
align-items: center;
|
|
172
|
+
justify-content: center;
|
|
173
|
+
`,ln=l.default(Ke.CheckmarkFilledIcon)`
|
|
174
|
+
color: var(--color-success-base);
|
|
175
|
+
`,cn=l.default(Je.CloseFilledIcon)`
|
|
176
|
+
color: var(--text-color-description);
|
|
177
|
+
`,dn=l.default.div`
|
|
178
|
+
display: flex;
|
|
179
|
+
flex-direction: column;
|
|
180
|
+
gap: var(--spacing-xxs);
|
|
181
|
+
min-width: 0;
|
|
182
|
+
`;function ke({previews:e,handleToggle:t,readOnly:n}){return e.length===0?null:i.jsx(un,{children:e.map((r,o)=>i.jsx(Jt,{preview:r,isIncluded:r.included,onToggle:t?()=>t(o):void 0,readOnly:n},r.id))})}const un=l.default.div`
|
|
183
|
+
display: flex;
|
|
184
|
+
flex-direction: column;
|
|
185
|
+
`,fn={update_step:xn,update_security:gn,run_request:wn,web_search:bn,manage_environment:mn,manage_collection:yn};function pn(e,t){const n=fn[e];return n?n(t):hn(e)}function hn(e){return[{kind:"text",text:e.split("_").map(n=>n.charAt(0).toUpperCase()+n.slice(1)).join(" ")}]}function xn(e){return Ee(e,"Update step")}function gn(e){const t=vn(e);if(t.size>1)return j("Update security");const[n]=t;return Ee(e,"Update security",n)}function vn(e){const t=e&&"changes"in e?e.changes:void 0;if(!Array.isArray(t))return new Set;const n=F(e,"stepId"),r=t.map(o=>F(o,"stepId")??n);return new Set(r.filter(o=>!!o))}function Ee(e,t,n){const{collectionId:r,workflowId:o,stepId:s}=Cn(e),a=n??s;return!r||!o||!a?j(t):oe(`${t} `,re({collectionId:r,workflowId:o,stepId:a}),a)}function j(e){return[{kind:"text",text:e}]}function L(e,t){return t?`${e} "${t}"`:e}function oe(e,t,n){return[{kind:"text",text:e},{kind:"link",href:t,label:n}]}function mn(e){const t=T(e,"action"),n=T(e,"environment"),r=n?` in environment "${n}"`:"";switch(t){case"add_environment":return j(L("Add environment",n));case"set_active_environment":return j(n?`Switch active environment to ${n}`:"Switch active environment");case"upsert_input":return j(L("Set input",T(e,"name"))+r);case"remove_input":return j(L("Remove input",T(e,"inputName"))+r);case"upsert_server":return j(L("Set server",T(e,"apiId"))+r);case"remove_server":return j(L("Remove server",T(e,"apiId"))+r);default:return j("Manage environment")}}function yn(e){switch(T(e,"action")){case"create_collection":return j(L("Create collection",T(e,"title")));case"delete_collection":return j(L("Delete collection",T(e,"collectionId")));case"create_workflow":return j(L("Create workflow",T(e,"name")));case"delete_workflow":return j(L("Delete workflow",T(e,"workflowId")));case"create_step":return j(L("Create step",T(e,"stepName")));case"delete_step":{const n=T(e,"collectionId"),r=T(e,"workflowId"),o=T(e,"stepId");return!n||!r||!o?j("Delete step"):oe("Delete step ",re({collectionId:n,workflowId:r,stepId:o}),o)}case"move_step":{const n=T(e,"collectionId"),r=T(e,"workflowId"),o=T(e,"stepId");return!n||!r||!o?j("Move step"):oe("Move step ",re({collectionId:n,workflowId:r,stepId:o}),o)}case"save_tab_to_collection":return j(L("Save tab as step",T(e,"newStepName")));default:return j("Manage collection")}}function wn(){return[{kind:"text",text:"Run current request"}]}function bn(e){return[{kind:"text",text:"Search the web at "},{kind:"link",href:e.url,label:e.url}]}function Cn(e){return{collectionId:F(e,"collectionId"),workflowId:F(e,"workflowId"),stepId:F(e,"stepId")}}function F(e,t){if(typeof e!="object"||e===null||!(t in e))return null;const n=e[t];return typeof n=="string"&&n.trim()||null}function Le({toolName:e,input:t}){const n=pn(e,t),r=je();return i.jsx(An,{onClick:r,children:i.jsx(Tn,{children:n.map((o,s)=>o.kind==="text"?i.jsx("span",{children:o.text},s):i.jsx(In,{href:o.href,children:o.label},s))})})}const An=l.default.div`
|
|
186
|
+
display: flex;
|
|
187
|
+
flex-direction: column;
|
|
188
|
+
gap: 0;
|
|
189
|
+
min-width: 0;
|
|
190
|
+
padding: var(--spacing-xs) var(--spacing-sm);
|
|
191
|
+
|
|
192
|
+
&:not(:last-child) {
|
|
193
|
+
border-bottom: 1px solid var(--border-color-secondary);
|
|
194
|
+
}
|
|
195
|
+
`,Tn=l.default.span`
|
|
196
|
+
font-family: var(--font-family-base);
|
|
197
|
+
font-size: var(--font-size-sm);
|
|
198
|
+
font-weight: var(--font-weight-regular);
|
|
199
|
+
line-height: var(--line-height-sm);
|
|
200
|
+
color: var(--text-color-primary);
|
|
201
|
+
`,In=l.default.a`
|
|
202
|
+
color: var(--link-color-primary);
|
|
203
|
+
cursor: pointer;
|
|
204
|
+
text-decoration: none;
|
|
205
|
+
|
|
206
|
+
&:hover {
|
|
207
|
+
color: var(--link-color-primary, var(--text-color-link));
|
|
208
|
+
}
|
|
209
|
+
`;function Re(e,t,n){const r={type:e};return t!==void 0&&(r.key=t),n&&(r.stepId=n),r}function I({id:e,targetType:t,targetKey:n,targetStepId:r,oldValue:o,newValue:s}){return{kind:"single",id:e,target:Re(t,n,r),oldValue:o,newValue:s,included:!0}}function N(e,t,n){return I({id:e,targetType:t,targetStepId:n,oldValue:void 0,newValue:void 0})}function V({data:e,baseId:t,targetType:n,batchTargetKey:r,targetStepId:o,getOldValue:s,getNewValue:a=(d,u)=>String(u??""),resolveTargetKey:c=d=>d}){const d=Object.entries(e).filter(([,v])=>v!==void 0);if(d.length===0)return N(t,n,o);if(d.length>=2){const v=d.map(([g,w])=>I({id:`${t}:${g}`,targetType:n,targetKey:c(g),oldValue:s(g),newValue:a(g,w)}));return{kind:"batch",id:t,target:Re(n,r,o),changes:v,included:!0}}const[u,p]=d[0];return I({id:t,targetType:n,targetKey:c(u),targetStepId:o,oldValue:s(u),newValue:a(u,p)})}function jn({collections:e,activeTab:t,input:n}){if(!Sn(n))return[];const r=new Map,o=s=>{const a=r.get(s);if(a)return a;const c=x.resolveStepOrDraftData(e,t,n.collectionId,n.workflowId,s),d=c.ok?Array.from(c.value.step.security):[];return r.set(s,d),d};return n.changes.map((s,a)=>{const c=s.stepId?.trim(),d=c||n.stepId;return kn(o(d),s,a,c)})}function Sn(e){if(typeof e!="object"||e===null)return!1;const t=e;return typeof t.collectionId=="string"&&typeof t.workflowId=="string"&&typeof t.stepId=="string"&&Array.isArray(t.changes)&&t.changes.length>0}function kn(e,t,n,r){const o=`security[${n}]`;switch(t.action){case x.CHANGE_ACTION.ADD:{const{type:s,schemeId:a,data:c}=t;return!c||Object.keys(c).length===0?$(I({id:o,targetType:s,targetStepId:r,oldValue:void 0,newValue:s}),a):$(V({data:c,baseId:o,targetType:s,targetStepId:r,getOldValue:()=>{}}),a)}case x.CHANGE_ACTION.UPDATE:{const{type:s,data:a}=t,c=t.index!==void 0?e[t.index]:void 0,d=t.schemeId||ie(c);return!a||Object.keys(a).length===0?$(I({id:o,targetType:s,targetStepId:r,oldValue:xe(c),newValue:s}),d):$(V({data:a,baseId:o,targetType:s,targetStepId:r,getOldValue:u=>c?En(c,u):void 0}),d)}case x.CHANGE_ACTION.REMOVE:{const s=x.resolveRemovalTarget(e,t),a=s.ok?s.entry:void 0;return $(I({id:o,targetType:a?.securityType??"Security",targetStepId:r,oldValue:xe(a),newValue:void 0}),ie(a))}}}function $(e,t){return t?{...e,target:{...e.target,schemeId:t}}:e}function En(e,t){switch(e.securityType){case f.SecurityTypes.NoAuth:return;case f.SecurityTypes.OAuth2:return he(e[f.SecurityTypes.OAuth2],t);case f.SecurityTypes.OpenIDConnect:{const n=e[f.SecurityTypes.OpenIDConnect];return t==="openIdConnectUrl"?n.openIdConnectUrl||void 0:t==="userInfoUrl"?n.userInfoUrl||void 0:he(n,t)}case f.SecurityTypes.APIKey:{const n=e[f.SecurityTypes.APIKey];return t==="location"?J(n,t)?.toLowerCase():J(n,t)}default:{const n=e[e.securityType];return J(n,t)}}}function he(e,t){if(t==="grantType")return e.grantType||void 0;if(!e.grantType)return;const n=e[e.grantType];return J(n,t)}function J(e,t){const n=e[t];return n!==void 0&&n!==""?String(n):void 0}function xe(e){if(!e||e.securityType===f.SecurityTypes.NoAuth)return;const t=ie(e);return t?`${e.securityType} (${t})`:e.securityType}function ie(e){return!e||e.securityType===f.SecurityTypes.NoAuth?void 0:e[e.securityType]?.schemeName||void 0}function Ln({collections:e,activeTab:t,input:n}){if(!Rn(n))return[];const r=x.resolveStepOrDraftData(e,t,n.collectionId,n.workflowId,n.stepId),o=r.ok?r.value.step:null;return n.changes.map((s,a)=>Pn(o,s,a))}function Rn(e){return typeof e!="object"||e===null?!1:"collectionId"in e&&"workflowId"in e&&"stepId"in e&&"changes"in e&&Array.isArray(e.changes)&&e.changes.length>0&&typeof e.collectionId=="string"&&typeof e.workflowId=="string"&&typeof e.stepId=="string"}function Pn(e,t,n){const r=t.id??`${t.field}[${n}]`;switch(t.field){case"method":case"url":case"description":return On(e,t,r);case"parameters":return _n(e,t,r);case"outputs":return Mn(e,t,r);case"body":return Dn(e,t,r);case"successCriteria":return Nn(e,t,r)}}function On(e,t,n){const r=K.capitalize(t.field);switch(t.action){case x.CHANGE_ACTION.ADD:return I({id:n,targetType:r,oldValue:void 0,newValue:t.data});case x.CHANGE_ACTION.UPDATE:return I({id:n,targetType:r,oldValue:ge(e,t.field),newValue:t.data});case x.CHANGE_ACTION.REMOVE:return I({id:n,targetType:r,oldValue:ge(e,t.field),newValue:void 0})}}function _n(e,t,n){switch(t.action){case x.CHANGE_ACTION.ADD:{if(!t.data)return N(n,"parameter");const{in:r,name:o,value:s}=t.data;return I({id:n,targetType:K.capitalize(r),targetKey:o,oldValue:void 0,newValue:s})}case x.CHANGE_ACTION.UPDATE:{if(!t.id&&!t.data?.name)return N(n,"parameter");const r=ve(e,t),o=t.data?.in??r?.in??"parameter";return I({id:n,targetType:K.capitalize(o),targetKey:t.data?.name??r?.key,oldValue:r?r.value??"":void 0,newValue:t.data?.value})}case x.CHANGE_ACTION.REMOVE:{if(!t.id&&!t.data?.name)return N(n,"parameter");const r=ve(e,t),o=t.data?.in??r?.in??"parameter";return I({id:n,targetType:K.capitalize(o),targetKey:r?.key??t.data?.name,oldValue:r?r.value??"":void 0,newValue:void 0})}}}function Mn(e,t,n){switch(t.action){case x.CHANGE_ACTION.ADD:return t.data?I({id:n,targetType:"Output",targetKey:t.data.name,oldValue:void 0,newValue:t.data.expression}):I({id:n,targetType:"Output",oldValue:void 0,newValue:void 0});case x.CHANGE_ACTION.UPDATE:{if(!t.data)return I({id:n,targetType:"Output",oldValue:void 0,newValue:void 0});const r=t.id&&e?ye(e,t.id):void 0;return I({id:n,targetType:"Output",targetKey:t.data.name,oldValue:r?.value,newValue:t.data.expression})}case x.CHANGE_ACTION.REMOVE:{if(!t.id&&!t.data?.name)return N(n,"Output");let r=t.id&&e?ye(e,t.id):void 0;return!r&&e&&t.data?.name&&(r=Vn(e,t.data.name)),I({id:n,targetType:"Output",targetKey:r?.key??t.data?.name,oldValue:r?.value,newValue:void 0})}}}function Dn(e,t,n){const{data:r}=t;switch(t.action){case x.CHANGE_ACTION.ADD:return V({data:r,baseId:n,targetType:"Body",getOldValue:()=>{},getNewValue:o=>o==="content"?ne(r.content,r.contentType):Q(r[o]),resolveTargetKey:o=>o==="content"?void 0:o});case x.CHANGE_ACTION.UPDATE:{const o=e?.requestBody.type,s=r.contentType??o;return V({data:r,baseId:n,targetType:"Body",getOldValue:a=>{if(e){if(a==="content")return ne(e.requestBody.content,o)||void 0;if(a==="contentType")return o}},getNewValue:a=>a==="content"?ne(r.content,s):Q(r[a]),resolveTargetKey:a=>a==="content"?void 0:a})}case x.CHANGE_ACTION.REMOVE:{const o=e?f.toCompactJson({contentType:e.requestBody.type,content:e.requestBody.content}):void 0;return I({id:n,targetType:"Body",oldValue:o,newValue:void 0})}}}function Nn(e,t,n){switch(t.action){case x.CHANGE_ACTION.ADD:return t.data?V({data:t.data,baseId:n,targetType:"successCriteria",getOldValue:()=>{},getNewValue:r=>Q(t.data[r])}):N(n,"successCriteria");case x.CHANGE_ACTION.UPDATE:{if(!t.data)return N(n,"successCriteria");const r=typeof t.id=="string"&&e?me(e,t.id):void 0;return V({data:t.data,baseId:n,targetType:"successCriteria",getOldValue:o=>{if(r){if(o==="condition")return r.condition;if(o==="context")return r.context??void 0;if(o==="type")return r.type}},getNewValue:o=>Q(t.data[o])})}case x.CHANGE_ACTION.REMOVE:{if(typeof t.id!="string")return N(n,"successCriteria");const r=e?me(e,t.id):void 0;return I({id:n,targetType:"successCriteria",targetKey:r?.condition,oldValue:r?f.toCompactJson(r):void 0,newValue:void 0})}}}function ge(e,t){if(e)switch(t){case"method":return e.xOperation?.method;case"url":return e.xOperation?.url;case"description":return e.description}}function ve(e,t){let n=t.id&&e?Hn(e,t.id):null;return!n&&e&&t.data?.name&&(n=Bn(e,t.data.name)),n}function Pe(e,t){for(const n of["path","query","header","cookie"]){const r=e.parameters[x.LOCATION_TO_FIELD[n]].find(o=>f.isInlineRequestParameter(o)&&t(o));if(r)return r}return null}function Hn(e,t){return Pe(e,n=>n.id===t)}function Bn(e,t){return Pe(e,n=>n.key===t)}function me(e,t){return e.successCriteria.find(n=>n.condition===t)}function Oe(e,t){for(const n of e.outputs)if(t(n))return{key:n.key,value:n.value}}function ye(e,t){return Oe(e,n=>n.id===t)}function Vn(e,t){return Oe(e,n=>n.key===t)}function Q(e){return e==null?"":typeof e=="string"?e:f.toCompactJson(e)}function ne(e,t){if(!e||t!==f.TextContentType.JSON)return e;try{return JSON.stringify(JSON.parse(e),null,2)}catch{return e}}const zn={update_security:jn,update_step:Ln};function _e(e,t){const n=f.useAtomValue(f.collectionsAtom),r=f.useAtomValue(f.activeTabAtom),o=h.useMemo(()=>{const u=e?zn[e]:void 0;if(!u)return[];try{return u({collections:n,activeTab:r,input:t})}catch(p){return console.error("Unable to build change previews",p),[]}},[e,n,r,t]),[s,a]=h.useState(()=>Object.fromEntries(o.map(u=>[u.id,u.included]))),c=h.useMemo(()=>o.map(u=>({...u,included:s[u.id]??u.included})),[o,s]),d=h.useCallback(u=>{a(typeof u=="function"?p=>{const v=o.map(g=>({...g,included:p[g.id]??g.included}));return Object.fromEntries(u(v).map(g=>[g.id,g.included]))}:Object.fromEntries(u.map(p=>[p.id,p.included])))},[o]);return{previews:c,setPreviews:d}}function $n({toolCallId:e,toolName:t,input:n,onApprove:r,onDeny:o}){const{updateMessages:s}=x.useAiConversationContext(),{previews:a,setPreviews:c}=_e(t,n),{includedCount:d,totalCount:u}=h.useMemo(()=>({includedCount:a.filter(m=>m.included).length,totalCount:a.length}),[a]),{approveLabel:p,denyLabel:v}=h.useMemo(()=>Gt(t,n),[t,n]),g=h.useCallback(()=>{s(m=>{const b=[];for(let C=0;C<m.length;C++){const A=m[C],{parts:y}=A,S=A.role==="assistant",R=y.some(P=>Se(P,e));if(S&&R){const P=Yt(A,e,a);b.push({index:C,message:P})}}return b}),r()},[a,r,s,e]),w=h.useCallback(m=>{c(b=>b.map((C,A)=>A===m?{...C,included:!C.included}:C))},[c]);return i.jsxs(Fn,{children:[i.jsx(Le,{toolName:t,input:n}),a.length?i.jsx(qn,{children:i.jsx(ke,{previews:a,handleToggle:w})}):null,a.length?i.jsx(f.Divider,{}):null,i.jsxs(Gn,{children:[u>1?i.jsxs(Un,{children:[d," of ",u," selected"]}):null,i.jsx(Wn,{size:"small",variant:"secondary",onClick:o,children:v}),i.jsx(Yn,{size:"small",variant:"primary",onClick:g,disabled:u>0?d===0:!1,children:p})]})]})}const Fn=l.default.div`
|
|
210
|
+
display: flex;
|
|
211
|
+
color: var(--text-color-primary);
|
|
212
|
+
flex-direction: column;
|
|
213
|
+
gap: var(--spacing-xs);
|
|
214
|
+
width: 100%;
|
|
215
|
+
min-width: 0;
|
|
216
|
+
border-radius: var(--border-radius-md, 10px);
|
|
217
|
+
border: 1px solid var(--border-color-secondary);
|
|
218
|
+
background: var(--layer-color);
|
|
219
|
+
line-height: var(--line-height-sm);
|
|
220
|
+
`,qn=l.default.div`
|
|
221
|
+
display: flex;
|
|
222
|
+
flex-direction: column;
|
|
223
|
+
gap: var(--spacing-xs);
|
|
224
|
+
min-width: 0;
|
|
225
|
+
`,Gn=l.default.div`
|
|
226
|
+
display: flex;
|
|
227
|
+
flex-wrap: wrap;
|
|
228
|
+
justify-content: flex-end;
|
|
229
|
+
align-items: center;
|
|
230
|
+
padding: 0 var(--spacing-sm) var(--spacing-xs) var(--spacing-sm);
|
|
231
|
+
gap: var(--spacing-xxs);
|
|
232
|
+
`,Un=l.default.span`
|
|
233
|
+
flex: 1;
|
|
234
|
+
font-size: var(--font-size-sm);
|
|
235
|
+
font-weight: var(--font-weight-regular);
|
|
236
|
+
line-height: var(--line-height-sm);
|
|
237
|
+
color: var(--text-color-secondary);
|
|
238
|
+
`,Wn=l.default(E.Button)`
|
|
239
|
+
background: none;
|
|
240
|
+
`,Yn=l.default(E.Button)`
|
|
241
|
+
border: 1px solid var(--button-bg-color);
|
|
242
|
+
padding-top: 0;
|
|
243
|
+
padding-bottom: 0;
|
|
244
|
+
&:disabled {
|
|
245
|
+
border: 1px solid var(--button-border-color-disabled);
|
|
246
|
+
}
|
|
247
|
+
`;function Kn({approvalId:e,toolCallId:t,toolName:n,input:r}){const{addToolApprovalResponse:o}=x.useAiConversationContext(),s=h.useCallback(()=>{o({id:e,approved:!0})},[e,o]),a=h.useCallback(()=>{o({id:e,approved:!1})},[e,o]);return i.jsx($n,{onApprove:s,onDeny:a,toolCallId:t,toolName:n,input:r})}function Jn({toolName:e,toolCallId:t,input:n,isDenied:r,messageMetadata:o,onUndo:s}){const a=h.useMemo(()=>Wt(o,t),[o,t]),{previews:c}=_e(a?void 0:e,n),d=h.useMemo(()=>{const g=a??c;if(r)return g.map(m=>({...m,included:!1}));const w=Ut(n);return g.map((m,b)=>({...m,included:w[b]??m.included}))},[a,c,n,r]);if(d.length===0)return null;const u=d.filter(g=>g.included).length,v=u===0?"Nothing applied":`${u} ${u===1?"change":"changes"} applied`;return i.jsxs(Xn,{children:[i.jsx(Le,{toolName:e,input:n}),i.jsx(Zn,{children:i.jsx(ke,{previews:d,readOnly:!0})}),i.jsx(f.Divider,{}),i.jsxs(Qn,{children:[i.jsx(er,{children:v}),s?i.jsx(tr,{size:"small",variant:"outlined",onClick:s,children:"Undo"}):null]})]})}const Xn=l.default.div`
|
|
248
|
+
display: flex;
|
|
249
|
+
color: var(--text-color-primary);
|
|
250
|
+
flex-direction: column;
|
|
251
|
+
width: 100%;
|
|
252
|
+
min-width: 0;
|
|
253
|
+
border-radius: var(--border-radius-md, 10px);
|
|
254
|
+
border: 1px solid var(--border-color-secondary);
|
|
255
|
+
background: var(--layer-color);
|
|
256
|
+
line-height: var(--line-height-sm);
|
|
257
|
+
`,Zn=l.default.div`
|
|
258
|
+
display: flex;
|
|
259
|
+
flex-direction: column;
|
|
260
|
+
min-width: 0;
|
|
261
|
+
`,Qn=l.default.div`
|
|
262
|
+
display: flex;
|
|
263
|
+
justify-content: space-between;
|
|
264
|
+
align-items: center;
|
|
265
|
+
padding: var(--spacing-xs) var(--spacing-sm);
|
|
266
|
+
gap: var(--spacing-xs);
|
|
267
|
+
`,er=l.default.span`
|
|
268
|
+
font-size: var(--font-size-sm);
|
|
269
|
+
font-weight: var(--font-weight-regular);
|
|
270
|
+
line-height: var(--line-height-sm);
|
|
271
|
+
color: var(--text-color-secondary);
|
|
272
|
+
`,tr=l.default(E.Button)`
|
|
273
|
+
padding-top: 0;
|
|
274
|
+
padding-bottom: 0;
|
|
275
|
+
`;function nr({items:e,isLast:t}){const[n,r]=h.useState(t),o=h.useCallback(()=>{r(a=>!a)},[]),s=h.useMemo(()=>e.filter(a=>a.kind==="action"),[e]);return i.jsxs(or,{children:[i.jsxs(ir,{type:"button",onClick:o,"aria-expanded":n,children:[i.jsx(sr,{children:n?i.jsx(Qe.ChevronDownIcon,{size:"12px",color:"var(--icon-color-additional)"}):i.jsx(et.ChevronRightIcon,{size:"12px",color:"var(--icon-color-additional)"})}),i.jsxs(ar,{children:[s.length," ",s.length===1?"action":"actions"]})]}),n&&i.jsx(lr,{children:s.map((a,c)=>i.jsx(rr,{text:a.text},c))})]})}function rr({text:e}){return i.jsxs(cr,{children:[i.jsxs(dr,{children:[i.jsx(ur,{"aria-hidden":!0}),i.jsx(fr,{children:i.jsx(pr,{"aria-hidden":!0})}),i.jsx(Me,{"aria-hidden":!0})]}),i.jsx(hr,{children:e})]})}const or=l.default.div`
|
|
276
|
+
display: flex;
|
|
277
|
+
flex-direction: column;
|
|
278
|
+
width: 100%;
|
|
279
|
+
min-width: 0;
|
|
280
|
+
`,ir=l.default.button`
|
|
281
|
+
display: flex;
|
|
282
|
+
align-items: center;
|
|
283
|
+
cursor: pointer;
|
|
284
|
+
user-select: none;
|
|
285
|
+
width: fit-content;
|
|
286
|
+
padding: 0;
|
|
287
|
+
`,sr=l.default.span`
|
|
288
|
+
display: flex;
|
|
289
|
+
align-items: center;
|
|
290
|
+
flex-shrink: 0;
|
|
291
|
+
`,ar=l.default.span`
|
|
292
|
+
font-size: var(--font-size-sm);
|
|
293
|
+
font-weight: var(--font-weight-regular);
|
|
294
|
+
line-height: var(--line-height-sm);
|
|
295
|
+
color: var(--text-color-description);
|
|
296
|
+
`,lr=l.default.div`
|
|
297
|
+
display: flex;
|
|
298
|
+
flex-direction: column;
|
|
299
|
+
gap: 0;
|
|
300
|
+
`,Me=l.default.span`
|
|
301
|
+
display: block;
|
|
302
|
+
width: 1px;
|
|
303
|
+
flex-shrink: 0;
|
|
304
|
+
align-self: center;
|
|
305
|
+
background: var(--border-color-secondary);
|
|
306
|
+
flex: 1 1 auto;
|
|
307
|
+
min-height: 8px;
|
|
308
|
+
`,cr=l.default.div`
|
|
309
|
+
display: flex;
|
|
310
|
+
flex-direction: row;
|
|
311
|
+
align-items: stretch;
|
|
312
|
+
gap: var(--spacing-xxs);
|
|
313
|
+
min-width: 0;
|
|
314
|
+
|
|
315
|
+
&:last-child {
|
|
316
|
+
${Me} {
|
|
317
|
+
display: none;
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
`,dr=l.default.div`
|
|
321
|
+
display: flex;
|
|
322
|
+
flex-direction: column;
|
|
323
|
+
align-items: center;
|
|
324
|
+
box-sizing: border-box;
|
|
325
|
+
width: 12px;
|
|
326
|
+
flex: 0 0 auto;
|
|
327
|
+
align-self: stretch;
|
|
328
|
+
min-height: 0;
|
|
329
|
+
`,ur=l.default.span`
|
|
330
|
+
display: block;
|
|
331
|
+
width: 1px;
|
|
332
|
+
height: 4px;
|
|
333
|
+
flex: 0 0 auto;
|
|
334
|
+
flex-shrink: 0;
|
|
335
|
+
background: var(--border-color-secondary);
|
|
336
|
+
`,fr=l.default.div`
|
|
337
|
+
width: 12px;
|
|
338
|
+
height: 12px;
|
|
339
|
+
flex: 0 0 auto;
|
|
340
|
+
flex-shrink: 0;
|
|
341
|
+
display: flex;
|
|
342
|
+
align-items: center;
|
|
343
|
+
justify-content: center;
|
|
344
|
+
`,pr=l.default.span`
|
|
345
|
+
width: 4px;
|
|
346
|
+
height: 4px;
|
|
347
|
+
flex-shrink: 0;
|
|
348
|
+
border-radius: 50%;
|
|
349
|
+
box-sizing: border-box;
|
|
350
|
+
border: 1px solid var(--border-color-secondary);
|
|
351
|
+
background: transparent;
|
|
352
|
+
`,hr=l.default.span`
|
|
353
|
+
flex: 1;
|
|
354
|
+
min-width: 0;
|
|
355
|
+
align-self: flex-start;
|
|
356
|
+
font-size: var(--font-size-sm);
|
|
357
|
+
font-weight: var(--font-weight-regular);
|
|
358
|
+
line-height: var(--line-height-sm);
|
|
359
|
+
color: var(--text-color-helper);
|
|
360
|
+
`;function xr({items:e,messageMetadata:t}){return i.jsx(vr,{children:e.map((n,r)=>{if(n.kind==="reasoning-block"){const a=r===e.length-1;return i.jsx(nr,{items:n.items,isLast:a},n.key)}if(n.kind==="text")return i.jsx(gr,{rawMarkdown:n.text,workflowRunHistoryIds:n.workflowRunHistoryIds},n.key);const{part:o}=n,s=x.parseToolName(o.type);return s&&x.isApprovalRequested(o)?i.jsx(Kn,{approvalId:o.approval.id,toolCallId:o.toolCallId,toolName:s,input:o.input},n.key):s&&x.isApprovalSettled(o)?i.jsx(Jn,{toolName:s,toolCallId:o.toolCallId,input:o.input,isDenied:o.state==="output-denied",messageMetadata:t},n.key):null})})}function gr({rawMarkdown:e,workflowRunHistoryIds:t}){const n=je({workflowRunHistoryIds:t});return i.jsx(mr,{onClick:n,children:i.jsx(f.Markdown,{rawMarkdown:e,parser:f.markdownParserMarked})})}const vr=l.default.div`
|
|
361
|
+
display: flex;
|
|
362
|
+
flex-direction: column;
|
|
363
|
+
gap: var(--spacing-xs);
|
|
364
|
+
`,mr=l.default.div`
|
|
365
|
+
white-space: normal;
|
|
366
|
+
|
|
367
|
+
max-width: 100%;
|
|
368
|
+
overflow: hidden;
|
|
369
|
+
|
|
370
|
+
p:first-child {
|
|
371
|
+
margin-top: 0;
|
|
372
|
+
}
|
|
373
|
+
|
|
374
|
+
p:last-child {
|
|
375
|
+
margin-bottom: 0;
|
|
376
|
+
}
|
|
377
|
+
`,De=l.default.div`
|
|
378
|
+
font-family: var(--font-family-base);
|
|
379
|
+
font-size: var(--font-size-sm);
|
|
380
|
+
line-height: var(--line-height-sm);
|
|
381
|
+
color: var(--text-color-primary);
|
|
382
|
+
`,q=l.default.div`
|
|
383
|
+
width: var(--search-ai-thinking-dot-size);
|
|
384
|
+
height: var(--search-ai-thinking-dot-size);
|
|
385
|
+
border-radius: 50%;
|
|
386
|
+
background: var(--search-ai-thinking-dot-color);
|
|
387
|
+
animation: bounce 1.4s infinite ease-in-out;
|
|
388
|
+
|
|
389
|
+
&:nth-child(1) {
|
|
390
|
+
animation-delay: -0.32s;
|
|
391
|
+
}
|
|
392
|
+
|
|
393
|
+
&:nth-child(2) {
|
|
394
|
+
animation-delay: -0.16s;
|
|
395
|
+
}
|
|
396
|
+
|
|
397
|
+
&:nth-child(3) {
|
|
398
|
+
animation-delay: 0s;
|
|
399
|
+
}
|
|
400
|
+
|
|
401
|
+
@keyframes bounce {
|
|
402
|
+
0%,
|
|
403
|
+
80%,
|
|
404
|
+
100% {
|
|
405
|
+
opacity: 0.2;
|
|
406
|
+
transform: scale(0.8);
|
|
407
|
+
}
|
|
408
|
+
40% {
|
|
409
|
+
opacity: 1;
|
|
410
|
+
transform: scale(1);
|
|
411
|
+
}
|
|
412
|
+
}
|
|
413
|
+
`;function yr(){return i.jsxs(wr,{children:[i.jsx(q,{}),i.jsx(q,{}),i.jsx(q,{})]})}const wr=l.default.div`
|
|
414
|
+
display: flex;
|
|
415
|
+
align-items: center;
|
|
416
|
+
justify-content: space-between;
|
|
417
|
+
width: 24px;
|
|
418
|
+
height: 24px;
|
|
419
|
+
`;function br(){return i.jsxs(Cr,{children:[i.jsx(yr,{}),i.jsx(Ar,{children:"Thinking"})]})}const Cr=l.default.div`
|
|
420
|
+
display: flex;
|
|
421
|
+
align-items: center;
|
|
422
|
+
gap: var(--spacing-xxs);
|
|
423
|
+
`,Ar=l.default.span`
|
|
424
|
+
font-family: var(--font-family-base);
|
|
425
|
+
font-size: var(--font-size-sm);
|
|
426
|
+
line-height: var(--line-height-sm);
|
|
427
|
+
color: var(--text-color-helper);
|
|
428
|
+
`;function Tr({items:e}){return i.jsx(h.Fragment,{children:e.map(t=>t.kind!=="text"?null:i.jsx(De,{children:t.text},t.key))})}const Ir="Something went wrong. Please try again.";function jr(e){const t=e?.message?.trim();return t||Ir}function Sr({message:e,isLastMessage:t}){const{chatStatus:n,chatError:r}=x.useAiConversationContext(),{role:o,parts:s}=e,a=o===M.MESSAGE_ROLE.ASSISTANT,c=h.useMemo(()=>x.getContentItems(s),[s]),d=c.length>0,u=n==="error"&&t&&a&&!d;return!d&&!u?null:i.jsx(Ne,{$role:o,children:i.jsx(Er,{isFailedEmptyAssistant:u,chatError:r,isAssistant:a,contentItems:c,messageMetadata:e.metadata})})}function kr(){return i.jsx(Ne,{$role:M.MESSAGE_ROLE.ASSISTANT,children:i.jsx(se,{children:i.jsx(br,{})})})}function Er({isFailedEmptyAssistant:e,chatError:t,isAssistant:n,contentItems:r,messageMetadata:o}){return e?i.jsx(se,{children:i.jsx(De,{children:jr(t)})}):i.jsx(se,{children:n?i.jsx(xr,{items:r,messageMetadata:o}):i.jsx(Tr,{items:r})})}const Ne=l.default.div`
|
|
429
|
+
display: flex;
|
|
430
|
+
flex-direction: column;
|
|
431
|
+
padding: var(--spacing-xs) var(--spacing-sm);
|
|
432
|
+
gap: var(--spacing-xxs);
|
|
433
|
+
min-width: 0;
|
|
434
|
+
width: ${({$role:e})=>e===M.MESSAGE_ROLE.ASSISTANT?"100%":"fit-content"};
|
|
435
|
+
border-radius: ${({$role:e})=>e===M.MESSAGE_ROLE.USER?"6px 0px 6px 6px":"0px 6px 6px 6px"};
|
|
436
|
+
background: ${({$role:e})=>e===M.MESSAGE_ROLE.USER?"var(--replay-ai-user-message-gradient)":"transparent"};
|
|
437
|
+
border: none;
|
|
438
|
+
color: var(--text-color-primary);
|
|
439
|
+
box-sizing: border-box;
|
|
440
|
+
word-wrap: break-word;
|
|
441
|
+
white-space: pre-wrap;
|
|
442
|
+
max-width: 100%;
|
|
443
|
+
`,se=l.default.div`
|
|
444
|
+
display: flex;
|
|
445
|
+
flex-direction: column;
|
|
446
|
+
gap: var(--spacing-xxs);
|
|
447
|
+
min-width: 0;
|
|
448
|
+
width: 100%;
|
|
449
|
+
`;function Lr(){const{messages:e,isStreaming:t}=x.useAiConversationContext(),n=e.at(-1),r=h.useMemo(()=>{const o=n?.role===M.MESSAGE_ROLE.ASSISTANT,s=n?.parts.at(-1)?.type==="text";return t&&!(o&&s)},[t,n?.parts,n?.role]);return i.jsxs(Rr,{children:[e.map((o,s)=>i.jsx(we,{$role:o.role,children:i.jsx(be,{$role:o.role,children:i.jsx(Sr,{message:o,isLastMessage:s===e.length-1})})},o.id)),r&&i.jsx(we,{$role:M.MESSAGE_ROLE.ASSISTANT,children:i.jsx(be,{$role:M.MESSAGE_ROLE.ASSISTANT,children:i.jsx(kr,{})})})]})}const Rr=l.default.div`
|
|
450
|
+
display: flex;
|
|
451
|
+
flex-direction: column;
|
|
452
|
+
gap: var(--spacing-xs);
|
|
453
|
+
width: 100%;
|
|
454
|
+
`,we=l.default.div`
|
|
455
|
+
display: flex;
|
|
456
|
+
width: 100%;
|
|
457
|
+
justify-content: ${({$role:e})=>e===M.MESSAGE_ROLE.USER?"flex-end":"flex-start"};
|
|
458
|
+
`,be=l.default.div`
|
|
459
|
+
display: flex;
|
|
460
|
+
flex-direction: column;
|
|
461
|
+
align-items: ${({$role:e})=>e===M.MESSAGE_ROLE.USER?"flex-end":"stretch"};
|
|
462
|
+
gap: var(--spacing-xs);
|
|
463
|
+
min-width: 0;
|
|
464
|
+
width: 100%;
|
|
465
|
+
max-width: 100%;
|
|
466
|
+
`;function Pr(e){const t=h.useRef(void 0);return h.useEffect(()=>{t.current=e}),t.current}const He=l.default.div`
|
|
467
|
+
display: flex;
|
|
468
|
+
flex-direction: column;
|
|
469
|
+
flex: 1;
|
|
470
|
+
width: 100%;
|
|
471
|
+
overflow: auto;
|
|
472
|
+
padding: var(--spacing-xs);
|
|
473
|
+
`,Or=e=>i.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 14 14",fill:"none",...e,children:[i.jsx("path",{d:"M12.1683 8.65224C13.4439 7.91782 13.4439 6.08176 12.1683 5.34733L8.48891 3.22903L5.13033 6.57817C5.03961 6.66863 5.03961 6.8153 5.13033 6.90577L8.81674 10.5818L12.1683 8.65224Z",fill:"url(#replay-icon-gradient)"}),i.jsx("path",{d:"M7.56707 11.3013L3.81522 13.4613C2.53957 14.1957 0.945007 13.2777 0.945007 11.8088L0.945008 2.19072C0.945008 0.721872 2.53957 -0.196157 3.81522 0.538267L7.23924 2.50957L4.14475 5.59536C3.5097 6.22861 3.5097 7.25532 4.14475 7.88858L7.56707 11.3013Z",fill:"url(#replay-icon-gradient)"}),i.jsx("defs",{children:i.jsxs("linearGradient",{id:"replay-icon-gradient",x1:"12.0947",y1:"10.9627",x2:"1.65018",y2:"0.120816",gradientUnits:"userSpaceOnUse",children:[i.jsx("stop",{stopColor:"#C361FF"}),i.jsx("stop",{offset:"0.411322",stopColor:"#9461FF"}),i.jsx("stop",{offset:"0.73777",stopColor:"#207DFF"}),i.jsx("stop",{offset:"1",stopColor:"#1DA8F6"})]})})]}),_r=l.default(Or)`
|
|
474
|
+
height: ${({size:e})=>e||"14px"};
|
|
475
|
+
width: ${({size:e})=>e||"14px"};
|
|
476
|
+
`;function Mr(e){const t="var(--font-size-base)";switch(e){case f.REUNITE_AI_PROVIDER:return i.jsx(_r,{size:t});case f.AI_PROVIDERS.OPENAI:return i.jsx(it.ChatGptIcon,{size:t,color:"var(--text-color-primary)"});case f.AI_PROVIDERS.GEMINI:return i.jsx(st.GeminiIcon,{size:t});case f.AI_PROVIDERS.ANTHROPIC:return i.jsx(at.ClaudeIcon,{size:t,color:"var(--replay-claude-icon-color)"})}}function Dr({models:e,selectedModelId:t,placement:n,onModelSelect:r,onSettingsOpen:o}){const s=e.find(v=>v.id===t),a=s?.label??"Replay AI",c=s?.id,d=e.filter(v=>v.provider===f.REUNITE_AI_PROVIDER),u=e.filter(v=>v.provider!==f.REUNITE_AI_PROVIDER),p=d.length>0&&u.length>0;return i.jsx(Vr,{children:i.jsx(zr,{trigger:i.jsx(Nr,{label:a}),placement:n,alignment:"start",withArrow:!0,children:i.jsxs($r,{children:[i.jsxs(Gr,{children:[d.map(v=>i.jsx(Ce,{model:v,activeModelId:c,onModelSelect:r},v.id)),p&&i.jsx(Ae,{"aria-hidden":!0}),u.length>0&&i.jsx(i.Fragment,{children:u.map(v=>i.jsx(Ce,{model:v,activeModelId:c,onModelSelect:r},v.id))})]}),o&&e.length>0&&i.jsx(Ae,{"aria-hidden":!0}),o&&i.jsx(Ur,{prefix:i.jsx(ot.SettingsCogIcon,{size:"var(--font-size-base)",color:"var(--text-color-secondary)"}),content:"Manage models",onAction:()=>o("ai-providers")})]})})})}function Nr({label:e,icon:t,onClick:n,onKeyDown:r}){return i.jsxs(Hr,{onClick:n,onKeyDown:r,children:[i.jsx(Br,{children:e}),t]})}function Ce({model:e,activeModelId:t,onModelSelect:n}){const r=e.id===t;return i.jsx(Ie.DropdownMenuItem,{prefix:Mr(e.provider),suffix:r?i.jsx(qr,{size:"var(--font-size-base)",color:"var(--text-color-primary)"}):void 0,onAction:()=>n(e.id),active:r,children:i.jsx(Fr,{children:e.label})})}const Hr=l.default.div`
|
|
477
|
+
display: flex;
|
|
478
|
+
align-items: center;
|
|
479
|
+
min-width: 0;
|
|
480
|
+
gap: var(--spacing-xxs);
|
|
481
|
+
height: 24px;
|
|
482
|
+
padding: 0 var(--spacing-xs);
|
|
483
|
+
border-radius: var(--border-radius);
|
|
484
|
+
background: var(--bg-color-active);
|
|
485
|
+
cursor: pointer;
|
|
486
|
+
user-select: none;
|
|
487
|
+
|
|
488
|
+
&:hover {
|
|
489
|
+
background: var(--layer-color-active);
|
|
490
|
+
}
|
|
491
|
+
`,Br=l.default.span`
|
|
492
|
+
overflow: hidden;
|
|
493
|
+
text-overflow: ellipsis;
|
|
494
|
+
font-family: var(--font-family-base);
|
|
495
|
+
font-size: var(--font-size-base);
|
|
496
|
+
font-weight: var(--font-weight-regular);
|
|
497
|
+
line-height: var(--line-height-base);
|
|
498
|
+
color: var(--text-color-primary);
|
|
499
|
+
white-space: nowrap;
|
|
500
|
+
`,Vr=l.default.div`
|
|
501
|
+
--dropdown-menu-padding-top: 0;
|
|
502
|
+
|
|
503
|
+
min-width: 0;
|
|
504
|
+
flex: 1;
|
|
505
|
+
position: relative;
|
|
506
|
+
`,zr=l.default(tt.Dropdown)`
|
|
507
|
+
width: 100%;
|
|
508
|
+
min-width: 0;
|
|
509
|
+
flex: 1;
|
|
510
|
+
|
|
511
|
+
> :last-child {
|
|
512
|
+
width: 100%;
|
|
513
|
+
max-width: 200px;
|
|
514
|
+
}
|
|
515
|
+
`,$r=l.default(nt.DropdownMenu)`
|
|
516
|
+
--dropdown-menu-item-gap: calc(var(--spacing-unit) / 2);
|
|
517
|
+
--dropdown-menu-item-padding-vertical: var(--spacing-xxs);
|
|
518
|
+
--dropdown-menu-item-padding-horizontal: var(--spacing-xs);
|
|
519
|
+
|
|
520
|
+
padding: var(--spacing-xxs);
|
|
521
|
+
margin: 5px 0;
|
|
522
|
+
border-radius: var(--border-radius-lg);
|
|
523
|
+
background: var(--bg-color);
|
|
524
|
+
`,Fr=l.default.span`
|
|
525
|
+
flex: 1;
|
|
526
|
+
min-width: 0;
|
|
527
|
+
overflow: hidden;
|
|
528
|
+
text-overflow: ellipsis;
|
|
529
|
+
white-space: nowrap;
|
|
530
|
+
`,qr=l.default(rt.CheckmarkIcon)`
|
|
531
|
+
margin-left: var(--spacing-xxs);
|
|
532
|
+
`,Ae=l.default.li`
|
|
533
|
+
flex-shrink: 0;
|
|
534
|
+
list-style: none;
|
|
535
|
+
width: 100%;
|
|
536
|
+
height: 1px;
|
|
537
|
+
margin: 0;
|
|
538
|
+
background: var(--border-color-secondary);
|
|
539
|
+
`,Gr=l.default.li`
|
|
540
|
+
display: flex;
|
|
541
|
+
flex-direction: column;
|
|
542
|
+
gap: var(--dropdown-menu-item-gap);
|
|
543
|
+
list-style: none;
|
|
544
|
+
min-height: 0;
|
|
545
|
+
overflow-y: auto;
|
|
546
|
+
`,Ur=l.default(Ie.DropdownMenuItem)`
|
|
547
|
+
flex-shrink: 0;
|
|
548
|
+
`,Wr=280;function Be({pinToBottom:e=!1}){const[t,n]=h.useState(()=>ae.getSemanticSearchService().getIndexingActivityState().inProgress);return h.useEffect(()=>ae.getSemanticSearchService().subscribe("indexing-activity",o=>{n(o.inProgress)}),[]),i.jsx(Yr,{$open:t,$pinToBottom:e,"aria-hidden":!t,children:i.jsx(B.Tooltip,{tip:"We're building a search index of your project. Until it's ready, the assistant may need more context in each reply to stay accurate, which can use more tokens.",placement:"top",width:"240px",arrowPosition:"left",children:i.jsxs(Kr,{role:"status","aria-live":"polite","aria-label":"Indexing in progress...",children:[i.jsx("div",{children:i.jsx(q,{})}),i.jsx(Jr,{children:"Indexing in progress..."})]})})})}const Yr=l.default.div`
|
|
549
|
+
width: 100%;
|
|
550
|
+
display: block;
|
|
551
|
+
|
|
552
|
+
${({$pinToBottom:e})=>e?X.css`
|
|
553
|
+
order: 1;
|
|
554
|
+
margin-top: auto;
|
|
555
|
+
`:X.css`
|
|
556
|
+
position: absolute;
|
|
557
|
+
left: 0;
|
|
558
|
+
right: 0;
|
|
559
|
+
bottom: 100%;
|
|
560
|
+
z-index: 1;
|
|
561
|
+
margin-bottom: 4px;
|
|
562
|
+
`}
|
|
563
|
+
|
|
564
|
+
opacity: ${({$open:e})=>e?1:0};
|
|
565
|
+
transition: opacity ${Wr}ms ease-out;
|
|
566
|
+
pointer-events: ${({$open:e})=>e?"auto":"none"};
|
|
567
|
+
|
|
568
|
+
${q} {
|
|
569
|
+
animation-play-state: ${({$open:e})=>e?"running":"paused"};
|
|
570
|
+
}
|
|
571
|
+
`,Kr=l.default.div`
|
|
572
|
+
width: 100%;
|
|
573
|
+
display: flex;
|
|
574
|
+
align-items: center;
|
|
575
|
+
gap: var(--spacing-xxs);
|
|
576
|
+
background: var(--layer-color);
|
|
577
|
+
padding: 2px var(--spacing-sm);
|
|
578
|
+
border-radius: 4px;
|
|
579
|
+
font-size: var(--font-size-sm);
|
|
580
|
+
line-height: 12px;
|
|
581
|
+
`,Jr=l.default.div`
|
|
582
|
+
flex: 1;
|
|
583
|
+
min-width: 0;
|
|
584
|
+
`;function Xr(){const{chatId:e,isLoading:t,pendingComposerPreset:n,clearPendingComposerPreset:r,availableModels:o,selectedModelId:s,selectModel:a,onSettingsOpen:c}=f.useAiChatContext(),{messages:d,isStreaming:u,sendMessage:p,stopGeneration:v}=x.useAiConversationContext(),{isOpen:g}=f.useAiPanel(),[w,m]=h.useState(""),b=h.useRef(null),C=h.useRef(null),A=h.useRef(!0),y=d.length>0,S=t||y,R=Pr(d.length),z=R!==void 0&&R>0&&!y,D=h.useCallback((k="smooth")=>{C.current&&C.current.scrollTo({top:C.current.scrollHeight,behavior:k})},[]),U=h.useCallback(()=>{const k=C.current;if(!k)return;k.scrollHeight-k.scrollTop-k.clientHeight<50&&(A.current=!0)},[]);h.useEffect(()=>{const k=C.current;if(!k)return;const te=qe=>{qe.deltaY<0&&(A.current=!1)};return k.addEventListener("wheel",te,{passive:!0}),()=>k.removeEventListener("wheel",te)},[]);const $e=h.useCallback(async()=>{w&&(m(""),A.current=!0,await p(w),b.current&&requestAnimationFrame(()=>b.current?.focus()))},[p,w]);h.useEffect(()=>{g&&(b.current&&b.current.focus(),A.current=!0,D())},[g,d.length,D]),h.useEffect(()=>{u&&A.current&&D()}),h.useEffect(function(){g&&b.current&&(b.current.focus(),D("instant"))},[e,g,D]),h.useEffect(function(){!g||n===null||(m(n),r())},[g,n,r]);const Fe=i.jsx(xt,{value:w,onValueChange:m,onSubmit:$e,isStreaming:u,onStop:v,textareaRef:b,modelSelector:i.jsx(Dr,{models:o,selectedModelId:s,placement:y?"top":"bottom",onModelSelect:a,onSettingsOpen:c})});return i.jsxs(He,{children:[i.jsx(Zr,{ref:C,$isExpanded:S,$isAnimated:u||z,onScroll:U,children:t?i.jsx(eo,{children:i.jsx(f.StyledSpinner,{size:"20px"})}):i.jsx(Lr,{})}),i.jsxs(Qr,{$isExpanded:!S,children:[i.jsx(Be,{pinToBottom:!S}),Fe]})]})}const Zr=l.default.div`
|
|
585
|
+
flex: ${({$isExpanded:e})=>e?1:0};
|
|
586
|
+
width: 100%;
|
|
587
|
+
overflow: auto;
|
|
588
|
+
padding-bottom: ${e=>e.$isExpanded?"var(--spacing-xs)":"0"};
|
|
589
|
+
transition-property: flex;
|
|
590
|
+
transition-duration: ${e=>e.$isAnimated?"var(--replay-transition-duration)":"0s"};
|
|
591
|
+
transition-timing-function: var(--replay-transition-timing-function);
|
|
592
|
+
`,Qr=l.default.div`
|
|
593
|
+
position: relative;
|
|
594
|
+
display: flex;
|
|
595
|
+
flex-direction: column;
|
|
596
|
+
width: 100%;
|
|
597
|
+
flex: ${({$isExpanded:e})=>e?1:0};
|
|
598
|
+
`,eo=l.default.div`
|
|
599
|
+
display: flex;
|
|
600
|
+
justify-content: center;
|
|
601
|
+
height: 100%;
|
|
602
|
+
padding-top: var(--spacing-lg);
|
|
603
|
+
`,_={TODAY:"today",YESTERDAY:"yesterday",LAST_WEEK:"last_week",LAST_MONTH:"last_month",OLDER:"older"},to={[_.TODAY]:"Today",[_.YESTERDAY]:"Yesterday",[_.LAST_WEEK]:"Last 7 days",[_.LAST_MONTH]:"Last 30 days",[_.OLDER]:"Older"};function no(e,t=Date.now()){const n=f.dayjs(e).startOf("day"),r=f.dayjs(t).startOf("day"),o=f.dayjs(t).subtract(1,"day").startOf("day"),s=f.dayjs(t).subtract(7,"day").startOf("day"),a=f.dayjs(t).subtract(30,"day").startOf("day");return n.isSame(r,"day")?_.TODAY:n.isSame(o,"day")?_.YESTERDAY:!n.isBefore(s,"day")&&n.isBefore(o,"day")?_.LAST_WEEK:!n.isBefore(a,"day")&&n.isBefore(s,"day")?_.LAST_MONTH:_.OLDER}function ro(e){const t=[];for(const n of e){const r=no(n.updatedAt),o=t[t.length-1];!o||o.bucket!==r?t.push({bucket:r,chats:[n]}):o.chats.push(n)}return t}function oo(e){const{scrollRef:t,sentinelRef:n,hasNextPage:r,isFetchingNextPage:o,fetchNextPage:s,observerResetKey:a}=e;h.useLayoutEffect(()=>{const c=t.current,d=n.current;if(!c||!d)return;const u=new IntersectionObserver(p=>{const v=p[0];v&&v.isIntersecting&&r&&(o||s())},{root:c,rootMargin:"80px"});return u.observe(d),()=>{u.disconnect()}},[a,s,r,o,t,n])}const Ve=l.default(He)`
|
|
604
|
+
gap: var(--spacing-xxs);
|
|
605
|
+
user-select: none;
|
|
606
|
+
`,io=l.default.div`
|
|
607
|
+
display: flex;
|
|
608
|
+
flex-direction: column;
|
|
609
|
+
gap: var(--spacing-xs);
|
|
610
|
+
`,so=l.default.div`
|
|
611
|
+
display: flex;
|
|
612
|
+
flex-direction: column;
|
|
613
|
+
gap: var(--spacing-xxs);
|
|
614
|
+
`,ao=l.default(Ve)`
|
|
615
|
+
display: flex;
|
|
616
|
+
flex-grow: 1;
|
|
617
|
+
align-items: center;
|
|
618
|
+
flex-direction: column;
|
|
619
|
+
padding: var(--spacing-md);
|
|
620
|
+
`,lo=l.default.div`
|
|
621
|
+
display: flex;
|
|
622
|
+
flex-grow: 1;
|
|
623
|
+
align-items: center;
|
|
624
|
+
justify-content: center;
|
|
625
|
+
`,co=l.default.div`
|
|
626
|
+
display: flex;
|
|
627
|
+
flex-direction: column;
|
|
628
|
+
align-items: center;
|
|
629
|
+
max-width: 75%;
|
|
630
|
+
gap: var(--spacing-xxs);
|
|
631
|
+
`,uo=l.default.div`
|
|
632
|
+
display: flex;
|
|
633
|
+
justify-content: center;
|
|
634
|
+
padding: var(--spacing-xs);
|
|
635
|
+
`,fo=l.default(G.Typography)`
|
|
636
|
+
padding-left: var(--spacing-xs);
|
|
637
|
+
font-size: var(--font-size-sm);
|
|
638
|
+
color: var(--color-warm-grey-7);
|
|
639
|
+
`,po=l.default.div`
|
|
640
|
+
display: flex;
|
|
641
|
+
flex-grow: 1;
|
|
642
|
+
|
|
643
|
+
.tooltip-expanded {
|
|
644
|
+
flex-grow: 1;
|
|
645
|
+
min-width: 0;
|
|
646
|
+
}
|
|
647
|
+
`,ho=l.default.div`
|
|
648
|
+
display: flex;
|
|
649
|
+
align-items: center;
|
|
650
|
+
justify-content: space-between;
|
|
651
|
+
flex-grow: 1;
|
|
652
|
+
min-width: 0;
|
|
653
|
+
border-radius: var(--border-radius);
|
|
654
|
+
padding: calc(var(--spacing-xxs) / 2) var(--spacing-xs);
|
|
655
|
+
gap: calc(var(--spacing-xxs) * 2.5);
|
|
656
|
+
cursor: pointer;
|
|
657
|
+
|
|
658
|
+
${E.Button} {
|
|
659
|
+
display: none;
|
|
660
|
+
}
|
|
661
|
+
|
|
662
|
+
&:focus-within,
|
|
663
|
+
&:hover {
|
|
664
|
+
background-color: var(--color-hover-base);
|
|
665
|
+
|
|
666
|
+
${E.Button} {
|
|
667
|
+
display: inline-flex;
|
|
668
|
+
}
|
|
669
|
+
}
|
|
670
|
+
`,xo=l.default(G.Typography)`
|
|
671
|
+
overflow: hidden;
|
|
672
|
+
white-space: nowrap;
|
|
673
|
+
text-overflow: ellipsis;
|
|
674
|
+
`,go=l.default.div`
|
|
675
|
+
height: 1px;
|
|
676
|
+
flex-shrink: 0;
|
|
677
|
+
`;function vo(e){const{chat:t,onSelect:n,onRemove:r}=e;return i.jsx(po,{children:i.jsx(B.Tooltip,{tip:f.dayjs(t.updatedAt).format("MMM DD, YYYY, hh:mm:ss A"),className:"expanded",children:i.jsxs(ho,{role:"button",onClick:()=>n?.(t.id),children:[i.jsx(xo,{children:t.title??"New chat"}),i.jsx(E.Button,{variant:"ghost",size:"small",tone:"danger",icon:i.jsx(lt.TrashCanIcon,{}),onClick:o=>{o.stopPropagation(),r?.(t.id)}})]})})})}function mo(e){const{group:t,onChatSelect:n,onChatRemove:r}=e;return i.jsxs(so,{children:[i.jsx(fo,{children:to[t.bucket]}),t.chats.map(o=>i.jsx(vo,{chat:o,onSelect:n,onRemove:r},o.id))]})}function yo(){return i.jsx(lo,{children:i.jsxs(co,{children:[i.jsx(G.Typography,{textAlign:"center",fontWeight:"var(--font-weight-semibold)",children:"No chat history"}),i.jsx(G.Typography,{textAlign:"center",children:"Ask questions or let the assistant take action for you."})]})})}function wo(){return i.jsx(ao,{children:i.jsx(f.StyledSpinner,{})})}const bo=50;function Co(e){const{onChatSelect:t,onChatRemove:n}=e,r=h.useRef(null),o=h.useRef(null),{data:s,isPending:a,hasNextPage:c,isFetchingNextPage:d,fetchNextPage:u}=x.useInfiniteChatHistory(bo),p=h.useMemo(()=>(s?.pages??[]).flatMap(g=>g.items),[s?.pages]),v=h.useMemo(()=>ro(p),[p]);return oo({scrollRef:r,sentinelRef:o,hasNextPage:c,isFetchingNextPage:d,fetchNextPage:u,observerResetKey:s?.pages.length}),a&&!s?i.jsx(wo,{}):p.length===0?i.jsx(yo,{}):i.jsxs(Ve,{ref:r,children:[i.jsx(io,{children:v.map(g=>i.jsx(mo,{group:g,onChatSelect:t,onChatRemove:n},`${g.bucket}-${g.chats[0]?.id??""}`))}),c&&i.jsx(go,{ref:o,"aria-hidden":!0}),d&&i.jsx(uo,{children:i.jsx(f.StyledSpinner,{})})]})}function Ao(){const e=h.useRef(null),[t,n]=h.useState(!1);return h.useLayoutEffect(()=>{if(!e.current)return;const r=e.current;function o(){n(r.scrollWidth>r.clientWidth)}o();const s=new ResizeObserver(o);return s.observe(r),()=>s.disconnect()},[]),{ref:e,value:t}}function To(e){const{ref:t,value:n}=Ao();return i.jsx(Io,{children:i.jsx(B.Tooltip,{tip:e.value,className:"no-overflow",disabled:!n,children:i.jsx(jo,{ref:t,children:e.value})})})}const Io=l.default.div`
|
|
678
|
+
overflow: hidden;
|
|
679
|
+
.tooltip-no-overflow {
|
|
680
|
+
overflow: hidden;
|
|
681
|
+
}
|
|
682
|
+
`,jo=l.default.div`
|
|
683
|
+
color: var(--text-color-primary);
|
|
684
|
+
font-size: var(--font-size-base);
|
|
685
|
+
line-height: var(--line-height-base);
|
|
686
|
+
overflow: hidden;
|
|
687
|
+
white-space: nowrap;
|
|
688
|
+
text-overflow: ellipsis;
|
|
689
|
+
user-select: none;
|
|
690
|
+
`;function ze(e){const{children:t,buttons:n}=e;return i.jsxs(So,{children:[i.jsx(ko,{children:t}),n&&i.jsx(Eo,{children:n})]})}const So=l.default.div`
|
|
691
|
+
display: flex;
|
|
692
|
+
flex-direction: row;
|
|
693
|
+
align-items: center;
|
|
694
|
+
padding: var(--spacing-xs);
|
|
695
|
+
gap: var(--spacing-xs);
|
|
696
|
+
width: 100%;
|
|
697
|
+
flex-shrink: 0;
|
|
698
|
+
`,ko=l.default.div`
|
|
699
|
+
display: flex;
|
|
700
|
+
align-items: center;
|
|
701
|
+
gap: var(--spacing-xs);
|
|
702
|
+
min-width: 0;
|
|
703
|
+
flex: 1;
|
|
704
|
+
`,Eo=l.default.div`
|
|
705
|
+
display: flex;
|
|
706
|
+
align-items: center;
|
|
707
|
+
gap: 2px;
|
|
708
|
+
`;function Lo(e){const{title:t,onCreateNewChat:n,onViewHistory:r,onClose:o}=e,s=i.jsxs(i.Fragment,{children:[i.jsx(B.Tooltip,{tip:"New chat",children:i.jsx(E.Button,{size:"small",variant:"text","aria-label":"Create new chat",onClick:n,icon:i.jsx(ut.NewChatIcon,{})})}),i.jsx(B.Tooltip,{tip:"Chat history",children:i.jsx(E.Button,{size:"small",variant:"text","aria-label":"View chat history",onClick:r,icon:i.jsx(ft.RecentlyViewedIcon,{})})}),i.jsx(Po,{children:i.jsx(f.VerticalDivider,{})}),i.jsx(B.Tooltip,{tip:"Close",arrowPosition:"left",children:i.jsx(E.Button,{variant:"text",size:"small","aria-label":"Close panel",icon:i.jsx(dt.CloseIcon,{}),onClick:o})})]});return i.jsxs(ze,{buttons:s,children:[i.jsx(Ro,{children:i.jsx(ct.AiStarsGradientIcon,{size:"14px"})}),i.jsx(To,{value:t})]})}const Ro=l.default.div`
|
|
709
|
+
display: flex;
|
|
710
|
+
`,Po=l.default.div`
|
|
711
|
+
display: flex;
|
|
712
|
+
height: 14px;
|
|
713
|
+
`;function Oo(e){const{onReturnFromHistory:t}=e;return i.jsxs(ze,{children:[i.jsx(E.Button,{size:"small",variant:"text","aria-label":"Return to chat",onClick:t,icon:i.jsx(pt.ArrowLeftIcon,{})}),i.jsx(_o,{children:i.jsx(G.Typography,{children:"Chat history"})})]})}const _o=l.default.div`
|
|
714
|
+
user-select: none;
|
|
715
|
+
`;function Mo(){const[e,t]=h.useState(x.AI_TAB.CHAT),n=f.useAiPanel(),r=f.useAiChatContext(),o=()=>{t(x.AI_TAB.HISTORY)},s=()=>{t(x.AI_TAB.CHAT)},a=async c=>{r.selectChat(c),t(x.AI_TAB.CHAT)};return i.jsxs(Do,{children:[i.jsxs(Te,{isActive:e===x.AI_TAB.CHAT,children:[i.jsx(Lo,{title:r.title,onCreateNewChat:r.createNewChat,onViewHistory:o,onClose:n.closePanel}),i.jsx(Xr,{})]}),i.jsxs(Te,{isActive:e===x.AI_TAB.HISTORY,isSliding:!0,children:[i.jsx(Oo,{onReturnFromHistory:s}),i.jsx(Co,{onChatSelect:a,onChatRemove:r.removeChat}),i.jsx(Ho,{children:i.jsx(Be,{pinToBottom:!0})})]})]})}function Te(e){const{children:t,isActive:n,isSliding:r=!1}=e,o=i.jsx(No,{inert:!n,children:t});return r?i.jsx(Bo,{$isExpanded:n,children:o}):o}const Do=l.default.div`
|
|
716
|
+
position: relative;
|
|
717
|
+
height: 100%;
|
|
718
|
+
overflow: clip;
|
|
719
|
+
`,No=l.default.div`
|
|
720
|
+
display: flex;
|
|
721
|
+
height: 100%;
|
|
722
|
+
flex-direction: column;
|
|
723
|
+
align-items: flex-start;
|
|
724
|
+
border-radius: var(--border-radius-md);
|
|
725
|
+
background: var(--bg-color);
|
|
726
|
+
margin-left: var(--spacing-xxs);
|
|
727
|
+
`,Ho=l.default.div`
|
|
728
|
+
display: flex;
|
|
729
|
+
flex-direction: column;
|
|
730
|
+
width: 100%;
|
|
731
|
+
padding: 0 var(--spacing-xs) var(--spacing-xs);
|
|
732
|
+
`,Bo=l.default.div`
|
|
733
|
+
position: absolute;
|
|
734
|
+
inset: 0;
|
|
735
|
+
transform: translateX(${e=>e.$isExpanded?"0%":"100%"});
|
|
736
|
+
transition-property: transform;
|
|
737
|
+
transition-duration: 400ms;
|
|
738
|
+
transition-timing-function: cubic-bezier(0.45, 0, 0.55, 1);
|
|
739
|
+
@media (prefers-reduced-motion: reduce) {
|
|
740
|
+
transition-duration: 0ms;
|
|
741
|
+
}
|
|
742
|
+
`;exports.AiPanel=Mo;
|