277 lines
No EOL
11 KiB
JSON
277 lines
No EOL
11 KiB
JSON
{
|
|
"name": "alerte-secours",
|
|
"version": "1.8.2",
|
|
"main": "index.js",
|
|
"scripts": {
|
|
"start": "expo start --dev-client --private-key-path ./keys/private-key.pem",
|
|
"start:staging": "dotenv --override -e .env.staging -- yarn start",
|
|
"start:prod": "dotenv --override -e .env.prod -- yarn start",
|
|
"android": "expo run:android",
|
|
"android:staging": "dotenv --override -e .env.staging -- expo run:android",
|
|
"android:prod": "dotenv --override -e .env.prod -- expo run:android",
|
|
"bundle:android": "dotenv --override -e .env.prod -- bundle-android",
|
|
"bundle:android:fastdev": "SENTRY_ALLOW_FAILURE=true SENTRY_AUTH_TOKEN='' yarn bundle:android",
|
|
"bundle:android:upload:internal": "fastlane supply --aab android/app/build/outputs/bundle/release/app-release.aab --track internal -j keys/alerte-secours-449609-469f820e5960.json -p com.alertesecours",
|
|
"bundle:ios:archive": "./scripts/ios-archive.sh",
|
|
"bundle:ios:export": "./scripts/ios-export.sh",
|
|
"bundle:ios:upload": "./scripts/ios-upload.sh",
|
|
"bundle:ios": "yarn bundle:ios:archive && yarn bundle:ios:export",
|
|
"ios": "expo run:ios",
|
|
"ios:staging": "dotenv --override -e .env.staging -- yarn run ios",
|
|
"ios:prod": "dotenv --override -e .env.prod -- yarn run ios",
|
|
"web": "expo start --web",
|
|
"postinstall": "link-module-alias",
|
|
"prepare": "husky || true",
|
|
"deep-clean": "./node_modules/.bin/react-native-clean-project --keep-node-modules --remove-iOS-build --keep-brew --keep-pods --remove-iOS-pods --remove-android-build && yarn clean",
|
|
"clean": "\\rm -fr ./node_modules && \\rm -fr dist/* && \\rm -fr ios/build ios/Pods ios/KScoreApp.xcarchive && \\rm -fr android/build android/app/build",
|
|
"prebuild": "expo prebuild && yarn prebuild:hackfix",
|
|
"prebuild:hackfix": "node scripts/removeDuplicates.js",
|
|
"lint": "eslint .",
|
|
"expo-updates:upload": "dotenv --override -e .env.prod -- expo-publish-selfhosted.sh release . $EXPO_UPLOAD_KEY https://expo-updates.alertesecours.fr",
|
|
"release": "commit-and-tag-version",
|
|
"delivery": "yarn release && yarn expo-updates:upload",
|
|
"test": "jest",
|
|
"e2e:build": "dotenv --override -e .env.staging -- detox build --configuration android.emu.debug",
|
|
"e2e:deploy": "adb -s emulator-5554 install -r android/app/build/outputs/apk/debug/app-debug.apk",
|
|
"e2e:start": "adb -s emulator-5554 shell am start -n com.alertesecours/.MainActivity",
|
|
"e2e:test": "detox test --configuration android.emu.debug",
|
|
"e2e:run": "yarn start & yarn e2e:build && yarn e2e:deploy && yarn e2e:test",
|
|
"install:android": "cd android/app/build/outputs/bundle/release && java -jar /opt/bundletool-all-1.17.1.jar build-apks --mode universal --bundle ./app-release.aab --output ./app.apks && mv app.apks app.zip && unzip -o app.zip && adb -s $DEVICE install universal.apk",
|
|
"log:android": "adb -s $DEVICE logcat | grep -E 'ReactNativeJS: '",
|
|
"log:ios:simulator": "xcrun simctl spawn booted log stream --level debug --predicate 'subsystem contains \"com.facebook.react.log\" and processImagePath contains \"AlerteSecours\"'",
|
|
"log:ios": "idevicesyslog | grep -i 'AlerteSecours\\|ReactNative'",
|
|
"log-android": "react-native log-android",
|
|
"log-ios": "react-native log-ios",
|
|
"open:deeplink:android": "yarn open:deeplink --android",
|
|
"open:deeplink:ios": "yarn open:deeplink --ios",
|
|
"open:deeplink": "npx uri-scheme open --android"
|
|
},
|
|
"customExpoVersioning": {
|
|
"versionCode": 176,
|
|
"buildNumber": 176
|
|
},
|
|
"commit-and-tag-version": {
|
|
"scripts": {
|
|
"prechangelog": "yarn prebuild",
|
|
"postcommit": "git add android/app/build.gradle android/app/src/main/AndroidManifest.xml ios/AlerteSecours/Info.plist && git commit --amend --no-edit"
|
|
}
|
|
},
|
|
"_moduleAliases": {
|
|
"~": "src"
|
|
},
|
|
"lint-staged": {
|
|
"*.{js,jsx}": "eslint --cache --fix"
|
|
},
|
|
"husky": {
|
|
"hooks": {
|
|
"pre-commit": "lint-staged",
|
|
"commit-msg": "commitlint -E HUSKY_GIT_PARAMS"
|
|
}
|
|
},
|
|
"dependencies": {
|
|
"@apollo/client": "^3.13.1",
|
|
"@bam.tech/react-native-image-resizer": "^3.0.7",
|
|
"@expo/config-plugins": "~8.0.0",
|
|
"@hookform/resolvers": "^3.2.0",
|
|
"@mapbox/geo-viewport": "^0.5.0",
|
|
"@mapbox/locale-utils": "^0.0.6",
|
|
"@mapbox/polyline": "^1.2.1",
|
|
"@maplibre/maplibre-react-native": "10.0.0-alpha.23",
|
|
"@notifee/react-native": "^9.1.8",
|
|
"@react-native-async-storage/async-storage": "1.23.1",
|
|
"@react-native-community/netinfo": "^11.4.1",
|
|
"@react-native-community/slider": "^4.5.2",
|
|
"@react-native-firebase/app": "^20.5.0",
|
|
"@react-native-firebase/messaging": "^20.5.0",
|
|
"@react-native-masked-view/masked-view": "0.3.1",
|
|
"@react-navigation/bottom-tabs": "^6.6.1",
|
|
"@react-navigation/drawer": "^6.7.2",
|
|
"@react-navigation/elements": "^1.3.31",
|
|
"@react-navigation/material-top-tabs": "^6.6.14",
|
|
"@react-navigation/native": "^6.1.18",
|
|
"@react-navigation/stack": "^6.4.1",
|
|
"@sentry/react-native": "^5.35.0",
|
|
"@turf/along": "^7.1.0",
|
|
"@turf/boolean-equal": "^7.1.0",
|
|
"@turf/distance": "^7.1.0",
|
|
"@turf/length": "^7.1.0",
|
|
"@turf/line-slice": "^7.1.0",
|
|
"@turf/meta": "^7.1.0",
|
|
"@turf/nearest-point": "^7.1.0",
|
|
"@turf/point-to-line-distance": "^7.1.0",
|
|
"@types/react": "~18.2.79",
|
|
"ajv": "^8.12.0",
|
|
"ajv-errors": "^3.0.0",
|
|
"ajv-formats": "^2.1.1",
|
|
"ajv-keywords": "^5.1.0",
|
|
"apollo-link-sentry": "^4.0.0",
|
|
"axios": "^1.4.0",
|
|
"axios-retry": "^3.5.1",
|
|
"base62str": "^1.0.10",
|
|
"country-codes-list": "^1.6.11",
|
|
"delay": "^6.0.0",
|
|
"eventemitter3": "^5.0.1",
|
|
"expo": "~51.0.39",
|
|
"expo-av": "~14.0.7",
|
|
"expo-build-properties": "~0.12.5",
|
|
"expo-constants": "~16.0.2",
|
|
"expo-contacts": "~13.0.5",
|
|
"expo-dev-client": "~4.0.29",
|
|
"expo-device": "~6.0.2",
|
|
"expo-gradle-ext-vars": "^0.1.1",
|
|
"expo-linear-gradient": "~13.0.2",
|
|
"expo-linking": "~6.3.1",
|
|
"expo-localization": "~15.0.3",
|
|
"expo-location": "~17.0.1",
|
|
"expo-notifications": "~0.28.19",
|
|
"expo-secure-store": "~13.0.2",
|
|
"expo-sensors": "~13.0.9",
|
|
"expo-splash-screen": "~0.27.7",
|
|
"expo-status-bar": "~1.12.1",
|
|
"expo-system-ui": "~3.0.7",
|
|
"expo-task-manager": "~11.8.2",
|
|
"expo-updates": "~0.25.27",
|
|
"fast-equals": "^5.0.1",
|
|
"fuse.js": "^6.6.2",
|
|
"geolib": "^3.3.4",
|
|
"google-libphonenumber": "^3.2.32",
|
|
"graphql": "^16.10.0",
|
|
"graphql-ws": "^6.0.4",
|
|
"hash.js": "^1.1.7",
|
|
"i18next": "^23.2.10",
|
|
"immer": "^10.0.2",
|
|
"jwt-decode": "^3.1.2",
|
|
"ky": "^0.33.3",
|
|
"link-module-alias": "^1.2.0",
|
|
"lodash.camelcase": "^4.3.0",
|
|
"lodash.capitalize": "^4.2.1",
|
|
"lodash.clonedeep": "^4.5.0",
|
|
"lodash.debounce": "^4.0.8",
|
|
"lodash.defaultsdeep": "^4.6.1",
|
|
"lodash.get": "^4.4.2",
|
|
"lodash.invert": "^4.3.0",
|
|
"lodash.kebabcase": "^4.1.1",
|
|
"lodash.mapkeys": "^4.6.0",
|
|
"lodash.merge": "^4.6.2",
|
|
"lodash.set": "^4.3.2",
|
|
"lodash.snakecase": "^4.1.1",
|
|
"lodash.upperfirst": "^4.3.1",
|
|
"lottie-react-native": "^7.0.0",
|
|
"minisearch": "^6.1.0",
|
|
"moment": "^2.29.4",
|
|
"open-color": "^1.9.1",
|
|
"open-location-code": "^1.0.3",
|
|
"osrm-text-instructions": "^0.15.0",
|
|
"react": "18.2.0",
|
|
"react-countdown": "^2.3.5",
|
|
"react-dom": "^18.2.0",
|
|
"react-hook-form": "^7.47.0",
|
|
"react-i18next": "^13.0.2",
|
|
"react-native": "0.74.5",
|
|
"react-native-animatable": "^1.3.3",
|
|
"react-native-app-link": "^1.0.1",
|
|
"react-native-background-fetch": "^4.2.7",
|
|
"react-native-background-geolocation": "^4.18.6",
|
|
"react-native-contact-pick": "^0.1.2",
|
|
"react-native-country-picker-modal": "^2.0.0",
|
|
"react-native-device-country": "^1.0.5",
|
|
"react-native-drawer": "^2.5.1",
|
|
"react-native-dropdownalert": "^5.1.0",
|
|
"react-native-error-boundary": "^1.2.8",
|
|
"react-native-geolocation-service": "^5.3.1",
|
|
"react-native-gesture-handler": "~2.16.1",
|
|
"react-native-image-crop-picker": "^0.40.3",
|
|
"react-native-immediate-phone-call": "^2.0.0",
|
|
"react-native-map-link": "^3.6.1",
|
|
"react-native-material-ripple": "^0.9.1",
|
|
"react-native-modal-selector": "^2.1.2",
|
|
"react-native-optiongroup": "^0.0.7",
|
|
"react-native-pager-view": "6.3.0",
|
|
"react-native-paper": "^5.9.1",
|
|
"react-native-permissions": "^4.1.5",
|
|
"react-native-phone-number-input": "^2.1.0",
|
|
"react-native-reanimated": "~3.10.1",
|
|
"react-native-safe-area-context": "4.10.5",
|
|
"react-native-screens": "3.31.1",
|
|
"react-native-send-intent": "^1.3.0",
|
|
"react-native-storage": "^1.0.1",
|
|
"react-native-styled-text": "^2.0.0",
|
|
"react-native-tab-view": "^3.5.2",
|
|
"react-native-toast-notifications": "^3.3.1",
|
|
"react-native-url-polyfill": "^2.0.0",
|
|
"react-native-uuid": "^2.0.2",
|
|
"react-native-vector-icons": "^9.2.0",
|
|
"react-native-web": "~0.19.10",
|
|
"supercluster": "^8.0.1",
|
|
"typescript": "~5.3.3",
|
|
"use-sync-external-store": "^1.4.0",
|
|
"zustand": "^5.0.3",
|
|
"zxcvbn": "^4.4.2"
|
|
},
|
|
"devDependencies": {
|
|
"@babel/core": "^7.24.0",
|
|
"@babel/eslint-parser": "^7.23.10",
|
|
"@babel/plugin-proposal-class-properties": "^7.18.6",
|
|
"@babel/plugin-proposal-export-namespace-from": "^7.18.9",
|
|
"@babel/plugin-proposal-private-methods": "^7.18.6",
|
|
"@babel/plugin-proposal-private-property-in-object": "^7.21.11",
|
|
"@babel/plugin-transform-flow-strip-types": "^7.25.2",
|
|
"@babel/preset-env": "^7.22.7",
|
|
"@babel/preset-react": "^7.24.1",
|
|
"@react-native/metro-config": "^0.75.3",
|
|
"@types/lodash.debounce": "^4",
|
|
"@types/lodash.kebabcase": "^4",
|
|
"@types/lodash.snakecase": "^4",
|
|
"@welldone-software/why-did-you-render": "^8.0.1",
|
|
"babel-eslint": "^10.1.0",
|
|
"babel-plugin-module-resolver": "^5.0.0",
|
|
"babel-plugin-root-import": "^6.6.0",
|
|
"babel-plugin-transform-inline-environment-variables": "^0.4.4",
|
|
"commit-and-tag-version": "^11.2.2",
|
|
"concurrently": "^6.2.0",
|
|
"detox": "^20.27.2",
|
|
"dotenv-cli": "^7.4.2",
|
|
"eslint": "^7.32.0",
|
|
"eslint-config-prettier": "^8.8.0",
|
|
"eslint-import-resolver-babel-module": "^5.3.2",
|
|
"eslint-import-resolver-typescript": "^3.5.5",
|
|
"eslint-plugin-autoimport-declarative": "^1.0.2",
|
|
"eslint-plugin-babel": "^5.3.1",
|
|
"eslint-plugin-detox": "^1.0.0",
|
|
"eslint-plugin-import": "^2.27.5",
|
|
"eslint-plugin-jest": "^28.10.0",
|
|
"eslint-plugin-jsx-a11y": "^6.7.1",
|
|
"eslint-plugin-node": "^11.1.0",
|
|
"eslint-plugin-prettier": "^5.0.0",
|
|
"eslint-plugin-react": "^7.32.2",
|
|
"eslint-plugin-react-hooks": "^4.6.0",
|
|
"eslint-plugin-react-native": "^4.0.0",
|
|
"eslint-plugin-sort-keys-fix": "^1.1.2",
|
|
"eslint-plugin-unused-imports": "^3.0.0",
|
|
"husky": "^9.0.11",
|
|
"jest": "^29.7.0",
|
|
"prettier": "^3.0.0",
|
|
"react-native-clean-project": "^4.0.3",
|
|
"xml2js": "^0.6.2"
|
|
},
|
|
"private": true,
|
|
"resolutions": {
|
|
"expo-modules-core@1.12.23": "patch:expo-modules-core@npm%3A1.12.23#./.yarn/patches/expo-modules-core-npm-1.12.23-4ea588b9bf.patch",
|
|
"react-native-drawer@^2.5.1": "patch:react-native-drawer@npm%3A2.5.1#./.yarn/patches/react-native-drawer-npm-2.5.1-d9da0c325e.patch"
|
|
},
|
|
"detox": {
|
|
"testRunner": "jest",
|
|
"runnerConfig": "e2e/config.json",
|
|
"configurations": {
|
|
"android.emu.debug": {
|
|
"type": "android.emulator",
|
|
"binaryPath": "android/app/build/outputs/apk/debug/app-debug.apk",
|
|
"build": "cd android && ./gradlew assembleDebug assembleAndroidTest -DtestBuildType=debug && cd ..",
|
|
"device": {
|
|
"avdName": "Pixel_6_API_30"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"packageManager": "yarn@4.5.3"
|
|
} |