Fix/SW-2401 share cache in prod * fix: reuse cache between prod and pre-prod * tests: add tests for generating cachePrefix * tests: remove unnecessary reset of process.env * tests: add tests for generateCacheKey * fix: make sure that we don't get invalid cacheKeys * fix: make sure that we don't get invalid cacheKeys Approved-by: Linus Flood
16 lines
382 B
TypeScript
16 lines
382 B
TypeScript
import { getPrefix } from "./getPrefix"
|
|
|
|
export function generateCacheKey(key: string | string[]): string {
|
|
const keyArray = (Array.isArray(key) ? key : [key]).filter(Boolean)
|
|
|
|
if (keyArray.length === 0) {
|
|
throw new Error("No keys provided")
|
|
}
|
|
|
|
const prefix = getPrefix()
|
|
|
|
const keyTokens = [prefix, keyArray.join("_")].filter(Boolean).join(":")
|
|
|
|
return keyTokens
|
|
}
|