Explorar el Código

switched from jquery.cpath.js to xpath.js

Mike Schwörer hace 8 años
padre
commit
8db1b2fc79
Se han modificado 3 ficheros con 336 adiciones y 117 borrados
  1. 1 1
      Gruntfile.js
  2. 323 112
      src/js/lib/xpath.js
  3. 12 4
      src/js/operations/Extract.js

+ 1 - 1
Gruntfile.js

@@ -130,7 +130,7 @@ module.exports = function(grunt) {
         "src/js/lib/vkbeautify.js",
         "src/js/lib/Sortable.js",
         "src/js/lib/bootstrap-colorpicker.js",
-        "src/js/lib/jquery.xpath.js",
+        "src/js/lib/xpath.js",
         
         // Custom libraries
         "src/js/lib/canvas_components.js",

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 323 - 112
src/js/lib/xpath.js


+ 12 - 4
src/js/operations/Extract.js

@@ -1,3 +1,5 @@
+/* globals xpath */
+
 /**
  * Identifier extraction operations.
  *
@@ -309,6 +311,8 @@ var Extract = {
     /**
      * Extract information (from an xml document) with an XPath query
      *
+     * @author Mikescher (https://github.com/Mikescher | https://mikescher.com)
+     *
      * @param {string} input
      * @param {Object[]} args
      * @returns {string}
@@ -326,7 +330,7 @@ var Extract = {
 
         var result;
         try {
-            result = $.xpath(xml, query);
+            result = xpath.evaluate(xml, query);
         } catch (err) {
             return "Invalid XPath. Details:\n" + err.message;
         }
@@ -362,6 +366,8 @@ var Extract = {
     /**
      * Extract information (from an hmtl document) with an css selector
      *
+     * @author Mikescher (https://github.com/Mikescher | https://mikescher.com)
+     *
      * @param {string} input
      * @param {Object[]} args
      * @returns {string}
@@ -376,7 +382,7 @@ var Extract = {
         } catch (err) {
             return "Invalid input HTML.";
         }
-        
+
         var result;
         try {
             result = $(html).find(query);
@@ -388,7 +394,7 @@ var Extract = {
             switch (node.nodeType) {
                 case Node.ELEMENT_NODE: return node.outerHTML;
                 case Node.ATTRIBUTE_NODE: return node.value;
-                case Node.COMMENT_NODE: return node.ata;
+                case Node.COMMENT_NODE: return node.data;
                 case Node.TEXT_NODE: return node.wholeText;
                 case Node.DOCUMENT_NODE: return node.outerHTML;
                 default: throw new Error("Unknown Node Type: " + node.nodeType);
@@ -396,7 +402,9 @@ var Extract = {
         };
 
         return Array.apply(null, Array(result.length))
-            .map((_, i) => result[i])
+            .map(function(_, i) {
+                return result[i];
+            })
             .map(nodeToString)
             .join(delimiter);
     },

Algunos archivos no se mostraron porque demasiados archivos cambiaron en este cambio