MCPcopy Index your code
hub / github.com/simstudioai/sim / applyColorModifiers

Function applyColorModifiers

apps/sim/lib/pptx-renderer/utils/color.ts:162–218  ·  view source on GitHub ↗
(
  hex: string,
  modifiers: ColorModifier[]
)

Source from the content-addressed store, hash-verified

160 * Returns the final hex color and alpha value.
161 */
162export function applyColorModifiers(
163 hex: string,
164 modifiers: ColorModifier[]
165): { color: string; alpha: number } {
166 let color = hex
167 let alpha = 1
168
169 for (const mod of modifiers) {
170 switch (mod.name) {
171 case 'tint':
172 case 'a:tint':
173 color = applyTint(color, mod.val)
174 break
175 case 'shade':
176 case 'a:shade':
177 color = applyShade(color, mod.val)
178 break
179 case 'lumMod':
180 case 'a:lumMod':
181 color = applyLumMod(color, mod.val)
182 break
183 case 'lumOff':
184 case 'a:lumOff':
185 color = applyLumOff(color, mod.val)
186 break
187 case 'satMod':
188 case 'a:satMod':
189 color = applySatMod(color, mod.val)
190 break
191 case 'hueMod':
192 case 'a:hueMod':
193 color = applyHueMod(color, mod.val)
194 break
195 case 'hueOff':
196 case 'a:hueOff':
197 color = applyHueOff(color, mod.val)
198 break
199 case 'satOff':
200 case 'a:satOff':
201 color = applySatOff(color, mod.val)
202 break
203 case 'alpha':
204 case 'a:alpha':
205 alpha = applyAlpha(mod.val)
206 break
207 case 'alphaOff':
208 case 'a:alphaOff':
209 alpha = Math.max(0, Math.min(1, alpha + mod.val / 100000))
210 break
211 default:
212 // Unknown modifier - skip silently
213 break
214 }
215 }
216
217 return { color, alpha }
218}
219

Callers 2

resolveColorUncachedFunction · 0.90
resolveLineStyleFunction · 0.90

Calls 9

applyTintFunction · 0.85
applyShadeFunction · 0.85
applyLumModFunction · 0.85
applyLumOffFunction · 0.85
applySatModFunction · 0.85
applyHueModFunction · 0.85
applyHueOffFunction · 0.85
applySatOffFunction · 0.85
applyAlphaFunction · 0.85

Tested by

no test coverage detected