resolve static method

String resolve({
  1. required Object cacheKey,
  2. required String fontFaces,
  3. required ThemeSeed lightSeed,
  4. required ThemeSeed darkSeed,
  5. required FontConfig fonts,
  6. required RadiusConfig radius,
  7. required String componentCss(),
})

Implementation

static String resolve({
  required Object cacheKey,
  required String fontFaces,
  required ThemeSeed lightSeed,
  required ThemeSeed darkSeed,
  required FontConfig fonts,
  required RadiusConfig radius,
  required String Function() componentCss,
}) {
  final String? cached = _cache[cacheKey];
  if (cached != null) return cached;

  final ThemePalette lightPalette = PaletteGenerator.generate(lightSeed);
  final ThemePalette darkPalette = PaletteGenerator.generate(darkSeed);
  final String generated =
      '''
$fontFaces

${CssGenerator.generateBoth(light: lightPalette, dark: darkPalette, fonts: fonts, radius: radius)}

${ArcaneBaseCss.shared}

${componentCss()}
''';
  _cache[cacheKey] = generated;
  return generated;
}