mirror of
https://github.com/selfxyz/self.git
synced 2026-02-19 02:24:25 -05:00
* Update dependency versions * Fix gesture handler Android dependency (#1611) * Patch screens codegen type (#1609) * Downgrade Sentry React Native (#1612) * fix patches and packages * downgrade versions for gesture handler and screens * agent feedback * fix ios building * allow ios tets to pass * formatting * make cache more resilient * Address CodeRabbitAI review comments This commit addresses all 7 unresolved CodeRabbitAI comments on PR #1606: Patch-package error handling (comments #1, #2, #3): - stderr capture already implemented in both root and workspace patch runs - Add CI warning when patches fail silently instead of exiting with 0 - Log completion status in CI mode for visibility Critical Mixpanel dependency fix (comment #5): - Add explicit Mixpanel-swift pod declaration to fix E2E build failures - Ensures Mixpanel is available even when NFCPassportReader is skipped during E2E testing React-native-web validation (comment #4): - Verified no usage of deprecated findNodeHandle, pointerEvents: 'box-none', or createPortal - Safe to upgrade from 0.19 to 0.21.2 CI workflow improvements (comments #6, #7): - Create cache-sdk-build composite action for consistent SDK build artifact caching - Replace all direct actions/cache@v4 usage with cache-yarn composite action - Replace all direct actions/cache/restore@v4 and save@v4 with cache-sdk-build - Add nested require() validation step before tests to fail fast on problematic patterns All changes follow repository coding guidelines for CI caching and test memory optimization. * Extend cache composite actions to all SDK workflows This commit extends the caching standardization from PR #1606 to include mobile-sdk-ci.yml and core-sdk-ci.yml workflows. New composite actions created: - cache-mobile-sdk-build: For mobile SDK build artifacts - cache-core-sdk-build: For core SDK build artifacts Workflow updates: - mobile-sdk-ci.yml: Replaced 5 instances of direct actions/cache with cache-mobile-sdk-build - core-sdk-ci.yml: Replaced 4 instances of direct actions/cache with cache-core-sdk-build All SDK CI workflows now use consistent caching patterns via composite actions, following the AGENTS.md guideline: "Use shared composite actions from .github/actions for CI caching instead of calling actions/cache directly." Benefits: - Consistent caching across all SDK workflows (qrcode, mobile, core) - Centralized cache configuration - easier to maintain - Follows established patterns from qrcode-sdk-ci.yml * downgrade react-native-svg * update pod lock file * sort
211 lines
7.1 KiB
JSON
211 lines
7.1 KiB
JSON
{
|
|
"name": "@selfxyz/mobile-sdk-alpha",
|
|
"version": "0.0.1-alpha.1",
|
|
"description": "Self SDK (alpha) for registering and proving",
|
|
"keywords": [
|
|
"self",
|
|
"react-native",
|
|
"web",
|
|
"zk",
|
|
"sdk"
|
|
],
|
|
"sideEffects": false,
|
|
"type": "module",
|
|
"exports": {
|
|
".": {
|
|
"types": "./dist/esm/index.d.ts",
|
|
"react-native": "./dist/esm/index.js",
|
|
"browser": "./dist/esm/browser.js",
|
|
"import": "./dist/esm/index.js",
|
|
"require": "./dist/cjs/index.cjs"
|
|
},
|
|
"./browser": {
|
|
"types": "./dist/esm/browser.d.ts",
|
|
"import": "./dist/esm/browser.js",
|
|
"require": "./dist/cjs/browser.cjs"
|
|
},
|
|
"./onboarding/*": {
|
|
"types": "./dist/esm/flows/onboarding/*.d.ts",
|
|
"import": "./dist/esm/flows/onboarding/*.js",
|
|
"require": "./dist/cjs/flows/onboarding/*.cjs"
|
|
},
|
|
"./disclosing/*": {
|
|
"types": "./dist/esm/flows/disclosing/*.d.ts",
|
|
"import": "./dist/esm/flows/disclosing/*.js",
|
|
"require": "./dist/cjs/flows/disclosing/*.cjs"
|
|
},
|
|
"./constants": {
|
|
"types": "./dist/esm/constants/index.d.ts",
|
|
"react-native": "./dist/esm/constants/index.js",
|
|
"import": "./dist/esm/constants/index.js",
|
|
"require": "./dist/cjs/constants/index.cjs"
|
|
},
|
|
"./stores": {
|
|
"types": "./dist/esm/stores.d.ts",
|
|
"import": "./dist/esm/stores.js",
|
|
"require": "./dist/cjs/stores.cjs"
|
|
},
|
|
"./constants/analytics": {
|
|
"types": "./dist/esm/constants/analytics.d.ts",
|
|
"react-native": "./dist/esm/constants/analytics.js",
|
|
"import": "./dist/esm/constants/analytics.js",
|
|
"require": "./dist/cjs/constants/analytics.cjs"
|
|
},
|
|
"./constants/colors": {
|
|
"types": "./dist/esm/constants/colors.d.ts",
|
|
"react-native": "./dist/esm/constants/colors.js",
|
|
"import": "./dist/esm/constants/colors.js",
|
|
"require": "./dist/cjs/constants/colors.cjs"
|
|
},
|
|
"./constants/fonts": {
|
|
"types": "./dist/esm/constants/fonts.d.ts",
|
|
"react-native": "./dist/esm/constants/fonts.js",
|
|
"import": "./dist/esm/constants/fonts.js",
|
|
"require": "./dist/cjs/constants/fonts.cjs"
|
|
},
|
|
"./components": {
|
|
"types": "./dist/esm/components/index.d.ts",
|
|
"react-native": "./dist/esm/components/index.js",
|
|
"import": "./dist/esm/components/index.js",
|
|
"require": "./dist/cjs/components/index.cjs"
|
|
},
|
|
"./hooks": {
|
|
"types": "./dist/esm/hooks/index.d.ts",
|
|
"react-native": "./dist/esm/hooks/index.js",
|
|
"import": "./dist/esm/hooks/index.js",
|
|
"require": "./dist/cjs/hooks/index.cjs"
|
|
},
|
|
"./hooks/useSafeBottomPadding": {
|
|
"types": "./dist/esm/hooks/useSafeBottomPadding.d.ts",
|
|
"react-native": "./dist/esm/hooks/useSafeBottomPadding.js",
|
|
"import": "./dist/esm/hooks/useSafeBottomPadding.js",
|
|
"require": "./dist/cjs/hooks/useSafeBottomPadding.cjs"
|
|
},
|
|
"./utils/utils": {
|
|
"types": "./dist/esm/utils/utils.d.ts",
|
|
"react-native": "./dist/esm/utils/utils.js",
|
|
"import": "./dist/esm/utils/utils.js",
|
|
"require": "./dist/cjs/utils/utils.cjs"
|
|
},
|
|
"./svgs/*.svg": {
|
|
"react-native": "./dist/svgs/*.svg",
|
|
"import": "./dist/svgs/*.svg",
|
|
"require": "./dist/svgs/*.svg"
|
|
},
|
|
"./svgs/icons/*.svg": {
|
|
"react-native": "./dist/svgs/icons/*.svg",
|
|
"import": "./dist/svgs/icons/*.svg",
|
|
"require": "./dist/svgs/icons/*.svg"
|
|
},
|
|
"./animations/*.json": {
|
|
"react-native": "./dist/animations/*.json",
|
|
"import": "./dist/animations/*.json",
|
|
"require": "./dist/animations/*.json"
|
|
},
|
|
"./animations/loading/*.json": {
|
|
"react-native": "./dist/animations/loading/*.json",
|
|
"import": "./dist/animations/loading/*.json",
|
|
"require": "./dist/animations/loading/*.json"
|
|
}
|
|
},
|
|
"main": "./dist/cjs/index.cjs",
|
|
"module": "./dist/esm/index.js",
|
|
"react-native": "./dist/esm/index.js",
|
|
"types": "./dist/esm/index.d.ts",
|
|
"files": [
|
|
"dist",
|
|
"android/mobile-sdk-alpha-bom.gradle",
|
|
"android/build.gradle",
|
|
"android/gradle.properties",
|
|
"android/proguard-rules.pro",
|
|
"ios",
|
|
"ios/Frameworks/NFCPassportReader.xcframework",
|
|
"ios/Frameworks/OpenSSL.xcframework",
|
|
"svgs",
|
|
"assets",
|
|
"mobile-sdk-alpha.podspec",
|
|
"react-native.config.cjs"
|
|
],
|
|
"scripts": {
|
|
"build": "yarn build:android && yarn build:ios && tsup && yarn postbuild",
|
|
"postbuild": "node ./scripts/postBuild.mjs",
|
|
"build:android": "sh ./scripts/build-android.sh",
|
|
"build:ios": "sh ./scripts/build-ios.sh",
|
|
"build:ts-only": "tsup && yarn postbuild",
|
|
"fmt": "prettier --check .",
|
|
"fmt:fix": "prettier --write .",
|
|
"format": "yarn nice",
|
|
"lint": "eslint .",
|
|
"lint:fix": "eslint . --fix",
|
|
"nice": "yarn lint:fix",
|
|
"prepublishOnly": "npm run build && npm run typecheck && npm run validate:exports && npm run validate:pkg",
|
|
"report:exports": "node ./scripts/report-exports.mjs",
|
|
"test": "vitest run",
|
|
"test:build": "yarn build && yarn test && yarn types && yarn lint",
|
|
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
"types": "tsc -p tsconfig.json --noEmit",
|
|
"validate:exports": "node ./scripts/validate-exports.mjs",
|
|
"validate:pkg": "node ./scripts/verify-conditions.mjs",
|
|
"watch": "pkill -f 'tsup.*--watch' 2>/dev/null || true && tsup && yarn postbuild && tsup --watch"
|
|
},
|
|
"dependencies": {
|
|
"@babel/runtime": "^7.28.6",
|
|
"@selfxyz/common": "workspace:^",
|
|
"@selfxyz/euclid": "^0.6.1",
|
|
"@xstate/react": "^5.0.5",
|
|
"node-forge": "^1.3.3",
|
|
"react-native-nfc-manager": "^3.17.2",
|
|
"react-native-svg-circle-country-flags": "^0.2.2",
|
|
"socket.io-client": "^4.8.3",
|
|
"uuid": "^11.1.0",
|
|
"xstate": "^5.20.2",
|
|
"zustand": "^4.5.2"
|
|
},
|
|
"devDependencies": {
|
|
"@openpassport/zk-kit-lean-imt": "^0.0.6",
|
|
"@testing-library/react": "^14.1.2",
|
|
"@types/react": "^18.3.4",
|
|
"@types/react-dom": "^18.3.0",
|
|
"@typescript-eslint/eslint-plugin": "^8.0.0",
|
|
"@typescript-eslint/parser": "^8.0.0",
|
|
"eslint": "^8.57.0",
|
|
"eslint-config-prettier": "^10.1.8",
|
|
"eslint-import-resolver-typescript": "^4.4.4",
|
|
"eslint-plugin-import": "^2.31.0",
|
|
"eslint-plugin-prettier": "^5.5.4",
|
|
"eslint-plugin-react": "^7.37.5",
|
|
"eslint-plugin-simple-import-sort": "^12.1.1",
|
|
"eslint-plugin-sort-exports": "^0.9.1",
|
|
"jsdom": "^25.0.1",
|
|
"lottie-react-native": "7.2.2",
|
|
"poseidon-lite": "^0.3.0",
|
|
"prettier": "^3.5.3",
|
|
"react": "^18.3.1",
|
|
"react-dom": "^18.3.1",
|
|
"react-native": "0.76.9",
|
|
"react-native-blur-effect": "^1.1.3",
|
|
"react-native-haptic-feedback": "^2.3.3",
|
|
"react-native-localize": "^3.6.1",
|
|
"react-native-svg": "15.15.1",
|
|
"react-native-web": "^0.21.2",
|
|
"react-native-webview": "13.16.0",
|
|
"tsup": "^8.0.1",
|
|
"typescript": "^5.9.3",
|
|
"vitest": "^2.1.8"
|
|
},
|
|
"peerDependencies": {
|
|
"lottie-react-native": "7.2.2",
|
|
"react": "^18.3.1",
|
|
"react-native": "0.76.9",
|
|
"react-native-blur-effect": "^1.1.3",
|
|
"react-native-haptic-feedback": "*",
|
|
"react-native-localize": "*",
|
|
"react-native-svg": "*",
|
|
"react-native-webview": "^13.16.0"
|
|
},
|
|
"packageManager": "yarn@4.12.0",
|
|
"publishConfig": {
|
|
"access": "restricted"
|
|
}
|
|
}
|