fela-dom
Version:
Fela package for working with the DOM
33 lines (25 loc) • 1.12 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = getNodeFromCache;
var _queryNode = _interopRequireDefault(require("./queryNode"));
var _createNode = _interopRequireDefault(require("./createNode"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
function getReference(_ref) {
var type = _ref.type,
_ref$media = _ref.media,
media = _ref$media === void 0 ? '' : _ref$media,
_ref$support = _ref.support,
support = _ref$support === void 0 ? '' : _ref$support;
return type + media + support;
}
function getNodeFromCache(attributes, renderer) {
var targetDocument = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : document;
var reference = getReference(attributes);
if (!renderer.nodes[reference]) {
var node = (0, _queryNode["default"])(attributes, targetDocument) || (0, _createNode["default"])(attributes, targetDocument, renderer.sortMediaQuery, renderer.styleNodeAttributes);
renderer.nodes[reference] = node;
}
return renderer.nodes[reference];
}