Matthew Raymer
26b98d8b0a
wip: Improve deep link validation and error handling
- Add comprehensive route validation with zod schema
- Create type-safe DeepLinkRoute enum for all valid routes
- Add structured error handling for invalid routes
- Redirect to error page with detailed feedback
- Add better timeout handling in deeplink tests
The changes improve robustness by:
1. Validating route paths before navigation
2. Providing detailed error messages for invalid links
3. Redirecting users to dedicated error pages
4. Adding parameter validation with specific feedback
5. Improving type safety across deeplink handling
4 months ago
Trent Larson
6c538de762
fix 'give' query and restore confirmClaim method
4 months ago
Matthew Raymer
c9536dd643
refactor: Replace console logging with logger utility
- Add logger import across multiple view components
- Replace console.error/warn/log with logger methods
- Update error handling to use structured logging
- Improve type safety for error objects
- Add crypto-browserify polyfill for browser environment
The changes improve logging by:
1. Using consistent logging interface
2. Adding structured error logging
3. Improving error type safety
4. Centralizing logging configuration
5. Fixing browser compatibility issues
Affected files:
- Multiple view components
- vite.config.ts
- Build configuration
5 months ago
Matthew Raymer
a9fd33fff6
test: enhance deep link testing with real JWT examples
Changes:
- Add real JWT example for invite testing
- Add detailed JWT payload documentation
- Update test-deeplinks.sh with valid claim IDs
- Add test case for single contact invite
- Improve test descriptions and organization
This improves test coverage by using real-world JWT examples
and valid claim identifiers.
5 months ago
Matthew Raymer
651bab8853
docs: improve endorserServer.ts documentation and types
Changes:
- Add comprehensive JSDoc headers with examples
- Improve function documentation with param/return types
- Add module-level documentation explaining purpose
- Clean up testRecursivelyOnStrings implementation
- Add type annotations to cache functions
- Simplify serverMessageForUser implementation
This improves code maintainability by adding clear documentation
and improving type safety throughout the endorser server module.
5 months ago
Matthew Raymer
79ef59c5a9
refactor: migrate interfaces to dedicated directory
Reorganizes TypeScript interfaces into a modular structure:
- Create dedicated interfaces directory with specialized files
- Split interfaces by domain (claims, common, limits, records, user)
- Update imports in endorserServer.ts to use new interface locations
- Replace 'any' types with 'unknown' for better type safety
- Add proper type imports and exports
This improves code organization and maintainability by:
- Centralizing interface definitions
- Reducing file size of endorserServer.ts
- Making interface relationships more explicit
- Improving type safety with stricter types
5 months ago
Matthew Raymer
b5b5d45b99
feat(logging): enhance debug logging across app
Improves application logging and error tracking:
- Add structured logging in main.common.ts for app initialization
- Enhance API error handling with detailed context in services
- Add deep link debugging in Capacitor platform
- Improve plan service logging with retry information
- Update endorser server logs for better cache debugging
Technical changes:
- Replace console.error with info for non-critical cache misses
- Add component context to global error handler
- Add detailed logging for plan loading and retries
- Improve deep link route matching logs
- Add mount state logging for Capacitor
This improves debugging capabilities across web and mobile platforms.
5 months ago
Trent Larson
19fd0da4b0
fix linting
6 months ago
Matthew Raymer
15783cdbe6
(chore): cleaning up formatting and relative references
6 months ago
Trent Larson
bb5913fef4
make member view available to onboard meeting organizer and reorganize buttons
6 months ago
Trent Larson
6a070a1715
fix linting (and change a little wording in onboarding page)
6 months ago
Trent Larson
3a56d83dd6
add onboarding pages for the list and members, and refine the setup
6 months ago
Trent Larson
5943df756a
make screen where user can create a group onboarding meeting
6 months ago
Trent Larson
888e87f6c6
add instructions for contacting potential links to hidden people
6 months ago
Trent Larson
e6242e2491
fix the marker storage & clearing logic, and add the second profile map when used
6 months ago
Trent Larson
59b433830d
add page for user profile view and update endpoints; rename any "rowid" to "rowId"
6 months ago
Trent Larson
c1058499c7
add discovery of people's profiles, and update profile endpoints for latest server version
6 months ago
Matthew Raymer
aa4edb9742
Fixes for APP_SERVER definition issue
7 months ago
Trent Larson
e97bc4893e
change all copied contact URLs to contact-import, and handle multiples & singles separately
7 months ago
Trent Larson
181de625ba
add sanity checks for importing bulk contacts, eg. when there is a truncated link
7 months ago
Trent Larson
2e7700731b
switch so personal contact JWT is link to this server (not endorser.ch), make empty-did URL show user's info
7 months ago
Matthew Raymer
8b77d2b573
Refatored vite.config to be a bit more streamlined before adding alternate build options. This did end up requiring me to remove @ from imports for some reason. Tests came out fine.
7 months ago
Trent Larson
caf46ab383
add more debug information on errors caught from server
7 months ago
Trent Larson
e286a8f002
change the contact-sharing data into a JWT for the contact-import page
7 months ago
Trent Larson
bf6035ec47
fix the verificationMethod type in the local ETHR DID resolver
7 months ago
Trent Larson
8bf9640c10
add number of confirmers to certificate & show DID info when appropriate
7 months ago
Trent Larson
124ff65aa2
add copy-link on the claim view page & enable certificate
7 months ago
Trent Larson
6749c1ec2d
refine claim certificate view
7 months ago
Trent Larson
dd6598cd99
tweak verbiage
8 months ago
Trent Larson
156950c7f0
add invite-one-accept screen dedicated to accepting invitations
8 months ago
Trent Larson
af197f7c11
catch more errors if something catastrophic happens to encrypted data
8 months ago
Trent Larson
251649e6fe
switch the encryption secret from localStorage to IndexedDB (because localStorage gets lost so often)
8 months ago
Trent Larson
1714f4d087
refactor some verbiage & look-and-feel
8 months ago
Trent Larson
8db7ac3f6f
refactor project screen: add action to record a give from it, and add checks to give confirmation buttons
8 months ago
Trent Larson
2758af6e6e
finish separation of daily reminder message, bump version to 0.3.34
8 months ago
Trent Larson
f57d3b7707
add minute to notification scheduling & fix a bug, plus other tweaks
8 months ago
Trent Larson
c004706425
add pages to see all the offers to user and offers to user's projects
9 months ago
Trent Larson
0d880d1edc
add "+" to numbers if hit limit (>50), fix linting
9 months ago
Trent Larson
195ba6c759
add new projects to front page
9 months ago
Trent Larson
67b2b7199a
fix tests (from project-page switch 4 commits ago) and fix linting
9 months ago
Trent Larson
4168c37074
add large notice when user has a new offer to them
9 months ago
Trent Larson
53abf964b2
add basic page-by-page onboarding help
9 months ago
Trent Larson
149481d468
finish the loading of an invite RegisterAction when clicking on a link
10 months ago
Trent Larson
1bfdcab90b
add page for one-on-one invites (incomplete)
10 months ago
Trent Larson
1fccf0fa92
change give provider to a single value
10 months ago
Trent Larson
9925800fbd
allow details on a give for a providing project (so we can attach a picture)
10 months ago
Trent Larson
7c70e699d8
switch BVC-meeting-end gift to be from the plan, and add display of providers on claim-view page
10 months ago
Trent Larson
a271d9c206
add link directly into contact page to add a new contact via "contactJwt" query parameter
10 months ago
Trent Larson
8111b0e5cf
modify the settings to allow account-specific settings, eg. for "isRegistered"
11 months ago
Trent Larson
9a9c9d3a06
jump from ideas directly into giving dialog choice
11 months ago