-
Notifications
You must be signed in to change notification settings - Fork 10
Open
Description
@marko/type-check: 1.3.19
Repro:
<div>
<for of=[]>
<const/foo=true/>
</for>
</div>
Error:
src/components/repro.marko - error TS6133
'__marko_internal_rendered_2' is declared but its value is never read.
Generates:
export interface Input {}
abstract class Component extends Marko.Component<Input> {}
export { type Component };
(function (this: void) {
const input = Marko._.any as Input;
const component = Marko._.any as Component;
const state = Marko._.state(component);
const out = Marko._.out;
const $signal = Marko._.any as AbortSignal;
const $global = Marko._.getGlobal(
// @ts-expect-error We expect the compiler to error because we are checking if the MarkoRun.Context is defined.
(Marko._.error, Marko._.any as MarkoRun.Context),
);
Marko._.noop({ component, state, out, input, $global, $signal });
const __marko_internal_rendered_1 = Marko._.renderNativeTag("div")()()({
["renderBody" /*div*/]: (() => {
const __marko_internal_rendered_2 = Marko._.forOfTag(
{
/*for*/ of: [],
},
() => {
const __marko_internal_tag_1 = Marko._.resolveTemplate(
import(
"@marko/tags-api-preview/dist/components/const/index.d.marko"
),
);
const __marko_internal_rendered_3 = Marko._.renderTemplate(
__marko_internal_tag_1,
)()()({
value: true,
});
const foo = __marko_internal_rendered_3.return.value;
return new (class MarkoReturn<Return = void> {
[Marko._.scope] = { foo };
declare return: Return;
constructor(_?: Return) {}
})();
},
);
return () => {
return Marko._.voidReturn;
};
})(),
});
const { foo } = Marko._.readScopes({ __marko_internal_rendered_1 });
Marko._.noop({ foo });
return;
})();
export default new (class Template extends Marko._.Template<{
render(
input: Marko.TemplateInput<Input>,
stream?: {
write: (chunk: string) => void;
end: (chunk?: string) => void;
},
): Marko.Out<Component>;
render(
input: Marko.TemplateInput<Input>,
cb?: (err: Error | null, result: Marko.RenderResult<Component>) => void,
): Marko.Out<Component>;
renderSync(input: Marko.TemplateInput<Input>): Marko.RenderResult<Component>;
renderToString(input: Marko.TemplateInput<Input>): string;
stream(
input: Marko.TemplateInput<Input>,
): ReadableStream<string> & NodeJS.ReadableStream;
api: "class";
_(): () => <__marko_internal_input extends unknown>(
input: Marko.Directives &
Input &
Marko._.Relate<__marko_internal_input, Marko.Directives & Input>,
) => Marko._.ReturnWithScope<__marko_internal_input, void>;
}> {})();
Metadata
Metadata
Assignees
Labels
No labels