UNPKG

1.52 kBJavaScriptView Raw
1import _forEachInstanceProperty from "@babel/runtime-corejs3/core-js/instance/for-each";
2import _Object$keys from "@babel/runtime-corejs3/core-js/object/keys";
3import _reduceInstanceProperty from "@babel/runtime-corejs3/core-js/instance/reduce";
4import _reverseInstanceProperty from "@babel/runtime-corejs3/core-js/instance/reverse";
5import _sliceInstanceProperty from "@babel/runtime-corejs3/core-js/instance/slice";
6import _Object$defineProperty from "@babel/runtime-corejs3/core-js/object/define-property";
7export default function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) {
8 var _context, _context2, _context3;
9
10 var desc = {};
11
12 _forEachInstanceProperty(_context = _Object$keys(descriptor)).call(_context, function (key) {
13 desc[key] = descriptor[key];
14 });
15
16 desc.enumerable = !!desc.enumerable;
17 desc.configurable = !!desc.configurable;
18
19 if ('value' in desc || desc.initializer) {
20 desc.writable = true;
21 }
22
23 desc = _reduceInstanceProperty(_context2 = _reverseInstanceProperty(_context3 = _sliceInstanceProperty(decorators).call(decorators)).call(_context3)).call(_context2, function (desc, decorator) {
24 return decorator(target, property, desc) || desc;
25 }, desc);
26
27 if (context && desc.initializer !== void 0) {
28 desc.value = desc.initializer ? desc.initializer.call(context) : void 0;
29 desc.initializer = undefined;
30 }
31
32 if (desc.initializer === void 0) {
33 _Object$defineProperty(target, property, desc);
34
35 desc = null;
36 }
37
38 return desc;
39}
\No newline at end of file