{"version":3,"file":"/pc/all/libs/jsonpath-0.8.0.js.map","sources":["/pc/all/libs/jsonpath-0.8.0.js"],"sourcesContent":["/* JSONPath 0.8.0 - XPath for JSON\n *\n * Copyright (c) 2007 Stefan Goessner (goessner.net)\n * Licensed under the MIT (MIT-LICENSE.txt) licence.\n *\n * modify by robin,修改成amd 规范\n * 示例:jsonPath(json, \"$.store.book[0].title\")\n */\ndefine(function () {\n \"use strict\";\n\n var jsonPath = function (obj, expr, arg) {\n var P = {\n resultType: arg && arg.resultType || \"VALUE\",\n result: [],\n normalize: function (expr) {\n var subx = [];\n return expr.replace(/[\\['](\\??\\(.*?\\))[\\]']/g, function ($0, $1) {\n return \"[#\" + (subx.push($1) - 1) + \"]\";\n })\n .replace(/'?\\.'?|\\['?/g, \";\")\n .replace(/;;;|;;/g, \";..;\")\n .replace(/;$|'?\\]|'$/g, \"\")\n .replace(/#([0-9]+)/g, function ($0, $1) {\n return subx[$1];\n });\n },\n asPath: function (path) {\n var x = path.split(\";\"), p = \"$\";\n for (var i = 1, n = x.length; i < n; i++)\n p += /^[0-9*]+$/.test(x[i]) ? (\"[\" + x[i] + \"]\") : (\"['\" + x[i] + \"']\");\n return p;\n },\n store: function (p, v) {\n if (p) P.result[P.result.length] = P.resultType == \"PATH\" ? P.asPath(p) : v;\n return !!p;\n },\n trace: function (expr, val, path) {\n if (expr) {\n var x = expr.split(\";\"), loc = x.shift();\n x = x.join(\";\");\n if (val && val.hasOwnProperty(loc))\n P.trace(x, val[loc], path + \";\" + loc);\n else if (loc === \"*\")\n P.walk(loc, x, val, path, function (m, l, x, v, p) {\n P.trace(m + \";\" + x, v, p);\n });\n else if (loc === \"..\") {\n P.trace(x, val, path);\n P.walk(loc, x, val, path, function (m, l, x, v, p) {\n typeof v[m] === \"object\" && P.trace(\"..;\" + x, v[m], p + \";\" + m);\n });\n }\n else if (/,/.test(loc)) { // [name1,name2,...]\n for (var s = loc.split(/'?,'?/), i = 0, n = s.length; i < n; i++)\n P.trace(s[i] + \";\" + x, val, path);\n }\n else if (/^\\(.*?\\)$/.test(loc)) // [(expr)]\n P.trace(P.eval(loc, val, path.substr(path.lastIndexOf(\";\") + 1)) + \";\" + x, val, path);\n else if (/^\\?\\(.*?\\)$/.test(loc)) // [?(expr)]\n P.walk(loc, x, val, path, function (m, l, x, v, p) {\n if (P.eval(l.replace(/^\\?\\((.*?)\\)$/, \"$1\"), v[m], m)) P.trace(m + \";\" + x, v, p);\n });\n else if (/^(-?[0-9]*):(-?[0-9]*):?([0-9]*)$/.test(loc)) // [start:end:step] phyton slice syntax\n P.slice(loc, x, val, path);\n }\n else\n P.store(path, val);\n },\n walk: function (loc, expr, val, path, f) {\n if (val instanceof Array) {\n for (var i = 0, n = val.length; i < n; i++)\n if (i in val)\n f(i, loc, expr, val, path);\n }\n else if (typeof val === \"object\") {\n for (var m in val)\n if (val.hasOwnProperty(m))\n f(m, loc, expr, val, path);\n }\n },\n slice: function (loc, expr, val, path) {\n if (val instanceof Array) {\n var len = val.length, start = 0, end = len, step = 1;\n loc.replace(/^(-?[0-9]*):(-?[0-9]*):?(-?[0-9]*)$/g, function ($0, $1, $2, $3) {\n start = parseInt($1 || start);\n end = parseInt($2 || end);\n step = parseInt($3 || step);\n });\n start = (start < 0) ? Math.max(0, start + len) : Math.min(len, start);\n end = (end < 0) ? Math.max(0, end + len) : Math.min(len, end);\n for (var i = start; i < end; i += step)\n P.trace(i + \";\" + expr, val, path);\n }\n },\n eval: function (x, _v, _vname) {\n try {\n return $ && _v && eval(x.replace(/@/g, \"_v\"));\n }\n catch (e) {\n throw new SyntaxError(\"jsonPath: \" + e.message + \": \" + x.replace(/@/g, \"_v\").replace(/\\^/g, \"_a\"));\n }\n }\n };\n\n var $ = obj;\n if (expr && obj && (P.resultType == \"VALUE\" || P.resultType == \"PATH\")) {\n P.trace(P.normalize(expr).replace(/^\\$;/, \"\"), obj, \"$\");\n return P.result.length ? P.result : false;\n }\n };\n\n return {\n \"parse\": jsonPath\n }\n})\n"],"names":["define","jsonPath","obj","expr","arg","P","resultType","result","normalize","subx","replace","$0","$1","push","asPath","path","x","split","p","i","n","length","test","store","v","trace","val","loc","shift","join","hasOwnProperty","walk","m","l","s","eval","substr","lastIndexOf","slice","f","Array","len","start","end","step","$2","$3","parseInt","Math","max","min","_v","_vname","$","e","SyntaxError","message","parse"],"mappings":"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"}