k-l-lambda Claude commited on
Commit
0b5b16e
·
1 Parent(s): d182f15

fix: deregister coi-serviceworker in iframe mode

Browse files

When the page is in an iframe, deregister any existing service worker
that was registered from a previous direct visit. This prevents the
COEP headers from blocking cross-origin resources in the HF Space iframe.

Co-Authored-By: Claude <noreply@anthropic.com>

trigo-web/app/dist/index.html CHANGED
@@ -8,8 +8,10 @@
8
  <!-- Enable cross-origin isolation for SharedArrayBuffer (needed for ONNX multi-threading) -->
9
  <!-- Skip service worker in iframe to avoid COOP blocking - AI will use single-thread mode -->
10
  <script>
 
11
  window.coi = {
12
- shouldRegister: () => window.top === window.self, // Only register when not in iframe
 
13
  quiet: true
14
  };
15
  </script>
 
8
  <!-- Enable cross-origin isolation for SharedArrayBuffer (needed for ONNX multi-threading) -->
9
  <!-- Skip service worker in iframe to avoid COOP blocking - AI will use single-thread mode -->
10
  <script>
11
+ const isInIframe = window.top !== window.self;
12
  window.coi = {
13
+ shouldRegister: () => !isInIframe, // Only register when not in iframe
14
+ shouldDeregister: () => isInIframe, // Deregister if in iframe (from previous direct visit)
15
  quiet: true
16
  };
17
  </script>
trigo-web/app/index.html CHANGED
@@ -8,8 +8,10 @@
8
  <!-- Enable cross-origin isolation for SharedArrayBuffer (needed for ONNX multi-threading) -->
9
  <!-- Skip service worker in iframe to avoid COOP blocking - AI will use single-thread mode -->
10
  <script>
 
11
  window.coi = {
12
- shouldRegister: () => window.top === window.self, // Only register when not in iframe
 
13
  quiet: true
14
  };
15
  </script>
 
8
  <!-- Enable cross-origin isolation for SharedArrayBuffer (needed for ONNX multi-threading) -->
9
  <!-- Skip service worker in iframe to avoid COOP blocking - AI will use single-thread mode -->
10
  <script>
11
+ const isInIframe = window.top !== window.self;
12
  window.coi = {
13
+ shouldRegister: () => !isInIframe, // Only register when not in iframe
14
+ shouldDeregister: () => isInIframe, // Deregister if in iframe (from previous direct visit)
15
  quiet: true
16
  };
17
  </script>