color_tools.user_color_data

Canonical parsing, merging, and serialization for user color records.

color_tools.user_color_data.merge_user_color_records(system_records, user_records)[source]

Merge user colors sequentially by name while preserving RGB uniqueness.

Return type:

tuple[list[ColorRecord], tuple[ColorLoadEvent, ...]]

Parameters:
color_tools.user_color_data.parse_user_color_records(data, source_file)[source]

Parse the strict name/hex user-color schema.

Derived color-space values are always recalculated by ColorRecord. Extra fields are rejected so user files cannot supply stale derived data.

Return type:

list[ColorRecord]

Parameters:
  • data (Sequence[object])

  • source_file (str | Path)

color_tools.user_color_data.serialize_user_color_records(records)[source]

Serialize only authoritative user fields using canonical hex output.

Return type:

list[dict[str, str]]

Parameters:

records (Sequence[ColorRecord])