diff --git a/package.json b/package.json index c432f4509bff..77ed19519532 100644 --- a/package.json +++ b/package.json @@ -7,315 +7,315 @@ "license": "MIT", "private": true, "scripts": { - "configure-mapbox": "scripts/setup-mapbox-sdk-walkthrough.sh", - "setupNewDotWebForEmulators": "scripts/setup-newdot-web-emulators.sh", - "startAndroidEmulator": "scripts/start-android.sh", - "postinstall": "scripts/postInstall.sh", - "clean": "npx react-native clean-project-auto", - "android": "scripts/set-pusher-suffix.sh && npx react-native run-android --mode=developmentDebug --appId=com.expensify.chat.dev", - "ios": "scripts/set-pusher-suffix.sh && npx react-native run-ios --list-devices --configuration=\"DebugDevelopment\" --scheme=\"New Expensify Dev\"", - "pod-install": "cd ios && bundle exec pod install", - "ipad": "concurrently \"npx react-native run-ios --simulator=\\\"iPad Pro (12.9-inch) (6th generation)\\\" --configuration=\\\"DebugDevelopment\\\" --scheme=\\\"New Expensify Dev\\\"\"", - "ipad-sm": "concurrently \"npx react-native run-ios --simulator=\\\"iPad Pro (11-inch) (4th generation)\\\" --configuration=\\\"DebugDevelopment\\\" --scheme=\\\"New Expensify Dev\\\"\"", - "start": "npx react-native start", - "web": "scripts/set-pusher-suffix.sh && concurrently npm:web-proxy npm:web-server", - "web-proxy": "node web/proxy.js", - "web-server": "webpack-dev-server --open --config config/webpack/webpack.dev.js", - "build": "webpack --config config/webpack/webpack.common.js --env envFile=.env.production", - "build-staging": "webpack --config config/webpack/webpack.common.js --env envFile=.env.staging", - "build-adhoc": "webpack --config config/webpack/webpack.common.js --env envFile=.env.adhoc", - "desktop": "scripts/set-pusher-suffix.sh && node desktop/start.js", - "desktop-build": "scripts/build-desktop.sh production", - "desktop-build-staging": "scripts/build-desktop.sh staging", - "createDocsRoutes": "node .github/scripts/createDocsRoutes.js", - "desktop-build-adhoc": "scripts/build-desktop.sh adhoc", - "ios-build": "fastlane ios build", - "android-build": "fastlane android build", - "android-build-e2e": "bundle exec fastlane android build_e2e", - "android-build-e2edelta": "bundle exec fastlane android build_e2edelta", - "test": "TZ=utc jest", - "typecheck": "tsc", - "lint": "eslint . --max-warnings=0 --cache --cache-location=node_modules/.cache/eslint", - "lint-changed": "eslint --fix $(git diff --diff-filter=AM --name-only main -- \"*.js\" \"*.ts\" \"*.tsx\")", - "lint-watch": "npx eslint-watch --watch --changed", - "shellcheck": "./scripts/shellCheck.sh", - "prettier": "prettier --write .", - "prettier-watch": "onchange \"**/*.{js,ts,tsx}\" -- prettier --write --ignore-unknown {{changed}}", - "print-version": "echo $npm_package_version", - "storybook": "start-storybook -p 6006", - "storybook-build": "ENV=production build-storybook -o dist/docs", - "storybook-build-staging": "ENV=staging build-storybook -o dist/docs", - "gh-actions-build": "./.github/scripts/buildActions.sh", - "gh-actions-validate": "./.github/scripts/validateActionsAndWorkflows.sh", - "analyze-packages": "ANALYZE_BUNDLE=true webpack --config config/webpack/webpack.common.js --env envFile=.env.production", - "symbolicate:android": "npx metro-symbolicate android/app/build/generated/sourcemaps/react/release/index.android.bundle.map", - "symbolicate:ios": "npx metro-symbolicate main.jsbundle.map", - "test:e2e": "node tests/e2e/testRunner.js --development --skipCheckout --skipInstallDeps --buildMode none", - "gh-actions-unused-styles": "./.github/scripts/findUnusedKeys.sh", - "workflow-test": "./workflow_tests/scripts/runWorkflowTests.sh", - "workflow-test:generate": "node workflow_tests/utils/preGenerateTest.js", - "setup-https": "mkcert -install && mkcert -cert-file config/webpack/certificate.pem -key-file config/webpack/key.pem dev.new.expensify.com localhost 127.0.0.1" + "configure-mapbox": "scripts/setup-mapbox-sdk-walkthrough.sh", + "setupNewDotWebForEmulators": "scripts/setup-newdot-web-emulators.sh", + "startAndroidEmulator": "scripts/start-android.sh", + "postinstall": "scripts/postInstall.sh", + "clean": "npx react-native clean-project-auto", + "android": "scripts/set-pusher-suffix.sh && npx react-native run-android --mode=developmentDebug --appId=com.expensify.chat.dev", + "ios": "scripts/set-pusher-suffix.sh && npx react-native run-ios --list-devices --configuration=\"DebugDevelopment\" --scheme=\"New Expensify Dev\"", + "pod-install": "cd ios && bundle exec pod install", + "ipad": "concurrently \"npx react-native run-ios --simulator=\\\"iPad Pro (12.9-inch) (6th generation)\\\" --configuration=\\\"DebugDevelopment\\\" --scheme=\\\"New Expensify Dev\\\"\"", + "ipad-sm": "concurrently \"npx react-native run-ios --simulator=\\\"iPad Pro (11-inch) (4th generation)\\\" --configuration=\\\"DebugDevelopment\\\" --scheme=\\\"New Expensify Dev\\\"\"", + "start": "npx react-native start", + "web": "scripts/set-pusher-suffix.sh && concurrently npm:web-proxy npm:web-server", + "web-proxy": "node web/proxy.js", + "web-server": "webpack-dev-server --open --config config/webpack/webpack.dev.js", + "build": "webpack --config config/webpack/webpack.common.js --env envFile=.env.production", + "build-staging": "webpack --config config/webpack/webpack.common.js --env envFile=.env.staging", + "build-adhoc": "webpack --config config/webpack/webpack.common.js --env envFile=.env.adhoc", + "desktop": "scripts/set-pusher-suffix.sh && node desktop/start.js", + "desktop-build": "scripts/build-desktop.sh production", + "desktop-build-staging": "scripts/build-desktop.sh staging", + "createDocsRoutes": "node .github/scripts/createDocsRoutes.js", + "desktop-build-adhoc": "scripts/build-desktop.sh adhoc", + "ios-build": "fastlane ios build", + "android-build": "fastlane android build", + "android-build-e2e": "bundle exec fastlane android build_e2e", + "android-build-e2edelta": "bundle exec fastlane android build_e2edelta", + "test": "TZ=utc jest", + "typecheck": "tsc", + "lint": "eslint . --max-warnings=0 --cache --cache-location=node_modules/.cache/eslint", + "lint-changed": "eslint --fix $(git diff --diff-filter=AM --name-only main -- \"*.js\" \"*.ts\" \"*.tsx\")", + "lint-watch": "npx eslint-watch --watch --changed", + "shellcheck": "./scripts/shellCheck.sh", + "prettier": "prettier --write .", + "prettier-watch": "onchange \"**/*.{js,ts,tsx}\" -- prettier --write --ignore-unknown {{changed}}", + "print-version": "echo $npm_package_version", + "storybook": "start-storybook -p 6006", + "storybook-build": "ENV=production build-storybook -o dist/docs", + "storybook-build-staging": "ENV=staging build-storybook -o dist/docs", + "gh-actions-build": "./.github/scripts/buildActions.sh", + "gh-actions-validate": "./.github/scripts/validateActionsAndWorkflows.sh", + "analyze-packages": "ANALYZE_BUNDLE=true webpack --config config/webpack/webpack.common.js --env envFile=.env.production", + "symbolicate:android": "npx metro-symbolicate android/app/build/generated/sourcemaps/react/release/index.android.bundle.map", + "symbolicate:ios": "npx metro-symbolicate main.jsbundle.map", + "test:e2e": "node tests/e2e/testRunner.js --development --skipCheckout --skipInstallDeps --buildMode none", + "gh-actions-unused-styles": "./.github/scripts/findUnusedKeys.sh", + "workflow-test": "./workflow_tests/scripts/runWorkflowTests.sh", + "workflow-test:generate": "node workflow_tests/utils/preGenerateTest.js", + "setup-https": "mkcert -install && mkcert -cert-file config/webpack/certificate.pem -key-file config/webpack/key.pem dev.new.expensify.com localhost 127.0.0.1" }, "dependencies": { - "@dotlottie/react-player": "^1.6.3", - "@formatjs/intl-datetimeformat": "^6.10.0", - "@formatjs/intl-getcanonicallocales": "^2.2.0", - "@formatjs/intl-listformat": "^7.2.2", - "@formatjs/intl-locale": "^3.3.0", - "@formatjs/intl-numberformat": "^8.5.0", - "@formatjs/intl-pluralrules": "^5.2.2", - "@gorhom/portal": "^1.0.14", - "@invertase/react-native-apple-authentication": "^2.2.2", - "@kie/act-js": "^2.0.1", - "@kie/mock-github": "^1.0.0", - "@oguzhnatly/react-native-image-manipulator": "github:Expensify/react-native-image-manipulator#5cdae3d4455b03a04c57f50be3863e2fe6c92c52", - "@onfido/react-native-sdk": "8.3.0", - "@react-native-async-storage/async-storage": "^1.17.10", - "@react-native-camera-roll/camera-roll": "5.4.0", - "@react-native-clipboard/clipboard": "^1.12.1", - "@react-native-community/datetimepicker": "^3.5.2", - "@react-native-community/geolocation": "^3.0.6", - "@react-native-community/netinfo": "^9.3.10", - "@react-native-firebase/analytics": "^12.3.0", - "@react-native-firebase/app": "^12.3.0", - "@react-native-firebase/crashlytics": "^12.3.0", - "@react-native-firebase/perf": "^12.3.0", - "@react-native-google-signin/google-signin": "^10.0.1", - "@react-native-picker/picker": "^2.4.3", - "@react-navigation/material-top-tabs": "^6.6.3", - "@react-navigation/native": "6.1.6", - "@react-navigation/stack": "6.3.16", - "@react-ng/bounds-observer": "^0.2.1", - "@rnmapbox/maps": "^10.0.11", - "@shopify/flash-list": "^1.6.1", - "@types/node": "^18.14.0", - "@ua/react-native-airship": "^15.2.6", - "awesome-phonenumber": "^5.4.0", - "babel-polyfill": "^6.26.0", - "canvas-size": "^1.2.6", - "core-js": "^3.32.0", - "date-fns": "^2.30.0", - "date-fns-tz": "^2.0.0", - "dom-serializer": "^0.2.2", - "domhandler": "^4.3.0", - "expensify-common": "git+ssh://git@github.com/Expensify/expensify-common.git#e9daa1c475ba047fd13ad50079cd64f730e58c29", - "expo": "^49.0.0", - "expo-asset": "~8.10.1", - "expo-image": "^1.8.1", - "fbjs": "^3.0.2", - "focus-trap-react": "^10.2.1", - "htmlparser2": "^7.2.0", - "idb-keyval": "^6.2.1", - "jest-expo": "^49.0.0", - "jest-when": "^3.5.2", - "lodash": "4.17.21", - "lottie-react-native": "^6.4.0", - "mapbox-gl": "^2.15.0", - "onfido-sdk-ui": "13.1.0", - "patch-package": "^8.0.0", - "process": "^0.11.10", - "prop-types": "^15.7.2", - "pusher-js": "8.3.0", - "react": "18.2.0", - "react-beautiful-dnd": "^13.1.1", - "react-collapse": "^5.1.0", - "react-content-loader": "^6.1.0", - "react-dom": "18.1.0", - "react-error-boundary": "^4.0.11", - "react-map-gl": "^7.1.3", - "react-native": "0.72.4", - "react-native-android-location-enabler": "^1.2.2", - "react-native-blob-util": "^0.17.3", - "react-native-collapsible": "^1.6.1", - "react-native-config": "^1.4.5", - "react-native-dev-menu": "^4.1.1", - "react-native-device-info": "^10.3.0", - "react-native-document-picker": "^8.0.0", - "react-native-draggable-flatlist": "^4.0.1", - "react-native-fs": "^2.20.0", - "react-native-gesture-handler": "2.12.0", - "react-native-google-places-autocomplete": "2.5.6", - "react-native-haptic-feedback": "^1.13.0", - "react-native-image-pan-zoom": "^2.1.12", - "react-native-image-picker": "^5.1.0", - "react-native-image-size": "git+https://github.com/Expensify/react-native-image-size#8393b7e58df6ff65fd41f60aee8ece8822c91e2b", - "react-native-key-command": "^1.0.6", - "react-native-linear-gradient": "^2.8.1", - "react-native-localize": "^2.2.6", - "react-native-modal": "^13.0.0", - "react-native-onyx": "1.0.118", - "react-native-pager-view": "^6.2.0", - "react-native-pdf": "^6.7.1", - "react-native-performance": "^5.1.0", - "react-native-permissions": "^3.9.3", - "react-native-picker-select": "git+https://github.com/Expensify/react-native-picker-select.git#eae05855286dc699954415cc1d629bfd8e8e47e2", - "react-native-plaid-link-sdk": "^10.0.0", - "react-native-qrcode-svg": "^6.2.0", - "react-native-quick-sqlite": "^8.0.0-beta.2", - "react-native-reanimated": "3.5.4", - "react-native-render-html": "6.3.1", - "react-native-safe-area-context": "4.4.1", - "react-native-screens": "3.21.0", - "react-native-svg": "^13.13.0", - "react-native-tab-view": "^3.5.2", - "react-native-url-polyfill": "^2.0.0", - "react-native-view-shot": "^3.6.0", - "react-native-vision-camera": "^2.16.2", - "react-native-web": "^0.19.9", - "react-native-web-linear-gradient": "^1.1.2", - "react-native-webview": "^11.17.2", - "react-pdf": "^6.2.2", - "react-plaid-link": "3.3.2", - "react-web-config": "^1.0.0", - "react-webcam": "^7.1.1", - "react-window": "^1.8.9", - "save": "^2.4.0", - "semver": "^7.5.2", - "shim-keyboard-event-key": "^1.0.3", - "underscore": "^1.13.1" + "@dotlottie/react-player": "^1.6.3", + "@formatjs/intl-datetimeformat": "^6.10.0", + "@formatjs/intl-getcanonicallocales": "^2.2.0", + "@formatjs/intl-listformat": "^7.2.2", + "@formatjs/intl-locale": "^3.3.0", + "@formatjs/intl-numberformat": "^8.5.0", + "@formatjs/intl-pluralrules": "^5.2.2", + "@gorhom/portal": "^1.0.14", + "@invertase/react-native-apple-authentication": "^2.2.2", + "@kie/act-js": "^2.0.1", + "@kie/mock-github": "^1.0.0", + "@oguzhnatly/react-native-image-manipulator": "github:Expensify/react-native-image-manipulator#5cdae3d4455b03a04c57f50be3863e2fe6c92c52", + "@onfido/react-native-sdk": "8.3.0", + "@react-native-async-storage/async-storage": "^1.17.10", + "@react-native-camera-roll/camera-roll": "5.4.0", + "@react-native-clipboard/clipboard": "^1.12.1", + "@react-native-community/datetimepicker": "^3.5.2", + "@react-native-community/geolocation": "^3.0.6", + "@react-native-community/netinfo": "^9.3.10", + "@react-native-firebase/analytics": "^12.3.0", + "@react-native-firebase/app": "^12.3.0", + "@react-native-firebase/crashlytics": "^12.3.0", + "@react-native-firebase/perf": "^12.3.0", + "@react-native-google-signin/google-signin": "^10.0.1", + "@react-native-picker/picker": "^2.4.3", + "@react-navigation/material-top-tabs": "^6.6.3", + "@react-navigation/native": "6.1.6", + "@react-navigation/stack": "6.3.16", + "@react-ng/bounds-observer": "^0.2.1", + "@rnmapbox/maps": "^10.0.11", + "@shopify/flash-list": "^1.6.1", + "@types/node": "^18.14.0", + "@ua/react-native-airship": "^15.2.6", + "awesome-phonenumber": "^5.4.0", + "babel-polyfill": "^6.26.0", + "canvas-size": "^1.2.6", + "core-js": "^3.32.0", + "date-fns": "^2.30.0", + "date-fns-tz": "^2.0.0", + "dom-serializer": "^0.2.2", + "domhandler": "^4.3.0", + "expensify-common": "git+ssh://git@github.com/Expensify/expensify-common.git#e9daa1c475ba047fd13ad50079cd64f730e58c29", + "expo": "^49.0.0", + "expo-asset": "~8.10.1", + "expo-image": "^1.8.1", + "fbjs": "^3.0.2", + "focus-trap-react": "^10.2.1", + "htmlparser2": "^7.2.0", + "idb-keyval": "^6.2.1", + "jest-expo": "^49.0.0", + "jest-when": "^3.5.2", + "lodash": "4.17.21", + "lottie-react-native": "^6.4.0", + "mapbox-gl": "^2.15.0", + "onfido-sdk-ui": "13.1.0", + "patch-package": "^8.0.0", + "process": "^0.11.10", + "prop-types": "^15.7.2", + "pusher-js": "8.3.0", + "react": "18.2.0", + "react-beautiful-dnd": "^13.1.1", + "react-collapse": "^5.1.0", + "react-content-loader": "^6.1.0", + "react-dom": "18.1.0", + "react-error-boundary": "^4.0.11", + "react-map-gl": "^7.1.3", + "react-native": "0.72.4", + "react-native-android-location-enabler": "^1.2.2", + "react-native-blob-util": "^0.17.3", + "react-native-collapsible": "^1.6.1", + "react-native-config": "^1.4.5", + "react-native-dev-menu": "^4.1.1", + "react-native-device-info": "^10.3.0", + "react-native-document-picker": "^8.0.0", + "react-native-draggable-flatlist": "^4.0.1", + "react-native-fs": "^2.20.0", + "react-native-gesture-handler": "2.12.0", + "react-native-google-places-autocomplete": "2.5.6", + "react-native-haptic-feedback": "^1.13.0", + "react-native-image-pan-zoom": "^2.1.12", + "react-native-image-picker": "^5.1.0", + "react-native-image-size": "git+https://github.com/Expensify/react-native-image-size#8393b7e58df6ff65fd41f60aee8ece8822c91e2b", + "react-native-key-command": "^1.0.6", + "react-native-linear-gradient": "^2.8.1", + "react-native-localize": "^2.2.6", + "react-native-modal": "^13.0.0", + "react-native-onyx": "1.0.118", + "react-native-pager-view": "^6.2.0", + "react-native-pdf": "^6.7.1", + "react-native-performance": "^5.1.0", + "react-native-permissions": "^3.9.3", + "react-native-picker-select": "git+https://github.com/Expensify/react-native-picker-select.git#eae05855286dc699954415cc1d629bfd8e8e47e2", + "react-native-plaid-link-sdk": "^10.0.0", + "react-native-qrcode-svg": "^6.2.0", + "react-native-quick-sqlite": "^8.0.0-beta.2", + "react-native-reanimated": "3.5.4", + "react-native-render-html": "6.3.1", + "react-native-safe-area-context": "4.4.1", + "react-native-screens": "3.21.0", + "react-native-svg": "^13.13.0", + "react-native-tab-view": "^3.5.2", + "react-native-url-polyfill": "^2.0.0", + "react-native-view-shot": "^3.6.0", + "react-native-vision-camera": "^2.16.2", + "react-native-web": "^0.19.9", + "react-native-web-linear-gradient": "^1.1.2", + "react-native-webview": "^11.17.2", + "react-pdf": "^6.2.2", + "react-plaid-link": "3.3.2", + "react-web-config": "^1.0.0", + "react-webcam": "^7.1.1", + "react-window": "^1.8.9", + "save": "^2.4.0", + "semver": "^7.5.2", + "shim-keyboard-event-key": "^1.0.3", + "underscore": "^1.13.1" }, "devDependencies": { - "@actions/core": "1.10.0", - "@actions/github": "5.1.1", - "@babel/core": "^7.20.0", - "@babel/parser": "^7.22.16", - "@babel/plugin-proposal-class-properties": "^7.12.1", - "@babel/plugin-proposal-export-namespace-from": "^7.18.9", - "@babel/preset-env": "^7.20.0", - "@babel/preset-flow": "^7.12.13", - "@babel/preset-react": "^7.10.4", - "@babel/preset-typescript": "^7.21.5", - "@babel/runtime": "^7.20.0", - "@babel/traverse": "^7.22.20", - "@babel/types": "^7.22.19", - "@dword-design/eslint-plugin-import-alias": "^4.0.8", - "@electron/notarize": "^2.1.0", - "@jest/globals": "^29.5.0", - "@ngneat/falso": "^7.1.1", - "@octokit/core": "4.0.4", - "@octokit/plugin-paginate-rest": "3.1.0", - "@octokit/plugin-throttling": "4.1.0", - "@react-native-community/eslint-config": "3.0.0", - "@react-native/metro-config": "^0.72.11", - "@react-navigation/devtools": "^6.0.10", - "@storybook/addon-a11y": "^6.5.9", - "@storybook/addon-essentials": "^7.0.0", - "@storybook/addon-react-native-web": "0.0.19--canary.37.cb55428.0", - "@storybook/addons": "^6.5.9", - "@storybook/builder-webpack5": "^6.5.10", - "@storybook/manager-webpack5": "^6.5.10", - "@storybook/react": "^6.5.9", - "@storybook/theming": "^6.5.9", - "@svgr/webpack": "^6.0.0", - "@testing-library/jest-native": "5.4.1", - "@testing-library/react-native": "11.5.1", - "@trivago/prettier-plugin-sort-imports": "^4.2.0", - "@types/concurrently": "^7.0.0", - "@types/jest": "^29.5.2", - "@types/jest-when": "^3.5.2", - "@types/js-yaml": "^4.0.5", - "@types/lodash": "^4.14.195", - "@types/mapbox-gl": "^2.7.13", - "@types/pusher-js": "^5.1.0", - "@types/react": "^18.2.12", - "@types/react-beautiful-dnd": "^13.1.4", - "@types/react-collapse": "^5.0.1", - "@types/react-dom": "^18.2.4", - "@types/react-pdf": "^5.7.2", - "@types/react-test-renderer": "^18.0.0", - "@types/semver": "^7.5.4", - "@types/setimmediate": "^1.0.2", - "@types/underscore": "^1.11.5", - "@typescript-eslint/eslint-plugin": "^6.2.1", - "@typescript-eslint/parser": "^6.2.1", - "@vercel/ncc": "0.38.1", - "@welldone-software/why-did-you-render": "7.0.1", - "ajv-cli": "^5.0.0", - "babel-eslint": "^10.1.0", - "babel-jest": "29.4.1", - "babel-loader": "^9.1.3", - "babel-plugin-module-resolver": "^5.0.0", - "babel-plugin-react-native-web": "^0.18.7", - "babel-plugin-transform-class-properties": "^6.24.1", - "babel-plugin-transform-remove-console": "^6.9.4", - "clean-webpack-plugin": "^3.0.0", - "concurrently": "^5.3.0", - "copy-webpack-plugin": "^6.4.1", - "css-loader": "^6.7.2", - "diff-so-fancy": "^1.3.0", - "dotenv": "^16.0.3", - "electron": "^25.9.4", - "electron-builder": "24.6.4", - "eslint": "^7.6.0", - "eslint-config-airbnb-typescript": "^17.1.0", - "eslint-config-expensify": "^2.0.42", - "eslint-config-prettier": "^8.8.0", - "eslint-plugin-jest": "^24.1.0", - "eslint-plugin-jsdoc": "^46.2.6", - "eslint-plugin-jsx-a11y": "^6.6.1", - "eslint-plugin-react-hooks": "^4.6.0", - "eslint-plugin-react-native-a11y": "^3.3.0", - "eslint-plugin-storybook": "^0.5.13", - "eslint-plugin-you-dont-need-lodash-underscore": "^6.12.0", - "html-webpack-plugin": "^5.5.0", - "jest": "29.4.1", - "jest-circus": "29.4.1", - "jest-cli": "29.4.1", - "jest-environment-jsdom": "^29.4.1", - "jest-transformer-svg": "^2.0.1", - "memfs": "^4.6.0", - "metro-react-native-babel-preset": "0.76.8", - "onchange": "^7.1.0", - "portfinder": "^1.0.28", - "prettier": "^2.8.8", - "pusher-js-mock": "^0.3.3", - "react-native-clean-project": "^4.0.0-alpha4.0", - "react-native-flipper": "https://gitpkg.now.sh/facebook/flipper/react-native/react-native-flipper?9cacc9b59402550eae866e0e81e5f0c2f8203e6b", - "react-native-performance-flipper-reporter": "^2.0.0", - "react-test-renderer": "18.2.0", - "reassure": "^0.10.1", - "setimmediate": "^1.0.5", - "shellcheck": "^1.1.0", - "style-loader": "^2.0.0", - "time-analytics-webpack-plugin": "^0.1.17", - "type-fest": "^3.12.0", - "typescript": "^5.1.6", - "wait-port": "^0.2.9", - "webpack": "^5.76.0", - "webpack-bundle-analyzer": "^4.5.0", - "webpack-cli": "^4.10.0", - "webpack-dev-server": "^4.9.3", - "webpack-font-preload-plugin": "^1.5.0", - "webpack-merge": "^5.8.0", - "yaml": "^2.2.1" + "@actions/core": "1.10.0", + "@actions/github": "5.1.1", + "@babel/core": "^7.20.0", + "@babel/parser": "^7.22.16", + "@babel/plugin-proposal-class-properties": "^7.12.1", + "@babel/plugin-proposal-export-namespace-from": "^7.18.9", + "@babel/preset-env": "^7.20.0", + "@babel/preset-flow": "^7.12.13", + "@babel/preset-react": "^7.10.4", + "@babel/preset-typescript": "^7.21.5", + "@babel/runtime": "^7.20.0", + "@babel/traverse": "^7.22.20", + "@babel/types": "^7.22.19", + "@dword-design/eslint-plugin-import-alias": "^4.0.8", + "@electron/notarize": "^2.1.0", + "@jest/globals": "^29.5.0", + "@ngneat/falso": "^7.1.1", + "@octokit/core": "4.0.4", + "@octokit/plugin-paginate-rest": "3.1.0", + "@octokit/plugin-throttling": "4.1.0", + "@react-native-community/eslint-config": "3.0.0", + "@react-native/metro-config": "^0.72.11", + "@react-navigation/devtools": "^6.0.10", + "@storybook/addon-a11y": "^6.5.9", + "@storybook/addon-essentials": "^7.0.0", + "@storybook/addon-react-native-web": "0.0.19--canary.37.cb55428.0", + "@storybook/addons": "^6.5.9", + "@storybook/builder-webpack5": "^6.5.10", + "@storybook/manager-webpack5": "^6.5.10", + "@storybook/react": "^6.5.9", + "@storybook/theming": "^6.5.9", + "@svgr/webpack": "^6.0.0", + "@testing-library/jest-native": "5.4.1", + "@testing-library/react-native": "11.5.1", + "@trivago/prettier-plugin-sort-imports": "^4.2.0", + "@types/concurrently": "^7.0.0", + "@types/jest": "^29.5.2", + "@types/jest-when": "^3.5.2", + "@types/js-yaml": "^4.0.5", + "@types/lodash": "^4.14.195", + "@types/mapbox-gl": "^2.7.13", + "@types/pusher-js": "^5.1.0", + "@types/react": "^18.2.12", + "@types/react-beautiful-dnd": "^13.1.4", + "@types/react-collapse": "^5.0.1", + "@types/react-dom": "^18.2.4", + "@types/react-pdf": "^5.7.2", + "@types/react-test-renderer": "^18.0.0", + "@types/semver": "^7.5.4", + "@types/setimmediate": "^1.0.2", + "@types/underscore": "^1.11.5", + "@typescript-eslint/eslint-plugin": "^6.2.1", + "@typescript-eslint/parser": "^6.2.1", + "@vercel/ncc": "0.38.1", + "@welldone-software/why-did-you-render": "7.0.1", + "ajv-cli": "^5.0.0", + "babel-eslint": "^10.1.0", + "babel-jest": "29.4.1", + "babel-loader": "^9.1.3", + "babel-plugin-module-resolver": "^5.0.0", + "babel-plugin-react-native-web": "^0.18.7", + "babel-plugin-transform-class-properties": "^6.24.1", + "babel-plugin-transform-remove-console": "^6.9.4", + "clean-webpack-plugin": "^3.0.0", + "concurrently": "^5.3.0", + "copy-webpack-plugin": "^6.4.1", + "css-loader": "^6.7.2", + "diff-so-fancy": "^1.3.0", + "dotenv": "^16.0.3", + "electron": "^25.9.4", + "electron-builder": "24.6.4", + "eslint": "^7.6.0", + "eslint-config-airbnb-typescript": "^17.1.0", + "eslint-config-expensify": "^2.0.42", + "eslint-config-prettier": "^8.8.0", + "eslint-plugin-jest": "^24.1.0", + "eslint-plugin-jsdoc": "^46.2.6", + "eslint-plugin-jsx-a11y": "^6.6.1", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-react-native-a11y": "^3.3.0", + "eslint-plugin-storybook": "^0.5.13", + "eslint-plugin-you-dont-need-lodash-underscore": "^6.12.0", + "html-webpack-plugin": "^5.5.0", + "jest": "29.4.1", + "jest-circus": "29.4.1", + "jest-cli": "29.4.1", + "jest-environment-jsdom": "^29.4.1", + "jest-transformer-svg": "^2.0.1", + "memfs": "^4.6.0", + "metro-react-native-babel-preset": "0.76.8", + "onchange": "^7.1.0", + "portfinder": "^1.0.28", + "prettier": "^2.8.8", + "pusher-js-mock": "^0.3.3", + "react-native-clean-project": "^4.0.0-alpha4.0", + "react-native-flipper": "https://gitpkg.now.sh/facebook/flipper/react-native/react-native-flipper?9cacc9b59402550eae866e0e81e5f0c2f8203e6b", + "react-native-performance-flipper-reporter": "^2.0.0", + "react-test-renderer": "18.2.0", + "reassure": "^0.10.1", + "setimmediate": "^1.0.5", + "shellcheck": "^1.1.0", + "style-loader": "^2.0.0", + "time-analytics-webpack-plugin": "^0.1.17", + "type-fest": "^3.12.0", + "typescript": "^5.1.6", + "wait-port": "^0.2.9", + "webpack": "^5.76.0", + "webpack-bundle-analyzer": "^4.5.0", + "webpack-cli": "^4.10.0", + "webpack-dev-server": "^4.9.3", + "webpack-font-preload-plugin": "^1.5.0", + "webpack-merge": "^5.8.0", + "yaml": "^2.2.1" }, "overrides": { - "react-native": "$react-native" + "react-native": "$react-native" }, "expo": { - "autolinking": { - "exclude": [ - "expo-constants", - "expo-file-system", - "expo-font", - "@react-native-google-signin/google-signin", - "expo-keep-awake" - ] - } + "autolinking": { + "exclude": [ + "expo-constants", + "expo-file-system", + "expo-font", + "@react-native-google-signin/google-signin", + "expo-keep-awake" + ] + } }, "electronmon": { - "patterns": [ - "!node_modules", - "!node_modules/**/*", - "!**/*.map", - "!ios/**", - "!android/**", - "*.test.*", - "*.spec.*" - ] + "patterns": [ + "!node_modules", + "!node_modules/**/*", + "!**/*.map", + "!ios/**", + "!android/**", + "*.test.*", + "*.spec.*" + ] }, "engines": { - "node": "20.9.0", - "npm": "10.1.0" + "node": "20.9.0", + "npm": "10.1.0" } -} +} \ No newline at end of file