{"version":3,"file":"element.cjs","sources":["../src/element.ts","aruco-marker.modern.js"],"sourcesContent":["import { arucoToSVGString } from 'aruco-marker';\n\nclass ArucoMarkerElement extends HTMLElement {\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\tstatic get observedAttributes() {\n\t\treturn ['markerid', 'size'];\n\t}\n\n\tconnectedCallback() {\n\t\tif (!this.shadowRoot) {\n\t\t\tthis.attachShadow({ mode: 'open' });\n\t\t\tthis._upgradeProperty('markerId');\n\t\t\tthis._upgradeProperty('size');\n\t\t}\n\n\t\tconst svgContents = arucoToSVGString(this.markerId, this.size ?? undefined);\n\t\tthis.shadowRoot!.innerHTML = svgContents;\n\t}\n\n\t_upgradeProperty(prop: 'markerId' | 'size') {\n\t\tif (this.hasOwnProperty(prop)) {\n\t\t\tlet value = this[prop];\n\t\t\tdelete this[prop];\n\t\t\t// @ts-expect-error ts(2322)\n\t\t\tthis[prop] = value;\n\t\t}\n\t}\n\n\tattributeChangedCallback() {\n\t\tthis.connectedCallback();\n\t}\n\n\tpublic get markerId() {\n\t\tconst markerId = parseInt(this.getAttribute('markerid') ?? '', 10);\n\t\tif (Number.isNaN(markerId)) {\n\t\t\tthrow new Error('markerid attribute must be set');\n\t\t}\n\t\treturn markerId;\n\t}\n\n\tpublic set markerId(value: number) {\n\t\tthis.setAttribute('markerid', value.toString());\n\t}\n\n\tpublic get size() {\n\t\treturn this.getAttribute('size');\n\t}\n\n\tpublic set size(value: string | null) {\n\t\tif (!value) {\n\t\t\tthis.removeAttribute('size');\n\t\t} else {\n\t\t\tthis.setAttribute('size', value);\n\t\t}\n\t}\n}\n\ncustomElements.define('aruco-marker', ArucoMarkerElement, {});\n","function t(t){if(t<0||t>1023)throw new RangeError(\"Marker ID must be in the range [0..1023]\");const e=[16,23,9,14];let r=0,n=0,i=0,o=0;const h=[[0,0,0,0,0],[0,0,0,0,0],[0,0,0,0,0],[0,0,0,0,0],[0,0,0,0,0]];for(o=0;o<5;o++)for(r=t>>2*(4-o)&3,n=e[r],i=0;i<5;i++)h[i][o]=n>>4-i&1;return h}function e(e,r){let n=0,i=0;const o=t(e);let h=\"\";for(h=\"<svg \"+(r=r?'height=\"'+r+'\" width=\"'+r+'\"':\"\")+' viewBox=\"0 0 7 7\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\">\\n  <rect x=\"0\" y=\"0\" width=\"7\" height=\"7\" fill=\"black\"/>\\n',i=0;i<5;i++)for(n=0;n<5;n++)1===o[n][i]&&(h+='  <rect x=\"'+(n+1)+'\" y=\"'+(i+1)+'\" width=\"1\" height=\"1\" fill=\"white\" stroke=\"white\" stroke-width=\"0.01\" />\\n');return h+=\"</svg>\",h}export{t as arucoMarkerMatrix,e as arucoToSVGString};\n//# sourceMappingURL=aruco-marker.modern.js.map\n"],"names":["ArucoMarkerElement","_HTMLElement","call","_proto","prototype","_createClass","connectedCallback","_this$size","this","shadowRoot","attachShadow","mode","_upgradeProperty","svgContents","e","r","n","i","o","t","RangeError","h","arucoToSVGString","markerId","size","undefined","innerHTML","prop","hasOwnProperty","value","attributeChangedCallback","key","get","_this$getAttribute","parseInt","getAttribute","Number","isNaN","Error","set","setAttribute","toString","removeAttribute","_wrapNativeSuper","HTMLElement","customElements","define"],"mappings":"giDAAgD,IAE1CA,eAAmB,SAAAC,GACxB,SAAAD,IACC,OAAAC,EAAAC,gBACD,WAACD,KAAAD,yEAAA,IAAAG,EAAAH,EAAAI,UA4BAC,OA5BAF,EAMDG,kBAAA,WAAiBC,IAAAA,EACXC,KAAKC,aACTD,KAAKE,aAAa,CAAEC,KAAM,SAC1BH,KAAKI,iBAAiB,YACtBJ,KAAKI,iBAAiB,SAGvB,IAAMC,ECkBQ,SAAiBC,EAAYC,GAC5C,IAAIC,EAAI,EACPC,EAAI,EACCC,WApC2BC,GACjC,GAAIA,EAAK,GAAKA,EAAK,KAClB,UAAUC,WAAW,4CAGtB,IAAMN,EAAM,CAAC,GAAI,GAAI,EAAG,IAEvBE,EAAM,EACNC,EAAI,EACJC,EAAI,EACCG,EAAS,CACd,CAAC,EAAG,EAAG,EAAG,EAAG,GACb,CAAC,EAAG,EAAG,EAAG,EAAG,GACb,CAAC,EAAG,EAAG,EAAG,EAAG,GACb,CAAC,EAAG,EAAG,EAAG,EAAG,GACb,CAAC,EAAG,EAAG,EAAG,EAAG,IAGd,IAAKH,EAAI,EAAGA,EAAI,EAAGA,IAGlB,IADAF,EAAMF,EADGK,GAAO,GAAK,EAAID,GAAO,GAE3BD,EAAI,EAAGA,EAAI,EAAGA,IAClBI,EAAOJ,GAAGC,GAAMF,GAAQ,EAAIC,EAAM,EAIpC,OAAOI,CACR,CASgBF,CAAkBL,GAC7BO,EAAQ,GAcZ,IANAA,EACC,SANAN,EADGA,EACI,WAAaA,EAAO,YAAcA,EAAO,IAEzC,IAIP,kIAKIE,EAAI,EAAGA,EAAI,EAAGA,IAClB,IAAKD,EAAI,EAAGA,EAAI,EAAGA,IACG,IAAjBE,EAAOF,GAAGC,KACbI,GACC,eACCL,EAAI,GACL,SACCC,EAAI,GAHL,+EAaJ,OAFAI,EAAS,QAGV,CDtDsBC,CAAiBd,KAAKe,gBAAQhB,EAAEC,KAAKgB,MAAIjB,OAAIkB,GACjEjB,KAAKC,WAAYiB,UAAYb,CAC9B,EAACV,EAEDS,iBAAA,SAAiBe,GAChB,GAAInB,KAAKoB,eAAeD,GAAO,CAC9B,IAAIE,EAAQrB,KAAKmB,UACNnB,KAACmB,GAEZnB,KAAKmB,GAAQE,CACb,CACF,EAAC1B,EAED2B,yBAAA,WACCtB,KAAKF,mBACN,4GAACD,CAAAL,IAAA+B,IAAA,WAAAC,IAED,WAAmBC,IAAAA,EACZV,EAAWW,gBAAQD,EAACzB,KAAK2B,aAAa,aAAWF,EAAI,GAAI,IAC/D,GAAIG,OAAOC,MAAMd,GAChB,MAAM,IAAIe,MAAM,kCAEjB,OAAOf,CACR,EAACgB,IAED,SAAoBV,GACnBrB,KAAKgC,aAAa,WAAYX,EAAMY,WACrC,GAACV,CAAAA,WAAAC,IAED,WACC,OAAWxB,KAAC2B,aAAa,OAC1B,EAACI,IAED,SAAgBV,GACVA,EAGJrB,KAAKgC,aAAa,OAAQX,GAF1BrB,KAAKkC,gBAAgB,OAIvB,IAACX,CAAAA,CAAAA,IAAAC,qBAAAA,IAlDD,WACC,MAAO,CAAC,WAAY,OACrB,IAAC,CAPuB,cAOvBW,EAP+BC,cA0DjCC,eAAeC,OAAO,eAAgB9C,EAAoB"}