UNPKG

3.9 kBJavaScriptView Raw
1"use strict";
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6exports.state = undefined;
7
8var _getPrototypeOf = require("babel-runtime/core-js/object/get-prototype-of");
9
10var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
11
12var _classCallCheck2 = require("babel-runtime/helpers/classCallCheck");
13
14var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
15
16var _createClass2 = require("babel-runtime/helpers/createClass");
17
18var _createClass3 = _interopRequireDefault(_createClass2);
19
20var _possibleConstructorReturn2 = require("babel-runtime/helpers/possibleConstructorReturn");
21
22var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
23
24var _get3 = require("babel-runtime/helpers/get");
25
26var _get4 = _interopRequireDefault(_get3);
27
28var _inherits2 = require("babel-runtime/helpers/inherits");
29
30var _inherits3 = _interopRequireDefault(_inherits2);
31
32var _standardIo = require("standard-io");
33
34function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
35
36var state = exports.state = function state(Class) {
37 return function (_Class) {
38 (0, _inherits3.default)(_class, _Class);
39
40 function _class() {
41 var _Object$getPrototypeO;
42
43 (0, _classCallCheck3.default)(this, _class);
44
45 for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
46 args[_key] = arguments[_key];
47 }
48
49 return (0, _possibleConstructorReturn3.default)(this, (_Object$getPrototypeO = (0, _getPrototypeOf2.default)(_class)).call.apply(_Object$getPrototypeO, [this].concat(args)));
50 }
51
52 (0, _createClass3.default)(_class, [{
53 key: "beforeInit",
54 value: function beforeInit() {
55 var _this2 = this;
56
57 var ignore = this.Class.industry().ignore.Class;
58 for (var name in this.functions()) {
59 if (ignore.indexOf(name) == -1) {
60 (function () {
61 var fn = _this2[name];
62 _this2[name] = function () {
63 for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
64 args[_key2] = arguments[_key2];
65 }
66
67 return fn.bind(_this2).apply(undefined, args.concat([{ state: _this2.state() }]));
68 };
69 })();
70 }
71 }
72 (0, _get4.default)((0, _getPrototypeOf2.default)(_class.prototype), "beforeInit", this).call(this);
73 }
74 }, {
75 key: "state",
76 value: function state() {
77 for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
78 args[_key3] = arguments[_key3];
79 }
80
81 this._state = (0, _standardIo.mergeObjects)((0, _standardIo.toObjects)(args), this._state);
82
83 if (this.updated && args.length) {
84 return this.updated();
85 } else {
86 return this._state;
87 }
88 }
89 }], [{
90 key: "beforeFactoryOnce",
91 value: function beforeFactoryOnce() {
92 this.industry({
93 ignore: {
94 args: ["state"],
95 instance: ["state"]
96 }
97 });
98 (0, _get4.default)((0, _getPrototypeOf2.default)(_class), "beforeFactoryOnce", this).call(this);
99 }
100 }, {
101 key: "factory",
102 value: function factory() {
103 if ((0, _get4.default)((0, _getPrototypeOf2.default)(_class), "factory", this)) {
104 var _get2;
105
106 for (var _len4 = arguments.length, args = Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
107 args[_key4] = arguments[_key4];
108 }
109
110 var instance = (_get2 = (0, _get4.default)((0, _getPrototypeOf2.default)(_class), "factory", this)).call.apply(_get2, [this].concat(args));
111 instance.state.apply(instance, args);
112 return instance;
113 }
114 }
115 }]);
116 return _class;
117 }(Class);
118};
119//# sourceMappingURL=industry-state.js.map
\No newline at end of file