{"version":3,"file":"index.es.min.js","sources":["../../../packages/helpers/src/props.helpers.js","../../../packages/components/src/energy-label/energyLabel.js"],"sourcesContent":["const getData = attributes => attributes.find(attribute => attribute.nodeName === 'data')\n\nconst createProps = attributes => {\n const data = getData([...attributes])\n const props = [...attributes]\n .filter(attribute => attribute.nodeName !== 'data')\n .reduce((all, attr) => {\n return { ...all, [attr.nodeName]: attr.nodeValue }\n }, {})\n\n if (isNil(data)) {\n return props\n }\n\n try {\n return { ...props, ...JSON.parse(data.nodeValue) }\n } catch (error) {\n console.log('ERROR: No data', error, data?.nodeValue)\n }\n}\n\nconst isNil = obj => obj === undefined || obj === null\n\nexport const parseBool = value => (!value || value === 'false' ? false : true)\n\nexport default createProps\n","import createProps from '@kissui/helpers/src/props.helpers'\n\nclass EnergyLabel extends HTMLElement {\n constructor() {\n super()\n this.props = {}\n this.level = ''\n this.levelPlus = ''\n }\n\n connectedCallback() {\n this.props = createProps(this.attributes)\n this.render()\n }\n\n render() {\n const { a11y_label, level } = this.props\n\n if (a11y_label === '' || level === '') {\n return ''\n }\n\n this.classList.add(`level_${level}`)\n\n switch (level) {\n case 'g':\n this.level = 'G'\n break\n case 'f':\n this.level = 'F'\n break\n case 'e':\n this.level = 'E'\n break\n case 'd':\n this.level = 'D'\n break\n case 'c':\n this.level = 'C'\n break\n case 'b':\n this.level = 'B'\n break\n case 'a4':\n this.level = 'A'\n break\n case 'a3':\n this.level = 'A'\n this.levelPlus = '+'\n break\n case 'a2':\n this.level = 'A'\n this.levelPlus = '++'\n break\n default:\n this.level = 'A'\n this.levelPlus = '+++'\n break\n }\n\n this.innerHTML = `\n <mark>\n ${this.level}\n ${this.levelPlus !== '' ? `<sup>${this.levelPlus}</sup>` : ''}\n <span class=\"sr-only\">${a11y_label} ${this.level}${this.levelPlus}</span>\n </mark>\n `\n }\n}\n\ncustomElements.get('nb-energy-label') || customElements.define('nb-energy-label', EnergyLabel)\n\nexport default EnergyLabel\n"],"names":["isNil","obj","EnergyLabel","HTMLElement","constructor","this","props","level","levelPlus","connectedCallback","attributes","data","find","attribute","nodeName","getData","filter","reduce","all","attr","nodeValue","JSON","parse","error","console","log","createProps","render","a11y_label","classList","add","innerHTML","customElements","get","define"],"mappings":"AAAA,MAqBMA,EAAQC,GAAoC,MAARA,ECnB1C,MAAMC,UAAoBC,YACtBC,WAAAA,WAEIC,KAAKC,MAAQ,GACbD,KAAKE,MAAQ,GACbF,KAAKG,UAAY,EACrB,CAEAC,iBAAAA,GACIJ,KAAKC,MDTOI,CAAAA,IACVC,MAAAA,EAHMD,CAAAA,GAAcA,EAAWE,MAAKC,GAAoC,SAAvBA,EAAUC,WAGpDC,CAAQ,IAAIL,IACnBJ,EAAQ,IAAII,GACbM,QAAOH,GAAoC,SAAvBA,EAAUC,WAC9BG,QAAO,CAACC,EAAKC,KACH,IAAKD,EAAK,CAACC,EAAKL,UAAWK,EAAKC,aACxC,CAAE,GAET,GAAIpB,EAAMW,GACCL,OAAAA,EAGP,IACO,MAAA,IAAKA,KAAUe,KAAKC,MAAMX,EAAKS,WACzC,OAAQG,GACLC,QAAQC,IAAI,iBAAkBF,EAAOZ,GAAMS,UAC/C,GCPiBM,CAAYrB,KAAKK,YAC9BL,KAAKsB,QACT,CAEAA,MAAAA,GACU,MAAEC,WAAAA,EAAYrB,MAAAA,GAAUF,KAAKC,MAE/BsB,GAAe,KAAfA,GAA+B,KAAVrB,EACd,MAAA,GAKX,OAFAF,KAAKwB,UAAUC,IAAI,SAASvB,KAEpBA,GACJ,IAAK,IACDF,KAAKE,MAAQ,IACb,MACJ,IAAK,IACDF,KAAKE,MAAQ,IACb,MACJ,IAAK,IACDF,KAAKE,MAAQ,IACb,MACJ,IAAK,IACDF,KAAKE,MAAQ,IACb,MACJ,IAAK,IACDF,KAAKE,MAAQ,IACb,MACJ,IAAK,IACDF,KAAKE,MAAQ,IACb,MACJ,IAAK,KACDF,KAAKE,MAAQ,IACb,MACJ,IAAK,KACIA,KAAAA,MAAQ,IACbF,KAAKG,UAAY,IACjB,MACJ,IAAK,KACID,KAAAA,MAAQ,IACbF,KAAKG,UAAY,KACjB,MACJ,QACSD,KAAAA,MAAQ,IACbF,KAAKG,UAAY,MAIzBH,KAAK0B,UAAY,yCAEP1B,KAAKE,0BACc,KAAnBF,KAAKG,UAAmB,QAAQH,KAAKG,kBAAoB,6CACnCoB,KAAcvB,KAAKE,QAAQF,KAAKG,iDAGpE,EAGJwB,eAAeC,IAAI,oBAAsBD,eAAeE,OAAO,kBAAmBhC"}