Просмотр исходного кода

move xss modules to src/lib/service

Yuki Takei 7 лет назад
Родитель
Сommit
a7e0f0b244

+ 2 - 1
config/webpack.common.js

@@ -57,7 +57,8 @@ module.exports = (options) => {
       modules: [helpers.root('node_modules')],
       alias: {
         '@root': helpers.root('/'),
-        '@commons': helpers.root('src/server'),
+        '@commons': helpers.root('src/lib'),
+        '@server': helpers.root('src/server'),  // TODO remove this alias
         '@tmp': helpers.root('tmp'),
         '@alias/logger': helpers.root('src/lib/service/logger'),
         '@alias/locales': helpers.root('resource/locales'),

+ 1 - 1
src/client/js/app.js

@@ -8,7 +8,7 @@ import io from 'socket.io-client';
 import i18nFactory from './i18n';
 
 import loggerFactory from '@alias/logger';
-import Xss from '@commons/util/xss';
+import Xss from '@commons/service/xss';
 
 import Crowi from './util/Crowi';
 // import CrowiRenderer from './util/CrowiRenderer';

+ 1 - 1
src/client/js/components/PageEditor/CodeMirrorEditor.js

@@ -3,7 +3,7 @@ import PropTypes from 'prop-types';
 
 import Modal from 'react-bootstrap/es/Modal';
 
-import InterceptorManager from '@commons/util/interceptor-manager';
+import InterceptorManager from '@server/util/interceptor-manager';
 
 import urljoin from 'url-join';
 const loadScript = require('simple-load-script');

+ 1 - 1
src/client/js/components/PageEditor/TextAreaEditor.js

@@ -3,7 +3,7 @@ import React from 'react';
 
 import FormControl from 'react-bootstrap/es/FormControl';
 
-import InterceptorManager from '@commons/util/interceptor-manager';
+import InterceptorManager from '@server/util/interceptor-manager';
 
 import AbstractEditor from './AbstractEditor';
 

+ 1 - 1
src/client/js/components/PageList/PageListMeta.js

@@ -14,7 +14,7 @@ export default class PageListMeta extends React.Component {
   render() {
     // TODO isPortal()
     const page = this.props.page;
-    const templateChecker = require('@commons/util/templateChecker');
+    const templateChecker = require('@server/util/templateChecker');
 
     // portal check
     let PortalLabel;

+ 1 - 1
src/client/js/legacy/crowi.js

@@ -10,7 +10,7 @@ import ReactDOM from 'react-dom';
 
 import { debounce } from 'throttle-debounce';
 
-const pagePathUtil = require('@commons/util/pagePathUtil');
+const pagePathUtil = require('@server/util/pagePathUtil');
 const entities = require('entities');
 const escapeStringRegexp = require('escape-string-regexp');
 require('jquery.cookie');

+ 1 - 1
src/client/js/util/Crowi.js

@@ -4,7 +4,7 @@
 
 import axios from 'axios';
 
-import InterceptorManager from '@commons/util/interceptor-manager';
+import InterceptorManager from '@server/util/interceptor-manager';
 
 import emojiStrategy from './emojione/emoji_strategy_shrinked.json';
 

+ 2 - 2
src/client/js/util/PreProcessor/XssFilter.js

@@ -1,5 +1,5 @@
-import Xss from '@commons/util/xss';
-import xssOption from '@commons/util/xssOption';
+import Xss from '@commons/service/xss';
+import xssOption from '@commons/service/xss/xssOption';
 
 export default class XssFilter {
 

+ 0 - 0
src/server/util/xss.js → src/lib/service/xss/index.js


+ 0 - 0
src/server/util/recommendedXssWhiteList.js → src/lib/service/xss/recommendedXssWhiteList.js


+ 1 - 1
src/server/util/xssOption.js → src/lib/service/xss/xssOption.js

@@ -1,7 +1,7 @@
 class XssOption {
 
   constructor(config) {
-    const recommendedXssWhiteList = require('../util/recommendedXssWhiteList');
+    const recommendedXssWhiteList = require('./recommendedXssWhiteList');
     const initializedConfig = (config != null) ? config : {};
 
     this.isEnabledXssPrevention = initializedConfig.isEnabledXssPrevention || true;

+ 1 - 1
src/server/crowi/index.js

@@ -4,6 +4,7 @@
 const debug = require('debug')('growi:crowi')
   , logger = require('@alias/logger')('growi:crowi')
   , pkg = require('@root/package.json')
+  , Xss = require('@commons/service/xss')
   , path = require('path')
   , sep = path.sep
 
@@ -11,7 +12,6 @@ const debug = require('debug')('growi:crowi')
 
   , models = require('../models')
 
-  , Xss = require('../util/xss')
   ;
 
 function Crowi(rootdir, env) {

+ 5 - 4
src/server/models/config.js

@@ -1,10 +1,8 @@
 module.exports = function(crowi) {
-  var mongoose = require('mongoose')
+  const mongoose = require('mongoose')
     , debug = require('debug')('growi:models:config')
     , uglifycss = require('uglifycss')
-    , recommendedXssWhiteList = require('../util/recommendedXssWhiteList')
-    , configSchema
-    , Config
+    , recommendedXssWhiteList = require('@commons/service/xss/recommendedXssWhiteList')
 
     , SECURITY_RESTRICT_GUEST_MODE_DENY = 'Deny'
     , SECURITY_RESTRICT_GUEST_MODE_READONLY = 'Readonly'
@@ -14,6 +12,9 @@ module.exports = function(crowi) {
     , SECURITY_REGISTRATION_MODE_CLOSED = 'Closed'
   ;
 
+  let configSchema;
+  let Config;
+
   configSchema = new mongoose.Schema({
     ns: { type: String, required: true, index: true },
     key: { type: String, required: true, index: true },

+ 4 - 4
src/server/routes/admin.js

@@ -1,7 +1,7 @@
 module.exports = function(crowi, app) {
   'use strict';
 
-  var debug = require('debug')('growi:routes:admin')
+  const debug = require('debug')('growi:routes:admin')
     , logger = require('@alias/logger')('growi:routes:admin')
     , fs = require('fs')
     , models = crowi.models
@@ -14,11 +14,11 @@ module.exports = function(crowi, app) {
     , Config = models.Config
     , GlobalNotificationSetting = models.GlobalNotificationSetting
     , GlobalNotificationMailSetting = models.GlobalNotificationMailSetting
-    , GlobalNotificationSlackSetting = models.GlobalNotificationSlackSetting
+    , GlobalNotificationSlackSetting = models.GlobalNotificationSlackSetting  // eslint-disable-line no-unused-vars
     , PluginUtils = require('../plugins/plugin-utils')
     , pluginUtils = new PluginUtils()
     , ApiResponse = require('../util/apiResponse')
-    , recommendedXssWhiteList = require('../util/recommendedXssWhiteList')
+    , recommendedXssWhiteList = require('@commons/service/xss/recommendedXssWhiteList')
 
     , MAX_PAGE_LIST = 50
     , actions = {};
@@ -1099,7 +1099,7 @@ module.exports = function(crowi, app) {
     debug('form content', form);
     await saveSettingAsync(form);
     const config = await crowi.getConfig();
-    
+
 
     // reset strategy
     await crowi.passportService.resetTwitterStrategy();