@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/CHANGELOG.md +13 -0
- package/bin/flux.js +1 -1395
- package/dist/flux-cli.js +9704 -0
- package/dist/flux.cjs.js +63 -2
- package/dist/flux.esm.js +63 -2
- package/dist/flux.min.js +18 -16
- package/index.js +4 -0
- package/package.json +25 -15
- package/scripts/build.js +28 -29
- package/src/config.js +99 -0
- package/src/bundler.js +0 -216
- package/src/checker.js +0 -322
- package/src/codegen.js +0 -832
- package/src/css-preprocessor.js +0 -399
- package/src/jsx.js +0 -480
- package/src/lexer.js +0 -518
- package/src/linter.js +0 -784
- package/src/mangler.js +0 -280
- package/src/parser.js +0 -1708
- package/src/sourcemap.js +0 -82
- package/src/test-runner.js +0 -239
- package/src/transpiler.js +0 -172
- package/src/type-checker.js +0 -1206
package/dist/flux.cjs.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* flux-lang v3.
|
|
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
|
+
* 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
|
});
|