fix(mobile-app): update share link domain to rwaapi.szaiai.com
Changed invite share URLs from rwa-durian.app to rwaapi.szaiai.com 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
parent
2e815cec6e
commit
39804aa981
|
|
@ -20,7 +20,9 @@
|
|||
"Bash(git commit -m \"$(cat <<''EOF''\nrefactor(infra): 统一微服务基础设施为共享模式\n\n- 将 presence-service 添加到主 docker-compose.yml(端口 3011,Redis DB 10)\n- 更新 init-databases.sh 添加 rwa_admin 和 rwa_presence 数据库\n- 重构 admin-service/deploy.sh 使用共享基础设施\n- 重构 presence-service/deploy.sh 使用共享基础设施\n- 添加 authorization-service 开发指南文档\n\n解决多个微服务独立启动重复基础设施(PostgreSQL/Redis/Kafka)的问题\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)\n\nCo-Authored-By: Claude <noreply@anthropic.com>\nEOF\n)\")",
|
||||
"Bash(git push)",
|
||||
"Bash(git commit -m \"$(cat <<''EOF''\nfeat(admin-service): 增强移动端版本上传功能\n\n- 添加 APK/IPA 文件解析器自动提取版本信息\n- 支持从安装包自动读取 versionName 和 versionCode\n- 添加 adbkit-apkreader 依赖解析 APK 文件\n- 添加 plist 依赖解析 IPA 文件\n- 优化上传接口支持自动填充版本信息\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)\n\nCo-Authored-By: Claude <noreply@anthropic.com>\nEOF\n)\")",
|
||||
"Bash(git commit:*)"
|
||||
"Bash(git commit:*)",
|
||||
"Bash(grep:*)",
|
||||
"Bash(ls:*)"
|
||||
],
|
||||
"deny": [],
|
||||
"ask": []
|
||||
|
|
|
|||
|
|
@ -4,7 +4,23 @@
|
|||
"Bash(cat:*)",
|
||||
"Bash(git add:*)",
|
||||
"Bash(git commit:*)",
|
||||
"Bash(git push:*)"
|
||||
"Bash(git push:*)",
|
||||
"Bash(git pull:*)",
|
||||
"Bash(services/identity-service/src/infrastructure/external/mpc/mpc-client.service.ts )",
|
||||
"Bash(services/identity-service/src/infrastructure/external/mpc/mpc.module.ts )",
|
||||
"Bash(services/identity-service/src/infrastructure/kafka/index.ts )",
|
||||
"Bash(services/identity-service/src/infrastructure/kafka/kafka.module.ts )",
|
||||
"Bash(services/identity-service/src/infrastructure/kafka/mpc-event-consumer.service.ts )",
|
||||
"Bash(services/mpc-service/src/application/application.module.ts )",
|
||||
"Bash(services/mpc-service/src/application/services/index.ts )",
|
||||
"Bash(services/mpc-service/src/application/services/event-consumer-starter.service.ts )",
|
||||
"Bash(services/mpc-service/src/application/event-handlers/ )",
|
||||
"Bash(services/mpc-service/src/infrastructure/infrastructure.module.ts )",
|
||||
"Bash(services/mpc-service/src/infrastructure/messaging/kafka/index.ts )",
|
||||
"Bash(services/mpc-service/src/infrastructure/messaging/kafka/event-consumer.service.ts)",
|
||||
"Bash(npm run build:*)",
|
||||
"Bash(npx nest build)",
|
||||
"Bash(npm install)"
|
||||
],
|
||||
"deny": [],
|
||||
"ask": []
|
||||
|
|
|
|||
|
|
@ -11,7 +11,9 @@
|
|||
"Bash(docker compose:*)",
|
||||
"Bash(powershell:*)",
|
||||
"Bash(npm run lint)",
|
||||
"Bash(git add:*)"
|
||||
"Bash(git add:*)",
|
||||
"Bash(git commit -m \"$(cat <<''EOF''\nfeat(blockchain-service): implement complete blockchain service with DDD + Hexagonal architecture\n\n- Domain layer: ChainType, EvmAddress, TxHash, TokenAmount, BlockNumber value objects\n- Domain events: DepositDetected, DepositConfirmed, WalletAddressCreated, TransactionBroadcasted\n- Aggregates: DepositTransaction, MonitoredAddress, TransactionRequest\n- Infrastructure: Prisma ORM, Redis cache, Kafka messaging, EVM blockchain adapters\n- Application services: AddressDerivation, DepositDetection, BalanceQuery\n- API: Health, Balance, Internal controllers with Swagger documentation\n- Deployment: Docker, docker-compose, deploy.sh, health-check scripts\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)\n\nCo-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>\nEOF\n)\")",
|
||||
"Bash(git push)"
|
||||
],
|
||||
"deny": [],
|
||||
"ask": []
|
||||
|
|
|
|||
|
|
@ -1,4 +1,12 @@
|
|||
# Database
|
||||
# =============================================================================
|
||||
# Identity Service - Environment Variables
|
||||
# =============================================================================
|
||||
|
||||
# Application
|
||||
APP_PORT=3000
|
||||
APP_ENV="development"
|
||||
|
||||
# Database (PostgreSQL)
|
||||
DATABASE_URL="postgresql://postgres:password@localhost:5432/rwa_identity?schema=public"
|
||||
|
||||
# JWT
|
||||
|
|
@ -21,20 +29,34 @@ KAFKA_GROUP_ID="identity-service-group"
|
|||
SMS_API_URL="https://sms-api.example.com"
|
||||
SMS_API_KEY="your-sms-api-key"
|
||||
|
||||
# App
|
||||
APP_PORT=3000
|
||||
APP_ENV="development"
|
||||
|
||||
# Blockchain Encryption
|
||||
# Wallet Encryption
|
||||
WALLET_ENCRYPTION_SALT="rwa-wallet-salt-change-in-production"
|
||||
|
||||
# MPC Service (NestJS 中间层)
|
||||
# 调用路径: identity-service → mpc-service (NestJS) → mpc-system (Go)
|
||||
MPC_SERVICE_URL="http://localhost:3001"
|
||||
MPC_MODE="local" # local 使用本地模拟,remote 调用 mpc-service
|
||||
# =============================================================================
|
||||
# MPC Service Configuration
|
||||
# =============================================================================
|
||||
# 调用路径: identity-service -> mpc-service (NestJS) -> mpc-system (Go)
|
||||
|
||||
# Backup Service (MPC 备份分片存储)
|
||||
# MPC Service URL (NestJS gateway)
|
||||
MPC_SERVICE_URL="http://localhost:3001"
|
||||
|
||||
# MPC Mode: local (模拟) / remote (调用 mpc-service)
|
||||
MPC_MODE="local"
|
||||
|
||||
# Use event-driven communication for MPC operations
|
||||
MPC_USE_EVENT_DRIVEN="true"
|
||||
|
||||
# =============================================================================
|
||||
# Backup Service Configuration
|
||||
# =============================================================================
|
||||
# 安全要求: 必须部署在与 identity-service 不同的物理服务器上!
|
||||
|
||||
BACKUP_SERVICE_URL="http://backup-server:3002"
|
||||
BACKUP_SERVICE_ENABLED="true"
|
||||
BACKUP_SERVICE_ENABLED="false"
|
||||
SERVICE_JWT_SECRET="your-service-jwt-secret-change-in-production"
|
||||
|
||||
# =============================================================================
|
||||
# Blockchain RPC URLs (for address verification)
|
||||
# =============================================================================
|
||||
KAVA_RPC_URL="https://evm.kava.io"
|
||||
BSC_RPC_URL="https://bsc-dataseed.binance.org"
|
||||
|
|
|
|||
|
|
@ -4,6 +4,9 @@ services:
|
|||
ports:
|
||||
- "3000:3000"
|
||||
environment:
|
||||
# Application
|
||||
- APP_PORT=3000
|
||||
- APP_ENV=production
|
||||
# Database
|
||||
- DATABASE_URL=postgresql://postgres:password@postgres:5432/rwa_identity?schema=public
|
||||
# JWT
|
||||
|
|
@ -19,18 +22,19 @@ services:
|
|||
- KAFKA_BROKERS=kafka:29092
|
||||
- KAFKA_CLIENT_ID=identity-service
|
||||
- KAFKA_GROUP_ID=identity-service-group
|
||||
# App
|
||||
- APP_PORT=3000
|
||||
- APP_ENV=production
|
||||
# Blockchain
|
||||
# Wallet Encryption
|
||||
- WALLET_ENCRYPTION_SALT=rwa-wallet-salt-change-in-production
|
||||
# MPC Service
|
||||
- MPC_SERVICE_URL=http://mpc-service:3001
|
||||
- MPC_MODE=local
|
||||
- MPC_MODE=remote
|
||||
- MPC_USE_EVENT_DRIVEN=true
|
||||
# Backup Service
|
||||
- BACKUP_SERVICE_URL=http://backup-service:3002
|
||||
- BACKUP_SERVICE_ENABLED=false
|
||||
- SERVICE_JWT_SECRET=your-service-jwt-secret-change-in-production
|
||||
# Blockchain RPC
|
||||
- KAVA_RPC_URL=https://evm.kava.io
|
||||
- BSC_RPC_URL=https://bsc-dataseed.binance.org
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
|
|
|
|||
|
|
@ -0,0 +1,12 @@
|
|||
-- AlterTable: Add hardware info fields to user_devices
|
||||
ALTER TABLE "user_devices" ADD COLUMN "platform" VARCHAR(20);
|
||||
ALTER TABLE "user_devices" ADD COLUMN "device_model" VARCHAR(100);
|
||||
ALTER TABLE "user_devices" ADD COLUMN "os_version" VARCHAR(50);
|
||||
ALTER TABLE "user_devices" ADD COLUMN "app_version" VARCHAR(20);
|
||||
ALTER TABLE "user_devices" ADD COLUMN "screen_width" INTEGER;
|
||||
ALTER TABLE "user_devices" ADD COLUMN "screen_height" INTEGER;
|
||||
ALTER TABLE "user_devices" ADD COLUMN "locale" VARCHAR(10);
|
||||
ALTER TABLE "user_devices" ADD COLUMN "timezone" VARCHAR(50);
|
||||
|
||||
-- CreateIndex
|
||||
CREATE INDEX "idx_platform" ON "user_devices"("platform");
|
||||
|
|
@ -54,6 +54,16 @@ model UserDevice {
|
|||
deviceId String @map("device_id") @db.VarChar(100)
|
||||
deviceName String? @map("device_name") @db.VarChar(100)
|
||||
|
||||
// Hardware Info - 设备硬件信息
|
||||
platform String? @db.VarChar(20) // ios, android, web
|
||||
deviceModel String? @map("device_model") @db.VarChar(100) // iPhone 15 Pro, Pixel 8
|
||||
osVersion String? @map("os_version") @db.VarChar(50) // iOS 17.2, Android 14
|
||||
appVersion String? @map("app_version") @db.VarChar(20) // 1.0.0
|
||||
screenWidth Int? @map("screen_width")
|
||||
screenHeight Int? @map("screen_height")
|
||||
locale String? @db.VarChar(10) // zh-CN, en-US
|
||||
timezone String? @db.VarChar(50) // Asia/Shanghai
|
||||
|
||||
addedAt DateTime @default(now()) @map("added_at")
|
||||
lastActiveAt DateTime @default(now()) @map("last_active_at")
|
||||
|
||||
|
|
@ -63,6 +73,7 @@ model UserDevice {
|
|||
@@index([deviceId], name: "idx_device")
|
||||
@@index([userId], name: "idx_user")
|
||||
@@index([lastActiveAt], name: "idx_last_active")
|
||||
@@index([platform], name: "idx_platform")
|
||||
@@map("user_devices")
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,49 +1,73 @@
|
|||
# =============================================================================
|
||||
# MPC Party Service - Environment Variables
|
||||
# MPC Service - Environment Variables
|
||||
# =============================================================================
|
||||
#
|
||||
# mpc-service 作为 MPC 服务网关:
|
||||
# 1. 缓存 username + publicKey 的映射关系
|
||||
# 2. 存储 delegate share
|
||||
# 3. 转发请求到 mpc-system (Go/TSS实现)
|
||||
#
|
||||
# =============================================================================
|
||||
|
||||
# Application
|
||||
NODE_ENV=development
|
||||
APP_PORT=3006
|
||||
API_PREFIX=api/v1
|
||||
NODE_ENV="development"
|
||||
APP_PORT=3001
|
||||
API_PREFIX="api/v1"
|
||||
|
||||
# Database (Prisma)
|
||||
DATABASE_URL="mysql://mpc_user:password@localhost:3306/rwa_mpc_party_db"
|
||||
# Database (PostgreSQL)
|
||||
DATABASE_URL="postgresql://postgres:password@localhost:5432/rwa_mpc?schema=public"
|
||||
|
||||
# Redis
|
||||
REDIS_HOST=localhost
|
||||
REDIS_HOST="localhost"
|
||||
REDIS_PORT=6379
|
||||
REDIS_PASSWORD=
|
||||
REDIS_PASSWORD=""
|
||||
REDIS_DB=5
|
||||
|
||||
# JWT
|
||||
JWT_SECRET=your-jwt-secret-change-in-production
|
||||
JWT_ACCESS_EXPIRES_IN=2h
|
||||
JWT_REFRESH_EXPIRES_IN=30d
|
||||
JWT_SECRET="your-jwt-secret-change-in-production"
|
||||
JWT_ACCESS_EXPIRES_IN="2h"
|
||||
JWT_REFRESH_EXPIRES_IN="30d"
|
||||
|
||||
# Kafka
|
||||
KAFKA_BROKERS=localhost:9092
|
||||
KAFKA_CLIENT_ID=mpc-party-service
|
||||
KAFKA_GROUP_ID=mpc-party-group
|
||||
KAFKA_BROKERS="localhost:9092"
|
||||
KAFKA_CLIENT_ID="mpc-service"
|
||||
KAFKA_GROUP_ID="mpc-service-group"
|
||||
|
||||
# MPC System (deployed on 192.168.1.111)
|
||||
# account-service: Creates keygen/signing sessions
|
||||
MPC_ACCOUNT_SERVICE_URL=http://192.168.1.111:4000
|
||||
# session-coordinator: Coordinates TSS sessions (used by MPCCoordinatorClient)
|
||||
MPC_COORDINATOR_URL=http://192.168.1.111:8081
|
||||
MPC_SESSION_COORDINATOR_URL=http://192.168.1.111:8081
|
||||
# message-router: WebSocket for TSS message routing
|
||||
MPC_MESSAGE_ROUTER_WS_URL=ws://192.168.1.111:8082
|
||||
# server-party-api: Generates user shares (synchronous)
|
||||
MPC_SERVER_PARTY_API_URL=http://192.168.1.111:8083
|
||||
# API key for authenticating with MPC system
|
||||
MPC_API_KEY=your-mpc-api-key-change-in-production
|
||||
# =============================================================================
|
||||
# MPC System Configuration (Go/TSS Backend)
|
||||
# =============================================================================
|
||||
|
||||
# MPC System Account Service URL (creates keygen/signing sessions)
|
||||
MPC_SYSTEM_URL="http://192.168.1.111:4000"
|
||||
|
||||
# API Key for authenticating with MPC system
|
||||
MPC_API_KEY="your-mpc-api-key-change-in-production"
|
||||
|
||||
# Session Coordinator URL (coordinates TSS sessions)
|
||||
MPC_COORDINATOR_URL="http://192.168.1.111:8081"
|
||||
|
||||
# Message Router WebSocket URL (TSS message routing)
|
||||
MPC_MESSAGE_ROUTER_WS_URL="ws://192.168.1.111:8082"
|
||||
|
||||
# Coordinator timeout in milliseconds
|
||||
MPC_COORDINATOR_TIMEOUT=30000
|
||||
|
||||
# =============================================================================
|
||||
# Share Encryption
|
||||
# =============================================================================
|
||||
# IMPORTANT: Generate a secure 32-byte hex key for production
|
||||
SHARE_MASTER_KEY=0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef
|
||||
# Example: openssl rand -hex 32
|
||||
SHARE_MASTER_KEY="0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef"
|
||||
|
||||
# =============================================================================
|
||||
# MPC Protocol Timeouts (in milliseconds)
|
||||
MPC_KEYGEN_TIMEOUT=600000
|
||||
MPC_SIGNING_TIMEOUT=300000
|
||||
MPC_REFRESH_TIMEOUT=600000
|
||||
# =============================================================================
|
||||
MPC_KEYGEN_TIMEOUT=300000
|
||||
MPC_SIGNING_TIMEOUT=180000
|
||||
MPC_REFRESH_TIMEOUT=300000
|
||||
|
||||
# =============================================================================
|
||||
# TSS Library (optional, for direct TSS operations)
|
||||
# =============================================================================
|
||||
TSS_LIB_PATH="/opt/tss-lib/tss"
|
||||
TSS_TEMP_DIR="/tmp/tss"
|
||||
|
|
|
|||
|
|
@ -1,64 +1,85 @@
|
|||
# =============================================================================
|
||||
# MPC Party Service - Docker Compose
|
||||
# MPC Service - Docker Compose
|
||||
# =============================================================================
|
||||
|
||||
version: '3.8'
|
||||
|
||||
services:
|
||||
# MPC Party Service
|
||||
mpc-party-service:
|
||||
mpc-service:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
container_name: rwa-mpc-party
|
||||
container_name: rwa-mpc-service
|
||||
ports:
|
||||
- "3006:3006"
|
||||
- "3001:3001"
|
||||
environment:
|
||||
NODE_ENV: development
|
||||
APP_PORT: 3006
|
||||
DATABASE_URL: mysql://mpc_user:password@mysql:3306/rwa_mpc_party_db
|
||||
# Application
|
||||
NODE_ENV: production
|
||||
APP_PORT: 3001
|
||||
API_PREFIX: api/v1
|
||||
# Database (PostgreSQL)
|
||||
DATABASE_URL: postgresql://postgres:password@postgres:5432/rwa_mpc?schema=public
|
||||
# Redis
|
||||
REDIS_HOST: redis
|
||||
REDIS_PORT: 6379
|
||||
REDIS_PASSWORD: ""
|
||||
REDIS_DB: 5
|
||||
KAFKA_BROKERS: kafka:9092
|
||||
MPC_COORDINATOR_URL: http://mpc-session-coordinator:50051
|
||||
MPC_MESSAGE_ROUTER_WS_URL: ws://mpc-message-router:50052
|
||||
# JWT
|
||||
JWT_SECRET: ${JWT_SECRET:-your-jwt-secret-change-in-production}
|
||||
JWT_ACCESS_EXPIRES_IN: 2h
|
||||
JWT_REFRESH_EXPIRES_IN: 30d
|
||||
# Kafka
|
||||
KAFKA_BROKERS: kafka:29092
|
||||
KAFKA_CLIENT_ID: mpc-service
|
||||
KAFKA_GROUP_ID: mpc-service-group
|
||||
# MPC System (Go/TSS Backend)
|
||||
MPC_SYSTEM_URL: ${MPC_SYSTEM_URL:-http://mpc-system:4000}
|
||||
MPC_API_KEY: ${MPC_API_KEY:-your-mpc-api-key}
|
||||
MPC_COORDINATOR_URL: ${MPC_COORDINATOR_URL:-http://mpc-system:8081}
|
||||
MPC_MESSAGE_ROUTER_WS_URL: ${MPC_MESSAGE_ROUTER_WS_URL:-ws://mpc-system:8082}
|
||||
MPC_COORDINATOR_TIMEOUT: 30000
|
||||
# Share Encryption
|
||||
SHARE_MASTER_KEY: ${SHARE_MASTER_KEY:-0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef}
|
||||
JWT_SECRET: ${JWT_SECRET:-your-jwt-secret-here}
|
||||
# Timeouts
|
||||
MPC_KEYGEN_TIMEOUT: 300000
|
||||
MPC_SIGNING_TIMEOUT: 180000
|
||||
MPC_REFRESH_TIMEOUT: 300000
|
||||
depends_on:
|
||||
mysql:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
redis:
|
||||
condition: service_started
|
||||
kafka:
|
||||
condition: service_started
|
||||
networks:
|
||||
- mpc-network
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- ./logs:/app/logs
|
||||
|
||||
# MySQL Database
|
||||
mysql:
|
||||
image: mysql:8.0
|
||||
container_name: rwa-mpc-mysql
|
||||
ports:
|
||||
- "3307:3306"
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: rootpassword
|
||||
MYSQL_DATABASE: rwa_mpc_party_db
|
||||
MYSQL_USER: mpc_user
|
||||
MYSQL_PASSWORD: password
|
||||
volumes:
|
||||
- mysql_data:/var/lib/mysql
|
||||
- ./database/migrations:/docker-entrypoint-initdb.d
|
||||
healthcheck:
|
||||
test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
|
||||
interval: 10s
|
||||
test: ["CMD", "wget", "-q", "--spider", "http://localhost:3001/health"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
start_period: 40s
|
||||
|
||||
postgres:
|
||||
image: postgres:16-alpine
|
||||
container_name: rwa-mpc-postgres
|
||||
ports:
|
||||
- "5433:5432"
|
||||
environment:
|
||||
POSTGRES_USER: postgres
|
||||
POSTGRES_PASSWORD: password
|
||||
POSTGRES_DB: rwa_mpc
|
||||
volumes:
|
||||
- postgres_data:/var/lib/postgresql/data
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "pg_isready -U postgres"]
|
||||
interval: 5s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
retries: 10
|
||||
networks:
|
||||
- mpc-network
|
||||
|
||||
# Redis
|
||||
redis:
|
||||
image: redis:7-alpine
|
||||
container_name: rwa-mpc-redis
|
||||
|
|
@ -69,7 +90,6 @@ services:
|
|||
networks:
|
||||
- mpc-network
|
||||
|
||||
# Kafka (for event publishing)
|
||||
zookeeper:
|
||||
image: confluentinc/cp-zookeeper:7.5.0
|
||||
container_name: rwa-mpc-zookeeper
|
||||
|
|
@ -87,8 +107,12 @@ services:
|
|||
environment:
|
||||
KAFKA_BROKER_ID: 1
|
||||
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
|
||||
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092
|
||||
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://localhost:9093,PLAINTEXT_INTERNAL://kafka:29092
|
||||
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_INTERNAL:PLAINTEXT
|
||||
KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9092,PLAINTEXT_INTERNAL://0.0.0.0:29092
|
||||
KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT_INTERNAL
|
||||
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
|
||||
KAFKA_AUTO_CREATE_TOPICS_ENABLE: "true"
|
||||
depends_on:
|
||||
- zookeeper
|
||||
networks:
|
||||
|
|
@ -99,5 +123,5 @@ networks:
|
|||
driver: bridge
|
||||
|
||||
volumes:
|
||||
mysql_data:
|
||||
postgres_data:
|
||||
redis_data:
|
||||
|
|
|
|||
|
|
@ -59,7 +59,9 @@
|
|||
"Bash(docker-compose:*)",
|
||||
"Bash(c:/Android/platform-tools/adb.exe shell ping:*)",
|
||||
"Bash(curl:*)",
|
||||
"Bash(DATABASE_URL=\"postgresql://postgres:password@localhost:5432/rwa_identity?schema=public\" npx prisma migrate:*)"
|
||||
"Bash(DATABASE_URL=\"postgresql://postgres:password@localhost:5432/rwa_identity?schema=public\" npx prisma migrate:*)",
|
||||
"Bash(del \"c:\\Users\\dong\\Desktop\\rwadurian\\frontend\\mobile-app\\lib\\core\\services\\mpc_share_service.dart\")",
|
||||
"Bash(dart compile exe:*)"
|
||||
],
|
||||
"deny": [],
|
||||
"ask": []
|
||||
|
|
|
|||
|
|
@ -49,8 +49,8 @@ class WalletCreatedPage extends ConsumerWidget {
|
|||
void _shareToFriends(BuildContext context) {
|
||||
// 构建分享链接 (带推荐码)
|
||||
final shareLink = referralCode != null
|
||||
? 'https://rwa-durian.app/invite?code=$referralCode'
|
||||
: 'https://rwa-durian.app/invite?seq=$userSerialNum';
|
||||
? 'https://rwaapi.szaiai.com/invite?code=$referralCode'
|
||||
: 'https://rwaapi.szaiai.com/invite?seq=$userSerialNum';
|
||||
|
||||
context.push(
|
||||
RoutePaths.share,
|
||||
|
|
|
|||
Loading…
Reference in New Issue