Skip to content

Commit ef3ce5f

Browse files
tmp
1 parent 2398430 commit ef3ce5f

File tree

5 files changed

+49
-3
lines changed

5 files changed

+49
-3
lines changed

packages/react-on-rails-pro/jest.config.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,4 +31,8 @@ export default {
3131

3232
// Set root directory to current package
3333
rootDir: '.',
34+
35+
testEnvironmentOptions: {
36+
customExportConditions: process.env.NODE_CONDITIONS?.split(','),
37+
},
3438
};

packages/react-on-rails-pro/package.json

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,5 +73,9 @@
7373
"bugs": {
7474
"url": "https://github.com/shakacode/react_on_rails/issues"
7575
},
76-
"homepage": "https://github.com/shakacode/react_on_rails#readme"
76+
"homepage": "https://github.com/shakacode/react_on_rails#readme",
77+
"devDependencies": {
78+
"@types/mock-fs": "^4.13.4",
79+
"mock-fs": "^5.5.0"
80+
}
7781
}

packages/react-on-rails-pro/src/ReactOnRailsRSC.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ import {
2222
StreamRenderState,
2323
StreamableComponentResult,
2424
} from 'react-on-rails/types';
25-
import handleError from 'react-on-rails/handleError';
2625
import { convertToError } from 'react-on-rails/serverRenderUtils';
2726
import ReactOnRails from './ReactOnRails.full.ts';
2827

@@ -86,7 +85,7 @@ const streamRenderRSCComponent = (
8685
initializeAndRender().catch((e: unknown) => {
8786
const error = convertToError(e);
8887
reportError(error);
89-
const errorHtml = handleError({ e: error, name: options.name, serverSide: true });
88+
const errorHtml = JSON.stringify({ e: error, name: options.name, serverSide: true });
9089
writeChunk(errorHtml);
9190
endStream();
9291
});
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
import * as mock from 'mock-fs';
2+
import * as fs from 'fs';
3+
import ReactOnRails, { RailsContextWithServerStreamingCapabilities } from '../src/ReactOnRailsRSC.ts';
4+
5+
const Component1 = () => <div>HelloWorld</div>;
6+
7+
ReactOnRails.register({ Component1 });
8+
9+
mock({
10+
'server/react-client-manifest.json': '{}'
11+
});
12+
13+
afterAll(() => {
14+
mock.restore();
15+
})
16+
17+
test('eeee', () => {
18+
expect(fs.readFileSync('./server/react-client-manifest.json').toString()).toEqual('{}');
19+
ReactOnRails.serverRenderRSCReactComponent({
20+
railsContext: {} as unknown as RailsContextWithServerStreamingCapabilities,
21+
name: 'Component1',
22+
reactClientManifestFileName: 'react-client-manifest.json',
23+
renderingReturnsPromises: true,
24+
throwJsErrors: true,
25+
domNodeId: 'dom-id',
26+
})
27+
})

yarn.lock

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1654,6 +1654,13 @@
16541654
resolved "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz"
16551655
integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4=
16561656

1657+
"@types/mock-fs@^4.13.4":
1658+
version "4.13.4"
1659+
resolved "https://registry.yarnpkg.com/@types/mock-fs/-/mock-fs-4.13.4.tgz#e73edb4b4889d44d23f1ea02d6eebe50aa30b09a"
1660+
integrity sha512-mXmM0o6lULPI8z3XNnQCpL0BGxPwx1Ul1wXYEPBGl4efShyxW2Rln0JOPEWGyZaYZMM6OVXM/15zUuFMY52ljg==
1661+
dependencies:
1662+
"@types/node" "*"
1663+
16571664
"@types/node@*", "@types/node@^20.17.16":
16581665
version "20.17.16"
16591666
resolved "https://registry.npmjs.org/@types/node/-/node-20.17.16.tgz"
@@ -4729,6 +4736,11 @@ minimist@^1.2.0, minimist@^1.2.6, minimist@^1.2.8:
47294736
resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz"
47304737
integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==
47314738

4739+
mock-fs@^5.5.0:
4740+
version "5.5.0"
4741+
resolved "https://registry.yarnpkg.com/mock-fs/-/mock-fs-5.5.0.tgz#94a46d299aaa588e735a201cbe823c876e91f385"
4742+
integrity sha512-d/P1M/RacgM3dB0sJ8rjeRNXxtapkPCUnMGmIN0ixJ16F/E4GUZCvWcSGfWGz8eaXYvn1s9baUwNjI4LOPEjiA==
4743+
47324744
mri@^1.1.0:
47334745
version "1.2.0"
47344746
resolved "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz"

0 commit comments

Comments
 (0)