Render-specific source metadata projected from a Figma NodeChange.
This keeps generated schema structs and their hundreds of unrelated fields out of backend compilers.
Summary
Types
@type t() :: %Figler.Render.SourceNode{ arc_data: Figler.Render.Shape.Arc.t() | nil, blend_mode: atom() | nil, boolean_operation: atom() | nil, corner_radius: float() | nil, corner_smoothing: float() | nil, count: non_neg_integer() | nil, dash_pattern: [float()], effects: [Figler.Render.Effect.t()], fill_geometry: [Figler.Render.GeometryRef.t()], fill_paints: [Figler.Render.Paint.t()], frame_mask_disabled: boolean() | nil, guid: Figler.Scene.Graph.GUID.figma_guid(), letter_spacing: term(), line_height: term(), mask: boolean() | nil, mask_type: atom() | nil, max_lines: term(), miter_limit: float() | nil, name: String.t() | nil, node_type: String.t() | nil, rectangle_bottom_left_corner_radius: float() | nil, rectangle_bottom_right_corner_radius: float() | nil, rectangle_corner_radii_independent: boolean() | nil, rectangle_top_left_corner_radius: float() | nil, rectangle_top_right_corner_radius: float() | nil, star_inner_scale: float() | nil, stroke_align: atom() | nil, stroke_cap: atom() | nil, stroke_cap_size: Figler.Render.Text.Measurement.t() | nil, stroke_geometry: [Figler.Render.GeometryRef.t()], stroke_join: atom() | nil, stroke_paints: [Figler.Render.Paint.t()], stroke_weight: float() | nil, text_align_horizontal: term(), text_align_vertical: term(), text_auto_resize: term(), text_case: term(), text_data: map() | nil, text_decoration: term(), text_decoration_fill_paints: term(), text_decoration_skip_ink: term(), text_decoration_style: term(), text_decoration_thickness: term(), text_truncation: term(), text_underline_offset: term(), vector_data: Figler.Render.VectorNetwork.Ref.t() | nil }