Commit Graph

139 Commits

Author SHA1 Message Date
josdejong 400b1eea37 Small styling fix 2020-07-01 10:58:29 +02:00
josdejong 87bc7b2561 Fix #1029: XSS vulnerabilities 2020-07-01 10:45:09 +02:00
josdejong 62025c490d Implemented option `limitDragging`, see #962 2020-05-24 16:02:04 +02:00
josdejong ad021ec7af Fix #936: too many return characters inserted when pasting formatted text from OpenOffice 2020-05-13 08:17:54 +02:00
josdejong d3231570ab Fix #978: in some special cases the caret was jumping to the beginning of the line whilst typing 2020-05-10 12:06:50 +02:00
jos 4f433cb6a9 A fix in repairing line-separated json 2020-03-25 12:18:41 +01:00
jos fd0db5dc73 Implement support for repairing line separate JSON 2020-03-25 12:11:33 +01:00
jos a33aa14cc2 Update test_build.html 2020-03-18 10:47:34 +01:00
jos 582645df70 Fix replacing Python constants in arrays 2020-02-16 10:11:12 +01:00
jos dcc66d5d81 Fixed #906: Implemented turning Python objects containing `True`, `False` and `None` into valid JSON using repair 2020-02-15 20:21:38 +01:00
jos 10a48ca7b2 Fix lint issues 2019-12-28 17:17:27 +01:00
jos 275fcc8fee Changed the file size reported in `preview` mode to `KB` and `MB` 2019-12-28 17:12:56 +01:00
jos c059fdb543 Have the preview test file actually load `preview` mode 2019-12-27 22:31:01 +01:00
jos d973464545 Rename test file 2019-12-18 17:39:32 +01:00
jos f86f3d4e1c Implemented `popupAnchor` allowing to select a custom anchor element. See #869 and #870. 2019-12-18 17:26:16 +01:00
jos 03fa90bd71 Revert using field names to determine whether a value is a timestamp (see #847, #856) 2019-12-11 11:51:48 +01:00
Meir Rotstein 266eeec21a onValidationError option (#854)
* provide onValidationError callback

* linter fixes

* docu fixes

* textmode - invoke callback also when no errors
This to cover situation of changes that fixes validations

* fixed cautom validation example
2019-12-01 16:21:16 +01:00
jos 51410c363f More improvements in the built-in `isTimestamp` function (see #847) 2019-11-27 15:45:48 +01:00
jos 39dfc41100 Improve `timestampTag` API (see #847) 2019-11-27 15:28:50 +01:00
Survesh Jones 8894420263 Fix #727 (#809)
* Fix #727: exposing Focus and Blur events through JSONEditor options

* Comments for onFocus and onBlur exposed events

* Fixing lint issues

* Fix for #727: Updated code for emitting onFocus and onBlur events

* Seperating FocusTarget out as a seperate class

* Fixing an issue that kept on setting the focus to the last element in the editor instead of passing it out

* Moving the add() method of FocusTracker into its constructor and renaming its remove() to destroy()

* removing a flag not needed anymore and making FocusTracker.target a required input

* updating focus tracker's focus checking condition

* Emitting onBlur callback when FocusTracker is being destroyed

* fixing lint issues
2019-11-24 19:41:08 +01:00
jos a60a1125ea Reverted solution for #794 due to undesirable side effects 2019-09-17 20:20:40 +02:00
jos 8554789aa7 Fix #794: fix discrepancy between valid JSON numbers and valid JavaScript numbers 2019-09-15 11:55:15 +02:00
jos 83e9e0655c Fixed #723: schema error popup not always fully visible 2019-09-11 15:59:19 +02:00
jos b354ddbe8d Fix broken unit tests 2019-08-31 17:38:57 +02:00
jos b79885471e A few more files refactored to ES modules 2019-08-31 11:21:29 +02:00
jos e67fa19375 Run lebab on test folder: convert let/const and arrow functions 2019-08-28 13:43:06 +02:00
jos a5d6b8a65b Set up code style linting with standardjs 2019-08-28 13:21:14 +02:00
jos 964fe3e06d Fixed #761: JSON schema errors not rendered in the gutter for mode `code` when the path contained a property with a forward slash 2019-08-25 20:43:21 +02:00
jos ce7433fd46 Publish v6.2.0 2019-07-28 16:12:46 +02:00
jos 14cdd0e61b Fix using arrow function and const 2019-07-28 11:45:43 +02:00
jos 3f182a1f04 Repair button is now capable of turning MongoDB documents into valid JSON 2019-07-27 14:16:59 +02:00
jos cec16b9de1 Rename `util.sanitize` to `util.repair` 2019-07-27 13:13:02 +02:00
jos df952ac61d Replace deprecated `assert.equal` with `assert.strictEqual` 2019-07-27 13:08:02 +02:00
jos e82ef3ed31 Move rendering of errors in separate component `ErrorTable` 2019-07-24 11:00:49 +02:00
jos df386b6f1b Add `'preview'` to the list with allowed modes in all examples 2019-07-08 20:00:34 +02:00
jos abc242c873 Implement array size in status bar 2019-07-03 13:10:00 +02:00
jos 9ed18da7b6 Create util function `limitCharacters`, tweak limiting of preview texts 2019-07-03 11:54:00 +02:00
jos 726f829541 Show "busy" message when working on a heavy action 2019-06-30 20:08:52 +02:00
jos cda54f95fc Implemented `stringifyPartial` and use it in Transform modal 2019-06-26 21:57:22 +02:00
jos 1e1ee3463c Implemented `preview` mode (WIP) 2019-06-26 17:24:09 +02:00
jos 797541cd6b Make `getChildPaths` json pointer compliant 2019-06-19 12:46:50 +02:00
jos 7311e78b53 Implemented `transform` modal for modes `code` and `text` 2019-06-19 11:57:28 +02:00
jos 74b816a554 Implemented sort button in code/text mode 2019-06-19 11:16:30 +02:00
jos 10daf40b56 Use JSON schema title as name for the root object if defined (see #635) 2019-06-12 15:43:16 +02:00
Jos de Jong 3ccdeeec40
Fix #697 JSON Schema enum dropdown not working inside an array (#707)
* Fix #697 JSON Schema enum dropdown not working inside an array

* Make schema in unit test valid by adding `type: 'object'`
2019-05-29 15:51:42 +02:00
jos 70b7e7914b Fixed #663 and #682: JSONEditor not being able to handle JSON schema validation errors when the root of the document is an Array 2019-04-10 12:23:13 +02:00
jos b38816a88b Merge branch 'duplicate_key_errors_take2' into develop
# Conflicts:
#	src/js/util.js
2019-04-03 14:56:39 +02:00
jos 801921867d Improve detection of value type in transform modal 2019-03-31 19:51:12 +02:00
jos 00baaacacc Disable having duplicate nodes (except whilst typing) 2019-03-30 13:35:51 +01:00
Adam Vigneaux 09ab92017c Fix JSON path parsing for array indices (#679)
* Switch JSON path tests to strict equality

The tests for `stringifyPath` and `parsePath` were using
[`assert.deepEqual`](https://nodejs.org/api/assert.html#assert_assert_deepequal_actual_expected_message),
which was causing the tests to pass when they should not have. Beyond
that, the `deepEqual` method is deprecated. The suggested replacement is
[`assert.deepStrictEqual`](https://nodejs.org/api/assert.html#assert_assert_deepstrictequal_actual_expected_message),
which causes the tests to fail where they should.

The difference between the two methods is the different between `==` and
`===`. `deepEqual` would coerce the input `"2"` to `2`, so the test was
passing even though the output was of the wrong type (string instead of
number).

* Coerce numeric indices to numbers in parsePath

This fixes a regression introduced in
3e7e1cebfd.
2019-03-28 19:49:36 +01:00