From 358c93853f7beeef88338112f53ccb06e3dcd975 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Wed, 29 Nov 2023 07:11:54 -0500 Subject: [PATCH] move util into utils file --- .../compiler/phases/3-transform/client/utils.js | 14 ++++++++++++++ .../client/visitors/javascript-runes.js | 15 +-------------- 2 files changed, 15 insertions(+), 14 deletions(-) diff --git a/packages/svelte/src/compiler/phases/3-transform/client/utils.js b/packages/svelte/src/compiler/phases/3-transform/client/utils.js index 05633632c1..132869f29d 100644 --- a/packages/svelte/src/compiler/phases/3-transform/client/utils.js +++ b/packages/svelte/src/compiler/phases/3-transform/client/utils.js @@ -378,3 +378,17 @@ export function create_state_declarators(declarator, scope, value) { }) ]; } + +/** @param {import('estree').Expression} node */ +export function should_proxy(node) { + if ( + !node || + node.type === 'Literal' || + node.type === 'ArrowFunctionExpression' || + node.type === 'FunctionExpression' + ) { + return false; + } + + return true; +} diff --git a/packages/svelte/src/compiler/phases/3-transform/client/visitors/javascript-runes.js b/packages/svelte/src/compiler/phases/3-transform/client/visitors/javascript-runes.js index dde1dd9b6e..ae343f3ef3 100644 --- a/packages/svelte/src/compiler/phases/3-transform/client/visitors/javascript-runes.js +++ b/packages/svelte/src/compiler/phases/3-transform/client/visitors/javascript-runes.js @@ -2,22 +2,9 @@ import { get_rune } from '../../../scope.js'; import { is_hoistable_function } from '../../utils.js'; import * as b from '../../../../utils/builders.js'; import * as assert from '../../../../utils/assert.js'; -import { create_state_declarators, get_props_method } from '../utils.js'; +import { create_state_declarators, get_props_method, should_proxy } from '../utils.js'; import { unwrap_ts_expression } from '../../../../utils/ast.js'; -/** @param {import('estree').Expression} node */ -function should_proxy(node) { - if ( - node.type === 'Literal' || - node.type === 'ArrowFunctionExpression' || - node.type === 'FunctionExpression' - ) { - return false; - } - - return true; -} - /** @type {import('../types.js').ComponentVisitors} */ export const javascript_visitors_runes = { ClassBody(node, { state, visit }) {