Released version 5.1.1

This commit is contained in:
jos 2016-01-16 10:55:45 +01:00
parent ae2f4e923f
commit 5a5c04e48f
9 changed files with 335 additions and 377 deletions

View File

@ -3,7 +3,7 @@
https://github.com/josdejong/jsoneditor https://github.com/josdejong/jsoneditor
## not yet released, version 5.1.1 ## 2016-01-16, version 5.1.1
- Fixed #257: Improving error messages for enum errors failed when the - Fixed #257: Improving error messages for enum errors failed when the
schema contains references. schema contains references.

View File

@ -24,8 +24,8 @@
* Copyright (c) 2011-2016 Jos de Jong, http://jsoneditoronline.org * Copyright (c) 2011-2016 Jos de Jong, http://jsoneditoronline.org
* *
* @author Jos de Jong, <wjosdejong@gmail.com> * @author Jos de Jong, <wjosdejong@gmail.com>
* @version 5.1.0 * @version 5.1.1
* @date 2016-01-14 * @date 2016-01-16
*/ */
(function webpackUniversalModuleDefinition(root, factory) { (function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object') if(typeof exports === 'object' && typeof module === 'object')
@ -162,7 +162,7 @@ return /******/ (function(modules) { // webpackBootstrap
'ace', 'theme', 'ace', 'theme',
'ajv', 'schema', 'ajv', 'schema',
'onChange', 'onEditable', 'onError', 'onModeChange', 'onChange', 'onEditable', 'onError', 'onModeChange',
'escapeUnicode', 'history', 'mode', 'modes', 'name', 'indentation' 'escapeUnicode', 'history', 'search', 'mode', 'modes', 'name', 'indentation'
]; ];
Object.keys(options).forEach(function (option) { Object.keys(options).forEach(function (option) {
@ -361,7 +361,7 @@ return /******/ (function(modules) { // webpackBootstrap
var ajv; var ajv;
try { try {
// grab ajv from options if provided, else create a new instance // grab ajv from options if provided, else create a new instance
ajv = this.options.ajv || Ajv({ allErrors: true }); ajv = this.options.ajv || Ajv({ allErrors: true, verbose: true });
} }
catch (err) { catch (err) {
@ -607,7 +607,9 @@ return /******/ (function(modules) { // webpackBootstrap
} }
// clear search // clear search
if (this.searchBox) {
this.searchBox.clear(); this.searchBox.clear();
}
}; };
/** /**
@ -832,12 +834,10 @@ return /******/ (function(modules) { // webpackBootstrap
if (this.validateSchema) { if (this.validateSchema) {
var valid = this.validateSchema(root.getValue()); var valid = this.validateSchema(root.getValue());
if (!valid) { if (!valid) {
var schema = this.options.schema;
// apply all new errors // apply all new errors
schemaErrors = this.validateSchema.errors schemaErrors = this.validateSchema.errors
.map(function (error) { .map(function (error) {
return util.improveSchemaError(schema, error); return util.improveSchemaError(error);
}) })
.map(function findNode (error) { .map(function findNode (error) {
return { return {
@ -1611,6 +1611,7 @@ return /******/ (function(modules) { // webpackBootstrap
} }
]; ];
/***/ }, /***/ },
/* 2 */ /* 2 */
/***/ function(module, exports, __webpack_require__) { /***/ function(module, exports, __webpack_require__) {
@ -2022,10 +2023,8 @@ return /******/ (function(modules) { // webpackBootstrap
if (doValidate && this.validateSchema) { if (doValidate && this.validateSchema) {
var valid = this.validateSchema(json); var valid = this.validateSchema(json);
if (!valid) { if (!valid) {
var schema = this.options.schema; errors = this.validateSchema.errors.map(function (error) {
errors = this.validateSchema.errors return util.improveSchemaError(error);
.map(function (error) {
return util.improveSchemaError(schema, error);
}); });
} }
} }
@ -2755,34 +2754,14 @@ return /******/ (function(modules) { // webpackBootstrap
return [prop].concat(parsePath(remainder)) return [prop].concat(parsePath(remainder))
}; };
/**
* Retrieve a part of the schema
* @param {Object} schema
* @param {string} schemaPath A path like "#/properties/gender/enum"
* @return {Object} Returns the found part of the schema, or undefined when not found.
*/
exports.getFromSchema = function (schema, schemaPath) {
var path = schemaPath.split('/');
path.shift(); // remove the first #
var obj = schema;
var prop;
while (prop = path.shift()) {
obj = obj[prop];
}
return obj;
};
/** /**
* Improve the error message of a JSON schema error * Improve the error message of a JSON schema error
* @param {Object} schema
* @param {Object} error * @param {Object} error
* @return {Object} The error * @return {Object} The error
*/ */
exports.improveSchemaError = function (schema, error) { exports.improveSchemaError = function (error) {
if (error.keyword === 'enum') { if (error.keyword === 'enum' && Array.isArray(error.schema)) {
var enums = exports.getFromSchema(schema, error.schemaPath); var enums = error.schema;
if (enums) { if (enums) {
enums = enums.map(function (value) { enums = enums.map(function (value) {
return JSON.stringify(value); return JSON.stringify(value);

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

597
dist/jsoneditor.js vendored
View File

@ -24,8 +24,8 @@
* Copyright (c) 2011-2016 Jos de Jong, http://jsoneditoronline.org * Copyright (c) 2011-2016 Jos de Jong, http://jsoneditoronline.org
* *
* @author Jos de Jong, <wjosdejong@gmail.com> * @author Jos de Jong, <wjosdejong@gmail.com>
* @version 5.1.0 * @version 5.1.1
* @date 2016-01-15 * @date 2016-01-16
*/ */
(function webpackUniversalModuleDefinition(root, factory) { (function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object') if(typeof exports === 'object' && typeof module === 'object')
@ -361,7 +361,7 @@ return /******/ (function(modules) { // webpackBootstrap
var ajv; var ajv;
try { try {
// grab ajv from options if provided, else create a new instance // grab ajv from options if provided, else create a new instance
ajv = this.options.ajv || Ajv({ allErrors: true }); ajv = this.options.ajv || Ajv({ allErrors: true, verbose: true });
} }
catch (err) { catch (err) {
@ -460,12 +460,12 @@ return /******/ (function(modules) { // webpackBootstrap
/* 1 */ /* 1 */
/***/ function(module, exports, __webpack_require__) { /***/ function(module, exports, __webpack_require__) {
var Highlighter = __webpack_require__(6); var Highlighter = __webpack_require__(5);
var History = __webpack_require__(7); var History = __webpack_require__(6);
var SearchBox = __webpack_require__(8); var SearchBox = __webpack_require__(7);
var ContextMenu = __webpack_require__(9); var ContextMenu = __webpack_require__(8);
var Node = __webpack_require__(10); var Node = __webpack_require__(9);
var modeswitcher = __webpack_require__(5); var modeswitcher = __webpack_require__(10);
var util = __webpack_require__(3); var util = __webpack_require__(3);
// create a mixin with the functions for tree mode // create a mixin with the functions for tree mode
@ -607,7 +607,9 @@ return /******/ (function(modules) { // webpackBootstrap
} }
// clear search // clear search
if (this.searchBox) {
this.searchBox.clear(); this.searchBox.clear();
}
}; };
/** /**
@ -832,12 +834,10 @@ return /******/ (function(modules) { // webpackBootstrap
if (this.validateSchema) { if (this.validateSchema) {
var valid = this.validateSchema(root.getValue()); var valid = this.validateSchema(root.getValue());
if (!valid) { if (!valid) {
var schema = this.options.schema;
// apply all new errors // apply all new errors
schemaErrors = this.validateSchema.errors schemaErrors = this.validateSchema.errors
.map(function (error) { .map(function (error) {
return util.improveSchemaError(schema, error); return util.improveSchemaError(error);
}) })
.map(function findNode (error) { .map(function findNode (error) {
return { return {
@ -1611,6 +1611,7 @@ return /******/ (function(modules) { // webpackBootstrap
} }
]; ];
/***/ }, /***/ },
/* 2 */ /* 2 */
/***/ function(module, exports, __webpack_require__) { /***/ function(module, exports, __webpack_require__) {
@ -1623,7 +1624,7 @@ return /******/ (function(modules) { // webpackBootstrap
// failed to load ace, no problem, we will fall back to plain text // failed to load ace, no problem, we will fall back to plain text
} }
var modeswitcher = __webpack_require__(5); var modeswitcher = __webpack_require__(10);
var util = __webpack_require__(3); var util = __webpack_require__(3);
// create a mixin with the functions for text mode // create a mixin with the functions for text mode
@ -2022,10 +2023,8 @@ return /******/ (function(modules) { // webpackBootstrap
if (doValidate && this.validateSchema) { if (doValidate && this.validateSchema) {
var valid = this.validateSchema(json); var valid = this.validateSchema(json);
if (!valid) { if (!valid) {
var schema = this.options.schema; errors = this.validateSchema.errors.map(function (error) {
errors = this.validateSchema.errors return util.improveSchemaError(error);
.map(function (error) {
return util.improveSchemaError(schema, error);
}); });
} }
} }
@ -2755,34 +2754,14 @@ return /******/ (function(modules) { // webpackBootstrap
return [prop].concat(parsePath(remainder)) return [prop].concat(parsePath(remainder))
}; };
/**
* Retrieve a part of the schema
* @param {Object} schema
* @param {string} schemaPath A path like "#/properties/gender/enum"
* @return {Object} Returns the found part of the schema, or undefined when not found.
*/
exports.getFromSchema = function (schema, schemaPath) {
var path = schemaPath.split('/');
path.shift(); // remove the first #
var obj = schema;
var prop;
while (prop = path.shift()) {
obj = obj[prop];
}
return obj;
};
/** /**
* Improve the error message of a JSON schema error * Improve the error message of a JSON schema error
* @param {Object} schema
* @param {Object} error * @param {Object} error
* @return {Object} The error * @return {Object} The error
*/ */
exports.improveSchemaError = function (schema, error) { exports.improveSchemaError = function (error) {
if (error.keyword === 'enum') { if (error.keyword === 'enum' && Array.isArray(error.schema)) {
var enums = exports.getFromSchema(schema, error.schemaPath); var enums = error.schema;
if (enums) { if (enums) {
enums = enums.map(function (value) { enums = enums.map(function (value) {
return JSON.stringify(value); return JSON.stringify(value);
@ -9492,117 +9471,6 @@ return /******/ (function(modules) { // webpackBootstrap
/***/ }, /***/ },
/* 5 */ /* 5 */
/***/ function(module, exports, __webpack_require__) {
var ContextMenu = __webpack_require__(9);
/**
* Create a select box to be used in the editor menu's, which allows to switch mode
* @param {Object} editor
* @param {String[]} modes Available modes: 'code', 'form', 'text', 'tree', 'view'
* @param {String} current Available modes: 'code', 'form', 'text', 'tree', 'view'
* @returns {HTMLElement} box
*/
function createModeSwitcher(editor, modes, current) {
// TODO: decouple mode switcher from editor
/**
* Switch the mode of the editor
* @param {String} mode
*/
function switchMode(mode) {
// switch mode
editor.setMode(mode);
// restore focus on mode box
var modeBox = editor.dom && editor.dom.modeBox;
if (modeBox) {
modeBox.focus();
}
}
// available modes
var availableModes = {
code: {
'text': 'Code',
'title': 'Switch to code highlighter',
'click': function () {
switchMode('code')
}
},
form: {
'text': 'Form',
'title': 'Switch to form editor',
'click': function () {
switchMode('form');
}
},
text: {
'text': 'Text',
'title': 'Switch to plain text editor',
'click': function () {
switchMode('text');
}
},
tree: {
'text': 'Tree',
'title': 'Switch to tree editor',
'click': function () {
switchMode('tree');
}
},
view: {
'text': 'View',
'title': 'Switch to tree view',
'click': function () {
switchMode('view');
}
}
};
// list the selected modes
var items = [];
for (var i = 0; i < modes.length; i++) {
var mode = modes[i];
var item = availableModes[mode];
if (!item) {
throw new Error('Unknown mode "' + mode + '"');
}
item.className = 'jsoneditor-type-modes' + ((current == mode) ? ' jsoneditor-selected' : '');
items.push(item);
}
// retrieve the title of current mode
var currentMode = availableModes[current];
if (!currentMode) {
throw new Error('Unknown mode "' + current + '"');
}
var currentTitle = currentMode.text;
// create the html element
var box = document.createElement('button');
box.className = 'jsoneditor-modes jsoneditor-separator';
box.innerHTML = currentTitle + ' &#x25BE;';
box.title = 'Switch editor mode';
box.onclick = function () {
var menu = new ContextMenu(items);
menu.show(box);
};
var div = document.createElement('div');
div.className = 'jsoneditor-modes';
div.style.position = 'relative';
div.appendChild(box);
return div;
}
exports.create = createModeSwitcher;
/***/ },
/* 6 */
/***/ function(module, exports, __webpack_require__) { /***/ function(module, exports, __webpack_require__) {
/** /**
@ -9692,7 +9560,7 @@ return /******/ (function(modules) { // webpackBootstrap
/***/ }, /***/ },
/* 7 */ /* 6 */
/***/ function(module, exports, __webpack_require__) { /***/ function(module, exports, __webpack_require__) {
var util = __webpack_require__(3); var util = __webpack_require__(3);
@ -9950,7 +9818,7 @@ return /******/ (function(modules) { // webpackBootstrap
/***/ }, /***/ },
/* 8 */ /* 7 */
/***/ function(module, exports, __webpack_require__) { /***/ function(module, exports, __webpack_require__) {
/** /**
@ -10251,7 +10119,7 @@ return /******/ (function(modules) { // webpackBootstrap
/***/ }, /***/ },
/* 9 */ /* 8 */
/***/ function(module, exports, __webpack_require__) { /***/ function(module, exports, __webpack_require__) {
var util = __webpack_require__(3); var util = __webpack_require__(3);
@ -10710,11 +10578,11 @@ return /******/ (function(modules) { // webpackBootstrap
/***/ }, /***/ },
/* 10 */ /* 9 */
/***/ function(module, exports, __webpack_require__) { /***/ function(module, exports, __webpack_require__) {
var ContextMenu = __webpack_require__(9); var ContextMenu = __webpack_require__(8);
var appendNodeFactory = __webpack_require__(14); var appendNodeFactory = __webpack_require__(13);
var util = __webpack_require__(3); var util = __webpack_require__(3);
/** /**
@ -14115,6 +13983,117 @@ return /******/ (function(modules) { // webpackBootstrap
module.exports = Node; module.exports = Node;
/***/ },
/* 10 */
/***/ function(module, exports, __webpack_require__) {
var ContextMenu = __webpack_require__(8);
/**
* Create a select box to be used in the editor menu's, which allows to switch mode
* @param {Object} editor
* @param {String[]} modes Available modes: 'code', 'form', 'text', 'tree', 'view'
* @param {String} current Available modes: 'code', 'form', 'text', 'tree', 'view'
* @returns {HTMLElement} box
*/
function createModeSwitcher(editor, modes, current) {
// TODO: decouple mode switcher from editor
/**
* Switch the mode of the editor
* @param {String} mode
*/
function switchMode(mode) {
// switch mode
editor.setMode(mode);
// restore focus on mode box
var modeBox = editor.dom && editor.dom.modeBox;
if (modeBox) {
modeBox.focus();
}
}
// available modes
var availableModes = {
code: {
'text': 'Code',
'title': 'Switch to code highlighter',
'click': function () {
switchMode('code')
}
},
form: {
'text': 'Form',
'title': 'Switch to form editor',
'click': function () {
switchMode('form');
}
},
text: {
'text': 'Text',
'title': 'Switch to plain text editor',
'click': function () {
switchMode('text');
}
},
tree: {
'text': 'Tree',
'title': 'Switch to tree editor',
'click': function () {
switchMode('tree');
}
},
view: {
'text': 'View',
'title': 'Switch to tree view',
'click': function () {
switchMode('view');
}
}
};
// list the selected modes
var items = [];
for (var i = 0; i < modes.length; i++) {
var mode = modes[i];
var item = availableModes[mode];
if (!item) {
throw new Error('Unknown mode "' + mode + '"');
}
item.className = 'jsoneditor-type-modes' + ((current == mode) ? ' jsoneditor-selected' : '');
items.push(item);
}
// retrieve the title of current mode
var currentMode = availableModes[current];
if (!currentMode) {
throw new Error('Unknown mode "' + current + '"');
}
var currentTitle = currentMode.text;
// create the html element
var box = document.createElement('button');
box.className = 'jsoneditor-modes jsoneditor-separator';
box.innerHTML = currentTitle + ' &#x25BE;';
box.title = 'Switch editor mode';
box.onclick = function () {
var menu = new ContextMenu(items);
menu.show(box);
};
var div = document.createElement('div');
div.className = 'jsoneditor-modes';
div.style.position = 'relative';
div.appendChild(box);
return div;
}
exports.create = createModeSwitcher;
/***/ }, /***/ },
/* 11 */ /* 11 */
/***/ function(module, exports, __webpack_require__) { /***/ function(module, exports, __webpack_require__) {
@ -14125,7 +14104,7 @@ return /******/ (function(modules) { // webpackBootstrap
// load required ace modules // load required ace modules
__webpack_require__(16); __webpack_require__(16);
__webpack_require__(17); __webpack_require__(17);
__webpack_require__(13); __webpack_require__(14);
module.exports = ace; module.exports = ace;
@ -14555,160 +14534,10 @@ return /******/ (function(modules) { // webpackBootstrap
/***/ }, /***/ },
/* 13 */ /* 13 */
/***/ function(module, exports, __webpack_require__) {
/* ***** BEGIN LICENSE BLOCK *****
* Distributed under the BSD license:
*
* Copyright (c) 2010, Ajax.org B.V.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * Neither the name of Ajax.org B.V. nor the
* names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* ***** END LICENSE BLOCK ***** */
ace.define('ace/theme/jsoneditor', ['require', 'exports', 'module', 'ace/lib/dom'], function(acequire, exports, module) {
exports.isDark = false;
exports.cssClass = "ace-jsoneditor";
exports.cssText = ".ace-jsoneditor .ace_gutter {\
background: #ebebeb;\
color: #333\
}\
\
.ace-jsoneditor.ace_editor {\
font-family: droid sans mono, consolas, monospace, courier new, courier, sans-serif;\
line-height: 1.3;\
}\
.ace-jsoneditor .ace_print-margin {\
width: 1px;\
background: #e8e8e8\
}\
.ace-jsoneditor .ace_scroller {\
background-color: #FFFFFF\
}\
.ace-jsoneditor .ace_text-layer {\
color: gray\
}\
.ace-jsoneditor .ace_variable {\
color: #1a1a1a\
}\
.ace-jsoneditor .ace_cursor {\
border-left: 2px solid #000000\
}\
.ace-jsoneditor .ace_overwrite-cursors .ace_cursor {\
border-left: 0px;\
border-bottom: 1px solid #000000\
}\
.ace-jsoneditor .ace_marker-layer .ace_selection {\
background: lightgray\
}\
.ace-jsoneditor.ace_multiselect .ace_selection.ace_start {\
box-shadow: 0 0 3px 0px #FFFFFF;\
border-radius: 2px\
}\
.ace-jsoneditor .ace_marker-layer .ace_step {\
background: rgb(255, 255, 0)\
}\
.ace-jsoneditor .ace_marker-layer .ace_bracket {\
margin: -1px 0 0 -1px;\
border: 1px solid #BFBFBF\
}\
.ace-jsoneditor .ace_marker-layer .ace_active-line {\
background: #FFFBD1\
}\
.ace-jsoneditor .ace_gutter-active-line {\
background-color : #dcdcdc\
}\
.ace-jsoneditor .ace_marker-layer .ace_selected-word {\
border: 1px solid lightgray\
}\
.ace-jsoneditor .ace_invisible {\
color: #BFBFBF\
}\
.ace-jsoneditor .ace_keyword,\
.ace-jsoneditor .ace_meta,\
.ace-jsoneditor .ace_support.ace_constant.ace_property-value {\
color: #AF956F\
}\
.ace-jsoneditor .ace_keyword.ace_operator {\
color: #484848\
}\
.ace-jsoneditor .ace_keyword.ace_other.ace_unit {\
color: #96DC5F\
}\
.ace-jsoneditor .ace_constant.ace_language {\
color: darkorange\
}\
.ace-jsoneditor .ace_constant.ace_numeric {\
color: red\
}\
.ace-jsoneditor .ace_constant.ace_character.ace_entity {\
color: #BF78CC\
}\
.ace-jsoneditor .ace_invalid {\
color: #FFFFFF;\
background-color: #FF002A;\
}\
.ace-jsoneditor .ace_fold {\
background-color: #AF956F;\
border-color: #000000\
}\
.ace-jsoneditor .ace_storage,\
.ace-jsoneditor .ace_support.ace_class,\
.ace-jsoneditor .ace_support.ace_function,\
.ace-jsoneditor .ace_support.ace_other,\
.ace-jsoneditor .ace_support.ace_type {\
color: #C52727\
}\
.ace-jsoneditor .ace_string {\
color: green\
}\
.ace-jsoneditor .ace_comment {\
color: #BCC8BA\
}\
.ace-jsoneditor .ace_entity.ace_name.ace_tag,\
.ace-jsoneditor .ace_entity.ace_other.ace_attribute-name {\
color: #606060\
}\
.ace-jsoneditor .ace_markup.ace_underline {\
text-decoration: underline\
}\
.ace-jsoneditor .ace_indent-guide {\
background: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==\") right repeat-y\
}";
var dom = acequire("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});
/***/ },
/* 14 */
/***/ function(module, exports, __webpack_require__) { /***/ function(module, exports, __webpack_require__) {
var util = __webpack_require__(3); var util = __webpack_require__(3);
var ContextMenu = __webpack_require__(9); var ContextMenu = __webpack_require__(8);
/** /**
* A factory function to create an AppendNode, which depends on a Node * A factory function to create an AppendNode, which depends on a Node
@ -14935,6 +14764,156 @@ return /******/ (function(modules) { // webpackBootstrap
module.exports = appendNodeFactory; module.exports = appendNodeFactory;
/***/ },
/* 14 */
/***/ function(module, exports, __webpack_require__) {
/* ***** BEGIN LICENSE BLOCK *****
* Distributed under the BSD license:
*
* Copyright (c) 2010, Ajax.org B.V.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * Neither the name of Ajax.org B.V. nor the
* names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* ***** END LICENSE BLOCK ***** */
ace.define('ace/theme/jsoneditor', ['require', 'exports', 'module', 'ace/lib/dom'], function(acequire, exports, module) {
exports.isDark = false;
exports.cssClass = "ace-jsoneditor";
exports.cssText = ".ace-jsoneditor .ace_gutter {\
background: #ebebeb;\
color: #333\
}\
\
.ace-jsoneditor.ace_editor {\
font-family: droid sans mono, consolas, monospace, courier new, courier, sans-serif;\
line-height: 1.3;\
}\
.ace-jsoneditor .ace_print-margin {\
width: 1px;\
background: #e8e8e8\
}\
.ace-jsoneditor .ace_scroller {\
background-color: #FFFFFF\
}\
.ace-jsoneditor .ace_text-layer {\
color: gray\
}\
.ace-jsoneditor .ace_variable {\
color: #1a1a1a\
}\
.ace-jsoneditor .ace_cursor {\
border-left: 2px solid #000000\
}\
.ace-jsoneditor .ace_overwrite-cursors .ace_cursor {\
border-left: 0px;\
border-bottom: 1px solid #000000\
}\
.ace-jsoneditor .ace_marker-layer .ace_selection {\
background: lightgray\
}\
.ace-jsoneditor.ace_multiselect .ace_selection.ace_start {\
box-shadow: 0 0 3px 0px #FFFFFF;\
border-radius: 2px\
}\
.ace-jsoneditor .ace_marker-layer .ace_step {\
background: rgb(255, 255, 0)\
}\
.ace-jsoneditor .ace_marker-layer .ace_bracket {\
margin: -1px 0 0 -1px;\
border: 1px solid #BFBFBF\
}\
.ace-jsoneditor .ace_marker-layer .ace_active-line {\
background: #FFFBD1\
}\
.ace-jsoneditor .ace_gutter-active-line {\
background-color : #dcdcdc\
}\
.ace-jsoneditor .ace_marker-layer .ace_selected-word {\
border: 1px solid lightgray\
}\
.ace-jsoneditor .ace_invisible {\
color: #BFBFBF\
}\
.ace-jsoneditor .ace_keyword,\
.ace-jsoneditor .ace_meta,\
.ace-jsoneditor .ace_support.ace_constant.ace_property-value {\
color: #AF956F\
}\
.ace-jsoneditor .ace_keyword.ace_operator {\
color: #484848\
}\
.ace-jsoneditor .ace_keyword.ace_other.ace_unit {\
color: #96DC5F\
}\
.ace-jsoneditor .ace_constant.ace_language {\
color: darkorange\
}\
.ace-jsoneditor .ace_constant.ace_numeric {\
color: red\
}\
.ace-jsoneditor .ace_constant.ace_character.ace_entity {\
color: #BF78CC\
}\
.ace-jsoneditor .ace_invalid {\
color: #FFFFFF;\
background-color: #FF002A;\
}\
.ace-jsoneditor .ace_fold {\
background-color: #AF956F;\
border-color: #000000\
}\
.ace-jsoneditor .ace_storage,\
.ace-jsoneditor .ace_support.ace_class,\
.ace-jsoneditor .ace_support.ace_function,\
.ace-jsoneditor .ace_support.ace_other,\
.ace-jsoneditor .ace_support.ace_type {\
color: #C52727\
}\
.ace-jsoneditor .ace_string {\
color: green\
}\
.ace-jsoneditor .ace_comment {\
color: #BCC8BA\
}\
.ace-jsoneditor .ace_entity.ace_name.ace_tag,\
.ace-jsoneditor .ace_entity.ace_other.ace_attribute-name {\
color: #606060\
}\
.ace-jsoneditor .ace_markup.ace_underline {\
text-decoration: underline\
}\
.ace-jsoneditor .ace_indent-guide {\
background: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==\") right repeat-y\
}";
var dom = acequire("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});
/***/ }, /***/ },
/* 15 */ /* 15 */
/***/ function(module, exports, __webpack_require__) { /***/ function(module, exports, __webpack_require__) {

2
dist/jsoneditor.map vendored

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 21 KiB

View File

@ -1,6 +1,6 @@
{ {
"name": "jsoneditor", "name": "jsoneditor",
"version": "5.1.0", "version": "5.1.1",
"main": "./index", "main": "./index",
"description": "A web-based tool to view, edit, format, and validate JSON", "description": "A web-based tool to view, edit, format, and validate JSON",
"tags": [ "tags": [