From 96848e153aed8993ebf9e547093c80038011a1b5 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Thu, 26 Sep 2024 10:14:48 -0500 Subject: [PATCH] feat: load AI chat window --- assets/js/ai-interactions.js | 24 ++++++++++++++++++++++++ layouts/partials/header/javascript.html | 6 ++++-- 2 files changed, 28 insertions(+), 2 deletions(-) create mode 100644 assets/js/ai-interactions.js diff --git a/assets/js/ai-interactions.js b/assets/js/ai-interactions.js new file mode 100644 index 000000000..f9b8ba4eb --- /dev/null +++ b/assets/js/ai-interactions.js @@ -0,0 +1,24 @@ + +const ANON_USER_ID = null; + +function showAIChat() { + loadCommandAIChat(); + bootCommandAIChat(ANON_USER_ID); +} + +function loadCommandAIChat() { + // https://www.command.ai/docs/platform/installation/installing-in-web-app/ + + var o="",n="https://api.commandbar.com",a=void 0,t=window; + function r(o,n){void 0===n&&(n=!1),"complete"!==document.readyState&&window.addEventListener("load",r.bind(null,o,n),{capture:!1,once:!0});var a=document.createElement("script");a.type="text/javascript",a.async=n,a.src=o,document.head.appendChild(a)}function e(){var e;if(void 0===t.CommandBar){delete t.__CommandBarBootstrap__;var c=Symbol.for("CommandBar::configuration"),d=Symbol.for("CommandBar::disposed"),i=Symbol.for("CommandBar::isProxy"),m=Symbol.for("CommandBar::queue"),u=Symbol.for("CommandBar::unwrap"),s=Symbol.for("CommandBar::eventSubscriptions"),l=[],p=localStorage.getItem("commandbar.lc");p&&p.includes("local")&&(n="http://localhost:8000",a=void 0);var f=Object.assign(((e={})[c]={uuid:o,api:n,cdn:a},e[d]=!1,e[i]=!0,e[m]=new Array,e[u]=function(){return f},e[s]=void 0,e),t.CommandBar),v=["addCommand","boot","addEventSubscriber","addRecordAction","setFormFactor"],b=f;Object.assign(f,{shareCallbacks:function(){return{}},shareContext:function(){return{}}}),t.CommandBar=new Proxy(f,{get:function(o,n){return n in b?f[n]:"then"!==n?v.includes(n)?function(){var o=Array.prototype.slice.call(arguments);return new Promise((function(a,t){o.unshift(n,a,t),f[m].push(o)}))}:function(){var o=Array.prototype.slice.call(arguments);o.unshift(n),f[m].push(o)}:void 0}}),null!==p&&l.push("lc=".concat(p)),l.push("version=2"),a&&l.push("cdn=".concat(encodeURIComponent(a))),r("".concat(n,"/latest/").concat(o,"?").concat(l.join("&")),!0)}}e(); +} + +function bootCommandAIChat(userid) { + // https://www.command.ai/docs/platform/installation/installing-in-web-app/#booting-the-command-bar + try { + (window.CommandBar) ? window.CommandBar.boot(userid) : setTimeout(() => window.CommandBar.boot(userid), 1000); + } catch (error) { + console.error('Error booting CommandBar', error); + } + +} \ No newline at end of file diff --git a/layouts/partials/header/javascript.html b/layouts/partials/header/javascript.html index f257221be..baab406be 100644 --- a/layouts/partials/header/javascript.html +++ b/layouts/partials/header/javascript.html @@ -3,8 +3,10 @@ {{ $docsCookies := resources.Get "js/cookies.js" }} {{ $themes := resources.Get "js/docs-themes.js" }} {{ $sidebar := resources.Get "js/sidebar-toggle.js" }} -{{ $headerjs := slice $jquery $cookies $docsCookies $themes $sidebar | resources.Concat "js/header.bundle.js" | resources.Fingerprint }} +{{ $aichat := resources.Get "js/ai-interactions.js" }} +{{ $headerjs := slice $jquery $cookies $docsCookies $themes $sidebar $aichat | resources.Concat "js/header.bundle.js" | resources.Fingerprint }} - \ No newline at end of file + + \ No newline at end of file