diff --git a/src/babel/core/create-registry.ts b/src/babel/core/create-registry.ts index 924f582..40f0138 100644 --- a/src/babel/core/create-registry.ts +++ b/src/babel/core/create-registry.ts @@ -4,7 +4,6 @@ import { IMPORT_REFRESH, IMPORT_REGISTRY } from './constants'; import { getHotIdentifier } from './get-hot-identifier'; import { getImportIdentifier } from './get-import-identifier'; import { getRootStatementPath } from './get-root-statement-path'; -import { generateViteHMRRequirement } from './get-vite-hmr-requirement'; import type { StateContext } from './types'; const REGISTRY = 'REGISTRY'; @@ -34,22 +33,21 @@ export function createRegistry( )[0], ); const pathToHot = getHotIdentifier(state); - const statements: t.Statement[] = [ - t.expressionStatement( - t.callExpression(getImportIdentifier(state, path, IMPORT_REFRESH), [ - t.stringLiteral(state.bundler), - pathToHot, - identifier, - ]), - ), - ]; - - generateViteHMRRequirement(state, statements, pathToHot); - ( path.scope.getProgramParent().path as babel.NodePath ).pushContainer('body', [ - t.ifStatement(pathToHot, t.blockStatement(statements)), + t.ifStatement( + pathToHot, + t.blockStatement([ + t.expressionStatement( + t.callExpression(getImportIdentifier(state, path, IMPORT_REFRESH), [ + t.stringLiteral(state.bundler), + pathToHot, + identifier, + ]), + ), + ]), + ), ]); state.imports.set(REGISTRY, identifier); return identifier; diff --git a/src/babel/core/get-hmr-decline-call.ts b/src/babel/core/get-hmr-decline-call.ts index 58411a5..4c3af6e 100644 --- a/src/babel/core/get-hmr-decline-call.ts +++ b/src/babel/core/get-hmr-decline-call.ts @@ -1,23 +1,43 @@ import type * as babel from '@babel/core'; import * as t from '@babel/types'; -import type { StateContext } from './types'; +import { IMPORT_DECLINE } from './constants'; import { getHotIdentifier } from './get-hot-identifier'; import { getImportIdentifier } from './get-import-identifier'; -import { IMPORT_DECLINE } from './constants'; -import { generateViteHMRRequirement } from './get-vite-hmr-requirement'; +import type { StateContext } from './types'; export function getHMRDeclineCall(state: StateContext, path: babel.NodePath) { const pathToHot = getHotIdentifier(state); - const statements = [ - t.expressionStatement( - t.callExpression(getImportIdentifier(state, path, IMPORT_DECLINE), [ - t.stringLiteral(state.bundler), - pathToHot, - ]), - ), - ]; - - generateViteHMRRequirement(state, statements, pathToHot); - return t.ifStatement(pathToHot, t.blockStatement(statements)); + if (state.bundler === 'vite') { + return t.ifStatement( + pathToHot, + t.blockStatement([ + t.expressionStatement( + t.callExpression( + t.memberExpression(pathToHot, t.identifier('accept')), + [ + t.arrowFunctionExpression( + [], + t.callExpression( + t.memberExpression(pathToHot, t.identifier('invalidate')), + [], + ), + ), + ], + ), + ), + ]), + ); + } + return t.ifStatement( + pathToHot, + t.blockStatement([ + t.expressionStatement( + t.callExpression(getImportIdentifier(state, path, IMPORT_DECLINE), [ + t.stringLiteral(state.bundler), + pathToHot, + ]), + ), + ]), + ); } diff --git a/src/babel/core/get-vite-hmr-requirement.ts b/src/babel/core/get-vite-hmr-requirement.ts deleted file mode 100644 index 4b8ab33..0000000 --- a/src/babel/core/get-vite-hmr-requirement.ts +++ /dev/null @@ -1,20 +0,0 @@ -import type { StateContext } from './types'; -import * as t from '@babel/types'; - -export function generateViteHMRRequirement( - state: StateContext, - statements: t.Statement[], - pathToHot: t.Expression, -) { - if (state.bundler === 'vite') { - // Vite requires that the owner module has an `import.meta.hot.accept()` call - statements.push( - t.expressionStatement( - t.callExpression( - t.memberExpression(pathToHot, t.identifier('accept')), - [], - ), - ), - ); - } -} diff --git a/tests/client-hydratable/__snapshots__/vite.test.ts.snap b/tests/client-hydratable/__snapshots__/vite.test.ts.snap index 333d4b2..fd4602d 100644 --- a/tests/client-hydratable/__snapshots__/vite.test.ts.snap +++ b/tests/client-hydratable/__snapshots__/vite.test.ts.snap @@ -16,7 +16,6 @@ const _REGISTRY = _$$registry(); export const Example = _$$context(_REGISTRY, "Example", createContext()); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -29,7 +28,6 @@ const _REGISTRY = _$$registry(); const Example = _$$context(_REGISTRY, "Example", createContext()); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -37,14 +35,12 @@ exports[`vite (client, hydratable) > ExportDefaultDeclaration w/ FunctionExpress "import { template as _$template } from "solid-js/web"; import { getNextElement as _$getNextElement } from "solid-js/web"; var _tmpl$ = /*#__PURE__*/_$template(\`

Foo\`); -import { $$decline as _$$decline } from "solid-refresh"; // @refresh reload export default function Foo() { return _$getNextElement(_tmpl$); } if (import.meta.hot) { - _$$decline("vite", import.meta.hot); - import.meta.hot.accept(); + import.meta.hot.accept(() => import.meta.hot.invalidate()); }" `; @@ -76,7 +72,6 @@ export default function foo() { } if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -98,7 +93,6 @@ export default function Foo(a, b) { } if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -124,7 +118,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo(props) { export default Foo; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -150,7 +143,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { export default Foo; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -187,7 +179,6 @@ const example = 'Foo'; export default Foo; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -220,7 +211,6 @@ const Example = createContext(); export default Foo; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -265,7 +255,6 @@ const Bar = _$$component(_REGISTRY, "Bar", function Bar() { export default Foo; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -273,14 +262,12 @@ exports[`vite (client, hydratable) > ExportNamedDeclaration w/ FunctionExpressio "import { template as _$template } from "solid-js/web"; import { getNextElement as _$getNextElement } from "solid-js/web"; var _tmpl$ = /*#__PURE__*/_$template(\`

Foo\`); -import { $$decline as _$$decline } from "solid-refresh"; // @refresh reload export function Foo() { return _$getNextElement(_tmpl$); } if (import.meta.hot) { - _$$decline("vite", import.meta.hot); - import.meta.hot.accept(); + import.meta.hot.accept(() => import.meta.hot.invalidate()); }" `; @@ -316,7 +303,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { export { Foo }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -338,7 +324,6 @@ export function Foo(a, b) { } if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -364,7 +349,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo(props) { export { Foo }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -390,7 +374,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { export { Foo }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -427,7 +410,6 @@ const example = 'Foo'; export { Foo }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -460,7 +442,6 @@ const Example = createContext(); export { Foo }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -515,7 +496,6 @@ export { Bar }; export { Foo }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -523,14 +503,12 @@ exports[`vite (client, hydratable) > FunctionDeclaration > should skip FunctionD "import { template as _$template } from "solid-js/web"; import { getNextElement as _$getNextElement } from "solid-js/web"; var _tmpl$ = /*#__PURE__*/_$template(\`

Foo\`); -import { $$decline as _$$decline } from "solid-refresh"; // @refresh reload function Foo() { return _$getNextElement(_tmpl$); } if (import.meta.hot) { - _$$decline("vite", import.meta.hot); - import.meta.hot.accept(); + import.meta.hot.accept(() => import.meta.hot.invalidate()); }" `; @@ -562,7 +540,6 @@ function foo() { } if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -584,7 +561,6 @@ function Foo(a, b) { } if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -609,7 +585,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo(props) { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -634,7 +609,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -670,7 +644,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -702,7 +675,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -746,7 +718,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -754,14 +725,12 @@ exports[`vite (client, hydratable) > VariableDeclarator > ArrowFunctionExpressio "import { template as _$template } from "solid-js/web"; import { getNextElement as _$getNextElement } from "solid-js/web"; var _tmpl$ = /*#__PURE__*/_$template(\`

Foo\`); -import { $$decline as _$$decline } from "solid-refresh"; // @refresh reload const Foo = () => { return _$getNextElement(_tmpl$); }; if (import.meta.hot) { - _$$decline("vite", import.meta.hot); - import.meta.hot.accept(); + import.meta.hot.accept(() => import.meta.hot.invalidate()); }" `; @@ -793,7 +762,6 @@ const foo = () => { }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -815,7 +783,6 @@ const Foo = (a, b) => { }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -840,7 +807,6 @@ const Foo = _$$component(_REGISTRY, "Foo", props => { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -865,7 +831,6 @@ const Foo = _$$component(_REGISTRY, "Foo", () => { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -901,7 +866,6 @@ const Foo = _$$component(_REGISTRY, "Foo", () => { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -933,7 +897,6 @@ const Foo = _$$component(_REGISTRY, "Foo", () => { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -977,7 +940,6 @@ const Foo = _$$component(_REGISTRY, "Foo", () => { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -985,14 +947,12 @@ exports[`vite (client, hydratable) > VariableDeclarator > FunctionExpression > s "import { template as _$template } from "solid-js/web"; import { getNextElement as _$getNextElement } from "solid-js/web"; var _tmpl$ = /*#__PURE__*/_$template(\`

Foo\`); -import { $$decline as _$$decline } from "solid-refresh"; // @refresh reload const Foo = function () { return _$getNextElement(_tmpl$); }; if (import.meta.hot) { - _$$decline("vite", import.meta.hot); - import.meta.hot.accept(); + import.meta.hot.accept(() => import.meta.hot.invalidate()); }" `; @@ -1024,7 +984,6 @@ const foo = function () { }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1046,7 +1005,6 @@ const Foo = function (a, b) { }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1071,7 +1029,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function (props) { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1096,7 +1053,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function () { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1132,7 +1088,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function () { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1164,7 +1119,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function () { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1208,13 +1162,11 @@ const Foo = _$$component(_REGISTRY, "Foo", function () { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; exports[`vite (client, hydratable) > fix render > @refresh reload > should work 1`] = ` "import { createComponent as _$createComponent } from "solid-js/web"; -import { $$decline as _$$decline } from "solid-refresh"; // @refresh reload import { render } from 'solid-js/web'; if (root) { @@ -1222,8 +1174,7 @@ if (root) { if (import.meta.hot) import.meta.hot.dispose(_cleanup); } if (import.meta.hot) { - _$$decline("vite", import.meta.hot); - import.meta.hot.accept(); + import.meta.hot.accept(() => import.meta.hot.invalidate()); }" `; @@ -1244,7 +1195,6 @@ const _cleanup = solidWeb.render(() => /*@refresh jsx-skip*/_$createComponent(JS if (import.meta.hot) import.meta.hot.dispose(_cleanup); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1265,7 +1215,6 @@ const _cleanup = render(() => /*@refresh jsx-skip*/_$createComponent(JSX__cleanu if (import.meta.hot) import.meta.hot.dispose(_cleanup); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1286,7 +1235,6 @@ const _cleanup = Render(() => /*@refresh jsx-skip*/_$createComponent(JSX__cleanu if (import.meta.hot) import.meta.hot.dispose(_cleanup); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1307,7 +1255,6 @@ const _cleanup = Render(() => /*@refresh jsx-skip*/_$createComponent(JSX__cleanu if (import.meta.hot) import.meta.hot.dispose(_cleanup); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1330,6 +1277,5 @@ if (root) { } if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; diff --git a/tests/client/__snapshots__/vite.test.ts.snap b/tests/client/__snapshots__/vite.test.ts.snap index ab720b2..ca9dbc6 100644 --- a/tests/client/__snapshots__/vite.test.ts.snap +++ b/tests/client/__snapshots__/vite.test.ts.snap @@ -16,7 +16,6 @@ const _REGISTRY = _$$registry(); export const Example = _$$context(_REGISTRY, "Example", createContext()); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -29,21 +28,18 @@ const _REGISTRY = _$$registry(); const Example = _$$context(_REGISTRY, "Example", createContext()); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; exports[`vite (client, non-hydratable) > ExportDefaultDeclaration w/ FunctionExpression > should skip ExportDefaultDeclaration w/ FunctionExpression with @refresh reload 1`] = ` "import { template as _$template } from "solid-js/web"; var _tmpl$ = /*#__PURE__*/_$template(\`

Foo\`); -import { $$decline as _$$decline } from "solid-refresh"; // @refresh reload export default function Foo() { return _tmpl$(); } if (import.meta.hot) { - _$$decline("vite", import.meta.hot); - import.meta.hot.accept(); + import.meta.hot.accept(() => import.meta.hot.invalidate()); }" `; @@ -73,7 +69,6 @@ export default function foo() { } if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -94,7 +89,6 @@ export default function Foo(a, b) { } if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -119,7 +113,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo(props) { export default Foo; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -144,7 +137,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { export default Foo; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -180,7 +172,6 @@ const example = 'Foo'; export default Foo; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -213,7 +204,6 @@ const Example = createContext(); export default Foo; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -257,21 +247,18 @@ const Bar = _$$component(_REGISTRY, "Bar", function Bar() { export default Foo; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; exports[`vite (client, non-hydratable) > ExportNamedDeclaration w/ FunctionExpression > should skip ExportNamedDeclaration w/ FunctionExpression with @refresh reload 1`] = ` "import { template as _$template } from "solid-js/web"; var _tmpl$ = /*#__PURE__*/_$template(\`

Foo\`); -import { $$decline as _$$decline } from "solid-refresh"; // @refresh reload export function Foo() { return _tmpl$(); } if (import.meta.hot) { - _$$decline("vite", import.meta.hot); - import.meta.hot.accept(); + import.meta.hot.accept(() => import.meta.hot.invalidate()); }" `; @@ -305,7 +292,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { export { Foo }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -326,7 +312,6 @@ export function Foo(a, b) { } if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -351,7 +336,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo(props) { export { Foo }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -376,7 +360,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { export { Foo }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -412,7 +395,6 @@ const example = 'Foo'; export { Foo }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -445,7 +427,6 @@ const Example = createContext(); export { Foo }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -499,21 +480,18 @@ export { Bar }; export { Foo }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; exports[`vite (client, non-hydratable) > FunctionDeclaration > should skip FunctionDeclaration with @refresh reload 1`] = ` "import { template as _$template } from "solid-js/web"; var _tmpl$ = /*#__PURE__*/_$template(\`

Foo\`); -import { $$decline as _$$decline } from "solid-refresh"; // @refresh reload function Foo() { return _tmpl$(); } if (import.meta.hot) { - _$$decline("vite", import.meta.hot); - import.meta.hot.accept(); + import.meta.hot.accept(() => import.meta.hot.invalidate()); }" `; @@ -543,7 +521,6 @@ function foo() { } if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -564,7 +541,6 @@ function Foo(a, b) { } if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -588,7 +564,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo(props) { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -612,7 +587,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -647,7 +621,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -679,7 +652,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -722,21 +694,18 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; exports[`vite (client, non-hydratable) > VariableDeclarator > ArrowFunctionExpression > should skip VariableDeclarator w/ ArrowFunctionExpression with @refresh reload 1`] = ` "import { template as _$template } from "solid-js/web"; var _tmpl$ = /*#__PURE__*/_$template(\`

Foo\`); -import { $$decline as _$$decline } from "solid-refresh"; // @refresh reload const Foo = () => { return _tmpl$(); }; if (import.meta.hot) { - _$$decline("vite", import.meta.hot); - import.meta.hot.accept(); + import.meta.hot.accept(() => import.meta.hot.invalidate()); }" `; @@ -766,7 +735,6 @@ const foo = () => { }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -787,7 +755,6 @@ const Foo = (a, b) => { }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -811,7 +778,6 @@ const Foo = _$$component(_REGISTRY, "Foo", props => { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -835,7 +801,6 @@ const Foo = _$$component(_REGISTRY, "Foo", () => { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -870,7 +835,6 @@ const Foo = _$$component(_REGISTRY, "Foo", () => { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -902,7 +866,6 @@ const Foo = _$$component(_REGISTRY, "Foo", () => { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -945,21 +908,18 @@ const Foo = _$$component(_REGISTRY, "Foo", () => { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; exports[`vite (client, non-hydratable) > VariableDeclarator > FunctionExpression > should skip VariableDeclarator w/ FunctionExpression with @refresh reload 1`] = ` "import { template as _$template } from "solid-js/web"; var _tmpl$ = /*#__PURE__*/_$template(\`

Foo\`); -import { $$decline as _$$decline } from "solid-refresh"; // @refresh reload const Foo = function () { return _tmpl$(); }; if (import.meta.hot) { - _$$decline("vite", import.meta.hot); - import.meta.hot.accept(); + import.meta.hot.accept(() => import.meta.hot.invalidate()); }" `; @@ -989,7 +949,6 @@ const foo = function () { }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1010,7 +969,6 @@ const Foo = function (a, b) { }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1034,7 +992,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function (props) { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1058,7 +1015,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function () { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1093,7 +1049,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function () { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1125,7 +1080,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function () { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1168,13 +1122,11 @@ const Foo = _$$component(_REGISTRY, "Foo", function () { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; exports[`vite (client, non-hydratable) > fix render > @refresh reload > should work 1`] = ` "import { createComponent as _$createComponent } from "solid-js/web"; -import { $$decline as _$$decline } from "solid-refresh"; // @refresh reload import { render } from 'solid-js/web'; if (root) { @@ -1182,8 +1134,7 @@ if (root) { if (import.meta.hot) import.meta.hot.dispose(_cleanup); } if (import.meta.hot) { - _$$decline("vite", import.meta.hot); - import.meta.hot.accept(); + import.meta.hot.accept(() => import.meta.hot.invalidate()); }" `; @@ -1204,7 +1155,6 @@ const _cleanup = solidWeb.render(() => /*@refresh jsx-skip*/_$createComponent(JS if (import.meta.hot) import.meta.hot.dispose(_cleanup); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1225,7 +1175,6 @@ const _cleanup = render(() => /*@refresh jsx-skip*/_$createComponent(JSX__cleanu if (import.meta.hot) import.meta.hot.dispose(_cleanup); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1246,7 +1195,6 @@ const _cleanup = Render(() => /*@refresh jsx-skip*/_$createComponent(JSX__cleanu if (import.meta.hot) import.meta.hot.dispose(_cleanup); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1267,7 +1215,6 @@ const _cleanup = Render(() => /*@refresh jsx-skip*/_$createComponent(JSX__cleanu if (import.meta.hot) import.meta.hot.dispose(_cleanup); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1290,6 +1237,5 @@ if (root) { } if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; diff --git a/tests/server-hydratable/__snapshots__/vite.test.ts.snap b/tests/server-hydratable/__snapshots__/vite.test.ts.snap index 3635eb9..a1cab6c 100644 --- a/tests/server-hydratable/__snapshots__/vite.test.ts.snap +++ b/tests/server-hydratable/__snapshots__/vite.test.ts.snap @@ -16,7 +16,6 @@ const _REGISTRY = _$$registry(); export const Example = _$$context(_REGISTRY, "Example", createContext()); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -29,7 +28,6 @@ const _REGISTRY = _$$registry(); const Example = _$$context(_REGISTRY, "Example", createContext()); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -37,14 +35,12 @@ exports[`vite (server, hydratable) > ExportDefaultDeclaration w/ FunctionExpress "import { ssr as _$ssr } from "solid-js/web"; import { ssrHydrationKey as _$ssrHydrationKey } from "solid-js/web"; var _tmpl$ = ["Foo

"]; -import { $$decline as _$$decline } from "solid-refresh"; // @refresh reload export default function Foo() { return _$ssr(_tmpl$, _$ssrHydrationKey()); } if (import.meta.hot) { - _$$decline("vite", import.meta.hot); - import.meta.hot.accept(); + import.meta.hot.accept(() => import.meta.hot.invalidate()); }" `; @@ -76,7 +72,6 @@ export default function foo() { } if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -98,7 +93,6 @@ export default function Foo(a, b) { } if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -124,7 +118,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo(props) { export default Foo; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -150,7 +143,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { export default Foo; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -183,7 +175,6 @@ const example = 'Foo'; export default Foo; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -216,7 +207,6 @@ const Example = createContext(); export default Foo; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -261,7 +251,6 @@ const Bar = _$$component(_REGISTRY, "Bar", function Bar() { export default Foo; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -269,14 +258,12 @@ exports[`vite (server, hydratable) > ExportNamedDeclaration w/ FunctionExpressio "import { ssr as _$ssr } from "solid-js/web"; import { ssrHydrationKey as _$ssrHydrationKey } from "solid-js/web"; var _tmpl$ = ["Foo"]; -import { $$decline as _$$decline } from "solid-refresh"; // @refresh reload export function Foo() { return _$ssr(_tmpl$, _$ssrHydrationKey()); } if (import.meta.hot) { - _$$decline("vite", import.meta.hot); - import.meta.hot.accept(); + import.meta.hot.accept(() => import.meta.hot.invalidate()); }" `; @@ -312,7 +299,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { export { Foo }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -334,7 +320,6 @@ export function Foo(a, b) { } if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -360,7 +345,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo(props) { export { Foo }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -386,7 +370,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { export { Foo }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -419,7 +402,6 @@ const example = 'Foo'; export { Foo }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -452,7 +434,6 @@ const Example = createContext(); export { Foo }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -507,7 +488,6 @@ export { Bar }; export { Foo }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -515,14 +495,12 @@ exports[`vite (server, hydratable) > FunctionDeclaration > should skip FunctionD "import { ssr as _$ssr } from "solid-js/web"; import { ssrHydrationKey as _$ssrHydrationKey } from "solid-js/web"; var _tmpl$ = ["Foo"]; -import { $$decline as _$$decline } from "solid-refresh"; // @refresh reload function Foo() { return _$ssr(_tmpl$, _$ssrHydrationKey()); } if (import.meta.hot) { - _$$decline("vite", import.meta.hot); - import.meta.hot.accept(); + import.meta.hot.accept(() => import.meta.hot.invalidate()); }" `; @@ -554,7 +532,6 @@ function foo() { } if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -576,7 +553,6 @@ function Foo(a, b) { } if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -601,7 +577,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo(props) { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -626,7 +601,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -658,7 +632,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -690,7 +663,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -734,7 +706,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -742,14 +713,12 @@ exports[`vite (server, hydratable) > VariableDeclarator > ArrowFunctionExpressio "import { ssr as _$ssr } from "solid-js/web"; import { ssrHydrationKey as _$ssrHydrationKey } from "solid-js/web"; var _tmpl$ = ["Foo"]; -import { $$decline as _$$decline } from "solid-refresh"; // @refresh reload const Foo = () => { return _$ssr(_tmpl$, _$ssrHydrationKey()); }; if (import.meta.hot) { - _$$decline("vite", import.meta.hot); - import.meta.hot.accept(); + import.meta.hot.accept(() => import.meta.hot.invalidate()); }" `; @@ -781,7 +750,6 @@ const foo = () => { }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -803,7 +771,6 @@ const Foo = (a, b) => { }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -828,7 +795,6 @@ const Foo = _$$component(_REGISTRY, "Foo", props => { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -853,7 +819,6 @@ const Foo = _$$component(_REGISTRY, "Foo", () => { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -885,7 +850,6 @@ const Foo = _$$component(_REGISTRY, "Foo", () => { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -917,7 +881,6 @@ const Foo = _$$component(_REGISTRY, "Foo", () => { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -961,7 +924,6 @@ const Foo = _$$component(_REGISTRY, "Foo", () => { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -969,14 +931,12 @@ exports[`vite (server, hydratable) > VariableDeclarator > FunctionExpression > s "import { ssr as _$ssr } from "solid-js/web"; import { ssrHydrationKey as _$ssrHydrationKey } from "solid-js/web"; var _tmpl$ = ["Foo"]; -import { $$decline as _$$decline } from "solid-refresh"; // @refresh reload const Foo = function () { return _$ssr(_tmpl$, _$ssrHydrationKey()); }; if (import.meta.hot) { - _$$decline("vite", import.meta.hot); - import.meta.hot.accept(); + import.meta.hot.accept(() => import.meta.hot.invalidate()); }" `; @@ -1008,7 +968,6 @@ const foo = function () { }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1030,7 +989,6 @@ const Foo = function (a, b) { }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1055,7 +1013,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function (props) { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1080,7 +1037,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function () { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1112,7 +1068,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function () { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1144,7 +1099,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function () { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1188,13 +1142,11 @@ const Foo = _$$component(_REGISTRY, "Foo", function () { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; exports[`vite (server, hydratable) > fix render > @refresh reload > should work 1`] = ` "import { createComponent as _$createComponent } from "solid-js/web"; -import { $$decline as _$$decline } from "solid-refresh"; // @refresh reload import { render } from 'solid-js/web'; if (root) { @@ -1202,8 +1154,7 @@ if (root) { if (import.meta.hot) import.meta.hot.dispose(_cleanup); } if (import.meta.hot) { - _$$decline("vite", import.meta.hot); - import.meta.hot.accept(); + import.meta.hot.accept(() => import.meta.hot.invalidate()); }" `; @@ -1224,7 +1175,6 @@ const _cleanup = solidWeb.render(() => /*@refresh jsx-skip*/_$createComponent(JS if (import.meta.hot) import.meta.hot.dispose(_cleanup); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1245,7 +1195,6 @@ const _cleanup = render(() => /*@refresh jsx-skip*/_$createComponent(JSX__cleanu if (import.meta.hot) import.meta.hot.dispose(_cleanup); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1266,7 +1215,6 @@ const _cleanup = Render(() => /*@refresh jsx-skip*/_$createComponent(JSX__cleanu if (import.meta.hot) import.meta.hot.dispose(_cleanup); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1287,7 +1235,6 @@ const _cleanup = Render(() => /*@refresh jsx-skip*/_$createComponent(JSX__cleanu if (import.meta.hot) import.meta.hot.dispose(_cleanup); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1310,6 +1257,5 @@ if (root) { } if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; diff --git a/tests/server/__snapshots__/vite.test.ts.snap b/tests/server/__snapshots__/vite.test.ts.snap index 7e04fbe..12f76fc 100644 --- a/tests/server/__snapshots__/vite.test.ts.snap +++ b/tests/server/__snapshots__/vite.test.ts.snap @@ -16,7 +16,6 @@ const _REGISTRY = _$$registry(); export const Example = _$$context(_REGISTRY, "Example", createContext()); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -29,21 +28,18 @@ const _REGISTRY = _$$registry(); const Example = _$$context(_REGISTRY, "Example", createContext()); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; exports[`vite (server, non-hydratable) > ExportDefaultDeclaration w/ FunctionExpression > should skip ExportDefaultDeclaration w/ FunctionExpression with @refresh reload 1`] = ` "import { ssr as _$ssr } from "solid-js/web"; var _tmpl$ = "

Foo

"; -import { $$decline as _$$decline } from "solid-refresh"; // @refresh reload export default function Foo() { return _$ssr(_tmpl$); } if (import.meta.hot) { - _$$decline("vite", import.meta.hot); - import.meta.hot.accept(); + import.meta.hot.accept(() => import.meta.hot.invalidate()); }" `; @@ -73,7 +69,6 @@ export default function foo() { } if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -94,7 +89,6 @@ export default function Foo(a, b) { } if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -119,7 +113,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo(props) { export default Foo; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -144,7 +137,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { export default Foo; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -176,7 +168,6 @@ const example = 'Foo'; export default Foo; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -209,7 +200,6 @@ const Example = createContext(); export default Foo; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -253,21 +243,18 @@ const Bar = _$$component(_REGISTRY, "Bar", function Bar() { export default Foo; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; exports[`vite (server, non-hydratable) > ExportNamedDeclaration w/ FunctionExpression > should skip ExportNamedDeclaration w/ FunctionExpression with @refresh reload 1`] = ` "import { ssr as _$ssr } from "solid-js/web"; var _tmpl$ = "

Foo

"; -import { $$decline as _$$decline } from "solid-refresh"; // @refresh reload export function Foo() { return _$ssr(_tmpl$); } if (import.meta.hot) { - _$$decline("vite", import.meta.hot); - import.meta.hot.accept(); + import.meta.hot.accept(() => import.meta.hot.invalidate()); }" `; @@ -301,7 +288,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { export { Foo }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -322,7 +308,6 @@ export function Foo(a, b) { } if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -347,7 +332,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo(props) { export { Foo }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -372,7 +356,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { export { Foo }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -404,7 +387,6 @@ const example = 'Foo'; export { Foo }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -437,7 +419,6 @@ const Example = createContext(); export { Foo }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -491,21 +472,18 @@ export { Bar }; export { Foo }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; exports[`vite (server, non-hydratable) > FunctionDeclaration > should skip FunctionDeclaration with @refresh reload 1`] = ` "import { ssr as _$ssr } from "solid-js/web"; var _tmpl$ = "

Foo

"; -import { $$decline as _$$decline } from "solid-refresh"; // @refresh reload function Foo() { return _$ssr(_tmpl$); } if (import.meta.hot) { - _$$decline("vite", import.meta.hot); - import.meta.hot.accept(); + import.meta.hot.accept(() => import.meta.hot.invalidate()); }" `; @@ -535,7 +513,6 @@ function foo() { } if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -556,7 +533,6 @@ function Foo(a, b) { } if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -580,7 +556,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo(props) { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -604,7 +579,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -635,7 +609,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -667,7 +640,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -710,21 +682,18 @@ const Foo = _$$component(_REGISTRY, "Foo", function Foo() { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; exports[`vite (server, non-hydratable) > VariableDeclarator > ArrowFunctionExpression > should skip VariableDeclarator w/ ArrowFunctionExpression with @refresh reload 1`] = ` "import { ssr as _$ssr } from "solid-js/web"; var _tmpl$ = "

Foo

"; -import { $$decline as _$$decline } from "solid-refresh"; // @refresh reload const Foo = () => { return _$ssr(_tmpl$); }; if (import.meta.hot) { - _$$decline("vite", import.meta.hot); - import.meta.hot.accept(); + import.meta.hot.accept(() => import.meta.hot.invalidate()); }" `; @@ -754,7 +723,6 @@ const foo = () => { }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -775,7 +743,6 @@ const Foo = (a, b) => { }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -799,7 +766,6 @@ const Foo = _$$component(_REGISTRY, "Foo", props => { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -823,7 +789,6 @@ const Foo = _$$component(_REGISTRY, "Foo", () => { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -854,7 +819,6 @@ const Foo = _$$component(_REGISTRY, "Foo", () => { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -886,7 +850,6 @@ const Foo = _$$component(_REGISTRY, "Foo", () => { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -929,21 +892,18 @@ const Foo = _$$component(_REGISTRY, "Foo", () => { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; exports[`vite (server, non-hydratable) > VariableDeclarator > FunctionExpression > should skip VariableDeclarator w/ FunctionExpression with @refresh reload 1`] = ` "import { ssr as _$ssr } from "solid-js/web"; var _tmpl$ = "

Foo

"; -import { $$decline as _$$decline } from "solid-refresh"; // @refresh reload const Foo = function () { return _$ssr(_tmpl$); }; if (import.meta.hot) { - _$$decline("vite", import.meta.hot); - import.meta.hot.accept(); + import.meta.hot.accept(() => import.meta.hot.invalidate()); }" `; @@ -973,7 +933,6 @@ const foo = function () { }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -994,7 +953,6 @@ const Foo = function (a, b) { }; if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1018,7 +976,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function (props) { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1042,7 +999,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function () { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1073,7 +1029,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function () { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1105,7 +1060,6 @@ const Foo = _$$component(_REGISTRY, "Foo", function () { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1148,13 +1102,11 @@ const Foo = _$$component(_REGISTRY, "Foo", function () { }); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; exports[`vite (server, non-hydratable) > fix render > @refresh reload > should work 1`] = ` "import { createComponent as _$createComponent } from "solid-js/web"; -import { $$decline as _$$decline } from "solid-refresh"; // @refresh reload import { render } from 'solid-js/web'; if (root) { @@ -1162,8 +1114,7 @@ if (root) { if (import.meta.hot) import.meta.hot.dispose(_cleanup); } if (import.meta.hot) { - _$$decline("vite", import.meta.hot); - import.meta.hot.accept(); + import.meta.hot.accept(() => import.meta.hot.invalidate()); }" `; @@ -1184,7 +1135,6 @@ const _cleanup = solidWeb.render(() => /*@refresh jsx-skip*/_$createComponent(JS if (import.meta.hot) import.meta.hot.dispose(_cleanup); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1205,7 +1155,6 @@ const _cleanup = render(() => /*@refresh jsx-skip*/_$createComponent(JSX__cleanu if (import.meta.hot) import.meta.hot.dispose(_cleanup); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1226,7 +1175,6 @@ const _cleanup = Render(() => /*@refresh jsx-skip*/_$createComponent(JSX__cleanu if (import.meta.hot) import.meta.hot.dispose(_cleanup); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1247,7 +1195,6 @@ const _cleanup = Render(() => /*@refresh jsx-skip*/_$createComponent(JSX__cleanu if (import.meta.hot) import.meta.hot.dispose(_cleanup); if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `; @@ -1270,6 +1217,5 @@ if (root) { } if (import.meta.hot) { _$$refresh("vite", import.meta.hot, _REGISTRY); - import.meta.hot.accept(); }" `;