xml-model 0.2.2 → 0.2.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -15,7 +15,7 @@ const __RΦ = { m: (k, v) => (t, ...a) => t && Reflect.metadata ? Reflect.metada
15
15
  __RΦ.t[id] = t = l;
16
16
  }
17
17
  return t;
18
- }, t: { [4]: { RΦ: t => ({ TΦ: "~" }) }, [109]: { RΦ: t => ({ TΦ: "O", m: [{ n: "elements", f: "", t: __RΦ.a(105) }] }) }, [105]: { RΦ: t => ({ TΦ: "[", e: __RΦ.a(103) }) }, [103]: { LΦ: t => require("../types").IΦXMLElement }, [13]: { LΦ: t => String }, [14]: { LΦ: t => Number }, [1694]: { RΦ: t => ({ TΦ: "O", m: [{ n: "elements", f: "", t: __RΦ.a(3121) }] }) }, [3121]: { RΦ: t => ({ TΦ: "[", e: __RΦ.a(3119) }) }, [3119]: { RΦ: t => ({ TΦ: "O", m: [{ n: "type", f: "", t: __RΦ.a(13) }, { n: "name", f: "", t: __RΦ.a(13) }] }) }, [20]: { LΦ: t => Boolean } } };
18
+ }, t: { [4]: { RΦ: t => ({ TΦ: "~" }) }, [111]: { RΦ: t => ({ TΦ: "O", m: [{ n: "elements", f: "", t: __RΦ.a(107) }] }) }, [107]: { RΦ: t => ({ TΦ: "[", e: __RΦ.a(105) }) }, [105]: { LΦ: t => require("../types").IΦXMLElement }, [13]: { LΦ: t => String }, [14]: { LΦ: t => Number }, [1696]: { RΦ: t => ({ TΦ: "O", m: [{ n: "elements", f: "", t: __RΦ.a(3124) }] }) }, [3124]: { RΦ: t => ({ TΦ: "[", e: __RΦ.a(3122) }) }, [3122]: { RΦ: t => ({ TΦ: "O", m: [{ n: "type", f: "", t: __RΦ.a(13) }, { n: "name", f: "", t: __RΦ.a(13) }] }) }, [20]: { LΦ: t => Boolean } } };
19
19
  const model_1 = require("../model");
20
20
  const xml_1 = require("../xml");
21
21
  // string is <string>value</string>
@@ -24,7 +24,7 @@ const xml_1 = require("../xml");
24
24
  return {
25
25
  elements: [(0, xml_1.fromContent)(ctx.object, "string")],
26
26
  };
27
- }, [__RΦ.m("rt:p", [{ n: "ctx", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(109))], "toXML"),
27
+ }, [__RΦ.m("rt:p", [{ n: "ctx", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(111))], "toXML"),
28
28
  fromXML: __RΦ.f((ctx) => {
29
29
  return String((0, xml_1.getContent)(ctx.xml.elements[0]));
30
30
  }, [__RΦ.m("rt:p", [{ n: "ctx", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(13))], "fromXML"),
@@ -35,7 +35,7 @@ const xml_1 = require("../xml");
35
35
  return {
36
36
  elements: [(0, xml_1.fromContent)(String(ctx.object), "number")],
37
37
  };
38
- }, [__RΦ.m("rt:p", [{ n: "ctx", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(109))], "toXML"),
38
+ }, [__RΦ.m("rt:p", [{ n: "ctx", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(111))], "toXML"),
39
39
  fromXML: __RΦ.f((ctx) => {
40
40
  return Number((0, xml_1.getContent)(ctx.xml.elements[0]));
41
41
  }, [__RΦ.m("rt:p", [{ n: "ctx", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(14))], "fromXML"),
@@ -48,7 +48,7 @@ const xml_1 = require("../xml");
48
48
  Object.assign({ type: "element", name: "boolean" }, (0, xml_1.fromContent)(String(ctx.object))),
49
49
  ],
50
50
  };
51
- }, [__RΦ.m("rt:p", [{ n: "ctx", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(1694))], "toXML"),
51
+ }, [__RΦ.m("rt:p", [{ n: "ctx", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(1696))], "toXML"),
52
52
  fromXML: __RΦ.f((ctx) => {
53
53
  return Boolean((0, xml_1.getContent)(ctx.xml.elements[0]));
54
54
  }, [__RΦ.m("rt:p", [{ n: "ctx", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(20))], "fromXML"),
@@ -20,6 +20,7 @@ const __RΦ = { m: (k, v) => (t, ...a) => t && Reflect.metadata ? Reflect.metada
20
20
  class XMLConversionError extends Error {
21
21
  constructor(message, origin) {
22
22
  super(message);
23
+ this.name = "XMLConversionError";
23
24
  this.origin = origin;
24
25
  }
25
26
  }
@@ -16,19 +16,19 @@ const __RΦ = { m: (k, v) => (t, ...a) => t && Reflect.metadata ? Reflect.metada
16
16
  __RΦ.t[id] = t = l;
17
17
  }
18
18
  return t;
19
- }, t: { [118]: { RΦ: t => ({ TΦ: "|", t: [__RΦ.a(12), __RΦ.a(115)] }) }, [12]: { RΦ: t => ({ TΦ: "n" }) }, [115]: { TΦ: "5", name: "ChainableOptions" }, [121]: { RΦ: t => ({ TΦ: "[", e: __RΦ.a(120) }) }, [120]: { RΦ: t => ({ TΦ: "O", m: [{ n: "__call", f: "", t: __RΦ.a(4) }] }) }, [4]: { RΦ: t => ({ TΦ: "~" }) }, [124]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(115), p: [__RΦ.a(122), __RΦ.a(123)] }) }, [122]: { LΦ: t => Object }, [123]: { LΦ: t => Object }, [143]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(138), p: [__RΦ.a(125), __RΦ.a(22), __RΦ.a(8)] }) }, [138]: { LΦ: t => Object }, [125]: { RΦ: t => ({ TΦ: "O", m: [{ n: "__call", f: "", t: __RΦ.a(4) }] }) }, [22]: { RΦ: t => ({ TΦ: "V" }) }, [8]: { RΦ: t => ({ TΦ: "U" }) }, [155]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(147), p: [__RΦ.a(158), __RΦ.a(1), __RΦ.a(10)] }) }, [147]: { LΦ: t => Object }, [158]: { RΦ: t => ({ TΦ: "O", m: [{ n: "__call", f: "", t: __RΦ.a(4) }] }) }, [1]: { RΦ: t => ({ TΦ: "~" }) }, [10]: { RΦ: t => ({ TΦ: "u" }) }, [153]: { LΦ: t => Object }, [154]: { LΦ: t => Object } } };
19
+ }, t: { [120]: { RΦ: t => ({ TΦ: "|", t: [__RΦ.a(12), __RΦ.a(117)] }) }, [12]: { RΦ: t => ({ TΦ: "n" }) }, [117]: { TΦ: "5", name: "ChainableOptions" }, [123]: { RΦ: t => ({ TΦ: "[", e: __RΦ.a(122) }) }, [122]: { RΦ: t => ({ TΦ: "O", m: [{ n: "__call", f: "", t: __RΦ.a(4) }] }) }, [4]: { RΦ: t => ({ TΦ: "~" }) }, [126]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(117), p: [__RΦ.a(124), __RΦ.a(125)] }) }, [124]: { LΦ: t => Object }, [125]: { LΦ: t => Object }, [145]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(140), p: [__RΦ.a(127), __RΦ.a(22), __RΦ.a(8)] }) }, [140]: { LΦ: t => Object }, [127]: { RΦ: t => ({ TΦ: "O", m: [{ n: "__call", f: "", t: __RΦ.a(4) }] }) }, [22]: { RΦ: t => ({ TΦ: "V" }) }, [8]: { RΦ: t => ({ TΦ: "U" }) }, [157]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(149), p: [__RΦ.a(160), __RΦ.a(1), __RΦ.a(10)] }) }, [149]: { LΦ: t => Object }, [160]: { RΦ: t => ({ TΦ: "O", m: [{ n: "__call", f: "", t: __RΦ.a(4) }] }) }, [1]: { RΦ: t => ({ TΦ: "~" }) }, [10]: { RΦ: t => ({ TΦ: "u" }) }, [155]: { LΦ: t => Object }, [156]: { LΦ: t => Object } } };
20
20
  var IΦChainableOptions = { name: "ChainableOptions", prototype: {}, identity: Symbol("ChainableOptions (interface)") };
21
- (t => __RΦ.t[115] = t)(IΦChainableOptions);
21
+ (t => __RΦ.t[117] = t)(IΦChainableOptions);
22
22
  __RΦ.m("rt:P", ["parent", "middlewares"])(IΦChainableOptions);
23
23
  __RΦ.m("rt:m", [])(IΦChainableOptions);
24
24
  __RΦ.m("rt:f", "I")(IΦChainableOptions);
25
- __RΦ.m("rt:t", () => __RΦ.a(118))(IΦChainableOptions.prototype, "parent");
25
+ __RΦ.m("rt:t", () => __RΦ.a(120))(IΦChainableOptions.prototype, "parent");
26
26
  __RΦ.m("rt:f", "P")(IΦChainableOptions.prototype, "parent");
27
- __RΦ.m("rt:t", () => __RΦ.a(121))(IΦChainableOptions.prototype, "middlewares");
27
+ __RΦ.m("rt:t", () => __RΦ.a(123))(IΦChainableOptions.prototype, "middlewares");
28
28
  __RΦ.m("rt:f", "P")(IΦChainableOptions.prototype, "middlewares");
29
- __RΦ.m("rt:t", () => __RΦ.a(118))(IΦChainableOptions.prototype, "parent");
29
+ __RΦ.m("rt:t", () => __RΦ.a(120))(IΦChainableOptions.prototype, "parent");
30
30
  __RΦ.m("rt:f", "P")(IΦChainableOptions.prototype, "parent");
31
- __RΦ.m("rt:t", () => __RΦ.a(121))(IΦChainableOptions.prototype, "middlewares");
31
+ __RΦ.m("rt:t", () => __RΦ.a(123))(IΦChainableOptions.prototype, "middlewares");
32
32
  __RΦ.m("rt:f", "P")(IΦChainableOptions.prototype, "middlewares");
33
33
  function* MiddlewareChain(options) {
34
34
  do {
@@ -42,9 +42,9 @@ function* MiddlewareChain(options) {
42
42
  } while (true);
43
43
  }
44
44
  exports.MiddlewareChain = MiddlewareChain;
45
- __RΦ.m("rt:p", [{ n: "options", t: () => __RΦ.a(124), v: null }])(MiddlewareChain);
45
+ __RΦ.m("rt:p", [{ n: "options", t: () => __RΦ.a(126), v: null }])(MiddlewareChain);
46
46
  __RΦ.m("rt:f", "F")(MiddlewareChain);
47
- __RΦ.m("rt:t", () => __RΦ.a(143))(MiddlewareChain);
47
+ __RΦ.m("rt:t", () => __RΦ.a(145))(MiddlewareChain);
48
48
  function resolve(middlewares, context) {
49
49
  const next = __RΦ.f(() => {
50
50
  const { value: nextMiddleware, done } = middlewares.next();
@@ -56,10 +56,10 @@ function resolve(middlewares, context) {
56
56
  else {
57
57
  return nextMiddleware(context, next);
58
58
  }
59
- }, [__RΦ.m("rt:p", []), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(154))], "next");
59
+ }, [__RΦ.m("rt:p", []), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(156))], "next");
60
60
  return next();
61
61
  }
62
62
  exports.resolve = resolve;
63
- __RΦ.m("rt:p", [{ n: "middlewares", t: () => __RΦ.a(155), v: null }, { n: "context", t: () => __RΦ.a(153), v: null }])(resolve);
63
+ __RΦ.m("rt:p", [{ n: "middlewares", t: () => __RΦ.a(157), v: null }, { n: "context", t: () => __RΦ.a(155), v: null }])(resolve);
64
64
  __RΦ.m("rt:f", "F")(resolve);
65
- __RΦ.m("rt:t", () => __RΦ.a(154))(resolve);
65
+ __RΦ.m("rt:t", () => __RΦ.a(156))(resolve);
@@ -1,4 +1,3 @@
1
- import "reflect-metadata";
2
1
  import type { Constructor } from "typescript-rtti";
3
2
  import { XMLModelOptions, XMLModelPropertyOptions, CreateXMLModelOptions } from "./types";
4
3
  import { XMLRoot } from "../types";
@@ -19,8 +19,7 @@ const __RΦ = { m: (k, v) => (t, ...a) => t && Reflect.metadata ? Reflect.metada
19
19
  __RΦ.t[id] = t = l;
20
20
  }
21
21
  return t;
22
- }, t: { [530]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(200), p: [__RΦ.a(501)] }) }, [200]: { LΦ: t => require("typescript-rtti/dist").IΦConstructor }, [501]: { LΦ: t => Object }, [1712]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(200), p: [__RΦ.a(8)] }) }, [8]: { RΦ: t => ({ TΦ: "U" }) }, [1715]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(138), p: [__RΦ.a(1712), __RΦ.a(22), __RΦ.a(8)] }) }, [138]: { LΦ: t => Object }, [22]: { RΦ: t => ({ TΦ: "V" }) }, [503]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(500), p: [__RΦ.a(1)] }) }, [500]: { TΦ: "5", name: "XMLModel" }, [1]: { RΦ: t => ({ TΦ: "~" }) }, [1738]: { RΦ: t => ({ TΦ: "|", t: [__RΦ.a(12), __RΦ.a(503)] }) }, [12]: { RΦ: t => ({ TΦ: "n" }) }, [1747]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(1618), p: [__RΦ.a(501)] }) }, [1618]: { LΦ: t => require("./types").IΦCreateXMLModelOptions }, [523]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(520), p: [__RΦ.a(501)] }) }, [520]: { LΦ: t => require("./types").IΦXMLModelOptions }, [1771]: { RΦ: t => ({ TΦ: "|", t: [__RΦ.a(12), __RΦ.a(1326)] }) }, [1326]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(600), p: [__RΦ.a(420), __RΦ.a(1324)] }) }, [600]: { LΦ: t => require("./types").IΦConversionOptions }, [420]: { RΦ: t => ({ TΦ: "m", t: __RΦ.a(421), p: [__RΦ.a(419), __RΦ.a(382)] }) }, [421]: { LΦ: t => Object }, [419]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(378), p: [__RΦ.a(1)] }) }, [378]: { LΦ: t => require("./types").IΦfromXMLContext }, [382]: { LΦ: t => "properties" }, [1324]: { RΦ: t => ({ TΦ: "m", t: __RΦ.a(1325), p: [__RΦ.a(1)] }) }, [1325]: { LΦ: t => Object }, [4]: { RΦ: t => ({ TΦ: "~" }) }, [656]: { RΦ: t => ({ TΦ: "m", t: __RΦ.a(657), p: [__RΦ.a(501)] }) }, [657]: { LΦ: t => Object }, [1781]: { RΦ: t => ({ TΦ: "|", t: [__RΦ.a(12), __RΦ.a(1779)] }) }, [1779]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(600), p: [__RΦ.a(1358), __RΦ.a(1777)] }) }, [1358]: { RΦ: t => ({ TΦ: "m", t: __RΦ.a(1359), p: [__RΦ.a(1357), __RΦ.a(382)] }) }, [1359]: { LΦ: t => Object }, [1357]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(858), p: [__RΦ.a(1)] }) }, [858]: { LΦ: t => require("./types").IΦtoXMLContext }, [1777]: { RΦ: t => ({ TΦ: "m", t: __RΦ.a(1778), p: [__RΦ.a(1)] }) }, [1778]: { LΦ: t => Object }, [888]: { RΦ: t => ({ TΦ: "m", t: __RΦ.a(889), p: [__RΦ.a(501)] }) }, [889]: { LΦ: t => Object }, [20]: { LΦ: t => Boolean }, [659]: { RΦ: t => ({ TΦ: "O", m: [{ n: "fromXML", f: "", t: __RΦ.a(665) }, { n: "toXML", f: "", t: __RΦ.a(896) }, { n: "options", f: "", t: __RΦ.a(1072) }] }) }, [665]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(600), p: [__RΦ.a(661), __RΦ.a(663)] }) }, [661]: { RΦ: t => ({ TΦ: "m", t: __RΦ.a(662), p: [__RΦ.a(604), __RΦ.a(382)] }) }, [662]: { LΦ: t => Object }, [604]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(378), p: [__RΦ.a(521)] }) }, [521]: { LΦ: t => Object }, [663]: { RΦ: t => ({ TΦ: "m", t: __RΦ.a(664), p: [__RΦ.a(521)] }) }, [664]: { LΦ: t => Object }, [896]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(600), p: [__RΦ.a(892), __RΦ.a(894)] }) }, [892]: { RΦ: t => ({ TΦ: "m", t: __RΦ.a(893), p: [__RΦ.a(861), __RΦ.a(382)] }) }, [893]: { LΦ: t => Object }, [861]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(858), p: [__RΦ.a(521)] }) }, [894]: { RΦ: t => ({ TΦ: "m", t: __RΦ.a(895), p: [__RΦ.a(521)] }) }, [895]: { LΦ: t => Object }, [1072]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(1062), p: [__RΦ.a(1070), __RΦ.a(1071)] }) }, [1062]: { LΦ: t => Map }, [1070]: { LΦ: t => Object }, [1071]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(212), p: [__RΦ.a(521)] }) }, [212]: { LΦ: t => require("./types").IΦXMLModelPropertyOptions }, [1797]: { RΦ: t => ({ TΦ: "|", t: [__RΦ.a(12), __RΦ.a(1795)] }) }, [1795]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(600), p: [__RΦ.a(419), __RΦ.a(1)] }) }, [1802]: { RΦ: t => ({ TΦ: "|", t: [__RΦ.a(12), __RΦ.a(1800)] }) }, [1800]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(600), p: [__RΦ.a(1357), __RΦ.a(109)] }) }, [109]: { RΦ: t => ({ TΦ: "O", m: [{ n: "elements", f: "", t: __RΦ.a(105) }] }) }, [105]: { RΦ: t => ({ TΦ: "[", e: __RΦ.a(103) }) }, [103]: { LΦ: t => require("../types").IΦXMLElement }, [13]: { LΦ: t => String }, [539]: { RΦ: t => ({ TΦ: "|", t: [__RΦ.a(13), __RΦ.a(109)] }) }, [28]: { LΦ: t => Object }, [946]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(942), p: [__RΦ.a(530)] }) }, [942]: { LΦ: t => require("typescript-rtti/dist").ReflectedClass }, [1067]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(1062), p: [__RΦ.a(13), __RΦ.a(1061)] }) }, [1061]: { RΦ: t => ({ TΦ: "&", t: [__RΦ.a(1059), __RΦ.a(1060)] }) }, [1059]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(212), p: [__RΦ.a(1)] }) }, [1060]: { RΦ: t => ({ TΦ: "O", m: [{ n: "model", f: "", t: __RΦ.a(1) }] }) }, [1622]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(200), p: [__RΦ.a(1617)] }) }, [1617]: { LΦ: t => Object }, [1621]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(1618), p: [__RΦ.a(1617)] }) }, [1655]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(500), p: [__RΦ.a(1617)] }) }, [1720]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(200), p: [__RΦ.a(1717)] }) }, [1717]: { LΦ: t => Object }, [1733]: { RΦ: t => ({ TΦ: "|", t: [__RΦ.a(10), __RΦ.a(1732)] }) }, [10]: { RΦ: t => ({ TΦ: "u" }) }, [1732]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(500), p: [__RΦ.a(1717)] }) }, [1934]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(200), p: [__RΦ.a(1933)] }) }, [1933]: { LΦ: t => Object }, [1937]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(500), p: [__RΦ.a(1933)] }) }, [1940]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(1618), p: [__RΦ.a(1939)] }) }, [1939]: { LΦ: t => Object }, [1942]: { RΦ: t => ({ TΦ: "F", r: __RΦ.a(22), p: [{ n: "constructor", t: () => __RΦ.a(1943), v: null }], f: "" }) }, [1943]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(200), p: [__RΦ.a(1939)] }) } } };
23
- require("reflect-metadata");
22
+ }, t: { [532]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(202), p: [__RΦ.a(503)] }) }, [202]: { LΦ: t => require("typescript-rtti/dist").IΦConstructor }, [503]: { LΦ: t => Object }, [1714]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(202), p: [__RΦ.a(8)] }) }, [8]: { RΦ: t => ({ TΦ: "U" }) }, [1717]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(140), p: [__RΦ.a(1714), __RΦ.a(22), __RΦ.a(8)] }) }, [140]: { LΦ: t => Object }, [22]: { RΦ: t => ({ TΦ: "V" }) }, [505]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(502), p: [__RΦ.a(1)] }) }, [502]: { TΦ: "5", name: "XMLModel" }, [1]: { RΦ: t => ({ TΦ: "~" }) }, [1740]: { RΦ: t => ({ TΦ: "|", t: [__RΦ.a(12), __RΦ.a(505)] }) }, [12]: { RΦ: t => ({ TΦ: "n" }) }, [1749]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(1620), p: [__RΦ.a(503)] }) }, [1620]: { LΦ: t => require("./types").IΦCreateXMLModelOptions }, [525]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(522), p: [__RΦ.a(503)] }) }, [522]: { LΦ: t => require("./types").IΦXMLModelOptions }, [1773]: { RΦ: t => ({ TΦ: "|", t: [__RΦ.a(12), __RΦ.a(1328)] }) }, [1328]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(602), p: [__RΦ.a(422), __RΦ.a(1326)] }) }, [602]: { LΦ: t => require("./types").IΦConversionOptions }, [422]: { RΦ: t => ({ TΦ: "m", t: __RΦ.a(423), p: [__RΦ.a(421), __RΦ.a(384)] }) }, [423]: { LΦ: t => Object }, [421]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(380), p: [__RΦ.a(1)] }) }, [380]: { LΦ: t => require("./types").IΦfromXMLContext }, [384]: { LΦ: t => "properties" }, [1326]: { RΦ: t => ({ TΦ: "m", t: __RΦ.a(1327), p: [__RΦ.a(1)] }) }, [1327]: { LΦ: t => Object }, [4]: { RΦ: t => ({ TΦ: "~" }) }, [658]: { RΦ: t => ({ TΦ: "m", t: __RΦ.a(659), p: [__RΦ.a(503)] }) }, [659]: { LΦ: t => Object }, [1783]: { RΦ: t => ({ TΦ: "|", t: [__RΦ.a(12), __RΦ.a(1781)] }) }, [1781]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(602), p: [__RΦ.a(1360), __RΦ.a(1779)] }) }, [1360]: { RΦ: t => ({ TΦ: "m", t: __RΦ.a(1361), p: [__RΦ.a(1359), __RΦ.a(384)] }) }, [1361]: { LΦ: t => Object }, [1359]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(860), p: [__RΦ.a(1)] }) }, [860]: { LΦ: t => require("./types").IΦtoXMLContext }, [1779]: { RΦ: t => ({ TΦ: "m", t: __RΦ.a(1780), p: [__RΦ.a(1)] }) }, [1780]: { LΦ: t => Object }, [890]: { RΦ: t => ({ TΦ: "m", t: __RΦ.a(891), p: [__RΦ.a(503)] }) }, [891]: { LΦ: t => Object }, [20]: { LΦ: t => Boolean }, [661]: { RΦ: t => ({ TΦ: "O", m: [{ n: "fromXML", f: "", t: __RΦ.a(667) }, { n: "toXML", f: "", t: __RΦ.a(898) }, { n: "options", f: "", t: __RΦ.a(1074) }] }) }, [667]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(602), p: [__RΦ.a(663), __RΦ.a(665)] }) }, [663]: { RΦ: t => ({ TΦ: "m", t: __RΦ.a(664), p: [__RΦ.a(606), __RΦ.a(384)] }) }, [664]: { LΦ: t => Object }, [606]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(380), p: [__RΦ.a(523)] }) }, [523]: { LΦ: t => Object }, [665]: { RΦ: t => ({ TΦ: "m", t: __RΦ.a(666), p: [__RΦ.a(523)] }) }, [666]: { LΦ: t => Object }, [898]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(602), p: [__RΦ.a(894), __RΦ.a(896)] }) }, [894]: { RΦ: t => ({ TΦ: "m", t: __RΦ.a(895), p: [__RΦ.a(863), __RΦ.a(384)] }) }, [895]: { LΦ: t => Object }, [863]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(860), p: [__RΦ.a(523)] }) }, [896]: { RΦ: t => ({ TΦ: "m", t: __RΦ.a(897), p: [__RΦ.a(523)] }) }, [897]: { LΦ: t => Object }, [1074]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(1064), p: [__RΦ.a(1072), __RΦ.a(1073)] }) }, [1064]: { LΦ: t => Map }, [1072]: { LΦ: t => Object }, [1073]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(214), p: [__RΦ.a(523)] }) }, [214]: { LΦ: t => require("./types").IΦXMLModelPropertyOptions }, [1799]: { RΦ: t => ({ TΦ: "|", t: [__RΦ.a(12), __RΦ.a(1797)] }) }, [1797]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(602), p: [__RΦ.a(421), __RΦ.a(1)] }) }, [1804]: { RΦ: t => ({ TΦ: "|", t: [__RΦ.a(12), __RΦ.a(1802)] }) }, [1802]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(602), p: [__RΦ.a(1359), __RΦ.a(111)] }) }, [111]: { RΦ: t => ({ TΦ: "O", m: [{ n: "elements", f: "", t: __RΦ.a(107) }] }) }, [107]: { RΦ: t => ({ TΦ: "[", e: __RΦ.a(105) }) }, [105]: { LΦ: t => require("../types").IΦXMLElement }, [13]: { LΦ: t => String }, [541]: { RΦ: t => ({ TΦ: "|", t: [__RΦ.a(13), __RΦ.a(111)] }) }, [28]: { LΦ: t => Object }, [948]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(944), p: [__RΦ.a(532)] }) }, [944]: { LΦ: t => require("typescript-rtti/dist").ReflectedClass }, [1069]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(1064), p: [__RΦ.a(13), __RΦ.a(1063)] }) }, [1063]: { RΦ: t => ({ TΦ: "&", t: [__RΦ.a(1061), __RΦ.a(1062)] }) }, [1061]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(214), p: [__RΦ.a(1)] }) }, [1062]: { RΦ: t => ({ TΦ: "O", m: [{ n: "model", f: "", t: __RΦ.a(1) }] }) }, [1624]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(202), p: [__RΦ.a(1619)] }) }, [1619]: { LΦ: t => Object }, [1623]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(1620), p: [__RΦ.a(1619)] }) }, [1657]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(502), p: [__RΦ.a(1619)] }) }, [1722]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(202), p: [__RΦ.a(1719)] }) }, [1719]: { LΦ: t => Object }, [1735]: { RΦ: t => ({ TΦ: "|", t: [__RΦ.a(10), __RΦ.a(1734)] }) }, [10]: { RΦ: t => ({ TΦ: "u" }) }, [1734]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(502), p: [__RΦ.a(1719)] }) }, [1880]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(202), p: [__RΦ.a(1879)] }) }, [1879]: { LΦ: t => Object }, [1883]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(502), p: [__RΦ.a(1879)] }) }, [1886]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(1620), p: [__RΦ.a(1885)] }) }, [1885]: { LΦ: t => Object }, [1888]: { RΦ: t => ({ TΦ: "F", r: __RΦ.a(22), p: [{ n: "constructor", t: () => __RΦ.a(1889), v: null }], f: "" }) }, [1889]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(202), p: [__RΦ.a(1885)] }) } } };
24
23
  const typescript_rtti_1 = require("typescript-rtti");
25
24
  const middleware_1 = require("../middleware");
26
25
  const property_1 = require("./property");
@@ -41,9 +40,9 @@ function* ParentChain(constructor) {
41
40
  }
42
41
  return;
43
42
  }
44
- __RΦ.m("rt:p", [{ n: "constructor", t: () => __RΦ.a(1712), v: null }])(ParentChain);
43
+ __RΦ.m("rt:p", [{ n: "constructor", t: () => __RΦ.a(1714), v: null }])(ParentChain);
45
44
  __RΦ.m("rt:f", "F")(ParentChain);
46
- __RΦ.m("rt:t", () => __RΦ.a(1715))(ParentChain);
45
+ __RΦ.m("rt:t", () => __RΦ.a(1717))(ParentChain);
47
46
  function getParentModel(model) {
48
47
  if (model.options.parent)
49
48
  return model.options.parent;
@@ -55,9 +54,9 @@ function getParentModel(model) {
55
54
  }
56
55
  return null;
57
56
  }
58
- __RΦ.m("rt:p", [{ n: "model", t: () => __RΦ.a(503), v: null }])(getParentModel);
57
+ __RΦ.m("rt:p", [{ n: "model", t: () => __RΦ.a(505), v: null }])(getParentModel);
59
58
  __RΦ.m("rt:f", "F")(getParentModel);
60
- __RΦ.m("rt:t", () => __RΦ.a(1738))(getParentModel);
59
+ __RΦ.m("rt:t", () => __RΦ.a(1740))(getParentModel);
61
60
  class XMLModel {
62
61
  constructor(type, options) {
63
62
  this.type = type;
@@ -68,7 +67,7 @@ class XMLModel {
68
67
  if (typeof parent === "undefined")
69
68
  parent = getParentModel(this);
70
69
  return parent;
71
- }, [__RΦ.m("rt:p", []), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(1738))], "getParent");
70
+ }, [__RΦ.m("rt:p", []), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(1740))], "getParent");
72
71
  let propertiesLoaded = false;
73
72
  const properties = {
74
73
  options: new Map(),
@@ -100,7 +99,7 @@ class XMLModel {
100
99
  }
101
100
  }, [__RΦ.m("rt:p", [{ n: "property", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(22))], ""));
102
101
  return record;
103
- }, [__RΦ.m("rt:p", [{ n: "context", t: () => __RΦ.a(4), v: null }, { n: "next", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(656))], ""),
102
+ }, [__RΦ.m("rt:p", [{ n: "context", t: () => __RΦ.a(4), v: null }, { n: "next", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(658))], ""),
104
103
  ],
105
104
  },
106
105
  toXML: {
@@ -125,12 +124,12 @@ class XMLModel {
125
124
  }
126
125
  }, [__RΦ.m("rt:p", [{ n: "options", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(22))], ""));
127
126
  return record;
128
- }, [__RΦ.m("rt:p", [{ n: "context", t: () => __RΦ.a(4), v: null }, { n: "next", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(888))], ""),
127
+ }, [__RΦ.m("rt:p", [{ n: "context", t: () => __RΦ.a(4), v: null }, { n: "next", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(890))], ""),
129
128
  ],
130
129
  },
131
130
  };
132
131
  const loadProperties = __RΦ.f(() => {
133
- const props = (0, typescript_rtti_1.reflect)(this.type, { TΦ: "c", t: void 0, p: [__RΦ.a(530)], r: void 0, tp: [] }).ownProperties.filter(__RΦ.f((prop) => typeof prop.host.constructor.prototype[prop.name] !== "function", [__RΦ.m("rt:p", [{ n: "prop", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(20))], "")); // filter out methods like String.prototype.concat etc... that are seen as properties
132
+ const props = (0, typescript_rtti_1.reflect)(this.type, { TΦ: "c", t: void 0, p: [__RΦ.a(532)], r: void 0, tp: [] }).ownProperties.filter(__RΦ.f((prop) => typeof prop.host.constructor.prototype[prop.name] !== "function", [__RΦ.m("rt:p", [{ n: "prop", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(20))], "")); // filter out methods like String.prototype.concat etc... that are seen as properties
134
133
  props.forEach(__RΦ.f((property) => {
135
134
  const options = (0, property_1.getPropertyConversionOptions)(this.type, property.name);
136
135
  if (!options.ignored) {
@@ -167,7 +166,7 @@ class XMLModel {
167
166
  this.options.parent = options.parent;
168
167
  if (!getParent()) {
169
168
  this.options.fromXML.middlewares.push(__RΦ.f((...args) => defaults_1.defaults.fromXML(...args), [__RΦ.m("rt:p", [{ n: "args", t: () => __RΦ.a(4), v: null, f: "3" }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(1))], ""));
170
- this.options.toXML.middlewares.push(__RΦ.f((...args) => defaults_1.defaults.toXML(...args), [__RΦ.m("rt:p", [{ n: "args", t: () => __RΦ.a(4), v: null, f: "3" }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(109))], ""));
169
+ this.options.toXML.middlewares.push(__RΦ.f((...args) => defaults_1.defaults.toXML(...args), [__RΦ.m("rt:p", [{ n: "args", t: () => __RΦ.a(4), v: null, f: "3" }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(111))], ""));
171
170
  }
172
171
  if (options.fromXML)
173
172
  this.options.fromXML.middlewares.push(options.fromXML);
@@ -216,69 +215,72 @@ class XMLModel {
216
215
  }
217
216
  }
218
217
  get reflectedClass() {
219
- return (0, typescript_rtti_1.reflect)(this.type, { TΦ: "c", t: void 0, p: [__RΦ.a(530)], r: void 0, tp: [] });
218
+ return (0, typescript_rtti_1.reflect)(this.type, { TΦ: "c", t: void 0, p: [__RΦ.a(532)], r: void 0, tp: [] });
220
219
  }
221
220
  resolveAllProperties() {
222
221
  const properties = new Map();
223
222
  const parent = getParentModel(this);
224
223
  if (parent)
225
- parent
226
- .resolveAllProperties()
227
- .forEach(__RΦ.f((prop, key) => properties.set(key, prop), [__RΦ.m("rt:p", [{ n: "prop", t: () => __RΦ.a(4), v: null }, { n: "key", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(1067))], ""));
228
- this.options.properties.options.forEach(__RΦ.f((options, key) => properties.set(key, new Proxy(options, {
229
- get: __RΦ.f((target, p, reciever) => {
230
- if (p === "model")
231
- return this;
232
- else
233
- return Reflect.get(target, p, reciever);
234
- }, [__RΦ.m("rt:p", [{ n: "target", t: () => __RΦ.a(4), v: null }, { n: "p", t: () => __RΦ.a(4), v: null }, { n: "reciever", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(1))], "get"),
235
- })), [__RΦ.m("rt:p", [{ n: "options", t: () => __RΦ.a(4), v: null }, { n: "key", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(1067))], ""));
224
+ parent.resolveAllProperties().forEach(__RΦ.f((prop, key) => {
225
+ properties.set(key, prop);
226
+ }, [__RΦ.m("rt:p", [{ n: "prop", t: () => __RΦ.a(4), v: null }, { n: "key", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(22))], ""));
227
+ this.options.properties.options.forEach(__RΦ.f((options, key) => {
228
+ properties.delete(key); // delete prop if already present to make sure it overrides parent's prop
229
+ properties.set(key, new Proxy(options, {
230
+ get: __RΦ.f((target, p, reciever) => {
231
+ if (p === "model")
232
+ return this;
233
+ else
234
+ return Reflect.get(target, p, reciever);
235
+ }, [__RΦ.m("rt:p", [{ n: "target", t: () => __RΦ.a(4), v: null }, { n: "p", t: () => __RΦ.a(4), v: null }, { n: "reciever", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(1))], "get"),
236
+ }));
237
+ }, [__RΦ.m("rt:p", [{ n: "options", t: () => __RΦ.a(4), v: null }, { n: "key", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(22))], ""));
236
238
  return properties;
237
239
  }
238
240
  }
239
241
  exports.XMLModel = XMLModel;
240
- (t => __RΦ.t[500] = t)(XMLModel);
242
+ (t => __RΦ.t[502] = t)(XMLModel);
241
243
  __RΦ.m("rt:SP", [])(XMLModel);
242
244
  __RΦ.m("rt:P", ["options", "type", "reflectedClass"])(XMLModel);
243
245
  __RΦ.m("rt:Sm", [])(XMLModel);
244
246
  __RΦ.m("rt:m", ["fromXML", "toXML", "resolveAllProperties"])(XMLModel);
245
- __RΦ.m("rt:p", [{ n: "type", t: () => __RΦ.a(530), v: null, f: "R" }, { n: "options", t: () => __RΦ.a(1747), v: null }])(XMLModel);
247
+ __RΦ.m("rt:p", [{ n: "type", t: () => __RΦ.a(532), v: null, f: "R" }, { n: "options", t: () => __RΦ.a(1749), v: null }])(XMLModel);
246
248
  __RΦ.m("rt:f", "Ce")(XMLModel);
247
- __RΦ.m("rt:t", () => __RΦ.a(523))(XMLModel.prototype, "options");
249
+ __RΦ.m("rt:t", () => __RΦ.a(525))(XMLModel.prototype, "options");
248
250
  __RΦ.m("rt:f", "P")(XMLModel.prototype, "options");
249
- __RΦ.m("rt:t", () => __RΦ.a(1771))(XMLModel.prototype, "parent");
251
+ __RΦ.m("rt:t", () => __RΦ.a(1773))(XMLModel.prototype, "parent");
250
252
  __RΦ.m("rt:f", "P")(XMLModel.prototype, "parent");
251
- __RΦ.m("rt:t", () => __RΦ.a(1781))(XMLModel.prototype, "parent");
253
+ __RΦ.m("rt:t", () => __RΦ.a(1783))(XMLModel.prototype, "parent");
252
254
  __RΦ.m("rt:f", "P")(XMLModel.prototype, "parent");
253
- __RΦ.m("rt:t", () => __RΦ.a(659))(XMLModel.prototype, "properties");
255
+ __RΦ.m("rt:t", () => __RΦ.a(661))(XMLModel.prototype, "properties");
254
256
  __RΦ.m("rt:f", "P")(XMLModel.prototype, "properties");
255
- __RΦ.m("rt:t", () => __RΦ.a(1797))(XMLModel.prototype, "parent");
257
+ __RΦ.m("rt:t", () => __RΦ.a(1799))(XMLModel.prototype, "parent");
256
258
  __RΦ.m("rt:f", "P")(XMLModel.prototype, "parent");
257
- __RΦ.m("rt:t", () => __RΦ.a(1802))(XMLModel.prototype, "parent");
259
+ __RΦ.m("rt:t", () => __RΦ.a(1804))(XMLModel.prototype, "parent");
258
260
  __RΦ.m("rt:f", "P")(XMLModel.prototype, "parent");
259
261
  __RΦ.m("rt:t", () => __RΦ.a(13))(XMLModel.prototype, "tagname");
260
262
  __RΦ.m("rt:f", "P")(XMLModel.prototype, "tagname");
261
263
  __RΦ.m("rt:f", "M.")(XMLModel.prototype["fromXML"]);
262
264
  ((t, p) => __RΦ.m("rt:h", () => typeof t === "object" ? t.constructor : t)(t[p]))(XMLModel.prototype, "fromXML");
263
- __RΦ.m("rt:p", [{ n: "xml", t: () => __RΦ.a(539), v: null }])(XMLModel.prototype, "fromXML");
265
+ __RΦ.m("rt:p", [{ n: "xml", t: () => __RΦ.a(541), v: null }])(XMLModel.prototype, "fromXML");
264
266
  __RΦ.m("rt:f", "M.")(XMLModel.prototype, "fromXML");
265
- __RΦ.m("rt:t", () => __RΦ.a(501))(XMLModel.prototype, "fromXML");
266
- __RΦ.m("rt:t", () => __RΦ.a(656))(XMLModel.prototype, "properties");
267
+ __RΦ.m("rt:t", () => __RΦ.a(503))(XMLModel.prototype, "fromXML");
268
+ __RΦ.m("rt:t", () => __RΦ.a(658))(XMLModel.prototype, "properties");
267
269
  __RΦ.m("rt:f", "P")(XMLModel.prototype, "properties");
268
270
  __RΦ.m("rt:f", "M.")(XMLModel.prototype["toXML"]);
269
271
  ((t, p) => __RΦ.m("rt:h", () => typeof t === "object" ? t.constructor : t)(t[p]))(XMLModel.prototype, "toXML");
270
272
  __RΦ.m("rt:p", [{ n: "instance", t: () => __RΦ.a(28), v: null }])(XMLModel.prototype, "toXML");
271
273
  __RΦ.m("rt:f", "M.")(XMLModel.prototype, "toXML");
272
- __RΦ.m("rt:t", () => __RΦ.a(109))(XMLModel.prototype, "toXML");
273
- __RΦ.m("rt:t", () => __RΦ.a(888))(XMLModel.prototype, "properties");
274
+ __RΦ.m("rt:t", () => __RΦ.a(111))(XMLModel.prototype, "toXML");
275
+ __RΦ.m("rt:t", () => __RΦ.a(890))(XMLModel.prototype, "properties");
274
276
  __RΦ.m("rt:f", "P")(XMLModel.prototype, "properties");
275
- __RΦ.m("rt:t", () => __RΦ.a(946))(XMLModel.prototype, "reflectedClass");
277
+ __RΦ.m("rt:t", () => __RΦ.a(948))(XMLModel.prototype, "reflectedClass");
276
278
  __RΦ.m("rt:f", "P")(XMLModel.prototype, "reflectedClass");
277
279
  __RΦ.m("rt:f", "M.")(XMLModel.prototype["resolveAllProperties"]);
278
280
  ((t, p) => __RΦ.m("rt:h", () => typeof t === "object" ? t.constructor : t)(t[p]))(XMLModel.prototype, "resolveAllProperties");
279
281
  __RΦ.m("rt:p", [])(XMLModel.prototype, "resolveAllProperties");
280
282
  __RΦ.m("rt:f", "M.")(XMLModel.prototype, "resolveAllProperties");
281
- __RΦ.m("rt:t", () => __RΦ.a(1067))(XMLModel.prototype, "resolveAllProperties");
283
+ __RΦ.m("rt:t", () => __RΦ.a(1069))(XMLModel.prototype, "resolveAllProperties");
282
284
  function createModel(type, options) {
283
285
  if (findModel(type)) {
284
286
  throw new TypeError(`a model for type ${type.name} already exists`);
@@ -288,17 +290,17 @@ function createModel(type, options) {
288
290
  return model;
289
291
  }
290
292
  exports.createModel = createModel;
291
- __RΦ.m("rt:p", [{ n: "type", t: () => __RΦ.a(1622), v: null }, { n: "options", t: () => __RΦ.a(1621), v: null }])(createModel);
293
+ __RΦ.m("rt:p", [{ n: "type", t: () => __RΦ.a(1624), v: null }, { n: "options", t: () => __RΦ.a(1623), v: null }])(createModel);
292
294
  __RΦ.m("rt:f", "F")(createModel);
293
- __RΦ.m("rt:t", () => __RΦ.a(1655))(createModel);
295
+ __RΦ.m("rt:t", () => __RΦ.a(1657))(createModel);
294
296
  exports.Models = new Map();
295
297
  function findModel(id) {
296
298
  return exports.Models.get(id);
297
299
  }
298
300
  exports.findModel = findModel;
299
- __RΦ.m("rt:p", [{ n: "id", t: () => __RΦ.a(1720), v: null }])(findModel);
301
+ __RΦ.m("rt:p", [{ n: "id", t: () => __RΦ.a(1722), v: null }])(findModel);
300
302
  __RΦ.m("rt:f", "F")(findModel);
301
- __RΦ.m("rt:t", () => __RΦ.a(1733))(findModel);
303
+ __RΦ.m("rt:t", () => __RΦ.a(1735))(findModel);
302
304
  function getModel(id) {
303
305
  const model = findModel(id);
304
306
  if (model)
@@ -307,19 +309,19 @@ function getModel(id) {
307
309
  throw new TypeError(`couln't find model for type ${id.name}`);
308
310
  }
309
311
  exports.getModel = getModel;
310
- __RΦ.m("rt:p", [{ n: "id", t: () => __RΦ.a(1934), v: null }])(getModel);
312
+ __RΦ.m("rt:p", [{ n: "id", t: () => __RΦ.a(1880), v: null }])(getModel);
311
313
  __RΦ.m("rt:f", "F")(getModel);
312
- __RΦ.m("rt:t", () => __RΦ.a(1937))(getModel);
314
+ __RΦ.m("rt:t", () => __RΦ.a(1883))(getModel);
313
315
  // Model decorator
314
316
  function ModelDecoratorFactory(options) {
315
317
  return __RΦ.f(function (constructor) {
316
318
  findModel(constructor) || createModel(constructor, options || {});
317
- }, [__RΦ.m("rt:p", [{ n: "constructor", t: () => __RΦ.a(1943), v: null }]), __RΦ.m("rt:f", "M"), __RΦ.m("rt:t", () => __RΦ.a(22))], "");
319
+ }, [__RΦ.m("rt:p", [{ n: "constructor", t: () => __RΦ.a(1889), v: null }]), __RΦ.m("rt:f", "M"), __RΦ.m("rt:t", () => __RΦ.a(22))], "");
318
320
  }
319
321
  exports.Model = ModelDecoratorFactory;
320
- __RΦ.m("rt:p", [{ n: "options", t: () => __RΦ.a(1940), v: null, f: "?" }])(ModelDecoratorFactory);
322
+ __RΦ.m("rt:p", [{ n: "options", t: () => __RΦ.a(1886), v: null, f: "?" }])(ModelDecoratorFactory);
321
323
  __RΦ.m("rt:f", "F")(ModelDecoratorFactory);
322
- __RΦ.m("rt:t", () => __RΦ.a(1942))(ModelDecoratorFactory);
324
+ __RΦ.m("rt:t", () => __RΦ.a(1888))(ModelDecoratorFactory);
323
325
  var property_2 = require("./property");
324
326
  Object.defineProperty(exports, "Prop", { enumerable: true, get: function () { return property_2.Prop; } });
325
327
  require("../defaults/models");
@@ -16,14 +16,14 @@ const __RΦ = { m: (k, v) => (t, ...a) => t && Reflect.metadata ? Reflect.metada
16
16
  __RΦ.t[id] = t = l;
17
17
  }
18
18
  return t;
19
- }, t: { [203]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(200), p: [__RΦ.a(195)] }) }, [200]: { LΦ: t => require("typescript-rtti/dist").IΦConstructor }, [195]: { LΦ: t => Object }, [199]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(196), p: [__RΦ.a(195)] }) }, [196]: { LΦ: t => require("./types").IΦCreateXMLModelPropertyOptions }, [211]: { LΦ: t => Object }, [215]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(212), p: [__RΦ.a(195)] }) }, [212]: { LΦ: t => require("./types").IΦXMLModelPropertyOptions }, [495]: { LΦ: t => require("typescript-rtti/dist").ReflectedProperty }, [13]: { LΦ: t => String }, [4]: { RΦ: t => ({ TΦ: "~" }) }, [20]: { LΦ: t => Boolean }, [105]: { RΦ: t => ({ TΦ: "[", e: __RΦ.a(103) }) }, [103]: { LΦ: t => require("../types").IΦXMLElement }, [1]: { RΦ: t => ({ TΦ: "~" }) }, [109]: { RΦ: t => ({ TΦ: "O", m: [{ n: "elements", f: "", t: __RΦ.a(105) }] }) }, [1405]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(200), p: [__RΦ.a(1404)] }) }, [1404]: { LΦ: t => Object }, [1407]: { LΦ: t => Object }, [1408]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(212), p: [__RΦ.a(1404)] }) }, [22]: { RΦ: t => ({ TΦ: "V" }) }, [1420]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(200), p: [__RΦ.a(1419)] }) }, [1419]: { LΦ: t => Object }, [1422]: { LΦ: t => Object }, [1431]: { RΦ: t => ({ TΦ: "|", t: [__RΦ.a(10), __RΦ.a(1423)] }) }, [10]: { RΦ: t => ({ TΦ: "u" }) }, [1423]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(212), p: [__RΦ.a(1419)] }) }, [1437]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(200), p: [__RΦ.a(1436)] }) }, [1436]: { LΦ: t => Object }, [1439]: { LΦ: t => Object }, [1463]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(212), p: [__RΦ.a(1436)] }) }, [1470]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(196), p: [__RΦ.a(1469)] }) }, [1469]: { LΦ: t => Object }, [1472]: { RΦ: t => ({ TΦ: "F", r: __RΦ.a(22), p: [{ n: "prototype", t: () => __RΦ.a(1), v: null }, { n: "property", t: () => __RΦ.a(1474), v: null }], f: "" }) }, [1474]: { LΦ: t => Object } } };
19
+ }, t: { [205]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(202), p: [__RΦ.a(197)] }) }, [202]: { LΦ: t => require("typescript-rtti/dist").IΦConstructor }, [197]: { LΦ: t => Object }, [201]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(198), p: [__RΦ.a(197)] }) }, [198]: { LΦ: t => require("./types").IΦCreateXMLModelPropertyOptions }, [213]: { LΦ: t => Object }, [217]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(214), p: [__RΦ.a(197)] }) }, [214]: { LΦ: t => require("./types").IΦXMLModelPropertyOptions }, [497]: { LΦ: t => require("typescript-rtti/dist").ReflectedProperty }, [13]: { LΦ: t => String }, [4]: { RΦ: t => ({ TΦ: "~" }) }, [20]: { LΦ: t => Boolean }, [107]: { RΦ: t => ({ TΦ: "[", e: __RΦ.a(105) }) }, [105]: { LΦ: t => require("../types").IΦXMLElement }, [1]: { RΦ: t => ({ TΦ: "~" }) }, [111]: { RΦ: t => ({ TΦ: "O", m: [{ n: "elements", f: "", t: __RΦ.a(107) }] }) }, [1407]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(202), p: [__RΦ.a(1406)] }) }, [1406]: { LΦ: t => Object }, [1409]: { LΦ: t => Object }, [1410]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(214), p: [__RΦ.a(1406)] }) }, [22]: { RΦ: t => ({ TΦ: "V" }) }, [1422]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(202), p: [__RΦ.a(1421)] }) }, [1421]: { LΦ: t => Object }, [1424]: { LΦ: t => Object }, [1433]: { RΦ: t => ({ TΦ: "|", t: [__RΦ.a(10), __RΦ.a(1425)] }) }, [10]: { RΦ: t => ({ TΦ: "u" }) }, [1425]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(214), p: [__RΦ.a(1421)] }) }, [1439]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(202), p: [__RΦ.a(1438)] }) }, [1438]: { LΦ: t => Object }, [1441]: { LΦ: t => Object }, [1465]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(214), p: [__RΦ.a(1438)] }) }, [1472]: { RΦ: t => ({ TΦ: "g", t: __RΦ.a(198), p: [__RΦ.a(1471)] }) }, [1471]: { LΦ: t => Object }, [1474]: { RΦ: t => ({ TΦ: "F", r: __RΦ.a(22), p: [{ n: "prototype", t: () => __RΦ.a(1), v: null }, { n: "property", t: () => __RΦ.a(1476), v: null }], f: "" }) }, [1476]: { LΦ: t => Object } } };
20
20
  const typescript_rtti_1 = require("typescript-rtti");
21
21
  const defaults_1 = require("../defaults");
22
22
  function resolvePropertyConversionOptions(options, constructor, property) {
23
23
  const _options = {
24
24
  name: property,
25
25
  get reflected() {
26
- return (0, typescript_rtti_1.reflect)(constructor, { TΦ: "c", t: void 0, p: [__RΦ.a(203)], r: void 0, tp: [] }).getProperty(property);
26
+ return (0, typescript_rtti_1.reflect)(constructor, { TΦ: "c", t: void 0, p: [__RΦ.a(205)], r: void 0, tp: [] }).getProperty(property);
27
27
  },
28
28
  get tagname() {
29
29
  return options.tagname || defaults_1.defaults.tagnameFromProperty(this);
@@ -33,9 +33,9 @@ function resolvePropertyConversionOptions(options, constructor, property) {
33
33
  isSourceElement: __RΦ.f((...args) => defaults_1.defaults.propertySourceElementsFilter(...args), [__RΦ.m("rt:p", [{ n: "args", t: () => __RΦ.a(4), v: null, f: "3" }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(20))], "isSourceElement"),
34
34
  resolveElements: options.resolveElements
35
35
  ? options.resolveElements
36
- : __RΦ.f((...args) => defaults_1.defaults.propertyResolveSourceElements(...args), [__RΦ.m("rt:p", [{ n: "args", t: () => __RΦ.a(4), v: null, f: "3" }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(105))], ""),
36
+ : __RΦ.f((...args) => defaults_1.defaults.propertyResolveSourceElements(...args), [__RΦ.m("rt:p", [{ n: "args", t: () => __RΦ.a(4), v: null, f: "3" }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(107))], ""),
37
37
  fromXML: __RΦ.f((context) => (options.fromXML || defaults_1.defaults.propertyFromXML)(context), [__RΦ.m("rt:p", [{ n: "context", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(1))], "fromXML"),
38
- toXML: __RΦ.f((context) => (options.toXML || defaults_1.defaults.propertyToXML)(context), [__RΦ.m("rt:p", [{ n: "context", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(109))], "toXML"),
38
+ toXML: __RΦ.f((context) => (options.toXML || defaults_1.defaults.propertyToXML)(context), [__RΦ.m("rt:p", [{ n: "context", t: () => __RΦ.a(4), v: null }]), __RΦ.m("rt:f", "F>"), __RΦ.m("rt:t", () => __RΦ.a(111))], "toXML"),
39
39
  };
40
40
  if (options === null || options === void 0 ? void 0 : options.model)
41
41
  _options.model = options.model;
@@ -53,9 +53,9 @@ function resolvePropertyConversionOptions(options, constructor, property) {
53
53
  }
54
54
  return _options;
55
55
  }
56
- __RΦ.m("rt:p", [{ n: "options", t: () => __RΦ.a(199), v: null }, { n: "constructor", t: () => __RΦ.a(203), v: null }, { n: "property", t: () => __RΦ.a(211), v: null }])(resolvePropertyConversionOptions);
56
+ __RΦ.m("rt:p", [{ n: "options", t: () => __RΦ.a(201), v: null }, { n: "constructor", t: () => __RΦ.a(205), v: null }, { n: "property", t: () => __RΦ.a(213), v: null }])(resolvePropertyConversionOptions);
57
57
  __RΦ.m("rt:f", "F")(resolvePropertyConversionOptions);
58
- __RΦ.m("rt:t", () => __RΦ.a(215))(resolvePropertyConversionOptions);
58
+ __RΦ.m("rt:t", () => __RΦ.a(217))(resolvePropertyConversionOptions);
59
59
  const PropertyOptions = new Map();
60
60
  function storePropertyConversionOptions(constructor, property, options) {
61
61
  let map = PropertyOptions.get(constructor);
@@ -65,7 +65,7 @@ function storePropertyConversionOptions(constructor, property, options) {
65
65
  }
66
66
  map.set(property, options);
67
67
  }
68
- __RΦ.m("rt:p", [{ n: "constructor", t: () => __RΦ.a(1405), v: null }, { n: "property", t: () => __RΦ.a(1407), v: null }, { n: "options", t: () => __RΦ.a(1408), v: null }])(storePropertyConversionOptions);
68
+ __RΦ.m("rt:p", [{ n: "constructor", t: () => __RΦ.a(1407), v: null }, { n: "property", t: () => __RΦ.a(1409), v: null }, { n: "options", t: () => __RΦ.a(1410), v: null }])(storePropertyConversionOptions);
69
69
  __RΦ.m("rt:f", "F")(storePropertyConversionOptions);
70
70
  __RΦ.m("rt:t", () => __RΦ.a(22))(storePropertyConversionOptions);
71
71
  function findPropertyConversionOptions(constructor, property) {
@@ -74,24 +74,24 @@ function findPropertyConversionOptions(constructor, property) {
74
74
  return options.get(property);
75
75
  }
76
76
  }
77
- __RΦ.m("rt:p", [{ n: "constructor", t: () => __RΦ.a(1420), v: null }, { n: "property", t: () => __RΦ.a(1422), v: null }])(findPropertyConversionOptions);
77
+ __RΦ.m("rt:p", [{ n: "constructor", t: () => __RΦ.a(1422), v: null }, { n: "property", t: () => __RΦ.a(1424), v: null }])(findPropertyConversionOptions);
78
78
  __RΦ.m("rt:f", "F")(findPropertyConversionOptions);
79
- __RΦ.m("rt:t", () => __RΦ.a(1431))(findPropertyConversionOptions);
79
+ __RΦ.m("rt:t", () => __RΦ.a(1433))(findPropertyConversionOptions);
80
80
  function getPropertyConversionOptions(constructor, property) {
81
81
  const options = findPropertyConversionOptions(constructor, property);
82
82
  return options || resolvePropertyConversionOptions({}, constructor, property);
83
83
  }
84
84
  exports.getPropertyConversionOptions = getPropertyConversionOptions;
85
- __RΦ.m("rt:p", [{ n: "constructor", t: () => __RΦ.a(1437), v: null }, { n: "property", t: () => __RΦ.a(1439), v: null }])(getPropertyConversionOptions);
85
+ __RΦ.m("rt:p", [{ n: "constructor", t: () => __RΦ.a(1439), v: null }, { n: "property", t: () => __RΦ.a(1441), v: null }])(getPropertyConversionOptions);
86
86
  __RΦ.m("rt:f", "F")(getPropertyConversionOptions);
87
- __RΦ.m("rt:t", () => __RΦ.a(1463))(getPropertyConversionOptions);
87
+ __RΦ.m("rt:t", () => __RΦ.a(1465))(getPropertyConversionOptions);
88
88
  function PropDecoratorFactory(options) {
89
89
  return __RΦ.f(function (prototype, property) {
90
90
  const _options = resolvePropertyConversionOptions(options || {}, prototype.constructor, property);
91
91
  storePropertyConversionOptions(prototype.constructor, property, _options);
92
- }, [__RΦ.m("rt:p", [{ n: "prototype", t: () => __RΦ.a(1), v: null }, { n: "property", t: () => __RΦ.a(1474), v: null }]), __RΦ.m("rt:f", "M."), __RΦ.m("rt:t", () => __RΦ.a(22))], "");
92
+ }, [__RΦ.m("rt:p", [{ n: "prototype", t: () => __RΦ.a(1), v: null }, { n: "property", t: () => __RΦ.a(1476), v: null }]), __RΦ.m("rt:f", "M."), __RΦ.m("rt:t", () => __RΦ.a(22))], "");
93
93
  }
94
94
  exports.Prop = PropDecoratorFactory;
95
- __RΦ.m("rt:p", [{ n: "options", t: () => __RΦ.a(1470), v: null, f: "?" }])(PropDecoratorFactory);
95
+ __RΦ.m("rt:p", [{ n: "options", t: () => __RΦ.a(1472), v: null, f: "?" }])(PropDecoratorFactory);
96
96
  __RΦ.m("rt:f", "F")(PropDecoratorFactory);
97
- __RΦ.m("rt:t", () => __RΦ.a(1472))(PropDecoratorFactory);
97
+ __RΦ.m("rt:t", () => __RΦ.a(1474))(PropDecoratorFactory);