piral-cli 0.13.8 → 0.14.0-beta.3156
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -2
- package/lib/api.js +23 -23
- package/lib/api.js.map +1 -1
- package/lib/apps/build-pilet.js +18 -16
- package/lib/apps/build-pilet.js.map +1 -1
- package/lib/apps/build-piral.js +35 -34
- package/lib/apps/build-piral.js.map +1 -1
- package/lib/apps/debug-pilet.js +28 -27
- package/lib/apps/debug-pilet.js.map +1 -1
- package/lib/apps/debug-piral.js +15 -14
- package/lib/apps/debug-piral.js.map +1 -1
- package/lib/apps/declaration-piral.js +5 -3
- package/lib/apps/declaration-piral.js.map +1 -1
- package/lib/apps/new-pilet.js +43 -39
- package/lib/apps/new-pilet.js.map +1 -1
- package/lib/apps/new-piral.js +21 -20
- package/lib/apps/new-piral.js.map +1 -1
- package/lib/apps/pack-pilet.js +6 -4
- package/lib/apps/pack-pilet.js.map +1 -1
- package/lib/apps/publish-pilet.js +48 -47
- package/lib/apps/publish-pilet.js.map +1 -1
- package/lib/apps/publish-piral.js +23 -22
- package/lib/apps/publish-piral.js.map +1 -1
- package/lib/apps/upgrade-pilet.js +34 -33
- package/lib/apps/upgrade-pilet.js.map +1 -1
- package/lib/apps/upgrade-piral.js +20 -19
- package/lib/apps/upgrade-piral.js.map +1 -1
- package/lib/apps/validate-pilet.js +13 -11
- package/lib/apps/validate-pilet.js.map +1 -1
- package/lib/apps/validate-piral.js +12 -10
- package/lib/apps/validate-piral.js.map +1 -1
- package/lib/build/bundler-calls.d.ts +3 -0
- package/lib/build/bundler-calls.js +107 -0
- package/lib/build/bundler-calls.js.map +1 -0
- package/lib/build/run-build-pilet.d.ts +1 -0
- package/lib/build/run-build-pilet.js +65 -0
- package/lib/build/run-build-pilet.js.map +1 -0
- package/lib/build/run-build-piral.d.ts +1 -0
- package/lib/build/run-build-piral.js +66 -0
- package/lib/build/run-build-piral.js.map +1 -0
- package/lib/build/run-debug-mono-piral.d.ts +1 -0
- package/lib/build/run-debug-mono-piral.js +71 -0
- package/lib/build/run-debug-mono-piral.js.map +1 -0
- package/lib/build/run-debug-pilet.d.ts +1 -0
- package/lib/build/run-debug-pilet.js +90 -0
- package/lib/build/run-debug-pilet.js.map +1 -0
- package/lib/build/run-debug-piral.d.ts +1 -0
- package/lib/build/run-debug-piral.js +86 -0
- package/lib/build/run-debug-piral.js.map +1 -0
- package/lib/bundler.js +62 -25
- package/lib/bundler.js.map +1 -1
- package/lib/cli.js +2 -2
- package/lib/cli.js.map +1 -1
- package/lib/commands.js +12 -12
- package/lib/commands.js.map +1 -1
- package/lib/common/archive.js +8 -8
- package/lib/common/archive.js.map +1 -1
- package/lib/common/browser.js +2 -2
- package/lib/common/browser.js.map +1 -1
- package/lib/common/clients/lerna.js +4 -4
- package/lib/common/clients/lerna.js.map +1 -1
- package/lib/common/clients/npm.js +12 -12
- package/lib/common/clients/npm.js.map +1 -1
- package/lib/common/clients/pnpm.js +5 -5
- package/lib/common/clients/pnpm.js.map +1 -1
- package/lib/common/clients/yarn.js +5 -5
- package/lib/common/clients/yarn.js.map +1 -1
- package/lib/common/compatibility.js +9 -9
- package/lib/common/compatibility.js.map +1 -1
- package/lib/common/config.d.ts +5 -1
- package/lib/common/config.js +2 -1
- package/lib/common/config.js.map +1 -1
- package/lib/common/constants.d.ts +1 -1
- package/lib/common/constants.js +2 -2
- package/lib/common/constants.js.map +1 -1
- package/lib/common/declaration.js +19 -19
- package/lib/common/declaration.js.map +1 -1
- package/lib/common/emulator.js +24 -23
- package/lib/common/emulator.js.map +1 -1
- package/lib/common/envs.js +3 -3
- package/lib/common/envs.js.map +1 -1
- package/lib/common/hash.d.ts +1 -0
- package/lib/common/hash.js +8 -3
- package/lib/common/hash.js.map +1 -1
- package/lib/common/http.d.ts +1 -0
- package/lib/common/http.js +28 -14
- package/lib/common/http.js.map +1 -1
- package/lib/common/injectors.js +4 -4
- package/lib/common/injectors.js.map +1 -1
- package/lib/common/inspect.js +4 -4
- package/lib/common/inspect.js.map +1 -1
- package/lib/common/io.js +77 -73
- package/lib/common/io.js.map +1 -1
- package/lib/common/language.js +2 -2
- package/lib/common/language.js.map +1 -1
- package/lib/common/log.js +8 -8
- package/lib/common/log.js.map +1 -1
- package/lib/common/npm.d.ts +3 -1
- package/lib/common/npm.js +68 -48
- package/lib/common/npm.js.map +1 -1
- package/lib/common/pack.js +18 -18
- package/lib/common/pack.js.map +1 -1
- package/lib/common/package.d.ts +4 -2
- package/lib/common/package.js +182 -81
- package/lib/common/package.js.map +1 -1
- package/lib/common/patcher.js +20 -20
- package/lib/common/patcher.js.map +1 -1
- package/lib/common/port.js +3 -3
- package/lib/common/port.js.map +1 -1
- package/lib/common/rules.js +4 -4
- package/lib/common/rules.js.map +1 -1
- package/lib/common/scaffold.js +15 -15
- package/lib/common/scaffold.js.map +1 -1
- package/lib/common/scripts.js +5 -5
- package/lib/common/scripts.js.map +1 -1
- package/lib/common/template.js +4 -4
- package/lib/common/template.js.map +1 -1
- package/lib/external/index.js +1369 -611
- package/lib/helpers.js +2 -2
- package/lib/helpers.js.map +1 -1
- package/lib/inject.js +2 -2
- package/lib/inject.js.map +1 -1
- package/lib/injectors/pilet.d.ts +1 -10
- package/lib/injectors/pilet.js +74 -27
- package/lib/injectors/pilet.js.map +1 -1
- package/lib/injectors/piral.d.ts +4 -2
- package/lib/injectors/piral.js +20 -5
- package/lib/injectors/piral.js.map +1 -1
- package/lib/messages.d.ts +11 -3
- package/lib/messages.js +11 -3
- package/lib/messages.js.map +1 -1
- package/lib/pb-cli.js +1 -1
- package/lib/pb-cli.js.map +1 -1
- package/lib/pilet-cli.js +1 -1
- package/lib/pilet-cli.js.map +1 -1
- package/lib/piral-cli.js +1 -1
- package/lib/piral-cli.js.map +1 -1
- package/lib/plugin.js +10 -10
- package/lib/plugin.js.map +1 -1
- package/lib/release.js +3 -3
- package/lib/release.js.map +1 -1
- package/lib/resolvers.js +13 -13
- package/lib/resolvers.js.map +1 -1
- package/lib/rules/index.js +7 -7
- package/lib/rules/index.js.map +1 -1
- package/lib/rules/pilet-has-externals-as-peers.js +3 -3
- package/lib/rules/pilet-has-externals-as-peers.js.map +1 -1
- package/lib/rules/pilet-has-no-self-reference.js +1 -1
- package/lib/rules/pilet-has-no-self-reference.js.map +1 -1
- package/lib/rules/pilet-stays-small.js +3 -3
- package/lib/rules/pilet-stays-small.js.map +1 -1
- package/lib/rules/pilet-uses-latest-piral.js +1 -1
- package/lib/rules/pilet-uses-latest-piral.js.map +1 -1
- package/lib/rules/piral-entry-ends-with-html.js +1 -1
- package/lib/rules/piral-entry-ends-with-html.js.map +1 -1
- package/lib/rules/piral-has-valid-files.js +5 -5
- package/lib/rules/piral-has-valid-files.js.map +1 -1
- package/lib/runner.js +1 -1
- package/lib/runner.js.map +1 -1
- package/lib/select.js +6 -6
- package/lib/select.js.map +1 -1
- package/lib/types/common.d.ts +8 -0
- package/lib/types/public.d.ts +66 -12
- package/package.json +3 -3
- package/src/apps/build-pilet.ts +7 -4
- package/src/apps/build-piral.ts +6 -5
- package/src/apps/debug-pilet.ts +3 -2
- package/src/apps/debug-piral.ts +2 -1
- package/src/apps/declaration-piral.ts +3 -1
- package/src/apps/new-pilet.ts +7 -3
- package/src/apps/new-piral.ts +2 -1
- package/src/apps/pack-pilet.ts +3 -1
- package/src/apps/publish-pilet.ts +6 -5
- package/src/apps/publish-piral.ts +3 -2
- package/src/apps/upgrade-pilet.ts +5 -4
- package/src/apps/upgrade-piral.ts +2 -1
- package/src/apps/validate-pilet.ts +5 -2
- package/src/apps/validate-piral.ts +3 -1
- package/src/build/bundler-calls.ts +121 -0
- package/src/build/run-build-pilet.ts +89 -0
- package/src/build/run-build-piral.ts +88 -0
- package/src/build/run-debug-mono-piral.ts +87 -0
- package/src/build/run-debug-pilet.ts +114 -0
- package/src/build/run-debug-piral.ts +106 -0
- package/src/bundler.test.ts +83 -68
- package/src/bundler.ts +52 -12
- package/src/common/config.ts +6 -1
- package/src/common/constants.ts +1 -1
- package/src/common/emulator.ts +1 -0
- package/src/common/hash.ts +5 -0
- package/src/common/http.ts +18 -4
- package/src/common/io.ts +4 -0
- package/src/common/npm.test.ts +14 -14
- package/src/common/npm.ts +21 -2
- package/src/common/package.ts +120 -9
- package/src/helpers.ts +2 -2
- package/src/injectors/pilet.ts +82 -22
- package/src/injectors/piral.test.ts +6 -5
- package/src/injectors/piral.ts +21 -2
- package/src/messages.ts +23 -15
- package/src/types/common.ts +9 -0
- package/src/types/public.ts +71 -20
package/lib/external/index.js
CHANGED
|
@@ -340,8 +340,6 @@ module.exports = child;
|
|
|
340
340
|
|
|
341
341
|
var bind = __webpack_require__(88);
|
|
342
342
|
|
|
343
|
-
/*global toString:true*/
|
|
344
|
-
|
|
345
343
|
// utils is a library of generic helper functions non-specific to axios
|
|
346
344
|
|
|
347
345
|
var toString = Object.prototype.toString;
|
|
@@ -525,7 +523,7 @@ function isURLSearchParams(val) {
|
|
|
525
523
|
* @returns {String} The String freed of excess whitespace
|
|
526
524
|
*/
|
|
527
525
|
function trim(str) {
|
|
528
|
-
return str.
|
|
526
|
+
return str.trim ? str.trim() : str.replace(/^\s+|\s+$/g, '');
|
|
529
527
|
}
|
|
530
528
|
|
|
531
529
|
/**
|
|
@@ -19388,6 +19386,7 @@ module.exports = function(err, opts = {}) {
|
|
|
19388
19386
|
|
|
19389
19387
|
const types = __webpack_require__(660)
|
|
19390
19388
|
const MiniPass = __webpack_require__(904)
|
|
19389
|
+
const normPath = __webpack_require__(716)
|
|
19391
19390
|
|
|
19392
19391
|
const SLURP = Symbol('slurp')
|
|
19393
19392
|
module.exports = class ReadEntry extends MiniPass {
|
|
@@ -19434,7 +19433,7 @@ module.exports = class ReadEntry extends MiniPass {
|
|
|
19434
19433
|
this.ignore = true
|
|
19435
19434
|
}
|
|
19436
19435
|
|
|
19437
|
-
this.path = header.path
|
|
19436
|
+
this.path = normPath(header.path)
|
|
19438
19437
|
this.mode = header.mode
|
|
19439
19438
|
if (this.mode)
|
|
19440
19439
|
this.mode = this.mode & 0o7777
|
|
@@ -19446,7 +19445,7 @@ module.exports = class ReadEntry extends MiniPass {
|
|
|
19446
19445
|
this.mtime = header.mtime
|
|
19447
19446
|
this.atime = header.atime
|
|
19448
19447
|
this.ctime = header.ctime
|
|
19449
|
-
this.linkpath = header.linkpath
|
|
19448
|
+
this.linkpath = normPath(header.linkpath)
|
|
19450
19449
|
this.uname = header.uname
|
|
19451
19450
|
this.gname = header.gname
|
|
19452
19451
|
|
|
@@ -19479,7 +19478,7 @@ module.exports = class ReadEntry extends MiniPass {
|
|
|
19479
19478
|
// a global extended header, because that's weird.
|
|
19480
19479
|
if (ex[k] !== null && ex[k] !== undefined &&
|
|
19481
19480
|
!(global && k === 'path'))
|
|
19482
|
-
this[k] = ex[k]
|
|
19481
|
+
this[k] = k === 'path' || k === 'linkpath' ? normPath(ex[k]) : ex[k]
|
|
19483
19482
|
}
|
|
19484
19483
|
}
|
|
19485
19484
|
}
|
|
@@ -19853,7 +19852,7 @@ exports.fetchAsyncQuestionProperty = function(question, prop, answers) {
|
|
|
19853
19852
|
"use strict";
|
|
19854
19853
|
|
|
19855
19854
|
const os = __webpack_require__(87);
|
|
19856
|
-
const hasFlag = __webpack_require__(
|
|
19855
|
+
const hasFlag = __webpack_require__(679);
|
|
19857
19856
|
|
|
19858
19857
|
const env = process.env;
|
|
19859
19858
|
|
|
@@ -20596,7 +20595,289 @@ module.exports = Separator;
|
|
|
20596
20595
|
|
|
20597
20596
|
|
|
20598
20597
|
/***/ }),
|
|
20599
|
-
/* 82
|
|
20598
|
+
/* 82 */
|
|
20599
|
+
/***/ (function(module, __unusedexports, __webpack_require__) {
|
|
20600
|
+
|
|
20601
|
+
"use strict";
|
|
20602
|
+
|
|
20603
|
+
/**
|
|
20604
|
+
* `rawlist` type prompt
|
|
20605
|
+
*/
|
|
20606
|
+
|
|
20607
|
+
var _ = __webpack_require__(53);
|
|
20608
|
+
var chalk = __webpack_require__(393);
|
|
20609
|
+
var { map, takeUntil } = __webpack_require__(605);
|
|
20610
|
+
var Base = __webpack_require__(966);
|
|
20611
|
+
var Separator = __webpack_require__(81);
|
|
20612
|
+
var observe = __webpack_require__(595);
|
|
20613
|
+
var Paginator = __webpack_require__(784);
|
|
20614
|
+
|
|
20615
|
+
class ExpandPrompt extends Base {
|
|
20616
|
+
constructor(questions, rl, answers) {
|
|
20617
|
+
super(questions, rl, answers);
|
|
20618
|
+
|
|
20619
|
+
if (!this.opt.choices) {
|
|
20620
|
+
this.throwParamError('choices');
|
|
20621
|
+
}
|
|
20622
|
+
|
|
20623
|
+
this.validateChoices(this.opt.choices);
|
|
20624
|
+
|
|
20625
|
+
// Add the default `help` (/expand) option
|
|
20626
|
+
this.opt.choices.push({
|
|
20627
|
+
key: 'h',
|
|
20628
|
+
name: 'Help, list all options',
|
|
20629
|
+
value: 'help'
|
|
20630
|
+
});
|
|
20631
|
+
|
|
20632
|
+
this.opt.validate = choice => {
|
|
20633
|
+
if (choice == null) {
|
|
20634
|
+
return 'Please enter a valid command';
|
|
20635
|
+
}
|
|
20636
|
+
|
|
20637
|
+
return choice !== 'help';
|
|
20638
|
+
};
|
|
20639
|
+
|
|
20640
|
+
// Setup the default string (capitalize the default key)
|
|
20641
|
+
this.opt.default = this.generateChoicesString(this.opt.choices, this.opt.default);
|
|
20642
|
+
|
|
20643
|
+
this.paginator = new Paginator(this.screen);
|
|
20644
|
+
}
|
|
20645
|
+
|
|
20646
|
+
/**
|
|
20647
|
+
* Start the Inquiry session
|
|
20648
|
+
* @param {Function} cb Callback when prompt is done
|
|
20649
|
+
* @return {this}
|
|
20650
|
+
*/
|
|
20651
|
+
|
|
20652
|
+
_run(cb) {
|
|
20653
|
+
this.done = cb;
|
|
20654
|
+
|
|
20655
|
+
// Save user answer and update prompt to show selected option.
|
|
20656
|
+
var events = observe(this.rl);
|
|
20657
|
+
var validation = this.handleSubmitEvents(
|
|
20658
|
+
events.line.pipe(map(this.getCurrentValue.bind(this)))
|
|
20659
|
+
);
|
|
20660
|
+
validation.success.forEach(this.onSubmit.bind(this));
|
|
20661
|
+
validation.error.forEach(this.onError.bind(this));
|
|
20662
|
+
this.keypressObs = events.keypress
|
|
20663
|
+
.pipe(takeUntil(validation.success))
|
|
20664
|
+
.forEach(this.onKeypress.bind(this));
|
|
20665
|
+
|
|
20666
|
+
// Init the prompt
|
|
20667
|
+
this.render();
|
|
20668
|
+
|
|
20669
|
+
return this;
|
|
20670
|
+
}
|
|
20671
|
+
|
|
20672
|
+
/**
|
|
20673
|
+
* Render the prompt to screen
|
|
20674
|
+
* @return {ExpandPrompt} self
|
|
20675
|
+
*/
|
|
20676
|
+
|
|
20677
|
+
render(error, hint) {
|
|
20678
|
+
var message = this.getQuestion();
|
|
20679
|
+
var bottomContent = '';
|
|
20680
|
+
|
|
20681
|
+
if (this.status === 'answered') {
|
|
20682
|
+
message += chalk.cyan(this.answer);
|
|
20683
|
+
} else if (this.status === 'expanded') {
|
|
20684
|
+
var choicesStr = renderChoices(this.opt.choices, this.selectedKey);
|
|
20685
|
+
message += this.paginator.paginate(choicesStr, this.selectedKey, this.opt.pageSize);
|
|
20686
|
+
message += '\n Answer: ';
|
|
20687
|
+
}
|
|
20688
|
+
|
|
20689
|
+
message += this.rl.line;
|
|
20690
|
+
|
|
20691
|
+
if (error) {
|
|
20692
|
+
bottomContent = chalk.red('>> ') + error;
|
|
20693
|
+
}
|
|
20694
|
+
|
|
20695
|
+
if (hint) {
|
|
20696
|
+
bottomContent = chalk.cyan('>> ') + hint;
|
|
20697
|
+
}
|
|
20698
|
+
|
|
20699
|
+
this.screen.render(message, bottomContent);
|
|
20700
|
+
}
|
|
20701
|
+
|
|
20702
|
+
getCurrentValue(input) {
|
|
20703
|
+
if (!input) {
|
|
20704
|
+
input = this.rawDefault;
|
|
20705
|
+
}
|
|
20706
|
+
|
|
20707
|
+
var selected = this.opt.choices.where({ key: input.toLowerCase().trim() })[0];
|
|
20708
|
+
if (!selected) {
|
|
20709
|
+
return null;
|
|
20710
|
+
}
|
|
20711
|
+
|
|
20712
|
+
return selected.value;
|
|
20713
|
+
}
|
|
20714
|
+
|
|
20715
|
+
/**
|
|
20716
|
+
* Generate the prompt choices string
|
|
20717
|
+
* @return {String} Choices string
|
|
20718
|
+
*/
|
|
20719
|
+
|
|
20720
|
+
getChoices() {
|
|
20721
|
+
var output = '';
|
|
20722
|
+
|
|
20723
|
+
this.opt.choices.forEach(choice => {
|
|
20724
|
+
output += '\n ';
|
|
20725
|
+
|
|
20726
|
+
if (choice.type === 'separator') {
|
|
20727
|
+
output += ' ' + choice;
|
|
20728
|
+
return;
|
|
20729
|
+
}
|
|
20730
|
+
|
|
20731
|
+
var choiceStr = choice.key + ') ' + choice.name;
|
|
20732
|
+
if (this.selectedKey === choice.key) {
|
|
20733
|
+
choiceStr = chalk.cyan(choiceStr);
|
|
20734
|
+
}
|
|
20735
|
+
|
|
20736
|
+
output += choiceStr;
|
|
20737
|
+
});
|
|
20738
|
+
|
|
20739
|
+
return output;
|
|
20740
|
+
}
|
|
20741
|
+
|
|
20742
|
+
onError(state) {
|
|
20743
|
+
if (state.value === 'help') {
|
|
20744
|
+
this.selectedKey = '';
|
|
20745
|
+
this.status = 'expanded';
|
|
20746
|
+
this.render();
|
|
20747
|
+
return;
|
|
20748
|
+
}
|
|
20749
|
+
|
|
20750
|
+
this.render(state.isValid);
|
|
20751
|
+
}
|
|
20752
|
+
|
|
20753
|
+
/**
|
|
20754
|
+
* When user press `enter` key
|
|
20755
|
+
*/
|
|
20756
|
+
|
|
20757
|
+
onSubmit(state) {
|
|
20758
|
+
this.status = 'answered';
|
|
20759
|
+
var choice = this.opt.choices.where({ value: state.value })[0];
|
|
20760
|
+
this.answer = choice.short || choice.name;
|
|
20761
|
+
|
|
20762
|
+
// Re-render prompt
|
|
20763
|
+
this.render();
|
|
20764
|
+
this.screen.done();
|
|
20765
|
+
this.done(state.value);
|
|
20766
|
+
}
|
|
20767
|
+
|
|
20768
|
+
/**
|
|
20769
|
+
* When user press a key
|
|
20770
|
+
*/
|
|
20771
|
+
|
|
20772
|
+
onKeypress() {
|
|
20773
|
+
this.selectedKey = this.rl.line.toLowerCase();
|
|
20774
|
+
var selected = this.opt.choices.where({ key: this.selectedKey })[0];
|
|
20775
|
+
if (this.status === 'expanded') {
|
|
20776
|
+
this.render();
|
|
20777
|
+
} else {
|
|
20778
|
+
this.render(null, selected ? selected.name : null);
|
|
20779
|
+
}
|
|
20780
|
+
}
|
|
20781
|
+
|
|
20782
|
+
/**
|
|
20783
|
+
* Validate the choices
|
|
20784
|
+
* @param {Array} choices
|
|
20785
|
+
*/
|
|
20786
|
+
|
|
20787
|
+
validateChoices(choices) {
|
|
20788
|
+
var formatError;
|
|
20789
|
+
var errors = [];
|
|
20790
|
+
var keymap = {};
|
|
20791
|
+
choices.filter(Separator.exclude).forEach(choice => {
|
|
20792
|
+
if (!choice.key || choice.key.length !== 1) {
|
|
20793
|
+
formatError = true;
|
|
20794
|
+
}
|
|
20795
|
+
|
|
20796
|
+
if (keymap[choice.key]) {
|
|
20797
|
+
errors.push(choice.key);
|
|
20798
|
+
}
|
|
20799
|
+
|
|
20800
|
+
keymap[choice.key] = true;
|
|
20801
|
+
choice.key = String(choice.key).toLowerCase();
|
|
20802
|
+
});
|
|
20803
|
+
|
|
20804
|
+
if (formatError) {
|
|
20805
|
+
throw new Error(
|
|
20806
|
+
'Format error: `key` param must be a single letter and is required.'
|
|
20807
|
+
);
|
|
20808
|
+
}
|
|
20809
|
+
|
|
20810
|
+
if (keymap.h) {
|
|
20811
|
+
throw new Error(
|
|
20812
|
+
'Reserved key error: `key` param cannot be `h` - this value is reserved.'
|
|
20813
|
+
);
|
|
20814
|
+
}
|
|
20815
|
+
|
|
20816
|
+
if (errors.length) {
|
|
20817
|
+
throw new Error(
|
|
20818
|
+
'Duplicate key error: `key` param must be unique. Duplicates: ' +
|
|
20819
|
+
_.uniq(errors).join(', ')
|
|
20820
|
+
);
|
|
20821
|
+
}
|
|
20822
|
+
}
|
|
20823
|
+
|
|
20824
|
+
/**
|
|
20825
|
+
* Generate a string out of the choices keys
|
|
20826
|
+
* @param {Array} choices
|
|
20827
|
+
* @param {Number|String} default - the choice index or name to capitalize
|
|
20828
|
+
* @return {String} The rendered choices key string
|
|
20829
|
+
*/
|
|
20830
|
+
generateChoicesString(choices, defaultChoice) {
|
|
20831
|
+
var defIndex = choices.realLength - 1;
|
|
20832
|
+
if (_.isNumber(defaultChoice) && this.opt.choices.getChoice(defaultChoice)) {
|
|
20833
|
+
defIndex = defaultChoice;
|
|
20834
|
+
} else if (_.isString(defaultChoice)) {
|
|
20835
|
+
let index = _.findIndex(
|
|
20836
|
+
choices.realChoices,
|
|
20837
|
+
({ value }) => value === defaultChoice
|
|
20838
|
+
);
|
|
20839
|
+
defIndex = index === -1 ? defIndex : index;
|
|
20840
|
+
}
|
|
20841
|
+
|
|
20842
|
+
var defStr = this.opt.choices.pluck('key');
|
|
20843
|
+
this.rawDefault = defStr[defIndex];
|
|
20844
|
+
defStr[defIndex] = String(defStr[defIndex]).toUpperCase();
|
|
20845
|
+
return defStr.join('');
|
|
20846
|
+
}
|
|
20847
|
+
}
|
|
20848
|
+
|
|
20849
|
+
/**
|
|
20850
|
+
* Function for rendering checkbox choices
|
|
20851
|
+
* @param {String} pointer Selected key
|
|
20852
|
+
* @return {String} Rendered content
|
|
20853
|
+
*/
|
|
20854
|
+
|
|
20855
|
+
function renderChoices(choices, pointer) {
|
|
20856
|
+
var output = '';
|
|
20857
|
+
|
|
20858
|
+
choices.forEach(choice => {
|
|
20859
|
+
output += '\n ';
|
|
20860
|
+
|
|
20861
|
+
if (choice.type === 'separator') {
|
|
20862
|
+
output += ' ' + choice;
|
|
20863
|
+
return;
|
|
20864
|
+
}
|
|
20865
|
+
|
|
20866
|
+
var choiceStr = choice.key + ') ' + choice.name;
|
|
20867
|
+
if (pointer === choice.key) {
|
|
20868
|
+
choiceStr = chalk.cyan(choiceStr);
|
|
20869
|
+
}
|
|
20870
|
+
|
|
20871
|
+
output += choiceStr;
|
|
20872
|
+
});
|
|
20873
|
+
|
|
20874
|
+
return output;
|
|
20875
|
+
}
|
|
20876
|
+
|
|
20877
|
+
module.exports = ExpandPrompt;
|
|
20878
|
+
|
|
20879
|
+
|
|
20880
|
+
/***/ }),
|
|
20600
20881
|
/* 83 */,
|
|
20601
20882
|
/* 84 */
|
|
20602
20883
|
/***/ (function(module, __unusedexports, __webpack_require__) {
|
|
@@ -20947,7 +21228,7 @@ module.exports = safer
|
|
|
20947
21228
|
"use strict";
|
|
20948
21229
|
|
|
20949
21230
|
const os = __webpack_require__(87);
|
|
20950
|
-
const hasFlag = __webpack_require__(
|
|
21231
|
+
const hasFlag = __webpack_require__(601);
|
|
20951
21232
|
|
|
20952
21233
|
const env = process.env;
|
|
20953
21234
|
|
|
@@ -21249,6 +21530,7 @@ mkdirP.sync = function sync (p, opts, made) {
|
|
|
21249
21530
|
|
|
21250
21531
|
|
|
21251
21532
|
var utils = __webpack_require__(9);
|
|
21533
|
+
var defaults = __webpack_require__(390);
|
|
21252
21534
|
|
|
21253
21535
|
/**
|
|
21254
21536
|
* Transform the data for a request or a response
|
|
@@ -21259,9 +21541,10 @@ var utils = __webpack_require__(9);
|
|
|
21259
21541
|
* @returns {*} The resulting transformed data
|
|
21260
21542
|
*/
|
|
21261
21543
|
module.exports = function transformData(data, headers, fns) {
|
|
21544
|
+
var context = this || defaults;
|
|
21262
21545
|
/*eslint no-param-reassign:0*/
|
|
21263
21546
|
utils.forEach(fns, function transform(fn) {
|
|
21264
|
-
data = fn(data, headers);
|
|
21547
|
+
data = fn.call(context, data, headers);
|
|
21265
21548
|
});
|
|
21266
21549
|
|
|
21267
21550
|
return data;
|
|
@@ -22166,6 +22449,7 @@ const Parser = __webpack_require__(469)
|
|
|
22166
22449
|
const fs = __webpack_require__(747)
|
|
22167
22450
|
const fsm = __webpack_require__(285)
|
|
22168
22451
|
const path = __webpack_require__(622)
|
|
22452
|
+
const stripSlash = __webpack_require__(442)
|
|
22169
22453
|
|
|
22170
22454
|
const t = module.exports = (opt_, files, cb) => {
|
|
22171
22455
|
if (typeof opt_ === 'function')
|
|
@@ -22211,7 +22495,7 @@ const onentryFunction = opt => {
|
|
|
22211
22495
|
// construct a filter that limits the file entries listed
|
|
22212
22496
|
// include child entries if a dir is included
|
|
22213
22497
|
const filesFilter = (opt, files) => {
|
|
22214
|
-
const map = new Map(files.map(f => [f
|
|
22498
|
+
const map = new Map(files.map(f => [stripSlash(f), true]))
|
|
22215
22499
|
const filter = opt.filter
|
|
22216
22500
|
|
|
22217
22501
|
const mapHas = (file, r) => {
|
|
@@ -22225,8 +22509,8 @@ const filesFilter = (opt, files) => {
|
|
|
22225
22509
|
}
|
|
22226
22510
|
|
|
22227
22511
|
opt.filter = filter
|
|
22228
|
-
? (file, entry) => filter(file, entry) && mapHas(file
|
|
22229
|
-
: file => mapHas(file
|
|
22512
|
+
? (file, entry) => filter(file, entry) && mapHas(stripSlash(file))
|
|
22513
|
+
: file => mapHas(stripSlash(file))
|
|
22230
22514
|
}
|
|
22231
22515
|
|
|
22232
22516
|
const listFileSync = opt => {
|
|
@@ -22297,7 +22581,8 @@ module.exports = function () {
|
|
|
22297
22581
|
/* eslint global-require: off */
|
|
22298
22582
|
debug = __webpack_require__(323)("follow-redirects");
|
|
22299
22583
|
}
|
|
22300
|
-
catch (error) {
|
|
22584
|
+
catch (error) { /* */ }
|
|
22585
|
+
if (typeof debug !== "function") {
|
|
22301
22586
|
debug = function () { /* */ };
|
|
22302
22587
|
}
|
|
22303
22588
|
}
|
|
@@ -22858,6 +23143,7 @@ const mkdirp = __webpack_require__(96)
|
|
|
22858
23143
|
const fs = __webpack_require__(747)
|
|
22859
23144
|
const path = __webpack_require__(622)
|
|
22860
23145
|
const chownr = __webpack_require__(185)
|
|
23146
|
+
const normPath = __webpack_require__(716)
|
|
22861
23147
|
|
|
22862
23148
|
class SymlinkError extends Error {
|
|
22863
23149
|
constructor (symlink, path) {
|
|
@@ -22883,7 +23169,20 @@ class CwdError extends Error {
|
|
|
22883
23169
|
}
|
|
22884
23170
|
}
|
|
22885
23171
|
|
|
22886
|
-
const
|
|
23172
|
+
const cGet = (cache, key) => cache.get(normPath(key))
|
|
23173
|
+
const cSet = (cache, key, val) => cache.set(normPath(key), val)
|
|
23174
|
+
|
|
23175
|
+
const checkCwd = (dir, cb) => {
|
|
23176
|
+
fs.stat(dir, (er, st) => {
|
|
23177
|
+
if (er || !st.isDirectory())
|
|
23178
|
+
er = new CwdError(dir, er && er.code || 'ENOTDIR')
|
|
23179
|
+
cb(er)
|
|
23180
|
+
})
|
|
23181
|
+
}
|
|
23182
|
+
|
|
23183
|
+
module.exports = (dir, opt, cb) => {
|
|
23184
|
+
dir = normPath(dir)
|
|
23185
|
+
|
|
22887
23186
|
// if there's any overlap between mask and mode,
|
|
22888
23187
|
// then we'll need an explicit chmod
|
|
22889
23188
|
const umask = opt.umask
|
|
@@ -22899,13 +23198,13 @@ const mkdir = module.exports = (dir, opt, cb) => {
|
|
|
22899
23198
|
const preserve = opt.preserve
|
|
22900
23199
|
const unlink = opt.unlink
|
|
22901
23200
|
const cache = opt.cache
|
|
22902
|
-
const cwd = opt.cwd
|
|
23201
|
+
const cwd = normPath(opt.cwd)
|
|
22903
23202
|
|
|
22904
23203
|
const done = (er, created) => {
|
|
22905
23204
|
if (er)
|
|
22906
23205
|
cb(er)
|
|
22907
23206
|
else {
|
|
22908
|
-
cache
|
|
23207
|
+
cSet(cache, dir, true)
|
|
22909
23208
|
if (created && doChown)
|
|
22910
23209
|
chownr(created, uid, gid, er => done(er))
|
|
22911
23210
|
else if (needChmod)
|
|
@@ -22915,21 +23214,17 @@ const mkdir = module.exports = (dir, opt, cb) => {
|
|
|
22915
23214
|
}
|
|
22916
23215
|
}
|
|
22917
23216
|
|
|
22918
|
-
if (cache && cache
|
|
23217
|
+
if (cache && cGet(cache, dir) === true)
|
|
22919
23218
|
return done()
|
|
22920
23219
|
|
|
22921
23220
|
if (dir === cwd)
|
|
22922
|
-
return
|
|
22923
|
-
if (er || !st.isDirectory())
|
|
22924
|
-
er = new CwdError(dir, er && er.code || 'ENOTDIR')
|
|
22925
|
-
done(er)
|
|
22926
|
-
})
|
|
23221
|
+
return checkCwd(dir, done)
|
|
22927
23222
|
|
|
22928
23223
|
if (preserve)
|
|
22929
23224
|
return mkdirp(dir, mode, done)
|
|
22930
23225
|
|
|
22931
|
-
const sub = path.relative(cwd, dir)
|
|
22932
|
-
const parts = sub.split(
|
|
23226
|
+
const sub = normPath(path.relative(cwd, dir))
|
|
23227
|
+
const parts = sub.split('/')
|
|
22933
23228
|
mkdir_(cwd, parts, mode, cache, unlink, cwd, null, done)
|
|
22934
23229
|
}
|
|
22935
23230
|
|
|
@@ -22937,22 +23232,19 @@ const mkdir_ = (base, parts, mode, cache, unlink, cwd, created, cb) => {
|
|
|
22937
23232
|
if (!parts.length)
|
|
22938
23233
|
return cb(null, created)
|
|
22939
23234
|
const p = parts.shift()
|
|
22940
|
-
const part = base + '/' + p
|
|
22941
|
-
if (cache
|
|
23235
|
+
const part = normPath(path.resolve(base + '/' + p))
|
|
23236
|
+
if (cGet(cache, part))
|
|
22942
23237
|
return mkdir_(part, parts, mode, cache, unlink, cwd, created, cb)
|
|
22943
23238
|
fs.mkdir(part, mode, onmkdir(part, parts, mode, cache, unlink, cwd, created, cb))
|
|
22944
23239
|
}
|
|
22945
23240
|
|
|
22946
23241
|
const onmkdir = (part, parts, mode, cache, unlink, cwd, created, cb) => er => {
|
|
22947
23242
|
if (er) {
|
|
22948
|
-
if (er.path && path.dirname(er.path) === cwd &&
|
|
22949
|
-
(er.code === 'ENOTDIR' || er.code === 'ENOENT'))
|
|
22950
|
-
return cb(new CwdError(cwd, er.code))
|
|
22951
|
-
|
|
22952
23243
|
fs.lstat(part, (statEr, st) => {
|
|
22953
|
-
if (statEr)
|
|
23244
|
+
if (statEr) {
|
|
23245
|
+
statEr.path = statEr.path && normPath(statEr.path)
|
|
22954
23246
|
cb(statEr)
|
|
22955
|
-
else if (st.isDirectory())
|
|
23247
|
+
} else if (st.isDirectory())
|
|
22956
23248
|
mkdir_(part, parts, mode, cache, unlink, cwd, created, cb)
|
|
22957
23249
|
else if (unlink)
|
|
22958
23250
|
fs.unlink(part, er => {
|
|
@@ -22971,7 +23263,21 @@ const onmkdir = (part, parts, mode, cache, unlink, cwd, created, cb) => er => {
|
|
|
22971
23263
|
}
|
|
22972
23264
|
}
|
|
22973
23265
|
|
|
22974
|
-
const
|
|
23266
|
+
const checkCwdSync = dir => {
|
|
23267
|
+
let ok = false
|
|
23268
|
+
let code = 'ENOTDIR'
|
|
23269
|
+
try {
|
|
23270
|
+
ok = fs.statSync(dir).isDirectory()
|
|
23271
|
+
} catch (er) {
|
|
23272
|
+
code = er.code
|
|
23273
|
+
} finally {
|
|
23274
|
+
if (!ok)
|
|
23275
|
+
throw new CwdError(dir, code)
|
|
23276
|
+
}
|
|
23277
|
+
}
|
|
23278
|
+
|
|
23279
|
+
module.exports.sync = (dir, opt) => {
|
|
23280
|
+
dir = normPath(dir)
|
|
22975
23281
|
// if there's any overlap between mask and mode,
|
|
22976
23282
|
// then we'll need an explicit chmod
|
|
22977
23283
|
const umask = opt.umask
|
|
@@ -22987,65 +23293,51 @@ const mkdirSync = module.exports.sync = (dir, opt) => {
|
|
|
22987
23293
|
const preserve = opt.preserve
|
|
22988
23294
|
const unlink = opt.unlink
|
|
22989
23295
|
const cache = opt.cache
|
|
22990
|
-
const cwd = opt.cwd
|
|
23296
|
+
const cwd = normPath(opt.cwd)
|
|
22991
23297
|
|
|
22992
23298
|
const done = (created) => {
|
|
22993
|
-
cache
|
|
23299
|
+
cSet(cache, dir, true)
|
|
22994
23300
|
if (created && doChown)
|
|
22995
23301
|
chownr.sync(created, uid, gid)
|
|
22996
23302
|
if (needChmod)
|
|
22997
23303
|
fs.chmodSync(dir, mode)
|
|
22998
23304
|
}
|
|
22999
23305
|
|
|
23000
|
-
if (cache && cache
|
|
23306
|
+
if (cache && cGet(cache, dir) === true)
|
|
23001
23307
|
return done()
|
|
23002
23308
|
|
|
23003
23309
|
if (dir === cwd) {
|
|
23004
|
-
|
|
23005
|
-
|
|
23006
|
-
try {
|
|
23007
|
-
ok = fs.statSync(dir).isDirectory()
|
|
23008
|
-
} catch (er) {
|
|
23009
|
-
code = er.code
|
|
23010
|
-
} finally {
|
|
23011
|
-
if (!ok)
|
|
23012
|
-
throw new CwdError(dir, code)
|
|
23013
|
-
}
|
|
23014
|
-
done()
|
|
23015
|
-
return
|
|
23310
|
+
checkCwdSync(cwd)
|
|
23311
|
+
return done()
|
|
23016
23312
|
}
|
|
23017
23313
|
|
|
23018
23314
|
if (preserve)
|
|
23019
23315
|
return done(mkdirp.sync(dir, mode))
|
|
23020
23316
|
|
|
23021
|
-
const sub = path.relative(cwd, dir)
|
|
23022
|
-
const parts = sub.split(
|
|
23317
|
+
const sub = normPath(path.relative(cwd, dir))
|
|
23318
|
+
const parts = sub.split('/')
|
|
23023
23319
|
let created = null
|
|
23024
23320
|
for (let p = parts.shift(), part = cwd;
|
|
23025
|
-
|
|
23026
|
-
|
|
23027
|
-
|
|
23028
|
-
if (cache
|
|
23321
|
+
p && (part += '/' + p);
|
|
23322
|
+
p = parts.shift()) {
|
|
23323
|
+
part = normPath(path.resolve(part))
|
|
23324
|
+
if (cGet(cache, part))
|
|
23029
23325
|
continue
|
|
23030
23326
|
|
|
23031
23327
|
try {
|
|
23032
23328
|
fs.mkdirSync(part, mode)
|
|
23033
23329
|
created = created || part
|
|
23034
|
-
cache
|
|
23330
|
+
cSet(cache, part, true)
|
|
23035
23331
|
} catch (er) {
|
|
23036
|
-
if (er.path && path.dirname(er.path) === cwd &&
|
|
23037
|
-
(er.code === 'ENOTDIR' || er.code === 'ENOENT'))
|
|
23038
|
-
return new CwdError(cwd, er.code)
|
|
23039
|
-
|
|
23040
23332
|
const st = fs.lstatSync(part)
|
|
23041
23333
|
if (st.isDirectory()) {
|
|
23042
|
-
cache
|
|
23334
|
+
cSet(cache, part, true)
|
|
23043
23335
|
continue
|
|
23044
23336
|
} else if (unlink) {
|
|
23045
23337
|
fs.unlinkSync(part)
|
|
23046
23338
|
fs.mkdirSync(part, mode)
|
|
23047
23339
|
created = created || part
|
|
23048
|
-
cache
|
|
23340
|
+
cSet(cache, part, true)
|
|
23049
23341
|
continue
|
|
23050
23342
|
} else if (st.isSymbolicLink())
|
|
23051
23343
|
return new SymlinkError(part, part + '/' + parts.join('/'))
|
|
@@ -25096,21 +25388,7 @@ exports.Action = Action;
|
|
|
25096
25388
|
|
|
25097
25389
|
/***/ }),
|
|
25098
25390
|
/* 180 */,
|
|
25099
|
-
/* 181
|
|
25100
|
-
/***/ (function(module) {
|
|
25101
|
-
|
|
25102
|
-
"use strict";
|
|
25103
|
-
|
|
25104
|
-
module.exports = (flag, argv) => {
|
|
25105
|
-
argv = argv || process.argv;
|
|
25106
|
-
const prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--');
|
|
25107
|
-
const pos = argv.indexOf(prefix + flag);
|
|
25108
|
-
const terminatorPos = argv.indexOf('--');
|
|
25109
|
-
return pos !== -1 && (terminatorPos === -1 ? true : pos < terminatorPos);
|
|
25110
|
-
};
|
|
25111
|
-
|
|
25112
|
-
|
|
25113
|
-
/***/ }),
|
|
25391
|
+
/* 181 */,
|
|
25114
25392
|
/* 182 */
|
|
25115
25393
|
/***/ (function(__unusedmodule, exports, __webpack_require__) {
|
|
25116
25394
|
|
|
@@ -28465,8 +28743,16 @@ const Header = __webpack_require__(126)
|
|
|
28465
28743
|
const ReadEntry = __webpack_require__(54)
|
|
28466
28744
|
const fs = __webpack_require__(747)
|
|
28467
28745
|
const path = __webpack_require__(622)
|
|
28746
|
+
const normPath = __webpack_require__(716)
|
|
28747
|
+
const stripSlash = __webpack_require__(442)
|
|
28748
|
+
|
|
28749
|
+
const prefixPath = (path, prefix) => {
|
|
28750
|
+
if (!prefix)
|
|
28751
|
+
return path
|
|
28752
|
+
path = normPath(path).replace(/^\.(\/|$)/, '')
|
|
28753
|
+
return stripSlash(prefix) + '/' + path
|
|
28754
|
+
}
|
|
28468
28755
|
|
|
28469
|
-
const types = __webpack_require__(660)
|
|
28470
28756
|
const maxReadSize = 16 * 1024 * 1024
|
|
28471
28757
|
const PROCESS = Symbol('process')
|
|
28472
28758
|
const FILE = Symbol('file')
|
|
@@ -28483,6 +28769,10 @@ const OPENFILE = Symbol('openfile')
|
|
|
28483
28769
|
const ONOPENFILE = Symbol('onopenfile')
|
|
28484
28770
|
const CLOSE = Symbol('close')
|
|
28485
28771
|
const MODE = Symbol('mode')
|
|
28772
|
+
const AWAITDRAIN = Symbol('awaitDrain')
|
|
28773
|
+
const ONDRAIN = Symbol('ondrain')
|
|
28774
|
+
const PREFIX = Symbol('prefix')
|
|
28775
|
+
const HAD_ERROR = Symbol('hadError')
|
|
28486
28776
|
const warner = __webpack_require__(289)
|
|
28487
28777
|
const winchars = __webpack_require__(147)
|
|
28488
28778
|
const stripAbsolutePath = __webpack_require__(779)
|
|
@@ -28495,21 +28785,31 @@ const WriteEntry = warner(class WriteEntry extends MiniPass {
|
|
|
28495
28785
|
super(opt)
|
|
28496
28786
|
if (typeof p !== 'string')
|
|
28497
28787
|
throw new TypeError('path is required')
|
|
28498
|
-
this.path = p
|
|
28788
|
+
this.path = normPath(p)
|
|
28499
28789
|
// suppress atime, ctime, uid, gid, uname, gname
|
|
28500
28790
|
this.portable = !!opt.portable
|
|
28501
28791
|
// until node has builtin pwnam functions, this'll have to do
|
|
28502
|
-
this.myuid = process.getuid && process.getuid()
|
|
28792
|
+
this.myuid = process.getuid && process.getuid() || 0
|
|
28503
28793
|
this.myuser = process.env.USER || ''
|
|
28504
28794
|
this.maxReadSize = opt.maxReadSize || maxReadSize
|
|
28505
28795
|
this.linkCache = opt.linkCache || new Map()
|
|
28506
28796
|
this.statCache = opt.statCache || new Map()
|
|
28507
28797
|
this.preservePaths = !!opt.preservePaths
|
|
28508
|
-
this.cwd = opt.cwd || process.cwd()
|
|
28798
|
+
this.cwd = normPath(opt.cwd || process.cwd())
|
|
28509
28799
|
this.strict = !!opt.strict
|
|
28510
28800
|
this.noPax = !!opt.noPax
|
|
28511
28801
|
this.noMtime = !!opt.noMtime
|
|
28512
28802
|
this.mtime = opt.mtime || null
|
|
28803
|
+
this.prefix = opt.prefix ? normPath(opt.prefix) : null
|
|
28804
|
+
|
|
28805
|
+
this.fd = null
|
|
28806
|
+
this.blockLen = null
|
|
28807
|
+
this.blockRemain = null
|
|
28808
|
+
this.buf = null
|
|
28809
|
+
this.offset = null
|
|
28810
|
+
this.length = null
|
|
28811
|
+
this.pos = null
|
|
28812
|
+
this.remain = null
|
|
28513
28813
|
|
|
28514
28814
|
if (typeof opt.onwarn === 'function')
|
|
28515
28815
|
this.on('warn', opt.onwarn)
|
|
@@ -28517,18 +28817,20 @@ const WriteEntry = warner(class WriteEntry extends MiniPass {
|
|
|
28517
28817
|
if (!this.preservePaths) {
|
|
28518
28818
|
const s = stripAbsolutePath(this.path)
|
|
28519
28819
|
if (s[0]) {
|
|
28820
|
+
this.warn('stripping ' + s[0] + ' from absolute path', this.path)
|
|
28520
28821
|
this.path = s[1]
|
|
28521
|
-
this.warn('stripping ' + s[0] + ' from absolute path', p)
|
|
28522
28822
|
}
|
|
28523
28823
|
}
|
|
28524
28824
|
|
|
28525
28825
|
this.win32 = !!opt.win32 || process.platform === 'win32'
|
|
28526
28826
|
if (this.win32) {
|
|
28827
|
+
// force the \ to / normalization, since we might not *actually*
|
|
28828
|
+
// be on windows, but want \ to be considered a path separator.
|
|
28527
28829
|
this.path = winchars.decode(this.path.replace(/\\/g, '/'))
|
|
28528
28830
|
p = p.replace(/\\/g, '/')
|
|
28529
28831
|
}
|
|
28530
28832
|
|
|
28531
|
-
this.absolute = opt.absolute || path.resolve(this.cwd, p)
|
|
28833
|
+
this.absolute = normPath(opt.absolute || path.resolve(this.cwd, p))
|
|
28532
28834
|
|
|
28533
28835
|
if (this.path === '')
|
|
28534
28836
|
this.path = './'
|
|
@@ -28539,6 +28841,12 @@ const WriteEntry = warner(class WriteEntry extends MiniPass {
|
|
|
28539
28841
|
this[LSTAT]()
|
|
28540
28842
|
}
|
|
28541
28843
|
|
|
28844
|
+
emit (ev, ...data) {
|
|
28845
|
+
if (ev === 'error')
|
|
28846
|
+
this[HAD_ERROR] = true
|
|
28847
|
+
return super.emit(ev, ...data)
|
|
28848
|
+
}
|
|
28849
|
+
|
|
28542
28850
|
[LSTAT] () {
|
|
28543
28851
|
fs.lstat(this.absolute, (er, stat) => {
|
|
28544
28852
|
if (er)
|
|
@@ -28571,13 +28879,19 @@ const WriteEntry = warner(class WriteEntry extends MiniPass {
|
|
|
28571
28879
|
return modeFix(mode, this.type === 'Directory')
|
|
28572
28880
|
}
|
|
28573
28881
|
|
|
28882
|
+
[PREFIX] (path) {
|
|
28883
|
+
return prefixPath(path, this.prefix)
|
|
28884
|
+
}
|
|
28885
|
+
|
|
28574
28886
|
[HEADER] () {
|
|
28575
28887
|
if (this.type === 'Directory' && this.portable)
|
|
28576
28888
|
this.noMtime = true
|
|
28577
28889
|
|
|
28578
28890
|
this.header = new Header({
|
|
28579
|
-
path: this.path,
|
|
28580
|
-
|
|
28891
|
+
path: this[PREFIX](this.path),
|
|
28892
|
+
// only apply the prefix to hard links.
|
|
28893
|
+
linkpath: this.type === 'Link' ? this[PREFIX](this.linkpath)
|
|
28894
|
+
: this.linkpath,
|
|
28581
28895
|
// only the permissions and setuid/setgid/sticky bitflags
|
|
28582
28896
|
// not the higher-order bits that specify file type
|
|
28583
28897
|
mode: this[MODE](this.stat.mode),
|
|
@@ -28592,14 +28906,15 @@ const WriteEntry = warner(class WriteEntry extends MiniPass {
|
|
|
28592
28906
|
ctime: this.portable ? null : this.stat.ctime
|
|
28593
28907
|
})
|
|
28594
28908
|
|
|
28595
|
-
if (this.header.encode() && !this.noPax)
|
|
28596
|
-
|
|
28909
|
+
if (this.header.encode() && !this.noPax) {
|
|
28910
|
+
super.write(new Pax({
|
|
28597
28911
|
atime: this.portable ? null : this.header.atime,
|
|
28598
28912
|
ctime: this.portable ? null : this.header.ctime,
|
|
28599
28913
|
gid: this.portable ? null : this.header.gid,
|
|
28600
28914
|
mtime: this.noMtime ? null : this.mtime || this.header.mtime,
|
|
28601
|
-
path: this.path,
|
|
28602
|
-
linkpath: this.linkpath
|
|
28915
|
+
path: this[PREFIX](this.path),
|
|
28916
|
+
linkpath: this.type === 'Link' ? this[PREFIX](this.linkpath)
|
|
28917
|
+
: this.linkpath,
|
|
28603
28918
|
size: this.header.size,
|
|
28604
28919
|
uid: this.portable ? null : this.header.uid,
|
|
28605
28920
|
uname: this.portable ? null : this.header.uname,
|
|
@@ -28607,7 +28922,8 @@ const WriteEntry = warner(class WriteEntry extends MiniPass {
|
|
|
28607
28922
|
ino: this.portable ? null : this.stat.ino,
|
|
28608
28923
|
nlink: this.portable ? null : this.stat.nlink
|
|
28609
28924
|
}).encode())
|
|
28610
|
-
|
|
28925
|
+
}
|
|
28926
|
+
super.write(this.header.block)
|
|
28611
28927
|
}
|
|
28612
28928
|
|
|
28613
28929
|
[DIRECTORY] () {
|
|
@@ -28627,14 +28943,14 @@ const WriteEntry = warner(class WriteEntry extends MiniPass {
|
|
|
28627
28943
|
}
|
|
28628
28944
|
|
|
28629
28945
|
[ONREADLINK] (linkpath) {
|
|
28630
|
-
this.linkpath = linkpath
|
|
28946
|
+
this.linkpath = normPath(linkpath)
|
|
28631
28947
|
this[HEADER]()
|
|
28632
28948
|
this.end()
|
|
28633
28949
|
}
|
|
28634
28950
|
|
|
28635
28951
|
[HARDLINK] (linkpath) {
|
|
28636
28952
|
this.type = 'Link'
|
|
28637
|
-
this.linkpath = path.relative(this.cwd, linkpath)
|
|
28953
|
+
this.linkpath = normPath(path.relative(this.cwd, linkpath))
|
|
28638
28954
|
this.stat.size = 0
|
|
28639
28955
|
this[HEADER]()
|
|
28640
28956
|
this.end()
|
|
@@ -28667,75 +28983,111 @@ const WriteEntry = warner(class WriteEntry extends MiniPass {
|
|
|
28667
28983
|
}
|
|
28668
28984
|
|
|
28669
28985
|
[ONOPENFILE] (fd) {
|
|
28670
|
-
|
|
28671
|
-
|
|
28672
|
-
|
|
28673
|
-
|
|
28674
|
-
|
|
28675
|
-
|
|
28676
|
-
|
|
28986
|
+
this.fd = fd
|
|
28987
|
+
if (this[HAD_ERROR])
|
|
28988
|
+
return this[CLOSE]()
|
|
28989
|
+
|
|
28990
|
+
this.blockLen = 512 * Math.ceil(this.stat.size / 512)
|
|
28991
|
+
this.blockRemain = this.blockLen
|
|
28992
|
+
const bufLen = Math.min(this.blockLen, this.maxReadSize)
|
|
28993
|
+
this.buf = Buffer.allocUnsafe(bufLen)
|
|
28994
|
+
this.offset = 0
|
|
28995
|
+
this.pos = 0
|
|
28996
|
+
this.remain = this.stat.size
|
|
28997
|
+
this.length = this.buf.length
|
|
28998
|
+
this[READ]()
|
|
28999
|
+
}
|
|
29000
|
+
|
|
29001
|
+
[READ] () {
|
|
29002
|
+
const { fd, buf, offset, length, pos } = this
|
|
28677
29003
|
fs.read(fd, buf, offset, length, pos, (er, bytesRead) => {
|
|
28678
|
-
if (er)
|
|
28679
|
-
|
|
28680
|
-
|
|
29004
|
+
if (er) {
|
|
29005
|
+
// ignoring the error from close(2) is a bad practice, but at
|
|
29006
|
+
// this point we already have an error, don't need another one
|
|
29007
|
+
return this[CLOSE](() => this.emit('error', er))
|
|
29008
|
+
}
|
|
29009
|
+
this[ONREAD](bytesRead)
|
|
28681
29010
|
})
|
|
28682
29011
|
}
|
|
28683
29012
|
|
|
28684
|
-
[CLOSE] (
|
|
28685
|
-
fs.close(fd, cb)
|
|
29013
|
+
[CLOSE] (cb) {
|
|
29014
|
+
fs.close(this.fd, cb)
|
|
28686
29015
|
}
|
|
28687
29016
|
|
|
28688
|
-
[ONREAD] (
|
|
28689
|
-
if (bytesRead <= 0 && remain > 0) {
|
|
29017
|
+
[ONREAD] (bytesRead) {
|
|
29018
|
+
if (bytesRead <= 0 && this.remain > 0) {
|
|
28690
29019
|
const er = new Error('encountered unexpected EOF')
|
|
28691
29020
|
er.path = this.absolute
|
|
28692
29021
|
er.syscall = 'read'
|
|
28693
29022
|
er.code = 'EOF'
|
|
28694
|
-
this[CLOSE](
|
|
28695
|
-
return this.emit('error', er)
|
|
29023
|
+
return this[CLOSE](() => this.emit('error', er))
|
|
28696
29024
|
}
|
|
28697
29025
|
|
|
28698
|
-
if (bytesRead > remain) {
|
|
29026
|
+
if (bytesRead > this.remain) {
|
|
28699
29027
|
const er = new Error('did not encounter expected EOF')
|
|
28700
29028
|
er.path = this.absolute
|
|
28701
29029
|
er.syscall = 'read'
|
|
28702
29030
|
er.code = 'EOF'
|
|
28703
|
-
this[CLOSE](
|
|
28704
|
-
return this.emit('error', er)
|
|
29031
|
+
return this[CLOSE](() => this.emit('error', er))
|
|
28705
29032
|
}
|
|
28706
29033
|
|
|
28707
29034
|
// null out the rest of the buffer, if we could fit the block padding
|
|
28708
|
-
|
|
28709
|
-
|
|
28710
|
-
|
|
28711
|
-
|
|
28712
|
-
|
|
29035
|
+
// at the end of this loop, we've incremented bytesRead and this.remain
|
|
29036
|
+
// to be incremented up to the blockRemain level, as if we had expected
|
|
29037
|
+
// to get a null-padded file, and read it until the end. then we will
|
|
29038
|
+
// decrement both remain and blockRemain by bytesRead, and know that we
|
|
29039
|
+
// reached the expected EOF, without any null buffer to append.
|
|
29040
|
+
if (bytesRead === this.remain) {
|
|
29041
|
+
for (let i = bytesRead; i < this.length && bytesRead < this.blockRemain; i++) {
|
|
29042
|
+
this.buf[i + this.offset] = 0
|
|
29043
|
+
bytesRead++
|
|
29044
|
+
this.remain++
|
|
28713
29045
|
}
|
|
28714
29046
|
}
|
|
28715
29047
|
|
|
28716
|
-
const writeBuf = offset === 0 && bytesRead === buf.length ?
|
|
28717
|
-
buf : buf.slice(offset, offset + bytesRead)
|
|
28718
|
-
remain -= bytesRead
|
|
28719
|
-
blockRemain -= bytesRead
|
|
28720
|
-
pos += bytesRead
|
|
28721
|
-
offset += bytesRead
|
|
29048
|
+
const writeBuf = this.offset === 0 && bytesRead === this.buf.length ?
|
|
29049
|
+
this.buf : this.buf.slice(this.offset, this.offset + bytesRead)
|
|
28722
29050
|
|
|
28723
|
-
this.write(writeBuf)
|
|
29051
|
+
const flushed = this.write(writeBuf)
|
|
29052
|
+
if (!flushed)
|
|
29053
|
+
this[AWAITDRAIN](() => this[ONDRAIN]())
|
|
29054
|
+
else
|
|
29055
|
+
this[ONDRAIN]()
|
|
29056
|
+
}
|
|
28724
29057
|
|
|
28725
|
-
|
|
28726
|
-
|
|
28727
|
-
|
|
28728
|
-
|
|
28729
|
-
|
|
28730
|
-
|
|
29058
|
+
[AWAITDRAIN] (cb) {
|
|
29059
|
+
this.once('drain', cb)
|
|
29060
|
+
}
|
|
29061
|
+
|
|
29062
|
+
write (writeBuf) {
|
|
29063
|
+
if (this.blockRemain < writeBuf.length) {
|
|
29064
|
+
const er = new Error('writing more data than expected')
|
|
29065
|
+
er.path = this.absolute
|
|
29066
|
+
return this.emit('error', er)
|
|
29067
|
+
}
|
|
29068
|
+
this.remain -= writeBuf.length
|
|
29069
|
+
this.blockRemain -= writeBuf.length
|
|
29070
|
+
this.pos += writeBuf.length
|
|
29071
|
+
this.offset += writeBuf.length
|
|
29072
|
+
return super.write(writeBuf)
|
|
29073
|
+
}
|
|
29074
|
+
|
|
29075
|
+
[ONDRAIN] () {
|
|
29076
|
+
if (!this.remain) {
|
|
29077
|
+
if (this.blockRemain)
|
|
29078
|
+
super.write(Buffer.alloc(this.blockRemain))
|
|
29079
|
+
return this[CLOSE](/* istanbul ignore next - legacy */
|
|
29080
|
+
er => er ? this.emit('error', er) : this.end())
|
|
28731
29081
|
}
|
|
28732
29082
|
|
|
28733
|
-
if (offset >= length) {
|
|
28734
|
-
|
|
28735
|
-
|
|
29083
|
+
if (this.offset >= this.length) {
|
|
29084
|
+
// if we only have a smaller bit left to read, alloc a smaller buffer
|
|
29085
|
+
// otherwise, keep it the same length it was before.
|
|
29086
|
+
this.buf = Buffer.allocUnsafe(Math.min(this.blockRemain, this.buf.length))
|
|
29087
|
+
this.offset = 0
|
|
28736
29088
|
}
|
|
28737
|
-
length = buf.length - offset
|
|
28738
|
-
this[READ](
|
|
29089
|
+
this.length = this.buf.length - this.offset
|
|
29090
|
+
this[READ]()
|
|
28739
29091
|
}
|
|
28740
29092
|
})
|
|
28741
29093
|
|
|
@@ -28756,20 +29108,31 @@ class WriteEntrySync extends WriteEntry {
|
|
|
28756
29108
|
this[ONOPENFILE](fs.openSync(this.absolute, 'r'))
|
|
28757
29109
|
}
|
|
28758
29110
|
|
|
28759
|
-
[READ] (
|
|
29111
|
+
[READ] () {
|
|
28760
29112
|
let threw = true
|
|
28761
29113
|
try {
|
|
29114
|
+
const { fd, buf, offset, length, pos } = this
|
|
28762
29115
|
const bytesRead = fs.readSync(fd, buf, offset, length, pos)
|
|
28763
|
-
this[ONREAD](
|
|
29116
|
+
this[ONREAD](bytesRead)
|
|
28764
29117
|
threw = false
|
|
28765
29118
|
} finally {
|
|
28766
|
-
|
|
28767
|
-
|
|
29119
|
+
// ignoring the error from close(2) is a bad practice, but at
|
|
29120
|
+
// this point we already have an error, don't need another one
|
|
29121
|
+
if (threw) {
|
|
29122
|
+
try {
|
|
29123
|
+
this[CLOSE](() => {})
|
|
29124
|
+
} catch (er) {}
|
|
29125
|
+
}
|
|
28768
29126
|
}
|
|
28769
29127
|
}
|
|
28770
29128
|
|
|
28771
|
-
[
|
|
28772
|
-
|
|
29129
|
+
[AWAITDRAIN] (cb) {
|
|
29130
|
+
cb()
|
|
29131
|
+
}
|
|
29132
|
+
|
|
29133
|
+
[CLOSE] (cb) {
|
|
29134
|
+
fs.closeSync(this.fd)
|
|
29135
|
+
cb()
|
|
28773
29136
|
}
|
|
28774
29137
|
}
|
|
28775
29138
|
|
|
@@ -28788,7 +29151,9 @@ const WriteEntryTar = warner(class WriteEntryTar extends MiniPass {
|
|
|
28788
29151
|
if (this.type === 'Directory' && this.portable)
|
|
28789
29152
|
this.noMtime = true
|
|
28790
29153
|
|
|
28791
|
-
this.
|
|
29154
|
+
this.prefix = opt.prefix || null
|
|
29155
|
+
|
|
29156
|
+
this.path = normPath(readEntry.path)
|
|
28792
29157
|
this.mode = this[MODE](readEntry.mode)
|
|
28793
29158
|
this.uid = this.portable ? null : readEntry.uid
|
|
28794
29159
|
this.gid = this.portable ? null : readEntry.gid
|
|
@@ -28798,7 +29163,7 @@ const WriteEntryTar = warner(class WriteEntryTar extends MiniPass {
|
|
|
28798
29163
|
this.mtime = this.noMtime ? null : opt.mtime || readEntry.mtime
|
|
28799
29164
|
this.atime = this.portable ? null : readEntry.atime
|
|
28800
29165
|
this.ctime = this.portable ? null : readEntry.ctime
|
|
28801
|
-
this.linkpath = readEntry.linkpath
|
|
29166
|
+
this.linkpath = normPath(readEntry.linkpath)
|
|
28802
29167
|
|
|
28803
29168
|
if (typeof opt.onwarn === 'function')
|
|
28804
29169
|
this.on('warn', opt.onwarn)
|
|
@@ -28818,8 +29183,9 @@ const WriteEntryTar = warner(class WriteEntryTar extends MiniPass {
|
|
|
28818
29183
|
this.blockRemain = readEntry.startBlockSize
|
|
28819
29184
|
|
|
28820
29185
|
this.header = new Header({
|
|
28821
|
-
path: this.path,
|
|
28822
|
-
linkpath: this.linkpath
|
|
29186
|
+
path: this[PREFIX](this.path),
|
|
29187
|
+
linkpath: this.type === 'Link' ? this[PREFIX](this.linkpath)
|
|
29188
|
+
: this.linkpath,
|
|
28823
29189
|
// only the permissions and setuid/setgid/sticky bitflags
|
|
28824
29190
|
// not the higher-order bits that specify file type
|
|
28825
29191
|
mode: this.mode,
|
|
@@ -28839,8 +29205,9 @@ const WriteEntryTar = warner(class WriteEntryTar extends MiniPass {
|
|
|
28839
29205
|
ctime: this.portable ? null : this.ctime,
|
|
28840
29206
|
gid: this.portable ? null : this.gid,
|
|
28841
29207
|
mtime: this.noMtime ? null : this.mtime,
|
|
28842
|
-
path: this.path,
|
|
28843
|
-
linkpath: this.linkpath
|
|
29208
|
+
path: this[PREFIX](this.path),
|
|
29209
|
+
linkpath: this.type === 'Link' ? this[PREFIX](this.linkpath)
|
|
29210
|
+
: this.linkpath,
|
|
28844
29211
|
size: this.size,
|
|
28845
29212
|
uid: this.portable ? null : this.uid,
|
|
28846
29213
|
uname: this.portable ? null : this.uname,
|
|
@@ -28853,6 +29220,10 @@ const WriteEntryTar = warner(class WriteEntryTar extends MiniPass {
|
|
|
28853
29220
|
readEntry.pipe(this)
|
|
28854
29221
|
}
|
|
28855
29222
|
|
|
29223
|
+
[PREFIX] (path) {
|
|
29224
|
+
return prefixPath(path, this.prefix)
|
|
29225
|
+
}
|
|
29226
|
+
|
|
28856
29227
|
[MODE] (mode) {
|
|
28857
29228
|
return modeFix(mode, this.type === 'Directory')
|
|
28858
29229
|
}
|
|
@@ -28867,7 +29238,7 @@ const WriteEntryTar = warner(class WriteEntryTar extends MiniPass {
|
|
|
28867
29238
|
|
|
28868
29239
|
end () {
|
|
28869
29240
|
if (this.blockRemain)
|
|
28870
|
-
|
|
29241
|
+
super.write(Buffer.alloc(this.blockRemain))
|
|
28871
29242
|
return super.end()
|
|
28872
29243
|
}
|
|
28873
29244
|
})
|
|
@@ -32859,7 +33230,118 @@ exports.UnsubscriptionError = UnsubscriptionErrorImpl;
|
|
|
32859
33230
|
//# sourceMappingURL=UnsubscriptionError.js.map
|
|
32860
33231
|
|
|
32861
33232
|
/***/ }),
|
|
32862
|
-
/* 368
|
|
33233
|
+
/* 368 */
|
|
33234
|
+
/***/ (function(module, __unusedexports, __webpack_require__) {
|
|
33235
|
+
|
|
33236
|
+
"use strict";
|
|
33237
|
+
|
|
33238
|
+
|
|
33239
|
+
var pkg = __webpack_require__(639);
|
|
33240
|
+
|
|
33241
|
+
var validators = {};
|
|
33242
|
+
|
|
33243
|
+
// eslint-disable-next-line func-names
|
|
33244
|
+
['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach(function(type, i) {
|
|
33245
|
+
validators[type] = function validator(thing) {
|
|
33246
|
+
return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;
|
|
33247
|
+
};
|
|
33248
|
+
});
|
|
33249
|
+
|
|
33250
|
+
var deprecatedWarnings = {};
|
|
33251
|
+
var currentVerArr = pkg.version.split('.');
|
|
33252
|
+
|
|
33253
|
+
/**
|
|
33254
|
+
* Compare package versions
|
|
33255
|
+
* @param {string} version
|
|
33256
|
+
* @param {string?} thanVersion
|
|
33257
|
+
* @returns {boolean}
|
|
33258
|
+
*/
|
|
33259
|
+
function isOlderVersion(version, thanVersion) {
|
|
33260
|
+
var pkgVersionArr = thanVersion ? thanVersion.split('.') : currentVerArr;
|
|
33261
|
+
var destVer = version.split('.');
|
|
33262
|
+
for (var i = 0; i < 3; i++) {
|
|
33263
|
+
if (pkgVersionArr[i] > destVer[i]) {
|
|
33264
|
+
return true;
|
|
33265
|
+
} else if (pkgVersionArr[i] < destVer[i]) {
|
|
33266
|
+
return false;
|
|
33267
|
+
}
|
|
33268
|
+
}
|
|
33269
|
+
return false;
|
|
33270
|
+
}
|
|
33271
|
+
|
|
33272
|
+
/**
|
|
33273
|
+
* Transitional option validator
|
|
33274
|
+
* @param {function|boolean?} validator
|
|
33275
|
+
* @param {string?} version
|
|
33276
|
+
* @param {string} message
|
|
33277
|
+
* @returns {function}
|
|
33278
|
+
*/
|
|
33279
|
+
validators.transitional = function transitional(validator, version, message) {
|
|
33280
|
+
var isDeprecated = version && isOlderVersion(version);
|
|
33281
|
+
|
|
33282
|
+
function formatMessage(opt, desc) {
|
|
33283
|
+
return '[Axios v' + pkg.version + '] Transitional option \'' + opt + '\'' + desc + (message ? '. ' + message : '');
|
|
33284
|
+
}
|
|
33285
|
+
|
|
33286
|
+
// eslint-disable-next-line func-names
|
|
33287
|
+
return function(value, opt, opts) {
|
|
33288
|
+
if (validator === false) {
|
|
33289
|
+
throw new Error(formatMessage(opt, ' has been removed in ' + version));
|
|
33290
|
+
}
|
|
33291
|
+
|
|
33292
|
+
if (isDeprecated && !deprecatedWarnings[opt]) {
|
|
33293
|
+
deprecatedWarnings[opt] = true;
|
|
33294
|
+
// eslint-disable-next-line no-console
|
|
33295
|
+
console.warn(
|
|
33296
|
+
formatMessage(
|
|
33297
|
+
opt,
|
|
33298
|
+
' has been deprecated since v' + version + ' and will be removed in the near future'
|
|
33299
|
+
)
|
|
33300
|
+
);
|
|
33301
|
+
}
|
|
33302
|
+
|
|
33303
|
+
return validator ? validator(value, opt, opts) : true;
|
|
33304
|
+
};
|
|
33305
|
+
};
|
|
33306
|
+
|
|
33307
|
+
/**
|
|
33308
|
+
* Assert object's properties type
|
|
33309
|
+
* @param {object} options
|
|
33310
|
+
* @param {object} schema
|
|
33311
|
+
* @param {boolean?} allowUnknown
|
|
33312
|
+
*/
|
|
33313
|
+
|
|
33314
|
+
function assertOptions(options, schema, allowUnknown) {
|
|
33315
|
+
if (typeof options !== 'object') {
|
|
33316
|
+
throw new TypeError('options must be an object');
|
|
33317
|
+
}
|
|
33318
|
+
var keys = Object.keys(options);
|
|
33319
|
+
var i = keys.length;
|
|
33320
|
+
while (i-- > 0) {
|
|
33321
|
+
var opt = keys[i];
|
|
33322
|
+
var validator = schema[opt];
|
|
33323
|
+
if (validator) {
|
|
33324
|
+
var value = options[opt];
|
|
33325
|
+
var result = value === undefined || validator(value, opt, options);
|
|
33326
|
+
if (result !== true) {
|
|
33327
|
+
throw new TypeError('option ' + opt + ' must be ' + result);
|
|
33328
|
+
}
|
|
33329
|
+
continue;
|
|
33330
|
+
}
|
|
33331
|
+
if (allowUnknown !== true) {
|
|
33332
|
+
throw Error('Unknown option ' + opt);
|
|
33333
|
+
}
|
|
33334
|
+
}
|
|
33335
|
+
}
|
|
33336
|
+
|
|
33337
|
+
module.exports = {
|
|
33338
|
+
isOlderVersion: isOlderVersion,
|
|
33339
|
+
assertOptions: assertOptions,
|
|
33340
|
+
validators: validators
|
|
33341
|
+
};
|
|
33342
|
+
|
|
33343
|
+
|
|
33344
|
+
/***/ }),
|
|
32863
33345
|
/* 369 */
|
|
32864
33346
|
/***/ (function(module, __unusedexports, __webpack_require__) {
|
|
32865
33347
|
|
|
@@ -33443,7 +33925,7 @@ var TakeSubscriber = (function (_super) {
|
|
|
33443
33925
|
"use strict";
|
|
33444
33926
|
|
|
33445
33927
|
const os = __webpack_require__(87);
|
|
33446
|
-
const hasFlag = __webpack_require__(
|
|
33928
|
+
const hasFlag = __webpack_require__(584);
|
|
33447
33929
|
|
|
33448
33930
|
const env = process.env;
|
|
33449
33931
|
|
|
@@ -33584,6 +34066,7 @@ module.exports = {
|
|
|
33584
34066
|
|
|
33585
34067
|
var utils = __webpack_require__(9);
|
|
33586
34068
|
var normalizeHeaderName = __webpack_require__(513);
|
|
34069
|
+
var enhanceError = __webpack_require__(47);
|
|
33587
34070
|
|
|
33588
34071
|
var DEFAULT_CONTENT_TYPE = {
|
|
33589
34072
|
'Content-Type': 'application/x-www-form-urlencoded'
|
|
@@ -33608,11 +34091,19 @@ function getDefaultAdapter() {
|
|
|
33608
34091
|
}
|
|
33609
34092
|
|
|
33610
34093
|
var defaults = {
|
|
34094
|
+
|
|
34095
|
+
transitional: {
|
|
34096
|
+
silentJSONParsing: true,
|
|
34097
|
+
forcedJSONParsing: true,
|
|
34098
|
+
clarifyTimeoutError: false
|
|
34099
|
+
},
|
|
34100
|
+
|
|
33611
34101
|
adapter: getDefaultAdapter(),
|
|
33612
34102
|
|
|
33613
34103
|
transformRequest: [function transformRequest(data, headers) {
|
|
33614
34104
|
normalizeHeaderName(headers, 'Accept');
|
|
33615
34105
|
normalizeHeaderName(headers, 'Content-Type');
|
|
34106
|
+
|
|
33616
34107
|
if (utils.isFormData(data) ||
|
|
33617
34108
|
utils.isArrayBuffer(data) ||
|
|
33618
34109
|
utils.isBuffer(data) ||
|
|
@@ -33629,20 +34120,32 @@ var defaults = {
|
|
|
33629
34120
|
setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');
|
|
33630
34121
|
return data.toString();
|
|
33631
34122
|
}
|
|
33632
|
-
if (utils.isObject(data)) {
|
|
33633
|
-
setContentTypeIfUnset(headers, 'application/json
|
|
34123
|
+
if (utils.isObject(data) || (headers && headers['Content-Type'] === 'application/json')) {
|
|
34124
|
+
setContentTypeIfUnset(headers, 'application/json');
|
|
33634
34125
|
return JSON.stringify(data);
|
|
33635
34126
|
}
|
|
33636
34127
|
return data;
|
|
33637
34128
|
}],
|
|
33638
34129
|
|
|
33639
34130
|
transformResponse: [function transformResponse(data) {
|
|
33640
|
-
|
|
33641
|
-
|
|
34131
|
+
var transitional = this.transitional;
|
|
34132
|
+
var silentJSONParsing = transitional && transitional.silentJSONParsing;
|
|
34133
|
+
var forcedJSONParsing = transitional && transitional.forcedJSONParsing;
|
|
34134
|
+
var strictJSONParsing = !silentJSONParsing && this.responseType === 'json';
|
|
34135
|
+
|
|
34136
|
+
if (strictJSONParsing || (forcedJSONParsing && utils.isString(data) && data.length)) {
|
|
33642
34137
|
try {
|
|
33643
|
-
|
|
33644
|
-
} catch (e) {
|
|
34138
|
+
return JSON.parse(data);
|
|
34139
|
+
} catch (e) {
|
|
34140
|
+
if (strictJSONParsing) {
|
|
34141
|
+
if (e.name === 'SyntaxError') {
|
|
34142
|
+
throw enhanceError(e, this, 'E_JSON_PARSE');
|
|
34143
|
+
}
|
|
34144
|
+
throw e;
|
|
34145
|
+
}
|
|
34146
|
+
}
|
|
33645
34147
|
}
|
|
34148
|
+
|
|
33646
34149
|
return data;
|
|
33647
34150
|
}],
|
|
33648
34151
|
|
|
@@ -36859,7 +37362,36 @@ exports.AnonymousSubject = AnonymousSubject;
|
|
|
36859
37362
|
//# sourceMappingURL=Subject.js.map
|
|
36860
37363
|
|
|
36861
37364
|
/***/ }),
|
|
36862
|
-
/* 442
|
|
37365
|
+
/* 442 */
|
|
37366
|
+
/***/ (function(module) {
|
|
37367
|
+
|
|
37368
|
+
// this is the only approach that was significantly faster than using
|
|
37369
|
+
// str.replace(/\/+$/, '') for strings ending with a lot of / chars and
|
|
37370
|
+
// containing multiple / chars.
|
|
37371
|
+
const batchStrings = [
|
|
37372
|
+
'/'.repeat(1024),
|
|
37373
|
+
'/'.repeat(512),
|
|
37374
|
+
'/'.repeat(256),
|
|
37375
|
+
'/'.repeat(128),
|
|
37376
|
+
'/'.repeat(64),
|
|
37377
|
+
'/'.repeat(32),
|
|
37378
|
+
'/'.repeat(16),
|
|
37379
|
+
'/'.repeat(8),
|
|
37380
|
+
'/'.repeat(4),
|
|
37381
|
+
'/'.repeat(2),
|
|
37382
|
+
'/',
|
|
37383
|
+
]
|
|
37384
|
+
|
|
37385
|
+
module.exports = str => {
|
|
37386
|
+
for (const s of batchStrings) {
|
|
37387
|
+
while (str.length >= s.length && str.slice(-1 * s.length) === s)
|
|
37388
|
+
str = str.slice(0, -1 * s.length)
|
|
37389
|
+
}
|
|
37390
|
+
return str
|
|
37391
|
+
}
|
|
37392
|
+
|
|
37393
|
+
|
|
37394
|
+
/***/ }),
|
|
36863
37395
|
/* 443 */
|
|
36864
37396
|
/***/ (function(module, __unusedexports, __webpack_require__) {
|
|
36865
37397
|
|
|
@@ -37496,6 +38028,7 @@ module.exports = function xhrAdapter(config) {
|
|
|
37496
38028
|
return new Promise(function dispatchXhrRequest(resolve, reject) {
|
|
37497
38029
|
var requestData = config.data;
|
|
37498
38030
|
var requestHeaders = config.headers;
|
|
38031
|
+
var responseType = config.responseType;
|
|
37499
38032
|
|
|
37500
38033
|
if (utils.isFormData(requestData)) {
|
|
37501
38034
|
delete requestHeaders['Content-Type']; // Let the browser set it
|
|
@@ -37516,23 +38049,14 @@ module.exports = function xhrAdapter(config) {
|
|
|
37516
38049
|
// Set the request timeout in MS
|
|
37517
38050
|
request.timeout = config.timeout;
|
|
37518
38051
|
|
|
37519
|
-
|
|
37520
|
-
|
|
37521
|
-
if (!request || request.readyState !== 4) {
|
|
37522
|
-
return;
|
|
37523
|
-
}
|
|
37524
|
-
|
|
37525
|
-
// The request errored out and we didn't get a response, this will be
|
|
37526
|
-
// handled by onerror instead
|
|
37527
|
-
// With one exception: request that using file: protocol, most browsers
|
|
37528
|
-
// will return status as 0 even though it's a successful request
|
|
37529
|
-
if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {
|
|
38052
|
+
function onloadend() {
|
|
38053
|
+
if (!request) {
|
|
37530
38054
|
return;
|
|
37531
38055
|
}
|
|
37532
|
-
|
|
37533
38056
|
// Prepare the response
|
|
37534
38057
|
var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;
|
|
37535
|
-
var responseData = !
|
|
38058
|
+
var responseData = !responseType || responseType === 'text' || responseType === 'json' ?
|
|
38059
|
+
request.responseText : request.response;
|
|
37536
38060
|
var response = {
|
|
37537
38061
|
data: responseData,
|
|
37538
38062
|
status: request.status,
|
|
@@ -37546,7 +38070,30 @@ module.exports = function xhrAdapter(config) {
|
|
|
37546
38070
|
|
|
37547
38071
|
// Clean up request
|
|
37548
38072
|
request = null;
|
|
37549
|
-
}
|
|
38073
|
+
}
|
|
38074
|
+
|
|
38075
|
+
if ('onloadend' in request) {
|
|
38076
|
+
// Use onloadend if available
|
|
38077
|
+
request.onloadend = onloadend;
|
|
38078
|
+
} else {
|
|
38079
|
+
// Listen for ready state to emulate onloadend
|
|
38080
|
+
request.onreadystatechange = function handleLoad() {
|
|
38081
|
+
if (!request || request.readyState !== 4) {
|
|
38082
|
+
return;
|
|
38083
|
+
}
|
|
38084
|
+
|
|
38085
|
+
// The request errored out and we didn't get a response, this will be
|
|
38086
|
+
// handled by onerror instead
|
|
38087
|
+
// With one exception: request that using file: protocol, most browsers
|
|
38088
|
+
// will return status as 0 even though it's a successful request
|
|
38089
|
+
if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {
|
|
38090
|
+
return;
|
|
38091
|
+
}
|
|
38092
|
+
// readystate handler is calling before onerror or ontimeout handlers,
|
|
38093
|
+
// so we should call onloadend on the next 'tick'
|
|
38094
|
+
setTimeout(onloadend);
|
|
38095
|
+
};
|
|
38096
|
+
}
|
|
37550
38097
|
|
|
37551
38098
|
// Handle browser request cancellation (as opposed to a manual cancellation)
|
|
37552
38099
|
request.onabort = function handleAbort() {
|
|
@@ -37576,7 +38123,10 @@ module.exports = function xhrAdapter(config) {
|
|
|
37576
38123
|
if (config.timeoutErrorMessage) {
|
|
37577
38124
|
timeoutErrorMessage = config.timeoutErrorMessage;
|
|
37578
38125
|
}
|
|
37579
|
-
reject(createError(
|
|
38126
|
+
reject(createError(
|
|
38127
|
+
timeoutErrorMessage,
|
|
38128
|
+
config,
|
|
38129
|
+
config.transitional && config.transitional.clarifyTimeoutError ? 'ETIMEDOUT' : 'ECONNABORTED',
|
|
37580
38130
|
request));
|
|
37581
38131
|
|
|
37582
38132
|
// Clean up request
|
|
@@ -37616,16 +38166,8 @@ module.exports = function xhrAdapter(config) {
|
|
|
37616
38166
|
}
|
|
37617
38167
|
|
|
37618
38168
|
// Add responseType to request if needed
|
|
37619
|
-
if (
|
|
37620
|
-
|
|
37621
|
-
request.responseType = config.responseType;
|
|
37622
|
-
} catch (e) {
|
|
37623
|
-
// Expected DOMException thrown by browsers not compatible XMLHttpRequest Level 2.
|
|
37624
|
-
// But, this can be suppressed for 'json' type as it can be parsed by default 'transformResponse' function.
|
|
37625
|
-
if (config.responseType !== 'json') {
|
|
37626
|
-
throw e;
|
|
37627
|
-
}
|
|
37628
|
-
}
|
|
38169
|
+
if (responseType && responseType !== 'json') {
|
|
38170
|
+
request.responseType = config.responseType;
|
|
37629
38171
|
}
|
|
37630
38172
|
|
|
37631
38173
|
// Handle progress if needed
|
|
@@ -38950,10 +39492,12 @@ function InterceptorManager() {
|
|
|
38950
39492
|
*
|
|
38951
39493
|
* @return {Number} An ID used to remove interceptor later
|
|
38952
39494
|
*/
|
|
38953
|
-
InterceptorManager.prototype.use = function use(fulfilled, rejected) {
|
|
39495
|
+
InterceptorManager.prototype.use = function use(fulfilled, rejected, options) {
|
|
38954
39496
|
this.handlers.push({
|
|
38955
39497
|
fulfilled: fulfilled,
|
|
38956
|
-
rejected: rejected
|
|
39498
|
+
rejected: rejected,
|
|
39499
|
+
synchronous: options ? options.synchronous : false,
|
|
39500
|
+
runWhen: options ? options.runWhen : null
|
|
38957
39501
|
});
|
|
38958
39502
|
return this.handlers.length - 1;
|
|
38959
39503
|
};
|
|
@@ -39271,7 +39815,7 @@ util.inherits(module.exports.UTF_32LE, UTF_32);
|
|
|
39271
39815
|
/* 523 */
|
|
39272
39816
|
/***/ (function(module) {
|
|
39273
39817
|
|
|
39274
|
-
module.exports = {"application/1d-interleaved-parityfec":{"source":"iana"},"application/3gpdash-qoe-report+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/3gpp-ims+xml":{"source":"iana","compressible":true},"application/a2l":{"source":"iana"},"application/activemessage":{"source":"iana"},"application/activity+json":{"source":"iana","compressible":true},"application/alto-costmap+json":{"source":"iana","compressible":true},"application/alto-costmapfilter+json":{"source":"iana","compressible":true},"application/alto-directory+json":{"source":"iana","compressible":true},"application/alto-endpointcost+json":{"source":"iana","compressible":true},"application/alto-endpointcostparams+json":{"source":"iana","compressible":true},"application/alto-endpointprop+json":{"source":"iana","compressible":true},"application/alto-endpointpropparams+json":{"source":"iana","compressible":true},"application/alto-error+json":{"source":"iana","compressible":true},"application/alto-networkmap+json":{"source":"iana","compressible":true},"application/alto-networkmapfilter+json":{"source":"iana","compressible":true},"application/alto-updatestreamcontrol+json":{"source":"iana","compressible":true},"application/alto-updatestreamparams+json":{"source":"iana","compressible":true},"application/aml":{"source":"iana"},"application/andrew-inset":{"source":"iana","extensions":["ez"]},"application/applefile":{"source":"iana"},"application/applixware":{"source":"apache","extensions":["aw"]},"application/atf":{"source":"iana"},"application/atfx":{"source":"iana"},"application/atom+xml":{"source":"iana","compressible":true,"extensions":["atom"]},"application/atomcat+xml":{"source":"iana","compressible":true,"extensions":["atomcat"]},"application/atomdeleted+xml":{"source":"iana","compressible":true,"extensions":["atomdeleted"]},"application/atomicmail":{"source":"iana"},"application/atomsvc+xml":{"source":"iana","compressible":true,"extensions":["atomsvc"]},"application/atsc-dwd+xml":{"source":"iana","compressible":true,"extensions":["dwd"]},"application/atsc-dynamic-event-message":{"source":"iana"},"application/atsc-held+xml":{"source":"iana","compressible":true,"extensions":["held"]},"application/atsc-rdt+json":{"source":"iana","compressible":true},"application/atsc-rsat+xml":{"source":"iana","compressible":true,"extensions":["rsat"]},"application/atxml":{"source":"iana"},"application/auth-policy+xml":{"source":"iana","compressible":true},"application/bacnet-xdd+zip":{"source":"iana","compressible":false},"application/batch-smtp":{"source":"iana"},"application/bdoc":{"compressible":false,"extensions":["bdoc"]},"application/beep+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/calendar+json":{"source":"iana","compressible":true},"application/calendar+xml":{"source":"iana","compressible":true,"extensions":["xcs"]},"application/call-completion":{"source":"iana"},"application/cals-1840":{"source":"iana"},"application/captive+json":{"source":"iana","compressible":true},"application/cbor":{"source":"iana"},"application/cbor-seq":{"source":"iana"},"application/cccex":{"source":"iana"},"application/ccmp+xml":{"source":"iana","compressible":true},"application/ccxml+xml":{"source":"iana","compressible":true,"extensions":["ccxml"]},"application/cdfx+xml":{"source":"iana","compressible":true,"extensions":["cdfx"]},"application/cdmi-capability":{"source":"iana","extensions":["cdmia"]},"application/cdmi-container":{"source":"iana","extensions":["cdmic"]},"application/cdmi-domain":{"source":"iana","extensions":["cdmid"]},"application/cdmi-object":{"source":"iana","extensions":["cdmio"]},"application/cdmi-queue":{"source":"iana","extensions":["cdmiq"]},"application/cdni":{"source":"iana"},"application/cea":{"source":"iana"},"application/cea-2018+xml":{"source":"iana","compressible":true},"application/cellml+xml":{"source":"iana","compressible":true},"application/cfw":{"source":"iana"},"application/clr":{"source":"iana"},"application/clue+xml":{"source":"iana","compressible":true},"application/clue_info+xml":{"source":"iana","compressible":true},"application/cms":{"source":"iana"},"application/cnrp+xml":{"source":"iana","compressible":true},"application/coap-group+json":{"source":"iana","compressible":true},"application/coap-payload":{"source":"iana"},"application/commonground":{"source":"iana"},"application/conference-info+xml":{"source":"iana","compressible":true},"application/cose":{"source":"iana"},"application/cose-key":{"source":"iana"},"application/cose-key-set":{"source":"iana"},"application/cpl+xml":{"source":"iana","compressible":true},"application/csrattrs":{"source":"iana"},"application/csta+xml":{"source":"iana","compressible":true},"application/cstadata+xml":{"source":"iana","compressible":true},"application/csvm+json":{"source":"iana","compressible":true},"application/cu-seeme":{"source":"apache","extensions":["cu"]},"application/cwt":{"source":"iana"},"application/cybercash":{"source":"iana"},"application/dart":{"compressible":true},"application/dash+xml":{"source":"iana","compressible":true,"extensions":["mpd"]},"application/dashdelta":{"source":"iana"},"application/davmount+xml":{"source":"iana","compressible":true,"extensions":["davmount"]},"application/dca-rft":{"source":"iana"},"application/dcd":{"source":"iana"},"application/dec-dx":{"source":"iana"},"application/dialog-info+xml":{"source":"iana","compressible":true},"application/dicom":{"source":"iana"},"application/dicom+json":{"source":"iana","compressible":true},"application/dicom+xml":{"source":"iana","compressible":true},"application/dii":{"source":"iana"},"application/dit":{"source":"iana"},"application/dns":{"source":"iana"},"application/dns+json":{"source":"iana","compressible":true},"application/dns-message":{"source":"iana"},"application/docbook+xml":{"source":"apache","compressible":true,"extensions":["dbk"]},"application/dots+cbor":{"source":"iana"},"application/dskpp+xml":{"source":"iana","compressible":true},"application/dssc+der":{"source":"iana","extensions":["dssc"]},"application/dssc+xml":{"source":"iana","compressible":true,"extensions":["xdssc"]},"application/dvcs":{"source":"iana"},"application/ecmascript":{"source":"iana","compressible":true,"extensions":["es","ecma"]},"application/edi-consent":{"source":"iana"},"application/edi-x12":{"source":"iana","compressible":false},"application/edifact":{"source":"iana","compressible":false},"application/efi":{"source":"iana"},"application/elm+json":{"source":"iana","charset":"UTF-8","compressible":true},"application/elm+xml":{"source":"iana","compressible":true},"application/emergencycalldata.cap+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/emergencycalldata.comment+xml":{"source":"iana","compressible":true},"application/emergencycalldata.control+xml":{"source":"iana","compressible":true},"application/emergencycalldata.deviceinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.ecall.msd":{"source":"iana"},"application/emergencycalldata.providerinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.serviceinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.subscriberinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.veds+xml":{"source":"iana","compressible":true},"application/emma+xml":{"source":"iana","compressible":true,"extensions":["emma"]},"application/emotionml+xml":{"source":"iana","compressible":true,"extensions":["emotionml"]},"application/encaprtp":{"source":"iana"},"application/epp+xml":{"source":"iana","compressible":true},"application/epub+zip":{"source":"iana","compressible":false,"extensions":["epub"]},"application/eshop":{"source":"iana"},"application/exi":{"source":"iana","extensions":["exi"]},"application/expect-ct-report+json":{"source":"iana","compressible":true},"application/fastinfoset":{"source":"iana"},"application/fastsoap":{"source":"iana"},"application/fdt+xml":{"source":"iana","compressible":true,"extensions":["fdt"]},"application/fhir+json":{"source":"iana","charset":"UTF-8","compressible":true},"application/fhir+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/fido.trusted-apps+json":{"compressible":true},"application/fits":{"source":"iana"},"application/flexfec":{"source":"iana"},"application/font-sfnt":{"source":"iana"},"application/font-tdpfr":{"source":"iana","extensions":["pfr"]},"application/font-woff":{"source":"iana","compressible":false},"application/framework-attributes+xml":{"source":"iana","compressible":true},"application/geo+json":{"source":"iana","compressible":true,"extensions":["geojson"]},"application/geo+json-seq":{"source":"iana"},"application/geopackage+sqlite3":{"source":"iana"},"application/geoxacml+xml":{"source":"iana","compressible":true},"application/gltf-buffer":{"source":"iana"},"application/gml+xml":{"source":"iana","compressible":true,"extensions":["gml"]},"application/gpx+xml":{"source":"apache","compressible":true,"extensions":["gpx"]},"application/gxf":{"source":"apache","extensions":["gxf"]},"application/gzip":{"source":"iana","compressible":false,"extensions":["gz"]},"application/h224":{"source":"iana"},"application/held+xml":{"source":"iana","compressible":true},"application/hjson":{"extensions":["hjson"]},"application/http":{"source":"iana"},"application/hyperstudio":{"source":"iana","extensions":["stk"]},"application/ibe-key-request+xml":{"source":"iana","compressible":true},"application/ibe-pkg-reply+xml":{"source":"iana","compressible":true},"application/ibe-pp-data":{"source":"iana"},"application/iges":{"source":"iana"},"application/im-iscomposing+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/index":{"source":"iana"},"application/index.cmd":{"source":"iana"},"application/index.obj":{"source":"iana"},"application/index.response":{"source":"iana"},"application/index.vnd":{"source":"iana"},"application/inkml+xml":{"source":"iana","compressible":true,"extensions":["ink","inkml"]},"application/iotp":{"source":"iana"},"application/ipfix":{"source":"iana","extensions":["ipfix"]},"application/ipp":{"source":"iana"},"application/isup":{"source":"iana"},"application/its+xml":{"source":"iana","compressible":true,"extensions":["its"]},"application/java-archive":{"source":"apache","compressible":false,"extensions":["jar","war","ear"]},"application/java-serialized-object":{"source":"apache","compressible":false,"extensions":["ser"]},"application/java-vm":{"source":"apache","compressible":false,"extensions":["class"]},"application/javascript":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["js","mjs"]},"application/jf2feed+json":{"source":"iana","compressible":true},"application/jose":{"source":"iana"},"application/jose+json":{"source":"iana","compressible":true},"application/jrd+json":{"source":"iana","compressible":true},"application/jscalendar+json":{"source":"iana","compressible":true},"application/json":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["json","map"]},"application/json-patch+json":{"source":"iana","compressible":true},"application/json-seq":{"source":"iana"},"application/json5":{"extensions":["json5"]},"application/jsonml+json":{"source":"apache","compressible":true,"extensions":["jsonml"]},"application/jwk+json":{"source":"iana","compressible":true},"application/jwk-set+json":{"source":"iana","compressible":true},"application/jwt":{"source":"iana"},"application/kpml-request+xml":{"source":"iana","compressible":true},"application/kpml-response+xml":{"source":"iana","compressible":true},"application/ld+json":{"source":"iana","compressible":true,"extensions":["jsonld"]},"application/lgr+xml":{"source":"iana","compressible":true,"extensions":["lgr"]},"application/link-format":{"source":"iana"},"application/load-control+xml":{"source":"iana","compressible":true},"application/lost+xml":{"source":"iana","compressible":true,"extensions":["lostxml"]},"application/lostsync+xml":{"source":"iana","compressible":true},"application/lpf+zip":{"source":"iana","compressible":false},"application/lxf":{"source":"iana"},"application/mac-binhex40":{"source":"iana","extensions":["hqx"]},"application/mac-compactpro":{"source":"apache","extensions":["cpt"]},"application/macwriteii":{"source":"iana"},"application/mads+xml":{"source":"iana","compressible":true,"extensions":["mads"]},"application/manifest+json":{"charset":"UTF-8","compressible":true,"extensions":["webmanifest"]},"application/marc":{"source":"iana","extensions":["mrc"]},"application/marcxml+xml":{"source":"iana","compressible":true,"extensions":["mrcx"]},"application/mathematica":{"source":"iana","extensions":["ma","nb","mb"]},"application/mathml+xml":{"source":"iana","compressible":true,"extensions":["mathml"]},"application/mathml-content+xml":{"source":"iana","compressible":true},"application/mathml-presentation+xml":{"source":"iana","compressible":true},"application/mbms-associated-procedure-description+xml":{"source":"iana","compressible":true},"application/mbms-deregister+xml":{"source":"iana","compressible":true},"application/mbms-envelope+xml":{"source":"iana","compressible":true},"application/mbms-msk+xml":{"source":"iana","compressible":true},"application/mbms-msk-response+xml":{"source":"iana","compressible":true},"application/mbms-protection-description+xml":{"source":"iana","compressible":true},"application/mbms-reception-report+xml":{"source":"iana","compressible":true},"application/mbms-register+xml":{"source":"iana","compressible":true},"application/mbms-register-response+xml":{"source":"iana","compressible":true},"application/mbms-schedule+xml":{"source":"iana","compressible":true},"application/mbms-user-service-description+xml":{"source":"iana","compressible":true},"application/mbox":{"source":"iana","extensions":["mbox"]},"application/media-policy-dataset+xml":{"source":"iana","compressible":true},"application/media_control+xml":{"source":"iana","compressible":true},"application/mediaservercontrol+xml":{"source":"iana","compressible":true,"extensions":["mscml"]},"application/merge-patch+json":{"source":"iana","compressible":true},"application/metalink+xml":{"source":"apache","compressible":true,"extensions":["metalink"]},"application/metalink4+xml":{"source":"iana","compressible":true,"extensions":["meta4"]},"application/mets+xml":{"source":"iana","compressible":true,"extensions":["mets"]},"application/mf4":{"source":"iana"},"application/mikey":{"source":"iana"},"application/mipc":{"source":"iana"},"application/mmt-aei+xml":{"source":"iana","compressible":true,"extensions":["maei"]},"application/mmt-usd+xml":{"source":"iana","compressible":true,"extensions":["musd"]},"application/mods+xml":{"source":"iana","compressible":true,"extensions":["mods"]},"application/moss-keys":{"source":"iana"},"application/moss-signature":{"source":"iana"},"application/mosskey-data":{"source":"iana"},"application/mosskey-request":{"source":"iana"},"application/mp21":{"source":"iana","extensions":["m21","mp21"]},"application/mp4":{"source":"iana","extensions":["mp4s","m4p"]},"application/mpeg4-generic":{"source":"iana"},"application/mpeg4-iod":{"source":"iana"},"application/mpeg4-iod-xmt":{"source":"iana"},"application/mrb-consumer+xml":{"source":"iana","compressible":true},"application/mrb-publish+xml":{"source":"iana","compressible":true},"application/msc-ivr+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/msc-mixer+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/msword":{"source":"iana","compressible":false,"extensions":["doc","dot"]},"application/mud+json":{"source":"iana","compressible":true},"application/multipart-core":{"source":"iana"},"application/mxf":{"source":"iana","extensions":["mxf"]},"application/n-quads":{"source":"iana","extensions":["nq"]},"application/n-triples":{"source":"iana","extensions":["nt"]},"application/nasdata":{"source":"iana"},"application/news-checkgroups":{"source":"iana","charset":"US-ASCII"},"application/news-groupinfo":{"source":"iana","charset":"US-ASCII"},"application/news-transmission":{"source":"iana"},"application/nlsml+xml":{"source":"iana","compressible":true},"application/node":{"source":"iana","extensions":["cjs"]},"application/nss":{"source":"iana"},"application/ocsp-request":{"source":"iana"},"application/ocsp-response":{"source":"iana"},"application/octet-stream":{"source":"iana","compressible":false,"extensions":["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{"source":"iana","extensions":["oda"]},"application/odm+xml":{"source":"iana","compressible":true},"application/odx":{"source":"iana"},"application/oebps-package+xml":{"source":"iana","compressible":true,"extensions":["opf"]},"application/ogg":{"source":"iana","compressible":false,"extensions":["ogx"]},"application/omdoc+xml":{"source":"apache","compressible":true,"extensions":["omdoc"]},"application/onenote":{"source":"apache","extensions":["onetoc","onetoc2","onetmp","onepkg"]},"application/opc-nodeset+xml":{"source":"iana","compressible":true},"application/oscore":{"source":"iana"},"application/oxps":{"source":"iana","extensions":["oxps"]},"application/p2p-overlay+xml":{"source":"iana","compressible":true,"extensions":["relo"]},"application/parityfec":{"source":"iana"},"application/passport":{"source":"iana"},"application/patch-ops-error+xml":{"source":"iana","compressible":true,"extensions":["xer"]},"application/pdf":{"source":"iana","compressible":false,"extensions":["pdf"]},"application/pdx":{"source":"iana"},"application/pem-certificate-chain":{"source":"iana"},"application/pgp-encrypted":{"source":"iana","compressible":false,"extensions":["pgp"]},"application/pgp-keys":{"source":"iana"},"application/pgp-signature":{"source":"iana","extensions":["asc","sig"]},"application/pics-rules":{"source":"apache","extensions":["prf"]},"application/pidf+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/pidf-diff+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/pkcs10":{"source":"iana","extensions":["p10"]},"application/pkcs12":{"source":"iana"},"application/pkcs7-mime":{"source":"iana","extensions":["p7m","p7c"]},"application/pkcs7-signature":{"source":"iana","extensions":["p7s"]},"application/pkcs8":{"source":"iana","extensions":["p8"]},"application/pkcs8-encrypted":{"source":"iana"},"application/pkix-attr-cert":{"source":"iana","extensions":["ac"]},"application/pkix-cert":{"source":"iana","extensions":["cer"]},"application/pkix-crl":{"source":"iana","extensions":["crl"]},"application/pkix-pkipath":{"source":"iana","extensions":["pkipath"]},"application/pkixcmp":{"source":"iana","extensions":["pki"]},"application/pls+xml":{"source":"iana","compressible":true,"extensions":["pls"]},"application/poc-settings+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/postscript":{"source":"iana","compressible":true,"extensions":["ai","eps","ps"]},"application/ppsp-tracker+json":{"source":"iana","compressible":true},"application/problem+json":{"source":"iana","compressible":true},"application/problem+xml":{"source":"iana","compressible":true},"application/provenance+xml":{"source":"iana","compressible":true,"extensions":["provx"]},"application/prs.alvestrand.titrax-sheet":{"source":"iana"},"application/prs.cww":{"source":"iana","extensions":["cww"]},"application/prs.cyn":{"source":"iana","charset":"7-BIT"},"application/prs.hpub+zip":{"source":"iana","compressible":false},"application/prs.nprend":{"source":"iana"},"application/prs.plucker":{"source":"iana"},"application/prs.rdf-xml-crypt":{"source":"iana"},"application/prs.xsf+xml":{"source":"iana","compressible":true},"application/pskc+xml":{"source":"iana","compressible":true,"extensions":["pskcxml"]},"application/pvd+json":{"source":"iana","compressible":true},"application/qsig":{"source":"iana"},"application/raml+yaml":{"compressible":true,"extensions":["raml"]},"application/raptorfec":{"source":"iana"},"application/rdap+json":{"source":"iana","compressible":true},"application/rdf+xml":{"source":"iana","compressible":true,"extensions":["rdf","owl"]},"application/reginfo+xml":{"source":"iana","compressible":true,"extensions":["rif"]},"application/relax-ng-compact-syntax":{"source":"iana","extensions":["rnc"]},"application/remote-printing":{"source":"iana"},"application/reputon+json":{"source":"iana","compressible":true},"application/resource-lists+xml":{"source":"iana","compressible":true,"extensions":["rl"]},"application/resource-lists-diff+xml":{"source":"iana","compressible":true,"extensions":["rld"]},"application/rfc+xml":{"source":"iana","compressible":true},"application/riscos":{"source":"iana"},"application/rlmi+xml":{"source":"iana","compressible":true},"application/rls-services+xml":{"source":"iana","compressible":true,"extensions":["rs"]},"application/route-apd+xml":{"source":"iana","compressible":true,"extensions":["rapd"]},"application/route-s-tsid+xml":{"source":"iana","compressible":true,"extensions":["sls"]},"application/route-usd+xml":{"source":"iana","compressible":true,"extensions":["rusd"]},"application/rpki-ghostbusters":{"source":"iana","extensions":["gbr"]},"application/rpki-manifest":{"source":"iana","extensions":["mft"]},"application/rpki-publication":{"source":"iana"},"application/rpki-roa":{"source":"iana","extensions":["roa"]},"application/rpki-updown":{"source":"iana"},"application/rsd+xml":{"source":"apache","compressible":true,"extensions":["rsd"]},"application/rss+xml":{"source":"apache","compressible":true,"extensions":["rss"]},"application/rtf":{"source":"iana","compressible":true,"extensions":["rtf"]},"application/rtploopback":{"source":"iana"},"application/rtx":{"source":"iana"},"application/samlassertion+xml":{"source":"iana","compressible":true},"application/samlmetadata+xml":{"source":"iana","compressible":true},"application/sarif+json":{"source":"iana","compressible":true},"application/sbe":{"source":"iana"},"application/sbml+xml":{"source":"iana","compressible":true,"extensions":["sbml"]},"application/scaip+xml":{"source":"iana","compressible":true},"application/scim+json":{"source":"iana","compressible":true},"application/scvp-cv-request":{"source":"iana","extensions":["scq"]},"application/scvp-cv-response":{"source":"iana","extensions":["scs"]},"application/scvp-vp-request":{"source":"iana","extensions":["spq"]},"application/scvp-vp-response":{"source":"iana","extensions":["spp"]},"application/sdp":{"source":"iana","extensions":["sdp"]},"application/secevent+jwt":{"source":"iana"},"application/senml+cbor":{"source":"iana"},"application/senml+json":{"source":"iana","compressible":true},"application/senml+xml":{"source":"iana","compressible":true,"extensions":["senmlx"]},"application/senml-etch+cbor":{"source":"iana"},"application/senml-etch+json":{"source":"iana","compressible":true},"application/senml-exi":{"source":"iana"},"application/sensml+cbor":{"source":"iana"},"application/sensml+json":{"source":"iana","compressible":true},"application/sensml+xml":{"source":"iana","compressible":true,"extensions":["sensmlx"]},"application/sensml-exi":{"source":"iana"},"application/sep+xml":{"source":"iana","compressible":true},"application/sep-exi":{"source":"iana"},"application/session-info":{"source":"iana"},"application/set-payment":{"source":"iana"},"application/set-payment-initiation":{"source":"iana","extensions":["setpay"]},"application/set-registration":{"source":"iana"},"application/set-registration-initiation":{"source":"iana","extensions":["setreg"]},"application/sgml":{"source":"iana"},"application/sgml-open-catalog":{"source":"iana"},"application/shf+xml":{"source":"iana","compressible":true,"extensions":["shf"]},"application/sieve":{"source":"iana","extensions":["siv","sieve"]},"application/simple-filter+xml":{"source":"iana","compressible":true},"application/simple-message-summary":{"source":"iana"},"application/simplesymbolcontainer":{"source":"iana"},"application/sipc":{"source":"iana"},"application/slate":{"source":"iana"},"application/smil":{"source":"iana"},"application/smil+xml":{"source":"iana","compressible":true,"extensions":["smi","smil"]},"application/smpte336m":{"source":"iana"},"application/soap+fastinfoset":{"source":"iana"},"application/soap+xml":{"source":"iana","compressible":true},"application/sparql-query":{"source":"iana","extensions":["rq"]},"application/sparql-results+xml":{"source":"iana","compressible":true,"extensions":["srx"]},"application/spirits-event+xml":{"source":"iana","compressible":true},"application/sql":{"source":"iana"},"application/srgs":{"source":"iana","extensions":["gram"]},"application/srgs+xml":{"source":"iana","compressible":true,"extensions":["grxml"]},"application/sru+xml":{"source":"iana","compressible":true,"extensions":["sru"]},"application/ssdl+xml":{"source":"apache","compressible":true,"extensions":["ssdl"]},"application/ssml+xml":{"source":"iana","compressible":true,"extensions":["ssml"]},"application/stix+json":{"source":"iana","compressible":true},"application/swid+xml":{"source":"iana","compressible":true,"extensions":["swidtag"]},"application/tamp-apex-update":{"source":"iana"},"application/tamp-apex-update-confirm":{"source":"iana"},"application/tamp-community-update":{"source":"iana"},"application/tamp-community-update-confirm":{"source":"iana"},"application/tamp-error":{"source":"iana"},"application/tamp-sequence-adjust":{"source":"iana"},"application/tamp-sequence-adjust-confirm":{"source":"iana"},"application/tamp-status-query":{"source":"iana"},"application/tamp-status-response":{"source":"iana"},"application/tamp-update":{"source":"iana"},"application/tamp-update-confirm":{"source":"iana"},"application/tar":{"compressible":true},"application/taxii+json":{"source":"iana","compressible":true},"application/td+json":{"source":"iana","compressible":true},"application/tei+xml":{"source":"iana","compressible":true,"extensions":["tei","teicorpus"]},"application/tetra_isi":{"source":"iana"},"application/thraud+xml":{"source":"iana","compressible":true,"extensions":["tfi"]},"application/timestamp-query":{"source":"iana"},"application/timestamp-reply":{"source":"iana"},"application/timestamped-data":{"source":"iana","extensions":["tsd"]},"application/tlsrpt+gzip":{"source":"iana"},"application/tlsrpt+json":{"source":"iana","compressible":true},"application/tnauthlist":{"source":"iana"},"application/toml":{"compressible":true,"extensions":["toml"]},"application/trickle-ice-sdpfrag":{"source":"iana"},"application/trig":{"source":"iana"},"application/ttml+xml":{"source":"iana","compressible":true,"extensions":["ttml"]},"application/tve-trigger":{"source":"iana"},"application/tzif":{"source":"iana"},"application/tzif-leap":{"source":"iana"},"application/ubjson":{"compressible":false,"extensions":["ubj"]},"application/ulpfec":{"source":"iana"},"application/urc-grpsheet+xml":{"source":"iana","compressible":true},"application/urc-ressheet+xml":{"source":"iana","compressible":true,"extensions":["rsheet"]},"application/urc-targetdesc+xml":{"source":"iana","compressible":true,"extensions":["td"]},"application/urc-uisocketdesc+xml":{"source":"iana","compressible":true},"application/vcard+json":{"source":"iana","compressible":true},"application/vcard+xml":{"source":"iana","compressible":true},"application/vemmi":{"source":"iana"},"application/vividence.scriptfile":{"source":"apache"},"application/vnd.1000minds.decision-model+xml":{"source":"iana","compressible":true,"extensions":["1km"]},"application/vnd.3gpp-prose+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-prose-pc3ch+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-v2x-local-service-information":{"source":"iana"},"application/vnd.3gpp.access-transfer-events+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.bsf+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.gmop+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.interworking-data":{"source":"iana"},"application/vnd.3gpp.mc-signalling-ear":{"source":"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-payload":{"source":"iana"},"application/vnd.3gpp.mcdata-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-signalling":{"source":"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-floor-request+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-location-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-signed+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-ue-init-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-affiliation-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-location-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-transmission-request+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mid-call+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.pic-bw-large":{"source":"iana","extensions":["plb"]},"application/vnd.3gpp.pic-bw-small":{"source":"iana","extensions":["psb"]},"application/vnd.3gpp.pic-bw-var":{"source":"iana","extensions":["pvb"]},"application/vnd.3gpp.sms":{"source":"iana"},"application/vnd.3gpp.sms+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.srvcc-ext+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.srvcc-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.state-and-event-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.ussd+xml":{"source":"iana","compressible":true},"application/vnd.3gpp2.bcmcsinfo+xml":{"source":"iana","compressible":true},"application/vnd.3gpp2.sms":{"source":"iana"},"application/vnd.3gpp2.tcap":{"source":"iana","extensions":["tcap"]},"application/vnd.3lightssoftware.imagescal":{"source":"iana"},"application/vnd.3m.post-it-notes":{"source":"iana","extensions":["pwn"]},"application/vnd.accpac.simply.aso":{"source":"iana","extensions":["aso"]},"application/vnd.accpac.simply.imp":{"source":"iana","extensions":["imp"]},"application/vnd.acucobol":{"source":"iana","extensions":["acu"]},"application/vnd.acucorp":{"source":"iana","extensions":["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{"source":"apache","compressible":false,"extensions":["air"]},"application/vnd.adobe.flash.movie":{"source":"iana"},"application/vnd.adobe.formscentral.fcdt":{"source":"iana","extensions":["fcdt"]},"application/vnd.adobe.fxp":{"source":"iana","extensions":["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{"source":"iana"},"application/vnd.adobe.xdp+xml":{"source":"iana","compressible":true,"extensions":["xdp"]},"application/vnd.adobe.xfdf":{"source":"iana","extensions":["xfdf"]},"application/vnd.aether.imp":{"source":"iana"},"application/vnd.afpc.afplinedata":{"source":"iana"},"application/vnd.afpc.afplinedata-pagedef":{"source":"iana"},"application/vnd.afpc.cmoca-cmresource":{"source":"iana"},"application/vnd.afpc.foca-charset":{"source":"iana"},"application/vnd.afpc.foca-codedfont":{"source":"iana"},"application/vnd.afpc.foca-codepage":{"source":"iana"},"application/vnd.afpc.modca":{"source":"iana"},"application/vnd.afpc.modca-cmtable":{"source":"iana"},"application/vnd.afpc.modca-formdef":{"source":"iana"},"application/vnd.afpc.modca-mediummap":{"source":"iana"},"application/vnd.afpc.modca-objectcontainer":{"source":"iana"},"application/vnd.afpc.modca-overlay":{"source":"iana"},"application/vnd.afpc.modca-pagesegment":{"source":"iana"},"application/vnd.ah-barcode":{"source":"iana"},"application/vnd.ahead.space":{"source":"iana","extensions":["ahead"]},"application/vnd.airzip.filesecure.azf":{"source":"iana","extensions":["azf"]},"application/vnd.airzip.filesecure.azs":{"source":"iana","extensions":["azs"]},"application/vnd.amadeus+json":{"source":"iana","compressible":true},"application/vnd.amazon.ebook":{"source":"apache","extensions":["azw"]},"application/vnd.amazon.mobi8-ebook":{"source":"iana"},"application/vnd.americandynamics.acc":{"source":"iana","extensions":["acc"]},"application/vnd.amiga.ami":{"source":"iana","extensions":["ami"]},"application/vnd.amundsen.maze+xml":{"source":"iana","compressible":true},"application/vnd.android.ota":{"source":"iana"},"application/vnd.android.package-archive":{"source":"apache","compressible":false,"extensions":["apk"]},"application/vnd.anki":{"source":"iana"},"application/vnd.anser-web-certificate-issue-initiation":{"source":"iana","extensions":["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{"source":"apache","extensions":["fti"]},"application/vnd.antix.game-component":{"source":"iana","extensions":["atx"]},"application/vnd.apache.thrift.binary":{"source":"iana"},"application/vnd.apache.thrift.compact":{"source":"iana"},"application/vnd.apache.thrift.json":{"source":"iana"},"application/vnd.api+json":{"source":"iana","compressible":true},"application/vnd.aplextor.warrp+json":{"source":"iana","compressible":true},"application/vnd.apothekende.reservation+json":{"source":"iana","compressible":true},"application/vnd.apple.installer+xml":{"source":"iana","compressible":true,"extensions":["mpkg"]},"application/vnd.apple.keynote":{"source":"iana","extensions":["key"]},"application/vnd.apple.mpegurl":{"source":"iana","extensions":["m3u8"]},"application/vnd.apple.numbers":{"source":"iana","extensions":["numbers"]},"application/vnd.apple.pages":{"source":"iana","extensions":["pages"]},"application/vnd.apple.pkpass":{"compressible":false,"extensions":["pkpass"]},"application/vnd.arastra.swi":{"source":"iana"},"application/vnd.aristanetworks.swi":{"source":"iana","extensions":["swi"]},"application/vnd.artisan+json":{"source":"iana","compressible":true},"application/vnd.artsquare":{"source":"iana"},"application/vnd.astraea-software.iota":{"source":"iana","extensions":["iota"]},"application/vnd.audiograph":{"source":"iana","extensions":["aep"]},"application/vnd.autopackage":{"source":"iana"},"application/vnd.avalon+json":{"source":"iana","compressible":true},"application/vnd.avistar+xml":{"source":"iana","compressible":true},"application/vnd.balsamiq.bmml+xml":{"source":"iana","compressible":true,"extensions":["bmml"]},"application/vnd.balsamiq.bmpr":{"source":"iana"},"application/vnd.banana-accounting":{"source":"iana"},"application/vnd.bbf.usp.error":{"source":"iana"},"application/vnd.bbf.usp.msg":{"source":"iana"},"application/vnd.bbf.usp.msg+json":{"source":"iana","compressible":true},"application/vnd.bekitzur-stech+json":{"source":"iana","compressible":true},"application/vnd.bint.med-content":{"source":"iana"},"application/vnd.biopax.rdf+xml":{"source":"iana","compressible":true},"application/vnd.blink-idb-value-wrapper":{"source":"iana"},"application/vnd.blueice.multipass":{"source":"iana","extensions":["mpm"]},"application/vnd.bluetooth.ep.oob":{"source":"iana"},"application/vnd.bluetooth.le.oob":{"source":"iana"},"application/vnd.bmi":{"source":"iana","extensions":["bmi"]},"application/vnd.bpf":{"source":"iana"},"application/vnd.bpf3":{"source":"iana"},"application/vnd.businessobjects":{"source":"iana","extensions":["rep"]},"application/vnd.byu.uapi+json":{"source":"iana","compressible":true},"application/vnd.cab-jscript":{"source":"iana"},"application/vnd.canon-cpdl":{"source":"iana"},"application/vnd.canon-lips":{"source":"iana"},"application/vnd.capasystems-pg+json":{"source":"iana","compressible":true},"application/vnd.cendio.thinlinc.clientconf":{"source":"iana"},"application/vnd.century-systems.tcp_stream":{"source":"iana"},"application/vnd.chemdraw+xml":{"source":"iana","compressible":true,"extensions":["cdxml"]},"application/vnd.chess-pgn":{"source":"iana"},"application/vnd.chipnuts.karaoke-mmd":{"source":"iana","extensions":["mmd"]},"application/vnd.ciedi":{"source":"iana"},"application/vnd.cinderella":{"source":"iana","extensions":["cdy"]},"application/vnd.cirpack.isdn-ext":{"source":"iana"},"application/vnd.citationstyles.style+xml":{"source":"iana","compressible":true,"extensions":["csl"]},"application/vnd.claymore":{"source":"iana","extensions":["cla"]},"application/vnd.cloanto.rp9":{"source":"iana","extensions":["rp9"]},"application/vnd.clonk.c4group":{"source":"iana","extensions":["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{"source":"iana","extensions":["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{"source":"iana","extensions":["c11amz"]},"application/vnd.coffeescript":{"source":"iana"},"application/vnd.collabio.xodocuments.document":{"source":"iana"},"application/vnd.collabio.xodocuments.document-template":{"source":"iana"},"application/vnd.collabio.xodocuments.presentation":{"source":"iana"},"application/vnd.collabio.xodocuments.presentation-template":{"source":"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{"source":"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{"source":"iana"},"application/vnd.collection+json":{"source":"iana","compressible":true},"application/vnd.collection.doc+json":{"source":"iana","compressible":true},"application/vnd.collection.next+json":{"source":"iana","compressible":true},"application/vnd.comicbook+zip":{"source":"iana","compressible":false},"application/vnd.comicbook-rar":{"source":"iana"},"application/vnd.commerce-battelle":{"source":"iana"},"application/vnd.commonspace":{"source":"iana","extensions":["csp"]},"application/vnd.contact.cmsg":{"source":"iana","extensions":["cdbcmsg"]},"application/vnd.coreos.ignition+json":{"source":"iana","compressible":true},"application/vnd.cosmocaller":{"source":"iana","extensions":["cmc"]},"application/vnd.crick.clicker":{"source":"iana","extensions":["clkx"]},"application/vnd.crick.clicker.keyboard":{"source":"iana","extensions":["clkk"]},"application/vnd.crick.clicker.palette":{"source":"iana","extensions":["clkp"]},"application/vnd.crick.clicker.template":{"source":"iana","extensions":["clkt"]},"application/vnd.crick.clicker.wordbank":{"source":"iana","extensions":["clkw"]},"application/vnd.criticaltools.wbs+xml":{"source":"iana","compressible":true,"extensions":["wbs"]},"application/vnd.cryptii.pipe+json":{"source":"iana","compressible":true},"application/vnd.crypto-shade-file":{"source":"iana"},"application/vnd.cryptomator.encrypted":{"source":"iana"},"application/vnd.ctc-posml":{"source":"iana","extensions":["pml"]},"application/vnd.ctct.ws+xml":{"source":"iana","compressible":true},"application/vnd.cups-pdf":{"source":"iana"},"application/vnd.cups-postscript":{"source":"iana"},"application/vnd.cups-ppd":{"source":"iana","extensions":["ppd"]},"application/vnd.cups-raster":{"source":"iana"},"application/vnd.cups-raw":{"source":"iana"},"application/vnd.curl":{"source":"iana"},"application/vnd.curl.car":{"source":"apache","extensions":["car"]},"application/vnd.curl.pcurl":{"source":"apache","extensions":["pcurl"]},"application/vnd.cyan.dean.root+xml":{"source":"iana","compressible":true},"application/vnd.cybank":{"source":"iana"},"application/vnd.cyclonedx+json":{"source":"iana","compressible":true},"application/vnd.cyclonedx+xml":{"source":"iana","compressible":true},"application/vnd.d2l.coursepackage1p0+zip":{"source":"iana","compressible":false},"application/vnd.d3m-dataset":{"source":"iana"},"application/vnd.d3m-problem":{"source":"iana"},"application/vnd.dart":{"source":"iana","compressible":true,"extensions":["dart"]},"application/vnd.data-vision.rdz":{"source":"iana","extensions":["rdz"]},"application/vnd.datapackage+json":{"source":"iana","compressible":true},"application/vnd.dataresource+json":{"source":"iana","compressible":true},"application/vnd.dbf":{"source":"iana","extensions":["dbf"]},"application/vnd.debian.binary-package":{"source":"iana"},"application/vnd.dece.data":{"source":"iana","extensions":["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{"source":"iana","compressible":true,"extensions":["uvt","uvvt"]},"application/vnd.dece.unspecified":{"source":"iana","extensions":["uvx","uvvx"]},"application/vnd.dece.zip":{"source":"iana","extensions":["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{"source":"iana","extensions":["fe_launch"]},"application/vnd.desmume.movie":{"source":"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{"source":"iana"},"application/vnd.dm.delegation+xml":{"source":"iana","compressible":true},"application/vnd.dna":{"source":"iana","extensions":["dna"]},"application/vnd.document+json":{"source":"iana","compressible":true},"application/vnd.dolby.mlp":{"source":"apache","extensions":["mlp"]},"application/vnd.dolby.mobile.1":{"source":"iana"},"application/vnd.dolby.mobile.2":{"source":"iana"},"application/vnd.doremir.scorecloud-binary-document":{"source":"iana"},"application/vnd.dpgraph":{"source":"iana","extensions":["dpg"]},"application/vnd.dreamfactory":{"source":"iana","extensions":["dfac"]},"application/vnd.drive+json":{"source":"iana","compressible":true},"application/vnd.ds-keypoint":{"source":"apache","extensions":["kpxx"]},"application/vnd.dtg.local":{"source":"iana"},"application/vnd.dtg.local.flash":{"source":"iana"},"application/vnd.dtg.local.html":{"source":"iana"},"application/vnd.dvb.ait":{"source":"iana","extensions":["ait"]},"application/vnd.dvb.dvbisl+xml":{"source":"iana","compressible":true},"application/vnd.dvb.dvbj":{"source":"iana"},"application/vnd.dvb.esgcontainer":{"source":"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{"source":"iana"},"application/vnd.dvb.ipdcesgaccess":{"source":"iana"},"application/vnd.dvb.ipdcesgaccess2":{"source":"iana"},"application/vnd.dvb.ipdcesgpdd":{"source":"iana"},"application/vnd.dvb.ipdcroaming":{"source":"iana"},"application/vnd.dvb.iptv.alfec-base":{"source":"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{"source":"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-container+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-generic+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-msglist+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-registration-request+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-registration-response+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-init+xml":{"source":"iana","compressible":true},"application/vnd.dvb.pfr":{"source":"iana"},"application/vnd.dvb.service":{"source":"iana","extensions":["svc"]},"application/vnd.dxr":{"source":"iana"},"application/vnd.dynageo":{"source":"iana","extensions":["geo"]},"application/vnd.dzr":{"source":"iana"},"application/vnd.easykaraoke.cdgdownload":{"source":"iana"},"application/vnd.ecdis-update":{"source":"iana"},"application/vnd.ecip.rlp":{"source":"iana"},"application/vnd.ecowin.chart":{"source":"iana","extensions":["mag"]},"application/vnd.ecowin.filerequest":{"source":"iana"},"application/vnd.ecowin.fileupdate":{"source":"iana"},"application/vnd.ecowin.series":{"source":"iana"},"application/vnd.ecowin.seriesrequest":{"source":"iana"},"application/vnd.ecowin.seriesupdate":{"source":"iana"},"application/vnd.efi.img":{"source":"iana"},"application/vnd.efi.iso":{"source":"iana"},"application/vnd.emclient.accessrequest+xml":{"source":"iana","compressible":true},"application/vnd.enliven":{"source":"iana","extensions":["nml"]},"application/vnd.enphase.envoy":{"source":"iana"},"application/vnd.eprints.data+xml":{"source":"iana","compressible":true},"application/vnd.epson.esf":{"source":"iana","extensions":["esf"]},"application/vnd.epson.msf":{"source":"iana","extensions":["msf"]},"application/vnd.epson.quickanime":{"source":"iana","extensions":["qam"]},"application/vnd.epson.salt":{"source":"iana","extensions":["slt"]},"application/vnd.epson.ssf":{"source":"iana","extensions":["ssf"]},"application/vnd.ericsson.quickcall":{"source":"iana"},"application/vnd.espass-espass+zip":{"source":"iana","compressible":false},"application/vnd.eszigno3+xml":{"source":"iana","compressible":true,"extensions":["es3","et3"]},"application/vnd.etsi.aoc+xml":{"source":"iana","compressible":true},"application/vnd.etsi.asic-e+zip":{"source":"iana","compressible":false},"application/vnd.etsi.asic-s+zip":{"source":"iana","compressible":false},"application/vnd.etsi.cug+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvcommand+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvdiscovery+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvprofile+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-bc+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-cod+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-npvr+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvservice+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsync+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvueprofile+xml":{"source":"iana","compressible":true},"application/vnd.etsi.mcid+xml":{"source":"iana","compressible":true},"application/vnd.etsi.mheg5":{"source":"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{"source":"iana","compressible":true},"application/vnd.etsi.pstn+xml":{"source":"iana","compressible":true},"application/vnd.etsi.sci+xml":{"source":"iana","compressible":true},"application/vnd.etsi.simservs+xml":{"source":"iana","compressible":true},"application/vnd.etsi.timestamp-token":{"source":"iana"},"application/vnd.etsi.tsl+xml":{"source":"iana","compressible":true},"application/vnd.etsi.tsl.der":{"source":"iana"},"application/vnd.eudora.data":{"source":"iana"},"application/vnd.evolv.ecig.profile":{"source":"iana"},"application/vnd.evolv.ecig.settings":{"source":"iana"},"application/vnd.evolv.ecig.theme":{"source":"iana"},"application/vnd.exstream-empower+zip":{"source":"iana","compressible":false},"application/vnd.exstream-package":{"source":"iana"},"application/vnd.ezpix-album":{"source":"iana","extensions":["ez2"]},"application/vnd.ezpix-package":{"source":"iana","extensions":["ez3"]},"application/vnd.f-secure.mobile":{"source":"iana"},"application/vnd.fastcopy-disk-image":{"source":"iana"},"application/vnd.fdf":{"source":"iana","extensions":["fdf"]},"application/vnd.fdsn.mseed":{"source":"iana","extensions":["mseed"]},"application/vnd.fdsn.seed":{"source":"iana","extensions":["seed","dataless"]},"application/vnd.ffsns":{"source":"iana"},"application/vnd.ficlab.flb+zip":{"source":"iana","compressible":false},"application/vnd.filmit.zfc":{"source":"iana"},"application/vnd.fints":{"source":"iana"},"application/vnd.firemonkeys.cloudcell":{"source":"iana"},"application/vnd.flographit":{"source":"iana","extensions":["gph"]},"application/vnd.fluxtime.clip":{"source":"iana","extensions":["ftc"]},"application/vnd.font-fontforge-sfd":{"source":"iana"},"application/vnd.framemaker":{"source":"iana","extensions":["fm","frame","maker","book"]},"application/vnd.frogans.fnc":{"source":"iana","extensions":["fnc"]},"application/vnd.frogans.ltf":{"source":"iana","extensions":["ltf"]},"application/vnd.fsc.weblaunch":{"source":"iana","extensions":["fsc"]},"application/vnd.fujitsu.oasys":{"source":"iana","extensions":["oas"]},"application/vnd.fujitsu.oasys2":{"source":"iana","extensions":["oa2"]},"application/vnd.fujitsu.oasys3":{"source":"iana","extensions":["oa3"]},"application/vnd.fujitsu.oasysgp":{"source":"iana","extensions":["fg5"]},"application/vnd.fujitsu.oasysprs":{"source":"iana","extensions":["bh2"]},"application/vnd.fujixerox.art-ex":{"source":"iana"},"application/vnd.fujixerox.art4":{"source":"iana"},"application/vnd.fujixerox.ddd":{"source":"iana","extensions":["ddd"]},"application/vnd.fujixerox.docuworks":{"source":"iana","extensions":["xdw"]},"application/vnd.fujixerox.docuworks.binder":{"source":"iana","extensions":["xbd"]},"application/vnd.fujixerox.docuworks.container":{"source":"iana"},"application/vnd.fujixerox.hbpl":{"source":"iana"},"application/vnd.fut-misnet":{"source":"iana"},"application/vnd.futoin+cbor":{"source":"iana"},"application/vnd.futoin+json":{"source":"iana","compressible":true},"application/vnd.fuzzysheet":{"source":"iana","extensions":["fzs"]},"application/vnd.genomatix.tuxedo":{"source":"iana","extensions":["txd"]},"application/vnd.gentics.grd+json":{"source":"iana","compressible":true},"application/vnd.geo+json":{"source":"iana","compressible":true},"application/vnd.geocube+xml":{"source":"iana","compressible":true},"application/vnd.geogebra.file":{"source":"iana","extensions":["ggb"]},"application/vnd.geogebra.slides":{"source":"iana"},"application/vnd.geogebra.tool":{"source":"iana","extensions":["ggt"]},"application/vnd.geometry-explorer":{"source":"iana","extensions":["gex","gre"]},"application/vnd.geonext":{"source":"iana","extensions":["gxt"]},"application/vnd.geoplan":{"source":"iana","extensions":["g2w"]},"application/vnd.geospace":{"source":"iana","extensions":["g3w"]},"application/vnd.gerber":{"source":"iana"},"application/vnd.globalplatform.card-content-mgt":{"source":"iana"},"application/vnd.globalplatform.card-content-mgt-response":{"source":"iana"},"application/vnd.gmx":{"source":"iana","extensions":["gmx"]},"application/vnd.google-apps.document":{"compressible":false,"extensions":["gdoc"]},"application/vnd.google-apps.presentation":{"compressible":false,"extensions":["gslides"]},"application/vnd.google-apps.spreadsheet":{"compressible":false,"extensions":["gsheet"]},"application/vnd.google-earth.kml+xml":{"source":"iana","compressible":true,"extensions":["kml"]},"application/vnd.google-earth.kmz":{"source":"iana","compressible":false,"extensions":["kmz"]},"application/vnd.gov.sk.e-form+xml":{"source":"iana","compressible":true},"application/vnd.gov.sk.e-form+zip":{"source":"iana","compressible":false},"application/vnd.gov.sk.xmldatacontainer+xml":{"source":"iana","compressible":true},"application/vnd.grafeq":{"source":"iana","extensions":["gqf","gqs"]},"application/vnd.gridmp":{"source":"iana"},"application/vnd.groove-account":{"source":"iana","extensions":["gac"]},"application/vnd.groove-help":{"source":"iana","extensions":["ghf"]},"application/vnd.groove-identity-message":{"source":"iana","extensions":["gim"]},"application/vnd.groove-injector":{"source":"iana","extensions":["grv"]},"application/vnd.groove-tool-message":{"source":"iana","extensions":["gtm"]},"application/vnd.groove-tool-template":{"source":"iana","extensions":["tpl"]},"application/vnd.groove-vcard":{"source":"iana","extensions":["vcg"]},"application/vnd.hal+json":{"source":"iana","compressible":true},"application/vnd.hal+xml":{"source":"iana","compressible":true,"extensions":["hal"]},"application/vnd.handheld-entertainment+xml":{"source":"iana","compressible":true,"extensions":["zmm"]},"application/vnd.hbci":{"source":"iana","extensions":["hbci"]},"application/vnd.hc+json":{"source":"iana","compressible":true},"application/vnd.hcl-bireports":{"source":"iana"},"application/vnd.hdt":{"source":"iana"},"application/vnd.heroku+json":{"source":"iana","compressible":true},"application/vnd.hhe.lesson-player":{"source":"iana","extensions":["les"]},"application/vnd.hp-hpgl":{"source":"iana","extensions":["hpgl"]},"application/vnd.hp-hpid":{"source":"iana","extensions":["hpid"]},"application/vnd.hp-hps":{"source":"iana","extensions":["hps"]},"application/vnd.hp-jlyt":{"source":"iana","extensions":["jlt"]},"application/vnd.hp-pcl":{"source":"iana","extensions":["pcl"]},"application/vnd.hp-pclxl":{"source":"iana","extensions":["pclxl"]},"application/vnd.httphone":{"source":"iana"},"application/vnd.hydrostatix.sof-data":{"source":"iana","extensions":["sfd-hdstx"]},"application/vnd.hyper+json":{"source":"iana","compressible":true},"application/vnd.hyper-item+json":{"source":"iana","compressible":true},"application/vnd.hyperdrive+json":{"source":"iana","compressible":true},"application/vnd.hzn-3d-crossword":{"source":"iana"},"application/vnd.ibm.afplinedata":{"source":"iana"},"application/vnd.ibm.electronic-media":{"source":"iana"},"application/vnd.ibm.minipay":{"source":"iana","extensions":["mpy"]},"application/vnd.ibm.modcap":{"source":"iana","extensions":["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{"source":"iana","extensions":["irm"]},"application/vnd.ibm.secure-container":{"source":"iana","extensions":["sc"]},"application/vnd.iccprofile":{"source":"iana","extensions":["icc","icm"]},"application/vnd.ieee.1905":{"source":"iana"},"application/vnd.igloader":{"source":"iana","extensions":["igl"]},"application/vnd.imagemeter.folder+zip":{"source":"iana","compressible":false},"application/vnd.imagemeter.image+zip":{"source":"iana","compressible":false},"application/vnd.immervision-ivp":{"source":"iana","extensions":["ivp"]},"application/vnd.immervision-ivu":{"source":"iana","extensions":["ivu"]},"application/vnd.ims.imsccv1p1":{"source":"iana"},"application/vnd.ims.imsccv1p2":{"source":"iana"},"application/vnd.ims.imsccv1p3":{"source":"iana"},"application/vnd.ims.lis.v2.result+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolproxy+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolproxy.id+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolsettings+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolsettings.simple+json":{"source":"iana","compressible":true},"application/vnd.informedcontrol.rms+xml":{"source":"iana","compressible":true},"application/vnd.informix-visionary":{"source":"iana"},"application/vnd.infotech.project":{"source":"iana"},"application/vnd.infotech.project+xml":{"source":"iana","compressible":true},"application/vnd.innopath.wamp.notification":{"source":"iana"},"application/vnd.insors.igm":{"source":"iana","extensions":["igm"]},"application/vnd.intercon.formnet":{"source":"iana","extensions":["xpw","xpx"]},"application/vnd.intergeo":{"source":"iana","extensions":["i2g"]},"application/vnd.intertrust.digibox":{"source":"iana"},"application/vnd.intertrust.nncp":{"source":"iana"},"application/vnd.intu.qbo":{"source":"iana","extensions":["qbo"]},"application/vnd.intu.qfx":{"source":"iana","extensions":["qfx"]},"application/vnd.iptc.g2.catalogitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.conceptitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.knowledgeitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.newsitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.newsmessage+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.packageitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.planningitem+xml":{"source":"iana","compressible":true},"application/vnd.ipunplugged.rcprofile":{"source":"iana","extensions":["rcprofile"]},"application/vnd.irepository.package+xml":{"source":"iana","compressible":true,"extensions":["irp"]},"application/vnd.is-xpr":{"source":"iana","extensions":["xpr"]},"application/vnd.isac.fcs":{"source":"iana","extensions":["fcs"]},"application/vnd.iso11783-10+zip":{"source":"iana","compressible":false},"application/vnd.jam":{"source":"iana","extensions":["jam"]},"application/vnd.japannet-directory-service":{"source":"iana"},"application/vnd.japannet-jpnstore-wakeup":{"source":"iana"},"application/vnd.japannet-payment-wakeup":{"source":"iana"},"application/vnd.japannet-registration":{"source":"iana"},"application/vnd.japannet-registration-wakeup":{"source":"iana"},"application/vnd.japannet-setstore-wakeup":{"source":"iana"},"application/vnd.japannet-verification":{"source":"iana"},"application/vnd.japannet-verification-wakeup":{"source":"iana"},"application/vnd.jcp.javame.midlet-rms":{"source":"iana","extensions":["rms"]},"application/vnd.jisp":{"source":"iana","extensions":["jisp"]},"application/vnd.joost.joda-archive":{"source":"iana","extensions":["joda"]},"application/vnd.jsk.isdn-ngn":{"source":"iana"},"application/vnd.kahootz":{"source":"iana","extensions":["ktz","ktr"]},"application/vnd.kde.karbon":{"source":"iana","extensions":["karbon"]},"application/vnd.kde.kchart":{"source":"iana","extensions":["chrt"]},"application/vnd.kde.kformula":{"source":"iana","extensions":["kfo"]},"application/vnd.kde.kivio":{"source":"iana","extensions":["flw"]},"application/vnd.kde.kontour":{"source":"iana","extensions":["kon"]},"application/vnd.kde.kpresenter":{"source":"iana","extensions":["kpr","kpt"]},"application/vnd.kde.kspread":{"source":"iana","extensions":["ksp"]},"application/vnd.kde.kword":{"source":"iana","extensions":["kwd","kwt"]},"application/vnd.kenameaapp":{"source":"iana","extensions":["htke"]},"application/vnd.kidspiration":{"source":"iana","extensions":["kia"]},"application/vnd.kinar":{"source":"iana","extensions":["kne","knp"]},"application/vnd.koan":{"source":"iana","extensions":["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{"source":"iana","extensions":["sse"]},"application/vnd.las":{"source":"iana"},"application/vnd.las.las+json":{"source":"iana","compressible":true},"application/vnd.las.las+xml":{"source":"iana","compressible":true,"extensions":["lasxml"]},"application/vnd.laszip":{"source":"iana"},"application/vnd.leap+json":{"source":"iana","compressible":true},"application/vnd.liberty-request+xml":{"source":"iana","compressible":true},"application/vnd.llamagraphics.life-balance.desktop":{"source":"iana","extensions":["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{"source":"iana","compressible":true,"extensions":["lbe"]},"application/vnd.logipipe.circuit+zip":{"source":"iana","compressible":false},"application/vnd.loom":{"source":"iana"},"application/vnd.lotus-1-2-3":{"source":"iana","extensions":["123"]},"application/vnd.lotus-approach":{"source":"iana","extensions":["apr"]},"application/vnd.lotus-freelance":{"source":"iana","extensions":["pre"]},"application/vnd.lotus-notes":{"source":"iana","extensions":["nsf"]},"application/vnd.lotus-organizer":{"source":"iana","extensions":["org"]},"application/vnd.lotus-screencam":{"source":"iana","extensions":["scm"]},"application/vnd.lotus-wordpro":{"source":"iana","extensions":["lwp"]},"application/vnd.macports.portpkg":{"source":"iana","extensions":["portpkg"]},"application/vnd.mapbox-vector-tile":{"source":"iana"},"application/vnd.marlin.drm.actiontoken+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.conftoken+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.license+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.mdcf":{"source":"iana"},"application/vnd.mason+json":{"source":"iana","compressible":true},"application/vnd.maxmind.maxmind-db":{"source":"iana"},"application/vnd.mcd":{"source":"iana","extensions":["mcd"]},"application/vnd.medcalcdata":{"source":"iana","extensions":["mc1"]},"application/vnd.mediastation.cdkey":{"source":"iana","extensions":["cdkey"]},"application/vnd.meridian-slingshot":{"source":"iana"},"application/vnd.mfer":{"source":"iana","extensions":["mwf"]},"application/vnd.mfmp":{"source":"iana","extensions":["mfm"]},"application/vnd.micro+json":{"source":"iana","compressible":true},"application/vnd.micrografx.flo":{"source":"iana","extensions":["flo"]},"application/vnd.micrografx.igx":{"source":"iana","extensions":["igx"]},"application/vnd.microsoft.portable-executable":{"source":"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{"source":"iana"},"application/vnd.miele+json":{"source":"iana","compressible":true},"application/vnd.mif":{"source":"iana","extensions":["mif"]},"application/vnd.minisoft-hp3000-save":{"source":"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{"source":"iana"},"application/vnd.mobius.daf":{"source":"iana","extensions":["daf"]},"application/vnd.mobius.dis":{"source":"iana","extensions":["dis"]},"application/vnd.mobius.mbk":{"source":"iana","extensions":["mbk"]},"application/vnd.mobius.mqy":{"source":"iana","extensions":["mqy"]},"application/vnd.mobius.msl":{"source":"iana","extensions":["msl"]},"application/vnd.mobius.plc":{"source":"iana","extensions":["plc"]},"application/vnd.mobius.txf":{"source":"iana","extensions":["txf"]},"application/vnd.mophun.application":{"source":"iana","extensions":["mpn"]},"application/vnd.mophun.certificate":{"source":"iana","extensions":["mpc"]},"application/vnd.motorola.flexsuite":{"source":"iana"},"application/vnd.motorola.flexsuite.adsi":{"source":"iana"},"application/vnd.motorola.flexsuite.fis":{"source":"iana"},"application/vnd.motorola.flexsuite.gotap":{"source":"iana"},"application/vnd.motorola.flexsuite.kmr":{"source":"iana"},"application/vnd.motorola.flexsuite.ttc":{"source":"iana"},"application/vnd.motorola.flexsuite.wem":{"source":"iana"},"application/vnd.motorola.iprm":{"source":"iana"},"application/vnd.mozilla.xul+xml":{"source":"iana","compressible":true,"extensions":["xul"]},"application/vnd.ms-3mfdocument":{"source":"iana"},"application/vnd.ms-artgalry":{"source":"iana","extensions":["cil"]},"application/vnd.ms-asf":{"source":"iana"},"application/vnd.ms-cab-compressed":{"source":"iana","extensions":["cab"]},"application/vnd.ms-color.iccprofile":{"source":"apache"},"application/vnd.ms-excel":{"source":"iana","compressible":false,"extensions":["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{"source":"iana","extensions":["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{"source":"iana","extensions":["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{"source":"iana","extensions":["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{"source":"iana","extensions":["xltm"]},"application/vnd.ms-fontobject":{"source":"iana","compressible":true,"extensions":["eot"]},"application/vnd.ms-htmlhelp":{"source":"iana","extensions":["chm"]},"application/vnd.ms-ims":{"source":"iana","extensions":["ims"]},"application/vnd.ms-lrm":{"source":"iana","extensions":["lrm"]},"application/vnd.ms-office.activex+xml":{"source":"iana","compressible":true},"application/vnd.ms-officetheme":{"source":"iana","extensions":["thmx"]},"application/vnd.ms-opentype":{"source":"apache","compressible":true},"application/vnd.ms-outlook":{"compressible":false,"extensions":["msg"]},"application/vnd.ms-package.obfuscated-opentype":{"source":"apache"},"application/vnd.ms-pki.seccat":{"source":"apache","extensions":["cat"]},"application/vnd.ms-pki.stl":{"source":"apache","extensions":["stl"]},"application/vnd.ms-playready.initiator+xml":{"source":"iana","compressible":true},"application/vnd.ms-powerpoint":{"source":"iana","compressible":false,"extensions":["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{"source":"iana","extensions":["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{"source":"iana","extensions":["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{"source":"iana","extensions":["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{"source":"iana","extensions":["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{"source":"iana","extensions":["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{"source":"iana","compressible":true},"application/vnd.ms-printing.printticket+xml":{"source":"apache","compressible":true},"application/vnd.ms-printschematicket+xml":{"source":"iana","compressible":true},"application/vnd.ms-project":{"source":"iana","extensions":["mpp","mpt"]},"application/vnd.ms-tnef":{"source":"iana"},"application/vnd.ms-windows.devicepairing":{"source":"iana"},"application/vnd.ms-windows.nwprinting.oob":{"source":"iana"},"application/vnd.ms-windows.printerpairing":{"source":"iana"},"application/vnd.ms-windows.wsd.oob":{"source":"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{"source":"iana"},"application/vnd.ms-wmdrm.lic-resp":{"source":"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{"source":"iana"},"application/vnd.ms-wmdrm.meter-resp":{"source":"iana"},"application/vnd.ms-word.document.macroenabled.12":{"source":"iana","extensions":["docm"]},"application/vnd.ms-word.template.macroenabled.12":{"source":"iana","extensions":["dotm"]},"application/vnd.ms-works":{"source":"iana","extensions":["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{"source":"iana","extensions":["wpl"]},"application/vnd.ms-xpsdocument":{"source":"iana","compressible":false,"extensions":["xps"]},"application/vnd.msa-disk-image":{"source":"iana"},"application/vnd.mseq":{"source":"iana","extensions":["mseq"]},"application/vnd.msign":{"source":"iana"},"application/vnd.multiad.creator":{"source":"iana"},"application/vnd.multiad.creator.cif":{"source":"iana"},"application/vnd.music-niff":{"source":"iana"},"application/vnd.musician":{"source":"iana","extensions":["mus"]},"application/vnd.muvee.style":{"source":"iana","extensions":["msty"]},"application/vnd.mynfc":{"source":"iana","extensions":["taglet"]},"application/vnd.ncd.control":{"source":"iana"},"application/vnd.ncd.reference":{"source":"iana"},"application/vnd.nearst.inv+json":{"source":"iana","compressible":true},"application/vnd.nebumind.line":{"source":"iana"},"application/vnd.nervana":{"source":"iana"},"application/vnd.netfpx":{"source":"iana"},"application/vnd.neurolanguage.nlu":{"source":"iana","extensions":["nlu"]},"application/vnd.nimn":{"source":"iana"},"application/vnd.nintendo.nitro.rom":{"source":"iana"},"application/vnd.nintendo.snes.rom":{"source":"iana"},"application/vnd.nitf":{"source":"iana","extensions":["ntf","nitf"]},"application/vnd.noblenet-directory":{"source":"iana","extensions":["nnd"]},"application/vnd.noblenet-sealer":{"source":"iana","extensions":["nns"]},"application/vnd.noblenet-web":{"source":"iana","extensions":["nnw"]},"application/vnd.nokia.catalogs":{"source":"iana"},"application/vnd.nokia.conml+wbxml":{"source":"iana"},"application/vnd.nokia.conml+xml":{"source":"iana","compressible":true},"application/vnd.nokia.iptv.config+xml":{"source":"iana","compressible":true},"application/vnd.nokia.isds-radio-presets":{"source":"iana"},"application/vnd.nokia.landmark+wbxml":{"source":"iana"},"application/vnd.nokia.landmark+xml":{"source":"iana","compressible":true},"application/vnd.nokia.landmarkcollection+xml":{"source":"iana","compressible":true},"application/vnd.nokia.n-gage.ac+xml":{"source":"iana","compressible":true,"extensions":["ac"]},"application/vnd.nokia.n-gage.data":{"source":"iana","extensions":["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{"source":"iana","extensions":["n-gage"]},"application/vnd.nokia.ncd":{"source":"iana"},"application/vnd.nokia.pcd+wbxml":{"source":"iana"},"application/vnd.nokia.pcd+xml":{"source":"iana","compressible":true},"application/vnd.nokia.radio-preset":{"source":"iana","extensions":["rpst"]},"application/vnd.nokia.radio-presets":{"source":"iana","extensions":["rpss"]},"application/vnd.novadigm.edm":{"source":"iana","extensions":["edm"]},"application/vnd.novadigm.edx":{"source":"iana","extensions":["edx"]},"application/vnd.novadigm.ext":{"source":"iana","extensions":["ext"]},"application/vnd.ntt-local.content-share":{"source":"iana"},"application/vnd.ntt-local.file-transfer":{"source":"iana"},"application/vnd.ntt-local.ogw_remote-access":{"source":"iana"},"application/vnd.ntt-local.sip-ta_remote":{"source":"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{"source":"iana"},"application/vnd.oasis.opendocument.chart":{"source":"iana","extensions":["odc"]},"application/vnd.oasis.opendocument.chart-template":{"source":"iana","extensions":["otc"]},"application/vnd.oasis.opendocument.database":{"source":"iana","extensions":["odb"]},"application/vnd.oasis.opendocument.formula":{"source":"iana","extensions":["odf"]},"application/vnd.oasis.opendocument.formula-template":{"source":"iana","extensions":["odft"]},"application/vnd.oasis.opendocument.graphics":{"source":"iana","compressible":false,"extensions":["odg"]},"application/vnd.oasis.opendocument.graphics-template":{"source":"iana","extensions":["otg"]},"application/vnd.oasis.opendocument.image":{"source":"iana","extensions":["odi"]},"application/vnd.oasis.opendocument.image-template":{"source":"iana","extensions":["oti"]},"application/vnd.oasis.opendocument.presentation":{"source":"iana","compressible":false,"extensions":["odp"]},"application/vnd.oasis.opendocument.presentation-template":{"source":"iana","extensions":["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{"source":"iana","compressible":false,"extensions":["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{"source":"iana","extensions":["ots"]},"application/vnd.oasis.opendocument.text":{"source":"iana","compressible":false,"extensions":["odt"]},"application/vnd.oasis.opendocument.text-master":{"source":"iana","extensions":["odm"]},"application/vnd.oasis.opendocument.text-template":{"source":"iana","extensions":["ott"]},"application/vnd.oasis.opendocument.text-web":{"source":"iana","extensions":["oth"]},"application/vnd.obn":{"source":"iana"},"application/vnd.ocf+cbor":{"source":"iana"},"application/vnd.oci.image.manifest.v1+json":{"source":"iana","compressible":true},"application/vnd.oftn.l10n+json":{"source":"iana","compressible":true},"application/vnd.oipf.contentaccessdownload+xml":{"source":"iana","compressible":true},"application/vnd.oipf.contentaccessstreaming+xml":{"source":"iana","compressible":true},"application/vnd.oipf.cspg-hexbinary":{"source":"iana"},"application/vnd.oipf.dae.svg+xml":{"source":"iana","compressible":true},"application/vnd.oipf.dae.xhtml+xml":{"source":"iana","compressible":true},"application/vnd.oipf.mippvcontrolmessage+xml":{"source":"iana","compressible":true},"application/vnd.oipf.pae.gem":{"source":"iana"},"application/vnd.oipf.spdiscovery+xml":{"source":"iana","compressible":true},"application/vnd.oipf.spdlist+xml":{"source":"iana","compressible":true},"application/vnd.oipf.ueprofile+xml":{"source":"iana","compressible":true},"application/vnd.oipf.userprofile+xml":{"source":"iana","compressible":true},"application/vnd.olpc-sugar":{"source":"iana","extensions":["xo"]},"application/vnd.oma-scws-config":{"source":"iana"},"application/vnd.oma-scws-http-request":{"source":"iana"},"application/vnd.oma-scws-http-response":{"source":"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.drm-trigger+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.imd+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.ltkm":{"source":"iana"},"application/vnd.oma.bcast.notification+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.provisioningtrigger":{"source":"iana"},"application/vnd.oma.bcast.sgboot":{"source":"iana"},"application/vnd.oma.bcast.sgdd+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.sgdu":{"source":"iana"},"application/vnd.oma.bcast.simple-symbol-container":{"source":"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.sprov+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.stkm":{"source":"iana"},"application/vnd.oma.cab-address-book+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-feature-handler+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-pcc+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-subs-invite+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-user-prefs+xml":{"source":"iana","compressible":true},"application/vnd.oma.dcd":{"source":"iana"},"application/vnd.oma.dcdc":{"source":"iana"},"application/vnd.oma.dd2+xml":{"source":"iana","compressible":true,"extensions":["dd2"]},"application/vnd.oma.drm.risd+xml":{"source":"iana","compressible":true},"application/vnd.oma.group-usage-list+xml":{"source":"iana","compressible":true},"application/vnd.oma.lwm2m+cbor":{"source":"iana"},"application/vnd.oma.lwm2m+json":{"source":"iana","compressible":true},"application/vnd.oma.lwm2m+tlv":{"source":"iana"},"application/vnd.oma.pal+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.detailed-progress-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.final-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.groups+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.invocation-descriptor+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.optimized-progress-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.push":{"source":"iana"},"application/vnd.oma.scidm.messages+xml":{"source":"iana","compressible":true},"application/vnd.oma.xcap-directory+xml":{"source":"iana","compressible":true},"application/vnd.omads-email+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omads-file+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omads-folder+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omaloc-supl-init":{"source":"iana"},"application/vnd.onepager":{"source":"iana"},"application/vnd.onepagertamp":{"source":"iana"},"application/vnd.onepagertamx":{"source":"iana"},"application/vnd.onepagertat":{"source":"iana"},"application/vnd.onepagertatp":{"source":"iana"},"application/vnd.onepagertatx":{"source":"iana"},"application/vnd.openblox.game+xml":{"source":"iana","compressible":true,"extensions":["obgx"]},"application/vnd.openblox.game-binary":{"source":"iana"},"application/vnd.openeye.oeb":{"source":"iana"},"application/vnd.openofficeorg.extension":{"source":"apache","extensions":["oxt"]},"application/vnd.openstreetmap.data+xml":{"source":"iana","compressible":true,"extensions":["osm"]},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawing+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{"source":"iana","compressible":false,"extensions":["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slide":{"source":"iana","extensions":["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{"source":"iana","extensions":["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.template":{"source":"iana","extensions":["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{"source":"iana","compressible":false,"extensions":["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{"source":"iana","extensions":["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.theme+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.vmldrawing":{"source":"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{"source":"iana","compressible":false,"extensions":["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{"source":"iana","extensions":["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.core-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.relationships+xml":{"source":"iana","compressible":true},"application/vnd.oracle.resource+json":{"source":"iana","compressible":true},"application/vnd.orange.indata":{"source":"iana"},"application/vnd.osa.netdeploy":{"source":"iana"},"application/vnd.osgeo.mapguide.package":{"source":"iana","extensions":["mgp"]},"application/vnd.osgi.bundle":{"source":"iana"},"application/vnd.osgi.dp":{"source":"iana","extensions":["dp"]},"application/vnd.osgi.subsystem":{"source":"iana","extensions":["esa"]},"application/vnd.otps.ct-kip+xml":{"source":"iana","compressible":true},"application/vnd.oxli.countgraph":{"source":"iana"},"application/vnd.pagerduty+json":{"source":"iana","compressible":true},"application/vnd.palm":{"source":"iana","extensions":["pdb","pqa","oprc"]},"application/vnd.panoply":{"source":"iana"},"application/vnd.paos.xml":{"source":"iana"},"application/vnd.patentdive":{"source":"iana"},"application/vnd.patientecommsdoc":{"source":"iana"},"application/vnd.pawaafile":{"source":"iana","extensions":["paw"]},"application/vnd.pcos":{"source":"iana"},"application/vnd.pg.format":{"source":"iana","extensions":["str"]},"application/vnd.pg.osasli":{"source":"iana","extensions":["ei6"]},"application/vnd.piaccess.application-licence":{"source":"iana"},"application/vnd.picsel":{"source":"iana","extensions":["efif"]},"application/vnd.pmi.widget":{"source":"iana","extensions":["wg"]},"application/vnd.poc.group-advertisement+xml":{"source":"iana","compressible":true},"application/vnd.pocketlearn":{"source":"iana","extensions":["plf"]},"application/vnd.powerbuilder6":{"source":"iana","extensions":["pbd"]},"application/vnd.powerbuilder6-s":{"source":"iana"},"application/vnd.powerbuilder7":{"source":"iana"},"application/vnd.powerbuilder7-s":{"source":"iana"},"application/vnd.powerbuilder75":{"source":"iana"},"application/vnd.powerbuilder75-s":{"source":"iana"},"application/vnd.preminet":{"source":"iana"},"application/vnd.previewsystems.box":{"source":"iana","extensions":["box"]},"application/vnd.proteus.magazine":{"source":"iana","extensions":["mgz"]},"application/vnd.psfs":{"source":"iana"},"application/vnd.publishare-delta-tree":{"source":"iana","extensions":["qps"]},"application/vnd.pvi.ptid1":{"source":"iana","extensions":["ptid"]},"application/vnd.pwg-multiplexed":{"source":"iana"},"application/vnd.pwg-xhtml-print+xml":{"source":"iana","compressible":true},"application/vnd.qualcomm.brew-app-res":{"source":"iana"},"application/vnd.quarantainenet":{"source":"iana"},"application/vnd.quark.quarkxpress":{"source":"iana","extensions":["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{"source":"iana"},"application/vnd.radisys.moml+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-conf+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-conn+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-dialog+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-stream+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-conf+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-base+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-fax-detect+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-group+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-speech+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-transform+xml":{"source":"iana","compressible":true},"application/vnd.rainstor.data":{"source":"iana"},"application/vnd.rapid":{"source":"iana"},"application/vnd.rar":{"source":"iana","extensions":["rar"]},"application/vnd.realvnc.bed":{"source":"iana","extensions":["bed"]},"application/vnd.recordare.musicxml":{"source":"iana","extensions":["mxl"]},"application/vnd.recordare.musicxml+xml":{"source":"iana","compressible":true,"extensions":["musicxml"]},"application/vnd.renlearn.rlprint":{"source":"iana"},"application/vnd.restful+json":{"source":"iana","compressible":true},"application/vnd.rig.cryptonote":{"source":"iana","extensions":["cryptonote"]},"application/vnd.rim.cod":{"source":"apache","extensions":["cod"]},"application/vnd.rn-realmedia":{"source":"apache","extensions":["rm"]},"application/vnd.rn-realmedia-vbr":{"source":"apache","extensions":["rmvb"]},"application/vnd.route66.link66+xml":{"source":"iana","compressible":true,"extensions":["link66"]},"application/vnd.rs-274x":{"source":"iana"},"application/vnd.ruckus.download":{"source":"iana"},"application/vnd.s3sms":{"source":"iana"},"application/vnd.sailingtracker.track":{"source":"iana","extensions":["st"]},"application/vnd.sar":{"source":"iana"},"application/vnd.sbm.cid":{"source":"iana"},"application/vnd.sbm.mid2":{"source":"iana"},"application/vnd.scribus":{"source":"iana"},"application/vnd.sealed.3df":{"source":"iana"},"application/vnd.sealed.csf":{"source":"iana"},"application/vnd.sealed.doc":{"source":"iana"},"application/vnd.sealed.eml":{"source":"iana"},"application/vnd.sealed.mht":{"source":"iana"},"application/vnd.sealed.net":{"source":"iana"},"application/vnd.sealed.ppt":{"source":"iana"},"application/vnd.sealed.tiff":{"source":"iana"},"application/vnd.sealed.xls":{"source":"iana"},"application/vnd.sealedmedia.softseal.html":{"source":"iana"},"application/vnd.sealedmedia.softseal.pdf":{"source":"iana"},"application/vnd.seemail":{"source":"iana","extensions":["see"]},"application/vnd.seis+json":{"source":"iana","compressible":true},"application/vnd.sema":{"source":"iana","extensions":["sema"]},"application/vnd.semd":{"source":"iana","extensions":["semd"]},"application/vnd.semf":{"source":"iana","extensions":["semf"]},"application/vnd.shade-save-file":{"source":"iana"},"application/vnd.shana.informed.formdata":{"source":"iana","extensions":["ifm"]},"application/vnd.shana.informed.formtemplate":{"source":"iana","extensions":["itp"]},"application/vnd.shana.informed.interchange":{"source":"iana","extensions":["iif"]},"application/vnd.shana.informed.package":{"source":"iana","extensions":["ipk"]},"application/vnd.shootproof+json":{"source":"iana","compressible":true},"application/vnd.shopkick+json":{"source":"iana","compressible":true},"application/vnd.shp":{"source":"iana"},"application/vnd.shx":{"source":"iana"},"application/vnd.sigrok.session":{"source":"iana"},"application/vnd.simtech-mindmapper":{"source":"iana","extensions":["twd","twds"]},"application/vnd.siren+json":{"source":"iana","compressible":true},"application/vnd.smaf":{"source":"iana","extensions":["mmf"]},"application/vnd.smart.notebook":{"source":"iana"},"application/vnd.smart.teacher":{"source":"iana","extensions":["teacher"]},"application/vnd.snesdev-page-table":{"source":"iana"},"application/vnd.software602.filler.form+xml":{"source":"iana","compressible":true,"extensions":["fo"]},"application/vnd.software602.filler.form-xml-zip":{"source":"iana"},"application/vnd.solent.sdkm+xml":{"source":"iana","compressible":true,"extensions":["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{"source":"iana","extensions":["dxp"]},"application/vnd.spotfire.sfs":{"source":"iana","extensions":["sfs"]},"application/vnd.sqlite3":{"source":"iana"},"application/vnd.sss-cod":{"source":"iana"},"application/vnd.sss-dtf":{"source":"iana"},"application/vnd.sss-ntf":{"source":"iana"},"application/vnd.stardivision.calc":{"source":"apache","extensions":["sdc"]},"application/vnd.stardivision.draw":{"source":"apache","extensions":["sda"]},"application/vnd.stardivision.impress":{"source":"apache","extensions":["sdd"]},"application/vnd.stardivision.math":{"source":"apache","extensions":["smf"]},"application/vnd.stardivision.writer":{"source":"apache","extensions":["sdw","vor"]},"application/vnd.stardivision.writer-global":{"source":"apache","extensions":["sgl"]},"application/vnd.stepmania.package":{"source":"iana","extensions":["smzip"]},"application/vnd.stepmania.stepchart":{"source":"iana","extensions":["sm"]},"application/vnd.street-stream":{"source":"iana"},"application/vnd.sun.wadl+xml":{"source":"iana","compressible":true,"extensions":["wadl"]},"application/vnd.sun.xml.calc":{"source":"apache","extensions":["sxc"]},"application/vnd.sun.xml.calc.template":{"source":"apache","extensions":["stc"]},"application/vnd.sun.xml.draw":{"source":"apache","extensions":["sxd"]},"application/vnd.sun.xml.draw.template":{"source":"apache","extensions":["std"]},"application/vnd.sun.xml.impress":{"source":"apache","extensions":["sxi"]},"application/vnd.sun.xml.impress.template":{"source":"apache","extensions":["sti"]},"application/vnd.sun.xml.math":{"source":"apache","extensions":["sxm"]},"application/vnd.sun.xml.writer":{"source":"apache","extensions":["sxw"]},"application/vnd.sun.xml.writer.global":{"source":"apache","extensions":["sxg"]},"application/vnd.sun.xml.writer.template":{"source":"apache","extensions":["stw"]},"application/vnd.sus-calendar":{"source":"iana","extensions":["sus","susp"]},"application/vnd.svd":{"source":"iana","extensions":["svd"]},"application/vnd.swiftview-ics":{"source":"iana"},"application/vnd.sycle+xml":{"source":"iana","compressible":true},"application/vnd.symbian.install":{"source":"apache","extensions":["sis","sisx"]},"application/vnd.syncml+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["xsm"]},"application/vnd.syncml.dm+wbxml":{"source":"iana","charset":"UTF-8","extensions":["bdm"]},"application/vnd.syncml.dm+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["xdm"]},"application/vnd.syncml.dm.notification":{"source":"iana"},"application/vnd.syncml.dmddf+wbxml":{"source":"iana"},"application/vnd.syncml.dmddf+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{"source":"iana"},"application/vnd.syncml.dmtnds+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.syncml.ds.notification":{"source":"iana"},"application/vnd.tableschema+json":{"source":"iana","compressible":true},"application/vnd.tao.intent-module-archive":{"source":"iana","extensions":["tao"]},"application/vnd.tcpdump.pcap":{"source":"iana","extensions":["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{"source":"iana","compressible":true},"application/vnd.tmd.mediaflex.api+xml":{"source":"iana","compressible":true},"application/vnd.tml":{"source":"iana"},"application/vnd.tmobile-livetv":{"source":"iana","extensions":["tmo"]},"application/vnd.tri.onesource":{"source":"iana"},"application/vnd.trid.tpt":{"source":"iana","extensions":["tpt"]},"application/vnd.triscape.mxs":{"source":"iana","extensions":["mxs"]},"application/vnd.trueapp":{"source":"iana","extensions":["tra"]},"application/vnd.truedoc":{"source":"iana"},"application/vnd.ubisoft.webplayer":{"source":"iana"},"application/vnd.ufdl":{"source":"iana","extensions":["ufd","ufdl"]},"application/vnd.uiq.theme":{"source":"iana","extensions":["utz"]},"application/vnd.umajin":{"source":"iana","extensions":["umj"]},"application/vnd.unity":{"source":"iana","extensions":["unityweb"]},"application/vnd.uoml+xml":{"source":"iana","compressible":true,"extensions":["uoml"]},"application/vnd.uplanet.alert":{"source":"iana"},"application/vnd.uplanet.alert-wbxml":{"source":"iana"},"application/vnd.uplanet.bearer-choice":{"source":"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{"source":"iana"},"application/vnd.uplanet.cacheop":{"source":"iana"},"application/vnd.uplanet.cacheop-wbxml":{"source":"iana"},"application/vnd.uplanet.channel":{"source":"iana"},"application/vnd.uplanet.channel-wbxml":{"source":"iana"},"application/vnd.uplanet.list":{"source":"iana"},"application/vnd.uplanet.list-wbxml":{"source":"iana"},"application/vnd.uplanet.listcmd":{"source":"iana"},"application/vnd.uplanet.listcmd-wbxml":{"source":"iana"},"application/vnd.uplanet.signal":{"source":"iana"},"application/vnd.uri-map":{"source":"iana"},"application/vnd.valve.source.material":{"source":"iana"},"application/vnd.vcx":{"source":"iana","extensions":["vcx"]},"application/vnd.vd-study":{"source":"iana"},"application/vnd.vectorworks":{"source":"iana"},"application/vnd.vel+json":{"source":"iana","compressible":true},"application/vnd.verimatrix.vcas":{"source":"iana"},"application/vnd.veryant.thin":{"source":"iana"},"application/vnd.ves.encrypted":{"source":"iana"},"application/vnd.vidsoft.vidconference":{"source":"iana"},"application/vnd.visio":{"source":"iana","extensions":["vsd","vst","vss","vsw"]},"application/vnd.visionary":{"source":"iana","extensions":["vis"]},"application/vnd.vividence.scriptfile":{"source":"iana"},"application/vnd.vsf":{"source":"iana","extensions":["vsf"]},"application/vnd.wap.sic":{"source":"iana"},"application/vnd.wap.slc":{"source":"iana"},"application/vnd.wap.wbxml":{"source":"iana","charset":"UTF-8","extensions":["wbxml"]},"application/vnd.wap.wmlc":{"source":"iana","extensions":["wmlc"]},"application/vnd.wap.wmlscriptc":{"source":"iana","extensions":["wmlsc"]},"application/vnd.webturbo":{"source":"iana","extensions":["wtb"]},"application/vnd.wfa.dpp":{"source":"iana"},"application/vnd.wfa.p2p":{"source":"iana"},"application/vnd.wfa.wsc":{"source":"iana"},"application/vnd.windows.devicepairing":{"source":"iana"},"application/vnd.wmc":{"source":"iana"},"application/vnd.wmf.bootstrap":{"source":"iana"},"application/vnd.wolfram.mathematica":{"source":"iana"},"application/vnd.wolfram.mathematica.package":{"source":"iana"},"application/vnd.wolfram.player":{"source":"iana","extensions":["nbp"]},"application/vnd.wordperfect":{"source":"iana","extensions":["wpd"]},"application/vnd.wqd":{"source":"iana","extensions":["wqd"]},"application/vnd.wrq-hp3000-labelled":{"source":"iana"},"application/vnd.wt.stf":{"source":"iana","extensions":["stf"]},"application/vnd.wv.csp+wbxml":{"source":"iana"},"application/vnd.wv.csp+xml":{"source":"iana","compressible":true},"application/vnd.wv.ssp+xml":{"source":"iana","compressible":true},"application/vnd.xacml+json":{"source":"iana","compressible":true},"application/vnd.xara":{"source":"iana","extensions":["xar"]},"application/vnd.xfdl":{"source":"iana","extensions":["xfdl"]},"application/vnd.xfdl.webform":{"source":"iana"},"application/vnd.xmi+xml":{"source":"iana","compressible":true},"application/vnd.xmpie.cpkg":{"source":"iana"},"application/vnd.xmpie.dpkg":{"source":"iana"},"application/vnd.xmpie.plan":{"source":"iana"},"application/vnd.xmpie.ppkg":{"source":"iana"},"application/vnd.xmpie.xlim":{"source":"iana"},"application/vnd.yamaha.hv-dic":{"source":"iana","extensions":["hvd"]},"application/vnd.yamaha.hv-script":{"source":"iana","extensions":["hvs"]},"application/vnd.yamaha.hv-voice":{"source":"iana","extensions":["hvp"]},"application/vnd.yamaha.openscoreformat":{"source":"iana","extensions":["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{"source":"iana","compressible":true,"extensions":["osfpvg"]},"application/vnd.yamaha.remote-setup":{"source":"iana"},"application/vnd.yamaha.smaf-audio":{"source":"iana","extensions":["saf"]},"application/vnd.yamaha.smaf-phrase":{"source":"iana","extensions":["spf"]},"application/vnd.yamaha.through-ngn":{"source":"iana"},"application/vnd.yamaha.tunnel-udpencap":{"source":"iana"},"application/vnd.yaoweme":{"source":"iana"},"application/vnd.yellowriver-custom-menu":{"source":"iana","extensions":["cmp"]},"application/vnd.youtube.yt":{"source":"iana"},"application/vnd.zul":{"source":"iana","extensions":["zir","zirz"]},"application/vnd.zzazz.deck+xml":{"source":"iana","compressible":true,"extensions":["zaz"]},"application/voicexml+xml":{"source":"iana","compressible":true,"extensions":["vxml"]},"application/voucher-cms+json":{"source":"iana","compressible":true},"application/vq-rtcpxr":{"source":"iana"},"application/wasm":{"compressible":true,"extensions":["wasm"]},"application/watcherinfo+xml":{"source":"iana","compressible":true},"application/webpush-options+json":{"source":"iana","compressible":true},"application/whoispp-query":{"source":"iana"},"application/whoispp-response":{"source":"iana"},"application/widget":{"source":"iana","extensions":["wgt"]},"application/winhlp":{"source":"apache","extensions":["hlp"]},"application/wita":{"source":"iana"},"application/wordperfect5.1":{"source":"iana"},"application/wsdl+xml":{"source":"iana","compressible":true,"extensions":["wsdl"]},"application/wspolicy+xml":{"source":"iana","compressible":true,"extensions":["wspolicy"]},"application/x-7z-compressed":{"source":"apache","compressible":false,"extensions":["7z"]},"application/x-abiword":{"source":"apache","extensions":["abw"]},"application/x-ace-compressed":{"source":"apache","extensions":["ace"]},"application/x-amf":{"source":"apache"},"application/x-apple-diskimage":{"source":"apache","extensions":["dmg"]},"application/x-arj":{"compressible":false,"extensions":["arj"]},"application/x-authorware-bin":{"source":"apache","extensions":["aab","x32","u32","vox"]},"application/x-authorware-map":{"source":"apache","extensions":["aam"]},"application/x-authorware-seg":{"source":"apache","extensions":["aas"]},"application/x-bcpio":{"source":"apache","extensions":["bcpio"]},"application/x-bdoc":{"compressible":false,"extensions":["bdoc"]},"application/x-bittorrent":{"source":"apache","extensions":["torrent"]},"application/x-blorb":{"source":"apache","extensions":["blb","blorb"]},"application/x-bzip":{"source":"apache","compressible":false,"extensions":["bz"]},"application/x-bzip2":{"source":"apache","compressible":false,"extensions":["bz2","boz"]},"application/x-cbr":{"source":"apache","extensions":["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{"source":"apache","extensions":["vcd"]},"application/x-cfs-compressed":{"source":"apache","extensions":["cfs"]},"application/x-chat":{"source":"apache","extensions":["chat"]},"application/x-chess-pgn":{"source":"apache","extensions":["pgn"]},"application/x-chrome-extension":{"extensions":["crx"]},"application/x-cocoa":{"source":"nginx","extensions":["cco"]},"application/x-compress":{"source":"apache"},"application/x-conference":{"source":"apache","extensions":["nsc"]},"application/x-cpio":{"source":"apache","extensions":["cpio"]},"application/x-csh":{"source":"apache","extensions":["csh"]},"application/x-deb":{"compressible":false},"application/x-debian-package":{"source":"apache","extensions":["deb","udeb"]},"application/x-dgc-compressed":{"source":"apache","extensions":["dgc"]},"application/x-director":{"source":"apache","extensions":["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{"source":"apache","extensions":["wad"]},"application/x-dtbncx+xml":{"source":"apache","compressible":true,"extensions":["ncx"]},"application/x-dtbook+xml":{"source":"apache","compressible":true,"extensions":["dtb"]},"application/x-dtbresource+xml":{"source":"apache","compressible":true,"extensions":["res"]},"application/x-dvi":{"source":"apache","compressible":false,"extensions":["dvi"]},"application/x-envoy":{"source":"apache","extensions":["evy"]},"application/x-eva":{"source":"apache","extensions":["eva"]},"application/x-font-bdf":{"source":"apache","extensions":["bdf"]},"application/x-font-dos":{"source":"apache"},"application/x-font-framemaker":{"source":"apache"},"application/x-font-ghostscript":{"source":"apache","extensions":["gsf"]},"application/x-font-libgrx":{"source":"apache"},"application/x-font-linux-psf":{"source":"apache","extensions":["psf"]},"application/x-font-pcf":{"source":"apache","extensions":["pcf"]},"application/x-font-snf":{"source":"apache","extensions":["snf"]},"application/x-font-speedo":{"source":"apache"},"application/x-font-sunos-news":{"source":"apache"},"application/x-font-type1":{"source":"apache","extensions":["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{"source":"apache"},"application/x-freearc":{"source":"apache","extensions":["arc"]},"application/x-futuresplash":{"source":"apache","extensions":["spl"]},"application/x-gca-compressed":{"source":"apache","extensions":["gca"]},"application/x-glulx":{"source":"apache","extensions":["ulx"]},"application/x-gnumeric":{"source":"apache","extensions":["gnumeric"]},"application/x-gramps-xml":{"source":"apache","extensions":["gramps"]},"application/x-gtar":{"source":"apache","extensions":["gtar"]},"application/x-gzip":{"source":"apache"},"application/x-hdf":{"source":"apache","extensions":["hdf"]},"application/x-httpd-php":{"compressible":true,"extensions":["php"]},"application/x-install-instructions":{"source":"apache","extensions":["install"]},"application/x-iso9660-image":{"source":"apache","extensions":["iso"]},"application/x-java-archive-diff":{"source":"nginx","extensions":["jardiff"]},"application/x-java-jnlp-file":{"source":"apache","compressible":false,"extensions":["jnlp"]},"application/x-javascript":{"compressible":true},"application/x-keepass2":{"extensions":["kdbx"]},"application/x-latex":{"source":"apache","compressible":false,"extensions":["latex"]},"application/x-lua-bytecode":{"extensions":["luac"]},"application/x-lzh-compressed":{"source":"apache","extensions":["lzh","lha"]},"application/x-makeself":{"source":"nginx","extensions":["run"]},"application/x-mie":{"source":"apache","extensions":["mie"]},"application/x-mobipocket-ebook":{"source":"apache","extensions":["prc","mobi"]},"application/x-mpegurl":{"compressible":false},"application/x-ms-application":{"source":"apache","extensions":["application"]},"application/x-ms-shortcut":{"source":"apache","extensions":["lnk"]},"application/x-ms-wmd":{"source":"apache","extensions":["wmd"]},"application/x-ms-wmz":{"source":"apache","extensions":["wmz"]},"application/x-ms-xbap":{"source":"apache","extensions":["xbap"]},"application/x-msaccess":{"source":"apache","extensions":["mdb"]},"application/x-msbinder":{"source":"apache","extensions":["obd"]},"application/x-mscardfile":{"source":"apache","extensions":["crd"]},"application/x-msclip":{"source":"apache","extensions":["clp"]},"application/x-msdos-program":{"extensions":["exe"]},"application/x-msdownload":{"source":"apache","extensions":["exe","dll","com","bat","msi"]},"application/x-msmediaview":{"source":"apache","extensions":["mvb","m13","m14"]},"application/x-msmetafile":{"source":"apache","extensions":["wmf","wmz","emf","emz"]},"application/x-msmoney":{"source":"apache","extensions":["mny"]},"application/x-mspublisher":{"source":"apache","extensions":["pub"]},"application/x-msschedule":{"source":"apache","extensions":["scd"]},"application/x-msterminal":{"source":"apache","extensions":["trm"]},"application/x-mswrite":{"source":"apache","extensions":["wri"]},"application/x-netcdf":{"source":"apache","extensions":["nc","cdf"]},"application/x-ns-proxy-autoconfig":{"compressible":true,"extensions":["pac"]},"application/x-nzb":{"source":"apache","extensions":["nzb"]},"application/x-perl":{"source":"nginx","extensions":["pl","pm"]},"application/x-pilot":{"source":"nginx","extensions":["prc","pdb"]},"application/x-pkcs12":{"source":"apache","compressible":false,"extensions":["p12","pfx"]},"application/x-pkcs7-certificates":{"source":"apache","extensions":["p7b","spc"]},"application/x-pkcs7-certreqresp":{"source":"apache","extensions":["p7r"]},"application/x-pki-message":{"source":"iana"},"application/x-rar-compressed":{"source":"apache","compressible":false,"extensions":["rar"]},"application/x-redhat-package-manager":{"source":"nginx","extensions":["rpm"]},"application/x-research-info-systems":{"source":"apache","extensions":["ris"]},"application/x-sea":{"source":"nginx","extensions":["sea"]},"application/x-sh":{"source":"apache","compressible":true,"extensions":["sh"]},"application/x-shar":{"source":"apache","extensions":["shar"]},"application/x-shockwave-flash":{"source":"apache","compressible":false,"extensions":["swf"]},"application/x-silverlight-app":{"source":"apache","extensions":["xap"]},"application/x-sql":{"source":"apache","extensions":["sql"]},"application/x-stuffit":{"source":"apache","compressible":false,"extensions":["sit"]},"application/x-stuffitx":{"source":"apache","extensions":["sitx"]},"application/x-subrip":{"source":"apache","extensions":["srt"]},"application/x-sv4cpio":{"source":"apache","extensions":["sv4cpio"]},"application/x-sv4crc":{"source":"apache","extensions":["sv4crc"]},"application/x-t3vm-image":{"source":"apache","extensions":["t3"]},"application/x-tads":{"source":"apache","extensions":["gam"]},"application/x-tar":{"source":"apache","compressible":true,"extensions":["tar"]},"application/x-tcl":{"source":"apache","extensions":["tcl","tk"]},"application/x-tex":{"source":"apache","extensions":["tex"]},"application/x-tex-tfm":{"source":"apache","extensions":["tfm"]},"application/x-texinfo":{"source":"apache","extensions":["texinfo","texi"]},"application/x-tgif":{"source":"apache","extensions":["obj"]},"application/x-ustar":{"source":"apache","extensions":["ustar"]},"application/x-virtualbox-hdd":{"compressible":true,"extensions":["hdd"]},"application/x-virtualbox-ova":{"compressible":true,"extensions":["ova"]},"application/x-virtualbox-ovf":{"compressible":true,"extensions":["ovf"]},"application/x-virtualbox-vbox":{"compressible":true,"extensions":["vbox"]},"application/x-virtualbox-vbox-extpack":{"compressible":false,"extensions":["vbox-extpack"]},"application/x-virtualbox-vdi":{"compressible":true,"extensions":["vdi"]},"application/x-virtualbox-vhd":{"compressible":true,"extensions":["vhd"]},"application/x-virtualbox-vmdk":{"compressible":true,"extensions":["vmdk"]},"application/x-wais-source":{"source":"apache","extensions":["src"]},"application/x-web-app-manifest+json":{"compressible":true,"extensions":["webapp"]},"application/x-www-form-urlencoded":{"source":"iana","compressible":true},"application/x-x509-ca-cert":{"source":"iana","extensions":["der","crt","pem"]},"application/x-x509-ca-ra-cert":{"source":"iana"},"application/x-x509-next-ca-cert":{"source":"iana"},"application/x-xfig":{"source":"apache","extensions":["fig"]},"application/x-xliff+xml":{"source":"apache","compressible":true,"extensions":["xlf"]},"application/x-xpinstall":{"source":"apache","compressible":false,"extensions":["xpi"]},"application/x-xz":{"source":"apache","extensions":["xz"]},"application/x-zmachine":{"source":"apache","extensions":["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{"source":"iana"},"application/xacml+xml":{"source":"iana","compressible":true},"application/xaml+xml":{"source":"apache","compressible":true,"extensions":["xaml"]},"application/xcap-att+xml":{"source":"iana","compressible":true,"extensions":["xav"]},"application/xcap-caps+xml":{"source":"iana","compressible":true,"extensions":["xca"]},"application/xcap-diff+xml":{"source":"iana","compressible":true,"extensions":["xdf"]},"application/xcap-el+xml":{"source":"iana","compressible":true,"extensions":["xel"]},"application/xcap-error+xml":{"source":"iana","compressible":true},"application/xcap-ns+xml":{"source":"iana","compressible":true,"extensions":["xns"]},"application/xcon-conference-info+xml":{"source":"iana","compressible":true},"application/xcon-conference-info-diff+xml":{"source":"iana","compressible":true},"application/xenc+xml":{"source":"iana","compressible":true,"extensions":["xenc"]},"application/xhtml+xml":{"source":"iana","compressible":true,"extensions":["xhtml","xht"]},"application/xhtml-voice+xml":{"source":"apache","compressible":true},"application/xliff+xml":{"source":"iana","compressible":true,"extensions":["xlf"]},"application/xml":{"source":"iana","compressible":true,"extensions":["xml","xsl","xsd","rng"]},"application/xml-dtd":{"source":"iana","compressible":true,"extensions":["dtd"]},"application/xml-external-parsed-entity":{"source":"iana"},"application/xml-patch+xml":{"source":"iana","compressible":true},"application/xmpp+xml":{"source":"iana","compressible":true},"application/xop+xml":{"source":"iana","compressible":true,"extensions":["xop"]},"application/xproc+xml":{"source":"apache","compressible":true,"extensions":["xpl"]},"application/xslt+xml":{"source":"iana","compressible":true,"extensions":["xsl","xslt"]},"application/xspf+xml":{"source":"apache","compressible":true,"extensions":["xspf"]},"application/xv+xml":{"source":"iana","compressible":true,"extensions":["mxml","xhvml","xvml","xvm"]},"application/yang":{"source":"iana","extensions":["yang"]},"application/yang-data+json":{"source":"iana","compressible":true},"application/yang-data+xml":{"source":"iana","compressible":true},"application/yang-patch+json":{"source":"iana","compressible":true},"application/yang-patch+xml":{"source":"iana","compressible":true},"application/yin+xml":{"source":"iana","compressible":true,"extensions":["yin"]},"application/zip":{"source":"iana","compressible":false,"extensions":["zip"]},"application/zlib":{"source":"iana"},"application/zstd":{"source":"iana"},"audio/1d-interleaved-parityfec":{"source":"iana"},"audio/32kadpcm":{"source":"iana"},"audio/3gpp":{"source":"iana","compressible":false,"extensions":["3gpp"]},"audio/3gpp2":{"source":"iana"},"audio/aac":{"source":"iana"},"audio/ac3":{"source":"iana"},"audio/adpcm":{"source":"apache","extensions":["adp"]},"audio/amr":{"source":"iana","extensions":["amr"]},"audio/amr-wb":{"source":"iana"},"audio/amr-wb+":{"source":"iana"},"audio/aptx":{"source":"iana"},"audio/asc":{"source":"iana"},"audio/atrac-advanced-lossless":{"source":"iana"},"audio/atrac-x":{"source":"iana"},"audio/atrac3":{"source":"iana"},"audio/basic":{"source":"iana","compressible":false,"extensions":["au","snd"]},"audio/bv16":{"source":"iana"},"audio/bv32":{"source":"iana"},"audio/clearmode":{"source":"iana"},"audio/cn":{"source":"iana"},"audio/dat12":{"source":"iana"},"audio/dls":{"source":"iana"},"audio/dsr-es201108":{"source":"iana"},"audio/dsr-es202050":{"source":"iana"},"audio/dsr-es202211":{"source":"iana"},"audio/dsr-es202212":{"source":"iana"},"audio/dv":{"source":"iana"},"audio/dvi4":{"source":"iana"},"audio/eac3":{"source":"iana"},"audio/encaprtp":{"source":"iana"},"audio/evrc":{"source":"iana"},"audio/evrc-qcp":{"source":"iana"},"audio/evrc0":{"source":"iana"},"audio/evrc1":{"source":"iana"},"audio/evrcb":{"source":"iana"},"audio/evrcb0":{"source":"iana"},"audio/evrcb1":{"source":"iana"},"audio/evrcnw":{"source":"iana"},"audio/evrcnw0":{"source":"iana"},"audio/evrcnw1":{"source":"iana"},"audio/evrcwb":{"source":"iana"},"audio/evrcwb0":{"source":"iana"},"audio/evrcwb1":{"source":"iana"},"audio/evs":{"source":"iana"},"audio/flexfec":{"source":"iana"},"audio/fwdred":{"source":"iana"},"audio/g711-0":{"source":"iana"},"audio/g719":{"source":"iana"},"audio/g722":{"source":"iana"},"audio/g7221":{"source":"iana"},"audio/g723":{"source":"iana"},"audio/g726-16":{"source":"iana"},"audio/g726-24":{"source":"iana"},"audio/g726-32":{"source":"iana"},"audio/g726-40":{"source":"iana"},"audio/g728":{"source":"iana"},"audio/g729":{"source":"iana"},"audio/g7291":{"source":"iana"},"audio/g729d":{"source":"iana"},"audio/g729e":{"source":"iana"},"audio/gsm":{"source":"iana"},"audio/gsm-efr":{"source":"iana"},"audio/gsm-hr-08":{"source":"iana"},"audio/ilbc":{"source":"iana"},"audio/ip-mr_v2.5":{"source":"iana"},"audio/isac":{"source":"apache"},"audio/l16":{"source":"iana"},"audio/l20":{"source":"iana"},"audio/l24":{"source":"iana","compressible":false},"audio/l8":{"source":"iana"},"audio/lpc":{"source":"iana"},"audio/melp":{"source":"iana"},"audio/melp1200":{"source":"iana"},"audio/melp2400":{"source":"iana"},"audio/melp600":{"source":"iana"},"audio/mhas":{"source":"iana"},"audio/midi":{"source":"apache","extensions":["mid","midi","kar","rmi"]},"audio/mobile-xmf":{"source":"iana","extensions":["mxmf"]},"audio/mp3":{"compressible":false,"extensions":["mp3"]},"audio/mp4":{"source":"iana","compressible":false,"extensions":["m4a","mp4a"]},"audio/mp4a-latm":{"source":"iana"},"audio/mpa":{"source":"iana"},"audio/mpa-robust":{"source":"iana"},"audio/mpeg":{"source":"iana","compressible":false,"extensions":["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{"source":"iana"},"audio/musepack":{"source":"apache"},"audio/ogg":{"source":"iana","compressible":false,"extensions":["oga","ogg","spx","opus"]},"audio/opus":{"source":"iana"},"audio/parityfec":{"source":"iana"},"audio/pcma":{"source":"iana"},"audio/pcma-wb":{"source":"iana"},"audio/pcmu":{"source":"iana"},"audio/pcmu-wb":{"source":"iana"},"audio/prs.sid":{"source":"iana"},"audio/qcelp":{"source":"iana"},"audio/raptorfec":{"source":"iana"},"audio/red":{"source":"iana"},"audio/rtp-enc-aescm128":{"source":"iana"},"audio/rtp-midi":{"source":"iana"},"audio/rtploopback":{"source":"iana"},"audio/rtx":{"source":"iana"},"audio/s3m":{"source":"apache","extensions":["s3m"]},"audio/scip":{"source":"iana"},"audio/silk":{"source":"apache","extensions":["sil"]},"audio/smv":{"source":"iana"},"audio/smv-qcp":{"source":"iana"},"audio/smv0":{"source":"iana"},"audio/sofa":{"source":"iana"},"audio/sp-midi":{"source":"iana"},"audio/speex":{"source":"iana"},"audio/t140c":{"source":"iana"},"audio/t38":{"source":"iana"},"audio/telephone-event":{"source":"iana"},"audio/tetra_acelp":{"source":"iana"},"audio/tetra_acelp_bb":{"source":"iana"},"audio/tone":{"source":"iana"},"audio/tsvcis":{"source":"iana"},"audio/uemclip":{"source":"iana"},"audio/ulpfec":{"source":"iana"},"audio/usac":{"source":"iana"},"audio/vdvi":{"source":"iana"},"audio/vmr-wb":{"source":"iana"},"audio/vnd.3gpp.iufp":{"source":"iana"},"audio/vnd.4sb":{"source":"iana"},"audio/vnd.audiokoz":{"source":"iana"},"audio/vnd.celp":{"source":"iana"},"audio/vnd.cisco.nse":{"source":"iana"},"audio/vnd.cmles.radio-events":{"source":"iana"},"audio/vnd.cns.anp1":{"source":"iana"},"audio/vnd.cns.inf1":{"source":"iana"},"audio/vnd.dece.audio":{"source":"iana","extensions":["uva","uvva"]},"audio/vnd.digital-winds":{"source":"iana","extensions":["eol"]},"audio/vnd.dlna.adts":{"source":"iana"},"audio/vnd.dolby.heaac.1":{"source":"iana"},"audio/vnd.dolby.heaac.2":{"source":"iana"},"audio/vnd.dolby.mlp":{"source":"iana"},"audio/vnd.dolby.mps":{"source":"iana"},"audio/vnd.dolby.pl2":{"source":"iana"},"audio/vnd.dolby.pl2x":{"source":"iana"},"audio/vnd.dolby.pl2z":{"source":"iana"},"audio/vnd.dolby.pulse.1":{"source":"iana"},"audio/vnd.dra":{"source":"iana","extensions":["dra"]},"audio/vnd.dts":{"source":"iana","extensions":["dts"]},"audio/vnd.dts.hd":{"source":"iana","extensions":["dtshd"]},"audio/vnd.dts.uhd":{"source":"iana"},"audio/vnd.dvb.file":{"source":"iana"},"audio/vnd.everad.plj":{"source":"iana"},"audio/vnd.hns.audio":{"source":"iana"},"audio/vnd.lucent.voice":{"source":"iana","extensions":["lvp"]},"audio/vnd.ms-playready.media.pya":{"source":"iana","extensions":["pya"]},"audio/vnd.nokia.mobile-xmf":{"source":"iana"},"audio/vnd.nortel.vbk":{"source":"iana"},"audio/vnd.nuera.ecelp4800":{"source":"iana","extensions":["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{"source":"iana","extensions":["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{"source":"iana","extensions":["ecelp9600"]},"audio/vnd.octel.sbc":{"source":"iana"},"audio/vnd.presonus.multitrack":{"source":"iana"},"audio/vnd.qcelp":{"source":"iana"},"audio/vnd.rhetorex.32kadpcm":{"source":"iana"},"audio/vnd.rip":{"source":"iana","extensions":["rip"]},"audio/vnd.rn-realaudio":{"compressible":false},"audio/vnd.sealedmedia.softseal.mpeg":{"source":"iana"},"audio/vnd.vmx.cvsd":{"source":"iana"},"audio/vnd.wave":{"compressible":false},"audio/vorbis":{"source":"iana","compressible":false},"audio/vorbis-config":{"source":"iana"},"audio/wav":{"compressible":false,"extensions":["wav"]},"audio/wave":{"compressible":false,"extensions":["wav"]},"audio/webm":{"source":"apache","compressible":false,"extensions":["weba"]},"audio/x-aac":{"source":"apache","compressible":false,"extensions":["aac"]},"audio/x-aiff":{"source":"apache","extensions":["aif","aiff","aifc"]},"audio/x-caf":{"source":"apache","compressible":false,"extensions":["caf"]},"audio/x-flac":{"source":"apache","extensions":["flac"]},"audio/x-m4a":{"source":"nginx","extensions":["m4a"]},"audio/x-matroska":{"source":"apache","extensions":["mka"]},"audio/x-mpegurl":{"source":"apache","extensions":["m3u"]},"audio/x-ms-wax":{"source":"apache","extensions":["wax"]},"audio/x-ms-wma":{"source":"apache","extensions":["wma"]},"audio/x-pn-realaudio":{"source":"apache","extensions":["ram","ra"]},"audio/x-pn-realaudio-plugin":{"source":"apache","extensions":["rmp"]},"audio/x-realaudio":{"source":"nginx","extensions":["ra"]},"audio/x-tta":{"source":"apache"},"audio/x-wav":{"source":"apache","extensions":["wav"]},"audio/xm":{"source":"apache","extensions":["xm"]},"chemical/x-cdx":{"source":"apache","extensions":["cdx"]},"chemical/x-cif":{"source":"apache","extensions":["cif"]},"chemical/x-cmdf":{"source":"apache","extensions":["cmdf"]},"chemical/x-cml":{"source":"apache","extensions":["cml"]},"chemical/x-csml":{"source":"apache","extensions":["csml"]},"chemical/x-pdb":{"source":"apache"},"chemical/x-xyz":{"source":"apache","extensions":["xyz"]},"font/collection":{"source":"iana","extensions":["ttc"]},"font/otf":{"source":"iana","compressible":true,"extensions":["otf"]},"font/sfnt":{"source":"iana"},"font/ttf":{"source":"iana","compressible":true,"extensions":["ttf"]},"font/woff":{"source":"iana","extensions":["woff"]},"font/woff2":{"source":"iana","extensions":["woff2"]},"image/aces":{"source":"iana","extensions":["exr"]},"image/apng":{"compressible":false,"extensions":["apng"]},"image/avci":{"source":"iana"},"image/avcs":{"source":"iana"},"image/avif":{"source":"iana","compressible":false,"extensions":["avif"]},"image/bmp":{"source":"iana","compressible":true,"extensions":["bmp"]},"image/cgm":{"source":"iana","extensions":["cgm"]},"image/dicom-rle":{"source":"iana","extensions":["drle"]},"image/emf":{"source":"iana","extensions":["emf"]},"image/fits":{"source":"iana","extensions":["fits"]},"image/g3fax":{"source":"iana","extensions":["g3"]},"image/gif":{"source":"iana","compressible":false,"extensions":["gif"]},"image/heic":{"source":"iana","extensions":["heic"]},"image/heic-sequence":{"source":"iana","extensions":["heics"]},"image/heif":{"source":"iana","extensions":["heif"]},"image/heif-sequence":{"source":"iana","extensions":["heifs"]},"image/hej2k":{"source":"iana","extensions":["hej2"]},"image/hsj2":{"source":"iana","extensions":["hsj2"]},"image/ief":{"source":"iana","extensions":["ief"]},"image/jls":{"source":"iana","extensions":["jls"]},"image/jp2":{"source":"iana","compressible":false,"extensions":["jp2","jpg2"]},"image/jpeg":{"source":"iana","compressible":false,"extensions":["jpeg","jpg","jpe"]},"image/jph":{"source":"iana","extensions":["jph"]},"image/jphc":{"source":"iana","extensions":["jhc"]},"image/jpm":{"source":"iana","compressible":false,"extensions":["jpm"]},"image/jpx":{"source":"iana","compressible":false,"extensions":["jpx","jpf"]},"image/jxr":{"source":"iana","extensions":["jxr"]},"image/jxra":{"source":"iana","extensions":["jxra"]},"image/jxrs":{"source":"iana","extensions":["jxrs"]},"image/jxs":{"source":"iana","extensions":["jxs"]},"image/jxsc":{"source":"iana","extensions":["jxsc"]},"image/jxsi":{"source":"iana","extensions":["jxsi"]},"image/jxss":{"source":"iana","extensions":["jxss"]},"image/ktx":{"source":"iana","extensions":["ktx"]},"image/ktx2":{"source":"iana","extensions":["ktx2"]},"image/naplps":{"source":"iana"},"image/pjpeg":{"compressible":false},"image/png":{"source":"iana","compressible":false,"extensions":["png"]},"image/prs.btif":{"source":"iana","extensions":["btif"]},"image/prs.pti":{"source":"iana","extensions":["pti"]},"image/pwg-raster":{"source":"iana"},"image/sgi":{"source":"apache","extensions":["sgi"]},"image/svg+xml":{"source":"iana","compressible":true,"extensions":["svg","svgz"]},"image/t38":{"source":"iana","extensions":["t38"]},"image/tiff":{"source":"iana","compressible":false,"extensions":["tif","tiff"]},"image/tiff-fx":{"source":"iana","extensions":["tfx"]},"image/vnd.adobe.photoshop":{"source":"iana","compressible":true,"extensions":["psd"]},"image/vnd.airzip.accelerator.azv":{"source":"iana","extensions":["azv"]},"image/vnd.cns.inf2":{"source":"iana"},"image/vnd.dece.graphic":{"source":"iana","extensions":["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{"source":"iana","extensions":["djvu","djv"]},"image/vnd.dvb.subtitle":{"source":"iana","extensions":["sub"]},"image/vnd.dwg":{"source":"iana","extensions":["dwg"]},"image/vnd.dxf":{"source":"iana","extensions":["dxf"]},"image/vnd.fastbidsheet":{"source":"iana","extensions":["fbs"]},"image/vnd.fpx":{"source":"iana","extensions":["fpx"]},"image/vnd.fst":{"source":"iana","extensions":["fst"]},"image/vnd.fujixerox.edmics-mmr":{"source":"iana","extensions":["mmr"]},"image/vnd.fujixerox.edmics-rlc":{"source":"iana","extensions":["rlc"]},"image/vnd.globalgraphics.pgb":{"source":"iana"},"image/vnd.microsoft.icon":{"source":"iana","extensions":["ico"]},"image/vnd.mix":{"source":"iana"},"image/vnd.mozilla.apng":{"source":"iana"},"image/vnd.ms-dds":{"extensions":["dds"]},"image/vnd.ms-modi":{"source":"iana","extensions":["mdi"]},"image/vnd.ms-photo":{"source":"apache","extensions":["wdp"]},"image/vnd.net-fpx":{"source":"iana","extensions":["npx"]},"image/vnd.pco.b16":{"source":"iana","extensions":["b16"]},"image/vnd.radiance":{"source":"iana"},"image/vnd.sealed.png":{"source":"iana"},"image/vnd.sealedmedia.softseal.gif":{"source":"iana"},"image/vnd.sealedmedia.softseal.jpg":{"source":"iana"},"image/vnd.svf":{"source":"iana"},"image/vnd.tencent.tap":{"source":"iana","extensions":["tap"]},"image/vnd.valve.source.texture":{"source":"iana","extensions":["vtf"]},"image/vnd.wap.wbmp":{"source":"iana","extensions":["wbmp"]},"image/vnd.xiff":{"source":"iana","extensions":["xif"]},"image/vnd.zbrush.pcx":{"source":"iana","extensions":["pcx"]},"image/webp":{"source":"apache","extensions":["webp"]},"image/wmf":{"source":"iana","extensions":["wmf"]},"image/x-3ds":{"source":"apache","extensions":["3ds"]},"image/x-cmu-raster":{"source":"apache","extensions":["ras"]},"image/x-cmx":{"source":"apache","extensions":["cmx"]},"image/x-freehand":{"source":"apache","extensions":["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{"source":"apache","compressible":true,"extensions":["ico"]},"image/x-jng":{"source":"nginx","extensions":["jng"]},"image/x-mrsid-image":{"source":"apache","extensions":["sid"]},"image/x-ms-bmp":{"source":"nginx","compressible":true,"extensions":["bmp"]},"image/x-pcx":{"source":"apache","extensions":["pcx"]},"image/x-pict":{"source":"apache","extensions":["pic","pct"]},"image/x-portable-anymap":{"source":"apache","extensions":["pnm"]},"image/x-portable-bitmap":{"source":"apache","extensions":["pbm"]},"image/x-portable-graymap":{"source":"apache","extensions":["pgm"]},"image/x-portable-pixmap":{"source":"apache","extensions":["ppm"]},"image/x-rgb":{"source":"apache","extensions":["rgb"]},"image/x-tga":{"source":"apache","extensions":["tga"]},"image/x-xbitmap":{"source":"apache","extensions":["xbm"]},"image/x-xcf":{"compressible":false},"image/x-xpixmap":{"source":"apache","extensions":["xpm"]},"image/x-xwindowdump":{"source":"apache","extensions":["xwd"]},"message/cpim":{"source":"iana"},"message/delivery-status":{"source":"iana"},"message/disposition-notification":{"source":"iana","extensions":["disposition-notification"]},"message/external-body":{"source":"iana"},"message/feedback-report":{"source":"iana"},"message/global":{"source":"iana","extensions":["u8msg"]},"message/global-delivery-status":{"source":"iana","extensions":["u8dsn"]},"message/global-disposition-notification":{"source":"iana","extensions":["u8mdn"]},"message/global-headers":{"source":"iana","extensions":["u8hdr"]},"message/http":{"source":"iana","compressible":false},"message/imdn+xml":{"source":"iana","compressible":true},"message/news":{"source":"iana"},"message/partial":{"source":"iana","compressible":false},"message/rfc822":{"source":"iana","compressible":true,"extensions":["eml","mime"]},"message/s-http":{"source":"iana"},"message/sip":{"source":"iana"},"message/sipfrag":{"source":"iana"},"message/tracking-status":{"source":"iana"},"message/vnd.si.simp":{"source":"iana"},"message/vnd.wfa.wsc":{"source":"iana","extensions":["wsc"]},"model/3mf":{"source":"iana","extensions":["3mf"]},"model/e57":{"source":"iana"},"model/gltf+json":{"source":"iana","compressible":true,"extensions":["gltf"]},"model/gltf-binary":{"source":"iana","compressible":true,"extensions":["glb"]},"model/iges":{"source":"iana","compressible":false,"extensions":["igs","iges"]},"model/mesh":{"source":"iana","compressible":false,"extensions":["msh","mesh","silo"]},"model/mtl":{"source":"iana","extensions":["mtl"]},"model/obj":{"source":"iana","extensions":["obj"]},"model/stl":{"source":"iana","extensions":["stl"]},"model/vnd.collada+xml":{"source":"iana","compressible":true,"extensions":["dae"]},"model/vnd.dwf":{"source":"iana","extensions":["dwf"]},"model/vnd.flatland.3dml":{"source":"iana"},"model/vnd.gdl":{"source":"iana","extensions":["gdl"]},"model/vnd.gs-gdl":{"source":"apache"},"model/vnd.gs.gdl":{"source":"iana"},"model/vnd.gtw":{"source":"iana","extensions":["gtw"]},"model/vnd.moml+xml":{"source":"iana","compressible":true},"model/vnd.mts":{"source":"iana","extensions":["mts"]},"model/vnd.opengex":{"source":"iana","extensions":["ogex"]},"model/vnd.parasolid.transmit.binary":{"source":"iana","extensions":["x_b"]},"model/vnd.parasolid.transmit.text":{"source":"iana","extensions":["x_t"]},"model/vnd.rosette.annotated-data-model":{"source":"iana"},"model/vnd.sap.vds":{"source":"iana","extensions":["vds"]},"model/vnd.usdz+zip":{"source":"iana","compressible":false,"extensions":["usdz"]},"model/vnd.valve.source.compiled-map":{"source":"iana","extensions":["bsp"]},"model/vnd.vtu":{"source":"iana","extensions":["vtu"]},"model/vrml":{"source":"iana","compressible":false,"extensions":["wrl","vrml"]},"model/x3d+binary":{"source":"apache","compressible":false,"extensions":["x3db","x3dbz"]},"model/x3d+fastinfoset":{"source":"iana","extensions":["x3db"]},"model/x3d+vrml":{"source":"apache","compressible":false,"extensions":["x3dv","x3dvz"]},"model/x3d+xml":{"source":"iana","compressible":true,"extensions":["x3d","x3dz"]},"model/x3d-vrml":{"source":"iana","extensions":["x3dv"]},"multipart/alternative":{"source":"iana","compressible":false},"multipart/appledouble":{"source":"iana"},"multipart/byteranges":{"source":"iana"},"multipart/digest":{"source":"iana"},"multipart/encrypted":{"source":"iana","compressible":false},"multipart/form-data":{"source":"iana","compressible":false},"multipart/header-set":{"source":"iana"},"multipart/mixed":{"source":"iana"},"multipart/multilingual":{"source":"iana"},"multipart/parallel":{"source":"iana"},"multipart/related":{"source":"iana","compressible":false},"multipart/report":{"source":"iana"},"multipart/signed":{"source":"iana","compressible":false},"multipart/vnd.bint.med-plus":{"source":"iana"},"multipart/voice-message":{"source":"iana"},"multipart/x-mixed-replace":{"source":"iana"},"text/1d-interleaved-parityfec":{"source":"iana"},"text/cache-manifest":{"source":"iana","compressible":true,"extensions":["appcache","manifest"]},"text/calendar":{"source":"iana","extensions":["ics","ifb"]},"text/calender":{"compressible":true},"text/cmd":{"compressible":true},"text/coffeescript":{"extensions":["coffee","litcoffee"]},"text/cql":{"source":"iana"},"text/cql-expression":{"source":"iana"},"text/cql-identifier":{"source":"iana"},"text/css":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["css"]},"text/csv":{"source":"iana","compressible":true,"extensions":["csv"]},"text/csv-schema":{"source":"iana"},"text/directory":{"source":"iana"},"text/dns":{"source":"iana"},"text/ecmascript":{"source":"iana"},"text/encaprtp":{"source":"iana"},"text/enriched":{"source":"iana"},"text/fhirpath":{"source":"iana"},"text/flexfec":{"source":"iana"},"text/fwdred":{"source":"iana"},"text/gff3":{"source":"iana"},"text/grammar-ref-list":{"source":"iana"},"text/html":{"source":"iana","compressible":true,"extensions":["html","htm","shtml"]},"text/jade":{"extensions":["jade"]},"text/javascript":{"source":"iana","compressible":true},"text/jcr-cnd":{"source":"iana"},"text/jsx":{"compressible":true,"extensions":["jsx"]},"text/less":{"compressible":true,"extensions":["less"]},"text/markdown":{"source":"iana","compressible":true,"extensions":["markdown","md"]},"text/mathml":{"source":"nginx","extensions":["mml"]},"text/mdx":{"compressible":true,"extensions":["mdx"]},"text/mizar":{"source":"iana"},"text/n3":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["n3"]},"text/parameters":{"source":"iana","charset":"UTF-8"},"text/parityfec":{"source":"iana"},"text/plain":{"source":"iana","compressible":true,"extensions":["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{"source":"iana","charset":"UTF-8"},"text/prs.fallenstein.rst":{"source":"iana"},"text/prs.lines.tag":{"source":"iana","extensions":["dsc"]},"text/prs.prop.logic":{"source":"iana"},"text/raptorfec":{"source":"iana"},"text/red":{"source":"iana"},"text/rfc822-headers":{"source":"iana"},"text/richtext":{"source":"iana","compressible":true,"extensions":["rtx"]},"text/rtf":{"source":"iana","compressible":true,"extensions":["rtf"]},"text/rtp-enc-aescm128":{"source":"iana"},"text/rtploopback":{"source":"iana"},"text/rtx":{"source":"iana"},"text/sgml":{"source":"iana","extensions":["sgml","sgm"]},"text/shaclc":{"source":"iana"},"text/shex":{"extensions":["shex"]},"text/slim":{"extensions":["slim","slm"]},"text/spdx":{"source":"iana","extensions":["spdx"]},"text/strings":{"source":"iana"},"text/stylus":{"extensions":["stylus","styl"]},"text/t140":{"source":"iana"},"text/tab-separated-values":{"source":"iana","compressible":true,"extensions":["tsv"]},"text/troff":{"source":"iana","extensions":["t","tr","roff","man","me","ms"]},"text/turtle":{"source":"iana","charset":"UTF-8","extensions":["ttl"]},"text/ulpfec":{"source":"iana"},"text/uri-list":{"source":"iana","compressible":true,"extensions":["uri","uris","urls"]},"text/vcard":{"source":"iana","compressible":true,"extensions":["vcard"]},"text/vnd.a":{"source":"iana"},"text/vnd.abc":{"source":"iana"},"text/vnd.ascii-art":{"source":"iana"},"text/vnd.curl":{"source":"iana","extensions":["curl"]},"text/vnd.curl.dcurl":{"source":"apache","extensions":["dcurl"]},"text/vnd.curl.mcurl":{"source":"apache","extensions":["mcurl"]},"text/vnd.curl.scurl":{"source":"apache","extensions":["scurl"]},"text/vnd.debian.copyright":{"source":"iana","charset":"UTF-8"},"text/vnd.dmclientscript":{"source":"iana"},"text/vnd.dvb.subtitle":{"source":"iana","extensions":["sub"]},"text/vnd.esmertec.theme-descriptor":{"source":"iana","charset":"UTF-8"},"text/vnd.ficlab.flt":{"source":"iana"},"text/vnd.fly":{"source":"iana","extensions":["fly"]},"text/vnd.fmi.flexstor":{"source":"iana","extensions":["flx"]},"text/vnd.gml":{"source":"iana"},"text/vnd.graphviz":{"source":"iana","extensions":["gv"]},"text/vnd.hans":{"source":"iana"},"text/vnd.hgl":{"source":"iana"},"text/vnd.in3d.3dml":{"source":"iana","extensions":["3dml"]},"text/vnd.in3d.spot":{"source":"iana","extensions":["spot"]},"text/vnd.iptc.newsml":{"source":"iana"},"text/vnd.iptc.nitf":{"source":"iana"},"text/vnd.latex-z":{"source":"iana"},"text/vnd.motorola.reflex":{"source":"iana"},"text/vnd.ms-mediapackage":{"source":"iana"},"text/vnd.net2phone.commcenter.command":{"source":"iana"},"text/vnd.radisys.msml-basic-layout":{"source":"iana"},"text/vnd.senx.warpscript":{"source":"iana"},"text/vnd.si.uricatalogue":{"source":"iana"},"text/vnd.sosi":{"source":"iana"},"text/vnd.sun.j2me.app-descriptor":{"source":"iana","charset":"UTF-8","extensions":["jad"]},"text/vnd.trolltech.linguist":{"source":"iana","charset":"UTF-8"},"text/vnd.wap.si":{"source":"iana"},"text/vnd.wap.sl":{"source":"iana"},"text/vnd.wap.wml":{"source":"iana","extensions":["wml"]},"text/vnd.wap.wmlscript":{"source":"iana","extensions":["wmls"]},"text/vtt":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["vtt"]},"text/x-asm":{"source":"apache","extensions":["s","asm"]},"text/x-c":{"source":"apache","extensions":["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{"source":"nginx","extensions":["htc"]},"text/x-fortran":{"source":"apache","extensions":["f","for","f77","f90"]},"text/x-gwt-rpc":{"compressible":true},"text/x-handlebars-template":{"extensions":["hbs"]},"text/x-java-source":{"source":"apache","extensions":["java"]},"text/x-jquery-tmpl":{"compressible":true},"text/x-lua":{"extensions":["lua"]},"text/x-markdown":{"compressible":true,"extensions":["mkd"]},"text/x-nfo":{"source":"apache","extensions":["nfo"]},"text/x-opml":{"source":"apache","extensions":["opml"]},"text/x-org":{"compressible":true,"extensions":["org"]},"text/x-pascal":{"source":"apache","extensions":["p","pas"]},"text/x-processing":{"compressible":true,"extensions":["pde"]},"text/x-sass":{"extensions":["sass"]},"text/x-scss":{"extensions":["scss"]},"text/x-setext":{"source":"apache","extensions":["etx"]},"text/x-sfv":{"source":"apache","extensions":["sfv"]},"text/x-suse-ymp":{"compressible":true,"extensions":["ymp"]},"text/x-uuencode":{"source":"apache","extensions":["uu"]},"text/x-vcalendar":{"source":"apache","extensions":["vcs"]},"text/x-vcard":{"source":"apache","extensions":["vcf"]},"text/xml":{"source":"iana","compressible":true,"extensions":["xml"]},"text/xml-external-parsed-entity":{"source":"iana"},"text/yaml":{"extensions":["yaml","yml"]},"video/1d-interleaved-parityfec":{"source":"iana"},"video/3gpp":{"source":"iana","extensions":["3gp","3gpp"]},"video/3gpp-tt":{"source":"iana"},"video/3gpp2":{"source":"iana","extensions":["3g2"]},"video/av1":{"source":"iana"},"video/bmpeg":{"source":"iana"},"video/bt656":{"source":"iana"},"video/celb":{"source":"iana"},"video/dv":{"source":"iana"},"video/encaprtp":{"source":"iana"},"video/ffv1":{"source":"iana"},"video/flexfec":{"source":"iana"},"video/h261":{"source":"iana","extensions":["h261"]},"video/h263":{"source":"iana","extensions":["h263"]},"video/h263-1998":{"source":"iana"},"video/h263-2000":{"source":"iana"},"video/h264":{"source":"iana","extensions":["h264"]},"video/h264-rcdo":{"source":"iana"},"video/h264-svc":{"source":"iana"},"video/h265":{"source":"iana"},"video/iso.segment":{"source":"iana","extensions":["m4s"]},"video/jpeg":{"source":"iana","extensions":["jpgv"]},"video/jpeg2000":{"source":"iana"},"video/jpm":{"source":"apache","extensions":["jpm","jpgm"]},"video/mj2":{"source":"iana","extensions":["mj2","mjp2"]},"video/mp1s":{"source":"iana"},"video/mp2p":{"source":"iana"},"video/mp2t":{"source":"iana","extensions":["ts"]},"video/mp4":{"source":"iana","compressible":false,"extensions":["mp4","mp4v","mpg4"]},"video/mp4v-es":{"source":"iana"},"video/mpeg":{"source":"iana","compressible":false,"extensions":["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{"source":"iana"},"video/mpv":{"source":"iana"},"video/nv":{"source":"iana"},"video/ogg":{"source":"iana","compressible":false,"extensions":["ogv"]},"video/parityfec":{"source":"iana"},"video/pointer":{"source":"iana"},"video/quicktime":{"source":"iana","compressible":false,"extensions":["qt","mov"]},"video/raptorfec":{"source":"iana"},"video/raw":{"source":"iana"},"video/rtp-enc-aescm128":{"source":"iana"},"video/rtploopback":{"source":"iana"},"video/rtx":{"source":"iana"},"video/scip":{"source":"iana"},"video/smpte291":{"source":"iana"},"video/smpte292m":{"source":"iana"},"video/ulpfec":{"source":"iana"},"video/vc1":{"source":"iana"},"video/vc2":{"source":"iana"},"video/vnd.cctv":{"source":"iana"},"video/vnd.dece.hd":{"source":"iana","extensions":["uvh","uvvh"]},"video/vnd.dece.mobile":{"source":"iana","extensions":["uvm","uvvm"]},"video/vnd.dece.mp4":{"source":"iana"},"video/vnd.dece.pd":{"source":"iana","extensions":["uvp","uvvp"]},"video/vnd.dece.sd":{"source":"iana","extensions":["uvs","uvvs"]},"video/vnd.dece.video":{"source":"iana","extensions":["uvv","uvvv"]},"video/vnd.directv.mpeg":{"source":"iana"},"video/vnd.directv.mpeg-tts":{"source":"iana"},"video/vnd.dlna.mpeg-tts":{"source":"iana"},"video/vnd.dvb.file":{"source":"iana","extensions":["dvb"]},"video/vnd.fvt":{"source":"iana","extensions":["fvt"]},"video/vnd.hns.video":{"source":"iana"},"video/vnd.iptvforum.1dparityfec-1010":{"source":"iana"},"video/vnd.iptvforum.1dparityfec-2005":{"source":"iana"},"video/vnd.iptvforum.2dparityfec-1010":{"source":"iana"},"video/vnd.iptvforum.2dparityfec-2005":{"source":"iana"},"video/vnd.iptvforum.ttsavc":{"source":"iana"},"video/vnd.iptvforum.ttsmpeg2":{"source":"iana"},"video/vnd.motorola.video":{"source":"iana"},"video/vnd.motorola.videop":{"source":"iana"},"video/vnd.mpegurl":{"source":"iana","extensions":["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{"source":"iana","extensions":["pyv"]},"video/vnd.nokia.interleaved-multimedia":{"source":"iana"},"video/vnd.nokia.mp4vr":{"source":"iana"},"video/vnd.nokia.videovoip":{"source":"iana"},"video/vnd.objectvideo":{"source":"iana"},"video/vnd.radgamettools.bink":{"source":"iana"},"video/vnd.radgamettools.smacker":{"source":"iana"},"video/vnd.sealed.mpeg1":{"source":"iana"},"video/vnd.sealed.mpeg4":{"source":"iana"},"video/vnd.sealed.swf":{"source":"iana"},"video/vnd.sealedmedia.softseal.mov":{"source":"iana"},"video/vnd.uvvu.mp4":{"source":"iana","extensions":["uvu","uvvu"]},"video/vnd.vivo":{"source":"iana","extensions":["viv"]},"video/vnd.youtube.yt":{"source":"iana"},"video/vp8":{"source":"iana"},"video/webm":{"source":"apache","compressible":false,"extensions":["webm"]},"video/x-f4v":{"source":"apache","extensions":["f4v"]},"video/x-fli":{"source":"apache","extensions":["fli"]},"video/x-flv":{"source":"apache","compressible":false,"extensions":["flv"]},"video/x-m4v":{"source":"apache","extensions":["m4v"]},"video/x-matroska":{"source":"apache","compressible":false,"extensions":["mkv","mk3d","mks"]},"video/x-mng":{"source":"apache","extensions":["mng"]},"video/x-ms-asf":{"source":"apache","extensions":["asf","asx"]},"video/x-ms-vob":{"source":"apache","extensions":["vob"]},"video/x-ms-wm":{"source":"apache","extensions":["wm"]},"video/x-ms-wmv":{"source":"apache","compressible":false,"extensions":["wmv"]},"video/x-ms-wmx":{"source":"apache","extensions":["wmx"]},"video/x-ms-wvx":{"source":"apache","extensions":["wvx"]},"video/x-msvideo":{"source":"apache","extensions":["avi"]},"video/x-sgi-movie":{"source":"apache","extensions":["movie"]},"video/x-smv":{"source":"apache","extensions":["smv"]},"x-conference/x-cooltalk":{"source":"apache","extensions":["ice"]},"x-shader/x-fragment":{"compressible":true},"x-shader/x-vertex":{"compressible":true}};
|
|
39818
|
+
module.exports = {"application/1d-interleaved-parityfec":{"source":"iana"},"application/3gpdash-qoe-report+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/3gpp-ims+xml":{"source":"iana","compressible":true},"application/3gpphal+json":{"source":"iana","compressible":true},"application/3gpphalforms+json":{"source":"iana","compressible":true},"application/a2l":{"source":"iana"},"application/activemessage":{"source":"iana"},"application/activity+json":{"source":"iana","compressible":true},"application/alto-costmap+json":{"source":"iana","compressible":true},"application/alto-costmapfilter+json":{"source":"iana","compressible":true},"application/alto-directory+json":{"source":"iana","compressible":true},"application/alto-endpointcost+json":{"source":"iana","compressible":true},"application/alto-endpointcostparams+json":{"source":"iana","compressible":true},"application/alto-endpointprop+json":{"source":"iana","compressible":true},"application/alto-endpointpropparams+json":{"source":"iana","compressible":true},"application/alto-error+json":{"source":"iana","compressible":true},"application/alto-networkmap+json":{"source":"iana","compressible":true},"application/alto-networkmapfilter+json":{"source":"iana","compressible":true},"application/alto-updatestreamcontrol+json":{"source":"iana","compressible":true},"application/alto-updatestreamparams+json":{"source":"iana","compressible":true},"application/aml":{"source":"iana"},"application/andrew-inset":{"source":"iana","extensions":["ez"]},"application/applefile":{"source":"iana"},"application/applixware":{"source":"apache","extensions":["aw"]},"application/atf":{"source":"iana"},"application/atfx":{"source":"iana"},"application/atom+xml":{"source":"iana","compressible":true,"extensions":["atom"]},"application/atomcat+xml":{"source":"iana","compressible":true,"extensions":["atomcat"]},"application/atomdeleted+xml":{"source":"iana","compressible":true,"extensions":["atomdeleted"]},"application/atomicmail":{"source":"iana"},"application/atomsvc+xml":{"source":"iana","compressible":true,"extensions":["atomsvc"]},"application/atsc-dwd+xml":{"source":"iana","compressible":true,"extensions":["dwd"]},"application/atsc-dynamic-event-message":{"source":"iana"},"application/atsc-held+xml":{"source":"iana","compressible":true,"extensions":["held"]},"application/atsc-rdt+json":{"source":"iana","compressible":true},"application/atsc-rsat+xml":{"source":"iana","compressible":true,"extensions":["rsat"]},"application/atxml":{"source":"iana"},"application/auth-policy+xml":{"source":"iana","compressible":true},"application/bacnet-xdd+zip":{"source":"iana","compressible":false},"application/batch-smtp":{"source":"iana"},"application/bdoc":{"compressible":false,"extensions":["bdoc"]},"application/beep+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/calendar+json":{"source":"iana","compressible":true},"application/calendar+xml":{"source":"iana","compressible":true,"extensions":["xcs"]},"application/call-completion":{"source":"iana"},"application/cals-1840":{"source":"iana"},"application/captive+json":{"source":"iana","compressible":true},"application/cbor":{"source":"iana"},"application/cbor-seq":{"source":"iana"},"application/cccex":{"source":"iana"},"application/ccmp+xml":{"source":"iana","compressible":true},"application/ccxml+xml":{"source":"iana","compressible":true,"extensions":["ccxml"]},"application/cdfx+xml":{"source":"iana","compressible":true,"extensions":["cdfx"]},"application/cdmi-capability":{"source":"iana","extensions":["cdmia"]},"application/cdmi-container":{"source":"iana","extensions":["cdmic"]},"application/cdmi-domain":{"source":"iana","extensions":["cdmid"]},"application/cdmi-object":{"source":"iana","extensions":["cdmio"]},"application/cdmi-queue":{"source":"iana","extensions":["cdmiq"]},"application/cdni":{"source":"iana"},"application/cea":{"source":"iana"},"application/cea-2018+xml":{"source":"iana","compressible":true},"application/cellml+xml":{"source":"iana","compressible":true},"application/cfw":{"source":"iana"},"application/clr":{"source":"iana"},"application/clue+xml":{"source":"iana","compressible":true},"application/clue_info+xml":{"source":"iana","compressible":true},"application/cms":{"source":"iana"},"application/cnrp+xml":{"source":"iana","compressible":true},"application/coap-group+json":{"source":"iana","compressible":true},"application/coap-payload":{"source":"iana"},"application/commonground":{"source":"iana"},"application/conference-info+xml":{"source":"iana","compressible":true},"application/cose":{"source":"iana"},"application/cose-key":{"source":"iana"},"application/cose-key-set":{"source":"iana"},"application/cpl+xml":{"source":"iana","compressible":true},"application/csrattrs":{"source":"iana"},"application/csta+xml":{"source":"iana","compressible":true},"application/cstadata+xml":{"source":"iana","compressible":true},"application/csvm+json":{"source":"iana","compressible":true},"application/cu-seeme":{"source":"apache","extensions":["cu"]},"application/cwt":{"source":"iana"},"application/cybercash":{"source":"iana"},"application/dart":{"compressible":true},"application/dash+xml":{"source":"iana","compressible":true,"extensions":["mpd"]},"application/dashdelta":{"source":"iana"},"application/davmount+xml":{"source":"iana","compressible":true,"extensions":["davmount"]},"application/dca-rft":{"source":"iana"},"application/dcd":{"source":"iana"},"application/dec-dx":{"source":"iana"},"application/dialog-info+xml":{"source":"iana","compressible":true},"application/dicom":{"source":"iana"},"application/dicom+json":{"source":"iana","compressible":true},"application/dicom+xml":{"source":"iana","compressible":true},"application/dii":{"source":"iana"},"application/dit":{"source":"iana"},"application/dns":{"source":"iana"},"application/dns+json":{"source":"iana","compressible":true},"application/dns-message":{"source":"iana"},"application/docbook+xml":{"source":"apache","compressible":true,"extensions":["dbk"]},"application/dots+cbor":{"source":"iana"},"application/dskpp+xml":{"source":"iana","compressible":true},"application/dssc+der":{"source":"iana","extensions":["dssc"]},"application/dssc+xml":{"source":"iana","compressible":true,"extensions":["xdssc"]},"application/dvcs":{"source":"iana"},"application/ecmascript":{"source":"iana","compressible":true,"extensions":["es","ecma"]},"application/edi-consent":{"source":"iana"},"application/edi-x12":{"source":"iana","compressible":false},"application/edifact":{"source":"iana","compressible":false},"application/efi":{"source":"iana"},"application/elm+json":{"source":"iana","charset":"UTF-8","compressible":true},"application/elm+xml":{"source":"iana","compressible":true},"application/emergencycalldata.cap+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/emergencycalldata.comment+xml":{"source":"iana","compressible":true},"application/emergencycalldata.control+xml":{"source":"iana","compressible":true},"application/emergencycalldata.deviceinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.ecall.msd":{"source":"iana"},"application/emergencycalldata.providerinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.serviceinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.subscriberinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.veds+xml":{"source":"iana","compressible":true},"application/emma+xml":{"source":"iana","compressible":true,"extensions":["emma"]},"application/emotionml+xml":{"source":"iana","compressible":true,"extensions":["emotionml"]},"application/encaprtp":{"source":"iana"},"application/epp+xml":{"source":"iana","compressible":true},"application/epub+zip":{"source":"iana","compressible":false,"extensions":["epub"]},"application/eshop":{"source":"iana"},"application/exi":{"source":"iana","extensions":["exi"]},"application/expect-ct-report+json":{"source":"iana","compressible":true},"application/fastinfoset":{"source":"iana"},"application/fastsoap":{"source":"iana"},"application/fdt+xml":{"source":"iana","compressible":true,"extensions":["fdt"]},"application/fhir+json":{"source":"iana","charset":"UTF-8","compressible":true},"application/fhir+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/fido.trusted-apps+json":{"compressible":true},"application/fits":{"source":"iana"},"application/flexfec":{"source":"iana"},"application/font-sfnt":{"source":"iana"},"application/font-tdpfr":{"source":"iana","extensions":["pfr"]},"application/font-woff":{"source":"iana","compressible":false},"application/framework-attributes+xml":{"source":"iana","compressible":true},"application/geo+json":{"source":"iana","compressible":true,"extensions":["geojson"]},"application/geo+json-seq":{"source":"iana"},"application/geopackage+sqlite3":{"source":"iana"},"application/geoxacml+xml":{"source":"iana","compressible":true},"application/gltf-buffer":{"source":"iana"},"application/gml+xml":{"source":"iana","compressible":true,"extensions":["gml"]},"application/gpx+xml":{"source":"apache","compressible":true,"extensions":["gpx"]},"application/gxf":{"source":"apache","extensions":["gxf"]},"application/gzip":{"source":"iana","compressible":false,"extensions":["gz"]},"application/h224":{"source":"iana"},"application/held+xml":{"source":"iana","compressible":true},"application/hjson":{"extensions":["hjson"]},"application/http":{"source":"iana"},"application/hyperstudio":{"source":"iana","extensions":["stk"]},"application/ibe-key-request+xml":{"source":"iana","compressible":true},"application/ibe-pkg-reply+xml":{"source":"iana","compressible":true},"application/ibe-pp-data":{"source":"iana"},"application/iges":{"source":"iana"},"application/im-iscomposing+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/index":{"source":"iana"},"application/index.cmd":{"source":"iana"},"application/index.obj":{"source":"iana"},"application/index.response":{"source":"iana"},"application/index.vnd":{"source":"iana"},"application/inkml+xml":{"source":"iana","compressible":true,"extensions":["ink","inkml"]},"application/iotp":{"source":"iana"},"application/ipfix":{"source":"iana","extensions":["ipfix"]},"application/ipp":{"source":"iana"},"application/isup":{"source":"iana"},"application/its+xml":{"source":"iana","compressible":true,"extensions":["its"]},"application/java-archive":{"source":"apache","compressible":false,"extensions":["jar","war","ear"]},"application/java-serialized-object":{"source":"apache","compressible":false,"extensions":["ser"]},"application/java-vm":{"source":"apache","compressible":false,"extensions":["class"]},"application/javascript":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["js","mjs"]},"application/jf2feed+json":{"source":"iana","compressible":true},"application/jose":{"source":"iana"},"application/jose+json":{"source":"iana","compressible":true},"application/jrd+json":{"source":"iana","compressible":true},"application/jscalendar+json":{"source":"iana","compressible":true},"application/json":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["json","map"]},"application/json-patch+json":{"source":"iana","compressible":true},"application/json-seq":{"source":"iana"},"application/json5":{"extensions":["json5"]},"application/jsonml+json":{"source":"apache","compressible":true,"extensions":["jsonml"]},"application/jwk+json":{"source":"iana","compressible":true},"application/jwk-set+json":{"source":"iana","compressible":true},"application/jwt":{"source":"iana"},"application/kpml-request+xml":{"source":"iana","compressible":true},"application/kpml-response+xml":{"source":"iana","compressible":true},"application/ld+json":{"source":"iana","compressible":true,"extensions":["jsonld"]},"application/lgr+xml":{"source":"iana","compressible":true,"extensions":["lgr"]},"application/link-format":{"source":"iana"},"application/load-control+xml":{"source":"iana","compressible":true},"application/lost+xml":{"source":"iana","compressible":true,"extensions":["lostxml"]},"application/lostsync+xml":{"source":"iana","compressible":true},"application/lpf+zip":{"source":"iana","compressible":false},"application/lxf":{"source":"iana"},"application/mac-binhex40":{"source":"iana","extensions":["hqx"]},"application/mac-compactpro":{"source":"apache","extensions":["cpt"]},"application/macwriteii":{"source":"iana"},"application/mads+xml":{"source":"iana","compressible":true,"extensions":["mads"]},"application/manifest+json":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["webmanifest"]},"application/marc":{"source":"iana","extensions":["mrc"]},"application/marcxml+xml":{"source":"iana","compressible":true,"extensions":["mrcx"]},"application/mathematica":{"source":"iana","extensions":["ma","nb","mb"]},"application/mathml+xml":{"source":"iana","compressible":true,"extensions":["mathml"]},"application/mathml-content+xml":{"source":"iana","compressible":true},"application/mathml-presentation+xml":{"source":"iana","compressible":true},"application/mbms-associated-procedure-description+xml":{"source":"iana","compressible":true},"application/mbms-deregister+xml":{"source":"iana","compressible":true},"application/mbms-envelope+xml":{"source":"iana","compressible":true},"application/mbms-msk+xml":{"source":"iana","compressible":true},"application/mbms-msk-response+xml":{"source":"iana","compressible":true},"application/mbms-protection-description+xml":{"source":"iana","compressible":true},"application/mbms-reception-report+xml":{"source":"iana","compressible":true},"application/mbms-register+xml":{"source":"iana","compressible":true},"application/mbms-register-response+xml":{"source":"iana","compressible":true},"application/mbms-schedule+xml":{"source":"iana","compressible":true},"application/mbms-user-service-description+xml":{"source":"iana","compressible":true},"application/mbox":{"source":"iana","extensions":["mbox"]},"application/media-policy-dataset+xml":{"source":"iana","compressible":true},"application/media_control+xml":{"source":"iana","compressible":true},"application/mediaservercontrol+xml":{"source":"iana","compressible":true,"extensions":["mscml"]},"application/merge-patch+json":{"source":"iana","compressible":true},"application/metalink+xml":{"source":"apache","compressible":true,"extensions":["metalink"]},"application/metalink4+xml":{"source":"iana","compressible":true,"extensions":["meta4"]},"application/mets+xml":{"source":"iana","compressible":true,"extensions":["mets"]},"application/mf4":{"source":"iana"},"application/mikey":{"source":"iana"},"application/mipc":{"source":"iana"},"application/missing-blocks+cbor-seq":{"source":"iana"},"application/mmt-aei+xml":{"source":"iana","compressible":true,"extensions":["maei"]},"application/mmt-usd+xml":{"source":"iana","compressible":true,"extensions":["musd"]},"application/mods+xml":{"source":"iana","compressible":true,"extensions":["mods"]},"application/moss-keys":{"source":"iana"},"application/moss-signature":{"source":"iana"},"application/mosskey-data":{"source":"iana"},"application/mosskey-request":{"source":"iana"},"application/mp21":{"source":"iana","extensions":["m21","mp21"]},"application/mp4":{"source":"iana","extensions":["mp4s","m4p"]},"application/mpeg4-generic":{"source":"iana"},"application/mpeg4-iod":{"source":"iana"},"application/mpeg4-iod-xmt":{"source":"iana"},"application/mrb-consumer+xml":{"source":"iana","compressible":true},"application/mrb-publish+xml":{"source":"iana","compressible":true},"application/msc-ivr+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/msc-mixer+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/msword":{"source":"iana","compressible":false,"extensions":["doc","dot"]},"application/mud+json":{"source":"iana","compressible":true},"application/multipart-core":{"source":"iana"},"application/mxf":{"source":"iana","extensions":["mxf"]},"application/n-quads":{"source":"iana","extensions":["nq"]},"application/n-triples":{"source":"iana","extensions":["nt"]},"application/nasdata":{"source":"iana"},"application/news-checkgroups":{"source":"iana","charset":"US-ASCII"},"application/news-groupinfo":{"source":"iana","charset":"US-ASCII"},"application/news-transmission":{"source":"iana"},"application/nlsml+xml":{"source":"iana","compressible":true},"application/node":{"source":"iana","extensions":["cjs"]},"application/nss":{"source":"iana"},"application/oauth-authz-req+jwt":{"source":"iana"},"application/ocsp-request":{"source":"iana"},"application/ocsp-response":{"source":"iana"},"application/octet-stream":{"source":"iana","compressible":false,"extensions":["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{"source":"iana","extensions":["oda"]},"application/odm+xml":{"source":"iana","compressible":true},"application/odx":{"source":"iana"},"application/oebps-package+xml":{"source":"iana","compressible":true,"extensions":["opf"]},"application/ogg":{"source":"iana","compressible":false,"extensions":["ogx"]},"application/omdoc+xml":{"source":"apache","compressible":true,"extensions":["omdoc"]},"application/onenote":{"source":"apache","extensions":["onetoc","onetoc2","onetmp","onepkg"]},"application/opc-nodeset+xml":{"source":"iana","compressible":true},"application/oscore":{"source":"iana"},"application/oxps":{"source":"iana","extensions":["oxps"]},"application/p21+zip":{"source":"iana","compressible":false},"application/p2p-overlay+xml":{"source":"iana","compressible":true,"extensions":["relo"]},"application/parityfec":{"source":"iana"},"application/passport":{"source":"iana"},"application/patch-ops-error+xml":{"source":"iana","compressible":true,"extensions":["xer"]},"application/pdf":{"source":"iana","compressible":false,"extensions":["pdf"]},"application/pdx":{"source":"iana"},"application/pem-certificate-chain":{"source":"iana"},"application/pgp-encrypted":{"source":"iana","compressible":false,"extensions":["pgp"]},"application/pgp-keys":{"source":"iana"},"application/pgp-signature":{"source":"iana","extensions":["asc","sig"]},"application/pics-rules":{"source":"apache","extensions":["prf"]},"application/pidf+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/pidf-diff+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/pkcs10":{"source":"iana","extensions":["p10"]},"application/pkcs12":{"source":"iana"},"application/pkcs7-mime":{"source":"iana","extensions":["p7m","p7c"]},"application/pkcs7-signature":{"source":"iana","extensions":["p7s"]},"application/pkcs8":{"source":"iana","extensions":["p8"]},"application/pkcs8-encrypted":{"source":"iana"},"application/pkix-attr-cert":{"source":"iana","extensions":["ac"]},"application/pkix-cert":{"source":"iana","extensions":["cer"]},"application/pkix-crl":{"source":"iana","extensions":["crl"]},"application/pkix-pkipath":{"source":"iana","extensions":["pkipath"]},"application/pkixcmp":{"source":"iana","extensions":["pki"]},"application/pls+xml":{"source":"iana","compressible":true,"extensions":["pls"]},"application/poc-settings+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/postscript":{"source":"iana","compressible":true,"extensions":["ai","eps","ps"]},"application/ppsp-tracker+json":{"source":"iana","compressible":true},"application/problem+json":{"source":"iana","compressible":true},"application/problem+xml":{"source":"iana","compressible":true},"application/provenance+xml":{"source":"iana","compressible":true,"extensions":["provx"]},"application/prs.alvestrand.titrax-sheet":{"source":"iana"},"application/prs.cww":{"source":"iana","extensions":["cww"]},"application/prs.cyn":{"source":"iana","charset":"7-BIT"},"application/prs.hpub+zip":{"source":"iana","compressible":false},"application/prs.nprend":{"source":"iana"},"application/prs.plucker":{"source":"iana"},"application/prs.rdf-xml-crypt":{"source":"iana"},"application/prs.xsf+xml":{"source":"iana","compressible":true},"application/pskc+xml":{"source":"iana","compressible":true,"extensions":["pskcxml"]},"application/pvd+json":{"source":"iana","compressible":true},"application/qsig":{"source":"iana"},"application/raml+yaml":{"compressible":true,"extensions":["raml"]},"application/raptorfec":{"source":"iana"},"application/rdap+json":{"source":"iana","compressible":true},"application/rdf+xml":{"source":"iana","compressible":true,"extensions":["rdf","owl"]},"application/reginfo+xml":{"source":"iana","compressible":true,"extensions":["rif"]},"application/relax-ng-compact-syntax":{"source":"iana","extensions":["rnc"]},"application/remote-printing":{"source":"iana"},"application/reputon+json":{"source":"iana","compressible":true},"application/resource-lists+xml":{"source":"iana","compressible":true,"extensions":["rl"]},"application/resource-lists-diff+xml":{"source":"iana","compressible":true,"extensions":["rld"]},"application/rfc+xml":{"source":"iana","compressible":true},"application/riscos":{"source":"iana"},"application/rlmi+xml":{"source":"iana","compressible":true},"application/rls-services+xml":{"source":"iana","compressible":true,"extensions":["rs"]},"application/route-apd+xml":{"source":"iana","compressible":true,"extensions":["rapd"]},"application/route-s-tsid+xml":{"source":"iana","compressible":true,"extensions":["sls"]},"application/route-usd+xml":{"source":"iana","compressible":true,"extensions":["rusd"]},"application/rpki-ghostbusters":{"source":"iana","extensions":["gbr"]},"application/rpki-manifest":{"source":"iana","extensions":["mft"]},"application/rpki-publication":{"source":"iana"},"application/rpki-roa":{"source":"iana","extensions":["roa"]},"application/rpki-updown":{"source":"iana"},"application/rsd+xml":{"source":"apache","compressible":true,"extensions":["rsd"]},"application/rss+xml":{"source":"apache","compressible":true,"extensions":["rss"]},"application/rtf":{"source":"iana","compressible":true,"extensions":["rtf"]},"application/rtploopback":{"source":"iana"},"application/rtx":{"source":"iana"},"application/samlassertion+xml":{"source":"iana","compressible":true},"application/samlmetadata+xml":{"source":"iana","compressible":true},"application/sarif+json":{"source":"iana","compressible":true},"application/sarif-external-properties+json":{"source":"iana","compressible":true},"application/sbe":{"source":"iana"},"application/sbml+xml":{"source":"iana","compressible":true,"extensions":["sbml"]},"application/scaip+xml":{"source":"iana","compressible":true},"application/scim+json":{"source":"iana","compressible":true},"application/scvp-cv-request":{"source":"iana","extensions":["scq"]},"application/scvp-cv-response":{"source":"iana","extensions":["scs"]},"application/scvp-vp-request":{"source":"iana","extensions":["spq"]},"application/scvp-vp-response":{"source":"iana","extensions":["spp"]},"application/sdp":{"source":"iana","extensions":["sdp"]},"application/secevent+jwt":{"source":"iana"},"application/senml+cbor":{"source":"iana"},"application/senml+json":{"source":"iana","compressible":true},"application/senml+xml":{"source":"iana","compressible":true,"extensions":["senmlx"]},"application/senml-etch+cbor":{"source":"iana"},"application/senml-etch+json":{"source":"iana","compressible":true},"application/senml-exi":{"source":"iana"},"application/sensml+cbor":{"source":"iana"},"application/sensml+json":{"source":"iana","compressible":true},"application/sensml+xml":{"source":"iana","compressible":true,"extensions":["sensmlx"]},"application/sensml-exi":{"source":"iana"},"application/sep+xml":{"source":"iana","compressible":true},"application/sep-exi":{"source":"iana"},"application/session-info":{"source":"iana"},"application/set-payment":{"source":"iana"},"application/set-payment-initiation":{"source":"iana","extensions":["setpay"]},"application/set-registration":{"source":"iana"},"application/set-registration-initiation":{"source":"iana","extensions":["setreg"]},"application/sgml":{"source":"iana"},"application/sgml-open-catalog":{"source":"iana"},"application/shf+xml":{"source":"iana","compressible":true,"extensions":["shf"]},"application/sieve":{"source":"iana","extensions":["siv","sieve"]},"application/simple-filter+xml":{"source":"iana","compressible":true},"application/simple-message-summary":{"source":"iana"},"application/simplesymbolcontainer":{"source":"iana"},"application/sipc":{"source":"iana"},"application/slate":{"source":"iana"},"application/smil":{"source":"iana"},"application/smil+xml":{"source":"iana","compressible":true,"extensions":["smi","smil"]},"application/smpte336m":{"source":"iana"},"application/soap+fastinfoset":{"source":"iana"},"application/soap+xml":{"source":"iana","compressible":true},"application/sparql-query":{"source":"iana","extensions":["rq"]},"application/sparql-results+xml":{"source":"iana","compressible":true,"extensions":["srx"]},"application/spirits-event+xml":{"source":"iana","compressible":true},"application/sql":{"source":"iana"},"application/srgs":{"source":"iana","extensions":["gram"]},"application/srgs+xml":{"source":"iana","compressible":true,"extensions":["grxml"]},"application/sru+xml":{"source":"iana","compressible":true,"extensions":["sru"]},"application/ssdl+xml":{"source":"apache","compressible":true,"extensions":["ssdl"]},"application/ssml+xml":{"source":"iana","compressible":true,"extensions":["ssml"]},"application/stix+json":{"source":"iana","compressible":true},"application/swid+xml":{"source":"iana","compressible":true,"extensions":["swidtag"]},"application/tamp-apex-update":{"source":"iana"},"application/tamp-apex-update-confirm":{"source":"iana"},"application/tamp-community-update":{"source":"iana"},"application/tamp-community-update-confirm":{"source":"iana"},"application/tamp-error":{"source":"iana"},"application/tamp-sequence-adjust":{"source":"iana"},"application/tamp-sequence-adjust-confirm":{"source":"iana"},"application/tamp-status-query":{"source":"iana"},"application/tamp-status-response":{"source":"iana"},"application/tamp-update":{"source":"iana"},"application/tamp-update-confirm":{"source":"iana"},"application/tar":{"compressible":true},"application/taxii+json":{"source":"iana","compressible":true},"application/td+json":{"source":"iana","compressible":true},"application/tei+xml":{"source":"iana","compressible":true,"extensions":["tei","teicorpus"]},"application/tetra_isi":{"source":"iana"},"application/thraud+xml":{"source":"iana","compressible":true,"extensions":["tfi"]},"application/timestamp-query":{"source":"iana"},"application/timestamp-reply":{"source":"iana"},"application/timestamped-data":{"source":"iana","extensions":["tsd"]},"application/tlsrpt+gzip":{"source":"iana"},"application/tlsrpt+json":{"source":"iana","compressible":true},"application/tnauthlist":{"source":"iana"},"application/toml":{"compressible":true,"extensions":["toml"]},"application/trickle-ice-sdpfrag":{"source":"iana"},"application/trig":{"source":"iana","extensions":["trig"]},"application/ttml+xml":{"source":"iana","compressible":true,"extensions":["ttml"]},"application/tve-trigger":{"source":"iana"},"application/tzif":{"source":"iana"},"application/tzif-leap":{"source":"iana"},"application/ubjson":{"compressible":false,"extensions":["ubj"]},"application/ulpfec":{"source":"iana"},"application/urc-grpsheet+xml":{"source":"iana","compressible":true},"application/urc-ressheet+xml":{"source":"iana","compressible":true,"extensions":["rsheet"]},"application/urc-targetdesc+xml":{"source":"iana","compressible":true,"extensions":["td"]},"application/urc-uisocketdesc+xml":{"source":"iana","compressible":true},"application/vcard+json":{"source":"iana","compressible":true},"application/vcard+xml":{"source":"iana","compressible":true},"application/vemmi":{"source":"iana"},"application/vividence.scriptfile":{"source":"apache"},"application/vnd.1000minds.decision-model+xml":{"source":"iana","compressible":true,"extensions":["1km"]},"application/vnd.3gpp-prose+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-prose-pc3ch+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-v2x-local-service-information":{"source":"iana"},"application/vnd.3gpp.5gnas":{"source":"iana"},"application/vnd.3gpp.access-transfer-events+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.bsf+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.gmop+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.gtpc":{"source":"iana"},"application/vnd.3gpp.interworking-data":{"source":"iana"},"application/vnd.3gpp.lpp":{"source":"iana"},"application/vnd.3gpp.mc-signalling-ear":{"source":"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-payload":{"source":"iana"},"application/vnd.3gpp.mcdata-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-signalling":{"source":"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-floor-request+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-location-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-signed+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-ue-init-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-affiliation-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-location-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-transmission-request+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mid-call+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.ngap":{"source":"iana"},"application/vnd.3gpp.pfcp":{"source":"iana"},"application/vnd.3gpp.pic-bw-large":{"source":"iana","extensions":["plb"]},"application/vnd.3gpp.pic-bw-small":{"source":"iana","extensions":["psb"]},"application/vnd.3gpp.pic-bw-var":{"source":"iana","extensions":["pvb"]},"application/vnd.3gpp.s1ap":{"source":"iana"},"application/vnd.3gpp.sms":{"source":"iana"},"application/vnd.3gpp.sms+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.srvcc-ext+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.srvcc-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.state-and-event-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.ussd+xml":{"source":"iana","compressible":true},"application/vnd.3gpp2.bcmcsinfo+xml":{"source":"iana","compressible":true},"application/vnd.3gpp2.sms":{"source":"iana"},"application/vnd.3gpp2.tcap":{"source":"iana","extensions":["tcap"]},"application/vnd.3lightssoftware.imagescal":{"source":"iana"},"application/vnd.3m.post-it-notes":{"source":"iana","extensions":["pwn"]},"application/vnd.accpac.simply.aso":{"source":"iana","extensions":["aso"]},"application/vnd.accpac.simply.imp":{"source":"iana","extensions":["imp"]},"application/vnd.acucobol":{"source":"iana","extensions":["acu"]},"application/vnd.acucorp":{"source":"iana","extensions":["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{"source":"apache","compressible":false,"extensions":["air"]},"application/vnd.adobe.flash.movie":{"source":"iana"},"application/vnd.adobe.formscentral.fcdt":{"source":"iana","extensions":["fcdt"]},"application/vnd.adobe.fxp":{"source":"iana","extensions":["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{"source":"iana"},"application/vnd.adobe.xdp+xml":{"source":"iana","compressible":true,"extensions":["xdp"]},"application/vnd.adobe.xfdf":{"source":"iana","extensions":["xfdf"]},"application/vnd.aether.imp":{"source":"iana"},"application/vnd.afpc.afplinedata":{"source":"iana"},"application/vnd.afpc.afplinedata-pagedef":{"source":"iana"},"application/vnd.afpc.cmoca-cmresource":{"source":"iana"},"application/vnd.afpc.foca-charset":{"source":"iana"},"application/vnd.afpc.foca-codedfont":{"source":"iana"},"application/vnd.afpc.foca-codepage":{"source":"iana"},"application/vnd.afpc.modca":{"source":"iana"},"application/vnd.afpc.modca-cmtable":{"source":"iana"},"application/vnd.afpc.modca-formdef":{"source":"iana"},"application/vnd.afpc.modca-mediummap":{"source":"iana"},"application/vnd.afpc.modca-objectcontainer":{"source":"iana"},"application/vnd.afpc.modca-overlay":{"source":"iana"},"application/vnd.afpc.modca-pagesegment":{"source":"iana"},"application/vnd.ah-barcode":{"source":"iana"},"application/vnd.ahead.space":{"source":"iana","extensions":["ahead"]},"application/vnd.airzip.filesecure.azf":{"source":"iana","extensions":["azf"]},"application/vnd.airzip.filesecure.azs":{"source":"iana","extensions":["azs"]},"application/vnd.amadeus+json":{"source":"iana","compressible":true},"application/vnd.amazon.ebook":{"source":"apache","extensions":["azw"]},"application/vnd.amazon.mobi8-ebook":{"source":"iana"},"application/vnd.americandynamics.acc":{"source":"iana","extensions":["acc"]},"application/vnd.amiga.ami":{"source":"iana","extensions":["ami"]},"application/vnd.amundsen.maze+xml":{"source":"iana","compressible":true},"application/vnd.android.ota":{"source":"iana"},"application/vnd.android.package-archive":{"source":"apache","compressible":false,"extensions":["apk"]},"application/vnd.anki":{"source":"iana"},"application/vnd.anser-web-certificate-issue-initiation":{"source":"iana","extensions":["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{"source":"apache","extensions":["fti"]},"application/vnd.antix.game-component":{"source":"iana","extensions":["atx"]},"application/vnd.apache.arrow.file":{"source":"iana"},"application/vnd.apache.arrow.stream":{"source":"iana"},"application/vnd.apache.thrift.binary":{"source":"iana"},"application/vnd.apache.thrift.compact":{"source":"iana"},"application/vnd.apache.thrift.json":{"source":"iana"},"application/vnd.api+json":{"source":"iana","compressible":true},"application/vnd.aplextor.warrp+json":{"source":"iana","compressible":true},"application/vnd.apothekende.reservation+json":{"source":"iana","compressible":true},"application/vnd.apple.installer+xml":{"source":"iana","compressible":true,"extensions":["mpkg"]},"application/vnd.apple.keynote":{"source":"iana","extensions":["key"]},"application/vnd.apple.mpegurl":{"source":"iana","extensions":["m3u8"]},"application/vnd.apple.numbers":{"source":"iana","extensions":["numbers"]},"application/vnd.apple.pages":{"source":"iana","extensions":["pages"]},"application/vnd.apple.pkpass":{"compressible":false,"extensions":["pkpass"]},"application/vnd.arastra.swi":{"source":"iana"},"application/vnd.aristanetworks.swi":{"source":"iana","extensions":["swi"]},"application/vnd.artisan+json":{"source":"iana","compressible":true},"application/vnd.artsquare":{"source":"iana"},"application/vnd.astraea-software.iota":{"source":"iana","extensions":["iota"]},"application/vnd.audiograph":{"source":"iana","extensions":["aep"]},"application/vnd.autopackage":{"source":"iana"},"application/vnd.avalon+json":{"source":"iana","compressible":true},"application/vnd.avistar+xml":{"source":"iana","compressible":true},"application/vnd.balsamiq.bmml+xml":{"source":"iana","compressible":true,"extensions":["bmml"]},"application/vnd.balsamiq.bmpr":{"source":"iana"},"application/vnd.banana-accounting":{"source":"iana"},"application/vnd.bbf.usp.error":{"source":"iana"},"application/vnd.bbf.usp.msg":{"source":"iana"},"application/vnd.bbf.usp.msg+json":{"source":"iana","compressible":true},"application/vnd.bekitzur-stech+json":{"source":"iana","compressible":true},"application/vnd.bint.med-content":{"source":"iana"},"application/vnd.biopax.rdf+xml":{"source":"iana","compressible":true},"application/vnd.blink-idb-value-wrapper":{"source":"iana"},"application/vnd.blueice.multipass":{"source":"iana","extensions":["mpm"]},"application/vnd.bluetooth.ep.oob":{"source":"iana"},"application/vnd.bluetooth.le.oob":{"source":"iana"},"application/vnd.bmi":{"source":"iana","extensions":["bmi"]},"application/vnd.bpf":{"source":"iana"},"application/vnd.bpf3":{"source":"iana"},"application/vnd.businessobjects":{"source":"iana","extensions":["rep"]},"application/vnd.byu.uapi+json":{"source":"iana","compressible":true},"application/vnd.cab-jscript":{"source":"iana"},"application/vnd.canon-cpdl":{"source":"iana"},"application/vnd.canon-lips":{"source":"iana"},"application/vnd.capasystems-pg+json":{"source":"iana","compressible":true},"application/vnd.cendio.thinlinc.clientconf":{"source":"iana"},"application/vnd.century-systems.tcp_stream":{"source":"iana"},"application/vnd.chemdraw+xml":{"source":"iana","compressible":true,"extensions":["cdxml"]},"application/vnd.chess-pgn":{"source":"iana"},"application/vnd.chipnuts.karaoke-mmd":{"source":"iana","extensions":["mmd"]},"application/vnd.ciedi":{"source":"iana"},"application/vnd.cinderella":{"source":"iana","extensions":["cdy"]},"application/vnd.cirpack.isdn-ext":{"source":"iana"},"application/vnd.citationstyles.style+xml":{"source":"iana","compressible":true,"extensions":["csl"]},"application/vnd.claymore":{"source":"iana","extensions":["cla"]},"application/vnd.cloanto.rp9":{"source":"iana","extensions":["rp9"]},"application/vnd.clonk.c4group":{"source":"iana","extensions":["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{"source":"iana","extensions":["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{"source":"iana","extensions":["c11amz"]},"application/vnd.coffeescript":{"source":"iana"},"application/vnd.collabio.xodocuments.document":{"source":"iana"},"application/vnd.collabio.xodocuments.document-template":{"source":"iana"},"application/vnd.collabio.xodocuments.presentation":{"source":"iana"},"application/vnd.collabio.xodocuments.presentation-template":{"source":"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{"source":"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{"source":"iana"},"application/vnd.collection+json":{"source":"iana","compressible":true},"application/vnd.collection.doc+json":{"source":"iana","compressible":true},"application/vnd.collection.next+json":{"source":"iana","compressible":true},"application/vnd.comicbook+zip":{"source":"iana","compressible":false},"application/vnd.comicbook-rar":{"source":"iana"},"application/vnd.commerce-battelle":{"source":"iana"},"application/vnd.commonspace":{"source":"iana","extensions":["csp"]},"application/vnd.contact.cmsg":{"source":"iana","extensions":["cdbcmsg"]},"application/vnd.coreos.ignition+json":{"source":"iana","compressible":true},"application/vnd.cosmocaller":{"source":"iana","extensions":["cmc"]},"application/vnd.crick.clicker":{"source":"iana","extensions":["clkx"]},"application/vnd.crick.clicker.keyboard":{"source":"iana","extensions":["clkk"]},"application/vnd.crick.clicker.palette":{"source":"iana","extensions":["clkp"]},"application/vnd.crick.clicker.template":{"source":"iana","extensions":["clkt"]},"application/vnd.crick.clicker.wordbank":{"source":"iana","extensions":["clkw"]},"application/vnd.criticaltools.wbs+xml":{"source":"iana","compressible":true,"extensions":["wbs"]},"application/vnd.cryptii.pipe+json":{"source":"iana","compressible":true},"application/vnd.crypto-shade-file":{"source":"iana"},"application/vnd.cryptomator.encrypted":{"source":"iana"},"application/vnd.cryptomator.vault":{"source":"iana"},"application/vnd.ctc-posml":{"source":"iana","extensions":["pml"]},"application/vnd.ctct.ws+xml":{"source":"iana","compressible":true},"application/vnd.cups-pdf":{"source":"iana"},"application/vnd.cups-postscript":{"source":"iana"},"application/vnd.cups-ppd":{"source":"iana","extensions":["ppd"]},"application/vnd.cups-raster":{"source":"iana"},"application/vnd.cups-raw":{"source":"iana"},"application/vnd.curl":{"source":"iana"},"application/vnd.curl.car":{"source":"apache","extensions":["car"]},"application/vnd.curl.pcurl":{"source":"apache","extensions":["pcurl"]},"application/vnd.cyan.dean.root+xml":{"source":"iana","compressible":true},"application/vnd.cybank":{"source":"iana"},"application/vnd.cyclonedx+json":{"source":"iana","compressible":true},"application/vnd.cyclonedx+xml":{"source":"iana","compressible":true},"application/vnd.d2l.coursepackage1p0+zip":{"source":"iana","compressible":false},"application/vnd.d3m-dataset":{"source":"iana"},"application/vnd.d3m-problem":{"source":"iana"},"application/vnd.dart":{"source":"iana","compressible":true,"extensions":["dart"]},"application/vnd.data-vision.rdz":{"source":"iana","extensions":["rdz"]},"application/vnd.datapackage+json":{"source":"iana","compressible":true},"application/vnd.dataresource+json":{"source":"iana","compressible":true},"application/vnd.dbf":{"source":"iana","extensions":["dbf"]},"application/vnd.debian.binary-package":{"source":"iana"},"application/vnd.dece.data":{"source":"iana","extensions":["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{"source":"iana","compressible":true,"extensions":["uvt","uvvt"]},"application/vnd.dece.unspecified":{"source":"iana","extensions":["uvx","uvvx"]},"application/vnd.dece.zip":{"source":"iana","extensions":["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{"source":"iana","extensions":["fe_launch"]},"application/vnd.desmume.movie":{"source":"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{"source":"iana"},"application/vnd.dm.delegation+xml":{"source":"iana","compressible":true},"application/vnd.dna":{"source":"iana","extensions":["dna"]},"application/vnd.document+json":{"source":"iana","compressible":true},"application/vnd.dolby.mlp":{"source":"apache","extensions":["mlp"]},"application/vnd.dolby.mobile.1":{"source":"iana"},"application/vnd.dolby.mobile.2":{"source":"iana"},"application/vnd.doremir.scorecloud-binary-document":{"source":"iana"},"application/vnd.dpgraph":{"source":"iana","extensions":["dpg"]},"application/vnd.dreamfactory":{"source":"iana","extensions":["dfac"]},"application/vnd.drive+json":{"source":"iana","compressible":true},"application/vnd.ds-keypoint":{"source":"apache","extensions":["kpxx"]},"application/vnd.dtg.local":{"source":"iana"},"application/vnd.dtg.local.flash":{"source":"iana"},"application/vnd.dtg.local.html":{"source":"iana"},"application/vnd.dvb.ait":{"source":"iana","extensions":["ait"]},"application/vnd.dvb.dvbisl+xml":{"source":"iana","compressible":true},"application/vnd.dvb.dvbj":{"source":"iana"},"application/vnd.dvb.esgcontainer":{"source":"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{"source":"iana"},"application/vnd.dvb.ipdcesgaccess":{"source":"iana"},"application/vnd.dvb.ipdcesgaccess2":{"source":"iana"},"application/vnd.dvb.ipdcesgpdd":{"source":"iana"},"application/vnd.dvb.ipdcroaming":{"source":"iana"},"application/vnd.dvb.iptv.alfec-base":{"source":"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{"source":"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-container+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-generic+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-msglist+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-registration-request+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-registration-response+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-init+xml":{"source":"iana","compressible":true},"application/vnd.dvb.pfr":{"source":"iana"},"application/vnd.dvb.service":{"source":"iana","extensions":["svc"]},"application/vnd.dxr":{"source":"iana"},"application/vnd.dynageo":{"source":"iana","extensions":["geo"]},"application/vnd.dzr":{"source":"iana"},"application/vnd.easykaraoke.cdgdownload":{"source":"iana"},"application/vnd.ecdis-update":{"source":"iana"},"application/vnd.ecip.rlp":{"source":"iana"},"application/vnd.ecowin.chart":{"source":"iana","extensions":["mag"]},"application/vnd.ecowin.filerequest":{"source":"iana"},"application/vnd.ecowin.fileupdate":{"source":"iana"},"application/vnd.ecowin.series":{"source":"iana"},"application/vnd.ecowin.seriesrequest":{"source":"iana"},"application/vnd.ecowin.seriesupdate":{"source":"iana"},"application/vnd.efi.img":{"source":"iana"},"application/vnd.efi.iso":{"source":"iana"},"application/vnd.emclient.accessrequest+xml":{"source":"iana","compressible":true},"application/vnd.enliven":{"source":"iana","extensions":["nml"]},"application/vnd.enphase.envoy":{"source":"iana"},"application/vnd.eprints.data+xml":{"source":"iana","compressible":true},"application/vnd.epson.esf":{"source":"iana","extensions":["esf"]},"application/vnd.epson.msf":{"source":"iana","extensions":["msf"]},"application/vnd.epson.quickanime":{"source":"iana","extensions":["qam"]},"application/vnd.epson.salt":{"source":"iana","extensions":["slt"]},"application/vnd.epson.ssf":{"source":"iana","extensions":["ssf"]},"application/vnd.ericsson.quickcall":{"source":"iana"},"application/vnd.espass-espass+zip":{"source":"iana","compressible":false},"application/vnd.eszigno3+xml":{"source":"iana","compressible":true,"extensions":["es3","et3"]},"application/vnd.etsi.aoc+xml":{"source":"iana","compressible":true},"application/vnd.etsi.asic-e+zip":{"source":"iana","compressible":false},"application/vnd.etsi.asic-s+zip":{"source":"iana","compressible":false},"application/vnd.etsi.cug+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvcommand+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvdiscovery+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvprofile+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-bc+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-cod+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-npvr+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvservice+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsync+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvueprofile+xml":{"source":"iana","compressible":true},"application/vnd.etsi.mcid+xml":{"source":"iana","compressible":true},"application/vnd.etsi.mheg5":{"source":"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{"source":"iana","compressible":true},"application/vnd.etsi.pstn+xml":{"source":"iana","compressible":true},"application/vnd.etsi.sci+xml":{"source":"iana","compressible":true},"application/vnd.etsi.simservs+xml":{"source":"iana","compressible":true},"application/vnd.etsi.timestamp-token":{"source":"iana"},"application/vnd.etsi.tsl+xml":{"source":"iana","compressible":true},"application/vnd.etsi.tsl.der":{"source":"iana"},"application/vnd.eudora.data":{"source":"iana"},"application/vnd.evolv.ecig.profile":{"source":"iana"},"application/vnd.evolv.ecig.settings":{"source":"iana"},"application/vnd.evolv.ecig.theme":{"source":"iana"},"application/vnd.exstream-empower+zip":{"source":"iana","compressible":false},"application/vnd.exstream-package":{"source":"iana"},"application/vnd.ezpix-album":{"source":"iana","extensions":["ez2"]},"application/vnd.ezpix-package":{"source":"iana","extensions":["ez3"]},"application/vnd.f-secure.mobile":{"source":"iana"},"application/vnd.fastcopy-disk-image":{"source":"iana"},"application/vnd.fdf":{"source":"iana","extensions":["fdf"]},"application/vnd.fdsn.mseed":{"source":"iana","extensions":["mseed"]},"application/vnd.fdsn.seed":{"source":"iana","extensions":["seed","dataless"]},"application/vnd.ffsns":{"source":"iana"},"application/vnd.ficlab.flb+zip":{"source":"iana","compressible":false},"application/vnd.filmit.zfc":{"source":"iana"},"application/vnd.fints":{"source":"iana"},"application/vnd.firemonkeys.cloudcell":{"source":"iana"},"application/vnd.flographit":{"source":"iana","extensions":["gph"]},"application/vnd.fluxtime.clip":{"source":"iana","extensions":["ftc"]},"application/vnd.font-fontforge-sfd":{"source":"iana"},"application/vnd.framemaker":{"source":"iana","extensions":["fm","frame","maker","book"]},"application/vnd.frogans.fnc":{"source":"iana","extensions":["fnc"]},"application/vnd.frogans.ltf":{"source":"iana","extensions":["ltf"]},"application/vnd.fsc.weblaunch":{"source":"iana","extensions":["fsc"]},"application/vnd.fujifilm.fb.docuworks":{"source":"iana"},"application/vnd.fujifilm.fb.docuworks.binder":{"source":"iana"},"application/vnd.fujifilm.fb.docuworks.container":{"source":"iana"},"application/vnd.fujifilm.fb.jfi+xml":{"source":"iana","compressible":true},"application/vnd.fujitsu.oasys":{"source":"iana","extensions":["oas"]},"application/vnd.fujitsu.oasys2":{"source":"iana","extensions":["oa2"]},"application/vnd.fujitsu.oasys3":{"source":"iana","extensions":["oa3"]},"application/vnd.fujitsu.oasysgp":{"source":"iana","extensions":["fg5"]},"application/vnd.fujitsu.oasysprs":{"source":"iana","extensions":["bh2"]},"application/vnd.fujixerox.art-ex":{"source":"iana"},"application/vnd.fujixerox.art4":{"source":"iana"},"application/vnd.fujixerox.ddd":{"source":"iana","extensions":["ddd"]},"application/vnd.fujixerox.docuworks":{"source":"iana","extensions":["xdw"]},"application/vnd.fujixerox.docuworks.binder":{"source":"iana","extensions":["xbd"]},"application/vnd.fujixerox.docuworks.container":{"source":"iana"},"application/vnd.fujixerox.hbpl":{"source":"iana"},"application/vnd.fut-misnet":{"source":"iana"},"application/vnd.futoin+cbor":{"source":"iana"},"application/vnd.futoin+json":{"source":"iana","compressible":true},"application/vnd.fuzzysheet":{"source":"iana","extensions":["fzs"]},"application/vnd.genomatix.tuxedo":{"source":"iana","extensions":["txd"]},"application/vnd.gentics.grd+json":{"source":"iana","compressible":true},"application/vnd.geo+json":{"source":"iana","compressible":true},"application/vnd.geocube+xml":{"source":"iana","compressible":true},"application/vnd.geogebra.file":{"source":"iana","extensions":["ggb"]},"application/vnd.geogebra.slides":{"source":"iana"},"application/vnd.geogebra.tool":{"source":"iana","extensions":["ggt"]},"application/vnd.geometry-explorer":{"source":"iana","extensions":["gex","gre"]},"application/vnd.geonext":{"source":"iana","extensions":["gxt"]},"application/vnd.geoplan":{"source":"iana","extensions":["g2w"]},"application/vnd.geospace":{"source":"iana","extensions":["g3w"]},"application/vnd.gerber":{"source":"iana"},"application/vnd.globalplatform.card-content-mgt":{"source":"iana"},"application/vnd.globalplatform.card-content-mgt-response":{"source":"iana"},"application/vnd.gmx":{"source":"iana","extensions":["gmx"]},"application/vnd.google-apps.document":{"compressible":false,"extensions":["gdoc"]},"application/vnd.google-apps.presentation":{"compressible":false,"extensions":["gslides"]},"application/vnd.google-apps.spreadsheet":{"compressible":false,"extensions":["gsheet"]},"application/vnd.google-earth.kml+xml":{"source":"iana","compressible":true,"extensions":["kml"]},"application/vnd.google-earth.kmz":{"source":"iana","compressible":false,"extensions":["kmz"]},"application/vnd.gov.sk.e-form+xml":{"source":"iana","compressible":true},"application/vnd.gov.sk.e-form+zip":{"source":"iana","compressible":false},"application/vnd.gov.sk.xmldatacontainer+xml":{"source":"iana","compressible":true},"application/vnd.grafeq":{"source":"iana","extensions":["gqf","gqs"]},"application/vnd.gridmp":{"source":"iana"},"application/vnd.groove-account":{"source":"iana","extensions":["gac"]},"application/vnd.groove-help":{"source":"iana","extensions":["ghf"]},"application/vnd.groove-identity-message":{"source":"iana","extensions":["gim"]},"application/vnd.groove-injector":{"source":"iana","extensions":["grv"]},"application/vnd.groove-tool-message":{"source":"iana","extensions":["gtm"]},"application/vnd.groove-tool-template":{"source":"iana","extensions":["tpl"]},"application/vnd.groove-vcard":{"source":"iana","extensions":["vcg"]},"application/vnd.hal+json":{"source":"iana","compressible":true},"application/vnd.hal+xml":{"source":"iana","compressible":true,"extensions":["hal"]},"application/vnd.handheld-entertainment+xml":{"source":"iana","compressible":true,"extensions":["zmm"]},"application/vnd.hbci":{"source":"iana","extensions":["hbci"]},"application/vnd.hc+json":{"source":"iana","compressible":true},"application/vnd.hcl-bireports":{"source":"iana"},"application/vnd.hdt":{"source":"iana"},"application/vnd.heroku+json":{"source":"iana","compressible":true},"application/vnd.hhe.lesson-player":{"source":"iana","extensions":["les"]},"application/vnd.hp-hpgl":{"source":"iana","extensions":["hpgl"]},"application/vnd.hp-hpid":{"source":"iana","extensions":["hpid"]},"application/vnd.hp-hps":{"source":"iana","extensions":["hps"]},"application/vnd.hp-jlyt":{"source":"iana","extensions":["jlt"]},"application/vnd.hp-pcl":{"source":"iana","extensions":["pcl"]},"application/vnd.hp-pclxl":{"source":"iana","extensions":["pclxl"]},"application/vnd.httphone":{"source":"iana"},"application/vnd.hydrostatix.sof-data":{"source":"iana","extensions":["sfd-hdstx"]},"application/vnd.hyper+json":{"source":"iana","compressible":true},"application/vnd.hyper-item+json":{"source":"iana","compressible":true},"application/vnd.hyperdrive+json":{"source":"iana","compressible":true},"application/vnd.hzn-3d-crossword":{"source":"iana"},"application/vnd.ibm.afplinedata":{"source":"iana"},"application/vnd.ibm.electronic-media":{"source":"iana"},"application/vnd.ibm.minipay":{"source":"iana","extensions":["mpy"]},"application/vnd.ibm.modcap":{"source":"iana","extensions":["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{"source":"iana","extensions":["irm"]},"application/vnd.ibm.secure-container":{"source":"iana","extensions":["sc"]},"application/vnd.iccprofile":{"source":"iana","extensions":["icc","icm"]},"application/vnd.ieee.1905":{"source":"iana"},"application/vnd.igloader":{"source":"iana","extensions":["igl"]},"application/vnd.imagemeter.folder+zip":{"source":"iana","compressible":false},"application/vnd.imagemeter.image+zip":{"source":"iana","compressible":false},"application/vnd.immervision-ivp":{"source":"iana","extensions":["ivp"]},"application/vnd.immervision-ivu":{"source":"iana","extensions":["ivu"]},"application/vnd.ims.imsccv1p1":{"source":"iana"},"application/vnd.ims.imsccv1p2":{"source":"iana"},"application/vnd.ims.imsccv1p3":{"source":"iana"},"application/vnd.ims.lis.v2.result+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolproxy+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolproxy.id+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolsettings+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolsettings.simple+json":{"source":"iana","compressible":true},"application/vnd.informedcontrol.rms+xml":{"source":"iana","compressible":true},"application/vnd.informix-visionary":{"source":"iana"},"application/vnd.infotech.project":{"source":"iana"},"application/vnd.infotech.project+xml":{"source":"iana","compressible":true},"application/vnd.innopath.wamp.notification":{"source":"iana"},"application/vnd.insors.igm":{"source":"iana","extensions":["igm"]},"application/vnd.intercon.formnet":{"source":"iana","extensions":["xpw","xpx"]},"application/vnd.intergeo":{"source":"iana","extensions":["i2g"]},"application/vnd.intertrust.digibox":{"source":"iana"},"application/vnd.intertrust.nncp":{"source":"iana"},"application/vnd.intu.qbo":{"source":"iana","extensions":["qbo"]},"application/vnd.intu.qfx":{"source":"iana","extensions":["qfx"]},"application/vnd.iptc.g2.catalogitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.conceptitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.knowledgeitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.newsitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.newsmessage+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.packageitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.planningitem+xml":{"source":"iana","compressible":true},"application/vnd.ipunplugged.rcprofile":{"source":"iana","extensions":["rcprofile"]},"application/vnd.irepository.package+xml":{"source":"iana","compressible":true,"extensions":["irp"]},"application/vnd.is-xpr":{"source":"iana","extensions":["xpr"]},"application/vnd.isac.fcs":{"source":"iana","extensions":["fcs"]},"application/vnd.iso11783-10+zip":{"source":"iana","compressible":false},"application/vnd.jam":{"source":"iana","extensions":["jam"]},"application/vnd.japannet-directory-service":{"source":"iana"},"application/vnd.japannet-jpnstore-wakeup":{"source":"iana"},"application/vnd.japannet-payment-wakeup":{"source":"iana"},"application/vnd.japannet-registration":{"source":"iana"},"application/vnd.japannet-registration-wakeup":{"source":"iana"},"application/vnd.japannet-setstore-wakeup":{"source":"iana"},"application/vnd.japannet-verification":{"source":"iana"},"application/vnd.japannet-verification-wakeup":{"source":"iana"},"application/vnd.jcp.javame.midlet-rms":{"source":"iana","extensions":["rms"]},"application/vnd.jisp":{"source":"iana","extensions":["jisp"]},"application/vnd.joost.joda-archive":{"source":"iana","extensions":["joda"]},"application/vnd.jsk.isdn-ngn":{"source":"iana"},"application/vnd.kahootz":{"source":"iana","extensions":["ktz","ktr"]},"application/vnd.kde.karbon":{"source":"iana","extensions":["karbon"]},"application/vnd.kde.kchart":{"source":"iana","extensions":["chrt"]},"application/vnd.kde.kformula":{"source":"iana","extensions":["kfo"]},"application/vnd.kde.kivio":{"source":"iana","extensions":["flw"]},"application/vnd.kde.kontour":{"source":"iana","extensions":["kon"]},"application/vnd.kde.kpresenter":{"source":"iana","extensions":["kpr","kpt"]},"application/vnd.kde.kspread":{"source":"iana","extensions":["ksp"]},"application/vnd.kde.kword":{"source":"iana","extensions":["kwd","kwt"]},"application/vnd.kenameaapp":{"source":"iana","extensions":["htke"]},"application/vnd.kidspiration":{"source":"iana","extensions":["kia"]},"application/vnd.kinar":{"source":"iana","extensions":["kne","knp"]},"application/vnd.koan":{"source":"iana","extensions":["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{"source":"iana","extensions":["sse"]},"application/vnd.las":{"source":"iana"},"application/vnd.las.las+json":{"source":"iana","compressible":true},"application/vnd.las.las+xml":{"source":"iana","compressible":true,"extensions":["lasxml"]},"application/vnd.laszip":{"source":"iana"},"application/vnd.leap+json":{"source":"iana","compressible":true},"application/vnd.liberty-request+xml":{"source":"iana","compressible":true},"application/vnd.llamagraphics.life-balance.desktop":{"source":"iana","extensions":["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{"source":"iana","compressible":true,"extensions":["lbe"]},"application/vnd.logipipe.circuit+zip":{"source":"iana","compressible":false},"application/vnd.loom":{"source":"iana"},"application/vnd.lotus-1-2-3":{"source":"iana","extensions":["123"]},"application/vnd.lotus-approach":{"source":"iana","extensions":["apr"]},"application/vnd.lotus-freelance":{"source":"iana","extensions":["pre"]},"application/vnd.lotus-notes":{"source":"iana","extensions":["nsf"]},"application/vnd.lotus-organizer":{"source":"iana","extensions":["org"]},"application/vnd.lotus-screencam":{"source":"iana","extensions":["scm"]},"application/vnd.lotus-wordpro":{"source":"iana","extensions":["lwp"]},"application/vnd.macports.portpkg":{"source":"iana","extensions":["portpkg"]},"application/vnd.mapbox-vector-tile":{"source":"iana","extensions":["mvt"]},"application/vnd.marlin.drm.actiontoken+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.conftoken+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.license+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.mdcf":{"source":"iana"},"application/vnd.mason+json":{"source":"iana","compressible":true},"application/vnd.maxmind.maxmind-db":{"source":"iana"},"application/vnd.mcd":{"source":"iana","extensions":["mcd"]},"application/vnd.medcalcdata":{"source":"iana","extensions":["mc1"]},"application/vnd.mediastation.cdkey":{"source":"iana","extensions":["cdkey"]},"application/vnd.meridian-slingshot":{"source":"iana"},"application/vnd.mfer":{"source":"iana","extensions":["mwf"]},"application/vnd.mfmp":{"source":"iana","extensions":["mfm"]},"application/vnd.micro+json":{"source":"iana","compressible":true},"application/vnd.micrografx.flo":{"source":"iana","extensions":["flo"]},"application/vnd.micrografx.igx":{"source":"iana","extensions":["igx"]},"application/vnd.microsoft.portable-executable":{"source":"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{"source":"iana"},"application/vnd.miele+json":{"source":"iana","compressible":true},"application/vnd.mif":{"source":"iana","extensions":["mif"]},"application/vnd.minisoft-hp3000-save":{"source":"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{"source":"iana"},"application/vnd.mobius.daf":{"source":"iana","extensions":["daf"]},"application/vnd.mobius.dis":{"source":"iana","extensions":["dis"]},"application/vnd.mobius.mbk":{"source":"iana","extensions":["mbk"]},"application/vnd.mobius.mqy":{"source":"iana","extensions":["mqy"]},"application/vnd.mobius.msl":{"source":"iana","extensions":["msl"]},"application/vnd.mobius.plc":{"source":"iana","extensions":["plc"]},"application/vnd.mobius.txf":{"source":"iana","extensions":["txf"]},"application/vnd.mophun.application":{"source":"iana","extensions":["mpn"]},"application/vnd.mophun.certificate":{"source":"iana","extensions":["mpc"]},"application/vnd.motorola.flexsuite":{"source":"iana"},"application/vnd.motorola.flexsuite.adsi":{"source":"iana"},"application/vnd.motorola.flexsuite.fis":{"source":"iana"},"application/vnd.motorola.flexsuite.gotap":{"source":"iana"},"application/vnd.motorola.flexsuite.kmr":{"source":"iana"},"application/vnd.motorola.flexsuite.ttc":{"source":"iana"},"application/vnd.motorola.flexsuite.wem":{"source":"iana"},"application/vnd.motorola.iprm":{"source":"iana"},"application/vnd.mozilla.xul+xml":{"source":"iana","compressible":true,"extensions":["xul"]},"application/vnd.ms-3mfdocument":{"source":"iana"},"application/vnd.ms-artgalry":{"source":"iana","extensions":["cil"]},"application/vnd.ms-asf":{"source":"iana"},"application/vnd.ms-cab-compressed":{"source":"iana","extensions":["cab"]},"application/vnd.ms-color.iccprofile":{"source":"apache"},"application/vnd.ms-excel":{"source":"iana","compressible":false,"extensions":["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{"source":"iana","extensions":["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{"source":"iana","extensions":["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{"source":"iana","extensions":["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{"source":"iana","extensions":["xltm"]},"application/vnd.ms-fontobject":{"source":"iana","compressible":true,"extensions":["eot"]},"application/vnd.ms-htmlhelp":{"source":"iana","extensions":["chm"]},"application/vnd.ms-ims":{"source":"iana","extensions":["ims"]},"application/vnd.ms-lrm":{"source":"iana","extensions":["lrm"]},"application/vnd.ms-office.activex+xml":{"source":"iana","compressible":true},"application/vnd.ms-officetheme":{"source":"iana","extensions":["thmx"]},"application/vnd.ms-opentype":{"source":"apache","compressible":true},"application/vnd.ms-outlook":{"compressible":false,"extensions":["msg"]},"application/vnd.ms-package.obfuscated-opentype":{"source":"apache"},"application/vnd.ms-pki.seccat":{"source":"apache","extensions":["cat"]},"application/vnd.ms-pki.stl":{"source":"apache","extensions":["stl"]},"application/vnd.ms-playready.initiator+xml":{"source":"iana","compressible":true},"application/vnd.ms-powerpoint":{"source":"iana","compressible":false,"extensions":["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{"source":"iana","extensions":["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{"source":"iana","extensions":["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{"source":"iana","extensions":["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{"source":"iana","extensions":["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{"source":"iana","extensions":["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{"source":"iana","compressible":true},"application/vnd.ms-printing.printticket+xml":{"source":"apache","compressible":true},"application/vnd.ms-printschematicket+xml":{"source":"iana","compressible":true},"application/vnd.ms-project":{"source":"iana","extensions":["mpp","mpt"]},"application/vnd.ms-tnef":{"source":"iana"},"application/vnd.ms-windows.devicepairing":{"source":"iana"},"application/vnd.ms-windows.nwprinting.oob":{"source":"iana"},"application/vnd.ms-windows.printerpairing":{"source":"iana"},"application/vnd.ms-windows.wsd.oob":{"source":"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{"source":"iana"},"application/vnd.ms-wmdrm.lic-resp":{"source":"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{"source":"iana"},"application/vnd.ms-wmdrm.meter-resp":{"source":"iana"},"application/vnd.ms-word.document.macroenabled.12":{"source":"iana","extensions":["docm"]},"application/vnd.ms-word.template.macroenabled.12":{"source":"iana","extensions":["dotm"]},"application/vnd.ms-works":{"source":"iana","extensions":["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{"source":"iana","extensions":["wpl"]},"application/vnd.ms-xpsdocument":{"source":"iana","compressible":false,"extensions":["xps"]},"application/vnd.msa-disk-image":{"source":"iana"},"application/vnd.mseq":{"source":"iana","extensions":["mseq"]},"application/vnd.msign":{"source":"iana"},"application/vnd.multiad.creator":{"source":"iana"},"application/vnd.multiad.creator.cif":{"source":"iana"},"application/vnd.music-niff":{"source":"iana"},"application/vnd.musician":{"source":"iana","extensions":["mus"]},"application/vnd.muvee.style":{"source":"iana","extensions":["msty"]},"application/vnd.mynfc":{"source":"iana","extensions":["taglet"]},"application/vnd.ncd.control":{"source":"iana"},"application/vnd.ncd.reference":{"source":"iana"},"application/vnd.nearst.inv+json":{"source":"iana","compressible":true},"application/vnd.nebumind.line":{"source":"iana"},"application/vnd.nervana":{"source":"iana"},"application/vnd.netfpx":{"source":"iana"},"application/vnd.neurolanguage.nlu":{"source":"iana","extensions":["nlu"]},"application/vnd.nimn":{"source":"iana"},"application/vnd.nintendo.nitro.rom":{"source":"iana"},"application/vnd.nintendo.snes.rom":{"source":"iana"},"application/vnd.nitf":{"source":"iana","extensions":["ntf","nitf"]},"application/vnd.noblenet-directory":{"source":"iana","extensions":["nnd"]},"application/vnd.noblenet-sealer":{"source":"iana","extensions":["nns"]},"application/vnd.noblenet-web":{"source":"iana","extensions":["nnw"]},"application/vnd.nokia.catalogs":{"source":"iana"},"application/vnd.nokia.conml+wbxml":{"source":"iana"},"application/vnd.nokia.conml+xml":{"source":"iana","compressible":true},"application/vnd.nokia.iptv.config+xml":{"source":"iana","compressible":true},"application/vnd.nokia.isds-radio-presets":{"source":"iana"},"application/vnd.nokia.landmark+wbxml":{"source":"iana"},"application/vnd.nokia.landmark+xml":{"source":"iana","compressible":true},"application/vnd.nokia.landmarkcollection+xml":{"source":"iana","compressible":true},"application/vnd.nokia.n-gage.ac+xml":{"source":"iana","compressible":true,"extensions":["ac"]},"application/vnd.nokia.n-gage.data":{"source":"iana","extensions":["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{"source":"iana","extensions":["n-gage"]},"application/vnd.nokia.ncd":{"source":"iana"},"application/vnd.nokia.pcd+wbxml":{"source":"iana"},"application/vnd.nokia.pcd+xml":{"source":"iana","compressible":true},"application/vnd.nokia.radio-preset":{"source":"iana","extensions":["rpst"]},"application/vnd.nokia.radio-presets":{"source":"iana","extensions":["rpss"]},"application/vnd.novadigm.edm":{"source":"iana","extensions":["edm"]},"application/vnd.novadigm.edx":{"source":"iana","extensions":["edx"]},"application/vnd.novadigm.ext":{"source":"iana","extensions":["ext"]},"application/vnd.ntt-local.content-share":{"source":"iana"},"application/vnd.ntt-local.file-transfer":{"source":"iana"},"application/vnd.ntt-local.ogw_remote-access":{"source":"iana"},"application/vnd.ntt-local.sip-ta_remote":{"source":"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{"source":"iana"},"application/vnd.oasis.opendocument.chart":{"source":"iana","extensions":["odc"]},"application/vnd.oasis.opendocument.chart-template":{"source":"iana","extensions":["otc"]},"application/vnd.oasis.opendocument.database":{"source":"iana","extensions":["odb"]},"application/vnd.oasis.opendocument.formula":{"source":"iana","extensions":["odf"]},"application/vnd.oasis.opendocument.formula-template":{"source":"iana","extensions":["odft"]},"application/vnd.oasis.opendocument.graphics":{"source":"iana","compressible":false,"extensions":["odg"]},"application/vnd.oasis.opendocument.graphics-template":{"source":"iana","extensions":["otg"]},"application/vnd.oasis.opendocument.image":{"source":"iana","extensions":["odi"]},"application/vnd.oasis.opendocument.image-template":{"source":"iana","extensions":["oti"]},"application/vnd.oasis.opendocument.presentation":{"source":"iana","compressible":false,"extensions":["odp"]},"application/vnd.oasis.opendocument.presentation-template":{"source":"iana","extensions":["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{"source":"iana","compressible":false,"extensions":["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{"source":"iana","extensions":["ots"]},"application/vnd.oasis.opendocument.text":{"source":"iana","compressible":false,"extensions":["odt"]},"application/vnd.oasis.opendocument.text-master":{"source":"iana","extensions":["odm"]},"application/vnd.oasis.opendocument.text-template":{"source":"iana","extensions":["ott"]},"application/vnd.oasis.opendocument.text-web":{"source":"iana","extensions":["oth"]},"application/vnd.obn":{"source":"iana"},"application/vnd.ocf+cbor":{"source":"iana"},"application/vnd.oci.image.manifest.v1+json":{"source":"iana","compressible":true},"application/vnd.oftn.l10n+json":{"source":"iana","compressible":true},"application/vnd.oipf.contentaccessdownload+xml":{"source":"iana","compressible":true},"application/vnd.oipf.contentaccessstreaming+xml":{"source":"iana","compressible":true},"application/vnd.oipf.cspg-hexbinary":{"source":"iana"},"application/vnd.oipf.dae.svg+xml":{"source":"iana","compressible":true},"application/vnd.oipf.dae.xhtml+xml":{"source":"iana","compressible":true},"application/vnd.oipf.mippvcontrolmessage+xml":{"source":"iana","compressible":true},"application/vnd.oipf.pae.gem":{"source":"iana"},"application/vnd.oipf.spdiscovery+xml":{"source":"iana","compressible":true},"application/vnd.oipf.spdlist+xml":{"source":"iana","compressible":true},"application/vnd.oipf.ueprofile+xml":{"source":"iana","compressible":true},"application/vnd.oipf.userprofile+xml":{"source":"iana","compressible":true},"application/vnd.olpc-sugar":{"source":"iana","extensions":["xo"]},"application/vnd.oma-scws-config":{"source":"iana"},"application/vnd.oma-scws-http-request":{"source":"iana"},"application/vnd.oma-scws-http-response":{"source":"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.drm-trigger+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.imd+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.ltkm":{"source":"iana"},"application/vnd.oma.bcast.notification+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.provisioningtrigger":{"source":"iana"},"application/vnd.oma.bcast.sgboot":{"source":"iana"},"application/vnd.oma.bcast.sgdd+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.sgdu":{"source":"iana"},"application/vnd.oma.bcast.simple-symbol-container":{"source":"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.sprov+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.stkm":{"source":"iana"},"application/vnd.oma.cab-address-book+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-feature-handler+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-pcc+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-subs-invite+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-user-prefs+xml":{"source":"iana","compressible":true},"application/vnd.oma.dcd":{"source":"iana"},"application/vnd.oma.dcdc":{"source":"iana"},"application/vnd.oma.dd2+xml":{"source":"iana","compressible":true,"extensions":["dd2"]},"application/vnd.oma.drm.risd+xml":{"source":"iana","compressible":true},"application/vnd.oma.group-usage-list+xml":{"source":"iana","compressible":true},"application/vnd.oma.lwm2m+cbor":{"source":"iana"},"application/vnd.oma.lwm2m+json":{"source":"iana","compressible":true},"application/vnd.oma.lwm2m+tlv":{"source":"iana"},"application/vnd.oma.pal+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.detailed-progress-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.final-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.groups+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.invocation-descriptor+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.optimized-progress-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.push":{"source":"iana"},"application/vnd.oma.scidm.messages+xml":{"source":"iana","compressible":true},"application/vnd.oma.xcap-directory+xml":{"source":"iana","compressible":true},"application/vnd.omads-email+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omads-file+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omads-folder+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omaloc-supl-init":{"source":"iana"},"application/vnd.onepager":{"source":"iana"},"application/vnd.onepagertamp":{"source":"iana"},"application/vnd.onepagertamx":{"source":"iana"},"application/vnd.onepagertat":{"source":"iana"},"application/vnd.onepagertatp":{"source":"iana"},"application/vnd.onepagertatx":{"source":"iana"},"application/vnd.openblox.game+xml":{"source":"iana","compressible":true,"extensions":["obgx"]},"application/vnd.openblox.game-binary":{"source":"iana"},"application/vnd.openeye.oeb":{"source":"iana"},"application/vnd.openofficeorg.extension":{"source":"apache","extensions":["oxt"]},"application/vnd.openstreetmap.data+xml":{"source":"iana","compressible":true,"extensions":["osm"]},"application/vnd.opentimestamps.ots":{"source":"iana"},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawing+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{"source":"iana","compressible":false,"extensions":["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slide":{"source":"iana","extensions":["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{"source":"iana","extensions":["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.template":{"source":"iana","extensions":["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{"source":"iana","compressible":false,"extensions":["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{"source":"iana","extensions":["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.theme+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.vmldrawing":{"source":"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{"source":"iana","compressible":false,"extensions":["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{"source":"iana","extensions":["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.core-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.relationships+xml":{"source":"iana","compressible":true},"application/vnd.oracle.resource+json":{"source":"iana","compressible":true},"application/vnd.orange.indata":{"source":"iana"},"application/vnd.osa.netdeploy":{"source":"iana"},"application/vnd.osgeo.mapguide.package":{"source":"iana","extensions":["mgp"]},"application/vnd.osgi.bundle":{"source":"iana"},"application/vnd.osgi.dp":{"source":"iana","extensions":["dp"]},"application/vnd.osgi.subsystem":{"source":"iana","extensions":["esa"]},"application/vnd.otps.ct-kip+xml":{"source":"iana","compressible":true},"application/vnd.oxli.countgraph":{"source":"iana"},"application/vnd.pagerduty+json":{"source":"iana","compressible":true},"application/vnd.palm":{"source":"iana","extensions":["pdb","pqa","oprc"]},"application/vnd.panoply":{"source":"iana"},"application/vnd.paos.xml":{"source":"iana"},"application/vnd.patentdive":{"source":"iana"},"application/vnd.patientecommsdoc":{"source":"iana"},"application/vnd.pawaafile":{"source":"iana","extensions":["paw"]},"application/vnd.pcos":{"source":"iana"},"application/vnd.pg.format":{"source":"iana","extensions":["str"]},"application/vnd.pg.osasli":{"source":"iana","extensions":["ei6"]},"application/vnd.piaccess.application-licence":{"source":"iana"},"application/vnd.picsel":{"source":"iana","extensions":["efif"]},"application/vnd.pmi.widget":{"source":"iana","extensions":["wg"]},"application/vnd.poc.group-advertisement+xml":{"source":"iana","compressible":true},"application/vnd.pocketlearn":{"source":"iana","extensions":["plf"]},"application/vnd.powerbuilder6":{"source":"iana","extensions":["pbd"]},"application/vnd.powerbuilder6-s":{"source":"iana"},"application/vnd.powerbuilder7":{"source":"iana"},"application/vnd.powerbuilder7-s":{"source":"iana"},"application/vnd.powerbuilder75":{"source":"iana"},"application/vnd.powerbuilder75-s":{"source":"iana"},"application/vnd.preminet":{"source":"iana"},"application/vnd.previewsystems.box":{"source":"iana","extensions":["box"]},"application/vnd.proteus.magazine":{"source":"iana","extensions":["mgz"]},"application/vnd.psfs":{"source":"iana"},"application/vnd.publishare-delta-tree":{"source":"iana","extensions":["qps"]},"application/vnd.pvi.ptid1":{"source":"iana","extensions":["ptid"]},"application/vnd.pwg-multiplexed":{"source":"iana"},"application/vnd.pwg-xhtml-print+xml":{"source":"iana","compressible":true},"application/vnd.qualcomm.brew-app-res":{"source":"iana"},"application/vnd.quarantainenet":{"source":"iana"},"application/vnd.quark.quarkxpress":{"source":"iana","extensions":["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{"source":"iana"},"application/vnd.radisys.moml+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-conf+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-conn+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-dialog+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-stream+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-conf+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-base+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-fax-detect+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-group+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-speech+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-transform+xml":{"source":"iana","compressible":true},"application/vnd.rainstor.data":{"source":"iana"},"application/vnd.rapid":{"source":"iana"},"application/vnd.rar":{"source":"iana","extensions":["rar"]},"application/vnd.realvnc.bed":{"source":"iana","extensions":["bed"]},"application/vnd.recordare.musicxml":{"source":"iana","extensions":["mxl"]},"application/vnd.recordare.musicxml+xml":{"source":"iana","compressible":true,"extensions":["musicxml"]},"application/vnd.renlearn.rlprint":{"source":"iana"},"application/vnd.resilient.logic":{"source":"iana"},"application/vnd.restful+json":{"source":"iana","compressible":true},"application/vnd.rig.cryptonote":{"source":"iana","extensions":["cryptonote"]},"application/vnd.rim.cod":{"source":"apache","extensions":["cod"]},"application/vnd.rn-realmedia":{"source":"apache","extensions":["rm"]},"application/vnd.rn-realmedia-vbr":{"source":"apache","extensions":["rmvb"]},"application/vnd.route66.link66+xml":{"source":"iana","compressible":true,"extensions":["link66"]},"application/vnd.rs-274x":{"source":"iana"},"application/vnd.ruckus.download":{"source":"iana"},"application/vnd.s3sms":{"source":"iana"},"application/vnd.sailingtracker.track":{"source":"iana","extensions":["st"]},"application/vnd.sar":{"source":"iana"},"application/vnd.sbm.cid":{"source":"iana"},"application/vnd.sbm.mid2":{"source":"iana"},"application/vnd.scribus":{"source":"iana"},"application/vnd.sealed.3df":{"source":"iana"},"application/vnd.sealed.csf":{"source":"iana"},"application/vnd.sealed.doc":{"source":"iana"},"application/vnd.sealed.eml":{"source":"iana"},"application/vnd.sealed.mht":{"source":"iana"},"application/vnd.sealed.net":{"source":"iana"},"application/vnd.sealed.ppt":{"source":"iana"},"application/vnd.sealed.tiff":{"source":"iana"},"application/vnd.sealed.xls":{"source":"iana"},"application/vnd.sealedmedia.softseal.html":{"source":"iana"},"application/vnd.sealedmedia.softseal.pdf":{"source":"iana"},"application/vnd.seemail":{"source":"iana","extensions":["see"]},"application/vnd.seis+json":{"source":"iana","compressible":true},"application/vnd.sema":{"source":"iana","extensions":["sema"]},"application/vnd.semd":{"source":"iana","extensions":["semd"]},"application/vnd.semf":{"source":"iana","extensions":["semf"]},"application/vnd.shade-save-file":{"source":"iana"},"application/vnd.shana.informed.formdata":{"source":"iana","extensions":["ifm"]},"application/vnd.shana.informed.formtemplate":{"source":"iana","extensions":["itp"]},"application/vnd.shana.informed.interchange":{"source":"iana","extensions":["iif"]},"application/vnd.shana.informed.package":{"source":"iana","extensions":["ipk"]},"application/vnd.shootproof+json":{"source":"iana","compressible":true},"application/vnd.shopkick+json":{"source":"iana","compressible":true},"application/vnd.shp":{"source":"iana"},"application/vnd.shx":{"source":"iana"},"application/vnd.sigrok.session":{"source":"iana"},"application/vnd.simtech-mindmapper":{"source":"iana","extensions":["twd","twds"]},"application/vnd.siren+json":{"source":"iana","compressible":true},"application/vnd.smaf":{"source":"iana","extensions":["mmf"]},"application/vnd.smart.notebook":{"source":"iana"},"application/vnd.smart.teacher":{"source":"iana","extensions":["teacher"]},"application/vnd.snesdev-page-table":{"source":"iana"},"application/vnd.software602.filler.form+xml":{"source":"iana","compressible":true,"extensions":["fo"]},"application/vnd.software602.filler.form-xml-zip":{"source":"iana"},"application/vnd.solent.sdkm+xml":{"source":"iana","compressible":true,"extensions":["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{"source":"iana","extensions":["dxp"]},"application/vnd.spotfire.sfs":{"source":"iana","extensions":["sfs"]},"application/vnd.sqlite3":{"source":"iana"},"application/vnd.sss-cod":{"source":"iana"},"application/vnd.sss-dtf":{"source":"iana"},"application/vnd.sss-ntf":{"source":"iana"},"application/vnd.stardivision.calc":{"source":"apache","extensions":["sdc"]},"application/vnd.stardivision.draw":{"source":"apache","extensions":["sda"]},"application/vnd.stardivision.impress":{"source":"apache","extensions":["sdd"]},"application/vnd.stardivision.math":{"source":"apache","extensions":["smf"]},"application/vnd.stardivision.writer":{"source":"apache","extensions":["sdw","vor"]},"application/vnd.stardivision.writer-global":{"source":"apache","extensions":["sgl"]},"application/vnd.stepmania.package":{"source":"iana","extensions":["smzip"]},"application/vnd.stepmania.stepchart":{"source":"iana","extensions":["sm"]},"application/vnd.street-stream":{"source":"iana"},"application/vnd.sun.wadl+xml":{"source":"iana","compressible":true,"extensions":["wadl"]},"application/vnd.sun.xml.calc":{"source":"apache","extensions":["sxc"]},"application/vnd.sun.xml.calc.template":{"source":"apache","extensions":["stc"]},"application/vnd.sun.xml.draw":{"source":"apache","extensions":["sxd"]},"application/vnd.sun.xml.draw.template":{"source":"apache","extensions":["std"]},"application/vnd.sun.xml.impress":{"source":"apache","extensions":["sxi"]},"application/vnd.sun.xml.impress.template":{"source":"apache","extensions":["sti"]},"application/vnd.sun.xml.math":{"source":"apache","extensions":["sxm"]},"application/vnd.sun.xml.writer":{"source":"apache","extensions":["sxw"]},"application/vnd.sun.xml.writer.global":{"source":"apache","extensions":["sxg"]},"application/vnd.sun.xml.writer.template":{"source":"apache","extensions":["stw"]},"application/vnd.sus-calendar":{"source":"iana","extensions":["sus","susp"]},"application/vnd.svd":{"source":"iana","extensions":["svd"]},"application/vnd.swiftview-ics":{"source":"iana"},"application/vnd.sycle+xml":{"source":"iana","compressible":true},"application/vnd.symbian.install":{"source":"apache","extensions":["sis","sisx"]},"application/vnd.syncml+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["xsm"]},"application/vnd.syncml.dm+wbxml":{"source":"iana","charset":"UTF-8","extensions":["bdm"]},"application/vnd.syncml.dm+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["xdm"]},"application/vnd.syncml.dm.notification":{"source":"iana"},"application/vnd.syncml.dmddf+wbxml":{"source":"iana"},"application/vnd.syncml.dmddf+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{"source":"iana"},"application/vnd.syncml.dmtnds+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.syncml.ds.notification":{"source":"iana"},"application/vnd.tableschema+json":{"source":"iana","compressible":true},"application/vnd.tao.intent-module-archive":{"source":"iana","extensions":["tao"]},"application/vnd.tcpdump.pcap":{"source":"iana","extensions":["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{"source":"iana","compressible":true},"application/vnd.tmd.mediaflex.api+xml":{"source":"iana","compressible":true},"application/vnd.tml":{"source":"iana"},"application/vnd.tmobile-livetv":{"source":"iana","extensions":["tmo"]},"application/vnd.tri.onesource":{"source":"iana"},"application/vnd.trid.tpt":{"source":"iana","extensions":["tpt"]},"application/vnd.triscape.mxs":{"source":"iana","extensions":["mxs"]},"application/vnd.trueapp":{"source":"iana","extensions":["tra"]},"application/vnd.truedoc":{"source":"iana"},"application/vnd.ubisoft.webplayer":{"source":"iana"},"application/vnd.ufdl":{"source":"iana","extensions":["ufd","ufdl"]},"application/vnd.uiq.theme":{"source":"iana","extensions":["utz"]},"application/vnd.umajin":{"source":"iana","extensions":["umj"]},"application/vnd.unity":{"source":"iana","extensions":["unityweb"]},"application/vnd.uoml+xml":{"source":"iana","compressible":true,"extensions":["uoml"]},"application/vnd.uplanet.alert":{"source":"iana"},"application/vnd.uplanet.alert-wbxml":{"source":"iana"},"application/vnd.uplanet.bearer-choice":{"source":"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{"source":"iana"},"application/vnd.uplanet.cacheop":{"source":"iana"},"application/vnd.uplanet.cacheop-wbxml":{"source":"iana"},"application/vnd.uplanet.channel":{"source":"iana"},"application/vnd.uplanet.channel-wbxml":{"source":"iana"},"application/vnd.uplanet.list":{"source":"iana"},"application/vnd.uplanet.list-wbxml":{"source":"iana"},"application/vnd.uplanet.listcmd":{"source":"iana"},"application/vnd.uplanet.listcmd-wbxml":{"source":"iana"},"application/vnd.uplanet.signal":{"source":"iana"},"application/vnd.uri-map":{"source":"iana"},"application/vnd.valve.source.material":{"source":"iana"},"application/vnd.vcx":{"source":"iana","extensions":["vcx"]},"application/vnd.vd-study":{"source":"iana"},"application/vnd.vectorworks":{"source":"iana"},"application/vnd.vel+json":{"source":"iana","compressible":true},"application/vnd.verimatrix.vcas":{"source":"iana"},"application/vnd.veritone.aion+json":{"source":"iana","compressible":true},"application/vnd.veryant.thin":{"source":"iana"},"application/vnd.ves.encrypted":{"source":"iana"},"application/vnd.vidsoft.vidconference":{"source":"iana"},"application/vnd.visio":{"source":"iana","extensions":["vsd","vst","vss","vsw"]},"application/vnd.visionary":{"source":"iana","extensions":["vis"]},"application/vnd.vividence.scriptfile":{"source":"iana"},"application/vnd.vsf":{"source":"iana","extensions":["vsf"]},"application/vnd.wap.sic":{"source":"iana"},"application/vnd.wap.slc":{"source":"iana"},"application/vnd.wap.wbxml":{"source":"iana","charset":"UTF-8","extensions":["wbxml"]},"application/vnd.wap.wmlc":{"source":"iana","extensions":["wmlc"]},"application/vnd.wap.wmlscriptc":{"source":"iana","extensions":["wmlsc"]},"application/vnd.webturbo":{"source":"iana","extensions":["wtb"]},"application/vnd.wfa.dpp":{"source":"iana"},"application/vnd.wfa.p2p":{"source":"iana"},"application/vnd.wfa.wsc":{"source":"iana"},"application/vnd.windows.devicepairing":{"source":"iana"},"application/vnd.wmc":{"source":"iana"},"application/vnd.wmf.bootstrap":{"source":"iana"},"application/vnd.wolfram.mathematica":{"source":"iana"},"application/vnd.wolfram.mathematica.package":{"source":"iana"},"application/vnd.wolfram.player":{"source":"iana","extensions":["nbp"]},"application/vnd.wordperfect":{"source":"iana","extensions":["wpd"]},"application/vnd.wqd":{"source":"iana","extensions":["wqd"]},"application/vnd.wrq-hp3000-labelled":{"source":"iana"},"application/vnd.wt.stf":{"source":"iana","extensions":["stf"]},"application/vnd.wv.csp+wbxml":{"source":"iana"},"application/vnd.wv.csp+xml":{"source":"iana","compressible":true},"application/vnd.wv.ssp+xml":{"source":"iana","compressible":true},"application/vnd.xacml+json":{"source":"iana","compressible":true},"application/vnd.xara":{"source":"iana","extensions":["xar"]},"application/vnd.xfdl":{"source":"iana","extensions":["xfdl"]},"application/vnd.xfdl.webform":{"source":"iana"},"application/vnd.xmi+xml":{"source":"iana","compressible":true},"application/vnd.xmpie.cpkg":{"source":"iana"},"application/vnd.xmpie.dpkg":{"source":"iana"},"application/vnd.xmpie.plan":{"source":"iana"},"application/vnd.xmpie.ppkg":{"source":"iana"},"application/vnd.xmpie.xlim":{"source":"iana"},"application/vnd.yamaha.hv-dic":{"source":"iana","extensions":["hvd"]},"application/vnd.yamaha.hv-script":{"source":"iana","extensions":["hvs"]},"application/vnd.yamaha.hv-voice":{"source":"iana","extensions":["hvp"]},"application/vnd.yamaha.openscoreformat":{"source":"iana","extensions":["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{"source":"iana","compressible":true,"extensions":["osfpvg"]},"application/vnd.yamaha.remote-setup":{"source":"iana"},"application/vnd.yamaha.smaf-audio":{"source":"iana","extensions":["saf"]},"application/vnd.yamaha.smaf-phrase":{"source":"iana","extensions":["spf"]},"application/vnd.yamaha.through-ngn":{"source":"iana"},"application/vnd.yamaha.tunnel-udpencap":{"source":"iana"},"application/vnd.yaoweme":{"source":"iana"},"application/vnd.yellowriver-custom-menu":{"source":"iana","extensions":["cmp"]},"application/vnd.youtube.yt":{"source":"iana"},"application/vnd.zul":{"source":"iana","extensions":["zir","zirz"]},"application/vnd.zzazz.deck+xml":{"source":"iana","compressible":true,"extensions":["zaz"]},"application/voicexml+xml":{"source":"iana","compressible":true,"extensions":["vxml"]},"application/voucher-cms+json":{"source":"iana","compressible":true},"application/vq-rtcpxr":{"source":"iana"},"application/wasm":{"source":"iana","compressible":true,"extensions":["wasm"]},"application/watcherinfo+xml":{"source":"iana","compressible":true},"application/webpush-options+json":{"source":"iana","compressible":true},"application/whoispp-query":{"source":"iana"},"application/whoispp-response":{"source":"iana"},"application/widget":{"source":"iana","extensions":["wgt"]},"application/winhlp":{"source":"apache","extensions":["hlp"]},"application/wita":{"source":"iana"},"application/wordperfect5.1":{"source":"iana"},"application/wsdl+xml":{"source":"iana","compressible":true,"extensions":["wsdl"]},"application/wspolicy+xml":{"source":"iana","compressible":true,"extensions":["wspolicy"]},"application/x-7z-compressed":{"source":"apache","compressible":false,"extensions":["7z"]},"application/x-abiword":{"source":"apache","extensions":["abw"]},"application/x-ace-compressed":{"source":"apache","extensions":["ace"]},"application/x-amf":{"source":"apache"},"application/x-apple-diskimage":{"source":"apache","extensions":["dmg"]},"application/x-arj":{"compressible":false,"extensions":["arj"]},"application/x-authorware-bin":{"source":"apache","extensions":["aab","x32","u32","vox"]},"application/x-authorware-map":{"source":"apache","extensions":["aam"]},"application/x-authorware-seg":{"source":"apache","extensions":["aas"]},"application/x-bcpio":{"source":"apache","extensions":["bcpio"]},"application/x-bdoc":{"compressible":false,"extensions":["bdoc"]},"application/x-bittorrent":{"source":"apache","extensions":["torrent"]},"application/x-blorb":{"source":"apache","extensions":["blb","blorb"]},"application/x-bzip":{"source":"apache","compressible":false,"extensions":["bz"]},"application/x-bzip2":{"source":"apache","compressible":false,"extensions":["bz2","boz"]},"application/x-cbr":{"source":"apache","extensions":["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{"source":"apache","extensions":["vcd"]},"application/x-cfs-compressed":{"source":"apache","extensions":["cfs"]},"application/x-chat":{"source":"apache","extensions":["chat"]},"application/x-chess-pgn":{"source":"apache","extensions":["pgn"]},"application/x-chrome-extension":{"extensions":["crx"]},"application/x-cocoa":{"source":"nginx","extensions":["cco"]},"application/x-compress":{"source":"apache"},"application/x-conference":{"source":"apache","extensions":["nsc"]},"application/x-cpio":{"source":"apache","extensions":["cpio"]},"application/x-csh":{"source":"apache","extensions":["csh"]},"application/x-deb":{"compressible":false},"application/x-debian-package":{"source":"apache","extensions":["deb","udeb"]},"application/x-dgc-compressed":{"source":"apache","extensions":["dgc"]},"application/x-director":{"source":"apache","extensions":["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{"source":"apache","extensions":["wad"]},"application/x-dtbncx+xml":{"source":"apache","compressible":true,"extensions":["ncx"]},"application/x-dtbook+xml":{"source":"apache","compressible":true,"extensions":["dtb"]},"application/x-dtbresource+xml":{"source":"apache","compressible":true,"extensions":["res"]},"application/x-dvi":{"source":"apache","compressible":false,"extensions":["dvi"]},"application/x-envoy":{"source":"apache","extensions":["evy"]},"application/x-eva":{"source":"apache","extensions":["eva"]},"application/x-font-bdf":{"source":"apache","extensions":["bdf"]},"application/x-font-dos":{"source":"apache"},"application/x-font-framemaker":{"source":"apache"},"application/x-font-ghostscript":{"source":"apache","extensions":["gsf"]},"application/x-font-libgrx":{"source":"apache"},"application/x-font-linux-psf":{"source":"apache","extensions":["psf"]},"application/x-font-pcf":{"source":"apache","extensions":["pcf"]},"application/x-font-snf":{"source":"apache","extensions":["snf"]},"application/x-font-speedo":{"source":"apache"},"application/x-font-sunos-news":{"source":"apache"},"application/x-font-type1":{"source":"apache","extensions":["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{"source":"apache"},"application/x-freearc":{"source":"apache","extensions":["arc"]},"application/x-futuresplash":{"source":"apache","extensions":["spl"]},"application/x-gca-compressed":{"source":"apache","extensions":["gca"]},"application/x-glulx":{"source":"apache","extensions":["ulx"]},"application/x-gnumeric":{"source":"apache","extensions":["gnumeric"]},"application/x-gramps-xml":{"source":"apache","extensions":["gramps"]},"application/x-gtar":{"source":"apache","extensions":["gtar"]},"application/x-gzip":{"source":"apache"},"application/x-hdf":{"source":"apache","extensions":["hdf"]},"application/x-httpd-php":{"compressible":true,"extensions":["php"]},"application/x-install-instructions":{"source":"apache","extensions":["install"]},"application/x-iso9660-image":{"source":"apache","extensions":["iso"]},"application/x-java-archive-diff":{"source":"nginx","extensions":["jardiff"]},"application/x-java-jnlp-file":{"source":"apache","compressible":false,"extensions":["jnlp"]},"application/x-javascript":{"compressible":true},"application/x-keepass2":{"extensions":["kdbx"]},"application/x-latex":{"source":"apache","compressible":false,"extensions":["latex"]},"application/x-lua-bytecode":{"extensions":["luac"]},"application/x-lzh-compressed":{"source":"apache","extensions":["lzh","lha"]},"application/x-makeself":{"source":"nginx","extensions":["run"]},"application/x-mie":{"source":"apache","extensions":["mie"]},"application/x-mobipocket-ebook":{"source":"apache","extensions":["prc","mobi"]},"application/x-mpegurl":{"compressible":false},"application/x-ms-application":{"source":"apache","extensions":["application"]},"application/x-ms-shortcut":{"source":"apache","extensions":["lnk"]},"application/x-ms-wmd":{"source":"apache","extensions":["wmd"]},"application/x-ms-wmz":{"source":"apache","extensions":["wmz"]},"application/x-ms-xbap":{"source":"apache","extensions":["xbap"]},"application/x-msaccess":{"source":"apache","extensions":["mdb"]},"application/x-msbinder":{"source":"apache","extensions":["obd"]},"application/x-mscardfile":{"source":"apache","extensions":["crd"]},"application/x-msclip":{"source":"apache","extensions":["clp"]},"application/x-msdos-program":{"extensions":["exe"]},"application/x-msdownload":{"source":"apache","extensions":["exe","dll","com","bat","msi"]},"application/x-msmediaview":{"source":"apache","extensions":["mvb","m13","m14"]},"application/x-msmetafile":{"source":"apache","extensions":["wmf","wmz","emf","emz"]},"application/x-msmoney":{"source":"apache","extensions":["mny"]},"application/x-mspublisher":{"source":"apache","extensions":["pub"]},"application/x-msschedule":{"source":"apache","extensions":["scd"]},"application/x-msterminal":{"source":"apache","extensions":["trm"]},"application/x-mswrite":{"source":"apache","extensions":["wri"]},"application/x-netcdf":{"source":"apache","extensions":["nc","cdf"]},"application/x-ns-proxy-autoconfig":{"compressible":true,"extensions":["pac"]},"application/x-nzb":{"source":"apache","extensions":["nzb"]},"application/x-perl":{"source":"nginx","extensions":["pl","pm"]},"application/x-pilot":{"source":"nginx","extensions":["prc","pdb"]},"application/x-pkcs12":{"source":"apache","compressible":false,"extensions":["p12","pfx"]},"application/x-pkcs7-certificates":{"source":"apache","extensions":["p7b","spc"]},"application/x-pkcs7-certreqresp":{"source":"apache","extensions":["p7r"]},"application/x-pki-message":{"source":"iana"},"application/x-rar-compressed":{"source":"apache","compressible":false,"extensions":["rar"]},"application/x-redhat-package-manager":{"source":"nginx","extensions":["rpm"]},"application/x-research-info-systems":{"source":"apache","extensions":["ris"]},"application/x-sea":{"source":"nginx","extensions":["sea"]},"application/x-sh":{"source":"apache","compressible":true,"extensions":["sh"]},"application/x-shar":{"source":"apache","extensions":["shar"]},"application/x-shockwave-flash":{"source":"apache","compressible":false,"extensions":["swf"]},"application/x-silverlight-app":{"source":"apache","extensions":["xap"]},"application/x-sql":{"source":"apache","extensions":["sql"]},"application/x-stuffit":{"source":"apache","compressible":false,"extensions":["sit"]},"application/x-stuffitx":{"source":"apache","extensions":["sitx"]},"application/x-subrip":{"source":"apache","extensions":["srt"]},"application/x-sv4cpio":{"source":"apache","extensions":["sv4cpio"]},"application/x-sv4crc":{"source":"apache","extensions":["sv4crc"]},"application/x-t3vm-image":{"source":"apache","extensions":["t3"]},"application/x-tads":{"source":"apache","extensions":["gam"]},"application/x-tar":{"source":"apache","compressible":true,"extensions":["tar"]},"application/x-tcl":{"source":"apache","extensions":["tcl","tk"]},"application/x-tex":{"source":"apache","extensions":["tex"]},"application/x-tex-tfm":{"source":"apache","extensions":["tfm"]},"application/x-texinfo":{"source":"apache","extensions":["texinfo","texi"]},"application/x-tgif":{"source":"apache","extensions":["obj"]},"application/x-ustar":{"source":"apache","extensions":["ustar"]},"application/x-virtualbox-hdd":{"compressible":true,"extensions":["hdd"]},"application/x-virtualbox-ova":{"compressible":true,"extensions":["ova"]},"application/x-virtualbox-ovf":{"compressible":true,"extensions":["ovf"]},"application/x-virtualbox-vbox":{"compressible":true,"extensions":["vbox"]},"application/x-virtualbox-vbox-extpack":{"compressible":false,"extensions":["vbox-extpack"]},"application/x-virtualbox-vdi":{"compressible":true,"extensions":["vdi"]},"application/x-virtualbox-vhd":{"compressible":true,"extensions":["vhd"]},"application/x-virtualbox-vmdk":{"compressible":true,"extensions":["vmdk"]},"application/x-wais-source":{"source":"apache","extensions":["src"]},"application/x-web-app-manifest+json":{"compressible":true,"extensions":["webapp"]},"application/x-www-form-urlencoded":{"source":"iana","compressible":true},"application/x-x509-ca-cert":{"source":"iana","extensions":["der","crt","pem"]},"application/x-x509-ca-ra-cert":{"source":"iana"},"application/x-x509-next-ca-cert":{"source":"iana"},"application/x-xfig":{"source":"apache","extensions":["fig"]},"application/x-xliff+xml":{"source":"apache","compressible":true,"extensions":["xlf"]},"application/x-xpinstall":{"source":"apache","compressible":false,"extensions":["xpi"]},"application/x-xz":{"source":"apache","extensions":["xz"]},"application/x-zmachine":{"source":"apache","extensions":["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{"source":"iana"},"application/xacml+xml":{"source":"iana","compressible":true},"application/xaml+xml":{"source":"apache","compressible":true,"extensions":["xaml"]},"application/xcap-att+xml":{"source":"iana","compressible":true,"extensions":["xav"]},"application/xcap-caps+xml":{"source":"iana","compressible":true,"extensions":["xca"]},"application/xcap-diff+xml":{"source":"iana","compressible":true,"extensions":["xdf"]},"application/xcap-el+xml":{"source":"iana","compressible":true,"extensions":["xel"]},"application/xcap-error+xml":{"source":"iana","compressible":true},"application/xcap-ns+xml":{"source":"iana","compressible":true,"extensions":["xns"]},"application/xcon-conference-info+xml":{"source":"iana","compressible":true},"application/xcon-conference-info-diff+xml":{"source":"iana","compressible":true},"application/xenc+xml":{"source":"iana","compressible":true,"extensions":["xenc"]},"application/xhtml+xml":{"source":"iana","compressible":true,"extensions":["xhtml","xht"]},"application/xhtml-voice+xml":{"source":"apache","compressible":true},"application/xliff+xml":{"source":"iana","compressible":true,"extensions":["xlf"]},"application/xml":{"source":"iana","compressible":true,"extensions":["xml","xsl","xsd","rng"]},"application/xml-dtd":{"source":"iana","compressible":true,"extensions":["dtd"]},"application/xml-external-parsed-entity":{"source":"iana"},"application/xml-patch+xml":{"source":"iana","compressible":true},"application/xmpp+xml":{"source":"iana","compressible":true},"application/xop+xml":{"source":"iana","compressible":true,"extensions":["xop"]},"application/xproc+xml":{"source":"apache","compressible":true,"extensions":["xpl"]},"application/xslt+xml":{"source":"iana","compressible":true,"extensions":["xsl","xslt"]},"application/xspf+xml":{"source":"apache","compressible":true,"extensions":["xspf"]},"application/xv+xml":{"source":"iana","compressible":true,"extensions":["mxml","xhvml","xvml","xvm"]},"application/yang":{"source":"iana","extensions":["yang"]},"application/yang-data+json":{"source":"iana","compressible":true},"application/yang-data+xml":{"source":"iana","compressible":true},"application/yang-patch+json":{"source":"iana","compressible":true},"application/yang-patch+xml":{"source":"iana","compressible":true},"application/yin+xml":{"source":"iana","compressible":true,"extensions":["yin"]},"application/zip":{"source":"iana","compressible":false,"extensions":["zip"]},"application/zlib":{"source":"iana"},"application/zstd":{"source":"iana"},"audio/1d-interleaved-parityfec":{"source":"iana"},"audio/32kadpcm":{"source":"iana"},"audio/3gpp":{"source":"iana","compressible":false,"extensions":["3gpp"]},"audio/3gpp2":{"source":"iana"},"audio/aac":{"source":"iana"},"audio/ac3":{"source":"iana"},"audio/adpcm":{"source":"apache","extensions":["adp"]},"audio/amr":{"source":"iana","extensions":["amr"]},"audio/amr-wb":{"source":"iana"},"audio/amr-wb+":{"source":"iana"},"audio/aptx":{"source":"iana"},"audio/asc":{"source":"iana"},"audio/atrac-advanced-lossless":{"source":"iana"},"audio/atrac-x":{"source":"iana"},"audio/atrac3":{"source":"iana"},"audio/basic":{"source":"iana","compressible":false,"extensions":["au","snd"]},"audio/bv16":{"source":"iana"},"audio/bv32":{"source":"iana"},"audio/clearmode":{"source":"iana"},"audio/cn":{"source":"iana"},"audio/dat12":{"source":"iana"},"audio/dls":{"source":"iana"},"audio/dsr-es201108":{"source":"iana"},"audio/dsr-es202050":{"source":"iana"},"audio/dsr-es202211":{"source":"iana"},"audio/dsr-es202212":{"source":"iana"},"audio/dv":{"source":"iana"},"audio/dvi4":{"source":"iana"},"audio/eac3":{"source":"iana"},"audio/encaprtp":{"source":"iana"},"audio/evrc":{"source":"iana"},"audio/evrc-qcp":{"source":"iana"},"audio/evrc0":{"source":"iana"},"audio/evrc1":{"source":"iana"},"audio/evrcb":{"source":"iana"},"audio/evrcb0":{"source":"iana"},"audio/evrcb1":{"source":"iana"},"audio/evrcnw":{"source":"iana"},"audio/evrcnw0":{"source":"iana"},"audio/evrcnw1":{"source":"iana"},"audio/evrcwb":{"source":"iana"},"audio/evrcwb0":{"source":"iana"},"audio/evrcwb1":{"source":"iana"},"audio/evs":{"source":"iana"},"audio/flexfec":{"source":"iana"},"audio/fwdred":{"source":"iana"},"audio/g711-0":{"source":"iana"},"audio/g719":{"source":"iana"},"audio/g722":{"source":"iana"},"audio/g7221":{"source":"iana"},"audio/g723":{"source":"iana"},"audio/g726-16":{"source":"iana"},"audio/g726-24":{"source":"iana"},"audio/g726-32":{"source":"iana"},"audio/g726-40":{"source":"iana"},"audio/g728":{"source":"iana"},"audio/g729":{"source":"iana"},"audio/g7291":{"source":"iana"},"audio/g729d":{"source":"iana"},"audio/g729e":{"source":"iana"},"audio/gsm":{"source":"iana"},"audio/gsm-efr":{"source":"iana"},"audio/gsm-hr-08":{"source":"iana"},"audio/ilbc":{"source":"iana"},"audio/ip-mr_v2.5":{"source":"iana"},"audio/isac":{"source":"apache"},"audio/l16":{"source":"iana"},"audio/l20":{"source":"iana"},"audio/l24":{"source":"iana","compressible":false},"audio/l8":{"source":"iana"},"audio/lpc":{"source":"iana"},"audio/melp":{"source":"iana"},"audio/melp1200":{"source":"iana"},"audio/melp2400":{"source":"iana"},"audio/melp600":{"source":"iana"},"audio/mhas":{"source":"iana"},"audio/midi":{"source":"apache","extensions":["mid","midi","kar","rmi"]},"audio/mobile-xmf":{"source":"iana","extensions":["mxmf"]},"audio/mp3":{"compressible":false,"extensions":["mp3"]},"audio/mp4":{"source":"iana","compressible":false,"extensions":["m4a","mp4a"]},"audio/mp4a-latm":{"source":"iana"},"audio/mpa":{"source":"iana"},"audio/mpa-robust":{"source":"iana"},"audio/mpeg":{"source":"iana","compressible":false,"extensions":["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{"source":"iana"},"audio/musepack":{"source":"apache"},"audio/ogg":{"source":"iana","compressible":false,"extensions":["oga","ogg","spx","opus"]},"audio/opus":{"source":"iana"},"audio/parityfec":{"source":"iana"},"audio/pcma":{"source":"iana"},"audio/pcma-wb":{"source":"iana"},"audio/pcmu":{"source":"iana"},"audio/pcmu-wb":{"source":"iana"},"audio/prs.sid":{"source":"iana"},"audio/qcelp":{"source":"iana"},"audio/raptorfec":{"source":"iana"},"audio/red":{"source":"iana"},"audio/rtp-enc-aescm128":{"source":"iana"},"audio/rtp-midi":{"source":"iana"},"audio/rtploopback":{"source":"iana"},"audio/rtx":{"source":"iana"},"audio/s3m":{"source":"apache","extensions":["s3m"]},"audio/scip":{"source":"iana"},"audio/silk":{"source":"apache","extensions":["sil"]},"audio/smv":{"source":"iana"},"audio/smv-qcp":{"source":"iana"},"audio/smv0":{"source":"iana"},"audio/sofa":{"source":"iana"},"audio/sp-midi":{"source":"iana"},"audio/speex":{"source":"iana"},"audio/t140c":{"source":"iana"},"audio/t38":{"source":"iana"},"audio/telephone-event":{"source":"iana"},"audio/tetra_acelp":{"source":"iana"},"audio/tetra_acelp_bb":{"source":"iana"},"audio/tone":{"source":"iana"},"audio/tsvcis":{"source":"iana"},"audio/uemclip":{"source":"iana"},"audio/ulpfec":{"source":"iana"},"audio/usac":{"source":"iana"},"audio/vdvi":{"source":"iana"},"audio/vmr-wb":{"source":"iana"},"audio/vnd.3gpp.iufp":{"source":"iana"},"audio/vnd.4sb":{"source":"iana"},"audio/vnd.audiokoz":{"source":"iana"},"audio/vnd.celp":{"source":"iana"},"audio/vnd.cisco.nse":{"source":"iana"},"audio/vnd.cmles.radio-events":{"source":"iana"},"audio/vnd.cns.anp1":{"source":"iana"},"audio/vnd.cns.inf1":{"source":"iana"},"audio/vnd.dece.audio":{"source":"iana","extensions":["uva","uvva"]},"audio/vnd.digital-winds":{"source":"iana","extensions":["eol"]},"audio/vnd.dlna.adts":{"source":"iana"},"audio/vnd.dolby.heaac.1":{"source":"iana"},"audio/vnd.dolby.heaac.2":{"source":"iana"},"audio/vnd.dolby.mlp":{"source":"iana"},"audio/vnd.dolby.mps":{"source":"iana"},"audio/vnd.dolby.pl2":{"source":"iana"},"audio/vnd.dolby.pl2x":{"source":"iana"},"audio/vnd.dolby.pl2z":{"source":"iana"},"audio/vnd.dolby.pulse.1":{"source":"iana"},"audio/vnd.dra":{"source":"iana","extensions":["dra"]},"audio/vnd.dts":{"source":"iana","extensions":["dts"]},"audio/vnd.dts.hd":{"source":"iana","extensions":["dtshd"]},"audio/vnd.dts.uhd":{"source":"iana"},"audio/vnd.dvb.file":{"source":"iana"},"audio/vnd.everad.plj":{"source":"iana"},"audio/vnd.hns.audio":{"source":"iana"},"audio/vnd.lucent.voice":{"source":"iana","extensions":["lvp"]},"audio/vnd.ms-playready.media.pya":{"source":"iana","extensions":["pya"]},"audio/vnd.nokia.mobile-xmf":{"source":"iana"},"audio/vnd.nortel.vbk":{"source":"iana"},"audio/vnd.nuera.ecelp4800":{"source":"iana","extensions":["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{"source":"iana","extensions":["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{"source":"iana","extensions":["ecelp9600"]},"audio/vnd.octel.sbc":{"source":"iana"},"audio/vnd.presonus.multitrack":{"source":"iana"},"audio/vnd.qcelp":{"source":"iana"},"audio/vnd.rhetorex.32kadpcm":{"source":"iana"},"audio/vnd.rip":{"source":"iana","extensions":["rip"]},"audio/vnd.rn-realaudio":{"compressible":false},"audio/vnd.sealedmedia.softseal.mpeg":{"source":"iana"},"audio/vnd.vmx.cvsd":{"source":"iana"},"audio/vnd.wave":{"compressible":false},"audio/vorbis":{"source":"iana","compressible":false},"audio/vorbis-config":{"source":"iana"},"audio/wav":{"compressible":false,"extensions":["wav"]},"audio/wave":{"compressible":false,"extensions":["wav"]},"audio/webm":{"source":"apache","compressible":false,"extensions":["weba"]},"audio/x-aac":{"source":"apache","compressible":false,"extensions":["aac"]},"audio/x-aiff":{"source":"apache","extensions":["aif","aiff","aifc"]},"audio/x-caf":{"source":"apache","compressible":false,"extensions":["caf"]},"audio/x-flac":{"source":"apache","extensions":["flac"]},"audio/x-m4a":{"source":"nginx","extensions":["m4a"]},"audio/x-matroska":{"source":"apache","extensions":["mka"]},"audio/x-mpegurl":{"source":"apache","extensions":["m3u"]},"audio/x-ms-wax":{"source":"apache","extensions":["wax"]},"audio/x-ms-wma":{"source":"apache","extensions":["wma"]},"audio/x-pn-realaudio":{"source":"apache","extensions":["ram","ra"]},"audio/x-pn-realaudio-plugin":{"source":"apache","extensions":["rmp"]},"audio/x-realaudio":{"source":"nginx","extensions":["ra"]},"audio/x-tta":{"source":"apache"},"audio/x-wav":{"source":"apache","extensions":["wav"]},"audio/xm":{"source":"apache","extensions":["xm"]},"chemical/x-cdx":{"source":"apache","extensions":["cdx"]},"chemical/x-cif":{"source":"apache","extensions":["cif"]},"chemical/x-cmdf":{"source":"apache","extensions":["cmdf"]},"chemical/x-cml":{"source":"apache","extensions":["cml"]},"chemical/x-csml":{"source":"apache","extensions":["csml"]},"chemical/x-pdb":{"source":"apache"},"chemical/x-xyz":{"source":"apache","extensions":["xyz"]},"font/collection":{"source":"iana","extensions":["ttc"]},"font/otf":{"source":"iana","compressible":true,"extensions":["otf"]},"font/sfnt":{"source":"iana"},"font/ttf":{"source":"iana","compressible":true,"extensions":["ttf"]},"font/woff":{"source":"iana","extensions":["woff"]},"font/woff2":{"source":"iana","extensions":["woff2"]},"image/aces":{"source":"iana","extensions":["exr"]},"image/apng":{"compressible":false,"extensions":["apng"]},"image/avci":{"source":"iana"},"image/avcs":{"source":"iana"},"image/avif":{"source":"iana","compressible":false,"extensions":["avif"]},"image/bmp":{"source":"iana","compressible":true,"extensions":["bmp"]},"image/cgm":{"source":"iana","extensions":["cgm"]},"image/dicom-rle":{"source":"iana","extensions":["drle"]},"image/emf":{"source":"iana","extensions":["emf"]},"image/fits":{"source":"iana","extensions":["fits"]},"image/g3fax":{"source":"iana","extensions":["g3"]},"image/gif":{"source":"iana","compressible":false,"extensions":["gif"]},"image/heic":{"source":"iana","extensions":["heic"]},"image/heic-sequence":{"source":"iana","extensions":["heics"]},"image/heif":{"source":"iana","extensions":["heif"]},"image/heif-sequence":{"source":"iana","extensions":["heifs"]},"image/hej2k":{"source":"iana","extensions":["hej2"]},"image/hsj2":{"source":"iana","extensions":["hsj2"]},"image/ief":{"source":"iana","extensions":["ief"]},"image/jls":{"source":"iana","extensions":["jls"]},"image/jp2":{"source":"iana","compressible":false,"extensions":["jp2","jpg2"]},"image/jpeg":{"source":"iana","compressible":false,"extensions":["jpeg","jpg","jpe"]},"image/jph":{"source":"iana","extensions":["jph"]},"image/jphc":{"source":"iana","extensions":["jhc"]},"image/jpm":{"source":"iana","compressible":false,"extensions":["jpm"]},"image/jpx":{"source":"iana","compressible":false,"extensions":["jpx","jpf"]},"image/jxr":{"source":"iana","extensions":["jxr"]},"image/jxra":{"source":"iana","extensions":["jxra"]},"image/jxrs":{"source":"iana","extensions":["jxrs"]},"image/jxs":{"source":"iana","extensions":["jxs"]},"image/jxsc":{"source":"iana","extensions":["jxsc"]},"image/jxsi":{"source":"iana","extensions":["jxsi"]},"image/jxss":{"source":"iana","extensions":["jxss"]},"image/ktx":{"source":"iana","extensions":["ktx"]},"image/ktx2":{"source":"iana","extensions":["ktx2"]},"image/naplps":{"source":"iana"},"image/pjpeg":{"compressible":false},"image/png":{"source":"iana","compressible":false,"extensions":["png"]},"image/prs.btif":{"source":"iana","extensions":["btif"]},"image/prs.pti":{"source":"iana","extensions":["pti"]},"image/pwg-raster":{"source":"iana"},"image/sgi":{"source":"apache","extensions":["sgi"]},"image/svg+xml":{"source":"iana","compressible":true,"extensions":["svg","svgz"]},"image/t38":{"source":"iana","extensions":["t38"]},"image/tiff":{"source":"iana","compressible":false,"extensions":["tif","tiff"]},"image/tiff-fx":{"source":"iana","extensions":["tfx"]},"image/vnd.adobe.photoshop":{"source":"iana","compressible":true,"extensions":["psd"]},"image/vnd.airzip.accelerator.azv":{"source":"iana","extensions":["azv"]},"image/vnd.cns.inf2":{"source":"iana"},"image/vnd.dece.graphic":{"source":"iana","extensions":["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{"source":"iana","extensions":["djvu","djv"]},"image/vnd.dvb.subtitle":{"source":"iana","extensions":["sub"]},"image/vnd.dwg":{"source":"iana","extensions":["dwg"]},"image/vnd.dxf":{"source":"iana","extensions":["dxf"]},"image/vnd.fastbidsheet":{"source":"iana","extensions":["fbs"]},"image/vnd.fpx":{"source":"iana","extensions":["fpx"]},"image/vnd.fst":{"source":"iana","extensions":["fst"]},"image/vnd.fujixerox.edmics-mmr":{"source":"iana","extensions":["mmr"]},"image/vnd.fujixerox.edmics-rlc":{"source":"iana","extensions":["rlc"]},"image/vnd.globalgraphics.pgb":{"source":"iana"},"image/vnd.microsoft.icon":{"source":"iana","extensions":["ico"]},"image/vnd.mix":{"source":"iana"},"image/vnd.mozilla.apng":{"source":"iana"},"image/vnd.ms-dds":{"extensions":["dds"]},"image/vnd.ms-modi":{"source":"iana","extensions":["mdi"]},"image/vnd.ms-photo":{"source":"apache","extensions":["wdp"]},"image/vnd.net-fpx":{"source":"iana","extensions":["npx"]},"image/vnd.pco.b16":{"source":"iana","extensions":["b16"]},"image/vnd.radiance":{"source":"iana"},"image/vnd.sealed.png":{"source":"iana"},"image/vnd.sealedmedia.softseal.gif":{"source":"iana"},"image/vnd.sealedmedia.softseal.jpg":{"source":"iana"},"image/vnd.svf":{"source":"iana"},"image/vnd.tencent.tap":{"source":"iana","extensions":["tap"]},"image/vnd.valve.source.texture":{"source":"iana","extensions":["vtf"]},"image/vnd.wap.wbmp":{"source":"iana","extensions":["wbmp"]},"image/vnd.xiff":{"source":"iana","extensions":["xif"]},"image/vnd.zbrush.pcx":{"source":"iana","extensions":["pcx"]},"image/webp":{"source":"apache","extensions":["webp"]},"image/wmf":{"source":"iana","extensions":["wmf"]},"image/x-3ds":{"source":"apache","extensions":["3ds"]},"image/x-cmu-raster":{"source":"apache","extensions":["ras"]},"image/x-cmx":{"source":"apache","extensions":["cmx"]},"image/x-freehand":{"source":"apache","extensions":["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{"source":"apache","compressible":true,"extensions":["ico"]},"image/x-jng":{"source":"nginx","extensions":["jng"]},"image/x-mrsid-image":{"source":"apache","extensions":["sid"]},"image/x-ms-bmp":{"source":"nginx","compressible":true,"extensions":["bmp"]},"image/x-pcx":{"source":"apache","extensions":["pcx"]},"image/x-pict":{"source":"apache","extensions":["pic","pct"]},"image/x-portable-anymap":{"source":"apache","extensions":["pnm"]},"image/x-portable-bitmap":{"source":"apache","extensions":["pbm"]},"image/x-portable-graymap":{"source":"apache","extensions":["pgm"]},"image/x-portable-pixmap":{"source":"apache","extensions":["ppm"]},"image/x-rgb":{"source":"apache","extensions":["rgb"]},"image/x-tga":{"source":"apache","extensions":["tga"]},"image/x-xbitmap":{"source":"apache","extensions":["xbm"]},"image/x-xcf":{"compressible":false},"image/x-xpixmap":{"source":"apache","extensions":["xpm"]},"image/x-xwindowdump":{"source":"apache","extensions":["xwd"]},"message/cpim":{"source":"iana"},"message/delivery-status":{"source":"iana"},"message/disposition-notification":{"source":"iana","extensions":["disposition-notification"]},"message/external-body":{"source":"iana"},"message/feedback-report":{"source":"iana"},"message/global":{"source":"iana","extensions":["u8msg"]},"message/global-delivery-status":{"source":"iana","extensions":["u8dsn"]},"message/global-disposition-notification":{"source":"iana","extensions":["u8mdn"]},"message/global-headers":{"source":"iana","extensions":["u8hdr"]},"message/http":{"source":"iana","compressible":false},"message/imdn+xml":{"source":"iana","compressible":true},"message/news":{"source":"iana"},"message/partial":{"source":"iana","compressible":false},"message/rfc822":{"source":"iana","compressible":true,"extensions":["eml","mime"]},"message/s-http":{"source":"iana"},"message/sip":{"source":"iana"},"message/sipfrag":{"source":"iana"},"message/tracking-status":{"source":"iana"},"message/vnd.si.simp":{"source":"iana"},"message/vnd.wfa.wsc":{"source":"iana","extensions":["wsc"]},"model/3mf":{"source":"iana","extensions":["3mf"]},"model/e57":{"source":"iana"},"model/gltf+json":{"source":"iana","compressible":true,"extensions":["gltf"]},"model/gltf-binary":{"source":"iana","compressible":true,"extensions":["glb"]},"model/iges":{"source":"iana","compressible":false,"extensions":["igs","iges"]},"model/mesh":{"source":"iana","compressible":false,"extensions":["msh","mesh","silo"]},"model/mtl":{"source":"iana","extensions":["mtl"]},"model/obj":{"source":"iana","extensions":["obj"]},"model/step+zip":{"source":"iana","compressible":false,"extensions":["stpz"]},"model/step-xml+zip":{"source":"iana","compressible":false,"extensions":["stpxz"]},"model/stl":{"source":"iana","extensions":["stl"]},"model/vnd.collada+xml":{"source":"iana","compressible":true,"extensions":["dae"]},"model/vnd.dwf":{"source":"iana","extensions":["dwf"]},"model/vnd.flatland.3dml":{"source":"iana"},"model/vnd.gdl":{"source":"iana","extensions":["gdl"]},"model/vnd.gs-gdl":{"source":"apache"},"model/vnd.gs.gdl":{"source":"iana"},"model/vnd.gtw":{"source":"iana","extensions":["gtw"]},"model/vnd.moml+xml":{"source":"iana","compressible":true},"model/vnd.mts":{"source":"iana","extensions":["mts"]},"model/vnd.opengex":{"source":"iana","extensions":["ogex"]},"model/vnd.parasolid.transmit.binary":{"source":"iana","extensions":["x_b"]},"model/vnd.parasolid.transmit.text":{"source":"iana","extensions":["x_t"]},"model/vnd.pytha.pyox":{"source":"iana"},"model/vnd.rosette.annotated-data-model":{"source":"iana"},"model/vnd.sap.vds":{"source":"iana","extensions":["vds"]},"model/vnd.usdz+zip":{"source":"iana","compressible":false,"extensions":["usdz"]},"model/vnd.valve.source.compiled-map":{"source":"iana","extensions":["bsp"]},"model/vnd.vtu":{"source":"iana","extensions":["vtu"]},"model/vrml":{"source":"iana","compressible":false,"extensions":["wrl","vrml"]},"model/x3d+binary":{"source":"apache","compressible":false,"extensions":["x3db","x3dbz"]},"model/x3d+fastinfoset":{"source":"iana","extensions":["x3db"]},"model/x3d+vrml":{"source":"apache","compressible":false,"extensions":["x3dv","x3dvz"]},"model/x3d+xml":{"source":"iana","compressible":true,"extensions":["x3d","x3dz"]},"model/x3d-vrml":{"source":"iana","extensions":["x3dv"]},"multipart/alternative":{"source":"iana","compressible":false},"multipart/appledouble":{"source":"iana"},"multipart/byteranges":{"source":"iana"},"multipart/digest":{"source":"iana"},"multipart/encrypted":{"source":"iana","compressible":false},"multipart/form-data":{"source":"iana","compressible":false},"multipart/header-set":{"source":"iana"},"multipart/mixed":{"source":"iana"},"multipart/multilingual":{"source":"iana"},"multipart/parallel":{"source":"iana"},"multipart/related":{"source":"iana","compressible":false},"multipart/report":{"source":"iana"},"multipart/signed":{"source":"iana","compressible":false},"multipart/vnd.bint.med-plus":{"source":"iana"},"multipart/voice-message":{"source":"iana"},"multipart/x-mixed-replace":{"source":"iana"},"text/1d-interleaved-parityfec":{"source":"iana"},"text/cache-manifest":{"source":"iana","compressible":true,"extensions":["appcache","manifest"]},"text/calendar":{"source":"iana","extensions":["ics","ifb"]},"text/calender":{"compressible":true},"text/cmd":{"compressible":true},"text/coffeescript":{"extensions":["coffee","litcoffee"]},"text/cql":{"source":"iana"},"text/cql-expression":{"source":"iana"},"text/cql-identifier":{"source":"iana"},"text/css":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["css"]},"text/csv":{"source":"iana","compressible":true,"extensions":["csv"]},"text/csv-schema":{"source":"iana"},"text/directory":{"source":"iana"},"text/dns":{"source":"iana"},"text/ecmascript":{"source":"iana"},"text/encaprtp":{"source":"iana"},"text/enriched":{"source":"iana"},"text/fhirpath":{"source":"iana"},"text/flexfec":{"source":"iana"},"text/fwdred":{"source":"iana"},"text/gff3":{"source":"iana"},"text/grammar-ref-list":{"source":"iana"},"text/html":{"source":"iana","compressible":true,"extensions":["html","htm","shtml"]},"text/jade":{"extensions":["jade"]},"text/javascript":{"source":"iana","compressible":true},"text/jcr-cnd":{"source":"iana"},"text/jsx":{"compressible":true,"extensions":["jsx"]},"text/less":{"compressible":true,"extensions":["less"]},"text/markdown":{"source":"iana","compressible":true,"extensions":["markdown","md"]},"text/mathml":{"source":"nginx","extensions":["mml"]},"text/mdx":{"compressible":true,"extensions":["mdx"]},"text/mizar":{"source":"iana"},"text/n3":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["n3"]},"text/parameters":{"source":"iana","charset":"UTF-8"},"text/parityfec":{"source":"iana"},"text/plain":{"source":"iana","compressible":true,"extensions":["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{"source":"iana","charset":"UTF-8"},"text/prs.fallenstein.rst":{"source":"iana"},"text/prs.lines.tag":{"source":"iana","extensions":["dsc"]},"text/prs.prop.logic":{"source":"iana"},"text/raptorfec":{"source":"iana"},"text/red":{"source":"iana"},"text/rfc822-headers":{"source":"iana"},"text/richtext":{"source":"iana","compressible":true,"extensions":["rtx"]},"text/rtf":{"source":"iana","compressible":true,"extensions":["rtf"]},"text/rtp-enc-aescm128":{"source":"iana"},"text/rtploopback":{"source":"iana"},"text/rtx":{"source":"iana"},"text/sgml":{"source":"iana","extensions":["sgml","sgm"]},"text/shaclc":{"source":"iana"},"text/shex":{"source":"iana","extensions":["shex"]},"text/slim":{"extensions":["slim","slm"]},"text/spdx":{"source":"iana","extensions":["spdx"]},"text/strings":{"source":"iana"},"text/stylus":{"extensions":["stylus","styl"]},"text/t140":{"source":"iana"},"text/tab-separated-values":{"source":"iana","compressible":true,"extensions":["tsv"]},"text/troff":{"source":"iana","extensions":["t","tr","roff","man","me","ms"]},"text/turtle":{"source":"iana","charset":"UTF-8","extensions":["ttl"]},"text/ulpfec":{"source":"iana"},"text/uri-list":{"source":"iana","compressible":true,"extensions":["uri","uris","urls"]},"text/vcard":{"source":"iana","compressible":true,"extensions":["vcard"]},"text/vnd.a":{"source":"iana"},"text/vnd.abc":{"source":"iana"},"text/vnd.ascii-art":{"source":"iana"},"text/vnd.curl":{"source":"iana","extensions":["curl"]},"text/vnd.curl.dcurl":{"source":"apache","extensions":["dcurl"]},"text/vnd.curl.mcurl":{"source":"apache","extensions":["mcurl"]},"text/vnd.curl.scurl":{"source":"apache","extensions":["scurl"]},"text/vnd.debian.copyright":{"source":"iana","charset":"UTF-8"},"text/vnd.dmclientscript":{"source":"iana"},"text/vnd.dvb.subtitle":{"source":"iana","extensions":["sub"]},"text/vnd.esmertec.theme-descriptor":{"source":"iana","charset":"UTF-8"},"text/vnd.ficlab.flt":{"source":"iana"},"text/vnd.fly":{"source":"iana","extensions":["fly"]},"text/vnd.fmi.flexstor":{"source":"iana","extensions":["flx"]},"text/vnd.gml":{"source":"iana"},"text/vnd.graphviz":{"source":"iana","extensions":["gv"]},"text/vnd.hans":{"source":"iana"},"text/vnd.hgl":{"source":"iana"},"text/vnd.in3d.3dml":{"source":"iana","extensions":["3dml"]},"text/vnd.in3d.spot":{"source":"iana","extensions":["spot"]},"text/vnd.iptc.newsml":{"source":"iana"},"text/vnd.iptc.nitf":{"source":"iana"},"text/vnd.latex-z":{"source":"iana"},"text/vnd.motorola.reflex":{"source":"iana"},"text/vnd.ms-mediapackage":{"source":"iana"},"text/vnd.net2phone.commcenter.command":{"source":"iana"},"text/vnd.radisys.msml-basic-layout":{"source":"iana"},"text/vnd.senx.warpscript":{"source":"iana"},"text/vnd.si.uricatalogue":{"source":"iana"},"text/vnd.sosi":{"source":"iana"},"text/vnd.sun.j2me.app-descriptor":{"source":"iana","charset":"UTF-8","extensions":["jad"]},"text/vnd.trolltech.linguist":{"source":"iana","charset":"UTF-8"},"text/vnd.wap.si":{"source":"iana"},"text/vnd.wap.sl":{"source":"iana"},"text/vnd.wap.wml":{"source":"iana","extensions":["wml"]},"text/vnd.wap.wmlscript":{"source":"iana","extensions":["wmls"]},"text/vtt":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["vtt"]},"text/x-asm":{"source":"apache","extensions":["s","asm"]},"text/x-c":{"source":"apache","extensions":["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{"source":"nginx","extensions":["htc"]},"text/x-fortran":{"source":"apache","extensions":["f","for","f77","f90"]},"text/x-gwt-rpc":{"compressible":true},"text/x-handlebars-template":{"extensions":["hbs"]},"text/x-java-source":{"source":"apache","extensions":["java"]},"text/x-jquery-tmpl":{"compressible":true},"text/x-lua":{"extensions":["lua"]},"text/x-markdown":{"compressible":true,"extensions":["mkd"]},"text/x-nfo":{"source":"apache","extensions":["nfo"]},"text/x-opml":{"source":"apache","extensions":["opml"]},"text/x-org":{"compressible":true,"extensions":["org"]},"text/x-pascal":{"source":"apache","extensions":["p","pas"]},"text/x-processing":{"compressible":true,"extensions":["pde"]},"text/x-sass":{"extensions":["sass"]},"text/x-scss":{"extensions":["scss"]},"text/x-setext":{"source":"apache","extensions":["etx"]},"text/x-sfv":{"source":"apache","extensions":["sfv"]},"text/x-suse-ymp":{"compressible":true,"extensions":["ymp"]},"text/x-uuencode":{"source":"apache","extensions":["uu"]},"text/x-vcalendar":{"source":"apache","extensions":["vcs"]},"text/x-vcard":{"source":"apache","extensions":["vcf"]},"text/xml":{"source":"iana","compressible":true,"extensions":["xml"]},"text/xml-external-parsed-entity":{"source":"iana"},"text/yaml":{"compressible":true,"extensions":["yaml","yml"]},"video/1d-interleaved-parityfec":{"source":"iana"},"video/3gpp":{"source":"iana","extensions":["3gp","3gpp"]},"video/3gpp-tt":{"source":"iana"},"video/3gpp2":{"source":"iana","extensions":["3g2"]},"video/av1":{"source":"iana"},"video/bmpeg":{"source":"iana"},"video/bt656":{"source":"iana"},"video/celb":{"source":"iana"},"video/dv":{"source":"iana"},"video/encaprtp":{"source":"iana"},"video/ffv1":{"source":"iana"},"video/flexfec":{"source":"iana"},"video/h261":{"source":"iana","extensions":["h261"]},"video/h263":{"source":"iana","extensions":["h263"]},"video/h263-1998":{"source":"iana"},"video/h263-2000":{"source":"iana"},"video/h264":{"source":"iana","extensions":["h264"]},"video/h264-rcdo":{"source":"iana"},"video/h264-svc":{"source":"iana"},"video/h265":{"source":"iana"},"video/iso.segment":{"source":"iana","extensions":["m4s"]},"video/jpeg":{"source":"iana","extensions":["jpgv"]},"video/jpeg2000":{"source":"iana"},"video/jpm":{"source":"apache","extensions":["jpm","jpgm"]},"video/mj2":{"source":"iana","extensions":["mj2","mjp2"]},"video/mp1s":{"source":"iana"},"video/mp2p":{"source":"iana"},"video/mp2t":{"source":"iana","extensions":["ts"]},"video/mp4":{"source":"iana","compressible":false,"extensions":["mp4","mp4v","mpg4"]},"video/mp4v-es":{"source":"iana"},"video/mpeg":{"source":"iana","compressible":false,"extensions":["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{"source":"iana"},"video/mpv":{"source":"iana"},"video/nv":{"source":"iana"},"video/ogg":{"source":"iana","compressible":false,"extensions":["ogv"]},"video/parityfec":{"source":"iana"},"video/pointer":{"source":"iana"},"video/quicktime":{"source":"iana","compressible":false,"extensions":["qt","mov"]},"video/raptorfec":{"source":"iana"},"video/raw":{"source":"iana"},"video/rtp-enc-aescm128":{"source":"iana"},"video/rtploopback":{"source":"iana"},"video/rtx":{"source":"iana"},"video/scip":{"source":"iana"},"video/smpte291":{"source":"iana"},"video/smpte292m":{"source":"iana"},"video/ulpfec":{"source":"iana"},"video/vc1":{"source":"iana"},"video/vc2":{"source":"iana"},"video/vnd.cctv":{"source":"iana"},"video/vnd.dece.hd":{"source":"iana","extensions":["uvh","uvvh"]},"video/vnd.dece.mobile":{"source":"iana","extensions":["uvm","uvvm"]},"video/vnd.dece.mp4":{"source":"iana"},"video/vnd.dece.pd":{"source":"iana","extensions":["uvp","uvvp"]},"video/vnd.dece.sd":{"source":"iana","extensions":["uvs","uvvs"]},"video/vnd.dece.video":{"source":"iana","extensions":["uvv","uvvv"]},"video/vnd.directv.mpeg":{"source":"iana"},"video/vnd.directv.mpeg-tts":{"source":"iana"},"video/vnd.dlna.mpeg-tts":{"source":"iana"},"video/vnd.dvb.file":{"source":"iana","extensions":["dvb"]},"video/vnd.fvt":{"source":"iana","extensions":["fvt"]},"video/vnd.hns.video":{"source":"iana"},"video/vnd.iptvforum.1dparityfec-1010":{"source":"iana"},"video/vnd.iptvforum.1dparityfec-2005":{"source":"iana"},"video/vnd.iptvforum.2dparityfec-1010":{"source":"iana"},"video/vnd.iptvforum.2dparityfec-2005":{"source":"iana"},"video/vnd.iptvforum.ttsavc":{"source":"iana"},"video/vnd.iptvforum.ttsmpeg2":{"source":"iana"},"video/vnd.motorola.video":{"source":"iana"},"video/vnd.motorola.videop":{"source":"iana"},"video/vnd.mpegurl":{"source":"iana","extensions":["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{"source":"iana","extensions":["pyv"]},"video/vnd.nokia.interleaved-multimedia":{"source":"iana"},"video/vnd.nokia.mp4vr":{"source":"iana"},"video/vnd.nokia.videovoip":{"source":"iana"},"video/vnd.objectvideo":{"source":"iana"},"video/vnd.radgamettools.bink":{"source":"iana"},"video/vnd.radgamettools.smacker":{"source":"iana"},"video/vnd.sealed.mpeg1":{"source":"iana"},"video/vnd.sealed.mpeg4":{"source":"iana"},"video/vnd.sealed.swf":{"source":"iana"},"video/vnd.sealedmedia.softseal.mov":{"source":"iana"},"video/vnd.uvvu.mp4":{"source":"iana","extensions":["uvu","uvvu"]},"video/vnd.vivo":{"source":"iana","extensions":["viv"]},"video/vnd.youtube.yt":{"source":"iana"},"video/vp8":{"source":"iana"},"video/vp9":{"source":"iana"},"video/webm":{"source":"apache","compressible":false,"extensions":["webm"]},"video/x-f4v":{"source":"apache","extensions":["f4v"]},"video/x-fli":{"source":"apache","extensions":["fli"]},"video/x-flv":{"source":"apache","compressible":false,"extensions":["flv"]},"video/x-m4v":{"source":"apache","extensions":["m4v"]},"video/x-matroska":{"source":"apache","compressible":false,"extensions":["mkv","mk3d","mks"]},"video/x-mng":{"source":"apache","extensions":["mng"]},"video/x-ms-asf":{"source":"apache","extensions":["asf","asx"]},"video/x-ms-vob":{"source":"apache","extensions":["vob"]},"video/x-ms-wm":{"source":"apache","extensions":["wm"]},"video/x-ms-wmv":{"source":"apache","compressible":false,"extensions":["wmv"]},"video/x-ms-wmx":{"source":"apache","extensions":["wmx"]},"video/x-ms-wvx":{"source":"apache","extensions":["wvx"]},"video/x-msvideo":{"source":"apache","extensions":["avi"]},"video/x-sgi-movie":{"source":"apache","extensions":["movie"]},"video/x-smv":{"source":"apache","extensions":["smv"]},"x-conference/x-cooltalk":{"source":"apache","extensions":["ice"]},"x-shader/x-fragment":{"compressible":true},"x-shader/x-vertex":{"compressible":true}};
|
|
39275
39819
|
|
|
39276
39820
|
/***/ }),
|
|
39277
39821
|
/* 524 */,
|
|
@@ -39355,7 +39899,8 @@ module.exports = function dispatchRequest(config) {
|
|
|
39355
39899
|
config.headers = config.headers || {};
|
|
39356
39900
|
|
|
39357
39901
|
// Transform request data
|
|
39358
|
-
config.data = transformData(
|
|
39902
|
+
config.data = transformData.call(
|
|
39903
|
+
config,
|
|
39359
39904
|
config.data,
|
|
39360
39905
|
config.headers,
|
|
39361
39906
|
config.transformRequest
|
|
@@ -39381,7 +39926,8 @@ module.exports = function dispatchRequest(config) {
|
|
|
39381
39926
|
throwIfCancellationRequested(config);
|
|
39382
39927
|
|
|
39383
39928
|
// Transform response data
|
|
39384
|
-
response.data = transformData(
|
|
39929
|
+
response.data = transformData.call(
|
|
39930
|
+
config,
|
|
39385
39931
|
response.data,
|
|
39386
39932
|
response.headers,
|
|
39387
39933
|
config.transformResponse
|
|
@@ -39394,7 +39940,8 @@ module.exports = function dispatchRequest(config) {
|
|
|
39394
39940
|
|
|
39395
39941
|
// Transform response data
|
|
39396
39942
|
if (reason && reason.response) {
|
|
39397
|
-
reason.response.data = transformData(
|
|
39943
|
+
reason.response.data = transformData.call(
|
|
39944
|
+
config,
|
|
39398
39945
|
reason.response.data,
|
|
39399
39946
|
reason.response.headers,
|
|
39400
39947
|
config.transformResponse
|
|
@@ -41284,7 +41831,21 @@ module.exports.promise = (action, options) => {
|
|
|
41284
41831
|
module.exports = require("https");
|
|
41285
41832
|
|
|
41286
41833
|
/***/ }),
|
|
41287
|
-
/* 584
|
|
41834
|
+
/* 584 */
|
|
41835
|
+
/***/ (function(module) {
|
|
41836
|
+
|
|
41837
|
+
"use strict";
|
|
41838
|
+
|
|
41839
|
+
module.exports = (flag, argv) => {
|
|
41840
|
+
argv = argv || process.argv;
|
|
41841
|
+
const prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--');
|
|
41842
|
+
const pos = argv.indexOf(prefix + flag);
|
|
41843
|
+
const terminatorPos = argv.indexOf('--');
|
|
41844
|
+
return pos !== -1 && (terminatorPos === -1 ? true : pos < terminatorPos);
|
|
41845
|
+
};
|
|
41846
|
+
|
|
41847
|
+
|
|
41848
|
+
/***/ }),
|
|
41288
41849
|
/* 585 */
|
|
41289
41850
|
/***/ (function(__unusedmodule, exports, __webpack_require__) {
|
|
41290
41851
|
|
|
@@ -42518,7 +43079,7 @@ inquirer.createPromptModule = function(opt) {
|
|
|
42518
43079
|
this.registerPrompt('number', __webpack_require__(736));
|
|
42519
43080
|
this.registerPrompt('confirm', __webpack_require__(756));
|
|
42520
43081
|
this.registerPrompt('rawlist', __webpack_require__(775));
|
|
42521
|
-
this.registerPrompt('expand', __webpack_require__(
|
|
43082
|
+
this.registerPrompt('expand', __webpack_require__(82));
|
|
42522
43083
|
this.registerPrompt('checkbox', __webpack_require__(27));
|
|
42523
43084
|
this.registerPrompt('password', __webpack_require__(574));
|
|
42524
43085
|
this.registerPrompt('editor', __webpack_require__(712));
|
|
@@ -42578,285 +43139,17 @@ module.exports = function createError(message, config, code, request, response)
|
|
|
42578
43139
|
/* 599 */,
|
|
42579
43140
|
/* 600 */,
|
|
42580
43141
|
/* 601 */
|
|
42581
|
-
/***/ (function(module
|
|
43142
|
+
/***/ (function(module) {
|
|
42582
43143
|
|
|
42583
43144
|
"use strict";
|
|
42584
43145
|
|
|
42585
|
-
|
|
42586
|
-
|
|
42587
|
-
|
|
42588
|
-
|
|
42589
|
-
|
|
42590
|
-
|
|
42591
|
-
|
|
42592
|
-
var Base = __webpack_require__(966);
|
|
42593
|
-
var Separator = __webpack_require__(81);
|
|
42594
|
-
var observe = __webpack_require__(595);
|
|
42595
|
-
var Paginator = __webpack_require__(784);
|
|
42596
|
-
|
|
42597
|
-
class ExpandPrompt extends Base {
|
|
42598
|
-
constructor(questions, rl, answers) {
|
|
42599
|
-
super(questions, rl, answers);
|
|
42600
|
-
|
|
42601
|
-
if (!this.opt.choices) {
|
|
42602
|
-
this.throwParamError('choices');
|
|
42603
|
-
}
|
|
42604
|
-
|
|
42605
|
-
this.validateChoices(this.opt.choices);
|
|
42606
|
-
|
|
42607
|
-
// Add the default `help` (/expand) option
|
|
42608
|
-
this.opt.choices.push({
|
|
42609
|
-
key: 'h',
|
|
42610
|
-
name: 'Help, list all options',
|
|
42611
|
-
value: 'help'
|
|
42612
|
-
});
|
|
42613
|
-
|
|
42614
|
-
this.opt.validate = choice => {
|
|
42615
|
-
if (choice == null) {
|
|
42616
|
-
return 'Please enter a valid command';
|
|
42617
|
-
}
|
|
42618
|
-
|
|
42619
|
-
return choice !== 'help';
|
|
42620
|
-
};
|
|
42621
|
-
|
|
42622
|
-
// Setup the default string (capitalize the default key)
|
|
42623
|
-
this.opt.default = this.generateChoicesString(this.opt.choices, this.opt.default);
|
|
42624
|
-
|
|
42625
|
-
this.paginator = new Paginator(this.screen);
|
|
42626
|
-
}
|
|
42627
|
-
|
|
42628
|
-
/**
|
|
42629
|
-
* Start the Inquiry session
|
|
42630
|
-
* @param {Function} cb Callback when prompt is done
|
|
42631
|
-
* @return {this}
|
|
42632
|
-
*/
|
|
42633
|
-
|
|
42634
|
-
_run(cb) {
|
|
42635
|
-
this.done = cb;
|
|
42636
|
-
|
|
42637
|
-
// Save user answer and update prompt to show selected option.
|
|
42638
|
-
var events = observe(this.rl);
|
|
42639
|
-
var validation = this.handleSubmitEvents(
|
|
42640
|
-
events.line.pipe(map(this.getCurrentValue.bind(this)))
|
|
42641
|
-
);
|
|
42642
|
-
validation.success.forEach(this.onSubmit.bind(this));
|
|
42643
|
-
validation.error.forEach(this.onError.bind(this));
|
|
42644
|
-
this.keypressObs = events.keypress
|
|
42645
|
-
.pipe(takeUntil(validation.success))
|
|
42646
|
-
.forEach(this.onKeypress.bind(this));
|
|
42647
|
-
|
|
42648
|
-
// Init the prompt
|
|
42649
|
-
this.render();
|
|
42650
|
-
|
|
42651
|
-
return this;
|
|
42652
|
-
}
|
|
42653
|
-
|
|
42654
|
-
/**
|
|
42655
|
-
* Render the prompt to screen
|
|
42656
|
-
* @return {ExpandPrompt} self
|
|
42657
|
-
*/
|
|
42658
|
-
|
|
42659
|
-
render(error, hint) {
|
|
42660
|
-
var message = this.getQuestion();
|
|
42661
|
-
var bottomContent = '';
|
|
42662
|
-
|
|
42663
|
-
if (this.status === 'answered') {
|
|
42664
|
-
message += chalk.cyan(this.answer);
|
|
42665
|
-
} else if (this.status === 'expanded') {
|
|
42666
|
-
var choicesStr = renderChoices(this.opt.choices, this.selectedKey);
|
|
42667
|
-
message += this.paginator.paginate(choicesStr, this.selectedKey, this.opt.pageSize);
|
|
42668
|
-
message += '\n Answer: ';
|
|
42669
|
-
}
|
|
42670
|
-
|
|
42671
|
-
message += this.rl.line;
|
|
42672
|
-
|
|
42673
|
-
if (error) {
|
|
42674
|
-
bottomContent = chalk.red('>> ') + error;
|
|
42675
|
-
}
|
|
42676
|
-
|
|
42677
|
-
if (hint) {
|
|
42678
|
-
bottomContent = chalk.cyan('>> ') + hint;
|
|
42679
|
-
}
|
|
42680
|
-
|
|
42681
|
-
this.screen.render(message, bottomContent);
|
|
42682
|
-
}
|
|
42683
|
-
|
|
42684
|
-
getCurrentValue(input) {
|
|
42685
|
-
if (!input) {
|
|
42686
|
-
input = this.rawDefault;
|
|
42687
|
-
}
|
|
42688
|
-
|
|
42689
|
-
var selected = this.opt.choices.where({ key: input.toLowerCase().trim() })[0];
|
|
42690
|
-
if (!selected) {
|
|
42691
|
-
return null;
|
|
42692
|
-
}
|
|
42693
|
-
|
|
42694
|
-
return selected.value;
|
|
42695
|
-
}
|
|
42696
|
-
|
|
42697
|
-
/**
|
|
42698
|
-
* Generate the prompt choices string
|
|
42699
|
-
* @return {String} Choices string
|
|
42700
|
-
*/
|
|
42701
|
-
|
|
42702
|
-
getChoices() {
|
|
42703
|
-
var output = '';
|
|
42704
|
-
|
|
42705
|
-
this.opt.choices.forEach(choice => {
|
|
42706
|
-
output += '\n ';
|
|
42707
|
-
|
|
42708
|
-
if (choice.type === 'separator') {
|
|
42709
|
-
output += ' ' + choice;
|
|
42710
|
-
return;
|
|
42711
|
-
}
|
|
42712
|
-
|
|
42713
|
-
var choiceStr = choice.key + ') ' + choice.name;
|
|
42714
|
-
if (this.selectedKey === choice.key) {
|
|
42715
|
-
choiceStr = chalk.cyan(choiceStr);
|
|
42716
|
-
}
|
|
42717
|
-
|
|
42718
|
-
output += choiceStr;
|
|
42719
|
-
});
|
|
42720
|
-
|
|
42721
|
-
return output;
|
|
42722
|
-
}
|
|
42723
|
-
|
|
42724
|
-
onError(state) {
|
|
42725
|
-
if (state.value === 'help') {
|
|
42726
|
-
this.selectedKey = '';
|
|
42727
|
-
this.status = 'expanded';
|
|
42728
|
-
this.render();
|
|
42729
|
-
return;
|
|
42730
|
-
}
|
|
42731
|
-
|
|
42732
|
-
this.render(state.isValid);
|
|
42733
|
-
}
|
|
42734
|
-
|
|
42735
|
-
/**
|
|
42736
|
-
* When user press `enter` key
|
|
42737
|
-
*/
|
|
42738
|
-
|
|
42739
|
-
onSubmit(state) {
|
|
42740
|
-
this.status = 'answered';
|
|
42741
|
-
var choice = this.opt.choices.where({ value: state.value })[0];
|
|
42742
|
-
this.answer = choice.short || choice.name;
|
|
42743
|
-
|
|
42744
|
-
// Re-render prompt
|
|
42745
|
-
this.render();
|
|
42746
|
-
this.screen.done();
|
|
42747
|
-
this.done(state.value);
|
|
42748
|
-
}
|
|
42749
|
-
|
|
42750
|
-
/**
|
|
42751
|
-
* When user press a key
|
|
42752
|
-
*/
|
|
42753
|
-
|
|
42754
|
-
onKeypress() {
|
|
42755
|
-
this.selectedKey = this.rl.line.toLowerCase();
|
|
42756
|
-
var selected = this.opt.choices.where({ key: this.selectedKey })[0];
|
|
42757
|
-
if (this.status === 'expanded') {
|
|
42758
|
-
this.render();
|
|
42759
|
-
} else {
|
|
42760
|
-
this.render(null, selected ? selected.name : null);
|
|
42761
|
-
}
|
|
42762
|
-
}
|
|
42763
|
-
|
|
42764
|
-
/**
|
|
42765
|
-
* Validate the choices
|
|
42766
|
-
* @param {Array} choices
|
|
42767
|
-
*/
|
|
42768
|
-
|
|
42769
|
-
validateChoices(choices) {
|
|
42770
|
-
var formatError;
|
|
42771
|
-
var errors = [];
|
|
42772
|
-
var keymap = {};
|
|
42773
|
-
choices.filter(Separator.exclude).forEach(choice => {
|
|
42774
|
-
if (!choice.key || choice.key.length !== 1) {
|
|
42775
|
-
formatError = true;
|
|
42776
|
-
}
|
|
42777
|
-
|
|
42778
|
-
if (keymap[choice.key]) {
|
|
42779
|
-
errors.push(choice.key);
|
|
42780
|
-
}
|
|
42781
|
-
|
|
42782
|
-
keymap[choice.key] = true;
|
|
42783
|
-
choice.key = String(choice.key).toLowerCase();
|
|
42784
|
-
});
|
|
42785
|
-
|
|
42786
|
-
if (formatError) {
|
|
42787
|
-
throw new Error(
|
|
42788
|
-
'Format error: `key` param must be a single letter and is required.'
|
|
42789
|
-
);
|
|
42790
|
-
}
|
|
42791
|
-
|
|
42792
|
-
if (keymap.h) {
|
|
42793
|
-
throw new Error(
|
|
42794
|
-
'Reserved key error: `key` param cannot be `h` - this value is reserved.'
|
|
42795
|
-
);
|
|
42796
|
-
}
|
|
42797
|
-
|
|
42798
|
-
if (errors.length) {
|
|
42799
|
-
throw new Error(
|
|
42800
|
-
'Duplicate key error: `key` param must be unique. Duplicates: ' +
|
|
42801
|
-
_.uniq(errors).join(', ')
|
|
42802
|
-
);
|
|
42803
|
-
}
|
|
42804
|
-
}
|
|
42805
|
-
|
|
42806
|
-
/**
|
|
42807
|
-
* Generate a string out of the choices keys
|
|
42808
|
-
* @param {Array} choices
|
|
42809
|
-
* @param {Number|String} default - the choice index or name to capitalize
|
|
42810
|
-
* @return {String} The rendered choices key string
|
|
42811
|
-
*/
|
|
42812
|
-
generateChoicesString(choices, defaultChoice) {
|
|
42813
|
-
var defIndex = choices.realLength - 1;
|
|
42814
|
-
if (_.isNumber(defaultChoice) && this.opt.choices.getChoice(defaultChoice)) {
|
|
42815
|
-
defIndex = defaultChoice;
|
|
42816
|
-
} else if (_.isString(defaultChoice)) {
|
|
42817
|
-
let index = _.findIndex(
|
|
42818
|
-
choices.realChoices,
|
|
42819
|
-
({ value }) => value === defaultChoice
|
|
42820
|
-
);
|
|
42821
|
-
defIndex = index === -1 ? defIndex : index;
|
|
42822
|
-
}
|
|
42823
|
-
|
|
42824
|
-
var defStr = this.opt.choices.pluck('key');
|
|
42825
|
-
this.rawDefault = defStr[defIndex];
|
|
42826
|
-
defStr[defIndex] = String(defStr[defIndex]).toUpperCase();
|
|
42827
|
-
return defStr.join('');
|
|
42828
|
-
}
|
|
42829
|
-
}
|
|
42830
|
-
|
|
42831
|
-
/**
|
|
42832
|
-
* Function for rendering checkbox choices
|
|
42833
|
-
* @param {String} pointer Selected key
|
|
42834
|
-
* @return {String} Rendered content
|
|
42835
|
-
*/
|
|
42836
|
-
|
|
42837
|
-
function renderChoices(choices, pointer) {
|
|
42838
|
-
var output = '';
|
|
42839
|
-
|
|
42840
|
-
choices.forEach(choice => {
|
|
42841
|
-
output += '\n ';
|
|
42842
|
-
|
|
42843
|
-
if (choice.type === 'separator') {
|
|
42844
|
-
output += ' ' + choice;
|
|
42845
|
-
return;
|
|
42846
|
-
}
|
|
42847
|
-
|
|
42848
|
-
var choiceStr = choice.key + ') ' + choice.name;
|
|
42849
|
-
if (pointer === choice.key) {
|
|
42850
|
-
choiceStr = chalk.cyan(choiceStr);
|
|
42851
|
-
}
|
|
42852
|
-
|
|
42853
|
-
output += choiceStr;
|
|
42854
|
-
});
|
|
42855
|
-
|
|
42856
|
-
return output;
|
|
42857
|
-
}
|
|
42858
|
-
|
|
42859
|
-
module.exports = ExpandPrompt;
|
|
43146
|
+
module.exports = (flag, argv) => {
|
|
43147
|
+
argv = argv || process.argv;
|
|
43148
|
+
const prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--');
|
|
43149
|
+
const pos = argv.indexOf(prefix + flag);
|
|
43150
|
+
const terminatorPos = argv.indexOf('--');
|
|
43151
|
+
return pos !== -1 && (terminatorPos === -1 ? true : pos < terminatorPos);
|
|
43152
|
+
};
|
|
42860
43153
|
|
|
42861
43154
|
|
|
42862
43155
|
/***/ }),
|
|
@@ -43678,9 +43971,16 @@ module.exports = function httpAdapter(config) {
|
|
|
43678
43971
|
var headers = config.headers;
|
|
43679
43972
|
|
|
43680
43973
|
// Set User-Agent (required by some servers)
|
|
43681
|
-
// Only set header if it hasn't been set in config
|
|
43682
43974
|
// See https://github.com/axios/axios/issues/69
|
|
43683
|
-
if (
|
|
43975
|
+
if ('User-Agent' in headers || 'user-agent' in headers) {
|
|
43976
|
+
// User-Agent is specified; handle case where no UA header is desired
|
|
43977
|
+
if (!headers['User-Agent'] && !headers['user-agent']) {
|
|
43978
|
+
delete headers['User-Agent'];
|
|
43979
|
+
delete headers['user-agent'];
|
|
43980
|
+
}
|
|
43981
|
+
// Otherwise, use specified value
|
|
43982
|
+
} else {
|
|
43983
|
+
// Only set header if it hasn't been set in config
|
|
43684
43984
|
headers['User-Agent'] = 'axios/' + pkg.version;
|
|
43685
43985
|
}
|
|
43686
43986
|
|
|
@@ -43855,11 +44155,13 @@ module.exports = function httpAdapter(config) {
|
|
|
43855
44155
|
settle(resolve, reject, response);
|
|
43856
44156
|
} else {
|
|
43857
44157
|
var responseBuffer = [];
|
|
44158
|
+
var totalResponseBytes = 0;
|
|
43858
44159
|
stream.on('data', function handleStreamData(chunk) {
|
|
43859
44160
|
responseBuffer.push(chunk);
|
|
44161
|
+
totalResponseBytes += chunk.length;
|
|
43860
44162
|
|
|
43861
44163
|
// make sure the content length is not over the maxContentLength if specified
|
|
43862
|
-
if (config.maxContentLength > -1 &&
|
|
44164
|
+
if (config.maxContentLength > -1 && totalResponseBytes > config.maxContentLength) {
|
|
43863
44165
|
stream.destroy();
|
|
43864
44166
|
reject(createError('maxContentLength size of ' + config.maxContentLength + ' exceeded',
|
|
43865
44167
|
config, null, lastRequest));
|
|
@@ -43894,14 +44196,33 @@ module.exports = function httpAdapter(config) {
|
|
|
43894
44196
|
|
|
43895
44197
|
// Handle request timeout
|
|
43896
44198
|
if (config.timeout) {
|
|
44199
|
+
// This is forcing a int timeout to avoid problems if the `req` interface doesn't handle other types.
|
|
44200
|
+
var timeout = parseInt(config.timeout, 10);
|
|
44201
|
+
|
|
44202
|
+
if (isNaN(timeout)) {
|
|
44203
|
+
reject(createError(
|
|
44204
|
+
'error trying to parse `config.timeout` to int',
|
|
44205
|
+
config,
|
|
44206
|
+
'ERR_PARSE_TIMEOUT',
|
|
44207
|
+
req
|
|
44208
|
+
));
|
|
44209
|
+
|
|
44210
|
+
return;
|
|
44211
|
+
}
|
|
44212
|
+
|
|
43897
44213
|
// Sometime, the response will be very slow, and does not respond, the connect event will be block by event loop system.
|
|
43898
44214
|
// And timer callback will be fired, and abort() will be invoked before connection, then get "socket hang up" and code ECONNRESET.
|
|
43899
44215
|
// At this time, if we have a large number of request, nodejs will hang up some socket on background. and the number will up and up.
|
|
43900
44216
|
// And then these socket which be hang up will devoring CPU little by little.
|
|
43901
44217
|
// ClientRequest.setTimeout will be fired on the specify milliseconds, and can make sure that abort() will be fired after connect.
|
|
43902
|
-
req.setTimeout(
|
|
44218
|
+
req.setTimeout(timeout, function handleRequestTimeout() {
|
|
43903
44219
|
req.abort();
|
|
43904
|
-
reject(createError(
|
|
44220
|
+
reject(createError(
|
|
44221
|
+
'timeout of ' + timeout + 'ms exceeded',
|
|
44222
|
+
config,
|
|
44223
|
+
config.transitional && config.transitional.clarifyTimeoutError ? 'ETIMEDOUT' : 'ECONNABORTED',
|
|
44224
|
+
req
|
|
44225
|
+
));
|
|
43905
44226
|
});
|
|
43906
44227
|
}
|
|
43907
44228
|
|
|
@@ -44411,7 +44732,7 @@ exports.isNumeric = isNumeric;
|
|
|
44411
44732
|
/* 639 */
|
|
44412
44733
|
/***/ (function(module) {
|
|
44413
44734
|
|
|
44414
|
-
module.exports = {"name":"axios","version":"0.21.
|
|
44735
|
+
module.exports = {"name":"axios","version":"0.21.3","description":"Promise based HTTP client for the browser and node.js","main":"index.js","scripts":{"test":"grunt test","start":"node ./sandbox/server.js","build":"NODE_ENV=production grunt build","preversion":"npm test","version":"npm run build && grunt version && git add -A dist && git add CHANGELOG.md bower.json package.json","postversion":"git push && git push --tags","examples":"node ./examples/server.js","coveralls":"cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js","fix":"eslint --fix lib/**/*.js"},"repository":{"type":"git","url":"https://github.com/axios/axios.git"},"keywords":["xhr","http","ajax","promise","node"],"author":"Matt Zabriskie","license":"MIT","bugs":{"url":"https://github.com/axios/axios/issues"},"homepage":"https://axios-http.com","devDependencies":{"coveralls":"^3.0.0","es6-promise":"^4.2.4","grunt":"^1.3.0","grunt-banner":"^0.6.0","grunt-cli":"^1.2.0","grunt-contrib-clean":"^1.1.0","grunt-contrib-watch":"^1.0.0","grunt-eslint":"^23.0.0","grunt-karma":"^4.0.0","grunt-mocha-test":"^0.13.3","grunt-ts":"^6.0.0-beta.19","grunt-webpack":"^4.0.2","istanbul-instrumenter-loader":"^1.0.0","jasmine-core":"^2.4.1","karma":"^6.3.2","karma-chrome-launcher":"^3.1.0","karma-firefox-launcher":"^2.1.0","karma-jasmine":"^1.1.1","karma-jasmine-ajax":"^0.1.13","karma-safari-launcher":"^1.0.0","karma-sauce-launcher":"^4.3.6","karma-sinon":"^1.0.5","karma-sourcemap-loader":"^0.3.8","karma-webpack":"^4.0.2","load-grunt-tasks":"^3.5.2","minimist":"^1.2.0","mocha":"^8.2.1","sinon":"^4.5.0","terser-webpack-plugin":"^4.2.3","typescript":"^4.0.5","url-search-params":"^0.10.0","webpack":"^4.44.2","webpack-dev-server":"^3.11.0"},"browser":{"./lib/adapters/http.js":"./lib/adapters/xhr.js"},"jsdelivr":"dist/axios.min.js","unpkg":"dist/axios.min.js","typings":"./index.d.ts","dependencies":{"follow-redirects":"^1.14.0"},"bundlesize":[{"path":"./dist/axios.min.js","threshold":"5kB"}]};
|
|
44415
44736
|
|
|
44416
44737
|
/***/ }),
|
|
44417
44738
|
/* 640 */
|
|
@@ -45891,7 +46212,7 @@ RedirectableRequest.prototype.setTimeout = function (msecs, callback) {
|
|
|
45891
46212
|
|
|
45892
46213
|
// Prevent a timeout from triggering
|
|
45893
46214
|
function clearTimer() {
|
|
45894
|
-
clearTimeout(
|
|
46215
|
+
clearTimeout(self._timeout);
|
|
45895
46216
|
if (callback) {
|
|
45896
46217
|
self.removeListener("timeout", callback);
|
|
45897
46218
|
}
|
|
@@ -46311,7 +46632,21 @@ exports.clearLine = function(rl, len) {
|
|
|
46311
46632
|
|
|
46312
46633
|
/***/ }),
|
|
46313
46634
|
/* 678 */,
|
|
46314
|
-
/* 679
|
|
46635
|
+
/* 679 */
|
|
46636
|
+
/***/ (function(module) {
|
|
46637
|
+
|
|
46638
|
+
"use strict";
|
|
46639
|
+
|
|
46640
|
+
module.exports = (flag, argv) => {
|
|
46641
|
+
argv = argv || process.argv;
|
|
46642
|
+
const prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--');
|
|
46643
|
+
const pos = argv.indexOf(prefix + flag);
|
|
46644
|
+
const terminatorPos = argv.indexOf('--');
|
|
46645
|
+
return pos !== -1 && (terminatorPos === -1 ? true : pos < terminatorPos);
|
|
46646
|
+
};
|
|
46647
|
+
|
|
46648
|
+
|
|
46649
|
+
/***/ }),
|
|
46315
46650
|
/* 680 */,
|
|
46316
46651
|
/* 681 */,
|
|
46317
46652
|
/* 682 */
|
|
@@ -47753,7 +48088,20 @@ var ExhaustMapSubscriber = (function (_super) {
|
|
|
47753
48088
|
|
|
47754
48089
|
/***/ }),
|
|
47755
48090
|
/* 715 */,
|
|
47756
|
-
/* 716
|
|
48091
|
+
/* 716 */
|
|
48092
|
+
/***/ (function(module) {
|
|
48093
|
+
|
|
48094
|
+
// on windows, either \ or / are valid directory separators.
|
|
48095
|
+
// on unix, \ is a valid character in filenames.
|
|
48096
|
+
// so, on windows, and only on windows, we replace all \ chars with /,
|
|
48097
|
+
// so that we can use / as our one and only directory separator char.
|
|
48098
|
+
|
|
48099
|
+
const platform = process.env.TESTING_TAR_FAKE_PLATFORM || process.platform
|
|
48100
|
+
module.exports = platform !== 'win32' ? p => p
|
|
48101
|
+
: p => p && p.replace(/\\/g, '/')
|
|
48102
|
+
|
|
48103
|
+
|
|
48104
|
+
/***/ }),
|
|
47757
48105
|
/* 717 */
|
|
47758
48106
|
/***/ (function(__unusedmodule, exports, __webpack_require__) {
|
|
47759
48107
|
|
|
@@ -47863,7 +48211,9 @@ var buildURL = __webpack_require__(844);
|
|
|
47863
48211
|
var InterceptorManager = __webpack_require__(504);
|
|
47864
48212
|
var dispatchRequest = __webpack_require__(531);
|
|
47865
48213
|
var mergeConfig = __webpack_require__(617);
|
|
48214
|
+
var validator = __webpack_require__(368);
|
|
47866
48215
|
|
|
48216
|
+
var validators = validator.validators;
|
|
47867
48217
|
/**
|
|
47868
48218
|
* Create a new instance of Axios
|
|
47869
48219
|
*
|
|
@@ -47903,20 +48253,71 @@ Axios.prototype.request = function request(config) {
|
|
|
47903
48253
|
config.method = 'get';
|
|
47904
48254
|
}
|
|
47905
48255
|
|
|
47906
|
-
|
|
47907
|
-
var chain = [dispatchRequest, undefined];
|
|
47908
|
-
var promise = Promise.resolve(config);
|
|
48256
|
+
var transitional = config.transitional;
|
|
47909
48257
|
|
|
48258
|
+
if (transitional !== undefined) {
|
|
48259
|
+
validator.assertOptions(transitional, {
|
|
48260
|
+
silentJSONParsing: validators.transitional(validators.boolean, '1.0.0'),
|
|
48261
|
+
forcedJSONParsing: validators.transitional(validators.boolean, '1.0.0'),
|
|
48262
|
+
clarifyTimeoutError: validators.transitional(validators.boolean, '1.0.0')
|
|
48263
|
+
}, false);
|
|
48264
|
+
}
|
|
48265
|
+
|
|
48266
|
+
// filter out skipped interceptors
|
|
48267
|
+
var requestInterceptorChain = [];
|
|
48268
|
+
var synchronousRequestInterceptors = true;
|
|
47910
48269
|
this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {
|
|
47911
|
-
|
|
48270
|
+
if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {
|
|
48271
|
+
return;
|
|
48272
|
+
}
|
|
48273
|
+
|
|
48274
|
+
synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;
|
|
48275
|
+
|
|
48276
|
+
requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);
|
|
47912
48277
|
});
|
|
47913
48278
|
|
|
48279
|
+
var responseInterceptorChain = [];
|
|
47914
48280
|
this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {
|
|
47915
|
-
|
|
48281
|
+
responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);
|
|
47916
48282
|
});
|
|
47917
48283
|
|
|
47918
|
-
|
|
47919
|
-
|
|
48284
|
+
var promise;
|
|
48285
|
+
|
|
48286
|
+
if (!synchronousRequestInterceptors) {
|
|
48287
|
+
var chain = [dispatchRequest, undefined];
|
|
48288
|
+
|
|
48289
|
+
Array.prototype.unshift.apply(chain, requestInterceptorChain);
|
|
48290
|
+
chain = chain.concat(responseInterceptorChain);
|
|
48291
|
+
|
|
48292
|
+
promise = Promise.resolve(config);
|
|
48293
|
+
while (chain.length) {
|
|
48294
|
+
promise = promise.then(chain.shift(), chain.shift());
|
|
48295
|
+
}
|
|
48296
|
+
|
|
48297
|
+
return promise;
|
|
48298
|
+
}
|
|
48299
|
+
|
|
48300
|
+
|
|
48301
|
+
var newConfig = config;
|
|
48302
|
+
while (requestInterceptorChain.length) {
|
|
48303
|
+
var onFulfilled = requestInterceptorChain.shift();
|
|
48304
|
+
var onRejected = requestInterceptorChain.shift();
|
|
48305
|
+
try {
|
|
48306
|
+
newConfig = onFulfilled(newConfig);
|
|
48307
|
+
} catch (error) {
|
|
48308
|
+
onRejected(error);
|
|
48309
|
+
break;
|
|
48310
|
+
}
|
|
48311
|
+
}
|
|
48312
|
+
|
|
48313
|
+
try {
|
|
48314
|
+
promise = dispatchRequest(newConfig);
|
|
48315
|
+
} catch (error) {
|
|
48316
|
+
return Promise.reject(error);
|
|
48317
|
+
}
|
|
48318
|
+
|
|
48319
|
+
while (responseInterceptorChain.length) {
|
|
48320
|
+
promise = promise.then(responseInterceptorChain.shift(), responseInterceptorChain.shift());
|
|
47920
48321
|
}
|
|
47921
48322
|
|
|
47922
48323
|
return promise;
|
|
@@ -50451,13 +50852,23 @@ if (typeof Object.create === 'function') {
|
|
|
50451
50852
|
const { isAbsolute, parse } = __webpack_require__(622).win32
|
|
50452
50853
|
|
|
50453
50854
|
// returns [root, stripped]
|
|
50855
|
+
// Note that windows will think that //x/y/z/a has a "root" of //x/y, and in
|
|
50856
|
+
// those cases, we want to sanitize it to x/y/z/a, not z/a, so we strip /
|
|
50857
|
+
// explicitly if it's the first character.
|
|
50858
|
+
// drive-specific relative paths on Windows get their root stripped off even
|
|
50859
|
+
// though they are not absolute, so `c:../foo` becomes ['c:', '../foo']
|
|
50454
50860
|
module.exports = path => {
|
|
50455
50861
|
let r = ''
|
|
50456
|
-
|
|
50862
|
+
|
|
50863
|
+
let parsed = parse(path)
|
|
50864
|
+
while (isAbsolute(path) || parsed.root) {
|
|
50457
50865
|
// windows will think that //x/y/z has a "root" of //x/y/
|
|
50458
|
-
|
|
50866
|
+
// but strip the //?/C:/ off of //?/C:/path
|
|
50867
|
+
const root = path.charAt(0) === '/' && path.slice(0, 4) !== '//?/' ? '/'
|
|
50868
|
+
: parsed.root
|
|
50459
50869
|
path = path.substr(root.length)
|
|
50460
50870
|
r += root
|
|
50871
|
+
parsed = parse(path)
|
|
50461
50872
|
}
|
|
50462
50873
|
return [r, path]
|
|
50463
50874
|
}
|
|
@@ -51492,6 +51903,7 @@ const Unpack = __webpack_require__(819)
|
|
|
51492
51903
|
const fs = __webpack_require__(747)
|
|
51493
51904
|
const fsm = __webpack_require__(285)
|
|
51494
51905
|
const path = __webpack_require__(622)
|
|
51906
|
+
const stripSlash = __webpack_require__(442)
|
|
51495
51907
|
|
|
51496
51908
|
const x = module.exports = (opt_, files, cb) => {
|
|
51497
51909
|
if (typeof opt_ === 'function')
|
|
@@ -51527,7 +51939,7 @@ const x = module.exports = (opt_, files, cb) => {
|
|
|
51527
51939
|
// construct a filter that limits the file entries listed
|
|
51528
51940
|
// include child entries if a dir is included
|
|
51529
51941
|
const filesFilter = (opt, files) => {
|
|
51530
|
-
const map = new Map(files.map(f => [f
|
|
51942
|
+
const map = new Map(files.map(f => [stripSlash(f), true]))
|
|
51531
51943
|
const filter = opt.filter
|
|
51532
51944
|
|
|
51533
51945
|
const mapHas = (file, r) => {
|
|
@@ -51541,8 +51953,8 @@ const filesFilter = (opt, files) => {
|
|
|
51541
51953
|
}
|
|
51542
51954
|
|
|
51543
51955
|
opt.filter = filter
|
|
51544
|
-
? (file, entry) => filter(file, entry) && mapHas(file
|
|
51545
|
-
: file => mapHas(file
|
|
51956
|
+
? (file, entry) => filter(file, entry) && mapHas(stripSlash(file))
|
|
51957
|
+
: file => mapHas(stripSlash(file))
|
|
51546
51958
|
}
|
|
51547
51959
|
|
|
51548
51960
|
const extractFileSync = opt => {
|
|
@@ -51856,6 +52268,12 @@ exports.subscribeToIterable = function (iterable) { return function (subscriber)
|
|
|
51856
52268
|
"use strict";
|
|
51857
52269
|
|
|
51858
52270
|
|
|
52271
|
+
// the PEND/UNPEND stuff tracks whether we're ready to emit end/close yet.
|
|
52272
|
+
// but the path reservations are required to avoid race conditions where
|
|
52273
|
+
// parallelized unpack ops may mess with one another, due to dependencies
|
|
52274
|
+
// (like a Link depending on its target) or destructive operations (like
|
|
52275
|
+
// clobbering an fs object to create one of a different type.)
|
|
52276
|
+
|
|
51859
52277
|
const assert = __webpack_require__(357)
|
|
51860
52278
|
const EE = __webpack_require__(614).EventEmitter
|
|
51861
52279
|
const Parser = __webpack_require__(469)
|
|
@@ -51866,9 +52284,14 @@ const mkdir = __webpack_require__(145)
|
|
|
51866
52284
|
const mkdirSync = mkdir.sync
|
|
51867
52285
|
const wc = __webpack_require__(147)
|
|
51868
52286
|
const stripAbsolutePath = __webpack_require__(779)
|
|
52287
|
+
const pathReservations = __webpack_require__(884)
|
|
52288
|
+
const normPath = __webpack_require__(716)
|
|
52289
|
+
const stripSlash = __webpack_require__(442)
|
|
51869
52290
|
|
|
51870
52291
|
const ONENTRY = Symbol('onEntry')
|
|
51871
52292
|
const CHECKFS = Symbol('checkFs')
|
|
52293
|
+
const CHECKFS2 = Symbol('checkFs2')
|
|
52294
|
+
const PRUNECACHE = Symbol('pruneCache')
|
|
51872
52295
|
const ISREUSABLE = Symbol('isReusable')
|
|
51873
52296
|
const MAKEFS = Symbol('makeFs')
|
|
51874
52297
|
const FILE = Symbol('file')
|
|
@@ -51890,7 +52313,10 @@ const SKIP = Symbol('skip')
|
|
|
51890
52313
|
const DOCHOWN = Symbol('doChown')
|
|
51891
52314
|
const UID = Symbol('uid')
|
|
51892
52315
|
const GID = Symbol('gid')
|
|
52316
|
+
const CHECKED_CWD = Symbol('checkedCwd')
|
|
51893
52317
|
const crypto = __webpack_require__(417)
|
|
52318
|
+
const platform = process.env.TESTING_TAR_FAKE_PLATFORM || process.platform
|
|
52319
|
+
const isWindows = platform === 'win32'
|
|
51894
52320
|
|
|
51895
52321
|
// Unlinks on Windows are not atomic.
|
|
51896
52322
|
//
|
|
@@ -51909,7 +52335,7 @@ const crypto = __webpack_require__(417)
|
|
|
51909
52335
|
// See: https://github.com/npm/node-tar/issues/183
|
|
51910
52336
|
/* istanbul ignore next */
|
|
51911
52337
|
const unlinkFile = (path, cb) => {
|
|
51912
|
-
if (
|
|
52338
|
+
if (!isWindows)
|
|
51913
52339
|
return fs.unlink(path, cb)
|
|
51914
52340
|
|
|
51915
52341
|
const name = path + '.DELETE.' + crypto.randomBytes(16).toString('hex')
|
|
@@ -51922,7 +52348,7 @@ const unlinkFile = (path, cb) => {
|
|
|
51922
52348
|
|
|
51923
52349
|
/* istanbul ignore next */
|
|
51924
52350
|
const unlinkFileSync = path => {
|
|
51925
|
-
if (
|
|
52351
|
+
if (!isWindows)
|
|
51926
52352
|
return fs.unlinkSync(path)
|
|
51927
52353
|
|
|
51928
52354
|
const name = path + '.DELETE.' + crypto.randomBytes(16).toString('hex')
|
|
@@ -51936,6 +52362,33 @@ const uint32 = (a, b, c) =>
|
|
|
51936
52362
|
: b === b >>> 0 ? b
|
|
51937
52363
|
: c
|
|
51938
52364
|
|
|
52365
|
+
// clear the cache if it's a case-insensitive unicode-squashing match.
|
|
52366
|
+
// we can't know if the current file system is case-sensitive or supports
|
|
52367
|
+
// unicode fully, so we check for similarity on the maximally compatible
|
|
52368
|
+
// representation. Err on the side of pruning, since all it's doing is
|
|
52369
|
+
// preventing lstats, and it's not the end of the world if we get a false
|
|
52370
|
+
// positive.
|
|
52371
|
+
// Note that on windows, we always drop the entire cache whenever a
|
|
52372
|
+
// symbolic link is encountered, because 8.3 filenames are impossible
|
|
52373
|
+
// to reason about, and collisions are hazards rather than just failures.
|
|
52374
|
+
const cacheKeyNormalize = path => stripSlash(normPath(path))
|
|
52375
|
+
.normalize('NFKD')
|
|
52376
|
+
.toLowerCase()
|
|
52377
|
+
|
|
52378
|
+
const pruneCache = (cache, abs) => {
|
|
52379
|
+
abs = cacheKeyNormalize(abs)
|
|
52380
|
+
for (const path of cache.keys()) {
|
|
52381
|
+
const pnorm = cacheKeyNormalize(path)
|
|
52382
|
+
if (pnorm === abs || pnorm.indexOf(abs + '/') === 0)
|
|
52383
|
+
cache.delete(path)
|
|
52384
|
+
}
|
|
52385
|
+
}
|
|
52386
|
+
|
|
52387
|
+
const dropCache = cache => {
|
|
52388
|
+
for (const key of cache.keys())
|
|
52389
|
+
cache.delete(key)
|
|
52390
|
+
}
|
|
52391
|
+
|
|
51939
52392
|
class Unpack extends Parser {
|
|
51940
52393
|
constructor (opt) {
|
|
51941
52394
|
if (!opt)
|
|
@@ -51948,6 +52401,10 @@ class Unpack extends Parser {
|
|
|
51948
52401
|
|
|
51949
52402
|
super(opt)
|
|
51950
52403
|
|
|
52404
|
+
this[CHECKED_CWD] = false
|
|
52405
|
+
|
|
52406
|
+
this.reservations = pathReservations()
|
|
52407
|
+
|
|
51951
52408
|
this.transform = typeof opt.transform === 'function' ? opt.transform : null
|
|
51952
52409
|
|
|
51953
52410
|
this.writable = true
|
|
@@ -51990,7 +52447,7 @@ class Unpack extends Parser {
|
|
|
51990
52447
|
this.forceChown = opt.forceChown === true
|
|
51991
52448
|
|
|
51992
52449
|
// turn ><?| in filenames into 0xf000-higher encoded forms
|
|
51993
|
-
this.win32 = !!opt.win32 ||
|
|
52450
|
+
this.win32 = !!opt.win32 || isWindows
|
|
51994
52451
|
|
|
51995
52452
|
// do not unpack over files that are newer than what's in the archive
|
|
51996
52453
|
this.newer = !!opt.newer
|
|
@@ -52010,7 +52467,7 @@ class Unpack extends Parser {
|
|
|
52010
52467
|
// links, and removes symlink directories rather than erroring
|
|
52011
52468
|
this.unlink = !!opt.unlink
|
|
52012
52469
|
|
|
52013
|
-
this.cwd = path.resolve(opt.cwd || process.cwd())
|
|
52470
|
+
this.cwd = normPath(path.resolve(opt.cwd || process.cwd()))
|
|
52014
52471
|
this.strip = +opt.strip || 0
|
|
52015
52472
|
this.processUmask = process.umask()
|
|
52016
52473
|
this.umask = typeof opt.umask === 'number' ? opt.umask : this.processUmask
|
|
@@ -52031,27 +52488,29 @@ class Unpack extends Parser {
|
|
|
52031
52488
|
|
|
52032
52489
|
[CHECKPATH] (entry) {
|
|
52033
52490
|
if (this.strip) {
|
|
52034
|
-
const parts = entry.path.split(
|
|
52491
|
+
const parts = normPath(entry.path).split('/')
|
|
52035
52492
|
if (parts.length < this.strip)
|
|
52036
52493
|
return false
|
|
52037
52494
|
entry.path = parts.slice(this.strip).join('/')
|
|
52038
52495
|
|
|
52039
52496
|
if (entry.type === 'Link') {
|
|
52040
|
-
const linkparts = entry.linkpath.split(
|
|
52497
|
+
const linkparts = normPath(entry.linkpath).split('/')
|
|
52041
52498
|
if (linkparts.length >= this.strip)
|
|
52042
52499
|
entry.linkpath = linkparts.slice(this.strip).join('/')
|
|
52500
|
+
else
|
|
52501
|
+
return false
|
|
52043
52502
|
}
|
|
52044
52503
|
}
|
|
52045
52504
|
|
|
52046
52505
|
if (!this.preservePaths) {
|
|
52047
|
-
const p = entry.path
|
|
52048
|
-
|
|
52049
|
-
|
|
52506
|
+
const p = normPath(entry.path)
|
|
52507
|
+
const parts = p.split('/')
|
|
52508
|
+
if (parts.includes('..') || isWindows && /^[a-z]:\.\.$/i.test(parts[0])) {
|
|
52509
|
+
this.warn(`path contains '..'`, p)
|
|
52050
52510
|
return false
|
|
52051
52511
|
}
|
|
52052
52512
|
|
|
52053
|
-
//
|
|
52054
|
-
// so we only need to test this one to get both
|
|
52513
|
+
// strip off the root
|
|
52055
52514
|
const s = stripAbsolutePath(p)
|
|
52056
52515
|
if (s[0]) {
|
|
52057
52516
|
entry.path = s[1]
|
|
@@ -52059,18 +52518,42 @@ class Unpack extends Parser {
|
|
|
52059
52518
|
}
|
|
52060
52519
|
}
|
|
52061
52520
|
|
|
52521
|
+
if (path.isAbsolute(entry.path))
|
|
52522
|
+
entry.absolute = normPath(path.resolve(entry.path))
|
|
52523
|
+
else
|
|
52524
|
+
entry.absolute = normPath(path.resolve(this.cwd, entry.path))
|
|
52525
|
+
|
|
52526
|
+
// if we somehow ended up with a path that escapes the cwd, and we are
|
|
52527
|
+
// not in preservePaths mode, then something is fishy! This should have
|
|
52528
|
+
// been prevented above, so ignore this for coverage.
|
|
52529
|
+
/* istanbul ignore if - defense in depth */
|
|
52530
|
+
if (!this.preservePaths &&
|
|
52531
|
+
entry.absolute.indexOf(this.cwd + '/') !== 0 &&
|
|
52532
|
+
entry.absolute !== this.cwd) {
|
|
52533
|
+
this.warn('TAR_ENTRY_ERROR', 'path escaped extraction target', {
|
|
52534
|
+
entry,
|
|
52535
|
+
path: normPath(entry.path),
|
|
52536
|
+
resolvedPath: entry.absolute,
|
|
52537
|
+
cwd: this.cwd,
|
|
52538
|
+
})
|
|
52539
|
+
return false
|
|
52540
|
+
}
|
|
52541
|
+
|
|
52542
|
+
// an archive can set properties on the extraction directory, but it
|
|
52543
|
+
// may not replace the cwd with a different kind of thing entirely.
|
|
52544
|
+
if (entry.absolute === this.cwd &&
|
|
52545
|
+
entry.type !== 'Directory' &&
|
|
52546
|
+
entry.type !== 'GNUDumpDir')
|
|
52547
|
+
return false
|
|
52548
|
+
|
|
52062
52549
|
// only encode : chars that aren't drive letter indicators
|
|
52063
52550
|
if (this.win32) {
|
|
52064
|
-
const
|
|
52065
|
-
entry.
|
|
52066
|
-
|
|
52551
|
+
const { root: aRoot } = path.win32.parse(entry.absolute)
|
|
52552
|
+
entry.absolute = aRoot + wc.encode(entry.absolute.substr(aRoot.length))
|
|
52553
|
+
const { root: pRoot } = path.win32.parse(entry.path)
|
|
52554
|
+
entry.path = pRoot + wc.encode(entry.path.substr(pRoot.length))
|
|
52067
52555
|
}
|
|
52068
52556
|
|
|
52069
|
-
if (path.isAbsolute(entry.path))
|
|
52070
|
-
entry.absolute = entry.path
|
|
52071
|
-
else
|
|
52072
|
-
entry.absolute = path.resolve(this.cwd, entry.path)
|
|
52073
|
-
|
|
52074
52557
|
return true
|
|
52075
52558
|
}
|
|
52076
52559
|
|
|
@@ -52114,7 +52597,7 @@ class Unpack extends Parser {
|
|
|
52114
52597
|
}
|
|
52115
52598
|
|
|
52116
52599
|
[MKDIR] (dir, mode, cb) {
|
|
52117
|
-
mkdir(dir, {
|
|
52600
|
+
mkdir(normPath(dir), {
|
|
52118
52601
|
uid: this.uid,
|
|
52119
52602
|
gid: this.gid,
|
|
52120
52603
|
processUid: this.processUid,
|
|
@@ -52148,21 +52631,44 @@ class Unpack extends Parser {
|
|
|
52148
52631
|
return uint32(this.gid, entry.gid, this.processGid)
|
|
52149
52632
|
}
|
|
52150
52633
|
|
|
52151
|
-
[FILE] (entry) {
|
|
52634
|
+
[FILE] (entry, fullyDone) {
|
|
52152
52635
|
const mode = entry.mode & 0o7777 || this.fmode
|
|
52153
52636
|
const stream = new fsm.WriteStream(entry.absolute, {
|
|
52154
52637
|
mode: mode,
|
|
52155
52638
|
autoClose: false
|
|
52156
52639
|
})
|
|
52157
|
-
stream.on('error', er =>
|
|
52640
|
+
stream.on('error', er => {
|
|
52641
|
+
if (stream.fd)
|
|
52642
|
+
fs.close(stream.fd, () => {})
|
|
52643
|
+
|
|
52644
|
+
// flush all the data out so that we aren't left hanging
|
|
52645
|
+
// if the error wasn't actually fatal. otherwise the parse
|
|
52646
|
+
// is blocked, and we never proceed.
|
|
52647
|
+
/* istanbul ignore next */
|
|
52648
|
+
stream.write = () => true
|
|
52649
|
+
this[ONERROR](er, entry)
|
|
52650
|
+
fullyDone()
|
|
52651
|
+
})
|
|
52158
52652
|
|
|
52159
52653
|
let actions = 1
|
|
52160
52654
|
const done = er => {
|
|
52161
|
-
if (er)
|
|
52162
|
-
|
|
52655
|
+
if (er) {
|
|
52656
|
+
/* istanbul ignore else - we should always have a fd by now */
|
|
52657
|
+
if (stream.fd)
|
|
52658
|
+
fs.close(stream.fd, () => {})
|
|
52659
|
+
|
|
52660
|
+
this[ONERROR](er, entry)
|
|
52661
|
+
fullyDone()
|
|
52662
|
+
return
|
|
52663
|
+
}
|
|
52163
52664
|
|
|
52164
|
-
if (--actions === 0)
|
|
52165
|
-
fs.close(stream.fd,
|
|
52665
|
+
if (--actions === 0) {
|
|
52666
|
+
fs.close(stream.fd, er => {
|
|
52667
|
+
fullyDone()
|
|
52668
|
+
/* istanbul ignore next */
|
|
52669
|
+
er ? this[ONERROR](er, entry) : this[UNPEND]()
|
|
52670
|
+
})
|
|
52671
|
+
}
|
|
52166
52672
|
}
|
|
52167
52673
|
|
|
52168
52674
|
stream.on('finish', _ => {
|
|
@@ -52201,15 +52707,18 @@ class Unpack extends Parser {
|
|
|
52201
52707
|
tx.pipe(stream)
|
|
52202
52708
|
}
|
|
52203
52709
|
|
|
52204
|
-
[DIRECTORY] (entry) {
|
|
52710
|
+
[DIRECTORY] (entry, fullyDone) {
|
|
52205
52711
|
const mode = entry.mode & 0o7777 || this.dmode
|
|
52206
52712
|
this[MKDIR](entry.absolute, mode, er => {
|
|
52207
|
-
if (er)
|
|
52713
|
+
if (er) {
|
|
52714
|
+
fullyDone()
|
|
52208
52715
|
return this[ONERROR](er, entry)
|
|
52716
|
+
}
|
|
52209
52717
|
|
|
52210
52718
|
let actions = 1
|
|
52211
52719
|
const done = _ => {
|
|
52212
52720
|
if (--actions === 0) {
|
|
52721
|
+
fullyDone()
|
|
52213
52722
|
this[UNPEND]()
|
|
52214
52723
|
entry.resume()
|
|
52215
52724
|
}
|
|
@@ -52234,12 +52743,13 @@ class Unpack extends Parser {
|
|
|
52234
52743
|
entry.resume()
|
|
52235
52744
|
}
|
|
52236
52745
|
|
|
52237
|
-
[SYMLINK] (entry) {
|
|
52238
|
-
this[LINK](entry, entry.linkpath, 'symlink')
|
|
52746
|
+
[SYMLINK] (entry, done) {
|
|
52747
|
+
this[LINK](entry, entry.linkpath, 'symlink', done)
|
|
52239
52748
|
}
|
|
52240
52749
|
|
|
52241
|
-
[HARDLINK] (entry) {
|
|
52242
|
-
|
|
52750
|
+
[HARDLINK] (entry, done) {
|
|
52751
|
+
const linkpath = normPath(path.resolve(this.cwd, entry.linkpath))
|
|
52752
|
+
this[LINK](entry, linkpath, 'link', done)
|
|
52243
52753
|
}
|
|
52244
52754
|
|
|
52245
52755
|
[PEND] () {
|
|
@@ -52264,49 +52774,122 @@ class Unpack extends Parser {
|
|
|
52264
52774
|
!this.unlink &&
|
|
52265
52775
|
st.isFile() &&
|
|
52266
52776
|
st.nlink <= 1 &&
|
|
52267
|
-
|
|
52777
|
+
!isWindows
|
|
52268
52778
|
}
|
|
52269
52779
|
|
|
52270
52780
|
// check if a thing is there, and if so, try to clobber it
|
|
52271
52781
|
[CHECKFS] (entry) {
|
|
52272
52782
|
this[PEND]()
|
|
52783
|
+
const paths = [entry.path]
|
|
52784
|
+
if (entry.linkpath)
|
|
52785
|
+
paths.push(entry.linkpath)
|
|
52786
|
+
this.reservations.reserve(paths, done => this[CHECKFS2](entry, done))
|
|
52787
|
+
}
|
|
52273
52788
|
|
|
52789
|
+
[PRUNECACHE] (entry) {
|
|
52274
52790
|
// if we are not creating a directory, and the path is in the dirCache,
|
|
52275
52791
|
// then that means we are about to delete the directory we created
|
|
52276
52792
|
// previously, and it is no longer going to be a directory, and neither
|
|
52277
52793
|
// is any of its children.
|
|
52278
|
-
|
|
52279
|
-
|
|
52280
|
-
|
|
52281
|
-
|
|
52282
|
-
|
|
52283
|
-
|
|
52794
|
+
// If a symbolic link is encountered, all bets are off. There is no
|
|
52795
|
+
// reasonable way to sanitize the cache in such a way we will be able to
|
|
52796
|
+
// avoid having filesystem collisions. If this happens with a non-symlink
|
|
52797
|
+
// entry, it'll just fail to unpack, but a symlink to a directory, using an
|
|
52798
|
+
// 8.3 shortname or certain unicode attacks, can evade detection and lead
|
|
52799
|
+
// to arbitrary writes to anywhere on the system.
|
|
52800
|
+
if (entry.type === 'SymbolicLink')
|
|
52801
|
+
dropCache(this.dirCache)
|
|
52802
|
+
else if (entry.type !== 'Directory')
|
|
52803
|
+
pruneCache(this.dirCache, entry.absolute)
|
|
52804
|
+
}
|
|
52805
|
+
|
|
52806
|
+
[CHECKFS2] (entry, fullyDone) {
|
|
52807
|
+
this[PRUNECACHE](entry)
|
|
52808
|
+
|
|
52809
|
+
const done = er => {
|
|
52810
|
+
this[PRUNECACHE](entry)
|
|
52811
|
+
fullyDone(er)
|
|
52812
|
+
}
|
|
52813
|
+
|
|
52814
|
+
const checkCwd = () => {
|
|
52815
|
+
this[MKDIR](this.cwd, this.dmode, er => {
|
|
52816
|
+
if (er) {
|
|
52817
|
+
this[ONERROR](er, entry)
|
|
52818
|
+
done()
|
|
52819
|
+
return
|
|
52820
|
+
}
|
|
52821
|
+
this[CHECKED_CWD] = true
|
|
52822
|
+
start()
|
|
52823
|
+
})
|
|
52824
|
+
}
|
|
52825
|
+
|
|
52826
|
+
const start = () => {
|
|
52827
|
+
if (entry.absolute !== this.cwd) {
|
|
52828
|
+
const parent = normPath(path.dirname(entry.absolute))
|
|
52829
|
+
if (parent !== this.cwd) {
|
|
52830
|
+
return this[MKDIR](parent, this.dmode, er => {
|
|
52831
|
+
if (er) {
|
|
52832
|
+
this[ONERROR](er, entry)
|
|
52833
|
+
done()
|
|
52834
|
+
return
|
|
52835
|
+
}
|
|
52836
|
+
afterMakeParent()
|
|
52837
|
+
})
|
|
52838
|
+
}
|
|
52284
52839
|
}
|
|
52840
|
+
afterMakeParent()
|
|
52285
52841
|
}
|
|
52286
52842
|
|
|
52287
|
-
|
|
52288
|
-
|
|
52289
|
-
|
|
52290
|
-
fs.lstat(entry.absolute, (er, st) => {
|
|
52291
|
-
if (st && (this.keep || this.newer && st.mtime > entry.mtime))
|
|
52843
|
+
const afterMakeParent = () => {
|
|
52844
|
+
fs.lstat(entry.absolute, (lstatEr, st) => {
|
|
52845
|
+
if (st && (this.keep || this.newer && st.mtime > entry.mtime)) {
|
|
52292
52846
|
this[SKIP](entry)
|
|
52293
|
-
|
|
52294
|
-
|
|
52295
|
-
|
|
52847
|
+
done()
|
|
52848
|
+
return
|
|
52849
|
+
}
|
|
52850
|
+
if (lstatEr || this[ISREUSABLE](entry, st))
|
|
52851
|
+
return this[MAKEFS](null, entry, done)
|
|
52852
|
+
|
|
52853
|
+
if (st.isDirectory()) {
|
|
52296
52854
|
if (entry.type === 'Directory') {
|
|
52297
|
-
|
|
52298
|
-
|
|
52299
|
-
|
|
52300
|
-
|
|
52301
|
-
|
|
52302
|
-
|
|
52303
|
-
|
|
52304
|
-
|
|
52855
|
+
const needChmod = !this.noChmod &&
|
|
52856
|
+
entry.mode &&
|
|
52857
|
+
(st.mode & 0o7777) !== entry.mode
|
|
52858
|
+
const afterChmod = er => this[MAKEFS](er, entry, done)
|
|
52859
|
+
if (!needChmod)
|
|
52860
|
+
return afterChmod()
|
|
52861
|
+
return fs.chmod(entry.absolute, entry.mode, afterChmod)
|
|
52862
|
+
}
|
|
52863
|
+
// Not a dir entry, have to remove it.
|
|
52864
|
+
// NB: the only way to end up with an entry that is the cwd
|
|
52865
|
+
// itself, in such a way that == does not detect, is a
|
|
52866
|
+
// tricky windows absolute path with UNC or 8.3 parts (and
|
|
52867
|
+
// preservePaths:true, or else it will have been stripped).
|
|
52868
|
+
// In that case, the user has opted out of path protections
|
|
52869
|
+
// explicitly, so if they blow away the cwd, c'est la vie.
|
|
52870
|
+
if (entry.absolute !== this.cwd) {
|
|
52871
|
+
return fs.rmdir(entry.absolute, er =>
|
|
52872
|
+
this[MAKEFS](er, entry, done))
|
|
52873
|
+
}
|
|
52874
|
+
}
|
|
52875
|
+
|
|
52876
|
+
// not a dir, and not reusable
|
|
52877
|
+
// don't remove if the cwd, we want that error
|
|
52878
|
+
if (entry.absolute === this.cwd)
|
|
52879
|
+
return this[MAKEFS](null, entry, done)
|
|
52880
|
+
|
|
52881
|
+
unlinkFile(entry.absolute, er =>
|
|
52882
|
+
this[MAKEFS](er, entry, done))
|
|
52305
52883
|
})
|
|
52306
|
-
}
|
|
52884
|
+
}
|
|
52885
|
+
|
|
52886
|
+
if (this[CHECKED_CWD])
|
|
52887
|
+
start()
|
|
52888
|
+
else
|
|
52889
|
+
checkCwd()
|
|
52307
52890
|
}
|
|
52308
52891
|
|
|
52309
|
-
[MAKEFS] (er, entry) {
|
|
52892
|
+
[MAKEFS] (er, entry, done) {
|
|
52310
52893
|
if (er)
|
|
52311
52894
|
return this[ONERROR](er, entry)
|
|
52312
52895
|
|
|
@@ -52314,82 +52897,107 @@ class Unpack extends Parser {
|
|
|
52314
52897
|
case 'File':
|
|
52315
52898
|
case 'OldFile':
|
|
52316
52899
|
case 'ContiguousFile':
|
|
52317
|
-
return this[FILE](entry)
|
|
52900
|
+
return this[FILE](entry, done)
|
|
52318
52901
|
|
|
52319
52902
|
case 'Link':
|
|
52320
|
-
return this[HARDLINK](entry)
|
|
52903
|
+
return this[HARDLINK](entry, done)
|
|
52321
52904
|
|
|
52322
52905
|
case 'SymbolicLink':
|
|
52323
|
-
return this[SYMLINK](entry)
|
|
52906
|
+
return this[SYMLINK](entry, done)
|
|
52324
52907
|
|
|
52325
52908
|
case 'Directory':
|
|
52326
52909
|
case 'GNUDumpDir':
|
|
52327
|
-
return this[DIRECTORY](entry)
|
|
52910
|
+
return this[DIRECTORY](entry, done)
|
|
52328
52911
|
}
|
|
52329
52912
|
}
|
|
52330
52913
|
|
|
52331
|
-
[LINK] (entry, linkpath, link) {
|
|
52332
|
-
// XXX: get the type ('
|
|
52914
|
+
[LINK] (entry, linkpath, link, done) {
|
|
52915
|
+
// XXX: get the type ('symlink' or 'junction') for windows
|
|
52333
52916
|
fs[link](linkpath, entry.absolute, er => {
|
|
52334
52917
|
if (er)
|
|
52335
52918
|
return this[ONERROR](er, entry)
|
|
52919
|
+
done()
|
|
52336
52920
|
this[UNPEND]()
|
|
52337
52921
|
entry.resume()
|
|
52338
52922
|
})
|
|
52339
52923
|
}
|
|
52340
52924
|
}
|
|
52341
52925
|
|
|
52926
|
+
const callSync = fn => {
|
|
52927
|
+
try {
|
|
52928
|
+
return [null, fn()]
|
|
52929
|
+
} catch (er) {
|
|
52930
|
+
return [er, null]
|
|
52931
|
+
}
|
|
52932
|
+
}
|
|
52342
52933
|
class UnpackSync extends Unpack {
|
|
52343
|
-
|
|
52344
|
-
super(
|
|
52934
|
+
[MAKEFS] (er, entry) {
|
|
52935
|
+
return super[MAKEFS](er, entry, /* istanbul ignore next */ () => {})
|
|
52345
52936
|
}
|
|
52346
52937
|
|
|
52347
52938
|
[CHECKFS] (entry) {
|
|
52348
|
-
|
|
52349
|
-
|
|
52350
|
-
|
|
52351
|
-
|
|
52352
|
-
|
|
52353
|
-
|
|
52354
|
-
|
|
52939
|
+
this[PRUNECACHE](entry)
|
|
52940
|
+
|
|
52941
|
+
if (!this[CHECKED_CWD]) {
|
|
52942
|
+
const er = this[MKDIR](this.cwd, this.dmode)
|
|
52943
|
+
if (er)
|
|
52944
|
+
return this[ONERROR](er, entry)
|
|
52945
|
+
this[CHECKED_CWD] = true
|
|
52355
52946
|
}
|
|
52356
52947
|
|
|
52357
|
-
|
|
52358
|
-
|
|
52359
|
-
|
|
52360
|
-
|
|
52361
|
-
|
|
52362
|
-
|
|
52363
|
-
|
|
52364
|
-
|
|
52365
|
-
return this[MAKEFS](null, entry)
|
|
52366
|
-
else {
|
|
52367
|
-
try {
|
|
52368
|
-
if (st.isDirectory()) {
|
|
52369
|
-
if (entry.type === 'Directory') {
|
|
52370
|
-
if (entry.mode && (st.mode & 0o7777) !== entry.mode)
|
|
52371
|
-
fs.chmodSync(entry.absolute, entry.mode)
|
|
52372
|
-
} else
|
|
52373
|
-
fs.rmdirSync(entry.absolute)
|
|
52374
|
-
} else
|
|
52375
|
-
unlinkFileSync(entry.absolute)
|
|
52376
|
-
return this[MAKEFS](null, entry)
|
|
52377
|
-
} catch (er) {
|
|
52378
|
-
return this[ONERROR](er, entry)
|
|
52379
|
-
}
|
|
52948
|
+
// don't bother to make the parent if the current entry is the cwd,
|
|
52949
|
+
// we've already checked it.
|
|
52950
|
+
if (entry.absolute !== this.cwd) {
|
|
52951
|
+
const parent = normPath(path.dirname(entry.absolute))
|
|
52952
|
+
if (parent !== this.cwd) {
|
|
52953
|
+
const mkParent = this[MKDIR](parent, this.dmode)
|
|
52954
|
+
if (mkParent)
|
|
52955
|
+
return this[ONERROR](mkParent, entry)
|
|
52380
52956
|
}
|
|
52381
|
-
}
|
|
52957
|
+
}
|
|
52958
|
+
|
|
52959
|
+
const [lstatEr, st] = callSync(() => fs.lstatSync(entry.absolute))
|
|
52960
|
+
if (st && (this.keep || this.newer && st.mtime > entry.mtime))
|
|
52961
|
+
return this[SKIP](entry)
|
|
52962
|
+
|
|
52963
|
+
if (lstatEr || this[ISREUSABLE](entry, st))
|
|
52382
52964
|
return this[MAKEFS](null, entry)
|
|
52965
|
+
|
|
52966
|
+
if (st.isDirectory()) {
|
|
52967
|
+
if (entry.type === 'Directory') {
|
|
52968
|
+
const needChmod = !this.noChmod &&
|
|
52969
|
+
entry.mode &&
|
|
52970
|
+
(st.mode & 0o7777) !== entry.mode
|
|
52971
|
+
const [er] = needChmod ? callSync(() => {
|
|
52972
|
+
fs.chmodSync(entry.absolute, entry.mode)
|
|
52973
|
+
}) : []
|
|
52974
|
+
return this[MAKEFS](er, entry)
|
|
52975
|
+
}
|
|
52976
|
+
// not a dir entry, have to remove it
|
|
52977
|
+
const [er] = callSync(() => fs.rmdirSync(entry.absolute))
|
|
52978
|
+
this[MAKEFS](er, entry)
|
|
52383
52979
|
}
|
|
52980
|
+
|
|
52981
|
+
// not a dir, and not reusable.
|
|
52982
|
+
// don't remove if it's the cwd, since we want that error.
|
|
52983
|
+
const [er] = entry.absolute === this.cwd ? []
|
|
52984
|
+
: callSync(() => unlinkFileSync(entry.absolute))
|
|
52985
|
+
this[MAKEFS](er, entry)
|
|
52384
52986
|
}
|
|
52385
52987
|
|
|
52386
|
-
[FILE] (entry) {
|
|
52988
|
+
[FILE] (entry, done) {
|
|
52387
52989
|
const mode = entry.mode & 0o7777 || this.fmode
|
|
52388
52990
|
|
|
52389
52991
|
const oner = er => {
|
|
52390
|
-
|
|
52391
|
-
|
|
52392
|
-
|
|
52992
|
+
let closeError
|
|
52993
|
+
try {
|
|
52994
|
+
fs.closeSync(fd)
|
|
52995
|
+
} catch (e) {
|
|
52996
|
+
closeError = e
|
|
52997
|
+
}
|
|
52998
|
+
if (er || closeError)
|
|
52999
|
+
this[ONERROR](er || closeError, entry)
|
|
53000
|
+
done()
|
|
52393
53001
|
}
|
|
52394
53002
|
|
|
52395
53003
|
let stream
|
|
@@ -52450,11 +53058,14 @@ class UnpackSync extends Unpack {
|
|
|
52450
53058
|
})
|
|
52451
53059
|
}
|
|
52452
53060
|
|
|
52453
|
-
[DIRECTORY] (entry) {
|
|
53061
|
+
[DIRECTORY] (entry, done) {
|
|
52454
53062
|
const mode = entry.mode & 0o7777 || this.dmode
|
|
52455
53063
|
const er = this[MKDIR](entry.absolute, mode)
|
|
52456
|
-
if (er)
|
|
52457
|
-
|
|
53064
|
+
if (er) {
|
|
53065
|
+
this[ONERROR](er, entry)
|
|
53066
|
+
done()
|
|
53067
|
+
return
|
|
53068
|
+
}
|
|
52458
53069
|
if (entry.mtime && !this.noMtime) {
|
|
52459
53070
|
try {
|
|
52460
53071
|
fs.utimesSync(entry.absolute, entry.atime || new Date(), entry.mtime)
|
|
@@ -52465,12 +53076,13 @@ class UnpackSync extends Unpack {
|
|
|
52465
53076
|
fs.chownSync(entry.absolute, this[UID](entry), this[GID](entry))
|
|
52466
53077
|
} catch (er) {}
|
|
52467
53078
|
}
|
|
53079
|
+
done()
|
|
52468
53080
|
entry.resume()
|
|
52469
53081
|
}
|
|
52470
53082
|
|
|
52471
53083
|
[MKDIR] (dir, mode) {
|
|
52472
53084
|
try {
|
|
52473
|
-
return mkdir.sync(dir, {
|
|
53085
|
+
return mkdir.sync(normPath(dir), {
|
|
52474
53086
|
uid: this.uid,
|
|
52475
53087
|
gid: this.gid,
|
|
52476
53088
|
processUid: this.processUid,
|
|
@@ -52487,9 +53099,10 @@ class UnpackSync extends Unpack {
|
|
|
52487
53099
|
}
|
|
52488
53100
|
}
|
|
52489
53101
|
|
|
52490
|
-
[LINK] (entry, linkpath, link) {
|
|
53102
|
+
[LINK] (entry, linkpath, link, done) {
|
|
52491
53103
|
try {
|
|
52492
53104
|
fs[link + 'Sync'](linkpath, entry.absolute)
|
|
53105
|
+
done()
|
|
52493
53106
|
entry.resume()
|
|
52494
53107
|
} catch (er) {
|
|
52495
53108
|
return this[ONERROR](er, entry)
|
|
@@ -55688,7 +56301,161 @@ module.exports = x => {
|
|
|
55688
56301
|
|
|
55689
56302
|
/***/ }),
|
|
55690
56303
|
/* 883 */,
|
|
55691
|
-
/* 884
|
|
56304
|
+
/* 884 */
|
|
56305
|
+
/***/ (function(module, __unusedexports, __webpack_require__) {
|
|
56306
|
+
|
|
56307
|
+
// A path exclusive reservation system
|
|
56308
|
+
// reserve([list, of, paths], fn)
|
|
56309
|
+
// When the fn is first in line for all its paths, it
|
|
56310
|
+
// is called with a cb that clears the reservation.
|
|
56311
|
+
//
|
|
56312
|
+
// Used by async unpack to avoid clobbering paths in use,
|
|
56313
|
+
// while still allowing maximal safe parallelization.
|
|
56314
|
+
|
|
56315
|
+
const assert = __webpack_require__(357)
|
|
56316
|
+
const normPath = __webpack_require__(716)
|
|
56317
|
+
const stripSlashes = __webpack_require__(442)
|
|
56318
|
+
const { join } = __webpack_require__(622)
|
|
56319
|
+
|
|
56320
|
+
const platform = process.env.TESTING_TAR_FAKE_PLATFORM || process.platform
|
|
56321
|
+
const isWindows = platform === 'win32'
|
|
56322
|
+
|
|
56323
|
+
module.exports = () => {
|
|
56324
|
+
// path => [function or Set]
|
|
56325
|
+
// A Set object means a directory reservation
|
|
56326
|
+
// A fn is a direct reservation on that path
|
|
56327
|
+
const queues = new Map()
|
|
56328
|
+
|
|
56329
|
+
// fn => {paths:[path,...], dirs:[path, ...]}
|
|
56330
|
+
const reservations = new Map()
|
|
56331
|
+
|
|
56332
|
+
// return a set of parent dirs for a given path
|
|
56333
|
+
// '/a/b/c/d' -> ['/', '/a', '/a/b', '/a/b/c', '/a/b/c/d']
|
|
56334
|
+
const getDirs = path => {
|
|
56335
|
+
const dirs = path.split('/').slice(0, -1).reduce((set, path) => {
|
|
56336
|
+
if (set.length)
|
|
56337
|
+
path = normPath(join(set[set.length - 1], path))
|
|
56338
|
+
set.push(path || '/')
|
|
56339
|
+
return set
|
|
56340
|
+
}, [])
|
|
56341
|
+
return dirs
|
|
56342
|
+
}
|
|
56343
|
+
|
|
56344
|
+
// functions currently running
|
|
56345
|
+
const running = new Set()
|
|
56346
|
+
|
|
56347
|
+
// return the queues for each path the function cares about
|
|
56348
|
+
// fn => {paths, dirs}
|
|
56349
|
+
const getQueues = fn => {
|
|
56350
|
+
const res = reservations.get(fn)
|
|
56351
|
+
/* istanbul ignore if - unpossible */
|
|
56352
|
+
if (!res)
|
|
56353
|
+
throw new Error('function does not have any path reservations')
|
|
56354
|
+
return {
|
|
56355
|
+
paths: res.paths.map(path => queues.get(path)),
|
|
56356
|
+
dirs: [...res.dirs].map(path => queues.get(path)),
|
|
56357
|
+
}
|
|
56358
|
+
}
|
|
56359
|
+
|
|
56360
|
+
// check if fn is first in line for all its paths, and is
|
|
56361
|
+
// included in the first set for all its dir queues
|
|
56362
|
+
const check = fn => {
|
|
56363
|
+
const {paths, dirs} = getQueues(fn)
|
|
56364
|
+
return paths.every(q => q[0] === fn) &&
|
|
56365
|
+
dirs.every(q => q[0] instanceof Set && q[0].has(fn))
|
|
56366
|
+
}
|
|
56367
|
+
|
|
56368
|
+
// run the function if it's first in line and not already running
|
|
56369
|
+
const run = fn => {
|
|
56370
|
+
if (running.has(fn) || !check(fn))
|
|
56371
|
+
return false
|
|
56372
|
+
running.add(fn)
|
|
56373
|
+
fn(() => clear(fn))
|
|
56374
|
+
return true
|
|
56375
|
+
}
|
|
56376
|
+
|
|
56377
|
+
const clear = fn => {
|
|
56378
|
+
if (!running.has(fn))
|
|
56379
|
+
return false
|
|
56380
|
+
|
|
56381
|
+
const { paths, dirs } = reservations.get(fn)
|
|
56382
|
+
const next = new Set()
|
|
56383
|
+
|
|
56384
|
+
paths.forEach(path => {
|
|
56385
|
+
const q = queues.get(path)
|
|
56386
|
+
assert.equal(q[0], fn)
|
|
56387
|
+
if (q.length === 1)
|
|
56388
|
+
queues.delete(path)
|
|
56389
|
+
else {
|
|
56390
|
+
q.shift()
|
|
56391
|
+
if (typeof q[0] === 'function')
|
|
56392
|
+
next.add(q[0])
|
|
56393
|
+
else
|
|
56394
|
+
q[0].forEach(fn => next.add(fn))
|
|
56395
|
+
}
|
|
56396
|
+
})
|
|
56397
|
+
|
|
56398
|
+
dirs.forEach(dir => {
|
|
56399
|
+
const q = queues.get(dir)
|
|
56400
|
+
assert(q[0] instanceof Set)
|
|
56401
|
+
if (q[0].size === 1 && q.length === 1) {
|
|
56402
|
+
queues.delete(dir)
|
|
56403
|
+
} else if (q[0].size === 1) {
|
|
56404
|
+
q.shift()
|
|
56405
|
+
|
|
56406
|
+
// must be a function or else the Set would've been reused
|
|
56407
|
+
next.add(q[0])
|
|
56408
|
+
} else
|
|
56409
|
+
q[0].delete(fn)
|
|
56410
|
+
})
|
|
56411
|
+
running.delete(fn)
|
|
56412
|
+
|
|
56413
|
+
next.forEach(fn => run(fn))
|
|
56414
|
+
return true
|
|
56415
|
+
}
|
|
56416
|
+
|
|
56417
|
+
const reserve = (paths, fn) => {
|
|
56418
|
+
// collide on matches across case and unicode normalization
|
|
56419
|
+
// On windows, thanks to the magic of 8.3 shortnames, it is fundamentally
|
|
56420
|
+
// impossible to determine whether two paths refer to the same thing on
|
|
56421
|
+
// disk, without asking the kernel for a shortname.
|
|
56422
|
+
// So, we just pretend that every path matches every other path here,
|
|
56423
|
+
// effectively removing all parallelization on windows.
|
|
56424
|
+
paths = isWindows ? ['win32 parallelization disabled'] : paths.map(p => {
|
|
56425
|
+
return stripSlashes(normPath(join(p)))
|
|
56426
|
+
.normalize('NFKD')
|
|
56427
|
+
.toLowerCase()
|
|
56428
|
+
})
|
|
56429
|
+
|
|
56430
|
+
const dirs = new Set(
|
|
56431
|
+
paths.map(path => getDirs(path)).reduce((a, b) => a.concat(b))
|
|
56432
|
+
)
|
|
56433
|
+
reservations.set(fn, {dirs, paths})
|
|
56434
|
+
paths.forEach(path => {
|
|
56435
|
+
const q = queues.get(path)
|
|
56436
|
+
if (!q)
|
|
56437
|
+
queues.set(path, [fn])
|
|
56438
|
+
else
|
|
56439
|
+
q.push(fn)
|
|
56440
|
+
})
|
|
56441
|
+
dirs.forEach(dir => {
|
|
56442
|
+
const q = queues.get(dir)
|
|
56443
|
+
if (!q)
|
|
56444
|
+
queues.set(dir, [new Set([fn])])
|
|
56445
|
+
else if (q[q.length-1] instanceof Set)
|
|
56446
|
+
q[q.length-1].add(fn)
|
|
56447
|
+
else
|
|
56448
|
+
q.push(new Set([fn]))
|
|
56449
|
+
})
|
|
56450
|
+
|
|
56451
|
+
return run(fn)
|
|
56452
|
+
}
|
|
56453
|
+
|
|
56454
|
+
return { check, reserve }
|
|
56455
|
+
}
|
|
56456
|
+
|
|
56457
|
+
|
|
56458
|
+
/***/ }),
|
|
55692
56459
|
/* 885 */,
|
|
55693
56460
|
/* 886 */,
|
|
55694
56461
|
/* 887 */
|
|
@@ -55865,7 +56632,8 @@ const replace = (opt, files, cb) => {
|
|
|
55865
56632
|
|
|
55866
56633
|
fs.fstat(fd, (er, st) => {
|
|
55867
56634
|
if (er)
|
|
55868
|
-
return reject(er)
|
|
56635
|
+
return fs.close(fd, () => reject(er))
|
|
56636
|
+
|
|
55869
56637
|
getPos(fd, st.size, (er, position) => {
|
|
55870
56638
|
if (er)
|
|
55871
56639
|
return reject(er)
|
|
@@ -58823,6 +59591,7 @@ const ONDRAIN = Symbol('ondrain')
|
|
|
58823
59591
|
const fs = __webpack_require__(747)
|
|
58824
59592
|
const path = __webpack_require__(622)
|
|
58825
59593
|
const warner = __webpack_require__(289)
|
|
59594
|
+
const normPath = __webpack_require__(716)
|
|
58826
59595
|
|
|
58827
59596
|
const Pack = warner(class Pack extends MiniPass {
|
|
58828
59597
|
constructor (opt) {
|
|
@@ -58834,7 +59603,7 @@ const Pack = warner(class Pack extends MiniPass {
|
|
|
58834
59603
|
this.preservePaths = !!opt.preservePaths
|
|
58835
59604
|
this.strict = !!opt.strict
|
|
58836
59605
|
this.noPax = !!opt.noPax
|
|
58837
|
-
this.prefix = (opt.prefix || '')
|
|
59606
|
+
this.prefix = normPath(opt.prefix || '')
|
|
58838
59607
|
this.linkCache = opt.linkCache || new Map()
|
|
58839
59608
|
this.statCache = opt.statCache || new Map()
|
|
58840
59609
|
this.readdirCache = opt.readdirCache || new Map()
|
|
@@ -58899,10 +59668,7 @@ const Pack = warner(class Pack extends MiniPass {
|
|
|
58899
59668
|
}
|
|
58900
59669
|
|
|
58901
59670
|
[ADDTARENTRY] (p) {
|
|
58902
|
-
const absolute = path.resolve(this.cwd, p.path)
|
|
58903
|
-
if (this.prefix)
|
|
58904
|
-
p.path = this.prefix + '/' + p.path.replace(/^\.(\/+|$)/, '')
|
|
58905
|
-
|
|
59671
|
+
const absolute = normPath(path.resolve(this.cwd, p.path))
|
|
58906
59672
|
// in this case, we don't have to wait for the stat
|
|
58907
59673
|
if (!this.filter(p.path, p))
|
|
58908
59674
|
p.resume()
|
|
@@ -58918,10 +59684,7 @@ const Pack = warner(class Pack extends MiniPass {
|
|
|
58918
59684
|
}
|
|
58919
59685
|
|
|
58920
59686
|
[ADDFSENTRY] (p) {
|
|
58921
|
-
const absolute = path.resolve(this.cwd, p)
|
|
58922
|
-
if (this.prefix)
|
|
58923
|
-
p = this.prefix + '/' + p.replace(/^\.(\/+|$)/, '')
|
|
58924
|
-
|
|
59687
|
+
const absolute = normPath(path.resolve(this.cwd, p))
|
|
58925
59688
|
this[QUEUE].push(new PackJob(p, absolute))
|
|
58926
59689
|
this[PROCESS]()
|
|
58927
59690
|
}
|
|
@@ -59065,7 +59828,8 @@ const Pack = warner(class Pack extends MiniPass {
|
|
|
59065
59828
|
linkCache: this.linkCache,
|
|
59066
59829
|
statCache: this.statCache,
|
|
59067
59830
|
noMtime: this.noMtime,
|
|
59068
|
-
mtime: this.mtime
|
|
59831
|
+
mtime: this.mtime,
|
|
59832
|
+
prefix: this.prefix,
|
|
59069
59833
|
}
|
|
59070
59834
|
}
|
|
59071
59835
|
|
|
@@ -59091,10 +59855,7 @@ const Pack = warner(class Pack extends MiniPass {
|
|
|
59091
59855
|
|
|
59092
59856
|
if (job.readdir)
|
|
59093
59857
|
job.readdir.forEach(entry => {
|
|
59094
|
-
const p =
|
|
59095
|
-
job.path.slice(this.prefix.length + 1) || './'
|
|
59096
|
-
: job.path
|
|
59097
|
-
|
|
59858
|
+
const p = job.path
|
|
59098
59859
|
const base = p === './' ? '' : p.replace(/\/*$/, '/')
|
|
59099
59860
|
this[ADDFSENTRY](base + entry)
|
|
59100
59861
|
})
|
|
@@ -59147,10 +59908,7 @@ class PackSync extends Pack {
|
|
|
59147
59908
|
|
|
59148
59909
|
if (job.readdir)
|
|
59149
59910
|
job.readdir.forEach(entry => {
|
|
59150
|
-
const p =
|
|
59151
|
-
job.path.slice(this.prefix.length + 1) || './'
|
|
59152
|
-
: job.path
|
|
59153
|
-
|
|
59911
|
+
const p = job.path
|
|
59154
59912
|
const base = p === './' ? '' : p.replace(/\/*$/, '/')
|
|
59155
59913
|
this[ADDFSENTRY](base + entry)
|
|
59156
59914
|
})
|