From 2f9fbb69ad40d8a2efb37c67370051ee9216a8b0 Mon Sep 17 00:00:00 2001 From: Alexander Nanberg Date: Fri, 13 Dec 2024 12:56:43 +0100 Subject: [PATCH] Add support for TypeScript fbt enum files --- ...{Example$FbtEnum.js => Example$FbtEnum.ts} | 2 +- example/src/example/Example.react.tsx | 2 +- jest.config.js | 4 +- packages/babel-plugin-fbtee/package.json | 3 + .../src/bin/manifestUtils.tsx | 20 ++- pnpm-lock.yaml | 151 ++++++++++++++++-- tsconfig.json | 2 +- 7 files changed, 164 insertions(+), 20 deletions(-) rename example/src/example/{Example$FbtEnum.js => Example$FbtEnum.ts} (89%) diff --git a/example/src/example/Example$FbtEnum.js b/example/src/example/Example$FbtEnum.ts similarity index 89% rename from example/src/example/Example$FbtEnum.js rename to example/src/example/Example$FbtEnum.ts index ff525a1b..e4ea29cf 100644 --- a/example/src/example/Example$FbtEnum.js +++ b/example/src/example/Example$FbtEnum.ts @@ -4,4 +4,4 @@ export default { PHOTO: 'photo', POST: 'post', VIDEO: 'video', -}; +} as const; diff --git a/example/src/example/Example.react.tsx b/example/src/example/Example.react.tsx index caa4831c..1f7d2c6e 100644 --- a/example/src/example/Example.react.tsx +++ b/example/src/example/Example.react.tsx @@ -2,7 +2,7 @@ import classNames from 'classnames'; import { fbs, fbt, GenderConst, IntlVariations, setupFbtee } from 'fbtee'; import { ChangeEvent, useCallback, useState } from 'react'; import translations from '../translatedFbts.json' with { type: 'json' }; -import ExampleEnum from './Example$FbtEnum.js'; +import ExampleEnum from './Example$FbtEnum.ts'; let viewerContext = { GENDER: IntlVariations.GENDER_UNKNOWN, diff --git a/jest.config.js b/jest.config.js index de3e61dd..ca760d92 100644 --- a/jest.config.js +++ b/jest.config.js @@ -5,9 +5,9 @@ import CommonStrings from './example/common_strings.json' with { type: 'json' }; process.env.NODE_ENV = 'development'; const globalConfig = { - extensionsToTreatAsEsm: ['.tsx'], + extensionsToTreatAsEsm: ['.ts', '.tsx'], testEnvironment: 'node', - testMatch: ['**/__tests__/**/*-test.(js|jsx|tsx)'], + testMatch: ['**/__tests__/**/*-test.(js|jsx|ts|tsx)'], transform: { '\\.(j|t)sx?$': '/jest-preprocessor.js', }, diff --git a/packages/babel-plugin-fbtee/package.json b/packages/babel-plugin-fbtee/package.json index 812fffcb..3a67fc6e 100644 --- a/packages/babel-plugin-fbtee/package.json +++ b/packages/babel-plugin-fbtee/package.json @@ -44,5 +44,8 @@ "@types/babel__core": "^7.20.5", "@types/babel__traverse": "^7.20.6", "@types/glob": "^8.1.0" + }, + "peerDependencies": { + "typescript": "^5.7.0" } } diff --git a/packages/babel-plugin-fbtee/src/bin/manifestUtils.tsx b/packages/babel-plugin-fbtee/src/bin/manifestUtils.tsx index 66a2a093..468cb4e7 100644 --- a/packages/babel-plugin-fbtee/src/bin/manifestUtils.tsx +++ b/packages/babel-plugin-fbtee/src/bin/manifestUtils.tsx @@ -2,6 +2,7 @@ import fs from 'node:fs'; import { parse, relative, resolve } from 'node:path'; import { globSync } from 'glob'; import invariant from 'invariant'; +import ts from 'typescript'; import { FBT_ENUM_MODULE_SUFFIX as ENUM_FILE, ModuleNameRegExp, @@ -23,6 +24,7 @@ export async function generateManifest( const enumManifest: { [enumModuleName: string]: EnumModule; } = {}; + for (const src of srcPaths) { const enumFiles: Array = globSync( resolve(cwd, src) + '/**/*' + ENUM_FILE + FILE_EXT, @@ -30,11 +32,20 @@ export async function generateManifest( nodir: true, }, ); + for (const filepath of enumFiles) { - const name = parse(filepath).name; - const obj = (await import(resolve(filepath))).default; - const enumValue: EnumModule = obj.__esModule ? obj.default : obj; + const tsContent = fs.readFileSync(filepath, 'utf8'); + const jsContent = ts.transpile(tsContent, { + module: ts.ModuleKind.ESNext, + target: ts.ScriptTarget.ESNext, + }); + const jsDataUrl = `data:text/javascript;base64,${Buffer.from(jsContent).toString('base64')}`; + + const module = await import(jsDataUrl); + const enumValue: EnumModule = module.default; + + const name = parse(filepath).name; invariant( enumValue != null, 'No valid enum found for `%s`, ensure you are exporting your enum ' + @@ -53,8 +64,7 @@ export async function generateManifest( .flatMap(getFiles) .filter((filepath) => fs - .readFileSync(filepath) - .toString('utf8') + .readFileSync(filepath, 'utf8') .split('\n') .some((line) => ModuleNameRegExp.test(line)), ) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4a0d08c9..73a8fcd3 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -88,7 +88,7 @@ importers: version: 2.2.4 jest: specifier: ^30.0.0-alpha.6 - version: 30.0.0-alpha.6(@types/node@22.10.2) + version: 30.0.0-alpha.6(@types/node@22.10.2)(esbuild-register@3.6.0(esbuild@0.24.0))(ts-node@10.9.2(@types/node@22.10.2)(typescript@5.7.2)) jest-environment-jsdom: specifier: ^29.7.0 version: 29.7.0 @@ -198,6 +198,9 @@ importers: nullthrows: specifier: ^1.1.1 version: 1.1.1 + typescript: + specifier: ^5.7.0 + version: 5.7.2 yargs: specifier: ^17.7.2 version: 17.7.2 @@ -534,6 +537,10 @@ packages: '@bcoe/v8-coverage@0.2.3': resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} + '@cspotcode/source-map-support@0.8.1': + resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} + engines: {node: '>=12'} + '@esbuild/aix-ppc64@0.24.0': resolution: {integrity: sha512-WtKdFM7ls47zkKHFVzMz8opM7LkcsIp9amDUBIAWirg70RM71WRSjdILPsY5Uv1D42ZpUfaPILDlfactHgsRkw==} engines: {node: '>=18'} @@ -860,6 +867,9 @@ packages: '@jridgewell/trace-mapping@0.3.25': resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} + '@jridgewell/trace-mapping@0.3.9': + resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} + '@nkzw/eslint-config@1.18.1': resolution: {integrity: sha512-dpVQ6OPHD2/tU8K9ThMBXCmSIUfgessxH8/iCnzQrjyTmFnMNJhIZMsE0DqnIfFFdhf7Fu6dZkvKmHllzi2/bg==} peerDependencies: @@ -1031,6 +1041,18 @@ packages: resolution: {integrity: sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==} engines: {node: '>= 10'} + '@tsconfig/node10@1.0.11': + resolution: {integrity: sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==} + + '@tsconfig/node12@1.0.11': + resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==} + + '@tsconfig/node14@1.0.3': + resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==} + + '@tsconfig/node16@1.0.4': + resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} + '@types/aria-query@5.0.4': resolution: {integrity: sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==} @@ -1291,6 +1313,9 @@ packages: resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} + arg@4.1.3: + resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==} + argparse@1.0.10: resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} @@ -1515,6 +1540,9 @@ packages: core-js-compat@3.39.0: resolution: {integrity: sha512-VgEUx3VwlExr5no0tXlBt+silBvhTryPwCXRI2Id1PN8WTKu7MreethvddqOubrYxkFdv/RnYrqlv1sFNAUelw==} + create-require@1.1.1: + resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} + cross-spawn@7.0.6: resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} engines: {node: '>= 8'} @@ -1622,6 +1650,10 @@ packages: resolution: {integrity: sha512-DVGt3/yzbneMUTuupsMqyfSXMnU2fE0lVsC9uFsJmRpluvSi7ZhrS0GX5tnMna6Ta788FGfOUx+irI/+cAZ4EA==} engines: {node: ^16.10.0 || ^18.12.0 || >=20.0.0} + diff@4.0.2: + resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==} + engines: {node: '>=0.3.1'} + dir-glob@3.0.1: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} engines: {node: '>=8'} @@ -1704,6 +1736,11 @@ packages: resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==} engines: {node: '>= 0.4'} + esbuild-register@3.6.0: + resolution: {integrity: sha512-H2/S7Pm8a9CL1uhp9OvjwrBh5Pvx0H8qVOxNu8Wed9Y7qv56MPtq+GGM8RJpq6glYJn9Wspr8uw7l55uyinNeg==} + peerDependencies: + esbuild: '>=0.12 <1' + esbuild@0.24.0: resolution: {integrity: sha512-FuLPevChGDshgSicjisSooU0cemp/sGXR841D5LHMB7mTVOmsEHcAxaH3irL53+8YDIeVNQEySh4DaYU/iuPqQ==} engines: {node: '>=18'} @@ -2696,6 +2733,9 @@ packages: resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==} engines: {node: '>=10'} + make-error@1.3.6: + resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} + makeerror@1.0.12: resolution: {integrity: sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==} @@ -3445,6 +3485,20 @@ packages: ts-interface-checker@0.1.13: resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} + ts-node@10.9.2: + resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} + hasBin: true + peerDependencies: + '@swc/core': '>=1.2.50' + '@swc/wasm': '>=1.2.50' + '@types/node': '*' + typescript: '>=2.7' + peerDependenciesMeta: + '@swc/core': + optional: true + '@swc/wasm': + optional: true + tsconfig-paths@3.15.0: resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} @@ -3549,6 +3603,9 @@ packages: url-parse@1.5.10: resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==} + v8-compile-cache-lib@3.0.1: + resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} + v8-to-istanbul@9.3.0: resolution: {integrity: sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==} engines: {node: '>=10.12.0'} @@ -3722,6 +3779,10 @@ packages: resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} engines: {node: '>=12'} + yn@3.1.1: + resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} + engines: {node: '>=6'} + yocto-queue@0.1.0: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} @@ -4087,6 +4148,11 @@ snapshots: '@bcoe/v8-coverage@0.2.3': {} + '@cspotcode/source-map-support@0.8.1': + dependencies: + '@jridgewell/trace-mapping': 0.3.9 + optional: true + '@esbuild/aix-ppc64@0.24.0': optional: true @@ -4237,7 +4303,7 @@ snapshots: jest-util: 30.0.0-alpha.6 slash: 3.0.0 - '@jest/core@30.0.0-alpha.6': + '@jest/core@30.0.0-alpha.6(esbuild-register@3.6.0(esbuild@0.24.0))(ts-node@10.9.2(@types/node@22.10.2)(typescript@5.7.2))': dependencies: '@jest/console': 30.0.0-alpha.6 '@jest/pattern': 30.0.0-alpha.6 @@ -4252,7 +4318,7 @@ snapshots: exit: 0.1.2 graceful-fs: 4.2.11 jest-changed-files: 30.0.0-alpha.6 - jest-config: 30.0.0-alpha.6(@types/node@22.10.2) + jest-config: 30.0.0-alpha.6(@types/node@22.10.2)(esbuild-register@3.6.0(esbuild@0.24.0))(ts-node@10.9.2(@types/node@22.10.2)(typescript@5.7.2)) jest-haste-map: 30.0.0-alpha.6 jest-message-util: 30.0.0-alpha.6 jest-regex-util: 30.0.0-alpha.6 @@ -4497,6 +4563,12 @@ snapshots: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.5.0 + '@jridgewell/trace-mapping@0.3.9': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.0 + optional: true + '@nkzw/eslint-config@1.18.1(eslint@8.57.1)(typescript@5.7.2)': dependencies: '@nkzw/eslint-plugin': 1.8.0(eslint@8.57.1) @@ -4664,6 +4736,18 @@ snapshots: '@tootallnate/once@2.0.0': {} + '@tsconfig/node10@1.0.11': + optional: true + + '@tsconfig/node12@1.0.11': + optional: true + + '@tsconfig/node14@1.0.3': + optional: true + + '@tsconfig/node16@1.0.4': + optional: true + '@types/aria-query@5.0.4': {} '@types/babel__core@7.20.5': @@ -4998,6 +5082,9 @@ snapshots: normalize-path: 3.0.0 picomatch: 2.3.1 + arg@4.1.3: + optional: true + argparse@1.0.10: dependencies: sprintf-js: 1.0.3 @@ -5269,6 +5356,9 @@ snapshots: dependencies: browserslist: 4.24.2 + create-require@1.1.1: + optional: true + cross-spawn@7.0.6: dependencies: path-key: 3.1.1 @@ -5353,6 +5443,9 @@ snapshots: diff-sequences@30.0.0-alpha.6: {} + diff@4.0.2: + optional: true + dir-glob@3.0.1: dependencies: path-type: 4.0.0 @@ -5489,6 +5582,14 @@ snapshots: is-date-object: 1.0.5 is-symbol: 1.1.0 + esbuild-register@3.6.0(esbuild@0.24.0): + dependencies: + debug: 4.3.7 + esbuild: 0.24.0 + transitivePeerDependencies: + - supports-color + optional: true + esbuild@0.24.0: optionalDependencies: '@esbuild/aix-ppc64': 0.24.0 @@ -6320,15 +6421,15 @@ snapshots: - babel-plugin-macros - supports-color - jest-cli@30.0.0-alpha.6(@types/node@22.10.2): + jest-cli@30.0.0-alpha.6(@types/node@22.10.2)(esbuild-register@3.6.0(esbuild@0.24.0))(ts-node@10.9.2(@types/node@22.10.2)(typescript@5.7.2)): dependencies: - '@jest/core': 30.0.0-alpha.6 + '@jest/core': 30.0.0-alpha.6(esbuild-register@3.6.0(esbuild@0.24.0))(ts-node@10.9.2(@types/node@22.10.2)(typescript@5.7.2)) '@jest/test-result': 30.0.0-alpha.6 '@jest/types': 30.0.0-alpha.6 chalk: 4.1.2 exit: 0.1.2 import-local: 3.2.0 - jest-config: 30.0.0-alpha.6(@types/node@22.10.2) + jest-config: 30.0.0-alpha.6(@types/node@22.10.2)(esbuild-register@3.6.0(esbuild@0.24.0))(ts-node@10.9.2(@types/node@22.10.2)(typescript@5.7.2)) jest-util: 30.0.0-alpha.6 jest-validate: 30.0.0-alpha.6 yargs: 17.7.2 @@ -6339,7 +6440,7 @@ snapshots: - supports-color - ts-node - jest-config@30.0.0-alpha.6(@types/node@22.10.2): + jest-config@30.0.0-alpha.6(@types/node@22.10.2)(esbuild-register@3.6.0(esbuild@0.24.0))(ts-node@10.9.2(@types/node@22.10.2)(typescript@5.7.2)): dependencies: '@babel/core': 7.26.0 '@jest/pattern': 30.0.0-alpha.6 @@ -6367,6 +6468,8 @@ snapshots: strip-json-comments: 3.1.1 optionalDependencies: '@types/node': 22.10.2 + esbuild-register: 3.6.0(esbuild@0.24.0) + ts-node: 10.9.2(@types/node@22.10.2)(typescript@5.7.2) transitivePeerDependencies: - babel-plugin-macros - supports-color @@ -6695,12 +6798,12 @@ snapshots: merge-stream: 2.0.0 supports-color: 8.1.1 - jest@30.0.0-alpha.6(@types/node@22.10.2): + jest@30.0.0-alpha.6(@types/node@22.10.2)(esbuild-register@3.6.0(esbuild@0.24.0))(ts-node@10.9.2(@types/node@22.10.2)(typescript@5.7.2)): dependencies: - '@jest/core': 30.0.0-alpha.6 + '@jest/core': 30.0.0-alpha.6(esbuild-register@3.6.0(esbuild@0.24.0))(ts-node@10.9.2(@types/node@22.10.2)(typescript@5.7.2)) '@jest/types': 30.0.0-alpha.6 import-local: 3.2.0 - jest-cli: 30.0.0-alpha.6(@types/node@22.10.2) + jest-cli: 30.0.0-alpha.6(@types/node@22.10.2)(esbuild-register@3.6.0(esbuild@0.24.0))(ts-node@10.9.2(@types/node@22.10.2)(typescript@5.7.2)) transitivePeerDependencies: - '@types/node' - babel-plugin-macros @@ -6841,6 +6944,9 @@ snapshots: dependencies: semver: 7.6.3 + make-error@1.3.6: + optional: true + makeerror@1.0.12: dependencies: tmpl: 1.0.5 @@ -7627,6 +7733,25 @@ snapshots: ts-interface-checker@0.1.13: {} + ts-node@10.9.2(@types/node@22.10.2)(typescript@5.7.2): + dependencies: + '@cspotcode/source-map-support': 0.8.1 + '@tsconfig/node10': 1.0.11 + '@tsconfig/node12': 1.0.11 + '@tsconfig/node14': 1.0.3 + '@tsconfig/node16': 1.0.4 + '@types/node': 22.10.2 + acorn: 8.14.0 + acorn-walk: 8.3.4 + arg: 4.1.3 + create-require: 1.1.1 + diff: 4.0.2 + make-error: 1.3.6 + typescript: 5.7.2 + v8-compile-cache-lib: 3.0.1 + yn: 3.1.1 + optional: true + tsconfig-paths@3.15.0: dependencies: '@types/json5': 0.0.29 @@ -7747,6 +7872,9 @@ snapshots: querystringify: 2.2.0 requires-port: 1.0.0 + v8-compile-cache-lib@3.0.1: + optional: true + v8-to-istanbul@9.3.0: dependencies: '@jridgewell/trace-mapping': 0.3.25 @@ -7904,6 +8032,9 @@ snapshots: y18n: 5.0.8 yargs-parser: 21.1.1 + yn@3.1.1: + optional: true + yocto-queue@0.1.0: {} zeptomatch-escape@1.0.0: {} diff --git a/tsconfig.json b/tsconfig.json index 79f917a8..9be4c39c 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -27,5 +27,5 @@ "target": "es2022" }, "exclude": ["packages/*/lib/", "node_modules"], - "include": ["**/*.ts", "**/*.tsx", "example/src/example/Example$FbtEnum.js"] + "include": ["**/*.ts", "**/*.tsx"] }