You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
			
				
					235 lines
				
				8.1 KiB
			
		
		
			
		
	
	
					235 lines
				
				8.1 KiB
			| 
											11 months ago
										 | import _typeof from "./typeof.js"; | ||
|  | import setFunctionName from "./setFunctionName.js"; | ||
|  | import toPropertyKey from "./toPropertyKey.js"; | ||
|  | function old_createMetadataMethodsForProperty(e, t, a, r) { | ||
|  |   return { | ||
|  |     getMetadata: function getMetadata(o) { | ||
|  |       old_assertNotFinished(r, "getMetadata"), old_assertMetadataKey(o); | ||
|  |       var i = e[o]; | ||
|  |       if (void 0 !== i) if (1 === t) { | ||
|  |         var n = i["public"]; | ||
|  |         if (void 0 !== n) return n[a]; | ||
|  |       } else if (2 === t) { | ||
|  |         var l = i["private"]; | ||
|  |         if (void 0 !== l) return l.get(a); | ||
|  |       } else if (Object.hasOwnProperty.call(i, "constructor")) return i.constructor; | ||
|  |     }, | ||
|  |     setMetadata: function setMetadata(o, i) { | ||
|  |       old_assertNotFinished(r, "setMetadata"), old_assertMetadataKey(o); | ||
|  |       var n = e[o]; | ||
|  |       if (void 0 === n && (n = e[o] = {}), 1 === t) { | ||
|  |         var l = n["public"]; | ||
|  |         void 0 === l && (l = n["public"] = {}), l[a] = i; | ||
|  |       } else if (2 === t) { | ||
|  |         var s = n.priv; | ||
|  |         void 0 === s && (s = n["private"] = new Map()), s.set(a, i); | ||
|  |       } else n.constructor = i; | ||
|  |     } | ||
|  |   }; | ||
|  | } | ||
|  | function old_convertMetadataMapToFinal(e, t) { | ||
|  |   var a = e[Symbol.metadata || Symbol["for"]("Symbol.metadata")], | ||
|  |     r = Object.getOwnPropertySymbols(t); | ||
|  |   if (0 !== r.length) { | ||
|  |     for (var o = 0; o < r.length; o++) { | ||
|  |       var i = r[o], | ||
|  |         n = t[i], | ||
|  |         l = a ? a[i] : null, | ||
|  |         s = n["public"], | ||
|  |         c = l ? l["public"] : null; | ||
|  |       s && c && Object.setPrototypeOf(s, c); | ||
|  |       var d = n["private"]; | ||
|  |       if (d) { | ||
|  |         var u = Array.from(d.values()), | ||
|  |           f = l ? l["private"] : null; | ||
|  |         f && (u = u.concat(f)), n["private"] = u; | ||
|  |       } | ||
|  |       l && Object.setPrototypeOf(n, l); | ||
|  |     } | ||
|  |     a && Object.setPrototypeOf(t, a), e[Symbol.metadata || Symbol["for"]("Symbol.metadata")] = t; | ||
|  |   } | ||
|  | } | ||
|  | function old_createAddInitializerMethod(e, t) { | ||
|  |   return function (a) { | ||
|  |     old_assertNotFinished(t, "addInitializer"), old_assertCallable(a, "An initializer"), e.push(a); | ||
|  |   }; | ||
|  | } | ||
|  | function old_memberDec(e, t, a, r, o, i, n, l, s) { | ||
|  |   var c; | ||
|  |   switch (i) { | ||
|  |     case 1: | ||
|  |       c = "accessor"; | ||
|  |       break; | ||
|  |     case 2: | ||
|  |       c = "method"; | ||
|  |       break; | ||
|  |     case 3: | ||
|  |       c = "getter"; | ||
|  |       break; | ||
|  |     case 4: | ||
|  |       c = "setter"; | ||
|  |       break; | ||
|  |     default: | ||
|  |       c = "field"; | ||
|  |   } | ||
|  |   var d, | ||
|  |     u, | ||
|  |     f = { | ||
|  |       kind: c, | ||
|  |       name: l ? "#" + t : toPropertyKey(t), | ||
|  |       isStatic: n, | ||
|  |       isPrivate: l | ||
|  |     }, | ||
|  |     p = { | ||
|  |       v: !1 | ||
|  |     }; | ||
|  |   if (0 !== i && (f.addInitializer = old_createAddInitializerMethod(o, p)), l) { | ||
|  |     d = 2, u = Symbol(t); | ||
|  |     var v = {}; | ||
|  |     0 === i ? (v.get = a.get, v.set = a.set) : 2 === i ? v.get = function () { | ||
|  |       return a.value; | ||
|  |     } : (1 !== i && 3 !== i || (v.get = function () { | ||
|  |       return a.get.call(this); | ||
|  |     }), 1 !== i && 4 !== i || (v.set = function (e) { | ||
|  |       a.set.call(this, e); | ||
|  |     })), f.access = v; | ||
|  |   } else d = 1, u = t; | ||
|  |   try { | ||
|  |     return e(s, Object.assign(f, old_createMetadataMethodsForProperty(r, d, u, p))); | ||
|  |   } finally { | ||
|  |     p.v = !0; | ||
|  |   } | ||
|  | } | ||
|  | function old_assertNotFinished(e, t) { | ||
|  |   if (e.v) throw Error("attempted to call " + t + " after decoration was finished"); | ||
|  | } | ||
|  | function old_assertMetadataKey(e) { | ||
|  |   if ("symbol" != _typeof(e)) throw new TypeError("Metadata keys must be symbols, received: " + e); | ||
|  | } | ||
|  | function old_assertCallable(e, t) { | ||
|  |   if ("function" != typeof e) throw new TypeError(t + " must be a function"); | ||
|  | } | ||
|  | function old_assertValidReturnValue(e, t) { | ||
|  |   var a = _typeof(t); | ||
|  |   if (1 === e) { | ||
|  |     if ("object" !== a || null === t) throw new TypeError("accessor decorators must return an object with get, set, or init properties or void 0"); | ||
|  |     void 0 !== t.get && old_assertCallable(t.get, "accessor.get"), void 0 !== t.set && old_assertCallable(t.set, "accessor.set"), void 0 !== t.init && old_assertCallable(t.init, "accessor.init"), void 0 !== t.initializer && old_assertCallable(t.initializer, "accessor.initializer"); | ||
|  |   } else if ("function" !== a) throw new TypeError((0 === e ? "field" : 10 === e ? "class" : "method") + " decorators must return a function or void 0"); | ||
|  | } | ||
|  | function old_getInit(e) { | ||
|  |   var t; | ||
|  |   return null == (t = e.init) && (t = e.initializer) && void 0 !== console && console.warn(".initializer has been renamed to .init as of March 2022"), t; | ||
|  | } | ||
|  | function old_applyMemberDec(e, t, a, r, o, i, n, l, s) { | ||
|  |   var c, | ||
|  |     d, | ||
|  |     u, | ||
|  |     f, | ||
|  |     p, | ||
|  |     v, | ||
|  |     y, | ||
|  |     h = a[0]; | ||
|  |   if (n ? (0 === o || 1 === o ? (c = { | ||
|  |     get: a[3], | ||
|  |     set: a[4] | ||
|  |   }, u = "get") : 3 === o ? (c = { | ||
|  |     get: a[3] | ||
|  |   }, u = "get") : 4 === o ? (c = { | ||
|  |     set: a[3] | ||
|  |   }, u = "set") : c = { | ||
|  |     value: a[3] | ||
|  |   }, 0 !== o && (1 === o && setFunctionName(a[4], "#" + r, "set"), setFunctionName(a[3], "#" + r, u))) : 0 !== o && (c = Object.getOwnPropertyDescriptor(t, r)), 1 === o ? f = { | ||
|  |     get: c.get, | ||
|  |     set: c.set | ||
|  |   } : 2 === o ? f = c.value : 3 === o ? f = c.get : 4 === o && (f = c.set), "function" == typeof h) void 0 !== (p = old_memberDec(h, r, c, l, s, o, i, n, f)) && (old_assertValidReturnValue(o, p), 0 === o ? d = p : 1 === o ? (d = old_getInit(p), v = p.get || f.get, y = p.set || f.set, f = { | ||
|  |     get: v, | ||
|  |     set: y | ||
|  |   }) : f = p);else for (var m = h.length - 1; m >= 0; m--) { | ||
|  |     var b; | ||
|  |     void 0 !== (p = old_memberDec(h[m], r, c, l, s, o, i, n, f)) && (old_assertValidReturnValue(o, p), 0 === o ? b = p : 1 === o ? (b = old_getInit(p), v = p.get || f.get, y = p.set || f.set, f = { | ||
|  |       get: v, | ||
|  |       set: y | ||
|  |     }) : f = p, void 0 !== b && (void 0 === d ? d = b : "function" == typeof d ? d = [d, b] : d.push(b))); | ||
|  |   } | ||
|  |   if (0 === o || 1 === o) { | ||
|  |     if (void 0 === d) d = function d(e, t) { | ||
|  |       return t; | ||
|  |     };else if ("function" != typeof d) { | ||
|  |       var g = d; | ||
|  |       d = function d(e, t) { | ||
|  |         for (var a = t, r = 0; r < g.length; r++) a = g[r].call(e, a); | ||
|  |         return a; | ||
|  |       }; | ||
|  |     } else { | ||
|  |       var _ = d; | ||
|  |       d = function d(e, t) { | ||
|  |         return _.call(e, t); | ||
|  |       }; | ||
|  |     } | ||
|  |     e.push(d); | ||
|  |   } | ||
|  |   0 !== o && (1 === o ? (c.get = f.get, c.set = f.set) : 2 === o ? c.value = f : 3 === o ? c.get = f : 4 === o && (c.set = f), n ? 1 === o ? (e.push(function (e, t) { | ||
|  |     return f.get.call(e, t); | ||
|  |   }), e.push(function (e, t) { | ||
|  |     return f.set.call(e, t); | ||
|  |   })) : 2 === o ? e.push(f) : e.push(function (e, t) { | ||
|  |     return f.call(e, t); | ||
|  |   }) : Object.defineProperty(t, r, c)); | ||
|  | } | ||
|  | function old_applyMemberDecs(e, t, a, r, o) { | ||
|  |   for (var i, n, l = new Map(), s = new Map(), c = 0; c < o.length; c++) { | ||
|  |     var d = o[c]; | ||
|  |     if (Array.isArray(d)) { | ||
|  |       var u, | ||
|  |         f, | ||
|  |         p, | ||
|  |         v = d[1], | ||
|  |         y = d[2], | ||
|  |         h = d.length > 3, | ||
|  |         m = v >= 5; | ||
|  |       if (m ? (u = t, f = r, 0 != (v -= 5) && (p = n = n || [])) : (u = t.prototype, f = a, 0 !== v && (p = i = i || [])), 0 !== v && !h) { | ||
|  |         var b = m ? s : l, | ||
|  |           g = b.get(y) || 0; | ||
|  |         if (!0 === g || 3 === g && 4 !== v || 4 === g && 3 !== v) throw Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: " + y); | ||
|  |         !g && v > 2 ? b.set(y, v) : b.set(y, !0); | ||
|  |       } | ||
|  |       old_applyMemberDec(e, u, d, y, v, m, h, f, p); | ||
|  |     } | ||
|  |   } | ||
|  |   old_pushInitializers(e, i), old_pushInitializers(e, n); | ||
|  | } | ||
|  | function old_pushInitializers(e, t) { | ||
|  |   t && e.push(function (e) { | ||
|  |     for (var a = 0; a < t.length; a++) t[a].call(e); | ||
|  |     return e; | ||
|  |   }); | ||
|  | } | ||
|  | function old_applyClassDecs(e, t, a, r) { | ||
|  |   if (r.length > 0) { | ||
|  |     for (var o = [], i = t, n = t.name, l = r.length - 1; l >= 0; l--) { | ||
|  |       var s = { | ||
|  |         v: !1 | ||
|  |       }; | ||
|  |       try { | ||
|  |         var c = Object.assign({ | ||
|  |             kind: "class", | ||
|  |             name: n, | ||
|  |             addInitializer: old_createAddInitializerMethod(o, s) | ||
|  |           }, old_createMetadataMethodsForProperty(a, 0, n, s)), | ||
|  |           d = r[l](i, c); | ||
|  |       } finally { | ||
|  |         s.v = !0; | ||
|  |       } | ||
|  |       void 0 !== d && (old_assertValidReturnValue(10, d), i = d); | ||
|  |     } | ||
|  |     e.push(i, function () { | ||
|  |       for (var e = 0; e < o.length; e++) o[e].call(i); | ||
|  |     }); | ||
|  |   } | ||
|  | } | ||
|  | export default function applyDecs(e, t, a) { | ||
|  |   var r = [], | ||
|  |     o = {}, | ||
|  |     i = {}; | ||
|  |   return old_applyMemberDecs(r, e, i, o, t), old_convertMetadataMapToFinal(e.prototype, i), old_applyClassDecs(r, e, o, a), old_convertMetadataMapToFinal(e, o), r; | ||
|  | } |