Spaces:
Running
on
Zero
Running
on
Zero
Minor Update
Browse files- style_20250314.css +2 -2
- utils/color_utils.py +15 -0
- utils/file_utils.py +27 -1
style_20250314.css
CHANGED
@@ -18,11 +18,11 @@
|
|
18 |
font-size: 1.2em !important;
|
19 |
font-weight: bold;
|
20 |
text-align: center;
|
21 |
-
background-color: rgba(242, 218, 163, 0.62)
|
22 |
}
|
23 |
|
24 |
.dark .gradio-container.gradio-container-5-23-3 .contain .intro .prose {
|
25 |
-
background-color: rgba(41, 18, 5, 0.38) !important
|
26 |
}
|
27 |
.toast-body.info {
|
28 |
background-color: rgba(242, 218, 163, 0.75);
|
|
|
18 |
font-size: 1.2em !important;
|
19 |
font-weight: bold;
|
20 |
text-align: center;
|
21 |
+
/*background-color: rgba(242, 218, 163, 0.62);*/
|
22 |
}
|
23 |
|
24 |
.dark .gradio-container.gradio-container-5-23-3 .contain .intro .prose {
|
25 |
+
/*background-color: rgba(41, 18, 5, 0.38) !important;*/
|
26 |
}
|
27 |
.toast-body.info {
|
28 |
background-color: rgba(242, 218, 163, 0.75);
|
utils/color_utils.py
CHANGED
@@ -135,6 +135,21 @@ def detect_color_format(color):
|
|
135 |
# If none of the above conversions work, raise an error
|
136 |
raise ValueError(f"Invalid color format: {color}")
|
137 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
138 |
|
139 |
def update_color_opacity(color, opacity):
|
140 |
"""
|
|
|
135 |
# If none of the above conversions work, raise an error
|
136 |
raise ValueError(f"Invalid color format: {color}")
|
137 |
|
138 |
+
def rgba_to_tuple(rgba):
|
139 |
+
"""
|
140 |
+
Converts an RGBA color in the format RGBA(r, g, b, a) to a tuple (r, g, b, a).
|
141 |
+
|
142 |
+
Args:
|
143 |
+
rgba (str): The RGBA color string in the format RGBA(r, g, b, a).
|
144 |
+
|
145 |
+
Returns:
|
146 |
+
tuple: A tuple (r, g, b, a) with int values.
|
147 |
+
"""
|
148 |
+
match = re.match(r'rgba\(\s*([0-9.]+),\s*([0-9.]+),\s*([0-9.]+),\s*([0-9.]+)\s*\)', rgba, re.IGNORECASE)
|
149 |
+
if match:
|
150 |
+
rgba_floats = tuple(map(float, match.groups()))
|
151 |
+
return tuple(map(int,rgba_floats))
|
152 |
+
raise ValueError(f"Invalid RGBA format: {rgba}")
|
153 |
|
154 |
def update_color_opacity(color, opacity):
|
155 |
"""
|
utils/file_utils.py
CHANGED
@@ -77,4 +77,30 @@ def convert_title_to_filename(title):
|
|
77 |
def get_filename_from_filepath(filepath):
|
78 |
file_name = os.path.basename(filepath)
|
79 |
file_base, file_extension = os.path.splitext(file_name)
|
80 |
-
return file_base, file_extension
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
77 |
def get_filename_from_filepath(filepath):
|
78 |
file_name = os.path.basename(filepath)
|
79 |
file_base, file_extension = os.path.splitext(file_name)
|
80 |
+
return file_base, file_extension
|
81 |
+
|
82 |
+
def get_unique_file_path(directory, filename, file_ext, counter=0):
|
83 |
+
"""
|
84 |
+
Recursively increments the filename until a unique path is found.
|
85 |
+
|
86 |
+
Parameters:
|
87 |
+
directory (str): The directory for the file.
|
88 |
+
filename (str): The base filename.
|
89 |
+
file_ext (str): The file extension including the leading dot.
|
90 |
+
counter (int): The current counter value to append.
|
91 |
+
|
92 |
+
Returns:
|
93 |
+
str: A unique file path that does not exist.
|
94 |
+
"""
|
95 |
+
if counter == 0:
|
96 |
+
filepath = os.path.join(directory, f"{filename}{file_ext}")
|
97 |
+
else:
|
98 |
+
filepath = os.path.join(directory, f"{filename}{counter}{file_ext}")
|
99 |
+
|
100 |
+
if not os.path.exists(filepath):
|
101 |
+
return filepath
|
102 |
+
else:
|
103 |
+
return get_unique_file_path(directory, filename, file_ext, counter + 1)
|
104 |
+
|
105 |
+
# Example usage:
|
106 |
+
# new_file_path = get_unique_file_path(video_dir, title_file_name, video_new_ext)
|