randomize-biases.ts — ui Source File
Architecture documentation for randomize-biases.ts, a typescript file in the ui codebase. 2 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR df343824_4cf7_9acf_b32f_d24333834c03["randomize-biases.ts"] 181dc3d7_6787_1cda_62bd_34c7ec49be1c["fonts.ts"] df343824_4cf7_9acf_b32f_d24333834c03 --> 181dc3d7_6787_1cda_62bd_34c7ec49be1c f14cf7ca_f213_afc2_bc66_ebc0fb7d9834["config"] df343824_4cf7_9acf_b32f_d24333834c03 --> f14cf7ca_f213_afc2_bc66_ebc0fb7d9834 style df343824_4cf7_9acf_b32f_d24333834c03 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
import type {
BaseColorName,
Radius,
StyleName,
ThemeName,
} from "@/registry/config"
import { type FONTS } from "./fonts"
export type RandomizeContext = {
style?: StyleName
baseColor?: BaseColorName
theme?: ThemeName
iconLibrary?: string
font?: string
menuAccent?: string
menuColor?: string
radius?: string
}
export type BiasFilter<T> = (
items: readonly T[],
context: RandomizeContext
) => readonly T[]
export type RandomizeBiases = {
fonts?: BiasFilter<(typeof FONTS)[number]>
radius?: BiasFilter<Radius>
// Add more bias filters as needed:
// styles?: BiasFilter<Style>
// baseColors?: BiasFilter<BaseColor>
// themes?: BiasFilter<Theme>
// etc.
}
/**
* Configuration for randomization biases.
* Add biases here to influence random selection based on context.
*/
export const RANDOMIZE_BIASES: RandomizeBiases = {
fonts: (fonts, context) => {
// When style is lyra, only use mono fonts.
if (context.style === "lyra") {
return fonts.filter((font) => font.value === "jetbrains-mono")
}
return fonts
},
radius: (radii, context) => {
// When style is lyra, always use "none" radius
if (context.style === "lyra") {
return radii.filter((radius) => radius.name === "none")
}
return radii
},
// Add more biases here as needed:
// Example: When baseColor is "blue", prefer certain themes
// themes: (themes, context) => {
// if (context.baseColor === "blue") {
// return themes.filter(theme => theme.name.includes("dark"))
// }
// return themes
// },
}
/**
* Applies biases to a list of items based on the current context.
*/
export function applyBias<T>(
items: readonly T[],
context: RandomizeContext,
biasFilter?: BiasFilter<T>
): readonly T[] {
if (!biasFilter) {
return items
}
return biasFilter(items, context)
}
Domain
Subdomains
Dependencies
- config
- fonts.ts
Source
Frequently Asked Questions
What does randomize-biases.ts do?
randomize-biases.ts is a source file in the ui codebase, written in typescript. It belongs to the DesignEngine domain, Transformers subdomain.
What functions are defined in randomize-biases.ts?
randomize-biases.ts defines 4 function(s): RANDOMIZE_BIASES.fonts, RANDOMIZE_BIASES.radius, applyBias, items.
What does randomize-biases.ts depend on?
randomize-biases.ts imports 2 module(s): config, fonts.ts.
Where is randomize-biases.ts in the architecture?
randomize-biases.ts is located at apps/v4/app/(create)/lib/randomize-biases.ts (domain: DesignEngine, subdomain: Transformers, directory: apps/v4/app/(create)/lib).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free