@lokascript/compilation-service 3.2.0 → 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 +41 -1
- package/dist/{chunk-XOAPC6M5.js → chunk-AMTQUPKJ.js} +2 -2
- package/dist/{chunk-QQLDIJOC.js → chunk-PEL4Z7TK.js} +2 -2
- package/dist/{core-parser-adapter-W5UPZR4X-7CPPQMOH.js → core-parser-adapter-W5UPZR4X-QSTMJ42V.js} +2 -2
- package/dist/{dist-BDTQTYGC.js → dist-6EMM5HXE.js} +3 -3
- package/dist/{dist-SO754VTX.js → dist-OK2I5ODH.js} +5 -2
- package/dist/dist-OK2I5ODH.js.map +1 -0
- package/dist/http.cjs +4 -1
- package/dist/http.cjs.map +1 -1
- package/dist/http.js +1 -1
- package/dist/index.cjs +4 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +1 -1
- package/package.json +5 -5
- package/dist/dist-SO754VTX.js.map +0 -1
- /package/dist/{chunk-XOAPC6M5.js.map → chunk-AMTQUPKJ.js.map} +0 -0
- /package/dist/{chunk-QQLDIJOC.js.map → chunk-PEL4Z7TK.js.map} +0 -0
- /package/dist/{core-parser-adapter-W5UPZR4X-7CPPQMOH.js.map → core-parser-adapter-W5UPZR4X-QSTMJ42V.js.map} +0 -0
- /package/dist/{dist-BDTQTYGC.js.map → dist-6EMM5HXE.js.map} +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,44 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [3.3.0] - 2026-10-02
|
|
11
|
+
|
|
12
|
+
The first publication of `@hyperfixi/engine`, the hyperscript engine meant to replace the one
|
|
13
|
+
in `@hyperfixi/core`, and the example gallery moved onto it.
|
|
14
|
+
|
|
15
|
+
### Added
|
|
16
|
+
|
|
17
|
+
- **`@hyperfixi/engine` is published.** A hyperscript engine written against upstream
|
|
18
|
+
`_hyperscript`'s source, with upstream's own test suite as the acceptance oracle (1,401 of
|
|
19
|
+
1,467 tests; the 66 known failures are upstream's internal API, sockets and workers). It
|
|
20
|
+
ships `dist/hyperfixi-hs.js`, a script-tag bundle of hyperscript and nothing else, 34.1 KB
|
|
21
|
+
gzipped, which 36 of the repository's example pages now load instead of `hyperfixi.js`. It
|
|
22
|
+
keeps two forms upstream lacks, `new X(...)` and `toggle <element>`; the other hyperfixi-only
|
|
23
|
+
forms are not in it. It is typed (`tsc --strict`, no `any`), built from modules, and exposes
|
|
24
|
+
upstream's public API shape plus one hook, `addSourceTransform`, which
|
|
25
|
+
`@lokascript/hyperscript-adapter` uses to run the 24 languages on it.
|
|
26
|
+
|
|
27
|
+
### Changed
|
|
28
|
+
|
|
29
|
+
- **Examples and docs are written in upstream `_hyperscript`'s spelling** wherever upstream has
|
|
30
|
+
one: `put Y into X` for the `swap` strategies, `debounced at 300ms`, `matches`, `set X's @a`,
|
|
31
|
+
`increment #count's textContent` (core counted in a bare `#count`; upstream does not),
|
|
32
|
+
`on mutation of childList from #x`, `my offsetLeft` in place of `measure x`. The multilingual
|
|
33
|
+
reader still accepts the old forms; the renderer writes upstream's. Corpus rows follow.
|
|
34
|
+
- **`@lokascript/semantic` renders `repeat for x in xs index i`** (was `with index`) and
|
|
35
|
+
`tell X show` (was `tell X to show`), upstream's spellings.
|
|
36
|
+
- **The examples' bundle loader** takes a per-page default (`data-default="hs"`), and `?bundle=hs`
|
|
37
|
+
switches any page to the engine bundle.
|
|
38
|
+
|
|
39
|
+
### Fixed
|
|
40
|
+
|
|
41
|
+
- **`@hyperfixi/core`**: `toggle *display of X` parsed and then threw.
|
|
42
|
+
- **Hybrid bundles (`hyperfixi-hx.js`)**: `increment` / `decrement` of a possessive wrote only
|
|
43
|
+
style properties; `increment #count's textContent` evaluated to the text and threw on
|
|
44
|
+
`querySelectorAll('0')`. They now write the property.
|
|
45
|
+
- **`@lokascript/semantic`**: a template-literal URL in a Korean handler was read as a custom
|
|
46
|
+
event name.
|
|
47
|
+
|
|
10
48
|
## [3.2.0] - 2026-09-30
|
|
11
49
|
|
|
12
50
|
A correctness release for multilingual hyperscript. The semantic parser behind
|
|
@@ -861,7 +899,9 @@ _Synchronized version release. See git history for details._
|
|
|
861
899
|
- npm access token stored in GitHub Secrets
|
|
862
900
|
- 2FA recommended for npm organization
|
|
863
901
|
|
|
864
|
-
[Unreleased]: https://github.com/codetalcott/hyperfixi/compare/v3.
|
|
902
|
+
[Unreleased]: https://github.com/codetalcott/hyperfixi/compare/v3.3.0...HEAD
|
|
903
|
+
[3.3.0]: https://github.com/codetalcott/hyperfixi/compare/v3.2.0...v3.3.0
|
|
904
|
+
[3.2.0]: https://github.com/codetalcott/hyperfixi/compare/v3.1.0...v3.2.0
|
|
865
905
|
[3.1.0]: https://github.com/codetalcott/hyperfixi/compare/v3.0.0...v3.1.0
|
|
866
906
|
[2.10.0]: https://github.com/codetalcott/hyperfixi/compare/v2.9.0...v2.10.0
|
|
867
907
|
[2.9.0]: https://github.com/codetalcott/hyperfixi/compare/v2.8.0...v2.9.0
|
|
@@ -2862,7 +2862,7 @@ var CompilationService = class _CompilationService {
|
|
|
2862
2862
|
initValidation({
|
|
2863
2863
|
validateSemanticResult: semantic.validateSemanticResult
|
|
2864
2864
|
});
|
|
2865
|
-
const aot = await import("./dist-
|
|
2865
|
+
const aot = await import("./dist-6EMM5HXE.js");
|
|
2866
2866
|
const compiler = aot.createCompiler();
|
|
2867
2867
|
initBridge(
|
|
2868
2868
|
{
|
|
@@ -3503,4 +3503,4 @@ export {
|
|
|
3503
3503
|
SvelteRenderer,
|
|
3504
3504
|
CompilationService
|
|
3505
3505
|
};
|
|
3506
|
-
//# sourceMappingURL=chunk-
|
|
3506
|
+
//# sourceMappingURL=chunk-AMTQUPKJ.js.map
|
|
@@ -24,7 +24,7 @@ function convertCoreASTToAOT(node) {
|
|
|
24
24
|
return node;
|
|
25
25
|
}
|
|
26
26
|
async function createCoreParserAdapter() {
|
|
27
|
-
const core = await import("./dist-
|
|
27
|
+
const core = await import("./dist-OK2I5ODH.js");
|
|
28
28
|
const api = core.hyperscript ?? core.default ?? core;
|
|
29
29
|
if (!api?.compileSync) {
|
|
30
30
|
throw new Error(
|
|
@@ -55,4 +55,4 @@ export {
|
|
|
55
55
|
convertCoreASTToAOT,
|
|
56
56
|
createCoreParserAdapter
|
|
57
57
|
};
|
|
58
|
-
//# sourceMappingURL=chunk-
|
|
58
|
+
//# sourceMappingURL=chunk-PEL4Z7TK.js.map
|
package/dist/{core-parser-adapter-W5UPZR4X-7CPPQMOH.js → core-parser-adapter-W5UPZR4X-QSTMJ42V.js}
RENAMED
|
@@ -2,11 +2,11 @@ import {
|
|
|
2
2
|
CoreParserAdapter,
|
|
3
3
|
convertCoreASTToAOT,
|
|
4
4
|
createCoreParserAdapter
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-PEL4Z7TK.js";
|
|
6
6
|
import "./chunk-GBPMR66W.js";
|
|
7
7
|
export {
|
|
8
8
|
CoreParserAdapter,
|
|
9
9
|
convertCoreASTToAOT,
|
|
10
10
|
createCoreParserAdapter
|
|
11
11
|
};
|
|
12
|
-
//# sourceMappingURL=core-parser-adapter-W5UPZR4X-
|
|
12
|
+
//# sourceMappingURL=core-parser-adapter-W5UPZR4X-QSTMJ42V.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
CoreParserAdapter,
|
|
3
3
|
createCoreParserAdapter
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-PEL4Z7TK.js";
|
|
5
5
|
import {
|
|
6
6
|
SemanticParserAdapter,
|
|
7
7
|
createSemanticAdapter
|
|
@@ -4407,7 +4407,7 @@ async function compileHyperscript(code, options) {
|
|
|
4407
4407
|
async function createMultilingualCompiler() {
|
|
4408
4408
|
const compiler = new AOTCompiler();
|
|
4409
4409
|
try {
|
|
4410
|
-
const { createCoreParserAdapter: createCoreParserAdapter2 } = await import("./core-parser-adapter-W5UPZR4X-
|
|
4410
|
+
const { createCoreParserAdapter: createCoreParserAdapter2 } = await import("./core-parser-adapter-W5UPZR4X-QSTMJ42V.js");
|
|
4411
4411
|
compiler.setParser(await createCoreParserAdapter2());
|
|
4412
4412
|
} catch {
|
|
4413
4413
|
}
|
|
@@ -4460,4 +4460,4 @@ export {
|
|
|
4460
4460
|
sanitizeSelector,
|
|
4461
4461
|
scanFiles
|
|
4462
4462
|
};
|
|
4463
|
-
//# sourceMappingURL=dist-
|
|
4463
|
+
//# sourceMappingURL=dist-6EMM5HXE.js.map
|
|
@@ -3736,6 +3736,9 @@ function parseToggleCommand(ctx, identifierNode) {
|
|
|
3736
3736
|
if (classArg && mode !== void 0 && classArg.expression) {
|
|
3737
3737
|
args.push(classArg.expression);
|
|
3738
3738
|
modifiers["as"] = literalModifier(mode);
|
|
3739
|
+
} else if (classArg?.type === "binaryExpression" && classArg.operator === "of" && classArg.left?.type === "selector" && typeof classArg.left.value === "string" && classArg.left.value.startsWith("*") && classArg.right) {
|
|
3740
|
+
args.push(classArg.left);
|
|
3741
|
+
modifiers["on"] = classArg.right;
|
|
3739
3742
|
} else if (classArg) {
|
|
3740
3743
|
args.push(classArg);
|
|
3741
3744
|
}
|
|
@@ -25084,7 +25087,7 @@ function updateDebugStats(event) {
|
|
|
25084
25087
|
}
|
|
25085
25088
|
stats.averageConfidence = stats.confidenceHistory.reduce((a, b) => a + b, 0) / stats.confidenceHistory.length;
|
|
25086
25089
|
}
|
|
25087
|
-
var VERSION = "3.
|
|
25090
|
+
var VERSION = "3.3.0";
|
|
25088
25091
|
function createHistorySwap(config2) {
|
|
25089
25092
|
const { target, strategy = "morph", useViewTransition = false, fetchOptions = {}, transformUrl, onBeforeFetch, onAfterSwap, onError } = config2;
|
|
25090
25093
|
const resolveTarget = () => {
|
|
@@ -27674,4 +27677,4 @@ export {
|
|
|
27674
27677
|
toCoreAST,
|
|
27675
27678
|
validatePartialContent
|
|
27676
27679
|
};
|
|
27677
|
-
//# sourceMappingURL=dist-
|
|
27680
|
+
//# sourceMappingURL=dist-OK2I5ODH.js.map
|