marko 6.0.123 → 6.0.125
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/translator/index.js
CHANGED
|
@@ -30,15 +30,15 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
30
30
|
// src/translator/index.ts
|
|
31
31
|
var index_exports = {};
|
|
32
32
|
__export(index_exports, {
|
|
33
|
-
analyze: () =>
|
|
33
|
+
analyze: () => analyze,
|
|
34
34
|
createInteropTranslator: () => createInteropTranslator,
|
|
35
|
-
getRuntimeEntryFiles: () =>
|
|
35
|
+
getRuntimeEntryFiles: () => getRuntimeEntryFiles,
|
|
36
36
|
internalEntryBuilder: () => entry_builder_default,
|
|
37
37
|
preferAPI: () => preferAPI,
|
|
38
|
-
tagDiscoveryDirs: () =>
|
|
39
|
-
taglibs: () =>
|
|
40
|
-
transform: () =>
|
|
41
|
-
translate: () =>
|
|
38
|
+
tagDiscoveryDirs: () => tagDiscoveryDirs,
|
|
39
|
+
taglibs: () => taglibs,
|
|
40
|
+
transform: () => transform,
|
|
41
|
+
translate: () => translate
|
|
42
42
|
});
|
|
43
43
|
module.exports = __toCommonJS(index_exports);
|
|
44
44
|
|
|
@@ -2339,11 +2339,12 @@ var entry_builder_default = {
|
|
|
2339
2339
|
imports: [],
|
|
2340
2340
|
init: false
|
|
2341
2341
|
};
|
|
2342
|
+
const programExtra = file.path.node.extra;
|
|
2342
2343
|
const { analyzedTags } = file.metadata.marko;
|
|
2343
2344
|
state.imports.push(
|
|
2344
2345
|
(0, import_babel_utils12.resolveRelativePath)(entryFile, file.opts.filename)
|
|
2345
2346
|
);
|
|
2346
|
-
if (
|
|
2347
|
+
if (programExtra.isInteractive || programExtra.needsCompat) {
|
|
2347
2348
|
state.init = true;
|
|
2348
2349
|
}
|
|
2349
2350
|
for (const tag of analyzedTags || []) {
|
|
@@ -5497,13 +5498,26 @@ function translateVar(tag, initialValue, kind = "const") {
|
|
|
5497
5498
|
const changeName = binding.property + "Change";
|
|
5498
5499
|
const changeBinding = binding.upstreamAlias.propertyAliases.get(changeName);
|
|
5499
5500
|
if (changeBinding && changeName !== changeBinding.name) {
|
|
5500
|
-
getDestructurePattern(id)
|
|
5501
|
-
|
|
5502
|
-
|
|
5503
|
-
|
|
5504
|
-
import_compiler32.types.
|
|
5505
|
-
|
|
5506
|
-
|
|
5501
|
+
const pattern = getDestructurePattern(id);
|
|
5502
|
+
if (pattern) {
|
|
5503
|
+
pattern.unshiftContainer(
|
|
5504
|
+
"properties",
|
|
5505
|
+
import_compiler32.types.objectProperty(
|
|
5506
|
+
import_compiler32.types.identifier(changeName),
|
|
5507
|
+
import_compiler32.types.identifier(changeBinding.name)
|
|
5508
|
+
)
|
|
5509
|
+
);
|
|
5510
|
+
const lastProperty = pattern.get("properties").at(-1);
|
|
5511
|
+
if (lastProperty?.node.type === "RestElement") {
|
|
5512
|
+
const restBinding = lastProperty.node.argument.extra?.binding;
|
|
5513
|
+
if (restBinding) {
|
|
5514
|
+
restBinding.excludeProperties = propsUtil.add(
|
|
5515
|
+
restBinding.excludeProperties,
|
|
5516
|
+
changeName
|
|
5517
|
+
);
|
|
5518
|
+
}
|
|
5519
|
+
}
|
|
5520
|
+
}
|
|
5507
5521
|
}
|
|
5508
5522
|
});
|
|
5509
5523
|
tag.insertBefore(
|
|
@@ -6486,7 +6500,9 @@ function getOnlyChildParentTagName(tag, branchSize = 1) {
|
|
|
6486
6500
|
return extra[kOnlyChildInParent];
|
|
6487
6501
|
}
|
|
6488
6502
|
const parentTag = getParentTag(tag);
|
|
6489
|
-
return extra[kOnlyChildInParent] = parentTag && (0, import_babel_utils22.getTagDef)(parentTag)?.html && parentTag.node.name.type === "StringLiteral" && tag.parent.body.
|
|
6503
|
+
return extra[kOnlyChildInParent] = parentTag && (0, import_babel_utils22.getTagDef)(parentTag)?.html && parentTag.node.name.type === "StringLiteral" && tag.parent.body.filter(
|
|
6504
|
+
(node) => node.type !== "MarkoComment"
|
|
6505
|
+
).length === branchSize ? parentTag.node.name.value : false;
|
|
6490
6506
|
}
|
|
6491
6507
|
function getOptimizedOnlyChildNodeBinding(tag, section, branchSize = 1) {
|
|
6492
6508
|
if (getOnlyChildParentTagName(tag, branchSize)) {
|
|
@@ -12341,7 +12357,6 @@ var text_default = {
|
|
|
12341
12357
|
var import_generator = __toESM(require("@babel/generator"));
|
|
12342
12358
|
var import_compiler65 = require("@marko/compiler");
|
|
12343
12359
|
var import_babel_utils53 = require("@marko/compiler/babel-utils");
|
|
12344
|
-
var translate6 = __toESM(require("@marko/runtime-tags/translator"));
|
|
12345
12360
|
var import_path6 = __toESM(require("path"));
|
|
12346
12361
|
|
|
12347
12362
|
// src/translator/interop/feature-detection.ts
|
|
@@ -12572,23 +12587,23 @@ function addFeature(state, type, name2, path7) {
|
|
|
12572
12587
|
function createInteropTranslator(translate5) {
|
|
12573
12588
|
return {
|
|
12574
12589
|
preferAPI: translate5.preferAPI,
|
|
12575
|
-
transform: mergeVisitors(translate5.transform,
|
|
12576
|
-
analyze: mergeVisitors(translate5.analyze,
|
|
12590
|
+
transform: mergeVisitors(translate5.transform, transform),
|
|
12591
|
+
analyze: mergeVisitors(translate5.analyze, analyze),
|
|
12577
12592
|
translate: patchTranslateProgram(
|
|
12578
|
-
mergeVisitors(translate5.translate,
|
|
12593
|
+
mergeVisitors(translate5.translate, translate)
|
|
12579
12594
|
),
|
|
12580
12595
|
tagDiscoveryDirs: [
|
|
12581
|
-
...
|
|
12596
|
+
...tagDiscoveryDirs,
|
|
12582
12597
|
...translate5.tagDiscoveryDirs
|
|
12583
12598
|
],
|
|
12584
12599
|
taglibs: mergeTaglibs(
|
|
12585
12600
|
import_compiler65.taglib.resolveOptionalTaglibs(translate5.optionalTaglibs).concat(translate5.taglibs),
|
|
12586
|
-
|
|
12601
|
+
taglibs
|
|
12587
12602
|
),
|
|
12588
12603
|
getRuntimeEntryFiles(output, optimize) {
|
|
12589
12604
|
return [
|
|
12590
12605
|
...translate5.getRuntimeEntryFiles(output, optimize),
|
|
12591
|
-
...
|
|
12606
|
+
...getRuntimeEntryFiles(output, optimize)
|
|
12592
12607
|
];
|
|
12593
12608
|
}
|
|
12594
12609
|
};
|
|
@@ -12626,7 +12641,7 @@ function createInteropTranslator(translate5) {
|
|
|
12626
12641
|
return [
|
|
12627
12642
|
importHydrateProgram(
|
|
12628
12643
|
"6",
|
|
12629
|
-
|
|
12644
|
+
entry_builder_default.build(entryFile, true)
|
|
12630
12645
|
),
|
|
12631
12646
|
importHydrateProgram(
|
|
12632
12647
|
"5",
|
|
@@ -12643,7 +12658,7 @@ function createInteropTranslator(translate5) {
|
|
|
12643
12658
|
return translate5.internalEntryBuilder.build(entryFile);
|
|
12644
12659
|
}
|
|
12645
12660
|
} else {
|
|
12646
|
-
return
|
|
12661
|
+
return entry_builder_default.build(entryFile);
|
|
12647
12662
|
}
|
|
12648
12663
|
},
|
|
12649
12664
|
visit(file, entryFile, visitChild) {
|
|
@@ -12653,7 +12668,7 @@ function createInteropTranslator(translate5) {
|
|
|
12653
12668
|
};
|
|
12654
12669
|
if (isTagsAPI(file)) {
|
|
12655
12670
|
state.has6 = true;
|
|
12656
|
-
|
|
12671
|
+
entry_builder_default.visit(file, entryFile, visitChild);
|
|
12657
12672
|
} else {
|
|
12658
12673
|
state.has5 = true;
|
|
12659
12674
|
translate5.internalEntryBuilder.visit(file, entryFile, visitChild);
|
|
@@ -12856,10 +12871,10 @@ var visitors = extractVisitors({
|
|
|
12856
12871
|
MarkoScriptlet: scriptlet_default,
|
|
12857
12872
|
MarkoComment: comment_default
|
|
12858
12873
|
});
|
|
12859
|
-
var
|
|
12874
|
+
var tagDiscoveryDirs = ["tags"];
|
|
12860
12875
|
var preferAPI = "tags";
|
|
12861
|
-
var { transform
|
|
12862
|
-
var
|
|
12876
|
+
var { transform, analyze, translate } = visitors;
|
|
12877
|
+
var taglibs = [
|
|
12863
12878
|
[
|
|
12864
12879
|
core_default.taglibId,
|
|
12865
12880
|
{
|
|
@@ -12868,7 +12883,7 @@ var taglibs2 = [
|
|
|
12868
12883
|
}
|
|
12869
12884
|
]
|
|
12870
12885
|
];
|
|
12871
|
-
function
|
|
12886
|
+
function getRuntimeEntryFiles(output, optimize) {
|
|
12872
12887
|
return [
|
|
12873
12888
|
`${runtime_info_default.name}${optimize ? "" : "/debug"}/${output === "html" ? "html" : "dom"}`
|
|
12874
12889
|
];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { types as t } from "@marko/compiler";
|
|
2
|
-
import type
|
|
2
|
+
import { type Binding } from "./references";
|
|
3
3
|
export default function translateVar(tag: t.NodePath<t.MarkoTag>, initialValue: t.Expression, kind?: "let" | "const"): void;
|
|
4
4
|
export declare function translateDomVar(tag: t.NodePath<t.MarkoTag>, binding: Binding | undefined): void;
|