{"version":3,"file":"fixed8.mjs","names":["Data","Fixed8","numerator","denominator","constructor","size","value","i16","Math","floor","encoder","data"],"sources":["../../src/swf/fixed8.ts"],"sourcesContent":["import {Data} from './data.ts';\n\n/**\n * Fixed8 object.\n */\nexport class Fixed8 extends Data {\n\t/**\n\t * Float numerator.\n\t */\n\tpublic numerator: number = 0;\n\n\t/**\n\t * Float denominator.\n\t */\n\tpublic denominator: number = 0;\n\n\t/**\n\t * Fixed8 constructor.\n\t */\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\t/**\n\t * @inheritdoc\n\t */\n\tpublic get size() {\n\t\treturn 2;\n\t}\n\n\t/**\n\t * Value.\n\t *\n\t * @param value The value.\n\t */\n\tpublic set value(value) {\n\t\tconst i16 = Math.floor(value * 256);\n\t\t// eslint-disable-next-line no-bitwise\n\t\tthis.numerator = (i16 >> 8) & 0xff;\n\t\t// eslint-disable-next-line no-bitwise\n\t\tthis.denominator = i16 & 0xff;\n\t}\n\n\t/**\n\t * Value.\n\t *\n\t * @returns The value.\n\t */\n\tpublic get value() {\n\t\t// eslint-disable-next-line no-bitwise\n\t\tconst i16 = (this.numerator << 8) | this.denominator;\n\t\treturn i16 / 256;\n\t}\n\n\t/**\n\t * @inheritdoc\n\t */\n\tpublic encoder(data: Uint8Array) {\n\t\tdata[0] = this.denominator;\n\t\tdata[1] = this.numerator;\n\t}\n}\n"],"mappings":"AAAA,SAAQA,IAAI,QAAO,YAAW;;AAE9B;AACA;AACA;AACA,OAAO,MAAMC,MAAM,SAASD,IAAI,CAAC;EAChC;AACD;AACA;EACQE,SAAS,GAAW,CAAC;;EAE5B;AACD;AACA;EACQC,WAAW,GAAW,CAAC;;EAE9B;AACD;AACA;EACCC,WAAWA,CAAA,EAAG;IACb,KAAK,CAAC,CAAC;EACR;;EAEA;AACD;AACA;EACC,IAAWC,IAAIA,CAAA,EAAG;IACjB,OAAO,CAAC;EACT;;EAEA;AACD;AACA;AACA;AACA;EACC,IAAWC,KAAKA,CAACA,KAAK,EAAE;IACvB,MAAMC,GAAG,GAAGC,IAAI,CAACC,KAAK,CAACH,KAAK,GAAG,GAAG,CAAC;IACnC;IACA,IAAI,CAACJ,SAAS,GAAIK,GAAG,IAAI,CAAC,GAAI,IAAI;IAClC;IACA,IAAI,CAACJ,WAAW,GAAGI,GAAG,GAAG,IAAI;EAC9B;;EAEA;AACD;AACA;AACA;AACA;EACC,IAAWD,KAAKA,CAAA,EAAG;IAClB;IACA,MAAMC,GAAG,GAAI,IAAI,CAACL,SAAS,IAAI,CAAC,GAAI,IAAI,CAACC,WAAW;IACpD,OAAOI,GAAG,GAAG,GAAG;EACjB;;EAEA;AACD;AACA;EACQG,OAAOA,CAACC,IAAgB,EAAE;IAChCA,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAACR,WAAW;IAC1BQ,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAACT,SAAS;EACzB;AACD","ignoreList":[]}