@barefootjs/jsx 0.5.1 → 0.5.3
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/analyzer-context.d.ts +8 -1
- package/dist/analyzer-context.d.ts.map +1 -1
- package/dist/analyzer.d.ts.map +1 -1
- package/dist/combine-client-js.d.ts.map +1 -1
- package/dist/expression-parser.d.ts.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +239 -65
- package/dist/ir-to-client-js/collect-elements.d.ts +31 -9
- package/dist/ir-to-client-js/collect-elements.d.ts.map +1 -1
- package/dist/ir-to-client-js/control-flow/plan/build-loop.d.ts.map +1 -1
- package/dist/ir-to-client-js/control-flow/plan/event-delegation.d.ts +8 -3
- package/dist/ir-to-client-js/control-flow/plan/event-delegation.d.ts.map +1 -1
- package/dist/ir-to-client-js/emit-reactive.d.ts.map +1 -1
- package/dist/ir-to-client-js/html-template.d.ts.map +1 -1
- package/dist/ir-to-client-js/imports.d.ts +2 -2
- package/dist/ir-to-client-js/imports.d.ts.map +1 -1
- package/dist/ir-to-client-js/plan/static-array-child-init.d.ts +3 -3
- package/dist/ir-to-client-js/plan/static-array-child-init.d.ts.map +1 -1
- package/dist/ir-to-client-js/types.d.ts +26 -4
- package/dist/ir-to-client-js/types.d.ts.map +1 -1
- package/dist/ir-to-client-js/utils.d.ts +19 -1
- package/dist/ir-to-client-js/utils.d.ts.map +1 -1
- package/dist/types.d.ts +6 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/__tests__/__snapshots__/doc-examples.test.ts.snap +203 -203
- package/src/__tests__/child-components-in-map.test.ts +376 -0
- package/src/__tests__/combine-client-js.test.ts +47 -0
- package/src/__tests__/dangerously-set-inner-html.test.ts +82 -0
- package/src/__tests__/static-loop-csr-materialize.test.ts +6 -4
- package/src/__tests__/text-slot-escaping.test.ts +56 -0
- package/src/analyzer-context.ts +59 -13
- package/src/analyzer.ts +8 -0
- package/src/combine-client-js.ts +66 -22
- package/src/expression-parser.ts +16 -1
- package/src/index.ts +2 -0
- package/src/ir-to-client-js/collect-elements.ts +191 -34
- package/src/ir-to-client-js/control-flow/plan/build-event-delegation.ts +1 -1
- package/src/ir-to-client-js/control-flow/plan/build-loop.ts +2 -1
- package/src/ir-to-client-js/control-flow/plan/event-delegation.ts +8 -3
- package/src/ir-to-client-js/control-flow/stringify/event-delegation.ts +3 -3
- package/src/ir-to-client-js/emit-reactive.ts +9 -0
- package/src/ir-to-client-js/html-template.ts +82 -10
- package/src/ir-to-client-js/imports.ts +1 -1
- package/src/ir-to-client-js/plan/build-static-array-child-init.ts +4 -8
- package/src/ir-to-client-js/plan/static-array-child-init.ts +3 -3
- package/src/ir-to-client-js/types.ts +27 -4
- package/src/ir-to-client-js/utils.ts +41 -1
- package/src/scanner/__tests__/js-scanner.fuzz.test.ts +202 -0
- package/src/types.ts +6 -0
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Context object for single-pass AST analysis.
|
|
5
5
|
*/
|
|
6
6
|
import ts from 'typescript';
|
|
7
|
-
import type { SignalInfo, MemoInfo, EffectInfo, OnMountInfo, InitStatementInfo, ImportInfo, NamedExportInfo, FunctionInfo, ConstantInfo, TypeDefinition, TypeInfo, CompilerError, SourceLocation, ParamInfo, ReactiveFactoryInfo } from './types';
|
|
7
|
+
import type { SignalInfo, MemoInfo, EffectInfo, OnMountInfo, InitStatementInfo, ImportInfo, NamedExportInfo, FunctionInfo, ConstantInfo, TypeDefinition, TypeInfo, CompilerError, SourceLocation, ParamInfo, PropertyInfo, ReactiveFactoryInfo } from './types';
|
|
8
8
|
import { type ExcludeRange } from './strip-types';
|
|
9
9
|
/**
|
|
10
10
|
* Deferred info for BF043 (props destructuring warning).
|
|
@@ -167,6 +167,13 @@ export interface AnalyzerContext {
|
|
|
167
167
|
}
|
|
168
168
|
export declare function createAnalyzerContext(sourceFile: ts.SourceFile, filePath: string): AnalyzerContext;
|
|
169
169
|
export declare function getSourceLocation(node: ts.Node, sourceFile: ts.SourceFile, filePath: string): SourceLocation;
|
|
170
|
+
/**
|
|
171
|
+
* Extract structured {@link PropertyInfo} entries from the members of an object
|
|
172
|
+
* type literal or interface declaration. Shared so the type-literal branch of
|
|
173
|
+
* {@link typeNodeToTypeInfo} and interface-definition collection produce
|
|
174
|
+
* identical field shapes.
|
|
175
|
+
*/
|
|
176
|
+
export declare function membersToProperties(members: ts.NodeArray<ts.TypeElement>, sourceFile: ts.SourceFile): PropertyInfo[];
|
|
170
177
|
export declare function typeNodeToTypeInfo(typeNode: ts.TypeNode | undefined, sourceFile: ts.SourceFile): TypeInfo | null;
|
|
171
178
|
export declare function isPascalCase(name: string): boolean;
|
|
172
179
|
export declare function isComponentFunction(node: ts.Node): node is ts.FunctionDeclaration & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyzer-context.d.ts","sourceRoot":"","sources":["../src/analyzer-context.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"analyzer-context.d.ts","sourceRoot":"","sources":["../src/analyzer-context.ts"],"names":[],"mappings":"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"}
|
package/dist/analyzer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyzer.d.ts","sourceRoot":"","sources":["../src/analyzer.ts"],"names":[],"mappings":"AACA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,YAAY,CAAA;AAI3B,OAAO,EACL,KAAK,eAAe,
|
|
1
|
+
{"version":3,"file":"analyzer.d.ts","sourceRoot":"","sources":["../src/analyzer.ts"],"names":[],"mappings":"AACA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,YAAY,CAAA;AAI3B,OAAO,EACL,KAAK,eAAe,EAQrB,MAAM,oBAAoB,CAAA;AAmB3B;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAK/D;AA8BD;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf;IAAE,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC;IAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC;IAAC,OAAO,EAAE,EAAE,CAAC,WAAW,CAAA;CAAE,GAAG,IAAI,CA8CpF;AAMD,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,mBAAmB,CAAC,EAAE,MAAM,EAC5B,OAAO,CAAC,EAAE,EAAE,CAAC,OAAO,GACnB,eAAe,CAgHjB;AAugBD;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,GAAG,EAAE,CAAC,UAAU,CAavE;AA0sCD;;;;;;;;;GASG;AACH,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,GAAG,OAAO,CA6BpE;AA2LD;;;;;;;;;GASG;AACH,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,CAuCzE;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,OAAO,CAelE;AAwjCD,eAAO,MAAM,wBAAwB,aAOnC,CAAA;AAkBF;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,MAAM,EAAE,CA0DV;AAcD,eAAO,MAAM,mBAAmB,aAG9B,CAAA;AAoRF;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,eAAe,GAAG,IAAI,CAwCvE;AAMD,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"combine-client-js.d.ts","sourceRoot":"","sources":["../src/combine-client-js.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;
|
|
1
|
+
{"version":3,"file":"combine-client-js.d.ts","sourceRoot":"","sources":["../src/combine-client-js.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GACzB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CA2ErB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expression-parser.d.ts","sourceRoot":"","sources":["../src/expression-parser.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"expression-parser.d.ts","sourceRoot":"","sources":["../src/expression-parser.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,MAAM,YAAY,CAAA;AAM3B,MAAM,MAAM,UAAU,GAClB;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;IAAC,WAAW,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAA;CAAE,GACnH;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,UAAU,CAAC;IAAC,IAAI,EAAE,UAAU,EAAE,CAAA;CAAE,GACxD;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,GAC3E;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,UAAU,CAAA;CAAE,GACnE;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,UAAU,CAAA;CAAE,GACnD;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,IAAI,EAAE,UAAU,CAAC;IAAC,UAAU,EAAE,UAAU,CAAC;IAAC,SAAS,EAAE,UAAU,CAAA;CAAE,GACxF;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,EAAE,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAAC,IAAI,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,UAAU,CAAA;CAAE,GAChF;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,KAAK,EAAE,YAAY,EAAE,CAAA;CAAE,GACnD;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,UAAU,CAAA;CAAE,GACrD;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,MAAM,EAAE,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,WAAW,GAAG,UAAU,GAAG,eAAe,CAAC;IAAC,MAAM,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,UAAU,CAAA;CAAE,GAC7K;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,QAAQ,EAAE,UAAU,EAAE,CAAA;CAAE,GAOjD;IACE,IAAI,EAAE,cAAc,CAAA;IACpB,MAAM,EACF,MAAM,GACN,UAAU,GACV,SAAS,GACT,aAAa,GACb,IAAI,GACJ,QAAQ,GACR,OAAO,GACP,SAAS,GACT,YAAY,GACZ,aAAa,GACb,aAAa,GACb,MAAM,CAAA;IACV,MAAM,EAAE,UAAU,CAAA;IAClB,IAAI,EAAE,UAAU,EAAE,CAAA;CACnB,GAWD;IACE,IAAI,EAAE,cAAc,CAAA;IACpB,MAAM,EAAE,MAAM,GAAG,UAAU,CAAA;IAC3B,MAAM,EAAE,UAAU,CAAA;IAClB,IAAI,EAAE,EAAE,CAAA;IACR,UAAU,EAAE,cAAc,CAAA;CAC3B,GACD;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAA;AAExD;;;;;GAKG;AACH,MAAM,MAAM,OAAO,GAAG;IAIpB,GAAG,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IAUxD,IAAI,EAAE,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAA;IACnC,SAAS,EAAE,KAAK,GAAG,MAAM,CAAA;CAC1B,CAAA;AAED;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,GAAG;IAI3B,IAAI,EAAE,OAAO,EAAE,CAAA;IAMf,GAAG,EAAE,MAAM,CAAA;IAOX,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IAKd,MAAM,EAAE,MAAM,GAAG,UAAU,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,YAAY,GACpB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,IAAI,EAAE,UAAU,CAAA;CAAE,CAAA;AAM5C,MAAM,MAAM,eAAe,GACvB;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,UAAU,CAAA;CAAE,GACpD;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,UAAU,CAAA;CAAE,GACrC;IACE,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,UAAU,CAAC;IACtB,UAAU,EAAE,eAAe,EAAE,CAAC;IAC9B,SAAS,CAAC,EAAE,eAAe,EAAE,CAAC;CAC/B,CAAA;AAML,MAAM,MAAM,YAAY,GACpB,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,gBAAgB,CAAA;AAEpB,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,OAAO,CAAA;IAClB,KAAK,CAAC,EAAE,YAAY,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AA4ED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CA0BxD;AAyaD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,EAAE,CAAC,IAAI,EACb,MAAM,EAAE,MAAM,GAAG,UAAU,GAC1B,cAAc,GAAG,IAAI,CAiDvB;AA01BD;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,aAAa,CAE3D;AAwMD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAyB7D;AAUD;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,EAAE,CAAC,KAAK,EACf,UAAU,EAAE,EAAE,CAAC,UAAU,EACzB,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,MAAM,GAC/B,eAAe,EAAE,GAAG,IAAI,CAa1B;AAqGD;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CA2CrD;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAmD5D;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI,CAOhE"}
|
package/dist/index.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ export { compileJSX, buildMetadata } from './compiler';
|
|
|
7
7
|
export type { CompileResult, CompileOptions, CompileOptionsWithAdapter, FileOutput } from './compiler';
|
|
8
8
|
export { extractSsrDefaults } from './ssr-defaults';
|
|
9
9
|
export type { SsrDefault } from './ssr-defaults';
|
|
10
|
-
export type { ComponentIR, IRNode, IRElement, IRText, IRExpression, IRConditional, IRLoop, IRLoopChildComponent, IRComponent, IRFragment, IRSlot, IRIfStatement, IRProvider, IRAsync, IRMetadata, AttrValue, LiteralAttr, ExpressionAttr, BooleanAttr, BooleanShorthandAttr, TemplateAttr, SpreadAttr, JsxChildrenAttr, IRTemplatePart, IRProp, ParamInfo, TypeInfo, SourceLocation, CompilerError, } from './types';
|
|
10
|
+
export type { ComponentIR, IRNode, IRElement, IRText, IRExpression, IRConditional, IRLoop, IRLoopChildComponent, IRComponent, IRFragment, IRSlot, IRIfStatement, IRProvider, IRAsync, IRMetadata, AttrValue, LiteralAttr, ExpressionAttr, BooleanAttr, BooleanShorthandAttr, TemplateAttr, SpreadAttr, JsxChildrenAttr, IRTemplatePart, IRProp, ParamInfo, PropertyInfo, TypeInfo, TypeDefinition, SourceLocation, CompilerError, } from './types';
|
|
11
11
|
export { analyzeComponent, listComponentFunctions, listComponentFunctions as listExportedComponents, createProgramForFile, needsTypeBasedDetection, REACTIVE_PRIMITIVES, BROWSER_ONLY_CLIENT_APIS, type AnalyzerContext } from './analyzer';
|
|
12
12
|
export { createProgramForCorpus, type SharedProgramOptions } from './shared-program';
|
|
13
13
|
export { jsxToIR } from './jsx-to-ir';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -273,6 +273,21 @@ function buildChainedArrayExpr(elem) {
|
|
|
273
273
|
chainOrder: elem.chainOrder
|
|
274
274
|
});
|
|
275
275
|
}
|
|
276
|
+
function loopOffsetTerms(offset) {
|
|
277
|
+
if (!offset)
|
|
278
|
+
return [];
|
|
279
|
+
const terms = [];
|
|
280
|
+
if (offset.staticCount)
|
|
281
|
+
terms.push(String(offset.staticCount));
|
|
282
|
+
terms.push(...offset.dynamicTerms);
|
|
283
|
+
return terms;
|
|
284
|
+
}
|
|
285
|
+
function buildLoopChildIndexExpr(indexParam, offset) {
|
|
286
|
+
return [indexParam, ...loopOffsetTerms(offset)].join(" + ");
|
|
287
|
+
}
|
|
288
|
+
function buildLoopChildIndexSubtraction(offset) {
|
|
289
|
+
return loopOffsetTerms(offset).map((term) => ` - ${term}`).join("");
|
|
290
|
+
}
|
|
276
291
|
var jsxToDomEventMap = {
|
|
277
292
|
doubleclick: "dblclick"
|
|
278
293
|
};
|
|
@@ -1036,16 +1051,30 @@ function maybeHoistedScopeAttr(inHoistedChildren, node) {
|
|
|
1036
1051
|
}
|
|
1037
1052
|
var UNSAFE_TEMPLATE_EXPR = "undefined";
|
|
1038
1053
|
function templateAttrExpr(attrName, valExpr, presenceOrUndefined) {
|
|
1054
|
+
if (attrName === "dangerouslySetInnerHTML")
|
|
1055
|
+
return "";
|
|
1039
1056
|
if (isBooleanAttr(attrName) || presenceOrUndefined) {
|
|
1040
1057
|
return `\${${valExpr} ? '${attrName}' : ''}`;
|
|
1041
1058
|
}
|
|
1042
1059
|
if (attrName === "style") {
|
|
1043
|
-
return `\${((v) => v != null ? 'style="' + v + '"' : '')(styleToCss(${valExpr}))}`;
|
|
1060
|
+
return `\${((v) => v != null ? 'style="' + ${escapeAttrValueExpr("v")} + '"' : '')(styleToCss(${valExpr}))}`;
|
|
1044
1061
|
}
|
|
1045
1062
|
if (attrName === "data-key" || attrName.startsWith("data-key-")) {
|
|
1046
1063
|
return `${attrName}="\${${valExpr}}"`;
|
|
1047
1064
|
}
|
|
1048
|
-
return `\${(${valExpr}) != null ? '${attrName}="' +
|
|
1065
|
+
return `\${(${valExpr}) != null ? '${attrName}="' + ${escapeAttrValueExpr(valExpr)} + '"' : ''}`;
|
|
1066
|
+
}
|
|
1067
|
+
function escapeAttrValueExpr(valExpr) {
|
|
1068
|
+
return `escapeAttr(${valExpr})`;
|
|
1069
|
+
}
|
|
1070
|
+
function escapeTextSlotExpr(innerExpr) {
|
|
1071
|
+
return `escapeText(${innerExpr})`;
|
|
1072
|
+
}
|
|
1073
|
+
function dangerouslyHtmlChildren(attrs, toExpr) {
|
|
1074
|
+
const attr = attrs.find((a) => a.name === "dangerouslySetInnerHTML");
|
|
1075
|
+
if (!attr || attr.value.kind !== "expression")
|
|
1076
|
+
return null;
|
|
1077
|
+
return `\${((${toExpr(attr.value)}) ?? {}).__html ?? ''}`;
|
|
1049
1078
|
}
|
|
1050
1079
|
function transformKeyValue(value, transformExpr) {
|
|
1051
1080
|
switch (value.kind) {
|
|
@@ -1093,6 +1122,8 @@ function isMergeableAttr(a, ctx) {
|
|
|
1093
1122
|
return false;
|
|
1094
1123
|
if (a.name === "key")
|
|
1095
1124
|
return false;
|
|
1125
|
+
if (a.name === "dangerouslySetInnerHTML")
|
|
1126
|
+
return false;
|
|
1096
1127
|
const v = a.value;
|
|
1097
1128
|
if (v.kind === "jsx-children")
|
|
1098
1129
|
return false;
|
|
@@ -1191,7 +1222,7 @@ function irToHtmlTemplate(node, restSpreadNames, loopDepth = 0, loopParams, bran
|
|
|
1191
1222
|
}
|
|
1192
1223
|
const attrs = attrParts.join(" ");
|
|
1193
1224
|
const childrenRecurse = (n) => irToHtmlTemplate(n, restSpreadNames, loopDepth, loopParams, branchSlotsVar, insideLoop, false);
|
|
1194
|
-
const children = node.children.map(childrenRecurse).join("");
|
|
1225
|
+
const children = dangerouslyHtmlChildren(node.attrs, (v) => wrapExpr(v.expr)) ?? node.children.map(childrenRecurse).join("");
|
|
1195
1226
|
if (children || !VOID_ELEMENTS.has(node.tag)) {
|
|
1196
1227
|
return `<${node.tag}${attrs ? " " + attrs : ""}>${children}</${node.tag}>`;
|
|
1197
1228
|
}
|
|
@@ -1203,7 +1234,9 @@ function irToHtmlTemplate(node, restSpreadNames, loopDepth = 0, loopParams, bran
|
|
|
1203
1234
|
if (node.expr === "null" || node.expr === "undefined")
|
|
1204
1235
|
return "";
|
|
1205
1236
|
if (node.slotId) {
|
|
1206
|
-
|
|
1237
|
+
const inner = wrapInterpolation(wrapExpr(node.expr));
|
|
1238
|
+
const slotted = branchSlotsVar ? inner : escapeTextSlotExpr(inner);
|
|
1239
|
+
return `<!--bf:${node.slotId}-->\${${slotted}}<!--/-->`;
|
|
1207
1240
|
}
|
|
1208
1241
|
return `\${${wrapInterpolation(wrapExpr(node.expr))}}`;
|
|
1209
1242
|
case "conditional": {
|
|
@@ -1301,7 +1334,7 @@ function irToPlaceholderTemplate(node, restSpreadNames, loopDepth = 0, loopParam
|
|
|
1301
1334
|
attrParts.push(`bf="${node.slotId}"`);
|
|
1302
1335
|
}
|
|
1303
1336
|
const attrs = attrParts.join(" ");
|
|
1304
|
-
const children = node.children.map(recurse).join("");
|
|
1337
|
+
const children = dangerouslyHtmlChildren(node.attrs, (v) => wrapExpr(v.expr)) ?? node.children.map(recurse).join("");
|
|
1305
1338
|
if (children || !VOID_ELEMENTS.has(node.tag)) {
|
|
1306
1339
|
return `<${node.tag}${attrs ? " " + attrs : ""}>${children}</${node.tag}>`;
|
|
1307
1340
|
}
|
|
@@ -1313,7 +1346,7 @@ function irToPlaceholderTemplate(node, restSpreadNames, loopDepth = 0, loopParam
|
|
|
1313
1346
|
if (node.expr === "null" || node.expr === "undefined")
|
|
1314
1347
|
return "";
|
|
1315
1348
|
if (node.slotId) {
|
|
1316
|
-
return `<!--bf:${node.slotId}-->\${${wrapExpr(node.expr)}}<!--/-->`;
|
|
1349
|
+
return `<!--bf:${node.slotId}-->\${${escapeTextSlotExpr(wrapExpr(node.expr))}}<!--/-->`;
|
|
1317
1350
|
}
|
|
1318
1351
|
return `\${${wrapExpr(node.expr)}}`;
|
|
1319
1352
|
case "conditional": {
|
|
@@ -1529,7 +1562,7 @@ function irToComponentTemplateWithOpts(node, opts) {
|
|
|
1529
1562
|
attrParts.push(`bf="${node.slotId}"`);
|
|
1530
1563
|
}
|
|
1531
1564
|
const attrs = attrParts.join(" ");
|
|
1532
|
-
const children = node.children.map(childrenRecurse).join("");
|
|
1565
|
+
const children = dangerouslyHtmlChildren(node.attrs, (v) => transformExpr(v.expr, v.templateExpr)) ?? node.children.map(childrenRecurse).join("");
|
|
1533
1566
|
if (children || !VOID_ELEMENTS.has(node.tag)) {
|
|
1534
1567
|
return `<${node.tag}${attrs ? " " + attrs : ""}>${children}</${node.tag}>`;
|
|
1535
1568
|
}
|
|
@@ -1541,7 +1574,7 @@ function irToComponentTemplateWithOpts(node, opts) {
|
|
|
1541
1574
|
if (node.expr === "null" || node.expr === "undefined")
|
|
1542
1575
|
return "";
|
|
1543
1576
|
if (node.slotId) {
|
|
1544
|
-
return `<!--bf:${node.slotId}-->\${${transformExpr(node.expr, node.templateExpr)}}<!--/-->`;
|
|
1577
|
+
return `<!--bf:${node.slotId}-->\${${escapeTextSlotExpr(transformExpr(node.expr, node.templateExpr))}}<!--/-->`;
|
|
1545
1578
|
}
|
|
1546
1579
|
return `\${${transformExpr(node.expr, node.templateExpr)}}`;
|
|
1547
1580
|
case "conditional": {
|
|
@@ -1755,7 +1788,7 @@ function generateCsrTemplateWithOpts(node, opts) {
|
|
|
1755
1788
|
attrParts.push(`bf="${node.slotId}"`);
|
|
1756
1789
|
}
|
|
1757
1790
|
const attrs = attrParts.join(" ");
|
|
1758
|
-
const children = node.children.map(childrenRecurse).join("");
|
|
1791
|
+
const children = dangerouslyHtmlChildren(node.attrs, (v) => transformExpr(v.expr, v.templateExpr)) ?? node.children.map(childrenRecurse).join("");
|
|
1759
1792
|
if (children || !VOID_ELEMENTS.has(node.tag)) {
|
|
1760
1793
|
return `<${node.tag}${attrs ? " " + attrs : ""}>${children}</${node.tag}>`;
|
|
1761
1794
|
}
|
|
@@ -1773,7 +1806,7 @@ function generateCsrTemplateWithOpts(node, opts) {
|
|
|
1773
1806
|
const transformed = transformExpr(node.expr, node.templateExpr);
|
|
1774
1807
|
const expr = transformed === UNSAFE_TEMPLATE_EXPR ? "''" : transformed;
|
|
1775
1808
|
if (node.slotId) {
|
|
1776
|
-
return `<!--bf:${node.slotId}-->\${${expr}}<!--/-->`;
|
|
1809
|
+
return `<!--bf:${node.slotId}-->\${${escapeTextSlotExpr(expr)}}<!--/-->`;
|
|
1777
1810
|
}
|
|
1778
1811
|
return `\${${expr}}`;
|
|
1779
1812
|
}
|
|
@@ -2215,6 +2248,24 @@ function getSourceLocation(node, sourceFile, filePath) {
|
|
|
2215
2248
|
}
|
|
2216
2249
|
};
|
|
2217
2250
|
}
|
|
2251
|
+
function membersToProperties(members, sourceFile) {
|
|
2252
|
+
return members.filter(ts6.isPropertySignature).map((member) => ({
|
|
2253
|
+
name: propertyNameText(member.name, sourceFile),
|
|
2254
|
+
type: typeNodeToTypeInfo(member.type, sourceFile) ?? {
|
|
2255
|
+
kind: "unknown",
|
|
2256
|
+
raw: "unknown"
|
|
2257
|
+
},
|
|
2258
|
+
optional: !!member.questionToken,
|
|
2259
|
+
readonly: !!member.modifiers?.some((m) => m.kind === ts6.SyntaxKind.ReadonlyKeyword)
|
|
2260
|
+
}));
|
|
2261
|
+
}
|
|
2262
|
+
function propertyNameText(name, sourceFile) {
|
|
2263
|
+
if (!name)
|
|
2264
|
+
return "";
|
|
2265
|
+
if (ts6.isStringLiteral(name) || ts6.isNumericLiteral(name))
|
|
2266
|
+
return name.text;
|
|
2267
|
+
return name.getText(sourceFile);
|
|
2268
|
+
}
|
|
2218
2269
|
function typeNodeToTypeInfo(typeNode, sourceFile) {
|
|
2219
2270
|
if (!typeNode)
|
|
2220
2271
|
return null;
|
|
@@ -2252,18 +2303,21 @@ function typeNodeToTypeInfo(typeNode, sourceFile) {
|
|
|
2252
2303
|
return {
|
|
2253
2304
|
kind: "object",
|
|
2254
2305
|
raw,
|
|
2255
|
-
properties: typeNode.members
|
|
2256
|
-
name: member.name?.getText(sourceFile) ?? "",
|
|
2257
|
-
type: typeNodeToTypeInfo(member.type, sourceFile) ?? {
|
|
2258
|
-
kind: "unknown",
|
|
2259
|
-
raw: "unknown"
|
|
2260
|
-
},
|
|
2261
|
-
optional: !!member.questionToken,
|
|
2262
|
-
readonly: !!member.modifiers?.some((m) => m.kind === ts6.SyntaxKind.ReadonlyKeyword)
|
|
2263
|
-
}))
|
|
2306
|
+
properties: membersToProperties(typeNode.members, sourceFile)
|
|
2264
2307
|
};
|
|
2265
2308
|
}
|
|
2266
2309
|
if (ts6.isTypeReferenceNode(typeNode)) {
|
|
2310
|
+
const refName = ts6.isIdentifier(typeNode.typeName) ? typeNode.typeName.text : "";
|
|
2311
|
+
if ((refName === "Array" || refName === "ReadonlyArray") && typeNode.typeArguments?.length === 1) {
|
|
2312
|
+
return {
|
|
2313
|
+
kind: "array",
|
|
2314
|
+
raw,
|
|
2315
|
+
elementType: typeNodeToTypeInfo(typeNode.typeArguments[0], sourceFile) ?? {
|
|
2316
|
+
kind: "unknown",
|
|
2317
|
+
raw: "unknown"
|
|
2318
|
+
}
|
|
2319
|
+
};
|
|
2320
|
+
}
|
|
2267
2321
|
return {
|
|
2268
2322
|
kind: "interface",
|
|
2269
2323
|
raw
|
|
@@ -3782,14 +3836,17 @@ function collectInterfaceDefinition(node, ctx) {
|
|
|
3782
3836
|
kind: "interface",
|
|
3783
3837
|
name: node.name.text,
|
|
3784
3838
|
definition: node.getText(ctx.sourceFile),
|
|
3839
|
+
properties: membersToProperties(node.members, ctx.sourceFile),
|
|
3785
3840
|
loc: getSourceLocation(node, ctx.sourceFile, ctx.filePath)
|
|
3786
3841
|
});
|
|
3787
3842
|
}
|
|
3788
3843
|
function collectTypeAliasDefinition(node, ctx) {
|
|
3844
|
+
const properties = ts7.isTypeLiteralNode(node.type) ? membersToProperties(node.type.members, ctx.sourceFile) : undefined;
|
|
3789
3845
|
ctx.typeDefinitions.push({
|
|
3790
3846
|
kind: "type",
|
|
3791
3847
|
name: node.name.text,
|
|
3792
3848
|
definition: node.getText(ctx.sourceFile),
|
|
3849
|
+
properties,
|
|
3793
3850
|
loc: getSourceLocation(node, ctx.sourceFile, ctx.filePath)
|
|
3794
3851
|
});
|
|
3795
3852
|
}
|
|
@@ -5203,7 +5260,24 @@ var UNSUPPORTED_METHODS = new Set([
|
|
|
5203
5260
|
"some",
|
|
5204
5261
|
"forEach",
|
|
5205
5262
|
"flatMap",
|
|
5206
|
-
"flat"
|
|
5263
|
+
"flat",
|
|
5264
|
+
"split",
|
|
5265
|
+
"startsWith",
|
|
5266
|
+
"endsWith",
|
|
5267
|
+
"replace",
|
|
5268
|
+
"replaceAll",
|
|
5269
|
+
"repeat",
|
|
5270
|
+
"padStart",
|
|
5271
|
+
"padEnd",
|
|
5272
|
+
"charAt",
|
|
5273
|
+
"charCodeAt",
|
|
5274
|
+
"codePointAt",
|
|
5275
|
+
"normalize",
|
|
5276
|
+
"substring",
|
|
5277
|
+
"substr",
|
|
5278
|
+
"match",
|
|
5279
|
+
"matchAll",
|
|
5280
|
+
"search"
|
|
5207
5281
|
]);
|
|
5208
5282
|
function parseExpression(expr) {
|
|
5209
5283
|
const trimmed = expr.trim();
|
|
@@ -6065,7 +6139,7 @@ function checkSupport(expr) {
|
|
|
6065
6139
|
return {
|
|
6066
6140
|
supported: false,
|
|
6067
6141
|
level: "L5_UNSUPPORTED",
|
|
6068
|
-
reason: `
|
|
6142
|
+
reason: `Method '${methodName}()' has no template lowering and requires client-side evaluation. Wrap the expression in /* @client */ to defer it to hydration, or pre-compute the value before rendering.`
|
|
6069
6143
|
};
|
|
6070
6144
|
}
|
|
6071
6145
|
}
|
|
@@ -9669,27 +9743,109 @@ function collectLoopChildReactiveAttrs(node, ctx, loopParam, loopParamBindings)
|
|
|
9669
9743
|
}
|
|
9670
9744
|
|
|
9671
9745
|
// src/ir-to-client-js/collect-elements.ts
|
|
9672
|
-
|
|
9673
|
-
|
|
9746
|
+
var EMPTY_RENDER_EXPRS = new Set(["null", "undefined", "false", "''", '""', "``"]);
|
|
9747
|
+
function domElementCount(node) {
|
|
9748
|
+
switch (node.type) {
|
|
9749
|
+
case "element":
|
|
9750
|
+
case "component":
|
|
9751
|
+
case "provider":
|
|
9752
|
+
case "async":
|
|
9753
|
+
return 1;
|
|
9754
|
+
case "text":
|
|
9755
|
+
return 0;
|
|
9756
|
+
case "expression":
|
|
9757
|
+
return EMPTY_RENDER_EXPRS.has(node.expr.trim()) ? 0 : null;
|
|
9758
|
+
case "loop":
|
|
9759
|
+
if (node.bodyIsItemConditional || node.method === "flatMap")
|
|
9760
|
+
return null;
|
|
9761
|
+
return `(${buildLoopChainExpr({
|
|
9762
|
+
base: node.array,
|
|
9763
|
+
sortComparator: node.sortComparator,
|
|
9764
|
+
filterPredicate: node.filterPredicate,
|
|
9765
|
+
chainOrder: node.chainOrder
|
|
9766
|
+
})}).length`;
|
|
9767
|
+
case "conditional": {
|
|
9768
|
+
const t = domElementCount(node.whenTrue);
|
|
9769
|
+
const f = domElementCount(node.whenFalse);
|
|
9770
|
+
if (t === null || f === null)
|
|
9771
|
+
return null;
|
|
9772
|
+
if (typeof t === "number" && typeof f === "number" && t === f)
|
|
9773
|
+
return t;
|
|
9774
|
+
return `(${node.condition} ? ${t} : ${f})`;
|
|
9775
|
+
}
|
|
9776
|
+
case "fragment":
|
|
9777
|
+
return sumElementCounts(node.children);
|
|
9778
|
+
default:
|
|
9779
|
+
return null;
|
|
9780
|
+
}
|
|
9781
|
+
}
|
|
9782
|
+
function sumElementCounts(nodes) {
|
|
9783
|
+
let staticCount = 0;
|
|
9784
|
+
const dynamic = [];
|
|
9785
|
+
for (const n of nodes) {
|
|
9786
|
+
const c = domElementCount(n);
|
|
9787
|
+
if (c === null)
|
|
9788
|
+
return null;
|
|
9789
|
+
if (typeof c === "number")
|
|
9790
|
+
staticCount += c;
|
|
9791
|
+
else
|
|
9792
|
+
dynamic.push(c);
|
|
9793
|
+
}
|
|
9794
|
+
if (dynamic.length === 0)
|
|
9795
|
+
return staticCount;
|
|
9796
|
+
const parts = staticCount > 0 ? [String(staticCount), ...dynamic] : dynamic;
|
|
9797
|
+
return parts.length === 1 ? parts[0] : `(${parts.join(" + ")})`;
|
|
9798
|
+
}
|
|
9799
|
+
function legacyElementCount(node) {
|
|
9800
|
+
return node.type === "element" || node.type === "component" || node.type === "provider" || node.type === "async" || node.type === "text" || node.type === "expression" && !node.reactive || node.type === "conditional" ? 1 : 0;
|
|
9674
9801
|
}
|
|
9675
9802
|
function computeLoopSiblingOffsets(root) {
|
|
9676
9803
|
const offsets = new Map;
|
|
9677
|
-
|
|
9678
|
-
|
|
9679
|
-
|
|
9680
|
-
|
|
9681
|
-
|
|
9682
|
-
if (nonLoopCount > 0)
|
|
9683
|
-
offsets.set(child, nonLoopCount);
|
|
9684
|
-
} else if (producesDomChild(child)) {
|
|
9685
|
-
nonLoopCount++;
|
|
9804
|
+
const recordRun = (children, preceding) => {
|
|
9805
|
+
for (const child of children) {
|
|
9806
|
+
if (child.type === "loop") {
|
|
9807
|
+
if (preceding.length > 0 && !offsets.has(child)) {
|
|
9808
|
+
offsets.set(child, [...preceding]);
|
|
9686
9809
|
}
|
|
9810
|
+
preceding.push(child);
|
|
9811
|
+
} else if (child.type === "fragment" || child.type === "provider" || child.type === "async") {
|
|
9812
|
+
recordRun(child.children, preceding);
|
|
9813
|
+
} else {
|
|
9814
|
+
preceding.push(child);
|
|
9687
9815
|
}
|
|
9688
|
-
descend();
|
|
9689
9816
|
}
|
|
9817
|
+
};
|
|
9818
|
+
const containerVisit = ({ node, descend }) => {
|
|
9819
|
+
recordRun(node.children, []);
|
|
9820
|
+
descend();
|
|
9821
|
+
};
|
|
9822
|
+
walkIR(root, null, {
|
|
9823
|
+
element: containerVisit,
|
|
9824
|
+
component: containerVisit,
|
|
9825
|
+
fragment: containerVisit,
|
|
9826
|
+
provider: containerVisit,
|
|
9827
|
+
async: containerVisit
|
|
9690
9828
|
});
|
|
9691
9829
|
return offsets;
|
|
9692
9830
|
}
|
|
9831
|
+
function resolveLoopOffset(preceding) {
|
|
9832
|
+
if (!preceding || preceding.length === 0)
|
|
9833
|
+
return;
|
|
9834
|
+
let staticCount = 0;
|
|
9835
|
+
const dynamicTerms = [];
|
|
9836
|
+
for (const node of preceding) {
|
|
9837
|
+
const c = domElementCount(node);
|
|
9838
|
+
if (c === null)
|
|
9839
|
+
staticCount += legacyElementCount(node);
|
|
9840
|
+
else if (typeof c === "number")
|
|
9841
|
+
staticCount += c;
|
|
9842
|
+
else
|
|
9843
|
+
dynamicTerms.push(c);
|
|
9844
|
+
}
|
|
9845
|
+
if (staticCount === 0 && dynamicTerms.length === 0)
|
|
9846
|
+
return;
|
|
9847
|
+
return { staticCount, dynamicTerms };
|
|
9848
|
+
}
|
|
9693
9849
|
var branchInnerLoopOptions = {
|
|
9694
9850
|
collectItemBindings: true,
|
|
9695
9851
|
templateDepth: 1,
|
|
@@ -9775,7 +9931,7 @@ function collectInnerLoops(nodes, siblingOffsets, outerLoopParam, ctx, options)
|
|
|
9775
9931
|
refsOuterParam: refsOuter,
|
|
9776
9932
|
childComponents,
|
|
9777
9933
|
insideConditional: !flat && scope.insideCond ? true : undefined,
|
|
9778
|
-
|
|
9934
|
+
offset: flat ? undefined : resolveLoopOffset(siblingOffsets.get(n)),
|
|
9779
9935
|
bindings
|
|
9780
9936
|
});
|
|
9781
9937
|
if (!flat) {
|
|
@@ -9993,7 +10149,7 @@ function collectElements(node, ctx, siblingOffsets, insideConditional = false) {
|
|
|
9993
10149
|
isStaticArray: l.isStaticArray,
|
|
9994
10150
|
useElementReconciliation,
|
|
9995
10151
|
innerLoops: useElementReconciliation || l.isStaticArray && innerLoops?.length ? innerLoops : undefined,
|
|
9996
|
-
|
|
10152
|
+
offset: resolveLoopOffset(siblingOffsets.get(l)),
|
|
9997
10153
|
filterPredicate: l.filterPredicate ? {
|
|
9998
10154
|
param: l.filterPredicate.param,
|
|
9999
10155
|
raw: l.filterPredicate.raw
|
|
@@ -10763,6 +10919,8 @@ var RUNTIME_IMPORT_CANDIDATES = [
|
|
|
10763
10919
|
"splitProps",
|
|
10764
10920
|
"spreadAttrs",
|
|
10765
10921
|
"styleToCss",
|
|
10922
|
+
"escapeAttr",
|
|
10923
|
+
"escapeText",
|
|
10766
10924
|
"qsa",
|
|
10767
10925
|
"qsaItem",
|
|
10768
10926
|
"qsaChildScope",
|
|
@@ -12629,7 +12787,7 @@ function buildOuterNestedPlan(elem, comp) {
|
|
|
12629
12787
|
arrayExpr: elem.array,
|
|
12630
12788
|
param: elem.param,
|
|
12631
12789
|
indexParam,
|
|
12632
|
-
offsetExpr:
|
|
12790
|
+
offsetExpr: buildLoopChildIndexExpr(indexParam, elem.offset),
|
|
12633
12791
|
outerPreludeStatements: elem.mapPreamble ? [elem.mapPreamble] : [],
|
|
12634
12792
|
propsExpr: buildStaticPropsExpr(comp.props)
|
|
12635
12793
|
};
|
|
@@ -12647,12 +12805,12 @@ function buildInnerLoopNestedPlan(elem, innerLoop, innerComps) {
|
|
|
12647
12805
|
outerArrayExpr: elem.array,
|
|
12648
12806
|
outerParam: elem.param,
|
|
12649
12807
|
outerIndexParam,
|
|
12650
|
-
outerOffsetExpr:
|
|
12808
|
+
outerOffsetExpr: buildLoopChildIndexExpr(outerIndexParam, elem.offset),
|
|
12651
12809
|
outerPreludeStatements: elem.mapPreamble ? [elem.mapPreamble] : [],
|
|
12652
12810
|
innerContainerSlotId: innerLoop.containerSlotId ?? null,
|
|
12653
12811
|
innerArrayExpr: innerLoop.array,
|
|
12654
12812
|
innerParam: innerLoop.param,
|
|
12655
|
-
innerOffsetExpr:
|
|
12813
|
+
innerOffsetExpr: buildLoopChildIndexExpr("__innerIdx", innerLoop.offset),
|
|
12656
12814
|
innerPreludeStatements: innerLoop.mapPreamble ? [innerLoop.mapPreamble] : [],
|
|
12657
12815
|
depth: innerLoop.depth,
|
|
12658
12816
|
comps
|
|
@@ -13414,7 +13572,7 @@ function buildStaticArrayDelegationPlan(elem) {
|
|
|
13414
13572
|
arrayExpr: buildChainedArrayExpr(elem),
|
|
13415
13573
|
param: elem.param,
|
|
13416
13574
|
mapPreamble: elem.mapPreamble ?? null,
|
|
13417
|
-
|
|
13575
|
+
offset: elem.offset ?? null
|
|
13418
13576
|
}
|
|
13419
13577
|
};
|
|
13420
13578
|
}
|
|
@@ -13532,6 +13690,11 @@ function buildArmBody(branch, options) {
|
|
|
13532
13690
|
// src/ir-to-client-js/emit-reactive.ts
|
|
13533
13691
|
function emitAttrUpdate(target, attrName, expression, meta) {
|
|
13534
13692
|
const htmlName = toHtmlAttrName(attrName);
|
|
13693
|
+
if (attrName === "dangerouslySetInnerHTML" || htmlName === "dangerouslySetInnerHTML") {
|
|
13694
|
+
return [
|
|
13695
|
+
`{ const __v = ${expression}; ${target}.innerHTML = __v != null && __v.__html != null ? String(__v.__html) : '' }`
|
|
13696
|
+
];
|
|
13697
|
+
}
|
|
13535
13698
|
if (htmlName === "style") {
|
|
13536
13699
|
return [
|
|
13537
13700
|
`{ const __v = styleToCss(${expression}); if (__v != null) ${target}.setAttribute('style', __v); else ${target}.removeAttribute('style') }`
|
|
@@ -14543,11 +14706,11 @@ function emitDynamicIndexLookup(ls, ev, handlerCall, lookup) {
|
|
|
14543
14706
|
ls.push(` }`);
|
|
14544
14707
|
}
|
|
14545
14708
|
function emitStaticIndexLookup(ls, ev, handlerCall, lookup, containerVar) {
|
|
14546
|
-
const { arrayExpr, param, mapPreamble,
|
|
14709
|
+
const { arrayExpr, param, mapPreamble, offset } = lookup;
|
|
14547
14710
|
ls.push(` let __el = ${varSlotId(ev.childSlotId)}El`);
|
|
14548
14711
|
ls.push(` while (__el.parentElement && __el.parentElement !== ${containerVar}) __el = __el.parentElement`);
|
|
14549
14712
|
ls.push(` if (__el.parentElement === ${containerVar}) {`);
|
|
14550
|
-
const idxOffset =
|
|
14713
|
+
const idxOffset = buildLoopChildIndexSubtraction(offset ?? undefined);
|
|
14551
14714
|
ls.push(` const __idx = Array.from(${containerVar}.children).indexOf(__el)${idxOffset}`);
|
|
14552
14715
|
ls.push(` const ${param} = ${arrayExpr}[__idx]`);
|
|
14553
14716
|
if (mapPreamble)
|
|
@@ -14824,7 +14987,7 @@ function buildStaticLoopPlan(elem, unsafeLocalNames) {
|
|
|
14824
14987
|
}
|
|
14825
14988
|
}
|
|
14826
14989
|
const indexParam = elem.index || "__idx";
|
|
14827
|
-
const childIndexExpr =
|
|
14990
|
+
const childIndexExpr = buildLoopChildIndexExpr(indexParam, elem.offset);
|
|
14828
14991
|
return {
|
|
14829
14992
|
kind: "static",
|
|
14830
14993
|
containerVar: `_${varSlotId(elem.slotId)}`,
|
|
@@ -17112,6 +17275,7 @@ function emitAttrValue(value, emitter, name) {
|
|
|
17112
17275
|
}
|
|
17113
17276
|
}
|
|
17114
17277
|
// src/combine-client-js.ts
|
|
17278
|
+
import ts18 from "typescript";
|
|
17115
17279
|
var CHILD_PLACEHOLDER_RE = /import '\/\* @bf-child:(\w+) \*\/'/g;
|
|
17116
17280
|
function combineParentChildClientJs(files) {
|
|
17117
17281
|
const result = new Map;
|
|
@@ -17168,33 +17332,43 @@ function combineParentChildClientJs(files) {
|
|
|
17168
17332
|
return result;
|
|
17169
17333
|
}
|
|
17170
17334
|
function parseAndMerge(content, importsBySource, otherImports, codeSections) {
|
|
17171
|
-
const
|
|
17172
|
-
|
|
17173
|
-
|
|
17174
|
-
if (
|
|
17175
|
-
|
|
17176
|
-
|
|
17177
|
-
|
|
17178
|
-
|
|
17179
|
-
|
|
17180
|
-
|
|
17181
|
-
|
|
17182
|
-
|
|
17183
|
-
|
|
17184
|
-
|
|
17185
|
-
|
|
17186
|
-
|
|
17187
|
-
|
|
17188
|
-
|
|
17189
|
-
|
|
17190
|
-
|
|
17335
|
+
const sourceFile = ts18.createSourceFile("combine.js", content, ts18.ScriptTarget.Latest, false, ts18.ScriptKind.JS);
|
|
17336
|
+
const importSpans = [];
|
|
17337
|
+
for (const stmt of sourceFile.statements) {
|
|
17338
|
+
if (!ts18.isImportDeclaration(stmt))
|
|
17339
|
+
continue;
|
|
17340
|
+
const start = stmt.getStart(sourceFile);
|
|
17341
|
+
const end = stmt.getEnd();
|
|
17342
|
+
importSpans.push([start, end]);
|
|
17343
|
+
const stmtText = content.slice(start, end);
|
|
17344
|
+
if (stmtText.includes("@bf-child:"))
|
|
17345
|
+
continue;
|
|
17346
|
+
const clause = stmt.importClause;
|
|
17347
|
+
const bindings = clause?.namedBindings;
|
|
17348
|
+
const specifier = ts18.isStringLiteral(stmt.moduleSpecifier) ? stmt.moduleSpecifier.text : "";
|
|
17349
|
+
if (clause && !clause.name && bindings && ts18.isNamedImports(bindings)) {
|
|
17350
|
+
if (!importsBySource.has(specifier)) {
|
|
17351
|
+
importsBySource.set(specifier, new Set);
|
|
17352
|
+
}
|
|
17353
|
+
const set = importsBySource.get(specifier);
|
|
17354
|
+
for (const el of bindings.elements) {
|
|
17355
|
+
const name = el.propertyName ? `${el.propertyName.text} as ${el.name.text}` : el.name.text;
|
|
17356
|
+
set.add(name);
|
|
17191
17357
|
}
|
|
17192
17358
|
} else {
|
|
17193
|
-
|
|
17359
|
+
if (!otherImports.includes(stmtText)) {
|
|
17360
|
+
otherImports.push(stmtText);
|
|
17361
|
+
}
|
|
17194
17362
|
}
|
|
17195
17363
|
}
|
|
17196
|
-
|
|
17197
|
-
|
|
17364
|
+
let code = "";
|
|
17365
|
+
let cursor = 0;
|
|
17366
|
+
for (const [start, end] of importSpans) {
|
|
17367
|
+
code += content.slice(cursor, start);
|
|
17368
|
+
cursor = end;
|
|
17369
|
+
}
|
|
17370
|
+
code += content.slice(cursor);
|
|
17371
|
+
code = code.trim();
|
|
17198
17372
|
if (code) {
|
|
17199
17373
|
codeSections.push(code);
|
|
17200
17374
|
}
|