

import FiledGroupTable from "@views/codegen/form/tables/FiledGroupTable";

export default function() {
  let components = {
    './modules/aitest/onlinetest.mixins': FiledGroupTable,
    './modules/aitest/onlinetest.mixins.js': FiledGroupTable,
    './modules/online/cgform/OnlCgformCopyList': FiledGroupTable,
    './modules/online/cgform/OnlCgformCopyList.vue': FiledGroupTable,
    './modules/online/cgform/OnlCgformHeadList': FiledGroupTable,
    './modules/online/cgform/OnlCgformHeadList.vue': FiledGroupTable,
    './modules/online/cgform/auth/AuthManager': FiledGroupTable,
    './modules/online/cgform/auth/AuthManager.vue': FiledGroupTable,
    './modules/online/cgform/auth/AuthSetter': FiledGroupTable,
    './modules/online/cgform/auth/AuthSetter.vue': FiledGroupTable,
    './modules/online/cgform/auth/AuthTree': FiledGroupTable,
    './modules/online/cgform/auth/AuthTree.vue': FiledGroupTable,
    './modules/online/cgform/auth/LsDepart': FiledGroupTable,
    './modules/online/cgform/auth/LsDepart.vue': FiledGroupTable,
    './modules/online/cgform/auth/LsRole': FiledGroupTable,
    './modules/online/cgform/auth/LsRole.vue': FiledGroupTable,
    './modules/online/cgform/auth/LsUser': FiledGroupTable,
    './modules/online/cgform/auth/LsUser.vue': FiledGroupTable,
    './modules/online/cgform/auth/manager/AuthButtonConfig': FiledGroupTable,
    './modules/online/cgform/auth/manager/AuthButtonConfig.vue': FiledGroupTable,
    './modules/online/cgform/auth/manager/AuthColumnConfig': FiledGroupTable,
    './modules/online/cgform/auth/manager/AuthColumnConfig.vue': FiledGroupTable,
    './modules/online/cgform/auth/manager/AuthDataConfig': FiledGroupTable,
    './modules/online/cgform/auth/manager/AuthDataConfig.vue': FiledGroupTable,
    './modules/online/cgform/auth/setter/AuthButtonTree': FiledGroupTable,
    './modules/online/cgform/auth/setter/AuthButtonTree.vue': FiledGroupTable,
    './modules/online/cgform/auth/setter/AuthColumnTree': FiledGroupTable,
    './modules/online/cgform/auth/setter/AuthColumnTree.vue': FiledGroupTable,
    './modules/online/cgform/auth/setter/AuthDataTree': FiledGroupTable,
    './modules/online/cgform/auth/setter/AuthDataTree.vue': FiledGroupTable,
    './modules/online/cgform/auto/OnlCgformAutoList': FiledGroupTable,
    './modules/online/cgform/auto/OnlCgformAutoList.vue': FiledGroupTable,
    './modules/online/cgform/auto/OnlCgformAutoModal': FiledGroupTable,
    './modules/online/cgform/auto/OnlCgformAutoModal.vue': FiledGroupTable,
    './modules/online/cgform/auto/OnlCgformCustomModal': FiledGroupTable,
    './modules/online/cgform/auto/OnlCgformCustomModal.vue': FiledGroupTable,
    './modules/online/cgform/auto/OnlCgformTreeList': FiledGroupTable,
    './modules/online/cgform/auto/OnlCgformTreeList.vue': FiledGroupTable,
    './modules/online/cgform/auto/OnldfComponent': FiledGroupTable,
    './modules/online/cgform/auto/OnldfComponent.vue': FiledGroupTable,
    './modules/online/cgform/auto/OnlineDynamicForm': FiledGroupTable,
    './modules/online/cgform/auto/OnlineDynamicForm.vue': FiledGroupTable,
    './modules/online/cgform/auto/OnlineDynamicViewForm': FiledGroupTable,
    './modules/online/cgform/auto/OnlineDynamicViewForm.vue': FiledGroupTable,
    './modules/online/cgform/auto/common/CgformAutoListButtons': FiledGroupTable,
    './modules/online/cgform/auto/common/CgformAutoListButtons.vue': FiledGroupTable,
    './modules/online/cgform/auto/common/CgformAutoListMixins': FiledGroupTable,
    './modules/online/cgform/auto/common/CgformAutoListMixins.js': FiledGroupTable,
    './modules/online/cgform/auto/common/CgformAutoListQueryParams': FiledGroupTable,
    './modules/online/cgform/auto/common/CgformAutoListQueryParams.vue': FiledGroupTable,
    './modules/online/cgform/auto/common/CgformAutoListTable': FiledGroupTable,
    './modules/online/cgform/auto/common/CgformAutoListTable.vue': FiledGroupTable,
    './modules/online/cgform/auto/common/CgformAutoListTableWrap': FiledGroupTable,
    './modules/online/cgform/auto/common/CgformAutoListTableWrap.js': FiledGroupTable,
    './modules/online/cgform/auto/erp/OnlCgformErpList': FiledGroupTable,
    './modules/online/cgform/auto/erp/OnlCgformErpList.vue': FiledGroupTable,
    './modules/online/cgform/auto/erp/OnlErpCustomModal': FiledGroupTable,
    './modules/online/cgform/auto/erp/OnlErpCustomModal.vue': FiledGroupTable,
    './modules/online/cgform/auto/erp/OnlineCommonList': FiledGroupTable,
    './modules/online/cgform/auto/erp/OnlineCommonList.vue': FiledGroupTable,
    './modules/online/cgform/auto/erp/OnlineCommonModal': FiledGroupTable,
    './modules/online/cgform/auto/erp/OnlineCommonModal.vue': FiledGroupTable,
    './modules/online/cgform/auto/innerTable/AutoInnerSubTable': FiledGroupTable,
    './modules/online/cgform/auto/innerTable/AutoInnerSubTable.vue': FiledGroupTable,
    './modules/online/cgform/auto/innerTable/OnlCgformInnerTableList': FiledGroupTable,
    './modules/online/cgform/auto/innerTable/OnlCgformInnerTableList.vue': FiledGroupTable,
    './modules/online/cgform/auto/tab/OnlCgformTabList': FiledGroupTable,
    './modules/online/cgform/auto/tab/OnlCgformTabList.vue': FiledGroupTable,
    './modules/online/cgform/auto/tab/OnlCgformTabModal': FiledGroupTable,
    './modules/online/cgform/auto/tab/OnlCgformTabModal.vue': FiledGroupTable,
    './modules/online/cgform/auto/tab/OnlTabCustomModal': FiledGroupTable,
    './modules/online/cgform/auto/tab/OnlTabCustomModal.vue': FiledGroupTable,
    './modules/online/cgform/button/OnlCgformButtonList': FiledGroupTable,
    './modules/online/cgform/button/OnlCgformButtonList.vue': FiledGroupTable,
    './modules/online/cgform/button/OnlCgformButtonModal': FiledGroupTable,
    './modules/online/cgform/button/OnlCgformButtonModal.vue': FiledGroupTable,
    './modules/online/cgform/enhance/OnlEnhanceJavaList': FiledGroupTable,
    './modules/online/cgform/enhance/OnlEnhanceJavaList.vue': FiledGroupTable,
    './modules/online/cgform/enhance/OnlEnhanceJavaModal': FiledGroupTable,
    './modules/online/cgform/enhance/OnlEnhanceJavaModal.vue': FiledGroupTable,
    './modules/online/cgform/enhance/OnlEnhanceSqlList': FiledGroupTable,
    './modules/online/cgform/enhance/OnlEnhanceSqlList.vue': FiledGroupTable,
    './modules/online/cgform/enhance/OnlEnhanceSqlModal': FiledGroupTable,
    './modules/online/cgform/enhance/OnlEnhanceSqlModal.vue': FiledGroupTable,
    './modules/online/cgform/mixins/OnlExtConfigJsonMixins': FiledGroupTable,
    './modules/online/cgform/mixins/OnlExtConfigJsonMixins.js': FiledGroupTable,
    './modules/online/cgform/modules/CodeGenerator': FiledGroupTable,
    './modules/online/cgform/modules/CodeGenerator.vue': FiledGroupTable,
    './modules/online/cgform/modules/EnhanceHistory': FiledGroupTable,
    './modules/online/cgform/modules/EnhanceHistory.vue': FiledGroupTable,
    './modules/online/cgform/modules/EnhanceJava': FiledGroupTable,
    './modules/online/cgform/modules/EnhanceJava.vue': FiledGroupTable,
    './modules/online/cgform/modules/EnhanceJs': FiledGroupTable,
    './modules/online/cgform/modules/EnhanceJs.vue': FiledGroupTable,
    './modules/online/cgform/modules/EnhanceSql': FiledGroupTable,
    './modules/online/cgform/modules/EnhanceSql.vue': FiledGroupTable,
    './modules/online/cgform/modules/FileSelectModal': FiledGroupTable,
    './modules/online/cgform/modules/FileSelectModal.vue': FiledGroupTable,
    './modules/online/cgform/modules/OnlCgformHeadExtConfigModel': FiledGroupTable,
    './modules/online/cgform/modules/OnlCgformHeadExtConfigModel.vue': FiledGroupTable,
    './modules/online/cgform/modules/OnlCgformHeadModal': FiledGroupTable,
    './modules/online/cgform/modules/OnlCgformHeadModal.vue': FiledGroupTable,
    './modules/online/cgform/modules/TransDb2Online': FiledGroupTable,
    './modules/online/cgform/modules/TransDb2Online.vue': FiledGroupTable,
    './modules/online/cgform/tables/CheckDictTable': FiledGroupTable,
    './modules/online/cgform/tables/CheckDictTable.vue': FiledGroupTable,
    './modules/online/cgform/tables/DBAttributeTable': FiledGroupTable,
    './modules/online/cgform/tables/DBAttributeTable.vue': FiledGroupTable,
    './modules/online/cgform/tables/ForeignKeyTable': FiledGroupTable,
    './modules/online/cgform/tables/ForeignKeyTable.vue': FiledGroupTable,
    './modules/online/cgform/tables/IndexTable': FiledGroupTable,
    './modules/online/cgform/tables/IndexTable.vue': FiledGroupTable,
    './modules/online/cgform/tables/PageAttributeTable': FiledGroupTable,
    './modules/online/cgform/tables/PageAttributeTable.vue': FiledGroupTable,
    './modules/online/cgform/tables/QueryTable': FiledGroupTable,
    './modules/online/cgform/tables/QueryTable.vue': FiledGroupTable,
    './modules/online/cgform/util/TableUtils': FiledGroupTable,
    './modules/online/cgform/util/TableUtils.js': FiledGroupTable,
    './modules/online/cgreport/OnlCgreportHeadList': FiledGroupTable,
    './modules/online/cgreport/OnlCgreportHeadList.vue': FiledGroupTable,
    './modules/online/cgreport/auto/OnlCgreportAutoList': FiledGroupTable,
    './modules/online/cgreport/auto/OnlCgreportAutoList.vue': FiledGroupTable,
    './modules/online/cgreport/auto/OnlCgreportQueryFormItem': FiledGroupTable,
    './modules/online/cgreport/auto/OnlCgreportQueryFormItem.vue': FiledGroupTable,
    './modules/online/cgreport/modules/OnlCgreportHeadModal': FiledGroupTable,
    './modules/online/cgreport/modules/OnlCgreportHeadModal.vue': FiledGroupTable,
    './modules/online/cgreport/tables/ConfigDetailTable': FiledGroupTable,
    './modules/online/cgreport/tables/ConfigDetailTable.vue': FiledGroupTable,
    './modules/online/cgreport/tables/ReportParamsTable': FiledGroupTable,
    './modules/online/cgreport/tables/ReportParamsTable.vue' : FiledGroupTable
  }

  function post(key) {
    if(!key){
      return Promise.resolve().then(function() {
        let error = new Error("Cannot find module '" + key + "'");
        error.code = "MODULE_NOT_FOUND"
        throw error;
      });
    }
    let comp = components[key]
    let value = comp[0]

    return Promise.all(comp.slice(1).map(components)).then(function() {
      return root(props);
    });
  }


}