{"version":3,"file":"transitionLayers.cjs","names":[],"sources":["../../src/composition/transitionLayers.ts"],"sourcesContent":["import type { MajorModesConfig } from '@agimon-ai/doompi-config/majorModes';\nexport function extensionLayers(config: MajorModesConfig, names: readonly string[]): string[] {\n  return names.filter((name) => {\n    const layer = config.layers[name];\n    return Boolean(layer && ((layer.extensions?.length ?? 0) > 0 || (layer.packages?.length ?? 0) > 0));\n  });\n}\n\nexport function needsRelaunch(config: MajorModesConfig, before: readonly string[], after: readonly string[]): boolean {\n  const previous = extensionLayers(config, before);\n  const candidate = extensionLayers(config, after);\n  return previous.length !== candidate.length || previous.some((name, index) => name !== candidate[index]);\n}\n"],"mappings":";AACA,SAAgB,gBAAgB,QAA0B,OAAoC;CAC5F,OAAO,MAAM,QAAQ,SAAS;EAC5B,MAAM,QAAQ,OAAO,OAAO;EAC5B,OAAO,QAAQ,WAAW,MAAM,YAAY,UAAU,KAAK,MAAM,MAAM,UAAU,UAAU,KAAK,EAAE;CACpG,CAAC;AACH;AAEA,SAAgB,cAAc,QAA0B,QAA2B,OAAmC;CACpH,MAAM,WAAW,gBAAgB,QAAQ,MAAM;CAC/C,MAAM,YAAY,gBAAgB,QAAQ,KAAK;CAC/C,OAAO,SAAS,WAAW,UAAU,UAAU,SAAS,MAAM,MAAM,UAAU,SAAS,UAAU,MAAM;AACzG"}