codify-images 3.0.11 → 3.0.12
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/dist/coa.js +2 -2
- package/dist/codify-images.js +2 -2
- package/dist/errors.js +2 -2
- package/package.json +3 -3
package/dist/coa.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.setUpProgram=void 0;var _package=require("../package.json");var _commander=require("commander");var _fs=require("fs");var _chalk=_interopRequireDefault(require("chalk"));var _codifyImages=require("./codify-images.js");var _mkdirp=require("mkdirp");var _path=require("path");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{blue,green,red,yellow}=_chalk.default;const mkdirpSync=_mkdirp.mkdirp.sync;const generateStart=options=>{let output=options.banner===true?"// auto-generated\n":"";if(options.es===5){output+="module.exports = {\n"}return output};const generateLine=(name,data,options)=>{const adjustedData=options.doubleQuotes!==true?`'${data.replace(/'/g,"\\'")}'`:`"${data}"`;const indentType=options.indentType==="tab"?"\t":" ";const indent=indentType.repeat(options.indentCount);return options.es===6?`export const ${name} = ${adjustedData};`:`${indent}${name}: ${adjustedData}
|
|
2
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcGFja2FnZSIsInJlcXVpcmUiLCJfY29tbWFuZGVyIiwiX2ZzIiwiX2NoYWxrIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9jb2RpZnlJbWFnZXMiLCJfbWtkaXJwIiwiX3BhdGgiLCJlIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJibHVlIiwiZ3JlZW4iLCJyZWQiLCJ5ZWxsb3ciLCJjaGFsayIsIm1rZGlycFN5bmMiLCJta2RpcnAiLCJzeW5jIiwiZ2VuZXJhdGVTdGFydCIsIm9wdGlvbnMiLCJvdXRwdXQiLCJiYW5uZXIiLCJlcyIsImdlbmVyYXRlTGluZSIsIm5hbWUiLCJkYXRhIiwiYWRqdXN0ZWREYXRhIiwiZG91YmxlUXVvdGVzIiwicmVwbGFjZSIsImluZGVudFR5cGUiLCJpbmRlbnQiLCJyZXBlYXQiLCJpbmRlbnRDb3VudCIsImdlbmVyYXRlTGluZUVuZGluZyIsImxhc3QiLCJnZW5lcmF0ZUVuZCIsIndyaXRlT3V0cHV0Iiwib3V0cHV0UGF0aCIsIndyaXRlRmlsZVN5bmMiLCJlbmNvZGluZyIsImxvZ1N0YXJ0IiwibWVzc2FnZSIsImNvbnNvbGUiLCJsb2ciLCJncm91cCIsImxvZ0luZm8iLCJsb2dFcnJvciIsImdyb3VwRW5kIiwibG9nUHJvY2Vzc2VkIiwicGF0aCIsImxvZ0VuZCIsImdlbmVyYXRlIiwiaW5wdXQiLCJpbWFnZXMiLCJjb2RpZnlJbWFnZXNTeW5jIiwic3ZnTW9kZSIsIk9iamVjdCIsImtleXMiLCJsZW5ndGgiLCJFcnJvciIsImluZGV4Iiwia2V5IiwicmVzb2x2ZSIsImN1c3RvbVBhcnNlSW50IiwidmFsdWUiLCJwYXJzZWRWYWx1ZSIsInBhcnNlSW50IiwiaXNOYU4iLCJJbnZhbGlkQXJndW1lbnRFcnJvciIsInNldFVwUHJvZ3JhbSIsInByb2dyYW0iLCJjbGlOYW1lIiwidmVyc2lvbiIsImNsaVZlcnNpb24iLCJzaG93SGVscEFmdGVyRXJyb3IiLCJjb25maWd1cmVPdXRwdXQiLCJvdXRwdXRFcnJvciIsIndyaXRlIiwiYXJndW1lbnQiLCJzdGF0Iiwic3RhdFN5bmMiLCJpc0RpcmVjdG9yeSIsIm9wdGlvbiIsImNob2ljZXNFcyIsImluY2x1ZGVzIiwiY2hvaWNlcyIsImpvaW4iLCJhZGRPcHRpb24iLCJPcHRpb24iLCJhY3Rpb24iLCJvcHRzIiwiZXJyIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uL3NyYy9jb2EuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbmFtZSBhcyBjbGlOYW1lLCB2ZXJzaW9uIGFzIGNsaVZlcnNpb24gfSBmcm9tICcuLi9wYWNrYWdlLmpzb24nO1xuaW1wb3J0IHsgSW52YWxpZEFyZ3VtZW50RXJyb3IsIE9wdGlvbiB9IGZyb20gJ2NvbW1hbmRlcic7XG5pbXBvcnQgeyBzdGF0U3luYywgd3JpdGVGaWxlU3luYyB9IGZyb20gJ2ZzJztcbmltcG9ydCBjaGFsayBmcm9tICdjaGFsayc7XG5pbXBvcnQgeyBjb2RpZnlJbWFnZXNTeW5jIH0gZnJvbSAnLi9jb2RpZnktaW1hZ2VzLmpzJztcbmltcG9ydCB7IG1rZGlycCB9IGZyb20gJ21rZGlycCc7XG5pbXBvcnQgeyByZXNvbHZlIH0gZnJvbSAncGF0aCc7XG5cbmNvbnN0IHsgYmx1ZSwgZ3JlZW4sIHJlZCwgeWVsbG93IH0gPSBjaGFsaztcbmNvbnN0IG1rZGlycFN5bmMgPSBta2RpcnAuc3luYztcblxuY29uc3QgZ2VuZXJhdGVTdGFydCA9IG9wdGlvbnMgPT4ge1xuICBsZXQgb3V0cHV0ID0gb3B0aW9ucy5iYW5uZXIgPT09IHRydWUgPyAnLy8gYXV0by1nZW5lcmF0ZWRcXG4nIDogJyc7XG5cbiAgaWYgKG9wdGlvbnMuZXMgPT09IDUpIHtcbiAgICBvdXRwdXQgKz0gJ21vZHVsZS5leHBvcnRzID0ge1xcbic7XG4gIH1cblxuICByZXR1cm4gb3V0cHV0O1xufTtcblxuY29uc3QgZ2VuZXJhdGVMaW5lID0gKG5hbWUsIGRhdGEsIG9wdGlvbnMpID0+IHtcbiAgY29uc3QgYWRqdXN0ZWREYXRhID0gb3B0aW9ucy5kb3VibGVRdW90ZXMgIT09IHRydWUgP1xuICAgIGAnJHtkYXRhLnJlcGxhY2UoLycvZywgJ1xcXFxcXCcnKX0nYCA6XG4gICAgYFwiJHtkYXRhfVwiYDtcbiAgY29uc3QgaW5kZW50VHlwZSA9IG9wdGlvbnMuaW5kZW50VHlwZSA9PT0gJ3RhYicgPyAnXFx0JyA6ICcgJztcbiAgY29uc3QgaW5kZW50ID0gaW5kZW50VHlwZS5yZXBlYXQob3B0aW9ucy5pbmRlbnRDb3VudCk7XG5cbiAgcmV0dXJuIG9wdGlvbnMuZXMgPT09IDYgP1xuICAgIGBleHBvcnQgY29uc3QgJHtuYW1lfSA9ICR7YWRqdXN0ZWREYXRhfTtgIDpcbiAgICBgJHtpbmRlbnR9JHtuYW1lfTogJHthZGp1c3RlZERhdGF9YDtcbn07XG5cbmNvbnN0IGdlbmVyYXRlTGluZUVuZGluZyA9IChvcHRpb25zLCBsYXN0KSA9PiB7XG4gIHJldHVybiBvcHRpb25zLmVzICE9PSA2ICYmICFsYXN0ID8gJyxcXG4nIDogJ1xcbic7XG59O1xuXG5jb25zdCBnZW5lcmF0ZUVuZCA9IG9wdGlvbnMgPT4ge1xuICByZXR1cm4gb3B0aW9ucy5lcyAhPT0gNiA/ICd9O1xcbicgOiAnJztcbn07XG5cbmNvbnN0IHdyaXRlT3V0cHV0ID0gKG91dHB1dFBhdGgsIG91dHB1dCwgb3B0aW9ucykgPT4ge1xuICBta2RpcnBTeW5jKG9wdGlvbnMub3V0cHV0KTtcbiAgd3JpdGVGaWxlU3luYyhvdXRwdXRQYXRoLCBvdXRwdXQsIHsgZW5jb2Rpbmc6ICd1dGYtOCcgfSk7XG59O1xuXG5jb25zdCBsb2dTdGFydCA9IG1lc3NhZ2UgPT4ge1xuICBjb25zb2xlLmxvZyh5ZWxsb3cobWVzc2FnZSkpO1xuICBjb25zb2xlLmdyb3VwKCk7XG59O1xuXG5jb25zdCBsb2dJbmZvID0gbWVzc2FnZSA9PiB7XG4gIGNvbnNvbGUubG9nKGJsdWUobWVzc2FnZSkpO1xufTtcblxuY29uc3QgbG9nRXJyb3IgPSBtZXNzYWdlID0+IHtcbiAgY29uc29sZS5ncm91cEVuZCgpO1xuICBjb25zb2xlLmxvZyhyZWQoYGVycm9yOiAke21lc3NhZ2V9YCkpO1xufTtcblxuY29uc3QgbG9nUHJvY2Vzc2VkID0gKHBhdGgsIG5hbWUpID0+IHtcbiAgbG9nSW5mbyhgcHJvY2Vzc2VkIGltYWdlICgke3BhdGh9ID0+ICR7bmFtZX0pYCk7XG59O1xuXG5jb25zdCBsb2dFbmQgPSBtZXNzYWdlID0+IHtcbiAgY29uc29sZS5ncm91cEVuZCgpO1xuICBjb25zb2xlLmxvZyhncmVlbihtZXNzYWdlKSk7XG59O1xuXG5jb25zdCBnZW5lcmF0ZSA9IG9wdGlvbnMgPT4ge1xuICBsb2dTdGFydCh5ZWxsb3coYGdlbmVyYXRpbmcgZXhwb3J0cyAoJHtvcHRpb25zLmlucHV0fSkgLi4uYCkpO1xuXG4gIGxldCBvdXRwdXQgPSBnZW5lcmF0ZVN0YXJ0KG9wdGlvbnMpO1xuICBjb25zdCBpbWFnZXMgPSBjb2RpZnlJbWFnZXNTeW5jKFxuICAgIG9wdGlvbnMuaW5wdXQsXG4gICAgeyBsb2c6IGxvZ1Byb2Nlc3NlZCwgc3ZnTW9kZTogb3B0aW9ucy5zdmdNb2RlIH1cbiAgKTtcblxuICBpZiAoT2JqZWN0LmtleXMoaW1hZ2VzKS5sZW5ndGggPT09IDApIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ25vIGltYWdlcyBhdmFpbGFibGUgYXQgaW5wdXQgcGF0aC4nKTtcbiAgfVxuXG4gIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhpbWFnZXMpO1xuXG4gIGZvciAoY29uc3QgaW5kZXggaW4ga2V5cykge1xuICAgIGNvbnN0IGtleSA9IGtleXNbaW5kZXhdO1xuICAgIGNvbnN0IGRhdGEgPSBpbWFnZXNba2V5XTtcblxuICAgIG91dHB1dCArPSBnZW5lcmF0ZUxpbmUoa2V5LCBkYXRhLCBvcHRpb25zKTtcbiAgICBvdXRwdXQgKz0gZ2VuZXJhdGVMaW5lRW5kaW5nKG9wdGlvbnMsIGluZGV4ID09PSBrZXlzLmxlbmd0aCAtIDEpO1xuXG4gICAgbG9nSW5mbyhgd3JpdGluZyBleHBvcnQgKCR7a2V5fSlgKTtcbiAgfVxuXG4gIG91dHB1dCArPSBnZW5lcmF0ZUVuZChvcHRpb25zKTtcblxuICBjb25zdCBvdXRwdXRQYXRoID0gcmVzb2x2ZShvcHRpb25zLm91dHB1dCwgJ2ltYWdlcy5qcycpO1xuXG4gIHdyaXRlT3V0cHV0KG91dHB1dFBhdGgsIG91dHB1dCwgb3B0aW9ucyk7XG4gIGxvZ0VuZChgZXhwb3J0cyBnZW5lcmF0ZWQgKCR7b3V0cHV0UGF0aH0pYCk7XG59O1xuXG5jb25zdCBjdXN0b21QYXJzZUludCA9IHZhbHVlID0+IHtcbiAgY29uc3QgcGFyc2VkVmFsdWUgPSBwYXJzZUludCh2YWx1ZSwgMTApO1xuXG4gIGlmIChpc05hTihwYXJzZWRWYWx1ZSkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ011c3QgYmUgdmFsaWQgaW50ZWdlci4nKTtcbiAgfSBlbHNlIGlmIChwYXJzZWRWYWx1ZSA8PSAwKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdNdXN0IGJlIHBvc2l0aXZlIGludGVnZXIuJyk7XG4gIH1cblxuICByZXR1cm4gcGFyc2VkVmFsdWU7XG59O1xuXG5leHBvcnQgY29uc3Qgc2V0VXBQcm9ncmFtID0gcHJvZ3JhbSA9PiB7XG4gIHByb2dyYW1cbiAgICAubmFtZShjbGlOYW1lKVxuICAgIC52ZXJzaW9uKGNsaVZlcnNpb24pXG4gICAgLnNob3dIZWxwQWZ0ZXJFcnJvcigpXG4gICAgLmNvbmZpZ3VyZU91dHB1dCh7IG91dHB1dEVycm9yOiAobWVzc2FnZSwgd3JpdGUpID0+IHdyaXRlKHJlZChtZXNzYWdlKSkgfSlcbiAgICAuYXJndW1lbnQoXG4gICAgICAnPGlucHV0IHBhdGg+JyxcbiAgICAgICdwYXRoIHRvIHdoZXJlIGltYWdlIGZpbGVzIHJlc2lkZScsXG4gICAgICB2YWx1ZSA9PiB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgY29uc3QgcGF0aCA9IHJlc29sdmUodmFsdWUpO1xuICAgICAgICAgIGNvbnN0IHN0YXQgPSBzdGF0U3luYyhwYXRoKTtcblxuICAgICAgICAgIGlmICghc3RhdC5pc0RpcmVjdG9yeSgpKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ011c3QgYmUgZGlyZWN0b3J5LicpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiBwYXRoO1xuICAgICAgICB9IGNhdGNoIHtcbiAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ011c3QgZXhpc3QuJyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICApXG4gICAgLm9wdGlvbihcbiAgICAgICctZCwgLS1kb3VibGUtcXVvdGVzJyxcbiAgICAgICdVc2UgZG91YmxlIHF1b3RlcyBmb3Igb3V0cHV0IGluc3RlYWQgb2Ygc2luZ2xlIHF1b3RlcycsXG4gICAgICBmYWxzZVxuICAgIClcbiAgICAub3B0aW9uKFxuICAgICAgJy1vLCAtLW91dHB1dCA8cGF0aD4nLFxuICAgICAgJ3BhdGggdG8gd3JpdGUgZ2VuZXJhdGVkIGZpbGVzJyxcbiAgICAgIHZhbHVlID0+IHJlc29sdmUodmFsdWUpLFxuICAgICAgJ2dlbmVyYXRlZCdcbiAgICApXG4gICAgLm9wdGlvbihcbiAgICAgICctZSwgLS1lcyA8dmVyc2lvbj4nLFxuICAgICAgJ3ZlcnNpb24gb2YgRVNNIHRvIGdlbmVyYXRlJyxcbiAgICAgIHZhbHVlID0+IHtcbiAgICAgICAgY29uc3QgcGFyc2VkVmFsdWUgPSBjdXN0b21QYXJzZUludCh2YWx1ZSk7XG4gICAgICAgIGNvbnN0IGNob2ljZXNFcyA9IFs1LCA2XTtcblxuICAgICAgICBpZiAoIWNob2ljZXNFcy5pbmNsdWRlcyhwYXJzZWRWYWx1ZSkpIHtcbiAgICAgICAgICBjb25zdCBjaG9pY2VzID0gY2hvaWNlc0VzLmpvaW4oJywgJyk7XG5cbiAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoYEFsbG93ZWQgY2hvaWNlcyBhcmUgJHtjaG9pY2VzfS5gKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBwYXJzZWRWYWx1ZTtcbiAgICAgIH0sXG4gICAgICA2XG4gICAgKVxuICAgIC5vcHRpb24oXG4gICAgICAnLWMsIC0taW5kZW50LWNvdW50IDxjb3VudD4nLFxuICAgICAgJ251bWJlciBvZiBpbmRlbnQgZWxlbWVudHMgdG8gb3V0cHV0JyxcbiAgICAgIHZhbHVlID0+IGN1c3RvbVBhcnNlSW50KHZhbHVlKSxcbiAgICAgIDFcbiAgICApXG4gICAgLm9wdGlvbihcbiAgICAgICctQiwgLS1uby1iYW5uZXInLFxuICAgICAgJ2RvIG5vdCBpbmNsdWRlIGJhbm5lciBjb21tZW50IGF0IHRvcCBvZiBnZW5lcmF0ZWQgZmlsZSdcbiAgICApXG4gICAgLmFkZE9wdGlvbihcbiAgICAgIG5ldyBPcHRpb24oJy10LCAtLWluZGVudC10eXBlIDx0eXBlPicsICd0eXBlIG9mIGluZGVudCB0byBvdXRwdXQnKVxuICAgICAgICAuY2hvaWNlcyhbJ3RhYicsICdzcGFjZSddKVxuICAgICAgICAuZGVmYXVsdCgndGFiJylcbiAgICApXG4gICAgLmFkZE9wdGlvbihcbiAgICAgIG5ldyBPcHRpb24oJy1zLCAtLXN2Zy1tb2RlIDxtb2RlPicsICdvdXRwdXQgbW9kZSB0byB1c2UgZm9yIFNWRyBpbWFnZXMnKVxuICAgICAgICAuY2hvaWNlcyhbJ2Jhc2U2NCcsICd1cmknLCAnbWluaScsICdtaW5pLXNyY3NldCddKVxuICAgICAgICAuZGVmYXVsdCgnYmFzZTY0JylcbiAgICApXG4gICAgLmFjdGlvbigoaW5wdXQsIG9wdHMpID0+IHtcbiAgICAgIGlmIChvcHRzLm91dHB1dCA9PT0gJ2dlbmVyYXRlZCcpIHtcbiAgICAgICAgb3B0cy5vdXRwdXQgPSByZXNvbHZlKG9wdHMub3V0cHV0KTtcbiAgICAgIH1cblxuICAgICAgdHJ5IHtcbiAgICAgICAgZ2VuZXJhdGUoeyBpbnB1dCwgLi4ub3B0cyB9KTtcbiAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICBsb2dFcnJvcihlcnIubWVzc2FnZSk7XG5cbiAgICAgICAgdGhyb3cgZXJyO1xuICAgICAgfVxuICAgIH0pO1xufTtcbiJdLCJtYXBwaW5ncyI6ImtHQUFBLElBQUFBLFFBQUEsQ0FBQUMsT0FBQSxvQkFDQSxJQUFBQyxVQUFBLENBQUFELE9BQUEsY0FDQSxJQUFBRSxHQUFBLENBQUFGLE9BQUEsT0FDQSxJQUFBRyxNQUFBLENBQUFDLHNCQUFBLENBQUFKLE9BQUEsV0FDQSxJQUFBSyxhQUFBLENBQUFMLE9BQUEsdUJBQ0EsSUFBQU0sT0FBQSxDQUFBTixPQUFBLFdBQ0EsSUFBQU8sS0FBQSxDQUFBUCxPQUFBLFNBQStCLFNBQUFJLHVCQUFBSSxDQUFBLFNBQUFBLENBQUEsRUFBQUEsQ0FBQSxDQUFBQyxVQUFBLENBQUFELENBQUEsRUFBQUUsT0FBQSxDQUFBRixDQUFBLEVBRS9CLEtBQU0sQ0FBRUcsSUFBSSxDQUFFQyxLQUFLLENBQUVDLEdBQUcsQ0FBRUMsTUFBTyxDQUFDLENBQUdDLGNBQUssQ0FDMUMsS0FBTSxDQUFBQyxVQUFVLENBQUdDLGNBQU0sQ0FBQ0MsSUFBSSxDQUU5QixLQUFNLENBQUFDLGFBQWEsQ0FBR0MsT0FBTyxFQUFJLENBQy9CLEdBQUksQ0FBQUMsTUFBTSxDQUFHRCxPQUFPLENBQUNFLE1BQU0sR0FBSyxJQUFJLENBQUcscUJBQXFCLENBQUcsRUFBRSxDQUVqRSxHQUFJRixPQUFPLENBQUNHLEVBQUUsR0FBSyxDQUFDLENBQUUsQ0FDcEJGLE1BQU0sRUFBSSxzQkFDWixDQUVBLE1BQU8sQ0FBQUEsTUFDVCxDQUFDLENBRUQsS0FBTSxDQUFBRyxZQUFZLENBQUdBLENBQUNDLElBQUksQ0FBRUMsSUFBSSxDQUFFTixPQUFPLEdBQUssQ0FDNUMsS0FBTSxDQUFBTyxZQUFZLENBQUdQLE9BQU8sQ0FBQ1EsWUFBWSxHQUFLLElBQUksQ0FDaEQsSUFBSUYsSUFBSSxDQUFDRyxPQUFPLENBQUMsSUFBSSxDQUFFLEtBQU0sQ0FBQyxHQUFHLENBQ2pDLElBQUlILElBQUksR0FBRyxDQUNiLEtBQU0sQ0FBQUksVUFBVSxDQUFHVixPQUFPLENBQUNVLFVBQVUsR0FBSyxLQUFLLENBQUcsSUFBSSxDQUFHLEdBQUcsQ0FDNUQsS0FBTSxDQUFBQyxNQUFNLENBQUdELFVBQVUsQ0FBQ0UsTUFBTSxDQUFDWixPQUFPLENBQUNhLFdBQVcsQ0FBQyxDQUVyRCxNQUFPLENBQUFiLE9BQU8sQ0FBQ0csRUFBRSxHQUFLLENBQUMsQ0FDckIsZ0JBQWdCRSxJQUFJLE1BQU1FLFlBQVksR0FBRyxDQUN6QyxHQUFHSSxNQUFNLEdBQUdOLElBQUksS0FBS0UsWUFBWSxFQUNyQyxDQUFDLENBRUQsS0FBTSxDQUFBTyxrQkFBa0IsQ0FBR0EsQ0FBQ2QsT0FBTyxDQUFFZSxJQUFJLEdBQUssQ0FDNUMsTUFBTyxDQUFBZixPQUFPLENBQUNHLEVBQUUsR0FBSyxDQUFDLEVBQUksQ0FBQ1ksSUFBSSxDQUFHLEtBQUssQ0FBRyxJQUM3QyxDQUFDLENBRUQsS0FBTSxDQUFBQyxXQUFXLENBQUdoQixPQUFPLEVBQUksQ0FDN0IsTUFBTyxDQUFBQSxPQUFPLENBQUNHLEVBQUUsR0FBSyxDQUFDLENBQUcsTUFBTSxDQUFHLEVBQ3JDLENBQUMsQ0FFRCxLQUFNLENBQUFjLFdBQVcsQ0FBR0EsQ0FBQ0MsVUFBVSxDQUFFakIsTUFBTSxDQUFFRCxPQUFPLEdBQUssQ0FDbkRKLFVBQVUsQ0FBQ0ksT0FBTyxDQUFDQyxNQUFNLENBQUMsQ0FDMUIsR0FBQWtCLGlCQUFhLEVBQUNELFVBQVUsQ0FBRWpCLE1BQU0sQ0FBRSxDQUFFbUIsUUFBUSxDQUFFLE9BQVEsQ0FBQyxDQUN6RCxDQUFDLENBRUQsS0FBTSxDQUFBQyxRQUFRLENBQUdDLE9BQU8sRUFBSSxDQUMxQkMsT0FBTyxDQUFDQyxHQUFHLENBQUM5QixNQUFNLENBQUM0QixPQUFPLENBQUMsQ0FBQyxDQUM1QkMsT0FBTyxDQUFDRSxLQUFLLENBQUMsQ0FDaEIsQ0FBQyxDQUVELEtBQU0sQ0FBQUMsT0FBTyxDQUFHSixPQUFPLEVBQUksQ0FDekJDLE9BQU8sQ0FBQ0MsR0FBRyxDQUFDakMsSUFBSSxDQUFDK0IsT0FBTyxDQUFDLENBQzNCLENBQUMsQ0FFRCxLQUFNLENBQUFLLFFBQVEsQ0FBR0wsT0FBTyxFQUFJLENBQzFCQyxPQUFPLENBQUNLLFFBQVEsQ0FBQyxDQUFDLENBQ2xCTCxPQUFPLENBQUNDLEdBQUcsQ0FBQy9CLEdBQUcsQ0FBQyxVQUFVNkIsT0FBTyxFQUFFLENBQUMsQ0FDdEMsQ0FBQyxDQUVELEtBQU0sQ0FBQU8sWUFBWSxDQUFHQSxDQUFDQyxJQUFJLENBQUV6QixJQUFJLEdBQUssQ0FDbkNxQixPQUFPLENBQUMsb0JBQW9CSSxJQUFJLE9BQU96QixJQUFJLEdBQUcsQ0FDaEQsQ0FBQyxDQUVELEtBQU0sQ0FBQTBCLE1BQU0sQ0FBR1QsT0FBTyxFQUFJLENBQ3hCQyxPQUFPLENBQUNLLFFBQVEsQ0FBQyxDQUFDLENBQ2xCTCxPQUFPLENBQUNDLEdBQUcsQ0FBQ2hDLEtBQUssQ0FBQzhCLE9BQU8sQ0FBQyxDQUM1QixDQUFDLENBRUQsS0FBTSxDQUFBVSxRQUFRLENBQUdoQyxPQUFPLEVBQUksQ0FDMUJxQixRQUFRLENBQUMzQixNQUFNLENBQUMsdUJBQXVCTSxPQUFPLENBQUNpQyxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBRTdELEdBQUksQ0FBQWhDLE1BQU0sQ0FBR0YsYUFBYSxDQUFDQyxPQUFPLENBQUMsQ0FDbkMsS0FBTSxDQUFBa0MsTUFBTSxDQUFHLEdBQUFDLDhCQUFnQixFQUM3Qm5DLE9BQU8sQ0FBQ2lDLEtBQUssQ0FDYixDQUFFVCxHQUFHLENBQUVLLFlBQVksQ0FBRU8sT0FBTyxDQUFFcEMsT0FBTyxDQUFDb0MsT0FBUSxDQUNoRCxDQUFDLENBRUQsR0FBSUMsTUFBTSxDQUFDQyxJQUFJLENBQUNKLE1BQU0sQ0FBQyxDQUFDSyxNQUFNLEdBQUssQ0FBQyxDQUFFLENBQ3BDLEtBQU0sSUFBSSxDQUFBQyxLQUFLLENBQUMsb0NBQW9DLENBQ3RELENBRUEsS0FBTSxDQUFBRixJQUFJLENBQUdELE1BQU0sQ0FBQ0MsSUFBSSxDQUFDSixNQUFNLENBQUMsQ0FFaEMsSUFBSyxLQUFNLENBQUFPLEtBQUssR0FBSSxDQUFBSCxJQUFJLENBQUUsQ0FDeEIsS0FBTSxDQUFBSSxHQUFHLENBQUdKLElBQUksQ0FBQ0csS0FBSyxDQUFDLENBQ3ZCLEtBQU0sQ0FBQW5DLElBQUksQ0FBRzRCLE1BQU0sQ0FBQ1EsR0FBRyxDQUFDLENBRXhCekMsTUFBTSxFQUFJRyxZQUFZLENBQUNzQyxHQUFHLENBQUVwQyxJQUFJLENBQUVOLE9BQU8sQ0FBQyxDQUMxQ0MsTUFBTSxFQUFJYSxrQkFBa0IsQ0FBQ2QsT0FBTyxDQUFFeUMsS0FBSyxHQUFLSCxJQUFJLENBQUNDLE1BQU0sQ0FBRyxDQUFDLENBQUMsQ0FFaEViLE9BQU8sQ0FBQyxtQkFBbUJnQixHQUFHLEdBQUcsQ0FDbkMsQ0FFQXpDLE1BQU0sRUFBSWUsV0FBVyxDQUFDaEIsT0FBTyxDQUFDLENBRTlCLEtBQU0sQ0FBQWtCLFVBQVUsQ0FBRyxHQUFBeUIsYUFBTyxFQUFDM0MsT0FBTyxDQUFDQyxNQUFNLENBQUUsV0FBVyxDQUFDLENBRXZEZ0IsV0FBVyxDQUFDQyxVQUFVLENBQUVqQixNQUFNLENBQUVELE9BQU8sQ0FBQyxDQUN4QytCLE1BQU0sQ0FBQyxzQkFBc0JiLFVBQVUsR0FBRyxDQUM1QyxDQUFDLENBRUQsS0FBTSxDQUFBMEIsY0FBYyxDQUFHQyxLQUFLLEVBQUksQ0FDOUIsS0FBTSxDQUFBQyxXQUFXLENBQUdDLFFBQVEsQ0FBQ0YsS0FBSyxDQUFFLEVBQUUsQ0FBQyxDQUV2QyxHQUFJRyxLQUFLLENBQUNGLFdBQVcsQ0FBQyxDQUFFLENBQ3RCLEtBQU0sSUFBSSxDQUFBRywrQkFBb0IsQ0FBQyx3QkFBd0IsQ0FDekQsQ0FBQyxJQUFNLElBQUlILFdBQVcsRUFBSSxDQUFDLENBQUUsQ0FDM0IsS0FBTSxJQUFJLENBQUFHLCtCQUFvQixDQUFDLDJCQUEyQixDQUM1RCxDQUVBLE1BQU8sQ0FBQUgsV0FDVCxDQUFDLENBRU0sS0FBTSxDQUFBSSxZQUFZLENBQUdDLE9BQU8sRUFBSSxDQUNyQ0EsT0FBTyxDQUNKOUMsSUFBSSxDQUFDK0MsYUFBTyxDQUFDLENBQ2JDLE9BQU8sQ0FBQ0MsZ0JBQVUsQ0FBQyxDQUNuQkMsa0JBQWtCLENBQUMsQ0FBQyxDQUNwQkMsZUFBZSxDQUFDLENBQUVDLFdBQVcsQ0FBRUEsQ0FBQ25DLE9BQU8sQ0FBRW9DLEtBQUssR0FBS0EsS0FBSyxDQUFDakUsR0FBRyxDQUFDNkIsT0FBTyxDQUFDLENBQUUsQ0FBQyxDQUFDLENBQ3pFcUMsUUFBUSxDQUNQLGNBQWMsQ0FDZCxrQ0FBa0MsQ0FDbENkLEtBQUssRUFBSSxDQUNQLEdBQUksQ0FDRixLQUFNLENBQUFmLElBQUksQ0FBRyxHQUFBYSxhQUFPLEVBQUNFLEtBQUssQ0FBQyxDQUMzQixLQUFNLENBQUFlLElBQUksQ0FBRyxHQUFBQyxZQUFRLEVBQUMvQixJQUFJLENBQUMsQ0FFM0IsR0FBSSxDQUFDOEIsSUFBSSxDQUFDRSxXQUFXLENBQUMsQ0FBQyxDQUFFLENBQ3ZCLEtBQU0sSUFBSSxDQUFBYiwrQkFBb0IsQ0FBQyxvQkFBb0IsQ0FDckQsQ0FFQSxNQUFPLENBQUFuQixJQUNULENBQUUsS0FBTSxDQUNOLEtBQU0sSUFBSSxDQUFBbUIsK0JBQW9CLENBQUMsYUFBYSxDQUM5QyxDQUNGLENBQ0YsQ0FBQyxDQUNBYyxNQUFNLENBQ0wscUJBQXFCLENBQ3JCLHVEQUF1RCxDQUN2RCxLQUNGLENBQUMsQ0FDQUEsTUFBTSxDQUNMLHFCQUFxQixDQUNyQiwrQkFBK0IsQ0FDL0JsQixLQUFLLEVBQUksR0FBQUYsYUFBTyxFQUFDRSxLQUFLLENBQUMsQ0FDdkIsV0FDRixDQUFDLENBQ0FrQixNQUFNLENBQ0wsb0JBQW9CLENBQ3BCLDRCQUE0QixDQUM1QmxCLEtBQUssRUFBSSxDQUNQLEtBQU0sQ0FBQUMsV0FBVyxDQUFHRixjQUFjLENBQUNDLEtBQUssQ0FBQyxDQUN6QyxLQUFNLENBQUFtQixTQUFTLENBQUcsQ0FBQyxDQUFDLENBQUUsQ0FBQyxDQUFDLENBRXhCLEdBQUksQ0FBQ0EsU0FBUyxDQUFDQyxRQUFRLENBQUNuQixXQUFXLENBQUMsQ0FBRSxDQUNwQyxLQUFNLENBQUFvQixPQUFPLENBQUdGLFNBQVMsQ0FBQ0csSUFBSSxDQUFDLElBQUksQ0FBQyxDQUVwQyxLQUFNLElBQUksQ0FBQWxCLCtCQUFvQixDQUFDLHVCQUF1QmlCLE9BQU8sR0FBRyxDQUNsRSxDQUVBLE1BQU8sQ0FBQXBCLFdBQ1QsQ0FBQyxDQUNELENBQ0YsQ0FBQyxDQUNBaUIsTUFBTSxDQUNMLDRCQUE0QixDQUM1QixxQ0FBcUMsQ0FDckNsQixLQUFLLEVBQUlELGNBQWMsQ0FBQ0MsS0FBSyxDQUFDLENBQzlCLENBQ0YsQ0FBQyxDQUNBa0IsTUFBTSxDQUNMLGlCQUFpQixDQUNqQix3REFDRixDQUFDLENBQ0FLLFNBQVMsQ0FDUixHQUFJLENBQUFDLGlCQUFNLENBQUMsMEJBQTBCLENBQUUsMEJBQTBCLENBQUMsQ0FDL0RILE9BQU8sQ0FBQyxDQUFDLEtBQUssQ0FBRSxPQUFPLENBQUMsQ0FBQyxDQUN6QjVFLE9BQU8sQ0FBQyxLQUFLLENBQ2xCLENBQUMsQ0FDQThFLFNBQVMsQ0FDUixHQUFJLENBQUFDLGlCQUFNLENBQUMsdUJBQXVCLENBQUUsbUNBQW1DLENBQUMsQ0FDckVILE9BQU8sQ0FBQyxDQUFDLFFBQVEsQ0FBRSxLQUFLLENBQUUsTUFBTSxDQUFFLGFBQWEsQ0FBQyxDQUFDLENBQ2pENUUsT0FBTyxDQUFDLFFBQVEsQ0FDckIsQ0FBQyxDQUNBZ0YsTUFBTSxDQUFDLENBQUNyQyxLQUFLLENBQUVzQyxJQUFJLEdBQUssQ0FDdkIsR0FBSUEsSUFBSSxDQUFDdEUsTUFBTSxHQUFLLFdBQVcsQ0FBRSxDQUMvQnNFLElBQUksQ0FBQ3RFLE1BQU0sQ0FBRyxHQUFBMEMsYUFBTyxFQUFDNEIsSUFBSSxDQUFDdEUsTUFBTSxDQUNuQyxDQUVBLEdBQUksQ0FDRitCLFFBQVEsQ0FBQyxDQUFFQyxLQUFLLENBQUUsR0FBR3NDLElBQUssQ0FBQyxDQUM3QixDQUFFLE1BQU9DLEdBQUcsQ0FBRSxDQUNaN0MsUUFBUSxDQUFDNkMsR0FBRyxDQUFDbEQsT0FBTyxDQUFDLENBRXJCLEtBQU0sQ0FBQWtELEdBQ1IsQ0FDRixDQUFDLENBQ0wsQ0FBQyxDQUFDQyxPQUFBLENBQUF2QixZQUFBLENBQUFBLFlBQUEiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.setUpProgram=void 0;var _package=require("../package.json");var _commander=require("commander");var _fs=require("fs");var _chalk=_interopRequireDefault(require("chalk"));var _codifyImages=require("./codify-images.js");var _mkdirp=require("mkdirp");var _path=require("path");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{blue,green,red,yellow}=_chalk.default;const mkdirpSync=_mkdirp.mkdirp.sync;const generateStart=options=>{let output=options.banner===true?"// auto-generated\n":"";if(options.es===5){output+="module.exports = {\n";}return output;};const generateLine=(name,data,options)=>{const adjustedData=options.doubleQuotes!==true?`'${data.replace(/'/g,"\\'")}'`:`"${data}"`;const indentType=options.indentType==="tab"?"\t":" ";const indent=indentType.repeat(options.indentCount);return options.es===6?`export const ${name} = ${adjustedData};`:`${indent}${name}: ${adjustedData}`;};const generateLineEnding=(options,last)=>{return options.es!==6&&!last?",\n":"\n";};const generateEnd=options=>{return options.es!==6?"};\n":"";};const writeOutput=(outputPath,output,options)=>{mkdirpSync(options.output);(0,_fs.writeFileSync)(outputPath,output,{encoding:"utf-8"});};const logStart=message=>{console.log(yellow(message));console.group();};const logInfo=message=>{console.log(blue(message));};const logError=message=>{console.groupEnd();console.log(red(`error: ${message}`));};const logProcessed=(path,name)=>{logInfo(`processed image (${path} => ${name})`);};const logEnd=message=>{console.groupEnd();console.log(green(message));};const generate=options=>{logStart(yellow(`generating exports (${options.input}) ...`));let output=generateStart(options);const images=(0,_codifyImages.codifyImagesSync)(options.input,{log:logProcessed,svgMode:options.svgMode});if(Object.keys(images).length===0){throw new Error("no images available at input path.");}const keys=Object.keys(images);for(const index in keys){const key=keys[index];const data=images[key];output+=generateLine(key,data,options);output+=generateLineEnding(options,index===keys.length-1);logInfo(`writing export (${key})`);}output+=generateEnd(options);const outputPath=(0,_path.resolve)(options.output,"images.js");writeOutput(outputPath,output,options);logEnd(`exports generated (${outputPath})`);};const customParseInt=value=>{const parsedValue=parseInt(value,10);if(isNaN(parsedValue)){throw new _commander.InvalidArgumentError("Must be valid integer.");}else if(parsedValue<=0){throw new _commander.InvalidArgumentError("Must be positive integer.");}return parsedValue;};const setUpProgram=program=>{program.name(_package.name).version(_package.version).showHelpAfterError().configureOutput({outputError:(message,write)=>write(red(message))}).argument("<input path>","path to where image files reside",value=>{try{const path=(0,_path.resolve)(value);const stat=(0,_fs.statSync)(path);if(!stat.isDirectory()){throw new _commander.InvalidArgumentError("Must be directory.");}return path;}catch{throw new _commander.InvalidArgumentError("Must exist.");}}).option("-d, --double-quotes","Use double quotes for output instead of single quotes",false).option("-o, --output <path>","path to write generated files",value=>(0,_path.resolve)(value),"generated").option("-e, --es <version>","version of ESM to generate",value=>{const parsedValue=customParseInt(value);const choicesEs=[5,6];if(!choicesEs.includes(parsedValue)){const choices=choicesEs.join(", ");throw new _commander.InvalidArgumentError(`Allowed choices are ${choices}.`);}return parsedValue;},6).option("-c, --indent-count <count>","number of indent elements to output",value=>customParseInt(value),1).option("-B, --no-banner","do not include banner comment at top of generated file").addOption(new _commander.Option("-t, --indent-type <type>","type of indent to output").choices(["tab","space"]).default("tab")).addOption(new _commander.Option("-s, --svg-mode <mode>","output mode to use for SVG images").choices(["base64","uri","mini","mini-srcset"]).default("base64")).action((input,opts)=>{if(opts.output==="generated"){opts.output=(0,_path.resolve)(opts.output);}try{generate({input,...opts});}catch(err){logError(err.message);throw err;}});};exports.setUpProgram=setUpProgram;
|
|
2
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcGFja2FnZSIsInJlcXVpcmUiLCJfY29tbWFuZGVyIiwiX2ZzIiwiX2NoYWxrIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9jb2RpZnlJbWFnZXMiLCJfbWtkaXJwIiwiX3BhdGgiLCJlIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJibHVlIiwiZ3JlZW4iLCJyZWQiLCJ5ZWxsb3ciLCJjaGFsayIsIm1rZGlycFN5bmMiLCJta2RpcnAiLCJzeW5jIiwiZ2VuZXJhdGVTdGFydCIsIm9wdGlvbnMiLCJvdXRwdXQiLCJiYW5uZXIiLCJlcyIsImdlbmVyYXRlTGluZSIsIm5hbWUiLCJkYXRhIiwiYWRqdXN0ZWREYXRhIiwiZG91YmxlUXVvdGVzIiwicmVwbGFjZSIsImluZGVudFR5cGUiLCJpbmRlbnQiLCJyZXBlYXQiLCJpbmRlbnRDb3VudCIsImdlbmVyYXRlTGluZUVuZGluZyIsImxhc3QiLCJnZW5lcmF0ZUVuZCIsIndyaXRlT3V0cHV0Iiwib3V0cHV0UGF0aCIsIndyaXRlRmlsZVN5bmMiLCJlbmNvZGluZyIsImxvZ1N0YXJ0IiwibWVzc2FnZSIsImNvbnNvbGUiLCJsb2ciLCJncm91cCIsImxvZ0luZm8iLCJsb2dFcnJvciIsImdyb3VwRW5kIiwibG9nUHJvY2Vzc2VkIiwicGF0aCIsImxvZ0VuZCIsImdlbmVyYXRlIiwiaW5wdXQiLCJpbWFnZXMiLCJjb2RpZnlJbWFnZXNTeW5jIiwic3ZnTW9kZSIsIk9iamVjdCIsImtleXMiLCJsZW5ndGgiLCJFcnJvciIsImluZGV4Iiwia2V5IiwicmVzb2x2ZSIsImN1c3RvbVBhcnNlSW50IiwidmFsdWUiLCJwYXJzZWRWYWx1ZSIsInBhcnNlSW50IiwiaXNOYU4iLCJJbnZhbGlkQXJndW1lbnRFcnJvciIsInNldFVwUHJvZ3JhbSIsInByb2dyYW0iLCJjbGlOYW1lIiwidmVyc2lvbiIsImNsaVZlcnNpb24iLCJzaG93SGVscEFmdGVyRXJyb3IiLCJjb25maWd1cmVPdXRwdXQiLCJvdXRwdXRFcnJvciIsIndyaXRlIiwiYXJndW1lbnQiLCJzdGF0Iiwic3RhdFN5bmMiLCJpc0RpcmVjdG9yeSIsIm9wdGlvbiIsImNob2ljZXNFcyIsImluY2x1ZGVzIiwiY2hvaWNlcyIsImpvaW4iLCJhZGRPcHRpb24iLCJPcHRpb24iLCJhY3Rpb24iLCJvcHRzIiwiZXJyIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uL3NyYy9jb2EuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbmFtZSBhcyBjbGlOYW1lLCB2ZXJzaW9uIGFzIGNsaVZlcnNpb24gfSBmcm9tICcuLi9wYWNrYWdlLmpzb24nO1xuaW1wb3J0IHsgSW52YWxpZEFyZ3VtZW50RXJyb3IsIE9wdGlvbiB9IGZyb20gJ2NvbW1hbmRlcic7XG5pbXBvcnQgeyBzdGF0U3luYywgd3JpdGVGaWxlU3luYyB9IGZyb20gJ2ZzJztcbmltcG9ydCBjaGFsayBmcm9tICdjaGFsayc7XG5pbXBvcnQgeyBjb2RpZnlJbWFnZXNTeW5jIH0gZnJvbSAnLi9jb2RpZnktaW1hZ2VzLmpzJztcbmltcG9ydCB7IG1rZGlycCB9IGZyb20gJ21rZGlycCc7XG5pbXBvcnQgeyByZXNvbHZlIH0gZnJvbSAncGF0aCc7XG5cbmNvbnN0IHsgYmx1ZSwgZ3JlZW4sIHJlZCwgeWVsbG93IH0gPSBjaGFsaztcbmNvbnN0IG1rZGlycFN5bmMgPSBta2RpcnAuc3luYztcblxuY29uc3QgZ2VuZXJhdGVTdGFydCA9IG9wdGlvbnMgPT4ge1xuICBsZXQgb3V0cHV0ID0gb3B0aW9ucy5iYW5uZXIgPT09IHRydWUgPyAnLy8gYXV0by1nZW5lcmF0ZWRcXG4nIDogJyc7XG5cbiAgaWYgKG9wdGlvbnMuZXMgPT09IDUpIHtcbiAgICBvdXRwdXQgKz0gJ21vZHVsZS5leHBvcnRzID0ge1xcbic7XG4gIH1cblxuICByZXR1cm4gb3V0cHV0O1xufTtcblxuY29uc3QgZ2VuZXJhdGVMaW5lID0gKG5hbWUsIGRhdGEsIG9wdGlvbnMpID0+IHtcbiAgY29uc3QgYWRqdXN0ZWREYXRhID0gb3B0aW9ucy5kb3VibGVRdW90ZXMgIT09IHRydWUgP1xuICAgIGAnJHtkYXRhLnJlcGxhY2UoLycvZywgJ1xcXFxcXCcnKX0nYCA6XG4gICAgYFwiJHtkYXRhfVwiYDtcbiAgY29uc3QgaW5kZW50VHlwZSA9IG9wdGlvbnMuaW5kZW50VHlwZSA9PT0gJ3RhYicgPyAnXFx0JyA6ICcgJztcbiAgY29uc3QgaW5kZW50ID0gaW5kZW50VHlwZS5yZXBlYXQob3B0aW9ucy5pbmRlbnRDb3VudCk7XG5cbiAgcmV0dXJuIG9wdGlvbnMuZXMgPT09IDYgP1xuICAgIGBleHBvcnQgY29uc3QgJHtuYW1lfSA9ICR7YWRqdXN0ZWREYXRhfTtgIDpcbiAgICBgJHtpbmRlbnR9JHtuYW1lfTogJHthZGp1c3RlZERhdGF9YDtcbn07XG5cbmNvbnN0IGdlbmVyYXRlTGluZUVuZGluZyA9IChvcHRpb25zLCBsYXN0KSA9PiB7XG4gIHJldHVybiBvcHRpb25zLmVzICE9PSA2ICYmICFsYXN0ID8gJyxcXG4nIDogJ1xcbic7XG59O1xuXG5jb25zdCBnZW5lcmF0ZUVuZCA9IG9wdGlvbnMgPT4ge1xuICByZXR1cm4gb3B0aW9ucy5lcyAhPT0gNiA/ICd9O1xcbicgOiAnJztcbn07XG5cbmNvbnN0IHdyaXRlT3V0cHV0ID0gKG91dHB1dFBhdGgsIG91dHB1dCwgb3B0aW9ucykgPT4ge1xuICBta2RpcnBTeW5jKG9wdGlvbnMub3V0cHV0KTtcbiAgd3JpdGVGaWxlU3luYyhvdXRwdXRQYXRoLCBvdXRwdXQsIHsgZW5jb2Rpbmc6ICd1dGYtOCcgfSk7XG59O1xuXG5jb25zdCBsb2dTdGFydCA9IG1lc3NhZ2UgPT4ge1xuICBjb25zb2xlLmxvZyh5ZWxsb3cobWVzc2FnZSkpO1xuICBjb25zb2xlLmdyb3VwKCk7XG59O1xuXG5jb25zdCBsb2dJbmZvID0gbWVzc2FnZSA9PiB7XG4gIGNvbnNvbGUubG9nKGJsdWUobWVzc2FnZSkpO1xufTtcblxuY29uc3QgbG9nRXJyb3IgPSBtZXNzYWdlID0+IHtcbiAgY29uc29sZS5ncm91cEVuZCgpO1xuICBjb25zb2xlLmxvZyhyZWQoYGVycm9yOiAke21lc3NhZ2V9YCkpO1xufTtcblxuY29uc3QgbG9nUHJvY2Vzc2VkID0gKHBhdGgsIG5hbWUpID0+IHtcbiAgbG9nSW5mbyhgcHJvY2Vzc2VkIGltYWdlICgke3BhdGh9ID0+ICR7bmFtZX0pYCk7XG59O1xuXG5jb25zdCBsb2dFbmQgPSBtZXNzYWdlID0+IHtcbiAgY29uc29sZS5ncm91cEVuZCgpO1xuICBjb25zb2xlLmxvZyhncmVlbihtZXNzYWdlKSk7XG59O1xuXG5jb25zdCBnZW5lcmF0ZSA9IG9wdGlvbnMgPT4ge1xuICBsb2dTdGFydCh5ZWxsb3coYGdlbmVyYXRpbmcgZXhwb3J0cyAoJHtvcHRpb25zLmlucHV0fSkgLi4uYCkpO1xuXG4gIGxldCBvdXRwdXQgPSBnZW5lcmF0ZVN0YXJ0KG9wdGlvbnMpO1xuICBjb25zdCBpbWFnZXMgPSBjb2RpZnlJbWFnZXNTeW5jKFxuICAgIG9wdGlvbnMuaW5wdXQsXG4gICAgeyBsb2c6IGxvZ1Byb2Nlc3NlZCwgc3ZnTW9kZTogb3B0aW9ucy5zdmdNb2RlIH1cbiAgKTtcblxuICBpZiAoT2JqZWN0LmtleXMoaW1hZ2VzKS5sZW5ndGggPT09IDApIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ25vIGltYWdlcyBhdmFpbGFibGUgYXQgaW5wdXQgcGF0aC4nKTtcbiAgfVxuXG4gIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhpbWFnZXMpO1xuXG4gIGZvciAoY29uc3QgaW5kZXggaW4ga2V5cykge1xuICAgIGNvbnN0IGtleSA9IGtleXNbaW5kZXhdO1xuICAgIGNvbnN0IGRhdGEgPSBpbWFnZXNba2V5XTtcblxuICAgIG91dHB1dCArPSBnZW5lcmF0ZUxpbmUoa2V5LCBkYXRhLCBvcHRpb25zKTtcbiAgICBvdXRwdXQgKz0gZ2VuZXJhdGVMaW5lRW5kaW5nKG9wdGlvbnMsIGluZGV4ID09PSBrZXlzLmxlbmd0aCAtIDEpO1xuXG4gICAgbG9nSW5mbyhgd3JpdGluZyBleHBvcnQgKCR7a2V5fSlgKTtcbiAgfVxuXG4gIG91dHB1dCArPSBnZW5lcmF0ZUVuZChvcHRpb25zKTtcblxuICBjb25zdCBvdXRwdXRQYXRoID0gcmVzb2x2ZShvcHRpb25zLm91dHB1dCwgJ2ltYWdlcy5qcycpO1xuXG4gIHdyaXRlT3V0cHV0KG91dHB1dFBhdGgsIG91dHB1dCwgb3B0aW9ucyk7XG4gIGxvZ0VuZChgZXhwb3J0cyBnZW5lcmF0ZWQgKCR7b3V0cHV0UGF0aH0pYCk7XG59O1xuXG5jb25zdCBjdXN0b21QYXJzZUludCA9IHZhbHVlID0+IHtcbiAgY29uc3QgcGFyc2VkVmFsdWUgPSBwYXJzZUludCh2YWx1ZSwgMTApO1xuXG4gIGlmIChpc05hTihwYXJzZWRWYWx1ZSkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ011c3QgYmUgdmFsaWQgaW50ZWdlci4nKTtcbiAgfSBlbHNlIGlmIChwYXJzZWRWYWx1ZSA8PSAwKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdNdXN0IGJlIHBvc2l0aXZlIGludGVnZXIuJyk7XG4gIH1cblxuICByZXR1cm4gcGFyc2VkVmFsdWU7XG59O1xuXG5leHBvcnQgY29uc3Qgc2V0VXBQcm9ncmFtID0gcHJvZ3JhbSA9PiB7XG4gIHByb2dyYW1cbiAgICAubmFtZShjbGlOYW1lKVxuICAgIC52ZXJzaW9uKGNsaVZlcnNpb24pXG4gICAgLnNob3dIZWxwQWZ0ZXJFcnJvcigpXG4gICAgLmNvbmZpZ3VyZU91dHB1dCh7IG91dHB1dEVycm9yOiAobWVzc2FnZSwgd3JpdGUpID0+IHdyaXRlKHJlZChtZXNzYWdlKSkgfSlcbiAgICAuYXJndW1lbnQoXG4gICAgICAnPGlucHV0IHBhdGg+JyxcbiAgICAgICdwYXRoIHRvIHdoZXJlIGltYWdlIGZpbGVzIHJlc2lkZScsXG4gICAgICB2YWx1ZSA9PiB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgY29uc3QgcGF0aCA9IHJlc29sdmUodmFsdWUpO1xuICAgICAgICAgIGNvbnN0IHN0YXQgPSBzdGF0U3luYyhwYXRoKTtcblxuICAgICAgICAgIGlmICghc3RhdC5pc0RpcmVjdG9yeSgpKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ011c3QgYmUgZGlyZWN0b3J5LicpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiBwYXRoO1xuICAgICAgICB9IGNhdGNoIHtcbiAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ011c3QgZXhpc3QuJyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICApXG4gICAgLm9wdGlvbihcbiAgICAgICctZCwgLS1kb3VibGUtcXVvdGVzJyxcbiAgICAgICdVc2UgZG91YmxlIHF1b3RlcyBmb3Igb3V0cHV0IGluc3RlYWQgb2Ygc2luZ2xlIHF1b3RlcycsXG4gICAgICBmYWxzZVxuICAgIClcbiAgICAub3B0aW9uKFxuICAgICAgJy1vLCAtLW91dHB1dCA8cGF0aD4nLFxuICAgICAgJ3BhdGggdG8gd3JpdGUgZ2VuZXJhdGVkIGZpbGVzJyxcbiAgICAgIHZhbHVlID0+IHJlc29sdmUodmFsdWUpLFxuICAgICAgJ2dlbmVyYXRlZCdcbiAgICApXG4gICAgLm9wdGlvbihcbiAgICAgICctZSwgLS1lcyA8dmVyc2lvbj4nLFxuICAgICAgJ3ZlcnNpb24gb2YgRVNNIHRvIGdlbmVyYXRlJyxcbiAgICAgIHZhbHVlID0+IHtcbiAgICAgICAgY29uc3QgcGFyc2VkVmFsdWUgPSBjdXN0b21QYXJzZUludCh2YWx1ZSk7XG4gICAgICAgIGNvbnN0IGNob2ljZXNFcyA9IFs1LCA2XTtcblxuICAgICAgICBpZiAoIWNob2ljZXNFcy5pbmNsdWRlcyhwYXJzZWRWYWx1ZSkpIHtcbiAgICAgICAgICBjb25zdCBjaG9pY2VzID0gY2hvaWNlc0VzLmpvaW4oJywgJyk7XG5cbiAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoYEFsbG93ZWQgY2hvaWNlcyBhcmUgJHtjaG9pY2VzfS5gKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBwYXJzZWRWYWx1ZTtcbiAgICAgIH0sXG4gICAgICA2XG4gICAgKVxuICAgIC5vcHRpb24oXG4gICAgICAnLWMsIC0taW5kZW50LWNvdW50IDxjb3VudD4nLFxuICAgICAgJ251bWJlciBvZiBpbmRlbnQgZWxlbWVudHMgdG8gb3V0cHV0JyxcbiAgICAgIHZhbHVlID0+IGN1c3RvbVBhcnNlSW50KHZhbHVlKSxcbiAgICAgIDFcbiAgICApXG4gICAgLm9wdGlvbihcbiAgICAgICctQiwgLS1uby1iYW5uZXInLFxuICAgICAgJ2RvIG5vdCBpbmNsdWRlIGJhbm5lciBjb21tZW50IGF0IHRvcCBvZiBnZW5lcmF0ZWQgZmlsZSdcbiAgICApXG4gICAgLmFkZE9wdGlvbihcbiAgICAgIG5ldyBPcHRpb24oJy10LCAtLWluZGVudC10eXBlIDx0eXBlPicsICd0eXBlIG9mIGluZGVudCB0byBvdXRwdXQnKVxuICAgICAgICAuY2hvaWNlcyhbJ3RhYicsICdzcGFjZSddKVxuICAgICAgICAuZGVmYXVsdCgndGFiJylcbiAgICApXG4gICAgLmFkZE9wdGlvbihcbiAgICAgIG5ldyBPcHRpb24oJy1zLCAtLXN2Zy1tb2RlIDxtb2RlPicsICdvdXRwdXQgbW9kZSB0byB1c2UgZm9yIFNWRyBpbWFnZXMnKVxuICAgICAgICAuY2hvaWNlcyhbJ2Jhc2U2NCcsICd1cmknLCAnbWluaScsICdtaW5pLXNyY3NldCddKVxuICAgICAgICAuZGVmYXVsdCgnYmFzZTY0JylcbiAgICApXG4gICAgLmFjdGlvbigoaW5wdXQsIG9wdHMpID0+IHtcbiAgICAgIGlmIChvcHRzLm91dHB1dCA9PT0gJ2dlbmVyYXRlZCcpIHtcbiAgICAgICAgb3B0cy5vdXRwdXQgPSByZXNvbHZlKG9wdHMub3V0cHV0KTtcbiAgICAgIH1cblxuICAgICAgdHJ5IHtcbiAgICAgICAgZ2VuZXJhdGUoeyBpbnB1dCwgLi4ub3B0cyB9KTtcbiAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICBsb2dFcnJvcihl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S0FBTSxDQUFBbUIsU0FBUyxDQUFHLENBQUMsQ0FBQyxDQUFFLENBQUMsQ0FBQyxDQUV4QixHQUFJLENBQUNBLFNBQVMsQ0FBQ0MsUUFBUSxDQUFDbkIsV0FBVyxDQUFDLENBQUUsQ0FDcEMsS0FBTSxDQUFBb0IsT0FBTyxDQUFHRixTQUFTLENBQUNHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FFcEMsS0FBTSxJQUFJLENBQUFsQiwrQkFBb0IsQ0FBQyx1QkFBdUJpQixPQUFPLEdBQUcsQ0FBQyxDQUNuRSxDQUVBLE1BQU8sQ0FBQXBCLFdBQVcsQ0FDcEIsQ0FBQyxDQUNELENBQ0YsQ0FBQyxDQUNBaUIsTUFBTSxDQUNMLDRCQUE0QixDQUM1QixxQ0FBcUMsQ0FDckNsQixLQUFLLEVBQUlELGNBQWMsQ0FBQ0MsS0FBSyxDQUFDLENBQzlCLENBQ0YsQ0FBQyxDQUNBa0IsTUFBTSxDQUNMLGlCQUFpQixDQUNqQix3REFDRixDQUFDLENBQ0FLLFNBQVMsQ0FDUixHQUFJLENBQUFDLGlCQUFNLENBQUMsMEJBQTBCLENBQUUsMEJBQTBCLENBQUMsQ0FDL0RILE9BQU8sQ0FBQyxDQUFDLEtBQUssQ0FBRSxPQUFPLENBQUMsQ0FBQyxDQUN6QjVFLE9BQU8sQ0FBQyxLQUFLLENBQ2xCLENBQUMsQ0FDQThFLFNBQVMsQ0FDUixHQUFJLENBQUFDLGlCQUFNLENBQUMsdUJBQXVCLENBQUUsbUNBQW1DLENBQUMsQ0FDckVILE9BQU8sQ0FBQyxDQUFDLFFBQVEsQ0FBRSxLQUFLLENBQUUsTUFBTSxDQUFFLGFBQWEsQ0FBQyxDQUFDLENBQ2pENUUsT0FBTyxDQUFDLFFBQVEsQ0FDckIsQ0FBQyxDQUNBZ0YsTUFBTSxDQUFDLENBQUNyQyxLQUFLLENBQUVzQyxJQUFJLEdBQUssQ0FDdkIsR0FBSUEsSUFBSSxDQUFDdEUsTUFBTSxHQUFLLFdBQVcsQ0FBRSxDQUMvQnNFLElBQUksQ0FBQ3RFLE1BQU0sQ0FBRyxHQUFBMEMsYUFBTyxFQUFDNEIsSUFBSSxDQUFDdEUsTUFBTSxDQUFDLENBQ3BDLENBRUEsR0FBSSxDQUNGK0IsUUFBUSxDQUFDLENBQUVDLEtBQUssQ0FBRSxHQUFHc0MsSUFBSyxDQUFDLENBQUMsQ0FDOUIsQ0FBRSxNQUFPQyxHQUFHLENBQUUsQ0FDWjdDLFFBQVEsQ0FBQzZDLEdBQUcsQ0FBQ2xELE9BQU8sQ0FBQyxDQUVyQixLQUFNLENBQUFrRCxHQUFHLENBQ1gsQ0FDRixDQUFDLENBQUMsQ0FDTixDQUFDLENBQUNDLE9BQUEsQ0FBQXZCLFlBQUEsQ0FBQUEsWUFBQSIsImlnbm9yZUxpc3QiOltdfQ==
|
package/dist/codify-images.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.default=exports.codifyImagesSync=exports.codifyImages=void 0;var errors=_interopRequireWildcard(require("./errors.js"));var _path=require("path");var _fs=require("fs");var _lodash=_interopRequireDefault(require("lodash.camelcase"));var _miniSvgDataUri=_interopRequireDefault(require("mini-svg-data-uri"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap,n=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var o,i,f={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return f;if(o=t?n:r){if(o.has(e))return o.get(e);o.set(e,f)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((i=(o=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(i.get||i.set)?o(f,t,i):f[t]=e[t]);return f})(e,t)}const{InvalidPathError,InvalidSvgModeError,UnsupportedTypeError}=errors;const svgExtension=".svg";const supportedMimeTypes={".jpg":"image/jpeg",".jpeg":"image/jpeg",".png":"image/png",".gif":"image/gif",".webp":"image/webp",".svg":"image/svg+xml"};const svgModes=["base64","uri","mini","mini-srcset"];const isObject=value=>{return Object.prototype.toString.call(value)==="[object Object]"};const getEncoding=(isSvg,options)=>{if(isSvg){return options.svgMode}return"base64"};const getFormat=encoding=>{switch(encoding){case"mini":case"mini-srcset":case"uri":return"utf-8";default:return"base64"}};const sanitizeFileData=data=>{return data.replace(/[\r\n]+/gm,"")};const buildDataUri=(source,mime,encoding)=>{if(encoding==="uri"){return`data:${mime};${encodeURIComponent(source)}
|
|
2
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJlcnJvcnMiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcGF0aCIsIl9mcyIsIl9sb2Rhc2giLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX21pbmlTdmdEYXRhVXJpIiwiZSIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwidCIsIldlYWtNYXAiLCJyIiwibiIsIm8iLCJpIiwiZiIsIl9fcHJvdG9fXyIsImhhcyIsImdldCIsInNldCIsImhhc093blByb3BlcnR5IiwiY2FsbCIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiSW52YWxpZFBhdGhFcnJvciIsIkludmFsaWRTdmdNb2RlRXJyb3IiLCJVbnN1cHBvcnRlZFR5cGVFcnJvciIsInN2Z0V4dGVuc2lvbiIsInN1cHBvcnRlZE1pbWVUeXBlcyIsInN2Z01vZGVzIiwiaXNPYmplY3QiLCJ2YWx1ZSIsInByb3RvdHlwZSIsInRvU3RyaW5nIiwiZ2V0RW5jb2RpbmciLCJpc1N2ZyIsIm9wdGlvbnMiLCJzdmdNb2RlIiwiZ2V0Rm9ybWF0IiwiZW5jb2RpbmciLCJzYW5pdGl6ZUZpbGVEYXRhIiwiZGF0YSIsInJlcGxhY2UiLCJidWlsZERhdGFVcmkiLCJzb3VyY2UiLCJtaW1lIiwiZW5jb2RlVVJJQ29tcG9uZW50Iiwic3ZnVG9NaW5pRGF0YVVSSSIsInRvU3Jjc2V0IiwiaXNTdXBwb3J0ZWQiLCJleHRlbnNpb24iLCJ1bmRlZmluZWQiLCJnZXRJbWFnZURhdGFVcmkiLCJwYXRoIiwiZm9ybWF0IiwicmVhZEZpbGVTeW5jIiwicHJvY2Vzc0ZpbGUiLCJuYW1lIiwiY2FtZWxDYXNlIiwiYmFzZW5hbWUiLCJwcm9jZXNzRmlsZXMiLCJmaWxlcyIsImltYWdlcyIsImZpbGUiLCJmaWxlUGF0aCIsImpvaW4iLCJleHRuYW1lIiwiaWdub3JlVW5zdXBwb3J0ZWRUeXBlcyIsImltYWdlIiwibG9nIiwiaGFzT2JqZWN0UHJvcGVydHkiLCJwcm9wZXJ0eSIsInNhbml0aXplT3B0aW9ucyIsImluY2x1ZGVzIiwiY29kaWZ5SW1hZ2VzU3luYyIsInJlYWRkaXJTeW5jIiwicmVzb2x2ZVBhdGgiLCJleHBvcnRzIiwiY29kaWZ5SW1hZ2VzIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJlcnIiLCJfZGVmYXVsdCJdLCJzb3VyY2VzIjpbIi4uL3NyYy9jb2RpZnktaW1hZ2VzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGVycm9ycyBmcm9tICcuL2Vycm9ycy5qcyc7XG5pbXBvcnQgeyBiYXNlbmFtZSwgZXh0bmFtZSwgam9pbiwgcmVzb2x2ZSBhcyByZXNvbHZlUGF0aCB9IGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgcmVhZGRpclN5bmMsIHJlYWRGaWxlU3luYyB9IGZyb20gJ2ZzJztcbmltcG9ydCBjYW1lbENhc2UgZnJvbSAnbG9kYXNoLmNhbWVsY2FzZSc7XG5pbXBvcnQgc3ZnVG9NaW5pRGF0YVVSSSBmcm9tICdtaW5pLXN2Zy1kYXRhLXVyaSc7XG5cbmNvbnN0IHsgSW52YWxpZFBhdGhFcnJvciwgSW52YWxpZFN2Z01vZGVFcnJvciwgVW5zdXBwb3J0ZWRUeXBlRXJyb3IgfSA9IGVycm9ycztcblxuY29uc3Qgc3ZnRXh0ZW5zaW9uID0gJy5zdmcnO1xuY29uc3Qgc3VwcG9ydGVkTWltZVR5cGVzID0ge1xuICAnLmpwZyc6ICdpbWFnZS9qcGVnJyxcbiAgJy5qcGVnJzogJ2ltYWdlL2pwZWcnLFxuICAnLnBuZyc6ICdpbWFnZS9wbmcnLFxuICAnLmdpZic6ICdpbWFnZS9naWYnLFxuICAnLndlYnAnOiAnaW1hZ2Uvd2VicCcsXG4gICcuc3ZnJzogJ2ltYWdlL3N2Zyt4bWwnXG59O1xuY29uc3Qgc3ZnTW9kZXMgPSBbJ2Jhc2U2NCcsICd1cmknLCAnbWluaScsICdtaW5pLXNyY3NldCddO1xuXG5jb25zdCBpc09iamVjdCA9IHZhbHVlID0+IHtcbiAgcmV0dXJuIE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh2YWx1ZSkgPT09ICdbb2JqZWN0IE9iamVjdF0nO1xufTtcblxuY29uc3QgZ2V0RW5jb2RpbmcgPSAoaXNTdmcsIG9wdGlvbnMpID0+IHtcbiAgaWYgKGlzU3ZnKSB7XG4gICAgcmV0dXJuIG9wdGlvbnMuc3ZnTW9kZTtcbiAgfVxuXG4gIHJldHVybiAnYmFzZTY0Jztcbn07XG5cbmNvbnN0IGdldEZvcm1hdCA9IGVuY29kaW5nID0+IHtcbiAgc3dpdGNoIChlbmNvZGluZykge1xuICAgIGNhc2UgJ21pbmknOlxuICAgIGNhc2UgJ21pbmktc3Jjc2V0JzpcbiAgICBjYXNlICd1cmknOlxuICAgICAgcmV0dXJuICd1dGYtOCc7XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiAnYmFzZTY0JztcbiAgfVxufTtcblxuY29uc3Qgc2FuaXRpemVGaWxlRGF0YSA9IGRhdGEgPT4ge1xuICByZXR1cm4gZGF0YS5yZXBsYWNlKC9bXFxyXFxuXSsvZ20sICcnKTtcbn07XG5cbmNvbnN0IGJ1aWxkRGF0YVVyaSA9IChzb3VyY2UsIG1pbWUsIGVuY29kaW5nKSA9PiB7XG4gIGlmIChlbmNvZGluZyA9PT0gJ3VyaScpIHtcbiAgICByZXR1cm4gYGRhdGE6JHttaW1lfTske2VuY29kZVVSSUNvbXBvbmVudChzb3VyY2UpfWA7XG4gIH0gZWxzZSBpZiAoZW5jb2RpbmcgPT09ICdtaW5pJykge1xuICAgIHJldHVybiBzdmdUb01pbmlEYXRhVVJJKHNvdXJjZSk7XG4gIH0gZWxzZSBpZiAoZW5jb2RpbmcgPT09ICdtaW5pLXNyY3NldCcpIHtcbiAgICByZXR1cm4gc3ZnVG9NaW5pRGF0YVVSSS50b1NyY3NldChzb3VyY2UpO1xuICB9XG5cbiAgcmV0dXJuIGBkYXRhOiR7bWltZX07JHtlbmNvZGluZ30sJHtzb3VyY2V9YDtcbn07XG5cbmNvbnN0IGlzU3VwcG9ydGVkID0gZXh0ZW5zaW9uID0+IHtcbiAgcmV0dXJuIHN1cHBvcnRlZE1pbWVUeXBlc1tleHRlbnNpb25dICE9PSB1bmRlZmluZWQ7XG59O1xuXG5jb25zdCBnZXRJbWFnZURhdGFVcmkgPSAocGF0aCwgbWltZSwgaXNTdmcsIG9wdGlvbnMpID0+IHtcbiAgY29uc3QgZW5jb2RpbmcgPSBnZXRFbmNvZGluZyhpc1N2Zywgb3B0aW9ucyk7XG4gIGNvbnN0IGZvcm1hdCA9IGdldEZvcm1hdChlbmNvZGluZyk7XG4gIGNvbnN0IHNvdXJjZSA9IHNhbml0aXplRmlsZURhdGEocmVhZEZpbGVTeW5jKHBhdGgsIGZvcm1hdCkpO1xuXG4gIHJldHVybiBidWlsZERhdGFVcmkoc291cmNlLCBtaW1lLCBlbmNvZGluZyk7XG59O1xuXG5jb25zdCBwcm9jZXNzRmlsZSA9IChwYXRoLCBleHRlbnNpb24sIG9wdGlvbnMpID0+IHtcbiAgY29uc3QgbWltZSA9IHN1cHBvcnRlZE1pbWVUeXBlc1tleHRlbnNpb25dO1xuICBjb25zdCBpc1N2ZyA9IG1pbWUgPT09IHN1cHBvcnRlZE1pbWVUeXBlc1tzdmdFeHRlbnNpb25dO1xuXG4gIHJldHVybiB7XG4gICAgcGF0aCxcbiAgICBuYW1lOiBjYW1lbENhc2UoYmFzZW5hbWUocGF0aCkpLFxuICAgIGRhdGE6IGdldEltYWdlRGF0YVVyaShwYXRoLCBtaW1lLCBpc1N2Zywgb3B0aW9ucylcbiAgfTtcbn07XG5cbmNvbnN0IHByb2Nlc3NGaWxlcyA9IChwYXRoLCBmaWxlcywgb3B0aW9ucykgPT4ge1xuICBjb25zdCBpbWFnZXMgPSB7fTtcblxuICBmb3IgKGNvbnN0IGZpbGUgb2YgZmlsZXMpIHtcbiAgICBjb25zdCBmaWxlUGF0aCA9IGpvaW4ocGF0aCwgZmlsZSk7XG4gICAgY29uc3QgZXh0ZW5zaW9uID0gZXh0bmFtZShmaWxlUGF0aCk7XG5cbiAgICBpZiAoIWlzU3VwcG9ydGVkKGV4dGVuc2lvbikpIHtcbiAgICAgIGlmIChvcHRpb25zLmlnbm9yZVVuc3VwcG9ydGVkVHlwZXMgPT09IHRydWUpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aHJvdyBuZXcgVW5zdXBwb3J0ZWRUeXBlRXJyb3IoZXh0ZW5zaW9uKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBpbWFnZSA9IHByb2Nlc3NGaWxlKGZpbGVQYXRoLCBleHRlbnNpb24sIG9wdGlvbnMpO1xuXG4gICAgaW1hZ2VzW2ltYWdlLm5hbWVdID0gaW1hZ2UuZGF0YTtcblxuICAgIG9wdGlvbnMubG9nPy4oaW1hZ2UucGF0aCwgaW1hZ2UubmFtZSk7XG4gIH1cblxuICByZXR1cm4gaW1hZ2VzO1xufTtcblxuY29uc3QgaGFzT2JqZWN0UHJvcGVydHkgPSAob3B0aW9ucywgcHJvcGVydHkpID0+IHtcbiAgcmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvcHRpb25zLCBwcm9wZXJ0eSk7XG59O1xuXG5jb25zdCBzYW5pdGl6ZU9wdGlvbnMgPSBvcHRpb25zID0+IHtcbiAgaWYgKCFpc09iamVjdChvcHRpb25zKSkge1xuICAgIG9wdGlvbnMgPSB7fTtcbiAgfVxuXG4gIGlmICghaGFzT2JqZWN0UHJvcGVydHkob3B0aW9ucywgJ2lnbm9yZVVuc3VwcG9ydGVkVHlwZXMnKSkge1xuICAgIG9wdGlvbnMuaWdub3JlVW5zdXBwb3J0ZWRUeXBlcyA9IHRydWU7XG4gIH0gZWxzZSB7XG4gICAgb3B0aW9ucy5pZ25vcmVVbnN1cHBvcnRlZFR5cGVzID0gb3B0aW9ucy5pZ25vcmVVbnN1cHBvcnRlZFR5cGVzID09PSB0cnVlO1xuICB9XG5cbiAgaWYgKCFoYXNPYmplY3RQcm9wZXJ0eShvcHRpb25zLCAnc3ZnTW9kZScpKSB7XG4gICAgb3B0aW9ucy5zdmdNb2RlID0gJ2Jhc2U2NCc7XG4gIH0gZWxzZSBpZiAoIXN2Z01vZGVzLmluY2x1ZGVzKG9wdGlvbnMuc3ZnTW9kZSkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZFN2Z01vZGVFcnJvcihvcHRpb25zLnN2Z01vZGUpO1xuICB9XG5cbiAgcmV0dXJuIG9wdGlvbnM7XG59O1xuXG5leHBvcnQgY29uc3QgY29kaWZ5SW1hZ2VzU3luYyA9IChwYXRoLCBvcHRpb25zID0ge30pID0+IHtcbiAgbGV0IGZpbGVzO1xuXG4gIHRyeSB7XG4gICAgZmlsZXMgPSByZWFkZGlyU3luYyhyZXNvbHZlUGF0aChwYXRoKSk7XG4gIH0gY2F0Y2gge1xuICAgIHRocm93IG5ldyBJbnZhbGlkUGF0aEVycm9yKHBhdGgpO1xuICB9XG5cbiAgcmV0dXJuIHByb2Nlc3NGaWxlcyhwYXRoLCBmaWxlcywgc2FuaXRpemVPcHRpb25zKG9wdGlvbnMpKTtcbn07XG5cbmV4cG9ydCBjb25zdCBjb2RpZnlJbWFnZXMgPSAocGF0aCwgb3B0aW9ucyA9IHt9KSA9PiB7XG4gIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIHJlc29sdmUoY29kaWZ5SW1hZ2VzU3luYyhwYXRoLCBzYW5pdGl6ZU9wdGlvbnMob3B0aW9ucykpKTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIHJlamVjdChlcnIpO1xuICAgIH1cbiAgfSk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCB7XG4gIGNvZGlmeUltYWdlcyxcbiAgY29kaWZ5SW1hZ2VzU3luY1xufTtcbiJdLCJtYXBwaW5ncyI6IjJJQUFBLElBQUFBLE1BQUEsQ0FBQUMsdUJBQUEsQ0FBQUMsT0FBQSxpQkFDQSxJQUFBQyxLQUFBLENBQUFELE9BQUEsU0FDQSxJQUFBRSxHQUFBLENBQUFGLE9BQUEsT0FDQSxJQUFBRyxPQUFBLENBQUFDLHNCQUFBLENBQUFKLE9BQUEsc0JBQ0EsSUFBQUssZUFBQSxDQUFBRCxzQkFBQSxDQUFBSixPQUFBLHVCQUFpRCxTQUFBSSx1QkFBQUUsQ0FBQSxTQUFBQSxDQUFBLEVBQUFBLENBQUEsQ0FBQUMsVUFBQSxDQUFBRCxDQUFBLEVBQUFFLE9BQUEsQ0FBQUYsQ0FBQSxXQUFBUCx3QkFBQU8sQ0FBQSxDQUFBRyxDQUFBLHdCQUFBQyxPQUFBLEtBQUFDLENBQUEsS0FBQUQsT0FBQSxDQUFBRSxDQUFBLEtBQUFGLE9BQUEsUUFBQVgsdUJBQUEsU0FBQUEsQ0FBQU8s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
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.default=exports.codifyImagesSync=exports.codifyImages=void 0;var errors=_interopRequireWildcard(require("./errors.js"));var _path=require("path");var _fs=require("fs");var _lodash=_interopRequireDefault(require("lodash.camelcase"));var _miniSvgDataUri=_interopRequireDefault(require("mini-svg-data-uri"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap,n=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var o,i,f={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return f;if(o=t?n:r){if(o.has(e))return o.get(e);o.set(e,f)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((i=(o=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(i.get||i.set)?o(f,t,i):f[t]=e[t]);return f})(e,t)}const{InvalidPathError,InvalidSvgModeError,UnsupportedTypeError}=errors;const svgExtension=".svg";const supportedMimeTypes={".jpg":"image/jpeg",".jpeg":"image/jpeg",".png":"image/png",".gif":"image/gif",".webp":"image/webp",".svg":"image/svg+xml"};const svgModes=["base64","uri","mini","mini-srcset"];const isObject=value=>{return Object.prototype.toString.call(value)==="[object Object]";};const getEncoding=(isSvg,options)=>{if(isSvg){return options.svgMode;}return"base64";};const getFormat=encoding=>{switch(encoding){case"mini":case"mini-srcset":case"uri":return"utf-8";default:return"base64";}};const sanitizeFileData=data=>{return data.replace(/[\r\n]+/gm,"");};const buildDataUri=(source,mime,encoding)=>{if(encoding==="uri"){return`data:${mime};${encodeURIComponent(source)}`;}else if(encoding==="mini"){return(0,_miniSvgDataUri.default)(source);}else if(encoding==="mini-srcset"){return _miniSvgDataUri.default.toSrcset(source);}return`data:${mime};${encoding},${source}`;};const isSupported=extension=>{return supportedMimeTypes[extension]!==undefined;};const getImageDataUri=(path,mime,isSvg,options)=>{const encoding=getEncoding(isSvg,options);const format=getFormat(encoding);const source=sanitizeFileData((0,_fs.readFileSync)(path,format));return buildDataUri(source,mime,encoding);};const processFile=(path,extension,options)=>{const mime=supportedMimeTypes[extension];const isSvg=mime===supportedMimeTypes[svgExtension];return{path,name:(0,_lodash.default)((0,_path.basename)(path)),data:getImageDataUri(path,mime,isSvg,options)};};const processFiles=(path,files,options)=>{const images={};for(const file of files){const filePath=(0,_path.join)(path,file);const extension=(0,_path.extname)(filePath);if(!isSupported(extension)){if(options.ignoreUnsupportedTypes===true){continue;}else{throw new UnsupportedTypeError(extension);}}const image=processFile(filePath,extension,options);images[image.name]=image.data;options.log?.(image.path,image.name);}return images;};const hasObjectProperty=(options,property)=>{return Object.prototype.hasOwnProperty.call(options,property);};const sanitizeOptions=options=>{if(!isObject(options)){options={};}if(!hasObjectProperty(options,"ignoreUnsupportedTypes")){options.ignoreUnsupportedTypes=true;}else{options.ignoreUnsupportedTypes=options.ignoreUnsupportedTypes===true;}if(!hasObjectProperty(options,"svgMode")){options.svgMode="base64";}else if(!svgModes.includes(options.svgMode)){throw new InvalidSvgModeError(options.svgMode);}return options;};const codifyImagesSync=(path,options={})=>{let files;try{files=(0,_fs.readdirSync)((0,_path.resolve)(path));}catch{throw new InvalidPathError(path);}return processFiles(path,files,sanitizeOptions(options));};exports.codifyImagesSync=codifyImagesSync;const codifyImages=(path,options={})=>{return new Promise((resolve,reject)=>{try{resolve(codifyImagesSync(path,sanitizeOptions(options)));}catch(err){reject(err);}});};exports.codifyImages=codifyImages;var _default=exports.default={codifyImages,codifyImagesSync};
|
|
2
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJlcnJvcnMiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcGF0aCIsIl9mcyIsIl9sb2Rhc2giLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX21pbmlTdmdEYXRhVXJpIiwiZSIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwidCIsIldlYWtNYXAiLCJyIiwibiIsIm8iLCJpIiwiZiIsIl9fcHJvdG9fXyIsImhhcyIsImdldCIsInNldCIsImhhc093blByb3BlcnR5IiwiY2FsbCIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiSW52YWxpZFBhdGhFcnJvciIsIkludmFsaWRTdmdNb2RlRXJyb3IiLCJVbnN1cHBvcnRlZFR5cGVFcnJvciIsInN2Z0V4dGVuc2lvbiIsInN1cHBvcnRlZE1pbWVUeXBlcyIsInN2Z01vZGVzIiwiaXNPYmplY3QiLCJ2YWx1ZSIsInByb3RvdHlwZSIsInRvU3RyaW5nIiwiZ2V0RW5jb2RpbmciLCJpc1N2ZyIsIm9wdGlvbnMiLCJzdmdNb2RlIiwiZ2V0Rm9ybWF0IiwiZW5jb2RpbmciLCJzYW5pdGl6ZUZpbGVEYXRhIiwiZGF0YSIsInJlcGxhY2UiLCJidWlsZERhdGFVcmkiLCJzb3VyY2UiLCJtaW1lIiwiZW5jb2RlVVJJQ29tcG9uZW50Iiwic3ZnVG9NaW5pRGF0YVVSSSIsInRvU3Jjc2V0IiwiaXNTdXBwb3J0ZWQiLCJleHRlbnNpb24iLCJ1bmRlZmluZWQiLCJnZXRJbWFnZURhdGFVcmkiLCJwYXRoIiwiZm9ybWF0IiwicmVhZEZpbGVTeW5jIiwicHJvY2Vzc0ZpbGUiLCJuYW1lIiwiY2FtZWxDYXNlIiwiYmFzZW5hbWUiLCJwcm9jZXNzRmlsZXMiLCJmaWxlcyIsImltYWdlcyIsImZpbGUiLCJmaWxlUGF0aCIsImpvaW4iLCJleHRuYW1lIiwiaWdub3JlVW5zdXBwb3J0ZWRUeXBlcyIsImltYWdlIiwibG9nIiwiaGFzT2JqZWN0UHJvcGVydHkiLCJwcm9wZXJ0eSIsInNhbml0aXplT3B0aW9ucyIsImluY2x1ZGVzIiwiY29kaWZ5SW1hZ2VzU3luYyIsInJlYWRkaXJTeW5jIiwicmVzb2x2ZVBhdGgiLCJleHBvcnRzIiwiY29kaWZ5SW1hZ2VzIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJlcnIiLCJfZGVmYXVsdCJdLCJzb3VyY2VzIjpbIi4uL3NyYy9jb2RpZnktaW1hZ2VzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGVycm9ycyBmcm9tICcuL2Vycm9ycy5qcyc7XG5pbXBvcnQgeyBiYXNlbmFtZSwgZXh0bmFtZSwgam9pbiwgcmVzb2x2ZSBhcyByZXNvbHZlUGF0aCB9IGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgcmVhZGRpclN5bmMsIHJlYWRGaWxlU3luYyB9IGZyb20gJ2ZzJztcbmltcG9ydCBjYW1lbENhc2UgZnJvbSAnbG9kYXNoLmNhbWVsY2FzZSc7XG5pbXBvcnQgc3ZnVG9NaW5pRGF0YVVSSSBmcm9tICdtaW5pLXN2Zy1kYXRhLXVyaSc7XG5cbmNvbnN0IHsgSW52YWxpZFBhdGhFcnJvciwgSW52YWxpZFN2Z01vZGVFcnJvciwgVW5zdXBwb3J0ZWRUeXBlRXJyb3IgfSA9IGVycm9ycztcblxuY29uc3Qgc3ZnRXh0ZW5zaW9uID0gJy5zdmcnO1xuY29uc3Qgc3VwcG9ydGVkTWltZVR5cGVzID0ge1xuICAnLmpwZyc6ICdpbWFnZS9qcGVnJyxcbiAgJy5qcGVnJzogJ2ltYWdlL2pwZWcnLFxuICAnLnBuZyc6ICdpbWFnZS9wbmcnLFxuICAnLmdpZic6ICdpbWFnZS9naWYnLFxuICAnLndlYnAnOiAnaW1hZ2Uvd2VicCcsXG4gICcuc3ZnJzogJ2ltYWdlL3N2Zyt4bWwnXG59O1xuY29uc3Qgc3ZnTW9kZXMgPSBbJ2Jhc2U2NCcsICd1cmknLCAnbWluaScsICdtaW5pLXNyY3NldCddO1xuXG5jb25zdCBpc09iamVjdCA9IHZhbHVlID0+IHtcbiAgcmV0dXJuIE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh2YWx1ZSkgPT09ICdbb2JqZWN0IE9iamVjdF0nO1xufTtcblxuY29uc3QgZ2V0RW5jb2RpbmcgPSAoaXNTdmcsIG9wdGlvbnMpID0+IHtcbiAgaWYgKGlzU3ZnKSB7XG4gICAgcmV0dXJuIG9wdGlvbnMuc3ZnTW9kZTtcbiAgfVxuXG4gIHJldHVybiAnYmFzZTY0Jztcbn07XG5cbmNvbnN0IGdldEZvcm1hdCA9IGVuY29kaW5nID0+IHtcbiAgc3dpdGNoIChlbmNvZGluZykge1xuICAgIGNhc2UgJ21pbmknOlxuICAgIGNhc2UgJ21pbmktc3Jjc2V0JzpcbiAgICBjYXNlICd1cmknOlxuICAgICAgcmV0dXJuICd1dGYtOCc7XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiAnYmFzZTY0JztcbiAgfVxufTtcblxuY29uc3Qgc2FuaXRpemVGaWxlRGF0YSA9IGRhdGEgPT4ge1xuICByZXR1cm4gZGF0YS5yZXBsYWNlKC9bXFxyXFxuXSsvZ20sICcnKTtcbn07XG5cbmNvbnN0IGJ1aWxkRGF0YVVyaSA9IChzb3VyY2UsIG1pbWUsIGVuY29kaW5nKSA9PiB7XG4gIGlmIChlbmNvZGluZyA9PT0gJ3VyaScpIHtcbiAgICByZXR1cm4gYGRhdGE6JHttaW1lfTske2VuY29kZVVSSUNvbXBvbmVudChzb3VyY2UpfWA7XG4gIH0gZWxzZSBpZiAoZW5jb2RpbmcgPT09ICdtaW5pJykge1xuICAgIHJldHVybiBzdmdUb01pbmlEYXRhVVJJKHNvdXJjZSk7XG4gIH0gZWxzZSBpZiAoZW5jb2RpbmcgPT09ICdtaW5pLXNyY3NldCcpIHtcbiAgICByZXR1cm4gc3ZnVG9NaW5pRGF0YVVSSS50b1NyY3NldChzb3VyY2UpO1xuICB9XG5cbiAgcmV0dXJuIGBkYXRhOiR7bWltZX07JHtlbmNvZGluZ30sJHtzb3VyY2V9YDtcbn07XG5cbmNvbnN0IGlzU3VwcG9ydGVkID0gZXh0ZW5zaW9uID0+IHtcbiAgcmV0dXJuIHN1cHBvcnRlZE1pbWVUeXBlc1tleHRlbnNpb25dICE9PSB1bmRlZmluZWQ7XG59O1xuXG5jb25zdCBnZXRJbWFnZURhdGFVcmkgPSAocGF0aCwgbWltZSwgaXNTdmcsIG9wdGlvbnMpID0+IHtcbiAgY29uc3QgZW5jb2RpbmcgPSBnZXRFbmNvZGluZyhpc1N2Zywgb3B0aW9ucyk7XG4gIGNvbnN0IGZvcm1hdCA9IGdldEZvcm1hdChlbmNvZGluZyk7XG4gIGNvbnN0IHNvdXJjZSA9IHNhbml0aXplRmlsZURhdGEocmVhZEZpbGVTeW5jKHBhdGgsIGZvcm1hdCkpO1xuXG4gIHJldHVybiBidWlsZERhdGFVcmkoc291cmNlLCBtaW1lLCBlbmNvZGluZyk7XG59O1xuXG5jb25zdCBwcm9jZXNzRmlsZSA9IChwYXRoLCBleHRlbnNpb24sIG9wdGlvbnMpID0+IHtcbiAgY29uc3QgbWltZSA9IHN1cHBvcnRlZE1pbWVUeXBlc1tleHRlbnNpb25dO1xuICBjb25zdCBpc1N2ZyA9IG1pbWUgPT09IHN1cHBvcnRlZE1pbWVUeXBlc1tzdmdFeHRlbnNpb25dO1xuXG4gIHJldHVybiB7XG4gICAgcGF0aCxcbiAgICBuYW1lOiBjYW1lbENhc2UoYmFzZW5hbWUocGF0aCkpLFxuICAgIGRhdGE6IGdldEltYWdlRGF0YVVyaShwYXRoLCBtaW1lLCBpc1N2Zywgb3B0aW9ucylcbiAgfTtcbn07XG5cbmNvbnN0IHByb2Nlc3NGaWxlcyA9IChwYXRoLCBmaWxlcywgb3B0aW9ucykgPT4ge1xuICBjb25zdCBpbWFnZXMgPSB7fTtcblxuICBmb3IgKGNvbnN0IGZpbGUgb2YgZmlsZXMpIHtcbiAgICBjb25zdCBmaWxlUGF0aCA9IGpvaW4ocGF0aCwgZmlsZSk7XG4gICAgY29uc3QgZXh0ZW5zaW9uID0gZXh0bmFtZShmaWxlUGF0aCk7XG5cbiAgICBpZiAoIWlzU3VwcG9ydGVkKGV4dGVuc2lvbikpIHtcbiAgICAgIGlmIChvcHRpb25zLmlnbm9yZVVuc3VwcG9ydGVkVHlwZXMgPT09IHRydWUpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aHJvdyBuZXcgVW5zdXBwb3J0ZWRUeXBlRXJyb3IoZXh0ZW5zaW9uKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBpbWFnZSA9IHByb2Nlc3NGaWxlKGZpbGVQYXRoLCBleHRlbnNpb24sIG9wdGlvbnMpO1xuXG4gICAgaW1hZ2VzW2ltYWdlLm5hbWVdID0gaW1hZ2UuZGF0YTtcblxuICAgIG9wdGlvbnMubG9nPy4oaW1hZ2UucGF0aCwgaW1hZ2UubmFtZSk7XG4gIH1cblxuICByZXR1cm4gaW1hZ2VzO1xufTtcblxuY29uc3QgaGFzT2JqZWN0UHJvcGVydHkgPSAob3B0aW9ucywgcHJvcGVydHkpID0+IHtcbiAgcmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvcHRpb25zLCBwcm9wZXJ0eSk7XG59O1xuXG5jb25zdCBzYW5pdGl6ZU9wdGlvbnMgPSBvcHRpb25zID0+IHtcbiAgaWYgKCFpc09iamVjdChvcHRpb25zKSkge1xuICAgIG9wdGlvbnMgPSB7fTtcbiAgfVxuXG4gIGlmICghaGFzT2JqZWN0UHJvcGVydHkob3B0aW9ucywgJ2lnbm9yZVVuc3VwcG9ydGVkVHlwZXMnKSkge1xuICAgIG9wdGlvbnMuaWdub3JlVW5zdXBwb3J0ZWRUeXBlcyA9IHRydWU7XG4gIH0gZWxzZSB7XG4gICAgb3B0aW9ucy5pZ25vcmVVbnN1cHBvcnRlZFR5cGVzID0gb3B0aW9ucy5pZ25vcmVVbnN1cHBvcnRlZFR5cGVzID09PSB0cnVlO1xuICB9XG5cbiAgaWYgKCFoYXNPYmplY3RQcm9wZXJ0eShvcHRpb25zLCAnc3ZnTW9kZScpKSB7XG4gICAgb3B0aW9ucy5zdmdNb2RlID0gJ2Jhc2U2NCc7XG4gIH0gZWxzZSBpZiAoIXN2Z01vZGVzLmluY2x1ZGVzKG9wdGlvbnMuc3ZnTW9kZSkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZFN2Z01vZGVFcnJvcihvcHRpb25zLnN2Z01vZGUpO1xuICB9XG5cbiAgcmV0dXJuIG9wdGlvbnM7XG59O1xuXG5leHBvcnQgY29uc3QgY29kaWZ5SW1hZ2VzU3luYyA9IChwYXRoLCBvcHRpb25zID0ge30pID0+IHtcbiAgbGV0IGZpbGVzO1xuXG4gIHRyeSB7XG4gICAgZmlsZXMgPSByZWFkZGlyU3luYyhyZXNvbHZlUGF0aChwYXRoKSk7XG4gIH0gY2F0Y2gge1xuICAgIHRocm93IG5ldyBJbnZhbGlkUGF0aEVycm9yKHBhdGgpO1xuICB9XG5cbiAgcmV0dXJuIHByb2Nlc3NGaWxlcyhwYXRoLCBmaWxlcywgc2FuaXRpemVPcHRpb25zKG9wdGlvbnMpKTtcbn07XG5cbmV4cG9ydCBjb25zdCBjb2RpZnlJbWFnZXMgPSAocGF0aCwgb3B0aW9ucyA9IHt9KSA9PiB7XG4gIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIHJlc29sdmUoY29kaWZ5SW1hZ2VzU3luYyhwYXRoLCBzYW5pdGl6ZU9wdGlvbnMob3B0aW9ucykpKTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIHJlamVjdChlcnIpO1xuICAgIH1cbiAgfSk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCB7XG4gIGNvZGlmeUltYWdlcyxcbiAgY29kaWZ5SW1hZ2VzU3luY1xufTtcbiJdLCJtYXBwaW5ncyI6IjJJQUFBLElBQUFBLE1BQUEsQ0FBQUMsdUJBQUEsQ0FBQUMsT0FBQSxpQkFDQSxJQUFBQyxLQUFBLENBQUFELE9BQUEsU0FDQSxJQUFBRSxHQUFBLENBQUFGLE9BQUEsT0FDQSxJQUFBRyxPQUFBLENBQUFDLHNCQUFBLENBQUFKLE9BQUEsc0JBQ0EsSUFBQUssZUFBQSxDQUFBRCxzQkFBQSxDQUFBSixPQUFBLHVCQUFpRCxTQUFBSSx1QkFBQUUsQ0FBQSxTQUFBQSxDQUFBLEVBQUFBLENBQUEsQ0FBQUMsVUFBQSxDQUFBRCxDQUFBLEVBQUFFLE9BQUEsQ0FBQUYsQ0FBQSxXQUFBUCx3QkFBQU8sQ0FBQSxDQUFBRyxDQUFBLHdCQUFBQyxPQUFBLEtBQUFDLENBQUEsS0FBQUQsT0FBQSxDQUFBRSxDQUFBLEtBQUFGLE9BQUEsUUFBQVgsdUJBQUEsU0FBQUEsQ0FBQU8s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
|
package/dist/errors.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.UnsupportedTypeError=exports.InvalidSvgModeError=exports.InvalidPathError=void 0;class CodifyError extends Error{constructor(message,code,exitCode=1){super(message);this.code=`codifyImages.${code}`;this.exitCode=exitCode;this.nestedError=undefined}}class UnsupportedTypeError extends CodifyError{constructor(extension){super(`Type '${extension}' is not a supported image format`,"unsupportedTypeError");Error.captureStackTrace(this,this.constructor);this.name=this.constructor.name}}exports.UnsupportedTypeError=UnsupportedTypeError;class InvalidPathError extends CodifyError{constructor(path){super(`Path '${path}' is not a valid path`,"invalidPathError");Error.captureStackTrace(this,this.constructor);this.name=this.constructor.name}}exports.InvalidPathError=InvalidPathError;class InvalidSvgModeError extends CodifyError{constructor(mode){super(`SVG mode '${mode}' is not a valid mode`,"invalidSvgModeError");Error.captureStackTrace(this,this.constructor);this.name=this.constructor.name}}exports.InvalidSvgModeError=InvalidSvgModeError;
|
|
2
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.UnsupportedTypeError=exports.InvalidSvgModeError=exports.InvalidPathError=void 0;class CodifyError extends Error{constructor(message,code,exitCode=1){super(message);this.code=`codifyImages.${code}`;this.exitCode=exitCode;this.nestedError=undefined;}}class UnsupportedTypeError extends CodifyError{constructor(extension){super(`Type '${extension}' is not a supported image format`,"unsupportedTypeError");Error.captureStackTrace(this,this.constructor);this.name=this.constructor.name;}}exports.UnsupportedTypeError=UnsupportedTypeError;class InvalidPathError extends CodifyError{constructor(path){super(`Path '${path}' is not a valid path`,"invalidPathError");Error.captureStackTrace(this,this.constructor);this.name=this.constructor.name;}}exports.InvalidPathError=InvalidPathError;class InvalidSvgModeError extends CodifyError{constructor(mode){super(`SVG mode '${mode}' is not a valid mode`,"invalidSvgModeError");Error.captureStackTrace(this,this.constructor);this.name=this.constructor.name;}}exports.InvalidSvgModeError=InvalidSvgModeError;
|
|
2
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDb2RpZnlFcnJvciIsIkVycm9yIiwiY29uc3RydWN0b3IiLCJtZXNzYWdlIiwiY29kZSIsImV4aXRDb2RlIiwibmVzdGVkRXJyb3IiLCJ1bmRlZmluZWQiLCJVbnN1cHBvcnRlZFR5cGVFcnJvciIsImV4dGVuc2lvbiIsImNhcHR1cmVTdGFja1RyYWNlIiwibmFtZSIsImV4cG9ydHMiLCJJbnZhbGlkUGF0aEVycm9yIiwicGF0aCIsIkludmFsaWRTdmdNb2RlRXJyb3IiLCJtb2RlIl0sInNvdXJjZXMiOlsiLi4vc3JjL2Vycm9ycy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJjbGFzcyBDb2RpZnlFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZSwgY29kZSwgZXhpdENvZGUgPSAxKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG5cbiAgICB0aGlzLmNvZGUgPSBgY29kaWZ5SW1hZ2VzLiR7Y29kZX1gO1xuICAgIHRoaXMuZXhpdENvZGUgPSBleGl0Q29kZTtcbiAgICB0aGlzLm5lc3RlZEVycm9yID0gdW5kZWZpbmVkO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBVbnN1cHBvcnRlZFR5cGVFcnJvciBleHRlbmRzIENvZGlmeUVycm9yIHtcbiAgY29uc3RydWN0b3IoZXh0ZW5zaW9uKSB7XG4gICAgc3VwZXIoXG4gICAgICBgVHlwZSAnJHtleHRlbnNpb259JyBpcyBub3QgYSBzdXBwb3J0ZWQgaW1hZ2UgZm9ybWF0YCxcbiAgICAgICd1bnN1cHBvcnRlZFR5cGVFcnJvcidcbiAgICApO1xuXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgdGhpcy5jb25zdHJ1Y3Rvcik7XG5cbiAgICB0aGlzLm5hbWUgPSB0aGlzLmNvbnN0cnVjdG9yLm5hbWU7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEludmFsaWRQYXRoRXJyb3IgZXh0ZW5kcyBDb2RpZnlFcnJvciB7XG4gIGNvbnN0cnVjdG9yKHBhdGgpIHtcbiAgICBzdXBlcihgUGF0aCAnJHtwYXRofScgaXMgbm90IGEgdmFsaWQgcGF0aGAsICdpbnZhbGlkUGF0aEVycm9yJyk7XG5cbiAgICBFcnJvci5jYXB0dXJlU3RhY2tUcmFjZSh0aGlzLCB0aGlzLmNvbnN0cnVjdG9yKTtcblxuICAgIHRoaXMubmFtZSA9IHRoaXMuY29uc3RydWN0b3IubmFtZTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgSW52YWxpZFN2Z01vZGVFcnJvciBleHRlbmRzIENvZGlmeUVycm9yIHtcbiAgY29uc3RydWN0b3IobW9kZSkge1xuICAgIHN1cGVyKGBTVkcgbW9kZSAnJHttb2RlfScgaXMgbm90IGEgdmFsaWQgbW9kZWAsICdpbnZhbGlkU3ZnTW9kZUVycm9yJyk7XG5cbiAgICBFcnJvci5jYXB0dXJlU3RhY2tUcmFjZSh0aGlzLCB0aGlzLmNvbnN0cnVjdG9yKTtcblxuICAgIHRoaXMubmFtZSA9IHRoaXMuY29uc3RydWN0b3IubmFtZTtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiK0pBQUEsS0FBTSxDQUFBQSxXQUFXLFFBQVMsQ0FBQUMsS0FBTSxDQUM5QkMsV0FBV0EsQ0FBQ0MsT0FBTyxDQUFFQyxJQUFJLENBQUVDLFFBQVEsQ0FBRyxDQUFDLENBQUUsQ0FDdkMsS0FBSyxDQUFDRixPQUFPLENBQUMsQ0FFZCxJQUFJLENBQUNDLElBQUksQ0FBRyxnQkFBZ0JBLElBQUksRUFBRSxDQUNsQyxJQUFJLENBQUNDLFFBQVEsQ0FBR0EsUUFBUSxDQUN4QixJQUFJLENBQUNDLFdBQVcsQ0FBR0MsU0FBUyxDQUM5QixDQUNGLENBRU8sS0FBTSxDQUFBQyxvQkFBb0IsUUFBUyxDQUFBUixXQUFZLENBQ3BERSxXQUFXQSxDQUFDTyxTQUFTLENBQUUsQ0FDckIsS0FBSyxDQUNILFNBQVNBLFNBQVMsbUNBQW1DLENBQ3JELHNCQUNGLENBQUMsQ0FFRFIsS0FBSyxDQUFDUyxpQkFBaUIsQ0FBQyxJQUFJLENBQUUsSUFBSSxDQUFDUixXQUFXLENBQUMsQ0FFL0MsSUFBSSxDQUFDUyxJQUFJLENBQUcsSUFBSSxDQUFDVCxXQUFXLENBQUNTLElBQUksQ0FDbkMsQ0FDRixDQUFDQyxPQUFBLENBQUFKLG9CQUFBLENBQUFBLG9CQUFBLENBRU0sS0FBTSxDQUFBSyxnQkFBZ0IsUUFBUyxDQUFBYixXQUFZLENBQ2hERSxXQUFXQSxDQUFDWSxJQUFJLENBQUUsQ0FDaEIsS0FBSyxDQUFDLFNBQVNBLElBQUksdUJBQXVCLENBQUUsa0JBQWtCLENBQUMsQ0FFL0RiLEtBQUssQ0FBQ1MsaUJBQWlCLENBQUMsSUFBSSxDQUFFLElBQUksQ0FBQ1IsV0FBVyxDQUFDLENBRS9DLElBQUksQ0FBQ1MsSUFBSSxDQUFHLElBQUksQ0FBQ1QsV0FBVyxDQUFDUyxJQUFJLENBQ25DLENBQ0YsQ0FBQ0MsT0FBQSxDQUFBQyxnQkFBQSxDQUFBQSxnQkFBQSxDQUVNLEtBQU0sQ0FBQUUsbUJBQW1CLFFBQVMsQ0FBQWYsV0FBWSxDQUNuREUsV0FBV0EsQ0FBQ2MsSUFBSSxDQUFFLENBQ2hCLEtBQUssQ0FBQyxhQUFhQSxJQUFJLHVCQUF1QixDQUFFLHFCQUFxQixDQUFDLENBRXRFZixLQUFLLENBQUNTLGlCQUFpQixDQUFDLElBQUksQ0FBRSxJQUFJLENBQUNSLFdBQVcsQ0FBQyxDQUUvQyxJQUFJLENBQUNTLElBQUksQ0FBRyxJQUFJLENBQUNULFdBQVcsQ0FBQ1MsSUFBSSxDQUNuQyxDQUNGLENBQUNDLE9BQUEsQ0FBQUcsbUJBQUEsQ0FBQUEsbUJBQUEiLCJpZ25vcmVMaXN0IjpbXX0=
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "codify-images",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.12",
|
|
4
4
|
"description": "Quick and easy tool for converting a set of images into inline JavaScript",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"image",
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
"devDependencies": {
|
|
53
53
|
"@babel/cli": "^7",
|
|
54
54
|
"@babel/register": "^7",
|
|
55
|
-
"@commitlint/cli": "^
|
|
55
|
+
"@commitlint/cli": "^21",
|
|
56
56
|
"@devpow112/babel-config": "^1",
|
|
57
57
|
"@devpow112/commitlint-config": "^2",
|
|
58
58
|
"@devpow112/eslint-config": "^4",
|
|
@@ -66,7 +66,7 @@
|
|
|
66
66
|
"nyc": "^18",
|
|
67
67
|
"rimraf": "^6",
|
|
68
68
|
"semantic-release": "^25",
|
|
69
|
-
"sinon": "^
|
|
69
|
+
"sinon": "^22",
|
|
70
70
|
"sort-package-json": "^3"
|
|
71
71
|
},
|
|
72
72
|
"engines": {
|