radashi-helper
Version:
Help with managing your own Radashi
68 lines (50 loc) • 2.97 kB
JavaScript
;Object.defineProperty(exports, "__esModule", {value: true}); 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 _chunkBCKUBJLJcjs = require('./chunk-BCKUBJLJ.cjs');
var _chunkWVUG42ZOcjs = require('./chunk-WVUG42ZO.cjs');
require('./chunk-27XA2ZBL.cjs');
var _chunkDNQVKCXJcjs = require('./chunk-DNQVKCXJ.cjs');
var _chunkIWXG7YVCcjs = require('./chunk-IWXG7YVC.cjs');
require('./chunk-4WZBZWYD.cjs');
var _chunkZP624W2Acjs = require('./chunk-ZP624W2A.cjs');
var _chunkST3J6QTNcjs = require('./chunk-ST3J6QTN.cjs');
var _chunk5R2KEZLQcjs = require('./chunk-5R2KEZLQ.cjs');
// src/open.ts
var _fs = require('fs');
var _path = require('path');
async function openFunction(query = "", options = {}) {
const env = _nullishCoalesce(options.env, () => ( _chunkZP624W2Acjs.getEnv.call(void 0, )));
const sources = await _chunkDNQVKCXJcjs.findSources.call(void 0, env, ["src", "overrides"]);
const { funcPath } = await _chunkBCKUBJLJcjs.queryFuncs.call(void 0,
query,
_chunk5R2KEZLQcjs.sift.call(void 0,
Object.entries(sources).flatMap(([type, paths]) => {
const root = _path.join.call(void 0, env.root, type === "src" ? "" : type, "src");
return _optionalChain([paths, 'optionalAccess', _ => _.map, 'call', _2 => _2((p) => _path.relative.call(void 0, root, p).replace(/\.ts$/, ""))]);
})
)
);
const targetFolders = options.all ? _chunkIWXG7YVCcjs.projectFolders : _chunkIWXG7YVCcjs.projectFolders.filter((f) => {
return options.source && f.name === "src" || options.test && f.extension === ".test.ts" || options.typeTest && f.extension === ".test-d.ts" || options.benchmark && f.name === "benchmarks" || options.docs && f.name === "docs";
});
let openedCount = 0;
for (const folder of targetFolders) {
for (const overrideFolder of ["", "overrides"]) {
const file = _path.join.call(void 0,
env.root,
overrideFolder,
folder.name,
funcPath + folder.extension
);
if (_fs.existsSync.call(void 0, file)) {
await _chunkWVUG42ZOcjs.openInEditor.call(void 0, file, env);
_chunkST3J6QTNcjs.log.call(void 0, `
Opening ${_chunkIWXG7YVCcjs.cwdRelative.call(void 0, file)}`);
openedCount++;
}
}
}
if (openedCount === 0) {
_chunkST3J6QTNcjs.log.call(void 0, "\nNo files were found. Exiting.");
}
}
exports.openFunction = openFunction;