From 6ff6232316956d63b58a6239d9a50ad21109e6f7 Mon Sep 17 00:00:00 2001 From: Halil Durak Date: Sat, 10 Jan 2026 14:13:09 +0300 Subject: [PATCH] move `isHexColor` to `color.zig` --- src/browser/color.zig | 18 +++++++++++++++++- src/browser/webapi/css/CSSStyleDeclaration.zig | 18 ------------------ 2 files changed, 17 insertions(+), 19 deletions(-) diff --git a/src/browser/color.zig b/src/browser/color.zig index 610bd3ed..1b5c8293 100644 --- a/src/browser/color.zig +++ b/src/browser/color.zig @@ -19,7 +19,23 @@ const std = @import("std"); const Io = std.Io; -const isHexColor = @import("webapi/css/CSSStyleDeclaration.zig").isHexColor; +pub fn isHexColor(value: []const u8) bool { + if (value.len == 0) { + return false; + } + + if (value[0] != '#') { + return false; + } + + const hex_part = value[1..]; + switch (hex_part.len) { + 3, 4, 6, 8 => for (hex_part) |c| if (!std.ascii.isHex(c)) return false, + else => return false, + } + + return true; +} pub const RGBA = packed struct(u32) { r: u8, diff --git a/src/browser/webapi/css/CSSStyleDeclaration.zig b/src/browser/webapi/css/CSSStyleDeclaration.zig index ec986ea7..d50aed32 100644 --- a/src/browser/webapi/css/CSSStyleDeclaration.zig +++ b/src/browser/webapi/css/CSSStyleDeclaration.zig @@ -246,24 +246,6 @@ fn isInlineTag(tag_name: []const u8) bool { return false; } -pub fn isHexColor(value: []const u8) bool { - if (value.len == 0) { - return false; - } - - if (value[0] != '#') { - return false; - } - - const hex_part = value[1..]; - switch (hex_part.len) { - 3, 4, 6, 8 => for (hex_part) |c| if (!std.ascii.isHex(c)) return false, - else => return false, - } - - return true; -} - fn getDefaultColor(element: *const Element) []const u8 { switch (element._type) { .html => |html| {