@storm-software/workspace-tools
Version:
Tools for managing a Storm workspace, including various Nx generators and executors for common development tasks.
49 lines (38 loc) • 3.31 kB
JavaScript
;Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
var _chunkP6PFHXHQjs = require('./chunk-P6PFHXHQ.js');
var _chunkSKMT7WD5js = require('./chunk-SKMT7WD5.js');
var _chunk3GQAWCBQjs = require('./chunk-3GQAWCBQ.js');
// src/executors/size-limit/executor.ts
var _devkit = require('@nx/devkit');
var _esbuild = require('@size-limit/esbuild'); var _esbuild2 = _interopRequireDefault(_esbuild);
var _esbuildwhy = require('@size-limit/esbuild-why'); var _esbuildwhy2 = _interopRequireDefault(_esbuildwhy);
var _file = require('@size-limit/file'); var _file2 = _interopRequireDefault(_file);
var _sizelimit = require('size-limit'); var _sizelimit2 = _interopRequireDefault(_sizelimit);
async function sizeLimitExecutorFn(options, context, config) {
if (!_optionalChain([context, 'optionalAccess', _ => _.projectName]) || !_optionalChain([context, 'access', _2 => _2.projectsConfigurations, 'optionalAccess', _3 => _3.projects]) || !context.projectsConfigurations.projects[context.projectName]) {
throw new Error("The Size-Limit process failed because the context is not valid. Please run this command from a workspace.");
}
_chunkSKMT7WD5js.writeInfo.call(void 0, `\u{1F4CF} Running Size-Limit on ${context.projectName}`, config);
_sizelimit2.default.call(void 0, [
_file2.default,
_esbuild2.default,
_esbuildwhy2.default
], {
checks: _nullishCoalesce(_nullishCoalesce(options.entry, () => ( _optionalChain([context, 'access', _4 => _4.projectsConfigurations, 'access', _5 => _5.projects, 'access', _6 => _6[context.projectName], 'optionalAccess', _7 => _7.sourceRoot]))), () => ( _devkit.joinPathFragments.call(void 0, _nullishCoalesce(_optionalChain([context, 'access', _8 => _8.projectsConfigurations, 'access', _9 => _9.projects, 'access', _10 => _10[context.projectName], 'optionalAccess', _11 => _11.root]), () => ( "./")), "src")))
}).then((result) => {
_chunkSKMT7WD5js.writeInfo.call(void 0, `\u{1F4CF} ${context.projectName} Size-Limit result: ${JSON.stringify(result)}`, config);
});
return {
success: true
};
}
_chunk3GQAWCBQjs.__name.call(void 0, sizeLimitExecutorFn, "sizeLimitExecutorFn");
var executor_default = _chunkP6PFHXHQjs.withRunExecutor.call(void 0, "Size-Limit Performance Test Executor", sizeLimitExecutorFn, {
skipReadingConfig: false,
hooks: {
applyDefaultOptions: /* @__PURE__ */ _chunk3GQAWCBQjs.__name.call(void 0, (options) => {
return options;
}, "applyDefaultOptions")
}
});
exports.sizeLimitExecutorFn = sizeLimitExecutorFn; exports.executor_default = executor_default;