mirror of
https://github.com/yu-i-i/overleaf-cep.git
synced 2026-06-03 06:09:02 +02:00
b831a0b3f7
* [clsi-lb] forward ?clsiserverid=cache requests to clsi-cache * [web] use clsi-cache in frontend * [web] upgrade compile from cache to full compile when triggered inflight * [web] fix pdf-js-viewer.spec.tsx tests -- add ?clsiserverid=foo to url * [web] fix renamed reference after merge * [web] fix download of other output files and use specific build * [web] consolidate validation of filename into ClsiCacheHandler * [web] remove unused projectName from getLatestBuildFromCache * [web] avoid hitting the same clsi-cache instance first all the time * [web] update documentation GitOrigin-RevId: d48265a7ba89d6731092640e1492bc9f103f5c33
30 lines
1.1 KiB
JavaScript
30 lines
1.1 KiB
JavaScript
import getMeta from '../../../utils/meta'
|
|
import { debugConsole } from '@/utils/debugging'
|
|
|
|
const hasTextEncoder = typeof TextEncoder !== 'undefined'
|
|
if (!hasTextEncoder) {
|
|
debugConsole.warn('TextEncoder is not available. Disabling pdf-caching.')
|
|
}
|
|
|
|
const isOpera =
|
|
Array.isArray(navigator.userAgentData?.brands) &&
|
|
navigator.userAgentData.brands.some(b => b.brand === 'Opera')
|
|
if (isOpera) {
|
|
debugConsole.warn('Browser cache is limited in Opera. Disabling pdf-caching.')
|
|
}
|
|
|
|
function isFlagEnabled(flag) {
|
|
if (!hasTextEncoder) return false
|
|
if (isOpera) return false
|
|
return getMeta('ol-splitTestVariants')?.[flag] === 'enabled'
|
|
}
|
|
|
|
export const cachedUrlLookupEnabled = isFlagEnabled(
|
|
'pdf-caching-cached-url-lookup'
|
|
)
|
|
export const prefetchingEnabled = isFlagEnabled('pdf-caching-prefetching')
|
|
export const prefetchLargeEnabled = isFlagEnabled('pdf-caching-prefetch-large')
|
|
export const enablePdfCaching = isFlagEnabled('pdf-caching-mode')
|
|
export const trackPdfDownloadEnabled = isFlagEnabled('track-pdf-download')
|
|
export const useClsiCache = isFlagEnabled('fall-back-to-clsi-cache')
|