@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.cjs
CHANGED
|
@@ -1489,19 +1489,31 @@ function selectBundleType(options, languages) {
|
|
|
1489
1489
|
return selectOptimalBundle(languages);
|
|
1490
1490
|
}
|
|
1491
1491
|
var SINGLE_LANGUAGE_BUNDLES = [
|
|
1492
|
+
"ar",
|
|
1493
|
+
"bn",
|
|
1494
|
+
"de",
|
|
1492
1495
|
"en",
|
|
1493
1496
|
"es",
|
|
1497
|
+
"es-MX",
|
|
1498
|
+
"fr",
|
|
1499
|
+
"he",
|
|
1500
|
+
"hi",
|
|
1501
|
+
"id",
|
|
1502
|
+
"it",
|
|
1494
1503
|
"ja",
|
|
1495
|
-
"ar",
|
|
1496
1504
|
"ko",
|
|
1497
|
-
"
|
|
1498
|
-
"
|
|
1505
|
+
"ms",
|
|
1506
|
+
"pl",
|
|
1499
1507
|
"pt",
|
|
1500
|
-
"fr",
|
|
1501
|
-
"de",
|
|
1502
|
-
"id",
|
|
1503
1508
|
"qu",
|
|
1504
|
-
"
|
|
1509
|
+
"ru",
|
|
1510
|
+
"sw",
|
|
1511
|
+
"th",
|
|
1512
|
+
"tl",
|
|
1513
|
+
"tr",
|
|
1514
|
+
"uk",
|
|
1515
|
+
"vi",
|
|
1516
|
+
"zh"
|
|
1505
1517
|
];
|
|
1506
1518
|
function selectOptimalBundle(languages) {
|
|
1507
1519
|
if (languages.size === 0) {
|
|
@@ -1529,20 +1541,32 @@ function selectOptimalBundle(languages) {
|
|
|
1529
1541
|
return "all";
|
|
1530
1542
|
}
|
|
1531
1543
|
var SEMANTIC_BUNDLE_SIZES = {
|
|
1532
|
-
// Single-language bundles (all
|
|
1544
|
+
// Single-language bundles (all 25 languages)
|
|
1545
|
+
ar: { raw: "66 KB", gzip: "~17 KB" },
|
|
1546
|
+
bn: { raw: "56 KB", gzip: "~14 KB" },
|
|
1547
|
+
de: { raw: "57 KB", gzip: "~14 KB" },
|
|
1533
1548
|
en: { raw: "82 KB", gzip: "~20 KB" },
|
|
1534
1549
|
es: { raw: "64 KB", gzip: "~16 KB" },
|
|
1550
|
+
"es-MX": { raw: "64 KB", gzip: "~16 KB" },
|
|
1551
|
+
fr: { raw: "57 KB", gzip: "~14 KB" },
|
|
1552
|
+
he: { raw: "56 KB", gzip: "~14 KB" },
|
|
1553
|
+
hi: { raw: "56 KB", gzip: "~14 KB" },
|
|
1554
|
+
id: { raw: "57 KB", gzip: "~14 KB" },
|
|
1555
|
+
it: { raw: "57 KB", gzip: "~14 KB" },
|
|
1535
1556
|
ja: { raw: "67 KB", gzip: "~17 KB" },
|
|
1536
|
-
ar: { raw: "66 KB", gzip: "~17 KB" },
|
|
1537
1557
|
ko: { raw: "69 KB", gzip: "~18 KB" },
|
|
1538
|
-
|
|
1539
|
-
|
|
1558
|
+
ms: { raw: "56 KB", gzip: "~14 KB" },
|
|
1559
|
+
pl: { raw: "56 KB", gzip: "~14 KB" },
|
|
1540
1560
|
pt: { raw: "56 KB", gzip: "~14 KB" },
|
|
1541
|
-
fr: { raw: "57 KB", gzip: "~14 KB" },
|
|
1542
|
-
de: { raw: "57 KB", gzip: "~14 KB" },
|
|
1543
|
-
id: { raw: "57 KB", gzip: "~14 KB" },
|
|
1544
1561
|
qu: { raw: "56 KB", gzip: "~14 KB" },
|
|
1562
|
+
ru: { raw: "56 KB", gzip: "~14 KB" },
|
|
1545
1563
|
sw: { raw: "56 KB", gzip: "~14 KB" },
|
|
1564
|
+
th: { raw: "56 KB", gzip: "~14 KB" },
|
|
1565
|
+
tl: { raw: "56 KB", gzip: "~14 KB" },
|
|
1566
|
+
tr: { raw: "73 KB", gzip: "~18 KB" },
|
|
1567
|
+
uk: { raw: "56 KB", gzip: "~14 KB" },
|
|
1568
|
+
vi: { raw: "56 KB", gzip: "~14 KB" },
|
|
1569
|
+
zh: { raw: "58 KB", gzip: "~15 KB" },
|
|
1546
1570
|
// Regional bundles
|
|
1547
1571
|
"es-en": { raw: "99 KB", gzip: "~25 KB" },
|
|
1548
1572
|
western: { raw: "127 KB", gzip: "~30 KB" },
|
|
@@ -1554,19 +1578,31 @@ function getSemanticBundleSize(bundleType) {
|
|
|
1554
1578
|
return SEMANTIC_BUNDLE_SIZES[bundleType] ?? SEMANTIC_BUNDLE_SIZES.all;
|
|
1555
1579
|
}
|
|
1556
1580
|
var LANGUAGES_WITH_ESM_EXPORTS = /* @__PURE__ */ new Set([
|
|
1581
|
+
"ar",
|
|
1582
|
+
"bn",
|
|
1583
|
+
"de",
|
|
1557
1584
|
"en",
|
|
1558
1585
|
"es",
|
|
1586
|
+
"es-MX",
|
|
1587
|
+
"fr",
|
|
1588
|
+
"he",
|
|
1589
|
+
"hi",
|
|
1590
|
+
"id",
|
|
1591
|
+
"it",
|
|
1559
1592
|
"ja",
|
|
1560
|
-
"ar",
|
|
1561
1593
|
"ko",
|
|
1562
|
-
"
|
|
1563
|
-
"
|
|
1594
|
+
"ms",
|
|
1595
|
+
"pl",
|
|
1564
1596
|
"pt",
|
|
1565
|
-
"fr",
|
|
1566
|
-
"de",
|
|
1567
|
-
"id",
|
|
1568
1597
|
"qu",
|
|
1569
|
-
"
|
|
1598
|
+
"ru",
|
|
1599
|
+
"sw",
|
|
1600
|
+
"th",
|
|
1601
|
+
"tl",
|
|
1602
|
+
"tr",
|
|
1603
|
+
"uk",
|
|
1604
|
+
"vi",
|
|
1605
|
+
"zh"
|
|
1570
1606
|
]);
|
|
1571
1607
|
function getLanguagesForBundleType(bundleType, configLanguages) {
|
|
1572
1608
|
const languages = new Set(configLanguages);
|
|
@@ -1596,28 +1632,28 @@ function getLanguagesForBundleType(bundleType, configLanguages) {
|
|
|
1596
1632
|
languages.add("en");
|
|
1597
1633
|
return languages;
|
|
1598
1634
|
}
|
|
1599
|
-
function
|
|
1635
|
+
function filterToAvailableLanguages(languages) {
|
|
1636
|
+
const available = /* @__PURE__ */ new Set();
|
|
1600
1637
|
for (const lang of languages) {
|
|
1601
|
-
if (
|
|
1602
|
-
|
|
1638
|
+
if (LANGUAGES_WITH_ESM_EXPORTS.has(lang)) {
|
|
1639
|
+
available.add(lang);
|
|
1603
1640
|
}
|
|
1604
1641
|
}
|
|
1605
|
-
|
|
1642
|
+
available.add("en");
|
|
1643
|
+
return available;
|
|
1606
1644
|
}
|
|
1607
1645
|
function generateSemanticIntegrationCode(config) {
|
|
1608
1646
|
if (!config.enabled || !config.bundleType) {
|
|
1609
1647
|
return "";
|
|
1610
1648
|
}
|
|
1611
1649
|
const resolvedLanguages = getLanguagesForBundleType(config.bundleType, config.languages);
|
|
1612
|
-
const
|
|
1650
|
+
const availableLanguages = filterToAvailableLanguages(resolvedLanguages);
|
|
1613
1651
|
const languages = [...config.languages].join("', '");
|
|
1614
1652
|
let code = `
|
|
1615
1653
|
// =============================================================================
|
|
1616
1654
|
// SEMANTIC PARSER INTEGRATION
|
|
1617
1655
|
// =============================================================================
|
|
1618
|
-
|
|
1619
|
-
if (useCorePlusLanguages) {
|
|
1620
|
-
code += `
|
|
1656
|
+
|
|
1621
1657
|
// Core infrastructure (no language data bundled)
|
|
1622
1658
|
import {
|
|
1623
1659
|
createSemanticAnalyzer,
|
|
@@ -1627,18 +1663,9 @@ import {
|
|
|
1627
1663
|
|
|
1628
1664
|
// Register required languages (self-registering side-effect imports)
|
|
1629
1665
|
`;
|
|
1630
|
-
|
|
1631
|
-
|
|
1632
|
-
|
|
1633
|
-
`;
|
|
1634
|
-
}
|
|
1635
|
-
} else {
|
|
1636
|
-
code += `
|
|
1637
|
-
import {
|
|
1638
|
-
createSemanticAnalyzer,
|
|
1639
|
-
buildAST,
|
|
1640
|
-
isLanguageSupported,
|
|
1641
|
-
} from '@lokascript/semantic';
|
|
1666
|
+
const sortedLangs = [...availableLanguages].sort();
|
|
1667
|
+
for (const lang of sortedLangs) {
|
|
1668
|
+
code += `import '@lokascript/semantic/languages/${lang}';
|
|
1642
1669
|
`;
|
|
1643
1670
|
}
|
|
1644
1671
|
if (config.grammarEnabled) {
|