[IMP] implement .alike suffix on props

It is common in Owl components to have anonymous function as props.
However, since each rendering create a different (but equivalent)
closure, Owl will consider the props different, so will update the child
component, but this is (often) not necessary.

This commit will help reduce the problem by introducing a new `.alike`
prop suffix, that will let Owl know that each version of that specific
prop should be considered the same, so, will be ignored by the props
comparison code.

closes #1360
This commit is contained in:
Géry Debongnie
2023-02-27 07:57:33 +01:00
committed by Sam Degueldre
parent aadc9eafa3
commit a51b286671
30 changed files with 879 additions and 586 deletions
@@ -4,7 +4,7 @@ exports[`default props a default prop cannot be defined on a mandatory prop 1`]
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`Child\`, true, false, false, true);
const comp1 = app.createComponent(\`Child\`, true, false, false, []);
return function template(ctx, node, key = \\"\\") {
const props1 = {};
@@ -18,7 +18,7 @@ exports[`default props can set default boolean values 1`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, true);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, []);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -55,7 +55,7 @@ exports[`default props can set default values 1`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, true);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, []);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -86,7 +86,7 @@ exports[`default props default values are also set whenever component is updated
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -117,7 +117,7 @@ exports[`props validation can specify that additional props are allowed (array)
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`Child\`, true, false, false, false);
const comp1 = app.createComponent(\`Child\`, true, false, false, [\\"message\\",\\"otherProp\\"]);
return function template(ctx, node, key = \\"\\") {
const props1 = {message: 'm',otherProp: 'o'};
@@ -144,7 +144,7 @@ exports[`props validation can specify that additional props are allowed (object)
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`Child\`, true, false, false, false);
const comp1 = app.createComponent(\`Child\`, true, false, false, [\\"message\\",\\"otherProp\\"]);
return function template(ctx, node, key = \\"\\") {
const props1 = {message: 'm',otherProp: 'o'};
@@ -171,7 +171,7 @@ exports[`props validation can validate a prop with multiple types 1`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -201,7 +201,7 @@ exports[`props validation can validate a prop with multiple types 3`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -231,7 +231,7 @@ exports[`props validation can validate a prop with multiple types 5`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -248,7 +248,7 @@ exports[`props validation can validate an array with given primitive type 1`] =
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -278,7 +278,7 @@ exports[`props validation can validate an array with given primitive type 3`] =
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -308,7 +308,7 @@ exports[`props validation can validate an array with given primitive type 5`] =
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -325,7 +325,7 @@ exports[`props validation can validate an array with given primitive type 6`] =
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -342,7 +342,7 @@ exports[`props validation can validate an array with multiple sub element types
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -372,7 +372,7 @@ exports[`props validation can validate an array with multiple sub element types
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -402,7 +402,7 @@ exports[`props validation can validate an array with multiple sub element types
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -432,7 +432,7 @@ exports[`props validation can validate an array with multiple sub element types
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -449,7 +449,7 @@ exports[`props validation can validate an object with simple shape 1`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -479,7 +479,7 @@ exports[`props validation can validate an object with simple shape 3`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -496,7 +496,7 @@ exports[`props validation can validate an object with simple shape 4`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -513,7 +513,7 @@ exports[`props validation can validate an object with simple shape 5`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -530,7 +530,7 @@ exports[`props validation can validate an optional props 1`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -560,7 +560,7 @@ exports[`props validation can validate an optional props 3`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -590,7 +590,7 @@ exports[`props validation can validate an optional props 5`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -607,7 +607,7 @@ exports[`props validation can validate recursively complicated prop def 1`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -637,7 +637,7 @@ exports[`props validation can validate recursively complicated prop def 3`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -667,7 +667,7 @@ exports[`props validation can validate recursively complicated prop def 5`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -685,8 +685,8 @@ exports[`props validation can validate through slots 1`] = `
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
let { markRaw } = helpers;
const comp1 = app.createComponent(\`Child\`, true, false, false, true);
const comp2 = app.createComponent(\`Wrapper\`, true, true, false, true);
const comp1 = app.createComponent(\`Child\`, true, false, false, []);
const comp2 = app.createComponent(\`Wrapper\`, true, true, false, []);
function slot1(ctx, node, key = \\"\\") {
const props1 = {};
@@ -718,7 +718,7 @@ exports[`props validation default values are applied before validating props at
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -749,7 +749,7 @@ exports[`props validation missing required boolean prop causes an error 1`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, true);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, []);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -766,7 +766,7 @@ exports[`props validation mix of optional and mandatory 1`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`Child\`, true, false, false, true);
const comp1 = app.createComponent(\`Child\`, true, false, false, []);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -783,7 +783,7 @@ exports[`props validation props are validated in dev mode (code snapshot) 1`] =
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`Child\`, true, false, false, false);
const comp1 = app.createComponent(\`Child\`, true, false, false, [\\"message\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -814,7 +814,7 @@ exports[`props validation props are validated whenever component is updated 1`]
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -845,7 +845,7 @@ exports[`props validation props validation does not cause additional subscriptio
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`Child\`, true, false, false, false);
const comp1 = app.createComponent(\`Child\`, true, false, false, [\\"obj\\"]);
return function template(ctx, node, key = \\"\\") {
const props1 = {obj: ctx['obj']};
@@ -872,7 +872,7 @@ exports[`props validation props: list of strings 1`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, true);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, []);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -889,7 +889,7 @@ exports[`props validation validate simple types 1`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -906,7 +906,7 @@ exports[`props validation validate simple types 2`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -936,7 +936,7 @@ exports[`props validation validate simple types 4`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -953,7 +953,7 @@ exports[`props validation validate simple types 5`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -970,7 +970,7 @@ exports[`props validation validate simple types 6`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1000,7 +1000,7 @@ exports[`props validation validate simple types 8`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1017,7 +1017,7 @@ exports[`props validation validate simple types 9`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1034,7 +1034,7 @@ exports[`props validation validate simple types 10`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1064,7 +1064,7 @@ exports[`props validation validate simple types 12`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1081,7 +1081,7 @@ exports[`props validation validate simple types 13`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1098,7 +1098,7 @@ exports[`props validation validate simple types 14`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1128,7 +1128,7 @@ exports[`props validation validate simple types 16`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1145,7 +1145,7 @@ exports[`props validation validate simple types 17`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1162,7 +1162,7 @@ exports[`props validation validate simple types 18`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1192,7 +1192,7 @@ exports[`props validation validate simple types 20`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1209,7 +1209,7 @@ exports[`props validation validate simple types 21`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1226,7 +1226,7 @@ exports[`props validation validate simple types 22`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1256,7 +1256,7 @@ exports[`props validation validate simple types 24`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1273,7 +1273,7 @@ exports[`props validation validate simple types, alternate form 1`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1290,7 +1290,7 @@ exports[`props validation validate simple types, alternate form 2`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1320,7 +1320,7 @@ exports[`props validation validate simple types, alternate form 4`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1337,7 +1337,7 @@ exports[`props validation validate simple types, alternate form 5`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1354,7 +1354,7 @@ exports[`props validation validate simple types, alternate form 6`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1384,7 +1384,7 @@ exports[`props validation validate simple types, alternate form 8`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1401,7 +1401,7 @@ exports[`props validation validate simple types, alternate form 9`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1418,7 +1418,7 @@ exports[`props validation validate simple types, alternate form 10`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1448,7 +1448,7 @@ exports[`props validation validate simple types, alternate form 12`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1465,7 +1465,7 @@ exports[`props validation validate simple types, alternate form 13`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1482,7 +1482,7 @@ exports[`props validation validate simple types, alternate form 14`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1512,7 +1512,7 @@ exports[`props validation validate simple types, alternate form 16`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1529,7 +1529,7 @@ exports[`props validation validate simple types, alternate form 17`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1546,7 +1546,7 @@ exports[`props validation validate simple types, alternate form 18`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1576,7 +1576,7 @@ exports[`props validation validate simple types, alternate form 20`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1593,7 +1593,7 @@ exports[`props validation validate simple types, alternate form 21`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1610,7 +1610,7 @@ exports[`props validation validate simple types, alternate form 22`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1640,7 +1640,7 @@ exports[`props validation validate simple types, alternate form 24`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, false);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, [\\"p\\"]);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1657,7 +1657,7 @@ exports[`props validation validation is only done in dev mode 1`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, true);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, []);
let block1 = createBlock(\`<div><block-child-0/></div>\`);
@@ -1674,7 +1674,7 @@ exports[`props validation validation is only done in dev mode 2`] = `
"function anonymous(app, bdom, helpers
) {
let { text, createBlock, list, multi, html, toggler, comment } = bdom;
const comp1 = app.createComponent(\`SubComp\`, true, false, false, true);
const comp1 = app.createComponent(\`SubComp\`, true, false, false, []);
let block1 = createBlock(\`<div><block-child-0/></div>\`);