check_overleafModuleImports.js 819 B

1234567891011121314151617181920212223242526
  1. function getOverleafModuleImports(settings) {
  2. return Object.keys(settings.overleafModuleImports).sort().join(',')
  3. }
  4. const CE_CONFIG = require('../config/settings.defaults')
  5. const PRO_CONFIG = require('../config/settings.overrides.server-pro')
  6. const SAAS_CONFIG = require('../config/settings.webpack')
  7. function main() {
  8. const CE = getOverleafModuleImports(CE_CONFIG)
  9. const PRO = getOverleafModuleImports(CE_CONFIG.mergeWith(PRO_CONFIG))
  10. const SAAS = getOverleafModuleImports(CE_CONFIG.mergeWith(SAAS_CONFIG))
  11. if (CE !== PRO) {
  12. throw new Error(
  13. 'settings.defaults is missing overleafModuleImports defined in settings.overrides.server-pro'
  14. )
  15. }
  16. if (CE !== SAAS) {
  17. throw new Error(
  18. 'settings.defaults is missing overleafModuleImports defined in settings.webpack'
  19. )
  20. }
  21. }
  22. main()