/* global MathJax */ /* eslint-disable camelcase, max-len, no-useless-escape, */ // TODO: This file was created by bulk-decaffeinate. // Fix any style issues and re-enable lint. /* * decaffeinate suggestions: * DS101: Remove unnecessary use of Array.from * DS102: Remove unnecessary code created because of implicit returns * DS103: Rewrite code to no longer use __guard__ * DS207: Consider shorter variations of null checks * Full docs: https://github.com/decaffeinate/decaffeinate/blob/master/docs/suggestions.md */ import './libraries' import './infrastructure/error-reporter' import './modules/recursionHelper' import './modules/errorCatcher' import './modules/localStorage' import './modules/sessionStorage' const App = angular .module('SharelatexApp', [ 'ui.bootstrap', 'autocomplete', 'RecursionHelper', 'ng-context-menu', 'ngSanitize', 'ipCookie', 'ErrorCatcher', 'localStorage', 'sessionStorage', 'ngTagsInput', 'ui.select' ]) .config(function($qProvider, $httpProvider, uiSelectConfig) { $qProvider.errorOnUnhandledRejections(false) uiSelectConfig.spinnerClass = 'fa fa-refresh ui-select-spin' return __guard__( typeof MathJax !== 'undefined' && MathJax !== null ? MathJax.Hub : undefined, x => x.Config({ messageStyle: 'none', imageFont: null, 'HTML-CSS': { availableFonts: ['TeX'], // MathJax's automatic font scaling does not work well when we render math // that isn't yet on the page, so we disable it and set a global font // scale factor scale: 110, matchFontHeight: false }, TeX: { equationNumbers: { autoNumber: 'AMS' }, useLabelIDs: false }, skipStartupTypeset: true, tex2jax: { processEscapes: true, // Dollar delimiters are added by the mathjax directive inlineMath: [['\\(', '\\)']], displayMath: [['$$', '$$'], ['\\[', '\\]']] } }) ) }) App.run(($rootScope, $templateCache) => { const usersEmailElement = document.getElementById('ol-usersEmail') $rootScope.usersEmail = usersEmailElement && usersEmailElement.content // UI Select templates are hard-coded and use Glyphicon icons (which we don't import). // The line below simply overrides the hard-coded template with our own, which is // basically the same but using Font Awesome icons. $templateCache.put( 'bootstrap/match.tpl.html', '
{{$select.placeholder}}
' ) }) const sl_debugging = window.location.search.match(/debug=true/) window.sl_debugging = sl_debugging // make a global flag for debugging code window.sl_console = sl_debugging ? console : { log() {} } export default App function __guard__(value, transform) { return typeof value !== 'undefined' && value !== null ? transform(value) : undefined }