This project adheres to Semantic Versioning.
- Fixed
sending-synchronizedjiggling instatus().
- Fixed
status()action type on undo error.
- Added separated
wrongCredentialstostatus()since it need special UI. - Added hiding
disconnectedinstatus()after error to not hide error. - Added
CrossTabClient#forceConnect().
- Fixed
0/cleaninfinite loop.
- Added
FilterStoreExttype export. - Added
LoadedFiltertype export. - Added
LoadableStoretype export. - Added
SyncMapStoreExttype export.
- Fixed
CryptoKey is not definedissue in some environment.
- Added compression to E2EE.
- Moved to number as subprotocol.
- Moved to Logux Core 0.10 and Logux Protocol 5.
- Removed Node.js 18.
- Moved to Nano Stores 1.0.
- Fixed race condition.
- Fixed Node.js support for E2EE.
- Fixed sending
0/cleanfor ignoring actions. - Added
StatusValuetype.
- Fixed types.
- Added
loadValue(). - Added
ensureLoaded()helper for tests. - Added
connectargument toClient#start. - Added key support in
encryptActions(by @nichoth). - Added Nano Stores 0.10 support.
- Added
SyncMapStore#deleted. - Added
LoadedValuetype to exports. - Fixed support of local
SyncMap. - Removed Node.js 16 support.
- Fixed double subscription on
createFilter(by Eduard Aksamitov).
- Moved to Nano Stores 0.9.
- Refactored Vue composables to improve performance (by Eduard Aksamitov).
- Fixed loss of unsubscribes on changing arguments in Vue (by Eduard Aksamitov).
- Fixed errors handler in Vue (by Eduard Aksamitov).
- Removed Node.js 14 support.
- Moved to Nano Stores 0.8.
- Faster leader election with Web Lock API.
- Fixed types (by Slava Mostovoy).
- Fixed Nano Stores peer dependency.
- Fixed
subscribe.sincefor single offlineSyncMap(by Nikita Galaiko). - Moved to Nano Stores 0.7.
- Fixed
subscribe.sincefor offlineSyncMap(by Nikita Galaiko).
- Moved to Logux Core 0.8.
- Moved to Nano Stores 0.6.
- Removed Node.js 12 support.
- Add
logux/unsubscribeprocessing in offline. - Fixed race condition on resubscribe on
sendingstate (by Tyler Han).
- Fixed React types (by Wojciech Grzebieniowski).
- Cleaned peer dependencies (by Yuri Mikhin).
- Fixed value object mutation in
createSyncMapandbuildSyncMap. - Fixed
ErrorsContextexport.
- Added
Client#type(actionCreator, cb)support. - Added color highlight for new action and
logux/undoevents inlog().
- Moved to new default version of Vue 3 (by Eduard Aksamitov).
- Fixed missing store updates in React and Preact (by Aleksandr Slepchenkov).
- Fixed Vue
useFilter()working with reactive filter (by Eduard Aksamitov). - Improved Vue
useFilter()performance (by Eduard Aksamitov). - Improved Vue
useSync()performance (by Eduard Aksamitov).
- Fixed logger for clean events (by Aleksandr Slepchenkov).
- Updated
@nanostores/vue.
- Updated
@nanostores/vue.
- Moved to Nano Stores Vue 0.2 (by Eduard Aksamitov).
- Reduced package size.
- Renamed
defineSyncMap()tosyncMapTemplate(). - Moved to Nano Stores 0.5.
- Added
AuthStore#loading(by Eduard Aksamitov).
- Replaced
colorettewithnanocolors.
- Throw an error on missed client in
useClient()(by Aleksandr Slepchenkov).
- Fixed Preact export (by Phil Schaffarzyk).
- Moved to Nano Stores 0.4.
- Added Nano Stores effects to
SyncMapandFilter.
- Moved to React own batching.
- Fixed
useAuth().
- Moved from
@logux/statetonanostores. - Added Preact support.
- Added
filtersupport toTestServer(by Aleksandr Slepchenkov). - Fixed docs (by Eduard Aksamitov).
- Added
badge/stylesexport (by @TrentWest7190).
- Added
@logux/statepeer dependency. - Added
SyncMap. - Added
Filter. - Added
prepareForTestforSyncMap. - Added React helpers for
SyncMap. - Added Vue.js helpers for
SyncMap(by Eduard Aksamitov). - Fixed
TestServererror text (by Aleksandr Slepchenkov).
- Moved project to ESM-only type. Applications must use ESM too.
- Dropped Node.js 10 support.
- Added
Client#sync(). - Added
track(). - Added
Client#type(). - Added action encryption.
- Added
request(). - Added
TestServer#sendAll(). - Added
logux/subscribedsupport tolog(). - Fixed
IndexedStorewithPromise. - Fixed
TextClient#sentby adding small delay. - Fixed types performance by replacing
typetointerface.
- Fix
changeUser()for cross-tab client case (by Sergey Korolev).
- Fix log messages (by Eduard Aksamitov).
- Replace
chalkwithcolorette.
- Improve log messages for subscribing.
- Use Logux Core 0.6 and WebSocket Protocol 4.
- Add
CrossTabClient#waitFor(). - Add
userevent. - Improve
log()output with collapsed groups. - Show offline in the badge from the beginning.
- Fix
Client#changeUser().
- Remove
globalfromIndexedStore(by Neville Franks).
- Fix
log()forlogux/unsubscribeactions.
- Update log’s node ID on
Client#changeUser()call.
- Remove support of old servers.
- Fix node ID generation in
Client#changeUser().
- Use Logux Core 0.5 and WebSocket Protocol 3.
- Rename
credentialsoption totoken. - User ID must be always a string without
:. - Token must be a string.
- Add
Client#changeUser()method. - Add support for dynamic tokens.
- Add ES modules support.
- Add TypeScript definitions.
- Move API docs from JSDoc to TypeDoc.
- Mark package as side effect free.
- Do not synchronize event cleaning between tabs.
- Ask to update page receiving bigger
subprocolfrom another tab. - Disable cross-tab communication on
localStorageerror. - Fix falling on empty
userId(by @Abdubek).
- Fix React Native and React Server-Side Rendering support (by Can Rau).
- Fix compatibility with Logux Server 0.4.
- Rename
Client#idtoClient#tabId. - Trim re-send meta keys (
users,channels) during synchronization.
- Add
Client#onmethod to unify API withCrossTabClient. - Add
preaddevent as alias toclient.log.on('preadd', cb). - Improve docs (by Paul Chavard).
- Fix multiple resubscriptions.
- Fix log message for
logux/processedorlogux/undo.
- Keep
sync: trueactions in the log untillogux/processedorlogux/undo. - Add resubscribe action only after origin action was processed.
- Update dependencies.
- Rename project from
logux-clientto@logux/client. - Merge with
logux-status. - Use
MemoryStoreby default. - Use Logux Core 0.3.
- Wait for
logux/processedbefore switching tosynchronizedstate. - Add
Client#clientId. - Add
action.sincetologux/subscribeaction. - Add
ignoreActionstolog(). - Combine add/clean messages in
log(). - Remove Promise fix for old Firefox.
- Track subscription counts.
- Clean up code (by Dimitri Nicolas).
- Fix cross-tab
addevent withMemoryStore.
- Fix
MemoryStoresupport in cross-tab client.
- Fix subscription after offline.
- Allow to work with missed
extra.lastSynced.
- Fix
logux/unsubscribedetection. - Subscribe again only in
connectedstate. - Allow to have
:in user ID. - Allow to use client without
window.
- Fix follower tab’s actions synchronization.
- Fix
Promiseimplementation inIndexedStore.
- Fix
IndexedStorein Firefox.
- Fix subscription to same channel twice.
- Sort correctly actions with same
time. - Fix race condition between uniqueness check and add.
- Use Logux Protocol 2.
- Use Logux Core 0.2 and Logux Sync 0.2.
- Send actions with
meta.synconly. - Add
logux/subscribeandlogux/unsubscribesupport. - Replace
localStoragetoIndexedDBin the store (by Alexey Gaziev). - Add mandatory
userIdoption. - Use Nano ID for node ID.
- Add cross-tab communication with leader tab election.
- Add
meta.tabsupport. - Add
debugmessage support (by Roman Fursov). - Add production non-secure protocol warning (by Hanna Stoliar).
- Add
Add Client#cleanmethod. - Set
meta.subprotocol. - Move store tests to separated project (by Konstantin Mamaev).
- Fix docs (by Grigoriy Beziuk and Vladimir Dementyev).
- Clean up code (by Evgeny Rodionov).
- Initial release.