@xnoxs/flux-lang 3.2.1 → 3.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/flux.cjs.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * flux-lang v3.2.1
2
+ * flux-lang v3.3.0
3
3
  * Flux — A modern language that transpiles to JavaScript. Python-clean syntax, TypeScript-level safety, Rust-inspired pattern matching.
4
4
  * (c) 2026 Flux Lang Contributors
5
5
  * Released under the MIT License
@@ -7192,6 +7192,63 @@ var require_bundler = __commonJS({
7192
7192
  }
7193
7193
  });
7194
7194
 
7195
+ // src/config.js
7196
+ var require_config = __commonJS({
7197
+ "src/config.js"(exports2, module2) {
7198
+ "use strict";
7199
+ var fs = require("fs");
7200
+ var path = require("path");
7201
+ var CONFIG_NAMES = [
7202
+ "flux.config.js",
7203
+ "flux.config.cjs",
7204
+ ".fluxrc.js"
7205
+ ];
7206
+ function loadConfig2(cwd) {
7207
+ const dir = cwd || process.cwd();
7208
+ for (const name of CONFIG_NAMES) {
7209
+ const configPath = path.join(dir, name);
7210
+ if (!fs.existsSync(configPath)) continue;
7211
+ delete require.cache[require.resolve(configPath)];
7212
+ try {
7213
+ const raw = require(configPath);
7214
+ const cfg = raw && raw.default ? raw.default : raw;
7215
+ if (typeof cfg !== "object" || cfg === null) {
7216
+ process.stderr.write(
7217
+ `[flux] warning: ${name} must export a plain object \u2014 ignoring
7218
+ `
7219
+ );
7220
+ return {};
7221
+ }
7222
+ return cfg;
7223
+ } catch (e) {
7224
+ process.stderr.write(
7225
+ `[flux] error loading ${name}: ${e.message}
7226
+ `
7227
+ );
7228
+ return {};
7229
+ }
7230
+ }
7231
+ return {};
7232
+ }
7233
+ function mergeConfig2(fileConfig, cliOpts) {
7234
+ const cfg = fileConfig || {};
7235
+ const cli = cliOpts || {};
7236
+ return {
7237
+ jsxTarget: cli.jsxTarget !== void 0 ? cli.jsxTarget : cfg.jsxTarget || "browser",
7238
+ outDir: cli.outDir !== void 0 ? cli.outDir : cfg.outDir || null,
7239
+ sourcemap: cli.sourcemap !== void 0 ? cli.sourcemap : cfg.sourcemap || false,
7240
+ mangle: cli.mangle !== void 0 ? cli.mangle : cfg.mangle !== void 0 ? cfg.mangle : true,
7241
+ ignore: cli.ignore !== void 0 ? cli.ignore : cfg.ignore || [],
7242
+ entry: cli.entry !== void 0 ? cli.entry : cfg.entry || null
7243
+ };
7244
+ }
7245
+ function defineConfig2(config) {
7246
+ return config;
7247
+ }
7248
+ module2.exports = { loadConfig: loadConfig2, mergeConfig: mergeConfig2, defineConfig: defineConfig2 };
7249
+ }
7250
+ });
7251
+
7195
7252
  // index.js
7196
7253
  var { transpile } = require_transpiler();
7197
7254
  var { format } = require_formatter();
@@ -7199,6 +7256,7 @@ var { buildStdlib, detectUsedSymbols, STDLIB_SYMBOLS } = require_stdlib();
7199
7256
  var { Lexer } = require_lexer();
7200
7257
  var { Parser } = require_parser();
7201
7258
  var { bundle } = require_bundler();
7259
+ var { loadConfig, mergeConfig, defineConfig } = require_config();
7202
7260
  module.exports = {
7203
7261
  transpile,
7204
7262
  format,
@@ -7207,5 +7265,8 @@ module.exports = {
7207
7265
  STDLIB_SYMBOLS,
7208
7266
  Lexer,
7209
7267
  Parser,
7210
- bundle
7268
+ bundle,
7269
+ loadConfig,
7270
+ mergeConfig,
7271
+ defineConfig
7211
7272
  };
package/dist/flux.esm.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * flux-lang v3.2.1
2
+ * flux-lang v3.3.0
3
3
  * Flux — A modern language that transpiles to JavaScript. Python-clean syntax, TypeScript-level safety, Rust-inspired pattern matching.
4
4
  * (c) 2026 Flux Lang Contributors
5
5
  * Released under the MIT License
@@ -7197,6 +7197,63 @@ var require_bundler = __commonJS({
7197
7197
  }
7198
7198
  });
7199
7199
 
7200
+ // src/config.js
7201
+ var require_config = __commonJS({
7202
+ "src/config.js"(exports, module) {
7203
+ "use strict";
7204
+ var fs = __require("fs");
7205
+ var path = __require("path");
7206
+ var CONFIG_NAMES = [
7207
+ "flux.config.js",
7208
+ "flux.config.cjs",
7209
+ ".fluxrc.js"
7210
+ ];
7211
+ function loadConfig(cwd) {
7212
+ const dir = cwd || process.cwd();
7213
+ for (const name of CONFIG_NAMES) {
7214
+ const configPath = path.join(dir, name);
7215
+ if (!fs.existsSync(configPath)) continue;
7216
+ delete __require.cache[__require.resolve(configPath)];
7217
+ try {
7218
+ const raw = __require(configPath);
7219
+ const cfg = raw && raw.default ? raw.default : raw;
7220
+ if (typeof cfg !== "object" || cfg === null) {
7221
+ process.stderr.write(
7222
+ `[flux] warning: ${name} must export a plain object \u2014 ignoring
7223
+ `
7224
+ );
7225
+ return {};
7226
+ }
7227
+ return cfg;
7228
+ } catch (e) {
7229
+ process.stderr.write(
7230
+ `[flux] error loading ${name}: ${e.message}
7231
+ `
7232
+ );
7233
+ return {};
7234
+ }
7235
+ }
7236
+ return {};
7237
+ }
7238
+ function mergeConfig(fileConfig, cliOpts) {
7239
+ const cfg = fileConfig || {};
7240
+ const cli = cliOpts || {};
7241
+ return {
7242
+ jsxTarget: cli.jsxTarget !== void 0 ? cli.jsxTarget : cfg.jsxTarget || "browser",
7243
+ outDir: cli.outDir !== void 0 ? cli.outDir : cfg.outDir || null,
7244
+ sourcemap: cli.sourcemap !== void 0 ? cli.sourcemap : cfg.sourcemap || false,
7245
+ mangle: cli.mangle !== void 0 ? cli.mangle : cfg.mangle !== void 0 ? cfg.mangle : true,
7246
+ ignore: cli.ignore !== void 0 ? cli.ignore : cfg.ignore || [],
7247
+ entry: cli.entry !== void 0 ? cli.entry : cfg.entry || null
7248
+ };
7249
+ }
7250
+ function defineConfig(config) {
7251
+ return config;
7252
+ }
7253
+ module.exports = { loadConfig, mergeConfig, defineConfig };
7254
+ }
7255
+ });
7256
+
7200
7257
  // index.js
7201
7258
  var require_index = __commonJS({
7202
7259
  "index.js"(exports, module) {
@@ -7206,6 +7263,7 @@ var require_index = __commonJS({
7206
7263
  var { Lexer } = require_lexer();
7207
7264
  var { Parser } = require_parser();
7208
7265
  var { bundle } = require_bundler();
7266
+ var { loadConfig, mergeConfig, defineConfig } = require_config();
7209
7267
  module.exports = {
7210
7268
  transpile,
7211
7269
  format,
@@ -7214,7 +7272,10 @@ var require_index = __commonJS({
7214
7272
  STDLIB_SYMBOLS,
7215
7273
  Lexer,
7216
7274
  Parser,
7217
- bundle
7275
+ bundle,
7276
+ loadConfig,
7277
+ mergeConfig,
7278
+ defineConfig
7218
7279
  };
7219
7280
  }
7220
7281
  });