{"version":3,"file":"index.es.min.js","sources":["../../../packages/helpers/src/props.helpers.js","../../../packages/page-builder-sections/src/text-chunk/text-chunk.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 TextChunk extends HTMLElement {\n connectedCallback() {\n this.props = createProps(this.attributes)\n this.classes = this.createClasses()\n this.render()\n }\n\n createClasses() {\n const { layout } = this.props\n if (!layout) {\n return\n }\n\n const baseClass = 'text-chunk'\n\n return {\n smallHeading: `${baseClass}__small-heading t-xs-700-caps-sl`,\n heading: `${baseClass}__heading h-3xl-700`,\n subHeading: `${baseClass}__sub-heading t-md-400`,\n description: `${baseClass}__description t-sm-400`\n }\n }\n\n render() {\n const { campaign, layout } = this.props\n\n const { id, creative, name, position } = campaign\n const {\n padding_top,\n padding_bottom,\n background_color,\n alignment = 'center',\n restrict = true,\n contrast\n } = layout\n\n let style = []\n alignment && style.push('text-align: ' + alignment)\n style = style.join(';')\n\n this.innerHTML = `\n <nb-container\n background_color=\"${background_color}\"\n campaign_id=\"${id}\"\n campaign_name=\"${name}\"\n campaign_creative=\"${creative}\"\n campaign_position=\"${position}\"\n classname=\"${padding_top} ${padding_bottom} ${this.classes.baseClass}\"\n contrast=\"${contrast}\"\n styles='${style}'>\n ${this.renderBody()}\n </nb-container>\n `\n if (restrict) {\n this.querySelector('.cb-inner').classList.add('cb-specific-restrict')\n }\n }\n\n renderBody() {\n const { small_heading, heading, sub_heading, description } = this.props.copywriting\n return `${\n small_heading ? `<p class='${this.classes.smallHeading}'>${small_heading}</p>` : ''\n }\n ${heading ? `<h2 class='${this.classes.heading}'>${heading}</h2>` : ''}\n ${sub_heading ? `<p class='${this.classes.subHeading}'>${sub_heading}</p>` : ''}\n ${description ? `<p class='${this.classes.description}'>${description}</p>` : ''}`\n }\n}\n\n// Registers custom element\ncustomElements.get('nb-text-chunk') || customElements.define('nb-text-chunk', TextChunk)\n\nexport default TextChunk\n"],"names":["isNil","obj","TextChunk","HTMLElement","connectedCallback","props","attributes","data","find","attribute","nodeName","getData","filter","reduce","all","attr","nodeValue","JSON","parse","error","console","log","createProps","this","classes","createClasses","render","layout","baseClass","smallHeading","heading","subHeading","description","campaign","id","creative","name","position","padding_top","padding_bottom","background_color","alignment","restrict","contrast","style","push","join","innerHTML","renderBody","querySelector","classList","add","small_heading","sub_heading","copywriting","customElements","get","define"],"mappings":"AAAA,MAqBMA,EAAQC,GAAoC,MAARA,ECnB1C,MAAMC,UAAkBC,YACpBC,iBAAAA,GACSC,KAAAA,MDFOC,CAAAA,IACVC,MAAAA,EAHMD,CAAAA,GAAcA,EAAWE,MAAKC,GAAoC,SAAvBA,EAAUC,WAGpDC,CAAQ,IAAIL,IACnBD,EAAQ,IAAIC,GACbM,QAAOH,GAAoC,SAAvBA,EAAUC,WAC9BG,QAAO,CAACC,EAAKC,KACH,IAAKD,EAAK,CAACC,EAAKL,UAAWK,EAAKC,aACxC,CAAE,GAET,GAAIhB,EAAMO,GACCF,OAAAA,EAGP,IACO,MAAA,IAAKA,KAAUY,KAAKC,MAAMX,EAAKS,WACzC,OAAQG,GACLC,QAAQC,IAAI,iBAAkBF,EAAOZ,GAAMS,UAC/C,GCdiBM,CAAYC,KAAKjB,YAC9BiB,KAAKC,QAAUD,KAAKE,gBACpBF,KAAKG,QACT,CAEAD,aAAAA,GACU,MAAEE,OAAAA,GAAWJ,KAAKlB,MACxB,IAAKsB,EACD,OAGJ,MAAMC,EAAY,aAEX,MAAA,CACHC,aAAc,GAAGD,oCACjBE,QAAS,GAAGF,uBACZG,WAAY,GAAGH,0BACfI,YAAa,GAAGJ,0BAExB,CAEAF,MAAAA,GACU,MAAEO,SAAAA,EAAUN,OAAAA,GAAWJ,KAAKlB,OAE1B6B,GAAAA,EAAIC,SAAAA,EAAUC,KAAAA,EAAMC,SAAAA,GAAaJ,GAErCK,YAAAA,EACAC,eAAAA,EACAC,iBAAAA,EACAC,UAAAA,EAAY,SACZC,SAAAA,GAAW,EACXC,SAAAA,GACAhB,EAEJ,IAAIiB,EAAQ,GACZH,GAAaG,EAAMC,KAAK,eAAiBJ,GACzCG,EAAQA,EAAME,KAAK,KAEnBvB,KAAKwB,UAAY,kEAEWP,oCACLN,sCACEE,0CACID,0CACAE,kCACRC,KAAeC,KAAkBhB,KAAKC,QAAQI,yCAC/Ce,+BACFC,wBACRrB,KAAKyB,sDAGXN,GACAnB,KAAK0B,cAAc,aAAaC,UAAUC,IAAI,uBAEtD,CAEAH,UAAAA,GACU,MAAEI,cAAAA,EAAetB,QAAAA,EAASuB,YAAAA,EAAarB,YAAAA,GAAgBT,KAAKlB,MAAMiD,YACjE,MAAA,GACHF,EAAgB,aAAa7B,KAAKC,QAAQK,iBAAiBuB,QAAsB,uBAE3EtB,EAAU,cAAcP,KAAKC,QAAQM,YAAYA,SAAiB,uBAClEuB,EAAc,aAAa9B,KAAKC,QAAQO,eAAesB,QAAoB,uBAC3ErB,EAAc,aAAaT,KAAKC,QAAQQ,gBAAgBA,QAAoB,IAC1F,EAIJuB,eAAeC,IAAI,kBAAoBD,eAAeE,OAAO,gBAAiBvD"}