overleaf/services/web/frontend/js/ide/preamble/services/preamble.js
Alf Eaton 1be43911b4 Merge pull request #3942 from overleaf/prettier-trailing-comma
Set Prettier's "trailingComma" setting to "es5"

GitOrigin-RevId: 9f14150511929a855b27467ad17be6ab262fe5d5
2021-04-28 02:10:01 +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) {
var 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
}