HEX
Server: nginx/1.18.0
System: Linux test-ipsremont 5.4.0-214-generic #234-Ubuntu SMP Fri Mar 14 23:50:27 UTC 2025 x86_64
User: ips (1000)
PHP: 8.0.30
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/quadcode.com/node_modules/svelte/src/compiler/compile/nodes/shared/Tag.js
import Node from './Node.js';
import Expression from './Expression.js';

/**
 * @template {'MustacheTag' | 'RawMustacheTag'} [Type='MustacheTag' | 'RawMustacheTag']
 * @extends Node<Type>
 */
export default class Tag extends Node {
	/** @type {import('./Expression.js').default} */
	expression;

	/** @type {boolean} */
	should_cache;

	/**
	 * @param {any} component
	 * @param {any} parent
	 * @param {any} scope
	 * @param {any} info
	 */
	constructor(component, parent, scope, info) {
		super(component, parent, scope, info);
		component.tags.push(this);
		this.cannot_use_innerhtml();
		this.expression = new Expression(component, this, scope, info.expression);
		this.should_cache =
			info.expression.type !== 'Identifier' ||
			(this.expression.dependencies.size && scope.names.has(info.expression.name));
	}
	is_dependencies_static() {
		return (
			this.expression.dynamic_contextual_dependencies().length === 0 &&
			this.expression.dynamic_dependencies().length === 0
		);
	}
	check_if_content_dynamic() {
		if (!this.is_dependencies_static()) {
			this.not_static_content();
		}
	}
}