Skip to content

Commit

Permalink
Make this project ESM-only 🎉
Browse files Browse the repository at this point in the history
  • Loading branch information
peschee committed Aug 9, 2023
1 parent 26c68a4 commit 1a596bc
Show file tree
Hide file tree
Showing 7 changed files with 379 additions and 567 deletions.
20 changes: 0 additions & 20 deletions .npm-upgrade.json

This file was deleted.

37 changes: 19 additions & 18 deletions bin/envsubst.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
#!/usr/bin/env node
const meow = require('meow');
const fs = require('fs');
const globby = require('globby');
const Table = require('cli-table3');
const { replaceVars } = require('../src/utils');
import * as fs from 'node:fs';
import meow from 'meow';
import { globby } from 'globby';
import Table from 'cli-table3';

import { replaceVariables } from '../src/utils.js';

const cli = meow(
`
Expand All @@ -21,25 +22,26 @@ const cli = meow(
$ envsubst 'dist/**/*.js' -p FOO_
`,
{
importMeta: import.meta,
flags: {
dryRun: {
type: 'boolean',
alias: 'd',
shortFlag: 'd',
default: false,
},
prefix: {
type: 'string',
alias: 'p',
shortFlag: 'p',
default: '',
},
window: {
type: 'boolean',
alias: 'w',
shortFlag: 'w',
default: false,
},
ignoreCase: {
type: 'boolean',
alias: 'i',
shortFlag: 'i',
default: false,
},
},
Expand All @@ -52,23 +54,22 @@ const cli = meow(
const replacements = [];

for (const file of files) {
const content = fs.readFileSync(file, 'utf-8');
const [replaced, replacementsMade] = await replaceVars(content, process.env, cli.flags.prefix, cli.flags.window, cli.flags.ignoreCase);
const content = fs.readFileSync(file, 'utf8');
const [replaced, replacementsMade] = await replaceVariables(content, process.env, cli.flags.prefix, cli.flags.window, cli.flags.ignoreCase);

replacementsMade.forEach(r =>
for (const r of replacementsMade)
replacements.push({
filename: file,
name: r.from,
value: r.to,
})
);
});

if (!cli.flags.dryRun) {
fs.writeFileSync(file, replaced, 'utf-8');
fs.writeFileSync(file, replaced, 'utf8');
}
}

if (replacements.length < 1) {
if (replacements.length === 0) {
console.info('No variable replacements made.');
return;
}
Expand All @@ -83,9 +84,9 @@ const cli = meow(
});

console.info(`Made ${replacements.length} replacement${replacements.length > 1 ? 's' : ''}:\n`);
replacements.forEach(replacement => {
for (const replacement of replacements) {
const { filename, name, value } = replacement;
table.push([filename, name, value]);
});
}
console.info(table.toString());
})();
Loading

0 comments on commit 1a596bc

Please sign in to comment.