Skip to content

Commit 9612bb8

Browse files
author
Avaer Kazmer
committed
Initial commit
0 parents  commit 9612bb8

File tree

2,037 files changed

+411618
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

2,037 files changed

+411618
-0
lines changed

FBXLoader.js

+4,115
Large diffs are not rendered by default.

GLTFLoader.js

+3,189
Large diffs are not rendered by default.

OrbitControls.js

+1,071
Large diffs are not rendered by default.

ProgressivePromise.js

+53
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
/* globals window: false, Promise: false */
2+
3+
/**
4+
Returns a Promise decorated with a progress() event.
5+
*/
6+
function ProgressivePromise(fn) {
7+
if (typeof Promise !== "function") {
8+
throw new Error("Promise implementation not available in this environment.");
9+
}
10+
11+
var progressCallbacks = [];
12+
var progressHistory = [];
13+
14+
function doProgress(value) {
15+
for (var i = 0, l = progressCallbacks.length; i < l; ++i) {
16+
progressCallbacks[i](value);
17+
}
18+
19+
progressHistory.push(value);
20+
}
21+
22+
var promise = new Promise(function(resolve, reject) {
23+
fn(resolve, reject, doProgress);
24+
});
25+
26+
promise.progress = function(cb) {
27+
if (typeof cb !== "function") {
28+
throw new Error("cb is not a function.");
29+
}
30+
31+
// Report the previous progress history
32+
for (var i = 0, l = progressHistory.length; i < l; ++i) {
33+
cb(progressHistory[i]);
34+
}
35+
36+
progressCallbacks.push(cb);
37+
return promise;
38+
};
39+
40+
var origThen = promise.then;
41+
42+
promise.then = function(onSuccess, onFail, onProgress) {
43+
origThen.call(promise, onSuccess, onFail);
44+
45+
if (onProgress !== undefined) {
46+
promise.progress(onProgress);
47+
}
48+
49+
return promise;
50+
};
51+
52+
return promise;
53+
}

cert/fullchain.pem

+61
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
-----BEGIN CERTIFICATE-----
2+
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
33+
5NZH9YXt008QRQ==
34+
-----END CERTIFICATE-----
35+
-----BEGIN CERTIFICATE-----
36+
MIIEkjCCA3qgAwIBAgIQCgFBQgAAAVOFc2oLheynCDANBgkqhkiG9w0BAQsFADA/
37+
MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT
38+
DkRTVCBSb290IENBIFgzMB4XDTE2MDMxNzE2NDA0NloXDTIxMDMxNzE2NDA0Nlow
39+
SjELMAkGA1UEBhMCVVMxFjAUBgNVBAoTDUxldCdzIEVuY3J5cHQxIzAhBgNVBAMT
40+
GkxldCdzIEVuY3J5cHQgQXV0aG9yaXR5IFgzMIIBIjANBgkqhkiG9w0BAQEFAAOC
41+
AQ8AMIIBCgKCAQEAnNMM8FrlLke3cl03g7NoYzDq1zUmGSXhvb418XCSL7e4S0EF
42+
q6meNQhY7LEqxGiHC6PjdeTm86dicbp5gWAf15Gan/PQeGdxyGkOlZHP/uaZ6WA8
43+
SMx+yk13EiSdRxta67nsHjcAHJyse6cF6s5K671B5TaYucv9bTyWaN8jKkKQDIZ0
44+
Z8h/pZq4UmEUEz9l6YKHy9v6Dlb2honzhT+Xhq+w3Brvaw2VFn3EK6BlspkENnWA
45+
a6xK8xuQSXgvopZPKiAlKQTGdMDQMc2PMTiVFrqoM7hD8bEfwzB/onkxEz0tNvjj
46+
/PIzark5McWvxI0NHWQWM6r6hCm21AvA2H3DkwIDAQABo4IBfTCCAXkwEgYDVR0T
47+
AQH/BAgwBgEB/wIBADAOBgNVHQ8BAf8EBAMCAYYwfwYIKwYBBQUHAQEEczBxMDIG
48+
CCsGAQUFBzABhiZodHRwOi8vaXNyZy50cnVzdGlkLm9jc3AuaWRlbnRydXN0LmNv
49+
bTA7BggrBgEFBQcwAoYvaHR0cDovL2FwcHMuaWRlbnRydXN0LmNvbS9yb290cy9k
50+
c3Ryb290Y2F4My5wN2MwHwYDVR0jBBgwFoAUxKexpHsscfrb4UuQdf/EFWCFiRAw
51+
VAYDVR0gBE0wSzAIBgZngQwBAgEwPwYLKwYBBAGC3xMBAQEwMDAuBggrBgEFBQcC
52+
ARYiaHR0cDovL2Nwcy5yb290LXgxLmxldHNlbmNyeXB0Lm9yZzA8BgNVHR8ENTAz
53+
MDGgL6AthitodHRwOi8vY3JsLmlkZW50cnVzdC5jb20vRFNUUk9PVENBWDNDUkwu
54+
Y3JsMB0GA1UdDgQWBBSoSmpjBH3duubRObemRWXv86jsoTANBgkqhkiG9w0BAQsF
55+
AAOCAQEA3TPXEfNjWDjdGBX7CVW+dla5cEilaUcne8IkCJLxWh9KEik3JHRRHGJo
56+
uM2VcGfl96S8TihRzZvoroed6ti6WqEBmtzw3Wodatg+VyOeph4EYpr/1wXKtx8/
57+
wApIvJSwtmVi4MFU5aMqrSDE6ea73Mj2tcMyo5jMd6jmeWUHK8so/joWUoHOUgwu
58+
X4Po1QYz+3dszkDqMp4fklxBwXRsW10KXzPMTZ+sOPAveyxindmjkW8lGy+QsRlG
59+
PfZ+G6Z6h7mjem0Y+iWlkYcV4PIWL1iwBi8saCbGS5jN2p8M+X+Q7UNKEkROb3N6
60+
KOqkqm57TH2H3eDJAkSnh6/DNFu0Qg==
61+
-----END CERTIFICATE-----

cert/privkey.pem

+39
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
-----BEGIN RSA PRIVATE KEY-----
2+
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
39+
-----END RSA PRIVATE KEY-----

gunzip.min.js

+26
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

index.js

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
#!/bin/bash
2+
3+
const fs = require('fs');
4+
const http = require('http');
5+
const https = require('https');
6+
const express = require('express');
7+
8+
const app = express();
9+
app.use(express.static(__dirname));
10+
11+
https.createServer({
12+
key: fs.readFileSync('cert/privkey.pem'),
13+
cert: fs.readFileSync('cert/fullchain.pem'),
14+
}, app)
15+
.listen(443)
16+
17+
console.log(`https://dev.exokit.org`);

0 commit comments

Comments
 (0)