UNPKG

syphonx-core

Version:

SyphonX is a template-driven solution for extracting data from HTML in a highly efficient way. It combines the power of jQuery, Regular Expressions, and Javascript into a declarative template-driven format that extracts and reshapes HTML data into JSON.

46 lines 1.85 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.unpatch = void 0; function unpatch(keys) { var iframe = document.createElement("iframe"); iframe.style.display = "none"; document.body.appendChild(iframe); if (iframe.contentWindow) { var contentWindow = iframe.contentWindow; for (var _i = 0, keys_1 = keys; _i < keys_1.length; _i++) { var key = keys_1[_i]; if (!key.includes(".")) { var obj = contentWindow[key]; if (obj) { var descriptor = Object.getOwnPropertyDescriptor(contentWindow, key); if (descriptor) Object.defineProperty(window, key, descriptor); } } else { var parts = key.split("."); var objectType = parts.slice(0, -1).join("."); var method = parts[parts.length - 1]; var obj = contentWindow; for (var _a = 0, _b = objectType.split('.'); _a < _b.length; _a++) { var part = _b[_a]; obj = obj[part]; } if (obj) { var descriptor = Object.getOwnPropertyDescriptor(obj, method); if (descriptor) { var targetObj = window; for (var _c = 0, _d = objectType.split('.'); _c < _d.length; _c++) { var part = _d[_c]; targetObj = targetObj[part]; } Object.defineProperty(targetObj, method, descriptor); } } } } } document.body.removeChild(iframe); } exports.unpatch = unpatch; //# sourceMappingURL=unpatch.js.map