diff --git a/packages/altair-app/src/app/modules/altair/components/doc-viewer/doc-viewer/doc-viewer.component.ts b/packages/altair-app/src/app/modules/altair/components/doc-viewer/doc-viewer/doc-viewer.component.ts index 83b3c08d72..14aac5e463 100644 --- a/packages/altair-app/src/app/modules/altair/components/doc-viewer/doc-viewer/doc-viewer.component.ts +++ b/packages/altair-app/src/app/modules/altair/components/doc-viewer/doc-viewer/doc-viewer.component.ts @@ -29,6 +29,7 @@ import { GqlService } from '../../../services'; import getRootTypes from '../../../utils/get-root-types'; import { DocView } from 'altair-graphql-core/build/types/state/docs.interfaces'; import { AltairConfig } from 'altair-graphql-core/build/config'; +import { getDocUtilsWorkerAsyncClass } from './worker-helper'; @UntilDestroy() @Component({ @@ -228,7 +229,7 @@ export class DocViewerComponent implements OnChanges { async getDocUtilsWorker() { if (!this.docUtilWorker) { try { - const DocUtils: any = Comlink.wrap(new Worker(new URL('../doc-utils.worker', import.meta.url), { type: 'module' })); + const DocUtils: any = getDocUtilsWorkerAsyncClass(); this.docUtilWorker = await new DocUtils(); } catch (error) { debug.error('Could not load doc utilsweb worker'); diff --git a/packages/altair-app/src/app/modules/altair/components/doc-viewer/doc-viewer/worker-helper.ts b/packages/altair-app/src/app/modules/altair/components/doc-viewer/doc-viewer/worker-helper.ts new file mode 100644 index 0000000000..6bcd6b799d --- /dev/null +++ b/packages/altair-app/src/app/modules/altair/components/doc-viewer/doc-viewer/worker-helper.ts @@ -0,0 +1,3 @@ +import * as Comlink from 'comlink'; + +export const getDocUtilsWorkerAsyncClass = () => Comlink.wrap(new Worker(new URL('../doc-utils.worker', import.meta.url), { type: 'module' })); diff --git a/packages/altair-app/src/setup-jest.ts b/packages/altair-app/src/setup-jest.ts index a5c369c9a1..040c49f2cc 100644 --- a/packages/altair-app/src/setup-jest.ts +++ b/packages/altair-app/src/setup-jest.ts @@ -1,4 +1,7 @@ import 'jest-preset-angular/setup-jest'; +jest.mock('./app/modules/altair/components/doc-viewer/doc-viewer/worker-helper', () => ({ + getDocUtilsWorkerAsyncClass: () => {}, +})) /* global mocks for jsdom */ const mock = () => { diff --git a/packages/altair-app/tsconfig.json b/packages/altair-app/tsconfig.json index 1d52b4ed03..f09b980376 100644 --- a/packages/altair-app/tsconfig.json +++ b/packages/altair-app/tsconfig.json @@ -17,6 +17,7 @@ "typeRoots": [ "node_modules/@types" ], + "downlevelIteration": true, "lib": [ "es2016", "dom", diff --git a/packages/altair-app/yarn.lock b/packages/altair-app/yarn.lock index 57de1dbd2d..4581f4e14d 100644 --- a/packages/altair-app/yarn.lock +++ b/packages/altair-app/yarn.lock @@ -3484,10 +3484,10 @@ alphanum-sort@^1.0.2: resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" integrity sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM= -altair-graphql-core@^4.0.9: - version "4.0.9" - resolved "https://registry.yarnpkg.com/altair-graphql-core/-/altair-graphql-core-4.0.9.tgz#c52fd7238bae91114f94c693646182bdf042c47e" - integrity sha512-nL6hCHRanErWaVFVJsVkDmFg1z6iegqywX0W2naovnH7LUHzNFk79lFODMLDtliKqvXa+oQQt+K97emOBpeTVQ== +altair-graphql-core@^4.0.11: + version "4.0.11" + resolved "https://registry.yarnpkg.com/altair-graphql-core/-/altair-graphql-core-4.0.11.tgz#1b8466f498a8ff65c80a2d80438b676e4bff8321" + integrity sha512-X40N49vEDft8Y/sETzGdzYl4uirfv/kQFxkOy2AFZdP32gYelxWKLdx+qDZMxPY3n92f3y5+X+Zm928gxXxI3w== dependencies: "@apollo/client" "^3.3.20" actioncable "^5.2.6"