Skip to content
This repository has been archived by the owner on Nov 27, 2021. It is now read-only.

Commit

Permalink
Merge pull request #10 from swashapp/NewFeatures
Browse files Browse the repository at this point in the history
New features
  • Loading branch information
ebkhalilzadeh authored Sep 11, 2020
2 parents b9c3922 + 618c5f1 commit 4986571
Show file tree
Hide file tree
Showing 104 changed files with 27,181 additions and 20,355 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,4 @@ web-ext-artifacts/
js/streamConfig.js
js/configs/streamConfig.json

/.idea/
1 change: 1 addition & 0 deletions background.html
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
<script src="lib/browser-polyfill.js"></script>
<script src="lib/3box.js"></script>
<script src="lib/identity-wallet.js"></script>
<script src="lib/jsontokens.js"></script>
<!-- End of loading modules -->
<!-- these includes should be at the end -->
<script type="module" src="js/backgroundScript.js"></script>
Expand Down
14 changes: 4 additions & 10 deletions environment/production/manifest.json
Original file line number Diff line number Diff line change
@@ -1,14 +1,8 @@
{
"applications": {
"gecko": {
"id": "[email protected]"
}
},

"background": {
"page": "background.html"
},

"browser_action": {
"browser_style": false,
"default_icon": {
Expand All @@ -17,7 +11,7 @@
},
"default_title": "Swash"
},

"description": "Swash is a Streamr Community Product that collects information about users browsing activities",

"icons": {
Expand All @@ -29,12 +23,12 @@
"manifest_version": 2,

"name": "Swash",

"homepage_url": "https://swashapp.io/",

"permissions": ["clipboardRead","storage","bookmarks", "tabs", "webRequest", "<all_urls>", "webRequestBlocking", "downloads"],

"content_security_policy": "script-src 'self'; object-src 'self';",

"version": "1.1.5"
"version": "1.1.6"
}
36 changes: 17 additions & 19 deletions js/backgroundScript.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,34 +7,31 @@ import {apiCall} from "./functions/apiCall.js"
import {loader} from "./loader.js"
import {content} from "./functions/content.js"
import {dataHandler} from "./dataHandler.js"
import {pushStream} from "./push.js"
import {context} from "./functions/context.js"
import {communityHelper} from "./communityHelper.js"
import {task} from "./functions/task.js"
import {pageAction} from "./pageAction.js"
import {transfer} from "./functions/transfer.js"
import {onBoarding} from "./onBoarding.js"
import {onboarding} from "./onboarding.js"
import {memberManager} from "./memberManager.js"
import {swashApiHelper} from "./swashApiHelper.js"



var isConfigReady = false;
var tryCount = 0;

let isConfigReady = false;
let tryCount = 0;

function initConfigs() {
pushStream.init();
memberManager.init();
dataHandler.init();
communityHelper.init();
onBoarding.init();
onboarding.init();
apiCall.init();
swashApiHelper.init();
loader.initConfs();
}


async function installSwash(info) {
// debugger;
console.log("Start installing...")
if(!isConfigReady) {
console.log("Configuration files is not ready yet, will try install it later")
Expand All @@ -51,14 +48,14 @@ async function installSwash(info) {
await configManager.importAll();
initConfigs();
if (info.reason === "update" || info.reason === "install") {
onBoarding.isNeededOnBoarding().then((isNeeded) => {
if (isNeeded)
onBoarding.openOnBoarding();
else
loader.install().then(() => {
loader.onInstalled();
});
});
await loader.createDBIfNotExist();
const isNeeded = await onboarding.isNeededOnBoarding();
if (isNeeded) {
onboarding.openOnBoarding();
} else {
await loader.install();
await loader.onInstalled();
}
}
}

Expand Down Expand Up @@ -111,13 +108,14 @@ configManager.loadAll().then(async () => {
loader: loader,
content: content,
dataHandler: dataHandler,
pushStream: pushStream,
context: context,
task: task,
communityHelper: communityHelper,
pageAction: pageAction,
transfer: transfer,
onBoarding: onBoarding,
onboarding: onboarding,
swashApiHelper: swashApiHelper,
configManager: configManager
};
sendResponse(objList[message.obj][message.func](...message.params));
});
Expand Down
118 changes: 52 additions & 66 deletions js/browserUtils.js
Original file line number Diff line number Diff line change
@@ -1,67 +1,53 @@
var browserUtils = (function() {
function getUserAgent()
{
if(typeof browser.runtime.getBrowserInfo === "function")
return browser.runtime.getBrowserInfo();
return navigator.userAgent;
}

function getAllInstalledPlugins()
{
/*return browser.management.getAll();*/
}

function getBrowserLanguage()
{
return navigator.language;
}

async function getPlatformInfo()
{
if(navigator.platform && navigator.platform.startsWith("Win"))
return {os: 'win'};
let platformInfoPromise = browser.runtime.getPlatformInfo();
return platformInfoPromise.then((platformInfo) => {
return platformInfo;
}).catch((error) => {
return {os: 'android'};
})
}

async function isMobileDevice() {
let os = (await getPlatformInfo()).os;
if(os === 'android')
return true;
return false;
}

async function getProxyStatus() {
/*
let proxySetting = await browser.proxy.settings.get({});
return {httpProxyAll: proxySetting.value.httpProxyAll, proxyDNS: proxySetting.value.proxyDNS, proxyMode: proxySetting.value.mode};
*/
}

function getVersion(){
return browser.runtime.getManifest().version;
}

async function getScreenshot() {
let img = "";
if(typeof browser.tabs.captureTab === "function")
img = await browser.tabs.captureTab();
return img;
}
return {
getUserAgent,
getAllInstalledPlugins,
getBrowserLanguage,
getPlatformInfo,
getProxyStatus,
getVersion,
getScreenshot,
isMobileDevice
};
}())

var browserUtils = (function() {
function getUserAgent()
{
if(typeof browser.runtime.getBrowserInfo === "function")
return browser.runtime.getBrowserInfo();
return navigator.userAgent;
}

function getAllInstalledPlugins()
{
/*return browser.management.getAll();*/
}

function getBrowserLanguage()
{
return navigator.language;
}

async function getPlatformInfo()
{
if(navigator.platform && navigator.platform.startsWith("Win"))
return {os: 'win'};
let platformInfoPromise = browser.runtime.getPlatformInfo();
return platformInfoPromise.then((platformInfo) => {
return platformInfo;
}).catch((error) => {
return {os: 'android'};
})
}

async function isMobileDevice() {
let os = (await getPlatformInfo()).os;
if(os === 'android')
return true;
return false;
}


function getVersion(){
return browser.runtime.getManifest().version;
}

return {
getUserAgent,
getAllInstalledPlugins,
getBrowserLanguage,
getPlatformInfo,
getVersion,
isMobileDevice
};
}())

export {browserUtils}
Loading

0 comments on commit 4986571

Please sign in to comment.