@ntix/components-scorad 1.0.1 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- (function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports):typeof define==`function`&&define.amd?define([`exports`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.AntixComponentsScorad={}))})(this,function(e){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});var t=new Map,n=e=>e==null?[]:(Array.isArray(e)||(e=[e]),e.map(e=>{if(t.has(e))return t.get(e);let n=new CSSStyleSheet;return n.replaceSync(e),t.set(e,n),n})),r=e=>{let t=e;return t.__metadata=t.__metadata??{attributes:[],watches:[],events:[]},t};(()=>{let e=`__drag_attached`;return{list:(t,n,r)=>{if(t.dataset[e])return;t.dataset[e]=`true`;let i=(e,n)=>e.find(e=>e instanceof HTMLElement&&t.contains(e)&&n(e)),a=(e,n,r=()=>!0)=>!(e instanceof Node)||!t.contains(e)?null:e==null||e instanceof HTMLElement&&r(e)?e:a(n(e),n,r),o=e=>a(e?.nextSibling,e=>e?.nextSibling),s=(e,t)=>n=>n instanceof HTMLElement&&(e??(e=>e.classList.contains(t)))(n),c=()=>Array.from(t.children).filter(u).reduce((e,t)=>e.set(t,t.getBoundingClientRect()),new Map),l=s(r?.gripSelector,`drag-grip`),u=s(r?.itemSelector,`drag-item`),d,f,p,m=0,h,g,_=e=>{let n=e.composedPath();d=i(n,l),d&&(e.preventDefault(),e.stopPropagation(),window.getSelection()?.removeAllRanges(),f=c(),p=i(n,u),m=e.clientY,h=p.dataset.id,p.classList.add(`dragging`),p.style.pointerEvents=`none`,p.style.zIndex=`2`,t.style.touchAction=`none`,t.style.userSelect=`none`,document.addEventListener(`pointermove`,ee),document.addEventListener(`pointerup`,v))},ee=e=>{if(!p||!f)throw Error(`drag item is undefined`);let n=f.get(p),r=null;for(let[t,i]of f.entries()){if(t===p||e.clientY<=i.top||e.clientY>=i.bottom)continue;e.stopPropagation();let a=i.top+(n.bottom-i.top)/2;r=e.clientY>a?o(t):t;break}if(r){g=r instanceof HTMLElement?r.dataset.id:void 0,t.insertBefore(p,r),p.style.transform=``;var i=n.top;f=c(),m+=f.get(p).top-i,d?.focus()}p.style.transform=`translateY(${e.clientY-m}px)`},v=e=>{if(!p)throw Error(`drag item is undefined`);e.stopPropagation(),document.removeEventListener(`pointermove`,ee),document.removeEventListener(`pointerup`,v),p.classList.remove(`dragging`),p.style.transform=``,p.style.pointerEvents=``,p.style.zIndex=``,p=void 0,t.style.touchAction=``,t.style.userSelect=``,h&&g&&(n(h,g),h=void 0,g=void 0)},y=e=>{if(!e.altKey)return;let r=(e,r)=>{let i=document.activeElement;t.insertBefore(e,r),i instanceof HTMLElement&&i.focus(),n(e.dataset.id,r?.dataset.id)};switch(e.key){case`ArrowUp`:{let t=a(e.target,e=>e?.parentElement,u);if(t&&u(t.previousElementSibling)){let e=t.previousElementSibling;r(t,e)}break}case`ArrowDown`:{let t=a(e.target,e=>e?.parentElement,u);if(t&&u(t.nextElementSibling)){let e=t.nextElementSibling?.nextElementSibling;r(t,e)}break}}};return t.addEventListener(`pointerdown`,_),t.addEventListener(`keydown`,y),()=>{t.removeEventListener(`pointerdown`,_),t.removeEventListener(`keydown`,y)}}}})();var i=`
1
+ (function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports):typeof define==`function`&&define.amd?define([`exports`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.AntixComponentsScorad={}))})(this,function(e){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});var t=new Map,n=e=>e==null?[]:(Array.isArray(e)||(e=[e]),e.map(e=>{if(t.has(e))return t.get(e);let n=new CSSStyleSheet;return n.replaceSync(e),t.set(e,n),n})),r=e=>{let t=e;return t.__metadata=t.__metadata??{attributes:[],watches:[],events:[]},t};(()=>{let e=`__drag_attached`;return{list:(t,n,r)=>{if(t.dataset[e])return;t.dataset[e]=`true`;let i=(e,n)=>e.find(e=>e instanceof HTMLElement&&t.contains(e)&&n(e)),a=(e,n,r=()=>!0)=>!(e instanceof Node)||!t.contains(e)?null:e==null||e instanceof HTMLElement&&r(e)?e:a(n(e),n,r),o=e=>a(e?.nextSibling,e=>e?.nextSibling),s=(e,t)=>n=>n instanceof HTMLElement&&(e??(e=>e.classList.contains(t)))(n),c=()=>Array.from(t.children).filter(u).reduce((e,t)=>e.set(t,t.getBoundingClientRect()),new Map),l=s(r?.gripSelector,`drag-grip`),u=s(r?.itemSelector,`drag-item`),d,f,p,m=0,ee,h,te=e=>{let n=e.composedPath();d=i(n,l),d&&(e.preventDefault(),e.stopPropagation(),window.getSelection()?.removeAllRanges(),f=c(),p=i(n,u),m=e.clientY,ee=p.dataset.id,p.classList.add(`dragging`),p.style.pointerEvents=`none`,p.style.zIndex=`2`,t.style.touchAction=`none`,t.style.userSelect=`none`,document.addEventListener(`pointermove`,ne),document.addEventListener(`pointerup`,g))},ne=e=>{if(!p||!f)throw Error(`drag item is undefined`);let n=f.get(p),r=null;for(let[t,i]of f.entries()){if(t===p||e.clientY<=i.top||e.clientY>=i.bottom)continue;e.stopPropagation();let a=i.top+(n.bottom-i.top)/2;r=e.clientY>a?o(t):t;break}if(r){h=r instanceof HTMLElement?r.dataset.id:void 0,t.insertBefore(p,r),p.style.transform=``;var i=n.top;f=c(),m+=f.get(p).top-i,d?.focus()}p.style.transform=`translateY(${e.clientY-m}px)`},g=e=>{if(!p)throw Error(`drag item is undefined`);e.stopPropagation(),document.removeEventListener(`pointermove`,ne),document.removeEventListener(`pointerup`,g),p.classList.remove(`dragging`),p.style.transform=``,p.style.pointerEvents=``,p.style.zIndex=``,p=void 0,t.style.touchAction=``,t.style.userSelect=``,ee&&h&&(n(ee,h),ee=void 0,h=void 0)},_=e=>{if(!e.altKey)return;let r=(e,r)=>{let i=document.activeElement;t.insertBefore(e,r),i instanceof HTMLElement&&i.focus(),n(e.dataset.id,r?.dataset.id)};switch(e.key){case`ArrowUp`:{let t=a(e.target,e=>e?.parentElement,u);if(t&&u(t.previousElementSibling)){let e=t.previousElementSibling;r(t,e)}break}case`ArrowDown`:{let t=a(e.target,e=>e?.parentElement,u);if(t&&u(t.nextElementSibling)){let e=t.nextElementSibling?.nextElementSibling;r(t,e)}break}}};return t.addEventListener(`pointerdown`,te),t.addEventListener(`keydown`,_),()=>{t.removeEventListener(`pointerdown`,te),t.removeEventListener(`keydown`,_)}}}})();var i=`
2
2
  button:not([disabled]),
3
3
  [href],
4
4
  input:not([disabled]),
@@ -6,24 +6,24 @@
6
6
  textarea:not([disabled]),
7
7
  [tabindex]:not([tabindex="-1"]),
8
8
  [contenteditable]:not([contenteditable="false"])
9
- `,a={trace:0,debug:1,log:2,info:3,warn:4,error:5};function o(e,t,n){let r=()=>{},i={provide:r=>o(`${e}.${r}`,t,n)};for(let o of Object.keys(a)){let s=o,c=a[s],l=n[s];t>c?i[s]=r:i[s]=((t,...n)=>l(`[${e}]`,t,...n))}return i}var s=(()=>{let e=(e,t)=>(t??=s.defaultLevel,o(e,t,s.adapter));return e.adapter=console,e.defaultLevel=a.warn,e})(),c=(e,t)=>{if(e===t||Number.isNaN(e)&&Number.isNaN(t))return!0;if(!(typeof e==`object`&&e)||!(typeof t==`object`&&t))return!1;let n=Array.isArray(e);if(n!==Array.isArray(t))return!1;if(n){let n=e,r=t;if(n.length!==r.length)return!1;for(let e=0;e<n.length;e++)if(!c(n[e],r[e]))return!1;return!0}let r=Object.keys(e),i=Object.keys(t);if(r.length!==i.length)return!1;for(let n of r){if(!Object.prototype.hasOwnProperty.call(t,n))return!1;let r=e[n],i=t[n];if(!c(r,i))return!1}return!0},l=(e,t)=>{let n=e;for(;n;){let e=Object.getOwnPropertyDescriptor(n,t);if(e)return e;n=Object.getPrototypeOf(n)}},u=e=>Object.keys(e);function d(e){return e!=null&&typeof e.then==`function`}var f=class{constructor(e){this.value=e}value;orThrow(){return this.value}orNull(){return this.value}},p=class e{constructor(e){this.errors=e}errors;orThrow(){throw Error(e.formatErrors(this.errors))}orNull(){return null}static formatErrors=e=>e.join(`
10
- `)},m={Ok:e=>new f(e),Fail:e=>new p(e)},h=(e,t)=>e.toString().padStart(t,`0`).slice(-t),g=e=>e==null?e:e?.replace(/[A-Z]+(?![a-z])|[A-Z]/g,(e,t)=>(t?`-`:``)+e).toLowerCase();function _(e={}){return function(t,n){let i=e?.name??n,a=e?.read??(e=>e),o=e?.write??(e=>e);if(!o&&!a)throw Error(`@Att() should have read or write options`);var s=r(t.constructor);s.__metadata.attributes=[...s.__metadata.attributes,{propertyName:n,name:g(i),read:a,write:o}]}}var ee={read:e=>e===`true`,write:e=>e===!0?`true`:`false`},v={read:e=>e!=null,write:e=>e===!0?``:void 0},y=s(`@ntix/components-core`,typeof ANTIX_COMPONENTS_CORE_LOG_LEVEL>`u`?a.warn:ANTIX_COMPONENTS_CORE_LOG_LEVEL);function te(e){return typeof e==`object`&&!!e&&`render`in e&&typeof e.render==`function`&&e.render.length===1}function b(e={tag:void 0}){let t=()=>{},r=y.provide(`component-decorator`),i={shadowRoot:`open`,delegatesFocus:!1,...e,css:n(e.css)};return function(n){let a=new Map,o=class extends n{constructor(...e){super(...e);let t=n.__metadata;t&&(t.events.forEach(e=>{r.debug(`event`,e.propertyName,e.name),Object.defineProperty(this,e.propertyName,{value:function(t){let n=new CustomEvent(e.name,{detail:t,...e.init});return this.dispatchEvent(n)},writable:!1,configurable:!1,enumerable:!0})}),t.watches.forEach(e=>{let t=e.methodName;r.debug(`${this.tagName}.${t}()`,{propertyNames:e.propertyNames}),e.propertyNames.forEach(e=>{let n=l(this,e);r.debug(`watch`,e,n);let i=n?.value,a=n?.get?.bind(this)??(()=>i),o=n?.set?.bind(this)??(e=>{i=e});Object.defineProperty(this,e,{get:a,set:function(n){let r=a();r!==n&&(o(n),this[t](n,r,e)===!1&&o(r))},enumerable:!0,configurable:!0})})}),t.attributes.forEach(e=>{let t=l(this,e.propertyName),n=t?.value,i=t?.get?.bind(this)??(()=>n),o=t?.set?.bind(this)??(e=>{n=e});if(e.write){let t=o,n=e.write;o=r=>{r!==i()&&t(r);let a=this.getAttribute(e.name),o=n(r);if(o==null)a!=null&&this.removeAttribute(e.name);else{let t=`${o}`;a!==t&&this.setAttribute(e.name,t)}}}r.debug(`${this.tagName}.${e.propertyName}`,{att:e.name,read:!!e.read,write:!!e.write}),Object.defineProperty(this,e.propertyName,{get:i,set:o,enumerable:!0}),e.read&&a.set(e.name,()=>{this.hasAttribute(e.name)||o(i())})}))}__shadowRoot};if(o.__metadata){let e=new Set(o.observedAttributes);o.__metadata.attributes.forEach(t=>{t.read&&e.add(t.name)}),o.observedAttributes=Array.from(e)}let s;o.prototype.resizeCallback&&(s=new ResizeObserver(e=>{o.prototype.resizeCallback?.call(e[0].target)}));let c=o.prototype.attributeChangedCallback??t;o.prototype.attributeChangedCallback=function(e,t,n){if(c(e,t,n),n!==t){var r=o.__metadata?.attributes.find(t=>t.name===e);r?.read&&(this[r.propertyName]=r.read(n))}};let u=o.prototype.connectedCallback??t;o.prototype.connectedCallback=function(){a.forEach(e=>e()),(i.shadowRoot===`open`||i.shadowRoot===`closed`)&&!this.__shadowRoot&&(this.__shadowRoot=this.attachShadow({delegatesFocus:i.delegatesFocus,mode:i.shadowRoot,slotAssignment:`named`}),this.__shadowRoot.adoptedStyleSheets=i.css),u.call(this),s&&s.observe(this)};let f=o.prototype.disconnectedCallback??t;o.prototype.disconnectedCallback=function(){f.call(this),s&&s.unobserve(this)};let p=o.prototype.beforeRender??t,m=o.prototype.render??t,h=o.prototype.afterRender??t;return o.prototype.render=async function(){r.debug(`render`,this.tagName);let e=p.call(this);if(d(e)&&await e,this.__shadowRoot){let e=this.__shadowRoot,t=m.call(this);te(t)?await t.render(e):e.innerHTML=t}h.call(this)},r.debug(`define`,e.tag),window.customElements.define(e.tag,o),o}}function x(e={}){return function(t,n){var i=r(t.constructor);i.__metadata.events=[...i.__metadata.events,{name:e?.name??g(n),init:e,propertyName:n}]}}var S=class extends HTMLElement{addEventListener(e,t,n){return super.addEventListener(e,t,n),()=>{super.removeEventListener(e,t,n)}}removeEventListener(e,t,n){super.removeEventListener(e,t,n)}};function C(...e){return function(t,n){var i=r(t.constructor);i.__metadata.watches=[...i.__metadata.watches,{methodName:n,propertyNames:e}]}}function ne(e){return typeof e==`function`}var w=class extends Array{render=(e,t=``)=>new Promise(n=>{let r=document.createElement(`template`),i={},a=e=>{let t=`_${Object.keys(i).length}`;return i[t]=e,t},o=e=>Array.isArray(e)?e.map(o).join(``):ne(e)?`_r_=${a(e)}`:`${e}`;r.innerHTML=t+o(this),e.replaceChildren(r.content);let s=async e=>{if(e.nodeType===Node.ELEMENT_NODE&&e.hasAttribute(`_r_`)){let t=e.getAttribute(`_r_`);if(t){e.removeAttribute(`_r_`);let n=i[t];for(n.element=e;!e.isConnected;)await new Promise(e=>requestAnimationFrame(()=>e()));n(e)}}await Promise.all([...e.children].map(s))};s(e).then(n)})},{entries:re,setPrototypeOf:ie,isFrozen:ae,getPrototypeOf:oe,getOwnPropertyDescriptor:se}=Object,{freeze:T,seal:E,create:ce}=Object,{apply:le,construct:ue}=typeof Reflect<`u`&&Reflect;T||=function(e){return e},E||=function(e){return e},le||=function(e,t){var n=[...arguments].slice(2);return e.apply(t,n)},ue||=function(e){return new e(...[...arguments].slice(1))};var de=k(Array.prototype.forEach),fe=k(Array.prototype.lastIndexOf),pe=k(Array.prototype.pop),me=k(Array.prototype.push),he=k(Array.prototype.splice),ge=k(String.prototype.toLowerCase),_e=k(String.prototype.toString),ve=k(String.prototype.match),ye=k(String.prototype.replace),be=k(String.prototype.indexOf),xe=k(String.prototype.trim),D=k(Object.prototype.hasOwnProperty),O=k(RegExp.prototype.test),Se=Ce(TypeError);function k(e){return function(t){t instanceof RegExp&&(t.lastIndex=0);var n=[...arguments].slice(1);return le(e,t,n)}}function Ce(e){return function(){return ue(e,[...arguments])}}function A(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ge;ie&&ie(e,null);let r=t.length;for(;r--;){let i=t[r];if(typeof i==`string`){let e=n(i);e!==i&&(ae(t)||(t[r]=e),i=e)}e[i]=!0}return e}function j(e){for(let t=0;t<e.length;t++)D(e,t)||(e[t]=null);return e}function M(e){let t=ce(null);for(let[n,r]of re(e))D(e,n)&&(Array.isArray(r)?t[n]=j(r):r&&typeof r==`object`&&r.constructor===Object?t[n]=M(r):t[n]=r);return t}function we(e,t){for(;e!==null;){let n=se(e,t);if(n){if(n.get)return k(n.get);if(typeof n.value==`function`)return k(n.value)}e=oe(e)}function n(){return null}return n}var Te=T(`a.abbr.acronym.address.area.article.aside.audio.b.bdi.bdo.big.blink.blockquote.body.br.button.canvas.caption.center.cite.code.col.colgroup.content.data.datalist.dd.decorator.del.details.dfn.dialog.dir.div.dl.dt.element.em.fieldset.figcaption.figure.font.footer.form.h1.h2.h3.h4.h5.h6.head.header.hgroup.hr.html.i.img.input.ins.kbd.label.legend.li.main.map.mark.marquee.menu.menuitem.meter.nav.nobr.ol.optgroup.option.output.p.picture.pre.progress.q.rp.rt.ruby.s.samp.search.section.select.shadow.slot.small.source.spacer.span.strike.strong.style.sub.summary.sup.table.tbody.td.template.textarea.tfoot.th.thead.time.tr.track.tt.u.ul.var.video.wbr`.split(`.`)),Ee=T(`svg.a.altglyph.altglyphdef.altglyphitem.animatecolor.animatemotion.animatetransform.circle.clippath.defs.desc.ellipse.enterkeyhint.exportparts.filter.font.g.glyph.glyphref.hkern.image.inputmode.line.lineargradient.marker.mask.metadata.mpath.part.path.pattern.polygon.polyline.radialgradient.rect.stop.style.switch.symbol.text.textpath.title.tref.tspan.view.vkern`.split(`.`)),De=T([`feBlend`,`feColorMatrix`,`feComponentTransfer`,`feComposite`,`feConvolveMatrix`,`feDiffuseLighting`,`feDisplacementMap`,`feDistantLight`,`feDropShadow`,`feFlood`,`feFuncA`,`feFuncB`,`feFuncG`,`feFuncR`,`feGaussianBlur`,`feImage`,`feMerge`,`feMergeNode`,`feMorphology`,`feOffset`,`fePointLight`,`feSpecularLighting`,`feSpotLight`,`feTile`,`feTurbulence`]),Oe=T([`animate`,`color-profile`,`cursor`,`discard`,`font-face`,`font-face-format`,`font-face-name`,`font-face-src`,`font-face-uri`,`foreignobject`,`hatch`,`hatchpath`,`mesh`,`meshgradient`,`meshpatch`,`meshrow`,`missing-glyph`,`script`,`set`,`solidcolor`,`unknown`,`use`]),ke=T(`math.menclose.merror.mfenced.mfrac.mglyph.mi.mlabeledtr.mmultiscripts.mn.mo.mover.mpadded.mphantom.mroot.mrow.ms.mspace.msqrt.mstyle.msub.msup.msubsup.mtable.mtd.mtext.mtr.munder.munderover.mprescripts`.split(`.`)),Ae=T([`maction`,`maligngroup`,`malignmark`,`mlongdiv`,`mscarries`,`mscarry`,`msgroup`,`mstack`,`msline`,`msrow`,`semantics`,`annotation`,`annotation-xml`,`mprescripts`,`none`]),je=T([`#text`]),Me=T(`accept.action.align.alt.autocapitalize.autocomplete.autopictureinpicture.autoplay.background.bgcolor.border.capture.cellpadding.cellspacing.checked.cite.class.clear.color.cols.colspan.controls.controlslist.coords.crossorigin.datetime.decoding.default.dir.disabled.disablepictureinpicture.disableremoteplayback.download.draggable.enctype.enterkeyhint.exportparts.face.for.headers.height.hidden.high.href.hreflang.id.inert.inputmode.integrity.ismap.kind.label.lang.list.loading.loop.low.max.maxlength.media.method.min.minlength.multiple.muted.name.nonce.noshade.novalidate.nowrap.open.optimum.part.pattern.placeholder.playsinline.popover.popovertarget.popovertargetaction.poster.preload.pubdate.radiogroup.readonly.rel.required.rev.reversed.role.rows.rowspan.spellcheck.scope.selected.shape.size.sizes.slot.span.srclang.start.src.srcset.step.style.summary.tabindex.title.translate.type.usemap.valign.value.width.wrap.xmlns.slot`.split(`.`)),Ne=T(`accent-height.accumulate.additive.alignment-baseline.amplitude.ascent.attributename.attributetype.azimuth.basefrequency.baseline-shift.begin.bias.by.class.clip.clippathunits.clip-path.clip-rule.color.color-interpolation.color-interpolation-filters.color-profile.color-rendering.cx.cy.d.dx.dy.diffuseconstant.direction.display.divisor.dur.edgemode.elevation.end.exponent.fill.fill-opacity.fill-rule.filter.filterunits.flood-color.flood-opacity.font-family.font-size.font-size-adjust.font-stretch.font-style.font-variant.font-weight.fx.fy.g1.g2.glyph-name.glyphref.gradientunits.gradienttransform.height.href.id.image-rendering.in.in2.intercept.k.k1.k2.k3.k4.kerning.keypoints.keysplines.keytimes.lang.lengthadjust.letter-spacing.kernelmatrix.kernelunitlength.lighting-color.local.marker-end.marker-mid.marker-start.markerheight.markerunits.markerwidth.maskcontentunits.maskunits.max.mask.mask-type.media.method.mode.min.name.numoctaves.offset.operator.opacity.order.orient.orientation.origin.overflow.paint-order.path.pathlength.patterncontentunits.patterntransform.patternunits.points.preservealpha.preserveaspectratio.primitiveunits.r.rx.ry.radius.refx.refy.repeatcount.repeatdur.restart.result.rotate.scale.seed.shape-rendering.slope.specularconstant.specularexponent.spreadmethod.startoffset.stddeviation.stitchtiles.stop-color.stop-opacity.stroke-dasharray.stroke-dashoffset.stroke-linecap.stroke-linejoin.stroke-miterlimit.stroke-opacity.stroke.stroke-width.style.surfacescale.systemlanguage.tabindex.tablevalues.targetx.targety.transform.transform-origin.text-anchor.text-decoration.text-rendering.textlength.type.u1.u2.unicode.values.viewbox.visibility.version.vert-adv-y.vert-origin-x.vert-origin-y.width.word-spacing.wrap.writing-mode.xchannelselector.ychannelselector.x.x1.x2.xmlns.y.y1.y2.z.zoomandpan`.split(`.`)),Pe=T(`accent.accentunder.align.bevelled.close.columnsalign.columnlines.columnspan.denomalign.depth.dir.display.displaystyle.encoding.fence.frame.height.href.id.largeop.length.linethickness.lspace.lquote.mathbackground.mathcolor.mathsize.mathvariant.maxsize.minsize.movablelimits.notation.numalign.open.rowalign.rowlines.rowspacing.rowspan.rspace.rquote.scriptlevel.scriptminsize.scriptsizemultiplier.selection.separator.separators.stretchy.subscriptshift.supscriptshift.symmetric.voffset.width.xmlns`.split(`.`)),Fe=T([`xlink:href`,`xml:id`,`xlink:title`,`xml:space`,`xmlns:xlink`]),Ie=E(/\{\{[\w\W]*|[\w\W]*\}\}/gm),N=E(/<%[\w\W]*|[\w\W]*%>/gm),Le=E(/\$\{[\w\W]*/gm),P=E(/^data-[\-\w.\u00B7-\uFFFF]+$/),Re=E(/^aria-[\-\w]+$/),ze=E(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Be=E(/^(?:\w+script|data):/i),F=E(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Ve=E(/^html$/i),He=E(/^[a-z][.\w]*(-[.\w]+)+$/i),Ue=Object.freeze({__proto__:null,ARIA_ATTR:Re,ATTR_WHITESPACE:F,CUSTOM_ELEMENT:He,DATA_ATTR:P,DOCTYPE_NAME:Ve,ERB_EXPR:N,IS_ALLOWED_URI:ze,IS_SCRIPT_OR_DATA:Be,MUSTACHE_EXPR:Ie,TMPLIT_EXPR:Le}),We={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},Ge=function(){return typeof window>`u`?null:window},Ke=function(e,t){if(typeof e!=`object`||typeof e.createPolicy!=`function`)return null;let n=null,r=`data-tt-policy-suffix`;t&&t.hasAttribute(r)&&(n=t.getAttribute(r));let i=`dompurify`+(n?`#`+n:``);try{return e.createPolicy(i,{createHTML(e){return e},createScriptURL(e){return e}})}catch{return console.warn(`TrustedTypes policy `+i+` could not be created.`),null}},qe=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function Je(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Ge(),t=e=>Je(e);if(t.version=`3.3.0`,t.removed=[],!e||!e.document||e.document.nodeType!==We.document||!e.Element)return t.isSupported=!1,t;let{document:n}=e,r=n,i=r.currentScript,{DocumentFragment:a,HTMLTemplateElement:o,Node:s,Element:c,NodeFilter:l,NamedNodeMap:u=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:d,DOMParser:f,trustedTypes:p}=e,m=c.prototype,h=we(m,`cloneNode`),g=we(m,`remove`),_=we(m,`nextSibling`),ee=we(m,`childNodes`),v=we(m,`parentNode`);if(typeof o==`function`){let e=n.createElement(`template`);e.content&&e.content.ownerDocument&&(n=e.content.ownerDocument)}let y,te=``,{implementation:b,createNodeIterator:x,createDocumentFragment:S,getElementsByTagName:C}=n,{importNode:ne}=r,w=qe();t.isSupported=typeof re==`function`&&typeof v==`function`&&b&&b.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:ie,ERB_EXPR:ae,TMPLIT_EXPR:oe,DATA_ATTR:se,ARIA_ATTR:E,IS_SCRIPT_OR_DATA:le,ATTR_WHITESPACE:ue,CUSTOM_ELEMENT:k}=Ue,{IS_ALLOWED_URI:Ce}=Ue,j=null,Ie=A({},[...Te,...Ee,...De,...ke,...je]),N=null,Le=A({},[...Me,...Ne,...Pe,...Fe]),P=Object.seal(ce(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),Re=null,Be=null,F=Object.seal(ce(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),He=!0,Ye=!0,Xe=!1,I=!0,L=!1,Ze=!0,R=!1,z=!1,B=!1,V=!1,H=!1,Qe=!1,$e=!0,et=!1,tt=!0,U=!1,nt={},W=null,rt=A({},[`annotation-xml`,`audio`,`colgroup`,`desc`,`foreignobject`,`head`,`iframe`,`math`,`mi`,`mn`,`mo`,`ms`,`mtext`,`noembed`,`noframes`,`noscript`,`plaintext`,`script`,`style`,`svg`,`template`,`thead`,`title`,`video`,`xmp`]),it=null,G=A({},[`audio`,`video`,`img`,`source`,`image`,`track`]),at=null,K=A({},[`alt`,`class`,`for`,`id`,`label`,`name`,`pattern`,`placeholder`,`role`,`summary`,`title`,`value`,`style`,`xmlns`]),ot=`http://www.w3.org/1998/Math/MathML`,st=`http://www.w3.org/2000/svg`,q=`http://www.w3.org/1999/xhtml`,ct=q,lt=!1,J=null,ut=A({},[ot,st,q],_e),Y=A({},[`mi`,`mo`,`mn`,`ms`,`mtext`]),dt=A({},[`annotation-xml`]),ft=A({},[`title`,`style`,`font`,`a`,`script`]),X=null,pt=[`application/xhtml+xml`,`text/html`],Z=null,mt=null,ht=n.createElement(`form`),gt=function(e){return e instanceof RegExp||e instanceof Function},_t=function(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(mt&&mt===e)){if((!e||typeof e!=`object`)&&(e={}),e=M(e),X=pt.indexOf(e.PARSER_MEDIA_TYPE)===-1?`text/html`:e.PARSER_MEDIA_TYPE,Z=X===`application/xhtml+xml`?_e:ge,j=D(e,`ALLOWED_TAGS`)?A({},e.ALLOWED_TAGS,Z):Ie,N=D(e,`ALLOWED_ATTR`)?A({},e.ALLOWED_ATTR,Z):Le,J=D(e,`ALLOWED_NAMESPACES`)?A({},e.ALLOWED_NAMESPACES,_e):ut,at=D(e,`ADD_URI_SAFE_ATTR`)?A(M(K),e.ADD_URI_SAFE_ATTR,Z):K,it=D(e,`ADD_DATA_URI_TAGS`)?A(M(G),e.ADD_DATA_URI_TAGS,Z):G,W=D(e,`FORBID_CONTENTS`)?A({},e.FORBID_CONTENTS,Z):rt,Re=D(e,`FORBID_TAGS`)?A({},e.FORBID_TAGS,Z):M({}),Be=D(e,`FORBID_ATTR`)?A({},e.FORBID_ATTR,Z):M({}),nt=D(e,`USE_PROFILES`)?e.USE_PROFILES:!1,He=e.ALLOW_ARIA_ATTR!==!1,Ye=e.ALLOW_DATA_ATTR!==!1,Xe=e.ALLOW_UNKNOWN_PROTOCOLS||!1,I=e.ALLOW_SELF_CLOSE_IN_ATTR!==!1,L=e.SAFE_FOR_TEMPLATES||!1,Ze=e.SAFE_FOR_XML!==!1,R=e.WHOLE_DOCUMENT||!1,V=e.RETURN_DOM||!1,H=e.RETURN_DOM_FRAGMENT||!1,Qe=e.RETURN_TRUSTED_TYPE||!1,B=e.FORCE_BODY||!1,$e=e.SANITIZE_DOM!==!1,et=e.SANITIZE_NAMED_PROPS||!1,tt=e.KEEP_CONTENT!==!1,U=e.IN_PLACE||!1,Ce=e.ALLOWED_URI_REGEXP||ze,ct=e.NAMESPACE||q,Y=e.MATHML_TEXT_INTEGRATION_POINTS||Y,dt=e.HTML_INTEGRATION_POINTS||dt,P=e.CUSTOM_ELEMENT_HANDLING||{},e.CUSTOM_ELEMENT_HANDLING&&gt(e.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(P.tagNameCheck=e.CUSTOM_ELEMENT_HANDLING.tagNameCheck),e.CUSTOM_ELEMENT_HANDLING&&gt(e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(P.attributeNameCheck=e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),e.CUSTOM_ELEMENT_HANDLING&&typeof e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements==`boolean`&&(P.allowCustomizedBuiltInElements=e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),L&&(Ye=!1),H&&(V=!0),nt&&(j=A({},je),N=[],nt.html===!0&&(A(j,Te),A(N,Me)),nt.svg===!0&&(A(j,Ee),A(N,Ne),A(N,Fe)),nt.svgFilters===!0&&(A(j,De),A(N,Ne),A(N,Fe)),nt.mathMl===!0&&(A(j,ke),A(N,Pe),A(N,Fe))),e.ADD_TAGS&&(typeof e.ADD_TAGS==`function`?F.tagCheck=e.ADD_TAGS:(j===Ie&&(j=M(j)),A(j,e.ADD_TAGS,Z))),e.ADD_ATTR&&(typeof e.ADD_ATTR==`function`?F.attributeCheck=e.ADD_ATTR:(N===Le&&(N=M(N)),A(N,e.ADD_ATTR,Z))),e.ADD_URI_SAFE_ATTR&&A(at,e.ADD_URI_SAFE_ATTR,Z),e.FORBID_CONTENTS&&(W===rt&&(W=M(W)),A(W,e.FORBID_CONTENTS,Z)),tt&&(j[`#text`]=!0),R&&A(j,[`html`,`head`,`body`]),j.table&&(A(j,[`tbody`]),delete Re.tbody),e.TRUSTED_TYPES_POLICY){if(typeof e.TRUSTED_TYPES_POLICY.createHTML!=`function`)throw Se(`TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.`);if(typeof e.TRUSTED_TYPES_POLICY.createScriptURL!=`function`)throw Se(`TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.`);y=e.TRUSTED_TYPES_POLICY,te=y.createHTML(``)}else y===void 0&&(y=Ke(p,i)),y!==null&&typeof te==`string`&&(te=y.createHTML(``));T&&T(e),mt=e}},vt=A({},[...Ee,...De,...Oe]),yt=A({},[...ke,...Ae]),bt=function(e){let t=v(e);(!t||!t.tagName)&&(t={namespaceURI:ct,tagName:`template`});let n=ge(e.tagName),r=ge(t.tagName);return J[e.namespaceURI]?e.namespaceURI===st?t.namespaceURI===q?n===`svg`:t.namespaceURI===ot?n===`svg`&&(r===`annotation-xml`||Y[r]):!!vt[n]:e.namespaceURI===ot?t.namespaceURI===q?n===`math`:t.namespaceURI===st?n===`math`&&dt[r]:!!yt[n]:e.namespaceURI===q?t.namespaceURI===st&&!dt[r]||t.namespaceURI===ot&&!Y[r]?!1:!yt[n]&&(ft[n]||!vt[n]):!!(X===`application/xhtml+xml`&&J[e.namespaceURI]):!1},xt=function(e){me(t.removed,{element:e});try{v(e).removeChild(e)}catch{g(e)}},Q=function(e,n){try{me(t.removed,{attribute:n.getAttributeNode(e),from:n})}catch{me(t.removed,{attribute:null,from:n})}if(n.removeAttribute(e),e===`is`)if(V||H)try{xt(n)}catch{}else try{n.setAttribute(e,``)}catch{}},St=function(e){let t=null,r=null;if(B)e=`<remove></remove>`+e;else{let t=ve(e,/^[\r\n\t ]+/);r=t&&t[0]}X===`application/xhtml+xml`&&ct===q&&(e=`<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>`+e+`</body></html>`);let i=y?y.createHTML(e):e;if(ct===q)try{t=new f().parseFromString(i,X)}catch{}if(!t||!t.documentElement){t=b.createDocument(ct,`template`,null);try{t.documentElement.innerHTML=lt?te:i}catch{}}let a=t.body||t.documentElement;return e&&r&&a.insertBefore(n.createTextNode(r),a.childNodes[0]||null),ct===q?C.call(t,R?`html`:`body`)[0]:R?t.documentElement:a},Ct=function(e){return x.call(e.ownerDocument||e,e,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT|l.SHOW_PROCESSING_INSTRUCTION|l.SHOW_CDATA_SECTION,null)},wt=function(e){return e instanceof d&&(typeof e.nodeName!=`string`||typeof e.textContent!=`string`||typeof e.removeChild!=`function`||!(e.attributes instanceof u)||typeof e.removeAttribute!=`function`||typeof e.setAttribute!=`function`||typeof e.namespaceURI!=`string`||typeof e.insertBefore!=`function`||typeof e.hasChildNodes!=`function`)},Tt=function(e){return typeof s==`function`&&e instanceof s};function $(e,n,r){de(e,e=>{e.call(t,n,r,mt)})}let Et=function(e){let n=null;if($(w.beforeSanitizeElements,e,null),wt(e))return xt(e),!0;let r=Z(e.nodeName);if($(w.uponSanitizeElement,e,{tagName:r,allowedTags:j}),Ze&&e.hasChildNodes()&&!Tt(e.firstElementChild)&&O(/<[/\w!]/g,e.innerHTML)&&O(/<[/\w!]/g,e.textContent)||e.nodeType===We.progressingInstruction||Ze&&e.nodeType===We.comment&&O(/<[/\w]/g,e.data))return xt(e),!0;if(!(F.tagCheck instanceof Function&&F.tagCheck(r))&&(!j[r]||Re[r])){if(!Re[r]&&Ot(r)&&(P.tagNameCheck instanceof RegExp&&O(P.tagNameCheck,r)||P.tagNameCheck instanceof Function&&P.tagNameCheck(r)))return!1;if(tt&&!W[r]){let t=v(e)||e.parentNode,n=ee(e)||e.childNodes;if(n&&t){let r=n.length;for(let i=r-1;i>=0;--i){let r=h(n[i],!0);r.__removalCount=(e.__removalCount||0)+1,t.insertBefore(r,_(e))}}}return xt(e),!0}return e instanceof c&&!bt(e)||(r===`noscript`||r===`noembed`||r===`noframes`)&&O(/<\/no(script|embed|frames)/i,e.innerHTML)?(xt(e),!0):(L&&e.nodeType===We.text&&(n=e.textContent,de([ie,ae,oe],e=>{n=ye(n,e,` `)}),e.textContent!==n&&(me(t.removed,{element:e.cloneNode()}),e.textContent=n)),$(w.afterSanitizeElements,e,null),!1)},Dt=function(e,t,r){if($e&&(t===`id`||t===`name`)&&(r in n||r in ht))return!1;if(!(Ye&&!Be[t]&&O(se,t))&&!(He&&O(E,t))&&!(F.attributeCheck instanceof Function&&F.attributeCheck(t,e))){if(!N[t]||Be[t]){if(!(Ot(e)&&(P.tagNameCheck instanceof RegExp&&O(P.tagNameCheck,e)||P.tagNameCheck instanceof Function&&P.tagNameCheck(e))&&(P.attributeNameCheck instanceof RegExp&&O(P.attributeNameCheck,t)||P.attributeNameCheck instanceof Function&&P.attributeNameCheck(t,e))||t===`is`&&P.allowCustomizedBuiltInElements&&(P.tagNameCheck instanceof RegExp&&O(P.tagNameCheck,r)||P.tagNameCheck instanceof Function&&P.tagNameCheck(r))))return!1}else if(!at[t]&&!O(Ce,ye(r,ue,``))&&!((t===`src`||t===`xlink:href`||t===`href`)&&e!==`script`&&be(r,`data:`)===0&&it[e])&&!(Xe&&!O(le,ye(r,ue,``)))&&r)return!1}return!0},Ot=function(e){return e!==`annotation-xml`&&ve(e,k)},kt=function(e){$(w.beforeSanitizeAttributes,e,null);let{attributes:n}=e;if(!n||wt(e))return;let r={attrName:``,attrValue:``,keepAttr:!0,allowedAttributes:N,forceKeepAttr:void 0},i=n.length;for(;i--;){let{name:a,namespaceURI:o,value:s}=n[i],c=Z(a),l=s,u=a===`value`?l:xe(l);if(r.attrName=c,r.attrValue=u,r.keepAttr=!0,r.forceKeepAttr=void 0,$(w.uponSanitizeAttribute,e,r),u=r.attrValue,et&&(c===`id`||c===`name`)&&(Q(a,e),u=`user-content-`+u),Ze&&O(/((--!?|])>)|<\/(style|title|textarea)/i,u)){Q(a,e);continue}if(c===`attributename`&&ve(u,`href`)){Q(a,e);continue}if(r.forceKeepAttr)continue;if(!r.keepAttr){Q(a,e);continue}if(!I&&O(/\/>/i,u)){Q(a,e);continue}L&&de([ie,ae,oe],e=>{u=ye(u,e,` `)});let d=Z(e.nodeName);if(!Dt(d,c,u)){Q(a,e);continue}if(y&&typeof p==`object`&&typeof p.getAttributeType==`function`&&!o)switch(p.getAttributeType(d,c)){case`TrustedHTML`:u=y.createHTML(u);break;case`TrustedScriptURL`:u=y.createScriptURL(u);break}if(u!==l)try{o?e.setAttributeNS(o,a,u):e.setAttribute(a,u),wt(e)?xt(e):pe(t.removed)}catch{Q(a,e)}}$(w.afterSanitizeAttributes,e,null)},At=function e(t){let n=null,r=Ct(t);for($(w.beforeSanitizeShadowDOM,t,null);n=r.nextNode();)$(w.uponSanitizeShadowNode,n,null),Et(n),kt(n),n.content instanceof a&&e(n.content);$(w.afterSanitizeShadowDOM,t,null)};return t.sanitize=function(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=null,o=null,c=null,l=null;if(lt=!e,lt&&(e=`<!-->`),typeof e!=`string`&&!Tt(e))if(typeof e.toString==`function`){if(e=e.toString(),typeof e!=`string`)throw Se(`dirty is not a string, aborting`)}else throw Se(`toString is not a function`);if(!t.isSupported)return e;if(z||_t(n),t.removed=[],typeof e==`string`&&(U=!1),U){if(e.nodeName){let t=Z(e.nodeName);if(!j[t]||Re[t])throw Se(`root node is forbidden and cannot be sanitized in-place`)}}else if(e instanceof s)i=St(`<!---->`),o=i.ownerDocument.importNode(e,!0),o.nodeType===We.element&&o.nodeName===`BODY`||o.nodeName===`HTML`?i=o:i.appendChild(o);else{if(!V&&!L&&!R&&e.indexOf(`<`)===-1)return y&&Qe?y.createHTML(e):e;if(i=St(e),!i)return V?null:Qe?te:``}i&&B&&xt(i.firstChild);let u=Ct(U?e:i);for(;c=u.nextNode();)Et(c),kt(c),c.content instanceof a&&At(c.content);if(U)return e;if(V){if(H)for(l=S.call(i.ownerDocument);i.firstChild;)l.appendChild(i.firstChild);else l=i;return(N.shadowroot||N.shadowrootmode)&&(l=ne.call(r,l,!0)),l}let d=R?i.outerHTML:i.innerHTML;return R&&j[`!doctype`]&&i.ownerDocument&&i.ownerDocument.doctype&&i.ownerDocument.doctype.name&&O(Ve,i.ownerDocument.doctype.name)&&(d=`<!DOCTYPE `+i.ownerDocument.doctype.name+`>
11
- `+d),L&&de([ie,ae,oe],e=>{d=ye(d,e,` `)}),y&&Qe?y.createHTML(d):d},t.setConfig=function(){_t(arguments.length>0&&arguments[0]!==void 0?arguments[0]:{}),z=!0},t.clearConfig=function(){mt=null,z=!1},t.isValidAttribute=function(e,t,n){return mt||_t({}),Dt(Z(e),Z(t),n)},t.addHook=function(e,t){typeof t==`function`&&me(w[e],t)},t.removeHook=function(e,t){if(t!==void 0){let n=fe(w[e],t);return n===-1?void 0:he(w[e],n,1)[0]}return pe(w[e])},t.removeHooks=function(e){w[e]=[]},t.removeAllHooks=function(){w=qe()},t}var Ye=Je(),Xe={sanitize:e=>Ye.sanitize(e)},I=(e,...t)=>new w(e.reduce((e,n,r)=>{let i=t[r]??``;return typeof i==`string`?[...e,n,Xe.sanitize(i)]:i===!1?[...e,n]:Array.isArray(i)?[...e,n,...i]:[...e,n,i]},[]));function L(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}var Ze=`:host{--host-display:flex;--host-heading-border:var(--scorad-heading-border,solid 1px var(--host-color));--host-score-color:var(--scorad-score-color,var(--host-color));--host-score-background:var(--scorad-score-background,var(--host-background-color));--host-score-border:var(--scorad-score-border,solid 2px var(--host-color));gap:var(--host-spacing-unit);flex-wrap:wrap;width:fit-content}scorad-weightings{margin-bottom:var(--host-spacing-unit);align-self:center}section{flex-direction:column;flex:auto;display:flex}h3{border:var(--host-heading-border);width:1.5em;height:1.5em;padding:var(--host-padding-unit);margin:var(--host-spacing-unit);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}scorad-label{flex:100%;font-size:1.2rem}scorad-label>span{padding:var(--host-padding-unit);outline:var(--host-score-border);border-radius:var(--host-border-radius);color:var(--host-score-color);background:var(--host-score-background)}`,R=`*{box-sizing:border-box}:host{--host-color:var(--color,#444);--host-background-color:var(--background-color,#eee);--host-primary-color:var(--primary-color,var(--host-color));--host-spacing-unit:var(--scorad-spacing-unit,.25rem);--host-padding-unit:var(--scorad-padding-unit,.333rem);--host-border-radius:var(--scorad-border-radius,3px);--host-border-radius-outer:var(--scorad-border-radius-outer,calc(var(--host-border-radius) + var(--host-padding-unit)));display:var(--host-display,inline-flex)}`;let z={headNeck:-1,anteriorTrunk:-1,posteriorTrunk:-1,upperLimbs:-1,lowerLimbs:-1,genitals:-1},B={erythema:-1,oedemaPapulation:-1,oozingCrusting:-1,excoriations:-1,lichenification:-1,xerosis:-1},V={pruritus:-1,sleeplessness:-1},H={child:!1,extent:z,intensity:B,subjective:V},Qe={headNeck:.09,anteriorTrunk:.18,posteriorTrunk:.18,upperLimbs:.18,lowerLimbs:.36,genitals:.01},$e={headNeck:.18,anteriorTrunk:.18,posteriorTrunk:.18,upperLimbs:.18,lowerLimbs:.28,genitals:0};var et=`:host{--host-display:inline-flex;--host-font-size:1rem;flex-wrap:wrap;justify-content:center;align-items:center;position:relative}label{padding:var(--host-padding-unit)}svg{width:140px;padding:var(--host-spacing-unit)0;fill:#0000;stroke:var(--host-color);stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;flex:auto;overflow:visible}path,line{vector-effect:non-scaling-stroke}path{opacity:.333}text,line{opacity:.667}g{outline:none}g[tabindex] path{opacity:1;fill:hsla(var(--scorad-h,0),var(--extent,"0%"),50%,var(--opacity,0))}:is(:not(:has(:active)) g[tabindex]:hover path,:not(:has(:active)) g[tabindex]:hover line){stroke-width:2px;stroke:var(--host-primary-color);stroke-dasharray:2 3.5;opacity:1}g[tabindex]:focus path,g[tabindex]:active path,g[tabindex].selected path,g[tabindex]:focus line,g[tabindex]:active line,g[tabindex].selected line{stroke-width:2px;stroke:var(--host-primary-color);opacity:1;stroke-dasharray:none!important}g[tabindex] text{fill:var(--host-color);stroke:none;font-size:var(--host-font-size);text-anchor:end}:is(:not(:has(:active)) g[tabindex]:hover text,g[tabindex]:focus text,g[tabindex]:active text,g[tabindex].selected text){fill:var(--host-primary-color);opacity:1}`,tt=`scorad-extent`,U=class extends S{connectedCallback(){this.render()}child=!1;value=z;score;afterRender(){if(!this.value){this.value=z;return}if(this.shadowRoot)for(let e of u(z)){let t=(this.value??{})[e],n=this.shadowRoot.querySelector(`.${g(e)}`);if(!n)return;n.style.setProperty(`--extent`,`${t}%`),n.style.setProperty(`--opacity`,`${(t??0)/100}`);let r=n.querySelector(`text`);if(!r)return;r.textContent=t>=0?`${t}%`:`--`}}resizeCallback(){if(!this.shadowRoot)return;let e=this.shadowRoot.querySelector(`svg`);if(!e)return;let t=Math.round(18e3/e.clientWidth)/100;this.style.setProperty(`--host-font-size`,`${t}rem`)}render(){let e=e=>{let t=t=>{let n=Math.round(Math.min(100,Math.max(0,t)));this.value={...this.value,[e]:n},this.valueInput(this.value)};return n=>{if(!n)return;`ontouchstart`in window&&n.addEventListener(`touchstart`,e=>{e.preventDefault()},{passive:!1}),n.style.touchAction=`none`,n.addEventListener(`pointerdown`,r=>{r.preventDefault(),r.stopPropagation(),n.focus();let i=this.value[e],a=r.clientY,o=e=>{e.preventDefault();let n=a-e.clientY;t(Math.round((i+n)/5)*5)},s=()=>{document.removeEventListener(`pointermove`,o),document.removeEventListener(`pointerup`,s),document.removeEventListener(`pointercancel`,s)};document.addEventListener(`pointermove`,o),document.addEventListener(`pointerup`,s),document.addEventListener(`pointercancel`,s)});let r,i;n.addEventListener(`focus`,()=>{i=`000`,r=this.value[e]}),n.addEventListener(`keydown`,n=>{let a=this.value[e],o=n.shiftKey?5:1;switch(n.key){case`0`:case`1`:case`2`:case`3`:case`4`:case`5`:case`6`:case`7`:case`8`:case`9`:t(Number.parseInt(i.substring(1)+n.key)),i=h(this.value[e],3);break;case`ArrowLeft`:case`ArrowDown`:n.preventDefault(),t(a-o);break;case`ArrowUp`:case`ArrowRight`:n.preventDefault(),t(a+o);break;case`Escape`:n.preventDefault(),t(r);break}})}},t=e=>t=>{t&&(t.textContent=`${this.value[e]}%`)};return I`
12
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 164 240">
9
+ `,a={trace:0,debug:1,log:2,info:3,warn:4,error:5};function o(e,t,n){let r=()=>{},i={provide:r=>o(`${e}.${r}`,t,n)};for(let o of Object.keys(a)){let s=o,c=a[s],l=n[s];t>c?i[s]=r:i[s]=((t,...n)=>l(`[${e}]`,t,...n))}return i}var s=(()=>{let e=(e,t)=>(t??=s.defaultLevel,o(e,t,s.adapter));return e.adapter=console,e.defaultLevel=a.warn,e})(),c=(e,t)=>{if(e===t||Number.isNaN(e)&&Number.isNaN(t))return!0;if(!(typeof e==`object`&&e)||!(typeof t==`object`&&t))return!1;let n=Array.isArray(e);if(n!==Array.isArray(t))return!1;if(n){let n=e,r=t;if(n.length!==r.length)return!1;for(let e=0;e<n.length;e++)if(!c(n[e],r[e]))return!1;return!0}let r=Object.keys(e),i=Object.keys(t);if(r.length!==i.length)return!1;for(let n of r){if(!Object.prototype.hasOwnProperty.call(t,n))return!1;let r=e[n],i=t[n];if(!c(r,i))return!1}return!0},l=(e,t)=>{let n=e;for(;n;){let e=Object.getOwnPropertyDescriptor(n,t);if(e)return e;n=Object.getPrototypeOf(n)}};function u(e){return e.split(/\.|\[|\]\.?/).filter(e=>e!==``).map(e=>{let t=Number.parseInt(e);return isNaN(t)?e:t})}function d(e,t){let n=u(t);for(let t=0;t<n.length;t++){if(e==null)return;let r=n[t];e=e[r]}return e}var f=e=>Object.keys(e);function p(e,t,n){let r=t.match(/[^.\[\]]+/g);if(!r)return n;let i={...e},a=i;for(let e=0;e<r.length-1;e++){let t=r[e],n=r[e+1],i=!isNaN(Number(n));t in a?Array.isArray(a[t])?a[t]=[...a[t]]:a[t]={...a[t]}:a[t]=i?[]:{},a=a[t]}let o=r[r.length-1];return a[o]=n,i}function m(e){return e!=null&&typeof e.then==`function`}var ee=class{constructor(e){this.value=e}value;orThrow(){return this.value}orNull(){return this.value}errors=[]},h=class e{constructor(e){this.errors=e}errors;orThrow(){throw Error(e.formatErrors(this.errors))}orNull(){return null}static formatErrors=e=>e.join(`
10
+ `)},te={Ok:e=>new ee(e),Fail:e=>new h(e)},ne=(e,t)=>e.toString().padStart(t,`0`).slice(-t),g=e=>e==null?e:e?.replace(/[A-Z]+(?![a-z])|[A-Z]/g,(e,t)=>(t?`-`:``)+e).toLowerCase();function _(e={}){return function(t,n){let i=e?.name??n,a=e?.read??(e=>e),o=e?.write??(e=>e);if(!o&&!a)throw Error(`@Att() should have read or write options`);var s=r(t.constructor);s.__metadata.attributes=[...s.__metadata.attributes,{propertyName:n,name:g(i),read:a,write:o}]}}var v={read:e=>e===`true`,write:e=>e===!0?`true`:`false`},re={read:e=>e!=null,write:e=>e===!0?``:void 0},ie=s(`@ntix/components-core`,typeof ANTIX_COMPONENTS_CORE_LOG_LEVEL>`u`?a.warn:ANTIX_COMPONENTS_CORE_LOG_LEVEL);function ae(e){return typeof e==`object`&&!!e&&`render`in e&&typeof e.render==`function`&&e.render.length===1}function y(e={tag:void 0}){let t=()=>{},r=ie.provide(`component-decorator`),i={shadowRoot:`open`,delegatesFocus:!1,...e,css:n(e.css)};return function(n){let a=new Map,o=class extends n{constructor(...e){super(...e);let t=n.__metadata;t&&(t.events.forEach(e=>{r.debug(`event`,e.propertyName,e.name),Object.defineProperty(this,e.propertyName,{value:function(t){let n=new CustomEvent(e.name,{detail:t,...e.init});return this.dispatchEvent(n)},writable:!1,configurable:!1,enumerable:!0})}),t.watches.forEach(e=>{let t=e.methodName;r.debug(`${this.tagName}.${t}()`,{propertyNames:e.propertyNames}),e.propertyNames.forEach(e=>{let n=l(this,e);r.debug(`watch`,e,n);let i=n?.value,a=n?.get?.bind(this)??(()=>i),o=n?.set?.bind(this)??(e=>{i=e});Object.defineProperty(this,e,{get:a,set:function(n){let r=a();r!==n&&(o(n),this[t](n,r,e)===!1&&o(r))},enumerable:!0,configurable:!0})})}),t.attributes.forEach(e=>{let t=l(this,e.propertyName),n=t?.value,i=t?.get?.bind(this)??(()=>n),o=t?.set?.bind(this)??(e=>{n=e});if(e.write){let t=o,n=e.write;o=r=>{r!==i()&&t(r);let a=this.getAttribute(e.name),o=n(r);if(o==null)a!=null&&this.removeAttribute(e.name);else{let t=`${o}`;a!==t&&this.setAttribute(e.name,t)}}}r.debug(`${this.tagName}.${e.propertyName}`,{att:e.name,read:!!e.read,write:!!e.write}),Object.defineProperty(this,e.propertyName,{get:i,set:o,enumerable:!0}),e.read&&a.set(e.name,()=>{this.hasAttribute(e.name)||o(i())})}))}__shadowRoot};if(o.__metadata){let e=new Set(o.observedAttributes);o.__metadata.attributes.forEach(t=>{t.read&&e.add(t.name)}),o.observedAttributes=Array.from(e)}let s;o.prototype.resizeCallback&&(s=new ResizeObserver(e=>{o.prototype.resizeCallback?.call(e[0].target)}));let c=o.prototype.attributeChangedCallback??t;o.prototype.attributeChangedCallback=function(e,t,n){if(c(e,t,n),n!==t){var r=o.__metadata?.attributes.find(t=>t.name===e);r?.read&&(this[r.propertyName]=r.read(n))}};let u=o.prototype.connectedCallback??t;o.prototype.connectedCallback=function(){a.forEach(e=>e()),(i.shadowRoot===`open`||i.shadowRoot===`closed`)&&!this.__shadowRoot&&(this.__shadowRoot=this.attachShadow({delegatesFocus:i.delegatesFocus,mode:i.shadowRoot,slotAssignment:`named`}),this.__shadowRoot.adoptedStyleSheets=i.css),u.call(this),s&&s.observe(this)};let d=o.prototype.disconnectedCallback??t;o.prototype.disconnectedCallback=function(){d.call(this),s&&s.unobserve(this)};let f=o.prototype.beforeRender??t,p=o.prototype.render??t,ee=o.prototype.afterRender??t;return o.prototype.render=async function(){r.debug(`render`,this.tagName);let e=f.call(this);if(m(e)&&await e,this.__shadowRoot){let e=this.__shadowRoot,t=p.call(this);ae(t)?await t.render(e):e.innerHTML=t}ee.call(this)},r.debug(`define`,e.tag),window.customElements.define(e.tag,o),o}}function b(e={}){return function(t,n){var i=r(t.constructor);i.__metadata.events=[...i.__metadata.events,{name:e?.name??g(n),init:e,propertyName:n}]}}var x=class extends HTMLElement{addEventListener(e,t,n){return super.addEventListener(e,t,n),()=>{super.removeEventListener(e,t,n)}}removeEventListener(e,t,n){super.removeEventListener(e,t,n)}};function S(...e){return function(t,n){var i=r(t.constructor);i.__metadata.watches=[...i.__metadata.watches,{methodName:n,propertyNames:e}]}}function oe(e){return typeof e==`function`}var se=class extends Array{render=(e,t=``)=>new Promise(n=>{let r=document.createElement(`template`),i={},a=e=>{let t=`_${Object.keys(i).length}`;return i[t]=e,t},o=e=>Array.isArray(e)?e.map(o).join(``):oe(e)?`_r_=${a(e)}`:`${e}`;r.innerHTML=t+o(this),e.replaceChildren(r.content);let s=async e=>{if(e.nodeType===Node.ELEMENT_NODE&&e.hasAttribute(`_r_`)){let t=e.getAttribute(`_r_`);if(t){e.removeAttribute(`_r_`);let n=i[t];for(n.element=e;!e.isConnected;)await new Promise(e=>requestAnimationFrame(()=>e()));n(e)}}await Promise.all([...e.children].map(s))};s(e).then(n)})},{entries:ce,setPrototypeOf:le,isFrozen:ue,getPrototypeOf:de,getOwnPropertyDescriptor:fe}=Object,{freeze:C,seal:w,create:pe}=Object,{apply:me,construct:T}=typeof Reflect<`u`&&Reflect;C||=function(e){return e},w||=function(e){return e},me||=function(e,t){var n=[...arguments].slice(2);return e.apply(t,n)},T||=function(e){return new e(...[...arguments].slice(1))};var he=O(Array.prototype.forEach),ge=O(Array.prototype.lastIndexOf),_e=O(Array.prototype.pop),ve=O(Array.prototype.push),ye=O(Array.prototype.splice),be=O(String.prototype.toLowerCase),xe=O(String.prototype.toString),Se=O(String.prototype.match),Ce=O(String.prototype.replace),we=O(String.prototype.indexOf),Te=O(String.prototype.trim),E=O(Object.prototype.hasOwnProperty),D=O(RegExp.prototype.test),Ee=k(TypeError);function O(e){return function(t){t instanceof RegExp&&(t.lastIndex=0);var n=[...arguments].slice(1);return me(e,t,n)}}function k(e){return function(){return T(e,[...arguments])}}function A(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:be;le&&le(e,null);let r=t.length;for(;r--;){let i=t[r];if(typeof i==`string`){let e=n(i);e!==i&&(ue(t)||(t[r]=e),i=e)}e[i]=!0}return e}function De(e){for(let t=0;t<e.length;t++)E(e,t)||(e[t]=null);return e}function j(e){let t=pe(null);for(let[n,r]of ce(e))E(e,n)&&(Array.isArray(r)?t[n]=De(r):r&&typeof r==`object`&&r.constructor===Object?t[n]=j(r):t[n]=r);return t}function Oe(e,t){for(;e!==null;){let n=fe(e,t);if(n){if(n.get)return O(n.get);if(typeof n.value==`function`)return O(n.value)}e=de(e)}function n(){return null}return n}var ke=C(`a.abbr.acronym.address.area.article.aside.audio.b.bdi.bdo.big.blink.blockquote.body.br.button.canvas.caption.center.cite.code.col.colgroup.content.data.datalist.dd.decorator.del.details.dfn.dialog.dir.div.dl.dt.element.em.fieldset.figcaption.figure.font.footer.form.h1.h2.h3.h4.h5.h6.head.header.hgroup.hr.html.i.img.input.ins.kbd.label.legend.li.main.map.mark.marquee.menu.menuitem.meter.nav.nobr.ol.optgroup.option.output.p.picture.pre.progress.q.rp.rt.ruby.s.samp.search.section.select.shadow.slot.small.source.spacer.span.strike.strong.style.sub.summary.sup.table.tbody.td.template.textarea.tfoot.th.thead.time.tr.track.tt.u.ul.var.video.wbr`.split(`.`)),Ae=C(`svg.a.altglyph.altglyphdef.altglyphitem.animatecolor.animatemotion.animatetransform.circle.clippath.defs.desc.ellipse.enterkeyhint.exportparts.filter.font.g.glyph.glyphref.hkern.image.inputmode.line.lineargradient.marker.mask.metadata.mpath.part.path.pattern.polygon.polyline.radialgradient.rect.stop.style.switch.symbol.text.textpath.title.tref.tspan.view.vkern`.split(`.`)),je=C([`feBlend`,`feColorMatrix`,`feComponentTransfer`,`feComposite`,`feConvolveMatrix`,`feDiffuseLighting`,`feDisplacementMap`,`feDistantLight`,`feDropShadow`,`feFlood`,`feFuncA`,`feFuncB`,`feFuncG`,`feFuncR`,`feGaussianBlur`,`feImage`,`feMerge`,`feMergeNode`,`feMorphology`,`feOffset`,`fePointLight`,`feSpecularLighting`,`feSpotLight`,`feTile`,`feTurbulence`]),Me=C([`animate`,`color-profile`,`cursor`,`discard`,`font-face`,`font-face-format`,`font-face-name`,`font-face-src`,`font-face-uri`,`foreignobject`,`hatch`,`hatchpath`,`mesh`,`meshgradient`,`meshpatch`,`meshrow`,`missing-glyph`,`script`,`set`,`solidcolor`,`unknown`,`use`]),Ne=C(`math.menclose.merror.mfenced.mfrac.mglyph.mi.mlabeledtr.mmultiscripts.mn.mo.mover.mpadded.mphantom.mroot.mrow.ms.mspace.msqrt.mstyle.msub.msup.msubsup.mtable.mtd.mtext.mtr.munder.munderover.mprescripts`.split(`.`)),Pe=C([`maction`,`maligngroup`,`malignmark`,`mlongdiv`,`mscarries`,`mscarry`,`msgroup`,`mstack`,`msline`,`msrow`,`semantics`,`annotation`,`annotation-xml`,`mprescripts`,`none`]),Fe=C([`#text`]),Ie=C(`accept.action.align.alt.autocapitalize.autocomplete.autopictureinpicture.autoplay.background.bgcolor.border.capture.cellpadding.cellspacing.checked.cite.class.clear.color.cols.colspan.controls.controlslist.coords.crossorigin.datetime.decoding.default.dir.disabled.disablepictureinpicture.disableremoteplayback.download.draggable.enctype.enterkeyhint.exportparts.face.for.headers.height.hidden.high.href.hreflang.id.inert.inputmode.integrity.ismap.kind.label.lang.list.loading.loop.low.max.maxlength.media.method.min.minlength.multiple.muted.name.nonce.noshade.novalidate.nowrap.open.optimum.part.pattern.placeholder.playsinline.popover.popovertarget.popovertargetaction.poster.preload.pubdate.radiogroup.readonly.rel.required.rev.reversed.role.rows.rowspan.spellcheck.scope.selected.shape.size.sizes.slot.span.srclang.start.src.srcset.step.style.summary.tabindex.title.translate.type.usemap.valign.value.width.wrap.xmlns.slot`.split(`.`)),Le=C(`accent-height.accumulate.additive.alignment-baseline.amplitude.ascent.attributename.attributetype.azimuth.basefrequency.baseline-shift.begin.bias.by.class.clip.clippathunits.clip-path.clip-rule.color.color-interpolation.color-interpolation-filters.color-profile.color-rendering.cx.cy.d.dx.dy.diffuseconstant.direction.display.divisor.dur.edgemode.elevation.end.exponent.fill.fill-opacity.fill-rule.filter.filterunits.flood-color.flood-opacity.font-family.font-size.font-size-adjust.font-stretch.font-style.font-variant.font-weight.fx.fy.g1.g2.glyph-name.glyphref.gradientunits.gradienttransform.height.href.id.image-rendering.in.in2.intercept.k.k1.k2.k3.k4.kerning.keypoints.keysplines.keytimes.lang.lengthadjust.letter-spacing.kernelmatrix.kernelunitlength.lighting-color.local.marker-end.marker-mid.marker-start.markerheight.markerunits.markerwidth.maskcontentunits.maskunits.max.mask.mask-type.media.method.mode.min.name.numoctaves.offset.operator.opacity.order.orient.orientation.origin.overflow.paint-order.path.pathlength.patterncontentunits.patterntransform.patternunits.points.preservealpha.preserveaspectratio.primitiveunits.r.rx.ry.radius.refx.refy.repeatcount.repeatdur.restart.result.rotate.scale.seed.shape-rendering.slope.specularconstant.specularexponent.spreadmethod.startoffset.stddeviation.stitchtiles.stop-color.stop-opacity.stroke-dasharray.stroke-dashoffset.stroke-linecap.stroke-linejoin.stroke-miterlimit.stroke-opacity.stroke.stroke-width.style.surfacescale.systemlanguage.tabindex.tablevalues.targetx.targety.transform.transform-origin.text-anchor.text-decoration.text-rendering.textlength.type.u1.u2.unicode.values.viewbox.visibility.version.vert-adv-y.vert-origin-x.vert-origin-y.width.word-spacing.wrap.writing-mode.xchannelselector.ychannelselector.x.x1.x2.xmlns.y.y1.y2.z.zoomandpan`.split(`.`)),Re=C(`accent.accentunder.align.bevelled.close.columnsalign.columnlines.columnspan.denomalign.depth.dir.display.displaystyle.encoding.fence.frame.height.href.id.largeop.length.linethickness.lspace.lquote.mathbackground.mathcolor.mathsize.mathvariant.maxsize.minsize.movablelimits.notation.numalign.open.rowalign.rowlines.rowspacing.rowspan.rspace.rquote.scriptlevel.scriptminsize.scriptsizemultiplier.selection.separator.separators.stretchy.subscriptshift.supscriptshift.symmetric.voffset.width.xmlns`.split(`.`)),ze=C([`xlink:href`,`xml:id`,`xlink:title`,`xml:space`,`xmlns:xlink`]),M=w(/\{\{[\w\W]*|[\w\W]*\}\}/gm),Be=w(/<%[\w\W]*|[\w\W]*%>/gm),Ve=w(/\$\{[\w\W]*/gm),N=w(/^data-[\-\w.\u00B7-\uFFFF]+$/),He=w(/^aria-[\-\w]+$/),Ue=w(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),We=w(/^(?:\w+script|data):/i),Ge=w(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Ke=w(/^html$/i),qe=w(/^[a-z][.\w]*(-[.\w]+)+$/i),Je=Object.freeze({__proto__:null,ARIA_ATTR:He,ATTR_WHITESPACE:Ge,CUSTOM_ELEMENT:qe,DATA_ATTR:N,DOCTYPE_NAME:Ke,ERB_EXPR:Be,IS_ALLOWED_URI:Ue,IS_SCRIPT_OR_DATA:We,MUSTACHE_EXPR:M,TMPLIT_EXPR:Ve}),Ye={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},Xe=function(){return typeof window>`u`?null:window},Ze=function(e,t){if(typeof e!=`object`||typeof e.createPolicy!=`function`)return null;let n=null,r=`data-tt-policy-suffix`;t&&t.hasAttribute(r)&&(n=t.getAttribute(r));let i=`dompurify`+(n?`#`+n:``);try{return e.createPolicy(i,{createHTML(e){return e},createScriptURL(e){return e}})}catch{return console.warn(`TrustedTypes policy `+i+` could not be created.`),null}},Qe=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function $e(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Xe(),t=e=>$e(e);if(t.version=`3.3.0`,t.removed=[],!e||!e.document||e.document.nodeType!==Ye.document||!e.Element)return t.isSupported=!1,t;let{document:n}=e,r=n,i=r.currentScript,{DocumentFragment:a,HTMLTemplateElement:o,Node:s,Element:c,NodeFilter:l,NamedNodeMap:u=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:d,DOMParser:f,trustedTypes:p}=e,m=c.prototype,ee=Oe(m,`cloneNode`),h=Oe(m,`remove`),te=Oe(m,`nextSibling`),ne=Oe(m,`childNodes`),g=Oe(m,`parentNode`);if(typeof o==`function`){let e=n.createElement(`template`);e.content&&e.content.ownerDocument&&(n=e.content.ownerDocument)}let _,v=``,{implementation:re,createNodeIterator:ie,createDocumentFragment:ae,getElementsByTagName:y}=n,{importNode:b}=r,x=Qe();t.isSupported=typeof ce==`function`&&typeof g==`function`&&re&&re.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:S,ERB_EXPR:oe,TMPLIT_EXPR:se,DATA_ATTR:le,ARIA_ATTR:ue,IS_SCRIPT_OR_DATA:de,ATTR_WHITESPACE:fe,CUSTOM_ELEMENT:w}=Je,{IS_ALLOWED_URI:me}=Je,T=null,O=A({},[...ke,...Ae,...je,...Ne,...Fe]),k=null,De=A({},[...Ie,...Le,...Re,...ze]),M=Object.seal(pe(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),Be=null,Ve=null,N=Object.seal(pe(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),He=!0,We=!0,Ge=!1,qe=!0,P=!1,et=!0,F=!1,I=!1,tt=!1,L=!1,R=!1,z=!1,B=!0,nt=!1,rt=!0,V=!1,H={},U=null,W=A({},[`annotation-xml`,`audio`,`colgroup`,`desc`,`foreignobject`,`head`,`iframe`,`math`,`mi`,`mn`,`mo`,`ms`,`mtext`,`noembed`,`noframes`,`noscript`,`plaintext`,`script`,`style`,`svg`,`template`,`thead`,`title`,`video`,`xmp`]),it=null,at=A({},[`audio`,`video`,`img`,`source`,`image`,`track`]),G=null,ot=A({},[`alt`,`class`,`for`,`id`,`label`,`name`,`pattern`,`placeholder`,`role`,`summary`,`title`,`value`,`style`,`xmlns`]),st=`http://www.w3.org/1998/Math/MathML`,ct=`http://www.w3.org/2000/svg`,K=`http://www.w3.org/1999/xhtml`,lt=K,q=!1,ut=null,dt=A({},[st,ct,K],xe),J=A({},[`mi`,`mo`,`mn`,`ms`,`mtext`]),ft=A({},[`annotation-xml`]),pt=A({},[`title`,`style`,`font`,`a`,`script`]),Y=null,mt=[`application/xhtml+xml`,`text/html`],X=null,ht=null,gt=n.createElement(`form`),_t=function(e){return e instanceof RegExp||e instanceof Function},Z=function(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(ht&&ht===e)){if((!e||typeof e!=`object`)&&(e={}),e=j(e),Y=mt.indexOf(e.PARSER_MEDIA_TYPE)===-1?`text/html`:e.PARSER_MEDIA_TYPE,X=Y===`application/xhtml+xml`?xe:be,T=E(e,`ALLOWED_TAGS`)?A({},e.ALLOWED_TAGS,X):O,k=E(e,`ALLOWED_ATTR`)?A({},e.ALLOWED_ATTR,X):De,ut=E(e,`ALLOWED_NAMESPACES`)?A({},e.ALLOWED_NAMESPACES,xe):dt,G=E(e,`ADD_URI_SAFE_ATTR`)?A(j(ot),e.ADD_URI_SAFE_ATTR,X):ot,it=E(e,`ADD_DATA_URI_TAGS`)?A(j(at),e.ADD_DATA_URI_TAGS,X):at,U=E(e,`FORBID_CONTENTS`)?A({},e.FORBID_CONTENTS,X):W,Be=E(e,`FORBID_TAGS`)?A({},e.FORBID_TAGS,X):j({}),Ve=E(e,`FORBID_ATTR`)?A({},e.FORBID_ATTR,X):j({}),H=E(e,`USE_PROFILES`)?e.USE_PROFILES:!1,He=e.ALLOW_ARIA_ATTR!==!1,We=e.ALLOW_DATA_ATTR!==!1,Ge=e.ALLOW_UNKNOWN_PROTOCOLS||!1,qe=e.ALLOW_SELF_CLOSE_IN_ATTR!==!1,P=e.SAFE_FOR_TEMPLATES||!1,et=e.SAFE_FOR_XML!==!1,F=e.WHOLE_DOCUMENT||!1,L=e.RETURN_DOM||!1,R=e.RETURN_DOM_FRAGMENT||!1,z=e.RETURN_TRUSTED_TYPE||!1,tt=e.FORCE_BODY||!1,B=e.SANITIZE_DOM!==!1,nt=e.SANITIZE_NAMED_PROPS||!1,rt=e.KEEP_CONTENT!==!1,V=e.IN_PLACE||!1,me=e.ALLOWED_URI_REGEXP||Ue,lt=e.NAMESPACE||K,J=e.MATHML_TEXT_INTEGRATION_POINTS||J,ft=e.HTML_INTEGRATION_POINTS||ft,M=e.CUSTOM_ELEMENT_HANDLING||{},e.CUSTOM_ELEMENT_HANDLING&&_t(e.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(M.tagNameCheck=e.CUSTOM_ELEMENT_HANDLING.tagNameCheck),e.CUSTOM_ELEMENT_HANDLING&&_t(e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(M.attributeNameCheck=e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),e.CUSTOM_ELEMENT_HANDLING&&typeof e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements==`boolean`&&(M.allowCustomizedBuiltInElements=e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),P&&(We=!1),R&&(L=!0),H&&(T=A({},Fe),k=[],H.html===!0&&(A(T,ke),A(k,Ie)),H.svg===!0&&(A(T,Ae),A(k,Le),A(k,ze)),H.svgFilters===!0&&(A(T,je),A(k,Le),A(k,ze)),H.mathMl===!0&&(A(T,Ne),A(k,Re),A(k,ze))),e.ADD_TAGS&&(typeof e.ADD_TAGS==`function`?N.tagCheck=e.ADD_TAGS:(T===O&&(T=j(T)),A(T,e.ADD_TAGS,X))),e.ADD_ATTR&&(typeof e.ADD_ATTR==`function`?N.attributeCheck=e.ADD_ATTR:(k===De&&(k=j(k)),A(k,e.ADD_ATTR,X))),e.ADD_URI_SAFE_ATTR&&A(G,e.ADD_URI_SAFE_ATTR,X),e.FORBID_CONTENTS&&(U===W&&(U=j(U)),A(U,e.FORBID_CONTENTS,X)),rt&&(T[`#text`]=!0),F&&A(T,[`html`,`head`,`body`]),T.table&&(A(T,[`tbody`]),delete Be.tbody),e.TRUSTED_TYPES_POLICY){if(typeof e.TRUSTED_TYPES_POLICY.createHTML!=`function`)throw Ee(`TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.`);if(typeof e.TRUSTED_TYPES_POLICY.createScriptURL!=`function`)throw Ee(`TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.`);_=e.TRUSTED_TYPES_POLICY,v=_.createHTML(``)}else _===void 0&&(_=Ze(p,i)),_!==null&&typeof v==`string`&&(v=_.createHTML(``));C&&C(e),ht=e}},vt=A({},[...Ae,...je,...Me]),yt=A({},[...Ne,...Pe]),bt=function(e){let t=g(e);(!t||!t.tagName)&&(t={namespaceURI:lt,tagName:`template`});let n=be(e.tagName),r=be(t.tagName);return ut[e.namespaceURI]?e.namespaceURI===ct?t.namespaceURI===K?n===`svg`:t.namespaceURI===st?n===`svg`&&(r===`annotation-xml`||J[r]):!!vt[n]:e.namespaceURI===st?t.namespaceURI===K?n===`math`:t.namespaceURI===ct?n===`math`&&ft[r]:!!yt[n]:e.namespaceURI===K?t.namespaceURI===ct&&!ft[r]||t.namespaceURI===st&&!J[r]?!1:!yt[n]&&(pt[n]||!vt[n]):!!(Y===`application/xhtml+xml`&&ut[e.namespaceURI]):!1},xt=function(e){ve(t.removed,{element:e});try{g(e).removeChild(e)}catch{h(e)}},Q=function(e,n){try{ve(t.removed,{attribute:n.getAttributeNode(e),from:n})}catch{ve(t.removed,{attribute:null,from:n})}if(n.removeAttribute(e),e===`is`)if(L||R)try{xt(n)}catch{}else try{n.setAttribute(e,``)}catch{}},St=function(e){let t=null,r=null;if(tt)e=`<remove></remove>`+e;else{let t=Se(e,/^[\r\n\t ]+/);r=t&&t[0]}Y===`application/xhtml+xml`&&lt===K&&(e=`<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>`+e+`</body></html>`);let i=_?_.createHTML(e):e;if(lt===K)try{t=new f().parseFromString(i,Y)}catch{}if(!t||!t.documentElement){t=re.createDocument(lt,`template`,null);try{t.documentElement.innerHTML=q?v:i}catch{}}let a=t.body||t.documentElement;return e&&r&&a.insertBefore(n.createTextNode(r),a.childNodes[0]||null),lt===K?y.call(t,F?`html`:`body`)[0]:F?t.documentElement:a},Ct=function(e){return ie.call(e.ownerDocument||e,e,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT|l.SHOW_PROCESSING_INSTRUCTION|l.SHOW_CDATA_SECTION,null)},wt=function(e){return e instanceof d&&(typeof e.nodeName!=`string`||typeof e.textContent!=`string`||typeof e.removeChild!=`function`||!(e.attributes instanceof u)||typeof e.removeAttribute!=`function`||typeof e.setAttribute!=`function`||typeof e.namespaceURI!=`string`||typeof e.insertBefore!=`function`||typeof e.hasChildNodes!=`function`)},Tt=function(e){return typeof s==`function`&&e instanceof s};function $(e,n,r){he(e,e=>{e.call(t,n,r,ht)})}let Et=function(e){let n=null;if($(x.beforeSanitizeElements,e,null),wt(e))return xt(e),!0;let r=X(e.nodeName);if($(x.uponSanitizeElement,e,{tagName:r,allowedTags:T}),et&&e.hasChildNodes()&&!Tt(e.firstElementChild)&&D(/<[/\w!]/g,e.innerHTML)&&D(/<[/\w!]/g,e.textContent)||e.nodeType===Ye.progressingInstruction||et&&e.nodeType===Ye.comment&&D(/<[/\w]/g,e.data))return xt(e),!0;if(!(N.tagCheck instanceof Function&&N.tagCheck(r))&&(!T[r]||Be[r])){if(!Be[r]&&Ot(r)&&(M.tagNameCheck instanceof RegExp&&D(M.tagNameCheck,r)||M.tagNameCheck instanceof Function&&M.tagNameCheck(r)))return!1;if(rt&&!U[r]){let t=g(e)||e.parentNode,n=ne(e)||e.childNodes;if(n&&t){let r=n.length;for(let i=r-1;i>=0;--i){let r=ee(n[i],!0);r.__removalCount=(e.__removalCount||0)+1,t.insertBefore(r,te(e))}}}return xt(e),!0}return e instanceof c&&!bt(e)||(r===`noscript`||r===`noembed`||r===`noframes`)&&D(/<\/no(script|embed|frames)/i,e.innerHTML)?(xt(e),!0):(P&&e.nodeType===Ye.text&&(n=e.textContent,he([S,oe,se],e=>{n=Ce(n,e,` `)}),e.textContent!==n&&(ve(t.removed,{element:e.cloneNode()}),e.textContent=n)),$(x.afterSanitizeElements,e,null),!1)},Dt=function(e,t,r){if(B&&(t===`id`||t===`name`)&&(r in n||r in gt))return!1;if(!(We&&!Ve[t]&&D(le,t))&&!(He&&D(ue,t))&&!(N.attributeCheck instanceof Function&&N.attributeCheck(t,e))){if(!k[t]||Ve[t]){if(!(Ot(e)&&(M.tagNameCheck instanceof RegExp&&D(M.tagNameCheck,e)||M.tagNameCheck instanceof Function&&M.tagNameCheck(e))&&(M.attributeNameCheck instanceof RegExp&&D(M.attributeNameCheck,t)||M.attributeNameCheck instanceof Function&&M.attributeNameCheck(t,e))||t===`is`&&M.allowCustomizedBuiltInElements&&(M.tagNameCheck instanceof RegExp&&D(M.tagNameCheck,r)||M.tagNameCheck instanceof Function&&M.tagNameCheck(r))))return!1}else if(!G[t]&&!D(me,Ce(r,fe,``))&&!((t===`src`||t===`xlink:href`||t===`href`)&&e!==`script`&&we(r,`data:`)===0&&it[e])&&!(Ge&&!D(de,Ce(r,fe,``)))&&r)return!1}return!0},Ot=function(e){return e!==`annotation-xml`&&Se(e,w)},kt=function(e){$(x.beforeSanitizeAttributes,e,null);let{attributes:n}=e;if(!n||wt(e))return;let r={attrName:``,attrValue:``,keepAttr:!0,allowedAttributes:k,forceKeepAttr:void 0},i=n.length;for(;i--;){let{name:a,namespaceURI:o,value:s}=n[i],c=X(a),l=s,u=a===`value`?l:Te(l);if(r.attrName=c,r.attrValue=u,r.keepAttr=!0,r.forceKeepAttr=void 0,$(x.uponSanitizeAttribute,e,r),u=r.attrValue,nt&&(c===`id`||c===`name`)&&(Q(a,e),u=`user-content-`+u),et&&D(/((--!?|])>)|<\/(style|title|textarea)/i,u)){Q(a,e);continue}if(c===`attributename`&&Se(u,`href`)){Q(a,e);continue}if(r.forceKeepAttr)continue;if(!r.keepAttr){Q(a,e);continue}if(!qe&&D(/\/>/i,u)){Q(a,e);continue}P&&he([S,oe,se],e=>{u=Ce(u,e,` `)});let d=X(e.nodeName);if(!Dt(d,c,u)){Q(a,e);continue}if(_&&typeof p==`object`&&typeof p.getAttributeType==`function`&&!o)switch(p.getAttributeType(d,c)){case`TrustedHTML`:u=_.createHTML(u);break;case`TrustedScriptURL`:u=_.createScriptURL(u);break}if(u!==l)try{o?e.setAttributeNS(o,a,u):e.setAttribute(a,u),wt(e)?xt(e):_e(t.removed)}catch{Q(a,e)}}$(x.afterSanitizeAttributes,e,null)},At=function e(t){let n=null,r=Ct(t);for($(x.beforeSanitizeShadowDOM,t,null);n=r.nextNode();)$(x.uponSanitizeShadowNode,n,null),Et(n),kt(n),n.content instanceof a&&e(n.content);$(x.afterSanitizeShadowDOM,t,null)};return t.sanitize=function(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=null,o=null,c=null,l=null;if(q=!e,q&&(e=`<!-->`),typeof e!=`string`&&!Tt(e))if(typeof e.toString==`function`){if(e=e.toString(),typeof e!=`string`)throw Ee(`dirty is not a string, aborting`)}else throw Ee(`toString is not a function`);if(!t.isSupported)return e;if(I||Z(n),t.removed=[],typeof e==`string`&&(V=!1),V){if(e.nodeName){let t=X(e.nodeName);if(!T[t]||Be[t])throw Ee(`root node is forbidden and cannot be sanitized in-place`)}}else if(e instanceof s)i=St(`<!---->`),o=i.ownerDocument.importNode(e,!0),o.nodeType===Ye.element&&o.nodeName===`BODY`||o.nodeName===`HTML`?i=o:i.appendChild(o);else{if(!L&&!P&&!F&&e.indexOf(`<`)===-1)return _&&z?_.createHTML(e):e;if(i=St(e),!i)return L?null:z?v:``}i&&tt&&xt(i.firstChild);let u=Ct(V?e:i);for(;c=u.nextNode();)Et(c),kt(c),c.content instanceof a&&At(c.content);if(V)return e;if(L){if(R)for(l=ae.call(i.ownerDocument);i.firstChild;)l.appendChild(i.firstChild);else l=i;return(k.shadowroot||k.shadowrootmode)&&(l=b.call(r,l,!0)),l}let d=F?i.outerHTML:i.innerHTML;return F&&T[`!doctype`]&&i.ownerDocument&&i.ownerDocument.doctype&&i.ownerDocument.doctype.name&&D(Ke,i.ownerDocument.doctype.name)&&(d=`<!DOCTYPE `+i.ownerDocument.doctype.name+`>
11
+ `+d),P&&he([S,oe,se],e=>{d=Ce(d,e,` `)}),_&&z?_.createHTML(d):d},t.setConfig=function(){Z(arguments.length>0&&arguments[0]!==void 0?arguments[0]:{}),I=!0},t.clearConfig=function(){ht=null,I=!1},t.isValidAttribute=function(e,t,n){return ht||Z({}),Dt(X(e),X(t),n)},t.addHook=function(e,t){typeof t==`function`&&ve(x[e],t)},t.removeHook=function(e,t){if(t!==void 0){let n=ge(x[e],t);return n===-1?void 0:ye(x[e],n,1)[0]}return _e(x[e])},t.removeHooks=function(e){x[e]=[]},t.removeAllHooks=function(){x=Qe()},t}var P=$e(),et={sanitize:e=>P.sanitize(e)},F=(e,...t)=>new se(e.reduce((e,n,r)=>{let i=t[r]??``;return typeof i==`string`?[...e,n,et.sanitize(i)]:i===!1?[...e,n]:Array.isArray(i)?[...e,n,...i]:[...e,n,i]},[]));function I(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}var tt=`:host{--host-display:flex;--host-heading-border:var(--scorad-heading-border,solid 1px var(--host-color));--host-score-color:var(--scorad-score-color,var(--host-color));--host-score-background:var(--scorad-score-background,var(--host-background-color));--host-score-border:var(--scorad-score-border,solid 1px var(--host-color));gap:var(--host-spacing-unit);flex-wrap:wrap;width:fit-content}h3{aspect-ratio:1;border:var(--host-heading-border);padding:var(--host-padding-unit);margin:0 0 0 calc(-1*var(--host-padding-unit));border-radius:50%;justify-content:center;align-items:center;line-height:0;display:inline-flex}p{padding:var(--host-padding-unit)0 0;margin:0;font-size:.9em}scorad-label{break-inside:avoid;outline:none;flex:5 19rem}#extent-label{flex-basis:100%}#intensity-label{flex-grow:1}#score-label{background:linear-gradient(to bottom,transparent,var(--background-color)75%);flex-basis:100%;font-size:1.2rem;position:sticky;bottom:0}@media print{#score-label{position:relative}}#score-label>span{padding:var(--host-padding-unit);border-radius:var(--host-border-radius);outline:var(--host-score-border);color:var(--host-score-color);background:var(--host-score-background)}scorad-extent,scorad-intensity,scorad-subjective{margin:.6rem calc(-1*var(--host-padding-unit));flex:100%}`,L=`*{box-sizing:border-box}:host{--host-color-l:var(--color-l,50%);--host-error-color-h:var(--error-color-h,0);--host-color:var(--color,#444);--host-background-color:var(--background-color,#eee);--host-primary-color:var(--primary-color,var(--host-color));--host-error-color:var(--error-color,hsl(var(--host-error-color-h),66.7%,var(--host-color-l)));--host-spacing-unit:var(--scorad-spacing-unit,.25rem);--host-padding-unit:var(--scorad-padding-unit,.333rem);--host-border-radius:var(--scorad-border-radius,3px);--host-border-radius-outer:var(--scorad-border-radius-outer,calc(var(--host-border-radius) + var(--host-padding-unit)));--host-outline-hover:var(--scorad-outline-hover,dashed 2px var(--host-primary-color));--host-outline-focus:var(--scorad-outline-focus,solid 2px var(--host-primary-color));display:var(--host-display,inline-flex);line-height:1.2}@media (prefers-color-scheme:dark){:host{--host-color-l:var(--color-l,70%)}}`;let R={headNeck:null,anteriorTrunk:null,posteriorTrunk:null,upperLimbs:null,lowerLimbs:null,genitals:null},z={erythema:null,oedemaPapulation:null,oozingCrusting:null,excoriations:null,lichenification:null,xerosis:null},B={pruritus:null,sleeplessness:null},nt={child:!1,extent:R,intensity:z,subjective:B},rt={headNeck:.09,anteriorTrunk:.18,posteriorTrunk:.18,upperLimbs:.18,lowerLimbs:.36,genitals:.01},V={headNeck:.18,anteriorTrunk:.18,posteriorTrunk:.18,upperLimbs:.18,lowerLimbs:.28,genitals:0};var H=`:host{--host-display:inline-flex;--host-font-size:1rem;flex-wrap:wrap;justify-content:center;align-items:center;position:relative}label{padding:var(--host-padding-unit)}svg{min-width:14rem;max-width:18rem;margin:var(--host-padding-unit)0;fill:#0000;stroke:var(--host-color);stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;flex:16rem;overflow:visible}@media print{svg{flex:0 0 14rem;width:14rem}}path,line{vector-effect:non-scaling-stroke}path{opacity:.333}text,line{opacity:.667}g{outline:none}g[tabindex] path{opacity:1;fill:hsla(var(--scorad-h,0),var(--extent,"0%"),50%,var(--opacity,0));cursor:grab}:has(:active) g[tabindex] path{cursor:ns-resize}:is(:not(:has(:active)) g[tabindex]:hover path,:not(:has(:active)) g[tabindex]:hover line){stroke-width:2px;stroke:var(--host-primary-color);stroke-dasharray:2 3.5;opacity:1}g[tabindex]:focus path,g[tabindex]:active path,g[tabindex].selected path,g[tabindex]:focus line,g[tabindex]:active line,g[tabindex].selected line{stroke-width:2px;stroke:var(--host-primary-color);opacity:1;stroke-dasharray:none!important}g[tabindex] text{fill:var(--host-color);stroke:none;font-size:var(--host-font-size);text-anchor:end}g[tabindex].posterior-trunk text{text-anchor:start}:is(:not(:has(:active)) g[tabindex]:hover text,g[tabindex]:focus text,g[tabindex]:active text,g[tabindex].selected text){fill:var(--host-primary-color);opacity:1}`;let U=e=>e?.child?V:rt,W=e=>{let t=[],n=(e,n,r)=>{for(let[i,a]of Object.entries(e))W.isValid(a,r)||t.push(W.formatError(n,i,r,a))},r={...e?.extent??R},i=U(e);for(let[e,t]of Object.entries(i))t===0&&delete r[e];return n(r,`extent`,100),n(e?.intensity??z,`intensity`,3),n(e?.subjective??B,`subjective`,10),t.length?te.Fail(t):te.Ok(e)};W.formatError=(e,t,n,r)=>`${e}.${t}: must be between 0 and ${n}, but received ${r}.`,W.isValid=(e,t)=>typeof e==`number`&&Number.isFinite(e)&&e>=0&&e<=t;let it={child:{text:`child`,description:`use weightings for a child`},extent:{headNeck:{text:`head`,description:`percentage of the head and neck area affected`},anteriorTrunk:{text:`trunk`,description:`percentage of the front torso area affected`},posteriorTrunk:{text:`back`,description:`percentage of the back torso area affected`},genitals:{text:`genitals`,description:`percentage of the genital area affected`},upperLimbs:{text:`arms`,description:`percentage of the arms and shoulders affected`},lowerLimbs:{text:`legs`,description:`percentage of the legs and hips affected`}},intensity:{erythema:{text:`Erythema`,description:`redness of the skin`},oedemaPapulation:{text:`Oedema/Papulation`,description:`swelling and small bumps`},oozingCrusting:{text:`Oozing/Crusting`,description:`fluid leakage and dried scabs`},excoriations:{text:`Excoriations`,description:`scratch marks`},lichenification:{text:`Lichenification`,description:`skin thickening and hardening`},xerosis:{text:`Xerosis`,description:`dryness of the skin`}},subjective:{pruritus:{text:`Pruritus`,description:`itching`},sleeplessness:{text:`Sleeplessness`,description:`difficulty sleeping`}}};var at=`scorad-extent`,G=class extends x{connectedCallback(){this.render(),this.addEventListener(`focusin`,this.handleFocusIn,{once:!0})}disconnectedCallback(){this.removeEventListener(`focusin`,this.handleFocusIn)}handleFocusIn=()=>{this.readonly||(this.committedValue=this.value,this.addEventListener(`focusout`,this.handleFocusOut,{once:!0}))};handleFocusOut=()=>{this.addEventListener(`focusin`,this.handleFocusIn,{once:!0}),!c(this.value,this.committedValue)&&this.valueChange(this.value)};child=!1;readonly=!1;committedValue=R;value=R;score;setValue=e=>{this.value=e,this.errors=void 0,this.valueInput(this.value)};errors;afterRender(){if(!this.value){this.value=R;return}if(this.shadowRoot)for(let e of f(R)){let t=(this.value??{})[e],n=this.shadowRoot.querySelector(`.${g(e)}`);if(!n)return;n.style.setProperty(`--extent`,`${t}%`),n.style.setProperty(`--opacity`,`${(t??0)/100}`);let r=n.querySelector(`text`);if(!r)return;r.textContent=W.isValid(t,100)?`${t}%`:it.extent[e].text,n.querySelectorAll(`path`).forEach(t=>t.style.stroke=this.errors?.[e]==null?``:`var(--host-error-color)`)}}resizeCallback(){if(!this.shadowRoot)return;let e=this.shadowRoot.querySelector(`svg`);if(!e)return;let t=Math.round(19e3/e.clientWidth)/100;this.style.setProperty(`--host-font-size`,`${t}rem`)}render(){let e=e=>{let t=t=>{let n=Math.round(Math.min(100,Math.max(0,t)));this.setValue({...this.value,[e]:n})};return n=>{if(!n)return;`ontouchstart`in window&&n.addEventListener(`touchstart`,e=>{e.preventDefault()},{passive:!1}),n.style.touchAction=`none`,n.addEventListener(`pointerdown`,r=>{r.stopPropagation(),n.focus();let i=this.value[e],a=r.clientY,o=e=>{e.preventDefault();let n=(a-e.clientY)/2;t(Math.round((i+n)/5)*5)},s=()=>{document.removeEventListener(`pointermove`,o),document.removeEventListener(`pointerup`,s),document.removeEventListener(`pointercancel`,s)};document.addEventListener(`pointermove`,o),document.addEventListener(`pointerup`,s),document.addEventListener(`pointercancel`,s),o(r)});let r,i;n.addEventListener(`focus`,()=>{i=`000`,r=this.value[e]}),n.addEventListener(`keydown`,n=>{let a=W.isValid(this.value[e],100)?this.value[e]:0,o=n.shiftKey?5:1;switch(n.key){case`0`:case`1`:case`2`:case`3`:case`4`:case`5`:case`6`:case`7`:case`8`:case`9`:t(Number.parseInt(i.substring(1)+n.key)),i=ne(this.value[e],3);break;case`ArrowLeft`:case`ArrowDown`:n.preventDefault(),t(a-o);break;case`ArrowUp`:case`ArrowRight`:n.preventDefault(),t(a+o);break;case`Escape`:n.preventDefault(),t(r);break}})}},t=e=>t=>{t&&(t.textContent=`${this.value[e]}%`)};return F`
12
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 190 240">
13
13
  <g ${e(`headNeck`)}
14
14
  class="head-neck" tabindex="0">
15
15
  <text x="40" y="20" ${t(`headNeck`)}>--</text>
16
16
  <line x1="45" y1="16" x2="68" y2="17"></line>
17
17
  <path d="M100,45 100,49 Q95,48 90,49 L90,45 A20,22.5 1,1,1 100,45Z"></path>
18
18
  </g>
19
- ${this.child?I`
19
+ ${this.child?F`
20
20
  <g ${e(`anteriorTrunk`)}
21
21
  class="anterior-trunk" tabindex="0">
22
22
  <text x="40" y="50" ${t(`anteriorTrunk`)}>--</text>
23
23
  <line x1="45" y1="46" x2="77" y2="52"></line>
24
24
  <path d="M80,58 Q95,52 110,58 L120,130 95,149 70,130 L80,60Z"></path>
25
25
  </g>
26
- `:I`
26
+ `:F`
27
27
  <g ${e(`anteriorTrunk`)}
28
28
  class="anterior-trunk" tabindex="0">
29
29
  <text x="40" y="50" ${t(`anteriorTrunk`)}>--</text>
@@ -38,7 +38,7 @@
38
38
  <path d="M74,61 70,85 40,135 A1,1 0,0,1 25,130Z"></path>
39
39
  <path d="M116,61 120,85 150,135 A1,1 0,0,0 165,130Z"></path>
40
40
  </g>
41
- ${this.child?``:I`
41
+ ${this.child?``:F`
42
42
  <g ${e(`genitals`)}
43
43
  class="genitals" tabindex="0">
44
44
  <text x="40" y="170" ${t(`genitals`)}>--</text>
@@ -54,7 +54,7 @@
54
54
  <path d="M120,139 100,154 100,230 A1,1 0,0,0 120,230Z"></path>
55
55
  </g>
56
56
  </svg>
57
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 164 240">
57
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 190 240">
58
58
  <g class="head-neck">
59
59
  <path d="M100,45 100,49 Q95,48 90,49 L90,45 A20,22.5 1,1,1 100,45Z"></path>
60
60
  </g>
@@ -64,8 +64,8 @@
64
64
  </g>
65
65
  <g ${e(`posteriorTrunk`)}
66
66
  class="posterior-trunk" tabindex="0">
67
- <text x="40" y="50" ${t(`posteriorTrunk`)}>--</text>
68
- <line x1="45" y1="46" x2="75" y2="52"></line>
67
+ <text x="150" y="50" ${t(`posteriorTrunk`)}>--</text>
68
+ <line x1="145" y1="46" x2="115" y2="52"></line>
69
69
  <path d="M80,58 Q95,52 110,58 L120,130 Q110,152 95,142 L95,142 Q80,152 70,130 L80,60Z"></path>
70
70
  </g>
71
71
  <g class="lower-limbs">
@@ -73,13 +73,13 @@
73
73
  <path d="M120,142 Q110,155 100,151 L100,230 A1,1 0,0,0 120,230Z"></path>
74
74
  </g>
75
75
  </svg>
76
- `}valueInput;valueChange};L([_(v)],U.prototype,`child`,void 0),L([C(`value`)],U.prototype,`afterRender`,null),L([C(`child`)],U.prototype,`render`,null),L([x()],U.prototype,`valueInput`,void 0),L([x()],U.prototype,`valueChange`,void 0),U=L([b({tag:tt,css:[R,et],delegatesFocus:!0})],U);var nt=`:host{--host-display:inline-flex;flex-direction:column;position:relative}scorad-options{margin-left:auto}`;let W={child:{text:`child`,description:`use weightings for a child`},extent:{headNeck:{text:`Head/Neck`,description:`percentage of the head and neck area affected`},anteriorTrunk:{text:`Anterior Trunk`,description:`percentage of the front torso area affected`},posteriorTrunk:{text:`Posterior Trunk`,description:`percentage of the back torso area affected`},genitals:{text:`Genitals`,description:`percentage of the genital area affected`},upperLimbs:{text:`Upper Limbs`,description:`percentage of the arms and shoulders affected`},lowerLimbs:{text:`Lower Limbs`,description:`percentage of the legs and hips affected`}},intensity:{erythema:{text:`Erythema`,description:`redness of the skin`},oedemaPapulation:{text:`Oedema/Papulation`,description:`swelling and small, raised bumps`},oozingCrusting:{text:`Oozing/Crusting`,description:`fluid leakage and dried scabs`},excoriations:{text:`Excoriations`,description:`scratch marks`},lichenification:{text:`Lichenification`,description:`skin thickening and hardening`},xerosis:{text:`Xerosis`,description:`dryness of the skin`}},subjective:{pruritus:{text:`Pruritus`,description:`itching`},sleeplessness:{text:`Sleeplessness`,description:`difficulty sleeping`}}};var rt=`:host{--host-display:inline-flex;--host-option-width:var(--scorad-option-width,1.5em);--host-option-height:var(--scorad-option-height,1.5em);--host-option-border:var(--scorad-option-border,solid 1px var(--host-color));--host-option-border-selected:var(--scorad-option-border-selected,solid 2px var(--host-color));--host-option-color:var(--scorad-option-color,var(--host-color));--host-option-background:var(--scorad-option-background,transparent);--host-option-color-selected:var(--scorad-option-color-selected,var(--host-background-color));--host-option-background-selected:var(--scorad-option-background-selected,var(--host-color));gap:var(--host-spacing-unit);padding:calc(1.5*var(--host-padding-unit))0;outline:none;width:max-content;position:relative}span{height:var(--host-option-height);width:var(--host-option-width);outline:var(--host-option-border);border-radius:var(--host-border-radius);padding:calc(.5*var(--host-padding-unit))var(--host-padding-unit);color:var(--host-option-color);background:var(--host-option-background);cursor:pointer;touch-action:none}span:before{content:"​";touch-action:none;pointer-events:none}span[aria-selected=true]{outline:var(--host-option-border-selected);color:var(--host-option-color-selected);background:var(--host-option-background-selected)}`,it=`scorad-options`,G=class extends S{connectedCallback(){this.render(),this.addEventListener(`focusin`,this._handleFocusIn,{once:!0}),this.addEventListener(`pointerdown`,this._handleDown)}disconnectedCallback(){this.addEventListener(`pointerdown`,this._handleDown)}_handleFocusIn=()=>{this.readonly||(this.committedValue=this.value,this.addEventListener(`focusout`,this._handleFocusOut,{once:!0}),this.addEventListener(`keydown`,this._handleKeydown))};_handleFocusOut=()=>{this.removeEventListener(`keydown`,this._handleKeydown),this.addEventListener(`focusin`,this._handleFocusIn,{once:!0}),this.setValue(this.value),this.value!==this.committedValue&&this.valueChange(this.value)};_handleDown=e=>{this.readonly||(e.stopPropagation(),e.preventDefault(),this.focus(),this._handleMove(e),document.addEventListener(`pointerup`,this._handleUp),document.addEventListener(`pointermove`,this._handleMove))};_handleUp=e=>{e.stopPropagation(),document.removeEventListener(`pointerup`,this._handleUp),document.removeEventListener(`pointermove`,this._handleMove)};_handleMove=e=>{let t=e.composedPath()[0];if(!(t instanceof HTMLSpanElement))return;let n=Number.parseInt(t.dataset.value);this.setValue(n)};_handleKeydown=e=>{let t=this.value??0;switch(e.key){case`ArrowLeft`:case`ArrowDown`:e.preventDefault(),this.setValue(t-1);break;case`ArrowUp`:case`ArrowRight`:e.preventDefault(),this.setValue(t+1);break;case`Escape`:e.preventDefault(),this.setValue(this.committedValue);break}};min=0;max=5;showHue=!1;committedValue=0;value=0;setValue=e=>{this.value=Math.max(this.min,Math.min(this.max,e)),this.valueInput(this.value)};readonly=!1;text=[];render(){return I`
77
- ${Array.from({length:this.max-this.min+1},(e,t)=>this.min+t).map(e=>I`
76
+ `}valueInput;valueChange};I([_(re)],G.prototype,`child`,void 0),I([_({name:`aria-readonly`,...v})],G.prototype,`readonly`,void 0),I([_({name:`has-errors`,write:e=>e==null?void 0:``,read:!1})],G.prototype,`errors`,void 0),I([S(`value`,`errors`)],G.prototype,`afterRender`,null),I([S(`child`)],G.prototype,`render`,null),I([b()],G.prototype,`valueInput`,void 0),I([b()],G.prototype,`valueChange`,void 0),G=I([y({tag:at,css:[L,H],delegatesFocus:!0})],G);var ot=`:host{--host-display:inline-flex;flex-direction:column;position:relative}scorad-options{align-self:center;margin-left:auto}`,st=`:host{--host-display:inline-flex;--host-option-width:var(--scorad-option-width,1.5em);--host-option-height:var(--scorad-option-height,1.5em);--host-option-border:var(--scorad-option-border,solid 1px var(--host-color));--host-option-border-selected:var(--scorad-option-border-selected,solid 2px var(--host-color));--host-option-color:var(--scorad-option-color,var(--host-color));--host-option-background:var(--scorad-option-background,transparent);--host-option-color-selected:var(--scorad-option-color-selected,var(--host-background-color));--host-option-background-selected:var(--scorad-option-background-selected,var(--host-color));gap:var(--host-spacing-unit);margin:var(--host-padding-unit)0;outline:none;width:max-content;position:relative}span{height:var(--host-option-height);width:var(--host-option-width);outline:var(--host-option-border);border-radius:var(--host-border-radius);padding:calc(.5*var(--host-padding-unit))var(--host-padding-unit);color:var(--host-option-color);background:var(--host-option-background);cursor:pointer;touch-action:none}span:before{content:"​";touch-action:none;pointer-events:none}span[aria-selected=true]{outline:var(--host-option-border-selected);color:var(--host-option-color-selected);background:var(--host-option-background-selected)}`,ct=`scorad-options`,K=class extends x{connectedCallback(){this.render(),this.addEventListener(`focusin`,this.handleFocusIn,{once:!0}),this.addEventListener(`click`,this.handleClick)}disconnectedCallback(){this.removeEventListener(`focusin`,this.handleFocusIn),this.removeEventListener(`click`,this.handleClick)}handleFocusIn=()=>{this.readonly||(this.committedValue=this.value,this.addEventListener(`focusout`,this.handleFocusOut,{once:!0}),this.addEventListener(`keydown`,this.handleKeydown))};handleFocusOut=()=>{this.removeEventListener(`keydown`,this.handleKeydown),this.addEventListener(`focusin`,this.handleFocusIn,{once:!0}),this.setValue(this.value),this.value!==this.committedValue&&this.valueChange(this.value)};handleClick=e=>{if(this.readonly)return;e.stopPropagation(),e.preventDefault(),this.focus();let t=e.composedPath()[0];if(!(t instanceof HTMLSpanElement))return;let n=Number.parseInt(t.dataset.value);this.setValue(n)};handleKeydown=e=>{let t=this.value??0;switch(e.key){case`ArrowLeft`:case`ArrowDown`:e.preventDefault(),this.setValue(t-1);break;case`ArrowUp`:case`ArrowRight`:e.preventDefault(),this.setValue(t+1);break;case`Escape`:e.preventDefault(),this.setValue(this.committedValue);break}};min=0;max=5;showHue=!1;committedValue=0;value=0;setValue=e=>{this.value=Math.max(this.min,Math.min(this.max,e)),this.valueInput(this.value)};readonly=!1;text=[];render(){return F`
77
+ ${Array.from({length:this.max-this.min+1},(e,t)=>this.min+t).map(e=>F`
78
78
  <span data-value="${e}">${this.text[e]}</span>
79
79
  `)}
80
- `}afterRender(){this.shadowRoot&&this.shadowRoot.querySelectorAll(`span`).forEach(e=>{let t=Number.parseInt(e.dataset.value);if(e.ariaSelected=t===this.value?`true`:`false`,!this.showHue)return;if(t>this.value){e.style.backgroundColor=``;return}let n=Math.round(100*t/(this.max-this.min));e.style.backgroundColor=`hsl(var(--scorad-h, 0), ${n}%, 50%, ${n}%)`})}valueInput;valueChange};L([_({read:Number,write:!1})],G.prototype,`min`,void 0),L([_({read:Number,write:!1})],G.prototype,`max`,void 0),L([_(v)],G.prototype,`showHue`,void 0),L([_({name:`aria-readonly`,...ee})],G.prototype,`readonly`,void 0),L([_({write:!1})],G.prototype,`text`,void 0),L([C(`min`,`max`,`text`)],G.prototype,`render`,null),L([C(`value`)],G.prototype,`afterRender`,null),L([x()],G.prototype,`valueInput`,void 0),L([x()],G.prototype,`valueChange`,void 0),G=L([b({tag:it,css:[R,rt]})],G);var at=`scorad-intensity`,K=class extends S{connectedCallback(){this.render()}value=B;score;afterRender(){if(this.value==null){this.value=B;return}if(this.shadowRoot)for(let[e,t]of Object.entries(this.value)){let n=this.shadowRoot.querySelector(`.${g(e)}`);if(!n)return;n.dataset.value=`${t}`;let r=n.querySelector(`scorad-options`);if(!r)return;r.value=t}}render(){return I`
81
- ${u(this.value).map(e=>this.renderLevel(e))}
82
- `}renderLevel(e){let t=t=>{t&&t.addEventListener(`value-input`,t=>{this.value={...this.value,[e]:t.detail},this.valueInput(this.value)})},n=W.intensity[e];return I`
80
+ `}afterRender(){this.shadowRoot&&this.shadowRoot.querySelectorAll(`span`).forEach(e=>{let t=Number.parseInt(e.dataset.value);if(e.setAttribute(`aria-selected`,t===this.value?`true`:`false`),!this.showHue)return;if(t>this.value){e.style.backgroundColor=``;return}let n=Math.round(100*t/(this.max-this.min));e.style.backgroundColor=`hsl(var(--scorad-h, 0), ${n}%, 50%, ${n}%)`})}valueInput;valueChange};I([_({read:Number,write:!1})],K.prototype,`min`,void 0),I([_({read:Number,write:!1})],K.prototype,`max`,void 0),I([_(re)],K.prototype,`showHue`,void 0),I([_({name:`aria-readonly`,...v})],K.prototype,`readonly`,void 0),I([_({write:!1})],K.prototype,`text`,void 0),I([S(`min`,`max`,`text`)],K.prototype,`render`,null),I([S(`value`)],K.prototype,`afterRender`,null),I([b()],K.prototype,`valueInput`,void 0),I([b()],K.prototype,`valueChange`,void 0),K=I([y({tag:ct,css:[L,st]})],K);var lt=`scorad-intensity`,q=class extends x{connectedCallback(){this.render()}readonly=!1;value=z;score;errors;afterRender(){if(this.value==null){this.value=z;return}if(this.shadowRoot)for(let[e,t]of Object.entries(this.value)){let n=this.shadowRoot.querySelector(`.${g(e)}`);if(!n)return;n.dataset.value=`${t}`;let r=n.querySelector(`scorad-options`);if(!r)return;r.value=t,r.style.setProperty(`--host-option-border`,this.errors?.[e]==null?null:`solid 1px var(--host-error-color)`)}}render(){return F`
81
+ ${f(this.value).map(e=>this.renderLevel(e))}
82
+ `}renderLevel(e){let t=t=>{t&&(t.addEventListener(`value-input`,t=>{this.value={...this.value,[e]:t.detail},this.errors=void 0,this.valueInput(this.value)}),t.addEventListener(`value-change`,t=>{this.value={...this.value,[e]:t.detail},this.errors=void 0,this.valueChange(this.value)}))},n=it.intensity[e];return F`
83
83
  <scorad-label class="${g(e)} row"
84
84
  text="${n.text}"
85
85
  description="${n.description}">
@@ -87,46 +87,50 @@
87
87
  min="0" max="3" show-hue tabindex="0"
88
88
  ></scorad-options>
89
89
  </scorad-label>
90
- `}valueInput;valueChange};L([C(`value`)],K.prototype,`afterRender`,null),L([x()],K.prototype,`valueInput`,void 0),L([x()],K.prototype,`valueChange`,void 0),K=L([b({tag:at,css:[R,nt],delegatesFocus:!0})],K);var ot=`:host{--host-display:inline-flex;flex-direction:column;position:relative}scorad-options{margin-left:auto}`,st=`scorad-subjective`,q=class extends S{connectedCallback(){this.render()}value=V;score;afterRender(){if(this.value==null){this.value=V;return}if(this.shadowRoot)for(let[e,t]of Object.entries(this.value)){let n=this.shadowRoot.querySelector(`.${g(e)}`);if(!n)return;n.dataset.value=`${t}`;let r=n.querySelector(`scorad-options`);if(!r)return;r.value=t}}render(){return I`
91
- ${u(this.value).map(e=>this.renderLevel(e))}
92
- `}renderLevel(e){let t=t=>{t&&t.addEventListener(`value-input`,t=>{this.value={...this.value,[e]:t.detail},this.valueInput(this.value)})},n=W.subjective[e];return I`
90
+ `}valueInput;valueChange};I([_({name:`aria-readonly`,...v})],q.prototype,`readonly`,void 0),I([_({name:`has-errors`,write:e=>e==null?void 0:``,read:!1})],q.prototype,`errors`,void 0),I([S(`value`,`errors`)],q.prototype,`afterRender`,null),I([b()],q.prototype,`valueInput`,void 0),I([b()],q.prototype,`valueChange`,void 0),q=I([y({tag:lt,css:[L,ot],delegatesFocus:!0})],q);var ut=`:host{--host-display:inline-flex;--scorad-label-text-min-width:7rem;flex-direction:column;position:relative}scorad-options{align-self:center;margin-left:auto}`,dt=`scorad-subjective`,J=class extends x{connectedCallback(){this.render()}value=B;score;errors;afterRender(){if(this.value==null){this.value=B;return}if(this.shadowRoot)for(let[e,t]of Object.entries(this.value)){let n=this.shadowRoot.querySelector(`.${g(e)}`);if(!n)return;n.dataset.value=`${t}`;let r=n.querySelector(`scorad-options`);if(!r)return;r.value=t,r.style.setProperty(`--host-option-border`,this.errors?.[e]==null?null:`solid 1px var(--host-error-color)`)}}render(){return F`
91
+ ${f(this.value).map(e=>this.renderLevel(e))}
92
+ `}renderLevel(e){let t=t=>{t&&t.addEventListener(`value-input`,t=>{this.value={...this.value,[e]:t.detail},this.valueInput(this.value)})},n=it.subjective[e];return F`
93
93
  <scorad-label class="${g(e)} row"
94
94
  text="${n.text}"
95
95
  description="${n.description}">
96
96
  <scorad-options ${t}
97
97
  min="0" max="10" show-hue tabindex="0"></scorad-options>
98
98
  </scorad-label>
99
- `}valueInput;valueChange};L([C(`value`)],q.prototype,`afterRender`,null),L([x()],q.prototype,`valueInput`,void 0),L([x()],q.prototype,`valueChange`,void 0),q=L([b({tag:st,css:[R,ot],delegatesFocus:!0})],q);var ct=`:host{--host-display:inline-flex;--host-outline-hover:var(--scorad-weightings-outline-hover,dashed 2px var(--host-primary-color));--host-outline-focus:var(--scorad-weightings-outline-focus,solid 2px var(--host-primary-color));padding:0 var(--host-padding-unit);border-radius:var(--host-border-radius);justify-content:center;align-items:baseline;position:relative}:host(:hover){outline:var(--host-outline-hover)}:host(:focus-within){outline:var(--host-outline-focus)}scorad-options{--host-option-width:auto;--host-option-height:auto}`,lt=`scorad-weightings`,J=class extends S{connectedCallback(){this.render()}value=!1;afterRender(){if(this.value==null){this.value=!1;return}if(!this.shadowRoot)return;let e=this.shadowRoot.querySelector(`scorad-options`);e&&(e.value=this.value?1:0,e.text=[`Adult`,`Child`])}render(){return I`
99
+ `}valueInput;valueChange};I([_({name:`has-errors`,write:e=>e==null?void 0:``,read:!1})],J.prototype,`errors`,void 0),I([S(`value`,`errors`)],J.prototype,`afterRender`,null),I([b()],J.prototype,`valueInput`,void 0),I([b()],J.prototype,`valueChange`,void 0),J=I([y({tag:dt,css:[L,ut],delegatesFocus:!0})],J);var ft=`:host{--host-display:inline-flex;padding:0 var(--host-padding-unit);border-radius:var(--host-border-radius);justify-content:center;align-items:baseline;position:relative}:host(:hover){outline:var(--host-outline-hover)}:host(:focus-within){outline:var(--host-outline-focus)}scorad-options{--host-option-width:auto;--host-option-height:auto}`,pt=`scorad-weightings`,Y=class extends x{connectedCallback(){this.render()}value=!1;afterRender(){if(this.value==null){this.value=!1;return}if(!this.shadowRoot)return;let e=this.shadowRoot.querySelector(`scorad-options`);e&&(e.value=this.value?1:0,e.text=[`Adult`,`Child`])}render(){return F`
100
100
  <scorad-options ${e=>{e.addEventListener(`value-input`,e=>{this.value=e.detail===1,this.valueInput(this.value)})}}
101
101
  min="0" max="1" tabindex="0"
102
102
  ></scorad-options>
103
- `}valueInput;valueChange};L([C(`value`)],J.prototype,`afterRender`,null),L([x()],J.prototype,`valueInput`,void 0),L([x()],J.prototype,`valueChange`,void 0),J=L([b({tag:lt,css:[R,ct],delegatesFocus:!0})],J);let ut=e=>e?.child?$e:Qe,Y=e=>{let t=[],n=(e,n,r)=>{for(let[i,a]of Object.entries(e))(a<0||a>r)&&t.push(Y.formatError(n,i,r,a))},r={...e?.extent??z},i=ut(e);for(let[e,t]of Object.entries(i))t===0&&delete r[e];return n(r,`extent`,100),n(e?.intensity??B,`intensity`,3),n(e?.subjective??V,`subjective`,10),t.length?m.Fail(t):m.Ok(e)};Y.formatError=(e,t,n,r)=>`${e}.${t}: must be between 0 and ${n}, but received ${r}.`;let dt=e=>{let t=Y(e);if(t instanceof p)return t;e=t.value;let n=ut(e),r=Object.entries(e.extent).reduce((e,[t,r])=>e+r*n[t],0),i=Object.values(e.intensity).reduce((e,t)=>e+t,0),a=e.subjective.pruritus+e.subjective.sleeplessness,o=Math.round((r/5+7*i/2+a)*100)/100;return m.Ok({A:r,B:i,C:a,total:o})};var ft=`scorad-component`,X=class extends S{connectedCallback(){this.render()}value=H;afterRender(){if(this.value==null){this.value=H;return}if(!this.shadowRoot)return;let e=this.shadowRoot.querySelector(`#score`);if(!e)return;let t=dt(this.value).orNull();e.innerText=`${t?.total??`--.--`}`;let n=this.shadowRoot.querySelector(`scorad-extent`);n&&(n.child=this.value?.child??!1,n.value=this.value?.extent??z,n.score=t?.A);let r=this.shadowRoot.querySelector(`scorad-weightings`);r&&(r.value=this.value?.child??!1);let i=this.shadowRoot.querySelector(`scorad-intensity`);i&&(i.value=this.value?.intensity??B,i.score=t?.B);let a=this.shadowRoot.querySelector(`scorad-subjective`);a&&(a.value=this.value?.subjective??V,a.score=t?.B)}render(){return I`
104
- <section>
105
- <h3>A</h3>
106
- <scorad-weightings ${e=>{e instanceof J&&e.addEventListener(`value-input`,e=>{this.value={...this.value,child:e.detail}})}}></scorad-weightings>
107
- <scorad-extent ${e=>{e instanceof U&&e.addEventListener(`value-input`,e=>{this.value={...this.value,extent:e.detail}})}}></scorad-extent>
108
- </section>
103
+ `}valueInput;valueChange};I([S(`value`)],Y.prototype,`afterRender`,null),I([b()],Y.prototype,`valueInput`,void 0),I([b()],Y.prototype,`valueChange`,void 0),Y=I([y({tag:pt,css:[L,ft],delegatesFocus:!0})],Y);let mt=e=>{let t=W(e);if(t instanceof h)return t;e=t.value;let n=U(e),r=Object.entries(e.extent).reduce((e,[t,r])=>e+r*n[t],0),i=Object.values(e.intensity).reduce((e,t)=>e+t,0),a=e.subjective.pruritus+e.subjective.sleeplessness,o=Math.round((r/5+7*i/2+a)*100)/100;return te.Ok({A:r,B:i,C:a,total:o})};var X=`:host{--host-display:var(--scorad-label-display,inline-flex);--host-options:var(--scorad-label-options,solid 1px var(--host-color));--host-text-min-width:var(--scorad-label-text-min-width,none);--host-text-max-width:var(--scorad-label-text-max-width,none);grid-column:1/3;grid-template-columns:subgrid;padding:var(--host-padding-unit);border-radius:var(--host-border-radius-outer);flex-wrap:wrap;align-content:baseline;align-items:baseline;position:relative}:host(:hover){outline:var(--host-outline-hover)}:host(:focus-within){outline:var(--host-outline-focus)}:host>label{min-width:var(--host-text-min-width);max-width:var(--host-text-max-width)}:host>label>slot[name=text]{transition:all .2s ease-in-out;display:block}:host>label>slot[name=description]{opacity:0;margin-bottom:-1.1em;transition:all .4s ease-in-out;display:block}:host(:hover)>label>slot[name=text],:host(:focus-within)>label>slot[name=text]{transform:translateY(-.5em)}:host(:hover)>label>slot[name=description],:host(:focus-within)>label>slot[name=description]{opacity:.667;transform:translateY(-.6em)}@media print{:host>label>slot[name=text]{transform:translateY(-.5em)}:host>label>slot[name=description]{opacity:.667;transform:translateY(-.6em)}}:host>label{padding:var(--host-padding-unit);flex:1;padding-left:0}`,ht=`scorad-label`,gt=class extends x{connectedCallback(){this.render(),this.addEventListener(`click`,this._handleClick)}diconnectedCallback(){this.removeEventListener(`click`,this._handleClick)}_handleClick=e=>{this.querySelector(i)?.focus()};text=`(label)`;description;render(){return F`
104
+ <label>
105
+ <slot name="text"><span>${this.text}</span></slot>
106
+ <slot name="description"><small>${this.description}</small></slot>
107
+ </label>
108
+ <slot></slot>
109
+ `}};I([_({write:!1})],gt.prototype,`text`,void 0),I([_({write:!1})],gt.prototype,`description`,void 0),gt=I([y({tag:ht,css:[L,X]})],gt);var _t=`scorad-component`,Z=class extends x{connectedCallback(){this.render()}value=nt;showErrors=!1;afterRender(){if(this.value==null){this.value=nt;return}if(!this.shadowRoot)return;let e=this.shadowRoot.querySelector(`#score`);if(!e)return;let t=mt(this.value).orNull(),n={},r=W(this.value).errors.reduce((e,t)=>{let n=t.indexOf(`:`);return p(e,t.substring(0,n),t.substring(n+2))},n);e.innerText=`${t?.total??`Get Score`}`,e.style.color=this.showErrors&&r!=n?`var(--host-error-color)`:``;let i=this.shadowRoot.querySelector(`scorad-subjective`);i&&(i.value=this.value?.subjective??B,i.score=t?.B,this.showErrors&&(i.errors=d(r,`subjective`)));let a=this.shadowRoot.querySelector(`scorad-intensity`);a&&(a.value=this.value?.intensity??z,a.score=t?.B,this.showErrors&&(a.errors=d(r,`intensity`)));let o=this.shadowRoot.querySelector(`scorad-extent`);o&&(o.child=this.value?.child??!1,o.value=this.value?.extent??R,o.score=t?.A,this.showErrors&&(o.errors=d(r,`extent`)));let s=this.shadowRoot.querySelector(`scorad-weightings`);s&&(s.value=this.value?.child??!1)}render(){return F`
110
+ <scorad-label id="extent-label">
111
+ <h3 slot="text">A</h3>
112
+ <p slot="description">extent - effected surface area</p>
113
+ <scorad-weightings ${e=>{e instanceof Y&&(e.addEventListener(`value-input`,e=>{this.value={...this.value,child:e.detail},this.valueInput(this.value)}),e.addEventListener(`value-change`,e=>{this.value={...this.value,child:e.detail},this.valueChange(this.value)}))}}></scorad-weightings>
114
+ <scorad-extent tabindex="0" ${e=>{e instanceof G&&(e.addEventListener(`value-input`,e=>{this.value={...this.value,extent:e.detail},this.valueInput(this.value)}),e.addEventListener(`value-change`,e=>{this.value={...this.value,extent:e.detail},this.valueChange(this.value)}))}}></scorad-extent>
115
+ </scorad-label>
109
116
 
110
- <section>
111
- <h3>B</h3>
112
- <scorad-intensity ${e=>{e instanceof K&&e.addEventListener(`value-input`,e=>{this.value={...this.value,intensity:e.detail}})}}></scorad-intensity>
113
- </section>
117
+ <scorad-label id="intensity-label">
118
+ <h3 slot="text">B</h3>
119
+ <p slot="description">intensity - clinical sign severity</p>
120
+ <scorad-intensity tabindex="0" ${e=>{e instanceof q&&(e.addEventListener(`value-input`,e=>{this.value={...this.value,intensity:e.detail},this.valueInput(this.value)}),e.addEventListener(`value-change`,e=>{this.value={...this.value,intensity:e.detail},this.valueChange(this.value)}))}}></scorad-intensity>
121
+ </scorad-label>
114
122
 
115
- <section>
116
- <h3>C</h3>
117
- <scorad-subjective ${e=>{e instanceof q&&e.addEventListener(`value-input`,e=>{this.value={...this.value,subjective:e.detail}})}}></scorad-subjective>
118
- </section>
123
+ <scorad-label id="subjective-label">
124
+ <h3 slot="text">C</h3>
125
+ <p slot="description">subjective - patient reported symptoms</p>
126
+ <scorad-subjective tabindex="0" ${e=>{e instanceof J&&(e.addEventListener(`value-input`,e=>{this.value={...this.value,subjective:e.detail},this.valueInput(this.value)}),e.addEventListener(`value-change`,e=>{this.value={...this.value,subjective:e.detail},this.valueChange(this.value)}))}}></scorad-subjective>
127
+ </scorad-label>
119
128
 
120
- <scorad-label
129
+ <scorad-label id="score-label"
121
130
  text="SCORAD"
122
131
  description="(A / 5) + (7 * B / 2) + C"
132
+ ${e=>{e instanceof gt&&e.addEventListener(`click`,()=>{if(!this.shadowRoot)return;this.showErrors=!0;let e=this.shadowRoot.querySelector(`[has-errors]`);e&&(e.focus({preventScroll:!0}),e.scrollIntoView({behavior:`smooth`,block:`start`}))})}}
123
133
  >
124
134
  <span id="score" tabindex="0"></span>
125
135
  </scorad-label>
126
- `}};L([C(`value`)],X.prototype,`afterRender`,null),X=L([b({tag:ft,css:[R,Ze],delegatesFocus:!0})],X);let pt=s(`@ntix/components-scorad`,typeof ANTIX_COMPONENTS_SCORAD_LOG_LEVEL>`u`?a.warn:ANTIX_COMPONENTS_SCORAD_LOG_LEVEL);var Z=`:host{--host-display:inline-flex;--host-options:var(--scorad-label-options,solid 1px var(--host-color));--host-hover:var(--scorad-label-hover,dashed 2px var(--host-primary-color));--host-focus:var(--scorad-label-focus,solid 2px var(--host-primary-color));padding:var(--host-padding-unit);border-radius:var(--host-border-radius-outer);flex-wrap:wrap;align-items:baseline;position:relative}:host(:hover){outline:var(--host-hover)}:host(:focus-within){outline:var(--host-focus)}:host>label>span{transition:all .2s ease-in-out;display:block}:host>label>small{opacity:0;height:0;transition:all .4s ease-in-out;display:block}:host(:hover)>label>span,:host(:focus-within)>label>span{transform:translateY(-.5em)}:host(:hover)>label>small,:host(:focus-within)>label>small{opacity:.667;transform:translateY(-.6em)}:host>label{padding:var(--host-padding-unit);flex:1;padding-left:0}`,mt=`scorad-label`,ht=class extends S{connectedCallback(){this.render(),this.addEventListener(`mousedown`,this._handleClick)}_handleClick=e=>{this.querySelector(i)?.focus()};text=`(label)`;description;render(){return I`
127
- <label>
128
- <span>${this.text}</span>
129
- <small>${this.description}</small>
130
- </label>
131
- <slot></slot>
132
- `}};L([_({write:!1})],ht.prototype,`text`,void 0),L([_({write:!1})],ht.prototype,`description`,void 0),ht=L([b({tag:mt,css:[R,Z]})],ht),Object.defineProperty(e,`HTMLScoradElement`,{enumerable:!0,get:function(){return X}}),Object.defineProperty(e,`HTMLScoradExtentElement`,{enumerable:!0,get:function(){return U}}),Object.defineProperty(e,`HTMLScoradIntensityElement`,{enumerable:!0,get:function(){return K}}),Object.defineProperty(e,`HTMLScoradLabelElement`,{enumerable:!0,get:function(){return ht}}),Object.defineProperty(e,`HTMLScoradOptionsElement`,{enumerable:!0,get:function(){return G}}),Object.defineProperty(e,`HTMLScoradSubjectiveElement`,{enumerable:!0,get:function(){return q}}),Object.defineProperty(e,`HTMLScoradWeightingsElement`,{enumerable:!0,get:function(){return J}}),e.SCORAD_ADULT_WEIGHTS=Qe,e.SCORAD_CHILD_WEIGHTS=$e,e.SCORAD_DEFAULT=H,e.SCORAD_EXTENT_DEFAULT=z,e.SCORAD_EXTENT_MAX_VALUE=100,e.SCORAD_INTENSITY_DEFAULT=B,e.SCORAD_INTENSITY_MAX_VALUE=3,e.SCORAD_SUBJECTIVE_DEFAULT=V,e.SCORAD_SUBJECTIVE_MAX_VALUE=10,e.ScoradResources=W,e.componentsScoradLogger=pt,e.getScoradScore=dt,e.selectScoradWeights=ut,e.validateScoradData=Y});
136
+ `}valueInput;valueChange};I([S(`value`,`showErrors`)],Z.prototype,`afterRender`,null),I([b()],Z.prototype,`valueInput`,void 0),I([b()],Z.prototype,`valueChange`,void 0),Z=I([y({tag:_t,css:[L,tt],delegatesFocus:!0})],Z);let vt=s(`@ntix/components-scorad`,typeof ANTIX_COMPONENTS_SCORAD_LOG_LEVEL>`u`?a.warn:ANTIX_COMPONENTS_SCORAD_LOG_LEVEL);Object.defineProperty(e,`HTMLScoradElement`,{enumerable:!0,get:function(){return Z}}),Object.defineProperty(e,`HTMLScoradExtentElement`,{enumerable:!0,get:function(){return G}}),Object.defineProperty(e,`HTMLScoradIntensityElement`,{enumerable:!0,get:function(){return q}}),Object.defineProperty(e,`HTMLScoradLabelElement`,{enumerable:!0,get:function(){return gt}}),Object.defineProperty(e,`HTMLScoradOptionsElement`,{enumerable:!0,get:function(){return K}}),Object.defineProperty(e,`HTMLScoradSubjectiveElement`,{enumerable:!0,get:function(){return J}}),Object.defineProperty(e,`HTMLScoradWeightingsElement`,{enumerable:!0,get:function(){return Y}}),e.SCORAD_ADULT_WEIGHTS=rt,e.SCORAD_CHILD_WEIGHTS=V,e.SCORAD_DEFAULT=nt,e.SCORAD_EXTENT_DEFAULT=R,e.SCORAD_EXTENT_MAX_VALUE=100,e.SCORAD_INTENSITY_DEFAULT=z,e.SCORAD_INTENSITY_MAX_VALUE=3,e.SCORAD_SUBJECTIVE_DEFAULT=B,e.SCORAD_SUBJECTIVE_MAX_VALUE=10,e.ScoradResources=it,e.componentsScoradLogger=vt,e.getScoradScore=mt,e.selectScoradWeights=U,e.validateScoradData=W});
@@ -1,4 +1,4 @@
1
- import { HTMLComponentElement } from '@ntix/components-core';
1
+ import { HTMLComponentElement, EventEmitter } from '@ntix/components-core';
2
2
  import { ScoradData } from './ScoradData';
3
3
  export interface HTMLScoradElementEventMap extends HTMLElementEventMap {
4
4
  'value-input': CustomEvent<number>;
@@ -7,6 +7,9 @@ export interface HTMLScoradElementEventMap extends HTMLElementEventMap {
7
7
  export declare class HTMLScoradElement extends HTMLComponentElement<HTMLScoradElementEventMap> {
8
8
  connectedCallback(): void;
9
9
  value: ScoradData;
10
+ showErrors: boolean;
10
11
  afterRender(): void;
11
12
  render(): import('@ntix/components-renderer').HTMLLiteralResult;
13
+ valueInput: EventEmitter<ScoradData>;
14
+ valueChange: EventEmitter<ScoradData>;
12
15
  }
@@ -6,9 +6,16 @@ export interface HTMLScoradExtentElementEventMap extends HTMLElementEventMap {
6
6
  }
7
7
  export declare class HTMLScoradExtentElement extends HTMLComponentElement<HTMLScoradExtentElementEventMap> {
8
8
  connectedCallback(): void;
9
+ disconnectedCallback(): void;
10
+ private handleFocusIn;
11
+ private handleFocusOut;
9
12
  child: boolean;
13
+ readonly: boolean;
14
+ committedValue: ScoradExtentData;
10
15
  value: ScoradExtentData;
11
16
  score?: number;
17
+ setValue: (value: ScoradExtentData) => void;
18
+ errors?: Record<string, string>;
12
19
  afterRender(): void;
13
20
  resizeCallback(): void;
14
21
  render(): import('@ntix/components-renderer').HTMLLiteralResult;
@@ -6,8 +6,10 @@ export interface HTMLScoradIntensityElementEventMap extends HTMLElementEventMap
6
6
  }
7
7
  export declare class HTMLScoradIntensityElement extends HTMLComponentElement<HTMLScoradIntensityElementEventMap> {
8
8
  connectedCallback(): void;
9
+ readonly: boolean;
9
10
  value: ScoradIntensityData;
10
11
  score?: number;
12
+ errors?: Record<string, string>;
11
13
  afterRender(): void;
12
14
  render(): import('@ntix/components-renderer').HTMLLiteralResult;
13
15
  renderLevel(name: keyof ScoradIntensityData): import('@ntix/components-renderer').HTMLLiteralResult;
@@ -3,6 +3,7 @@ export interface HTMLScoradLabelElementEventMap extends HTMLElementEventMap {
3
3
  }
4
4
  export declare class HTMLScoradLabelElement extends HTMLComponentElement<HTMLScoradLabelElementEventMap> {
5
5
  connectedCallback(): void;
6
+ diconnectedCallback(): void;
6
7
  _handleClick: (_: MouseEvent) => void;
7
8
  text: string;
8
9
  description?: string;
@@ -6,12 +6,10 @@ export interface HTMLScoradOptionsElementEventMap extends HTMLElementEventMap {
6
6
  export declare class HTMLScoradOptionsElement extends HTMLComponentElement<HTMLScoradOptionsElementEventMap> {
7
7
  connectedCallback(): void;
8
8
  disconnectedCallback(): void;
9
- _handleFocusIn: () => void;
10
- _handleFocusOut: () => void;
11
- _handleDown: (e: PointerEvent) => void;
12
- _handleUp: (e: PointerEvent) => void;
13
- _handleMove: (e: PointerEvent) => void;
14
- _handleKeydown: (e: KeyboardEvent) => void;
9
+ private handleFocusIn;
10
+ private handleFocusOut;
11
+ private handleClick;
12
+ private handleKeydown;
15
13
  min: number;
16
14
  max: number;
17
15
  showHue: boolean;
@@ -8,6 +8,7 @@ export declare class HTMLScoradSubjectiveElement extends HTMLComponentElement<HT
8
8
  connectedCallback(): void;
9
9
  value: ScoradSubjectiveData;
10
10
  score?: number;
11
+ errors?: Record<string, string>;
11
12
  afterRender(): void;
12
13
  render(): import('@ntix/components-renderer').HTMLLiteralResult;
13
14
  renderLevel(name: keyof ScoradSubjectiveData): import('@ntix/components-renderer').HTMLLiteralResult;
@@ -10,4 +10,5 @@ import { ScoradData } from './ScoradData';
10
10
  export declare const validateScoradData: {
11
11
  (data: ScoradData | null | undefined): Result<ScoradData>;
12
12
  formatError(name: string, key: string, max: number, value: number): string;
13
+ isValid(n: number, max: number): boolean;
13
14
  };
package/package.json CHANGED
@@ -1,10 +1,12 @@
1
1
  {
2
2
  "name": "@ntix/components-scorad",
3
- "version": "1.0.1",
3
+ "version": "1.0.3",
4
+ "homepage": "https://antix.co.uk/scorad",
4
5
  "type": "module",
5
6
  "publishConfig": {
6
7
  "access": "public"
7
8
  },
9
+ "license": "SEE LICENSE IN LICENSE.md",
8
10
  "main": "./dist/@ntix/components-scorad.umd.js",
9
11
  "module": "./dist/@ntix/components-scorad.es.js",
10
12
  "types": "./dist/index.d.ts",
@@ -13,17 +15,19 @@
13
15
  "types": "./dist/index.d.ts",
14
16
  "import": "./dist/@ntix/components-scorad.es.js",
15
17
  "require": "./dist/@ntix/components-scorad.umd.js"
16
- },
17
- "./style.css": "./src/vars.css"
18
+ }
18
19
  },
19
20
  "files": [
20
21
  "dist",
21
- "src/vars.css"
22
+ "README.md",
23
+ "LICENSE.md",
24
+ "VALIDATION.md"
22
25
  ],
23
26
  "scripts": {
24
27
  "dev": "vite",
25
28
  "test": "vitest run",
26
29
  "build": "vite build",
27
- "preview": "vite preview"
30
+ "preview": "vite preview",
31
+ "prepublishOnly": "npm run test && npm run build"
28
32
  }
29
33
  }
package/src/vars.css DELETED
@@ -1,56 +0,0 @@
1
- * {
2
- box-sizing: border-box;
3
- }
4
-
5
- :root {
6
- /***** general *****/
7
-
8
- --unit: 1rem;
9
- --padding-unit: calc(.333 * var(--unit));
10
- --spacing-unit: calc(.2 * var(--unit));
11
-
12
- --font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
13
-
14
- --color: #222;
15
- --background-color: #eee;
16
-
17
- --background-color-dark: #ddd;
18
- --background-color-light: #fff;
19
-
20
- --lowlight-color: #111;
21
- --highlight-color: #fff;
22
-
23
- --border-radius: 3px;
24
-
25
- --shadow-large: 5px 5px 20px #0006;
26
-
27
- --animation-duration: .2s;
28
-
29
- /***** a-icon *****/
30
-
31
- --icon-size: 1em;
32
- --icon-outline-size: .0075em;
33
-
34
- /***** a-notifications *****/
35
-
36
- --notifications-border-radius: 9px;
37
- --notifications-overlay-color: var(--lowlight-more);
38
-
39
- --notifications-header-background-color: transparent;
40
- --notifications-footer-background-color: transparent;
41
-
42
- --notifications-padding: var(--padding-unit);
43
-
44
- /***** a-toggle *****/
45
-
46
- --toggle-border-radius: 30px;
47
-
48
- /***** a-options *****/
49
-
50
-
51
- /*
52
- --option-background-color: var(--background-color);
53
-
54
- --options-border-width: 2px; */
55
-
56
- }