@hpcc-js/react 3.2.2 → 3.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/__package__.ts","../node_modules/preact/dist/preact.module.js","../node_modules/preact/jsx-runtime/dist/jsxRuntime.module.js","../node_modules/preact/hooks/dist/hooks.module.js","../node_modules/preact/compat/dist/compat.module.js","../src/image.tsx","../src/ImageChar.tsx","../src/shape.tsx","../src/icon.tsx","../src/text.tsx","../src/edge.tsx","../src/render.ts","../src/span.tsx","../src/vertex.tsx","../src/vertex2.tsx","../src/vertex3.tsx","../src/vertex4.tsx","../src/subgraph.tsx"],"sourcesContent":["export const PKG_NAME = \"@hpcc-js/react\";\nexport const PKG_VERSION = \"3.1.1\";\nexport const BUILD_VERSION = \"3.2.1\";\n","var n,l,u,t,i,o,r,f,e,c,s,a,h={},v=[],p=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,y=Array.isArray;function d(n,l){for(var u in l)n[u]=l[u];return n}function w(n){n&&n.parentNode&&n.parentNode.removeChild(n)}function _(l,u,t){var i,o,r,f={};for(r in u)\"key\"==r?i=u[r]:\"ref\"==r?o=u[r]:f[r]=u[r];if(arguments.length>2&&(f.children=arguments.length>3?n.call(arguments,2):t),\"function\"==typeof l&&null!=l.defaultProps)for(r in l.defaultProps)void 0===f[r]&&(f[r]=l.defaultProps[r]);return g(l,f,i,o,null)}function g(n,t,i,o,r){var f={type:n,props:t,key:i,ref:o,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,constructor:void 0,__v:null==r?++u:r,__i:-1,__u:0};return null==r&&null!=l.vnode&&l.vnode(f),f}function m(){return{current:null}}function b(n){return n.children}function k(n,l){this.props=n,this.context=l}function x(n,l){if(null==l)return n.__?x(n.__,n.__i+1):null;for(var u;l<n.__k.length;l++)if(null!=(u=n.__k[l])&&null!=u.__e)return u.__e;return\"function\"==typeof n.type?x(n):null}function C(n){var l,u;if(null!=(n=n.__)&&null!=n.__c){for(n.__e=n.__c.base=null,l=0;l<n.__k.length;l++)if(null!=(u=n.__k[l])&&null!=u.__e){n.__e=n.__c.base=u.__e;break}return C(n)}}function S(n){(!n.__d&&(n.__d=!0)&&i.push(n)&&!M.__r++||o!==l.debounceRendering)&&((o=l.debounceRendering)||r)(M)}function M(){var n,u,t,o,r,e,c,s;for(i.sort(f);n=i.shift();)n.__d&&(u=i.length,o=void 0,e=(r=(t=n).__v).__e,c=[],s=[],t.__P&&((o=d({},r)).__v=r.__v+1,l.vnode&&l.vnode(o),O(t.__P,o,r,t.__n,t.__P.namespaceURI,32&r.__u?[e]:null,c,null==e?x(r):e,!!(32&r.__u),s),o.__v=r.__v,o.__.__k[o.__i]=o,j(c,o,s),o.__e!=e&&C(o)),i.length>u&&i.sort(f));M.__r=0}function P(n,l,u,t,i,o,r,f,e,c,s){var a,p,y,d,w,_=t&&t.__k||v,g=l.length;for(u.__d=e,$(u,l,_),e=u.__d,a=0;a<g;a++)null!=(y=u.__k[a])&&(p=-1===y.__i?h:_[y.__i]||h,y.__i=a,O(n,y,p,i,o,r,f,e,c,s),d=y.__e,y.ref&&p.ref!=y.ref&&(p.ref&&E(p.ref,null,y),s.push(y.ref,y.__c||d,y)),null==w&&null!=d&&(w=d),65536&y.__u||p.__k===y.__k?e=I(y,e,n):\"function\"==typeof y.type&&void 0!==y.__d?e=y.__d:d&&(e=d.nextSibling),y.__d=void 0,y.__u&=-196609);u.__d=e,u.__e=w}function $(n,l,u){var t,i,o,r,f,e=l.length,c=u.length,s=c,a=0;for(n.__k=[],t=0;t<e;t++)null!=(i=l[t])&&\"boolean\"!=typeof i&&\"function\"!=typeof i?(r=t+a,(i=n.__k[t]=\"string\"==typeof i||\"number\"==typeof i||\"bigint\"==typeof i||i.constructor==String?g(null,i,null,null,null):y(i)?g(b,{children:i},null,null,null):void 0===i.constructor&&i.__b>0?g(i.type,i.props,i.key,i.ref?i.ref:null,i.__v):i).__=n,i.__b=n.__b+1,o=null,-1!==(f=i.__i=L(i,u,r,s))&&(s--,(o=u[f])&&(o.__u|=131072)),null==o||null===o.__v?(-1==f&&a--,\"function\"!=typeof i.type&&(i.__u|=65536)):f!==r&&(f==r-1?a--:f==r+1?a++:(f>r?a--:a++,i.__u|=65536))):i=n.__k[t]=null;if(s)for(t=0;t<c;t++)null!=(o=u[t])&&0==(131072&o.__u)&&(o.__e==n.__d&&(n.__d=x(o)),N(o,o))}function I(n,l,u){var t,i;if(\"function\"==typeof n.type){for(t=n.__k,i=0;t&&i<t.length;i++)t[i]&&(t[i].__=n,l=I(t[i],l,u));return l}n.__e!=l&&(l&&n.type&&!u.contains(l)&&(l=x(n)),u.insertBefore(n.__e,l||null),l=n.__e);do{l=l&&l.nextSibling}while(null!=l&&8===l.nodeType);return l}function H(n,l){return l=l||[],null==n||\"boolean\"==typeof n||(y(n)?n.some(function(n){H(n,l)}):l.push(n)),l}function L(n,l,u,t){var i=n.key,o=n.type,r=u-1,f=u+1,e=l[u];if(null===e||e&&i==e.key&&o===e.type&&0==(131072&e.__u))return u;if((\"function\"!=typeof o||o===b||i)&&t>(null!=e&&0==(131072&e.__u)?1:0))for(;r>=0||f<l.length;){if(r>=0){if((e=l[r])&&0==(131072&e.__u)&&i==e.key&&o===e.type)return r;r--}if(f<l.length){if((e=l[f])&&0==(131072&e.__u)&&i==e.key&&o===e.type)return f;f++}}return-1}function T(n,l,u){\"-\"===l[0]?n.setProperty(l,null==u?\"\":u):n[l]=null==u?\"\":\"number\"!=typeof u||p.test(l)?u:u+\"px\"}function A(n,l,u,t,i){var o;n:if(\"style\"===l)if(\"string\"==typeof u)n.style.cssText=u;else{if(\"string\"==typeof t&&(n.style.cssText=t=\"\"),t)for(l in t)u&&l in u||T(n.style,l,\"\");if(u)for(l in u)t&&u[l]===t[l]||T(n.style,l,u[l])}else if(\"o\"===l[0]&&\"n\"===l[1])o=l!==(l=l.replace(/(PointerCapture)$|Capture$/i,\"$1\")),l=l.toLowerCase()in n||\"onFocusOut\"===l||\"onFocusIn\"===l?l.toLowerCase().slice(2):l.slice(2),n.l||(n.l={}),n.l[l+o]=u,u?t?u.u=t.u:(u.u=e,n.addEventListener(l,o?s:c,o)):n.removeEventListener(l,o?s:c,o);else{if(\"http://www.w3.org/2000/svg\"==i)l=l.replace(/xlink(H|:h)/,\"h\").replace(/sName$/,\"s\");else if(\"width\"!=l&&\"height\"!=l&&\"href\"!=l&&\"list\"!=l&&\"form\"!=l&&\"tabIndex\"!=l&&\"download\"!=l&&\"rowSpan\"!=l&&\"colSpan\"!=l&&\"role\"!=l&&\"popover\"!=l&&l in n)try{n[l]=null==u?\"\":u;break n}catch(n){}\"function\"==typeof u||(null==u||!1===u&&\"-\"!==l[4]?n.removeAttribute(l):n.setAttribute(l,\"popover\"==l&&1==u?\"\":u))}}function F(n){return function(u){if(this.l){var t=this.l[u.type+n];if(null==u.t)u.t=e++;else if(u.t<t.u)return;return l.event&&(u=l.event(u)),\"handleEvent\"in t?t.handleEvent(u):t(u)}}}function O(n,u,t,i,o,r,f,e,c,s){var a,h,v,p,w,_,g,m,x,C,S,M,$,I,H,L,T=u.type;if(void 0!==u.constructor)return null;128&t.__u&&(c=!!(32&t.__u),r=[e=u.__e=t.__e]),(a=l.__b)&&a(u);n:if(\"function\"==typeof T)try{if(m=u.props,x=\"prototype\"in T&&T.prototype.render,C=(a=T.contextType)&&i[a.__c],S=a?C?C.props.value:a.__:i,t.__c?g=(h=u.__c=t.__c).__=h.__E:(x?u.__c=h=new T(m,S):(u.__c=h=new k(m,S),h.constructor=T,h.render=V),C&&C.sub(h),h.props=m,h.state||(h.state={}),h.context=S,h.__n=i,v=h.__d=!0,h.__h=[],h._sb=[]),x&&null==h.__s&&(h.__s=h.state),x&&null!=T.getDerivedStateFromProps&&(h.__s==h.state&&(h.__s=d({},h.__s)),d(h.__s,T.getDerivedStateFromProps(m,h.__s))),p=h.props,w=h.state,h.__v=u,v)x&&null==T.getDerivedStateFromProps&&null!=h.componentWillMount&&h.componentWillMount(),x&&null!=h.componentDidMount&&h.__h.push(h.componentDidMount);else{if(x&&null==T.getDerivedStateFromProps&&m!==p&&null!=h.componentWillReceiveProps&&h.componentWillReceiveProps(m,S),!h.__e&&(null!=h.shouldComponentUpdate&&!1===h.shouldComponentUpdate(m,h.__s,S)||u.__v===t.__v)){for(u.__v!==t.__v&&(h.props=m,h.state=h.__s,h.__d=!1),u.__e=t.__e,u.__k=t.__k,u.__k.some(function(n){n&&(n.__=u)}),M=0;M<h._sb.length;M++)h.__h.push(h._sb[M]);h._sb=[],h.__h.length&&f.push(h);break n}null!=h.componentWillUpdate&&h.componentWillUpdate(m,h.__s,S),x&&null!=h.componentDidUpdate&&h.__h.push(function(){h.componentDidUpdate(p,w,_)})}if(h.context=S,h.props=m,h.__P=n,h.__e=!1,$=l.__r,I=0,x){for(h.state=h.__s,h.__d=!1,$&&$(u),a=h.render(h.props,h.state,h.context),H=0;H<h._sb.length;H++)h.__h.push(h._sb[H]);h._sb=[]}else do{h.__d=!1,$&&$(u),a=h.render(h.props,h.state,h.context),h.state=h.__s}while(h.__d&&++I<25);h.state=h.__s,null!=h.getChildContext&&(i=d(d({},i),h.getChildContext())),x&&!v&&null!=h.getSnapshotBeforeUpdate&&(_=h.getSnapshotBeforeUpdate(p,w)),P(n,y(L=null!=a&&a.type===b&&null==a.key?a.props.children:a)?L:[L],u,t,i,o,r,f,e,c,s),h.base=u.__e,u.__u&=-161,h.__h.length&&f.push(h),g&&(h.__E=h.__=null)}catch(n){if(u.__v=null,c||null!=r){for(u.__u|=c?160:128;e&&8===e.nodeType&&e.nextSibling;)e=e.nextSibling;r[r.indexOf(e)]=null,u.__e=e}else u.__e=t.__e,u.__k=t.__k;l.__e(n,u,t)}else null==r&&u.__v===t.__v?(u.__k=t.__k,u.__e=t.__e):u.__e=z(t.__e,u,t,i,o,r,f,c,s);(a=l.diffed)&&a(u)}function j(n,u,t){u.__d=void 0;for(var i=0;i<t.length;i++)E(t[i],t[++i],t[++i]);l.__c&&l.__c(u,n),n.some(function(u){try{n=u.__h,u.__h=[],n.some(function(n){n.call(u)})}catch(n){l.__e(n,u.__v)}})}function z(u,t,i,o,r,f,e,c,s){var a,v,p,d,_,g,m,b=i.props,k=t.props,C=t.type;if(\"svg\"===C?r=\"http://www.w3.org/2000/svg\":\"math\"===C?r=\"http://www.w3.org/1998/Math/MathML\":r||(r=\"http://www.w3.org/1999/xhtml\"),null!=f)for(a=0;a<f.length;a++)if((_=f[a])&&\"setAttribute\"in _==!!C&&(C?_.localName===C:3===_.nodeType)){u=_,f[a]=null;break}if(null==u){if(null===C)return document.createTextNode(k);u=document.createElementNS(r,C,k.is&&k),c&&(l.__m&&l.__m(t,f),c=!1),f=null}if(null===C)b===k||c&&u.data===k||(u.data=k);else{if(f=f&&n.call(u.childNodes),b=i.props||h,!c&&null!=f)for(b={},a=0;a<u.attributes.length;a++)b[(_=u.attributes[a]).name]=_.value;for(a in b)if(_=b[a],\"children\"==a);else if(\"dangerouslySetInnerHTML\"==a)p=_;else if(!(a in k)){if(\"value\"==a&&\"defaultValue\"in k||\"checked\"==a&&\"defaultChecked\"in k)continue;A(u,a,null,_,r)}for(a in k)_=k[a],\"children\"==a?d=_:\"dangerouslySetInnerHTML\"==a?v=_:\"value\"==a?g=_:\"checked\"==a?m=_:c&&\"function\"!=typeof _||b[a]===_||A(u,a,_,b[a],r);if(v)c||p&&(v.__html===p.__html||v.__html===u.innerHTML)||(u.innerHTML=v.__html),t.__k=[];else if(p&&(u.innerHTML=\"\"),P(u,y(d)?d:[d],t,i,o,\"foreignObject\"===C?\"http://www.w3.org/1999/xhtml\":r,f,e,f?f[0]:i.__k&&x(i,0),c,s),null!=f)for(a=f.length;a--;)w(f[a]);c||(a=\"value\",\"progress\"===C&&null==g?u.removeAttribute(\"value\"):void 0!==g&&(g!==u[a]||\"progress\"===C&&!g||\"option\"===C&&g!==b[a])&&A(u,a,g,b[a],r),a=\"checked\",void 0!==m&&m!==u[a]&&A(u,a,m,b[a],r))}return u}function E(n,u,t){try{if(\"function\"==typeof n){var i=\"function\"==typeof n.__u;i&&n.__u(),i&&null==u||(n.__u=n(u))}else n.current=u}catch(n){l.__e(n,t)}}function N(n,u,t){var i,o;if(l.unmount&&l.unmount(n),(i=n.ref)&&(i.current&&i.current!==n.__e||E(i,null,u)),null!=(i=n.__c)){if(i.componentWillUnmount)try{i.componentWillUnmount()}catch(n){l.__e(n,u)}i.base=i.__P=null}if(i=n.__k)for(o=0;o<i.length;o++)i[o]&&N(i[o],u,t||\"function\"!=typeof n.type);t||w(n.__e),n.__c=n.__=n.__e=n.__d=void 0}function V(n,l,u){return this.constructor(n,u)}function q(u,t,i){var o,r,f,e;l.__&&l.__(u,t),r=(o=\"function\"==typeof i)?null:i&&i.__k||t.__k,f=[],e=[],O(t,u=(!o&&i||t).__k=_(b,null,[u]),r||h,h,t.namespaceURI,!o&&i?[i]:r?null:t.firstChild?n.call(t.childNodes):null,f,!o&&i?i:r?r.__e:t.firstChild,o,e),j(f,u,e)}function B(n,l){q(n,l,B)}function D(l,u,t){var i,o,r,f,e=d({},l.props);for(r in l.type&&l.type.defaultProps&&(f=l.type.defaultProps),u)\"key\"==r?i=u[r]:\"ref\"==r?o=u[r]:e[r]=void 0===u[r]&&void 0!==f?f[r]:u[r];return arguments.length>2&&(e.children=arguments.length>3?n.call(arguments,2):t),g(l.type,e,i||l.key,o||l.ref,null)}function G(n,l){var u={__c:l=\"__cC\"+a++,__:n,Consumer:function(n,l){return n.children(l)},Provider:function(n){var u,t;return this.getChildContext||(u=new Set,(t={})[l]=this,this.getChildContext=function(){return t},this.componentWillUnmount=function(){u=null},this.shouldComponentUpdate=function(n){this.props.value!==n.value&&u.forEach(function(n){n.__e=!0,S(n)})},this.sub=function(n){u.add(n);var l=n.componentWillUnmount;n.componentWillUnmount=function(){u&&u.delete(n),l&&l.call(n)}}),n.children}};return u.Provider.__=u.Consumer.contextType=u}n=v.slice,l={__e:function(n,l,u,t){for(var i,o,r;l=l.__;)if((i=l.__c)&&!i.__)try{if((o=i.constructor)&&null!=o.getDerivedStateFromError&&(i.setState(o.getDerivedStateFromError(n)),r=i.__d),null!=i.componentDidCatch&&(i.componentDidCatch(n,t||{}),r=i.__d),r)return i.__E=i}catch(l){n=l}throw n}},u=0,t=function(n){return null!=n&&null==n.constructor},k.prototype.setState=function(n,l){var u;u=null!=this.__s&&this.__s!==this.state?this.__s:this.__s=d({},this.state),\"function\"==typeof n&&(n=n(d({},u),this.props)),n&&d(u,n),null!=n&&this.__v&&(l&&this._sb.push(l),S(this))},k.prototype.forceUpdate=function(n){this.__v&&(this.__e=!0,n&&this.__h.push(n),S(this))},k.prototype.render=b,i=[],r=\"function\"==typeof Promise?Promise.prototype.then.bind(Promise.resolve()):setTimeout,f=function(n,l){return n.__v.__b-l.__v.__b},M.__r=0,e=0,c=F(!1),s=F(!0),a=0;export{k as Component,b as Fragment,D as cloneElement,G as createContext,_ as createElement,m as createRef,_ as h,B as hydrate,t as isValidElement,l as options,q as render,H as toChildArray};\n//# sourceMappingURL=preact.module.js.map\n","import{options as r,Fragment as e}from\"preact\";export{Fragment}from\"preact\";var t=/[\"&<]/;function n(r){if(0===r.length||!1===t.test(r))return r;for(var e=0,n=0,o=\"\",f=\"\";n<r.length;n++){switch(r.charCodeAt(n)){case 34:f=\"&quot;\";break;case 38:f=\"&amp;\";break;case 60:f=\"&lt;\";break;default:continue}n!==e&&(o+=r.slice(e,n)),o+=f,e=n+1}return n!==e&&(o+=r.slice(e,n)),o}var o=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,f=0,i=Array.isArray;function u(e,t,n,o,i,u){t||(t={});var a,c,l=t;\"ref\"in t&&(a=t.ref,delete t.ref);var p={type:e,props:l,key:n,ref:a,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,constructor:void 0,__v:--f,__i:-1,__u:0,__source:i,__self:u};if(\"function\"==typeof e&&(a=e.defaultProps))for(c in a)void 0===l[c]&&(l[c]=a[c]);return r.vnode&&r.vnode(p),p}function a(r){var t=u(e,{tpl:r,exprs:[].slice.call(arguments,1)});return t.key=t.__v,t}var c={},l=/[A-Z]/g;function p(e,t){if(r.attr){var f=r.attr(e,t);if(\"string\"==typeof f)return f}if(\"ref\"===e||\"key\"===e)return\"\";if(\"style\"===e&&\"object\"==typeof t){var i=\"\";for(var u in t){var a=t[u];if(null!=a&&\"\"!==a){var p=\"-\"==u[0]?u:c[u]||(c[u]=u.replace(l,\"-$&\").toLowerCase()),_=\";\";\"number\"!=typeof a||p.startsWith(\"--\")||o.test(p)||(_=\"px;\"),i=i+p+\":\"+a+_}}return e+'=\"'+i+'\"'}return null==t||!1===t||\"function\"==typeof t||\"object\"==typeof t?\"\":!0===t?e:e+'=\"'+n(t)+'\"'}function _(r){if(null==r||\"boolean\"==typeof r||\"function\"==typeof r)return null;if(\"object\"==typeof r){if(void 0===r.constructor)return r;if(i(r)){for(var e=0;e<r.length;e++)r[e]=_(r[e]);return r}}return n(\"\"+r)}export{u as jsx,p as jsxAttr,u as jsxDEV,_ as jsxEscape,a as jsxTemplate,u as jsxs};\n//# sourceMappingURL=jsxRuntime.module.js.map\n","import{options as n}from\"preact\";var t,r,u,i,o=0,f=[],c=n,e=c.__b,a=c.__r,v=c.diffed,l=c.__c,m=c.unmount,s=c.__;function d(n,t){c.__h&&c.__h(r,n,o||t),o=0;var u=r.__H||(r.__H={__:[],__h:[]});return n>=u.__.length&&u.__.push({}),u.__[n]}function h(n){return o=1,p(D,n)}function p(n,u,i){var o=d(t++,2);if(o.t=n,!o.__c&&(o.__=[i?i(u):D(void 0,u),function(n){var t=o.__N?o.__N[0]:o.__[0],r=o.t(t,n);t!==r&&(o.__N=[r,o.__[1]],o.__c.setState({}))}],o.__c=r,!r.u)){var f=function(n,t,r){if(!o.__c.__H)return!0;var u=o.__c.__H.__.filter(function(n){return!!n.__c});if(u.every(function(n){return!n.__N}))return!c||c.call(this,n,t,r);var i=o.__c.props!==n;return u.forEach(function(n){if(n.__N){var t=n.__[0];n.__=n.__N,n.__N=void 0,t!==n.__[0]&&(i=!0)}}),c&&c.call(this,n,t,r)||i};r.u=!0;var c=r.shouldComponentUpdate,e=r.componentWillUpdate;r.componentWillUpdate=function(n,t,r){if(this.__e){var u=c;c=void 0,f(n,t,r),c=u}e&&e.call(this,n,t,r)},r.shouldComponentUpdate=f}return o.__N||o.__}function y(n,u){var i=d(t++,3);!c.__s&&C(i.__H,u)&&(i.__=n,i.i=u,r.__H.__h.push(i))}function _(n,u){var i=d(t++,4);!c.__s&&C(i.__H,u)&&(i.__=n,i.i=u,r.__h.push(i))}function A(n){return o=5,T(function(){return{current:n}},[])}function F(n,t,r){o=6,_(function(){return\"function\"==typeof n?(n(t()),function(){return n(null)}):n?(n.current=t(),function(){return n.current=null}):void 0},null==r?r:r.concat(n))}function T(n,r){var u=d(t++,7);return C(u.__H,r)&&(u.__=n(),u.__H=r,u.__h=n),u.__}function q(n,t){return o=8,T(function(){return n},t)}function x(n){var u=r.context[n.__c],i=d(t++,9);return i.c=n,u?(null==i.__&&(i.__=!0,u.sub(r)),u.props.value):n.__}function P(n,t){c.useDebugValue&&c.useDebugValue(t?t(n):n)}function b(n){var u=d(t++,10),i=h();return u.__=n,r.componentDidCatch||(r.componentDidCatch=function(n,t){u.__&&u.__(n,t),i[1](n)}),[i[0],function(){i[1](void 0)}]}function g(){var n=d(t++,11);if(!n.__){for(var u=r.__v;null!==u&&!u.__m&&null!==u.__;)u=u.__;var i=u.__m||(u.__m=[0,0]);n.__=\"P\"+i[0]+\"-\"+i[1]++}return n.__}function j(){for(var n;n=f.shift();)if(n.__P&&n.__H)try{n.__H.__h.forEach(z),n.__H.__h.forEach(B),n.__H.__h=[]}catch(t){n.__H.__h=[],c.__e(t,n.__v)}}c.__b=function(n){r=null,e&&e(n)},c.__=function(n,t){n&&t.__k&&t.__k.__m&&(n.__m=t.__k.__m),s&&s(n,t)},c.__r=function(n){a&&a(n),t=0;var i=(r=n.__c).__H;i&&(u===r?(i.__h=[],r.__h=[],i.__.forEach(function(n){n.__N&&(n.__=n.__N),n.i=n.__N=void 0})):(i.__h.forEach(z),i.__h.forEach(B),i.__h=[],t=0)),u=r},c.diffed=function(n){v&&v(n);var t=n.__c;t&&t.__H&&(t.__H.__h.length&&(1!==f.push(t)&&i===c.requestAnimationFrame||((i=c.requestAnimationFrame)||w)(j)),t.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.i=void 0})),u=r=null},c.__c=function(n,t){t.some(function(n){try{n.__h.forEach(z),n.__h=n.__h.filter(function(n){return!n.__||B(n)})}catch(r){t.some(function(n){n.__h&&(n.__h=[])}),t=[],c.__e(r,n.__v)}}),l&&l(n,t)},c.unmount=function(n){m&&m(n);var t,r=n.__c;r&&r.__H&&(r.__H.__.forEach(function(n){try{z(n)}catch(n){t=n}}),r.__H=void 0,t&&c.__e(t,r.__v))};var k=\"function\"==typeof requestAnimationFrame;function w(n){var t,r=function(){clearTimeout(u),k&&cancelAnimationFrame(t),setTimeout(n)},u=setTimeout(r,100);k&&(t=requestAnimationFrame(r))}function z(n){var t=r,u=n.__c;\"function\"==typeof u&&(n.__c=void 0,u()),r=t}function B(n){var t=r;n.__c=n.__(),r=t}function C(n,t){return!n||n.length!==t.length||t.some(function(t,r){return t!==n[r]})}function D(n,t){return\"function\"==typeof t?t(n):t}export{q as useCallback,x as useContext,P as useDebugValue,y as useEffect,b as useErrorBoundary,g as useId,F as useImperativeHandle,_ as useLayoutEffect,T as useMemo,p as useReducer,A as useRef,h as useState};\n//# sourceMappingURL=hooks.module.js.map\n","import{Component as n,createElement as t,options as e,toChildArray as r,Fragment as u,render as o,hydrate as i,createContext as c,createRef as f,cloneElement as l}from\"preact\";export{Component,Fragment,createContext,createElement,createRef}from\"preact\";import{useState as a,useLayoutEffect as s,useEffect as h,useCallback as v,useContext as d,useDebugValue as p,useId as m,useImperativeHandle as y,useMemo as _,useReducer as b,useRef as S}from\"preact/hooks\";export*from\"preact/hooks\";function g(n,t){for(var e in n)if(\"__source\"!==e&&!(e in t))return!0;for(var r in t)if(\"__source\"!==r&&n[r]!==t[r])return!0;return!1}function E(n,t){var e=t(),r=a({t:{__:e,u:t}}),u=r[0].t,o=r[1];return s(function(){u.__=e,u.u=t,C(u)&&o({t:u})},[n,e,t]),h(function(){return C(u)&&o({t:u}),n(function(){C(u)&&o({t:u})})},[n]),e}function C(n){var t,e,r=n.u,u=n.__;try{var o=r();return!((t=u)===(e=o)&&(0!==t||1/t==1/e)||t!=t&&e!=e)}catch(n){return!0}}function x(n){n()}function R(n){return n}function w(){return[!1,x]}var k=s;function I(n,t){this.props=n,this.context=t}function N(n,e){function r(n){var t=this.props.ref,r=t==n.ref;return!r&&t&&(t.call?t(null):t.current=null),e?!e(this.props,n)||!r:g(this.props,n)}function u(e){return this.shouldComponentUpdate=r,t(n,e)}return u.displayName=\"Memo(\"+(n.displayName||n.name)+\")\",u.prototype.isReactComponent=!0,u.__f=!0,u}(I.prototype=new n).isPureReactComponent=!0,I.prototype.shouldComponentUpdate=function(n,t){return g(this.props,n)||g(this.state,t)};var M=e.__b;e.__b=function(n){n.type&&n.type.__f&&n.ref&&(n.props.ref=n.ref,n.ref=null),M&&M(n)};var T=\"undefined\"!=typeof Symbol&&Symbol.for&&Symbol.for(\"react.forward_ref\")||3911;function A(n){function t(t){if(!(\"ref\"in t))return n(t,null);var e=t.ref;delete t.ref;var r=n(t,e);return t.ref=e,r}return t.$$typeof=T,t.render=t,t.prototype.isReactComponent=t.__f=!0,t.displayName=\"ForwardRef(\"+(n.displayName||n.name)+\")\",t}var D=function(n,t){return null==n?null:r(r(n).map(t))},L={map:D,forEach:D,count:function(n){return n?r(n).length:0},only:function(n){var t=r(n);if(1!==t.length)throw\"Children.only\";return t[0]},toArray:r},O=e.__e;e.__e=function(n,t,e,r){if(n.then)for(var u,o=t;o=o.__;)if((u=o.__c)&&u.__c)return null==t.__e&&(t.__e=e.__e,t.__k=e.__k),u.__c(n,t);O(n,t,e,r)};var F=e.unmount;function U(n,t,e){return n&&(n.__c&&n.__c.__H&&(n.__c.__H.__.forEach(function(n){\"function\"==typeof n.__c&&n.__c()}),n.__c.__H=null),null!=(n=function(n,t){for(var e in t)n[e]=t[e];return n}({},n)).__c&&(n.__c.__P===e&&(n.__c.__P=t),n.__c=null),n.__k=n.__k&&n.__k.map(function(n){return U(n,t,e)})),n}function V(n,t,e){return n&&e&&(n.__v=null,n.__k=n.__k&&n.__k.map(function(n){return V(n,t,e)}),n.__c&&n.__c.__P===t&&(n.__e&&e.appendChild(n.__e),n.__c.__e=!0,n.__c.__P=e)),n}function W(){this.__u=0,this.o=null,this.__b=null}function P(n){var t=n.__.__c;return t&&t.__a&&t.__a(n)}function j(n){var e,r,u;function o(o){if(e||(e=n()).then(function(n){r=n.default||n},function(n){u=n}),u)throw u;if(!r)throw e;return t(r,o)}return o.displayName=\"Lazy\",o.__f=!0,o}function z(){this.i=null,this.l=null}e.unmount=function(n){var t=n.__c;t&&t.__R&&t.__R(),t&&32&n.__u&&(n.type=null),F&&F(n)},(W.prototype=new n).__c=function(n,t){var e=t.__c,r=this;null==r.o&&(r.o=[]),r.o.push(e);var u=P(r.__v),o=!1,i=function(){o||(o=!0,e.__R=null,u?u(c):c())};e.__R=i;var c=function(){if(!--r.__u){if(r.state.__a){var n=r.state.__a;r.__v.__k[0]=V(n,n.__c.__P,n.__c.__O)}var t;for(r.setState({__a:r.__b=null});t=r.o.pop();)t.forceUpdate()}};r.__u++||32&t.__u||r.setState({__a:r.__b=r.__v.__k[0]}),n.then(i,i)},W.prototype.componentWillUnmount=function(){this.o=[]},W.prototype.render=function(n,e){if(this.__b){if(this.__v.__k){var r=document.createElement(\"div\"),o=this.__v.__k[0].__c;this.__v.__k[0]=U(this.__b,r,o.__O=o.__P)}this.__b=null}var i=e.__a&&t(u,null,n.fallback);return i&&(i.__u&=-33),[t(u,null,e.__a?null:n.children),i]};var B=function(n,t,e){if(++e[1]===e[0]&&n.l.delete(t),n.props.revealOrder&&(\"t\"!==n.props.revealOrder[0]||!n.l.size))for(e=n.i;e;){for(;e.length>3;)e.pop()();if(e[1]<e[0])break;n.i=e=e[2]}};function H(n){return this.getChildContext=function(){return n.context},n.children}function Z(n){var e=this,r=n.h;e.componentWillUnmount=function(){o(null,e.v),e.v=null,e.h=null},e.h&&e.h!==r&&e.componentWillUnmount(),e.v||(e.h=r,e.v={nodeType:1,parentNode:r,childNodes:[],contains:function(){return!0},appendChild:function(n){this.childNodes.push(n),e.h.appendChild(n)},insertBefore:function(n,t){this.childNodes.push(n),e.h.appendChild(n)},removeChild:function(n){this.childNodes.splice(this.childNodes.indexOf(n)>>>1,1),e.h.removeChild(n)}}),o(t(H,{context:e.context},n.__v),e.v)}function Y(n,e){var r=t(Z,{__v:n,h:e});return r.containerInfo=e,r}(z.prototype=new n).__a=function(n){var t=this,e=P(t.__v),r=t.l.get(n);return r[0]++,function(u){var o=function(){t.props.revealOrder?(r.push(u),B(t,n,r)):u()};e?e(o):o()}},z.prototype.render=function(n){this.i=null,this.l=new Map;var t=r(n.children);n.revealOrder&&\"b\"===n.revealOrder[0]&&t.reverse();for(var e=t.length;e--;)this.l.set(t[e],this.i=[1,0,this.i]);return n.children},z.prototype.componentDidUpdate=z.prototype.componentDidMount=function(){var n=this;this.l.forEach(function(t,e){B(n,e,t)})};var $=\"undefined\"!=typeof Symbol&&Symbol.for&&Symbol.for(\"react.element\")||60103,q=/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|image(!S)|letter|lighting|marker(?!H|W|U)|overline|paint|pointer|shape|stop|strikethrough|stroke|text(?!L)|transform|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/,G=/^on(Ani|Tra|Tou|BeforeInp|Compo)/,J=/[A-Z0-9]/g,K=\"undefined\"!=typeof document,Q=function(n){return(\"undefined\"!=typeof Symbol&&\"symbol\"==typeof Symbol()?/fil|che|rad/:/fil|che|ra/).test(n)};function X(n,t,e){return null==t.__k&&(t.textContent=\"\"),o(n,t),\"function\"==typeof e&&e(),n?n.__c:null}function nn(n,t,e){return i(n,t),\"function\"==typeof e&&e(),n?n.__c:null}n.prototype.isReactComponent={},[\"componentWillMount\",\"componentWillReceiveProps\",\"componentWillUpdate\"].forEach(function(t){Object.defineProperty(n.prototype,t,{configurable:!0,get:function(){return this[\"UNSAFE_\"+t]},set:function(n){Object.defineProperty(this,t,{configurable:!0,writable:!0,value:n})}})});var tn=e.event;function en(){}function rn(){return this.cancelBubble}function un(){return this.defaultPrevented}e.event=function(n){return tn&&(n=tn(n)),n.persist=en,n.isPropagationStopped=rn,n.isDefaultPrevented=un,n.nativeEvent=n};var on,cn={enumerable:!1,configurable:!0,get:function(){return this.class}},fn=e.vnode;e.vnode=function(n){\"string\"==typeof n.type&&function(n){var t=n.props,e=n.type,u={},o=-1===e.indexOf(\"-\");for(var i in t){var c=t[i];if(!(\"value\"===i&&\"defaultValue\"in t&&null==c||K&&\"children\"===i&&\"noscript\"===e||\"class\"===i||\"className\"===i)){var f=i.toLowerCase();\"defaultValue\"===i&&\"value\"in t&&null==t.value?i=\"value\":\"download\"===i&&!0===c?c=\"\":\"translate\"===f&&\"no\"===c?c=!1:\"o\"===f[0]&&\"n\"===f[1]?\"ondoubleclick\"===f?i=\"ondblclick\":\"onchange\"!==f||\"input\"!==e&&\"textarea\"!==e||Q(t.type)?\"onfocus\"===f?i=\"onfocusin\":\"onblur\"===f?i=\"onfocusout\":G.test(i)&&(i=f):f=i=\"oninput\":o&&q.test(i)?i=i.replace(J,\"-$&\").toLowerCase():null===c&&(c=void 0),\"oninput\"===f&&u[i=f]&&(i=\"oninputCapture\"),u[i]=c}}\"select\"==e&&u.multiple&&Array.isArray(u.value)&&(u.value=r(t.children).forEach(function(n){n.props.selected=-1!=u.value.indexOf(n.props.value)})),\"select\"==e&&null!=u.defaultValue&&(u.value=r(t.children).forEach(function(n){n.props.selected=u.multiple?-1!=u.defaultValue.indexOf(n.props.value):u.defaultValue==n.props.value})),t.class&&!t.className?(u.class=t.class,Object.defineProperty(u,\"className\",cn)):(t.className&&!t.class||t.class&&t.className)&&(u.class=u.className=t.className),n.props=u}(n),n.$$typeof=$,fn&&fn(n)};var ln=e.__r;e.__r=function(n){ln&&ln(n),on=n.__c};var an=e.diffed;e.diffed=function(n){an&&an(n);var t=n.props,e=n.__e;null!=e&&\"textarea\"===n.type&&\"value\"in t&&t.value!==e.value&&(e.value=null==t.value?\"\":t.value),on=null};var sn={ReactCurrentDispatcher:{current:{readContext:function(n){return on.__n[n.__c].props.value},useCallback:v,useContext:d,useDebugValue:p,useDeferredValue:R,useEffect:h,useId:m,useImperativeHandle:y,useInsertionEffect:k,useLayoutEffect:s,useMemo:_,useReducer:b,useRef:S,useState:a,useSyncExternalStore:E,useTransition:w}}},hn=\"18.3.1\";function vn(n){return t.bind(null,n)}function dn(n){return!!n&&n.$$typeof===$}function pn(n){return dn(n)&&n.type===u}function mn(n){return!!n&&!!n.displayName&&(\"string\"==typeof n.displayName||n.displayName instanceof String)&&n.displayName.startsWith(\"Memo(\")}function yn(n){return dn(n)?l.apply(null,arguments):n}function _n(n){return!!n.__k&&(o(null,n),!0)}function bn(n){return n&&(n.base||1===n.nodeType&&n)||null}var Sn=function(n,t){return n(t)},gn=function(n,t){return n(t)},En=u,Cn=dn,xn={useState:a,useId:m,useReducer:b,useEffect:h,useLayoutEffect:s,useInsertionEffect:k,useTransition:w,useDeferredValue:R,useSyncExternalStore:E,startTransition:x,useRef:S,useImperativeHandle:y,useMemo:_,useCallback:v,useContext:d,useDebugValue:p,version:\"18.3.1\",Children:L,render:X,hydrate:nn,unmountComponentAtNode:_n,createPortal:Y,createElement:t,createContext:c,createFactory:vn,cloneElement:yn,createRef:f,Fragment:u,isValidElement:dn,isElement:Cn,isFragment:pn,isMemo:mn,findDOMNode:bn,Component:n,PureComponent:I,memo:N,forwardRef:A,flushSync:gn,unstable_batchedUpdates:Sn,StrictMode:En,Suspense:W,SuspenseList:z,lazy:j,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:sn};export{L as Children,I as PureComponent,En as StrictMode,W as Suspense,z as SuspenseList,sn as __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,yn as cloneElement,vn as createFactory,Y as createPortal,xn as default,bn as findDOMNode,gn as flushSync,A as forwardRef,nn as hydrate,Cn as isElement,pn as isFragment,mn as isMemo,dn as isValidElement,j as lazy,N as memo,X as render,x as startTransition,_n as unmountComponentAtNode,Sn as unstable_batchedUpdates,R as useDeferredValue,k as useInsertionEffect,E as useSyncExternalStore,w as useTransition,hn as version};\n//# sourceMappingURL=compat.module.js.map\n","import * as PReact from \"./preact-shim.ts\";\n\ninterface ImageProps {\n href: string;\n x?: number;\n y?: number;\n height?: number;\n yOffset?: number;\n}\n\nexport const Image: PReact.FunctionComponent<ImageProps> = ({\n href,\n x,\n y = 0,\n height = 12\n}) => {\n\n return <image\n xlinkHref={href}\n x={x - height / 2}\n y={y - height / 2}\n width={height}\n height={height}\n ></image>;\n};\n","import * as PReact from \"./preact-shim.ts\";\nimport { Utility } from \"@hpcc-js/common\";\n\nexport interface ImageCharProps {\n x?: number;\n y?: number;\n height?: number;\n fill?: string;\n stroke?: string;\n fontFamily?: string;\n char?: string;\n yOffset?: number;\n fontWeight?: number;\n}\n\nexport const ImageChar: PReact.FunctionComponent<ImageCharProps> = ({\n x,\n y = 0,\n height = 12,\n fill,\n stroke,\n fontFamily = \"FontAwesome\",\n char = \"\",\n fontWeight\n}) => {\n\n const renderChar = PReact.useMemo(() => {\n return fontFamily === \"FontAwesome\" ? Utility.faChar(char) : char;\n }, [char, fontFamily]);\n\n return <text\n x={x}\n y={y}\n fill={fill}\n stroke={stroke}\n fontFamily={fontFamily}\n fontSize={`${height}px`}\n fontWeight={fontWeight}\n dominantBaseline=\"middle\"\n style={{ textAnchor: \"middle\", alignmentBaseline: \"middle\" }}\n >{renderChar}</text>;\n};\n","import * as PReact from \"./preact-shim.ts\";\n\ninterface CircleProps {\n radius?: number;\n fill?: string;\n stroke?: string;\n strokeWidth?: number;\n shapeRendering?: \"auto\" | \"optimizeSpeed\" | \"crispEdges\" | \"geometricPrecision\";\n}\n\nexport const Circle: PReact.FunctionComponent<CircleProps> = ({\n radius = 32,\n fill = \"navy\",\n stroke = fill,\n strokeWidth = 1,\n shapeRendering\n}) => <circle\n r={radius}\n fill={fill}\n stroke={stroke}\n strokeWidth={strokeWidth}\n shapeRendering={shapeRendering}\n />;\n\ninterface SquareProps {\n radius?: number;\n cornerRadius?: number;\n fill?: string;\n stroke?: string;\n strokeWidth?: number;\n shapeRendering?: \"auto\" | \"optimizeSpeed\" | \"crispEdges\" | \"geometricPrecision\";\n}\n\nexport const Square: PReact.FunctionComponent<SquareProps> = ({\n radius = 30,\n cornerRadius = 0,\n fill = \"white\",\n stroke,\n strokeWidth = 1,\n shapeRendering\n}) => <rect\n x={-radius}\n y={-radius}\n rx={cornerRadius}\n ry={cornerRadius}\n width={radius * 2}\n height={radius * 2}\n fill={fill}\n stroke={stroke || fill}\n strokeWidth={strokeWidth}\n shapeRendering={shapeRendering}\n />;\n\ninterface RectangleProps {\n width?: number;\n height?: number;\n cornerRadius?: number;\n fill?: string;\n stroke?: string;\n strokeWidth?: number;\n shapeRendering?: \"auto\" | \"optimizeSpeed\" | \"crispEdges\" | \"geometricPrecision\";\n}\n\nexport const Rectangle: PReact.FunctionComponent<RectangleProps> = ({\n width = 30,\n height = 30,\n cornerRadius = 0,\n fill = \"white\",\n stroke = \"black\",\n strokeWidth = 1,\n shapeRendering\n}) => {\n return <rect\n x={-width / 2}\n y={-height / 2}\n rx={cornerRadius}\n ry={cornerRadius}\n width={width}\n height={height}\n fill={fill}\n stroke={stroke || fill}\n strokeWidth={strokeWidth}\n shapeRendering={shapeRendering}\n />;\n};\n\ninterface ShapeProps {\n shape?: \"circle\" | \"square\" | \"rectangle\";\n height?: number;\n width?: number;\n fill?: string;\n stroke?: string;\n strokeWidth?: number;\n shapeRendering?: \"auto\" | \"optimizeSpeed\" | \"crispEdges\" | \"geometricPrecision\";\n cornerRadius?: number;\n}\n\nexport const Shape: PReact.FunctionComponent<ShapeProps> = ({\n shape = \"circle\",\n height = 128,\n width,\n fill,\n stroke,\n strokeWidth = 1,\n shapeRendering,\n cornerRadius\n}) => {\n switch (shape) {\n case \"square\":\n return <Square\n radius={height / 2}\n fill={fill}\n stroke={stroke}\n strokeWidth={strokeWidth}\n shapeRendering={shapeRendering}\n cornerRadius={cornerRadius}\n />;\n case \"rectangle\":\n return <Rectangle\n width={width ?? height}\n height={height}\n fill={fill}\n stroke={stroke}\n strokeWidth={strokeWidth}\n shapeRendering={shapeRendering}\n cornerRadius={cornerRadius}\n />;\n case \"circle\":\n default:\n return <Circle\n radius={height / 2}\n fill={fill}\n stroke={stroke}\n strokeWidth={strokeWidth}\n shapeRendering={shapeRendering}\n />;\n }\n};\n","import * as PReact from \"./preact-shim.ts\";\nimport { Palette } from \"@hpcc-js/common\";\nimport { Image } from \"./image.tsx\";\nimport { ImageChar } from \"./ImageChar.tsx\";\nimport { Shape } from \"./shape.tsx\";\n\nexport interface IconProps {\n shape?: \"circle\" | \"square\" | \"rectangle\";\n width?: number;\n height?: number;\n padding?: number;\n fill?: string;\n stroke?: string;\n strokeWidth?: number;\n imageUrl?: string;\n imageFontFamily?: string;\n imageChar?: string;\n imageCharFill?: string;\n xOffset?: number;\n yOffset?: number;\n cornerRadius?: number;\n shapeRendering?: \"auto\" | \"optimizeSpeed\" | \"crispEdges\" | \"geometricPrecision\";\n}\n\nexport const Icon: PReact.FunctionComponent<IconProps> = ({\n shape = \"circle\",\n width,\n height = 32,\n fill,\n stroke,\n strokeWidth = 0,\n imageUrl = \"\",\n imageFontFamily = \"FontAwesome\",\n imageChar = \"\",\n imageCharFill = Palette.textColor(fill),\n padding = height / 5,\n xOffset = 0,\n yOffset = 0,\n cornerRadius,\n shapeRendering\n}) => {\n return <>\n <Shape\n shape={shape}\n width={width}\n height={height}\n fill={fill}\n stroke={stroke}\n strokeWidth={strokeWidth}\n shapeRendering={shapeRendering}\n cornerRadius={cornerRadius}\n />\n {imageUrl ?\n <Image\n href={imageUrl}\n x={xOffset}\n y={yOffset}\n height={height - padding}\n ></Image> :\n <ImageChar\n x={xOffset}\n y={yOffset}\n height={height - padding}\n fontFamily={imageFontFamily}\n char={imageChar}\n fill={imageCharFill}\n fontWeight={400}\n ></ImageChar>\n }\n </>;\n};\n\nexport interface IconEx extends IconProps {\n id: string;\n}\n\nexport interface IconsProps {\n icons: IconEx[];\n}\n\nexport const Icons: PReact.FunctionComponent<IconsProps> = ({\n icons = []\n}) => {\n const IconComponents = icons.map(cat => {\n return <g\n key={cat.id}\n id={cat.id}\n >\n <Icon\n {...cat}\n />\n </g>;\n });\n return <>{IconComponents}</>;\n};\n","import * as PReact from \"./preact-shim.ts\";\nimport { Utility } from \"@hpcc-js/common\";\nimport { Icon } from \"./icon.tsx\";\nimport { Rectangle } from \"./shape.tsx\";\n\nexport interface TextLineProps {\n text: string;\n height?: number;\n anchor?: string;\n baseline?: string;\n fontFamily?: string;\n fill?: string;\n}\n\nexport const TextLine: PReact.FunctionComponent<TextLineProps> = ({\n text,\n height = 12,\n anchor = \"middle\",\n baseline = \"middle\",\n fontFamily = \"Verdana\",\n fill = \"black\"\n}) => {\n return <text\n font-family={fontFamily}\n font-size={`${height}px`}\n text-anchor={anchor}\n dominant-baseline={baseline}\n fill={fill}\n >{text}</text>;\n};\n\nexport interface TextProps {\n text: string;\n height?: number;\n fontFamily?: string;\n fill?: string;\n onSizeUpdate?: (size: { width: number, height: number }) => void;\n}\n\nexport const Text: PReact.FunctionComponent<TextProps> = ({\n text,\n height = 12,\n fontFamily = \"Verdana\",\n fill = \"black\",\n onSizeUpdate\n}) => {\n const [totalWidth, setTotalWidth] = PReact.useState(0);\n const [totalHeight, setTotalHeight] = PReact.useState(0);\n\n PReact.useEffect(() => {\n if (onSizeUpdate) {\n onSizeUpdate({ width: totalWidth, height: totalHeight });\n }\n }, [totalWidth, totalHeight, onSizeUpdate]);\n\n const parts = PReact.useMemo(() => {\n return text.split(\"\\n\");\n }, [text]);\n\n PReact.useLayoutEffect(() => {\n const size = Utility.textSize(parts, fontFamily, height);\n setTotalWidth(size.width);\n setTotalHeight(size.height);\n }, [fontFamily, height, parts]);\n\n const TextLines = PReact.useMemo(() => {\n const yOffset = -(totalHeight / 2) + (height / 2);\n return parts.map((p, i) => {\n return <g key={`key-${i}`} transform={`translate(0 ${yOffset + i * (height + 2)})`}>\n <TextLine\n text={p}\n height={height}\n fontFamily={fontFamily}\n fill={fill}\n />\n </g>;\n });\n }, [parts, totalHeight, height, fontFamily, fill]);\n\n return <g>{TextLines}</g>;\n};\n\nexport interface TextBoxProps {\n text: string;\n height?: number;\n fontFamily?: string;\n padding?: number;\n fill?: string;\n stroke?: string;\n textFill?: string;\n strokeWidth?: number;\n cornerRadius?: number;\n textOffsetY?: number;\n onSizeUpdate?: (size: { width: number, height: number }) => void;\n}\n\nexport const TextBox: PReact.FunctionComponent<TextBoxProps> = ({\n text,\n height = 12,\n fontFamily = \"Verdana\",\n padding = 4,\n fill = \"whitesmoke\",\n stroke = \"lightgray\",\n textFill = \"black\",\n strokeWidth = 1,\n cornerRadius = 0,\n onSizeUpdate\n}) => {\n const [textWidth, setTextWidthUpdate] = PReact.useState(0);\n const [textHeight, setTextHeightUpdate] = PReact.useState(0);\n\n PReact.useEffect(() => {\n if (onSizeUpdate) {\n onSizeUpdate({ width: textWidth, height: textHeight });\n }\n }, [textWidth, textHeight, onSizeUpdate]);\n\n const onTextSizeUpdate = PReact.useCallback(size => {\n setTextWidthUpdate(size.width);\n setTextHeightUpdate(size.height);\n }, []);\n\n const w = textWidth + padding * 2 + strokeWidth;\n const h = textHeight + padding * 2 + strokeWidth;\n const textOffsetY = Math.floor(height / 10);\n\n return <>\n <Rectangle\n width={w}\n height={h}\n fill={fill}\n stroke={stroke}\n strokeWidth={strokeWidth}\n cornerRadius={cornerRadius}\n />\n <g transform={`translate(0 ${textOffsetY})`}>\n <Text\n text={text}\n fontFamily={fontFamily}\n height={height}\n fill={textFill}\n onSizeUpdate={onTextSizeUpdate}\n />\n </g>\n </>;\n};\n\nexport interface LabelledRect extends TextBoxProps {\n width?: number;\n fontSize?: number;\n}\n\nexport const LabelledRect: PReact.FunctionComponent<LabelledRect> = ({\n text,\n height = 12,\n width = 12,\n fontFamily = \"Verdana\",\n fontSize = 10,\n padding = 3,\n fill = \"whitesmoke\",\n stroke = \"lightgray\",\n textFill = \"black\",\n strokeWidth = 1,\n cornerRadius = 0,\n onSizeUpdate\n}) => {\n\n const [actualWidth, setActualWidthUpdate] = PReact.useState(width);\n const [actualHeight, setActualHeightUpdate] = PReact.useState(height);\n\n PReact.useLayoutEffect(() => {\n const size = Utility.textSize(text, fontFamily, fontSize);\n setActualWidthUpdate(size.width + padding * 2);\n setActualHeightUpdate(size.height + padding * 2);\n }, [text, fontFamily, fontSize, padding]);\n\n PReact.useLayoutEffect(() => {\n if (onSizeUpdate) {\n onSizeUpdate({ width: actualWidth, height: actualHeight });\n }\n }, [actualWidth, actualHeight, padding, onSizeUpdate]);\n\n return <>\n <Rectangle\n width={width}\n height={height}\n fill={fill}\n stroke={stroke}\n strokeWidth={strokeWidth}\n cornerRadius={cornerRadius}\n />\n <g transform={`translate(${-(width / 2) + padding} ${-(height / 2) + padding})`}>\n <TextLine\n text={text}\n fontFamily={fontFamily}\n height={fontSize}\n fill={textFill}\n anchor=\"start\"\n baseline=\"hanging\"\n />\n </g>\n </>;\n};\n\nexport interface IconLabelledRect extends LabelledRect {\n icon: string;\n iconFontFamily?: string;\n iconFontSize?: number;\n}\n\nexport const IconLabelledRect: PReact.FunctionComponent<IconLabelledRect> = ({\n icon,\n iconFontFamily,\n text,\n height = 12,\n width = 12,\n fontFamily = \"Verdana\",\n fontSize = 10,\n padding = 3,\n fill = \"whitesmoke\",\n stroke = \"lightgray\",\n textFill = \"black\",\n strokeWidth = 1,\n cornerRadius = 0\n}) => {\n\n return <>\n <Rectangle\n width={width}\n height={height}\n fill={fill}\n stroke={stroke}\n strokeWidth={strokeWidth}\n cornerRadius={cornerRadius}\n />\n <g transform={`translate(${-(width / 2) + padding} ${-(height / 2) + padding})`}>\n <Icon\n shape=\"square\"\n imageFontFamily={iconFontFamily}\n imageChar={icon}\n height={height}\n fill={fill}\n imageCharFill={textFill}\n />\n </g>\n <g transform={`translate(${-(width / 2) + (padding * 2) + height} ${-(height / 2) + padding})`}>\n <TextLine\n text={text}\n fontFamily={fontFamily}\n height={fontSize}\n fill={textFill}\n anchor=\"start\"\n baseline=\"hanging\"\n />\n </g>\n </>;\n};\n","import * as PReact from \"./preact-shim.ts\";\nimport { VertexProps } from \"./vertex.tsx\";\nimport { Text } from \"./text.tsx\";\n\ntype Point = [number, number];\n\nexport interface EdgeProps<V extends VertexProps = VertexProps> {\n id: string | number;\n origData?: any;\n source: V;\n target: V;\n label?: string;\n labelPos?: Point;\n weight?: number;\n strokeDasharray?: string;\n strokeWidth?: number;\n stroke?: string;\n fontFamily?: string;\n labelFill?: string;\n labelHeight?: number,\n path?: string;\n points?: Array<[number, number]>;\n curveDepth?: number;\n}\n\nexport const Edge: PReact.FunctionComponent<EdgeProps> = ({\n label,\n labelPos,\n labelFill = \"black\",\n labelHeight = 12,\n path,\n stroke,\n strokeWidth,\n strokeDasharray\n}) => {\n return <>\n <path d={path} stroke={stroke} style={{ strokeWidth, strokeDasharray }}></path>\n {\n label && labelPos && labelPos.length === 2 ?\n <g transform={`translate(${labelPos[0]} ${labelPos[1]})`}>\n <Text text={label} fill={labelFill} height={labelHeight} />\n </g> : undefined\n }\n </>;\n};\n","import { h, FunctionComponent, render as preactRender } from \"preact\";\nimport { HTMLWidget, SVGWidget } from \"@hpcc-js/common\";\n\nexport function render<P>(C: FunctionComponent<P>, props: Readonly<P>, parent: Element | Document | ShadowRoot | DocumentFragment, replaceNode?: Element | Text) {\n preactRender(h(C, props), parent, replaceNode);\n}\n\nexport function svgRender<P>(C: FunctionComponent<P>, props: Readonly<P>, parent: Element | Document | ShadowRoot | DocumentFragment, replaceNode?: Element | Text) {\n preactRender(h(\"svg\", null, h(C, props)), parent, replaceNode);\n}\n\nexport class HTMLAdapter<P> extends HTMLWidget {\n\n props(): P;\n props(_: Partial<P>): this;\n props(_?: Partial<P>): P | this {\n if (!arguments.length) return this._props;\n this._props = { ...this._props, ..._ };\n return this;\n }\n\n prop<K extends keyof P>(_: K): P[K];\n prop<K extends keyof P>(_: K, value: P[K]): this;\n prop<K extends keyof P>(_: K, value?: P[K]): this | P[K] {\n if (arguments.length === 1) return this._props[_];\n this._props[_] = value;\n return this;\n }\n\n constructor(protected readonly _component: FunctionComponent<P>) {\n super();\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n render(this._component, this._props, domNode);\n }\n}\nHTMLAdapter.prototype._class += \" react_HTMLAdapter\";\n\nexport interface HTMLAdapter<P> {\n _props: P;\n}\nHTMLAdapter.prototype.publish(\"props\", {}, \"object\", \"Properties\");\n\nexport class SVGAdapter<P> extends SVGWidget {\n\n props(): P;\n props(_: Partial<P>): this;\n props(_?: Partial<P>): P | this {\n if (!arguments.length) return this._props;\n this._props = { ...this._props, ..._ };\n return this;\n }\n\n prop<K extends keyof P>(_: K): P[K];\n prop<K extends keyof P>(_: K, value: P[K]): this;\n prop<K extends keyof P>(_: K, value?: P[K]): this | P[K] {\n if (arguments.length === 1) return this._props[_];\n this._props[_] = value;\n return this;\n }\n\n constructor(protected readonly _component: FunctionComponent<P>) {\n super();\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n render(this._component, this._props, domNode);\n }\n}\nSVGAdapter.prototype._class += \" react_SVGAdapter\";\n\nexport interface SVGAdapter<P> {\n _props: P;\n}\nSVGAdapter.prototype.publish(\"props\", {}, \"object\", \"Properties\");\n","import * as PReact from \"./preact-shim.ts\";\n\nexport interface SpanProps {\n text: string;\n}\n\nexport const Span: PReact.FunctionComponent<SpanProps> = ({\n text\n}) => <span>{text}</span>;\n","import * as PReact from \"./preact-shim.ts\";\nimport { Icon, IconProps } from \"./icon.tsx\";\nimport { TextBox } from \"./text.tsx\";\n\nexport interface AnnotationsProps {\n x: number;\n y: number;\n annotationIDs: string[];\n stepSize?: number;\n}\n\nexport const Annotations: PReact.FunctionComponent<AnnotationsProps> = ({\n x,\n y,\n annotationIDs = [],\n stepSize = -16\n}) => {\n const IconComponents = annotationIDs.map((id, i) => <g\n key={id}\n transform={`translate(${x + i * stepSize} ${y})`}\n >\n <use\n xlinkHref={\"#\" + id}\n />\n </g>\n );\n return <>{IconComponents}</>;\n};\n\nexport interface VertexProps {\n id: string | number;\n origData?: any;\n centroid?: boolean;\n categoryID?: string;\n text: string;\n textHeight?: number;\n textPadding?: number;\n icon?: IconProps;\n annotationsHeight?: number;\n annotationIDs?: string[];\n textFill?: string;\n textboxFill?: string;\n textboxStroke?: string;\n textFontFamily?: string;\n onSizeUpdate?: (size: { width: number, height: number }) => void;\n showLabel?: boolean;\n scale?: number\n}\n\nexport const Vertex: React.FunctionComponent<VertexProps> = ({\n categoryID = \"\",\n text = \"\",\n textHeight = 12,\n textPadding = 4,\n icon = {} as IconProps,\n annotationsHeight = 12,\n annotationIDs = [],\n textFill,\n textboxFill,\n textboxStroke,\n textFontFamily,\n onSizeUpdate,\n showLabel = true,\n scale = 1\n}) => {\n icon = {\n imageChar: \"fa-question\",\n height: 32,\n fill: \"transparent\",\n ...icon\n };\n\n const [textBoxWidth, setTextBoxWidthUpdate] = PReact.useState(0);\n const [textBoxHeight, setTextBoxHeightUpdate] = PReact.useState(0);\n\n PReact.useEffect(() => {\n if (onSizeUpdate) {\n onSizeUpdate({ width: 0, height: 0 });\n }\n }, [textBoxWidth, textBoxHeight, onSizeUpdate]);\n\n let width = textBoxWidth;\n width += 4;\n let offsetY = -(icon.height * 2 / 6 + textHeight + 8) / 2;\n const textboxOffsetY = icon.height / 3 + textBoxHeight / 2 + textPadding;\n let annotationOffsetY = icon.height / 3 + textBoxHeight + textPadding + annotationsHeight / 3;\n if (!showLabel) {\n offsetY += (textHeight + 8) / 2;\n annotationOffsetY -= textBoxHeight + textPadding;\n }\n\n const onTextBoxSizeUpdate = PReact.useCallback(size => {\n setTextBoxWidthUpdate(size.width);\n setTextBoxHeightUpdate(size.height);\n }, []);\n\n const label = showLabel ? <g transform={`translate(0 ${textboxOffsetY})`}>\n <TextBox\n text={text}\n height={textHeight}\n padding={textPadding}\n onSizeUpdate={onTextBoxSizeUpdate}\n textFill={textFill}\n fill={textboxFill}\n stroke={textboxStroke}\n fontFamily={textFontFamily}\n />\n </g> : undefined;\n return categoryID ?\n <g transform={`translate(0 ${offsetY}) scale(${scale})`}>\n <use xlinkHref={\"#\" + categoryID} />\n {label}\n <Annotations x={width / 2} y={annotationOffsetY} annotationIDs={annotationIDs} />\n </g> :\n <g transform={`translate(0 ${offsetY}) scale(${scale})`}>\n <Icon {...icon} />\n {label}\n </g>;\n};\n","import * as PReact from \"./preact-shim.ts\";\nimport { Utility } from \"@hpcc-js/common\";\nimport { Icon, IconProps } from \"./icon.tsx\";\nimport { TextBox } from \"./text.tsx\";\nimport { Annotations, VertexProps } from \"./vertex.tsx\";\n\nexport const Vertex2: PReact.FunctionComponent<VertexProps> = ({\n categoryID = \"\",\n text = \"\",\n textHeight = 12,\n textPadding = 4,\n icon = {} as IconProps,\n textFill = \"black\",\n textboxFill = \"white\",\n textboxStroke = \"black\",\n textFontFamily,\n annotationsHeight = 12,\n annotationIDs = []\n}) => {\n icon = {\n imageChar: \"fa-question\",\n imageCharFill: \"white\",\n height: 32,\n fill: \"black\",\n shape: \"square\",\n ...icon\n };\n const textBoxHeight = textHeight + textPadding * 2;\n const { width } = PReact.useMemo(() => {\n return Utility.textSize(text, textFontFamily, textHeight, false);\n }, [text, textFontFamily, textHeight]);\n\n const stepSize = annotationsHeight;\n const textboxStrokeWidth = 1;\n\n const halfTextboxHeight = textBoxHeight / 2;\n\n const offsetX = 0;\n const offsetY = -(icon.height * 2 / 6 + textHeight + 8) / 2;\n const iconOffsetX = - icon.height / 2;\n const iconOffsetY = 0;\n const textboxOffsetX = Math.ceil((width / 2) + textPadding);\n const textboxOffsetY = halfTextboxHeight - (icon.height / 2);\n const annotationOffsetX = stepSize / 2;\n const annotationOffsetY = halfTextboxHeight;\n return categoryID ?\n <g\n transform={`translate(${offsetX} ${offsetY})`}\n >\n <g\n transform={`translate(${iconOffsetX} ${iconOffsetY})`}\n >\n <use\n xlinkHref={\"#\" + categoryID}\n />\n </g>\n <g\n transform={`translate(${textboxOffsetX} ${textboxOffsetY})`}\n >\n <TextBox\n text={text}\n height={textHeight}\n padding={textPadding}\n strokeWidth={textboxStrokeWidth}\n stroke={textboxStroke}\n fill={textboxFill}\n textFill={textFill}\n fontFamily={textFontFamily}\n />\n </g>\n <Annotations\n x={annotationOffsetX}\n y={annotationOffsetY}\n annotationIDs={annotationIDs}\n stepSize={stepSize}\n />\n </g>\n :\n <>\n <g\n transform={`translate(${iconOffsetX} ${iconOffsetY})scale(1.0002)`}\n >\n <Icon\n {...icon}\n shape=\"square\"\n />\n </g>\n <g\n transform={`translate(${textboxOffsetX} ${textboxOffsetY})scale(1.0002)`}\n >\n <TextBox\n text={text}\n height={textHeight}\n padding={textPadding}\n stroke={textboxStroke}\n fill={textboxFill}\n />\n </g>\n </>;\n};\n","import * as PReact from \"./preact-shim.ts\";\nimport { Utility } from \"@hpcc-js/common\";\nimport { Icon, IconProps } from \"./icon.tsx\";\nimport { TextBox, TextBoxProps } from \"./text.tsx\";\nimport { VertexProps } from \"./vertex.tsx\";\n\nexport interface Vertex3Props extends VertexProps {\n id: string;\n origData?: any;\n categoryID?: string;\n text: string;\n textHeight?: number;\n textPadding?: number;\n textboxStrokeWidth?: number;\n icon?: IconProps;\n annotations?: IconProps[];\n annotationsHeight?: number;\n annotationGutter?: number;\n textFill?: string;\n textboxFill?: string;\n textboxStroke?: string;\n textFontFamily?: string;\n cornerRadius?: number;\n subText?: TextBoxProps;\n onSizeUpdate?: (size: { width: number, height: number }) => void;\n showLabel?: boolean;\n noLabelRadius?: number;\n expansionIcon?: IconProps;\n scale?: number;\n}\n\nexport const Vertex3: PReact.FunctionComponent<Vertex3Props> = ({\n text = \"\",\n textHeight = 10,\n textPadding = 4,\n textFill = \"#287EC4\",\n textboxFill = \"white\",\n textboxStroke = \"#CCCCCC\",\n textboxStrokeWidth = 1,\n textFontFamily = \"Verdana\",\n annotationGutter = 2,\n annotations = [],\n cornerRadius = 3,\n icon = {} as IconProps,\n subText = { text: \"\" } as TextBoxProps,\n showLabel = true,\n noLabelRadius = 5,\n expansionIcon,\n scale = 1\n}) => {\n icon = {\n height: 50,\n imageChar: \"?\",\n imageFontFamily: \"FontAwesome\",\n imageCharFill: \"#555555\",\n fill: \"transparent\",\n strokeWidth: 0,\n ...icon\n };\n subText = {\n text: \"\",\n fill: \"white\",\n textFill: \"#555555\",\n ...subText\n };\n expansionIcon = expansionIcon ? {\n height: 16,\n shape: \"circle\",\n padding: 6,\n imageChar: \"?\",\n imageFontFamily: \"FontAwesome\",\n imageCharFill: \"black\",\n fill: \"whitesmoke\",\n stroke: \"whitesmoke\",\n strokeWidth: 0,\n ...expansionIcon\n } : undefined;\n let fullAnnotationWidth = 0;\n\n const annoOffsetY = 0;\n\n const labelWidth = PReact.useMemo(() => {\n return Utility.textSize(text, textFontFamily, textHeight, false).width;\n }, [text, textFontFamily, textHeight]);\n\n let labelShapeWidth = 0;\n if (text !== \"\") {\n labelShapeWidth = labelWidth + (textPadding * 2) + (textboxStrokeWidth * 2);\n }\n fullAnnotationWidth += labelShapeWidth + annotationGutter;\n const textOffsetX = fullAnnotationWidth - (labelShapeWidth / 2);\n\n const textShapeHeight = textHeight + (textPadding * 2) + (textboxStrokeWidth * 2);\n const annotationArr = [];\n annotations.forEach((anno, idx) => {\n const annoText = anno.imageChar;\n const annoShapeWidth = textShapeHeight;\n fullAnnotationWidth += annoShapeWidth + annotationGutter;\n const annoOffsetX = fullAnnotationWidth - (annoShapeWidth / 2);\n annotationArr.push(\n <g key={idx} className=\"vertex3-anno\" data-click={\"annotation\"} data-click-data={JSON.stringify(anno)} transform={`translate(${annoOffsetX} ${annoOffsetY})`}>\n <Icon\n {...anno}\n shape=\"square\"\n height={textShapeHeight}\n imageChar={annoText}\n imageFontFamily={anno.imageFontFamily}\n cornerRadius={cornerRadius}\n strokeWidth={0}\n />\n </g>\n );\n });\n if (annotations.length > 0) {\n fullAnnotationWidth += annotationGutter * (annotations.length - 1);\n }\n const textElement = <g data-click={\"text\"} transform={`translate(${textOffsetX} ${annoOffsetY})`}>\n {!showLabel || text === \"\" ? <circle r={noLabelRadius} stroke={textboxStroke} fill={textFill} /> : <TextBox\n text={text}\n height={textHeight}\n padding={textPadding}\n strokeWidth={textboxStrokeWidth}\n stroke={textboxStroke}\n fill={textboxFill}\n textFill={textFill}\n fontFamily={textFontFamily}\n cornerRadius={cornerRadius}\n />}\n </g>;\n const iconHeight = icon.height || 20;\n const iconStrokeWidth = icon.strokeWidth || 0;\n const iconOffsetX = 0;\n let iconOffsetY = 0;\n\n const subTextOffsetX = 0;\n let subTextOffsetY = textShapeHeight + (annotationGutter * 2);\n\n if (text !== \"\" || annotationArr.length > 0) {\n iconOffsetY = - (iconHeight / 2) - (iconStrokeWidth) - (textShapeHeight / 2) - (annotationGutter * 2);\n } else if (subText.text !== \"\") {\n subTextOffsetY = (iconHeight / 2) + iconStrokeWidth + (annotationGutter * 2);\n }\n\n const subtextElement = subText.text === \"\" ? null : <g data-click={\"subtext\"}\n transform={`translate(${subTextOffsetX} ${subTextOffsetY})`}\n >\n <TextBox\n fill={subText.fill || \"#FFFFFF\"}\n textFill={subText.textFill || textFill}\n {...subText}\n height={textHeight}\n padding={textPadding}\n strokeWidth={0}\n stroke={textboxStroke}\n fontFamily={textFontFamily}\n cornerRadius={cornerRadius}\n />\n </g>;\n\n return <g transform={`scale(${scale})`}>\n <g data-click={\"icon\"} transform={`translate(${iconOffsetX} ${iconOffsetY})`}>\n <Icon {...icon} />\n {expansionIcon &&\n <g data-click={\"expanded-icon\"} data-click-data={JSON.stringify(expansionIcon)} transform={`translate(${(icon.height + iconStrokeWidth) / 2 - expansionIcon.height / 2} ${-(icon.height + iconStrokeWidth) / 2 + expansionIcon.height / 2})`}>\n <Icon {...expansionIcon} />\n </g>\n }\n </g>\n <g transform={`translate(${-fullAnnotationWidth / 2} ${annoOffsetY})`} >\n {textElement}\n {annotationArr}\n </g>\n {subtextElement}\n </g >;\n};\n\nexport const CentroidVertex3: PReact.FunctionComponent<Vertex3Props> = function ({\n id,\n categoryID = \"\",\n text = \"\",\n textHeight = 12,\n textPadding = 10,\n textFill = \"#287EC4\",\n textboxFill = \"white\",\n textboxStroke = \"#CCCCCC\",\n textboxStrokeWidth = 1,\n textFontFamily = \"Verdana\",\n annotationGutter = 2,\n annotations = [],\n cornerRadius,\n icon = {},\n subText = {},\n expansionIcon,\n scale = 1\n}) {\n icon = {\n height: 91,\n padding: 40,\n imageCharFill: \"#555555\",\n imageFontFamily: \"FontAwesome\",\n fill: \"#FFCC33\",\n stroke: \"#DFDFDF\",\n imageChar: \"?\",\n strokeWidth: 4,\n yOffset: -15,\n ...icon\n };\n subText = {\n text: \"\",\n fill: \"transparent\",\n textFill: \"#555555\",\n ...subText\n };\n const props = {\n id,\n categoryID,\n text,\n textHeight,\n textPadding,\n textFill,\n textboxFill,\n textboxStroke,\n textboxStrokeWidth,\n textFontFamily,\n annotationGutter,\n annotations,\n cornerRadius,\n icon,\n subText,\n expansionIcon,\n scale\n };\n return <Vertex3\n {...props}\n icon={icon}\n subText={subText}\n />;\n};\n","import * as PReact from \"./preact-shim.ts\";\nimport { Utility } from \"@hpcc-js/common\";\nimport { Icon, IconProps } from \"./icon.tsx\";\nimport { TextBox, TextBoxProps } from \"./text.tsx\";\nimport { VertexProps } from \"./vertex.tsx\";\n\nexport interface IVertex4Annotation extends IconProps {\n shapeOffsetX?: number;\n shapeOffsetY?: number;\n}\n\nexport interface IVertex4 extends VertexProps {\n textboxStrokeWidth?: number;\n annotations?: IVertex4Annotation[];\n iconAnnotations?: IVertex4Annotation[];\n annotationGutter?: number;\n cornerRadius?: number;\n subText?: any;\n noLabelRadius?: number;\n iconBorderWidth?: number;\n iconBorderColor?: string;\n iconBackgroundColor?: string;\n shapeOffsetX?: number;\n shapeOffsetY?: number;\n iconOffsetX?: number;\n iconOffsetY?: number;\n iconPadding?: number;\n iconFontSize?: number;\n iconFontColor?: string;\n iconFontFamily?: string;\n iconText?: string;\n shapeRendering?: \"auto\" | \"optimizeSpeed\" | \"crispEdges\" | \"geometricPrecision\";\n}\n\nexport const Vertex4: PReact.FunctionComponent<IVertex4> = ({\n categoryID = \"\",\n text = \"\",\n textHeight = 10,\n textPadding = 4,\n textFill = \"#287EC4\",\n textboxFill = \"white\",\n textboxStroke = \"#CCCCCC\",\n textboxStrokeWidth = 1,\n textFontFamily = \"Verdana\",\n annotationGutter = 2,\n annotations = [],\n iconAnnotations = [],\n cornerRadius = 3,\n icon = {} as IconProps,\n subText = {} as TextBoxProps,\n showLabel = true,\n noLabelRadius = 5,\n\n iconBorderWidth = 1,\n iconBorderColor = \"#333\",\n\n iconBackgroundColor = \"#fff\",\n\n iconFontColor = \"#000\",\n iconFontSize = 20,\n iconFontFamily = \"FontAwesome\",\n\n shapeOffsetX = 0,\n shapeOffsetY = 0,\n iconOffsetX = 0,\n iconOffsetY = 0,\n\n iconPadding = 4,\n iconText = \"?\",\n shapeRendering = \"auto\"\n}) => {\n icon = {\n height: 50,\n imageChar: \"?\",\n imageFontFamily: \"FontAwesome\",\n imageCharFill: \"#555555\",\n fill: \"transparent\",\n strokeWidth: 0,\n ...icon\n };\n subText = {\n text: \"\",\n fill: \"white\",\n textFill: \"#555555\",\n ...subText\n };\n\n const annoOffsetY = 0;\n const labelWidth = PReact.useMemo(() => {\n return Utility.textSize(text, textFontFamily, textHeight, false).width;\n }, [text, textFontFamily, textHeight]);\n\n let labelShapeWidth = 0;\n if (text !== \"\") {\n labelShapeWidth = labelWidth + (textPadding * 2) + (textboxStrokeWidth * 2);\n }\n let fullAnnotationWidth = labelShapeWidth + annotationGutter;\n const textOffsetX = fullAnnotationWidth - (labelShapeWidth / 2);\n\n const textShapeHeight = textHeight + (annotationGutter * 2) + (textboxStrokeWidth * 2);\n const annoWidthArr = annotations.map((anno) => {\n return Utility.textSize(anno.imageChar, anno.imageFontFamily, anno.height, false).width;\n });\n const annotationArr = [];\n let _labelAnnoOffsetX = fullAnnotationWidth;\n annotations.forEach((anno, i) => {\n const annoText = anno.imageChar;\n const annoTextHeight = anno.height ?? textShapeHeight;\n _labelAnnoOffsetX += annoWidthArr[i] + annotationGutter;\n const annoOffsetX = _labelAnnoOffsetX - (annoWidthArr[i] / 2);\n annotationArr.push(\n <g key={i} className=\"vertex3-anno\" data-click={\"annotation\"} data-click-data={JSON.stringify(anno)} transform={`translate(${annoOffsetX} ${annoOffsetY})`}>\n <Icon\n {...anno}\n shape=\"rectangle\"\n width={annoWidthArr[i]}\n height={annoTextHeight}\n imageChar={annoText}\n imageFontFamily={anno.imageFontFamily}\n cornerRadius={cornerRadius}\n strokeWidth={0}\n />\n </g>\n );\n });\n\n if (annotations.length > 0) {\n fullAnnotationWidth += annotationGutter * (annotations.length - 1);\n }\n const iconAnnotationArr = [];\n iconAnnotations.forEach((anno, i) => {\n const x = anno.shapeOffsetX;\n const y = anno.shapeOffsetY;\n iconAnnotationArr.push(\n <g key={i} className=\"vertex3-iconAnno\" data-click={\"icon-annotation\"} data-click-data={JSON.stringify(anno)} transform={`translate(${x} ${y})`}>\n <Icon\n {...anno}\n shape={anno.shape ?? \"square\"}\n imageChar={anno.imageChar}\n imageFontFamily={anno.imageFontFamily}\n cornerRadius={cornerRadius}\n stroke={anno.stroke}\n strokeWidth={anno.strokeWidth}\n />\n </g>\n );\n });\n\n const textElement = <g data-click={\"text\"} transform={`translate(${textOffsetX} ${annoOffsetY})`}>\n {!showLabel || text === \"\" ? <circle r={noLabelRadius} stroke={textboxStroke} fill={textFill} /> : <TextBox\n text={text}\n height={textHeight}\n padding={textPadding}\n strokeWidth={textboxStrokeWidth}\n stroke={textboxStroke}\n fill={textboxFill}\n textFill={textFill}\n fontFamily={textFontFamily}\n cornerRadius={cornerRadius}\n />}\n </g>;\n\n const subTextOffsetX = 0;\n const subTextOffsetY = textShapeHeight + (annotationGutter * 2);\n\n const subtextElement = subText.text === \"\" ? null : <g data-click={\"subtext\"}\n transform={`translate(${subTextOffsetX} ${subTextOffsetY})`}\n >\n <TextBox\n fill={subText.fill || \"#FFFFFF\"}\n textFill={subText.textFill || textFill}\n {...subText}\n height={textHeight}\n padding={textPadding}\n strokeWidth={0}\n stroke={textboxStroke}\n fontFamily={textFontFamily}\n cornerRadius={cornerRadius}\n />\n </g>;\n return <g>\n <g data-click={\"icon\"}\n transform={`translate(${shapeOffsetX} ${shapeOffsetY})`}\n >\n <Icon\n {...icon}\n strokeWidth={iconBorderWidth}\n shape=\"circle\"\n height={iconFontSize}\n fill={iconBackgroundColor}\n stroke={iconBorderColor}\n imageFontFamily={iconFontFamily}\n imageChar={iconText}\n imageCharFill={iconFontColor}\n padding={iconPadding}\n xOffset={iconOffsetX}\n yOffset={iconOffsetY}\n cornerRadius={cornerRadius}\n shapeRendering={shapeRendering}\n />\n {iconAnnotationArr}\n </g>\n <g\n transform={`translate(${-fullAnnotationWidth / 2} ${annoOffsetY})`}\n >\n {textElement}\n {annotationArr}\n </g>\n {subtextElement}\n </g>\n ;\n};\n\nexport const CentroidVertex4: PReact.FunctionComponent<IVertex4> = function ({\n id,\n categoryID = \"\",\n text = \"\",\n textHeight = 12,\n textPadding = 10,\n textFill = \"#287EC4\",\n textboxFill = \"white\",\n textboxStroke = \"#CCCCCC\",\n textboxStrokeWidth = 1,\n textFontFamily = \"Verdana\",\n annotationGutter = 2,\n annotations = [],\n iconAnnotations = [],\n cornerRadius,\n icon = {},\n subText = {},\n showLabel = true,\n noLabelRadius = 5,\n\n iconBorderWidth = 1,\n iconBorderColor = \"#333\",\n\n iconBackgroundColor = \"#fff\",\n\n iconFontColor = \"#000\",\n iconFontSize = 20,\n iconFontFamily = \"FontAwesome\",\n\n shapeOffsetX = 0,\n shapeOffsetY = 0,\n iconOffsetX = 0,\n iconOffsetY = 0,\n\n iconPadding = 4,\n iconText = \"?\",\n shapeRendering = \"auto\"\n}) {\n icon = {\n height: 91,\n padding: 40,\n imageCharFill: \"#555555\",\n imageFontFamily: \"FontAwesome\",\n fill: \"#FFCC33\",\n stroke: \"#DFDFDF\",\n imageChar: \"?\",\n strokeWidth: 4,\n yOffset: -15,\n ...icon\n };\n subText = {\n text: \"\",\n fill: \"transparent\",\n textFill: \"#555555\",\n ...subText\n };\n const props = {\n id,\n categoryID,\n text,\n textHeight,\n textPadding,\n textFill,\n textboxFill,\n textboxStroke,\n textboxStrokeWidth,\n textFontFamily,\n annotationGutter,\n annotations,\n iconAnnotations,\n cornerRadius,\n icon,\n subText,\n showLabel,\n noLabelRadius,\n iconBorderWidth,\n iconBorderColor,\n iconBackgroundColor,\n iconFontColor,\n iconFontSize,\n iconFontFamily,\n shapeOffsetX,\n shapeOffsetY,\n iconOffsetX,\n iconOffsetY,\n iconPadding,\n iconText,\n shapeRendering\n };\n return <Vertex4\n {...props}\n icon={icon}\n subText={subText}\n />;\n};\n","import * as PReact from \"./preact-shim.ts\";\nimport { Utility } from \"@hpcc-js/common\";\nimport { Rectangle } from \"./shape.tsx\";\nimport { Text } from \"./text.tsx\";\n\nexport interface SubgraphProps {\n id: string;\n origData?: any;\n text: string;\n width?: number;\n height?: number;\n fill?: string;\n stroke?: string;\n fontHeight?: number;\n fontFamily?: string;\n}\n\nexport const Subgraph: PReact.FunctionComponent<SubgraphProps> = ({\n text,\n width = 100,\n height = 100,\n fill = \"transparent\",\n stroke = \"black\",\n fontHeight = 12,\n fontFamily\n}) => {\n const tSize = Utility.textSize(text, fontFamily, fontHeight, false);\n return <>\n <Rectangle\n width={width}\n height={height}\n fill={fill}\n stroke={stroke}\n />\n <g\n transform={`translate(${(-width + tSize.width) / 2 + 4} ${(-height + tSize.height) / 2 + 4})`}\n >\n <Text\n height={fontHeight}\n text={text}\n fontFamily={fontFamily}\n />\n </g>\n </>;\n};\n"],"names":["l","u","i","o","r","f","e","c","s","h","v","p","y","d","n","w","_","t","g","k","C","M","O","j","P","a","$","I","T","F","m","x","S","H","L","V","z","b","q","B","jsx","PReact.useMemo","jsxs","Fragment","PReact.useState","PReact.useEffect","PReact.useLayoutEffect","PReact.useCallback","preactRender"],"mappings":"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","x_google_ignoreList":[1,2,3,4]}
1
+ {"version":3,"file":"index.js","sources":["../src/__package__.ts","../node_modules/preact/dist/preact.module.js","../node_modules/preact/jsx-runtime/dist/jsxRuntime.module.js","../node_modules/preact/hooks/dist/hooks.module.js","../node_modules/preact/compat/dist/compat.module.js","../src/image.tsx","../src/ImageChar.tsx","../src/shape.tsx","../src/icon.tsx","../src/text.tsx","../src/edge.tsx","../src/render.ts","../src/span.tsx","../src/vertex.tsx","../src/vertex2.tsx","../src/vertex3.tsx","../src/vertex4.tsx","../src/subgraph.tsx"],"sourcesContent":["export const PKG_NAME = \"@hpcc-js/react\";\nexport const PKG_VERSION = \"3.1.1\";\nexport const BUILD_VERSION = \"3.2.1\";\n","var n,l,u,t,i,r,o,e,f,c,s,a,h,p={},y=[],v=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,w=Array.isArray;function d(n,l){for(var u in l)n[u]=l[u];return n}function g(n){n&&n.parentNode&&n.parentNode.removeChild(n)}function _(l,u,t){var i,r,o,e={};for(o in u)\"key\"==o?i=u[o]:\"ref\"==o?r=u[o]:e[o]=u[o];if(arguments.length>2&&(e.children=arguments.length>3?n.call(arguments,2):t),\"function\"==typeof l&&null!=l.defaultProps)for(o in l.defaultProps)null==e[o]&&(e[o]=l.defaultProps[o]);return m(l,e,i,r,null)}function m(n,t,i,r,o){var e={type:n,props:t,key:i,ref:r,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:null==o?++u:o,__i:-1,__u:0};return null==o&&null!=l.vnode&&l.vnode(e),e}function b(){return{current:null}}function k(n){return n.children}function x(n,l){this.props=n,this.context=l}function S(n,l){if(null==l)return n.__?S(n.__,n.__i+1):null;for(var u;l<n.__k.length;l++)if(null!=(u=n.__k[l])&&null!=u.__e)return u.__e;return\"function\"==typeof n.type?S(n):null}function C(n){var l,u;if(null!=(n=n.__)&&null!=n.__c){for(n.__e=n.__c.base=null,l=0;l<n.__k.length;l++)if(null!=(u=n.__k[l])&&null!=u.__e){n.__e=n.__c.base=u.__e;break}return C(n)}}function M(n){(!n.__d&&(n.__d=!0)&&i.push(n)&&!$.__r++||r!=l.debounceRendering)&&((r=l.debounceRendering)||o)($)}function $(){for(var n,u,t,r,o,f,c,s=1;i.length;)i.length>s&&i.sort(e),n=i.shift(),s=i.length,n.__d&&(t=void 0,o=(r=(u=n).__v).__e,f=[],c=[],u.__P&&((t=d({},r)).__v=r.__v+1,l.vnode&&l.vnode(t),O(u.__P,t,r,u.__n,u.__P.namespaceURI,32&r.__u?[o]:null,f,null==o?S(r):o,!!(32&r.__u),c),t.__v=r.__v,t.__.__k[t.__i]=t,z(f,t,c),t.__e!=o&&C(t)));$.__r=0}function I(n,l,u,t,i,r,o,e,f,c,s){var a,h,v,w,d,g,_=t&&t.__k||y,m=l.length;for(f=P(u,l,_,f,m),a=0;a<m;a++)null!=(v=u.__k[a])&&(h=-1==v.__i?p:_[v.__i]||p,v.__i=a,g=O(n,v,h,i,r,o,e,f,c,s),w=v.__e,v.ref&&h.ref!=v.ref&&(h.ref&&q(h.ref,null,v),s.push(v.ref,v.__c||w,v)),null==d&&null!=w&&(d=w),4&v.__u||h.__k===v.__k?f=A(v,f,n):\"function\"==typeof v.type&&void 0!==g?f=g:w&&(f=w.nextSibling),v.__u&=-7);return u.__e=d,f}function P(n,l,u,t,i){var r,o,e,f,c,s=u.length,a=s,h=0;for(n.__k=new Array(i),r=0;r<i;r++)null!=(o=l[r])&&\"boolean\"!=typeof o&&\"function\"!=typeof o?(f=r+h,(o=n.__k[r]=\"string\"==typeof o||\"number\"==typeof o||\"bigint\"==typeof o||o.constructor==String?m(null,o,null,null,null):w(o)?m(k,{children:o},null,null,null):null==o.constructor&&o.__b>0?m(o.type,o.props,o.key,o.ref?o.ref:null,o.__v):o).__=n,o.__b=n.__b+1,e=null,-1!=(c=o.__i=L(o,u,f,a))&&(a--,(e=u[c])&&(e.__u|=2)),null==e||null==e.__v?(-1==c&&(i>s?h--:i<s&&h++),\"function\"!=typeof o.type&&(o.__u|=4)):c!=f&&(c==f-1?h--:c==f+1?h++:(c>f?h--:h++,o.__u|=4))):n.__k[r]=null;if(a)for(r=0;r<s;r++)null!=(e=u[r])&&0==(2&e.__u)&&(e.__e==t&&(t=S(e)),B(e,e));return t}function A(n,l,u){var t,i;if(\"function\"==typeof n.type){for(t=n.__k,i=0;t&&i<t.length;i++)t[i]&&(t[i].__=n,l=A(t[i],l,u));return l}n.__e!=l&&(l&&n.type&&!u.contains(l)&&(l=S(n)),u.insertBefore(n.__e,l||null),l=n.__e);do{l=l&&l.nextSibling}while(null!=l&&8==l.nodeType);return l}function H(n,l){return l=l||[],null==n||\"boolean\"==typeof n||(w(n)?n.some(function(n){H(n,l)}):l.push(n)),l}function L(n,l,u,t){var i,r,o=n.key,e=n.type,f=l[u];if(null===f&&null==n.key||f&&o==f.key&&e==f.type&&0==(2&f.__u))return u;if(t>(null!=f&&0==(2&f.__u)?1:0))for(i=u-1,r=u+1;i>=0||r<l.length;){if(i>=0){if((f=l[i])&&0==(2&f.__u)&&o==f.key&&e==f.type)return i;i--}if(r<l.length){if((f=l[r])&&0==(2&f.__u)&&o==f.key&&e==f.type)return r;r++}}return-1}function T(n,l,u){\"-\"==l[0]?n.setProperty(l,null==u?\"\":u):n[l]=null==u?\"\":\"number\"!=typeof u||v.test(l)?u:u+\"px\"}function j(n,l,u,t,i){var r;n:if(\"style\"==l)if(\"string\"==typeof u)n.style.cssText=u;else{if(\"string\"==typeof t&&(n.style.cssText=t=\"\"),t)for(l in t)u&&l in u||T(n.style,l,\"\");if(u)for(l in u)t&&u[l]==t[l]||T(n.style,l,u[l])}else if(\"o\"==l[0]&&\"n\"==l[1])r=l!=(l=l.replace(f,\"$1\")),l=l.toLowerCase()in n||\"onFocusOut\"==l||\"onFocusIn\"==l?l.toLowerCase().slice(2):l.slice(2),n.l||(n.l={}),n.l[l+r]=u,u?t?u.u=t.u:(u.u=c,n.addEventListener(l,r?a:s,r)):n.removeEventListener(l,r?a:s,r);else{if(\"http://www.w3.org/2000/svg\"==i)l=l.replace(/xlink(H|:h)/,\"h\").replace(/sName$/,\"s\");else if(\"width\"!=l&&\"height\"!=l&&\"href\"!=l&&\"list\"!=l&&\"form\"!=l&&\"tabIndex\"!=l&&\"download\"!=l&&\"rowSpan\"!=l&&\"colSpan\"!=l&&\"role\"!=l&&\"popover\"!=l&&l in n)try{n[l]=null==u?\"\":u;break n}catch(n){}\"function\"==typeof u||(null==u||!1===u&&\"-\"!=l[4]?n.removeAttribute(l):n.setAttribute(l,\"popover\"==l&&1==u?\"\":u))}}function F(n){return function(u){if(this.l){var t=this.l[u.type+n];if(null==u.t)u.t=c++;else if(u.t<t.u)return;return t(l.event?l.event(u):u)}}}function O(n,u,t,i,r,o,e,f,c,s){var a,h,p,y,v,_,m,b,S,C,M,$,P,A,H,L,T,j=u.type;if(null!=u.constructor)return null;128&t.__u&&(c=!!(32&t.__u),o=[f=u.__e=t.__e]),(a=l.__b)&&a(u);n:if(\"function\"==typeof j)try{if(b=u.props,S=\"prototype\"in j&&j.prototype.render,C=(a=j.contextType)&&i[a.__c],M=a?C?C.props.value:a.__:i,t.__c?m=(h=u.__c=t.__c).__=h.__E:(S?u.__c=h=new j(b,M):(u.__c=h=new x(b,M),h.constructor=j,h.render=D),C&&C.sub(h),h.props=b,h.state||(h.state={}),h.context=M,h.__n=i,p=h.__d=!0,h.__h=[],h._sb=[]),S&&null==h.__s&&(h.__s=h.state),S&&null!=j.getDerivedStateFromProps&&(h.__s==h.state&&(h.__s=d({},h.__s)),d(h.__s,j.getDerivedStateFromProps(b,h.__s))),y=h.props,v=h.state,h.__v=u,p)S&&null==j.getDerivedStateFromProps&&null!=h.componentWillMount&&h.componentWillMount(),S&&null!=h.componentDidMount&&h.__h.push(h.componentDidMount);else{if(S&&null==j.getDerivedStateFromProps&&b!==y&&null!=h.componentWillReceiveProps&&h.componentWillReceiveProps(b,M),!h.__e&&null!=h.shouldComponentUpdate&&!1===h.shouldComponentUpdate(b,h.__s,M)||u.__v==t.__v){for(u.__v!=t.__v&&(h.props=b,h.state=h.__s,h.__d=!1),u.__e=t.__e,u.__k=t.__k,u.__k.some(function(n){n&&(n.__=u)}),$=0;$<h._sb.length;$++)h.__h.push(h._sb[$]);h._sb=[],h.__h.length&&e.push(h);break n}null!=h.componentWillUpdate&&h.componentWillUpdate(b,h.__s,M),S&&null!=h.componentDidUpdate&&h.__h.push(function(){h.componentDidUpdate(y,v,_)})}if(h.context=M,h.props=b,h.__P=n,h.__e=!1,P=l.__r,A=0,S){for(h.state=h.__s,h.__d=!1,P&&P(u),a=h.render(h.props,h.state,h.context),H=0;H<h._sb.length;H++)h.__h.push(h._sb[H]);h._sb=[]}else do{h.__d=!1,P&&P(u),a=h.render(h.props,h.state,h.context),h.state=h.__s}while(h.__d&&++A<25);h.state=h.__s,null!=h.getChildContext&&(i=d(d({},i),h.getChildContext())),S&&!p&&null!=h.getSnapshotBeforeUpdate&&(_=h.getSnapshotBeforeUpdate(y,v)),L=a,null!=a&&a.type===k&&null==a.key&&(L=N(a.props.children)),f=I(n,w(L)?L:[L],u,t,i,r,o,e,f,c,s),h.base=u.__e,u.__u&=-161,h.__h.length&&e.push(h),m&&(h.__E=h.__=null)}catch(n){if(u.__v=null,c||null!=o)if(n.then){for(u.__u|=c?160:128;f&&8==f.nodeType&&f.nextSibling;)f=f.nextSibling;o[o.indexOf(f)]=null,u.__e=f}else for(T=o.length;T--;)g(o[T]);else u.__e=t.__e,u.__k=t.__k;l.__e(n,u,t)}else null==o&&u.__v==t.__v?(u.__k=t.__k,u.__e=t.__e):f=u.__e=V(t.__e,u,t,i,r,o,e,c,s);return(a=l.diffed)&&a(u),128&u.__u?void 0:f}function z(n,u,t){for(var i=0;i<t.length;i++)q(t[i],t[++i],t[++i]);l.__c&&l.__c(u,n),n.some(function(u){try{n=u.__h,u.__h=[],n.some(function(n){n.call(u)})}catch(n){l.__e(n,u.__v)}})}function N(n){return\"object\"!=typeof n||null==n||n.__b&&n.__b>0?n:w(n)?n.map(N):d({},n)}function V(u,t,i,r,o,e,f,c,s){var a,h,y,v,d,_,m,b=i.props,k=t.props,x=t.type;if(\"svg\"==x?o=\"http://www.w3.org/2000/svg\":\"math\"==x?o=\"http://www.w3.org/1998/Math/MathML\":o||(o=\"http://www.w3.org/1999/xhtml\"),null!=e)for(a=0;a<e.length;a++)if((d=e[a])&&\"setAttribute\"in d==!!x&&(x?d.localName==x:3==d.nodeType)){u=d,e[a]=null;break}if(null==u){if(null==x)return document.createTextNode(k);u=document.createElementNS(o,x,k.is&&k),c&&(l.__m&&l.__m(t,e),c=!1),e=null}if(null==x)b===k||c&&u.data==k||(u.data=k);else{if(e=e&&n.call(u.childNodes),b=i.props||p,!c&&null!=e)for(b={},a=0;a<u.attributes.length;a++)b[(d=u.attributes[a]).name]=d.value;for(a in b)if(d=b[a],\"children\"==a);else if(\"dangerouslySetInnerHTML\"==a)y=d;else if(!(a in k)){if(\"value\"==a&&\"defaultValue\"in k||\"checked\"==a&&\"defaultChecked\"in k)continue;j(u,a,null,d,o)}for(a in k)d=k[a],\"children\"==a?v=d:\"dangerouslySetInnerHTML\"==a?h=d:\"value\"==a?_=d:\"checked\"==a?m=d:c&&\"function\"!=typeof d||b[a]===d||j(u,a,d,b[a],o);if(h)c||y&&(h.__html==y.__html||h.__html==u.innerHTML)||(u.innerHTML=h.__html),t.__k=[];else if(y&&(u.innerHTML=\"\"),I(\"template\"==t.type?u.content:u,w(v)?v:[v],t,i,r,\"foreignObject\"==x?\"http://www.w3.org/1999/xhtml\":o,e,f,e?e[0]:i.__k&&S(i,0),c,s),null!=e)for(a=e.length;a--;)g(e[a]);c||(a=\"value\",\"progress\"==x&&null==_?u.removeAttribute(\"value\"):null!=_&&(_!==u[a]||\"progress\"==x&&!_||\"option\"==x&&_!=b[a])&&j(u,a,_,b[a],o),a=\"checked\",null!=m&&m!=u[a]&&j(u,a,m,b[a],o))}return u}function q(n,u,t){try{if(\"function\"==typeof n){var i=\"function\"==typeof n.__u;i&&n.__u(),i&&null==u||(n.__u=n(u))}else n.current=u}catch(n){l.__e(n,t)}}function B(n,u,t){var i,r;if(l.unmount&&l.unmount(n),(i=n.ref)&&(i.current&&i.current!=n.__e||q(i,null,u)),null!=(i=n.__c)){if(i.componentWillUnmount)try{i.componentWillUnmount()}catch(n){l.__e(n,u)}i.base=i.__P=null}if(i=n.__k)for(r=0;r<i.length;r++)i[r]&&B(i[r],u,t||\"function\"!=typeof n.type);t||g(n.__e),n.__c=n.__=n.__e=void 0}function D(n,l,u){return this.constructor(n,u)}function E(u,t,i){var r,o,e,f;t==document&&(t=document.documentElement),l.__&&l.__(u,t),o=(r=\"function\"==typeof i)?null:i&&i.__k||t.__k,e=[],f=[],O(t,u=(!r&&i||t).__k=_(k,null,[u]),o||p,p,t.namespaceURI,!r&&i?[i]:o?null:t.firstChild?n.call(t.childNodes):null,e,!r&&i?i:o?o.__e:t.firstChild,r,f),z(e,u,f)}function G(n,l){E(n,l,G)}function J(l,u,t){var i,r,o,e,f=d({},l.props);for(o in l.type&&l.type.defaultProps&&(e=l.type.defaultProps),u)\"key\"==o?i=u[o]:\"ref\"==o?r=u[o]:f[o]=null==u[o]&&null!=e?e[o]:u[o];return arguments.length>2&&(f.children=arguments.length>3?n.call(arguments,2):t),m(l.type,f,i||l.key,r||l.ref,null)}function K(n){function l(n){var u,t;return this.getChildContext||(u=new Set,(t={})[l.__c]=this,this.getChildContext=function(){return t},this.componentWillUnmount=function(){u=null},this.shouldComponentUpdate=function(n){this.props.value!=n.value&&u.forEach(function(n){n.__e=!0,M(n)})},this.sub=function(n){u.add(n);var l=n.componentWillUnmount;n.componentWillUnmount=function(){u&&u.delete(n),l&&l.call(n)}}),n.children}return l.__c=\"__cC\"+h++,l.__=n,l.Provider=l.__l=(l.Consumer=function(n,l){return n.children(l)}).contextType=l,l}n=y.slice,l={__e:function(n,l,u,t){for(var i,r,o;l=l.__;)if((i=l.__c)&&!i.__)try{if((r=i.constructor)&&null!=r.getDerivedStateFromError&&(i.setState(r.getDerivedStateFromError(n)),o=i.__d),null!=i.componentDidCatch&&(i.componentDidCatch(n,t||{}),o=i.__d),o)return i.__E=i}catch(l){n=l}throw n}},u=0,t=function(n){return null!=n&&null==n.constructor},x.prototype.setState=function(n,l){var u;u=null!=this.__s&&this.__s!=this.state?this.__s:this.__s=d({},this.state),\"function\"==typeof n&&(n=n(d({},u),this.props)),n&&d(u,n),null!=n&&this.__v&&(l&&this._sb.push(l),M(this))},x.prototype.forceUpdate=function(n){this.__v&&(this.__e=!0,n&&this.__h.push(n),M(this))},x.prototype.render=k,i=[],o=\"function\"==typeof Promise?Promise.prototype.then.bind(Promise.resolve()):setTimeout,e=function(n,l){return n.__v.__b-l.__v.__b},$.__r=0,f=/(PointerCapture)$|Capture$/i,c=0,s=F(!1),a=F(!0),h=0;export{x as Component,k as Fragment,J as cloneElement,K as createContext,_ as createElement,b as createRef,_ as h,G as hydrate,t as isValidElement,l as options,E as render,H as toChildArray};\n//# sourceMappingURL=preact.module.js.map\n","import{options as r,Fragment as e}from\"preact\";export{Fragment}from\"preact\";var t=/[\"&<]/;function n(r){if(0===r.length||!1===t.test(r))return r;for(var e=0,n=0,o=\"\",f=\"\";n<r.length;n++){switch(r.charCodeAt(n)){case 34:f=\"&quot;\";break;case 38:f=\"&amp;\";break;case 60:f=\"&lt;\";break;default:continue}n!==e&&(o+=r.slice(e,n)),o+=f,e=n+1}return n!==e&&(o+=r.slice(e,n)),o}var o=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,f=0,i=Array.isArray;function u(e,t,n,o,i,u){t||(t={});var a,c,p=t;if(\"ref\"in p)for(c in p={},t)\"ref\"==c?a=t[c]:p[c]=t[c];var l={type:e,props:p,key:n,ref:a,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:--f,__i:-1,__u:0,__source:i,__self:u};if(\"function\"==typeof e&&(a=e.defaultProps))for(c in a)void 0===p[c]&&(p[c]=a[c]);return r.vnode&&r.vnode(l),l}function a(r){var t=u(e,{tpl:r,exprs:[].slice.call(arguments,1)});return t.key=t.__v,t}var c={},p=/[A-Z]/g;function l(e,t){if(r.attr){var f=r.attr(e,t);if(\"string\"==typeof f)return f}if(\"ref\"===e||\"key\"===e)return\"\";if(\"style\"===e&&\"object\"==typeof t){var i=\"\";for(var u in t){var a=t[u];if(null!=a&&\"\"!==a){var l=\"-\"==u[0]?u:c[u]||(c[u]=u.replace(p,\"-$&\").toLowerCase()),s=\";\";\"number\"!=typeof a||l.startsWith(\"--\")||o.test(l)||(s=\"px;\"),i=i+l+\":\"+a+s}}return e+'=\"'+i+'\"'}return null==t||!1===t||\"function\"==typeof t||\"object\"==typeof t?\"\":!0===t?e:e+'=\"'+n(t)+'\"'}function s(r){if(null==r||\"boolean\"==typeof r||\"function\"==typeof r)return null;if(\"object\"==typeof r){if(void 0===r.constructor)return r;if(i(r)){for(var e=0;e<r.length;e++)r[e]=s(r[e]);return r}}return n(\"\"+r)}export{u as jsx,l as jsxAttr,u as jsxDEV,s as jsxEscape,a as jsxTemplate,u as jsxs};\n//# sourceMappingURL=jsxRuntime.module.js.map\n","import{options as n}from\"preact\";var t,r,u,i,o=0,f=[],c=n,e=c.__b,a=c.__r,v=c.diffed,l=c.__c,m=c.unmount,s=c.__;function p(n,t){c.__h&&c.__h(r,n,o||t),o=0;var u=r.__H||(r.__H={__:[],__h:[]});return n>=u.__.length&&u.__.push({}),u.__[n]}function d(n){return o=1,h(D,n)}function h(n,u,i){var o=p(t++,2);if(o.t=n,!o.__c&&(o.__=[i?i(u):D(void 0,u),function(n){var t=o.__N?o.__N[0]:o.__[0],r=o.t(t,n);t!==r&&(o.__N=[r,o.__[1]],o.__c.setState({}))}],o.__c=r,!r.__f)){var f=function(n,t,r){if(!o.__c.__H)return!0;var u=o.__c.__H.__.filter(function(n){return!!n.__c});if(u.every(function(n){return!n.__N}))return!c||c.call(this,n,t,r);var i=o.__c.props!==n;return u.forEach(function(n){if(n.__N){var t=n.__[0];n.__=n.__N,n.__N=void 0,t!==n.__[0]&&(i=!0)}}),c&&c.call(this,n,t,r)||i};r.__f=!0;var c=r.shouldComponentUpdate,e=r.componentWillUpdate;r.componentWillUpdate=function(n,t,r){if(this.__e){var u=c;c=void 0,f(n,t,r),c=u}e&&e.call(this,n,t,r)},r.shouldComponentUpdate=f}return o.__N||o.__}function y(n,u){var i=p(t++,3);!c.__s&&C(i.__H,u)&&(i.__=n,i.u=u,r.__H.__h.push(i))}function _(n,u){var i=p(t++,4);!c.__s&&C(i.__H,u)&&(i.__=n,i.u=u,r.__h.push(i))}function A(n){return o=5,T(function(){return{current:n}},[])}function F(n,t,r){o=6,_(function(){if(\"function\"==typeof n){var r=n(t());return function(){n(null),r&&\"function\"==typeof r&&r()}}if(n)return n.current=t(),function(){return n.current=null}},null==r?r:r.concat(n))}function T(n,r){var u=p(t++,7);return C(u.__H,r)&&(u.__=n(),u.__H=r,u.__h=n),u.__}function q(n,t){return o=8,T(function(){return n},t)}function x(n){var u=r.context[n.__c],i=p(t++,9);return i.c=n,u?(null==i.__&&(i.__=!0,u.sub(r)),u.props.value):n.__}function P(n,t){c.useDebugValue&&c.useDebugValue(t?t(n):n)}function b(n){var u=p(t++,10),i=d();return u.__=n,r.componentDidCatch||(r.componentDidCatch=function(n,t){u.__&&u.__(n,t),i[1](n)}),[i[0],function(){i[1](void 0)}]}function g(){var n=p(t++,11);if(!n.__){for(var u=r.__v;null!==u&&!u.__m&&null!==u.__;)u=u.__;var i=u.__m||(u.__m=[0,0]);n.__=\"P\"+i[0]+\"-\"+i[1]++}return n.__}function j(){for(var n;n=f.shift();)if(n.__P&&n.__H)try{n.__H.__h.forEach(z),n.__H.__h.forEach(B),n.__H.__h=[]}catch(t){n.__H.__h=[],c.__e(t,n.__v)}}c.__b=function(n){r=null,e&&e(n)},c.__=function(n,t){n&&t.__k&&t.__k.__m&&(n.__m=t.__k.__m),s&&s(n,t)},c.__r=function(n){a&&a(n),t=0;var i=(r=n.__c).__H;i&&(u===r?(i.__h=[],r.__h=[],i.__.forEach(function(n){n.__N&&(n.__=n.__N),n.u=n.__N=void 0})):(i.__h.forEach(z),i.__h.forEach(B),i.__h=[],t=0)),u=r},c.diffed=function(n){v&&v(n);var t=n.__c;t&&t.__H&&(t.__H.__h.length&&(1!==f.push(t)&&i===c.requestAnimationFrame||((i=c.requestAnimationFrame)||w)(j)),t.__H.__.forEach(function(n){n.u&&(n.__H=n.u),n.u=void 0})),u=r=null},c.__c=function(n,t){t.some(function(n){try{n.__h.forEach(z),n.__h=n.__h.filter(function(n){return!n.__||B(n)})}catch(r){t.some(function(n){n.__h&&(n.__h=[])}),t=[],c.__e(r,n.__v)}}),l&&l(n,t)},c.unmount=function(n){m&&m(n);var t,r=n.__c;r&&r.__H&&(r.__H.__.forEach(function(n){try{z(n)}catch(n){t=n}}),r.__H=void 0,t&&c.__e(t,r.__v))};var k=\"function\"==typeof requestAnimationFrame;function w(n){var t,r=function(){clearTimeout(u),k&&cancelAnimationFrame(t),setTimeout(n)},u=setTimeout(r,100);k&&(t=requestAnimationFrame(r))}function z(n){var t=r,u=n.__c;\"function\"==typeof u&&(n.__c=void 0,u()),r=t}function B(n){var t=r;n.__c=n.__(),r=t}function C(n,t){return!n||n.length!==t.length||t.some(function(t,r){return t!==n[r]})}function D(n,t){return\"function\"==typeof t?t(n):t}export{q as useCallback,x as useContext,P as useDebugValue,y as useEffect,b as useErrorBoundary,g as useId,F as useImperativeHandle,_ as useLayoutEffect,T as useMemo,h as useReducer,A as useRef,d as useState};\n//# sourceMappingURL=hooks.module.js.map\n","import{Component as n,createElement as t,options as e,toChildArray as r,Fragment as u,render as o,hydrate as i,createContext as c,createRef as l,cloneElement as f}from\"preact\";export{Component,Fragment,createContext,createElement,createRef}from\"preact\";import{useState as a,useLayoutEffect as s,useEffect as h,useCallback as v,useContext as d,useDebugValue as p,useId as m,useImperativeHandle as y,useMemo as _,useReducer as b,useRef as S}from\"preact/hooks\";export*from\"preact/hooks\";function g(n,t){for(var e in t)n[e]=t[e];return n}function E(n,t){for(var e in n)if(\"__source\"!==e&&!(e in t))return!0;for(var r in t)if(\"__source\"!==r&&n[r]!==t[r])return!0;return!1}function C(n,t){var e=t(),r=a({t:{__:e,u:t}}),u=r[0].t,o=r[1];return s(function(){u.__=e,u.u=t,x(u)&&o({t:u})},[n,e,t]),h(function(){return x(u)&&o({t:u}),n(function(){x(u)&&o({t:u})})},[n]),e}function x(n){var t,e,r=n.u,u=n.__;try{var o=r();return!((t=u)===(e=o)&&(0!==t||1/t==1/e)||t!=t&&e!=e)}catch(n){return!0}}function R(n){n()}function w(n){return n}function k(){return[!1,R]}var I=s;function N(n,t){this.props=n,this.context=t}function M(n,e){function r(n){var t=this.props.ref,r=t==n.ref;return!r&&t&&(t.call?t(null):t.current=null),e?!e(this.props,n)||!r:E(this.props,n)}function u(e){return this.shouldComponentUpdate=r,t(n,e)}return u.displayName=\"Memo(\"+(n.displayName||n.name)+\")\",u.prototype.isReactComponent=!0,u.__f=!0,u}(N.prototype=new n).isPureReactComponent=!0,N.prototype.shouldComponentUpdate=function(n,t){return E(this.props,n)||E(this.state,t)};var T=e.__b;e.__b=function(n){n.type&&n.type.__f&&n.ref&&(n.props.ref=n.ref,n.ref=null),T&&T(n)};var A=\"undefined\"!=typeof Symbol&&Symbol.for&&Symbol.for(\"react.forward_ref\")||3911;function D(n){function t(t){var e=g({},t);return delete e.ref,n(e,t.ref||null)}return t.$$typeof=A,t.render=t,t.prototype.isReactComponent=t.__f=!0,t.displayName=\"ForwardRef(\"+(n.displayName||n.name)+\")\",t}var L=function(n,t){return null==n?null:r(r(n).map(t))},O={map:L,forEach:L,count:function(n){return n?r(n).length:0},only:function(n){var t=r(n);if(1!==t.length)throw\"Children.only\";return t[0]},toArray:r},F=e.__e;e.__e=function(n,t,e,r){if(n.then)for(var u,o=t;o=o.__;)if((u=o.__c)&&u.__c)return null==t.__e&&(t.__e=e.__e,t.__k=e.__k),u.__c(n,t);F(n,t,e,r)};var U=e.unmount;function V(n,t,e){return n&&(n.__c&&n.__c.__H&&(n.__c.__H.__.forEach(function(n){\"function\"==typeof n.__c&&n.__c()}),n.__c.__H=null),null!=(n=g({},n)).__c&&(n.__c.__P===e&&(n.__c.__P=t),n.__c.__e=!0,n.__c=null),n.__k=n.__k&&n.__k.map(function(n){return V(n,t,e)})),n}function W(n,t,e){return n&&e&&(n.__v=null,n.__k=n.__k&&n.__k.map(function(n){return W(n,t,e)}),n.__c&&n.__c.__P===t&&(n.__e&&e.appendChild(n.__e),n.__c.__e=!0,n.__c.__P=e)),n}function P(){this.__u=0,this.o=null,this.__b=null}function j(n){var t=n.__.__c;return t&&t.__a&&t.__a(n)}function z(n){var e,r,u;function o(o){if(e||(e=n()).then(function(n){r=n.default||n},function(n){u=n}),u)throw u;if(!r)throw e;return t(r,o)}return o.displayName=\"Lazy\",o.__f=!0,o}function B(){this.i=null,this.l=null}e.unmount=function(n){var t=n.__c;t&&t.__R&&t.__R(),t&&32&n.__u&&(n.type=null),U&&U(n)},(P.prototype=new n).__c=function(n,t){var e=t.__c,r=this;null==r.o&&(r.o=[]),r.o.push(e);var u=j(r.__v),o=!1,i=function(){o||(o=!0,e.__R=null,u?u(c):c())};e.__R=i;var c=function(){if(!--r.__u){if(r.state.__a){var n=r.state.__a;r.__v.__k[0]=W(n,n.__c.__P,n.__c.__O)}var t;for(r.setState({__a:r.__b=null});t=r.o.pop();)t.forceUpdate()}};r.__u++||32&t.__u||r.setState({__a:r.__b=r.__v.__k[0]}),n.then(i,i)},P.prototype.componentWillUnmount=function(){this.o=[]},P.prototype.render=function(n,e){if(this.__b){if(this.__v.__k){var r=document.createElement(\"div\"),o=this.__v.__k[0].__c;this.__v.__k[0]=V(this.__b,r,o.__O=o.__P)}this.__b=null}var i=e.__a&&t(u,null,n.fallback);return i&&(i.__u&=-33),[t(u,null,e.__a?null:n.children),i]};var H=function(n,t,e){if(++e[1]===e[0]&&n.l.delete(t),n.props.revealOrder&&(\"t\"!==n.props.revealOrder[0]||!n.l.size))for(e=n.i;e;){for(;e.length>3;)e.pop()();if(e[1]<e[0])break;n.i=e=e[2]}};function Z(n){return this.getChildContext=function(){return n.context},n.children}function Y(n){var e=this,r=n.h;e.componentWillUnmount=function(){o(null,e.v),e.v=null,e.h=null},e.h&&e.h!==r&&e.componentWillUnmount(),e.v||(e.h=r,e.v={nodeType:1,parentNode:r,childNodes:[],contains:function(){return!0},appendChild:function(n){this.childNodes.push(n),e.h.appendChild(n)},insertBefore:function(n,t){this.childNodes.push(n),e.h.insertBefore(n,t)},removeChild:function(n){this.childNodes.splice(this.childNodes.indexOf(n)>>>1,1),e.h.removeChild(n)}}),o(t(Z,{context:e.context},n.__v),e.v)}function $(n,e){var r=t(Y,{__v:n,h:e});return r.containerInfo=e,r}(B.prototype=new n).__a=function(n){var t=this,e=j(t.__v),r=t.l.get(n);return r[0]++,function(u){var o=function(){t.props.revealOrder?(r.push(u),H(t,n,r)):u()};e?e(o):o()}},B.prototype.render=function(n){this.i=null,this.l=new Map;var t=r(n.children);n.revealOrder&&\"b\"===n.revealOrder[0]&&t.reverse();for(var e=t.length;e--;)this.l.set(t[e],this.i=[1,0,this.i]);return n.children},B.prototype.componentDidUpdate=B.prototype.componentDidMount=function(){var n=this;this.l.forEach(function(t,e){H(n,e,t)})};var q=\"undefined\"!=typeof Symbol&&Symbol.for&&Symbol.for(\"react.element\")||60103,G=/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|image(!S)|letter|lighting|marker(?!H|W|U)|overline|paint|pointer|shape|stop|strikethrough|stroke|text(?!L)|transform|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/,J=/^on(Ani|Tra|Tou|BeforeInp|Compo)/,K=/[A-Z0-9]/g,Q=\"undefined\"!=typeof document,X=function(n){return(\"undefined\"!=typeof Symbol&&\"symbol\"==typeof Symbol()?/fil|che|rad/:/fil|che|ra/).test(n)};function nn(n,t,e){return null==t.__k&&(t.textContent=\"\"),o(n,t),\"function\"==typeof e&&e(),n?n.__c:null}function tn(n,t,e){return i(n,t),\"function\"==typeof e&&e(),n?n.__c:null}n.prototype.isReactComponent={},[\"componentWillMount\",\"componentWillReceiveProps\",\"componentWillUpdate\"].forEach(function(t){Object.defineProperty(n.prototype,t,{configurable:!0,get:function(){return this[\"UNSAFE_\"+t]},set:function(n){Object.defineProperty(this,t,{configurable:!0,writable:!0,value:n})}})});var en=e.event;function rn(){}function un(){return this.cancelBubble}function on(){return this.defaultPrevented}e.event=function(n){return en&&(n=en(n)),n.persist=rn,n.isPropagationStopped=un,n.isDefaultPrevented=on,n.nativeEvent=n};var cn,ln={enumerable:!1,configurable:!0,get:function(){return this.class}},fn=e.vnode;e.vnode=function(n){\"string\"==typeof n.type&&function(n){var t=n.props,e=n.type,u={},o=-1===e.indexOf(\"-\");for(var i in t){var c=t[i];if(!(\"value\"===i&&\"defaultValue\"in t&&null==c||Q&&\"children\"===i&&\"noscript\"===e||\"class\"===i||\"className\"===i)){var l=i.toLowerCase();\"defaultValue\"===i&&\"value\"in t&&null==t.value?i=\"value\":\"download\"===i&&!0===c?c=\"\":\"translate\"===l&&\"no\"===c?c=!1:\"o\"===l[0]&&\"n\"===l[1]?\"ondoubleclick\"===l?i=\"ondblclick\":\"onchange\"!==l||\"input\"!==e&&\"textarea\"!==e||X(t.type)?\"onfocus\"===l?i=\"onfocusin\":\"onblur\"===l?i=\"onfocusout\":J.test(i)&&(i=l):l=i=\"oninput\":o&&G.test(i)?i=i.replace(K,\"-$&\").toLowerCase():null===c&&(c=void 0),\"oninput\"===l&&u[i=l]&&(i=\"oninputCapture\"),u[i]=c}}\"select\"==e&&u.multiple&&Array.isArray(u.value)&&(u.value=r(t.children).forEach(function(n){n.props.selected=-1!=u.value.indexOf(n.props.value)})),\"select\"==e&&null!=u.defaultValue&&(u.value=r(t.children).forEach(function(n){n.props.selected=u.multiple?-1!=u.defaultValue.indexOf(n.props.value):u.defaultValue==n.props.value})),t.class&&!t.className?(u.class=t.class,Object.defineProperty(u,\"className\",ln)):(t.className&&!t.class||t.class&&t.className)&&(u.class=u.className=t.className),n.props=u}(n),n.$$typeof=q,fn&&fn(n)};var an=e.__r;e.__r=function(n){an&&an(n),cn=n.__c};var sn=e.diffed;e.diffed=function(n){sn&&sn(n);var t=n.props,e=n.__e;null!=e&&\"textarea\"===n.type&&\"value\"in t&&t.value!==e.value&&(e.value=null==t.value?\"\":t.value),cn=null};var hn={ReactCurrentDispatcher:{current:{readContext:function(n){return cn.__n[n.__c].props.value},useCallback:v,useContext:d,useDebugValue:p,useDeferredValue:w,useEffect:h,useId:m,useImperativeHandle:y,useInsertionEffect:I,useLayoutEffect:s,useMemo:_,useReducer:b,useRef:S,useState:a,useSyncExternalStore:C,useTransition:k}}},vn=\"18.3.1\";function dn(n){return t.bind(null,n)}function pn(n){return!!n&&n.$$typeof===q}function mn(n){return pn(n)&&n.type===u}function yn(n){return!!n&&!!n.displayName&&(\"string\"==typeof n.displayName||n.displayName instanceof String)&&n.displayName.startsWith(\"Memo(\")}function _n(n){return pn(n)?f.apply(null,arguments):n}function bn(n){return!!n.__k&&(o(null,n),!0)}function Sn(n){return n&&(n.base||1===n.nodeType&&n)||null}var gn=function(n,t){return n(t)},En=function(n,t){return n(t)},Cn=u,xn=pn,Rn={useState:a,useId:m,useReducer:b,useEffect:h,useLayoutEffect:s,useInsertionEffect:I,useTransition:k,useDeferredValue:w,useSyncExternalStore:C,startTransition:R,useRef:S,useImperativeHandle:y,useMemo:_,useCallback:v,useContext:d,useDebugValue:p,version:\"18.3.1\",Children:O,render:nn,hydrate:tn,unmountComponentAtNode:bn,createPortal:$,createElement:t,createContext:c,createFactory:dn,cloneElement:_n,createRef:l,Fragment:u,isValidElement:pn,isElement:xn,isFragment:mn,isMemo:yn,findDOMNode:Sn,Component:n,PureComponent:N,memo:M,forwardRef:D,flushSync:En,unstable_batchedUpdates:gn,StrictMode:Cn,Suspense:P,SuspenseList:B,lazy:z,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:hn};export{O as Children,N as PureComponent,Cn as StrictMode,P as Suspense,B as SuspenseList,hn as __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,_n as cloneElement,dn as createFactory,$ as createPortal,Rn as default,Sn as findDOMNode,En as flushSync,D as forwardRef,tn as hydrate,xn as isElement,mn as isFragment,yn as isMemo,pn as isValidElement,z as lazy,M as memo,nn as render,R as startTransition,bn as unmountComponentAtNode,gn as unstable_batchedUpdates,w as useDeferredValue,I as useInsertionEffect,C as useSyncExternalStore,k as useTransition,vn as version};\n//# sourceMappingURL=compat.module.js.map\n","import * as PReact from \"./preact-shim.ts\";\n\ninterface ImageProps {\n href: string;\n x?: number;\n y?: number;\n height?: number;\n yOffset?: number;\n}\n\nexport const Image: PReact.FunctionComponent<ImageProps> = ({\n href,\n x,\n y = 0,\n height = 12\n}) => {\n\n return <image\n xlinkHref={href}\n x={x - height / 2}\n y={y - height / 2}\n width={height}\n height={height}\n ></image>;\n};\n","import * as PReact from \"./preact-shim.ts\";\nimport { Utility } from \"@hpcc-js/common\";\n\nexport interface ImageCharProps {\n x?: number;\n y?: number;\n height?: number;\n fill?: string;\n stroke?: string;\n fontFamily?: string;\n char?: string;\n yOffset?: number;\n fontWeight?: number;\n}\n\nexport const ImageChar: PReact.FunctionComponent<ImageCharProps> = ({\n x,\n y = 0,\n height = 12,\n fill,\n stroke,\n fontFamily = \"FontAwesome\",\n char = \"\",\n fontWeight\n}) => {\n\n const renderChar = PReact.useMemo(() => {\n return fontFamily === \"FontAwesome\" ? Utility.faChar(char) : char;\n }, [char, fontFamily]);\n\n return <text\n x={x}\n y={y}\n fill={fill}\n stroke={stroke}\n fontFamily={fontFamily}\n fontSize={`${height}px`}\n fontWeight={fontWeight}\n dominantBaseline=\"middle\"\n style={{ textAnchor: \"middle\", alignmentBaseline: \"middle\" }}\n >{renderChar}</text>;\n};\n","import * as PReact from \"./preact-shim.ts\";\n\ninterface CircleProps {\n radius?: number;\n fill?: string;\n stroke?: string;\n strokeWidth?: number;\n shapeRendering?: \"auto\" | \"optimizeSpeed\" | \"crispEdges\" | \"geometricPrecision\";\n}\n\nexport const Circle: PReact.FunctionComponent<CircleProps> = ({\n radius = 32,\n fill = \"navy\",\n stroke = fill,\n strokeWidth = 1,\n shapeRendering\n}) => <circle\n r={radius}\n fill={fill}\n stroke={stroke}\n strokeWidth={strokeWidth}\n shapeRendering={shapeRendering}\n />;\n\ninterface SquareProps {\n radius?: number;\n cornerRadius?: number;\n fill?: string;\n stroke?: string;\n strokeWidth?: number;\n shapeRendering?: \"auto\" | \"optimizeSpeed\" | \"crispEdges\" | \"geometricPrecision\";\n}\n\nexport const Square: PReact.FunctionComponent<SquareProps> = ({\n radius = 30,\n cornerRadius = 0,\n fill = \"white\",\n stroke,\n strokeWidth = 1,\n shapeRendering\n}) => <rect\n x={-radius}\n y={-radius}\n rx={cornerRadius}\n ry={cornerRadius}\n width={radius * 2}\n height={radius * 2}\n fill={fill}\n stroke={stroke || fill}\n strokeWidth={strokeWidth}\n shapeRendering={shapeRendering}\n />;\n\ninterface RectangleProps {\n width?: number;\n height?: number;\n cornerRadius?: number;\n fill?: string;\n stroke?: string;\n strokeWidth?: number;\n shapeRendering?: \"auto\" | \"optimizeSpeed\" | \"crispEdges\" | \"geometricPrecision\";\n}\n\nexport const Rectangle: PReact.FunctionComponent<RectangleProps> = ({\n width = 30,\n height = 30,\n cornerRadius = 0,\n fill = \"white\",\n stroke = \"black\",\n strokeWidth = 1,\n shapeRendering\n}) => {\n return <rect\n x={-width / 2}\n y={-height / 2}\n rx={cornerRadius}\n ry={cornerRadius}\n width={width}\n height={height}\n fill={fill}\n stroke={stroke || fill}\n strokeWidth={strokeWidth}\n shapeRendering={shapeRendering}\n />;\n};\n\ninterface ShapeProps {\n shape?: \"circle\" | \"square\" | \"rectangle\";\n height?: number;\n width?: number;\n fill?: string;\n stroke?: string;\n strokeWidth?: number;\n shapeRendering?: \"auto\" | \"optimizeSpeed\" | \"crispEdges\" | \"geometricPrecision\";\n cornerRadius?: number;\n}\n\nexport const Shape: PReact.FunctionComponent<ShapeProps> = ({\n shape = \"circle\",\n height = 128,\n width,\n fill,\n stroke,\n strokeWidth = 1,\n shapeRendering,\n cornerRadius\n}) => {\n switch (shape) {\n case \"square\":\n return <Square\n radius={height / 2}\n fill={fill}\n stroke={stroke}\n strokeWidth={strokeWidth}\n shapeRendering={shapeRendering}\n cornerRadius={cornerRadius}\n />;\n case \"rectangle\":\n return <Rectangle\n width={width ?? height}\n height={height}\n fill={fill}\n stroke={stroke}\n strokeWidth={strokeWidth}\n shapeRendering={shapeRendering}\n cornerRadius={cornerRadius}\n />;\n case \"circle\":\n default:\n return <Circle\n radius={height / 2}\n fill={fill}\n stroke={stroke}\n strokeWidth={strokeWidth}\n shapeRendering={shapeRendering}\n />;\n }\n};\n","import * as PReact from \"./preact-shim.ts\";\nimport { Palette } from \"@hpcc-js/common\";\nimport { Image } from \"./image.tsx\";\nimport { ImageChar } from \"./ImageChar.tsx\";\nimport { Shape } from \"./shape.tsx\";\n\nexport interface IconProps {\n shape?: \"circle\" | \"square\" | \"rectangle\";\n width?: number;\n height?: number;\n padding?: number;\n fill?: string;\n stroke?: string;\n strokeWidth?: number;\n imageUrl?: string;\n imageFontFamily?: string;\n imageChar?: string;\n imageCharFill?: string;\n xOffset?: number;\n yOffset?: number;\n cornerRadius?: number;\n shapeRendering?: \"auto\" | \"optimizeSpeed\" | \"crispEdges\" | \"geometricPrecision\";\n}\n\nexport const Icon: PReact.FunctionComponent<IconProps> = ({\n shape = \"circle\",\n width,\n height = 32,\n fill,\n stroke,\n strokeWidth = 0,\n imageUrl = \"\",\n imageFontFamily = \"FontAwesome\",\n imageChar = \"\",\n imageCharFill = Palette.textColor(fill),\n padding = height / 5,\n xOffset = 0,\n yOffset = 0,\n cornerRadius,\n shapeRendering\n}) => {\n return <>\n <Shape\n shape={shape}\n width={width}\n height={height}\n fill={fill}\n stroke={stroke}\n strokeWidth={strokeWidth}\n shapeRendering={shapeRendering}\n cornerRadius={cornerRadius}\n />\n {imageUrl ?\n <Image\n href={imageUrl}\n x={xOffset}\n y={yOffset}\n height={height - padding}\n ></Image> :\n <ImageChar\n x={xOffset}\n y={yOffset}\n height={height - padding}\n fontFamily={imageFontFamily}\n char={imageChar}\n fill={imageCharFill}\n fontWeight={400}\n ></ImageChar>\n }\n </>;\n};\n\nexport interface IconEx extends IconProps {\n id: string;\n}\n\nexport interface IconsProps {\n icons: IconEx[];\n}\n\nexport const Icons: PReact.FunctionComponent<IconsProps> = ({\n icons = []\n}) => {\n const IconComponents = icons.map(cat => {\n return <g\n key={cat.id}\n id={cat.id}\n >\n <Icon\n {...cat}\n />\n </g>;\n });\n return <>{IconComponents}</>;\n};\n","import * as PReact from \"./preact-shim.ts\";\nimport { Utility } from \"@hpcc-js/common\";\nimport { Icon } from \"./icon.tsx\";\nimport { Rectangle } from \"./shape.tsx\";\n\nexport interface TextLineProps {\n text: string;\n height?: number;\n anchor?: string;\n baseline?: string;\n fontFamily?: string;\n fill?: string;\n}\n\nexport const TextLine: PReact.FunctionComponent<TextLineProps> = ({\n text,\n height = 12,\n anchor = \"middle\",\n baseline = \"middle\",\n fontFamily = \"Verdana\",\n fill = \"black\"\n}) => {\n return <text\n font-family={fontFamily}\n font-size={`${height}px`}\n text-anchor={anchor}\n dominant-baseline={baseline}\n fill={fill}\n >{text}</text>;\n};\n\nexport interface TextProps {\n text: string;\n height?: number;\n fontFamily?: string;\n fill?: string;\n onSizeUpdate?: (size: { width: number, height: number }) => void;\n}\n\nexport const Text: PReact.FunctionComponent<TextProps> = ({\n text,\n height = 12,\n fontFamily = \"Verdana\",\n fill = \"black\",\n onSizeUpdate\n}) => {\n const [totalWidth, setTotalWidth] = PReact.useState(0);\n const [totalHeight, setTotalHeight] = PReact.useState(0);\n\n PReact.useEffect(() => {\n if (onSizeUpdate) {\n onSizeUpdate({ width: totalWidth, height: totalHeight });\n }\n }, [totalWidth, totalHeight, onSizeUpdate]);\n\n const parts = PReact.useMemo(() => {\n return text.split(\"\\n\");\n }, [text]);\n\n PReact.useLayoutEffect(() => {\n const size = Utility.textSize(parts, fontFamily, height);\n setTotalWidth(size.width);\n setTotalHeight(size.height);\n }, [fontFamily, height, parts]);\n\n const TextLines = PReact.useMemo(() => {\n const yOffset = -(totalHeight / 2) + (height / 2);\n return parts.map((p, i) => {\n return <g key={`key-${i}`} transform={`translate(0 ${yOffset + i * (height + 2)})`}>\n <TextLine\n text={p}\n height={height}\n fontFamily={fontFamily}\n fill={fill}\n />\n </g>;\n });\n }, [parts, totalHeight, height, fontFamily, fill]);\n\n return <g>{TextLines}</g>;\n};\n\nexport interface TextBoxProps {\n text: string;\n height?: number;\n fontFamily?: string;\n padding?: number;\n fill?: string;\n stroke?: string;\n textFill?: string;\n strokeWidth?: number;\n cornerRadius?: number;\n textOffsetY?: number;\n onSizeUpdate?: (size: { width: number, height: number }) => void;\n}\n\nexport const TextBox: PReact.FunctionComponent<TextBoxProps> = ({\n text,\n height = 12,\n fontFamily = \"Verdana\",\n padding = 4,\n fill = \"whitesmoke\",\n stroke = \"lightgray\",\n textFill = \"black\",\n strokeWidth = 1,\n cornerRadius = 0,\n onSizeUpdate\n}) => {\n const [textWidth, setTextWidthUpdate] = PReact.useState(0);\n const [textHeight, setTextHeightUpdate] = PReact.useState(0);\n\n PReact.useEffect(() => {\n if (onSizeUpdate) {\n onSizeUpdate({ width: textWidth, height: textHeight });\n }\n }, [textWidth, textHeight, onSizeUpdate]);\n\n const onTextSizeUpdate = PReact.useCallback(size => {\n setTextWidthUpdate(size.width);\n setTextHeightUpdate(size.height);\n }, []);\n\n const w = textWidth + padding * 2 + strokeWidth;\n const h = textHeight + padding * 2 + strokeWidth;\n const textOffsetY = Math.floor(height / 10);\n\n return <>\n <Rectangle\n width={w}\n height={h}\n fill={fill}\n stroke={stroke}\n strokeWidth={strokeWidth}\n cornerRadius={cornerRadius}\n />\n <g transform={`translate(0 ${textOffsetY})`}>\n <Text\n text={text}\n fontFamily={fontFamily}\n height={height}\n fill={textFill}\n onSizeUpdate={onTextSizeUpdate}\n />\n </g>\n </>;\n};\n\nexport interface LabelledRect extends TextBoxProps {\n width?: number;\n fontSize?: number;\n}\n\nexport const LabelledRect: PReact.FunctionComponent<LabelledRect> = ({\n text,\n height = 12,\n width = 12,\n fontFamily = \"Verdana\",\n fontSize = 10,\n padding = 3,\n fill = \"whitesmoke\",\n stroke = \"lightgray\",\n textFill = \"black\",\n strokeWidth = 1,\n cornerRadius = 0,\n onSizeUpdate\n}) => {\n\n const [actualWidth, setActualWidthUpdate] = PReact.useState(width);\n const [actualHeight, setActualHeightUpdate] = PReact.useState(height);\n\n PReact.useLayoutEffect(() => {\n const size = Utility.textSize(text, fontFamily, fontSize);\n setActualWidthUpdate(size.width + padding * 2);\n setActualHeightUpdate(size.height + padding * 2);\n }, [text, fontFamily, fontSize, padding]);\n\n PReact.useLayoutEffect(() => {\n if (onSizeUpdate) {\n onSizeUpdate({ width: actualWidth, height: actualHeight });\n }\n }, [actualWidth, actualHeight, padding, onSizeUpdate]);\n\n return <>\n <Rectangle\n width={width}\n height={height}\n fill={fill}\n stroke={stroke}\n strokeWidth={strokeWidth}\n cornerRadius={cornerRadius}\n />\n <g transform={`translate(${-(width / 2) + padding} ${-(height / 2) + padding})`}>\n <TextLine\n text={text}\n fontFamily={fontFamily}\n height={fontSize}\n fill={textFill}\n anchor=\"start\"\n baseline=\"hanging\"\n />\n </g>\n </>;\n};\n\nexport interface IconLabelledRect extends LabelledRect {\n icon: string;\n iconFontFamily?: string;\n iconFontSize?: number;\n}\n\nexport const IconLabelledRect: PReact.FunctionComponent<IconLabelledRect> = ({\n icon,\n iconFontFamily,\n text,\n height = 12,\n width = 12,\n fontFamily = \"Verdana\",\n fontSize = 10,\n padding = 3,\n fill = \"whitesmoke\",\n stroke = \"lightgray\",\n textFill = \"black\",\n strokeWidth = 1,\n cornerRadius = 0\n}) => {\n\n return <>\n <Rectangle\n width={width}\n height={height}\n fill={fill}\n stroke={stroke}\n strokeWidth={strokeWidth}\n cornerRadius={cornerRadius}\n />\n <g transform={`translate(${-(width / 2) + padding} ${-(height / 2) + padding})`}>\n <Icon\n shape=\"square\"\n imageFontFamily={iconFontFamily}\n imageChar={icon}\n height={height}\n fill={fill}\n imageCharFill={textFill}\n />\n </g>\n <g transform={`translate(${-(width / 2) + (padding * 2) + height} ${-(height / 2) + padding})`}>\n <TextLine\n text={text}\n fontFamily={fontFamily}\n height={fontSize}\n fill={textFill}\n anchor=\"start\"\n baseline=\"hanging\"\n />\n </g>\n </>;\n};\n","import * as PReact from \"./preact-shim.ts\";\nimport { VertexProps } from \"./vertex.tsx\";\nimport { Text } from \"./text.tsx\";\n\ntype Point = [number, number];\n\nexport interface EdgeProps<V extends VertexProps = VertexProps> {\n id: string | number;\n origData?: any;\n source: V;\n target: V;\n label?: string;\n labelPos?: Point;\n weight?: number;\n strokeDasharray?: string;\n strokeWidth?: number;\n stroke?: string;\n fontFamily?: string;\n labelFill?: string;\n labelHeight?: number,\n path?: string;\n points?: Array<[number, number]>;\n curveDepth?: number;\n}\n\nexport const Edge: PReact.FunctionComponent<EdgeProps> = ({\n label,\n labelPos,\n labelFill = \"black\",\n labelHeight = 12,\n path,\n stroke,\n strokeWidth,\n strokeDasharray\n}) => {\n return <>\n <path d={path} stroke={stroke} style={{ strokeWidth, strokeDasharray }}></path>\n {\n label && labelPos && labelPos.length === 2 ?\n <g transform={`translate(${labelPos[0]} ${labelPos[1]})`}>\n <Text text={label} fill={labelFill} height={labelHeight} />\n </g> : undefined\n }\n </>;\n};\n","import { h, FunctionComponent, render as preactRender } from \"preact\";\nimport { HTMLWidget, SVGWidget } from \"@hpcc-js/common\";\n\nexport function render<P>(C: FunctionComponent<P>, props: Readonly<P>, parent: Element | Document | ShadowRoot | DocumentFragment, replaceNode?: Element | Text) {\n preactRender(h(C, props), parent, replaceNode);\n}\n\nexport function svgRender<P>(C: FunctionComponent<P>, props: Readonly<P>, parent: Element | Document | ShadowRoot | DocumentFragment, replaceNode?: Element | Text) {\n preactRender(h(\"svg\", null, h(C, props)), parent, replaceNode);\n}\n\nexport class HTMLAdapter<P> extends HTMLWidget {\n\n props(): P;\n props(_: Partial<P>): this;\n props(_?: Partial<P>): P | this {\n if (!arguments.length) return this._props;\n this._props = { ...this._props, ..._ };\n return this;\n }\n\n prop<K extends keyof P>(_: K): P[K];\n prop<K extends keyof P>(_: K, value: P[K]): this;\n prop<K extends keyof P>(_: K, value?: P[K]): this | P[K] {\n if (arguments.length === 1) return this._props[_];\n this._props[_] = value;\n return this;\n }\n\n constructor(protected readonly _component: FunctionComponent<P>) {\n super();\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n render(this._component, this._props, domNode);\n }\n}\nHTMLAdapter.prototype._class += \" react_HTMLAdapter\";\n\nexport interface HTMLAdapter<P> {\n _props: P;\n}\nHTMLAdapter.prototype.publish(\"props\", {}, \"object\", \"Properties\");\n\nexport class SVGAdapter<P> extends SVGWidget {\n\n props(): P;\n props(_: Partial<P>): this;\n props(_?: Partial<P>): P | this {\n if (!arguments.length) return this._props;\n this._props = { ...this._props, ..._ };\n return this;\n }\n\n prop<K extends keyof P>(_: K): P[K];\n prop<K extends keyof P>(_: K, value: P[K]): this;\n prop<K extends keyof P>(_: K, value?: P[K]): this | P[K] {\n if (arguments.length === 1) return this._props[_];\n this._props[_] = value;\n return this;\n }\n\n constructor(protected readonly _component: FunctionComponent<P>) {\n super();\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n render(this._component, this._props, domNode);\n }\n}\nSVGAdapter.prototype._class += \" react_SVGAdapter\";\n\nexport interface SVGAdapter<P> {\n _props: P;\n}\nSVGAdapter.prototype.publish(\"props\", {}, \"object\", \"Properties\");\n","import * as PReact from \"./preact-shim.ts\";\n\nexport interface SpanProps {\n text: string;\n}\n\nexport const Span: PReact.FunctionComponent<SpanProps> = ({\n text\n}) => <span>{text}</span>;\n","import * as PReact from \"./preact-shim.ts\";\nimport { Icon, IconProps } from \"./icon.tsx\";\nimport { TextBox } from \"./text.tsx\";\n\nexport interface AnnotationsProps {\n x: number;\n y: number;\n annotationIDs: string[];\n stepSize?: number;\n}\n\nexport const Annotations: PReact.FunctionComponent<AnnotationsProps> = ({\n x,\n y,\n annotationIDs = [],\n stepSize = -16\n}) => {\n const IconComponents = annotationIDs.map((id, i) => <g\n key={id}\n transform={`translate(${x + i * stepSize} ${y})`}\n >\n <use\n xlinkHref={\"#\" + id}\n />\n </g>\n );\n return <>{IconComponents}</>;\n};\n\nexport interface VertexProps {\n id: string | number;\n origData?: any;\n centroid?: boolean;\n categoryID?: string;\n text: string;\n textHeight?: number;\n textPadding?: number;\n icon?: IconProps;\n annotationsHeight?: number;\n annotationIDs?: string[];\n textFill?: string;\n textboxFill?: string;\n textboxStroke?: string;\n textFontFamily?: string;\n onSizeUpdate?: (size: { width: number, height: number }) => void;\n showLabel?: boolean;\n scale?: number\n}\n\nexport const Vertex: React.FunctionComponent<VertexProps> = ({\n categoryID = \"\",\n text = \"\",\n textHeight = 12,\n textPadding = 4,\n icon = {} as IconProps,\n annotationsHeight = 12,\n annotationIDs = [],\n textFill,\n textboxFill,\n textboxStroke,\n textFontFamily,\n onSizeUpdate,\n showLabel = true,\n scale = 1\n}) => {\n icon = {\n imageChar: \"fa-question\",\n height: 32,\n fill: \"transparent\",\n ...icon\n };\n\n const [textBoxWidth, setTextBoxWidthUpdate] = PReact.useState(0);\n const [textBoxHeight, setTextBoxHeightUpdate] = PReact.useState(0);\n\n PReact.useEffect(() => {\n if (onSizeUpdate) {\n onSizeUpdate({ width: 0, height: 0 });\n }\n }, [textBoxWidth, textBoxHeight, onSizeUpdate]);\n\n let width = textBoxWidth;\n width += 4;\n let offsetY = -(icon.height * 2 / 6 + textHeight + 8) / 2;\n const textboxOffsetY = icon.height / 3 + textBoxHeight / 2 + textPadding;\n let annotationOffsetY = icon.height / 3 + textBoxHeight + textPadding + annotationsHeight / 3;\n if (!showLabel) {\n offsetY += (textHeight + 8) / 2;\n annotationOffsetY -= textBoxHeight + textPadding;\n }\n\n const onTextBoxSizeUpdate = PReact.useCallback(size => {\n setTextBoxWidthUpdate(size.width);\n setTextBoxHeightUpdate(size.height);\n }, []);\n\n const label = showLabel ? <g transform={`translate(0 ${textboxOffsetY})`}>\n <TextBox\n text={text}\n height={textHeight}\n padding={textPadding}\n onSizeUpdate={onTextBoxSizeUpdate}\n textFill={textFill}\n fill={textboxFill}\n stroke={textboxStroke}\n fontFamily={textFontFamily}\n />\n </g> : undefined;\n return categoryID ?\n <g transform={`translate(0 ${offsetY}) scale(${scale})`}>\n <use xlinkHref={\"#\" + categoryID} />\n {label}\n <Annotations x={width / 2} y={annotationOffsetY} annotationIDs={annotationIDs} />\n </g> :\n <g transform={`translate(0 ${offsetY}) scale(${scale})`}>\n <Icon {...icon} />\n {label}\n </g>;\n};\n","import * as PReact from \"./preact-shim.ts\";\nimport { Utility } from \"@hpcc-js/common\";\nimport { Icon, IconProps } from \"./icon.tsx\";\nimport { TextBox } from \"./text.tsx\";\nimport { Annotations, VertexProps } from \"./vertex.tsx\";\n\nexport const Vertex2: PReact.FunctionComponent<VertexProps> = ({\n categoryID = \"\",\n text = \"\",\n textHeight = 12,\n textPadding = 4,\n icon = {} as IconProps,\n textFill = \"black\",\n textboxFill = \"white\",\n textboxStroke = \"black\",\n textFontFamily,\n annotationsHeight = 12,\n annotationIDs = []\n}) => {\n icon = {\n imageChar: \"fa-question\",\n imageCharFill: \"white\",\n height: 32,\n fill: \"black\",\n shape: \"square\",\n ...icon\n };\n const textBoxHeight = textHeight + textPadding * 2;\n const { width } = PReact.useMemo(() => {\n return Utility.textSize(text, textFontFamily, textHeight, false);\n }, [text, textFontFamily, textHeight]);\n\n const stepSize = annotationsHeight;\n const textboxStrokeWidth = 1;\n\n const halfTextboxHeight = textBoxHeight / 2;\n\n const offsetX = 0;\n const offsetY = -(icon.height * 2 / 6 + textHeight + 8) / 2;\n const iconOffsetX = - icon.height / 2;\n const iconOffsetY = 0;\n const textboxOffsetX = Math.ceil((width / 2) + textPadding);\n const textboxOffsetY = halfTextboxHeight - (icon.height / 2);\n const annotationOffsetX = stepSize / 2;\n const annotationOffsetY = halfTextboxHeight;\n return categoryID ?\n <g\n transform={`translate(${offsetX} ${offsetY})`}\n >\n <g\n transform={`translate(${iconOffsetX} ${iconOffsetY})`}\n >\n <use\n xlinkHref={\"#\" + categoryID}\n />\n </g>\n <g\n transform={`translate(${textboxOffsetX} ${textboxOffsetY})`}\n >\n <TextBox\n text={text}\n height={textHeight}\n padding={textPadding}\n strokeWidth={textboxStrokeWidth}\n stroke={textboxStroke}\n fill={textboxFill}\n textFill={textFill}\n fontFamily={textFontFamily}\n />\n </g>\n <Annotations\n x={annotationOffsetX}\n y={annotationOffsetY}\n annotationIDs={annotationIDs}\n stepSize={stepSize}\n />\n </g>\n :\n <>\n <g\n transform={`translate(${iconOffsetX} ${iconOffsetY})scale(1.0002)`}\n >\n <Icon\n {...icon}\n shape=\"square\"\n />\n </g>\n <g\n transform={`translate(${textboxOffsetX} ${textboxOffsetY})scale(1.0002)`}\n >\n <TextBox\n text={text}\n height={textHeight}\n padding={textPadding}\n stroke={textboxStroke}\n fill={textboxFill}\n />\n </g>\n </>;\n};\n","import * as PReact from \"./preact-shim.ts\";\nimport { Utility } from \"@hpcc-js/common\";\nimport { Icon, IconProps } from \"./icon.tsx\";\nimport { TextBox, TextBoxProps } from \"./text.tsx\";\nimport { VertexProps } from \"./vertex.tsx\";\n\nexport interface Vertex3Props extends VertexProps {\n id: string;\n origData?: any;\n categoryID?: string;\n text: string;\n textHeight?: number;\n textPadding?: number;\n textboxStrokeWidth?: number;\n icon?: IconProps;\n annotations?: IconProps[];\n annotationsHeight?: number;\n annotationGutter?: number;\n textFill?: string;\n textboxFill?: string;\n textboxStroke?: string;\n textFontFamily?: string;\n cornerRadius?: number;\n subText?: TextBoxProps;\n onSizeUpdate?: (size: { width: number, height: number }) => void;\n showLabel?: boolean;\n noLabelRadius?: number;\n expansionIcon?: IconProps;\n scale?: number;\n}\n\nexport const Vertex3: PReact.FunctionComponent<Vertex3Props> = ({\n text = \"\",\n textHeight = 10,\n textPadding = 4,\n textFill = \"#287EC4\",\n textboxFill = \"white\",\n textboxStroke = \"#CCCCCC\",\n textboxStrokeWidth = 1,\n textFontFamily = \"Verdana\",\n annotationGutter = 2,\n annotations = [],\n cornerRadius = 3,\n icon = {} as IconProps,\n subText = { text: \"\" } as TextBoxProps,\n showLabel = true,\n noLabelRadius = 5,\n expansionIcon,\n scale = 1\n}) => {\n icon = {\n height: 50,\n imageChar: \"?\",\n imageFontFamily: \"FontAwesome\",\n imageCharFill: \"#555555\",\n fill: \"transparent\",\n strokeWidth: 0,\n ...icon\n };\n subText = {\n text: \"\",\n fill: \"white\",\n textFill: \"#555555\",\n ...subText\n };\n expansionIcon = expansionIcon ? {\n height: 16,\n shape: \"circle\",\n padding: 6,\n imageChar: \"?\",\n imageFontFamily: \"FontAwesome\",\n imageCharFill: \"black\",\n fill: \"whitesmoke\",\n stroke: \"whitesmoke\",\n strokeWidth: 0,\n ...expansionIcon\n } : undefined;\n let fullAnnotationWidth = 0;\n\n const annoOffsetY = 0;\n\n const labelWidth = PReact.useMemo(() => {\n return Utility.textSize(text, textFontFamily, textHeight, false).width;\n }, [text, textFontFamily, textHeight]);\n\n let labelShapeWidth = 0;\n if (text !== \"\") {\n labelShapeWidth = labelWidth + (textPadding * 2) + (textboxStrokeWidth * 2);\n }\n fullAnnotationWidth += labelShapeWidth + annotationGutter;\n const textOffsetX = fullAnnotationWidth - (labelShapeWidth / 2);\n\n const textShapeHeight = textHeight + (textPadding * 2) + (textboxStrokeWidth * 2);\n const annotationArr = [];\n annotations.forEach((anno, idx) => {\n const annoText = anno.imageChar;\n const annoShapeWidth = textShapeHeight;\n fullAnnotationWidth += annoShapeWidth + annotationGutter;\n const annoOffsetX = fullAnnotationWidth - (annoShapeWidth / 2);\n annotationArr.push(\n <g key={idx} className=\"vertex3-anno\" data-click={\"annotation\"} data-click-data={JSON.stringify(anno)} transform={`translate(${annoOffsetX} ${annoOffsetY})`}>\n <Icon\n {...anno}\n shape=\"square\"\n height={textShapeHeight}\n imageChar={annoText}\n imageFontFamily={anno.imageFontFamily}\n cornerRadius={cornerRadius}\n strokeWidth={0}\n />\n </g>\n );\n });\n if (annotations.length > 0) {\n fullAnnotationWidth += annotationGutter * (annotations.length - 1);\n }\n const textElement = <g data-click={\"text\"} transform={`translate(${textOffsetX} ${annoOffsetY})`}>\n {!showLabel || text === \"\" ? <circle r={noLabelRadius} stroke={textboxStroke} fill={textFill} /> : <TextBox\n text={text}\n height={textHeight}\n padding={textPadding}\n strokeWidth={textboxStrokeWidth}\n stroke={textboxStroke}\n fill={textboxFill}\n textFill={textFill}\n fontFamily={textFontFamily}\n cornerRadius={cornerRadius}\n />}\n </g>;\n const iconHeight = icon.height || 20;\n const iconStrokeWidth = icon.strokeWidth || 0;\n const iconOffsetX = 0;\n let iconOffsetY = 0;\n\n const subTextOffsetX = 0;\n let subTextOffsetY = textShapeHeight + (annotationGutter * 2);\n\n if (text !== \"\" || annotationArr.length > 0) {\n iconOffsetY = - (iconHeight / 2) - (iconStrokeWidth) - (textShapeHeight / 2) - (annotationGutter * 2);\n } else if (subText.text !== \"\") {\n subTextOffsetY = (iconHeight / 2) + iconStrokeWidth + (annotationGutter * 2);\n }\n\n const subtextElement = subText.text === \"\" ? null : <g data-click={\"subtext\"}\n transform={`translate(${subTextOffsetX} ${subTextOffsetY})`}\n >\n <TextBox\n fill={subText.fill || \"#FFFFFF\"}\n textFill={subText.textFill || textFill}\n {...subText}\n height={textHeight}\n padding={textPadding}\n strokeWidth={0}\n stroke={textboxStroke}\n fontFamily={textFontFamily}\n cornerRadius={cornerRadius}\n />\n </g>;\n\n return <g transform={`scale(${scale})`}>\n <g data-click={\"icon\"} transform={`translate(${iconOffsetX} ${iconOffsetY})`}>\n <Icon {...icon} />\n {expansionIcon &&\n <g data-click={\"expanded-icon\"} data-click-data={JSON.stringify(expansionIcon)} transform={`translate(${(icon.height + iconStrokeWidth) / 2 - expansionIcon.height / 2} ${-(icon.height + iconStrokeWidth) / 2 + expansionIcon.height / 2})`}>\n <Icon {...expansionIcon} />\n </g>\n }\n </g>\n <g transform={`translate(${-fullAnnotationWidth / 2} ${annoOffsetY})`} >\n {textElement}\n {annotationArr}\n </g>\n {subtextElement}\n </g >;\n};\n\nexport const CentroidVertex3: PReact.FunctionComponent<Vertex3Props> = function ({\n id,\n categoryID = \"\",\n text = \"\",\n textHeight = 12,\n textPadding = 10,\n textFill = \"#287EC4\",\n textboxFill = \"white\",\n textboxStroke = \"#CCCCCC\",\n textboxStrokeWidth = 1,\n textFontFamily = \"Verdana\",\n annotationGutter = 2,\n annotations = [],\n cornerRadius,\n icon = {},\n subText = {},\n expansionIcon,\n scale = 1\n}) {\n icon = {\n height: 91,\n padding: 40,\n imageCharFill: \"#555555\",\n imageFontFamily: \"FontAwesome\",\n fill: \"#FFCC33\",\n stroke: \"#DFDFDF\",\n imageChar: \"?\",\n strokeWidth: 4,\n yOffset: -15,\n ...icon\n };\n subText = {\n text: \"\",\n fill: \"transparent\",\n textFill: \"#555555\",\n ...subText\n };\n const props = {\n id,\n categoryID,\n text,\n textHeight,\n textPadding,\n textFill,\n textboxFill,\n textboxStroke,\n textboxStrokeWidth,\n textFontFamily,\n annotationGutter,\n annotations,\n cornerRadius,\n icon,\n subText,\n expansionIcon,\n scale\n };\n return <Vertex3\n {...props}\n icon={icon}\n subText={subText}\n />;\n};\n","import * as PReact from \"./preact-shim.ts\";\nimport { Utility } from \"@hpcc-js/common\";\nimport { Icon, IconProps } from \"./icon.tsx\";\nimport { TextBox, TextBoxProps } from \"./text.tsx\";\nimport { VertexProps } from \"./vertex.tsx\";\n\nexport interface IVertex4Annotation extends IconProps {\n shapeOffsetX?: number;\n shapeOffsetY?: number;\n}\n\nexport interface IVertex4 extends VertexProps {\n textboxStrokeWidth?: number;\n annotations?: IVertex4Annotation[];\n iconAnnotations?: IVertex4Annotation[];\n annotationGutter?: number;\n cornerRadius?: number;\n subText?: any;\n noLabelRadius?: number;\n iconBorderWidth?: number;\n iconBorderColor?: string;\n iconBackgroundColor?: string;\n shapeOffsetX?: number;\n shapeOffsetY?: number;\n iconOffsetX?: number;\n iconOffsetY?: number;\n iconPadding?: number;\n iconFontSize?: number;\n iconFontColor?: string;\n iconFontFamily?: string;\n iconText?: string;\n shapeRendering?: \"auto\" | \"optimizeSpeed\" | \"crispEdges\" | \"geometricPrecision\";\n}\n\nexport const Vertex4: PReact.FunctionComponent<IVertex4> = ({\n categoryID = \"\",\n text = \"\",\n textHeight = 10,\n textPadding = 4,\n textFill = \"#287EC4\",\n textboxFill = \"white\",\n textboxStroke = \"#CCCCCC\",\n textboxStrokeWidth = 1,\n textFontFamily = \"Verdana\",\n annotationGutter = 2,\n annotations = [],\n iconAnnotations = [],\n cornerRadius = 3,\n icon = {} as IconProps,\n subText = {} as TextBoxProps,\n showLabel = true,\n noLabelRadius = 5,\n\n iconBorderWidth = 1,\n iconBorderColor = \"#333\",\n\n iconBackgroundColor = \"#fff\",\n\n iconFontColor = \"#000\",\n iconFontSize = 20,\n iconFontFamily = \"FontAwesome\",\n\n shapeOffsetX = 0,\n shapeOffsetY = 0,\n iconOffsetX = 0,\n iconOffsetY = 0,\n\n iconPadding = 4,\n iconText = \"?\",\n shapeRendering = \"auto\"\n}) => {\n icon = {\n height: 50,\n imageChar: \"?\",\n imageFontFamily: \"FontAwesome\",\n imageCharFill: \"#555555\",\n fill: \"transparent\",\n strokeWidth: 0,\n ...icon\n };\n subText = {\n text: \"\",\n fill: \"white\",\n textFill: \"#555555\",\n ...subText\n };\n\n const annoOffsetY = 0;\n const labelWidth = PReact.useMemo(() => {\n return Utility.textSize(text, textFontFamily, textHeight, false).width;\n }, [text, textFontFamily, textHeight]);\n\n let labelShapeWidth = 0;\n if (text !== \"\") {\n labelShapeWidth = labelWidth + (textPadding * 2) + (textboxStrokeWidth * 2);\n }\n let fullAnnotationWidth = labelShapeWidth + annotationGutter;\n const textOffsetX = fullAnnotationWidth - (labelShapeWidth / 2);\n\n const textShapeHeight = textHeight + (annotationGutter * 2) + (textboxStrokeWidth * 2);\n const annoWidthArr = annotations.map((anno) => {\n return Utility.textSize(anno.imageChar, anno.imageFontFamily, anno.height, false).width;\n });\n const annotationArr = [];\n let _labelAnnoOffsetX = fullAnnotationWidth;\n annotations.forEach((anno, i) => {\n const annoText = anno.imageChar;\n const annoTextHeight = anno.height ?? textShapeHeight;\n _labelAnnoOffsetX += annoWidthArr[i] + annotationGutter;\n const annoOffsetX = _labelAnnoOffsetX - (annoWidthArr[i] / 2);\n annotationArr.push(\n <g key={i} className=\"vertex3-anno\" data-click={\"annotation\"} data-click-data={JSON.stringify(anno)} transform={`translate(${annoOffsetX} ${annoOffsetY})`}>\n <Icon\n {...anno}\n shape=\"rectangle\"\n width={annoWidthArr[i]}\n height={annoTextHeight}\n imageChar={annoText}\n imageFontFamily={anno.imageFontFamily}\n cornerRadius={cornerRadius}\n strokeWidth={0}\n />\n </g>\n );\n });\n\n if (annotations.length > 0) {\n fullAnnotationWidth += annotationGutter * (annotations.length - 1);\n }\n const iconAnnotationArr = [];\n iconAnnotations.forEach((anno, i) => {\n const x = anno.shapeOffsetX;\n const y = anno.shapeOffsetY;\n iconAnnotationArr.push(\n <g key={i} className=\"vertex3-iconAnno\" data-click={\"icon-annotation\"} data-click-data={JSON.stringify(anno)} transform={`translate(${x} ${y})`}>\n <Icon\n {...anno}\n shape={anno.shape ?? \"square\"}\n imageChar={anno.imageChar}\n imageFontFamily={anno.imageFontFamily}\n cornerRadius={cornerRadius}\n stroke={anno.stroke}\n strokeWidth={anno.strokeWidth}\n />\n </g>\n );\n });\n\n const textElement = <g data-click={\"text\"} transform={`translate(${textOffsetX} ${annoOffsetY})`}>\n {!showLabel || text === \"\" ? <circle r={noLabelRadius} stroke={textboxStroke} fill={textFill} /> : <TextBox\n text={text}\n height={textHeight}\n padding={textPadding}\n strokeWidth={textboxStrokeWidth}\n stroke={textboxStroke}\n fill={textboxFill}\n textFill={textFill}\n fontFamily={textFontFamily}\n cornerRadius={cornerRadius}\n />}\n </g>;\n\n const subTextOffsetX = 0;\n const subTextOffsetY = textShapeHeight + (annotationGutter * 2);\n\n const subtextElement = subText.text === \"\" ? null : <g data-click={\"subtext\"}\n transform={`translate(${subTextOffsetX} ${subTextOffsetY})`}\n >\n <TextBox\n fill={subText.fill || \"#FFFFFF\"}\n textFill={subText.textFill || textFill}\n {...subText}\n height={textHeight}\n padding={textPadding}\n strokeWidth={0}\n stroke={textboxStroke}\n fontFamily={textFontFamily}\n cornerRadius={cornerRadius}\n />\n </g>;\n return <g>\n <g data-click={\"icon\"}\n transform={`translate(${shapeOffsetX} ${shapeOffsetY})`}\n >\n <Icon\n {...icon}\n strokeWidth={iconBorderWidth}\n shape=\"circle\"\n height={iconFontSize}\n fill={iconBackgroundColor}\n stroke={iconBorderColor}\n imageFontFamily={iconFontFamily}\n imageChar={iconText}\n imageCharFill={iconFontColor}\n padding={iconPadding}\n xOffset={iconOffsetX}\n yOffset={iconOffsetY}\n cornerRadius={cornerRadius}\n shapeRendering={shapeRendering}\n />\n {iconAnnotationArr}\n </g>\n <g\n transform={`translate(${-fullAnnotationWidth / 2} ${annoOffsetY})`}\n >\n {textElement}\n {annotationArr}\n </g>\n {subtextElement}\n </g>\n ;\n};\n\nexport const CentroidVertex4: PReact.FunctionComponent<IVertex4> = function ({\n id,\n categoryID = \"\",\n text = \"\",\n textHeight = 12,\n textPadding = 10,\n textFill = \"#287EC4\",\n textboxFill = \"white\",\n textboxStroke = \"#CCCCCC\",\n textboxStrokeWidth = 1,\n textFontFamily = \"Verdana\",\n annotationGutter = 2,\n annotations = [],\n iconAnnotations = [],\n cornerRadius,\n icon = {},\n subText = {},\n showLabel = true,\n noLabelRadius = 5,\n\n iconBorderWidth = 1,\n iconBorderColor = \"#333\",\n\n iconBackgroundColor = \"#fff\",\n\n iconFontColor = \"#000\",\n iconFontSize = 20,\n iconFontFamily = \"FontAwesome\",\n\n shapeOffsetX = 0,\n shapeOffsetY = 0,\n iconOffsetX = 0,\n iconOffsetY = 0,\n\n iconPadding = 4,\n iconText = \"?\",\n shapeRendering = \"auto\"\n}) {\n icon = {\n height: 91,\n padding: 40,\n imageCharFill: \"#555555\",\n imageFontFamily: \"FontAwesome\",\n fill: \"#FFCC33\",\n stroke: \"#DFDFDF\",\n imageChar: \"?\",\n strokeWidth: 4,\n yOffset: -15,\n ...icon\n };\n subText = {\n text: \"\",\n fill: \"transparent\",\n textFill: \"#555555\",\n ...subText\n };\n const props = {\n id,\n categoryID,\n text,\n textHeight,\n textPadding,\n textFill,\n textboxFill,\n textboxStroke,\n textboxStrokeWidth,\n textFontFamily,\n annotationGutter,\n annotations,\n iconAnnotations,\n cornerRadius,\n icon,\n subText,\n showLabel,\n noLabelRadius,\n iconBorderWidth,\n iconBorderColor,\n iconBackgroundColor,\n iconFontColor,\n iconFontSize,\n iconFontFamily,\n shapeOffsetX,\n shapeOffsetY,\n iconOffsetX,\n iconOffsetY,\n iconPadding,\n iconText,\n shapeRendering\n };\n return <Vertex4\n {...props}\n icon={icon}\n subText={subText}\n />;\n};\n","import * as PReact from \"./preact-shim.ts\";\nimport { Utility } from \"@hpcc-js/common\";\nimport { Rectangle } from \"./shape.tsx\";\nimport { Text } from \"./text.tsx\";\n\nexport interface SubgraphProps {\n id: string;\n origData?: any;\n text: string;\n width?: number;\n height?: number;\n fill?: string;\n stroke?: string;\n fontHeight?: number;\n fontFamily?: string;\n}\n\nexport const Subgraph: PReact.FunctionComponent<SubgraphProps> = ({\n text,\n width = 100,\n height = 100,\n fill = \"transparent\",\n stroke = \"black\",\n fontHeight = 12,\n fontFamily\n}) => {\n const tSize = Utility.textSize(text, fontFamily, fontHeight, false);\n return <>\n <Rectangle\n width={width}\n height={height}\n fill={fill}\n stroke={stroke}\n />\n <g\n transform={`translate(${(-width + tSize.width) / 2 + 4} ${(-height + tSize.height) / 2 + 4})`}\n >\n <Text\n height={fontHeight}\n text={text}\n fontFamily={fontFamily}\n />\n </g>\n </>;\n};\n"],"names":["l","u","i","r","o","e","f","c","s","a","p","y","v","w","d","n","g","_","t","m","k","C","z","h","P","q","B","H","T","j","F","S","M","$","A","L","D","N","V","x","E","jsx","PReact.useMemo","jsxs","Fragment","PReact.useState","PReact.useEffect","PReact.useLayoutEffect","PReact.useCallback","preactRender"],"mappings":"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","x_google_ignoreList":[1,2,3,4]}