# Changelog

## v0.7.0

#### Project Infrastructure

* 🧰 Project is fully migrated to React
* 🎨 CSS customization is done through variables, not individual rules
  * Both individual users and theme-makers can create complete themes with minimal effort
  * CSS vars cover all interface colors
  * Default theme is a11y-friendly
* ✔️ Project is accessible, reliable, and maintainable
* 🏪 Extension is compatible with Roam Depot

#### New Features

* ⚙️ **Settings panel**\
  \&#xNAN;*View and edit your settings in a clean interface*
  * With RoamDepot allowing settings to be saved between sessions, all user settings will now be set directly within the interface. The Settings dialog can be opened by a right-click on the extension icon, then by clicking on the "Settings" option.
  * No more creating a `zoteroRoam_settings` object, and having to dabble in `roam/js` code 🎉
* **Dashboard panel**
  * :label: **Tag Manager**\
    \&#xNAN;*Edit, merge and delete Zotero tags*
  * :date: **Recent Items**\
    *Navigate items recently added/modified*
  * :mag: **Explorer**\
    *Browse your libraries with complex queries*
* :bricks: **SmartBlocks integration**
  * Command available in SB: `ZOTERORANDOMCITEKEY`, with optional tags query
  * Metadata formatting can be done via a SmartBlock, with custom commands to retrieve and format metadata:
    * `ZOTEROITEMABSTRACT`
    * `ZOTEROITEMCOLLECTIONS`
    * `ZOTEROITEMCREATORS`
    * `ZOTEROITEMDATEADDED`
    * `ZOTEROITEMLINK`
    * `ZOTEROITEMPUBLICATION`
    * `ZOTEROITEMRELATED`
    * `ZOTEROITEMTAGS`
    * `ZOTEROITEMTITLE`
    * `ZOTEROITEMTYPE`
    * `ZOTEROITEMURL`
    * `ZOTEROITEMYEAR`
    * `ZOTERONOTES`
    * `ZOTEROPDFS`
* :mag\_right: **Web Import**&#x20;

  *Add items to Zotero from a URL*

  * For blocks that contain one or more specified tag(s), and where the extension detects at least one URL -- an import button will appear next to the block
  * Clicking the button will open a panel to import any/all of the URLs into Zotero (with pickers for library, collections, and tags)
* 💪 **Support for Zotero 6 annotations**
  * Formatting can be controlled from the settings, in the `Annotations` section
  * Annotations are imported by default metadata formatter

#### Improvements / Quality of Life

* ✨ **Extension icon** displays a panel on hover, with additional information/actions
  * Extension status (on/off/disabled)
  * Data retrieval status for each data kind, with last updated time & a button to refresh that data
  * Toggle for dark/light theming
  * Links to extension documentation & changelog
  * Extension version
* 🎓 Semantic Scholar data
  * Citations & References are shown in the same dialog, with tabs - instead of separate dialogs
  * Items can be sorted (by publication year, influence, or whether the item is in one of the loaded Zotero libraries)
* 🔍 Search Panel
  * Search bar is more compact
  * Visibility on results shown vs. total results
  * Item view is redesigned
  * "Show Notes" now opens a drawer, instead of showing the notes underneath the item details
* 🔣 Interface and styling
  * Better consistency for item menus : the same set of actions is now available, regardless of where the menu is located
  * Better visual cues to indicate whether an item is in library/in Roam
  * Toast notification emitted whenever text is copied to the clipboard
  * Contextual guides added to clarify extension behavior or provide information about data sources
  * All dialogs can now be closed by using the close button, pressing `Escape`, or clicking outside of the dialog window
  * Shortcuts are now specified by a natural string, e.g "alt+P". You can use the interactive tester at the bottom of [this page ](https://blueprintjs.com/docs/#core/components/hotkeys.key-combos)to check the correct specification for your keyboard and setup.
  * Dialog sizing is sensitive to display size

#### **Bug Fixes**

Too many to list 🪲
