Commit Graph

28 Commits

Author SHA1 Message Date
Ylber Gashi
c945579abd Mobile: WebView-based page editor with TipTap (#345)
* Mobile: replace inline page editor with WebView-based TipTap editor

Replaces the plain-text block-by-block page editor with a Vite-built
WebView that runs the full TipTap rich text editor. The editor HTML is
bundled as a single self-contained asset, loaded via expo-asset and
rendered in react-native-webview. Communication between RN and the
WebView uses postMessage/onMessage bridge for init, mutations, queries,
theme changes, and navigation.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Mobile: reorganize WebView editor as standalone package

Moves the editor WebView app from apps/mobile/src/editor-webview/ to
apps/mobile/webviews/editor/ as a first-class build target with its own
package.json, tsconfig.json, and vite.config.ts. This fixes TypeScript
compilation (editor code no longer typechecked as React Native) and
makes the build story clearer.

- WebView editor is now at apps/mobile/webviews/editor/
- Built artifact copied to apps/mobile/assets/editor-dist/ on prestart
- Vite dev server support for fast iteration
- Tailwind CSS @source path fixed (../../../../packages/ui)
- Page title editing restored via RenameNodeSheet
- File preview now converts file:// to base64 data URLs for WebView
- WebView hidden until ready to avoid white flash
- Keyboard accessory bar hidden on iOS

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 13:43:17 +01:00
Hakan Shehu
1259f7bd91 Update packages (#322) 2026-02-09 15:42:21 +01:00
Hakan Shehu
5ea69ba06d Update packages (#311) 2026-01-30 17:38:34 +01:00
Ylber Gashi
3e1070f3a6 test(server): add vitest harness and initial integration tests (#302) 2026-01-19 22:17:32 +01:00
Hakan Shehu
98fe12f90c Improve markdown parser for editor 2026-01-08 12:41:08 +01:00
Hakan Shehu
3ccde245e9 Update pakcages (#278) 2026-01-08 11:17:53 +01:00
Hakan Shehu
6a89303e7e Refactor forms with tanstack-form (#276) 2026-01-07 16:58:30 +01:00
Hakan Shehu
c93f416a5a Use tanstackdb for queries and mutations (#275)
* Use tanstackdb for records query

* Use tanstackdb for chat list

* Use tanstackdb for database and view queries

* Use tanstackdb for space queries

* Remove unused query

* Use tanstackdb for files query and update live query deps

* Use tanstackdb for message queries

* Use tanstackdb for some node queries

* Use tanstackdb for channel deletes

* Improve node delete handling

* Use tanstackdb for channel creation

* Use tanstackdb for folder creation

* Use tanstackdb for space creation

* Flatten node object attributes

* Use tanstackdb for page creation

* Use tanstackdb for record creation

* Use tanstackdb for record updates

* Use tanstackdb for channel update

* Use tanstackdb for folder updates

* Use tanstackdb for space update

* Use tanstackdb for page update

* Use tanstackdb for database created & update

* Use tanstackdb for view create & delete

* Use tanstackdb for some field mutations

* Use tanstackdb for select option mutations

* Refactor workspace collections

* Use paced mutations for some rename inputs

* Use paced mutations for select option settings

* Use paced mutations for record updates

* Refactor some record queries

* Improve some view update handlers

* Improve view filters and sorts

* Use live infinite queries for some paginated lists

* Use tanstack/db for node reactions

* Fix message reactions dialog

* Remove unused file

* Remove node tree get query with tanstackdb recursive queries

* Replace live queries with plain ones for emojis and icons

* Replace some live queries

* MInor updates

* fix node updates

* fix tanstack db queries

* cleanup some inputs
2026-01-07 16:05:26 +01:00
Hakan Shehu
7149ef5466 Update packages (#267) 2025-11-19 13:55:39 -08:00
Hakan Shehu
3e4c8b8125 Implement new routing with tanstack router and mobile app kickoff (#248)
* Init mobile app
* Minor fixes and improvements
* Improve assets loading
* Fix event bus proxy
* Improve emojis and icons loading
* Improve app initialization in web
* Init tanstack router
* Refactor components
* Refactor some more components
* Refactor layouts
* Improve routing
* Improve routing
* Routing improvements
* Make sidebar work in mobile
* Refactor container and breadcrumb
* Fix some packages and warnings
* Encode and decode yjs update for ipc communication
* Refactor servers in client
* Fix some errors and warnings in editor and sidebar
* Add route masking for web
* Improve container layout
* Improve ui for mobile
* Improve mobile ui
* Create custom link component
* Router improvements
* Implement tabs for desktop
* tabs improvements
* Refactor routes
* Layout improvements
* Improve desktop tabs
* Use tanstack-db for global collections
* Improve tanstack db collections
* Refactor workspaces and accounts databases and routes locally
* Use tanstackdb for users
* Use tanstackdb for uploads and downloads
* Use tanstackdb for temp files
* Rename database to collections
* Improve tabs
* Fix packages
* Improve local file handling
* Rename sync cursor keys
* Save some bootstrap data in a file
* Reset all data on new version update in desktop
* Minor refactor
* Implement app reset on startup
* UI fixes and improvements
* More Ui improvements
* Fix logout
* Add tab in route contexts for workspace routes
* Store last used workspace id as metadata
* Fix account logout
* Fix file preview
* Fix file thumbnail loading in tabs
* Fix chat tab loading
* Fix some redirect handling
* Disable staletime for icon.svg.get query
* Fix not found pages and throws
* add readme for mobile
* fix some keys
* Improve add tab handler
* Fix path
2025-11-11 07:00:14 -08:00
Jonathan Hyry
316a388d4a Fix node22 lightningcss workaround (#231)
* Latest npm in @colanode/web Docker, add optional plat/arch dependencies

There are a number of issues with lightningcss and node 22/npm.
This is related to platform-/architecture-specific packages.
This uses a number of pieces from multiple solutions found in the notes
 for #160.

This addresses the issues by the following measures:
- Make sure npm is up-to-date in the @colanode/web Docker build
- Add optional dependencies for all the platform-specific lightningcss
  packages that are most likely to be used in the project (HSF and
  mainline) in the npm project modules that require them:
  - @colanode/desktop
  - @colanode/web
  - @colanode/ui

Closes #159.

* Fix darwin-arm64 version.

* Remove unnecessary optional dependencies; remove duplicate version property

* Fix merge issue where the version field got deleted.

* Move the version field back to where it was before.
2025-11-04 05:47:30 -08:00
Hakan Shehu
80b4235bf2 Update packages (#233) 2025-10-15 09:37:45 +02:00
Hakan Shehu
c64c5a6406 Update packages (#224) 2025-10-07 20:22:27 +02:00
Hakan Shehu
3217764a7b Update packages (#212) 2025-09-11 14:19:45 +02:00
Hakan Shehu
4a2ac3f1ed Update packages (#196) 2025-08-29 16:25:52 +02:00
Hakan Shehu
a3de8a84ac Update packages (#191) 2025-08-12 10:31:28 +02:00
Hakan Shehu
4fb5b7db85 Update packages (#183) 2025-08-08 13:42:31 +02:00
Hakan Shehu
766952b31e Add plain tables to editor (#180) 2025-08-08 11:19:19 +02:00
Hakan Shehu
fd675d7d9b Add hard break node for editor (#177) 2025-08-02 17:14:22 +02:00
Hakan Shehu
d747ebb0da Update packages (#171) 2025-08-02 08:40:10 +02:00
Hakan Shehu
79925e1fc6 Improve file uploads and downloads (#164)
* Track upload progress in clients
* Implement client side jobs
* Separate local files, downloads and uploads
* Use dates instead of timestamps in jobs
* Improve some recurring jobs
* Local file improvements
* Remove job schedules on cancel
* Improve avatar handling
* Fix manual download
* Improve file uploads and downloads
* Improve downloads
* Use tus resumable uploads
* Drop file states table migration
* Remove some unused file system methods and types
* Use Redis KV and Locker for distributed TUS deployments
* Fix file name generation
* Add uploads clean job
* Have a dedicated endpoint for TUS uploads
* Do not revert uploads state because ot TUS resumables
* Use integer instead of text for job and job schedule status
* Rename a query
* Fix error handling for file uploads and downloads jobs
* Check node sync for file uploads
* Rename the temp files clean job
* Minor renames for consistency
* Improve uploads badge
* Small refactor in server job service
* Add env varaibles config for some tus stuff
* Use ms package for millisecond conversions
* Fix some migrations
* Fix logout
* Update hosting values
2025-08-01 14:13:40 +02:00
Hakan Shehu
6212e7c65e Update packages (#155) 2025-07-23 10:10:23 +02:00
Hakan Shehu
170a801603 Upgrade to Tiptap v3 (#154) 2025-07-23 08:30:22 +02:00
Hakan Shehu
6a2635320f Update packages (#112) 2025-07-04 09:12:30 +02:00
Hakan Shehu
1fd2cb0245 Update packages (#94) 2025-06-25 19:58:24 +02:00
Hakan Shehu
9294600c61 Update packages (#66) 2025-06-15 11:55:43 +02:00
Hakan Shehu
756af021d1 Implement login with google (#57) 2025-06-12 22:08:54 +02:00
Hakan Shehu
30e15e4bd3 Web version (#43)
* Create client package
* Create the UI package
* Init web app
* Use isomorphic 'ws' for web sockets
* File and asset implementations
* Use Opfs SAH version of sqlite in browser
* Generate Svg sprites for emojis and icons
* Include emojis sprite
* Improve and refactor assets
* More assets improvements
* Implement emoji and icons db import as readonly
* Improve import paths
* Handle concurrency limits for sqlite
* Fix event broadcast in web
* Pass windowId for subscribe and unsubscribe queries in desktop
* Remove asset context
* Implement avatar upload/download with the new structure
* Improve file handlings
* Move the necessary dependencies to client and ui packages
* Update packages
* Improve open file dialog
* Make sure database files are deleted in browser
* Improve avatar loading
* Improve file loading
* Fix some assets
* Implement asset caching for offline access
* Small fixes and improvements
* Use server instead of pre signed urls for file upload/download
* Cleanup some client related metadata
* Switch Axios with ky
* Refactor mutation results
* Minor concurrency fix
* Refactor web sockets
* Improve file uploading
* Handle connection close on server
* Use stream for downloading the file
* Add config options for cors
* Update document in all tabs on local change
* Include necessary icons for web
* Update docker compose
* Implement server upgrade required component
* Use correct client type and platform in web and desktop
* Improve service worker
* Improve versioning
* Fix an import
* Minor fixes
* Update some user endpoints
* Minor endpoint changes
* Enable app badge for desktop
* Add error handling in some database operations
* Update mutation naming convention
* Update query naming convention
* Update event and some metadata naming conventions
* Update event and job naming conventions in server
* Update Github workflow files
* Restructure assets directory
* Update packages
* Upgrade to Zod v4
* Upgrade to react 19
* Upgrade to tailwind v4
* Minor ui improvements
* Fix some cursor pointers
* Add browser not supported message in web
* Enhance server create flow, allow insecure connections and custom api paths
* Execute electron-rebuild as postinstall command
* Update docker compose
2025-06-11 00:14:17 +02:00