@builder.io/sdk-svelte 0.5.2 → 0.5.4
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.
- package/README.md +4 -0
- package/package/--package.json +21 -7
- package/package/CHANGELOG.md +5 -0
- package/package/README.md +4 -0
- package/package/blocks/image/image.svelte.d.ts +1 -0
- package/package/blocks/text/text.svelte +2 -1
- package/package/components/content-variants/content-variants.svelte +12 -6
- package/package/constants/sdk-version.d.ts +1 -1
- package/package/constants/sdk-version.js +1 -1
- package/package/functions/evaluate/acorn-interpreter.js +3111 -0
- package/package/functions/evaluate/evaluate.js +1 -1
- package/package/functions/evaluate/non-node-runtime/index.d.ts +6 -0
- package/package/functions/evaluate/non-node-runtime/index.js +22 -0
- package/package/functions/evaluate/{non-node-runtime.d.ts → non-node-runtime/non-node-runtime.d.ts} +1 -1
- package/package/functions/evaluate/{non-node-runtime.js → non-node-runtime/non-node-runtime.js} +3 -3
- package/package/functions/evaluate/types.d.ts +1 -0
- package/package.json +18 -4
- package/src/blocks/text/text.svelte +2 -1
- package/src/components/content-variants/content-variants.svelte +12 -6
- package/src/constants/sdk-version.ts +1 -1
- package/src/functions/evaluate/acorn-interpreter.ts +2891 -0
- package/src/functions/evaluate/evaluate.ts +1 -1
- package/src/functions/evaluate/non-node-runtime/index.ts +23 -0
- package/src/functions/evaluate/{non-node-runtime.ts → non-node-runtime/non-node-runtime.ts} +4 -4
- package/src/functions/evaluate/types.ts +2 -1
- package/package/functions/evaluate/acorn.d.ts +0 -0
- package/package/functions/evaluate/acorn.js +0 -2433
- package/package/functions/evaluate/interpreter.js +0 -3853
- package/src/functions/evaluate/acorn.ts +0 -2501
- package/src/functions/evaluate/interpreter.ts +0 -3887
- /package/package/functions/evaluate/{interpreter.d.ts → acorn-interpreter.d.ts} +0 -0
|
@@ -3,8 +3,8 @@ import { logger } from '../../helpers/logger.js';
|
|
|
3
3
|
import { isBrowser } from '../is-browser.js';
|
|
4
4
|
import { isEditing } from '../is-editing.js';
|
|
5
5
|
import { isNonNodeServer } from '../is-non-node-server.js';
|
|
6
|
-
import { runInNonNode } from './non-node-runtime.js';
|
|
7
6
|
import type { ExecutorArgs } from './types.js';
|
|
7
|
+
import { runInNonNode } from './non-node-runtime/index.js';
|
|
8
8
|
export function evaluate({
|
|
9
9
|
code,
|
|
10
10
|
context,
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { logger } from '../../../helpers/logger.js';
|
|
2
|
+
import { isNonNodeServer } from '../../is-non-node-server.js';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* We need to lazy-load this module so it doesn't leak into the browser, as it is massive and not needed there.
|
|
6
|
+
* https://css-tricks.com/dynamic-conditional-imports/
|
|
7
|
+
*/
|
|
8
|
+
let runInNonNode: typeof import('./non-node-runtime.js').runInNonNode;
|
|
9
|
+
if (isNonNodeServer()) {
|
|
10
|
+
import('./non-node-runtime.js').then(m => {
|
|
11
|
+
runInNonNode = m.runInNonNode;
|
|
12
|
+
}).catch(err => {
|
|
13
|
+
const ERROR_MESSAGE = `Error importing JS interpreter for non-Node.js runtimes. Make sure \`js-interpreter\` is installed.
|
|
14
|
+
Read more here: https://github.com/BuilderIO/builder/tree/main/packages/sdks/README.md#non-nodejs-runtimes-edge-serverless
|
|
15
|
+
`;
|
|
16
|
+
logger.error(ERROR_MESSAGE, err);
|
|
17
|
+
runInNonNode = (..._args) => {
|
|
18
|
+
logger.error(ERROR_MESSAGE);
|
|
19
|
+
return undefined;
|
|
20
|
+
};
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
export { runInNonNode }
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { logger } from '
|
|
2
|
-
import { set } from '
|
|
3
|
-
import Interpreter from '
|
|
4
|
-
import type { ExecutorArgs } from '
|
|
1
|
+
import { logger } from '../../../helpers/logger';
|
|
2
|
+
import { set } from '../../set';
|
|
3
|
+
import Interpreter from '../acorn-interpreter.js';
|
|
4
|
+
import type { ExecutorArgs } from '../types';
|
|
5
5
|
const processCode = (code: string) => {
|
|
6
6
|
return code.split('\n').map(line => {
|
|
7
7
|
const trimmed = line.trim();
|
|
File without changes
|