Socket
Socket
Sign inDemoInstall

webfontloader

Package Overview
Dependencies
Maintainers
1
Versions
34
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

webfontloader - npm Package Compare versions

Comparing version 1.5.21 to 1.6.0

2

package.json
{
"name": "webfontloader",
"version": "1.5.21",
"version": "1.6.0",
"description": "Web Font Loader gives you added control when using linked fonts via @font-face.",

@@ -5,0 +5,0 @@ "main": "webfontloader.js",

@@ -5,4 +5,2 @@ describe('FontWatcher', function () {

Font = webfont.Font,
UserAgent = webfont.UserAgent,
BrowserInfo = webfont.BrowserInfo,
DomHelper = webfont.DomHelper,

@@ -18,16 +16,5 @@ Version = webfont.Version,

font4 = null,
userAgent = null,
activeFonts = [];
beforeEach(function () {
userAgent = new UserAgent(
'Firefox',
new Version(3, 6),
'Gecko',
new Version(1, 9, 3),
'Macintosh',
new Version(10, 6),
undefined,
new BrowserInfo(true, false, false, false)
);
font1 = new Font('font1');

@@ -71,3 +58,3 @@ font2 = new Font('font2');

activeFonts = [];
var fontWatcher = new FontWatcher(userAgent, domHelper, eventDispatcher);
var fontWatcher = new FontWatcher(domHelper, eventDispatcher);

@@ -80,3 +67,3 @@ fontWatcher.watchFonts([], {}, null, true);

activeFonts = [];
var fontWatcher = new FontWatcher(userAgent, domHelper, eventDispatcher);
var fontWatcher = new FontWatcher(domHelper, eventDispatcher);

@@ -91,3 +78,3 @@ fontWatcher.watchFonts([], {}, null, false);

activeFonts = [font1];
var fontWatcher = new FontWatcher(userAgent, domHelper, eventDispatcher);
var fontWatcher = new FontWatcher(domHelper, eventDispatcher);

@@ -104,3 +91,3 @@ fontWatcher.watchFonts([font1], {}, null, false);

activeFonts = [font1];
var fontWatcher = new FontWatcher(userAgent, domHelper, eventDispatcher);
var fontWatcher = new FontWatcher(domHelper, eventDispatcher);

@@ -119,3 +106,3 @@ fontWatcher.watchFonts([font1], {}, null, true);

activeFonts = [];
var fontWatcher = new FontWatcher(userAgent, domHelper, eventDispatcher);
var fontWatcher = new FontWatcher(domHelper, eventDispatcher);

@@ -134,3 +121,3 @@ fontWatcher.watchFonts([font1], {}, null, true);

activeFonts = [font1, font2, font3];
var fontWatcher = new FontWatcher(userAgent, domHelper, eventDispatcher);
var fontWatcher = new FontWatcher(domHelper, eventDispatcher);

@@ -149,3 +136,3 @@ fontWatcher.watchFonts([font1, font2, font3], {}, null, true);

activeFonts = [];
var fontWatcher = new FontWatcher(userAgent, domHelper, eventDispatcher);
var fontWatcher = new FontWatcher(domHelper, eventDispatcher);

@@ -164,3 +151,3 @@ fontWatcher.watchFonts([font1, font2, font3], {}, null, true);

activeFonts = [font1, font3];
var fontWatcher = new FontWatcher(userAgent, domHelper, eventDispatcher);
var fontWatcher = new FontWatcher(domHelper, eventDispatcher);

@@ -194,3 +181,3 @@ fontWatcher.watchFonts([font1, font2, font3], {}, null, true);

activeFonts = [font5, font6];
var fontWatcher = new FontWatcher(userAgent, domHelper, eventDispatcher);
var fontWatcher = new FontWatcher(domHelper, eventDispatcher);

@@ -223,3 +210,3 @@ fontWatcher.watchFonts([font5, font6, font7, font8, font9], {}, null, true);

var fontWatcher = new FontWatcher(userAgent, domHelper, eventDispatcher);
var fontWatcher = new FontWatcher(domHelper, eventDispatcher);

@@ -242,3 +229,3 @@ fontWatcher.watchFonts([font1, font2, font3, font4], {

it('should pass on the timeout to FontWatchRunner', function () {
var fontWatcher = new FontWatcher(userAgent, domHelper, eventDispatcher, 4000);
var fontWatcher = new FontWatcher(domHelper, eventDispatcher, 4000);

@@ -245,0 +232,0 @@ fontWatcher.watchFonts([font1], {}, null, true);

@@ -5,3 +5,2 @@ describe('FontWatchRunner', function () {

BrowserInfo = webfont.BrowserInfo,
UserAgentParser = webfont.UserAgentParser,
DomHelper = webfont.DomHelper,

@@ -13,3 +12,2 @@ FontRuler = webfont.FontRuler;

inactiveCallback = null,
userAgent = null,
nullFont = null,

@@ -21,4 +19,2 @@ sourceSansA = null,

beforeEach(function () {
var userAgentParser = new UserAgentParser(window.navigator.userAgent, window.document);
domHelper = new DomHelper(window);

@@ -29,4 +25,2 @@

userAgent = userAgentParser.parse();
nullFont = new Font('__webfontloader_test__');

@@ -40,3 +34,3 @@ sourceSansA = new Font('SourceSansA');

var fontWatchRunner = new FontWatchRunner(activeCallback, inactiveCallback,
domHelper, nullFont, userAgent.getBrowserInfo(), 500, {});
domHelper, nullFont, 500, {});

@@ -58,3 +52,3 @@ runs(function () {

var fontWatchRunner = new FontWatchRunner(activeCallback, inactiveCallback,
domHelper, sourceSansA, userAgent.getBrowserInfo(), 5000),
domHelper, sourceSansA, 5000),
ruler = new FontRuler(domHelper, 'abcdef'),

@@ -101,3 +95,3 @@ monospace = new Font('monospace'),

var fontWatchRunner = new FontWatchRunner(activeCallback, inactiveCallback,
domHelper, elena, userAgent.getBrowserInfo(), 500, {});
domHelper, elena, 500, {});

@@ -119,3 +113,3 @@ runs(function () {

var fontWatchRunner = new FontWatchRunner(activeCallback, inactiveCallback,
domHelper, sourceSansB, userAgent.getBrowserInfo(), 5000),
domHelper, sourceSansB, 5000),
ruler = new FontRuler(domHelper, 'abcdef'),

@@ -122,0 +116,0 @@ monospace = new Font('monospace'),

describe('NativeFontWatchRunner', function () {
var NativeFontWatchRunner = webfont.NativeFontWatchRunner,
Font = webfont.Font,
UserAgentParser = webfont.UserAgentParser,
DomHelper = webfont.DomHelper,

@@ -11,3 +10,2 @@ FontRuler = webfont.FontRuler;

inactiveCallback = null,
userAgent = null,
nullFont = null,

@@ -23,9 +21,5 @@ sourceSansC = null,

var userAgentParser = new UserAgentParser(window.navigator.userAgent, window.document);
nullFont = new Font('__webfontloader_test_3__');
sourceSansC = new Font('SourceSansC');
elena = new Font('Elena');
userAgent = userAgentParser.parse();
});

@@ -32,0 +26,0 @@

describe('WebFont', function () {
var WebFont = webfont.WebFont,
Font = webfont.Font;
UserAgent = webfont.UserAgent,
FontWatchRunner = webfont.FontWatchRunner,
NativeFontWatchRunner = webfont.NativeFontWatchRunner,
BrowserInfo = webfont.BrowserInfo,
Version = webfont.Version,
Font = webfont.Font,
FontModuleLoader = webfont.FontModuleLoader,
fontModuleLoader = null,
userAgent = null;
fontModuleLoader = null;
beforeEach(function () {
userAgent = new UserAgent(
'Firefox',
new Version(3, 6),
'3.6',
'Gecko',
new Version(1, 9, 2),
'1.9.2',
'Macintosh',
new Version(10, 6),
'10.6',
undefined,
new BrowserInfo(true, false, false, false)
);
fontModuleLoader = new FontModuleLoader();
});
describe('font load', function () {
var font = null,
testModule = null;
beforeEach(function () {
font = new WebFont(window);
font.addModule('test', function (conf, domHelper) {
testModule = new function () {
this.conf = conf;
this.domHelper = domHelper;
this.loadCalled = true;
this.supportUserAgentCalled = false;
};
testModule.load = function (onReady) {
this.loadCalled = true;
onReady([]);
};
testModule.supportUserAgent = function (ua, support) {
this.supportUserAgentCalled = true;
support(true);
};
return testModule;
});
});
it('should not start loading', function () {
expect(font.moduleFailedLoading_).toEqual(0);
expect(font.moduleLoading_).toEqual(0);
});
it('should fail to load a module', function () {
var loading = jasmine.createSpy('loading');
font.load({
test: {
somedata: 'in french a cow says meuh'
},
loading: loading
});
expect(font.moduleFailedLoading_).toEqual(1);
expect(font.moduleLoading_).toEqual(0);
expect(testModule).not.toBeNull();
expect(testModule.conf).not.toBeUndefined();
expect(testModule.conf).not.toBeNull();
expect(testModule.domHelper).not.toBeNull();
expect(testModule.domHelper).not.toBeUndefined();
expect(testModule.domHelper.getMainWindow()).toEqual(window);
expect(testModule.domHelper.getLoadWindow()).toEqual(window);
expect(testModule.conf.somedata).toEqual('in french a cow says meuh');
expect(testModule.loadCalled).toBe(true);
expect(testModule.supportUserAgentCalled).toBe(true);
expect(loading).toHaveBeenCalled();
});
});
describe('font load with context', function () {

@@ -98,5 +19,2 @@ var font = null,

fakeMainWindow = {
navigator: {
userAgent: 'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_8; en-US) AppleWebKit/533.2 (KHTML, like Gecko) Chrome/5.0.342.9 Safari/533.2'
},
document: {}

@@ -111,5 +29,4 @@ };

};
testModule.load = function () {};
testModule.supportUserAgent = function (ua, support) {
support(true);
testModule.load = function (onReady) {
onReady([]);
};

@@ -151,3 +68,2 @@

this.conf = conf;
this.fonts = [];
};

@@ -171,13 +87,9 @@

testModule.supportUserAgent = function (userAgent, support) {
testModule.load = function (onReady) {
if (conf.id) {
// The monotype module only initializes font
// and description if there is a kit id.
this.fonts = [font];
onReady([font]);
} else {
onReady([]);
}
support(true);
};
testModule.load = function (onReady) {
onReady(this.fonts);
};

@@ -228,3 +140,2 @@ return testModule;

testModule = new function () {};
testModule.supportUserAgent = function (ua, support) { support(true); };
testModule.load = function (onReady) {

@@ -251,36 +162,2 @@ onReady([new Font('Elena')], { 'Elena': '1234567' });

describe('font inactive', function () {
var font = null,
testModule = null;
beforeEach(function () {
font = new WebFont(window);
font.addModule('test', function (conf, domHelper) {
testModule = new function () {
this.conf = conf;
this.loadCalled = false;
};
testModule.supportUserAgent = function (ua, support) {
support(false);
};
testModule.load = function () {};
return testModule;
});
});
it('should load with the correct context', function () {
var inactive = jasmine.createSpy('inactive');
font.load({
test: {
somedata: 'in french a cow says meuh'
},
inactive: inactive
});
expect(inactive).toHaveBeenCalled();
expect(inactive.calls.length).toEqual(1);
});
});
describe('module fails to load', function () {

@@ -296,13 +173,8 @@ var font = null,

font = new WebFont(window, fontModuleLoader, userAgent);
font = new WebFont(window, fontModuleLoader);
font.addModule('test', function (conf, domHelper) {
testModule = new function () {};
testModule.supportUserAgent = function (ua, support) {
window.setTimeout(function () {
support(false);
}, 100);
};
testModule.load = function (onReady) {
onReady();
onReady([]);
};

@@ -346,13 +218,8 @@

font = new WebFont(window, fontModuleLoader, userAgent);
font = new WebFont(window, fontModuleLoader);
font.addModule('test', function (conf, domHelper) {
testModule = new function () {};
testModule.supportUserAgent = function (ua, support) {
window.setTimeout(function () {
support(true);
}, 100);
};
testModule.load = function (onReady) {
onReady([]);
onReady([new Font('Elena')]);
};

@@ -359,0 +226,0 @@

// This file was autogenerated by calcdeps.js
goog.addDependency("../../src/closure.js", [], []);
goog.addDependency("../../src/core/browserinfo.js", ["webfont.BrowserInfo"], []);
goog.addDependency("../../src/core/cssclassname.js", ["webfont.CssClassName"], []);

@@ -15,6 +14,3 @@ goog.addDependency("../../src/core/domhelper.js", ["webfont.DomHelper"], []);

goog.addDependency("../../src/core/nativefontwatchrunner.js", ["webfont.NativeFontWatchRunner"], ["webfont.Font"]);
goog.addDependency("../../src/core/useragent.js", ["webfont.UserAgent"], []);
goog.addDependency("../../src/core/useragentparser.js", ["webfont.UserAgentParser"], ["webfont.BrowserInfo","webfont.UserAgent","webfont.Version"]);
goog.addDependency("../../src/core/version.js", ["webfont.Version"], []);
goog.addDependency("../../src/core/webfont.js", ["webfont.WebFont"], ["webfont.DomHelper","webfont.EventDispatcher","webfont.FontWatcher","webfont.FontModuleLoader","webfont.UserAgentParser"]);
goog.addDependency("../../src/core/webfont.js", ["webfont.WebFont"], ["webfont.DomHelper","webfont.EventDispatcher","webfont.FontWatcher","webfont.FontModuleLoader"]);
goog.addDependency("../../src/modules/custom.js", ["webfont.modules.Custom"], ["webfont.Font"]);

@@ -21,0 +17,0 @@ goog.addDependency("../../src/modules/fontdeck.js", ["webfont.modules.Fontdeck"], ["webfont.Font"]);

@@ -64,9 +64,7 @@ describe('modules.Fontdeck', function () {

var fontdeck = null,
support = null;
onReady = jasmine.createSpy('onReady');
beforeEach(function () {
fontdeck = new Fontdeck(fakeDomHelper, configuration);
support = jasmine.createSpy('support');
fontdeck.supportUserAgent('user agent', support);
fontdeck.load(onReady);
});

@@ -88,4 +86,2 @@

expect(fontdeck.fonts_).toEqual([new Font(apiResponse.fonts[0].name), new Font(apiResponse.fonts[1].name, 'i7')]);
expect(support).toHaveBeenCalled();
});

@@ -100,5 +96,2 @@ });

fontdeck = new Fontdeck(fakeDomHelper, { id: null });
support = jasmine.createSpy('support');
fontdeck.supportUserAgent('user agent', support);
});

@@ -108,5 +101,4 @@

expect(fontdeck.fonts_).toEqual([]);
expect(support).toHaveBeenCalled();
});
});
});

@@ -18,3 +18,2 @@ describe('modules.Monotype', function () {

load = null,
useragent = null,
support = null;

@@ -35,15 +34,4 @@

load = jasmine.createSpy('load');
useragent = new UserAgent(
'Firefox',
new Version(3, 6),
'Gecko',
new Version(1, 9, 3),
'Macintosh',
new Version(10, 6),
undefined,
new BrowserInfo(true, false, false, false)
);
monotype = new Monotype(fakeDomHelper, configuration);
monotype.supportUserAgent(useragent, support);
monotype.load(load);

@@ -60,3 +48,2 @@

it('should create a script element', function () {
expect(support).toHaveBeenCalled();
expect(fakeDomHelper.loadScript).toHaveBeenCalled();

@@ -63,0 +50,0 @@ expect(fakeDomHelper.loadScript.calls[0].args[0]).toEqual('http://fast.fonts.net/jsapidev/01e2ff27-25bf-4801-a23e-73d328e6c7cc.js');

@@ -12,3 +12,3 @@ describe('modules.Typekit', function () {

load = null,
support = null;
onReady = null;

@@ -25,3 +25,3 @@ beforeEach(function () {

support = jasmine.createSpy('support');
onReady = jasmine.createSpy('onReady');

@@ -42,7 +42,6 @@ load = jasmine.createSpy('load');

typekit.supportUserAgent('useragent', support);
typekit.load(onReady);
expect(fakeDomHelper.loadScript).toHaveBeenCalled();
expect(fakeDomHelper.loadScript.calls[0].args[0]).toEqual('http://use.typekit.net/abc.js');
expect(support).toHaveBeenCalled();
expect(fakeDomHelper.loadScript.calls[0].args[0]).toEqual('https://use.typekit.net/abc.js');

@@ -58,3 +57,4 @@ expect(global.Typekit.load).toHaveBeenCalled();

typekit.supportUserAgent('useragent', support);
typekit.load(onReady);
expect(fakeDomHelper.loadScript).toHaveBeenCalled();

@@ -67,6 +67,5 @@ expect(fakeDomHelper.loadScript.calls[0].args[0]).toEqual('/test/abc.js');

typekit.supportUserAgent('useragent', support);
typekit.load(onReady);
expect(fakeDomHelper.loadScript).not.toHaveBeenCalled();
expect(support).toHaveBeenCalled();

@@ -73,0 +72,0 @@ typekit.load(load);

@@ -12,8 +12,2 @@ goog.provide('webfont.FontModule');

/**
* @param {webfont.UserAgent} userAgent
* @param {function(boolean)} support
*/
FontModule.prototype.supportUserAgent = function (userAgent, support) {};
/**
* @param {function(Array.<webfont.Font>, webfont.FontTestStrings=, Object.<string, boolean>=)} onReady

@@ -20,0 +14,0 @@ */

@@ -13,3 +13,2 @@ goog.provide('webfont.FontWatcher');

* @constructor
* @param {webfont.UserAgent} userAgent
* @param {webfont.DomHelper} domHelper

@@ -19,3 +18,3 @@ * @param {webfont.EventDispatcher} eventDispatcher

*/
webfont.FontWatcher = function(userAgent, domHelper, eventDispatcher, opt_timeout) {
webfont.FontWatcher = function(domHelper, eventDispatcher, opt_timeout) {
this.domHelper_ = domHelper;

@@ -27,4 +26,2 @@ this.eventDispatcher_ = eventDispatcher;

this.timeout_ = opt_timeout;
this.browserInfo_ = userAgent.getBrowserInfo();
};

@@ -80,3 +77,3 @@

//
//if (this.browserInfo_.hasNativeFontLoading()) {
//if (window['FontFace']) {
// fontWatchRunner = new NativeFontWatchRunner(

@@ -97,3 +94,2 @@ // goog.bind(this.fontActive_, this),

font,
this.browserInfo_,
this.timeout_,

@@ -100,0 +96,0 @@ metricCompatibleFonts,

@@ -12,3 +12,2 @@ goog.provide('webfont.FontWatchRunner');

* @param {webfont.Font} font
* @param {webfont.BrowserInfo} browserInfo
* @param {number=} opt_timeout

@@ -19,3 +18,3 @@ * @param {Object.<string, boolean>=} opt_metricCompatibleFonts

webfont.FontWatchRunner = function(activeCallback, inactiveCallback, domHelper,
font, browserInfo, opt_timeout, opt_metricCompatibleFonts, opt_fontTestString) {
font, opt_timeout, opt_metricCompatibleFonts, opt_fontTestString) {
this.activeCallback_ = activeCallback;

@@ -25,3 +24,2 @@ this.inactiveCallback_ = inactiveCallback;

this.font_ = font;
this.browserInfo_ = browserInfo;
this.fontTestString_ = opt_fontTestString || webfont.FontWatchRunner.DEFAULT_TEST_STRING;

@@ -65,2 +63,32 @@ this.lastResortWidths_ = {};

/**
* @type {null|boolean}
*/
FontWatchRunner.HAS_WEBKIT_FALLBACK_BUG = null;
/**
* @return {string}
*/
FontWatchRunner.getUserAgent = function () {
return window.navigator.userAgent;
};
/**
* Returns true if this browser is WebKit and it has the fallback bug
* which is present in WebKit 536.11 and earlier.
*
* @return {boolean}
*/
FontWatchRunner.hasWebKitFallbackBug = function () {
if (FontWatchRunner.HAS_WEBKIT_FALLBACK_BUG === null) {
var match = /AppleWebKit\/([0-9]+)(?:\.([0-9]+))/.exec(FontWatchRunner.getUserAgent());
FontWatchRunner.HAS_WEBKIT_FALLBACK_BUG = !!match &&
(parseInt(match[1], 10) < 536 ||
(parseInt(match[1], 10) === 536 &&
parseInt(match[2], 10) <= 11));
}
return FontWatchRunner.HAS_WEBKIT_FALLBACK_BUG;
};
/**
* @private

@@ -159,3 +187,3 @@ */

FontWatchRunner.prototype.isLastResortFont_ = function (a, b) {
return this.browserInfo_.hasWebKitFallbackBug() && this.widthsMatchLastResortWidths_(a, b);
return FontWatchRunner.hasWebKitFallbackBug() && this.widthsMatchLastResortWidths_(a, b);
};

@@ -162,0 +190,0 @@

@@ -7,3 +7,2 @@ goog.provide('webfont.WebFont');

goog.require('webfont.FontModuleLoader');
goog.require('webfont.UserAgentParser');

@@ -18,6 +17,3 @@ /**

this.fontModuleLoader_ = new webfont.FontModuleLoader();
this.userAgentParser_ = new webfont.UserAgentParser(mainWindow.navigator.userAgent, mainWindow.document);
this.userAgent_ = this.userAgentParser_.parse();
this.moduleLoading_ = 0;
this.moduleFailedLoading_ = 0;
this.events_ = true;

@@ -60,33 +56,4 @@ this.classes_ = true;

/**
* @param {webfont.FontModule} module
* @param {webfont.EventDispatcher} eventDispatcher
* @param {webfont.FontWatcher} fontWatcher
* @param {boolean} support
*/
WebFont.prototype.isModuleSupportingUserAgent_ = function(module, eventDispatcher,
fontWatcher, support) {
var that = this;
if (support) {
module.load(function (fonts, opt_fontTestStrings, opt_metricCompatibleFonts) {
that.onModuleReady_(eventDispatcher, fontWatcher, fonts, opt_fontTestStrings, opt_metricCompatibleFonts);
});
} else {
var allModulesLoaded = --this.moduleLoading_ == 0;
this.moduleFailedLoading_--;
if (allModulesLoaded && this.moduleFailedLoading_ == 0) {
eventDispatcher.dispatchInactive();
} else {
if (this.classes_ || this.events_) {
fontWatcher.watchFonts([], {}, null, allModulesLoaded);
}
}
}
};
/**
* @param {webfont.EventDispatcher} eventDispatcher
* @param {webfont.FontWatcher} fontWatcher
* @param {Array.<webfont.Font>} fonts

@@ -121,5 +88,5 @@ * @param {webfont.FontTestStrings=} opt_fontTestStrings

this.moduleFailedLoading_ = this.moduleLoading_ = modules.length;
var fontWatcher = new webfont.FontWatcher(this.domHelper_, eventDispatcher, timeout);
var fontWatcher = new webfont.FontWatcher(this.userAgent_, this.domHelper_, eventDispatcher, timeout);
this.moduleLoading_ = modules.length;

@@ -129,7 +96,7 @@ for (var i = 0, len = modules.length; i < len; i++) {

module.supportUserAgent(this.userAgent_,
goog.bind(this.isModuleSupportingUserAgent_, this, module,
eventDispatcher, fontWatcher));
module.load(function (fonts, opt_fontTestStrings, opt_metricCompatibleFonts) {
self.onModuleReady_(eventDispatcher, fontWatcher, fonts, opt_fontTestStrings, opt_metricCompatibleFonts);
});
}
};
});

@@ -59,6 +59,2 @@ goog.provide('webfont.modules.Custom');

};
Custom.prototype.supportUserAgent = function(userAgent, support) {
return support(userAgent.getBrowserInfo().hasWebFontSupport());
};
});

@@ -36,3 +36,3 @@ goog.provide('webfont.modules.Fontdeck');

Fontdeck.prototype.supportUserAgent = function(userAgent, support) {
Fontdeck.prototype.load = function(onReady) {
var projectId = this.configuration_['id'];

@@ -55,3 +55,3 @@ var loadWindow = this.domHelper_.getLoadWindow();

}
support(fontdeckSupports);
onReady(self.fonts_);
};

@@ -62,13 +62,9 @@

if (err) {
support(false);
onReady([]);
}
});
} else {
support(false);
onReady([]);
}
};
Fontdeck.prototype.load = function(onReady) {
onReady(this.fonts_);
};
});

@@ -12,6 +12,2 @@ goog.provide('webfont.modules.google.GoogleFontApi');

webfont.modules.google.GoogleFontApi = function(domHelper, configuration) {
var userAgentParser = new webfont.UserAgentParser(navigator.userAgent, document);
this.userAgent_ = userAgentParser.parse();
this.domHelper_ = domHelper;

@@ -39,16 +35,4 @@ this.configuration_ = configuration;

GoogleFontApi.prototype.supportUserAgent = function(userAgent, support) {
support(userAgent.getBrowserInfo().hasWebFontSupport());
};
GoogleFontApi.prototype.load = function(onReady) {
var domHelper = this.domHelper_;
var nonBlockingIe = this.userAgent_.getName() == 'MSIE' &&
this.configuration_['blocking'] != true;
if (nonBlockingIe) {
domHelper.whenBodyExists(goog.bind(this.insertLink_, this, onReady));
} else {
this.insertLink_(onReady);
}
this.insertLink_(onReady);
};

@@ -55,0 +39,0 @@

@@ -20,3 +20,2 @@ goog.provide('webfont.modules.Monotype');

this.configuration_ = configuration;
this.fonts_ = [];
};

@@ -49,44 +48,40 @@

Monotype.prototype.supportUserAgent = function (userAgent, support) {
Monotype.prototype.getScriptSrc = function (projectId, version) {
var p = this.domHelper_.getProtocol();
var api = (this.configuration_['api'] || 'fast.fonts.net/jsapi').replace(/^.*http(s?):(\/\/)?/, "");
return p + "//" + api + '/' + projectId + '.js' + ( version ? '?v='+ version : '' );
};
Monotype.prototype.load = function (onReady) {
var self = this;
var projectId = self.configuration_['projectId'];
var version = self.configuration_['version'];
if (projectId) {
var loadWindow = self.domHelper_.getLoadWindow();
function onload() {
if (loadWindow[Monotype.HOOK + projectId]) {
var mti_fnts = loadWindow[Monotype.HOOK + projectId]();
if (mti_fnts) {
for (var i = 0; i < mti_fnts.length; i++) {
self.fonts_.push(new Font(mti_fnts[i]["fontfamily"]));
}
}
}
support(userAgent.getBrowserInfo().hasWebFontSupport());
}
var script = this.domHelper_.loadScript(self.getScriptSrc(projectId, version), function (err) {
if (err) {
support(false);
onReady([]);
} else {
onload();
if (loadWindow[Monotype.HOOK + projectId]) {
var mti_fnts = loadWindow[Monotype.HOOK + projectId](),
fonts = [];
if (mti_fnts) {
for (var i = 0; i < mti_fnts.length; i++) {
fonts.push(new Font(mti_fnts[i]["fontfamily"]));
}
}
onReady(fonts);
} else {
onReady([]);
}
}
});
script["id"] = Monotype.SCRIPTID + projectId;
} else {
onReady([]);
}
else {
support(false);
}
};
Monotype.prototype.getScriptSrc = function (projectId, version) {
var p = this.domHelper_.getProtocol();
var api = (this.configuration_['api'] || 'fast.fonts.net/jsapi').replace(/^.*http(s?):(\/\/)?/, "");
return p + "//" + api + '/' + projectId + '.js' + ( version ? '?v='+ version : '' );
};
Monotype.prototype.load = function (onReady) {
onReady(this.fonts_);
};
});

@@ -12,3 +12,2 @@ goog.provide('webfont.modules.Typekit');

this.configuration_ = configuration;
this.fonts_ = [];
};

@@ -27,8 +26,7 @@

Typekit.prototype.getScriptSrc = function(kitId) {
var protocol = this.domHelper_.getProtocol();
var api = this.configuration_['api'] || protocol + '//use.typekit.net';
var api = this.configuration_['api'] || 'https://use.typekit.net';
return api + '/' + kitId + '.js';
};
Typekit.prototype.supportUserAgent = function(userAgent, support) {
Typekit.prototype.load = function(onReady) {
var kitId = this.configuration_['id'];

@@ -44,6 +42,7 @@ var configuration = this.configuration_;

if (err) {
support(false);
onReady([]);
} else {
if (loadWindow['Typekit'] && loadWindow['Typekit']['config'] && loadWindow['Typekit']['config']['fn']) {
var fn = loadWindow['Typekit']['config']['fn'];
var fn = loadWindow['Typekit']['config']['fn'],
fonts = [];

@@ -55,3 +54,3 @@ for (var i = 0; i < fn.length; i += 2) {

for (var j = 0; j < variations.length; j++) {
that.fonts_.push(new Font(font, variations[j]));
fonts.push(new Font(font, variations[j]));
}

@@ -68,14 +67,11 @@ }

} catch (e) {}
onReady(fonts);
}
support(true);
}
}, 2000);
} else {
support(false);
onReady([]);
}
};
Typekit.prototype.load = function(onReady) {
onReady(this.fonts_);
};
});

@@ -1,30 +0,18 @@

/* Web Font Loader v1.5.21 - (c) Adobe Systems, Google. License: Apache 2.0 */
;(function(window,document,undefined){function aa(a,b,c){return a.call.apply(a.bind,arguments)}function ba(a,b,c){if(!a)throw Error();if(2<arguments.length){var d=Array.prototype.slice.call(arguments,2);return function(){var c=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(c,d);return a.apply(b,c)}}return function(){return a.apply(b,arguments)}}function k(a,b,c){k=Function.prototype.bind&&-1!=Function.prototype.bind.toString().indexOf("native code")?aa:ba;return k.apply(null,arguments)}var n=Date.now||function(){return+new Date};function q(a,b){this.K=a;this.w=b||a;this.G=this.w.document}q.prototype.createElement=function(a,b,c){a=this.G.createElement(a);if(b)for(var d in b)b.hasOwnProperty(d)&&("style"==d?a.style.cssText=b[d]:a.setAttribute(d,b[d]));c&&a.appendChild(this.G.createTextNode(c));return a};function r(a,b,c){a=a.G.getElementsByTagName(b)[0];a||(a=document.documentElement);a&&a.lastChild&&a.insertBefore(c,a.lastChild)}function ca(a,b){function c(){a.G.body?b():setTimeout(c,0)}c()}
function s(a,b,c){b=b||[];c=c||[];for(var d=a.className.split(/\s+/),e=0;e<b.length;e+=1){for(var f=!1,g=0;g<d.length;g+=1)if(b[e]===d[g]){f=!0;break}f||d.push(b[e])}b=[];for(e=0;e<d.length;e+=1){f=!1;for(g=0;g<c.length;g+=1)if(d[e]===c[g]){f=!0;break}f||b.push(d[e])}a.className=b.join(" ").replace(/\s+/g," ").replace(/^\s+|\s+$/,"")}function t(a,b){for(var c=a.className.split(/\s+/),d=0,e=c.length;d<e;d++)if(c[d]==b)return!0;return!1}
function u(a){if("string"===typeof a.na)return a.na;var b=a.w.location.protocol;"about:"==b&&(b=a.K.location.protocol);return"https:"==b?"https:":"http:"}function v(a,b){var c=a.createElement("link",{rel:"stylesheet",href:b,media:"all"}),d=!1;c.onload=function(){d||(d=!0)};c.onerror=function(){d||(d=!0)};r(a,"head",c)}
function w(a,b,c,d){var e=a.G.getElementsByTagName("head")[0];if(e){var f=a.createElement("script",{src:b}),g=!1;f.onload=f.onreadystatechange=function(){g||this.readyState&&"loaded"!=this.readyState&&"complete"!=this.readyState||(g=!0,c&&c(null),f.onload=f.onreadystatechange=null,"HEAD"==f.parentNode.tagName&&e.removeChild(f))};e.appendChild(f);setTimeout(function(){g||(g=!0,c&&c(Error("Script load timeout")))},d||5E3);return f}return null};function x(a,b){this.Y=a;this.ga=b};function y(a,b,c,d){this.c=null!=a?a:null;this.g=null!=b?b:null;this.D=null!=c?c:null;this.e=null!=d?d:null}var da=/^([0-9]+)(?:[\._-]([0-9]+))?(?:[\._-]([0-9]+))?(?:[\._+-]?(.*))?$/;y.prototype.compare=function(a){return this.c>a.c||this.c===a.c&&this.g>a.g||this.c===a.c&&this.g===a.g&&this.D>a.D?1:this.c<a.c||this.c===a.c&&this.g<a.g||this.c===a.c&&this.g===a.g&&this.D<a.D?-1:0};y.prototype.toString=function(){return[this.c,this.g||"",this.D||"",this.e||""].join("")};
function z(a){a=da.exec(a);var b=null,c=null,d=null,e=null;a&&(null!==a[1]&&a[1]&&(b=parseInt(a[1],10)),null!==a[2]&&a[2]&&(c=parseInt(a[2],10)),null!==a[3]&&a[3]&&(d=parseInt(a[3],10)),null!==a[4]&&a[4]&&(e=/^[0-9]+$/.test(a[4])?parseInt(a[4],10):a[4]));return new y(b,c,d,e)};function A(a,b,c,d,e,f,g,h){this.N=a;this.m=h}A.prototype.getName=function(){return this.N};function B(a){this.a=a}var ea=new A("Unknown",0,0,0,0,0,0,new x(!1,!1));
B.prototype.parse=function(){var a;if(-1!=this.a.indexOf("MSIE")||-1!=this.a.indexOf("Trident/")){a=C(this);var b=z(D(this)),c=null,d=E(this.a,/Trident\/([\d\w\.]+)/,1),c=-1!=this.a.indexOf("MSIE")?z(E(this.a,/MSIE ([\d\w\.]+)/,1)):z(E(this.a,/rv:([\d\w\.]+)/,1));""!=d&&z(d);a=new A("MSIE",0,0,0,0,0,0,new x("Windows"==a&&6<=c.c||"Windows Phone"==a&&8<=b.c,!1))}else if(-1!=this.a.indexOf("Opera"))a:if(a=z(E(this.a,/Presto\/([\d\w\.]+)/,1)),z(D(this)),null!==a.c||z(E(this.a,/rv:([^\)]+)/,1)),-1!=this.a.indexOf("Opera Mini/"))a=
z(E(this.a,/Opera Mini\/([\d\.]+)/,1)),a=new A("OperaMini",0,0,0,C(this),0,0,new x(!1,!1));else{if(-1!=this.a.indexOf("Version/")&&(a=z(E(this.a,/Version\/([\d\.]+)/,1)),null!==a.c)){a=new A("Opera",0,0,0,C(this),0,0,new x(10<=a.c,!1));break a}a=z(E(this.a,/Opera[\/ ]([\d\.]+)/,1));a=null!==a.c?new A("Opera",0,0,0,C(this),0,0,new x(10<=a.c,!1)):new A("Opera",0,0,0,C(this),0,0,new x(!1,!1))}else/OPR\/[\d.]+/.test(this.a)?a=F(this):/AppleWeb(K|k)it/.test(this.a)?a=F(this):-1!=this.a.indexOf("Gecko")?
(a="Unknown",b=new y,z(D(this)),b=!1,-1!=this.a.indexOf("Firefox")?(a="Firefox",b=z(E(this.a,/Firefox\/([\d\w\.]+)/,1)),b=3<=b.c&&5<=b.g):-1!=this.a.indexOf("Mozilla")&&(a="Mozilla"),c=z(E(this.a,/rv:([^\)]+)/,1)),b||(b=1<c.c||1==c.c&&9<c.g||1==c.c&&9==c.g&&2<=c.D),a=new A(a,0,0,0,C(this),0,0,new x(b,!1))):a=ea;return a};
function C(a){var b=E(a.a,/(iPod|iPad|iPhone|Android|Windows Phone|BB\d{2}|BlackBerry)/,1);if(""!=b)return/BB\d{2}/.test(b)&&(b="BlackBerry"),b;a=E(a.a,/(Linux|Mac_PowerPC|Macintosh|Windows|CrOS|PlayStation|CrKey)/,1);return""!=a?("Mac_PowerPC"==a?a="Macintosh":"PlayStation"==a&&(a="Linux"),a):"Unknown"}
function D(a){var b=E(a.a,/(OS X|Windows NT|Android) ([^;)]+)/,2);if(b||(b=E(a.a,/Windows Phone( OS)? ([^;)]+)/,2))||(b=E(a.a,/(iPhone )?OS ([\d_]+)/,2)))return b;if(b=E(a.a,/(?:Linux|CrOS|CrKey) ([^;)]+)/,1))for(var b=b.split(/\s/),c=0;c<b.length;c+=1)if(/^[\d\._]+$/.test(b[c]))return b[c];return(a=E(a.a,/(BB\d{2}|BlackBerry).*?Version\/([^\s]*)/,2))?a:"Unknown"}
function F(a){var b=C(a),c=z(D(a)),d=z(E(a.a,/AppleWeb(?:K|k)it\/([\d\.\+]+)/,1)),e="Unknown",f=new y,f="Unknown",g=!1;/OPR\/[\d.]+/.test(a.a)?e="Opera":-1!=a.a.indexOf("Chrome")||-1!=a.a.indexOf("CrMo")||-1!=a.a.indexOf("CriOS")?e="Chrome":/Silk\/\d/.test(a.a)?e="Silk":"BlackBerry"==b||"Android"==b?e="BuiltinBrowser":-1!=a.a.indexOf("PhantomJS")?e="PhantomJS":-1!=a.a.indexOf("Safari")?e="Safari":-1!=a.a.indexOf("AdobeAIR")?e="AdobeAIR":-1!=a.a.indexOf("PlayStation")&&(e="BuiltinBrowser");"BuiltinBrowser"==
e?f="Unknown":"Silk"==e?f=E(a.a,/Silk\/([\d\._]+)/,1):"Chrome"==e?f=E(a.a,/(Chrome|CrMo|CriOS)\/([\d\.]+)/,2):-1!=a.a.indexOf("Version/")?f=E(a.a,/Version\/([\d\.\w]+)/,1):"AdobeAIR"==e?f=E(a.a,/AdobeAIR\/([\d\.]+)/,1):"Opera"==e?f=E(a.a,/OPR\/([\d.]+)/,1):"PhantomJS"==e&&(f=E(a.a,/PhantomJS\/([\d.]+)/,1));f=z(f);g="AdobeAIR"==e?2<f.c||2==f.c&&5<=f.g:"BlackBerry"==b?10<=c.c:"Android"==b?2<c.c||2==c.c&&1<c.g:526<=d.c||525<=d.c&&13<=d.g;return new A(e,0,0,0,0,0,0,new x(g,536>d.c||536==d.c&&11>d.g))}
function E(a,b,c){return(a=a.match(b))&&a[c]?a[c]:""};function G(a){this.ma=a||"-"}G.prototype.e=function(a){for(var b=[],c=0;c<arguments.length;c++)b.push(arguments[c].replace(/[\W_]+/g,"").toLowerCase());return b.join(this.ma)};function H(a,b){this.N=a;this.Z=4;this.O="n";var c=(b||"n4").match(/^([nio])([1-9])$/i);c&&(this.O=c[1],this.Z=parseInt(c[2],10))}H.prototype.getName=function(){return this.N};function I(a){return a.O+a.Z}function fa(a){var b=4,c="n",d=null;a&&((d=a.match(/(normal|oblique|italic)/i))&&d[1]&&(c=d[1].substr(0,1).toLowerCase()),(d=a.match(/([1-9]00|normal|bold)/i))&&d[1]&&(/bold/i.test(d[1])?b=7:/[1-9]00/.test(d[1])&&(b=parseInt(d[1].substr(0,1),10))));return c+b};function ha(a,b){this.d=a;this.q=a.w.document.documentElement;this.Q=b;this.j="wf";this.h=new G("-");this.ha=!1!==b.events;this.F=!1!==b.classes}function J(a){if(a.F){var b=t(a.q,a.h.e(a.j,"active")),c=[],d=[a.h.e(a.j,"loading")];b||c.push(a.h.e(a.j,"inactive"));s(a.q,c,d)}K(a,"inactive")}function K(a,b,c){if(a.ha&&a.Q[b])if(c)a.Q[b](c.getName(),I(c));else a.Q[b]()};function ia(){this.C={}};function L(a,b){this.d=a;this.I=b;this.k=this.d.createElement("span",{"aria-hidden":"true"},this.I)}function M(a){r(a.d,"body",a.k)}
function N(a){var b;b=[];for(var c=a.N.split(/,\s*/),d=0;d<c.length;d++){var e=c[d].replace(/['"]/g,"");-1==e.indexOf(" ")?b.push(e):b.push("'"+e+"'")}b=b.join(",");c="normal";"o"===a.O?c="oblique":"i"===a.O&&(c="italic");return"display:block;position:absolute;top:-9999px;left:-9999px;font-size:300px;width:auto;height:auto;line-height:normal;margin:0;padding:0;font-variant:normal;white-space:nowrap;font-family:"+b+";"+("font-style:"+c+";font-weight:"+(a.Z+"00")+";")}
L.prototype.remove=function(){var a=this.k;a.parentNode&&a.parentNode.removeChild(a)};function O(a,b,c,d,e,f,g,h){this.$=a;this.ka=b;this.d=c;this.o=d;this.m=e;this.I=h||"BESbswy";this.v={};this.X=f||3E3;this.ca=g||null;this.H=this.u=this.t=null;this.t=new L(this.d,this.I);this.u=new L(this.d,this.I);this.H=new L(this.d,this.I);a=new H("serif",I(this.o));a=N(a);this.t.k.style.cssText=a;a=new H("sans-serif",I(this.o));a=N(a);this.u.k.style.cssText=a;a=new H("monospace",I(this.o));a=N(a);this.H.k.style.cssText=a;M(this.t);M(this.u);M(this.H);this.v.serif=this.t.k.offsetWidth;this.v["sans-serif"]=
this.u.k.offsetWidth;this.v.monospace=this.H.k.offsetWidth}var P={sa:"serif",ra:"sans-serif",qa:"monospace"};O.prototype.start=function(){this.oa=n();var a=new H(this.o.getName()+",serif",I(this.o)),a=N(a);this.t.k.style.cssText=a;a=new H(this.o.getName()+",sans-serif",I(this.o));a=N(a);this.u.k.style.cssText=a;Q(this)};function ja(a,b,c){for(var d in P)if(P.hasOwnProperty(d)&&b===a.v[P[d]]&&c===a.v[P[d]])return!0;return!1}
function Q(a){var b=a.t.k.offsetWidth,c=a.u.k.offsetWidth;b===a.v.serif&&c===a.v["sans-serif"]||a.m.ga&&ja(a,b,c)?n()-a.oa>=a.X?a.m.ga&&ja(a,b,c)&&(null===a.ca||a.ca.hasOwnProperty(a.o.getName()))?R(a,a.$):R(a,a.ka):ka(a):R(a,a.$)}function ka(a){setTimeout(k(function(){Q(this)},a),50)}function R(a,b){a.t.remove();a.u.remove();a.H.remove();b(a.o)};function S(a,b,c,d){this.d=b;this.A=c;this.S=0;this.ea=this.ba=!1;this.X=d;this.m=a.m}function la(a,b,c,d,e){c=c||{};if(0===b.length&&e)J(a.A);else for(a.S+=b.length,e&&(a.ba=e),e=0;e<b.length;e++){var f=b[e],g=c[f.getName()],h=a.A,m=f;h.F&&s(h.q,[h.h.e(h.j,m.getName(),I(m).toString(),"loading")]);K(h,"fontloading",m);h=null;h=new O(k(a.ia,a),k(a.ja,a),a.d,f,a.m,a.X,d,g);h.start()}}
S.prototype.ia=function(a){var b=this.A;b.F&&s(b.q,[b.h.e(b.j,a.getName(),I(a).toString(),"active")],[b.h.e(b.j,a.getName(),I(a).toString(),"loading"),b.h.e(b.j,a.getName(),I(a).toString(),"inactive")]);K(b,"fontactive",a);this.ea=!0;ma(this)};
S.prototype.ja=function(a){var b=this.A;if(b.F){var c=t(b.q,b.h.e(b.j,a.getName(),I(a).toString(),"active")),d=[],e=[b.h.e(b.j,a.getName(),I(a).toString(),"loading")];c||d.push(b.h.e(b.j,a.getName(),I(a).toString(),"inactive"));s(b.q,d,e)}K(b,"fontinactive",a);ma(this)};function ma(a){0==--a.S&&a.ba&&(a.ea?(a=a.A,a.F&&s(a.q,[a.h.e(a.j,"active")],[a.h.e(a.j,"loading"),a.h.e(a.j,"inactive")]),K(a,"active")):J(a.A))};function T(a){this.K=a;this.B=new ia;this.pa=new B(a.navigator.userAgent);this.a=this.pa.parse();this.U=this.V=0;this.R=this.T=!0}
T.prototype.load=function(a){this.d=new q(this.K,a.context||this.K);this.T=!1!==a.events;this.R=!1!==a.classes;var b=new ha(this.d,a),c=[],d=a.timeout;b.F&&s(b.q,[b.h.e(b.j,"loading")]);K(b,"loading");var c=this.B,e=this.d,f=[],g;for(g in a)if(a.hasOwnProperty(g)){var h=c.C[g];h&&f.push(h(a[g],e))}c=f;this.U=this.V=c.length;a=new S(this.a,this.d,b,d);d=0;for(g=c.length;d<g;d++)e=c[d],e.L(this.a,k(this.la,this,e,b,a))};
T.prototype.la=function(a,b,c,d){var e=this;d?a.load(function(a,b,d){na(e,c,a,b,d)}):(a=0==--this.V,this.U--,a&&0==this.U?J(b):(this.R||this.T)&&la(c,[],{},null,a))};function na(a,b,c,d,e){var f=0==--a.V;(a.R||a.T)&&setTimeout(function(){la(b,c,d||null,e||null,f)},0)};function oa(a,b,c){this.P=a?a:b+pa;this.s=[];this.W=[];this.fa=c||""}var pa="//fonts.googleapis.com/css";oa.prototype.e=function(){if(0==this.s.length)throw Error("No fonts to load!");if(-1!=this.P.indexOf("kit="))return this.P;for(var a=this.s.length,b=[],c=0;c<a;c++)b.push(this.s[c].replace(/ /g,"+"));a=this.P+"?family="+b.join("%7C");0<this.W.length&&(a+="&subset="+this.W.join(","));0<this.fa.length&&(a+="&text="+encodeURIComponent(this.fa));return a};function qa(a){this.s=a;this.da=[];this.M={}}
var ra={latin:"BESbswy",cyrillic:"&#1081;&#1103;&#1046;",greek:"&#945;&#946;&#931;",khmer:"&#x1780;&#x1781;&#x1782;",Hanuman:"&#x1780;&#x1781;&#x1782;"},sa={thin:"1",extralight:"2","extra-light":"2",ultralight:"2","ultra-light":"2",light:"3",regular:"4",book:"4",medium:"5","semi-bold":"6",semibold:"6","demi-bold":"6",demibold:"6",bold:"7","extra-bold":"8",extrabold:"8","ultra-bold":"8",ultrabold:"8",black:"9",heavy:"9",l:"3",r:"4",b:"7"},ta={i:"i",italic:"i",n:"n",normal:"n"},ua=/^(thin|(?:(?:extra|ultra)-?)?light|regular|book|medium|(?:(?:semi|demi|extra|ultra)-?)?bold|black|heavy|l|r|b|[1-9]00)?(n|i|normal|italic)?$/;
qa.prototype.parse=function(){for(var a=this.s.length,b=0;b<a;b++){var c=this.s[b].split(":"),d=c[0].replace(/\+/g," "),e=["n4"];if(2<=c.length){var f;var g=c[1];f=[];if(g)for(var g=g.split(","),h=g.length,m=0;m<h;m++){var l;l=g[m];if(l.match(/^[\w-]+$/)){l=ua.exec(l.toLowerCase());var p=void 0;if(null==l)p="";else{p=void 0;p=l[1];if(null==p||""==p)p="4";else var ga=sa[p],p=ga?ga:isNaN(p)?"4":p.substr(0,1);l=l[2];p=[null==l||""==l?"n":ta[l],p].join("")}l=p}else l="";l&&f.push(l)}0<f.length&&(e=f);
3==c.length&&(c=c[2],f=[],c=c?c.split(","):f,0<c.length&&(c=ra[c[0]])&&(this.M[d]=c))}this.M[d]||(c=ra[d])&&(this.M[d]=c);for(c=0;c<e.length;c+=1)this.da.push(new H(d,e[c]))}};function U(a,b){this.a=(new B(navigator.userAgent)).parse();this.d=a;this.f=b}var va={Arimo:!0,Cousine:!0,Tinos:!0};U.prototype.L=function(a,b){b(a.m.Y)};U.prototype.load=function(a){var b=this.d;"MSIE"==this.a.getName()&&1!=this.f.blocking?ca(b,k(this.aa,this,a)):this.aa(a)};
U.prototype.aa=function(a){for(var b=this.d,c=new oa(this.f.api,u(b),this.f.text),d=this.f.families,e=d.length,f=0;f<e;f++){var g=d[f].split(":");3==g.length&&c.W.push(g.pop());var h="";2==g.length&&""!=g[1]&&(h=":");c.s.push(g.join(h))}d=new qa(d);d.parse();v(b,c.e());a(d.da,d.M,va)};function V(a,b){this.d=a;this.f=b;this.p=[]}V.prototype.J=function(a){var b=this.d;return u(this.d)+(this.f.api||"//f.fontdeck.com/s/css/js/")+(b.w.location.hostname||b.K.location.hostname)+"/"+a+".js"};
V.prototype.L=function(a,b){var c=this.f.id,d=this.d.w,e=this;c?(d.__webfontfontdeckmodule__||(d.__webfontfontdeckmodule__={}),d.__webfontfontdeckmodule__[c]=function(a,c){for(var d=0,m=c.fonts.length;d<m;++d){var l=c.fonts[d];e.p.push(new H(l.name,fa("font-weight:"+l.weight+";font-style:"+l.style)))}b(a)},w(this.d,this.J(c),function(a){a&&b(!1)})):b(!1)};V.prototype.load=function(a){a(this.p)};function W(a,b){this.d=a;this.f=b;this.p=[]}W.prototype.J=function(a){var b=u(this.d);return(this.f.api||b+"//use.typekit.net")+"/"+a+".js"};W.prototype.L=function(a,b){var c=this.f.id,d=this.d.w,e=this;c?w(this.d,this.J(c),function(a){if(a)b(!1);else{if(d.Typekit&&d.Typekit.config&&d.Typekit.config.fn){a=d.Typekit.config.fn;for(var c=0;c<a.length;c+=2)for(var h=a[c],m=a[c+1],l=0;l<m.length;l++)e.p.push(new H(h,m[l]));try{d.Typekit.load({events:!1,classes:!1})}catch(p){}}b(!0)}},2E3):b(!1)};
W.prototype.load=function(a){a(this.p)};function X(a,b){this.d=a;this.f=b;this.p=[]}X.prototype.L=function(a,b){var c=this,d=c.f.projectId,e=c.f.version;if(d){var f=c.d.w;w(this.d,c.J(d,e),function(e){if(e)b(!1);else{if(f["__mti_fntLst"+d]&&(e=f["__mti_fntLst"+d]()))for(var h=0;h<e.length;h++)c.p.push(new H(e[h].fontfamily));b(a.m.Y)}}).id="__MonotypeAPIScript__"+d}else b(!1)};X.prototype.J=function(a,b){var c=u(this.d),d=(this.f.api||"fast.fonts.net/jsapi").replace(/^.*http(s?):(\/\/)?/,"");return c+"//"+d+"/"+a+".js"+(b?"?v="+b:"")};
X.prototype.load=function(a){a(this.p)};function Y(a,b){this.d=a;this.f=b}Y.prototype.load=function(a){var b,c,d=this.f.urls||[],e=this.f.families||[],f=this.f.testStrings||{};b=0;for(c=d.length;b<c;b++)v(this.d,d[b]);d=[];b=0;for(c=e.length;b<c;b++){var g=e[b].split(":");if(g[1])for(var h=g[1].split(","),m=0;m<h.length;m+=1)d.push(new H(g[0],h[m]));else d.push(new H(g[0]))}a(d,f)};Y.prototype.L=function(a,b){return b(a.m.Y)};var Z=new T(this);Z.B.C.custom=function(a,b){return new Y(b,a)};Z.B.C.fontdeck=function(a,b){return new V(b,a)};Z.B.C.monotype=function(a,b){return new X(b,a)};Z.B.C.typekit=function(a,b){return new W(b,a)};Z.B.C.google=function(a,b){return new U(b,a)};var $={load:k(Z.load,Z)};"function"===typeof define&&define.amd?define(function(){return $}):"undefined"!==typeof module&&module.exports?module.exports=$:(window.WebFont=$,window.WebFontConfig&&Z.load(window.WebFontConfig));})(this,document);
/* Web Font Loader v1.6.0 - (c) Adobe Systems, Google. License: Apache 2.0 */
;(function(window,document,undefined){function aa(a,b,c){return a.call.apply(a.bind,arguments)}function ba(a,b,c){if(!a)throw Error();if(2<arguments.length){var d=Array.prototype.slice.call(arguments,2);return function(){var c=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(c,d);return a.apply(b,c)}}return function(){return a.apply(b,arguments)}}function m(a,b,c){m=Function.prototype.bind&&-1!=Function.prototype.bind.toString().indexOf("native code")?aa:ba;return m.apply(null,arguments)}var n=Date.now||function(){return+new Date};function r(a,b){this.C=a;this.q=b||a;this.D=this.q.document}r.prototype.createElement=function(a,b,c){a=this.D.createElement(a);if(b)for(var d in b)b.hasOwnProperty(d)&&("style"==d?a.style.cssText=b[d]:a.setAttribute(d,b[d]));c&&a.appendChild(this.D.createTextNode(c));return a};function s(a,b,c){a=a.D.getElementsByTagName(b)[0];a||(a=document.documentElement);a&&a.lastChild&&a.insertBefore(c,a.lastChild)}
function t(a,b,c){b=b||[];c=c||[];for(var d=a.className.split(/\s+/),f=0;f<b.length;f+=1){for(var e=!1,g=0;g<d.length;g+=1)if(b[f]===d[g]){e=!0;break}e||d.push(b[f])}b=[];for(f=0;f<d.length;f+=1){e=!1;for(g=0;g<c.length;g+=1)if(d[f]===c[g]){e=!0;break}e||b.push(d[f])}a.className=b.join(" ").replace(/\s+/g," ").replace(/^\s+|\s+$/,"")}function u(a,b){for(var c=a.className.split(/\s+/),d=0,f=c.length;d<f;d++)if(c[d]==b)return!0;return!1}
function v(a){if("string"===typeof a.ca)return a.ca;var b=a.q.location.protocol;"about:"==b&&(b=a.C.location.protocol);return"https:"==b?"https:":"http:"}function w(a,b){var c=a.createElement("link",{rel:"stylesheet",href:b,media:"all"}),d=!1;c.onload=function(){d||(d=!0)};c.onerror=function(){d||(d=!0)};s(a,"head",c)}
function x(a,b,c,d){var f=a.D.getElementsByTagName("head")[0];if(f){var e=a.createElement("script",{src:b}),g=!1;e.onload=e.onreadystatechange=function(){g||this.readyState&&"loaded"!=this.readyState&&"complete"!=this.readyState||(g=!0,c&&c(null),e.onload=e.onreadystatechange=null,"HEAD"==e.parentNode.tagName&&f.removeChild(e))};f.appendChild(e);setTimeout(function(){g||(g=!0,c&&c(Error("Script load timeout")))},d||5E3);return e}return null};function y(a){this.ba=a||"-"}y.prototype.d=function(a){for(var b=[],c=0;c<arguments.length;c++)b.push(arguments[c].replace(/[\W_]+/g,"").toLowerCase());return b.join(this.ba)};function z(a,b){this.U=a;this.M=4;this.G="n";var c=(b||"n4").match(/^([nio])([1-9])$/i);c&&(this.G=c[1],this.M=parseInt(c[2],10))}z.prototype.getName=function(){return this.U};function A(a){return a.G+a.M}function ca(a){var b=4,c="n",d=null;a&&((d=a.match(/(normal|oblique|italic)/i))&&d[1]&&(c=d[1].substr(0,1).toLowerCase()),(d=a.match(/([1-9]00|normal|bold)/i))&&d[1]&&(/bold/i.test(d[1])?b=7:/[1-9]00/.test(d[1])&&(b=parseInt(d[1].substr(0,1),10))));return c+b};function da(a,b){this.a=a;this.j=a.q.document.documentElement;this.I=b;this.f="wf";this.e=new y("-");this.Y=!1!==b.events;this.v=!1!==b.classes}function ea(a){a.v&&t(a.j,[a.e.d(a.f,"loading")]);B(a,"loading")}function C(a){if(a.v){var b=u(a.j,a.e.d(a.f,"active")),c=[],d=[a.e.d(a.f,"loading")];b||c.push(a.e.d(a.f,"inactive"));t(a.j,c,d)}B(a,"inactive")}function B(a,b,c){if(a.Y&&a.I[b])if(c)a.I[b](c.getName(),A(c));else a.I[b]()};function fa(){this.u={}}function ga(a,b,c){var d=[],f;for(f in b)if(b.hasOwnProperty(f)){var e=a.u[f];e&&d.push(e(b[f],c))}return d};function D(a,b){this.a=a;this.A=b;this.g=this.a.createElement("span",{"aria-hidden":"true"},this.A)}function F(a){s(a.a,"body",a.g)}
function G(a){var b;b=[];for(var c=a.U.split(/,\s*/),d=0;d<c.length;d++){var f=c[d].replace(/['"]/g,"");-1==f.indexOf(" ")?b.push(f):b.push("'"+f+"'")}b=b.join(",");c="normal";"o"===a.G?c="oblique":"i"===a.G&&(c="italic");return"display:block;position:absolute;top:-9999px;left:-9999px;font-size:300px;width:auto;height:auto;line-height:normal;margin:0;padding:0;font-variant:normal;white-space:nowrap;font-family:"+b+";"+("font-style:"+c+";font-weight:"+(a.M+"00")+";")}
D.prototype.remove=function(){var a=this.g;a.parentNode&&a.parentNode.removeChild(a)};function H(a,b,c,d,f,e,g){this.N=a;this.aa=b;this.a=c;this.h=d;this.A=g||"BESbswy";this.p={};this.L=f||3E3;this.S=e||null;this.w=this.o=this.m=null;this.m=new D(this.a,this.A);this.o=new D(this.a,this.A);this.w=new D(this.a,this.A);a=new z("serif",A(this.h));a=G(a);this.m.g.style.cssText=a;a=new z("sans-serif",A(this.h));a=G(a);this.o.g.style.cssText=a;a=new z("monospace",A(this.h));a=G(a);this.w.g.style.cssText=a;F(this.m);F(this.o);F(this.w);this.p.serif=this.m.g.offsetWidth;this.p["sans-serif"]=
this.o.g.offsetWidth;this.p.monospace=this.w.g.offsetWidth}var I={ga:"serif",fa:"sans-serif",ea:"monospace"},J=null;function K(){if(null===J){var a=/AppleWebKit\/([0-9]+)(?:\.([0-9]+))/.exec(window.navigator.userAgent);J=!!a&&(536>parseInt(a[1],10)||536===parseInt(a[1],10)&&11>=parseInt(a[2],10))}return J}
H.prototype.start=function(){this.da=n();var a=new z(this.h.getName()+",serif",A(this.h)),a=G(a);this.m.g.style.cssText=a;a=new z(this.h.getName()+",sans-serif",A(this.h));a=G(a);this.o.g.style.cssText=a;L(this)};function M(a,b,c){for(var d in I)if(I.hasOwnProperty(d)&&b===a.p[I[d]]&&c===a.p[I[d]])return!0;return!1}
function L(a){var b=a.m.g.offsetWidth,c=a.o.g.offsetWidth,d;(d=b===a.p.serif&&c===a.p["sans-serif"])||(d=K()&&M(a,b,c));d?n()-a.da>=a.L?K()&&M(a,b,c)&&(null===a.S||a.S.hasOwnProperty(a.h.getName()))?N(a,a.N):N(a,a.aa):ha(a):N(a,a.N)}function ha(a){setTimeout(m(function(){L(this)},a),50)}function N(a,b){a.m.remove();a.o.remove();a.w.remove();b(a.h)};function O(a,b,c){this.a=a;this.s=b;this.J=0;this.W=this.R=!1;this.L=c}O.prototype.Z=function(a){var b=this.s;b.v&&t(b.j,[b.e.d(b.f,a.getName(),A(a).toString(),"active")],[b.e.d(b.f,a.getName(),A(a).toString(),"loading"),b.e.d(b.f,a.getName(),A(a).toString(),"inactive")]);B(b,"fontactive",a);this.W=!0;P(this)};
O.prototype.$=function(a){var b=this.s;if(b.v){var c=u(b.j,b.e.d(b.f,a.getName(),A(a).toString(),"active")),d=[],f=[b.e.d(b.f,a.getName(),A(a).toString(),"loading")];c||d.push(b.e.d(b.f,a.getName(),A(a).toString(),"inactive"));t(b.j,d,f)}B(b,"fontinactive",a);P(this)};function P(a){0==--a.J&&a.R&&(a.W?(a=a.s,a.v&&t(a.j,[a.e.d(a.f,"active")],[a.e.d(a.f,"loading"),a.e.d(a.f,"inactive")]),B(a,"active")):C(a.s))};function Q(a){this.C=a;this.t=new fa;this.T=0;this.O=this.P=!0}Q.prototype.load=function(a){this.a=new r(this.C,a.context||this.C);this.P=!1!==a.events;this.O=!1!==a.classes;ia(this,new da(this.a,a),a)};
function ja(a,b,c,d,f){var e=0==--a.T;(a.O||a.P)&&setTimeout(function(){var a=f||null,l=d||null||{};if(0===c.length&&e)C(b.s);else{b.J+=c.length;e&&(b.R=e);for(var k=0;k<c.length;k++){var h=c[k],p=l[h.getName()],q=b.s,E=h;q.v&&t(q.j,[q.e.d(q.f,E.getName(),A(E).toString(),"loading")]);B(q,"fontloading",E);q=null;q=new H(m(b.Z,b),m(b.$,b),b.a,h,b.L,a,p);q.start()}}},0)}
function ia(a,b,c){var d=[],f=c.timeout;ea(b);var d=ga(a.t,c,a.a),e=new O(a.a,b,f);a.T=d.length;b=0;for(c=d.length;b<c;b++)d[b].load(function(b,c,d){ja(a,e,b,c,d)})};function R(a,b,c){this.H=a?a:b+ka;this.k=[];this.K=[];this.X=c||""}var ka="//fonts.googleapis.com/css";R.prototype.d=function(){if(0==this.k.length)throw Error("No fonts to load!");if(-1!=this.H.indexOf("kit="))return this.H;for(var a=this.k.length,b=[],c=0;c<a;c++)b.push(this.k[c].replace(/ /g,"+"));a=this.H+"?family="+b.join("%7C");0<this.K.length&&(a+="&subset="+this.K.join(","));0<this.X.length&&(a+="&text="+encodeURIComponent(this.X));return a};function S(a){this.k=a;this.V=[];this.F={}}
var T={latin:"BESbswy",cyrillic:"&#1081;&#1103;&#1046;",greek:"&#945;&#946;&#931;",khmer:"&#x1780;&#x1781;&#x1782;",Hanuman:"&#x1780;&#x1781;&#x1782;"},la={thin:"1",extralight:"2","extra-light":"2",ultralight:"2","ultra-light":"2",light:"3",regular:"4",book:"4",medium:"5","semi-bold":"6",semibold:"6","demi-bold":"6",demibold:"6",bold:"7","extra-bold":"8",extrabold:"8","ultra-bold":"8",ultrabold:"8",black:"9",heavy:"9",l:"3",r:"4",b:"7"},ma={i:"i",italic:"i",n:"n",normal:"n"},na=/^(thin|(?:(?:extra|ultra)-?)?light|regular|book|medium|(?:(?:semi|demi|extra|ultra)-?)?bold|black|heavy|l|r|b|[1-9]00)?(n|i|normal|italic)?$/;
S.prototype.parse=function(){for(var a=this.k.length,b=0;b<a;b++){var c=this.k[b].split(":"),d=c[0].replace(/\+/g," "),f=["n4"];if(2<=c.length){var e;var g=c[1];e=[];if(g)for(var g=g.split(","),l=g.length,k=0;k<l;k++){var h;h=g[k];if(h.match(/^[\w-]+$/))if(h=na.exec(h.toLowerCase()),null==h)h="";else{var p;p=h[1];if(null==p||""==p)p="4";else{var q=la[p];p=q?q:isNaN(p)?"4":p.substr(0,1)}h=h[2];h=[null==h||""==h?"n":ma[h],p].join("")}else h="";h&&e.push(h)}0<e.length&&(f=e);3==c.length&&(c=c[2],e=[],
c=c?c.split(","):e,0<c.length&&(c=T[c[0]])&&(this.F[d]=c))}this.F[d]||(c=T[d])&&(this.F[d]=c);for(c=0;c<f.length;c+=1)this.V.push(new z(d,f[c]))}};function U(a,b){this.a=a;this.c=b}var oa={Arimo:!0,Cousine:!0,Tinos:!0};U.prototype.load=function(a){for(var b=this.a,c=new R(this.c.api,v(b),this.c.text),d=this.c.families,f=d.length,e=0;e<f;e++){var g=d[e].split(":");3==g.length&&c.K.push(g.pop());var l="";2==g.length&&""!=g[1]&&(l=":");c.k.push(g.join(l))}d=new S(d);d.parse();w(b,c.d());a(d.V,d.F,oa)};function V(a,b){this.a=a;this.c=b;this.Q=[]}V.prototype.B=function(a){var b=this.a;return v(this.a)+(this.c.api||"//f.fontdeck.com/s/css/js/")+(b.q.location.hostname||b.C.location.hostname)+"/"+a+".js"};
V.prototype.load=function(a){var b=this.c.id,c=this.a.q,d=this;b?(c.__webfontfontdeckmodule__||(c.__webfontfontdeckmodule__={}),c.__webfontfontdeckmodule__[b]=function(b,c){for(var g=0,l=c.fonts.length;g<l;++g){var k=c.fonts[g];d.Q.push(new z(k.name,ca("font-weight:"+k.weight+";font-style:"+k.style)))}a(d.Q)},x(this.a,this.B(b),function(b){b&&a([])})):a([])};function W(a,b){this.a=a;this.c=b}W.prototype.B=function(a){return(this.c.api||"https://use.typekit.net")+"/"+a+".js"};W.prototype.load=function(a){var b=this.c.id,c=this.a.q;b?x(this.a,this.B(b),function(b){if(b)a([]);else if(c.Typekit&&c.Typekit.config&&c.Typekit.config.fn){b=c.Typekit.config.fn;for(var f=[],e=0;e<b.length;e+=2)for(var g=b[e],l=b[e+1],k=0;k<l.length;k++)f.push(new z(g,l[k]));try{c.Typekit.load({events:!1,classes:!1})}catch(h){}a(f)}},2E3):a([])};function X(a,b){this.a=a;this.c=b}X.prototype.B=function(a,b){var c=v(this.a),d=(this.c.api||"fast.fonts.net/jsapi").replace(/^.*http(s?):(\/\/)?/,"");return c+"//"+d+"/"+a+".js"+(b?"?v="+b:"")};X.prototype.load=function(a){var b=this.c.projectId,c=this.c.version;if(b){var d=this.a.q;x(this.a,this.B(b,c),function(c){if(c)a([]);else if(d["__mti_fntLst"+b]){c=d["__mti_fntLst"+b]();var e=[];if(c)for(var g=0;g<c.length;g++)e.push(new z(c[g].fontfamily));a(e)}else a([])}).id="__MonotypeAPIScript__"+b}else a([])};function Y(a,b){this.a=a;this.c=b}Y.prototype.load=function(a){var b,c,d=this.c.urls||[],f=this.c.families||[],e=this.c.testStrings||{};b=0;for(c=d.length;b<c;b++)w(this.a,d[b]);d=[];b=0;for(c=f.length;b<c;b++){var g=f[b].split(":");if(g[1])for(var l=g[1].split(","),k=0;k<l.length;k+=1)d.push(new z(g[0],l[k]));else d.push(new z(g[0]))}a(d,e)};var Z=new Q(this);Z.t.u.custom=function(a,b){return new Y(b,a)};Z.t.u.fontdeck=function(a,b){return new V(b,a)};Z.t.u.monotype=function(a,b){return new X(b,a)};Z.t.u.typekit=function(a,b){return new W(b,a)};Z.t.u.google=function(a,b){return new U(b,a)};var $={load:m(Z.load,Z)};"function"===typeof define&&define.amd?define(function(){return $}):"undefined"!==typeof module&&module.exports?module.exports=$:(window.WebFont=$,window.WebFontConfig&&Z.load(window.WebFontConfig));})(this,document);

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc