|
Server : LiteSpeed System : Linux server51.dnsbootclub.com 4.18.0-553.62.1.lve.el8.x86_64 #1 SMP Mon Jul 21 17:50:35 UTC 2025 x86_64 User : nandedex ( 1060) PHP Version : 8.1.33 Disable Function : NONE Directory : /home/nandedex/www/s.nandedexpress.com/ |
PK ���[�7�^8 ^8 better-smart-thumbnails.phpnu �[��� <?php
/*
Plugin Name: Smart Thumbnails
Plugin URI: http://betterstudio.com
Description: Create Better and Smarter Thumbnails.
Version: 1.0.0
Author: BetterStudio
Author URI: http://betterstudio.com
License: GPL2
Requires at least: 4.5.0
*/
/**
* Better_Smart_Thumbnails class wrapper
*
* @return Better_Smart_Thumbnails
*/
function Better_Smart_Thumbnails() {
return Better_Smart_Thumbnails::self();
}
// Fire up the plugin
Better_Smart_Thumbnails();
/**
* Better Comments Functionality
*/
class Better_Smart_Thumbnails {
/**
* @var array
*/
protected $focus_point = array();
/**
* Current plugin version number
*
* @var string
*/
public static $version = '1.0.0';
/**
* Contains BR option panel id
*
* @var string
*/
public static $panel_id = 'smart-thumbnails';
/**
* Inner array of instances
*
* @var array
*/
protected static $instances = array();
/**
* Initialize!
*/
function __construct() {
// make sure following code only one time run
static $initialized;
if ( $initialized ) {
return;
} else {
$initialized = TRUE;
}
add_action( 'better-framework/after_setup', array( $this, 'init' ) );
// Includes BF loader if not included before
include self::dir_path( 'includes/libs/better-framework/init.php' );
// Add option panel
include $this->dir_path( 'includes/options/panel.php' );
// Register included BF to loader
add_filter( 'better-framework/loader', array( $this, 'better_framework_loader' ) );
// Enable needed sections
add_filter( 'better-framework/sections', array( $this, 'setup_bf_features' ), 50 );
add_filter( 'better-framework/oculus/logger/turn-off', array( $this, 'oculus_logger' ), 22, 3 );
}
/**
* Used for accessing plugin directory URL
*
* @param string $address
*
* @return string
*/
public static function dir_url( $address = '' ) {
static $url;
if ( is_null( $url ) ) {
$url = trailingslashit( plugin_dir_url( __FILE__ ) );
}
return $url . ltrim( $address, '/' );
}
/**
* Used for accessing plugin directory path
*
* @param string $address
*
* @return string
*/
public static function dir_path( $address = '' ) {
static $path;
if ( is_null( $path ) ) {
$path = trailingslashit( plugin_dir_path( __FILE__ ) );
}
return $path . ltrim( $address, '/' );
}
/**
* Returns current version
*
* @return string
*/
public static function get_version() {
return self::$version;
}
/**
* Used for retrieving options simply and safely for next versions
*
* @param string $option_key
*
* @return mixed|null
*/
public static function get_option( $option_key ) {
return bf_get_option( $option_key, self::$panel_id );
}
/**
* Build the required object instance
*
* @param string $object
* @param bool $fresh
* @param bool $just_include
*
* @return self|null
*/
public static function factory( $object = 'self', $fresh = FALSE, $just_include = FALSE ) {
if ( isset( self::$instances[ $object ] ) && ! $fresh ) {
return self::$instances[ $object ];
}
switch ( $object ) {
/**
* Main Better_Smart_Thumbnails Class
*/
case 'self':
$class = 'Better_Smart_Thumbnails';
break;
}
// Just prepare/includes files
if ( $just_include ) {
return NULL;
}
// don't cache fresh objects
if ( $fresh ) {
return new $class;
}
self::$instances[ $object ] = new $class;
return self::$instances[ $object ];
}
/**
* Used for accessing alive instance class
*
* @since 1.0
*
* @return Better_Smart_Thumbnails
*/
public static function self() {
return self::factory();
}
/**
* @hooked better-framework/after_setup
*
* @since 1.0.0
*/
public function init() {
if ( ! self::get_option( 'enable' ) ) {
return;
}
// Enqueue assets
add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts_admin' ) );
add_filter( 'image_resize_dimensions', array( $this, 'resize_dimensions' ), 100, 6 );
// Do not crop medium image size because it will show for preview image on `Featured Image` modal
add_filter( 'pre_option_medium_crop', '__return_false', 99 );
add_filter( 'attachment_fields_to_edit', array( $this, 'pass_data2_media_modal' ), 30, 2 );
add_action( 'wp_ajax_bt-regenerate-thumbnails', array( $this, 'ajax_get_crop_image_data' ) );
add_action( 'wp_ajax_bt-preview-thumbnails', array( $this, 'ajax_get_preview_image_data' ) );
if ( self::get_option( 'force-clear-cache' ) ) {
add_filter( 'wp_get_attachment_metadata', array( $this, 'append_time2images' ) );
}
}
/**
* Adds included BetterFramework to loader
*
* @param $frameworks
*
* @since 1.0.0
* @return array
*/
function better_framework_loader( $frameworks ) {
$frameworks[] = array(
'version' => '3.9.0',
'path' => self::dir_path( 'includes/libs/better-framework/' ),
'uri' => self::dir_url( 'includes/libs/better-framework/' ),
);
return $frameworks;
}
/**
* Setups features of BetterFramework
*
* @param array $features
*
* @since 1.0.0
* @return array
*/
function setup_bf_features( $features ) {
$features['admin_panel'] = TRUE;
return $features;
}
/**
* @param int $attachment_id
*
* @since 1.0.0
* @return array
*/
protected function delete_useless_thumbnails( $attachment_id ) {
if ( ! class_exists( 'ST_CleanUp_Thumbnail' ) ) {
require self::dir_path( 'includes/class-st-cleanup-thumbnails.php' );
}
$cleanup = new ST_CleanUp_Thumbnail( $attachment_id );
$cleanup->cleanup();
}
/**
* @hooked wp_ajax_bt-regenerate-thumbnails
*
* @since 1.0.0
*/
public function ajax_get_crop_image_data() {
if ( empty( $_REQUEST['thumbnail_id'] ) || ! isset( $_REQUEST['focus_x'] ) || ! isset( $_REQUEST['focus_y'] ) ) {
return;
}
$attachment_id = intval( $_REQUEST['thumbnail_id'] );
check_ajax_referer( $this->get_nonce_key( $attachment_id ), 'nonce' );
$focus_x = intval( $_REQUEST['focus_x'] ) / 100;
$focus_y = intval( $_REQUEST['focus_y'] ) / 100;
// Validate x, y values
if ( ! ( $focus_x >= 0 && $focus_x <= 1 ) ) {
return;
}
if ( ! ( $focus_y >= 0 && $focus_y <= 1 ) ) {
return;
}
$this->focus_point = array( $focus_x, $focus_y );
$this->set_focus_point( $attachment_id, $focus_x, $focus_y );
$metadata = wp_generate_attachment_metadata( $attachment_id, get_attached_file( $attachment_id ) );
//
$metadata['bt-time'] = time();
wp_update_attachment_metadata( $attachment_id, $metadata );
if ( self::get_option( 'delete-unused-thumbnail' ) ) {
$this->delete_useless_thumbnails( $attachment_id );
}
wp_send_json_success( array( 'message' => __( 'All thumbnails has been successfully generated.', 'smart-thumbnails' ) ) );
}
/**
* @hooked wp_ajax_bt-preview-thumbnails
*
* @since 1.0.0
*/
public function ajax_get_preview_image_data() {
if ( empty( $_REQUEST['thumbnail_id'] ) ) {
return;
}
$attachment_id = intval( $_REQUEST['thumbnail_id'] );
check_ajax_referer( $this->get_nonce_key( $attachment_id ), 'nonce' );
$data = array();
$data['l10n'] = array(
'all_l10n' => __( 'All', 'smart-thumbnails' ),
'header' => __( 'Preview Cropped Images', 'smart-thumbnails' ),
);
$data['images'] = array();
$metadata = wp_get_attachment_metadata( $attachment_id );
if ( ! empty( $metadata['sizes'] ) ) {
$base_url = wp_upload_dir();
$base_url = $base_url['baseurl'];
$sub_dir = dirname( $metadata['file'] );
foreach ( $metadata['sizes'] as $id => $size ) {
$file = $size['file'];
array_push( $data['images'], array(
'id' => $id,
'img' => "$base_url/$sub_dir/$file",
'label' => ucwords( str_replace( array( '-', '_' ), ' ', $id ) ),
) );
}
}
wp_send_json_success( compact( 'data' ) );
}
/**
*
* @param array $form_fields An array of attachment form fields.
* @param WP_Post $post The WP_Post attachment object.
*
* @since 1.0.0
* @return array
*/
public function pass_data2_media_modal( $form_fields, $post ) {
$nonce = sprintf( '<input value="%s" class="bt-regenerate-nonce" type="hidden">', esc_attr( $this->get_nonce( $post->ID ) ) );
$saved_focus_point = sprintf( '<input value="%s" class="bt-focus-point-xy" type="hidden">', esc_attr( $this->get_focus_point( $post->ID ) ) );
$form_fields['bt-regenerate-nonce'] = array(
'show_in_edit' => FALSE,
'tr' => $nonce . $saved_focus_point,
);
return $form_fields;
}
/**
* @param null|mixed $null Whether to preempt output of the resize dimensions.
* @param int $orig_w Original width in pixels.
* @param int $orig_h Original height in pixels.
* @param int $dest_w New width in pixels.
* @param int $dest_h New height in pixels.
* @param bool|array $crop Whether to crop image to specified width and height or resize.
*
* @return array
*/
function resize_dimensions( $null, $orig_w, $orig_h, $dest_w, $dest_h, $crop ) {
if ( ! $crop ) {
return $null;
}
$is_portrait = ( $orig_w + ( $orig_h * 0.14 ) ) < $orig_h;
if ( $is_portrait && empty( $this->focus_point ) ) {
if ( Better_Smart_Thumbnails::get_option( 'portrait-default-top' ) ) {
$this->focus_point = array( 0.5, 0 );
}
}
if ( empty( $this->focus_point ) ) {
return $null;
}
if ( ! self::get_option( 'enlarge-smaller' ) ) {
$dest_w = min( $dest_w, $orig_w );
$dest_h = min( $dest_h, $orig_h );
}
$dest_x = $dest_y = 0;
$size_ratio = max( $dest_w / $orig_w, $dest_h / $orig_h );
$crop_w = round( $dest_w / $size_ratio );
$crop_h = round( $dest_h / $size_ratio );
$s_x = floor( ( $orig_w - $crop_w ) * $this->focus_point[0] );
$s_y = floor( ( $orig_h - $crop_h ) * $this->focus_point[1] );
// The canvas is the same as the resulting image.
$dst_canvas_w = $dest_w;
$dst_canvas_h = $dest_h;
if (
$dest_w >= $orig_w &&
$dest_h >= $orig_h
) {
return $null;
}
return array(
(int) $dest_x,
(int) $dest_y,
(int) $s_x,
(int) $s_y,
(int) $dest_w,
(int) $dest_h,
(int) $crop_w,
(int) $crop_h,
(int) $dst_canvas_w,
(int) $dst_canvas_h
);
}
/**
* @param int $thumbnail_id
*
* @since 1.0.0
* @return string
*/
public function get_nonce( $thumbnail_id ) {
return wp_create_nonce( $this->get_nonce_key( $thumbnail_id ) );
}
/**
* @param int $thumbnail_id
*
* @since 1.0.0
* @return string
*/
public function get_nonce_key( $thumbnail_id ) {
return sprintf( 'ajax-protect-%d', $thumbnail_id );
}
/**
* Used for registering scripts in admin area
*
* @hooked admin_enqueue_scripts
*
* @since 1.0.0
*/
public function enqueue_scripts_admin() {
bf_enqueue_script(
'smart-thumbnails',
bf_append_suffix( self::dir_url( '/assets/js/better-smart-thumbnails' ), '.js' ),
array(),
bf_append_suffix( self::dir_path( '/assets/js/better-smart-thumbnails' ), '.js' ),
self::$version
);
bf_enqueue_style(
'smart-thumbnails',
bf_append_suffix( self::dir_url( '/assets/css/better-smart-thumbnails' ), '.css' ),
array(),
bf_append_suffix( self::dir_path( '/assets/css/better-smart-thumbnails' ), '.css' ),
self::$version
);
$this->localize_script();
}
/**
* Print localization vars.
*
* @hooked wp_enqueue_scripts
*
* @since 1.0.0
*/
public function localize_script() {
bf_localize_script( 'smart-thumbnails', 'st_loc', array(
'translate' => array(
'preview' => __( 'Preview Images', 'smart-thumbnails' ),
),
'grid' => (bool) self::get_option( 'grid' ),
'default_fp' => $this->default_focus_point(),
'portrait_default_top' => (booL) Better_Smart_Thumbnails::get_option( 'portrait-default-top' ),
) );
}
/**
* Enable Oculus error logging system for plugin
*
* @hooked better-framework/oculus/logger/filter
*
* @access private
*
* @param boolean $bool previous value
* @param string $product_dir
* @param string $type_dir
*
* @return bool true if error belongs to plugin, previous value otherwise.
*/
public function oculus_logger( $bool, $product_dir, $type_dir ) {
if ( $type_dir === 'plugins' && $product_dir === 'smart-thumbnails' ) {
return FALSE;
}
return $bool;
}
/**
* @hooked wp_get_attachment_metadata
*
* @param array|bool $data Array of meta data for the given attachment, or false
* if the object does not exist.
*
* @since 1.0.0
* @return array|bool
*/
public function append_time2images( $data ) {
if ( ! $data || empty( $data['bt-time'] ) ) {
return $data;
}
$time = $data['bt-time'];
$data['file'] .= '?' . $time;
if ( ! empty( $data['sizes'] ) ) {
$sizes = array();
foreach ( $data['sizes'] as $size => $info ) {
$info['file'] .= '?' . $time;
$sizes[ $size ] = $info;
}
$data['sizes'] = $sizes;
}
return $data;
}
/**
* Save attachment image focus point
*
* @param int $attachment_id
* @param int $focus_x
* @param int $focus_y
*
* @since 1.0.0
* @return bool
*/
public function set_focus_point( $attachment_id, $focus_x, $focus_y ) {
return (bool) update_post_meta( $attachment_id, 'bt-focus-point', "$focus_x-$focus_y" );
}
/**
* Save attachment image focus point
*
* @param int $attachment_id
*
* @since 1.0.0
* @return string "x-y" on success
*/
public function get_focus_point( $attachment_id ) {
return get_post_meta( $attachment_id, 'bt-focus-point', TRUE );
}
/**
* Get default image focus point.
*
* @since 1.0.0
* @return array x,y in position values in 0-1 range
*/
public function default_focus_point() {
list( $y_position_name, $x_position_name ) = explode( '-', self::get_option( 'default-focus-point' ), 2 );
$location_percentage = array(
'x' => array(
'left' => 0.165,
'center' => 0.5,
'right' => 0.835,
),
'y' => array(
'top' => 0.165,
'center' => 0.5,
'bottom' => 0.835,
),
);
if ( isset( $location_percentage['y'][ $y_position_name ] ) && isset( $location_percentage['x'][ $x_position_name ] ) ) {
return array(
$location_percentage['x'][ $x_position_name ],
$location_percentage['y'][ $y_position_name ]
);
}
return array( 50, 50 );
}
}
PK ���[6*�1� � gulpfile.jsnu �[��� var elixir = require('laravel-elixir');
elixir.config.publicDir = 'assets';
elixir.config.publicPath = 'assets';
elixir.config.assetsPath = '';
elixir.config.js.folder = '';
elixir.config.css.folder = '';
Elixir.inProduction = true;
elixir(function (mix) {
var suffix = Elixir.inProduction ? '.min' : '';
mix.scripts(getJsList(), 'assets/js/better-smart-thumbnails' + suffix + '.js');
mix.styles(getCssList(), 'assets/css/better-smart-thumbnails' + suffix + '.css');
});
function getJsList() {
return ['assets/js/.before-concat.txt'].concat(require('./assets/js/list.js')).concat('assets/js/.after-concat.txt');
}
function getCssList() {
return require('./assets/css/list.js');
}
PK ���[\Z4Bt t package-lock.jsonnu �[��� {
"requires": true,
"lockfileVersion": 1,
"dependencies": {
"@gulp-sourcemaps/map-sources": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/@gulp-sourcemaps/map-sources/-/map-sources-1.0.0.tgz",
"integrity": "sha1-iQrnxdjId/bThIYCFazp1+yUW9o=",
"requires": {
"normalize-path": "2.1.1",
"through2": "2.0.3"
}
},
"abbrev": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
"integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q=="
},
"accord": {
"version": "0.28.0",
"resolved": "https://registry.npmjs.org/accord/-/accord-0.28.0.tgz",
"integrity": "sha512-sPF34gqHegaCSryKf5wHJ8wREK1dTZnHmC9hsB7D8xjntRdd30DXDPKf0YVIcSvnXJmcYu5SCvZRz28H++kFhQ==",
"requires": {
"convert-source-map": "1.5.1",
"glob": "7.1.2",
"indx": "0.2.3",
"lodash.clone": "4.5.0",
"lodash.defaults": "4.2.0",
"lodash.flatten": "4.4.0",
"lodash.merge": "4.6.1",
"lodash.partialright": "4.2.1",
"lodash.pick": "4.4.0",
"lodash.uniq": "4.5.0",
"resolve": "1.7.1",
"semver": "5.5.0",
"uglify-js": "2.8.29",
"when": "3.7.8"
},
"dependencies": {
"glob": {
"version": "7.1.2",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
"integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
"requires": {
"fs.realpath": "1.0.0",
"inflight": "1.0.6",
"inherits": "2.0.3",
"minimatch": "3.0.4",
"once": "1.3.3",
"path-is-absolute": "1.0.1"
}
},
"minimatch": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
"requires": {
"brace-expansion": "1.1.11"
}
},
"semver": {
"version": "5.5.0",
"resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz",
"integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA=="
}
}
},
"acorn": {
"version": "4.0.13",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz",
"integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c="
},
"ajv": {
"version": "4.11.8",
"resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz",
"integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=",
"requires": {
"co": "4.6.0",
"json-stable-stringify": "1.0.1"
}
},
"align-text": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz",
"integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=",
"requires": {
"kind-of": "3.2.2",
"longest": "1.0.1",
"repeat-string": "1.6.1"
},
"dependencies": {
"kind-of": {
"version": "3.2.2",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
"integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
"requires": {
"is-buffer": "1.1.6"
}
}
}
},
"amdefine": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz",
"integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU="
},
"ansi-cyan": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/ansi-cyan/-/ansi-cyan-0.1.1.tgz",
"integrity": "sha1-U4rlKK+JgvKK4w2G8vF0VtJgmHM=",
"requires": {
"ansi-wrap": "0.1.0"
}
},
"ansi-gray": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz",
"integrity": "sha1-KWLPVOyXksSFEKPetSRDaGHvclE=",
"requires": {
"ansi-wrap": "0.1.0"
}
},
"ansi-red": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/ansi-red/-/ansi-red-0.1.1.tgz",
"integrity": "sha1-jGOPnRCAgAo1PJwoyKgcpHBdlGw=",
"requires": {
"ansi-wrap": "0.1.0"
}
},
"ansi-regex": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
"integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8="
},
"ansi-styles": {
"version": "2.2.1",
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
"integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4="
},
"ansi-wrap": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz",
"integrity": "sha1-qCJQ3bABXponyoLoLqYDu/pF768="
},
"ansicolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/ansicolors/-/ansicolors-0.2.1.tgz",
"integrity": "sha1-vgiVmQl7dKXJxKhKDNvNtivYeu8="
},
"aproba": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz",
"integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw=="
},
"archy": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz",
"integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA="
},
"are-we-there-yet": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz",
"integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=",
"requires": {
"delegates": "1.0.0",
"readable-stream": "2.3.6"
},
"dependencies": {
"isarray": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
},
"readable-stream": {
"version": "2.3.6",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
"integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
"requires": {
"core-util-is": "1.0.2",
"inherits": "2.0.3",
"isarray": "1.0.0",
"process-nextick-args": "2.0.0",
"safe-buffer": "5.1.2",
"string_decoder": "1.1.1",
"util-deprecate": "1.0.2"
}
},
"string_decoder": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
"requires": {
"safe-buffer": "5.1.2"
}
}
}
},
"arr-diff": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz",
"integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA="
},
"arr-flatten": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz",
"integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg=="
},
"arr-union": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz",
"integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ="
},
"array-differ": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz",
"integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE="
},
"array-each": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz",
"integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8="
},
"array-find-index": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz",
"integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E="
},
"array-slice": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz",
"integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w=="
},
"array-union": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz",
"integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=",
"requires": {
"array-uniq": "1.0.3"
}
},
"array-uniq": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz",
"integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY="
},
"array-unique": {
"version": "0.3.2",
"resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz",
"integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg="
},
"arrify": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz",
"integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0="
},
"asap": {
"version": "2.0.6",
"resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
"integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=",
"optional": true
},
"asn1": {
"version": "0.2.3",
"resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz",
"integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y="
},
"assert-plus": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz",
"integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ="
},
"assign-symbols": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz",
"integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c="
},
"async": {
"version": "1.5.2",
"resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz",
"integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo="
},
"async-done": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/async-done/-/async-done-1.3.1.tgz",
"integrity": "sha512-R1BaUeJ4PMoLNJuk+0tLJgjmEqVsdN118+Z8O+alhnQDQgy0kmD5Mqi0DNEmMx2LM0Ed5yekKu+ZXYvIHceicg==",
"requires": {
"end-of-stream": "1.4.1",
"once": "1.3.3",
"process-nextick-args": "1.0.7",
"stream-exhaust": "1.0.2"
},
"dependencies": {
"end-of-stream": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz",
"integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==",
"requires": {
"once": "1.4.0"
},
"dependencies": {
"once": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
"requires": {
"wrappy": "1.0.2"
}
}
}
},
"process-nextick-args": {
"version": "1.0.7",
"resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz",
"integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M="
}
}
},
"async-foreach": {
"version": "0.1.3",
"resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz",
"integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI="
},
"asynckit": {
"version": "0.4.0",
"resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
"integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k="
},
"atob": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/atob/-/atob-2.1.1.tgz",
"integrity": "sha1-ri1acpR38onWDdf5amMUoi3Wwio="
},
"autoprefixer": {
"version": "6.7.7",
"resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-6.7.7.tgz",
"integrity": "sha1-Hb0cg1ZY41zj+ZhAmdsAWFx4IBQ=",
"requires": {
"browserslist": "1.7.7",
"caniuse-db": "1.0.30000840",
"normalize-range": "0.1.2",
"num2fraction": "1.2.2",
"postcss": "5.2.18",
"postcss-value-parser": "3.3.0"
}
},
"aws-sign2": {
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz",
"integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8="
},
"aws4": {
"version": "1.7.0",
"resolved": "https://registry.npmjs.org/aws4/-/aws4-1.7.0.tgz",
"integrity": "sha512-32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w=="
},
"balanced-match": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
"integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c="
},
"base": {
"version": "0.11.2",
"resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz",
"integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==",
"requires": {
"cache-base": "1.0.1",
"class-utils": "0.3.6",
"component-emitter": "1.2.1",
"define-property": "1.0.0",
"isobject": "3.0.1",
"mixin-deep": "1.3.1",
"pascalcase": "0.1.1"
},
"dependencies": {
"define-property": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
"integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
"requires": {
"is-descriptor": "1.0.2"
}
},
"is-accessor-descriptor": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
"integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
"requires": {
"kind-of": "6.0.2"
}
},
"is-data-descriptor": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
"integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
"requires": {
"kind-of": "6.0.2"
}
},
"is-descriptor": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
"integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
"requires": {
"is-accessor-descriptor": "1.0.0",
"is-data-descriptor": "1.0.0",
"kind-of": "6.0.2"
}
}
}
},
"bcrypt-pbkdf": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz",
"integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=",
"optional": true,
"requires": {
"tweetnacl": "0.14.5"
}
},
"beeper": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/beeper/-/beeper-1.1.1.tgz",
"integrity": "sha1-5tXqjF2tABMEpwsiY4RH9pyy+Ak="
},
"bl": {
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz",
"integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==",
"requires": {
"readable-stream": "2.3.6",
"safe-buffer": "5.1.2"
},
"dependencies": {
"isarray": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
},
"readable-stream": {
"version": "2.3.6",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
"integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
"requires": {
"core-util-is": "1.0.2",
"inherits": "2.0.3",
"isarray": "1.0.0",
"process-nextick-args": "2.0.0",
"safe-buffer": "5.1.2",
"string_decoder": "1.1.1",
"util-deprecate": "1.0.2"
}
},
"string_decoder": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
"requires": {
"safe-buffer": "5.1.2"
}
}
}
},
"block-stream": {
"version": "0.0.9",
"resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz",
"integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=",
"requires": {
"inherits": "2.0.3"
}
},
"boom": {
"version": "2.10.1",
"resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz",
"integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=",
"requires": {
"hoek": "2.16.3"
}
},
"brace-expansion": {
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
"requires": {
"balanced-match": "1.0.0",
"concat-map": "0.0.1"
}
},
"braces": {
"version": "2.3.2",
"resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz",
"integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==",
"requires": {
"arr-flatten": "1.1.0",
"array-unique": "0.3.2",
"extend-shallow": "2.0.1",
"fill-range": "4.0.0",
"isobject": "3.0.1",
"repeat-element": "1.1.2",
"snapdragon": "0.8.2",
"snapdragon-node": "2.1.1",
"split-string": "3.1.0",
"to-regex": "3.0.2"
},
"dependencies": {
"extend-shallow": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
"integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
"requires": {
"is-extendable": "0.1.1"
}
}
}
},
"browserslist": {
"version": "1.7.7",
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-1.7.7.tgz",
"integrity": "sha1-C9dnBCWL6CmyOYu1Dkti0aFmsLk=",
"requires": {
"caniuse-db": "1.0.30000840",
"electron-to-chromium": "1.3.45"
}
},
"buffer-shims": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/buffer-shims/-/buffer-shims-1.0.0.tgz",
"integrity": "sha1-mXjOMXOIxkmth5MCjDR37wRKi1E="
},
"builtin-modules": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz",
"integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8="
},
"cache-base": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz",
"integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==",
"requires": {
"collection-visit": "1.0.0",
"component-emitter": "1.2.1",
"get-value": "2.0.6",
"has-value": "1.0.0",
"isobject": "3.0.1",
"set-value": "2.0.0",
"to-object-path": "0.3.0",
"union-value": "1.0.0",
"unset-value": "1.0.0"
}
},
"camelcase": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz",
"integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk="
},
"camelcase-keys": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
"integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
"requires": {
"camelcase": "2.1.1",
"map-obj": "1.0.1"
},
"dependencies": {
"camelcase": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
"integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8="
}
}
},
"caniuse-db": {
"version": "1.0.30000840",
"resolved": "https://registry.npmjs.org/caniuse-db/-/caniuse-db-1.0.30000840.tgz",
"integrity": "sha1-aNWg8GlMkhgLDYLnINcPjmE2ZgQ="
},
"cardinal": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/cardinal/-/cardinal-1.0.0.tgz",
"integrity": "sha1-UOIcGwqjdyn5N33vGWtanOyTLuk=",
"requires": {
"ansicolors": "0.2.1",
"redeyed": "1.0.1"
}
},
"caseless": {
"version": "0.12.0",
"resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
"integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw="
},
"center-align": {
"version": "0.1.3",
"resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz",
"integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=",
"requires": {
"align-text": "0.1.4",
"lazy-cache": "1.0.4"
}
},
"chalk": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
"requires": {
"ansi-styles": "2.2.1",
"escape-string-regexp": "1.0.5",
"has-ansi": "2.0.0",
"strip-ansi": "3.0.1",
"supports-color": "2.0.0"
}
},
"class-utils": {
"version": "0.3.6",
"resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
"integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==",
"requires": {
"arr-union": "3.1.0",
"define-property": "0.2.5",
"isobject": "3.0.1",
"static-extend": "0.1.2"
},
"dependencies": {
"define-property": {
"version": "0.2.5",
"resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
"integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
"requires": {
"is-descriptor": "0.1.6"
}
}
}
},
"clean-css": {
"version": "3.4.28",
"resolved": "https://registry.npmjs.org/clean-css/-/clean-css-3.4.28.tgz",
"integrity": "sha1-vxlF6C/ICPVWlebd6uwBQA79A/8=",
"requires": {
"commander": "2.8.1",
"source-map": "0.4.4"
},
"dependencies": {
"source-map": {
"version": "0.4.4",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
"integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
"requires": {
"amdefine": "1.0.1"
}
}
}
},
"cli-table": {
"version": "0.3.1",
"resolved": "https://registry.npmjs.org/cli-table/-/cli-table-0.3.1.tgz",
"integrity": "sha1-9TsFJmqLGguTSz0IIebi3FkUriM=",
"requires": {
"colors": "1.0.3"
}
},
"cli-usage": {
"version": "0.1.7",
"resolved": "https://registry.npmjs.org/cli-usage/-/cli-usage-0.1.7.tgz",
"integrity": "sha512-x/Q52iLSZsRrRb2ePmTsVYXrGcrPQ8G4yRAY7QpMlumxAfPVrnDOH2X6Z5s8qsAX7AA7YuIi8AXFrvH0wWEesA==",
"requires": {
"marked": "0.3.19",
"marked-terminal": "2.0.0"
}
},
"cliui": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz",
"integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=",
"requires": {
"center-align": "0.1.3",
"right-align": "0.1.3",
"wordwrap": "0.0.2"
}
},
"clone": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz",
"integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4="
},
"clone-buffer": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/clone-buffer/-/clone-buffer-1.0.0.tgz",
"integrity": "sha1-4+JbIHrE5wGvch4staFnksrD3Fg="
},
"clone-stats": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz",
"integrity": "sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE="
},
"cloneable-readable": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/cloneable-readable/-/cloneable-readable-1.1.2.tgz",
"integrity": "sha512-Bq6+4t+lbM8vhTs/Bef5c5AdEMtapp/iFb6+s4/Hh9MVTt8OLKH7ZOOZSCT+Ys7hsHvqv0GuMPJ1lnQJVHvxpg==",
"requires": {
"inherits": "2.0.3",
"process-nextick-args": "2.0.0",
"readable-stream": "2.3.6"
},
"dependencies": {
"isarray": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
},
"readable-stream": {
"version": "2.3.6",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
"integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
"requires": {
"core-util-is": "1.0.2",
"inherits": "2.0.3",
"isarray": "1.0.0",
"process-nextick-args": "2.0.0",
"safe-buffer": "5.1.2",
"string_decoder": "1.1.1",
"util-deprecate": "1.0.2"
}
},
"string_decoder": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
"requires": {
"safe-buffer": "5.1.2"
}
}
}
},
"co": {
"version": "4.6.0",
"resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
"integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ="
},
"code-point-at": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
"integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c="
},
"collection-visit": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz",
"integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=",
"requires": {
"map-visit": "1.0.0",
"object-visit": "1.0.1"
}
},
"color-convert": {
"version": "1.9.1",
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz",
"integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==",
"requires": {
"color-name": "1.1.3"
}
},
"color-name": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
"integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU="
},
"color-support": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz",
"integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg=="
},
"colors": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz",
"integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs="
},
"combined-stream": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz",
"integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=",
"requires": {
"delayed-stream": "1.0.0"
}
},
"commander": {
"version": "2.8.1",
"resolved": "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz",
"integrity": "sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=",
"requires": {
"graceful-readlink": "1.0.1"
}
},
"component-emitter": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz",
"integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY="
},
"concat-map": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
"integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
},
"concat-with-sourcemaps": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/concat-with-sourcemaps/-/concat-with-sourcemaps-1.1.0.tgz",
"integrity": "sha512-4gEjHJFT9e+2W/77h/DS5SGUgwDaOwprX8L/gl5+3ixnzkVJJsZWDSelmN3Oilw3LNDZjZV0yqH1hLG3k6nghg==",
"requires": {
"source-map": "0.6.1"
},
"dependencies": {
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
}
}
},
"console-control-strings": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
"integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4="
},
"convert-source-map": {
"version": "1.5.1",
"resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz",
"integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU="
},
"copy-descriptor": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz",
"integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40="
},
"core-util-is": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
"integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
},
"cross-spawn": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz",
"integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=",
"requires": {
"lru-cache": "4.1.3",
"which": "1.3.0"
},
"dependencies": {
"lru-cache": {
"version": "4.1.3",
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz",
"integrity": "sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA==",
"requires": {
"pseudomap": "1.0.2",
"yallist": "2.1.2"
}
}
}
},
"cryptiles": {
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz",
"integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=",
"requires": {
"boom": "2.10.1"
}
},
"css": {
"version": "2.2.3",
"resolved": "https://registry.npmjs.org/css/-/css-2.2.3.tgz",
"integrity": "sha512-0W171WccAjQGGTKLhw4m2nnl0zPHUlTO/I8td4XzJgIB8Hg3ZZx71qT4G4eX8OVsSiaAKiUMy73E3nsbPlg2DQ==",
"requires": {
"inherits": "2.0.3",
"source-map": "0.1.43",
"source-map-resolve": "0.5.2",
"urix": "0.1.0"
},
"dependencies": {
"source-map": {
"version": "0.1.43",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz",
"integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=",
"requires": {
"amdefine": "1.0.1"
}
}
}
},
"currently-unhandled": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz",
"integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=",
"requires": {
"array-find-index": "1.0.2"
}
},
"dashdash": {
"version": "1.14.1",
"resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
"integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
"requires": {
"assert-plus": "1.0.0"
},
"dependencies": {
"assert-plus": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
"integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU="
}
}
},
"dateformat": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/dateformat/-/dateformat-2.2.0.tgz",
"integrity": "sha1-QGXiATz5+5Ft39gu+1Bq1MZ2kGI="
},
"deap": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/deap/-/deap-1.0.1.tgz",
"integrity": "sha512-k75KYNZMvwAwes2xIPry/QTffXIchjD8QfABvvfTr80P85jv5ZcKqcoDo+vMe71nNnVnXYe8MA28weyqcf/DKw=="
},
"debug": {
"version": "2.6.9",
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
"integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
"requires": {
"ms": "2.0.0"
}
},
"debug-fabulous": {
"version": "0.0.4",
"resolved": "https://registry.npmjs.org/debug-fabulous/-/debug-fabulous-0.0.4.tgz",
"integrity": "sha1-+gccXYdIRoVCSAdCHKSxawsaB2M=",
"requires": {
"debug": "2.6.9",
"lazy-debug-legacy": "0.0.1",
"object-assign": "4.1.0"
},
"dependencies": {
"object-assign": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz",
"integrity": "sha1-ejs9DpgGPUP0wD8uiubNUahog6A="
}
}
},
"decamelize": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
"integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA="
},
"decode-uri-component": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz",
"integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU="
},
"defaults": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz",
"integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=",
"requires": {
"clone": "1.0.4"
}
},
"define-property": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz",
"integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==",
"requires": {
"is-descriptor": "1.0.2",
"isobject": "3.0.1"
},
"dependencies": {
"is-accessor-descriptor": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
"integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
"requires": {
"kind-of": "6.0.2"
}
},
"is-data-descriptor": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
"integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
"requires": {
"kind-of": "6.0.2"
}
},
"is-descriptor": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
"integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
"requires": {
"is-accessor-descriptor": "1.0.0",
"is-data-descriptor": "1.0.0",
"kind-of": "6.0.2"
}
}
}
},
"del": {
"version": "2.2.2",
"resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz",
"integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=",
"requires": {
"globby": "5.0.0",
"is-path-cwd": "1.0.0",
"is-path-in-cwd": "1.0.1",
"object-assign": "4.1.1",
"pify": "2.3.0",
"pinkie-promise": "2.0.1",
"rimraf": "2.6.2"
},
"dependencies": {
"object-assign": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
"integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM="
}
}
},
"delayed-stream": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
"integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk="
},
"delegates": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
"integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o="
},
"deprecated": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/deprecated/-/deprecated-0.0.1.tgz",
"integrity": "sha1-+cmvVGSvoeepcUWKi97yqpTVuxk="
},
"detect-file": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz",
"integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc="
},
"detect-newline": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz",
"integrity": "sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I="
},
"duplexer2": {
"version": "0.0.2",
"resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz",
"integrity": "sha1-xhTc9n4vsUmVqRcR5aYX6KYKMds=",
"requires": {
"readable-stream": "1.1.14"
}
},
"duplexify": {
"version": "3.6.0",
"resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.6.0.tgz",
"integrity": "sha512-fO3Di4tBKJpYTFHAxTU00BcfWMY9w24r/x21a6rZRbsD/ToUgGxsMbiGRmB7uVAXeGKXD9MwiLZa5E97EVgIRQ==",
"requires": {
"end-of-stream": "1.4.1",
"inherits": "2.0.3",
"readable-stream": "2.3.6",
"stream-shift": "1.0.0"
},
"dependencies": {
"end-of-stream": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz",
"integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==",
"requires": {
"once": "1.4.0"
}
},
"isarray": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
},
"once": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
"requires": {
"wrappy": "1.0.2"
}
},
"readable-stream": {
"version": "2.3.6",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
"integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
"requires": {
"core-util-is": "1.0.2",
"inherits": "2.0.3",
"isarray": "1.0.0",
"process-nextick-args": "2.0.0",
"safe-buffer": "5.1.2",
"string_decoder": "1.1.1",
"util-deprecate": "1.0.2"
}
},
"string_decoder": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
"requires": {
"safe-buffer": "5.1.2"
}
}
}
},
"ecc-jsbn": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz",
"integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=",
"optional": true,
"requires": {
"jsbn": "0.1.1"
}
},
"electron-to-chromium": {
"version": "1.3.45",
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.45.tgz",
"integrity": "sha1-RYrBscXHYM6IEaFtK/vZfsMLr7g="
},
"end-of-stream": {
"version": "0.1.5",
"resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-0.1.5.tgz",
"integrity": "sha1-jhdyBsPICDfYVjLouTWd/osvbq8=",
"requires": {
"once": "1.3.3"
}
},
"errno": {
"version": "0.1.7",
"resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz",
"integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==",
"optional": true,
"requires": {
"prr": "1.0.1"
}
},
"error-ex": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz",
"integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=",
"requires": {
"is-arrayish": "0.2.1"
}
},
"escape-string-regexp": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
"integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ="
},
"esprima": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/esprima/-/esprima-3.0.0.tgz",
"integrity": "sha1-U88kes2ncxPlUcOqLnM0LT+099k="
},
"expand-brackets": {
"version": "2.1.4",
"resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz",
"integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=",
"requires": {
"debug": "2.6.9",
"define-property": "0.2.5",
"extend-shallow": "2.0.1",
"posix-character-classes": "0.1.1",
"regex-not": "1.0.2",
"snapdragon": "0.8.2",
"to-regex": "3.0.2"
},
"dependencies": {
"define-property": {
"version": "0.2.5",
"resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
"integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
"requires": {
"is-descriptor": "0.1.6"
}
},
"extend-shallow": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
"integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
"requires": {
"is-extendable": "0.1.1"
}
}
}
},
"expand-range": {
"version": "1.8.2",
"resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz",
"integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=",
"requires": {
"fill-range": "2.2.4"
},
"dependencies": {
"fill-range": {
"version": "2.2.4",
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz",
"integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==",
"requires": {
"is-number": "2.1.0",
"isobject": "2.1.0",
"randomatic": "3.0.0",
"repeat-element": "1.1.2",
"repeat-string": "1.6.1"
}
},
"is-number": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz",
"integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=",
"requires": {
"kind-of": "3.2.2"
}
},
"isarray": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
},
"isobject": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
"integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=",
"requires": {
"isarray": "1.0.0"
}
},
"kind-of": {
"version": "3.2.2",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
"integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
"requires": {
"is-buffer": "1.1.6"
}
}
}
},
"expand-tilde": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz",
"integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=",
"requires": {
"homedir-polyfill": "1.0.1"
}
},
"extend": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz",
"integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ="
},
"extend-shallow": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
"integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=",
"requires": {
"assign-symbols": "1.0.0",
"is-extendable": "1.0.1"
},
"dependencies": {
"is-extendable": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
"integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
"requires": {
"is-plain-object": "2.0.4"
}
}
}
},
"extglob": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz",
"integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==",
"requires": {
"array-unique": "0.3.2",
"define-property": "1.0.0",
"expand-brackets": "2.1.4",
"extend-shallow": "2.0.1",
"fragment-cache": "0.2.1",
"regex-not": "1.0.2",
"snapdragon": "0.8.2",
"to-regex": "3.0.2"
},
"dependencies": {
"define-property": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
"integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
"requires": {
"is-descriptor": "1.0.2"
}
},
"extend-shallow": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
"integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
"requires": {
"is-extendable": "0.1.1"
}
},
"is-accessor-descriptor": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
"integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
"requires": {
"kind-of": "6.0.2"
}
},
"is-data-descriptor": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
"integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
"requires": {
"kind-of": "6.0.2"
}
},
"is-descriptor": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
"integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
"requires": {
"is-accessor-descriptor": "1.0.0",
"is-data-descriptor": "1.0.0",
"kind-of": "6.0.2"
}
}
}
},
"extsprintf": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
"integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU="
},
"fancy-log": {
"version": "1.3.2",
"resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.2.tgz",
"integrity": "sha1-9BEl49hPLn2JpD0G2VjI94vha+E=",
"requires": {
"ansi-gray": "0.1.1",
"color-support": "1.1.3",
"time-stamp": "1.1.0"
}
},
"filename-regex": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz",
"integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY="
},
"fill-range": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz",
"integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=",
"requires": {
"extend-shallow": "2.0.1",
"is-number": "3.0.0",
"repeat-string": "1.6.1",
"to-regex-range": "2.1.1"
},
"dependencies": {
"extend-shallow": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
"integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
"requires": {
"is-extendable": "0.1.1"
}
}
}
},
"find-index": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/find-index/-/find-index-0.1.1.tgz",
"integrity": "sha1-Z101iyyjiS15Whq0cjL4tuLg3eQ="
},
"find-up": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
"integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=",
"requires": {
"path-exists": "2.1.0",
"pinkie-promise": "2.0.1"
}
},
"findup-sync": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz",
"integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=",
"requires": {
"detect-file": "1.0.0",
"is-glob": "3.1.0",
"micromatch": "3.1.10",
"resolve-dir": "1.0.1"
}
},
"fined": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/fined/-/fined-1.1.0.tgz",
"integrity": "sha1-s33IRLdqL15wgeiE98CuNE8VNHY=",
"requires": {
"expand-tilde": "2.0.2",
"is-plain-object": "2.0.4",
"object.defaults": "1.1.0",
"object.pick": "1.3.0",
"parse-filepath": "1.0.2"
}
},
"first-chunk-stream": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-1.0.0.tgz",
"integrity": "sha1-Wb+1DNkF9g18OUzT2ayqtOatk04="
},
"flagged-respawn": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.0.tgz",
"integrity": "sha1-Tnmumy6zi/hrO7Vr8+ClaqX8q9c="
},
"for-in": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
"integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA="
},
"for-own": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz",
"integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=",
"requires": {
"for-in": "1.0.2"
}
},
"forever-agent": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
"integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE="
},
"fork-stream": {
"version": "0.0.4",
"resolved": "https://registry.npmjs.org/fork-stream/-/fork-stream-0.0.4.tgz",
"integrity": "sha1-24Sfznf2cIpfjzhq5TOgkHtUrnA="
},
"form-data": {
"version": "2.1.4",
"resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz",
"integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=",
"requires": {
"asynckit": "0.4.0",
"combined-stream": "1.0.6",
"mime-types": "2.1.18"
}
},
"fragment-cache": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz",
"integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=",
"requires": {
"map-cache": "0.2.2"
}
},
"fs-exists-sync": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz",
"integrity": "sha1-mC1ok6+RjnLQjeyehnP/K1qNat0="
},
"fs.realpath": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
"integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
},
"fstream": {
"version": "1.0.11",
"resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz",
"integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=",
"requires": {
"graceful-fs": "4.1.11",
"inherits": "2.0.3",
"mkdirp": "0.5.1",
"rimraf": "2.6.2"
},
"dependencies": {
"graceful-fs": {
"version": "4.1.11",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
"integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg="
}
}
},
"gauge": {
"version": "2.7.4",
"resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
"integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
"requires": {
"aproba": "1.2.0",
"console-control-strings": "1.1.0",
"has-unicode": "2.0.1",
"object-assign": "4.1.1",
"signal-exit": "3.0.2",
"string-width": "1.0.2",
"strip-ansi": "3.0.1",
"wide-align": "1.1.2"
},
"dependencies": {
"object-assign": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
"integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM="
}
}
},
"gaze": {
"version": "0.5.2",
"resolved": "https://registry.npmjs.org/gaze/-/gaze-0.5.2.tgz",
"integrity": "sha1-QLcJU30k0dRXZ9takIaJ3+aaxE8=",
"requires": {
"globule": "0.1.0"
}
},
"generate-function": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz",
"integrity": "sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ="
},
"generate-object-property": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz",
"integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=",
"requires": {
"is-property": "1.0.2"
}
},
"get-caller-file": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz",
"integrity": "sha1-9wLmMSfn4jHBYKgMFVSstw1QR+U="
},
"get-stdin": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
"integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4="
},
"get-value": {
"version": "2.0.6",
"resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz",
"integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg="
},
"getpass": {
"version": "0.1.7",
"resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
"integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
"requires": {
"assert-plus": "1.0.0"
},
"dependencies": {
"assert-plus": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
"integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU="
}
}
},
"glob": {
"version": "4.5.3",
"resolved": "https://registry.npmjs.org/glob/-/glob-4.5.3.tgz",
"integrity": "sha1-xstz0yJsHv7wTePFbQEvAzd+4V8=",
"requires": {
"inflight": "1.0.6",
"inherits": "2.0.3",
"minimatch": "2.0.10",
"once": "1.3.3"
}
},
"glob-base": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz",
"integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=",
"requires": {
"glob-parent": "2.0.0",
"is-glob": "2.0.1"
},
"dependencies": {
"is-extglob": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",
"integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA="
},
"is-glob": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
"integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
"requires": {
"is-extglob": "1.0.0"
}
}
}
},
"glob-parent": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz",
"integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=",
"requires": {
"is-glob": "2.0.1"
},
"dependencies": {
"is-extglob": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",
"integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA="
},
"is-glob": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
"integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
"requires": {
"is-extglob": "1.0.0"
}
}
}
},
"glob-stream": {
"version": "3.1.18",
"resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-3.1.18.tgz",
"integrity": "sha1-kXCl8St5Awb9/lmPMT+PeVT9FDs=",
"requires": {
"glob": "4.5.3",
"glob2base": "0.0.12",
"minimatch": "2.0.10",
"ordered-read-streams": "0.1.0",
"through2": "0.6.5",
"unique-stream": "1.0.0"
},
"dependencies": {
"readable-stream": {
"version": "1.0.34",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz",
"integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=",
"requires": {
"core-util-is": "1.0.2",
"inherits": "2.0.3",
"isarray": "0.0.1",
"string_decoder": "0.10.31"
}
},
"through2": {
"version": "0.6.5",
"resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz",
"integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=",
"requires": {
"readable-stream": "1.0.34",
"xtend": "4.0.1"
}
}
}
},
"glob-watcher": {
"version": "0.0.6",
"resolved": "https://registry.npmjs.org/glob-watcher/-/glob-watcher-0.0.6.tgz",
"integrity": "sha1-uVtKjfdLOcgymLDAXJeLTZo7cQs=",
"requires": {
"gaze": "0.5.2"
}
},
"glob2base": {
"version": "0.0.12",
"resolved": "https://registry.npmjs.org/glob2base/-/glob2base-0.0.12.tgz",
"integrity": "sha1-nUGbPijxLoOjYhZKJ3BVkiycDVY=",
"requires": {
"find-index": "0.1.1"
}
},
"global-modules": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz",
"integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==",
"requires": {
"global-prefix": "1.0.2",
"is-windows": "1.0.2",
"resolve-dir": "1.0.1"
}
},
"global-prefix": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz",
"integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=",
"requires": {
"expand-tilde": "2.0.2",
"homedir-polyfill": "1.0.1",
"ini": "1.3.5",
"is-windows": "1.0.2",
"which": "1.3.0"
}
},
"globby": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz",
"integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=",
"requires": {
"array-union": "1.0.2",
"arrify": "1.0.1",
"glob": "7.1.2",
"object-assign": "4.1.1",
"pify": "2.3.0",
"pinkie-promise": "2.0.1"
},
"dependencies": {
"glob": {
"version": "7.1.2",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
"integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
"requires": {
"fs.realpath": "1.0.0",
"inflight": "1.0.6",
"inherits": "2.0.3",
"minimatch": "3.0.4",
"once": "1.3.3",
"path-is-absolute": "1.0.1"
}
},
"minimatch": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
"requires": {
"brace-expansion": "1.1.11"
}
},
"object-assign": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
"integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM="
}
}
},
"globule": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/globule/-/globule-0.1.0.tgz",
"integrity": "sha1-2cjt3h2nnRJaFRt5UzuXhnY0auU=",
"requires": {
"glob": "3.1.21",
"lodash": "1.0.2",
"minimatch": "0.2.14"
},
"dependencies": {
"glob": {
"version": "3.1.21",
"resolved": "https://registry.npmjs.org/glob/-/glob-3.1.21.tgz",
"integrity": "sha1-0p4KBV3qUTj00H7UDomC6DwgZs0=",
"requires": {
"graceful-fs": "1.2.3",
"inherits": "1.0.2",
"minimatch": "0.2.14"
}
},
"graceful-fs": {
"version": "1.2.3",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.3.tgz",
"integrity": "sha1-FaSAaldUfLLS2/J/QuiajDRRs2Q="
},
"inherits": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-1.0.2.tgz",
"integrity": "sha1-ykMJ2t7mtUzAuNJH6NfHoJdb3Js="
},
"minimatch": {
"version": "0.2.14",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.2.14.tgz",
"integrity": "sha1-x054BXT2PG+aCQ6Q775u9TpqdWo=",
"requires": {
"lru-cache": "2.7.3",
"sigmund": "1.0.1"
}
}
}
},
"glogg": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/glogg/-/glogg-1.0.1.tgz",
"integrity": "sha512-ynYqXLoluBKf9XGR1gA59yEJisIL7YHEH4xr3ZziHB5/yl4qWfaK8Js9jGe6gBGCSCKVqiyO30WnRZADvemUNw==",
"requires": {
"sparkles": "1.0.1"
}
},
"graceful-fs": {
"version": "3.0.11",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.11.tgz",
"integrity": "sha1-dhPHeKGv6mLyXGMKCG1/Osu92Bg=",
"requires": {
"natives": "1.1.3"
}
},
"graceful-readlink": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz",
"integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU="
},
"growly": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz",
"integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE="
},
"gulp": {
"version": "3.9.1",
"resolved": "https://registry.npmjs.org/gulp/-/gulp-3.9.1.tgz",
"integrity": "sha1-VxzkWSjdQK9lFPxAEYZgFsE4RbQ=",
"requires": {
"archy": "1.0.0",
"chalk": "1.1.3",
"deprecated": "0.0.1",
"gulp-util": "3.0.8",
"interpret": "1.1.0",
"liftoff": "2.5.0",
"minimist": "1.2.0",
"orchestrator": "0.3.8",
"pretty-hrtime": "1.0.3",
"semver": "4.3.6",
"tildify": "1.2.0",
"v8flags": "2.1.1",
"vinyl-fs": "0.3.14"
}
},
"gulp-autoprefixer": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/gulp-autoprefixer/-/gulp-autoprefixer-3.1.1.tgz",
"integrity": "sha1-dSMAUc0NFxND14O36bXREg7u+bA=",
"requires": {
"autoprefixer": "6.7.7",
"gulp-util": "3.0.8",
"postcss": "5.2.18",
"through2": "2.0.3",
"vinyl-sourcemaps-apply": "0.2.1"
}
},
"gulp-batch": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/gulp-batch/-/gulp-batch-1.0.5.tgz",
"integrity": "sha1-xA/JsjA2dIl7EhbYLhUYtzIX2lk=",
"requires": {
"async-done": "1.3.1",
"stream-array": "1.1.2"
}
},
"gulp-concat": {
"version": "2.6.1",
"resolved": "https://registry.npmjs.org/gulp-concat/-/gulp-concat-2.6.1.tgz",
"integrity": "sha1-Yz0WyV2IUEYorQJmVmPO5aR5M1M=",
"requires": {
"concat-with-sourcemaps": "1.1.0",
"through2": "2.0.3",
"vinyl": "2.1.0"
},
"dependencies": {
"clone": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/clone/-/clone-2.1.1.tgz",
"integrity": "sha1-0hfR6WERjjrJpLi7oyhVU79kfNs="
},
"clone-stats": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz",
"integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA="
},
"replace-ext": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz",
"integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs="
},
"vinyl": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.1.0.tgz",
"integrity": "sha1-Ah+cLPlR1rk5lDyJ617lrdT9kkw=",
"requires": {
"clone": "2.1.1",
"clone-buffer": "1.0.0",
"clone-stats": "1.0.0",
"cloneable-readable": "1.1.2",
"remove-trailing-separator": "1.1.0",
"replace-ext": "1.0.0"
}
}
}
},
"gulp-if": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/gulp-if/-/gulp-if-2.0.2.tgz",
"integrity": "sha1-pJe351cwBQQcqivIt92jyARE1ik=",
"requires": {
"gulp-match": "1.0.3",
"ternary-stream": "2.0.1",
"through2": "2.0.3"
}
},
"gulp-less": {
"version": "3.5.0",
"resolved": "https://registry.npmjs.org/gulp-less/-/gulp-less-3.5.0.tgz",
"integrity": "sha512-FQLY7unaHdTOXG0jlwxeBQcWoPPrTMQZRA7HfYwSNi9IPVx5l7GJEN72mG4ri2yigp/f/VNGUAJnFMJHBmH3iw==",
"requires": {
"accord": "0.28.0",
"less": "2.7.3",
"object-assign": "4.1.1",
"plugin-error": "0.1.2",
"replace-ext": "1.0.0",
"through2": "2.0.3",
"vinyl-sourcemaps-apply": "0.2.1"
},
"dependencies": {
"object-assign": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
"integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM="
},
"replace-ext": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz",
"integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs="
}
}
},
"gulp-load-plugins": {
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/gulp-load-plugins/-/gulp-load-plugins-1.5.0.tgz",
"integrity": "sha1-TEGffldk2aDjMGG6uWGPgbc9QXE=",
"requires": {
"array-unique": "0.2.1",
"fancy-log": "1.3.2",
"findup-sync": "0.4.3",
"gulplog": "1.0.0",
"has-gulplog": "0.1.0",
"micromatch": "2.3.11",
"resolve": "1.7.1"
},
"dependencies": {
"arr-diff": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz",
"integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=",
"requires": {
"arr-flatten": "1.1.0"
}
},
"array-unique": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz",
"integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM="
},
"braces": {
"version": "1.8.5",
"resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz",
"integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=",
"requires": {
"expand-range": "1.8.2",
"preserve": "0.2.0",
"repeat-element": "1.1.2"
}
},
"detect-file": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/detect-file/-/detect-file-0.1.0.tgz",
"integrity": "sha1-STXe39lIhkjgBrASlWbpOGcR6mM=",
"requires": {
"fs-exists-sync": "0.1.0"
}
},
"expand-brackets": {
"version": "0.1.5",
"resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz",
"integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=",
"requires": {
"is-posix-bracket": "0.1.1"
}
},
"expand-tilde": {
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-1.2.2.tgz",
"integrity": "sha1-C4HrqJflo9MdHD0QL48BRB5VlEk=",
"requires": {
"os-homedir": "1.0.2"
}
},
"extglob": {
"version": "0.3.2",
"resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz",
"integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=",
"requires": {
"is-extglob": "1.0.0"
}
},
"findup-sync": {
"version": "0.4.3",
"resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.4.3.tgz",
"integrity": "sha1-QAQ5Kee8YK3wt/SCfExudaDeyhI=",
"requires": {
"detect-file": "0.1.0",
"is-glob": "2.0.1",
"micromatch": "2.3.11",
"resolve-dir": "0.1.1"
}
},
"global-modules": {
"version": "0.2.3",
"resolved": "https://registry.npmjs.org/global-modules/-/global-modules-0.2.3.tgz",
"integrity": "sha1-6lo77ULG1s6ZWk+KEmm12uIjgo0=",
"requires": {
"global-prefix": "0.1.5",
"is-windows": "0.2.0"
}
},
"global-prefix": {
"version": "0.1.5",
"resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-0.1.5.tgz",
"integrity": "sha1-jTvGuNo8qBEqFg2NSW/wRiv+948=",
"requires": {
"homedir-polyfill": "1.0.1",
"ini": "1.3.5",
"is-windows": "0.2.0",
"which": "1.3.0"
}
},
"is-extglob": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",
"integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA="
},
"is-glob": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
"integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
"requires": {
"is-extglob": "1.0.0"
}
},
"is-windows": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/is-windows/-/is-windows-0.2.0.tgz",
"integrity": "sha1-3hqm1j6indJIc3tp8f+LgALSEIw="
},
"kind-of": {
"version": "3.2.2",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
"integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
"requires": {
"is-buffer": "1.1.6"
}
},
"micromatch": {
"version": "2.3.11",
"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz",
"integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=",
"requires": {
"arr-diff": "2.0.0",
"array-unique": "0.2.1",
"braces": "1.8.5",
"expand-brackets": "0.1.5",
"extglob": "0.3.2",
"filename-regex": "2.0.1",
"is-extglob": "1.0.0",
"is-glob": "2.0.1",
"kind-of": "3.2.2",
"normalize-path": "2.1.1",
"object.omit": "2.0.1",
"parse-glob": "3.0.4",
"regex-cache": "0.4.4"
}
},
"resolve-dir": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-0.1.1.tgz",
"integrity": "sha1-shklmlYC+sXFxJatiUpujMQwJh4=",
"requires": {
"expand-tilde": "1.2.2",
"global-modules": "0.2.3"
}
}
}
},
"gulp-match": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/gulp-match/-/gulp-match-1.0.3.tgz",
"integrity": "sha1-kcfA1/Kb7NZgbVfYCn+Hdqh6uo4=",
"requires": {
"minimatch": "3.0.4"
},
"dependencies": {
"minimatch": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
"requires": {
"brace-expansion": "1.1.11"
}
}
}
},
"gulp-notify": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/gulp-notify/-/gulp-notify-2.2.0.tgz",
"integrity": "sha1-BGyChcKS6X7tThWgCcJsu+XO8TU=",
"requires": {
"gulp-util": "3.0.8",
"lodash.template": "3.6.2",
"node-notifier": "4.6.1",
"node.extend": "1.1.6",
"through2": "0.6.5"
},
"dependencies": {
"readable-stream": {
"version": "1.0.34",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz",
"integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=",
"requires": {
"core-util-is": "1.0.2",
"inherits": "2.0.3",
"isarray": "0.0.1",
"string_decoder": "0.10.31"
}
},
"through2": {
"version": "0.6.5",
"resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz",
"integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=",
"requires": {
"readable-stream": "1.0.34",
"xtend": "4.0.1"
}
}
}
},
"gulp-rename": {
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/gulp-rename/-/gulp-rename-1.2.2.tgz",
"integrity": "sha1-OtRCh2PwXidk3sHGfYaNsnVoeBc="
},
"gulp-rev": {
"version": "7.1.2",
"resolved": "https://registry.npmjs.org/gulp-rev/-/gulp-rev-7.1.2.tgz",
"integrity": "sha1-XhfMIp9rRcdCVviK0/LT6aMwWCk=",
"requires": {
"gulp-util": "3.0.8",
"modify-filename": "1.1.0",
"object-assign": "4.1.1",
"rev-hash": "1.0.0",
"rev-path": "1.0.0",
"sort-keys": "1.1.2",
"through2": "2.0.3",
"vinyl-file": "1.3.0"
},
"dependencies": {
"object-assign": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
"integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM="
}
}
},
"gulp-rev-replace": {
"version": "0.4.4",
"resolved": "https://registry.npmjs.org/gulp-rev-replace/-/gulp-rev-replace-0.4.4.tgz",
"integrity": "sha512-2yiDel/TGamn/HgHyo8H1rYEEL2zLsOYODerItoX8batOo0gPAe7uX7t6NlaqB7FEHpS5tGzUr5CKUEmrgdHyQ==",
"requires": {
"plugin-error": "0.1.2",
"through2": "2.0.3"
}
},
"gulp-sass": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/gulp-sass/-/gulp-sass-3.2.1.tgz",
"integrity": "sha512-UATbRpSDsyXCnpYSPBUEvdvtSEzksJs7/oQ0CujIpzKqKrO6vlnYwhX2UTsGrf4rNLwqlSSaM271It0uHYvJ3Q==",
"requires": {
"gulp-util": "3.0.8",
"lodash.clonedeep": "4.5.0",
"node-sass": "4.9.0",
"through2": "2.0.3",
"vinyl-sourcemaps-apply": "0.2.1"
},
"dependencies": {
"lodash.clonedeep": {
"version": "4.5.0",
"resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz",
"integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8="
}
}
},
"gulp-shell": {
"version": "0.5.2",
"resolved": "https://registry.npmjs.org/gulp-shell/-/gulp-shell-0.5.2.tgz",
"integrity": "sha1-pJWcoGUa0ce7/nCy0K27tOGuqY0=",
"requires": {
"async": "1.5.2",
"gulp-util": "3.0.8",
"lodash": "4.17.10",
"through2": "2.0.3"
},
"dependencies": {
"lodash": {
"version": "4.17.10",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
"integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg=="
}
}
},
"gulp-sourcemaps": {
"version": "1.12.1",
"resolved": "https://registry.npmjs.org/gulp-sourcemaps/-/gulp-sourcemaps-1.12.1.tgz",
"integrity": "sha1-tDfR89mAzyboEYSCNxjOFa5ll7Y=",
"requires": {
"@gulp-sourcemaps/map-sources": "1.0.0",
"acorn": "4.0.13",
"convert-source-map": "1.5.1",
"css": "2.2.3",
"debug-fabulous": "0.0.4",
"detect-newline": "2.1.0",
"graceful-fs": "4.1.11",
"source-map": "0.6.1",
"strip-bom": "2.0.0",
"through2": "2.0.3",
"vinyl": "1.2.0"
},
"dependencies": {
"graceful-fs": {
"version": "4.1.11",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
"integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg="
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
},
"strip-bom": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
"integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
"requires": {
"is-utf8": "0.2.1"
}
},
"vinyl": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz",
"integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=",
"requires": {
"clone": "1.0.4",
"clone-stats": "0.0.1",
"replace-ext": "0.0.1"
}
}
}
},
"gulp-uglify": {
"version": "1.5.4",
"resolved": "https://registry.npmjs.org/gulp-uglify/-/gulp-uglify-1.5.4.tgz",
"integrity": "sha1-UkeI2HZm0J+dDCH7IXf5ADmmWMk=",
"requires": {
"deap": "1.0.1",
"fancy-log": "1.3.2",
"gulp-util": "3.0.8",
"isobject": "2.1.0",
"through2": "2.0.3",
"uglify-js": "2.6.4",
"uglify-save-license": "0.4.1",
"vinyl-sourcemaps-apply": "0.2.1"
},
"dependencies": {
"async": {
"version": "0.2.10",
"resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz",
"integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E="
},
"isarray": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
},
"isobject": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
"integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=",
"requires": {
"isarray": "1.0.0"
}
},
"uglify-js": {
"version": "2.6.4",
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.6.4.tgz",
"integrity": "sha1-ZeovswWck5RpLxX+2HwrNsFrmt8=",
"requires": {
"async": "0.2.10",
"source-map": "0.5.7",
"uglify-to-browserify": "1.0.2",
"yargs": "3.10.0"
}
}
}
},
"gulp-util": {
"version": "3.0.8",
"resolved": "https://registry.npmjs.org/gulp-util/-/gulp-util-3.0.8.tgz",
"integrity": "sha1-AFTh50RQLifATBh8PsxQXdVLu08=",
"requires": {
"array-differ": "1.0.0",
"array-uniq": "1.0.3",
"beeper": "1.1.1",
"chalk": "1.1.3",
"dateformat": "2.2.0",
"fancy-log": "1.3.2",
"gulplog": "1.0.0",
"has-gulplog": "0.1.0",
"lodash._reescape": "3.0.0",
"lodash._reevaluate": "3.0.0",
"lodash._reinterpolate": "3.0.0",
"lodash.template": "3.6.2",
"minimist": "1.2.0",
"multipipe": "0.1.2",
"object-assign": "3.0.0",
"replace-ext": "0.0.1",
"through2": "2.0.3",
"vinyl": "0.5.3"
}
},
"gulplog": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/gulplog/-/gulplog-1.0.0.tgz",
"integrity": "sha1-4oxNRdBey77YGDY86PnFkmIp/+U=",
"requires": {
"glogg": "1.0.1"
}
},
"har-schema": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/har-schema/-/har-schema-1.0.5.tgz",
"integrity": "sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4="
},
"har-validator": {
"version": "4.2.1",
"resolved": "https://registry.npmjs.org/har-validator/-/har-validator-4.2.1.tgz",
"integrity": "sha1-M0gdDxu/9gDdID11gSpqX7oALio=",
"requires": {
"ajv": "4.11.8",
"har-schema": "1.0.5"
}
},
"has-ansi": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
"integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=",
"requires": {
"ansi-regex": "2.1.1"
}
},
"has-flag": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
"integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0="
},
"has-gulplog": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/has-gulplog/-/has-gulplog-0.1.0.tgz",
"integrity": "sha1-ZBTIKRNpfaUVkDl9r7EvIpZ4Ec4=",
"requires": {
"sparkles": "1.0.1"
}
},
"has-unicode": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
"integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk="
},
"has-value": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz",
"integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=",
"requires": {
"get-value": "2.0.6",
"has-values": "1.0.0",
"isobject": "3.0.1"
}
},
"has-values": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz",
"integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=",
"requires": {
"is-number": "3.0.0",
"kind-of": "4.0.0"
},
"dependencies": {
"kind-of": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz",
"integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=",
"requires": {
"is-buffer": "1.1.6"
}
}
}
},
"hawk": {
"version": "3.1.3",
"resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz",
"integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=",
"requires": {
"boom": "2.10.1",
"cryptiles": "2.0.5",
"hoek": "2.16.3",
"sntp": "1.0.9"
}
},
"hoek": {
"version": "2.16.3",
"resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz",
"integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0="
},
"homedir-polyfill": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz",
"integrity": "sha1-TCu8inWJmP7r9e1oWA921GdotLw=",
"requires": {
"parse-passwd": "1.0.0"
}
},
"hosted-git-info": {
"version": "2.6.0",
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.6.0.tgz",
"integrity": "sha512-lIbgIIQA3lz5XaB6vxakj6sDHADJiZadYEJB+FgA+C4nubM1NwcuvUr9EJPmnH1skZqpqUzWborWo8EIUi0Sdw=="
},
"http-signature": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz",
"integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=",
"requires": {
"assert-plus": "0.2.0",
"jsprim": "1.4.1",
"sshpk": "1.14.1"
}
},
"image-size": {
"version": "0.5.5",
"resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz",
"integrity": "sha1-Cd/Uq50g4p6xw+gLiZA3jfnjy5w=",
"optional": true
},
"in-publish": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.0.tgz",
"integrity": "sha1-4g/146KvwmkDILbcVSaCqcf631E="
},
"indent-string": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz",
"integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=",
"requires": {
"repeating": "2.0.1"
}
},
"indx": {
"version": "0.2.3",
"resolved": "https://registry.npmjs.org/indx/-/indx-0.2.3.tgz",
"integrity": "sha1-Fdz1bunPZcAjTFE8J/vVgOcPvFA="
},
"inflight": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
"integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
"requires": {
"once": "1.3.3",
"wrappy": "1.0.2"
}
},
"inherits": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
},
"ini": {
"version": "1.3.5",
"resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz",
"integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw=="
},
"interpret": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz",
"integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ="
},
"invert-kv": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz",
"integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY="
},
"is": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/is/-/is-3.2.1.tgz",
"integrity": "sha1-0Kwq1V63sL7JJqUmb2xmKqqD3KU="
},
"is-absolute": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz",
"integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==",
"requires": {
"is-relative": "1.0.0",
"is-windows": "1.0.2"
}
},
"is-accessor-descriptor": {
"version": "0.1.6",
"resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
"integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
"requires": {
"kind-of": "3.2.2"
},
"dependencies": {
"kind-of": {
"version": "3.2.2",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
"integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
"requires": {
"is-buffer": "1.1.6"
}
}
}
},
"is-arrayish": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
"integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0="
},
"is-buffer": {
"version": "1.1.6",
"resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
"integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w=="
},
"is-builtin-module": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz",
"integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=",
"requires": {
"builtin-modules": "1.1.1"
}
},
"is-data-descriptor": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
"integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
"requires": {
"kind-of": "3.2.2"
},
"dependencies": {
"kind-of": {
"version": "3.2.2",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
"integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
"requires": {
"is-buffer": "1.1.6"
}
}
}
},
"is-descriptor": {
"version": "0.1.6",
"resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
"integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
"requires": {
"is-accessor-descriptor": "0.1.6",
"is-data-descriptor": "0.1.4",
"kind-of": "5.1.0"
},
"dependencies": {
"kind-of": {
"version": "5.1.0",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
"integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw=="
}
}
},
"is-dotfile": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz",
"integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE="
},
"is-equal-shallow": {
"version": "0.1.3",
"resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz",
"integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=",
"requires": {
"is-primitive": "2.0.0"
}
},
"is-extendable": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
"integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik="
},
"is-extglob": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
"integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI="
},
"is-finite": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz",
"integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=",
"requires": {
"number-is-nan": "1.0.1"
}
},
"is-fullwidth-code-point": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
"integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
"requires": {
"number-is-nan": "1.0.1"
}
},
"is-glob": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
"integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=",
"requires": {
"is-extglob": "2.1.1"
}
},
"is-my-ip-valid": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz",
"integrity": "sha512-gmh/eWXROncUzRnIa1Ubrt5b8ep/MGSnfAUI3aRp+sqTCs1tv1Isl8d8F6JmkN3dXKc3ehZMrtiPN9eL03NuaQ=="
},
"is-my-json-valid": {
"version": "2.17.2",
"resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.17.2.tgz",
"integrity": "sha512-IBhBslgngMQN8DDSppmgDv7RNrlFotuuDsKcrCP3+HbFaVivIBU7u9oiiErw8sH4ynx3+gOGQ3q2otkgiSi6kg==",
"requires": {
"generate-function": "2.0.0",
"generate-object-property": "1.2.0",
"is-my-ip-valid": "1.0.0",
"jsonpointer": "4.0.1",
"xtend": "4.0.1"
}
},
"is-number": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
"integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
"requires": {
"kind-of": "3.2.2"
},
"dependencies": {
"kind-of": {
"version": "3.2.2",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
"integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
"requires": {
"is-buffer": "1.1.6"
}
}
}
},
"is-odd": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/is-odd/-/is-odd-2.0.0.tgz",
"integrity": "sha512-OTiixgpZAT1M4NHgS5IguFp/Vz2VI3U7Goh4/HA1adtwyLtSBrxYlcSYkhpAE07s4fKEcjrFxyvtQBND4vFQyQ==",
"requires": {
"is-number": "4.0.0"
},
"dependencies": {
"is-number": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz",
"integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ=="
}
}
},
"is-path-cwd": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz",
"integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0="
},
"is-path-in-cwd": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz",
"integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==",
"requires": {
"is-path-inside": "1.0.1"
}
},
"is-path-inside": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz",
"integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=",
"requires": {
"path-is-inside": "1.0.2"
}
},
"is-plain-obj": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz",
"integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4="
},
"is-plain-object": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
"integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
"requires": {
"isobject": "3.0.1"
}
},
"is-posix-bracket": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz",
"integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q="
},
"is-primitive": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz",
"integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU="
},
"is-property": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz",
"integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ="
},
"is-relative": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz",
"integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==",
"requires": {
"is-unc-path": "1.0.0"
}
},
"is-typedarray": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
"integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo="
},
"is-unc-path": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz",
"integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==",
"requires": {
"unc-path-regex": "0.1.2"
}
},
"is-utf8": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz",
"integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI="
},
"is-windows": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz",
"integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA=="
},
"isarray": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
"integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8="
},
"isexe": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
"integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA="
},
"isobject": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
"integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8="
},
"isstream": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
"integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo="
},
"js-base64": {
"version": "2.4.3",
"resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.4.3.tgz",
"integrity": "sha512-H7ErYLM34CvDMto3GbD6xD0JLUGYXR3QTcH6B/tr4Hi/QpSThnCsIp+Sy5FRTw3B0d6py4HcNkW7nO/wdtGWEw=="
},
"jsbn": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz",
"integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=",
"optional": true
},
"json-schema": {
"version": "0.2.3",
"resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz",
"integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM="
},
"json-stable-stringify": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz",
"integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=",
"requires": {
"jsonify": "0.0.0"
}
},
"json-stringify-safe": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
"integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus="
},
"jsonify": {
"version": "0.0.0",
"resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz",
"integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM="
},
"jsonpointer": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.0.1.tgz",
"integrity": "sha1-T9kss04OnbPInIYi7PUfm5eMbLk="
},
"jsprim": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz",
"integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=",
"requires": {
"assert-plus": "1.0.0",
"extsprintf": "1.3.0",
"json-schema": "0.2.3",
"verror": "1.10.0"
},
"dependencies": {
"assert-plus": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
"integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU="
}
}
},
"kind-of": {
"version": "6.0.2",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz",
"integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA=="
},
"laravel-elixir": {
"version": "6.0.0-18",
"resolved": "https://registry.npmjs.org/laravel-elixir/-/laravel-elixir-6.0.0-18.tgz",
"integrity": "sha512-nvXR9MSneWX+S84zJllzqMFpLoNVNm8CRtJ73ROIR7gYmMPVA1lDUFyKjpa05qKZUvdK0pCMTJAanggsa2twZg==",
"requires": {
"chalk": "2.4.1",
"clean-css": "3.4.28",
"cli-table": "0.3.1",
"del": "2.2.2",
"glob": "7.1.2",
"gulp-autoprefixer": "3.1.1",
"gulp-batch": "1.0.5",
"gulp-concat": "2.6.1",
"gulp-if": "2.0.2",
"gulp-less": "3.5.0",
"gulp-load-plugins": "1.5.0",
"gulp-notify": "2.2.0",
"gulp-rename": "1.2.2",
"gulp-rev": "7.1.2",
"gulp-rev-replace": "0.4.4",
"gulp-sass": "3.2.1",
"gulp-shell": "0.5.2",
"gulp-sourcemaps": "1.12.1",
"gulp-uglify": "1.5.4",
"minimist": "1.2.0",
"parse-filepath": "1.0.2",
"path": "0.12.7",
"q": "1.5.1",
"replace-ext": "1.0.0",
"require-dir": "0.3.2",
"run-sequence": "1.2.2",
"underscore": "1.9.0",
"vinyl-map2": "1.2.1"
},
"dependencies": {
"ansi-styles": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
"requires": {
"color-convert": "1.9.1"
}
},
"chalk": {
"version": "2.4.1",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz",
"integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==",
"requires": {
"ansi-styles": "3.2.1",
"escape-string-regexp": "1.0.5",
"supports-color": "5.4.0"
}
},
"glob": {
"version": "7.1.2",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
"integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
"requires": {
"fs.realpath": "1.0.0",
"inflight": "1.0.6",
"inherits": "2.0.3",
"minimatch": "3.0.4",
"once": "1.3.3",
"path-is-absolute": "1.0.1"
}
},
"minimatch": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
"requires": {
"brace-expansion": "1.1.11"
}
},
"replace-ext": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz",
"integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs="
},
"supports-color": {
"version": "5.4.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz",
"integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==",
"requires": {
"has-flag": "3.0.0"
}
}
}
},
"lazy-cache": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz",
"integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4="
},
"lazy-debug-legacy": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/lazy-debug-legacy/-/lazy-debug-legacy-0.0.1.tgz",
"integrity": "sha1-U3cWwHduTPeePtG2IfdljCkRsbE="
},
"lcid": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz",
"integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=",
"requires": {
"invert-kv": "1.0.0"
}
},
"less": {
"version": "2.7.3",
"resolved": "https://registry.npmjs.org/less/-/less-2.7.3.tgz",
"integrity": "sha512-KPdIJKWcEAb02TuJtaLrhue0krtRLoRoo7x6BNJIBelO00t/CCdJQUnHW5V34OnHMWzIktSalJxRO+FvytQlCQ==",
"requires": {
"errno": "0.1.7",
"graceful-fs": "4.1.11",
"image-size": "0.5.5",
"mime": "1.6.0",
"mkdirp": "0.5.1",
"promise": "7.3.1",
"request": "2.81.0",
"source-map": "0.5.7"
},
"dependencies": {
"graceful-fs": {
"version": "4.1.11",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
"integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=",
"optional": true
}
}
},
"liftoff": {
"version": "2.5.0",
"resolved": "https://registry.npmjs.org/liftoff/-/liftoff-2.5.0.tgz",
"integrity": "sha1-IAkpG7Mc6oYbvxCnwVooyvdcMew=",
"requires": {
"extend": "3.0.1",
"findup-sync": "2.0.0",
"fined": "1.1.0",
"flagged-respawn": "1.0.0",
"is-plain-object": "2.0.4",
"object.map": "1.0.1",
"rechoir": "0.6.2",
"resolve": "1.7.1"
}
},
"load-json-file": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz",
"integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=",
"requires": {
"graceful-fs": "4.1.11",
"parse-json": "2.2.0",
"pify": "2.3.0",
"pinkie-promise": "2.0.1",
"strip-bom": "2.0.0"
},
"dependencies": {
"graceful-fs": {
"version": "4.1.11",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
"integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg="
},
"strip-bom": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
"integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
"requires": {
"is-utf8": "0.2.1"
}
}
}
},
"lodash": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-1.0.2.tgz",
"integrity": "sha1-j1dWDIO1n8JwvT1WG2kAQ0MOJVE="
},
"lodash._arraycopy": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/lodash._arraycopy/-/lodash._arraycopy-3.0.0.tgz",
"integrity": "sha1-due3wfH7klRzdIeKVi7Qaj5Q9uE="
},
"lodash._arrayeach": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/lodash._arrayeach/-/lodash._arrayeach-3.0.0.tgz",
"integrity": "sha1-urFWsqkNPxu9XGU0AzSeXlkz754="
},
"lodash._baseassign": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz",
"integrity": "sha1-jDigmVAPIVrQnlnxci/QxSv+Ck4=",
"requires": {
"lodash._basecopy": "3.0.1",
"lodash.keys": "3.1.2"
}
},
"lodash._baseclone": {
"version": "3.3.0",
"resolved": "https://registry.npmjs.org/lodash._baseclone/-/lodash._baseclone-3.3.0.tgz",
"integrity": "sha1-MDUZv2OT/n5C802LYw73eU41Qrc=",
"requires": {
"lodash._arraycopy": "3.0.0",
"lodash._arrayeach": "3.0.0",
"lodash._baseassign": "3.2.0",
"lodash._basefor": "3.0.3",
"lodash.isarray": "3.0.4",
"lodash.keys": "3.1.2"
}
},
"lodash._basecopy": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz",
"integrity": "sha1-jaDmqHbPNEwK2KVIghEd08XHyjY="
},
"lodash._basefor": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/lodash._basefor/-/lodash._basefor-3.0.3.tgz",
"integrity": "sha1-dVC06SGO8J+tJDQ7YSAhx5tMIMI="
},
"lodash._basetostring": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz",
"integrity": "sha1-0YYdh3+CSlL2aYMtyvPuFVZqB9U="
},
"lodash._basevalues": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz",
"integrity": "sha1-W3dXYoAr3j0yl1A+JjAIIP32Ybc="
},
"lodash._bindcallback": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/lodash._bindcallback/-/lodash._bindcallback-3.0.1.tgz",
"integrity": "sha1-5THCdkTPi1epnhftlbNcdIeJOS4="
},
"lodash._getnative": {
"version": "3.9.1",
"resolved": "https://registry.npmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz",
"integrity": "sha1-VwvH3t5G1hzc3mh9ZdPuy6o6r/U="
},
"lodash._isiterateecall": {
"version": "3.0.9",
"resolved": "https://registry.npmjs.org/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz",
"integrity": "sha1-UgOte6Ql+uhCRg5pbbnPPmqsBXw="
},
"lodash._reescape": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/lodash._reescape/-/lodash._reescape-3.0.0.tgz",
"integrity": "sha1-Kx1vXf4HyKNVdT5fJ/rH8c3hYWo="
},
"lodash._reevaluate": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz",
"integrity": "sha1-WLx0xAZklTrgsSTYBpltrKQx4u0="
},
"lodash._reinterpolate": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz",
"integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0="
},
"lodash._root": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/lodash._root/-/lodash._root-3.0.1.tgz",
"integrity": "sha1-+6HEUkwZ7ppfgTa0YJ8BfPTe1pI="
},
"lodash.assign": {
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz",
"integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc="
},
"lodash.clone": {
"version": "4.5.0",
"resolved": "https://registry.npmjs.org/lodash.clone/-/lodash.clone-4.5.0.tgz",
"integrity": "sha1-GVhwRQ9aExkkeN9Lw9I9LeoZB7Y="
},
"lodash.clonedeep": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-3.0.2.tgz",
"integrity": "sha1-oKHkDYKl6on/WxR7hETtY9koJ9s=",
"requires": {
"lodash._baseclone": "3.3.0",
"lodash._bindcallback": "3.0.1"
}
},
"lodash.defaults": {
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz",
"integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw="
},
"lodash.escape": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/lodash.escape/-/lodash.escape-3.2.0.tgz",
"integrity": "sha1-mV7g3BjBtIzJLv+ucaEKq1tIdpg=",
"requires": {
"lodash._root": "3.0.1"
}
},
"lodash.flatten": {
"version": "4.4.0",
"resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz",
"integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8="
},
"lodash.isarguments": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz",
"integrity": "sha1-L1c9hcaiQon/AGY7SRwdM4/zRYo="
},
"lodash.isarray": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz",
"integrity": "sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U="
},
"lodash.keys": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz",
"integrity": "sha1-TbwEcrFWvlCgsoaFXRvQsMZWCYo=",
"requires": {
"lodash._getnative": "3.9.1",
"lodash.isarguments": "3.1.0",
"lodash.isarray": "3.0.4"
}
},
"lodash.merge": {
"version": "4.6.1",
"resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.1.tgz",
"integrity": "sha512-AOYza4+Hf5z1/0Hztxpm2/xiPZgi/cjMqdnKTUWTBSKchJlxXXuUSxCCl8rJlf4g6yww/j6mA8nC8Hw/EZWxKQ=="
},
"lodash.mergewith": {
"version": "4.6.1",
"resolved": "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.1.tgz",
"integrity": "sha512-eWw5r+PYICtEBgrBE5hhlT6aAa75f411bgDz/ZL2KZqYV03USvucsxcHUIlGTDTECs1eunpI7HOV7U+WLDvNdQ=="
},
"lodash.partialright": {
"version": "4.2.1",
"resolved": "https://registry.npmjs.org/lodash.partialright/-/lodash.partialright-4.2.1.tgz",
"integrity": "sha1-ATDYDoM2MmTUAHTzKbij56ihzEs="
},
"lodash.pick": {
"version": "4.4.0",
"resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz",
"integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM="
},
"lodash.restparam": {
"version": "3.6.1",
"resolved": "https://registry.npmjs.org/lodash.restparam/-/lodash.restparam-3.6.1.tgz",
"integrity": "sha1-k2pOMJ7zMKdkXtQUWYbIWuWyCAU="
},
"lodash.template": {
"version": "3.6.2",
"resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-3.6.2.tgz",
"integrity": "sha1-+M3sxhaaJVvpCYrosMU9N4kx0U8=",
"requires": {
"lodash._basecopy": "3.0.1",
"lodash._basetostring": "3.0.1",
"lodash._basevalues": "3.0.0",
"lodash._isiterateecall": "3.0.9",
"lodash._reinterpolate": "3.0.0",
"lodash.escape": "3.2.0",
"lodash.keys": "3.1.2",
"lodash.restparam": "3.6.1",
"lodash.templatesettings": "3.1.1"
}
},
"lodash.templatesettings": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz",
"integrity": "sha1-+zB4RHU7Zrnxr6VOJix0UwfbqOU=",
"requires": {
"lodash._reinterpolate": "3.0.0",
"lodash.escape": "3.2.0"
}
},
"lodash.toarray": {
"version": "4.4.0",
"resolved": "https://registry.npmjs.org/lodash.toarray/-/lodash.toarray-4.4.0.tgz",
"integrity": "sha1-JMS/zWsvuji/0FlNsRedjptlZWE="
},
"lodash.uniq": {
"version": "4.5.0",
"resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz",
"integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M="
},
"longest": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz",
"integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc="
},
"loud-rejection": {
"version": "1.6.0",
"resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz",
"integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=",
"requires": {
"currently-unhandled": "0.4.1",
"signal-exit": "3.0.2"
}
},
"lru-cache": {
"version": "2.7.3",
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.7.3.tgz",
"integrity": "sha1-bUUk6LlV+V1PW1iFHOId1y+06VI="
},
"make-iterator": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz",
"integrity": "sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==",
"requires": {
"kind-of": "6.0.2"
}
},
"map-cache": {
"version": "0.2.2",
"resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz",
"integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8="
},
"map-obj": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
"integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0="
},
"map-visit": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz",
"integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=",
"requires": {
"object-visit": "1.0.1"
}
},
"marked": {
"version": "0.3.19",
"resolved": "https://registry.npmjs.org/marked/-/marked-0.3.19.tgz",
"integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg=="
},
"marked-terminal": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/marked-terminal/-/marked-terminal-2.0.0.tgz",
"integrity": "sha1-Xq9Wi+ZvaGVBr6UqVYKAMQox3i0=",
"requires": {
"cardinal": "1.0.0",
"chalk": "1.1.3",
"cli-table": "0.3.1",
"lodash.assign": "4.2.0",
"node-emoji": "1.8.1"
}
},
"math-random": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.1.tgz",
"integrity": "sha1-izqsWIuKZuSXXjzepn97sylgH6w="
},
"meow": {
"version": "3.7.0",
"resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
"integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=",
"requires": {
"camelcase-keys": "2.1.0",
"decamelize": "1.2.0",
"loud-rejection": "1.6.0",
"map-obj": "1.0.1",
"minimist": "1.2.0",
"normalize-package-data": "2.4.0",
"object-assign": "4.1.1",
"read-pkg-up": "1.0.1",
"redent": "1.0.0",
"trim-newlines": "1.0.0"
},
"dependencies": {
"object-assign": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
"integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM="
}
}
},
"merge-stream": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-1.0.1.tgz",
"integrity": "sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE=",
"requires": {
"readable-stream": "2.3.6"
},
"dependencies": {
"isarray": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
},
"readable-stream": {
"version": "2.3.6",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
"integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
"requires": {
"core-util-is": "1.0.2",
"inherits": "2.0.3",
"isarray": "1.0.0",
"process-nextick-args": "2.0.0",
"safe-buffer": "5.1.2",
"string_decoder": "1.1.1",
"util-deprecate": "1.0.2"
}
},
"string_decoder": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
"requires": {
"safe-buffer": "5.1.2"
}
}
}
},
"micromatch": {
"version": "3.1.10",
"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz",
"integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==",
"requires": {
"arr-diff": "4.0.0",
"array-unique": "0.3.2",
"braces": "2.3.2",
"define-property": "2.0.2",
"extend-shallow": "3.0.2",
"extglob": "2.0.4",
"fragment-cache": "0.2.1",
"kind-of": "6.0.2",
"nanomatch": "1.2.9",
"object.pick": "1.3.0",
"regex-not": "1.0.2",
"snapdragon": "0.8.2",
"to-regex": "3.0.2"
}
},
"mime": {
"version": "1.6.0",
"resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
"integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==",
"optional": true
},
"mime-db": {
"version": "1.33.0",
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz",
"integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ=="
},
"mime-types": {
"version": "2.1.18",
"resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz",
"integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==",
"requires": {
"mime-db": "1.33.0"
}
},
"minimatch": {
"version": "2.0.10",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz",
"integrity": "sha1-jQh8OcazjAAbl/ynzm0OHoCvusc=",
"requires": {
"brace-expansion": "1.1.11"
}
},
"minimist": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
"integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ="
},
"mixin-deep": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz",
"integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==",
"requires": {
"for-in": "1.0.2",
"is-extendable": "1.0.1"
},
"dependencies": {
"is-extendable": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
"integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
"requires": {
"is-plain-object": "2.0.4"
}
}
}
},
"mkdirp": {
"version": "0.5.1",
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
"integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
"requires": {
"minimist": "0.0.8"
},
"dependencies": {
"minimist": {
"version": "0.0.8",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
"integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0="
}
}
},
"modify-filename": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/modify-filename/-/modify-filename-1.1.0.tgz",
"integrity": "sha1-mi3sg4Bvuy2XXyK+7IWcoms5OqE="
},
"ms": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
},
"multipipe": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/multipipe/-/multipipe-0.1.2.tgz",
"integrity": "sha1-Ko8t33Du1WTf8tV/HhoTfZ8FB4s=",
"requires": {
"duplexer2": "0.0.2"
}
},
"nan": {
"version": "2.10.0",
"resolved": "https://registry.npmjs.org/nan/-/nan-2.10.0.tgz",
"integrity": "sha512-bAdJv7fBLhWC+/Bls0Oza+mvTaNQtP+1RyhhhvD95pgUJz6XM5IzgmxOkItJ9tkoCiplvAnXI1tNmmUD/eScyA=="
},
"nanomatch": {
"version": "1.2.9",
"resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.9.tgz",
"integrity": "sha512-n8R9bS8yQ6eSXaV6jHUpKzD8gLsin02w1HSFiegwrs9E098Ylhw5jdyKPaYqvHknHaSCKTPp7C8dGCQ0q9koXA==",
"requires": {
"arr-diff": "4.0.0",
"array-unique": "0.3.2",
"define-property": "2.0.2",
"extend-shallow": "3.0.2",
"fragment-cache": "0.2.1",
"is-odd": "2.0.0",
"is-windows": "1.0.2",
"kind-of": "6.0.2",
"object.pick": "1.3.0",
"regex-not": "1.0.2",
"snapdragon": "0.8.2",
"to-regex": "3.0.2"
}
},
"natives": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/natives/-/natives-1.1.3.tgz",
"integrity": "sha512-BZGSYV4YOLxzoTK73l0/s/0sH9l8SHs2ocReMH1f8JYSh5FUWu4ZrKCpJdRkWXV6HFR/pZDz7bwWOVAY07q77g=="
},
"new-from": {
"version": "0.0.3",
"resolved": "https://registry.npmjs.org/new-from/-/new-from-0.0.3.tgz",
"integrity": "sha1-HErRNhPePhXWMhtw7Vwjk36iXmc=",
"requires": {
"readable-stream": "1.1.14"
}
},
"node-emoji": {
"version": "1.8.1",
"resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-1.8.1.tgz",
"integrity": "sha512-+ktMAh1Jwas+TnGodfCfjUbJKoANqPaJFN0z0iqh41eqD8dvguNzcitVSBSVK1pidz0AqGbLKcoVuVLRVZ/aVg==",
"requires": {
"lodash.toarray": "4.4.0"
}
},
"node-gyp": {
"version": "3.6.2",
"resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.6.2.tgz",
"integrity": "sha1-m/vlRWIoYoSDjnUOrAUpWFP6HGA=",
"requires": {
"fstream": "1.0.11",
"glob": "7.1.2",
"graceful-fs": "4.1.11",
"minimatch": "3.0.4",
"mkdirp": "0.5.1",
"nopt": "3.0.6",
"npmlog": "4.1.2",
"osenv": "0.1.5",
"request": "2.81.0",
"rimraf": "2.6.2",
"semver": "5.3.0",
"tar": "2.2.1",
"which": "1.3.0"
},
"dependencies": {
"glob": {
"version": "7.1.2",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
"integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
"requires": {
"fs.realpath": "1.0.0",
"inflight": "1.0.6",
"inherits": "2.0.3",
"minimatch": "3.0.4",
"once": "1.3.3",
"path-is-absolute": "1.0.1"
}
},
"graceful-fs": {
"version": "4.1.11",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
"integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg="
},
"minimatch": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
"requires": {
"brace-expansion": "1.1.11"
}
},
"semver": {
"version": "5.3.0",
"resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz",
"integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8="
}
}
},
"node-notifier": {
"version": "4.6.1",
"resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-4.6.1.tgz",
"integrity": "sha1-BW0UJE89zBzq3+aK+c/wxUc6M/M=",
"requires": {
"cli-usage": "0.1.7",
"growly": "1.3.0",
"lodash.clonedeep": "3.0.2",
"minimist": "1.2.0",
"semver": "5.5.0",
"shellwords": "0.1.1",
"which": "1.3.0"
},
"dependencies": {
"semver": {
"version": "5.5.0",
"resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz",
"integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA=="
}
}
},
"node-sass": {
"version": "4.9.0",
"resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.9.0.tgz",
"integrity": "sha512-QFHfrZl6lqRU3csypwviz2XLgGNOoWQbo2GOvtsfQqOfL4cy1BtWnhx/XUeAO9LT3ahBzSRXcEO6DdvAH9DzSg==",
"requires": {
"async-foreach": "0.1.3",
"chalk": "1.1.3",
"cross-spawn": "3.0.1",
"gaze": "1.1.2",
"get-stdin": "4.0.1",
"glob": "7.1.2",
"in-publish": "2.0.0",
"lodash.assign": "4.2.0",
"lodash.clonedeep": "4.5.0",
"lodash.mergewith": "4.6.1",
"meow": "3.7.0",
"mkdirp": "0.5.1",
"nan": "2.10.0",
"node-gyp": "3.6.2",
"npmlog": "4.1.2",
"request": "2.79.0",
"sass-graph": "2.2.4",
"stdout-stream": "1.4.0",
"true-case-path": "1.0.2"
},
"dependencies": {
"caseless": {
"version": "0.11.0",
"resolved": "https://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz",
"integrity": "sha1-cVuW6phBWTzDMGeSP17GDr2k99c="
},
"commander": {
"version": "2.15.1",
"resolved": "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz",
"integrity": "sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag=="
},
"gaze": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.2.tgz",
"integrity": "sha1-hHIkZ3rbiHDWeSV+0ziP22HkAQU=",
"requires": {
"globule": "1.2.0"
}
},
"glob": {
"version": "7.1.2",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
"integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
"requires": {
"fs.realpath": "1.0.0",
"inflight": "1.0.6",
"inherits": "2.0.3",
"minimatch": "3.0.4",
"once": "1.3.3",
"path-is-absolute": "1.0.1"
}
},
"globule": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/globule/-/globule-1.2.0.tgz",
"integrity": "sha1-HcScaCLdnoovoAuiopUAboZkvQk=",
"requires": {
"glob": "7.1.2",
"lodash": "4.17.10",
"minimatch": "3.0.4"
}
},
"har-validator": {
"version": "2.0.6",
"resolved": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz",
"integrity": "sha1-zcvAgYgmWtEZtqWnyKtw7s+10n0=",
"requires": {
"chalk": "1.1.3",
"commander": "2.15.1",
"is-my-json-valid": "2.17.2",
"pinkie-promise": "2.0.1"
}
},
"lodash": {
"version": "4.17.10",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
"integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg=="
},
"lodash.clonedeep": {
"version": "4.5.0",
"resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz",
"integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8="
},
"minimatch": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
"requires": {
"brace-expansion": "1.1.11"
}
},
"qs": {
"version": "6.3.2",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.3.2.tgz",
"integrity": "sha1-51vV9uJoEioqDgvaYwslUMFmUCw="
},
"request": {
"version": "2.79.0",
"resolved": "https://registry.npmjs.org/request/-/request-2.79.0.tgz",
"integrity": "sha1-Tf5b9r6LjNw3/Pk+BLZVd3InEN4=",
"requires": {
"aws-sign2": "0.6.0",
"aws4": "1.7.0",
"caseless": "0.11.0",
"combined-stream": "1.0.6",
"extend": "3.0.1",
"forever-agent": "0.6.1",
"form-data": "2.1.4",
"har-validator": "2.0.6",
"hawk": "3.1.3",
"http-signature": "1.1.1",
"is-typedarray": "1.0.0",
"isstream": "0.1.2",
"json-stringify-safe": "5.0.1",
"mime-types": "2.1.18",
"oauth-sign": "0.8.2",
"qs": "6.3.2",
"stringstream": "0.0.5",
"tough-cookie": "2.3.4",
"tunnel-agent": "0.4.3",
"uuid": "3.2.1"
}
},
"tunnel-agent": {
"version": "0.4.3",
"resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz",
"integrity": "sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us="
}
}
},
"node.extend": {
"version": "1.1.6",
"resolved": "https://registry.npmjs.org/node.extend/-/node.extend-1.1.6.tgz",
"integrity": "sha1-p7iCyC1sk6SGOlUEvV3o7IYli5Y=",
"requires": {
"is": "3.2.1"
}
},
"nopt": {
"version": "3.0.6",
"resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz",
"integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=",
"requires": {
"abbrev": "1.1.1"
}
},
"normalize-package-data": {
"version": "2.4.0",
"resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz",
"integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==",
"requires": {
"hosted-git-info": "2.6.0",
"is-builtin-module": "1.0.0",
"semver": "4.3.6",
"validate-npm-package-license": "3.0.3"
}
},
"normalize-path": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
"integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=",
"requires": {
"remove-trailing-separator": "1.1.0"
}
},
"normalize-range": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz",
"integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI="
},
"npmlog": {
"version": "4.1.2",
"resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz",
"integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==",
"requires": {
"are-we-there-yet": "1.1.4",
"console-control-strings": "1.1.0",
"gauge": "2.7.4",
"set-blocking": "2.0.0"
}
},
"num2fraction": {
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz",
"integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4="
},
"number-is-nan": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz",
"integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0="
},
"oauth-sign": {
"version": "0.8.2",
"resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz",
"integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM="
},
"object-assign": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz",
"integrity": "sha1-m+3VygiXlJvKR+f/QIBi1Un1h/I="
},
"object-copy": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz",
"integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=",
"requires": {
"copy-descriptor": "0.1.1",
"define-property": "0.2.5",
"kind-of": "3.2.2"
},
"dependencies": {
"define-property": {
"version": "0.2.5",
"resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
"integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
"requires": {
"is-descriptor": "0.1.6"
}
},
"kind-of": {
"version": "3.2.2",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
"integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
"requires": {
"is-buffer": "1.1.6"
}
}
}
},
"object-visit": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz",
"integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=",
"requires": {
"isobject": "3.0.1"
}
},
"object.defaults": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz",
"integrity": "sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8=",
"requires": {
"array-each": "1.0.1",
"array-slice": "1.1.0",
"for-own": "1.0.0",
"isobject": "3.0.1"
}
},
"object.map": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz",
"integrity": "sha1-z4Plncj8wK1fQlDh94s7gb2AHTc=",
"requires": {
"for-own": "1.0.0",
"make-iterator": "1.0.1"
}
},
"object.omit": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz",
"integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=",
"requires": {
"for-own": "0.1.5",
"is-extendable": "0.1.1"
},
"dependencies": {
"for-own": {
"version": "0.1.5",
"resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz",
"integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=",
"requires": {
"for-in": "1.0.2"
}
}
}
},
"object.pick": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz",
"integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=",
"requires": {
"isobject": "3.0.1"
}
},
"once": {
"version": "1.3.3",
"resolved": "https://registry.npmjs.org/once/-/once-1.3.3.tgz",
"integrity": "sha1-suJhVXzkwxTsgwTz+oJmPkKXyiA=",
"requires": {
"wrappy": "1.0.2"
}
},
"orchestrator": {
"version": "0.3.8",
"resolved": "https://registry.npmjs.org/orchestrator/-/orchestrator-0.3.8.tgz",
"integrity": "sha1-FOfp4nZPcxX7rBhOUGx6pt+UrX4=",
"requires": {
"end-of-stream": "0.1.5",
"sequencify": "0.0.7",
"stream-consume": "0.1.1"
}
},
"ordered-read-streams": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-0.1.0.tgz",
"integrity": "sha1-/VZamvjrRHO6abbtijQ1LLVS8SY="
},
"os-homedir": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
"integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M="
},
"os-locale": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz",
"integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=",
"requires": {
"lcid": "1.0.0"
}
},
"os-tmpdir": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
"integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ="
},
"osenv": {
"version": "0.1.5",
"resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz",
"integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==",
"requires": {
"os-homedir": "1.0.2",
"os-tmpdir": "1.0.2"
}
},
"parse-filepath": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz",
"integrity": "sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=",
"requires": {
"is-absolute": "1.0.0",
"map-cache": "0.2.2",
"path-root": "0.1.1"
}
},
"parse-glob": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz",
"integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=",
"requires": {
"glob-base": "0.3.0",
"is-dotfile": "1.0.3",
"is-extglob": "1.0.0",
"is-glob": "2.0.1"
},
"dependencies": {
"is-extglob": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",
"integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA="
},
"is-glob": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
"integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
"requires": {
"is-extglob": "1.0.0"
}
}
}
},
"parse-json": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz",
"integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=",
"requires": {
"error-ex": "1.3.1"
}
},
"parse-passwd": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz",
"integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY="
},
"pascalcase": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz",
"integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ="
},
"path": {
"version": "0.12.7",
"resolved": "https://registry.npmjs.org/path/-/path-0.12.7.tgz",
"integrity": "sha1-1NwqUGxM4hl+tIHr/NWzbAFAsQ8=",
"requires": {
"process": "0.11.10",
"util": "0.10.3"
}
},
"path-exists": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz",
"integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=",
"requires": {
"pinkie-promise": "2.0.1"
}
},
"path-is-absolute": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18="
},
"path-is-inside": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz",
"integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM="
},
"path-parse": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz",
"integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME="
},
"path-root": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz",
"integrity": "sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc=",
"requires": {
"path-root-regex": "0.1.2"
}
},
"path-root-regex": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz",
"integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0="
},
"path-type": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz",
"integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=",
"requires": {
"graceful-fs": "4.1.11",
"pify": "2.3.0",
"pinkie-promise": "2.0.1"
},
"dependencies": {
"graceful-fs": {
"version": "4.1.11",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
"integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg="
}
}
},
"performance-now": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz",
"integrity": "sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU="
},
"pify": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
"integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw="
},
"pinkie": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz",
"integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA="
},
"pinkie-promise": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz",
"integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=",
"requires": {
"pinkie": "2.0.4"
}
},
"plugin-error": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-0.1.2.tgz",
"integrity": "sha1-O5uzM1zPAPQl4HQ34ZJ2ln2kes4=",
"requires": {
"ansi-cyan": "0.1.1",
"ansi-red": "0.1.1",
"arr-diff": "1.1.0",
"arr-union": "2.1.0",
"extend-shallow": "1.1.4"
},
"dependencies": {
"arr-diff": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-1.1.0.tgz",
"integrity": "sha1-aHwydYFjWI/vfeezb6vklesaOZo=",
"requires": {
"arr-flatten": "1.1.0",
"array-slice": "0.2.3"
}
},
"arr-union": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz",
"integrity": "sha1-IPnqtexw9cfSFbEHexw5Fh0pLH0="
},
"array-slice": {
"version": "0.2.3",
"resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz",
"integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU="
},
"extend-shallow": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-1.1.4.tgz",
"integrity": "sha1-Gda/lN/AnXa6cR85uHLSH/TdkHE=",
"requires": {
"kind-of": "1.1.0"
}
},
"kind-of": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz",
"integrity": "sha1-FAo9LUGjbS78+pN3tiwk+ElaXEQ="
}
}
},
"posix-character-classes": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz",
"integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs="
},
"postcss": {
"version": "5.2.18",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz",
"integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==",
"requires": {
"chalk": "1.1.3",
"js-base64": "2.4.3",
"source-map": "0.5.7",
"supports-color": "3.2.3"
},
"dependencies": {
"has-flag": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz",
"integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo="
},
"supports-color": {
"version": "3.2.3",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz",
"integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=",
"requires": {
"has-flag": "1.0.0"
}
}
}
},
"postcss-value-parser": {
"version": "3.3.0",
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.0.tgz",
"integrity": "sha1-h/OPnxj3dKSrTIojL1xc6IcqnRU="
},
"preserve": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz",
"integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks="
},
"pretty-hrtime": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz",
"integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE="
},
"process": {
"version": "0.11.10",
"resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz",
"integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI="
},
"process-nextick-args": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz",
"integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw=="
},
"promise": {
"version": "7.3.1",
"resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz",
"integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==",
"optional": true,
"requires": {
"asap": "2.0.6"
}
},
"prr": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz",
"integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=",
"optional": true
},
"pseudomap": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz",
"integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM="
},
"punycode": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
"integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4="
},
"q": {
"version": "1.5.1",
"resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz",
"integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc="
},
"qs": {
"version": "6.4.0",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.4.0.tgz",
"integrity": "sha1-E+JtKK1rD/qpExLNO/cI7TUecjM="
},
"randomatic": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.0.0.tgz",
"integrity": "sha512-VdxFOIEY3mNO5PtSRkkle/hPJDHvQhK21oa73K4yAc9qmp6N429gAyF1gZMOTMeS0/AYzaV/2Trcef+NaIonSA==",
"requires": {
"is-number": "4.0.0",
"kind-of": "6.0.2",
"math-random": "1.0.1"
},
"dependencies": {
"is-number": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz",
"integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ=="
}
}
},
"read-pkg": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz",
"integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=",
"requires": {
"load-json-file": "1.1.0",
"normalize-package-data": "2.4.0",
"path-type": "1.1.0"
}
},
"read-pkg-up": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz",
"integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=",
"requires": {
"find-up": "1.1.2",
"read-pkg": "1.1.0"
}
},
"readable-stream": {
"version": "1.1.14",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
"integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
"requires": {
"core-util-is": "1.0.2",
"inherits": "2.0.3",
"isarray": "0.0.1",
"string_decoder": "0.10.31"
}
},
"rechoir": {
"version": "0.6.2",
"resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz",
"integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=",
"requires": {
"resolve": "1.7.1"
}
},
"redent": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz",
"integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=",
"requires": {
"indent-string": "2.1.0",
"strip-indent": "1.0.1"
}
},
"redeyed": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/redeyed/-/redeyed-1.0.1.tgz",
"integrity": "sha1-6WwZO0DAgWsArshCaY5hGF5VSYo=",
"requires": {
"esprima": "3.0.0"
}
},
"regex-cache": {
"version": "0.4.4",
"resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz",
"integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==",
"requires": {
"is-equal-shallow": "0.1.3"
}
},
"regex-not": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz",
"integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==",
"requires": {
"extend-shallow": "3.0.2",
"safe-regex": "1.1.0"
}
},
"remove-trailing-separator": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz",
"integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8="
},
"repeat-element": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz",
"integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo="
},
"repeat-string": {
"version": "1.6.1",
"resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
"integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc="
},
"repeating": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz",
"integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=",
"requires": {
"is-finite": "1.0.2"
}
},
"replace-ext": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz",
"integrity": "sha1-KbvZIHinOfC8zitO5B6DeVNSKSQ="
},
"request": {
"version": "2.81.0",
"resolved": "https://registry.npmjs.org/request/-/request-2.81.0.tgz",
"integrity": "sha1-xpKJRqDgbF+Nb4qTM0af/aRimKA=",
"requires": {
"aws-sign2": "0.6.0",
"aws4": "1.7.0",
"caseless": "0.12.0",
"combined-stream": "1.0.6",
"extend": "3.0.1",
"forever-agent": "0.6.1",
"form-data": "2.1.4",
"har-validator": "4.2.1",
"hawk": "3.1.3",
"http-signature": "1.1.1",
"is-typedarray": "1.0.0",
"isstream": "0.1.2",
"json-stringify-safe": "5.0.1",
"mime-types": "2.1.18",
"oauth-sign": "0.8.2",
"performance-now": "0.2.0",
"qs": "6.4.0",
"safe-buffer": "5.1.2",
"stringstream": "0.0.5",
"tough-cookie": "2.3.4",
"tunnel-agent": "0.6.0",
"uuid": "3.2.1"
}
},
"require-dir": {
"version": "0.3.2",
"resolved": "https://registry.npmjs.org/require-dir/-/require-dir-0.3.2.tgz",
"integrity": "sha1-wdXHXp+//eny5rM+OD209ZS1pqk="
},
"require-directory": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
"integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I="
},
"require-main-filename": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz",
"integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE="
},
"resolve": {
"version": "1.7.1",
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.7.1.tgz",
"integrity": "sha512-c7rwLofp8g1U+h1KNyHL/jicrKg1Ek4q+Lr33AL65uZTinUZHe30D5HlyN5V9NW0JX1D5dXQ4jqW5l7Sy/kGfw==",
"requires": {
"path-parse": "1.0.5"
}
},
"resolve-dir": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz",
"integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=",
"requires": {
"expand-tilde": "2.0.2",
"global-modules": "1.0.0"
}
},
"resolve-url": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz",
"integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo="
},
"ret": {
"version": "0.1.15",
"resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz",
"integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg=="
},
"rev-hash": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/rev-hash/-/rev-hash-1.0.0.tgz",
"integrity": "sha1-lpk5Weqb+xxZsTrfAqwuNLs3NgM="
},
"rev-path": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/rev-path/-/rev-path-1.0.0.tgz",
"integrity": "sha1-1My0NqwzcMRgcXXOiOr8XGXF1lM=",
"requires": {
"modify-filename": "1.1.0"
}
},
"right-align": {
"version": "0.1.3",
"resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz",
"integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=",
"requires": {
"align-text": "0.1.4"
}
},
"rimraf": {
"version": "2.6.2",
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz",
"integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==",
"requires": {
"glob": "7.1.2"
},
"dependencies": {
"glob": {
"version": "7.1.2",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
"integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
"requires": {
"fs.realpath": "1.0.0",
"inflight": "1.0.6",
"inherits": "2.0.3",
"minimatch": "3.0.4",
"once": "1.3.3",
"path-is-absolute": "1.0.1"
}
},
"minimatch": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
"requires": {
"brace-expansion": "1.1.11"
}
}
}
},
"run-sequence": {
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/run-sequence/-/run-sequence-1.2.2.tgz",
"integrity": "sha1-UJWgvr6YczsBQL0I3YDsAw3azes=",
"requires": {
"chalk": "1.1.3",
"gulp-util": "3.0.8"
}
},
"safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
},
"safe-regex": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
"integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=",
"requires": {
"ret": "0.1.15"
}
},
"sass-graph": {
"version": "2.2.4",
"resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.4.tgz",
"integrity": "sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k=",
"requires": {
"glob": "7.1.2",
"lodash": "4.17.10",
"scss-tokenizer": "0.2.3",
"yargs": "7.1.0"
},
"dependencies": {
"camelcase": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz",
"integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo="
},
"cliui": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz",
"integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=",
"requires": {
"string-width": "1.0.2",
"strip-ansi": "3.0.1",
"wrap-ansi": "2.1.0"
}
},
"glob": {
"version": "7.1.2",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
"integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
"requires": {
"fs.realpath": "1.0.0",
"inflight": "1.0.6",
"inherits": "2.0.3",
"minimatch": "3.0.4",
"once": "1.3.3",
"path-is-absolute": "1.0.1"
}
},
"lodash": {
"version": "4.17.10",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
"integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg=="
},
"minimatch": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
"requires": {
"brace-expansion": "1.1.11"
}
},
"yargs": {
"version": "7.1.0",
"resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz",
"integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=",
"requires": {
"camelcase": "3.0.0",
"cliui": "3.2.0",
"decamelize": "1.2.0",
"get-caller-file": "1.0.2",
"os-locale": "1.4.0",
"read-pkg-up": "1.0.1",
"require-directory": "2.1.1",
"require-main-filename": "1.0.1",
"set-blocking": "2.0.0",
"string-width": "1.0.2",
"which-module": "1.0.0",
"y18n": "3.2.1",
"yargs-parser": "5.0.0"
}
}
}
},
"scss-tokenizer": {
"version": "0.2.3",
"resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz",
"integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=",
"requires": {
"js-base64": "2.4.3",
"source-map": "0.4.4"
},
"dependencies": {
"source-map": {
"version": "0.4.4",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
"integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
"requires": {
"amdefine": "1.0.1"
}
}
}
},
"semver": {
"version": "4.3.6",
"resolved": "https://registry.npmjs.org/semver/-/semver-4.3.6.tgz",
"integrity": "sha1-MAvG4OhjdPe6YQaLWx7NV/xlMto="
},
"sequencify": {
"version": "0.0.7",
"resolved": "https://registry.npmjs.org/sequencify/-/sequencify-0.0.7.tgz",
"integrity": "sha1-kM/xnQLgcCf9dn9erT57ldHnOAw="
},
"set-blocking": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
"integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc="
},
"set-value": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz",
"integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==",
"requires": {
"extend-shallow": "2.0.1",
"is-extendable": "0.1.1",
"is-plain-object": "2.0.4",
"split-string": "3.1.0"
},
"dependencies": {
"extend-shallow": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
"integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
"requires": {
"is-extendable": "0.1.1"
}
}
}
},
"shellwords": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz",
"integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww=="
},
"sigmund": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz",
"integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA="
},
"signal-exit": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz",
"integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0="
},
"snapdragon": {
"version": "0.8.2",
"resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz",
"integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==",
"requires": {
"base": "0.11.2",
"debug": "2.6.9",
"define-property": "0.2.5",
"extend-shallow": "2.0.1",
"map-cache": "0.2.2",
"source-map": "0.5.7",
"source-map-resolve": "0.5.2",
"use": "3.1.0"
},
"dependencies": {
"define-property": {
"version": "0.2.5",
"resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
"integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
"requires": {
"is-descriptor": "0.1.6"
}
},
"extend-shallow": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
"integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
"requires": {
"is-extendable": "0.1.1"
}
}
}
},
"snapdragon-node": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz",
"integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==",
"requires": {
"define-property": "1.0.0",
"isobject": "3.0.1",
"snapdragon-util": "3.0.1"
},
"dependencies": {
"define-property": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
"integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
"requires": {
"is-descriptor": "1.0.2"
}
},
"is-accessor-descriptor": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
"integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
"requires": {
"kind-of": "6.0.2"
}
},
"is-data-descriptor": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
"integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
"requires": {
"kind-of": "6.0.2"
}
},
"is-descriptor": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
"integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
"requires": {
"is-accessor-descriptor": "1.0.0",
"is-data-descriptor": "1.0.0",
"kind-of": "6.0.2"
}
}
}
},
"snapdragon-util": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz",
"integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==",
"requires": {
"kind-of": "3.2.2"
},
"dependencies": {
"kind-of": {
"version": "3.2.2",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
"integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
"requires": {
"is-buffer": "1.1.6"
}
}
}
},
"sntp": {
"version": "1.0.9",
"resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz",
"integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=",
"requires": {
"hoek": "2.16.3"
}
},
"sort-keys": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz",
"integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=",
"requires": {
"is-plain-obj": "1.1.0"
}
},
"source-map": {
"version": "0.5.7",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
"integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w="
},
"source-map-resolve": {
"version": "0.5.2",
"resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz",
"integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==",
"requires": {
"atob": "2.1.1",
"decode-uri-component": "0.2.0",
"resolve-url": "0.2.1",
"source-map-url": "0.4.0",
"urix": "0.1.0"
}
},
"source-map-url": {
"version": "0.4.0",
"resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz",
"integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM="
},
"sparkles": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.1.tgz",
"integrity": "sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw=="
},
"spdx-correct": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.0.tgz",
"integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==",
"requires": {
"spdx-expression-parse": "3.0.0",
"spdx-license-ids": "3.0.0"
}
},
"spdx-exceptions": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz",
"integrity": "sha512-4K1NsmrlCU1JJgUrtgEeTVyfx8VaYea9J9LvARxhbHtVtohPs/gFGG5yy49beySjlIMhhXZ4QqujIZEfS4l6Cg=="
},
"spdx-expression-parse": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz",
"integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==",
"requires": {
"spdx-exceptions": "2.1.0",
"spdx-license-ids": "3.0.0"
}
},
"spdx-license-ids": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz",
"integrity": "sha512-2+EPwgbnmOIl8HjGBXXMd9NAu02vLjOO1nWw4kmeRDFyHn+M/ETfHxQUK0oXg8ctgVnl9t3rosNVsZ1jG61nDA=="
},
"split-string": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz",
"integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==",
"requires": {
"extend-shallow": "3.0.2"
}
},
"sshpk": {
"version": "1.14.1",
"resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.1.tgz",
"integrity": "sha1-Ew9Zde3a2WPx1W+SuaxsUfqfg+s=",
"requires": {
"asn1": "0.2.3",
"assert-plus": "1.0.0",
"bcrypt-pbkdf": "1.0.1",
"dashdash": "1.14.1",
"ecc-jsbn": "0.1.1",
"getpass": "0.1.7",
"jsbn": "0.1.1",
"tweetnacl": "0.14.5"
},
"dependencies": {
"assert-plus": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
"integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU="
}
}
},
"static-extend": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz",
"integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=",
"requires": {
"define-property": "0.2.5",
"object-copy": "0.1.0"
},
"dependencies": {
"define-property": {
"version": "0.2.5",
"resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
"integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
"requires": {
"is-descriptor": "0.1.6"
}
}
}
},
"stdout-stream": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.0.tgz",
"integrity": "sha1-osfIWH5U2UJ+qe2zrD8s1SLfN4s=",
"requires": {
"readable-stream": "2.3.6"
},
"dependencies": {
"isarray": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
},
"readable-stream": {
"version": "2.3.6",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
"integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
"requires": {
"core-util-is": "1.0.2",
"inherits": "2.0.3",
"isarray": "1.0.0",
"process-nextick-args": "2.0.0",
"safe-buffer": "5.1.2",
"string_decoder": "1.1.1",
"util-deprecate": "1.0.2"
}
},
"string_decoder": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
"requires": {
"safe-buffer": "5.1.2"
}
}
}
},
"stream-array": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/stream-array/-/stream-array-1.1.2.tgz",
"integrity": "sha1-nl9zRfITfDDuO0mLkRToC1K7frU=",
"requires": {
"readable-stream": "2.1.5"
},
"dependencies": {
"isarray": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
},
"process-nextick-args": {
"version": "1.0.7",
"resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz",
"integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M="
},
"readable-stream": {
"version": "2.1.5",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.1.5.tgz",
"integrity": "sha1-ZvqLcg4UOLNkaB8q0aY8YYRIydA=",
"requires": {
"buffer-shims": "1.0.0",
"core-util-is": "1.0.2",
"inherits": "2.0.3",
"isarray": "1.0.0",
"process-nextick-args": "1.0.7",
"string_decoder": "0.10.31",
"util-deprecate": "1.0.2"
}
}
}
},
"stream-consume": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/stream-consume/-/stream-consume-0.1.1.tgz",
"integrity": "sha512-tNa3hzgkjEP7XbCkbRXe1jpg+ievoa0O4SCFlMOYEscGSS4JJsckGL8swUyAa/ApGU3Ae4t6Honor4HhL+tRyg=="
},
"stream-exhaust": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/stream-exhaust/-/stream-exhaust-1.0.2.tgz",
"integrity": "sha512-b/qaq/GlBK5xaq1yrK9/zFcyRSTNxmcZwFLGSTG0mXgZl/4Z6GgiyYOXOvY7N3eEvFRAG1bkDRz5EPGSvPYQlw=="
},
"stream-shift": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz",
"integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI="
},
"string-width": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
"integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
"requires": {
"code-point-at": "1.1.0",
"is-fullwidth-code-point": "1.0.0",
"strip-ansi": "3.0.1"
}
},
"string_decoder": {
"version": "0.10.31",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
"integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ="
},
"stringstream": {
"version": "0.0.5",
"resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz",
"integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg="
},
"strip-ansi": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
"integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
"requires": {
"ansi-regex": "2.1.1"
}
},
"strip-bom": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-1.0.0.tgz",
"integrity": "sha1-hbiGLzhEtabV7IRnqTWYFzo295Q=",
"requires": {
"first-chunk-stream": "1.0.0",
"is-utf8": "0.2.1"
}
},
"strip-bom-stream": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/strip-bom-stream/-/strip-bom-stream-1.0.0.tgz",
"integrity": "sha1-5xRDmFd9Uaa+0PoZlPoF9D/ZiO4=",
"requires": {
"first-chunk-stream": "1.0.0",
"strip-bom": "2.0.0"
},
"dependencies": {
"strip-bom": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
"integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
"requires": {
"is-utf8": "0.2.1"
}
}
}
},
"strip-indent": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz",
"integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=",
"requires": {
"get-stdin": "4.0.1"
}
},
"supports-color": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
"integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc="
},
"tar": {
"version": "2.2.1",
"resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz",
"integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=",
"requires": {
"block-stream": "0.0.9",
"fstream": "1.0.11",
"inherits": "2.0.3"
}
},
"ternary-stream": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/ternary-stream/-/ternary-stream-2.0.1.tgz",
"integrity": "sha1-Bk5Im0tb9gumpre8fy9cJ07Pgmk=",
"requires": {
"duplexify": "3.6.0",
"fork-stream": "0.0.4",
"merge-stream": "1.0.1",
"through2": "2.0.3"
}
},
"through2": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz",
"integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=",
"requires": {
"readable-stream": "2.3.6",
"xtend": "4.0.1"
},
"dependencies": {
"isarray": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
},
"readable-stream": {
"version": "2.3.6",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
"integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
"requires": {
"core-util-is": "1.0.2",
"inherits": "2.0.3",
"isarray": "1.0.0",
"process-nextick-args": "2.0.0",
"safe-buffer": "5.1.2",
"string_decoder": "1.1.1",
"util-deprecate": "1.0.2"
}
},
"string_decoder": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
"requires": {
"safe-buffer": "5.1.2"
}
}
}
},
"tildify": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/tildify/-/tildify-1.2.0.tgz",
"integrity": "sha1-3OwD9V3Km3qj5bBPIYF+tW5jWIo=",
"requires": {
"os-homedir": "1.0.2"
}
},
"time-stamp": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz",
"integrity": "sha1-dkpaEa9QVhkhsTPztE5hhofg9cM="
},
"to-object-path": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz",
"integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=",
"requires": {
"kind-of": "3.2.2"
},
"dependencies": {
"kind-of": {
"version": "3.2.2",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
"integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
"requires": {
"is-buffer": "1.1.6"
}
}
}
},
"to-regex": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz",
"integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==",
"requires": {
"define-property": "2.0.2",
"extend-shallow": "3.0.2",
"regex-not": "1.0.2",
"safe-regex": "1.1.0"
}
},
"to-regex-range": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz",
"integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=",
"requires": {
"is-number": "3.0.0",
"repeat-string": "1.6.1"
}
},
"tough-cookie": {
"version": "2.3.4",
"resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz",
"integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==",
"requires": {
"punycode": "1.4.1"
}
},
"trim-newlines": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz",
"integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM="
},
"true-case-path": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.2.tgz",
"integrity": "sha1-fskRMJJHZsf1c74wIMNPj9/QDWI=",
"requires": {
"glob": "6.0.4"
},
"dependencies": {
"glob": {
"version": "6.0.4",
"resolved": "https://registry.npmjs.org/glob/-/glob-6.0.4.tgz",
"integrity": "sha1-DwiGD2oVUSey+t1PnOJLGqtuTSI=",
"requires": {
"inflight": "1.0.6",
"inherits": "2.0.3",
"minimatch": "2.0.10",
"once": "1.3.3",
"path-is-absolute": "1.0.1"
}
}
}
},
"tunnel-agent": {
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
"integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
"requires": {
"safe-buffer": "5.1.2"
}
},
"tweetnacl": {
"version": "0.14.5",
"resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz",
"integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=",
"optional": true
},
"uglify-js": {
"version": "2.8.29",
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz",
"integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=",
"requires": {
"source-map": "0.5.7",
"uglify-to-browserify": "1.0.2",
"yargs": "3.10.0"
}
},
"uglify-save-license": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/uglify-save-license/-/uglify-save-license-0.4.1.tgz",
"integrity": "sha1-lXJsF8xv0XHDYX479NjYKqjEzOE="
},
"uglify-to-browserify": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz",
"integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc="
},
"unc-path-regex": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz",
"integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo="
},
"underscore": {
"version": "1.9.0",
"resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.0.tgz",
"integrity": "sha512-4IV1DSSxC1QK48j9ONFK1MoIAKKkbE8i7u55w2R6IqBqbT7A/iG7aZBCR2Bi8piF0Uz+i/MG1aeqLwl/5vqF+A=="
},
"union-value": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz",
"integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=",
"requires": {
"arr-union": "3.1.0",
"get-value": "2.0.6",
"is-extendable": "0.1.1",
"set-value": "0.4.3"
},
"dependencies": {
"extend-shallow": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
"integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
"requires": {
"is-extendable": "0.1.1"
}
},
"set-value": {
"version": "0.4.3",
"resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz",
"integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=",
"requires": {
"extend-shallow": "2.0.1",
"is-extendable": "0.1.1",
"is-plain-object": "2.0.4",
"to-object-path": "0.3.0"
}
}
}
},
"unique-stream": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-1.0.0.tgz",
"integrity": "sha1-1ZpKdUJ0R9mqbJHnAmP40mpLEEs="
},
"unset-value": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz",
"integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=",
"requires": {
"has-value": "0.3.1",
"isobject": "3.0.1"
},
"dependencies": {
"has-value": {
"version": "0.3.1",
"resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz",
"integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=",
"requires": {
"get-value": "2.0.6",
"has-values": "0.1.4",
"isobject": "2.1.0"
},
"dependencies": {
"isobject": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
"integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=",
"requires": {
"isarray": "1.0.0"
}
}
}
},
"has-values": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz",
"integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E="
},
"isarray": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
}
}
},
"urix": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz",
"integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI="
},
"use": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/use/-/use-3.1.0.tgz",
"integrity": "sha512-6UJEQM/L+mzC3ZJNM56Q4DFGLX/evKGRg15UJHGB9X5j5Z3AFbgZvjUh2yq/UJUY4U5dh7Fal++XbNg1uzpRAw==",
"requires": {
"kind-of": "6.0.2"
}
},
"user-home": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz",
"integrity": "sha1-K1viOjK2Onyd640PKNSFcko98ZA="
},
"util": {
"version": "0.10.3",
"resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz",
"integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=",
"requires": {
"inherits": "2.0.1"
},
"dependencies": {
"inherits": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
"integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE="
}
}
},
"util-deprecate": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
"integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
},
"uuid": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/uuid/-/uuid-3.2.1.tgz",
"integrity": "sha512-jZnMwlb9Iku/O3smGWvZhauCf6cvvpKi4BKRiliS3cxnI+Gz9j5MEpTz2UFuXiKPJocb7gnsLHwiS05ige5BEA=="
},
"v8flags": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/v8flags/-/v8flags-2.1.1.tgz",
"integrity": "sha1-qrGh+jDUX4jdMhFIh1rALAtV5bQ=",
"requires": {
"user-home": "1.1.1"
}
},
"validate-npm-package-license": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz",
"integrity": "sha512-63ZOUnL4SIXj4L0NixR3L1lcjO38crAbgrTpl28t8jjrfuiOBL5Iygm+60qPs/KsZGzPNg6Smnc/oY16QTjF0g==",
"requires": {
"spdx-correct": "3.0.0",
"spdx-expression-parse": "3.0.0"
}
},
"verror": {
"version": "1.10.0",
"resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
"integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=",
"requires": {
"assert-plus": "1.0.0",
"core-util-is": "1.0.2",
"extsprintf": "1.3.0"
},
"dependencies": {
"assert-plus": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
"integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU="
}
}
},
"vinyl": {
"version": "0.5.3",
"resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.5.3.tgz",
"integrity": "sha1-sEVbOPxeDPMNQyUTLkYZcMIJHN4=",
"requires": {
"clone": "1.0.4",
"clone-stats": "0.0.1",
"replace-ext": "0.0.1"
}
},
"vinyl-file": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/vinyl-file/-/vinyl-file-1.3.0.tgz",
"integrity": "sha1-qgVjTTqGe6kUR77bs0r8sm9E9uc=",
"requires": {
"graceful-fs": "4.1.11",
"strip-bom": "2.0.0",
"strip-bom-stream": "1.0.0",
"vinyl": "1.2.0"
},
"dependencies": {
"graceful-fs": {
"version": "4.1.11",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
"integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg="
},
"strip-bom": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
"integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
"requires": {
"is-utf8": "0.2.1"
}
},
"vinyl": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz",
"integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=",
"requires": {
"clone": "1.0.4",
"clone-stats": "0.0.1",
"replace-ext": "0.0.1"
}
}
}
},
"vinyl-fs": {
"version": "0.3.14",
"resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-0.3.14.tgz",
"integrity": "sha1-mmhRzhysHBzqX+hsCTHWIMLPqeY=",
"requires": {
"defaults": "1.0.3",
"glob-stream": "3.1.18",
"glob-watcher": "0.0.6",
"graceful-fs": "3.0.11",
"mkdirp": "0.5.1",
"strip-bom": "1.0.0",
"through2": "0.6.5",
"vinyl": "0.4.6"
},
"dependencies": {
"clone": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz",
"integrity": "sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8="
},
"readable-stream": {
"version": "1.0.34",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz",
"integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=",
"requires": {
"core-util-is": "1.0.2",
"inherits": "2.0.3",
"isarray": "0.0.1",
"string_decoder": "0.10.31"
}
},
"through2": {
"version": "0.6.5",
"resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz",
"integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=",
"requires": {
"readable-stream": "1.0.34",
"xtend": "4.0.1"
}
},
"vinyl": {
"version": "0.4.6",
"resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz",
"integrity": "sha1-LzVsh6VQolVGHza76ypbqL94SEc=",
"requires": {
"clone": "0.2.0",
"clone-stats": "0.0.1"
}
}
}
},
"vinyl-map2": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/vinyl-map2/-/vinyl-map2-1.2.1.tgz",
"integrity": "sha1-vfcPlu+ub0cBX6p/FFMBOzqViT4=",
"requires": {
"bl": "1.2.2",
"new-from": "0.0.3",
"through2": "2.0.3"
}
},
"vinyl-sourcemaps-apply": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz",
"integrity": "sha1-q2VJ1h0XLCsbh75cUI0jnI74dwU=",
"requires": {
"source-map": "0.5.7"
}
},
"when": {
"version": "3.7.8",
"resolved": "https://registry.npmjs.org/when/-/when-3.7.8.tgz",
"integrity": "sha1-xxMLan6gRpPoQs3J56Hyqjmjn4I="
},
"which": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz",
"integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==",
"requires": {
"isexe": "2.0.0"
}
},
"which-module": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz",
"integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8="
},
"wide-align": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz",
"integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==",
"requires": {
"string-width": "1.0.2"
}
},
"window-size": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz",
"integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0="
},
"wordwrap": {
"version": "0.0.2",
"resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz",
"integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8="
},
"wrap-ansi": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz",
"integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=",
"requires": {
"string-width": "1.0.2",
"strip-ansi": "3.0.1"
}
},
"wrappy": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
},
"xtend": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz",
"integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68="
},
"y18n": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz",
"integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE="
},
"yallist": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
"integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI="
},
"yargs": {
"version": "3.10.0",
"resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz",
"integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=",
"requires": {
"camelcase": "1.2.1",
"cliui": "2.1.0",
"decamelize": "1.2.0",
"window-size": "0.1.0"
}
},
"yargs-parser": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz",
"integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=",
"requires": {
"camelcase": "3.0.0"
},
"dependencies": {
"camelcase": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz",
"integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo="
}
}
}
}
}
PK ���[�T� index.phpnu �[��� <?php
// silence is goldenPK ���[�� assets/js/preview-modal.jsnu �[��� var previewModal = {
info: {},
setup: function (info) {
this.info = info;
this.open();
},
open: function () {
var self = this;
if (!self.info.images) {
return;
}
$.bs_selector_modal({
bsModal: {
destroyHtml: true,
show: true
},
noSidebar: true,
id: 'bt-thumbnil-selector',
modalClass: 'bt-modal',
itemInnerHtml: '<div class="bf-item-container">\n <figure>\n <img src="{{img}}"\n alt="{{label}}"\n class="bs-style-thumbnail" data-current-image="{{current_img}}">\n </figure>\n</div>',
content: self.info.l10n,
items: self.info.images.map(self.noCacheImage),
itemsGroupSize: 9,
events: {}
}, {
initialZIndex: 209901
});
},
noCacheImage: function (obj) {
obj.img += "?" + new Date().getTime();
return obj;
}
};PK ���[�R�ZG G assets/js/media-lib-page.jsnu �[��� var mediaLibPage = {
initialized: false,
$context: '',
$img: '',
setup: function () {
if (!wp || !wp.media) {
return;
}
var $body = $(document.body);
this.$context = $body;
if (!$body.hasClass('post-type-attachment') || !$body.hasClass('post-php')) {
return
}
this.$img = $(".wp_attachment_image img.thumbnail", this.$context);
this.editAttachmentPage();
},
editAttachmentPage: function () {
this.initFocusPoint();
this.appendPreviewButton($(".wp_attachment_image .button", this.$context));
},
initFocusPoint: function () {
focusPoint.setup({
$el: this.$img,
parentSelector: "#wpbody-content",
grid: loc.get("grid"),
defaultPosition: this.getFocusPoint()
}, {
done: $.proxy(this.saveFocusPoint, this)
}
);
},
appendPreviewButton: function ($afterEl) {
var self = this,
link = "<input type='button' class='button preview-images-btn' value='" + loc.translate('preview') + "'>";
var $link = $(link).insertAfter($afterEl);
$link.on('click', function (e) {
e.preventDefault();
self.previewModal();
});
},
previewModal: function () {
var self = this;
self.loading('start');
var ajax = previewData.get(self.attachmentId(), self.securityNonce());
ajax.done(function (res) {
if (!helper.isUndefined(res.data))
previewModal.setup(res.data);
});
ajax.always(function () {
self.loading('stop');
});
},
saveFocusPoint: function (topPercent, leftPercent) {
this.regenerateThumbnails(topPercent, leftPercent);
this.setFocusPoint(topPercent / 100, leftPercent / 100);
},
regenerateThumbnails: function (topPercent, leftPercent) {
var self = this;
var attachment_id = self.attachmentId();
self.loading('start');
var ajax = wp.ajax.post('bt-regenerate-thumbnails', {
thumbnail_id: attachment_id,
nonce: self.securityNonce(),
focus_x: topPercent,
focus_y: leftPercent,
});
ajax.done(function (res) {
if (!helper.isUndefined(res.message)) {
helper.notify($(".wp_attachment_holder", this.$context), res.message);
}
});
ajax.always(function () {
self.loading('stop');
});
},
loading: function (state) {
switch (state) {
case 'start':
UI.block($(".wp_attachment_holder", this.$context));
break;
case 'stop':
UI.unblock($(".wp_attachment_holder", this.$context));
break;
}
},
attachmentId: function () {
return $("#post_ID", this.$context).val();
},
securityNonce: function () {
return $(".bt-regenerate-nonce", this.$context).val();
},
getFocusPoint: function () {
return this.getDefaultFocusPoint();
},
setFocusPoint: function (top, left) {
$(".attachment.selected", this.$context).data("focus-point", top + "-" + left);
},
getDefaultFocusPoint: function () {
var point = $(".bt-focus-point-xy", this.$context).val();
return point && point.indexOf('-') > -1 ? point.split('-') : helper.defaultFocusPoint(this.$img.width(), this.$img.height());
}
};
mediaLibPage.setup();
PK ���[�/�9^ 9^ ( assets/js/better-smart-thumbnails.js.mapnu �[��� {"version":3,"sources":[".before-concat.txt","utils.js","preview-data.js","preview-modal.js","focus-point.js","media-modal.js","media-lib-page.js",".after-concat.txt"],"names":[],"mappings":"AAAA;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACxIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AClDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC/KA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACxPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACrKA","file":"better-smart-thumbnails.js","sourcesContent":["jQuery(document).ready(function($) {","var helper = {\n isObject: function (obj) {\n var type = typeof obj;\n return type === 'function' || type === 'object' && !!obj;\n },\n isUndefined: function (obj) {\n\n return obj === void 0;\n },\n\n notify: function ($el, message) {\n\n $el.append(\"<div class='bt-user-message success' style='display: none;'>\" + message + \"</div>\");\n\n $(\".bt-user-message\", $el).fadeIn().delay(5e3).queue(function (n) {\n\n $(this).fadeOut(function () {\n $(this).remove();\n });\n n();\n });\n },\n\n defaultFocusPoint: function (imageWidth, imageHeight) {\n\n if (loc.get('portrait_default_top') &&\n this.isImagePortrait(imageWidth, imageHeight)) {\n\n return [0.5, 0];\n }\n\n return loc.get('default_fp');\n },\n\n isImagePortrait: function (imageWidth, imageHeight) {\n\n return ( imageWidth + ( imageHeight * 0.14 ) ) < imageHeight;\n }\n};\nvar cache = {\n storage: {},\n\n add: function (name, data, group) {\n\n if (helper.isUndefined(cache[group]))\n cache[group] = {};\n\n cache[group][name] = data;\n },\n\n get: function (name, group) {\n\n if (this.exist(name, group)) {\n\n return cache[group][name];\n }\n },\n\n exist: function (name, group) {\n\n return !helper.isUndefined(cache[group]) && !helper.isUndefined(cache[group][name]);\n }\n};\n\n\nvar UI = {\n\n is_blocked: function ($element) {\n\n return !!$element.data('bc-el-blocked');\n },\n\n block: function ($element) {\n\n if (this.is_blocked($element)) {\n return;\n }\n\n $element.data('bc-el-blocked', true);\n\n $element.prepend('<div class=\"bc-block-overlay\" style=\"z-index:10;display:none;border:none;margin:0;padding:0;width:100%;height:100%;top:0;left:0;display:none;position: absolute;background:rgba(255,255,255,0.4)\"></div>');\n\n $(\".bc-block-overlay\").fadeIn();\n },\n\n\n unblock: function ($element) {\n\n if (!this.is_blocked($element)) {\n return;\n }\n\n $element.data('bc-el-blocked', false);\n\n $(\".bc-block-overlay\").fadeOut(function () {\n $(this).remove();\n });\n },\n};\n\n\nvar loc = {\n\n get: function (loc) {\n\n if (!loc) {\n return;\n }\n\n if (loc.indexOf('.') == -1) {\n\n return st_loc[loc];\n }\n\n var _v = loc.split('.');\n var current = st_loc[_v[0]];\n _v = _v.splice(1);\n\n var len = _v.length - 1;\n\n for (var i = 0; i <= len; i++) {\n\n if (typeof current[_v[i]] !== 'object' && i !== len) {\n return;\n }\n\n current = current[_v[i]];\n }\n\n return current;\n },\n\n translate: function (index) {\n\n return this.get('translate.' + index);\n }\n};","var previewData = {\n\n get: function (attachmentId, securityNonce) {\n\n return $.Deferred(function (deferred) {\n\n if (cache.exist(attachmentId, 'selector-data')) {\n\n deferred.resolveWith(this, [cache.get(attachmentId, 'selector-data')]);\n\n return;\n }\n\n var ajax = wp.ajax.post('bt-preview-thumbnails', {\n thumbnail_id: attachmentId,\n nonce: securityNonce\n });\n\n ajax.done(function (res) {\n cache.add(attachmentId, res, 'selector-data');\n deferred.resolveWith(this, [res]);\n });\n\n ajax.fail(function () {\n\n deferred.rejectWith(this);\n });\n }).promise();\n },\n};","var previewModal = {\n\n info: {},\n\n setup: function (info) {\n\n this.info = info;\n\n this.open();\n },\n\n open: function () {\n\n var self = this;\n\n if (!self.info.images) {\n return;\n }\n\n\n $.bs_selector_modal({\n bsModal: {\n destroyHtml: true,\n show: true\n },\n\n noSidebar: true,\n\n id: 'bt-thumbnil-selector',\n modalClass: 'bt-modal',\n\n itemInnerHtml: '<div class=\"bf-item-container\">\\n <figure>\\n <img src=\"{{img}}\"\\n alt=\"{{label}}\"\\n class=\"bs-style-thumbnail\" data-current-image=\"{{current_img}}\">\\n </figure>\\n</div>',\n\n content: self.info.l10n,\n items: self.info.images.map(self.noCacheImage),\n\n itemsGroupSize: 9,\n\n events: {}\n }, {\n initialZIndex: 209901\n });\n },\n\n noCacheImage: function (obj) {\n\n obj.img += \"?\" + new Date().getTime();\n\n return obj;\n }\n};","var focusPoint = {\n\n markerArea: 10,\n\n isMouseDown: false,\n $element: false,\n $container: false,\n\n options: {},\n\n events: {},\n\n setup: function (options, events) {\n\n this.events = events || {};\n this.options = options || {};\n\n if (this.prepare()) {\n\n this.bindEvents();\n\n return true;\n }\n\n return false;\n },\n\n prepare: function () {\n\n if (!this.options.$el || !this.options.$el.length) {\n return false;\n }\n\n this.$element = this.options.$el;\n this.$element.wrap(\"<div class='bt-focus-point'></div>\");\n //\n this.$container = this.$element.parent();\n this.$container.append('<div class=\"bt-focus-point-marker\"></div>');\n\n if (this.options.defaultPosition) {\n this.fixMarkerPosition(this.options.defaultPosition);\n }\n\n if (this.options.grid) {\n this.appendGrid();\n }\n\n return true;\n },\n\n handle_event: function (event) {\n var args = Array.prototype.slice.call(arguments, 1);\n\n if (typeof this.events[event] === 'function')\n return this.events[event].apply(this, args);\n },\n\n appendGrid: function () {\n\n var $grid = $(\"<div>\", {\"class\": \"grid\"}).insertAfter(this.$container.find('img'));\n\n $grid.html('<div class=\"x1\"></div>\\n<div class=\"x2\"></div>\\n\\n<div class=\"y1\"></div>\\n<div class=\"y2\"></div>');\n },\n\n fixMarkerPosition: function (pos) {\n\n var x = parseFloat(pos[0]),\n y = parseFloat(pos[1]);\n\n if (!(x >= 0 && x <= 1)) {\n return;\n }\n\n if (!(y >= 0 && y <= 1)) {\n return;\n }\n\n var $img = this.$container.find('img');\n var markerArea = this.markerArea;\n\n $(\".bt-focus-point-marker\", this.$container).css({\n top: Math.floor($img.height() * y) - markerArea,\n left: Math.floor($img.width() * x) - markerArea\n });\n },\n\n bindEvents: function () {\n\n var self = this;\n\n var markerArea = this.markerArea,\n $marker = $(\".bt-focus-point-marker\", this.$container);\n\n var $markerWrapper = (function () {\n\n var $m = self.options.parentSelector ? $(\".bt-focus-point-marker\", this.$container).closest(self.options.parentSelector) : '';\n\n if ($m && $m.length) {\n return $m;\n }\n\n return $(\".bt-focus-point-marker\", this.$container);\n\n })();\n\n $marker.mousedown(function () {\n\n self.isMouseDown = true;\n });\n\n $(\".bt-focus-point\").mousedown(function (e) {\n\n self.isMouseDown = true;\n\n $(document).trigger('mousemove.bt-focus-point', [e.pageX, e.pageY]);\n });\n\n\n $markerWrapper.mouseup(function () {\n\n if (!self.isMouseDown) {\n return;\n }\n\n self.isMouseDown = false;\n\n\n var top = parseInt($marker.css('top').replace('px', '')),\n left = parseInt($marker.css('left').replace('px', ''));\n\n var topPercent = Math.ceil((top + markerArea) / (self.$container.find('img').height() / 100)),\n leftPercent = Math.ceil((left + markerArea) / (self.$container.find('img').width() / 100));\n\n\n self.handle_event('done', Math.min(leftPercent, 100), Math.min(topPercent, 100));\n });\n\n var offset = this.$container.offset();\n\n if (!offset) {\n throw 'cannot initialize image focus point';\n }\n\n $(document).on('mousemove.bt-focus-point', function (e, pageX, pageY) {\n\n if (!self.isMouseDown) {\n return;\n }\n\n pageX = pageX || e.pageX;\n pageY = pageY || e.pageY;\n\n var x = pageX - offset.left - markerArea,\n y = pageY - offset.top - markerArea;\n\n\n var $img = self.$container.find('img'),\n box = {\n\n top: $img.height() - markerArea,\n left: $img.width() - markerArea,\n };\n\n y = Math.max(-markerArea, y);\n y = Math.min(box.top, y);\n\n x = Math.max(-markerArea, x);\n x = Math.min(box.left, x);\n\n $marker.css({\n top: Math.floor(y),\n left: Math.floor(x),\n });\n });\n }\n};","var mediaModal = {\n\n initialized: false,\n $context: '',\n\n setup: function () {\n\n if (!wp || !wp.media) {\n return;\n }\n\n var self = this;\n\n if (wp.media.featuredImage && wp.media.featuredImage.frame) {\n\n this.initFeaturedImageModal();\n }\n\n if (wp.media.frames && self.isUploadPage()) {\n\n $(document).one('click', \".media-frame-content li.attachment\", function () {\n\n setTimeout(function () {\n self.initMediaLibraryModal();\n\n self.initFocusPoint();\n self.appendPreviewButton($(\".attachment-actions .button\", self.$context));\n });\n });\n }\n },\n\n initFeaturedImageModal: function () {\n\n var self = this;\n\n var frame = wp.media.featuredImage.frame();\n frame.on('ready', function () {\n\n if (self.initialized) {\n return;\n }\n\n self.$context = this.models[0].frame.$el;\n self.initialized = true;\n\n wp.Uploader.queue.on('reset', function () { // Upload completed\n\n setTimeout(function () {\n self.initFocusPoint();\n self.appendPreviewLink();\n });\n });\n });\n\n frame.on('selection:toggle', function () { // Image selected\n\n self.initFocusPoint();\n self.appendPreviewLink();\n });\n\n frame.on('uploader:ready', function (a) { // Image selected\n\n var interval = setInterval(function () {\n\n if (self.initFocusPoint()) {\n\n self.appendPreviewLink();\n\n clearInterval(interval);\n }\n\n }, 200);\n });\n\n },\n\n initMediaLibraryModal: function () {\n\n var self = this;\n\n wp.media.frames.edit.on('refresh', function (e) {\n\n self.initFocusPoint();\n self.appendPreviewButton($(\".attachment-actions .button\", self.$context));\n });\n },\n\n initFocusPoint: function () {\n\n return focusPoint.setup({\n $el: $(\".thumbnail-image img\", this.$context),\n parentSelector: \".media-frame-content\",\n grid: loc.get(\"grid\"),\n defaultPosition: this.getFocusPoint()\n },\n {\n done: $.proxy(this.saveFocusPoint, this)\n }\n );\n },\n\n appendPreviewLink: function () {\n\n var self = this,\n link = \"<div class='preview-thumbnails'><a href='#'>\" + loc.translate('preview') + \"</a></div>\";\n\n var $link = $(link).insertAfter($(\".attachment-info .edit-attachment\", this.$context));\n\n $link.on('click', function (e) {\n e.preventDefault();\n\n self.previewModal();\n });\n },\n\n appendPreviewButton: function ($afterEl) {\n\n var self = this,\n link = \"<input type='button' class='button preview-images-btn' value='\" + loc.translate('preview') + \"'>\";\n\n var $link = $(link).insertAfter($afterEl);\n\n $link.on('click', function (e) {\n e.preventDefault();\n\n self.previewModal();\n });\n },\n\n previewModal: function () {\n\n var self = this;\n\n self.loading('start');\n\n var ajax = previewData.get(self.attachmentId(), self.securityNonce());\n\n ajax.done(function (res) {\n\n if (!helper.isUndefined(res.data))\n previewModal.setup(res.data);\n });\n\n ajax.always(function () {\n\n self.loading('stop');\n });\n\n },\n\n saveFocusPoint: function (topPercent, leftPercent) {\n\n this.regenerateThumbnails(topPercent, leftPercent);\n this.setFocusPoint(topPercent / 100, leftPercent / 100);\n },\n\n regenerateThumbnails: function (topPercent, leftPercent) {\n\n var self = this;\n\n var attachment_id = self.attachmentId();\n\n self.loading('start');\n\n var ajax = wp.ajax.post('bt-regenerate-thumbnails', {\n thumbnail_id: attachment_id,\n nonce: self.securityNonce(),\n focus_x: topPercent,\n focus_y: leftPercent,\n });\n\n ajax.done(function (res) {\n\n if (!helper.isUndefined(res.message)) {\n\n var $msgParent = self.isUploadPage() ? $(\".thumbnail-image\", self.$context) : $(\".attachment-info\", self.$context);\n\n helper.notify($msgParent, res.message);\n }\n });\n\n ajax.always(function () {\n\n self.loading('stop');\n });\n },\n\n loading: function (state) {\n\n switch (state) {\n\n case 'start':\n\n UI.block($(\".attachment-info\", this.$context));\n\n break;\n\n case 'stop':\n UI.unblock($(\".attachment-info\", this.$context));\n\n break;\n }\n },\n\n attachmentId: function () {\n\n if (this.isUploadPage()) {\n\n return $(\".attachment-details\", this.$context).data('id');\n\n } else {\n\n return $(\".attachment.selected\", this.$context).data('id');\n }\n },\n\n\n isUploadPage: function () {\n return $(document.body).hasClass('upload-php');\n },\n\n securityNonce: function () {\n return $(\".bt-regenerate-nonce\", this.$context).val();\n },\n\n getFocusPoint: function () {\n\n var $attachment = $(\".attachment.selected\", this.$context),\n point = $attachment.data('focus-point');\n\n return point ? point.split('-') : this.getDefaultFocusPoint();\n\n },\n setFocusPoint: function (top, left) {\n\n $(\".attachment.selected\", this.$context).data(\"focus-point\", top + \"-\" + left);\n },\n getDefaultFocusPoint: function () {\n\n var point = $(\".bt-focus-point-xy\", this.$context).val(),\n $img = $(\".thumbnail-image img\", this.$context);\n\n return point && point.indexOf('-') > -1 ? point.split('-') : helper.defaultFocusPoint($img.width(), $img.height());\n }\n};\n\nmediaModal.setup();\n","var mediaLibPage = {\n\n initialized: false,\n $context: '',\n\n $img: '',\n\n setup: function () {\n\n if (!wp || !wp.media) {\n return;\n }\n\n var $body = $(document.body);\n\n this.$context = $body;\n\n if (!$body.hasClass('post-type-attachment') || !$body.hasClass('post-php')) {\n return\n }\n\n this.$img = $(\".wp_attachment_image img.thumbnail\", this.$context);\n\n this.editAttachmentPage();\n },\n\n editAttachmentPage: function () {\n\n this.initFocusPoint();\n\n this.appendPreviewButton($(\".wp_attachment_image .button\", this.$context));\n },\n\n initFocusPoint: function () {\n\n focusPoint.setup({\n $el: this.$img,\n parentSelector: \"#wpbody-content\",\n\n grid: loc.get(\"grid\"),\n defaultPosition: this.getFocusPoint()\n }, {\n done: $.proxy(this.saveFocusPoint, this)\n }\n );\n },\n\n\n appendPreviewButton: function ($afterEl) {\n\n var self = this,\n link = \"<input type='button' class='button preview-images-btn' value='\" + loc.translate('preview') + \"'>\";\n\n var $link = $(link).insertAfter($afterEl);\n\n $link.on('click', function (e) {\n e.preventDefault();\n\n self.previewModal();\n });\n },\n\n previewModal: function () {\n\n var self = this;\n\n self.loading('start');\n\n var ajax = previewData.get(self.attachmentId(), self.securityNonce());\n\n ajax.done(function (res) {\n\n if (!helper.isUndefined(res.data))\n previewModal.setup(res.data);\n });\n\n ajax.always(function () {\n\n self.loading('stop');\n });\n\n },\n\n saveFocusPoint: function (topPercent, leftPercent) {\n\n this.regenerateThumbnails(topPercent, leftPercent);\n this.setFocusPoint(topPercent / 100, leftPercent / 100);\n },\n\n regenerateThumbnails: function (topPercent, leftPercent) {\n\n var self = this;\n\n var attachment_id = self.attachmentId();\n\n self.loading('start');\n\n var ajax = wp.ajax.post('bt-regenerate-thumbnails', {\n thumbnail_id: attachment_id,\n nonce: self.securityNonce(),\n focus_x: topPercent,\n focus_y: leftPercent,\n });\n\n ajax.done(function (res) {\n\n if (!helper.isUndefined(res.message)) {\n\n helper.notify($(\".wp_attachment_holder\", this.$context), res.message);\n }\n });\n\n ajax.always(function () {\n\n self.loading('stop');\n });\n },\n\n loading: function (state) {\n\n switch (state) {\n\n case 'start':\n\n UI.block($(\".wp_attachment_holder\", this.$context));\n\n break;\n\n case 'stop':\n UI.unblock($(\".wp_attachment_holder\", this.$context));\n\n break;\n }\n },\n\n attachmentId: function () {\n\n return $(\"#post_ID\", this.$context).val();\n },\n\n\n securityNonce: function () {\n\n return $(\".bt-regenerate-nonce\", this.$context).val();\n },\n\n getFocusPoint: function () {\n\n return this.getDefaultFocusPoint();\n },\n\n setFocusPoint: function (top, left) {\n\n $(\".attachment.selected\", this.$context).data(\"focus-point\", top + \"-\" + left);\n },\n\n getDefaultFocusPoint: function () {\n\n var point = $(\".bt-focus-point-xy\", this.$context).val();\n\n return point && point.indexOf('-') > -1 ? point.split('-') : helper.defaultFocusPoint(this.$img.width(), this.$img.height());\n }\n};\n\nmediaLibPage.setup();\n","});"]}PK ���[�:pϷ � assets/js/media-modal.jsnu �[��� var mediaModal = {
initialized: false,
$context: '',
setup: function () {
if (!wp || !wp.media) {
return;
}
var self = this;
if (wp.media.featuredImage && wp.media.featuredImage.frame) {
this.initFeaturedImageModal();
}
if (wp.media.frames && self.isUploadPage()) {
$(document).one('click', ".media-frame-content li.attachment", function () {
setTimeout(function () {
self.initMediaLibraryModal();
self.initFocusPoint();
self.appendPreviewButton($(".attachment-actions .button", self.$context));
});
});
}
},
initFeaturedImageModal: function () {
var self = this;
var frame = wp.media.featuredImage.frame();
frame.on('ready', function () {
if (self.initialized) {
return;
}
self.$context = this.models[0].frame.$el;
self.initialized = true;
wp.Uploader.queue.on('reset', function () { // Upload completed
setTimeout(function () {
self.initFocusPoint();
self.appendPreviewLink();
});
});
});
frame.on('selection:toggle', function () { // Image selected
self.initFocusPoint();
self.appendPreviewLink();
});
frame.on('uploader:ready', function (a) { // Image selected
var interval = setInterval(function () {
if (self.initFocusPoint()) {
self.appendPreviewLink();
clearInterval(interval);
}
}, 200);
});
},
initMediaLibraryModal: function () {
var self = this;
wp.media.frames.edit.on('refresh', function (e) {
self.initFocusPoint();
self.appendPreviewButton($(".attachment-actions .button", self.$context));
});
},
initFocusPoint: function () {
return focusPoint.setup({
$el: $(".thumbnail-image img", this.$context),
parentSelector: ".media-frame-content",
grid: loc.get("grid"),
defaultPosition: this.getFocusPoint()
},
{
done: $.proxy(this.saveFocusPoint, this)
}
);
},
appendPreviewLink: function () {
var self = this,
link = "<div class='preview-thumbnails'><a href='#'>" + loc.translate('preview') + "</a></div>";
var $link = $(link).insertAfter($(".attachment-info .edit-attachment", this.$context));
$link.on('click', function (e) {
e.preventDefault();
self.previewModal();
});
},
appendPreviewButton: function ($afterEl) {
var self = this,
link = "<input type='button' class='button preview-images-btn' value='" + loc.translate('preview') + "'>";
var $link = $(link).insertAfter($afterEl);
$link.on('click', function (e) {
e.preventDefault();
self.previewModal();
});
},
previewModal: function () {
var self = this;
self.loading('start');
var ajax = previewData.get(self.attachmentId(), self.securityNonce());
ajax.done(function (res) {
if (!helper.isUndefined(res.data))
previewModal.setup(res.data);
});
ajax.always(function () {
self.loading('stop');
});
},
saveFocusPoint: function (topPercent, leftPercent) {
this.regenerateThumbnails(topPercent, leftPercent);
this.setFocusPoint(topPercent / 100, leftPercent / 100);
},
regenerateThumbnails: function (topPercent, leftPercent) {
var self = this;
var attachment_id = self.attachmentId();
self.loading('start');
var ajax = wp.ajax.post('bt-regenerate-thumbnails', {
thumbnail_id: attachment_id,
nonce: self.securityNonce(),
focus_x: topPercent,
focus_y: leftPercent,
});
ajax.done(function (res) {
if (!helper.isUndefined(res.message)) {
var $msgParent = self.isUploadPage() ? $(".thumbnail-image", self.$context) : $(".attachment-info", self.$context);
helper.notify($msgParent, res.message);
}
});
ajax.always(function () {
self.loading('stop');
});
},
loading: function (state) {
switch (state) {
case 'start':
UI.block($(".attachment-info", this.$context));
break;
case 'stop':
UI.unblock($(".attachment-info", this.$context));
break;
}
},
attachmentId: function () {
if (this.isUploadPage()) {
return $(".attachment-details", this.$context).data('id');
} else {
return $(".attachment.selected", this.$context).data('id');
}
},
isUploadPage: function () {
return $(document.body).hasClass('upload-php');
},
securityNonce: function () {
return $(".bt-regenerate-nonce", this.$context).val();
},
getFocusPoint: function () {
var $attachment = $(".attachment.selected", this.$context),
point = $attachment.data('focus-point');
return point ? point.split('-') : this.getDefaultFocusPoint();
},
setFocusPoint: function (top, left) {
$(".attachment.selected", this.$context).data("focus-point", top + "-" + left);
},
getDefaultFocusPoint: function () {
var point = $(".bt-focus-point-xy", this.$context).val(),
$img = $(".thumbnail-image img", this.$context);
return point && point.indexOf('-') > -1 ? point.split('-') : helper.defaultFocusPoint($img.width(), $img.height());
}
};
mediaModal.setup();
PK ���[}��1�( �( ( assets/js/better-smart-thumbnails.min.jsnu �[��� jQuery(document).ready(function(t){var e={isObject:function(t){var e=typeof t;return"function"===e||"object"===e&&!!t},isUndefined:function(t){return void 0===t},notify:function(e,n){e.append("<div class='bt-user-message success' style='display: none;'>"+n+"</div>"),t(".bt-user-message",e).fadeIn().delay(5e3).queue(function(e){t(this).fadeOut(function(){t(this).remove()}),e()})},defaultFocusPoint:function(t,e){return o.get("portrait_default_top")&&this.isImagePortrait(t,e)?[.5,0]:o.get("default_fp")},isImagePortrait:function(t,e){return t+.14*e<e}},n={storage:{},add:function(t,i,o){e.isUndefined(n[o])&&(n[o]={}),n[o][t]=i},get:function(t,e){if(this.exist(t,e))return n[e][t]},exist:function(t,i){return!e.isUndefined(n[i])&&!e.isUndefined(n[i][t])}},i={is_blocked:function(t){return!!t.data("bc-el-blocked")},block:function(e){this.is_blocked(e)||(e.data("bc-el-blocked",!0),e.prepend('<div class="bc-block-overlay" style="z-index:10;display:none;border:none;margin:0;padding:0;width:100%;height:100%;top:0;left:0;display:none;position: absolute;background:rgba(255,255,255,0.4)"></div>'),t(".bc-block-overlay").fadeIn())},unblock:function(e){this.is_blocked(e)&&(e.data("bc-el-blocked",!1),t(".bc-block-overlay").fadeOut(function(){t(this).remove()}))}},o={get:function(t){if(t){if(t.indexOf(".")==-1)return st_loc[t];var e=t.split("."),n=st_loc[e[0]];e=e.splice(1);for(var i=e.length-1,o=0;o<=i;o++){if("object"!=typeof n[e[o]]&&o!==i)return;n=n[e[o]]}return n}},translate:function(t){return this.get("translate."+t)}},a={get:function(e,i){return t.Deferred(function(t){if(n.exist(e,"selector-data"))return void t.resolveWith(this,[n.get(e,"selector-data")]);var o=wp.ajax.post("bt-preview-thumbnails",{thumbnail_id:e,nonce:i});o.done(function(i){n.add(e,i,"selector-data"),t.resolveWith(this,[i])}),o.fail(function(){t.rejectWith(this)})}).promise()}},s={info:{},setup:function(t){this.info=t,this.open()},open:function(){var e=this;e.info.images&&t.bs_selector_modal({bsModal:{destroyHtml:!0,show:!0},noSidebar:!0,id:"bt-thumbnil-selector",modalClass:"bt-modal",itemInnerHtml:'<div class="bf-item-container">\n <figure>\n <img src="{{img}}"\n alt="{{label}}"\n class="bs-style-thumbnail" data-current-image="{{current_img}}">\n </figure>\n</div>',content:e.info.l10n,items:e.info.images.map(e.noCacheImage),itemsGroupSize:9,events:{}},{initialZIndex:209901})},noCacheImage:function(t){return t.img+="?"+(new Date).getTime(),t}},c={markerArea:10,isMouseDown:!1,$element:!1,$container:!1,options:{},events:{},setup:function(t,e){return this.events=e||{},this.options=t||{},!!this.prepare()&&(this.bindEvents(),!0)},prepare:function(){return!(!this.options.$el||!this.options.$el.length)&&(this.$element=this.options.$el,this.$element.wrap("<div class='bt-focus-point'></div>"),this.$container=this.$element.parent(),this.$container.append('<div class="bt-focus-point-marker"></div>'),this.options.defaultPosition&&this.fixMarkerPosition(this.options.defaultPosition),this.options.grid&&this.appendGrid(),!0)},handle_event:function(t){var e=Array.prototype.slice.call(arguments,1);if("function"==typeof this.events[t])return this.events[t].apply(this,e)},appendGrid:function(){var e=t("<div>",{"class":"grid"}).insertAfter(this.$container.find("img"));e.html('<div class="x1"></div>\n<div class="x2"></div>\n\n<div class="y1"></div>\n<div class="y2"></div>')},fixMarkerPosition:function(e){var n=parseFloat(e[0]),i=parseFloat(e[1]);if(n>=0&&n<=1&&i>=0&&i<=1){var o=this.$container.find("img"),a=this.markerArea;t(".bt-focus-point-marker",this.$container).css({top:Math.floor(o.height()*i)-a,left:Math.floor(o.width()*n)-a})}},bindEvents:function(){var e=this,n=this.markerArea,i=t(".bt-focus-point-marker",this.$container),o=function(){var n=e.options.parentSelector?t(".bt-focus-point-marker",this.$container).closest(e.options.parentSelector):"";return n&&n.length?n:t(".bt-focus-point-marker",this.$container)}();i.mousedown(function(){e.isMouseDown=!0}),t(".bt-focus-point").mousedown(function(n){e.isMouseDown=!0,t(document).trigger("mousemove.bt-focus-point",[n.pageX,n.pageY])}),o.mouseup(function(){if(e.isMouseDown){e.isMouseDown=!1;var t=parseInt(i.css("top").replace("px","")),o=parseInt(i.css("left").replace("px","")),a=Math.ceil((t+n)/(e.$container.find("img").height()/100)),s=Math.ceil((o+n)/(e.$container.find("img").width()/100));e.handle_event("done",Math.min(s,100),Math.min(a,100))}});var a=this.$container.offset();if(!a)throw"cannot initialize image focus point";t(document).on("mousemove.bt-focus-point",function(t,o,s){if(e.isMouseDown){o=o||t.pageX,s=s||t.pageY;var c=o-a.left-n,r=s-a.top-n,u=e.$container.find("img"),d={top:u.height()-n,left:u.width()-n};r=Math.max(-n,r),r=Math.min(d.top,r),c=Math.max(-n,c),c=Math.min(d.left,c),i.css({top:Math.floor(r),left:Math.floor(c)})}})}},r={initialized:!1,$context:"",setup:function(){if(wp&&wp.media){var e=this;wp.media.featuredImage&&wp.media.featuredImage.frame&&this.initFeaturedImageModal(),wp.media.frames&&e.isUploadPage()&&t(document).one("click",".media-frame-content li.attachment",function(){setTimeout(function(){e.initMediaLibraryModal(),e.initFocusPoint(),e.appendPreviewButton(t(".attachment-actions .button",e.$context))})})}},initFeaturedImageModal:function(){var t=this,e=wp.media.featuredImage.frame();e.on("ready",function(){t.initialized||(t.$context=this.models[0].frame.$el,t.initialized=!0,wp.Uploader.queue.on("reset",function(){setTimeout(function(){t.initFocusPoint(),t.appendPreviewLink()})}))}),e.on("selection:toggle",function(){t.initFocusPoint(),t.appendPreviewLink()}),e.on("uploader:ready",function(e){var n=setInterval(function(){t.initFocusPoint()&&(t.appendPreviewLink(),clearInterval(n))},200)})},initMediaLibraryModal:function(){var e=this;wp.media.frames.edit.on("refresh",function(n){e.initFocusPoint(),e.appendPreviewButton(t(".attachment-actions .button",e.$context))})},initFocusPoint:function(){return c.setup({$el:t(".thumbnail-image img",this.$context),parentSelector:".media-frame-content",grid:o.get("grid"),defaultPosition:this.getFocusPoint()},{done:t.proxy(this.saveFocusPoint,this)})},appendPreviewLink:function(){var e=this,n="<div class='preview-thumbnails'><a href='#'>"+o.translate("preview")+"</a></div>",i=t(n).insertAfter(t(".attachment-info .edit-attachment",this.$context));i.on("click",function(t){t.preventDefault(),e.previewModal()})},appendPreviewButton:function(e){var n=this,i="<input type='button' class='button preview-images-btn' value='"+o.translate("preview")+"'>",a=t(i).insertAfter(e);a.on("click",function(t){t.preventDefault(),n.previewModal()})},previewModal:function(){var t=this;t.loading("start");var n=a.get(t.attachmentId(),t.securityNonce());n.done(function(t){e.isUndefined(t.data)||s.setup(t.data)}),n.always(function(){t.loading("stop")})},saveFocusPoint:function(t,e){this.regenerateThumbnails(t,e),this.setFocusPoint(t/100,e/100)},regenerateThumbnails:function(n,i){var o=this,a=o.attachmentId();o.loading("start");var s=wp.ajax.post("bt-regenerate-thumbnails",{thumbnail_id:a,nonce:o.securityNonce(),focus_x:n,focus_y:i});s.done(function(n){if(!e.isUndefined(n.message)){var i=o.isUploadPage()?t(".thumbnail-image",o.$context):t(".attachment-info",o.$context);e.notify(i,n.message)}}),s.always(function(){o.loading("stop")})},loading:function(e){switch(e){case"start":i.block(t(".attachment-info",this.$context));break;case"stop":i.unblock(t(".attachment-info",this.$context))}},attachmentId:function(){return this.isUploadPage()?t(".attachment-details",this.$context).data("id"):t(".attachment.selected",this.$context).data("id")},isUploadPage:function(){return t(document.body).hasClass("upload-php")},securityNonce:function(){return t(".bt-regenerate-nonce",this.$context).val()},getFocusPoint:function(){var e=t(".attachment.selected",this.$context),n=e.data("focus-point");return n?n.split("-"):this.getDefaultFocusPoint()},setFocusPoint:function(e,n){t(".attachment.selected",this.$context).data("focus-point",e+"-"+n)},getDefaultFocusPoint:function(){var n=t(".bt-focus-point-xy",this.$context).val(),i=t(".thumbnail-image img",this.$context);return n&&n.indexOf("-")>-1?n.split("-"):e.defaultFocusPoint(i.width(),i.height())}};r.setup();var u={initialized:!1,$context:"",$img:"",setup:function(){if(wp&&wp.media){var e=t(document.body);this.$context=e,e.hasClass("post-type-attachment")&&e.hasClass("post-php")&&(this.$img=t(".wp_attachment_image img.thumbnail",this.$context),this.editAttachmentPage())}},editAttachmentPage:function(){this.initFocusPoint(),this.appendPreviewButton(t(".wp_attachment_image .button",this.$context))},initFocusPoint:function(){c.setup({$el:this.$img,parentSelector:"#wpbody-content",grid:o.get("grid"),defaultPosition:this.getFocusPoint()},{done:t.proxy(this.saveFocusPoint,this)})},appendPreviewButton:function(e){var n=this,i="<input type='button' class='button preview-images-btn' value='"+o.translate("preview")+"'>",a=t(i).insertAfter(e);a.on("click",function(t){t.preventDefault(),n.previewModal()})},previewModal:function(){var t=this;t.loading("start");var n=a.get(t.attachmentId(),t.securityNonce());n.done(function(t){e.isUndefined(t.data)||s.setup(t.data)}),n.always(function(){t.loading("stop")})},saveFocusPoint:function(t,e){this.regenerateThumbnails(t,e),this.setFocusPoint(t/100,e/100)},regenerateThumbnails:function(n,i){var o=this,a=o.attachmentId();o.loading("start");var s=wp.ajax.post("bt-regenerate-thumbnails",{thumbnail_id:a,nonce:o.securityNonce(),focus_x:n,focus_y:i});s.done(function(n){e.isUndefined(n.message)||e.notify(t(".wp_attachment_holder",this.$context),n.message)}),s.always(function(){o.loading("stop")})},loading:function(e){switch(e){case"start":i.block(t(".wp_attachment_holder",this.$context));break;case"stop":i.unblock(t(".wp_attachment_holder",this.$context))}},attachmentId:function(){return t("#post_ID",this.$context).val()},securityNonce:function(){return t(".bt-regenerate-nonce",this.$context).val()},getFocusPoint:function(){return this.getDefaultFocusPoint()},setFocusPoint:function(e,n){t(".attachment.selected",this.$context).data("focus-point",e+"-"+n)},getDefaultFocusPoint:function(){var n=t(".bt-focus-point-xy",this.$context).val();return n&&n.indexOf("-")>-1?n.split("-"):e.defaultFocusPoint(this.$img.width(),this.$img.height())}};u.setup()});
//# sourceMappingURL=better-smart-thumbnails.min.js.map
PK ���[���a�x �x , assets/js/better-smart-thumbnails.min.js.mapnu �[��� {"version":3,"sources":[".before-concat.txt","utils.js","preview-data.js","preview-modal.js","focus-point.js","media-modal.js","media-lib-page.js"],"names":["jQuery","document","ready","$","helper","isObject","obj","type","isUndefined","notify","$el","message","append","fadeIn","delay","queue","n","this","fadeOut","remove","defaultFocusPoint","imageWidth","imageHeight","loc","get","isImagePortrait","cache","storage","add","name","data","group","exist","UI","is_blocked","$element","block","prepend","unblock","indexOf","st_loc","_v","split","current","splice","len","length","i","translate","index","previewData","attachmentId","securityNonce","Deferred","deferred","resolveWith","ajax","wp","post","thumbnail_id","nonce","done","res","fail","rejectWith","promise","previewModal","info","setup","open","self","images","bs_selector_modal","bsModal","destroyHtml","show","noSidebar","id","modalClass","itemInnerHtml","content","l10n","items","map","noCacheImage","itemsGroupSize","events","initialZIndex","img","Date","getTime","focusPoint","markerArea","isMouseDown","$container","options","prepare","bindEvents","wrap","parent","defaultPosition","fixMarkerPosition","grid","appendGrid","handle_event","event","args","Array","prototype","slice","call","arguments","apply","$grid","class","insertAfter","find","html","pos","x","parseFloat","y","$img","css","top","Math","floor","height","left","width","$marker","$markerWrapper","$m","parentSelector","closest","mousedown","e","trigger","pageX","pageY","mouseup","parseInt","replace","topPercent","ceil","leftPercent","min","offset","on","box","max","mediaModal","initialized","$context","media","featuredImage","frame","initFeaturedImageModal","frames","isUploadPage","one","setTimeout","initMediaLibraryModal","initFocusPoint","appendPreviewButton","models","Uploader","appendPreviewLink","a","interval","setInterval","clearInterval","edit","getFocusPoint","proxy","saveFocusPoint","link","$link","preventDefault","$afterEl","loading","always","regenerateThumbnails","setFocusPoint","attachment_id","focus_x","focus_y","$msgParent","state","body","hasClass","val","$attachment","point","getDefaultFocusPoint","mediaLibPage","$body","editAttachmentPage"],"mappings":"AAAAA,OAAAC,UAAAC,MAAA,SAAAC,GCAA,GAAAC,IACAC,SAAA,SAAAC,GACA,GAAAC,SAAAD,EACA,OAAA,aAAAC,GAAA,WAAAA,KAAAD,GAEAE,YAAA,SAAAF,GAEA,MAAA,UAAAA,GAGAG,OAAA,SAAAC,EAAAC,GAEAD,EAAAE,OAAA,+DAAAD,EAAA,UAEAR,EAAA,mBAAAO,GAAAG,SAAAC,MAAA,KAAAC,MAAA,SAAAC,GAEAb,EAAAc,MAAAC,QAAA,WACAf,EAAAc,MAAAE,WAEAH,OAIAI,kBAAA,SAAAC,EAAAC,GAEA,MAAAC,GAAAC,IAAA,yBACAP,KAAAQ,gBAAAJ,EAAAC,IAEA,GAAA,GAGAC,EAAAC,IAAA,eAGAC,gBAAA,SAAAJ,EAAAC,GAEA,MAAAD,GAAA,IAAAC,EAAAA,IAGAI,GACAC,WAEAC,IAAA,SAAAC,EAAAC,EAAAC,GAEA3B,EAAAI,YAAAkB,EAAAK,MACAL,EAAAK,OAEAL,EAAAK,GAAAF,GAAAC,GAGAN,IAAA,SAAAK,EAAAE,GAEA,GAAAd,KAAAe,MAAAH,EAAAE,GAEA,MAAAL,GAAAK,GAAAF,IAIAG,MAAA,SAAAH,EAAAE,GAEA,OAAA3B,EAAAI,YAAAkB,EAAAK,MAAA3B,EAAAI,YAAAkB,EAAAK,GAAAF,MAKAI,GAEAC,WAAA,SAAAC,GAEA,QAAAA,EAAAL,KAAA,kBAGAM,MAAA,SAAAD,GAEAlB,KAAAiB,WAAAC,KAIAA,EAAAL,KAAA,iBAAA,GAEAK,EAAAE,QAAA,4MAEAlC,EAAA,qBAAAU,WAIAyB,QAAA,SAAAH,GAEAlB,KAAAiB,WAAAC,KAIAA,EAAAL,KAAA,iBAAA,GAEA3B,EAAA,qBAAAe,QAAA,WACAf,EAAAc,MAAAE,cAMAI,GAEAC,IAAA,SAAAD,GAEA,GAAAA,EAAA,CAIA,GAAAA,EAAAgB,QAAA,SAEA,MAAAC,QAAAjB,EAGA,IAAAkB,GAAAlB,EAAAmB,MAAA,KACAC,EAAAH,OAAAC,EAAA,GACAA,GAAAA,EAAAG,OAAA,EAIA,KAAA,GAFAC,GAAAJ,EAAAK,OAAA,EAEAC,EAAA,EAAAA,GAAAF,EAAAE,IAAA,CAEA,GAAA,gBAAAJ,GAAAF,EAAAM,KAAAA,IAAAF,EACA,MAGAF,GAAAA,EAAAF,EAAAM,IAGA,MAAAJ,KAGAK,UAAA,SAAAC,GAEA,MAAAhC,MAAAO,IAAA,aAAAyB,KCtIAC,GAEA1B,IAAA,SAAA2B,EAAAC,GAEA,MAAAjD,GAAAkD,SAAA,SAAAC,GAEA,GAAA5B,EAAAM,MAAAmB,EAAA,iBAIA,WAFAG,GAAAC,YAAAtC,MAAAS,EAAAF,IAAA2B,EAAA,kBAKA,IAAAK,GAAAC,GAAAD,KAAAE,KAAA,yBACAC,aAAAR,EACAS,MAAAR,GAGAI,GAAAK,KAAA,SAAAC,GACApC,EAAAE,IAAAuB,EAAAW,EAAA,iBACAR,EAAAC,YAAAtC,MAAA6C,MAGAN,EAAAO,KAAA,WAEAT,EAAAU,WAAA/C,UAEAgD,YC3BAC,GAEAC,QAEAC,MAAA,SAAAD,GAEAlD,KAAAkD,KAAAA,EAEAlD,KAAAoD,QAGAA,KAAA,WAEA,GAAAC,GAAArD,IAEAqD,GAAAH,KAAAI,QAKApE,EAAAqE,mBACAC,SACAC,aAAA,EACAC,MAAA,GAGAC,WAAA,EAEAC,GAAA,uBACAC,WAAA,WAEAC,cAAA,gNAEAC,QAAAV,EAAAH,KAAAc,KACAC,MAAAZ,EAAAH,KAAAI,OAAAY,IAAAb,EAAAc,cAEAC,eAAA,EAEAC,YAEAC,cAAA,UAIAH,aAAA,SAAA9E,GAIA,MAFAA,GAAAkF,KAAA,KAAA,GAAAC,OAAAC,UAEApF,IChDAqF,GAEAC,WAAA,GAEAC,aAAA,EACA1D,UAAA,EACA2D,YAAA,EAEAC,WAEAT,UAEAlB,MAAA,SAAA2B,EAAAT,GAKA,MAHArE,MAAAqE,OAAAA,MACArE,KAAA8E,QAAAA,QAEA9E,KAAA+E,YAEA/E,KAAAgF,cAEA,IAMAD,QAAA,WAEA,SAAA/E,KAAA8E,QAAArF,MAAAO,KAAA8E,QAAArF,IAAAoC,UAIA7B,KAAAkB,SAAAlB,KAAA8E,QAAArF,IACAO,KAAAkB,SAAA+D,KAAA,sCAEAjF,KAAA6E,WAAA7E,KAAAkB,SAAAgE,SACAlF,KAAA6E,WAAAlF,OAAA,6CAEAK,KAAA8E,QAAAK,iBACAnF,KAAAoF,kBAAApF,KAAA8E,QAAAK,iBAGAnF,KAAA8E,QAAAO,MACArF,KAAAsF,cAGA,IAGAC,aAAA,SAAAC,GACA,GAAAC,GAAAC,MAAAC,UAAAC,MAAAC,KAAAC,UAAA,EAEA,IAAA,kBAAA9F,MAAAqE,OAAAmB,GACA,MAAAxF,MAAAqE,OAAAmB,GAAAO,MAAA/F,KAAAyF,IAGAH,WAAA,WAEA,GAAAU,GAAA9G,EAAA,SAAA+G,QAAA,SAAAC,YAAAlG,KAAA6E,WAAAsB,KAAA,OAEAH,GAAAI,KAAA,qGAGAhB,kBAAA,SAAAiB,GAEA,GAAAC,GAAAC,WAAAF,EAAA,IACAG,EAAAD,WAAAF,EAAA,GAEA,IAAAC,GAAA,GAAAA,GAAA,GAIAE,GAAA,GAAAA,GAAA,EAAA,CAIA,GAAAC,GAAAzG,KAAA6E,WAAAsB,KAAA,OACAxB,EAAA3E,KAAA2E,UAEAzF,GAAA,yBAAAc,KAAA6E,YAAA6B,KACAC,IAAAC,KAAAC,MAAAJ,EAAAK,SAAAN,GAAA7B,EACAoC,KAAAH,KAAAC,MAAAJ,EAAAO,QAAAV,GAAA3B,MAIAK,WAAA,WAEA,GAAA3B,GAAArD,KAEA2E,EAAA3E,KAAA2E,WACAsC,EAAA/H,EAAA,yBAAAc,KAAA6E,YAEAqC,EAAA,WAEA,GAAAC,GAAA9D,EAAAyB,QAAAsC,eAAAlI,EAAA,yBAAAc,KAAA6E,YAAAwC,QAAAhE,EAAAyB,QAAAsC,gBAAA,EAEA,OAAAD,IAAAA,EAAAtF,OACAsF,EAGAjI,EAAA,yBAAAc,KAAA6E,cAIAoC,GAAAK,UAAA,WAEAjE,EAAAuB,aAAA,IAGA1F,EAAA,mBAAAoI,UAAA,SAAAC,GAEAlE,EAAAuB,aAAA,EAEA1F,EAAAF,UAAAwI,QAAA,4BAAAD,EAAAE,MAAAF,EAAAG,UAIAR,EAAAS,QAAA,WAEA,GAAAtE,EAAAuB,YAAA,CAIAvB,EAAAuB,aAAA,CAGA,IAAA+B,GAAAiB,SAAAX,EAAAP,IAAA,OAAAmB,QAAA,KAAA,KACAd,EAAAa,SAAAX,EAAAP,IAAA,QAAAmB,QAAA,KAAA,KAEAC,EAAAlB,KAAAmB,MAAApB,EAAAhC,IAAAtB,EAAAwB,WAAAsB,KAAA,OAAAW,SAAA,MACAkB,EAAApB,KAAAmB,MAAAhB,EAAApC,IAAAtB,EAAAwB,WAAAsB,KAAA,OAAAa,QAAA,KAGA3D,GAAAkC,aAAA,OAAAqB,KAAAqB,IAAAD,EAAA,KAAApB,KAAAqB,IAAAH,EAAA,QAGA,IAAAI,GAAAlI,KAAA6E,WAAAqD,QAEA,KAAAA,EACA,KAAA,qCAGAhJ,GAAAF,UAAAmJ,GAAA,2BAAA,SAAAZ,EAAAE,EAAAC,GAEA,GAAArE,EAAAuB,YAAA,CAIA6C,EAAAA,GAAAF,EAAAE,MACAC,EAAAA,GAAAH,EAAAG,KAEA,IAAApB,GAAAmB,EAAAS,EAAAnB,KAAApC,EACA6B,EAAAkB,EAAAQ,EAAAvB,IAAAhC,EAGA8B,EAAApD,EAAAwB,WAAAsB,KAAA,OACAiC,GAEAzB,IAAAF,EAAAK,SAAAnC,EACAoC,KAAAN,EAAAO,QAAArC,EAGA6B,GAAAI,KAAAyB,KAAA1D,EAAA6B,GACAA,EAAAI,KAAAqB,IAAAG,EAAAzB,IAAAH,GAEAF,EAAAM,KAAAyB,KAAA1D,EAAA2B,GACAA,EAAAM,KAAAqB,IAAAG,EAAArB,KAAAT,GAEAW,EAAAP,KACAC,IAAAC,KAAAC,MAAAL,GACAO,KAAAH,KAAAC,MAAAP,UC3KAgC,GAEAC,aAAA,EACAC,SAAA,GAEArF,MAAA,WAEA,GAAAX,IAAAA,GAAAiG,MAAA,CAIA,GAAApF,GAAArD,IAEAwC,IAAAiG,MAAAC,eAAAlG,GAAAiG,MAAAC,cAAAC,OAEA3I,KAAA4I,yBAGApG,GAAAiG,MAAAI,QAAAxF,EAAAyF,gBAEA5J,EAAAF,UAAA+J,IAAA,QAAA,qCAAA,WAEAC,WAAA,WACA3F,EAAA4F,wBAEA5F,EAAA6F,iBACA7F,EAAA8F,oBAAAjK,EAAA,8BAAAmE,EAAAmF,iBAMAI,uBAAA,WAEA,GAAAvF,GAAArD,KAEA2I,EAAAnG,GAAAiG,MAAAC,cAAAC,OACAA,GAAAR,GAAA,QAAA,WAEA9E,EAAAkF,cAIAlF,EAAAmF,SAAAxI,KAAAoJ,OAAA,GAAAT,MAAAlJ,IACA4D,EAAAkF,aAAA,EAEA/F,GAAA6G,SAAAvJ,MAAAqI,GAAA,QAAA,WAEAa,WAAA,WACA3F,EAAA6F,iBACA7F,EAAAiG,2BAKAX,EAAAR,GAAA,mBAAA,WAEA9E,EAAA6F,iBACA7F,EAAAiG,sBAGAX,EAAAR,GAAA,iBAAA,SAAAoB,GAEA,GAAAC,GAAAC,YAAA,WAEApG,EAAA6F,mBAEA7F,EAAAiG,oBAEAI,cAAAF,KAGA,QAKAP,sBAAA,WAEA,GAAA5F,GAAArD,IAEAwC,IAAAiG,MAAAI,OAAAc,KAAAxB,GAAA,UAAA,SAAAZ,GAEAlE,EAAA6F,iBACA7F,EAAA8F,oBAAAjK,EAAA,8BAAAmE,EAAAmF,cAIAU,eAAA,WAEA,MAAAxE,GAAAvB,OACA1D,IAAAP,EAAA,uBAAAc,KAAAwI,UACApB,eAAA,uBACA/B,KAAA/E,EAAAC,IAAA,QACA4E,gBAAAnF,KAAA4J,kBAGAhH,KAAA1D,EAAA2K,MAAA7J,KAAA8J,eAAA9J,SAKAsJ,kBAAA,WAEA,GAAAjG,GAAArD,KACA+J,EAAA,+CAAAzJ,EAAAyB,UAAA,WAAA,aAEAiI,EAAA9K,EAAA6K,GAAA7D,YAAAhH,EAAA,oCAAAc,KAAAwI,UAEAwB,GAAA7B,GAAA,QAAA,SAAAZ,GACAA,EAAA0C,iBAEA5G,EAAAJ,kBAIAkG,oBAAA,SAAAe,GAEA,GAAA7G,GAAArD,KACA+J,EAAA,iEAAAzJ,EAAAyB,UAAA,WAAA,KAEAiI,EAAA9K,EAAA6K,GAAA7D,YAAAgE,EAEAF,GAAA7B,GAAA,QAAA,SAAAZ,GACAA,EAAA0C,iBAEA5G,EAAAJ,kBAIAA,aAAA,WAEA,GAAAI,GAAArD,IAEAqD,GAAA8G,QAAA,QAEA,IAAA5H,GAAAN,EAAA1B,IAAA8C,EAAAnB,eAAAmB,EAAAlB,gBAEAI,GAAAK,KAAA,SAAAC,GAEA1D,EAAAI,YAAAsD,EAAAhC,OACAoC,EAAAE,MAAAN,EAAAhC,QAGA0B,EAAA6H,OAAA,WAEA/G,EAAA8G,QAAA,WAKAL,eAAA,SAAAhC,EAAAE,GAEAhI,KAAAqK,qBAAAvC,EAAAE,GACAhI,KAAAsK,cAAAxC,EAAA,IAAAE,EAAA,MAGAqC,qBAAA,SAAAvC,EAAAE,GAEA,GAAA3E,GAAArD,KAEAuK,EAAAlH,EAAAnB,cAEAmB,GAAA8G,QAAA,QAEA,IAAA5H,GAAAC,GAAAD,KAAAE,KAAA,4BACAC,aAAA6H,EACA5H,MAAAU,EAAAlB,gBACAqI,QAAA1C,EACA2C,QAAAzC,GAGAzF,GAAAK,KAAA,SAAAC,GAEA,IAAA1D,EAAAI,YAAAsD,EAAAnD,SAAA,CAEA,GAAAgL,GAAArH,EAAAyF,eAAA5J,EAAA,mBAAAmE,EAAAmF,UAAAtJ,EAAA,mBAAAmE,EAAAmF,SAEArJ,GAAAK,OAAAkL,EAAA7H,EAAAnD,YAIA6C,EAAA6H,OAAA,WAEA/G,EAAA8G,QAAA,WAIAA,QAAA,SAAAQ,GAEA,OAAAA,GAEA,IAAA,QAEA3J,EAAAG,MAAAjC,EAAA,mBAAAc,KAAAwI,UAEA,MAEA,KAAA,OACAxH,EAAAK,QAAAnC,EAAA,mBAAAc,KAAAwI,aAMAtG,aAAA,WAEA,MAAAlC,MAAA8I,eAEA5J,EAAA,sBAAAc,KAAAwI,UAAA3H,KAAA,MAIA3B,EAAA,uBAAAc,KAAAwI,UAAA3H,KAAA,OAKAiI,aAAA,WACA,MAAA5J,GAAAF,SAAA4L,MAAAC,SAAA,eAGA1I,cAAA,WACA,MAAAjD,GAAA,uBAAAc,KAAAwI,UAAAsC,OAGAlB,cAAA,WAEA,GAAAmB,GAAA7L,EAAA,uBAAAc,KAAAwI,UACAwC,EAAAD,EAAAlK,KAAA,cAEA,OAAAmK,GAAAA,EAAAvJ,MAAA,KAAAzB,KAAAiL,wBAGAX,cAAA,SAAA3D,EAAAI,GAEA7H,EAAA,uBAAAc,KAAAwI,UAAA3H,KAAA,cAAA8F,EAAA,IAAAI,IAEAkE,qBAAA,WAEA,GAAAD,GAAA9L,EAAA,qBAAAc,KAAAwI,UAAAsC,MACArE,EAAAvH,EAAA,uBAAAc,KAAAwI,SAEA,OAAAwC,IAAAA,EAAA1J,QAAA,QAAA0J,EAAAvJ,MAAA,KAAAtC,EAAAgB,kBAAAsG,EAAAO,QAAAP,EAAAK,WAIAwB,GAAAnF,OCvPA,IAAA+H,IAEA3C,aAAA,EACAC,SAAA,GAEA/B,KAAA,GAEAtD,MAAA,WAEA,GAAAX,IAAAA,GAAAiG,MAAA,CAIA,GAAA0C,GAAAjM,EAAAF,SAAA4L,KAEA5K,MAAAwI,SAAA2C,EAEAA,EAAAN,SAAA,yBAAAM,EAAAN,SAAA,cAIA7K,KAAAyG,KAAAvH,EAAA,qCAAAc,KAAAwI,UAEAxI,KAAAoL,wBAGAA,mBAAA,WAEApL,KAAAkJ,iBAEAlJ,KAAAmJ,oBAAAjK,EAAA,+BAAAc,KAAAwI,YAGAU,eAAA,WAEAxE,EAAAvB,OACA1D,IAAAO,KAAAyG,KACAW,eAAA,kBAEA/B,KAAA/E,EAAAC,IAAA,QACA4E,gBAAAnF,KAAA4J,kBAEAhH,KAAA1D,EAAA2K,MAAA7J,KAAA8J,eAAA9J,SAMAmJ,oBAAA,SAAAe,GAEA,GAAA7G,GAAArD,KACA+J,EAAA,iEAAAzJ,EAAAyB,UAAA,WAAA,KAEAiI,EAAA9K,EAAA6K,GAAA7D,YAAAgE,EAEAF,GAAA7B,GAAA,QAAA,SAAAZ,GACAA,EAAA0C,iBAEA5G,EAAAJ,kBAIAA,aAAA,WAEA,GAAAI,GAAArD,IAEAqD,GAAA8G,QAAA,QAEA,IAAA5H,GAAAN,EAAA1B,IAAA8C,EAAAnB,eAAAmB,EAAAlB,gBAEAI,GAAAK,KAAA,SAAAC,GAEA1D,EAAAI,YAAAsD,EAAAhC,OACAoC,EAAAE,MAAAN,EAAAhC,QAGA0B,EAAA6H,OAAA,WAEA/G,EAAA8G,QAAA,WAKAL,eAAA,SAAAhC,EAAAE,GAEAhI,KAAAqK,qBAAAvC,EAAAE,GACAhI,KAAAsK,cAAAxC,EAAA,IAAAE,EAAA,MAGAqC,qBAAA,SAAAvC,EAAAE,GAEA,GAAA3E,GAAArD,KAEAuK,EAAAlH,EAAAnB,cAEAmB,GAAA8G,QAAA,QAEA,IAAA5H,GAAAC,GAAAD,KAAAE,KAAA,4BACAC,aAAA6H,EACA5H,MAAAU,EAAAlB,gBACAqI,QAAA1C,EACA2C,QAAAzC,GAGAzF,GAAAK,KAAA,SAAAC,GAEA1D,EAAAI,YAAAsD,EAAAnD,UAEAP,EAAAK,OAAAN,EAAA,wBAAAc,KAAAwI,UAAA3F,EAAAnD,WAIA6C,EAAA6H,OAAA,WAEA/G,EAAA8G,QAAA,WAIAA,QAAA,SAAAQ,GAEA,OAAAA,GAEA,IAAA,QAEA3J,EAAAG,MAAAjC,EAAA,wBAAAc,KAAAwI,UAEA,MAEA,KAAA,OACAxH,EAAAK,QAAAnC,EAAA,wBAAAc,KAAAwI,aAMAtG,aAAA,WAEA,MAAAhD,GAAA,WAAAc,KAAAwI,UAAAsC,OAIA3I,cAAA,WAEA,MAAAjD,GAAA,uBAAAc,KAAAwI,UAAAsC,OAGAlB,cAAA,WAEA,MAAA5J,MAAAiL,wBAGAX,cAAA,SAAA3D,EAAAI,GAEA7H,EAAA,uBAAAc,KAAAwI,UAAA3H,KAAA,cAAA8F,EAAA,IAAAI,IAGAkE,qBAAA,WAEA,GAAAD,GAAA9L,EAAA,qBAAAc,KAAAwI,UAAAsC,KAEA,OAAAE,IAAAA,EAAA1J,QAAA,QAAA0J,EAAAvJ,MAAA,KAAAtC,EAAAgB,kBAAAH,KAAAyG,KAAAO,QAAAhH,KAAAyG,KAAAK,WAIAoE,GAAA/H","file":"better-smart-thumbnails.min.js","sourcesContent":["jQuery(document).ready(function($) {","var helper = {\n isObject: function (obj) {\n var type = typeof obj;\n return type === 'function' || type === 'object' && !!obj;\n },\n isUndefined: function (obj) {\n\n return obj === void 0;\n },\n\n notify: function ($el, message) {\n\n $el.append(\"<div class='bt-user-message success' style='display: none;'>\" + message + \"</div>\");\n\n $(\".bt-user-message\", $el).fadeIn().delay(5e3).queue(function (n) {\n\n $(this).fadeOut(function () {\n $(this).remove();\n });\n n();\n });\n },\n\n defaultFocusPoint: function (imageWidth, imageHeight) {\n\n if (loc.get('portrait_default_top') &&\n this.isImagePortrait(imageWidth, imageHeight)) {\n\n return [0.5, 0];\n }\n\n return loc.get('default_fp');\n },\n\n isImagePortrait: function (imageWidth, imageHeight) {\n\n return ( imageWidth + ( imageHeight * 0.14 ) ) < imageHeight;\n }\n};\nvar cache = {\n storage: {},\n\n add: function (name, data, group) {\n\n if (helper.isUndefined(cache[group]))\n cache[group] = {};\n\n cache[group][name] = data;\n },\n\n get: function (name, group) {\n\n if (this.exist(name, group)) {\n\n return cache[group][name];\n }\n },\n\n exist: function (name, group) {\n\n return !helper.isUndefined(cache[group]) && !helper.isUndefined(cache[group][name]);\n }\n};\n\n\nvar UI = {\n\n is_blocked: function ($element) {\n\n return !!$element.data('bc-el-blocked');\n },\n\n block: function ($element) {\n\n if (this.is_blocked($element)) {\n return;\n }\n\n $element.data('bc-el-blocked', true);\n\n $element.prepend('<div class=\"bc-block-overlay\" style=\"z-index:10;display:none;border:none;margin:0;padding:0;width:100%;height:100%;top:0;left:0;display:none;position: absolute;background:rgba(255,255,255,0.4)\"></div>');\n\n $(\".bc-block-overlay\").fadeIn();\n },\n\n\n unblock: function ($element) {\n\n if (!this.is_blocked($element)) {\n return;\n }\n\n $element.data('bc-el-blocked', false);\n\n $(\".bc-block-overlay\").fadeOut(function () {\n $(this).remove();\n });\n },\n};\n\n\nvar loc = {\n\n get: function (loc) {\n\n if (!loc) {\n return;\n }\n\n if (loc.indexOf('.') == -1) {\n\n return st_loc[loc];\n }\n\n var _v = loc.split('.');\n var current = st_loc[_v[0]];\n _v = _v.splice(1);\n\n var len = _v.length - 1;\n\n for (var i = 0; i <= len; i++) {\n\n if (typeof current[_v[i]] !== 'object' && i !== len) {\n return;\n }\n\n current = current[_v[i]];\n }\n\n return current;\n },\n\n translate: function (index) {\n\n return this.get('translate.' + index);\n }\n};","var previewData = {\n\n get: function (attachmentId, securityNonce) {\n\n return $.Deferred(function (deferred) {\n\n if (cache.exist(attachmentId, 'selector-data')) {\n\n deferred.resolveWith(this, [cache.get(attachmentId, 'selector-data')]);\n\n return;\n }\n\n var ajax = wp.ajax.post('bt-preview-thumbnails', {\n thumbnail_id: attachmentId,\n nonce: securityNonce\n });\n\n ajax.done(function (res) {\n cache.add(attachmentId, res, 'selector-data');\n deferred.resolveWith(this, [res]);\n });\n\n ajax.fail(function () {\n\n deferred.rejectWith(this);\n });\n }).promise();\n },\n};","var previewModal = {\n\n info: {},\n\n setup: function (info) {\n\n this.info = info;\n\n this.open();\n },\n\n open: function () {\n\n var self = this;\n\n if (!self.info.images) {\n return;\n }\n\n\n $.bs_selector_modal({\n bsModal: {\n destroyHtml: true,\n show: true\n },\n\n noSidebar: true,\n\n id: 'bt-thumbnil-selector',\n modalClass: 'bt-modal',\n\n itemInnerHtml: '<div class=\"bf-item-container\">\\n <figure>\\n <img src=\"{{img}}\"\\n alt=\"{{label}}\"\\n class=\"bs-style-thumbnail\" data-current-image=\"{{current_img}}\">\\n </figure>\\n</div>',\n\n content: self.info.l10n,\n items: self.info.images.map(self.noCacheImage),\n\n itemsGroupSize: 9,\n\n events: {}\n }, {\n initialZIndex: 209901\n });\n },\n\n noCacheImage: function (obj) {\n\n obj.img += \"?\" + new Date().getTime();\n\n return obj;\n }\n};","var focusPoint = {\n\n markerArea: 10,\n\n isMouseDown: false,\n $element: false,\n $container: false,\n\n options: {},\n\n events: {},\n\n setup: function (options, events) {\n\n this.events = events || {};\n this.options = options || {};\n\n if (this.prepare()) {\n\n this.bindEvents();\n\n return true;\n }\n\n return false;\n },\n\n prepare: function () {\n\n if (!this.options.$el || !this.options.$el.length) {\n return false;\n }\n\n this.$element = this.options.$el;\n this.$element.wrap(\"<div class='bt-focus-point'></div>\");\n //\n this.$container = this.$element.parent();\n this.$container.append('<div class=\"bt-focus-point-marker\"></div>');\n\n if (this.options.defaultPosition) {\n this.fixMarkerPosition(this.options.defaultPosition);\n }\n\n if (this.options.grid) {\n this.appendGrid();\n }\n\n return true;\n },\n\n handle_event: function (event) {\n var args = Array.prototype.slice.call(arguments, 1);\n\n if (typeof this.events[event] === 'function')\n return this.events[event].apply(this, args);\n },\n\n appendGrid: function () {\n\n var $grid = $(\"<div>\", {\"class\": \"grid\"}).insertAfter(this.$container.find('img'));\n\n $grid.html('<div class=\"x1\"></div>\\n<div class=\"x2\"></div>\\n\\n<div class=\"y1\"></div>\\n<div class=\"y2\"></div>');\n },\n\n fixMarkerPosition: function (pos) {\n\n var x = parseFloat(pos[0]),\n y = parseFloat(pos[1]);\n\n if (!(x >= 0 && x <= 1)) {\n return;\n }\n\n if (!(y >= 0 && y <= 1)) {\n return;\n }\n\n var $img = this.$container.find('img');\n var markerArea = this.markerArea;\n\n $(\".bt-focus-point-marker\", this.$container).css({\n top: Math.floor($img.height() * y) - markerArea,\n left: Math.floor($img.width() * x) - markerArea\n });\n },\n\n bindEvents: function () {\n\n var self = this;\n\n var markerArea = this.markerArea,\n $marker = $(\".bt-focus-point-marker\", this.$container);\n\n var $markerWrapper = (function () {\n\n var $m = self.options.parentSelector ? $(\".bt-focus-point-marker\", this.$container).closest(self.options.parentSelector) : '';\n\n if ($m && $m.length) {\n return $m;\n }\n\n return $(\".bt-focus-point-marker\", this.$container);\n\n })();\n\n $marker.mousedown(function () {\n\n self.isMouseDown = true;\n });\n\n $(\".bt-focus-point\").mousedown(function (e) {\n\n self.isMouseDown = true;\n\n $(document).trigger('mousemove.bt-focus-point', [e.pageX, e.pageY]);\n });\n\n\n $markerWrapper.mouseup(function () {\n\n if (!self.isMouseDown) {\n return;\n }\n\n self.isMouseDown = false;\n\n\n var top = parseInt($marker.css('top').replace('px', '')),\n left = parseInt($marker.css('left').replace('px', ''));\n\n var topPercent = Math.ceil((top + markerArea) / (self.$container.find('img').height() / 100)),\n leftPercent = Math.ceil((left + markerArea) / (self.$container.find('img').width() / 100));\n\n\n self.handle_event('done', Math.min(leftPercent, 100), Math.min(topPercent, 100));\n });\n\n var offset = this.$container.offset();\n\n if (!offset) {\n throw 'cannot initialize image focus point';\n }\n\n $(document).on('mousemove.bt-focus-point', function (e, pageX, pageY) {\n\n if (!self.isMouseDown) {\n return;\n }\n\n pageX = pageX || e.pageX;\n pageY = pageY || e.pageY;\n\n var x = pageX - offset.left - markerArea,\n y = pageY - offset.top - markerArea;\n\n\n var $img = self.$container.find('img'),\n box = {\n\n top: $img.height() - markerArea,\n left: $img.width() - markerArea,\n };\n\n y = Math.max(-markerArea, y);\n y = Math.min(box.top, y);\n\n x = Math.max(-markerArea, x);\n x = Math.min(box.left, x);\n\n $marker.css({\n top: Math.floor(y),\n left: Math.floor(x),\n });\n });\n }\n};","var mediaModal = {\n\n initialized: false,\n $context: '',\n\n setup: function () {\n\n if (!wp || !wp.media) {\n return;\n }\n\n var self = this;\n\n if (wp.media.featuredImage && wp.media.featuredImage.frame) {\n\n this.initFeaturedImageModal();\n }\n\n if (wp.media.frames && self.isUploadPage()) {\n\n $(document).one('click', \".media-frame-content li.attachment\", function () {\n\n setTimeout(function () {\n self.initMediaLibraryModal();\n\n self.initFocusPoint();\n self.appendPreviewButton($(\".attachment-actions .button\", self.$context));\n });\n });\n }\n },\n\n initFeaturedImageModal: function () {\n\n var self = this;\n\n var frame = wp.media.featuredImage.frame();\n frame.on('ready', function () {\n\n if (self.initialized) {\n return;\n }\n\n self.$context = this.models[0].frame.$el;\n self.initialized = true;\n\n wp.Uploader.queue.on('reset', function () { // Upload completed\n\n setTimeout(function () {\n self.initFocusPoint();\n self.appendPreviewLink();\n });\n });\n });\n\n frame.on('selection:toggle', function () { // Image selected\n\n self.initFocusPoint();\n self.appendPreviewLink();\n });\n\n frame.on('uploader:ready', function (a) { // Image selected\n\n var interval = setInterval(function () {\n\n if (self.initFocusPoint()) {\n\n self.appendPreviewLink();\n\n clearInterval(interval);\n }\n\n }, 200);\n });\n\n },\n\n initMediaLibraryModal: function () {\n\n var self = this;\n\n wp.media.frames.edit.on('refresh', function (e) {\n\n self.initFocusPoint();\n self.appendPreviewButton($(\".attachment-actions .button\", self.$context));\n });\n },\n\n initFocusPoint: function () {\n\n return focusPoint.setup({\n $el: $(\".thumbnail-image img\", this.$context),\n parentSelector: \".media-frame-content\",\n grid: loc.get(\"grid\"),\n defaultPosition: this.getFocusPoint()\n },\n {\n done: $.proxy(this.saveFocusPoint, this)\n }\n );\n },\n\n appendPreviewLink: function () {\n\n var self = this,\n link = \"<div class='preview-thumbnails'><a href='#'>\" + loc.translate('preview') + \"</a></div>\";\n\n var $link = $(link).insertAfter($(\".attachment-info .edit-attachment\", this.$context));\n\n $link.on('click', function (e) {\n e.preventDefault();\n\n self.previewModal();\n });\n },\n\n appendPreviewButton: function ($afterEl) {\n\n var self = this,\n link = \"<input type='button' class='button preview-images-btn' value='\" + loc.translate('preview') + \"'>\";\n\n var $link = $(link).insertAfter($afterEl);\n\n $link.on('click', function (e) {\n e.preventDefault();\n\n self.previewModal();\n });\n },\n\n previewModal: function () {\n\n var self = this;\n\n self.loading('start');\n\n var ajax = previewData.get(self.attachmentId(), self.securityNonce());\n\n ajax.done(function (res) {\n\n if (!helper.isUndefined(res.data))\n previewModal.setup(res.data);\n });\n\n ajax.always(function () {\n\n self.loading('stop');\n });\n\n },\n\n saveFocusPoint: function (topPercent, leftPercent) {\n\n this.regenerateThumbnails(topPercent, leftPercent);\n this.setFocusPoint(topPercent / 100, leftPercent / 100);\n },\n\n regenerateThumbnails: function (topPercent, leftPercent) {\n\n var self = this;\n\n var attachment_id = self.attachmentId();\n\n self.loading('start');\n\n var ajax = wp.ajax.post('bt-regenerate-thumbnails', {\n thumbnail_id: attachment_id,\n nonce: self.securityNonce(),\n focus_x: topPercent,\n focus_y: leftPercent,\n });\n\n ajax.done(function (res) {\n\n if (!helper.isUndefined(res.message)) {\n\n var $msgParent = self.isUploadPage() ? $(\".thumbnail-image\", self.$context) : $(\".attachment-info\", self.$context);\n\n helper.notify($msgParent, res.message);\n }\n });\n\n ajax.always(function () {\n\n self.loading('stop');\n });\n },\n\n loading: function (state) {\n\n switch (state) {\n\n case 'start':\n\n UI.block($(\".attachment-info\", this.$context));\n\n break;\n\n case 'stop':\n UI.unblock($(\".attachment-info\", this.$context));\n\n break;\n }\n },\n\n attachmentId: function () {\n\n if (this.isUploadPage()) {\n\n return $(\".attachment-details\", this.$context).data('id');\n\n } else {\n\n return $(\".attachment.selected\", this.$context).data('id');\n }\n },\n\n\n isUploadPage: function () {\n return $(document.body).hasClass('upload-php');\n },\n\n securityNonce: function () {\n return $(\".bt-regenerate-nonce\", this.$context).val();\n },\n\n getFocusPoint: function () {\n\n var $attachment = $(\".attachment.selected\", this.$context),\n point = $attachment.data('focus-point');\n\n return point ? point.split('-') : this.getDefaultFocusPoint();\n\n },\n setFocusPoint: function (top, left) {\n\n $(\".attachment.selected\", this.$context).data(\"focus-point\", top + \"-\" + left);\n },\n getDefaultFocusPoint: function () {\n\n var point = $(\".bt-focus-point-xy\", this.$context).val(),\n $img = $(\".thumbnail-image img\", this.$context);\n\n return point && point.indexOf('-') > -1 ? point.split('-') : helper.defaultFocusPoint($img.width(), $img.height());\n }\n};\n\nmediaModal.setup();\n","var mediaLibPage = {\n\n initialized: false,\n $context: '',\n\n $img: '',\n\n setup: function () {\n\n if (!wp || !wp.media) {\n return;\n }\n\n var $body = $(document.body);\n\n this.$context = $body;\n\n if (!$body.hasClass('post-type-attachment') || !$body.hasClass('post-php')) {\n return\n }\n\n this.$img = $(\".wp_attachment_image img.thumbnail\", this.$context);\n\n this.editAttachmentPage();\n },\n\n editAttachmentPage: function () {\n\n this.initFocusPoint();\n\n this.appendPreviewButton($(\".wp_attachment_image .button\", this.$context));\n },\n\n initFocusPoint: function () {\n\n focusPoint.setup({\n $el: this.$img,\n parentSelector: \"#wpbody-content\",\n\n grid: loc.get(\"grid\"),\n defaultPosition: this.getFocusPoint()\n }, {\n done: $.proxy(this.saveFocusPoint, this)\n }\n );\n },\n\n\n appendPreviewButton: function ($afterEl) {\n\n var self = this,\n link = \"<input type='button' class='button preview-images-btn' value='\" + loc.translate('preview') + \"'>\";\n\n var $link = $(link).insertAfter($afterEl);\n\n $link.on('click', function (e) {\n e.preventDefault();\n\n self.previewModal();\n });\n },\n\n previewModal: function () {\n\n var self = this;\n\n self.loading('start');\n\n var ajax = previewData.get(self.attachmentId(), self.securityNonce());\n\n ajax.done(function (res) {\n\n if (!helper.isUndefined(res.data))\n previewModal.setup(res.data);\n });\n\n ajax.always(function () {\n\n self.loading('stop');\n });\n\n },\n\n saveFocusPoint: function (topPercent, leftPercent) {\n\n this.regenerateThumbnails(topPercent, leftPercent);\n this.setFocusPoint(topPercent / 100, leftPercent / 100);\n },\n\n regenerateThumbnails: function (topPercent, leftPercent) {\n\n var self = this;\n\n var attachment_id = self.attachmentId();\n\n self.loading('start');\n\n var ajax = wp.ajax.post('bt-regenerate-thumbnails', {\n thumbnail_id: attachment_id,\n nonce: self.securityNonce(),\n focus_x: topPercent,\n focus_y: leftPercent,\n });\n\n ajax.done(function (res) {\n\n if (!helper.isUndefined(res.message)) {\n\n helper.notify($(\".wp_attachment_holder\", this.$context), res.message);\n }\n });\n\n ajax.always(function () {\n\n self.loading('stop');\n });\n },\n\n loading: function (state) {\n\n switch (state) {\n\n case 'start':\n\n UI.block($(\".wp_attachment_holder\", this.$context));\n\n break;\n\n case 'stop':\n UI.unblock($(\".wp_attachment_holder\", this.$context));\n\n break;\n }\n },\n\n attachmentId: function () {\n\n return $(\"#post_ID\", this.$context).val();\n },\n\n\n securityNonce: function () {\n\n return $(\".bt-regenerate-nonce\", this.$context).val();\n },\n\n getFocusPoint: function () {\n\n return this.getDefaultFocusPoint();\n },\n\n setFocusPoint: function (top, left) {\n\n $(\".attachment.selected\", this.$context).data(\"focus-point\", top + \"-\" + left);\n },\n\n getDefaultFocusPoint: function () {\n\n var point = $(\".bt-focus-point-xy\", this.$context).val();\n\n return point && point.indexOf('-') > -1 ? point.split('-') : helper.defaultFocusPoint(this.$img.width(), this.$img.height());\n }\n};\n\nmediaLibPage.setup();\n"]}PK ���["Yb̖[ �[ ! assets/js/smart-thumbnails.js.mapnu �[��� {"version":3,"sources":[".before-concat.txt","utils.js","preview-data.js","preview-modal.js","focus-point.js","media-modal.js","media-lib-page.js",".after-concat.txt"],"names":[],"mappings":"AAAA;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACxIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AClDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACpKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACzOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACrKA","file":"smart-thumbnails.js","sourcesContent":["jQuery(document).ready(function($) {","var helper = {\n isObject: function (obj) {\n var type = typeof obj;\n return type === 'function' || type === 'object' && !!obj;\n },\n isUndefined: function (obj) {\n\n return obj === void 0;\n },\n\n notify: function ($el, message) {\n\n $el.append(\"<div class='bt-user-message success' style='display: none;'>\" + message + \"</div>\");\n\n $(\".bt-user-message\", $el).fadeIn().delay(5e3).queue(function (n) {\n\n $(this).fadeOut(function () {\n $(this).remove();\n });\n n();\n });\n },\n\n defaultFocusPoint: function (imageWidth, imageHeight) {\n\n if (loc.get('portrait_default_top') &&\n this.isImagePortrait(imageWidth, imageHeight)) {\n\n return [0.5, 0];\n }\n\n return loc.get('default_fp');\n },\n\n isImagePortrait: function (imageWidth, imageHeight) {\n\n return ( imageWidth + ( imageHeight * 0.14 ) ) < imageHeight;\n }\n};\nvar cache = {\n storage: {},\n\n add: function (name, data, group) {\n\n if (helper.isUndefined(cache[group]))\n cache[group] = {};\n\n cache[group][name] = data;\n },\n\n get: function (name, group) {\n\n if (this.exist(name, group)) {\n\n return cache[group][name];\n }\n },\n\n exist: function (name, group) {\n\n return !helper.isUndefined(cache[group]) && !helper.isUndefined(cache[group][name]);\n }\n};\n\n\nvar UI = {\n\n is_blocked: function ($element) {\n\n return !!$element.data('bc-el-blocked');\n },\n\n block: function ($element) {\n\n if (this.is_blocked($element)) {\n return;\n }\n\n $element.data('bc-el-blocked', true);\n\n $element.prepend('<div class=\"bc-block-overlay\" style=\"z-index:10;display:none;border:none;margin:0;padding:0;width:100%;height:100%;top:0;left:0;display:none;position: absolute;background:rgba(255,255,255,0.4)\"></div>');\n\n $(\".bc-block-overlay\").fadeIn();\n },\n\n\n unblock: function ($element) {\n\n if (!this.is_blocked($element)) {\n return;\n }\n\n $element.data('bc-el-blocked', false);\n\n $(\".bc-block-overlay\").fadeOut(function () {\n $(this).remove();\n });\n },\n};\n\n\nvar loc = {\n\n get: function (loc) {\n\n if (!loc) {\n return;\n }\n\n if (loc.indexOf('.') == -1) {\n\n return st_loc[loc];\n }\n\n var _v = loc.split('.');\n var current = st_loc[_v[0]];\n _v = _v.splice(1);\n\n var len = _v.length - 1;\n\n for (var i = 0; i <= len; i++) {\n\n if (typeof current[_v[i]] !== 'object' && i !== len) {\n return;\n }\n\n current = current[_v[i]];\n }\n\n return current;\n },\n\n translate: function (index) {\n\n return this.get('translate.' + index);\n }\n};","var previewData = {\n\n get: function (attachmentId, securityNonce) {\n\n return $.Deferred(function (deferred) {\n\n if (cache.exist(attachmentId, 'selector-data')) {\n\n deferred.resolveWith(this, [cache.get(attachmentId, 'selector-data')]);\n\n return;\n }\n\n var ajax = wp.ajax.post('bt-preview-thumbnails', {\n thumbnail_id: attachmentId,\n nonce: securityNonce\n });\n\n ajax.done(function (res) {\n cache.add(attachmentId, res, 'selector-data');\n deferred.resolveWith(this, [res]);\n });\n\n ajax.fail(function () {\n\n deferred.rejectWith(this);\n });\n }).promise();\n },\n};","var previewModal = {\n\n info: {},\n\n setup: function (info) {\n\n this.info = info;\n\n this.open();\n },\n\n open: function () {\n\n var self = this;\n\n if (!self.info.images) {\n return;\n }\n\n\n $.bs_selector_modal({\n bsModal: {\n destroyHtml: true,\n show: true\n },\n\n noSidebar: true,\n\n id: 'bt-thumbnil-selector',\n modalClass: 'bt-modal',\n\n itemInnerHtml: '<div class=\"bf-item-container\">\\n <figure>\\n <img src=\"{{img}}\"\\n alt=\"{{label}}\"\\n class=\"bs-style-thumbnail\" data-current-image=\"{{current_img}}\">\\n </figure>\\n</div>',\n\n content: self.info.l10n,\n items: self.info.images.map(self.noCacheImage),\n\n itemsGroupSize: 9,\n\n events: {}\n }, {\n initialZIndex: 209901\n });\n },\n\n noCacheImage: function (obj) {\n\n obj.img += \"?\" + new Date().getTime();\n\n return obj;\n }\n};","var focusPoint = {\n\n markerArea: 10,\n\n isMouseDown: false,\n $element: false,\n $container: false,\n\n options: {},\n\n events: {},\n\n setup: function (options, events) {\n\n this.events = events || {};\n this.options = options || {};\n\n this.prepare();\n this.bindEvents();\n },\n\n prepare: function () {\n\n this.$element = this.options.$el;\n this.$element.wrap(\"<div class='bt-focus-point'></div>\");\n //\n this.$container = this.$element.parent();\n this.$container.append('<div class=\"bt-focus-point-marker\"></div>');\n\n if (this.options.defaultPosition) {\n this.fixMarkerPosition(this.options.defaultPosition);\n }\n\n if (this.options.grid) {\n this.appendGrid();\n }\n\n },\n\n handle_event: function (event) {\n var args = Array.prototype.slice.call(arguments, 1);\n\n if (typeof this.events[event] === 'function')\n return this.events[event].apply(this, args);\n },\n\n appendGrid: function () {\n\n var $grid = $(\"<div>\", {\"class\": \"grid\"}).insertAfter(this.$container.find('img'));\n\n $grid.html('<div class=\"x1\"></div>\\n<div class=\"x2\"></div>\\n\\n<div class=\"y1\"></div>\\n<div class=\"y2\"></div>');\n },\n\n fixMarkerPosition: function (pos) {\n\n var x = parseFloat(pos[0]),\n y = parseFloat(pos[1]);\n\n if (!(x >= 0 && x <= 1)) {\n return;\n }\n\n if (!(y >= 0 && y <= 1)) {\n return;\n }\n\n var $img = this.$container.find('img');\n var markerArea = this.markerArea;\n\n $(\".bt-focus-point-marker\", this.$container).css({\n top: Math.floor($img.height() * y) - markerArea,\n left: Math.floor($img.width() * x) - markerArea\n });\n },\n\n bindEvents: function () {\n\n var self = this;\n\n var markerArea = this.markerArea,\n $marker = $(\".bt-focus-point-marker\", this.$container);\n\n var $markerWrapper = (function () {\n\n var $m = self.options.parentSelector ? $(\".bt-focus-point-marker\", this.$container).closest(self.options.parentSelector) : '';\n\n if ($m && $m.length) {\n return $m;\n }\n\n return $(\".bt-focus-point-marker\", this.$container);\n\n })();\n\n $marker.mousedown(function () {\n\n self.isMouseDown = true;\n });\n\n $(\".bt-focus-point\").mousedown(function (e) {\n\n self.isMouseDown = true;\n\n $(document).trigger('mousemove.bt-focus-point', [e.pageX, e.pageY]);\n });\n\n\n $markerWrapper.mouseup(function () {\n\n if (!self.isMouseDown) {\n return;\n }\n\n self.isMouseDown = false;\n\n\n var top = parseInt($marker.css('top').replace('px', '')),\n left = parseInt($marker.css('left').replace('px', ''));\n\n var topPercent = Math.ceil((top + markerArea) / (self.$container.find('img').height() / 100)),\n leftPercent = Math.ceil((left + markerArea) / (self.$container.find('img').width() / 100));\n\n\n self.handle_event('done', Math.min(leftPercent, 100), Math.min(topPercent, 100));\n });\n\n var offset = this.$container.offset();\n\n if (!offset) {\n throw 'cannot initialize image focus point';\n }\n\n $(document).on('mousemove.bt-focus-point', function (e, pageX, pageY) {\n\n if (!self.isMouseDown) {\n return;\n }\n\n pageX = pageX || e.pageX;\n pageY = pageY || e.pageY;\n\n var x = pageX - offset.left - markerArea,\n y = pageY - offset.top - markerArea;\n\n\n var $img = self.$container.find('img'),\n box = {\n\n top: $img.height() - markerArea,\n left: $img.width() - markerArea,\n };\n\n y = Math.max(-markerArea, y);\n y = Math.min(box.top, y);\n\n x = Math.max(-markerArea, x);\n x = Math.min(box.left, x);\n\n $marker.css({\n top: Math.floor(y),\n left: Math.floor(x),\n });\n });\n }\n};","var mediaModal = {\n\n initialized: false,\n $context: '',\n\n setup: function () {\n\n if (!wp || !wp.media) {\n return;\n }\n\n var self = this;\n\n if (wp.media.featuredImage && wp.media.featuredImage.frame) {\n\n this.initFeaturedImageModal();\n }\n\n if (wp.media.frames && self.isUploadPage()) {\n\n $(document).one('click', \".media-frame-content li.attachment\", function () {\n\n setTimeout(function () {\n self.initMediaLibraryModal();\n\n self.initFocusPoint();\n self.appendPreviewButton($(\".attachment-actions .button\", self.$context));\n });\n });\n }\n },\n\n initFeaturedImageModal: function () {\n\n var self = this;\n\n var frame = wp.media.featuredImage.frame();\n frame.on('ready', function () {\n\n if (self.initialized) {\n return;\n }\n\n self.$context = this.models[0].frame.$el;\n self.initialized = true;\n\n wp.Uploader.queue.on('reset', function () { // Upload completed\n\n setTimeout(function () {\n self.initFocusPoint();\n self.appendPreviewLink();\n })\n });\n });\n\n frame.on('selection:toggle', function () { // Image selected\n\n self.initFocusPoint();\n self.appendPreviewLink();\n });\n },\n\n initMediaLibraryModal: function () {\n\n var self = this;\n\n wp.media.frames.edit.on('refresh', function (e) {\n\n self.initFocusPoint();\n self.appendPreviewButton($(\".attachment-actions .button\", self.$context));\n });\n },\n\n initFocusPoint: function () {\n\n focusPoint.setup({\n $el: $(\".thumbnail-image img\", this.$context),\n parentSelector: \".media-frame-content\",\n grid: loc.get(\"grid\"),\n defaultPosition: this.getFocusPoint()\n },\n {\n done: $.proxy(this.saveFocusPoint, this)\n }\n );\n },\n\n appendPreviewLink: function () {\n\n var self = this,\n link = \"<div class='preview-thumbnails'><a href='#'>\" + loc.translate('preview') + \"</a></div>\";\n\n var $link = $(link).insertAfter($(\".attachment-info .edit-attachment\", this.$context));\n\n $link.on('click', function (e) {\n e.preventDefault();\n\n self.previewModal();\n });\n },\n\n appendPreviewButton: function ($afterEl) {\n\n var self = this,\n link = \"<input type='button' class='button preview-images-btn' value='\" + loc.translate('preview') + \"'>\";\n\n var $link = $(link).insertAfter($afterEl);\n\n $link.on('click', function (e) {\n e.preventDefault();\n\n self.previewModal();\n });\n },\n\n previewModal: function () {\n\n var self = this;\n\n self.loading('start');\n\n var ajax = previewData.get(self.attachmentId(), self.securityNonce());\n\n ajax.done(function (res) {\n\n if (!helper.isUndefined(res.data))\n previewModal.setup(res.data);\n });\n\n ajax.always(function () {\n\n self.loading('stop');\n });\n\n },\n\n saveFocusPoint: function (topPercent, leftPercent) {\n\n this.regenerateThumbnails(topPercent, leftPercent);\n this.setFocusPoint(topPercent / 100, leftPercent / 100);\n },\n\n regenerateThumbnails: function (topPercent, leftPercent) {\n\n var self = this;\n\n var attachment_id = self.attachmentId();\n\n self.loading('start');\n\n var ajax = wp.ajax.post('bt-regenerate-thumbnails', {\n thumbnail_id: attachment_id,\n nonce: self.securityNonce(),\n focus_x: topPercent,\n focus_y: leftPercent,\n });\n\n ajax.done(function (res) {\n\n if (!helper.isUndefined(res.message)) {\n\n var $msgParent = self.isUploadPage() ? $(\".thumbnail-image\", self.$context) : $(\".attachment-info\", self.$context);\n\n helper.notify($msgParent, res.message);\n }\n });\n\n ajax.always(function () {\n\n self.loading('stop');\n });\n },\n\n loading: function (state) {\n\n switch (state) {\n\n case 'start':\n\n UI.block($(\".attachment-info\", this.$context));\n\n break;\n\n case 'stop':\n UI.unblock($(\".attachment-info\", this.$context));\n\n break;\n }\n },\n\n attachmentId: function () {\n\n if (this.isUploadPage()) {\n\n return $(\".attachment-details\", this.$context).data('id');\n\n } else {\n\n return $(\".attachment.selected\", this.$context).data('id');\n }\n },\n\n\n isUploadPage: function () {\n return $(document.body).hasClass('upload-php');\n },\n\n securityNonce: function () {\n return $(\".bt-regenerate-nonce\", this.$context).val();\n },\n\n getFocusPoint: function () {\n\n var $attachment = $(\".attachment.selected\", this.$context),\n point = $attachment.data('focus-point');\n\n return point ? point.split('-') : this.getDefaultFocusPoint();\n\n },\n setFocusPoint: function (top, left) {\n\n $(\".attachment.selected\", this.$context).data(\"focus-point\", top + \"-\" + left);\n },\n getDefaultFocusPoint: function () {\n\n var point = $(\".bt-focus-point-xy\", this.$context).val(),\n $img = $(\".thumbnail-image img\", this.$context);\n\n return point && point.indexOf('-') > -1 ? point.split('-') : helper.defaultFocusPoint($img.width(), $img.height());\n }\n};\n\nmediaModal.setup();\n","var mediaLibPage = {\n\n initialized: false,\n $context: '',\n\n $img: '',\n\n setup: function () {\n\n if (!wp || !wp.media) {\n return;\n }\n\n var $body = $(document.body);\n\n this.$context = $body;\n\n if (!$body.hasClass('post-type-attachment') || !$body.hasClass('post-php')) {\n return\n }\n\n this.$img = $(\".wp_attachment_image img.thumbnail\", this.$context);\n\n this.editAttachmentPage();\n },\n\n editAttachmentPage: function () {\n\n this.initFocusPoint();\n\n this.appendPreviewButton($(\".wp_attachment_image .button\", this.$context));\n },\n\n initFocusPoint: function () {\n\n focusPoint.setup({\n $el: this.$img,\n parentSelector: \"#wpbody-content\",\n\n grid: loc.get(\"grid\"),\n defaultPosition: this.getFocusPoint()\n }, {\n done: $.proxy(this.saveFocusPoint, this)\n }\n );\n },\n\n\n appendPreviewButton: function ($afterEl) {\n\n var self = this,\n link = \"<input type='button' class='button preview-images-btn' value='\" + loc.translate('preview') + \"'>\";\n\n var $link = $(link).insertAfter($afterEl);\n\n $link.on('click', function (e) {\n e.preventDefault();\n\n self.previewModal();\n });\n },\n\n previewModal: function () {\n\n var self = this;\n\n self.loading('start');\n\n var ajax = previewData.get(self.attachmentId(), self.securityNonce());\n\n ajax.done(function (res) {\n\n if (!helper.isUndefined(res.data))\n previewModal.setup(res.data);\n });\n\n ajax.always(function () {\n\n self.loading('stop');\n });\n\n },\n\n saveFocusPoint: function (topPercent, leftPercent) {\n\n this.regenerateThumbnails(topPercent, leftPercent);\n this.setFocusPoint(topPercent / 100, leftPercent / 100);\n },\n\n regenerateThumbnails: function (topPercent, leftPercent) {\n\n var self = this;\n\n var attachment_id = self.attachmentId();\n\n self.loading('start');\n\n var ajax = wp.ajax.post('bt-regenerate-thumbnails', {\n thumbnail_id: attachment_id,\n nonce: self.securityNonce(),\n focus_x: topPercent,\n focus_y: leftPercent,\n });\n\n ajax.done(function (res) {\n\n if (!helper.isUndefined(res.message)) {\n\n helper.notify($(\".wp_attachment_holder\", this.$context), res.message);\n }\n });\n\n ajax.always(function () {\n\n self.loading('stop');\n });\n },\n\n loading: function (state) {\n\n switch (state) {\n\n case 'start':\n\n UI.block($(\".wp_attachment_holder\", this.$context));\n\n break;\n\n case 'stop':\n UI.unblock($(\".wp_attachment_holder\", this.$context));\n\n break;\n }\n },\n\n attachmentId: function () {\n\n return $(\"#post_ID\", this.$context).val();\n },\n\n\n securityNonce: function () {\n\n return $(\".bt-regenerate-nonce\", this.$context).val();\n },\n\n getFocusPoint: function () {\n\n return this.getDefaultFocusPoint();\n },\n\n setFocusPoint: function (top, left) {\n\n $(\".attachment.selected\", this.$context).data(\"focus-point\", top + \"-\" + left);\n },\n\n getDefaultFocusPoint: function () {\n\n var point = $(\".bt-focus-point-xy\", this.$context).val();\n\n return point && point.indexOf('-') > -1 ? point.split('-') : helper.defaultFocusPoint(this.$img.width(), this.$img.height());\n }\n};\n\nmediaLibPage.setup();\n","});"]}PK ���[�7Er2 2 assets/js/utils.jsnu �[��� var helper = {
isObject: function (obj) {
var type = typeof obj;
return type === 'function' || type === 'object' && !!obj;
},
isUndefined: function (obj) {
return obj === void 0;
},
notify: function ($el, message) {
$el.append("<div class='bt-user-message success' style='display: none;'>" + message + "</div>");
$(".bt-user-message", $el).fadeIn().delay(5e3).queue(function (n) {
$(this).fadeOut(function () {
$(this).remove();
});
n();
});
},
defaultFocusPoint: function (imageWidth, imageHeight) {
if (loc.get('portrait_default_top') &&
this.isImagePortrait(imageWidth, imageHeight)) {
return [0.5, 0];
}
return loc.get('default_fp');
},
isImagePortrait: function (imageWidth, imageHeight) {
return ( imageWidth + ( imageHeight * 0.14 ) ) < imageHeight;
}
};
var cache = {
storage: {},
add: function (name, data, group) {
if (helper.isUndefined(cache[group]))
cache[group] = {};
cache[group][name] = data;
},
get: function (name, group) {
if (this.exist(name, group)) {
return cache[group][name];
}
},
exist: function (name, group) {
return !helper.isUndefined(cache[group]) && !helper.isUndefined(cache[group][name]);
}
};
var UI = {
is_blocked: function ($element) {
return !!$element.data('bc-el-blocked');
},
block: function ($element) {
if (this.is_blocked($element)) {
return;
}
$element.data('bc-el-blocked', true);
$element.prepend('<div class="bc-block-overlay" style="z-index:10;display:none;border:none;margin:0;padding:0;width:100%;height:100%;top:0;left:0;display:none;position: absolute;background:rgba(255,255,255,0.4)"></div>');
$(".bc-block-overlay").fadeIn();
},
unblock: function ($element) {
if (!this.is_blocked($element)) {
return;
}
$element.data('bc-el-blocked', false);
$(".bc-block-overlay").fadeOut(function () {
$(this).remove();
});
},
};
var loc = {
get: function (loc) {
if (!loc) {
return;
}
if (loc.indexOf('.') == -1) {
return st_loc[loc];
}
var _v = loc.split('.');
var current = st_loc[_v[0]];
_v = _v.splice(1);
var len = _v.length - 1;
for (var i = 0; i <= len; i++) {
if (typeof current[_v[i]] !== 'object' && i !== len) {
return;
}
current = current[_v[i]];
}
return current;
},
translate: function (index) {
return this.get('translate.' + index);
}
};PK ���[��y�$ $ assets/js/.before-concat.txtnu �[��� jQuery(document).ready(function($) {PK ���[�� assets/js/index.phpnu �[��� <?php
PK ���[�x��� � assets/js/list.jsnu �[��� module.exports = [
'assets/js/utils.js',
'assets/js/preview-data.js',
'assets/js/preview-modal.js',
'assets/js/focus-point.js',
'assets/js/media-modal.js',
'assets/js/media-lib-page.js',
];
PK ���[�T%V assets/js/.after-concat.txtnu �[��� });PK ���[(�2- - assets/js/focus-point.jsnu �[��� var focusPoint = {
markerArea: 10,
isMouseDown: false,
$element: false,
$container: false,
options: {},
events: {},
setup: function (options, events) {
this.events = events || {};
this.options = options || {};
if (this.prepare()) {
this.bindEvents();
return true;
}
return false;
},
prepare: function () {
if (!this.options.$el || !this.options.$el.length) {
return false;
}
this.$element = this.options.$el;
this.$element.wrap("<div class='bt-focus-point'></div>");
//
this.$container = this.$element.parent();
this.$container.append('<div class="bt-focus-point-marker"></div>');
if (this.options.defaultPosition) {
this.fixMarkerPosition(this.options.defaultPosition);
}
if (this.options.grid) {
this.appendGrid();
}
return true;
},
handle_event: function (event) {
var args = Array.prototype.slice.call(arguments, 1);
if (typeof this.events[event] === 'function')
return this.events[event].apply(this, args);
},
appendGrid: function () {
var $grid = $("<div>", {"class": "grid"}).insertAfter(this.$container.find('img'));
$grid.html('<div class="x1"></div>\n<div class="x2"></div>\n\n<div class="y1"></div>\n<div class="y2"></div>');
},
fixMarkerPosition: function (pos) {
var x = parseFloat(pos[0]),
y = parseFloat(pos[1]);
if (!(x >= 0 && x <= 1)) {
return;
}
if (!(y >= 0 && y <= 1)) {
return;
}
var $img = this.$container.find('img');
var markerArea = this.markerArea;
$(".bt-focus-point-marker", this.$container).css({
top: Math.floor($img.height() * y) - markerArea,
left: Math.floor($img.width() * x) - markerArea
});
},
bindEvents: function () {
var self = this;
var markerArea = this.markerArea,
$marker = $(".bt-focus-point-marker", this.$container);
var $markerWrapper = (function () {
var $m = self.options.parentSelector ? $(".bt-focus-point-marker", this.$container).closest(self.options.parentSelector) : '';
if ($m && $m.length) {
return $m;
}
return $(".bt-focus-point-marker", this.$container);
})();
$marker.mousedown(function () {
self.isMouseDown = true;
});
$(".bt-focus-point").mousedown(function (e) {
self.isMouseDown = true;
$(document).trigger('mousemove.bt-focus-point', [e.pageX, e.pageY]);
});
$markerWrapper.mouseup(function () {
if (!self.isMouseDown) {
return;
}
self.isMouseDown = false;
var top = parseInt($marker.css('top').replace('px', '')),
left = parseInt($marker.css('left').replace('px', ''));
var topPercent = Math.ceil((top + markerArea) / (self.$container.find('img').height() / 100)),
leftPercent = Math.ceil((left + markerArea) / (self.$container.find('img').width() / 100));
self.handle_event('done', Math.min(leftPercent, 100), Math.min(topPercent, 100));
});
var offset = this.$container.offset();
if (!offset) {
throw 'cannot initialize image focus point';
}
$(document).on('mousemove.bt-focus-point', function (e, pageX, pageY) {
if (!self.isMouseDown) {
return;
}
pageX = pageX || e.pageX;
pageY = pageY || e.pageY;
var x = pageX - offset.left - markerArea,
y = pageY - offset.top - markerArea;
var $img = self.$container.find('img'),
box = {
top: $img.height() - markerArea,
left: $img.width() - markerArea,
};
y = Math.max(-markerArea, y);
y = Math.min(box.top, y);
x = Math.max(-markerArea, x);
x = Math.min(box.left, x);
$marker.css({
top: Math.floor(y),
left: Math.floor(x),
});
});
}
};PK ���[`���I �I $ assets/js/better-smart-thumbnails.jsnu �[��� jQuery(document).ready(function($) {
var helper = {
isObject: function (obj) {
var type = typeof obj;
return type === 'function' || type === 'object' && !!obj;
},
isUndefined: function (obj) {
return obj === void 0;
},
notify: function ($el, message) {
$el.append("<div class='bt-user-message success' style='display: none;'>" + message + "</div>");
$(".bt-user-message", $el).fadeIn().delay(5e3).queue(function (n) {
$(this).fadeOut(function () {
$(this).remove();
});
n();
});
},
defaultFocusPoint: function (imageWidth, imageHeight) {
if (loc.get('portrait_default_top') &&
this.isImagePortrait(imageWidth, imageHeight)) {
return [0.5, 0];
}
return loc.get('default_fp');
},
isImagePortrait: function (imageWidth, imageHeight) {
return ( imageWidth + ( imageHeight * 0.14 ) ) < imageHeight;
}
};
var cache = {
storage: {},
add: function (name, data, group) {
if (helper.isUndefined(cache[group]))
cache[group] = {};
cache[group][name] = data;
},
get: function (name, group) {
if (this.exist(name, group)) {
return cache[group][name];
}
},
exist: function (name, group) {
return !helper.isUndefined(cache[group]) && !helper.isUndefined(cache[group][name]);
}
};
var UI = {
is_blocked: function ($element) {
return !!$element.data('bc-el-blocked');
},
block: function ($element) {
if (this.is_blocked($element)) {
return;
}
$element.data('bc-el-blocked', true);
$element.prepend('<div class="bc-block-overlay" style="z-index:10;display:none;border:none;margin:0;padding:0;width:100%;height:100%;top:0;left:0;display:none;position: absolute;background:rgba(255,255,255,0.4)"></div>');
$(".bc-block-overlay").fadeIn();
},
unblock: function ($element) {
if (!this.is_blocked($element)) {
return;
}
$element.data('bc-el-blocked', false);
$(".bc-block-overlay").fadeOut(function () {
$(this).remove();
});
},
};
var loc = {
get: function (loc) {
if (!loc) {
return;
}
if (loc.indexOf('.') == -1) {
return st_loc[loc];
}
var _v = loc.split('.');
var current = st_loc[_v[0]];
_v = _v.splice(1);
var len = _v.length - 1;
for (var i = 0; i <= len; i++) {
if (typeof current[_v[i]] !== 'object' && i !== len) {
return;
}
current = current[_v[i]];
}
return current;
},
translate: function (index) {
return this.get('translate.' + index);
}
};
var previewData = {
get: function (attachmentId, securityNonce) {
return $.Deferred(function (deferred) {
if (cache.exist(attachmentId, 'selector-data')) {
deferred.resolveWith(this, [cache.get(attachmentId, 'selector-data')]);
return;
}
var ajax = wp.ajax.post('bt-preview-thumbnails', {
thumbnail_id: attachmentId,
nonce: securityNonce
});
ajax.done(function (res) {
cache.add(attachmentId, res, 'selector-data');
deferred.resolveWith(this, [res]);
});
ajax.fail(function () {
deferred.rejectWith(this);
});
}).promise();
},
};
var previewModal = {
info: {},
setup: function (info) {
this.info = info;
this.open();
},
open: function () {
var self = this;
if (!self.info.images) {
return;
}
$.bs_selector_modal({
bsModal: {
destroyHtml: true,
show: true
},
noSidebar: true,
id: 'bt-thumbnil-selector',
modalClass: 'bt-modal',
itemInnerHtml: '<div class="bf-item-container">\n <figure>\n <img src="{{img}}"\n alt="{{label}}"\n class="bs-style-thumbnail" data-current-image="{{current_img}}">\n </figure>\n</div>',
content: self.info.l10n,
items: self.info.images.map(self.noCacheImage),
itemsGroupSize: 9,
events: {}
}, {
initialZIndex: 209901
});
},
noCacheImage: function (obj) {
obj.img += "?" + new Date().getTime();
return obj;
}
};
var focusPoint = {
markerArea: 10,
isMouseDown: false,
$element: false,
$container: false,
options: {},
events: {},
setup: function (options, events) {
this.events = events || {};
this.options = options || {};
if (this.prepare()) {
this.bindEvents();
return true;
}
return false;
},
prepare: function () {
if (!this.options.$el || !this.options.$el.length) {
return false;
}
this.$element = this.options.$el;
this.$element.wrap("<div class='bt-focus-point'></div>");
//
this.$container = this.$element.parent();
this.$container.append('<div class="bt-focus-point-marker"></div>');
if (this.options.defaultPosition) {
this.fixMarkerPosition(this.options.defaultPosition);
}
if (this.options.grid) {
this.appendGrid();
}
return true;
},
handle_event: function (event) {
var args = Array.prototype.slice.call(arguments, 1);
if (typeof this.events[event] === 'function')
return this.events[event].apply(this, args);
},
appendGrid: function () {
var $grid = $("<div>", {"class": "grid"}).insertAfter(this.$container.find('img'));
$grid.html('<div class="x1"></div>\n<div class="x2"></div>\n\n<div class="y1"></div>\n<div class="y2"></div>');
},
fixMarkerPosition: function (pos) {
var x = parseFloat(pos[0]),
y = parseFloat(pos[1]);
if (!(x >= 0 && x <= 1)) {
return;
}
if (!(y >= 0 && y <= 1)) {
return;
}
var $img = this.$container.find('img');
var markerArea = this.markerArea;
$(".bt-focus-point-marker", this.$container).css({
top: Math.floor($img.height() * y) - markerArea,
left: Math.floor($img.width() * x) - markerArea
});
},
bindEvents: function () {
var self = this;
var markerArea = this.markerArea,
$marker = $(".bt-focus-point-marker", this.$container);
var $markerWrapper = (function () {
var $m = self.options.parentSelector ? $(".bt-focus-point-marker", this.$container).closest(self.options.parentSelector) : '';
if ($m && $m.length) {
return $m;
}
return $(".bt-focus-point-marker", this.$container);
})();
$marker.mousedown(function () {
self.isMouseDown = true;
});
$(".bt-focus-point").mousedown(function (e) {
self.isMouseDown = true;
$(document).trigger('mousemove.bt-focus-point', [e.pageX, e.pageY]);
});
$markerWrapper.mouseup(function () {
if (!self.isMouseDown) {
return;
}
self.isMouseDown = false;
var top = parseInt($marker.css('top').replace('px', '')),
left = parseInt($marker.css('left').replace('px', ''));
var topPercent = Math.ceil((top + markerArea) / (self.$container.find('img').height() / 100)),
leftPercent = Math.ceil((left + markerArea) / (self.$container.find('img').width() / 100));
self.handle_event('done', Math.min(leftPercent, 100), Math.min(topPercent, 100));
});
var offset = this.$container.offset();
if (!offset) {
throw 'cannot initialize image focus point';
}
$(document).on('mousemove.bt-focus-point', function (e, pageX, pageY) {
if (!self.isMouseDown) {
return;
}
pageX = pageX || e.pageX;
pageY = pageY || e.pageY;
var x = pageX - offset.left - markerArea,
y = pageY - offset.top - markerArea;
var $img = self.$container.find('img'),
box = {
top: $img.height() - markerArea,
left: $img.width() - markerArea,
};
y = Math.max(-markerArea, y);
y = Math.min(box.top, y);
x = Math.max(-markerArea, x);
x = Math.min(box.left, x);
$marker.css({
top: Math.floor(y),
left: Math.floor(x),
});
});
}
};
var mediaModal = {
initialized: false,
$context: '',
setup: function () {
if (!wp || !wp.media) {
return;
}
var self = this;
if (wp.media.featuredImage && wp.media.featuredImage.frame) {
this.initFeaturedImageModal();
}
if (wp.media.frames && self.isUploadPage()) {
$(document).one('click', ".media-frame-content li.attachment", function () {
setTimeout(function () {
self.initMediaLibraryModal();
self.initFocusPoint();
self.appendPreviewButton($(".attachment-actions .button", self.$context));
});
});
}
},
initFeaturedImageModal: function () {
var self = this;
var frame = wp.media.featuredImage.frame();
frame.on('ready', function () {
if (self.initialized) {
return;
}
self.$context = this.models[0].frame.$el;
self.initialized = true;
wp.Uploader.queue.on('reset', function () { // Upload completed
setTimeout(function () {
self.initFocusPoint();
self.appendPreviewLink();
});
});
});
frame.on('selection:toggle', function () { // Image selected
self.initFocusPoint();
self.appendPreviewLink();
});
frame.on('uploader:ready', function (a) { // Image selected
var interval = setInterval(function () {
if (self.initFocusPoint()) {
self.appendPreviewLink();
clearInterval(interval);
}
}, 200);
});
},
initMediaLibraryModal: function () {
var self = this;
wp.media.frames.edit.on('refresh', function (e) {
self.initFocusPoint();
self.appendPreviewButton($(".attachment-actions .button", self.$context));
});
},
initFocusPoint: function () {
return focusPoint.setup({
$el: $(".thumbnail-image img", this.$context),
parentSelector: ".media-frame-content",
grid: loc.get("grid"),
defaultPosition: this.getFocusPoint()
},
{
done: $.proxy(this.saveFocusPoint, this)
}
);
},
appendPreviewLink: function () {
var self = this,
link = "<div class='preview-thumbnails'><a href='#'>" + loc.translate('preview') + "</a></div>";
var $link = $(link).insertAfter($(".attachment-info .edit-attachment", this.$context));
$link.on('click', function (e) {
e.preventDefault();
self.previewModal();
});
},
appendPreviewButton: function ($afterEl) {
var self = this,
link = "<input type='button' class='button preview-images-btn' value='" + loc.translate('preview') + "'>";
var $link = $(link).insertAfter($afterEl);
$link.on('click', function (e) {
e.preventDefault();
self.previewModal();
});
},
previewModal: function () {
var self = this;
self.loading('start');
var ajax = previewData.get(self.attachmentId(), self.securityNonce());
ajax.done(function (res) {
if (!helper.isUndefined(res.data))
previewModal.setup(res.data);
});
ajax.always(function () {
self.loading('stop');
});
},
saveFocusPoint: function (topPercent, leftPercent) {
this.regenerateThumbnails(topPercent, leftPercent);
this.setFocusPoint(topPercent / 100, leftPercent / 100);
},
regenerateThumbnails: function (topPercent, leftPercent) {
var self = this;
var attachment_id = self.attachmentId();
self.loading('start');
var ajax = wp.ajax.post('bt-regenerate-thumbnails', {
thumbnail_id: attachment_id,
nonce: self.securityNonce(),
focus_x: topPercent,
focus_y: leftPercent,
});
ajax.done(function (res) {
if (!helper.isUndefined(res.message)) {
var $msgParent = self.isUploadPage() ? $(".thumbnail-image", self.$context) : $(".attachment-info", self.$context);
helper.notify($msgParent, res.message);
}
});
ajax.always(function () {
self.loading('stop');
});
},
loading: function (state) {
switch (state) {
case 'start':
UI.block($(".attachment-info", this.$context));
break;
case 'stop':
UI.unblock($(".attachment-info", this.$context));
break;
}
},
attachmentId: function () {
if (this.isUploadPage()) {
return $(".attachment-details", this.$context).data('id');
} else {
return $(".attachment.selected", this.$context).data('id');
}
},
isUploadPage: function () {
return $(document.body).hasClass('upload-php');
},
securityNonce: function () {
return $(".bt-regenerate-nonce", this.$context).val();
},
getFocusPoint: function () {
var $attachment = $(".attachment.selected", this.$context),
point = $attachment.data('focus-point');
return point ? point.split('-') : this.getDefaultFocusPoint();
},
setFocusPoint: function (top, left) {
$(".attachment.selected", this.$context).data("focus-point", top + "-" + left);
},
getDefaultFocusPoint: function () {
var point = $(".bt-focus-point-xy", this.$context).val(),
$img = $(".thumbnail-image img", this.$context);
return point && point.indexOf('-') > -1 ? point.split('-') : helper.defaultFocusPoint($img.width(), $img.height());
}
};
mediaModal.setup();
var mediaLibPage = {
initialized: false,
$context: '',
$img: '',
setup: function () {
if (!wp || !wp.media) {
return;
}
var $body = $(document.body);
this.$context = $body;
if (!$body.hasClass('post-type-attachment') || !$body.hasClass('post-php')) {
return
}
this.$img = $(".wp_attachment_image img.thumbnail", this.$context);
this.editAttachmentPage();
},
editAttachmentPage: function () {
this.initFocusPoint();
this.appendPreviewButton($(".wp_attachment_image .button", this.$context));
},
initFocusPoint: function () {
focusPoint.setup({
$el: this.$img,
parentSelector: "#wpbody-content",
grid: loc.get("grid"),
defaultPosition: this.getFocusPoint()
}, {
done: $.proxy(this.saveFocusPoint, this)
}
);
},
appendPreviewButton: function ($afterEl) {
var self = this,
link = "<input type='button' class='button preview-images-btn' value='" + loc.translate('preview') + "'>";
var $link = $(link).insertAfter($afterEl);
$link.on('click', function (e) {
e.preventDefault();
self.previewModal();
});
},
previewModal: function () {
var self = this;
self.loading('start');
var ajax = previewData.get(self.attachmentId(), self.securityNonce());
ajax.done(function (res) {
if (!helper.isUndefined(res.data))
previewModal.setup(res.data);
});
ajax.always(function () {
self.loading('stop');
});
},
saveFocusPoint: function (topPercent, leftPercent) {
this.regenerateThumbnails(topPercent, leftPercent);
this.setFocusPoint(topPercent / 100, leftPercent / 100);
},
regenerateThumbnails: function (topPercent, leftPercent) {
var self = this;
var attachment_id = self.attachmentId();
self.loading('start');
var ajax = wp.ajax.post('bt-regenerate-thumbnails', {
thumbnail_id: attachment_id,
nonce: self.securityNonce(),
focus_x: topPercent,
focus_y: leftPercent,
});
ajax.done(function (res) {
if (!helper.isUndefined(res.message)) {
helper.notify($(".wp_attachment_holder", this.$context), res.message);
}
});
ajax.always(function () {
self.loading('stop');
});
},
loading: function (state) {
switch (state) {
case 'start':
UI.block($(".wp_attachment_holder", this.$context));
break;
case 'stop':
UI.unblock($(".wp_attachment_holder", this.$context));
break;
}
},
attachmentId: function () {
return $("#post_ID", this.$context).val();
},
securityNonce: function () {
return $(".bt-regenerate-nonce", this.$context).val();
},
getFocusPoint: function () {
return this.getDefaultFocusPoint();
},
setFocusPoint: function (top, left) {
$(".attachment.selected", this.$context).data("focus-point", top + "-" + left);
},
getDefaultFocusPoint: function () {
var point = $(".bt-focus-point-xy", this.$context).val();
return point && point.indexOf('-') > -1 ? point.split('-') : helper.defaultFocusPoint(this.$img.width(), this.$img.height());
}
};
mediaLibPage.setup();
});
//# sourceMappingURL=better-smart-thumbnails.js.map
PK ���[�Ks assets/js/preview-data.jsnu �[��� var previewData = {
get: function (attachmentId, securityNonce) {
return $.Deferred(function (deferred) {
if (cache.exist(attachmentId, 'selector-data')) {
deferred.resolveWith(this, [cache.get(attachmentId, 'selector-data')]);
return;
}
var ajax = wp.ajax.post('bt-preview-thumbnails', {
thumbnail_id: attachmentId,
nonce: securityNonce
});
ajax.done(function (res) {
cache.add(attachmentId, res, 'selector-data');
deferred.resolveWith(this, [res]);
});
ajax.fail(function () {
deferred.rejectWith(this);
});
}).promise();
},
};PK ���[b^1pU pU &