@asgard-js/core 0.2.36 → 0.2.37

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,6 +1,7 @@
1
1
  export declare enum FetchSseAction {
2
2
  RESET_CHANNEL = "RESET_CHANNEL",
3
- NONE = "NONE"
3
+ NONE = "NONE",
4
+ RESPONSE_TOOL_CALL_CONSENT = "RESPONSE_TOOL_CALL_CONSENT"
4
5
  }
5
6
  export declare enum EventType {
6
7
  INIT = "asgard.run.init",
@@ -14,9 +15,15 @@ export declare enum EventType {
14
15
  TOOL_CALL = "asgard.tool_call",
15
16
  TOOL_CALL_START = "asgard.tool_call.start",
16
17
  TOOL_CALL_COMPLETE = "asgard.tool_call.complete",
18
+ TOOL_CALL_CONSENT = "asgard.tool_call.consent",
17
19
  DONE = "asgard.run.done",
18
20
  ERROR = "asgard.run.error"
19
21
  }
22
+ export declare enum ToolCallConsentResult {
23
+ ALLOW_ONCE = "ALLOW_ONCE",
24
+ ALLOW_ALWAYS = "ALLOW_ALWAYS",
25
+ DENY_ONCE = "DENY_ONCE"
26
+ }
20
27
  export declare enum MessageTemplateType {
21
28
  TEXT = "TEXT",
22
29
  HINT = "HINT",
@@ -1 +1 @@
1
- {"version":3,"file":"enum.d.ts","sourceRoot":"","sources":["../../src/constants/enum.ts"],"names":[],"mappings":"AAAA,oBAAY,cAAc;IACxB,aAAa,kBAAkB;IAC/B,IAAI,SAAS;CACd;AAED,oBAAY,SAAS;IACnB,IAAI,oBAAoB;IACxB,OAAO,mBAAmB;IAC1B,aAAa,yBAAyB;IACtC,gBAAgB,4BAA4B;IAC5C,OAAO,mBAAmB;IAC1B,aAAa,yBAAyB;IACtC,aAAa,yBAAyB;IACtC,gBAAgB,4BAA4B;IAC5C,SAAS,qBAAqB;IAC9B,eAAe,2BAA2B;IAC1C,kBAAkB,8BAA8B;IAChD,IAAI,oBAAoB;IACxB,KAAK,qBAAqB;CAC3B;AAED,oBAAY,mBAAmB;IAC7B,IAAI,SAAS;IACb,IAAI,SAAS;IACb,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,KAAK,UAAU;IACf,KAAK,UAAU;IACf,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,KAAK,UAAU;IACf,KAAK,UAAU;CAChB"}
1
+ {"version":3,"file":"enum.d.ts","sourceRoot":"","sources":["../../src/constants/enum.ts"],"names":[],"mappings":"AAAA,oBAAY,cAAc;IACxB,aAAa,kBAAkB;IAC/B,IAAI,SAAS;IACb,0BAA0B,+BAA+B;CAC1D;AAED,oBAAY,SAAS;IACnB,IAAI,oBAAoB;IACxB,OAAO,mBAAmB;IAC1B,aAAa,yBAAyB;IACtC,gBAAgB,4BAA4B;IAC5C,OAAO,mBAAmB;IAC1B,aAAa,yBAAyB;IACtC,aAAa,yBAAyB;IACtC,gBAAgB,4BAA4B;IAC5C,SAAS,qBAAqB;IAC9B,eAAe,2BAA2B;IAC1C,kBAAkB,8BAA8B;IAChD,iBAAiB,6BAA6B;IAC9C,IAAI,oBAAoB;IACxB,KAAK,qBAAqB;CAC3B;AAED,oBAAY,qBAAqB;IAC/B,UAAU,eAAe;IACzB,YAAY,iBAAiB;IAC7B,SAAS,cAAc;CACxB;AAED,oBAAY,mBAAmB;IAC7B,IAAI,SAAS;IACb,IAAI,SAAS;IACb,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,KAAK,UAAU;IACf,KAAK,UAAU;IACf,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,KAAK,UAAU;IACf,KAAK,UAAU;CAChB"}
package/dist/index.cjs CHANGED
@@ -1,5 +1,5 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});class Q extends Error{status;statusText;body;constructor(e,t,n){super(`HTTP ${e}: ${t}`),this.name="HttpError",this.status=e,this.statusText=t,this.body=n}}function He(r){return r instanceof Q}var D=(r=>(r.RESET_CHANNEL="RESET_CHANNEL",r.NONE="NONE",r))(D||{}),h=(r=>(r.INIT="asgard.run.init",r.PROCESS="asgard.process",r.PROCESS_START="asgard.process.start",r.PROCESS_COMPLETE="asgard.process.complete",r.MESSAGE="asgard.message",r.MESSAGE_START="asgard.message.start",r.MESSAGE_DELTA="asgard.message.delta",r.MESSAGE_COMPLETE="asgard.message.complete",r.TOOL_CALL="asgard.tool_call",r.TOOL_CALL_START="asgard.tool_call.start",r.TOOL_CALL_COMPLETE="asgard.tool_call.complete",r.DONE="asgard.run.done",r.ERROR="asgard.run.error",r))(h||{}),he=(r=>(r.TEXT="TEXT",r.HINT="HINT",r.BUTTON="BUTTON",r.IMAGE="IMAGE",r.VIDEO="VIDEO",r.AUDIO="AUDIO",r.LOCATION="LOCATION",r.CAROUSEL="CAROUSEL",r.CHART="CHART",r.TABLE="TABLE",r))(he||{}),W=function(r,e){return W=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,n){t.__proto__=n}||function(t,n){for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(t[o]=n[o])},W(r,e)};function O(r,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");W(r,e);function t(){this.constructor=r}r.prototype=e===null?Object.create(e):(t.prototype=e.prototype,new t)}function Ge(r,e,t,n){function o(i){return i instanceof t?i:new t(function(s){s(i)})}return new(t||(t=Promise))(function(i,s){function a(f){try{u(n.next(f))}catch(v){s(v)}}function c(f){try{u(n.throw(f))}catch(v){s(v)}}function u(f){f.done?i(f.value):o(f.value).then(a,c)}u((n=n.apply(r,e||[])).next())})}function ve(r,e){var t={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},n,o,i,s=Object.create((typeof Iterator=="function"?Iterator:Object).prototype);return s.next=a(0),s.throw=a(1),s.return=a(2),typeof Symbol=="function"&&(s[Symbol.iterator]=function(){return this}),s;function a(u){return function(f){return c([u,f])}}function c(u){if(n)throw new TypeError("Generator is already executing.");for(;s&&(s=0,u[0]&&(t=0)),t;)try{if(n=1,o&&(i=u[0]&2?o.return:u[0]?o.throw||((i=o.return)&&i.call(o),0):o.next)&&!(i=i.call(o,u[1])).done)return i;switch(o=0,i&&(u=[u[0]&2,i.value]),u[0]){case 0:case 1:i=u;break;case 4:return t.label++,{value:u[1],done:!1};case 5:t.label++,o=u[1],u=[0];continue;case 7:u=t.ops.pop(),t.trys.pop();continue;default:if(i=t.trys,!(i=i.length>0&&i[i.length-1])&&(u[0]===6||u[0]===2)){t=0;continue}if(u[0]===3&&(!i||u[1]>i[0]&&u[1]<i[3])){t.label=u[1];break}if(u[0]===6&&t.label<i[1]){t.label=i[1],i=u;break}if(i&&t.label<i[2]){t.label=i[2],t.ops.push(u);break}i[2]&&t.ops.pop(),t.trys.pop();continue}u=e.call(r,t)}catch(f){u=[6,f],o=0}finally{n=i=0}if(u[0]&5)throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}}function M(r){var e=typeof Symbol=="function"&&Symbol.iterator,t=e&&r[e],n=0;if(t)return t.call(r);if(r&&typeof r.length=="number")return{next:function(){return r&&n>=r.length&&(r=void 0),{value:r&&r[n++],done:!r}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function L(r,e){var t=typeof Symbol=="function"&&r[Symbol.iterator];if(!t)return r;var n=t.call(r),o,i=[],s;try{for(;(e===void 0||e-- >0)&&!(o=n.next()).done;)i.push(o.value)}catch(a){s={error:a}}finally{try{o&&!o.done&&(t=n.return)&&t.call(n)}finally{if(s)throw s.error}}return i}function R(r,e,t){if(t||arguments.length===2)for(var n=0,o=e.length,i;n<o;n++)(i||!(n in e))&&(i||(i=Array.prototype.slice.call(e,0,n)),i[n]=e[n]);return r.concat(i||Array.prototype.slice.call(e))}function P(r){return this instanceof P?(this.v=r,this):new P(r)}function Fe(r,e,t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n=t.apply(r,e||[]),o,i=[];return o=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),a("next"),a("throw"),a("return",s),o[Symbol.asyncIterator]=function(){return this},o;function s(l){return function(y){return Promise.resolve(y).then(l,v)}}function a(l,y){n[l]&&(o[l]=function(p){return new Promise(function(S,E){i.push([l,p,S,E])>1||c(l,p)})},y&&(o[l]=y(o[l])))}function c(l,y){try{u(n[l](y))}catch(p){d(i[0][3],p)}}function u(l){l.value instanceof P?Promise.resolve(l.value.v).then(f,v):d(i[0][2],l)}function f(l){c("next",l)}function v(l){c("throw",l)}function d(l,y){l(y),i.shift(),i.length&&c(i[0][0],i[0][1])}}function Ve(r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=r[Symbol.asyncIterator],t;return e?e.call(r):(r=typeof M=="function"?M(r):r[Symbol.iterator](),t={},n("next"),n("throw"),n("return"),t[Symbol.asyncIterator]=function(){return this},t);function n(i){t[i]=r[i]&&function(s){return new Promise(function(a,c){s=r[i](s),o(a,c,s.done,s.value)})}}function o(i,s,a,c){Promise.resolve(c).then(function(u){i({value:u,done:a})},s)}}function m(r){return typeof r=="function"}function pe(r){var e=function(n){Error.call(n),n.stack=new Error().stack},t=r(e);return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}var B=pe(function(r){return function(t){r(this),this.message=t?t.length+` errors occurred during unsubscription:
2
- `+t.map(function(n,o){return o+1+") "+n.toString()}).join(`
3
- `):"",this.name="UnsubscriptionError",this.errors=t}});function N(r,e){if(r){var t=r.indexOf(e);0<=t&&r.splice(t,1)}}var U=(function(){function r(e){this.initialTeardown=e,this.closed=!1,this._parentage=null,this._finalizers=null}return r.prototype.unsubscribe=function(){var e,t,n,o,i;if(!this.closed){this.closed=!0;var s=this._parentage;if(s)if(this._parentage=null,Array.isArray(s))try{for(var a=M(s),c=a.next();!c.done;c=a.next()){var u=c.value;u.remove(this)}}catch(p){e={error:p}}finally{try{c&&!c.done&&(t=a.return)&&t.call(a)}finally{if(e)throw e.error}}else s.remove(this);var f=this.initialTeardown;if(m(f))try{f()}catch(p){i=p instanceof B?p.errors:[p]}var v=this._finalizers;if(v){this._finalizers=null;try{for(var d=M(v),l=d.next();!l.done;l=d.next()){var y=l.value;try{ne(y)}catch(p){i=i??[],p instanceof B?i=R(R([],L(i)),L(p.errors)):i.push(p)}}}catch(p){n={error:p}}finally{try{l&&!l.done&&(o=d.return)&&o.call(d)}finally{if(n)throw n.error}}}if(i)throw new B(i)}},r.prototype.add=function(e){var t;if(e&&e!==this)if(this.closed)ne(e);else{if(e instanceof r){if(e.closed||e._hasParent(this))return;e._addParent(this)}(this._finalizers=(t=this._finalizers)!==null&&t!==void 0?t:[]).push(e)}},r.prototype._hasParent=function(e){var t=this._parentage;return t===e||Array.isArray(t)&&t.includes(e)},r.prototype._addParent=function(e){var t=this._parentage;this._parentage=Array.isArray(t)?(t.push(e),t):t?[t,e]:e},r.prototype._removeParent=function(e){var t=this._parentage;t===e?this._parentage=null:Array.isArray(t)&&N(t,e)},r.prototype.remove=function(e){var t=this._finalizers;t&&N(t,e),e instanceof r&&e._removeParent(this)},r.EMPTY=(function(){var e=new r;return e.closed=!0,e})(),r})(),ye=U.EMPTY;function me(r){return r instanceof U||r&&"closed"in r&&m(r.remove)&&m(r.add)&&m(r.unsubscribe)}function ne(r){m(r)?r():r.unsubscribe()}var qe={Promise:void 0},Ke={setTimeout:function(r,e){for(var t=[],n=2;n<arguments.length;n++)t[n-2]=arguments[n];return setTimeout.apply(void 0,R([r,e],L(t)))},clearTimeout:function(r){return clearTimeout(r)},delegate:void 0};function be(r){Ke.setTimeout(function(){throw r})}function X(){}function j(r){r()}var Z=(function(r){O(e,r);function e(t){var n=r.call(this)||this;return n.isStopped=!1,t?(n.destination=t,me(t)&&t.add(n)):n.destination=We,n}return e.create=function(t,n,o){return new J(t,n,o)},e.prototype.next=function(t){this.isStopped||this._next(t)},e.prototype.error=function(t){this.isStopped||(this.isStopped=!0,this._error(t))},e.prototype.complete=function(){this.isStopped||(this.isStopped=!0,this._complete())},e.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,r.prototype.unsubscribe.call(this),this.destination=null)},e.prototype._next=function(t){this.destination.next(t)},e.prototype._error=function(t){try{this.destination.error(t)}finally{this.unsubscribe()}},e.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},e})(U),Be=(function(){function r(e){this.partialObserver=e}return r.prototype.next=function(e){var t=this.partialObserver;if(t.next)try{t.next(e)}catch(n){$(n)}},r.prototype.error=function(e){var t=this.partialObserver;if(t.error)try{t.error(e)}catch(n){$(n)}else $(e)},r.prototype.complete=function(){var e=this.partialObserver;if(e.complete)try{e.complete()}catch(t){$(t)}},r})(),J=(function(r){O(e,r);function e(t,n,o){var i=r.call(this)||this,s;return m(t)||!t?s={next:t??void 0,error:n??void 0,complete:o??void 0}:s=t,i.destination=new Be(s),i}return e})(Z);function $(r){be(r)}function Ye(r){throw r}var We={closed:!0,next:X,error:Ye,complete:X},ee=(function(){return typeof Symbol=="function"&&Symbol.observable||"@@observable"})();function F(r){return r}function Xe(r){return r.length===0?F:r.length===1?r[0]:function(t){return r.reduce(function(n,o){return o(n)},t)}}var g=(function(){function r(e){e&&(this._subscribe=e)}return r.prototype.lift=function(e){var t=new r;return t.source=this,t.operator=e,t},r.prototype.subscribe=function(e,t,n){var o=this,i=ze(e)?e:new J(e,t,n);return j(function(){var s=o,a=s.operator,c=s.source;i.add(a?a.call(i,c):c?o._subscribe(i):o._trySubscribe(i))}),i},r.prototype._trySubscribe=function(e){try{return this._subscribe(e)}catch(t){e.error(t)}},r.prototype.forEach=function(e,t){var n=this;return t=oe(t),new t(function(o,i){var s=new J({next:function(a){try{e(a)}catch(c){i(c),s.unsubscribe()}},error:i,complete:o});n.subscribe(s)})},r.prototype._subscribe=function(e){var t;return(t=this.source)===null||t===void 0?void 0:t.subscribe(e)},r.prototype[ee]=function(){return this},r.prototype.pipe=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return Xe(e)(this)},r.prototype.toPromise=function(e){var t=this;return e=oe(e),new e(function(n,o){var i;t.subscribe(function(s){return i=s},function(s){return o(s)},function(){return n(i)})})},r.create=function(e){return new r(e)},r})();function oe(r){var e;return(e=r??qe.Promise)!==null&&e!==void 0?e:Promise}function Je(r){return r&&m(r.next)&&m(r.error)&&m(r.complete)}function ze(r){return r&&r instanceof Z||Je(r)&&me(r)}function Qe(r){return m(r?.lift)}function _(r){return function(e){if(Qe(e))return e.lift(function(t){try{return r(t,this)}catch(n){this.error(n)}});throw new TypeError("Unable to lift unknown Observable type")}}function I(r,e,t,n,o){return new Ze(r,e,t,n,o)}var Ze=(function(r){O(e,r);function e(t,n,o,i,s,a){var c=r.call(this,t)||this;return c.onFinalize=s,c.shouldUnsubscribe=a,c._next=n?function(u){try{n(u)}catch(f){t.error(f)}}:r.prototype._next,c._error=i?function(u){try{i(u)}catch(f){t.error(f)}finally{this.unsubscribe()}}:r.prototype._error,c._complete=o?function(){try{o()}catch(u){t.error(u)}finally{this.unsubscribe()}}:r.prototype._complete,c}return e.prototype.unsubscribe=function(){var t;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var n=this.closed;r.prototype.unsubscribe.call(this),!n&&((t=this.onFinalize)===null||t===void 0||t.call(this))}},e})(Z),et=pe(function(r){return function(){r(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}}),te=(function(r){O(e,r);function e(){var t=r.call(this)||this;return t.closed=!1,t.currentObservers=null,t.observers=[],t.isStopped=!1,t.hasError=!1,t.thrownError=null,t}return e.prototype.lift=function(t){var n=new ie(this,this);return n.operator=t,n},e.prototype._throwIfClosed=function(){if(this.closed)throw new et},e.prototype.next=function(t){var n=this;j(function(){var o,i;if(n._throwIfClosed(),!n.isStopped){n.currentObservers||(n.currentObservers=Array.from(n.observers));try{for(var s=M(n.currentObservers),a=s.next();!a.done;a=s.next()){var c=a.value;c.next(t)}}catch(u){o={error:u}}finally{try{a&&!a.done&&(i=s.return)&&i.call(s)}finally{if(o)throw o.error}}}})},e.prototype.error=function(t){var n=this;j(function(){if(n._throwIfClosed(),!n.isStopped){n.hasError=n.isStopped=!0,n.thrownError=t;for(var o=n.observers;o.length;)o.shift().error(t)}})},e.prototype.complete=function(){var t=this;j(function(){if(t._throwIfClosed(),!t.isStopped){t.isStopped=!0;for(var n=t.observers;n.length;)n.shift().complete()}})},e.prototype.unsubscribe=function(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null},Object.defineProperty(e.prototype,"observed",{get:function(){var t;return((t=this.observers)===null||t===void 0?void 0:t.length)>0},enumerable:!1,configurable:!0}),e.prototype._trySubscribe=function(t){return this._throwIfClosed(),r.prototype._trySubscribe.call(this,t)},e.prototype._subscribe=function(t){return this._throwIfClosed(),this._checkFinalizedStatuses(t),this._innerSubscribe(t)},e.prototype._innerSubscribe=function(t){var n=this,o=this,i=o.hasError,s=o.isStopped,a=o.observers;return i||s?ye:(this.currentObservers=null,a.push(t),new U(function(){n.currentObservers=null,N(a,t)}))},e.prototype._checkFinalizedStatuses=function(t){var n=this,o=n.hasError,i=n.thrownError,s=n.isStopped;o?t.error(i):s&&t.complete()},e.prototype.asObservable=function(){var t=new g;return t.source=this,t},e.create=function(t,n){return new ie(t,n)},e})(g),ie=(function(r){O(e,r);function e(t,n){var o=r.call(this)||this;return o.destination=t,o.source=n,o}return e.prototype.next=function(t){var n,o;(o=(n=this.destination)===null||n===void 0?void 0:n.next)===null||o===void 0||o.call(n,t)},e.prototype.error=function(t){var n,o;(o=(n=this.destination)===null||n===void 0?void 0:n.error)===null||o===void 0||o.call(n,t)},e.prototype.complete=function(){var t,n;(n=(t=this.destination)===null||t===void 0?void 0:t.complete)===null||n===void 0||n.call(t)},e.prototype._subscribe=function(t){var n,o;return(o=(n=this.source)===null||n===void 0?void 0:n.subscribe(t))!==null&&o!==void 0?o:ye},e})(te),se=(function(r){O(e,r);function e(t){var n=r.call(this)||this;return n._value=t,n}return Object.defineProperty(e.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),e.prototype._subscribe=function(t){var n=r.prototype._subscribe.call(this,t);return!n.closed&&t.next(this._value),n},e.prototype.getValue=function(){var t=this,n=t.hasError,o=t.thrownError,i=t._value;if(n)throw o;return this._throwIfClosed(),i},e.prototype.next=function(t){r.prototype.next.call(this,this._value=t)},e})(te),tt={now:function(){return Date.now()}},rt=(function(r){O(e,r);function e(t,n){return r.call(this)||this}return e.prototype.schedule=function(t,n){return this},e})(U),ae={setInterval:function(r,e){for(var t=[],n=2;n<arguments.length;n++)t[n-2]=arguments[n];return setInterval.apply(void 0,R([r,e],L(t)))},clearInterval:function(r){return clearInterval(r)},delegate:void 0},nt=(function(r){O(e,r);function e(t,n){var o=r.call(this,t,n)||this;return o.scheduler=t,o.work=n,o.pending=!1,o}return e.prototype.schedule=function(t,n){var o;if(n===void 0&&(n=0),this.closed)return this;this.state=t;var i=this.id,s=this.scheduler;return i!=null&&(this.id=this.recycleAsyncId(s,i,n)),this.pending=!0,this.delay=n,this.id=(o=this.id)!==null&&o!==void 0?o:this.requestAsyncId(s,this.id,n),this},e.prototype.requestAsyncId=function(t,n,o){return o===void 0&&(o=0),ae.setInterval(t.flush.bind(t,this),o)},e.prototype.recycleAsyncId=function(t,n,o){if(o===void 0&&(o=0),o!=null&&this.delay===o&&this.pending===!1)return n;n!=null&&ae.clearInterval(n)},e.prototype.execute=function(t,n){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var o=this._execute(t,n);if(o)return o;this.pending===!1&&this.id!=null&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))},e.prototype._execute=function(t,n){var o=!1,i;try{this.work(t)}catch(s){o=!0,i=s||new Error("Scheduled action threw falsy error")}if(o)return this.unsubscribe(),i},e.prototype.unsubscribe=function(){if(!this.closed){var t=this,n=t.id,o=t.scheduler,i=o.actions;this.work=this.state=this.scheduler=null,this.pending=!1,N(i,this),n!=null&&(this.id=this.recycleAsyncId(o,n,null)),this.delay=null,r.prototype.unsubscribe.call(this)}},e})(rt),ce=(function(){function r(e,t){t===void 0&&(t=r.now),this.schedulerActionCtor=e,this.now=t}return r.prototype.schedule=function(e,t,n){return t===void 0&&(t=0),new this.schedulerActionCtor(this,e).schedule(n,t)},r.now=tt.now,r})(),ot=(function(r){O(e,r);function e(t,n){n===void 0&&(n=ce.now);var o=r.call(this,t,n)||this;return o.actions=[],o._active=!1,o}return e.prototype.flush=function(t){var n=this.actions;if(this._active){n.push(t);return}var o;this._active=!0;do if(o=t.execute(t.state,t.delay))break;while(t=n.shift());if(this._active=!1,o){for(;t=n.shift();)t.unsubscribe();throw o}},e})(ce),ge=new ot(nt),it=ge,st=new g(function(r){return r.complete()});function Se(r){return r&&m(r.schedule)}function we(r){return r[r.length-1]}function at(r){return m(we(r))?r.pop():void 0}function Ee(r){return Se(we(r))?r.pop():void 0}var Ie=(function(r){return r&&typeof r.length=="number"&&typeof r!="function"});function Oe(r){return m(r?.then)}function Ae(r){return m(r[ee])}function Ce(r){return Symbol.asyncIterator&&m(r?.[Symbol.asyncIterator])}function Te(r){return new TypeError("You provided "+(r!==null&&typeof r=="object"?"an invalid object":"'"+r+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}function ct(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var xe=ct();function _e(r){return m(r?.[xe])}function Pe(r){return Fe(this,arguments,function(){var t,n,o,i;return ve(this,function(s){switch(s.label){case 0:t=r.getReader(),s.label=1;case 1:s.trys.push([1,,9,10]),s.label=2;case 2:return[4,P(t.read())];case 3:return n=s.sent(),o=n.value,i=n.done,i?[4,P(void 0)]:[3,5];case 4:return[2,s.sent()];case 5:return[4,P(o)];case 6:return[4,s.sent()];case 7:return s.sent(),[3,2];case 8:return[3,10];case 9:return t.releaseLock(),[7];case 10:return[2]}})})}function Me(r){return m(r?.getReader)}function T(r){if(r instanceof g)return r;if(r!=null){if(Ae(r))return ut(r);if(Ie(r))return lt(r);if(Oe(r))return ft(r);if(Ce(r))return Le(r);if(_e(r))return dt(r);if(Me(r))return ht(r)}throw Te(r)}function ut(r){return new g(function(e){var t=r[ee]();if(m(t.subscribe))return t.subscribe(e);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function lt(r){return new g(function(e){for(var t=0;t<r.length&&!e.closed;t++)e.next(r[t]);e.complete()})}function ft(r){return new g(function(e){r.then(function(t){e.closed||(e.next(t),e.complete())},function(t){return e.error(t)}).then(null,be)})}function dt(r){return new g(function(e){var t,n;try{for(var o=M(r),i=o.next();!i.done;i=o.next()){var s=i.value;if(e.next(s),e.closed)return}}catch(a){t={error:a}}finally{try{i&&!i.done&&(n=o.return)&&n.call(o)}finally{if(t)throw t.error}}e.complete()})}function Le(r){return new g(function(e){vt(r,e).catch(function(t){return e.error(t)})})}function ht(r){return Le(Pe(r))}function vt(r,e){var t,n,o,i;return Ge(this,void 0,void 0,function(){var s,a;return ve(this,function(c){switch(c.label){case 0:c.trys.push([0,5,6,11]),t=Ve(r),c.label=1;case 1:return[4,t.next()];case 2:if(n=c.sent(),!!n.done)return[3,4];if(s=n.value,e.next(s),e.closed)return[2];c.label=3;case 3:return[3,1];case 4:return[3,11];case 5:return a=c.sent(),o={error:a},[3,11];case 6:return c.trys.push([6,,9,10]),n&&!n.done&&(i=t.return)?[4,i.call(t)]:[3,8];case 7:c.sent(),c.label=8;case 8:return[3,10];case 9:if(o)throw o.error;return[7];case 10:return[7];case 11:return e.complete(),[2]}})})}function C(r,e,t,n,o){n===void 0&&(n=0),o===void 0&&(o=!1);var i=e.schedule(function(){t(),o?r.add(this.schedule(null,n)):this.unsubscribe()},n);if(r.add(i),!o)return i}function Re(r,e){return e===void 0&&(e=0),_(function(t,n){t.subscribe(I(n,function(o){return C(n,r,function(){return n.next(o)},e)},function(){return C(n,r,function(){return n.complete()},e)},function(o){return C(n,r,function(){return n.error(o)},e)}))})}function Ue(r,e){return e===void 0&&(e=0),_(function(t,n){n.add(r.schedule(function(){return t.subscribe(n)},e))})}function pt(r,e){return T(r).pipe(Ue(e),Re(e))}function yt(r,e){return T(r).pipe(Ue(e),Re(e))}function mt(r,e){return new g(function(t){var n=0;return e.schedule(function(){n===r.length?t.complete():(t.next(r[n++]),t.closed||this.schedule())})})}function bt(r,e){return new g(function(t){var n;return C(t,e,function(){n=r[xe](),C(t,e,function(){var o,i,s;try{o=n.next(),i=o.value,s=o.done}catch(a){t.error(a);return}s?t.complete():t.next(i)},0,!0)}),function(){return m(n?.return)&&n.return()}})}function ke(r,e){if(!r)throw new Error("Iterable cannot be null");return new g(function(t){C(t,e,function(){var n=r[Symbol.asyncIterator]();C(t,e,function(){n.next().then(function(o){o.done?t.complete():t.next(o.value)})},0,!0)})})}function gt(r,e){return ke(Pe(r),e)}function St(r,e){if(r!=null){if(Ae(r))return pt(r,e);if(Ie(r))return mt(r,e);if(Oe(r))return yt(r,e);if(Ce(r))return ke(r,e);if(_e(r))return bt(r,e);if(Me(r))return gt(r,e)}throw Te(r)}function re(r,e){return e?St(r,e):T(r)}function wt(){for(var r=[],e=0;e<arguments.length;e++)r[e]=arguments[e];var t=Ee(r);return re(r,t)}function Et(r){return r instanceof Date&&!isNaN(r)}function V(r,e){return _(function(t,n){var o=0;t.subscribe(I(n,function(i){n.next(r.call(e,i,o++))}))})}var It=Array.isArray;function Ot(r,e){return It(e)?r.apply(void 0,R([],L(e))):r(e)}function At(r){return V(function(e){return Ot(r,e)})}var Ct=Array.isArray,Tt=Object.getPrototypeOf,xt=Object.prototype,_t=Object.keys;function Pt(r){if(r.length===1){var e=r[0];if(Ct(e))return{args:e,keys:null};if(Mt(e)){var t=_t(e);return{args:t.map(function(n){return e[n]}),keys:t}}}return{args:r,keys:null}}function Mt(r){return r&&typeof r=="object"&&Tt(r)===xt}function Lt(r,e){return r.reduce(function(t,n,o){return t[n]=e[o],t},{})}function Rt(){for(var r=[],e=0;e<arguments.length;e++)r[e]=arguments[e];var t=Ee(r),n=at(r),o=Pt(r),i=o.args,s=o.keys;if(i.length===0)return re([],t);var a=new g(Ut(i,t,s?function(c){return Lt(s,c)}:F));return n?a.pipe(At(n)):a}function Ut(r,e,t){return t===void 0&&(t=F),function(n){ue(e,function(){for(var o=r.length,i=new Array(o),s=o,a=o,c=function(f){ue(e,function(){var v=re(r[f],e),d=!1;v.subscribe(I(n,function(l){i[f]=l,d||(d=!0,a--),a||n.next(t(i.slice()))},function(){--s||n.complete()}))},n)},u=0;u<o;u++)c(u)},n)}}function ue(r,e,t){r?C(t,r,e):e()}function kt(r,e,t,n,o,i,s,a){var c=[],u=0,f=0,v=!1,d=function(){v&&!c.length&&!u&&e.complete()},l=function(p){return u<n?y(p):c.push(p)},y=function(p){u++;var S=!1;T(t(p,f++)).subscribe(I(e,function(E){e.next(E)},function(){S=!0},void 0,function(){if(S)try{u--;for(var E=function(){var x=c.shift();s||y(x)};c.length&&u<n;)E();d()}catch(x){e.error(x)}}))};return r.subscribe(I(e,l,function(){v=!0,d()})),function(){}}function H(r,e,t){return t===void 0&&(t=1/0),m(e)?H(function(n,o){return V(function(i,s){return e(n,i,o,s)})(T(r(n,o)))},t):(typeof e=="number"&&(t=e),_(function(n,o){return kt(n,o,r,t)}))}function $e(r,e,t){r===void 0&&(r=0),t===void 0&&(t=it);var n=-1;return e!=null&&(Se(e)?t=e:n=e),new g(function(o){var i=Et(r)?+r-t.now():r;i<0&&(i=0);var s=0;return t.schedule(function(){o.closed||(o.next(s++),0<=n?this.schedule(void 0,n):o.complete())},i)})}function $t(r,e){return m(e)?H(r,e,1):H(r,1)}function jt(r){return r<=0?function(){return st}:_(function(e,t){var n=0;e.subscribe(I(t,function(o){++n<=r&&(t.next(o),r<=n&&t.complete())}))})}function Dt(r){return V(function(){return r})}function Nt(r,e){return H(function(t,n){return T(r(t,n)).pipe(jt(1),Dt(t))})}function Ht(r,e){e===void 0&&(e=ge);var t=$e(r,e);return Nt(function(){return t})}function Gt(r){var e;e={count:r};var t=e.count,n=t===void 0?1/0:t,o=e.delay,i=e.resetOnSuccess,s=i===void 0?!1:i;return n<=0?F:_(function(a,c){var u=0,f,v=function(){var d=!1;f=a.subscribe(I(c,function(l){s&&(u=0),c.next(l)},void 0,function(l){if(u++<n){var y=function(){f?(f.unsubscribe(),f=null,v()):d=!0};if(o!=null){var p=typeof o=="number"?$e(o):T(o(l,u)),S=I(c,function(){S.unsubscribe(),y()},function(){c.complete()});p.subscribe(S)}else y()}else c.error(l)})),d&&(f.unsubscribe(),f=null,v())};v()})}function Ft(r){return _(function(e,t){T(r).subscribe(I(t,function(){return t.complete()},X)),!t.closed&&e.subscribe(t)})}async function Vt(r,e){const t=r.getReader();let n;for(;!(n=await t.read()).done;)e(n.value)}function qt(r){let e,t,n,o=!1;return function(s){e===void 0?(e=s,t=0,n=-1):e=Bt(e,s);const a=e.length;let c=0;for(;t<a;){o&&(e[t]===10&&(c=++t),o=!1);let u=-1;for(;t<a&&u===-1;++t)switch(e[t]){case 58:n===-1&&(n=t-c);break;case 13:o=!0;case 10:u=t;break}if(u===-1)break;r(e.subarray(c,u),n),c=t,n=-1}c===a?e=void 0:c!==0&&(e=e.subarray(c),t-=c)}}function Kt(r,e,t){let n=le();const o=new TextDecoder;return function(s,a){if(s.length===0)t?.(n),n=le();else if(a>0){const c=o.decode(s.subarray(0,a)),u=a+(s[a+1]===32?2:1),f=o.decode(s.subarray(u));switch(c){case"data":n.data=n.data?n.data+`
4
- `+f:f;break;case"event":n.event=f;break;case"id":r(n.id=f);break;case"retry":const v=parseInt(f,10);isNaN(v)||e(n.retry=v);break}}}}function Bt(r,e){const t=new Uint8Array(r.length+e.length);return t.set(r),t.set(e,r.length),t}function le(){return{data:"",event:"",id:"",retry:void 0}}var Yt=function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var o=0,n=Object.getOwnPropertySymbols(r);o<n.length;o++)e.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(r,n[o])&&(t[n[o]]=r[n[o]]);return t};const z="text/event-stream",Wt=1e3,fe="last-event-id";function Xt(r,e){var{signal:t,headers:n,onopen:o,onmessage:i,onclose:s,onerror:a,openWhenHidden:c,fetch:u}=e,f=Yt(e,["signal","headers","onopen","onmessage","onclose","onerror","openWhenHidden","fetch"]);return new Promise((v,d)=>{const l=Object.assign({},n);l.accept||(l.accept=z);let y;function p(){y.abort(),document.hidden||q()}c||document.addEventListener("visibilitychange",p);let S=Wt,E=0;function x(){document.removeEventListener("visibilitychange",p),window.clearTimeout(E),y.abort()}t?.addEventListener("abort",()=>{x(),v()});const De=u??window.fetch,Ne=o??Jt;async function q(){var K;y=new AbortController;try{const k=await De(r,Object.assign(Object.assign({},f),{headers:l,signal:y.signal}));await Ne(k),await Vt(k.body,qt(Kt(A=>{A?l[fe]=A:delete l[fe]},A=>{S=A},i))),s?.(),x(),v()}catch(k){if(!y.signal.aborted)try{const A=(K=a?.(k))!==null&&K!==void 0?K:S;window.clearTimeout(E),E=window.setTimeout(q,A)}catch(A){x(),d(A)}}}q()})}function Jt(r){const e=r.headers.get("content-type");if(!e?.startsWith(z))throw new Error(`Expected content-type to be ${z}, Actual: ${e}`)}function zt(r){const{endpoint:e,apiKey:t,payload:n,debugMode:o,customHeaders:i}=r;return new g(s=>{const a=new AbortController;let c;const u={"Content-Type":"application/json",...i};t&&(u["X-API-KEY"]=t);const f=new URLSearchParams;o&&f.set("is_debug","true");const v=new URL(e);return f.toString()&&(v.search=f.toString()),Xt(v.toString(),{method:"POST",headers:u,body:n?JSON.stringify(n):void 0,signal:a.signal,openWhenHidden:!0,onopen:async d=>{if(d.ok)c=d.headers.get("X-Trace-Id")??void 0;else{let l;try{l=await d.json()}catch{try{l=await d.text()}catch{l=null}}s.error(new Q(d.status,d.statusText,l)),a.abort()}},onmessage:d=>{const l=JSON.parse(d.data);c?l.traceId=c:l.requestId&&(l.traceId=l.requestId,c||(c=l.requestId)),s.next(l)},onclose:()=>{s.complete()},onerror:d=>{throw s.error(d),a.abort(),d}}),()=>{a.abort()}})}class Qt{listeners={};on(e,t){this.listeners=Object.assign({},this.listeners,{[e]:(this.listeners[e]??[]).concat(t)})}off(e,t){this.listeners[e]&&(this.listeners=Object.assign({},this.listeners,{[e]:(this.listeners[e]??[]).filter(n=>n!==t)}))}remove(e){delete this.listeners[e]}emit(e,...t){this.listeners[e]&&this.listeners[e].forEach(n=>n(...t))}}class Zt{apiKey;endpoint;botProviderEndpoint;debugMode;destroy$=new te;sseEmitter=new Qt;transformSsePayload;customHeaders;constructor(e){if(!e.endpoint&&!e.botProviderEndpoint)throw new Error("Either endpoint or botProviderEndpoint must be provided");if(this.apiKey=e.apiKey,this.debugMode=e.debugMode,this.transformSsePayload=e.transformSsePayload,this.botProviderEndpoint=e.botProviderEndpoint,this.customHeaders=e.customHeaders,!e.endpoint&&e.botProviderEndpoint){const t=e.botProviderEndpoint.replace(/\/+$/,"");this.endpoint=`${t}/message/sse`}else e.endpoint&&(this.endpoint=e.endpoint,this.debugMode&&console.warn('[AsgardServiceClient] The "endpoint" option is deprecated and will be removed in the next major version. Please use "botProviderEndpoint" instead. The SSE endpoint will be automatically derived as "${botProviderEndpoint}/message/sse".'))}on(e,t){this.sseEmitter.remove(e),this.sseEmitter.on(e,t)}handleEvent(e){switch(e.eventType){case h.INIT:this.sseEmitter.emit(h.INIT,e);break;case h.PROCESS_START:case h.PROCESS_COMPLETE:this.sseEmitter.emit(h.PROCESS,e);break;case h.MESSAGE_START:case h.MESSAGE_DELTA:case h.MESSAGE_COMPLETE:this.sseEmitter.emit(h.MESSAGE,e);break;case h.TOOL_CALL_START:case h.TOOL_CALL_COMPLETE:this.sseEmitter.emit(h.TOOL_CALL,e);break;case h.DONE:this.sseEmitter.emit(h.DONE,e);break;case h.ERROR:this.sseEmitter.emit(h.ERROR,e);break}}fetchSse(e,t){t?.onSseStart?.(),zt({apiKey:this.apiKey,endpoint:this.endpoint,debugMode:this.debugMode,payload:this.transformSsePayload?.(e)??e,customHeaders:this.customHeaders}).pipe($t(n=>wt(n).pipe(Ht(t?.delayTime??50))),Ft(this.destroy$),Gt(3)).subscribe({next:n=>{t?.onSseMessage?.(n),this.handleEvent(n)},error:n=>{t?.onSseError?.(n)},complete:()=>{t?.onSseCompleted?.()}})}close(){this.destroy$.next(),this.destroy$.complete()}async uploadFile(e,t){const n=this.deriveBlobEndpoint();if(!n)throw new Error("Unable to derive blob endpoint. Please provide botProviderEndpoint in config.");const o=new FormData;o.append("file",e),o.append("customChannelId",t);const i={...this.customHeaders};this.apiKey&&(i["X-API-KEY"]=this.apiKey);try{const s=await fetch(n,{method:"POST",headers:i,body:o});if(!s.ok)throw new Error(`Upload failed: ${s.status} ${s.statusText}`);const a=await s.json();return this.debugMode&&console.log("[AsgardServiceClient] File upload response:",a),a}catch(s){throw console.error("[AsgardServiceClient] File upload error:",s),s}}deriveBlobEndpoint(){if(!this.botProviderEndpoint&&!this.endpoint)return null;let e=this.botProviderEndpoint;return!e&&this.endpoint&&(e=this.endpoint.replace("/message/sse","")),e?(e=e.replace(/\/+$/,""),`${e}/blob`):null}}const b=[];for(let r=0;r<256;++r)b.push((r+256).toString(16).slice(1));function er(r,e=0){return(b[r[e+0]]+b[r[e+1]]+b[r[e+2]]+b[r[e+3]]+"-"+b[r[e+4]]+b[r[e+5]]+"-"+b[r[e+6]]+b[r[e+7]]+"-"+b[r[e+8]]+b[r[e+9]]+"-"+b[r[e+10]]+b[r[e+11]]+b[r[e+12]]+b[r[e+13]]+b[r[e+14]]+b[r[e+15]]).toLowerCase()}let Y;const tr=new Uint8Array(16);function rr(){if(!Y){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");Y=crypto.getRandomValues.bind(crypto)}return Y(tr)}const nr=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),de={randomUUID:nr};function or(r,e,t){r=r||{};const n=r.random??r.rng?.()??rr();if(n.length<16)throw new Error("Random bytes length must be >= 16");return n[6]=n[6]&15|64,n[8]=n[8]&63|128,er(n)}function je(r,e,t){return de.randomUUID&&!r?de.randomUUID():or(r)}class w{messages=null;constructor({messages:e}){this.messages=e}pushMessage(e){const t=new Map(this.messages);return t.set(e.messageId,e),new w({messages:t})}onMessage(e){switch(e.eventType){case h.MESSAGE_START:return this.onMessageStart(e);case h.MESSAGE_DELTA:return this.onMessageDelta(e);case h.MESSAGE_COMPLETE:return this.onMessageComplete(e);case h.TOOL_CALL_START:return this.onToolCallStart(e);case h.TOOL_CALL_COMPLETE:return this.onToolCallComplete(e);case h.ERROR:return this.onMessageError(e);default:return this}}onMessageStart(e){const t=e.fact.messageStart.message,n=new Map(this.messages);return n.set(t.messageId,{type:"bot",eventType:h.MESSAGE_START,isTyping:!0,typingText:"",messageId:t.messageId,message:t,time:new Date,traceId:e.traceId,raw:""}),new w({messages:n})}onMessageDelta(e){const t=e.fact.messageDelta.message,n=new Map(this.messages),o=n.get(t.messageId);if(o?.type!=="bot")return this;const i=`${o?.typingText??""}${t.text}`;return n.set(t.messageId,{type:"bot",eventType:h.MESSAGE_DELTA,isTyping:!0,typingText:i,messageId:t.messageId,message:t,time:new Date,traceId:e.traceId??o.traceId,raw:o.raw}),new w({messages:n})}onMessageComplete(e){const t=e.fact.messageComplete.message,n=new Map(this.messages),o=n.get(t.messageId);return n.set(t.messageId,{type:"bot",eventType:h.MESSAGE_COMPLETE,isTyping:!1,typingText:null,messageId:t.messageId,message:t,time:new Date,traceId:e.traceId??(o?.type==="bot"?o.traceId:void 0),raw:JSON.stringify(e)}),new w({messages:n})}onMessageError(e){const t=je(),n=e.fact.runError.error,o=new Map(this.messages);return o.set(t,{type:"error",eventType:h.ERROR,messageId:t,error:n,time:new Date,traceId:e.traceId}),new w({messages:o})}onToolCallStart(e){const t=e.fact.toolCallStart,n=new Map(this.messages),o=`${t.processId}-${t.callSeq}`,i={type:"tool-call",eventType:h.TOOL_CALL_START,messageId:o,processId:t.processId,callSeq:t.callSeq,toolName:t.toolCall.toolName,toolsetName:t.toolCall.toolsetName,parameter:t.toolCall.parameter,isComplete:!1,time:new Date,traceId:e.traceId};return n.set(o,i),new w({messages:n})}onToolCallComplete(e){const t=e.fact.toolCallComplete,n=new Map(this.messages),o=`${t.processId}-${t.callSeq}`,i=n.get(o);if(i?.type==="tool-call"){const s={...i,eventType:h.TOOL_CALL_COMPLETE,result:t.toolCallResult,isComplete:!0,traceId:e.traceId??i.traceId};n.set(o,s)}return new w({messages:n})}}class G{client;customChannelId;customMessageId;isConnecting$;conversation$;statesObserver;statesSubscription;currentUserMessageId;constructor(e){if(!e.client)throw new Error("client must be required");if(!e.customChannelId)throw new Error("customChannelId must be required");this.client=e.client,this.customChannelId=e.customChannelId,this.customMessageId=e.customMessageId,this.isConnecting$=new se(!1),this.conversation$=new se(e.conversation),this.statesObserver=e.statesObserver}static create(e){const t=new G(e);return t.subscribe(),t}static async reset(e,t,n){const o=new G(e);try{return o.subscribe(),await o.resetChannel(t,n),o}catch(i){throw o.close(),i}}subscribe(){this.statesSubscription=Rt([this.isConnecting$,this.conversation$]).pipe(V(([e,t])=>({isConnecting:e,conversation:t}))).subscribe(this.statesObserver)}resolvePayload(e){if(typeof e=="function")try{return e()}catch(t){throw new Error(`Failed to resolve payload function: ${t instanceof Error?t.message:String(t)}`)}return e}fetchSse(e,t){return new Promise((n,o)=>{this.isConnecting$.next(!0),this.client.fetchSse(e,{onSseStart:t?.onSseStart,onSseMessage:i=>{if(t?.onSseMessage?.(i),this.currentUserMessageId&&i.traceId){const s=new Map(this.conversation$.value.messages),a=s.get(this.currentUserMessageId);a&&a.type==="user"&&(s.set(this.currentUserMessageId,{...a,traceId:i.traceId}),this.conversation$.next(new w({messages:s}))),this.currentUserMessageId=void 0}this.conversation$.next(this.conversation$.value.onMessage(i))},onSseError:i=>{t?.onSseError?.(i),this.isConnecting$.next(!1),this.currentUserMessageId=void 0,o(i)},onSseCompleted:()=>{t?.onSseCompleted?.(),this.isConnecting$.next(!1),this.currentUserMessageId=void 0,n()}})})}resetChannel(e,t){return this.fetchSse({action:D.RESET_CHANNEL,customChannelId:this.customChannelId,customMessageId:this.customMessageId,text:e?.text||"",payload:this.resolvePayload(e?.payload)},t)}sendMessage(e,t){const n=e.text.trim(),o=e.customMessageId??je();return this.currentUserMessageId=o,this.conversation$.next(this.conversation$.value.pushMessage({type:"user",messageId:o,text:n,blobIds:e.blobIds,filePreviewUrls:e.filePreviewUrls,documentNames:e.documentNames,time:new Date})),this.fetchSse({action:D.NONE,customChannelId:this.customChannelId,customMessageId:o,payload:this.resolvePayload(e?.payload),text:n,blobIds:e?.blobIds},t)}close(){this.isConnecting$.complete(),this.conversation$.complete(),this.statesSubscription?.unsubscribe()}}exports.AsgardServiceClient=Zt;exports.Channel=G;exports.Conversation=w;exports.EventType=h;exports.FetchSseAction=D;exports.HttpError=Q;exports.MessageTemplateType=he;exports.isHttpError=He;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});class Q extends Error{status;statusText;body;constructor(e,t,r){super(`HTTP ${e}: ${t}`),this.name="HttpError",this.status=e,this.statusText=t,this.body=r}}function Ge(n){return n instanceof Q}var M=(n=>(n.RESET_CHANNEL="RESET_CHANNEL",n.NONE="NONE",n.RESPONSE_TOOL_CALL_CONSENT="RESPONSE_TOOL_CALL_CONSENT",n))(M||{}),d=(n=>(n.INIT="asgard.run.init",n.PROCESS="asgard.process",n.PROCESS_START="asgard.process.start",n.PROCESS_COMPLETE="asgard.process.complete",n.MESSAGE="asgard.message",n.MESSAGE_START="asgard.message.start",n.MESSAGE_DELTA="asgard.message.delta",n.MESSAGE_COMPLETE="asgard.message.complete",n.TOOL_CALL="asgard.tool_call",n.TOOL_CALL_START="asgard.tool_call.start",n.TOOL_CALL_COMPLETE="asgard.tool_call.complete",n.TOOL_CALL_CONSENT="asgard.tool_call.consent",n.DONE="asgard.run.done",n.ERROR="asgard.run.error",n))(d||{}),he=(n=>(n.ALLOW_ONCE="ALLOW_ONCE",n.ALLOW_ALWAYS="ALLOW_ALWAYS",n.DENY_ONCE="DENY_ONCE",n))(he||{}),pe=(n=>(n.TEXT="TEXT",n.HINT="HINT",n.BUTTON="BUTTON",n.IMAGE="IMAGE",n.VIDEO="VIDEO",n.AUDIO="AUDIO",n.LOCATION="LOCATION",n.CAROUSEL="CAROUSEL",n.CHART="CHART",n.TABLE="TABLE",n))(pe||{}),W=function(n,e){return W=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,r){t.__proto__=r}||function(t,r){for(var o in r)Object.prototype.hasOwnProperty.call(r,o)&&(t[o]=r[o])},W(n,e)};function I(n,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");W(n,e);function t(){this.constructor=n}n.prototype=e===null?Object.create(e):(t.prototype=e.prototype,new t)}function Fe(n,e,t,r){function o(i){return i instanceof t?i:new t(function(s){s(i)})}return new(t||(t=Promise))(function(i,s){function a(f){try{u(r.next(f))}catch(p){s(p)}}function c(f){try{u(r.throw(f))}catch(p){s(p)}}function u(f){f.done?i(f.value):o(f.value).then(a,c)}u((r=r.apply(n,e||[])).next())})}function ve(n,e){var t={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},r,o,i,s=Object.create((typeof Iterator=="function"?Iterator:Object).prototype);return s.next=a(0),s.throw=a(1),s.return=a(2),typeof Symbol=="function"&&(s[Symbol.iterator]=function(){return this}),s;function a(u){return function(f){return c([u,f])}}function c(u){if(r)throw new TypeError("Generator is already executing.");for(;s&&(s=0,u[0]&&(t=0)),t;)try{if(r=1,o&&(i=u[0]&2?o.return:u[0]?o.throw||((i=o.return)&&i.call(o),0):o.next)&&!(i=i.call(o,u[1])).done)return i;switch(o=0,i&&(u=[u[0]&2,i.value]),u[0]){case 0:case 1:i=u;break;case 4:return t.label++,{value:u[1],done:!1};case 5:t.label++,o=u[1],u=[0];continue;case 7:u=t.ops.pop(),t.trys.pop();continue;default:if(i=t.trys,!(i=i.length>0&&i[i.length-1])&&(u[0]===6||u[0]===2)){t=0;continue}if(u[0]===3&&(!i||u[1]>i[0]&&u[1]<i[3])){t.label=u[1];break}if(u[0]===6&&t.label<i[1]){t.label=i[1],i=u;break}if(i&&t.label<i[2]){t.label=i[2],t.ops.push(u);break}i[2]&&t.ops.pop(),t.trys.pop();continue}u=e.call(n,t)}catch(f){u=[6,f],o=0}finally{r=i=0}if(u[0]&5)throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}}function P(n){var e=typeof Symbol=="function"&&Symbol.iterator,t=e&&n[e],r=0;if(t)return t.call(n);if(n&&typeof n.length=="number")return{next:function(){return n&&r>=n.length&&(n=void 0),{value:n&&n[r++],done:!n}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function R(n,e){var t=typeof Symbol=="function"&&n[Symbol.iterator];if(!t)return n;var r=t.call(n),o,i=[],s;try{for(;(e===void 0||e-- >0)&&!(o=r.next()).done;)i.push(o.value)}catch(a){s={error:a}}finally{try{o&&!o.done&&(t=r.return)&&t.call(r)}finally{if(s)throw s.error}}return i}function N(n,e,t){if(t||arguments.length===2)for(var r=0,o=e.length,i;r<o;r++)(i||!(r in e))&&(i||(i=Array.prototype.slice.call(e,0,r)),i[r]=e[r]);return n.concat(i||Array.prototype.slice.call(e))}function x(n){return this instanceof x?(this.v=n,this):new x(n)}function Ve(n,e,t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=t.apply(n,e||[]),o,i=[];return o=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),a("next"),a("throw"),a("return",s),o[Symbol.asyncIterator]=function(){return this},o;function s(l){return function(y){return Promise.resolve(y).then(l,p)}}function a(l,y){r[l]&&(o[l]=function(v){return new Promise(function(E,w){i.push([l,v,E,w])>1||c(l,v)})},y&&(o[l]=y(o[l])))}function c(l,y){try{u(r[l](y))}catch(v){h(i[0][3],v)}}function u(l){l.value instanceof x?Promise.resolve(l.value.v).then(f,p):h(i[0][2],l)}function f(l){c("next",l)}function p(l){c("throw",l)}function h(l,y){l(y),i.shift(),i.length&&c(i[0][0],i[0][1])}}function qe(n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=n[Symbol.asyncIterator],t;return e?e.call(n):(n=typeof P=="function"?P(n):n[Symbol.iterator](),t={},r("next"),r("throw"),r("return"),t[Symbol.asyncIterator]=function(){return this},t);function r(i){t[i]=n[i]&&function(s){return new Promise(function(a,c){s=n[i](s),o(a,c,s.done,s.value)})}}function o(i,s,a,c){Promise.resolve(c).then(function(u){i({value:u,done:a})},s)}}function m(n){return typeof n=="function"}function ye(n){var e=function(r){Error.call(r),r.stack=new Error().stack},t=n(e);return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}var Y=ye(function(n){return function(t){n(this),this.message=t?t.length+` errors occurred during unsubscription:
2
+ `+t.map(function(r,o){return o+1+") "+r.toString()}).join(`
3
+ `):"",this.name="UnsubscriptionError",this.errors=t}});function D(n,e){if(n){var t=n.indexOf(e);0<=t&&n.splice(t,1)}}var U=(function(){function n(e){this.initialTeardown=e,this.closed=!1,this._parentage=null,this._finalizers=null}return n.prototype.unsubscribe=function(){var e,t,r,o,i;if(!this.closed){this.closed=!0;var s=this._parentage;if(s)if(this._parentage=null,Array.isArray(s))try{for(var a=P(s),c=a.next();!c.done;c=a.next()){var u=c.value;u.remove(this)}}catch(v){e={error:v}}finally{try{c&&!c.done&&(t=a.return)&&t.call(a)}finally{if(e)throw e.error}}else s.remove(this);var f=this.initialTeardown;if(m(f))try{f()}catch(v){i=v instanceof Y?v.errors:[v]}var p=this._finalizers;if(p){this._finalizers=null;try{for(var h=P(p),l=h.next();!l.done;l=h.next()){var y=l.value;try{re(y)}catch(v){i=i??[],v instanceof Y?i=N(N([],R(i)),R(v.errors)):i.push(v)}}}catch(v){r={error:v}}finally{try{l&&!l.done&&(o=h.return)&&o.call(h)}finally{if(r)throw r.error}}}if(i)throw new Y(i)}},n.prototype.add=function(e){var t;if(e&&e!==this)if(this.closed)re(e);else{if(e instanceof n){if(e.closed||e._hasParent(this))return;e._addParent(this)}(this._finalizers=(t=this._finalizers)!==null&&t!==void 0?t:[]).push(e)}},n.prototype._hasParent=function(e){var t=this._parentage;return t===e||Array.isArray(t)&&t.includes(e)},n.prototype._addParent=function(e){var t=this._parentage;this._parentage=Array.isArray(t)?(t.push(e),t):t?[t,e]:e},n.prototype._removeParent=function(e){var t=this._parentage;t===e?this._parentage=null:Array.isArray(t)&&D(t,e)},n.prototype.remove=function(e){var t=this._finalizers;t&&D(t,e),e instanceof n&&e._removeParent(this)},n.EMPTY=(function(){var e=new n;return e.closed=!0,e})(),n})(),me=U.EMPTY;function be(n){return n instanceof U||n&&"closed"in n&&m(n.remove)&&m(n.add)&&m(n.unsubscribe)}function re(n){m(n)?n():n.unsubscribe()}var Ke={Promise:void 0},Ye={setTimeout:function(n,e){for(var t=[],r=2;r<arguments.length;r++)t[r-2]=arguments[r];return setTimeout.apply(void 0,N([n,e],R(t)))},clearTimeout:function(n){return clearTimeout(n)},delegate:void 0};function ge(n){Ye.setTimeout(function(){throw n})}function X(){}function j(n){n()}var Z=(function(n){I(e,n);function e(t){var r=n.call(this)||this;return r.isStopped=!1,t?(r.destination=t,be(t)&&t.add(r)):r.destination=Xe,r}return e.create=function(t,r,o){return new J(t,r,o)},e.prototype.next=function(t){this.isStopped||this._next(t)},e.prototype.error=function(t){this.isStopped||(this.isStopped=!0,this._error(t))},e.prototype.complete=function(){this.isStopped||(this.isStopped=!0,this._complete())},e.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,n.prototype.unsubscribe.call(this),this.destination=null)},e.prototype._next=function(t){this.destination.next(t)},e.prototype._error=function(t){try{this.destination.error(t)}finally{this.unsubscribe()}},e.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},e})(U),Be=(function(){function n(e){this.partialObserver=e}return n.prototype.next=function(e){var t=this.partialObserver;if(t.next)try{t.next(e)}catch(r){$(r)}},n.prototype.error=function(e){var t=this.partialObserver;if(t.error)try{t.error(e)}catch(r){$(r)}else $(e)},n.prototype.complete=function(){var e=this.partialObserver;if(e.complete)try{e.complete()}catch(t){$(t)}},n})(),J=(function(n){I(e,n);function e(t,r,o){var i=n.call(this)||this,s;return m(t)||!t?s={next:t??void 0,error:r??void 0,complete:o??void 0}:s=t,i.destination=new Be(s),i}return e})(Z);function $(n){ge(n)}function We(n){throw n}var Xe={closed:!0,next:X,error:We,complete:X},ee=(function(){return typeof Symbol=="function"&&Symbol.observable||"@@observable"})();function F(n){return n}function Je(n){return n.length===0?F:n.length===1?n[0]:function(t){return n.reduce(function(r,o){return o(r)},t)}}var g=(function(){function n(e){e&&(this._subscribe=e)}return n.prototype.lift=function(e){var t=new n;return t.source=this,t.operator=e,t},n.prototype.subscribe=function(e,t,r){var o=this,i=Qe(e)?e:new J(e,t,r);return j(function(){var s=o,a=s.operator,c=s.source;i.add(a?a.call(i,c):c?o._subscribe(i):o._trySubscribe(i))}),i},n.prototype._trySubscribe=function(e){try{return this._subscribe(e)}catch(t){e.error(t)}},n.prototype.forEach=function(e,t){var r=this;return t=oe(t),new t(function(o,i){var s=new J({next:function(a){try{e(a)}catch(c){i(c),s.unsubscribe()}},error:i,complete:o});r.subscribe(s)})},n.prototype._subscribe=function(e){var t;return(t=this.source)===null||t===void 0?void 0:t.subscribe(e)},n.prototype[ee]=function(){return this},n.prototype.pipe=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return Je(e)(this)},n.prototype.toPromise=function(e){var t=this;return e=oe(e),new e(function(r,o){var i;t.subscribe(function(s){return i=s},function(s){return o(s)},function(){return r(i)})})},n.create=function(e){return new n(e)},n})();function oe(n){var e;return(e=n??Ke.Promise)!==null&&e!==void 0?e:Promise}function ze(n){return n&&m(n.next)&&m(n.error)&&m(n.complete)}function Qe(n){return n&&n instanceof Z||ze(n)&&be(n)}function Ze(n){return m(n?.lift)}function L(n){return function(e){if(Ze(e))return e.lift(function(t){try{return n(t,this)}catch(r){this.error(r)}});throw new TypeError("Unable to lift unknown Observable type")}}function O(n,e,t,r,o){return new et(n,e,t,r,o)}var et=(function(n){I(e,n);function e(t,r,o,i,s,a){var c=n.call(this,t)||this;return c.onFinalize=s,c.shouldUnsubscribe=a,c._next=r?function(u){try{r(u)}catch(f){t.error(f)}}:n.prototype._next,c._error=i?function(u){try{i(u)}catch(f){t.error(f)}finally{this.unsubscribe()}}:n.prototype._error,c._complete=o?function(){try{o()}catch(u){t.error(u)}finally{this.unsubscribe()}}:n.prototype._complete,c}return e.prototype.unsubscribe=function(){var t;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var r=this.closed;n.prototype.unsubscribe.call(this),!r&&((t=this.onFinalize)===null||t===void 0||t.call(this))}},e})(Z),tt=ye(function(n){return function(){n(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}}),te=(function(n){I(e,n);function e(){var t=n.call(this)||this;return t.closed=!1,t.currentObservers=null,t.observers=[],t.isStopped=!1,t.hasError=!1,t.thrownError=null,t}return e.prototype.lift=function(t){var r=new ie(this,this);return r.operator=t,r},e.prototype._throwIfClosed=function(){if(this.closed)throw new tt},e.prototype.next=function(t){var r=this;j(function(){var o,i;if(r._throwIfClosed(),!r.isStopped){r.currentObservers||(r.currentObservers=Array.from(r.observers));try{for(var s=P(r.currentObservers),a=s.next();!a.done;a=s.next()){var c=a.value;c.next(t)}}catch(u){o={error:u}}finally{try{a&&!a.done&&(i=s.return)&&i.call(s)}finally{if(o)throw o.error}}}})},e.prototype.error=function(t){var r=this;j(function(){if(r._throwIfClosed(),!r.isStopped){r.hasError=r.isStopped=!0,r.thrownError=t;for(var o=r.observers;o.length;)o.shift().error(t)}})},e.prototype.complete=function(){var t=this;j(function(){if(t._throwIfClosed(),!t.isStopped){t.isStopped=!0;for(var r=t.observers;r.length;)r.shift().complete()}})},e.prototype.unsubscribe=function(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null},Object.defineProperty(e.prototype,"observed",{get:function(){var t;return((t=this.observers)===null||t===void 0?void 0:t.length)>0},enumerable:!1,configurable:!0}),e.prototype._trySubscribe=function(t){return this._throwIfClosed(),n.prototype._trySubscribe.call(this,t)},e.prototype._subscribe=function(t){return this._throwIfClosed(),this._checkFinalizedStatuses(t),this._innerSubscribe(t)},e.prototype._innerSubscribe=function(t){var r=this,o=this,i=o.hasError,s=o.isStopped,a=o.observers;return i||s?me:(this.currentObservers=null,a.push(t),new U(function(){r.currentObservers=null,D(a,t)}))},e.prototype._checkFinalizedStatuses=function(t){var r=this,o=r.hasError,i=r.thrownError,s=r.isStopped;o?t.error(i):s&&t.complete()},e.prototype.asObservable=function(){var t=new g;return t.source=this,t},e.create=function(t,r){return new ie(t,r)},e})(g),ie=(function(n){I(e,n);function e(t,r){var o=n.call(this)||this;return o.destination=t,o.source=r,o}return e.prototype.next=function(t){var r,o;(o=(r=this.destination)===null||r===void 0?void 0:r.next)===null||o===void 0||o.call(r,t)},e.prototype.error=function(t){var r,o;(o=(r=this.destination)===null||r===void 0?void 0:r.error)===null||o===void 0||o.call(r,t)},e.prototype.complete=function(){var t,r;(r=(t=this.destination)===null||t===void 0?void 0:t.complete)===null||r===void 0||r.call(t)},e.prototype._subscribe=function(t){var r,o;return(o=(r=this.source)===null||r===void 0?void 0:r.subscribe(t))!==null&&o!==void 0?o:me},e})(te),se=(function(n){I(e,n);function e(t){var r=n.call(this)||this;return r._value=t,r}return Object.defineProperty(e.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),e.prototype._subscribe=function(t){var r=n.prototype._subscribe.call(this,t);return!r.closed&&t.next(this._value),r},e.prototype.getValue=function(){var t=this,r=t.hasError,o=t.thrownError,i=t._value;if(r)throw o;return this._throwIfClosed(),i},e.prototype.next=function(t){n.prototype.next.call(this,this._value=t)},e})(te),nt={now:function(){return Date.now()}},rt=(function(n){I(e,n);function e(t,r){return n.call(this)||this}return e.prototype.schedule=function(t,r){return this},e})(U),ae={setInterval:function(n,e){for(var t=[],r=2;r<arguments.length;r++)t[r-2]=arguments[r];return setInterval.apply(void 0,N([n,e],R(t)))},clearInterval:function(n){return clearInterval(n)},delegate:void 0},ot=(function(n){I(e,n);function e(t,r){var o=n.call(this,t,r)||this;return o.scheduler=t,o.work=r,o.pending=!1,o}return e.prototype.schedule=function(t,r){var o;if(r===void 0&&(r=0),this.closed)return this;this.state=t;var i=this.id,s=this.scheduler;return i!=null&&(this.id=this.recycleAsyncId(s,i,r)),this.pending=!0,this.delay=r,this.id=(o=this.id)!==null&&o!==void 0?o:this.requestAsyncId(s,this.id,r),this},e.prototype.requestAsyncId=function(t,r,o){return o===void 0&&(o=0),ae.setInterval(t.flush.bind(t,this),o)},e.prototype.recycleAsyncId=function(t,r,o){if(o===void 0&&(o=0),o!=null&&this.delay===o&&this.pending===!1)return r;r!=null&&ae.clearInterval(r)},e.prototype.execute=function(t,r){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var o=this._execute(t,r);if(o)return o;this.pending===!1&&this.id!=null&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))},e.prototype._execute=function(t,r){var o=!1,i;try{this.work(t)}catch(s){o=!0,i=s||new Error("Scheduled action threw falsy error")}if(o)return this.unsubscribe(),i},e.prototype.unsubscribe=function(){if(!this.closed){var t=this,r=t.id,o=t.scheduler,i=o.actions;this.work=this.state=this.scheduler=null,this.pending=!1,D(i,this),r!=null&&(this.id=this.recycleAsyncId(o,r,null)),this.delay=null,n.prototype.unsubscribe.call(this)}},e})(rt),ce=(function(){function n(e,t){t===void 0&&(t=n.now),this.schedulerActionCtor=e,this.now=t}return n.prototype.schedule=function(e,t,r){return t===void 0&&(t=0),new this.schedulerActionCtor(this,e).schedule(r,t)},n.now=nt.now,n})(),it=(function(n){I(e,n);function e(t,r){r===void 0&&(r=ce.now);var o=n.call(this,t,r)||this;return o.actions=[],o._active=!1,o}return e.prototype.flush=function(t){var r=this.actions;if(this._active){r.push(t);return}var o;this._active=!0;do if(o=t.execute(t.state,t.delay))break;while(t=r.shift());if(this._active=!1,o){for(;t=r.shift();)t.unsubscribe();throw o}},e})(ce),Se=new it(ot),st=Se,at=new g(function(n){return n.complete()});function Ee(n){return n&&m(n.schedule)}function we(n){return n[n.length-1]}function ct(n){return m(we(n))?n.pop():void 0}function Oe(n){return Ee(we(n))?n.pop():void 0}var Ie=(function(n){return n&&typeof n.length=="number"&&typeof n!="function"});function Ce(n){return m(n?.then)}function Ae(n){return m(n[ee])}function Te(n){return Symbol.asyncIterator&&m(n?.[Symbol.asyncIterator])}function _e(n){return new TypeError("You provided "+(n!==null&&typeof n=="object"?"an invalid object":"'"+n+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}function ut(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var Le=ut();function xe(n){return m(n?.[Le])}function Pe(n){return Ve(this,arguments,function(){var t,r,o,i;return ve(this,function(s){switch(s.label){case 0:t=n.getReader(),s.label=1;case 1:s.trys.push([1,,9,10]),s.label=2;case 2:return[4,x(t.read())];case 3:return r=s.sent(),o=r.value,i=r.done,i?[4,x(void 0)]:[3,5];case 4:return[2,s.sent()];case 5:return[4,x(o)];case 6:return[4,s.sent()];case 7:return s.sent(),[3,2];case 8:return[3,10];case 9:return t.releaseLock(),[7];case 10:return[2]}})})}function Me(n){return m(n?.getReader)}function T(n){if(n instanceof g)return n;if(n!=null){if(Ae(n))return lt(n);if(Ie(n))return ft(n);if(Ce(n))return dt(n);if(Te(n))return Re(n);if(xe(n))return ht(n);if(Me(n))return pt(n)}throw _e(n)}function lt(n){return new g(function(e){var t=n[ee]();if(m(t.subscribe))return t.subscribe(e);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function ft(n){return new g(function(e){for(var t=0;t<n.length&&!e.closed;t++)e.next(n[t]);e.complete()})}function dt(n){return new g(function(e){n.then(function(t){e.closed||(e.next(t),e.complete())},function(t){return e.error(t)}).then(null,ge)})}function ht(n){return new g(function(e){var t,r;try{for(var o=P(n),i=o.next();!i.done;i=o.next()){var s=i.value;if(e.next(s),e.closed)return}}catch(a){t={error:a}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(t)throw t.error}}e.complete()})}function Re(n){return new g(function(e){vt(n,e).catch(function(t){return e.error(t)})})}function pt(n){return Re(Pe(n))}function vt(n,e){var t,r,o,i;return Fe(this,void 0,void 0,function(){var s,a;return ve(this,function(c){switch(c.label){case 0:c.trys.push([0,5,6,11]),t=qe(n),c.label=1;case 1:return[4,t.next()];case 2:if(r=c.sent(),!!r.done)return[3,4];if(s=r.value,e.next(s),e.closed)return[2];c.label=3;case 3:return[3,1];case 4:return[3,11];case 5:return a=c.sent(),o={error:a},[3,11];case 6:return c.trys.push([6,,9,10]),r&&!r.done&&(i=t.return)?[4,i.call(t)]:[3,8];case 7:c.sent(),c.label=8;case 8:return[3,10];case 9:if(o)throw o.error;return[7];case 10:return[7];case 11:return e.complete(),[2]}})})}function A(n,e,t,r,o){r===void 0&&(r=0),o===void 0&&(o=!1);var i=e.schedule(function(){t(),o?n.add(this.schedule(null,r)):this.unsubscribe()},r);if(n.add(i),!o)return i}function Ne(n,e){return e===void 0&&(e=0),L(function(t,r){t.subscribe(O(r,function(o){return A(r,n,function(){return r.next(o)},e)},function(){return A(r,n,function(){return r.complete()},e)},function(o){return A(r,n,function(){return r.error(o)},e)}))})}function Ue(n,e){return e===void 0&&(e=0),L(function(t,r){r.add(n.schedule(function(){return t.subscribe(r)},e))})}function yt(n,e){return T(n).pipe(Ue(e),Ne(e))}function mt(n,e){return T(n).pipe(Ue(e),Ne(e))}function bt(n,e){return new g(function(t){var r=0;return e.schedule(function(){r===n.length?t.complete():(t.next(n[r++]),t.closed||this.schedule())})})}function gt(n,e){return new g(function(t){var r;return A(t,e,function(){r=n[Le](),A(t,e,function(){var o,i,s;try{o=r.next(),i=o.value,s=o.done}catch(a){t.error(a);return}s?t.complete():t.next(i)},0,!0)}),function(){return m(r?.return)&&r.return()}})}function ke(n,e){if(!n)throw new Error("Iterable cannot be null");return new g(function(t){A(t,e,function(){var r=n[Symbol.asyncIterator]();A(t,e,function(){r.next().then(function(o){o.done?t.complete():t.next(o.value)})},0,!0)})})}function St(n,e){return ke(Pe(n),e)}function Et(n,e){if(n!=null){if(Ae(n))return yt(n,e);if(Ie(n))return bt(n,e);if(Ce(n))return mt(n,e);if(Te(n))return ke(n,e);if(xe(n))return gt(n,e);if(Me(n))return St(n,e)}throw _e(n)}function ne(n,e){return e?Et(n,e):T(n)}function wt(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];var t=Oe(n);return ne(n,t)}function Ot(n){return n instanceof Date&&!isNaN(n)}function V(n,e){return L(function(t,r){var o=0;t.subscribe(O(r,function(i){r.next(n.call(e,i,o++))}))})}var It=Array.isArray;function Ct(n,e){return It(e)?n.apply(void 0,N([],R(e))):n(e)}function At(n){return V(function(e){return Ct(n,e)})}var Tt=Array.isArray,_t=Object.getPrototypeOf,Lt=Object.prototype,xt=Object.keys;function Pt(n){if(n.length===1){var e=n[0];if(Tt(e))return{args:e,keys:null};if(Mt(e)){var t=xt(e);return{args:t.map(function(r){return e[r]}),keys:t}}}return{args:n,keys:null}}function Mt(n){return n&&typeof n=="object"&&_t(n)===Lt}function Rt(n,e){return n.reduce(function(t,r,o){return t[r]=e[o],t},{})}function Nt(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];var t=Oe(n),r=ct(n),o=Pt(n),i=o.args,s=o.keys;if(i.length===0)return ne([],t);var a=new g(Ut(i,t,s?function(c){return Rt(s,c)}:F));return r?a.pipe(At(r)):a}function Ut(n,e,t){return t===void 0&&(t=F),function(r){ue(e,function(){for(var o=n.length,i=new Array(o),s=o,a=o,c=function(f){ue(e,function(){var p=ne(n[f],e),h=!1;p.subscribe(O(r,function(l){i[f]=l,h||(h=!0,a--),a||r.next(t(i.slice()))},function(){--s||r.complete()}))},r)},u=0;u<o;u++)c(u)},r)}}function ue(n,e,t){n?A(t,n,e):e()}function kt(n,e,t,r,o,i,s,a){var c=[],u=0,f=0,p=!1,h=function(){p&&!c.length&&!u&&e.complete()},l=function(v){return u<r?y(v):c.push(v)},y=function(v){u++;var E=!1;T(t(v,f++)).subscribe(O(e,function(w){e.next(w)},function(){E=!0},void 0,function(){if(E)try{u--;for(var w=function(){var _=c.shift();s||y(_)};c.length&&u<r;)w();h()}catch(_){e.error(_)}}))};return n.subscribe(O(e,l,function(){p=!0,h()})),function(){}}function H(n,e,t){return t===void 0&&(t=1/0),m(e)?H(function(r,o){return V(function(i,s){return e(r,i,o,s)})(T(n(r,o)))},t):(typeof e=="number"&&(t=e),L(function(r,o){return kt(r,o,n,t)}))}function $e(n,e,t){n===void 0&&(n=0),t===void 0&&(t=st);var r=-1;return e!=null&&(Ee(e)?t=e:r=e),new g(function(o){var i=Ot(n)?+n-t.now():n;i<0&&(i=0);var s=0;return t.schedule(function(){o.closed||(o.next(s++),0<=r?this.schedule(void 0,r):o.complete())},i)})}function $t(n,e){return m(e)?H(n,e,1):H(n,1)}function jt(n){return n<=0?function(){return at}:L(function(e,t){var r=0;e.subscribe(O(t,function(o){++r<=n&&(t.next(o),n<=r&&t.complete())}))})}function Dt(n){return V(function(){return n})}function Ht(n,e){return H(function(t,r){return T(n(t,r)).pipe(jt(1),Dt(t))})}function Gt(n,e){e===void 0&&(e=Se);var t=$e(n,e);return Ht(function(){return t})}function Ft(n){var e;e={count:n};var t=e.count,r=t===void 0?1/0:t,o=e.delay,i=e.resetOnSuccess,s=i===void 0?!1:i;return r<=0?F:L(function(a,c){var u=0,f,p=function(){var h=!1;f=a.subscribe(O(c,function(l){s&&(u=0),c.next(l)},void 0,function(l){if(u++<r){var y=function(){f?(f.unsubscribe(),f=null,p()):h=!0};if(o!=null){var v=typeof o=="number"?$e(o):T(o(l,u)),E=O(c,function(){E.unsubscribe(),y()},function(){c.complete()});v.subscribe(E)}else y()}else c.error(l)})),h&&(f.unsubscribe(),f=null,p())};p()})}function Vt(n){return L(function(e,t){T(n).subscribe(O(t,function(){return t.complete()},X)),!t.closed&&e.subscribe(t)})}async function qt(n,e){const t=n.getReader();let r;for(;!(r=await t.read()).done;)e(r.value)}function Kt(n){let e,t,r,o=!1;return function(s){e===void 0?(e=s,t=0,r=-1):e=Bt(e,s);const a=e.length;let c=0;for(;t<a;){o&&(e[t]===10&&(c=++t),o=!1);let u=-1;for(;t<a&&u===-1;++t)switch(e[t]){case 58:r===-1&&(r=t-c);break;case 13:o=!0;case 10:u=t;break}if(u===-1)break;n(e.subarray(c,u),r),c=t,r=-1}c===a?e=void 0:c!==0&&(e=e.subarray(c),t-=c)}}function Yt(n,e,t){let r=le();const o=new TextDecoder;return function(s,a){if(s.length===0)t?.(r),r=le();else if(a>0){const c=o.decode(s.subarray(0,a)),u=a+(s[a+1]===32?2:1),f=o.decode(s.subarray(u));switch(c){case"data":r.data=r.data?r.data+`
4
+ `+f:f;break;case"event":r.event=f;break;case"id":n(r.id=f);break;case"retry":const p=parseInt(f,10);isNaN(p)||e(r.retry=p);break}}}}function Bt(n,e){const t=new Uint8Array(n.length+e.length);return t.set(n),t.set(e,n.length),t}function le(){return{data:"",event:"",id:"",retry:void 0}}var Wt=function(n,e){var t={};for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&e.indexOf(r)<0&&(t[r]=n[r]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var o=0,r=Object.getOwnPropertySymbols(n);o<r.length;o++)e.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(n,r[o])&&(t[r[o]]=n[r[o]]);return t};const z="text/event-stream",Xt=1e3,fe="last-event-id";function Jt(n,e){var{signal:t,headers:r,onopen:o,onmessage:i,onclose:s,onerror:a,openWhenHidden:c,fetch:u}=e,f=Wt(e,["signal","headers","onopen","onmessage","onclose","onerror","openWhenHidden","fetch"]);return new Promise((p,h)=>{const l=Object.assign({},r);l.accept||(l.accept=z);let y;function v(){y.abort(),document.hidden||q()}c||document.addEventListener("visibilitychange",v);let E=Xt,w=0;function _(){document.removeEventListener("visibilitychange",v),window.clearTimeout(w),y.abort()}t?.addEventListener("abort",()=>{_(),p()});const De=u??window.fetch,He=o??zt;async function q(){var K;y=new AbortController;try{const k=await De(n,Object.assign(Object.assign({},f),{headers:l,signal:y.signal}));await He(k),await qt(k.body,Kt(Yt(C=>{C?l[fe]=C:delete l[fe]},C=>{E=C},i))),s?.(),_(),p()}catch(k){if(!y.signal.aborted)try{const C=(K=a?.(k))!==null&&K!==void 0?K:E;window.clearTimeout(w),w=window.setTimeout(q,C)}catch(C){_(),h(C)}}}q()})}function zt(n){const e=n.headers.get("content-type");if(!e?.startsWith(z))throw new Error(`Expected content-type to be ${z}, Actual: ${e}`)}function Qt(n){const{endpoint:e,apiKey:t,payload:r,debugMode:o,customHeaders:i}=n;return new g(s=>{const a=new AbortController;let c;const u={"Content-Type":"application/json",...i};t&&(u["X-API-KEY"]=t);const f=new URLSearchParams;o&&f.set("is_debug","true");const p=new URL(e);return f.toString()&&(p.search=f.toString()),Jt(p.toString(),{method:"POST",headers:u,body:r?JSON.stringify(r):void 0,signal:a.signal,openWhenHidden:!0,onopen:async h=>{if(h.ok)c=h.headers.get("X-Trace-Id")??void 0;else{let l;try{l=await h.json()}catch{try{l=await h.text()}catch{l=null}}s.error(new Q(h.status,h.statusText,l)),a.abort()}},onmessage:h=>{const l=JSON.parse(h.data);c?l.traceId=c:l.requestId&&(l.traceId=l.requestId,c||(c=l.requestId)),s.next(l)},onclose:()=>{s.complete()},onerror:h=>{throw s.error(h),a.abort(),h}}),()=>{a.abort()}})}class Zt{listeners={};on(e,t){this.listeners=Object.assign({},this.listeners,{[e]:(this.listeners[e]??[]).concat(t)})}off(e,t){this.listeners[e]&&(this.listeners=Object.assign({},this.listeners,{[e]:(this.listeners[e]??[]).filter(r=>r!==t)}))}remove(e){delete this.listeners[e]}emit(e,...t){this.listeners[e]&&this.listeners[e].forEach(r=>r(...t))}}class en{apiKey;endpoint;botProviderEndpoint;debugMode;destroy$=new te;sseEmitter=new Zt;transformSsePayload;customHeaders;constructor(e){if(!e.endpoint&&!e.botProviderEndpoint)throw new Error("Either endpoint or botProviderEndpoint must be provided");if(this.apiKey=e.apiKey,this.debugMode=e.debugMode,this.transformSsePayload=e.transformSsePayload,this.botProviderEndpoint=e.botProviderEndpoint,this.customHeaders=e.customHeaders,!e.endpoint&&e.botProviderEndpoint){const t=e.botProviderEndpoint.replace(/\/+$/,"");this.endpoint=`${t}/message/sse`}else e.endpoint&&(this.endpoint=e.endpoint,this.debugMode&&console.warn('[AsgardServiceClient] The "endpoint" option is deprecated and will be removed in the next major version. Please use "botProviderEndpoint" instead. The SSE endpoint will be automatically derived as "${botProviderEndpoint}/message/sse".'))}on(e,t){this.sseEmitter.remove(e),this.sseEmitter.on(e,t)}handleEvent(e){switch(e.eventType){case d.INIT:this.sseEmitter.emit(d.INIT,e);break;case d.PROCESS_START:case d.PROCESS_COMPLETE:this.sseEmitter.emit(d.PROCESS,e);break;case d.MESSAGE_START:case d.MESSAGE_DELTA:case d.MESSAGE_COMPLETE:this.sseEmitter.emit(d.MESSAGE,e);break;case d.TOOL_CALL_START:case d.TOOL_CALL_COMPLETE:this.sseEmitter.emit(d.TOOL_CALL,e);break;case d.TOOL_CALL_CONSENT:this.sseEmitter.emit(d.TOOL_CALL_CONSENT,e);break;case d.DONE:this.sseEmitter.emit(d.DONE,e);break;case d.ERROR:this.sseEmitter.emit(d.ERROR,e);break}}fetchSse(e,t){t?.onSseStart?.(),Qt({apiKey:this.apiKey,endpoint:this.endpoint,debugMode:this.debugMode,payload:this.transformSsePayload?.(e)??e,customHeaders:this.customHeaders}).pipe($t(r=>wt(r).pipe(Gt(t?.delayTime??50))),Vt(this.destroy$),Ft(3)).subscribe({next:r=>{t?.onSseMessage?.(r),this.handleEvent(r)},error:r=>{t?.onSseError?.(r)},complete:()=>{t?.onSseCompleted?.()}})}close(){this.destroy$.next(),this.destroy$.complete()}async uploadFile(e,t){const r=this.deriveBlobEndpoint();if(!r)throw new Error("Unable to derive blob endpoint. Please provide botProviderEndpoint in config.");const o=new FormData;o.append("file",e),o.append("customChannelId",t);const i={...this.customHeaders};this.apiKey&&(i["X-API-KEY"]=this.apiKey);try{const s=await fetch(r,{method:"POST",headers:i,body:o});if(!s.ok)throw new Error(`Upload failed: ${s.status} ${s.statusText}`);const a=await s.json();return this.debugMode&&console.log("[AsgardServiceClient] File upload response:",a),a}catch(s){throw console.error("[AsgardServiceClient] File upload error:",s),s}}deriveBlobEndpoint(){if(!this.botProviderEndpoint&&!this.endpoint)return null;let e=this.botProviderEndpoint;return!e&&this.endpoint&&(e=this.endpoint.replace("/message/sse","")),e?(e=e.replace(/\/+$/,""),`${e}/blob`):null}}const b=[];for(let n=0;n<256;++n)b.push((n+256).toString(16).slice(1));function tn(n,e=0){return(b[n[e+0]]+b[n[e+1]]+b[n[e+2]]+b[n[e+3]]+"-"+b[n[e+4]]+b[n[e+5]]+"-"+b[n[e+6]]+b[n[e+7]]+"-"+b[n[e+8]]+b[n[e+9]]+"-"+b[n[e+10]]+b[n[e+11]]+b[n[e+12]]+b[n[e+13]]+b[n[e+14]]+b[n[e+15]]).toLowerCase()}let B;const nn=new Uint8Array(16);function rn(){if(!B){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");B=crypto.getRandomValues.bind(crypto)}return B(nn)}const on=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),de={randomUUID:on};function sn(n,e,t){n=n||{};const r=n.random??n.rng?.()??rn();if(r.length<16)throw new Error("Random bytes length must be >= 16");return r[6]=r[6]&15|64,r[8]=r[8]&63|128,tn(r)}function je(n,e,t){return de.randomUUID&&!n?de.randomUUID():sn(n)}class S{messages=null;pendingConsent=null;constructor({messages:e,pendingConsent:t=null}){this.messages=e,this.pendingConsent=t??null}pushMessage(e){const t=new Map(this.messages);return t.set(e.messageId,e),new S({messages:t,pendingConsent:this.pendingConsent})}clearPendingConsent(){return this.pendingConsent?new S({messages:this.messages,pendingConsent:null}):this}onMessage(e){switch(e.eventType){case d.MESSAGE_START:return this.onMessageStart(e);case d.MESSAGE_DELTA:return this.onMessageDelta(e);case d.MESSAGE_COMPLETE:return this.onMessageComplete(e);case d.TOOL_CALL_START:return this.onToolCallStart(e);case d.TOOL_CALL_COMPLETE:return this.onToolCallComplete(e);case d.TOOL_CALL_CONSENT:return this.onToolCallConsent(e);case d.ERROR:return this.onMessageError(e);default:return this}}onMessageStart(e){const t=e.fact.messageStart.message,r=new Map(this.messages);return r.set(t.messageId,{type:"bot",eventType:d.MESSAGE_START,isTyping:!0,typingText:"",messageId:t.messageId,message:t,time:new Date,traceId:e.traceId,raw:""}),new S({messages:r,pendingConsent:this.pendingConsent})}onMessageDelta(e){const t=e.fact.messageDelta.message,r=new Map(this.messages),o=r.get(t.messageId);if(o?.type!=="bot")return this;const i=`${o?.typingText??""}${t.text}`;return r.set(t.messageId,{type:"bot",eventType:d.MESSAGE_DELTA,isTyping:!0,typingText:i,messageId:t.messageId,message:t,time:new Date,traceId:e.traceId??o.traceId,raw:o.raw}),new S({messages:r,pendingConsent:this.pendingConsent})}onMessageComplete(e){const t=e.fact.messageComplete.message,r=new Map(this.messages),o=r.get(t.messageId);return r.set(t.messageId,{type:"bot",eventType:d.MESSAGE_COMPLETE,isTyping:!1,typingText:null,messageId:t.messageId,message:t,time:new Date,traceId:e.traceId??(o?.type==="bot"?o.traceId:void 0),raw:JSON.stringify(e)}),new S({messages:r,pendingConsent:this.pendingConsent})}onMessageError(e){const t=je(),r=e.fact.runError.error,o=new Map(this.messages);return o.set(t,{type:"error",eventType:d.ERROR,messageId:t,error:r,time:new Date,traceId:e.traceId}),new S({messages:o,pendingConsent:this.pendingConsent})}onToolCallStart(e){const t=e.fact.toolCallStart,r=new Map(this.messages),o=`${t.processId}-${t.callSeq}`,i={type:"tool-call",eventType:d.TOOL_CALL_START,messageId:o,processId:t.processId,callSeq:t.callSeq,toolName:t.toolCall.toolName,toolsetName:t.toolCall.toolsetName,parameter:t.toolCall.parameter,isComplete:!1,time:new Date,traceId:e.traceId};return r.set(o,i),new S({messages:r,pendingConsent:this.pendingConsent})}onToolCallComplete(e){const t=e.fact.toolCallComplete,r=new Map(this.messages),o=`${t.processId}-${t.callSeq}`,i=r.get(o);if(i?.type==="tool-call"){const s={...i,eventType:d.TOOL_CALL_COMPLETE,result:t.toolCallResult,isComplete:!0,traceId:e.traceId??i.traceId};r.set(o,s)}return new S({messages:r,pendingConsent:this.pendingConsent})}onToolCallConsent(e){const t=e.fact.toolCallConsent;return new S({messages:this.messages,pendingConsent:t})}}class G{client;customChannelId;customMessageId;isConnecting$;conversation$;statesObserver;statesSubscription;currentUserMessageId;constructor(e){if(!e.client)throw new Error("client must be required");if(!e.customChannelId)throw new Error("customChannelId must be required");this.client=e.client,this.customChannelId=e.customChannelId,this.customMessageId=e.customMessageId,this.isConnecting$=new se(!1),this.conversation$=new se(e.conversation),this.statesObserver=e.statesObserver}static create(e){const t=new G(e);return t.subscribe(),t}static async reset(e,t,r){const o=new G(e);try{return o.subscribe(),await o.resetChannel(t,r),o}catch(i){throw o.close(),i}}subscribe(){this.statesSubscription=Nt([this.isConnecting$,this.conversation$]).pipe(V(([e,t])=>({isConnecting:e,conversation:t}))).subscribe(this.statesObserver)}resolvePayload(e){if(typeof e=="function")try{return e()}catch(t){throw new Error(`Failed to resolve payload function: ${t instanceof Error?t.message:String(t)}`)}return e}fetchSse(e,t){return new Promise((r,o)=>{this.isConnecting$.next(!0),this.client.fetchSse(e,{onSseStart:t?.onSseStart,onSseMessage:i=>{if(t?.onSseMessage?.(i),this.currentUserMessageId&&i.traceId){const s=new Map(this.conversation$.value.messages),a=s.get(this.currentUserMessageId);a&&a.type==="user"&&(s.set(this.currentUserMessageId,{...a,traceId:i.traceId}),this.conversation$.next(new S({messages:s}))),this.currentUserMessageId=void 0}this.conversation$.next(this.conversation$.value.onMessage(i))},onSseError:i=>{t?.onSseError?.(i),this.isConnecting$.next(!1),this.currentUserMessageId=void 0,o(i)},onSseCompleted:()=>{t?.onSseCompleted?.(),this.isConnecting$.next(!1),this.currentUserMessageId=void 0,r()}})})}resetChannel(e,t){return this.fetchSse({action:M.RESET_CHANNEL,customChannelId:this.customChannelId,customMessageId:this.customMessageId,text:e?.text||"",payload:this.resolvePayload(e?.payload)},t)}sendMessage(e,t){const r=e.text.trim(),o=e.customMessageId??je();return this.currentUserMessageId=o,this.conversation$.next(this.conversation$.value.pushMessage({type:"user",messageId:o,text:r,blobIds:e.blobIds,filePreviewUrls:e.filePreviewUrls,documentNames:e.documentNames,time:new Date})),this.fetchSse({action:M.NONE,customChannelId:this.customChannelId,customMessageId:o,payload:this.resolvePayload(e?.payload),text:r,blobIds:e?.blobIds},t)}replyToolCallConsents(e,t){return this.conversation$.next(this.conversation$.value.clearPendingConsent()),this.fetchSse({action:M.RESPONSE_TOOL_CALL_CONSENT,customChannelId:this.customChannelId,customMessageId:this.customMessageId,text:"",toolCallConsents:e},t)}close(){this.isConnecting$.complete(),this.conversation$.complete(),this.statesSubscription?.unsubscribe()}}exports.AsgardServiceClient=en;exports.Channel=G;exports.Conversation=S;exports.EventType=d;exports.FetchSseAction=M;exports.HttpError=Q;exports.MessageTemplateType=pe;exports.ToolCallConsentResult=he;exports.isHttpError=Ge;
5
5
  //# sourceMappingURL=index.cjs.map