Compare commits

...

3 Commits

Author SHA1 Message Date
semantic-release-bot c7f2e0fc21 chore(release): 0.1.0-develop.11 [skip ci]
# [0.1.0-develop.11](https://git.lumeweb.com/LumeWeb/libkernel/compare/v0.1.0-develop.10...v0.1.0-develop.11) (2023-07-02)

### Bug Fixes

* add support for a hosted kernel, but only on localhost (for debugging) ([44e2a0d](44e2a0d06d))
2023-07-02 15:23:35 +00:00
Derrick Hammer 962a79bf38
Merge remote-tracking branch 'origin/develop' into develop 2023-07-02 11:22:17 -04:00
Derrick Hammer 44e2a0d06d
fix: add support for a hosted kernel, but only on localhost (for debugging) 2023-07-02 11:22:11 -04:00
4 changed files with 40 additions and 3 deletions

View File

@ -1,3 +1,10 @@
# [0.1.0-develop.11](https://git.lumeweb.com/LumeWeb/libkernel/compare/v0.1.0-develop.10...v0.1.0-develop.11) (2023-07-02)
### Bug Fixes
* add support for a hosted kernel, but only on localhost (for debugging) ([44e2a0d](https://git.lumeweb.com/LumeWeb/libkernel/commit/44e2a0d06d5c8511a505a6b5348db6cefac10a01))
# [0.1.0-develop.10](https://git.lumeweb.com/LumeWeb/libkernel/compare/v0.1.0-develop.9...v0.1.0-develop.10) (2023-07-02)

4
npm-shrinkwrap.json generated
View File

@ -1,12 +1,12 @@
{
"name": "@lumeweb/libkernel",
"version": "0.1.0-develop.10",
"version": "0.1.0-develop.11",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@lumeweb/libkernel",
"version": "0.1.0-develop.10",
"version": "0.1.0-develop.11",
"dependencies": {
"@lumeweb/libweb": "0.2.0-develop.21",
"emittery": "^1.0.1"

View File

@ -1,6 +1,6 @@
{
"name": "@lumeweb/libkernel",
"version": "0.1.0-develop.10",
"version": "0.1.0-develop.11",
"main": "lib/index.js",
"type": "module",
"types": "lib/index.d.ts",

View File

@ -186,12 +186,37 @@ function handleMessage(event: MessageEvent) {
// Ignore any other messages as they might be from other applications.
}
function launchKernelFrame() {
const iframe = document.createElement("iframe");
iframe.src = "https://kernel.lumeweb.com";
iframe.width = "0";
iframe.height = "0";
iframe.style.border = "0";
iframe.style.position = "absolute";
document.body.appendChild(iframe);
kernelSource = <Window>iframe.contentWindow;
kernelOrigin = "https://kernel.lumeweb.com";
kernelAuthLocation = "https://kernel.lumeweb.com/auth.html";
sourceResolve();
// Set a timer to fail the login process if the kernel doesn't load in
// time.
setTimeout(() => {
if (initResolved === true) {
return;
}
initResolved = true;
initResolve("tried to open kernel in iframe, but hit a timeout");
}, 24000);
}
// messageBridge will send a message to the bridge of the lume extension to
// see if it exists. If it does not respond or if it responds with an error,
// messageBridge will open an iframe to skt.us and use that as the kernel.
let kernelSource: Window;
let kernelOrigin: string;
let kernelAuthLocation: string;
function messageBridge() {
// Establish the function that will handle the bridge's response.
let bridgeInitComplete = false;
@ -242,6 +267,11 @@ function messageBridge() {
return;
}
bridgeInitComplete = true;
if ("localhost" === window.location.hostname) {
log("browser extension not found, falling back to lumeweb.com");
launchKernelFrame();
}
}, 500);
return initPromise;