packages feed

hyperbole-0.7.0: client/dist/hyperbole.js

(function(){var e=`data-key`,t=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n=function(e,n){return n?t(e,n)?(console.warn(`[OmDomDom]: Children with duplicate keys detected. Children with duplicate keys will be skipped, resulting in dropped node references. Keys must be unique and non-indexed.`),!1):!0:!1},r=function(e,t){var n=e.length,r=-1;if(n)for(;++r<n&&t(e[r],r)!==!1;);},i=function(t){var i={};for(var a in r(t,function(t){var r=t.attributes[e];n(i,r)&&(i[r]=t)}),i)return i},a=function(e,t,n){return e.node.insertBefore(t.node,n)},o=function(e,t){for(var n in e)t[n]=e[n]},s=function(e){var t=e.trim().replace(/\s+</g,`<`).replace(/>\s+/g,`>`);return new DOMParser().parseFromString(t,`text/html`).body};function c(e,t){var n=e==null?null:typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n!=null){var r,i,a,o,s=[],c=!0,l=!1;try{if(a=(n=n.call(e)).next,t===0){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=a.call(n)).done)&&(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,i=e}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(l)throw i}}return s}}function l(e,t){return u(e)||c(e,t)||d(e,t)||ee()}function u(e){if(Array.isArray(e))return e}function d(e,t){if(e){if(typeof e==`string`)return f(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`)return Array.from(e);if(n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return f(e,t)}}function f(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function ee(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var p={STRING:`string`,INT:`number`,BOOL:`boolean`},m={},h=function(e,t,n){return{attrName:e,propName:t,type:n}};r([[`style`,`cssText`],[`class`,`className`]],function(e){var t=l(e,2),n=t[0],r=t[1];m[n]=h(n,r||n,p.STRING)}),r([`autofocus`,`draggable`,`hidden`,`checked`,`multiple`,`muted`,`selected`],function(e){m[e]=h(e,e,p.BOOL)}),r([[`tabindex`,`tabIndex`]],function(e){var t=l(e,2),n=t[0],r=t[1];m[n]=h(n,r,p.INT)});var g={xlink:{prefix:`xlink:`,resource:`http://www.w3.org/1999/xlink`},xml:{prefix:`xml:`,resource:`http://www.w3.org/XML/1998/namespace`}},_=function(e,t,n,r){switch(t){case p.STRING:n===m.style.propName?r===null?e.style[n]=``:e.style[n]=r:r===null?e[n]=``:e[n]=r;break;case p.INT:if(r===null){var i=n.toLowerCase();e.removeAttribute(i)}else if(r===`0`)e[n]=0;else if(r===`-1`)e[n]=-1;else{var a=parseInt(r,10);isNaN(a)||(e[n]=a)}break;case p.BOOL:[``,`true`].indexOf(r)<0?e[n]=!1:e[n]=!0;break}},te=function(e,n){r(n,function(n){if(t(m,n)){var r=m[n];_(e.node,r.type,r.propName,null)}else n in e.node&&_(e.node,p.STRING,n,null),e.node.removeAttribute(n);delete e.attributes[n]})},ne=function(e,n){for(var r in n){var i=n[r];if(e.attributes[r]=i,t(m,r)){var a=m[r];_(e.node,a.type,a.propName,i);continue}if(r.startsWith(g.xlink.prefix)){e.node.setAttributeNS(g.xlink.resource,r,i);continue}if(r.startsWith(g.xml.prefix)){e.node.setAttributeNS(g.xml.resource,r,i);continue}r in e.node&&_(e.node,p.STRING,r,i),e.node.setAttribute(r,i||``)}},re=function(e,t){for(var n in m){var r=m[n].propName,i=e.getAttribute(n);n===m.style.attrName?t[n]=e.style[r]:typeof i==`string`&&(t[n]=i)}},ie=function(e){return Array.prototype.reduce.call(e.attributes,function(e,n){return t(m,n.name)||(e[n.name]=n.value),e},{})},ae=function(e){var t=ie(e);return re(e,t),t},oe=function(e,t){var n=[],r={};for(var i in t.attributes){var a=t.attributes[i],o=e.attributes[i];a!==o&&o===void 0&&n.push(i)}for(var s in e.attributes){var c=t.attributes[s],l=e.attributes[s];c!==l&&l!==void 0&&(r[s]=l)}te(t,n),ne(t,r)},se=`data-key`;function ce(e,t,n){var o=e.children.length,s=t.children.length;if(!(!o&&!s)){var c=i(t.children),l=Array(o);c===void 0?r(e.children,function(e,r){var i=t.children[r];i===void 0?(t.node.appendChild(e.node),l[r]=e):(n(e,i),l[r]=i)}):r(e.children,function(e,r){var i=t.node.childNodes,o=e.attributes[se];if(Object.prototype.hasOwnProperty.call(c,o)){var s=c[o];Array.prototype.indexOf.call(i,s.node)!==r&&a(t,s,i[r]),l[r]=s,delete c[o],n(e,l[r])}else a(t,e,i[r]),l[r]=e}),t.children=l;var u=t.node.childNodes.length,d=u-o;if(d>0)for(;d>0;)t.node.removeChild(t.node.childNodes[u-1]),u--,d--}}var le=function e(t,n,r){if(!(!t||!n)){r||=n.node.parentNode;var i=t.content&&t.content!==n.content;if(t.type!==n.type||i)return r.replaceChild(t.node,n.node),o(t,n);oe(t,n),ce(t,n,e)}},v=function e(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;typeof t==`string`&&(t=s(t));var i=t.tagName===`BODY`,a=t.childNodes,o=a?a.length:0;if(i){if(o>1)throw Error(`[OmDomDom]: Your element should not have more than one root node.`);if(o===0)throw Error(`[OmDomDom]: Your element should have at least one root node.`);return e(a[0])}var c=t.nodeType===3?`text`:t.nodeType===8?`comment`:t.tagName.toLowerCase(),l=n||c===`svg`,u=t.nodeType===1?ae(t):{},d=o>0?null:t.textContent,f=Array(o);return r(a,function(t,n){f[n]=e(t,l)}),{type:c,attributes:u,children:f,content:d,node:t,isSVGContext:l}};function ue(e,t){var n=[];for(var r of t){let t=e(r);if(t)n.push(t);else break}return n}function de(e,t){let n=0;for(;n<t.length&&e(t[n]);)n++;return t.slice(n)}function fe(e){return e.map(e=>e.key+`: `+e.value).join(`
`)}function y(e){return{cookies:e.filter(e=>e.key==`Cookie`).map(e=>e.value),error:x(`Error`,e),query:x(`Query`,e),pageTitle:x(`PageTitle`,e),events:S(`Event`,e).map(w),actions:S(`Trigger`,e).map(T)}}function b(e){return y(C(e.trim().split(`
`)))}function x(e,t){return t.find(t=>t.key==e)?.value}function S(e,t){return t.filter(t=>t.key==e).map(e=>e.value)}function C(e){return ue(pe,e)}function pe(e){let t=e.match(/^(\w+): (.*)$/);if(t)return{key:t[1],value:t[2]}}function w(e){let[t,n]=E(e);return{name:t,detail:JSON.parse(n)}}function T(e){let[t,n]=E(e);return[t,n]}function E(e){let t=e.indexOf(`|`);if(t===-1){let t=Error(`Bad Encoding, Expected Segment`);throw t.message=e,t}return[e.slice(0,t),e.slice(t+1)]}function me(e,t,n,r,i){let a=[{key:`Cookie`,value:decodeURI(document.cookie)},{key:`Query`,value:window.location.search}],o,s;return i instanceof FormData?o=i:i&&(s=i),{viewId:e,action:t,state:n,requestId:r,meta:a,form:o,value:s}}function he(e){let t=[`|ACTION|`,`ViewId: `+e.viewId,`Action: `+e.action];return e.state&&t.push(`State: `+e.state),t.push(`RequestId: `+e.requestId),[t.join(`
`),fe(e.meta)].join(`
`)+ge(e.value)}function ge(e){return e?`

`+e:``}var _e=0;function ve(){return{requestId:++_e,isCancelled:!1}}function ye(e){return new DOMParser().parseFromString(e,`text/html`)}function be(e){let t=e.querySelector(`style`);return{content:e.querySelector(`div`),css:t}}function xe(e,t){let n=D(t,e,`ViewId`),r=D(t,e,`Action`);return{kind:`response`,requestId:parseInt(D(t,e,`RequestId`),0),targetViewId:void 0,viewId:n,action:r,meta:y(e),body:t.join(`
`)}}function D(e,t,n){let r=x(n,t);if(!r)throw new O(`Missing Required Metadata: `+n,e.join(`
`));return r}var O=class extends Error{constructor(e,t){super(e+`
`+t),this.name=`ProtocolError`}},k=`${window.location.protocol===`https:`?`wss:`:`ws:`}//${window.location.host}${window.location.pathname}`,A=class{socket;hasEverConnected=!1;isConnected=!1;reconnectDelay=0;queue=[];events;constructor(e=k){this.events=new EventTarget;let t=new WebSocket(e);this.socket=t}connect(e=k,t=!1){let n=t?new WebSocket(e):this.socket;this.socket=n;function r(e){console.error(`Connect Error`,e)}function i(e){console.error(`Socket Error`,e)}n.addEventListener(`error`,r),n.addEventListener(`open`,e=>{console.log(`Websocket Connected`),this.hasEverConnected&&document.dispatchEvent(new Event(`hyp-socket-reconnect`)),this.isConnected=!0,this.hasEverConnected=!0,this.reconnectDelay=1e3,n.removeEventListener(`error`,r),n.addEventListener(`error`,i),document.dispatchEvent(new Event(`hyp-socket-connect`)),this.runQueue()}),n.addEventListener(`close`,t=>{console.log(`CLOSE SOCKET`),this.isConnected&&document.dispatchEvent(new Event(`hyp-socket-disconnect`)),this.isConnected=!1,n.removeEventListener(`error`,i),this.hasEverConnected&&(console.log(`Reconnecting in `+this.reconnectDelay/1e3+`s`),setTimeout(()=>this.connect(e,!0),this.reconnectDelay)),n.removeEventListener(`error`,i)}),n.addEventListener(`message`,e=>this.onMessage(e))}async sendAction(e){if(this.isConnected){let t=he(e);this.socket.send(t)}else this.queue.push(e)}runQueue(){let e=this.queue.pop();e&&(console.log(`runQueue: `,e),this.sendAction(e),this.runQueue())}onMessage(e){let{command:t,metas:n,rest:r}=j(e.data),i=parseInt(a(`RequestId`),0);function a(t){let r=x(t,n);if(!r)throw new O(`Missing Required Metadata: `+t,e.data);return r}function o(e){return{requestId:i,targetViewId:void 0,viewId:a(`ViewId`),action:a(`Action`),meta:y(n),body:e.join(`
`)}}function s(e){let t=o(e);return t.targetViewId=x(`TargetViewId`,n),t}function c(e){let t=e[0];return{requestId:i,meta:y(n),url:t}}function l(e){let{requestId:t,meta:n,viewId:r,action:i}=o(e),[s,c]=T(a(`Trigger`));return{requestId:t,meta:n,viewId:r,action:i,targetViewId:s,targetAction:c}}function u(e){let{requestId:t,meta:n,viewId:r,action:i}=o(e);return{requestId:t,meta:n,viewId:r,action:i,event:w(a(`Event`))}}switch(t){case`|UPDATE|`:this.dispatchEvent(new CustomEvent(`update`,{detail:s(r)}));return;case`|RESPONSE|`:this.dispatchEvent(new CustomEvent(`response`,{detail:o(r)}));return;case`|REDIRECT|`:return this.dispatchEvent(new CustomEvent(`redirect`,{detail:c(r)}));case`|TRIGGER|`:return this.dispatchEvent(new CustomEvent(`trigger`,{detail:l(r)}));case`|EVENT|`:return this.dispatchEvent(new CustomEvent(`event`,{detail:u(r)}));default:throw new O(`Unknown Server Command: `+t,e.data)}}addEventListener(e,t){this.events.addEventListener(e,t)}dispatchEvent(e){this.events.dispatchEvent(e)}disconnect(){this.isConnected=!1,this.hasEverConnected=!1,this.socket.close()}};function j(e){let t=e.split(`
`),n=t[0],r=C(t.slice(1));return{command:n,metas:r,rest:de(e=>e==``,t.slice(r.length+1))}}function M(e,t=100,n={}){if(typeof e!=`function`)throw TypeError(`Expected the first parameter to be a function, got \`${typeof e}\`.`);if(t<0)throw RangeError("`wait` must not be negative.");if(typeof n==`boolean`)throw TypeError("The `options` parameter must be an object, not a boolean. Use `{immediate: true}` instead.");let{immediate:r}=n,i,a,o,s,c;function l(){let t=i,n=a;return i=void 0,a=void 0,c=e.apply(t,n),c}function u(){let e=Date.now()-s;e<t&&e>=0?o=setTimeout(u,t-e):(o=void 0,r||(c=l()))}let d=function(...e){if(i&&this!==i&&Object.getPrototypeOf(this)===Object.getPrototypeOf(i))throw Error(`Debounced method called with different contexts of the same prototype.`);i=this,a=e,s=Date.now();let n=r&&!o;if(o||=setTimeout(u,t),n)return c=l(),c};return Object.defineProperty(d,`isPending`,{get(){return o!==void 0}}),d.clear=()=>{o&&(clearTimeout(o),o=void 0,i=void 0,a=void 0)},d.flush=()=>{o&&d.trigger()},d.trigger=()=>{c=l(),d.clear()},d}var N=e=>e?.runAction!==void 0;function P(e){let t=new Event(`hyp-content`,{bubbles:!0});e.dispatchEvent(t)}function F(e,t){e.querySelectorAll(`[id]`).forEach(n=>{n.runAction=function(e,r){return t(n,e,r)},n.concurrency=n.dataset.concurrency||`Drop`,n.cancelActiveRequest=function(){n.activeRequest&&!n.activeRequest?.isCancelled&&(n.activeRequest.isCancelled=!0)},P(e)})}function Se(e){I(`keydown`,e)}function Ce(e){I(`keyup`,e)}function I(e,t){document.addEventListener(e,function(n){if(!(n.target instanceof HTMLElement)){console.warn(`listenKeyEvent received event with non HTMLElment as EventTarget: %o`,n);return}let r=n.target,i=`on`+e+n.key,a=r.dataset[i];if(!a)return;n.preventDefault();let o=V(r);if(!o){console.error(`Missing target: `,r);return}t(o,a)})}function L(e,t){document.addEventListener(e,function(n){if(!(n.target instanceof Element)){console.warn(`listenBubblingEvent received an event with non Elment as EventTarget: %o`,n);return}let r=n.target.closest(`[data-on`+e+`]`);if(!r)return;n.preventDefault();let i=V(r);if(!i){console.error(`Missing target: `,r);return}let a=r.dataset[`on`+e];if(a===void 0){console.error(`Missing action: `,r,e);return}t(i,a)})}function we(e){L(`click`,e)}function Te(e){L(`dblclick`,e)}function Ee(e){document.addEventListener(`hyp-load`,function(t){let n=t.detail.onLoad,r=t.detail.target;e(r,n)}),document.addEventListener(`hyp-mouseenter`,function(t){let n=t.detail.onMouseEnter,r=t.detail.target;e(r,n)}),document.addEventListener(`hyp-mouseleave`,function(t){let n=t.detail.onMouseLeave,r=t.detail.target;e(r,n)})}function R(e){e.querySelectorAll(`[data-onload]`).forEach(e=>{let t=parseInt(e.dataset.delay||``)||0,n=e.dataset.onload;setTimeout(()=>{let t=V(e);if(e.dataset.onload!=n)return;let r=new CustomEvent(`hyp-load`,{bubbles:!0,detail:{target:t,onLoad:n}});e.dispatchEvent(r)},t)})}function z(e){e.querySelectorAll(`[data-onmouseenter]`).forEach(e=>{let t=e.dataset.onmouseenter,n=H(e);e.onmouseenter=()=>{let r=new CustomEvent(`hyp-mouseenter`,{bubbles:!0,detail:{target:n,onMouseEnter:t}});e.dispatchEvent(r)}})}function B(e){e.querySelectorAll(`[data-onmouseleave]`).forEach(e=>{let t=e.dataset.onmouseleave,n=H(e);e.onmouseleave=()=>{let r=new CustomEvent(`hyp-mouseleave`,{bubbles:!0,detail:{target:n,onMouseLeave:t}});e.dispatchEvent(r)}})}function De(e){document.addEventListener(`change`,function(t){if(!(t.target instanceof HTMLElement)){console.warn(`listenChange received an event with non HTMLElment as EventTarget: %o`,t);return}let n=t.target.closest(`[data-onchange]`);if(!n)return;if(t.preventDefault(),n.value===null){console.error(`Missing input value:`,n);return}let r=V(n);if(!r){console.error(`Missing target: listenChange`);return}if(!n.dataset.onchange){console.error(`Missing onchange: `,n);return}e(r,n.dataset.onchange,n.value)})}function Oe(e,t){document.addEventListener(`input`,function(n){if(!(n.target instanceof HTMLElement)){console.warn(`listenInput received an event with non HTMLElment as EventTarget: %o`,n);return}let r=n.target.closest(`[data-oninput]`);if(!r)return;let i=parseInt(r.dataset.delay||``)||250;i<250&&console.warn(`Input delay < 250 can result in poor performance.`),n.preventDefault();let a=V(r);if(!a){console.error(`Missing target: `,r);return}e(a),r.debouncedCallback||=M(()=>{if(!r.dataset.oninput){console.error(`Missing onInput: `,r);return}t(a,r.dataset.oninput,r.value)},i),r.debouncedCallback()})}function ke(e){document.addEventListener(`submit`,function(t){if(!(t.target instanceof HTMLFormElement)){console.warn(`listenFormSubmit received an event with non HTMLElment as EventTarget: %o`,t);return}let n=t.target;if(!n.dataset.onsubmit){console.error(`Missing onSubmit: `,n);return}t.preventDefault();let r=V(n),i=new FormData(n);if(!r){console.error(`Missing target: `,r);return}e(r,n.dataset.onsubmit,i)})}function Ae(e){return e.closest(`[data-target]`)?.dataset.target||e.closest(`[id]`)?.id}function V(e){let t=H(e);if(!N(t)){console.error(`Non HyperView target: `,t);return}return t}function H(e){let t=Ae(e),n=t&&document.getElementById(t);if(!n){console.error(`Cannot find target: `,t,e);return}return n}function je(e){if(e!=Me()){e!=``&&(e=`?`+e);let t=location.pathname+e;window.history.replaceState({},``,t)}}function Me(){let e=window.location.search;return e.startsWith(`?`)?e.substring(1):e}async function Ne(e){let t=window.location.href,n={Accept:`text/html`,"Hyp-ViewId":e.viewId,"Hyp-RequestId":e.requestId,"Hyp-Action":e.action,"Hyp-State":e.state||`()`};console.log(`sendActionHttp`,e.form);let{metas:r,rest:i}=Pe(await(await fetch(t,{method:`POST`,headers:n,body:e.form,redirect:`manual`})).text());return xe(r,i)}function Pe(e){let t=e.split(`
`);return{metas:C(t.slice(1)),rest:t.slice(2)}}console.log(`Hyperbole 0.7.0b`);var U,W=new Set;async function G(e,t,n){if(e.activeRequest&&!e.activeRequest?.isCancelled&&e.concurrency==`Drop`){console.warn(`Drop action overlapping with active request`,e.activeRequest,t);return}e._timeout=window.setTimeout(()=>{e.classList.add(`hyp-loading`)},100);let r=e.dataset.state,i=ve(),a=me(e.id,t,r,i.requestId,n);if(e.activeRequest=i,!a.form)$.sendAction(a);else{let e=await Ne(a);switch(console.log(`RESPONSE`,e),e.kind){case`redirect`:console.log(`TODO HANDLE REDIRECT`);break;case`response`:q(e);break}}}function K(e){Q(e.targetViewId,e.targetAction)}function Fe(e){let t=document.getElementById(e.viewId);Z(e.event,t)}function Ie(e){console.log(`REDIRECT`,e),Y(e.meta.cookies??[]),window.location.href=e.url}function q(e){let t=J(e.viewId,e);t&&(delete t.activeRequest,clearTimeout(t._timeout),t.classList.remove(`hyp-loading`))}function Le(e){e.meta.error?J(e.viewId,e):e.targetViewId?J(e.targetViewId,e):console.error(`Missing Update targetViewId`,e)}function J(e,t){let n=document.getElementById(e);if(!N(n)){console.error(`Missing Update HyperView Target: `,e,t);return}if(n.activeRequest?.requestId&&t.requestId<n.activeRequest.requestId)return console.warn(`Ignore Stale Action (`+t.requestId+`) vs (`+n.activeRequest.requestId+`): `+t.action),n;if(n.activeRequest?.isCancelled)return console.warn(`Cancelled request`,n.activeRequest?.requestId),delete n.activeRequest,n;let r=be(ye(t.body));if(!r.content)return console.error(`Empty Response!`,t.body),n;ze(r.css);let i=v(n),a=v(r.content),o=a.attributes;if(!t.meta.error&&o.id!=n.id){console.error(`Mismatched ViewId in update - `,o.id,` target:`,n.id);return}let s=o[`data-state`];a.attributes=i.attributes,le(a,i);let c=document.getElementById(n.id);return c?(P(c),s===void 0||s==`()`?delete c.dataset.state:c.dataset.state=s,X(t.meta,c),Y(t.meta.cookies??[]),R(c),z(c),B(c),Re(c),F(c,G),n):(console.warn(`Target Missing: `,n.id),n)}function Y(e){e.forEach(e=>{console.log(`SetCookie: `,e),document.cookie=e})}function X(e,t){e.query!=null&&je(e.query),e.pageTitle!=null&&(document.title=e.pageTitle),e.events?.forEach(e=>{Z(e,t)}),e.actions?.forEach(([e,t])=>{Q(e,t)})}function Z(e,t){setTimeout(()=>{let n=new CustomEvent(e.name,{bubbles:!0,detail:e.detail});(t||document).dispatchEvent(n)},10)}function Q(e,t){setTimeout(()=>{let n=window.Hyperbole?.hyperView(e);n&&G(n,t,void 0)},10)}function Re(e){let t=e.querySelector(`[autofocus]`);t?.focus&&t.focus(),e.querySelectorAll(`input[value]`).forEach(e=>{let t=e.getAttribute(`value`);t!==null&&(e.value=t)}),e.querySelectorAll(`input[type=checkbox]`).forEach(e=>{e.checked=e.dataset.checked==`True`})}function ze(e){if(!e)return;let t=e.sheet?.cssRules;if(t)for(let e=0;e<t.length;e++){let n=t.item(e);n&&W.has(n.cssText)==0&&U.sheet&&(U.sheet.insertRule(n.cssText),W.add(n.cssText))}}function Be(){X(b(document.getElementById(`hyp.metadata`)?.innerText??``),null);let e=document.body.querySelector(`style`);e===null?(console.warn(`rootStyles missing from page, creating...`),U=document.createElement(`style`),U.type=`text/css`,document.body.appendChild(U)):U=e,Ee(async function(e,t){G(e,t,void 0)}),R(document.body),z(document.body),B(document.body),F(document.body,G),we(async function(e,t){G(e,t,void 0)}),Te(async function(e,t){G(e,t,void 0)}),Se(async function(e,t){G(e,t,void 0)}),Ce(async function(e,t){G(e,t)}),ke(async function(e,t,n){G(e,t,n)}),De(async function(e,t,n){G(e,t,n)});function t(e){e.concurrency==`Replace`&&e.cancelActiveRequest()}Oe(t,async function(e,t,n){G(e,t,n)})}document.addEventListener(`DOMContentLoaded`,Be);var $=new A;$.connect(),$.addEventListener(`update`,e=>Le(e.detail)),$.addEventListener(`response`,e=>q(e.detail)),$.addEventListener(`redirect`,e=>Ie(e.detail)),$.addEventListener(`trigger`,e=>K(e.detail)),$.addEventListener(`event`,e=>Fe(e.detail)),window.Hyperbole={runAction:G,parseMetadata:b,action:function(e,...t){return t.reduce((e,t)=>e+` `+JSON.stringify(t),e)},hyperView:function(e){let t=document.getElementById(e);if(!N(t)){console.error(`Element id=`+e+` was not a HyperView`);return}return t},socket:$}})();
//# sourceMappingURL=hyperbole.js.map