react-native-web-headroom
Version:
React Native Web Headroom
155 lines (124 loc) • 4.25 kB
JavaScript
"use strict";
var _from = require("babel-runtime/core-js/array/from");
var _from2 = _interopRequireDefault(_from);
var _getIterator2 = require("babel-runtime/core-js/get-iterator");
var _getIterator3 = _interopRequireDefault(_getIterator2);
var _slicedToArray2 = require("babel-runtime/helpers/slicedToArray");
var _slicedToArray3 = _interopRequireDefault(_slicedToArray2);
var _set = require("babel-runtime/core-js/set");
var _set2 = _interopRequireDefault(_set);
var _map = require("babel-runtime/core-js/map");
var _map2 = _interopRequireDefault(_map);
var _classCallCheck2 = require("babel-runtime/helpers/classCallCheck");
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = require("babel-runtime/helpers/createClass");
var _createClass3 = _interopRequireDefault(_createClass2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/*
* Copyright (c) 2015, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD-style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*
*
*
*/
var Documentation = function () {
function Documentation() {
(0, _classCallCheck3.default)(this, Documentation);
this._props = new _map2.default();
this._composes = new _set2.default();
this._data = new _map2.default();
}
(0, _createClass3.default)(Documentation, [{
key: "addComposes",
value: function addComposes(moduleName) {
this._composes.add(moduleName);
}
}, {
key: "set",
value: function set(key, value) {
this._data.set(key, value);
}
}, {
key: "get",
value: function get(key) {
return this._data.get(key);
}
}, {
key: "getPropDescriptor",
value: function getPropDescriptor(propName) {
var propDescriptor = this._props.get(propName);
if (!propDescriptor) {
this._props.set(propName, propDescriptor = {});
}
return propDescriptor;
}
}, {
key: "toObject",
value: function toObject() {
var obj = {};
var _iteratorNormalCompletion = true;
var _didIteratorError = false;
var _iteratorError = undefined;
try {
for (var _iterator = (0, _getIterator3.default)(this._data), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
var _ref = _step.value;
var _ref2 = (0, _slicedToArray3.default)(_ref, 2);
var key = _ref2[0];
var value = _ref2[1];
obj[key] = value;
}
} catch (err) {
_didIteratorError = true;
_iteratorError = err;
} finally {
try {
if (!_iteratorNormalCompletion && _iterator.return) {
_iterator.return();
}
} finally {
if (_didIteratorError) {
throw _iteratorError;
}
}
}
if (this._props.size > 0) {
obj.props = {};
var _iteratorNormalCompletion2 = true;
var _didIteratorError2 = false;
var _iteratorError2 = undefined;
try {
for (var _iterator2 = (0, _getIterator3.default)(this._props), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
var _ref3 = _step2.value;
var _ref4 = (0, _slicedToArray3.default)(_ref3, 2);
var name = _ref4[0];
var descriptor = _ref4[1];
obj.props[name] = descriptor;
}
} catch (err) {
_didIteratorError2 = true;
_iteratorError2 = err;
} finally {
try {
if (!_iteratorNormalCompletion2 && _iterator2.return) {
_iterator2.return();
}
} finally {
if (_didIteratorError2) {
throw _iteratorError2;
}
}
}
}
if (this._composes.size > 0) {
obj.composes = (0, _from2.default)(this._composes);
}
return obj;
}
}]);
return Documentation;
}();
module.exports = Documentation;