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.

33 lines 1.39 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.extractSync = void 0; var controller_js_1 = require("./controller.js"); var index_js_1 = require("./lib/index.js"); var unwrap_js_1 = require("./lib/unwrap.js"); function extractSync(state) { var controller = new controller_js_1.Controller(state); if (controller.state.unpatch) { (0, index_js_1.unpatch)(controller.state.unpatch); controller.log("UNPATCHED ".concat(controller.state.unpatch.join(", "))); } try { for (var _i = 0, _a = controller.state.actions; _i < _a.length; _i++) { var action = _a[_i]; if (action.hasOwnProperty("select")) { var data = controller.select(action.select); controller.state.data = (0, index_js_1.merge)(controller.state.data, data); } else if (action.hasOwnProperty("transform")) { controller.transform(action.transform); } } } catch (err) { controller.appendError("fatal-error", err instanceof Error ? err.message : JSON.stringify(err), 0, err instanceof Error ? err.stack : undefined); } if (state.unwrap) controller.state.data = (0, unwrap_js_1.unwrap)(controller.state.data); return controller.state; } exports.extractSync = extractSync; //# sourceMappingURL=extract-sync.js.map