Skip to content

Commit 947e2ae

Browse files
committed
new build
1 parent ef50223 commit 947e2ae

24 files changed

+412
-211
lines changed

dist/firephp.build/background.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
<meta charset="utf-8">
66
<script src="./lib/github.com~pinf~pinf-for-mozilla-web-ext/scripts/lib/pinf-loader-full.browser.js"></script>
77
<script src="./lib/github.com~pinf~pinf-for-mozilla-web-ext/scripts/loader.js"></script>
8+
<script src="./lib.js"></script>
89
<script src="./background.js"></script>
910
<link rel="stylesheet" href="./default.css">
1011
</head>

dist/firephp.build/background.js

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11

22
const WINDOW = window;
3-
const BROWSER = browser;
43

5-
BROWSER.runtime.onMessage.addListener(function (request, sender, _sendResponse) {
4+
5+
WINDOW.crossbrowser.runtime.onMessage.addListener(function (request, sender, _sendResponse) {
66

77
function sendResponse (response) {
88

99
response.to = request.from;
1010
response.from = request.to;
1111
response.id = request.id;
1212

13-
BROWSER.tabs.sendMessage(
13+
WINDOW.crossbrowser.tabs.sendMessage(
1414
sender.tab.id,
1515
response
1616
).catch(console.error);
@@ -21,10 +21,10 @@ BROWSER.runtime.onMessage.addListener(function (request, sender, _sendResponse)
2121
var url = request.url;
2222

2323
if (!/^https?:/.test(url)) {
24-
url = BROWSER.runtime.getURL(url);
24+
url = WINDOW.crossbrowser.runtime.getURL(url);
2525
}
2626

27-
window.fetch(url).then(function (response) {
27+
WINDOW.fetch(url).then(function (response) {
2828
return response.text();
2929
}).then(function (text) {
3030

@@ -41,7 +41,7 @@ console.log("ERROR", err);
4141
} else
4242
if (request.to === "postJSON") {
4343

44-
window.fetch(request.url, {
44+
WINDOW.fetch(request.url, {
4545
method: 'post',
4646
headers: {
4747
"Accept": "application/json; charset=utf-8",

dist/firephp.build/devtools-page.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
<script src="./lib/github.com~pinf~pinf-for-mozilla-web-ext/scripts/lib/pinf-loader-full.browser.js"></script>
77
<script src="./lib/github.com~pinf~pinf-for-mozilla-web-ext/scripts/loader.js"></script>
88
<script src="./lib/eventemitter3.js"></script>
9+
<script src="./lib.js"></script>
910
<script src="./devtools-page.js"></script>
1011
<link rel="stylesheet" href="./default.css">
1112
</head>

dist/firephp.build/devtools-page.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11

22
const WINDOW = window;
3+
const BROWSER = (typeof browser != "undefined") ? browser : chrome;
34

45
const panels = new EventEmitter();
56
panels.on("set", function (name, value) {
@@ -25,7 +26,7 @@ panels.on("set", function (name, value) {
2526

2627
const url = "scripts/" + panel.filename;
2728

28-
browser.devtools.panels.create(
29+
WINDOW.crossbrowser.devtools.panels.create(
2930
panel.label || undefined,
3031
panel.icon || undefined,
3132
url

dist/firephp.build/lib.js

Lines changed: 117 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,117 @@
1+
2+
(function (WINDOW) {
3+
4+
const BROWSER = (typeof browser != "undefined") ? browser : chrome;
5+
const IS_FIREFOX = (typeof browser !== "undefined");
6+
7+
function promisify (method, instance) {
8+
return function (args) {
9+
return new Promise (function (resolve, reject) {
10+
try {
11+
args = Array.from(args);
12+
args.push(function (err, result) {
13+
if (err) {
14+
reject(err);
15+
return;
16+
}
17+
resolve(result);
18+
});
19+
method.apply(instance, args);
20+
} catch (err) {
21+
reject(err);
22+
}
23+
});
24+
}
25+
}
26+
27+
function promisifyNoErr (method, instance) {
28+
return function (args) {
29+
return new Promise (function (resolve, reject) {
30+
try {
31+
args = Array.from(args);
32+
args.push(function (result) {
33+
resolve(result);
34+
});
35+
method.apply(instance, args);
36+
} catch (err) {
37+
reject(err);
38+
}
39+
});
40+
}
41+
}
42+
43+
WINDOW.crossbrowser = {
44+
storage: {
45+
onChanged: BROWSER.storage.onChanged,
46+
local: {
47+
get: async function () {
48+
if (IS_FIREFOX) {
49+
return BROWSER.storage.local.get.apply(BROWSER.storage.local, arguments);
50+
}
51+
return promisifyNoErr(BROWSER.storage.local.get, BROWSER.storage.local)(arguments);
52+
},
53+
set: async function () {
54+
if (IS_FIREFOX) {
55+
return BROWSER.storage.local.set.apply(BROWSER.storage.local, arguments);
56+
}
57+
return promisifyNoErr(BROWSER.storage.local.set, BROWSER.storage.local)(arguments);
58+
}
59+
}
60+
},
61+
runtime: {
62+
getURL: BROWSER.runtime.getURL,
63+
onMessage: BROWSER.runtime.onMessage,
64+
sendMessage: async function () {
65+
if (IS_FIREFOX) {
66+
return BROWSER.runtime.sendMessage.apply(BROWSER.runtime, arguments);
67+
}
68+
const result = await promisifyNoErr(BROWSER.runtime.sendMessage, BROWSER.runtime)(arguments);
69+
if (!result) {
70+
throw Error(BROWSER.runtime.lastError.message || BROWSER.runtime.lastError);
71+
}
72+
return result;
73+
},
74+
getManifest: function () {
75+
return BROWSER.runtime.getManifest();
76+
}
77+
},
78+
tabs: {
79+
query: async function () {
80+
if (IS_FIREFOX) {
81+
return BROWSER.tabs.query.apply(BROWSER.tabs, arguments);
82+
}
83+
return promisifyNoErr(BROWSER.tabs.query, BROWSER.tabs)(arguments);
84+
},
85+
sendMessage: async function () {
86+
if (IS_FIREFOX) {
87+
return BROWSER.tabs.sendMessage.apply(BROWSER.tabs, arguments);
88+
}
89+
return promisifyNoErr(BROWSER.tabs.sendMessage, BROWSER.tabs)(arguments);
90+
},
91+
reload: async function () {
92+
if (IS_FIREFOX) {
93+
return BROWSER.tabs.reload.apply(BROWSER.tabs, arguments);
94+
}
95+
return promisifyNoErr(BROWSER.tabs.reload, BROWSER.tabs)(arguments);
96+
}
97+
},
98+
devtools: {
99+
inspectedWindow: {},
100+
panels: {
101+
create: async function () {
102+
if (IS_FIREFOX) {
103+
return BROWSER.devtools.panels.create.apply(BROWSER.devtools.panels, arguments);
104+
}
105+
return promisifyNoErr(BROWSER.devtools.panels.create, BROWSER.devtools.panels)(arguments);
106+
}
107+
}
108+
}
109+
};
110+
111+
Object.defineProperty(WINDOW.crossbrowser.devtools.inspectedWindow, 'tabId', {
112+
get: function() {
113+
return BROWSER.devtools.inspectedWindow.tabId;
114+
}
115+
});
116+
117+
})(window);

dist/firephp.build/manifest.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"manifest_version": 2,
33
"description": "Log from PHP to a devtools panel.",
44
"name": "FirePHP",
5-
"version": "1.2.4",
5+
"version": "1.3.0",
66
"applications": {
77
"gecko": {
88
@@ -13,7 +13,7 @@
1313
"48": "skin/__icon_48.png"
1414
},
1515
"permissions": [
16-
"tabs",
16+
"activeTab",
1717
"storage",
1818
"webRequest",
1919
"webNavigation",

0 commit comments

Comments
 (0)