{
	"name": "rocket-chat-reactnative",
	"version": "4.29.0",
	"private": true,
	"scripts": {
		"start": "react-native start",
		"test": "jest",
		"test-update": "jest --updateSnapshot",
		"lint": "eslint . && tsc",
		"prettier-lint": "prettier --write . && yarn lint",
		"ci": "npm run precommit && codecov",
		"ios": "npx react-native run-ios",
		"android": "npx react-native run-android --variant=experimentalPlayDebug",
		"android-whitelabel": "npx react-native run-android --main-activity chat.rocket.reactnative.MainActivity --variant=experimentalPlayDebug --appId",
		"log-android": "react-native log-android",
		"snyk-protect": "snyk protect",
		"precommit": "lint-staged",
		"generate-source-maps-ios": "react-native bundle --platform ios --dev false --entry-file index.js --bundle-output ios-release.bundle --sourcemap-output ios-release.bundle.map",
		"postinstall": "patch-package && jetify",
		"prepare": "husky install",
		"build-icon-set": "node scripts/build-icon-set.js"
	},
	"lint-staged": {
		"*.{js,ts,tsx}": [
			"prettier --write",
			"eslint",
			"jest --bail --findRelatedTests"
		]
	},
	"dependencies": {
		"@bugsnag/react-native": "^7.10.5",
		"@codler/react-native-keyboard-aware-scroll-view": "^1.0.1",
		"@gorhom/bottom-sheet": "^4.3.1",
		"@nozbe/watermelondb": "0.23.0",
		"@react-native-clipboard/clipboard": "^1.8.5",
		"@react-native-community/art": "^1.2.0",
		"@react-native-community/async-storage": "1.12.1",
		"@react-native-community/blur": "^3.6.0",
		"@react-native-community/cameraroll": "4.1.2",
		"@react-native-community/datetimepicker": "3.5.2",
		"@react-native-community/hooks": "2.6.0",
		"@react-native-community/masked-view": "0.1.11",
		"@react-native-community/netinfo": "6.0.0",
		"@react-native-community/picker": "^1.8.1",
		"@react-native-community/slider": "4.2.2",
		"@react-native-cookies/cookies": "6.0.8",
		"@react-native-firebase/analytics": "^7.3.1",
		"@react-native-firebase/app": "^8.2.0",
		"@react-native-firebase/crashlytics": "^8.1.2",
		"@react-navigation/drawer": "6.4.1",
		"@react-navigation/elements": "^1.3.3",
		"@react-navigation/native": "6.0.10",
		"@react-navigation/stack": "6.2.1",
		"@rocket.chat/message-parser": "0.30.0",
		"@rocket.chat/sdk": "RocketChat/Rocket.Chat.js.SDK#mobile",
		"@rocket.chat/ui-kit": "^0.31.13",
		"bytebuffer": "^5.0.1",
		"color2k": "1.2.4",
		"commonmark": "git+https://github.com/RocketChat/commonmark.js.git",
		"commonmark-react-renderer": "git+https://github.com/RocketChat/commonmark-react-renderer.git",
		"dequal": "^2.0.2",
		"ejson": "2.2.1",
		"expo-apple-authentication": "3.2.1",
		"expo-av": "9.2.3",
		"expo-file-system": "11.1.3",
		"expo-haptics": "10.1.0",
		"expo-keep-awake": "9.2.0",
		"expo-local-authentication": "11.1.1",
		"expo-video-thumbnails": "5.2.1",
		"expo-web-browser": "9.2.0",
		"hoist-non-react-statics": "3.3.2",
		"i18n-js": "3.9.2",
		"js-base64": "3.6.1",
		"js-sha256": "^0.9.0",
		"lint-staged": "^11.1.0",
		"lodash": "4.17.21",
		"moment": "2.29.3",
		"pretty-bytes": "5.6.0",
		"prop-types": "15.7.2",
		"react": "17.0.1",
		"react-native": "RocketChat/react-native#0.64.2",
		"react-native-animatable": "^1.3.3",
		"react-native-appearance": "0.3.4",
		"react-native-background-timer": "2.4.1",
		"react-native-bootsplash": "3.2.4",
		"react-native-config-reader": "^4.1.1",
		"react-native-console-time-polyfill": "1.2.3",
		"react-native-device-info": "8.4.8",
		"react-native-document-picker": "8.1.0",
		"react-native-easy-grid": "^0.2.2",
		"react-native-easy-toast": "^1.2.0",
		"react-native-fast-image": "RocketChat/react-native-fast-image.git#bump-version",
		"react-native-file-viewer": "^2.1.4",
		"react-native-gesture-handler": "2.4.2",
		"react-native-image-crop-picker": "RocketChat/react-native-image-crop-picker",
		"react-native-image-progress": "^1.1.1",
		"react-native-jitsi-meet": "RocketChat/react-native-jitsi-meet",
		"react-native-keycommands": "2.0.3",
		"react-native-localize": "2.1.1",
		"react-native-mime-types": "2.3.0",
		"react-native-mmkv-storage": "0.6.12",
		"react-native-modal": "11.10.0",
		"react-native-navigation-bar-color": "2.0.1",
		"react-native-notifications": "^4.2.4",
		"react-native-notifier": "1.6.1",
		"react-native-orientation-locker": "1.1.8",
		"react-native-picker-select": "^8.0.4",
		"react-native-platform-touchable": "1.1.1",
		"react-native-popover-view": "4.0.1",
		"react-native-progress": "5.0.0",
		"react-native-prompt-android": "^1.1.0",
		"react-native-reanimated": "2.2.2",
		"react-native-restart": "0.0.22",
		"react-native-safe-area-context": "3.2.0",
		"react-native-screens": "3.11.0",
		"react-native-scrollable-tab-view": "^1.0.0",
		"react-native-simple-crypto": "RocketChat/react-native-simple-crypto#0.5.0",
		"react-native-slowlog": "^1.0.2",
		"react-native-svg": "^12.3.0",
		"react-native-ui-lib": "RocketChat/react-native-ui-lib#minor-improvements",
		"react-native-unimodules": "^0.14.8",
		"react-native-vector-icons": "9.1.0",
		"react-native-webview": "10.3.2",
		"react-redux": "8.0.1",
		"reactotron-react-native": "5.0.2",
		"redux": "4.2.0",
		"redux-immutable-state-invariant": "2.1.0",
		"redux-saga": "1.1.3",
		"remove-markdown": "^0.3.0",
		"reselect": "4.0.0",
		"rn-extensions-share": "RocketChat/rn-extensions-share",
		"rn-fetch-blob": "0.12.0",
		"rn-root-view": "1.0.3",
		"semver": "7.3.5",
		"ua-parser-js": "^1.0.2",
		"url-parse": "1.5.10",
		"use-deep-compare-effect": "1.6.1",
		"xregexp": "5.0.2"
	},
	"resolutions": {
		"ua-parser-js": "^1.0.2",
		"jpeg-js": "0.4.4"
	},
	"devDependencies": {
		"@babel/core": "^7.12.9",
		"@babel/eslint-parser": "^7.14.7",
		"@babel/eslint-plugin": "^7.13.0",
		"@babel/plugin-proposal-decorators": "^7.8.3",
		"@babel/plugin-transform-named-capturing-groups-regex": "^7.17.12",
		"@babel/runtime": "^7.12.5",
		"@bugsnag/source-maps": "^2.2.0",
		"@rocket.chat/eslint-config": "^0.4.0",
		"@storybook/addon-storyshots": "5.3.21",
		"@storybook/react-native": "5.3.25",
		"@testing-library/jest-native": "^4.0.4",
		"@testing-library/react-native": "^9.0.0",
		"@types/bytebuffer": "^5.0.43",
		"@types/ejson": "^2.1.3",
		"@types/i18n-js": "^3.8.2",
		"@types/jest": "^26.0.24",
		"@types/lodash": "^4.14.171",
		"@types/react": "^17.0.14",
		"@types/react-native": "0.64.2",
		"@types/react-native-background-timer": "^2.0.0",
		"@types/react-native-config-reader": "^4.1.0",
		"@types/react-native-platform-touchable": "^1.1.2",
		"@types/react-native-scrollable-tab-view": "^0.10.2",
		"@types/react-native-vector-icons": "^6.4.10",
		"@types/react-test-renderer": "^17.0.1",
		"@types/semver": "^7.3.9",
		"@types/ua-parser-js": "^0.7.36",
		"@types/url-parse": "^1.4.8",
		"@typescript-eslint/eslint-plugin": "^4.28.3",
		"@typescript-eslint/parser": "^4.28.5",
		"axios": "0.27.2",
		"babel-jest": "^27.0.6",
		"babel-plugin-transform-remove-console": "^6.9.4",
		"codecov": "^3.8.3",
		"detox": "19.7.0",
		"eslint": "^7.31.0",
		"eslint-config-prettier": "^8.5.0",
		"eslint-plugin-import": "2.22.0",
		"eslint-plugin-jest": "24.7.0",
		"eslint-plugin-jsx-a11y": "6.3.1",
		"eslint-plugin-react": "7.30.0",
		"eslint-plugin-react-hooks": "^4.4.0",
		"eslint-plugin-react-native": "3.8.1",
		"husky": "^6.0.0",
		"identity-obj-proxy": "^3.0.0",
		"jest": "^27.0.6",
		"jest-cli": "^27.0.6",
		"jest-expo": "^45.0.1",
		"metro-react-native-babel-preset": "^0.64.0",
		"mocha": "9.0.1",
		"otp.js": "1.2.0",
		"patch-package": "6.4.7",
		"prettier": "^2.3.2",
		"react-dom": "17.0.1",
		"react-test-renderer": "17.0.1",
		"reactotron-redux": "3.1.3",
		"reactotron-redux-saga": "4.2.3",
		"typescript": "^4.3.5"
	},
	"jest": {
		"testPathIgnorePatterns": [
			"e2e",
			"node_modules"
		],
		"transformIgnorePatterns": [
			"node_modules/(?!(jest-)?@?react-native|@react-native-community|@react-navigation)"
		],
		"preset": "./jest.preset.js",
		"coverageDirectory": "./coverage/",
		"collectCoverage": true,
		"moduleNameMapper": {
			".+\\.(css|styl|less|sass|scss)$": "identity-obj-proxy",
			".+\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$": "<rootDir>/__mocks__/fileMock.js"
		},
		"transform": {
			"^.+\\.js$": "<rootDir>/node_modules/react-native/jest/preprocessor.js"
		},
		"setupFilesAfterEnv": [
			"@testing-library/jest-native/extend-expect",
			"./jest.setup.js"
		]
	},
	"snyk": true,
	"engines": {
		"node": ">=8.x",
		"npm": ">=4.x"
	},
	"detox": {
		"runner-config": "e2e/.mocharc.json",
		"specs": "e2e/tests",
		"configurations": {
			"ios.sim.debug": {
				"binaryPath": "ios/build/Build/Products/Debug-iphonesimulator/Rocket.Chat Experimental.app",
				"build": "xcodebuild -workspace ios/RocketChatRN.xcworkspace -scheme RocketChatRN -configuration Debug -sdk iphonesimulator -derivedDataPath ios/build",
				"type": "ios.simulator",
				"device": {
					"type": "iPhone 11 Pro"
				}
			},
			"ios.sim.release": {
				"binaryPath": "ios/build/Build/Products/Release-iphonesimulator/Rocket.Chat Experimental.app",
				"build": "xcodebuild -workspace ios/RocketChatRN.xcworkspace -scheme RocketChatRN -configuration Release -sdk iphonesimulator -derivedDataPath ios/build",
				"type": "ios.simulator",
				"device": {
					"type": "iPhone 11 Pro"
				},
				"artifacts": {
					"plugins": {
						"screenshot": {
							"enabled": true,
							"shouldTakeAutomaticSnapshots": true,
							"keepOnlyFailedTestsArtifacts": true,
							"takeWhen": {
								"testStart": true,
								"testDone": true,
								"appNotReady": true
							}
						}
					}
				}
			},
			"android.emu.debug": {
				"device": "Pixel_API_28_AOSP",
				"type": "android.emulator",
				"binaryPath": "android/app/build/outputs/apk/e2ePlay/debug/app-e2e-play-debug.apk",
				"build": "cd android && ./gradlew app:assembleE2ePlayDebug app:assembleE2ePlayDebugAndroidTest -DtestBuildType=debug && cd .."
			},
			"android.emu.release": {
				"device": "Pixel_API_28_AOSP",
				"type": "android.emulator",
				"binaryPath": "android/app/build/outputs/apk/e2ePlay/release/app-e2e-play-release.apk",
				"build": "cd android && ./gradlew app:assembleE2ePlayRelease app:assembleE2ePlayReleaseAndroidTest -DtestBuildType=release && cd .."
			}
		}
	}
}
