Compare commits
1 Commits
master
...
delete-par
Author | SHA1 | Date |
---|---|---|
|
e7046484a0 | 6 years ago |
@ -1,3 +0,0 @@ |
|||||||
# These are supported funding model platforms |
|
||||||
|
|
||||||
custom: ['https://rambox.app/donate.html'] |
|
@ -0,0 +1,6 @@ |
|||||||
|
# Monthly Donators |
||||||
|
|
||||||
|
[Martin Grünbaum](https://github.com/alathon) |
||||||
|
|
||||||
|
Ivan Toshkov |
||||||
|
[Simon Joda Stößer](https://github.com/SimJoSt) |
@ -0,0 +1,289 @@ |
|||||||
|
Ext.define('Rambox.ux.Auth0', { |
||||||
|
singleton: true |
||||||
|
|
||||||
|
// private
|
||||||
|
,lock: null |
||||||
|
,auth0: null |
||||||
|
,authService: null |
||||||
|
,backupCurrent: false |
||||||
|
|
||||||
|
,init: function() { |
||||||
|
var me = this; |
||||||
|
|
||||||
|
var Auth0 = require('auth0-js'); |
||||||
|
var _AuthService = require('./resources/js/AuthService'); |
||||||
|
|
||||||
|
me.authService = new _AuthService.default({ |
||||||
|
clientId: auth0Cfg.clientID, |
||||||
|
authorizeEndpoint: 'https://'+auth0Cfg.domain+'/authorize', |
||||||
|
audience: 'https://'+auth0Cfg.domain+'/userinfo', |
||||||
|
scope: 'openid profile offline_access', |
||||||
|
redirectUri: 'https://'+auth0Cfg.domain+'/mobile', |
||||||
|
tokenEndpoint: 'https://'+auth0Cfg.domain+'/oauth/token' |
||||||
|
}); |
||||||
|
|
||||||
|
me.auth0 = new Auth0.WebAuth({ clientID: auth0Cfg.clientID, domain : auth0Cfg.domain }); |
||||||
|
|
||||||
|
//me.defineEvents();
|
||||||
|
} |
||||||
|
|
||||||
|
,onLogin: function(token, authWindow) { |
||||||
|
var me = this; |
||||||
|
|
||||||
|
authWindow.close(); |
||||||
|
|
||||||
|
me.auth0.client.userInfo(token.access_token, function(err, profile) { |
||||||
|
if ( err ) { |
||||||
|
if ( err.error === 401 || err.error === 'Unauthorized' ) return me.renewToken(me.checkConfiguration); |
||||||
|
Ext.Msg.hide(); |
||||||
|
return Ext.Msg.show({ |
||||||
|
title: 'Error' |
||||||
|
,message: 'There was an error getting the profile: ' + err.error_description |
||||||
|
,icon: Ext.Msg.ERROR |
||||||
|
,buttons: Ext.Msg.OK |
||||||
|
}); |
||||||
|
} |
||||||
|
|
||||||
|
profile.user_metadata = profile['https://rambox.pro/user_metadata']; |
||||||
|
delete profile['https://rambox.pro/user_metadata']; |
||||||
|
|
||||||
|
// Display a spinner while waiting
|
||||||
|
Ext.Msg.wait(locale['app.window[29]'], locale['app.window[28]']); |
||||||
|
|
||||||
|
// Google Analytics Event
|
||||||
|
ga_storage._trackEvent('Users', 'loggedIn'); |
||||||
|
|
||||||
|
// Set cookies to help Tooltip.io messages segmentation
|
||||||
|
Ext.util.Cookies.set('auth0', true); |
||||||
|
|
||||||
|
// User is logged in
|
||||||
|
// Save the profile and JWT.
|
||||||
|
localStorage.setItem('profile', JSON.stringify(profile)); |
||||||
|
localStorage.setItem('access_token', token.access_token); |
||||||
|
localStorage.setItem('id_token', token.id_token); |
||||||
|
localStorage.setItem('refresh_token', token.refresh_token); |
||||||
|
|
||||||
|
if ( !Ext.isEmpty(profile.user_metadata) && !Ext.isEmpty(profile.user_metadata.services) && !me.backupCurrent ) { |
||||||
|
Ext.each(profile.user_metadata.services, function(s) { |
||||||
|
var service = Ext.create('Rambox.model.Service', s); |
||||||
|
service.save(); |
||||||
|
Ext.getStore('Services').add(service); |
||||||
|
}); |
||||||
|
|
||||||
|
require('electron').remote.getCurrentWindow().reload(); |
||||||
|
} |
||||||
|
|
||||||
|
Ext.Msg.hide(); |
||||||
|
Ext.cq1('app-main').getViewModel().set('username', profile.name); |
||||||
|
Ext.cq1('app-main').getViewModel().set('avatar', profile.picture); |
||||||
|
}); |
||||||
|
} |
||||||
|
|
||||||
|
,backupConfiguration: function(callback) { |
||||||
|
var me = this; |
||||||
|
|
||||||
|
Ext.Msg.wait('Saving backup...', 'Please wait...'); |
||||||
|
|
||||||
|
// Getting all services
|
||||||
|
var lastupdate = (new Date()).toJSON(); |
||||||
|
var services = []; |
||||||
|
Ext.getStore('Services').each(function(service) { |
||||||
|
var s = Ext.clone(service); |
||||||
|
delete s.data.id; |
||||||
|
delete s.data.zoomLevel; |
||||||
|
services.push(s.data); |
||||||
|
}); |
||||||
|
|
||||||
|
Ext.Ajax.request({ |
||||||
|
url: 'https://rambox.auth0.com/api/v2/users/'+Ext.decode(localStorage.getItem('profile')).sub |
||||||
|
,method: 'PATCH' |
||||||
|
,headers: { authorization: "Bearer " + localStorage.getItem('id_token') } |
||||||
|
,jsonData: { user_metadata: { services: services, services_lastupdate: lastupdate } } |
||||||
|
,success: function(response) { |
||||||
|
Ext.Msg.hide(); |
||||||
|
// Save the last update in localStorage
|
||||||
|
var profile = Ext.decode(localStorage.getItem('profile')); |
||||||
|
if ( !profile.user_metadata ) profile.user_metadata = {}; |
||||||
|
profile.user_metadata.services_lastupdate = lastupdate; |
||||||
|
localStorage.setItem('profile', Ext.encode(profile)); |
||||||
|
Ext.cq1('app-main').getViewModel().set('last_sync', new Date(lastupdate).toUTCString()); |
||||||
|
|
||||||
|
Ext.toast({ |
||||||
|
html: '<i class="fa fa-check fa-3x fa-pull-left" aria-hidden="true"></i> Your configuration were successfully backed up.' |
||||||
|
,title: 'Synchronize Configuration' |
||||||
|
,width: 300 |
||||||
|
,align: 't' |
||||||
|
,closable: false |
||||||
|
}); |
||||||
|
|
||||||
|
if ( Ext.isFunction(callback) ) callback.bind(me)(); |
||||||
|
} |
||||||
|
,failure: function(response) { |
||||||
|
if ( response.status === 401 ) return me.renewToken(me.backupConfiguration); |
||||||
|
|
||||||
|
Ext.Msg.hide(); |
||||||
|
Ext.toast({ |
||||||
|
html: '<i class="fa fa-times fa-3x fa-pull-left" aria-hidden="true"></i> Error occurred when trying to backup your configuration.' |
||||||
|
,title: 'Synchronize Configuration' |
||||||
|
,width: 300 |
||||||
|
,align: 't' |
||||||
|
,closable: false |
||||||
|
}); |
||||||
|
|
||||||
|
if ( Ext.isFunction(callback) ) callback.bind(me)(); |
||||||
|
|
||||||
|
console.error(response); |
||||||
|
} |
||||||
|
}); |
||||||
|
} |
||||||
|
|
||||||
|
,restoreConfiguration: function() { |
||||||
|
var me = this; |
||||||
|
|
||||||
|
me.auth0.client.userInfo(localStorage.getItem('access_token'), function(err, profile) { |
||||||
|
if ( err ) { |
||||||
|
if ( err.code === 401 ) return me.renewToken(me.restoreConfiguration); |
||||||
|
return Ext.Msg.show({ |
||||||
|
title: 'Error' |
||||||
|
,message: 'There was an error getting the profile: ' + err.description |
||||||
|
,icon: Ext.Msg.ERROR |
||||||
|
,buttons: Ext.Msg.OK |
||||||
|
}); |
||||||
|
} |
||||||
|
|
||||||
|
profile.user_metadata = profile['https://rambox.pro/user_metadata']; |
||||||
|
delete profile['https://rambox.pro/user_metadata']; |
||||||
|
|
||||||
|
// First we remove all current services
|
||||||
|
Ext.cq1('app-main').getController().removeAllServices(false, function() { |
||||||
|
if ( !profile.user_metadata || !profile.user_metadata.services ) return; |
||||||
|
Ext.each(profile.user_metadata.services, function(s) { |
||||||
|
var service = Ext.create('Rambox.model.Service', s); |
||||||
|
service.save(); |
||||||
|
Ext.getStore('Services').add(service); |
||||||
|
}); |
||||||
|
|
||||||
|
require('electron').remote.getCurrentWindow().reload(); |
||||||
|
}); |
||||||
|
}); |
||||||
|
} |
||||||
|
|
||||||
|
,checkConfiguration: function() { |
||||||
|
var me = this; |
||||||
|
|
||||||
|
me.auth0.client.userInfo(localStorage.getItem('access_token'), function(err, profile) { |
||||||
|
if ( err ) { |
||||||
|
if ( err.code === 401 ) return me.renewToken(me.checkConfiguration); |
||||||
|
return Ext.Msg.show({ |
||||||
|
title: 'Error' |
||||||
|
,message: 'There was an error getting the profile: ' + err.description |
||||||
|
,icon: Ext.Msg.ERROR |
||||||
|
,buttons: Ext.Msg.OK |
||||||
|
}); |
||||||
|
} |
||||||
|
|
||||||
|
profile.user_metadata = profile['https://rambox.pro/user_metadata']; |
||||||
|
delete profile['https://rambox.pro/user_metadata']; |
||||||
|
|
||||||
|
if ( !profile.user_metadata ) { |
||||||
|
Ext.toast({ |
||||||
|
html: 'You don\'t have any backup yet.' |
||||||
|
,title: 'Synchronize Configuration' |
||||||
|
,width: 300 |
||||||
|
,align: 't' |
||||||
|
,closable: false |
||||||
|
}); |
||||||
|
return; |
||||||
|
} |
||||||
|
|
||||||
|
if ( Math.floor(new Date(profile.user_metadata.services_lastupdate) / 1000) > Math.floor(new Date(Ext.decode(localStorage.getItem('profile')).user_metadata.services_lastupdate) / 1000) ) { |
||||||
|
Ext.toast({ |
||||||
|
html: 'Your settings are out of date.' |
||||||
|
,title: 'Synchronize Configuration' |
||||||
|
,width: 300 |
||||||
|
,align: 't' |
||||||
|
,closable: false |
||||||
|
}); |
||||||
|
} else { |
||||||
|
Ext.toast({ |
||||||
|
html: '<i class="fa fa-check fa-3x fa-pull-left" aria-hidden="true"></i> Latest backup is already applied.' |
||||||
|
,title: 'Synchronize Configuration' |
||||||
|
,width: 300 |
||||||
|
,align: 't' |
||||||
|
,closable: false |
||||||
|
}); |
||||||
|
} |
||||||
|
}); |
||||||
|
} |
||||||
|
|
||||||
|
,renewToken: function(callback) { |
||||||
|
var me = this; |
||||||
|
|
||||||
|
Ext.Ajax.request({ |
||||||
|
url: 'https://rambox.auth0.com/oauth/token' |
||||||
|
,method: 'POST' |
||||||
|
,jsonData: { |
||||||
|
grant_type: 'refresh_token' |
||||||
|
,client_id: auth0Cfg.clientID |
||||||
|
,client_secret: auth0Cfg.clientSecret |
||||||
|
,refresh_token: localStorage.getItem('refresh_token') |
||||||
|
,api_type: 'app' |
||||||
|
} |
||||||
|
,success: function(response) { |
||||||
|
var json = Ext.decode(response.responseText); |
||||||
|
localStorage.setItem('access_token', json.access_token); |
||||||
|
localStorage.setItem('id_token', json.id_token); |
||||||
|
|
||||||
|
if ( Ext.isFunction(callback) ) callback.bind(me)(); |
||||||
|
} |
||||||
|
,failure: function(response) { |
||||||
|
console.error(response); |
||||||
|
} |
||||||
|
}); |
||||||
|
} |
||||||
|
|
||||||
|
,login: function() { |
||||||
|
var me = this; |
||||||
|
|
||||||
|
var electron = require('electron').remote; |
||||||
|
var authWindow = new electron.BrowserWindow({ |
||||||
|
title: 'Rambox - Login' |
||||||
|
,width: 400 |
||||||
|
,height: 600 |
||||||
|
,maximizable: false |
||||||
|
,minimizable: false |
||||||
|
,resizable: false |
||||||
|
,center: true |
||||||
|
,autoHideMenuBar: true |
||||||
|
,skipTaskbar: true |
||||||
|
,fullscreenable: false |
||||||
|
,modal: true |
||||||
|
,parent: require('electron').remote.getCurrentWindow() |
||||||
|
,webPreferences: { |
||||||
|
partition: 'persist:rambox' |
||||||
|
} |
||||||
|
}); |
||||||
|
|
||||||
|
authWindow.on('closed', function() { |
||||||
|
authWindow = null; |
||||||
|
}); |
||||||
|
|
||||||
|
authWindow.loadURL(me.authService.requestAuthCode()); |
||||||
|
|
||||||
|
authWindow.webContents.on('did-navigate', function(e, url) { |
||||||
|
me.authService.requestAccessCode(url, me.onLogin.bind(me), authWindow); |
||||||
|
}); |
||||||
|
} |
||||||
|
|
||||||
|
,logout: function() { |
||||||
|
var me = this; |
||||||
|
|
||||||
|
localStorage.removeItem('profile'); |
||||||
|
localStorage.removeItem('id_token'); |
||||||
|
localStorage.removeItem('refresh_token'); |
||||||
|
localStorage.removeItem('access_token'); |
||||||
|
|
||||||
|
// Set cookies to help Tooltip.io messages segmentation
|
||||||
|
Ext.util.Cookies.set('auth0', false); |
||||||
|
} |
||||||
|
}); |
@ -0,0 +1,5 @@ |
|||||||
|
var auth0Cfg = { |
||||||
|
clientID: '' |
||||||
|
,clientSecret: '' |
||||||
|
,domain: '' |
||||||
|
}; |
@ -1,7 +1,7 @@ |
|||||||
{ |
{ |
||||||
"name": "Rambox", |
"name": "Rambox", |
||||||
"productName": "Rambox", |
"productName": "Rambox", |
||||||
"version": "0.8.0", |
"version": "0.6.9", |
||||||
"description": "Free and Open Source messaging and emailing app that combines common web applications into one.", |
"description": "Free and Open Source messaging and emailing app that combines common web applications into one.", |
||||||
"main": "electron/main.js", |
"main": "electron/main.js", |
||||||
"repository": { |
"repository": { |
||||||
@ -11,7 +11,7 @@ |
|||||||
"bugs": { |
"bugs": { |
||||||
"url": "https://github.com/ramboxapp/community-edition/issues" |
"url": "https://github.com/ramboxapp/community-edition/issues" |
||||||
}, |
}, |
||||||
"homepage": "https://rambox.app", |
"homepage": "https://rambox.pro", |
||||||
"keywords": [ |
"keywords": [ |
||||||
"Rambox", |
"Rambox", |
||||||
"messaging", |
"messaging", |
||||||
@ -25,7 +25,7 @@ |
|||||||
"hangouts", |
"hangouts", |
||||||
"skype" |
"skype" |
||||||
], |
], |
||||||
"author": "Rambox LLC <support@rambox.app>", |
"author": "Rambox <[email protected]ro>", |
||||||
"license": "GPL-3.0", |
"license": "GPL-3.0", |
||||||
"scripts": { |
"scripts": { |
||||||
"start": "electron electron/main.js", |
"start": "electron electron/main.js", |
||||||
@ -39,9 +39,7 @@ |
|||||||
"clean:osx": "rm -rf ./dist/Rambox-darwin-*", |
"clean:osx": "rm -rf ./dist/Rambox-darwin-*", |
||||||
"clean:win": "rm -rf ./dist/Rambox-win32-*", |
"clean:win": "rm -rf ./dist/Rambox-win32-*", |
||||||
"pack": "npm run pack:osx && npm run pack:win", |
"pack": "npm run pack:osx && npm run pack:win", |
||||||
"pack:osx": "npm run pack:osx64 && npm run pack:osxarm64", |
"pack:osx": "electron-packager \"./build/production/Rambox/\" \"Rambox\" --out=dist --platform=darwin --arch=x64 --icon=resources/installer/Icon.icns --app-version=0.2.0 --build-version=64-bit --version-string.CompanyName=\"Rambox\" --version-string.ProductName=\"Rambox\" --asar --prune --overwrite", |
||||||
"pack:osx64": "electron-packager \"./build/production/Rambox/\" \"Rambox\" --out=dist --platform=darwin --arch=x64 --icon=resources/installer/Icon.icns --app-version=0.2.0 --build-version=64-bit --version-string.CompanyName=\"Rambox\" --version-string.ProductName=\"Rambox\" --asar --prune --overwrite", |
|
||||||
"pack:osxarm64": "electron-packager \"./build/production/Rambox/\" \"Rambox\" --out=dist --platform=darwin --arch=arm64 --icon=resources/installer/Icon.icns --app-version=0.2.0 --build-version=64-bit --version-string.CompanyName=\"Rambox\" --version-string.ProductName=\"Rambox\" --asar --prune --overwrite", |
|
||||||
"pack:win": "npm run pack:win32 && npm run pack:win64", |
"pack:win": "npm run pack:win32 && npm run pack:win64", |
||||||
"pack:win32": "electron-packager \"./build/production/Rambox/\" \"Rambox\" --out=dist --platform=win32 --arch=ia32 --icon=resources/installer/Icon.ico --app-version=0.2.0 --build-version=32-bit --version-string.CompanyName=\"Rambox\" --version-string.ProductName=\"Rambox\" --asar --prune --overwrite", |
"pack:win32": "electron-packager \"./build/production/Rambox/\" \"Rambox\" --out=dist --platform=win32 --arch=ia32 --icon=resources/installer/Icon.ico --app-version=0.2.0 --build-version=32-bit --version-string.CompanyName=\"Rambox\" --version-string.ProductName=\"Rambox\" --asar --prune --overwrite", |
||||||
"pack:win64": "electron-packager \"./build/production/Rambox/\" \"Rambox\" --out=dist --platform=win32 --arch=x64 --icon=resources/installer/Icon.ico --app-version=0.2.0 --build-version=64-bit --version-string.CompanyName=\"Rambox\" --version-string.ProductName=\"Rambox\" --asar --prune --overwrite", |
"pack:win64": "electron-packager \"./build/production/Rambox/\" \"Rambox\" --out=dist --platform=win32 --arch=x64 --icon=resources/installer/Icon.ico --app-version=0.2.0 --build-version=64-bit --version-string.CompanyName=\"Rambox\" --version-string.ProductName=\"Rambox\" --asar --prune --overwrite", |
||||||
@ -49,16 +47,14 @@ |
|||||||
"pack:linux32": "electron-packager \"./build/production/Rambox/\" \"Rambox\" --out=dist --platform=linux --arch=ia32 --icon=resources/installer/Icon.ico --app-version=0.2.0 --build-version=64-bit --version-string.CompanyName=\"Rambox\" --version-string.ProductName=\"Rambox\" --asar --prune --overwrite", |
"pack:linux32": "electron-packager \"./build/production/Rambox/\" \"Rambox\" --out=dist --platform=linux --arch=ia32 --icon=resources/installer/Icon.ico --app-version=0.2.0 --build-version=64-bit --version-string.CompanyName=\"Rambox\" --version-string.ProductName=\"Rambox\" --asar --prune --overwrite", |
||||||
"pack:linux64": "electron-packager \"./build/production/Rambox/\" \"Rambox\" --out=dist --platform=linux --arch=x64 --icon=resources/installer/Icon.ico --app-version=0.2.0 --build-version=64-bit --version-string.CompanyName=\"Rambox\" --version-string.ProductName=\"Rambox\" --asar --prune --overwrite", |
"pack:linux64": "electron-packager \"./build/production/Rambox/\" \"Rambox\" --out=dist --platform=linux --arch=x64 --icon=resources/installer/Icon.ico --app-version=0.2.0 --build-version=64-bit --version-string.CompanyName=\"Rambox\" --version-string.ProductName=\"Rambox\" --asar --prune --overwrite", |
||||||
"build": "npm run build:linux && npm run build:osx && npm run build:win", |
"build": "npm run build:linux && npm run build:osx && npm run build:win", |
||||||
"build:osx": "electron-builder --macos --universal", |
"build:osx": "build --macos", |
||||||
"build:osx64": "electron-builder --macos --x64", |
"build:linux": "build --linux --publish=onTagOrDraft", |
||||||
"build:osxarm64": "electron-builder --macos --arm64", |
"build:linux32": "build --linux --ia32 --publish=onTagOrDraft", |
||||||
"build:linux": "electron-builder --linux --publish=onTagOrDraft", |
"build:linux64": "build --linux --x64 --publish=onTagOrDraft", |
||||||
"build:linux32": "electron-builder --linux --ia32 --publish=onTagOrDraft", |
"build:win": "build --win --ia32 --x64", |
||||||
"build:linux64": "electron-builder --linux --x64 --publish=onTagOrDraft", |
"build:win32": "build --win --ia32", |
||||||
"build:win": "electron-builder --win --ia32 --x64", |
"build:win64": "build --win --x64", |
||||||
"build:win32": "electron-builder --win --ia32", |
"setup:osx": "npm run sencha:clean && npm run sencha:compile && npm run clean:osx && npm run pack:osx && npm run build:osx", |
||||||
"build:win64": "electron-builder --win --x64", |
|
||||||
"setup:osx": "npm run sencha:clean && npm run sencha:compile && npm run clean:osx && npm run pack:osx && npm run build:osx && npm run build:osx64 && npm run build:osxarm64", |
|
||||||
"setup:win": "npm run sencha:clean && npm run sencha:compile && npm run clean:win && npm run pack:win && npm run build:win", |
"setup:win": "npm run sencha:clean && npm run sencha:compile && npm run clean:win && npm run pack:win && npm run build:win", |
||||||
"all:win": "npm run sencha:clean && npm run sencha:compile && npm run clean:win && npm run pack:win && npm run zip:win32 && npm run zip:win64 && npm run build:win", |
"all:win": "npm run sencha:clean && npm run sencha:compile && npm run clean:win && npm run pack:win && npm run zip:win32 && npm run zip:win64 && npm run build:win", |
||||||
"all:linux": "npm run sencha:clean && npm run sencha:compile && npm run build:linux", |
"all:linux": "npm run sencha:clean && npm run sencha:compile && npm run build:linux", |
||||||
@ -68,36 +64,17 @@ |
|||||||
"build": { |
"build": { |
||||||
"productName": "Rambox", |
"productName": "Rambox", |
||||||
"appId": "com.grupovrs.ramboxce", |
"appId": "com.grupovrs.ramboxce", |
||||||
"afterSign": "resources/installer/notarize.js", |
|
||||||
"asar": true, |
"asar": true, |
||||||
"electronVersion": "13.6.3", |
|
||||||
"electronDownload": { |
|
||||||
"version": "13.6.3" |
|
||||||
}, |
|
||||||
"mac": { |
"mac": { |
||||||
"category": "public.app-category.productivity", |
"category": "public.app-category.productivity", |
||||||
"artifactName": "Rambox-${version}-mac-${arch}.${ext}", |
"artifactName": "Rambox-${version}-mac.${ext}", |
||||||
"target": [ |
"target": [ |
||||||
{ |
"default" |
||||||
"target": "default", |
] |
||||||
"arch": [ |
|
||||||
"universal" |
|
||||||
] |
|
||||||
} |
|
||||||
], |
|
||||||
"hardenedRuntime": true, |
|
||||||
"gatekeeperAssess": false, |
|
||||||
"entitlements": "resources/installer/entitlements.mac.plist", |
|
||||||
"entitlementsInherit": "resources/installer/entitlements.mac.plist", |
|
||||||
"extendInfo": { |
|
||||||
"NSMicrophoneUsageDescription": "Apps inside Rambox CE may need access to your microphone. Please, grant access to have a better experience.", |
|
||||||
"NSCameraUsageDescription": "Apps inside Rambox CE may need access to your camera. Please, grant access to have a better experience." |
|
||||||
} |
|
||||||
}, |
}, |
||||||
"dmg": { |
"dmg": { |
||||||
"title": "Rambox", |
"title": "Rambox", |
||||||
"iconSize": 128, |
"iconSize": 128, |
||||||
"sign": false, |
|
||||||
"contents": [ |
"contents": [ |
||||||
{ |
{ |
||||||
"x": 355, |
"x": 355, |
||||||
@ -113,7 +90,7 @@ |
|||||||
] |
] |
||||||
}, |
}, |
||||||
"win": { |
"win": { |
||||||
"publisherName": "Rambox LLC", |
"publisherName": "Ramiro Pablo Saenz", |
||||||
"artifactName": "Rambox-${version}-win-${arch}.${ext}", |
"artifactName": "Rambox-${version}-win-${arch}.${ext}", |
||||||
"target": [ |
"target": [ |
||||||
"nsis", |
"nsis", |
||||||
@ -127,24 +104,9 @@ |
|||||||
"runAfterFinish": true |
"runAfterFinish": true |
||||||
}, |
}, |
||||||
"snap": { |
"snap": { |
||||||
"publish": [ |
"plugs": ["default", "camera"] |
||||||
{ |
|
||||||
"provider": "github" |
|
||||||
} |
|
||||||
], |
|
||||||
"plugs": [ |
|
||||||
"default", |
|
||||||
"camera", |
|
||||||
"audio-record", |
|
||||||
"audio-playback", |
|
||||||
"removable-media", |
|
||||||
"raw-usb", |
|
||||||
"u2f-devices", |
|
||||||
"cups-control" |
|
||||||
] |
|
||||||
}, |
}, |
||||||
"linux": { |
"linux": { |
||||||
"icon": "resources/installer/icons", |
|
||||||
"category": "Network", |
"category": "Network", |
||||||
"desktop": { |
"desktop": { |
||||||
"Terminal": "false", |
"Terminal": "false", |
||||||
@ -152,9 +114,6 @@ |
|||||||
"Categories": "GTK;GNOME;Network;Email;Chat;InstantMessaging;" |
"Categories": "GTK;GNOME;Network;Email;Chat;InstantMessaging;" |
||||||
}, |
}, |
||||||
"artifactName": "Rambox-${version}-linux-${arch}.${ext}", |
"artifactName": "Rambox-${version}-linux-${arch}.${ext}", |
||||||
"executableArgs": [ |
|
||||||
"--no-sandbox" |
|
||||||
], |
|
||||||
"target": [ |
"target": [ |
||||||
{ |
{ |
||||||
"target": "snap", |
"target": "snap", |
||||||
@ -213,35 +172,31 @@ |
|||||||
] |
] |
||||||
}, |
}, |
||||||
"devDependencies": { |
"devDependencies": { |
||||||
"asar": "0.12.4", |
"asar": "^0.12.4", |
||||||
"chai": "3.5.0", |
"chai": "3.5.0", |
||||||
"crowdin": "1.0.0", |
"crowdin": "1.0.0", |
||||||
"csvjson": "4.3.3", |
"csvjson": "4.3.3", |
||||||
"electron": "13.6.3", |
"electron": "^4.1.3", |
||||||
"electron-builder": "22.14.13", |
"electron-builder": "20.34.0", |
||||||
"electron-notarize": "1.0.0", |
"electron-packager": "^12.1.0", |
||||||
"electron-packager": "15.1.0", |
"mocha": "^5.2.0", |
||||||
"mocha": "5.2.0", |
"spectron": "^3.8.0" |
||||||
"spectron": "^15.0.0" |
|
||||||
}, |
}, |
||||||
"dependencies": { |
"dependencies": { |
||||||
"@exponent/electron-cookies": "2.0.0", |
"@exponent/electron-cookies": "2.0.0", |
||||||
|
"auth0-js": "^9.7.3", |
||||||
"auto-launch-patched": "5.0.2", |
"auto-launch-patched": "5.0.2", |
||||||
"crypto": "1.0.1", |
"crypto": "^1.0.1", |
||||||
"electron-contextmenu-wrapper": "git+https://github.com/ramboxapp/electron-contextmenu-wrapper.git", |
"electron-contextmenu-wrapper": "2.0.0", |
||||||
"electron-is-dev": "1.2.0", |
"electron-is-dev": "^0.3.0", |
||||||
"electron-log": "4.3.0", |
"electron-log": "^2.2.17", |
||||||
"electron-store": "6.0.1", |
"electron-store": "^2.0.0", |
||||||
"electron-updater": "4.5.2", |
"electron-updater": "3.2.0", |
||||||
"is-online": "8.2.0", |
"is-online": "^8.2.0", |
||||||
"mime": "2.3.1", |
"mime": "^2.3.1", |
||||||
"mousetrap": "1.6.3", |
"request": "^2.88.0", |
||||||
"request": "2.88.0", |
"request-promise": "^4.2.2", |
||||||
"request-promise": "4.2.2", |
|
||||||
"rimraf": "2.6.1", |
"rimraf": "2.6.1", |
||||||
"tmp": "0.0.28" |
"tmp": "0.0.28" |
||||||
}, |
|
||||||
"volta": { |
|
||||||
"node": "14.16.1" |
|
||||||
} |
} |
||||||
} |
} |
||||||
|
After Width: | Height: | Size: 45 KiB |
Before Width: | Height: | Size: 2.7 KiB |
After Width: | Height: | Size: 49 KiB |
Before Width: | Height: | Size: 62 KiB After Width: | Height: | Size: 27 KiB |
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 20 KiB |
Before Width: | Height: | Size: 4.6 KiB After Width: | Height: | Size: 70 KiB |
Before Width: | Height: | Size: 9.7 KiB |
Before Width: | Height: | Size: 4.0 KiB |
Before Width: | Height: | Size: 3.9 KiB |
After Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 2.9 KiB |
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 68 KiB |
After Width: | Height: | Size: 52 KiB |
Before Width: | Height: | Size: 3.4 KiB After Width: | Height: | Size: 56 KiB |
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 4.9 KiB |
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 52 KiB |
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 50 KiB |
Before Width: | Height: | Size: 2.3 KiB |
Before Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 53 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 48 KiB |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 47 KiB |
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 56 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 48 KiB |
Before Width: | Height: | Size: 6.3 KiB |
Before Width: | Height: | Size: 3.1 KiB After Width: | Height: | Size: 9.3 KiB |
After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 4.6 KiB |
Before Width: | Height: | Size: 4.7 KiB After Width: | Height: | Size: 57 KiB |
Before Width: | Height: | Size: 4.1 KiB After Width: | Height: | Size: 61 KiB |
Before Width: | Height: | Size: 3.7 KiB |
Before Width: | Height: | Size: 700 B After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 4.3 KiB After Width: | Height: | Size: 64 KiB |
After Width: | Height: | Size: 8.3 KiB |
Before Width: | Height: | Size: 6.6 KiB |
Before Width: | Height: | Size: 2.0 KiB After Width: | Height: | Size: 51 KiB |
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 57 KiB |
Before Width: | Height: | Size: 5.1 KiB After Width: | Height: | Size: 13 KiB |
After Width: | Height: | Size: 64 KiB |
Before Width: | Height: | Size: 4.2 KiB |
Before Width: | Height: | Size: 4.4 KiB After Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 5.5 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 49 KiB |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 48 KiB |
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 52 KiB |
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 51 KiB |
Before Width: | Height: | Size: 5.6 KiB After Width: | Height: | Size: 74 KiB |
Before Width: | Height: | Size: 9.1 KiB After Width: | Height: | Size: 30 KiB |
Before Width: | Height: | Size: 4.7 KiB After Width: | Height: | Size: 3.0 KiB |
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 3.2 KiB |
Before Width: | Height: | Size: 5.0 KiB After Width: | Height: | Size: 70 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 25 KiB |
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 4.3 KiB After Width: | Height: | Size: 4.7 KiB |
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 56 KiB |
Before Width: | Height: | Size: 5.3 KiB After Width: | Height: | Size: 72 KiB |
After Width: | Height: | Size: 49 KiB |
Before Width: | Height: | Size: 4.2 KiB After Width: | Height: | Size: 62 KiB |
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 58 KiB |
After Width: | Height: | Size: 45 KiB |
Before Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 55 KiB |
Before Width: | Height: | Size: 8.5 KiB After Width: | Height: | Size: 5.1 KiB |
Before Width: | Height: | Size: 8.5 KiB After Width: | Height: | Size: 7.2 KiB |
Before Width: | Height: | Size: 3.9 KiB After Width: | Height: | Size: 9.4 KiB |
Before Width: | Height: | Size: 9.4 KiB |
Before Width: | Height: | Size: 6.0 KiB After Width: | Height: | Size: 79 KiB |
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 53 KiB |