@e-llm-studio/requirement-ai 0.0.323 → 0.0.324
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/cjs/features/RequirementAI/hooks/useOnDemandCitation.js +1 -1
- package/dist/features/RequirementAI/hooks/useOnDemandCitation.js +1 -1
- package/dist/types/src/features/RequirementAI/hooks/useOnDemandCitation.d.ts +10 -1
- package/dist/types/src/features/RequirementAI/hooks/useOnDemandCitation.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var i=require("react");exports.useOnDemandCitation=function({baseCitations:t,requestId:n,user:o,bucketName:e,fetchOnDemandCitation:l,fileUrlList:a}){const
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var i=require("react");exports.useOnDemandCitation=function({baseCitations:t,requestId:n,user:o,bucketName:e,fetchOnDemandCitation:l,fileUrlList:a,getCitationEntryRequestId:u,formatLLMResponse:d}){const s=null!=t?t:{},c=i.useRef(s),[r,v]=i.useState(s);i.useEffect(()=>{v(i=>{var n,o;return{...t,file_citations:i.file_citations&&i.file_citations.length>0?i.file_citations:null!==(n=null==t?void 0:t.file_citations)&&void 0!==n?n:[],audio_citations:i.audio_citations&&i.audio_citations.length>0?i.audio_citations:null!==(o=null==t?void 0:t.audio_citations)&&void 0!==o?o:[]}})},[t]),i.useEffect(()=>{c.current=r},[r]);const _=i.useCallback((i,t)=>{var n,o,e,l,a,u,d,s,c,r,v,_,f,m,g,b,p,h,C,w,y,k,q,x;let D=null===(d=null===(u=null===(a=null===(l=null===(e=null===(o=null===(n=null==i?void 0:i.result)||void 0===n?void 0:n.citations)||void 0===o?void 0:o[0])||void 0===e?void 0:e.citations)||void 0===l?void 0:l[0])||void 0===a?void 0:a.customMetaData)||void 0===u?void 0:u.value)||void 0===d?void 0:d[0];if("audio_citation"===t||"audio_citations"===t)D=null===(c=null===(s=null==i?void 0:i.result)||void 0===s?void 0:s.citations)||void 0===c?void 0:c[0];else if("readfile_citations"===t||"readfile_citation"===t)D=null===(v=null===(r=null==i?void 0:i.result)||void 0===r?void 0:r.citations)||void 0===v?void 0:v[0];else if(t.includes("image_citation"))D=null===(f=null===(_=null==i?void 0:i.result)||void 0===_?void 0:_.citations)||void 0===f?void 0:f[0];else if(t.includes("web_citation")){const t=null===(C=null===(h=null===(p=null===(b=null===(g=null===(m=null==i?void 0:i.result)||void 0===m?void 0:m.citations)||void 0===g?void 0:g[0])||void 0===b?void 0:b.segments)||void 0===p?void 0:p[0])||void 0===h?void 0:h.urls)||void 0===C?void 0:C[0];D={citation_number:null===(k=null===(y=null===(w=null==i?void 0:i.result)||void 0===w?void 0:w.citations)||void 0===y?void 0:y[0])||void 0===k?void 0:k.citation_number,customMetadata:{screenshot_url:null==t?void 0:t.gcs_url,relevance_score:100,link:null==t?void 0:t.highlight_url,type:"web_citation"}}}else t.includes("scanned_doc_citation")&&(console.log("scanned_doc_citation responseData",i),D=null===(x=null===(q=null==i?void 0:i.result)||void 0===q?void 0:q.citations)||void 0===x?void 0:x[0]);return D},[]),f=i.useCallback((i,t,n)=>{v(o=>{const e="audio_citation"===t||"audio_citations"===t?"audio_citations":t.includes("image_citation")?"image_citations":"readfile_citations"===t||"readfile_citation"===t?"readfile_citations":t.includes("web_citation")?"web_citations":"file_citations",l=o[e]||[],a=l.findIndex(t=>String(t.citation_number)===i),u={...n,citation_number:i},d=a>=0?l.map((i,t)=>t===a?{...i,...u}:i):[...l,u];return{...o,[e]:d}})},[]);return{fetchOnDemandCitationHandler:i.useCallback((i,t,s,c,r)=>{const v=String(i);return new Promise((m,g)=>{(async()=>{var b,p,h,C,w,y,k,q,x,D;try{const g=null!==(b=null==o?void 0:o.accessToken)&&void 0!==b?b:"";if(!g)throw new Error("No auth token available for on-demand citation fetch");const I=null!==(p=sessionStorage.getItem("projectId"))&&void 0!==p?p:"";let O=c?[`${e}/projects/${I}/${c}`]:[];if(null==a?void 0:a.length){const i=a.find(i=>i.includes(null!=c?c:""));i&&(O=[i])}const N=d?d(t.reason,t.gap,Number(i)):"explanation"===r?null!==(h=null==t?void 0:t.explanation)&&void 0!==h?h:"":null!==(C=null==t?void 0:t.reason)&&void 0!==C?C:"",$=JSON.stringify({userName:null!==(w=null==o?void 0:o.name)&&void 0!==w?w:`${null!==(y=null==o?void 0:o.firstname)&&void 0!==y?y:""} ${null!==(k=null==o?void 0:o.lastname)&&void 0!==k?k:""}`.trim(),userEmailId:null!==(q=null==o?void 0:o.email)&&void 0!==q?q:""}),E=[{reason:N,title:"",description:"explanation"===r?null!==(x=null==t?void 0:t.explanation)&&void 0!==x?x:"":null!==(D=null==t?void 0:t.reason)&&void 0!==D?D:""}],S=function(i){switch(i){case"artifact_chunks":case"scanned_doc_citations":return"scanned_doc_citation";case"rai_artifact_citation":return"rai_artifact_citation";case"document_citations":return"file_citation";case"audio_citations":return"requirement_ai_audio_citation";case"web_citations":return"web_citation";case"image_citations":return"requirement_ai_image_citation";default:return i}}(s);console.log("[useOnDemandCitation] fetching citation",{key:v,citationType:s,requestCitationType:S,requestId:n,files:O});const M=u?null==u?void 0:u(Number(i)):void 0,R=await l(M||n,S,i,N,g,E,O,$,c),j=_(R,s);j||console.error(`Failed to resolve on-demand citation ${v}`),j&&f(v,s,j),m(j)}catch(i){console.error("[useOnDemandCitation] error for citation",v,i),g(i)}})()})},[n,o,a]),libraryCitationsRef:c,libraryCitations:r}};
|
|
2
2
|
//# sourceMappingURL=useOnDemandCitation.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{useRef as i,useState as t,useEffect as n,useCallback as o}from"react";function l({baseCitations:l,requestId:e,user:a,bucketName:d,fetchOnDemandCitation:u,fileUrlList:c}){const
|
|
1
|
+
import{useRef as i,useState as t,useEffect as n,useCallback as o}from"react";function l({baseCitations:l,requestId:e,user:a,bucketName:d,fetchOnDemandCitation:u,fileUrlList:c,getCitationEntryRequestId:s,formatLLMResponse:r}){const v=null!=l?l:{},_=i(v),[f,m]=t(v);n(()=>{m(i=>{var t,n;return{...l,file_citations:i.file_citations&&i.file_citations.length>0?i.file_citations:null!==(t=null==l?void 0:l.file_citations)&&void 0!==t?t:[],audio_citations:i.audio_citations&&i.audio_citations.length>0?i.audio_citations:null!==(n=null==l?void 0:l.audio_citations)&&void 0!==n?n:[]}})},[l]),n(()=>{_.current=f},[f]);const g=o((i,t)=>{var n,o,l,e,a,d,u,c,s,r,v,_,f,m,g,b,h,p,w,y,C,I,k,q;let x=null===(u=null===(d=null===(a=null===(e=null===(l=null===(o=null===(n=null==i?void 0:i.result)||void 0===n?void 0:n.citations)||void 0===o?void 0:o[0])||void 0===l?void 0:l.citations)||void 0===e?void 0:e[0])||void 0===a?void 0:a.customMetaData)||void 0===d?void 0:d.value)||void 0===u?void 0:u[0];if("audio_citation"===t||"audio_citations"===t)x=null===(s=null===(c=null==i?void 0:i.result)||void 0===c?void 0:c.citations)||void 0===s?void 0:s[0];else if("readfile_citations"===t||"readfile_citation"===t)x=null===(v=null===(r=null==i?void 0:i.result)||void 0===r?void 0:r.citations)||void 0===v?void 0:v[0];else if(t.includes("image_citation"))x=null===(f=null===(_=null==i?void 0:i.result)||void 0===_?void 0:_.citations)||void 0===f?void 0:f[0];else if(t.includes("web_citation")){const t=null===(w=null===(p=null===(h=null===(b=null===(g=null===(m=null==i?void 0:i.result)||void 0===m?void 0:m.citations)||void 0===g?void 0:g[0])||void 0===b?void 0:b.segments)||void 0===h?void 0:h[0])||void 0===p?void 0:p.urls)||void 0===w?void 0:w[0];x={citation_number:null===(I=null===(C=null===(y=null==i?void 0:i.result)||void 0===y?void 0:y.citations)||void 0===C?void 0:C[0])||void 0===I?void 0:I.citation_number,customMetadata:{screenshot_url:null==t?void 0:t.gcs_url,relevance_score:100,link:null==t?void 0:t.highlight_url,type:"web_citation"}}}else t.includes("scanned_doc_citation")&&(console.log("scanned_doc_citation responseData",i),x=null===(q=null===(k=null==i?void 0:i.result)||void 0===k?void 0:k.citations)||void 0===q?void 0:q[0]);return x},[]),b=o((i,t,n)=>{m(o=>{const l="audio_citation"===t||"audio_citations"===t?"audio_citations":t.includes("image_citation")?"image_citations":"readfile_citations"===t||"readfile_citation"===t?"readfile_citations":t.includes("web_citation")?"web_citations":"file_citations",e=o[l]||[],a=e.findIndex(t=>String(t.citation_number)===i),d={...n,citation_number:i},u=a>=0?e.map((i,t)=>t===a?{...i,...d}:i):[...e,d];return{...o,[l]:u}})},[]);return{fetchOnDemandCitationHandler:o((i,t,n,o,l)=>{const v=String(i);return new Promise((_,f)=>{(async()=>{var m,h,p,w,y,C,I,k,q,x;try{const f=null!==(m=null==a?void 0:a.accessToken)&&void 0!==m?m:"";if(!f)throw new Error("No auth token available for on-demand citation fetch");const D=null!==(h=sessionStorage.getItem("projectId"))&&void 0!==h?h:"";let N=o?[`${d}/projects/${D}/${o}`]:[];if(null==c?void 0:c.length){const i=c.find(i=>i.includes(null!=o?o:""));i&&(N=[i])}const $=r?r(t.reason,t.gap,Number(i)):"explanation"===l?null!==(p=null==t?void 0:t.explanation)&&void 0!==p?p:"":null!==(w=null==t?void 0:t.reason)&&void 0!==w?w:"",O=JSON.stringify({userName:null!==(y=null==a?void 0:a.name)&&void 0!==y?y:`${null!==(C=null==a?void 0:a.firstname)&&void 0!==C?C:""} ${null!==(I=null==a?void 0:a.lastname)&&void 0!==I?I:""}`.trim(),userEmailId:null!==(k=null==a?void 0:a.email)&&void 0!==k?k:""}),S=[{reason:$,title:"",description:"explanation"===l?null!==(q=null==t?void 0:t.explanation)&&void 0!==q?q:"":null!==(x=null==t?void 0:t.reason)&&void 0!==x?x:""}],E=function(i){switch(i){case"artifact_chunks":case"scanned_doc_citations":return"scanned_doc_citation";case"rai_artifact_citation":return"rai_artifact_citation";case"document_citations":return"file_citation";case"audio_citations":return"requirement_ai_audio_citation";case"web_citations":return"web_citation";case"image_citations":return"requirement_ai_image_citation";default:return i}}(n);console.log("[useOnDemandCitation] fetching citation",{key:v,citationType:n,requestCitationType:E,requestId:e,files:N});const L=s?null==s?void 0:s(Number(i)):void 0,M=await u(L||e,E,i,$,f,S,N,O,o),R=g(M,n);R||console.error(`Failed to resolve on-demand citation ${v}`),R&&b(v,n,R),_(R)}catch(i){console.error("[useOnDemandCitation] error for citation",v,i),f(i)}})()})},[e,a,c]),libraryCitationsRef:_,libraryCitations:f}}export{l as useOnDemandCitation};
|
|
2
2
|
//# sourceMappingURL=useOnDemandCitation.js.map
|
|
@@ -2,6 +2,13 @@
|
|
|
2
2
|
import { UserStoryCitations } from '../interfaces/citation.interface';
|
|
3
3
|
import { User } from '../types/user.type';
|
|
4
4
|
import { TAIReasoning } from '../types/aiReasoning.type';
|
|
5
|
+
export interface ICitationsMap {
|
|
6
|
+
[citationNumber: string]: ICitationMapItem;
|
|
7
|
+
}
|
|
8
|
+
export interface ICitationMapItem {
|
|
9
|
+
anchor: string;
|
|
10
|
+
request_id: string;
|
|
11
|
+
}
|
|
5
12
|
interface useOnDemandCitationParams {
|
|
6
13
|
/** Base citations from context (userStoryCitations). Used as seed for libraryCitations. */
|
|
7
14
|
baseCitations: UserStoryCitations | null;
|
|
@@ -16,6 +23,8 @@ interface useOnDemandCitationParams {
|
|
|
16
23
|
title: string;
|
|
17
24
|
description: string;
|
|
18
25
|
}[] | undefined, files?: string[] | undefined, reqaiMetadata?: string | undefined, source?: string | undefined): Promise<any>;
|
|
26
|
+
formatLLMResponse?: (reasoningContent: string | null | undefined, gapContent: string | null | undefined, citationNumber: number) => string;
|
|
27
|
+
getCitationEntryRequestId?: (citationNumber: number) => string | undefined;
|
|
19
28
|
}
|
|
20
29
|
/**
|
|
21
30
|
* Self-contained hook that wires `<RequirementAIWrapper>`'s onFetchOnDemandCitation
|
|
@@ -27,7 +36,7 @@ interface useOnDemandCitationParams {
|
|
|
27
36
|
* - Source → file path: `creative-workspace/projects/${projectId}/${source}` (mirrors CW_FE).
|
|
28
37
|
* - State: local libraryCitations extends baseCitations; ref synced via useEffect.
|
|
29
38
|
*/
|
|
30
|
-
export declare function useOnDemandCitation({ baseCitations, requestId, user, bucketName, fetchOnDemandCitation, fileUrlList }: useOnDemandCitationParams): {
|
|
39
|
+
export declare function useOnDemandCitation({ baseCitations, requestId, user, bucketName, fetchOnDemandCitation, fileUrlList, getCitationEntryRequestId, formatLLMResponse }: useOnDemandCitationParams): {
|
|
31
40
|
fetchOnDemandCitationHandler: (citationNo: string, _aiReasoning: TAIReasoning, citationType: string, source?: string, citationSection?: 'explanation' | 'reasoning') => Promise<any>;
|
|
32
41
|
libraryCitationsRef: import("react").MutableRefObject<Record<string, any>>;
|
|
33
42
|
libraryCitations: Record<string, any>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useOnDemandCitation.d.ts","sourceRoot":"","sources":["../../../../../../src/features/RequirementAI/hooks/useOnDemandCitation.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"useOnDemandCitation.d.ts","sourceRoot":"","sources":["../../../../../../src/features/RequirementAI/hooks/useOnDemandCitation.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAKzD,MAAM,WAAW,aAAa;IAC5B,CAAC,cAAc,EAAE,MAAM,GAAG,gBAAgB,CAAC;CAC5C;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AACD,UAAU,yBAAyB;IACjC,2FAA2F;IAC3F,aAAa,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACzC,wFAAwF;IACxF,SAAS,EAAE,MAAM,CAAC;IAClB,yFAAyF;IACzF,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,EAAG,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE;QAC9I,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;KACrB,EAAE,GAAG,SAAS,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAC9H,iBAAiB,CAAC,EAAE,CAClB,gBAAgB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAC3C,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACrC,cAAc,EAAE,MAAM,KACnB,MAAM,CAAC;IACZ,yBAAyB,CAAC,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAA;CAC3E;AAgCD;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,aAAa,EACb,SAAS,EACT,IAAI,EACJ,UAAU,EACV,qBAAqB,EACrB,WAAW,EACX,yBAAyB,EACzB,iBAAiB,EAClB,EAAE,yBAAyB;+CA+FV,MAAM,gBACJ,YAAY,gBACZ,MAAM,WACX,MAAM,oBACG,aAAa,GAAG,WAAW,KAC5C,QAAQ,GAAG,CAAC;;;EA0GlB"}
|