UNPKG

eyeglass

Version:
41 lines 1.72 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const SassImplementation_1 = require("../util/SassImplementation"); const typescriptUtils_1 = require("../util/typescriptUtils"); const errorFor_1 = require("../util/errorFor"); const assetFunctions = function (eyeglass, sass) { return { "eyeglass-asset-uri($registered-assets, $relative-path)": function ($assets, $uri, done) { let $assetMap; if (!SassImplementation_1.isType(sass, $assets, "map")) { return done(SassImplementation_1.typeError(sass, "map", $assets)); } if (SassImplementation_1.isSassList(sass, $assets)) { $assetMap = new sass.types.Map(0); } else { $assetMap = $assets; } eyeglass.assets.resolveAsset($assetMap, $uri, function (error, assetUri) { let result; if (error || !typescriptUtils_1.isPresent(assetUri)) { if (SassImplementation_1.isSassError(sass, error)) { result = error; } else if (typescriptUtils_1.isPresent(error)) { result = new sass.types.Error(errorFor_1.errorMessageFor(error)); } else { result = new sass.types.Error("[internal error] A uri was not returned"); } } else { result = new sass.types.String(assetUri); } done(result); }); } }; }; exports.default = assetFunctions; //# sourceMappingURL=asset-uri.js.map