WP eCommerce - Version 3.15

Version Description

Download this release

Release Info

Developer JustinSainton
Plugin Icon 128x128 WP eCommerce
Version 3.15
Comparing to
See all releases

Code changes from version 3.14.0 to 3.15

Files changed (39) hide show
  1. .jshintrc +26 -0
  2. .travis.yml +29 -0
  3. package-lock.json +6919 -0
  4. package.json +11 -11
  5. phpunit.xml +14 -0
  6. readme.md +41 -0
  7. readme.txt +9 -3
  8. tests/bootstrap.php +16 -0
  9. tests/test-wpsc-country.class.php +234 -0
  10. tests/test-wpsc-coupon.class.php +364 -0
  11. tests/test-wpsc-region.class.php +97 -0
  12. wp-shopping-cart.php +1 -4
  13. wpsc-admin/admin.php +0 -1
  14. wpsc-admin/includes/display-items-functions.php +3 -5
  15. wpsc-admin/includes/product-functions.php +5 -6
  16. wpsc-admin/js/admin-legacy.js +1 -3
  17. wpsc-admin/js/wp-e-commerce-admin.js +0 -1
  18. wpsc-components/merchant-core-v2/helpers/gateways.php +3 -2
  19. wpsc-components/theme-engine-v1/helpers/ajax.php +1 -2
  20. wpsc-components/theme-engine-v1/widgets/category_widget.php +3 -1
  21. wpsc-components/theme-engine-v1/widgets/donations_widget.php +3 -2
  22. wpsc-components/theme-engine-v1/widgets/latest_product_widget.php +3 -1
  23. wpsc-components/theme-engine-v1/widgets/price_range_widget.php +11 -3
  24. wpsc-components/theme-engine-v1/widgets/product_tag_widget.php +3 -5
  25. wpsc-components/theme-engine-v1/widgets/shopping_cart_widget.php +3 -3
  26. wpsc-core/wpsc-constants.php +3 -21
  27. wpsc-core/wpsc-deprecated.php +1 -1
  28. wpsc-core/wpsc-functions.php +27 -7
  29. wpsc-core/wpsc-includes.php +5 -8
  30. wpsc-includes/cart-item.class.php +2 -2
  31. wpsc-includes/cart.class.php +1 -1
  32. wpsc-includes/checkout.class.php +2 -2
  33. wpsc-includes/form-display.functions.php +1 -1
  34. wpsc-includes/product.class.php +1 -1
  35. wpsc-includes/purchase-log.class.php +1 -1
  36. wpsc-includes/wpsc-meta-visitor.php +3 -5
  37. wpsc-includes/wpsc-theme-engine-bootstrap.php +0 -6
  38. wpsc-taxes/models/taxes.class.php +2 -2
  39. wpsc-widgets/admin_menu_widget.php +3 -1
.jshintrc ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "boss": true,
3
+ "curly": true,
4
+ "eqeqeq": true,
5
+ "eqnull": true,
6
+ "es3": true,
7
+ "expr": true,
8
+ "immed": true,
9
+ "noarg": true,
10
+ "onevar": true,
11
+ "quotmark": "single",
12
+ "trailing": true,
13
+ "undef": true,
14
+ "unused": true,
15
+
16
+ "browser": true,
17
+
18
+ "globals": {
19
+ "_": false,
20
+ "Backbone": false,
21
+ "jQuery": false,
22
+ "module": false,
23
+ "require": false,
24
+ "wp": false
25
+ }
26
+ }
.travis.yml ADDED
@@ -0,0 +1,29 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ language: php
2
+
3
+ php:
4
+ - 5.2
5
+ - 5.3
6
+ - 5.4
7
+ - 5.5
8
+ - 5.6
9
+ - 7.0
10
+ - hhvm
11
+
12
+ env:
13
+ - WP_VERSION=latest WP_MULTISITE=0
14
+ - WP_VERSION=latest WP_MULTISITE=1
15
+ - WP_VERSION=4.8 WP_MULTISITE=0
16
+ - WP_VERSION=4.8 WP_MULTISITE=1
17
+ - WP_VERSION=4.7 WP_MULTISITE=0
18
+ - WP_VERSION=4.7 WP_MULTISITE=1
19
+ - WP_VERSION=4.6 WP_MULTISITE=0
20
+ - WP_VERSION=4.6 WP_MULTISITE=1
21
+
22
+ before_script:
23
+ - bash bin/install-wp-tests.sh wordpress_test root '' localhost $WP_VERSION
24
+
25
+ script: phpunit --coverage-clover=coverage.clover
26
+
27
+ after_script:
28
+ - wget https://scrutinizer-ci.com/ocular.phar
29
+ - php ocular.phar code-coverage:upload --format=php-clover coverage.clover
package-lock.json ADDED
@@ -0,0 +1,6919 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "wp-e-commerce",
3
+ "version": "3.15.0",
4
+ "lockfileVersion": 1,
5
+ "requires": true,
6
+ "dependencies": {
7
+ "@types/color-name": {
8
+ "version": "1.1.1",
9
+ "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz",
10
+ "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==",
11
+ "dev": true
12
+ },
13
+ "@types/minimatch": {
14
+ "version": "3.0.3",
15
+ "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz",
16
+ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==",
17
+ "dev": true
18
+ },
19
+ "JSONStream": {
20
+ "version": "1.3.5",
21
+ "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz",
22
+ "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==",
23
+ "dev": true,
24
+ "requires": {
25
+ "jsonparse": "^1.2.0",
26
+ "through": ">=2.2.7 <3"
27
+ }
28
+ },
29
+ "abbrev": {
30
+ "version": "1.1.1",
31
+ "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
32
+ "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==",
33
+ "dev": true
34
+ },
35
+ "accessory": {
36
+ "version": "1.1.0",
37
+ "resolved": "https://registry.npmjs.org/accessory/-/accessory-1.1.0.tgz",
38
+ "integrity": "sha1-eDPpg5oy3tdtJgIfNqQXB6Ug9ZM=",
39
+ "dev": true,
40
+ "requires": {
41
+ "ap": "~0.2.0",
42
+ "balanced-match": "~0.2.0",
43
+ "dot-parts": "~1.0.0"
44
+ },
45
+ "dependencies": {
46
+ "balanced-match": {
47
+ "version": "0.2.1",
48
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.1.tgz",
49
+ "integrity": "sha1-e8ZYtL7WHu5CStdPdfXD4sTfPMc=",
50
+ "dev": true
51
+ }
52
+ }
53
+ },
54
+ "acorn": {
55
+ "version": "5.7.4",
56
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz",
57
+ "integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==",
58
+ "dev": true
59
+ },
60
+ "acorn-node": {
61
+ "version": "1.8.2",
62
+ "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz",
63
+ "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==",
64
+ "dev": true,
65
+ "requires": {
66
+ "acorn": "^7.0.0",
67
+ "acorn-walk": "^7.0.0",
68
+ "xtend": "^4.0.2"
69
+ },
70
+ "dependencies": {
71
+ "acorn": {
72
+ "version": "7.4.0",
73
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.0.tgz",
74
+ "integrity": "sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==",
75
+ "dev": true
76
+ }
77
+ }
78
+ },
79
+ "acorn-walk": {
80
+ "version": "7.2.0",
81
+ "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz",
82
+ "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==",
83
+ "dev": true
84
+ },
85
+ "align-text": {
86
+ "version": "0.1.4",
87
+ "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz",
88
+ "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=",
89
+ "dev": true,
90
+ "requires": {
91
+ "kind-of": "^3.0.2",
92
+ "longest": "^1.0.1",
93
+ "repeat-string": "^1.5.2"
94
+ }
95
+ },
96
+ "amdefine": {
97
+ "version": "1.0.1",
98
+ "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz",
99
+ "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=",
100
+ "dev": true,
101
+ "optional": true
102
+ },
103
+ "ansi": {
104
+ "version": "0.3.1",
105
+ "resolved": "https://registry.npmjs.org/ansi/-/ansi-0.3.1.tgz",
106
+ "integrity": "sha1-DELU+xcWDVqa8eSEus4cZpIsGyE=",
107
+ "dev": true
108
+ },
109
+ "ansi-regex": {
110
+ "version": "2.1.1",
111
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
112
+ "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
113
+ "dev": true
114
+ },
115
+ "ansi-styles": {
116
+ "version": "2.2.1",
117
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
118
+ "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=",
119
+ "dev": true
120
+ },
121
+ "anymatch": {
122
+ "version": "2.0.0",
123
+ "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz",
124
+ "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==",
125
+ "dev": true,
126
+ "requires": {
127
+ "micromatch": "^3.1.4",
128
+ "normalize-path": "^2.1.1"
129
+ }
130
+ },
131
+ "ap": {
132
+ "version": "0.2.0",
133
+ "resolved": "https://registry.npmjs.org/ap/-/ap-0.2.0.tgz",
134
+ "integrity": "sha1-rglCYAspkS8NKxTsYMRejzMLYRA=",
135
+ "dev": true
136
+ },
137
+ "are-we-there-yet": {
138
+ "version": "1.0.6",
139
+ "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.0.6.tgz",
140
+ "integrity": "sha1-otKMkxAqpsyWJFomy5VN4G7FPww=",
141
+ "dev": true,
142
+ "requires": {
143
+ "delegates": "^1.0.0",
144
+ "readable-stream": "^2.0.0 || ^1.1.13"
145
+ }
146
+ },
147
+ "argparse": {
148
+ "version": "1.0.10",
149
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
150
+ "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
151
+ "dev": true,
152
+ "requires": {
153
+ "sprintf-js": "~1.0.2"
154
+ },
155
+ "dependencies": {
156
+ "sprintf-js": {
157
+ "version": "1.0.3",
158
+ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
159
+ "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
160
+ "dev": true
161
+ }
162
+ }
163
+ },
164
+ "arr-diff": {
165
+ "version": "4.0.0",
166
+ "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz",
167
+ "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=",
168
+ "dev": true
169
+ },
170
+ "arr-flatten": {
171
+ "version": "1.1.0",
172
+ "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz",
173
+ "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==",
174
+ "dev": true
175
+ },
176
+ "arr-union": {
177
+ "version": "3.1.0",
178
+ "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz",
179
+ "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=",
180
+ "dev": true
181
+ },
182
+ "array-differ": {
183
+ "version": "3.0.0",
184
+ "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz",
185
+ "integrity": "sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==",
186
+ "dev": true
187
+ },
188
+ "array-each": {
189
+ "version": "1.0.1",
190
+ "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz",
191
+ "integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8=",
192
+ "dev": true
193
+ },
194
+ "array-find-index": {
195
+ "version": "1.0.2",
196
+ "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz",
197
+ "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=",
198
+ "dev": true
199
+ },
200
+ "array-slice": {
201
+ "version": "1.1.0",
202
+ "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz",
203
+ "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==",
204
+ "dev": true
205
+ },
206
+ "array-union": {
207
+ "version": "2.1.0",
208
+ "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz",
209
+ "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==",
210
+ "dev": true
211
+ },
212
+ "array-unique": {
213
+ "version": "0.3.2",
214
+ "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz",
215
+ "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=",
216
+ "dev": true
217
+ },
218
+ "arrify": {
219
+ "version": "2.0.1",
220
+ "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz",
221
+ "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==",
222
+ "dev": true
223
+ },
224
+ "asciify": {
225
+ "version": "1.3.5",
226
+ "resolved": "https://registry.npmjs.org/asciify/-/asciify-1.3.5.tgz",
227
+ "integrity": "sha1-c2vAq3lf60U0+t11l5fRBINXPic=",
228
+ "dev": true,
229
+ "requires": {
230
+ "chalk": "~0.3.0",
231
+ "optimist": "~0.6.0",
232
+ "pad": "0.0.4"
233
+ },
234
+ "dependencies": {
235
+ "ansi-styles": {
236
+ "version": "0.2.0",
237
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-0.2.0.tgz",
238
+ "integrity": "sha1-NZq0sV3NZLptdHNLcsNjYKmvLBk=",
239
+ "dev": true
240
+ },
241
+ "chalk": {
242
+ "version": "0.3.0",
243
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.3.0.tgz",
244
+ "integrity": "sha1-HJhDdzfxGZ68wdTEj9Qbn5yOjyM=",
245
+ "dev": true,
246
+ "requires": {
247
+ "ansi-styles": "~0.2.0",
248
+ "has-color": "~0.1.0"
249
+ }
250
+ }
251
+ }
252
+ },
253
+ "asn1.js": {
254
+ "version": "5.4.1",
255
+ "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz",
256
+ "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==",
257
+ "dev": true,
258
+ "requires": {
259
+ "bn.js": "^4.0.0",
260
+ "inherits": "^2.0.1",
261
+ "minimalistic-assert": "^1.0.0",
262
+ "safer-buffer": "^2.1.0"
263
+ },
264
+ "dependencies": {
265
+ "bn.js": {
266
+ "version": "4.11.9",
267
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz",
268
+ "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==",
269
+ "dev": true
270
+ }
271
+ }
272
+ },
273
+ "assert": {
274
+ "version": "1.5.0",
275
+ "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz",
276
+ "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==",
277
+ "dev": true,
278
+ "requires": {
279
+ "object-assign": "^4.1.1",
280
+ "util": "0.10.3"
281
+ },
282
+ "dependencies": {
283
+ "inherits": {
284
+ "version": "2.0.1",
285
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
286
+ "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=",
287
+ "dev": true
288
+ },
289
+ "util": {
290
+ "version": "0.10.3",
291
+ "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz",
292
+ "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=",
293
+ "dev": true,
294
+ "requires": {
295
+ "inherits": "2.0.1"
296
+ }
297
+ }
298
+ }
299
+ },
300
+ "assign-symbols": {
301
+ "version": "1.0.0",
302
+ "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz",
303
+ "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=",
304
+ "dev": true
305
+ },
306
+ "async": {
307
+ "version": "1.5.2",
308
+ "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz",
309
+ "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=",
310
+ "dev": true
311
+ },
312
+ "async-each": {
313
+ "version": "1.0.3",
314
+ "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz",
315
+ "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==",
316
+ "dev": true
317
+ },
318
+ "atob": {
319
+ "version": "2.1.2",
320
+ "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz",
321
+ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==",
322
+ "dev": true
323
+ },
324
+ "babelify": {
325
+ "version": "10.0.0",
326
+ "resolved": "https://registry.npmjs.org/babelify/-/babelify-10.0.0.tgz",
327
+ "integrity": "sha512-X40FaxyH7t3X+JFAKvb1H9wooWKLRCi8pg3m8poqtdZaIng+bjzp9RvKQCvRjF9isHiPkXspbbXT/zwXLtwgwg==",
328
+ "dev": true
329
+ },
330
+ "balanced-match": {
331
+ "version": "1.0.0",
332
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
333
+ "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
334
+ "dev": true
335
+ },
336
+ "base": {
337
+ "version": "0.11.2",
338
+ "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz",
339
+ "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==",
340
+ "dev": true,
341
+ "requires": {
342
+ "cache-base": "^1.0.1",
343
+ "class-utils": "^0.3.5",
344
+ "component-emitter": "^1.2.1",
345
+ "define-property": "^1.0.0",
346
+ "isobject": "^3.0.1",
347
+ "mixin-deep": "^1.2.0",
348
+ "pascalcase": "^0.1.1"
349
+ },
350
+ "dependencies": {
351
+ "define-property": {
352
+ "version": "1.0.0",
353
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
354
+ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
355
+ "dev": true,
356
+ "requires": {
357
+ "is-descriptor": "^1.0.0"
358
+ }
359
+ },
360
+ "is-accessor-descriptor": {
361
+ "version": "1.0.0",
362
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
363
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
364
+ "dev": true,
365
+ "requires": {
366
+ "kind-of": "^6.0.0"
367
+ }
368
+ },
369
+ "is-data-descriptor": {
370
+ "version": "1.0.0",
371
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
372
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
373
+ "dev": true,
374
+ "requires": {
375
+ "kind-of": "^6.0.0"
376
+ }
377
+ },
378
+ "is-descriptor": {
379
+ "version": "1.0.2",
380
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
381
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
382
+ "dev": true,
383
+ "requires": {
384
+ "is-accessor-descriptor": "^1.0.0",
385
+ "is-data-descriptor": "^1.0.0",
386
+ "kind-of": "^6.0.2"
387
+ }
388
+ },
389
+ "kind-of": {
390
+ "version": "6.0.3",
391
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
392
+ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
393
+ "dev": true
394
+ }
395
+ }
396
+ },
397
+ "base64-js": {
398
+ "version": "1.3.1",
399
+ "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz",
400
+ "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==",
401
+ "dev": true
402
+ },
403
+ "binary-extensions": {
404
+ "version": "1.13.1",
405
+ "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz",
406
+ "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==",
407
+ "dev": true
408
+ },
409
+ "bindings": {
410
+ "version": "1.5.0",
411
+ "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz",
412
+ "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==",
413
+ "dev": true,
414
+ "optional": true,
415
+ "requires": {
416
+ "file-uri-to-path": "1.0.0"
417
+ }
418
+ },
419
+ "bluebird": {
420
+ "version": "3.7.2",
421
+ "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz",
422
+ "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==",
423
+ "dev": true
424
+ },
425
+ "bn.js": {
426
+ "version": "5.1.3",
427
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.1.3.tgz",
428
+ "integrity": "sha512-GkTiFpjFtUzU9CbMeJ5iazkCzGL3jrhzerzZIuqLABjbwRaFt33I9tUdSNryIptM+RxDet6OKm2WnLXzW51KsQ==",
429
+ "dev": true
430
+ },
431
+ "body": {
432
+ "version": "5.1.0",
433
+ "resolved": "https://registry.npmjs.org/body/-/body-5.1.0.tgz",
434
+ "integrity": "sha1-5LoM5BCkaTYyM2dgnstOZVMSUGk=",
435
+ "dev": true,
436
+ "requires": {
437
+ "continuable-cache": "^0.3.1",
438
+ "error": "^7.0.0",
439
+ "raw-body": "~1.1.0",
440
+ "safe-json-parse": "~1.0.1"
441
+ }
442
+ },
443
+ "brace-expansion": {
444
+ "version": "1.1.11",
445
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
446
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
447
+ "dev": true,
448
+ "requires": {
449
+ "balanced-match": "^1.0.0",
450
+ "concat-map": "0.0.1"
451
+ }
452
+ },
453
+ "braces": {
454
+ "version": "2.3.2",
455
+ "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz",
456
+ "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==",
457
+ "dev": true,
458
+ "requires": {
459
+ "arr-flatten": "^1.1.0",
460
+ "array-unique": "^0.3.2",
461
+ "extend-shallow": "^2.0.1",
462
+ "fill-range": "^4.0.0",
463
+ "isobject": "^3.0.1",
464
+ "repeat-element": "^1.1.2",
465
+ "snapdragon": "^0.8.1",
466
+ "snapdragon-node": "^2.0.1",
467
+ "split-string": "^3.0.2",
468
+ "to-regex": "^3.0.1"
469
+ },
470
+ "dependencies": {
471
+ "extend-shallow": {
472
+ "version": "2.0.1",
473
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
474
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
475
+ "dev": true,
476
+ "requires": {
477
+ "is-extendable": "^0.1.0"
478
+ }
479
+ }
480
+ }
481
+ },
482
+ "brorand": {
483
+ "version": "1.1.0",
484
+ "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz",
485
+ "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=",
486
+ "dev": true
487
+ },
488
+ "browser-pack": {
489
+ "version": "6.1.0",
490
+ "resolved": "https://registry.npmjs.org/browser-pack/-/browser-pack-6.1.0.tgz",
491
+ "integrity": "sha512-erYug8XoqzU3IfcU8fUgyHqyOXqIE4tUTTQ+7mqUjQlvnXkOO6OlT9c/ZoJVHYoAaqGxr09CN53G7XIsO4KtWA==",
492
+ "dev": true,
493
+ "requires": {
494
+ "JSONStream": "^1.0.3",
495
+ "combine-source-map": "~0.8.0",
496
+ "defined": "^1.0.0",
497
+ "safe-buffer": "^5.1.1",
498
+ "through2": "^2.0.0",
499
+ "umd": "^3.0.0"
500
+ }
501
+ },
502
+ "browser-resolve": {
503
+ "version": "2.0.0",
504
+ "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-2.0.0.tgz",
505
+ "integrity": "sha512-7sWsQlYL2rGLy2IWm8WL8DCTJvYLc/qlOnsakDac87SOoCd16WLsaAMdCiAqsTNHIe+SXfaqyxyo6THoWqs8WQ==",
506
+ "dev": true,
507
+ "requires": {
508
+ "resolve": "^1.17.0"
509
+ }
510
+ },
511
+ "browserify": {
512
+ "version": "16.5.2",
513
+ "resolved": "https://registry.npmjs.org/browserify/-/browserify-16.5.2.tgz",
514
+ "integrity": "sha512-TkOR1cQGdmXU9zW4YukWzWVSJwrxmNdADFbqbE3HFgQWe5wqZmOawqZ7J/8MPCwk/W8yY7Y0h+7mOtcZxLP23g==",
515
+ "dev": true,
516
+ "requires": {
517
+ "JSONStream": "^1.0.3",
518
+ "assert": "^1.4.0",
519
+ "browser-pack": "^6.0.1",
520
+ "browser-resolve": "^2.0.0",
521
+ "browserify-zlib": "~0.2.0",
522
+ "buffer": "~5.2.1",
523
+ "cached-path-relative": "^1.0.0",
524
+ "concat-stream": "^1.6.0",
525
+ "console-browserify": "^1.1.0",
526
+ "constants-browserify": "~1.0.0",
527
+ "crypto-browserify": "^3.0.0",
528
+ "defined": "^1.0.0",
529
+ "deps-sort": "^2.0.0",
530
+ "domain-browser": "^1.2.0",
531
+ "duplexer2": "~0.1.2",
532
+ "events": "^2.0.0",
533
+ "glob": "^7.1.0",
534
+ "has": "^1.0.0",
535
+ "htmlescape": "^1.1.0",
536
+ "https-browserify": "^1.0.0",
537
+ "inherits": "~2.0.1",
538
+ "insert-module-globals": "^7.0.0",
539
+ "labeled-stream-splicer": "^2.0.0",
540
+ "mkdirp-classic": "^0.5.2",
541
+ "module-deps": "^6.2.3",
542
+ "os-browserify": "~0.3.0",
543
+ "parents": "^1.0.1",
544
+ "path-browserify": "~0.0.0",
545
+ "process": "~0.11.0",
546
+ "punycode": "^1.3.2",
547
+ "querystring-es3": "~0.2.0",
548
+ "read-only-stream": "^2.0.0",
549
+ "readable-stream": "^2.0.2",
550
+ "resolve": "^1.1.4",
551
+ "shasum": "^1.0.0",
552
+ "shell-quote": "^1.6.1",
553
+ "stream-browserify": "^2.0.0",
554
+ "stream-http": "^3.0.0",
555
+ "string_decoder": "^1.1.1",
556
+ "subarg": "^1.0.0",
557
+ "syntax-error": "^1.1.1",
558
+ "through2": "^2.0.0",
559
+ "timers-browserify": "^1.0.1",
560
+ "tty-browserify": "0.0.1",
561
+ "url": "~0.11.0",
562
+ "util": "~0.10.1",
563
+ "vm-browserify": "^1.0.0",
564
+ "xtend": "^4.0.0"
565
+ },
566
+ "dependencies": {
567
+ "browserify-zlib": {
568
+ "version": "0.2.0",
569
+ "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz",
570
+ "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==",
571
+ "dev": true,
572
+ "requires": {
573
+ "pako": "~1.0.5"
574
+ }
575
+ },
576
+ "concat-stream": {
577
+ "version": "1.6.2",
578
+ "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
579
+ "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
580
+ "dev": true,
581
+ "requires": {
582
+ "buffer-from": "^1.0.0",
583
+ "inherits": "^2.0.3",
584
+ "readable-stream": "^2.2.2",
585
+ "typedarray": "^0.0.6"
586
+ }
587
+ },
588
+ "pako": {
589
+ "version": "1.0.11",
590
+ "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz",
591
+ "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==",
592
+ "dev": true
593
+ },
594
+ "safe-buffer": {
595
+ "version": "5.2.1",
596
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
597
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
598
+ "dev": true
599
+ },
600
+ "string_decoder": {
601
+ "version": "1.3.0",
602
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
603
+ "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
604
+ "dev": true,
605
+ "requires": {
606
+ "safe-buffer": "~5.2.0"
607
+ }
608
+ }
609
+ }
610
+ },
611
+ "browserify-aes": {
612
+ "version": "1.2.0",
613
+ "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
614
+ "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==",
615
+ "dev": true,
616
+ "requires": {
617
+ "buffer-xor": "^1.0.3",
618
+ "cipher-base": "^1.0.0",
619
+ "create-hash": "^1.1.0",
620
+ "evp_bytestokey": "^1.0.3",
621
+ "inherits": "^2.0.1",
622
+ "safe-buffer": "^5.0.1"
623
+ }
624
+ },
625
+ "browserify-cache-api": {
626
+ "version": "3.0.1",
627
+ "resolved": "https://registry.npmjs.org/browserify-cache-api/-/browserify-cache-api-3.0.1.tgz",
628
+ "integrity": "sha1-liR+hT8Gj9bg1FzHPwuyzZd47wI=",
629
+ "dev": true,
630
+ "requires": {
631
+ "async": "^1.5.2",
632
+ "through2": "^2.0.0",
633
+ "xtend": "^4.0.0"
634
+ }
635
+ },
636
+ "browserify-cipher": {
637
+ "version": "1.0.1",
638
+ "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz",
639
+ "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==",
640
+ "dev": true,
641
+ "requires": {
642
+ "browserify-aes": "^1.0.4",
643
+ "browserify-des": "^1.0.0",
644
+ "evp_bytestokey": "^1.0.0"
645
+ }
646
+ },
647
+ "browserify-des": {
648
+ "version": "1.0.2",
649
+ "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz",
650
+ "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==",
651
+ "dev": true,
652
+ "requires": {
653
+ "cipher-base": "^1.0.1",
654
+ "des.js": "^1.0.0",
655
+ "inherits": "^2.0.1",
656
+ "safe-buffer": "^5.1.2"
657
+ }
658
+ },
659
+ "browserify-incremental": {
660
+ "version": "3.1.1",
661
+ "resolved": "https://registry.npmjs.org/browserify-incremental/-/browserify-incremental-3.1.1.tgz",
662
+ "integrity": "sha1-BxPLdYckemMqnwjPG9FpuHi2Koo=",
663
+ "dev": true,
664
+ "requires": {
665
+ "JSONStream": "^0.10.0",
666
+ "browserify-cache-api": "^3.0.0",
667
+ "through2": "^2.0.0",
668
+ "xtend": "^4.0.0"
669
+ },
670
+ "dependencies": {
671
+ "JSONStream": {
672
+ "version": "0.10.0",
673
+ "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-0.10.0.tgz",
674
+ "integrity": "sha1-dDSdDYlSK3HzDwoD/5vSDKbxKsA=",
675
+ "dev": true,
676
+ "requires": {
677
+ "jsonparse": "0.0.5",
678
+ "through": ">=2.2.7 <3"
679
+ }
680
+ },
681
+ "jsonparse": {
682
+ "version": "0.0.5",
683
+ "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-0.0.5.tgz",
684
+ "integrity": "sha1-MwVCrT8KZUZlt3jz6y2an6UHrGQ=",
685
+ "dev": true
686
+ }
687
+ }
688
+ },
689
+ "browserify-rsa": {
690
+ "version": "4.0.1",
691
+ "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz",
692
+ "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=",
693
+ "dev": true,
694
+ "requires": {
695
+ "bn.js": "^4.1.0",
696
+ "randombytes": "^2.0.1"
697
+ },
698
+ "dependencies": {
699
+ "bn.js": {
700
+ "version": "4.11.9",
701
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz",
702
+ "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==",
703
+ "dev": true
704
+ }
705
+ }
706
+ },
707
+ "browserify-shim": {
708
+ "version": "3.8.14",
709
+ "resolved": "https://registry.npmjs.org/browserify-shim/-/browserify-shim-3.8.14.tgz",
710
+ "integrity": "sha1-vxBXAmky0yU8de991xTzuHft7Gs=",
711
+ "dev": true,
712
+ "requires": {
713
+ "exposify": "~0.5.0",
714
+ "mothership": "~0.2.0",
715
+ "rename-function-calls": "~0.1.0",
716
+ "resolve": "~0.6.1",
717
+ "through": "~2.3.4"
718
+ },
719
+ "dependencies": {
720
+ "resolve": {
721
+ "version": "0.6.3",
722
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-0.6.3.tgz",
723
+ "integrity": "sha1-3ZV5gufnNt699TtYpN2RdUV13UY=",
724
+ "dev": true
725
+ }
726
+ }
727
+ },
728
+ "browserify-sign": {
729
+ "version": "4.2.1",
730
+ "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz",
731
+ "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==",
732
+ "dev": true,
733
+ "requires": {
734
+ "bn.js": "^5.1.1",
735
+ "browserify-rsa": "^4.0.1",
736
+ "create-hash": "^1.2.0",
737
+ "create-hmac": "^1.1.7",
738
+ "elliptic": "^6.5.3",
739
+ "inherits": "^2.0.4",
740
+ "parse-asn1": "^5.1.5",
741
+ "readable-stream": "^3.6.0",
742
+ "safe-buffer": "^5.2.0"
743
+ },
744
+ "dependencies": {
745
+ "readable-stream": {
746
+ "version": "3.6.0",
747
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
748
+ "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
749
+ "dev": true,
750
+ "requires": {
751
+ "inherits": "^2.0.3",
752
+ "string_decoder": "^1.1.1",
753
+ "util-deprecate": "^1.0.1"
754
+ }
755
+ },
756
+ "safe-buffer": {
757
+ "version": "5.2.1",
758
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
759
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
760
+ "dev": true
761
+ },
762
+ "string_decoder": {
763
+ "version": "1.3.0",
764
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
765
+ "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
766
+ "dev": true,
767
+ "requires": {
768
+ "safe-buffer": "~5.2.0"
769
+ }
770
+ }
771
+ }
772
+ },
773
+ "browserify-zlib": {
774
+ "version": "0.1.4",
775
+ "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.1.4.tgz",
776
+ "integrity": "sha1-uzX4pRn2AOD6a4SFJByXnQFB+y0=",
777
+ "dev": true,
778
+ "requires": {
779
+ "pako": "~0.2.0"
780
+ }
781
+ },
782
+ "buffer": {
783
+ "version": "5.2.1",
784
+ "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.2.1.tgz",
785
+ "integrity": "sha512-c+Ko0loDaFfuPWiL02ls9Xd3GO3cPVmUobQ6t3rXNUk304u6hGq+8N/kFi+QEIKhzK3uwolVhLzszmfLmMLnqg==",
786
+ "dev": true,
787
+ "requires": {
788
+ "base64-js": "^1.0.2",
789
+ "ieee754": "^1.1.4"
790
+ }
791
+ },
792
+ "buffer-from": {
793
+ "version": "1.1.1",
794
+ "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
795
+ "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==",
796
+ "dev": true
797
+ },
798
+ "buffer-xor": {
799
+ "version": "1.0.3",
800
+ "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz",
801
+ "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=",
802
+ "dev": true
803
+ },
804
+ "builtin-status-codes": {
805
+ "version": "3.0.0",
806
+ "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz",
807
+ "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=",
808
+ "dev": true
809
+ },
810
+ "bytes": {
811
+ "version": "1.0.0",
812
+ "resolved": "https://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz",
813
+ "integrity": "sha1-NWnt6Lo0MV+rmcPpLLBMciDeH6g=",
814
+ "dev": true
815
+ },
816
+ "cache-base": {
817
+ "version": "1.0.1",
818
+ "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz",
819
+ "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==",
820
+ "dev": true,
821
+ "requires": {
822
+ "collection-visit": "^1.0.0",
823
+ "component-emitter": "^1.2.1",
824
+ "get-value": "^2.0.6",
825
+ "has-value": "^1.0.0",
826
+ "isobject": "^3.0.1",
827
+ "set-value": "^2.0.0",
828
+ "to-object-path": "^0.3.0",
829
+ "union-value": "^1.0.0",
830
+ "unset-value": "^1.0.0"
831
+ }
832
+ },
833
+ "cached-path-relative": {
834
+ "version": "1.0.2",
835
+ "resolved": "https://registry.npmjs.org/cached-path-relative/-/cached-path-relative-1.0.2.tgz",
836
+ "integrity": "sha512-5r2GqsoEb4qMTTN9J+WzXfjov+hjxT+j3u5K+kIVNIwAd99DLCJE9pBIMP1qVeybV6JiijL385Oz0DcYxfbOIg==",
837
+ "dev": true
838
+ },
839
+ "camelcase": {
840
+ "version": "1.2.1",
841
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz",
842
+ "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=",
843
+ "dev": true
844
+ },
845
+ "camelcase-keys": {
846
+ "version": "2.1.0",
847
+ "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
848
+ "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
849
+ "dev": true,
850
+ "requires": {
851
+ "camelcase": "^2.0.0",
852
+ "map-obj": "^1.0.0"
853
+ },
854
+ "dependencies": {
855
+ "camelcase": {
856
+ "version": "2.1.1",
857
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
858
+ "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=",
859
+ "dev": true
860
+ }
861
+ }
862
+ },
863
+ "center-align": {
864
+ "version": "0.1.3",
865
+ "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz",
866
+ "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=",
867
+ "dev": true,
868
+ "requires": {
869
+ "align-text": "^0.1.3",
870
+ "lazy-cache": "^1.0.3"
871
+ }
872
+ },
873
+ "chalk": {
874
+ "version": "1.1.3",
875
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
876
+ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
877
+ "dev": true,
878
+ "requires": {
879
+ "ansi-styles": "^2.2.1",
880
+ "escape-string-regexp": "^1.0.2",
881
+ "has-ansi": "^2.0.0",
882
+ "strip-ansi": "^3.0.0",
883
+ "supports-color": "^2.0.0"
884
+ }
885
+ },
886
+ "chokidar": {
887
+ "version": "2.1.8",
888
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz",
889
+ "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==",
890
+ "dev": true,
891
+ "requires": {
892
+ "anymatch": "^2.0.0",
893
+ "async-each": "^1.0.1",
894
+ "braces": "^2.3.2",
895
+ "fsevents": "^1.2.7",
896
+ "glob-parent": "^3.1.0",
897
+ "inherits": "^2.0.3",
898
+ "is-binary-path": "^1.0.0",
899
+ "is-glob": "^4.0.0",
900
+ "normalize-path": "^3.0.0",
901
+ "path-is-absolute": "^1.0.0",
902
+ "readdirp": "^2.2.1",
903
+ "upath": "^1.1.1"
904
+ },
905
+ "dependencies": {
906
+ "is-glob": {
907
+ "version": "4.0.1",
908
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz",
909
+ "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==",
910
+ "dev": true,
911
+ "requires": {
912
+ "is-extglob": "^2.1.1"
913
+ }
914
+ },
915
+ "normalize-path": {
916
+ "version": "3.0.0",
917
+ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
918
+ "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
919
+ "dev": true
920
+ }
921
+ }
922
+ },
923
+ "cipher-base": {
924
+ "version": "1.0.4",
925
+ "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz",
926
+ "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==",
927
+ "dev": true,
928
+ "requires": {
929
+ "inherits": "^2.0.1",
930
+ "safe-buffer": "^5.0.1"
931
+ }
932
+ },
933
+ "class-utils": {
934
+ "version": "0.3.6",
935
+ "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
936
+ "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==",
937
+ "dev": true,
938
+ "requires": {
939
+ "arr-union": "^3.1.0",
940
+ "define-property": "^0.2.5",
941
+ "isobject": "^3.0.0",
942
+ "static-extend": "^0.1.1"
943
+ },
944
+ "dependencies": {
945
+ "define-property": {
946
+ "version": "0.2.5",
947
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
948
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
949
+ "dev": true,
950
+ "requires": {
951
+ "is-descriptor": "^0.1.0"
952
+ }
953
+ }
954
+ }
955
+ },
956
+ "clean-css": {
957
+ "version": "4.2.3",
958
+ "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.3.tgz",
959
+ "integrity": "sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==",
960
+ "dev": true,
961
+ "requires": {
962
+ "source-map": "~0.6.0"
963
+ },
964
+ "dependencies": {
965
+ "source-map": {
966
+ "version": "0.6.1",
967
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
968
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
969
+ "dev": true
970
+ }
971
+ }
972
+ },
973
+ "cli": {
974
+ "version": "1.0.1",
975
+ "resolved": "https://registry.npmjs.org/cli/-/cli-1.0.1.tgz",
976
+ "integrity": "sha1-IoF1NPJL+klQw01TLUjsvGIbjBQ=",
977
+ "dev": true,
978
+ "requires": {
979
+ "exit": "0.1.2",
980
+ "glob": "^7.1.1"
981
+ }
982
+ },
983
+ "cliui": {
984
+ "version": "2.1.0",
985
+ "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz",
986
+ "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=",
987
+ "dev": true,
988
+ "requires": {
989
+ "center-align": "^0.1.1",
990
+ "right-align": "^0.1.1",
991
+ "wordwrap": "0.0.2"
992
+ }
993
+ },
994
+ "collection-visit": {
995
+ "version": "1.0.0",
996
+ "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz",
997
+ "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=",
998
+ "dev": true,
999
+ "requires": {
1000
+ "map-visit": "^1.0.0",
1001
+ "object-visit": "^1.0.0"
1002
+ }
1003
+ },
1004
+ "color-convert": {
1005
+ "version": "2.0.1",
1006
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
1007
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
1008
+ "dev": true,
1009
+ "requires": {
1010
+ "color-name": "~1.1.4"
1011
+ }
1012
+ },
1013
+ "color-name": {
1014
+ "version": "1.1.4",
1015
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
1016
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
1017
+ "dev": true
1018
+ },
1019
+ "colors": {
1020
+ "version": "1.1.2",
1021
+ "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz",
1022
+ "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=",
1023
+ "dev": true
1024
+ },
1025
+ "combine-source-map": {
1026
+ "version": "0.8.0",
1027
+ "resolved": "https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.8.0.tgz",
1028
+ "integrity": "sha1-pY0N8ELBhvz4IqjoAV9UUNLXmos=",
1029
+ "dev": true,
1030
+ "requires": {
1031
+ "convert-source-map": "~1.1.0",
1032
+ "inline-source-map": "~0.6.0",
1033
+ "lodash.memoize": "~3.0.3",
1034
+ "source-map": "~0.5.3"
1035
+ }
1036
+ },
1037
+ "component-emitter": {
1038
+ "version": "1.3.0",
1039
+ "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz",
1040
+ "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==",
1041
+ "dev": true
1042
+ },
1043
+ "concat-map": {
1044
+ "version": "0.0.1",
1045
+ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
1046
+ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
1047
+ "dev": true
1048
+ },
1049
+ "concat-stream": {
1050
+ "version": "1.4.11",
1051
+ "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.4.11.tgz",
1052
+ "integrity": "sha512-X3JMh8+4je3U1cQpG87+f9lXHDrqcb2MVLg9L7o8b1UZ0DzhRrUpdn65ttzu10PpJPPI3MQNkis+oha6TSA9Mw==",
1053
+ "dev": true,
1054
+ "requires": {
1055
+ "inherits": "~2.0.1",
1056
+ "readable-stream": "~1.1.9",
1057
+ "typedarray": "~0.0.5"
1058
+ },
1059
+ "dependencies": {
1060
+ "readable-stream": {
1061
+ "version": "1.1.14",
1062
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
1063
+ "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
1064
+ "dev": true,
1065
+ "requires": {
1066
+ "core-util-is": "~1.0.0",
1067
+ "inherits": "~2.0.1",
1068
+ "isarray": "0.0.1",
1069
+ "string_decoder": "~0.10.x"
1070
+ }
1071
+ }
1072
+ }
1073
+ },
1074
+ "console-browserify": {
1075
+ "version": "1.2.0",
1076
+ "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz",
1077
+ "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==",
1078
+ "dev": true
1079
+ },
1080
+ "constants-browserify": {
1081
+ "version": "1.0.0",
1082
+ "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz",
1083
+ "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=",
1084
+ "dev": true
1085
+ },
1086
+ "continuable-cache": {
1087
+ "version": "0.3.1",
1088
+ "resolved": "https://registry.npmjs.org/continuable-cache/-/continuable-cache-0.3.1.tgz",
1089
+ "integrity": "sha1-vXJ6f67XfnH/OYWskzUakSczrQ8=",
1090
+ "dev": true
1091
+ },
1092
+ "convert-source-map": {
1093
+ "version": "1.1.3",
1094
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.1.3.tgz",
1095
+ "integrity": "sha1-SCnId+n+SbMWHzvzZziI4gRpmGA=",
1096
+ "dev": true
1097
+ },
1098
+ "copy-descriptor": {
1099
+ "version": "0.1.1",
1100
+ "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz",
1101
+ "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=",
1102
+ "dev": true
1103
+ },
1104
+ "core-util-is": {
1105
+ "version": "1.0.2",
1106
+ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
1107
+ "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
1108
+ "dev": true
1109
+ },
1110
+ "create-ecdh": {
1111
+ "version": "4.0.4",
1112
+ "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz",
1113
+ "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==",
1114
+ "dev": true,
1115
+ "requires": {
1116
+ "bn.js": "^4.1.0",
1117
+ "elliptic": "^6.5.3"
1118
+ },
1119
+ "dependencies": {
1120
+ "bn.js": {
1121
+ "version": "4.11.9",
1122
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz",
1123
+ "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==",
1124
+ "dev": true
1125
+ }
1126
+ }
1127
+ },
1128
+ "create-hash": {
1129
+ "version": "1.2.0",
1130
+ "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
1131
+ "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==",
1132
+ "dev": true,
1133
+ "requires": {
1134
+ "cipher-base": "^1.0.1",
1135
+ "inherits": "^2.0.1",
1136
+ "md5.js": "^1.3.4",
1137
+ "ripemd160": "^2.0.1",
1138
+ "sha.js": "^2.4.0"
1139
+ }
1140
+ },
1141
+ "create-hmac": {
1142
+ "version": "1.1.7",
1143
+ "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
1144
+ "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==",
1145
+ "dev": true,
1146
+ "requires": {
1147
+ "cipher-base": "^1.0.3",
1148
+ "create-hash": "^1.1.0",
1149
+ "inherits": "^2.0.1",
1150
+ "ripemd160": "^2.0.0",
1151
+ "safe-buffer": "^5.0.1",
1152
+ "sha.js": "^2.4.8"
1153
+ }
1154
+ },
1155
+ "crypto-browserify": {
1156
+ "version": "3.12.0",
1157
+ "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz",
1158
+ "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==",
1159
+ "dev": true,
1160
+ "requires": {
1161
+ "browserify-cipher": "^1.0.0",
1162
+ "browserify-sign": "^4.0.0",
1163
+ "create-ecdh": "^4.0.0",
1164
+ "create-hash": "^1.1.0",
1165
+ "create-hmac": "^1.1.0",
1166
+ "diffie-hellman": "^5.0.0",
1167
+ "inherits": "^2.0.1",
1168
+ "pbkdf2": "^3.0.3",
1169
+ "public-encrypt": "^4.0.0",
1170
+ "randombytes": "^2.0.0",
1171
+ "randomfill": "^1.0.3"
1172
+ }
1173
+ },
1174
+ "css-parse": {
1175
+ "version": "1.7.0",
1176
+ "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-1.7.0.tgz",
1177
+ "integrity": "sha1-Mh9s9zeCpv91ERE5D8BeLGV9jJs=",
1178
+ "dev": true
1179
+ },
1180
+ "currently-unhandled": {
1181
+ "version": "0.4.1",
1182
+ "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz",
1183
+ "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=",
1184
+ "dev": true,
1185
+ "requires": {
1186
+ "array-find-index": "^1.0.1"
1187
+ }
1188
+ },
1189
+ "dargs": {
1190
+ "version": "0.1.0",
1191
+ "resolved": "https://registry.npmjs.org/dargs/-/dargs-0.1.0.tgz",
1192
+ "integrity": "sha1-I2Stn0Qfl23NX+mWHiFxVmWl48M=",
1193
+ "dev": true
1194
+ },
1195
+ "dash-ast": {
1196
+ "version": "1.0.0",
1197
+ "resolved": "https://registry.npmjs.org/dash-ast/-/dash-ast-1.0.0.tgz",
1198
+ "integrity": "sha512-Vy4dx7gquTeMcQR/hDkYLGUnwVil6vk4FOOct+djUnHOUWt+zJPJAaRIXaAFkPXtJjvlY7o3rfRu0/3hpnwoUA==",
1199
+ "dev": true
1200
+ },
1201
+ "date-now": {
1202
+ "version": "0.1.4",
1203
+ "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz",
1204
+ "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=",
1205
+ "dev": true
1206
+ },
1207
+ "dateformat": {
1208
+ "version": "3.0.3",
1209
+ "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz",
1210
+ "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==",
1211
+ "dev": true
1212
+ },
1213
+ "debug": {
1214
+ "version": "2.6.9",
1215
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
1216
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
1217
+ "dev": true,
1218
+ "requires": {
1219
+ "ms": "2.0.0"
1220
+ }
1221
+ },
1222
+ "decamelize": {
1223
+ "version": "1.2.0",
1224
+ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
1225
+ "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
1226
+ "dev": true
1227
+ },
1228
+ "decode-uri-component": {
1229
+ "version": "0.2.0",
1230
+ "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz",
1231
+ "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=",
1232
+ "dev": true
1233
+ },
1234
+ "define-properties": {
1235
+ "version": "1.1.3",
1236
+ "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz",
1237
+ "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==",
1238
+ "dev": true,
1239
+ "requires": {
1240
+ "object-keys": "^1.0.12"
1241
+ }
1242
+ },
1243
+ "define-property": {
1244
+ "version": "2.0.2",
1245
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz",
1246
+ "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==",
1247
+ "dev": true,
1248
+ "requires": {
1249
+ "is-descriptor": "^1.0.2",
1250
+ "isobject": "^3.0.1"
1251
+ },
1252
+ "dependencies": {
1253
+ "is-accessor-descriptor": {
1254
+ "version": "1.0.0",
1255
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
1256
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
1257
+ "dev": true,
1258
+ "requires": {
1259
+ "kind-of": "^6.0.0"
1260
+ }
1261
+ },
1262
+ "is-data-descriptor": {
1263
+ "version": "1.0.0",
1264
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
1265
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
1266
+ "dev": true,
1267
+ "requires": {
1268
+ "kind-of": "^6.0.0"
1269
+ }
1270
+ },
1271
+ "is-descriptor": {
1272
+ "version": "1.0.2",
1273
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
1274
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
1275
+ "dev": true,
1276
+ "requires": {
1277
+ "is-accessor-descriptor": "^1.0.0",
1278
+ "is-data-descriptor": "^1.0.0",
1279
+ "kind-of": "^6.0.2"
1280
+ }
1281
+ },
1282
+ "kind-of": {
1283
+ "version": "6.0.3",
1284
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
1285
+ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
1286
+ "dev": true
1287
+ }
1288
+ }
1289
+ },
1290
+ "defined": {
1291
+ "version": "1.0.0",
1292
+ "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz",
1293
+ "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=",
1294
+ "dev": true
1295
+ },
1296
+ "delegates": {
1297
+ "version": "1.0.0",
1298
+ "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
1299
+ "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=",
1300
+ "dev": true
1301
+ },
1302
+ "deps-sort": {
1303
+ "version": "2.0.1",
1304
+ "resolved": "https://registry.npmjs.org/deps-sort/-/deps-sort-2.0.1.tgz",
1305
+ "integrity": "sha512-1orqXQr5po+3KI6kQb9A4jnXT1PBwggGl2d7Sq2xsnOeI9GPcE/tGcF9UiSZtZBM7MukY4cAh7MemS6tZYipfw==",
1306
+ "dev": true,
1307
+ "requires": {
1308
+ "JSONStream": "^1.0.3",
1309
+ "shasum-object": "^1.0.0",
1310
+ "subarg": "^1.0.0",
1311
+ "through2": "^2.0.0"
1312
+ }
1313
+ },
1314
+ "des.js": {
1315
+ "version": "1.0.1",
1316
+ "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz",
1317
+ "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==",
1318
+ "dev": true,
1319
+ "requires": {
1320
+ "inherits": "^2.0.1",
1321
+ "minimalistic-assert": "^1.0.0"
1322
+ }
1323
+ },
1324
+ "detect-file": {
1325
+ "version": "1.0.0",
1326
+ "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz",
1327
+ "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=",
1328
+ "dev": true
1329
+ },
1330
+ "detective": {
1331
+ "version": "4.7.1",
1332
+ "resolved": "https://registry.npmjs.org/detective/-/detective-4.7.1.tgz",
1333
+ "integrity": "sha512-H6PmeeUcZloWtdt4DAkFyzFL94arpHr3NOwwmVILFiy+9Qd4JTxxXrzfyGk/lmct2qVGBwTSwSXagqu2BxmWig==",
1334
+ "dev": true,
1335
+ "requires": {
1336
+ "acorn": "^5.2.1",
1337
+ "defined": "^1.0.0"
1338
+ }
1339
+ },
1340
+ "diffie-hellman": {
1341
+ "version": "5.0.3",
1342
+ "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
1343
+ "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==",
1344
+ "dev": true,
1345
+ "requires": {
1346
+ "bn.js": "^4.1.0",
1347
+ "miller-rabin": "^4.0.0",
1348
+ "randombytes": "^2.0.0"
1349
+ },
1350
+ "dependencies": {
1351
+ "bn.js": {
1352
+ "version": "4.11.9",
1353
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz",
1354
+ "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==",
1355
+ "dev": true
1356
+ }
1357
+ }
1358
+ },
1359
+ "dom-serializer": {
1360
+ "version": "0.2.2",
1361
+ "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz",
1362
+ "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==",
1363
+ "dev": true,
1364
+ "requires": {
1365
+ "domelementtype": "^2.0.1",
1366
+ "entities": "^2.0.0"
1367
+ },
1368
+ "dependencies": {
1369
+ "domelementtype": {
1370
+ "version": "2.0.1",
1371
+ "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.0.1.tgz",
1372
+ "integrity": "sha512-5HOHUDsYZWV8FGWN0Njbr/Rn7f/eWSQi1v7+HsUVwXgn8nWWlL64zKDkS0n8ZmQ3mlWOMuXOnR+7Nx/5tMO5AQ==",
1373
+ "dev": true
1374
+ },
1375
+ "entities": {
1376
+ "version": "2.0.3",
1377
+ "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.3.tgz",
1378
+ "integrity": "sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ==",
1379
+ "dev": true
1380
+ }
1381
+ }
1382
+ },
1383
+ "domain-browser": {
1384
+ "version": "1.2.0",
1385
+ "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz",
1386
+ "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==",
1387
+ "dev": true
1388
+ },
1389
+ "domelementtype": {
1390
+ "version": "1.3.1",
1391
+ "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz",
1392
+ "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==",
1393
+ "dev": true
1394
+ },
1395
+ "domhandler": {
1396
+ "version": "2.3.0",
1397
+ "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.3.0.tgz",
1398
+ "integrity": "sha1-LeWaCCLVAn+r/28DLCsloqir5zg=",
1399
+ "dev": true,
1400
+ "requires": {
1401
+ "domelementtype": "1"
1402
+ }
1403
+ },
1404
+ "domutils": {
1405
+ "version": "1.5.1",
1406
+ "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz",
1407
+ "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=",
1408
+ "dev": true,
1409
+ "requires": {
1410
+ "dom-serializer": "0",
1411
+ "domelementtype": "1"
1412
+ }
1413
+ },
1414
+ "dot-parts": {
1415
+ "version": "1.0.1",
1416
+ "resolved": "https://registry.npmjs.org/dot-parts/-/dot-parts-1.0.1.tgz",
1417
+ "integrity": "sha1-iEvXvPwwgv+tL+XbU+SU2PPgdD8=",
1418
+ "dev": true
1419
+ },
1420
+ "duplexer": {
1421
+ "version": "0.1.2",
1422
+ "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz",
1423
+ "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==",
1424
+ "dev": true
1425
+ },
1426
+ "duplexer2": {
1427
+ "version": "0.1.4",
1428
+ "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz",
1429
+ "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=",
1430
+ "dev": true,
1431
+ "requires": {
1432
+ "readable-stream": "^2.0.2"
1433
+ }
1434
+ },
1435
+ "elliptic": {
1436
+ "version": "6.5.3",
1437
+ "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz",
1438
+ "integrity": "sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==",
1439
+ "dev": true,
1440
+ "requires": {
1441
+ "bn.js": "^4.4.0",
1442
+ "brorand": "^1.0.1",
1443
+ "hash.js": "^1.0.0",
1444
+ "hmac-drbg": "^1.0.0",
1445
+ "inherits": "^2.0.1",
1446
+ "minimalistic-assert": "^1.0.0",
1447
+ "minimalistic-crypto-utils": "^1.0.0"
1448
+ },
1449
+ "dependencies": {
1450
+ "bn.js": {
1451
+ "version": "4.11.9",
1452
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz",
1453
+ "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==",
1454
+ "dev": true
1455
+ }
1456
+ }
1457
+ },
1458
+ "encoding": {
1459
+ "version": "0.1.13",
1460
+ "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz",
1461
+ "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==",
1462
+ "dev": true,
1463
+ "requires": {
1464
+ "iconv-lite": "^0.6.2"
1465
+ },
1466
+ "dependencies": {
1467
+ "iconv-lite": {
1468
+ "version": "0.6.2",
1469
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.2.tgz",
1470
+ "integrity": "sha512-2y91h5OpQlolefMPmUlivelittSWy0rP+oYVpn6A7GwVHNE8AWzoYOBNmlwks3LobaJxgHCYZAnyNo2GgpNRNQ==",
1471
+ "dev": true,
1472
+ "requires": {
1473
+ "safer-buffer": ">= 2.1.2 < 3.0.0"
1474
+ }
1475
+ }
1476
+ }
1477
+ },
1478
+ "entities": {
1479
+ "version": "1.0.0",
1480
+ "resolved": "https://registry.npmjs.org/entities/-/entities-1.0.0.tgz",
1481
+ "integrity": "sha1-sph6o4ITR/zeZCsk/fyeT7cSvyY=",
1482
+ "dev": true
1483
+ },
1484
+ "error": {
1485
+ "version": "7.2.1",
1486
+ "resolved": "https://registry.npmjs.org/error/-/error-7.2.1.tgz",
1487
+ "integrity": "sha512-fo9HBvWnx3NGUKMvMwB/CBCMMrfEJgbDTVDEkPygA3Bdd3lM1OyCd+rbQ8BwnpF6GdVeOLDNmyL4N5Bg80ZvdA==",
1488
+ "dev": true,
1489
+ "requires": {
1490
+ "string-template": "~0.2.1"
1491
+ }
1492
+ },
1493
+ "error-ex": {
1494
+ "version": "1.3.2",
1495
+ "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
1496
+ "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
1497
+ "dev": true,
1498
+ "requires": {
1499
+ "is-arrayish": "^0.2.1"
1500
+ }
1501
+ },
1502
+ "escape-string-regexp": {
1503
+ "version": "1.0.5",
1504
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
1505
+ "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
1506
+ "dev": true
1507
+ },
1508
+ "escodegen": {
1509
+ "version": "1.1.0",
1510
+ "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.1.0.tgz",
1511
+ "integrity": "sha1-xmOSP24gqtSNDA+knzHG1PSTYM8=",
1512
+ "dev": true,
1513
+ "requires": {
1514
+ "esprima": "~1.0.4",
1515
+ "estraverse": "~1.5.0",
1516
+ "esutils": "~1.0.0",
1517
+ "source-map": "~0.1.30"
1518
+ },
1519
+ "dependencies": {
1520
+ "esprima": {
1521
+ "version": "1.0.4",
1522
+ "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz",
1523
+ "integrity": "sha1-n1V+CPw7TSbs6d00+Pv0drYlha0=",
1524
+ "dev": true
1525
+ },
1526
+ "esutils": {
1527
+ "version": "1.0.0",
1528
+ "resolved": "https://registry.npmjs.org/esutils/-/esutils-1.0.0.tgz",
1529
+ "integrity": "sha1-gVHTWOIMisx/t0XnRywAJf5JZXA=",
1530
+ "dev": true
1531
+ },
1532
+ "source-map": {
1533
+ "version": "0.1.43",
1534
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz",
1535
+ "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=",
1536
+ "dev": true,
1537
+ "optional": true,
1538
+ "requires": {
1539
+ "amdefine": ">=0.0.4"
1540
+ }
1541
+ }
1542
+ }
1543
+ },
1544
+ "esprima": {
1545
+ "version": "4.0.1",
1546
+ "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
1547
+ "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
1548
+ "dev": true
1549
+ },
1550
+ "estraverse": {
1551
+ "version": "1.5.1",
1552
+ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.5.1.tgz",
1553
+ "integrity": "sha1-hno+jlip+EYYr7bC3bzZFrfLr3E=",
1554
+ "dev": true
1555
+ },
1556
+ "eventemitter2": {
1557
+ "version": "0.4.14",
1558
+ "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz",
1559
+ "integrity": "sha1-j2G3XN4BKy6esoTUVFWDtWQ7Yas=",
1560
+ "dev": true
1561
+ },
1562
+ "events": {
1563
+ "version": "2.1.0",
1564
+ "resolved": "https://registry.npmjs.org/events/-/events-2.1.0.tgz",
1565
+ "integrity": "sha512-3Zmiobend8P9DjmKAty0Era4jV8oJ0yGYe2nJJAxgymF9+N8F2m0hhZiMoWtcfepExzNKZumFU3ksdQbInGWCg==",
1566
+ "dev": true
1567
+ },
1568
+ "evp_bytestokey": {
1569
+ "version": "1.0.3",
1570
+ "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz",
1571
+ "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==",
1572
+ "dev": true,
1573
+ "requires": {
1574
+ "md5.js": "^1.3.4",
1575
+ "safe-buffer": "^5.1.1"
1576
+ }
1577
+ },
1578
+ "exit": {
1579
+ "version": "0.1.2",
1580
+ "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
1581
+ "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=",
1582
+ "dev": true
1583
+ },
1584
+ "expand-brackets": {
1585
+ "version": "2.1.4",
1586
+ "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz",
1587
+ "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=",
1588
+ "dev": true,
1589
+ "requires": {
1590
+ "debug": "^2.3.3",
1591
+ "define-property": "^0.2.5",
1592
+ "extend-shallow": "^2.0.1",
1593
+ "posix-character-classes": "^0.1.0",
1594
+ "regex-not": "^1.0.0",
1595
+ "snapdragon": "^0.8.1",
1596
+ "to-regex": "^3.0.1"
1597
+ },
1598
+ "dependencies": {
1599
+ "define-property": {
1600
+ "version": "0.2.5",
1601
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
1602
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
1603
+ "dev": true,
1604
+ "requires": {
1605
+ "is-descriptor": "^0.1.0"
1606
+ }
1607
+ },
1608
+ "extend-shallow": {
1609
+ "version": "2.0.1",
1610
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
1611
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
1612
+ "dev": true,
1613
+ "requires": {
1614
+ "is-extendable": "^0.1.0"
1615
+ }
1616
+ }
1617
+ }
1618
+ },
1619
+ "expand-tilde": {
1620
+ "version": "2.0.2",
1621
+ "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz",
1622
+ "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=",
1623
+ "dev": true,
1624
+ "requires": {
1625
+ "homedir-polyfill": "^1.0.1"
1626
+ }
1627
+ },
1628
+ "exposify": {
1629
+ "version": "0.5.0",
1630
+ "resolved": "https://registry.npmjs.org/exposify/-/exposify-0.5.0.tgz",
1631
+ "integrity": "sha1-+S0AlMJls/VT4fpFagOhiD0QWcw=",
1632
+ "dev": true,
1633
+ "requires": {
1634
+ "globo": "~1.1.0",
1635
+ "map-obj": "~1.0.1",
1636
+ "replace-requires": "~1.0.3",
1637
+ "through2": "~0.4.0",
1638
+ "transformify": "~0.1.1"
1639
+ },
1640
+ "dependencies": {
1641
+ "object-keys": {
1642
+ "version": "0.4.0",
1643
+ "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz",
1644
+ "integrity": "sha1-KKaq50KN0sOpLz2V8hM13SBOAzY=",
1645
+ "dev": true
1646
+ },
1647
+ "readable-stream": {
1648
+ "version": "1.0.34",
1649
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz",
1650
+ "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=",
1651
+ "dev": true,
1652
+ "requires": {
1653
+ "core-util-is": "~1.0.0",
1654
+ "inherits": "~2.0.1",
1655
+ "isarray": "0.0.1",
1656
+ "string_decoder": "~0.10.x"
1657
+ }
1658
+ },
1659
+ "through2": {
1660
+ "version": "0.4.2",
1661
+ "resolved": "https://registry.npmjs.org/through2/-/through2-0.4.2.tgz",
1662
+ "integrity": "sha1-2/WGYDEVHsg1K7bE22SiKSqEC5s=",
1663
+ "dev": true,
1664
+ "requires": {
1665
+ "readable-stream": "~1.0.17",
1666
+ "xtend": "~2.1.1"
1667
+ }
1668
+ },
1669
+ "xtend": {
1670
+ "version": "2.1.2",
1671
+ "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz",
1672
+ "integrity": "sha1-bv7MKk2tjmlixJAbM3znuoe10os=",
1673
+ "dev": true,
1674
+ "requires": {
1675
+ "object-keys": "~0.4.0"
1676
+ }
1677
+ }
1678
+ }
1679
+ },
1680
+ "extend": {
1681
+ "version": "3.0.2",
1682
+ "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
1683
+ "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==",
1684
+ "dev": true
1685
+ },
1686
+ "extend-shallow": {
1687
+ "version": "3.0.2",
1688
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
1689
+ "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=",
1690
+ "dev": true,
1691
+ "requires": {
1692
+ "assign-symbols": "^1.0.0",
1693
+ "is-extendable": "^1.0.1"
1694
+ },
1695
+ "dependencies": {
1696
+ "is-extendable": {
1697
+ "version": "1.0.1",
1698
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
1699
+ "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
1700
+ "dev": true,
1701
+ "requires": {
1702
+ "is-plain-object": "^2.0.4"
1703
+ }
1704
+ }
1705
+ }
1706
+ },
1707
+ "extglob": {
1708
+ "version": "2.0.4",
1709
+ "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz",
1710
+ "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==",
1711
+ "dev": true,
1712
+ "requires": {
1713
+ "array-unique": "^0.3.2",
1714
+ "define-property": "^1.0.0",
1715
+ "expand-brackets": "^2.1.4",
1716
+ "extend-shallow": "^2.0.1",
1717
+ "fragment-cache": "^0.2.1",
1718
+ "regex-not": "^1.0.0",
1719
+ "snapdragon": "^0.8.1",
1720
+ "to-regex": "^3.0.1"
1721
+ },
1722
+ "dependencies": {
1723
+ "define-property": {
1724
+ "version": "1.0.0",
1725
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
1726
+ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
1727
+ "dev": true,
1728
+ "requires": {
1729
+ "is-descriptor": "^1.0.0"
1730
+ }
1731
+ },
1732
+ "extend-shallow": {
1733
+ "version": "2.0.1",
1734
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
1735
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
1736
+ "dev": true,
1737
+ "requires": {
1738
+ "is-extendable": "^0.1.0"
1739
+ }
1740
+ },
1741
+ "is-accessor-descriptor": {
1742
+ "version": "1.0.0",
1743
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
1744
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
1745
+ "dev": true,
1746
+ "requires": {
1747
+ "kind-of": "^6.0.0"
1748
+ }
1749
+ },
1750
+ "is-data-descriptor": {
1751
+ "version": "1.0.0",
1752
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
1753
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
1754
+ "dev": true,
1755
+ "requires": {
1756
+ "kind-of": "^6.0.0"
1757
+ }
1758
+ },
1759
+ "is-descriptor": {
1760
+ "version": "1.0.2",
1761
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
1762
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
1763
+ "dev": true,
1764
+ "requires": {
1765
+ "is-accessor-descriptor": "^1.0.0",
1766
+ "is-data-descriptor": "^1.0.0",
1767
+ "kind-of": "^6.0.2"
1768
+ }
1769
+ },
1770
+ "kind-of": {
1771
+ "version": "6.0.3",
1772
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
1773
+ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
1774
+ "dev": true
1775
+ }
1776
+ }
1777
+ },
1778
+ "fast-safe-stringify": {
1779
+ "version": "2.0.7",
1780
+ "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz",
1781
+ "integrity": "sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==",
1782
+ "dev": true
1783
+ },
1784
+ "faye-websocket": {
1785
+ "version": "0.10.0",
1786
+ "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz",
1787
+ "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=",
1788
+ "dev": true,
1789
+ "requires": {
1790
+ "websocket-driver": ">=0.5.1"
1791
+ }
1792
+ },
1793
+ "figures": {
1794
+ "version": "1.7.0",
1795
+ "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz",
1796
+ "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=",
1797
+ "dev": true,
1798
+ "requires": {
1799
+ "escape-string-regexp": "^1.0.5",
1800
+ "object-assign": "^4.1.0"
1801
+ }
1802
+ },
1803
+ "file-uri-to-path": {
1804
+ "version": "1.0.0",
1805
+ "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz",
1806
+ "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==",
1807
+ "dev": true,
1808
+ "optional": true
1809
+ },
1810
+ "fill-range": {
1811
+ "version": "4.0.0",
1812
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz",
1813
+ "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=",
1814
+ "dev": true,
1815
+ "requires": {
1816
+ "extend-shallow": "^2.0.1",
1817
+ "is-number": "^3.0.0",
1818
+ "repeat-string": "^1.6.1",
1819
+ "to-regex-range": "^2.1.0"
1820
+ },
1821
+ "dependencies": {
1822
+ "extend-shallow": {
1823
+ "version": "2.0.1",
1824
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
1825
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
1826
+ "dev": true,
1827
+ "requires": {
1828
+ "is-extendable": "^0.1.0"
1829
+ }
1830
+ }
1831
+ }
1832
+ },
1833
+ "find-parent-dir": {
1834
+ "version": "0.3.0",
1835
+ "resolved": "https://registry.npmjs.org/find-parent-dir/-/find-parent-dir-0.3.0.tgz",
1836
+ "integrity": "sha1-M8RLQpqysvBkYpnF+fcY83b/jVQ=",
1837
+ "dev": true
1838
+ },
1839
+ "find-up": {
1840
+ "version": "1.1.2",
1841
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
1842
+ "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=",
1843
+ "dev": true,
1844
+ "requires": {
1845
+ "path-exists": "^2.0.0",
1846
+ "pinkie-promise": "^2.0.0"
1847
+ },
1848
+ "dependencies": {
1849
+ "path-exists": {
1850
+ "version": "2.1.0",
1851
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz",
1852
+ "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=",
1853
+ "dev": true,
1854
+ "requires": {
1855
+ "pinkie-promise": "^2.0.0"
1856
+ }
1857
+ }
1858
+ }
1859
+ },
1860
+ "findup-sync": {
1861
+ "version": "0.3.0",
1862
+ "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.3.0.tgz",
1863
+ "integrity": "sha1-N5MKpdgWt3fANEXhlmzGeQpMCxY=",
1864
+ "dev": true,
1865
+ "requires": {
1866
+ "glob": "~5.0.0"
1867
+ },
1868
+ "dependencies": {
1869
+ "glob": {
1870
+ "version": "5.0.15",
1871
+ "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz",
1872
+ "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=",
1873
+ "dev": true,
1874
+ "requires": {
1875
+ "inflight": "^1.0.4",
1876
+ "inherits": "2",
1877
+ "minimatch": "2 || 3",
1878
+ "once": "^1.3.0",
1879
+ "path-is-absolute": "^1.0.0"
1880
+ }
1881
+ }
1882
+ }
1883
+ },
1884
+ "fined": {
1885
+ "version": "1.2.0",
1886
+ "resolved": "https://registry.npmjs.org/fined/-/fined-1.2.0.tgz",
1887
+ "integrity": "sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng==",
1888
+ "dev": true,
1889
+ "requires": {
1890
+ "expand-tilde": "^2.0.2",
1891
+ "is-plain-object": "^2.0.3",
1892
+ "object.defaults": "^1.1.0",
1893
+ "object.pick": "^1.2.0",
1894
+ "parse-filepath": "^1.0.1"
1895
+ }
1896
+ },
1897
+ "flagged-respawn": {
1898
+ "version": "1.0.1",
1899
+ "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.1.tgz",
1900
+ "integrity": "sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==",
1901
+ "dev": true
1902
+ },
1903
+ "for-in": {
1904
+ "version": "1.0.2",
1905
+ "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
1906
+ "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=",
1907
+ "dev": true
1908
+ },
1909
+ "for-own": {
1910
+ "version": "1.0.0",
1911
+ "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz",
1912
+ "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=",
1913
+ "dev": true,
1914
+ "requires": {
1915
+ "for-in": "^1.0.1"
1916
+ }
1917
+ },
1918
+ "fragment-cache": {
1919
+ "version": "0.2.1",
1920
+ "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz",
1921
+ "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=",
1922
+ "dev": true,
1923
+ "requires": {
1924
+ "map-cache": "^0.2.2"
1925
+ }
1926
+ },
1927
+ "fs.realpath": {
1928
+ "version": "1.0.0",
1929
+ "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
1930
+ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
1931
+ "dev": true
1932
+ },
1933
+ "fsevents": {
1934
+ "version": "1.2.13",
1935
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz",
1936
+ "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==",
1937
+ "dev": true,
1938
+ "optional": true,
1939
+ "requires": {
1940
+ "bindings": "^1.5.0",
1941
+ "nan": "^2.12.1"
1942
+ }
1943
+ },
1944
+ "function-bind": {
1945
+ "version": "1.1.1",
1946
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
1947
+ "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
1948
+ "dev": true
1949
+ },
1950
+ "gauge": {
1951
+ "version": "1.2.7",
1952
+ "resolved": "https://registry.npmjs.org/gauge/-/gauge-1.2.7.tgz",
1953
+ "integrity": "sha1-6c7FSD09TuDvRLYKfZnkk14TbZM=",
1954
+ "dev": true,
1955
+ "requires": {
1956
+ "ansi": "^0.3.0",
1957
+ "has-unicode": "^2.0.0",
1958
+ "lodash.pad": "^4.1.0",
1959
+ "lodash.padend": "^4.1.0",
1960
+ "lodash.padstart": "^4.1.0"
1961
+ }
1962
+ },
1963
+ "gaze": {
1964
+ "version": "1.1.3",
1965
+ "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz",
1966
+ "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==",
1967
+ "dev": true,
1968
+ "requires": {
1969
+ "globule": "^1.0.0"
1970
+ }
1971
+ },
1972
+ "get-assigned-identifiers": {
1973
+ "version": "1.2.0",
1974
+ "resolved": "https://registry.npmjs.org/get-assigned-identifiers/-/get-assigned-identifiers-1.2.0.tgz",
1975
+ "integrity": "sha512-mBBwmeGTrxEMO4pMaaf/uUEFHnYtwr8FTe8Y/mer4rcV/bye0qGm6pw1bGZFGStxC5O76c5ZAVBGnqHmOaJpdQ==",
1976
+ "dev": true
1977
+ },
1978
+ "get-stdin": {
1979
+ "version": "4.0.1",
1980
+ "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
1981
+ "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=",
1982
+ "dev": true
1983
+ },
1984
+ "get-value": {
1985
+ "version": "2.0.6",
1986
+ "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz",
1987
+ "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=",
1988
+ "dev": true
1989
+ },
1990
+ "getobject": {
1991
+ "version": "0.1.0",
1992
+ "resolved": "https://registry.npmjs.org/getobject/-/getobject-0.1.0.tgz",
1993
+ "integrity": "sha1-BHpEl4n6Fg0Bj1SG7ZEyC27HiFw=",
1994
+ "dev": true
1995
+ },
1996
+ "gettext-parser": {
1997
+ "version": "3.1.1",
1998
+ "resolved": "https://registry.npmjs.org/gettext-parser/-/gettext-parser-3.1.1.tgz",
1999
+ "integrity": "sha512-vNhWcqXEtZPs5Ft1ReA34g7ByWotpcOIeJvXVy2jF3/G2U9v6W0wG4Z4hXzcU8R//jArqkgHcVCGgGqa4vxVlQ==",
2000
+ "dev": true,
2001
+ "requires": {
2002
+ "encoding": "^0.1.12",
2003
+ "readable-stream": "^3.2.0",
2004
+ "safe-buffer": "^5.1.2"
2005
+ },
2006
+ "dependencies": {
2007
+ "readable-stream": {
2008
+ "version": "3.6.0",
2009
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
2010
+ "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
2011
+ "dev": true,
2012
+ "requires": {
2013
+ "inherits": "^2.0.3",
2014
+ "string_decoder": "^1.1.1",
2015
+ "util-deprecate": "^1.0.1"
2016
+ }
2017
+ },
2018
+ "string_decoder": {
2019
+ "version": "1.3.0",
2020
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
2021
+ "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
2022
+ "dev": true,
2023
+ "requires": {
2024
+ "safe-buffer": "~5.2.0"
2025
+ },
2026
+ "dependencies": {
2027
+ "safe-buffer": {
2028
+ "version": "5.2.1",
2029
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
2030
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
2031
+ "dev": true
2032
+ }
2033
+ }
2034
+ }
2035
+ }
2036
+ },
2037
+ "glob": {
2038
+ "version": "7.1.6",
2039
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
2040
+ "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
2041
+ "dev": true,
2042
+ "requires": {
2043
+ "fs.realpath": "^1.0.0",
2044
+ "inflight": "^1.0.4",
2045
+ "inherits": "2",
2046
+ "minimatch": "^3.0.4",
2047
+ "once": "^1.3.0",
2048
+ "path-is-absolute": "^1.0.0"
2049
+ }
2050
+ },
2051
+ "glob-parent": {
2052
+ "version": "3.1.0",
2053
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
2054
+ "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=",
2055
+ "dev": true,
2056
+ "requires": {
2057
+ "is-glob": "^3.1.0",
2058
+ "path-dirname": "^1.0.0"
2059
+ }
2060
+ },
2061
+ "global-modules": {
2062
+ "version": "1.0.0",
2063
+ "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz",
2064
+ "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==",
2065
+ "dev": true,
2066
+ "requires": {
2067
+ "global-prefix": "^1.0.1",
2068
+ "is-windows": "^1.0.1",
2069
+ "resolve-dir": "^1.0.0"
2070
+ }
2071
+ },
2072
+ "global-prefix": {
2073
+ "version": "1.0.2",
2074
+ "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz",
2075
+ "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=",
2076
+ "dev": true,
2077
+ "requires": {
2078
+ "expand-tilde": "^2.0.2",
2079
+ "homedir-polyfill": "^1.0.1",
2080
+ "ini": "^1.3.4",
2081
+ "is-windows": "^1.0.1",
2082
+ "which": "^1.2.14"
2083
+ },
2084
+ "dependencies": {
2085
+ "which": {
2086
+ "version": "1.3.1",
2087
+ "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
2088
+ "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
2089
+ "dev": true,
2090
+ "requires": {
2091
+ "isexe": "^2.0.0"
2092
+ }
2093
+ }
2094
+ }
2095
+ },
2096
+ "globo": {
2097
+ "version": "1.1.0",
2098
+ "resolved": "https://registry.npmjs.org/globo/-/globo-1.1.0.tgz",
2099
+ "integrity": "sha1-DSYJiVXepCLrIAGxBImLChAcqvM=",
2100
+ "dev": true,
2101
+ "requires": {
2102
+ "accessory": "~1.1.0",
2103
+ "is-defined": "~1.0.0",
2104
+ "ternary": "~1.0.0"
2105
+ }
2106
+ },
2107
+ "globule": {
2108
+ "version": "1.3.2",
2109
+ "resolved": "https://registry.npmjs.org/globule/-/globule-1.3.2.tgz",
2110
+ "integrity": "sha512-7IDTQTIu2xzXkT+6mlluidnWo+BypnbSoEVVQCGfzqnl5Ik8d3e1d4wycb8Rj9tWW+Z39uPWsdlquqiqPCd/pA==",
2111
+ "dev": true,
2112
+ "requires": {
2113
+ "glob": "~7.1.1",
2114
+ "lodash": "~4.17.10",
2115
+ "minimatch": "~3.0.2"
2116
+ }
2117
+ },
2118
+ "graceful-fs": {
2119
+ "version": "4.2.4",
2120
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz",
2121
+ "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==",
2122
+ "dev": true
2123
+ },
2124
+ "grunt": {
2125
+ "version": "1.3.0",
2126
+ "resolved": "https://registry.npmjs.org/grunt/-/grunt-1.3.0.tgz",
2127
+ "integrity": "sha512-6ILlMXv11/4cxuhSMfSU+SfvbxrPuqZrAtLN64+tZpQ3DAKfSQPQHRbTjSbdtxfyQhGZPtN0bDZJ/LdCM5WXXA==",
2128
+ "dev": true,
2129
+ "requires": {
2130
+ "dateformat": "~3.0.3",
2131
+ "eventemitter2": "~0.4.13",
2132
+ "exit": "~0.1.2",
2133
+ "findup-sync": "~0.3.0",
2134
+ "glob": "~7.1.6",
2135
+ "grunt-cli": "~1.3.2",
2136
+ "grunt-known-options": "~1.1.0",
2137
+ "grunt-legacy-log": "~3.0.0",
2138
+ "grunt-legacy-util": "~2.0.0",
2139
+ "iconv-lite": "~0.4.13",
2140
+ "js-yaml": "~3.14.0",
2141
+ "minimatch": "~3.0.4",
2142
+ "mkdirp": "~1.0.4",
2143
+ "nopt": "~3.0.6",
2144
+ "rimraf": "~3.0.2"
2145
+ },
2146
+ "dependencies": {
2147
+ "grunt-cli": {
2148
+ "version": "1.3.2",
2149
+ "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.3.2.tgz",
2150
+ "integrity": "sha512-8OHDiZZkcptxVXtMfDxJvmN7MVJNE8L/yIcPb4HB7TlyFD1kDvjHrb62uhySsU14wJx9ORMnTuhRMQ40lH/orQ==",
2151
+ "dev": true,
2152
+ "requires": {
2153
+ "grunt-known-options": "~1.1.0",
2154
+ "interpret": "~1.1.0",
2155
+ "liftoff": "~2.5.0",
2156
+ "nopt": "~4.0.1",
2157
+ "v8flags": "~3.1.1"
2158
+ },
2159
+ "dependencies": {
2160
+ "nopt": {
2161
+ "version": "4.0.3",
2162
+ "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz",
2163
+ "integrity": "sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==",
2164
+ "dev": true,
2165
+ "requires": {
2166
+ "abbrev": "1",
2167
+ "osenv": "^0.1.4"
2168
+ }
2169
+ }
2170
+ }
2171
+ }
2172
+ }
2173
+ },
2174
+ "grunt-asciify": {
2175
+ "version": "0.2.2",
2176
+ "resolved": "https://registry.npmjs.org/grunt-asciify/-/grunt-asciify-0.2.2.tgz",
2177
+ "integrity": "sha1-TYiEnkVAVCecEeNEaZc0TwdNzDs=",
2178
+ "dev": true,
2179
+ "requires": {
2180
+ "asciify": "~1.3.0"
2181
+ }
2182
+ },
2183
+ "grunt-browserify": {
2184
+ "version": "5.3.0",
2185
+ "resolved": "https://registry.npmjs.org/grunt-browserify/-/grunt-browserify-5.3.0.tgz",
2186
+ "integrity": "sha1-R/2M+LrFj+LeaDr9xX9/OoDKeS0=",
2187
+ "dev": true,
2188
+ "requires": {
2189
+ "async": "^2.5.0",
2190
+ "browserify": "^16.0.0",
2191
+ "browserify-incremental": "^3.1.1",
2192
+ "glob": "^7.1.2",
2193
+ "lodash": "^4.17.4",
2194
+ "resolve": "^1.1.6",
2195
+ "watchify": "^3.6.1"
2196
+ },
2197
+ "dependencies": {
2198
+ "async": {
2199
+ "version": "2.6.3",
2200
+ "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz",
2201
+ "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==",
2202
+ "dev": true,
2203
+ "requires": {
2204
+ "lodash": "^4.17.14"
2205
+ }
2206
+ }
2207
+ }
2208
+ },
2209
+ "grunt-checktextdomain": {
2210
+ "version": "1.0.1",
2211
+ "resolved": "https://registry.npmjs.org/grunt-checktextdomain/-/grunt-checktextdomain-1.0.1.tgz",
2212
+ "integrity": "sha1-slTQHh3pEwBdTbHFMD2QI7mD4Zs=",
2213
+ "dev": true,
2214
+ "requires": {
2215
+ "chalk": "~0.2.1",
2216
+ "text-table": "~0.2.0"
2217
+ },
2218
+ "dependencies": {
2219
+ "ansi-styles": {
2220
+ "version": "0.2.0",
2221
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-0.2.0.tgz",
2222
+ "integrity": "sha1-NZq0sV3NZLptdHNLcsNjYKmvLBk=",
2223
+ "dev": true
2224
+ },
2225
+ "chalk": {
2226
+ "version": "0.2.1",
2227
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.2.1.tgz",
2228
+ "integrity": "sha1-dhPhV1FFshOGSD9/SFql/6jL0Qw=",
2229
+ "dev": true,
2230
+ "requires": {
2231
+ "ansi-styles": "~0.2.0",
2232
+ "has-color": "~0.1.0"
2233
+ }
2234
+ }
2235
+ }
2236
+ },
2237
+ "grunt-combine-media-queries": {
2238
+ "version": "1.0.20",
2239
+ "resolved": "https://registry.npmjs.org/grunt-combine-media-queries/-/grunt-combine-media-queries-1.0.20.tgz",
2240
+ "integrity": "sha1-6XS3xg9CkmIljN5OD7NZAFXFqtM=",
2241
+ "dev": true,
2242
+ "requires": {
2243
+ "css-parse": "^1.5.0",
2244
+ "publish": "0.5.0"
2245
+ }
2246
+ },
2247
+ "grunt-contrib-cssmin": {
2248
+ "version": "3.0.0",
2249
+ "resolved": "https://registry.npmjs.org/grunt-contrib-cssmin/-/grunt-contrib-cssmin-3.0.0.tgz",
2250
+ "integrity": "sha512-eXpooYmVGKMs/xV7DzTLgJFPVOfMuawPD3x0JwhlH0mumq2NtH3xsxaHxp1Y3NKxp0j0tRhFS6kSBRsz6TuTGg==",
2251
+ "dev": true,
2252
+ "requires": {
2253
+ "chalk": "^2.4.1",
2254
+ "clean-css": "~4.2.1",
2255
+ "maxmin": "^2.1.0"
2256
+ },
2257
+ "dependencies": {
2258
+ "ansi-styles": {
2259
+ "version": "3.2.1",
2260
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
2261
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
2262
+ "dev": true,
2263
+ "requires": {
2264
+ "color-convert": "^1.9.0"
2265
+ }
2266
+ },
2267
+ "chalk": {
2268
+ "version": "2.4.2",
2269
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
2270
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
2271
+ "dev": true,
2272
+ "requires": {
2273
+ "ansi-styles": "^3.2.1",
2274
+ "escape-string-regexp": "^1.0.5",
2275
+ "supports-color": "^5.3.0"
2276
+ }
2277
+ },
2278
+ "color-convert": {
2279
+ "version": "1.9.3",
2280
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
2281
+ "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
2282
+ "dev": true,
2283
+ "requires": {
2284
+ "color-name": "1.1.3"
2285
+ }
2286
+ },
2287
+ "color-name": {
2288
+ "version": "1.1.3",
2289
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
2290
+ "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
2291
+ "dev": true
2292
+ },
2293
+ "has-flag": {
2294
+ "version": "3.0.0",
2295
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
2296
+ "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
2297
+ "dev": true
2298
+ },
2299
+ "supports-color": {
2300
+ "version": "5.5.0",
2301
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
2302
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
2303
+ "dev": true,
2304
+ "requires": {
2305
+ "has-flag": "^3.0.0"
2306
+ }
2307
+ }
2308
+ }
2309
+ },
2310
+ "grunt-contrib-jshint": {
2311
+ "version": "2.1.0",
2312
+ "resolved": "https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-2.1.0.tgz",
2313
+ "integrity": "sha512-65S2/C/6RfjY/umTxfwXXn+wVvaYmykHkHSsW6Q6rhkbv3oudTEgqnFFZvWzWCoHUb+3GMZLbP3oSrNyvshmIQ==",
2314
+ "dev": true,
2315
+ "requires": {
2316
+ "chalk": "^2.4.2",
2317
+ "hooker": "^0.2.3",
2318
+ "jshint": "~2.10.2"
2319
+ },
2320
+ "dependencies": {
2321
+ "ansi-styles": {
2322
+ "version": "3.2.1",
2323
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
2324
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
2325
+ "dev": true,
2326
+ "requires": {
2327
+ "color-convert": "^1.9.0"
2328
+ }
2329
+ },
2330
+ "chalk": {
2331
+ "version": "2.4.2",
2332
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
2333
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
2334
+ "dev": true,
2335
+ "requires": {
2336
+ "ansi-styles": "^3.2.1",
2337
+ "escape-string-regexp": "^1.0.5",
2338
+ "supports-color": "^5.3.0"
2339
+ }
2340
+ },
2341
+ "color-convert": {
2342
+ "version": "1.9.3",
2343
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
2344
+ "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
2345
+ "dev": true,
2346
+ "requires": {
2347
+ "color-name": "1.1.3"
2348
+ }
2349
+ },
2350
+ "color-name": {
2351
+ "version": "1.1.3",
2352
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
2353
+ "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
2354
+ "dev": true
2355
+ },
2356
+ "has-flag": {
2357
+ "version": "3.0.0",
2358
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
2359
+ "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
2360
+ "dev": true
2361
+ },
2362
+ "supports-color": {
2363
+ "version": "5.5.0",
2364
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
2365
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
2366
+ "dev": true,
2367
+ "requires": {
2368
+ "has-flag": "^3.0.0"
2369
+ }
2370
+ }
2371
+ }
2372
+ },
2373
+ "grunt-contrib-sass": {
2374
+ "version": "0.7.4",
2375
+ "resolved": "https://registry.npmjs.org/grunt-contrib-sass/-/grunt-contrib-sass-0.7.4.tgz",
2376
+ "integrity": "sha1-HeD3w7xA8VJU4TV3e18JTJIelWQ=",
2377
+ "dev": true,
2378
+ "requires": {
2379
+ "async": "^0.9.0",
2380
+ "chalk": "^0.5.1",
2381
+ "dargs": "^0.1.0",
2382
+ "which": "^1.0.5",
2383
+ "win-spawn": "^2.0.0"
2384
+ },
2385
+ "dependencies": {
2386
+ "ansi-regex": {
2387
+ "version": "0.2.1",
2388
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-0.2.1.tgz",
2389
+ "integrity": "sha1-DY6UaWej2BQ/k+JOKYUl/BsiNfk=",
2390
+ "dev": true
2391
+ },
2392
+ "ansi-styles": {
2393
+ "version": "1.1.0",
2394
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.1.0.tgz",
2395
+ "integrity": "sha1-6uy/Zs1waIJ2Cy9GkVgrj1XXp94=",
2396
+ "dev": true
2397
+ },
2398
+ "async": {
2399
+ "version": "0.9.2",
2400
+ "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz",
2401
+ "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=",
2402
+ "dev": true
2403
+ },
2404
+ "chalk": {
2405
+ "version": "0.5.1",
2406
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.5.1.tgz",
2407
+ "integrity": "sha1-Zjs6ZItotV0EaQ1JFnqoN4WPIXQ=",
2408
+ "dev": true,
2409
+ "requires": {
2410
+ "ansi-styles": "^1.1.0",
2411
+ "escape-string-regexp": "^1.0.0",
2412
+ "has-ansi": "^0.1.0",
2413
+ "strip-ansi": "^0.3.0",
2414
+ "supports-color": "^0.2.0"
2415
+ }
2416
+ },
2417
+ "has-ansi": {
2418
+ "version": "0.1.0",
2419
+ "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-0.1.0.tgz",
2420
+ "integrity": "sha1-hPJlqujA5qiKEtcCKJS3VoiUxi4=",
2421
+ "dev": true,
2422
+ "requires": {
2423
+ "ansi-regex": "^0.2.0"
2424
+ }
2425
+ },
2426
+ "strip-ansi": {
2427
+ "version": "0.3.0",
2428
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.3.0.tgz",
2429
+ "integrity": "sha1-JfSOoiynkYfzF0pNuHWTR7sSYiA=",
2430
+ "dev": true,
2431
+ "requires": {
2432
+ "ansi-regex": "^0.2.1"
2433
+ }
2434
+ },
2435
+ "supports-color": {
2436
+ "version": "0.2.0",
2437
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-0.2.0.tgz",
2438
+ "integrity": "sha1-2S3iaU6z9nMjlz1649i1W0wiGQo=",
2439
+ "dev": true
2440
+ }
2441
+ }
2442
+ },
2443
+ "grunt-contrib-uglify": {
2444
+ "version": "2.3.0",
2445
+ "resolved": "https://registry.npmjs.org/grunt-contrib-uglify/-/grunt-contrib-uglify-2.3.0.tgz",
2446
+ "integrity": "sha1-s9AmDr3WzvoS/y+Onh4ln33kIW8=",
2447
+ "dev": true,
2448
+ "requires": {
2449
+ "chalk": "^1.0.0",
2450
+ "maxmin": "^1.1.0",
2451
+ "object.assign": "^4.0.4",
2452
+ "uglify-js": "~2.8.21",
2453
+ "uri-path": "^1.0.0"
2454
+ },
2455
+ "dependencies": {
2456
+ "gzip-size": {
2457
+ "version": "1.0.0",
2458
+ "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-1.0.0.tgz",
2459
+ "integrity": "sha1-Zs+LEBBHInuVus5uodoMF37Vwi8=",
2460
+ "dev": true,
2461
+ "requires": {
2462
+ "browserify-zlib": "^0.1.4",
2463
+ "concat-stream": "^1.4.1"
2464
+ }
2465
+ },
2466
+ "maxmin": {
2467
+ "version": "1.1.0",
2468
+ "resolved": "https://registry.npmjs.org/maxmin/-/maxmin-1.1.0.tgz",
2469
+ "integrity": "sha1-cTZehKmd2Piz99X94vANHn9zvmE=",
2470
+ "dev": true,
2471
+ "requires": {
2472
+ "chalk": "^1.0.0",
2473
+ "figures": "^1.0.1",
2474
+ "gzip-size": "^1.0.0",
2475
+ "pretty-bytes": "^1.0.0"
2476
+ }
2477
+ },
2478
+ "pretty-bytes": {
2479
+ "version": "1.0.4",
2480
+ "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-1.0.4.tgz",
2481
+ "integrity": "sha1-CiLoIQYJrTVUL4yNXSFZr/B1HIQ=",
2482
+ "dev": true,
2483
+ "requires": {
2484
+ "get-stdin": "^4.0.1",
2485
+ "meow": "^3.1.0"
2486
+ }
2487
+ }
2488
+ }
2489
+ },
2490
+ "grunt-contrib-watch": {
2491
+ "version": "1.1.0",
2492
+ "resolved": "https://registry.npmjs.org/grunt-contrib-watch/-/grunt-contrib-watch-1.1.0.tgz",
2493
+ "integrity": "sha512-yGweN+0DW5yM+oo58fRu/XIRrPcn3r4tQx+nL7eMRwjpvk+rQY6R8o94BPK0i2UhTg9FN21hS+m8vR8v9vXfeg==",
2494
+ "dev": true,
2495
+ "requires": {
2496
+ "async": "^2.6.0",
2497
+ "gaze": "^1.1.0",
2498
+ "lodash": "^4.17.10",
2499
+ "tiny-lr": "^1.1.1"
2500
+ },
2501
+ "dependencies": {
2502
+ "async": {
2503
+ "version": "2.6.3",
2504
+ "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz",
2505
+ "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==",
2506
+ "dev": true,
2507
+ "requires": {
2508
+ "lodash": "^4.17.14"
2509
+ }
2510
+ }
2511
+ }
2512
+ },
2513
+ "grunt-exec": {
2514
+ "version": "0.4.7",
2515
+ "resolved": "https://registry.npmjs.org/grunt-exec/-/grunt-exec-0.4.7.tgz",
2516
+ "integrity": "sha1-QAUf+k6wyWV+BTuV6I1ENSocLCU=",
2517
+ "dev": true
2518
+ },
2519
+ "grunt-known-options": {
2520
+ "version": "1.1.1",
2521
+ "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-1.1.1.tgz",
2522
+ "integrity": "sha512-cHwsLqoighpu7TuYj5RonnEuxGVFnztcUqTqp5rXFGYL4OuPFofwC4Ycg7n9fYwvK6F5WbYgeVOwph9Crs2fsQ==",
2523
+ "dev": true
2524
+ },
2525
+ "grunt-legacy-log": {
2526
+ "version": "3.0.0",
2527
+ "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-3.0.0.tgz",
2528
+ "integrity": "sha512-GHZQzZmhyq0u3hr7aHW4qUH0xDzwp2YXldLPZTCjlOeGscAOWWPftZG3XioW8MasGp+OBRIu39LFx14SLjXRcA==",
2529
+ "dev": true,
2530
+ "requires": {
2531
+ "colors": "~1.1.2",
2532
+ "grunt-legacy-log-utils": "~2.1.0",
2533
+ "hooker": "~0.2.3",
2534
+ "lodash": "~4.17.19"
2535
+ }
2536
+ },
2537
+ "grunt-legacy-log-utils": {
2538
+ "version": "2.1.0",
2539
+ "resolved": "https://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-2.1.0.tgz",
2540
+ "integrity": "sha512-lwquaPXJtKQk0rUM1IQAop5noEpwFqOXasVoedLeNzaibf/OPWjKYvvdqnEHNmU+0T0CaReAXIbGo747ZD+Aaw==",
2541
+ "dev": true,
2542
+ "requires": {
2543
+ "chalk": "~4.1.0",
2544
+ "lodash": "~4.17.19"
2545
+ },
2546
+ "dependencies": {
2547
+ "ansi-styles": {
2548
+ "version": "4.2.1",
2549
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz",
2550
+ "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==",
2551
+ "dev": true,
2552
+ "requires": {
2553
+ "@types/color-name": "^1.1.1",
2554
+ "color-convert": "^2.0.1"
2555
+ }
2556
+ },
2557
+ "chalk": {
2558
+ "version": "4.1.0",
2559
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
2560
+ "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
2561
+ "dev": true,
2562
+ "requires": {
2563
+ "ansi-styles": "^4.1.0",
2564
+ "supports-color": "^7.1.0"
2565
+ }
2566
+ },
2567
+ "supports-color": {
2568
+ "version": "7.1.0",
2569
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz",
2570
+ "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==",
2571
+ "dev": true,
2572
+ "requires": {
2573
+ "has-flag": "^4.0.0"
2574
+ }
2575
+ }
2576
+ }
2577
+ },
2578
+ "grunt-legacy-util": {
2579
+ "version": "2.0.0",
2580
+ "resolved": "https://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-2.0.0.tgz",
2581
+ "integrity": "sha512-ZEmYFB44bblwPE2oz3q3ygfF6hseQja9tx8I3UZIwbUik32FMWewA+d1qSFicMFB+8dNXDkh35HcDCWlpRsGlA==",
2582
+ "dev": true,
2583
+ "requires": {
2584
+ "async": "~1.5.2",
2585
+ "exit": "~0.1.1",
2586
+ "getobject": "~0.1.0",
2587
+ "hooker": "~0.2.3",
2588
+ "lodash": "~4.17.20",
2589
+ "underscore.string": "~3.3.5",
2590
+ "which": "~1.3.0"
2591
+ },
2592
+ "dependencies": {
2593
+ "which": {
2594
+ "version": "1.3.1",
2595
+ "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
2596
+ "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
2597
+ "dev": true,
2598
+ "requires": {
2599
+ "isexe": "^2.0.0"
2600
+ }
2601
+ }
2602
+ }
2603
+ },
2604
+ "grunt-potomo": {
2605
+ "version": "2.1.0",
2606
+ "resolved": "https://registry.npmjs.org/grunt-potomo/-/grunt-potomo-2.1.0.tgz",
2607
+ "integrity": "sha1-s50uWM/MeX9GfmlnkN4+n8GptlE=",
2608
+ "dev": true,
2609
+ "requires": {
2610
+ "shelljs": "^0.3.0"
2611
+ }
2612
+ },
2613
+ "grunt-wp-i18n": {
2614
+ "version": "1.0.3",
2615
+ "resolved": "https://registry.npmjs.org/grunt-wp-i18n/-/grunt-wp-i18n-1.0.3.tgz",
2616
+ "integrity": "sha512-CJNbEKeBeOSAPeaJ9B8iCgSwtaG63UR9/uT46a4OsIqnFhOJpeAi138JTlvjfIbnDVoBrzvdrKJe1svveLjUtA==",
2617
+ "dev": true,
2618
+ "requires": {
2619
+ "grunt": "^1.0.3",
2620
+ "node-wp-i18n": "^1.2.2"
2621
+ }
2622
+ },
2623
+ "gzip-size": {
2624
+ "version": "3.0.0",
2625
+ "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-3.0.0.tgz",
2626
+ "integrity": "sha1-VGGI6b3DN/Zzdy+BZgRks4nc5SA=",
2627
+ "dev": true,
2628
+ "requires": {
2629
+ "duplexer": "^0.1.1"
2630
+ }
2631
+ },
2632
+ "has": {
2633
+ "version": "1.0.3",
2634
+ "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
2635
+ "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
2636
+ "dev": true,
2637
+ "requires": {
2638
+ "function-bind": "^1.1.1"
2639
+ }
2640
+ },
2641
+ "has-ansi": {
2642
+ "version": "2.0.0",
2643
+ "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
2644
+ "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=",
2645
+ "dev": true,
2646
+ "requires": {
2647
+ "ansi-regex": "^2.0.0"
2648
+ }
2649
+ },
2650
+ "has-color": {
2651
+ "version": "0.1.7",
2652
+ "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz",
2653
+ "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=",
2654
+ "dev": true
2655
+ },
2656
+ "has-flag": {
2657
+ "version": "4.0.0",
2658
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
2659
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
2660
+ "dev": true
2661
+ },
2662
+ "has-require": {
2663
+ "version": "1.2.2",
2664
+ "resolved": "https://registry.npmjs.org/has-require/-/has-require-1.2.2.tgz",
2665
+ "integrity": "sha1-khZ1qxMNvZdo/I2o8ajiQt+kF3Q=",
2666
+ "dev": true,
2667
+ "requires": {
2668
+ "escape-string-regexp": "^1.0.3"
2669
+ }
2670
+ },
2671
+ "has-symbols": {
2672
+ "version": "1.0.1",
2673
+ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz",
2674
+ "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==",
2675
+ "dev": true
2676
+ },
2677
+ "has-unicode": {
2678
+ "version": "2.0.1",
2679
+ "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
2680
+ "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=",
2681
+ "dev": true
2682
+ },
2683
+ "has-value": {
2684
+ "version": "1.0.0",
2685
+ "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz",
2686
+ "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=",
2687
+ "dev": true,
2688
+ "requires": {
2689
+ "get-value": "^2.0.6",
2690
+ "has-values": "^1.0.0",
2691
+ "isobject": "^3.0.0"
2692
+ }
2693
+ },
2694
+ "has-values": {
2695
+ "version": "1.0.0",
2696
+ "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz",
2697
+ "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=",
2698
+ "dev": true,
2699
+ "requires": {
2700
+ "is-number": "^3.0.0",
2701
+ "kind-of": "^4.0.0"
2702
+ },
2703
+ "dependencies": {
2704
+ "kind-of": {
2705
+ "version": "4.0.0",
2706
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz",
2707
+ "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=",
2708
+ "dev": true,
2709
+ "requires": {
2710
+ "is-buffer": "^1.1.5"
2711
+ }
2712
+ }
2713
+ }
2714
+ },
2715
+ "hash-base": {
2716
+ "version": "3.1.0",
2717
+ "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz",
2718
+ "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==",
2719
+ "dev": true,
2720
+ "requires": {
2721
+ "inherits": "^2.0.4",
2722
+ "readable-stream": "^3.6.0",
2723
+ "safe-buffer": "^5.2.0"
2724
+ },
2725
+ "dependencies": {
2726
+ "readable-stream": {
2727
+ "version": "3.6.0",
2728
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
2729
+ "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
2730
+ "dev": true,
2731
+ "requires": {
2732
+ "inherits": "^2.0.3",
2733
+ "string_decoder": "^1.1.1",
2734
+ "util-deprecate": "^1.0.1"
2735
+ }
2736
+ },
2737
+ "safe-buffer": {
2738
+ "version": "5.2.1",
2739
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
2740
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
2741
+ "dev": true
2742
+ },
2743
+ "string_decoder": {
2744
+ "version": "1.3.0",
2745
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
2746
+ "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
2747
+ "dev": true,
2748
+ "requires": {
2749
+ "safe-buffer": "~5.2.0"
2750
+ }
2751
+ }
2752
+ }
2753
+ },
2754
+ "hash.js": {
2755
+ "version": "1.1.7",
2756
+ "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz",
2757
+ "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==",
2758
+ "dev": true,
2759
+ "requires": {
2760
+ "inherits": "^2.0.3",
2761
+ "minimalistic-assert": "^1.0.1"
2762
+ }
2763
+ },
2764
+ "hmac-drbg": {
2765
+ "version": "1.0.1",
2766
+ "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
2767
+ "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=",
2768
+ "dev": true,
2769
+ "requires": {
2770
+ "hash.js": "^1.0.3",
2771
+ "minimalistic-assert": "^1.0.0",
2772
+ "minimalistic-crypto-utils": "^1.0.1"
2773
+ }
2774
+ },
2775
+ "homedir-polyfill": {
2776
+ "version": "1.0.3",
2777
+ "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz",
2778
+ "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==",
2779
+ "dev": true,
2780
+ "requires": {
2781
+ "parse-passwd": "^1.0.0"
2782
+ }
2783
+ },
2784
+ "hooker": {
2785
+ "version": "0.2.3",
2786
+ "resolved": "https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz",
2787
+ "integrity": "sha1-uDT3I8xKJCqmWWNFnfbZhMXT2Vk=",
2788
+ "dev": true
2789
+ },
2790
+ "hosted-git-info": {
2791
+ "version": "2.8.8",
2792
+ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz",
2793
+ "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==",
2794
+ "dev": true
2795
+ },
2796
+ "htmlescape": {
2797
+ "version": "1.1.1",
2798
+ "resolved": "https://registry.npmjs.org/htmlescape/-/htmlescape-1.1.1.tgz",
2799
+ "integrity": "sha1-OgPtwiFLyjtmQko+eVk0lQnLA1E=",
2800
+ "dev": true
2801
+ },
2802
+ "htmlparser2": {
2803
+ "version": "3.8.3",
2804
+ "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.8.3.tgz",
2805
+ "integrity": "sha1-mWwosZFRaovoZQGn15dX5ccMEGg=",
2806
+ "dev": true,
2807
+ "requires": {
2808
+ "domelementtype": "1",
2809
+ "domhandler": "2.3",
2810
+ "domutils": "1.5",
2811
+ "entities": "1.0",
2812
+ "readable-stream": "1.1"
2813
+ },
2814
+ "dependencies": {
2815
+ "readable-stream": {
2816
+ "version": "1.1.14",
2817
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
2818
+ "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
2819
+ "dev": true,
2820
+ "requires": {
2821
+ "core-util-is": "~1.0.0",
2822
+ "inherits": "~2.0.1",
2823
+ "isarray": "0.0.1",
2824
+ "string_decoder": "~0.10.x"
2825
+ }
2826
+ }
2827
+ }
2828
+ },
2829
+ "http-parser-js": {
2830
+ "version": "0.5.2",
2831
+ "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.2.tgz",
2832
+ "integrity": "sha512-opCO9ASqg5Wy2FNo7A0sxy71yGbbkJJXLdgMK04Tcypw9jr2MgWbyubb0+WdmDmGnFflO7fRbqbaihh/ENDlRQ==",
2833
+ "dev": true
2834
+ },
2835
+ "https-browserify": {
2836
+ "version": "1.0.0",
2837
+ "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz",
2838
+ "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=",
2839
+ "dev": true
2840
+ },
2841
+ "iconv-lite": {
2842
+ "version": "0.4.24",
2843
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
2844
+ "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
2845
+ "dev": true,
2846
+ "requires": {
2847
+ "safer-buffer": ">= 2.1.2 < 3"
2848
+ }
2849
+ },
2850
+ "ieee754": {
2851
+ "version": "1.1.13",
2852
+ "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz",
2853
+ "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==",
2854
+ "dev": true
2855
+ },
2856
+ "indent-string": {
2857
+ "version": "2.1.0",
2858
+ "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz",
2859
+ "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=",
2860
+ "dev": true,
2861
+ "requires": {
2862
+ "repeating": "^2.0.0"
2863
+ },
2864
+ "dependencies": {
2865
+ "repeating": {
2866
+ "version": "2.0.1",
2867
+ "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz",
2868
+ "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=",
2869
+ "dev": true,
2870
+ "requires": {
2871
+ "is-finite": "^1.0.0"
2872
+ }
2873
+ }
2874
+ }
2875
+ },
2876
+ "inflight": {
2877
+ "version": "1.0.6",
2878
+ "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
2879
+ "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
2880
+ "dev": true,
2881
+ "requires": {
2882
+ "once": "^1.3.0",
2883
+ "wrappy": "1"
2884
+ }
2885
+ },
2886
+ "inherits": {
2887
+ "version": "2.0.4",
2888
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
2889
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
2890
+ "dev": true
2891
+ },
2892
+ "ini": {
2893
+ "version": "1.3.5",
2894
+ "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz",
2895
+ "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==",
2896
+ "dev": true
2897
+ },
2898
+ "inline-source-map": {
2899
+ "version": "0.6.2",
2900
+ "resolved": "https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.6.2.tgz",
2901
+ "integrity": "sha1-+Tk0ccGKedFyT4Y/o4tYY3Ct4qU=",
2902
+ "dev": true,
2903
+ "requires": {
2904
+ "source-map": "~0.5.3"
2905
+ }
2906
+ },
2907
+ "insert-module-globals": {
2908
+ "version": "7.2.0",
2909
+ "resolved": "https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-7.2.0.tgz",
2910
+ "integrity": "sha512-VE6NlW+WGn2/AeOMd496AHFYmE7eLKkUY6Ty31k4og5vmA3Fjuwe9v6ifH6Xx/Hz27QvdoMoviw1/pqWRB09Sw==",
2911
+ "dev": true,
2912
+ "requires": {
2913
+ "JSONStream": "^1.0.3",
2914
+ "acorn-node": "^1.5.2",
2915
+ "combine-source-map": "^0.8.0",
2916
+ "concat-stream": "^1.6.1",
2917
+ "is-buffer": "^1.1.0",
2918
+ "path-is-absolute": "^1.0.1",
2919
+ "process": "~0.11.0",
2920
+ "through2": "^2.0.0",
2921
+ "undeclared-identifiers": "^1.1.2",
2922
+ "xtend": "^4.0.0"
2923
+ },
2924
+ "dependencies": {
2925
+ "concat-stream": {
2926
+ "version": "1.6.2",
2927
+ "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
2928
+ "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
2929
+ "dev": true,
2930
+ "requires": {
2931
+ "buffer-from": "^1.0.0",
2932
+ "inherits": "^2.0.3",
2933
+ "readable-stream": "^2.2.2",
2934
+ "typedarray": "^0.0.6"
2935
+ }
2936
+ }
2937
+ }
2938
+ },
2939
+ "interpret": {
2940
+ "version": "1.1.0",
2941
+ "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz",
2942
+ "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ=",
2943
+ "dev": true
2944
+ },
2945
+ "is-absolute": {
2946
+ "version": "1.0.0",
2947
+ "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz",
2948
+ "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==",
2949
+ "dev": true,
2950
+ "requires": {
2951
+ "is-relative": "^1.0.0",
2952
+ "is-windows": "^1.0.1"
2953
+ }
2954
+ },
2955
+ "is-accessor-descriptor": {
2956
+ "version": "0.1.6",
2957
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
2958
+ "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
2959
+ "dev": true,
2960
+ "requires": {
2961
+ "kind-of": "^3.0.2"
2962
+ }
2963
+ },
2964
+ "is-arrayish": {
2965
+ "version": "0.2.1",
2966
+ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
2967
+ "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=",
2968
+ "dev": true
2969
+ },
2970
+ "is-binary-path": {
2971
+ "version": "1.0.1",
2972
+ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz",
2973
+ "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=",
2974
+ "dev": true,
2975
+ "requires": {
2976
+ "binary-extensions": "^1.0.0"
2977
+ }
2978
+ },
2979
+ "is-buffer": {
2980
+ "version": "1.1.6",
2981
+ "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
2982
+ "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
2983
+ "dev": true
2984
+ },
2985
+ "is-data-descriptor": {
2986
+ "version": "0.1.4",
2987
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
2988
+ "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
2989
+ "dev": true,
2990
+ "requires": {
2991
+ "kind-of": "^3.0.2"
2992
+ }
2993
+ },
2994
+ "is-defined": {
2995
+ "version": "1.0.0",
2996
+ "resolved": "https://registry.npmjs.org/is-defined/-/is-defined-1.0.0.tgz",
2997
+ "integrity": "sha1-HwfKZ9Vx9ZTEsUQVpF9774j5K/U=",
2998
+ "dev": true
2999
+ },
3000
+ "is-descriptor": {
3001
+ "version": "0.1.6",
3002
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
3003
+ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
3004
+ "dev": true,
3005
+ "requires": {
3006
+ "is-accessor-descriptor": "^0.1.6",
3007
+ "is-data-descriptor": "^0.1.4",
3008
+ "kind-of": "^5.0.0"
3009
+ },
3010
+ "dependencies": {
3011
+ "kind-of": {
3012
+ "version": "5.1.0",
3013
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
3014
+ "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==",
3015
+ "dev": true
3016
+ }
3017
+ }
3018
+ },
3019
+ "is-extendable": {
3020
+ "version": "0.1.1",
3021
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
3022
+ "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=",
3023
+ "dev": true
3024
+ },
3025
+ "is-extglob": {
3026
+ "version": "2.1.1",
3027
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
3028
+ "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
3029
+ "dev": true
3030
+ },
3031
+ "is-finite": {
3032
+ "version": "1.1.0",
3033
+ "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz",
3034
+ "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==",
3035
+ "dev": true
3036
+ },
3037
+ "is-glob": {
3038
+ "version": "3.1.0",
3039
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
3040
+ "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=",
3041
+ "dev": true,
3042
+ "requires": {
3043
+ "is-extglob": "^2.1.0"
3044
+ }
3045
+ },
3046
+ "is-number": {
3047
+ "version": "3.0.0",
3048
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
3049
+ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
3050
+ "dev": true,
3051
+ "requires": {
3052
+ "kind-of": "^3.0.2"
3053
+ }
3054
+ },
3055
+ "is-plain-object": {
3056
+ "version": "2.0.4",
3057
+ "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
3058
+ "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
3059
+ "dev": true,
3060
+ "requires": {
3061
+ "isobject": "^3.0.1"
3062
+ }
3063
+ },
3064
+ "is-relative": {
3065
+ "version": "1.0.0",
3066
+ "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz",
3067
+ "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==",
3068
+ "dev": true,
3069
+ "requires": {
3070
+ "is-unc-path": "^1.0.0"
3071
+ }
3072
+ },
3073
+ "is-unc-path": {
3074
+ "version": "1.0.0",
3075
+ "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz",
3076
+ "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==",
3077
+ "dev": true,
3078
+ "requires": {
3079
+ "unc-path-regex": "^0.1.2"
3080
+ }
3081
+ },
3082
+ "is-utf8": {
3083
+ "version": "0.2.1",
3084
+ "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz",
3085
+ "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=",
3086
+ "dev": true
3087
+ },
3088
+ "is-windows": {
3089
+ "version": "1.0.2",
3090
+ "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz",
3091
+ "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==",
3092
+ "dev": true
3093
+ },
3094
+ "isarray": {
3095
+ "version": "0.0.1",
3096
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
3097
+ "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",
3098
+ "dev": true
3099
+ },
3100
+ "isexe": {
3101
+ "version": "2.0.0",
3102
+ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
3103
+ "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
3104
+ "dev": true
3105
+ },
3106
+ "isobject": {
3107
+ "version": "3.0.1",
3108
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
3109
+ "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=",
3110
+ "dev": true
3111
+ },
3112
+ "js-yaml": {
3113
+ "version": "3.14.0",
3114
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz",
3115
+ "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==",
3116
+ "dev": true,
3117
+ "requires": {
3118
+ "argparse": "^1.0.7",
3119
+ "esprima": "^4.0.0"
3120
+ }
3121
+ },
3122
+ "jshint": {
3123
+ "version": "2.10.3",
3124
+ "resolved": "https://registry.npmjs.org/jshint/-/jshint-2.10.3.tgz",
3125
+ "integrity": "sha512-d8AoXcNNYzmm7cdmulQ3dQApbrPYArtVBO6n4xOICe4QsXGNHCAKDcFORzqP52LhK61KX0VhY39yYzCsNq+bxQ==",
3126
+ "dev": true,
3127
+ "requires": {
3128
+ "cli": "~1.0.0",
3129
+ "console-browserify": "1.1.x",
3130
+ "exit": "0.1.x",
3131
+ "htmlparser2": "3.8.x",
3132
+ "lodash": "~4.17.11",
3133
+ "minimatch": "~3.0.2",
3134
+ "shelljs": "0.3.x",
3135
+ "strip-json-comments": "1.0.x"
3136
+ },
3137
+ "dependencies": {
3138
+ "console-browserify": {
3139
+ "version": "1.1.0",
3140
+ "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz",
3141
+ "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=",
3142
+ "dev": true,
3143
+ "requires": {
3144
+ "date-now": "^0.1.4"
3145
+ }
3146
+ }
3147
+ }
3148
+ },
3149
+ "json-stable-stringify": {
3150
+ "version": "0.0.1",
3151
+ "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-0.0.1.tgz",
3152
+ "integrity": "sha1-YRwj6BTbN1Un34URk9tZ3Sryf0U=",
3153
+ "dev": true,
3154
+ "requires": {
3155
+ "jsonify": "~0.0.0"
3156
+ }
3157
+ },
3158
+ "jsonify": {
3159
+ "version": "0.0.0",
3160
+ "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz",
3161
+ "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=",
3162
+ "dev": true
3163
+ },
3164
+ "jsonparse": {
3165
+ "version": "1.3.1",
3166
+ "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz",
3167
+ "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=",
3168
+ "dev": true
3169
+ },
3170
+ "kind-of": {
3171
+ "version": "3.2.2",
3172
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
3173
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
3174
+ "dev": true,
3175
+ "requires": {
3176
+ "is-buffer": "^1.1.5"
3177
+ }
3178
+ },
3179
+ "labeled-stream-splicer": {
3180
+ "version": "2.0.2",
3181
+ "resolved": "https://registry.npmjs.org/labeled-stream-splicer/-/labeled-stream-splicer-2.0.2.tgz",
3182
+ "integrity": "sha512-Ca4LSXFFZUjPScRaqOcFxneA0VpKZr4MMYCljyQr4LIewTLb3Y0IUTIsnBBsVubIeEfxeSZpSjSsRM8APEQaAw==",
3183
+ "dev": true,
3184
+ "requires": {
3185
+ "inherits": "^2.0.1",
3186
+ "stream-splicer": "^2.0.0"
3187
+ }
3188
+ },
3189
+ "lazy-cache": {
3190
+ "version": "1.0.4",
3191
+ "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz",
3192
+ "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=",
3193
+ "dev": true
3194
+ },
3195
+ "liftoff": {
3196
+ "version": "2.5.0",
3197
+ "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-2.5.0.tgz",
3198
+ "integrity": "sha1-IAkpG7Mc6oYbvxCnwVooyvdcMew=",
3199
+ "dev": true,
3200
+ "requires": {
3201
+ "extend": "^3.0.0",
3202
+ "findup-sync": "^2.0.0",
3203
+ "fined": "^1.0.1",
3204
+ "flagged-respawn": "^1.0.0",
3205
+ "is-plain-object": "^2.0.4",
3206
+ "object.map": "^1.0.0",
3207
+ "rechoir": "^0.6.2",
3208
+ "resolve": "^1.1.7"
3209
+ },
3210
+ "dependencies": {
3211
+ "findup-sync": {
3212
+ "version": "2.0.0",
3213
+ "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz",
3214
+ "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=",
3215
+ "dev": true,
3216
+ "requires": {
3217
+ "detect-file": "^1.0.0",
3218
+ "is-glob": "^3.1.0",
3219
+ "micromatch": "^3.0.4",
3220
+ "resolve-dir": "^1.0.1"
3221
+ }
3222
+ }
3223
+ }
3224
+ },
3225
+ "livereload-js": {
3226
+ "version": "2.4.0",
3227
+ "resolved": "https://registry.npmjs.org/livereload-js/-/livereload-js-2.4.0.tgz",
3228
+ "integrity": "sha512-XPQH8Z2GDP/Hwz2PCDrh2mth4yFejwA1OZ/81Ti3LgKyhDcEjsSsqFWZojHG0va/duGd+WyosY7eXLDoOyqcPw==",
3229
+ "dev": true
3230
+ },
3231
+ "load-grunt-tasks": {
3232
+ "version": "5.1.0",
3233
+ "resolved": "https://registry.npmjs.org/load-grunt-tasks/-/load-grunt-tasks-5.1.0.tgz",
3234
+ "integrity": "sha512-oNj0Jlka1TsfDe+9He0kcA1cRln+TMoTsEByW7ij6kyktNLxBKJtslCFEvFrLC2Dj0S19IWJh3fOCIjLby2Xrg==",
3235
+ "dev": true,
3236
+ "requires": {
3237
+ "arrify": "^2.0.1",
3238
+ "multimatch": "^4.0.0",
3239
+ "pkg-up": "^3.1.0",
3240
+ "resolve-pkg": "^2.0.0"
3241
+ }
3242
+ },
3243
+ "load-json-file": {
3244
+ "version": "1.1.0",
3245
+ "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz",
3246
+ "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=",
3247
+ "dev": true,
3248
+ "requires": {
3249
+ "graceful-fs": "^4.1.2",
3250
+ "parse-json": "^2.2.0",
3251
+ "pify": "^2.0.0",
3252
+ "pinkie-promise": "^2.0.0",
3253
+ "strip-bom": "^2.0.0"
3254
+ }
3255
+ },
3256
+ "locate-path": {
3257
+ "version": "3.0.0",
3258
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
3259
+ "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
3260
+ "dev": true,
3261
+ "requires": {
3262
+ "p-locate": "^3.0.0",
3263
+ "path-exists": "^3.0.0"
3264
+ }
3265
+ },
3266
+ "lodash": {
3267
+ "version": "4.17.20",
3268
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz",
3269
+ "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==",
3270
+ "dev": true
3271
+ },
3272
+ "lodash.memoize": {
3273
+ "version": "3.0.4",
3274
+ "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-3.0.4.tgz",
3275
+ "integrity": "sha1-LcvSwofLwKVcxCMovQxzYVDVPj8=",
3276
+ "dev": true
3277
+ },
3278
+ "lodash.pad": {
3279
+ "version": "4.5.1",
3280
+ "resolved": "https://registry.npmjs.org/lodash.pad/-/lodash.pad-4.5.1.tgz",
3281
+ "integrity": "sha1-QzCUmoM6fI2iLMIPaibE1Z3runA=",
3282
+ "dev": true
3283
+ },
3284
+ "lodash.padend": {
3285
+ "version": "4.6.1",
3286
+ "resolved": "https://registry.npmjs.org/lodash.padend/-/lodash.padend-4.6.1.tgz",
3287
+ "integrity": "sha1-U8y6BH0G4VjTEfRdpiX05J5vFm4=",
3288
+ "dev": true
3289
+ },
3290
+ "lodash.padstart": {
3291
+ "version": "4.6.1",
3292
+ "resolved": "https://registry.npmjs.org/lodash.padstart/-/lodash.padstart-4.6.1.tgz",
3293
+ "integrity": "sha1-0uPuv/DZ05rVD1y9G1KnvOa7YRs=",
3294
+ "dev": true
3295
+ },
3296
+ "longest": {
3297
+ "version": "1.0.1",
3298
+ "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz",
3299
+ "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=",
3300
+ "dev": true
3301
+ },
3302
+ "loud-rejection": {
3303
+ "version": "1.6.0",
3304
+ "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz",
3305
+ "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=",
3306
+ "dev": true,
3307
+ "requires": {
3308
+ "currently-unhandled": "^0.4.1",
3309
+ "signal-exit": "^3.0.0"
3310
+ }
3311
+ },
3312
+ "make-iterator": {
3313
+ "version": "1.0.1",
3314
+ "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz",
3315
+ "integrity": "sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==",
3316
+ "dev": true,
3317
+ "requires": {
3318
+ "kind-of": "^6.0.2"
3319
+ },
3320
+ "dependencies": {
3321
+ "kind-of": {
3322
+ "version": "6.0.3",
3323
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
3324
+ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
3325
+ "dev": true
3326
+ }
3327
+ }
3328
+ },
3329
+ "map-cache": {
3330
+ "version": "0.2.2",
3331
+ "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz",
3332
+ "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=",
3333
+ "dev": true
3334
+ },
3335
+ "map-obj": {
3336
+ "version": "1.0.1",
3337
+ "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
3338
+ "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=",
3339
+ "dev": true
3340
+ },
3341
+ "map-visit": {
3342
+ "version": "1.0.0",
3343
+ "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz",
3344
+ "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=",
3345
+ "dev": true,
3346
+ "requires": {
3347
+ "object-visit": "^1.0.0"
3348
+ }
3349
+ },
3350
+ "matchdep": {
3351
+ "version": "2.0.0",
3352
+ "resolved": "https://registry.npmjs.org/matchdep/-/matchdep-2.0.0.tgz",
3353
+ "integrity": "sha1-xvNINKDY28OzfCfui7yyfHd1WC4=",
3354
+ "dev": true,
3355
+ "requires": {
3356
+ "findup-sync": "^2.0.0",
3357
+ "micromatch": "^3.0.4",
3358
+ "resolve": "^1.4.0",
3359
+ "stack-trace": "0.0.10"
3360
+ },
3361
+ "dependencies": {
3362
+ "findup-sync": {
3363
+ "version": "2.0.0",
3364
+ "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz",
3365
+ "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=",
3366
+ "dev": true,
3367
+ "requires": {
3368
+ "detect-file": "^1.0.0",
3369
+ "is-glob": "^3.1.0",
3370
+ "micromatch": "^3.0.4",
3371
+ "resolve-dir": "^1.0.1"
3372
+ }
3373
+ }
3374
+ }
3375
+ },
3376
+ "maxmin": {
3377
+ "version": "2.1.0",
3378
+ "resolved": "https://registry.npmjs.org/maxmin/-/maxmin-2.1.0.tgz",
3379
+ "integrity": "sha1-TTsiCQPZXu5+t6x/qGTnLcCaMWY=",
3380
+ "dev": true,
3381
+ "requires": {
3382
+ "chalk": "^1.0.0",
3383
+ "figures": "^1.0.1",
3384
+ "gzip-size": "^3.0.0",
3385
+ "pretty-bytes": "^3.0.0"
3386
+ }
3387
+ },
3388
+ "md5.js": {
3389
+ "version": "1.3.5",
3390
+ "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz",
3391
+ "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==",
3392
+ "dev": true,
3393
+ "requires": {
3394
+ "hash-base": "^3.0.0",
3395
+ "inherits": "^2.0.1",
3396
+ "safe-buffer": "^5.1.2"
3397
+ }
3398
+ },
3399
+ "meow": {
3400
+ "version": "3.7.0",
3401
+ "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
3402
+ "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=",
3403
+ "dev": true,
3404
+ "requires": {
3405
+ "camelcase-keys": "^2.0.0",
3406
+ "decamelize": "^1.1.2",
3407
+ "loud-rejection": "^1.0.0",
3408
+ "map-obj": "^1.0.1",
3409
+ "minimist": "^1.1.3",
3410
+ "normalize-package-data": "^2.3.4",
3411
+ "object-assign": "^4.0.1",
3412
+ "read-pkg-up": "^1.0.1",
3413
+ "redent": "^1.0.0",
3414
+ "trim-newlines": "^1.0.0"
3415
+ }
3416
+ },
3417
+ "micromatch": {
3418
+ "version": "3.1.10",
3419
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz",
3420
+ "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==",
3421
+ "dev": true,
3422
+ "requires": {
3423
+ "arr-diff": "^4.0.0",
3424
+ "array-unique": "^0.3.2",
3425
+ "braces": "^2.3.1",
3426
+ "define-property": "^2.0.2",
3427
+ "extend-shallow": "^3.0.2",
3428
+ "extglob": "^2.0.4",
3429
+ "fragment-cache": "^0.2.1",
3430
+ "kind-of": "^6.0.2",
3431
+ "nanomatch": "^1.2.9",
3432
+ "object.pick": "^1.3.0",
3433
+ "regex-not": "^1.0.0",
3434
+ "snapdragon": "^0.8.1",
3435
+ "to-regex": "^3.0.2"
3436
+ },
3437
+ "dependencies": {
3438
+ "kind-of": {
3439
+ "version": "6.0.3",
3440
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
3441
+ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
3442
+ "dev": true
3443
+ }
3444
+ }
3445
+ },
3446
+ "miller-rabin": {
3447
+ "version": "4.0.1",
3448
+ "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz",
3449
+ "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==",
3450
+ "dev": true,
3451
+ "requires": {
3452
+ "bn.js": "^4.0.0",
3453
+ "brorand": "^1.0.1"
3454
+ },
3455
+ "dependencies": {
3456
+ "bn.js": {
3457
+ "version": "4.11.9",
3458
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz",
3459
+ "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==",
3460
+ "dev": true
3461
+ }
3462
+ }
3463
+ },
3464
+ "minimalistic-assert": {
3465
+ "version": "1.0.1",
3466
+ "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz",
3467
+ "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==",
3468
+ "dev": true
3469
+ },
3470
+ "minimalistic-crypto-utils": {
3471
+ "version": "1.0.1",
3472
+ "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz",
3473
+ "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=",
3474
+ "dev": true
3475
+ },
3476
+ "minimatch": {
3477
+ "version": "3.0.4",
3478
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
3479
+ "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
3480
+ "dev": true,
3481
+ "requires": {
3482
+ "brace-expansion": "^1.1.7"
3483
+ }
3484
+ },
3485
+ "minimist": {
3486
+ "version": "1.2.5",
3487
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
3488
+ "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
3489
+ "dev": true
3490
+ },
3491
+ "mixin-deep": {
3492
+ "version": "1.3.2",
3493
+ "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz",
3494
+ "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==",
3495
+ "dev": true,
3496
+ "requires": {
3497
+ "for-in": "^1.0.2",
3498
+ "is-extendable": "^1.0.1"
3499
+ },
3500
+ "dependencies": {
3501
+ "is-extendable": {
3502
+ "version": "1.0.1",
3503
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
3504
+ "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
3505
+ "dev": true,
3506
+ "requires": {
3507
+ "is-plain-object": "^2.0.4"
3508
+ }
3509
+ }
3510
+ }
3511
+ },
3512
+ "mkdirp": {
3513
+ "version": "1.0.4",
3514
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
3515
+ "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
3516
+ "dev": true
3517
+ },
3518
+ "mkdirp-classic": {
3519
+ "version": "0.5.3",
3520
+ "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz",
3521
+ "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==",
3522
+ "dev": true
3523
+ },
3524
+ "module-deps": {
3525
+ "version": "6.2.3",
3526
+ "resolved": "https://registry.npmjs.org/module-deps/-/module-deps-6.2.3.tgz",
3527
+ "integrity": "sha512-fg7OZaQBcL4/L+AK5f4iVqf9OMbCclXfy/znXRxTVhJSeW5AIlS9AwheYwDaXM3lVW7OBeaeUEY3gbaC6cLlSA==",
3528
+ "dev": true,
3529
+ "requires": {
3530
+ "JSONStream": "^1.0.3",
3531
+ "browser-resolve": "^2.0.0",
3532
+ "cached-path-relative": "^1.0.2",
3533
+ "concat-stream": "~1.6.0",
3534
+ "defined": "^1.0.0",
3535
+ "detective": "^5.2.0",
3536
+ "duplexer2": "^0.1.2",
3537
+ "inherits": "^2.0.1",
3538
+ "parents": "^1.0.0",
3539
+ "readable-stream": "^2.0.2",
3540
+ "resolve": "^1.4.0",
3541
+ "stream-combiner2": "^1.1.1",
3542
+ "subarg": "^1.0.0",
3543
+ "through2": "^2.0.0",
3544
+ "xtend": "^4.0.0"
3545
+ },
3546
+ "dependencies": {
3547
+ "concat-stream": {
3548
+ "version": "1.6.2",
3549
+ "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
3550
+ "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
3551
+ "dev": true,
3552
+ "requires": {
3553
+ "buffer-from": "^1.0.0",
3554
+ "inherits": "^2.0.3",
3555
+ "readable-stream": "^2.2.2",
3556
+ "typedarray": "^0.0.6"
3557
+ }
3558
+ },
3559
+ "detective": {
3560
+ "version": "5.2.0",
3561
+ "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.0.tgz",
3562
+ "integrity": "sha512-6SsIx+nUUbuK0EthKjv0zrdnajCCXVYGmbYYiYjFVpzcjwEs/JMDZ8tPRG29J/HhN56t3GJp2cGSWDRjjot8Pg==",
3563
+ "dev": true,
3564
+ "requires": {
3565
+ "acorn-node": "^1.6.1",
3566
+ "defined": "^1.0.0",
3567
+ "minimist": "^1.1.1"
3568
+ }
3569
+ }
3570
+ }
3571
+ },
3572
+ "mothership": {
3573
+ "version": "0.2.0",
3574
+ "resolved": "https://registry.npmjs.org/mothership/-/mothership-0.2.0.tgz",
3575
+ "integrity": "sha1-k9SKL7w+UOKl/I7VhvW8RMZfmpk=",
3576
+ "dev": true,
3577
+ "requires": {
3578
+ "find-parent-dir": "~0.3.0"
3579
+ }
3580
+ },
3581
+ "ms": {
3582
+ "version": "2.0.0",
3583
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
3584
+ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
3585
+ "dev": true
3586
+ },
3587
+ "multimatch": {
3588
+ "version": "4.0.0",
3589
+ "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-4.0.0.tgz",
3590
+ "integrity": "sha512-lDmx79y1z6i7RNx0ZGCPq1bzJ6ZoDDKbvh7jxr9SJcWLkShMzXrHbYVpTdnhNM5MXpDUxCQ4DgqVttVXlBgiBQ==",
3591
+ "dev": true,
3592
+ "requires": {
3593
+ "@types/minimatch": "^3.0.3",
3594
+ "array-differ": "^3.0.0",
3595
+ "array-union": "^2.1.0",
3596
+ "arrify": "^2.0.1",
3597
+ "minimatch": "^3.0.4"
3598
+ }
3599
+ },
3600
+ "nan": {
3601
+ "version": "2.14.1",
3602
+ "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.1.tgz",
3603
+ "integrity": "sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==",
3604
+ "dev": true,
3605
+ "optional": true
3606
+ },
3607
+ "nanomatch": {
3608
+ "version": "1.2.13",
3609
+ "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz",
3610
+ "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==",
3611
+ "dev": true,
3612
+ "requires": {
3613
+ "arr-diff": "^4.0.0",
3614
+ "array-unique": "^0.3.2",
3615
+ "define-property": "^2.0.2",
3616
+ "extend-shallow": "^3.0.2",
3617
+ "fragment-cache": "^0.2.1",
3618
+ "is-windows": "^1.0.2",
3619
+ "kind-of": "^6.0.2",
3620
+ "object.pick": "^1.3.0",
3621
+ "regex-not": "^1.0.0",
3622
+ "snapdragon": "^0.8.1",
3623
+ "to-regex": "^3.0.1"
3624
+ },
3625
+ "dependencies": {
3626
+ "kind-of": {
3627
+ "version": "6.0.3",
3628
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
3629
+ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
3630
+ "dev": true
3631
+ }
3632
+ }
3633
+ },
3634
+ "node-wp-i18n": {
3635
+ "version": "1.2.3",
3636
+ "resolved": "https://registry.npmjs.org/node-wp-i18n/-/node-wp-i18n-1.2.3.tgz",
3637
+ "integrity": "sha512-YMzMcsjXbGYDB9vHyb289CYXAGmXhcNLbeTlOnWgPNkZd9xrovcbRd7cQyKd9BQHOjS7Nw8WCbJ7nvtR7rc0rg==",
3638
+ "dev": true,
3639
+ "requires": {
3640
+ "bluebird": "^3.4.1",
3641
+ "gettext-parser": "^3.1.0",
3642
+ "glob": "^7.0.5",
3643
+ "lodash": "^4.14.2",
3644
+ "minimist": "^1.2.0",
3645
+ "mkdirp": "^0.5.1",
3646
+ "tmp": "^0.0.33"
3647
+ },
3648
+ "dependencies": {
3649
+ "mkdirp": {
3650
+ "version": "0.5.5",
3651
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
3652
+ "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
3653
+ "dev": true,
3654
+ "requires": {
3655
+ "minimist": "^1.2.5"
3656
+ }
3657
+ }
3658
+ }
3659
+ },
3660
+ "nopt": {
3661
+ "version": "3.0.6",
3662
+ "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz",
3663
+ "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=",
3664
+ "dev": true,
3665
+ "requires": {
3666
+ "abbrev": "1"
3667
+ }
3668
+ },
3669
+ "normalize-package-data": {
3670
+ "version": "2.5.0",
3671
+ "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
3672
+ "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
3673
+ "dev": true,
3674
+ "requires": {
3675
+ "hosted-git-info": "^2.1.4",
3676
+ "resolve": "^1.10.0",
3677
+ "semver": "2 || 3 || 4 || 5",
3678
+ "validate-npm-package-license": "^3.0.1"
3679
+ }
3680
+ },
3681
+ "normalize-path": {
3682
+ "version": "2.1.1",
3683
+ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
3684
+ "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=",
3685
+ "dev": true,
3686
+ "requires": {
3687
+ "remove-trailing-separator": "^1.0.1"
3688
+ }
3689
+ },
3690
+ "npm": {
3691
+ "version": "2.15.12",
3692
+ "resolved": "https://registry.npmjs.org/npm/-/npm-2.15.12.tgz",
3693
+ "integrity": "sha1-33w+1aJ3w/nUtdgZsFMR0QogCuY=",
3694
+ "dev": true,
3695
+ "requires": {
3696
+ "abbrev": "~1.0.9",
3697
+ "ansi": "~0.3.1",
3698
+ "ansi-regex": "*",
3699
+ "ansicolors": "~0.3.2",
3700
+ "ansistyles": "~0.1.3",
3701
+ "archy": "~1.0.0",
3702
+ "async-some": "~1.0.2",
3703
+ "block-stream": "0.0.9",
3704
+ "char-spinner": "~1.0.1",
3705
+ "chmodr": "~1.0.2",
3706
+ "chownr": "~1.0.1",
3707
+ "cmd-shim": "~2.0.2",
3708
+ "columnify": "~1.5.4",
3709
+ "config-chain": "~1.1.10",
3710
+ "dezalgo": "~1.0.3",
3711
+ "editor": "~1.0.0",
3712
+ "fs-vacuum": "~1.2.9",
3713
+ "fs-write-stream-atomic": "~1.0.8",
3714
+ "fstream": "~1.0.10",
3715
+ "fstream-npm": "~1.1.1",
3716
+ "github-url-from-git": "~1.4.0",
3717
+ "github-url-from-username-repo": "~1.0.2",
3718
+ "glob": "~7.0.6",
3719
+ "graceful-fs": "~4.1.6",
3720
+ "hosted-git-info": "~2.1.5",
3721
+ "imurmurhash": "*",
3722
+ "inflight": "~1.0.4",
3723
+ "inherits": "~2.0.3",
3724
+ "ini": "~1.3.4",
3725
+ "init-package-json": "~1.9.4",
3726
+ "lockfile": "~1.0.1",
3727
+ "lru-cache": "~4.0.1",
3728
+ "minimatch": "~3.0.3",
3729
+ "mkdirp": "~0.5.1",
3730
+ "node-gyp": "~3.6.0",
3731
+ "nopt": "~3.0.6",
3732
+ "normalize-git-url": "~3.0.2",
3733
+ "normalize-package-data": "~2.3.5",
3734
+ "npm-cache-filename": "~1.0.2",
3735
+ "npm-install-checks": "~1.0.7",
3736
+ "npm-package-arg": "~4.1.0",
3737
+ "npm-registry-client": "~7.2.1",
3738
+ "npm-user-validate": "~0.1.5",
3739
+ "npmlog": "~2.0.4",
3740
+ "once": "~1.4.0",
3741
+ "opener": "~1.4.1",
3742
+ "osenv": "~0.1.3",
3743
+ "path-is-inside": "~1.0.0",
3744
+ "read": "~1.0.7",
3745
+ "read-installed": "~4.0.3",
3746
+ "read-package-json": "~2.0.4",
3747
+ "readable-stream": "~2.1.5",
3748
+ "realize-package-specifier": "~3.0.1",
3749
+ "request": "~2.74.0",
3750
+ "retry": "~0.10.0",
3751
+ "rimraf": "~2.5.4",
3752
+ "semver": "~5.1.0",
3753
+ "sha": "~2.0.1",
3754
+ "slide": "~1.1.6",
3755
+ "sorted-object": "~2.0.0",
3756
+ "spdx-license-ids": "~1.2.2",
3757
+ "strip-ansi": "~3.0.1",
3758
+ "tar": "~2.2.1",
3759
+ "text-table": "~0.2.0",
3760
+ "uid-number": "0.0.6",
3761
+ "umask": "~1.1.0",
3762
+ "validate-npm-package-license": "~3.0.1",
3763
+ "validate-npm-package-name": "~2.2.2",
3764
+ "which": "~1.2.11",
3765
+ "wrappy": "~1.0.2",
3766
+ "write-file-atomic": "~1.1.4"
3767
+ },
3768
+ "dependencies": {
3769
+ "abbrev": {
3770
+ "version": "1.0.9",
3771
+ "bundled": true,
3772
+ "dev": true
3773
+ },
3774
+ "ansi": {
3775
+ "version": "0.3.1",
3776
+ "bundled": true,
3777
+ "dev": true
3778
+ },
3779
+ "ansi-regex": {
3780
+ "version": "2.0.0",
3781
+ "bundled": true,
3782
+ "dev": true
3783
+ },
3784
+ "ansicolors": {
3785
+ "version": "0.3.2",
3786
+ "bundled": true,
3787
+ "dev": true
3788
+ },
3789
+ "ansistyles": {
3790
+ "version": "0.1.3",
3791
+ "bundled": true,
3792
+ "dev": true
3793
+ },
3794
+ "archy": {
3795
+ "version": "1.0.0",
3796
+ "bundled": true,
3797
+ "dev": true
3798
+ },
3799
+ "async-some": {
3800
+ "version": "1.0.2",
3801
+ "bundled": true,
3802
+ "dev": true,
3803
+ "requires": {
3804
+ "dezalgo": "^1.0.2"
3805
+ }
3806
+ },
3807
+ "block-stream": {
3808
+ "version": "0.0.9",
3809
+ "bundled": true,
3810
+ "dev": true,
3811
+ "requires": {
3812
+ "inherits": "~2.0.0"
3813
+ }
3814
+ },
3815
+ "char-spinner": {
3816
+ "version": "1.0.1",
3817
+ "bundled": true,
3818
+ "dev": true
3819
+ },
3820
+ "chmodr": {
3821
+ "version": "1.0.2",
3822
+ "bundled": true,
3823
+ "dev": true
3824
+ },
3825
+ "chownr": {
3826
+ "version": "1.0.1",
3827
+ "bundled": true,
3828
+ "dev": true
3829
+ },
3830
+ "cmd-shim": {
3831
+ "version": "2.0.2",
3832
+ "bundled": true,
3833
+ "dev": true,
3834
+ "requires": {
3835
+ "graceful-fs": "^4.1.2",
3836
+ "mkdirp": "~0.5.0"
3837
+ }
3838
+ },
3839
+ "columnify": {
3840
+ "version": "1.5.4",
3841
+ "bundled": true,
3842
+ "dev": true,
3843
+ "requires": {
3844
+ "strip-ansi": "^3.0.0",
3845
+ "wcwidth": "^1.0.0"
3846
+ },
3847
+ "dependencies": {
3848
+ "wcwidth": {
3849
+ "version": "1.0.0",
3850
+ "bundled": true,
3851
+ "dev": true,
3852
+ "requires": {
3853
+ "defaults": "^1.0.0"
3854
+ },
3855
+ "dependencies": {
3856
+ "defaults": {
3857
+ "version": "1.0.3",
3858
+ "bundled": true,
3859
+ "dev": true,
3860
+ "requires": {
3861
+ "clone": "^1.0.2"
3862
+ },
3863
+ "dependencies": {
3864
+ "clone": {
3865
+ "version": "1.0.2",
3866
+ "bundled": true,
3867
+ "dev": true
3868
+ }
3869
+ }
3870
+ }
3871
+ }
3872
+ }
3873
+ }
3874
+ },
3875
+ "config-chain": {
3876
+ "version": "1.1.10",
3877
+ "bundled": true,
3878
+ "dev": true,
3879
+ "requires": {
3880
+ "ini": "^1.3.4",
3881
+ "proto-list": "~1.2.1"
3882
+ },
3883
+ "dependencies": {
3884
+ "proto-list": {
3885
+ "version": "1.2.4",
3886
+ "bundled": true,
3887
+ "dev": true
3888
+ }
3889
+ }
3890
+ },
3891
+ "dezalgo": {
3892
+ "version": "1.0.3",
3893
+ "bundled": true,
3894
+ "dev": true,
3895
+ "requires": {
3896
+ "asap": "^2.0.0",
3897
+ "wrappy": "1"
3898
+ },
3899
+ "dependencies": {
3900
+ "asap": {
3901
+ "version": "2.0.3",
3902
+ "bundled": true,
3903
+ "dev": true
3904
+ }
3905
+ }
3906
+ },
3907
+ "editor": {
3908
+ "version": "1.0.0",
3909
+ "bundled": true,
3910
+ "dev": true
3911
+ },
3912
+ "fs-vacuum": {
3913
+ "version": "1.2.9",
3914
+ "bundled": true,
3915
+ "dev": true,
3916
+ "requires": {
3917
+ "graceful-fs": "^4.1.2",
3918
+ "path-is-inside": "^1.0.1",
3919
+ "rimraf": "^2.5.2"
3920
+ }
3921
+ },
3922
+ "fs-write-stream-atomic": {
3923
+ "version": "1.0.8",
3924
+ "bundled": true,
3925
+ "dev": true,
3926
+ "requires": {
3927
+ "graceful-fs": "^4.1.2",
3928
+ "iferr": "^0.1.5",
3929
+ "imurmurhash": "^0.1.4",
3930
+ "readable-stream": "1 || 2"
3931
+ },
3932
+ "dependencies": {
3933
+ "iferr": {
3934
+ "version": "0.1.5",
3935
+ "bundled": true,
3936
+ "dev": true
3937
+ }
3938
+ }
3939
+ },
3940
+ "fstream": {
3941
+ "version": "1.0.10",
3942
+ "bundled": true,
3943
+ "dev": true,
3944
+ "requires": {
3945
+ "graceful-fs": "^4.1.2",
3946
+ "inherits": "~2.0.0",
3947
+ "mkdirp": ">=0.5 0",
3948
+ "rimraf": "2"
3949
+ }
3950
+ },
3951
+ "fstream-npm": {
3952
+ "version": "1.1.1",
3953
+ "bundled": true,
3954
+ "dev": true,
3955
+ "requires": {
3956
+ "fstream-ignore": "^1.0.0",
3957
+ "inherits": "2"
3958
+ },
3959
+ "dependencies": {
3960
+ "fstream-ignore": {
3961
+ "version": "1.0.5",
3962
+ "bundled": true,
3963
+ "dev": true,
3964
+ "requires": {
3965
+ "fstream": "^1.0.0",
3966
+ "inherits": "2",
3967
+ "minimatch": "^3.0.0"
3968
+ }
3969
+ }
3970
+ }
3971
+ },
3972
+ "github-url-from-git": {
3973
+ "version": "1.4.0",
3974
+ "bundled": true,
3975
+ "dev": true
3976
+ },
3977
+ "github-url-from-username-repo": {
3978
+ "version": "1.0.2",
3979
+ "bundled": true,
3980
+ "dev": true
3981
+ },
3982
+ "glob": {
3983
+ "version": "7.0.6",
3984
+ "bundled": true,
3985
+ "dev": true,
3986
+ "requires": {
3987
+ "fs.realpath": "^1.0.0",
3988
+ "inflight": "^1.0.4",
3989
+ "inherits": "2",
3990
+ "minimatch": "^3.0.2",
3991
+ "once": "^1.3.0",
3992
+ "path-is-absolute": "^1.0.0"
3993
+ },
3994
+ "dependencies": {
3995
+ "fs.realpath": {
3996
+ "version": "1.0.0",
3997
+ "bundled": true,
3998
+ "dev": true
3999
+ },
4000
+ "path-is-absolute": {
4001
+ "version": "1.0.0",
4002
+ "bundled": true,
4003
+ "dev": true
4004
+ }
4005
+ }
4006
+ },
4007
+ "graceful-fs": {
4008
+ "version": "4.1.6",
4009
+ "bundled": true,
4010
+ "dev": true
4011
+ },
4012
+ "hosted-git-info": {
4013
+ "version": "2.1.5",
4014
+ "bundled": true,
4015
+ "dev": true
4016
+ },
4017
+ "imurmurhash": {
4018
+ "version": "0.1.4",
4019
+ "bundled": true,
4020
+ "dev": true
4021
+ },
4022
+ "inflight": {
4023
+ "version": "1.0.5",
4024
+ "bundled": true,
4025
+ "dev": true,
4026
+ "requires": {
4027
+ "once": "^1.3.0",
4028
+ "wrappy": "1"
4029
+ }
4030
+ },
4031
+ "inherits": {
4032
+ "version": "2.0.3",
4033
+ "bundled": true,
4034
+ "dev": true
4035
+ },
4036
+ "ini": {
4037
+ "version": "1.3.4",
4038
+ "bundled": true,
4039
+ "dev": true
4040
+ },
4041
+ "init-package-json": {
4042
+ "version": "1.9.4",
4043
+ "bundled": true,
4044
+ "dev": true,
4045
+ "requires": {
4046
+ "glob": "^6.0.0",
4047
+ "npm-package-arg": "^4.0.0",
4048
+ "promzard": "^0.3.0",
4049
+ "read": "~1.0.1",
4050
+ "read-package-json": "1 || 2",
4051
+ "semver": "2.x || 3.x || 4 || 5",
4052
+ "validate-npm-package-license": "^3.0.1",
4053
+ "validate-npm-package-name": "^2.0.1"
4054
+ },
4055
+ "dependencies": {
4056
+ "glob": {
4057
+ "version": "6.0.4",
4058
+ "bundled": true,
4059
+ "dev": true,
4060
+ "requires": {
4061
+ "inflight": "^1.0.4",
4062
+ "inherits": "2",
4063
+ "minimatch": "2 || 3",
4064
+ "once": "^1.3.0",
4065
+ "path-is-absolute": "^1.0.0"
4066
+ },
4067
+ "dependencies": {
4068
+ "path-is-absolute": {
4069
+ "version": "1.0.0",
4070
+ "bundled": true,
4071
+ "dev": true
4072
+ }
4073
+ }
4074
+ },
4075
+ "promzard": {
4076
+ "version": "0.3.0",
4077
+ "bundled": true,
4078
+ "dev": true,
4079
+ "requires": {
4080
+ "read": "1"
4081
+ }
4082
+ }
4083
+ }
4084
+ },
4085
+ "lockfile": {
4086
+ "version": "1.0.1",
4087
+ "bundled": true,
4088
+ "dev": true
4089
+ },
4090
+ "lru-cache": {
4091
+ "version": "4.0.1",
4092
+ "bundled": true,
4093
+ "dev": true,
4094
+ "requires": {
4095
+ "pseudomap": "^1.0.1",
4096
+ "yallist": "^2.0.0"
4097
+ },
4098
+ "dependencies": {
4099
+ "pseudomap": {
4100
+ "version": "1.0.2",
4101
+ "bundled": true,
4102
+ "dev": true
4103
+ },
4104
+ "yallist": {
4105
+ "version": "2.0.0",
4106
+ "bundled": true,
4107
+ "dev": true
4108
+ }
4109
+ }
4110
+ },
4111
+ "minimatch": {
4112
+ "version": "3.0.3",
4113
+ "bundled": true,
4114
+ "dev": true,
4115
+ "requires": {
4116
+ "brace-expansion": "^1.0.0"
4117
+ },
4118
+ "dependencies": {
4119
+ "brace-expansion": {
4120
+ "version": "1.1.6",
4121
+ "bundled": true,
4122
+ "dev": true,
4123
+ "requires": {
4124
+ "balanced-match": "^0.4.1",
4125
+ "concat-map": "0.0.1"
4126
+ },
4127
+ "dependencies": {
4128
+ "balanced-match": {
4129
+ "version": "0.4.2",
4130
+ "bundled": true,
4131
+ "dev": true
4132
+ },
4133
+ "concat-map": {
4134
+ "version": "0.0.1",
4135
+ "bundled": true,
4136
+ "dev": true
4137
+ }
4138
+ }
4139
+ }
4140
+ }
4141
+ },
4142
+ "mkdirp": {
4143
+ "version": "0.5.1",
4144
+ "bundled": true,
4145
+ "dev": true,
4146
+ "requires": {
4147
+ "minimist": "0.0.8"
4148
+ },
4149
+ "dependencies": {
4150
+ "minimist": {
4151
+ "version": "0.0.8",
4152
+ "bundled": true,
4153
+ "dev": true
4154
+ }
4155
+ }
4156
+ },
4157
+ "node-gyp": {
4158
+ "version": "3.6.0",
4159
+ "bundled": true,
4160
+ "dev": true,
4161
+ "requires": {
4162
+ "fstream": "^1.0.0",
4163
+ "glob": "^7.0.3",
4164
+ "graceful-fs": "^4.1.2",
4165
+ "minimatch": "^3.0.2",
4166
+ "mkdirp": "^0.5.0",
4167
+ "nopt": "2 || 3",
4168
+ "npmlog": "0 || 1 || 2 || 3 || 4",
4169
+ "osenv": "0",
4170
+ "request": "2",
4171
+ "rimraf": "2",
4172
+ "semver": "~5.3.0",
4173
+ "tar": "^2.0.0",
4174
+ "which": "1"
4175
+ },
4176
+ "dependencies": {
4177
+ "semver": {
4178
+ "version": "5.3.0",
4179
+ "bundled": true,
4180
+ "dev": true
4181
+ }
4182
+ }
4183
+ },
4184
+ "nopt": {
4185
+ "version": "3.0.6",
4186
+ "bundled": true,
4187
+ "dev": true,
4188
+ "requires": {
4189
+ "abbrev": "1"
4190
+ }
4191
+ },
4192
+ "normalize-git-url": {
4193
+ "version": "3.0.2",
4194
+ "bundled": true,
4195
+ "dev": true
4196
+ },
4197
+ "normalize-package-data": {
4198
+ "version": "2.3.5",
4199
+ "bundled": true,
4200
+ "dev": true,
4201
+ "requires": {
4202
+ "hosted-git-info": "^2.1.4",
4203
+ "is-builtin-module": "^1.0.0",
4204
+ "semver": "2 || 3 || 4 || 5",
4205
+ "validate-npm-package-license": "^3.0.1"
4206
+ },
4207
+ "dependencies": {
4208
+ "is-builtin-module": {
4209
+ "version": "1.0.0",
4210
+ "bundled": true,
4211
+ "dev": true,
4212
+ "requires": {
4213
+ "builtin-modules": "^1.0.0"
4214
+ },
4215
+ "dependencies": {
4216
+ "builtin-modules": {
4217
+ "version": "1.1.0",
4218
+ "bundled": true,
4219
+ "dev": true
4220
+ }
4221
+ }
4222
+ }
4223
+ }
4224
+ },
4225
+ "npm-cache-filename": {
4226
+ "version": "1.0.2",
4227
+ "bundled": true,
4228
+ "dev": true
4229
+ },
4230
+ "npm-install-checks": {
4231
+ "version": "1.0.7",
4232
+ "bundled": true,
4233
+ "dev": true,
4234
+ "requires": {
4235
+ "npmlog": "0.1 || 1 || 2",
4236
+ "semver": "^2.3.0 || 3.x || 4 || 5"
4237
+ }
4238
+ },
4239
+ "npm-package-arg": {
4240
+ "version": "4.1.0",
4241
+ "bundled": true,
4242
+ "dev": true,
4243
+ "requires": {
4244
+ "hosted-git-info": "^2.1.4",
4245
+ "semver": "4 || 5"
4246
+ }
4247
+ },
4248
+ "npm-registry-client": {
4249
+ "version": "7.2.1",
4250
+ "bundled": true,
4251
+ "dev": true,
4252
+ "requires": {
4253
+ "concat-stream": "^1.5.2",
4254
+ "graceful-fs": "^4.1.6",
4255
+ "normalize-package-data": "~1.0.1 || ^2.0.0",
4256
+ "npm-package-arg": "^3.0.0 || ^4.0.0",
4257
+ "npmlog": "~2.0.0 || ~3.1.0",
4258
+ "once": "^1.3.3",
4259
+ "request": "^2.74.0",
4260
+ "retry": "^0.10.0",
4261
+ "semver": "2 >=2.2.1 || 3.x || 4 || 5",
4262
+ "slide": "^1.1.3"
4263
+ },
4264
+ "dependencies": {
4265
+ "concat-stream": {
4266
+ "version": "1.5.2",
4267
+ "bundled": true,
4268
+ "dev": true,
4269
+ "requires": {
4270
+ "inherits": "~2.0.1",
4271
+ "readable-stream": "~2.0.0",
4272
+ "typedarray": "~0.0.5"
4273
+ },
4274
+ "dependencies": {
4275
+ "readable-stream": {
4276
+ "version": "2.0.6",
4277
+ "bundled": true,
4278
+ "dev": true,
4279
+ "requires": {
4280
+ "core-util-is": "~1.0.0",
4281
+ "inherits": "~2.0.1",
4282
+ "isarray": "~1.0.0",
4283
+ "process-nextick-args": "~1.0.6",
4284
+ "string_decoder": "~0.10.x",
4285
+ "util-deprecate": "~1.0.1"
4286
+ },
4287
+ "dependencies": {
4288
+ "core-util-is": {
4289
+ "version": "1.0.2",
4290
+ "bundled": true,
4291
+ "dev": true
4292
+ },
4293
+ "isarray": {
4294
+ "version": "1.0.0",
4295
+ "bundled": true,
4296
+ "dev": true
4297
+ },
4298
+ "process-nextick-args": {
4299
+ "version": "1.0.7",
4300
+ "bundled": true,
4301
+ "dev": true
4302
+ },
4303
+ "string_decoder": {
4304
+ "version": "0.10.31",
4305
+ "bundled": true,
4306
+ "dev": true
4307
+ },
4308
+ "util-deprecate": {
4309
+ "version": "1.0.2",
4310
+ "bundled": true,
4311
+ "dev": true
4312
+ }
4313
+ }
4314
+ },
4315
+ "typedarray": {
4316
+ "version": "0.0.6",
4317
+ "bundled": true,
4318
+ "dev": true
4319
+ }
4320
+ }
4321
+ },
4322
+ "retry": {
4323
+ "version": "0.10.0",
4324
+ "bundled": true,
4325
+ "dev": true
4326
+ }
4327
+ }
4328
+ },
4329
+ "npm-user-validate": {
4330
+ "version": "0.1.5",
4331
+ "bundled": true,
4332
+ "dev": true
4333
+ },
4334
+ "npmlog": {
4335
+ "version": "2.0.4",
4336
+ "bundled": true,
4337
+ "dev": true,
4338
+ "requires": {
4339
+ "ansi": "~0.3.1",
4340
+ "are-we-there-yet": "~1.1.2",
4341
+ "gauge": "~1.2.5"
4342
+ },
4343
+ "dependencies": {
4344
+ "are-we-there-yet": {
4345
+ "version": "1.1.2",
4346
+ "bundled": true,
4347
+ "dev": true,
4348
+ "requires": {
4349
+ "delegates": "^1.0.0",
4350
+ "readable-stream": "^2.0.0 || ^1.1.13"
4351
+ },
4352
+ "dependencies": {
4353
+ "delegates": {
4354
+ "version": "1.0.0",
4355
+ "bundled": true,
4356
+ "dev": true
4357
+ }
4358
+ }
4359
+ },
4360
+ "gauge": {
4361
+ "version": "1.2.7",
4362
+ "bundled": true,
4363
+ "dev": true,
4364
+ "requires": {
4365
+ "ansi": "^0.3.0",
4366
+ "has-unicode": "^2.0.0",
4367
+ "lodash.pad": "^4.1.0",
4368
+ "lodash.padend": "^4.1.0",
4369
+ "lodash.padstart": "^4.1.0"
4370
+ },
4371
+ "dependencies": {
4372
+ "has-unicode": {
4373
+ "version": "2.0.0",
4374
+ "bundled": true,
4375
+ "dev": true
4376
+ },
4377
+ "lodash._baseslice": {
4378
+ "version": "4.0.0",
4379
+ "bundled": true,
4380
+ "dev": true
4381
+ },
4382
+ "lodash._basetostring": {
4383
+ "version": "4.12.0",
4384
+ "bundled": true,
4385
+ "dev": true
4386
+ },
4387
+ "lodash.pad": {
4388
+ "version": "4.4.0",
4389
+ "bundled": true,
4390
+ "dev": true,
4391
+ "requires": {
4392
+ "lodash._baseslice": "~4.0.0",
4393
+ "lodash._basetostring": "~4.12.0",
4394
+ "lodash.tostring": "^4.0.0"
4395
+ }
4396
+ },
4397
+ "lodash.padend": {
4398
+ "version": "4.5.0",
4399
+ "bundled": true,
4400
+ "dev": true,
4401
+ "requires": {
4402
+ "lodash._baseslice": "~4.0.0",
4403
+ "lodash._basetostring": "~4.12.0",
4404
+ "lodash.tostring": "^4.0.0"
4405
+ }
4406
+ },
4407
+ "lodash.padstart": {
4408
+ "version": "4.5.0",
4409
+ "bundled": true,
4410
+ "dev": true,
4411
+ "requires": {
4412
+ "lodash._baseslice": "~4.0.0",
4413
+ "lodash._basetostring": "~4.12.0",
4414
+ "lodash.tostring": "^4.0.0"
4415
+ }
4416
+ },
4417
+ "lodash.tostring": {
4418
+ "version": "4.1.4",
4419
+ "bundled": true,
4420
+ "dev": true
4421
+ }
4422
+ }
4423
+ }
4424
+ }
4425
+ },
4426
+ "once": {
4427
+ "version": "1.4.0",
4428
+ "bundled": true,
4429
+ "dev": true,
4430
+ "requires": {
4431
+ "wrappy": "1"
4432
+ }
4433
+ },
4434
+ "opener": {
4435
+ "version": "1.4.1",
4436
+ "bundled": true,
4437
+ "dev": true
4438
+ },
4439
+ "osenv": {
4440
+ "version": "0.1.3",
4441
+ "bundled": true,
4442
+ "dev": true,
4443
+ "requires": {
4444
+ "os-homedir": "^1.0.0",
4445
+ "os-tmpdir": "^1.0.0"
4446
+ },
4447
+ "dependencies": {
4448
+ "os-homedir": {
4449
+ "version": "1.0.0",
4450
+ "bundled": true,
4451
+ "dev": true
4452
+ },
4453
+ "os-tmpdir": {
4454
+ "version": "1.0.1",
4455
+ "bundled": true,
4456
+ "dev": true
4457
+ }
4458
+ }
4459
+ },
4460
+ "path-is-inside": {
4461
+ "version": "1.0.1",
4462
+ "bundled": true,
4463
+ "dev": true
4464
+ },
4465
+ "read": {
4466
+ "version": "1.0.7",
4467
+ "bundled": true,
4468
+ "dev": true,
4469
+ "requires": {
4470
+ "mute-stream": "~0.0.4"
4471
+ },
4472
+ "dependencies": {
4473
+ "mute-stream": {
4474
+ "version": "0.0.5",
4475
+ "bundled": true,
4476
+ "dev": true
4477
+ }
4478
+ }
4479
+ },
4480
+ "read-installed": {
4481
+ "version": "4.0.3",
4482
+ "bundled": true,
4483
+ "dev": true,
4484
+ "requires": {
4485
+ "debuglog": "^1.0.1",
4486
+ "graceful-fs": "^4.1.2",
4487
+ "read-package-json": "^2.0.0",
4488
+ "readdir-scoped-modules": "^1.0.0",
4489
+ "semver": "2 || 3 || 4 || 5",
4490
+ "slide": "~1.1.3",
4491
+ "util-extend": "^1.0.1"
4492
+ },
4493
+ "dependencies": {
4494
+ "debuglog": {
4495
+ "version": "1.0.1",
4496
+ "bundled": true,
4497
+ "dev": true
4498
+ },
4499
+ "readdir-scoped-modules": {
4500
+ "version": "1.0.2",
4501
+ "bundled": true,
4502
+ "dev": true,
4503
+ "requires": {
4504
+ "debuglog": "^1.0.1",
4505
+ "dezalgo": "^1.0.0",
4506
+ "graceful-fs": "^4.1.2",
4507
+ "once": "^1.3.0"
4508
+ }
4509
+ },
4510
+ "util-extend": {
4511
+ "version": "1.0.1",
4512
+ "bundled": true,
4513
+ "dev": true
4514
+ }
4515
+ }
4516
+ },
4517
+ "read-package-json": {
4518
+ "version": "2.0.4",
4519
+ "bundled": true,
4520
+ "dev": true,
4521
+ "requires": {
4522
+ "glob": "^6.0.0",
4523
+ "graceful-fs": "^4.1.2",
4524
+ "json-parse-helpfulerror": "^1.0.2",
4525
+ "normalize-package-data": "^2.0.0"
4526
+ },
4527
+ "dependencies": {
4528
+ "glob": {
4529
+ "version": "6.0.4",
4530
+ "bundled": true,
4531
+ "dev": true,
4532
+ "requires": {
4533
+ "inflight": "^1.0.4",
4534
+ "inherits": "2",
4535
+ "minimatch": "2 || 3",
4536
+ "once": "^1.3.0",
4537
+ "path-is-absolute": "^1.0.0"
4538
+ },
4539
+ "dependencies": {
4540
+ "path-is-absolute": {
4541
+ "version": "1.0.0",
4542
+ "bundled": true,
4543
+ "dev": true
4544
+ }
4545
+ }
4546
+ },
4547
+ "json-parse-helpfulerror": {
4548
+ "version": "1.0.3",
4549
+ "bundled": true,
4550
+ "dev": true,
4551
+ "requires": {
4552
+ "jju": "^1.1.0"
4553
+ },
4554
+ "dependencies": {
4555
+ "jju": {
4556
+ "version": "1.3.0",
4557
+ "bundled": true,
4558
+ "dev": true
4559
+ }
4560
+ }
4561
+ }
4562
+ }
4563
+ },
4564
+ "readable-stream": {
4565
+ "version": "2.1.5",
4566
+ "bundled": true,
4567
+ "dev": true,
4568
+ "requires": {
4569
+ "buffer-shims": "^1.0.0",
4570
+ "core-util-is": "~1.0.0",
4571
+ "inherits": "~2.0.1",
4572
+ "isarray": "~1.0.0",
4573
+ "process-nextick-args": "~1.0.6",
4574
+ "string_decoder": "~0.10.x",
4575
+ "util-deprecate": "~1.0.1"
4576
+ },
4577
+ "dependencies": {
4578
+ "buffer-shims": {
4579
+ "version": "1.0.0",
4580
+ "bundled": true,
4581
+ "dev": true
4582
+ },
4583
+ "core-util-is": {
4584
+ "version": "1.0.2",
4585
+ "bundled": true,
4586
+ "dev": true
4587
+ },
4588
+ "isarray": {
4589
+ "version": "1.0.0",
4590
+ "bundled": true,
4591
+ "dev": true
4592
+ },
4593
+ "process-nextick-args": {
4594
+ "version": "1.0.7",
4595
+ "bundled": true,
4596
+ "dev": true
4597
+ },
4598
+ "string_decoder": {
4599
+ "version": "0.10.31",
4600
+ "bundled": true,
4601
+ "dev": true
4602
+ },
4603
+ "util-deprecate": {
4604
+ "version": "1.0.2",
4605
+ "bundled": true,
4606
+ "dev": true
4607
+ }
4608
+ }
4609
+ },
4610
+ "realize-package-specifier": {
4611
+ "version": "3.0.1",
4612
+ "bundled": true,
4613
+ "dev": true,
4614
+ "requires": {
4615
+ "dezalgo": "^1.0.1",
4616
+ "npm-package-arg": "^4.0.0"
4617
+ }
4618
+ },
4619
+ "request": {
4620
+ "version": "2.74.0",
4621
+ "bundled": true,
4622
+ "dev": true,
4623
+ "requires": {
4624
+ "aws-sign2": "~0.6.0",
4625
+ "aws4": "^1.2.1",
4626
+ "bl": "~1.1.2",
4627
+ "caseless": "~0.11.0",
4628
+ "combined-stream": "~1.0.5",
4629
+ "extend": "~3.0.0",
4630
+ "forever-agent": "~0.6.1",
4631
+ "form-data": "~1.0.0-rc4",
4632
+ "har-validator": "~2.0.6",
4633
+ "hawk": "~3.1.3",
4634
+ "http-signature": "~1.1.0",
4635
+ "is-typedarray": "~1.0.0",
4636
+ "isstream": "~0.1.2",
4637
+ "json-stringify-safe": "~5.0.1",
4638
+ "mime-types": "~2.1.7",
4639
+ "node-uuid": "~1.4.7",
4640
+ "oauth-sign": "~0.8.1",
4641
+ "qs": "~6.2.0",
4642
+ "stringstream": "~0.0.4",
4643
+ "tough-cookie": "~2.3.0",
4644
+ "tunnel-agent": "~0.4.1"
4645
+ },
4646
+ "dependencies": {
4647
+ "aws-sign2": {
4648
+ "version": "0.6.0",
4649
+ "bundled": true,
4650
+ "dev": true
4651
+ },
4652
+ "aws4": {
4653
+ "version": "1.4.1",
4654
+ "bundled": true,
4655
+ "dev": true
4656
+ },
4657
+ "bl": {
4658
+ "version": "1.1.2",
4659
+ "bundled": true,
4660
+ "dev": true,
4661
+ "requires": {
4662
+ "readable-stream": "~2.0.5"
4663
+ },
4664
+ "dependencies": {
4665
+ "readable-stream": {
4666
+ "version": "2.0.6",
4667
+ "bundled": true,
4668
+ "dev": true,
4669
+ "requires": {
4670
+ "core-util-is": "~1.0.0",
4671
+ "inherits": "~2.0.1",
4672
+ "isarray": "~1.0.0",
4673
+ "process-nextick-args": "~1.0.6",
4674
+ "string_decoder": "~0.10.x",
4675
+ "util-deprecate": "~1.0.1"
4676
+ },
4677
+ "dependencies": {
4678
+ "core-util-is": {
4679
+ "version": "1.0.2",
4680
+ "bundled": true,
4681
+ "dev": true
4682
+ },
4683
+ "isarray": {
4684
+ "version": "1.0.0",
4685
+ "bundled": true,
4686
+ "dev": true
4687
+ },
4688
+ "process-nextick-args": {
4689
+ "version": "1.0.7",
4690
+ "bundled": true,
4691
+ "dev": true
4692
+ },
4693
+ "string_decoder": {
4694
+ "version": "0.10.31",
4695
+ "bundled": true,
4696
+ "dev": true
4697
+ },
4698
+ "util-deprecate": {
4699
+ "version": "1.0.2",
4700
+ "bundled": true,
4701
+ "dev": true
4702
+ }
4703
+ }
4704
+ }
4705
+ }
4706
+ },
4707
+ "caseless": {
4708
+ "version": "0.11.0",
4709
+ "bundled": true,
4710
+ "dev": true
4711
+ },
4712
+ "combined-stream": {
4713
+ "version": "1.0.5",
4714
+ "bundled": true,
4715
+ "dev": true,
4716
+ "requires": {
4717
+ "delayed-stream": "~1.0.0"
4718
+ },
4719
+ "dependencies": {
4720
+ "delayed-stream": {
4721
+ "version": "1.0.0",
4722
+ "bundled": true,
4723
+ "dev": true
4724
+ }
4725
+ }
4726
+ },
4727
+ "extend": {
4728
+ "version": "3.0.0",
4729
+ "bundled": true,
4730
+ "dev": true
4731
+ },
4732
+ "forever-agent": {
4733
+ "version": "0.6.1",
4734
+ "bundled": true,
4735
+ "dev": true
4736
+ },
4737
+ "form-data": {
4738
+ "version": "1.0.0-rc4",
4739
+ "bundled": true,
4740
+ "dev": true,
4741
+ "requires": {
4742
+ "async": "^1.5.2",
4743
+ "combined-stream": "^1.0.5",
4744
+ "mime-types": "^2.1.10"
4745
+ },
4746
+ "dependencies": {
4747
+ "async": {
4748
+ "version": "1.5.2",
4749
+ "bundled": true,
4750
+ "dev": true
4751
+ }
4752
+ }
4753
+ },
4754
+ "har-validator": {
4755
+ "version": "2.0.6",
4756
+ "bundled": true,
4757
+ "dev": true,
4758
+ "requires": {
4759
+ "chalk": "^1.1.1",
4760
+ "commander": "^2.9.0",
4761
+ "is-my-json-valid": "^2.12.4",
4762
+ "pinkie-promise": "^2.0.0"
4763
+ },
4764
+ "dependencies": {
4765
+ "chalk": {
4766
+ "version": "1.1.3",
4767
+ "bundled": true,
4768
+ "dev": true,
4769
+ "requires": {
4770
+ "ansi-styles": "^2.2.1",
4771
+ "escape-string-regexp": "^1.0.2",
4772
+ "has-ansi": "^2.0.0",
4773
+ "strip-ansi": "^3.0.0",
4774
+ "supports-color": "^2.0.0"
4775
+ },
4776
+ "dependencies": {
4777
+ "ansi-styles": {
4778
+ "version": "2.2.1",
4779
+ "bundled": true,
4780
+ "dev": true
4781
+ },
4782
+ "escape-string-regexp": {
4783
+ "version": "1.0.5",
4784
+ "bundled": true,
4785
+ "dev": true
4786
+ },
4787
+ "has-ansi": {
4788
+ "version": "2.0.0",
4789
+ "bundled": true,
4790
+ "dev": true,
4791
+ "requires": {
4792
+ "ansi-regex": "^2.0.0"
4793
+ }
4794
+ },
4795
+ "supports-color": {
4796
+ "version": "2.0.0",
4797
+ "bundled": true,
4798
+ "dev": true
4799
+ }
4800
+ }
4801
+ },
4802
+ "commander": {
4803
+ "version": "2.9.0",
4804
+ "bundled": true,
4805
+ "dev": true,
4806
+ "requires": {
4807
+ "graceful-readlink": ">= 1.0.0"
4808
+ },
4809
+ "dependencies": {
4810
+ "graceful-readlink": {
4811
+ "version": "1.0.1",
4812
+ "bundled": true,
4813
+ "dev": true
4814
+ }
4815
+ }
4816
+ },
4817
+ "is-my-json-valid": {
4818
+ "version": "2.13.1",
4819
+ "bundled": true,
4820
+ "dev": true,
4821
+ "requires": {
4822
+ "generate-function": "^2.0.0",
4823
+ "generate-object-property": "^1.1.0",
4824
+ "jsonpointer": "2.0.0",
4825
+ "xtend": "^4.0.0"
4826
+ },
4827
+ "dependencies": {
4828
+ "generate-function": {
4829
+ "version": "2.0.0",
4830
+ "bundled": true,
4831
+ "dev": true
4832
+ },
4833
+ "generate-object-property": {
4834
+ "version": "1.2.0",
4835
+ "bundled": true,
4836
+ "dev": true,
4837
+ "requires": {
4838
+ "is-property": "^1.0.0"
4839
+ },
4840
+ "dependencies": {
4841
+ "is-property": {
4842
+ "version": "1.0.2",
4843
+ "bundled": true,
4844
+ "dev": true
4845
+ }
4846
+ }
4847
+ },
4848
+ "jsonpointer": {
4849
+ "version": "2.0.0",
4850
+ "bundled": true,
4851
+ "dev": true
4852
+ },
4853
+ "xtend": {
4854
+ "version": "4.0.1",
4855
+ "bundled": true,
4856
+ "dev": true
4857
+ }
4858
+ }
4859
+ },
4860
+ "pinkie-promise": {
4861
+ "version": "2.0.1",
4862
+ "bundled": true,
4863
+ "dev": true,
4864
+ "requires": {
4865
+ "pinkie": "^2.0.0"
4866
+ },
4867
+ "dependencies": {
4868
+ "pinkie": {
4869
+ "version": "2.0.4",
4870
+ "bundled": true,
4871
+ "dev": true
4872
+ }
4873
+ }
4874
+ }
4875
+ }
4876
+ },
4877
+ "hawk": {
4878
+ "version": "3.1.3",
4879
+ "bundled": true,
4880
+ "dev": true,
4881
+ "requires": {
4882
+ "boom": "2.x.x",
4883
+ "cryptiles": "2.x.x",
4884
+ "hoek": "2.x.x",
4885
+ "sntp": "1.x.x"
4886
+ },
4887
+ "dependencies": {
4888
+ "boom": {
4889
+ "version": "2.10.1",
4890
+ "bundled": true,
4891
+ "dev": true,
4892
+ "requires": {
4893
+ "hoek": "2.x.x"
4894
+ }
4895
+ },
4896
+ "cryptiles": {
4897
+ "version": "2.0.5",
4898
+ "bundled": true,
4899
+ "dev": true,
4900
+ "requires": {
4901
+ "boom": "2.x.x"
4902
+ }
4903
+ },
4904
+ "hoek": {
4905
+ "version": "2.16.3",
4906
+ "bundled": true,
4907
+ "dev": true
4908
+ },
4909
+ "sntp": {
4910
+ "version": "1.0.9",
4911
+ "bundled": true,
4912
+ "dev": true,
4913
+ "requires": {
4914
+ "hoek": "2.x.x"
4915
+ }
4916
+ }
4917
+ }
4918
+ },
4919
+ "http-signature": {
4920
+ "version": "1.1.1",
4921
+ "bundled": true,
4922
+ "dev": true,
4923
+ "requires": {
4924
+ "assert-plus": "^0.2.0",
4925
+ "jsprim": "^1.2.2",
4926
+ "sshpk": "^1.7.0"
4927
+ },
4928
+ "dependencies": {
4929
+ "assert-plus": {
4930
+ "version": "0.2.0",
4931
+ "bundled": true,
4932
+ "dev": true
4933
+ },
4934
+ "jsprim": {
4935
+ "version": "1.3.0",
4936
+ "bundled": true,
4937
+ "dev": true,
4938
+ "requires": {
4939
+ "extsprintf": "1.0.2",
4940
+ "json-schema": "0.2.2",
4941
+ "verror": "1.3.6"
4942
+ },
4943
+ "dependencies": {
4944
+ "extsprintf": {
4945
+ "version": "1.0.2",
4946
+ "bundled": true,
4947
+ "dev": true
4948
+ },
4949
+ "json-schema": {
4950
+ "version": "0.2.2",
4951
+ "bundled": true,
4952
+ "dev": true
4953
+ },
4954
+ "verror": {
4955
+ "version": "1.3.6",
4956
+ "bundled": true,
4957
+ "dev": true,
4958
+ "requires": {
4959
+ "extsprintf": "1.0.2"
4960
+ }
4961
+ }
4962
+ }
4963
+ },
4964
+ "sshpk": {
4965
+ "version": "1.9.2",
4966
+ "bundled": true,
4967
+ "dev": true,
4968
+ "requires": {
4969
+ "asn1": "~0.2.3",
4970
+ "assert-plus": "^1.0.0",
4971
+ "dashdash": "^1.12.0",
4972
+ "ecc-jsbn": "~0.1.1",
4973
+ "getpass": "^0.1.1",
4974
+ "jodid25519": "^1.0.0",
4975
+ "jsbn": "~0.1.0",
4976
+ "tweetnacl": "~0.13.0"
4977
+ },
4978
+ "dependencies": {
4979
+ "asn1": {
4980
+ "version": "0.2.3",
4981
+ "bundled": true,
4982
+ "dev": true
4983
+ },
4984
+ "assert-plus": {
4985
+ "version": "1.0.0",
4986
+ "bundled": true,
4987
+ "dev": true
4988
+ },
4989
+ "dashdash": {
4990
+ "version": "1.14.0",
4991
+ "bundled": true,
4992
+ "dev": true,
4993
+ "requires": {
4994
+ "assert-plus": "^1.0.0"
4995
+ }
4996
+ },
4997
+ "ecc-jsbn": {
4998
+ "version": "0.1.1",
4999
+ "bundled": true,
5000
+ "dev": true,
5001
+ "optional": true,
5002
+ "requires": {
5003
+ "jsbn": "~0.1.0"
5004
+ }
5005
+ },
5006
+ "getpass": {
5007
+ "version": "0.1.6",
5008
+ "bundled": true,
5009
+ "dev": true,
5010
+ "requires": {
5011
+ "assert-plus": "^1.0.0"
5012
+ }
5013
+ },
5014
+ "jodid25519": {
5015
+ "version": "1.0.2",
5016
+ "bundled": true,
5017
+ "dev": true,
5018
+ "optional": true,
5019
+ "requires": {
5020
+ "jsbn": "~0.1.0"
5021
+ }
5022
+ },
5023
+ "jsbn": {
5024
+ "version": "0.1.0",
5025
+ "bundled": true,
5026
+ "dev": true,
5027
+ "optional": true
5028
+ },
5029
+ "tweetnacl": {
5030
+ "version": "0.13.3",
5031
+ "bundled": true,
5032
+ "dev": true,
5033
+ "optional": true
5034
+ }
5035
+ }
5036
+ }
5037
+ }
5038
+ },
5039
+ "is-typedarray": {
5040
+ "version": "1.0.0",
5041
+ "bundled": true,
5042
+ "dev": true
5043
+ },
5044
+ "isstream": {
5045
+ "version": "0.1.2",
5046
+ "bundled": true,
5047
+ "dev": true
5048
+ },
5049
+ "json-stringify-safe": {
5050
+ "version": "5.0.1",
5051
+ "bundled": true,
5052
+ "dev": true
5053
+ },
5054
+ "mime-types": {
5055
+ "version": "2.1.11",
5056
+ "bundled": true,
5057
+ "dev": true,
5058
+ "requires": {
5059
+ "mime-db": "~1.23.0"
5060
+ },
5061
+ "dependencies": {
5062
+ "mime-db": {
5063
+ "version": "1.23.0",
5064
+ "bundled": true,
5065
+ "dev": true
5066
+ }
5067
+ }
5068
+ },
5069
+ "node-uuid": {
5070
+ "version": "1.4.7",
5071
+ "bundled": true,
5072
+ "dev": true
5073
+ },
5074
+ "oauth-sign": {
5075
+ "version": "0.8.2",
5076
+ "bundled": true,
5077
+ "dev": true
5078
+ },
5079
+ "qs": {
5080
+ "version": "6.2.1",
5081
+ "bundled": true,
5082
+ "dev": true
5083
+ },
5084
+ "stringstream": {
5085
+ "version": "0.0.5",
5086
+ "bundled": true,
5087
+ "dev": true
5088
+ },
5089
+ "tough-cookie": {
5090
+ "version": "2.3.1",
5091
+ "bundled": true,
5092
+ "dev": true
5093
+ },
5094
+ "tunnel-agent": {
5095
+ "version": "0.4.3",
5096
+ "bundled": true,
5097
+ "dev": true
5098
+ }
5099
+ }
5100
+ },
5101
+ "retry": {
5102
+ "version": "0.10.0",
5103
+ "bundled": true,
5104
+ "dev": true
5105
+ },
5106
+ "rimraf": {
5107
+ "version": "2.5.4",
5108
+ "bundled": true,
5109
+ "dev": true,
5110
+ "requires": {
5111
+ "glob": "^7.0.5"
5112
+ }
5113
+ },
5114
+ "semver": {
5115
+ "version": "5.1.0",
5116
+ "bundled": true,
5117
+ "dev": true
5118
+ },
5119
+ "sha": {
5120
+ "version": "2.0.1",
5121
+ "bundled": true,
5122
+ "dev": true,
5123
+ "requires": {
5124
+ "graceful-fs": "^4.1.2",
5125
+ "readable-stream": "^2.0.2"
5126
+ },
5127
+ "dependencies": {
5128
+ "readable-stream": {
5129
+ "version": "2.0.2",
5130
+ "bundled": true,
5131
+ "dev": true,
5132
+ "requires": {
5133
+ "core-util-is": "~1.0.0",
5134
+ "inherits": "~2.0.1",
5135
+ "isarray": "0.0.1",
5136
+ "process-nextick-args": "~1.0.0",
5137
+ "string_decoder": "~0.10.x",
5138
+ "util-deprecate": "~1.0.1"
5139
+ },
5140
+ "dependencies": {
5141
+ "core-util-is": {
5142
+ "version": "1.0.1",
5143
+ "bundled": true,
5144
+ "dev": true
5145
+ },
5146
+ "isarray": {
5147
+ "version": "0.0.1",
5148
+ "bundled": true,
5149
+ "dev": true
5150
+ },
5151
+ "process-nextick-args": {
5152
+ "version": "1.0.3",
5153
+ "bundled": true,
5154
+ "dev": true
5155
+ },
5156
+ "string_decoder": {
5157
+ "version": "0.10.31",
5158
+ "bundled": true,
5159
+ "dev": true
5160
+ },
5161
+ "util-deprecate": {
5162
+ "version": "1.0.1",
5163
+ "bundled": true,
5164
+ "dev": true
5165
+ }
5166
+ }
5167
+ }
5168
+ }
5169
+ },
5170
+ "slide": {
5171
+ "version": "1.1.6",
5172
+ "bundled": true,
5173
+ "dev": true
5174
+ },
5175
+ "sorted-object": {
5176
+ "version": "2.0.0",
5177
+ "bundled": true,
5178
+ "dev": true
5179
+ },
5180
+ "spdx-license-ids": {
5181
+ "version": "1.2.2",
5182
+ "bundled": true,
5183
+ "dev": true
5184
+ },
5185
+ "strip-ansi": {
5186
+ "version": "3.0.1",
5187
+ "bundled": true,
5188
+ "dev": true,
5189
+ "requires": {
5190
+ "ansi-regex": "^2.0.0"
5191
+ }
5192
+ },
5193
+ "tar": {
5194
+ "version": "2.2.1",
5195
+ "bundled": true,
5196
+ "dev": true,
5197
+ "requires": {
5198
+ "block-stream": "*",
5199
+ "fstream": "^1.0.2",
5200
+ "inherits": "2"
5201
+ }
5202
+ },
5203
+ "text-table": {
5204
+ "version": "0.2.0",
5205
+ "bundled": true,
5206
+ "dev": true
5207
+ },
5208
+ "uid-number": {
5209
+ "version": "0.0.6",
5210
+ "bundled": true,
5211
+ "dev": true
5212
+ },
5213
+ "umask": {
5214
+ "version": "1.1.0",
5215
+ "bundled": true,
5216
+ "dev": true
5217
+ },
5218
+ "validate-npm-package-license": {
5219
+ "version": "3.0.1",
5220
+ "bundled": true,
5221
+ "dev": true,
5222
+ "requires": {
5223
+ "spdx-correct": "~1.0.0",
5224
+ "spdx-expression-parse": "~1.0.0"
5225
+ },
5226
+ "dependencies": {
5227
+ "spdx-correct": {
5228
+ "version": "1.0.2",
5229
+ "bundled": true,
5230
+ "dev": true,
5231
+ "requires": {
5232
+ "spdx-license-ids": "^1.0.2"
5233
+ }
5234
+ },
5235
+ "spdx-expression-parse": {
5236
+ "version": "1.0.2",
5237
+ "bundled": true,
5238
+ "dev": true,
5239
+ "requires": {
5240
+ "spdx-exceptions": "^1.0.4",
5241
+ "spdx-license-ids": "^1.0.0"
5242
+ },
5243
+ "dependencies": {
5244
+ "spdx-exceptions": {
5245
+ "version": "1.0.4",
5246
+ "bundled": true,
5247
+ "dev": true
5248
+ }
5249
+ }
5250
+ }
5251
+ }
5252
+ },
5253
+ "validate-npm-package-name": {
5254
+ "version": "2.2.2",
5255
+ "bundled": true,
5256
+ "dev": true,
5257
+ "requires": {
5258
+ "builtins": "0.0.7"
5259
+ },
5260
+ "dependencies": {
5261
+ "builtins": {
5262
+ "version": "0.0.7",
5263
+ "bundled": true,
5264
+ "dev": true
5265
+ }
5266
+ }
5267
+ },
5268
+ "which": {
5269
+ "version": "1.2.11",
5270
+ "bundled": true,
5271
+ "dev": true,
5272
+ "requires": {
5273
+ "isexe": "^1.1.1"
5274
+ },
5275
+ "dependencies": {
5276
+ "isexe": {
5277
+ "version": "1.1.2",
5278
+ "bundled": true,
5279
+ "dev": true
5280
+ }
5281
+ }
5282
+ },
5283
+ "wrappy": {
5284
+ "version": "1.0.2",
5285
+ "bundled": true,
5286
+ "dev": true
5287
+ },
5288
+ "write-file-atomic": {
5289
+ "version": "1.1.4",
5290
+ "bundled": true,
5291
+ "dev": true,
5292
+ "requires": {
5293
+ "graceful-fs": "^4.1.2",
5294
+ "imurmurhash": "^0.1.4",
5295
+ "slide": "^1.1.5"
5296
+ }
5297
+ }
5298
+ }
5299
+ },
5300
+ "npmlog": {
5301
+ "version": "1.2.1",
5302
+ "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-1.2.1.tgz",
5303
+ "integrity": "sha1-KOe+YZYJtT960d0wChDWTXFiaLY=",
5304
+ "dev": true,
5305
+ "requires": {
5306
+ "ansi": "~0.3.0",
5307
+ "are-we-there-yet": "~1.0.0",
5308
+ "gauge": "~1.2.0"
5309
+ }
5310
+ },
5311
+ "number-is-nan": {
5312
+ "version": "1.0.1",
5313
+ "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz",
5314
+ "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=",
5315
+ "dev": true
5316
+ },
5317
+ "object-assign": {
5318
+ "version": "4.1.1",
5319
+ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
5320
+ "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
5321
+ "dev": true
5322
+ },
5323
+ "object-copy": {
5324
+ "version": "0.1.0",
5325
+ "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz",
5326
+ "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=",
5327
+ "dev": true,
5328
+ "requires": {
5329
+ "copy-descriptor": "^0.1.0",
5330
+ "define-property": "^0.2.5",
5331
+ "kind-of": "^3.0.3"
5332
+ },
5333
+ "dependencies": {
5334
+ "define-property": {
5335
+ "version": "0.2.5",
5336
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
5337
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
5338
+ "dev": true,
5339
+ "requires": {
5340
+ "is-descriptor": "^0.1.0"
5341
+ }
5342
+ }
5343
+ }
5344
+ },
5345
+ "object-keys": {
5346
+ "version": "1.1.1",
5347
+ "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
5348
+ "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
5349
+ "dev": true
5350
+ },
5351
+ "object-visit": {
5352
+ "version": "1.0.1",
5353
+ "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz",
5354
+ "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=",
5355
+ "dev": true,
5356
+ "requires": {
5357
+ "isobject": "^3.0.0"
5358
+ }
5359
+ },
5360
+ "object.assign": {
5361
+ "version": "4.1.0",
5362
+ "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz",
5363
+ "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==",
5364
+ "dev": true,
5365
+ "requires": {
5366
+ "define-properties": "^1.1.2",
5367
+ "function-bind": "^1.1.1",
5368
+ "has-symbols": "^1.0.0",
5369
+ "object-keys": "^1.0.11"
5370
+ }
5371
+ },
5372
+ "object.defaults": {
5373
+ "version": "1.1.0",
5374
+ "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz",
5375
+ "integrity": "sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8=",
5376
+ "dev": true,
5377
+ "requires": {
5378
+ "array-each": "^1.0.1",
5379
+ "array-slice": "^1.0.0",
5380
+ "for-own": "^1.0.0",
5381
+ "isobject": "^3.0.0"
5382
+ }
5383
+ },
5384
+ "object.map": {
5385
+ "version": "1.0.1",
5386
+ "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz",
5387
+ "integrity": "sha1-z4Plncj8wK1fQlDh94s7gb2AHTc=",
5388
+ "dev": true,
5389
+ "requires": {
5390
+ "for-own": "^1.0.0",
5391
+ "make-iterator": "^1.0.0"
5392
+ }
5393
+ },
5394
+ "object.pick": {
5395
+ "version": "1.3.0",
5396
+ "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz",
5397
+ "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=",
5398
+ "dev": true,
5399
+ "requires": {
5400
+ "isobject": "^3.0.1"
5401
+ }
5402
+ },
5403
+ "once": {
5404
+ "version": "1.4.0",
5405
+ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
5406
+ "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
5407
+ "dev": true,
5408
+ "requires": {
5409
+ "wrappy": "1"
5410
+ }
5411
+ },
5412
+ "optimist": {
5413
+ "version": "0.6.1",
5414
+ "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz",
5415
+ "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=",
5416
+ "dev": true,
5417
+ "requires": {
5418
+ "minimist": "~0.0.1",
5419
+ "wordwrap": "~0.0.2"
5420
+ },
5421
+ "dependencies": {
5422
+ "minimist": {
5423
+ "version": "0.0.10",
5424
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz",
5425
+ "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=",
5426
+ "dev": true
5427
+ }
5428
+ }
5429
+ },
5430
+ "os-browserify": {
5431
+ "version": "0.3.0",
5432
+ "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz",
5433
+ "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=",
5434
+ "dev": true
5435
+ },
5436
+ "os-homedir": {
5437
+ "version": "1.0.2",
5438
+ "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
5439
+ "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=",
5440
+ "dev": true
5441
+ },
5442
+ "os-tmpdir": {
5443
+ "version": "1.0.2",
5444
+ "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
5445
+ "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
5446
+ "dev": true
5447
+ },
5448
+ "osenv": {
5449
+ "version": "0.1.5",
5450
+ "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz",
5451
+ "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==",
5452
+ "dev": true,
5453
+ "requires": {
5454
+ "os-homedir": "^1.0.0",
5455
+ "os-tmpdir": "^1.0.0"
5456
+ }
5457
+ },
5458
+ "outpipe": {
5459
+ "version": "1.1.1",
5460
+ "resolved": "https://registry.npmjs.org/outpipe/-/outpipe-1.1.1.tgz",
5461
+ "integrity": "sha1-UM+GFjZeh+Ax4ppeyTOaPaRyX6I=",
5462
+ "dev": true,
5463
+ "requires": {
5464
+ "shell-quote": "^1.4.2"
5465
+ }
5466
+ },
5467
+ "p-limit": {
5468
+ "version": "2.3.0",
5469
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
5470
+ "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
5471
+ "dev": true,
5472
+ "requires": {
5473
+ "p-try": "^2.0.0"
5474
+ }
5475
+ },
5476
+ "p-locate": {
5477
+ "version": "3.0.0",
5478
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
5479
+ "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
5480
+ "dev": true,
5481
+ "requires": {
5482
+ "p-limit": "^2.0.0"
5483
+ }
5484
+ },
5485
+ "p-try": {
5486
+ "version": "2.2.0",
5487
+ "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
5488
+ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
5489
+ "dev": true
5490
+ },
5491
+ "pad": {
5492
+ "version": "0.0.4",
5493
+ "resolved": "https://registry.npmjs.org/pad/-/pad-0.0.4.tgz",
5494
+ "integrity": "sha1-eVgZ0v1SqLzSGcFwuG5A+rOOC4w=",
5495
+ "dev": true
5496
+ },
5497
+ "pako": {
5498
+ "version": "0.2.9",
5499
+ "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz",
5500
+ "integrity": "sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU=",
5501
+ "dev": true
5502
+ },
5503
+ "parents": {
5504
+ "version": "1.0.1",
5505
+ "resolved": "https://registry.npmjs.org/parents/-/parents-1.0.1.tgz",
5506
+ "integrity": "sha1-/t1NK/GTp3dF/nHjcdc8MwfZx1E=",
5507
+ "dev": true,
5508
+ "requires": {
5509
+ "path-platform": "~0.11.15"
5510
+ }
5511
+ },
5512
+ "parse-asn1": {
5513
+ "version": "5.1.6",
5514
+ "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz",
5515
+ "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==",
5516
+ "dev": true,
5517
+ "requires": {
5518
+ "asn1.js": "^5.2.0",
5519
+ "browserify-aes": "^1.0.0",
5520
+ "evp_bytestokey": "^1.0.0",
5521
+ "pbkdf2": "^3.0.3",
5522
+ "safe-buffer": "^5.1.1"
5523
+ }
5524
+ },
5525
+ "parse-filepath": {
5526
+ "version": "1.0.2",
5527
+ "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz",
5528
+ "integrity": "sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=",
5529
+ "dev": true,
5530
+ "requires": {
5531
+ "is-absolute": "^1.0.0",
5532
+ "map-cache": "^0.2.0",
5533
+ "path-root": "^0.1.1"
5534
+ }
5535
+ },
5536
+ "parse-json": {
5537
+ "version": "2.2.0",
5538
+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz",
5539
+ "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=",
5540
+ "dev": true,
5541
+ "requires": {
5542
+ "error-ex": "^1.2.0"
5543
+ }
5544
+ },
5545
+ "parse-passwd": {
5546
+ "version": "1.0.0",
5547
+ "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz",
5548
+ "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=",
5549
+ "dev": true
5550
+ },
5551
+ "pascalcase": {
5552
+ "version": "0.1.1",
5553
+ "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz",
5554
+ "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=",
5555
+ "dev": true
5556
+ },
5557
+ "patch-text": {
5558
+ "version": "1.0.2",
5559
+ "resolved": "https://registry.npmjs.org/patch-text/-/patch-text-1.0.2.tgz",
5560
+ "integrity": "sha1-S/NuZeUXM9bpjwz2LgkDTaoDSKw=",
5561
+ "dev": true
5562
+ },
5563
+ "path-browserify": {
5564
+ "version": "0.0.1",
5565
+ "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz",
5566
+ "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==",
5567
+ "dev": true
5568
+ },
5569
+ "path-dirname": {
5570
+ "version": "1.0.2",
5571
+ "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz",
5572
+ "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=",
5573
+ "dev": true
5574
+ },
5575
+ "path-exists": {
5576
+ "version": "3.0.0",
5577
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
5578
+ "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
5579
+ "dev": true
5580
+ },
5581
+ "path-is-absolute": {
5582
+ "version": "1.0.1",
5583
+ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
5584
+ "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
5585
+ "dev": true
5586
+ },
5587
+ "path-parse": {
5588
+ "version": "1.0.6",
5589
+ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz",
5590
+ "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==",
5591
+ "dev": true
5592
+ },
5593
+ "path-platform": {
5594
+ "version": "0.11.15",
5595
+ "resolved": "https://registry.npmjs.org/path-platform/-/path-platform-0.11.15.tgz",
5596
+ "integrity": "sha1-6GQhf3TDaFDwhSt43Hv31KVyG/I=",
5597
+ "dev": true
5598
+ },
5599
+ "path-root": {
5600
+ "version": "0.1.1",
5601
+ "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz",
5602
+ "integrity": "sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc=",
5603
+ "dev": true,
5604
+ "requires": {
5605
+ "path-root-regex": "^0.1.0"
5606
+ }
5607
+ },
5608
+ "path-root-regex": {
5609
+ "version": "0.1.2",
5610
+ "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz",
5611
+ "integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0=",
5612
+ "dev": true
5613
+ },
5614
+ "path-type": {
5615
+ "version": "1.1.0",
5616
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz",
5617
+ "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=",
5618
+ "dev": true,
5619
+ "requires": {
5620
+ "graceful-fs": "^4.1.2",
5621
+ "pify": "^2.0.0",
5622
+ "pinkie-promise": "^2.0.0"
5623
+ }
5624
+ },
5625
+ "pbkdf2": {
5626
+ "version": "3.1.1",
5627
+ "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.1.tgz",
5628
+ "integrity": "sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg==",
5629
+ "dev": true,
5630
+ "requires": {
5631
+ "create-hash": "^1.1.2",
5632
+ "create-hmac": "^1.1.4",
5633
+ "ripemd160": "^2.0.1",
5634
+ "safe-buffer": "^5.0.1",
5635
+ "sha.js": "^2.4.8"
5636
+ }
5637
+ },
5638
+ "pify": {
5639
+ "version": "2.3.0",
5640
+ "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
5641
+ "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
5642
+ "dev": true
5643
+ },
5644
+ "pinkie": {
5645
+ "version": "2.0.4",
5646
+ "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz",
5647
+ "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=",
5648
+ "dev": true
5649
+ },
5650
+ "pinkie-promise": {
5651
+ "version": "2.0.1",
5652
+ "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz",
5653
+ "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=",
5654
+ "dev": true,
5655
+ "requires": {
5656
+ "pinkie": "^2.0.0"
5657
+ }
5658
+ },
5659
+ "pkg-up": {
5660
+ "version": "3.1.0",
5661
+ "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz",
5662
+ "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==",
5663
+ "dev": true,
5664
+ "requires": {
5665
+ "find-up": "^3.0.0"
5666
+ },
5667
+ "dependencies": {
5668
+ "find-up": {
5669
+ "version": "3.0.0",
5670
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
5671
+ "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
5672
+ "dev": true,
5673
+ "requires": {
5674
+ "locate-path": "^3.0.0"
5675
+ }
5676
+ }
5677
+ }
5678
+ },
5679
+ "posix-character-classes": {
5680
+ "version": "0.1.1",
5681
+ "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz",
5682
+ "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=",
5683
+ "dev": true
5684
+ },
5685
+ "pretty-bytes": {
5686
+ "version": "3.0.1",
5687
+ "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-3.0.1.tgz",
5688
+ "integrity": "sha1-J9AAjXeAY6C0gRuzXHnxvV1fvM8=",
5689
+ "dev": true,
5690
+ "requires": {
5691
+ "number-is-nan": "^1.0.0"
5692
+ }
5693
+ },
5694
+ "process": {
5695
+ "version": "0.11.10",
5696
+ "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz",
5697
+ "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=",
5698
+ "dev": true
5699
+ },
5700
+ "process-nextick-args": {
5701
+ "version": "2.0.1",
5702
+ "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
5703
+ "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==",
5704
+ "dev": true
5705
+ },
5706
+ "public-encrypt": {
5707
+ "version": "4.0.3",
5708
+ "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz",
5709
+ "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==",
5710
+ "dev": true,
5711
+ "requires": {
5712
+ "bn.js": "^4.1.0",
5713
+ "browserify-rsa": "^4.0.0",
5714
+ "create-hash": "^1.1.0",
5715
+ "parse-asn1": "^5.0.0",
5716
+ "randombytes": "^2.0.1",
5717
+ "safe-buffer": "^5.1.2"
5718
+ },
5719
+ "dependencies": {
5720
+ "bn.js": {
5721
+ "version": "4.11.9",
5722
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz",
5723
+ "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==",
5724
+ "dev": true
5725
+ }
5726
+ }
5727
+ },
5728
+ "publish": {
5729
+ "version": "0.5.0",
5730
+ "resolved": "https://registry.npmjs.org/publish/-/publish-0.5.0.tgz",
5731
+ "integrity": "sha1-vn73r3inogUb0gDW0XeKC+K0lh8=",
5732
+ "dev": true,
5733
+ "requires": {
5734
+ "nopt": "3.x.x",
5735
+ "npm": "2.x.x",
5736
+ "npmlog": "1.x.x",
5737
+ "semver": "4.x.x"
5738
+ },
5739
+ "dependencies": {
5740
+ "nopt": {
5741
+ "version": "3.0.6",
5742
+ "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz",
5743
+ "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=",
5744
+ "dev": true,
5745
+ "requires": {
5746
+ "abbrev": "1"
5747
+ }
5748
+ }
5749
+ }
5750
+ },
5751
+ "punycode": {
5752
+ "version": "1.4.1",
5753
+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
5754
+ "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=",
5755
+ "dev": true
5756
+ },
5757
+ "qs": {
5758
+ "version": "6.9.4",
5759
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.4.tgz",
5760
+ "integrity": "sha512-A1kFqHekCTM7cz0udomYUoYNWjBebHm/5wzU/XqrBRBNWectVH0QIiN+NEcZ0Dte5hvzHwbr8+XQmguPhJ6WdQ==",
5761
+ "dev": true
5762
+ },
5763
+ "querystring": {
5764
+ "version": "0.2.0",
5765
+ "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz",
5766
+ "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=",
5767
+ "dev": true
5768
+ },
5769
+ "querystring-es3": {
5770
+ "version": "0.2.1",
5771
+ "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz",
5772
+ "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=",
5773
+ "dev": true
5774
+ },
5775
+ "randombytes": {
5776
+ "version": "2.1.0",
5777
+ "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
5778
+ "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
5779
+ "dev": true,
5780
+ "requires": {
5781
+ "safe-buffer": "^5.1.0"
5782
+ }
5783
+ },
5784
+ "randomfill": {
5785
+ "version": "1.0.4",
5786
+ "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz",
5787
+ "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==",
5788
+ "dev": true,
5789
+ "requires": {
5790
+ "randombytes": "^2.0.5",
5791
+ "safe-buffer": "^5.1.0"
5792
+ }
5793
+ },
5794
+ "raw-body": {
5795
+ "version": "1.1.7",
5796
+ "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-1.1.7.tgz",
5797
+ "integrity": "sha1-HQJ8K/oRasxmI7yo8AAWVyqH1CU=",
5798
+ "dev": true,
5799
+ "requires": {
5800
+ "bytes": "1",
5801
+ "string_decoder": "0.10"
5802
+ }
5803
+ },
5804
+ "read-only-stream": {
5805
+ "version": "2.0.0",
5806
+ "resolved": "https://registry.npmjs.org/read-only-stream/-/read-only-stream-2.0.0.tgz",
5807
+ "integrity": "sha1-JyT9aoET1zdkrCiNQ4YnDB2/F/A=",
5808
+ "dev": true,
5809
+ "requires": {
5810
+ "readable-stream": "^2.0.2"
5811
+ }
5812
+ },
5813
+ "read-pkg": {
5814
+ "version": "1.1.0",
5815
+ "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz",
5816
+ "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=",
5817
+ "dev": true,
5818
+ "requires": {
5819
+ "load-json-file": "^1.0.0",
5820
+ "normalize-package-data": "^2.3.2",
5821
+ "path-type": "^1.0.0"
5822
+ }
5823
+ },
5824
+ "read-pkg-up": {
5825
+ "version": "1.0.1",
5826
+ "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz",
5827
+ "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=",
5828
+ "dev": true,
5829
+ "requires": {
5830
+ "find-up": "^1.0.0",
5831
+ "read-pkg": "^1.0.0"
5832
+ }
5833
+ },
5834
+ "readable-stream": {
5835
+ "version": "2.3.7",
5836
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
5837
+ "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==",
5838
+ "dev": true,
5839
+ "requires": {
5840
+ "core-util-is": "~1.0.0",
5841
+ "inherits": "~2.0.3",
5842
+ "isarray": "~1.0.0",
5843
+ "process-nextick-args": "~2.0.0",
5844
+ "safe-buffer": "~5.1.1",
5845
+ "string_decoder": "~1.1.1",
5846
+ "util-deprecate": "~1.0.1"
5847
+ },
5848
+ "dependencies": {
5849
+ "isarray": {
5850
+ "version": "1.0.0",
5851
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
5852
+ "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
5853
+ "dev": true
5854
+ },
5855
+ "string_decoder": {
5856
+ "version": "1.1.1",
5857
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
5858
+ "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
5859
+ "dev": true,
5860
+ "requires": {
5861
+ "safe-buffer": "~5.1.0"
5862
+ }
5863
+ }
5864
+ }
5865
+ },
5866
+ "readdirp": {
5867
+ "version": "2.2.1",
5868
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz",
5869
+ "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==",
5870
+ "dev": true,
5871
+ "requires": {
5872
+ "graceful-fs": "^4.1.11",
5873
+ "micromatch": "^3.1.10",
5874
+ "readable-stream": "^2.0.2"
5875
+ }
5876
+ },
5877
+ "rechoir": {
5878
+ "version": "0.6.2",
5879
+ "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz",
5880
+ "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=",
5881
+ "dev": true,
5882
+ "requires": {
5883
+ "resolve": "^1.1.6"
5884
+ }
5885
+ },
5886
+ "redent": {
5887
+ "version": "1.0.0",
5888
+ "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz",
5889
+ "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=",
5890
+ "dev": true,
5891
+ "requires": {
5892
+ "indent-string": "^2.1.0",
5893
+ "strip-indent": "^1.0.1"
5894
+ }
5895
+ },
5896
+ "regex-not": {
5897
+ "version": "1.0.2",
5898
+ "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz",
5899
+ "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==",
5900
+ "dev": true,
5901
+ "requires": {
5902
+ "extend-shallow": "^3.0.2",
5903
+ "safe-regex": "^1.1.0"
5904
+ }
5905
+ },
5906
+ "remove-trailing-separator": {
5907
+ "version": "1.1.0",
5908
+ "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz",
5909
+ "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=",
5910
+ "dev": true
5911
+ },
5912
+ "rename-function-calls": {
5913
+ "version": "0.1.1",
5914
+ "resolved": "https://registry.npmjs.org/rename-function-calls/-/rename-function-calls-0.1.1.tgz",
5915
+ "integrity": "sha1-f4M2nAB6MAf2q+MDPM+BaGoQjgE=",
5916
+ "dev": true,
5917
+ "requires": {
5918
+ "detective": "~3.1.0"
5919
+ },
5920
+ "dependencies": {
5921
+ "detective": {
5922
+ "version": "3.1.0",
5923
+ "resolved": "https://registry.npmjs.org/detective/-/detective-3.1.0.tgz",
5924
+ "integrity": "sha1-d3gkRKt1K4jKG+Lp0KA5Xx2iXu0=",
5925
+ "dev": true,
5926
+ "requires": {
5927
+ "escodegen": "~1.1.0",
5928
+ "esprima-fb": "3001.1.0-dev-harmony-fb"
5929
+ }
5930
+ },
5931
+ "esprima-fb": {
5932
+ "version": "3001.1.0-dev-harmony-fb",
5933
+ "resolved": "https://registry.npmjs.org/esprima-fb/-/esprima-fb-3001.0001.0000-dev-harmony-fb.tgz",
5934
+ "integrity": "sha1-t303q8046gt3Qmu4vCkizmtCZBE=",
5935
+ "dev": true
5936
+ }
5937
+ }
5938
+ },
5939
+ "repeat-element": {
5940
+ "version": "1.1.3",
5941
+ "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz",
5942
+ "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==",
5943
+ "dev": true
5944
+ },
5945
+ "repeat-string": {
5946
+ "version": "1.6.1",
5947
+ "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
5948
+ "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=",
5949
+ "dev": true
5950
+ },
5951
+ "replace-requires": {
5952
+ "version": "1.0.4",
5953
+ "resolved": "https://registry.npmjs.org/replace-requires/-/replace-requires-1.0.4.tgz",
5954
+ "integrity": "sha1-AUtzMLa54lV7cQQ7ZvsCZgw79mc=",
5955
+ "dev": true,
5956
+ "requires": {
5957
+ "detective": "^4.5.0",
5958
+ "has-require": "~1.2.1",
5959
+ "patch-text": "~1.0.2",
5960
+ "xtend": "~4.0.0"
5961
+ }
5962
+ },
5963
+ "resolve": {
5964
+ "version": "1.17.0",
5965
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz",
5966
+ "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==",
5967
+ "dev": true,
5968
+ "requires": {
5969
+ "path-parse": "^1.0.6"
5970
+ }
5971
+ },
5972
+ "resolve-dir": {
5973
+ "version": "1.0.1",
5974
+ "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz",
5975
+ "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=",
5976
+ "dev": true,
5977
+ "requires": {
5978
+ "expand-tilde": "^2.0.0",
5979
+ "global-modules": "^1.0.0"
5980
+ }
5981
+ },
5982
+ "resolve-from": {
5983
+ "version": "5.0.0",
5984
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
5985
+ "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
5986
+ "dev": true
5987
+ },
5988
+ "resolve-pkg": {
5989
+ "version": "2.0.0",
5990
+ "resolved": "https://registry.npmjs.org/resolve-pkg/-/resolve-pkg-2.0.0.tgz",
5991
+ "integrity": "sha512-+1lzwXehGCXSeryaISr6WujZzowloigEofRB+dj75y9RRa/obVcYgbHJd53tdYw8pvZj8GojXaaENws8Ktw/hQ==",
5992
+ "dev": true,
5993
+ "requires": {
5994
+ "resolve-from": "^5.0.0"
5995
+ }
5996
+ },
5997
+ "resolve-url": {
5998
+ "version": "0.2.1",
5999
+ "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz",
6000
+ "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=",
6001
+ "dev": true
6002
+ },
6003
+ "ret": {
6004
+ "version": "0.1.15",
6005
+ "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz",
6006
+ "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==",
6007
+ "dev": true
6008
+ },
6009
+ "right-align": {
6010
+ "version": "0.1.3",
6011
+ "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz",
6012
+ "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=",
6013
+ "dev": true,
6014
+ "requires": {
6015
+ "align-text": "^0.1.1"
6016
+ }
6017
+ },
6018
+ "rimraf": {
6019
+ "version": "3.0.2",
6020
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
6021
+ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
6022
+ "dev": true,
6023
+ "requires": {
6024
+ "glob": "^7.1.3"
6025
+ }
6026
+ },
6027
+ "ripemd160": {
6028
+ "version": "2.0.2",
6029
+ "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz",
6030
+ "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==",
6031
+ "dev": true,
6032
+ "requires": {
6033
+ "hash-base": "^3.0.0",
6034
+ "inherits": "^2.0.1"
6035
+ }
6036
+ },
6037
+ "safe-buffer": {
6038
+ "version": "5.1.2",
6039
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
6040
+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
6041
+ "dev": true
6042
+ },
6043
+ "safe-json-parse": {
6044
+ "version": "1.0.1",
6045
+ "resolved": "https://registry.npmjs.org/safe-json-parse/-/safe-json-parse-1.0.1.tgz",
6046
+ "integrity": "sha1-PnZyPjjf3aE8mx0poeB//uSzC1c=",
6047
+ "dev": true
6048
+ },
6049
+ "safe-regex": {
6050
+ "version": "1.1.0",
6051
+ "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
6052
+ "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=",
6053
+ "dev": true,
6054
+ "requires": {
6055
+ "ret": "~0.1.10"
6056
+ }
6057
+ },
6058
+ "safer-buffer": {
6059
+ "version": "2.1.2",
6060
+ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
6061
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
6062
+ "dev": true
6063
+ },
6064
+ "semver": {
6065
+ "version": "4.3.6",
6066
+ "resolved": "https://registry.npmjs.org/semver/-/semver-4.3.6.tgz",
6067
+ "integrity": "sha1-MAvG4OhjdPe6YQaLWx7NV/xlMto=",
6068
+ "dev": true
6069
+ },
6070
+ "set-value": {
6071
+ "version": "2.0.1",
6072
+ "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz",
6073
+ "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==",
6074
+ "dev": true,
6075
+ "requires": {
6076
+ "extend-shallow": "^2.0.1",
6077
+ "is-extendable": "^0.1.1",
6078
+ "is-plain-object": "^2.0.3",
6079
+ "split-string": "^3.0.1"
6080
+ },
6081
+ "dependencies": {
6082
+ "extend-shallow": {
6083
+ "version": "2.0.1",
6084
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
6085
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
6086
+ "dev": true,
6087
+ "requires": {
6088
+ "is-extendable": "^0.1.0"
6089
+ }
6090
+ }
6091
+ }
6092
+ },
6093
+ "sha.js": {
6094
+ "version": "2.4.11",
6095
+ "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
6096
+ "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
6097
+ "dev": true,
6098
+ "requires": {
6099
+ "inherits": "^2.0.1",
6100
+ "safe-buffer": "^5.0.1"
6101
+ }
6102
+ },
6103
+ "shasum": {
6104
+ "version": "1.0.2",
6105
+ "resolved": "https://registry.npmjs.org/shasum/-/shasum-1.0.2.tgz",
6106
+ "integrity": "sha1-5wEjENj0F/TetXEhUOVni4euVl8=",
6107
+ "dev": true,
6108
+ "requires": {
6109
+ "json-stable-stringify": "~0.0.0",
6110
+ "sha.js": "~2.4.4"
6111
+ }
6112
+ },
6113
+ "shasum-object": {
6114
+ "version": "1.0.0",
6115
+ "resolved": "https://registry.npmjs.org/shasum-object/-/shasum-object-1.0.0.tgz",
6116
+ "integrity": "sha512-Iqo5rp/3xVi6M4YheapzZhhGPVs0yZwHj7wvwQ1B9z8H6zk+FEnI7y3Teq7qwnekfEhu8WmG2z0z4iWZaxLWVg==",
6117
+ "dev": true,
6118
+ "requires": {
6119
+ "fast-safe-stringify": "^2.0.7"
6120
+ }
6121
+ },
6122
+ "shell-quote": {
6123
+ "version": "1.7.2",
6124
+ "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.2.tgz",
6125
+ "integrity": "sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg==",
6126
+ "dev": true
6127
+ },
6128
+ "shelljs": {
6129
+ "version": "0.3.0",
6130
+ "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.3.0.tgz",
6131
+ "integrity": "sha1-NZbmMHp4FUT1kfN9phg2DzHbV7E=",
6132
+ "dev": true
6133
+ },
6134
+ "signal-exit": {
6135
+ "version": "3.0.3",
6136
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz",
6137
+ "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==",
6138
+ "dev": true
6139
+ },
6140
+ "simple-concat": {
6141
+ "version": "1.0.1",
6142
+ "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz",
6143
+ "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==",
6144
+ "dev": true
6145
+ },
6146
+ "snapdragon": {
6147
+ "version": "0.8.2",
6148
+ "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz",
6149
+ "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==",
6150
+ "dev": true,
6151
+ "requires": {
6152
+ "base": "^0.11.1",
6153
+ "debug": "^2.2.0",
6154
+ "define-property": "^0.2.5",
6155
+ "extend-shallow": "^2.0.1",
6156
+ "map-cache": "^0.2.2",
6157
+ "source-map": "^0.5.6",
6158
+ "source-map-resolve": "^0.5.0",
6159
+ "use": "^3.1.0"
6160
+ },
6161
+ "dependencies": {
6162
+ "define-property": {
6163
+ "version": "0.2.5",
6164
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
6165
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
6166
+ "dev": true,
6167
+ "requires": {
6168
+ "is-descriptor": "^0.1.0"
6169
+ }
6170
+ },
6171
+ "extend-shallow": {
6172
+ "version": "2.0.1",
6173
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
6174
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
6175
+ "dev": true,
6176
+ "requires": {
6177
+ "is-extendable": "^0.1.0"
6178
+ }
6179
+ }
6180
+ }
6181
+ },
6182
+ "snapdragon-node": {
6183
+ "version": "2.1.1",
6184
+ "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz",
6185
+ "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==",
6186
+ "dev": true,
6187
+ "requires": {
6188
+ "define-property": "^1.0.0",
6189
+ "isobject": "^3.0.0",
6190
+ "snapdragon-util": "^3.0.1"
6191
+ },
6192
+ "dependencies": {
6193
+ "define-property": {
6194
+ "version": "1.0.0",
6195
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
6196
+ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
6197
+ "dev": true,
6198
+ "requires": {
6199
+ "is-descriptor": "^1.0.0"
6200
+ }
6201
+ },
6202
+ "is-accessor-descriptor": {
6203
+ "version": "1.0.0",
6204
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
6205
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
6206
+ "dev": true,
6207
+ "requires": {
6208
+ "kind-of": "^6.0.0"
6209
+ }
6210
+ },
6211
+ "is-data-descriptor": {
6212
+ "version": "1.0.0",
6213
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
6214
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
6215
+ "dev": true,
6216
+ "requires": {
6217
+ "kind-of": "^6.0.0"
6218
+ }
6219
+ },
6220
+ "is-descriptor": {
6221
+ "version": "1.0.2",
6222
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
6223
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
6224
+ "dev": true,
6225
+ "requires": {
6226
+ "is-accessor-descriptor": "^1.0.0",
6227
+ "is-data-descriptor": "^1.0.0",
6228
+ "kind-of": "^6.0.2"
6229
+ }
6230
+ },
6231
+ "kind-of": {
6232
+ "version": "6.0.3",
6233
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
6234
+ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
6235
+ "dev": true
6236
+ }
6237
+ }
6238
+ },
6239
+ "snapdragon-util": {
6240
+ "version": "3.0.1",
6241
+ "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz",
6242
+ "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==",
6243
+ "dev": true,
6244
+ "requires": {
6245
+ "kind-of": "^3.2.0"
6246
+ }
6247
+ },
6248
+ "source-map": {
6249
+ "version": "0.5.7",
6250
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
6251
+ "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
6252
+ "dev": true
6253
+ },
6254
+ "source-map-resolve": {
6255
+ "version": "0.5.3",
6256
+ "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz",
6257
+ "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==",
6258
+ "dev": true,
6259
+ "requires": {
6260
+ "atob": "^2.1.2",
6261
+ "decode-uri-component": "^0.2.0",
6262
+ "resolve-url": "^0.2.1",
6263
+ "source-map-url": "^0.4.0",
6264
+ "urix": "^0.1.0"
6265
+ }
6266
+ },
6267
+ "source-map-url": {
6268
+ "version": "0.4.0",
6269
+ "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz",
6270
+ "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=",
6271
+ "dev": true
6272
+ },
6273
+ "spdx-correct": {
6274
+ "version": "3.1.1",
6275
+ "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz",
6276
+ "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==",
6277
+ "dev": true,
6278
+ "requires": {
6279
+ "spdx-expression-parse": "^3.0.0",
6280
+ "spdx-license-ids": "^3.0.0"
6281
+ }
6282
+ },
6283
+ "spdx-exceptions": {
6284
+ "version": "2.3.0",
6285
+ "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz",
6286
+ "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==",
6287
+ "dev": true
6288
+ },
6289
+ "spdx-expression-parse": {
6290
+ "version": "3.0.1",
6291
+ "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz",
6292
+ "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==",
6293
+ "dev": true,
6294
+ "requires": {
6295
+ "spdx-exceptions": "^2.1.0",
6296
+ "spdx-license-ids": "^3.0.0"
6297
+ }
6298
+ },
6299
+ "spdx-license-ids": {
6300
+ "version": "3.0.5",
6301
+ "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz",
6302
+ "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==",
6303
+ "dev": true
6304
+ },
6305
+ "split-string": {
6306
+ "version": "3.1.0",
6307
+ "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz",
6308
+ "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==",
6309
+ "dev": true,
6310
+ "requires": {
6311
+ "extend-shallow": "^3.0.0"
6312
+ }
6313
+ },
6314
+ "sprintf-js": {
6315
+ "version": "1.1.2",
6316
+ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz",
6317
+ "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==",
6318
+ "dev": true
6319
+ },
6320
+ "stack-trace": {
6321
+ "version": "0.0.10",
6322
+ "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz",
6323
+ "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=",
6324
+ "dev": true
6325
+ },
6326
+ "static-extend": {
6327
+ "version": "0.1.2",
6328
+ "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz",
6329
+ "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=",
6330
+ "dev": true,
6331
+ "requires": {
6332
+ "define-property": "^0.2.5",
6333
+ "object-copy": "^0.1.0"
6334
+ },
6335
+ "dependencies": {
6336
+ "define-property": {
6337
+ "version": "0.2.5",
6338
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
6339
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
6340
+ "dev": true,
6341
+ "requires": {
6342
+ "is-descriptor": "^0.1.0"
6343
+ }
6344
+ }
6345
+ }
6346
+ },
6347
+ "stream-browserify": {
6348
+ "version": "2.0.2",
6349
+ "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz",
6350
+ "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==",
6351
+ "dev": true,
6352
+ "requires": {
6353
+ "inherits": "~2.0.1",
6354
+ "readable-stream": "^2.0.2"
6355
+ }
6356
+ },
6357
+ "stream-combiner2": {
6358
+ "version": "1.1.1",
6359
+ "resolved": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz",
6360
+ "integrity": "sha1-+02KFCDqNidk4hrUeAOXvry0HL4=",
6361
+ "dev": true,
6362
+ "requires": {
6363
+ "duplexer2": "~0.1.0",
6364
+ "readable-stream": "^2.0.2"
6365
+ }
6366
+ },
6367
+ "stream-http": {
6368
+ "version": "3.1.1",
6369
+ "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.1.1.tgz",
6370
+ "integrity": "sha512-S7OqaYu0EkFpgeGFb/NPOoPLxFko7TPqtEeFg5DXPB4v/KETHG0Ln6fRFrNezoelpaDKmycEmmZ81cC9DAwgYg==",
6371
+ "dev": true,
6372
+ "requires": {
6373
+ "builtin-status-codes": "^3.0.0",
6374
+ "inherits": "^2.0.4",
6375
+ "readable-stream": "^3.6.0",
6376
+ "xtend": "^4.0.2"
6377
+ },
6378
+ "dependencies": {
6379
+ "readable-stream": {
6380
+ "version": "3.6.0",
6381
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
6382
+ "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
6383
+ "dev": true,
6384
+ "requires": {
6385
+ "inherits": "^2.0.3",
6386
+ "string_decoder": "^1.1.1",
6387
+ "util-deprecate": "^1.0.1"
6388
+ }
6389
+ },
6390
+ "safe-buffer": {
6391
+ "version": "5.2.1",
6392
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
6393
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
6394
+ "dev": true
6395
+ },
6396
+ "string_decoder": {
6397
+ "version": "1.3.0",
6398
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
6399
+ "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
6400
+ "dev": true,
6401
+ "requires": {
6402
+ "safe-buffer": "~5.2.0"
6403
+ }
6404
+ }
6405
+ }
6406
+ },
6407
+ "stream-splicer": {
6408
+ "version": "2.0.1",
6409
+ "resolved": "https://registry.npmjs.org/stream-splicer/-/stream-splicer-2.0.1.tgz",
6410
+ "integrity": "sha512-Xizh4/NPuYSyAXyT7g8IvdJ9HJpxIGL9PjyhtywCZvvP0OPIdqyrr4dMikeuvY8xahpdKEBlBTySe583totajg==",
6411
+ "dev": true,
6412
+ "requires": {
6413
+ "inherits": "^2.0.1",
6414
+ "readable-stream": "^2.0.2"
6415
+ }
6416
+ },
6417
+ "string-template": {
6418
+ "version": "0.2.1",
6419
+ "resolved": "https://registry.npmjs.org/string-template/-/string-template-0.2.1.tgz",
6420
+ "integrity": "sha1-QpMuWYo1LQH8IuwzZ9nYTuxsmt0=",
6421
+ "dev": true
6422
+ },
6423
+ "string_decoder": {
6424
+ "version": "0.10.31",
6425
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
6426
+ "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=",
6427
+ "dev": true
6428
+ },
6429
+ "strip-ansi": {
6430
+ "version": "3.0.1",
6431
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
6432
+ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
6433
+ "dev": true,
6434
+ "requires": {
6435
+ "ansi-regex": "^2.0.0"
6436
+ }
6437
+ },
6438
+ "strip-bom": {
6439
+ "version": "2.0.0",
6440
+ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
6441
+ "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
6442
+ "dev": true,
6443
+ "requires": {
6444
+ "is-utf8": "^0.2.0"
6445
+ }
6446
+ },
6447
+ "strip-indent": {
6448
+ "version": "1.0.1",
6449
+ "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz",
6450
+ "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=",
6451
+ "dev": true,
6452
+ "requires": {
6453
+ "get-stdin": "^4.0.1"
6454
+ }
6455
+ },
6456
+ "strip-json-comments": {
6457
+ "version": "1.0.4",
6458
+ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.4.tgz",
6459
+ "integrity": "sha1-HhX7ysl9Pumb8tc7TGVrCCu6+5E=",
6460
+ "dev": true
6461
+ },
6462
+ "subarg": {
6463
+ "version": "1.0.0",
6464
+ "resolved": "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz",
6465
+ "integrity": "sha1-9izxdYHplrSPyWVpn1TAauJouNI=",
6466
+ "dev": true,
6467
+ "requires": {
6468
+ "minimist": "^1.1.0"
6469
+ }
6470
+ },
6471
+ "supports-color": {
6472
+ "version": "2.0.0",
6473
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
6474
+ "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=",
6475
+ "dev": true
6476
+ },
6477
+ "syntax-error": {
6478
+ "version": "1.4.0",
6479
+ "resolved": "https://registry.npmjs.org/syntax-error/-/syntax-error-1.4.0.tgz",
6480
+ "integrity": "sha512-YPPlu67mdnHGTup2A8ff7BC2Pjq0e0Yp/IyTFN03zWO0RcK07uLcbi7C2KpGR2FvWbaB0+bfE27a+sBKebSo7w==",
6481
+ "dev": true,
6482
+ "requires": {
6483
+ "acorn-node": "^1.2.0"
6484
+ }
6485
+ },
6486
+ "ternary": {
6487
+ "version": "1.0.0",
6488
+ "resolved": "https://registry.npmjs.org/ternary/-/ternary-1.0.0.tgz",
6489
+ "integrity": "sha1-RXAnJWCMlJnUapYQ6bDkn/JveJ4=",
6490
+ "dev": true
6491
+ },
6492
+ "text-table": {
6493
+ "version": "0.2.0",
6494
+ "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
6495
+ "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=",
6496
+ "dev": true
6497
+ },
6498
+ "through": {
6499
+ "version": "2.3.8",
6500
+ "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
6501
+ "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
6502
+ "dev": true
6503
+ },
6504
+ "through2": {
6505
+ "version": "2.0.5",
6506
+ "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
6507
+ "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==",
6508
+ "dev": true,
6509
+ "requires": {
6510
+ "readable-stream": "~2.3.6",
6511
+ "xtend": "~4.0.1"
6512
+ }
6513
+ },
6514
+ "timers-browserify": {
6515
+ "version": "1.4.2",
6516
+ "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-1.4.2.tgz",
6517
+ "integrity": "sha1-ycWLV1voQHN1y14kYtrO50NZ9B0=",
6518
+ "dev": true,
6519
+ "requires": {
6520
+ "process": "~0.11.0"
6521
+ }
6522
+ },
6523
+ "tiny-lr": {
6524
+ "version": "1.1.1",
6525
+ "resolved": "https://registry.npmjs.org/tiny-lr/-/tiny-lr-1.1.1.tgz",
6526
+ "integrity": "sha512-44yhA3tsaRoMOjQQ+5v5mVdqef+kH6Qze9jTpqtVufgYjYt08zyZAwNwwVBj3i1rJMnR52IxOW0LK0vBzgAkuA==",
6527
+ "dev": true,
6528
+ "requires": {
6529
+ "body": "^5.1.0",
6530
+ "debug": "^3.1.0",
6531
+ "faye-websocket": "~0.10.0",
6532
+ "livereload-js": "^2.3.0",
6533
+ "object-assign": "^4.1.0",
6534
+ "qs": "^6.4.0"
6535
+ },
6536
+ "dependencies": {
6537
+ "debug": {
6538
+ "version": "3.2.6",
6539
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
6540
+ "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==",
6541
+ "dev": true,
6542
+ "requires": {
6543
+ "ms": "^2.1.1"
6544
+ }
6545
+ },
6546
+ "ms": {
6547
+ "version": "2.1.2",
6548
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
6549
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
6550
+ "dev": true
6551
+ }
6552
+ }
6553
+ },
6554
+ "tmp": {
6555
+ "version": "0.0.33",
6556
+ "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
6557
+ "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
6558
+ "dev": true,
6559
+ "requires": {
6560
+ "os-tmpdir": "~1.0.2"
6561
+ }
6562
+ },
6563
+ "to-object-path": {
6564
+ "version": "0.3.0",
6565
+ "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz",
6566
+ "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=",
6567
+ "dev": true,
6568
+ "requires": {
6569
+ "kind-of": "^3.0.2"
6570
+ }
6571
+ },
6572
+ "to-regex": {
6573
+ "version": "3.0.2",
6574
+ "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz",
6575
+ "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==",
6576
+ "dev": true,
6577
+ "requires": {
6578
+ "define-property": "^2.0.2",
6579
+ "extend-shallow": "^3.0.2",
6580
+ "regex-not": "^1.0.2",
6581
+ "safe-regex": "^1.1.0"
6582
+ }
6583
+ },
6584
+ "to-regex-range": {
6585
+ "version": "2.1.1",
6586
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz",
6587
+ "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=",
6588
+ "dev": true,
6589
+ "requires": {
6590
+ "is-number": "^3.0.0",
6591
+ "repeat-string": "^1.6.1"
6592
+ }
6593
+ },
6594
+ "transformify": {
6595
+ "version": "0.1.2",
6596
+ "resolved": "https://registry.npmjs.org/transformify/-/transformify-0.1.2.tgz",
6597
+ "integrity": "sha1-mk9CoVRDPdcnuAV1Qoo8nlSJ6/E=",
6598
+ "dev": true,
6599
+ "requires": {
6600
+ "readable-stream": "~1.1.9"
6601
+ },
6602
+ "dependencies": {
6603
+ "readable-stream": {
6604
+ "version": "1.1.14",
6605
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
6606
+ "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
6607
+ "dev": true,
6608
+ "requires": {
6609
+ "core-util-is": "~1.0.0",
6610
+ "inherits": "~2.0.1",
6611
+ "isarray": "0.0.1",
6612
+ "string_decoder": "~0.10.x"
6613
+ }
6614
+ }
6615
+ }
6616
+ },
6617
+ "trim-newlines": {
6618
+ "version": "1.0.0",
6619
+ "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz",
6620
+ "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=",
6621
+ "dev": true
6622
+ },
6623
+ "tty-browserify": {
6624
+ "version": "0.0.1",
6625
+ "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz",
6626
+ "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==",
6627
+ "dev": true
6628
+ },
6629
+ "typedarray": {
6630
+ "version": "0.0.6",
6631
+ "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
6632
+ "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=",
6633
+ "dev": true
6634
+ },
6635
+ "uglify-js": {
6636
+ "version": "2.8.29",
6637
+ "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz",
6638
+ "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=",
6639
+ "dev": true,
6640
+ "requires": {
6641
+ "source-map": "~0.5.1",
6642
+ "uglify-to-browserify": "~1.0.0",
6643
+ "yargs": "~3.10.0"
6644
+ },
6645
+ "dependencies": {
6646
+ "window-size": {
6647
+ "version": "0.1.0",
6648
+ "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz",
6649
+ "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=",
6650
+ "dev": true
6651
+ },
6652
+ "yargs": {
6653
+ "version": "3.10.0",
6654
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz",
6655
+ "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=",
6656
+ "dev": true,
6657
+ "requires": {
6658
+ "camelcase": "^1.0.2",
6659
+ "cliui": "^2.1.0",
6660
+ "decamelize": "^1.0.0",
6661
+ "window-size": "0.1.0"
6662
+ }
6663
+ }
6664
+ }
6665
+ },
6666
+ "uglify-to-browserify": {
6667
+ "version": "1.0.2",
6668
+ "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz",
6669
+ "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=",
6670
+ "dev": true,
6671
+ "optional": true
6672
+ },
6673
+ "umd": {
6674
+ "version": "3.0.3",
6675
+ "resolved": "https://registry.npmjs.org/umd/-/umd-3.0.3.tgz",
6676
+ "integrity": "sha512-4IcGSufhFshvLNcMCV80UnQVlZ5pMOC8mvNPForqwA4+lzYQuetTESLDQkeLmihq8bRcnpbQa48Wb8Lh16/xow==",
6677
+ "dev": true
6678
+ },
6679
+ "unc-path-regex": {
6680
+ "version": "0.1.2",
6681
+ "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz",
6682
+ "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=",
6683
+ "dev": true
6684
+ },
6685
+ "undeclared-identifiers": {
6686
+ "version": "1.1.3",
6687
+ "resolved": "https://registry.npmjs.org/undeclared-identifiers/-/undeclared-identifiers-1.1.3.tgz",
6688
+ "integrity": "sha512-pJOW4nxjlmfwKApE4zvxLScM/njmwj/DiUBv7EabwE4O8kRUy+HIwxQtZLBPll/jx1LJyBcqNfB3/cpv9EZwOw==",
6689
+ "dev": true,
6690
+ "requires": {
6691
+ "acorn-node": "^1.3.0",
6692
+ "dash-ast": "^1.0.0",
6693
+ "get-assigned-identifiers": "^1.2.0",
6694
+ "simple-concat": "^1.0.0",
6695
+ "xtend": "^4.0.1"
6696
+ }
6697
+ },
6698
+ "underscore.string": {
6699
+ "version": "3.3.5",
6700
+ "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.3.5.tgz",
6701
+ "integrity": "sha512-g+dpmgn+XBneLmXXo+sGlW5xQEt4ErkS3mgeN2GFbremYeMBSJKr9Wf2KJplQVaiPY/f7FN6atosWYNm9ovrYg==",
6702
+ "dev": true,
6703
+ "requires": {
6704
+ "sprintf-js": "^1.0.3",
6705
+ "util-deprecate": "^1.0.2"
6706
+ }
6707
+ },
6708
+ "union-value": {
6709
+ "version": "1.0.1",
6710
+ "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz",
6711
+ "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==",
6712
+ "dev": true,
6713
+ "requires": {
6714
+ "arr-union": "^3.1.0",
6715
+ "get-value": "^2.0.6",
6716
+ "is-extendable": "^0.1.1",
6717
+ "set-value": "^2.0.1"
6718
+ }
6719
+ },
6720
+ "unset-value": {
6721
+ "version": "1.0.0",
6722
+ "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz",
6723
+ "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=",
6724
+ "dev": true,
6725
+ "requires": {
6726
+ "has-value": "^0.3.1",
6727
+ "isobject": "^3.0.0"
6728
+ },
6729
+ "dependencies": {
6730
+ "has-value": {
6731
+ "version": "0.3.1",
6732
+ "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz",
6733
+ "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=",
6734
+ "dev": true,
6735
+ "requires": {
6736
+ "get-value": "^2.0.3",
6737
+ "has-values": "^0.1.4",
6738
+ "isobject": "^2.0.0"
6739
+ },
6740
+ "dependencies": {
6741
+ "isobject": {
6742
+ "version": "2.1.0",
6743
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
6744
+ "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=",
6745
+ "dev": true,
6746
+ "requires": {
6747
+ "isarray": "1.0.0"
6748
+ }
6749
+ }
6750
+ }
6751
+ },
6752
+ "has-values": {
6753
+ "version": "0.1.4",
6754
+ "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz",
6755
+ "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=",
6756
+ "dev": true
6757
+ },
6758
+ "isarray": {
6759
+ "version": "1.0.0",
6760
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
6761
+ "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
6762
+ "dev": true
6763
+ }
6764
+ }
6765
+ },
6766
+ "upath": {
6767
+ "version": "1.2.0",
6768
+ "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz",
6769
+ "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==",
6770
+ "dev": true
6771
+ },
6772
+ "uri-path": {
6773
+ "version": "1.0.0",
6774
+ "resolved": "https://registry.npmjs.org/uri-path/-/uri-path-1.0.0.tgz",
6775
+ "integrity": "sha1-l0fwGDWJM8Md4PzP2C0TjmcmLjI=",
6776
+ "dev": true
6777
+ },
6778
+ "urix": {
6779
+ "version": "0.1.0",
6780
+ "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz",
6781
+ "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=",
6782
+ "dev": true
6783
+ },
6784
+ "url": {
6785
+ "version": "0.11.0",
6786
+ "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz",
6787
+ "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=",
6788
+ "dev": true,
6789
+ "requires": {
6790
+ "punycode": "1.3.2",
6791
+ "querystring": "0.2.0"
6792
+ },
6793
+ "dependencies": {
6794
+ "punycode": {
6795
+ "version": "1.3.2",
6796
+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz",
6797
+ "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=",
6798
+ "dev": true
6799
+ }
6800
+ }
6801
+ },
6802
+ "use": {
6803
+ "version": "3.1.1",
6804
+ "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz",
6805
+ "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==",
6806
+ "dev": true
6807
+ },
6808
+ "util": {
6809
+ "version": "0.10.4",
6810
+ "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz",
6811
+ "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==",
6812
+ "dev": true,
6813
+ "requires": {
6814
+ "inherits": "2.0.3"
6815
+ },
6816
+ "dependencies": {
6817
+ "inherits": {
6818
+ "version": "2.0.3",
6819
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
6820
+ "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
6821
+ "dev": true
6822
+ }
6823
+ }
6824
+ },
6825
+ "util-deprecate": {
6826
+ "version": "1.0.2",
6827
+ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
6828
+ "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
6829
+ "dev": true
6830
+ },
6831
+ "v8flags": {
6832
+ "version": "3.1.3",
6833
+ "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.1.3.tgz",
6834
+ "integrity": "sha512-amh9CCg3ZxkzQ48Mhcb8iX7xpAfYJgePHxWMQCBWECpOSqJUXgY26ncA61UTV0BkPqfhcy6mzwCIoP4ygxpW8w==",
6835
+ "dev": true,
6836
+ "requires": {
6837
+ "homedir-polyfill": "^1.0.1"
6838
+ }
6839
+ },
6840
+ "validate-npm-package-license": {
6841
+ "version": "3.0.4",
6842
+ "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
6843
+ "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
6844
+ "dev": true,
6845
+ "requires": {
6846
+ "spdx-correct": "^3.0.0",
6847
+ "spdx-expression-parse": "^3.0.0"
6848
+ }
6849
+ },
6850
+ "vm-browserify": {
6851
+ "version": "1.1.2",
6852
+ "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz",
6853
+ "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==",
6854
+ "dev": true
6855
+ },
6856
+ "watchify": {
6857
+ "version": "3.11.1",
6858
+ "resolved": "https://registry.npmjs.org/watchify/-/watchify-3.11.1.tgz",
6859
+ "integrity": "sha512-WwnUClyFNRMB2NIiHgJU9RQPQNqVeFk7OmZaWf5dC5EnNa0Mgr7imBydbaJ7tGTuPM2hz1Cb4uiBvK9NVxMfog==",
6860
+ "dev": true,
6861
+ "requires": {
6862
+ "anymatch": "^2.0.0",
6863
+ "browserify": "^16.1.0",
6864
+ "chokidar": "^2.1.1",
6865
+ "defined": "^1.0.0",
6866
+ "outpipe": "^1.1.0",
6867
+ "through2": "^2.0.0",
6868
+ "xtend": "^4.0.0"
6869
+ }
6870
+ },
6871
+ "websocket-driver": {
6872
+ "version": "0.7.4",
6873
+ "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz",
6874
+ "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==",
6875
+ "dev": true,
6876
+ "requires": {
6877
+ "http-parser-js": ">=0.5.1",
6878
+ "safe-buffer": ">=5.1.0",
6879
+ "websocket-extensions": ">=0.1.1"
6880
+ }
6881
+ },
6882
+ "websocket-extensions": {
6883
+ "version": "0.1.4",
6884
+ "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz",
6885
+ "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==",
6886
+ "dev": true
6887
+ },
6888
+ "which": {
6889
+ "version": "1.0.9",
6890
+ "resolved": "https://registry.npmjs.org/which/-/which-1.0.9.tgz",
6891
+ "integrity": "sha1-RgwdoPgQED0DIam2M6+eV15kSG8=",
6892
+ "dev": true
6893
+ },
6894
+ "win-spawn": {
6895
+ "version": "2.0.0",
6896
+ "resolved": "https://registry.npmjs.org/win-spawn/-/win-spawn-2.0.0.tgz",
6897
+ "integrity": "sha1-OXopEw7JjQqgvIa6pGITk+/9Cwc=",
6898
+ "dev": true
6899
+ },
6900
+ "wordwrap": {
6901
+ "version": "0.0.2",
6902
+ "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz",
6903
+ "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=",
6904
+ "dev": true
6905
+ },
6906
+ "wrappy": {
6907
+ "version": "1.0.2",
6908
+ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
6909
+ "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
6910
+ "dev": true
6911
+ },
6912
+ "xtend": {
6913
+ "version": "4.0.2",
6914
+ "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
6915
+ "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==",
6916
+ "dev": true
6917
+ }
6918
+ }
6919
+ }
package.json CHANGED
@@ -2,7 +2,7 @@
2
  "name": "wp-e-commerce",
3
  "title": "WP eCommerce",
4
  "description": "The most popular independent eCommerce platform for WordPress",
5
- "version": "3.14.0",
6
  "license": "GPLv2",
7
  "author": {
8
  "name": "WP-e-Commerce",
@@ -10,24 +10,24 @@
10
  },
11
  "private": true,
12
  "devDependencies": {
13
- "babelify": "^6.3.0",
14
- "grunt": "^0.4.5",
15
- "browserify": "^11.1.0",
16
  "browserify-shim": "^3.8.10",
 
17
  "grunt-asciify": "~0.2.2",
 
18
  "grunt-checktextdomain": "^1.0.0",
19
  "grunt-combine-media-queries": "^1.0.20",
20
- "grunt-contrib-cssmin": "^0.9.0",
21
- "grunt-contrib-jshint": "^0.11.0",
22
  "grunt-contrib-sass": "^0.7.4",
23
  "grunt-contrib-uglify": "^2.2.0",
24
- "grunt-contrib-watch": "^0.6.1",
25
  "grunt-exec": "^0.4.7",
26
  "grunt-potomo": "^2.1.0",
27
- "grunt-wp-i18n": "^0.4.9",
28
- "grunt-browserify": "^4.0.1",
29
- "load-grunt-tasks": "^0.2.1",
30
- "matchdep": "^1.0.1"
31
  },
32
  "browserify-shim": {
33
  "jquery": "global:jQuery"
2
  "name": "wp-e-commerce",
3
  "title": "WP eCommerce",
4
  "description": "The most popular independent eCommerce platform for WordPress",
5
+ "version": "3.15.0",
6
  "license": "GPLv2",
7
  "author": {
8
  "name": "WP-e-Commerce",
10
  },
11
  "private": true,
12
  "devDependencies": {
13
+ "babelify": "^10.0.0",
14
+ "browserify": "^16.5.2",
 
15
  "browserify-shim": "^3.8.10",
16
+ "grunt": "^1.3.0",
17
  "grunt-asciify": "~0.2.2",
18
+ "grunt-browserify": "^5.3.0",
19
  "grunt-checktextdomain": "^1.0.0",
20
  "grunt-combine-media-queries": "^1.0.20",
21
+ "grunt-contrib-cssmin": "^3.0.0",
22
+ "grunt-contrib-jshint": "^2.1.0",
23
  "grunt-contrib-sass": "^0.7.4",
24
  "grunt-contrib-uglify": "^2.2.0",
25
+ "grunt-contrib-watch": "^1.1.0",
26
  "grunt-exec": "^0.4.7",
27
  "grunt-potomo": "^2.1.0",
28
+ "grunt-wp-i18n": "^1.0.3",
29
+ "load-grunt-tasks": "^5.1.0",
30
+ "matchdep": "^2.0.0"
 
31
  },
32
  "browserify-shim": {
33
  "jquery": "global:jQuery"
phpunit.xml ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <phpunit
2
+ bootstrap="tests/bootstrap.php"
3
+ backupGlobals="false"
4
+ colors="true"
5
+ convertErrorsToExceptions="true"
6
+ convertNoticesToExceptions="false"
7
+ convertWarningsToExceptions="false"
8
+ >
9
+ <testsuites>
10
+ <testsuite>
11
+ <directory prefix="test-" suffix=".php">./tests/</directory>
12
+ </testsuite>
13
+ </testsuites>
14
+ </phpunit>
readme.md ADDED
@@ -0,0 +1,41 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ WP eCommerce [![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/wp-e-commerce/WP-e-Commerce/badges/quality-score.png?s=155ede743c82bcf5116904bf155dcf215da820b0)](https://scrutinizer-ci.com/g/wp-e-commerce/WP-e-Commerce/) [![Coverage Status](https://img.shields.io/coveralls/wp-e-commerce/WP-e-Commerce.svg)](https://coveralls.io/r/wp-e-commerce/WP-e-Commerce) [![Build Status](https://travis-ci.org/wp-e-commerce/WP-e-Commerce.svg?branch=master)](https://travis-ci.org/wp-e-commerce/WP-e-Commerce)
2
+ ============
3
+
4
+ [![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/wp-e-commerce/WP-e-Commerce?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
5
+
6
+ About
7
+ -----
8
+
9
+ WP eCommerce is a free open-source WordPress Shopping Cart Plugin that lets customers buy your products, services and digital downloads online.
10
+
11
+ More details about this plugin features can be found on our website at [wpecommerce.org](http://wpecommerce.org/features/).
12
+
13
+ User documentation can be found at [docs.wpecommerce.org](http://docs.wpecommerce.org).
14
+
15
+ If you're looking for general user support, please submit your support request on [our community support forums](https://wordpress.org/support/plugin/wp-e-commerce).
16
+
17
+ Development status
18
+ -------------------------
19
+
20
+ * The latest stable version is [3.15.0](http://wordpress.org/extend/plugins/wp-e-commerce).
21
+ * Active development version: 4.0-dev (branch [master](https://github.com/wp-e-commerce/WP-e-Commerce))
22
+ * [Roadmap for 4.0](https://github.com/wp-e-commerce/wp-e-commerce/wiki/Roadmap)
23
+ * [4.0 tickets](https://github.com/wp-e-commerce/WP-e-Commerce/milestones/4.0)
24
+
25
+ How to contribute code
26
+ -----------------------------
27
+ * [Coding standards and code quality](https://github.com/wp-e-commerce/wp-e-commerce/wiki/Coding-Standards-and-Code-Quality)
28
+ * [Submitting code](https://github.com/wp-e-commerce/wp-e-commerce/wiki/Submitting-Code)
29
+ * [Code review](https://github.com/wp-e-commerce/wp-e-commerce/wiki/Code-Review)
30
+ * [Merging pull requests](https://github.com/wp-e-commerce/wp-e-commerce/wiki/Merging-Pull-Requests)
31
+
32
+ How to report issues
33
+ --------------------
34
+ * [Reporting a security issue](wiki/Reporting-a-security-issue)
35
+ * [What makes a perfect issue ticket?](https://github.com/wp-e-commerce/wp-e-commerce/wiki/Creating-issue-tickets)
36
+ * [Issue labels and workflow](https://github.com/wp-e-commerce/wp-e-commerce/wiki/Issue-Labels-and-Workflow)
37
+
38
+ Translating WPEC
39
+ ----------------
40
+ * [How to get involved](https://github.com/wp-e-commerce/wp-e-commerce/wiki/Getting-involved-with-translation)
41
+ * [Current status](https://github.com/wp-e-commerce/wp-e-commerce/wiki/i18n-Status)
readme.txt CHANGED
@@ -2,9 +2,10 @@
2
  Contributors: JustinSainton
3
  Donate link: https://wpecommerce.org
4
  Tags: e-commerce, digital downloads, wp-e-commerce, shop, cart, paypal, authorize, stock control, ecommerce, shipping, tax
5
- Requires at least: 4.7
6
- Tested up to: 5.0
7
- Stable tag: 3.14.0
 
8
 
9
  WP eCommerce is a free, powerful plugin that empowers you to sell anything online, quickly and easily.
10
 
@@ -36,6 +37,11 @@ After upgrading from earlier versions look for link "Update Store". This will up
36
 
37
  == Changelog ==
38
 
 
 
 
 
 
39
  = 3.14.0 [2019-01-24] =
40
 
41
  * Fix: Improve integration with new WordPress block editor.
2
  Contributors: JustinSainton
3
  Donate link: https://wpecommerce.org
4
  Tags: e-commerce, digital downloads, wp-e-commerce, shop, cart, paypal, authorize, stock control, ecommerce, shipping, tax
5
+ Requires at least: 5.0
6
+ Tested up to: 5.5
7
+ Requires PHP: 5.6
8
+ Stable tag: 3.15.0
9
 
10
  WP eCommerce is a free, powerful plugin that empowers you to sell anything online, quickly and easily.
11
 
37
 
38
  == Changelog ==
39
 
40
+ = 3.15.0 [2020-08-17] =
41
+
42
+ * Fix: Continued improved integration with new WordPress block editor.
43
+ * Fix: Improve compatibility with PHP 7.3+
44
+
45
  = 3.14.0 [2019-01-24] =
46
 
47
  * Fix: Improve integration with new WordPress block editor.
tests/bootstrap.php ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ $_SERVER['HTTP_USER_AGENT'] = 'PHPUnit';
4
+
5
+ $_tests_dir = getenv('WP_TESTS_DIR');
6
+ if ( !$_tests_dir ) $_tests_dir = '/tmp/wordpress-tests-lib';
7
+ require_once $_tests_dir . 'includes/functions.php';
8
+
9
+ function _manually_load_plugin() {
10
+ require dirname( __FILE__ ) . '/../wp-shopping-cart.php';
11
+ }
12
+ tests_add_filter( 'muplugins_loaded', '_manually_load_plugin' );
13
+
14
+ ob_start();
15
+ require $_tests_dir . 'includes/bootstrap.php';
16
+ ob_end_clean();
tests/test-wpsc-country.class.php ADDED
@@ -0,0 +1,234 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class TestWPSCCountryClass extends WP_UnitTestCase {
4
+
5
+ // The main country used for tests, has no regions.
6
+ const COUNTRY_ID_WITHOUT_REGIONS = 223;
7
+ const COUNTRY_ISOCODE_WITHOUT_REGIONS = 'GB';
8
+ const COUNTRY_NAME_WITHOUT_REGIONS = 'United Kingdom';
9
+ const COUNTRY_NAME_WITHOUT_REGIONS_CURRENCY_CODE = 'GBP';
10
+ const COUNTRY_NAME_WITHOUT_REGIONS_CURRENCY_NAME = 'Pound Sterling';
11
+ const COUNTRY_NAME_WITHOUT_REGIONS_CURRENCY_SYMBOL = '£';
12
+ const COUNTRY_NAME_WITHOUT_REGIONS_CURRENCY_SYMBOL_HTML = '&#163;';
13
+ const COUNTRY_WITHOUT_REGIONS_TAX_RATE = 17.5;
14
+ const COUNTRY_WITHOUT_REGIONS_CONTINENT = 'europe';
15
+
16
+ // A country with regions used for tests that need a region.
17
+ const COUNTRY_ID_WITH_REGIONS = 136;
18
+ const REGION_ID = 50;
19
+ const NUM_REGIONS = 51;
20
+ const REGION_CODE = 'OR';
21
+ const REGION_NAME = 'Oregon';
22
+ const INVALID_REGION_NAME = 'Oregano';
23
+
24
+ function setUp() {
25
+ wpsc_create_or_update_tables();
26
+ parent::setUp();
27
+ }
28
+
29
+ function tearDown() {
30
+ parent::tearDown();
31
+ }
32
+
33
+ function test_invalid_country_construct() {
34
+
35
+ $country = new WPSC_Country( 'XXX' );
36
+ $this->assertTrue( empty( $country->_id ) && empty( $country->_name ) && empty( $country->_isocode ) );
37
+
38
+ // // This should definitely return false/null - no?
39
+ $country = new WPSC_Country( -1 );
40
+ $this->assertTrue( empty( $country->_id ) && empty( $country->_name ) && empty( $country->_isocode ) );
41
+ }
42
+
43
+ function test_valid_country_construct() {
44
+ $country = new WPSC_Country( self::COUNTRY_ID_WITHOUT_REGIONS ); // UK
45
+ $this->assertInstanceOf( 'WPSC_Country', $country );
46
+ $this->assertEquals( self::COUNTRY_ID_WITHOUT_REGIONS, $country->get( 'id' ) );
47
+ $this->assertEquals( self::COUNTRY_NAME_WITHOUT_REGIONS, $country->get( 'name' ) );
48
+ }
49
+
50
+ function test_get_name() {
51
+ $country = new WPSC_Country( self::COUNTRY_ID_WITHOUT_REGIONS );
52
+ $this->assertEquals( self::COUNTRY_NAME_WITHOUT_REGIONS, $country->get_name() );
53
+ }
54
+
55
+ function test_get_id() {
56
+ $country = new WPSC_Country( self::COUNTRY_ID_WITHOUT_REGIONS );
57
+ $this->assertEquals( self::COUNTRY_ID_WITHOUT_REGIONS, $country->get_id() );
58
+ }
59
+
60
+ function test_get_isocode() {
61
+ $country = new WPSC_Country( self::COUNTRY_ID_WITHOUT_REGIONS );
62
+ $this->assertEquals( self::COUNTRY_ISOCODE_WITHOUT_REGIONS, $country->get_isocode() );
63
+ }
64
+
65
+ function test_get_currency() {
66
+ $country = new WPSC_Country( self::COUNTRY_ID_WITHOUT_REGIONS );
67
+ $currency = $country->get_currency();
68
+ $this->assertInstanceOf( 'WPSC_Currency', $currency );
69
+ $this->assertEquals( self::COUNTRY_NAME_WITHOUT_REGIONS_CURRENCY_CODE, $currency->code );
70
+ }
71
+
72
+ function test_get_currency_name() {
73
+ $country = new WPSC_Country( self::COUNTRY_ID_WITHOUT_REGIONS );
74
+ $currency_name = $country->get_currency_name();
75
+ $this->assertEquals( self::COUNTRY_NAME_WITHOUT_REGIONS_CURRENCY_NAME, $currency_name );
76
+ }
77
+
78
+ function test_get_currency_symbol() {
79
+ $country = new WPSC_Country( self::COUNTRY_ID_WITHOUT_REGIONS );
80
+ $currency_symbol = $country->get_currency_symbol();
81
+ $this->assertEquals( self::COUNTRY_NAME_WITHOUT_REGIONS_CURRENCY_SYMBOL, $currency_symbol );
82
+ }
83
+
84
+ function test_get_currency_symbol_html() {
85
+ $country = new WPSC_Country( self::COUNTRY_ID_WITHOUT_REGIONS );
86
+ $currency_symbol = $country->get_currency_symbol_html();
87
+ $this->assertEquals( self::COUNTRY_NAME_WITHOUT_REGIONS_CURRENCY_SYMBOL_HTML, $currency_symbol );
88
+ }
89
+
90
+ function test_get_currency_code() {
91
+ $country = new WPSC_Country( self::COUNTRY_ID_WITHOUT_REGIONS );
92
+ $currency_code = $country->get_currency_code();
93
+ $this->assertEquals( self::COUNTRY_NAME_WITHOUT_REGIONS_CURRENCY_CODE, $currency_code );
94
+ }
95
+
96
+ function test_has_regions() {
97
+ $country = new WPSC_Country( self::COUNTRY_ID_WITHOUT_REGIONS );
98
+ $has_regions = $country->has_regions();
99
+ $this->assertFalse( $has_regions );
100
+ $country = new WPSC_Country( self::COUNTRY_ID_WITH_REGIONS ); // USA
101
+ $has_regions = $country->has_regions();
102
+ $this->assertTrue( $has_regions );
103
+ }
104
+
105
+ function test_has_region() {
106
+ // UK
107
+ $country = new WPSC_Country( self::COUNTRY_ID_WITHOUT_REGIONS );
108
+ $has_region = $country->has_region( self::REGION_ID );
109
+ $this->assertFalse( $has_region ); // Oregon is not in the UK
110
+ $has_region = $country->has_region( -1 );
111
+ $this->assertFalse( $has_region ); // Non-existent region is not in the UK
112
+
113
+ // USA
114
+ $country = new WPSC_Country( self::COUNTRY_ID_WITH_REGIONS );
115
+ $has_region = $country->has_region( self::REGION_ID );
116
+ $this->assertTrue( $has_region ); // Oregon is in the USA
117
+ $has_region = $country->has_region( self::REGION_NAME );
118
+ $this->assertTrue( $has_region ); // Oregon is in the USA
119
+ $has_region = $country->has_region( self::INVALID_REGION_NAME );
120
+ $this->assertFalse( $has_region ); // Oregano is not
121
+ $has_region = $country->has_region( -1 );
122
+ $this->assertFalse( $has_region ); // Imaginary state is not in the USA
123
+ }
124
+
125
+ function test_get_tax() {
126
+ $country = new WPSC_Country( self::COUNTRY_ID_WITHOUT_REGIONS );
127
+ $tax = $country->get_tax();
128
+ $this->assertEquals( self::COUNTRY_WITHOUT_REGIONS_TAX_RATE, $tax );
129
+ }
130
+
131
+ function test_get_continent() {
132
+ $country = new WPSC_Country( self::COUNTRY_ID_WITHOUT_REGIONS );
133
+ $continent = $country->get_continent();
134
+ $this->assertEquals( self::COUNTRY_WITHOUT_REGIONS_CONTINENT, $continent );
135
+ }
136
+
137
+ function test_is_visible() {
138
+ $country = new WPSC_Country( self::COUNTRY_ID_WITHOUT_REGIONS );
139
+ $visible = $country->is_visible();
140
+ $this->assertEquals( '1', $visible );
141
+ }
142
+
143
+ function test_get() {
144
+ $country = new WPSC_Country( self::COUNTRY_ID_WITHOUT_REGIONS );
145
+ $id = $country->get( 'id' );
146
+ $this->assertEquals( self::COUNTRY_ID_WITHOUT_REGIONS, $id );
147
+ $name = $country->get( 'name' );
148
+ $this->assertEquals( self::COUNTRY_NAME_WITHOUT_REGIONS, $name );
149
+ $invalid = $country->get( 'omgwtfbbq' );
150
+ $this->assertNull( $invalid );
151
+ }
152
+
153
+ function test_set() {
154
+ $country = new WPSC_Country( self::COUNTRY_ID_WITHOUT_REGIONS );
155
+ $country->set( 'name', 'XXX' ); // This should not set the property.
156
+ $name = $country->get( 'name' );
157
+ $this->assertEquals( self::COUNTRY_NAME_WITHOUT_REGIONS, $name );
158
+ $country->set( 'isocode', 'XX' ); // This should not set the property.
159
+ $isocode = $country->get( 'isocode' );
160
+ $this->assertEquals( self::COUNTRY_ISOCODE_WITHOUT_REGIONS, $isocode );
161
+ $country->set( 'omgwtfbbq_new', 'OMG' ); // This SHOULD set the property.
162
+ $omg = $country->get( 'omgwtfbbq_new' );
163
+ $this->assertEquals( 'OMG', $omg );
164
+ $country->set( 'omgwtfbbq_new', '' ); // Clear it out.
165
+ $omg = $country->get( 'omgwtfbbq_new' );
166
+ $this->assertEquals( '', $omg );
167
+ }
168
+
169
+ function test_get_region() {
170
+ $country = new WPSC_Country( self::COUNTRY_ID_WITH_REGIONS );
171
+ $region = $country->get_region( self::REGION_ID );
172
+ $this->assertInstanceOf( 'WPSC_Region', $region );
173
+ $this->assertEquals( self::REGION_ID , $region->get_id() );
174
+ $this->assertEquals( self::REGION_NAME, $region->get_name() );
175
+ }
176
+
177
+ function test_get_region_count() {
178
+ $country = new WPSC_Country( self::COUNTRY_ID_WITH_REGIONS ); // USA
179
+ $region_count = $country->get_region_count();
180
+ $this->assertEquals( self::NUM_REGIONS, $region_count );
181
+ $country = new WPSC_Country( self::COUNTRY_ID_WITHOUT_REGIONS ); // UK
182
+ $region_count = $country->get_region_count();
183
+ $this->assertEquals( 0, $region_count );
184
+ }
185
+
186
+ function test_get_regions() {
187
+ $country = new WPSC_Country( self::COUNTRY_ID_WITH_REGIONS ); // USA
188
+ $regions = array_values( $country->get_regions() );
189
+ $this->assertInstanceOf( 'WPSC_Region', $regions[0] );
190
+ $region_count = count( $regions );
191
+ $this->assertEquals( self::NUM_REGIONS, $region_count );
192
+
193
+ $country = new WPSC_Country( self::COUNTRY_ID_WITHOUT_REGIONS ); // UK
194
+ $regions = $country->get_regions();
195
+ $this->assertInternalType( 'array', $regions );
196
+ $region_count = count( $regions );
197
+ $this->assertEquals( 0, $region_count );
198
+ }
199
+
200
+ function test_get_regions_array() {
201
+ $country = new WPSC_Country( self::COUNTRY_ID_WITH_REGIONS );
202
+ $regions = array_values( $country->get_regions( true ) );
203
+ $this->assertInternalType( 'array', $regions[0] );
204
+ $this->assertEquals( self::NUM_REGIONS, count( $regions ) );
205
+ $country = new WPSC_Country( self::COUNTRY_ID_WITHOUT_REGIONS );
206
+ $regions = $country->get_regions( true );
207
+ $this->assertInternalType( 'array', $regions );
208
+ $this->assertEquals( 0, count( $regions ) );
209
+ }
210
+
211
+ function test_get_region_id_by_region_code() {
212
+ $country = new WPSC_Country( self::COUNTRY_ID_WITH_REGIONS ); // USA
213
+ $region_id = $country->get_region_id_by_region_code( self::REGION_CODE ); // Oregon
214
+ $this->assertEquals( self::REGION_ID, $region_id );
215
+ $country = new WPSC_Country( self::COUNTRY_ID_WITHOUT_REGIONS ); // UK
216
+ $region_id = $country->get_region_id_by_region_code( self::REGION_CODE ); // Oregon
217
+ }
218
+
219
+ function test_get_region_id_by_region_name() {
220
+ $country = new WPSC_Country( self::COUNTRY_ID_WITH_REGIONS ); // USA
221
+ $region_id = $country->get_region_id_by_region_name( 'Oregon' );
222
+ $this->assertEquals( self::REGION_ID, $region_id );
223
+ $country = new WPSC_Country( self::COUNTRY_ID_WITHOUT_REGIONS ); // UK
224
+ $region_id = $country->get_region_id_by_region_name( 'Oregon' );
225
+ }
226
+
227
+ function test_as_array() {
228
+ $country = new WPSC_Country( self::COUNTRY_ID_WITHOUT_REGIONS );
229
+ $regions = $country->as_array();
230
+ $this->assertInternalType( 'array', $regions );
231
+ }
232
+
233
+ }
234
+
tests/test-wpsc-coupon.class.php ADDED
@@ -0,0 +1,364 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class TestWPSCCouponClass extends WP_UnitTestCase {
4
+
5
+ const START_DATE = '2015-03-06';
6
+ const EXPIRY_DATE = '2015-04-16';
7
+
8
+ const PERCENTAGE_COUPON_ID = 1;
9
+ const PERCENTAGE_COUPON_CODE = 'TEST_PERCENTAGE';
10
+ const FIXED_COUPON_ID = 2;
11
+ const FIXED_COUPON_CODE = 'TEST_FIXED';
12
+ const FREE_SHIPPING_COUPON_ID = 3;
13
+ const FREE_SHIPPING_COUPON_CODE = 'TEST_FREE_SHIPPING';
14
+ const USE_ONCE_COUPON_ID = 4;
15
+ const USE_ONCE_COUPON_CODE = 'TEST_USE_ONCE';
16
+ const EXPIRY_COUPON_ID = 5;
17
+ const EXPIRY_COUPON_CODE = 'TEST_EXPIRY';
18
+ const DELETE_COUPON_ID = 6;
19
+ const DELETE_COUPON_CODE = 'TEST_DELETE';
20
+ const CONDITIONS_COUPON_ID = 7;
21
+ const CONDITIONS_COUPON_CODE = 'TEST_CONDITIONS';
22
+ const ACTIVE_COUPON_ID = 8;
23
+ const ACTIVE_COUPON_CODE = 'TEST_ACTIVE';
24
+
25
+ function setUp() {
26
+ wpsc_create_or_update_tables();
27
+ $this->setup_test_data();
28
+ parent::setUp();
29
+ }
30
+
31
+ function tearDown() {
32
+ parent::tearDown();
33
+ }
34
+
35
+ function setup_test_data() {
36
+
37
+ global $wpdb;
38
+
39
+ $truncate = $wpdb->query( "TRUNCATE TABLE `" . WPSC_TABLE_COUPON_CODES . "`" );
40
+
41
+ $wpdb->insert( WPSC_TABLE_COUPON_CODES, array(
42
+ 'id' => self::PERCENTAGE_COUPON_ID,
43
+ 'coupon_code' => self::PERCENTAGE_COUPON_CODE,
44
+ 'value' => '50',
45
+ 'is-percentage' => 1,
46
+ 'use-once' => 0,
47
+ 'is-used' => 0,
48
+ 'active' => 1,
49
+ 'every_product' => 0,
50
+ 'start' => '0000-00-00',
51
+ 'expiry' => '0000-00-00',
52
+ 'condition' => serialize( array() )
53
+ ), array( '%d', '%s', '%s', '%d', '%d', '%d', '%d', '%d', '%s', '%s', '%s' ) );
54
+
55
+ $wpdb->insert( WPSC_TABLE_COUPON_CODES, array(
56
+ 'id' => self::FIXED_COUPON_ID,
57
+ 'coupon_code' => self::FIXED_COUPON_CODE,
58
+ 'value' => '5',
59
+ 'is-percentage' => 0,
60
+ 'use-once' => 0,
61
+ 'is-used' => 0,
62
+ 'active' => 1,
63
+ 'every_product' => 0,
64
+ 'start' => '0000-00-00',
65
+ 'expiry' => '0000-00-00',
66
+ 'condition' => serialize( array() )
67
+ ), array( '%d', '%s', '%s', '%d', '%d', '%d', '%d', '%d', '%s', '%s', '%s' ) );
68
+
69
+ $wpdb->insert( WPSC_TABLE_COUPON_CODES, array(
70
+ 'id' => self::FREE_SHIPPING_COUPON_ID,
71
+ 'coupon_code' => self::FREE_SHIPPING_COUPON_CODE,
72
+ 'value' => '5',
73
+ 'is-percentage' => 2,
74
+ 'use-once' => 0,
75
+ 'is-used' => 0,
76
+ 'active' => 1,
77
+ 'every_product' => 0,
78
+ 'start' => '0000-00-00',
79
+ 'expiry' => '0000-00-00',
80
+ 'condition' => serialize( array() )
81
+ ), array( '%d', '%s', '%s', '%d', '%d', '%d', '%d', '%d', '%s', '%s', '%s' ) );
82
+
83
+ $wpdb->insert( WPSC_TABLE_COUPON_CODES, array(
84
+ 'id' => self::USE_ONCE_COUPON_ID,
85
+ 'coupon_code' => self::USE_ONCE_COUPON_CODE,
86
+ 'value' => '10',
87
+ 'is-percentage' => 0,
88
+ 'use-once' => 1,
89
+ 'is-used' => 0,
90
+ 'active' => 1,
91
+ 'every_product' => 0,
92
+ 'start' => '0000-00-00',
93
+ 'expiry' => '0000-00-00',
94
+ 'condition' => serialize( array() )
95
+ ), array( '%d', '%s', '%s', '%d', '%d', '%d', '%d', '%d', '%s', '%s', '%s' ) );
96
+
97
+ $wpdb->insert( WPSC_TABLE_COUPON_CODES, array(
98
+ 'id' => self::EXPIRY_COUPON_ID,
99
+ 'coupon_code' => self::EXPIRY_COUPON_CODE,
100
+ 'value' => '10',
101
+ 'is-percentage' => 0,
102
+ 'use-once' => 1,
103
+ 'is-used' => 0,
104
+ 'active' => 1,
105
+ 'every_product' => 0,
106
+ 'start' => self::START_DATE,
107
+ 'expiry' => self::EXPIRY_DATE,
108
+ 'condition' => serialize( array() )
109
+ ), array( '%d', '%s', '%s', '%d', '%d', '%d', '%d', '%d', '%s', '%s', '%s' ) );
110
+
111
+ $wpdb->insert( WPSC_TABLE_COUPON_CODES, array(
112
+ 'id' => self::DELETE_COUPON_ID,
113
+ 'coupon_code' => self::DELETE_COUPON_CODE,
114
+ 'value' => '10',
115
+ 'is-percentage' => 0,
116
+ 'use-once' => 0,
117
+ 'is-used' => 0,
118
+ 'active' => 0,
119
+ 'every_product' => 0,
120
+ 'start' => self::START_DATE,
121
+ 'expiry' => self::EXPIRY_DATE,
122
+ 'condition' => serialize( array() )
123
+ ), array( '%d', '%s', '%s', '%d', '%d', '%d', '%d', '%d', '%s', '%s', '%s' ) );
124
+
125
+ $wpdb->insert( WPSC_TABLE_COUPON_CODES, array(
126
+ 'id' => self::CONDITIONS_COUPON_ID,
127
+ 'coupon_code' => self::CONDITIONS_COUPON_CODE,
128
+ 'value' => '10',
129
+ 'is-percentage' => 0,
130
+ 'use-once' => 0,
131
+ 'is-used' => 0,
132
+ 'active' => 0,
133
+ 'every_product' => 0,
134
+ 'start' => '0000-00-00',
135
+ 'expiry' => '0000-00-00',
136
+ 'condition' => serialize( $this->get_test_conditions() )
137
+ ), array( '%d', '%s', '%s', '%d', '%d', '%d', '%d', '%d', '%s', '%s', '%s' ) );
138
+
139
+ $wpdb->insert( WPSC_TABLE_COUPON_CODES, array(
140
+ 'id' => self::ACTIVE_COUPON_ID,
141
+ 'coupon_code' => self::ACTIVE_COUPON_CODE,
142
+ 'value' => '10',
143
+ 'is-percentage' => 0,
144
+ 'use-once' => 0,
145
+ 'is-used' => 0,
146
+ 'active' => 1,
147
+ 'every_product' => 0,
148
+ 'start' => '0000-00-00',
149
+ 'expiry' => '0000-00-00',
150
+ 'condition' => serialize( array() )
151
+ ), array( '%d', '%s', '%s', '%d', '%d', '%d', '%d', '%d', '%s', '%s', '%s' ) );
152
+
153
+ }
154
+
155
+ function get_test_conditions() {
156
+
157
+ return array(
158
+
159
+ array(
160
+ 'operator' => '',
161
+ 'property' => 'item_name',
162
+ 'logic' => 'equal',
163
+ 'value' => 'Test Product'
164
+ ),
165
+
166
+ array(
167
+ 'operator' => 'and',
168
+ 'property' => 'item_quantity',
169
+ 'logic' => 'greater',
170
+ 'value' => '1'
171
+ )
172
+
173
+ );
174
+
175
+ }
176
+
177
+ function set_current_user_role( $role ) {
178
+
179
+ $user_id = $this->factory->user->create( array( 'role' => $role ) );
180
+ wp_set_current_user( $user_id );
181
+
182
+ }
183
+
184
+ function test_invalid_coupon_construct() {
185
+
186
+ // Shouldn't allow non-numeric ID.
187
+ $coupon = new WPSC_Coupon( 'XXX' );
188
+ $data = $coupon->get_data();
189
+ $this->assertEmpty( $data );
190
+
191
+ // Shouldn't allow negative ID.
192
+ $coupon = new WPSC_Coupon( -1 );
193
+ $data = $coupon->get_data();
194
+ $this->assertEmpty( $data );
195
+
196
+ }
197
+
198
+ function test_insert_coupon() {
199
+
200
+ global $wpdb;
201
+
202
+ $this->set_current_user_role( 'administrator' );
203
+
204
+ $coupon = new WPSC_Coupon( array(
205
+ 'coupon_code' => self::PERCENTAGE_COUPON_CODE,
206
+ 'value' => '50',
207
+ 'is-percentage' => '1',
208
+ 'active' => '1'
209
+ ) );
210
+
211
+ $result = $coupon->save();
212
+ $result_id = $wpdb->insert_id;
213
+
214
+ $this->assertEquals( 1, $result );
215
+ $this->assertTrue( $result_id > 0 );
216
+
217
+ $new_coupon = new WPSC_Coupon( $result_id );
218
+ $this->assertEquals( self::PERCENTAGE_COUPON_CODE, $new_coupon->get( 'coupon_code' ) );
219
+
220
+ }
221
+
222
+ function test_save() {
223
+
224
+ $coupon = new WPSC_Coupon( self::PERCENTAGE_COUPON_ID );
225
+ $exists = $coupon->exists();
226
+ $this->assertTrue( $exists );
227
+
228
+ if ( $exists ) {
229
+
230
+ $coupon->set( 'coupon_code', self::PERCENTAGE_COUPON_CODE );
231
+ $coupon->save();
232
+ $this->assertEquals( self::PERCENTAGE_COUPON_CODE, $coupon->get( 'coupon_code' ) );
233
+
234
+ $coupon->set( 'coupon_code', 'XXX' );
235
+ $coupon->save();
236
+ $this->assertEquals( 'XXX', $coupon->get( 'coupon_code' ) );
237
+
238
+ }
239
+
240
+ }
241
+
242
+ function test_delete_coupon() {
243
+
244
+ $this->set_current_user_role( 'administrator' );
245
+
246
+ $coupon = new WPSC_Coupon( self::DELETE_COUPON_ID );
247
+ $this->assertTrue( $coupon->exists() );
248
+
249
+ $deleted = $coupon->delete();
250
+ $this->assertEquals( 1, $deleted );
251
+
252
+ $this->assertFalse( $coupon->exists() );
253
+
254
+ }
255
+
256
+ function test_get_code() {
257
+
258
+ $coupon = new WPSC_Coupon( self::PERCENTAGE_COUPON_ID );
259
+ $exists = $coupon->exists();
260
+ $this->assertTrue( $exists );
261
+
262
+ if ( $exists ) {
263
+ $coupon->set( 'coupon_code', self::PERCENTAGE_COUPON_CODE );
264
+ $coupon->save();
265
+ $coupon->delete_cache();
266
+
267
+ $new_coupon = new WPSC_Coupon( self::PERCENTAGE_COUPON_ID );
268
+ $this->assertEquals( self::PERCENTAGE_COUPON_CODE, $new_coupon->get( 'coupon_code' ) );
269
+
270
+ }
271
+
272
+ }
273
+
274
+ function test_is_free_shipping() {
275
+
276
+ $coupon = new WPSC_Coupon( self::FREE_SHIPPING_COUPON_ID );
277
+ $free_shipping = $coupon->is_free_shipping();
278
+ $this->assertTrue( $free_shipping );
279
+
280
+ $coupon = new WPSC_Coupon( self::PERCENTAGE_COUPON_ID );
281
+ $free_shipping = $coupon->is_free_shipping();
282
+ $this->assertFalse( $free_shipping );
283
+
284
+ }
285
+
286
+ function test_is_coupon_used() {
287
+
288
+ $coupon = new WPSC_Coupon( self::USE_ONCE_COUPON_ID );
289
+ $this->assertTrue( $coupon->is_active() );
290
+ $this->assertTrue( $coupon->is_use_once() );
291
+ $this->assertFalse( $coupon->is_used() );
292
+
293
+ $coupon->used();
294
+ $this->assertTrue( $coupon->is_used() );
295
+ $this->assertFalse( $coupon->is_active() );
296
+
297
+ }
298
+
299
+ function test_coupon_data() {
300
+
301
+ global $wpdb;
302
+
303
+ $coupon = new WPSC_Coupon( self::PERCENTAGE_COUPON_ID );
304
+ $exists = $coupon->exists();
305
+ $this->assertTrue( $exists );
306
+
307
+ if ( $exists ) {
308
+
309
+ $coupon_data = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM `" . WPSC_TABLE_COUPON_CODES . "` WHERE `id` = %d", self::PERCENTAGE_COUPON_ID ), ARRAY_A );
310
+
311
+ $coupon = new WPSC_Coupon( self::PERCENTAGE_COUPON_ID );
312
+
313
+ // Coupon API unserialises conditions automatically
314
+ $this->assertEquals( $coupon_data['coupon_code'], $coupon->get( 'coupon_code' ) );
315
+ $this->assertEquals( $coupon_data['value'], $coupon->get( 'value' ) );
316
+ $this->assertEquals( $coupon_data['is-percentage'], $coupon->get( 'is-percentage' ) );
317
+ $this->assertEquals( $coupon_data['use-once'], $coupon->get( 'use-once' ) );
318
+ $this->assertEquals( $coupon_data['is-used'], $coupon->get( 'is-used' ) );
319
+ $this->assertEquals( $coupon_data['active'], $coupon->get( 'active' ) );
320
+ $this->assertEquals( $coupon_data['every_product'], $coupon->get( 'every_product' ) );
321
+ $this->assertEquals( $coupon_data['start'], $coupon->get( 'start' ) );
322
+ $this->assertEquals( $coupon_data['expiry'], $coupon->get( 'expiry' ) );
323
+ $this->assertEquals( unserialize( $coupon_data['condition'] ), $coupon->get( 'condition' ) );
324
+
325
+ }
326
+
327
+ }
328
+
329
+ function test_coupon_has_conditions() {
330
+
331
+ $coupon = new WPSC_Coupon( self::PERCENTAGE_COUPON_ID );
332
+ $this->assertFalse( $coupon->has_conditions() );
333
+
334
+ $coupon_cond = new WPSC_Coupon( self::CONDITIONS_COUPON_ID );
335
+ $this->assertTrue( $coupon_cond->has_conditions() );
336
+
337
+ }
338
+
339
+ function test_coupon_conditions() {
340
+
341
+ $coupon = new WPSC_Coupon( self::PERCENTAGE_COUPON_ID );
342
+ $this->assertEmpty( $coupon->get( 'condition' ) );
343
+
344
+ $coupon_cond = new WPSC_Coupon( self::CONDITIONS_COUPON_ID );
345
+ $this->assertTrue( is_array( $coupon_cond->get( 'condition' ) ) );
346
+ $this->assertNotEmpty( $coupon_cond->get( 'condition' ) );
347
+
348
+ }
349
+
350
+ function test_active() {
351
+
352
+ $coupon = new WPSC_Coupon( self::ACTIVE_COUPON_ID );
353
+
354
+ $this->assertTrue( $coupon->is_active() );
355
+
356
+ $coupon->deactivate();
357
+ $this->assertFalse( $coupon->is_active() );
358
+
359
+ $coupon->activate();
360
+ $this->assertTrue( $coupon->is_active() );
361
+
362
+ }
363
+
364
+ }
tests/test-wpsc-region.class.php ADDED
@@ -0,0 +1,97 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class TestWPSCRegionClass extends WP_UnitTestCase {
4
+
5
+ // Test country / regions
6
+ const COUNTRY_ID_WITH_REGIONS = 136;
7
+ const COUNTRY_ISOCODE_WITH_REGIONS = 'US';
8
+ const REGION_ID = 50;
9
+ const REGION_CODE = 'OR';
10
+ const REGION_NAME = 'Oregon';
11
+ const INVALID_REGION_NAME = 'Oregano';
12
+ const REGION_TAX_RATE = 0.0;
13
+
14
+ function setUp() {
15
+ wpsc_create_or_update_tables();
16
+ parent::setUp();
17
+ }
18
+
19
+ function tearDown() {
20
+ parent::tearDown();
21
+ }
22
+
23
+ function test_contructor() {
24
+ $region = new WPSC_Region( self::COUNTRY_ID_WITH_REGIONS, self::REGION_ID );
25
+ $this->assertInstanceOf( 'WPSC_Region', $region );
26
+ $this->assertEquals( 50, $region->get_id() );
27
+ $this->assertEquals( self::REGION_NAME, $region->get_name() );
28
+ $region = new WPSC_Region( self::COUNTRY_ISOCODE_WITH_REGIONS, self::REGION_ID );
29
+ $this->assertInstanceOf( 'WPSC_Region', $region );
30
+ $this->assertEquals( 50, $region->get_id() );
31
+ $this->assertEquals( self::REGION_NAME, $region->get_name() );
32
+ $region = new WPSC_Region( self::COUNTRY_ID_WITH_REGIONS, self::REGION_CODE );
33
+ $this->assertInstanceOf( 'WPSC_Region', $region );
34
+ $this->assertEquals( 50, $region->get_id() );
35
+ $this->assertEquals( self::REGION_NAME, $region->get_name() );
36
+ $region = new WPSC_Region( self::COUNTRY_ISOCODE_WITH_REGIONS, self::REGION_CODE );
37
+ $this->assertInstanceOf( 'WPSC_Region', $region );
38
+ $this->assertEquals( 50, $region->get_id() );
39
+ $this->assertEquals( self::REGION_NAME, $region->get_name() );
40
+ }
41
+
42
+ function test_get_id() {
43
+ $region = new WPSC_Region( self::COUNTRY_ID_WITH_REGIONS, self::REGION_ID );
44
+ $this->assertInstanceOf( 'WPSC_Region', $region );
45
+ $this->assertEquals( 50, $region->get_id() );
46
+ }
47
+
48
+ function test_get_name() {
49
+ $region = new WPSC_Region( self::COUNTRY_ID_WITH_REGIONS, self::REGION_ID );
50
+ $this->assertInstanceOf( 'WPSC_Region', $region );
51
+ $this->assertEquals( self::REGION_NAME, $region->get_name() );
52
+ }
53
+
54
+ function test_get_code() {
55
+ $region = new WPSC_Region( self::COUNTRY_ID_WITH_REGIONS, self::REGION_ID );
56
+ $this->assertInstanceOf( 'WPSC_Region', $region );
57
+ $this->assertEquals( self::REGION_CODE, $region->get_code() );
58
+ }
59
+
60
+ function test_get_tax() {
61
+ $region = new WPSC_Region( self::COUNTRY_ID_WITH_REGIONS, self::REGION_ID );
62
+ $this->assertInstanceOf( 'WPSC_Region', $region );
63
+ $this->assertEquals( self::REGION_TAX_RATE, $region->get_tax() );
64
+ }
65
+
66
+ function test_get_country_id() {
67
+ $region = new WPSC_Region( self::COUNTRY_ID_WITH_REGIONS, self::REGION_ID );
68
+ $this->assertInstanceOf( 'WPSC_Region', $region );
69
+ $this->assertEquals( self::COUNTRY_ID_WITH_REGIONS, $region->get_country_id() );
70
+ }
71
+
72
+
73
+ function test_as_array() {
74
+ $region = new WPSC_Region( self::COUNTRY_ID_WITH_REGIONS, self::REGION_ID );
75
+ $this->assertInstanceOf( 'WPSC_Region', $region );
76
+ $region_as_array = $region->as_array();
77
+ $this->assertInternalType( 'array', $region_as_array );
78
+ }
79
+
80
+ function test_get() {
81
+ $region = new WPSC_Region( self::COUNTRY_ID_WITH_REGIONS, self::REGION_ID );
82
+ $this->assertEquals( self::REGION_ID, $region->get( 'id' ) );
83
+ $this->assertEquals( self::REGION_NAME, $region->get( 'name' ) );
84
+ $this->assertNull( $region->get( 'omgwtfbbq' ) );
85
+ }
86
+
87
+ function test_set() {
88
+ $region = new WPSC_Region( self::COUNTRY_ID_WITH_REGIONS, self::REGION_ID );
89
+ $region->set( 'name', self::INVALID_REGION_NAME ); // This should not set the value
90
+ $this->assertEquals( self::REGION_NAME, $region->get( 'name' ) );
91
+ $region = new WPSC_Region( self::COUNTRY_ID_WITH_REGIONS, self::REGION_ID );
92
+ $region->set( 'omgwtfbbq', 'OMG' ); // This should set the value
93
+ $this->assertEquals( 'OMG', $region->get( 'omgwtfbbq' ) );
94
+ $region->set( 'omgwtfbbq', '' );
95
+ }
96
+ }
97
+
wp-shopping-cart.php CHANGED
@@ -3,7 +3,7 @@
3
  * Plugin Name: WP eCommerce
4
  * Plugin URI: http://wpecommerce.org/
5
  * Description: A plugin that provides a WordPress Shopping Cart. See also: <a href="http://wpecommerce.org" target="_blank">WPeCommerce.org</a> | <a href="https://wordpress.org/support/plugin/wp-e-commerce/" target="_blank">Support Forum</a> | <a href="http://docs.wpecommerce.org/" target="_blank">Documentation</a>
6
- * Version: 3.14.0
7
  * Author: WP eCommerce
8
  * Author URI: http://wpecommerce.org/
9
  * Text Domain: wp-e-commerce
@@ -193,7 +193,6 @@ class WP_eCommerce {
193
  * @uses wpsc_core_constants() Loads the WPEC Core constants
194
  * @uses wpsc_core_is_multisite() Checks if this is a multisite install. True if is multisite
195
  * @uses wpsc_core_load_session() Loads the WPEC core session
196
- * @uses wpsc_core_constants_version_processing() Checks and sets a constant for WordPress version
197
  * @uses wpsc_core_constants_table_names() Sets constants for WPEC table names
198
  * @uses wpsc_core_constants_uploads() Set the upload related constants
199
  * @uses do_action() Calls 'wpsc_constants' which runs after the WPEC constants are defined
@@ -211,8 +210,6 @@ class WP_eCommerce {
211
  // Start the wpsc session
212
  wpsc_core_load_session();
213
 
214
- // Which version of WPEC
215
- wpsc_core_constants_version_processing();
216
 
217
  // WPEC Table names and related constants
218
  wpsc_core_constants_table_names();
3
  * Plugin Name: WP eCommerce
4
  * Plugin URI: http://wpecommerce.org/
5
  * Description: A plugin that provides a WordPress Shopping Cart. See also: <a href="http://wpecommerce.org" target="_blank">WPeCommerce.org</a> | <a href="https://wordpress.org/support/plugin/wp-e-commerce/" target="_blank">Support Forum</a> | <a href="http://docs.wpecommerce.org/" target="_blank">Documentation</a>
6
+ * Version: 3.15.0
7
  * Author: WP eCommerce
8
  * Author URI: http://wpecommerce.org/
9
  * Text Domain: wp-e-commerce
193
  * @uses wpsc_core_constants() Loads the WPEC Core constants
194
  * @uses wpsc_core_is_multisite() Checks if this is a multisite install. True if is multisite
195
  * @uses wpsc_core_load_session() Loads the WPEC core session
 
196
  * @uses wpsc_core_constants_table_names() Sets constants for WPEC table names
197
  * @uses wpsc_core_constants_uploads() Set the upload related constants
198
  * @uses do_action() Calls 'wpsc_constants' which runs after the WPEC constants are defined
210
  // Start the wpsc session
211
  wpsc_core_load_session();
212
 
 
 
213
 
214
  // WPEC Table names and related constants
215
  wpsc_core_constants_table_names();
wpsc-admin/admin.php CHANGED
@@ -751,7 +751,6 @@ function _wpsc_admin_localizations( $localizations ) {
751
 
752
  $localizations['ajaxurl'] = admin_url( 'admin-ajax.php', 'relative' );
753
  $localizations['hidden_boxes'] = '"' . esc_js( $hidden_boxes ) . '"';
754
- $localizations['IS_WP27'] = '"' . esc_js( IS_WP27 ) . '"';
755
  $localizations['TXT_WPSC_DELETE'] = '"' . esc_js( __( 'Delete', 'wp-e-commerce' ) ) . '"';
756
  $localizations['TXT_WPSC_TEXT'] = '"' . esc_js( __( 'Text', 'wp-e-commerce' ) ) . '"';
757
  $localizations['TXT_WPSC_EMAIL'] = '"' . esc_js( __( 'Email', 'wp-e-commerce' ) ) . '"';
751
 
752
  $localizations['ajaxurl'] = admin_url( 'admin-ajax.php', 'relative' );
753
  $localizations['hidden_boxes'] = '"' . esc_js( $hidden_boxes ) . '"';
 
754
  $localizations['TXT_WPSC_DELETE'] = '"' . esc_js( __( 'Delete', 'wp-e-commerce' ) ) . '"';
755
  $localizations['TXT_WPSC_TEXT'] = '"' . esc_js( __( 'Text', 'wp-e-commerce' ) ) . '"';
756
  $localizations['TXT_WPSC_EMAIL'] = '"' . esc_js( __( 'Email', 'wp-e-commerce' ) ) . '"';
wpsc-admin/includes/display-items-functions.php CHANGED
@@ -139,10 +139,8 @@ function wpsc_price_control_forms() {
139
  $price = $product_data['meta']['_wpsc_price'];
140
  $sale_price = $product_data['meta']['_wpsc_special_price'];
141
 
142
- $wp_38 = version_compare( $GLOBALS['wp_version'], '3.8', '>=' );
143
-
144
- $currency_delete_class = $wp_38 ? ' dashicons dashicons-dismiss' : '';
145
- $currency_delete_text = $wp_38 ? '' : 'x';
146
  ?>
147
  <em id="wpsc_product_price_metabox_live_title" class="wpsc_metabox_live_title">
148
  <p>&nbsp;<?php echo esc_html( $ct_symb ); ?><span><?php echo esc_html( $sale_price ); ?></span></p>
@@ -348,7 +346,7 @@ function wpsc_stock_control_forms() {
348
 
349
  <?php
350
  $remaining_quantity = wpsc_get_remaining_quantity( $post->ID );
351
- $reserved_quantity = $product_data['meta']['_wpsc_stock'] - $remaining_quantity;
352
  if ( $reserved_quantity ) {
353
  echo '<p><em>';
354
  printf( _n('%s of them is reserved for pending or recently completed orders.',
139
  $price = $product_data['meta']['_wpsc_price'];
140
  $sale_price = $product_data['meta']['_wpsc_special_price'];
141
 
142
+ $currency_delete_class = ' dashicons dashicons-dismiss';
143
+ $currency_delete_text = '';
 
 
144
  ?>
145
  <em id="wpsc_product_price_metabox_live_title" class="wpsc_metabox_live_title">
146
  <p>&nbsp;<?php echo esc_html( $ct_symb ); ?><span><?php echo esc_html( $sale_price ); ?></span></p>
346
 
347
  <?php
348
  $remaining_quantity = wpsc_get_remaining_quantity( $post->ID );
349
+ $reserved_quantity = intval( $product_data['meta']['_wpsc_stock'] ) - $remaining_quantity;
350
  if ( $reserved_quantity ) {
351
  echo '<p><em>';
352
  printf( _n('%s of them is reserved for pending or recently completed orders.',
wpsc-admin/includes/product-functions.php CHANGED
@@ -19,7 +19,7 @@ function wpsc_get_max_upload_size(){
19
  */
20
  function wpsc_admin_submit_product( $post_ID, $post ) {
21
 
22
- if ( ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) || $post->post_type != 'wpsc-product' ) {
23
  return;
24
  }
25
 
@@ -53,7 +53,7 @@ function wpsc_admin_submit_product( $post_ID, $post ) {
53
  } else {
54
  $post_data['meta']['_wpsc_stock'] = isset( $post_data['meta']['_wpsc_stock'] ) ? (int) $post_data['meta']['_wpsc_stock'] : 0;
55
  }
56
-
57
  // Update low stock notifications
58
  if ( isset( $post_data['meta']['_wpsc_stock'] ) && isset( $post_data['meta']['_wpsc_product_metadata'] ) && ( $post_data['meta']['_wpsc_stock'] > $post_data['meta']['_wpsc_product_metadata']['stock_limit_notify'] ) ) {
59
  // Check if notification has been sent
@@ -62,7 +62,7 @@ function wpsc_admin_submit_product( $post_ID, $post ) {
62
  delete_product_meta( $product_id, 'stock_limit_notify_sent' );
63
  }
64
  }
65
-
66
  unset($post_data['meta']['_wpsc_limited_stock']);
67
  if(!isset($post_data['quantity_limited'])) $post_data['quantity_limited'] = '';
68
  if(!isset($post_data['special'])) $post_data['special'] = '';
@@ -203,8 +203,6 @@ function wpsc_admin_submit_product( $post_ID, $post ) {
203
 
204
  $post_data['files'] = $_FILES;
205
 
206
- if(isset($post_data['post_title']) && $post_data['post_title'] != '') {
207
-
208
  $product_columns = array(
209
  'name' => '',
210
  'description' => '',
@@ -272,8 +270,9 @@ function wpsc_admin_submit_product( $post_ID, $post ) {
272
  if(isset($post_data['files']['preview_file']['tmp_name']) && ($post_data['files']['preview_file']['tmp_name'] != '')) {
273
  wpsc_item_add_preview_file($product_id, $post_data['files']['preview_file']);
274
  }
 
275
  do_action('wpsc_edit_product', $product_id);
276
- }
277
  return $product_id;
278
  }
279
 
19
  */
20
  function wpsc_admin_submit_product( $post_ID, $post ) {
21
 
22
+ if ( ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) || $post->post_type !== 'wpsc-product' ) {
23
  return;
24
  }
25
 
53
  } else {
54
  $post_data['meta']['_wpsc_stock'] = isset( $post_data['meta']['_wpsc_stock'] ) ? (int) $post_data['meta']['_wpsc_stock'] : 0;
55
  }
56
+
57
  // Update low stock notifications
58
  if ( isset( $post_data['meta']['_wpsc_stock'] ) && isset( $post_data['meta']['_wpsc_product_metadata'] ) && ( $post_data['meta']['_wpsc_stock'] > $post_data['meta']['_wpsc_product_metadata']['stock_limit_notify'] ) ) {
59
  // Check if notification has been sent
62
  delete_product_meta( $product_id, 'stock_limit_notify_sent' );
63
  }
64
  }
65
+
66
  unset($post_data['meta']['_wpsc_limited_stock']);
67
  if(!isset($post_data['quantity_limited'])) $post_data['quantity_limited'] = '';
68
  if(!isset($post_data['special'])) $post_data['special'] = '';
203
 
204
  $post_data['files'] = $_FILES;
205
 
 
 
206
  $product_columns = array(
207
  'name' => '',
208
  'description' => '',
270
  if(isset($post_data['files']['preview_file']['tmp_name']) && ($post_data['files']['preview_file']['tmp_name'] != '')) {
271
  wpsc_item_add_preview_file($product_id, $post_data['files']['preview_file']);
272
  }
273
+
274
  do_action('wpsc_edit_product', $product_id);
275
+
276
  return $product_id;
277
  }
278
 
wpsc-admin/js/admin-legacy.js CHANGED
@@ -245,9 +245,7 @@ var getresults=function(results) {
245
  boxes = ["price_and_stock", "shipping", "variation", "advanced", "product_image", "product_download"];
246
  for (i=0;i<boxes.length;i++) {
247
  if ( ! jQuery('#'+boxes[i]+'-hide').is(':checked')){
248
- if (IS_WP27) {
249
- jQuery('#'+boxes[i]).hide();
250
- }
251
  }
252
  }
253
  }
245
  boxes = ["price_and_stock", "shipping", "variation", "advanced", "product_image", "product_download"];
246
  for (i=0;i<boxes.length;i++) {
247
  if ( ! jQuery('#'+boxes[i]+'-hide').is(':checked')){
248
+
 
 
249
  }
250
  }
251
  }
wpsc-admin/js/wp-e-commerce-admin.js CHANGED
@@ -25,7 +25,6 @@ if ( typeof wpsc_admin_vars !== undefined ) {
25
  var WPSC_IMAGE_URL = wpsc_admin_vars['WPSC_IMAGE_URL'];
26
  var fileThickboxLoadingImage = wpsc_admin_vars['fileThickboxLoadingImage'];
27
  var hidden_boxes = wpsc_admin_vars['hidden_boxes'];
28
- var IS_WP27 = wpsc_admin_vars['IS_WP27'];
29
  var TXT_WPSC_DELETE = wpsc_admin_vars['TXT_WPSC_DELETE'];
30
  var TXT_WPSC_TEXT = wpsc_admin_vars['TXT_WPSC_TEXT'];
31
  var TXT_WPSC_EMAIL = wpsc_admin_vars['TXT_WPSC_EMAIL'];
25
  var WPSC_IMAGE_URL = wpsc_admin_vars['WPSC_IMAGE_URL'];
26
  var fileThickboxLoadingImage = wpsc_admin_vars['fileThickboxLoadingImage'];
27
  var hidden_boxes = wpsc_admin_vars['hidden_boxes'];
 
28
  var TXT_WPSC_DELETE = wpsc_admin_vars['TXT_WPSC_DELETE'];
29
  var TXT_WPSC_TEXT = wpsc_admin_vars['TXT_WPSC_TEXT'];
30
  var TXT_WPSC_EMAIL = wpsc_admin_vars['TXT_WPSC_EMAIL'];
wpsc-components/merchant-core-v2/helpers/gateways.php CHANGED
@@ -300,8 +300,9 @@ function _wpsc_action_merchant_v2_validate_payment_method( $valid, $controller )
300
  case 'card_number2':
301
  case 'card_number3':
302
  case 'card_number4':
303
- if ( $card_number_error )
304
- continue;
 
305
 
306
  $messages['card_number'] = __( 'Please enter a valid credit card number', 'wp-e-commerce' );
307
  $card_number_error = true;
300
  case 'card_number2':
301
  case 'card_number3':
302
  case 'card_number4':
303
+ if ( $card_number_error ) {
304
+ break;
305
+ }
306
 
307
  $messages['card_number'] = __( 'Please enter a valid credit card number', 'wp-e-commerce' );
308
  $card_number_error = true;
wpsc-components/theme-engine-v1/helpers/ajax.php CHANGED
@@ -331,8 +331,7 @@ function wpsc_update_product_rating() {
331
  $vote_id = $data[0]['id'];
332
  setcookie( "voting_cookie[$product_id]", ($vote_id . "," . $rating ), time() + (60 * 60 * 24 * 360) );
333
  }
334
- if ( $_POST['ajax'] == 'true' ) {
335
-
336
  exit();
337
  }
338
  }
331
  $vote_id = $data[0]['id'];
332
  setcookie( "voting_cookie[$product_id]", ($vote_id . "," . $rating ), time() + (60 * 60 * 24 * 360) );
333
  }
334
+ if ( isset( $_POST['ajax'] ) && $_POST['ajax'] == 'true' ) {
 
335
  exit();
336
  }
337
  }
wpsc-components/theme-engine-v1/widgets/category_widget.php CHANGED
@@ -161,7 +161,9 @@ class WP_Widget_Product_Categories extends WP_Widget {
161
  }
162
  }
163
 
164
- add_action( 'widgets_init', create_function( '', 'return register_widget("WP_Widget_Product_Categories");' ) );
 
 
165
 
166
  function wpsc_category_widget_admin_category_list( $category, $level, $fieldconfig ) {
167
  // Only let the user choose top-level categories
161
  }
162
  }
163
 
164
+ add_action( 'widgets_init', function(){
165
+ return register_widget( 'WP_Widget_Product_Categories' );
166
+ });
167
 
168
  function wpsc_category_widget_admin_category_list( $category, $level, $fieldconfig ) {
169
  // Only let the user choose top-level categories
wpsc-components/theme-engine-v1/widgets/donations_widget.php CHANGED
@@ -101,8 +101,9 @@ class WP_Widget_Donations extends WP_Widget {
101
 
102
  }
103
 
104
- add_action( 'widgets_init', create_function( '', 'return register_widget("WP_Widget_Donations");' ) );
105
-
 
106
 
107
 
108
  /*
101
 
102
  }
103
 
104
+ add_action( 'widgets_init', function(){
105
+ return register_widget( 'WP_Widget_Donations' );
106
+ });
107
 
108
 
109
  /*
wpsc-components/theme-engine-v1/widgets/latest_product_widget.php CHANGED
@@ -111,7 +111,9 @@ class WP_Widget_Latest_Products extends WP_Widget {
111
  }
112
  }
113
 
114
- add_action( 'widgets_init', create_function( '', 'return register_widget("WP_Widget_Latest_Products");' ) );
 
 
115
 
116
  function wpsc_latest_product( $args = null, $instance ) {
117
  global $wpdb;
111
  }
112
  }
113
 
114
+ add_action( 'widgets_init', function() {
115
+ return register_widget( 'WP_Widget_Latest_Products' );
116
+ } );
117
 
118
  function wpsc_latest_product( $args = null, $instance ) {
119
  global $wpdb;
wpsc-components/theme-engine-v1/widgets/price_range_widget.php CHANGED
@@ -90,7 +90,9 @@ class WP_Widget_Price_Range extends WP_Widget {
90
 
91
  }
92
 
93
- add_action( 'widgets_init', create_function( '', 'return register_widget("WP_Widget_Price_Range");' ) );
 
 
94
 
95
  /**
96
  * Price Range Widget content function
@@ -138,13 +140,19 @@ function wpsc_price_range( $args = null ) {
138
 
139
  }
140
 
141
- if(isset($_GET['range'])){
142
  add_filter( 'posts_where', 'wpsc_range_where' );
143
  }
144
 
145
  function wpsc_range_where( $where ) {
146
  global $wpdb, $wp_query;
147
- $range = explode('-', $_GET['range']);
 
 
 
 
 
 
148
  if(!strpos($where,'wpsc-product'))
149
  return $where;
150
  if(!$range[0]){
90
 
91
  }
92
 
93
+ add_action( 'widgets_init', function() {
94
+ return register_widget( 'WP_Widget_Price_Range' );
95
+ });
96
 
97
  /**
98
  * Price Range Widget content function
140
 
141
  }
142
 
143
+ if ( isset( $_GET['range'] ) ) {
144
  add_filter( 'posts_where', 'wpsc_range_where' );
145
  }
146
 
147
  function wpsc_range_where( $where ) {
148
  global $wpdb, $wp_query;
149
+
150
+ if ( 'all' === $_GET['range'] ) {
151
+ return $where;
152
+ }
153
+
154
+ $range = explode( '-', $_GET['range'] );
155
+
156
  if(!strpos($where,'wpsc-product'))
157
  return $where;
158
  if(!$range[0]){
wpsc-components/theme-engine-v1/widgets/product_tag_widget.php CHANGED
@@ -90,8 +90,6 @@ class WP_Widget_Product_Tags extends WP_Widget {
90
 
91
  }
92
 
93
- add_action( 'widgets_init', create_function( '', 'return register_widget("WP_Widget_Product_Tags");' ) );
94
-
95
-
96
-
97
- ?>
90
 
91
  }
92
 
93
+ add_action( 'widgets_init', function(){
94
+ return register_widget( 'WP_Widget_Product_Tags' );
95
+ });
 
 
wpsc-components/theme-engine-v1/widgets/shopping_cart_widget.php CHANGED
@@ -145,6 +145,6 @@ class WP_Widget_Shopping_Cart extends WP_Widget {
145
  <?php
146
  }
147
  }
148
- add_action( 'widgets_init', create_function( '', 'return register_widget("WP_Widget_Shopping_Cart");' ) );
149
-
150
- ?>
145
  <?php
146
  }
147
  }
148
+ add_action( 'widgets_init', function(){
149
+ return register_widget( 'WP_Widget_Shopping_Cart' );
150
+ });
wpsc-core/wpsc-constants.php CHANGED
@@ -37,7 +37,7 @@ function _wpsc_is_session_started() {
37
  function wpsc_core_load_session() {
38
 
39
  if ( ! _wpsc_is_session_started() ) {
40
- @ session_start();
41
  }
42
 
43
  return _wpsc_is_session_started();
@@ -55,7 +55,7 @@ function wpsc_core_constants() {
55
 
56
  // Define Plugin version
57
  if ( ! defined( 'WPSC_VERSION' ) ) {
58
- define( 'WPSC_VERSION' , '3.14.0' );
59
  }
60
 
61
  if ( ! defined( 'WPSC_MINOR_VERSION' ) ) {
@@ -63,7 +63,7 @@ function wpsc_core_constants() {
63
  }
64
 
65
  if ( ! defined( 'WPSC_PRESENTABLE_VERSION' ) ) {
66
- define( 'WPSC_PRESENTABLE_VERSION', '3.14.0' );
67
  }
68
 
69
  // Define a salt to use when we hash, WPSC_SALT may be defined for us in our config file, so check first
@@ -142,24 +142,6 @@ function wpsc_core_constants() {
142
  }
143
  }
144
 
145
- /**
146
- * wpsc_core_version_processing()
147
- */
148
- function wpsc_core_constants_version_processing() {
149
- global $wp_version;
150
-
151
- $version_processing = str_replace( array( '_', '-', '+' ), '.', strtolower( $wp_version ) );
152
- $version_processing = str_replace( array( 'alpha', 'beta', 'gamma' ), array( 'a', 'b', 'g' ), $version_processing );
153
- $version_processing = preg_split( "/([a-z]+)/i", $version_processing, -1, PREG_SPLIT_DELIM_CAPTURE );
154
-
155
- array_walk( $version_processing, create_function( '&$v', '$v = trim($v,". ");' ) );
156
-
157
- define( 'IS_WP25', version_compare( $version_processing[0], '2.5', '>=' ) );
158
- define( 'IS_WP27', version_compare( $version_processing[0], '2.7', '>=' ) );
159
- define( 'IS_WP29', version_compare( $version_processing[0], '2.9', '>=' ) );
160
- define( 'IS_WP30', version_compare( $version_processing[0], '3.0', '>=' ) );
161
- }
162
-
163
  /**
164
  * wpsc_core_is_multisite()
165
  *
37
  function wpsc_core_load_session() {
38
 
39
  if ( ! _wpsc_is_session_started() ) {
40
+ @session_start();
41
  }
42
 
43
  return _wpsc_is_session_started();
55
 
56
  // Define Plugin version
57
  if ( ! defined( 'WPSC_VERSION' ) ) {
58
+ define( 'WPSC_VERSION' , '3.150' );
59
  }
60
 
61
  if ( ! defined( 'WPSC_MINOR_VERSION' ) ) {
63
  }
64
 
65
  if ( ! defined( 'WPSC_PRESENTABLE_VERSION' ) ) {
66
+ define( 'WPSC_PRESENTABLE_VERSION', '3.15.0' );
67
  }
68
 
69
  // Define a salt to use when we hash, WPSC_SALT may be defined for us in our config file, so check first
142
  }
143
  }
144
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
145
  /**
146
  * wpsc_core_is_multisite()
147
  *
wpsc-core/wpsc-deprecated.php CHANGED
@@ -1542,7 +1542,7 @@ function wpsc_packing_slip( $purchase_id ) {
1542
  case 'heading':
1543
 
1544
  if($form_field['name'] == "Hidden Fields")
1545
- continue;
1546
  else
1547
  echo " <tr class='heading'><td colspan='2'><strong>" . esc_html( $form_field['name'] ) . ":</strong></td></tr>\n\r";
1548
  break;
1542
  case 'heading':
1543
 
1544
  if($form_field['name'] == "Hidden Fields")
1545
+ break;
1546
  else
1547
  echo " <tr class='heading'><td colspan='2'><strong>" . esc_html( $form_field['name'] ) . ":</strong></td></tr>\n\r";
1548
  break;
wpsc-core/wpsc-functions.php CHANGED
@@ -476,17 +476,17 @@ function wpsc_register_post_types() {
476
  'not_found_in_trash' => __( 'No products found in Trash', 'wp-e-commerce' ),
477
  'menu_name' => __( 'Products' , 'wp-e-commerce' ),
478
  'parent_item_colon' => '',
479
- );
480
  $args = array(
481
  'capability_type' => 'post',
482
- 'supports' => array( 'title', 'editor', 'thumbnail', 'block-editor', 'revisions' ),
483
  'hierarchical' => true,
484
  'exclude_from_search' => false,
485
  'public' => true,
486
  'show_ui' => true,
487
  'show_in_rest' => true,
488
  'show_in_nav_menus' => true,
489
- 'menu_icon' => version_compare( $GLOBALS['wp_version'], '3.8', '<' ) ? WPSC_CORE_IMAGES_URL . '/credit_cards.png' : 'dashicons-cart',
490
  'labels' => $labels,
491
  'query_var' => true,
492
  'register_meta_box_cb' => 'wpsc_meta_boxes',
@@ -495,9 +495,30 @@ function wpsc_register_post_types() {
495
  'with_front' => false
496
  )
497
  );
 
498
  $args = apply_filters( 'wpsc_register_post_types_products_args', $args );
499
  register_post_type( 'wpsc-product', $args );
500
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
501
  // Purchasable product files
502
  $args = array(
503
  'capability_type' => 'post',
@@ -703,7 +724,6 @@ function wpsc_get_page_post_names() {
703
  return $wpsc_page;
704
  }
705
 
706
-
707
  /**
708
  * wpsc_cron()
709
  *
@@ -872,9 +892,9 @@ function wpsc_core_get_db_version() {
872
  }
873
 
874
  /**
875
- * get the current WPeC database version
876
  *
877
- * @return int current database version
878
  */
879
  function wpsc_core_shipping_enabled() {
880
  $shipping_disabled = get_option( 'do_not_use_shipping', -1 );
@@ -1220,4 +1240,4 @@ function wpsc_is_theme_engine( $version = '1.0' ) {
1220
  $te = get_option( 'wpsc_get_active_theme_engine', $version );
1221
 
1222
  return $version == $te;
1223
- }
476
  'not_found_in_trash' => __( 'No products found in Trash', 'wp-e-commerce' ),
477
  'menu_name' => __( 'Products' , 'wp-e-commerce' ),
478
  'parent_item_colon' => '',
479
+ );
480
  $args = array(
481
  'capability_type' => 'post',
482
+ 'supports' => [ 'title', 'editor', 'thumbnail', 'revisions', 'custom-fields' ],
483
  'hierarchical' => true,
484
  'exclude_from_search' => false,
485
  'public' => true,
486
  'show_ui' => true,
487
  'show_in_rest' => true,
488
  'show_in_nav_menus' => true,
489
+ 'menu_icon' => 'dashicons-cart',
490
  'labels' => $labels,
491
  'query_var' => true,
492
  'register_meta_box_cb' => 'wpsc_meta_boxes',
495
  'with_front' => false
496
  )
497
  );
498
+
499
  $args = apply_filters( 'wpsc_register_post_types_products_args', $args );
500
  register_post_type( 'wpsc-product', $args );
501
 
502
+ $wpsc_meta_keys = [
503
+ '_wpsc_stock',
504
+ '_wpsc_price',
505
+ '_wpsc_special_price',
506
+ '_wpsc_sku',
507
+ ];
508
+
509
+ foreach ( $wpsc_meta_keys as $key ) {
510
+ $post_type_object = get_post_type_object( 'wpsc-product' );
511
+
512
+ register_post_meta( 'wpsc-product', $key, [
513
+ 'show_in_rest' => true,
514
+ 'single' => true,
515
+ 'type' => 'string',
516
+ 'auth_callback' => function() use ( $post_type_object ) {
517
+ return current_user_can( $post_type_object->cap->edit_posts );
518
+ }
519
+ ] );
520
+ }
521
+
522
  // Purchasable product files
523
  $args = array(
524
  'capability_type' => 'post',
724
  return $wpsc_page;
725
  }
726
 
 
727
  /**
728
  * wpsc_cron()
729
  *
892
  }
893
 
894
  /**
895
+ * Check if shipping is enabled
896
  *
897
+ * @return boolean Whether or not shipping is enabled
898
  */
899
  function wpsc_core_shipping_enabled() {
900
  $shipping_disabled = get_option( 'do_not_use_shipping', -1 );
1240
  $te = get_option( 'wpsc_get_active_theme_engine', $version );
1241
 
1242
  return $version == $te;
1243
+ }
wpsc-core/wpsc-includes.php CHANGED
@@ -50,10 +50,7 @@ require_once( WPSC_FILE_PATH . '/wpsc-includes/purchase-log-notes.class.php'
50
  require_once( WPSC_FILE_PATH . '/wpsc-includes/checkout-form.class.php' );
51
  require_once( WPSC_FILE_PATH . '/wpsc-includes/checkout-form-data.class.php' );
52
  require_once( WPSC_FILE_PATH . '/wpsc-includes/wpsc-theme-engine-bootstrap.php' );
53
-
54
- if ( defined( 'REST_API_VERSION' ) ) {
55
- require_once( WPSC_FILE_PATH . '/wpsc-includes/wpsc-rest-api.class.php' );
56
- }
57
 
58
  do_action( 'wpsc_loaded_module_'. basename( __FILE__ ) );
59
 
@@ -79,13 +76,13 @@ include_once( WPSC_FILE_PATH . '/wpsc-widgets/admin_menu_widget.php' );
79
  // Gregs ASH Shipping
80
  require_once( WPSC_FILE_PATH . '/wpsc-includes/shipping.helper.php' );
81
 
82
- // Admin
83
- if ( is_admin() ) {
84
  include_once( WPSC_FILE_PATH . '/wpsc-admin/admin.php' );
85
- }
86
 
87
  // WP-CLI support
88
- if ( defined( 'WP_CLI' ) && WP_CLI && version_compare( phpversion(), '5.3', '>=' ) ) {
89
  require_once( WPSC_FILE_PATH . '/wpsc-includes/wpsc-wp-cli.php' );
90
  }
91
 
50
  require_once( WPSC_FILE_PATH . '/wpsc-includes/checkout-form.class.php' );
51
  require_once( WPSC_FILE_PATH . '/wpsc-includes/checkout-form-data.class.php' );
52
  require_once( WPSC_FILE_PATH . '/wpsc-includes/wpsc-theme-engine-bootstrap.php' );
53
+ require_once( WPSC_FILE_PATH . '/wpsc-includes/wpsc-rest-api.class.php' );
 
 
 
54
 
55
  do_action( 'wpsc_loaded_module_'. basename( __FILE__ ) );
56
 
76
  // Gregs ASH Shipping
77
  require_once( WPSC_FILE_PATH . '/wpsc-includes/shipping.helper.php' );
78
 
79
+ // Admin (Ensure this is loaded in)
80
+ add_action( 'admin_init', function() {
81
  include_once( WPSC_FILE_PATH . '/wpsc-admin/admin.php' );
82
+ } );
83
 
84
  // WP-CLI support
85
+ if ( defined( 'WP_CLI' ) && WP_CLI ) {
86
  require_once( WPSC_FILE_PATH . '/wpsc-includes/wpsc-wp-cli.php' );
87
  }
88
 
wpsc-includes/cart-item.class.php CHANGED
@@ -235,7 +235,7 @@ class WPSC_Cart_Item {
235
  if ( isset( $special_price ) && $special_price > 0 && $special_price < $price )
236
  $price = $special_price;
237
  $priceandstock_id = 0;
238
- $this->weight = isset( $product_meta[0]['weight'] ) ? $product_meta[0]["weight"] : 0;
239
  // if we are using table rate price
240
  if ( isset( $product_meta[0]['table_rate_price'] ) ) {
241
  $levels = $product_meta[0]['table_rate_price'];
@@ -376,7 +376,7 @@ class WPSC_Cart_Item {
376
 
377
  function calculate_shipping($method = null) {
378
  global $wpdb, $wpsc_cart, $wpsc_shipping_modules;
379
- $shipping = '';
380
  if($method === null)
381
  $method = $this->cart->selected_shipping_method;
382
 
235
  if ( isset( $special_price ) && $special_price > 0 && $special_price < $price )
236
  $price = $special_price;
237
  $priceandstock_id = 0;
238
+ $this->weight = isset( $product_meta[0]['weight'] ) ? floatval( $product_meta[0]["weight"] ) : 0;
239
  // if we are using table rate price
240
  if ( isset( $product_meta[0]['table_rate_price'] ) ) {
241
  $levels = $product_meta[0]['table_rate_price'];
376
 
377
  function calculate_shipping($method = null) {
378
  global $wpdb, $wpsc_cart, $wpsc_shipping_modules;
379
+ $shipping = 0;
380
  if($method === null)
381
  $method = $this->cart->selected_shipping_method;
382
 
wpsc-includes/cart.class.php CHANGED
@@ -980,7 +980,7 @@ class WPSC_Cart {
980
  * @return float returns the price as a floating point value
981
  */
982
  function calculate_total_weight( $for_shipping = false ) {
983
- $total = '';
984
  if ( $for_shipping == true ) {
985
  foreach ( $this->cart_items as $key => $cart_item ) {
986
  if ( $cart_item->uses_shipping == 1 ) {
980
  * @return float returns the price as a floating point value
981
  */
982
  function calculate_total_weight( $for_shipping = false ) {
983
+ $total = 0;
984
  if ( $for_shipping == true ) {
985
  foreach ( $this->cart_items as $key => $cart_item ) {
986
  if ( $cart_item->uses_shipping == 1 ) {
wpsc-includes/checkout.class.php CHANGED
@@ -381,7 +381,7 @@ class wpsc_checkout {
381
  function validate_forms() {
382
  global $wpsc_cart, $wpdb, $current_user, $user_ID, $wpsc_gateway_error_messages, $wpsc_checkout_error_messages, $wpsc_customer_checkout_details, $wpsc_registration_error_messages;
383
  $any_bad_inputs = false;
384
- $bad_input_message = '';
385
  $wpsc_gateway_error_messages = array();
386
  $wpsc_checkout_error_messages = array();
387
  $wpsc_registration_error_messages = array();
@@ -548,7 +548,7 @@ class wpsc_checkout {
548
  // Check if the shoppers location has changed
549
  _wpsc_has_visitor_location_changed();
550
 
551
- $states = array( 'is_valid' => ! $any_bad_inputs, 'error_messages' => $bad_input_message );
552
  $states = apply_filters( 'wpsc_checkout_form_validation', $states );
553
  return $states;
554
  }
381
  function validate_forms() {
382
  global $wpsc_cart, $wpdb, $current_user, $user_ID, $wpsc_gateway_error_messages, $wpsc_checkout_error_messages, $wpsc_customer_checkout_details, $wpsc_registration_error_messages;
383
  $any_bad_inputs = false;
384
+ $bad_input_messages = [];
385
  $wpsc_gateway_error_messages = array();
386
  $wpsc_checkout_error_messages = array();
387
  $wpsc_registration_error_messages = array();
548
  // Check if the shoppers location has changed
549
  _wpsc_has_visitor_location_changed();
550
 
551
+ $states = array( 'is_valid' => ! $any_bad_inputs, 'error_messages' => $bad_input_messages );
552
  $states = apply_filters( 'wpsc_checkout_form_validation', $states );
553
  return $states;
554
  }
wpsc-includes/form-display.functions.php CHANGED
@@ -12,7 +12,7 @@ function wpsc_uploaded_files() {
12
  $num = 0;
13
  $dirlist = array( );
14
 
15
- if ( count( $wpsc_uploaded_file_cache ) > 0 ) {
16
  $dirlist = $wpsc_uploaded_file_cache;
17
  } elseif ( $dir ) {
18
  while ( ($file = @readdir( $dir )) !== false ) {
12
  $num = 0;
13
  $dirlist = array( );
14
 
15
+ if ( $wpsc_uploaded_file_cache && count( $wpsc_uploaded_file_cache ) > 0 ) {
16
  $dirlist = $wpsc_uploaded_file_cache;
17
  } elseif ( $dir ) {
18
  while ( ($file = @readdir( $dir )) !== false ) {
wpsc-includes/product.class.php CHANGED
@@ -665,7 +665,7 @@ class WPSC_Product {
665
  * @param array|string $args Arguments. See {@link WPSC_Purchase_Log::fetch_stats()}
666
  * @return array 'sales' and 'earnings' stats
667
  */
668
- public function get_stats( $args = '' ) {
669
  return WPSC_Purchase_Log::get_stats_for_product( $this->post->ID, $args );
670
  }
671
  }
665
  * @param array|string $args Arguments. See {@link WPSC_Purchase_Log::fetch_stats()}
666
  * @return array 'sales' and 'earnings' stats
667
  */
668
+ public function get_stats( $args = [] ) {
669
  return WPSC_Purchase_Log::get_stats_for_product( $this->post->ID, $args );
670
  }
671
  }
wpsc-includes/purchase-log.class.php CHANGED
@@ -341,7 +341,7 @@ class WPSC_Purchase_Log extends WPSC_Query_Base {
341
  * @param int $id ID of the product
342
  * @return array Array containing 'sales' and 'earnings' stats
343
  */
344
- public static function get_stats_for_product( $id, $args = '' ) {
345
 
346
  $product = WPSC_Product::get_instance( $id );
347
 
341
  * @param int $id ID of the product
342
  * @return array Array containing 'sales' and 'earnings' stats
343
  */
344
+ public static function get_stats_for_product( $id, $args = [] ) {
345
 
346
  $product = WPSC_Product::get_instance( $id );
347
 
wpsc-includes/wpsc-meta-visitor.php CHANGED
@@ -570,8 +570,7 @@ function wpsc_get_visitor_cart( $visitor_id ) {
570
  case 'current_cart_item': // don't load array cursor
571
  case 'current_shipping_method': // don't load array cursor
572
  case 'current_shipping_quote': // don't load array cursor
573
- continue;
574
-
575
  case 'shipping_methods':
576
  case 'shipping_quotes':
577
  case 'cart_items':
@@ -588,7 +587,6 @@ function wpsc_get_visitor_cart( $visitor_id ) {
588
 
589
  break;
590
 
591
-
592
  case 'cart_item':
593
  /////////////////////////////////////////////////////////////////////////////
594
  // The type of the decoded value must be an wpsc_cart_item, we are going to
@@ -654,7 +652,7 @@ function wpsc_update_visitor_cart( $visitor_id, $wpsc_cart ) {
654
  case 'current_cart_item': // don't save array cursor
655
  case 'current_shipping_method': // don't save array cursor
656
  case 'current_shipping_quote': // don't save array cursor
657
- continue;
658
 
659
  case 'shipping_methods':
660
  case 'shipping_quotes':
@@ -1342,4 +1340,4 @@ function wpsc_delete_visitor_ajax() {
1342
 
1343
 
1344
  add_action( 'wp_ajax_wpsc_delete_visitor', 'wpsc_delete_visitor_ajax' );
1345
- add_action( 'wp_ajax_nopriv_wpsc_delete_visitor', 'wpsc_delete_visitor_ajax' );
570
  case 'current_cart_item': // don't load array cursor
571
  case 'current_shipping_method': // don't load array cursor
572
  case 'current_shipping_quote': // don't load array cursor
573
+ break;
 
574
  case 'shipping_methods':
575
  case 'shipping_quotes':
576
  case 'cart_items':
587
 
588
  break;
589
 
 
590
  case 'cart_item':
591
  /////////////////////////////////////////////////////////////////////////////
592
  // The type of the decoded value must be an wpsc_cart_item, we are going to
652
  case 'current_cart_item': // don't save array cursor
653
  case 'current_shipping_method': // don't save array cursor
654
  case 'current_shipping_quote': // don't save array cursor
655
+ break;
656
 
657
  case 'shipping_methods':
658
  case 'shipping_quotes':
1340
 
1341
 
1342
  add_action( 'wp_ajax_wpsc_delete_visitor', 'wpsc_delete_visitor_ajax' );
1343
+ add_action( 'wp_ajax_nopriv_wpsc_delete_visitor', 'wpsc_delete_visitor_ajax' );
wpsc-includes/wpsc-theme-engine-bootstrap.php CHANGED
@@ -197,12 +197,6 @@ function _wpsc_maybe_activate_theme_engine_v2() {
197
  $activate = false;
198
  }
199
 
200
- // Our checkout process uses a custom REST API endpoint by default, requiring the REST API.
201
- // An alternative approach here would be to filter the fancy notifications to be turned off.
202
- if ( version_compare( $GLOBALS['wp_version'], '4.7.0', '<' ) ) {
203
- $activate = false;
204
- }
205
-
206
  $activate = apply_filters( '_wpsc_maybe_activate_theme_engine_v2', $activate );
207
  $new_theme_engine = $activate ? '2.0' : '1.0';
208
  $old_theme_engine = get_option( 'wpsc_get_active_theme_engine' );
197
  $activate = false;
198
  }
199
 
 
 
 
 
 
 
200
  $activate = apply_filters( '_wpsc_maybe_activate_theme_engine_v2', $activate );
201
  $new_theme_engine = $activate ? '2.0' : '1.0';
202
  $old_theme_engine = get_option( 'wpsc_get_active_theme_engine' );
wpsc-taxes/models/taxes.class.php CHANGED
@@ -46,11 +46,11 @@ class wpec_taxes {
46
  }
47
 
48
  function wpec_taxes_get_rates() {
49
- return $this->taxes_options['wpec_taxes_rates'];
50
  }
51
 
52
  function wpec_taxes_get_bands() {
53
- return $this->taxes_options['wpec_taxes_bands'];
54
  }
55
 
56
  function wpec_taxes_get_options() {
46
  }
47
 
48
  function wpec_taxes_get_rates() {
49
+ return (array) $this->taxes_options['wpec_taxes_rates'];
50
  }
51
 
52
  function wpec_taxes_get_bands() {
53
+ return (array) $this->taxes_options['wpec_taxes_bands'];
54
  }
55
 
56
  function wpec_taxes_get_options() {
wpsc-widgets/admin_menu_widget.php CHANGED
@@ -84,7 +84,9 @@ class WP_Widget_Admin_Menu extends WP_Widget {
84
 
85
  }
86
 
87
- add_action( 'widgets_init', create_function( '', 'return register_widget("WP_Widget_Admin_Menu");' ) );
 
 
88
 
89
  /**
90
  * Admin Menu Widget content function
84
 
85
  }
86
 
87
+ add_action( 'widgets_init', function() {
88
+ return register_widget( 'WP_Widget_Admin_Menu' );
89
+ } );
90
 
91
  /**
92
  * Admin Menu Widget content function