@builder.io/react 3.0.8 → 3.0.9-1

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.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@builder.io/react",
3
- "version": "3.0.8-1",
3
+ "version": "3.0.9-0",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "main": "dist/builder-react.cjs.js",
@@ -131,6 +131,5 @@
131
131
  "installConfig": {
132
132
  "hoistingLimits": "workspaces"
133
133
  },
134
- "gitHead": "4d96fbc32864698afbb355ab991c6d90be991951",
135
- "stableVersion": "3.0.8-0"
134
+ "gitHead": "4d96fbc32864698afbb355ab991c6d90be991951"
136
135
  }
@@ -93,12 +93,19 @@ function stringToFunction(str, expression, errors, logs) {
93
93
  }
94
94
  });
95
95
  var ivm_1 = (0, safe_dynamic_require_1.safeDynamicRequire)('isolated-vm');
96
- return isolateContext.evalClosureSync(makeFn(str, useReturn), args.map(function (arg, index) {
96
+ var resultStr = isolateContext.evalClosureSync(makeFn(str, useReturn), args.map(function (arg, index) {
97
97
  return typeof arg === 'object'
98
98
  ? new ivm_1.Reference(index === indexOfBuilderInstance
99
99
  ? __assign(__assign({}, arg), { getUserAttributes: function () { return arg.getUserAttributes(''); } }) : arg)
100
100
  : null;
101
101
  }));
102
+ try {
103
+ var res = JSON.parse(resultStr);
104
+ return res;
105
+ }
106
+ catch (_error) {
107
+ return resultStr;
108
+ }
102
109
  }
103
110
  }
104
111
  catch (error) {
@@ -126,7 +133,7 @@ var indexOfBuilderInstance = 3;
126
133
  var makeFn = function (code, useReturn) {
127
134
  // Order must match the order of the arguments to the function
128
135
  var names = ['state', 'event', 'block', 'builder', 'Device', 'update', 'Builder', 'context'];
129
- return "\n const refToProxy = (obj) => {\n if (typeof obj !== 'object' || obj === null) {\n return obj;\n }\n return new Proxy({}, {\n get(target, key) {\n const val = obj.getSync(key);\n if (typeof val?.getSync === 'function') {\n return refToProxy(val);\n }\n return val;\n },\n set(target, key, value) {\n obj.setSync(key, value);\n },\n deleteProperty(target, key) {\n obj.deleteSync(key);\n }\n })\n}\n".concat(names.map(function (arg, index) { return "var ".concat(arg, " = refToProxy($").concat(index, ");"); }).join('\n')).concat("\nvar ctx = context;\n".concat(useReturn ? "return (".concat(code, ");") : code, ";\n"));
136
+ return "\n const refToProxy = (obj) => {\n if (typeof obj !== 'object' || obj === null) {\n return obj;\n }\n return new Proxy({}, {\n get(target, key) {\n if (key === 'copySync') {\n return () => obj.copySync();\n }\n const val = obj.getSync(key);\n if (typeof val?.getSync === 'function') {\n return refToProxy(val);\n }\n return val;\n },\n set(target, key, value) {\n obj.setSync(key, value);\n },\n deleteProperty(target, key) {\n obj.deleteSync(key);\n }\n })\n}\n".concat(names.map(function (arg, index) { return "var ".concat(arg, " = refToProxy($").concat(index, ");"); }).join('\n')).concat("\nvar ctx = context;\nvar stringify = (val) => {\n if (typeof val === 'object' && val !== null) {\n return JSON.stringify(val.copySync());\n }\n return val;\n}\n".concat(useReturn ? "return stringify(".concat(code, ");") : code, ";\n"));
130
137
  };
131
138
  var getIsolateContext = function () {
132
139
  if (sdk_1.Builder.serverContext) {
@@ -1 +1 @@
1
- {"version":3,"file":"string-to-function.js","sourceRoot":"","sources":["../../../../src/functions/string-to-function.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"string-to-function.js","sourceRoot":"","sources":["../../../../src/functions/string-to-function.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ var ivm = require('isolated-vm');
39
+ var isolate = new ivm.Isolate({ memoryLimit: 128 });
40
+ var context = isolate.createContextSync();
41
+ var jail = context.global;
42
+ var state = { articles: { bar: [{ a: 1 }] } };
43
+ var fetch = require('node-fetch');
44
+ var fetching = function () { return __awaiter(void 0, void 0, void 0, function () {
45
+ var result, json, b;
46
+ return __generator(this, function (_a) {
47
+ switch (_a.label) {
48
+ case 0: return [4 /*yield*/, fetch("https://cdn.builder.io/api/v3/content/page?apiKey=c3e3257ff5594facbf478a68d37f766d&limit=1&fields=id")];
49
+ case 1:
50
+ result = _a.sent();
51
+ return [4 /*yield*/, result.json()];
52
+ case 2:
53
+ json = _a.sent();
54
+ console.log(json);
55
+ b = undefined;
56
+ jail.setSync('returnValue', function (val) { return b = val; });
57
+ state.articles = json;
58
+ context.evalClosureSync("\n const refToProxy = (obj) => {\n if (typeof obj !== 'object' || obj === null) {\n return obj;\n }\n return new Proxy(obj, {\n get(target, key) {\n if(key === 'toJS') {\n return () => obj.copySync();\n }\n const val = obj.getSync(key);\n if (typeof val?.getSync === 'function') {\n return refToProxy(val);\n }\n return val;\n },\n set(target, key, value) {\n obj.setSync(key, value);\n },\n deleteProperty(target, key) {\n obj.deleteSync(key);\n },\n })\n }\n const state = refToProxy($0);\n \n returnValue(state.toJS());\n return state.articles.results.toJS();\n ", [new ivm.Reference(state)]);
59
+ console.log(b.articles.results);
60
+ return [2 /*return*/];
61
+ }
62
+ });
63
+ }); };
64
+ jail.setSync('global', jail.derefInto());
65
+ // We will create a basic `log` function for the new isolate to use.
66
+ jail.setSync('log', function () {
67
+ var args = [];
68
+ for (var _i = 0; _i < arguments.length; _i++) {
69
+ args[_i] = arguments[_i];
70
+ }
71
+ console.log.apply(console, args);
72
+ });
73
+ fetching();
74
+ //# sourceMappingURL=iso-vm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"iso-vm.js","sourceRoot":"","sources":["../../../../src/scripts/iso-vm.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAM,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AAEnC,IAAM,OAAO,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;AAEtD,IAAM,OAAO,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;AAC5C,IAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC;AAC5B,IAAM,KAAK,GAAG,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;AAChD,IAAM,KAAK,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;AACpC,IAAM,QAAQ,GAAG;;;;oBACA,qBAAM,KAAK,CACxB,sGAAsG,CACvG,EAAA;;gBAFK,MAAM,GAAG,SAEd;gBACY,qBAAM,MAAM,CAAC,IAAI,EAAE,EAAA;;gBAA1B,IAAI,GAAG,SAAmB;gBAChC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACd,CAAC,GAAG,SAAS,CAAC;gBAClB,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,UAAC,GAAG,IAAK,OAAA,CAAC,GAAG,GAAG,EAAP,CAAO,CAAE,CAAA;gBAC9C,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;gBACtB,OAAO,CAAC,eAAe,CACrB,qwBA4BF,EACE,CAAC,IAAI,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAC3B,CAAC;gBAEF,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;;;;KACjC,CAAC;AACF,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;AAEzC,oEAAoE;AACpE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;IAAU,cAAO;SAAP,UAAO,EAAP,qBAAO,EAAP,IAAO;QAAP,yBAAO;;IACnC,OAAO,CAAC,GAAG,OAAX,OAAO,EAAQ,IAAI,EAAE;AACvB,CAAC,CAAC,CAAC;AAEH,QAAQ,EAAE,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@builder.io/react",
3
- "version": "3.0.8",
3
+ "version": "3.0.9-1",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "main": "dist/builder-react.cjs.js",
@@ -131,5 +131,6 @@
131
131
  "installConfig": {
132
132
  "hoistingLimits": "workspaces"
133
133
  },
134
- "gitHead": "4d96fbc32864698afbb355ab991c6d90be991951"
134
+ "gitHead": "4d96fbc32864698afbb355ab991c6d90be991951",
135
+ "stableVersion": "3.0.9-0"
135
136
  }
@@ -133,7 +133,7 @@ export function stringToFunction(
133
133
  });
134
134
 
135
135
  const ivm = safeDynamicRequire('isolated-vm') as typeof import('isolated-vm');
136
- return isolateContext.evalClosureSync(
136
+ const resultStr = isolateContext.evalClosureSync(
137
137
  makeFn(str, useReturn),
138
138
  args.map((arg, index) =>
139
139
  typeof arg === 'object'
@@ -149,6 +149,12 @@ export function stringToFunction(
149
149
  : null
150
150
  )
151
151
  );
152
+ try {
153
+ const res = JSON.parse(resultStr);
154
+ return res;
155
+ } catch (_error: any) {
156
+ return resultStr;
157
+ }
152
158
  }
153
159
  } catch (error: any) {
154
160
  if (Builder.isBrowser) {
@@ -195,6 +201,9 @@ const makeFn = (code: string, useReturn: boolean) => {
195
201
  }
196
202
  return new Proxy({}, {
197
203
  get(target, key) {
204
+ if (key === 'copySync') {
205
+ return () => obj.copySync();
206
+ }
198
207
  const val = obj.getSync(key);
199
208
  if (typeof val?.getSync === 'function') {
200
209
  return refToProxy(val);
@@ -211,7 +220,13 @@ const makeFn = (code: string, useReturn: boolean) => {
211
220
  }
212
221
  `.concat(names.map((arg, index) => `var ${arg} = refToProxy($${index});`).join('\n')).concat(`
213
222
  var ctx = context;
214
- ${useReturn ? `return (${code});` : code};
223
+ var stringify = (val) => {
224
+ if (typeof val === 'object' && val !== null) {
225
+ return JSON.stringify(val.copySync());
226
+ }
227
+ return val;
228
+ }
229
+ ${useReturn ? `return stringify(${code});` : code};
215
230
  `);
216
231
  };
217
232
 
@@ -0,0 +1,60 @@
1
+ const ivm = require('isolated-vm');
2
+
3
+ const isolate = new ivm.Isolate({ memoryLimit: 128 });
4
+
5
+ const context = isolate.createContextSync();
6
+ const jail = context.global;
7
+ const state = { articles: { bar: [{ a: 1 }] } };
8
+ const fetch = require('node-fetch');
9
+ const fetching = async () => {
10
+ const result = await fetch(
11
+ `https://cdn.builder.io/api/v3/content/page?apiKey=c3e3257ff5594facbf478a68d37f766d&limit=1&fields=id`
12
+ );
13
+ const json = await result.json();
14
+ console.log(json);
15
+ let b = undefined;
16
+ jail.setSync('returnValue', (val) => b = val )
17
+ state.articles = json;
18
+ context.evalClosureSync(
19
+ `
20
+ const refToProxy = (obj) => {
21
+ if (typeof obj !== 'object' || obj === null) {
22
+ return obj;
23
+ }
24
+ return new Proxy(obj, {
25
+ get(target, key) {
26
+ if(key === 'toJS') {
27
+ return () => obj.copySync();
28
+ }
29
+ const val = obj.getSync(key);
30
+ if (typeof val?.getSync === 'function') {
31
+ return refToProxy(val);
32
+ }
33
+ return val;
34
+ },
35
+ set(target, key, value) {
36
+ obj.setSync(key, value);
37
+ },
38
+ deleteProperty(target, key) {
39
+ obj.deleteSync(key);
40
+ },
41
+ })
42
+ }
43
+ const state = refToProxy($0);
44
+
45
+ returnValue(state.toJS());
46
+ return state.articles.results.toJS();
47
+ `,
48
+ [new ivm.Reference(state)]
49
+ );
50
+
51
+ console.log(b.articles.results);
52
+ };
53
+ jail.setSync('global', jail.derefInto());
54
+
55
+ // We will create a basic `log` function for the new isolate to use.
56
+ jail.setSync('log', function (...args) {
57
+ console.log(...args);
58
+ });
59
+
60
+ fetching();
@@ -1,14 +0,0 @@
1
- {
2
- "folders": [
3
- {
4
- "path": "../.."
5
- },
6
- {
7
- "path": "../../../core"
8
- },
9
- {
10
- "path": "../../../../examples/next-js-simple"
11
- }
12
- ],
13
- "settings": {}
14
- }