marko 6.0.0-next.3.59 → 6.0.0-next.3.60
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/common/types.d.ts +7 -1
- package/dist/debug/dom.js +291 -126
- package/dist/debug/dom.mjs +291 -126
- package/dist/debug/html.js +118 -39
- package/dist/debug/html.mjs +118 -39
- package/dist/dom/control-flow.d.ts +5 -0
- package/dist/dom/queue.d.ts +2 -1
- package/dist/dom/scope.d.ts +1 -0
- package/dist/dom.d.ts +2 -2
- package/dist/dom.js +253 -130
- package/dist/dom.mjs +253 -130
- package/dist/html/dynamic-tag.d.ts +3 -4
- package/dist/html/serializer.d.ts +2 -1
- package/dist/html/writer.d.ts +2 -3
- package/dist/html.js +103 -35
- package/dist/html.mjs +103 -35
- package/dist/translator/core/await.d.ts +7 -0
- package/dist/translator/core/try.d.ts +7 -0
- package/dist/translator/index.js +140 -27
- package/package.json +1 -1
package/dist/common/types.d.ts
CHANGED
@@ -45,7 +45,13 @@ export declare enum AccessorChar {
|
|
45
45
|
ControlledValue = ":",
|
46
46
|
ControlledHandler = ";",
|
47
47
|
ControlledType = "=",
|
48
|
-
Getter = ">"
|
48
|
+
Getter = ">",
|
49
|
+
BranchAccessor = "*",
|
50
|
+
CatchContent = "^",
|
51
|
+
PlaceholderContent = "%",
|
52
|
+
PlaceholderBranch = "#",
|
53
|
+
PendingCount = ".",
|
54
|
+
Promise = "?"
|
49
55
|
}
|
50
56
|
export declare enum NodeType {
|
51
57
|
Element = 1,
|
package/dist/debug/dom.js
CHANGED
@@ -25,6 +25,7 @@ __export(dom_exports, {
|
|
25
25
|
attrTags: () => attrTags,
|
26
26
|
attrs: () => attrs,
|
27
27
|
attrsEvents: () => attrsEvents,
|
28
|
+
awaitTag: () => awaitTag,
|
28
29
|
classAttr: () => classAttr,
|
29
30
|
compat: () => compat,
|
30
31
|
conditional: () => conditional,
|
@@ -44,11 +45,13 @@ __export(dom_exports, {
|
|
44
45
|
createContent: () => createContent,
|
45
46
|
createRenderer: () => createRenderer,
|
46
47
|
createTemplate: () => createTemplate,
|
48
|
+
createTry: () => createTry,
|
47
49
|
data: () => data,
|
48
50
|
dynamicClosure: () => dynamicClosure,
|
49
51
|
dynamicClosureRead: () => dynamicClosureRead,
|
50
52
|
dynamicTag: () => dynamicTag,
|
51
53
|
effect: () => effect,
|
54
|
+
enableCatch: () => enableCatch,
|
52
55
|
forIn: () => forIn,
|
53
56
|
forOf: () => forOf,
|
54
57
|
forTo: () => forTo,
|
@@ -1028,134 +1031,15 @@ function insertBranchBefore(branch, parentNode, nextSibling) {
|
|
1028
1031
|
branch.___endNode
|
1029
1032
|
);
|
1030
1033
|
}
|
1031
|
-
|
1032
|
-
|
1033
|
-
|
1034
|
-
|
1035
|
-
|
1036
|
-
|
1037
|
-
|
1038
|
-
function queueRender(scope, signal, signalKey, value2, scopeKey = scope.___id) {
|
1039
|
-
const key = scopeKey * scopeKeyOffset + signalKey;
|
1040
|
-
const existingRender = signalKey >= 0 && pendingRendersLookup.get(key);
|
1041
|
-
if (existingRender) {
|
1042
|
-
existingRender.___value = value2;
|
1043
|
-
} else {
|
1044
|
-
const render = {
|
1045
|
-
___key: key,
|
1046
|
-
___scope: scope,
|
1047
|
-
___signal: signal,
|
1048
|
-
___value: value2
|
1049
|
-
};
|
1050
|
-
let i = pendingRenders.push(render) - 1;
|
1051
|
-
while (i) {
|
1052
|
-
const parentIndex = i - 1 >> 1;
|
1053
|
-
const parent = pendingRenders[parentIndex];
|
1054
|
-
if (key - parent.___key >= 0) break;
|
1055
|
-
pendingRenders[i] = parent;
|
1056
|
-
i = parentIndex;
|
1057
|
-
}
|
1058
|
-
signalKey >= 0 && pendingRendersLookup.set(key, render);
|
1059
|
-
pendingRenders[i] = render;
|
1060
|
-
}
|
1061
|
-
}
|
1062
|
-
function queueEffect(scope, fn) {
|
1063
|
-
pendingEffects.push(fn, scope);
|
1064
|
-
}
|
1065
|
-
function run() {
|
1066
|
-
const effects = pendingEffects;
|
1067
|
-
try {
|
1068
|
-
rendering = true;
|
1069
|
-
runRenders();
|
1070
|
-
} finally {
|
1071
|
-
pendingRenders = [];
|
1072
|
-
pendingRendersLookup = /* @__PURE__ */ new Map();
|
1073
|
-
pendingEffects = [];
|
1074
|
-
rendering = false;
|
1075
|
-
}
|
1076
|
-
runEffects(effects);
|
1077
|
-
}
|
1078
|
-
function prepareEffects(fn) {
|
1079
|
-
const prevRenders = pendingRenders;
|
1080
|
-
const prevRendersLookup = pendingRendersLookup;
|
1081
|
-
const prevEffects = pendingEffects;
|
1082
|
-
const preparedEffects = pendingEffects = [];
|
1083
|
-
pendingRenders = [];
|
1084
|
-
pendingRendersLookup = /* @__PURE__ */ new Map();
|
1085
|
-
try {
|
1086
|
-
rendering = true;
|
1087
|
-
fn();
|
1088
|
-
runRenders();
|
1089
|
-
} finally {
|
1090
|
-
rendering = false;
|
1091
|
-
pendingRenders = prevRenders;
|
1092
|
-
pendingRendersLookup = prevRendersLookup;
|
1093
|
-
pendingEffects = prevEffects;
|
1094
|
-
}
|
1095
|
-
return preparedEffects;
|
1096
|
-
}
|
1097
|
-
function runEffects(effects) {
|
1098
|
-
for (let i = 0, scope; i < effects.length; ) {
|
1099
|
-
effects[i++](
|
1100
|
-
scope = effects[i++],
|
1101
|
-
scope
|
1102
|
-
);
|
1103
|
-
}
|
1104
|
-
}
|
1105
|
-
function runRenders() {
|
1106
|
-
while (pendingRenders.length) {
|
1107
|
-
const render = pendingRenders[0];
|
1108
|
-
const item = pendingRenders.pop();
|
1109
|
-
if (render !== item) {
|
1110
|
-
let i = 0;
|
1111
|
-
const mid = pendingRenders.length >> 1;
|
1112
|
-
const key = (pendingRenders[0] = item).___key;
|
1113
|
-
while (i < mid) {
|
1114
|
-
let bestChild = (i << 1) + 1;
|
1115
|
-
const right = bestChild + 1;
|
1116
|
-
if (right < pendingRenders.length && pendingRenders[right].___key - pendingRenders[bestChild].___key < 0) {
|
1117
|
-
bestChild = right;
|
1118
|
-
}
|
1119
|
-
if (pendingRenders[bestChild].___key - key >= 0) {
|
1120
|
-
break;
|
1121
|
-
} else {
|
1122
|
-
pendingRenders[i] = pendingRenders[bestChild];
|
1123
|
-
i = bestChild;
|
1124
|
-
}
|
1125
|
-
}
|
1126
|
-
pendingRenders[i] = item;
|
1127
|
-
}
|
1128
|
-
if (!render.___scope.___closestBranch?.___destroyed) {
|
1129
|
-
render.___signal(render.___scope, render.___value);
|
1130
|
-
}
|
1131
|
-
}
|
1132
|
-
finishPendingScopes();
|
1133
|
-
}
|
1134
|
-
|
1135
|
-
// src/dom/abort-signal.ts
|
1136
|
-
function resetAbortSignal(scope, id) {
|
1137
|
-
const ctrl = scope.___abortControllers?.[id];
|
1138
|
-
if (ctrl) {
|
1139
|
-
queueEffect(ctrl, abort);
|
1140
|
-
scope.___abortControllers[id] = void 0;
|
1141
|
-
}
|
1142
|
-
}
|
1143
|
-
function getAbortSignal(scope, id) {
|
1144
|
-
if (scope.___closestBranch) {
|
1145
|
-
(scope.___closestBranch.___abortScopes ||= /* @__PURE__ */ new Set()).add(scope);
|
1146
|
-
}
|
1147
|
-
return ((scope.___abortControllers ||= {})[id] ||= new AbortController()).signal;
|
1148
|
-
}
|
1149
|
-
function abort(ctrl) {
|
1150
|
-
ctrl.abort();
|
1034
|
+
function tempDetatchBranch(branch) {
|
1035
|
+
insertChildNodes(
|
1036
|
+
branch.___startNode.ownerDocument.createDocumentFragment(),
|
1037
|
+
null,
|
1038
|
+
branch.___startNode,
|
1039
|
+
branch.___endNode
|
1040
|
+
);
|
1151
1041
|
}
|
1152
1042
|
|
1153
|
-
// src/common/compat-meta.ts
|
1154
|
-
var prefix = true ? "$compat_" : "$C_";
|
1155
|
-
var RENDERER_REGISTER_ID = prefix + (true ? "renderer" : "r");
|
1156
|
-
var SET_SCOPE_REGISTER_ID = prefix + (true ? "setScope" : "s");
|
1157
|
-
var RENDER_BODY_ID = prefix + (true ? "renderBody" : "b");
|
1158
|
-
|
1159
1043
|
// src/dom/reconcile.ts
|
1160
1044
|
var WRONG_POS = 2147483647;
|
1161
1045
|
function reconcile(parent, oldBranches, newBranches, afterReference) {
|
@@ -1732,6 +1616,132 @@ function hoist(...path) {
|
|
1732
1616
|
}
|
1733
1617
|
|
1734
1618
|
// src/dom/control-flow.ts
|
1619
|
+
function awaitTag(nodeAccessor, renderer) {
|
1620
|
+
const promiseAccessor = nodeAccessor + "?" /* Promise */;
|
1621
|
+
const branchAccessor = nodeAccessor + "!" /* ConditionalScope */;
|
1622
|
+
return (scope, promise) => {
|
1623
|
+
let tryBranch = scope.___closestBranch;
|
1624
|
+
let awaitBranch = scope[branchAccessor];
|
1625
|
+
const referenceNode = scope[nodeAccessor];
|
1626
|
+
const namespaceNode = (awaitBranch?.___startNode ?? referenceNode).parentNode;
|
1627
|
+
while (tryBranch && !tryBranch["%" /* PlaceholderContent */]) {
|
1628
|
+
tryBranch = tryBranch.___parentBranch;
|
1629
|
+
}
|
1630
|
+
const thisPromise = scope[promiseAccessor] = promise.then((data2) => {
|
1631
|
+
if (scope.___closestBranch?.___destroyed || scope[promiseAccessor] !== thisPromise) {
|
1632
|
+
return;
|
1633
|
+
}
|
1634
|
+
scope[promiseAccessor] = void 0;
|
1635
|
+
const effects = prepareEffects(() => {
|
1636
|
+
if (!awaitBranch || !tryBranch) {
|
1637
|
+
insertBranchBefore(
|
1638
|
+
awaitBranch ??= scope[branchAccessor] = createAndSetupBranch(
|
1639
|
+
scope.$global,
|
1640
|
+
renderer,
|
1641
|
+
scope,
|
1642
|
+
namespaceNode
|
1643
|
+
),
|
1644
|
+
referenceNode.parentNode,
|
1645
|
+
referenceNode
|
1646
|
+
);
|
1647
|
+
referenceNode.remove();
|
1648
|
+
}
|
1649
|
+
renderer.___params?.(awaitBranch, [data2]);
|
1650
|
+
});
|
1651
|
+
if (tryBranch) {
|
1652
|
+
if (!--tryBranch["." /* PendingCount */]) {
|
1653
|
+
const placeholderBranch = tryBranch["#" /* PlaceholderBranch */];
|
1654
|
+
if (placeholderBranch) {
|
1655
|
+
insertBranchBefore(
|
1656
|
+
tryBranch,
|
1657
|
+
placeholderBranch.___startNode.parentNode,
|
1658
|
+
placeholderBranch.___startNode
|
1659
|
+
);
|
1660
|
+
removeAndDestroyBranch(placeholderBranch);
|
1661
|
+
} else {
|
1662
|
+
insertBranchBefore(
|
1663
|
+
tryBranch,
|
1664
|
+
referenceNode.parentNode,
|
1665
|
+
referenceNode
|
1666
|
+
);
|
1667
|
+
}
|
1668
|
+
}
|
1669
|
+
} else {
|
1670
|
+
runEffects(effects);
|
1671
|
+
}
|
1672
|
+
}).catch((error) => {
|
1673
|
+
let tryBranch2 = scope.___closestBranch;
|
1674
|
+
while (tryBranch2 && !tryBranch2["^" /* CatchContent */]) {
|
1675
|
+
tryBranch2 = tryBranch2.___parentBranch;
|
1676
|
+
}
|
1677
|
+
if (!tryBranch2) {
|
1678
|
+
setTimeout(() => {
|
1679
|
+
throw error;
|
1680
|
+
});
|
1681
|
+
} else {
|
1682
|
+
setConditionalRenderer(
|
1683
|
+
tryBranch2._,
|
1684
|
+
tryBranch2["*" /* BranchAccessor */],
|
1685
|
+
tryBranch2["^" /* CatchContent */],
|
1686
|
+
createAndSetupBranch
|
1687
|
+
);
|
1688
|
+
tryBranch2["^" /* CatchContent */].___params?.(
|
1689
|
+
tryBranch2._[tryBranch2["*" /* BranchAccessor */] + "!" /* ConditionalScope */],
|
1690
|
+
[error]
|
1691
|
+
);
|
1692
|
+
}
|
1693
|
+
});
|
1694
|
+
if (tryBranch) {
|
1695
|
+
if (!tryBranch["." /* PendingCount */]) {
|
1696
|
+
tryBranch["." /* PendingCount */] = 0;
|
1697
|
+
requestAnimationFrame(() => {
|
1698
|
+
if (tryBranch["." /* PendingCount */] && !tryBranch.___destroyed) {
|
1699
|
+
const placeholderBranch = tryBranch["#" /* PlaceholderBranch */] = createAndSetupBranch(
|
1700
|
+
scope.$global,
|
1701
|
+
tryBranch["%" /* PlaceholderContent */],
|
1702
|
+
tryBranch._,
|
1703
|
+
tryBranch.___startNode.parentNode
|
1704
|
+
);
|
1705
|
+
insertBranchBefore(
|
1706
|
+
placeholderBranch,
|
1707
|
+
tryBranch.___startNode.parentNode,
|
1708
|
+
tryBranch.___startNode
|
1709
|
+
);
|
1710
|
+
tempDetatchBranch(tryBranch);
|
1711
|
+
}
|
1712
|
+
});
|
1713
|
+
}
|
1714
|
+
tryBranch["." /* PendingCount */]++;
|
1715
|
+
} else if (awaitBranch) {
|
1716
|
+
awaitBranch.___startNode.parentNode.insertBefore(
|
1717
|
+
referenceNode,
|
1718
|
+
awaitBranch.___startNode
|
1719
|
+
);
|
1720
|
+
tempDetatchBranch(awaitBranch);
|
1721
|
+
}
|
1722
|
+
};
|
1723
|
+
}
|
1724
|
+
function createTry(nodeAccessor, tryContent) {
|
1725
|
+
const branchAccessor = nodeAccessor + "!" /* ConditionalScope */;
|
1726
|
+
return (scope, input) => {
|
1727
|
+
if (!scope[branchAccessor]) {
|
1728
|
+
setConditionalRenderer(
|
1729
|
+
scope,
|
1730
|
+
nodeAccessor,
|
1731
|
+
tryContent,
|
1732
|
+
createAndSetupBranch
|
1733
|
+
);
|
1734
|
+
}
|
1735
|
+
const branch = scope[branchAccessor];
|
1736
|
+
if (branch) {
|
1737
|
+
branch["*" /* BranchAccessor */] = nodeAccessor;
|
1738
|
+
branch["^" /* CatchContent */] = normalizeDynamicRenderer(input.catch);
|
1739
|
+
branch["%" /* PlaceholderContent */] = normalizeDynamicRenderer(
|
1740
|
+
input.placeholder
|
1741
|
+
);
|
1742
|
+
}
|
1743
|
+
};
|
1744
|
+
}
|
1735
1745
|
function conditional(nodeAccessor, ...branches) {
|
1736
1746
|
const branchAccessor = nodeAccessor + "(" /* ConditionalRenderer */;
|
1737
1747
|
return (scope, newBranch) => {
|
@@ -1927,6 +1937,161 @@ function byFirstArg(name) {
|
|
1927
1937
|
return name;
|
1928
1938
|
}
|
1929
1939
|
|
1940
|
+
// src/dom/queue.ts
|
1941
|
+
var pendingRenders = [];
|
1942
|
+
var pendingRendersLookup = /* @__PURE__ */ new Map();
|
1943
|
+
var pendingEffects = [];
|
1944
|
+
var rendering = false;
|
1945
|
+
var scopeKeyOffset = 1e3;
|
1946
|
+
function queueRender(scope, signal, signalKey, value2, scopeKey = scope.___id) {
|
1947
|
+
const key = scopeKey * scopeKeyOffset + signalKey;
|
1948
|
+
const existingRender = signalKey >= 0 && pendingRendersLookup.get(key);
|
1949
|
+
if (existingRender) {
|
1950
|
+
existingRender.___value = value2;
|
1951
|
+
} else {
|
1952
|
+
const render = {
|
1953
|
+
___key: key,
|
1954
|
+
___scope: scope,
|
1955
|
+
___signal: signal,
|
1956
|
+
___value: value2
|
1957
|
+
};
|
1958
|
+
let i = pendingRenders.push(render) - 1;
|
1959
|
+
while (i) {
|
1960
|
+
const parentIndex = i - 1 >> 1;
|
1961
|
+
const parent = pendingRenders[parentIndex];
|
1962
|
+
if (key - parent.___key >= 0) break;
|
1963
|
+
pendingRenders[i] = parent;
|
1964
|
+
i = parentIndex;
|
1965
|
+
}
|
1966
|
+
signalKey >= 0 && pendingRendersLookup.set(key, render);
|
1967
|
+
pendingRenders[i] = render;
|
1968
|
+
}
|
1969
|
+
}
|
1970
|
+
function queueEffect(scope, fn) {
|
1971
|
+
pendingEffects.push(fn, scope);
|
1972
|
+
}
|
1973
|
+
function run() {
|
1974
|
+
const effects = pendingEffects;
|
1975
|
+
try {
|
1976
|
+
rendering = true;
|
1977
|
+
runRenders();
|
1978
|
+
} finally {
|
1979
|
+
pendingRenders = [];
|
1980
|
+
pendingRendersLookup = /* @__PURE__ */ new Map();
|
1981
|
+
pendingEffects = [];
|
1982
|
+
rendering = false;
|
1983
|
+
}
|
1984
|
+
runEffects(effects);
|
1985
|
+
}
|
1986
|
+
function prepareEffects(fn) {
|
1987
|
+
const prevRenders = pendingRenders;
|
1988
|
+
const prevRendersLookup = pendingRendersLookup;
|
1989
|
+
const prevEffects = pendingEffects;
|
1990
|
+
const preparedEffects = pendingEffects = [];
|
1991
|
+
pendingRenders = [];
|
1992
|
+
pendingRendersLookup = /* @__PURE__ */ new Map();
|
1993
|
+
try {
|
1994
|
+
rendering = true;
|
1995
|
+
fn();
|
1996
|
+
runRenders();
|
1997
|
+
} finally {
|
1998
|
+
rendering = false;
|
1999
|
+
pendingRenders = prevRenders;
|
2000
|
+
pendingRendersLookup = prevRendersLookup;
|
2001
|
+
pendingEffects = prevEffects;
|
2002
|
+
}
|
2003
|
+
return preparedEffects;
|
2004
|
+
}
|
2005
|
+
function runEffects(effects) {
|
2006
|
+
for (let i = 0, scope; i < effects.length; ) {
|
2007
|
+
effects[i++](
|
2008
|
+
scope = effects[i++],
|
2009
|
+
scope
|
2010
|
+
);
|
2011
|
+
}
|
2012
|
+
}
|
2013
|
+
function runRenders() {
|
2014
|
+
while (pendingRenders.length) {
|
2015
|
+
const render = pendingRenders[0];
|
2016
|
+
const item = pendingRenders.pop();
|
2017
|
+
if (render !== item) {
|
2018
|
+
let i = 0;
|
2019
|
+
const mid = pendingRenders.length >> 1;
|
2020
|
+
const key = (pendingRenders[0] = item).___key;
|
2021
|
+
while (i < mid) {
|
2022
|
+
let bestChild = (i << 1) + 1;
|
2023
|
+
const right = bestChild + 1;
|
2024
|
+
if (right < pendingRenders.length && pendingRenders[right].___key - pendingRenders[bestChild].___key < 0) {
|
2025
|
+
bestChild = right;
|
2026
|
+
}
|
2027
|
+
if (pendingRenders[bestChild].___key - key >= 0) {
|
2028
|
+
break;
|
2029
|
+
} else {
|
2030
|
+
pendingRenders[i] = pendingRenders[bestChild];
|
2031
|
+
i = bestChild;
|
2032
|
+
}
|
2033
|
+
}
|
2034
|
+
pendingRenders[i] = item;
|
2035
|
+
}
|
2036
|
+
if (!render.___scope.___closestBranch?.___destroyed) {
|
2037
|
+
runRender(render);
|
2038
|
+
}
|
2039
|
+
}
|
2040
|
+
finishPendingScopes();
|
2041
|
+
}
|
2042
|
+
var runRender = (render) => render.___signal(render.___scope, render.___value);
|
2043
|
+
var enableCatch = () => {
|
2044
|
+
enableCatch = () => {
|
2045
|
+
};
|
2046
|
+
runRender = /* @__PURE__ */ ((runRender2) => (render) => {
|
2047
|
+
try {
|
2048
|
+
runRender2(render);
|
2049
|
+
} catch (error) {
|
2050
|
+
let branch = render.___scope.___closestBranch;
|
2051
|
+
while (branch && !branch["^" /* CatchContent */])
|
2052
|
+
branch = branch.___parentBranch;
|
2053
|
+
if (!branch) {
|
2054
|
+
throw error;
|
2055
|
+
} else {
|
2056
|
+
setConditionalRenderer(
|
2057
|
+
branch._,
|
2058
|
+
branch["*" /* BranchAccessor */],
|
2059
|
+
branch["^" /* CatchContent */],
|
2060
|
+
createAndSetupBranch
|
2061
|
+
);
|
2062
|
+
branch["^" /* CatchContent */].___params?.(
|
2063
|
+
branch._[branch["*" /* BranchAccessor */] + "!" /* ConditionalScope */],
|
2064
|
+
[error]
|
2065
|
+
);
|
2066
|
+
}
|
2067
|
+
}
|
2068
|
+
})(runRender);
|
2069
|
+
};
|
2070
|
+
|
2071
|
+
// src/dom/abort-signal.ts
|
2072
|
+
function resetAbortSignal(scope, id) {
|
2073
|
+
const ctrl = scope.___abortControllers?.[id];
|
2074
|
+
if (ctrl) {
|
2075
|
+
queueEffect(ctrl, abort);
|
2076
|
+
scope.___abortControllers[id] = void 0;
|
2077
|
+
}
|
2078
|
+
}
|
2079
|
+
function getAbortSignal(scope, id) {
|
2080
|
+
if (scope.___closestBranch) {
|
2081
|
+
(scope.___closestBranch.___abortScopes ||= /* @__PURE__ */ new Set()).add(scope);
|
2082
|
+
}
|
2083
|
+
return ((scope.___abortControllers ||= {})[id] ||= new AbortController()).signal;
|
2084
|
+
}
|
2085
|
+
function abort(ctrl) {
|
2086
|
+
ctrl.abort();
|
2087
|
+
}
|
2088
|
+
|
2089
|
+
// src/common/compat-meta.ts
|
2090
|
+
var prefix = true ? "$compat_" : "$C_";
|
2091
|
+
var RENDERER_REGISTER_ID = prefix + (true ? "renderer" : "r");
|
2092
|
+
var SET_SCOPE_REGISTER_ID = prefix + (true ? "setScope" : "s");
|
2093
|
+
var RENDER_BODY_ID = prefix + (true ? "renderBody" : "b");
|
2094
|
+
|
1930
2095
|
// src/dom/compat.ts
|
1931
2096
|
var classIdToBranch = /* @__PURE__ */ new Map();
|
1932
2097
|
var compat = {
|