{"version":3,"file":"rect.mjs","names":["Data","bitCountS","bitCountToBytes","bitWriter","Rect","xMin","xMax","yMin","yMax","constructor","nBits","Math","max","size","encoder","data","bW","b","value","over"],"sources":["../../src/swf/rect.ts"],"sourcesContent":["import {Data} from './data.ts';\nimport {bitCountS, bitCountToBytes, bitWriter} from './util.ts';\n\n/**\n * Rect object.\n */\nexport class Rect extends Data {\n\t/**\n\t * Minimum X.\n\t */\n\tpublic xMin: number = 0;\n\n\t/**\n\t * Maximum X.\n\t */\n\tpublic xMax: number = 0;\n\n\t/**\n\t * Minimum Y.\n\t */\n\tpublic yMin: number = 0;\n\n\t/**\n\t * Maximum Y.\n\t */\n\tpublic yMax: number = 0;\n\n\t/**\n\t * Rect constructor.\n\t */\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\t/**\n\t * Number of bits need to encode the values.\n\t *\n\t * @returns Bit count.\n\t */\n\tpublic get nBits() {\n\t\treturn Math.max(\n\t\t\tbitCountS(this.xMin),\n\t\t\tbitCountS(this.xMax),\n\t\t\tbitCountS(this.yMin),\n\t\t\tbitCountS(this.yMax)\n\t\t);\n\t}\n\n\t/**\n\t * @inheritdoc\n\t */\n\tpublic get size() {\n\t\treturn bitCountToBytes(5 + this.nBits * 4);\n\t}\n\n\t/**\n\t * @inheritdoc\n\t */\n\tpublic encoder(data: Uint8Array) {\n\t\tconst {nBits} = this;\n\t\tconst bW = bitWriter(data, 0);\n\t\tlet b = 0;\n\t\tbW(nBits, 5, b);\n\t\tb += 5;\n\t\tfor (const value of [this.xMin, this.xMax, this.yMin, this.yMax]) {\n\t\t\tbW(value, nBits, b);\n\t\t\tb += nBits;\n\t\t}\n\t\tconst over = b % 8;\n\t\tif (over) {\n\t\t\tbW(0, 8 - over, b);\n\t\t}\n\t}\n}\n"],"mappings":"AAAA,SAAQA,IAAI,QAAO,YAAW;AAC9B,SAAQC,SAAS,EAAEC,eAAe,EAAEC,SAAS,QAAO,YAAW;;AAE/D;AACA;AACA;AACA,OAAO,MAAMC,IAAI,SAASJ,IAAI,CAAC;EAC9B;AACD;AACA;EACQK,IAAI,GAAW,CAAC;;EAEvB;AACD;AACA;EACQC,IAAI,GAAW,CAAC;;EAEvB;AACD;AACA;EACQC,IAAI,GAAW,CAAC;;EAEvB;AACD;AACA;EACQC,IAAI,GAAW,CAAC;;EAEvB;AACD;AACA;EACCC,WAAWA,CAAA,EAAG;IACb,KAAK,CAAC,CAAC;EACR;;EAEA;AACD;AACA;AACA;AACA;EACC,IAAWC,KAAKA,CAAA,EAAG;IAClB,OAAOC,IAAI,CAACC,GAAG,CACdX,SAAS,CAAC,IAAI,CAACI,IAAI,CAAC,EACpBJ,SAAS,CAAC,IAAI,CAACK,IAAI,CAAC,EACpBL,SAAS,CAAC,IAAI,CAACM,IAAI,CAAC,EACpBN,SAAS,CAAC,IAAI,CAACO,IAAI,CACpB,CAAC;EACF;;EAEA;AACD;AACA;EACC,IAAWK,IAAIA,CAAA,EAAG;IACjB,OAAOX,eAAe,CAAC,CAAC,GAAG,IAAI,CAACQ,KAAK,GAAG,CAAC,CAAC;EAC3C;;EAEA;AACD;AACA;EACQI,OAAOA,CAACC,IAAgB,EAAE;IAChC,MAAM;MAACL;IAAK,CAAC,GAAG,IAAI;IACpB,MAAMM,EAAE,GAAGb,SAAS,CAACY,IAAI,EAAE,CAAC,CAAC;IAC7B,IAAIE,CAAC,GAAG,CAAC;IACTD,EAAE,CAACN,KAAK,EAAE,CAAC,EAAEO,CAAC,CAAC;IACfA,CAAC,IAAI,CAAC;IACN,KAAK,MAAMC,KAAK,IAAI,CAAC,IAAI,CAACb,IAAI,EAAE,IAAI,CAACC,IAAI,EAAE,IAAI,CAACC,IAAI,EAAE,IAAI,CAACC,IAAI,CAAC,EAAE;MACjEQ,EAAE,CAACE,KAAK,EAAER,KAAK,EAAEO,CAAC,CAAC;MACnBA,CAAC,IAAIP,KAAK;IACX;IACA,MAAMS,IAAI,GAAGF,CAAC,GAAG,CAAC;IAClB,IAAIE,IAAI,EAAE;MACTH,EAAE,CAAC,CAAC,EAAE,CAAC,GAAGG,IAAI,EAAEF,CAAC,CAAC;IACnB;EACD;AACD","ignoreList":[]}