overleaf/services/web/frontend/js/ide/preamble/services/preamble.js
Jakob Ackermann a6f05109a3 Merge pull request #5352 from overleaf/jpa-no-var
[misc] fix eslint violations for `no-var`

GitOrigin-RevId: c52e82f3a8a993b8662cc5aa56e7b95ca3c55832
2021-10-27 08:03:00 +00:00

44 lines
1.2 KiB
JavaScript

/* eslint-disable
max-len,
*/
// TODO: This file was created by bulk-decaffeinate.
// Fix any style issues and re-enable lint.
/*
* decaffeinate suggestions:
* DS102: Remove unnecessary code created because of implicit returns
* DS103: Rewrite code to no longer use __guard__
* Full docs: https://github.com/decaffeinate/decaffeinate/blob/master/docs/suggestions.md
*/
import App from '../../../base'
export default App.factory('preamble', function (ide) {
const Preamble = {
getPreambleText() {
const text = ide.editorManager.getCurrentDocValue().slice(0, 5000)
const preamble =
__guard__(text.match(/([^]*)^\\begin\{document\}/m), x => x[1]) || ''
return preamble
},
getGraphicsPaths() {
let match
const preamble = Preamble.getPreambleText()
const graphicsPathsArgs =
__guard__(preamble.match(/\\graphicspath\{(.*)\}/), x => x[1]) || ''
const paths = []
const re = /\{([^}]*)\}/g
while ((match = re.exec(graphicsPathsArgs))) {
paths.push(match[1])
}
return paths
},
}
return Preamble
})
function __guard__(value, transform) {
return typeof value !== 'undefined' && value !== null
? transform(value)
: undefined
}