Skip to content

Latest commit

 

History

History
417 lines (306 loc) · 14.9 KB

CHANGELOG.md

File metadata and controls

417 lines (306 loc) · 14.9 KB

Changelog

This changelog covers all three packages, as they are (for now) updated as a whole

Unreleased

Atomic Browser

  • #841 Add better inputs for Timestamp and Date datatypes.
  • #842 Add media picker for properties with classtype file.
  • #850 Add drag & drop sorting to ResourceArray inputs.
  • #757 Add drag & drop sorting to sidebar.

v0.37.0

Atomic Browser

  • #747 Show ontology classes on new resource page.
  • #770 Display more info on search result page.
  • #771 Tables: Don't paste in multiple rows when focussed on an input
  • #758 Fix Relation column forms to close when clicking on the searchbox
  • #780 Use tags in ontology editor to create enum properties.
  • #810 Add button to resource selectors to navigate to the selected resource.
  • #764 Add option to format numbers as currency in tables.
  • #819 Fix number input always shows 'required' even when it's optional.
  • #816 Fix bug where editing a column in a table would not submit when pressing enter.
  • Fix server not rebuilding client when files changed.
  • Added persistent scrollbar to table
  • Improved table header UX
  • Numbers in tables now respect user locale

@tomic/lib

  • #798 Add store.newResource() to make creating new resources more easy.
  • Always fetch all resources after setting + authenticating new agent with websockets #686
  • Add progress callback to resource.getHistory() And increased its performance for resources with a large number of commits #745
  • Fix websocket bug on port localhost with port 80

v0.36.1

@tomic/svelte

  • Add support for types generated by @tomic/cli

@tomic/react

  • Proxy resource objects instead of cloning them for reactivity.

@tomic/cli

  • Fix bug where an externals.ts file was generated for properties that are already available through @tomic/lib.

@tomic/lib

  • Collection is now an async iterator
  • Added getAllMembers method to Collection
  • Fix set call with equal arrays #715
  • Fix ontologies export bug #728

v0.36.0

Atomic Browser

  • Add table editor #639. Add resource instances using table columns, add properties as rows, paste and copy CSV, keyboard support, sorting.
  • Add ontology editor #648. Easily create classes, properties and visualize their relationships.
  • Show resource usage (incoming links) in data view.
  • New resource selector that uses searchbox #677
  • Sidebar redesign
  • Switch to current drive button #681

@tomic/lib

  • Add support for typed resources through resource.props, powered by @tomic/cli (see below)
  • When saving a resource whose parent has not yet been saved we now add them to a batch that gets saved later when the parent is saved.
  • The scope option in SearchOpts has changed to parents and now accepts an array of subjects instead of a single subject.
  • BREAKING: Removed getCommitBuilder() method from Resource
  • Added hasUnsavedChanges() method to Resource
  • Fix bugs in state management: proxy resources instead of clone (for react) #682 #675 #657

@tomic/cli

  • NEW
  • Generate typescript files from ontologies #665

0.35.1

Atomic Browser

  • Improve performance collapsed sidebar items.
  • Add article view #319
  • Add resource history view
  • New subjects have nested paths by default

@tomic/lib

  • BREAKING: buildSearchSubject now takes a serverURL instead of the store.
  • Fix bug where @tomic/lib would not work in a non-browser context.
  • Add resource.getHistory method that returns a list of previous versions of the resource.
  • Add store.getResourceAncestry method, which returns the ancestry of a resource, including the resource itself.
  • Add resource.title property, which returns the name of a resource, or the first property that is can be used to name the resource.
  • store.createSubject now accepts a parent argument, which allows creating nested subjects.

v0.35.0

@tomic/browser

  • Move static assets around, align build with server and fix PWA #292
  • Add useChildren hook and Store.getChildren method
  • Add new file preview UI for images, audio, text and PDF files.
  • Add new file preview types to the folder grid view.
  • Fix Dialogue form #308
  • Refactor search, escape query strings for Tantivy
  • Add import context menu, allows importing anywhere

@tomic/react

  • Add more options to useSearch

@tomic/lib

  • Add Store.parseMetaTags to load JSON-AD objects stored in the DOM. Speeds up initial page load by allowing server to set JSON-AD objects in the initial HTML response.
  • store.createSubject allows creating nested paths
  • Add Store.postToServer method, add endpoints, importJsonAdString
  • Add store.preloadClassesAndProperties and remove urls.properties.getAll and urls.classes.getAll. This enables using atomic-data-browser without relying on atomicdata.dev being available.
  • Fix Race condition of store.getResourceAsync #309
  • Add buildSearchSubject in search.ts which allows you to build full text search queries to send to Atomic-Server.
  • Add importJSONADString function, allowing you to import resources from external sources.

v0.35.0-beta.1

@tomic/react

Breaking changes

  • Remove initAgentFromLocalStorage().
  • No longer save agent to local storage.

@tomic/lib

  • Add the ability to change the fetch function used to fetch resources over http.
  • store.addResource is depricated in favor of store.addResources.
  • Add AgentChange event on store that is fired whenever the stores agent changes.
  • store.fetchResourceFromServer now returns the requested resource.
  • Add postCommit method to store that respects the injected fetch function.

Breaking Changes:

  • uploadFiles() has moved to store.uploadFiles().
  • Remove Agent.fromJSON()
  • tryValidURL and isValidURL are now static methods on Client and have been renamed to tryValidSubject and isValidSubject.
  • Rename store.fetchResource to store.fetchResourceFromServer.
  • Rename store.handleError to store.notifyError.
  • Rename agent.checkPublicKey to agent.verifyPublicKeyWithServer.
  • Remove store.errorHandler and replace with new StoreEvents.Error event.

v0.34.10

  • Don't use WebSocket in Node context #280

v0.34.9

  • Fix @tomic/lib exports for non-ts contexts #270
  • Fix back / forward buttons in desktop build #263
  • Fix isOffline for node

v0.34.0

  • Add folders with list & grid views, allow drag & drop uploads #228
  • Show icons in sidebar
  • Add scoped search, funded by NGI NLnet Discovery #245 #254
  • Make web app installable #30
  • Add cookie based authentication #241
  • Get rid of useWindowSize #256
  • canWrite check should succeed for publicAgent #252
  • Improve error look & text

v0.32.1

  • Lock ed25519 version #230

v0.32.0

Breaking changes

  • Changed null to undefined in many places
  • useTitle returns an array with a setTitle function, similar to useState
  • resource.getError() is deprecated in favor or resource.error

New

  • Add Hierarchy in sidebar #75
  • Add DriveSwitcher #209
  • Add new drive option
  • Add EventManager to run custom functions when resources are added / edited / etc.
  • Add dialog / modal view #24 #181
  • Add bookmark import / reader mode #187

Fixes & improvements

  • Stricter non-null checks, improved typings #220
  • Switch from yarn to pnpm #210
  • Various improvements to Dropdown forms #194
  • Fix crash in circular parent rendering
  • Fix race condition #189
  • Make all titles editable #199
  • Don't subscribe to search endpoint #200
  • Refactor e2e tests
  • Render floats
  • Hide unsortable items in tables
  • Fix dropdown resource select input #222

v0.31.1

  • Fix Dropdown input bug
  • Fix autogrow textarea bug

v0.31.0

  • Add ChatRooms #153
  • Improve UX for creating new Resources, instantly open new ChatRooms and Documents
  • Refer to previousCommits in Commits #140
  • Disable websockets out of browser context for @tomic/lib
  • Fix NPM builds for @tomic/lib and @tomic/react in non-ts environments #155
  • tauri back buttons, new tab external links #115
  • Fix concurrency issue with commits #91
  • Make bugsnag optional #133
  • Add parseCommit function
  • Use href attribute in sidebar menu #148
  • Use relative links in About page #149
  • Show CommitDetail that displays audit info (creator, edit date) #145
  • Prevent using localhost Agents for external Servers
  • Implement push, for appending new Resources to (existing) Arrays in Commits.
  • Replace snowpack with vite #156
  • Use yarn v2 and replace lerna #105
  • Prevent default actions for keyboard shortcuts
  • Improve cross-OS keyboard shortcuts compatibility (cmd & ctrl, option & alt)
  • Fix markdown being shown shortly

v0.30.6 to 9

  • Don't use WebSockets if they're not supported #131
  • Fix @noble build issues

v0.30.5

  • Switch to dnd-kit for drag and drop #92
  • Improved views for external resources in Documents
  • Add upload dropzone to documents
  • Replace react-helmet with react-helmet-async

v0.30.4

  • @tomic/react can now be used without @tomic/lib - it re-exports the library
  • More performant subject updates in new resource form
  • Allow @tomic/lib to be used in non-browser (Node) context #128
  • Add useMarkdown function to @tomic/react
  • Make search result previews smaller
  • Fetch full collections when showing CollectionCard
  • useResource defaults to not accepting incomplete resources
  • Add sign in button to invite form
  • Rename baseUrl to serverUrl
  • Add useServerSearch to @tomic/react
  • Improve UX in Tauri (desktop) mode
    • Regular Links open in your browser, instead of in Atomic

v0.30.0

  • Add File management views. Preview images and videos, download them. #121
  • Add uploadFiles method to @tomic/lib. #121
  • Add upload field to forms #121
  • Fix bug resourcearray input #123
  • Add WebMonetization support #124

v0.29.2

  • Add Share settings screen where you can see & edit rights / access control #113
  • Add Invite form #45
  • Convert Classes to typescript interfaces. Show button for this in Class view. #118
  • Create new resource button on Drive
  • Show multiple parents in breadcrumbs
  • Refresh collection on opening page
  • Don't auto-accept invites
  • Improve server switcher design
  • Change default port of localhost to 9883 (issue)

v0.29.1

  • Small fix

v0.29.0

  • Add authentication: sign requests, so the server knows who sent it. This allows for better authorization. #108
  • Refactor Error type, improve Error page / views
  • Automatically retry unauthorized resources (but I want a prettier solution, see #110)
  • useResource no longer returns an array, but only the resource.
  • Improved EndpointPage (show results, useful for Search, for example)

v0.28.2

  • Added server-side full text search #106
  • Add a seperate document show page #2, improved performance in Documents
  • Improved canWrite hook (more stable, faster)
  • Improved sidebar performance (less re-renders)

v0.28.0

  • Improve styling tables and sort dropdown
  • It's mostly an atomic-server version bump :)

v0.27.2

  • Fix setting Agent bug
  • Add constructor to Store

v0.27.1

  • Include all Properties and Classes in the initial view, speeding up the app even further. #65

v0.27.0

  • Parse nested, named JSON-AD resources #98
  • Refactor resource status - remove Resource.status, prefer .loading and .error
  • Add loading and error status to Property class, include in useProperty
  • Improve loading and error states for various components
  • Refactor store.getResourceLoading, store.fetchResource, useResource - add option to acceptIncomplete.

v0.26.2

  • Add Typedoc documentation #100
  • Fix bug not showing resource form fields
  • Fix circular parent handling in canWrite
  • Update references to changed resources #102
  • Use ws instead of wss for HTTP connections

v0.26.1

  • Fix wss websockets
  • Update typescript type exports

v0.26.0

  • Added WebSockets for live synchronization with server #80
  • Add Commit parsing #80
  • Custom fonts
  • Prevent re-applying locally defined commits #90
  • Fix race condition commits #91
  • Added opts parameter to react hooks
  • Simplify internal Value model (better performance, less bugs) #88

v0.25.4

  • Fix bugs when setting Agent, validate public key before setting
  • Add integration / end to end tests #70

v0.25.0

  • Add Document editor (demo) #2
  • Improved performance and less concurrency bugs while quickly saving resources
  • Improve styling (soft background on light mode)
  • Add baseURL settings page + edit function in top left

v0.24.2

  • Improve resource selector dropdown, show previews, remove dependency #60
  • Add toast notifications #63
  • Enable resource.save() with custom agent
  • Add JSON AD array parser
  • Add default_store.json resource to the browser to make things snappier removed
  • Improve type checking for value initialization and serialization types
  • Improve view for nested resources

v0.24.0

  • Match version number of atomic-data-rust
  • Add Version button to menu
  • Disable menu buttons that are not usable
  • Improve error view in cards
  • Only show plus icon in suitable collections

v0.0.12

atomic-data-browser

  • Fix tests
  • Cleaned up Resource form #51
  • Handle usages left in Invites #45
  • Add social meta tags #44
  • Add fetch as JSON / JSON-AD / Turtle and more to data pages
  • Fix bug with invites
  • Various styling improvements
  • Add Atomic Data Logo
  • Dark mode syncs with user
  • Scroll to top on page change #47
  • Improve keyboard shortcuts for edit / data view #52
  • Move Agent settings to sidebar item
  • Add rights check
  • Change routes and settings structure
  • Add Disabled state to form fields
  • Improved hotkey handling
  • Fix edit subject in resource form

@tomic/react

  • Resources will update when properties change (notify listeners on update)
  • clean up package.json / dependencies
  • Add rights check hook

@tomic/lib

  • Add getCommitBuilder and hasChanges function to resource and commitBuilder
  • Add rights check to resource

v0.0.11

  • Split packages, switch to monorepo
  • Publish @tomic/lib and @tomic/react libraries to npm
  • Add changelog