Releases: streamich/json-joy
Releases ยท streamich/json-joy
v17.44.0
17.44.0 (2025-06-22)
Bug Fixes
- json-crdt-extensions: ๐ correctly overwrite formatting data (da100fd)
- json-crdt-extensions: ๐ do not type into array unnecessarily (fe236cc)
- json-crdt-peritext-ui: ๐ remove formatting by its ID (350a45c)
Features
- json-crdt-extensions: ๐ธ add "format" event "set" action (3c4a344)
- json-crdt-extensions: ๐ธ add ability to clear all cursors (e58aa07)
- json-crdt-extensions: ๐ธ add ability to remove formatting by ID (d371ba6)
- json-crdt-extensions: ๐ธ add attr data to multiple levels (d92ccb1)
- json-crdt-extensions: ๐ธ add event part to select specific slice (f4b5796)
- json-crdt-extensions: ๐ธ add initial "upd" formatting implementation (1f43820)
- json-crdt-extensions: ๐ธ can retrieve formatting data and force it to be "obj" node (dceae02)
- json-crdt-extensions: ๐ธ cleanup slice type annotations (167a78b)
- util: ๐ธ add basic Iterator polyfill (6edbe87)
v17.43.0
v17.42.0
17.42.0 (2025-05-15)
Bug Fixes
- json-crdt-extensions: ๐ assign type (d73aa54)
- json-crdt-extensions: ๐ do not create collapsed leading Inline elements (01c7271)
- json-crdt-extensions: ๐ do not override custom HTML tag importers (bba3703)
- json-crdt-peritext-ui: ๐ apply editor main CSS styles (502f0c1)
- json-crdt-peritext-ui: ๐ be more specific when hiding caret, imlement on inline lvl (2886117)
- json-crdt-peritext-ui: ๐ collapse selection on no visible chars (ab4bae5)
- json-crdt-peritext-ui: ๐ hide system selection on inline element level (499b5d6)
- json-crdt-peritext-ui: ๐ render overlays over cursor (bce0793)
- json-crdt-peritext-ui: ๐ show back button only when necessary (76a71e0)
- json-crdt-peritext-ui: ๐ switch plugin places (cc3785e)
Features
- json-crdt-extensions: ๐ธ add ability to attach custom data to slice definitions (cfb5511)
- json-crdt-extensions: ๐ธ add ability to start slice configuration (56809bd)
- json-crdt-extensions: ๐ธ add name to slices in registry (e199f9d)
- json-crdt-extensions: ๐ธ add slice type tag extration utility (73f1ed5)
- json-crdt-extensions: ๐ธ harden registry usage, make it required (8434117)
- json-crdt-extensions: ๐ธ implement Printable in slice registry and add TypeTag type (6834881)
- json-crdt-extensions: ๐ธ improve Peritext model schema definitions (369b2b3)
- json-crdt-extensions: ๐ธ improve slice configuration types (076c480)
- json-crdt-extensions: ๐ธ lazily construct slice registry on first use (a857223)
- json-crdt-extensions: ๐ธ make pending caret formatting undefined if empty (dfa72ac)
- json-crdt-peritext-ui: ๐ธ add component (459bc03)
- json-crdt-peritext-ui: ๐ธ add
and components (b5b6fe6)
- json-crdt-peritext-ui: ๐ธ add component (676a93f)
- json-crdt-peritext-ui: ๐ธ add ability to delete selected formatting (70cf09e)
- json-crdt-peritext-ui: ๐ธ add ability to enter formatting edit mode (178c94d)
- json-crdt-peritext-ui: ๐ธ add ability to navigate back on slice edit (99bf99c)
- json-crdt-peritext-ui: ๐ธ add ability to render generic formatting item (6d0028f)
- json-crdt-peritext-ui: ๐ธ add ability to set URL title (b74c9c6)
- json-crdt-peritext-ui: ๐ธ add caret bottom state management and ability to select (edbc869)
- json-crdt-peritext-ui: ๐ธ add formatting header buttons (fde45ea)
- json-crdt-peritext-ui: ๐ธ add link decoration styles (34bdb11)
- json-crdt-peritext-ui: ๐ธ add link shortcut annotation (cca77cb)
- json-crdt-peritext-ui: ๐ธ add more state to formatting editing (2e72e9b)
- json-crdt-peritext-ui: ๐ธ add tooltips to link card buttons (5b1f12b)
- json-crdt-peritext-ui: ๐ธ add url clearing button (86caa86)
- json-crdt-peritext-ui: ๐ธ allow onKeyDown prop in component (8b394e6)
- json-crdt-peritext-ui: ๐ธ allow registration of custom slice data (50b1f53)
- json-crdt-peritext-ui: ๐ธ allow to specify positioning function (7cb816d)
- json-crdt-peritext-ui: ๐ธ close config popup on cursor moves (96a1e2e)
- json-crdt-peritext-ui: ๐ธ close config popup on Esc press (c2fd415)
- json-crdt-peritext-ui: ๐ธ create custom portal element container in editor (43b9427)
- json-crdt-peritext-ui: ๐ธ create dedicated formatting manager component (e345a81)
- json-crdt-peritext-ui: ๐ธ create editor wrapper element (6b7fada)
- json-crdt-peritext-ui: ๐ธ create link configuration component (6f3041e)
- json-crdt-peritext-ui: ๐ธ create link element renderer (86f6fce)
- json-crdt-peritext-ui: ๐ธ create new formatting setup (bec4382)
- json-crdt-peritext-ui: ๐ธ diff and save edited formatting (66743ef)
- json-crdt-peritext-ui: ๐ธ dispatch link annotation update event (1509c75)
- json-crdt-peritext-ui: ๐ธ display cursor anchor position with the dotted border (5159ce9)
- json-crdt-peritext-ui: ๐ธ enable copy buttom (5a89530)
- json-crdt-peritext-ui: ๐ธ helper components for card rendering (cb74d6b)
- json-crdt-peritext-ui: ๐ธ highglight caret and editor focus in debug mode (b62e0fa)
- json-crdt-peritext-ui: ๐ธ implement full URL parsing (2439dcc)
- json-crdt-peritext-ui: ๐ธ implement various formatting renderers (f756754)
- json-crdt-peritext-ui: ๐ธ improve "format" event interface and default impl (0c2a65d)
- json-crdt-peritext-ui: ๐ธ improve color formatting definition (d6321b0)
- json-crdt-peritext-ui: ๐ธ improve context menu header presentation (ef5cffc)
- json-crdt-peritext-ui: ๐ธ improve CSS layouts (b088d9b)
- json-crdt-peritext-ui: ๐ธ improve design of the link card (958f30b)
- **json-crd...
v17.41.0
17.41.0 (2025-05-10)
Bug Fixes
- json-crdt-diff: ๐ correct issues found by fuzzer (c6fbe17)
- json-crdt-diff: ๐ improve array diff edge cases (7d68bc1)
- json-crdt-diff: ๐ use unicode encoding for binary data (1df2781)
- json-patch-diff: ๐ allow string node type change (68b8b27)
- util: ๐ correct line diff line beginning normalization (a29b4b7)
- util: ๐ correctly assign last line patch operation (20d1199)
- util: ๐ correctly compute diff source offset (cb247c8)
- util: ๐ correctly determini line operation on last line no-newline op (82a97fe)
- util: ๐ do not emit empty operations (7383d95)
- util: ๐ do not emit empty operations (bdde345)
- util: ๐ handle correctly array shifts (1cbc8a5)
- util: ๐ improve handling of line separators (33a8316)
- util: ๐ improve line diff assignment, use a newline char per line (11eaaa8)
- util: ๐ keep new-line on line end fixes (b5a9b99)
Features
- json-crdt-diff: ๐ธ handle case where "obj" value not compatible with dst value (587d2c5)
- json-crdt-diff: ๐ธ implement "bin" node diffing (c03ede5)
- json-crdt-diff: ๐ธ implement "val" node diff (030023b)
- json-crdt-diff: ๐ธ implement array diff apply(), start using arrayd diff in CRDT (bc25ff6)
- json-crdt-diff: ๐ธ implement diff for "vec" nodes (4e3067e)
- json-crdt-diff: ๐ธ implement initial "arr" node diff (fd88982)
- json-crdt-diff: ๐ธ implement StrNode diff (f1db4d8)
- json-crdt-diff: ๐ธ improve binary node handling (9ae5c90)
- json-crdt-diff: ๐ธ insert missing keys into "obj" (14e64fb)
- json-crdt-diff: ๐ธ pass in source length on patch application (5968a47)
- json-crdt-diff: ๐ธ remove deleted "obj" keys (a0e148f)
- json-crdt-diff: ๐ธ support entering "obj" entries (036b58e)
- json-crdt-diff: ๐ธ use line diff in JSON CRDT diff (ff97192)
- json-crdt-peritext-ui: ๐ธ implement text diff (395b4db)
- json-hash: ๐ธ assert structural hash in variants (9187472)
- json-hash: ๐ธ implement structural hashing for CRDT nodes (ada9067)
- json-hash: ๐ธ produce hashes for binary data (3abcfcf)
- json-patch-diff: ๐ธ add array node diff implementation (a6a28ef)
- json-patch-diff: ๐ธ implement diff for object nodes (d7066d3)
- json-patch-diff: ๐ธ setup JSON Patch diff algorithm implementation (0427a1a)
- json-patch-diff: ๐ธ use line diff in JSON Patch diff (83694ad)
- util: ๐ธ add diff utility methods (0fb9c7c)
- util: ๐ธ add initial implementation of line matching (d89fb9e)
- util: ๐ธ cleanup array diff (64fc4b7)
- util: ๐ธ create line-by-line patch module (ca9ae65)
- util: ๐ธ handle new line chars (5ff05bf)
- util: ๐ธ implement array diff child element entry (1853633)
- util: ๐ธ implement binary to hex transforms (66c37c1)
- util: ๐ธ implement diff for binary data (a740d02)
- util: ๐ธ implement line matching (b75cbfe)
- util: ๐ธ initial by-line diff implementation (d786e53)
- util: ๐ธ initial, outer, implementation of array diff (2a40471)
- util: ๐ธ match line in line patch (68f131e)
- util: ๐ธ normalize line beginnings across inserts (b6f142a)
Performance Improvements
v17.40.0
17.40.0 (2025-04-18)
Bug Fixes
- json-crdt-peritext-ui: ๐ on double-click make sure the focus is in front (b4ec3d3)
Features
- json-crdt-peritext-ui: ๐ธ add actions to block type menu (a3bb8df)
- json-crdt-peritext-ui: ๐ธ add heading renderers (7f21ee7)
- json-crdt-peritext-ui: ๐ธ allow to specify partial implementation in cboard action (8f8ee78)
- json-crdt-peritext-ui: ๐ธ create local expandable toolbar component (253b541)
- json-crdt-peritext-ui: ๐ธ improve clipboard action behavior (77bc14f)
- json-crdt-peritext-ui: ๐ธ move focus toolbar into viewport (4bfd16e)
- json-crdt-peritext-ui: ๐ธ show only main cursor toolbar over focus caret (2a5cdd8)
- json-crdt-peritext-ui: ๐ธ update block context menu (c26aaab)
v17.39.0
17.39.0 (2025-04-13)
Bug Fixes
- json-crdt-extensions: ๐ correct various selection set edge cases (0b72bc9)
- json-crdt-extensions: ๐ correctly return undefined when at ABS start (97eebb6)
- json-crdt-extensions: ๐ correctly return undefined when querying at ABS end (b77ffe2)
- json-crdt-extensions: ๐ return all cursors even in presence of other slice types (4c92831)
- json-crdt-extensions: ๐ return undefined overlay point and ABS start when needed (a3ca966)
- json-crdt-peritext-ui: ๐ adjust anchor point correctly as start-end points swap (0c0f6c6)
- json-crdt-peritext-ui: ๐ correctly handle unit deletes (79651ef)
- json-crdt-peritext-ui: ๐ handle line info retrieval and ABS end (c844c69)
- json-crdt-peritext-ui: ๐ make multi-cursor work again (6d003de)
- json-crdt-peritext-ui: ๐ safely detect text ABS ends (4be2ab0)
- json-crdt-peritext-ui: ๐ update active block ID on any event (1fc31bd)
Features
- json-crdt-extensions: ๐ธ implement selection set construction (cf739a1)
- json-crdt-peritext-ui: ๐ธ add "vline" movement unit (2a50aed)
- json-crdt-peritext-ui: ๐ธ add block clipboard menu (087ded5)
- json-crdt-peritext-ui: ๐ธ add block menu definition (f5abe26)
- json-crdt-peritext-ui: ๐ธ add support for selections to "format" events (8a8ac43)
- json-crdt-peritext-ui: ๐ธ bump nice-ui dependency (41cd50a)
- json-crdt-peritext-ui: ๐ธ connect basic block type actions to menu (1773026)
- json-crdt-peritext-ui: ๐ธ enable point movements (0d75e8c)
- json-crdt-peritext-ui: ๐ธ handle more input events (7156cf5)
- json-crdt-peritext-ui: ๐ธ handle word jumps (790c29e)
- json-crdt-peritext-ui: ๐ธ implement block selection action (2473ecf)
- json-crdt-peritext-ui: ๐ธ improve "delete" event interface (ca8b147)
- json-crdt-peritext-ui: ๐ธ improve cursor event (fee232c)
- json-crdt-peritext-ui: ๐ธ improve selection set move algorithm (33ad929)
- json-crdt-peritext-ui: ๐ธ integrate selection set concept into "buffer" events (90cf6f3)
- json-crdt-peritext-ui: ๐ธ introduce selections in "marker" events (37aed34)
- json-crdt-peritext-ui: ๐ธ move cursor after paste (92e2b84)
- json-crdt-peritext-ui: ๐ธ render elements (6adcb00)
- json-crdt-peritext-ui: ๐ธ render block left toolbar menu (6dc779e)
- json-crdt-peritext-ui: ๐ธ restructure toolbar plugin inline and block folders (05f8642)
- json-crdt-peritext-ui: ๐ธ set context menu width (af2b057)
- json-crdt-peritext-ui: ๐ธ setup block menu toolbar rendering (52e7fd3)
- json-crdt-peritext-ui: ๐ธ setup leaf block overlay frames (86fc289)
- json-crdt-peritext-ui: ๐ธ setup new cursor movement event detail API (6bb45b5)
- json-crdt-peritext-ui: ๐ธ show block toolbar only when one cursor and no selection (a455c83)
- json-crdt-peritext-ui: ๐ธ specify the new event interfaces (df226e1)
- json-crdt-peritext-ui: ๐ธ standartize range event details (646facb)
- json-crdt-peritext-ui: ๐ธ track active block (330b6ae)
- json-crdt-peritext-ui: ๐ธ update all arrow cursor movements (5c5dd05)
- json-crdt-peritext-ui: ๐ธ update delete event implementation (6a7ac05)
- json-crdt-peritext-ui: ๐ธ update fomartting implementation (8b1b8cf)
v17.38.0
17.38.0 (2025-04-04)
Bug Fixes
- json-crdt-peritext-ui: ๐ re-render debug overlays on screen size changes (b299caf)
Features
- json-crdt-peritext-ui: ๐ธ create formal cursor state (89640a9)
- json-crdt-peritext-ui: ๐ธ immediately construct source node and state (44e1596)
- json-crdt-peritext-ui: ๐ธ improve boundary element mapping (4a35ac7)
- json-crdt-peritext-ui: ๐ธ improve DOM and React integration (b744164)
- json-crdt-peritext-ui: ๐ธ improve re-rendering implementation (98f69e7)
- json-crdt-peritext-ui: ๐ธ index all inline elements (44f4f2e)
- json-crdt-peritext-ui: ๐ธ index leaf block DOM elements (9917b37)
- json-crdt-peritext-ui: ๐ธ move state one folder up (680213c)
- json-crdt-peritext-ui: ๐ธ position caret at line end (87c5a7a)
- json-crdt-peritext-ui: ๐ธ retrieve spans of first block (deb7223)
v17.37.0
17.37.0 (2025-04-01)
Features
- json-crdt-extensions: ๐ธ implement block type update method (d88ad48)
- json-crdt-extensions: ๐ธ implement toggling of block split types (0f8f000)
- json-crdt-peritext-ui: ๐ธ add ability to hide cursor info in debug mode (ff9e996)
- json-crdt-peritext-ui: ๐ธ add ability to hide debug info labes (f07f347)
- json-crdt-peritext-ui: ๐ธ add ability to hide outlines (b018690)
- json-crdt-peritext-ui: ๐ธ create explicit DebugState class (a7d236a)
- json-crdt-peritext-ui: ๐ธ implement multi-cursor block-merge (d2ad754)
- json-crdt-peritext-ui: ๐ธ improve block type toggle implementation (86001db)
- json-crdt-peritext-ui: ๐ธ improve display of adjacent line caret destination (e572e4e)
- json-crdt-peritext-ui: ๐ธ skip markers when moving to adjacent line (5c0325b)
- json-crdt-peritext-ui: ๐ธ use absolute x coordinate to compute vertical line moves (6dc482f)
v17.36.0
17.36.0 (2025-03-31)
Bug Fixes
- json-crdt-peritext-ui: ๐ correctly format slice type tags (2903178)
Features
- json-crdt-extensions: ๐ธ implement EditorApi injectable for Editor cursor methods (779b891)
- json-crdt-peritext-ui: ๐ธ add 'line-vert' cursor movement unit (9d9d4f6)
- json-crdt-peritext-ui: ๐ธ add ability to compute point x coordinate on the screen (9271737)
- json-crdt-peritext-ui: ๐ธ add ability to move caret to soft line wrap position (b0660fa)
- json-crdt-peritext-ui: ๐ธ add ability to move point-by-point using keyboard (b17c4ba)
- json-crdt-peritext-ui: ๐ธ add right EOL indicator to debug mode and fix char pos off (946900f)
- json-crdt-peritext-ui: ๐ธ compute previous line caret position (87edfe7)
- json-crdt-peritext-ui: ๐ธ create helper for debugging overlays (6eb56a8)
- json-crdt-peritext-ui: ๐ธ display debug button in top toolbar (1c1ab58)
- json-crdt-peritext-ui: ๐ธ display word just locations in debug mode (558f171)
- json-crdt-peritext-ui: ๐ธ hide cursor inline debug label (d574fb0)
- json-crdt-peritext-ui: ๐ธ highlight characters immediately adjacent to caret (e4107c1)
- json-crdt-peritext-ui: ๐ธ implement utility for retrieving line bounds (93a31ba)
- json-crdt-peritext-ui: ๐ธ improve debug label display (2b3387e)
- json-crdt-peritext-ui: ๐ธ improve display of block debug labels (06ae980)
- json-crdt-peritext-ui: ๐ธ improve display of caret adjacent characters (b9c547b)
- json-crdt-peritext-ui: ๐ธ improve display of debug labels, add small label ability (fe6d0b1)
- json-crdt-peritext-ui: ๐ธ introduce concept of rendering surface API handle (834f7dc)
- json-crdt-peritext-ui: ๐ธ make debug plugin enabled state reactive (5c19869)
- json-crdt-peritext-ui: ๐ธ pass through caret Point position (f7def34)
- json-crdt-peritext-ui: ๐ธ render caret anchor point (346a41a)
- json-crdt-peritext-ui: ๐ธ render prev and next line caret destination in debug mode (d0dad61)
- json-crdt-peritext-ui: ๐ธ render soft line beginning in debug mode (a1b7f98)
- json-crdt-peritext-ui: ๐ธ show debug labels over inline formatting (f0b5e0e)
- json-crdt-peritext-ui: ๐ธ show previous and next line boundaries (3f8a636)
- json-crdt-peritext-ui: ๐ธ use the new in debug highlighting (c73013e)
- json-crdt-peritext-ui: ๐ธ wire in vertical cursor movement using keyboard (966c017)