@builder.io/sdk-solid 1.0.24 → 1.0.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -790,11 +790,11 @@ var getRepeatItemData = ({
790
790
  }));
791
791
  return repeatArray;
792
792
  };
793
- var shouldPassLinkComponent = (blockName) => {
794
- return blockName && ["Core:Button", "Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(blockName);
793
+ var shouldPassLinkComponent = (block) => {
794
+ return block && (block.isRSC || ["Core:Button", "Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(block.name));
795
795
  };
796
- var shouldPassRegisteredComponents = (blockName) => {
797
- return blockName && ["Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(blockName);
796
+ var shouldPassRegisteredComponents = (block) => {
797
+ return block && (block.isRSC || ["Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(block.name));
798
798
  };
799
799
 
800
800
  // src/constants/device-sizes.ts
@@ -1244,10 +1244,10 @@ function Block(props) {
1244
1244
  componentOptions: {
1245
1245
  ...getBlockComponentOptions(processedBlock()),
1246
1246
  builderContext: props.context,
1247
- ...shouldPassLinkComponent(blockComponent()?.name) ? {
1247
+ ...shouldPassLinkComponent(blockComponent()) ? {
1248
1248
  builderLinkComponent: props.linkComponent
1249
1249
  } : {},
1250
- ...shouldPassRegisteredComponents(blockComponent()?.name) ? {
1250
+ ...shouldPassRegisteredComponents(blockComponent()) ? {
1251
1251
  builderComponents: props.registeredComponents
1252
1252
  } : {}
1253
1253
  },
@@ -4697,7 +4697,7 @@ function isFromTrustedHost(trustedHosts, e) {
4697
4697
  }
4698
4698
 
4699
4699
  // src/constants/sdk-version.ts
4700
- var SDK_VERSION = "1.0.24";
4700
+ var SDK_VERSION = "1.0.25";
4701
4701
 
4702
4702
  // src/functions/register.ts
4703
4703
  var registry = {};
@@ -777,11 +777,11 @@ var getRepeatItemData = ({
777
777
  }));
778
778
  return repeatArray;
779
779
  };
780
- var shouldPassLinkComponent = (blockName) => {
781
- return blockName && ["Core:Button", "Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(blockName);
780
+ var shouldPassLinkComponent = (block) => {
781
+ return block && (block.isRSC || ["Core:Button", "Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(block.name));
782
782
  };
783
- var shouldPassRegisteredComponents = (blockName) => {
784
- return blockName && ["Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(blockName);
783
+ var shouldPassRegisteredComponents = (block) => {
784
+ return block && (block.isRSC || ["Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(block.name));
785
785
  };
786
786
 
787
787
  // src/components/block/components/block-styles.tsx
@@ -1185,10 +1185,10 @@ function Block(props) {
1185
1185
  componentOptions: {
1186
1186
  ...getBlockComponentOptions(processedBlock()),
1187
1187
  builderContext: props.context,
1188
- ...shouldPassLinkComponent(blockComponent()?.name) ? {
1188
+ ...shouldPassLinkComponent(blockComponent()) ? {
1189
1189
  builderLinkComponent: props.linkComponent
1190
1190
  } : {},
1191
- ...shouldPassRegisteredComponents(blockComponent()?.name) ? {
1191
+ ...shouldPassRegisteredComponents(blockComponent()) ? {
1192
1192
  builderComponents: props.registeredComponents
1193
1193
  } : {}
1194
1194
  },
@@ -4245,7 +4245,7 @@ function isFromTrustedHost(trustedHosts, e) {
4245
4245
  }
4246
4246
 
4247
4247
  // src/constants/sdk-version.ts
4248
- var SDK_VERSION = "1.0.24";
4248
+ var SDK_VERSION = "1.0.25";
4249
4249
 
4250
4250
  // src/functions/register.ts
4251
4251
  var registry = {};
@@ -784,11 +784,11 @@ var getRepeatItemData = ({
784
784
  }));
785
785
  return repeatArray;
786
786
  };
787
- var shouldPassLinkComponent = (blockName) => {
788
- return blockName && ["Core:Button", "Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(blockName);
787
+ var shouldPassLinkComponent = (block) => {
788
+ return block && (block.isRSC || ["Core:Button", "Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(block.name));
789
789
  };
790
- var shouldPassRegisteredComponents = (blockName) => {
791
- return blockName && ["Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(blockName);
790
+ var shouldPassRegisteredComponents = (block) => {
791
+ return block && (block.isRSC || ["Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(block.name));
792
792
  };
793
793
 
794
794
  // src/constants/device-sizes.ts
@@ -1238,10 +1238,10 @@ function Block(props) {
1238
1238
  componentOptions: {
1239
1239
  ...getBlockComponentOptions(processedBlock()),
1240
1240
  builderContext: props.context,
1241
- ...shouldPassLinkComponent(blockComponent()?.name) ? {
1241
+ ...shouldPassLinkComponent(blockComponent()) ? {
1242
1242
  builderLinkComponent: props.linkComponent
1243
1243
  } : {},
1244
- ...shouldPassRegisteredComponents(blockComponent()?.name) ? {
1244
+ ...shouldPassRegisteredComponents(blockComponent()) ? {
1245
1245
  builderComponents: props.registeredComponents
1246
1246
  } : {}
1247
1247
  },
@@ -4682,7 +4682,7 @@ function isFromTrustedHost(trustedHosts, e) {
4682
4682
  }
4683
4683
 
4684
4684
  // src/constants/sdk-version.ts
4685
- var SDK_VERSION = "1.0.24";
4685
+ var SDK_VERSION = "1.0.25";
4686
4686
 
4687
4687
  // src/functions/register.ts
4688
4688
  var registry = {};
@@ -771,11 +771,11 @@ var getRepeatItemData = ({
771
771
  }));
772
772
  return repeatArray;
773
773
  };
774
- var shouldPassLinkComponent = (blockName) => {
775
- return blockName && ["Core:Button", "Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(blockName);
774
+ var shouldPassLinkComponent = (block) => {
775
+ return block && (block.isRSC || ["Core:Button", "Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(block.name));
776
776
  };
777
- var shouldPassRegisteredComponents = (blockName) => {
778
- return blockName && ["Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(blockName);
777
+ var shouldPassRegisteredComponents = (block) => {
778
+ return block && (block.isRSC || ["Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(block.name));
779
779
  };
780
780
 
781
781
  // src/components/block/components/block-styles.tsx
@@ -1179,10 +1179,10 @@ function Block(props) {
1179
1179
  componentOptions: {
1180
1180
  ...getBlockComponentOptions(processedBlock()),
1181
1181
  builderContext: props.context,
1182
- ...shouldPassLinkComponent(blockComponent()?.name) ? {
1182
+ ...shouldPassLinkComponent(blockComponent()) ? {
1183
1183
  builderLinkComponent: props.linkComponent
1184
1184
  } : {},
1185
- ...shouldPassRegisteredComponents(blockComponent()?.name) ? {
1185
+ ...shouldPassRegisteredComponents(blockComponent()) ? {
1186
1186
  builderComponents: props.registeredComponents
1187
1187
  } : {}
1188
1188
  },
@@ -4230,7 +4230,7 @@ function isFromTrustedHost(trustedHosts, e) {
4230
4230
  }
4231
4231
 
4232
4232
  // src/constants/sdk-version.ts
4233
- var SDK_VERSION = "1.0.24";
4233
+ var SDK_VERSION = "1.0.25";
4234
4234
 
4235
4235
  // src/functions/register.ts
4236
4236
  var registry = {};
package/lib/edge/dev.js CHANGED
@@ -3943,11 +3943,11 @@ var getRepeatItemData = ({
3943
3943
  }));
3944
3944
  return repeatArray;
3945
3945
  };
3946
- var shouldPassLinkComponent = (blockName) => {
3947
- return blockName && ["Core:Button", "Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(blockName);
3946
+ var shouldPassLinkComponent = (block) => {
3947
+ return block && (block.isRSC || ["Core:Button", "Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(block.name));
3948
3948
  };
3949
- var shouldPassRegisteredComponents = (blockName) => {
3950
- return blockName && ["Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(blockName);
3949
+ var shouldPassRegisteredComponents = (block) => {
3950
+ return block && (block.isRSC || ["Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(block.name));
3951
3951
  };
3952
3952
 
3953
3953
  // src/constants/device-sizes.ts
@@ -4397,10 +4397,10 @@ function Block(props) {
4397
4397
  componentOptions: {
4398
4398
  ...getBlockComponentOptions(processedBlock()),
4399
4399
  builderContext: props.context,
4400
- ...shouldPassLinkComponent(blockComponent()?.name) ? {
4400
+ ...shouldPassLinkComponent(blockComponent()) ? {
4401
4401
  builderLinkComponent: props.linkComponent
4402
4402
  } : {},
4403
- ...shouldPassRegisteredComponents(blockComponent()?.name) ? {
4403
+ ...shouldPassRegisteredComponents(blockComponent()) ? {
4404
4404
  builderComponents: props.registeredComponents
4405
4405
  } : {}
4406
4406
  },
@@ -7850,7 +7850,7 @@ function isFromTrustedHost(trustedHosts, e) {
7850
7850
  }
7851
7851
 
7852
7852
  // src/constants/sdk-version.ts
7853
- var SDK_VERSION = "1.0.24";
7853
+ var SDK_VERSION = "1.0.25";
7854
7854
 
7855
7855
  // src/functions/register.ts
7856
7856
  var registry = {};
package/lib/edge/dev.jsx CHANGED
@@ -3932,11 +3932,11 @@ var getRepeatItemData = ({
3932
3932
  }));
3933
3933
  return repeatArray;
3934
3934
  };
3935
- var shouldPassLinkComponent = (blockName) => {
3936
- return blockName && ["Core:Button", "Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(blockName);
3935
+ var shouldPassLinkComponent = (block) => {
3936
+ return block && (block.isRSC || ["Core:Button", "Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(block.name));
3937
3937
  };
3938
- var shouldPassRegisteredComponents = (blockName) => {
3939
- return blockName && ["Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(blockName);
3938
+ var shouldPassRegisteredComponents = (block) => {
3939
+ return block && (block.isRSC || ["Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(block.name));
3940
3940
  };
3941
3941
 
3942
3942
  // src/components/block/components/block-styles.tsx
@@ -4340,10 +4340,10 @@ function Block(props) {
4340
4340
  componentOptions: {
4341
4341
  ...getBlockComponentOptions(processedBlock()),
4342
4342
  builderContext: props.context,
4343
- ...shouldPassLinkComponent(blockComponent()?.name) ? {
4343
+ ...shouldPassLinkComponent(blockComponent()) ? {
4344
4344
  builderLinkComponent: props.linkComponent
4345
4345
  } : {},
4346
- ...shouldPassRegisteredComponents(blockComponent()?.name) ? {
4346
+ ...shouldPassRegisteredComponents(blockComponent()) ? {
4347
4347
  builderComponents: props.registeredComponents
4348
4348
  } : {}
4349
4349
  },
@@ -7400,7 +7400,7 @@ function isFromTrustedHost(trustedHosts, e) {
7400
7400
  }
7401
7401
 
7402
7402
  // src/constants/sdk-version.ts
7403
- var SDK_VERSION = "1.0.24";
7403
+ var SDK_VERSION = "1.0.25";
7404
7404
 
7405
7405
  // src/functions/register.ts
7406
7406
  var registry = {};
package/lib/edge/index.js CHANGED
@@ -3937,11 +3937,11 @@ var getRepeatItemData = ({
3937
3937
  }));
3938
3938
  return repeatArray;
3939
3939
  };
3940
- var shouldPassLinkComponent = (blockName) => {
3941
- return blockName && ["Core:Button", "Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(blockName);
3940
+ var shouldPassLinkComponent = (block) => {
3941
+ return block && (block.isRSC || ["Core:Button", "Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(block.name));
3942
3942
  };
3943
- var shouldPassRegisteredComponents = (blockName) => {
3944
- return blockName && ["Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(blockName);
3943
+ var shouldPassRegisteredComponents = (block) => {
3944
+ return block && (block.isRSC || ["Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(block.name));
3945
3945
  };
3946
3946
 
3947
3947
  // src/constants/device-sizes.ts
@@ -4391,10 +4391,10 @@ function Block(props) {
4391
4391
  componentOptions: {
4392
4392
  ...getBlockComponentOptions(processedBlock()),
4393
4393
  builderContext: props.context,
4394
- ...shouldPassLinkComponent(blockComponent()?.name) ? {
4394
+ ...shouldPassLinkComponent(blockComponent()) ? {
4395
4395
  builderLinkComponent: props.linkComponent
4396
4396
  } : {},
4397
- ...shouldPassRegisteredComponents(blockComponent()?.name) ? {
4397
+ ...shouldPassRegisteredComponents(blockComponent()) ? {
4398
4398
  builderComponents: props.registeredComponents
4399
4399
  } : {}
4400
4400
  },
@@ -7835,7 +7835,7 @@ function isFromTrustedHost(trustedHosts, e) {
7835
7835
  }
7836
7836
 
7837
7837
  // src/constants/sdk-version.ts
7838
- var SDK_VERSION = "1.0.24";
7838
+ var SDK_VERSION = "1.0.25";
7839
7839
 
7840
7840
  // src/functions/register.ts
7841
7841
  var registry = {};
@@ -3926,11 +3926,11 @@ var getRepeatItemData = ({
3926
3926
  }));
3927
3927
  return repeatArray;
3928
3928
  };
3929
- var shouldPassLinkComponent = (blockName) => {
3930
- return blockName && ["Core:Button", "Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(blockName);
3929
+ var shouldPassLinkComponent = (block) => {
3930
+ return block && (block.isRSC || ["Core:Button", "Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(block.name));
3931
3931
  };
3932
- var shouldPassRegisteredComponents = (blockName) => {
3933
- return blockName && ["Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(blockName);
3932
+ var shouldPassRegisteredComponents = (block) => {
3933
+ return block && (block.isRSC || ["Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(block.name));
3934
3934
  };
3935
3935
 
3936
3936
  // src/components/block/components/block-styles.tsx
@@ -4334,10 +4334,10 @@ function Block(props) {
4334
4334
  componentOptions: {
4335
4335
  ...getBlockComponentOptions(processedBlock()),
4336
4336
  builderContext: props.context,
4337
- ...shouldPassLinkComponent(blockComponent()?.name) ? {
4337
+ ...shouldPassLinkComponent(blockComponent()) ? {
4338
4338
  builderLinkComponent: props.linkComponent
4339
4339
  } : {},
4340
- ...shouldPassRegisteredComponents(blockComponent()?.name) ? {
4340
+ ...shouldPassRegisteredComponents(blockComponent()) ? {
4341
4341
  builderComponents: props.registeredComponents
4342
4342
  } : {}
4343
4343
  },
@@ -7385,7 +7385,7 @@ function isFromTrustedHost(trustedHosts, e) {
7385
7385
  }
7386
7386
 
7387
7387
  // src/constants/sdk-version.ts
7388
- var SDK_VERSION = "1.0.24";
7388
+ var SDK_VERSION = "1.0.25";
7389
7389
 
7390
7390
  // src/functions/register.ts
7391
7391
  var registry = {};
package/lib/node/dev.js CHANGED
@@ -377,16 +377,17 @@ function theFunction() {
377
377
  ${code}
378
378
  }
379
379
 
380
- let output = theFunction()
380
+ const output = theFunction()
381
381
 
382
382
  if (typeof output === 'object' && output !== null) {
383
- output = JSON.stringify(output.copySync ? output.copySync() : output);
383
+ return JSON.stringify(output.copySync ? output.copySync() : output);
384
+ } else {
385
+ return output;
384
386
  }
385
-
386
- output;
387
387
  `;
388
388
  };
389
389
  var IVM_INSTANCE = null;
390
+ var IVM_CONTEXT = null;
390
391
  var getIvm = () => {
391
392
  try {
392
393
  if (IVM_INSTANCE)
@@ -406,12 +407,26 @@ var getIvm = () => {
406
407
  Please see the documentation for more information: https://builder.io/c/docs/integration-tips#enabling-data-bindings-in-node-environments
407
408
  `);
408
409
  };
409
- var getIsolateContext = () => {
410
+ function setIsolateContext(options = {
411
+ memoryLimit: 128
412
+ }) {
410
413
  const ivm = getIvm();
411
- const isolate = new ivm.Isolate({
412
- memoryLimit: 128
414
+ const isolate = new ivm.Isolate(options);
415
+ const context = isolate.createContextSync();
416
+ const jail = context.global;
417
+ jail.setSync("global", jail.derefInto());
418
+ jail.setSync("log", function(...logArgs) {
419
+ console.log(...logArgs);
413
420
  });
414
- return isolate.createContextSync();
421
+ jail.setSync(INJECTED_IVM_GLOBAL, ivm);
422
+ IVM_CONTEXT = context;
423
+ return context;
424
+ }
425
+ var getIsolateContext = () => {
426
+ if (IVM_CONTEXT)
427
+ return IVM_CONTEXT;
428
+ const context = setIsolateContext();
429
+ return context;
415
430
  };
416
431
  var runInNode = ({
417
432
  code,
@@ -435,10 +450,6 @@ var runInNode = ({
435
450
  });
436
451
  const isolateContext = getIsolateContext();
437
452
  const jail = isolateContext.global;
438
- jail.setSync("global", jail.derefInto());
439
- jail.setSync("log", function(...logArgs) {
440
- console.log(...logArgs);
441
- });
442
453
  jail.setSync(BUILDER_SET_STATE_NAME, function(key, value) {
443
454
  set(rootState, key, value);
444
455
  rootSetState?.(rootState);
@@ -453,12 +464,11 @@ var runInNode = ({
453
464
  ) : null;
454
465
  jail.setSync(getSyncValName(key), val);
455
466
  });
456
- jail.setSync(INJECTED_IVM_GLOBAL, ivm);
457
467
  const evalStr = processCode({
458
468
  code,
459
469
  args
460
470
  });
461
- const resultStr = isolateContext.evalSync(evalStr);
471
+ const resultStr = isolateContext.evalClosureSync(evalStr);
462
472
  try {
463
473
  const res = JSON.parse(resultStr);
464
474
  return res;
@@ -935,11 +945,11 @@ var getRepeatItemData = ({
935
945
  }));
936
946
  return repeatArray;
937
947
  };
938
- var shouldPassLinkComponent = (blockName) => {
939
- return blockName && ["Core:Button", "Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(blockName);
948
+ var shouldPassLinkComponent = (block) => {
949
+ return block && (block.isRSC || ["Core:Button", "Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(block.name));
940
950
  };
941
- var shouldPassRegisteredComponents = (blockName) => {
942
- return blockName && ["Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(blockName);
951
+ var shouldPassRegisteredComponents = (block) => {
952
+ return block && (block.isRSC || ["Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(block.name));
943
953
  };
944
954
 
945
955
  // src/constants/device-sizes.ts
@@ -1389,10 +1399,10 @@ function Block(props) {
1389
1399
  componentOptions: {
1390
1400
  ...getBlockComponentOptions(processedBlock()),
1391
1401
  builderContext: props.context,
1392
- ...shouldPassLinkComponent(blockComponent()?.name) ? {
1402
+ ...shouldPassLinkComponent(blockComponent()) ? {
1393
1403
  builderLinkComponent: props.linkComponent
1394
1404
  } : {},
1395
- ...shouldPassRegisteredComponents(blockComponent()?.name) ? {
1405
+ ...shouldPassRegisteredComponents(blockComponent()) ? {
1396
1406
  builderComponents: props.registeredComponents
1397
1407
  } : {}
1398
1408
  },
@@ -4842,7 +4852,7 @@ function isFromTrustedHost(trustedHosts, e) {
4842
4852
  }
4843
4853
 
4844
4854
  // src/constants/sdk-version.ts
4845
- var SDK_VERSION = "1.0.24";
4855
+ var SDK_VERSION = "1.0.25";
4846
4856
 
4847
4857
  // src/functions/register.ts
4848
4858
  var registry = {};
package/lib/node/dev.jsx CHANGED
@@ -366,16 +366,17 @@ function theFunction() {
366
366
  ${code}
367
367
  }
368
368
 
369
- let output = theFunction()
369
+ const output = theFunction()
370
370
 
371
371
  if (typeof output === 'object' && output !== null) {
372
- output = JSON.stringify(output.copySync ? output.copySync() : output);
372
+ return JSON.stringify(output.copySync ? output.copySync() : output);
373
+ } else {
374
+ return output;
373
375
  }
374
-
375
- output;
376
376
  `;
377
377
  };
378
378
  var IVM_INSTANCE = null;
379
+ var IVM_CONTEXT = null;
379
380
  var getIvm = () => {
380
381
  try {
381
382
  if (IVM_INSTANCE)
@@ -395,12 +396,26 @@ var getIvm = () => {
395
396
  Please see the documentation for more information: https://builder.io/c/docs/integration-tips#enabling-data-bindings-in-node-environments
396
397
  `);
397
398
  };
398
- var getIsolateContext = () => {
399
+ function setIsolateContext(options = {
400
+ memoryLimit: 128
401
+ }) {
399
402
  const ivm = getIvm();
400
- const isolate = new ivm.Isolate({
401
- memoryLimit: 128
403
+ const isolate = new ivm.Isolate(options);
404
+ const context = isolate.createContextSync();
405
+ const jail = context.global;
406
+ jail.setSync("global", jail.derefInto());
407
+ jail.setSync("log", function(...logArgs) {
408
+ console.log(...logArgs);
402
409
  });
403
- return isolate.createContextSync();
410
+ jail.setSync(INJECTED_IVM_GLOBAL, ivm);
411
+ IVM_CONTEXT = context;
412
+ return context;
413
+ }
414
+ var getIsolateContext = () => {
415
+ if (IVM_CONTEXT)
416
+ return IVM_CONTEXT;
417
+ const context = setIsolateContext();
418
+ return context;
404
419
  };
405
420
  var runInNode = ({
406
421
  code,
@@ -424,10 +439,6 @@ var runInNode = ({
424
439
  });
425
440
  const isolateContext = getIsolateContext();
426
441
  const jail = isolateContext.global;
427
- jail.setSync("global", jail.derefInto());
428
- jail.setSync("log", function(...logArgs) {
429
- console.log(...logArgs);
430
- });
431
442
  jail.setSync(BUILDER_SET_STATE_NAME, function(key, value) {
432
443
  set(rootState, key, value);
433
444
  rootSetState?.(rootState);
@@ -442,12 +453,11 @@ var runInNode = ({
442
453
  ) : null;
443
454
  jail.setSync(getSyncValName(key), val);
444
455
  });
445
- jail.setSync(INJECTED_IVM_GLOBAL, ivm);
446
456
  const evalStr = processCode({
447
457
  code,
448
458
  args
449
459
  });
450
- const resultStr = isolateContext.evalSync(evalStr);
460
+ const resultStr = isolateContext.evalClosureSync(evalStr);
451
461
  try {
452
462
  const res = JSON.parse(resultStr);
453
463
  return res;
@@ -924,11 +934,11 @@ var getRepeatItemData = ({
924
934
  }));
925
935
  return repeatArray;
926
936
  };
927
- var shouldPassLinkComponent = (blockName) => {
928
- return blockName && ["Core:Button", "Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(blockName);
937
+ var shouldPassLinkComponent = (block) => {
938
+ return block && (block.isRSC || ["Core:Button", "Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(block.name));
929
939
  };
930
- var shouldPassRegisteredComponents = (blockName) => {
931
- return blockName && ["Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(blockName);
940
+ var shouldPassRegisteredComponents = (block) => {
941
+ return block && (block.isRSC || ["Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(block.name));
932
942
  };
933
943
 
934
944
  // src/components/block/components/block-styles.tsx
@@ -1332,10 +1342,10 @@ function Block(props) {
1332
1342
  componentOptions: {
1333
1343
  ...getBlockComponentOptions(processedBlock()),
1334
1344
  builderContext: props.context,
1335
- ...shouldPassLinkComponent(blockComponent()?.name) ? {
1345
+ ...shouldPassLinkComponent(blockComponent()) ? {
1336
1346
  builderLinkComponent: props.linkComponent
1337
1347
  } : {},
1338
- ...shouldPassRegisteredComponents(blockComponent()?.name) ? {
1348
+ ...shouldPassRegisteredComponents(blockComponent()) ? {
1339
1349
  builderComponents: props.registeredComponents
1340
1350
  } : {}
1341
1351
  },
@@ -4392,7 +4402,7 @@ function isFromTrustedHost(trustedHosts, e) {
4392
4402
  }
4393
4403
 
4394
4404
  // src/constants/sdk-version.ts
4395
- var SDK_VERSION = "1.0.24";
4405
+ var SDK_VERSION = "1.0.25";
4396
4406
 
4397
4407
  // src/functions/register.ts
4398
4408
  var registry = {};
package/lib/node/index.js CHANGED
@@ -376,16 +376,17 @@ function theFunction() {
376
376
  ${code}
377
377
  }
378
378
 
379
- let output = theFunction()
379
+ const output = theFunction()
380
380
 
381
381
  if (typeof output === 'object' && output !== null) {
382
- output = JSON.stringify(output.copySync ? output.copySync() : output);
382
+ return JSON.stringify(output.copySync ? output.copySync() : output);
383
+ } else {
384
+ return output;
383
385
  }
384
-
385
- output;
386
386
  `;
387
387
  };
388
388
  var IVM_INSTANCE = null;
389
+ var IVM_CONTEXT = null;
389
390
  var getIvm = () => {
390
391
  try {
391
392
  if (IVM_INSTANCE)
@@ -405,12 +406,25 @@ var getIvm = () => {
405
406
  Please see the documentation for more information: https://builder.io/c/docs/integration-tips#enabling-data-bindings-in-node-environments
406
407
  `);
407
408
  };
408
- var getIsolateContext = () => {
409
+ function setIsolateContext(options = {
410
+ memoryLimit: 128
411
+ }) {
409
412
  const ivm = getIvm();
410
- const isolate = new ivm.Isolate({
411
- memoryLimit: 128
413
+ const isolate = new ivm.Isolate(options);
414
+ const context = isolate.createContextSync();
415
+ const jail = context.global;
416
+ jail.setSync("global", jail.derefInto());
417
+ jail.setSync("log", function(...logArgs) {
412
418
  });
413
- return isolate.createContextSync();
419
+ jail.setSync(INJECTED_IVM_GLOBAL, ivm);
420
+ IVM_CONTEXT = context;
421
+ return context;
422
+ }
423
+ var getIsolateContext = () => {
424
+ if (IVM_CONTEXT)
425
+ return IVM_CONTEXT;
426
+ const context = setIsolateContext();
427
+ return context;
414
428
  };
415
429
  var runInNode = ({
416
430
  code,
@@ -434,9 +448,6 @@ var runInNode = ({
434
448
  });
435
449
  const isolateContext = getIsolateContext();
436
450
  const jail = isolateContext.global;
437
- jail.setSync("global", jail.derefInto());
438
- jail.setSync("log", function(...logArgs) {
439
- });
440
451
  jail.setSync(BUILDER_SET_STATE_NAME, function(key, value) {
441
452
  set(rootState, key, value);
442
453
  rootSetState?.(rootState);
@@ -451,12 +462,11 @@ var runInNode = ({
451
462
  ) : null;
452
463
  jail.setSync(getSyncValName(key), val);
453
464
  });
454
- jail.setSync(INJECTED_IVM_GLOBAL, ivm);
455
465
  const evalStr = processCode({
456
466
  code,
457
467
  args
458
468
  });
459
- const resultStr = isolateContext.evalSync(evalStr);
469
+ const resultStr = isolateContext.evalClosureSync(evalStr);
460
470
  try {
461
471
  const res = JSON.parse(resultStr);
462
472
  return res;
@@ -929,11 +939,11 @@ var getRepeatItemData = ({
929
939
  }));
930
940
  return repeatArray;
931
941
  };
932
- var shouldPassLinkComponent = (blockName) => {
933
- return blockName && ["Core:Button", "Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(blockName);
942
+ var shouldPassLinkComponent = (block) => {
943
+ return block && (block.isRSC || ["Core:Button", "Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(block.name));
934
944
  };
935
- var shouldPassRegisteredComponents = (blockName) => {
936
- return blockName && ["Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(blockName);
945
+ var shouldPassRegisteredComponents = (block) => {
946
+ return block && (block.isRSC || ["Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(block.name));
937
947
  };
938
948
 
939
949
  // src/constants/device-sizes.ts
@@ -1383,10 +1393,10 @@ function Block(props) {
1383
1393
  componentOptions: {
1384
1394
  ...getBlockComponentOptions(processedBlock()),
1385
1395
  builderContext: props.context,
1386
- ...shouldPassLinkComponent(blockComponent()?.name) ? {
1396
+ ...shouldPassLinkComponent(blockComponent()) ? {
1387
1397
  builderLinkComponent: props.linkComponent
1388
1398
  } : {},
1389
- ...shouldPassRegisteredComponents(blockComponent()?.name) ? {
1399
+ ...shouldPassRegisteredComponents(blockComponent()) ? {
1390
1400
  builderComponents: props.registeredComponents
1391
1401
  } : {}
1392
1402
  },
@@ -4827,7 +4837,7 @@ function isFromTrustedHost(trustedHosts, e) {
4827
4837
  }
4828
4838
 
4829
4839
  // src/constants/sdk-version.ts
4830
- var SDK_VERSION = "1.0.24";
4840
+ var SDK_VERSION = "1.0.25";
4831
4841
 
4832
4842
  // src/functions/register.ts
4833
4843
  var registry = {};
@@ -365,16 +365,17 @@ function theFunction() {
365
365
  ${code}
366
366
  }
367
367
 
368
- let output = theFunction()
368
+ const output = theFunction()
369
369
 
370
370
  if (typeof output === 'object' && output !== null) {
371
- output = JSON.stringify(output.copySync ? output.copySync() : output);
371
+ return JSON.stringify(output.copySync ? output.copySync() : output);
372
+ } else {
373
+ return output;
372
374
  }
373
-
374
- output;
375
375
  `;
376
376
  };
377
377
  var IVM_INSTANCE = null;
378
+ var IVM_CONTEXT = null;
378
379
  var getIvm = () => {
379
380
  try {
380
381
  if (IVM_INSTANCE)
@@ -394,12 +395,25 @@ var getIvm = () => {
394
395
  Please see the documentation for more information: https://builder.io/c/docs/integration-tips#enabling-data-bindings-in-node-environments
395
396
  `);
396
397
  };
397
- var getIsolateContext = () => {
398
+ function setIsolateContext(options = {
399
+ memoryLimit: 128
400
+ }) {
398
401
  const ivm = getIvm();
399
- const isolate = new ivm.Isolate({
400
- memoryLimit: 128
402
+ const isolate = new ivm.Isolate(options);
403
+ const context = isolate.createContextSync();
404
+ const jail = context.global;
405
+ jail.setSync("global", jail.derefInto());
406
+ jail.setSync("log", function(...logArgs) {
401
407
  });
402
- return isolate.createContextSync();
408
+ jail.setSync(INJECTED_IVM_GLOBAL, ivm);
409
+ IVM_CONTEXT = context;
410
+ return context;
411
+ }
412
+ var getIsolateContext = () => {
413
+ if (IVM_CONTEXT)
414
+ return IVM_CONTEXT;
415
+ const context = setIsolateContext();
416
+ return context;
403
417
  };
404
418
  var runInNode = ({
405
419
  code,
@@ -423,9 +437,6 @@ var runInNode = ({
423
437
  });
424
438
  const isolateContext = getIsolateContext();
425
439
  const jail = isolateContext.global;
426
- jail.setSync("global", jail.derefInto());
427
- jail.setSync("log", function(...logArgs) {
428
- });
429
440
  jail.setSync(BUILDER_SET_STATE_NAME, function(key, value) {
430
441
  set(rootState, key, value);
431
442
  rootSetState?.(rootState);
@@ -440,12 +451,11 @@ var runInNode = ({
440
451
  ) : null;
441
452
  jail.setSync(getSyncValName(key), val);
442
453
  });
443
- jail.setSync(INJECTED_IVM_GLOBAL, ivm);
444
454
  const evalStr = processCode({
445
455
  code,
446
456
  args
447
457
  });
448
- const resultStr = isolateContext.evalSync(evalStr);
458
+ const resultStr = isolateContext.evalClosureSync(evalStr);
449
459
  try {
450
460
  const res = JSON.parse(resultStr);
451
461
  return res;
@@ -918,11 +928,11 @@ var getRepeatItemData = ({
918
928
  }));
919
929
  return repeatArray;
920
930
  };
921
- var shouldPassLinkComponent = (blockName) => {
922
- return blockName && ["Core:Button", "Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(blockName);
931
+ var shouldPassLinkComponent = (block) => {
932
+ return block && (block.isRSC || ["Core:Button", "Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(block.name));
923
933
  };
924
- var shouldPassRegisteredComponents = (blockName) => {
925
- return blockName && ["Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(blockName);
934
+ var shouldPassRegisteredComponents = (block) => {
935
+ return block && (block.isRSC || ["Symbol", "Columns", "Form:Form", "Builder: Tabs"].includes(block.name));
926
936
  };
927
937
 
928
938
  // src/components/block/components/block-styles.tsx
@@ -1326,10 +1336,10 @@ function Block(props) {
1326
1336
  componentOptions: {
1327
1337
  ...getBlockComponentOptions(processedBlock()),
1328
1338
  builderContext: props.context,
1329
- ...shouldPassLinkComponent(blockComponent()?.name) ? {
1339
+ ...shouldPassLinkComponent(blockComponent()) ? {
1330
1340
  builderLinkComponent: props.linkComponent
1331
1341
  } : {},
1332
- ...shouldPassRegisteredComponents(blockComponent()?.name) ? {
1342
+ ...shouldPassRegisteredComponents(blockComponent()) ? {
1333
1343
  builderComponents: props.registeredComponents
1334
1344
  } : {}
1335
1345
  },
@@ -4377,7 +4387,7 @@ function isFromTrustedHost(trustedHosts, e) {
4377
4387
  }
4378
4388
 
4379
4389
  // src/constants/sdk-version.ts
4380
- var SDK_VERSION = "1.0.24";
4390
+ var SDK_VERSION = "1.0.25";
4381
4391
 
4382
4392
  // src/functions/register.ts
4383
4393
  var registry = {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@builder.io/sdk-solid",
3
- "version": "1.0.24",
3
+ "version": "1.0.25",
4
4
  "description": "",
5
5
  "files": [
6
6
  "dist",