Skip to content

Commit

Permalink
feat(SharedArrayBuffer): enable by default while adding a disable option
Browse files Browse the repository at this point in the history
  • Loading branch information
jourdain committed Jun 19, 2024
1 parent 9535d20 commit 49df5ed
Show file tree
Hide file tree
Showing 5 changed files with 24 additions and 4 deletions.
2 changes: 2 additions & 0 deletions vue2-app/public/coi-serviceworker.min.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 10 additions & 1 deletion vue2-app/src/main.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,10 @@ import Vue from 'vue';
import App from './components/App';
import Trame from './use';

import vtkURLExtract from '@kitware/vtk.js/Common/Core/URLExtract';

import { setAddAttachment } from './components/Connect/trame/decorators';
import { handlePageUpdate, GLOBAL_VUE_OPTIONS } from './components/Connect/trame/state';
import { handlePageUpdate, loadScript, GLOBAL_VUE_OPTIONS } from './components/Connect/trame/state';
import wslink from './components/Connect/wslink';

const DEFAULT_CONNECTION_NAME = 'TrameConnect';
Expand Down Expand Up @@ -61,4 +63,11 @@ async function initializeApplication(Vue) {
}).$mount('#app');
}

// Initialize service worker to override headers for SharedArrayBuffer
// > Cross-Origin-Opener-Policy: same-origin
// > Cross-Origin-Embedder-Policy: require-corp
if (!vtkURLExtract.extractURLParameters().disableSharedArrayBuffer) {
loadScript('coi-serviceworker.min.js');
}

initializeApplication(Vue);
2 changes: 2 additions & 0 deletions vue3-app/public/coi-serviceworker.min.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions vue3-app/src/core/trame/setup.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@

var LOADED_URLS = [];

function loadScript(url) {
export function loadScript(url) {
return new Promise(function (resolve, reject) {
if (LOADED_URLS.indexOf(url) === -1) {
LOADED_URLS.push(url);
Expand All @@ -25,7 +25,7 @@ function loadScript(url) {
});
}

function loadScriptAsModule(url) {
export function loadScriptAsModule(url) {
return new Promise(function (resolve, reject) {
if (LOADED_URLS.indexOf(url) === -1) {
LOADED_URLS.push(url);
Expand Down
9 changes: 8 additions & 1 deletion vue3-app/src/main.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import "./style.css";
import vtkURLExtract from "@kitware/vtk.js/Common/Core/URLExtract";
import wslink from "./core/wslink";
import { handlePageResources } from "./core/trame/setup";
import { handlePageResources, loadScript } from "./core/trame/setup";
import { createTrameInstance } from "./core/trame";
import TrameUse from "./use";

Expand Down Expand Up @@ -105,4 +105,11 @@ async function start() {
app.mount("#app");
}

// Initialize service worker to override headers for SharedArrayBuffer
// > Cross-Origin-Opener-Policy: same-origin
// > Cross-Origin-Embedder-Policy: require-corp
if (!vtkURLExtract.extractURLParameters().disableSharedArrayBuffer) {
loadScript("coi-serviceworker.min.js");
}

start();

0 comments on commit 49df5ed

Please sign in to comment.