Skip to content

Latest commit

 

History

History
1856 lines (970 loc) · 116 KB

CHANGELOG.md

File metadata and controls

1856 lines (970 loc) · 116 KB

Changelog

All notable changes to this project will be documented in this file. See standard-version for commit guidelines.

0.23.4 (2024-05-09)

Bug Fixes

  • cannot use middle mouse button to scroll (d0e7f4c)
  • update jsonrepair and other dependencies (7b9063f)

0.23.3 (2024-05-06)

Features

  • update codemirror, ajv, fontawesome, jsonrepair, and dev dependencies (7bd08e7)

Bug Fixes

  • text mode loads partially scrolled down (56e18ee)

0.23.2 (2024-04-17)

Bug Fixes

  • #423 error about an invalid selection in text mode when clearing the contents (5ed8a86)
  • change text "fullscreen" to "full screen" (a56415f)
  • editor not getting focus when clicking in an empty area in table mode (0e74043)

0.23.1 (2024-03-28)

Features

Bug Fixes

  • support pressing Esc to close the CopyPasteModal (fb77efe)
  • update dependency vanilla-picker and update devDependencies (b0ba13f)

0.23.0 (2024-03-13)

⚠ BREAKING CHANGES

  • The onRenderContextMenu callback now also triggers when the editor is readOnly, so you now have to handle that case in the callback.

Features

  • #399 enable onRenderContextMenu when the editor is readOnly (#411) (db3fb57)
  • extend the contexts of onRenderMenu and onRenderContextMenu with a prop readOnly (#411) (4df5548)
  • search and replace in table mode (#415) (0860f3e)

Bug Fixes

  • cannot convert an Array into an Object (4b3af48)
  • context menu not closing when clicking a button in a dropdown menu (e2c419a)
  • disable all relevant context menu buttons when readOnly (see #411) (c66ee09)
  • disable wrapped line indent when using tabs because that doesn't work well (2a067e1)
  • editor not getting focus when clicking inside the welcome screen of table mode (919a31e)
  • insert an object or array in tree mode in an empty document not working (5382e1c)
  • status bar not visible when caret is at the start of the document (dca87f0)
  • table row actions not disabled in the table mode context menu when having an empty document (7123249)

0.22.0 (2024-03-01)

⚠ BREAKING CHANGES

  • The onChange callback is no longer triggered on programmatic changes via a two-way binded content or via methods .update(), .set(), and .patch().

Features

  • do not trigger onChange on programmatic changes (#410) (201f602)
  • document the requirement for immutable changes in content (see #318) (0545e64)
  • update dependencies (a.o. fixing an issue with wrapping tab indented lines) (1bd92e7)

Bug Fixes

  • add missing property onSelect to interface JSONEditorPropsOptional (4087e3f)
  • improve the logic to determine whether a JSON document needs formatting (bb15bd1)
  • onCreateMenu and onCreateContextMenu possibly applying mutated changes without returning (da8fd60)

0.21.6 (2024-02-15)

Features

  • upgrade codemirror, jsonrepair, svelte, svelte-simple-modal, and dev dependencies (3255741)

Bug Fixes

  • improve the logic to determine whether a JSON document needs formatting (0ca8a49)
  • type definition of JSONEditorPropsOptional.flattenColumns (3a28757)
  • type definition of RenderMenuContext.mode (51a7133)

0.21.5 (2024-02-05)

Features

  • implement support for vanilla JS components in onRenderValue using Svelte Action (#398) (db482ea)

Bug Fixes

  • #392 property onRenderContextMenu missing in JSONEditorPropsOptional (ee9b4c9)
  • #401 original data can be mutated by the TransformModal previews (337f812)
  • consistently use selectedJson in the TransformModal (ac31a79)
  • use flex-start instead of start for align-items (#395) (b8be1a5)

0.21.4 (2024-01-24)

Bug Fixes

  • #381 method .update() throwing an exception when calling directly after creating the editor (75c3b5e)
  • update @codemirror/view and dev dependencies (3f2afef)

0.21.3 (2024-01-19)

Bug Fixes

  • #381 method set() sometimes throwing an error in text mode (2dc62f0)
  • #391 editor not supporting Object.create(null) as object (918a126)
  • update dependencies and devDependencies (0d49b66)

0.21.2 (2024-01-10)

Features

  • provide the current selection in onRenderContextMenu (#376) (2068823)
  • update deps codemirror, jsonrepair, sass, svelte-awesome, svelte-select, and more (63ac195)

Bug Fixes

  • #379 ContextMenu not closing after using a custom button via onRenderContextMenu (2a83137)
  • #386 add a standalone.d.ts file to the vanilla-jsoneditor package (4f8fa55)
  • improve performance of isColor detection (see #378) (514f6ca)
  • improve performance of isColor detection for long text values (See #378) (b1a04fc)
  • update dependency jsonrepair (ec23521)

0.21.1 (2023-12-20)

Bug Fixes

  • add a module export again to the svelte-jsoneditor package (0c695a4)

0.21.0 (2023-12-20)

⚠ BREAKING CHANGES

  • The type Content is changed from { json: JSONValue} | { text: string } into { json: unknown } | { text: string }, and all other types having JSONValue changed to unknown. The return type of JSONParser.stringify changed from string to string | undefined.

Features

  • change the type of json from JSONValue to unknown (#371) (dc4671a)
  • implement onRenderContextMenu (fix #82) (e53a620)
  • upgrade to upgrade @sveltejs/kit@2, vite-plugin-svelte@3, vite@5, and vitest@1 (#374) (b83e321)

0.20.0 (2023-12-06)

⚠ BREAKING CHANGES

  • When using vanilla-jsoneditor directly in the browser, you now have to import { JSONEditor } from 'vanilla-jsoneditor/standalone.js' instead of import { JSONEditor } from 'vanilla-jsoneditor'. For projects with a build setup (React, Vue, Angular) it should be a drop-in replacement.
  • CSS variables are no longer defined globally, and the file themes/jse-theme-default.css is now removed (replaced by an internal defaults.scss). The provided dark theme still works as-is. The CSS variable --jse-modal-theme-color has been renamed to --jse-modal-editor-theme-color, and --jse-modal-theme-color-highlight has been renamed to --jse-modal-editor-theme-color-highlight.

Features

  • export one bundle with and one without external dependencies in vanilla-jsoneditor (#353) (9c1ad15)
  • update dependencies codemirror, fontawesome, svelte-awesome, and dev dependencies (75596ae)
  • use SCSS variables internally (#344) (ec4b788)

Bug Fixes

  • allow isEditing property to be true when in readOnly mode (see #342) (3b0bdb7)
  • cleanup a console.log (005f189)
  • make argument element of helper function onEscape optional (6eb9b82)
  • styling issue with a button text color in dark mode (4ff40f9)

0.19.0 (2023-11-21)

⚠ BREAKING CHANGES

  • Changes in the package exports

Features

  • additional classes for improved CSS targeting (4392f2c)
  • package exports not working in Jest (77697b3)

Bug Fixes

0.18.13 (2023-11-13)

Features

  • update dependencies (jsonrepair, @codemirror/autocomplete) (691072a)

0.18.12 (2023-11-08)

Features

  • update to jsonrepair@3.4.0 (9ede6ea)

Bug Fixes

  • #331 changing contents during the onChange callback throws a selection error (6e511fa)
  • #337 some menu styling issues (2eec4e6)
  • onChange event not fired after calling editor.set(...) (see #318) (afaca42)
  • update codemirror and a couple of devDependencies (7173333)
  • use mono font in JSON Preview (b07d08d)

0.18.11 (2023-10-31)

Features

  • update codemirror, jsonrepair, and other dependencies (90d1b77)

Bug Fixes

  • #321 editor not accepting JSON created in a different JavaScript realm like an iframe (06fb84c)
  • bottom margin of welcome screen in tree and table mode (7d1eb02)
  • editor sometimes losing track on whether it has focus (410f997)
  • svelte giving warnings about creating components with unknown properties (627170a)

0.18.10 (2023-10-17)

Bug Fixes

  • rename "whole document" to "document root" and "whole item" to "item root" to prevent confusion (2699b71)

0.18.9 (2023-10-11)

Bug Fixes

  • unused CSS selector warnings in Svelte (23b82cc)

0.18.8 (2023-10-02)

Bug Fixes

  • regression since v0.18.17 not allowing to put the cursor halfway the value when editing a value (3e34e8d)

0.18.7 (2023-09-28)

Bug Fixes

  • #315 cannot paste text in the search box input field in tree mode (a9a2dc3)

0.18.6 (2023-09-27)

Bug Fixes

  • broken import due to missing file extension (0f734c5)

0.18.5 (2023-09-27)

Features

  • update dependencies, most notably jsonrepair and codemirror (f6306b0)

Bug Fixes

  • #312 "Show me" button throwing an error when no position was provided in the error message (d839e95)
  • #312 the "Show me" button throwing an error when no position was provided in the error message (36d7934)
  • minor styling issues with modals (97d2d94)
  • update dependencies, most notably codemirror and jsonrepair (439eb8a)

0.18.4 (2023-09-19)

Features

  • add indentation on wrapped lines (#295) (367accf)
  • improve welcome screen with action buttons to create an array or object (d4e301f)

Bug Fixes

  • collapsed items section not removed when empty (3d3ad45)
  • creating an array or object or pasting content in the welcome screen not working (7def339)
  • editor not getting focus in table mode when clicking inside an empty area (609983d)
  • select active element on undo only when existing (e5beebf)
  • selection moving to value after renaming the last key of an object (ac31282)
  • some issues with navigating in tree mode using arrow keys (a3f9c92)
  • when inserting a new array or object in an empty editor, set selection inside the array/object (821933e)
  • when inserting a new value by typing somewhere, it doesn't initially have the right color (9f6ea35)

0.18.3 (2023-08-30)

Bug Fixes

  • restore the selection when going back when having multiple JSONEditor modals (085a9d3)
  • sometimes multiple cells selected in Table mode (c7705f6)

0.18.2 (2023-08-25)

Bug Fixes

  • #304 ReadonlyValue.svelte wrongly importing two moved types (ed8b058)

0.18.1 (2023-08-25)

Bug Fixes

  • #300 change the homepage in package.json to the Github repo (b1977e5)
  • #304 missing type JSONPointer internally (e23abbc)

0.18.0 (2023-08-21)

⚠ BREAKING CHANGES

    • Upgraded to Svelte 4 providing improved TypeScript types.
  • Dropped re-exporting types and utility functions from immutable-json-patch and svelte. Instead, import them directly from the library itself.
  • Dropped deprecated types FontAwesomeIcon (use IconDefinition instead), DropdownButtonItem, MenuButtonItem, MenuSeparatorItem, MenuSpaceItem, and typeguard isMenuSpaceItem.
  • The vanilla-package does not embed types of dependencies anymore and instead, imports the dependencies and use the types from there.
  • Drop official support for Node.js 16

Features

  • describe breaking changes (962dbf0)
  • upgrade to Svelte 4, improve TypeScript types (4d0451e)

0.17.10 (2023-08-16)

Bug Fixes

  • #301 TransformModal broken (regression since v0.17.9) (b13a52f)

0.17.9 (2023-08-14)

Bug Fixes

  • #163 implement method .select() and callback onSelect (#299) (69a9698)
  • export all typeguard functions like isMenuButton (53e671d)
  • resolve failed import in example "custom menu buttons" (#287) (8da09a4)

0.17.8 (2023-06-21)

Bug Fixes

  • method scrollTo not always expanding an invisible section of an array (bda3922)
  • update dependencies (codemirror, jsonrepair, sass, and others) (3054f96)

0.17.7 (2023-06-13)

Bug Fixes

0.17.6 (2023-06-12)

Features

  • update dependencies and devDependencies (fc8ef83)

Bug Fixes

  • let createAjvValidator throw an error when the JSON schema contains an error (7cfb233)
  • unused CSS selector ".jse-column-header span.jse-column-sort-icon" (51c1d54)

0.17.5 (2023-06-08)

Bug Fixes

  • keep focus on the editor after clicking a message action button (aeb5d8f)
  • start typing in an empty document in tree mode throwing an error (747f2b4)
  • throw an error when a custom Ajv instance provided via onCreateAjv is configured wrongly (78771cd)

0.17.4 (2023-05-18)

Bug Fixes

  • #275 flush debounced changes in text mode before blur and destroy (e8270e9)

0.17.3 (2023-05-05)

Features

  • update dependencies (jsonrepair and dev dependencies) (d2c424a)

0.17.2 (2023-05-03)

Features

  • update dependencies (codemirror, sass) (aeb9af5)

Bug Fixes

  • #238 editor scrolls the browser page to top on Safari when getting focus (20129f8)

0.17.1 (2023-04-17)

Features

  • make the option askToFormat configurable (fix #252) (5e5494f)

Bug Fixes

  • #142 cannot select contents in readOnly text mode (99922dc)
  • #251 enable search in text mode when readOnly (50f8889)
  • update dependencies (jsonrepair and @codemirror/view) (5ff1306)

0.17.0 (2023-04-17)

⚠ BREAKING CHANGES

  • The pointers to entry files and the exports map in the package.json file have been changed. This is just an under-the-hood change for most use cases.

Features

  • change stringifyJSONPath and parseJSONPath to have a more human friendly output (f0f8b80)
  • update dependencies and devDependencies (f32281f)
  • update dependencies including @sveltejs/package, changing the package structure (#258) (78603d4)

0.16.1 (2023-03-24)

Bug Fixes

  • change the row numbering in table mode to zero based for consistency (d923268)
  • give the optional rootPath option of transform a default value (b38db6c)

0.16.0 (2023-03-15)

⚠ BREAKING CHANGES

  • Methods set, update, patch, expand, acceptAutoRepair, scrollTo, focus, refresh, updateProps and destroy are now async and return a Promise.

Features

  • implement the public method scrollTo for mode table (a615548)
  • update dependencies svelte-awesome and svelte-select and some devDependencies (05acdcf)

Bug Fixes

  • #189 setup eslint to enforce .js file extensions on all imports (cf37451)
  • #236 change the public methods to return a Promise`, resolving after the editor is re-rendered (dbfb1a6)
  • #237 parse error in case of empty text, and parse error not cleared on change (31e9e50)

0.15.1 (2023-03-01)

Bug Fixes

  • missing .js extension on import (ae66310)

0.15.0 (2023-03-01)

⚠ BREAKING CHANGES

  • when there are no validation errors, the return value of method validate() and parameter contentErrors in callback onChange is now null instead of { validationErrors: [] }.

Features

  • faster getColumns without sampling (0937718)
  • sample the array to detect headers (fast) and have a button to enforce checking all items (452d168)

Bug Fixes

  • #226 return null instead of { validationErrors: [] } when there are no validation errors (395dbd1)
  • #231 code mode grabbing focus on creation (5df57ee)
  • update dependencies and devDependencies (9275c34)

0.14.10 (2023-02-24)

Features

  • implement an "Edit row" action in the context menu of table mode (4211a14)

Bug Fixes

  • #226 export typeguards isContentParseError and isContentValidationErrors (0c8189f)
  • table mode broken due to a wrong import (regression since v0.14.6) (1e48fe5)

0.14.9 (2023-02-22)

Bug Fixes

  • throw an error when forgetting to end a Lodash _.chain(...) with .value() (f76e4e8)

0.14.8 (2023-02-22)

Bug Fixes

  • ensure dark indentation markers when using dark theme (f7b936e)

0.14.7 (2023-02-22)

Bug Fixes

  • some imports missing a .js extension (5493931)

0.14.6 (2023-02-22)

Features

  • add indentation guide line in text mode (fixes #225) (09f2575)
  • change the JavaScript and Lodash query languages to generate immutable, chained queries (3e92c10)

Bug Fixes

  • jmespathQueryLanguage not working with non-native JSON data types like LosslessNumber (e2c8e3d)

0.14.5 (2023-02-15)

Features

  • update dependencies and devDependencies (d0e2568)

Bug Fixes

  • styling issues of the selection dropdown in dark mode (886330e)
  • the "Pick" field in the Transform Wizard not restoring the previously selected fields correctly (635f662)

0.14.4 (2023-02-03)

Features

  • add a "Show me" button to the message of the parse error (347910a)
  • show a message "Do you want to format the JSON?" when loading compact JSON (42c6c95)

Bug Fixes

  • #219 horizontal scrollbar visible in search box (d3ffdef)
  • improve styling of the message text (e8a86d9)

0.14.3 (2023-01-27)

Bug Fixes

  • creating a new object or array by typing { or ] broken (regression since v0.14.1) (f7b5f92)

0.14.2 (2023-01-26)

Features

  • expose utility actions resizeObserver and onEscape (c705ea2)

0.14.1 (2023-01-26)

Features

  • implement duplicating, inserting, and removing rows in table mode (9b691d1)

Bug Fixes

  • close only the top modal instead of all modals on Escape (b102843)
  • editor cannot get focus by clicking selected key or value (7e83a36)
  • improve detection of column names in large arrays with non-homogeneous data (5704325)
  • maintain order of columns after sorting the contents (23bbf56)
  • multi-select via Shift+Click not working in tree mode (aafd933)

0.14.0 (2023-01-20)

⚠ BREAKING CHANGES

  • Callback changed from onRenderMenu(mode, items) to onRenderMenu(items, { mode, modal }).

Features

  • add more context information to onRenderMenu: mode and modal (fbbdb87)

0.13.1 (2023-01-20)

Bug Fixes

  • inserting a new character uppercase (d836096)

0.13.0 (2023-01-20)

⚠ BREAKING CHANGES

  • CSS variable --jse-selection-background-light-color is renamed to --jse-selection-background-inactive-color

Features

  • more flexible styling for contents in tree mode with new CSS variables (e29f85e)

Bug Fixes

  • update dependencies and devDependencies (008dcd6)

0.12.0 (2023-01-18)

⚠ BREAKING CHANGES

  • The TypeScript definitions of createAjvValidator and renderJSONSchemaEnum are changed: passing JSONSchema and JSONSchemaDefinitions instead of JSONValue.

Bug Fixes

  • #210 renderJSONSchemaEnum not working enums inside an array (887bf23)
  • cannot click the bottom right quarter of the context menu pointer (b176f01)
  • minor updates of dependencies and devDependencies (c654ed7)
  • remove test files from the svelte-jsoneditor npm package (fe21ffb)
  • switch from ajv-dist to ajv again (works ok now with rollup and vite) (f43a5fb)
  • update dependencies and dev dependencies (7229ae6)

0.11.8 (2023-01-07)

0.11.7 (2023-01-07)

0.11.6 (2023-01-07)

Bug Fixes

  • upgrade to jsonrepair@3.0.2 and lossless-json@2.0.5 containing an issue with unicode characters (22cb40e)

0.11.5 (2022-12-20)

Features

  • upgrade all dependencies, most notably svelte-select@5, @sveltejs/kit@1.0.0, vite@4.0.2` (be135ee)
  • upgrade to jsonrepair@3.0.0, improving performance and repairing more cases (8a315cf)

0.11.4 (2022-12-14)

Bug Fixes

  • method scrollTo not returning a promise anymore (regression since v0.11.0) (524799f)

0.11.3 (2022-12-13)

Bug Fixes

  • #206 remove the fixed width of the mode toggle buttons (8e0cda3)
  • #96 add missing properties to JSONEditorPropsOptional (410fd80)
  • #96 make all properties of JSONEditorPropsOptional optional (4bc33e8)
  • cannot edit values of non-existing nested objects in table mode (8127571)
  • improve landing page message in table mode when opening an array without values (f238a92)

0.11.2 (2022-12-09)

Bug Fixes

  • #204 unresolvable imports with .ts extension (d45828b)

0.11.1 (2022-12-07)

Bug Fixes

  • table mode landing page not handling an empty array correctly (4b4d039)

0.11.0 (2022-12-07)

⚠ BREAKING CHANGES

  • In the TransformModalCallback, the property selectedPath is renamed to rootPath. The css variables --jse-context-menu-button-* are renamed to --jse-context-menu-pointer-*.

Features

  • create a landing page for non-array content in table mode (558d8c1)
  • implement table mode #156 (#202) (6fde147)

Bug Fixes

  • #187 duplicate id's of svg's (b95ac82)
  • support opening Sort and Transform modals from a JSONEditor modal (4652c1f)
  • unnecessary z-index on the context menu pointer (5a6b2f6)
  • z-index issue with the table header (8f6a7c7)

0.10.4 (2022-12-05)

Bug Fixes

  • repair modal accidentally showing a mode toggle (798f668)
  • update to lossless-json@2.0.3, fix throwing an error in case of bad characters like a newline (7f7b59e)

0.10.2 (2022-11-17)

Bug Fixes

  • limit the number of rendered validation errors in the overview list (b0ae546)
  • reset the selection instead of clearing it when the selected contents are removed (7c937f5)

0.10.1 (2022-11-10)

Bug Fixes

  • improve highlighting color of search matches in dark mode (fb7bdd9)

0.10.0 (2022-11-10)

⚠ BREAKING CHANGES

  • The signature of createAjvValidator is changed from up to three unnamed arguments createAjvValidator(schema, schemaDefinitions, ajvOptions) to a single object with options createAjvValidator({ schema, schemaDefinitions, ajvOptions }).

Features

  • implement onCreateAjv callback for the createAjvValidator plugin (da3d76c)

Bug Fixes

  • #188 selected text not visible in text mode when in dark mode (41856da)
  • improve highlighting color of search matches in dark mode (b85c260)
  • negative numbers like -4.1 not highlighted with the right color in tree mode (071c3f9)

0.9.2 (2022-11-04)

Bug Fixes

  • incorrect cursor style for ColorPicker & BooleanToggle (#184) (12e60e5)
  • remove root $ prefix from the path in the Sort and Transform modal (50ce3f0)
  • when switching to a different JSON parser, stringify and parse the contents again (2cece4e)

0.9.1 (2022-11-02)

Bug Fixes

  • export and document all selection utility functions again (reverting their removal in v0.9.0) (0dd1dee)
  • update codemirror dependencies and all devDependencies (77cbb6d)

0.9.0 (2022-10-25)

⚠ BREAKING CHANGES

  • Not exporting a set of undocumented utility functions anymore: isValueSelection, isKeySelection, isInsideSelection, isAfterSelection, isMultiSelection, isEditingSelection, createValueSelection, createKeySelection, createInsideSelection, createAfterSelection, createMultiSelection. And not exporting components SortModal and TransformModal anymore.

Features

  • export utility functions isContent, isTextContent, isJSONContent, toTextContent, (d21fc6d), closes #173

Bug Fixes

  • #174 the OnChange signature containing an any type instead of OnChangeStatus (c2d626f)
  • any type in JSONPathParser.parse type definition (19363b4)

0.8.0 (2022-10-24)

⚠ BREAKING CHANGES

  • The custom FontAwesomeIcon is now replaced with IconDefinition from FontAwesome

Bug Fixes

  • #169 use IconDefinition from FontAwesome instead of a custom interface FontAwesomeIcon (9d693f9)

0.7.11 (2022-10-18)

Features

  • convert primitive values like a string into an object or array holding the value (67d78f0), closes #160

Bug Fixes

  • correctly handle property names containing spaces and special characters in JMESPath (8e7d3e8)
  • errors not displayed at the right position in text mode when escapeUnicodeCharacters=true (8e7be40)
  • improve error message when using content.text wrongly (see #166) (cdad5fb)
  • revert dev dependency rollup-plugin-dts to v4 too to have it work with rollup v2 (2b183c7)

0.7.10 (2022-10-13)

Features

  • implement a path editor in the Navigation Bar (#164) (9692634)

Bug Fixes

  • #162 clicking the color picker causes a form submit (42f2586)
  • show paths in Sort modal as a JSONPath (dot separated) instead of JSONPointer (3cde53d)

0.7.9 (2022-09-30)

Bug Fixes

  • #123 use the main parser instead of validationParser to determine any parse errors (c18ede3)

0.7.8 (2022-09-29)

Bug Fixes

  • #153 code using a missing dependency lossless-json (4a34214)

0.7.7 (2022-09-29)

Features

  • implemented options parser and validationParser to support alternative JSON parsers like lossless-json (#151) (b47368b)

0.7.6 (2022-09-28)

Bug Fixes

  • #149 double quote and unicode characters of control characters not being escaped correctly (ab213e6)
  • escaping unicode characters not triggered when loading a document in text mode (9dedca0)

0.7.5 (2022-09-21)

Bug Fixes

  • #98 make copy compatible on non-secure origins and older browser (#144) (d43a646)

0.7.4 (2022-09-12)

Bug Fixes

  • #130 do not open mobile keyboard when the editor is readonly (1c669fa)
  • #138 text of tooltip in text mode not readable when using a dark theme (5e7790e)
  • #139 cannot use numpad keyboard to enter numbers in tree mode (e2383d9)
  • inserting non capital case characters (861f36d)
  • let text mode not change json contents directly into text contents, and prevent freezing when loading a large document (#141) (28b2b56)

0.7.3 (2022-09-09)

Bug Fixes

  • circular dependency caused by an unused import (65a4f5d)

0.7.2 (2022-09-09)

Features

  • update all dependencies (dff38e3)

Bug Fixes

  • mark the package as side-effects free, allowing better optimization in bundlers (23c1816)

0.7.1 (2022-09-05)

Bug Fixes

  • onChange event being fired when creating the editor in tree mode (83e22f7)

0.7.0 (2022-09-01)

⚠ BREAKING CHANGES

  • Formerly, onChange did only fire after a change made by a user. Now, onChange also fires after programmatic changes: when changing props or calling patch, set, update.

Features

  • always fire onChange, and let onPatch return a PatchResult (fixes #128) (fb45518)
  • update dependencies (#135) (c2e8e0a)

Bug Fixes

  • expanded state sometimes being reset when syncing content (a6cce69)

0.6.6 (2022-08-29)

Bug Fixes

  • mobile keyboard opening all the time when selecting something in the editor on a touch device (c2a0937)

0.6.5 (2022-08-29)

Features

  • #129 allow passing additional options to createAjvValidator (a66f230)

Bug Fixes

  • #131 backslash character not being escaped when escapeControlCharacters: true (#133) (1657d9a)

0.6.4 (2022-08-19)

Bug Fixes

  • #124 view jumping up when editor gets focus (b94f531)

0.6.3 (2022-08-16)

Bug Fixes

  • minor update of all dependencies (b61778a)

0.6.2 (2022-07-28)

Bug Fixes

  • revert the ES workaround for [@fortawesome](https://github.com/fortawesome) again, it doesn't work anymore (69533af)

0.6.1 (2022-07-28)

Bug Fixes

  • make sure all imports in index.ts have a .js extension (52431f6)
  • re-introduce the ES workaround for [@fortawesome](https://github.com/fortawesome) again (2a7284c)

0.6.0 (2022-07-28)

⚠ BREAKING CHANGES

  • The signature of onChange is changed from onChange(updatedContent, previousContent, patchResult) to onChange(updatedContent, previousContent, { contentErrors, patchResult }).

Features

  • implement validate method and pass contentErrors via onChange, fixes #56 (#119) (9847382)

Bug Fixes

  • #118 cursor position in TextMode being reset after changing validator (e580e26)

0.5.0 (2022-07-11)

⚠ BREAKING CHANGES

Features

  • move bundle into a separate npm package vanilla-jsoneditor (#114) (e865be3)

0.4.0 (2022-07-08)

⚠ BREAKING CHANGES

  • The 'code' mode has been renamed to 'text' mode.
  • The type JSONPath is changed from Array<string | number> to Array<string>, and some TypeScript types now come from immutable-json-patch.

Features

Bug Fixes

  • #105 disable dropdown button when all items are disabled (8698606)

  • #107 dependency issue with fortawesome building svelte-kit (7ad8e95)

  • #110 ContextMenu closes when hovering a validation error (#112) (46424bb)

  • generate a valid sourcemap again (7981a99)

  • make svelte a dependency, its type definitions are needed in TypeScript projects (see #19) (acb3acf)

  • remove the "powered by CodeMirror" text, is listed in readme and webapp footer instead (89d661a)

  • truncate text preview of invalid JSON in tree mode (67f5790)

  • make sure the next version will be marked as a breaking change (0737b6c)

0.3.60 (2022-06-09)

Bug Fixes

  • #55 support tabs for indentation, introduce new option tabSize (7e96e9a)

0.3.59 (2022-06-08)

Bug Fixes

  • #91 interface OptionalJSONEditorProps missing in npm package (23bd690)
  • invert the color of warning text to make it better readable (410d91e)
  • render the status bar of code mode above parse errors and validation warnings (d765cb0)
  • update dependencies and devDependencies (9aa49b6)

0.3.58 (2022-05-31)

Features

  • implement StatusBar in code mode (4bf271a)

0.3.57 (2022-05-31)

Bug Fixes

  • make active line color a lighter than the selection color in code mode (1d26fc7)

0.3.56 (2022-05-30)

Bug Fixes

  • disable broken sourcemap for the time being (8239683)

0.3.55 (2022-05-30)

Bug Fixes

  • editor not having a border when welcome screen is displayed (87e5da9)
  • expanded state being reset when updating the contents (27f61f2)

0.3.54 (2022-05-27)

Bug Fixes

  • do not throw an exception when using .refresh() in tree mode (6d5646d)
  • improve typescript definitions (#86) (a7d759a)

0.3.53 (2022-05-23)

Bug Fixes

  • index.js files containing broken imports to ts files (0c4a9f0)

0.3.52 (2022-05-23)

Bug Fixes

  • index.js file containing broken references to .ts files (regression since v0.3.51) (36959ee)

0.3.51 (2022-05-23)

Features

  • implement a method .refresh() to force rerendering of the code editor (545426a)

Bug Fixes

  • improve the behavior of the arrow quickkeys to navigate the context menu (#83) (76b177f)
  • maintain the enforceString status after replacing a value (4d1e9e3)

0.3.50 (2022-05-20)

Bug Fixes

  • #79 browser scrolling the editor into view on load (42fe818)
  • #81 clear navigation path when iterating through search results (434c66d)
  • cannot start typing characters to insert a value from the welcome screen (2bc34e2)
  • editor losing focus after selecting a color with the color picker (8cb912a)
  • editor losing focus after toggling a boolean value (ea52484)
  • give editor focus when the user starts dragging the selection (9bd28db)
  • give navigation bar text a brighter color in dark theme (42be0e7)
  • improve Transform Wizard to work better with numbers, booleans, and null (ebc076a)
  • keep focus in editor when closing color picker via ESC (0b75001)
  • paste as JSON helper message not working (0f803b2)

0.3.49 (2022-05-13)

Features

  • Support for custom styling using css variables

Bug Fixes

  • #69 cannot build the library after a clean install (32a9b73)
  • #70 implement quickkey Shift+Enter to go to the previous search result (8f1917f)
  • #71 describe the differences with josdejong/jsoneditor in the README.md (b9a54e9)
  • context menu button jumping around whilst selecting multiple expanded objects (d4a3cbf)
  • exception thrown when clicking left from a selection (e7e8094)
  • expandAll not working (37c6256)
  • right click in welcome screen did not open the context menu (7934e9a)
  • selection and expanded state not always stored correctly in history (#73) (702fba1)

0.3.48 (2022-04-26)

Bug Fixes

  • quickkeys [ and { not working in welcome screen (regression since v0.3.47) (8a808a4)

0.3.47 (2022-04-26)

Bug Fixes

  • allow defining multiple functions in the query of the Transform modal (31e9b8b)
  • be able to right-click on top of a property/item tag to open the context menu (a033abf)
  • context menu button of insert area sometimes flickering (282e31d)
  • full document being selected when clicking scrollbar or main menu when there is no selection (5109de1)
  • fully expand an inserted structure (a22f405)
  • improve the Javascript and Lodash queries generated via the wizard (9666120)
  • sort/transform the contents of the key instead of the parent when a key is selected (e761a79)

0.3.46 (2022-04-22)

Features

  • show tip in ContextMenu when it is opened via the ContextMenuButton or the main menu (b9c38d2)

Bug Fixes

  • floating context menu button not rendered when a key is selected (1ec4ed9)

0.3.45 (2022-04-21)

Bug Fixes

  • expose method findElement(path) (3930137)

0.3.44 (2022-04-21)

Features

  • expose method findElement(path) (655a790)

0.3.43 (2022-04-20)

Bug Fixes

  • disable insert buttons in ContextMenu when root is selected (regression introduced in v0.3.41) (1fe6f48)

0.3.42 (2022-04-20)

Bug Fixes

  • right-click right from a value did not select the insert area before opening the context menu (215eb04)

0.3.41 (2022-04-20)

Features

  • change insert buttons into convert buttons, converting between objects/arrays/text (see #61) (f413066)

Bug Fixes

  • change button text to "Copy compacted" for consistency (396a274)
  • change styling of the mode toggle button (code/tree) (28b9c6c)
  • use flex-start and flex-end to fix warnings in environments like tailwindcss (#43) (e1e0ddd)

0.3.40 (2022-04-15)

Bug Fixes

  • importing vanilla-picker wrongly (ddecbf1)

0.3.39 (2022-04-15)

Bug Fixes

  • #66 import color picker dynamically since it cannot render server side (b6041bb)

0.3.38 (2022-04-13)

Features

  • select contents within brackets using double-click (#65) (e73970f)

Bug Fixes

  • show prop and item instead of plural when there is only one property or item (1f1725f)

0.3.37 (2022-04-12)

Bug Fixes

  • clicking a button to switch mode did toggle instead of selecting the clicked mode (0451001)

0.3.36 (2022-04-12)

Bug Fixes

  • change code mode toggle into group buttons [tree|code] (see #59) (ad33b26)
  • expand all extracted contents (when not too large) (d4ae8f4)
  • position search box in code mode on top (#62) (f0a1feb)
  • update all devDependencies (13331c7)

0.3.35 (2022-04-11)

Bug Fixes

  • improve the rendering performance (#58) (84c6eb3)

0.3.34 (2022-04-08)

Features

  • implement method acceptAutoRepair (d037a7e)

0.3.33 (2022-04-07)

Bug Fixes

  • make sure JavaScript and Lodash queries return null and never undefined (73ae90c)

0.3.32 (2022-04-06)

0.3.31 (2022-04-06)

Bug Fixes

  • styling tweaks in the vertical sizing of the TransformModal (3f87a8a)

0.3.30 (2022-04-06)

Bug Fixes

  • be resilient against missing or disabled localStorage (52f76b7)
  • disable Search menu item when there is no contents (e687229)
  • do not show welcome options when editor is readOnly (eb92d75)
  • method editor.transform() broken (regression since v0.3.29) (299dc78)
  • styling tweaks in the TransformModal (3983918)

0.3.29 (2022-04-06)

Features

  • reorganize Tranform modal, show original data alongside the preview (#54) (9b6b79e)

Bug Fixes

  • cannot select a key or value when clicking inside the selection (331254a)
  • disable Auto repair buttons when the editor is readOnly (0a5eca4)
  • dragging selection not disabled in readOnly mode (eac069a)
  • solve circular dependency to TreeMode in the Transform modal (71f3511)
  • some styling fixes in the Sort modal (4366a0f)
  • undo/redo buttons in code mode not updated when contents changed externally (5778540)
  • use ajv-dist instead of ajv to solve rollup issues (a663a1b)

0.3.28 (2022-04-04)

Bug Fixes

  • could not select items when starting to drag right from an item (c5de4d5)
  • insert area visible whilst selecting or dragging (5d1e68f)

0.3.27 (2022-04-04)

Bug Fixes

  • when pasting, expand all pasted contents by default when small (ec9703c)

0.3.26 (2022-04-04)

Bug Fixes

  • fully expand small JSON documents by default (d94701b)
  • pasted or replaced contents not being expanded (4e86440)
  • update dependencies (d9eb233)

0.3.25 (2022-03-22)

Features

  • drag selected contents up and down (#50) (c3c4113)

Bug Fixes

  • validate in code mode not always triggering (246cf67)

0.3.24 (2022-03-16)

Bug Fixes

  • component EditableDiv did not close when losing focus to another element on the same page (a8abe71)
  • define font for linting messages (8a5456f)
  • editor layout does overflow when opening a large minified document in code mode (#48) (5574d38)
  • implement quick keys Ctrl+F and Ctrl+H to open the find dialog whilst editing a key or value (e608486)
  • minor styling fix (1399dd8)
  • styling tweaks (1d15f2b)
  • wrapping line in Copy dropdown menu (61b10ac)

0.3.23 (2022-03-08)

Bug Fixes

  • do not use dynamic imports (b5ca813)

0.3.22 (2022-03-08)

Bug Fixes

  • publish missing generated/* folder on npm too (ec391b2)
  • publish missing generated/* folder on npm too (a0195cd)

0.3.21 (2022-03-08)

Features

0.3.20 (2022-03-07)

Bug Fixes

  • drop viteOptimizeDeps (in src/config.js) and remove it from the docs: not needed anymore (1c64009)

0.3.19 (2022-03-07)

Bug Fixes

  • add generated folder to .prettierignore (e15ee93)
  • diff-sequences export not playing nice with Vite (f87a7b3)

0.3.18 (2022-02-09)

Bug Fixes

  • race condition when toggling mode (2a97ab5)
  • update all dependencies (f083d2c)

0.3.17 (2022-02-09)

Bug Fixes

  • improve explanatory titles on color picker and boolean toggle when readOnly (aac632b)
  • only show explanatory titles on color picker and boolean toggle when editable (4971138)
  • rename schemaRefs to schemaDefinitions (not breaking, just a renamed function argument) (0e7d653)
  • shortcut Shift+Enter to create a newline not working on Chrome (48a10a6)
  • update dependencies (4bc6d53)

0.3.16 (2022-01-20)

Features

  • implement support for enforcing a value to stay a string when it contains a numeric value. This can be toggled via the button "Enforce string" in ContextMenu, under "Edit value".

Bug Fixes

  • #45 invoke onChangeMode after re-rendering instead of before (c8894ce)

0.3.15 (2022-01-12)

Bug Fixes

  • regression in clicking the context menu button on an insert area (f5bcc71)

0.3.14 (2022-01-08)

Bug Fixes

  • expand contents when pasting in an empty document (a3c8021)
  • shift-click not working when selecting an area in between two nodes (c21f1f3)
  • shift-click to select multiple items broken (a28bbdf)

0.3.13 (2022-01-05)

Bug Fixes

  • clicking on another node whilst editing did not move the focus there (b2fe3d7)
  • fix too large padding for expanded array bracket (0963960)
  • issue in encode/decode datapath (a56cb1b)
  • make the code robust against missing refContents (360de5e)
  • scrollTo throwing exception when contents is empty (68fcb6a)
  • styling tweak for the readonly item count tag (5bbb679)
  • when opening edit mode, sometimes the first typed character was lost (22b5577)

0.3.12 (2022-01-05)

Bug Fixes

  • revert "fix: upgrade to the latest version of sveltekit and vite, removing the need for viteOptimizeDeps"

0.3.11 (2022-01-05)

Bug Fixes

  • property normalization missing the docs and in development application (002b7e9)
  • tweak font for ubuntu and mac (b05009c)
  • upgrade to the latest version of sveltekit and vite, removing the need for viteOptimizeDeps (c7211a3)

0.3.10 (2021-12-22)

Features

  • implement options escapeControlCharacters and escapeUnicodeCharacters (#42) (cfdd8cc)
  • show tag with array item count also when expanded (b427fe7)

Bug Fixes

  • add property type to <button> where missing (see #39) (880795f)
  • clicking outside the editor should stop editing a key/value (see #40) (b67de42)
  • escape special characters in keys (10fdedd)
  • make sure editor blur when clicking outside (aef0d57)
  • partial fix for #40, clicking outside the editor should stop editing a key/value (70eab0c)

0.3.9 (2021-12-04)

Bug Fixes

  • remember state of TransformModal and SortModal on every change instead of only after submit (caa4364)

0.3.8 (2021-12-04)

Bug Fixes

  • add current value to the enum dropdown if needed (8f11bac)

0.3.7 (2021-12-04)

Features

  • custom rendering with onRenderValue, performance improvements, and fixes (635f542)

0.3.6 (2021-11-27)

Bug Fixes

  • merge #32 adding rollup to the devDependencies (f292c2f)
  • replace debug with a util debug function (#34) (ddf608a)
  • update dependencies (f87572e)
  • use debug instead of console.log (b2478b8)

0.3.5 (2021-11-17)

Features

  • extend the onChange callback to pass previousJson and patchResult (8e5aecf)
  • implement javascriptQueryLanguage (6568afe)
  • implement a configuration dropdown to select a query language (871ac5c)
  • support multiple query languages in the transform modal (WIP) (030d3ca)

Bug Fixes

  • edge case in jmespath selecting whole item as projection (ef2a4cf)
  • improve the performance of replacing returns with enclosing whitespaces (de05b10)
  • robustness fix (54c6586)
  • show arrow down icon on the right side of the select boxes (c0375b1)
  • small styling fix (ec83c32)
  • styling fix of the scrollbar in the TransformModal (5adc31d)
  • write unit tests and fixes for all query languages (a6af472)

0.3.4 (2021-11-03)

Features

0.3.3 (2021-10-13)

Bug Fixes

  • debounce changes in code mode, fixing a race condition in React (see #23) (bc2c559)

0.3.2 (2021-09-25)

0.3.1 (2021-09-22)

Bug Fixes

  • clearing the complete document not working (regression since v0.3.0) (352b110)
  • do not lose focus and fire a focus/blur event when opening a modal inside the editor (cbb0c79)
  • fix formatting of the breaking changes list in CHANGELOG.md (05d5995)
  • improve inefficient regex to replace return characters (f3ae485)
  • scroll cursor into view when moving with arrows left/right (7ffd586)
  • show selection with a lighter gray when the editor doesn't have focus (a57268b)

0.3.0 (2021-09-11)

⚠ BREAKING CHANGES

  • Properties json and text are replaced by content: { json, text }
  • Methods getText, setText, and updateText are removed, use get, set and update instead.
  • Methods get set, and update now expect and return a content object { json: JSON } | { text: string } instead of the json data.

Features

  • change the API methods to consistently work with content instead of json and text (6b810b7)
  • unify properties json and text inside content (f93ce2d)
  • update all dependencies (2332413)
  • validate content type (9885ff1)

Bug Fixes

  • code mode throwing an exception when trying to validate an empty document (412172b)
  • disable opening of color picker when editor is readOnly (236ec7a)
  • tooltip font and size not defined (a9fa438)

0.2.8 (2021-08-20)

Features

  • create a Svelte examples section (908d0c4)
  • implement color picker (652e3ac)
  • implement method editor.updateProps(props) to change properties after creation (b596155)
  • show a time icon with human-readable time in case of unix timestamps (7d73846)
  • update dependencies (svelte-select, sass) and devDependencies (be32856)

Bug Fixes

  • display collapsed items sections as selected (f276863)
  • upgrade svelte-select to 4.3.1 (c92310a)

0.2.7 (2021-08-06)

Features

  • sort the navigation bar dropdown items alphabetically (d85ecb2)

Bug Fixes

  • insert before not working when the first item of the root array/object is selected (8e0043f)
  • insert before/after not reckoning with multi selection (c66b2f7)
  • navigation bar keys not being unique (b7bbc5b)
  • position the search box below the navigation bar (86e50d5)
  • redo of inserting an Array/Object does not correctly restore selection (148c8fd)
  • validation error popup not visible when on the first line (3a6f0be)

0.2.6 (2021-08-06)

Features

  • navigation bar implemented in tree mode (ff93e7b)

Bug Fixes

  • when json is changed, clear selection when it refers to a non-existing path (65c20f0)

0.2.5 (2021-08-04)

Bug Fixes

  • minor styling tweak in the cut/copy dropdown buttons to visualize when dropdown is open (d2d9561)

0.2.4 (2021-08-04)

Features

  • auto scroll up/down when dragging to select multiple nodes (9e96957)
  • implement menu options and quick keys to cut/copy without indentation (1dcbc41)

0.2.3 (2021-08-04)

Bug Fixes

  • method transform() throwing an error (73e35c1)

0.2.2 (2021-08-04)

Features

  • extend the transform method with a callback onTransform (90e8427)
  • implement method transform() and callback onTransform(operations) (08c0f61)

Bug Fixes

  • do not expand all contents after extracting some contents (bb98201)
  • do wrap only values anywhere, do not wrap keys anywhere (5879826)

0.2.1 (2021-08-02)

Bug Fixes

  • file generated/worker-json-data-url.js missing in npm package (861efd2)

0.2.0 (2021-08-02)

⚠ BREAKING CHANGES

  • Svelte setup is changed (see readme), ES bundle renamed, UMD bundle removed

Features

  • add search button to main menu of code mode (0df0f9a)
  • implement a Cancel to cancel loading a large document in code mode (ab28a0c)
  • migrate to SvelteKit (c11551d)
  • update dependencies (ajv, svelte-select, svelte-simple-modal) (f9ca5cd)
  • use quick-key Backspace to delete selected contents too (alongside Delete) (f021959)

Bug Fixes

  • extract not working when extracting an item from an Array (5251fb6)
  • line height of a single line sometimes being larger than 18px due to icons and tooltip styling (1431160)
  • vertical positioning of expand button when selected was a bit off (d93e4af)
  • wrap long lines (1792525)

0.1.6 (2021-06-30)

Features

  • faster, more robust search (5e4c3ed)
  • implement readOnly mode (31c438f)
  • limit the maximum number of search results (952adb6)
  • upgrade dependencies (ajv, diff-sequences, svelte-awesome, svelte-select, svelte-simple-modal) (4469695)

Bug Fixes

  • color styling issue with selected collapsed items (720946e)
  • do not create selection area inside when in readOnly mode (03c5b6c)
  • give the user a hint when pasted JSON contents as text (813a9ca)
  • layout overflowing in case of long unbroken lines (4d4f15c)
  • prevent submitting parent form when clicking a button in the editor, see #11 (64d873a)
  • select area inside array/object after inserting a new array/object (0d9a1b7)
  • select whole array/object after sorting or transforming it (0b20741)
  • upgrade to jsonrepair@2.2.1, which has some nice improvements (a34a558)

0.1.5 (2021-06-02)

Features

  • refactor TreeMode such that it can hold an empty document, make undo/redo working (19f18ec)
  • update dependencies (f4931c8)

Bug Fixes

  • "Ok" message after auto repair not working anymore (e5b6e01)
  • editor not getting focus when clicking inside the repair preview (913ef17)
  • properly handle repaired/unrepaired text with undo/redo (1259e48)
  • solve SCSS warnings (02854e6)
  • solve some SCSS warnings (2832337)
  • some fixes in ensuring a selection in case of an empty document (ed14a8c)
  • transform and sort not triggering a change event (3b16a21)

0.1.4 (2021-05-26)

Bug Fixes

  • clear old files from dist folder before bundling (59d1ec0)

0.1.3 (2021-05-26)

Bug Fixes

  • generated files missing in published npm package (c63b1c1)

0.1.2 (2021-05-26)

Features

  • link to source code for Svelte component usage, describe how to setup required preprocessors (72f04b4)

Bug Fixes

  • changing validator not triggering an update in CodeMode (5b4866e)

0.0.21 (2021-05-13)

Features

  • implement validation errors overview and validation error annotations in code mode (#6) (b206f10)

Bug Fixes

  • validation errors on an object/array not visible when expanded (d77ae5b)

0.0.20 (2021-05-12)

Bug Fixes

  • alignment of context menu when clicking the context menu button of the main menu (f4c0c5e)
  • let "Remove" remove the whole item/entry when a key or value is selected (ca1bcec)

0.0.19 (2021-04-28)

Bug Fixes

0.0.18 (2021-04-28)

  • Setup tooling for releases (standard-version, commitlint, husky)

0.0.17 (2021-04-28)

  • Setup tooling for releases (standard-version, commitlint, husky)

0.0.16 (2021-04-28)

  • Implemented context menu.
  • Many small refinements.