Browse Source

feat: add deep linking support for DID routes

- Add DID route schema to deepLinks.ts
- Enable Android app link verification
- Add autoVerify flag to Android manifest

Technical Changes:
- Add did schema with id parameter to deepLinkSchemas
- Add DeepLinkParams type for DID routes
- Set android:autoVerify="true" in intent-filter
- Update manifest to handle DID deep links

This enables proper deep linking for DID-based routes and
allows Android to verify app links automatically. The DID
schema allows direct navigation to DID-specific views via
external links.
pull/127/head
Matthew Raymer 2 days ago
parent
commit
4562be3bac
  1. 24
      package-lock.json
  2. 1
      src/services/deepLinks.ts
  3. 4
      src/types/deepLinks.ts

24
package-lock.json

@ -11466,9 +11466,9 @@
}
},
"node_modules/autoprefixer": {
"version": "10.4.20",
"resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.20.tgz",
"integrity": "sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==",
"version": "10.4.21",
"resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.21.tgz",
"integrity": "sha512-O+A6LWV5LDHSJD3LjHYoNi4VLsj/Whi7k6zG12xTYaU4cQ8oxQGckXNX8cRHK5yOZ/ppVHe0ZBXGzSV9jXdVbQ==",
"dev": true,
"funding": [
{
@ -11486,11 +11486,11 @@
],
"license": "MIT",
"dependencies": {
"browserslist": "^4.23.3",
"caniuse-lite": "^1.0.30001646",
"browserslist": "^4.24.4",
"caniuse-lite": "^1.0.30001702",
"fraction.js": "^4.3.7",
"normalize-range": "^0.1.2",
"picocolors": "^1.0.1",
"picocolors": "^1.1.1",
"postcss-value-parser": "^4.2.0"
},
"bin": {
@ -12518,9 +12518,9 @@
}
},
"node_modules/caniuse-lite": {
"version": "1.0.30001702",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001702.tgz",
"integrity": "sha512-LoPe/D7zioC0REI5W73PeR1e1MLCipRGq/VkovJnd6Df+QVqT+vT33OXCp8QUd7kA7RZrHWxb1B36OQKI/0gOA==",
"version": "1.0.30001703",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001703.tgz",
"integrity": "sha512-kRlAGTRWgPsOj7oARC9m1okJEXdL/8fekFVcxA8Hl7GH4r/sN4OJn/i6Flde373T50KS7Y37oFbMwlE8+F42kQ==",
"devOptional": true,
"funding": [
{
@ -14311,9 +14311,9 @@
}
},
"node_modules/electron": {
"version": "33.4.3",
"resolved": "https://registry.npmjs.org/electron/-/electron-33.4.3.tgz",
"integrity": "sha512-+cApL2a43zQJfnmCEOj3YuvM2iVsQzwr8ROysM5EFbY5F77bSVoIWk8r84aQLlBIajq4BppWymsikdXvDDxD5g==",
"version": "33.4.4",
"resolved": "https://registry.npmjs.org/electron/-/electron-33.4.4.tgz",
"integrity": "sha512-IGfb8EZriE++6+GQn8dUEaUxreUA1WOZt3N76GGQu23TIFuz81DxKZ69xmoGMmgYm51p5S342U1mfQnrjwqTew==",
"dev": true,
"hasInstallScript": true,
"license": "MIT",

1
src/services/deepLinks.ts

@ -119,6 +119,7 @@ export class DeepLinkHandler {
"invite-one-accept": "invite-one-accept",
"offer-details": "offer-details",
"confirm-gift": "confirm-gift",
did: "did"
};
const routeName = routeMap[path];

4
src/types/deepLinks.ts

@ -66,6 +66,10 @@ export const deepLinkSchemas = {
id: z.string().min(1),
view: z.enum(["details"]).optional(),
}),
did: z.object({
id: z.string(),
}),
};
export type DeepLinkParams = {

Loading…
Cancel
Save