codicent-app-sdk 0.3.82 → 0.3.84

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.
@@ -1 +1 @@
1
- "use strict";var e=require("react"),t=require("../stores/chatStore.js");require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js");var s=require("../utils/logging.js");require("react/jsx-runtime"),require("../_virtual/index.js"),require("../config/index.js"),require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js"),exports.useChat=function(r){const[o,a]=e.useState(t.chatStore.getState()),{service:n}=r;e.useEffect((()=>t.chatStore.subscribe(a)),[n]);const i=e.useCallback((async()=>{const e=t.chatStore.getConversationId();if(e){console.log("Reloading chat history to check for missed messages...");try{const r=await n.getChatHistory(e),o=t.chatStore.getMessages();return r.length>o.length?(console.log(`Found ${r.length-o.length} missed messages, updating chat...`),t.chatStore.reset(),r.forEach(((e,s)=>{const r={id:e.id,sender:s%2==0?"user":"bot",content:e.content};t.chatStore.addMessage(r)})),t.chatStore.setConversationId(e),s.default("chat-history-reloaded"),!0):(console.log("No missed messages found"),!1)}catch(e){return console.error("Failed to reload chat history:",e),!1}}return!1}),[n]),c=e.useCallback(((e,r=0)=>{if(""===e.trim())return;const a=`$user-msg-${Date.now()}`,l={id:a,sender:"user",content:e},d=o.messages.length>0?o.messages[o.messages.length-1].id:void 0;t.chatStore.addMessage(l),t.chatStore.setBotTyping(!0),s.default("chat-send");const u=Promise.race([n.chat(e,d),new Promise(((e,t)=>{setTimeout((()=>t(new Error("Request timeout - please try again"))),3e4)}))]).then((e=>{const{id:r,content:o}=e,a={id:r,sender:"bot",content:o,isNew:!0};t.chatStore.setConversationId(r),t.chatStore.addMessage(a),t.chatStore.setBotTyping(!1),s.default("chat-receive"),o.startsWith("Error code: ")&&s.default("chat-error: "+o)})).catch((async o=>{console.error("Chat error details:",{error:o,message:o?.message,name:o?.name,stack:o?.stack,tempId:a,lastMessageId:d,retryCount:r,timestamp:(new Date).toISOString()});if(0===r&&("AbortError"===o?.name||o?.message?.includes("timeout")||o?.message?.includes("Failed to fetch")||o?.message?.includes("NetworkError")))return console.log("Auto-retrying chat request..."),t.chatStore.removeMessage(a),t.chatStore.setBotTyping(!1),void setTimeout((()=>c(e,r+1)),2e3);function l(){let e="An error occurred while sending the message. Please try again.";if(n.onUnauthorized&&o?.toString().includes("401"))return alert("Session expired. Please log in again."),void n.onUnauthorized();"AbortError"===o?.name||o?.message?.includes("timeout")?(e="Request timed out. Please check your connection and try again.",s.default("chat-timeout")):o?.message?.includes("HTTP error: 500")?(e="Server error. Please try again in a moment.",s.default("chat-server-error")):(o?.message?.includes("Failed to fetch")||o?.message?.includes("NetworkError"))&&(e="Network error. Please check your connection and try again.",s.default("chat-network-error")),console.warn(e),t.chatStore.removeMessage(a),t.chatStore.setBotTyping(!1),s.default("chat-error")}"AbortError"===o?.name||o?.message?.includes("timeout")||o?.message?.includes("Failed to fetch")||o?.message?.includes("NetworkError")||o?.message?.includes("WebSocket")||o?.message?.includes("SignalR")||o?.message?.includes("Connection")?(console.log("Potential SignalR/connection issue detected, checking for missed messages..."),setTimeout((async()=>{if(await i())return t.chatStore.removeMessage(a),t.chatStore.setBotTyping(!1),console.log("Recovered missed message(s) from server"),void s.default("chat-recovered");l()}),2e3)):l()}));t.chatStore.addPendingRequest(a,u)}),[n,o.messages,i]),l=e.useCallback((()=>{t.chatStore.reset(),t.chatStore.clearMessages(),s.default("new-chat")}),[]),d=e.useCallback((e=>{t.chatStore.reset(),t.chatStore.clearMessages(),s.default("open-chat"),n.getChatHistory(e).then((e=>{e.forEach(((e,s)=>{const r={id:e.id,sender:s%2==0?"user":"bot",content:e.content};t.chatStore.addMessage(r)}))}))}),[n]);return{messages:o.messages,isBotTyping:o.isBotTyping,handleSend:c,newChat:l,openChat:d,reloadChatHistory:i}};
1
+ "use strict";var e=require("react"),t=require("../stores/chatStore.js");require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js");var s=require("../utils/logging.js");require("react/jsx-runtime"),require("../_virtual/index.js"),require("../config/index.js"),require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js"),exports.useChat=function(r){const[o,a]=e.useState(t.chatStore.getState()),{service:n}=r;e.useEffect((()=>t.chatStore.subscribe(a)),[n]);const i=e.useCallback((async()=>{const e=t.chatStore.getConversationId();if(e){console.log("Reloading chat history to check for missed messages...");try{const r=await n.getChatHistory(e),o=t.chatStore.getMessages();return r.length>o.length?(console.log(`Found ${r.length-o.length} missed messages, updating chat...`),t.chatStore.reset(),r.forEach(((e,s)=>{const r={id:e.id,sender:s%2==0?"user":"bot",content:e.content};t.chatStore.addMessage(r)})),t.chatStore.setConversationId(e),s.default("chat-history-reloaded"),!0):(console.log("No missed messages found"),!1)}catch(e){return console.error("Failed to reload chat history:",e),!1}}return!1}),[n]),c=e.useCallback(((e,r=0)=>{if(""===e.trim())return;const a=`$user-msg-${Date.now()}`,l={id:a,sender:"user",content:e},d=o.messages.length>0?o.messages[o.messages.length-1].id:void 0;t.chatStore.addMessage(l),t.chatStore.setBotTyping(!0),s.default("chat-send");const u=Promise.race([n.chat(e,d),new Promise(((e,t)=>{setTimeout((()=>t(new Error("Request timeout - please try again"))),6e4)}))]).then((e=>{const{id:r,content:o}=e,a={id:r,sender:"bot",content:o,isNew:!0};t.chatStore.setConversationId(r),t.chatStore.addMessage(a),t.chatStore.setBotTyping(!1),s.default("chat-receive"),o.startsWith("Error code: ")&&s.default("chat-error: "+o)})).catch((async o=>{console.error("Chat error details:",{error:o,message:o?.message,name:o?.name,stack:o?.stack,tempId:a,lastMessageId:d,retryCount:r,timestamp:(new Date).toISOString()});if(0===r&&("AbortError"===o?.name||o?.message?.includes("timeout")||o?.message?.includes("Failed to fetch")||o?.message?.includes("NetworkError")))return console.log("Auto-retrying chat request..."),t.chatStore.removeMessage(a),t.chatStore.setBotTyping(!1),void setTimeout((()=>c(e,r+1)),2e3);function l(){let e="An error occurred while sending the message. Please try again.";if(n.onUnauthorized&&o?.toString().includes("401"))return alert("Session expired. Please log in again."),void n.onUnauthorized();"AbortError"===o?.name||o?.message?.includes("timeout")?(e="Request timed out. Please check your connection and try again.",s.default("chat-timeout")):o?.message?.includes("HTTP error: 500")?(e="Server error. Please try again in a moment.",s.default("chat-server-error")):(o?.message?.includes("Failed to fetch")||o?.message?.includes("NetworkError"))&&(e="Network error. Please check your connection and try again.",s.default("chat-network-error")),console.warn(e),t.chatStore.removeMessage(a),t.chatStore.setBotTyping(!1),s.default("chat-error")}"AbortError"===o?.name||o?.message?.includes("timeout")||o?.message?.includes("Failed to fetch")||o?.message?.includes("NetworkError")||o?.message?.includes("WebSocket")||o?.message?.includes("SignalR")||o?.message?.includes("Connection")?(console.log("Potential SignalR/connection issue detected, checking for missed messages..."),setTimeout((async()=>{if(await i())return t.chatStore.removeMessage(a),t.chatStore.setBotTyping(!1),console.log("Recovered missed message(s) from server"),void s.default("chat-recovered");l()}),2e3)):l()}));t.chatStore.addPendingRequest(a,u)}),[n,o.messages,i]),l=e.useCallback((()=>{t.chatStore.reset(),t.chatStore.clearMessages(),s.default("new-chat")}),[]),d=e.useCallback((e=>{t.chatStore.reset(),t.chatStore.clearMessages(),s.default("open-chat"),n.getChatHistory(e).then((e=>{e.forEach(((e,s)=>{const r={id:e.id,sender:s%2==0?"user":"bot",content:e.content};t.chatStore.addMessage(r)}))}))}),[n]);return{messages:o.messages,isBotTyping:o.isBotTyping,handleSend:c,newChat:l,openChat:d,reloadChatHistory:i}};
@@ -1 +1 @@
1
- {"version":3,"file":"FormInvite.d.ts","sourceRoot":"","sources":["../../../src/pages/FormInvite.tsx"],"names":[],"mappings":"AAYA,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAG3B,OAAO,EAAE,gBAAgB,EAA6C,MAAM,UAAU,CAAC;AAqCvF,QAAA,MAAM,UAAU,EAAE,EAAE,CAAC;IAAE,KAAK,EAAE,gBAAgB,CAAA;CAAE,CAyH/C,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"FormInvite.d.ts","sourceRoot":"","sources":["../../../src/pages/FormInvite.tsx"],"names":[],"mappings":"AAYA,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAG3B,OAAO,EAAE,gBAAgB,EAA6C,MAAM,UAAU,CAAC;AAsCvF,QAAA,MAAM,UAAU,EAAE,EAAE,CAAC;IAAE,KAAK,EAAE,gBAAgB,CAAA;CAAE,CAwI/C,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react");require("../components/Markdown.js"),require("../components/Textarea.js");var n=require("../components/Button.js"),o=require("../components/Title.js");require("../components/Spinner.js");var t=require("../components/Label.js"),i=require("../components/Input.js");require("../components/TextHeader.js"),require("../components/TypingIndicator.js"),require("../components/Dialog.js"),require("../components/ChatInput.js"),require("../components/CombinedPlaceholderDialog.js"),require("../components/ChatMessage.js"),require("../components/Header.js");var a=require("../hooks/useStateWithLocalStorage.js");require("../services/codicent.js"),require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js");var s=require("../config/index.js");require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js");var l=require("../utils/helpers.js");require("./AppFrame.js"),require("./Snap.js"),require("./Search.js"),require("./Login.js"),require("./CrmPage.js"),require("./ImageView.js"),require("./FormAccept.js"),require("./Sales.js"),require("../stores/chatStore.js");var u=require("../hooks/useLocalization.js");require("../hooks/useAppStyles.js"),require("../components/FileThumbnail.js"),require("../components/MessageInput.js"),require("../components/UploadFile.js"),require("../components/SnapFooter.js"),require("../components/Profile.js"),require("../components/MessageItem.js");var c=require("../components/Content.js");require("../components/AiInput.js"),require("../components/SearchBox.js"),require("../components/HtmlView.js"),require("../components/Footer.js");var d=require("../components/Page.js"),p=require("../node_modules/@griffel/react/makeStyles.esm.js"),m=require("../node_modules/@fluentui/react-utilities/lib/hooks/useId.js"),j=require("../node_modules/@fluentui/react-combobox/lib/components/Dropdown/Dropdown.js"),h=require("../node_modules/@fluentui/react-combobox/lib/components/Option/Option.js");const k=p.makeStyles({inputAndButton:{display:"flex",gap:"10px"},input:{minWidth:"90%"},container:{maxWidth:"640px",margin:"0 auto",backgroundPosition:"calc(50% + 100px) center",backgroundRepeat:"no-repeat",backgroundSize:"contain",height:"100%"},generatedLinkTitle:{marginBottom:"0.5em",fontWeight:"bold"},orderedList:{marginLeft:"20px",marginBottom:"1em"},instructionParagraph:{marginBottom:"1em",fontWeight:"bold"}});exports.default=({state:p})=>{const q=k(),{service:g}=p,{t:x}=u.default(),[v,f]=a.default(p.context.selectedApp+"_forms",[]),[b,w]=r.useState(),[S,y]=r.useState(),[_,C]=r.useState(!1),[I,L]=r.useState(),B=m.useId("form-dropdown");r.useEffect((()=>{g.getForms().then((e=>{e.sort(((e,r)=>e.name.localeCompare(r.name))),f(e)}))}),[g,x,f]);const T=void 0!==navigator.share;return e.jsx(d.Page,{children:e.jsx("div",{className:q.container,style:{backgroundImage:`url(${s.getConfigValue("COMPOSE_BACKGROUND_IMAGE_URL")})`},children:e.jsxs(c.default,{children:[e.jsx(o.Title,{children:x("Skapa länk till formulär")}),e.jsx("p",{className:q.instructionParagraph,children:x("Instruktioner")}),e.jsxs("ol",{className:q.orderedList,children:[e.jsx("li",{children:x("Välj ett formulär från rullgardinsmenyn nedan. Detta formulär kommer att användas för den genererade länken.")}),e.jsx("li",{children:x("Klicka på 'Skapa länk' för att generera en unik länk. Länken visar var aktiv och kan användas för att svara på formuläret.")}),e.jsx("li",{children:x("När länken visas, kan du klicka på kopiera-ikonen för att kopiera länken till ditt urklipp.")}),e.jsx("li",{children:x("Om din enhet stödjer det, kan du även använda dela-knappen för att dela länken direkt.")}),e.jsx("li",{children:x("Kom ihåg att spara (skriva ner) koden")})]}),e.jsx("label",{id:B,className:q.instructionParagraph,children:x("Välj formulär")}),e.jsx(j.Dropdown,{"aria-labelledby":B,placeholder:"-",onOptionSelect:(e,r)=>L(r.optionValue),children:v.map((r=>e.jsxs(h.Option,{value:r.name,text:`${r.title} (${r.name})`,children:[`${r.title} (${r.name})`," "]},r.name)))}),e.jsx(n.Button,{appearance:"primary",disabled:!I,onClick:()=>{g.sendMessage(`#ss-link #${I}`).then((e=>{const r=`${window.location.protocol}//${window.location.hostname}${window.location.port?":"+window.location.port:""}${window.location.pathname}`;w(`${r}#/formaccept?id=${e}`);const n=l.formatGuidToShorterReadableCode(e);y(n)}))},children:x("Skapa länk")}),b&&e.jsxs(e.Fragment,{children:[e.jsx("p",{className:q.generatedLinkTitle,children:x("Här är din genererade länk (du kan kopiera eller dela den):")}),e.jsx("div",{className:q.inputAndButton,children:e.jsx(i.Input,{className:q.input,value:b,readOnly:!0,onFocus:e=>e.target.select()})}),e.jsx("br",{}),e.jsxs("div",{className:q.inputAndButton,children:[e.jsx(n.Button,{appearance:"primary",title:x("Kopiera länk"),icon:"CopyRegular",onClick:()=>{b&&(navigator.clipboard.writeText(b),C(!0),setTimeout((()=>{C(!1),w(void 0)}),2e3))},children:x("Kopiera")}),T&&e.jsx(n.Button,{appearance:"primary",title:x("Dela länk"),icon:"ShareRegular",onClick:()=>{b&&(navigator.share({url:b}),setTimeout((()=>{w(void 0)}),2e3))},children:x("Dela")})]}),_&&e.jsx(t.Label,{children:x("Länk kopierad!")})]})]})})})};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react");require("../components/Markdown.js"),require("../components/Textarea.js");var n=require("../components/Button.js"),o=require("../components/Title.js");require("../components/Spinner.js");var t=require("../components/Label.js"),i=require("../components/Input.js");require("../components/TextHeader.js"),require("../components/TypingIndicator.js"),require("../components/Dialog.js"),require("../components/ChatInput.js"),require("../components/CombinedPlaceholderDialog.js"),require("../components/ChatMessage.js"),require("../components/Header.js");var a=require("../hooks/useStateWithLocalStorage.js");require("../services/codicent.js"),require("../utils/MessageContent.js"),require("../node_modules/tinycolor2/esm/tinycolor.js"),require("../_virtual/index.js");var s=require("../config/index.js");require("../lib/wavtools/lib/wav_packer.js"),require("../lib/wavtools/lib/analysis/audio_analysis.js"),require("../lib/wavtools/lib/wav_stream_player.js"),require("../lib/wavtools/lib/wav_recorder.js");var l=require("../utils/helpers.js");require("./AppFrame.js"),require("./Snap.js"),require("./Search.js"),require("./Login.js"),require("./CrmPage.js"),require("./ImageView.js"),require("./FormAccept.js"),require("./Sales.js"),require("../stores/chatStore.js");var u=require("../hooks/useLocalization.js");require("../hooks/useAppStyles.js"),require("../components/FileThumbnail.js"),require("../components/MessageInput.js"),require("../components/UploadFile.js"),require("../components/SnapFooter.js"),require("../components/Profile.js"),require("../components/MessageItem.js");var c=require("../components/Content.js");require("../components/AiInput.js"),require("../components/SearchBox.js"),require("../components/HtmlView.js"),require("../components/Footer.js");var d=require("../components/Page.js"),p=require("../node_modules/@griffel/react/makeStyles.esm.js"),m=require("../node_modules/@fluentui/react-utilities/lib/hooks/useId.js"),j=require("../node_modules/@fluentui/react-combobox/lib/components/Dropdown/Dropdown.js"),h=require("../node_modules/@fluentui/react-combobox/lib/components/Option/Option.js");const k=p.makeStyles({inputAndButton:{display:"flex",gap:"10px"},input:{minWidth:"90%"},container:{maxWidth:"640px",margin:"0 auto",backgroundPosition:"calc(50% + 100px) center",backgroundRepeat:"no-repeat",backgroundSize:"contain",height:"100%"},generatedLinkTitle:{marginBottom:"0.5em",fontWeight:"bold"},orderedList:{marginLeft:"20px",marginBottom:"1em"},instructionParagraph:{marginBottom:"1em",fontWeight:"bold"}});exports.default=({state:p})=>{const q=k(),{service:g}=p,{t:x}=u.default(),[v,f]=a.default(p.context.selectedApp+"_forms",[]),[b,w]=r.useState(),[S,y]=r.useState(),[_,C]=r.useState(!1),[$,I]=r.useState(),L=m.useId("form-dropdown");r.useEffect((()=>{g.getForms().then((e=>{e.sort(((e,r)=>e.name.localeCompare(r.name))),f(e)}))}),[g,x,f]);const T=void 0!==navigator.share;return e.jsx(d.Page,{children:e.jsx("div",{className:q.container,style:{backgroundImage:`url(${s.getConfigValue("COMPOSE_BACKGROUND_IMAGE_URL")})`},children:e.jsxs(c.default,{children:[e.jsx(o.Title,{children:x("Skapa länk till formulär")}),e.jsx("p",{className:q.instructionParagraph,children:x("Instruktioner")}),e.jsxs("ol",{className:q.orderedList,children:[e.jsx("li",{children:x("Välj ett formulär från rullgardinsmenyn nedan. Detta formulär kommer att användas för den genererade länken.")}),e.jsx("li",{children:x("Klicka på 'Skapa länk' för att generera en unik länk. Länken visar var aktiv och kan användas för att svara på formuläret.")}),e.jsx("li",{children:x("När länken visas, kan du klicka på kopiera-ikonen för att kopiera länken till ditt urklipp.")}),e.jsx("li",{children:x("Om din enhet stödjer det, kan du även använda dela-knappen för att dela länken direkt.")}),e.jsx("li",{children:x("Kom ihåg att spara (skriva ner) koden")})]}),e.jsx("label",{id:L,className:q.instructionParagraph,children:x("Välj formulär")}),e.jsx(j.Dropdown,{"aria-labelledby":L,placeholder:"-",onOptionSelect:(e,r)=>I(r.optionValue),children:v.map((r=>e.jsxs(h.Option,{value:r.name,text:`${r.title} (${r.name})`,children:[`${r.title} (${r.name})`," "]},r.name)))}),e.jsx(n.Button,{appearance:"primary",disabled:!$,onClick:()=>{const e=v.find((e=>e.name===$));e?.url?g.sendMessage(`#ss-link #${$}`).then((r=>{const n=r,o=e.url.includes("?")?"&":"?",t=`${e.url}${o}token=${n}`;w(t);const i=l.formatGuidToShorterReadableCode(r);y(i)})):g.sendMessage(`#ss-link #${$}`).then((e=>{const r=`${window.location.protocol}//${window.location.hostname}${window.location.port?":"+window.location.port:""}${window.location.pathname}`;w(`${r}#/formaccept?id=${e}`);const n=l.formatGuidToShorterReadableCode(e);y(n)}))},children:x("Skapa länk")}),b&&e.jsxs(e.Fragment,{children:[e.jsx("p",{className:q.generatedLinkTitle,children:x("Här är din genererade länk (du kan kopiera eller dela den):")}),e.jsx("div",{className:q.inputAndButton,children:e.jsx(i.Input,{className:q.input,value:b,readOnly:!0,onFocus:e=>e.target.select()})}),e.jsx("br",{}),e.jsxs("div",{className:q.inputAndButton,children:[e.jsx(n.Button,{appearance:"primary",title:x("Kopiera länk"),icon:"CopyRegular",onClick:()=>{b&&(navigator.clipboard.writeText(b),C(!0),setTimeout((()=>{C(!1),w(void 0)}),2e3))},children:x("Kopiera")}),T&&e.jsx(n.Button,{appearance:"primary",title:x("Dela länk"),icon:"ShareRegular",onClick:()=>{b&&(navigator.share({url:b}),setTimeout((()=>{w(void 0)}),2e3))},children:x("Dela")})]}),_&&e.jsx(t.Label,{children:x("Länk kopierad!")})]})]})})})};
@@ -17,6 +17,12 @@ export interface AppInfo {
17
17
  title: string;
18
18
  logo: string;
19
19
  }
20
+ export interface Form {
21
+ name: string;
22
+ prompt: string;
23
+ title: string;
24
+ url?: string;
25
+ }
20
26
  export interface CodicentServiceOptions {
21
27
  API_BASE_URL: string;
22
28
  APP_LOG_CODICENT: string;
@@ -105,11 +111,7 @@ export declare class CodicentService {
105
111
  findUsername: () => Promise<string | null>;
106
112
  static downloadFile: (file: FileInfo) => Promise<void>;
107
113
  static getMiniChatReply: (message: string, project?: string, messageId?: string) => Promise<string | undefined>;
108
- getForms: () => Promise<{
109
- name: string;
110
- prompt: string;
111
- title: string;
112
- }[]>;
114
+ getForms: () => Promise<Form[]>;
113
115
  getFormById: (id: string) => Promise<any>;
114
116
  private handleUnauthorized;
115
117
  getTodoStatus: (messageId: string) => Promise<"done" | "undone" | "unknown">;
@@ -1 +1 @@
1
- {"version":3,"file":"codicent.d.ts","sourceRoot":"","sources":["../../../src/services/codicent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codicent.d.ts","sourceRoot":"","sources":["../../../src/services/codicent.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- import{useState as e,useEffect as s,useCallback as t}from"react";import{chatStore as o}from"../stores/chatStore.js";import"../utils/MessageContent.js";import"../node_modules/tinycolor2/esm/tinycolor.js";import r from"../utils/logging.js";import"react/jsx-runtime";import"../_virtual/index.js";import"../config/index.js";import"../lib/wavtools/lib/wav_packer.js";import"../lib/wavtools/lib/analysis/audio_analysis.js";import"../lib/wavtools/lib/wav_stream_player.js";import"../lib/wavtools/lib/wav_recorder.js";function n(n){const[a,i]=e(o.getState()),{service:c}=n;s((()=>o.subscribe(i)),[c]);const d=t((async()=>{const e=o.getConversationId();if(e){console.log("Reloading chat history to check for missed messages...");try{const s=await c.getChatHistory(e),t=o.getMessages();return s.length>t.length?(console.log(`Found ${s.length-t.length} missed messages, updating chat...`),o.reset(),s.forEach(((e,s)=>{const t={id:e.id,sender:s%2==0?"user":"bot",content:e.content};o.addMessage(t)})),o.setConversationId(e),r("chat-history-reloaded"),!0):(console.log("No missed messages found"),!1)}catch(e){return console.error("Failed to reload chat history:",e),!1}}return!1}),[c]),g=t(((e,s=0)=>{if(""===e.trim())return;const t=`$user-msg-${Date.now()}`,n={id:t,sender:"user",content:e},i=a.messages.length>0?a.messages[a.messages.length-1].id:void 0;o.addMessage(n),o.setBotTyping(!0),r("chat-send");const l=Promise.race([c.chat(e,i),new Promise(((e,s)=>{setTimeout((()=>s(new Error("Request timeout - please try again"))),3e4)}))]).then((e=>{const{id:s,content:t}=e,n={id:s,sender:"bot",content:t,isNew:!0};o.setConversationId(s),o.addMessage(n),o.setBotTyping(!1),r("chat-receive"),t.startsWith("Error code: ")&&r("chat-error: "+t)})).catch((async n=>{console.error("Chat error details:",{error:n,message:n?.message,name:n?.name,stack:n?.stack,tempId:t,lastMessageId:i,retryCount:s,timestamp:(new Date).toISOString()});if(0===s&&("AbortError"===n?.name||n?.message?.includes("timeout")||n?.message?.includes("Failed to fetch")||n?.message?.includes("NetworkError")))return console.log("Auto-retrying chat request..."),o.removeMessage(t),o.setBotTyping(!1),void setTimeout((()=>g(e,s+1)),2e3);function a(){let e="An error occurred while sending the message. Please try again.";if(c.onUnauthorized&&n?.toString().includes("401"))return alert("Session expired. Please log in again."),void c.onUnauthorized();"AbortError"===n?.name||n?.message?.includes("timeout")?(e="Request timed out. Please check your connection and try again.",r("chat-timeout")):n?.message?.includes("HTTP error: 500")?(e="Server error. Please try again in a moment.",r("chat-server-error")):(n?.message?.includes("Failed to fetch")||n?.message?.includes("NetworkError"))&&(e="Network error. Please check your connection and try again.",r("chat-network-error")),console.warn(e),o.removeMessage(t),o.setBotTyping(!1),r("chat-error")}"AbortError"===n?.name||n?.message?.includes("timeout")||n?.message?.includes("Failed to fetch")||n?.message?.includes("NetworkError")||n?.message?.includes("WebSocket")||n?.message?.includes("SignalR")||n?.message?.includes("Connection")?(console.log("Potential SignalR/connection issue detected, checking for missed messages..."),setTimeout((async()=>{if(await d())return o.removeMessage(t),o.setBotTyping(!1),console.log("Recovered missed message(s) from server"),void r("chat-recovered");a()}),2e3)):a()}));o.addPendingRequest(t,l)}),[c,a.messages,d]),l=t((()=>{o.reset(),o.clearMessages(),r("new-chat")}),[]),m=t((e=>{o.reset(),o.clearMessages(),r("open-chat"),c.getChatHistory(e).then((e=>{e.forEach(((e,s)=>{const t={id:e.id,sender:s%2==0?"user":"bot",content:e.content};o.addMessage(t)}))}))}),[c]);return{messages:a.messages,isBotTyping:a.isBotTyping,handleSend:g,newChat:l,openChat:m,reloadChatHistory:d}}export{n as useChat};
1
+ import{useState as e,useEffect as s,useCallback as t}from"react";import{chatStore as o}from"../stores/chatStore.js";import"../utils/MessageContent.js";import"../node_modules/tinycolor2/esm/tinycolor.js";import r from"../utils/logging.js";import"react/jsx-runtime";import"../_virtual/index.js";import"../config/index.js";import"../lib/wavtools/lib/wav_packer.js";import"../lib/wavtools/lib/analysis/audio_analysis.js";import"../lib/wavtools/lib/wav_stream_player.js";import"../lib/wavtools/lib/wav_recorder.js";function n(n){const[a,i]=e(o.getState()),{service:c}=n;s((()=>o.subscribe(i)),[c]);const d=t((async()=>{const e=o.getConversationId();if(e){console.log("Reloading chat history to check for missed messages...");try{const s=await c.getChatHistory(e),t=o.getMessages();return s.length>t.length?(console.log(`Found ${s.length-t.length} missed messages, updating chat...`),o.reset(),s.forEach(((e,s)=>{const t={id:e.id,sender:s%2==0?"user":"bot",content:e.content};o.addMessage(t)})),o.setConversationId(e),r("chat-history-reloaded"),!0):(console.log("No missed messages found"),!1)}catch(e){return console.error("Failed to reload chat history:",e),!1}}return!1}),[c]),g=t(((e,s=0)=>{if(""===e.trim())return;const t=`$user-msg-${Date.now()}`,n={id:t,sender:"user",content:e},i=a.messages.length>0?a.messages[a.messages.length-1].id:void 0;o.addMessage(n),o.setBotTyping(!0),r("chat-send");const l=Promise.race([c.chat(e,i),new Promise(((e,s)=>{setTimeout((()=>s(new Error("Request timeout - please try again"))),6e4)}))]).then((e=>{const{id:s,content:t}=e,n={id:s,sender:"bot",content:t,isNew:!0};o.setConversationId(s),o.addMessage(n),o.setBotTyping(!1),r("chat-receive"),t.startsWith("Error code: ")&&r("chat-error: "+t)})).catch((async n=>{console.error("Chat error details:",{error:n,message:n?.message,name:n?.name,stack:n?.stack,tempId:t,lastMessageId:i,retryCount:s,timestamp:(new Date).toISOString()});if(0===s&&("AbortError"===n?.name||n?.message?.includes("timeout")||n?.message?.includes("Failed to fetch")||n?.message?.includes("NetworkError")))return console.log("Auto-retrying chat request..."),o.removeMessage(t),o.setBotTyping(!1),void setTimeout((()=>g(e,s+1)),2e3);function a(){let e="An error occurred while sending the message. Please try again.";if(c.onUnauthorized&&n?.toString().includes("401"))return alert("Session expired. Please log in again."),void c.onUnauthorized();"AbortError"===n?.name||n?.message?.includes("timeout")?(e="Request timed out. Please check your connection and try again.",r("chat-timeout")):n?.message?.includes("HTTP error: 500")?(e="Server error. Please try again in a moment.",r("chat-server-error")):(n?.message?.includes("Failed to fetch")||n?.message?.includes("NetworkError"))&&(e="Network error. Please check your connection and try again.",r("chat-network-error")),console.warn(e),o.removeMessage(t),o.setBotTyping(!1),r("chat-error")}"AbortError"===n?.name||n?.message?.includes("timeout")||n?.message?.includes("Failed to fetch")||n?.message?.includes("NetworkError")||n?.message?.includes("WebSocket")||n?.message?.includes("SignalR")||n?.message?.includes("Connection")?(console.log("Potential SignalR/connection issue detected, checking for missed messages..."),setTimeout((async()=>{if(await d())return o.removeMessage(t),o.setBotTyping(!1),console.log("Recovered missed message(s) from server"),void r("chat-recovered");a()}),2e3)):a()}));o.addPendingRequest(t,l)}),[c,a.messages,d]),l=t((()=>{o.reset(),o.clearMessages(),r("new-chat")}),[]),m=t((e=>{o.reset(),o.clearMessages(),r("open-chat"),c.getChatHistory(e).then((e=>{e.forEach(((e,s)=>{const t={id:e.id,sender:s%2==0?"user":"bot",content:e.content};o.addMessage(t)}))}))}),[c]);return{messages:a.messages,isBotTyping:a.isBotTyping,handleSend:g,newChat:l,openChat:m,reloadChatHistory:d}}export{n as useChat};
@@ -1 +1 @@
1
- {"version":3,"file":"FormInvite.d.ts","sourceRoot":"","sources":["../../../src/pages/FormInvite.tsx"],"names":[],"mappings":"AAYA,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAG3B,OAAO,EAAE,gBAAgB,EAA6C,MAAM,UAAU,CAAC;AAqCvF,QAAA,MAAM,UAAU,EAAE,EAAE,CAAC;IAAE,KAAK,EAAE,gBAAgB,CAAA;CAAE,CAyH/C,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"FormInvite.d.ts","sourceRoot":"","sources":["../../../src/pages/FormInvite.tsx"],"names":[],"mappings":"AAYA,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAG3B,OAAO,EAAE,gBAAgB,EAA6C,MAAM,UAAU,CAAC;AAsCvF,QAAA,MAAM,UAAU,EAAE,EAAE,CAAC;IAAE,KAAK,EAAE,gBAAgB,CAAA;CAAE,CAwI/C,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -1 +1 @@
1
- import{jsx as o,jsxs as e,Fragment as t}from"react/jsx-runtime";import{useState as n,useEffect as r}from"react";import"../components/Markdown.js";import"../components/Textarea.js";import{Button as i}from"../components/Button.js";import{Title as a}from"../components/Title.js";import"../components/Spinner.js";import{Label as s}from"../components/Label.js";import{Input as m}from"../components/Input.js";import"../components/TextHeader.js";import"../components/TypingIndicator.js";import"../components/Dialog.js";import"../components/ChatInput.js";import"../components/CombinedPlaceholderDialog.js";import"../components/ChatMessage.js";import"../components/Header.js";import l from"../hooks/useStateWithLocalStorage.js";import"../services/codicent.js";import"../utils/MessageContent.js";import"../node_modules/tinycolor2/esm/tinycolor.js";import"../_virtual/index.js";import{getConfigValue as p}from"../config/index.js";import"../lib/wavtools/lib/wav_packer.js";import"../lib/wavtools/lib/analysis/audio_analysis.js";import"../lib/wavtools/lib/wav_stream_player.js";import"../lib/wavtools/lib/wav_recorder.js";import{formatGuidToShorterReadableCode as c}from"../utils/helpers.js";import"./AppFrame.js";import"./Snap.js";import"./Search.js";import"./Login.js";import"./CrmPage.js";import"./ImageView.js";import"./FormAccept.js";import"./Sales.js";import"../stores/chatStore.js";import d from"../hooks/useLocalization.js";import"../hooks/useAppStyles.js";import"../components/FileThumbnail.js";import"../components/MessageInput.js";import"../components/UploadFile.js";import"../components/SnapFooter.js";import"../components/Profile.js";import"../components/MessageItem.js";import u from"../components/Content.js";import"../components/AiInput.js";import"../components/SearchBox.js";import"../components/HtmlView.js";import"../components/Footer.js";import{Page as j}from"../components/Page.js";import{makeStyles as h}from"../node_modules/@griffel/react/makeStyles.esm.js";import{useId as k}from"../node_modules/@fluentui/react-utilities/lib/hooks/useId.js";import{Dropdown as g}from"../node_modules/@fluentui/react-combobox/lib/components/Dropdown/Dropdown.js";import{Option as f}from"../node_modules/@fluentui/react-combobox/lib/components/Option/Option.js";const v=h({inputAndButton:{display:"flex",gap:"10px"},input:{minWidth:"90%"},container:{maxWidth:"640px",margin:"0 auto",backgroundPosition:"calc(50% + 100px) center",backgroundRepeat:"no-repeat",backgroundSize:"contain",height:"100%"},generatedLinkTitle:{marginBottom:"0.5em",fontWeight:"bold"},orderedList:{marginLeft:"20px",marginBottom:"1em"},instructionParagraph:{marginBottom:"1em",fontWeight:"bold"}}),b=({state:h})=>{const b=v(),{service:w}=h,{t:x}=d(),[S,y]=l(h.context.selectedApp+"_forms",[]),[_,C]=n(),[L,$]=n(),[I,A]=n(!1),[N,T]=n(),B=k("form-dropdown");r((()=>{w.getForms().then((o=>{o.sort(((o,e)=>o.name.localeCompare(e.name))),y(o)}))}),[w,x,y]);const P=void 0!==navigator.share;return o(j,{children:o("div",{className:b.container,style:{backgroundImage:`url(${p("COMPOSE_BACKGROUND_IMAGE_URL")})`},children:e(u,{children:[o(a,{children:x("Skapa länk till formulär")}),o("p",{className:b.instructionParagraph,children:x("Instruktioner")}),e("ol",{className:b.orderedList,children:[o("li",{children:x("Välj ett formulär från rullgardinsmenyn nedan. Detta formulär kommer att användas för den genererade länken.")}),o("li",{children:x("Klicka på 'Skapa länk' för att generera en unik länk. Länken visar var aktiv och kan användas för att svara på formuläret.")}),o("li",{children:x("När länken visas, kan du klicka på kopiera-ikonen för att kopiera länken till ditt urklipp.")}),o("li",{children:x("Om din enhet stödjer det, kan du även använda dela-knappen för att dela länken direkt.")}),o("li",{children:x("Kom ihåg att spara (skriva ner) koden")})]}),o("label",{id:B,className:b.instructionParagraph,children:x("Välj formulär")}),o(g,{"aria-labelledby":B,placeholder:"-",onOptionSelect:(o,e)=>T(e.optionValue),children:S.map((o=>e(f,{value:o.name,text:`${o.title} (${o.name})`,children:[`${o.title} (${o.name})`," "]},o.name)))}),o(i,{appearance:"primary",disabled:!N,onClick:()=>{w.sendMessage(`#ss-link #${N}`).then((o=>{const e=`${window.location.protocol}//${window.location.hostname}${window.location.port?":"+window.location.port:""}${window.location.pathname}`;C(`${e}#/formaccept?id=${o}`);const t=c(o);$(t)}))},children:x("Skapa länk")}),_&&e(t,{children:[o("p",{className:b.generatedLinkTitle,children:x("Här är din genererade länk (du kan kopiera eller dela den):")}),o("div",{className:b.inputAndButton,children:o(m,{className:b.input,value:_,readOnly:!0,onFocus:o=>o.target.select()})}),o("br",{}),e("div",{className:b.inputAndButton,children:[o(i,{appearance:"primary",title:x("Kopiera länk"),icon:"CopyRegular",onClick:()=>{_&&(navigator.clipboard.writeText(_),A(!0),setTimeout((()=>{A(!1),C(void 0)}),2e3))},children:x("Kopiera")}),P&&o(i,{appearance:"primary",title:x("Dela länk"),icon:"ShareRegular",onClick:()=>{_&&(navigator.share({url:_}),setTimeout((()=>{C(void 0)}),2e3))},children:x("Dela")})]}),I&&o(s,{children:x("Länk kopierad!")})]})]})})})};export{b as default};
1
+ import{jsx as o,jsxs as e,Fragment as t}from"react/jsx-runtime";import{useState as n,useEffect as r}from"react";import"../components/Markdown.js";import"../components/Textarea.js";import{Button as i}from"../components/Button.js";import{Title as a}from"../components/Title.js";import"../components/Spinner.js";import{Label as s}from"../components/Label.js";import{Input as l}from"../components/Input.js";import"../components/TextHeader.js";import"../components/TypingIndicator.js";import"../components/Dialog.js";import"../components/ChatInput.js";import"../components/CombinedPlaceholderDialog.js";import"../components/ChatMessage.js";import"../components/Header.js";import m from"../hooks/useStateWithLocalStorage.js";import"../services/codicent.js";import"../utils/MessageContent.js";import"../node_modules/tinycolor2/esm/tinycolor.js";import"../_virtual/index.js";import{getConfigValue as p}from"../config/index.js";import"../lib/wavtools/lib/wav_packer.js";import"../lib/wavtools/lib/analysis/audio_analysis.js";import"../lib/wavtools/lib/wav_stream_player.js";import"../lib/wavtools/lib/wav_recorder.js";import{formatGuidToShorterReadableCode as c}from"../utils/helpers.js";import"./AppFrame.js";import"./Snap.js";import"./Search.js";import"./Login.js";import"./CrmPage.js";import"./ImageView.js";import"./FormAccept.js";import"./Sales.js";import"../stores/chatStore.js";import d from"../hooks/useLocalization.js";import"../hooks/useAppStyles.js";import"../components/FileThumbnail.js";import"../components/MessageInput.js";import"../components/UploadFile.js";import"../components/SnapFooter.js";import"../components/Profile.js";import"../components/MessageItem.js";import u from"../components/Content.js";import"../components/AiInput.js";import"../components/SearchBox.js";import"../components/HtmlView.js";import"../components/Footer.js";import{Page as h}from"../components/Page.js";import{makeStyles as j}from"../node_modules/@griffel/react/makeStyles.esm.js";import{useId as k}from"../node_modules/@fluentui/react-utilities/lib/hooks/useId.js";import{Dropdown as g}from"../node_modules/@fluentui/react-combobox/lib/components/Dropdown/Dropdown.js";import{Option as f}from"../node_modules/@fluentui/react-combobox/lib/components/Option/Option.js";const v=j({inputAndButton:{display:"flex",gap:"10px"},input:{minWidth:"90%"},container:{maxWidth:"640px",margin:"0 auto",backgroundPosition:"calc(50% + 100px) center",backgroundRepeat:"no-repeat",backgroundSize:"contain",height:"100%"},generatedLinkTitle:{marginBottom:"0.5em",fontWeight:"bold"},orderedList:{marginLeft:"20px",marginBottom:"1em"},instructionParagraph:{marginBottom:"1em",fontWeight:"bold"}}),b=({state:j})=>{const b=v(),{service:w}=j,{t:x}=d(),[S,y]=m(j.context.selectedApp+"_forms",[]),[$,_]=n(),[C,L]=n(),[I,A]=n(!1),[N,T]=n(),B=k("form-dropdown");r((()=>{w.getForms().then((o=>{o.sort(((o,e)=>o.name.localeCompare(e.name))),y(o)}))}),[w,x,y]);const M=void 0!==navigator.share;return o(h,{children:o("div",{className:b.container,style:{backgroundImage:`url(${p("COMPOSE_BACKGROUND_IMAGE_URL")})`},children:e(u,{children:[o(a,{children:x("Skapa länk till formulär")}),o("p",{className:b.instructionParagraph,children:x("Instruktioner")}),e("ol",{className:b.orderedList,children:[o("li",{children:x("Välj ett formulär från rullgardinsmenyn nedan. Detta formulär kommer att användas för den genererade länken.")}),o("li",{children:x("Klicka på 'Skapa länk' för att generera en unik länk. Länken visar var aktiv och kan användas för att svara på formuläret.")}),o("li",{children:x("När länken visas, kan du klicka på kopiera-ikonen för att kopiera länken till ditt urklipp.")}),o("li",{children:x("Om din enhet stödjer det, kan du även använda dela-knappen för att dela länken direkt.")}),o("li",{children:x("Kom ihåg att spara (skriva ner) koden")})]}),o("label",{id:B,className:b.instructionParagraph,children:x("Välj formulär")}),o(g,{"aria-labelledby":B,placeholder:"-",onOptionSelect:(o,e)=>T(e.optionValue),children:S.map((o=>e(f,{value:o.name,text:`${o.title} (${o.name})`,children:[`${o.title} (${o.name})`," "]},o.name)))}),o(i,{appearance:"primary",disabled:!N,onClick:()=>{const o=S.find((o=>o.name===N));o?.url?w.sendMessage(`#ss-link #${N}`).then((e=>{const t=e,n=o.url.includes("?")?"&":"?",r=`${o.url}${n}token=${t}`;_(r);const i=c(e);L(i)})):w.sendMessage(`#ss-link #${N}`).then((o=>{const e=`${window.location.protocol}//${window.location.hostname}${window.location.port?":"+window.location.port:""}${window.location.pathname}`;_(`${e}#/formaccept?id=${o}`);const t=c(o);L(t)}))},children:x("Skapa länk")}),$&&e(t,{children:[o("p",{className:b.generatedLinkTitle,children:x("Här är din genererade länk (du kan kopiera eller dela den):")}),o("div",{className:b.inputAndButton,children:o(l,{className:b.input,value:$,readOnly:!0,onFocus:o=>o.target.select()})}),o("br",{}),e("div",{className:b.inputAndButton,children:[o(i,{appearance:"primary",title:x("Kopiera länk"),icon:"CopyRegular",onClick:()=>{$&&(navigator.clipboard.writeText($),A(!0),setTimeout((()=>{A(!1),_(void 0)}),2e3))},children:x("Kopiera")}),M&&o(i,{appearance:"primary",title:x("Dela länk"),icon:"ShareRegular",onClick:()=>{$&&(navigator.share({url:$}),setTimeout((()=>{_(void 0)}),2e3))},children:x("Dela")})]}),I&&o(s,{children:x("Länk kopierad!")})]})]})})})};export{b as default};
@@ -17,6 +17,12 @@ export interface AppInfo {
17
17
  title: string;
18
18
  logo: string;
19
19
  }
20
+ export interface Form {
21
+ name: string;
22
+ prompt: string;
23
+ title: string;
24
+ url?: string;
25
+ }
20
26
  export interface CodicentServiceOptions {
21
27
  API_BASE_URL: string;
22
28
  APP_LOG_CODICENT: string;
@@ -105,11 +111,7 @@ export declare class CodicentService {
105
111
  findUsername: () => Promise<string | null>;
106
112
  static downloadFile: (file: FileInfo) => Promise<void>;
107
113
  static getMiniChatReply: (message: string, project?: string, messageId?: string) => Promise<string | undefined>;
108
- getForms: () => Promise<{
109
- name: string;
110
- prompt: string;
111
- title: string;
112
- }[]>;
114
+ getForms: () => Promise<Form[]>;
113
115
  getFormById: (id: string) => Promise<any>;
114
116
  private handleUnauthorized;
115
117
  getTodoStatus: (messageId: string) => Promise<"done" | "undone" | "unknown">;
@@ -1 +1 @@
1
- {"version":3,"file":"codicent.d.ts","sourceRoot":"","sources":["../../../src/services/codicent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codicent.d.ts","sourceRoot":"","sources":["../../../src/services/codicent.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -29,6 +29,12 @@ interface AppInfo {
29
29
  title: string;
30
30
  logo: string;
31
31
  }
32
+ interface Form {
33
+ name: string;
34
+ prompt: string;
35
+ title: string;
36
+ url?: string;
37
+ }
32
38
  interface CodicentServiceOptions {
33
39
  API_BASE_URL: string;
34
40
  APP_LOG_CODICENT: string;
@@ -117,11 +123,7 @@ declare class CodicentService {
117
123
  findUsername: () => Promise<string | null>;
118
124
  static downloadFile: (file: FileInfo) => Promise<void>;
119
125
  static getMiniChatReply: (message: string, project?: string, messageId?: string) => Promise<string | undefined>;
120
- getForms: () => Promise<{
121
- name: string;
122
- prompt: string;
123
- title: string;
124
- }[]>;
126
+ getForms: () => Promise<Form[]>;
125
127
  getFormById: (id: string) => Promise<any>;
126
128
  private handleUnauthorized;
127
129
  getTodoStatus: (messageId: string) => Promise<"done" | "undone" | "unknown">;
@@ -876,4 +878,4 @@ declare const Sales: React__default.FC<{
876
878
  state: CodicentAppState;
877
879
  }>;
878
880
 
879
- export { AiInput, AppConfig, AppConfigOptions, AppFrame, AppInfo, AppStateDefinition, AppStateMachine, AudioIcon, AudioRecorder, AudioRecorderState, Button, ChatInput, ChatMessage, CodicentAppState, CodicentService, CodicentServiceOptions, ColorPicker, CombinedPlaceholderDialog, Content, CrmPage, DatePicker, FilePlaceholder, FileThumbnail, Footer, FormAccept, FormInvite, Header, HtmlView, ImageViewer as ImageView, Input, Label, Login, Logout, Markdown, Message$1 as Message, Content$1 as MessageContent, MessageInput, MessageItem, Page, Profile, Prompt, RealtimeVoice, Sales, Search, SearchBox, Snap, SnapFooter, Spinner, StateContext, TemplateVariable, Text, TextHeader, Textarea, TimePicker, Title, TypingIndicator, UploadFile, UploadFileProps, UploadFileRef, UrlProcessor, UseAuthState, UserInfo, VoiceIcon, WavRecorder, WavStreamPlayer, createAppStateMachine, generateBrandVariants, getConfigValue, getGpsLocation, getTimeString, initCodicentApp, isMobileDevice, log, useAppStyles, useAudioRecorder, useAuthState, useChat, useCodicentApp, useCodicentState, useLocalization, useRealtimeVoiceAI, useStateWithLocalStorage, useTemplateVariables, useToaster, useTools, withWakeLock };
881
+ export { AiInput, AppConfig, AppConfigOptions, AppFrame, AppInfo, AppStateDefinition, AppStateMachine, AudioIcon, AudioRecorder, AudioRecorderState, Button, ChatInput, ChatMessage, CodicentAppState, CodicentService, CodicentServiceOptions, ColorPicker, CombinedPlaceholderDialog, Content, CrmPage, DatePicker, FilePlaceholder, FileThumbnail, Footer, Form, FormAccept, FormInvite, Header, HtmlView, ImageViewer as ImageView, Input, Label, Login, Logout, Markdown, Message$1 as Message, Content$1 as MessageContent, MessageInput, MessageItem, Page, Profile, Prompt, RealtimeVoice, Sales, Search, SearchBox, Snap, SnapFooter, Spinner, StateContext, TemplateVariable, Text, TextHeader, Textarea, TimePicker, Title, TypingIndicator, UploadFile, UploadFileProps, UploadFileRef, UrlProcessor, UseAuthState, UserInfo, VoiceIcon, WavRecorder, WavStreamPlayer, createAppStateMachine, generateBrandVariants, getConfigValue, getGpsLocation, getTimeString, initCodicentApp, isMobileDevice, log, useAppStyles, useAudioRecorder, useAuthState, useChat, useCodicentApp, useCodicentState, useLocalization, useRealtimeVoiceAI, useStateWithLocalStorage, useTemplateVariables, useToaster, useTools, withWakeLock };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "codicent-app-sdk",
3
- "version": "0.3.82",
3
+ "version": "0.3.84",
4
4
  "description": "SDK for building AI-powered applications with Codicent",
5
5
  "type": "module",
6
6
  "main": "dist/cjs/index.js",