From 0afb1000a6ff21804b678d877f6b970b889e0a14 Mon Sep 17 00:00:00 2001 From: caub Date: Tue, 29 Dec 2020 11:02:32 +0100 Subject: [PATCH] fix record-and-tuple babel config --- src/plugins/js-eval/__tests__/jsEvalPlugin-test.js | 6 ++++++ src/plugins/js-eval/babelPlugins.js | 5 +++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/plugins/js-eval/__tests__/jsEvalPlugin-test.js b/src/plugins/js-eval/__tests__/jsEvalPlugin-test.js index 4263db9..bd86a67 100644 --- a/src/plugins/js-eval/__tests__/jsEvalPlugin-test.js +++ b/src/plugins/js-eval/__tests__/jsEvalPlugin-test.js @@ -89,11 +89,17 @@ describe('jsEvalPlugin', () => { ); expect(output).toEqual(`(okay) [ 0, 2, 4 ]`); }); + it(`babel has Object.fromEntries`, async () => { const output = await testEval(`b> typeof Object.fromEntries`); expect(output).toEqual(`(okay) 'function'`); }); + it(`babel has records`, async () => { + const output = await testEval(`b> #{x:1} === #{x: 1}`); + expect(output).toEqual(`(okay) true`); + }); + it(`handles empty input`, async () => { const output = await testEval(`n> `); expect(output).toEqual(`(okay) undefined`); diff --git a/src/plugins/js-eval/babelPlugins.js b/src/plugins/js-eval/babelPlugins.js index 2273235..8aeb607 100644 --- a/src/plugins/js-eval/babelPlugins.js +++ b/src/plugins/js-eval/babelPlugins.js @@ -28,9 +28,10 @@ exports.transformPlugins = [ '@babel/plugin-syntax-bigint', '@babel/plugin-syntax-import-meta', '@babel/plugin-proposal-unicode-property-regex', + ['@babel/plugin-syntax-record-and-tuple', { syntaxType: 'hash' }], ]; -// @babel/parser plugins https://babeljs.io/docs/en/next/babel-parser.html#ecmascript-proposals-https-githubcom-babel-proposals +// @babel/parser plugins https://babeljs.io/docs/en/babel-parser#ecmascript-proposalshttpsgithubcombabelproposals exports.parserPlugins = [ ['decorators', { decoratorsBeforeExport: true }], 'classProperties', @@ -44,6 +45,6 @@ exports.parserPlugins = [ 'partialApplication', ['pipelineOperator', { proposal: 'minimal' }], 'privateIn', - ['recordAndtuple', { hash: true }], + ['recordAndTuple', { syntaxType: 'hash' }], 'throwExpressions', ];