Skip to content

Latest commit

 

History

History
1008 lines (604 loc) · 76.1 KB

CHANGELOG.md

File metadata and controls

1008 lines (604 loc) · 76.1 KB

17.25.0 (2025-01-06)

Bug Fixes

  • json-crdt-extensions: 🐛 improve how block elements are imported (9954c69)
  • json-crdt-extensions: 🐛 skip first empty virtual block (b257f2e)

Features

  • json-crdt-extensions: 🎸 harden HTML import (594ed9a)
  • json-crdt-extensions: 🎸 import Markdown import (f117025)
  • json-crdt-extensions: 🎸 improve HTML import (b142e28)
  • json-crdt-extensions: 🎸 improve HTML import (a05b09b)
  • json-crdt-extensions: 🎸 improve slice registry typing (acfe769)
  • json-crdt-extensions: 🎸 improve slice type def types (7248c8c)
  • json-crdt-extensions: 🎸 populate registry with inline slice types (5196bd6)
  • json-crdt-extensions: 🎸 progress on type registry implementation (d239803)
  • json-crdt-extensions: 🎸 use registry in HTML import (4888ee5)

17.24.0 (2024-12-22)

Bug Fixes

  • json-crdt-extensions: 🐛 correctly compute annotations endpoints in import() (35f6df2)

Features

  • json-crdt-extensions: 🎸 at import do not include ABS start in annotation range (b344e14)
  • json-crdt-extensions: 🎸 export only saved slices (86d051e)
  • json-crdt-extensions: 🎸 implement block split import (3d21330)
  • json-crdt-extensions: 🎸 make sure annotation end point is never ABS end (6bd882e)

17.23.0 (2024-12-21)

Bug Fixes

  • json-crdt-extensions: 🐛 improve framment block and inline element trancation (716589c)

Features

  • json-crdt-extensions: 🎸 implement export to HTML (ae57070)
  • json-crdt-extensions: 🎸 improve iteration over markers in the Overlay class (2eaa85d)

17.22.0 (2024-12-01)

Features

  • 🎸 add identation formatting ability (8b47358)
  • 🎸 improve json-ml types (a071f3c)
  • json-crdt-extensions: 🎸 add ability to export to HTML (f51f6cc)
  • json-crdt-extensions: 🎸 add ability to import serialized view range (43ad61d)
  • json-crdt-extensions: 🎸 do not create props objects, when not necessary (7071ada)
  • json-crdt-extensions: 🎸 improve JSOM-ML generation for block nodes (fb45ba7)
  • json-crdt-extensions: 🎸 improve to JSON-ML export (b3e7e5c)
  • json-crdt-extensions: 🎸 improve toJson exports (ef5327e)
  • json-crdt-extensions: 🎸 simplify export view range interface (0b8c7b7)
  • json-crdt-extensions: 🎸 start .toJson() implementation (a8ec0b1)
  • json-crdt-extensions: 🎸 start fragment serialization implementation (519115a)
  • json-crdt-extensions: 🎸 start serialization implementation (f9bc89e)

17.21.0 (2024-11-25)

Bug Fixes

  • json-crdt-peritext-ui: 🐛 correct React warnings (5d90876)

Features

  • json-crdt-extensions: 🎸 add first implementation of Fragment (340919a)
  • json-crdt-extensions: 🎸 add JSON markup language utilities (bdf4deb)
  • json-crdt-extensions: 🎸 add JSON ML walk method (cec7865)
  • json-crdt-extensions: 🎸 add more block elements (b155ae3)
  • json-crdt-extensions: 🎸 cap all blocks to their range (efd088a)
  • json-crdt-extensions: 🎸 clamp Inline elements inside a Fragment (e8ee319)
  • json-crdt-extensions: 🎸 create constant enum for slice types (02b9581)
  • json-crdt-extensions: 🎸 improve Fragment code setup (3d2ef77)
  • json-crdt-extensions: 🎸 setup export methods (f75284d)

Performance Improvements

  • json-crdt-extensions: ⚡️ do not pre-compute chunk slices (7bf4f93)

17.20.0 (2024-11-14)

Features

  • json-crdt-extensions: 🎸 add cursor cardinality method (ed808ce)
  • json-crdt-peritext-ui: 🎸 add ability to render something over caret (894a21e)
  • json-crdt-peritext-ui: 🎸 add extension point which allows to render over caret (fa9c5bc)
  • json-crdt-peritext-ui: 🎸 add some basic buttons (b1fe9c1)
  • json-crdt-peritext-ui: 🎸 make plugins composable class instances (e5f233c)
  • json-crdt-peritext-ui: 🎸 render something over caret (d6dfbfd)
  • json-crdt-peritext-ui: 🎸 tweak caret hover toolbar (95d0502)

17.19.0 (2024-11-12)

Features

  • 🎸 bring back ESM builds (a0dc6a2)

17.18.0 (2024-11-12)

Bug Fixes

  • json-crdt-peritext-ui: 🐛 do not break line at caret position (d4598ce)
  • json-crdt-peritext-ui: 🐛 do not break line on anchor inter-word insertion (4c4d1ca)
  • json-crdt-peritext-ui: 🐛 do not break words due to focus edge (182fcbb)

Features

  • json-crdt-extensions: 🎸 print cursors in editor dump (449c3e5)
  • json-crdt-peritext-ui: 🎸 create cursor plugin (43e86c6)
  • json-crdt-peritext-ui: 🎸 improve anchor rendering (7343d52)
  • json-crdt-peritext-ui: 🎸 improve cursor JSDocs (4d9df82)
  • json-crdt-peritext-ui: 🎸 separate caret score into its own component (f69e93e)
  • json-crdt-peritext-ui: 🎸 setup default theme (a3ddfa9)

17.17.0 (2024-11-11)

Bug Fixes

  • json-crdt-extensions: 🐛 correctly delete when in range selection (02103b6)
  • json-crdt-extensions: 🐛 on unite selection at current position, always focus end (0133eb8)
  • json-crdt-peritext-ui: 🐛 correct types for event map (397b57d)
  • json-crdt-peritext-ui: 🐛 fixup caret rendering for spacious lines (464c9a6)
  • json-crdt-peritext-ui: 🐛 make sure collapsed cursors are proper "after" carets (2c1714b)

Features

  • json-crdt-extensions: 🎸 add inline annotation (0abc25e)
  • json-crdt-extensions: 🎸 add ability to find current block marker (3700013)
  • json-crdt-extensions: 🎸 improve block split insertion logic (ce233cc)
  • json-crdt-extensions: 🎸 improve cursor collapsing logic (d9b3d4f)
  • json-crdt-extensions: 🎸 improve deletion (59ec4eb)
  • json-crdt-extensions: 🎸 improve text insertion logic, especially into range (cdea38e)
  • json-crdt-extensions: 🎸 print human-readable block type (c125938)
  • json-crdt-peritext-ui: 🎸 add ability to render different block types (573a2ec)
  • json-crdt-peritext-ui: 🎸 add initial block type switching functionality (cd8f771)
  • json-crdt-peritext-ui: 🎸 do not show score on cursor movement (3d7f58e)
  • json-crdt-peritext-ui: 🎸 implement initial "marker" event (f779251)
  • json-crdt-peritext-ui: 🎸 improve selection and caret display (d348077)
  • json-crdt-peritext-ui: 🎸 improve typing score display (edfd647)
  • json-crdt-peritext-ui: 🎸 insert more type scoring phrases (52001a9)
  • json-crdt-peritext-ui: 🎸 keep score while actively moving cursor (071ec09)
  • json-crdt-peritext-ui: 🎸 keeps score while user performs actions (9fc675f)
  • json-crdt-peritext-ui: 🎸 make +2 harder (1f85886)
  • json-crdt-peritext-ui: 🎸 make anchors look flatter (947b73d)
  • json-crdt-peritext-ui: 🎸 make score messages shake (10bdf3d)
  • json-crdt-peritext-ui: 🎸 minor tweaks (23fc35d)
  • json-crdt-peritext-ui: 🎸 render score when typing (40cb826)
  • json-crdt-peritext-ui: 🎸 show score deltas and UT easter egg messages (4add638)
  • json-crdt-peritext-ui: 🎸 specify the "marker" event (a4d77bd)
  • json-crdt-peritext-ui: 🎸 tweak typing scoring parameters (c37bf84)

Performance Improvements

  • json-crdt-extensions: ⚡️ just cursor directly to insertion end (1e86004)

17.16.0 (2024-11-10)

Bug Fixes

  • json-crdt-peritext-ui: 🐛 always render anchor (a66f2fb)

Features

  • 🎸 improve how pending formats are stored and presented (45804eb)
  • json-crdt-extensions: 🎸 add annotation type for column layout (3f91fd5)
  • json-crdt-extensions: 🎸 allow annotations to reach ends of text (e79ec1b)
  • json-crdt-extensions: 🎸 apply pending formats on insertion (c5e132e)
  • json-crdt-extensions: 🎸 enable reverse pending format application (9ae12e6)
  • json-crdt-extensions: 🎸 improve display of well known annotation pring in Inline (dfa8219)
  • json-crdt-extensions: 🎸 keep track of pending formatting upon insert (5109dae)
  • json-crdt-peritext-ui: 🎸 add example color annotation (36ad885)
  • json-crdt-peritext-ui: 🎸 improve button border radius (4e77faf)
  • json-crdt-peritext-ui: 🎸 improve debug button presentation (3912d4a)
  • json-crdt-peritext-ui: 🎸 improve debug console, add tabbing and model state (3aaefbb)
  • json-crdt-peritext-ui: 🎸 improve debug output (644e7a6)

17.15.0 (2024-11-10)

Bug Fixes

  • json-crdt-peritext-ui: 🐛 correct anchor edge rendering (469946f)
  • json-crdt-peritext-ui: 🐛 make caret rotation more precise (93a869d)
  • json-crdt-peritext-ui: 🐛 remove all slices of given type (8d246b2)

Features

  • json-crdt-extensions: 🎸 add ability to toggle inline boolean formatting (2ef6320)
  • json-crdt-extensions: 🎸 debug print slice metadata (08e867e)
  • json-crdt-extensions: 🎸 improve boolean annotation handling (3101fbc)
  • json-crdt-extensions: 🎸 improve storage detection when deleting slices (e1a8deb)
  • json-crdt-extensions: 🎸 print well known slice type (9e5215c)
  • json-crdt-extensions: 🎸 rename SliceBehavior members and add JSDOcs (5da6d1c)
  • json-crdt-peritext-ui: 🎸 add "clear" inline formatting behavior (e063802)
  • json-crdt-peritext-ui: 🎸 add ability to erase formatting (b94ec9d)
  • json-crdt-peritext-ui: 🎸 animate achor appearance (9b51f72)
  • json-crdt-peritext-ui: 🎸 animate carret while typing (e180e28)
  • json-crdt-peritext-ui: 🎸 fixup default format event usage (575fb52)
  • json-crdt-peritext-ui: 🎸 improve boolean slice insertion method (08823fc)
  • json-crdt-peritext-ui: 🎸 improve inline "format" event (453e0e8)
  • json-crdt-peritext-ui: 🎸 improve slice italic focus edge rendering (1fb893c)

17.14.0 (2024-11-07)

Bug Fixes

  • json-crdt-peritext-ui: 🐛 update inline slice detection (c13a1cf)

Features

  • json-crdt-extensions: 🎸 export inline types (77b3349)
  • json-crdt-extensions: 🎸 populate common slice type list (d4c68db)
  • json-crdt-extensions: 🎸 support caret in .stat() method (212f623)
  • json-crdt-peritext-ui: 🎸 add basic highlighting for all boolean inline elements (21844f9)
  • json-crdt-peritext-ui: 🎸 add strikethrough inline slice support (c529d73)
  • json-crdt-peritext-ui: 🎸 anchor boolean slice end point "before" next char (77afdc1)
  • json-crdt-peritext-ui: 🎸 improve chrome styling (9d4a0f8)
  • json-crdt-peritext-ui: 🎸 improve editor boolean buttons (0f5aa91)
  • json-crdt-peritext-ui: 🎸 ref "after" on caret set (257648c)
  • json-crdt-peritext-ui: 🎸 reset pressed keys on editor blur (8f144f4)
  • json-crdt-peritext-ui: 🎸 use common inline slice types (241f841)

17.13.0 (2024-11-06)

Bug Fixes

  • json-crdt-extensions: 🐛 improve .stat() implementation (7876cd1)

Features

  • json-crdt-extensions: 🎸 add ability to start iteration including the first point (33d8539)
  • json-crdt-extensions: 🎸 implement .shrink() method for Range (a0f5a80)
  • json-crdt-extensions: 🎸 implement Overlay .stat() method (1045d77)
  • json-crdt-extensions: 🎸 populate common slice types (5f04117)
  • json-crdt-peritext-ui: 🎸 add context for the default theme (46317cb)
  • json-crdt-peritext-ui: 🎸 setup default chrome and top toolbar (34856b5)

17.12.0 (2024-11-04)

Bug Fixes

  • json-crdt-peritext-ui: 🐛 imprve how cursor is displayed in debug mode (b6c61a8)
  • json-crdt-peritext-ui: 🐛 make event prevention more granular (86713f8)

Features

  • json-crdt-peritext-ui: 🎸 add ability to render controller state (b117417)
  • json-crdt-peritext-ui: 🎸 add ability to slant focus in italic text (46bdb02)
  • json-crdt-peritext-ui: 🎸 add CompositionController (585f5d4)
  • json-crdt-peritext-ui: 🎸 add text augmentation API (186801e)
  • json-crdt-peritext-ui: 🎸 add useSyncStore React hook (254efb7)
  • json-crdt-peritext-ui: 🎸 blur editor on Esc press (eeef3ea)
  • json-crdt-peritext-ui: 🎸 change inline view rendering API (fdb6e23)
  • json-crdt-peritext-ui: 🎸 early exit keyboard events when in composition (2131fab)
  • json-crdt-peritext-ui: 🎸 improve caret and selection edge rendering styling (df4d070)
  • json-crdt-peritext-ui: 🎸 improve key trackign reset behavior (57663ab)
  • json-crdt-peritext-ui: 🎸 improve Peritext root component rendering (ed5e8ee)
  • json-crdt-peritext-ui: 🎸 make CursorController state reactive (e711151)
  • json-crdt-peritext-ui: 🎸 memoize main component ref (86ad303)
  • json-crdt-peritext-ui: 🎸 print pressed key state (ebc3d0e)
  • json-crdt-peritext-ui: 🎸 remove text component (d2ecad4)
  • json-crdt-peritext-ui: 🎸 render caret grey when blurred (ab8dda9)
  • json-crdt-peritext-ui: 🎸 render selection grey when blurred (d3d28a0)
  • json-crdt-peritext-ui: 🎸 track focus state in input controller and print its state (d98070f)
  • json-crdt-peritext-ui: 🎸 use Position as "inline" event position parameters (be2e551)
  • util: 🎸 implement SyncStore helpers (4806c82)

17.11.0 (2024-11-03)

Features

  • json-crdt-peritext-ui: 🎸 add concenience overloads for the "delete" event (1a59929)
  • json-crdt-peritext-ui: 🎸 improve "cursor" evnet range selections (a7b17be)
  • json-crdt-peritext-ui: 🎸 improve the cursor event absolute caret positioning (ccb8ded)

17.10.0 (2024-11-03)

Features

  • json-crdt-peritext-ui: 🎸 add ability to delete at arbitrary position (98fff74)
  • json-crdt-peritext-ui: 🎸 improve generic "change" event dispatch (3a28733)
  • json-crdt-peritext-ui: 🎸 improve the deletion event (633b6f4)
  • json-crdt-peritext-ui: 🎸 make events cancellable, add "insert" tests (9a9fa51)

17.9.1 (2024-11-02)

Bug Fixes

  • 🐛 correct simple linter errors (4f85e09)
  • 🐛 fix more risky linter warnings (c1b04f1)

17.9.0 (2024-11-01)

Features

  • json-crdt: 🎸 improve chunk print formatting (e57437e)

17.8.1 (2024-10-31)

Reverts

  • Revert "chore(json-crdt-peritext-ui): 🤖 remove ui surface" (3eba2fa)

17.8.0 (2024-10-31)

Features

  • json-crdt-peritext-ui: 🎸 add Peritext DOM event handlers to the main line (b3554aa)

17.7.0 (2024-10-31)

Features

  • json-crdt-peritext-ui: 🎸 add main Peritext event implementations (20a6d61)

17.6.0 (2024-10-31)

Bug Fixes

  • json-crdt-extensions: 🐛 correctly execute cursor movement (9022f90)
  • json-crdt-extensions: 🐛 support end attributes only at ABS end (8219b20)
  • json-crdt-extensions: 🐛 update block hashes when a slice is inserted (68a32d4)
  • json-crdt-extensions: 🐛 update EOL iterators (524ce7e)
  • json-crdt-peritext-ui: 🐛 keep reference to inline objects from text chunks (b1158f5)
  • json-crdt-peritext-ui: 🐛 make inline/pos detection more robust (415ff7d)

Features

  • json-crdt-extensions: 🎸 improve cursor iteration methods (ed6bbcb)
  • json-crdt-extensions: 🎸 improve how inline key is generated (27b6092)
  • json-crdt-extensions: 🎸 support caret at ABS end (b45afb0)
  • json-crdt-peritext-ui: 🎸 add "select all" support (12ca6b4)
  • json-crdt-peritext-ui: 🎸 add a wayt to select the a full block (fdecb88)
  • json-crdt-peritext-ui: 🎸 add ability to define custom renderers (21b566a)
  • json-crdt-peritext-ui: 🎸 add ability to delete multiple words at a time (ab6aa5d)
  • json-crdt-peritext-ui: 🎸 add ability to delete words (a671342)
  • json-crdt-peritext-ui: 🎸 add ability to select a word (ff07038)
  • json-crdt-peritext-ui: 🎸 add ability to slant cursor (4bfdf06)
  • json-crdt-peritext-ui: 🎸 add basic inline formatting (fb980e9)
  • json-crdt-peritext-ui: 🎸 add block and peritext custom renderers support (a49f8ac)
  • json-crdt-peritext-ui: 🎸 add caret ticks (891cf90)
  • json-crdt-peritext-ui: 🎸 add constants for class names (bb7b43c)
  • json-crdt-peritext-ui: 🎸 add controller scaffolding (3420f2d)
  • json-crdt-peritext-ui: 🎸 add demo React UI (13af94f)
  • json-crdt-peritext-ui: 🎸 add initial multi-cursor support (16933d3)
  • json-crdt-peritext-ui: 🎸 add renderer for inline elements (9ad15c9)
  • json-crdt-peritext-ui: 🎸 add support for line deletion events (5267056)
  • json-crdt-peritext-ui: 🎸 better cursor click treatment (2899a0a)
  • json-crdt-peritext-ui: 🎸 cleanup block rendering, unify components (0aedffd)
  • json-crdt-peritext-ui: 🎸 create anchor renderer (3434a3b)
  • json-crdt-peritext-ui: 🎸 create PeritextDomController class (200ed30)
  • json-crdt-peritext-ui: 🎸 create wrappers for attribute types (edcb531)
  • json-crdt-peritext-ui: 🎸 do not process "mousemove" event on the same coordinates (06170e8)
  • json-crdt-peritext-ui: 🎸 do not update cursor if there is no change (d306dff)
  • json-crdt-peritext-ui: 🎸 generalize char and word deletion (afe00c9)
  • json-crdt-peritext-ui: 🎸 improve anchor and focus views (9402fb0)
  • json-crdt-peritext-ui: 🎸 improve char deletion setup (38debd4)
  • json-crdt-peritext-ui: 🎸 improve cursor movement, add editor.move() method (0b6ce9f)
  • json-crdt-peritext-ui: 🎸 improve cursor presentation (beb6755)
  • json-crdt-peritext-ui: 🎸 improve display of selection anchor (3f8ff93)
  • json-crdt-peritext-ui: 🎸 improve editor selection setup (53c34ee)
  • json-crdt-peritext-ui: 🎸 improve event types (bdc4399)
  • json-crdt-peritext-ui: 🎸 improve focus view (63230ee)
  • json-crdt-peritext-ui: 🎸 improve inline and cursor view (cd44f4a)
  • json-crdt-peritext-ui: 🎸 improve Peritext UI setup (004af38)
  • json-crdt-peritext-ui: 🎸 improve range selection methods (3c3a16e)
  • json-crdt-peritext-ui: 🎸 improve selection computation (82c16f4)
  • json-crdt-peritext-ui: 🎸 improve selection endpoint rendering (85c0042)
  • json-crdt-peritext-ui: 🎸 improve selection view (7c3bdab)
  • json-crdt-peritext-ui: 🎸 improve single character deletions (9d0a92c)
  • json-crdt-peritext-ui: 🎸 improve surface rendering setup (8365116)
  • json-crdt-peritext-ui: 🎸 improve view of hash (9646c20)
  • json-crdt-peritext-ui: 🎸 make cursor always visible initially (93f58b2)
  • json-crdt-peritext-ui: 🎸 make debug mode rendering self-contained (f3f5267)
  • json-crdt-peritext-ui: 🎸 make hashes non-content editable (1726f6b)
  • json-crdt-peritext-ui: 🎸 make multi-click selection work (7600e7b)
  • json-crdt-peritext-ui: 🎸 make word and line events more robust (6aa837b)
  • json-crdt-peritext-ui: 🎸 move cursor rendering into inline element (2f1d3aa)
  • json-crdt-peritext-ui: 🎸 move debug overlay rendering into the debug mode (d22373c)
  • json-crdt-peritext-ui: 🎸 move font ligatures to the inline element (e8e22f8)
  • json-crdt-peritext-ui: 🎸 normalize cursor event shape (3a285b9)
  • json-crdt-peritext-ui: 🎸 remove [debug] prop (ade6f79)
  • json-crdt-peritext-ui: 🎸 rename renderer components (0ed5fa6)
  • json-crdt-peritext-ui: 🎸 render different views for focus and caret (87be5bb)
  • json-crdt-peritext-ui: 🎸 render inlines in custom view layer (8a0de80)
  • json-crdt-peritext-ui: 🎸 render selection anchor as a dot (915752e)
  • json-crdt-peritext-ui: 🎸 rerender peritext on debug mode change (2b655b3)
  • json-crdt-peritext-ui: 🎸 select text on mousedown event (724380e)
  • json-crdt-peritext-ui: 🎸 set blend mode on caret (9004e47)
  • json-crdt-peritext-ui: 🎸 show selection (8071d96)
  • json-crdt-peritext-ui: 🎸 start event implementation (73beaf7)
  • json-crdt-peritext-ui: 🎸 stop text shifts because of kerning (c030975)
  • json-crdt-peritext-ui: 🎸 synchronize cursor blinking (c3d7537)
  • json-crdt-peritext-ui: 🎸 track pressed keys (916dea2)
  • json-crdt-peritext-ui: 🎸 update class names (0c2e8a4)

Performance Improvements

  • json-crdt-peritext-ui: ⚡️ use memoization in block view (188e7c3)

17.5.0 (2024-10-29)

Features

  • json-crdt-extensions: 🎸 improve .eob() end codition handling (14a69b8)
  • json-crdt-extensions: 🎸 improve edge condition handling in .bob() call (e1973b7)
  • json-crdt-extensions: 🎸 improve Editor .move() method (5b4bc9b)
  • json-crdt-extensions: 🎸 improve end treatment in line iterators (bb9aabe)

17.4.0 (2024-10-28)

Bug Fixes

  • json-crdt-peritext-ui: 🐛 correct skipping behavior (d25bd3c)

Features

  • json-crdt-extensions: 🎸 improve Cursor object (149fc4f)
  • json-crdt-extensions: 🎸 improve Editor class (d819cb1)
  • json-crdt-extensions: 🎸 improve Editor cursor APIs (df2a5e2)
  • json-crdt-extensions: 🎸 introduce halfstep iteration (da3abc3)
  • json-crdt-extensions: 🎸 print the exact Point character in debug view (b33b4da)
  • json-crdt-extensions: 🎸 rename text char-by-char iteration method (0fe582c)

17.3.0 (2024-10-12)

Features

  • json-crdt-patch: 🎸 allow combining multiple patches at once (bb52208)
  • json-crdt-patch: 🎸 implement combine() for joining two adjacent patches (427c7c9)
  • json-crdt-patch: 🎸 implement consecutive string insert compaction (67feb63)

17.2.0 (2024-10-10)

Bug Fixes

  • json-crdt-extensions: 🐛 if position is specified, return EOS point (a617ebb)

Features

  • json-crdt-extensions: 🎸 improve .fwd() and .bwd() string iterators, and implify (3ed7057)
  • json-crdt-extensions: 🎸 improve point iteration (70210ae)

17.1.0 (2024-10-10)

Features

  • json-crdt-extensions: 🎸 add editor backward iteration (0358fdd)
  • json-crdt-extensions: 🎸 implement semantic forward movement in the editor (4cff1b7)

Performance Improvements

  • json-crdt-extensions: ⚡️ improve backward iteration end condition check (4f8c968)

17.0.1 (2024-10-07)

Bug Fixes

  • json-text: 🐛 classify null as primitive (a0ef6e7)

17.0.0 (2024-10-06)

Bug Fixes

  • 🐛 correct library imports (8e12deb)

chore

  • 🤖 remove migrated sub-libraries (a04825a)

BREAKING CHANGES

  • 🧨 A number of sub-libraries have been externalized

16.27.2 (2024-10-05)

Bug Fixes

  • 🐛 move json-expression library externally (3d62c55)

16.27.1 (2024-10-05)

Bug Fixes

16.27.0 (2024-10-01)

Bug Fixes

  • json-crdt: 🐛 correctly handle deletes (f7af05b)
  • json-crdt: 🐛 return undefined view on empty document (14a5e42)

Features

  • json-crdt: 🎸 add store convenience API (760da9c)
  • json-crdt: 🎸 improve view selector (5a433a6)
  • json-crdt: 🎸 return undefined on missing sub view (d88f762)

16.26.0 (2024-10-01)

Features

  • 🎸 remove usage of constructor name property (857c8d3)

16.25.0 (2024-09-24)

Features

  • json-crdt: 🎸 introduce .applyLocalPatch() method (24ba067)

16.24.0 (2024-09-19)

Features

  • 🎸 make array check more robust (40e8705)

Performance Improvements

  • ⚡️ update deep equal benchmarks (0cde6cc)

16.23.2 (2024-09-17)

Bug Fixes

  • json-crdt: 🐛 do not detach builder clock on .reset() (e668d84)

16.23.1 (2024-08-19)

Bug Fixes

  • json-crdt: 🐛 make change flush safe (91a37ae)

16.23.0 (2024-08-08)

Bug Fixes

  • json-type-value: 🐛 show value encoding problemsn in development mode (24d5adb)

Features

  • json-type: 🎸 improve type builder import method (544188a)

16.22.1 (2024-08-01)

Bug Fixes

  • json-type-value: 🐛 add default type for values (ee36743)

16.22.0 (2024-07-29)

Features

  • json-crdt-patch: 🎸 allow readin patches sequentially (ad98179)

16.21.0 (2024-07-29)

Features

  • 🎸 bump upstream dependencies (f8a507f)

16.20.0 (2024-07-28)

Features

  • json-crdt-patch: 🎸 improve Patch .rebase() operation (2bd08bc)
  • json-crdt: 🎸 when forking, detect if sid was already used (6d3cdf7)

16.19.0 (2024-07-24)

Features

  • json-crdt: 🎸 add ability to deeply select value in store (2c55b24)
  • json-crdt: 🎸 add support "reset" events JSON Patch store (71c80a8)

16.18.1 (2024-07-24)

Bug Fixes

  • json-crdt-patch: 🐛 correct "obj" and "vec" text dumps (d601792)
  • json-crdt-patch: 🐛 remove extra space (f3c2fea)

16.18.0 (2024-07-23)

Features

  • json-crdt: 🎸 make JSON Patch JSON CRDT store events synchronous (c43305e)

16.17.1 (2024-07-22)

Bug Fixes

  • json-crdt: 🐛 allow nested transactions (d687561)

16.17.0 (2024-07-22)

Features

  • json-crdt: 🎸 add ability to bind to sub-state (b012c6a)
  • json-crdt: 🎸 allow string pointers (680d47f)

16.16.0 (2024-07-22)

Features

  • json-crdt: 🎸 apply JSON Patch operations in a tracsaction (b377d7c)
  • json-crdt: 🎸 inprove JsonPatchStore interface (dcbbc54)

16.15.0 (2024-07-22)

Bug Fixes

  • json-crdt-extensions: 🐛 include text changes in hash (99936dc)

Features

  • json-crdt-extensions: 🎸 preserve object indentities in extension views (0996683)
  • json-crdt: 🎸 add ability to prefix JsonPatch operations (34d3188)
  • json-crdt: 🎸 implement JsonPatchStore class (dc0e6f3)
  • json-crdt: 🎸 shorten and make declarative all JSON Patch methods for JSON CRDT (cf437b8)

16.14.0 (2024-07-22)

Features

  • json-crdt-extensions: 🎸 add sample collected Quill fuzzer traces to tests (1512870)

16.13.2 (2024-07-20)

Bug Fixes

  • json-crdt-extensions: 🐛 do not miss second half of the contents (dce7924)
  • json-crdt-extensions: 🐛 find contained slice when there is no leading point in index (f3d64ee)
  • json-crdt-extensions: 🐛 find overlapping slices when there are no leads in index (f630d85)

Performance Improvements

  • json-crdt-extensions: ⚡️ proactively check for empty attributes (b4d719c)

16.13.1 (2024-07-15)

Bug Fixes

  • json-crdt: 🐛 make log start use correct logical time (019883d)

16.13.0 (2024-07-10)

Features

  • json-crdt-extensions: 🎸 add Quill extension inference types (c21e15b)
  • json-crdt-extensions: 🎸 add Quill types (524ae1b)
  • json-crdt-extensions: 🎸 add QuillDeltaApi implementation (656728e)
  • json-crdt-extensions: 🎸 add slice manipulation helpers (ba2254c)
  • json-crdt-extensions: 🎸 implement Quill Delta view computation (c643543)
  • json-crdt-extensions: 🎸 improve Quill Delta extension setup (10e7721)
  • json-crdt-extensions: 🎸 setup Quill Delta extension (d6a4111)

16.12.0 (2024-06-29)

Bug Fixes

  • json-crdt-extensions: 🐛 do not create stray slice deletion patches (c769945)

Features

  • json-crdt-extensions: 🎸 improve slice deletions (6359951)

16.11.0 (2024-06-24)

Features

  • json-expression: 🎸 add ability to execute expressions without extra try-catch (a8498ec)
  • json-type: 🎸 use new expession execution syntax (43cd177)

Performance Improvements

  • json-crdt-extensions: ⚡️ do not wrap Vars into an extra object (4dbc780)

16.10.0 (2024-06-21)

Features

  • json-expression: 🎸 implement "push" operator (edbd128)

16.9.0 (2024-06-17)

Bug Fixes

  • json-expression: 🐛 evaluate prop expressions (9eb2035)

Features

  • json-expression: 🎸 add JSON Patch add "jp.add" implementation (2bbe3cd)
  • json-expression: 🎸 implement "o.set" operator (bd05779)
  • json-expression: 🎸 implement object "o.del" operator (20c7aff)
  • json-expression: 🎸 prevent protoptype chain mutation in "o.set" (b676b55)

Performance Improvements

  • json-expression: ⚡️ pre-cast Literals to string (84c5aeb)

16.8.0 (2024-06-08)

Features

  • json-crdt-extensions: 🎸 chop off block sentinel text from inline node materializati (d1ee62c)
  • json-crdt-extensions: 🎸 improve Inline attribute construction (3ef2fe6)
  • json-crdt-extensions: 🎸 report slice position relative to the inline (2f960db)
  • json-crdt-extensions: 🎸 use undefined as data if no slice data specified (e5c4992)

16.7.0 (2024-06-08)

Features

  • json-crdt-extensions: 🎸 add inter-block iteration for inline elements (22f6fe8)
  • json-crdt-extensions: 🎸 add inter-block iteration using point tuples (edf19ac)
  • json-crdt-extensions: 🎸 add iteration over block points (19dcc68)
  • json-crdt-extensions: 🎸 can return block marker when iterating (0e66aa6)
  • json-crdt-extensions: 🎸 improve how blocks are printed to console, add Block.text() (4a68cda)

Performance Improvements

  • json-crdt-extensions: ⚡️ speed up range text materialization (ac56314)

16.6.0 (2024-06-07)

Features

  • json-crdt-extensions: 🎸 add initial Block class implementation (69ef39d)
  • json-crdt-extensions: 🎸 construct a blocks layer out of Overlay (067fed6)

16.5.0 (2024-05-11)

Features

  • json-crdt-extensions: 🎸 add initial Inline class implementation (9994f2a)
  • json-crdt-extensions: 🎸 improve Inline.attr() implementation (c6c5b62)
  • json-crdt-extensions: 🎸 improve Inline.key() implementation (4f5f012)

16.4.0 (2024-05-10)

Bug Fixes

  • json-crdt-extensions: 🐛 correctly store extra and local slices (636a166)
  • json-crdt-extensions: 🐛 recompute different Overlay state hash when text changes (d64b8ab)

Features

  • json-crdt-extensions: 🎸 add markers only overlay tree (9f090f7)
  • json-crdt-extensions: 🎸 improve text hash calculation (ed6ce96)

16.3.0 (2024-05-08)

Features

  • json-crdt-extensions: 🎸 improve .points() iteration at offset (8de8676)
  • json-crdt-extensions: 🎸 improve Overlay.pairs() iterator (b095301)

16.2.0 (2024-05-07)

Bug Fixes

  • json-crdt-extensions: 🐛 improve .getOrNextHigher() (fdf0744)

Features

  • json-crdt-extensions: 🎸 add Overlay.getOrNextHigher() impelemntation (f3784b0)
  • json-crdt-extensions: 🎸 display slice behaviors (eda567d)
  • json-crdt-extensions: 🎸 handle abs end in getOrNextHigher() (0d1254b)
  • json-crdt-extensions: 🎸 implement Overlay traversal methods (cb98052)
  • json-crdt-extensions: 🎸 improve editor interfaces (a76291c)
  • json-crdt-extensions: 🎸 improve how Point handles absolute end position (7702e98)
  • json-crdt-extensions: 🎸 improve marker point treatment in overlay (32b481d)
  • json-crdt-extensions: 🎸 make Overlay an iterable (8716cfa)
  • json-crdt-extensions: 🎸 support absolut positions in higher/lower iteration (a88f9d8)

16.1.0 (2024-05-05)

Features

  • json-crdt-extensions: 🎸 abstract saved slices into a standalone EditorSlices class (444a9ae)
  • json-crdt-extensions: 🎸 improve Editor and Cursor APIs (fd1177f)
  • json-crdt-extensions: 🎸 improve multi-cursor support (7a6850b)
  • json-crdt-extensions: 🎸 instantiate Peritext contenxt and Editor on PeritextApi (5a22ffc)
  • json-crdt-extensions: 🎸 make all Peritext classes generic to the RGA item (55969b8)

16.0.0 (2024-05-05)

Bug Fixes

  • json-crdt-extensions: 🐛 correctly encode cnt extension sid key (264d45c)
  • json-crdt: 🐛 allow extension API selection through path selector (c09dc8f)
  • json-crdt: 🐛 make extension schema copyable (7bbee8f)

Features

  • json-crdt-extensions: 🎸 add ability to access Peritext "str" node API (41ec564)
  • json-crdt-extensions: 🎸 add ability to access Peritext slices "arr" node (2ea4f34)
  • json-crdt-extensions: 🎸 add type safety when accessing Peritext nodes (7401ac5)
  • json-crdt-extensions: 🎸 define Peritext extension (032bab1)
  • json-crdt-extensions: 🎸 infer sessin ID from builder (f0435a1)
  • json-crdt-extensions: 🎸 setup ModelWithExt static class (69e1200)
  • json-crdt-extensions: 🎸 simplify cnt extension definition (3ef93cd)
  • json-crdt-patch: 🎸 add node.json schema builder class (ed6a558)
  • json-crdt-patch: 🎸 add s.ext() schema builder (0f7910b)
  • json-crdt-patch: 🎸 improve schema types and value preservatin (7ebc049)
  • json-crdt: 🎸 ability to select extension api directly (8af589c)
  • json-crdt: 🎸 add abstract ExtNode class (5a79cec)
  • json-crdt: 🎸 construct extension API nodes when accessing by proxy (ef5c581)
  • json-crdt: 🎸 improve extension node selection by proxy (ebf1eea)
  • json-crdt: 🎸 improve extension presentation (d13cc65)
  • json-crdt: 🎸 make extenion object optional when calling .asExt() (fe7e6a9)
  • json-crdt: 🎸 remove chaining from node APIs (1fb6f11)
  • json-crdt: 🎸 start Extension implementation (7da9262)
  • json-crdt: 🎸 use Extension class to construct extensions (273d013)

BREAKING CHANGES

  • json-crdt: 🧨 A number of JSON CRDT NodeApi methods have been changed.

15.11.0 (2024-05-02)

Bug Fixes

  • json-crdt-extensions: 🐛 allow setting non-constant slice data (2f87b8a)

Features

  • json-crdt-extensions: 🎸 allow passing in extra slice and local slice models (b10d1cf)
  • json-crdt-extensions: 🎸 improve mutations in persisted slices (d6d0193)
  • json-crdt-extensions: 🎸 improve Pertiext .toString() presentation (c529aaf)
  • json-crdt-extensions: 🎸 improve slice typing and schema (ce6eb34)
  • json-crdt: 🎸 add Model.create() method (8fc8fc0)
  • json-crdt: 🎸 improve model creation flow (89daf03)
  • json-crdt: 🎸 improve model initialization APIs (e0474d1)

15.10.0 (2024-05-01)

Bug Fixes

  • 🐛 bump tree-dump dependency (553c9ee)

Features

  • json-crdt-extensions: 🎸 add more slice layers (7971f21)
  • json-crdt-extensions: 🎸 cleanup internal data structures after local changes (232457b)

Performance Improvements

  • json-crdt: ⚡️ improve first chunk finding implementation (5e7e661)

15.9.0 (2024-04-30)

Features

  • json-crdt-extensions: 🎸 add higher-level API for inserting markers (7789ced)
  • json-crdt-extensions: 🎸 add initial Overlay implementatin (2cd0174)
  • json-crdt-extensions: 🎸 improve how cursor is displayed (ceadbdd)
  • json-crdt-extensions: 🎸 improve how slices are presented (a83518d)
  • json-crdt-extensions: 🎸 improve overlay layer insertions (75e2620)

15.8.0 (2024-04-29)

Features

  • json-crdt: 🎸 add typing support for Log (bcb84a1)

15.7.0 (2024-04-28)

Features

  • json-crdt-extensions: 🎸 implement OverlayPointMarker (4612bd4)
  • json-crdt-extensions: 🎸 improve MarkerOverlayPoint presentation (b6b6521)

15.6.0 (2024-04-28)

Bug Fixes

  • json-crdt: 🐛 store golbal session in clock vector (407c383)

Features

  • json-crdt: 🎸 use SESSION.GLOBAL for default value and schema setup (4813bc9)

15.5.0 (2024-04-26)

Features

  • json-crdt-extensions: 🎸 add block tag type (120ba2f)
  • json-crdt-extensions: 🎸 add OverlayPoint implementation (ca037e6)
  • json-crdt-extensions: 🎸 implement overlay "ref" concept (7c31a6f)
  • json-crdt-extensions: 🎸 improve overlay point layer insertion (70748ac)
  • json-crdt-extensions: 🎸 improve OverlayPoint marker operations (7aea094)
  • json-crdt-extensions: 🎸 improve OverlayPoint ref operations (8a23776)

Performance Improvements

  • json-crdt-extensions: ⚡️ remove immediately from the right bucket (faf466f)