* feat(app): improve markdown file previews Keep rendered documents on the chat reading rail, surface YAML front matter as readable metadata, and make shared Markdown links retain the chat accent and hover treatment. * fix(app): preserve unsafe frontmatter source * test(app): cover markdown link behavior
154 lines
6.5 KiB
JSON
154 lines
6.5 KiB
JSON
{
|
|
"name": "@getpaseo/app",
|
|
"version": "0.3.1",
|
|
"private": true,
|
|
"main": "index.ts",
|
|
"scripts": {
|
|
"start": "npm run start:expo",
|
|
"start:expo": "cross-env APP_VARIANT=development expo start",
|
|
"reset-project": "node ./scripts/reset-project.js",
|
|
"eas-build-post-install": "npm --prefix ../.. run build:app-deps && npm run build:terminal-webview",
|
|
"android": "npm run android:development",
|
|
"android:development": "npm --prefix ../.. run build:client && cross-env APP_VARIANT=development expo prebuild --platform android --non-interactive && cross-env APP_VARIANT=development expo run:android --variant=debug",
|
|
"android:production": "npm --prefix ../.. run build:client && cross-env APP_VARIANT=production expo prebuild --platform android --non-interactive && cross-env APP_VARIANT=production expo run:android --variant=release",
|
|
"android:release": "npm run android:production",
|
|
"android:clear": "node -e \"require('node:fs').rmSync('android', { recursive: true, force: true })\"",
|
|
"ios": "npm --prefix ../.. run build:client && expo run:ios",
|
|
"ios:release": "npm --prefix ../.. run build:client && expo run:ios --configuration Release",
|
|
"web": "npm --prefix ../.. run build:client && concurrently --kill-others --names protocol,client,expo --prefix-colors yellow,blue,magenta \"npm --prefix ../.. run watch:protocol\" \"npm --prefix ../.. run watch:client\" \"npm run web:expo\"",
|
|
"web:expo": "expo start --web",
|
|
"lint": "expo lint",
|
|
"typecheck": "tsgo --noEmit",
|
|
"test": "vitest run",
|
|
"test:browser": "vitest run --project browser",
|
|
"test:e2e": "playwright test --project=browser",
|
|
"test:e2e:real": "cross-env E2E_FORK_PASEO_HOME_FROM=../../.dev/paseo-home playwright test --project=real-provider",
|
|
"test:e2e:relay-deployment": "npm --prefix ../.. run build:server && npm --prefix ../.. run build:daemon-web-ui && cross-env E2E_FORK_PASEO_HOME_FROM=../../.dev/paseo-home playwright test --project=relay-deployment e2e/browser/relay-deployment-reconnect.real.spec.ts",
|
|
"test:e2e:ui": "playwright test --ui",
|
|
"build": "npm run build:web",
|
|
"build:web": "npm --prefix ../.. run build:app-deps && expo export --platform web",
|
|
"profile:workspace-tabs": "node ./scripts/profile-workspace-tabs.mjs",
|
|
"deploy:web": "npm run build:web && wrangler pages deploy dist --project-name paseo-app --branch main",
|
|
"build:terminal-webview": "node ./scripts/build-terminal-webview-html.mjs",
|
|
"build:mermaid-runtime": "node ./src/components/markdown/fence/mermaid/build-runtime.mjs"
|
|
},
|
|
"dependencies": {
|
|
"@codemirror/commands": "6.10.4",
|
|
"@codemirror/language": "6.12.4",
|
|
"@codemirror/search": "6.7.1",
|
|
"@codemirror/state": "6.7.1",
|
|
"@codemirror/view": "6.43.6",
|
|
"@dnd-kit/core": "^6.3.1",
|
|
"@dnd-kit/sortable": "^10.0.0",
|
|
"@dnd-kit/utilities": "^3.2.2",
|
|
"@floating-ui/react-native": "^0.10.7",
|
|
"@getpaseo/client": "*",
|
|
"@getpaseo/expo-two-way-audio": "*",
|
|
"@getpaseo/highlight": "*",
|
|
"@getpaseo/protocol": "*",
|
|
"@gorhom/bottom-sheet": "^5.2.14",
|
|
"@gorhom/portal": "^1.0.14",
|
|
"@react-native-async-storage/async-storage": "2.2.0",
|
|
"@react-native-masked-view/masked-view": "^0.3.2",
|
|
"@react-native/normalize-colors": "^0.81.5",
|
|
"@react-navigation/native": "^7.1.8",
|
|
"@replit/codemirror-vim": "6.3.0",
|
|
"@tanstack/react-query": "^5.90.11",
|
|
"@tanstack/react-virtual": "^3.13.21",
|
|
"@xterm/addon-clipboard": "^0.3.0-beta.213",
|
|
"@xterm/addon-fit": "^0.12.0-beta.213",
|
|
"@xterm/addon-image": "^0.10.0-beta.213",
|
|
"@xterm/addon-ligatures": "^0.11.0-beta.213",
|
|
"@xterm/addon-search": "^0.17.0-beta.213",
|
|
"@xterm/addon-unicode11": "^0.10.0-beta.213",
|
|
"@xterm/addon-web-links": "^0.13.0-beta.213",
|
|
"@xterm/addon-webgl": "^0.20.0-beta.212",
|
|
"@xterm/xterm": "^6.1.0-beta.213",
|
|
"buffer": "^6.0.3",
|
|
"expo": "^54.0.18",
|
|
"expo-asset": "~12.0.12",
|
|
"expo-audio": "~1.0.13",
|
|
"expo-build-properties": "^1.0.9",
|
|
"expo-camera": "~17.0.10",
|
|
"expo-clipboard": "~8.0.7",
|
|
"expo-constants": "~18.0.9",
|
|
"expo-crypto": "^15.0.8",
|
|
"expo-dev-client": "^6.0.15",
|
|
"expo-document-picker": "~14.0.8",
|
|
"expo-file-system": "~19.0.17",
|
|
"expo-haptics": "~15.0.7",
|
|
"expo-image": "~3.0.10",
|
|
"expo-image-manipulator": "~14.0.8",
|
|
"expo-image-picker": "^17.0.8",
|
|
"expo-keep-awake": "^15.0.7",
|
|
"expo-linking": "~8.0.8",
|
|
"expo-localization": "~17.0.9",
|
|
"expo-notifications": "^0.32.16",
|
|
"expo-router": "~6.0.13",
|
|
"expo-sharing": "^14.0.8",
|
|
"expo-splash-screen": "~31.0.10",
|
|
"expo-system-ui": "~6.0.7",
|
|
"fast-deep-equal": "^3.1.3",
|
|
"htmlparser2": "^12.0.0",
|
|
"i18next": "^26.3.0",
|
|
"lucide-react-native": "^0.546.0",
|
|
"markdown-it": "^10.0.0",
|
|
"mermaid": "^11.16.0",
|
|
"mnemonic-id": "^3.2.7",
|
|
"qrcode": "^1.5.4",
|
|
"react": "19.1.0",
|
|
"react-dom": "19.1.0",
|
|
"react-i18next": "^17.0.8",
|
|
"react-native": "0.81.5",
|
|
"react-native-draggable-flatlist": "^4.0.3",
|
|
"react-native-edge-to-edge": "^1.7.0",
|
|
"react-native-gesture-handler": "~2.28.0",
|
|
"react-native-keyboard-controller": "1.21.12",
|
|
"react-native-markdown-display": "^7.0.2",
|
|
"react-native-nitro-modules": "0.35.5",
|
|
"react-native-reanimated": "~4.3.1",
|
|
"react-native-safe-area-context": "~5.6.0",
|
|
"react-native-screens": "~4.16.0",
|
|
"react-native-svg": "^15.14.0",
|
|
"react-native-uitextview": "^2.2.0",
|
|
"react-native-unistyles": "^3.2.4",
|
|
"react-native-web": "~0.21.0",
|
|
"react-native-webview": "^13.16.0",
|
|
"react-native-worklets": "~0.8.3",
|
|
"tiny-invariant": "^1.3.3",
|
|
"turndown": "^7.2.4",
|
|
"turndown-plugin-gfm": "^1.0.2",
|
|
"use-sync-external-store": "^1.6.0",
|
|
"yaml": "^2.8.4",
|
|
"zod": "^4.4.3",
|
|
"zustand": "^5.0.9"
|
|
},
|
|
"devDependencies": {
|
|
"@playwright/test": "^1.56.1",
|
|
"@testing-library/dom": "^10.4.1",
|
|
"@testing-library/react": "^16.3.2",
|
|
"@types/markdown-it": "^14.1.2",
|
|
"@types/qrcode": "^1.5.6",
|
|
"@types/react": "~19.2.0",
|
|
"@types/turndown": "^5.0.6",
|
|
"@types/ws": "^8.18.1",
|
|
"@vitest/browser": "^4.1.7",
|
|
"@vitest/browser-playwright": "^4.1.7",
|
|
"@xterm/headless": "^6.1.0-beta.213",
|
|
"dotenv": "^17.2.3",
|
|
"eas-cli": "^16.24.1",
|
|
"esbuild": "0.28.1",
|
|
"eslint": "^9.25.0",
|
|
"eslint-config-expo": "~10.0.0",
|
|
"expo-gradle-jvmargs": "^1.1.2",
|
|
"jsdom": "^20.0.3",
|
|
"material-icon-theme": "^5.32.0",
|
|
"playwright": "^1.56.1",
|
|
"serve-sim": "^0.1.40",
|
|
"typescript": "~5.9.2",
|
|
"vitest": "^4.1.6",
|
|
"wrangler": "^4.105.0",
|
|
"ws": "^8.20.0"
|
|
}
|
|
}
|