From cd4903e9017d6f3eda3f537a8aca6e01bbab5763 Mon Sep 17 00:00:00 2001 From: Will Date: Thu, 30 Nov 2023 11:08:01 +0100 Subject: [PATCH 1/2] feat: conditionally export renderToStrings based on environment --- src/index.ts | 5 ++++- tests/index.jsdom.spec.ts | 10 ++++++++++ tests/index.spec.ts | 9 +++++++++ 3 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 tests/index.jsdom.spec.ts create mode 100644 tests/index.spec.ts diff --git a/src/index.ts b/src/index.ts index 5a2402460..f8283c065 100644 --- a/src/index.ts +++ b/src/index.ts @@ -2,7 +2,7 @@ import { DOMWrapper } from './domWrapper' import { VueWrapper } from './vueWrapper' import BaseWrapper from './baseWrapper' import { mount, shallowMount } from './mount' -import { renderToString } from './renderToString' +import { renderToString as _renderToString } from './renderToString' import { MountingOptions } from './types' import { RouterLinkStub } from './components/RouterLinkStub' import { createWrapperError } from './errorWrapper' @@ -10,6 +10,9 @@ import { config } from './config' import { flushPromises } from './utils/flushPromises' import { enableAutoUnmount, disableAutoUnmount } from './utils/autoUnmount' +// is __SSR__ avaialble? If so, preferable to use that? +const isNode = typeof window === 'undefined' +const renderToString = ( isNode ? _renderToString : null) export { mount, shallowMount, diff --git a/tests/index.jsdom.spec.ts b/tests/index.jsdom.spec.ts new file mode 100644 index 000000000..5abb41999 --- /dev/null +++ b/tests/index.jsdom.spec.ts @@ -0,0 +1,10 @@ +// @vitest-environment jsdom +import { describe, expect, it } from 'vitest' + +import * as exports from '../src/index' +describe('index.js exports', () => { + it('in a browser environment renderToString should not be exported', () => { + // data type of null is object + expect(typeof exports.renderToString).toEqual('object'); + }); +}) \ No newline at end of file diff --git a/tests/index.spec.ts b/tests/index.spec.ts new file mode 100644 index 000000000..d2a158659 --- /dev/null +++ b/tests/index.spec.ts @@ -0,0 +1,9 @@ +// @vitest-environment node +import { describe, expect, it } from 'vitest' + +import * as exports from '../src/index' +describe('index.js exports', () => { + it('in a node environment renderToString should be exported', () => { + expect(typeof exports.renderToString).toEqual('function'); + }); +}) \ No newline at end of file From 9b30a2babaabb5adbbf1b6d25e61245db69c9b30 Mon Sep 17 00:00:00 2001 From: Will Date: Thu, 14 Dec 2023 09:37:13 +0100 Subject: [PATCH 2/2] chore: removed comment --- src/index.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/src/index.ts b/src/index.ts index f8283c065..ade034403 100644 --- a/src/index.ts +++ b/src/index.ts @@ -10,7 +10,6 @@ import { config } from './config' import { flushPromises } from './utils/flushPromises' import { enableAutoUnmount, disableAutoUnmount } from './utils/autoUnmount' -// is __SSR__ avaialble? If so, preferable to use that? const isNode = typeof window === 'undefined' const renderToString = ( isNode ? _renderToString : null) export {