CINXE.COM

Celonis

<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <title>Celonis</title> <base href="/" /> <link rel="preconnect" href="https://static.celonis.cloud" /> <link rel="dns-prefetch" href="https://static.celonis.cloud" /> <style nonce="062aa2ecee8dfcc4fa59f6cbee6bfa4d"> .celonis-loading { position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); text-align: center; color: #0a1f44; } .celonis-loading__logo { fill: currentColor; } .celonis-loading__label { font-size: 24px; font-weight: normal; letter-spacing: 2px; margin-bottom: 0; margin-top: 16px; font-family: 'Inter', Helvetica, Arial, sans-serif; } </style> </head> <body> <ems-shell> <!-- Loading --> <div class="celonis-loading"> <svg viewBox="0 0 150 150" width="150" height="150" class="celonis-loading__logo"> <path d="M120.8 14.6C111.4 5.2 100.8.2 90.1.2 78.4.1 74.6 6 69.7 13.5 65.4 20 60 28.2 47.5 37c-5.7 4-11.3 7.3-16.1 10.1-16 9.4-27.6 16.1-27.6 39.3 0 17.5 7.2 33.6 20.2 45.2 13.1 11.7 31.2 18.2 51 18.2 19.4 0 37.4-7.6 50.8-21.3a71.46 71.46 0 0 0 20.4-49.9c.1-23.3-9.9-48.5-25.4-64zm1.6 110.6A65.58 65.58 0 0 1 75 145c-18.7 0-35.6-6-47.8-17-12-10.7-18.5-25.5-18.5-41.6 0-20.3 9.5-25.9 25.2-35.1 4.9-2.9 10.6-6.2 16.5-10.3 13.3-9.4 19.2-18.3 23.5-24.8C78.6 8.7 81 5 90.1 5c9.4 0 18.8 4.5 27.3 13 14.4 14.5 24.1 38.9 24 60.7-.1 17.5-6.8 34-19 46.5z" /> <path d="M78.3 65.7c3-.1 6 .8 8.4 2.6 2.3 1.7 3.8 4.3 4.2 7.1h10.5c-1-5.6-3.5-10.1-7.6-13.3-4.1-3.3-9.2-4.9-15.4-4.9-4.3-.1-8.5.9-12.3 3-3.6 2-6.5 5-8.4 8.6-2.1 4-3.2 8.5-3 13-.1 4.6.9 9.1 3 13.1 1.9 3.6 4.8 6.6 8.4 8.5 3.8 2 8 3 12.3 3 6.2 0 11.3-1.7 15.4-5s6.6-7.8 7.6-13.4H90.9c-.5 2.8-2 5.4-4.2 7.2a13.3 13.3 0 0 1-8.4 2.6c-3.6.1-7.1-1.4-9.6-4.1-2.6-2.7-3.8-6.7-3.8-11.9s1.3-9.2 3.8-11.9c2.5-2.8 6-4.3 9.6-4.2z" /> </svg> <!--- Loading text ---> <p class="celonis-loading__label">LOADING</p> </div> </ems-shell> <script nonce="062aa2ecee8dfcc4fa59f6cbee6bfa4d"> window.nonce = '062aa2ecee8dfcc4fa59f6cbee6bfa4d'; window.__webpack_nonce__ = '062aa2ecee8dfcc4fa59f6cbee6bfa4d'; let cdn = '/'; const addScript = (url) => { const script = document.createElement('script'); script.setAttribute('crossorigin', 'anonymous'); script.type = 'text/javascript'; script.src = cdn + url; script.type = 'module'; script.nonce = '062aa2ecee8dfcc4fa59f6cbee6bfa4d'; document.body.appendChild(script); }; const addLink = (url, rel, type, media) => { const link = document.createElement('link'); link.href = cdn + url; link.nonce = '062aa2ecee8dfcc4fa59f6cbee6bfa4d'; type && (link.type = type); rel && (link.rel = rel); media && (link.media = media); document.querySelector('head').appendChild(link); }; const addPreloadLink = (url) => { const link = document.createElement('link'); link.href = url; link.rel = 'preload'; link.as = 'fetch'; link.crossOrigin = 'anonymous'; document.querySelector('head').appendChild(link); }; // Parse the current URL // Filter feature flag parameters // Preload initial data w/features propagated correctly // This must stay in sync with the logic in // libs/common/initializer/src/services/initial-data-initializer/initial-data-initializer.service.ts // in order to have a browser cache hit. const sourceSearchParams = new URLSearchParams(location.search); const features = sourceSearchParams.getAll('features'); let queryString = features.length > 0 ? `?features=${features.join(',')}` : ''; addPreloadLink(`/assets/ui/initialdata${queryString}`); if (sourceSearchParams.has('hl')) { queryString += `${queryString.length > 0 ? '&' : '?'}hl=${sourceSearchParams.get('hl')}`; } fetch(`/assets/ui/specifications${queryString}`) .then((res) => res.json()) .then(async (specifications) => { try { specifications.locale = new Intl.Locale(specifications.locale); } catch (e) { specifications.locale = new Intl.Locale('en-US'); } Object.defineProperty(window, 'specifications', { enumerable: false, configurable: false, writable: false, value: Object.freeze(specifications), }); let isLocalShell = false; if (specifications.purpose === 'localhost') { try { const shellManifest = await import(`/assets/apps-manifests/shell.mjs`); cdn = shellManifest.default.address; isLocalShell = true; } catch { cdn = specifications.cdn; } } else { cdn = specifications.cdn; } addLink('/assets/favicons/favicon.svg', 'icon', 'image/svg+xml'); addLink('/assets/favicons/favicon.png', 'icon', 'image/png', '(prefers-color-scheme: light)'); addLink( '/assets/favicons/favicon-inverted.png', 'icon', 'image/png', '(prefers-color-scheme: dark)' ); addLink( '/assets/favicons/apple-touch-icon.png', 'apple-touch-icon', 'image/png', '(prefers-color-scheme: light)' ); addLink( '/assets/favicons/apple-touch-icon-inverted.png', 'apple-touch-icon', 'image/png', '(prefers-color-scheme: dark)' ); addLink( '/assets/favicons/manifest.webmanifest', 'manifest', 'image/png', '(prefers-color-scheme: light)' ); addLink( '/assets/favicons/manifest-inverted.webmanifest', 'manifest', 'image/png', '(prefers-color-scheme: dark)' ); if (isLocalShell) { addScript('/shell/polyfills.js'); addScript('/shell/main.js'); } else { addScript(`/shell/${specifications.locale.language}/polyfills.js`); addScript(`/shell/${specifications.locale.language}/main.js`); } }); </script> </body> </html>