@farukada/aws-langgraph-dynamodb-ts 0.0.4 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (715) hide show
  1. package/dist/esbuild-bundle-hints.d.ts +6 -1
  2. package/dist/esbuild-bundle-hints.d.ts.map +1 -1
  3. package/dist/esbuild-bundle-hints.js +7 -6
  4. package/dist/esbuild-bundle-hints.js.map +1 -1
  5. package/node_modules/deep-is/.travis.yml +5 -0
  6. package/node_modules/deep-is/LICENSE +22 -0
  7. package/node_modules/deep-is/README.markdown +70 -0
  8. package/node_modules/deep-is/example/cmp.js +11 -0
  9. package/node_modules/deep-is/index.js +102 -0
  10. package/node_modules/deep-is/package.json +58 -0
  11. package/node_modules/deep-is/test/NaN.js +16 -0
  12. package/node_modules/deep-is/test/cmp.js +23 -0
  13. package/node_modules/deep-is/test/neg-vs-pos-0.js +15 -0
  14. package/node_modules/escodegen/LICENSE.BSD +21 -0
  15. package/node_modules/escodegen/README.md +84 -0
  16. package/node_modules/escodegen/bin/escodegen.js +77 -0
  17. package/node_modules/escodegen/bin/esgenerate.js +64 -0
  18. package/node_modules/escodegen/escodegen.js +2626 -0
  19. package/node_modules/escodegen/node_modules/estraverse/.jshintrc +16 -0
  20. package/node_modules/escodegen/node_modules/estraverse/LICENSE.BSD +19 -0
  21. package/node_modules/escodegen/node_modules/estraverse/README.md +153 -0
  22. package/node_modules/escodegen/node_modules/estraverse/estraverse.js +782 -0
  23. package/node_modules/escodegen/node_modules/estraverse/gulpfile.js +70 -0
  24. package/node_modules/escodegen/node_modules/estraverse/package.json +40 -0
  25. package/node_modules/escodegen/node_modules/levn/LICENSE +22 -0
  26. package/node_modules/escodegen/node_modules/levn/README.md +196 -0
  27. package/node_modules/escodegen/node_modules/levn/lib/cast.js +298 -0
  28. package/node_modules/escodegen/node_modules/levn/lib/coerce.js +285 -0
  29. package/node_modules/escodegen/node_modules/levn/lib/index.js +22 -0
  30. package/node_modules/escodegen/node_modules/levn/lib/parse-string.js +113 -0
  31. package/node_modules/escodegen/node_modules/levn/lib/parse.js +102 -0
  32. package/node_modules/escodegen/node_modules/levn/package.json +47 -0
  33. package/node_modules/escodegen/node_modules/optionator/CHANGELOG.md +56 -0
  34. package/node_modules/escodegen/node_modules/optionator/LICENSE +22 -0
  35. package/node_modules/escodegen/node_modules/optionator/README.md +238 -0
  36. package/node_modules/escodegen/node_modules/optionator/lib/help.js +260 -0
  37. package/node_modules/escodegen/node_modules/optionator/lib/index.js +465 -0
  38. package/node_modules/escodegen/node_modules/optionator/lib/util.js +54 -0
  39. package/node_modules/escodegen/node_modules/optionator/package.json +44 -0
  40. package/node_modules/escodegen/node_modules/prelude-ls/CHANGELOG.md +99 -0
  41. package/node_modules/escodegen/node_modules/prelude-ls/LICENSE +22 -0
  42. package/node_modules/escodegen/node_modules/prelude-ls/README.md +15 -0
  43. package/node_modules/escodegen/node_modules/prelude-ls/lib/Func.js +65 -0
  44. package/node_modules/escodegen/node_modules/prelude-ls/lib/List.js +686 -0
  45. package/node_modules/escodegen/node_modules/prelude-ls/lib/Num.js +130 -0
  46. package/node_modules/escodegen/node_modules/prelude-ls/lib/Obj.js +154 -0
  47. package/node_modules/escodegen/node_modules/prelude-ls/lib/Str.js +92 -0
  48. package/node_modules/escodegen/node_modules/prelude-ls/lib/index.js +178 -0
  49. package/node_modules/escodegen/node_modules/prelude-ls/package.json +52 -0
  50. package/node_modules/escodegen/node_modules/type-check/LICENSE +22 -0
  51. package/node_modules/escodegen/node_modules/type-check/README.md +210 -0
  52. package/node_modules/escodegen/node_modules/type-check/lib/check.js +126 -0
  53. package/node_modules/escodegen/node_modules/type-check/lib/index.js +16 -0
  54. package/node_modules/escodegen/node_modules/type-check/lib/parse-type.js +196 -0
  55. package/node_modules/escodegen/node_modules/type-check/package.json +40 -0
  56. package/node_modules/escodegen/package.json +61 -0
  57. package/node_modules/esprima/ChangeLog +235 -0
  58. package/node_modules/esprima/LICENSE.BSD +21 -0
  59. package/node_modules/esprima/README.md +46 -0
  60. package/node_modules/esprima/bin/esparse.js +139 -0
  61. package/node_modules/esprima/bin/esvalidate.js +236 -0
  62. package/node_modules/esprima/dist/esprima.js +6709 -0
  63. package/node_modules/esprima/package.json +112 -0
  64. package/node_modules/esutils/LICENSE.BSD +19 -0
  65. package/node_modules/esutils/README.md +174 -0
  66. package/node_modules/esutils/lib/ast.js +144 -0
  67. package/node_modules/esutils/lib/code.js +135 -0
  68. package/node_modules/esutils/lib/keyword.js +165 -0
  69. package/node_modules/esutils/lib/utils.js +33 -0
  70. package/node_modules/esutils/package.json +44 -0
  71. package/node_modules/fast-levenshtein/LICENSE.md +25 -0
  72. package/node_modules/fast-levenshtein/README.md +104 -0
  73. package/node_modules/fast-levenshtein/levenshtein.js +136 -0
  74. package/node_modules/fast-levenshtein/package.json +39 -0
  75. package/node_modules/jsonpath/.jscsrc +60 -0
  76. package/node_modules/jsonpath/.jshintrc +9 -0
  77. package/node_modules/jsonpath/.travis.yml +3 -0
  78. package/node_modules/jsonpath/Dockerfile +1 -0
  79. package/node_modules/jsonpath/Gruntfile.js +83 -0
  80. package/node_modules/jsonpath/LICENSE +7 -0
  81. package/node_modules/jsonpath/README.md +216 -0
  82. package/node_modules/jsonpath/bin/generate_parser.js +8 -0
  83. package/node_modules/jsonpath/fig.yml +5 -0
  84. package/node_modules/jsonpath/generated/parser.js +721 -0
  85. package/node_modules/jsonpath/include/action.js +4 -0
  86. package/node_modules/jsonpath/include/module.js +34 -0
  87. package/node_modules/jsonpath/index.js +1 -0
  88. package/node_modules/jsonpath/jsonpath.js +6842 -0
  89. package/node_modules/jsonpath/jsonpath.min.js +4 -0
  90. package/node_modules/jsonpath/lib/aesprim.js +18 -0
  91. package/node_modules/jsonpath/lib/dict.js +6 -0
  92. package/node_modules/jsonpath/lib/grammar.js +106 -0
  93. package/node_modules/jsonpath/lib/handlers.js +260 -0
  94. package/node_modules/jsonpath/lib/index.js +249 -0
  95. package/node_modules/jsonpath/lib/parser.js +21 -0
  96. package/node_modules/jsonpath/lib/slice.js +41 -0
  97. package/node_modules/jsonpath/node_modules/esprima/README.md +24 -0
  98. package/node_modules/jsonpath/node_modules/esprima/bin/esparse.js +127 -0
  99. package/node_modules/jsonpath/node_modules/esprima/bin/esvalidate.js +199 -0
  100. package/node_modules/jsonpath/node_modules/esprima/esprima.js +3756 -0
  101. package/node_modules/jsonpath/node_modules/esprima/package.json +83 -0
  102. package/node_modules/jsonpath/node_modules/esprima/test/compat.js +241 -0
  103. package/node_modules/jsonpath/node_modules/esprima/test/reflect.js +422 -0
  104. package/node_modules/jsonpath/node_modules/esprima/test/run.js +67 -0
  105. package/node_modules/jsonpath/node_modules/esprima/test/runner.js +495 -0
  106. package/node_modules/jsonpath/node_modules/esprima/test/test.js +25241 -0
  107. package/node_modules/jsonpath/package.json +45 -0
  108. package/node_modules/jsonpath/test/data/store.json +31 -0
  109. package/node_modules/jsonpath/test/lessons.js +38 -0
  110. package/node_modules/jsonpath/test/parse.js +164 -0
  111. package/node_modules/jsonpath/test/query.js +359 -0
  112. package/node_modules/jsonpath/test/slice.js +57 -0
  113. package/node_modules/jsonpath/test/stringify.js +54 -0
  114. package/node_modules/jsonpath/test/sugar.js +72 -0
  115. package/node_modules/source-map/CHANGELOG.md +301 -0
  116. package/node_modules/source-map/LICENSE +28 -0
  117. package/node_modules/source-map/README.md +742 -0
  118. package/node_modules/source-map/dist/source-map.debug.js +3234 -0
  119. package/node_modules/source-map/dist/source-map.js +3233 -0
  120. package/node_modules/source-map/dist/source-map.min.js +2 -0
  121. package/node_modules/source-map/dist/source-map.min.js.map +1 -0
  122. package/node_modules/source-map/lib/array-set.js +121 -0
  123. package/node_modules/source-map/lib/base64-vlq.js +140 -0
  124. package/node_modules/source-map/lib/base64.js +67 -0
  125. package/node_modules/source-map/lib/binary-search.js +111 -0
  126. package/node_modules/source-map/lib/mapping-list.js +79 -0
  127. package/node_modules/source-map/lib/quick-sort.js +114 -0
  128. package/node_modules/source-map/lib/source-map-consumer.js +1145 -0
  129. package/node_modules/source-map/lib/source-map-generator.js +425 -0
  130. package/node_modules/source-map/lib/source-node.js +413 -0
  131. package/node_modules/source-map/lib/util.js +488 -0
  132. package/node_modules/source-map/package.json +73 -0
  133. package/node_modules/source-map/source-map.d.ts +98 -0
  134. package/node_modules/source-map/source-map.js +8 -0
  135. package/node_modules/static-eval/.travis.yml +4 -0
  136. package/node_modules/static-eval/LICENSE +18 -0
  137. package/node_modules/static-eval/example/eval.js +7 -0
  138. package/node_modules/static-eval/example/vars.js +11 -0
  139. package/node_modules/static-eval/index.js +178 -0
  140. package/node_modules/static-eval/package.json +48 -0
  141. package/node_modules/static-eval/readme.markdown +87 -0
  142. package/node_modules/static-eval/test/eval.js +82 -0
  143. package/node_modules/static-eval/test/prop.js +16 -0
  144. package/node_modules/static-eval/test/template-strings.js +33 -0
  145. package/node_modules/underscore/LICENSE +23 -0
  146. package/node_modules/underscore/README.md +28 -0
  147. package/node_modules/underscore/amd/_apply.js +7 -0
  148. package/node_modules/underscore/amd/_applyProperty.js +14 -0
  149. package/node_modules/underscore/amd/_arrayAccessors.js +11 -0
  150. package/node_modules/underscore/amd/_arrayMutators.js +15 -0
  151. package/node_modules/underscore/amd/_baseCreate.js +21 -0
  152. package/node_modules/underscore/amd/_baseIteratee.js +15 -0
  153. package/node_modules/underscore/amd/_binarySearch.js +17 -0
  154. package/node_modules/underscore/amd/_bindCb.js +14 -0
  155. package/node_modules/underscore/amd/_bindCb4.js +17 -0
  156. package/node_modules/underscore/amd/_byValue.js +11 -0
  157. package/node_modules/underscore/amd/_cb.js +12 -0
  158. package/node_modules/underscore/amd/_chainResult.js +10 -0
  159. package/node_modules/underscore/amd/_collectNonEnumProps.js +42 -0
  160. package/node_modules/underscore/amd/_createAssigner.js +24 -0
  161. package/node_modules/underscore/amd/_createEscaper.js +21 -0
  162. package/node_modules/underscore/amd/_createIndexFinder.js +30 -0
  163. package/node_modules/underscore/amd/_createPredicateIndexFinder.js +18 -0
  164. package/node_modules/underscore/amd/_createReduce.js +30 -0
  165. package/node_modules/underscore/amd/_createSizePropertyCheck.js +13 -0
  166. package/node_modules/underscore/amd/_deepGet.js +15 -0
  167. package/node_modules/underscore/amd/_escapeMap.js +15 -0
  168. package/node_modules/underscore/amd/_executeBound.js +16 -0
  169. package/node_modules/underscore/amd/_extremum.js +35 -0
  170. package/node_modules/underscore/amd/_flatten.js +32 -0
  171. package/node_modules/underscore/amd/_forceNumericMinMax.js +16 -0
  172. package/node_modules/underscore/amd/_getByteLength.js +8 -0
  173. package/node_modules/underscore/amd/_getLength.js +8 -0
  174. package/node_modules/underscore/amd/_greater.js +10 -0
  175. package/node_modules/underscore/amd/_group.js +18 -0
  176. package/node_modules/underscore/amd/_has.js +10 -0
  177. package/node_modules/underscore/amd/_hasObjectTag.js +7 -0
  178. package/node_modules/underscore/amd/_isArrayLike.js +11 -0
  179. package/node_modules/underscore/amd/_isBufferLike.js +9 -0
  180. package/node_modules/underscore/amd/_keyInObj.js +11 -0
  181. package/node_modules/underscore/amd/_less.js +10 -0
  182. package/node_modules/underscore/amd/_lessEqual.js +10 -0
  183. package/node_modules/underscore/amd/_linearSearch.js +31 -0
  184. package/node_modules/underscore/amd/_mapReduce.js +5 -0
  185. package/node_modules/underscore/amd/_methodFingerprint.js +44 -0
  186. package/node_modules/underscore/amd/_optimizeCb.js +27 -0
  187. package/node_modules/underscore/amd/_push.js +7 -0
  188. package/node_modules/underscore/amd/_pusher.js +13 -0
  189. package/node_modules/underscore/amd/_sequence.js +18 -0
  190. package/node_modules/underscore/amd/_setup.js +70 -0
  191. package/node_modules/underscore/amd/_shallowProperty.js +12 -0
  192. package/node_modules/underscore/amd/_slice.js +7 -0
  193. package/node_modules/underscore/amd/_strictEqual.js +9 -0
  194. package/node_modules/underscore/amd/_stringTagBug.js +16 -0
  195. package/node_modules/underscore/amd/_tagTester.js +13 -0
  196. package/node_modules/underscore/amd/_toBufferView.js +15 -0
  197. package/node_modules/underscore/amd/_toPath.js +11 -0
  198. package/node_modules/underscore/amd/_unescapeMap.js +8 -0
  199. package/node_modules/underscore/amd/_unmethodize.js +9 -0
  200. package/node_modules/underscore/amd/_wrapArrayAccessor.js +15 -0
  201. package/node_modules/underscore/amd/_wrapArrayMutator.js +28 -0
  202. package/node_modules/underscore/amd/after.js +14 -0
  203. package/node_modules/underscore/amd/allKeys.js +15 -0
  204. package/node_modules/underscore/amd/before.js +18 -0
  205. package/node_modules/underscore/amd/bind.js +15 -0
  206. package/node_modules/underscore/amd/bindAll.js +19 -0
  207. package/node_modules/underscore/amd/chain.js +12 -0
  208. package/node_modules/underscore/amd/chunk.js +17 -0
  209. package/node_modules/underscore/amd/clone.js +11 -0
  210. package/node_modules/underscore/amd/compact.js +10 -0
  211. package/node_modules/underscore/amd/compose.js +18 -0
  212. package/node_modules/underscore/amd/concat.js +7 -0
  213. package/node_modules/underscore/amd/constant.js +12 -0
  214. package/node_modules/underscore/amd/contains.js +12 -0
  215. package/node_modules/underscore/amd/countBy.js +12 -0
  216. package/node_modules/underscore/amd/create.js +14 -0
  217. package/node_modules/underscore/amd/debounce.js +43 -0
  218. package/node_modules/underscore/amd/defaults.js +8 -0
  219. package/node_modules/underscore/amd/defer.js +9 -0
  220. package/node_modules/underscore/amd/delay.js +13 -0
  221. package/node_modules/underscore/amd/difference.js +14 -0
  222. package/node_modules/underscore/amd/each.js +25 -0
  223. package/node_modules/underscore/amd/escape.js +8 -0
  224. package/node_modules/underscore/amd/every.js +17 -0
  225. package/node_modules/underscore/amd/extend.js +8 -0
  226. package/node_modules/underscore/amd/extendOwn.js +10 -0
  227. package/node_modules/underscore/amd/filter.js +15 -0
  228. package/node_modules/underscore/amd/find.js +12 -0
  229. package/node_modules/underscore/amd/findIndex.js +8 -0
  230. package/node_modules/underscore/amd/findKey.js +15 -0
  231. package/node_modules/underscore/amd/findLastIndex.js +8 -0
  232. package/node_modules/underscore/amd/findWhere.js +11 -0
  233. package/node_modules/underscore/amd/first.js +13 -0
  234. package/node_modules/underscore/amd/flatten.js +11 -0
  235. package/node_modules/underscore/amd/functions.js +14 -0
  236. package/node_modules/underscore/amd/get.js +14 -0
  237. package/node_modules/underscore/amd/groupBy.js +11 -0
  238. package/node_modules/underscore/amd/has.js +19 -0
  239. package/node_modules/underscore/amd/identity.js +10 -0
  240. package/node_modules/underscore/amd/index-default.js +12 -0
  241. package/node_modules/underscore/amd/index.js +154 -0
  242. package/node_modules/underscore/amd/indexBy.js +11 -0
  243. package/node_modules/underscore/amd/indexOf.js +11 -0
  244. package/node_modules/underscore/amd/initial.js +12 -0
  245. package/node_modules/underscore/amd/intersection.js +22 -0
  246. package/node_modules/underscore/amd/invert.js +15 -0
  247. package/node_modules/underscore/amd/invoke.js +28 -0
  248. package/node_modules/underscore/amd/isArguments.js +19 -0
  249. package/node_modules/underscore/amd/isArray.js +9 -0
  250. package/node_modules/underscore/amd/isArrayBuffer.js +7 -0
  251. package/node_modules/underscore/amd/isBoolean.js +10 -0
  252. package/node_modules/underscore/amd/isDataView.js +15 -0
  253. package/node_modules/underscore/amd/isDate.js +7 -0
  254. package/node_modules/underscore/amd/isElement.js +10 -0
  255. package/node_modules/underscore/amd/isEmpty.js +18 -0
  256. package/node_modules/underscore/amd/isEqual.js +133 -0
  257. package/node_modules/underscore/amd/isError.js +7 -0
  258. package/node_modules/underscore/amd/isFinite.js +10 -0
  259. package/node_modules/underscore/amd/isFunction.js +18 -0
  260. package/node_modules/underscore/amd/isMap.js +7 -0
  261. package/node_modules/underscore/amd/isMatch.js +17 -0
  262. package/node_modules/underscore/amd/isNaN.js +10 -0
  263. package/node_modules/underscore/amd/isNull.js +10 -0
  264. package/node_modules/underscore/amd/isNumber.js +7 -0
  265. package/node_modules/underscore/amd/isObject.js +11 -0
  266. package/node_modules/underscore/amd/isRegExp.js +7 -0
  267. package/node_modules/underscore/amd/isSet.js +7 -0
  268. package/node_modules/underscore/amd/isString.js +7 -0
  269. package/node_modules/underscore/amd/isSymbol.js +7 -0
  270. package/node_modules/underscore/amd/isTypedArray.js +16 -0
  271. package/node_modules/underscore/amd/isUndefined.js +10 -0
  272. package/node_modules/underscore/amd/isWeakMap.js +7 -0
  273. package/node_modules/underscore/amd/isWeakSet.js +7 -0
  274. package/node_modules/underscore/amd/iteratee.js +13 -0
  275. package/node_modules/underscore/amd/join.js +7 -0
  276. package/node_modules/underscore/amd/keys.js +17 -0
  277. package/node_modules/underscore/amd/last.js +13 -0
  278. package/node_modules/underscore/amd/lastIndexOf.js +9 -0
  279. package/node_modules/underscore/amd/map.js +18 -0
  280. package/node_modules/underscore/amd/mapObject.js +19 -0
  281. package/node_modules/underscore/amd/matcher.js +14 -0
  282. package/node_modules/underscore/amd/max.js +30 -0
  283. package/node_modules/underscore/amd/memoize.js +17 -0
  284. package/node_modules/underscore/amd/min.js +30 -0
  285. package/node_modules/underscore/amd/mixin.js +18 -0
  286. package/node_modules/underscore/amd/negate.js +12 -0
  287. package/node_modules/underscore/amd/noop.js +8 -0
  288. package/node_modules/underscore/amd/now.js +10 -0
  289. package/node_modules/underscore/amd/object.js +20 -0
  290. package/node_modules/underscore/amd/omit.js +20 -0
  291. package/node_modules/underscore/amd/once.js +9 -0
  292. package/node_modules/underscore/amd/pairs.js +17 -0
  293. package/node_modules/underscore/amd/partial.js +25 -0
  294. package/node_modules/underscore/amd/partition.js +11 -0
  295. package/node_modules/underscore/amd/pick.js +25 -0
  296. package/node_modules/underscore/amd/pluck.js +10 -0
  297. package/node_modules/underscore/amd/pop.js +7 -0
  298. package/node_modules/underscore/amd/property.js +14 -0
  299. package/node_modules/underscore/amd/propertyOf.js +13 -0
  300. package/node_modules/underscore/amd/push.js +7 -0
  301. package/node_modules/underscore/amd/random.js +14 -0
  302. package/node_modules/underscore/amd/range.js +27 -0
  303. package/node_modules/underscore/amd/reduce.js +9 -0
  304. package/node_modules/underscore/amd/reduceRight.js +8 -0
  305. package/node_modules/underscore/amd/reject.js +10 -0
  306. package/node_modules/underscore/amd/rest.js +12 -0
  307. package/node_modules/underscore/amd/restArguments.js +33 -0
  308. package/node_modules/underscore/amd/result.js +25 -0
  309. package/node_modules/underscore/amd/reverse.js +7 -0
  310. package/node_modules/underscore/amd/sample.js +27 -0
  311. package/node_modules/underscore/amd/shift.js +7 -0
  312. package/node_modules/underscore/amd/shuffle.js +10 -0
  313. package/node_modules/underscore/amd/size.js +11 -0
  314. package/node_modules/underscore/amd/slice.js +7 -0
  315. package/node_modules/underscore/amd/some.js +17 -0
  316. package/node_modules/underscore/amd/sort.js +7 -0
  317. package/node_modules/underscore/amd/sortBy.js +26 -0
  318. package/node_modules/underscore/amd/sortedIndex.js +18 -0
  319. package/node_modules/underscore/amd/sortedLastIndex.js +11 -0
  320. package/node_modules/underscore/amd/splice.js +7 -0
  321. package/node_modules/underscore/amd/tap.js +13 -0
  322. package/node_modules/underscore/amd/template.js +95 -0
  323. package/node_modules/underscore/amd/templateSettings.js +13 -0
  324. package/node_modules/underscore/amd/throttle.js +51 -0
  325. package/node_modules/underscore/amd/times.js +13 -0
  326. package/node_modules/underscore/amd/toArray.js +18 -0
  327. package/node_modules/underscore/amd/toPath.js +12 -0
  328. package/node_modules/underscore/amd/toString.js +11 -0
  329. package/node_modules/underscore/amd/underscore-array-methods.js +30 -0
  330. package/node_modules/underscore/amd/underscore.js +29 -0
  331. package/node_modules/underscore/amd/unescape.js +8 -0
  332. package/node_modules/underscore/amd/union.js +11 -0
  333. package/node_modules/underscore/amd/uniq.js +37 -0
  334. package/node_modules/underscore/amd/uniqueId.js +13 -0
  335. package/node_modules/underscore/amd/unshift.js +7 -0
  336. package/node_modules/underscore/amd/unzip.js +17 -0
  337. package/node_modules/underscore/amd/value.js +13 -0
  338. package/node_modules/underscore/amd/values.js +16 -0
  339. package/node_modules/underscore/amd/where.js +11 -0
  340. package/node_modules/underscore/amd/without.js +10 -0
  341. package/node_modules/underscore/amd/wrap.js +12 -0
  342. package/node_modules/underscore/amd/zip.js +9 -0
  343. package/node_modules/underscore/cjs/_apply.js +6 -0
  344. package/node_modules/underscore/cjs/_applyProperty.js +10 -0
  345. package/node_modules/underscore/cjs/_arrayAccessors.js +11 -0
  346. package/node_modules/underscore/cjs/_arrayMutators.js +19 -0
  347. package/node_modules/underscore/cjs/_baseCreate.js +20 -0
  348. package/node_modules/underscore/cjs/_baseIteratee.js +19 -0
  349. package/node_modules/underscore/cjs/_binarySearch.js +15 -0
  350. package/node_modules/underscore/cjs/_bindCb.js +10 -0
  351. package/node_modules/underscore/cjs/_bindCb4.js +13 -0
  352. package/node_modules/underscore/cjs/_byValue.js +7 -0
  353. package/node_modules/underscore/cjs/_cb.js +12 -0
  354. package/node_modules/underscore/cjs/_chainResult.js +8 -0
  355. package/node_modules/underscore/cjs/_collectNonEnumProps.js +42 -0
  356. package/node_modules/underscore/cjs/_createAssigner.js +20 -0
  357. package/node_modules/underscore/cjs/_createEscaper.js +19 -0
  358. package/node_modules/underscore/cjs/_createIndexFinder.js +30 -0
  359. package/node_modules/underscore/cjs/_createPredicateIndexFinder.js +17 -0
  360. package/node_modules/underscore/cjs/_createReduce.js +30 -0
  361. package/node_modules/underscore/cjs/_createSizePropertyCheck.js +11 -0
  362. package/node_modules/underscore/cjs/_deepGet.js +11 -0
  363. package/node_modules/underscore/cjs/_escapeMap.js +11 -0
  364. package/node_modules/underscore/cjs/_executeBound.js +15 -0
  365. package/node_modules/underscore/cjs/_extremum.js +35 -0
  366. package/node_modules/underscore/cjs/_flatten.js +33 -0
  367. package/node_modules/underscore/cjs/_forceNumericMinMax.js +14 -0
  368. package/node_modules/underscore/cjs/_getByteLength.js +6 -0
  369. package/node_modules/underscore/cjs/_getLength.js +6 -0
  370. package/node_modules/underscore/cjs/_greater.js +6 -0
  371. package/node_modules/underscore/cjs/_group.js +17 -0
  372. package/node_modules/underscore/cjs/_has.js +8 -0
  373. package/node_modules/underscore/cjs/_hasObjectTag.js +5 -0
  374. package/node_modules/underscore/cjs/_isArrayLike.js +10 -0
  375. package/node_modules/underscore/cjs/_isBufferLike.js +8 -0
  376. package/node_modules/underscore/cjs/_keyInObj.js +7 -0
  377. package/node_modules/underscore/cjs/_less.js +6 -0
  378. package/node_modules/underscore/cjs/_lessEqual.js +6 -0
  379. package/node_modules/underscore/cjs/_linearSearch.js +30 -0
  380. package/node_modules/underscore/cjs/_mapReduce.js +1 -0
  381. package/node_modules/underscore/cjs/_methodFingerprint.js +44 -0
  382. package/node_modules/underscore/cjs/_optimizeCb.js +23 -0
  383. package/node_modules/underscore/cjs/_push.js +6 -0
  384. package/node_modules/underscore/cjs/_pusher.js +9 -0
  385. package/node_modules/underscore/cjs/_sequence.js +14 -0
  386. package/node_modules/underscore/cjs/_setup.js +66 -0
  387. package/node_modules/underscore/cjs/_shallowProperty.js +8 -0
  388. package/node_modules/underscore/cjs/_slice.js +6 -0
  389. package/node_modules/underscore/cjs/_strictEqual.js +5 -0
  390. package/node_modules/underscore/cjs/_stringTagBug.js +15 -0
  391. package/node_modules/underscore/cjs/_tagTester.js +11 -0
  392. package/node_modules/underscore/cjs/_toBufferView.js +13 -0
  393. package/node_modules/underscore/cjs/_toPath.js +10 -0
  394. package/node_modules/underscore/cjs/_unescapeMap.js +7 -0
  395. package/node_modules/underscore/cjs/_unmethodize.js +8 -0
  396. package/node_modules/underscore/cjs/_wrapArrayAccessor.js +14 -0
  397. package/node_modules/underscore/cjs/_wrapArrayMutator.js +29 -0
  398. package/node_modules/underscore/cjs/after.js +10 -0
  399. package/node_modules/underscore/cjs/allKeys.js +15 -0
  400. package/node_modules/underscore/cjs/before.js +14 -0
  401. package/node_modules/underscore/cjs/bind.js +15 -0
  402. package/node_modules/underscore/cjs/bindAll.js +19 -0
  403. package/node_modules/underscore/cjs/chain.js +10 -0
  404. package/node_modules/underscore/cjs/chunk.js +15 -0
  405. package/node_modules/underscore/cjs/clone.js +11 -0
  406. package/node_modules/underscore/cjs/compact.js +8 -0
  407. package/node_modules/underscore/cjs/compose.js +14 -0
  408. package/node_modules/underscore/cjs/concat.js +6 -0
  409. package/node_modules/underscore/cjs/constant.js +8 -0
  410. package/node_modules/underscore/cjs/contains.js +12 -0
  411. package/node_modules/underscore/cjs/countBy.js +11 -0
  412. package/node_modules/underscore/cjs/create.js +13 -0
  413. package/node_modules/underscore/cjs/debounce.js +42 -0
  414. package/node_modules/underscore/cjs/defaults.js +7 -0
  415. package/node_modules/underscore/cjs/defer.js +9 -0
  416. package/node_modules/underscore/cjs/delay.js +11 -0
  417. package/node_modules/underscore/cjs/difference.js +15 -0
  418. package/node_modules/underscore/cjs/each.js +25 -0
  419. package/node_modules/underscore/cjs/escape.js +7 -0
  420. package/node_modules/underscore/cjs/every.js +17 -0
  421. package/node_modules/underscore/cjs/extend.js +7 -0
  422. package/node_modules/underscore/cjs/extendOwn.js +9 -0
  423. package/node_modules/underscore/cjs/filter.js +14 -0
  424. package/node_modules/underscore/cjs/find.js +12 -0
  425. package/node_modules/underscore/cjs/findIndex.js +6 -0
  426. package/node_modules/underscore/cjs/findKey.js +14 -0
  427. package/node_modules/underscore/cjs/findLastIndex.js +6 -0
  428. package/node_modules/underscore/cjs/findWhere.js +10 -0
  429. package/node_modules/underscore/cjs/first.js +11 -0
  430. package/node_modules/underscore/cjs/flatten.js +9 -0
  431. package/node_modules/underscore/cjs/functions.js +12 -0
  432. package/node_modules/underscore/cjs/get.js +14 -0
  433. package/node_modules/underscore/cjs/groupBy.js +10 -0
  434. package/node_modules/underscore/cjs/has.js +18 -0
  435. package/node_modules/underscore/cjs/identity.js +6 -0
  436. package/node_modules/underscore/cjs/index-default.js +11 -0
  437. package/node_modules/underscore/cjs/index.js +277 -0
  438. package/node_modules/underscore/cjs/indexBy.js +9 -0
  439. package/node_modules/underscore/cjs/indexOf.js +11 -0
  440. package/node_modules/underscore/cjs/initial.js +10 -0
  441. package/node_modules/underscore/cjs/intersection.js +21 -0
  442. package/node_modules/underscore/cjs/invert.js +13 -0
  443. package/node_modules/underscore/cjs/invoke.js +30 -0
  444. package/node_modules/underscore/cjs/isArguments.js +18 -0
  445. package/node_modules/underscore/cjs/isArray.js +8 -0
  446. package/node_modules/underscore/cjs/isArrayBuffer.js +5 -0
  447. package/node_modules/underscore/cjs/isBoolean.js +8 -0
  448. package/node_modules/underscore/cjs/isDataView.js +16 -0
  449. package/node_modules/underscore/cjs/isDate.js +5 -0
  450. package/node_modules/underscore/cjs/isElement.js +6 -0
  451. package/node_modules/underscore/cjs/isEmpty.js +20 -0
  452. package/node_modules/underscore/cjs/isEqual.js +140 -0
  453. package/node_modules/underscore/cjs/isError.js +5 -0
  454. package/node_modules/underscore/cjs/isFinite.js +9 -0
  455. package/node_modules/underscore/cjs/isFunction.js +17 -0
  456. package/node_modules/underscore/cjs/isMap.js +7 -0
  457. package/node_modules/underscore/cjs/isMatch.js +15 -0
  458. package/node_modules/underscore/cjs/isNaN.js +9 -0
  459. package/node_modules/underscore/cjs/isNull.js +6 -0
  460. package/node_modules/underscore/cjs/isNumber.js +5 -0
  461. package/node_modules/underscore/cjs/isObject.js +7 -0
  462. package/node_modules/underscore/cjs/isRegExp.js +5 -0
  463. package/node_modules/underscore/cjs/isSet.js +7 -0
  464. package/node_modules/underscore/cjs/isString.js +5 -0
  465. package/node_modules/underscore/cjs/isSymbol.js +5 -0
  466. package/node_modules/underscore/cjs/isTypedArray.js +17 -0
  467. package/node_modules/underscore/cjs/isUndefined.js +6 -0
  468. package/node_modules/underscore/cjs/isWeakMap.js +7 -0
  469. package/node_modules/underscore/cjs/isWeakSet.js +5 -0
  470. package/node_modules/underscore/cjs/iteratee.js +12 -0
  471. package/node_modules/underscore/cjs/join.js +6 -0
  472. package/node_modules/underscore/cjs/keys.js +18 -0
  473. package/node_modules/underscore/cjs/last.js +11 -0
  474. package/node_modules/underscore/cjs/lastIndexOf.js +8 -0
  475. package/node_modules/underscore/cjs/map.js +18 -0
  476. package/node_modules/underscore/cjs/mapObject.js +18 -0
  477. package/node_modules/underscore/cjs/matcher.js +13 -0
  478. package/node_modules/underscore/cjs/max.js +31 -0
  479. package/node_modules/underscore/cjs/memoize.js +15 -0
  480. package/node_modules/underscore/cjs/min.js +31 -0
  481. package/node_modules/underscore/cjs/mixin.js +20 -0
  482. package/node_modules/underscore/cjs/negate.js +8 -0
  483. package/node_modules/underscore/cjs/noop.js +4 -0
  484. package/node_modules/underscore/cjs/now.js +6 -0
  485. package/node_modules/underscore/cjs/object.js +18 -0
  486. package/node_modules/underscore/cjs/omit.js +24 -0
  487. package/node_modules/underscore/cjs/once.js +8 -0
  488. package/node_modules/underscore/cjs/pairs.js +15 -0
  489. package/node_modules/underscore/cjs/partial.js +25 -0
  490. package/node_modules/underscore/cjs/partition.js +9 -0
  491. package/node_modules/underscore/cjs/pick.js +28 -0
  492. package/node_modules/underscore/cjs/pluck.js +9 -0
  493. package/node_modules/underscore/cjs/pop.js +6 -0
  494. package/node_modules/underscore/cjs/property.js +13 -0
  495. package/node_modules/underscore/cjs/propertyOf.js +12 -0
  496. package/node_modules/underscore/cjs/push.js +6 -0
  497. package/node_modules/underscore/cjs/random.js +10 -0
  498. package/node_modules/underscore/cjs/range.js +23 -0
  499. package/node_modules/underscore/cjs/reduce.js +7 -0
  500. package/node_modules/underscore/cjs/reduceRight.js +6 -0
  501. package/node_modules/underscore/cjs/reject.js +10 -0
  502. package/node_modules/underscore/cjs/rest.js +10 -0
  503. package/node_modules/underscore/cjs/restArguments.js +29 -0
  504. package/node_modules/underscore/cjs/result.js +24 -0
  505. package/node_modules/underscore/cjs/reverse.js +6 -0
  506. package/node_modules/underscore/cjs/sample.js +29 -0
  507. package/node_modules/underscore/cjs/shift.js +6 -0
  508. package/node_modules/underscore/cjs/shuffle.js +8 -0
  509. package/node_modules/underscore/cjs/size.js +10 -0
  510. package/node_modules/underscore/cjs/slice.js +6 -0
  511. package/node_modules/underscore/cjs/some.js +17 -0
  512. package/node_modules/underscore/cjs/sort.js +6 -0
  513. package/node_modules/underscore/cjs/sortBy.js +26 -0
  514. package/node_modules/underscore/cjs/sortedIndex.js +17 -0
  515. package/node_modules/underscore/cjs/sortedLastIndex.js +11 -0
  516. package/node_modules/underscore/cjs/splice.js +6 -0
  517. package/node_modules/underscore/cjs/tap.js +9 -0
  518. package/node_modules/underscore/cjs/template.js +95 -0
  519. package/node_modules/underscore/cjs/templateSettings.js +11 -0
  520. package/node_modules/underscore/cjs/throttle.js +49 -0
  521. package/node_modules/underscore/cjs/times.js +11 -0
  522. package/node_modules/underscore/cjs/toArray.js +22 -0
  523. package/node_modules/underscore/cjs/toPath.js +11 -0
  524. package/node_modules/underscore/cjs/toString.js +9 -0
  525. package/node_modules/underscore/cjs/underscore-array-methods.js +31 -0
  526. package/node_modules/underscore/cjs/underscore.js +27 -0
  527. package/node_modules/underscore/cjs/unescape.js +7 -0
  528. package/node_modules/underscore/cjs/union.js +11 -0
  529. package/node_modules/underscore/cjs/uniq.js +38 -0
  530. package/node_modules/underscore/cjs/uniqueId.js +9 -0
  531. package/node_modules/underscore/cjs/unshift.js +6 -0
  532. package/node_modules/underscore/cjs/unzip.js +17 -0
  533. package/node_modules/underscore/cjs/value.js +9 -0
  534. package/node_modules/underscore/cjs/values.js +14 -0
  535. package/node_modules/underscore/cjs/where.js +10 -0
  536. package/node_modules/underscore/cjs/without.js +9 -0
  537. package/node_modules/underscore/cjs/wrap.js +10 -0
  538. package/node_modules/underscore/cjs/zip.js +8 -0
  539. package/node_modules/underscore/modules/.eslintrc +12 -0
  540. package/node_modules/underscore/modules/_baseCreate.js +18 -0
  541. package/node_modules/underscore/modules/_baseIteratee.js +17 -0
  542. package/node_modules/underscore/modules/_cb.js +10 -0
  543. package/node_modules/underscore/modules/_chainResult.js +6 -0
  544. package/node_modules/underscore/modules/_collectNonEnumProps.js +40 -0
  545. package/node_modules/underscore/modules/_createAssigner.js +18 -0
  546. package/node_modules/underscore/modules/_createEscaper.js +17 -0
  547. package/node_modules/underscore/modules/_createIndexFinder.js +28 -0
  548. package/node_modules/underscore/modules/_createPredicateIndexFinder.js +15 -0
  549. package/node_modules/underscore/modules/_createReduce.js +28 -0
  550. package/node_modules/underscore/modules/_createSizePropertyCheck.js +9 -0
  551. package/node_modules/underscore/modules/_deepGet.js +9 -0
  552. package/node_modules/underscore/modules/_escapeMap.js +9 -0
  553. package/node_modules/underscore/modules/_executeBound.js +13 -0
  554. package/node_modules/underscore/modules/_flatten.js +31 -0
  555. package/node_modules/underscore/modules/_getByteLength.js +4 -0
  556. package/node_modules/underscore/modules/_getLength.js +4 -0
  557. package/node_modules/underscore/modules/_group.js +15 -0
  558. package/node_modules/underscore/modules/_has.js +6 -0
  559. package/node_modules/underscore/modules/_hasObjectTag.js +3 -0
  560. package/node_modules/underscore/modules/_isArrayLike.js +8 -0
  561. package/node_modules/underscore/modules/_isBufferLike.js +6 -0
  562. package/node_modules/underscore/modules/_keyInObj.js +5 -0
  563. package/node_modules/underscore/modules/_methodFingerprint.js +37 -0
  564. package/node_modules/underscore/modules/_optimizeCb.js +21 -0
  565. package/node_modules/underscore/modules/_setup.js +43 -0
  566. package/node_modules/underscore/modules/_shallowProperty.js +6 -0
  567. package/node_modules/underscore/modules/_stringTagBug.js +10 -0
  568. package/node_modules/underscore/modules/_tagTester.js +9 -0
  569. package/node_modules/underscore/modules/_toBufferView.js +11 -0
  570. package/node_modules/underscore/modules/_toPath.js +8 -0
  571. package/node_modules/underscore/modules/_unescapeMap.js +5 -0
  572. package/node_modules/underscore/modules/after.js +8 -0
  573. package/node_modules/underscore/modules/allKeys.js +13 -0
  574. package/node_modules/underscore/modules/before.js +12 -0
  575. package/node_modules/underscore/modules/bind.js +13 -0
  576. package/node_modules/underscore/modules/bindAll.js +17 -0
  577. package/node_modules/underscore/modules/chain.js +8 -0
  578. package/node_modules/underscore/modules/chunk.js +13 -0
  579. package/node_modules/underscore/modules/clone.js +9 -0
  580. package/node_modules/underscore/modules/compact.js +6 -0
  581. package/node_modules/underscore/modules/compose.js +12 -0
  582. package/node_modules/underscore/modules/constant.js +6 -0
  583. package/node_modules/underscore/modules/contains.js +10 -0
  584. package/node_modules/underscore/modules/countBy.js +9 -0
  585. package/node_modules/underscore/modules/create.js +11 -0
  586. package/node_modules/underscore/modules/debounce.js +40 -0
  587. package/node_modules/underscore/modules/defaults.js +5 -0
  588. package/node_modules/underscore/modules/defer.js +7 -0
  589. package/node_modules/underscore/modules/delay.js +9 -0
  590. package/node_modules/underscore/modules/difference.js +13 -0
  591. package/node_modules/underscore/modules/each.js +23 -0
  592. package/node_modules/underscore/modules/escape.js +5 -0
  593. package/node_modules/underscore/modules/every.js +15 -0
  594. package/node_modules/underscore/modules/extend.js +5 -0
  595. package/node_modules/underscore/modules/extendOwn.js +7 -0
  596. package/node_modules/underscore/modules/filter.js +12 -0
  597. package/node_modules/underscore/modules/find.js +10 -0
  598. package/node_modules/underscore/modules/findIndex.js +4 -0
  599. package/node_modules/underscore/modules/findKey.js +12 -0
  600. package/node_modules/underscore/modules/findLastIndex.js +4 -0
  601. package/node_modules/underscore/modules/findWhere.js +8 -0
  602. package/node_modules/underscore/modules/first.js +9 -0
  603. package/node_modules/underscore/modules/flatten.js +7 -0
  604. package/node_modules/underscore/modules/functions.js +10 -0
  605. package/node_modules/underscore/modules/get.js +12 -0
  606. package/node_modules/underscore/modules/groupBy.js +8 -0
  607. package/node_modules/underscore/modules/has.js +16 -0
  608. package/node_modules/underscore/modules/identity.js +4 -0
  609. package/node_modules/underscore/modules/index-all.js +18 -0
  610. package/node_modules/underscore/modules/index-default.js +27 -0
  611. package/node_modules/underscore/modules/index.js +200 -0
  612. package/node_modules/underscore/modules/indexBy.js +7 -0
  613. package/node_modules/underscore/modules/indexOf.js +9 -0
  614. package/node_modules/underscore/modules/initial.js +8 -0
  615. package/node_modules/underscore/modules/intersection.js +19 -0
  616. package/node_modules/underscore/modules/invert.js +11 -0
  617. package/node_modules/underscore/modules/invoke.js +28 -0
  618. package/node_modules/underscore/modules/isArguments.js +16 -0
  619. package/node_modules/underscore/modules/isArray.js +6 -0
  620. package/node_modules/underscore/modules/isArrayBuffer.js +3 -0
  621. package/node_modules/underscore/modules/isBoolean.js +6 -0
  622. package/node_modules/underscore/modules/isDataView.js +14 -0
  623. package/node_modules/underscore/modules/isDate.js +3 -0
  624. package/node_modules/underscore/modules/isElement.js +4 -0
  625. package/node_modules/underscore/modules/isEmpty.js +18 -0
  626. package/node_modules/underscore/modules/isEqual.js +138 -0
  627. package/node_modules/underscore/modules/isError.js +3 -0
  628. package/node_modules/underscore/modules/isFinite.js +7 -0
  629. package/node_modules/underscore/modules/isFunction.js +15 -0
  630. package/node_modules/underscore/modules/isMap.js +5 -0
  631. package/node_modules/underscore/modules/isMatch.js +13 -0
  632. package/node_modules/underscore/modules/isNaN.js +7 -0
  633. package/node_modules/underscore/modules/isNull.js +4 -0
  634. package/node_modules/underscore/modules/isNumber.js +3 -0
  635. package/node_modules/underscore/modules/isObject.js +5 -0
  636. package/node_modules/underscore/modules/isRegExp.js +3 -0
  637. package/node_modules/underscore/modules/isSet.js +5 -0
  638. package/node_modules/underscore/modules/isString.js +3 -0
  639. package/node_modules/underscore/modules/isSymbol.js +3 -0
  640. package/node_modules/underscore/modules/isTypedArray.js +15 -0
  641. package/node_modules/underscore/modules/isUndefined.js +4 -0
  642. package/node_modules/underscore/modules/isWeakMap.js +5 -0
  643. package/node_modules/underscore/modules/isWeakSet.js +3 -0
  644. package/node_modules/underscore/modules/iteratee.js +10 -0
  645. package/node_modules/underscore/modules/keys.js +16 -0
  646. package/node_modules/underscore/modules/last.js +9 -0
  647. package/node_modules/underscore/modules/lastIndexOf.js +6 -0
  648. package/node_modules/underscore/modules/map.js +16 -0
  649. package/node_modules/underscore/modules/mapObject.js +16 -0
  650. package/node_modules/underscore/modules/matcher.js +11 -0
  651. package/node_modules/underscore/modules/max.js +29 -0
  652. package/node_modules/underscore/modules/memoize.js +13 -0
  653. package/node_modules/underscore/modules/min.js +29 -0
  654. package/node_modules/underscore/modules/mixin.js +18 -0
  655. package/node_modules/underscore/modules/negate.js +6 -0
  656. package/node_modules/underscore/modules/noop.js +2 -0
  657. package/node_modules/underscore/modules/now.js +4 -0
  658. package/node_modules/underscore/modules/object.js +16 -0
  659. package/node_modules/underscore/modules/omit.js +22 -0
  660. package/node_modules/underscore/modules/once.js +6 -0
  661. package/node_modules/underscore/modules/pairs.js +13 -0
  662. package/node_modules/underscore/modules/partial.js +24 -0
  663. package/node_modules/underscore/modules/partition.js +7 -0
  664. package/node_modules/underscore/modules/pick.js +26 -0
  665. package/node_modules/underscore/modules/pluck.js +7 -0
  666. package/node_modules/underscore/modules/property.js +11 -0
  667. package/node_modules/underscore/modules/propertyOf.js +10 -0
  668. package/node_modules/underscore/modules/random.js +8 -0
  669. package/node_modules/underscore/modules/range.js +21 -0
  670. package/node_modules/underscore/modules/reduce.js +5 -0
  671. package/node_modules/underscore/modules/reduceRight.js +4 -0
  672. package/node_modules/underscore/modules/reject.js +8 -0
  673. package/node_modules/underscore/modules/rest.js +8 -0
  674. package/node_modules/underscore/modules/restArguments.js +27 -0
  675. package/node_modules/underscore/modules/result.js +22 -0
  676. package/node_modules/underscore/modules/sample.js +27 -0
  677. package/node_modules/underscore/modules/shuffle.js +6 -0
  678. package/node_modules/underscore/modules/size.js +8 -0
  679. package/node_modules/underscore/modules/some.js +15 -0
  680. package/node_modules/underscore/modules/sortBy.js +24 -0
  681. package/node_modules/underscore/modules/sortedIndex.js +15 -0
  682. package/node_modules/underscore/modules/tap.js +7 -0
  683. package/node_modules/underscore/modules/template.js +93 -0
  684. package/node_modules/underscore/modules/templateSettings.js +9 -0
  685. package/node_modules/underscore/modules/throttle.js +47 -0
  686. package/node_modules/underscore/modules/times.js +9 -0
  687. package/node_modules/underscore/modules/toArray.js +20 -0
  688. package/node_modules/underscore/modules/toPath.js +9 -0
  689. package/node_modules/underscore/modules/underscore-array-methods.js +31 -0
  690. package/node_modules/underscore/modules/underscore.js +25 -0
  691. package/node_modules/underscore/modules/unescape.js +5 -0
  692. package/node_modules/underscore/modules/union.js +9 -0
  693. package/node_modules/underscore/modules/uniq.js +36 -0
  694. package/node_modules/underscore/modules/uniqueId.js +7 -0
  695. package/node_modules/underscore/modules/unzip.js +15 -0
  696. package/node_modules/underscore/modules/values.js +12 -0
  697. package/node_modules/underscore/modules/where.js +8 -0
  698. package/node_modules/underscore/modules/without.js +7 -0
  699. package/node_modules/underscore/modules/wrap.js +8 -0
  700. package/node_modules/underscore/modules/zip.js +6 -0
  701. package/node_modules/underscore/package.json +76 -0
  702. package/node_modules/underscore/underscore-esm-min.js +5 -0
  703. package/node_modules/underscore/underscore-esm-min.js.map +1 -0
  704. package/node_modules/underscore/underscore-esm.js +2026 -0
  705. package/node_modules/underscore/underscore-esm.js.map +1 -0
  706. package/node_modules/underscore/underscore-min.js +6 -0
  707. package/node_modules/underscore/underscore-min.js.map +1 -0
  708. package/node_modules/underscore/underscore.js +2034 -0
  709. package/node_modules/underscore/underscore.js.map +1 -0
  710. package/node_modules/word-wrap/LICENSE +21 -0
  711. package/node_modules/word-wrap/README.md +201 -0
  712. package/node_modules/word-wrap/index.d.ts +50 -0
  713. package/node_modules/word-wrap/index.js +61 -0
  714. package/node_modules/word-wrap/package.json +77 -0
  715. package/package.json +5 -1
@@ -0,0 +1,45 @@
1
+ {
2
+ "name": "jsonpath",
3
+ "description": "Query JavaScript objects with JSONPath expressions. Robust / safe JSONPath engine for Node.js.",
4
+ "version": "1.1.1",
5
+ "author": "david@fmail.co.uk",
6
+ "scripts": {
7
+ "prepublishOnly": "node lib/aesprim.js > generated/aesprim-browser.js",
8
+ "test": "mocha -u tdd test && jscs lib && jshint lib",
9
+ "generate": "node bin/generate_parser.js > generated/parser.js"
10
+ },
11
+ "dependencies": {
12
+ "esprima": "1.2.2",
13
+ "static-eval": "2.0.2",
14
+ "underscore": "1.12.1"
15
+ },
16
+ "browser": "./jsonpath.js",
17
+ "alias": {
18
+ "./lib/aesprim.js": "./generated/aesprim-browser.js"
19
+ },
20
+ "devDependencies": {
21
+ "grunt": "0.4.5",
22
+ "grunt-browserify": "3.8.0",
23
+ "grunt-cli": "0.1.13",
24
+ "grunt-contrib-uglify": "0.9.1",
25
+ "jison": "0.4.13",
26
+ "jscs": "1.10.0",
27
+ "jshint": "2.6.0",
28
+ "mocha": "2.1.0"
29
+ },
30
+ "repository": {
31
+ "type": "git",
32
+ "url": "https://github.com/dchester/jsonpath"
33
+ },
34
+ "keywords": [
35
+ "JSONPath",
36
+ "jsonpath",
37
+ "json-path",
38
+ "object",
39
+ "traversal",
40
+ "json",
41
+ "path",
42
+ "data structures"
43
+ ],
44
+ "license": "MIT"
45
+ }
@@ -0,0 +1,31 @@
1
+ { "store": {
2
+ "book": [
3
+ { "category": "reference",
4
+ "author": "Nigel Rees",
5
+ "title": "Sayings of the Century",
6
+ "price": 8.95
7
+ },
8
+ { "category": "fiction",
9
+ "author": "Evelyn Waugh",
10
+ "title": "Sword of Honour",
11
+ "price": 12.99
12
+ },
13
+ { "category": "fiction",
14
+ "author": "Herman Melville",
15
+ "title": "Moby Dick",
16
+ "isbn": "0-553-21311-3",
17
+ "price": 8.99
18
+ },
19
+ { "category": "fiction",
20
+ "author": "J. R. R. Tolkien",
21
+ "title": "The Lord of the Rings",
22
+ "isbn": "0-395-19395-8",
23
+ "price": 22.99
24
+ }
25
+ ],
26
+ "bicycle": {
27
+ "color": "red",
28
+ "price": 19.95
29
+ }
30
+ }
31
+ }
@@ -0,0 +1,38 @@
1
+ var assert = require('assert');
2
+ var jp = require('../');
3
+
4
+ var data = require('./data/store.json');
5
+
6
+ suite('orig-google-code-issues', function() {
7
+
8
+ test('comma in eval', function() {
9
+ var pathExpression = '$..book[?(@.price && ",")]'
10
+ var results = jp.query(data, pathExpression);
11
+ assert.deepEqual(results, data.store.book);
12
+ });
13
+
14
+ test('member names with dots', function() {
15
+ var data = { 'www.google.com': 42, 'www.wikipedia.org': 190 };
16
+ var results = jp.query(data, "$['www.google.com']");
17
+ assert.deepEqual(results, [ 42 ]);
18
+ });
19
+
20
+ test('nested objects with filter', function() {
21
+ var data = { dataResult: { object: { objectInfo: { className: "folder", typeName: "Standard Folder", id: "uniqueId" } } } };
22
+ var results = jp.query(data, "$..object[?(@.className=='folder')]");
23
+ assert.deepEqual(results, [ data.dataResult.object.objectInfo ]);
24
+ });
25
+
26
+ test('script expressions with @ char', function() {
27
+ var data = { "DIV": [{ "@class": "value", "val": 5 }] };
28
+ var results = jp.query(data, "$..DIV[?(@['@class']=='value')]");
29
+ assert.deepEqual(results, data.DIV);
30
+ });
31
+
32
+ test('negative slices', function() {
33
+ var results = jp.query(data, "$..book[-1:].title");
34
+ assert.deepEqual(results, ['The Lord of the Rings']);
35
+ });
36
+
37
+ });
38
+
@@ -0,0 +1,164 @@
1
+ var assert = require('assert');
2
+ var jp = require('../');
3
+ var util = require('util');
4
+
5
+ suite('parse', function() {
6
+
7
+ test('should parse root-only', function() {
8
+ var path = jp.parse('$');
9
+ assert.deepEqual(path, [ { expression: { type: 'root', value: '$' } } ]);
10
+ });
11
+
12
+ test('parse path for store', function() {
13
+ var path = jp.parse('$.store');
14
+ assert.deepEqual(path, [
15
+ { expression: { type: 'root', value: '$' } },
16
+ { operation: 'member', scope: 'child', expression: { type: 'identifier', value: 'store' } }
17
+ ])
18
+ });
19
+
20
+ test('parse path for the authors of all books in the store', function() {
21
+ var path = jp.parse('$.store.book[*].author');
22
+ assert.deepEqual(path, [
23
+ { expression: { type: 'root', value: '$' } },
24
+ { operation: 'member', scope: 'child', expression: { type: 'identifier', value: 'store' } },
25
+ { operation: 'member', scope: 'child', expression: { type: 'identifier', value: 'book' } },
26
+ { operation: 'subscript', scope: 'child', expression: { type: 'wildcard', value: '*' } },
27
+ { operation: 'member', scope: 'child', expression: { type: 'identifier', value: 'author' } }
28
+ ])
29
+ });
30
+
31
+ test('parse path for all authors', function() {
32
+ var path = jp.parse('$..author');
33
+ assert.deepEqual(path, [
34
+ { expression: { type: 'root', value: '$' } },
35
+ { operation: 'member', scope: 'descendant', expression: { type: 'identifier', value: 'author' } }
36
+ ])
37
+ });
38
+
39
+ test('parse path for all authors via subscript descendant string literal', function() {
40
+ var path = jp.parse("$..['author']");
41
+ assert.deepEqual(path, [
42
+ { expression: { type: 'root', value: '$' } },
43
+ { operation: 'subscript', scope: 'descendant', expression: { type: 'string_literal', value: 'author' } }
44
+ ])
45
+ });
46
+
47
+ test('parse path for all things in store', function() {
48
+ var path = jp.parse('$.store.*');
49
+ assert.deepEqual(path, [
50
+ { expression: { type: 'root', value: '$' } },
51
+ { operation: 'member', scope: 'child', expression: { type: 'identifier', value: 'store' } },
52
+ { operation: 'member', scope: 'child', expression: { type: 'wildcard', value: '*' } }
53
+ ])
54
+ });
55
+
56
+ test('parse path for price of everything in the store', function() {
57
+ var path = jp.parse('$.store..price');
58
+ assert.deepEqual(path, [
59
+ { expression: { type: 'root', value: '$' } },
60
+ { operation: 'member', scope: 'child', expression: { type: 'identifier', value: 'store' } },
61
+ { operation: 'member', scope: 'descendant', expression: { type: 'identifier', value: 'price' } }
62
+ ])
63
+ });
64
+
65
+ test('parse path for the last book in order via expression', function() {
66
+ var path = jp.parse('$..book[(@.length-1)]');
67
+ assert.deepEqual(path, [
68
+ { expression: { type: 'root', value: '$' } },
69
+ { operation: 'member', scope: 'descendant', expression: { type: 'identifier', value: 'book' } },
70
+ { operation: 'subscript', scope: 'child', expression: { type: 'script_expression', value: '(@.length-1)' } }
71
+ ])
72
+ });
73
+
74
+ test('parse path for the first two books via union', function() {
75
+ var path = jp.parse('$..book[0,1]');
76
+
77
+ assert.deepEqual(path, [
78
+ { expression: { type: 'root', value: '$' } },
79
+ { operation: 'member', scope: 'descendant', expression: { type: 'identifier', value: 'book' } },
80
+ { operation: 'subscript', scope: 'child', expression: { type: 'union', value: [ { expression: { type: 'numeric_literal', value: '0' } }, { expression: { type: 'numeric_literal', value: '1' } } ] } }
81
+ ])
82
+ });
83
+
84
+ test('parse path for the first two books via slice', function() {
85
+ var path = jp.parse('$..book[0:2]');
86
+ assert.deepEqual(path, [
87
+ { expression: { type: 'root', value: '$' } },
88
+ { operation: 'member', scope: 'descendant', expression: { type: 'identifier', value: 'book' } },
89
+ { operation: 'subscript', scope: 'child', expression: { type: 'slice', value: '0:2' } }
90
+ ])
91
+ });
92
+
93
+ test('parse path to filter all books with isbn number', function() {
94
+ var path = jp.parse('$..book[?(@.isbn)]');
95
+ assert.deepEqual(path, [
96
+ { expression: { type: 'root', value: '$' } },
97
+ { operation: 'member', scope: 'descendant', expression: { type: 'identifier', value: 'book' } },
98
+ { operation: 'subscript', scope: 'child', expression: { type: 'filter_expression', value: '?(@.isbn)' } }
99
+ ])
100
+ });
101
+
102
+ test('parse path to filter all books with a price less than 10', function() {
103
+ var path = jp.parse('$..book[?(@.price<10)]');
104
+ assert.deepEqual(path, [
105
+ { expression: { type: 'root', value: '$' } },
106
+ { operation: 'member', scope: 'descendant', expression: { type: 'identifier', value: 'book' } },
107
+ { operation: 'subscript', scope: 'child', expression: { type: 'filter_expression', value: '?(@.price<10)' } }
108
+ ])
109
+ });
110
+
111
+ test('parse path to match all elements', function() {
112
+ var path = jp.parse('$..*');
113
+ assert.deepEqual(path, [
114
+ { expression: { type: 'root', value: '$' } },
115
+ { operation: 'member', scope: 'descendant', expression: { type: 'wildcard', value: '*' } }
116
+ ])
117
+ });
118
+
119
+ test('parse path with leading member', function() {
120
+ var path = jp.parse('store');
121
+ assert.deepEqual(path, [
122
+ { operation: 'member', scope: 'child', expression: { type: 'identifier', value: 'store' } }
123
+ ])
124
+ });
125
+
126
+ test('parse path with leading member and followers', function() {
127
+ var path = jp.parse('Request.prototype.end');
128
+ assert.deepEqual(path, [
129
+ { operation: 'member', scope: 'child', expression: { type: 'identifier', value: 'Request' } },
130
+ { operation: 'member', scope: 'child', expression: { type: 'identifier', value: 'prototype' } },
131
+ { operation: 'member', scope: 'child', expression: { type: 'identifier', value: 'end' } }
132
+ ])
133
+ });
134
+
135
+ test('parser ast is reinitialized after parse() throws', function() {
136
+ assert.throws(function() { var path = jp.parse('store.book...') })
137
+ var path = jp.parse('$..price');
138
+ assert.deepEqual(path, [
139
+ { "expression": { "type": "root", "value": "$" } },
140
+ { "expression": { "type": "identifier", "value": "price" }, "operation": "member", "scope": "descendant"}
141
+ ])
142
+ });
143
+
144
+ });
145
+
146
+ suite('parse-negative', function() {
147
+
148
+ test('parse path with leading member component throws', function() {
149
+ assert.throws(function(e) { var path = jp.parse('.store') }, /Expecting 'DOLLAR'/)
150
+ });
151
+
152
+ test('parse path with leading descendant member throws', function() {
153
+ assert.throws(function() { var path = jp.parse('..store') }, /Expecting 'DOLLAR'/)
154
+ });
155
+
156
+ test('leading script throws', function() {
157
+ assert.throws(function() { var path = jp.parse('()') }, /Unrecognized text/)
158
+ });
159
+
160
+ test('first time friendly error', function() {
161
+ assert.throws(function() { (new jp.JSONPath).parse('$...') }, /Expecting 'STAR'/)
162
+ });
163
+
164
+ });
@@ -0,0 +1,359 @@
1
+ var assert = require('assert');
2
+ var jp = require('../');
3
+
4
+ var data = require('./data/store.json');
5
+
6
+ suite('query', function() {
7
+
8
+ test('first-level member', function() {
9
+ var results = jp.nodes(data, '$.store');
10
+ assert.deepEqual(results, [ { path: ['$', 'store'], value: data.store } ]);
11
+ });
12
+
13
+ test('authors of all books in the store', function() {
14
+ var results = jp.nodes(data, '$.store.book[*].author');
15
+ assert.deepEqual(results, [
16
+ { path: ['$', 'store', 'book', 0, 'author'], value: 'Nigel Rees' },
17
+ { path: ['$', 'store', 'book', 1, 'author'], value: 'Evelyn Waugh' },
18
+ { path: ['$', 'store', 'book', 2, 'author'], value: 'Herman Melville' },
19
+ { path: ['$', 'store', 'book', 3, 'author'], value: 'J. R. R. Tolkien' }
20
+ ]);
21
+ });
22
+
23
+ test('all authors', function() {
24
+ var results = jp.nodes(data, '$..author');
25
+ assert.deepEqual(results, [
26
+ { path: ['$', 'store', 'book', 0, 'author'], value: 'Nigel Rees' },
27
+ { path: ['$', 'store', 'book', 1, 'author'], value: 'Evelyn Waugh' },
28
+ { path: ['$', 'store', 'book', 2, 'author'], value: 'Herman Melville' },
29
+ { path: ['$', 'store', 'book', 3, 'author'], value: 'J. R. R. Tolkien' }
30
+ ]);
31
+ });
32
+
33
+ test('all authors via subscript descendant string literal', function() {
34
+ var results = jp.nodes(data, "$..['author']");
35
+ assert.deepEqual(results, [
36
+ { path: ['$', 'store', 'book', 0, 'author'], value: 'Nigel Rees' },
37
+ { path: ['$', 'store', 'book', 1, 'author'], value: 'Evelyn Waugh' },
38
+ { path: ['$', 'store', 'book', 2, 'author'], value: 'Herman Melville' },
39
+ { path: ['$', 'store', 'book', 3, 'author'], value: 'J. R. R. Tolkien' }
40
+ ]);
41
+ });
42
+
43
+ test('all things in store', function() {
44
+ var results = jp.nodes(data, '$.store.*');
45
+ assert.deepEqual(results, [
46
+ { path: ['$', 'store', 'book'], value: data.store.book },
47
+ { path: ['$', 'store', 'bicycle'], value: data.store.bicycle }
48
+ ]);
49
+ });
50
+
51
+ test('price of everything in the store', function() {
52
+ var results = jp.nodes(data, '$.store..price');
53
+ assert.deepEqual(results, [
54
+ { path: ['$', 'store', 'book', 0, 'price'], value: 8.95 },
55
+ { path: ['$', 'store', 'book', 1, 'price'], value: 12.99 },
56
+ { path: ['$', 'store', 'book', 2, 'price'], value: 8.99 },
57
+ { path: ['$', 'store', 'book', 3, 'price'], value: 22.99 },
58
+ { path: ['$', 'store', 'bicycle', 'price'], value: 19.95 }
59
+ ]);
60
+ });
61
+
62
+ test('last book in order via expression', function() {
63
+ var results = jp.nodes(data, '$..book[(@.length-1)]');
64
+ assert.deepEqual(results, [ { path: ['$', 'store', 'book', 3], value: data.store.book[3] }]);
65
+ });
66
+
67
+ test('first two books via union', function() {
68
+ var results = jp.nodes(data, '$..book[0,1]');
69
+ assert.deepEqual(results, [
70
+ { path: ['$', 'store', 'book', 0], value: data.store.book[0] },
71
+ { path: ['$', 'store', 'book', 1], value: data.store.book[1] }
72
+ ]);
73
+ });
74
+
75
+ test('first two books via slice', function() {
76
+ var results = jp.nodes(data, '$..book[0:2]');
77
+ assert.deepEqual(results, [
78
+ { path: ['$', 'store', 'book', 0], value: data.store.book[0] },
79
+ { path: ['$', 'store', 'book', 1], value: data.store.book[1] }
80
+ ]);
81
+ });
82
+
83
+ test('filter all books with isbn number', function() {
84
+ var results = jp.nodes(data, '$..book[?(@.isbn)]');
85
+ assert.deepEqual(results, [
86
+ { path: ['$', 'store', 'book', 2], value: data.store.book[2] },
87
+ { path: ['$', 'store', 'book', 3], value: data.store.book[3] }
88
+ ]);
89
+ });
90
+
91
+ test('filter all books with a price less than 10', function() {
92
+ var results = jp.nodes(data, '$..book[?(@.price<10)]');
93
+ assert.deepEqual(results, [
94
+ { path: ['$', 'store', 'book', 0], value: data.store.book[0] },
95
+ { path: ['$', 'store', 'book', 2], value: data.store.book[2] }
96
+ ]);
97
+ });
98
+
99
+ test('first ten of all elements', function() {
100
+ var results = jp.nodes(data, '$..*', 10);
101
+ assert.deepEqual(results, [
102
+ { path: [ '$', 'store' ], value: data.store },
103
+ { path: [ '$', 'store', 'book' ], value: data.store.book },
104
+ { path: [ '$', 'store', 'bicycle' ], value: data.store.bicycle },
105
+ { path: [ '$', 'store', 'book', 0 ], value: data.store.book[0] },
106
+ { path: [ '$', 'store', 'book', 1 ], value: data.store.book[1] },
107
+ { path: [ '$', 'store', 'book', 2 ], value: data.store.book[2] },
108
+ { path: [ '$', 'store', 'book', 3 ], value: data.store.book[3] },
109
+ { path: [ '$', 'store', 'book', 0, 'category' ], value: 'reference' },
110
+ { path: [ '$', 'store', 'book', 0, 'author' ], value: 'Nigel Rees' },
111
+ { path: [ '$', 'store', 'book', 0, 'title' ], value: 'Sayings of the Century' }
112
+ ])
113
+ });
114
+
115
+ test('all elements', function() {
116
+ var results = jp.nodes(data, '$..*');
117
+
118
+ assert.deepEqual(results, [
119
+ { path: [ '$', 'store' ], value: data.store },
120
+ { path: [ '$', 'store', 'book' ], value: data.store.book },
121
+ { path: [ '$', 'store', 'bicycle' ], value: data.store.bicycle },
122
+ { path: [ '$', 'store', 'book', 0 ], value: data.store.book[0] },
123
+ { path: [ '$', 'store', 'book', 1 ], value: data.store.book[1] },
124
+ { path: [ '$', 'store', 'book', 2 ], value: data.store.book[2] },
125
+ { path: [ '$', 'store', 'book', 3 ], value: data.store.book[3] },
126
+ { path: [ '$', 'store', 'book', 0, 'category' ], value: 'reference' },
127
+ { path: [ '$', 'store', 'book', 0, 'author' ], value: 'Nigel Rees' },
128
+ { path: [ '$', 'store', 'book', 0, 'title' ], value: 'Sayings of the Century' },
129
+ { path: [ '$', 'store', 'book', 0, 'price' ], value: 8.95 },
130
+ { path: [ '$', 'store', 'book', 1, 'category' ], value: 'fiction' },
131
+ { path: [ '$', 'store', 'book', 1, 'author' ], value: 'Evelyn Waugh' },
132
+ { path: [ '$', 'store', 'book', 1, 'title' ], value: 'Sword of Honour' },
133
+ { path: [ '$', 'store', 'book', 1, 'price' ], value: 12.99 },
134
+ { path: [ '$', 'store', 'book', 2, 'category' ], value: 'fiction' },
135
+ { path: [ '$', 'store', 'book', 2, 'author' ], value: 'Herman Melville' },
136
+ { path: [ '$', 'store', 'book', 2, 'title' ], value: 'Moby Dick' },
137
+ { path: [ '$', 'store', 'book', 2, 'isbn' ], value: '0-553-21311-3' },
138
+ { path: [ '$', 'store', 'book', 2, 'price' ], value: 8.99 },
139
+ { path: [ '$', 'store', 'book', 3, 'category' ], value: 'fiction' },
140
+ { path: [ '$', 'store', 'book', 3, 'author' ], value: 'J. R. R. Tolkien' },
141
+ { path: [ '$', 'store', 'book', 3, 'title' ], value: 'The Lord of the Rings' },
142
+ { path: [ '$', 'store', 'book', 3, 'isbn' ], value: '0-395-19395-8' },
143
+ { path: [ '$', 'store', 'book', 3, 'price' ], value: 22.99 },
144
+ { path: [ '$', 'store', 'bicycle', 'color' ], value: 'red' },
145
+ { path: [ '$', 'store', 'bicycle', 'price' ], value: 19.95 }
146
+ ]);
147
+ });
148
+
149
+ test('all elements via subscript wildcard', function() {
150
+ var results = jp.nodes(data, '$..*');
151
+ assert.deepEqual(jp.nodes(data, '$..[*]'), jp.nodes(data, '$..*'));
152
+ });
153
+
154
+ test('object subscript wildcard', function() {
155
+ var results = jp.query(data, '$.store[*]');
156
+ assert.deepEqual(results, [ data.store.book, data.store.bicycle ]);
157
+ });
158
+
159
+ test('no match returns empty array', function() {
160
+ var results = jp.nodes(data, '$..bookz');
161
+ assert.deepEqual(results, []);
162
+ });
163
+
164
+ test('member numeric literal gets first element', function() {
165
+ var results = jp.nodes(data, '$.store.book.0');
166
+ assert.deepEqual(results, [ { path: [ '$', 'store', 'book', 0 ], value: data.store.book[0] } ]);
167
+ });
168
+
169
+ test('member numeric literal matches string-numeric key', function() {
170
+ var data = { authors: { '1': 'Herman Melville', '2': 'J. R. R. Tolkien' } };
171
+ var results = jp.nodes(data, '$.authors.1');
172
+ assert.deepEqual(results, [ { path: [ '$', 'authors', 1 ], value: 'Herman Melville' } ]);
173
+ });
174
+
175
+ test('descendant numeric literal gets first element', function() {
176
+ var results = jp.nodes(data, '$.store.book..0');
177
+ assert.deepEqual(results, [ { path: [ '$', 'store', 'book', 0 ], value: data.store.book[0] } ]);
178
+ });
179
+
180
+ test('root element gets us original obj', function() {
181
+ var results = jp.nodes(data, '$');
182
+ assert.deepEqual(results, [ { path: ['$'], value: data } ]);
183
+ });
184
+
185
+ test('subscript double-quoted string', function() {
186
+ var results = jp.nodes(data, '$["store"]');
187
+ assert.deepEqual(results, [ { path: ['$', 'store'], value: data.store} ]);
188
+ });
189
+
190
+ test('subscript single-quoted string', function() {
191
+ var results = jp.nodes(data, "$['store']");
192
+ assert.deepEqual(results, [ { path: ['$', 'store'], value: data.store} ]);
193
+ });
194
+
195
+ test('leading member component', function() {
196
+ var results = jp.nodes(data, "store");
197
+ assert.deepEqual(results, [ { path: ['$', 'store'], value: data.store} ]);
198
+ });
199
+
200
+ test('union of three array slices', function() {
201
+ var results = jp.query(data, "$.store.book[0:1,1:2,2:3]");
202
+ assert.deepEqual(results, data.store.book.slice(0,3));
203
+ });
204
+
205
+ test('slice with step > 1', function() {
206
+ var results = jp.query(data, "$.store.book[0:4:2]");
207
+ assert.deepEqual(results, [ data.store.book[0], data.store.book[2]]);
208
+ });
209
+
210
+ test('union of subscript string literal keys', function() {
211
+ var results = jp.nodes(data, "$.store['book','bicycle']");
212
+ assert.deepEqual(results, [
213
+ { path: ['$', 'store', 'book'], value: data.store.book },
214
+ { path: ['$', 'store', 'bicycle'], value: data.store.bicycle },
215
+ ]);
216
+ });
217
+
218
+ test('union of subscript string literal three keys', function() {
219
+ var results = jp.nodes(data, "$.store.book[0]['title','author','price']");
220
+ assert.deepEqual(results, [
221
+ { path: ['$', 'store', 'book', 0, 'title'], value: data.store.book[0].title },
222
+ { path: ['$', 'store', 'book', 0, 'author'], value: data.store.book[0].author },
223
+ { path: ['$', 'store', 'book', 0, 'price'], value: data.store.book[0].price }
224
+ ]);
225
+ });
226
+
227
+ test('union of subscript integer three keys followed by member-child-identifier', function() {
228
+ var results = jp.nodes(data, "$.store.book[1,2,3]['title']");
229
+ assert.deepEqual(results, [
230
+ { path: ['$', 'store', 'book', 1, 'title'], value: data.store.book[1].title },
231
+ { path: ['$', 'store', 'book', 2, 'title'], value: data.store.book[2].title },
232
+ { path: ['$', 'store', 'book', 3, 'title'], value: data.store.book[3].title }
233
+ ]);
234
+ });
235
+
236
+ test('union of subscript integer three keys followed by union of subscript string literal three keys', function() {
237
+ var results = jp.nodes(data, "$.store.book[0,1,2,3]['title','author','price']");
238
+ assert.deepEqual(results, [
239
+ { path: ['$', 'store', 'book', 0, 'title'], value: data.store.book[0].title },
240
+ { path: ['$', 'store', 'book', 0, 'author'], value: data.store.book[0].author },
241
+ { path: ['$', 'store', 'book', 0, 'price'], value: data.store.book[0].price },
242
+ { path: ['$', 'store', 'book', 1, 'title'], value: data.store.book[1].title },
243
+ { path: ['$', 'store', 'book', 1, 'author'], value: data.store.book[1].author },
244
+ { path: ['$', 'store', 'book', 1, 'price'], value: data.store.book[1].price },
245
+ { path: ['$', 'store', 'book', 2, 'title'], value: data.store.book[2].title },
246
+ { path: ['$', 'store', 'book', 2, 'author'], value: data.store.book[2].author },
247
+ { path: ['$', 'store', 'book', 2, 'price'], value: data.store.book[2].price },
248
+ { path: ['$', 'store', 'book', 3, 'title'], value: data.store.book[3].title },
249
+ { path: ['$', 'store', 'book', 3, 'author'], value: data.store.book[3].author },
250
+ { path: ['$', 'store', 'book', 3, 'price'], value: data.store.book[3].price }
251
+ ]);
252
+ });
253
+
254
+ test('union of subscript integer four keys, including an inexistent one, followed by union of subscript string literal three keys', function() {
255
+ var results = jp.nodes(data, "$.store.book[0,1,2,3,151]['title','author','price']");
256
+ assert.deepEqual(results, [
257
+ { path: ['$', 'store', 'book', 0, 'title'], value: data.store.book[0].title },
258
+ { path: ['$', 'store', 'book', 0, 'author'], value: data.store.book[0].author },
259
+ { path: ['$', 'store', 'book', 0, 'price'], value: data.store.book[0].price },
260
+ { path: ['$', 'store', 'book', 1, 'title'], value: data.store.book[1].title },
261
+ { path: ['$', 'store', 'book', 1, 'author'], value: data.store.book[1].author },
262
+ { path: ['$', 'store', 'book', 1, 'price'], value: data.store.book[1].price },
263
+ { path: ['$', 'store', 'book', 2, 'title'], value: data.store.book[2].title },
264
+ { path: ['$', 'store', 'book', 2, 'author'], value: data.store.book[2].author },
265
+ { path: ['$', 'store', 'book', 2, 'price'], value: data.store.book[2].price },
266
+ { path: ['$', 'store', 'book', 3, 'title'], value: data.store.book[3].title },
267
+ { path: ['$', 'store', 'book', 3, 'author'], value: data.store.book[3].author },
268
+ { path: ['$', 'store', 'book', 3, 'price'], value: data.store.book[3].price }
269
+ ]);
270
+ });
271
+
272
+ test('union of subscript integer three keys followed by union of subscript string literal three keys, followed by inexistent literal key', function() {
273
+ var results = jp.nodes(data, "$.store.book[0,1,2,3]['title','author','price','fruit']");
274
+ assert.deepEqual(results, [
275
+ { path: ['$', 'store', 'book', 0, 'title'], value: data.store.book[0].title },
276
+ { path: ['$', 'store', 'book', 0, 'author'], value: data.store.book[0].author },
277
+ { path: ['$', 'store', 'book', 0, 'price'], value: data.store.book[0].price },
278
+ { path: ['$', 'store', 'book', 1, 'title'], value: data.store.book[1].title },
279
+ { path: ['$', 'store', 'book', 1, 'author'], value: data.store.book[1].author },
280
+ { path: ['$', 'store', 'book', 1, 'price'], value: data.store.book[1].price },
281
+ { path: ['$', 'store', 'book', 2, 'title'], value: data.store.book[2].title },
282
+ { path: ['$', 'store', 'book', 2, 'author'], value: data.store.book[2].author },
283
+ { path: ['$', 'store', 'book', 2, 'price'], value: data.store.book[2].price },
284
+ { path: ['$', 'store', 'book', 3, 'title'], value: data.store.book[3].title },
285
+ { path: ['$', 'store', 'book', 3, 'author'], value: data.store.book[3].author },
286
+ { path: ['$', 'store', 'book', 3, 'price'], value: data.store.book[3].price }
287
+ ]);
288
+ });
289
+
290
+ test('union of subscript 4 array slices followed by union of subscript string literal three keys', function() {
291
+ var results = jp.nodes(data, "$.store.book[0:1,1:2,2:3,3:4]['title','author','price']");
292
+ assert.deepEqual(results, [
293
+ { path: ['$', 'store', 'book', 0, 'title'], value: data.store.book[0].title },
294
+ { path: ['$', 'store', 'book', 0, 'author'], value: data.store.book[0].author },
295
+ { path: ['$', 'store', 'book', 0, 'price'], value: data.store.book[0].price },
296
+ { path: ['$', 'store', 'book', 1, 'title'], value: data.store.book[1].title },
297
+ { path: ['$', 'store', 'book', 1, 'author'], value: data.store.book[1].author },
298
+ { path: ['$', 'store', 'book', 1, 'price'], value: data.store.book[1].price },
299
+ { path: ['$', 'store', 'book', 2, 'title'], value: data.store.book[2].title },
300
+ { path: ['$', 'store', 'book', 2, 'author'], value: data.store.book[2].author },
301
+ { path: ['$', 'store', 'book', 2, 'price'], value: data.store.book[2].price },
302
+ { path: ['$', 'store', 'book', 3, 'title'], value: data.store.book[3].title },
303
+ { path: ['$', 'store', 'book', 3, 'author'], value: data.store.book[3].author },
304
+ { path: ['$', 'store', 'book', 3, 'price'], value: data.store.book[3].price }
305
+ ]);
306
+ });
307
+
308
+
309
+ test('nested parentheses eval', function() {
310
+ var pathExpression = '$..book[?( @.price && (@.price + 20 || false) )]'
311
+ var results = jp.query(data, pathExpression);
312
+ assert.deepEqual(results, data.store.book);
313
+ });
314
+
315
+ test('array indexes from 0 to 100', function() {
316
+ var data = [];
317
+ for (var i = 0; i <= 100; ++i)
318
+ data[i] = Math.random();
319
+
320
+ for (var i = 0; i <= 100; ++i) {
321
+ var results = jp.query(data, '$[' + i.toString() + ']');
322
+ assert.deepEqual(results, [data[i]]);
323
+ }
324
+ });
325
+
326
+ test('descendant subscript numeric literal', function() {
327
+ var data = [ 0, [ 1, 2, 3 ], [ 4, 5, 6 ] ];
328
+ var results = jp.query(data, '$..[0]');
329
+ assert.deepEqual(results, [ 0, 1, 4 ]);
330
+ });
331
+
332
+ test('descendant subscript numeric literal', function() {
333
+ var data = [ 0, 1, [ 2, 3, 4 ], [ 5, 6, 7, [ 8, 9 , 10 ] ] ];
334
+ var results = jp.query(data, '$..[0,1]');
335
+ assert.deepEqual(results, [ 0, 1, 2, 3, 5, 6, 8, 9 ]);
336
+ });
337
+
338
+ test('throws for no input', function() {
339
+ assert.throws(function() { jp.query() }, /needs to be an object/);
340
+ });
341
+
342
+ test('throws for bad input', function() {
343
+ assert.throws(function() { jp.query("string", "string") }, /needs to be an object/);
344
+ });
345
+
346
+ test('throws for bad input', function() {
347
+ assert.throws(function() { jp.query({}, null) }, /we need a path/);
348
+ });
349
+
350
+ test('throws for bad input', function() {
351
+ assert.throws(function() { jp.query({}, 42) }, /we need a path/);
352
+ });
353
+
354
+ test('union on objects', function() {
355
+ assert.deepEqual(jp.query({a: 1, b: 2, c: null}, '$..["a","b","c","d"]'), [1, 2, null]);
356
+ });
357
+
358
+ });
359
+