Skip to content

Commit fdd69f3

Browse files
committed
> Replace passing C# model on passing JSON string to Jint script, it can prevent issues while using NativeAot
1 parent d69f29c commit fdd69f3

File tree

5 files changed

+15
-4
lines changed

5 files changed

+15
-4
lines changed

src/FlowBridger/EmbeddedScripts/Embedded.CSharp.Import.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
import { schema } from "host"
1+
import { schemaJson } from "host"
2+
3+
const schema = JSON.parse(schemaJson);
24

35
function convertNameToSnakeCase(value) {
46
return value

src/FlowBridger/EmbeddedScripts/Embedded.Cpp.DynamicLinking.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
import { schema } from "host"
1+
import { schemaJson } from "host"
2+
3+
const schema = JSON.parse(schemaJson);
24

35
function convertToUpperName(value) {
46
return value.toUpperCase().replace(".", "_");

src/FlowBridger/EmbeddedScripts/Embedded.Cpp.RuntimeLoading.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
import { schema } from "host"
1+
import { schemaJson } from "host"
2+
3+
const schema = JSON.parse(schemaJson);
24

35
function redefineName(originalName) {
46
let name = originalName.substring(1);

src/FlowBridger/FlowBridger.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
<ItemGroup>
3535
<PackageReference Include="FlowCommandLine" Version="1.0.11" />
3636
<PackageReference Include="Jint" Version="4.4.1" />
37+
<TrimmerRootAssembly Include="Jint" />
3738
</ItemGroup>
3839

3940
</Project>

src/FlowBridger/Generators/LanguageGenerator.cs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
using FlowBridger.Models;
22
using Jint;
3+
using System.Text.Json;
34

45
namespace FlowBridger.Generators {
56

@@ -25,8 +26,11 @@ public static IEnumerable<GeneratedFile> GenerateScheme ( SchemaModel schema, IE
2526
}
2627

2728
var engine = new Engine ();
29+
30+
var schemaJson = JsonSerializer.Serialize ( schema, GeneratorSerializerContext.Default.SchemaModel );
31+
2832
engine.Modules.Add ( "host", builder => builder
29-
.ExportObject ( "schema", schema )
33+
.ExportObject ( "schemaJson", schemaJson )
3034
);
3135
engine.Modules.Add ( "scriptModule", script );
3236
var module = engine.Modules.Import ( "scriptModule" );

0 commit comments

Comments
 (0)