@lokascript/vite-plugin 1.2.1 → 1.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/index.cjs +68 -41
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +68 -41
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1451,19 +1451,31 @@ function selectBundleType(options, languages) {
|
|
|
1451
1451
|
return selectOptimalBundle(languages);
|
|
1452
1452
|
}
|
|
1453
1453
|
var SINGLE_LANGUAGE_BUNDLES = [
|
|
1454
|
+
"ar",
|
|
1455
|
+
"bn",
|
|
1456
|
+
"de",
|
|
1454
1457
|
"en",
|
|
1455
1458
|
"es",
|
|
1459
|
+
"es-MX",
|
|
1460
|
+
"fr",
|
|
1461
|
+
"he",
|
|
1462
|
+
"hi",
|
|
1463
|
+
"id",
|
|
1464
|
+
"it",
|
|
1456
1465
|
"ja",
|
|
1457
|
-
"ar",
|
|
1458
1466
|
"ko",
|
|
1459
|
-
"
|
|
1460
|
-
"
|
|
1467
|
+
"ms",
|
|
1468
|
+
"pl",
|
|
1461
1469
|
"pt",
|
|
1462
|
-
"fr",
|
|
1463
|
-
"de",
|
|
1464
|
-
"id",
|
|
1465
1470
|
"qu",
|
|
1466
|
-
"
|
|
1471
|
+
"ru",
|
|
1472
|
+
"sw",
|
|
1473
|
+
"th",
|
|
1474
|
+
"tl",
|
|
1475
|
+
"tr",
|
|
1476
|
+
"uk",
|
|
1477
|
+
"vi",
|
|
1478
|
+
"zh"
|
|
1467
1479
|
];
|
|
1468
1480
|
function selectOptimalBundle(languages) {
|
|
1469
1481
|
if (languages.size === 0) {
|
|
@@ -1491,20 +1503,32 @@ function selectOptimalBundle(languages) {
|
|
|
1491
1503
|
return "all";
|
|
1492
1504
|
}
|
|
1493
1505
|
var SEMANTIC_BUNDLE_SIZES = {
|
|
1494
|
-
// Single-language bundles (all
|
|
1506
|
+
// Single-language bundles (all 25 languages)
|
|
1507
|
+
ar: { raw: "66 KB", gzip: "~17 KB" },
|
|
1508
|
+
bn: { raw: "56 KB", gzip: "~14 KB" },
|
|
1509
|
+
de: { raw: "57 KB", gzip: "~14 KB" },
|
|
1495
1510
|
en: { raw: "82 KB", gzip: "~20 KB" },
|
|
1496
1511
|
es: { raw: "64 KB", gzip: "~16 KB" },
|
|
1512
|
+
"es-MX": { raw: "64 KB", gzip: "~16 KB" },
|
|
1513
|
+
fr: { raw: "57 KB", gzip: "~14 KB" },
|
|
1514
|
+
he: { raw: "56 KB", gzip: "~14 KB" },
|
|
1515
|
+
hi: { raw: "56 KB", gzip: "~14 KB" },
|
|
1516
|
+
id: { raw: "57 KB", gzip: "~14 KB" },
|
|
1517
|
+
it: { raw: "57 KB", gzip: "~14 KB" },
|
|
1497
1518
|
ja: { raw: "67 KB", gzip: "~17 KB" },
|
|
1498
|
-
ar: { raw: "66 KB", gzip: "~17 KB" },
|
|
1499
1519
|
ko: { raw: "69 KB", gzip: "~18 KB" },
|
|
1500
|
-
|
|
1501
|
-
|
|
1520
|
+
ms: { raw: "56 KB", gzip: "~14 KB" },
|
|
1521
|
+
pl: { raw: "56 KB", gzip: "~14 KB" },
|
|
1502
1522
|
pt: { raw: "56 KB", gzip: "~14 KB" },
|
|
1503
|
-
fr: { raw: "57 KB", gzip: "~14 KB" },
|
|
1504
|
-
de: { raw: "57 KB", gzip: "~14 KB" },
|
|
1505
|
-
id: { raw: "57 KB", gzip: "~14 KB" },
|
|
1506
1523
|
qu: { raw: "56 KB", gzip: "~14 KB" },
|
|
1524
|
+
ru: { raw: "56 KB", gzip: "~14 KB" },
|
|
1507
1525
|
sw: { raw: "56 KB", gzip: "~14 KB" },
|
|
1526
|
+
th: { raw: "56 KB", gzip: "~14 KB" },
|
|
1527
|
+
tl: { raw: "56 KB", gzip: "~14 KB" },
|
|
1528
|
+
tr: { raw: "73 KB", gzip: "~18 KB" },
|
|
1529
|
+
uk: { raw: "56 KB", gzip: "~14 KB" },
|
|
1530
|
+
vi: { raw: "56 KB", gzip: "~14 KB" },
|
|
1531
|
+
zh: { raw: "58 KB", gzip: "~15 KB" },
|
|
1508
1532
|
// Regional bundles
|
|
1509
1533
|
"es-en": { raw: "99 KB", gzip: "~25 KB" },
|
|
1510
1534
|
western: { raw: "127 KB", gzip: "~30 KB" },
|
|
@@ -1516,19 +1540,31 @@ function getSemanticBundleSize(bundleType) {
|
|
|
1516
1540
|
return SEMANTIC_BUNDLE_SIZES[bundleType] ?? SEMANTIC_BUNDLE_SIZES.all;
|
|
1517
1541
|
}
|
|
1518
1542
|
var LANGUAGES_WITH_ESM_EXPORTS = /* @__PURE__ */ new Set([
|
|
1543
|
+
"ar",
|
|
1544
|
+
"bn",
|
|
1545
|
+
"de",
|
|
1519
1546
|
"en",
|
|
1520
1547
|
"es",
|
|
1548
|
+
"es-MX",
|
|
1549
|
+
"fr",
|
|
1550
|
+
"he",
|
|
1551
|
+
"hi",
|
|
1552
|
+
"id",
|
|
1553
|
+
"it",
|
|
1521
1554
|
"ja",
|
|
1522
|
-
"ar",
|
|
1523
1555
|
"ko",
|
|
1524
|
-
"
|
|
1525
|
-
"
|
|
1556
|
+
"ms",
|
|
1557
|
+
"pl",
|
|
1526
1558
|
"pt",
|
|
1527
|
-
"fr",
|
|
1528
|
-
"de",
|
|
1529
|
-
"id",
|
|
1530
1559
|
"qu",
|
|
1531
|
-
"
|
|
1560
|
+
"ru",
|
|
1561
|
+
"sw",
|
|
1562
|
+
"th",
|
|
1563
|
+
"tl",
|
|
1564
|
+
"tr",
|
|
1565
|
+
"uk",
|
|
1566
|
+
"vi",
|
|
1567
|
+
"zh"
|
|
1532
1568
|
]);
|
|
1533
1569
|
function getLanguagesForBundleType(bundleType, configLanguages) {
|
|
1534
1570
|
const languages = new Set(configLanguages);
|
|
@@ -1558,28 +1594,28 @@ function getLanguagesForBundleType(bundleType, configLanguages) {
|
|
|
1558
1594
|
languages.add("en");
|
|
1559
1595
|
return languages;
|
|
1560
1596
|
}
|
|
1561
|
-
function
|
|
1597
|
+
function filterToAvailableLanguages(languages) {
|
|
1598
|
+
const available = /* @__PURE__ */ new Set();
|
|
1562
1599
|
for (const lang of languages) {
|
|
1563
|
-
if (
|
|
1564
|
-
|
|
1600
|
+
if (LANGUAGES_WITH_ESM_EXPORTS.has(lang)) {
|
|
1601
|
+
available.add(lang);
|
|
1565
1602
|
}
|
|
1566
1603
|
}
|
|
1567
|
-
|
|
1604
|
+
available.add("en");
|
|
1605
|
+
return available;
|
|
1568
1606
|
}
|
|
1569
1607
|
function generateSemanticIntegrationCode(config) {
|
|
1570
1608
|
if (!config.enabled || !config.bundleType) {
|
|
1571
1609
|
return "";
|
|
1572
1610
|
}
|
|
1573
1611
|
const resolvedLanguages = getLanguagesForBundleType(config.bundleType, config.languages);
|
|
1574
|
-
const
|
|
1612
|
+
const availableLanguages = filterToAvailableLanguages(resolvedLanguages);
|
|
1575
1613
|
const languages = [...config.languages].join("', '");
|
|
1576
1614
|
let code = `
|
|
1577
1615
|
// =============================================================================
|
|
1578
1616
|
// SEMANTIC PARSER INTEGRATION
|
|
1579
1617
|
// =============================================================================
|
|
1580
|
-
|
|
1581
|
-
if (useCorePlusLanguages) {
|
|
1582
|
-
code += `
|
|
1618
|
+
|
|
1583
1619
|
// Core infrastructure (no language data bundled)
|
|
1584
1620
|
import {
|
|
1585
1621
|
createSemanticAnalyzer,
|
|
@@ -1589,18 +1625,9 @@ import {
|
|
|
1589
1625
|
|
|
1590
1626
|
// Register required languages (self-registering side-effect imports)
|
|
1591
1627
|
`;
|
|
1592
|
-
|
|
1593
|
-
|
|
1594
|
-
|
|
1595
|
-
`;
|
|
1596
|
-
}
|
|
1597
|
-
} else {
|
|
1598
|
-
code += `
|
|
1599
|
-
import {
|
|
1600
|
-
createSemanticAnalyzer,
|
|
1601
|
-
buildAST,
|
|
1602
|
-
isLanguageSupported,
|
|
1603
|
-
} from '@lokascript/semantic';
|
|
1628
|
+
const sortedLangs = [...availableLanguages].sort();
|
|
1629
|
+
for (const lang of sortedLangs) {
|
|
1630
|
+
code += `import '@lokascript/semantic/languages/${lang}';
|
|
1604
1631
|
`;
|
|
1605
1632
|
}
|
|
1606
1633
|
if (config.grammarEnabled) {
|