{"version":3,"sources":["../../../src/parser/nodes/members.ts"],"sourcesContent":["import Definitions from \"../../core/definitions\";\r\nimport { Position } from '../../core/positions';\r\nimport Node from \"./nodes\";\r\nimport TokenNode from \"./tokens\";\r\n\r\nclass MemberNode implements Node {\r\n  type: string;\r\n  key?: TokenNode;\r\n  value: Node;\r\n\r\n  constructor(value: Node, key?: TokenNode) {\r\n    this.type = 'member';\r\n    this.value = value;\r\n    if (key) {\r\n      this.key = key;\r\n    }\r\n  }\r\n\r\n  toValue(defs?: Definitions):any {\r\n    if (this.key) {\r\n      return {\r\n        [this.key.value as string]: this.value.toValue(defs),\r\n      }\r\n    } else {\r\n      return this.value.toValue(defs);\r\n    }\r\n  }\r\n  getStartPos(): Position {\r\n    if (this.key) {\r\n      return this.key.getStartPos();\r\n    }\r\n\r\n    return this.value.getStartPos();\r\n  }\r\n\r\n  getEndPos(): Position {\r\n    if (this.value) {\r\n      return this.value.getEndPos();\r\n    }\r\n\r\n    if (this.key) {\r\n      return this.key.getEndPos();\r\n    }\r\n\r\n    return Position.unknown;\r\n  }\r\n}\r\n\r\nexport default MemberNode;\r\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,uBAAyB;AAIzB,MAAM,WAA2B;AAAA,EAC/B;AAAA,EACA;AAAA,EACA;AAAA,EAEA,YAAY,OAAa,KAAiB;AACxC,SAAK,OAAO;AACZ,SAAK,QAAQ;AACb,QAAI,KAAK;AACP,WAAK,MAAM;AAAA,IACb;AAAA,EACF;AAAA,EAEA,QAAQ,MAAwB;AAC9B,QAAI,KAAK,KAAK;AACZ,aAAO;AAAA,QACL,CAAC,KAAK,IAAI,KAAe,GAAG,KAAK,MAAM,QAAQ,IAAI;AAAA,MACrD;AAAA,IACF,OAAO;AACL,aAAO,KAAK,MAAM,QAAQ,IAAI;AAAA,IAChC;AAAA,EACF;AAAA,EACA,cAAwB;AACtB,QAAI,KAAK,KAAK;AACZ,aAAO,KAAK,IAAI,YAAY;AAAA,IAC9B;AAEA,WAAO,KAAK,MAAM,YAAY;AAAA,EAChC;AAAA,EAEA,YAAsB;AACpB,QAAI,KAAK,OAAO;AACd,aAAO,KAAK,MAAM,UAAU;AAAA,IAC9B;AAEA,QAAI,KAAK,KAAK;AACZ,aAAO,KAAK,IAAI,UAAU;AAAA,IAC5B;AAEA,WAAO,0BAAS;AAAA,EAClB;AACF;AAEA,IAAO,kBAAQ;","names":[]}