1 | "use strict";
|
2 | const INSTALLED = [];
|
3 | function autoDetectResource(source, options) {
|
4 | if (!source)
|
5 | return null;
|
6 | let extension = "";
|
7 | if (typeof source == "string") {
|
8 | const result = /\.(\w{3,4})(?:$|\?|#)/i.exec(source);
|
9 | result && (extension = result[1].toLowerCase());
|
10 | }
|
11 | for (let i = INSTALLED.length - 1; i >= 0; --i) {
|
12 | const ResourcePlugin = INSTALLED[i];
|
13 | if (ResourcePlugin.test && ResourcePlugin.test(source, extension))
|
14 | return new ResourcePlugin(source, options);
|
15 | }
|
16 | throw new Error("Unrecognized source type to auto-detect Resource");
|
17 | }
|
18 | exports.INSTALLED = INSTALLED;
|
19 | exports.autoDetectResource = autoDetectResource;
|
20 |
|