diff options
Diffstat (limited to 'node_modules/clean-css/lib/reader/read-sources.js')
-rw-r--r-- | node_modules/clean-css/lib/reader/read-sources.js | 29 |
1 files changed, 20 insertions, 9 deletions
diff --git a/node_modules/clean-css/lib/reader/read-sources.js b/node_modules/clean-css/lib/reader/read-sources.js index e12e23514..c9173ed62 100644 --- a/node_modules/clean-css/lib/reader/read-sources.js +++ b/node_modules/clean-css/lib/reader/read-sources.js @@ -5,7 +5,6 @@ var applySourceMaps = require('./apply-source-maps'); var extractImportUrlAndMedia = require('./extract-import-url-and-media'); var isAllowedResource = require('./is-allowed-resource'); var loadOriginalSources = require('./load-original-sources'); -var loadRemoteResource = require('./load-remote-resource'); var normalizePath = require('./normalize-path'); var rebase = require('./rebase'); var rebaseLocalMap = require('./rebase-local-map'); @@ -50,27 +49,38 @@ function fromString(input, context, callback) { } function fromArray(input, context, callback) { - var inputAsImports = input.reduce(function (accumulator, uri) { - var normalizedUri = normalizeUri(uri); + var inputAsImports = input.reduce(function (accumulator, uriOrHash) { + if (typeof uriOrHash === 'string') { + return addStringSource(uriOrHash, accumulator); + } else { + return addHashSource(uriOrHash, context, accumulator); + } - accumulator.push(restoreAsImport(normalizedUri)); - return accumulator; }, []); return fromStyles(inputAsImports.join(''), context, { inline: ['all'] }, callback); } function fromHash(input, context, callback) { + var inputAsImports = addHashSource(input, context, []); + return fromStyles(inputAsImports.join(''), context, { inline: ['all'] }, callback); +} + +function addStringSource(input, imports) { + imports.push(restoreAsImport(normalizeUri(input))); + return imports; +} + +function addHashSource(input, context, imports) { var uri; var normalizedUri; var source; - var inputAsImports = []; for (uri in input) { source = input[uri]; normalizedUri = normalizeUri(uri); - inputAsImports.push(restoreAsImport(normalizedUri)); + imports.push(restoreAsImport(normalizedUri)); context.sourcesContent[normalizedUri] = source.styles; @@ -79,7 +89,7 @@ function fromHash(input, context, callback) { } } - return fromStyles(inputAsImports.join(''), context, { inline: ['all'] }, callback); + return imports; } function normalizeUri(uri) { @@ -152,6 +162,7 @@ function inline(tokens, externalContext, parentInlinerContext, callback) { callback: callback, errors: externalContext.errors, externalContext: externalContext, + fetch: externalContext.options.fetch, inlinedStylesheets: parentInlinerContext.inlinedStylesheets || externalContext.inlinedStylesheets, inline: parentInlinerContext.inline, inlineRequest: externalContext.options.inlineRequest, @@ -267,7 +278,7 @@ function inlineRemoteStylesheet(uri, mediaQuery, metadata, inlinerContext) { return isLoaded ? whenLoaded(null, inlinerContext.externalContext.sourcesContent[uri]) : - loadRemoteResource(uri, inlinerContext.inlineRequest, inlinerContext.inlineTimeout, whenLoaded); + inlinerContext.fetch(uri, inlinerContext.inlineRequest, inlinerContext.inlineTimeout, whenLoaded); } function inlineLocalStylesheet(uri, mediaQuery, metadata, inlinerContext) { |