From ce14d0634f982d2a0127a0387767b9d2d3b4ba5e Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Sun, 7 Jul 2024 17:50:13 -0400 Subject: [PATCH] type stuff --- .../svelte/src/internal/client/dom/blocks/await.js | 13 +++++++------ .../src/internal/client/dom/blocks/css-props.js | 7 ++----- packages/svelte/src/internal/client/dom/template.js | 2 +- .../src/internal/client/reactivity/types.d.ts | 2 +- 4 files changed, 11 insertions(+), 13 deletions(-) diff --git a/packages/svelte/src/internal/client/dom/blocks/await.js b/packages/svelte/src/internal/client/dom/blocks/await.js index f9cdfbc69a..fb5ebf682b 100644 --- a/packages/svelte/src/internal/client/dom/blocks/await.js +++ b/packages/svelte/src/internal/client/dom/blocks/await.js @@ -1,3 +1,4 @@ +/** @import { Effect, Source, TemplateNode } from '#client' */ import { is_promise, noop } from '../../../shared/utils.js'; import { current_component_context, @@ -11,7 +12,7 @@ import { import { block, branch, pause_effect, resume_effect } from '../../reactivity/effects.js'; import { DEV } from 'esm-env'; import { queue_micro_task } from '../task.js'; -import { hydrate_next, hydrate_node, hydrating, set_hydrate_node } from '../hydration.js'; +import { hydrate_next, hydrate_node, hydrating } from '../hydration.js'; import { mutable_source, set, source } from '../../reactivity/sources.js'; const PENDING = 0; @@ -20,10 +21,10 @@ const CATCH = 2; /** * @template V - * @param {Comment} anchor + * @param {TemplateNode} anchor * @param {(() => Promise)} get_input * @param {null | ((anchor: Node) => void)} pending_fn - * @param {null | ((anchor: Node, value: import('#client').Source) => void)} then_fn + * @param {null | ((anchor: Node, value: Source) => void)} then_fn * @param {null | ((anchor: Node, error: unknown) => void)} catch_fn * @returns {void} */ @@ -41,13 +42,13 @@ export function await_block(anchor, get_input, pending_fn, then_fn, catch_fn) { /** @type {V | Promise} */ var input; - /** @type {import('#client').Effect | null} */ + /** @type {Effect | null} */ var pending_effect; - /** @type {import('#client').Effect | null} */ + /** @type {Effect | null} */ var then_effect; - /** @type {import('#client').Effect | null} */ + /** @type {Effect | null} */ var catch_effect; var input_source = runes diff --git a/packages/svelte/src/internal/client/dom/blocks/css-props.js b/packages/svelte/src/internal/client/dom/blocks/css-props.js index 571b1abb01..1f40409156 100644 --- a/packages/svelte/src/internal/client/dom/blocks/css-props.js +++ b/packages/svelte/src/internal/client/dom/blocks/css-props.js @@ -1,3 +1,4 @@ +/** @import { TemplateNode } from '#client' */ import { render_effect, teardown } from '../../reactivity/effects.js'; import { hydrating, set_hydrate_node } from '../hydration.js'; @@ -8,7 +9,7 @@ import { hydrating, set_hydrate_node } from '../hydration.js'; */ export function css_props(element, get_styles) { if (hydrating) { - set_hydrate_node(element.firstChild); + set_hydrate_node(/** @type {TemplateNode} */ (element.firstChild)); } render_effect(() => { @@ -28,8 +29,4 @@ export function css_props(element, get_styles) { teardown(() => { element.remove(); }); - - // if (hydrating) { - // set_hydrate_node(element); - // } } diff --git a/packages/svelte/src/internal/client/dom/template.js b/packages/svelte/src/internal/client/dom/template.js index b4eb84b40d..63d72af191 100644 --- a/packages/svelte/src/internal/client/dom/template.js +++ b/packages/svelte/src/internal/client/dom/template.js @@ -8,7 +8,7 @@ import { queue_micro_task } from './task.js'; /** * @param {TemplateNode} start - * @param {TemplateNode} end + * @param {TemplateNode | null} end */ export function assign_nodes(start, end) { /** @type {Effect} */ (current_effect).nodes ??= { start, end }; diff --git a/packages/svelte/src/internal/client/reactivity/types.d.ts b/packages/svelte/src/internal/client/reactivity/types.d.ts index abc2be9015..1e347c011f 100644 --- a/packages/svelte/src/internal/client/reactivity/types.d.ts +++ b/packages/svelte/src/internal/client/reactivity/types.d.ts @@ -36,7 +36,7 @@ export interface Derived extends Value, Reaction { export interface EffectNodes { start: TemplateNode; - end: TemplateNode; + end: null | TemplateNode; } export interface Effect extends Reaction {