aboutsummaryrefslogtreecommitdiff
path: root/src/js/node/path.js
diff options
context:
space:
mode:
authorGravatar dave caruso <me@paperdave.net> 2023-06-01 21:16:47 -0400
committerGravatar GitHub <noreply@github.com> 2023-06-01 18:16:47 -0700
commit4df1d37ddc54242c339765f22fb90ba2e9e3a99a (patch)
treed63ede76463e7ecba78a4d4b31e5e8158193552f /src/js/node/path.js
parent03ffd1c732aaaa30b5481f197221ce96da559e63 (diff)
downloadbun-4df1d37ddc54242c339765f22fb90ba2e9e3a99a.tar.gz
bun-4df1d37ddc54242c339765f22fb90ba2e9e3a99a.tar.zst
bun-4df1d37ddc54242c339765f22fb90ba2e9e3a99a.zip
Bundle and minify `.exports.js` files. (#3036)
* move all exports.js into src/js * finalize the sort of this * and it works * add test.ts to gitignore * okay * convert some to ts just to show * finish up * fixup makefile * minify syntax in dev * finish rebase * dont minify all modules * merge * finish rebase merge * flaky test that hangs
Diffstat (limited to 'src/js/node/path.js')
-rw-r--r--src/js/node/path.js50
1 files changed, 50 insertions, 0 deletions
diff --git a/src/js/node/path.js b/src/js/node/path.js
new file mode 100644
index 000000000..bcdd1f7f7
--- /dev/null
+++ b/src/js/node/path.js
@@ -0,0 +1,50 @@
+// Hardcoded module "node:path"
+export const createModule = obj => Object.assign(Object.create(null), obj);
+
+function bound(obj) {
+ var result = createModule({
+ basename: obj.basename.bind(obj),
+ dirname: obj.dirname.bind(obj),
+ extname: obj.extname.bind(obj),
+ format: obj.format.bind(obj),
+ isAbsolute: obj.isAbsolute.bind(obj),
+ join: obj.join.bind(obj),
+ normalize: obj.normalize.bind(obj),
+ parse: obj.parse.bind(obj),
+ relative: obj.relative.bind(obj),
+ resolve: obj.resolve.bind(obj),
+ toNamespacedPath: obj.toNamespacedPath.bind(obj),
+ sep: obj.sep,
+ delimiter: obj.delimiter,
+ });
+ result.default = result;
+ return result;
+}
+var path = bound(Bun._Path());
+
+export var posix = bound(Bun._Path(false));
+export var win32 = bound(Bun._Path(true));
+
+path.win32 = win32;
+path.posix = posix;
+
+export var {
+ basename,
+ dirname,
+ extname,
+ format,
+ isAbsolute,
+ join,
+ normalize,
+ parse,
+ relative,
+ resolve,
+ toNamespacedPath,
+ sep,
+ delimiter,
+ __esModule,
+} = path;
+
+path[Symbol.for("CommonJS")] = 0;
+path.__esModule = true;
+export default path;