@webqit/webflo 0.9.7-0 → 0.9.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json
CHANGED
|
@@ -76,12 +76,12 @@ export default class Worker {
|
|
|
76
76
|
// -------------
|
|
77
77
|
// ONFETCH
|
|
78
78
|
self.addEventListener('fetch', async evt => {
|
|
79
|
-
return;
|
|
80
79
|
// URL schemes that might arrive here but not supported; e.g.: chrome-extension://
|
|
81
|
-
if (!evt.request.url.startsWith('http')
|
|
82
|
-
const
|
|
80
|
+
if (!evt.request.url.startsWith('http')) return;
|
|
81
|
+
const deriveInit = req => [
|
|
83
82
|
'method', 'headers', 'body', 'mode', 'credentials', 'cache', 'redirect', 'referrer', 'integrity',
|
|
84
|
-
].reduce((init, prop) => ({ [prop]:
|
|
83
|
+
].reduce((init, prop) => ({ [prop]: req[prop], ...init }), {});
|
|
84
|
+
const requestInit = deriveInit(evt.request);
|
|
85
85
|
evt.respondWith(this.go(evt.request.url, requestInit, { event: evt }));
|
|
86
86
|
});
|
|
87
87
|
|
|
@@ -92,6 +92,7 @@ export default class Worker {
|
|
|
92
92
|
Observer.observe(this.network, es => {
|
|
93
93
|
//console.log('//////////', ...es.map(e => `${e.name}: ${e.value}`))
|
|
94
94
|
});
|
|
95
|
+
|
|
95
96
|
}
|
|
96
97
|
|
|
97
98
|
/**
|
|
@@ -112,7 +113,7 @@ export default class Worker {
|
|
|
112
113
|
let request = this.generateRequest(url.href, init);
|
|
113
114
|
if (detail.event instanceof self.Request) {
|
|
114
115
|
request = detail.event.request;
|
|
115
|
-
|
|
116
|
+
Object.defineProperty(detail.event, 'request', { value: request });
|
|
116
117
|
}
|
|
117
118
|
// The navigation event
|
|
118
119
|
let httpEvent = new HttpEvent(request, detail, (id = null, persistent = false) => this.getSession(httpEvent, id, persistent));
|
|
@@ -129,6 +130,7 @@ export default class Worker {
|
|
|
129
130
|
} else {
|
|
130
131
|
response = await this.remoteFetch(httpEvent.request);
|
|
131
132
|
}
|
|
133
|
+
return response;
|
|
132
134
|
let finalResponse = this.handleResponse(httpEvent, response);
|
|
133
135
|
// Return value
|
|
134
136
|
return finalResponse;
|
|
@@ -183,7 +185,7 @@ export default class Worker {
|
|
|
183
185
|
// This catch() is NOT intended to handle failure of the fetch
|
|
184
186
|
response.catch(e => Observer.set(this.network, 'error', e.message));
|
|
185
187
|
// Return xResponse
|
|
186
|
-
return response.then(_response =>
|
|
188
|
+
return response.then(_response => Response.compat(_response));
|
|
187
189
|
}
|
|
188
190
|
|
|
189
191
|
// Caching strategy: cache_first
|
|
@@ -200,11 +202,6 @@ export default class Worker {
|
|
|
200
202
|
|
|
201
203
|
// Caching strategy: network_first
|
|
202
204
|
networkFetch(request, params = {}) {
|
|
203
|
-
if (params.forceNetwork) {
|
|
204
|
-
let url = new URL(request.url);
|
|
205
|
-
url.searchParams.set('$force-cache', '1');
|
|
206
|
-
request.attr.url = url.toString();
|
|
207
|
-
}
|
|
208
205
|
if (!params.cacheFallback) {
|
|
209
206
|
Observer.set(this.network, 'remote', true);
|
|
210
207
|
return self.fetch(request);
|
|
@@ -247,7 +244,7 @@ export default class Worker {
|
|
|
247
244
|
|
|
248
245
|
// Handles response object
|
|
249
246
|
handleResponse(e, response) {
|
|
250
|
-
if (!(response instanceof Response)) { response =
|
|
247
|
+
if (!(response instanceof Response)) { response = Response.compat(response); }
|
|
251
248
|
return response;
|
|
252
249
|
}
|
|
253
250
|
|
|
@@ -35,7 +35,7 @@ export default class WorkerClient {
|
|
|
35
35
|
return remoteFetch(event.request);
|
|
36
36
|
}, remoteFetch);
|
|
37
37
|
if (!(response instanceof httpEvent.Response)) {
|
|
38
|
-
response =
|
|
38
|
+
response = httpEvent.Response.compat(response);
|
|
39
39
|
}
|
|
40
40
|
return response;
|
|
41
41
|
};
|
|
@@ -57,6 +57,13 @@ const xResponse = (whatwagResponse, Headers, FormData, Blob) => class extends xH
|
|
|
57
57
|
return 'redirected' in this.attrs ? this.attrs.redirected : super.redirected;
|
|
58
58
|
}
|
|
59
59
|
|
|
60
|
+
static compat(response) {
|
|
61
|
+
if (response instanceof whatwagResponse) {
|
|
62
|
+
return Object.setPrototypeOf(response, new this);
|
|
63
|
+
}
|
|
64
|
+
return new this(response);
|
|
65
|
+
}
|
|
66
|
+
|
|
60
67
|
};
|
|
61
68
|
|
|
62
69
|
export default xResponse;
|
package/vm
DELETED
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
-------------------
|
|
2
|
-
sudo app-get install git
|
|
3
|
-
sudo app-get install node
|
|
4
|
-
-------------------
|
|
5
|
-
git clone ...
|
|
6
|
-
cd
|
|
7
|
-
node i
|
|
8
|
-
sudo npm i -g @webqit/webflo
|
|
9
|
-
sudo npm i -g @webqit/oohtml-cli
|
|
10
|
-
webflo config origins
|
|
11
|
-
webflo config server
|
|
12
|
-
sudo webflo start
|
|
13
|
-
-------------------
|
|
14
|
-
sudo iptables -I INPUT -p tcp -m tcp --dport 80 -j ACCEPT
|
|
15
|
-
sudo iptables -I INPUT -p tcp -m tcp --dport 443 -j ACCEPT
|
|
16
|
-
List port-forwarding
|
|
17
|
-
sudo iptables -t nat -L
|
|
18
|
-
Add port-forwarding
|
|
19
|
-
sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3000
|
|
20
|
-
sudo iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDIRECT --to-port 4200
|
|
21
|
-
Delete port-forwarding
|
|
22
|
-
sudo iptables -t nat -D PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3000
|
|
23
|
-
sudo sh -c "iptables-save > /etc/iptables.rules"
|
|
24
|
-
sudo apt-get install iptables-persistent
|
|
25
|
-
-------------------
|
|
26
|
-
sudo apt-get update &&
|
|
27
|
-
sudo apt-get install software-properties-common &&
|
|
28
|
-
sudo add-apt-repository universe &&
|
|
29
|
-
sudo add-apt-repository ppa:certbot/certbot &&
|
|
30
|
-
sudo apt-get update
|
|
31
|
-
|
|
32
|
-
sudo apt-get install certbot
|
|
33
|
-
https://dev.to/omergulen/step-by-step-node-express-ssl-certificate-run-https-server-from-scratch-in-5-steps-5b87
|
|
34
|
-
-------------------
|
|
35
|
-
sudo certbot certonly --standalone
|
|
36
|
-
sudo certbot certonly --webroot
|
|
37
|
-
/etc/letsencrypt/live/webqit.io/fullchain.pem
|
|
38
|
-
/etc/letsencrypt/live/webqit.io/privkey.pem
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
sudo certbot certonly --webroot -w /home/webqit_io/www/neatly.fit/public -d neatly.fit
|
|
43
|
-
sudo certbot certonly --webroot -w /home/webqit_io/www/neatly.fit/public -d neatly.fit --debug-challenges
|
|
44
|
-
sudo certbot-auto certonly --manual --preferred-challenges dns -d neatly.fit --debug-challenges
|
|
45
|
-
|
|
46
|
-
sudo certbot run -a webroot -i apache -w /home/webqit_io/www/neatly.fit/public -d neatly.fit --debug-challenges
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
/.well-known/acme-challenge
|
|
52
|
-
/www/neatly.fit/public/.well-known/acme-challenge
|
|
53
|
-
certbot certonly --manual --preferred-challenges http -d neatly.fit --manual-auth-hook certbot-http-auth-hook --manual-cleanup-hook certbot-http-cleanup-hook --debug-challenges
|
|
54
|
-
|
|
55
|
-
An unexpected error occurred:
|
|
56
|
-
There were too many requests of a given type :: Error creating new order :: too many failed authorizations recently: see https://letsencrypt.org/docs/rate-limits/
|
|
57
|
-
|
|
58
|
-
sudo launchctl list | grep postgres
|