diff --git a/packages/transformers/src/utils/cache/CrossOriginStorageCache.js b/packages/transformers/src/utils/cache/CrossOriginStorageCache.js index 492bf9a72..280f0600c 100644 --- a/packages/transformers/src/utils/cache/CrossOriginStorageCache.js +++ b/packages/transformers/src/utils/cache/CrossOriginStorageCache.js @@ -112,6 +112,7 @@ export class CrossOriginStorage { _storeBlobInCOS = async (blob, hashHex) => { const handle = await navigator.crossOriginStorage.requestFileHandle(makeHashDescriptor(hashHex), { create: true, + origins: '*', }); const writableStream = await handle.createWritable(); await writableStream.write(blob); diff --git a/packages/transformers/src/utils/cache/cross-origin-storage.d.ts b/packages/transformers/src/utils/cache/cross-origin-storage.d.ts index 979775cf7..b1b7ca17d 100644 --- a/packages/transformers/src/utils/cache/cross-origin-storage.d.ts +++ b/packages/transformers/src/utils/cache/cross-origin-storage.d.ts @@ -17,6 +17,15 @@ interface CrossOriginStorageRequestFileHandleHash { */ interface CrossOriginStorageRequestFileHandleOptions { create?: boolean; + /** + * Restricts (or opens up) which origins may later read the stored file. + * `'*'` makes the resource available to all origins; an array of origin + * strings restricts it to that set; omitting the field keeps the + * default (same-site only). Visibility can be upgraded but never + * downgraded. + * @see https://github.com/WICG/cross-origin-storage#example-restricting-resources-to-specific-origins + */ + origins?: '*' | string[]; } /**