Commit Graph

1067 Commits

Author SHA1 Message Date
Matthew Raymer
7d60b80bba docs: Add JSDoc comments to DIDView methods
- Add detailed JSDoc comments for all methods in DIDView
- Improve method descriptions and parameter documentation
- Group related methods with descriptive comments
- Add return type documentation where applicable
- Clarify method purposes and side effects

The changes improve code documentation by:
1. Adding clear method descriptions
2. Documenting parameters and return types
3. Explaining method behaviors and side effects
4. Grouping related functionality
5. Making code more maintainable
2025-03-10 07:01:05 +00:00
Matthew Raymer
1dfce62969 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.
2025-03-10 05:00:46 +00:00
Matthew Raymer
66df9234fa fix: improve image handling and icon support
- Fix image load event handler signature
- Add alt text for accessibility
- Add building icon to FontAwesome library

Technical Changes:
- Update cacheImage event to pass only image URL
- Add proper alt text for activity images
- Add faBuilding icon to FontAwesome library

This improves image handling and accessibility while adding
needed icon support for the activity feed interface.
2025-03-07 12:58:14 +00:00
Matthew Raymer
3168416bfa feat: add claim confirmation functionality to activity feed
- Add confirm button functionality to ActivityListItem
- Implement confirmation logic in HomeView
- Add proper button state handling and validation

Technical Changes:
- Add canConfirm computed property to validate confirmation ability
- Add handleConfirmClick method with proper error handling
- Pass required props (isRegistered, activeDid, confirmerIdList)
- Add confirmation dialog with user verification
- Implement claim submission with proper cleanup
- Add visual feedback for button states
- Update feed after successful confirmation

UI/UX Improvements:
- Add disabled state styling for confirm button
- Show proper error messages for invalid confirmation attempts
- Add loading and success notifications
- Improve button accessibility with proper states

Bug Fixes:
- Make apiServer optional in settings type
- Fix settings update during registration
- Add proper type checking for claim confirmation

This adds the ability to confirm claims directly from the
activity feed with proper validation, error handling, and
user feedback. The confirmation flow matches the existing
claim view confirmation functionality.
2025-03-07 10:22:53 +00:00
Matthew Raymer
46f6268e5b refactor: Improve settings and feed handling in HomeView
- Split feed initialization into separate methods
- Add registration status verification
- Improve error handling and notifications
- Add JSDoc comments for better code documentation
- Make apiServer optional in settings type

The changes improve code organization by:
1. Breaking down monolithic initialization into focused methods
2. Adding proper type safety for optional settings
3. Improving error handling and user feedback
4. Adding clear documentation for methods
5. Separating concerns for feed, contacts and registration
2025-03-05 06:08:08 +00:00
Jose Olarte III
4b9a09f343 Homeview changes
- Moved activity image further up the frame
- Added placeholder icon for projects
- Minor fixes
2025-03-04 20:38:14 +08:00
Jose Olarte III
ad52df6712 Homeview design adjustments
- Added markup for poster info (needs wiring)
- Repositioned giver and receiver type icons to beside their labels
- Added "Confirm" button to bottom right of item card (timestamp repositioned to poster info as a result)
- Spacing tweaks
2025-03-03 19:34:09 +08:00
Matthew Raymer
053306217e feat(test-scripts): add registration attempt to TypeScript DID generator
- Added registration attempt to TypeScript DID generator to match Python version
- Added node-fetch and types for HTTP request
- Both scripts now show same UNREGISTERED_USER error from server
- Cleaned up package.json devDependencies formatting
2025-03-03 10:43:42 +00:00
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.
2025-03-01 12:28:48 +00:00
Jose Olarte III
437fb063bf Type fixes 2025-02-28 21:00:03 +08:00
Matthew Raymer
7432e56ead docs: add comprehensive JSDoc documentation to views
Changes:
- Add detailed JSDoc headers to ContactImportView
- Add component-level documentation to ProjectViewView
- Document state management and data flow
- Add security considerations and usage examples
- Improve test script documentation and organization
- Add interface documentation for deep linking

This improves code maintainability by documenting component
architecture, workflows and integration points.
2025-02-28 12:45:21 +00:00
Matthew Raymer
bf23c56475 refactor: extract ActivityListItem into separate component
- Move activity list item markup from HomeView to new component
- Improve code organization and reusability
- Pass required props for claim handling and image viewing
- Maintain existing functionality while reducing component complexity
- Clean up unused commented code in HomeView

This refactor improves code maintainability by extracting the activity
feed item logic into its own component.
2025-02-28 09:34:59 +00:00
8957fac5f9 fix one more styling error 2025-02-27 18:02:05 -07:00
850eb03b23 fix linting 2025-02-27 17:51:57 -07:00
Jose Olarte III
d78e7e70a0 Comments 2025-02-27 21:21:01 +08:00
Jose Olarte III
fd5bbf38e9 In-progress: homeview design refresh
I had to comment out line 544 because it was causing errors (and seemed redundant?)
2025-02-27 21:12:29 +08:00
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.
2025-02-27 13:00:53 +00:00
Matthew Raymer
41d37c3c04 fix: linkage of capacitor core to use relative links 2025-02-26 11:17:46 +00:00
Matthew Raymer
24c7ba15af refactor: reorganize deep linking types and interfaces
Changes:
- Move deep link types from types/ to interfaces/
- Export baseUrlSchema for external use
- Add trailing commas for better git diffs
- Fix type inference for deepLinkSchemas
- Add deepLinks export to interfaces/index.ts
- Remove duplicate SuccessResult interface
- Update import paths in services/deepLinks.ts

This improves code organization by centralizing interface definitions
and fixing type inference issues.
2025-02-26 10:28:55 +00:00
Matthew Raymer
5bc2f19bc4 docs: add comprehensive deep linking documentation
Changes:
- Add detailed JSDoc headers to deep linking files
- Document type system and validation strategy
- Add architecture overview and error handling docs
- Include usage examples and integration points
- Improve code organization comments

This improves maintainability by documenting the deep linking
system's architecture, type safety, and integration points.
2025-02-26 09:45:08 +00:00
Matthew Raymer
64a04ec9a5 feat(deepLinks): implement comprehensive deep linking system
- Add type-safe deep link parameter validation using Zod
- Implement consistent error handling across all deep link routes
- Add support for query parameters in deep links
- Create comprehensive deep linking documentation
- Add logging for deep link operations

Security:
- Validate all deep link parameters before processing
- Sanitize and type-check query parameters
- Add error boundaries around deep link handling
- Implement route-specific parameter validation

Testing:
- Add parameter validation tests
- Add error handling tests
- Test query parameter support
2025-02-26 09:35:04 +00:00
Matthew Raymer
3dbb836ae5 style: reorder v-model and v-bind directives
Changes:
- Move v-model directives before other attributes
- Move v-bind directives before event handlers
- Reorder attributes for better readability
- Fix template attribute ordering across components
- Improve eslint rules
- add default vite config for testing (handles nostr error too)
This follows Vue.js style guide recommendations for attribute
ordering and improves template consistency.
2025-02-26 09:27:04 +00:00
Matthew Raymer
03178d35e7 refactor: improve router type safety and usage
- Add explicit Router type imports across views
- Replace $router type casting with proper typing
- Use $router.back() instead of $router.go(-1) for consistency
- Add proper route and router typings to components
- Clean up router navigation methods
- Fix router push/back method calls

This commit improves type safety and consistency in router usage across
the application's view components.
2025-02-26 06:50:08 +00:00
Matthew Raymer
61da40596c fix: improve TypeScript type safety across views
Changes:
- Add proper type annotations for component properties
- Fix null checks with optional chaining
- Add missing interface properties
- Replace any with proper types where possible
- Move interfaces from endorserServer to interfaces/
- Add proper Router and Route typing
- Add default empty string for optional text fields

This improves type safety and reduces TypeScript errors across views.
2025-02-25 11:36:24 +00:00
Matthew Raymer
52150dd6eb fix: update component and import paths
Changes:
- Update font-awesome component closing tag to match naming
- Change @capacitor/app import to use local wrapper
- Fix component self-closing tags in ContactScanView.vue

This improves consistency in component usage and centralizes
capacitor imports through our wrapper layer.
2025-02-25 09:58:31 +00:00
Matthew Raymer
73637d80dc refactor: move ProviderInfo interface to claims-result.ts
- Move ProviderInfo interface from ClaimView.vue to claims-result.ts
- Add JSDoc documentation to interface properties
- Update imports in ClaimView.vue
- Clean up route handling using vue-router types
- Remove outdated browser compatibility comment

This improves type organization and documentation while reducing
component-level interface definitions.
2025-02-25 09:03:18 +00:00
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
2025-02-24 11:21:08 +00:00
Matthew Raymer
90d688dba1 docs(capacitor): improve main.capacitor.ts documentation and error handling
- Add comprehensive JSDoc header with process flow
- Document supported deep link routes
- Improve error type handling in deep link handler
- Add debug logging for initialization steps
- Update version number to 0.4.4

This improves code maintainability and debugging capabilities for
the Capacitor platform entry point.
2025-02-24 09:37:30 +00:00
2a6234f322 show totals of gives to a project 2025-02-22 20:34:23 -07:00
Matthew Raymer
0a8ace0d8f refactor: update nostr-tools imports for better tree shaking
Changes:
- Import specific functions from nostr-tools instead of full module
- Replace nip06.accountFromExtendedKey with direct import
- Update related function calls to use imported version

This change reduces bundle size by enabling better tree shaking
of unused nostr-tools functionality.
2025-02-21 11:53:21 +00:00
Matthew Raymer
f33d1f0af3 WIP: certificate view and dependency updates
- Update certificate view canvas rendering and QR code generation
- Upgrade dependencies (expo-file-system, expo-font, expo-keep-awake)
- Fix type imports for nostr-tools and dexie-export-import
- Update vite config for better dependency resolution
- Clean up main entry points (capacitor, electron, pywebview)
- Improve error handling in API and plan services
- Add type safety to API error handling
- Update build configuration for platform-specific builds

This is a work in progress commit focusing on certificate view improvements
and dependency maintenance. Some type definitions and build configurations
may need further refinement.
2025-02-21 09:47:24 +00:00
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.
2025-02-20 10:36:47 +00:00
Matthew Raymer
1e22cdec82 feat(mobile): add deep linking support for Capacitor apps
Adds native deep linking capabilities:
- Configure timesafari:// URL scheme for iOS and Android
- Add @capacitor/app dependency and configuration
- Implement deep link handler with improved error logging
- Support parameterized routes like claim/:id
- Add debug logging for native platforms
- Handle app mounting state for deep links

Technical changes:
- Update AndroidManifest.xml with intent filters
- Add URL scheme to iOS Info.plist
- Add @capacitor/app to Podfile and Gradle
- Enhance main.capacitor.ts with robust deep link handling
2025-02-19 13:07:08 +00:00
Matthew Raymer
3135062c08 fix: disable PWA for Capacitor builds
Updates PWA configuration to:
- Disable PWA features for Capacitor builds
- Add @capacitor/app dependency
- Update environment variable handling in build config

This prevents conflicts between PWA and native app functionality
when building for mobile platforms.

Technical changes:
- Add isCapacitor check to PWA disable logic
- Update VITE_PWA_ENABLED environment variable definition
- Add @capacitor/app to package dependencies
2025-02-18 11:54:42 +00:00
Matthew Raymer
2746b8fe2b refactor: reorganize Vite config into modular files
Split monolithic vite.config.mjs into separate config files:
- vite.config.web.mts
- vite.config.electron.mts
- vite.config.capacitor.mts
- vite.config.pywebview.mts
- vite.config.common.mts
- vite.config.utils.mts

Updates:
- Modify package.json scripts to use specific config files
- Add electron-builder as dev dependency
- Update electron build configuration
- Fix electron resource paths
- Remove old vite.config.mjs and utils.js

This change improves maintainability by:
- Separating concerns for different build targets
- Making build configurations more explicit
- Reducing complexity in individual config files
2025-02-18 11:44:06 +00:00
Matthew Raymer
7f3114fd6c chore: cleanup console logs and test directories
- Remove commented console.log statements from main.ts
- Add test output directories to .gitignore:
  - playwright-tests/
  - test-playwright/
  - test-playwright-results/

Keeps repository clean by excluding test artifacts and removing
unused logging statements.
2025-02-18 09:04:01 +00:00
11a4bbbc8f fix problem when going directly to people-map where the search results disappear 2025-02-17 20:35:05 -07:00
5d5a8a4509 add Discover query param searchPeople to go straight to people map 2025-02-17 19:19:38 -07:00
Matthew Raymer
61e32dd560 Merge branch 'master' into split_build_process
fix: image server references and test configurations

- Update image server references to use test server by default for local dev
- Fix registration status checks in tests
- Remove verbose console logging
- Update environment configurations for consistent image server usage
- Fix alert handling in contact registration tests
- Clean up component lifecycle logging
- Add clarifying comments about shared image server usage
- Update playwright test configurations for better reliability

This commit ensures consistent image server behavior across environments
and improves test reliability by properly handling registration status
checks and alerts.
2025-02-17 06:36:40 +00:00
e27aefc19e fix error setting the apiServer to "", plus some refactors while fixing test 40 2025-02-16 20:36:44 -07:00
898821c9aa fix image server references for tests (2 tests failing: missing function & looking for registration prompt for unregistered user) 2025-02-16 09:11:28 -07:00
2b243b6041 fix linting 2025-02-15 12:28:56 -07:00
e31458bef6 yet another attempt at nostr-tools nip06 fix 2025-02-15 12:28:21 -07:00
d1faee69a8 chore: cleanup in prep for pull request 2025-02-14 13:39:07 -07:00
16b77b283d deps: fixing issues around nostr-tools deps being removed that were necessary 2025-02-14 13:24:29 -07:00
213cec2d85 feat(feed): improving the image viewer, to be more conventional, and also allowing the viewer to download the image on mobile with ... control 2025-02-14 13:06:36 -07:00
62eb3ecccc feat(feed): adding image viewer for expanding images found in the feed instead of displaying in a new tab and taking the viewer away from the application 2025-02-14 11:52:20 -07:00
8f34687bc0 fix(feed): long words or urls displayed in feed break the container layout 2025-02-14 11:46:17 -07:00
9d5d163ad5 feat(feed): better image formatting, to take up the width of the feed container 2025-02-14 09:58:55 -07:00
633169de9f deps: updated nostr-tools and import 2025-02-14 06:39:46 -07:00