emoji: Switch to 64px 256 color indexed sprite sheets.

This commit switches our emoji infrastructure to use 256 color indexed
64px spritesheets. Earlier we were using non-indexed 32px spritesheets
which were blurry on high dpi displays. These indexed spritesheets not
only provide a crispier display but are also smaller in size.

This commit also removes the `emoji-datasource` package as a dependency
as all the data is now sourced from individual datasource packages.

Fixes: #7862.
This commit is contained in:
Harshit Bansal
2018-03-13 19:34:31 +00:00
committed by Tim Abbott
parent 81a1612cbd
commit 40958e0824
8 changed files with 119 additions and 127 deletions

View File

@@ -33,7 +33,7 @@ zrequire('util');
var image_stub = false; var image_stub = false;
class Image { class Image {
set src(data) { set src(data) {
assert.equal(data, '/static/generated/emoji/sheet_google_32.png'); assert.equal(data, '/static/generated/emoji/sheet_google_64.png');
image_stub = true; image_stub = true;
} }
} }

View File

@@ -9,7 +9,6 @@
"@types/webpack": "3.0.13", "@types/webpack": "3.0.13",
"blueimp-md5": "2.10.0", "blueimp-md5": "2.10.0",
"clipboard": "1.5.16", "clipboard": "1.5.16",
"emoji-datasource": "3.0.0",
"emoji-datasource-apple": "3.0.0", "emoji-datasource-apple": "3.0.0",
"emoji-datasource-emojione": "3.0.0", "emoji-datasource-emojione": "3.0.0",
"emoji-datasource-google": "3.0.0", "emoji-datasource-google": "3.0.0",

View File

@@ -272,14 +272,15 @@ def generate_sha1sum_emoji(zulip_path):
with open(file_path, 'rb') as reader: with open(file_path, 'rb') as reader:
sha.update(reader.read()) sha.update(reader.read())
# Take into account the version of `emoji-datasource` package while generating success stamp. # Take into account the version of `emoji-datasource-google` package
# while generating success stamp.
PACKAGE_FILE_PATH = os.path.join(zulip_path, 'package.json') PACKAGE_FILE_PATH = os.path.join(zulip_path, 'package.json')
with open(PACKAGE_FILE_PATH, 'r') as fp: with open(PACKAGE_FILE_PATH, 'r') as fp:
parsed_package_file = json.load(fp) parsed_package_file = json.load(fp)
dependency_data = parsed_package_file['dependencies'] dependency_data = parsed_package_file['dependencies']
if 'emoji-datasource' in dependency_data: if 'emoji-datasource-google' in dependency_data:
emoji_datasource_version = dependency_data['emoji-datasource'].encode('utf-8') emoji_datasource_version = dependency_data['emoji-datasource-google'].encode('utf-8')
else: else:
emoji_datasource_version = b"0" emoji_datasource_version = b"0"
sha.update(emoji_datasource_version) sha.update(emoji_datasource_version)

View File

@@ -85,7 +85,7 @@ exports.initialize = function initialize() {
// Load the sprite image in the background so that the browser // Load the sprite image in the background so that the browser
// can cache it for later use. // can cache it for later use.
var sprite = new Image(); var sprite = new Image();
sprite.src = '/static/generated/emoji/sheet_' + page_params.emojiset + '_32.png'; sprite.src = '/static/generated/emoji/sheet_' + page_params.emojiset + '_64.png';
}; };
exports.build_emoji_upload_widget = function () { exports.build_emoji_upload_widget = function () {

View File

@@ -143,7 +143,7 @@ exports.report_emojiset_change = function () {
$("#emoji-spritesheet").attr('href', sprite_css_href); $("#emoji-spritesheet").attr('href', sprite_css_href);
emoji_success(); emoji_success();
}; };
sprite.src = "/static/generated/emoji/sheet_" + page_params.emojiset + "_32.png"; sprite.src = "/static/generated/emoji/sheet_" + page_params.emojiset + "_64.png";
}; };
function _update_page() { function _update_page() {

View File

@@ -21,7 +21,6 @@ TARGET_EMOJI_DUMP = os.path.join(ZULIP_PATH, 'static', 'generated', 'emoji')
EMOJI_CACHE_PATH = "/srv/zulip-emoji-cache" EMOJI_CACHE_PATH = "/srv/zulip-emoji-cache"
EMOJI_SCRIPT_DIR_PATH = os.path.join(ZULIP_PATH, 'tools', 'setup', 'emoji') EMOJI_SCRIPT_DIR_PATH = os.path.join(ZULIP_PATH, 'tools', 'setup', 'emoji')
NODE_MODULES_PATH = os.path.join(ZULIP_PATH, 'node_modules') NODE_MODULES_PATH = os.path.join(ZULIP_PATH, 'node_modules')
EMOJI_DATA_PATH = os.path.join(NODE_MODULES_PATH, 'emoji-datasource')
EMOJI_CODES_FILE_TEMPLATE = """\ EMOJI_CODES_FILE_TEMPLATE = """\
var emoji_codes = (function () { var emoji_codes = (function () {
@@ -47,7 +46,7 @@ div.emoji,
span.emoji span.emoji
{ {
display: inline-block; display: inline-block;
background-image: url('sheet_%(emojiset)s_32.png'); background-image: url('sheet_%(emojiset)s_64.png');
-webkit-background-size: 4900%%; -webkit-background-size: 4900%%;
-moz-background-size: 4900%%; -moz-background-size: 4900%%;
background-size: 4900%%; background-size: 4900%%;
@@ -129,8 +128,9 @@ def setup_emoji_farm(cache_path, emoji_map, emoji_data):
run(['cp', '-RPp', zulip_image, target_emoji_farm], shell=True) run(['cp', '-RPp', zulip_image, target_emoji_farm], shell=True)
# Copy spritesheets. # Copy spritesheets.
input_sprite_sheet = os.path.join(EMOJI_DATA_PATH, 'img', emojiset, 'sheets', '32.png') emoji_data_path = os.path.join(NODE_MODULES_PATH, 'emoji-datasource-' + emojiset)
output_sprite_sheet = os.path.join(cache_path, 'sheet_%s_32.png' % (emojiset,)) input_sprite_sheet = os.path.join(emoji_data_path, 'img', emojiset, 'sheets-256', '64.png')
output_sprite_sheet = os.path.join(cache_path, 'sheet_%s_64.png' % (emojiset,))
run(['cp', input_sprite_sheet, output_sprite_sheet]) run(['cp', input_sprite_sheet, output_sprite_sheet])
generate_sprite_css_files(cache_path, emoji_map, emoji_data) generate_sprite_css_files(cache_path, emoji_map, emoji_data)
@@ -231,7 +231,9 @@ def dump_emojis(cache_path):
with open('emoji_map.json') as emoji_map_file: with open('emoji_map.json') as emoji_map_file:
emoji_map = ujson.load(emoji_map_file) emoji_map = ujson.load(emoji_map_file)
EMOJI_DATA_FILE_PATH = os.path.join(EMOJI_DATA_PATH, 'emoji.json') # `emoji.json` or any other data file can be sourced from any of the supported
# emojiset packages, they all contain the same data files.
EMOJI_DATA_FILE_PATH = os.path.join(NODE_MODULES_PATH, 'emoji-datasource-google', 'emoji.json')
with open(EMOJI_DATA_FILE_PATH) as emoji_data_file: with open(EMOJI_DATA_FILE_PATH) as emoji_data_file:
emoji_data = ujson.load(emoji_data_file) emoji_data = ujson.load(emoji_data_file)
emoji_catalog = generate_emoji_catalog(emoji_data) emoji_catalog = generate_emoji_catalog(emoji_data)

View File

@@ -8,4 +8,4 @@ ZULIP_VERSION = "1.7.1+git"
# Typically, adding a dependency only requires a minor version bump, and # Typically, adding a dependency only requires a minor version bump, and
# removing a dependency requires a major version bump. # removing a dependency requires a major version bump.
PROVISION_VERSION = '15.10' PROVISION_VERSION = '16.0'

218
yarn.lock
View File

@@ -30,8 +30,8 @@
resolved "https://registry.yarnpkg.com/@types/node/-/node-8.0.34.tgz#55f801fa2ddb2a40dd6dfc15ecfe1dde9c129fe9" resolved "https://registry.yarnpkg.com/@types/node/-/node-8.0.34.tgz#55f801fa2ddb2a40dd6dfc15ecfe1dde9c129fe9"
"@types/tapable@*": "@types/tapable@*":
version "0.2.4" version "1.0.0"
resolved "https://registry.yarnpkg.com/@types/tapable/-/tapable-0.2.4.tgz#8181a228da46185439300e600c5ae3b3b3982585" resolved "https://registry.yarnpkg.com/@types/tapable/-/tapable-1.0.0.tgz#b76254453021be05681f6213416766bac9afb99c"
"@types/uglify-js@*": "@types/uglify-js@*":
version "2.6.30" version "2.6.30"
@@ -71,7 +71,7 @@ abbrev@1.0.x:
version "1.0.9" version "1.0.9"
resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.0.9.tgz#91b4792588a7738c25f35dd6f63752a2f8776135" resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.0.9.tgz#91b4792588a7738c25f35dd6f63752a2f8776135"
accepts@~1.3.4: accepts@~1.3.4, accepts@~1.3.5:
version "1.3.5" version "1.3.5"
resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.5.tgz#eb777df6011723a3b14e8a72c0805c8e86746bd2" resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.5.tgz#eb777df6011723a3b14e8a72c0805c8e86746bd2"
dependencies: dependencies:
@@ -983,14 +983,18 @@ colormap@^2.1.0:
dependencies: dependencies:
lerp "^1.0.3" lerp "^1.0.3"
colors@^1.0.3, colors@^1.1.2, colors@~1.1.2: colors@^1.0.3, colors@^1.1.2:
version "1.1.2" version "1.2.1"
resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63" resolved "https://registry.yarnpkg.com/colors/-/colors-1.2.1.tgz#f4a3d302976aaf042356ba1ade3b1a2c62d9d794"
colors@~0.6.0-1: colors@~0.6.0-1:
version "0.6.2" version "0.6.2"
resolved "https://registry.yarnpkg.com/colors/-/colors-0.6.2.tgz#2423fe6678ac0c5dae8852e5d0e5be08c997abcc" resolved "https://registry.yarnpkg.com/colors/-/colors-0.6.2.tgz#2423fe6678ac0c5dae8852e5d0e5be08c997abcc"
colors@~1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63"
combined-stream@1.0.6, combined-stream@^1.0.5, combined-stream@~1.0.5: combined-stream@1.0.6, combined-stream@^1.0.5, combined-stream@~1.0.5:
version "1.0.6" version "1.0.6"
resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.6.tgz#723e7df6e801ac5613113a7e445a9b69cb632818" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.6.tgz#723e7df6e801ac5613113a7e445a9b69cb632818"
@@ -1269,8 +1273,7 @@ d3-queue@1:
resolved "https://registry.yarnpkg.com/d3-queue/-/d3-queue-1.2.3.tgz#143a701cfa65fe021292f321c10d14e98abd491b" resolved "https://registry.yarnpkg.com/d3-queue/-/d3-queue-1.2.3.tgz#143a701cfa65fe021292f321c10d14e98abd491b"
d3-queue@2: d3-queue@2:
version "2.0.3" version "0.0.0"
resolved "https://registry.yarnpkg.com/d3-queue/-/d3-queue-2.0.3.tgz#07fbda3acae5358a9c5299aaf880adf0953ed2c2"
d3@3, d3@^3.5.12: d3@3, d3@^3.5.12:
version "3.5.17" version "3.5.17"
@@ -1391,7 +1394,7 @@ depd@1.1.1:
version "1.1.1" version "1.1.1"
resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.1.tgz#5783b4e1c459f06fa5ca27f991f3d06e7a310359" resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.1.tgz#5783b4e1c459f06fa5ca27f991f3d06e7a310359"
depd@~1.1.1: depd@~1.1.1, depd@~1.1.2:
version "1.1.2" version "1.1.2"
resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9"
@@ -1548,15 +1551,11 @@ emoji-datasource-twitter@3.0.0:
version "3.0.0" version "3.0.0"
resolved "https://registry.yarnpkg.com/emoji-datasource-twitter/-/emoji-datasource-twitter-3.0.0.tgz#4bbe192368740c72c83c4924c2ef497adec1a431" resolved "https://registry.yarnpkg.com/emoji-datasource-twitter/-/emoji-datasource-twitter-3.0.0.tgz#4bbe192368740c72c83c4924c2ef497adec1a431"
emoji-datasource@3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/emoji-datasource/-/emoji-datasource-3.0.0.tgz#3c46c5aa4c39bb7a0c8e6877ae02cc94dbc1b12f"
emojis-list@^2.0.0: emojis-list@^2.0.0:
version "2.1.0" version "2.1.0"
resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389"
encodeurl@~1.0.1: encodeurl@~1.0.2:
version "1.0.2" version "1.0.2"
resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59"
@@ -1614,8 +1613,8 @@ es-to-primitive@^1.1.1:
is-symbol "^1.0.1" is-symbol "^1.0.1"
es5-ext@^0.10.14, es5-ext@^0.10.35, es5-ext@^0.10.9, es5-ext@~0.10.14: es5-ext@^0.10.14, es5-ext@^0.10.35, es5-ext@^0.10.9, es5-ext@~0.10.14:
version "0.10.39" version "0.10.40"
resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.39.tgz#fca21b67559277ca4ac1a1ed7048b107b6f76d87" resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.40.tgz#ab3d2179b943008c5e9ef241beb25ef41424c774"
dependencies: dependencies:
es6-iterator "~2.0.3" es6-iterator "~2.0.3"
es6-symbol "~3.1.1" es6-symbol "~3.1.1"
@@ -1731,9 +1730,9 @@ escope@^3.6.0:
esrecurse "^4.1.0" esrecurse "^4.1.0"
estraverse "^4.1.1" estraverse "^4.1.1"
eslint-plugin-empty-returns@^1.0.1: eslint-plugin-empty-returns@1.0.2:
version "1.0.1" version "1.0.2"
resolved "https://registry.yarnpkg.com/eslint-plugin-empty-returns/-/eslint-plugin-empty-returns-1.0.1.tgz#ca19faa501e114812577db68ec6882ea48c40a27" resolved "https://registry.yarnpkg.com/eslint-plugin-empty-returns/-/eslint-plugin-empty-returns-1.0.2.tgz#9f9d4b10215a25c719f32675f44ffe5c80963147"
eslint@3.9.1: eslint@3.9.1:
version "3.9.1" version "3.9.1"
@@ -1906,10 +1905,10 @@ expose-loader@0.7.3:
resolved "https://registry.yarnpkg.com/expose-loader/-/expose-loader-0.7.3.tgz#35fbd3659789e4faa81f59de8b7e9fc39e466d51" resolved "https://registry.yarnpkg.com/expose-loader/-/expose-loader-0.7.3.tgz#35fbd3659789e4faa81f59de8b7e9fc39e466d51"
express@^4.13.3: express@^4.13.3:
version "4.16.2" version "4.16.3"
resolved "https://registry.yarnpkg.com/express/-/express-4.16.2.tgz#e35c6dfe2d64b7dca0a5cd4f21781be3299e076c" resolved "https://registry.yarnpkg.com/express/-/express-4.16.3.tgz#6af8a502350db3246ecc4becf6b5a34d22f7ed53"
dependencies: dependencies:
accepts "~1.3.4" accepts "~1.3.5"
array-flatten "1.1.1" array-flatten "1.1.1"
body-parser "1.18.2" body-parser "1.18.2"
content-disposition "0.5.2" content-disposition "0.5.2"
@@ -1917,26 +1916,26 @@ express@^4.13.3:
cookie "0.3.1" cookie "0.3.1"
cookie-signature "1.0.6" cookie-signature "1.0.6"
debug "2.6.9" debug "2.6.9"
depd "~1.1.1" depd "~1.1.2"
encodeurl "~1.0.1" encodeurl "~1.0.2"
escape-html "~1.0.3" escape-html "~1.0.3"
etag "~1.8.1" etag "~1.8.1"
finalhandler "1.1.0" finalhandler "1.1.1"
fresh "0.5.2" fresh "0.5.2"
merge-descriptors "1.0.1" merge-descriptors "1.0.1"
methods "~1.1.2" methods "~1.1.2"
on-finished "~2.3.0" on-finished "~2.3.0"
parseurl "~1.3.2" parseurl "~1.3.2"
path-to-regexp "0.1.7" path-to-regexp "0.1.7"
proxy-addr "~2.0.2" proxy-addr "~2.0.3"
qs "6.5.1" qs "6.5.1"
range-parser "~1.2.0" range-parser "~1.2.0"
safe-buffer "5.1.1" safe-buffer "5.1.1"
send "0.16.1" send "0.16.2"
serve-static "1.13.1" serve-static "1.13.2"
setprototypeof "1.1.0" setprototypeof "1.1.0"
statuses "~1.3.1" statuses "~1.4.0"
type-is "~1.6.15" type-is "~1.6.16"
utils-merge "1.0.1" utils-merge "1.0.1"
vary "~1.1.2" vary "~1.1.2"
@@ -2096,16 +2095,16 @@ filtered-vector@^1.2.1:
binary-search-bounds "^1.0.0" binary-search-bounds "^1.0.0"
cubic-hermite "^1.0.0" cubic-hermite "^1.0.0"
finalhandler@1.1.0: finalhandler@1.1.1:
version "1.1.0" version "1.1.1"
resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.0.tgz#ce0b6855b45853e791b2fcc680046d88253dd7f5" resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.1.tgz#eebf4ed840079c83f4249038c9d703008301b105"
dependencies: dependencies:
debug "2.6.9" debug "2.6.9"
encodeurl "~1.0.1" encodeurl "~1.0.2"
escape-html "~1.0.3" escape-html "~1.0.3"
on-finished "~2.3.0" on-finished "~2.3.0"
parseurl "~1.3.2" parseurl "~1.3.2"
statuses "~1.3.1" statuses "~1.4.0"
unpipe "~1.0.0" unpipe "~1.0.0"
find-up@^1.0.0: find-up@^1.0.0:
@@ -3259,14 +3258,17 @@ inflight@^1.0.4:
once "^1.3.0" once "^1.3.0"
wrappy "1" wrappy "1"
inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3: inherits@2:
version "2.0.3" version "0.0.0"
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
inherits@2.0.1: inherits@2.0.1:
version "2.0.1" version "2.0.1"
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1"
inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3:
version "2.0.3"
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
ini@~1.3.0: ini@~1.3.0:
version "1.3.5" version "1.3.5"
resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927"
@@ -3792,12 +3794,6 @@ lazy-cache@^1.0.3:
version "1.0.4" version "1.0.4"
resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e" resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e"
lazy-cache@^2.0.2:
version "2.0.2"
resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-2.0.2.tgz#b9190a4f913354694840859f8a8f7084d8822264"
dependencies:
set-getter "^0.1.0"
lcid@^1.0.0: lcid@^1.0.0:
version "1.0.0" version "1.0.0"
resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835"
@@ -3998,13 +3994,13 @@ mapbox-gl-function@^1.2.1:
version "1.3.0" version "1.3.0"
resolved "https://registry.yarnpkg.com/mapbox-gl-function/-/mapbox-gl-function-1.3.0.tgz#cee3d95750c189d45e83ab41a0a57fc2a8a509bc" resolved "https://registry.yarnpkg.com/mapbox-gl-function/-/mapbox-gl-function-1.3.0.tgz#cee3d95750c189d45e83ab41a0a57fc2a8a509bc"
mapbox-gl-shaders@mapbox/mapbox-gl-shaders#de2ab007455aa2587c552694c68583f94c9f2747: "mapbox-gl-shaders@github:mapbox/mapbox-gl-shaders#de2ab007455aa2587c552694c68583f94c9f2747":
version "1.0.0" version "1.0.0"
resolved "https://codeload.github.com/mapbox/mapbox-gl-shaders/tar.gz/de2ab007455aa2587c552694c68583f94c9f2747" resolved "https://codeload.github.com/mapbox/mapbox-gl-shaders/tar.gz/de2ab007455aa2587c552694c68583f94c9f2747"
dependencies: dependencies:
brfs "^1.4.0" brfs "^1.4.0"
mapbox-gl-style-spec@mapbox/mapbox-gl-style-spec#83b1a3e5837d785af582efd5ed1a212f2df6a4ae: "mapbox-gl-style-spec@github:mapbox/mapbox-gl-style-spec#83b1a3e5837d785af582efd5ed1a212f2df6a4ae":
version "8.8.0" version "8.8.0"
resolved "https://codeload.github.com/mapbox/mapbox-gl-style-spec/tar.gz/83b1a3e5837d785af582efd5ed1a212f2df6a4ae" resolved "https://codeload.github.com/mapbox/mapbox-gl-style-spec/tar.gz/83b1a3e5837d785af582efd5ed1a212f2df6a4ae"
dependencies: dependencies:
@@ -4601,8 +4597,8 @@ object.pick@^1.3.0:
isobject "^3.0.1" isobject "^3.0.1"
obuf@^1.0.0, obuf@^1.1.1: obuf@^1.0.0, obuf@^1.1.1:
version "1.1.1" version "1.1.2"
resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.1.tgz#104124b6c602c6796881a042541d36db43a5264e" resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e"
on-finished@~2.3.0: on-finished@~2.3.0:
version "2.3.0" version "2.3.0"
@@ -5002,7 +4998,7 @@ protocol-buffers-schema@^2.0.2:
version "2.2.0" version "2.2.0"
resolved "https://registry.yarnpkg.com/protocol-buffers-schema/-/protocol-buffers-schema-2.2.0.tgz#d29c6cd73fb655978fb6989691180db844119f61" resolved "https://registry.yarnpkg.com/protocol-buffers-schema/-/protocol-buffers-schema-2.2.0.tgz#d29c6cd73fb655978fb6989691180db844119f61"
proxy-addr@~2.0.2: proxy-addr@~2.0.3:
version "2.0.3" version "2.0.3"
resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.3.tgz#355f262505a621646b3130a728eb647e22055341" resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.3.tgz#355f262505a621646b3130a728eb647e22055341"
dependencies: dependencies:
@@ -5132,8 +5128,8 @@ raw-loader@~0.5.1:
resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-0.5.1.tgz#0c3d0beaed8a01c966d9787bf778281252a979aa" resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-0.5.1.tgz#0c3d0beaed8a01c966d9787bf778281252a979aa"
rc@^1.1.7: rc@^1.1.7:
version "1.2.5" version "1.2.6"
resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.5.tgz#275cd687f6e3b36cc756baa26dfee80a790301fd" resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.6.tgz#eb18989c6d4f4f162c399f79ddd29f3835568092"
dependencies: dependencies:
deep-extend "~0.4.0" deep-extend "~0.4.0"
ini "~1.3.0" ini "~1.3.0"
@@ -5275,32 +5271,8 @@ request-progress@~2.0.1:
dependencies: dependencies:
throttleit "^1.0.0" throttleit "^1.0.0"
request@2, request@^2.39.0, request@^2.55.0, request@^2.79.0: request@2:
version "2.83.0" version "0.0.0"
resolved "https://registry.yarnpkg.com/request/-/request-2.83.0.tgz#ca0b65da02ed62935887808e6f510381034e3356"
dependencies:
aws-sign2 "~0.7.0"
aws4 "^1.6.0"
caseless "~0.12.0"
combined-stream "~1.0.5"
extend "~3.0.1"
forever-agent "~0.6.1"
form-data "~2.3.1"
har-validator "~5.0.3"
hawk "~6.0.2"
http-signature "~1.2.0"
is-typedarray "~1.0.0"
isstream "~0.1.2"
json-stringify-safe "~5.0.1"
mime-types "~2.1.17"
oauth-sign "~0.8.2"
performance-now "^2.1.0"
qs "~6.5.1"
safe-buffer "^5.1.1"
stringstream "~0.0.5"
tough-cookie "~2.3.3"
tunnel-agent "^0.6.0"
uuid "^3.1.0"
request@2.81.0: request@2.81.0:
version "2.81.0" version "2.81.0"
@@ -5329,6 +5301,33 @@ request@2.81.0:
tunnel-agent "^0.6.0" tunnel-agent "^0.6.0"
uuid "^3.0.0" uuid "^3.0.0"
request@^2.39.0, request@^2.55.0, request@^2.79.0:
version "2.85.0"
resolved "https://registry.yarnpkg.com/request/-/request-2.85.0.tgz#5a03615a47c61420b3eb99b7dba204f83603e1fa"
dependencies:
aws-sign2 "~0.7.0"
aws4 "^1.6.0"
caseless "~0.12.0"
combined-stream "~1.0.5"
extend "~3.0.1"
forever-agent "~0.6.1"
form-data "~2.3.1"
har-validator "~5.0.3"
hawk "~6.0.2"
http-signature "~1.2.0"
is-typedarray "~1.0.0"
isstream "~0.1.2"
json-stringify-safe "~5.0.1"
mime-types "~2.1.17"
oauth-sign "~0.8.2"
performance-now "^2.1.0"
qs "~6.5.1"
safe-buffer "^5.1.1"
stringstream "~0.0.5"
tough-cookie "~2.3.3"
tunnel-agent "^0.6.0"
uuid "^3.1.0"
request@~2.79.0: request@~2.79.0:
version "2.79.0" version "2.79.0"
resolved "https://registry.yarnpkg.com/request/-/request-2.79.0.tgz#4dfe5bf6be8b8cdc37fcf93e04b65577722710de" resolved "https://registry.yarnpkg.com/request/-/request-2.79.0.tgz#4dfe5bf6be8b8cdc37fcf93e04b65577722710de"
@@ -5428,7 +5427,10 @@ right-now@^1.0.0:
version "1.0.0" version "1.0.0"
resolved "https://registry.yarnpkg.com/right-now/-/right-now-1.0.0.tgz#6e89609deebd7dcdaf8daecc9aea39cf585a0918" resolved "https://registry.yarnpkg.com/right-now/-/right-now-1.0.0.tgz#6e89609deebd7dcdaf8daecc9aea39cf585a0918"
rimraf@2, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.6.1: rimraf@2:
version "0.0.0"
rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.6.1:
version "2.6.2" version "2.6.2"
resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36"
dependencies: dependencies:
@@ -5571,14 +5573,14 @@ semver@~5.3.0:
version "5.3.0" version "5.3.0"
resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f"
send@0.16.1: send@0.16.2:
version "0.16.1" version "0.16.2"
resolved "https://registry.yarnpkg.com/send/-/send-0.16.1.tgz#a70e1ca21d1382c11d0d9f6231deb281080d7ab3" resolved "https://registry.yarnpkg.com/send/-/send-0.16.2.tgz#6ecca1e0f8c156d141597559848df64730a6bbc1"
dependencies: dependencies:
debug "2.6.9" debug "2.6.9"
depd "~1.1.1" depd "~1.1.2"
destroy "~1.0.4" destroy "~1.0.4"
encodeurl "~1.0.1" encodeurl "~1.0.2"
escape-html "~1.0.3" escape-html "~1.0.3"
etag "~1.8.1" etag "~1.8.1"
fresh "0.5.2" fresh "0.5.2"
@@ -5587,7 +5589,7 @@ send@0.16.1:
ms "2.0.0" ms "2.0.0"
on-finished "~2.3.0" on-finished "~2.3.0"
range-parser "~1.2.0" range-parser "~1.2.0"
statuses "~1.3.1" statuses "~1.4.0"
serve-index@^1.7.2: serve-index@^1.7.2:
version "1.9.1" version "1.9.1"
@@ -5601,25 +5603,19 @@ serve-index@^1.7.2:
mime-types "~2.1.17" mime-types "~2.1.17"
parseurl "~1.3.2" parseurl "~1.3.2"
serve-static@1.13.1: serve-static@1.13.2:
version "1.13.1" version "1.13.2"
resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.13.1.tgz#4c57d53404a761d8f2e7c1e8a18a47dbf278a719" resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.13.2.tgz#095e8472fd5b46237db50ce486a43f4b86c6cec1"
dependencies: dependencies:
encodeurl "~1.0.1" encodeurl "~1.0.2"
escape-html "~1.0.3" escape-html "~1.0.3"
parseurl "~1.3.2" parseurl "~1.3.2"
send "0.16.1" send "0.16.2"
set-blocking@^2.0.0, set-blocking@~2.0.0: set-blocking@^2.0.0, set-blocking@~2.0.0:
version "2.0.0" version "2.0.0"
resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7"
set-getter@^0.1.0:
version "0.1.0"
resolved "https://registry.yarnpkg.com/set-getter/-/set-getter-0.1.0.tgz#d769c182c9d5a51f409145f2fba82e5e86e80376"
dependencies:
to-object-path "^0.3.0"
set-immediate-shim@^1.0.1: set-immediate-shim@^1.0.1:
version "1.0.1" version "1.0.1"
resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61"
@@ -5773,8 +5769,8 @@ snapdragon-util@^3.0.1:
kind-of "^3.2.0" kind-of "^3.2.0"
snapdragon@^0.8.1: snapdragon@^0.8.1:
version "0.8.1" version "0.8.2"
resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.1.tgz#e12b5487faded3e3dea0ac91e9400bf75b401370" resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d"
dependencies: dependencies:
base "^0.11.1" base "^0.11.1"
debug "^2.2.0" debug "^2.2.0"
@@ -5783,7 +5779,7 @@ snapdragon@^0.8.1:
map-cache "^0.2.2" map-cache "^0.2.2"
source-map "^0.5.6" source-map "^0.5.6"
source-map-resolve "^0.5.0" source-map-resolve "^0.5.0"
use "^2.0.0" use "^3.1.0"
sntp@1.x.x: sntp@1.x.x:
version "1.0.9" version "1.0.9"
@@ -5963,8 +5959,8 @@ sprintf-js@~1.0.2:
resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
sshpk@^1.7.0: sshpk@^1.7.0:
version "1.13.1" version "1.14.1"
resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.13.1.tgz#512df6da6287144316dc4c18fe1cf1d940739be3" resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.14.1.tgz#130f5975eddad963f1d56f92b9ac6c51fa9f83eb"
dependencies: dependencies:
asn1 "~0.2.3" asn1 "~0.2.3"
assert-plus "^1.0.0" assert-plus "^1.0.0"
@@ -6034,14 +6030,10 @@ static-module@^2.2.0:
static-eval "^2.0.0" static-eval "^2.0.0"
through2 "~2.0.3" through2 "~2.0.3"
"statuses@>= 1.3.1 < 2": "statuses@>= 1.3.1 < 2", statuses@~1.4.0:
version "1.4.0" version "1.4.0"
resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087" resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087"
statuses@~1.3.1:
version "1.3.1"
resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e"
stream-browserify@^2.0.1: stream-browserify@^2.0.1:
version "2.0.1" version "2.0.1"
resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.1.tgz#66266ee5f9bdb9940a4e4514cafb43bb71e5c9db" resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.1.tgz#66266ee5f9bdb9940a4e4514cafb43bb71e5c9db"
@@ -6570,7 +6562,7 @@ type-check@~0.3.2:
dependencies: dependencies:
prelude-ls "~1.1.2" prelude-ls "~1.1.2"
type-is@~1.6.15: type-is@~1.6.15, type-is@~1.6.16:
version "1.6.16" version "1.6.16"
resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.16.tgz#f89ce341541c672b25ee7ae3c73dee3b2be50194" resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.16.tgz#f89ce341541c672b25ee7ae3c73dee3b2be50194"
dependencies: dependencies:
@@ -6709,13 +6701,11 @@ url@^0.11.0:
punycode "1.3.2" punycode "1.3.2"
querystring "0.2.0" querystring "0.2.0"
use@^2.0.0: use@^3.1.0:
version "2.0.2" version "3.1.0"
resolved "https://registry.yarnpkg.com/use/-/use-2.0.2.tgz#ae28a0d72f93bf22422a18a2e379993112dec8e8" resolved "https://registry.yarnpkg.com/use/-/use-3.1.0.tgz#14716bf03fdfefd03040aef58d8b4b85f3a7c544"
dependencies: dependencies:
define-property "^0.2.5" kind-of "^6.0.2"
isobject "^3.0.0"
lazy-cache "^2.0.2"
user-home@^2.0.0: user-home@^2.0.0:
version "2.0.0" version "2.0.0"
@@ -6849,8 +6839,8 @@ watchpack@^1.3.1:
neo-async "^2.5.0" neo-async "^2.5.0"
wbuf@^1.1.0, wbuf@^1.7.2: wbuf@^1.1.0, wbuf@^1.7.2:
version "1.7.2" version "1.7.3"
resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.2.tgz#d697b99f1f59512df2751be42769c1580b5801fe" resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.3.tgz#c1d8d149316d3ea852848895cb6a0bfe887b87df"
dependencies: dependencies:
minimalistic-assert "^1.0.0" minimalistic-assert "^1.0.0"