mirror of
https://github.com/yu-i-i/overleaf-cep.git
synced 2026-05-25 18:20:09 +02:00
* Remove bootstrap-3 entrypoint * Rename bootstrap-5 entrypoint to bootstrap * Restore entrypoints * Remove `bootstrap-5` and `bootstrap-3` entrypoints and a single `bootstrap.ts` file is now the default entrypoint * Update `bootstrap-5` component imports to `bootstrap` * Update `bootstrap-5` CSS imports to `bootstrap` * Remove the `isBootstrap5` utility * Remove `bootstrapVersion` * Remove `ol-bootstrapVersion` * Remove getCssThemeModifier * Update path and rename * Source format * Remove Bootstrap v3 and Bootstrap v5 alias npm packages * Remove bootstrap argument * Remove unused files * Update with the latest split tests * Remove remaining bootstrap5PageStatus * Update path GitOrigin-RevId: 7acda2f80114d2de8699e1f06729a2a29218e284
141 lines
3.7 KiB
Plaintext
141 lines
3.7 KiB
Plaintext
include ./_mixins/foot_scripts
|
|
|
|
doctype html
|
|
html(
|
|
lang=currentLngCode || 'en'
|
|
class=fixedSizeDocument ? 'fixed-size-document' : undefined
|
|
)
|
|
- metadata = metadata || {}
|
|
- let isWebsiteRedesign = false
|
|
- let isApplicationPage = false
|
|
- let enableIeeeBranding = true
|
|
|
|
block entrypointVar
|
|
|
|
block isApplicationPageVar
|
|
|
|
block vars
|
|
|
|
head
|
|
include ./_metadata.pug
|
|
|
|
//- Stylesheet
|
|
link(rel='stylesheet' href=buildCssPath() id='main-stylesheet')
|
|
block css
|
|
each file in entrypointStyles(entrypoint)
|
|
link(rel='stylesheet' href=file)
|
|
|
|
block _headLinks
|
|
|
|
if typeof suppressRelAlternateLinks == 'undefined'
|
|
if settings.i18n.subdomainLang
|
|
each subdomainDetails in settings.i18n.subdomainLang
|
|
if !subdomainDetails.hide
|
|
link(
|
|
rel='alternate'
|
|
href=subdomainDetails.url + currentUrl
|
|
hreflang=subdomainDetails.lngCode
|
|
)
|
|
|
|
if entrypoint !== 'marketing'
|
|
link(
|
|
rel='preload'
|
|
href=buildJsPath(currentLngCode + '-json.js')
|
|
as='script'
|
|
nonce=scriptNonce
|
|
)
|
|
|
|
//- Scripts
|
|
if typeof suppressAnalytics == 'undefined'
|
|
include _google_analytics
|
|
|
|
block meta
|
|
meta(name='ol-csrfToken' content=csrfToken)
|
|
//- Configure dynamically loaded assets (via webpack) to be downloaded from CDN
|
|
//- See: https://webpack.js.org/guides/public-path/#on-the-fly
|
|
meta(name='ol-baseAssetPath' content=buildBaseAssetPath())
|
|
meta(name='ol-mathJaxPath' content=mathJaxPath)
|
|
meta(name='ol-dictionariesRoot' content=dictionariesRoot)
|
|
|
|
meta(name='ol-usersEmail' content=getUserEmail())
|
|
meta(name='ol-ab' data-type='json' content={})
|
|
meta(name='ol-user_id' content=getLoggedInUserId())
|
|
//- Internationalisation settings
|
|
meta(
|
|
name='ol-i18n'
|
|
data-type='json'
|
|
content={
|
|
currentLangCode: currentLngCode,
|
|
}
|
|
)
|
|
//- Expose some settings globally to the frontend
|
|
meta(name='ol-ExposedSettings' data-type='json' content=ExposedSettings)
|
|
meta(
|
|
name='ol-splitTestVariants'
|
|
data-type='json'
|
|
content=splitTestVariants || {}
|
|
)
|
|
meta(name='ol-splitTestInfo' data-type='json' content=splitTestInfo || {})
|
|
|
|
if typeof settings.algolia != 'undefined'
|
|
meta(
|
|
name='ol-algolia'
|
|
data-type='json'
|
|
content={
|
|
appId: settings.algolia.app_id,
|
|
apiKey: settings.algolia.read_only_api_key,
|
|
indexes: settings.algolia.indexes,
|
|
}
|
|
)
|
|
|
|
meta(
|
|
name='ol-isManagedAccount'
|
|
data-type='boolean'
|
|
content=isManagedAccount
|
|
)
|
|
each restriction in userRestrictions || []
|
|
meta(name='ol-cannot-' + restriction data-type='boolean' content)
|
|
|
|
block head-scripts
|
|
|
|
body(
|
|
class={
|
|
'thin-footer': showThinFooter,
|
|
'website-redesign': isWebsiteRedesign === true || websiteRedesignOverride,
|
|
'application-page': isApplicationPage,
|
|
}
|
|
data-theme='default'
|
|
)
|
|
if settings.recaptcha && settings.recaptcha.siteKeyV3
|
|
script(
|
|
type='text/javascript'
|
|
nonce=scriptNonce
|
|
src='https://www.recaptcha.net/recaptcha/api.js?render=' + settings.recaptcha.siteKeyV3
|
|
defer=deferScripts
|
|
)
|
|
|
|
if typeof suppressSkipToContent == 'undefined'
|
|
a(class='skip-to-content' href='#main-content') #{translate('skip_to_content')}
|
|
|
|
block body
|
|
|
|
if settings.devToolbar.enabled
|
|
#dev-toolbar
|
|
|
|
block foot-scripts
|
|
+foot-scripts
|
|
|
|
include _customer_io
|
|
|
|
script(type='text/javascript' nonce=scriptNonce).
|
|
window.addEventListener('DOMContentLoaded', function () {
|
|
//- Look for bundle
|
|
var cdnBlocked = typeof Frontend === 'undefined'
|
|
//- Prevent loops
|
|
var noCdnAlreadyInUrl = window.location.href.indexOf('nocdn=true') != -1
|
|
if (cdnBlocked && !noCdnAlreadyInUrl && navigator.userAgent.indexOf('Googlebot') == -1) {
|
|
//- Set query param, server will not set CDN url
|
|
window.location.search += '&nocdn=true'
|
|
}
|
|
})
|