diff --git a/packages/rocketchat-importer/client/ImporterWebsocketReceiver.js b/packages/rocketchat-importer/client/ImporterWebsocketReceiver.js index 7c0d52e781be..6751dff6689f 100644 --- a/packages/rocketchat-importer/client/ImporterWebsocketReceiver.js +++ b/packages/rocketchat-importer/client/ImporterWebsocketReceiver.js @@ -1,12 +1,12 @@ import { Meteor } from 'meteor/meteor'; -import { RocketChat } from 'meteor/rocketchat:lib'; +import { CachedCollectionManager } from 'meteor/rocketchat:ui-cached-collection'; class ImporterWebsocketReceiverDef { constructor() { this.streamer = new Meteor.Streamer('importers'); this.callbacks = []; - RocketChat.CachedCollectionManager.onLogin(() => { + CachedCollectionManager.onLogin(() => { this.streamer.on('progress', this.progressUpdated.bind(this)); }); } diff --git a/packages/rocketchat-importer/client/admin/adminImport.js b/packages/rocketchat-importer/client/admin/adminImport.js index 71ecda141480..0dbc3a5d63c6 100644 --- a/packages/rocketchat-importer/client/admin/adminImport.js +++ b/packages/rocketchat-importer/client/admin/adminImport.js @@ -3,12 +3,12 @@ import { Importers } from 'meteor/rocketchat:importer'; import { FlowRouter } from 'meteor/kadira:flow-router'; import { Template } from 'meteor/templating'; import { TAPi18n } from 'meteor/tap:i18n'; -import { RocketChat, handleError } from 'meteor/rocketchat:lib'; -import { t } from 'meteor/rocketchat:utils'; +import { hasRole } from 'meteor/rocketchat:authorization'; +import { t, handleError } from 'meteor/rocketchat:utils'; Template.adminImport.helpers({ isAdmin() { - return RocketChat.authz.hasRole(Meteor.userId(), 'admin'); + return hasRole(Meteor.userId(), 'admin'); }, getDescription(importer) { return TAPi18n.__('Importer_From_Description', { from: importer.name }); diff --git a/packages/rocketchat-importer/client/admin/adminImportHistory.js b/packages/rocketchat-importer/client/admin/adminImportHistory.js index 76f81a877753..9a33fd86ec99 100644 --- a/packages/rocketchat-importer/client/admin/adminImportHistory.js +++ b/packages/rocketchat-importer/client/admin/adminImportHistory.js @@ -1,7 +1,7 @@ import { Meteor } from 'meteor/meteor'; import { Importers } from 'meteor/rocketchat:importer'; import { Template } from 'meteor/templating'; -import { RocketChat } from 'meteor/rocketchat:lib'; +import { hasRole } from 'meteor/rocketchat:authorization'; import { t } from 'meteor/rocketchat:utils'; import toastr from 'toastr'; import { ReactiveVar } from 'meteor/reactive-var'; @@ -11,7 +11,7 @@ import { API } from 'meteor/rocketchat:api'; Template.adminImportHistory.helpers({ isAdmin() { - return RocketChat.authz.hasRole(Meteor.userId(), 'admin'); + return hasRole(Meteor.userId(), 'admin'); }, importers() { return Importers.getAll(); diff --git a/packages/rocketchat-importer/client/admin/adminImportPrepare.js b/packages/rocketchat-importer/client/admin/adminImportPrepare.js index b58c95f61697..ff98bd19bc35 100644 --- a/packages/rocketchat-importer/client/admin/adminImportPrepare.js +++ b/packages/rocketchat-importer/client/admin/adminImportPrepare.js @@ -4,14 +4,15 @@ import { Importers } from 'meteor/rocketchat:importer'; import { FlowRouter } from 'meteor/kadira:flow-router'; import { Template } from 'meteor/templating'; import { TAPi18n } from 'meteor/tap:i18n'; -import { RocketChat, handleError } from 'meteor/rocketchat:lib'; -import { t } from 'meteor/rocketchat:utils'; +import { hasRole } from 'meteor/rocketchat:authorization'; +import { settings } from 'meteor/rocketchat:settings'; +import { t, handleError } from 'meteor/rocketchat:utils'; import { API } from 'meteor/rocketchat:api'; import toastr from 'toastr'; Template.adminImportPrepare.helpers({ isAdmin() { - return RocketChat.authz.hasRole(Meteor.userId(), 'admin'); + return hasRole(Meteor.userId(), 'admin'); }, importer() { const importerKey = FlowRouter.getParam('importer'); @@ -34,7 +35,7 @@ Template.adminImportPrepare.helpers({ return Template.instance().message_count.get(); }, fileSizeLimitMessage() { - const maxFileSize = RocketChat.settings.get('FileUpload_MaxFileSize'); + const maxFileSize = settings.get('FileUpload_MaxFileSize'); let message; if (maxFileSize > 0) { diff --git a/packages/rocketchat-importer/client/admin/adminImportProgress.js b/packages/rocketchat-importer/client/admin/adminImportProgress.js index 4c18ca511268..e3571a946a3d 100644 --- a/packages/rocketchat-importer/client/admin/adminImportProgress.js +++ b/packages/rocketchat-importer/client/admin/adminImportProgress.js @@ -3,8 +3,7 @@ import { ReactiveVar } from 'meteor/reactive-var'; import { Importers, ImporterWebsocketReceiver, ProgressStep } from 'meteor/rocketchat:importer'; import { FlowRouter } from 'meteor/kadira:flow-router'; import { Template } from 'meteor/templating'; -import { t } from 'meteor/rocketchat:utils'; -import { handleError } from 'meteor/rocketchat:lib'; +import { t, handleError } from 'meteor/rocketchat:utils'; import toastr from 'toastr'; Template.adminImportProgress.helpers({ diff --git a/packages/rocketchat-importer/package.js b/packages/rocketchat-importer/package.js index 71fe8869d538..a936d939ea15 100644 --- a/packages/rocketchat-importer/package.js +++ b/packages/rocketchat-importer/package.js @@ -12,6 +12,10 @@ Package.onUse(function(api) { 'check', 'rocketchat:utils', 'rocketchat:lib', + 'rocketchat:models', + 'rocketchat:authorization', + 'rocketchat:ui-cached-collection', + 'rocketchat:settings', 'rocketchat:api', 'rocketchat:logger', 'rocketchat:file-upload', diff --git a/packages/rocketchat-importer/server/classes/ImporterBase.js b/packages/rocketchat-importer/server/classes/ImporterBase.js index 036161e3ffd6..a7853c1cc73b 100644 --- a/packages/rocketchat-importer/server/classes/ImporterBase.js +++ b/packages/rocketchat-importer/server/classes/ImporterBase.js @@ -6,9 +6,10 @@ import { Imports } from '../models/Imports'; import { ImporterInfo } from '../../lib/ImporterInfo'; import { RawImports } from '../models/RawImports'; import { ImporterWebsocket } from './ImporterWebsocket'; -import { RocketChat } from 'meteor/rocketchat:lib'; +import { Settings } from 'meteor/rocketchat:models'; import { Logger } from 'meteor/rocketchat:logger'; import { FileUpload } from 'meteor/rocketchat:file-upload'; +import { sendMessage } from 'meteor/rocketchat:lib'; import http from 'http'; import fs from 'fs'; import https from 'https'; @@ -230,24 +231,24 @@ export class Base { switch (step) { case ProgressStep.IMPORTING_STARTED: - this.oldSettings.Accounts_AllowedDomainsList = RocketChat.models.Settings.findOneById('Accounts_AllowedDomainsList').value; - RocketChat.models.Settings.updateValueById('Accounts_AllowedDomainsList', ''); + this.oldSettings.Accounts_AllowedDomainsList = Settings.findOneById('Accounts_AllowedDomainsList').value; + Settings.updateValueById('Accounts_AllowedDomainsList', ''); - this.oldSettings.Accounts_AllowUsernameChange = RocketChat.models.Settings.findOneById('Accounts_AllowUsernameChange').value; - RocketChat.models.Settings.updateValueById('Accounts_AllowUsernameChange', true); + this.oldSettings.Accounts_AllowUsernameChange = Settings.findOneById('Accounts_AllowUsernameChange').value; + Settings.updateValueById('Accounts_AllowUsernameChange', true); - this.oldSettings.FileUpload_MaxFileSize = RocketChat.models.Settings.findOneById('FileUpload_MaxFileSize').value; - RocketChat.models.Settings.updateValueById('FileUpload_MaxFileSize', -1); + this.oldSettings.FileUpload_MaxFileSize = Settings.findOneById('FileUpload_MaxFileSize').value; + Settings.updateValueById('FileUpload_MaxFileSize', -1); - this.oldSettings.FileUpload_MediaTypeWhiteList = RocketChat.models.Settings.findOneById('FileUpload_MediaTypeWhiteList').value; - RocketChat.models.Settings.updateValueById('FileUpload_MediaTypeWhiteList', '*'); + this.oldSettings.FileUpload_MediaTypeWhiteList = Settings.findOneById('FileUpload_MediaTypeWhiteList').value; + Settings.updateValueById('FileUpload_MediaTypeWhiteList', '*'); break; case ProgressStep.DONE: case ProgressStep.ERROR: - RocketChat.models.Settings.updateValueById('Accounts_AllowedDomainsList', this.oldSettings.Accounts_AllowedDomainsList); - RocketChat.models.Settings.updateValueById('Accounts_AllowUsernameChange', this.oldSettings.Accounts_AllowUsernameChange); - RocketChat.models.Settings.updateValueById('FileUpload_MaxFileSize', this.oldSettings.FileUpload_MaxFileSize); - RocketChat.models.Settings.updateValueById('FileUpload_MediaTypeWhiteList', this.oldSettings.FileUpload_MediaTypeWhiteList); + Settings.updateValueById('Accounts_AllowedDomainsList', this.oldSettings.Accounts_AllowedDomainsList); + Settings.updateValueById('Accounts_AllowUsernameChange', this.oldSettings.Accounts_AllowUsernameChange); + Settings.updateValueById('FileUpload_MaxFileSize', this.oldSettings.FileUpload_MaxFileSize); + Settings.updateValueById('FileUpload_MediaTypeWhiteList', this.oldSettings.FileUpload_MediaTypeWhiteList); break; } @@ -421,7 +422,7 @@ export class Base { msg._id = details.message_id; } - return RocketChat.sendMessage(user, msg, room, true); + return sendMessage(user, msg, room, true); } }); })); diff --git a/packages/rocketchat-importer/server/methods/downloadPublicImportFile.js b/packages/rocketchat-importer/server/methods/downloadPublicImportFile.js index 1f44d7a99d80..d45d3c7f2caa 100644 --- a/packages/rocketchat-importer/server/methods/downloadPublicImportFile.js +++ b/packages/rocketchat-importer/server/methods/downloadPublicImportFile.js @@ -2,6 +2,7 @@ import { Meteor } from 'meteor/meteor'; import { Importers } from 'meteor/rocketchat:importer'; import { RocketChatImportFileInstance } from '../startup/store'; import { ProgressStep } from '../../lib/ImporterProgressStep'; +import { hasRole } from 'meteor/rocketchat:authorization'; import http from 'http'; import fs from 'fs'; @@ -24,7 +25,7 @@ Meteor.methods({ throw new Meteor.Error('error-invalid-user', 'Invalid user', { method: 'downloadPublicImportFile' }); } - if (!RocketChat.authz.hasRole(userId, 'admin')) { + if (!hasRole(userId, 'admin')) { throw new Meteor.Error('not_authorized', 'User not authorized', { method: 'downloadPublicImportFile' }); } diff --git a/packages/rocketchat-importer/server/methods/getImportFileData.js b/packages/rocketchat-importer/server/methods/getImportFileData.js index 242954bf62d9..21d9f7809ba8 100644 --- a/packages/rocketchat-importer/server/methods/getImportFileData.js +++ b/packages/rocketchat-importer/server/methods/getImportFileData.js @@ -1,6 +1,7 @@ import { RocketChatImportFileInstance } from '../startup/store'; import { Meteor } from 'meteor/meteor'; import { Importers } from 'meteor/rocketchat:importer'; +import { hasRole } from 'meteor/rocketchat:authorization'; import { ProgressStep } from '../../lib/ImporterProgressStep'; import path from 'path'; @@ -12,7 +13,7 @@ Meteor.methods({ throw new Meteor.Error('error-invalid-user', 'Invalid user', { method: 'getImportFileData' }); } - if (!RocketChat.authz.hasRole(userId, 'admin')) { + if (!hasRole(userId, 'admin')) { throw new Meteor.Error('not_authorized', 'User not authorized', { method: 'getImportFileData' }); } diff --git a/packages/rocketchat-importer/server/methods/getImportProgress.js b/packages/rocketchat-importer/server/methods/getImportProgress.js index 145003b24278..db5b8a9439a8 100644 --- a/packages/rocketchat-importer/server/methods/getImportProgress.js +++ b/packages/rocketchat-importer/server/methods/getImportProgress.js @@ -1,6 +1,6 @@ import { Meteor } from 'meteor/meteor'; import { Importers } from 'meteor/rocketchat:importer'; -import { RocketChat } from 'meteor/rocketchat:lib'; +import { hasPermission } from 'meteor/rocketchat:authorization'; Meteor.methods({ getImportProgress(key) { @@ -8,7 +8,7 @@ Meteor.methods({ throw new Meteor.Error('error-invalid-user', 'Invalid user', { method: 'getImportProgress' }); } - if (!RocketChat.authz.hasPermission(Meteor.userId(), 'run-import')) { + if (!hasPermission(Meteor.userId(), 'run-import')) { throw new Meteor.Error('error-action-not-allowed', 'Importing is not allowed', { method: 'setupImporter' }); } diff --git a/packages/rocketchat-importer/server/methods/getLatestImportOperations.js b/packages/rocketchat-importer/server/methods/getLatestImportOperations.js index c6977dbc2727..78e83721c845 100644 --- a/packages/rocketchat-importer/server/methods/getLatestImportOperations.js +++ b/packages/rocketchat-importer/server/methods/getLatestImportOperations.js @@ -1,5 +1,6 @@ import { Meteor } from 'meteor/meteor'; import { Imports } from '../models/Imports'; +import { hasRole } from 'meteor/rocketchat:authorization'; Meteor.methods({ getLatestImportOperations() { @@ -9,7 +10,7 @@ Meteor.methods({ throw new Meteor.Error('error-invalid-user', 'Invalid user', { method: 'getLatestImportOperations' }); } - if (!RocketChat.authz.hasRole(userId, 'admin')) { + if (!hasRole(userId, 'admin')) { throw new Meteor.Error('not_authorized', 'User not authorized', { method: 'getLatestImportOperations' }); } diff --git a/packages/rocketchat-importer/server/methods/getSelectionData.js b/packages/rocketchat-importer/server/methods/getSelectionData.js index c8ff1f625949..e24a6d3819ac 100644 --- a/packages/rocketchat-importer/server/methods/getSelectionData.js +++ b/packages/rocketchat-importer/server/methods/getSelectionData.js @@ -3,7 +3,7 @@ import { Importers, ProgressStep, } from 'meteor/rocketchat:importer'; -import { RocketChat } from 'meteor/rocketchat:lib'; +import { hasPermission } from 'meteor/rocketchat:authorization'; Meteor.methods({ getSelectionData(key) { @@ -11,7 +11,7 @@ Meteor.methods({ throw new Meteor.Error('error-invalid-user', 'Invalid user', { method: 'getSelectionData' }); } - if (!RocketChat.authz.hasPermission(Meteor.userId(), 'run-import')) { + if (!hasPermission(Meteor.userId(), 'run-import')) { throw new Meteor.Error('error-action-not-allowed', 'Importing is not allowed', { method: 'setupImporter' }); } diff --git a/packages/rocketchat-importer/server/methods/prepareImport.js b/packages/rocketchat-importer/server/methods/prepareImport.js index 8f9c7e06036b..7a3677a4ac07 100644 --- a/packages/rocketchat-importer/server/methods/prepareImport.js +++ b/packages/rocketchat-importer/server/methods/prepareImport.js @@ -1,7 +1,7 @@ import { Meteor } from 'meteor/meteor'; import { check } from 'meteor/check'; import { Importers } from 'meteor/rocketchat:importer'; -import { RocketChat } from 'meteor/rocketchat:lib'; +import { hasPermission } from 'meteor/rocketchat:authorization'; Meteor.methods({ prepareImport(key, dataURI, contentType, fileName) { @@ -9,7 +9,7 @@ Meteor.methods({ throw new Meteor.Error('error-invalid-user', 'Invalid user', { method: 'prepareImport' }); } - if (!RocketChat.authz.hasPermission(Meteor.userId(), 'run-import')) { + if (!hasPermission(Meteor.userId(), 'run-import')) { throw new Meteor.Error('error-action-not-allowed', 'Importing is not allowed', { method: 'setupImporter' }); } diff --git a/packages/rocketchat-importer/server/methods/restartImport.js b/packages/rocketchat-importer/server/methods/restartImport.js index 508fdaa352b0..e2c6733bf144 100644 --- a/packages/rocketchat-importer/server/methods/restartImport.js +++ b/packages/rocketchat-importer/server/methods/restartImport.js @@ -3,7 +3,7 @@ import { Importers, ProgressStep, } from 'meteor/rocketchat:importer'; -import { RocketChat } from 'meteor/rocketchat:lib'; +import { hasPermission } from 'meteor/rocketchat:authorization'; Meteor.methods({ restartImport(key) { @@ -11,7 +11,7 @@ Meteor.methods({ throw new Meteor.Error('error-invalid-user', 'Invalid user', { method: 'restartImport' }); } - if (!RocketChat.authz.hasPermission(Meteor.userId(), 'run-import')) { + if (!hasPermission(Meteor.userId(), 'run-import')) { throw new Meteor.Error('error-action-not-allowed', 'Importing is not allowed', { method: 'setupImporter' }); } diff --git a/packages/rocketchat-importer/server/methods/setupImporter.js b/packages/rocketchat-importer/server/methods/setupImporter.js index 2498b8d950c1..5aac8afdbffe 100644 --- a/packages/rocketchat-importer/server/methods/setupImporter.js +++ b/packages/rocketchat-importer/server/methods/setupImporter.js @@ -1,6 +1,6 @@ import { Meteor } from 'meteor/meteor'; import { Importers } from 'meteor/rocketchat:importer'; -import { RocketChat } from 'meteor/rocketchat:lib'; +import { hasPermission } from 'meteor/rocketchat:authorization'; Meteor.methods({ setupImporter(key) { @@ -8,7 +8,7 @@ Meteor.methods({ throw new Meteor.Error('error-invalid-user', 'Invalid user', { method: 'setupImporter' }); } - if (!RocketChat.authz.hasPermission(Meteor.userId(), 'run-import')) { + if (!hasPermission(Meteor.userId(), 'run-import')) { throw new Meteor.Error('error-action-not-allowed', 'Importing is not allowed', { method: 'setupImporter' }); } diff --git a/packages/rocketchat-importer/server/methods/startImport.js b/packages/rocketchat-importer/server/methods/startImport.js index 38a7911178ef..49ecfdfa7e9b 100644 --- a/packages/rocketchat-importer/server/methods/startImport.js +++ b/packages/rocketchat-importer/server/methods/startImport.js @@ -5,7 +5,7 @@ import { SelectionChannel, SelectionUser, } from 'meteor/rocketchat:importer'; -import { RocketChat } from 'meteor/rocketchat:lib'; +import { hasPermission } from 'meteor/rocketchat:authorization'; Meteor.methods({ startImport(key, input) { @@ -14,7 +14,7 @@ Meteor.methods({ throw new Meteor.Error('error-invalid-user', 'Invalid user', { method: 'startImport' }); } - if (!RocketChat.authz.hasPermission(Meteor.userId(), 'run-import')) { + if (!hasPermission(Meteor.userId(), 'run-import')) { throw new Meteor.Error('error-action-not-allowed', 'Importing is not allowed', { method: 'startImport' }); } diff --git a/packages/rocketchat-importer/server/methods/uploadImportFile.js b/packages/rocketchat-importer/server/methods/uploadImportFile.js index ded0e5c3ab83..c2166e8ae736 100644 --- a/packages/rocketchat-importer/server/methods/uploadImportFile.js +++ b/packages/rocketchat-importer/server/methods/uploadImportFile.js @@ -2,6 +2,7 @@ import { Meteor } from 'meteor/meteor'; import { Importers } from 'meteor/rocketchat:importer'; import { RocketChatFile } from 'meteor/rocketchat:file'; import { RocketChatImportFileInstance } from '../startup/store'; +import { hasRole } from 'meteor/rocketchat:authorization'; Meteor.methods({ uploadImportFile(binaryContent, contentType, fileName, importerKey) { @@ -11,7 +12,7 @@ Meteor.methods({ throw new Meteor.Error('error-invalid-user', 'Invalid user', { method: 'uploadImportFile' }); } - if (!RocketChat.authz.hasRole(userId, 'admin')) { + if (!hasRole(userId, 'admin')) { throw new Meteor.Error('not_authorized', 'User not authorized', { method: 'uploadImportFile' }); } diff --git a/packages/rocketchat-importer/server/models/Imports.js b/packages/rocketchat-importer/server/models/Imports.js index 06e06a5bab08..a50b27ddf963 100644 --- a/packages/rocketchat-importer/server/models/Imports.js +++ b/packages/rocketchat-importer/server/models/Imports.js @@ -1,7 +1,7 @@ import { ProgressStep } from '../../lib/ImporterProgressStep'; -import { RocketChat } from 'meteor/rocketchat:lib'; +import { Base } from 'meteor/rocketchat:models'; -class ImportsModel extends RocketChat.models._Base { +class ImportsModel extends Base { constructor() { super('import'); } diff --git a/packages/rocketchat-importer/server/models/RawImports.js b/packages/rocketchat-importer/server/models/RawImports.js index 3b850d80c6a9..3a761eb15dc4 100644 --- a/packages/rocketchat-importer/server/models/RawImports.js +++ b/packages/rocketchat-importer/server/models/RawImports.js @@ -1,6 +1,6 @@ -import { Base as _Base } from 'meteor/rocketchat:models'; +import { Base } from 'meteor/rocketchat:models'; -class RawImportsModel extends _Base { +class RawImportsModel extends Base { constructor() { super('raw_imports'); } diff --git a/packages/rocketchat-importer/server/startup/store.js b/packages/rocketchat-importer/server/startup/store.js index d996b1e9af2e..afe6b66139c5 100644 --- a/packages/rocketchat-importer/server/startup/store.js +++ b/packages/rocketchat-importer/server/startup/store.js @@ -1,5 +1,6 @@ import { Meteor } from 'meteor/meteor'; import { RocketChatFile } from 'meteor/rocketchat:file'; +import { settings } from 'meteor/rocketchat:settings'; export let RocketChatImportFileInstance; @@ -7,9 +8,9 @@ Meteor.startup(function() { const RocketChatStore = RocketChatFile.FileSystem; let path = '/tmp/rocketchat-importer'; - if (RocketChat.settings.get('ImportFile_FileSystemPath') != null) { - if (RocketChat.settings.get('ImportFile_FileSystemPath').trim() !== '') { - path = RocketChat.settings.get('ImportFile_FileSystemPath'); + if (settings.get('ImportFile_FileSystemPath') != null) { + if (settings.get('ImportFile_FileSystemPath').trim() !== '') { + path = settings.get('ImportFile_FileSystemPath'); } }