diff --git a/build.js b/build.js
index aeac994..37e76bb 100644
--- a/build.js
+++ b/build.js
@@ -1,28 +1,36 @@
-const fs = require('fs');
-const path = `./node_modules/@tabler/icons/icons/filled/`;
-const fileNames = fs.readdirSync(path);
-const object = {};
+import { readdirSync, readFileSync, writeFileSync } from 'fs'
+import path from 'path'
+
+const ICONS_DIR = path.join('node_modules', '@tabler', 'icons', 'icons', 'outline')
const CONTENTS = {
- HEAD: "",
-};
+ HEAD: `'
+}
+const object = {}
-fileNames.forEach((filename) => {
- const contents = fs
- .readFileSync(path + filename)
- .toString()
- .trimEnd();
- const lines = contents.split("\n");
- const guts = lines
- .slice(1, lines.length - 1)
- .join("")
- .replace(/\ \ /g, "");
- if (object) object[filename.slice(0, -4)] = guts;
-});
+try {
+ const fileNames = readdirSync(ICONS_DIR)
-fs.writeFileSync(
- "./icons.js",
- `// Generated by build.js at ${new Date().toISOString()}\n\nmodule.exports = ${JSON.stringify(
- {...object, HEAD: CONTENTS['HEAD'], TAIL: CONTENTS['TAIL']}
- )};\n`
-);
+ fileNames.forEach((filename) => {
+ const filePath = path.join(ICONS_DIR, filename)
+ const contents = readFileSync(filePath, 'utf8').trim()
+
+ const guts = contents
+ .replace(/^