@decidables/decidables-elements 0.3.3 → 0.3.5
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/CHANGELOG.md +16 -0
- package/lib/decidablesElements.esm.js +297 -294
- package/lib/decidablesElements.esm.js.map +1 -1
- package/lib/decidablesElements.esm.min.js +47 -47
- package/lib/decidablesElements.esm.min.js.map +1 -1
- package/lib/decidablesElements.umd.js +297 -294
- package/lib/decidablesElements.umd.js.map +1 -1
- package/lib/decidablesElements.umd.min.js +47 -47
- package/lib/decidablesElements.umd.min.js.map +1 -1
- package/package.json +5 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decidablesElements.umd.min.js","sources":["../../../node_modules/lit/node_modules/@lit/reactive-element/css-tag.js","../../../node_modules/lit/node_modules/@lit/reactive-element/reactive-element.js","../../../node_modules/lit/node_modules/lit-html/lit-html.js","../../../node_modules/lit/node_modules/lit-element/node_modules/@lit/reactive-element/css-tag.js","../../../node_modules/lit/node_modules/lit-element/node_modules/@lit/reactive-element/reactive-element.js","../../../node_modules/lit/node_modules/lit-element/node_modules/lit-html/lit-html.js","../../../node_modules/lit/node_modules/lit-element/lit-element.js","../../../node_modules/d3-dispatch/src/dispatch.js","../../../node_modules/d3-selection/src/namespaces.js","../../../node_modules/d3-selection/src/namespace.js","../../../node_modules/d3-selection/src/creator.js","../../../node_modules/d3-selection/src/selector.js","../../../node_modules/d3-selection/src/array.js","../../../node_modules/d3-selection/src/selectorAll.js","../../../node_modules/d3-selection/src/matcher.js","../../../node_modules/d3-selection/src/selection/selectChild.js","../../../node_modules/d3-selection/src/selection/selectChildren.js","../../../node_modules/d3-selection/src/selection/sparse.js","../../../node_modules/d3-selection/src/selection/enter.js","../../../node_modules/d3-selection/src/constant.js","../../../node_modules/d3-selection/src/selection/data.js","../../../node_modules/d3-selection/src/selection/sort.js","../../../node_modules/d3-selection/src/selection/attr.js","../../../node_modules/d3-selection/src/window.js","../../../node_modules/d3-selection/src/selection/style.js","../../../node_modules/d3-selection/src/selection/property.js","../../../node_modules/d3-selection/src/selection/classed.js","../../../node_modules/d3-selection/src/selection/text.js","../../../node_modules/d3-selection/src/selection/html.js","../../../node_modules/d3-selection/src/selection/raise.js","../../../node_modules/d3-selection/src/selection/lower.js","../../../node_modules/d3-selection/src/selection/insert.js","../../../node_modules/d3-selection/src/selection/remove.js","../../../node_modules/d3-selection/src/selection/clone.js","../../../node_modules/d3-selection/src/selection/on.js","../../../node_modules/d3-selection/src/selection/dispatch.js","../../../node_modules/d3-selection/src/selection/index.js","../../../node_modules/d3-selection/src/select.js","../../../node_modules/d3-color/src/define.js","../../../node_modules/d3-color/src/color.js","../../../node_modules/d3-selection/src/selection/select.js","../../../node_modules/d3-selection/src/selection/selectAll.js","../../../node_modules/d3-selection/src/selection/filter.js","../../../node_modules/d3-selection/src/selection/exit.js","../../../node_modules/d3-selection/src/selection/join.js","../../../node_modules/d3-selection/src/selection/merge.js","../../../node_modules/d3-selection/src/selection/order.js","../../../node_modules/d3-selection/src/selection/call.js","../../../node_modules/d3-selection/src/selection/nodes.js","../../../node_modules/d3-selection/src/selection/node.js","../../../node_modules/d3-selection/src/selection/size.js","../../../node_modules/d3-selection/src/selection/empty.js","../../../node_modules/d3-selection/src/selection/each.js","../../../node_modules/d3-selection/src/selection/append.js","../../../node_modules/d3-selection/src/selection/datum.js","../../../node_modules/d3-selection/src/selection/iterator.js","../../../node_modules/d3-interpolate/src/constant.js","../../../node_modules/d3-interpolate/src/color.js","../../../node_modules/d3-interpolate/src/rgb.js","../../../node_modules/d3-interpolate/src/number.js","../../../node_modules/d3-interpolate/src/string.js","../../../node_modules/d3-interpolate/src/transform/decompose.js","../../../node_modules/d3-interpolate/src/transform/parse.js","../../../node_modules/d3-interpolate/src/transform/index.js","../../../node_modules/d3-timer/src/timer.js","../../../node_modules/d3-timer/src/timeout.js","../../../node_modules/d3-transition/src/transition/schedule.js","../../../node_modules/d3-transition/src/transition/tween.js","../../../node_modules/d3-transition/src/transition/interpolate.js","../../../node_modules/d3-transition/src/transition/attr.js","../../../node_modules/d3-transition/src/transition/attrTween.js","../../../node_modules/d3-transition/src/transition/delay.js","../../../node_modules/d3-transition/src/transition/duration.js","../../../node_modules/d3-transition/src/transition/ease.js","../../../node_modules/d3-transition/src/transition/on.js","../../../node_modules/d3-transition/src/transition/selection.js","../../../node_modules/d3-transition/src/transition/style.js","../../../node_modules/d3-transition/src/transition/styleTween.js","../../../node_modules/d3-transition/src/transition/textTween.js","../../../node_modules/d3-transition/src/transition/index.js","../../../node_modules/d3-transition/src/transition/select.js","../../../node_modules/d3-transition/src/transition/selectAll.js","../../../node_modules/d3-transition/src/transition/filter.js","../../../node_modules/d3-transition/src/transition/merge.js","../../../node_modules/d3-transition/src/transition/transition.js","../../../node_modules/d3-transition/src/transition/text.js","../../../node_modules/d3-transition/src/transition/remove.js","../../../node_modules/d3-transition/src/transition/easeVarying.js","../../../node_modules/d3-transition/src/transition/end.js","../../../node_modules/d3-transition/src/selection/transition.js","../../../node_modules/d3-ease/src/cubic.js","../../../node_modules/d3-zoom/src/transform.js","../../../node_modules/d3-transition/src/selection/index.js","../../../node_modules/d3-transition/src/selection/interrupt.js","../../../node_modules/d3-transition/src/interrupt.js","../src/decidables-element.js","../src/button.js","../../../node_modules/lit/node_modules/lit-html/directives/if-defined.js","../src/slider.js","../src/spinner.js","../src/switch.js","../src/toggle.js","../src/toggle-option.js","../src/converter-array.js","../src/converter-set.js"],"sourcesContent":["/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=window,e=t.ShadowRoot&&(void 0===t.ShadyCSS||t.ShadyCSS.nativeShadow)&&\"adoptedStyleSheets\"in Document.prototype&&\"replace\"in CSSStyleSheet.prototype,s=Symbol(),n=new WeakMap;class o{constructor(t,e,n){if(this._$cssResult$=!0,n!==s)throw Error(\"CSSResult is not constructable. Use `unsafeCSS` or `css` instead.\");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const s=this.t;if(e&&void 0===t){const e=void 0!==s&&1===s.length;e&&(t=n.get(s)),void 0===t&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),e&&n.set(s,t))}return t}toString(){return this.cssText}}const r=t=>new o(\"string\"==typeof t?t:t+\"\",void 0,s),i=(t,...e)=>{const n=1===t.length?t[0]:e.reduce(((e,s,n)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if(\"number\"==typeof t)return t;throw Error(\"Value passed to 'css' function must be a 'css' function result: \"+t+\". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.\")})(s)+t[n+1]),t[0]);return new o(n,t,s)},S=(s,n)=>{e?s.adoptedStyleSheets=n.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet)):n.forEach((e=>{const n=document.createElement(\"style\"),o=t.litNonce;void 0!==o&&n.setAttribute(\"nonce\",o),n.textContent=e.cssText,s.appendChild(n)}))},c=e?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e=\"\";for(const s of t.cssRules)e+=s.cssText;return r(e)})(t):t;export{o as CSSResult,S as adoptStyles,i as css,c as getCompatibleStyle,e as supportsAdoptingStyleSheets,r as unsafeCSS};\n//# sourceMappingURL=css-tag.js.map\n","import{getCompatibleStyle as t,adoptStyles as i}from\"./css-tag.js\";export{CSSResult,adoptStyles,css,getCompatibleStyle,supportsAdoptingStyleSheets,unsafeCSS}from\"./css-tag.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */var s;const e=window,r=e.trustedTypes,h=r?r.emptyScript:\"\",o=e.reactiveElementPolyfillSupport,n={toAttribute(t,i){switch(i){case Boolean:t=t?h:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,i){let s=t;switch(i){case Boolean:s=null!==t;break;case Number:s=null===t?null:Number(t);break;case Object:case Array:try{s=JSON.parse(t)}catch(t){s=null}}return s}},a=(t,i)=>i!==t&&(i==i||t==t),l={attribute:!0,type:String,converter:n,reflect:!1,hasChanged:a};class d extends HTMLElement{constructor(){super(),this._$Ei=new Map,this.isUpdatePending=!1,this.hasUpdated=!1,this._$El=null,this.u()}static addInitializer(t){var i;this.finalize(),(null!==(i=this.h)&&void 0!==i?i:this.h=[]).push(t)}static get observedAttributes(){this.finalize();const t=[];return this.elementProperties.forEach(((i,s)=>{const e=this._$Ep(s,i);void 0!==e&&(this._$Ev.set(e,s),t.push(e))})),t}static createProperty(t,i=l){if(i.state&&(i.attribute=!1),this.finalize(),this.elementProperties.set(t,i),!i.noAccessor&&!this.prototype.hasOwnProperty(t)){const s=\"symbol\"==typeof t?Symbol():\"__\"+t,e=this.getPropertyDescriptor(t,s,i);void 0!==e&&Object.defineProperty(this.prototype,t,e)}}static getPropertyDescriptor(t,i,s){return{get(){return this[i]},set(e){const r=this[t];this[i]=e,this.requestUpdate(t,r,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)||l}static finalize(){if(this.hasOwnProperty(\"finalized\"))return!1;this.finalized=!0;const t=Object.getPrototypeOf(this);if(t.finalize(),void 0!==t.h&&(this.h=[...t.h]),this.elementProperties=new Map(t.elementProperties),this._$Ev=new Map,this.hasOwnProperty(\"properties\")){const t=this.properties,i=[...Object.getOwnPropertyNames(t),...Object.getOwnPropertySymbols(t)];for(const s of i)this.createProperty(s,t[s])}return this.elementStyles=this.finalizeStyles(this.styles),!0}static finalizeStyles(i){const s=[];if(Array.isArray(i)){const e=new Set(i.flat(1/0).reverse());for(const i of e)s.unshift(t(i))}else void 0!==i&&s.push(t(i));return s}static _$Ep(t,i){const s=i.attribute;return!1===s?void 0:\"string\"==typeof s?s:\"string\"==typeof t?t.toLowerCase():void 0}u(){var t;this._$E_=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$Eg(),this.requestUpdate(),null===(t=this.constructor.h)||void 0===t||t.forEach((t=>t(this)))}addController(t){var i,s;(null!==(i=this._$ES)&&void 0!==i?i:this._$ES=[]).push(t),void 0!==this.renderRoot&&this.isConnected&&(null===(s=t.hostConnected)||void 0===s||s.call(t))}removeController(t){var i;null===(i=this._$ES)||void 0===i||i.splice(this._$ES.indexOf(t)>>>0,1)}_$Eg(){this.constructor.elementProperties.forEach(((t,i)=>{this.hasOwnProperty(i)&&(this._$Ei.set(i,this[i]),delete this[i])}))}createRenderRoot(){var t;const s=null!==(t=this.shadowRoot)&&void 0!==t?t:this.attachShadow(this.constructor.shadowRootOptions);return i(s,this.constructor.elementStyles),s}connectedCallback(){var t;void 0===this.renderRoot&&(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),null===(t=this._$ES)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostConnected)||void 0===i?void 0:i.call(t)}))}enableUpdating(t){}disconnectedCallback(){var t;null===(t=this._$ES)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostDisconnected)||void 0===i?void 0:i.call(t)}))}attributeChangedCallback(t,i,s){this._$AK(t,s)}_$EO(t,i,s=l){var e;const r=this.constructor._$Ep(t,s);if(void 0!==r&&!0===s.reflect){const h=(void 0!==(null===(e=s.converter)||void 0===e?void 0:e.toAttribute)?s.converter:n).toAttribute(i,s.type);this._$El=t,null==h?this.removeAttribute(r):this.setAttribute(r,h),this._$El=null}}_$AK(t,i){var s;const e=this.constructor,r=e._$Ev.get(t);if(void 0!==r&&this._$El!==r){const t=e.getPropertyOptions(r),h=\"function\"==typeof t.converter?{fromAttribute:t.converter}:void 0!==(null===(s=t.converter)||void 0===s?void 0:s.fromAttribute)?t.converter:n;this._$El=r,this[r]=h.fromAttribute(i,t.type),this._$El=null}}requestUpdate(t,i,s){let e=!0;void 0!==t&&(((s=s||this.constructor.getPropertyOptions(t)).hasChanged||a)(this[t],i)?(this._$AL.has(t)||this._$AL.set(t,i),!0===s.reflect&&this._$El!==t&&(void 0===this._$EC&&(this._$EC=new Map),this._$EC.set(t,s))):e=!1),!this.isUpdatePending&&e&&(this._$E_=this._$Ej())}async _$Ej(){this.isUpdatePending=!0;try{await this._$E_}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var t;if(!this.isUpdatePending)return;this.hasUpdated,this._$Ei&&(this._$Ei.forEach(((t,i)=>this[i]=t)),this._$Ei=void 0);let i=!1;const s=this._$AL;try{i=this.shouldUpdate(s),i?(this.willUpdate(s),null===(t=this._$ES)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostUpdate)||void 0===i?void 0:i.call(t)})),this.update(s)):this._$Ek()}catch(t){throw i=!1,this._$Ek(),t}i&&this._$AE(s)}willUpdate(t){}_$AE(t){var i;null===(i=this._$ES)||void 0===i||i.forEach((t=>{var i;return null===(i=t.hostUpdated)||void 0===i?void 0:i.call(t)})),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$Ek(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$E_}shouldUpdate(t){return!0}update(t){void 0!==this._$EC&&(this._$EC.forEach(((t,i)=>this._$EO(i,this[i],t))),this._$EC=void 0),this._$Ek()}updated(t){}firstUpdated(t){}}d.finalized=!0,d.elementProperties=new Map,d.elementStyles=[],d.shadowRootOptions={mode:\"open\"},null==o||o({ReactiveElement:d}),(null!==(s=e.reactiveElementVersions)&&void 0!==s?s:e.reactiveElementVersions=[]).push(\"1.5.0\");export{d as ReactiveElement,n as defaultConverter,a as notEqual};\n//# sourceMappingURL=reactive-element.js.map\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nvar t;const i=window,s=i.trustedTypes,e=s?s.createPolicy(\"lit-html\",{createHTML:t=>t}):void 0,o=`lit$${(Math.random()+\"\").slice(9)}$`,n=\"?\"+o,l=`<${n}>`,h=document,r=(t=\"\")=>h.createComment(t),d=t=>null===t||\"object\"!=typeof t&&\"function\"!=typeof t,u=Array.isArray,c=t=>u(t)||\"function\"==typeof(null==t?void 0:t[Symbol.iterator]),v=/<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g,a=/-->/g,f=/>/g,_=RegExp(\">|[ \\t\\n\\f\\r](?:([^\\\\s\\\"'>=/]+)([ \\t\\n\\f\\r]*=[ \\t\\n\\f\\r]*(?:[^ \\t\\n\\f\\r\\\"'`<>=]|(\\\"|')|))|$)\",\"g\"),m=/'/g,p=/\"/g,$=/^(?:script|style|textarea|title)$/i,g=t=>(i,...s)=>({_$litType$:t,strings:i,values:s}),y=g(1),w=g(2),x=Symbol.for(\"lit-noChange\"),b=Symbol.for(\"lit-nothing\"),T=new WeakMap,A=h.createTreeWalker(h,129,null,!1),E=(t,i)=>{const s=t.length-1,n=[];let h,r=2===i?\"<svg>\":\"\",d=v;for(let i=0;i<s;i++){const s=t[i];let e,u,c=-1,g=0;for(;g<s.length&&(d.lastIndex=g,u=d.exec(s),null!==u);)g=d.lastIndex,d===v?\"!--\"===u[1]?d=a:void 0!==u[1]?d=f:void 0!==u[2]?($.test(u[2])&&(h=RegExp(\"</\"+u[2],\"g\")),d=_):void 0!==u[3]&&(d=_):d===_?\">\"===u[0]?(d=null!=h?h:v,c=-1):void 0===u[1]?c=-2:(c=d.lastIndex-u[2].length,e=u[1],d=void 0===u[3]?_:'\"'===u[3]?p:m):d===p||d===m?d=_:d===a||d===f?d=v:(d=_,h=void 0);const y=d===_&&t[i+1].startsWith(\"/>\")?\" \":\"\";r+=d===v?s+l:c>=0?(n.push(e),s.slice(0,c)+\"$lit$\"+s.slice(c)+o+y):s+o+(-2===c?(n.push(void 0),i):y)}const u=r+(t[s]||\"<?>\")+(2===i?\"</svg>\":\"\");if(!Array.isArray(t)||!t.hasOwnProperty(\"raw\"))throw Error(\"invalid template strings array\");return[void 0!==e?e.createHTML(u):u,n]};class C{constructor({strings:t,_$litType$:i},e){let l;this.parts=[];let h=0,d=0;const u=t.length-1,c=this.parts,[v,a]=E(t,i);if(this.el=C.createElement(v,e),A.currentNode=this.el.content,2===i){const t=this.el.content,i=t.firstChild;i.remove(),t.append(...i.childNodes)}for(;null!==(l=A.nextNode())&&c.length<u;){if(1===l.nodeType){if(l.hasAttributes()){const t=[];for(const i of l.getAttributeNames())if(i.endsWith(\"$lit$\")||i.startsWith(o)){const s=a[d++];if(t.push(i),void 0!==s){const t=l.getAttribute(s.toLowerCase()+\"$lit$\").split(o),i=/([.?@])?(.*)/.exec(s);c.push({type:1,index:h,name:i[2],strings:t,ctor:\".\"===i[1]?M:\"?\"===i[1]?k:\"@\"===i[1]?H:S})}else c.push({type:6,index:h})}for(const i of t)l.removeAttribute(i)}if($.test(l.tagName)){const t=l.textContent.split(o),i=t.length-1;if(i>0){l.textContent=s?s.emptyScript:\"\";for(let s=0;s<i;s++)l.append(t[s],r()),A.nextNode(),c.push({type:2,index:++h});l.append(t[i],r())}}}else if(8===l.nodeType)if(l.data===n)c.push({type:2,index:h});else{let t=-1;for(;-1!==(t=l.data.indexOf(o,t+1));)c.push({type:7,index:h}),t+=o.length-1}h++}}static createElement(t,i){const s=h.createElement(\"template\");return s.innerHTML=t,s}}function P(t,i,s=t,e){var o,n,l,h;if(i===x)return i;let r=void 0!==e?null===(o=s._$Co)||void 0===o?void 0:o[e]:s._$Cl;const u=d(i)?void 0:i._$litDirective$;return(null==r?void 0:r.constructor)!==u&&(null===(n=null==r?void 0:r._$AO)||void 0===n||n.call(r,!1),void 0===u?r=void 0:(r=new u(t),r._$AT(t,s,e)),void 0!==e?(null!==(l=(h=s)._$Co)&&void 0!==l?l:h._$Co=[])[e]=r:s._$Cl=r),void 0!==r&&(i=P(t,r._$AS(t,i.values),r,e)),i}class V{constructor(t,i){this.u=[],this._$AN=void 0,this._$AD=t,this._$AM=i}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}v(t){var i;const{el:{content:s},parts:e}=this._$AD,o=(null!==(i=null==t?void 0:t.creationScope)&&void 0!==i?i:h).importNode(s,!0);A.currentNode=o;let n=A.nextNode(),l=0,r=0,d=e[0];for(;void 0!==d;){if(l===d.index){let i;2===d.type?i=new N(n,n.nextSibling,this,t):1===d.type?i=new d.ctor(n,d.name,d.strings,this,t):6===d.type&&(i=new I(n,this,t)),this.u.push(i),d=e[++r]}l!==(null==d?void 0:d.index)&&(n=A.nextNode(),l++)}return o}p(t){let i=0;for(const s of this.u)void 0!==s&&(void 0!==s.strings?(s._$AI(t,s,i),i+=s.strings.length-2):s._$AI(t[i])),i++}}class N{constructor(t,i,s,e){var o;this.type=2,this._$AH=b,this._$AN=void 0,this._$AA=t,this._$AB=i,this._$AM=s,this.options=e,this._$Cm=null===(o=null==e?void 0:e.isConnected)||void 0===o||o}get _$AU(){var t,i;return null!==(i=null===(t=this._$AM)||void 0===t?void 0:t._$AU)&&void 0!==i?i:this._$Cm}get parentNode(){let t=this._$AA.parentNode;const i=this._$AM;return void 0!==i&&11===t.nodeType&&(t=i.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,i=this){t=P(this,t,i),d(t)?t===b||null==t||\"\"===t?(this._$AH!==b&&this._$AR(),this._$AH=b):t!==this._$AH&&t!==x&&this.g(t):void 0!==t._$litType$?this.$(t):void 0!==t.nodeType?this.T(t):c(t)?this.k(t):this.g(t)}O(t,i=this._$AB){return this._$AA.parentNode.insertBefore(t,i)}T(t){this._$AH!==t&&(this._$AR(),this._$AH=this.O(t))}g(t){this._$AH!==b&&d(this._$AH)?this._$AA.nextSibling.data=t:this.T(h.createTextNode(t)),this._$AH=t}$(t){var i;const{values:s,_$litType$:e}=t,o=\"number\"==typeof e?this._$AC(t):(void 0===e.el&&(e.el=C.createElement(e.h,this.options)),e);if((null===(i=this._$AH)||void 0===i?void 0:i._$AD)===o)this._$AH.p(s);else{const t=new V(o,this),i=t.v(this.options);t.p(s),this.T(i),this._$AH=t}}_$AC(t){let i=T.get(t.strings);return void 0===i&&T.set(t.strings,i=new C(t)),i}k(t){u(this._$AH)||(this._$AH=[],this._$AR());const i=this._$AH;let s,e=0;for(const o of t)e===i.length?i.push(s=new N(this.O(r()),this.O(r()),this,this.options)):s=i[e],s._$AI(o),e++;e<i.length&&(this._$AR(s&&s._$AB.nextSibling,e),i.length=e)}_$AR(t=this._$AA.nextSibling,i){var s;for(null===(s=this._$AP)||void 0===s||s.call(this,!1,!0,i);t&&t!==this._$AB;){const i=t.nextSibling;t.remove(),t=i}}setConnected(t){var i;void 0===this._$AM&&(this._$Cm=t,null===(i=this._$AP)||void 0===i||i.call(this,t))}}class S{constructor(t,i,s,e,o){this.type=1,this._$AH=b,this._$AN=void 0,this.element=t,this.name=i,this._$AM=e,this.options=o,s.length>2||\"\"!==s[0]||\"\"!==s[1]?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=b}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,i=this,s,e){const o=this.strings;let n=!1;if(void 0===o)t=P(this,t,i,0),n=!d(t)||t!==this._$AH&&t!==x,n&&(this._$AH=t);else{const e=t;let l,h;for(t=o[0],l=0;l<o.length-1;l++)h=P(this,e[s+l],i,l),h===x&&(h=this._$AH[l]),n||(n=!d(h)||h!==this._$AH[l]),h===b?t=b:t!==b&&(t+=(null!=h?h:\"\")+o[l+1]),this._$AH[l]=h}n&&!e&&this.j(t)}j(t){t===b?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,null!=t?t:\"\")}}class M extends S{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===b?void 0:t}}const R=s?s.emptyScript:\"\";class k extends S{constructor(){super(...arguments),this.type=4}j(t){t&&t!==b?this.element.setAttribute(this.name,R):this.element.removeAttribute(this.name)}}class H extends S{constructor(t,i,s,e,o){super(t,i,s,e,o),this.type=5}_$AI(t,i=this){var s;if((t=null!==(s=P(this,t,i,0))&&void 0!==s?s:b)===x)return;const e=this._$AH,o=t===b&&e!==b||t.capture!==e.capture||t.once!==e.once||t.passive!==e.passive,n=t!==b&&(e===b||o);o&&this.element.removeEventListener(this.name,this,e),n&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){var i,s;\"function\"==typeof this._$AH?this._$AH.call(null!==(s=null===(i=this.options)||void 0===i?void 0:i.host)&&void 0!==s?s:this.element,t):this._$AH.handleEvent(t)}}class I{constructor(t,i,s){this.element=t,this.type=6,this._$AN=void 0,this._$AM=i,this.options=s}get _$AU(){return this._$AM._$AU}_$AI(t){P(this,t)}}const L={P:\"$lit$\",A:o,M:n,C:1,L:E,R:V,D:c,V:P,I:N,H:S,N:k,U:H,B:M,F:I},z=i.litHtmlPolyfillSupport;null==z||z(C,N),(null!==(t=i.litHtmlVersions)&&void 0!==t?t:i.litHtmlVersions=[]).push(\"2.5.0\");const Z=(t,i,s)=>{var e,o;const n=null!==(e=null==s?void 0:s.renderBefore)&&void 0!==e?e:i;let l=n._$litPart$;if(void 0===l){const t=null!==(o=null==s?void 0:s.renderBefore)&&void 0!==o?o:null;n._$litPart$=l=new N(i.insertBefore(r(),t),t,void 0,null!=s?s:{})}return l._$AI(t),l};export{L as _$LH,y as html,x as noChange,b as nothing,Z as render,w as svg};\n//# sourceMappingURL=lit-html.js.map\n","/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=window.ShadowRoot&&(void 0===window.ShadyCSS||window.ShadyCSS.nativeShadow)&&\"adoptedStyleSheets\"in Document.prototype&&\"replace\"in CSSStyleSheet.prototype,e=Symbol(),n=new Map;class s{constructor(t,n){if(this._$cssResult$=!0,n!==e)throw Error(\"CSSResult is not constructable. Use `unsafeCSS` or `css` instead.\");this.cssText=t}get styleSheet(){let e=n.get(this.cssText);return t&&void 0===e&&(n.set(this.cssText,e=new CSSStyleSheet),e.replaceSync(this.cssText)),e}toString(){return this.cssText}}const o=t=>new s(\"string\"==typeof t?t:t+\"\",e),r=(t,...n)=>{const o=1===t.length?t[0]:n.reduce(((e,n,s)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if(\"number\"==typeof t)return t;throw Error(\"Value passed to 'css' function must be a 'css' function result: \"+t+\". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.\")})(n)+t[s+1]),t[0]);return new s(o,e)},i=(e,n)=>{t?e.adoptedStyleSheets=n.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet)):n.forEach((t=>{const n=document.createElement(\"style\"),s=window.litNonce;void 0!==s&&n.setAttribute(\"nonce\",s),n.textContent=t.cssText,e.appendChild(n)}))},S=t?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e=\"\";for(const n of t.cssRules)e+=n.cssText;return o(e)})(t):t;export{s as CSSResult,i as adoptStyles,r as css,S as getCompatibleStyle,t as supportsAdoptingStyleSheets,o as unsafeCSS};\n//# sourceMappingURL=css-tag.js.map\n","import{getCompatibleStyle as t,adoptStyles as i}from\"./css-tag.js\";export{CSSResult,adoptStyles,css,getCompatibleStyle,supportsAdoptingStyleSheets,unsafeCSS}from\"./css-tag.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */var s;const e=window.trustedTypes,r=e?e.emptyScript:\"\",h=window.reactiveElementPolyfillSupport,o={toAttribute(t,i){switch(i){case Boolean:t=t?r:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,i){let s=t;switch(i){case Boolean:s=null!==t;break;case Number:s=null===t?null:Number(t);break;case Object:case Array:try{s=JSON.parse(t)}catch(t){s=null}}return s}},n=(t,i)=>i!==t&&(i==i||t==t),l={attribute:!0,type:String,converter:o,reflect:!1,hasChanged:n};class a extends HTMLElement{constructor(){super(),this._$Et=new Map,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Ei=null,this.o()}static addInitializer(t){var i;null!==(i=this.l)&&void 0!==i||(this.l=[]),this.l.push(t)}static get observedAttributes(){this.finalize();const t=[];return this.elementProperties.forEach(((i,s)=>{const e=this._$Eh(s,i);void 0!==e&&(this._$Eu.set(e,s),t.push(e))})),t}static createProperty(t,i=l){if(i.state&&(i.attribute=!1),this.finalize(),this.elementProperties.set(t,i),!i.noAccessor&&!this.prototype.hasOwnProperty(t)){const s=\"symbol\"==typeof t?Symbol():\"__\"+t,e=this.getPropertyDescriptor(t,s,i);void 0!==e&&Object.defineProperty(this.prototype,t,e)}}static getPropertyDescriptor(t,i,s){return{get(){return this[i]},set(e){const r=this[t];this[i]=e,this.requestUpdate(t,r,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)||l}static finalize(){if(this.hasOwnProperty(\"finalized\"))return!1;this.finalized=!0;const t=Object.getPrototypeOf(this);if(t.finalize(),this.elementProperties=new Map(t.elementProperties),this._$Eu=new Map,this.hasOwnProperty(\"properties\")){const t=this.properties,i=[...Object.getOwnPropertyNames(t),...Object.getOwnPropertySymbols(t)];for(const s of i)this.createProperty(s,t[s])}return this.elementStyles=this.finalizeStyles(this.styles),!0}static finalizeStyles(i){const s=[];if(Array.isArray(i)){const e=new Set(i.flat(1/0).reverse());for(const i of e)s.unshift(t(i))}else void 0!==i&&s.push(t(i));return s}static _$Eh(t,i){const s=i.attribute;return!1===s?void 0:\"string\"==typeof s?s:\"string\"==typeof t?t.toLowerCase():void 0}o(){var t;this._$Ep=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$Em(),this.requestUpdate(),null===(t=this.constructor.l)||void 0===t||t.forEach((t=>t(this)))}addController(t){var i,s;(null!==(i=this._$Eg)&&void 0!==i?i:this._$Eg=[]).push(t),void 0!==this.renderRoot&&this.isConnected&&(null===(s=t.hostConnected)||void 0===s||s.call(t))}removeController(t){var i;null===(i=this._$Eg)||void 0===i||i.splice(this._$Eg.indexOf(t)>>>0,1)}_$Em(){this.constructor.elementProperties.forEach(((t,i)=>{this.hasOwnProperty(i)&&(this._$Et.set(i,this[i]),delete this[i])}))}createRenderRoot(){var t;const s=null!==(t=this.shadowRoot)&&void 0!==t?t:this.attachShadow(this.constructor.shadowRootOptions);return i(s,this.constructor.elementStyles),s}connectedCallback(){var t;void 0===this.renderRoot&&(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),null===(t=this._$Eg)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostConnected)||void 0===i?void 0:i.call(t)}))}enableUpdating(t){}disconnectedCallback(){var t;null===(t=this._$Eg)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostDisconnected)||void 0===i?void 0:i.call(t)}))}attributeChangedCallback(t,i,s){this._$AK(t,s)}_$ES(t,i,s=l){var e,r;const h=this.constructor._$Eh(t,s);if(void 0!==h&&!0===s.reflect){const n=(null!==(r=null===(e=s.converter)||void 0===e?void 0:e.toAttribute)&&void 0!==r?r:o.toAttribute)(i,s.type);this._$Ei=t,null==n?this.removeAttribute(h):this.setAttribute(h,n),this._$Ei=null}}_$AK(t,i){var s,e,r;const h=this.constructor,n=h._$Eu.get(t);if(void 0!==n&&this._$Ei!==n){const t=h.getPropertyOptions(n),l=t.converter,a=null!==(r=null!==(e=null===(s=l)||void 0===s?void 0:s.fromAttribute)&&void 0!==e?e:\"function\"==typeof l?l:null)&&void 0!==r?r:o.fromAttribute;this._$Ei=n,this[n]=a(i,t.type),this._$Ei=null}}requestUpdate(t,i,s){let e=!0;void 0!==t&&(((s=s||this.constructor.getPropertyOptions(t)).hasChanged||n)(this[t],i)?(this._$AL.has(t)||this._$AL.set(t,i),!0===s.reflect&&this._$Ei!==t&&(void 0===this._$EC&&(this._$EC=new Map),this._$EC.set(t,s))):e=!1),!this.isUpdatePending&&e&&(this._$Ep=this._$E_())}async _$E_(){this.isUpdatePending=!0;try{await this._$Ep}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var t;if(!this.isUpdatePending)return;this.hasUpdated,this._$Et&&(this._$Et.forEach(((t,i)=>this[i]=t)),this._$Et=void 0);let i=!1;const s=this._$AL;try{i=this.shouldUpdate(s),i?(this.willUpdate(s),null===(t=this._$Eg)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostUpdate)||void 0===i?void 0:i.call(t)})),this.update(s)):this._$EU()}catch(t){throw i=!1,this._$EU(),t}i&&this._$AE(s)}willUpdate(t){}_$AE(t){var i;null===(i=this._$Eg)||void 0===i||i.forEach((t=>{var i;return null===(i=t.hostUpdated)||void 0===i?void 0:i.call(t)})),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EU(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$Ep}shouldUpdate(t){return!0}update(t){void 0!==this._$EC&&(this._$EC.forEach(((t,i)=>this._$ES(i,this[i],t))),this._$EC=void 0),this._$EU()}updated(t){}firstUpdated(t){}}a.finalized=!0,a.elementProperties=new Map,a.elementStyles=[],a.shadowRootOptions={mode:\"open\"},null==h||h({ReactiveElement:a}),(null!==(s=globalThis.reactiveElementVersions)&&void 0!==s?s:globalThis.reactiveElementVersions=[]).push(\"1.3.1\");export{a as ReactiveElement,o as defaultConverter,n as notEqual};\n//# sourceMappingURL=reactive-element.js.map\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nvar t;const i=globalThis.trustedTypes,s=i?i.createPolicy(\"lit-html\",{createHTML:t=>t}):void 0,e=`lit$${(Math.random()+\"\").slice(9)}$`,o=\"?\"+e,n=`<${o}>`,l=document,h=(t=\"\")=>l.createComment(t),r=t=>null===t||\"object\"!=typeof t&&\"function\"!=typeof t,d=Array.isArray,u=t=>{var i;return d(t)||\"function\"==typeof(null===(i=t)||void 0===i?void 0:i[Symbol.iterator])},c=/<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g,v=/-->/g,a=/>/g,f=/>|[ \t\\n\f\\r](?:([^\\s\"'>=/]+)([ \t\\n\f\\r]*=[ \t\\n\f\\r]*(?:[^ \t\\n\f\\r\"'`<>=]|(\"|')|))|$)/g,_=/'/g,m=/\"/g,g=/^(?:script|style|textarea|title)$/i,p=t=>(i,...s)=>({_$litType$:t,strings:i,values:s}),$=p(1),y=p(2),b=Symbol.for(\"lit-noChange\"),w=Symbol.for(\"lit-nothing\"),T=new WeakMap,x=(t,i,s)=>{var e,o;const n=null!==(e=null==s?void 0:s.renderBefore)&&void 0!==e?e:i;let l=n._$litPart$;if(void 0===l){const t=null!==(o=null==s?void 0:s.renderBefore)&&void 0!==o?o:null;n._$litPart$=l=new N(i.insertBefore(h(),t),t,void 0,null!=s?s:{})}return l._$AI(t),l},A=l.createTreeWalker(l,129,null,!1),C=(t,i)=>{const o=t.length-1,l=[];let h,r=2===i?\"<svg>\":\"\",d=c;for(let i=0;i<o;i++){const s=t[i];let o,u,p=-1,$=0;for(;$<s.length&&(d.lastIndex=$,u=d.exec(s),null!==u);)$=d.lastIndex,d===c?\"!--\"===u[1]?d=v:void 0!==u[1]?d=a:void 0!==u[2]?(g.test(u[2])&&(h=RegExp(\"</\"+u[2],\"g\")),d=f):void 0!==u[3]&&(d=f):d===f?\">\"===u[0]?(d=null!=h?h:c,p=-1):void 0===u[1]?p=-2:(p=d.lastIndex-u[2].length,o=u[1],d=void 0===u[3]?f:'\"'===u[3]?m:_):d===m||d===_?d=f:d===v||d===a?d=c:(d=f,h=void 0);const y=d===f&&t[i+1].startsWith(\"/>\")?\" \":\"\";r+=d===c?s+n:p>=0?(l.push(o),s.slice(0,p)+\"$lit$\"+s.slice(p)+e+y):s+e+(-2===p?(l.push(void 0),i):y)}const u=r+(t[o]||\"<?>\")+(2===i?\"</svg>\":\"\");if(!Array.isArray(t)||!t.hasOwnProperty(\"raw\"))throw Error(\"invalid template strings array\");return[void 0!==s?s.createHTML(u):u,l]};class E{constructor({strings:t,_$litType$:s},n){let l;this.parts=[];let r=0,d=0;const u=t.length-1,c=this.parts,[v,a]=C(t,s);if(this.el=E.createElement(v,n),A.currentNode=this.el.content,2===s){const t=this.el.content,i=t.firstChild;i.remove(),t.append(...i.childNodes)}for(;null!==(l=A.nextNode())&&c.length<u;){if(1===l.nodeType){if(l.hasAttributes()){const t=[];for(const i of l.getAttributeNames())if(i.endsWith(\"$lit$\")||i.startsWith(e)){const s=a[d++];if(t.push(i),void 0!==s){const t=l.getAttribute(s.toLowerCase()+\"$lit$\").split(e),i=/([.?@])?(.*)/.exec(s);c.push({type:1,index:r,name:i[2],strings:t,ctor:\".\"===i[1]?M:\"?\"===i[1]?H:\"@\"===i[1]?I:S})}else c.push({type:6,index:r})}for(const i of t)l.removeAttribute(i)}if(g.test(l.tagName)){const t=l.textContent.split(e),s=t.length-1;if(s>0){l.textContent=i?i.emptyScript:\"\";for(let i=0;i<s;i++)l.append(t[i],h()),A.nextNode(),c.push({type:2,index:++r});l.append(t[s],h())}}}else if(8===l.nodeType)if(l.data===o)c.push({type:2,index:r});else{let t=-1;for(;-1!==(t=l.data.indexOf(e,t+1));)c.push({type:7,index:r}),t+=e.length-1}r++}}static createElement(t,i){const s=l.createElement(\"template\");return s.innerHTML=t,s}}function P(t,i,s=t,e){var o,n,l,h;if(i===b)return i;let d=void 0!==e?null===(o=s._$Cl)||void 0===o?void 0:o[e]:s._$Cu;const u=r(i)?void 0:i._$litDirective$;return(null==d?void 0:d.constructor)!==u&&(null===(n=null==d?void 0:d._$AO)||void 0===n||n.call(d,!1),void 0===u?d=void 0:(d=new u(t),d._$AT(t,s,e)),void 0!==e?(null!==(l=(h=s)._$Cl)&&void 0!==l?l:h._$Cl=[])[e]=d:s._$Cu=d),void 0!==d&&(i=P(t,d._$AS(t,i.values),d,e)),i}class V{constructor(t,i){this.v=[],this._$AN=void 0,this._$AD=t,this._$AM=i}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}p(t){var i;const{el:{content:s},parts:e}=this._$AD,o=(null!==(i=null==t?void 0:t.creationScope)&&void 0!==i?i:l).importNode(s,!0);A.currentNode=o;let n=A.nextNode(),h=0,r=0,d=e[0];for(;void 0!==d;){if(h===d.index){let i;2===d.type?i=new N(n,n.nextSibling,this,t):1===d.type?i=new d.ctor(n,d.name,d.strings,this,t):6===d.type&&(i=new L(n,this,t)),this.v.push(i),d=e[++r]}h!==(null==d?void 0:d.index)&&(n=A.nextNode(),h++)}return o}m(t){let i=0;for(const s of this.v)void 0!==s&&(void 0!==s.strings?(s._$AI(t,s,i),i+=s.strings.length-2):s._$AI(t[i])),i++}}class N{constructor(t,i,s,e){var o;this.type=2,this._$AH=w,this._$AN=void 0,this._$AA=t,this._$AB=i,this._$AM=s,this.options=e,this._$Cg=null===(o=null==e?void 0:e.isConnected)||void 0===o||o}get _$AU(){var t,i;return null!==(i=null===(t=this._$AM)||void 0===t?void 0:t._$AU)&&void 0!==i?i:this._$Cg}get parentNode(){let t=this._$AA.parentNode;const i=this._$AM;return void 0!==i&&11===t.nodeType&&(t=i.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,i=this){t=P(this,t,i),r(t)?t===w||null==t||\"\"===t?(this._$AH!==w&&this._$AR(),this._$AH=w):t!==this._$AH&&t!==b&&this.$(t):void 0!==t._$litType$?this.T(t):void 0!==t.nodeType?this.k(t):u(t)?this.S(t):this.$(t)}A(t,i=this._$AB){return this._$AA.parentNode.insertBefore(t,i)}k(t){this._$AH!==t&&(this._$AR(),this._$AH=this.A(t))}$(t){this._$AH!==w&&r(this._$AH)?this._$AA.nextSibling.data=t:this.k(l.createTextNode(t)),this._$AH=t}T(t){var i;const{values:s,_$litType$:e}=t,o=\"number\"==typeof e?this._$AC(t):(void 0===e.el&&(e.el=E.createElement(e.h,this.options)),e);if((null===(i=this._$AH)||void 0===i?void 0:i._$AD)===o)this._$AH.m(s);else{const t=new V(o,this),i=t.p(this.options);t.m(s),this.k(i),this._$AH=t}}_$AC(t){let i=T.get(t.strings);return void 0===i&&T.set(t.strings,i=new E(t)),i}S(t){d(this._$AH)||(this._$AH=[],this._$AR());const i=this._$AH;let s,e=0;for(const o of t)e===i.length?i.push(s=new N(this.A(h()),this.A(h()),this,this.options)):s=i[e],s._$AI(o),e++;e<i.length&&(this._$AR(s&&s._$AB.nextSibling,e),i.length=e)}_$AR(t=this._$AA.nextSibling,i){var s;for(null===(s=this._$AP)||void 0===s||s.call(this,!1,!0,i);t&&t!==this._$AB;){const i=t.nextSibling;t.remove(),t=i}}setConnected(t){var i;void 0===this._$AM&&(this._$Cg=t,null===(i=this._$AP)||void 0===i||i.call(this,t))}}class S{constructor(t,i,s,e,o){this.type=1,this._$AH=w,this._$AN=void 0,this.element=t,this.name=i,this._$AM=e,this.options=o,s.length>2||\"\"!==s[0]||\"\"!==s[1]?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=w}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,i=this,s,e){const o=this.strings;let n=!1;if(void 0===o)t=P(this,t,i,0),n=!r(t)||t!==this._$AH&&t!==b,n&&(this._$AH=t);else{const e=t;let l,h;for(t=o[0],l=0;l<o.length-1;l++)h=P(this,e[s+l],i,l),h===b&&(h=this._$AH[l]),n||(n=!r(h)||h!==this._$AH[l]),h===w?t=w:t!==w&&(t+=(null!=h?h:\"\")+o[l+1]),this._$AH[l]=h}n&&!e&&this.C(t)}C(t){t===w?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,null!=t?t:\"\")}}class M extends S{constructor(){super(...arguments),this.type=3}C(t){this.element[this.name]=t===w?void 0:t}}const k=i?i.emptyScript:\"\";class H extends S{constructor(){super(...arguments),this.type=4}C(t){t&&t!==w?this.element.setAttribute(this.name,k):this.element.removeAttribute(this.name)}}class I extends S{constructor(t,i,s,e,o){super(t,i,s,e,o),this.type=5}_$AI(t,i=this){var s;if((t=null!==(s=P(this,t,i,0))&&void 0!==s?s:w)===b)return;const e=this._$AH,o=t===w&&e!==w||t.capture!==e.capture||t.once!==e.once||t.passive!==e.passive,n=t!==w&&(e===w||o);o&&this.element.removeEventListener(this.name,this,e),n&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){var i,s;\"function\"==typeof this._$AH?this._$AH.call(null!==(s=null===(i=this.options)||void 0===i?void 0:i.host)&&void 0!==s?s:this.element,t):this._$AH.handleEvent(t)}}class L{constructor(t,i,s){this.element=t,this.type=6,this._$AN=void 0,this._$AM=i,this.options=s}get _$AU(){return this._$AM._$AU}_$AI(t){P(this,t)}}const R={P:\"$lit$\",L:e,V:o,I:1,N:C,R:V,D:u,j:P,H:N,O:S,F:H,B:I,W:M,Z:L},z=window.litHtmlPolyfillSupport;null==z||z(E,N),(null!==(t=globalThis.litHtmlVersions)&&void 0!==t?t:globalThis.litHtmlVersions=[]).push(\"2.2.1\");export{R as _$LH,$ as html,b as noChange,w as nothing,x as render,y as svg};\n//# sourceMappingURL=lit-html.js.map\n","import{ReactiveElement as t}from\"@lit/reactive-element\";export*from\"@lit/reactive-element\";import{render as e,noChange as i}from\"lit-html\";export*from\"lit-html\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */var l,o;const r=t;class s extends t{constructor(){super(...arguments),this.renderOptions={host:this},this._$Dt=void 0}createRenderRoot(){var t,e;const i=super.createRenderRoot();return null!==(t=(e=this.renderOptions).renderBefore)&&void 0!==t||(e.renderBefore=i.firstChild),i}update(t){const i=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Dt=e(i,this.renderRoot,this.renderOptions)}connectedCallback(){var t;super.connectedCallback(),null===(t=this._$Dt)||void 0===t||t.setConnected(!0)}disconnectedCallback(){var t;super.disconnectedCallback(),null===(t=this._$Dt)||void 0===t||t.setConnected(!1)}render(){return i}}s.finalized=!0,s._$litElement$=!0,null===(l=globalThis.litElementHydrateSupport)||void 0===l||l.call(globalThis,{LitElement:s});const n=globalThis.litElementPolyfillSupport;null==n||n({LitElement:s});const h={_$AK:(t,e,i)=>{t._$AK(e,i)},_$AL:t=>t._$AL};(null!==(o=globalThis.litElementVersions)&&void 0!==o?o:globalThis.litElementVersions=[]).push(\"3.2.0\");export{s as LitElement,r as UpdatingElement,h as _$LE};\n//# sourceMappingURL=lit-element.js.map\n","var noop = {value: () => {}};\n\nfunction dispatch() {\n for (var i = 0, n = arguments.length, _ = {}, t; i < n; ++i) {\n if (!(t = arguments[i] + \"\") || (t in _) || /[\\s.]/.test(t)) throw new Error(\"illegal type: \" + t);\n _[t] = [];\n }\n return new Dispatch(_);\n}\n\nfunction Dispatch(_) {\n this._ = _;\n}\n\nfunction parseTypenames(typenames, types) {\n return typenames.trim().split(/^|\\s+/).map(function(t) {\n var name = \"\", i = t.indexOf(\".\");\n if (i >= 0) name = t.slice(i + 1), t = t.slice(0, i);\n if (t && !types.hasOwnProperty(t)) throw new Error(\"unknown type: \" + t);\n return {type: t, name: name};\n });\n}\n\nDispatch.prototype = dispatch.prototype = {\n constructor: Dispatch,\n on: function(typename, callback) {\n var _ = this._,\n T = parseTypenames(typename + \"\", _),\n t,\n i = -1,\n n = T.length;\n\n // If no callback was specified, return the callback of the given type and name.\n if (arguments.length < 2) {\n while (++i < n) if ((t = (typename = T[i]).type) && (t = get(_[t], typename.name))) return t;\n return;\n }\n\n // If a type was specified, set the callback for the given type and name.\n // Otherwise, if a null callback was specified, remove callbacks of the given name.\n if (callback != null && typeof callback !== \"function\") throw new Error(\"invalid callback: \" + callback);\n while (++i < n) {\n if (t = (typename = T[i]).type) _[t] = set(_[t], typename.name, callback);\n else if (callback == null) for (t in _) _[t] = set(_[t], typename.name, null);\n }\n\n return this;\n },\n copy: function() {\n var copy = {}, _ = this._;\n for (var t in _) copy[t] = _[t].slice();\n return new Dispatch(copy);\n },\n call: function(type, that) {\n if ((n = arguments.length - 2) > 0) for (var args = new Array(n), i = 0, n, t; i < n; ++i) args[i] = arguments[i + 2];\n if (!this._.hasOwnProperty(type)) throw new Error(\"unknown type: \" + type);\n for (t = this._[type], i = 0, n = t.length; i < n; ++i) t[i].value.apply(that, args);\n },\n apply: function(type, that, args) {\n if (!this._.hasOwnProperty(type)) throw new Error(\"unknown type: \" + type);\n for (var t = this._[type], i = 0, n = t.length; i < n; ++i) t[i].value.apply(that, args);\n }\n};\n\nfunction get(type, name) {\n for (var i = 0, n = type.length, c; i < n; ++i) {\n if ((c = type[i]).name === name) {\n return c.value;\n }\n }\n}\n\nfunction set(type, name, callback) {\n for (var i = 0, n = type.length; i < n; ++i) {\n if (type[i].name === name) {\n type[i] = noop, type = type.slice(0, i).concat(type.slice(i + 1));\n break;\n }\n }\n if (callback != null) type.push({name: name, value: callback});\n return type;\n}\n\nexport default dispatch;\n","export var xhtml = \"http://www.w3.org/1999/xhtml\";\n\nexport default {\n svg: \"http://www.w3.org/2000/svg\",\n xhtml: xhtml,\n xlink: \"http://www.w3.org/1999/xlink\",\n xml: \"http://www.w3.org/XML/1998/namespace\",\n xmlns: \"http://www.w3.org/2000/xmlns/\"\n};\n","import namespaces from \"./namespaces.js\";\n\nexport default function(name) {\n var prefix = name += \"\", i = prefix.indexOf(\":\");\n if (i >= 0 && (prefix = name.slice(0, i)) !== \"xmlns\") name = name.slice(i + 1);\n return namespaces.hasOwnProperty(prefix) ? {space: namespaces[prefix], local: name} : name; // eslint-disable-line no-prototype-builtins\n}\n","import namespace from \"./namespace.js\";\nimport {xhtml} from \"./namespaces.js\";\n\nfunction creatorInherit(name) {\n return function() {\n var document = this.ownerDocument,\n uri = this.namespaceURI;\n return uri === xhtml && document.documentElement.namespaceURI === xhtml\n ? document.createElement(name)\n : document.createElementNS(uri, name);\n };\n}\n\nfunction creatorFixed(fullname) {\n return function() {\n return this.ownerDocument.createElementNS(fullname.space, fullname.local);\n };\n}\n\nexport default function(name) {\n var fullname = namespace(name);\n return (fullname.local\n ? creatorFixed\n : creatorInherit)(fullname);\n}\n","function none() {}\n\nexport default function(selector) {\n return selector == null ? none : function() {\n return this.querySelector(selector);\n };\n}\n","// Given something array like (or null), returns something that is strictly an\n// array. This is used to ensure that array-like objects passed to d3.selectAll\n// or selection.selectAll are converted into proper arrays when creating a\n// selection; we don’t ever want to create a selection backed by a live\n// HTMLCollection or NodeList. However, note that selection.selectAll will use a\n// static NodeList as a group, since it safely derived from querySelectorAll.\nexport default function array(x) {\n return x == null ? [] : Array.isArray(x) ? x : Array.from(x);\n}\n","function empty() {\n return [];\n}\n\nexport default function(selector) {\n return selector == null ? empty : function() {\n return this.querySelectorAll(selector);\n };\n}\n","export default function(selector) {\n return function() {\n return this.matches(selector);\n };\n}\n\nexport function childMatcher(selector) {\n return function(node) {\n return node.matches(selector);\n };\n}\n\n","import {childMatcher} from \"../matcher.js\";\n\nvar find = Array.prototype.find;\n\nfunction childFind(match) {\n return function() {\n return find.call(this.children, match);\n };\n}\n\nfunction childFirst() {\n return this.firstElementChild;\n}\n\nexport default function(match) {\n return this.select(match == null ? childFirst\n : childFind(typeof match === \"function\" ? match : childMatcher(match)));\n}\n","import {childMatcher} from \"../matcher.js\";\n\nvar filter = Array.prototype.filter;\n\nfunction children() {\n return Array.from(this.children);\n}\n\nfunction childrenFilter(match) {\n return function() {\n return filter.call(this.children, match);\n };\n}\n\nexport default function(match) {\n return this.selectAll(match == null ? children\n : childrenFilter(typeof match === \"function\" ? match : childMatcher(match)));\n}\n","export default function(update) {\n return new Array(update.length);\n}\n","import sparse from \"./sparse.js\";\nimport {Selection} from \"./index.js\";\n\nexport default function() {\n return new Selection(this._enter || this._groups.map(sparse), this._parents);\n}\n\nexport function EnterNode(parent, datum) {\n this.ownerDocument = parent.ownerDocument;\n this.namespaceURI = parent.namespaceURI;\n this._next = null;\n this._parent = parent;\n this.__data__ = datum;\n}\n\nEnterNode.prototype = {\n constructor: EnterNode,\n appendChild: function(child) { return this._parent.insertBefore(child, this._next); },\n insertBefore: function(child, next) { return this._parent.insertBefore(child, next); },\n querySelector: function(selector) { return this._parent.querySelector(selector); },\n querySelectorAll: function(selector) { return this._parent.querySelectorAll(selector); }\n};\n","export default function(x) {\n return function() {\n return x;\n };\n}\n","import {Selection} from \"./index.js\";\nimport {EnterNode} from \"./enter.js\";\nimport constant from \"../constant.js\";\n\nfunction bindIndex(parent, group, enter, update, exit, data) {\n var i = 0,\n node,\n groupLength = group.length,\n dataLength = data.length;\n\n // Put any non-null nodes that fit into update.\n // Put any null nodes into enter.\n // Put any remaining data into enter.\n for (; i < dataLength; ++i) {\n if (node = group[i]) {\n node.__data__ = data[i];\n update[i] = node;\n } else {\n enter[i] = new EnterNode(parent, data[i]);\n }\n }\n\n // Put any non-null nodes that don’t fit into exit.\n for (; i < groupLength; ++i) {\n if (node = group[i]) {\n exit[i] = node;\n }\n }\n}\n\nfunction bindKey(parent, group, enter, update, exit, data, key) {\n var i,\n node,\n nodeByKeyValue = new Map,\n groupLength = group.length,\n dataLength = data.length,\n keyValues = new Array(groupLength),\n keyValue;\n\n // Compute the key for each node.\n // If multiple nodes have the same key, the duplicates are added to exit.\n for (i = 0; i < groupLength; ++i) {\n if (node = group[i]) {\n keyValues[i] = keyValue = key.call(node, node.__data__, i, group) + \"\";\n if (nodeByKeyValue.has(keyValue)) {\n exit[i] = node;\n } else {\n nodeByKeyValue.set(keyValue, node);\n }\n }\n }\n\n // Compute the key for each datum.\n // If there a node associated with this key, join and add it to update.\n // If there is not (or the key is a duplicate), add it to enter.\n for (i = 0; i < dataLength; ++i) {\n keyValue = key.call(parent, data[i], i, data) + \"\";\n if (node = nodeByKeyValue.get(keyValue)) {\n update[i] = node;\n node.__data__ = data[i];\n nodeByKeyValue.delete(keyValue);\n } else {\n enter[i] = new EnterNode(parent, data[i]);\n }\n }\n\n // Add any remaining nodes that were not bound to data to exit.\n for (i = 0; i < groupLength; ++i) {\n if ((node = group[i]) && (nodeByKeyValue.get(keyValues[i]) === node)) {\n exit[i] = node;\n }\n }\n}\n\nfunction datum(node) {\n return node.__data__;\n}\n\nexport default function(value, key) {\n if (!arguments.length) return Array.from(this, datum);\n\n var bind = key ? bindKey : bindIndex,\n parents = this._parents,\n groups = this._groups;\n\n if (typeof value !== \"function\") value = constant(value);\n\n for (var m = groups.length, update = new Array(m), enter = new Array(m), exit = new Array(m), j = 0; j < m; ++j) {\n var parent = parents[j],\n group = groups[j],\n groupLength = group.length,\n data = arraylike(value.call(parent, parent && parent.__data__, j, parents)),\n dataLength = data.length,\n enterGroup = enter[j] = new Array(dataLength),\n updateGroup = update[j] = new Array(dataLength),\n exitGroup = exit[j] = new Array(groupLength);\n\n bind(parent, group, enterGroup, updateGroup, exitGroup, data, key);\n\n // Now connect the enter nodes to their following update node, such that\n // appendChild can insert the materialized enter node before this node,\n // rather than at the end of the parent node.\n for (var i0 = 0, i1 = 0, previous, next; i0 < dataLength; ++i0) {\n if (previous = enterGroup[i0]) {\n if (i0 >= i1) i1 = i0 + 1;\n while (!(next = updateGroup[i1]) && ++i1 < dataLength);\n previous._next = next || null;\n }\n }\n }\n\n update = new Selection(update, parents);\n update._enter = enter;\n update._exit = exit;\n return update;\n}\n\n// Given some data, this returns an array-like view of it: an object that\n// exposes a length property and allows numeric indexing. Note that unlike\n// selectAll, this isn’t worried about “live” collections because the resulting\n// array will only be used briefly while data is being bound. (It is possible to\n// cause the data to change while iterating by using a key function, but please\n// don’t; we’d rather avoid a gratuitous copy.)\nfunction arraylike(data) {\n return typeof data === \"object\" && \"length\" in data\n ? data // Array, TypedArray, NodeList, array-like\n : Array.from(data); // Map, Set, iterable, string, or anything else\n}\n","import {Selection} from \"./index.js\";\n\nexport default function(compare) {\n if (!compare) compare = ascending;\n\n function compareNode(a, b) {\n return a && b ? compare(a.__data__, b.__data__) : !a - !b;\n }\n\n for (var groups = this._groups, m = groups.length, sortgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, sortgroup = sortgroups[j] = new Array(n), node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n sortgroup[i] = node;\n }\n }\n sortgroup.sort(compareNode);\n }\n\n return new Selection(sortgroups, this._parents).order();\n}\n\nfunction ascending(a, b) {\n return a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;\n}\n","import namespace from \"../namespace.js\";\n\nfunction attrRemove(name) {\n return function() {\n this.removeAttribute(name);\n };\n}\n\nfunction attrRemoveNS(fullname) {\n return function() {\n this.removeAttributeNS(fullname.space, fullname.local);\n };\n}\n\nfunction attrConstant(name, value) {\n return function() {\n this.setAttribute(name, value);\n };\n}\n\nfunction attrConstantNS(fullname, value) {\n return function() {\n this.setAttributeNS(fullname.space, fullname.local, value);\n };\n}\n\nfunction attrFunction(name, value) {\n return function() {\n var v = value.apply(this, arguments);\n if (v == null) this.removeAttribute(name);\n else this.setAttribute(name, v);\n };\n}\n\nfunction attrFunctionNS(fullname, value) {\n return function() {\n var v = value.apply(this, arguments);\n if (v == null) this.removeAttributeNS(fullname.space, fullname.local);\n else this.setAttributeNS(fullname.space, fullname.local, v);\n };\n}\n\nexport default function(name, value) {\n var fullname = namespace(name);\n\n if (arguments.length < 2) {\n var node = this.node();\n return fullname.local\n ? node.getAttributeNS(fullname.space, fullname.local)\n : node.getAttribute(fullname);\n }\n\n return this.each((value == null\n ? (fullname.local ? attrRemoveNS : attrRemove) : (typeof value === \"function\"\n ? (fullname.local ? attrFunctionNS : attrFunction)\n : (fullname.local ? attrConstantNS : attrConstant)))(fullname, value));\n}\n","export default function(node) {\n return (node.ownerDocument && node.ownerDocument.defaultView) // node is a Node\n || (node.document && node) // node is a Window\n || node.defaultView; // node is a Document\n}\n","import defaultView from \"../window.js\";\n\nfunction styleRemove(name) {\n return function() {\n this.style.removeProperty(name);\n };\n}\n\nfunction styleConstant(name, value, priority) {\n return function() {\n this.style.setProperty(name, value, priority);\n };\n}\n\nfunction styleFunction(name, value, priority) {\n return function() {\n var v = value.apply(this, arguments);\n if (v == null) this.style.removeProperty(name);\n else this.style.setProperty(name, v, priority);\n };\n}\n\nexport default function(name, value, priority) {\n return arguments.length > 1\n ? this.each((value == null\n ? styleRemove : typeof value === \"function\"\n ? styleFunction\n : styleConstant)(name, value, priority == null ? \"\" : priority))\n : styleValue(this.node(), name);\n}\n\nexport function styleValue(node, name) {\n return node.style.getPropertyValue(name)\n || defaultView(node).getComputedStyle(node, null).getPropertyValue(name);\n}\n","function propertyRemove(name) {\n return function() {\n delete this[name];\n };\n}\n\nfunction propertyConstant(name, value) {\n return function() {\n this[name] = value;\n };\n}\n\nfunction propertyFunction(name, value) {\n return function() {\n var v = value.apply(this, arguments);\n if (v == null) delete this[name];\n else this[name] = v;\n };\n}\n\nexport default function(name, value) {\n return arguments.length > 1\n ? this.each((value == null\n ? propertyRemove : typeof value === \"function\"\n ? propertyFunction\n : propertyConstant)(name, value))\n : this.node()[name];\n}\n","function classArray(string) {\n return string.trim().split(/^|\\s+/);\n}\n\nfunction classList(node) {\n return node.classList || new ClassList(node);\n}\n\nfunction ClassList(node) {\n this._node = node;\n this._names = classArray(node.getAttribute(\"class\") || \"\");\n}\n\nClassList.prototype = {\n add: function(name) {\n var i = this._names.indexOf(name);\n if (i < 0) {\n this._names.push(name);\n this._node.setAttribute(\"class\", this._names.join(\" \"));\n }\n },\n remove: function(name) {\n var i = this._names.indexOf(name);\n if (i >= 0) {\n this._names.splice(i, 1);\n this._node.setAttribute(\"class\", this._names.join(\" \"));\n }\n },\n contains: function(name) {\n return this._names.indexOf(name) >= 0;\n }\n};\n\nfunction classedAdd(node, names) {\n var list = classList(node), i = -1, n = names.length;\n while (++i < n) list.add(names[i]);\n}\n\nfunction classedRemove(node, names) {\n var list = classList(node), i = -1, n = names.length;\n while (++i < n) list.remove(names[i]);\n}\n\nfunction classedTrue(names) {\n return function() {\n classedAdd(this, names);\n };\n}\n\nfunction classedFalse(names) {\n return function() {\n classedRemove(this, names);\n };\n}\n\nfunction classedFunction(names, value) {\n return function() {\n (value.apply(this, arguments) ? classedAdd : classedRemove)(this, names);\n };\n}\n\nexport default function(name, value) {\n var names = classArray(name + \"\");\n\n if (arguments.length < 2) {\n var list = classList(this.node()), i = -1, n = names.length;\n while (++i < n) if (!list.contains(names[i])) return false;\n return true;\n }\n\n return this.each((typeof value === \"function\"\n ? classedFunction : value\n ? classedTrue\n : classedFalse)(names, value));\n}\n","function textRemove() {\n this.textContent = \"\";\n}\n\nfunction textConstant(value) {\n return function() {\n this.textContent = value;\n };\n}\n\nfunction textFunction(value) {\n return function() {\n var v = value.apply(this, arguments);\n this.textContent = v == null ? \"\" : v;\n };\n}\n\nexport default function(value) {\n return arguments.length\n ? this.each(value == null\n ? textRemove : (typeof value === \"function\"\n ? textFunction\n : textConstant)(value))\n : this.node().textContent;\n}\n","function htmlRemove() {\n this.innerHTML = \"\";\n}\n\nfunction htmlConstant(value) {\n return function() {\n this.innerHTML = value;\n };\n}\n\nfunction htmlFunction(value) {\n return function() {\n var v = value.apply(this, arguments);\n this.innerHTML = v == null ? \"\" : v;\n };\n}\n\nexport default function(value) {\n return arguments.length\n ? this.each(value == null\n ? htmlRemove : (typeof value === \"function\"\n ? htmlFunction\n : htmlConstant)(value))\n : this.node().innerHTML;\n}\n","function raise() {\n if (this.nextSibling) this.parentNode.appendChild(this);\n}\n\nexport default function() {\n return this.each(raise);\n}\n","function lower() {\n if (this.previousSibling) this.parentNode.insertBefore(this, this.parentNode.firstChild);\n}\n\nexport default function() {\n return this.each(lower);\n}\n","import creator from \"../creator.js\";\nimport selector from \"../selector.js\";\n\nfunction constantNull() {\n return null;\n}\n\nexport default function(name, before) {\n var create = typeof name === \"function\" ? name : creator(name),\n select = before == null ? constantNull : typeof before === \"function\" ? before : selector(before);\n return this.select(function() {\n return this.insertBefore(create.apply(this, arguments), select.apply(this, arguments) || null);\n });\n}\n","function remove() {\n var parent = this.parentNode;\n if (parent) parent.removeChild(this);\n}\n\nexport default function() {\n return this.each(remove);\n}\n","function selection_cloneShallow() {\n var clone = this.cloneNode(false), parent = this.parentNode;\n return parent ? parent.insertBefore(clone, this.nextSibling) : clone;\n}\n\nfunction selection_cloneDeep() {\n var clone = this.cloneNode(true), parent = this.parentNode;\n return parent ? parent.insertBefore(clone, this.nextSibling) : clone;\n}\n\nexport default function(deep) {\n return this.select(deep ? selection_cloneDeep : selection_cloneShallow);\n}\n","function contextListener(listener) {\n return function(event) {\n listener.call(this, event, this.__data__);\n };\n}\n\nfunction parseTypenames(typenames) {\n return typenames.trim().split(/^|\\s+/).map(function(t) {\n var name = \"\", i = t.indexOf(\".\");\n if (i >= 0) name = t.slice(i + 1), t = t.slice(0, i);\n return {type: t, name: name};\n });\n}\n\nfunction onRemove(typename) {\n return function() {\n var on = this.__on;\n if (!on) return;\n for (var j = 0, i = -1, m = on.length, o; j < m; ++j) {\n if (o = on[j], (!typename.type || o.type === typename.type) && o.name === typename.name) {\n this.removeEventListener(o.type, o.listener, o.options);\n } else {\n on[++i] = o;\n }\n }\n if (++i) on.length = i;\n else delete this.__on;\n };\n}\n\nfunction onAdd(typename, value, options) {\n return function() {\n var on = this.__on, o, listener = contextListener(value);\n if (on) for (var j = 0, m = on.length; j < m; ++j) {\n if ((o = on[j]).type === typename.type && o.name === typename.name) {\n this.removeEventListener(o.type, o.listener, o.options);\n this.addEventListener(o.type, o.listener = listener, o.options = options);\n o.value = value;\n return;\n }\n }\n this.addEventListener(typename.type, listener, options);\n o = {type: typename.type, name: typename.name, value: value, listener: listener, options: options};\n if (!on) this.__on = [o];\n else on.push(o);\n };\n}\n\nexport default function(typename, value, options) {\n var typenames = parseTypenames(typename + \"\"), i, n = typenames.length, t;\n\n if (arguments.length < 2) {\n var on = this.node().__on;\n if (on) for (var j = 0, m = on.length, o; j < m; ++j) {\n for (i = 0, o = on[j]; i < n; ++i) {\n if ((t = typenames[i]).type === o.type && t.name === o.name) {\n return o.value;\n }\n }\n }\n return;\n }\n\n on = value ? onAdd : onRemove;\n for (i = 0; i < n; ++i) this.each(on(typenames[i], value, options));\n return this;\n}\n","import defaultView from \"../window.js\";\n\nfunction dispatchEvent(node, type, params) {\n var window = defaultView(node),\n event = window.CustomEvent;\n\n if (typeof event === \"function\") {\n event = new event(type, params);\n } else {\n event = window.document.createEvent(\"Event\");\n if (params) event.initEvent(type, params.bubbles, params.cancelable), event.detail = params.detail;\n else event.initEvent(type, false, false);\n }\n\n node.dispatchEvent(event);\n}\n\nfunction dispatchConstant(type, params) {\n return function() {\n return dispatchEvent(this, type, params);\n };\n}\n\nfunction dispatchFunction(type, params) {\n return function() {\n return dispatchEvent(this, type, params.apply(this, arguments));\n };\n}\n\nexport default function(type, params) {\n return this.each((typeof params === \"function\"\n ? dispatchFunction\n : dispatchConstant)(type, params));\n}\n","import selection_select from \"./select.js\";\nimport selection_selectAll from \"./selectAll.js\";\nimport selection_selectChild from \"./selectChild.js\";\nimport selection_selectChildren from \"./selectChildren.js\";\nimport selection_filter from \"./filter.js\";\nimport selection_data from \"./data.js\";\nimport selection_enter from \"./enter.js\";\nimport selection_exit from \"./exit.js\";\nimport selection_join from \"./join.js\";\nimport selection_merge from \"./merge.js\";\nimport selection_order from \"./order.js\";\nimport selection_sort from \"./sort.js\";\nimport selection_call from \"./call.js\";\nimport selection_nodes from \"./nodes.js\";\nimport selection_node from \"./node.js\";\nimport selection_size from \"./size.js\";\nimport selection_empty from \"./empty.js\";\nimport selection_each from \"./each.js\";\nimport selection_attr from \"./attr.js\";\nimport selection_style from \"./style.js\";\nimport selection_property from \"./property.js\";\nimport selection_classed from \"./classed.js\";\nimport selection_text from \"./text.js\";\nimport selection_html from \"./html.js\";\nimport selection_raise from \"./raise.js\";\nimport selection_lower from \"./lower.js\";\nimport selection_append from \"./append.js\";\nimport selection_insert from \"./insert.js\";\nimport selection_remove from \"./remove.js\";\nimport selection_clone from \"./clone.js\";\nimport selection_datum from \"./datum.js\";\nimport selection_on from \"./on.js\";\nimport selection_dispatch from \"./dispatch.js\";\nimport selection_iterator from \"./iterator.js\";\n\nexport var root = [null];\n\nexport function Selection(groups, parents) {\n this._groups = groups;\n this._parents = parents;\n}\n\nfunction selection() {\n return new Selection([[document.documentElement]], root);\n}\n\nfunction selection_selection() {\n return this;\n}\n\nSelection.prototype = selection.prototype = {\n constructor: Selection,\n select: selection_select,\n selectAll: selection_selectAll,\n selectChild: selection_selectChild,\n selectChildren: selection_selectChildren,\n filter: selection_filter,\n data: selection_data,\n enter: selection_enter,\n exit: selection_exit,\n join: selection_join,\n merge: selection_merge,\n selection: selection_selection,\n order: selection_order,\n sort: selection_sort,\n call: selection_call,\n nodes: selection_nodes,\n node: selection_node,\n size: selection_size,\n empty: selection_empty,\n each: selection_each,\n attr: selection_attr,\n style: selection_style,\n property: selection_property,\n classed: selection_classed,\n text: selection_text,\n html: selection_html,\n raise: selection_raise,\n lower: selection_lower,\n append: selection_append,\n insert: selection_insert,\n remove: selection_remove,\n clone: selection_clone,\n datum: selection_datum,\n on: selection_on,\n dispatch: selection_dispatch,\n [Symbol.iterator]: selection_iterator\n};\n\nexport default selection;\n","import {Selection, root} from \"./selection/index.js\";\n\nexport default function(selector) {\n return typeof selector === \"string\"\n ? new Selection([[document.querySelector(selector)]], [document.documentElement])\n : new Selection([[selector]], root);\n}\n","export default function(constructor, factory, prototype) {\n constructor.prototype = factory.prototype = prototype;\n prototype.constructor = constructor;\n}\n\nexport function extend(parent, definition) {\n var prototype = Object.create(parent.prototype);\n for (var key in definition) prototype[key] = definition[key];\n return prototype;\n}\n","import define, {extend} from \"./define.js\";\n\nexport function Color() {}\n\nexport var darker = 0.7;\nexport var brighter = 1 / darker;\n\nvar reI = \"\\\\s*([+-]?\\\\d+)\\\\s*\",\n reN = \"\\\\s*([+-]?\\\\d*\\\\.?\\\\d+(?:[eE][+-]?\\\\d+)?)\\\\s*\",\n reP = \"\\\\s*([+-]?\\\\d*\\\\.?\\\\d+(?:[eE][+-]?\\\\d+)?)%\\\\s*\",\n reHex = /^#([0-9a-f]{3,8})$/,\n reRgbInteger = new RegExp(\"^rgb\\\\(\" + [reI, reI, reI] + \"\\\\)$\"),\n reRgbPercent = new RegExp(\"^rgb\\\\(\" + [reP, reP, reP] + \"\\\\)$\"),\n reRgbaInteger = new RegExp(\"^rgba\\\\(\" + [reI, reI, reI, reN] + \"\\\\)$\"),\n reRgbaPercent = new RegExp(\"^rgba\\\\(\" + [reP, reP, reP, reN] + \"\\\\)$\"),\n reHslPercent = new RegExp(\"^hsl\\\\(\" + [reN, reP, reP] + \"\\\\)$\"),\n reHslaPercent = new RegExp(\"^hsla\\\\(\" + [reN, reP, reP, reN] + \"\\\\)$\");\n\nvar named = {\n aliceblue: 0xf0f8ff,\n antiquewhite: 0xfaebd7,\n aqua: 0x00ffff,\n aquamarine: 0x7fffd4,\n azure: 0xf0ffff,\n beige: 0xf5f5dc,\n bisque: 0xffe4c4,\n black: 0x000000,\n blanchedalmond: 0xffebcd,\n blue: 0x0000ff,\n blueviolet: 0x8a2be2,\n brown: 0xa52a2a,\n burlywood: 0xdeb887,\n cadetblue: 0x5f9ea0,\n chartreuse: 0x7fff00,\n chocolate: 0xd2691e,\n coral: 0xff7f50,\n cornflowerblue: 0x6495ed,\n cornsilk: 0xfff8dc,\n crimson: 0xdc143c,\n cyan: 0x00ffff,\n darkblue: 0x00008b,\n darkcyan: 0x008b8b,\n darkgoldenrod: 0xb8860b,\n darkgray: 0xa9a9a9,\n darkgreen: 0x006400,\n darkgrey: 0xa9a9a9,\n darkkhaki: 0xbdb76b,\n darkmagenta: 0x8b008b,\n darkolivegreen: 0x556b2f,\n darkorange: 0xff8c00,\n darkorchid: 0x9932cc,\n darkred: 0x8b0000,\n darksalmon: 0xe9967a,\n darkseagreen: 0x8fbc8f,\n darkslateblue: 0x483d8b,\n darkslategray: 0x2f4f4f,\n darkslategrey: 0x2f4f4f,\n darkturquoise: 0x00ced1,\n darkviolet: 0x9400d3,\n deeppink: 0xff1493,\n deepskyblue: 0x00bfff,\n dimgray: 0x696969,\n dimgrey: 0x696969,\n dodgerblue: 0x1e90ff,\n firebrick: 0xb22222,\n floralwhite: 0xfffaf0,\n forestgreen: 0x228b22,\n fuchsia: 0xff00ff,\n gainsboro: 0xdcdcdc,\n ghostwhite: 0xf8f8ff,\n gold: 0xffd700,\n goldenrod: 0xdaa520,\n gray: 0x808080,\n green: 0x008000,\n greenyellow: 0xadff2f,\n grey: 0x808080,\n honeydew: 0xf0fff0,\n hotpink: 0xff69b4,\n indianred: 0xcd5c5c,\n indigo: 0x4b0082,\n ivory: 0xfffff0,\n khaki: 0xf0e68c,\n lavender: 0xe6e6fa,\n lavenderblush: 0xfff0f5,\n lawngreen: 0x7cfc00,\n lemonchiffon: 0xfffacd,\n lightblue: 0xadd8e6,\n lightcoral: 0xf08080,\n lightcyan: 0xe0ffff,\n lightgoldenrodyellow: 0xfafad2,\n lightgray: 0xd3d3d3,\n lightgreen: 0x90ee90,\n lightgrey: 0xd3d3d3,\n lightpink: 0xffb6c1,\n lightsalmon: 0xffa07a,\n lightseagreen: 0x20b2aa,\n lightskyblue: 0x87cefa,\n lightslategray: 0x778899,\n lightslategrey: 0x778899,\n lightsteelblue: 0xb0c4de,\n lightyellow: 0xffffe0,\n lime: 0x00ff00,\n limegreen: 0x32cd32,\n linen: 0xfaf0e6,\n magenta: 0xff00ff,\n maroon: 0x800000,\n mediumaquamarine: 0x66cdaa,\n mediumblue: 0x0000cd,\n mediumorchid: 0xba55d3,\n mediumpurple: 0x9370db,\n mediumseagreen: 0x3cb371,\n mediumslateblue: 0x7b68ee,\n mediumspringgreen: 0x00fa9a,\n mediumturquoise: 0x48d1cc,\n mediumvioletred: 0xc71585,\n midnightblue: 0x191970,\n mintcream: 0xf5fffa,\n mistyrose: 0xffe4e1,\n moccasin: 0xffe4b5,\n navajowhite: 0xffdead,\n navy: 0x000080,\n oldlace: 0xfdf5e6,\n olive: 0x808000,\n olivedrab: 0x6b8e23,\n orange: 0xffa500,\n orangered: 0xff4500,\n orchid: 0xda70d6,\n palegoldenrod: 0xeee8aa,\n palegreen: 0x98fb98,\n paleturquoise: 0xafeeee,\n palevioletred: 0xdb7093,\n papayawhip: 0xffefd5,\n peachpuff: 0xffdab9,\n peru: 0xcd853f,\n pink: 0xffc0cb,\n plum: 0xdda0dd,\n powderblue: 0xb0e0e6,\n purple: 0x800080,\n rebeccapurple: 0x663399,\n red: 0xff0000,\n rosybrown: 0xbc8f8f,\n royalblue: 0x4169e1,\n saddlebrown: 0x8b4513,\n salmon: 0xfa8072,\n sandybrown: 0xf4a460,\n seagreen: 0x2e8b57,\n seashell: 0xfff5ee,\n sienna: 0xa0522d,\n silver: 0xc0c0c0,\n skyblue: 0x87ceeb,\n slateblue: 0x6a5acd,\n slategray: 0x708090,\n slategrey: 0x708090,\n snow: 0xfffafa,\n springgreen: 0x00ff7f,\n steelblue: 0x4682b4,\n tan: 0xd2b48c,\n teal: 0x008080,\n thistle: 0xd8bfd8,\n tomato: 0xff6347,\n turquoise: 0x40e0d0,\n violet: 0xee82ee,\n wheat: 0xf5deb3,\n white: 0xffffff,\n whitesmoke: 0xf5f5f5,\n yellow: 0xffff00,\n yellowgreen: 0x9acd32\n};\n\ndefine(Color, color, {\n copy: function(channels) {\n return Object.assign(new this.constructor, this, channels);\n },\n displayable: function() {\n return this.rgb().displayable();\n },\n hex: color_formatHex, // Deprecated! Use color.formatHex.\n formatHex: color_formatHex,\n formatHsl: color_formatHsl,\n formatRgb: color_formatRgb,\n toString: color_formatRgb\n});\n\nfunction color_formatHex() {\n return this.rgb().formatHex();\n}\n\nfunction color_formatHsl() {\n return hslConvert(this).formatHsl();\n}\n\nfunction color_formatRgb() {\n return this.rgb().formatRgb();\n}\n\nexport default function color(format) {\n var m, l;\n format = (format + \"\").trim().toLowerCase();\n return (m = reHex.exec(format)) ? (l = m[1].length, m = parseInt(m[1], 16), l === 6 ? rgbn(m) // #ff0000\n : l === 3 ? new Rgb((m >> 8 & 0xf) | (m >> 4 & 0xf0), (m >> 4 & 0xf) | (m & 0xf0), ((m & 0xf) << 4) | (m & 0xf), 1) // #f00\n : l === 8 ? rgba(m >> 24 & 0xff, m >> 16 & 0xff, m >> 8 & 0xff, (m & 0xff) / 0xff) // #ff000000\n : l === 4 ? rgba((m >> 12 & 0xf) | (m >> 8 & 0xf0), (m >> 8 & 0xf) | (m >> 4 & 0xf0), (m >> 4 & 0xf) | (m & 0xf0), (((m & 0xf) << 4) | (m & 0xf)) / 0xff) // #f000\n : null) // invalid hex\n : (m = reRgbInteger.exec(format)) ? new Rgb(m[1], m[2], m[3], 1) // rgb(255, 0, 0)\n : (m = reRgbPercent.exec(format)) ? new Rgb(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, 1) // rgb(100%, 0%, 0%)\n : (m = reRgbaInteger.exec(format)) ? rgba(m[1], m[2], m[3], m[4]) // rgba(255, 0, 0, 1)\n : (m = reRgbaPercent.exec(format)) ? rgba(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, m[4]) // rgb(100%, 0%, 0%, 1)\n : (m = reHslPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, 1) // hsl(120, 50%, 50%)\n : (m = reHslaPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, m[4]) // hsla(120, 50%, 50%, 1)\n : named.hasOwnProperty(format) ? rgbn(named[format]) // eslint-disable-line no-prototype-builtins\n : format === \"transparent\" ? new Rgb(NaN, NaN, NaN, 0)\n : null;\n}\n\nfunction rgbn(n) {\n return new Rgb(n >> 16 & 0xff, n >> 8 & 0xff, n & 0xff, 1);\n}\n\nfunction rgba(r, g, b, a) {\n if (a <= 0) r = g = b = NaN;\n return new Rgb(r, g, b, a);\n}\n\nexport function rgbConvert(o) {\n if (!(o instanceof Color)) o = color(o);\n if (!o) return new Rgb;\n o = o.rgb();\n return new Rgb(o.r, o.g, o.b, o.opacity);\n}\n\nexport function rgb(r, g, b, opacity) {\n return arguments.length === 1 ? rgbConvert(r) : new Rgb(r, g, b, opacity == null ? 1 : opacity);\n}\n\nexport function Rgb(r, g, b, opacity) {\n this.r = +r;\n this.g = +g;\n this.b = +b;\n this.opacity = +opacity;\n}\n\ndefine(Rgb, rgb, extend(Color, {\n brighter: function(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);\n },\n darker: function(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);\n },\n rgb: function() {\n return this;\n },\n displayable: function() {\n return (-0.5 <= this.r && this.r < 255.5)\n && (-0.5 <= this.g && this.g < 255.5)\n && (-0.5 <= this.b && this.b < 255.5)\n && (0 <= this.opacity && this.opacity <= 1);\n },\n hex: rgb_formatHex, // Deprecated! Use color.formatHex.\n formatHex: rgb_formatHex,\n formatRgb: rgb_formatRgb,\n toString: rgb_formatRgb\n}));\n\nfunction rgb_formatHex() {\n return \"#\" + hex(this.r) + hex(this.g) + hex(this.b);\n}\n\nfunction rgb_formatRgb() {\n var a = this.opacity; a = isNaN(a) ? 1 : Math.max(0, Math.min(1, a));\n return (a === 1 ? \"rgb(\" : \"rgba(\")\n + Math.max(0, Math.min(255, Math.round(this.r) || 0)) + \", \"\n + Math.max(0, Math.min(255, Math.round(this.g) || 0)) + \", \"\n + Math.max(0, Math.min(255, Math.round(this.b) || 0))\n + (a === 1 ? \")\" : \", \" + a + \")\");\n}\n\nfunction hex(value) {\n value = Math.max(0, Math.min(255, Math.round(value) || 0));\n return (value < 16 ? \"0\" : \"\") + value.toString(16);\n}\n\nfunction hsla(h, s, l, a) {\n if (a <= 0) h = s = l = NaN;\n else if (l <= 0 || l >= 1) h = s = NaN;\n else if (s <= 0) h = NaN;\n return new Hsl(h, s, l, a);\n}\n\nexport function hslConvert(o) {\n if (o instanceof Hsl) return new Hsl(o.h, o.s, o.l, o.opacity);\n if (!(o instanceof Color)) o = color(o);\n if (!o) return new Hsl;\n if (o instanceof Hsl) return o;\n o = o.rgb();\n var r = o.r / 255,\n g = o.g / 255,\n b = o.b / 255,\n min = Math.min(r, g, b),\n max = Math.max(r, g, b),\n h = NaN,\n s = max - min,\n l = (max + min) / 2;\n if (s) {\n if (r === max) h = (g - b) / s + (g < b) * 6;\n else if (g === max) h = (b - r) / s + 2;\n else h = (r - g) / s + 4;\n s /= l < 0.5 ? max + min : 2 - max - min;\n h *= 60;\n } else {\n s = l > 0 && l < 1 ? 0 : h;\n }\n return new Hsl(h, s, l, o.opacity);\n}\n\nexport function hsl(h, s, l, opacity) {\n return arguments.length === 1 ? hslConvert(h) : new Hsl(h, s, l, opacity == null ? 1 : opacity);\n}\n\nfunction Hsl(h, s, l, opacity) {\n this.h = +h;\n this.s = +s;\n this.l = +l;\n this.opacity = +opacity;\n}\n\ndefine(Hsl, hsl, extend(Color, {\n brighter: function(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Hsl(this.h, this.s, this.l * k, this.opacity);\n },\n darker: function(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Hsl(this.h, this.s, this.l * k, this.opacity);\n },\n rgb: function() {\n var h = this.h % 360 + (this.h < 0) * 360,\n s = isNaN(h) || isNaN(this.s) ? 0 : this.s,\n l = this.l,\n m2 = l + (l < 0.5 ? l : 1 - l) * s,\n m1 = 2 * l - m2;\n return new Rgb(\n hsl2rgb(h >= 240 ? h - 240 : h + 120, m1, m2),\n hsl2rgb(h, m1, m2),\n hsl2rgb(h < 120 ? h + 240 : h - 120, m1, m2),\n this.opacity\n );\n },\n displayable: function() {\n return (0 <= this.s && this.s <= 1 || isNaN(this.s))\n && (0 <= this.l && this.l <= 1)\n && (0 <= this.opacity && this.opacity <= 1);\n },\n formatHsl: function() {\n var a = this.opacity; a = isNaN(a) ? 1 : Math.max(0, Math.min(1, a));\n return (a === 1 ? \"hsl(\" : \"hsla(\")\n + (this.h || 0) + \", \"\n + (this.s || 0) * 100 + \"%, \"\n + (this.l || 0) * 100 + \"%\"\n + (a === 1 ? \")\" : \", \" + a + \")\");\n }\n}));\n\n/* From FvD 13.37, CSS Color Module Level 3 */\nfunction hsl2rgb(h, m1, m2) {\n return (h < 60 ? m1 + (m2 - m1) * h / 60\n : h < 180 ? m2\n : h < 240 ? m1 + (m2 - m1) * (240 - h) / 60\n : m1) * 255;\n}\n","import {Selection} from \"./index.js\";\nimport selector from \"../selector.js\";\n\nexport default function(select) {\n if (typeof select !== \"function\") select = selector(select);\n\n for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, subgroup = subgroups[j] = new Array(n), node, subnode, i = 0; i < n; ++i) {\n if ((node = group[i]) && (subnode = select.call(node, node.__data__, i, group))) {\n if (\"__data__\" in node) subnode.__data__ = node.__data__;\n subgroup[i] = subnode;\n }\n }\n }\n\n return new Selection(subgroups, this._parents);\n}\n","import {Selection} from \"./index.js\";\nimport array from \"../array.js\";\nimport selectorAll from \"../selectorAll.js\";\n\nfunction arrayAll(select) {\n return function() {\n return array(select.apply(this, arguments));\n };\n}\n\nexport default function(select) {\n if (typeof select === \"function\") select = arrayAll(select);\n else select = selectorAll(select);\n\n for (var groups = this._groups, m = groups.length, subgroups = [], parents = [], j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n subgroups.push(select.call(node, node.__data__, i, group));\n parents.push(node);\n }\n }\n }\n\n return new Selection(subgroups, parents);\n}\n","import {Selection} from \"./index.js\";\nimport matcher from \"../matcher.js\";\n\nexport default function(match) {\n if (typeof match !== \"function\") match = matcher(match);\n\n for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, subgroup = subgroups[j] = [], node, i = 0; i < n; ++i) {\n if ((node = group[i]) && match.call(node, node.__data__, i, group)) {\n subgroup.push(node);\n }\n }\n }\n\n return new Selection(subgroups, this._parents);\n}\n","import sparse from \"./sparse.js\";\nimport {Selection} from \"./index.js\";\n\nexport default function() {\n return new Selection(this._exit || this._groups.map(sparse), this._parents);\n}\n","export default function(onenter, onupdate, onexit) {\n var enter = this.enter(), update = this, exit = this.exit();\n if (typeof onenter === \"function\") {\n enter = onenter(enter);\n if (enter) enter = enter.selection();\n } else {\n enter = enter.append(onenter + \"\");\n }\n if (onupdate != null) {\n update = onupdate(update);\n if (update) update = update.selection();\n }\n if (onexit == null) exit.remove(); else onexit(exit);\n return enter && update ? enter.merge(update).order() : update;\n}\n","import {Selection} from \"./index.js\";\n\nexport default function(context) {\n var selection = context.selection ? context.selection() : context;\n\n for (var groups0 = this._groups, groups1 = selection._groups, m0 = groups0.length, m1 = groups1.length, m = Math.min(m0, m1), merges = new Array(m0), j = 0; j < m; ++j) {\n for (var group0 = groups0[j], group1 = groups1[j], n = group0.length, merge = merges[j] = new Array(n), node, i = 0; i < n; ++i) {\n if (node = group0[i] || group1[i]) {\n merge[i] = node;\n }\n }\n }\n\n for (; j < m0; ++j) {\n merges[j] = groups0[j];\n }\n\n return new Selection(merges, this._parents);\n}\n","export default function() {\n\n for (var groups = this._groups, j = -1, m = groups.length; ++j < m;) {\n for (var group = groups[j], i = group.length - 1, next = group[i], node; --i >= 0;) {\n if (node = group[i]) {\n if (next && node.compareDocumentPosition(next) ^ 4) next.parentNode.insertBefore(node, next);\n next = node;\n }\n }\n }\n\n return this;\n}\n","export default function() {\n var callback = arguments[0];\n arguments[0] = this;\n callback.apply(null, arguments);\n return this;\n}\n","export default function() {\n return Array.from(this);\n}\n","export default function() {\n\n for (var groups = this._groups, j = 0, m = groups.length; j < m; ++j) {\n for (var group = groups[j], i = 0, n = group.length; i < n; ++i) {\n var node = group[i];\n if (node) return node;\n }\n }\n\n return null;\n}\n","export default function() {\n let size = 0;\n for (const node of this) ++size; // eslint-disable-line no-unused-vars\n return size;\n}\n","export default function() {\n return !this.node();\n}\n","export default function(callback) {\n\n for (var groups = this._groups, j = 0, m = groups.length; j < m; ++j) {\n for (var group = groups[j], i = 0, n = group.length, node; i < n; ++i) {\n if (node = group[i]) callback.call(node, node.__data__, i, group);\n }\n }\n\n return this;\n}\n","import creator from \"../creator.js\";\n\nexport default function(name) {\n var create = typeof name === \"function\" ? name : creator(name);\n return this.select(function() {\n return this.appendChild(create.apply(this, arguments));\n });\n}\n","export default function(value) {\n return arguments.length\n ? this.property(\"__data__\", value)\n : this.node().__data__;\n}\n","export default function*() {\n for (var groups = this._groups, j = 0, m = groups.length; j < m; ++j) {\n for (var group = groups[j], i = 0, n = group.length, node; i < n; ++i) {\n if (node = group[i]) yield node;\n }\n }\n}\n","export default x => () => x;\n","import constant from \"./constant.js\";\n\nfunction linear(a, d) {\n return function(t) {\n return a + t * d;\n };\n}\n\nfunction exponential(a, b, y) {\n return a = Math.pow(a, y), b = Math.pow(b, y) - a, y = 1 / y, function(t) {\n return Math.pow(a + t * b, y);\n };\n}\n\nexport function hue(a, b) {\n var d = b - a;\n return d ? linear(a, d > 180 || d < -180 ? d - 360 * Math.round(d / 360) : d) : constant(isNaN(a) ? b : a);\n}\n\nexport function gamma(y) {\n return (y = +y) === 1 ? nogamma : function(a, b) {\n return b - a ? exponential(a, b, y) : constant(isNaN(a) ? b : a);\n };\n}\n\nexport default function nogamma(a, b) {\n var d = b - a;\n return d ? linear(a, d) : constant(isNaN(a) ? b : a);\n}\n","import {rgb as colorRgb} from \"d3-color\";\nimport basis from \"./basis.js\";\nimport basisClosed from \"./basisClosed.js\";\nimport nogamma, {gamma} from \"./color.js\";\n\nexport default (function rgbGamma(y) {\n var color = gamma(y);\n\n function rgb(start, end) {\n var r = color((start = colorRgb(start)).r, (end = colorRgb(end)).r),\n g = color(start.g, end.g),\n b = color(start.b, end.b),\n opacity = nogamma(start.opacity, end.opacity);\n return function(t) {\n start.r = r(t);\n start.g = g(t);\n start.b = b(t);\n start.opacity = opacity(t);\n return start + \"\";\n };\n }\n\n rgb.gamma = rgbGamma;\n\n return rgb;\n})(1);\n\nfunction rgbSpline(spline) {\n return function(colors) {\n var n = colors.length,\n r = new Array(n),\n g = new Array(n),\n b = new Array(n),\n i, color;\n for (i = 0; i < n; ++i) {\n color = colorRgb(colors[i]);\n r[i] = color.r || 0;\n g[i] = color.g || 0;\n b[i] = color.b || 0;\n }\n r = spline(r);\n g = spline(g);\n b = spline(b);\n color.opacity = 1;\n return function(t) {\n color.r = r(t);\n color.g = g(t);\n color.b = b(t);\n return color + \"\";\n };\n };\n}\n\nexport var rgbBasis = rgbSpline(basis);\nexport var rgbBasisClosed = rgbSpline(basisClosed);\n","export default function(a, b) {\n return a = +a, b = +b, function(t) {\n return a * (1 - t) + b * t;\n };\n}\n","import number from \"./number.js\";\n\nvar reA = /[-+]?(?:\\d+\\.?\\d*|\\.?\\d+)(?:[eE][-+]?\\d+)?/g,\n reB = new RegExp(reA.source, \"g\");\n\nfunction zero(b) {\n return function() {\n return b;\n };\n}\n\nfunction one(b) {\n return function(t) {\n return b(t) + \"\";\n };\n}\n\nexport default function(a, b) {\n var bi = reA.lastIndex = reB.lastIndex = 0, // scan index for next number in b\n am, // current match in a\n bm, // current match in b\n bs, // string preceding current number in b, if any\n i = -1, // index in s\n s = [], // string constants and placeholders\n q = []; // number interpolators\n\n // Coerce inputs to strings.\n a = a + \"\", b = b + \"\";\n\n // Interpolate pairs of numbers in a & b.\n while ((am = reA.exec(a))\n && (bm = reB.exec(b))) {\n if ((bs = bm.index) > bi) { // a string precedes the next number in b\n bs = b.slice(bi, bs);\n if (s[i]) s[i] += bs; // coalesce with previous string\n else s[++i] = bs;\n }\n if ((am = am[0]) === (bm = bm[0])) { // numbers in a & b match\n if (s[i]) s[i] += bm; // coalesce with previous string\n else s[++i] = bm;\n } else { // interpolate non-matching numbers\n s[++i] = null;\n q.push({i: i, x: number(am, bm)});\n }\n bi = reB.lastIndex;\n }\n\n // Add remains of b.\n if (bi < b.length) {\n bs = b.slice(bi);\n if (s[i]) s[i] += bs; // coalesce with previous string\n else s[++i] = bs;\n }\n\n // Special optimization for only a single match.\n // Otherwise, interpolate each of the numbers and rejoin the string.\n return s.length < 2 ? (q[0]\n ? one(q[0].x)\n : zero(b))\n : (b = q.length, function(t) {\n for (var i = 0, o; i < b; ++i) s[(o = q[i]).i] = o.x(t);\n return s.join(\"\");\n });\n}\n","var degrees = 180 / Math.PI;\n\nexport var identity = {\n translateX: 0,\n translateY: 0,\n rotate: 0,\n skewX: 0,\n scaleX: 1,\n scaleY: 1\n};\n\nexport default function(a, b, c, d, e, f) {\n var scaleX, scaleY, skewX;\n if (scaleX = Math.sqrt(a * a + b * b)) a /= scaleX, b /= scaleX;\n if (skewX = a * c + b * d) c -= a * skewX, d -= b * skewX;\n if (scaleY = Math.sqrt(c * c + d * d)) c /= scaleY, d /= scaleY, skewX /= scaleY;\n if (a * d < b * c) a = -a, b = -b, skewX = -skewX, scaleX = -scaleX;\n return {\n translateX: e,\n translateY: f,\n rotate: Math.atan2(b, a) * degrees,\n skewX: Math.atan(skewX) * degrees,\n scaleX: scaleX,\n scaleY: scaleY\n };\n}\n","import decompose, {identity} from \"./decompose.js\";\n\nvar svgNode;\n\n/* eslint-disable no-undef */\nexport function parseCss(value) {\n const m = new (typeof DOMMatrix === \"function\" ? DOMMatrix : WebKitCSSMatrix)(value + \"\");\n return m.isIdentity ? identity : decompose(m.a, m.b, m.c, m.d, m.e, m.f);\n}\n\nexport function parseSvg(value) {\n if (value == null) return identity;\n if (!svgNode) svgNode = document.createElementNS(\"http://www.w3.org/2000/svg\", \"g\");\n svgNode.setAttribute(\"transform\", value);\n if (!(value = svgNode.transform.baseVal.consolidate())) return identity;\n value = value.matrix;\n return decompose(value.a, value.b, value.c, value.d, value.e, value.f);\n}\n","import number from \"../number.js\";\nimport {parseCss, parseSvg} from \"./parse.js\";\n\nfunction interpolateTransform(parse, pxComma, pxParen, degParen) {\n\n function pop(s) {\n return s.length ? s.pop() + \" \" : \"\";\n }\n\n function translate(xa, ya, xb, yb, s, q) {\n if (xa !== xb || ya !== yb) {\n var i = s.push(\"translate(\", null, pxComma, null, pxParen);\n q.push({i: i - 4, x: number(xa, xb)}, {i: i - 2, x: number(ya, yb)});\n } else if (xb || yb) {\n s.push(\"translate(\" + xb + pxComma + yb + pxParen);\n }\n }\n\n function rotate(a, b, s, q) {\n if (a !== b) {\n if (a - b > 180) b += 360; else if (b - a > 180) a += 360; // shortest path\n q.push({i: s.push(pop(s) + \"rotate(\", null, degParen) - 2, x: number(a, b)});\n } else if (b) {\n s.push(pop(s) + \"rotate(\" + b + degParen);\n }\n }\n\n function skewX(a, b, s, q) {\n if (a !== b) {\n q.push({i: s.push(pop(s) + \"skewX(\", null, degParen) - 2, x: number(a, b)});\n } else if (b) {\n s.push(pop(s) + \"skewX(\" + b + degParen);\n }\n }\n\n function scale(xa, ya, xb, yb, s, q) {\n if (xa !== xb || ya !== yb) {\n var i = s.push(pop(s) + \"scale(\", null, \",\", null, \")\");\n q.push({i: i - 4, x: number(xa, xb)}, {i: i - 2, x: number(ya, yb)});\n } else if (xb !== 1 || yb !== 1) {\n s.push(pop(s) + \"scale(\" + xb + \",\" + yb + \")\");\n }\n }\n\n return function(a, b) {\n var s = [], // string constants and placeholders\n q = []; // number interpolators\n a = parse(a), b = parse(b);\n translate(a.translateX, a.translateY, b.translateX, b.translateY, s, q);\n rotate(a.rotate, b.rotate, s, q);\n skewX(a.skewX, b.skewX, s, q);\n scale(a.scaleX, a.scaleY, b.scaleX, b.scaleY, s, q);\n a = b = null; // gc\n return function(t) {\n var i = -1, n = q.length, o;\n while (++i < n) s[(o = q[i]).i] = o.x(t);\n return s.join(\"\");\n };\n };\n}\n\nexport var interpolateTransformCss = interpolateTransform(parseCss, \"px, \", \"px)\", \"deg)\");\nexport var interpolateTransformSvg = interpolateTransform(parseSvg, \", \", \")\", \")\");\n","var frame = 0, // is an animation frame pending?\n timeout = 0, // is a timeout pending?\n interval = 0, // are any timers active?\n pokeDelay = 1000, // how frequently we check for clock skew\n taskHead,\n taskTail,\n clockLast = 0,\n clockNow = 0,\n clockSkew = 0,\n clock = typeof performance === \"object\" && performance.now ? performance : Date,\n setFrame = typeof window === \"object\" && window.requestAnimationFrame ? window.requestAnimationFrame.bind(window) : function(f) { setTimeout(f, 17); };\n\nexport function now() {\n return clockNow || (setFrame(clearNow), clockNow = clock.now() + clockSkew);\n}\n\nfunction clearNow() {\n clockNow = 0;\n}\n\nexport function Timer() {\n this._call =\n this._time =\n this._next = null;\n}\n\nTimer.prototype = timer.prototype = {\n constructor: Timer,\n restart: function(callback, delay, time) {\n if (typeof callback !== \"function\") throw new TypeError(\"callback is not a function\");\n time = (time == null ? now() : +time) + (delay == null ? 0 : +delay);\n if (!this._next && taskTail !== this) {\n if (taskTail) taskTail._next = this;\n else taskHead = this;\n taskTail = this;\n }\n this._call = callback;\n this._time = time;\n sleep();\n },\n stop: function() {\n if (this._call) {\n this._call = null;\n this._time = Infinity;\n sleep();\n }\n }\n};\n\nexport function timer(callback, delay, time) {\n var t = new Timer;\n t.restart(callback, delay, time);\n return t;\n}\n\nexport function timerFlush() {\n now(); // Get the current time, if not already set.\n ++frame; // Pretend we’ve set an alarm, if we haven’t already.\n var t = taskHead, e;\n while (t) {\n if ((e = clockNow - t._time) >= 0) t._call.call(undefined, e);\n t = t._next;\n }\n --frame;\n}\n\nfunction wake() {\n clockNow = (clockLast = clock.now()) + clockSkew;\n frame = timeout = 0;\n try {\n timerFlush();\n } finally {\n frame = 0;\n nap();\n clockNow = 0;\n }\n}\n\nfunction poke() {\n var now = clock.now(), delay = now - clockLast;\n if (delay > pokeDelay) clockSkew -= delay, clockLast = now;\n}\n\nfunction nap() {\n var t0, t1 = taskHead, t2, time = Infinity;\n while (t1) {\n if (t1._call) {\n if (time > t1._time) time = t1._time;\n t0 = t1, t1 = t1._next;\n } else {\n t2 = t1._next, t1._next = null;\n t1 = t0 ? t0._next = t2 : taskHead = t2;\n }\n }\n taskTail = t0;\n sleep(time);\n}\n\nfunction sleep(time) {\n if (frame) return; // Soonest alarm already set, or will be.\n if (timeout) timeout = clearTimeout(timeout);\n var delay = time - clockNow; // Strictly less than if we recomputed clockNow.\n if (delay > 24) {\n if (time < Infinity) timeout = setTimeout(wake, time - clock.now() - clockSkew);\n if (interval) interval = clearInterval(interval);\n } else {\n if (!interval) clockLast = clock.now(), interval = setInterval(poke, pokeDelay);\n frame = 1, setFrame(wake);\n }\n}\n","import {Timer} from \"./timer.js\";\n\nexport default function(callback, delay, time) {\n var t = new Timer;\n delay = delay == null ? 0 : +delay;\n t.restart(elapsed => {\n t.stop();\n callback(elapsed + delay);\n }, delay, time);\n return t;\n}\n","import {dispatch} from \"d3-dispatch\";\nimport {timer, timeout} from \"d3-timer\";\n\nvar emptyOn = dispatch(\"start\", \"end\", \"cancel\", \"interrupt\");\nvar emptyTween = [];\n\nexport var CREATED = 0;\nexport var SCHEDULED = 1;\nexport var STARTING = 2;\nexport var STARTED = 3;\nexport var RUNNING = 4;\nexport var ENDING = 5;\nexport var ENDED = 6;\n\nexport default function(node, name, id, index, group, timing) {\n var schedules = node.__transition;\n if (!schedules) node.__transition = {};\n else if (id in schedules) return;\n create(node, id, {\n name: name,\n index: index, // For context during callback.\n group: group, // For context during callback.\n on: emptyOn,\n tween: emptyTween,\n time: timing.time,\n delay: timing.delay,\n duration: timing.duration,\n ease: timing.ease,\n timer: null,\n state: CREATED\n });\n}\n\nexport function init(node, id) {\n var schedule = get(node, id);\n if (schedule.state > CREATED) throw new Error(\"too late; already scheduled\");\n return schedule;\n}\n\nexport function set(node, id) {\n var schedule = get(node, id);\n if (schedule.state > STARTED) throw new Error(\"too late; already running\");\n return schedule;\n}\n\nexport function get(node, id) {\n var schedule = node.__transition;\n if (!schedule || !(schedule = schedule[id])) throw new Error(\"transition not found\");\n return schedule;\n}\n\nfunction create(node, id, self) {\n var schedules = node.__transition,\n tween;\n\n // Initialize the self timer when the transition is created.\n // Note the actual delay is not known until the first callback!\n schedules[id] = self;\n self.timer = timer(schedule, 0, self.time);\n\n function schedule(elapsed) {\n self.state = SCHEDULED;\n self.timer.restart(start, self.delay, self.time);\n\n // If the elapsed delay is less than our first sleep, start immediately.\n if (self.delay <= elapsed) start(elapsed - self.delay);\n }\n\n function start(elapsed) {\n var i, j, n, o;\n\n // If the state is not SCHEDULED, then we previously errored on start.\n if (self.state !== SCHEDULED) return stop();\n\n for (i in schedules) {\n o = schedules[i];\n if (o.name !== self.name) continue;\n\n // While this element already has a starting transition during this frame,\n // defer starting an interrupting transition until that transition has a\n // chance to tick (and possibly end); see d3/d3-transition#54!\n if (o.state === STARTED) return timeout(start);\n\n // Interrupt the active transition, if any.\n if (o.state === RUNNING) {\n o.state = ENDED;\n o.timer.stop();\n o.on.call(\"interrupt\", node, node.__data__, o.index, o.group);\n delete schedules[i];\n }\n\n // Cancel any pre-empted transitions.\n else if (+i < id) {\n o.state = ENDED;\n o.timer.stop();\n o.on.call(\"cancel\", node, node.__data__, o.index, o.group);\n delete schedules[i];\n }\n }\n\n // Defer the first tick to end of the current frame; see d3/d3#1576.\n // Note the transition may be canceled after start and before the first tick!\n // Note this must be scheduled before the start event; see d3/d3-transition#16!\n // Assuming this is successful, subsequent callbacks go straight to tick.\n timeout(function() {\n if (self.state === STARTED) {\n self.state = RUNNING;\n self.timer.restart(tick, self.delay, self.time);\n tick(elapsed);\n }\n });\n\n // Dispatch the start event.\n // Note this must be done before the tween are initialized.\n self.state = STARTING;\n self.on.call(\"start\", node, node.__data__, self.index, self.group);\n if (self.state !== STARTING) return; // interrupted\n self.state = STARTED;\n\n // Initialize the tween, deleting null tween.\n tween = new Array(n = self.tween.length);\n for (i = 0, j = -1; i < n; ++i) {\n if (o = self.tween[i].value.call(node, node.__data__, self.index, self.group)) {\n tween[++j] = o;\n }\n }\n tween.length = j + 1;\n }\n\n function tick(elapsed) {\n var t = elapsed < self.duration ? self.ease.call(null, elapsed / self.duration) : (self.timer.restart(stop), self.state = ENDING, 1),\n i = -1,\n n = tween.length;\n\n while (++i < n) {\n tween[i].call(node, t);\n }\n\n // Dispatch the end event.\n if (self.state === ENDING) {\n self.on.call(\"end\", node, node.__data__, self.index, self.group);\n stop();\n }\n }\n\n function stop() {\n self.state = ENDED;\n self.timer.stop();\n delete schedules[id];\n for (var i in schedules) return; // eslint-disable-line no-unused-vars\n delete node.__transition;\n }\n}\n","import {get, set} from \"./schedule.js\";\n\nfunction tweenRemove(id, name) {\n var tween0, tween1;\n return function() {\n var schedule = set(this, id),\n tween = schedule.tween;\n\n // If this node shared tween with the previous node,\n // just assign the updated shared tween and we’re done!\n // Otherwise, copy-on-write.\n if (tween !== tween0) {\n tween1 = tween0 = tween;\n for (var i = 0, n = tween1.length; i < n; ++i) {\n if (tween1[i].name === name) {\n tween1 = tween1.slice();\n tween1.splice(i, 1);\n break;\n }\n }\n }\n\n schedule.tween = tween1;\n };\n}\n\nfunction tweenFunction(id, name, value) {\n var tween0, tween1;\n if (typeof value !== \"function\") throw new Error;\n return function() {\n var schedule = set(this, id),\n tween = schedule.tween;\n\n // If this node shared tween with the previous node,\n // just assign the updated shared tween and we’re done!\n // Otherwise, copy-on-write.\n if (tween !== tween0) {\n tween1 = (tween0 = tween).slice();\n for (var t = {name: name, value: value}, i = 0, n = tween1.length; i < n; ++i) {\n if (tween1[i].name === name) {\n tween1[i] = t;\n break;\n }\n }\n if (i === n) tween1.push(t);\n }\n\n schedule.tween = tween1;\n };\n}\n\nexport default function(name, value) {\n var id = this._id;\n\n name += \"\";\n\n if (arguments.length < 2) {\n var tween = get(this.node(), id).tween;\n for (var i = 0, n = tween.length, t; i < n; ++i) {\n if ((t = tween[i]).name === name) {\n return t.value;\n }\n }\n return null;\n }\n\n return this.each((value == null ? tweenRemove : tweenFunction)(id, name, value));\n}\n\nexport function tweenValue(transition, name, value) {\n var id = transition._id;\n\n transition.each(function() {\n var schedule = set(this, id);\n (schedule.value || (schedule.value = {}))[name] = value.apply(this, arguments);\n });\n\n return function(node) {\n return get(node, id).value[name];\n };\n}\n","import {color} from \"d3-color\";\nimport {interpolateNumber, interpolateRgb, interpolateString} from \"d3-interpolate\";\n\nexport default function(a, b) {\n var c;\n return (typeof b === \"number\" ? interpolateNumber\n : b instanceof color ? interpolateRgb\n : (c = color(b)) ? (b = c, interpolateRgb)\n : interpolateString)(a, b);\n}\n","import {interpolateTransformSvg as interpolateTransform} from \"d3-interpolate\";\nimport {namespace} from \"d3-selection\";\nimport {tweenValue} from \"./tween.js\";\nimport interpolate from \"./interpolate.js\";\n\nfunction attrRemove(name) {\n return function() {\n this.removeAttribute(name);\n };\n}\n\nfunction attrRemoveNS(fullname) {\n return function() {\n this.removeAttributeNS(fullname.space, fullname.local);\n };\n}\n\nfunction attrConstant(name, interpolate, value1) {\n var string00,\n string1 = value1 + \"\",\n interpolate0;\n return function() {\n var string0 = this.getAttribute(name);\n return string0 === string1 ? null\n : string0 === string00 ? interpolate0\n : interpolate0 = interpolate(string00 = string0, value1);\n };\n}\n\nfunction attrConstantNS(fullname, interpolate, value1) {\n var string00,\n string1 = value1 + \"\",\n interpolate0;\n return function() {\n var string0 = this.getAttributeNS(fullname.space, fullname.local);\n return string0 === string1 ? null\n : string0 === string00 ? interpolate0\n : interpolate0 = interpolate(string00 = string0, value1);\n };\n}\n\nfunction attrFunction(name, interpolate, value) {\n var string00,\n string10,\n interpolate0;\n return function() {\n var string0, value1 = value(this), string1;\n if (value1 == null) return void this.removeAttribute(name);\n string0 = this.getAttribute(name);\n string1 = value1 + \"\";\n return string0 === string1 ? null\n : string0 === string00 && string1 === string10 ? interpolate0\n : (string10 = string1, interpolate0 = interpolate(string00 = string0, value1));\n };\n}\n\nfunction attrFunctionNS(fullname, interpolate, value) {\n var string00,\n string10,\n interpolate0;\n return function() {\n var string0, value1 = value(this), string1;\n if (value1 == null) return void this.removeAttributeNS(fullname.space, fullname.local);\n string0 = this.getAttributeNS(fullname.space, fullname.local);\n string1 = value1 + \"\";\n return string0 === string1 ? null\n : string0 === string00 && string1 === string10 ? interpolate0\n : (string10 = string1, interpolate0 = interpolate(string00 = string0, value1));\n };\n}\n\nexport default function(name, value) {\n var fullname = namespace(name), i = fullname === \"transform\" ? interpolateTransform : interpolate;\n return this.attrTween(name, typeof value === \"function\"\n ? (fullname.local ? attrFunctionNS : attrFunction)(fullname, i, tweenValue(this, \"attr.\" + name, value))\n : value == null ? (fullname.local ? attrRemoveNS : attrRemove)(fullname)\n : (fullname.local ? attrConstantNS : attrConstant)(fullname, i, value));\n}\n","import {namespace} from \"d3-selection\";\n\nfunction attrInterpolate(name, i) {\n return function(t) {\n this.setAttribute(name, i.call(this, t));\n };\n}\n\nfunction attrInterpolateNS(fullname, i) {\n return function(t) {\n this.setAttributeNS(fullname.space, fullname.local, i.call(this, t));\n };\n}\n\nfunction attrTweenNS(fullname, value) {\n var t0, i0;\n function tween() {\n var i = value.apply(this, arguments);\n if (i !== i0) t0 = (i0 = i) && attrInterpolateNS(fullname, i);\n return t0;\n }\n tween._value = value;\n return tween;\n}\n\nfunction attrTween(name, value) {\n var t0, i0;\n function tween() {\n var i = value.apply(this, arguments);\n if (i !== i0) t0 = (i0 = i) && attrInterpolate(name, i);\n return t0;\n }\n tween._value = value;\n return tween;\n}\n\nexport default function(name, value) {\n var key = \"attr.\" + name;\n if (arguments.length < 2) return (key = this.tween(key)) && key._value;\n if (value == null) return this.tween(key, null);\n if (typeof value !== \"function\") throw new Error;\n var fullname = namespace(name);\n return this.tween(key, (fullname.local ? attrTweenNS : attrTween)(fullname, value));\n}\n","import {get, init} from \"./schedule.js\";\n\nfunction delayFunction(id, value) {\n return function() {\n init(this, id).delay = +value.apply(this, arguments);\n };\n}\n\nfunction delayConstant(id, value) {\n return value = +value, function() {\n init(this, id).delay = value;\n };\n}\n\nexport default function(value) {\n var id = this._id;\n\n return arguments.length\n ? this.each((typeof value === \"function\"\n ? delayFunction\n : delayConstant)(id, value))\n : get(this.node(), id).delay;\n}\n","import {get, set} from \"./schedule.js\";\n\nfunction durationFunction(id, value) {\n return function() {\n set(this, id).duration = +value.apply(this, arguments);\n };\n}\n\nfunction durationConstant(id, value) {\n return value = +value, function() {\n set(this, id).duration = value;\n };\n}\n\nexport default function(value) {\n var id = this._id;\n\n return arguments.length\n ? this.each((typeof value === \"function\"\n ? durationFunction\n : durationConstant)(id, value))\n : get(this.node(), id).duration;\n}\n","import {get, set} from \"./schedule.js\";\n\nfunction easeConstant(id, value) {\n if (typeof value !== \"function\") throw new Error;\n return function() {\n set(this, id).ease = value;\n };\n}\n\nexport default function(value) {\n var id = this._id;\n\n return arguments.length\n ? this.each(easeConstant(id, value))\n : get(this.node(), id).ease;\n}\n","import {get, set, init} from \"./schedule.js\";\n\nfunction start(name) {\n return (name + \"\").trim().split(/^|\\s+/).every(function(t) {\n var i = t.indexOf(\".\");\n if (i >= 0) t = t.slice(0, i);\n return !t || t === \"start\";\n });\n}\n\nfunction onFunction(id, name, listener) {\n var on0, on1, sit = start(name) ? init : set;\n return function() {\n var schedule = sit(this, id),\n on = schedule.on;\n\n // If this node shared a dispatch with the previous node,\n // just assign the updated shared dispatch and we’re done!\n // Otherwise, copy-on-write.\n if (on !== on0) (on1 = (on0 = on).copy()).on(name, listener);\n\n schedule.on = on1;\n };\n}\n\nexport default function(name, listener) {\n var id = this._id;\n\n return arguments.length < 2\n ? get(this.node(), id).on.on(name)\n : this.each(onFunction(id, name, listener));\n}\n","import {selection} from \"d3-selection\";\n\nvar Selection = selection.prototype.constructor;\n\nexport default function() {\n return new Selection(this._groups, this._parents);\n}\n","import {interpolateTransformCss as interpolateTransform} from \"d3-interpolate\";\nimport {style} from \"d3-selection\";\nimport {set} from \"./schedule.js\";\nimport {tweenValue} from \"./tween.js\";\nimport interpolate from \"./interpolate.js\";\n\nfunction styleNull(name, interpolate) {\n var string00,\n string10,\n interpolate0;\n return function() {\n var string0 = style(this, name),\n string1 = (this.style.removeProperty(name), style(this, name));\n return string0 === string1 ? null\n : string0 === string00 && string1 === string10 ? interpolate0\n : interpolate0 = interpolate(string00 = string0, string10 = string1);\n };\n}\n\nfunction styleRemove(name) {\n return function() {\n this.style.removeProperty(name);\n };\n}\n\nfunction styleConstant(name, interpolate, value1) {\n var string00,\n string1 = value1 + \"\",\n interpolate0;\n return function() {\n var string0 = style(this, name);\n return string0 === string1 ? null\n : string0 === string00 ? interpolate0\n : interpolate0 = interpolate(string00 = string0, value1);\n };\n}\n\nfunction styleFunction(name, interpolate, value) {\n var string00,\n string10,\n interpolate0;\n return function() {\n var string0 = style(this, name),\n value1 = value(this),\n string1 = value1 + \"\";\n if (value1 == null) string1 = value1 = (this.style.removeProperty(name), style(this, name));\n return string0 === string1 ? null\n : string0 === string00 && string1 === string10 ? interpolate0\n : (string10 = string1, interpolate0 = interpolate(string00 = string0, value1));\n };\n}\n\nfunction styleMaybeRemove(id, name) {\n var on0, on1, listener0, key = \"style.\" + name, event = \"end.\" + key, remove;\n return function() {\n var schedule = set(this, id),\n on = schedule.on,\n listener = schedule.value[key] == null ? remove || (remove = styleRemove(name)) : undefined;\n\n // If this node shared a dispatch with the previous node,\n // just assign the updated shared dispatch and we’re done!\n // Otherwise, copy-on-write.\n if (on !== on0 || listener0 !== listener) (on1 = (on0 = on).copy()).on(event, listener0 = listener);\n\n schedule.on = on1;\n };\n}\n\nexport default function(name, value, priority) {\n var i = (name += \"\") === \"transform\" ? interpolateTransform : interpolate;\n return value == null ? this\n .styleTween(name, styleNull(name, i))\n .on(\"end.style.\" + name, styleRemove(name))\n : typeof value === \"function\" ? this\n .styleTween(name, styleFunction(name, i, tweenValue(this, \"style.\" + name, value)))\n .each(styleMaybeRemove(this._id, name))\n : this\n .styleTween(name, styleConstant(name, i, value), priority)\n .on(\"end.style.\" + name, null);\n}\n","function styleInterpolate(name, i, priority) {\n return function(t) {\n this.style.setProperty(name, i.call(this, t), priority);\n };\n}\n\nfunction styleTween(name, value, priority) {\n var t, i0;\n function tween() {\n var i = value.apply(this, arguments);\n if (i !== i0) t = (i0 = i) && styleInterpolate(name, i, priority);\n return t;\n }\n tween._value = value;\n return tween;\n}\n\nexport default function(name, value, priority) {\n var key = \"style.\" + (name += \"\");\n if (arguments.length < 2) return (key = this.tween(key)) && key._value;\n if (value == null) return this.tween(key, null);\n if (typeof value !== \"function\") throw new Error;\n return this.tween(key, styleTween(name, value, priority == null ? \"\" : priority));\n}\n","function textInterpolate(i) {\n return function(t) {\n this.textContent = i.call(this, t);\n };\n}\n\nfunction textTween(value) {\n var t0, i0;\n function tween() {\n var i = value.apply(this, arguments);\n if (i !== i0) t0 = (i0 = i) && textInterpolate(i);\n return t0;\n }\n tween._value = value;\n return tween;\n}\n\nexport default function(value) {\n var key = \"text\";\n if (arguments.length < 1) return (key = this.tween(key)) && key._value;\n if (value == null) return this.tween(key, null);\n if (typeof value !== \"function\") throw new Error;\n return this.tween(key, textTween(value));\n}\n","import {selection} from \"d3-selection\";\nimport transition_attr from \"./attr.js\";\nimport transition_attrTween from \"./attrTween.js\";\nimport transition_delay from \"./delay.js\";\nimport transition_duration from \"./duration.js\";\nimport transition_ease from \"./ease.js\";\nimport transition_easeVarying from \"./easeVarying.js\";\nimport transition_filter from \"./filter.js\";\nimport transition_merge from \"./merge.js\";\nimport transition_on from \"./on.js\";\nimport transition_remove from \"./remove.js\";\nimport transition_select from \"./select.js\";\nimport transition_selectAll from \"./selectAll.js\";\nimport transition_selection from \"./selection.js\";\nimport transition_style from \"./style.js\";\nimport transition_styleTween from \"./styleTween.js\";\nimport transition_text from \"./text.js\";\nimport transition_textTween from \"./textTween.js\";\nimport transition_transition from \"./transition.js\";\nimport transition_tween from \"./tween.js\";\nimport transition_end from \"./end.js\";\n\nvar id = 0;\n\nexport function Transition(groups, parents, name, id) {\n this._groups = groups;\n this._parents = parents;\n this._name = name;\n this._id = id;\n}\n\nexport default function transition(name) {\n return selection().transition(name);\n}\n\nexport function newId() {\n return ++id;\n}\n\nvar selection_prototype = selection.prototype;\n\nTransition.prototype = transition.prototype = {\n constructor: Transition,\n select: transition_select,\n selectAll: transition_selectAll,\n selectChild: selection_prototype.selectChild,\n selectChildren: selection_prototype.selectChildren,\n filter: transition_filter,\n merge: transition_merge,\n selection: transition_selection,\n transition: transition_transition,\n call: selection_prototype.call,\n nodes: selection_prototype.nodes,\n node: selection_prototype.node,\n size: selection_prototype.size,\n empty: selection_prototype.empty,\n each: selection_prototype.each,\n on: transition_on,\n attr: transition_attr,\n attrTween: transition_attrTween,\n style: transition_style,\n styleTween: transition_styleTween,\n text: transition_text,\n textTween: transition_textTween,\n remove: transition_remove,\n tween: transition_tween,\n delay: transition_delay,\n duration: transition_duration,\n ease: transition_ease,\n easeVarying: transition_easeVarying,\n end: transition_end,\n [Symbol.iterator]: selection_prototype[Symbol.iterator]\n};\n","import {selector} from \"d3-selection\";\nimport {Transition} from \"./index.js\";\nimport schedule, {get} from \"./schedule.js\";\n\nexport default function(select) {\n var name = this._name,\n id = this._id;\n\n if (typeof select !== \"function\") select = selector(select);\n\n for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, subgroup = subgroups[j] = new Array(n), node, subnode, i = 0; i < n; ++i) {\n if ((node = group[i]) && (subnode = select.call(node, node.__data__, i, group))) {\n if (\"__data__\" in node) subnode.__data__ = node.__data__;\n subgroup[i] = subnode;\n schedule(subgroup[i], name, id, i, subgroup, get(node, id));\n }\n }\n }\n\n return new Transition(subgroups, this._parents, name, id);\n}\n","import {selectorAll} from \"d3-selection\";\nimport {Transition} from \"./index.js\";\nimport schedule, {get} from \"./schedule.js\";\n\nexport default function(select) {\n var name = this._name,\n id = this._id;\n\n if (typeof select !== \"function\") select = selectorAll(select);\n\n for (var groups = this._groups, m = groups.length, subgroups = [], parents = [], j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n for (var children = select.call(node, node.__data__, i, group), child, inherit = get(node, id), k = 0, l = children.length; k < l; ++k) {\n if (child = children[k]) {\n schedule(child, name, id, k, children, inherit);\n }\n }\n subgroups.push(children);\n parents.push(node);\n }\n }\n }\n\n return new Transition(subgroups, parents, name, id);\n}\n","import {matcher} from \"d3-selection\";\nimport {Transition} from \"./index.js\";\n\nexport default function(match) {\n if (typeof match !== \"function\") match = matcher(match);\n\n for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, subgroup = subgroups[j] = [], node, i = 0; i < n; ++i) {\n if ((node = group[i]) && match.call(node, node.__data__, i, group)) {\n subgroup.push(node);\n }\n }\n }\n\n return new Transition(subgroups, this._parents, this._name, this._id);\n}\n","import {Transition} from \"./index.js\";\n\nexport default function(transition) {\n if (transition._id !== this._id) throw new Error;\n\n for (var groups0 = this._groups, groups1 = transition._groups, m0 = groups0.length, m1 = groups1.length, m = Math.min(m0, m1), merges = new Array(m0), j = 0; j < m; ++j) {\n for (var group0 = groups0[j], group1 = groups1[j], n = group0.length, merge = merges[j] = new Array(n), node, i = 0; i < n; ++i) {\n if (node = group0[i] || group1[i]) {\n merge[i] = node;\n }\n }\n }\n\n for (; j < m0; ++j) {\n merges[j] = groups0[j];\n }\n\n return new Transition(merges, this._parents, this._name, this._id);\n}\n","import {Transition, newId} from \"./index.js\";\nimport schedule, {get} from \"./schedule.js\";\n\nexport default function() {\n var name = this._name,\n id0 = this._id,\n id1 = newId();\n\n for (var groups = this._groups, m = groups.length, j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n var inherit = get(node, id0);\n schedule(node, name, id1, i, group, {\n time: inherit.time + inherit.delay + inherit.duration,\n delay: 0,\n duration: inherit.duration,\n ease: inherit.ease\n });\n }\n }\n }\n\n return new Transition(groups, this._parents, name, id1);\n}\n","import {tweenValue} from \"./tween.js\";\n\nfunction textConstant(value) {\n return function() {\n this.textContent = value;\n };\n}\n\nfunction textFunction(value) {\n return function() {\n var value1 = value(this);\n this.textContent = value1 == null ? \"\" : value1;\n };\n}\n\nexport default function(value) {\n return this.tween(\"text\", typeof value === \"function\"\n ? textFunction(tweenValue(this, \"text\", value))\n : textConstant(value == null ? \"\" : value + \"\"));\n}\n","function removeFunction(id) {\n return function() {\n var parent = this.parentNode;\n for (var i in this.__transition) if (+i !== id) return;\n if (parent) parent.removeChild(this);\n };\n}\n\nexport default function() {\n return this.on(\"end.remove\", removeFunction(this._id));\n}\n","import {set} from \"./schedule.js\";\n\nfunction easeVarying(id, value) {\n return function() {\n var v = value.apply(this, arguments);\n if (typeof v !== \"function\") throw new Error;\n set(this, id).ease = v;\n };\n}\n\nexport default function(value) {\n if (typeof value !== \"function\") throw new Error;\n return this.each(easeVarying(this._id, value));\n}\n","import {set} from \"./schedule.js\";\n\nexport default function() {\n var on0, on1, that = this, id = that._id, size = that.size();\n return new Promise(function(resolve, reject) {\n var cancel = {value: reject},\n end = {value: function() { if (--size === 0) resolve(); }};\n\n that.each(function() {\n var schedule = set(this, id),\n on = schedule.on;\n\n // If this node shared a dispatch with the previous node,\n // just assign the updated shared dispatch and we’re done!\n // Otherwise, copy-on-write.\n if (on !== on0) {\n on1 = (on0 = on).copy();\n on1._.cancel.push(cancel);\n on1._.interrupt.push(cancel);\n on1._.end.push(end);\n }\n\n schedule.on = on1;\n });\n\n // The selection was empty, resolve end immediately\n if (size === 0) resolve();\n });\n}\n","import {Transition, newId} from \"../transition/index.js\";\nimport schedule from \"../transition/schedule.js\";\nimport {easeCubicInOut} from \"d3-ease\";\nimport {now} from \"d3-timer\";\n\nvar defaultTiming = {\n time: null, // Set on use.\n delay: 0,\n duration: 250,\n ease: easeCubicInOut\n};\n\nfunction inherit(node, id) {\n var timing;\n while (!(timing = node.__transition) || !(timing = timing[id])) {\n if (!(node = node.parentNode)) {\n throw new Error(`transition ${id} not found`);\n }\n }\n return timing;\n}\n\nexport default function(name) {\n var id,\n timing;\n\n if (name instanceof Transition) {\n id = name._id, name = name._name;\n } else {\n id = newId(), (timing = defaultTiming).time = now(), name = name == null ? null : name + \"\";\n }\n\n for (var groups = this._groups, m = groups.length, j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n schedule(node, name, id, i, group, timing || inherit(node, id));\n }\n }\n }\n\n return new Transition(groups, this._parents, name, id);\n}\n","export function cubicIn(t) {\n return t * t * t;\n}\n\nexport function cubicOut(t) {\n return --t * t * t + 1;\n}\n\nexport function cubicInOut(t) {\n return ((t *= 2) <= 1 ? t * t * t : (t -= 2) * t * t + 2) / 2;\n}\n","export function Transform(k, x, y) {\n this.k = k;\n this.x = x;\n this.y = y;\n}\n\nTransform.prototype = {\n constructor: Transform,\n scale: function(k) {\n return k === 1 ? this : new Transform(this.k * k, this.x, this.y);\n },\n translate: function(x, y) {\n return x === 0 & y === 0 ? this : new Transform(this.k, this.x + this.k * x, this.y + this.k * y);\n },\n apply: function(point) {\n return [point[0] * this.k + this.x, point[1] * this.k + this.y];\n },\n applyX: function(x) {\n return x * this.k + this.x;\n },\n applyY: function(y) {\n return y * this.k + this.y;\n },\n invert: function(location) {\n return [(location[0] - this.x) / this.k, (location[1] - this.y) / this.k];\n },\n invertX: function(x) {\n return (x - this.x) / this.k;\n },\n invertY: function(y) {\n return (y - this.y) / this.k;\n },\n rescaleX: function(x) {\n return x.copy().domain(x.range().map(this.invertX, this).map(x.invert, x));\n },\n rescaleY: function(y) {\n return y.copy().domain(y.range().map(this.invertY, this).map(y.invert, y));\n },\n toString: function() {\n return \"translate(\" + this.x + \",\" + this.y + \") scale(\" + this.k + \")\";\n }\n};\n\nexport var identity = new Transform(1, 0, 0);\n\ntransform.prototype = Transform.prototype;\n\nexport default function transform(node) {\n while (!node.__zoom) if (!(node = node.parentNode)) return identity;\n return node.__zoom;\n}\n","import {selection} from \"d3-selection\";\nimport selection_interrupt from \"./interrupt.js\";\nimport selection_transition from \"./transition.js\";\n\nselection.prototype.interrupt = selection_interrupt;\nselection.prototype.transition = selection_transition;\n","import interrupt from \"../interrupt.js\";\n\nexport default function(name) {\n return this.each(function() {\n interrupt(this, name);\n });\n}\n","import {STARTING, ENDING, ENDED} from \"./transition/schedule.js\";\n\nexport default function(node, name) {\n var schedules = node.__transition,\n schedule,\n active,\n empty = true,\n i;\n\n if (!schedules) return;\n\n name = name == null ? null : name + \"\";\n\n for (i in schedules) {\n if ((schedule = schedules[i]).name !== name) { empty = false; continue; }\n active = schedule.state > STARTING && schedule.state < ENDING;\n schedule.state = ENDED;\n schedule.timer.stop();\n schedule.on.call(active ? \"interrupt\" : \"cancel\", node, node.__data__, schedule.index, schedule.group);\n delete schedules[i];\n }\n\n if (empty) delete node.__transition;\n}\n","\nimport {\n LitElement,\n css,\n svg,\n unsafeCSS,\n} from 'lit';\nimport * as d3 from 'd3';\n\n/*\n DecidablesElement Base Class - Not intended for instantiation!\n <decidables-element>\n*/\nexport default class DecidablesElement extends LitElement {\n getComputedStyleValue(property) {\n return getComputedStyle(this).getPropertyValue(property).trim();\n }\n\n firstUpdated(changedProperties) {\n super.firstUpdated(changedProperties);\n\n // Use focus highlighting if keyboard is used at all\n d3.select(this.renderRoot.host)\n .classed('keyboard', true)\n .on('mousemove.keyboard touchstart.keyboard', (event) => {\n const element = event.currentTarget;\n d3.select(element.renderRoot.host)\n .classed('keyboard', false)\n .on('mousemove.keyboard touchstart.keyboard', null);\n })\n .on('keydown.keyboard', (event) => {\n const element = event.currentTarget;\n d3.select(element.renderRoot.host)\n .classed('keyboard', true)\n .on('keydown.keyboard mousemove.keyboard touchstart.keyboard', null);\n });\n }\n\n static get greys() {\n const grey = '#999999';\n const greys = {};\n greys.white = '#ffffff';\n greys.light75 = d3.interpolateRgb(grey, '#ffffff')(0.75);\n greys.light50 = d3.interpolateRgb(grey, '#ffffff')(0.5);\n greys.light25 = d3.interpolateRgb(grey, '#ffffff')(0.25);\n greys.grey = grey;\n greys.dark25 = d3.interpolateRgb(grey, '#000000')(0.25);\n greys.dark50 = d3.interpolateRgb(grey, '#000000')(0.5);\n greys.dark75 = d3.interpolateRgb(grey, '#000000')(0.75);\n greys.black = '#000000';\n return greys;\n }\n\n static get shadows() {\n // Material Design elevation styles\n // References:\n // https://github.com/material-components/material-components-web/tree/master/packages/mdc-elevation\n // https://codepen.io/hanger/pen/yOGvQp\n /* eslint-disable key-spacing, object-curly-newline */\n return {\n elevations: [0, 2, 4, 8, 16],\n baselineColor: '#000000',\n baselineColorString: '0, 0, 0',\n inverseBaselineColor: '#FFFFFF',\n inverseBaselineColorString: '255, 255, 255',\n opacityUmbra: 0.2,\n opacityPenumbra: 0.14,\n opacityAmbient: 0.12,\n opacityBoost: 0.2,\n mapUmbra: {// $mdc-elevation-umbra-map\n 0: {x: 0, y: 0, b: 0, s: 0}, // offset-x, offset-y, blur-radius, spread-radius\n 2: {x: 0, y: 3, b: 1, s: -2},\n 4: {x: 0, y: 2, b: 4, s: -1},\n 8: {x: 0, y: 5, b: 5, s: -3},\n 16: {x: 0, y: 8, b: 10, s: -5},\n },\n mapPenumbra: {// $mdc-elevation-penumbra-map\n 0: {x: 0, y: 0, b: 0, s: 0}, // offset-x, offset-y, blur-radius, spread-radius\n 2: {x: 0, y: 2, b: 2, s: 0},\n 4: {x: 0, y: 4, b: 5, s: 0},\n 8: {x: 0, y: 8, b: 10, s: 1},\n 16: {x: 0, y: 16, b: 24, s: 2},\n },\n mapAmbient: {// $mdc-elevation-ambient-map\n 0: {x: 0, y: 0, b: 0, s: 0}, // offset-x, offset-y, blur-radius, spread-radius\n 2: {x: 0, y: 1, b: 5, s: 0},\n 4: {x: 0, y: 1, b: 10, s: 0},\n 8: {x: 0, y: 3, b: 14, s: 2},\n 16: {x: 0, y: 6, b: 30, s: 5},\n },\n };\n /* eslint-enable key-spacing, object-curly-newline */\n }\n\n static cssBoxShadow(elevation, rotate = false, inverse = false) {\n const umbraO = this.shadows.opacityUmbra + this.shadows.opacityBoost;\n const penumbraO = this.shadows.opacityPenumbra + this.shadows.opacityBoost;\n const ambientO = this.shadows.opacityAmbient + this.shadows.opacityBoost;\n\n const umbraC = (inverse)\n ? `rgba(${this.shadows.inverseBaselineColorString}, ${umbraO})`\n : `rgba(${this.shadows.baselineColorString}, ${umbraO})`;\n const penumbraC = (inverse)\n ? `rgba(${this.shadows.inverseBaselineColorString}, ${penumbraO})`\n : `rgba(${this.shadows.baselineColorString}, ${penumbraO})`;\n const ambientC = (inverse)\n ? `rgba(${this.shadows.inverseBaselineColorString}, ${ambientO})`\n : `rgba(${this.shadows.baselineColorString}, ${ambientO})`;\n\n const umbraM = this.shadows.mapUmbra[elevation];\n const penumbraM = this.shadows.mapPenumbra[elevation];\n const ambientM = this.shadows.mapAmbient[elevation];\n\n const umbraS = (rotate)\n ? `${-umbraM.y}px ${umbraM.y / 2}px ${umbraM.b}px ${umbraM.s}px`\n : `${umbraM.y / 2}px ${umbraM.y}px ${umbraM.b}px ${umbraM.s}px`;\n const penumbraS = (rotate)\n ? `${-penumbraM.y}px ${penumbraM.y / 2}px ${penumbraM.b}px ${penumbraM.s}px`\n : `${penumbraM.y / 2}px ${penumbraM.y}px ${penumbraM.b}px ${penumbraM.s}px`;\n const ambientS = (rotate)\n ? `${-ambientM.y}px ${ambientM.y / 2}px ${ambientM.b}px ${ambientM.s}px`\n : `${ambientM.y / 2}px ${ambientM.y}px ${ambientM.b}px ${ambientM.s}px`;\n\n return `${umbraS} ${umbraC}, ${penumbraS} ${penumbraC}, ${ambientS} ${ambientC}`;\n }\n\n static get svgFilters() {\n const shadows = DecidablesElement.shadows; /* eslint-disable-line prefer-destructuring */\n\n const filters = shadows.elevations.map((z) => {\n return svg`\n <filter id=${`shadow-${z}`} x=\"-250%\" y=\"-250%\" width=\"600%\" height=\"600%\">\n <feComponentTransfer in=\"SourceAlpha\" result=\"solid\">\n <feFuncA type=\"table\" tableValues=\"0 1 1\"/>\n </feComponentTransfer>\n <feOffset in=\"solid\" result=\"offU\" dx=${shadows.mapUmbra[z].y / 2} dy=${shadows.mapUmbra[z].y} />\n <feOffset in=\"solid\" result=\"offP\" dx=${shadows.mapPenumbra[z].y / 2} dy=${shadows.mapPenumbra[z].y} />\n <feOffset in=\"solid\" result=\"offA\" dx=${shadows.mapAmbient[z].y / 2} dy=${shadows.mapAmbient[z].y} />\n ${(shadows.mapUmbra[z].s === 0)\n ? svg``\n : svg`<feMorphology in=\"offU\" result=\"spreadU\" operator=${(shadows.mapUmbra[z].s > 0) ? 'dilate' : 'erode'} radius=${Math.abs(shadows.mapUmbra[z].s)} />`\n }\n ${(shadows.mapPenumbra[z].s === 0)\n ? svg``\n : svg`<feMorphology in=\"offP\" result=\"spreadP\" operator=${(shadows.mapPenumbra[z].s > 0) ? 'dilate' : 'erode'} radius=${Math.abs(shadows.mapPenumbra[z].s)} />`\n }\n ${(shadows.mapAmbient[z].s === 0)\n ? svg``\n : svg`<feMorphology in=\"offA\" result=\"spreadA\" operator=${(shadows.mapAmbient[z].s > 0) ? 'dilate' : 'erode'} radius=${Math.abs(shadows.mapAmbient[z].s)} />`\n }\n <feGaussianBlur in=${(shadows.mapUmbra[z].s === 0) ? 'offU' : 'spreadU'} result=\"blurU\" stdDeviation=${shadows.mapUmbra[z].b / 2} />\n <feGaussianBlur in=${(shadows.mapPenumbra[z].s === 0) ? 'offP' : 'spreadP'} result=\"blurP\" stdDeviation=${shadows.mapPenumbra[z].b / 2} />\n <feGaussianBlur in=${(shadows.mapAmbient[z].s === 0) ? 'offA' : 'spreadA'} result=\"blurA\" stdDeviation=${shadows.mapAmbient[z].b / 2} />\n <feFlood in=\"SourceGraphic\" result=\"opU\" flood-color=${shadows.baselineColor} flood-opacity=${shadows.opacityUmbra + shadows.opacityBoost} />\n <feFlood in=\"SourceGraphic\" result=\"opP\" flood-color=${shadows.baselineColor} flood-opacity=${shadows.opacityPenumbra + shadows.opacityBoost} />\n <feFlood in=\"SourceGraphic\" result=\"opA\" flood-color=${shadows.baselineColor} flood-opacity=${shadows.opacityAmbient + shadows.opacityBoost} />\n <feComposite in=\"opU\" in2=\"blurU\" result=\"shU\" operator=\"in\" />\n <feComposite in=\"opP\" in2=\"blurP\" result=\"shP\" operator=\"in\" />\n <feComposite in=\"opA\" in2=\"blurA\" result=\"shA\" operator=\"in\" />\n <feMorphology in=\"solid\" result=\"smaller\" operator=\"erode\" radius=\"1\" />\n <feComposite in=\"shU\" in2=\"smaller\" result=\"finalU\" operator=\"out\" />\n <feComposite in=\"shP\" in2=\"smaller\" result=\"finalP\" operator=\"out\" />\n <feComposite in=\"shA\" in2=\"smaller\" result=\"finalA\" operator=\"out\" />\n <feMerge>\n <feMergeNode in=\"finalU\" />\n <feMergeNode in=\"finalP\" />\n <feMergeNode in=\"finalA\" />\n <feMergeNode in=\"SourceGraphic\" />\n </feMerge>\n </filter>`;\n });\n\n return svg`\n <svg class=\"defs\">\n <defs>\n ${filters}\n </defs>\n </svg>\n `;\n }\n\n static get styles() {\n return css`\n :host {\n ---shadow-0: var(--shadow-0, ${unsafeCSS(this.cssBoxShadow(0))});\n ---shadow-2: var(--shadow-2, ${unsafeCSS(this.cssBoxShadow(2))});\n ---shadow-4: var(--shadow-4, ${unsafeCSS(this.cssBoxShadow(4))});\n ---shadow-8: var(--shadow-8, ${unsafeCSS(this.cssBoxShadow(8))});\n\n ---color-background: var(--color-background, ${unsafeCSS(this.greys.white)});\n ---color-border: var(--color-border, ${unsafeCSS(this.greys.light75)});\n ---color-text: var(--color-text, ${unsafeCSS(this.greys.dark75)});\n ---color-text-inverse: var(--color-text-inverse, ${unsafeCSS(this.greys.white)});\n ---color-link: var(--color-link, ${unsafeCSS(this.greys.dark25)});\n ---color-element-background: var(--color-element-background, ${unsafeCSS(this.greys.light75)});\n ---color-element-disabled: var(--color-element-disabled, ${unsafeCSS(this.greys.light50)});\n ---color-element-enabled: var(--color-element-enabled, ${unsafeCSS(this.greys.dark25)});\n ---color-element-selected: var(--color-element-selected, ${unsafeCSS(this.greys.grey)});\n ---color-element-border: var(--color-element-border, ${unsafeCSS(this.greys.dark50)});\n ---color-element-emphasis: var(--color-element-emphasis, ${unsafeCSS(this.greys.dark75)});\n\n ---font-family-base: var(--font-family-base, \"Source Sans\", sans-serif);\n ---font-family-math: var(--font-family-math, \"Source Serif\", serif);\n\n ---border: var(--border, 1px solid var(---color-border));\n ---border-radius: var(--border-radius, 0.25rem);\n ---transition-duration: var(--transition-duration, 500ms);\n\n font-family: var(---font-family-base);\n }\n\n :host,\n :host *,\n :host *::before,\n :host *::after {\n box-sizing: border-box;\n }\n\n .math-greek {\n font-family: var(---font-family-math);\n font-style: normal;\n }\n\n .math-num {\n font-family: var(---font-family-base);\n font-style: normal;\n }\n\n .math-var {\n font-family: var(---font-family-math);\n font-style: italic;\n }\n\n .defs {\n display: block;\n\n width: 0;\n height: 0;\n }\n `;\n }\n}\n","\nimport {html, css} from 'lit';\n\nimport DecidablesElement from './decidables-element';\n\nexport default class DecidablesButton extends DecidablesElement {\n static get properties() {\n return {\n disabled: {\n attribute: 'disabled',\n type: Boolean,\n reflect: true,\n },\n };\n }\n\n constructor() {\n super();\n\n // Attributes\n this.disabled = false;\n }\n\n static get styles() {\n return [\n super.styles,\n css`\n :host {\n margin: 0.25rem;\n }\n\n button {\n width: 100%;\n height: 100%;\n padding: 0.375rem 0.75rem;\n\n font-family: var(---font-family-base);\n font-size: 1.125rem;\n line-height: 1.5;\n color: var(---color-text-inverse);\n\n border: 0;\n border-radius: var(---border-radius);\n outline: none;\n }\n\n button:disabled {\n background-color: var(--decidables-button-background-color, var(---color-element-disabled));\n outline: none;\n box-shadow: none;\n }\n\n button:enabled {\n cursor: pointer;\n\n background-color: var(--decidables-button-background-color, var(---color-element-enabled));\n outline: none;\n box-shadow: var(---shadow-2);\n }\n\n button:enabled:hover {\n outline: none;\n box-shadow: var(---shadow-4);\n }\n\n button:enabled:active {\n outline: none;\n box-shadow: var(---shadow-8);\n }\n\n :host(.keyboard) button:enabled:focus {\n outline: none;\n box-shadow: var(---shadow-4);\n }\n\n :host(.keyboard) button:enabled:focus:active {\n outline: none;\n box-shadow: var(---shadow-8);\n }\n `,\n ];\n }\n\n render() {\n return html`\n <button ?disabled=${this.disabled}>\n <slot></slot>\n </button>\n `;\n }\n}\n\ncustomElements.define('decidables-button', DecidablesButton);\n","import{nothing as t}from\"../lit-html.js\";\n/**\n * @license\n * Copyright 2018 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const l=l=>null!=l?l:t;export{l as ifDefined};\n//# sourceMappingURL=if-defined.js.map\n","\nimport {ifDefined} from 'lit/directives/if-defined.js'; /* eslint-disable-line import/extensions */\nimport {html, css, unsafeCSS} from 'lit';\n\nimport DecidablesElement from './decidables-element';\n\nexport default class DecidablesSlider extends DecidablesElement {\n static get properties() {\n return {\n disabled: {\n attribute: 'disabled',\n type: Boolean,\n reflect: true,\n },\n max: {\n attribute: 'max',\n type: Number,\n reflect: true,\n },\n min: {\n attribute: 'min',\n type: Number,\n reflect: true,\n },\n step: {\n attribute: 'step',\n type: Number,\n reflect: true,\n },\n value: {\n attribute: 'value',\n type: Number,\n reflect: true,\n },\n };\n }\n\n constructor() {\n super();\n\n // Attributes\n this.disabled = false;\n this.max = undefined;\n this.min = undefined;\n this.step = undefined;\n this.value = undefined;\n }\n\n changed(event) {\n this.value = event.target.value;\n this.dispatchEvent(new CustomEvent('change', {\n detail: {\n value: this.value,\n },\n bubbles: true,\n }));\n }\n\n inputted(event) {\n this.value = event.target.value;\n }\n\n static get styles() {\n return [\n super.styles,\n css`\n :host {\n ---shadow-2-rotate: var(--shadow-2-rotate, ${unsafeCSS(this.cssBoxShadow(2, true, false))});\n ---shadow-4-rotate: var(--shadow-4-rotate, ${unsafeCSS(this.cssBoxShadow(4, true, false))});\n ---shadow-8-rotate: var(--shadow-8-rotate, ${unsafeCSS(this.cssBoxShadow(8, true, false))});\n\n display: flex;\n\n flex-direction: column;\n\n align-items: center;\n justify-content: center;\n }\n\n label {\n margin: 0.25rem 0.25rem 0;\n }\n\n .range {\n display: inline-block;\n\n width: 3.5rem;\n height: 4.75rem;\n margin: 0 0.25rem 0.25rem;\n }\n\n decidables-spinner {\n --decidables-spinner-input-width: 3.5rem;\n\n margin: 0 0.25rem 0.25rem;\n }\n\n /* Adapted from http://danielstern.ca/range.css/#/ */\n /* Overall */\n input[type=range] {\n width: 4.75rem;\n height: 3.5rem;\n padding: 0;\n margin: 0;\n\n background-color: unset;\n\n transform: rotate(-90deg);\n transform-origin: 2.375rem 2.375rem;\n\n /* stylelint-disable-next-line property-no-vendor-prefix */\n -webkit-appearance: none;\n }\n\n input[type=range]:enabled {\n cursor: ns-resize;\n }\n\n input[type=range]:focus {\n outline: none;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-ms-tooltip {\n display: none;\n }\n\n /* Track */\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-webkit-slider-runnable-track {\n width: 100%;\n height: 4px;\n\n background: var(---color-element-disabled);\n border: 0;\n border-radius: 2px;\n box-shadow: none;\n }\n\n input[type=range]:focus::-webkit-slider-runnable-track {\n background: var(---color-element-disabled);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-moz-range-track {\n width: 100%;\n height: 4px;\n\n background: var(---color-element-disabled);\n border: 0;\n border-radius: 2px;\n box-shadow: none;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-ms-track {\n width: 100%;\n height: 4px;\n\n color: transparent;\n\n background: transparent;\n border-color: transparent;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-ms-fill-lower {\n background: #cccccc;\n /* background: var(---color-element-disabled); */\n border: 0;\n border-radius: 2px;\n box-shadow: none;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-ms-fill-upper {\n background: #cccccc;\n /* background: var(---color-element-disabled); */\n border: 0;\n border-radius: 2px;\n box-shadow: none;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:focus::-ms-fill-lower {\n background: var(---color-element-disabled);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:focus::-ms-fill-upper {\n background: var(---color-element-disabled);\n }\n\n /* Thumb */\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-webkit-slider-thumb {\n width: 10px;\n height: 20px;\n margin-top: -8px;\n\n border: 0;\n border-radius: 4px;\n\n /* stylelint-disable-next-line property-no-vendor-prefix */\n -webkit-appearance: none;\n }\n\n input[type=range]:disabled::-webkit-slider-thumb {\n background: var(---color-element-disabled);\n box-shadow: none;\n }\n\n input[type=range]:enabled::-webkit-slider-thumb {\n background: var(---color-element-enabled);\n box-shadow: var(---shadow-2-rotate);\n }\n\n input[type=range]:enabled:hover::-webkit-slider-thumb {\n box-shadow: var(---shadow-4-rotate);\n }\n\n input[type=range]:enabled:active::-webkit-slider-thumb {\n box-shadow: var(---shadow-8-rotate);\n }\n\n :host(.keyboard) input[type=range]:enabled:focus::-webkit-slider-thumb {\n box-shadow: var(---shadow-4-rotate);\n }\n\n :host(.keyboard) input[type=range]:focus:active::-webkit-slider-thumb {\n box-shadow: var(---shadow-8-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-moz-range-thumb {\n width: 10px;\n height: 20px;\n\n border: 0;\n border-radius: 4px;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:disabled::-moz-range-thumb {\n background: var(---color-element-disabled);\n box-shadow: none;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:enabled::-moz-range-thumb {\n background: var(---color-element-enabled);\n box-shadow: var(---shadow-2-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:enabled:hover::-moz-range-thumb {\n box-shadow: var(---shadow-4-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:enabled:active::-moz-range-thumb {\n box-shadow: var(---shadow-8-rotate);\n }\n\n :host(.keyboard) input[type=range]:enabled:focus::-moz-range-thumb {\n box-shadow: var(---shadow-4-rotate);\n }\n\n :host(.keyboard) input[type=range]:enabled:focus:active::-moz-range-thumb {\n box-shadow: var(---shadow-8-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-ms-thumb {\n width: 10px;\n height: 20px;\n margin-top: 0;\n\n background: #999999;\n /* background: var(---color-element-enabled); */\n border: 0;\n border-radius: 4px;\n box-shadow: var(---shadow-2-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:disabled::-ms-thumb {\n background: var(---color-element-disabled);\n box-shadow: none;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:enabled::-ms-thumb {\n background: var(---color-element-enabled);\n box-shadow: var(---shadow-2-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:enabled:hover::-ms-thumb {\n box-shadow: var(---shadow-4-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:enabled:active::-ms-thumb {\n box-shadow: var(---shadow-8-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n :host(.keyboard) input[type=range]:enabled:focus::-ms-thumb {\n box-shadow: var(---shadow-4-rotate);\n }\n\n :host(.keyboard) input[type=range]:enabled:focus:active::-ms-thumb {\n box-shadow: var(---shadow-8-rotate);\n }\n `,\n ];\n }\n\n render() {\n return html`\n <label for=\"slider\">\n <slot></slot>\n </label>\n <div class=\"range\">\n <input type=\"range\" id=\"slider\" min=${ifDefined(this.min)} max=${ifDefined(this.max)} step=${ifDefined(this.step)} .value=${this.value} @change=${this.changed.bind(this)} @input=${this.inputted.bind(this)}>\n </div>\n <decidables-spinner min=${ifDefined(this.min)} max=${ifDefined(this.max)} step=${ifDefined(this.step)} .value=${this.value} @input=${this.inputted.bind(this)}></decidables-spinner>\n `;\n }\n}\n\ncustomElements.define('decidables-slider', DecidablesSlider);\n","\nimport {ifDefined} from 'lit/directives/if-defined.js'; /* eslint-disable-line import/extensions */\nimport {html, css} from 'lit';\n\nimport DecidablesElement from './decidables-element';\n\nexport default class DecidablesSpinner extends DecidablesElement {\n static get properties() {\n return {\n disabled: {\n attribute: 'disabled',\n type: Boolean,\n reflect: true,\n },\n max: {\n attribute: 'max',\n type: Number,\n reflect: true,\n },\n min: {\n attribute: 'min',\n type: Number,\n reflect: true,\n },\n step: {\n attribute: 'step',\n type: Number,\n reflect: true,\n },\n value: {\n attribute: 'value',\n type: Number,\n reflect: true,\n },\n };\n }\n\n constructor() {\n super();\n\n // Attributes\n this.disabled = false;\n this.max = undefined;\n this.min = undefined;\n this.step = undefined;\n this.value = undefined;\n }\n\n inputted(event) {\n this.value = event.target.value;\n }\n\n static get styles() {\n return [\n super.styles,\n css`\n :host {\n ---decidables-spinner-font-size: var(--decidables-spinner-font-size, 1.125rem);\n ---decidables-spinner-input-width: var(--decidables-spinner-input-width, 4rem);\n ---decidables-spinner-prefix: var(--decidables-spinner-prefix, \"\");\n\n display: block;\n }\n\n label {\n position: relative;\n display: flex;\n\n flex-direction: column;\n\n align-items: center;\n\n margin: 0;\n\n font-size: 0.75rem;\n }\n\n label::before {\n position: absolute;\n bottom: 1px;\n left: calc(50% - var(---decidables-spinner-input-width) / 2 + 0.25rem);\n\n font-size: var(---decidables-spinner-font-size);\n line-height: normal;\n\n content: var(---decidables-spinner-prefix);\n }\n\n input[type=number] {\n width: var(---decidables-spinner-input-width);\n\n font-family: var(---font-family-base);\n font-size: var(---decidables-spinner-font-size);\n color: inherit;\n text-align: right;\n\n background: none;\n border: 0;\n border-radius: 0;\n outline: none;\n box-shadow: var(---shadow-2);\n\n -webkit-appearance: none; /* stylelint-disable-line property-no-vendor-prefix */\n }\n\n input[type=number]:hover {\n box-shadow: var(---shadow-4);\n }\n\n input[type=number]:focus,\n input[type=number]:active {\n box-shadow: var(---shadow-8);\n }\n\n input[type=number]:disabled {\n color: var(---color-text);\n\n border: 0;\n box-shadow: none;\n\n /* HACK: Use correct text color in Safari */\n -webkit-opacity: 1;\n /* HACK: Hide spinners in disabled input for Firefox and Safari */\n -moz-appearance: textfield; /* stylelint-disable-line property-no-vendor-prefix */\n /* HACK: Use correct text color in Safari */\n -webkit-text-fill-color: var(---color-text);\n }\n\n /* HACK: Hide spinners in disabled input for Firefox and Safari */\n input[type=number]:disabled::-webkit-outer-spin-button,\n input[type=number]:disabled::-webkit-inner-spin-button {\n margin: 0;\n -webkit-appearance: none; /* stylelint-disable-line property-no-vendor-prefix */\n }\n `,\n ];\n }\n\n render() {\n return html`\n <label>\n <slot></slot>\n <input ?disabled=${this.disabled} type=\"number\" min=${ifDefined(this.min)} max=${ifDefined(this.max)} step=${ifDefined(this.step)} .value=${this.value} @input=${this.inputted.bind(this)}>\n </label>\n `;\n }\n}\n\ncustomElements.define('decidables-spinner', DecidablesSpinner);\n","\nimport {html, css} from 'lit';\n\nimport DecidablesElement from './decidables-element';\n\nexport default class DecidablesSwitch extends DecidablesElement {\n static get properties() {\n return {\n checked: {\n attribute: 'checked',\n type: Boolean,\n reflect: true,\n },\n disabled: {\n attribute: 'disabled',\n type: Boolean,\n reflect: true,\n },\n };\n }\n\n constructor() {\n super();\n\n // Attributes\n this.checked = false;\n this.disabled = false;\n }\n\n changed(event) {\n this.checked = event.target.checked;\n this.dispatchEvent(new CustomEvent('change', {\n detail: {\n checked: this.checked,\n },\n bubbles: true,\n }));\n }\n\n static get styles() {\n return [\n super.styles,\n css`\n :host {\n display: flex;\n\n flex-direction: column;\n\n align-items: center;\n justify-content: center;\n }\n\n /* Adapted from https://codepen.io/guuslieben/pen/YyPRVP */\n input[type=checkbox] {\n /* visuallyhidden: https://github.com/h5bp/html5-boilerplate/blob/master/dist/doc/css.md */\n position: absolute;\n\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0 0 0 0);\n\n white-space: nowrap;\n\n border: 0;\n clip-path: inset(100%); /* May cause a performance issue: https://github.com/h5bp/html5-boilerplate/issues/2021 */\n }\n\n input[type=checkbox] + label {\n order: 1;\n\n margin: 0 0.25rem 0.25rem;\n\n font-weight: 400;\n }\n\n input[type=checkbox] + label + label {\n position: relative;\n\n min-width: 24px;\n padding: 0 0 36px;\n margin: 0.25rem 0.25rem 0;\n\n font-weight: 400;\n\n outline: none;\n }\n\n input[type=checkbox] + label + label::before,\n input[type=checkbox] + label + label::after {\n position: absolute;\n\n left: 50%;\n\n margin: 0;\n\n content: \"\";\n\n outline: 0;\n\n transition: all var(---transition-duration) ease;\n transform: translate(-50%, 0);\n }\n\n input[type=checkbox] + label + label::before {\n bottom: 1px;\n\n width: 8px;\n height: 34px;\n\n background-color: var(---color-element-disabled);\n border-radius: 4px;\n }\n\n input[type=checkbox] + label + label::after {\n bottom: 0;\n\n width: 18px;\n height: 18px;\n\n background-color: var(---color-element-enabled);\n border-radius: 50%;\n box-shadow: var(---shadow-2);\n }\n\n input[type=checkbox]:checked + label + label::after {\n transform: translate(-50%, -100%);\n }\n\n input[type=checkbox]:disabled + label + label::after {\n background-color: var(---color-element-disabled);\n box-shadow: none;\n }\n\n input[type=checkbox]:enabled + label,\n input[type=checkbox]:enabled + label + label {\n cursor: pointer;\n }\n\n input[type=checkbox]:enabled + label:hover + label::after,\n input[type=checkbox]:enabled + label + label:hover::after {\n box-shadow: var(---shadow-4);\n }\n\n input[type=checkbox]:enabled + label:active + label::after,\n input[type=checkbox]:enabled + label + label:active::after {\n box-shadow: var(---shadow-8);\n }\n\n /* stylelint-disable-next-line selector-max-compound-selectors */\n :host(.keyboard) input[type=checkbox]:enabled:focus + label + label::after {\n box-shadow: var(---shadow-4);\n }\n\n /* stylelint-disable-next-line selector-max-compound-selectors */\n :host(.keyboard) input[type=checkbox]:enabled:focus + label + label:active::after,\n :host(.keyboard) input[type=checkbox]:enabled:focus:active + label + label::after {\n box-shadow: var(---shadow-8);\n }\n `,\n ];\n }\n\n render() {\n return html`\n <input type=\"checkbox\" id=\"switch\" ?checked=${this.checked} ?disabled=${this.disabled} @change=${this.changed.bind(this)}>\n <label for=\"switch\">\n <slot name=\"off-label\"></slot>\n </label>\n <label for=\"switch\">\n <slot></slot>\n </label>\n `;\n }\n}\n\ncustomElements.define('decidables-switch', DecidablesSwitch);\n","\nimport {html, css} from 'lit';\n\nimport DecidablesElement from './decidables-element';\n\nexport default class DecidablesToggle extends DecidablesElement {\n static get properties() {\n return {\n disabled: {\n attribute: 'disabled',\n type: Boolean,\n reflect: true,\n },\n };\n }\n\n constructor() {\n super();\n\n // Attributes\n this.disabled = false;\n }\n\n static get styles() {\n return [\n super.styles,\n css`\n fieldset {\n display: flex;\n\n flex-direction: column;\n\n align-items: stretch;\n justify-content: center;\n\n margin: 0.25rem;\n\n border: 0;\n }\n\n legend {\n text-align: center;\n }\n `,\n ];\n }\n\n render() {\n return html`\n <fieldset ?disabled=${this.disabled}>\n <legend><slot name=\"label\"></slot></legend>\n <slot></slot>\n </fieldset>\n `;\n }\n}\n\ncustomElements.define('decidables-toggle', DecidablesToggle);\n","\nimport {html, css} from 'lit';\n\nimport DecidablesElement from './decidables-element';\n\nexport default class DecidablesToggleOption extends DecidablesElement {\n static get properties() {\n return {\n checked: {\n attribute: 'checked',\n type: Boolean,\n reflect: true,\n },\n disabled: {\n attribute: 'disabled',\n type: Boolean,\n reflect: true,\n },\n name: {\n attribute: 'name',\n type: String,\n reflect: true,\n },\n value: {\n attribute: 'value',\n type: String,\n reflect: true,\n },\n };\n }\n\n constructor() {\n super();\n\n // Attributes\n this.checked = false;\n this.disabled = false;\n this.name = undefined;\n this.value = undefined;\n }\n\n changed(event) {\n this.checked = event.target.checked;\n this.dispatchEvent(new CustomEvent('change', {\n detail: {\n checked: this.checked,\n value: this.value,\n },\n bubbles: true,\n }));\n }\n\n static get styles() {\n return [\n super.styles,\n css`\n :host {\n display: flex;\n }\n\n input[type=radio] {\n /* visuallyhidden: https://github.com/h5bp/html5-boilerplate/blob/master/dist/doc/css.md */\n position: absolute;\n\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0 0 0 0);\n\n white-space: nowrap;\n\n border: 0;\n clip-path: inset(100%); /* May cause a performance issue: https://github.com/h5bp/html5-boilerplate/issues/2021 */\n }\n\n input[type=radio] + label {\n width: 100%;\n padding: 0.375rem 0.75rem;\n\n font-family: var(---font-family-base);\n font-size: 1.125rem;\n line-height: 1.5;\n color: var(---color-text-inverse);\n text-align: center;\n\n cursor: pointer;\n\n background-color: var(---color-element-enabled);\n border: 0;\n border-radius: 0;\n outline: none;\n\n box-shadow: var(---shadow-2);\n }\n\n input[type=radio]:checked + label {\n background-color: var(---color-element-selected);\n outline: none;\n box-shadow: var(---shadow-2);\n }\n\n input[type=radio] + label:hover {\n z-index: 1;\n\n outline: none;\n box-shadow: var(---shadow-4);\n }\n\n input[type=radio] + label:active {\n z-index: 2;\n\n outline: none;\n box-shadow: var(---shadow-8);\n }\n\n :host(:first-of-type) input[type=radio] + label {\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n }\n\n :host(:last-of-type) input[type=radio] + label {\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n }\n\n :host(.keyboard) input[type=radio]:focus + label {\n z-index: 1;\n\n outline: none;\n box-shadow: var(---shadow-4);\n }\n\n :host(.keyboard) input[type=radio]:focus:checked + label {\n z-index: 1;\n\n background-color: var(---color-element-selected);\n outline: none;\n box-shadow: var(---shadow-4);\n }\n\n :host(.keyboard) input[type=radio]:focus + label:active {\n z-index: 2;\n\n outline: none;\n box-shadow: var(---shadow-8);\n }\n `,\n ];\n }\n\n render() {\n return html`\n <input type=\"radio\" id=\"toggle-option\" name=${this.name} value=${this.value} .checked=${this.checked} @change=${this.changed.bind(this)}>\n <label for=\"toggle-option\">\n <slot></slot>\n </label>\n `;\n }\n}\n\ncustomElements.define('decidables-toggle-option', DecidablesToggleOption);\n","\n/*\n Attribute: Space-separated sequence of numbers\n Property: Array of numbers\n*/\nconst DecidablesConverterArray = {\n fromAttribute: (value) => {\n return value.split(/\\s+/).map((item) => { return Number.parseFloat(item); });\n },\n toAttribute: (value) => {\n return (value.length) ? value.map((item) => { return item.toFixed(3); }).join(' ') : null;\n },\n};\n\nexport default DecidablesConverterArray;\n","\n/*\n Attribute: Space-separated sequence of strings\n Property: Set of strings\n*/\nconst DecidablesConverterSet = {\n fromAttribute: (value) => {\n return new Set(value.split(/\\s+/));\n },\n toAttribute: (value) => {\n return (value.size) ? [...value].join(' ') : null;\n },\n};\n\nexport default DecidablesConverterSet;\n"],"names":["global","window","supportsAdoptingStyleSheets","ShadowRoot","ShadyCSS","nativeShadow","Document","prototype","CSSStyleSheet","constructionToken","Symbol","cssTagCache","WeakMap","unsafeCSS","value","constructor","cssText","strings","safeToken","this","_$cssResult$","Error","_strings","styleSheet","_styleSheet","cacheable","undefined","length","get","replaceSync","set","toString","String","getCompatibleStyle","s","sheet","rule","cssRules","trustedTypes","emptyStringForBooleanAttribute","emptyScript","polyfillSupport","reactiveElementPolyfillSupport","defaultConverter","toAttribute","type","Boolean","Object","Array","JSON","stringify","fromAttribute","fromValue","Number","parse","e","notEqual","old","defaultPropertyDeclaration","attribute","converter","reflect","hasChanged","HTMLElement","super","_$Ei","Map","isUpdatePending","hasUpdated","__reflectingProperty","_initialize","static","initializer","finalize","_a","_initializers","push","observedAttributes","attributes","elementProperties","forEach","v","p","attr","__attributeNameForProperty","__attributeToPropertyMap","name","options","state","noAccessor","hasOwnProperty","key","descriptor","getPropertyDescriptor","defineProperty","oldValue","requestUpdate","configurable","enumerable","finalized","superCtor","getPrototypeOf","props","properties","propKeys","getOwnPropertyNames","getOwnPropertySymbols","createProperty","elementStyles","finalizeStyles","styles","isArray","Set","flat","Infinity","reverse","unshift","toLowerCase","__updatePromise","Promise","res","enableUpdating","_$changedProperties","__saveInstanceProperties","i","addController","controller","__controllers","renderRoot","isConnected","_b","hostConnected","call","t","removeController","splice","indexOf","_v","__instanceProperties","createRenderRoot","shadowRoot","attachShadow","shadowRootOptions","adoptedStyleSheets","map","style","document","createElement","nonce","litNonce","setAttribute","textContent","appendChild","adoptStyles","connectedCallback","c","_requestedUpdate","disconnectedCallback","hostDisconnected","attributeChangedCallback","_old","_$attributeToProperty","__propertyToAttribute","attrValue","removeAttribute","ctor","propName","getPropertyOptions","shouldRequestUpdate","has","__reflectingProperties","__enqueueUpdate","async","reject","result","scheduleUpdate","performUpdate","shouldUpdate","changedProperties","willUpdate","hostUpdate","update","__markUpdated","_$didUpdate","_changedProperties","hostUpdated","firstUpdated","updated","updateComplete","getUpdateComplete","k","ReactiveElement","mode","o","_d","reactiveElementVersions","policy","createPolicy","createHTML","marker","Math","random","slice","markerMatch","nodeMarker","d","createMarker","createComment","isPrimitive","textEndRegex","commentEndRegex","comment2EndRegex","tagEndRegex","RegExp","singleQuoteAttrEndRegex","doubleQuoteAttrEndRegex","rawTextElement","noChange","for","nothing","templateCache","walker","createTreeWalker","C$1","_$litType$","node","parts","nodeIndex","attrNameIndex","partCount","html","attrNames","l","rawTextEndRegex","regex","attrName","match","attrNameEndIndex","lastIndex","exec","test","end","startsWith","htmlResult","getTemplateHtml","el","Template","currentNode","content","svgElement","firstChild","remove","append","childNodes","nextNode","nodeType","hasAttributes","attrsToRemove","getAttributeNames","endsWith","realName","statics","getAttribute","split","m","index","PropertyPart","BooleanAttributePart","EventPart","AttributePart","tagName","data","_options","innerHTML","resolveDirective","part","parent","attributeIndex","currentDirective","__directives","__directive","nextDirectiveConstructor","_$litDirective$","_$AO","n","r","_$initialize","_c","h","_$Co","_$resolve","values","N$1","startNode","endNode","_$committedValue","_$disconnectableChildren","_$startNode","_$endNode","_$parent","__isConnected","_$isConnected","_$AU","parentNode","_$setValue","directiveParent","_$clear","_commitText","_commitTemplateResult","_commitNode","iterator","isIterable","_commitIterable","_insert","ref","insertBefore","nextSibling","createTextNode","template","_$getTemplate","_$AD","_update","instance","_parts","_$template","_clone","fragment","creationScope","importNode","partIndex","templatePart","ChildPart","ElementPart","itemParts","itemPart","item","start","from","_$notifyConnectionChanged","setConnected","S$2","element","fill","valueIndex","noCommit","change","_commitValue","newListener","oldListener","shouldRemoveListener","capture","once","passive","shouldAddListener","removeEventListener","addEventListener","handleEvent","event","host","I$1","litHtmlPolyfillSupport","litHtmlVersions","styleSheetCache","CSSResult","css","reduce","acc","idx","globalThis","tag","svg","_$Cl","TemplateInstance","LitElement","renderOptions","renderBefore","render","__childPart","container","partOwnerNode","_$litPart$","_$litElement$","litElementHydrateSupport","litElementPolyfillSupport","litElementVersions","noop","dispatch","arguments","_","Dispatch","parseTypenames","typenames","types","trim","callback","concat","on","typename","T","copy","that","args","apply","xhtml","namespaces","xlink","xml","xmlns","namespace","prefix","space","local","creatorInherit","ownerDocument","uri","namespaceURI","documentElement","createElementNS","creatorFixed","fullname","creator","none","selector","querySelector","array","x","empty","selectorAll","querySelectorAll","matcher","matches","childMatcher","find","childFirst","firstElementChild","filter","children","sparse","EnterNode","datum","_next","_parent","__data__","constant$1","bindIndex","group","enter","exit","groupLength","dataLength","bindKey","keyValue","nodeByKeyValue","keyValues","delete","arraylike","ascending","a","b","NaN","attrRemove","attrRemoveNS","removeAttributeNS","attrConstant","attrConstantNS","setAttributeNS","attrFunction","attrFunctionNS","defaultView","styleRemove","removeProperty","styleConstant","priority","setProperty","styleFunction","styleValue","getPropertyValue","getComputedStyle","propertyRemove","propertyConstant","propertyFunction","classArray","string","classList","ClassList","_node","_names","classedAdd","names","list","add","classedRemove","classedTrue","classedFalse","classedFunction","textRemove","textConstant","textFunction","htmlRemove","htmlConstant","htmlFunction","raise","lower","previousSibling","constantNull","removeChild","selection_cloneShallow","clone","cloneNode","selection_cloneDeep","onRemove","__on","j","listener","onAdd","contextListener","dispatchEvent","params","CustomEvent","createEvent","initEvent","bubbles","cancelable","detail","dispatchConstant","dispatchFunction","child","next","join","contains","root","Selection","groups","parents","_groups","_parents","selection","select","define","factory","extend","definition","create","Color","subgroups","subnode","subgroup","selectAll","arrayAll","selectChild","childFind","selectChildren","childrenFilter","bind","constant","enterGroup","updateGroup","exitGroup","previous","i0","i1","_enter","_exit","onenter","onupdate","onexit","merge","order","context","groups0","groups1","m0","m1","min","merges","group0","group1","compareDocumentPosition","sort","compare","compareNode","sortgroups","sortgroup","nodes","size","each","getAttributeNS","property","classed","text","insert","before","deep","darker","brighter","reI","reN","reP","reHex","reRgbInteger","reRgbPercent","reRgbaInteger","reRgbaPercent","reHslPercent","reHslaPercent","named","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","color_formatHex","rgb","formatHex","color_formatRgb","formatRgb","color","format","parseInt","rgbn","Rgb","rgba","hsla","g","rgbConvert","opacity","rgb_formatHex","hex","rgb_formatRgb","isNaN","max","round","Hsl","hslConvert","hsl2rgb","m2","channels","assign","displayable","formatHsl","pow","gamma","y","nogamma","exponential","linear","interpolateRgb","rgbGamma","colorRgb","interpolateNumber","reA","reB","source","interpolateString","am","bm","bs","bi","q","number","one","zero","svgNode","degrees","PI","identity","translateX","translateY","rotate","skewX","scaleX","scaleY","decompose","f","sqrt","atan2","atan","interpolateTransform","pxComma","pxParen","degParen","pop","xa","ya","xb","yb","translate","scale","taskHead","taskTail","interpolateTransformCss","DOMMatrix","WebKitCSSMatrix","isIdentity","interpolateTransformSvg","transform","baseVal","consolidate","matrix","frame","timeout","interval","clockLast","clockNow","clockSkew","clock","performance","now","Date","setFrame","requestAnimationFrame","setTimeout","clearNow","Timer","_call","_time","timer","delay","time","restart","wake","timerFlush","t0","t2","t1","sleep","nap","poke","clearTimeout","clearInterval","setInterval","elapsed","stop","TypeError","emptyOn","emptyTween","schedule","id","timing","schedules","__transition","self","tween","tick","duration","ease","init","tweenRemove","tween0","tween1","tweenFunction","tweenValue","transition","_id","interpolate","value1","string00","interpolate0","string1","string0","string10","attrInterpolate","attrInterpolateNS","attrTweenNS","_value","attrTween","delayFunction","delayConstant","durationFunction","durationConstant","easeConstant","onFunction","on0","on1","sit","every","styleInterpolate","styleTween","textInterpolate","textTween","Transition","_name","newId","selection_prototype","inherit","id0","id1","styleNull","listener0","styleMaybeRemove","removeFunction","easeVarying","resolve","cancel","interrupt","defaultTiming","Transform","active","point","applyX","applyY","invert","location","invertX","invertY","rescaleX","domain","range","rescaleY","DecidablesElement","getComputedStyleValue","d3","currentTarget","greys","light75","light50","light25","dark25","dark50","dark75","shadows","elevations","baselineColor","baselineColorString","inverseBaselineColor","inverseBaselineColorString","opacityUmbra","opacityPenumbra","opacityAmbient","opacityBoost","mapUmbra","mapPenumbra","mapAmbient","elevation","inverse","umbraO","penumbraO","ambientO","umbraC","penumbraC","ambientC","umbraM","penumbraM","ambientM","svgFilters","filters","z","abs","cssBoxShadow","DecidablesButton","disabled","customElements","DecidablesSlider","step","changed","target","inputted","ifDefined","DecidablesSpinner","DecidablesSwitch","checked","DecidablesToggle","DecidablesToggleOption","DecidablesConverterArray","parseFloat","toFixed","DecidablesConverterSet"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"decidablesElements.umd.min.js","sources":["../../../node_modules/lit/node_modules/@lit/reactive-element/css-tag.js","../../../node_modules/lit/node_modules/@lit/reactive-element/reactive-element.js","../../../node_modules/lit/node_modules/lit-html/lit-html.js","../../../node_modules/lit/node_modules/lit-element/node_modules/@lit/reactive-element/css-tag.js","../../../node_modules/lit/node_modules/lit-element/node_modules/@lit/reactive-element/reactive-element.js","../../../node_modules/lit/node_modules/lit-element/node_modules/lit-html/lit-html.js","../../../node_modules/lit/node_modules/lit-element/lit-element.js","../../../node_modules/d3-dispatch/src/dispatch.js","../../../node_modules/d3-selection/src/namespaces.js","../../../node_modules/d3-selection/src/namespace.js","../../../node_modules/d3-selection/src/creator.js","../../../node_modules/d3-selection/src/selector.js","../../../node_modules/d3-selection/src/selectorAll.js","../../../node_modules/d3-selection/src/selection/selectAll.js","../../../node_modules/d3-selection/src/array.js","../../../node_modules/d3-selection/src/matcher.js","../../../node_modules/d3-selection/src/selection/selectChild.js","../../../node_modules/d3-selection/src/selection/selectChildren.js","../../../node_modules/d3-selection/src/selection/sparse.js","../../../node_modules/d3-selection/src/selection/enter.js","../../../node_modules/d3-selection/src/selection/data.js","../../../node_modules/d3-selection/src/selection/sort.js","../../../node_modules/d3-selection/src/selection/attr.js","../../../node_modules/d3-selection/src/window.js","../../../node_modules/d3-selection/src/selection/style.js","../../../node_modules/d3-selection/src/selection/property.js","../../../node_modules/d3-selection/src/selection/classed.js","../../../node_modules/d3-selection/src/selection/text.js","../../../node_modules/d3-selection/src/selection/html.js","../../../node_modules/d3-selection/src/selection/raise.js","../../../node_modules/d3-selection/src/selection/lower.js","../../../node_modules/d3-selection/src/selection/insert.js","../../../node_modules/d3-selection/src/selection/remove.js","../../../node_modules/d3-selection/src/selection/clone.js","../../../node_modules/d3-selection/src/selection/on.js","../../../node_modules/d3-selection/src/selection/dispatch.js","../../../node_modules/d3-selection/src/selection/index.js","../../../node_modules/d3-selection/src/select.js","../../../node_modules/d3-color/src/define.js","../../../node_modules/d3-color/src/color.js","../../../node_modules/d3-selection/src/selection/select.js","../../../node_modules/d3-selection/src/selection/filter.js","../../../node_modules/d3-selection/src/constant.js","../../../node_modules/d3-selection/src/selection/exit.js","../../../node_modules/d3-selection/src/selection/join.js","../../../node_modules/d3-selection/src/selection/merge.js","../../../node_modules/d3-selection/src/selection/order.js","../../../node_modules/d3-selection/src/selection/call.js","../../../node_modules/d3-selection/src/selection/nodes.js","../../../node_modules/d3-selection/src/selection/node.js","../../../node_modules/d3-selection/src/selection/size.js","../../../node_modules/d3-selection/src/selection/empty.js","../../../node_modules/d3-selection/src/selection/each.js","../../../node_modules/d3-selection/src/selection/append.js","../../../node_modules/d3-selection/src/selection/datum.js","../../../node_modules/d3-selection/src/selection/iterator.js","../../../node_modules/d3-interpolate/src/constant.js","../../../node_modules/d3-interpolate/src/color.js","../../../node_modules/d3-interpolate/src/rgb.js","../../../node_modules/d3-interpolate/src/number.js","../../../node_modules/d3-interpolate/src/string.js","../../../node_modules/d3-interpolate/src/transform/decompose.js","../../../node_modules/d3-interpolate/src/transform/parse.js","../../../node_modules/d3-interpolate/src/transform/index.js","../../../node_modules/d3-timer/src/timer.js","../../../node_modules/d3-timer/src/timeout.js","../../../node_modules/d3-transition/src/transition/schedule.js","../../../node_modules/d3-transition/src/transition/tween.js","../../../node_modules/d3-transition/src/transition/interpolate.js","../../../node_modules/d3-transition/src/transition/attr.js","../../../node_modules/d3-transition/src/transition/attrTween.js","../../../node_modules/d3-transition/src/transition/delay.js","../../../node_modules/d3-transition/src/transition/duration.js","../../../node_modules/d3-transition/src/transition/selection.js","../../../node_modules/d3-transition/src/transition/style.js","../../../node_modules/d3-transition/src/transition/index.js","../../../node_modules/d3-transition/src/transition/select.js","../../../node_modules/d3-transition/src/transition/selectAll.js","../../../node_modules/d3-transition/src/transition/filter.js","../../../node_modules/d3-transition/src/transition/merge.js","../../../node_modules/d3-transition/src/transition/transition.js","../../../node_modules/d3-transition/src/transition/on.js","../../../node_modules/d3-transition/src/transition/styleTween.js","../../../node_modules/d3-transition/src/transition/text.js","../../../node_modules/d3-transition/src/transition/textTween.js","../../../node_modules/d3-transition/src/transition/remove.js","../../../node_modules/d3-transition/src/transition/ease.js","../../../node_modules/d3-transition/src/transition/easeVarying.js","../../../node_modules/d3-transition/src/transition/end.js","../../../node_modules/d3-transition/src/selection/transition.js","../../../node_modules/d3-ease/src/cubic.js","../../../node_modules/d3-zoom/src/transform.js","../../../node_modules/d3-transition/src/selection/index.js","../../../node_modules/d3-transition/src/selection/interrupt.js","../../../node_modules/d3-transition/src/interrupt.js","../src/decidables-element.js","../src/button.js","../../../node_modules/lit/node_modules/lit-html/directives/if-defined.js","../src/slider.js","../src/spinner.js","../src/switch.js","../src/toggle.js","../src/toggle-option.js","../src/converter-array.js","../src/converter-set.js"],"sourcesContent":["/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=window,e=t.ShadowRoot&&(void 0===t.ShadyCSS||t.ShadyCSS.nativeShadow)&&\"adoptedStyleSheets\"in Document.prototype&&\"replace\"in CSSStyleSheet.prototype,s=Symbol(),n=new WeakMap;class o{constructor(t,e,n){if(this._$cssResult$=!0,n!==s)throw Error(\"CSSResult is not constructable. Use `unsafeCSS` or `css` instead.\");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const s=this.t;if(e&&void 0===t){const e=void 0!==s&&1===s.length;e&&(t=n.get(s)),void 0===t&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),e&&n.set(s,t))}return t}toString(){return this.cssText}}const r=t=>new o(\"string\"==typeof t?t:t+\"\",void 0,s),i=(t,...e)=>{const n=1===t.length?t[0]:e.reduce(((e,s,n)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if(\"number\"==typeof t)return t;throw Error(\"Value passed to 'css' function must be a 'css' function result: \"+t+\". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.\")})(s)+t[n+1]),t[0]);return new o(n,t,s)},S=(s,n)=>{e?s.adoptedStyleSheets=n.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet)):n.forEach((e=>{const n=document.createElement(\"style\"),o=t.litNonce;void 0!==o&&n.setAttribute(\"nonce\",o),n.textContent=e.cssText,s.appendChild(n)}))},c=e?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e=\"\";for(const s of t.cssRules)e+=s.cssText;return r(e)})(t):t;export{o as CSSResult,S as adoptStyles,i as css,c as getCompatibleStyle,e as supportsAdoptingStyleSheets,r as unsafeCSS};\n//# sourceMappingURL=css-tag.js.map\n","import{getCompatibleStyle as t,adoptStyles as i}from\"./css-tag.js\";export{CSSResult,adoptStyles,css,getCompatibleStyle,supportsAdoptingStyleSheets,unsafeCSS}from\"./css-tag.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */var s;const e=window,r=e.trustedTypes,h=r?r.emptyScript:\"\",o=e.reactiveElementPolyfillSupport,n={toAttribute(t,i){switch(i){case Boolean:t=t?h:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,i){let s=t;switch(i){case Boolean:s=null!==t;break;case Number:s=null===t?null:Number(t);break;case Object:case Array:try{s=JSON.parse(t)}catch(t){s=null}}return s}},a=(t,i)=>i!==t&&(i==i||t==t),l={attribute:!0,type:String,converter:n,reflect:!1,hasChanged:a};class d extends HTMLElement{constructor(){super(),this._$Ei=new Map,this.isUpdatePending=!1,this.hasUpdated=!1,this._$El=null,this.u()}static addInitializer(t){var i;this.finalize(),(null!==(i=this.h)&&void 0!==i?i:this.h=[]).push(t)}static get observedAttributes(){this.finalize();const t=[];return this.elementProperties.forEach(((i,s)=>{const e=this._$Ep(s,i);void 0!==e&&(this._$Ev.set(e,s),t.push(e))})),t}static createProperty(t,i=l){if(i.state&&(i.attribute=!1),this.finalize(),this.elementProperties.set(t,i),!i.noAccessor&&!this.prototype.hasOwnProperty(t)){const s=\"symbol\"==typeof t?Symbol():\"__\"+t,e=this.getPropertyDescriptor(t,s,i);void 0!==e&&Object.defineProperty(this.prototype,t,e)}}static getPropertyDescriptor(t,i,s){return{get(){return this[i]},set(e){const r=this[t];this[i]=e,this.requestUpdate(t,r,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)||l}static finalize(){if(this.hasOwnProperty(\"finalized\"))return!1;this.finalized=!0;const t=Object.getPrototypeOf(this);if(t.finalize(),void 0!==t.h&&(this.h=[...t.h]),this.elementProperties=new Map(t.elementProperties),this._$Ev=new Map,this.hasOwnProperty(\"properties\")){const t=this.properties,i=[...Object.getOwnPropertyNames(t),...Object.getOwnPropertySymbols(t)];for(const s of i)this.createProperty(s,t[s])}return this.elementStyles=this.finalizeStyles(this.styles),!0}static finalizeStyles(i){const s=[];if(Array.isArray(i)){const e=new Set(i.flat(1/0).reverse());for(const i of e)s.unshift(t(i))}else void 0!==i&&s.push(t(i));return s}static _$Ep(t,i){const s=i.attribute;return!1===s?void 0:\"string\"==typeof s?s:\"string\"==typeof t?t.toLowerCase():void 0}u(){var t;this._$E_=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$Eg(),this.requestUpdate(),null===(t=this.constructor.h)||void 0===t||t.forEach((t=>t(this)))}addController(t){var i,s;(null!==(i=this._$ES)&&void 0!==i?i:this._$ES=[]).push(t),void 0!==this.renderRoot&&this.isConnected&&(null===(s=t.hostConnected)||void 0===s||s.call(t))}removeController(t){var i;null===(i=this._$ES)||void 0===i||i.splice(this._$ES.indexOf(t)>>>0,1)}_$Eg(){this.constructor.elementProperties.forEach(((t,i)=>{this.hasOwnProperty(i)&&(this._$Ei.set(i,this[i]),delete this[i])}))}createRenderRoot(){var t;const s=null!==(t=this.shadowRoot)&&void 0!==t?t:this.attachShadow(this.constructor.shadowRootOptions);return i(s,this.constructor.elementStyles),s}connectedCallback(){var t;void 0===this.renderRoot&&(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),null===(t=this._$ES)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostConnected)||void 0===i?void 0:i.call(t)}))}enableUpdating(t){}disconnectedCallback(){var t;null===(t=this._$ES)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostDisconnected)||void 0===i?void 0:i.call(t)}))}attributeChangedCallback(t,i,s){this._$AK(t,s)}_$EO(t,i,s=l){var e;const r=this.constructor._$Ep(t,s);if(void 0!==r&&!0===s.reflect){const h=(void 0!==(null===(e=s.converter)||void 0===e?void 0:e.toAttribute)?s.converter:n).toAttribute(i,s.type);this._$El=t,null==h?this.removeAttribute(r):this.setAttribute(r,h),this._$El=null}}_$AK(t,i){var s;const e=this.constructor,r=e._$Ev.get(t);if(void 0!==r&&this._$El!==r){const t=e.getPropertyOptions(r),h=\"function\"==typeof t.converter?{fromAttribute:t.converter}:void 0!==(null===(s=t.converter)||void 0===s?void 0:s.fromAttribute)?t.converter:n;this._$El=r,this[r]=h.fromAttribute(i,t.type),this._$El=null}}requestUpdate(t,i,s){let e=!0;void 0!==t&&(((s=s||this.constructor.getPropertyOptions(t)).hasChanged||a)(this[t],i)?(this._$AL.has(t)||this._$AL.set(t,i),!0===s.reflect&&this._$El!==t&&(void 0===this._$EC&&(this._$EC=new Map),this._$EC.set(t,s))):e=!1),!this.isUpdatePending&&e&&(this._$E_=this._$Ej())}async _$Ej(){this.isUpdatePending=!0;try{await this._$E_}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var t;if(!this.isUpdatePending)return;this.hasUpdated,this._$Ei&&(this._$Ei.forEach(((t,i)=>this[i]=t)),this._$Ei=void 0);let i=!1;const s=this._$AL;try{i=this.shouldUpdate(s),i?(this.willUpdate(s),null===(t=this._$ES)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostUpdate)||void 0===i?void 0:i.call(t)})),this.update(s)):this._$Ek()}catch(t){throw i=!1,this._$Ek(),t}i&&this._$AE(s)}willUpdate(t){}_$AE(t){var i;null===(i=this._$ES)||void 0===i||i.forEach((t=>{var i;return null===(i=t.hostUpdated)||void 0===i?void 0:i.call(t)})),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$Ek(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$E_}shouldUpdate(t){return!0}update(t){void 0!==this._$EC&&(this._$EC.forEach(((t,i)=>this._$EO(i,this[i],t))),this._$EC=void 0),this._$Ek()}updated(t){}firstUpdated(t){}}d.finalized=!0,d.elementProperties=new Map,d.elementStyles=[],d.shadowRootOptions={mode:\"open\"},null==o||o({ReactiveElement:d}),(null!==(s=e.reactiveElementVersions)&&void 0!==s?s:e.reactiveElementVersions=[]).push(\"1.6.1\");export{d as ReactiveElement,n as defaultConverter,a as notEqual};\n//# sourceMappingURL=reactive-element.js.map\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nvar t;const i=window,s=i.trustedTypes,e=s?s.createPolicy(\"lit-html\",{createHTML:t=>t}):void 0,o=\"$lit$\",n=`lit$${(Math.random()+\"\").slice(9)}$`,l=\"?\"+n,h=`<${l}>`,r=document,u=()=>r.createComment(\"\"),d=t=>null===t||\"object\"!=typeof t&&\"function\"!=typeof t,c=Array.isArray,v=t=>c(t)||\"function\"==typeof(null==t?void 0:t[Symbol.iterator]),a=\"[ \\t\\n\\f\\r]\",f=/<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g,_=/-->/g,m=/>/g,p=RegExp(`>|${a}(?:([^\\\\s\"'>=/]+)(${a}*=${a}*(?:[^ \\t\\n\\f\\r\"'\\`<>=]|(\"|')|))|$)`,\"g\"),g=/'/g,$=/\"/g,y=/^(?:script|style|textarea|title)$/i,w=t=>(i,...s)=>({_$litType$:t,strings:i,values:s}),x=w(1),b=w(2),T=Symbol.for(\"lit-noChange\"),A=Symbol.for(\"lit-nothing\"),E=new WeakMap,C=r.createTreeWalker(r,129,null,!1);function P(t,i){if(!Array.isArray(t)||!t.hasOwnProperty(\"raw\"))throw Error(\"invalid template strings array\");return void 0!==e?e.createHTML(i):i}const V=(t,i)=>{const s=t.length-1,e=[];let l,r=2===i?\"<svg>\":\"\",u=f;for(let i=0;i<s;i++){const s=t[i];let d,c,v=-1,a=0;for(;a<s.length&&(u.lastIndex=a,c=u.exec(s),null!==c);)a=u.lastIndex,u===f?\"!--\"===c[1]?u=_:void 0!==c[1]?u=m:void 0!==c[2]?(y.test(c[2])&&(l=RegExp(\"</\"+c[2],\"g\")),u=p):void 0!==c[3]&&(u=p):u===p?\">\"===c[0]?(u=null!=l?l:f,v=-1):void 0===c[1]?v=-2:(v=u.lastIndex-c[2].length,d=c[1],u=void 0===c[3]?p:'\"'===c[3]?$:g):u===$||u===g?u=p:u===_||u===m?u=f:(u=p,l=void 0);const w=u===p&&t[i+1].startsWith(\"/>\")?\" \":\"\";r+=u===f?s+h:v>=0?(e.push(d),s.slice(0,v)+o+s.slice(v)+n+w):s+n+(-2===v?(e.push(void 0),i):w)}return[P(t,r+(t[s]||\"<?>\")+(2===i?\"</svg>\":\"\")),e]};class N{constructor({strings:t,_$litType$:i},e){let h;this.parts=[];let r=0,d=0;const c=t.length-1,v=this.parts,[a,f]=V(t,i);if(this.el=N.createElement(a,e),C.currentNode=this.el.content,2===i){const t=this.el.content,i=t.firstChild;i.remove(),t.append(...i.childNodes)}for(;null!==(h=C.nextNode())&&v.length<c;){if(1===h.nodeType){if(h.hasAttributes()){const t=[];for(const i of h.getAttributeNames())if(i.endsWith(o)||i.startsWith(n)){const s=f[d++];if(t.push(i),void 0!==s){const t=h.getAttribute(s.toLowerCase()+o).split(n),i=/([.?@])?(.*)/.exec(s);v.push({type:1,index:r,name:i[2],strings:t,ctor:\".\"===i[1]?H:\"?\"===i[1]?L:\"@\"===i[1]?z:k})}else v.push({type:6,index:r})}for(const i of t)h.removeAttribute(i)}if(y.test(h.tagName)){const t=h.textContent.split(n),i=t.length-1;if(i>0){h.textContent=s?s.emptyScript:\"\";for(let s=0;s<i;s++)h.append(t[s],u()),C.nextNode(),v.push({type:2,index:++r});h.append(t[i],u())}}}else if(8===h.nodeType)if(h.data===l)v.push({type:2,index:r});else{let t=-1;for(;-1!==(t=h.data.indexOf(n,t+1));)v.push({type:7,index:r}),t+=n.length-1}r++}}static createElement(t,i){const s=r.createElement(\"template\");return s.innerHTML=t,s}}function S(t,i,s=t,e){var o,n,l,h;if(i===T)return i;let r=void 0!==e?null===(o=s._$Co)||void 0===o?void 0:o[e]:s._$Cl;const u=d(i)?void 0:i._$litDirective$;return(null==r?void 0:r.constructor)!==u&&(null===(n=null==r?void 0:r._$AO)||void 0===n||n.call(r,!1),void 0===u?r=void 0:(r=new u(t),r._$AT(t,s,e)),void 0!==e?(null!==(l=(h=s)._$Co)&&void 0!==l?l:h._$Co=[])[e]=r:s._$Cl=r),void 0!==r&&(i=S(t,r._$AS(t,i.values),r,e)),i}class M{constructor(t,i){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=i}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){var i;const{el:{content:s},parts:e}=this._$AD,o=(null!==(i=null==t?void 0:t.creationScope)&&void 0!==i?i:r).importNode(s,!0);C.currentNode=o;let n=C.nextNode(),l=0,h=0,u=e[0];for(;void 0!==u;){if(l===u.index){let i;2===u.type?i=new R(n,n.nextSibling,this,t):1===u.type?i=new u.ctor(n,u.name,u.strings,this,t):6===u.type&&(i=new Z(n,this,t)),this._$AV.push(i),u=e[++h]}l!==(null==u?void 0:u.index)&&(n=C.nextNode(),l++)}return C.currentNode=r,o}v(t){let i=0;for(const s of this._$AV)void 0!==s&&(void 0!==s.strings?(s._$AI(t,s,i),i+=s.strings.length-2):s._$AI(t[i])),i++}}class R{constructor(t,i,s,e){var o;this.type=2,this._$AH=A,this._$AN=void 0,this._$AA=t,this._$AB=i,this._$AM=s,this.options=e,this._$Cp=null===(o=null==e?void 0:e.isConnected)||void 0===o||o}get _$AU(){var t,i;return null!==(i=null===(t=this._$AM)||void 0===t?void 0:t._$AU)&&void 0!==i?i:this._$Cp}get parentNode(){let t=this._$AA.parentNode;const i=this._$AM;return void 0!==i&&11===(null==t?void 0:t.nodeType)&&(t=i.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,i=this){t=S(this,t,i),d(t)?t===A||null==t||\"\"===t?(this._$AH!==A&&this._$AR(),this._$AH=A):t!==this._$AH&&t!==T&&this._(t):void 0!==t._$litType$?this.g(t):void 0!==t.nodeType?this.$(t):v(t)?this.T(t):this._(t)}k(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}$(t){this._$AH!==t&&(this._$AR(),this._$AH=this.k(t))}_(t){this._$AH!==A&&d(this._$AH)?this._$AA.nextSibling.data=t:this.$(r.createTextNode(t)),this._$AH=t}g(t){var i;const{values:s,_$litType$:e}=t,o=\"number\"==typeof e?this._$AC(t):(void 0===e.el&&(e.el=N.createElement(P(e.h,e.h[0]),this.options)),e);if((null===(i=this._$AH)||void 0===i?void 0:i._$AD)===o)this._$AH.v(s);else{const t=new M(o,this),i=t.u(this.options);t.v(s),this.$(i),this._$AH=t}}_$AC(t){let i=E.get(t.strings);return void 0===i&&E.set(t.strings,i=new N(t)),i}T(t){c(this._$AH)||(this._$AH=[],this._$AR());const i=this._$AH;let s,e=0;for(const o of t)e===i.length?i.push(s=new R(this.k(u()),this.k(u()),this,this.options)):s=i[e],s._$AI(o),e++;e<i.length&&(this._$AR(s&&s._$AB.nextSibling,e),i.length=e)}_$AR(t=this._$AA.nextSibling,i){var s;for(null===(s=this._$AP)||void 0===s||s.call(this,!1,!0,i);t&&t!==this._$AB;){const i=t.nextSibling;t.remove(),t=i}}setConnected(t){var i;void 0===this._$AM&&(this._$Cp=t,null===(i=this._$AP)||void 0===i||i.call(this,t))}}class k{constructor(t,i,s,e,o){this.type=1,this._$AH=A,this._$AN=void 0,this.element=t,this.name=i,this._$AM=e,this.options=o,s.length>2||\"\"!==s[0]||\"\"!==s[1]?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=A}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,i=this,s,e){const o=this.strings;let n=!1;if(void 0===o)t=S(this,t,i,0),n=!d(t)||t!==this._$AH&&t!==T,n&&(this._$AH=t);else{const e=t;let l,h;for(t=o[0],l=0;l<o.length-1;l++)h=S(this,e[s+l],i,l),h===T&&(h=this._$AH[l]),n||(n=!d(h)||h!==this._$AH[l]),h===A?t=A:t!==A&&(t+=(null!=h?h:\"\")+o[l+1]),this._$AH[l]=h}n&&!e&&this.j(t)}j(t){t===A?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,null!=t?t:\"\")}}class H extends k{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===A?void 0:t}}const I=s?s.emptyScript:\"\";class L extends k{constructor(){super(...arguments),this.type=4}j(t){t&&t!==A?this.element.setAttribute(this.name,I):this.element.removeAttribute(this.name)}}class z extends k{constructor(t,i,s,e,o){super(t,i,s,e,o),this.type=5}_$AI(t,i=this){var s;if((t=null!==(s=S(this,t,i,0))&&void 0!==s?s:A)===T)return;const e=this._$AH,o=t===A&&e!==A||t.capture!==e.capture||t.once!==e.once||t.passive!==e.passive,n=t!==A&&(e===A||o);o&&this.element.removeEventListener(this.name,this,e),n&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){var i,s;\"function\"==typeof this._$AH?this._$AH.call(null!==(s=null===(i=this.options)||void 0===i?void 0:i.host)&&void 0!==s?s:this.element,t):this._$AH.handleEvent(t)}}class Z{constructor(t,i,s){this.element=t,this.type=6,this._$AN=void 0,this._$AM=i,this.options=s}get _$AU(){return this._$AM._$AU}_$AI(t){S(this,t)}}const j={O:o,P:n,A:l,C:1,M:V,L:M,R:v,D:S,I:R,V:k,H:L,N:z,U:H,F:Z},B=i.litHtmlPolyfillSupport;null==B||B(N,R),(null!==(t=i.litHtmlVersions)&&void 0!==t?t:i.litHtmlVersions=[]).push(\"2.8.0\");const D=(t,i,s)=>{var e,o;const n=null!==(e=null==s?void 0:s.renderBefore)&&void 0!==e?e:i;let l=n._$litPart$;if(void 0===l){const t=null!==(o=null==s?void 0:s.renderBefore)&&void 0!==o?o:null;n._$litPart$=l=new R(i.insertBefore(u(),t),t,void 0,null!=s?s:{})}return l._$AI(t),l};export{j as _$LH,x as html,T as noChange,A as nothing,D as render,b as svg};\n//# sourceMappingURL=lit-html.js.map\n","/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=window.ShadowRoot&&(void 0===window.ShadyCSS||window.ShadyCSS.nativeShadow)&&\"adoptedStyleSheets\"in Document.prototype&&\"replace\"in CSSStyleSheet.prototype,e=Symbol(),n=new Map;class s{constructor(t,n){if(this._$cssResult$=!0,n!==e)throw Error(\"CSSResult is not constructable. Use `unsafeCSS` or `css` instead.\");this.cssText=t}get styleSheet(){let e=n.get(this.cssText);return t&&void 0===e&&(n.set(this.cssText,e=new CSSStyleSheet),e.replaceSync(this.cssText)),e}toString(){return this.cssText}}const o=t=>new s(\"string\"==typeof t?t:t+\"\",e),r=(t,...n)=>{const o=1===t.length?t[0]:n.reduce(((e,n,s)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if(\"number\"==typeof t)return t;throw Error(\"Value passed to 'css' function must be a 'css' function result: \"+t+\". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.\")})(n)+t[s+1]),t[0]);return new s(o,e)},i=(e,n)=>{t?e.adoptedStyleSheets=n.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet)):n.forEach((t=>{const n=document.createElement(\"style\"),s=window.litNonce;void 0!==s&&n.setAttribute(\"nonce\",s),n.textContent=t.cssText,e.appendChild(n)}))},S=t?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e=\"\";for(const n of t.cssRules)e+=n.cssText;return o(e)})(t):t;export{s as CSSResult,i as adoptStyles,r as css,S as getCompatibleStyle,t as supportsAdoptingStyleSheets,o as unsafeCSS};\n//# sourceMappingURL=css-tag.js.map\n","import{getCompatibleStyle as t,adoptStyles as i}from\"./css-tag.js\";export{CSSResult,adoptStyles,css,getCompatibleStyle,supportsAdoptingStyleSheets,unsafeCSS}from\"./css-tag.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */var s;const e=window.trustedTypes,r=e?e.emptyScript:\"\",h=window.reactiveElementPolyfillSupport,o={toAttribute(t,i){switch(i){case Boolean:t=t?r:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,i){let s=t;switch(i){case Boolean:s=null!==t;break;case Number:s=null===t?null:Number(t);break;case Object:case Array:try{s=JSON.parse(t)}catch(t){s=null}}return s}},n=(t,i)=>i!==t&&(i==i||t==t),l={attribute:!0,type:String,converter:o,reflect:!1,hasChanged:n};class a extends HTMLElement{constructor(){super(),this._$Et=new Map,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Ei=null,this.o()}static addInitializer(t){var i;null!==(i=this.l)&&void 0!==i||(this.l=[]),this.l.push(t)}static get observedAttributes(){this.finalize();const t=[];return this.elementProperties.forEach(((i,s)=>{const e=this._$Eh(s,i);void 0!==e&&(this._$Eu.set(e,s),t.push(e))})),t}static createProperty(t,i=l){if(i.state&&(i.attribute=!1),this.finalize(),this.elementProperties.set(t,i),!i.noAccessor&&!this.prototype.hasOwnProperty(t)){const s=\"symbol\"==typeof t?Symbol():\"__\"+t,e=this.getPropertyDescriptor(t,s,i);void 0!==e&&Object.defineProperty(this.prototype,t,e)}}static getPropertyDescriptor(t,i,s){return{get(){return this[i]},set(e){const r=this[t];this[i]=e,this.requestUpdate(t,r,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)||l}static finalize(){if(this.hasOwnProperty(\"finalized\"))return!1;this.finalized=!0;const t=Object.getPrototypeOf(this);if(t.finalize(),this.elementProperties=new Map(t.elementProperties),this._$Eu=new Map,this.hasOwnProperty(\"properties\")){const t=this.properties,i=[...Object.getOwnPropertyNames(t),...Object.getOwnPropertySymbols(t)];for(const s of i)this.createProperty(s,t[s])}return this.elementStyles=this.finalizeStyles(this.styles),!0}static finalizeStyles(i){const s=[];if(Array.isArray(i)){const e=new Set(i.flat(1/0).reverse());for(const i of e)s.unshift(t(i))}else void 0!==i&&s.push(t(i));return s}static _$Eh(t,i){const s=i.attribute;return!1===s?void 0:\"string\"==typeof s?s:\"string\"==typeof t?t.toLowerCase():void 0}o(){var t;this._$Ep=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$Em(),this.requestUpdate(),null===(t=this.constructor.l)||void 0===t||t.forEach((t=>t(this)))}addController(t){var i,s;(null!==(i=this._$Eg)&&void 0!==i?i:this._$Eg=[]).push(t),void 0!==this.renderRoot&&this.isConnected&&(null===(s=t.hostConnected)||void 0===s||s.call(t))}removeController(t){var i;null===(i=this._$Eg)||void 0===i||i.splice(this._$Eg.indexOf(t)>>>0,1)}_$Em(){this.constructor.elementProperties.forEach(((t,i)=>{this.hasOwnProperty(i)&&(this._$Et.set(i,this[i]),delete this[i])}))}createRenderRoot(){var t;const s=null!==(t=this.shadowRoot)&&void 0!==t?t:this.attachShadow(this.constructor.shadowRootOptions);return i(s,this.constructor.elementStyles),s}connectedCallback(){var t;void 0===this.renderRoot&&(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),null===(t=this._$Eg)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostConnected)||void 0===i?void 0:i.call(t)}))}enableUpdating(t){}disconnectedCallback(){var t;null===(t=this._$Eg)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostDisconnected)||void 0===i?void 0:i.call(t)}))}attributeChangedCallback(t,i,s){this._$AK(t,s)}_$ES(t,i,s=l){var e,r;const h=this.constructor._$Eh(t,s);if(void 0!==h&&!0===s.reflect){const n=(null!==(r=null===(e=s.converter)||void 0===e?void 0:e.toAttribute)&&void 0!==r?r:o.toAttribute)(i,s.type);this._$Ei=t,null==n?this.removeAttribute(h):this.setAttribute(h,n),this._$Ei=null}}_$AK(t,i){var s,e,r;const h=this.constructor,n=h._$Eu.get(t);if(void 0!==n&&this._$Ei!==n){const t=h.getPropertyOptions(n),l=t.converter,a=null!==(r=null!==(e=null===(s=l)||void 0===s?void 0:s.fromAttribute)&&void 0!==e?e:\"function\"==typeof l?l:null)&&void 0!==r?r:o.fromAttribute;this._$Ei=n,this[n]=a(i,t.type),this._$Ei=null}}requestUpdate(t,i,s){let e=!0;void 0!==t&&(((s=s||this.constructor.getPropertyOptions(t)).hasChanged||n)(this[t],i)?(this._$AL.has(t)||this._$AL.set(t,i),!0===s.reflect&&this._$Ei!==t&&(void 0===this._$EC&&(this._$EC=new Map),this._$EC.set(t,s))):e=!1),!this.isUpdatePending&&e&&(this._$Ep=this._$E_())}async _$E_(){this.isUpdatePending=!0;try{await this._$Ep}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var t;if(!this.isUpdatePending)return;this.hasUpdated,this._$Et&&(this._$Et.forEach(((t,i)=>this[i]=t)),this._$Et=void 0);let i=!1;const s=this._$AL;try{i=this.shouldUpdate(s),i?(this.willUpdate(s),null===(t=this._$Eg)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostUpdate)||void 0===i?void 0:i.call(t)})),this.update(s)):this._$EU()}catch(t){throw i=!1,this._$EU(),t}i&&this._$AE(s)}willUpdate(t){}_$AE(t){var i;null===(i=this._$Eg)||void 0===i||i.forEach((t=>{var i;return null===(i=t.hostUpdated)||void 0===i?void 0:i.call(t)})),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EU(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$Ep}shouldUpdate(t){return!0}update(t){void 0!==this._$EC&&(this._$EC.forEach(((t,i)=>this._$ES(i,this[i],t))),this._$EC=void 0),this._$EU()}updated(t){}firstUpdated(t){}}a.finalized=!0,a.elementProperties=new Map,a.elementStyles=[],a.shadowRootOptions={mode:\"open\"},null==h||h({ReactiveElement:a}),(null!==(s=globalThis.reactiveElementVersions)&&void 0!==s?s:globalThis.reactiveElementVersions=[]).push(\"1.3.1\");export{a as ReactiveElement,o as defaultConverter,n as notEqual};\n//# sourceMappingURL=reactive-element.js.map\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nvar t;const i=window,s=i.trustedTypes,e=s?s.createPolicy(\"lit-html\",{createHTML:t=>t}):void 0,o=\"$lit$\",n=`lit$${(Math.random()+\"\").slice(9)}$`,l=\"?\"+n,h=`<${l}>`,r=document,d=()=>r.createComment(\"\"),u=t=>null===t||\"object\"!=typeof t&&\"function\"!=typeof t,c=Array.isArray,v=t=>c(t)||\"function\"==typeof(null==t?void 0:t[Symbol.iterator]),a=\"[ \\t\\n\\f\\r]\",f=/<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g,_=/-->/g,m=/>/g,p=RegExp(`>|${a}(?:([^\\\\s\"'>=/]+)(${a}*=${a}*(?:[^ \\t\\n\\f\\r\"'\\`<>=]|(\"|')|))|$)`,\"g\"),g=/'/g,$=/\"/g,y=/^(?:script|style|textarea|title)$/i,w=t=>(i,...s)=>({_$litType$:t,strings:i,values:s}),x=w(1),b=w(2),T=Symbol.for(\"lit-noChange\"),A=Symbol.for(\"lit-nothing\"),E=new WeakMap,C=r.createTreeWalker(r,129,null,!1),P=(t,i)=>{const s=t.length-1,l=[];let r,d=2===i?\"<svg>\":\"\",u=f;for(let i=0;i<s;i++){const s=t[i];let e,c,v=-1,a=0;for(;a<s.length&&(u.lastIndex=a,c=u.exec(s),null!==c);)a=u.lastIndex,u===f?\"!--\"===c[1]?u=_:void 0!==c[1]?u=m:void 0!==c[2]?(y.test(c[2])&&(r=RegExp(\"</\"+c[2],\"g\")),u=p):void 0!==c[3]&&(u=p):u===p?\">\"===c[0]?(u=null!=r?r:f,v=-1):void 0===c[1]?v=-2:(v=u.lastIndex-c[2].length,e=c[1],u=void 0===c[3]?p:'\"'===c[3]?$:g):u===$||u===g?u=p:u===_||u===m?u=f:(u=p,r=void 0);const w=u===p&&t[i+1].startsWith(\"/>\")?\" \":\"\";d+=u===f?s+h:v>=0?(l.push(e),s.slice(0,v)+o+s.slice(v)+n+w):s+n+(-2===v?(l.push(void 0),i):w)}const c=d+(t[s]||\"<?>\")+(2===i?\"</svg>\":\"\");if(!Array.isArray(t)||!t.hasOwnProperty(\"raw\"))throw Error(\"invalid template strings array\");return[void 0!==e?e.createHTML(c):c,l]};class V{constructor({strings:t,_$litType$:i},e){let h;this.parts=[];let r=0,u=0;const c=t.length-1,v=this.parts,[a,f]=P(t,i);if(this.el=V.createElement(a,e),C.currentNode=this.el.content,2===i){const t=this.el.content,i=t.firstChild;i.remove(),t.append(...i.childNodes)}for(;null!==(h=C.nextNode())&&v.length<c;){if(1===h.nodeType){if(h.hasAttributes()){const t=[];for(const i of h.getAttributeNames())if(i.endsWith(o)||i.startsWith(n)){const s=f[u++];if(t.push(i),void 0!==s){const t=h.getAttribute(s.toLowerCase()+o).split(n),i=/([.?@])?(.*)/.exec(s);v.push({type:1,index:r,name:i[2],strings:t,ctor:\".\"===i[1]?k:\"?\"===i[1]?I:\"@\"===i[1]?L:R})}else v.push({type:6,index:r})}for(const i of t)h.removeAttribute(i)}if(y.test(h.tagName)){const t=h.textContent.split(n),i=t.length-1;if(i>0){h.textContent=s?s.emptyScript:\"\";for(let s=0;s<i;s++)h.append(t[s],d()),C.nextNode(),v.push({type:2,index:++r});h.append(t[i],d())}}}else if(8===h.nodeType)if(h.data===l)v.push({type:2,index:r});else{let t=-1;for(;-1!==(t=h.data.indexOf(n,t+1));)v.push({type:7,index:r}),t+=n.length-1}r++}}static createElement(t,i){const s=r.createElement(\"template\");return s.innerHTML=t,s}}function N(t,i,s=t,e){var o,n,l,h;if(i===T)return i;let r=void 0!==e?null===(o=s._$Co)||void 0===o?void 0:o[e]:s._$Cl;const d=u(i)?void 0:i._$litDirective$;return(null==r?void 0:r.constructor)!==d&&(null===(n=null==r?void 0:r._$AO)||void 0===n||n.call(r,!1),void 0===d?r=void 0:(r=new d(t),r._$AT(t,s,e)),void 0!==e?(null!==(l=(h=s)._$Co)&&void 0!==l?l:h._$Co=[])[e]=r:s._$Cl=r),void 0!==r&&(i=N(t,r._$AS(t,i.values),r,e)),i}class S{constructor(t,i){this.u=[],this._$AN=void 0,this._$AD=t,this._$AM=i}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}v(t){var i;const{el:{content:s},parts:e}=this._$AD,o=(null!==(i=null==t?void 0:t.creationScope)&&void 0!==i?i:r).importNode(s,!0);C.currentNode=o;let n=C.nextNode(),l=0,h=0,d=e[0];for(;void 0!==d;){if(l===d.index){let i;2===d.type?i=new M(n,n.nextSibling,this,t):1===d.type?i=new d.ctor(n,d.name,d.strings,this,t):6===d.type&&(i=new z(n,this,t)),this.u.push(i),d=e[++h]}l!==(null==d?void 0:d.index)&&(n=C.nextNode(),l++)}return o}p(t){let i=0;for(const s of this.u)void 0!==s&&(void 0!==s.strings?(s._$AI(t,s,i),i+=s.strings.length-2):s._$AI(t[i])),i++}}class M{constructor(t,i,s,e){var o;this.type=2,this._$AH=A,this._$AN=void 0,this._$AA=t,this._$AB=i,this._$AM=s,this.options=e,this._$Cm=null===(o=null==e?void 0:e.isConnected)||void 0===o||o}get _$AU(){var t,i;return null!==(i=null===(t=this._$AM)||void 0===t?void 0:t._$AU)&&void 0!==i?i:this._$Cm}get parentNode(){let t=this._$AA.parentNode;const i=this._$AM;return void 0!==i&&11===(null==t?void 0:t.nodeType)&&(t=i.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,i=this){t=N(this,t,i),u(t)?t===A||null==t||\"\"===t?(this._$AH!==A&&this._$AR(),this._$AH=A):t!==this._$AH&&t!==T&&this.g(t):void 0!==t._$litType$?this.$(t):void 0!==t.nodeType?this.T(t):v(t)?this.k(t):this.g(t)}S(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}T(t){this._$AH!==t&&(this._$AR(),this._$AH=this.S(t))}g(t){this._$AH!==A&&u(this._$AH)?this._$AA.nextSibling.data=t:this.T(r.createTextNode(t)),this._$AH=t}$(t){var i;const{values:s,_$litType$:e}=t,o=\"number\"==typeof e?this._$AC(t):(void 0===e.el&&(e.el=V.createElement(e.h,this.options)),e);if((null===(i=this._$AH)||void 0===i?void 0:i._$AD)===o)this._$AH.p(s);else{const t=new S(o,this),i=t.v(this.options);t.p(s),this.T(i),this._$AH=t}}_$AC(t){let i=E.get(t.strings);return void 0===i&&E.set(t.strings,i=new V(t)),i}k(t){c(this._$AH)||(this._$AH=[],this._$AR());const i=this._$AH;let s,e=0;for(const o of t)e===i.length?i.push(s=new M(this.S(d()),this.S(d()),this,this.options)):s=i[e],s._$AI(o),e++;e<i.length&&(this._$AR(s&&s._$AB.nextSibling,e),i.length=e)}_$AR(t=this._$AA.nextSibling,i){var s;for(null===(s=this._$AP)||void 0===s||s.call(this,!1,!0,i);t&&t!==this._$AB;){const i=t.nextSibling;t.remove(),t=i}}setConnected(t){var i;void 0===this._$AM&&(this._$Cm=t,null===(i=this._$AP)||void 0===i||i.call(this,t))}}class R{constructor(t,i,s,e,o){this.type=1,this._$AH=A,this._$AN=void 0,this.element=t,this.name=i,this._$AM=e,this.options=o,s.length>2||\"\"!==s[0]||\"\"!==s[1]?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=A}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,i=this,s,e){const o=this.strings;let n=!1;if(void 0===o)t=N(this,t,i,0),n=!u(t)||t!==this._$AH&&t!==T,n&&(this._$AH=t);else{const e=t;let l,h;for(t=o[0],l=0;l<o.length-1;l++)h=N(this,e[s+l],i,l),h===T&&(h=this._$AH[l]),n||(n=!u(h)||h!==this._$AH[l]),h===A?t=A:t!==A&&(t+=(null!=h?h:\"\")+o[l+1]),this._$AH[l]=h}n&&!e&&this.j(t)}j(t){t===A?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,null!=t?t:\"\")}}class k extends R{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===A?void 0:t}}const H=s?s.emptyScript:\"\";class I extends R{constructor(){super(...arguments),this.type=4}j(t){t&&t!==A?this.element.setAttribute(this.name,H):this.element.removeAttribute(this.name)}}class L extends R{constructor(t,i,s,e,o){super(t,i,s,e,o),this.type=5}_$AI(t,i=this){var s;if((t=null!==(s=N(this,t,i,0))&&void 0!==s?s:A)===T)return;const e=this._$AH,o=t===A&&e!==A||t.capture!==e.capture||t.once!==e.once||t.passive!==e.passive,n=t!==A&&(e===A||o);o&&this.element.removeEventListener(this.name,this,e),n&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){var i,s;\"function\"==typeof this._$AH?this._$AH.call(null!==(s=null===(i=this.options)||void 0===i?void 0:i.host)&&void 0!==s?s:this.element,t):this._$AH.handleEvent(t)}}class z{constructor(t,i,s){this.element=t,this.type=6,this._$AN=void 0,this._$AM=i,this.options=s}get _$AU(){return this._$AM._$AU}_$AI(t){N(this,t)}}const Z={P:o,A:n,M:l,C:1,L:P,D:S,R:v,V:N,I:M,H:R,N:I,U:L,F:k,B:z},j=i.litHtmlPolyfillSupport;null==j||j(V,M),(null!==(t=i.litHtmlVersions)&&void 0!==t?t:i.litHtmlVersions=[]).push(\"2.7.0\");const B=(t,i,s)=>{var e,o;const n=null!==(e=null==s?void 0:s.renderBefore)&&void 0!==e?e:i;let l=n._$litPart$;if(void 0===l){const t=null!==(o=null==s?void 0:s.renderBefore)&&void 0!==o?o:null;n._$litPart$=l=new M(i.insertBefore(d(),t),t,void 0,null!=s?s:{})}return l._$AI(t),l};export{Z as _$LH,x as html,T as noChange,A as nothing,B as render,b as svg};\n//# sourceMappingURL=lit-html.js.map\n","import{ReactiveElement as t}from\"@lit/reactive-element\";export*from\"@lit/reactive-element\";import{render as e,noChange as i}from\"lit-html\";export*from\"lit-html\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */var l,o;const r=t;class s extends t{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var t,e;const i=super.createRenderRoot();return null!==(t=(e=this.renderOptions).renderBefore)&&void 0!==t||(e.renderBefore=i.firstChild),i}update(t){const i=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=e(i,this.renderRoot,this.renderOptions)}connectedCallback(){var t;super.connectedCallback(),null===(t=this._$Do)||void 0===t||t.setConnected(!0)}disconnectedCallback(){var t;super.disconnectedCallback(),null===(t=this._$Do)||void 0===t||t.setConnected(!1)}render(){return i}}s.finalized=!0,s._$litElement$=!0,null===(l=globalThis.litElementHydrateSupport)||void 0===l||l.call(globalThis,{LitElement:s});const n=globalThis.litElementPolyfillSupport;null==n||n({LitElement:s});const h={_$AK:(t,e,i)=>{t._$AK(e,i)},_$AL:t=>t._$AL};(null!==(o=globalThis.litElementVersions)&&void 0!==o?o:globalThis.litElementVersions=[]).push(\"3.3.0\");export{s as LitElement,r as UpdatingElement,h as _$LE};\n//# sourceMappingURL=lit-element.js.map\n","var noop = {value: () => {}};\n\nfunction dispatch() {\n for (var i = 0, n = arguments.length, _ = {}, t; i < n; ++i) {\n if (!(t = arguments[i] + \"\") || (t in _) || /[\\s.]/.test(t)) throw new Error(\"illegal type: \" + t);\n _[t] = [];\n }\n return new Dispatch(_);\n}\n\nfunction Dispatch(_) {\n this._ = _;\n}\n\nfunction parseTypenames(typenames, types) {\n return typenames.trim().split(/^|\\s+/).map(function(t) {\n var name = \"\", i = t.indexOf(\".\");\n if (i >= 0) name = t.slice(i + 1), t = t.slice(0, i);\n if (t && !types.hasOwnProperty(t)) throw new Error(\"unknown type: \" + t);\n return {type: t, name: name};\n });\n}\n\nDispatch.prototype = dispatch.prototype = {\n constructor: Dispatch,\n on: function(typename, callback) {\n var _ = this._,\n T = parseTypenames(typename + \"\", _),\n t,\n i = -1,\n n = T.length;\n\n // If no callback was specified, return the callback of the given type and name.\n if (arguments.length < 2) {\n while (++i < n) if ((t = (typename = T[i]).type) && (t = get(_[t], typename.name))) return t;\n return;\n }\n\n // If a type was specified, set the callback for the given type and name.\n // Otherwise, if a null callback was specified, remove callbacks of the given name.\n if (callback != null && typeof callback !== \"function\") throw new Error(\"invalid callback: \" + callback);\n while (++i < n) {\n if (t = (typename = T[i]).type) _[t] = set(_[t], typename.name, callback);\n else if (callback == null) for (t in _) _[t] = set(_[t], typename.name, null);\n }\n\n return this;\n },\n copy: function() {\n var copy = {}, _ = this._;\n for (var t in _) copy[t] = _[t].slice();\n return new Dispatch(copy);\n },\n call: function(type, that) {\n if ((n = arguments.length - 2) > 0) for (var args = new Array(n), i = 0, n, t; i < n; ++i) args[i] = arguments[i + 2];\n if (!this._.hasOwnProperty(type)) throw new Error(\"unknown type: \" + type);\n for (t = this._[type], i = 0, n = t.length; i < n; ++i) t[i].value.apply(that, args);\n },\n apply: function(type, that, args) {\n if (!this._.hasOwnProperty(type)) throw new Error(\"unknown type: \" + type);\n for (var t = this._[type], i = 0, n = t.length; i < n; ++i) t[i].value.apply(that, args);\n }\n};\n\nfunction get(type, name) {\n for (var i = 0, n = type.length, c; i < n; ++i) {\n if ((c = type[i]).name === name) {\n return c.value;\n }\n }\n}\n\nfunction set(type, name, callback) {\n for (var i = 0, n = type.length; i < n; ++i) {\n if (type[i].name === name) {\n type[i] = noop, type = type.slice(0, i).concat(type.slice(i + 1));\n break;\n }\n }\n if (callback != null) type.push({name: name, value: callback});\n return type;\n}\n\nexport default dispatch;\n","export var xhtml = \"http://www.w3.org/1999/xhtml\";\n\nexport default {\n svg: \"http://www.w3.org/2000/svg\",\n xhtml: xhtml,\n xlink: \"http://www.w3.org/1999/xlink\",\n xml: \"http://www.w3.org/XML/1998/namespace\",\n xmlns: \"http://www.w3.org/2000/xmlns/\"\n};\n","import namespaces from \"./namespaces.js\";\n\nexport default function(name) {\n var prefix = name += \"\", i = prefix.indexOf(\":\");\n if (i >= 0 && (prefix = name.slice(0, i)) !== \"xmlns\") name = name.slice(i + 1);\n return namespaces.hasOwnProperty(prefix) ? {space: namespaces[prefix], local: name} : name; // eslint-disable-line no-prototype-builtins\n}\n","import namespace from \"./namespace.js\";\nimport {xhtml} from \"./namespaces.js\";\n\nfunction creatorInherit(name) {\n return function() {\n var document = this.ownerDocument,\n uri = this.namespaceURI;\n return uri === xhtml && document.documentElement.namespaceURI === xhtml\n ? document.createElement(name)\n : document.createElementNS(uri, name);\n };\n}\n\nfunction creatorFixed(fullname) {\n return function() {\n return this.ownerDocument.createElementNS(fullname.space, fullname.local);\n };\n}\n\nexport default function(name) {\n var fullname = namespace(name);\n return (fullname.local\n ? creatorFixed\n : creatorInherit)(fullname);\n}\n","function none() {}\n\nexport default function(selector) {\n return selector == null ? none : function() {\n return this.querySelector(selector);\n };\n}\n","function empty() {\n return [];\n}\n\nexport default function(selector) {\n return selector == null ? empty : function() {\n return this.querySelectorAll(selector);\n };\n}\n","import {Selection} from \"./index.js\";\nimport array from \"../array.js\";\nimport selectorAll from \"../selectorAll.js\";\n\nfunction arrayAll(select) {\n return function() {\n return array(select.apply(this, arguments));\n };\n}\n\nexport default function(select) {\n if (typeof select === \"function\") select = arrayAll(select);\n else select = selectorAll(select);\n\n for (var groups = this._groups, m = groups.length, subgroups = [], parents = [], j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n subgroups.push(select.call(node, node.__data__, i, group));\n parents.push(node);\n }\n }\n }\n\n return new Selection(subgroups, parents);\n}\n","// Given something array like (or null), returns something that is strictly an\n// array. This is used to ensure that array-like objects passed to d3.selectAll\n// or selection.selectAll are converted into proper arrays when creating a\n// selection; we don’t ever want to create a selection backed by a live\n// HTMLCollection or NodeList. However, note that selection.selectAll will use a\n// static NodeList as a group, since it safely derived from querySelectorAll.\nexport default function array(x) {\n return x == null ? [] : Array.isArray(x) ? x : Array.from(x);\n}\n","export default function(selector) {\n return function() {\n return this.matches(selector);\n };\n}\n\nexport function childMatcher(selector) {\n return function(node) {\n return node.matches(selector);\n };\n}\n\n","import {childMatcher} from \"../matcher.js\";\n\nvar find = Array.prototype.find;\n\nfunction childFind(match) {\n return function() {\n return find.call(this.children, match);\n };\n}\n\nfunction childFirst() {\n return this.firstElementChild;\n}\n\nexport default function(match) {\n return this.select(match == null ? childFirst\n : childFind(typeof match === \"function\" ? match : childMatcher(match)));\n}\n","import {childMatcher} from \"../matcher.js\";\n\nvar filter = Array.prototype.filter;\n\nfunction children() {\n return Array.from(this.children);\n}\n\nfunction childrenFilter(match) {\n return function() {\n return filter.call(this.children, match);\n };\n}\n\nexport default function(match) {\n return this.selectAll(match == null ? children\n : childrenFilter(typeof match === \"function\" ? match : childMatcher(match)));\n}\n","export default function(update) {\n return new Array(update.length);\n}\n","import sparse from \"./sparse.js\";\nimport {Selection} from \"./index.js\";\n\nexport default function() {\n return new Selection(this._enter || this._groups.map(sparse), this._parents);\n}\n\nexport function EnterNode(parent, datum) {\n this.ownerDocument = parent.ownerDocument;\n this.namespaceURI = parent.namespaceURI;\n this._next = null;\n this._parent = parent;\n this.__data__ = datum;\n}\n\nEnterNode.prototype = {\n constructor: EnterNode,\n appendChild: function(child) { return this._parent.insertBefore(child, this._next); },\n insertBefore: function(child, next) { return this._parent.insertBefore(child, next); },\n querySelector: function(selector) { return this._parent.querySelector(selector); },\n querySelectorAll: function(selector) { return this._parent.querySelectorAll(selector); }\n};\n","import {Selection} from \"./index.js\";\nimport {EnterNode} from \"./enter.js\";\nimport constant from \"../constant.js\";\n\nfunction bindIndex(parent, group, enter, update, exit, data) {\n var i = 0,\n node,\n groupLength = group.length,\n dataLength = data.length;\n\n // Put any non-null nodes that fit into update.\n // Put any null nodes into enter.\n // Put any remaining data into enter.\n for (; i < dataLength; ++i) {\n if (node = group[i]) {\n node.__data__ = data[i];\n update[i] = node;\n } else {\n enter[i] = new EnterNode(parent, data[i]);\n }\n }\n\n // Put any non-null nodes that don’t fit into exit.\n for (; i < groupLength; ++i) {\n if (node = group[i]) {\n exit[i] = node;\n }\n }\n}\n\nfunction bindKey(parent, group, enter, update, exit, data, key) {\n var i,\n node,\n nodeByKeyValue = new Map,\n groupLength = group.length,\n dataLength = data.length,\n keyValues = new Array(groupLength),\n keyValue;\n\n // Compute the key for each node.\n // If multiple nodes have the same key, the duplicates are added to exit.\n for (i = 0; i < groupLength; ++i) {\n if (node = group[i]) {\n keyValues[i] = keyValue = key.call(node, node.__data__, i, group) + \"\";\n if (nodeByKeyValue.has(keyValue)) {\n exit[i] = node;\n } else {\n nodeByKeyValue.set(keyValue, node);\n }\n }\n }\n\n // Compute the key for each datum.\n // If there a node associated with this key, join and add it to update.\n // If there is not (or the key is a duplicate), add it to enter.\n for (i = 0; i < dataLength; ++i) {\n keyValue = key.call(parent, data[i], i, data) + \"\";\n if (node = nodeByKeyValue.get(keyValue)) {\n update[i] = node;\n node.__data__ = data[i];\n nodeByKeyValue.delete(keyValue);\n } else {\n enter[i] = new EnterNode(parent, data[i]);\n }\n }\n\n // Add any remaining nodes that were not bound to data to exit.\n for (i = 0; i < groupLength; ++i) {\n if ((node = group[i]) && (nodeByKeyValue.get(keyValues[i]) === node)) {\n exit[i] = node;\n }\n }\n}\n\nfunction datum(node) {\n return node.__data__;\n}\n\nexport default function(value, key) {\n if (!arguments.length) return Array.from(this, datum);\n\n var bind = key ? bindKey : bindIndex,\n parents = this._parents,\n groups = this._groups;\n\n if (typeof value !== \"function\") value = constant(value);\n\n for (var m = groups.length, update = new Array(m), enter = new Array(m), exit = new Array(m), j = 0; j < m; ++j) {\n var parent = parents[j],\n group = groups[j],\n groupLength = group.length,\n data = arraylike(value.call(parent, parent && parent.__data__, j, parents)),\n dataLength = data.length,\n enterGroup = enter[j] = new Array(dataLength),\n updateGroup = update[j] = new Array(dataLength),\n exitGroup = exit[j] = new Array(groupLength);\n\n bind(parent, group, enterGroup, updateGroup, exitGroup, data, key);\n\n // Now connect the enter nodes to their following update node, such that\n // appendChild can insert the materialized enter node before this node,\n // rather than at the end of the parent node.\n for (var i0 = 0, i1 = 0, previous, next; i0 < dataLength; ++i0) {\n if (previous = enterGroup[i0]) {\n if (i0 >= i1) i1 = i0 + 1;\n while (!(next = updateGroup[i1]) && ++i1 < dataLength);\n previous._next = next || null;\n }\n }\n }\n\n update = new Selection(update, parents);\n update._enter = enter;\n update._exit = exit;\n return update;\n}\n\n// Given some data, this returns an array-like view of it: an object that\n// exposes a length property and allows numeric indexing. Note that unlike\n// selectAll, this isn’t worried about “live” collections because the resulting\n// array will only be used briefly while data is being bound. (It is possible to\n// cause the data to change while iterating by using a key function, but please\n// don’t; we’d rather avoid a gratuitous copy.)\nfunction arraylike(data) {\n return typeof data === \"object\" && \"length\" in data\n ? data // Array, TypedArray, NodeList, array-like\n : Array.from(data); // Map, Set, iterable, string, or anything else\n}\n","import {Selection} from \"./index.js\";\n\nexport default function(compare) {\n if (!compare) compare = ascending;\n\n function compareNode(a, b) {\n return a && b ? compare(a.__data__, b.__data__) : !a - !b;\n }\n\n for (var groups = this._groups, m = groups.length, sortgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, sortgroup = sortgroups[j] = new Array(n), node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n sortgroup[i] = node;\n }\n }\n sortgroup.sort(compareNode);\n }\n\n return new Selection(sortgroups, this._parents).order();\n}\n\nfunction ascending(a, b) {\n return a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;\n}\n","import namespace from \"../namespace.js\";\n\nfunction attrRemove(name) {\n return function() {\n this.removeAttribute(name);\n };\n}\n\nfunction attrRemoveNS(fullname) {\n return function() {\n this.removeAttributeNS(fullname.space, fullname.local);\n };\n}\n\nfunction attrConstant(name, value) {\n return function() {\n this.setAttribute(name, value);\n };\n}\n\nfunction attrConstantNS(fullname, value) {\n return function() {\n this.setAttributeNS(fullname.space, fullname.local, value);\n };\n}\n\nfunction attrFunction(name, value) {\n return function() {\n var v = value.apply(this, arguments);\n if (v == null) this.removeAttribute(name);\n else this.setAttribute(name, v);\n };\n}\n\nfunction attrFunctionNS(fullname, value) {\n return function() {\n var v = value.apply(this, arguments);\n if (v == null) this.removeAttributeNS(fullname.space, fullname.local);\n else this.setAttributeNS(fullname.space, fullname.local, v);\n };\n}\n\nexport default function(name, value) {\n var fullname = namespace(name);\n\n if (arguments.length < 2) {\n var node = this.node();\n return fullname.local\n ? node.getAttributeNS(fullname.space, fullname.local)\n : node.getAttribute(fullname);\n }\n\n return this.each((value == null\n ? (fullname.local ? attrRemoveNS : attrRemove) : (typeof value === \"function\"\n ? (fullname.local ? attrFunctionNS : attrFunction)\n : (fullname.local ? attrConstantNS : attrConstant)))(fullname, value));\n}\n","export default function(node) {\n return (node.ownerDocument && node.ownerDocument.defaultView) // node is a Node\n || (node.document && node) // node is a Window\n || node.defaultView; // node is a Document\n}\n","import defaultView from \"../window.js\";\n\nfunction styleRemove(name) {\n return function() {\n this.style.removeProperty(name);\n };\n}\n\nfunction styleConstant(name, value, priority) {\n return function() {\n this.style.setProperty(name, value, priority);\n };\n}\n\nfunction styleFunction(name, value, priority) {\n return function() {\n var v = value.apply(this, arguments);\n if (v == null) this.style.removeProperty(name);\n else this.style.setProperty(name, v, priority);\n };\n}\n\nexport default function(name, value, priority) {\n return arguments.length > 1\n ? this.each((value == null\n ? styleRemove : typeof value === \"function\"\n ? styleFunction\n : styleConstant)(name, value, priority == null ? \"\" : priority))\n : styleValue(this.node(), name);\n}\n\nexport function styleValue(node, name) {\n return node.style.getPropertyValue(name)\n || defaultView(node).getComputedStyle(node, null).getPropertyValue(name);\n}\n","function propertyRemove(name) {\n return function() {\n delete this[name];\n };\n}\n\nfunction propertyConstant(name, value) {\n return function() {\n this[name] = value;\n };\n}\n\nfunction propertyFunction(name, value) {\n return function() {\n var v = value.apply(this, arguments);\n if (v == null) delete this[name];\n else this[name] = v;\n };\n}\n\nexport default function(name, value) {\n return arguments.length > 1\n ? this.each((value == null\n ? propertyRemove : typeof value === \"function\"\n ? propertyFunction\n : propertyConstant)(name, value))\n : this.node()[name];\n}\n","function classArray(string) {\n return string.trim().split(/^|\\s+/);\n}\n\nfunction classList(node) {\n return node.classList || new ClassList(node);\n}\n\nfunction ClassList(node) {\n this._node = node;\n this._names = classArray(node.getAttribute(\"class\") || \"\");\n}\n\nClassList.prototype = {\n add: function(name) {\n var i = this._names.indexOf(name);\n if (i < 0) {\n this._names.push(name);\n this._node.setAttribute(\"class\", this._names.join(\" \"));\n }\n },\n remove: function(name) {\n var i = this._names.indexOf(name);\n if (i >= 0) {\n this._names.splice(i, 1);\n this._node.setAttribute(\"class\", this._names.join(\" \"));\n }\n },\n contains: function(name) {\n return this._names.indexOf(name) >= 0;\n }\n};\n\nfunction classedAdd(node, names) {\n var list = classList(node), i = -1, n = names.length;\n while (++i < n) list.add(names[i]);\n}\n\nfunction classedRemove(node, names) {\n var list = classList(node), i = -1, n = names.length;\n while (++i < n) list.remove(names[i]);\n}\n\nfunction classedTrue(names) {\n return function() {\n classedAdd(this, names);\n };\n}\n\nfunction classedFalse(names) {\n return function() {\n classedRemove(this, names);\n };\n}\n\nfunction classedFunction(names, value) {\n return function() {\n (value.apply(this, arguments) ? classedAdd : classedRemove)(this, names);\n };\n}\n\nexport default function(name, value) {\n var names = classArray(name + \"\");\n\n if (arguments.length < 2) {\n var list = classList(this.node()), i = -1, n = names.length;\n while (++i < n) if (!list.contains(names[i])) return false;\n return true;\n }\n\n return this.each((typeof value === \"function\"\n ? classedFunction : value\n ? classedTrue\n : classedFalse)(names, value));\n}\n","function textRemove() {\n this.textContent = \"\";\n}\n\nfunction textConstant(value) {\n return function() {\n this.textContent = value;\n };\n}\n\nfunction textFunction(value) {\n return function() {\n var v = value.apply(this, arguments);\n this.textContent = v == null ? \"\" : v;\n };\n}\n\nexport default function(value) {\n return arguments.length\n ? this.each(value == null\n ? textRemove : (typeof value === \"function\"\n ? textFunction\n : textConstant)(value))\n : this.node().textContent;\n}\n","function htmlRemove() {\n this.innerHTML = \"\";\n}\n\nfunction htmlConstant(value) {\n return function() {\n this.innerHTML = value;\n };\n}\n\nfunction htmlFunction(value) {\n return function() {\n var v = value.apply(this, arguments);\n this.innerHTML = v == null ? \"\" : v;\n };\n}\n\nexport default function(value) {\n return arguments.length\n ? this.each(value == null\n ? htmlRemove : (typeof value === \"function\"\n ? htmlFunction\n : htmlConstant)(value))\n : this.node().innerHTML;\n}\n","function raise() {\n if (this.nextSibling) this.parentNode.appendChild(this);\n}\n\nexport default function() {\n return this.each(raise);\n}\n","function lower() {\n if (this.previousSibling) this.parentNode.insertBefore(this, this.parentNode.firstChild);\n}\n\nexport default function() {\n return this.each(lower);\n}\n","import creator from \"../creator.js\";\nimport selector from \"../selector.js\";\n\nfunction constantNull() {\n return null;\n}\n\nexport default function(name, before) {\n var create = typeof name === \"function\" ? name : creator(name),\n select = before == null ? constantNull : typeof before === \"function\" ? before : selector(before);\n return this.select(function() {\n return this.insertBefore(create.apply(this, arguments), select.apply(this, arguments) || null);\n });\n}\n","function remove() {\n var parent = this.parentNode;\n if (parent) parent.removeChild(this);\n}\n\nexport default function() {\n return this.each(remove);\n}\n","function selection_cloneShallow() {\n var clone = this.cloneNode(false), parent = this.parentNode;\n return parent ? parent.insertBefore(clone, this.nextSibling) : clone;\n}\n\nfunction selection_cloneDeep() {\n var clone = this.cloneNode(true), parent = this.parentNode;\n return parent ? parent.insertBefore(clone, this.nextSibling) : clone;\n}\n\nexport default function(deep) {\n return this.select(deep ? selection_cloneDeep : selection_cloneShallow);\n}\n","function contextListener(listener) {\n return function(event) {\n listener.call(this, event, this.__data__);\n };\n}\n\nfunction parseTypenames(typenames) {\n return typenames.trim().split(/^|\\s+/).map(function(t) {\n var name = \"\", i = t.indexOf(\".\");\n if (i >= 0) name = t.slice(i + 1), t = t.slice(0, i);\n return {type: t, name: name};\n });\n}\n\nfunction onRemove(typename) {\n return function() {\n var on = this.__on;\n if (!on) return;\n for (var j = 0, i = -1, m = on.length, o; j < m; ++j) {\n if (o = on[j], (!typename.type || o.type === typename.type) && o.name === typename.name) {\n this.removeEventListener(o.type, o.listener, o.options);\n } else {\n on[++i] = o;\n }\n }\n if (++i) on.length = i;\n else delete this.__on;\n };\n}\n\nfunction onAdd(typename, value, options) {\n return function() {\n var on = this.__on, o, listener = contextListener(value);\n if (on) for (var j = 0, m = on.length; j < m; ++j) {\n if ((o = on[j]).type === typename.type && o.name === typename.name) {\n this.removeEventListener(o.type, o.listener, o.options);\n this.addEventListener(o.type, o.listener = listener, o.options = options);\n o.value = value;\n return;\n }\n }\n this.addEventListener(typename.type, listener, options);\n o = {type: typename.type, name: typename.name, value: value, listener: listener, options: options};\n if (!on) this.__on = [o];\n else on.push(o);\n };\n}\n\nexport default function(typename, value, options) {\n var typenames = parseTypenames(typename + \"\"), i, n = typenames.length, t;\n\n if (arguments.length < 2) {\n var on = this.node().__on;\n if (on) for (var j = 0, m = on.length, o; j < m; ++j) {\n for (i = 0, o = on[j]; i < n; ++i) {\n if ((t = typenames[i]).type === o.type && t.name === o.name) {\n return o.value;\n }\n }\n }\n return;\n }\n\n on = value ? onAdd : onRemove;\n for (i = 0; i < n; ++i) this.each(on(typenames[i], value, options));\n return this;\n}\n","import defaultView from \"../window.js\";\n\nfunction dispatchEvent(node, type, params) {\n var window = defaultView(node),\n event = window.CustomEvent;\n\n if (typeof event === \"function\") {\n event = new event(type, params);\n } else {\n event = window.document.createEvent(\"Event\");\n if (params) event.initEvent(type, params.bubbles, params.cancelable), event.detail = params.detail;\n else event.initEvent(type, false, false);\n }\n\n node.dispatchEvent(event);\n}\n\nfunction dispatchConstant(type, params) {\n return function() {\n return dispatchEvent(this, type, params);\n };\n}\n\nfunction dispatchFunction(type, params) {\n return function() {\n return dispatchEvent(this, type, params.apply(this, arguments));\n };\n}\n\nexport default function(type, params) {\n return this.each((typeof params === \"function\"\n ? dispatchFunction\n : dispatchConstant)(type, params));\n}\n","import selection_select from \"./select.js\";\nimport selection_selectAll from \"./selectAll.js\";\nimport selection_selectChild from \"./selectChild.js\";\nimport selection_selectChildren from \"./selectChildren.js\";\nimport selection_filter from \"./filter.js\";\nimport selection_data from \"./data.js\";\nimport selection_enter from \"./enter.js\";\nimport selection_exit from \"./exit.js\";\nimport selection_join from \"./join.js\";\nimport selection_merge from \"./merge.js\";\nimport selection_order from \"./order.js\";\nimport selection_sort from \"./sort.js\";\nimport selection_call from \"./call.js\";\nimport selection_nodes from \"./nodes.js\";\nimport selection_node from \"./node.js\";\nimport selection_size from \"./size.js\";\nimport selection_empty from \"./empty.js\";\nimport selection_each from \"./each.js\";\nimport selection_attr from \"./attr.js\";\nimport selection_style from \"./style.js\";\nimport selection_property from \"./property.js\";\nimport selection_classed from \"./classed.js\";\nimport selection_text from \"./text.js\";\nimport selection_html from \"./html.js\";\nimport selection_raise from \"./raise.js\";\nimport selection_lower from \"./lower.js\";\nimport selection_append from \"./append.js\";\nimport selection_insert from \"./insert.js\";\nimport selection_remove from \"./remove.js\";\nimport selection_clone from \"./clone.js\";\nimport selection_datum from \"./datum.js\";\nimport selection_on from \"./on.js\";\nimport selection_dispatch from \"./dispatch.js\";\nimport selection_iterator from \"./iterator.js\";\n\nexport var root = [null];\n\nexport function Selection(groups, parents) {\n this._groups = groups;\n this._parents = parents;\n}\n\nfunction selection() {\n return new Selection([[document.documentElement]], root);\n}\n\nfunction selection_selection() {\n return this;\n}\n\nSelection.prototype = selection.prototype = {\n constructor: Selection,\n select: selection_select,\n selectAll: selection_selectAll,\n selectChild: selection_selectChild,\n selectChildren: selection_selectChildren,\n filter: selection_filter,\n data: selection_data,\n enter: selection_enter,\n exit: selection_exit,\n join: selection_join,\n merge: selection_merge,\n selection: selection_selection,\n order: selection_order,\n sort: selection_sort,\n call: selection_call,\n nodes: selection_nodes,\n node: selection_node,\n size: selection_size,\n empty: selection_empty,\n each: selection_each,\n attr: selection_attr,\n style: selection_style,\n property: selection_property,\n classed: selection_classed,\n text: selection_text,\n html: selection_html,\n raise: selection_raise,\n lower: selection_lower,\n append: selection_append,\n insert: selection_insert,\n remove: selection_remove,\n clone: selection_clone,\n datum: selection_datum,\n on: selection_on,\n dispatch: selection_dispatch,\n [Symbol.iterator]: selection_iterator\n};\n\nexport default selection;\n","import {Selection, root} from \"./selection/index.js\";\n\nexport default function(selector) {\n return typeof selector === \"string\"\n ? new Selection([[document.querySelector(selector)]], [document.documentElement])\n : new Selection([[selector]], root);\n}\n","export default function(constructor, factory, prototype) {\n constructor.prototype = factory.prototype = prototype;\n prototype.constructor = constructor;\n}\n\nexport function extend(parent, definition) {\n var prototype = Object.create(parent.prototype);\n for (var key in definition) prototype[key] = definition[key];\n return prototype;\n}\n","import define, {extend} from \"./define.js\";\n\nexport function Color() {}\n\nexport var darker = 0.7;\nexport var brighter = 1 / darker;\n\nvar reI = \"\\\\s*([+-]?\\\\d+)\\\\s*\",\n reN = \"\\\\s*([+-]?\\\\d*\\\\.?\\\\d+(?:[eE][+-]?\\\\d+)?)\\\\s*\",\n reP = \"\\\\s*([+-]?\\\\d*\\\\.?\\\\d+(?:[eE][+-]?\\\\d+)?)%\\\\s*\",\n reHex = /^#([0-9a-f]{3,8})$/,\n reRgbInteger = new RegExp(\"^rgb\\\\(\" + [reI, reI, reI] + \"\\\\)$\"),\n reRgbPercent = new RegExp(\"^rgb\\\\(\" + [reP, reP, reP] + \"\\\\)$\"),\n reRgbaInteger = new RegExp(\"^rgba\\\\(\" + [reI, reI, reI, reN] + \"\\\\)$\"),\n reRgbaPercent = new RegExp(\"^rgba\\\\(\" + [reP, reP, reP, reN] + \"\\\\)$\"),\n reHslPercent = new RegExp(\"^hsl\\\\(\" + [reN, reP, reP] + \"\\\\)$\"),\n reHslaPercent = new RegExp(\"^hsla\\\\(\" + [reN, reP, reP, reN] + \"\\\\)$\");\n\nvar named = {\n aliceblue: 0xf0f8ff,\n antiquewhite: 0xfaebd7,\n aqua: 0x00ffff,\n aquamarine: 0x7fffd4,\n azure: 0xf0ffff,\n beige: 0xf5f5dc,\n bisque: 0xffe4c4,\n black: 0x000000,\n blanchedalmond: 0xffebcd,\n blue: 0x0000ff,\n blueviolet: 0x8a2be2,\n brown: 0xa52a2a,\n burlywood: 0xdeb887,\n cadetblue: 0x5f9ea0,\n chartreuse: 0x7fff00,\n chocolate: 0xd2691e,\n coral: 0xff7f50,\n cornflowerblue: 0x6495ed,\n cornsilk: 0xfff8dc,\n crimson: 0xdc143c,\n cyan: 0x00ffff,\n darkblue: 0x00008b,\n darkcyan: 0x008b8b,\n darkgoldenrod: 0xb8860b,\n darkgray: 0xa9a9a9,\n darkgreen: 0x006400,\n darkgrey: 0xa9a9a9,\n darkkhaki: 0xbdb76b,\n darkmagenta: 0x8b008b,\n darkolivegreen: 0x556b2f,\n darkorange: 0xff8c00,\n darkorchid: 0x9932cc,\n darkred: 0x8b0000,\n darksalmon: 0xe9967a,\n darkseagreen: 0x8fbc8f,\n darkslateblue: 0x483d8b,\n darkslategray: 0x2f4f4f,\n darkslategrey: 0x2f4f4f,\n darkturquoise: 0x00ced1,\n darkviolet: 0x9400d3,\n deeppink: 0xff1493,\n deepskyblue: 0x00bfff,\n dimgray: 0x696969,\n dimgrey: 0x696969,\n dodgerblue: 0x1e90ff,\n firebrick: 0xb22222,\n floralwhite: 0xfffaf0,\n forestgreen: 0x228b22,\n fuchsia: 0xff00ff,\n gainsboro: 0xdcdcdc,\n ghostwhite: 0xf8f8ff,\n gold: 0xffd700,\n goldenrod: 0xdaa520,\n gray: 0x808080,\n green: 0x008000,\n greenyellow: 0xadff2f,\n grey: 0x808080,\n honeydew: 0xf0fff0,\n hotpink: 0xff69b4,\n indianred: 0xcd5c5c,\n indigo: 0x4b0082,\n ivory: 0xfffff0,\n khaki: 0xf0e68c,\n lavender: 0xe6e6fa,\n lavenderblush: 0xfff0f5,\n lawngreen: 0x7cfc00,\n lemonchiffon: 0xfffacd,\n lightblue: 0xadd8e6,\n lightcoral: 0xf08080,\n lightcyan: 0xe0ffff,\n lightgoldenrodyellow: 0xfafad2,\n lightgray: 0xd3d3d3,\n lightgreen: 0x90ee90,\n lightgrey: 0xd3d3d3,\n lightpink: 0xffb6c1,\n lightsalmon: 0xffa07a,\n lightseagreen: 0x20b2aa,\n lightskyblue: 0x87cefa,\n lightslategray: 0x778899,\n lightslategrey: 0x778899,\n lightsteelblue: 0xb0c4de,\n lightyellow: 0xffffe0,\n lime: 0x00ff00,\n limegreen: 0x32cd32,\n linen: 0xfaf0e6,\n magenta: 0xff00ff,\n maroon: 0x800000,\n mediumaquamarine: 0x66cdaa,\n mediumblue: 0x0000cd,\n mediumorchid: 0xba55d3,\n mediumpurple: 0x9370db,\n mediumseagreen: 0x3cb371,\n mediumslateblue: 0x7b68ee,\n mediumspringgreen: 0x00fa9a,\n mediumturquoise: 0x48d1cc,\n mediumvioletred: 0xc71585,\n midnightblue: 0x191970,\n mintcream: 0xf5fffa,\n mistyrose: 0xffe4e1,\n moccasin: 0xffe4b5,\n navajowhite: 0xffdead,\n navy: 0x000080,\n oldlace: 0xfdf5e6,\n olive: 0x808000,\n olivedrab: 0x6b8e23,\n orange: 0xffa500,\n orangered: 0xff4500,\n orchid: 0xda70d6,\n palegoldenrod: 0xeee8aa,\n palegreen: 0x98fb98,\n paleturquoise: 0xafeeee,\n palevioletred: 0xdb7093,\n papayawhip: 0xffefd5,\n peachpuff: 0xffdab9,\n peru: 0xcd853f,\n pink: 0xffc0cb,\n plum: 0xdda0dd,\n powderblue: 0xb0e0e6,\n purple: 0x800080,\n rebeccapurple: 0x663399,\n red: 0xff0000,\n rosybrown: 0xbc8f8f,\n royalblue: 0x4169e1,\n saddlebrown: 0x8b4513,\n salmon: 0xfa8072,\n sandybrown: 0xf4a460,\n seagreen: 0x2e8b57,\n seashell: 0xfff5ee,\n sienna: 0xa0522d,\n silver: 0xc0c0c0,\n skyblue: 0x87ceeb,\n slateblue: 0x6a5acd,\n slategray: 0x708090,\n slategrey: 0x708090,\n snow: 0xfffafa,\n springgreen: 0x00ff7f,\n steelblue: 0x4682b4,\n tan: 0xd2b48c,\n teal: 0x008080,\n thistle: 0xd8bfd8,\n tomato: 0xff6347,\n turquoise: 0x40e0d0,\n violet: 0xee82ee,\n wheat: 0xf5deb3,\n white: 0xffffff,\n whitesmoke: 0xf5f5f5,\n yellow: 0xffff00,\n yellowgreen: 0x9acd32\n};\n\ndefine(Color, color, {\n copy: function(channels) {\n return Object.assign(new this.constructor, this, channels);\n },\n displayable: function() {\n return this.rgb().displayable();\n },\n hex: color_formatHex, // Deprecated! Use color.formatHex.\n formatHex: color_formatHex,\n formatHsl: color_formatHsl,\n formatRgb: color_formatRgb,\n toString: color_formatRgb\n});\n\nfunction color_formatHex() {\n return this.rgb().formatHex();\n}\n\nfunction color_formatHsl() {\n return hslConvert(this).formatHsl();\n}\n\nfunction color_formatRgb() {\n return this.rgb().formatRgb();\n}\n\nexport default function color(format) {\n var m, l;\n format = (format + \"\").trim().toLowerCase();\n return (m = reHex.exec(format)) ? (l = m[1].length, m = parseInt(m[1], 16), l === 6 ? rgbn(m) // #ff0000\n : l === 3 ? new Rgb((m >> 8 & 0xf) | (m >> 4 & 0xf0), (m >> 4 & 0xf) | (m & 0xf0), ((m & 0xf) << 4) | (m & 0xf), 1) // #f00\n : l === 8 ? rgba(m >> 24 & 0xff, m >> 16 & 0xff, m >> 8 & 0xff, (m & 0xff) / 0xff) // #ff000000\n : l === 4 ? rgba((m >> 12 & 0xf) | (m >> 8 & 0xf0), (m >> 8 & 0xf) | (m >> 4 & 0xf0), (m >> 4 & 0xf) | (m & 0xf0), (((m & 0xf) << 4) | (m & 0xf)) / 0xff) // #f000\n : null) // invalid hex\n : (m = reRgbInteger.exec(format)) ? new Rgb(m[1], m[2], m[3], 1) // rgb(255, 0, 0)\n : (m = reRgbPercent.exec(format)) ? new Rgb(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, 1) // rgb(100%, 0%, 0%)\n : (m = reRgbaInteger.exec(format)) ? rgba(m[1], m[2], m[3], m[4]) // rgba(255, 0, 0, 1)\n : (m = reRgbaPercent.exec(format)) ? rgba(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, m[4]) // rgb(100%, 0%, 0%, 1)\n : (m = reHslPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, 1) // hsl(120, 50%, 50%)\n : (m = reHslaPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, m[4]) // hsla(120, 50%, 50%, 1)\n : named.hasOwnProperty(format) ? rgbn(named[format]) // eslint-disable-line no-prototype-builtins\n : format === \"transparent\" ? new Rgb(NaN, NaN, NaN, 0)\n : null;\n}\n\nfunction rgbn(n) {\n return new Rgb(n >> 16 & 0xff, n >> 8 & 0xff, n & 0xff, 1);\n}\n\nfunction rgba(r, g, b, a) {\n if (a <= 0) r = g = b = NaN;\n return new Rgb(r, g, b, a);\n}\n\nexport function rgbConvert(o) {\n if (!(o instanceof Color)) o = color(o);\n if (!o) return new Rgb;\n o = o.rgb();\n return new Rgb(o.r, o.g, o.b, o.opacity);\n}\n\nexport function rgb(r, g, b, opacity) {\n return arguments.length === 1 ? rgbConvert(r) : new Rgb(r, g, b, opacity == null ? 1 : opacity);\n}\n\nexport function Rgb(r, g, b, opacity) {\n this.r = +r;\n this.g = +g;\n this.b = +b;\n this.opacity = +opacity;\n}\n\ndefine(Rgb, rgb, extend(Color, {\n brighter: function(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);\n },\n darker: function(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);\n },\n rgb: function() {\n return this;\n },\n displayable: function() {\n return (-0.5 <= this.r && this.r < 255.5)\n && (-0.5 <= this.g && this.g < 255.5)\n && (-0.5 <= this.b && this.b < 255.5)\n && (0 <= this.opacity && this.opacity <= 1);\n },\n hex: rgb_formatHex, // Deprecated! Use color.formatHex.\n formatHex: rgb_formatHex,\n formatRgb: rgb_formatRgb,\n toString: rgb_formatRgb\n}));\n\nfunction rgb_formatHex() {\n return \"#\" + hex(this.r) + hex(this.g) + hex(this.b);\n}\n\nfunction rgb_formatRgb() {\n var a = this.opacity; a = isNaN(a) ? 1 : Math.max(0, Math.min(1, a));\n return (a === 1 ? \"rgb(\" : \"rgba(\")\n + Math.max(0, Math.min(255, Math.round(this.r) || 0)) + \", \"\n + Math.max(0, Math.min(255, Math.round(this.g) || 0)) + \", \"\n + Math.max(0, Math.min(255, Math.round(this.b) || 0))\n + (a === 1 ? \")\" : \", \" + a + \")\");\n}\n\nfunction hex(value) {\n value = Math.max(0, Math.min(255, Math.round(value) || 0));\n return (value < 16 ? \"0\" : \"\") + value.toString(16);\n}\n\nfunction hsla(h, s, l, a) {\n if (a <= 0) h = s = l = NaN;\n else if (l <= 0 || l >= 1) h = s = NaN;\n else if (s <= 0) h = NaN;\n return new Hsl(h, s, l, a);\n}\n\nexport function hslConvert(o) {\n if (o instanceof Hsl) return new Hsl(o.h, o.s, o.l, o.opacity);\n if (!(o instanceof Color)) o = color(o);\n if (!o) return new Hsl;\n if (o instanceof Hsl) return o;\n o = o.rgb();\n var r = o.r / 255,\n g = o.g / 255,\n b = o.b / 255,\n min = Math.min(r, g, b),\n max = Math.max(r, g, b),\n h = NaN,\n s = max - min,\n l = (max + min) / 2;\n if (s) {\n if (r === max) h = (g - b) / s + (g < b) * 6;\n else if (g === max) h = (b - r) / s + 2;\n else h = (r - g) / s + 4;\n s /= l < 0.5 ? max + min : 2 - max - min;\n h *= 60;\n } else {\n s = l > 0 && l < 1 ? 0 : h;\n }\n return new Hsl(h, s, l, o.opacity);\n}\n\nexport function hsl(h, s, l, opacity) {\n return arguments.length === 1 ? hslConvert(h) : new Hsl(h, s, l, opacity == null ? 1 : opacity);\n}\n\nfunction Hsl(h, s, l, opacity) {\n this.h = +h;\n this.s = +s;\n this.l = +l;\n this.opacity = +opacity;\n}\n\ndefine(Hsl, hsl, extend(Color, {\n brighter: function(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Hsl(this.h, this.s, this.l * k, this.opacity);\n },\n darker: function(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Hsl(this.h, this.s, this.l * k, this.opacity);\n },\n rgb: function() {\n var h = this.h % 360 + (this.h < 0) * 360,\n s = isNaN(h) || isNaN(this.s) ? 0 : this.s,\n l = this.l,\n m2 = l + (l < 0.5 ? l : 1 - l) * s,\n m1 = 2 * l - m2;\n return new Rgb(\n hsl2rgb(h >= 240 ? h - 240 : h + 120, m1, m2),\n hsl2rgb(h, m1, m2),\n hsl2rgb(h < 120 ? h + 240 : h - 120, m1, m2),\n this.opacity\n );\n },\n displayable: function() {\n return (0 <= this.s && this.s <= 1 || isNaN(this.s))\n && (0 <= this.l && this.l <= 1)\n && (0 <= this.opacity && this.opacity <= 1);\n },\n formatHsl: function() {\n var a = this.opacity; a = isNaN(a) ? 1 : Math.max(0, Math.min(1, a));\n return (a === 1 ? \"hsl(\" : \"hsla(\")\n + (this.h || 0) + \", \"\n + (this.s || 0) * 100 + \"%, \"\n + (this.l || 0) * 100 + \"%\"\n + (a === 1 ? \")\" : \", \" + a + \")\");\n }\n}));\n\n/* From FvD 13.37, CSS Color Module Level 3 */\nfunction hsl2rgb(h, m1, m2) {\n return (h < 60 ? m1 + (m2 - m1) * h / 60\n : h < 180 ? m2\n : h < 240 ? m1 + (m2 - m1) * (240 - h) / 60\n : m1) * 255;\n}\n","import {Selection} from \"./index.js\";\nimport selector from \"../selector.js\";\n\nexport default function(select) {\n if (typeof select !== \"function\") select = selector(select);\n\n for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, subgroup = subgroups[j] = new Array(n), node, subnode, i = 0; i < n; ++i) {\n if ((node = group[i]) && (subnode = select.call(node, node.__data__, i, group))) {\n if (\"__data__\" in node) subnode.__data__ = node.__data__;\n subgroup[i] = subnode;\n }\n }\n }\n\n return new Selection(subgroups, this._parents);\n}\n","import {Selection} from \"./index.js\";\nimport matcher from \"../matcher.js\";\n\nexport default function(match) {\n if (typeof match !== \"function\") match = matcher(match);\n\n for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, subgroup = subgroups[j] = [], node, i = 0; i < n; ++i) {\n if ((node = group[i]) && match.call(node, node.__data__, i, group)) {\n subgroup.push(node);\n }\n }\n }\n\n return new Selection(subgroups, this._parents);\n}\n","export default function(x) {\n return function() {\n return x;\n };\n}\n","import sparse from \"./sparse.js\";\nimport {Selection} from \"./index.js\";\n\nexport default function() {\n return new Selection(this._exit || this._groups.map(sparse), this._parents);\n}\n","export default function(onenter, onupdate, onexit) {\n var enter = this.enter(), update = this, exit = this.exit();\n if (typeof onenter === \"function\") {\n enter = onenter(enter);\n if (enter) enter = enter.selection();\n } else {\n enter = enter.append(onenter + \"\");\n }\n if (onupdate != null) {\n update = onupdate(update);\n if (update) update = update.selection();\n }\n if (onexit == null) exit.remove(); else onexit(exit);\n return enter && update ? enter.merge(update).order() : update;\n}\n","import {Selection} from \"./index.js\";\n\nexport default function(context) {\n var selection = context.selection ? context.selection() : context;\n\n for (var groups0 = this._groups, groups1 = selection._groups, m0 = groups0.length, m1 = groups1.length, m = Math.min(m0, m1), merges = new Array(m0), j = 0; j < m; ++j) {\n for (var group0 = groups0[j], group1 = groups1[j], n = group0.length, merge = merges[j] = new Array(n), node, i = 0; i < n; ++i) {\n if (node = group0[i] || group1[i]) {\n merge[i] = node;\n }\n }\n }\n\n for (; j < m0; ++j) {\n merges[j] = groups0[j];\n }\n\n return new Selection(merges, this._parents);\n}\n","export default function() {\n\n for (var groups = this._groups, j = -1, m = groups.length; ++j < m;) {\n for (var group = groups[j], i = group.length - 1, next = group[i], node; --i >= 0;) {\n if (node = group[i]) {\n if (next && node.compareDocumentPosition(next) ^ 4) next.parentNode.insertBefore(node, next);\n next = node;\n }\n }\n }\n\n return this;\n}\n","export default function() {\n var callback = arguments[0];\n arguments[0] = this;\n callback.apply(null, arguments);\n return this;\n}\n","export default function() {\n return Array.from(this);\n}\n","export default function() {\n\n for (var groups = this._groups, j = 0, m = groups.length; j < m; ++j) {\n for (var group = groups[j], i = 0, n = group.length; i < n; ++i) {\n var node = group[i];\n if (node) return node;\n }\n }\n\n return null;\n}\n","export default function() {\n let size = 0;\n for (const node of this) ++size; // eslint-disable-line no-unused-vars\n return size;\n}\n","export default function() {\n return !this.node();\n}\n","export default function(callback) {\n\n for (var groups = this._groups, j = 0, m = groups.length; j < m; ++j) {\n for (var group = groups[j], i = 0, n = group.length, node; i < n; ++i) {\n if (node = group[i]) callback.call(node, node.__data__, i, group);\n }\n }\n\n return this;\n}\n","import creator from \"../creator.js\";\n\nexport default function(name) {\n var create = typeof name === \"function\" ? name : creator(name);\n return this.select(function() {\n return this.appendChild(create.apply(this, arguments));\n });\n}\n","export default function(value) {\n return arguments.length\n ? this.property(\"__data__\", value)\n : this.node().__data__;\n}\n","export default function*() {\n for (var groups = this._groups, j = 0, m = groups.length; j < m; ++j) {\n for (var group = groups[j], i = 0, n = group.length, node; i < n; ++i) {\n if (node = group[i]) yield node;\n }\n }\n}\n","export default x => () => x;\n","import constant from \"./constant.js\";\n\nfunction linear(a, d) {\n return function(t) {\n return a + t * d;\n };\n}\n\nfunction exponential(a, b, y) {\n return a = Math.pow(a, y), b = Math.pow(b, y) - a, y = 1 / y, function(t) {\n return Math.pow(a + t * b, y);\n };\n}\n\nexport function hue(a, b) {\n var d = b - a;\n return d ? linear(a, d > 180 || d < -180 ? d - 360 * Math.round(d / 360) : d) : constant(isNaN(a) ? b : a);\n}\n\nexport function gamma(y) {\n return (y = +y) === 1 ? nogamma : function(a, b) {\n return b - a ? exponential(a, b, y) : constant(isNaN(a) ? b : a);\n };\n}\n\nexport default function nogamma(a, b) {\n var d = b - a;\n return d ? linear(a, d) : constant(isNaN(a) ? b : a);\n}\n","import {rgb as colorRgb} from \"d3-color\";\nimport basis from \"./basis.js\";\nimport basisClosed from \"./basisClosed.js\";\nimport nogamma, {gamma} from \"./color.js\";\n\nexport default (function rgbGamma(y) {\n var color = gamma(y);\n\n function rgb(start, end) {\n var r = color((start = colorRgb(start)).r, (end = colorRgb(end)).r),\n g = color(start.g, end.g),\n b = color(start.b, end.b),\n opacity = nogamma(start.opacity, end.opacity);\n return function(t) {\n start.r = r(t);\n start.g = g(t);\n start.b = b(t);\n start.opacity = opacity(t);\n return start + \"\";\n };\n }\n\n rgb.gamma = rgbGamma;\n\n return rgb;\n})(1);\n\nfunction rgbSpline(spline) {\n return function(colors) {\n var n = colors.length,\n r = new Array(n),\n g = new Array(n),\n b = new Array(n),\n i, color;\n for (i = 0; i < n; ++i) {\n color = colorRgb(colors[i]);\n r[i] = color.r || 0;\n g[i] = color.g || 0;\n b[i] = color.b || 0;\n }\n r = spline(r);\n g = spline(g);\n b = spline(b);\n color.opacity = 1;\n return function(t) {\n color.r = r(t);\n color.g = g(t);\n color.b = b(t);\n return color + \"\";\n };\n };\n}\n\nexport var rgbBasis = rgbSpline(basis);\nexport var rgbBasisClosed = rgbSpline(basisClosed);\n","export default function(a, b) {\n return a = +a, b = +b, function(t) {\n return a * (1 - t) + b * t;\n };\n}\n","import number from \"./number.js\";\n\nvar reA = /[-+]?(?:\\d+\\.?\\d*|\\.?\\d+)(?:[eE][-+]?\\d+)?/g,\n reB = new RegExp(reA.source, \"g\");\n\nfunction zero(b) {\n return function() {\n return b;\n };\n}\n\nfunction one(b) {\n return function(t) {\n return b(t) + \"\";\n };\n}\n\nexport default function(a, b) {\n var bi = reA.lastIndex = reB.lastIndex = 0, // scan index for next number in b\n am, // current match in a\n bm, // current match in b\n bs, // string preceding current number in b, if any\n i = -1, // index in s\n s = [], // string constants and placeholders\n q = []; // number interpolators\n\n // Coerce inputs to strings.\n a = a + \"\", b = b + \"\";\n\n // Interpolate pairs of numbers in a & b.\n while ((am = reA.exec(a))\n && (bm = reB.exec(b))) {\n if ((bs = bm.index) > bi) { // a string precedes the next number in b\n bs = b.slice(bi, bs);\n if (s[i]) s[i] += bs; // coalesce with previous string\n else s[++i] = bs;\n }\n if ((am = am[0]) === (bm = bm[0])) { // numbers in a & b match\n if (s[i]) s[i] += bm; // coalesce with previous string\n else s[++i] = bm;\n } else { // interpolate non-matching numbers\n s[++i] = null;\n q.push({i: i, x: number(am, bm)});\n }\n bi = reB.lastIndex;\n }\n\n // Add remains of b.\n if (bi < b.length) {\n bs = b.slice(bi);\n if (s[i]) s[i] += bs; // coalesce with previous string\n else s[++i] = bs;\n }\n\n // Special optimization for only a single match.\n // Otherwise, interpolate each of the numbers and rejoin the string.\n return s.length < 2 ? (q[0]\n ? one(q[0].x)\n : zero(b))\n : (b = q.length, function(t) {\n for (var i = 0, o; i < b; ++i) s[(o = q[i]).i] = o.x(t);\n return s.join(\"\");\n });\n}\n","var degrees = 180 / Math.PI;\n\nexport var identity = {\n translateX: 0,\n translateY: 0,\n rotate: 0,\n skewX: 0,\n scaleX: 1,\n scaleY: 1\n};\n\nexport default function(a, b, c, d, e, f) {\n var scaleX, scaleY, skewX;\n if (scaleX = Math.sqrt(a * a + b * b)) a /= scaleX, b /= scaleX;\n if (skewX = a * c + b * d) c -= a * skewX, d -= b * skewX;\n if (scaleY = Math.sqrt(c * c + d * d)) c /= scaleY, d /= scaleY, skewX /= scaleY;\n if (a * d < b * c) a = -a, b = -b, skewX = -skewX, scaleX = -scaleX;\n return {\n translateX: e,\n translateY: f,\n rotate: Math.atan2(b, a) * degrees,\n skewX: Math.atan(skewX) * degrees,\n scaleX: scaleX,\n scaleY: scaleY\n };\n}\n","import decompose, {identity} from \"./decompose.js\";\n\nvar svgNode;\n\n/* eslint-disable no-undef */\nexport function parseCss(value) {\n const m = new (typeof DOMMatrix === \"function\" ? DOMMatrix : WebKitCSSMatrix)(value + \"\");\n return m.isIdentity ? identity : decompose(m.a, m.b, m.c, m.d, m.e, m.f);\n}\n\nexport function parseSvg(value) {\n if (value == null) return identity;\n if (!svgNode) svgNode = document.createElementNS(\"http://www.w3.org/2000/svg\", \"g\");\n svgNode.setAttribute(\"transform\", value);\n if (!(value = svgNode.transform.baseVal.consolidate())) return identity;\n value = value.matrix;\n return decompose(value.a, value.b, value.c, value.d, value.e, value.f);\n}\n","import number from \"../number.js\";\nimport {parseCss, parseSvg} from \"./parse.js\";\n\nfunction interpolateTransform(parse, pxComma, pxParen, degParen) {\n\n function pop(s) {\n return s.length ? s.pop() + \" \" : \"\";\n }\n\n function translate(xa, ya, xb, yb, s, q) {\n if (xa !== xb || ya !== yb) {\n var i = s.push(\"translate(\", null, pxComma, null, pxParen);\n q.push({i: i - 4, x: number(xa, xb)}, {i: i - 2, x: number(ya, yb)});\n } else if (xb || yb) {\n s.push(\"translate(\" + xb + pxComma + yb + pxParen);\n }\n }\n\n function rotate(a, b, s, q) {\n if (a !== b) {\n if (a - b > 180) b += 360; else if (b - a > 180) a += 360; // shortest path\n q.push({i: s.push(pop(s) + \"rotate(\", null, degParen) - 2, x: number(a, b)});\n } else if (b) {\n s.push(pop(s) + \"rotate(\" + b + degParen);\n }\n }\n\n function skewX(a, b, s, q) {\n if (a !== b) {\n q.push({i: s.push(pop(s) + \"skewX(\", null, degParen) - 2, x: number(a, b)});\n } else if (b) {\n s.push(pop(s) + \"skewX(\" + b + degParen);\n }\n }\n\n function scale(xa, ya, xb, yb, s, q) {\n if (xa !== xb || ya !== yb) {\n var i = s.push(pop(s) + \"scale(\", null, \",\", null, \")\");\n q.push({i: i - 4, x: number(xa, xb)}, {i: i - 2, x: number(ya, yb)});\n } else if (xb !== 1 || yb !== 1) {\n s.push(pop(s) + \"scale(\" + xb + \",\" + yb + \")\");\n }\n }\n\n return function(a, b) {\n var s = [], // string constants and placeholders\n q = []; // number interpolators\n a = parse(a), b = parse(b);\n translate(a.translateX, a.translateY, b.translateX, b.translateY, s, q);\n rotate(a.rotate, b.rotate, s, q);\n skewX(a.skewX, b.skewX, s, q);\n scale(a.scaleX, a.scaleY, b.scaleX, b.scaleY, s, q);\n a = b = null; // gc\n return function(t) {\n var i = -1, n = q.length, o;\n while (++i < n) s[(o = q[i]).i] = o.x(t);\n return s.join(\"\");\n };\n };\n}\n\nexport var interpolateTransformCss = interpolateTransform(parseCss, \"px, \", \"px)\", \"deg)\");\nexport var interpolateTransformSvg = interpolateTransform(parseSvg, \", \", \")\", \")\");\n","var frame = 0, // is an animation frame pending?\n timeout = 0, // is a timeout pending?\n interval = 0, // are any timers active?\n pokeDelay = 1000, // how frequently we check for clock skew\n taskHead,\n taskTail,\n clockLast = 0,\n clockNow = 0,\n clockSkew = 0,\n clock = typeof performance === \"object\" && performance.now ? performance : Date,\n setFrame = typeof window === \"object\" && window.requestAnimationFrame ? window.requestAnimationFrame.bind(window) : function(f) { setTimeout(f, 17); };\n\nexport function now() {\n return clockNow || (setFrame(clearNow), clockNow = clock.now() + clockSkew);\n}\n\nfunction clearNow() {\n clockNow = 0;\n}\n\nexport function Timer() {\n this._call =\n this._time =\n this._next = null;\n}\n\nTimer.prototype = timer.prototype = {\n constructor: Timer,\n restart: function(callback, delay, time) {\n if (typeof callback !== \"function\") throw new TypeError(\"callback is not a function\");\n time = (time == null ? now() : +time) + (delay == null ? 0 : +delay);\n if (!this._next && taskTail !== this) {\n if (taskTail) taskTail._next = this;\n else taskHead = this;\n taskTail = this;\n }\n this._call = callback;\n this._time = time;\n sleep();\n },\n stop: function() {\n if (this._call) {\n this._call = null;\n this._time = Infinity;\n sleep();\n }\n }\n};\n\nexport function timer(callback, delay, time) {\n var t = new Timer;\n t.restart(callback, delay, time);\n return t;\n}\n\nexport function timerFlush() {\n now(); // Get the current time, if not already set.\n ++frame; // Pretend we’ve set an alarm, if we haven’t already.\n var t = taskHead, e;\n while (t) {\n if ((e = clockNow - t._time) >= 0) t._call.call(undefined, e);\n t = t._next;\n }\n --frame;\n}\n\nfunction wake() {\n clockNow = (clockLast = clock.now()) + clockSkew;\n frame = timeout = 0;\n try {\n timerFlush();\n } finally {\n frame = 0;\n nap();\n clockNow = 0;\n }\n}\n\nfunction poke() {\n var now = clock.now(), delay = now - clockLast;\n if (delay > pokeDelay) clockSkew -= delay, clockLast = now;\n}\n\nfunction nap() {\n var t0, t1 = taskHead, t2, time = Infinity;\n while (t1) {\n if (t1._call) {\n if (time > t1._time) time = t1._time;\n t0 = t1, t1 = t1._next;\n } else {\n t2 = t1._next, t1._next = null;\n t1 = t0 ? t0._next = t2 : taskHead = t2;\n }\n }\n taskTail = t0;\n sleep(time);\n}\n\nfunction sleep(time) {\n if (frame) return; // Soonest alarm already set, or will be.\n if (timeout) timeout = clearTimeout(timeout);\n var delay = time - clockNow; // Strictly less than if we recomputed clockNow.\n if (delay > 24) {\n if (time < Infinity) timeout = setTimeout(wake, time - clock.now() - clockSkew);\n if (interval) interval = clearInterval(interval);\n } else {\n if (!interval) clockLast = clock.now(), interval = setInterval(poke, pokeDelay);\n frame = 1, setFrame(wake);\n }\n}\n","import {Timer} from \"./timer.js\";\n\nexport default function(callback, delay, time) {\n var t = new Timer;\n delay = delay == null ? 0 : +delay;\n t.restart(elapsed => {\n t.stop();\n callback(elapsed + delay);\n }, delay, time);\n return t;\n}\n","import {dispatch} from \"d3-dispatch\";\nimport {timer, timeout} from \"d3-timer\";\n\nvar emptyOn = dispatch(\"start\", \"end\", \"cancel\", \"interrupt\");\nvar emptyTween = [];\n\nexport var CREATED = 0;\nexport var SCHEDULED = 1;\nexport var STARTING = 2;\nexport var STARTED = 3;\nexport var RUNNING = 4;\nexport var ENDING = 5;\nexport var ENDED = 6;\n\nexport default function(node, name, id, index, group, timing) {\n var schedules = node.__transition;\n if (!schedules) node.__transition = {};\n else if (id in schedules) return;\n create(node, id, {\n name: name,\n index: index, // For context during callback.\n group: group, // For context during callback.\n on: emptyOn,\n tween: emptyTween,\n time: timing.time,\n delay: timing.delay,\n duration: timing.duration,\n ease: timing.ease,\n timer: null,\n state: CREATED\n });\n}\n\nexport function init(node, id) {\n var schedule = get(node, id);\n if (schedule.state > CREATED) throw new Error(\"too late; already scheduled\");\n return schedule;\n}\n\nexport function set(node, id) {\n var schedule = get(node, id);\n if (schedule.state > STARTED) throw new Error(\"too late; already running\");\n return schedule;\n}\n\nexport function get(node, id) {\n var schedule = node.__transition;\n if (!schedule || !(schedule = schedule[id])) throw new Error(\"transition not found\");\n return schedule;\n}\n\nfunction create(node, id, self) {\n var schedules = node.__transition,\n tween;\n\n // Initialize the self timer when the transition is created.\n // Note the actual delay is not known until the first callback!\n schedules[id] = self;\n self.timer = timer(schedule, 0, self.time);\n\n function schedule(elapsed) {\n self.state = SCHEDULED;\n self.timer.restart(start, self.delay, self.time);\n\n // If the elapsed delay is less than our first sleep, start immediately.\n if (self.delay <= elapsed) start(elapsed - self.delay);\n }\n\n function start(elapsed) {\n var i, j, n, o;\n\n // If the state is not SCHEDULED, then we previously errored on start.\n if (self.state !== SCHEDULED) return stop();\n\n for (i in schedules) {\n o = schedules[i];\n if (o.name !== self.name) continue;\n\n // While this element already has a starting transition during this frame,\n // defer starting an interrupting transition until that transition has a\n // chance to tick (and possibly end); see d3/d3-transition#54!\n if (o.state === STARTED) return timeout(start);\n\n // Interrupt the active transition, if any.\n if (o.state === RUNNING) {\n o.state = ENDED;\n o.timer.stop();\n o.on.call(\"interrupt\", node, node.__data__, o.index, o.group);\n delete schedules[i];\n }\n\n // Cancel any pre-empted transitions.\n else if (+i < id) {\n o.state = ENDED;\n o.timer.stop();\n o.on.call(\"cancel\", node, node.__data__, o.index, o.group);\n delete schedules[i];\n }\n }\n\n // Defer the first tick to end of the current frame; see d3/d3#1576.\n // Note the transition may be canceled after start and before the first tick!\n // Note this must be scheduled before the start event; see d3/d3-transition#16!\n // Assuming this is successful, subsequent callbacks go straight to tick.\n timeout(function() {\n if (self.state === STARTED) {\n self.state = RUNNING;\n self.timer.restart(tick, self.delay, self.time);\n tick(elapsed);\n }\n });\n\n // Dispatch the start event.\n // Note this must be done before the tween are initialized.\n self.state = STARTING;\n self.on.call(\"start\", node, node.__data__, self.index, self.group);\n if (self.state !== STARTING) return; // interrupted\n self.state = STARTED;\n\n // Initialize the tween, deleting null tween.\n tween = new Array(n = self.tween.length);\n for (i = 0, j = -1; i < n; ++i) {\n if (o = self.tween[i].value.call(node, node.__data__, self.index, self.group)) {\n tween[++j] = o;\n }\n }\n tween.length = j + 1;\n }\n\n function tick(elapsed) {\n var t = elapsed < self.duration ? self.ease.call(null, elapsed / self.duration) : (self.timer.restart(stop), self.state = ENDING, 1),\n i = -1,\n n = tween.length;\n\n while (++i < n) {\n tween[i].call(node, t);\n }\n\n // Dispatch the end event.\n if (self.state === ENDING) {\n self.on.call(\"end\", node, node.__data__, self.index, self.group);\n stop();\n }\n }\n\n function stop() {\n self.state = ENDED;\n self.timer.stop();\n delete schedules[id];\n for (var i in schedules) return; // eslint-disable-line no-unused-vars\n delete node.__transition;\n }\n}\n","import {get, set} from \"./schedule.js\";\n\nfunction tweenRemove(id, name) {\n var tween0, tween1;\n return function() {\n var schedule = set(this, id),\n tween = schedule.tween;\n\n // If this node shared tween with the previous node,\n // just assign the updated shared tween and we’re done!\n // Otherwise, copy-on-write.\n if (tween !== tween0) {\n tween1 = tween0 = tween;\n for (var i = 0, n = tween1.length; i < n; ++i) {\n if (tween1[i].name === name) {\n tween1 = tween1.slice();\n tween1.splice(i, 1);\n break;\n }\n }\n }\n\n schedule.tween = tween1;\n };\n}\n\nfunction tweenFunction(id, name, value) {\n var tween0, tween1;\n if (typeof value !== \"function\") throw new Error;\n return function() {\n var schedule = set(this, id),\n tween = schedule.tween;\n\n // If this node shared tween with the previous node,\n // just assign the updated shared tween and we’re done!\n // Otherwise, copy-on-write.\n if (tween !== tween0) {\n tween1 = (tween0 = tween).slice();\n for (var t = {name: name, value: value}, i = 0, n = tween1.length; i < n; ++i) {\n if (tween1[i].name === name) {\n tween1[i] = t;\n break;\n }\n }\n if (i === n) tween1.push(t);\n }\n\n schedule.tween = tween1;\n };\n}\n\nexport default function(name, value) {\n var id = this._id;\n\n name += \"\";\n\n if (arguments.length < 2) {\n var tween = get(this.node(), id).tween;\n for (var i = 0, n = tween.length, t; i < n; ++i) {\n if ((t = tween[i]).name === name) {\n return t.value;\n }\n }\n return null;\n }\n\n return this.each((value == null ? tweenRemove : tweenFunction)(id, name, value));\n}\n\nexport function tweenValue(transition, name, value) {\n var id = transition._id;\n\n transition.each(function() {\n var schedule = set(this, id);\n (schedule.value || (schedule.value = {}))[name] = value.apply(this, arguments);\n });\n\n return function(node) {\n return get(node, id).value[name];\n };\n}\n","import {color} from \"d3-color\";\nimport {interpolateNumber, interpolateRgb, interpolateString} from \"d3-interpolate\";\n\nexport default function(a, b) {\n var c;\n return (typeof b === \"number\" ? interpolateNumber\n : b instanceof color ? interpolateRgb\n : (c = color(b)) ? (b = c, interpolateRgb)\n : interpolateString)(a, b);\n}\n","import {interpolateTransformSvg as interpolateTransform} from \"d3-interpolate\";\nimport {namespace} from \"d3-selection\";\nimport {tweenValue} from \"./tween.js\";\nimport interpolate from \"./interpolate.js\";\n\nfunction attrRemove(name) {\n return function() {\n this.removeAttribute(name);\n };\n}\n\nfunction attrRemoveNS(fullname) {\n return function() {\n this.removeAttributeNS(fullname.space, fullname.local);\n };\n}\n\nfunction attrConstant(name, interpolate, value1) {\n var string00,\n string1 = value1 + \"\",\n interpolate0;\n return function() {\n var string0 = this.getAttribute(name);\n return string0 === string1 ? null\n : string0 === string00 ? interpolate0\n : interpolate0 = interpolate(string00 = string0, value1);\n };\n}\n\nfunction attrConstantNS(fullname, interpolate, value1) {\n var string00,\n string1 = value1 + \"\",\n interpolate0;\n return function() {\n var string0 = this.getAttributeNS(fullname.space, fullname.local);\n return string0 === string1 ? null\n : string0 === string00 ? interpolate0\n : interpolate0 = interpolate(string00 = string0, value1);\n };\n}\n\nfunction attrFunction(name, interpolate, value) {\n var string00,\n string10,\n interpolate0;\n return function() {\n var string0, value1 = value(this), string1;\n if (value1 == null) return void this.removeAttribute(name);\n string0 = this.getAttribute(name);\n string1 = value1 + \"\";\n return string0 === string1 ? null\n : string0 === string00 && string1 === string10 ? interpolate0\n : (string10 = string1, interpolate0 = interpolate(string00 = string0, value1));\n };\n}\n\nfunction attrFunctionNS(fullname, interpolate, value) {\n var string00,\n string10,\n interpolate0;\n return function() {\n var string0, value1 = value(this), string1;\n if (value1 == null) return void this.removeAttributeNS(fullname.space, fullname.local);\n string0 = this.getAttributeNS(fullname.space, fullname.local);\n string1 = value1 + \"\";\n return string0 === string1 ? null\n : string0 === string00 && string1 === string10 ? interpolate0\n : (string10 = string1, interpolate0 = interpolate(string00 = string0, value1));\n };\n}\n\nexport default function(name, value) {\n var fullname = namespace(name), i = fullname === \"transform\" ? interpolateTransform : interpolate;\n return this.attrTween(name, typeof value === \"function\"\n ? (fullname.local ? attrFunctionNS : attrFunction)(fullname, i, tweenValue(this, \"attr.\" + name, value))\n : value == null ? (fullname.local ? attrRemoveNS : attrRemove)(fullname)\n : (fullname.local ? attrConstantNS : attrConstant)(fullname, i, value));\n}\n","import {namespace} from \"d3-selection\";\n\nfunction attrInterpolate(name, i) {\n return function(t) {\n this.setAttribute(name, i.call(this, t));\n };\n}\n\nfunction attrInterpolateNS(fullname, i) {\n return function(t) {\n this.setAttributeNS(fullname.space, fullname.local, i.call(this, t));\n };\n}\n\nfunction attrTweenNS(fullname, value) {\n var t0, i0;\n function tween() {\n var i = value.apply(this, arguments);\n if (i !== i0) t0 = (i0 = i) && attrInterpolateNS(fullname, i);\n return t0;\n }\n tween._value = value;\n return tween;\n}\n\nfunction attrTween(name, value) {\n var t0, i0;\n function tween() {\n var i = value.apply(this, arguments);\n if (i !== i0) t0 = (i0 = i) && attrInterpolate(name, i);\n return t0;\n }\n tween._value = value;\n return tween;\n}\n\nexport default function(name, value) {\n var key = \"attr.\" + name;\n if (arguments.length < 2) return (key = this.tween(key)) && key._value;\n if (value == null) return this.tween(key, null);\n if (typeof value !== \"function\") throw new Error;\n var fullname = namespace(name);\n return this.tween(key, (fullname.local ? attrTweenNS : attrTween)(fullname, value));\n}\n","import {get, init} from \"./schedule.js\";\n\nfunction delayFunction(id, value) {\n return function() {\n init(this, id).delay = +value.apply(this, arguments);\n };\n}\n\nfunction delayConstant(id, value) {\n return value = +value, function() {\n init(this, id).delay = value;\n };\n}\n\nexport default function(value) {\n var id = this._id;\n\n return arguments.length\n ? this.each((typeof value === \"function\"\n ? delayFunction\n : delayConstant)(id, value))\n : get(this.node(), id).delay;\n}\n","import {get, set} from \"./schedule.js\";\n\nfunction durationFunction(id, value) {\n return function() {\n set(this, id).duration = +value.apply(this, arguments);\n };\n}\n\nfunction durationConstant(id, value) {\n return value = +value, function() {\n set(this, id).duration = value;\n };\n}\n\nexport default function(value) {\n var id = this._id;\n\n return arguments.length\n ? this.each((typeof value === \"function\"\n ? durationFunction\n : durationConstant)(id, value))\n : get(this.node(), id).duration;\n}\n","import {selection} from \"d3-selection\";\n\nvar Selection = selection.prototype.constructor;\n\nexport default function() {\n return new Selection(this._groups, this._parents);\n}\n","import {interpolateTransformCss as interpolateTransform} from \"d3-interpolate\";\nimport {style} from \"d3-selection\";\nimport {set} from \"./schedule.js\";\nimport {tweenValue} from \"./tween.js\";\nimport interpolate from \"./interpolate.js\";\n\nfunction styleNull(name, interpolate) {\n var string00,\n string10,\n interpolate0;\n return function() {\n var string0 = style(this, name),\n string1 = (this.style.removeProperty(name), style(this, name));\n return string0 === string1 ? null\n : string0 === string00 && string1 === string10 ? interpolate0\n : interpolate0 = interpolate(string00 = string0, string10 = string1);\n };\n}\n\nfunction styleRemove(name) {\n return function() {\n this.style.removeProperty(name);\n };\n}\n\nfunction styleConstant(name, interpolate, value1) {\n var string00,\n string1 = value1 + \"\",\n interpolate0;\n return function() {\n var string0 = style(this, name);\n return string0 === string1 ? null\n : string0 === string00 ? interpolate0\n : interpolate0 = interpolate(string00 = string0, value1);\n };\n}\n\nfunction styleFunction(name, interpolate, value) {\n var string00,\n string10,\n interpolate0;\n return function() {\n var string0 = style(this, name),\n value1 = value(this),\n string1 = value1 + \"\";\n if (value1 == null) string1 = value1 = (this.style.removeProperty(name), style(this, name));\n return string0 === string1 ? null\n : string0 === string00 && string1 === string10 ? interpolate0\n : (string10 = string1, interpolate0 = interpolate(string00 = string0, value1));\n };\n}\n\nfunction styleMaybeRemove(id, name) {\n var on0, on1, listener0, key = \"style.\" + name, event = \"end.\" + key, remove;\n return function() {\n var schedule = set(this, id),\n on = schedule.on,\n listener = schedule.value[key] == null ? remove || (remove = styleRemove(name)) : undefined;\n\n // If this node shared a dispatch with the previous node,\n // just assign the updated shared dispatch and we’re done!\n // Otherwise, copy-on-write.\n if (on !== on0 || listener0 !== listener) (on1 = (on0 = on).copy()).on(event, listener0 = listener);\n\n schedule.on = on1;\n };\n}\n\nexport default function(name, value, priority) {\n var i = (name += \"\") === \"transform\" ? interpolateTransform : interpolate;\n return value == null ? this\n .styleTween(name, styleNull(name, i))\n .on(\"end.style.\" + name, styleRemove(name))\n : typeof value === \"function\" ? this\n .styleTween(name, styleFunction(name, i, tweenValue(this, \"style.\" + name, value)))\n .each(styleMaybeRemove(this._id, name))\n : this\n .styleTween(name, styleConstant(name, i, value), priority)\n .on(\"end.style.\" + name, null);\n}\n","import {selection} from \"d3-selection\";\nimport transition_attr from \"./attr.js\";\nimport transition_attrTween from \"./attrTween.js\";\nimport transition_delay from \"./delay.js\";\nimport transition_duration from \"./duration.js\";\nimport transition_ease from \"./ease.js\";\nimport transition_easeVarying from \"./easeVarying.js\";\nimport transition_filter from \"./filter.js\";\nimport transition_merge from \"./merge.js\";\nimport transition_on from \"./on.js\";\nimport transition_remove from \"./remove.js\";\nimport transition_select from \"./select.js\";\nimport transition_selectAll from \"./selectAll.js\";\nimport transition_selection from \"./selection.js\";\nimport transition_style from \"./style.js\";\nimport transition_styleTween from \"./styleTween.js\";\nimport transition_text from \"./text.js\";\nimport transition_textTween from \"./textTween.js\";\nimport transition_transition from \"./transition.js\";\nimport transition_tween from \"./tween.js\";\nimport transition_end from \"./end.js\";\n\nvar id = 0;\n\nexport function Transition(groups, parents, name, id) {\n this._groups = groups;\n this._parents = parents;\n this._name = name;\n this._id = id;\n}\n\nexport default function transition(name) {\n return selection().transition(name);\n}\n\nexport function newId() {\n return ++id;\n}\n\nvar selection_prototype = selection.prototype;\n\nTransition.prototype = transition.prototype = {\n constructor: Transition,\n select: transition_select,\n selectAll: transition_selectAll,\n selectChild: selection_prototype.selectChild,\n selectChildren: selection_prototype.selectChildren,\n filter: transition_filter,\n merge: transition_merge,\n selection: transition_selection,\n transition: transition_transition,\n call: selection_prototype.call,\n nodes: selection_prototype.nodes,\n node: selection_prototype.node,\n size: selection_prototype.size,\n empty: selection_prototype.empty,\n each: selection_prototype.each,\n on: transition_on,\n attr: transition_attr,\n attrTween: transition_attrTween,\n style: transition_style,\n styleTween: transition_styleTween,\n text: transition_text,\n textTween: transition_textTween,\n remove: transition_remove,\n tween: transition_tween,\n delay: transition_delay,\n duration: transition_duration,\n ease: transition_ease,\n easeVarying: transition_easeVarying,\n end: transition_end,\n [Symbol.iterator]: selection_prototype[Symbol.iterator]\n};\n","import {selector} from \"d3-selection\";\nimport {Transition} from \"./index.js\";\nimport schedule, {get} from \"./schedule.js\";\n\nexport default function(select) {\n var name = this._name,\n id = this._id;\n\n if (typeof select !== \"function\") select = selector(select);\n\n for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, subgroup = subgroups[j] = new Array(n), node, subnode, i = 0; i < n; ++i) {\n if ((node = group[i]) && (subnode = select.call(node, node.__data__, i, group))) {\n if (\"__data__\" in node) subnode.__data__ = node.__data__;\n subgroup[i] = subnode;\n schedule(subgroup[i], name, id, i, subgroup, get(node, id));\n }\n }\n }\n\n return new Transition(subgroups, this._parents, name, id);\n}\n","import {selectorAll} from \"d3-selection\";\nimport {Transition} from \"./index.js\";\nimport schedule, {get} from \"./schedule.js\";\n\nexport default function(select) {\n var name = this._name,\n id = this._id;\n\n if (typeof select !== \"function\") select = selectorAll(select);\n\n for (var groups = this._groups, m = groups.length, subgroups = [], parents = [], j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n for (var children = select.call(node, node.__data__, i, group), child, inherit = get(node, id), k = 0, l = children.length; k < l; ++k) {\n if (child = children[k]) {\n schedule(child, name, id, k, children, inherit);\n }\n }\n subgroups.push(children);\n parents.push(node);\n }\n }\n }\n\n return new Transition(subgroups, parents, name, id);\n}\n","import {matcher} from \"d3-selection\";\nimport {Transition} from \"./index.js\";\n\nexport default function(match) {\n if (typeof match !== \"function\") match = matcher(match);\n\n for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, subgroup = subgroups[j] = [], node, i = 0; i < n; ++i) {\n if ((node = group[i]) && match.call(node, node.__data__, i, group)) {\n subgroup.push(node);\n }\n }\n }\n\n return new Transition(subgroups, this._parents, this._name, this._id);\n}\n","import {Transition} from \"./index.js\";\n\nexport default function(transition) {\n if (transition._id !== this._id) throw new Error;\n\n for (var groups0 = this._groups, groups1 = transition._groups, m0 = groups0.length, m1 = groups1.length, m = Math.min(m0, m1), merges = new Array(m0), j = 0; j < m; ++j) {\n for (var group0 = groups0[j], group1 = groups1[j], n = group0.length, merge = merges[j] = new Array(n), node, i = 0; i < n; ++i) {\n if (node = group0[i] || group1[i]) {\n merge[i] = node;\n }\n }\n }\n\n for (; j < m0; ++j) {\n merges[j] = groups0[j];\n }\n\n return new Transition(merges, this._parents, this._name, this._id);\n}\n","import {Transition, newId} from \"./index.js\";\nimport schedule, {get} from \"./schedule.js\";\n\nexport default function() {\n var name = this._name,\n id0 = this._id,\n id1 = newId();\n\n for (var groups = this._groups, m = groups.length, j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n var inherit = get(node, id0);\n schedule(node, name, id1, i, group, {\n time: inherit.time + inherit.delay + inherit.duration,\n delay: 0,\n duration: inherit.duration,\n ease: inherit.ease\n });\n }\n }\n }\n\n return new Transition(groups, this._parents, name, id1);\n}\n","import {get, set, init} from \"./schedule.js\";\n\nfunction start(name) {\n return (name + \"\").trim().split(/^|\\s+/).every(function(t) {\n var i = t.indexOf(\".\");\n if (i >= 0) t = t.slice(0, i);\n return !t || t === \"start\";\n });\n}\n\nfunction onFunction(id, name, listener) {\n var on0, on1, sit = start(name) ? init : set;\n return function() {\n var schedule = sit(this, id),\n on = schedule.on;\n\n // If this node shared a dispatch with the previous node,\n // just assign the updated shared dispatch and we’re done!\n // Otherwise, copy-on-write.\n if (on !== on0) (on1 = (on0 = on).copy()).on(name, listener);\n\n schedule.on = on1;\n };\n}\n\nexport default function(name, listener) {\n var id = this._id;\n\n return arguments.length < 2\n ? get(this.node(), id).on.on(name)\n : this.each(onFunction(id, name, listener));\n}\n","function styleInterpolate(name, i, priority) {\n return function(t) {\n this.style.setProperty(name, i.call(this, t), priority);\n };\n}\n\nfunction styleTween(name, value, priority) {\n var t, i0;\n function tween() {\n var i = value.apply(this, arguments);\n if (i !== i0) t = (i0 = i) && styleInterpolate(name, i, priority);\n return t;\n }\n tween._value = value;\n return tween;\n}\n\nexport default function(name, value, priority) {\n var key = \"style.\" + (name += \"\");\n if (arguments.length < 2) return (key = this.tween(key)) && key._value;\n if (value == null) return this.tween(key, null);\n if (typeof value !== \"function\") throw new Error;\n return this.tween(key, styleTween(name, value, priority == null ? \"\" : priority));\n}\n","import {tweenValue} from \"./tween.js\";\n\nfunction textConstant(value) {\n return function() {\n this.textContent = value;\n };\n}\n\nfunction textFunction(value) {\n return function() {\n var value1 = value(this);\n this.textContent = value1 == null ? \"\" : value1;\n };\n}\n\nexport default function(value) {\n return this.tween(\"text\", typeof value === \"function\"\n ? textFunction(tweenValue(this, \"text\", value))\n : textConstant(value == null ? \"\" : value + \"\"));\n}\n","function textInterpolate(i) {\n return function(t) {\n this.textContent = i.call(this, t);\n };\n}\n\nfunction textTween(value) {\n var t0, i0;\n function tween() {\n var i = value.apply(this, arguments);\n if (i !== i0) t0 = (i0 = i) && textInterpolate(i);\n return t0;\n }\n tween._value = value;\n return tween;\n}\n\nexport default function(value) {\n var key = \"text\";\n if (arguments.length < 1) return (key = this.tween(key)) && key._value;\n if (value == null) return this.tween(key, null);\n if (typeof value !== \"function\") throw new Error;\n return this.tween(key, textTween(value));\n}\n","function removeFunction(id) {\n return function() {\n var parent = this.parentNode;\n for (var i in this.__transition) if (+i !== id) return;\n if (parent) parent.removeChild(this);\n };\n}\n\nexport default function() {\n return this.on(\"end.remove\", removeFunction(this._id));\n}\n","import {get, set} from \"./schedule.js\";\n\nfunction easeConstant(id, value) {\n if (typeof value !== \"function\") throw new Error;\n return function() {\n set(this, id).ease = value;\n };\n}\n\nexport default function(value) {\n var id = this._id;\n\n return arguments.length\n ? this.each(easeConstant(id, value))\n : get(this.node(), id).ease;\n}\n","import {set} from \"./schedule.js\";\n\nfunction easeVarying(id, value) {\n return function() {\n var v = value.apply(this, arguments);\n if (typeof v !== \"function\") throw new Error;\n set(this, id).ease = v;\n };\n}\n\nexport default function(value) {\n if (typeof value !== \"function\") throw new Error;\n return this.each(easeVarying(this._id, value));\n}\n","import {set} from \"./schedule.js\";\n\nexport default function() {\n var on0, on1, that = this, id = that._id, size = that.size();\n return new Promise(function(resolve, reject) {\n var cancel = {value: reject},\n end = {value: function() { if (--size === 0) resolve(); }};\n\n that.each(function() {\n var schedule = set(this, id),\n on = schedule.on;\n\n // If this node shared a dispatch with the previous node,\n // just assign the updated shared dispatch and we’re done!\n // Otherwise, copy-on-write.\n if (on !== on0) {\n on1 = (on0 = on).copy();\n on1._.cancel.push(cancel);\n on1._.interrupt.push(cancel);\n on1._.end.push(end);\n }\n\n schedule.on = on1;\n });\n\n // The selection was empty, resolve end immediately\n if (size === 0) resolve();\n });\n}\n","import {Transition, newId} from \"../transition/index.js\";\nimport schedule from \"../transition/schedule.js\";\nimport {easeCubicInOut} from \"d3-ease\";\nimport {now} from \"d3-timer\";\n\nvar defaultTiming = {\n time: null, // Set on use.\n delay: 0,\n duration: 250,\n ease: easeCubicInOut\n};\n\nfunction inherit(node, id) {\n var timing;\n while (!(timing = node.__transition) || !(timing = timing[id])) {\n if (!(node = node.parentNode)) {\n throw new Error(`transition ${id} not found`);\n }\n }\n return timing;\n}\n\nexport default function(name) {\n var id,\n timing;\n\n if (name instanceof Transition) {\n id = name._id, name = name._name;\n } else {\n id = newId(), (timing = defaultTiming).time = now(), name = name == null ? null : name + \"\";\n }\n\n for (var groups = this._groups, m = groups.length, j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n schedule(node, name, id, i, group, timing || inherit(node, id));\n }\n }\n }\n\n return new Transition(groups, this._parents, name, id);\n}\n","export function cubicIn(t) {\n return t * t * t;\n}\n\nexport function cubicOut(t) {\n return --t * t * t + 1;\n}\n\nexport function cubicInOut(t) {\n return ((t *= 2) <= 1 ? t * t * t : (t -= 2) * t * t + 2) / 2;\n}\n","export function Transform(k, x, y) {\n this.k = k;\n this.x = x;\n this.y = y;\n}\n\nTransform.prototype = {\n constructor: Transform,\n scale: function(k) {\n return k === 1 ? this : new Transform(this.k * k, this.x, this.y);\n },\n translate: function(x, y) {\n return x === 0 & y === 0 ? this : new Transform(this.k, this.x + this.k * x, this.y + this.k * y);\n },\n apply: function(point) {\n return [point[0] * this.k + this.x, point[1] * this.k + this.y];\n },\n applyX: function(x) {\n return x * this.k + this.x;\n },\n applyY: function(y) {\n return y * this.k + this.y;\n },\n invert: function(location) {\n return [(location[0] - this.x) / this.k, (location[1] - this.y) / this.k];\n },\n invertX: function(x) {\n return (x - this.x) / this.k;\n },\n invertY: function(y) {\n return (y - this.y) / this.k;\n },\n rescaleX: function(x) {\n return x.copy().domain(x.range().map(this.invertX, this).map(x.invert, x));\n },\n rescaleY: function(y) {\n return y.copy().domain(y.range().map(this.invertY, this).map(y.invert, y));\n },\n toString: function() {\n return \"translate(\" + this.x + \",\" + this.y + \") scale(\" + this.k + \")\";\n }\n};\n\nexport var identity = new Transform(1, 0, 0);\n\ntransform.prototype = Transform.prototype;\n\nexport default function transform(node) {\n while (!node.__zoom) if (!(node = node.parentNode)) return identity;\n return node.__zoom;\n}\n","import {selection} from \"d3-selection\";\nimport selection_interrupt from \"./interrupt.js\";\nimport selection_transition from \"./transition.js\";\n\nselection.prototype.interrupt = selection_interrupt;\nselection.prototype.transition = selection_transition;\n","import interrupt from \"../interrupt.js\";\n\nexport default function(name) {\n return this.each(function() {\n interrupt(this, name);\n });\n}\n","import {STARTING, ENDING, ENDED} from \"./transition/schedule.js\";\n\nexport default function(node, name) {\n var schedules = node.__transition,\n schedule,\n active,\n empty = true,\n i;\n\n if (!schedules) return;\n\n name = name == null ? null : name + \"\";\n\n for (i in schedules) {\n if ((schedule = schedules[i]).name !== name) { empty = false; continue; }\n active = schedule.state > STARTING && schedule.state < ENDING;\n schedule.state = ENDED;\n schedule.timer.stop();\n schedule.on.call(active ? \"interrupt\" : \"cancel\", node, node.__data__, schedule.index, schedule.group);\n delete schedules[i];\n }\n\n if (empty) delete node.__transition;\n}\n","\nimport {\n LitElement,\n css,\n svg,\n unsafeCSS,\n} from 'lit';\nimport * as d3 from 'd3';\n\n/*\n DecidablesElement Base Class - Not intended for instantiation!\n <decidables-element>\n*/\nexport default class DecidablesElement extends LitElement {\n getComputedStyleValue(property) {\n return getComputedStyle(this).getPropertyValue(property).trim();\n }\n\n firstUpdated(changedProperties) {\n super.firstUpdated(changedProperties);\n\n // Use focus highlighting if keyboard is used at all\n d3.select(this.renderRoot.host)\n .classed('keyboard', true)\n .on('mousemove.keyboard touchstart.keyboard', (event) => {\n const element = event.currentTarget;\n d3.select(element.renderRoot.host)\n .classed('keyboard', false)\n .on('mousemove.keyboard touchstart.keyboard', null);\n })\n .on('keydown.keyboard', (event) => {\n const element = event.currentTarget;\n d3.select(element.renderRoot.host)\n .classed('keyboard', true)\n .on('keydown.keyboard mousemove.keyboard touchstart.keyboard', null);\n });\n }\n\n static get greys() {\n const grey = '#999999';\n const greys = {};\n greys.white = '#ffffff';\n greys.light75 = d3.interpolateRgb(grey, '#ffffff')(0.75);\n greys.light50 = d3.interpolateRgb(grey, '#ffffff')(0.5);\n greys.light25 = d3.interpolateRgb(grey, '#ffffff')(0.25);\n greys.grey = grey;\n greys.dark25 = d3.interpolateRgb(grey, '#000000')(0.25);\n greys.dark50 = d3.interpolateRgb(grey, '#000000')(0.5);\n greys.dark75 = d3.interpolateRgb(grey, '#000000')(0.75);\n greys.black = '#000000';\n return greys;\n }\n\n static get shadows() {\n // Material Design elevation styles\n // References:\n // https://github.com/material-components/material-components-web/tree/master/packages/mdc-elevation\n // https://codepen.io/hanger/pen/yOGvQp\n /* eslint-disable key-spacing, object-curly-newline */\n return {\n elevations: [0, 2, 4, 8, 16],\n baselineColor: '#000000',\n baselineColorString: '0, 0, 0',\n inverseBaselineColor: '#FFFFFF',\n inverseBaselineColorString: '255, 255, 255',\n opacityUmbra: 0.2,\n opacityPenumbra: 0.14,\n opacityAmbient: 0.12,\n opacityBoost: 0.2,\n mapUmbra: {// $mdc-elevation-umbra-map\n 0: {x: 0, y: 0, b: 0, s: 0}, // offset-x, offset-y, blur-radius, spread-radius\n 2: {x: 0, y: 3, b: 1, s: -2},\n 4: {x: 0, y: 2, b: 4, s: -1},\n 8: {x: 0, y: 5, b: 5, s: -3},\n 16: {x: 0, y: 8, b: 10, s: -5},\n },\n mapPenumbra: {// $mdc-elevation-penumbra-map\n 0: {x: 0, y: 0, b: 0, s: 0}, // offset-x, offset-y, blur-radius, spread-radius\n 2: {x: 0, y: 2, b: 2, s: 0},\n 4: {x: 0, y: 4, b: 5, s: 0},\n 8: {x: 0, y: 8, b: 10, s: 1},\n 16: {x: 0, y: 16, b: 24, s: 2},\n },\n mapAmbient: {// $mdc-elevation-ambient-map\n 0: {x: 0, y: 0, b: 0, s: 0}, // offset-x, offset-y, blur-radius, spread-radius\n 2: {x: 0, y: 1, b: 5, s: 0},\n 4: {x: 0, y: 1, b: 10, s: 0},\n 8: {x: 0, y: 3, b: 14, s: 2},\n 16: {x: 0, y: 6, b: 30, s: 5},\n },\n };\n /* eslint-enable key-spacing, object-curly-newline */\n }\n\n static cssBoxShadow(elevation, rotate = false, inverse = false) {\n const umbraO = this.shadows.opacityUmbra + this.shadows.opacityBoost;\n const penumbraO = this.shadows.opacityPenumbra + this.shadows.opacityBoost;\n const ambientO = this.shadows.opacityAmbient + this.shadows.opacityBoost;\n\n const umbraC = (inverse)\n ? `rgba(${this.shadows.inverseBaselineColorString}, ${umbraO})`\n : `rgba(${this.shadows.baselineColorString}, ${umbraO})`;\n const penumbraC = (inverse)\n ? `rgba(${this.shadows.inverseBaselineColorString}, ${penumbraO})`\n : `rgba(${this.shadows.baselineColorString}, ${penumbraO})`;\n const ambientC = (inverse)\n ? `rgba(${this.shadows.inverseBaselineColorString}, ${ambientO})`\n : `rgba(${this.shadows.baselineColorString}, ${ambientO})`;\n\n const umbraM = this.shadows.mapUmbra[elevation];\n const penumbraM = this.shadows.mapPenumbra[elevation];\n const ambientM = this.shadows.mapAmbient[elevation];\n\n const umbraS = (rotate)\n ? `${-umbraM.y}px ${umbraM.y / 2}px ${umbraM.b}px ${umbraM.s}px`\n : `${umbraM.y / 2}px ${umbraM.y}px ${umbraM.b}px ${umbraM.s}px`;\n const penumbraS = (rotate)\n ? `${-penumbraM.y}px ${penumbraM.y / 2}px ${penumbraM.b}px ${penumbraM.s}px`\n : `${penumbraM.y / 2}px ${penumbraM.y}px ${penumbraM.b}px ${penumbraM.s}px`;\n const ambientS = (rotate)\n ? `${-ambientM.y}px ${ambientM.y / 2}px ${ambientM.b}px ${ambientM.s}px`\n : `${ambientM.y / 2}px ${ambientM.y}px ${ambientM.b}px ${ambientM.s}px`;\n\n return `${umbraS} ${umbraC}, ${penumbraS} ${penumbraC}, ${ambientS} ${ambientC}`;\n }\n\n static get svgFilters() {\n const shadows = DecidablesElement.shadows; /* eslint-disable-line prefer-destructuring */\n\n const filters = shadows.elevations.map((z) => {\n return svg`\n <filter id=${`shadow-${z}`} x=\"-250%\" y=\"-250%\" width=\"600%\" height=\"600%\">\n <feComponentTransfer in=\"SourceAlpha\" result=\"solid\">\n <feFuncA type=\"table\" tableValues=\"0 1 1\"/>\n </feComponentTransfer>\n <feOffset in=\"solid\" result=\"offU\" dx=${shadows.mapUmbra[z].y / 2} dy=${shadows.mapUmbra[z].y} />\n <feOffset in=\"solid\" result=\"offP\" dx=${shadows.mapPenumbra[z].y / 2} dy=${shadows.mapPenumbra[z].y} />\n <feOffset in=\"solid\" result=\"offA\" dx=${shadows.mapAmbient[z].y / 2} dy=${shadows.mapAmbient[z].y} />\n ${(shadows.mapUmbra[z].s === 0)\n ? svg``\n : svg`<feMorphology in=\"offU\" result=\"spreadU\" operator=${(shadows.mapUmbra[z].s > 0) ? 'dilate' : 'erode'} radius=${Math.abs(shadows.mapUmbra[z].s)} />`\n }\n ${(shadows.mapPenumbra[z].s === 0)\n ? svg``\n : svg`<feMorphology in=\"offP\" result=\"spreadP\" operator=${(shadows.mapPenumbra[z].s > 0) ? 'dilate' : 'erode'} radius=${Math.abs(shadows.mapPenumbra[z].s)} />`\n }\n ${(shadows.mapAmbient[z].s === 0)\n ? svg``\n : svg`<feMorphology in=\"offA\" result=\"spreadA\" operator=${(shadows.mapAmbient[z].s > 0) ? 'dilate' : 'erode'} radius=${Math.abs(shadows.mapAmbient[z].s)} />`\n }\n <feGaussianBlur in=${(shadows.mapUmbra[z].s === 0) ? 'offU' : 'spreadU'} result=\"blurU\" stdDeviation=${shadows.mapUmbra[z].b / 2} />\n <feGaussianBlur in=${(shadows.mapPenumbra[z].s === 0) ? 'offP' : 'spreadP'} result=\"blurP\" stdDeviation=${shadows.mapPenumbra[z].b / 2} />\n <feGaussianBlur in=${(shadows.mapAmbient[z].s === 0) ? 'offA' : 'spreadA'} result=\"blurA\" stdDeviation=${shadows.mapAmbient[z].b / 2} />\n <feFlood in=\"SourceGraphic\" result=\"opU\" flood-color=${shadows.baselineColor} flood-opacity=${shadows.opacityUmbra + shadows.opacityBoost} />\n <feFlood in=\"SourceGraphic\" result=\"opP\" flood-color=${shadows.baselineColor} flood-opacity=${shadows.opacityPenumbra + shadows.opacityBoost} />\n <feFlood in=\"SourceGraphic\" result=\"opA\" flood-color=${shadows.baselineColor} flood-opacity=${shadows.opacityAmbient + shadows.opacityBoost} />\n <feComposite in=\"opU\" in2=\"blurU\" result=\"shU\" operator=\"in\" />\n <feComposite in=\"opP\" in2=\"blurP\" result=\"shP\" operator=\"in\" />\n <feComposite in=\"opA\" in2=\"blurA\" result=\"shA\" operator=\"in\" />\n <feMorphology in=\"solid\" result=\"smaller\" operator=\"erode\" radius=\"1\" />\n <feComposite in=\"shU\" in2=\"smaller\" result=\"finalU\" operator=\"out\" />\n <feComposite in=\"shP\" in2=\"smaller\" result=\"finalP\" operator=\"out\" />\n <feComposite in=\"shA\" in2=\"smaller\" result=\"finalA\" operator=\"out\" />\n <feMerge>\n <feMergeNode in=\"finalU\" />\n <feMergeNode in=\"finalP\" />\n <feMergeNode in=\"finalA\" />\n <feMergeNode in=\"SourceGraphic\" />\n </feMerge>\n </filter>`;\n });\n\n return svg`\n <svg class=\"defs\">\n <defs>\n ${filters}\n </defs>\n </svg>\n `;\n }\n\n static get styles() {\n return css`\n :host {\n ---shadow-0: var(--shadow-0, ${unsafeCSS(this.cssBoxShadow(0))});\n ---shadow-2: var(--shadow-2, ${unsafeCSS(this.cssBoxShadow(2))});\n ---shadow-4: var(--shadow-4, ${unsafeCSS(this.cssBoxShadow(4))});\n ---shadow-8: var(--shadow-8, ${unsafeCSS(this.cssBoxShadow(8))});\n\n ---color-background: var(--color-background, ${unsafeCSS(this.greys.white)});\n ---color-border: var(--color-border, ${unsafeCSS(this.greys.light75)});\n ---color-text: var(--color-text, ${unsafeCSS(this.greys.dark75)});\n ---color-text-inverse: var(--color-text-inverse, ${unsafeCSS(this.greys.white)});\n ---color-link: var(--color-link, ${unsafeCSS(this.greys.dark25)});\n ---color-element-background: var(--color-element-background, ${unsafeCSS(this.greys.light75)});\n ---color-element-disabled: var(--color-element-disabled, ${unsafeCSS(this.greys.light50)});\n ---color-element-enabled: var(--color-element-enabled, ${unsafeCSS(this.greys.dark25)});\n ---color-element-selected: var(--color-element-selected, ${unsafeCSS(this.greys.grey)});\n ---color-element-border: var(--color-element-border, ${unsafeCSS(this.greys.dark50)});\n ---color-element-emphasis: var(--color-element-emphasis, ${unsafeCSS(this.greys.dark75)});\n\n ---font-family-base: var(--font-family-base, \"Source Sans\", sans-serif);\n ---font-family-math: var(--font-family-math, \"Source Serif\", serif);\n\n ---border: var(--border, 1px solid var(---color-border));\n ---border-radius: var(--border-radius, 0.25rem);\n ---transition-duration: var(--transition-duration, 500ms);\n\n font-family: var(---font-family-base);\n }\n\n :host,\n :host *,\n :host *::before,\n :host *::after {\n box-sizing: border-box;\n }\n\n .math-greek {\n font-family: var(---font-family-math);\n font-style: normal;\n }\n\n .math-num {\n font-family: var(---font-family-base);\n font-style: normal;\n }\n\n .math-var {\n font-family: var(---font-family-math);\n font-style: italic;\n }\n\n .defs {\n display: block;\n\n width: 0;\n height: 0;\n }\n `;\n }\n}\n","\nimport {html, css} from 'lit';\n\nimport DecidablesElement from './decidables-element';\n\nexport default class DecidablesButton extends DecidablesElement {\n static get properties() {\n return {\n disabled: {\n attribute: 'disabled',\n type: Boolean,\n reflect: true,\n },\n };\n }\n\n constructor() {\n super();\n\n // Attributes\n this.disabled = false;\n }\n\n static get styles() {\n return [\n super.styles,\n css`\n :host {\n margin: 0.25rem;\n }\n\n button {\n width: 100%;\n height: 100%;\n padding: 0.375rem 0.75rem;\n\n font-family: var(---font-family-base);\n font-size: 1.125rem;\n line-height: 1.5;\n color: var(---color-text-inverse);\n\n border: 0;\n border-radius: var(---border-radius);\n outline: none;\n }\n\n button:disabled {\n background-color: var(--decidables-button-background-color, var(---color-element-disabled));\n outline: none;\n box-shadow: none;\n }\n\n button:enabled {\n cursor: pointer;\n\n background-color: var(--decidables-button-background-color, var(---color-element-enabled));\n outline: none;\n box-shadow: var(---shadow-2);\n }\n\n button:enabled:hover {\n outline: none;\n box-shadow: var(---shadow-4);\n }\n\n button:enabled:active {\n outline: none;\n box-shadow: var(---shadow-8);\n }\n\n :host(.keyboard) button:enabled:focus {\n outline: none;\n box-shadow: var(---shadow-4);\n }\n\n :host(.keyboard) button:enabled:focus:active {\n outline: none;\n box-shadow: var(---shadow-8);\n }\n `,\n ];\n }\n\n render() {\n return html`\n <button ?disabled=${this.disabled}>\n <slot></slot>\n </button>\n `;\n }\n}\n\ncustomElements.define('decidables-button', DecidablesButton);\n","import{nothing as t}from\"../lit-html.js\";\n/**\n * @license\n * Copyright 2018 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const l=l=>null!=l?l:t;export{l as ifDefined};\n//# sourceMappingURL=if-defined.js.map\n","\nimport {ifDefined} from 'lit/directives/if-defined.js'; /* eslint-disable-line import/extensions */\nimport {html, css, unsafeCSS} from 'lit';\n\nimport DecidablesElement from './decidables-element';\n\nexport default class DecidablesSlider extends DecidablesElement {\n static get properties() {\n return {\n disabled: {\n attribute: 'disabled',\n type: Boolean,\n reflect: true,\n },\n max: {\n attribute: 'max',\n type: Number,\n reflect: true,\n },\n min: {\n attribute: 'min',\n type: Number,\n reflect: true,\n },\n step: {\n attribute: 'step',\n type: Number,\n reflect: true,\n },\n value: {\n attribute: 'value',\n type: Number,\n reflect: true,\n },\n };\n }\n\n constructor() {\n super();\n\n // Attributes\n this.disabled = false;\n this.max = undefined;\n this.min = undefined;\n this.step = undefined;\n this.value = undefined;\n }\n\n changed(event) {\n this.value = event.target.value;\n this.dispatchEvent(new CustomEvent('change', {\n detail: {\n value: this.value,\n },\n bubbles: true,\n }));\n }\n\n inputted(event) {\n this.value = event.target.value;\n }\n\n static get styles() {\n return [\n super.styles,\n css`\n :host {\n ---shadow-2-rotate: var(--shadow-2-rotate, ${unsafeCSS(this.cssBoxShadow(2, true, false))});\n ---shadow-4-rotate: var(--shadow-4-rotate, ${unsafeCSS(this.cssBoxShadow(4, true, false))});\n ---shadow-8-rotate: var(--shadow-8-rotate, ${unsafeCSS(this.cssBoxShadow(8, true, false))});\n\n display: flex;\n\n flex-direction: column;\n\n align-items: center;\n justify-content: center;\n }\n\n label {\n margin: 0.25rem 0.25rem 0;\n }\n\n .range {\n display: inline-block;\n\n width: 3.5rem;\n height: 4.75rem;\n margin: 0 0.25rem 0.25rem;\n }\n\n decidables-spinner {\n --decidables-spinner-input-width: 3.5rem;\n\n margin: 0 0.25rem 0.25rem;\n }\n\n /* Adapted from http://danielstern.ca/range.css/#/ */\n /* Overall */\n input[type=range] {\n width: 4.75rem;\n height: 3.5rem;\n padding: 0;\n margin: 0;\n\n background-color: unset;\n\n transform: rotate(-90deg);\n transform-origin: 2.375rem 2.375rem;\n\n /* stylelint-disable-next-line property-no-vendor-prefix */\n -webkit-appearance: none;\n }\n\n input[type=range]:enabled {\n cursor: ns-resize;\n }\n\n input[type=range]:focus {\n outline: none;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-ms-tooltip {\n display: none;\n }\n\n /* Track */\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-webkit-slider-runnable-track {\n width: 100%;\n height: 4px;\n\n background: var(---color-element-disabled);\n border: 0;\n border-radius: 2px;\n box-shadow: none;\n }\n\n input[type=range]:focus::-webkit-slider-runnable-track {\n background: var(---color-element-disabled);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-moz-range-track {\n width: 100%;\n height: 4px;\n\n background: var(---color-element-disabled);\n border: 0;\n border-radius: 2px;\n box-shadow: none;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-ms-track {\n width: 100%;\n height: 4px;\n\n color: transparent;\n\n background: transparent;\n border-color: transparent;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-ms-fill-lower {\n background: #cccccc;\n /* background: var(---color-element-disabled); */\n border: 0;\n border-radius: 2px;\n box-shadow: none;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-ms-fill-upper {\n background: #cccccc;\n /* background: var(---color-element-disabled); */\n border: 0;\n border-radius: 2px;\n box-shadow: none;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:focus::-ms-fill-lower {\n background: var(---color-element-disabled);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:focus::-ms-fill-upper {\n background: var(---color-element-disabled);\n }\n\n /* Thumb */\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-webkit-slider-thumb {\n width: 10px;\n height: 20px;\n margin-top: -8px;\n\n border: 0;\n border-radius: 4px;\n\n /* stylelint-disable-next-line property-no-vendor-prefix */\n -webkit-appearance: none;\n }\n\n input[type=range]:disabled::-webkit-slider-thumb {\n background: var(---color-element-disabled);\n box-shadow: none;\n }\n\n input[type=range]:enabled::-webkit-slider-thumb {\n background: var(---color-element-enabled);\n box-shadow: var(---shadow-2-rotate);\n }\n\n input[type=range]:enabled:hover::-webkit-slider-thumb {\n box-shadow: var(---shadow-4-rotate);\n }\n\n input[type=range]:enabled:active::-webkit-slider-thumb {\n box-shadow: var(---shadow-8-rotate);\n }\n\n :host(.keyboard) input[type=range]:enabled:focus::-webkit-slider-thumb {\n box-shadow: var(---shadow-4-rotate);\n }\n\n :host(.keyboard) input[type=range]:focus:active::-webkit-slider-thumb {\n box-shadow: var(---shadow-8-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-moz-range-thumb {\n width: 10px;\n height: 20px;\n\n border: 0;\n border-radius: 4px;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:disabled::-moz-range-thumb {\n background: var(---color-element-disabled);\n box-shadow: none;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:enabled::-moz-range-thumb {\n background: var(---color-element-enabled);\n box-shadow: var(---shadow-2-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:enabled:hover::-moz-range-thumb {\n box-shadow: var(---shadow-4-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:enabled:active::-moz-range-thumb {\n box-shadow: var(---shadow-8-rotate);\n }\n\n :host(.keyboard) input[type=range]:enabled:focus::-moz-range-thumb {\n box-shadow: var(---shadow-4-rotate);\n }\n\n :host(.keyboard) input[type=range]:enabled:focus:active::-moz-range-thumb {\n box-shadow: var(---shadow-8-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-ms-thumb {\n width: 10px;\n height: 20px;\n margin-top: 0;\n\n background: #999999;\n /* background: var(---color-element-enabled); */\n border: 0;\n border-radius: 4px;\n box-shadow: var(---shadow-2-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:disabled::-ms-thumb {\n background: var(---color-element-disabled);\n box-shadow: none;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:enabled::-ms-thumb {\n background: var(---color-element-enabled);\n box-shadow: var(---shadow-2-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:enabled:hover::-ms-thumb {\n box-shadow: var(---shadow-4-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:enabled:active::-ms-thumb {\n box-shadow: var(---shadow-8-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n :host(.keyboard) input[type=range]:enabled:focus::-ms-thumb {\n box-shadow: var(---shadow-4-rotate);\n }\n\n :host(.keyboard) input[type=range]:enabled:focus:active::-ms-thumb {\n box-shadow: var(---shadow-8-rotate);\n }\n `,\n ];\n }\n\n render() {\n return html`\n <label for=\"slider\">\n <slot></slot>\n </label>\n <div class=\"range\">\n <input type=\"range\" id=\"slider\" min=${ifDefined(this.min)} max=${ifDefined(this.max)} step=${ifDefined(this.step)} .value=${this.value} @change=${this.changed.bind(this)} @input=${this.inputted.bind(this)}>\n </div>\n <decidables-spinner min=${ifDefined(this.min)} max=${ifDefined(this.max)} step=${ifDefined(this.step)} .value=${this.value} @input=${this.inputted.bind(this)}></decidables-spinner>\n `;\n }\n}\n\ncustomElements.define('decidables-slider', DecidablesSlider);\n","\nimport {ifDefined} from 'lit/directives/if-defined.js'; /* eslint-disable-line import/extensions */\nimport {html, css} from 'lit';\n\nimport DecidablesElement from './decidables-element';\n\nexport default class DecidablesSpinner extends DecidablesElement {\n static get properties() {\n return {\n disabled: {\n attribute: 'disabled',\n type: Boolean,\n reflect: true,\n },\n max: {\n attribute: 'max',\n type: Number,\n reflect: true,\n },\n min: {\n attribute: 'min',\n type: Number,\n reflect: true,\n },\n step: {\n attribute: 'step',\n type: Number,\n reflect: true,\n },\n value: {\n attribute: 'value',\n type: Number,\n reflect: true,\n },\n };\n }\n\n constructor() {\n super();\n\n // Attributes\n this.disabled = false;\n this.max = undefined;\n this.min = undefined;\n this.step = undefined;\n this.value = undefined;\n }\n\n inputted(event) {\n this.value = event.target.value;\n }\n\n static get styles() {\n return [\n super.styles,\n css`\n :host {\n ---decidables-spinner-font-size: var(--decidables-spinner-font-size, 1.125rem);\n ---decidables-spinner-input-width: var(--decidables-spinner-input-width, 4rem);\n ---decidables-spinner-prefix: var(--decidables-spinner-prefix, \"\");\n\n display: block;\n }\n\n label {\n position: relative;\n display: flex;\n\n flex-direction: column;\n\n align-items: center;\n\n margin: 0;\n\n font-size: 0.75rem;\n }\n\n label::before {\n position: absolute;\n bottom: 1px;\n left: calc(50% - var(---decidables-spinner-input-width) / 2 + 0.25rem);\n\n font-size: var(---decidables-spinner-font-size);\n line-height: normal;\n\n content: var(---decidables-spinner-prefix);\n }\n\n input[type=number] {\n width: var(---decidables-spinner-input-width);\n\n font-family: var(---font-family-base);\n font-size: var(---decidables-spinner-font-size);\n color: inherit;\n text-align: right;\n\n background: none;\n border: 0;\n border-radius: 0;\n outline: none;\n box-shadow: var(---shadow-2);\n\n -webkit-appearance: none; /* stylelint-disable-line property-no-vendor-prefix */\n }\n\n input[type=number]:hover {\n box-shadow: var(---shadow-4);\n }\n\n input[type=number]:focus,\n input[type=number]:active {\n box-shadow: var(---shadow-8);\n }\n\n input[type=number]:disabled {\n color: var(---color-text);\n\n border: 0;\n box-shadow: none;\n\n /* HACK: Use correct text color in Safari */\n -webkit-opacity: 1;\n /* HACK: Hide spinners in disabled input for Firefox and Safari */\n -moz-appearance: textfield; /* stylelint-disable-line property-no-vendor-prefix */\n /* HACK: Use correct text color in Safari */\n -webkit-text-fill-color: var(---color-text);\n }\n\n /* HACK: Hide spinners in disabled input for Firefox and Safari */\n input[type=number]:disabled::-webkit-outer-spin-button,\n input[type=number]:disabled::-webkit-inner-spin-button {\n margin: 0;\n -webkit-appearance: none; /* stylelint-disable-line property-no-vendor-prefix */\n }\n `,\n ];\n }\n\n render() {\n return html`\n <label>\n <slot></slot>\n <input ?disabled=${this.disabled} type=\"number\" min=${ifDefined(this.min)} max=${ifDefined(this.max)} step=${ifDefined(this.step)} .value=${this.value} @input=${this.inputted.bind(this)}>\n </label>\n `;\n }\n}\n\ncustomElements.define('decidables-spinner', DecidablesSpinner);\n","\nimport {html, css} from 'lit';\n\nimport DecidablesElement from './decidables-element';\n\nexport default class DecidablesSwitch extends DecidablesElement {\n static get properties() {\n return {\n checked: {\n attribute: 'checked',\n type: Boolean,\n reflect: true,\n },\n disabled: {\n attribute: 'disabled',\n type: Boolean,\n reflect: true,\n },\n };\n }\n\n constructor() {\n super();\n\n // Attributes\n this.checked = false;\n this.disabled = false;\n }\n\n changed(event) {\n this.checked = event.target.checked;\n this.dispatchEvent(new CustomEvent('change', {\n detail: {\n checked: this.checked,\n },\n bubbles: true,\n }));\n }\n\n static get styles() {\n return [\n super.styles,\n css`\n :host {\n display: flex;\n\n flex-direction: column;\n\n align-items: center;\n justify-content: center;\n }\n\n /* Adapted from https://codepen.io/guuslieben/pen/YyPRVP */\n input[type=checkbox] {\n /* visuallyhidden: https://github.com/h5bp/html5-boilerplate/blob/master/dist/doc/css.md */\n position: absolute;\n\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0 0 0 0);\n\n white-space: nowrap;\n\n border: 0;\n clip-path: inset(100%); /* May cause a performance issue: https://github.com/h5bp/html5-boilerplate/issues/2021 */\n }\n\n input[type=checkbox] + label {\n order: 1;\n\n margin: 0 0.25rem 0.25rem;\n\n font-weight: 400;\n }\n\n input[type=checkbox] + label + label {\n position: relative;\n\n min-width: 24px;\n padding: 0 0 36px;\n margin: 0.25rem 0.25rem 0;\n\n font-weight: 400;\n\n outline: none;\n }\n\n input[type=checkbox] + label + label::before,\n input[type=checkbox] + label + label::after {\n position: absolute;\n\n left: 50%;\n\n margin: 0;\n\n content: \"\";\n\n outline: 0;\n\n transition: all var(---transition-duration) ease;\n transform: translate(-50%, 0);\n }\n\n input[type=checkbox] + label + label::before {\n bottom: 1px;\n\n width: 8px;\n height: 34px;\n\n background-color: var(---color-element-disabled);\n border-radius: 4px;\n }\n\n input[type=checkbox] + label + label::after {\n bottom: 0;\n\n width: 18px;\n height: 18px;\n\n background-color: var(---color-element-enabled);\n border-radius: 50%;\n box-shadow: var(---shadow-2);\n }\n\n input[type=checkbox]:checked + label + label::after {\n transform: translate(-50%, -100%);\n }\n\n input[type=checkbox]:disabled + label + label::after {\n background-color: var(---color-element-disabled);\n box-shadow: none;\n }\n\n input[type=checkbox]:enabled + label,\n input[type=checkbox]:enabled + label + label {\n cursor: pointer;\n }\n\n input[type=checkbox]:enabled + label:hover + label::after,\n input[type=checkbox]:enabled + label + label:hover::after {\n box-shadow: var(---shadow-4);\n }\n\n input[type=checkbox]:enabled + label:active + label::after,\n input[type=checkbox]:enabled + label + label:active::after {\n box-shadow: var(---shadow-8);\n }\n\n /* stylelint-disable-next-line selector-max-compound-selectors */\n :host(.keyboard) input[type=checkbox]:enabled:focus + label + label::after {\n box-shadow: var(---shadow-4);\n }\n\n /* stylelint-disable-next-line selector-max-compound-selectors */\n :host(.keyboard) input[type=checkbox]:enabled:focus + label + label:active::after,\n :host(.keyboard) input[type=checkbox]:enabled:focus:active + label + label::after {\n box-shadow: var(---shadow-8);\n }\n `,\n ];\n }\n\n render() {\n return html`\n <input type=\"checkbox\" id=\"switch\" ?checked=${this.checked} ?disabled=${this.disabled} @change=${this.changed.bind(this)}>\n <label for=\"switch\">\n <slot name=\"off-label\"></slot>\n </label>\n <label for=\"switch\">\n <slot></slot>\n </label>\n `;\n }\n}\n\ncustomElements.define('decidables-switch', DecidablesSwitch);\n","\nimport {html, css} from 'lit';\n\nimport DecidablesElement from './decidables-element';\n\nexport default class DecidablesToggle extends DecidablesElement {\n static get properties() {\n return {\n disabled: {\n attribute: 'disabled',\n type: Boolean,\n reflect: true,\n },\n };\n }\n\n constructor() {\n super();\n\n // Attributes\n this.disabled = false;\n }\n\n static get styles() {\n return [\n super.styles,\n css`\n fieldset {\n display: flex;\n\n flex-direction: column;\n\n align-items: stretch;\n justify-content: center;\n\n margin: 0.25rem;\n\n border: 0;\n }\n\n legend {\n text-align: center;\n }\n `,\n ];\n }\n\n render() {\n return html`\n <fieldset ?disabled=${this.disabled}>\n <legend><slot name=\"label\"></slot></legend>\n <slot></slot>\n </fieldset>\n `;\n }\n}\n\ncustomElements.define('decidables-toggle', DecidablesToggle);\n","\nimport {html, css} from 'lit';\n\nimport DecidablesElement from './decidables-element';\n\nexport default class DecidablesToggleOption extends DecidablesElement {\n static get properties() {\n return {\n checked: {\n attribute: 'checked',\n type: Boolean,\n reflect: true,\n },\n disabled: {\n attribute: 'disabled',\n type: Boolean,\n reflect: true,\n },\n name: {\n attribute: 'name',\n type: String,\n reflect: true,\n },\n value: {\n attribute: 'value',\n type: String,\n reflect: true,\n },\n };\n }\n\n constructor() {\n super();\n\n // Attributes\n this.checked = false;\n this.disabled = false;\n this.name = undefined;\n this.value = undefined;\n }\n\n changed(event) {\n this.checked = event.target.checked;\n this.dispatchEvent(new CustomEvent('change', {\n detail: {\n checked: this.checked,\n value: this.value,\n },\n bubbles: true,\n }));\n }\n\n static get styles() {\n return [\n super.styles,\n css`\n :host {\n display: flex;\n }\n\n input[type=radio] {\n /* visuallyhidden: https://github.com/h5bp/html5-boilerplate/blob/master/dist/doc/css.md */\n position: absolute;\n\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0 0 0 0);\n\n white-space: nowrap;\n\n border: 0;\n clip-path: inset(100%); /* May cause a performance issue: https://github.com/h5bp/html5-boilerplate/issues/2021 */\n }\n\n input[type=radio] + label {\n width: 100%;\n padding: 0.375rem 0.75rem;\n\n font-family: var(---font-family-base);\n font-size: 1.125rem;\n line-height: 1.5;\n color: var(---color-text-inverse);\n text-align: center;\n\n cursor: pointer;\n\n background-color: var(---color-element-enabled);\n border: 0;\n border-radius: 0;\n outline: none;\n\n box-shadow: var(---shadow-2);\n }\n\n input[type=radio]:checked + label {\n background-color: var(---color-element-selected);\n outline: none;\n box-shadow: var(---shadow-2);\n }\n\n input[type=radio] + label:hover {\n z-index: 1;\n\n outline: none;\n box-shadow: var(---shadow-4);\n }\n\n input[type=radio] + label:active {\n z-index: 2;\n\n outline: none;\n box-shadow: var(---shadow-8);\n }\n\n :host(:first-of-type) input[type=radio] + label {\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n }\n\n :host(:last-of-type) input[type=radio] + label {\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n }\n\n :host(.keyboard) input[type=radio]:focus + label {\n z-index: 1;\n\n outline: none;\n box-shadow: var(---shadow-4);\n }\n\n :host(.keyboard) input[type=radio]:focus:checked + label {\n z-index: 1;\n\n background-color: var(---color-element-selected);\n outline: none;\n box-shadow: var(---shadow-4);\n }\n\n :host(.keyboard) input[type=radio]:focus + label:active {\n z-index: 2;\n\n outline: none;\n box-shadow: var(---shadow-8);\n }\n `,\n ];\n }\n\n render() {\n return html`\n <input type=\"radio\" id=\"toggle-option\" name=${this.name} value=${this.value} .checked=${this.checked} @change=${this.changed.bind(this)}>\n <label for=\"toggle-option\">\n <slot></slot>\n </label>\n `;\n }\n}\n\ncustomElements.define('decidables-toggle-option', DecidablesToggleOption);\n","\n/*\n Attribute: Space-separated sequence of numbers\n Property: Array of numbers\n*/\nconst DecidablesConverterArray = {\n fromAttribute: (value) => {\n return value.split(/\\s+/).map((item) => { return Number.parseFloat(item); });\n },\n toAttribute: (value) => {\n return (value.length) ? value.map((item) => { return item.toFixed(3); }).join(' ') : null;\n },\n};\n\nexport default DecidablesConverterArray;\n","\n/*\n Attribute: Space-separated sequence of strings\n Property: Set of strings\n*/\nconst DecidablesConverterSet = {\n fromAttribute: (value) => {\n return new Set(value.split(/\\s+/));\n },\n toAttribute: (value) => {\n return (value.size) ? [...value].join(' ') : null;\n },\n};\n\nexport default DecidablesConverterSet;\n"],"names":["t","window","e","ShadowRoot","ShadyCSS","nativeShadow","Document","prototype","CSSStyleSheet","s","Symbol","n","WeakMap","o$6","constructor","this","_$cssResult$","Error","cssText","styleSheet","o","length","get","replaceSync","set","toString","r","c","cssRules","trustedTypes","h","emptyScript","reactiveElementPolyfillSupport","toAttribute","i","Boolean","Object","Array","JSON","stringify","fromAttribute","Number","parse","a","notEqual","l","attribute","type","String","converter","reflect","hasChanged","HTMLElement","super","_$Ei","Map","isUpdatePending","hasUpdated","_$El","u","addInitializer","finalize","push","observedAttributes","elementProperties","forEach","_$Ep","_$Ev","createProperty","state","noAccessor","hasOwnProperty","getPropertyDescriptor","defineProperty","requestUpdate","configurable","enumerable","getPropertyOptions","finalized","getPrototypeOf","properties","getOwnPropertyNames","getOwnPropertySymbols","elementStyles","finalizeStyles","styles","isArray","Set","flat","reverse","unshift","toLowerCase","_$E_","Promise","enableUpdating","_$AL","_$Eg","addController","_$ES","renderRoot","isConnected","hostConnected","call","removeController","splice","indexOf","createRenderRoot","shadowRoot","attachShadow","shadowRootOptions","adoptStyles","adoptedStyleSheets","map","document","createElement","litNonce","setAttribute","textContent","appendChild","connectedCallback","disconnectedCallback","hostDisconnected","attributeChangedCallback","_$AK","_$EO","removeAttribute","has","_$EC","_$Ej","reject","scheduleUpdate","performUpdate","shouldUpdate","willUpdate","hostUpdate","update","_$Ek","_$AE","hostUpdated","firstUpdated","updated","updateComplete","getUpdateComplete","d$2","d","mode","ReactiveElement","reactiveElementVersions","createPolicy","createHTML","Math","random","slice","createMarker","createComment","f","_","m","p","RegExp","g","$","y","T","for","A","E","C","createTreeWalker","P","N$1","N","strings","_$litType$","parts","v","getTemplateHtml","lastIndex","exec","test","w","startsWith","V","el","currentNode","content","firstChild","remove","append","childNodes","nextNode","nodeType","hasAttributes","getAttributeNames","endsWith","getAttribute","split","index","name","ctor","H","L","z","k","tagName","data","innerHTML","S","_$Co","_$Cl","_$litDirective$","_$AO","_$AT","_$AS","values","M$1","_$AV","_$AN","_$AD","_$AM","parentNode","_$AU","creationScope","importNode","R","nextSibling","Z","_$AI","R$1","_$AH","_$AA","_$AB","options","_$Cp","startNode","endNode","_$AR","iterator","insertBefore","createTextNode","_$AC","M","_$AP","setConnected","k$1","element","fill","j","arguments","I","capture","once","passive","removeEventListener","addEventListener","handleEvent","host","B","litHtmlPolyfillSupport","litHtmlVersions","s$3","css","reduce","_$Et","_$Eh","_$Eu","_$Em","_$EU","a$1","globalThis","x","b","_$Cm","renderOptions","_$Do","renderBefore","render","_$litPart$","_$litElement$","litElementHydrateSupport","LitElement","litElementPolyfillSupport","litElementVersions","noop","value","dispatch","Dispatch","callback","concat","on","typename","types","trim","copy","that","args","apply","xhtml","namespaces","svg","xlink","xml","xmlns","namespace","prefix","space","local","creatorInherit","ownerDocument","uri","namespaceURI","documentElement","createElementNS","creatorFixed","fullname","creator","none","selector","querySelector","empty","selectorAll","querySelectorAll","arrayAll","select","from","array","matcher","matches","childMatcher","node","find","childFirst","firstElementChild","filter","children","sparse","EnterNode","parent","datum","_next","_parent","__data__","bindIndex","group","enter","exit","groupLength","dataLength","bindKey","key","keyValue","nodeByKeyValue","keyValues","delete","arraylike","ascending","NaN","attrRemove","attrRemoveNS","removeAttributeNS","attrConstant","attrConstantNS","setAttributeNS","attrFunction","attrFunctionNS","defaultView","styleRemove","style","removeProperty","styleConstant","priority","setProperty","styleFunction","styleValue","getPropertyValue","getComputedStyle","propertyRemove","propertyConstant","propertyFunction","classArray","string","classList","ClassList","_node","_names","classedAdd","names","list","add","classedRemove","classedTrue","classedFalse","classedFunction","textRemove","textConstant","textFunction","htmlRemove","htmlConstant","htmlFunction","raise","lower","previousSibling","constantNull","removeChild","selection_cloneShallow","clone","cloneNode","selection_cloneDeep","onRemove","__on","listener","onAdd","event","contextListener","dispatchEvent","params","CustomEvent","createEvent","initEvent","bubbles","cancelable","detail","dispatchConstant","dispatchFunction","child","next","join","contains","root","Selection","groups","parents","_groups","_parents","selection","define","factory","extend","definition","create","Color","subgroups","subnode","subgroup","selectAll","selectChild","match","childFind","selectChildren","childrenFilter","bind","constant","enterGroup","updateGroup","previous","i0","i1","_enter","_exit","onenter","onupdate","onexit","merge","order","context","groups0","groups1","m0","m1","min","merges","group0","group1","compareDocumentPosition","sort","compare","compareNode","sortgroups","sortgroup","nodes","size","each","attr","getAttributeNS","property","classed","text","html","insert","before","deep","typenames","parseTypenames","darker","brighter","reI","reN","reP","reHex","reRgbInteger","reRgbPercent","reRgbaInteger","reRgbaPercent","reHslPercent","reHslaPercent","named","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","color_formatHex","rgb","formatHex","color_formatRgb","formatRgb","color","format","parseInt","rgbn","Rgb","rgba","hsla","opacity","rgbConvert","rgb_formatHex","hex","rgb_formatRgb","isNaN","max","round","Hsl","hslConvert","hsl2rgb","m2","channels","assign","displayable","formatHsl","pow","gamma","nogamma","exponential","linear","interpolateRgb","rgbGamma","start","end","colorRgb","interpolateNumber","reA","reB","source","interpolateString","am","bm","bs","bi","q","number","one","zero","svgNode","degrees","PI","identity","translateX","translateY","rotate","skewX","scaleX","scaleY","decompose","sqrt","atan2","atan","interpolateTransform","pxComma","pxParen","degParen","pop","xa","ya","xb","yb","translate","scale","taskHead","taskTail","interpolateTransformCss","DOMMatrix","WebKitCSSMatrix","isIdentity","interpolateTransformSvg","transform","baseVal","consolidate","matrix","frame","timeout","interval","pokeDelay","clockLast","clockNow","clockSkew","clock","performance","now","Date","setFrame","requestAnimationFrame","setTimeout","clearNow","Timer","_call","_time","timer","delay","time","restart","wake","undefined","timerFlush","t0","t2","t1","Infinity","sleep","nap","poke","clearTimeout","clearInterval","setInterval","elapsed","stop","TypeError","emptyOn","emptyTween","CREATED","SCHEDULED","STARTING","STARTED","RUNNING","ENDING","ENDED","schedule","id","timing","schedules","__transition","self","tween","tick","duration","ease","init","tweenRemove","tween0","tween1","tweenFunction","tweenValue","transition","_id","interpolate","value1","string00","interpolate0","string1","string0","string10","attrTweenNS","attrInterpolateNS","_value","attrTween","attrInterpolate","delayFunction","delayConstant","durationFunction","durationConstant","Transition","_name","newId","selection_prototype","inherit","id0","id1","on0","on1","sit","every","onFunction","styleTween","styleNull","listener0","styleMaybeRemove","styleInterpolate","textTween","textInterpolate","removeFunction","easeConstant","easeVarying","resolve","cancel","interrupt","defaultTiming","Transform","active","point","applyX","applyY","invert","location","invertX","invertY","rescaleX","domain","range","rescaleY","DecidablesElement","getComputedStyleValue","changedProperties","d3","currentTarget","greys","light75","light50","light25","dark25","dark50","dark75","shadows","elevations","baselineColor","baselineColorString","inverseBaselineColor","inverseBaselineColorString","opacityUmbra","opacityPenumbra","opacityAmbient","opacityBoost","mapUmbra","mapPenumbra","mapAmbient","cssBoxShadow","elevation","inverse","umbraO","penumbraO","ambientO","umbraC","penumbraC","ambientC","umbraM","penumbraM","ambientM","svgFilters","filters","abs","unsafeCSS","DecidablesButton","disabled","customElements","DecidablesSlider","step","changed","target","inputted","ifDefined","DecidablesSpinner","DecidablesSwitch","checked","DecidablesToggle","DecidablesToggleOption","DecidablesConverterArray","item","parseFloat","toFixed","DecidablesConverterSet"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,97]}
|