build_attribute_value() — svelte Function Reference
Architecture documentation for the build_attribute_value() function in element.js from the svelte codebase.
Entity Profile
Dependency Diagram
graph TD e31bc2c2_91c1_b9a9_f78a_2832bddce6c5["build_attribute_value()"] 7880f852_1b7b_9ea3_4e22_732f4a684bbe["element.js"] e31bc2c2_91c1_b9a9_f78a_2832bddce6c5 -->|defined in| 7880f852_1b7b_9ea3_4e22_732f4a684bbe 059abfac_6785_3551_13a8_b20c40ff070b["BindDirective()"] 059abfac_6785_3551_13a8_b20c40ff070b -->|calls| e31bc2c2_91c1_b9a9_f78a_2832bddce6c5 1e3b81f2_cd53_e5a5_0140_a9af38facf99["RegularElement()"] 1e3b81f2_cd53_e5a5_0140_a9af38facf99 -->|calls| e31bc2c2_91c1_b9a9_f78a_2832bddce6c5 4fce48f1_e9d7_958a_ce38_30799ece4fc7["build_style_directives_object()"] 4fce48f1_e9d7_958a_ce38_30799ece4fc7 -->|calls| e31bc2c2_91c1_b9a9_f78a_2832bddce6c5 e0b7227f_e61b_faf8_5693_879c87a34300["build_custom_element_attribute_update_assignment()"] e0b7227f_e61b_faf8_5693_879c87a34300 -->|calls| e31bc2c2_91c1_b9a9_f78a_2832bddce6c5 e962c3e1_86a1_deae_f6f6_e1f565fa9687["build_element_special_value_attribute()"] e962c3e1_86a1_deae_f6f6_e1f565fa9687 -->|calls| e31bc2c2_91c1_b9a9_f78a_2832bddce6c5 a56e6575_408a_3fdf_8d40_43c862426641["SlotElement()"] a56e6575_408a_3fdf_8d40_43c862426641 -->|calls| e31bc2c2_91c1_b9a9_f78a_2832bddce6c5 2bb483c4_1076_90c3_46bb_acc4dec02b3b["SvelteElement()"] 2bb483c4_1076_90c3_46bb_acc4dec02b3b -->|calls| e31bc2c2_91c1_b9a9_f78a_2832bddce6c5 2b6a1e4d_7060_eb43_d939_71517fa01ad9["build_component()"] 2b6a1e4d_7060_eb43_d939_71517fa01ad9 -->|calls| e31bc2c2_91c1_b9a9_f78a_2832bddce6c5 ef858948_a3b7_f31d_ad40_16743e642d00["build_attribute_effect()"] ef858948_a3b7_f31d_ad40_16743e642d00 -->|calls| e31bc2c2_91c1_b9a9_f78a_2832bddce6c5 573f9041_7062_5e5d_80e6_7292990c13c5["build_set_class()"] 573f9041_7062_5e5d_80e6_7292990c13c5 -->|calls| e31bc2c2_91c1_b9a9_f78a_2832bddce6c5 9e463b1e_1f97_8c97_f5f2_bccfb0ffe03b["build_set_style()"] 9e463b1e_1f97_8c97_f5f2_bccfb0ffe03b -->|calls| e31bc2c2_91c1_b9a9_f78a_2832bddce6c5 66243dec_e2be_a66d_3992_3ea42cf964b5["build_expression()"] e31bc2c2_91c1_b9a9_f78a_2832bddce6c5 -->|calls| 66243dec_e2be_a66d_3992_3ea42cf964b5 3b2a4fcc_2df2_7057_21b4_4cac59b8df61["is_async()"] e31bc2c2_91c1_b9a9_f78a_2832bddce6c5 -->|calls| 3b2a4fcc_2df2_7057_21b4_4cac59b8df61 style e31bc2c2_91c1_b9a9_f78a_2832bddce6c5 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/svelte/src/compiler/phases/3-transform/client/visitors/shared/element.js lines 109–130
export function build_attribute_value(value, context, memoize = (value) => value) {
if (value === true) {
return { value: b.true, has_state: false };
}
if (!Array.isArray(value) || value.length === 1) {
const chunk = Array.isArray(value) ? value[0] : value;
if (chunk.type === 'Text') {
return { value: b.literal(chunk.data), has_state: false };
}
let expression = build_expression(context, chunk.expression, chunk.metadata.expression);
return {
value: memoize(expression, chunk.metadata.expression),
has_state: chunk.metadata.expression.has_state || chunk.metadata.expression.is_async()
};
}
return build_template_chunk(value, context, context.state, memoize);
}
Domain
Subdomains
Called By
Source
Frequently Asked Questions
What does build_attribute_value() do?
build_attribute_value() is a function in the svelte codebase, defined in packages/svelte/src/compiler/phases/3-transform/client/visitors/shared/element.js.
Where is build_attribute_value() defined?
build_attribute_value() is defined in packages/svelte/src/compiler/phases/3-transform/client/visitors/shared/element.js at line 109.
What does build_attribute_value() call?
build_attribute_value() calls 3 function(s): build_expression, build_template_chunk, is_async.
What calls build_attribute_value()?
build_attribute_value() is called by 11 function(s): BindDirective, RegularElement, SlotElement, SvelteElement, build_attribute_effect, build_component, build_custom_element_attribute_update_assignment, build_element_special_value_attribute, and 3 more.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free