{"version":3,"file":"real.mjs","names":["INDENT_STRING","assertXmlTagName","xmlElementText","Value","ValueReal","TYPE","TAG_NAMES","value","constructor","fromXmlElement","element","text","nodeValue","test","Error","toXml","options","depth","p","indentString","repeat","v"],"sources":["../../src/value/real.ts"],"sourcesContent":["import {INDENT_STRING, IToXmlOptions} from '../options.ts';\nimport {IElement, assertXmlTagName, xmlElementText} from '../util.ts';\nimport {Value} from '../value.ts';\n\n/**\n * ValueReal object.\n */\nexport class ValueReal extends Value {\n\t/**\n\t * Value type.\n\t */\n\tpublic static readonly TYPE = 'real';\n\n\t/**\n\t * Tag names.\n\t */\n\tpublic static readonly TAG_NAMES = ['real'];\n\n\t/**\n\t * Value value.\n\t */\n\tpublic value = 0;\n\n\t/**\n\t * ValueReal constructor.\n\t *\n\t * @param value The value.\n\t */\n\tconstructor(value = 0) {\n\t\tsuper();\n\n\t\tthis.value = value;\n\t}\n\n\t/**\n\t * @inheritdoc\n\t */\n\tpublic fromXmlElement(element: Readonly<IElement>) {\n\t\tassertXmlTagName(element, 'real');\n\t\tconst text = xmlElementText(element)?.nodeValue || '';\n\t\tif (!/^[+-]?(\\d+|\\d*\\.\\d+)$/.test(text)) {\n\t\t\tthrow new Error(`Invalid real data: ${text}`);\n\t\t}\n\t\tthis.value = +text;\n\t}\n\n\t/**\n\t * @inheritdoc\n\t */\n\tpublic toXml(options: Readonly<IToXmlOptions> | null = null, depth = 0) {\n\t\tconst p = (options?.indentString ?? INDENT_STRING).repeat(depth);\n\t\tconst v = this.value;\n\t\treturn `${p}<real>${v}</real>`;\n\t}\n}\n"],"mappings":"AAAA,SAAQA,aAAa,QAAsB,gBAAe;AAC1D,SAAkBC,gBAAgB,EAAEC,cAAc,QAAO,aAAY;AACrE,SAAQC,KAAK,QAAO,cAAa;;AAEjC;AACA;AACA;AACA,OAAO,MAAMC,SAAS,SAASD,KAAK,CAAC;EACpC;AACD;AACA;EACC,OAAuBE,IAAI,GAAG,MAAM;;EAEpC;AACD;AACA;EACC,OAAuBC,SAAS,GAAG,CAAC,MAAM,CAAC;;EAE3C;AACD;AACA;EACQC,KAAK,GAAG,CAAC;;EAEhB;AACD;AACA;AACA;AACA;EACCC,WAAWA,CAACD,KAAK,GAAG,CAAC,EAAE;IACtB,KAAK,CAAC,CAAC;IAEP,IAAI,CAACA,KAAK,GAAGA,KAAK;EACnB;;EAEA;AACD;AACA;EACQE,cAAcA,CAACC,OAA2B,EAAE;IAClDT,gBAAgB,CAACS,OAAO,EAAE,MAAM,CAAC;IACjC,MAAMC,IAAI,GAAGT,cAAc,CAACQ,OAAO,CAAC,EAAEE,SAAS,IAAI,EAAE;IACrD,IAAI,CAAC,uBAAuB,CAACC,IAAI,CAACF,IAAI,CAAC,EAAE;MACxC,MAAM,IAAIG,KAAK,CAAC,sBAAsBH,IAAI,EAAE,CAAC;IAC9C;IACA,IAAI,CAACJ,KAAK,GAAG,CAACI,IAAI;EACnB;;EAEA;AACD;AACA;EACQI,KAAKA,CAACC,OAAuC,GAAG,IAAI,EAAEC,KAAK,GAAG,CAAC,EAAE;IACvE,MAAMC,CAAC,GAAG,CAACF,OAAO,EAAEG,YAAY,IAAInB,aAAa,EAAEoB,MAAM,CAACH,KAAK,CAAC;IAChE,MAAMI,CAAC,GAAG,IAAI,CAACd,KAAK;IACpB,OAAO,GAAGW,CAAC,SAASG,CAAC,SAAS;EAC/B;AACD","ignoreList":[]}