Commit Graph

135 Commits

Author SHA1 Message Date
Matt Raymer
52c9e57ef4 Merge remote-tracking branch 'refs/remotes/origin/sql-absurd-sql' into sql-absurd-sql 2025-05-25 22:47:36 -04:00
5f24f4975d fix linting 2025-05-25 20:48:33 -06:00
946e88d903 add a input area for arbitrary SQL on the test page 2025-05-25 20:27:06 -06:00
Matt Raymer
574520d9b3 feat(db): Implement SQLite database layer with migration support
Add SQLite database implementation with comprehensive features:

- Core database functionality:
  - Connection management and pooling
  - Schema creation and validation
  - Transaction support with rollback
  - Backup and restore capabilities
  - Health checks and integrity verification

- Data migration:
  - Migration utilities from Dexie to SQLite
  - Data transformation and validation
  - Migration verification and rollback
  - Backup before migration

- CRUD operations for all entities:
  - Accounts, contacts, and contact methods
  - Settings and secrets
  - Logging and audit trails

- Type safety and error handling:
  - Full TypeScript type definitions
  - Runtime data validation
  - Comprehensive error handling
  - Transaction safety

Note: Requires @wa-sqlite/sql.js package to be installed
2025-05-25 04:52:16 -04:00
1129a13e20 add more error handling and messaging when there are bad DB errors 2025-05-23 12:35:16 -06:00
829870b16c add some logging to the DB (especially for iOS app feed debugging) 2025-03-24 19:26:47 -06:00
Matthew Raymer
e0aded04b4 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
2025-03-11 09:35:55 +00:00
Matthew Raymer
d14431161a 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
811fddf24a fix error setting the apiServer to "", plus some refactors while fixing test 40 2025-02-16 20:36:44 -07:00
Matthew Raymer
b3b01652c4 Merge changes 2025-02-03 13:27:36 +00:00
f3f8aeefc3 add discovery of people's profiles, and update profile endpoints for latest server version 2025-01-18 20:02:20 -07:00
Matthew Raymer
94ee9e24ea Merge fixes 2025-01-11 12:45:43 +00:00
702e44872f switch so personal contact JWT is link to this server (not endorser.ch), make empty-did URL show user's info 2025-01-06 08:52:10 -07:00
Matthew Raymer
be8ba12df6 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. 2025-01-05 08:38:15 +00:00
3c1731acdf add contact-methods to a contact 2025-01-04 20:34:05 -07:00
086ccce0bb add a contact-edit page and allow saving of notes 2025-01-04 16:35:05 -07:00
6274f083a1 add DB file for the secret 2024-12-08 21:21:16 -07:00
bb3807a805 switch the encryption secret from localStorage to IndexedDB (because localStorage gets lost so often) 2024-12-08 19:34:31 -07:00
7777fa202b finish separation of daily reminder message, bump version to 0.3.34 2024-11-24 13:09:40 -07:00
8735fe44db change the notification detection to our own variables, and save the selected time 2024-11-20 19:55:51 -07:00
6dc44b2494 move more logging into the database 2024-11-17 18:16:22 -07:00
2c0c7ac256 add minute to notification scheduling & fix a bug, plus other tweaks 2024-11-15 20:39:08 -07:00
195ba6c759 add new projects to front page 2024-11-04 19:57:39 -07:00
4168c37074 add large notice when user has a new offer to them 2024-11-03 10:39:28 -07:00
53abf964b2 add basic page-by-page onboarding help 2024-10-23 08:27:16 -06:00
8111b0e5cf modify the settings to allow account-specific settings, eg. for "isRegistered" 2024-09-15 16:30:46 -06:00
fe627ed6b2 include some DID info on the contact list page 2024-08-31 13:05:59 -06:00
6aef08d7e8 copy a list of contacts and then import 2024-08-20 19:39:29 -06:00
bdb544a624 fix error sharing image and failing to upload, fix upload in webkit/safari, and test it 2024-08-08 08:51:25 -06:00
5ad8a2d2ba await all of the db.settings updates 2024-07-20 07:19:27 -06:00
b2ebc2992b cache the passkey JWANT access token for multiple signatures 2024-07-19 12:44:54 -06:00
053ee4a748 add advanced page & flag for editing raw claims, and fix recipient assignment in detail screen 2024-06-29 10:18:56 -06:00
4cb434fd5d passkey test (#116)
Co-authored-by: Trent Larson <trent@trentlarson.com>
Reviewed-on: trent_larson/crowd-funder-for-time-pwa#116
Co-authored-by: trentlarson <trent@trentlarson.com>
Co-committed-by: trentlarson <trent@trentlarson.com>
2024-06-24 22:21:24 -04:00
7f02ba29a3 add a share_target for people to add a photo 2024-05-10 13:17:20 -06:00
c48b8246f9 add registration inside contact import, with flag to hide it 2024-04-28 16:18:30 -06:00
581a374b05 show contact's or user's icon in more places 2024-04-19 11:39:01 -06:00
50cae65214 add photo to profile page (not yet saved) 2024-04-17 20:07:09 -06:00
3fbf68b117 filter by selections (now all working), add cache for plans 2024-04-06 14:01:18 -06:00
e3696e3ac5 feed filter: save the changed values to the DB, go to map if no location chosen, reload if necessary 2024-04-03 19:54:01 -06:00
866dcb3a2a add screens for the shortcuts for the BVC group (doesn't submit yet) 2024-02-24 18:38:11 -07:00
aeb1d6a6a5 add next-public-key-hash to manual input 2024-01-05 12:44:28 -07:00
934664b9c9 add the hashed-next-key to the contact data, shown & stored 2024-01-03 17:44:41 -07:00
15ccd2394f add missing 'date' to log interface 2024-01-01 16:25:23 -07:00
6eb26ea90c remove IndexedDB keys that shouldn't be keys, and remove unused table, and add commentary 2024-01-01 16:24:30 -07:00
25b1598fcb doc: add more help for the notifications 2023-12-26 17:48:14 -07:00
05c6ddda02 allow a test notification from the notification help screen 2023-12-24 21:24:51 -07:00
7fe256dc9e log service worker messages to the DB (now works) 2023-12-22 12:51:18 -07:00
d7f4acb702 make more adjustments to try and get logging to work 2023-12-21 20:50:35 -07:00
4f2cb55753 add warning if on unexpected server 2023-12-16 08:04:16 -07:00
1be6c04699 prompt them to fill in their name when sharing their info 2023-12-11 16:36:50 -07:00