This pull request refactors the plugin library infrastructure and adds new experimental features for hosted/sidebar renderers. The main changes include:
Purpose: Refactor plugin communication library (Postmate) to support MessageChannel for improved performance, add support for hosted/sidebar renderers in plugins, add new debug APIs, and consolidate helper functions.
Changes:
Added MessageChannel support to Postmate for optimized plugin-host communication with backward compatibility
Introduced hosted renderer and sidebar renderer APIs for plugins to register custom UI components
Added new app APIs: get_current_route, export_debug_log_db, reset_debug_log_db
Refactored helper functions from helpers.ts to common.ts and updated all import paths
Extended block property APIs to include class properties with default values
Added comprehensive documentation for experiments APIs and plugin development
Added E2E test for plugin marketplace installation
Version bump from 0.2.12 to 0.3.1
Enhances the flashcard user experience by adding automatic query property management, fixing critical bugs, and improving the UI for managing card sets.
Key changes:
1. Automatic creation of query property blocks when tagging with #Query or subclasses via pipeline
2. Fixed critical bug in api-insert-new-block! where the end? parameter had inverted conditional logic
3. Added ability to create new #Cards blocks directly from the flashcard modal with a plus button
* fix(rtc): batch store and validate db
* fix: logseq.db/transact! shouldn't distinct tx-data
since move-op include 2 steps:
1. insert-block
2. update-attrs
This results in db invalid after step 1.
* refactor: add transact-with-temp-conn!
* bump nbb-logseq and add tests for ldb/transact* fns
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: rcmerci <rcmerci@gmail.com>