123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133 |
- import _typeof from "./typeof.js";
- import checkInRHS from "./checkInRHS.js";
- import setFunctionName from "./setFunctionName.js";
- import toPropertyKey from "./toPropertyKey.js";
- function applyDecs2305(e, t, r, n, o, a) {
- function i(e, t, r) {
- return function (n, o) {
- return r && r(n), e[t].call(n, o);
- };
- }
- function c(e, t) {
- for (var r = 0; r < e.length; r++) e[r].call(t);
- return t;
- }
- function s(e, t, r, n) {
- if ("function" != typeof e && (n || void 0 !== e)) throw new TypeError(t + " must " + (r || "be") + " a function" + (n ? "" : " or undefined"));
- return e;
- }
- function applyDec(e, t, r, n, o, a, c, u, l, f, p, d, h) {
- function m(e) {
- if (!h(e)) throw new TypeError("Attempted to access private element on non-instance");
- }
- var y,
- v = t[0],
- g = t[3],
- b = !u;
- if (!b) {
- r || Array.isArray(v) || (v = [v]);
- var w = {},
- S = [],
- A = 3 === o ? "get" : 4 === o || d ? "set" : "value";
- f ? (p || d ? w = {
- get: setFunctionName(function () {
- return g(this);
- }, n, "get"),
- set: function set(e) {
- t[4](this, e);
- }
- } : w[A] = g, p || setFunctionName(w[A], n, 2 === o ? "" : A)) : p || (w = Object.getOwnPropertyDescriptor(e, n));
- }
- for (var P = e, j = v.length - 1; j >= 0; j -= r ? 2 : 1) {
- var D = v[j],
- E = r ? v[j - 1] : void 0,
- I = {},
- O = {
- kind: ["field", "accessor", "method", "getter", "setter", "class"][o],
- name: n,
- metadata: a,
- addInitializer: function (e, t) {
- if (e.v) throw Error("attempted to call addInitializer after decoration was finished");
- s(t, "An initializer", "be", !0), c.push(t);
- }.bind(null, I)
- };
- try {
- if (b) (y = s(D.call(E, P, O), "class decorators", "return")) && (P = y);else {
- var k, F;
- O["static"] = l, O["private"] = f, f ? 2 === o ? k = function k(e) {
- return m(e), w.value;
- } : (o < 4 && (k = i(w, "get", m)), 3 !== o && (F = i(w, "set", m))) : (k = function k(e) {
- return e[n];
- }, (o < 2 || 4 === o) && (F = function F(e, t) {
- e[n] = t;
- }));
- var N = O.access = {
- has: f ? h.bind() : function (e) {
- return n in e;
- }
- };
- if (k && (N.get = k), F && (N.set = F), P = D.call(E, d ? {
- get: w.get,
- set: w.set
- } : w[A], O), d) {
- if ("object" == _typeof(P) && P) (y = s(P.get, "accessor.get")) && (w.get = y), (y = s(P.set, "accessor.set")) && (w.set = y), (y = s(P.init, "accessor.init")) && S.push(y);else if (void 0 !== P) throw new TypeError("accessor decorators must return an object with get, set, or init properties or void 0");
- } else s(P, (p ? "field" : "method") + " decorators", "return") && (p ? S.push(P) : w[A] = P);
- }
- } finally {
- I.v = !0;
- }
- }
- return (p || d) && u.push(function (e, t) {
- for (var r = S.length - 1; r >= 0; r--) t = S[r].call(e, t);
- return t;
- }), p || b || (f ? d ? u.push(i(w, "get"), i(w, "set")) : u.push(2 === o ? w[A] : i.call.bind(w[A])) : Object.defineProperty(e, n, w)), P;
- }
- function u(e, t) {
- return Object.defineProperty(e, Symbol.metadata || Symbol["for"]("Symbol.metadata"), {
- configurable: !0,
- enumerable: !0,
- value: t
- });
- }
- if (arguments.length >= 6) var l = a[Symbol.metadata || Symbol["for"]("Symbol.metadata")];
- var f = Object.create(null == l ? null : l),
- p = function (e, t, r, n) {
- var o,
- a,
- i = [],
- s = function s(t) {
- return checkInRHS(t) === e;
- },
- u = new Map();
- function l(e) {
- e && i.push(c.bind(null, e));
- }
- for (var f = 0; f < t.length; f++) {
- var p = t[f];
- if (Array.isArray(p)) {
- var d = p[1],
- h = p[2],
- m = p.length > 3,
- y = 16 & d,
- v = !!(8 & d),
- g = 0 == (d &= 7),
- b = h + "/" + v;
- if (!g && !m) {
- var w = u.get(b);
- if (!0 === w || 3 === w && 4 !== d || 4 === w && 3 !== d) 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: " + h);
- u.set(b, !(d > 2) || d);
- }
- applyDec(v ? e : e.prototype, p, y, m ? "#" + h : toPropertyKey(h), d, n, v ? a = a || [] : o = o || [], i, v, m, g, 1 === d, v && m ? s : r);
- }
- }
- return l(o), l(a), i;
- }(e, t, o, f);
- return r.length || u(e, f), {
- e: p,
- get c() {
- var t = [];
- return r.length && [u(applyDec(e, [r], n, e.name, 5, f, t), f), c.bind(null, t, e)];
- }
- };
- }
- export { applyDecs2305 as default };
|