mirror of
https://github.com/yu-i-i/overleaf-cep.git
synced 2026-05-23 17:19:37 +02:00
Convert to ES modules
GitOrigin-RevId: ec8d55634306caa6a013daa4dc0ce0a3ffbcc3f0
This commit is contained in:
@@ -1,18 +1,19 @@
|
||||
const minimist = require('minimist')
|
||||
const {
|
||||
/* eslint-disable @overleaf/require-script-runner */
|
||||
import minimist from 'minimist'
|
||||
import {
|
||||
mkdirSync,
|
||||
createWriteStream,
|
||||
existsSync,
|
||||
unlinkSync,
|
||||
renameSync,
|
||||
} = require('fs')
|
||||
const mongodb = require('../app/src/infrastructure/mongodb')
|
||||
const DocumentUpdaterHandler = require('../app/src/Features/DocumentUpdater/DocumentUpdaterHandler.js')
|
||||
const ProjectZipStreamManager = require('../app/src/Features/Downloads/ProjectZipStreamManager.js')
|
||||
const logger = require('logger-sharelatex')
|
||||
const { Project } = require('../app/src/models/Project.js')
|
||||
const { User } = require('../app/src/models/User.js')
|
||||
const readline = require('readline')
|
||||
} from 'fs'
|
||||
import mongodb from '../../../app/src/infrastructure/mongodb.js'
|
||||
import DocumentUpdaterHandler from '../../../app/src/Features/DocumentUpdater/DocumentUpdaterHandler.js'
|
||||
import ProjectZipStreamManager from '../../../app/src/Features/Downloads/ProjectZipStreamManager.js'
|
||||
import logger from 'logger-sharelatex'
|
||||
import { Project } from '../../../app/src/models/Project.js'
|
||||
import { User } from '../../../app/src/models/User.js'
|
||||
import readline from 'readline'
|
||||
|
||||
function parseArgs() {
|
||||
return minimist(process.argv.slice(2), {
|
||||
|
||||
@@ -1,19 +1,22 @@
|
||||
const Path = require('path')
|
||||
const DocstoreManager = require('../app/src/Features/Docstore/DocstoreManager')
|
||||
const DocumentUpdaterHandler = require('../app/src/Features/DocumentUpdater/DocumentUpdaterHandler')
|
||||
const ProjectGetter = require('../app/src/Features/Project/ProjectGetter')
|
||||
const ProjectEntityMongoUpdateHandler = require('../app/src/Features/Project/ProjectEntityMongoUpdateHandler')
|
||||
const { waitForDb, db, ObjectId } = require('../app/src/infrastructure/mongodb')
|
||||
const HistoryManager = require('../app/src/Features/History/HistoryManager')
|
||||
const logger = require('@overleaf/logger').logger
|
||||
import { scriptRunner } from './lib/ScriptRunner.mjs'
|
||||
import Path from 'node:path'
|
||||
import DocstoreManager from '../app/src/Features/Docstore/DocstoreManager.js'
|
||||
import DocumentUpdaterHandler from '../app/src/Features/DocumentUpdater/DocumentUpdaterHandler.js'
|
||||
import ProjectGetter from '../app/src/Features/Project/ProjectGetter.js'
|
||||
import ProjectEntityMongoUpdateHandler from '../app/src/Features/Project/ProjectEntityMongoUpdateHandler.js'
|
||||
import { waitForDb, db, ObjectId } from '../app/src/infrastructure/mongodb.js'
|
||||
import HistoryManager from '../app/src/Features/History/HistoryManager.js'
|
||||
import logger from '@overleaf/logger'
|
||||
import minimist from 'minimist'
|
||||
|
||||
const args = require('minimist')(process.argv.slice(2), {
|
||||
const args = minimist(process.argv.slice(2), {
|
||||
boolean: ['verbose', 'fix'],
|
||||
})
|
||||
|
||||
const verbose = args.verbose
|
||||
|
||||
if (!verbose) {
|
||||
logger.level('error')
|
||||
logger.logger.level('error')
|
||||
}
|
||||
|
||||
// no remaining arguments, print usage
|
||||
@@ -254,7 +257,7 @@ async function main() {
|
||||
}
|
||||
}
|
||||
|
||||
main()
|
||||
scriptRunner(main, args)
|
||||
.then(() => {
|
||||
console.log('DONE')
|
||||
process.exit(0)
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
const csv = require('csv')
|
||||
const fs = require('fs')
|
||||
const minimist = require('minimist')
|
||||
const { User } = require('../app/src/models/User')
|
||||
import { scriptRunner } from './lib/ScriptRunner.mjs'
|
||||
import * as csv from 'csv'
|
||||
import fs from 'node:fs'
|
||||
import minimist from 'minimist'
|
||||
import { User } from '../app/src/models/User.js'
|
||||
|
||||
/**
|
||||
* This script extracts users who churned after day 1 - ie. their last session was within 24 hours of registering
|
||||
@@ -205,9 +206,9 @@ async function getDay1ChurnUsers({
|
||||
return allChurnUsers
|
||||
}
|
||||
|
||||
async function runScript() {
|
||||
const args = parseArgs()
|
||||
const args = parseArgs()
|
||||
|
||||
async function runScript() {
|
||||
console.log(
|
||||
`Starting Day 1 churn extraction with lookback period: ${args.lookbackMonths} months`
|
||||
)
|
||||
@@ -268,7 +269,7 @@ async function runScript() {
|
||||
)
|
||||
}
|
||||
|
||||
runScript().catch(err => {
|
||||
scriptRunner(runScript, args).catch(err => {
|
||||
console.error('Script failed:', err)
|
||||
process.exit(1)
|
||||
})
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
const csv = require('csv')
|
||||
const fs = require('fs')
|
||||
const {
|
||||
OnboardingDataCollection,
|
||||
} = require('../app/src/models/OnboardingDataCollection')
|
||||
import { scriptRunner } from './lib/ScriptRunner.mjs'
|
||||
import * as csv from 'csv'
|
||||
import fs from 'node:fs'
|
||||
import { OnboardingDataCollection } from '../app/src/models/OnboardingDataCollection.js'
|
||||
|
||||
/**
|
||||
* This script extracts the OnboardingDataCollection collection from the database
|
||||
@@ -90,7 +89,7 @@ const runScript = async () => {
|
||||
csvWriter.on('error', err => console.error('CSV Writer Error:', err))
|
||||
}
|
||||
|
||||
runScript().catch(err => {
|
||||
scriptRunner(runScript).catch(err => {
|
||||
console.error(err)
|
||||
process.exit(1)
|
||||
})
|
||||
|
||||
@@ -1,13 +1,12 @@
|
||||
const csv = require('csv')
|
||||
const fs = require('fs')
|
||||
const minimist = require('minimist')
|
||||
const {
|
||||
OnboardingDataCollection,
|
||||
} = require('../app/src/models/OnboardingDataCollection')
|
||||
const { User } = require('../app/src/models/User')
|
||||
const SubscriptionLocator = require('../app/src/Features/Subscription/SubscriptionLocator')
|
||||
const Settings = require('@overleaf/settings')
|
||||
const { fetchJson } = require('@overleaf/fetch-utils')
|
||||
import { scriptRunner } from './lib/ScriptRunner.mjs'
|
||||
import * as csv from 'csv'
|
||||
import fs from 'node:fs'
|
||||
import minimist from 'minimist'
|
||||
import { OnboardingDataCollection } from '../app/src/models/OnboardingDataCollection.js'
|
||||
import { User } from '../app/src/models/User.js'
|
||||
import SubscriptionLocator from '../app/src/Features/Subscription/SubscriptionLocator.js'
|
||||
import Settings from '@overleaf/settings'
|
||||
import { fetchJson } from '@overleaf/fetch-utils'
|
||||
|
||||
/**
|
||||
* This script extracts ODC data with some extra fields, and filters on registration date and LaTeX experience
|
||||
@@ -146,12 +145,11 @@ async function getUserCountries(institutions) {
|
||||
}
|
||||
return countryCodes
|
||||
}
|
||||
const args = parseArgs()
|
||||
|
||||
async function runScript() {
|
||||
const columns = ['email']
|
||||
|
||||
const args = parseArgs()
|
||||
|
||||
if (args.includeSignUpDate) {
|
||||
columns.push('signUpDate')
|
||||
}
|
||||
@@ -196,7 +194,7 @@ async function runScript() {
|
||||
)
|
||||
}
|
||||
|
||||
runScript().catch(err => {
|
||||
scriptRunner(runScript, args).catch(err => {
|
||||
console.error(err)
|
||||
process.exit(1)
|
||||
})
|
||||
|
||||
@@ -1,33 +1,35 @@
|
||||
const { buildParserFile } = require('@lezer/generator')
|
||||
const { writeFileSync, readFileSync } = require('fs')
|
||||
const path = require('path')
|
||||
/* eslint-disable @overleaf/require-script-runner */
|
||||
// This script doesn't work with ScriptRunner because it is run during the build process.
|
||||
import { buildParserFile } from '@lezer/generator'
|
||||
import { writeFileSync, readFileSync } from 'node:fs'
|
||||
import path from 'node:path'
|
||||
|
||||
const grammars = [
|
||||
{
|
||||
grammarPath: path.resolve(
|
||||
__dirname,
|
||||
import.meta.dirname,
|
||||
'../../frontend/js/features/source-editor/lezer-latex/latex.grammar'
|
||||
),
|
||||
parserOutputPath: path.resolve(
|
||||
__dirname,
|
||||
import.meta.dirname,
|
||||
'../../frontend/js/features/source-editor/lezer-latex/latex.mjs'
|
||||
),
|
||||
termsOutputPath: path.resolve(
|
||||
__dirname,
|
||||
import.meta.dirname,
|
||||
'../../frontend/js/features/source-editor/lezer-latex/latex.terms.mjs'
|
||||
),
|
||||
},
|
||||
{
|
||||
grammarPath: path.resolve(
|
||||
__dirname,
|
||||
import.meta.dirname,
|
||||
'../../frontend/js/features/source-editor/lezer-bibtex/bibtex.grammar'
|
||||
),
|
||||
parserOutputPath: path.resolve(
|
||||
__dirname,
|
||||
import.meta.dirname,
|
||||
'../../frontend/js/features/source-editor/lezer-bibtex/bibtex.mjs'
|
||||
),
|
||||
termsOutputPath: path.resolve(
|
||||
__dirname,
|
||||
import.meta.dirname,
|
||||
'../../frontend/js/features/source-editor/lezer-bibtex/bibtex.terms.mjs'
|
||||
),
|
||||
},
|
||||
@@ -56,9 +58,12 @@ function compile(grammar) {
|
||||
console.info('Done!')
|
||||
}
|
||||
|
||||
module.exports = { compile, grammars }
|
||||
export default { compile, grammars }
|
||||
|
||||
if (require.main === module) {
|
||||
if (
|
||||
import.meta.url === process.argv[1] ||
|
||||
import.meta.url === `file://${process.argv[1]}`
|
||||
) {
|
||||
try {
|
||||
grammars.forEach(compile)
|
||||
process.exit(0)
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
// @ts-check
|
||||
|
||||
const _ = require('lodash')
|
||||
const recurly = require('recurly')
|
||||
const minimist = require('minimist')
|
||||
const Settings = require('@overleaf/settings')
|
||||
import { scriptRunner } from '../lib/ScriptRunner.mjs'
|
||||
import _ from 'lodash'
|
||||
import recurly from 'recurly'
|
||||
import minimist from 'minimist'
|
||||
import Settings from '@overleaf/settings'
|
||||
|
||||
const ADD_ON_CODE = 'assistant'
|
||||
const ADD_ON_NAME = 'AI Assist'
|
||||
@@ -209,7 +209,7 @@ function getAddOnConfig(prices) {
|
||||
}
|
||||
}
|
||||
|
||||
main()
|
||||
scriptRunner(main)
|
||||
.then(() => {
|
||||
process.exit(0)
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user