@wirenboard/json-editor 2.5.3-wb13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env-dist +2 -0
- package/.eslintrc +7 -0
- package/.gitattributes +1 -0
- package/.github/PULL_REQUEST_TEMPLATE.md +9 -0
- package/.github/issue_template +25 -0
- package/.github/workflows/build.yml +58 -0
- package/.travis.yml +70 -0
- package/CHANGELOG.md +915 -0
- package/CONTRIBUTING.md +92 -0
- package/LICENSE +20 -0
- package/Makefile +26 -0
- package/README.md +1646 -0
- package/README_ADDON.md +573 -0
- package/UPGRADING.md +46 -0
- package/build/CssToJson.js +55 -0
- package/codecept.conf.js +35 -0
- package/config/.eslintrc +7 -0
- package/config/codeceptjs_helpers.js +139 -0
- package/config/helpers.js +10 -0
- package/config/karma.conf.js +93 -0
- package/config/readme.md +31 -0
- package/config/webpack.common.js +75 -0
- package/config/webpack.dev.js +15 -0
- package/config/webpack.nonmin.js +19 -0
- package/config/webpack.prod.js +25 -0
- package/dist/jsoneditor.js +14 -0
- package/dist/nonmin/jsoneditor.js +29097 -0
- package/dist/nonmin/jsoneditor.js.map +1 -0
- package/docs/ace_editor.html +56 -0
- package/docs/advanced.html +136 -0
- package/docs/basic.html +63 -0
- package/docs/basic_person.json +26 -0
- package/docs/choices.html +86 -0
- package/docs/cleave.html +132 -0
- package/docs/colorpicker.html +194 -0
- package/docs/css_integration.html +135 -0
- package/docs/datetime.html +305 -0
- package/docs/describedby.html +161 -0
- package/docs/enumsource.html +67 -0
- package/docs/images/categoriesDemo.png +0 -0
- package/docs/images/inheritance_tree.png +0 -0
- package/docs/images/jsoneditor.png +0 -0
- package/docs/imask.html +192 -0
- package/docs/index.html +579 -0
- package/docs/materialize_css.html +164 -0
- package/docs/meta_schema.json +705 -0
- package/docs/multiple_upload_base64.html +65 -0
- package/docs/person.json +73 -0
- package/docs/polyfills/assign.js +29 -0
- package/docs/radio.html +156 -0
- package/docs/recursive.html +170 -0
- package/docs/select2.html +99 -0
- package/docs/selectize.html +100 -0
- package/docs/signature.html +42 -0
- package/docs/starrating.html +137 -0
- package/docs/upload.html +131 -0
- package/docs/uuid.html +70 -0
- package/docs/wysiwyg.html +56 -0
- package/jasmine.json +11 -0
- package/json-editor-json-editor-2.5.3-wb13.tgz +0 -0
- package/package.json +100 -0
- package/release-notes.md +88 -0
- package/src/core.js +412 -0
- package/src/defaults.js +402 -0
- package/src/editor.js +707 -0
- package/src/editors/ace.js +89 -0
- package/src/editors/array/choices.js +103 -0
- package/src/editors/array/select2.js +110 -0
- package/src/editors/array/selectize.js +103 -0
- package/src/editors/array.css +9 -0
- package/src/editors/array.css.js +3 -0
- package/src/editors/array.js +818 -0
- package/src/editors/autocomplete.js +58 -0
- package/src/editors/base64.js +157 -0
- package/src/editors/button.js +97 -0
- package/src/editors/checkbox.js +95 -0
- package/src/editors/choices.css +3 -0
- package/src/editors/choices.css.js +3 -0
- package/src/editors/choices.js +69 -0
- package/src/editors/colorpicker.js +103 -0
- package/src/editors/datetime.js +141 -0
- package/src/editors/describedby.js +188 -0
- package/src/editors/enum.js +136 -0
- package/src/editors/hidden.js +127 -0
- package/src/editors/index.js +81 -0
- package/src/editors/info.js +20 -0
- package/src/editors/integer.js +19 -0
- package/src/editors/ip.js +36 -0
- package/src/editors/jodit.js +64 -0
- package/src/editors/multiple.js +409 -0
- package/src/editors/multiselect.js +218 -0
- package/src/editors/null.js +18 -0
- package/src/editors/number.js +51 -0
- package/src/editors/object.css +41 -0
- package/src/editors/object.css.js +3 -0
- package/src/editors/object.js +1290 -0
- package/src/editors/radio.js +111 -0
- package/src/editors/sceditor.js +72 -0
- package/src/editors/select.js +370 -0
- package/src/editors/select2.js +110 -0
- package/src/editors/selectize.js +112 -0
- package/src/editors/signature.js +113 -0
- package/src/editors/simplemde.js +100 -0
- package/src/editors/starrating.css +52 -0
- package/src/editors/starrating.css.js +3 -0
- package/src/editors/starrating.js +135 -0
- package/src/editors/stepper.js +27 -0
- package/src/editors/string.js +372 -0
- package/src/editors/table.js +516 -0
- package/src/editors/upload.js +321 -0
- package/src/editors/uuid.js +56 -0
- package/src/iconlib.js +24 -0
- package/src/iconlibs/bootstrap2.js +28 -0
- package/src/iconlibs/bootstrap3.js +28 -0
- package/src/iconlibs/fontawesome3.js +28 -0
- package/src/iconlibs/fontawesome4.js +28 -0
- package/src/iconlibs/fontawesome5.js +28 -0
- package/src/iconlibs/foundation2.js +24 -0
- package/src/iconlibs/foundation3.js +28 -0
- package/src/iconlibs/index.js +25 -0
- package/src/iconlibs/jqueryui.js +28 -0
- package/src/iconlibs/materialicons.js +49 -0
- package/src/iconlibs/openiconic.js +28 -0
- package/src/iconlibs/spectre.js +28 -0
- package/src/resolvers.js +128 -0
- package/src/schemaloader.js +408 -0
- package/src/style.css +150 -0
- package/src/style.css.js +3 -0
- package/src/templates/default.js +52 -0
- package/src/templates/ejs.js +13 -0
- package/src/templates/handlebars.js +1 -0
- package/src/templates/hogan.js +10 -0
- package/src/templates/index.js +21 -0
- package/src/templates/lodash.js +9 -0
- package/src/templates/markup.js +9 -0
- package/src/templates/mustache.js +9 -0
- package/src/templates/swig.js +1 -0
- package/src/templates/underscore.js +9 -0
- package/src/theme.js +659 -0
- package/src/themes/barebones.css +35 -0
- package/src/themes/barebones.css.js +3 -0
- package/src/themes/barebones.js +28 -0
- package/src/themes/bootstrap2.js +319 -0
- package/src/themes/bootstrap3.css +0 -0
- package/src/themes/bootstrap3.css.js +3 -0
- package/src/themes/bootstrap3.js +315 -0
- package/src/themes/bootstrap4.css +89 -0
- package/src/themes/bootstrap4.css.js +3 -0
- package/src/themes/bootstrap4.js +690 -0
- package/src/themes/bootstrap5.css.js +3 -0
- package/src/themes/foundation.js +569 -0
- package/src/themes/html.css +60 -0
- package/src/themes/html.css.js +3 -0
- package/src/themes/html.js +71 -0
- package/src/themes/index.js +28 -0
- package/src/themes/jqueryui.js +198 -0
- package/src/themes/materialize.js +426 -0
- package/src/themes/spectre.css +208 -0
- package/src/themes/spectre.css.js +3 -0
- package/src/themes/spectre.js +406 -0
- package/src/themes/tailwind.css +249 -0
- package/src/themes/tailwind.css.js +3 -0
- package/src/themes/tailwind.js +443 -0
- package/src/utilities.js +138 -0
- package/src/validator.js +877 -0
- package/src/validators/ip-validator.js +51 -0
- package/tests/Dockerfile +3 -0
- package/tests/README.md +48 -0
- package/tests/codeceptjs/codecept.json +42 -0
- package/tests/codeceptjs/constrains/if-then-else_test.js +143 -0
- package/tests/codeceptjs/core_test.js +217 -0
- package/tests/codeceptjs/editors/advanced_test.js +13 -0
- package/tests/codeceptjs/editors/array_any_of_test.js +50 -0
- package/tests/codeceptjs/editors/array_test.js +900 -0
- package/tests/codeceptjs/editors/button_test.js +35 -0
- package/tests/codeceptjs/editors/checkbox_test.js +21 -0
- package/tests/codeceptjs/editors/colorpicker_test.js +27 -0
- package/tests/codeceptjs/editors/datetime_test.js +33 -0
- package/tests/codeceptjs/editors/inheritance_test.js +11 -0
- package/tests/codeceptjs/editors/integer_test.js +84 -0
- package/tests/codeceptjs/editors/issues/issue-gh-812_test.js +32 -0
- package/tests/codeceptjs/editors/jodit_test.js +24 -0
- package/tests/codeceptjs/editors/multiselect_test.js +8 -0
- package/tests/codeceptjs/editors/number_test.js +82 -0
- package/tests/codeceptjs/editors/object_test.js +204 -0
- package/tests/codeceptjs/editors/option-no_default_values_test.js +42 -0
- package/tests/codeceptjs/editors/programmatic-changes_test.js +20 -0
- package/tests/codeceptjs/editors/radio_test.js +10 -0
- package/tests/codeceptjs/editors/rating_test.js +13 -0
- package/tests/codeceptjs/editors/select_test.js +22 -0
- package/tests/codeceptjs/editors/stepper_test.js +27 -0
- package/tests/codeceptjs/editors/string_test.js +118 -0
- package/tests/codeceptjs/editors/table-confirm-delete_test.js +67 -0
- package/tests/codeceptjs/editors/tabs_test.js +14 -0
- package/tests/codeceptjs/editors/uuid_test.js +21 -0
- package/tests/codeceptjs/editors/validation_test.js +14 -0
- package/tests/codeceptjs/meta-schema_test.js +17 -0
- package/tests/codeceptjs/schemaloader_test.js +13 -0
- package/tests/codeceptjs/steps.d.ts +13 -0
- package/tests/codeceptjs/steps_file.js +12 -0
- package/tests/codeceptjs/themes_test.js +519 -0
- package/tests/docker-compose.yml +34 -0
- package/tests/fixtures/basic_person.json +26 -0
- package/tests/fixtures/nested_object.json +26 -0
- package/tests/fixtures/person.json +55 -0
- package/tests/fixtures/recursive.json +8 -0
- package/tests/fixtures/some_types.json +32 -0
- package/tests/fixtures/string.json +3 -0
- package/tests/fixtures/validation.json +1140 -0
- package/tests/pages/_demo.html +475 -0
- package/tests/pages/advanced.html +137 -0
- package/tests/pages/anyof.html +80 -0
- package/tests/pages/array-anyof.html +142 -0
- package/tests/pages/array-checkboxes.html +41 -0
- package/tests/pages/array-choices.html +45 -0
- package/tests/pages/array-integers.html +37 -0
- package/tests/pages/array-move-events.html +61 -0
- package/tests/pages/array-multiselects.html +42 -0
- package/tests/pages/array-nested-arrays.html +40 -0
- package/tests/pages/array-numbers.html +37 -0
- package/tests/pages/array-objects.html +42 -0
- package/tests/pages/array-ratings.html +40 -0
- package/tests/pages/array-selectize.html +51 -0
- package/tests/pages/array-selects.html +36 -0
- package/tests/pages/array-strings.html +36 -0
- package/tests/pages/array.html +42 -0
- package/tests/pages/assets/pages.css +130 -0
- package/tests/pages/button-callbacks.html +77 -0
- package/tests/pages/checkbox-labels.html +114 -0
- package/tests/pages/colorpicker-no-3rd-party.html +43 -0
- package/tests/pages/colorpicker-use-vanilla-picker.html +50 -0
- package/tests/pages/core.html +118 -0
- package/tests/pages/datetime.html +76 -0
- package/tests/pages/form-name.html +108 -0
- package/tests/pages/grid-strict.html +311 -0
- package/tests/pages/grid.html +284 -0
- package/tests/pages/if-then-else-allOf.html +117 -0
- package/tests/pages/inheritance.html +76 -0
- package/tests/pages/integer.html +68 -0
- package/tests/pages/issues/_template.html +50 -0
- package/tests/pages/issues/issue-gh-812.html +110 -0
- package/tests/pages/issues/issue-gh-823-meta-schema.html +35 -0
- package/tests/pages/issues/issue-gh-848.html +81 -0
- package/tests/pages/meta_schema.json +705 -0
- package/tests/pages/number.html +89 -0
- package/tests/pages/object-no-additional-properties.html +65 -0
- package/tests/pages/object-no-duplicated-id.html +68 -0
- package/tests/pages/object-required-properties.html +236 -0
- package/tests/pages/object-with-dependencies-array.html +46 -0
- package/tests/pages/object-with-dependencies.html +60 -0
- package/tests/pages/object.html +79 -0
- package/tests/pages/oneof.html +103 -0
- package/tests/pages/option-no_default_values.html +58 -0
- package/tests/pages/programmatic-changes.html +120 -0
- package/tests/pages/read-only.html +105 -0
- package/tests/pages/select.html +41 -0
- package/tests/pages/stepper.html +59 -0
- package/tests/pages/string-ace-editor.html +52 -0
- package/tests/pages/string-cleave.html +46 -0
- package/tests/pages/string-custom-attributes.html +62 -0
- package/tests/pages/string-formats.html +52 -0
- package/tests/pages/string-formats2.html +57 -0
- package/tests/pages/string-jodit-editor.html +49 -0
- package/tests/pages/string-sceditor.html +62 -0
- package/tests/pages/table-move-events.html +56 -0
- package/tests/pages/table.html +46 -0
- package/tests/pages/tabs.html +131 -0
- package/tests/pages/themes.html +527 -0
- package/tests/pages/translate-property.html +247 -0
- package/tests/pages/urn.html +93 -0
- package/tests/pages/uuid.html +72 -0
- package/tests/pages/validation.html +99 -0
- package/tests/unit/.eslintrc +8 -0
- package/tests/unit/core.spec.js +309 -0
- package/tests/unit/defaults.spec.js +40 -0
- package/tests/unit/editor.spec.js +160 -0
- package/tests/unit/editors/array.spec.js +86 -0
- package/tests/unit/editors/object.spec.js +79 -0
- package/tests/unit/editors/table.spec.js +91 -0
- package/tests/unit/readme.md +35 -0
- package/tests/unit/schemaloader.spec.js +498 -0
- package/tests/unit/validator.spec.js +94 -0
- package/tests/unit/validators/ip-validator.spec.js +62 -0
package/src/defaults.js
ADDED
|
@@ -0,0 +1,402 @@
|
|
|
1
|
+
import { resolvers } from './resolvers.js'
|
|
2
|
+
|
|
3
|
+
/* default theme */
|
|
4
|
+
const theme = 'html'
|
|
5
|
+
|
|
6
|
+
/* default template engine */
|
|
7
|
+
const template = 'default'
|
|
8
|
+
|
|
9
|
+
/* Global callback list */
|
|
10
|
+
const callbacks = {}
|
|
11
|
+
|
|
12
|
+
const themes = {}
|
|
13
|
+
const templates = {}
|
|
14
|
+
const iconlibs = {}
|
|
15
|
+
const editors = {}
|
|
16
|
+
const languages = {}
|
|
17
|
+
// eslint-disable-next-line camelcase
|
|
18
|
+
const custom_validators = []
|
|
19
|
+
|
|
20
|
+
/* Translation strings and default languages */
|
|
21
|
+
// eslint-disable-next-line camelcase
|
|
22
|
+
const default_language = 'en'
|
|
23
|
+
// eslint-disable-next-line camelcase
|
|
24
|
+
const language = default_language
|
|
25
|
+
|
|
26
|
+
languages.en = {
|
|
27
|
+
/**
|
|
28
|
+
* When a property is not set
|
|
29
|
+
*/
|
|
30
|
+
error_notset: 'Property must be set',
|
|
31
|
+
/**
|
|
32
|
+
* When a string must not be empty
|
|
33
|
+
*/
|
|
34
|
+
error_notempty: 'Value required',
|
|
35
|
+
/**
|
|
36
|
+
* When a value is not one of the enumerated values
|
|
37
|
+
*/
|
|
38
|
+
error_enum: 'Value must be one of the enumerated values',
|
|
39
|
+
/**
|
|
40
|
+
* When a value is not equal to the constant
|
|
41
|
+
*/
|
|
42
|
+
error_const: 'Value must be the constant value',
|
|
43
|
+
/**
|
|
44
|
+
* When a value doesn't validate any schema of a 'anyOf' combination
|
|
45
|
+
*/
|
|
46
|
+
error_anyOf: 'Value must validate against at least one of the provided schemas',
|
|
47
|
+
/**
|
|
48
|
+
* When a value doesn't validate
|
|
49
|
+
* @variables This key takes one variable: The number of schemas the value does not validate
|
|
50
|
+
*/
|
|
51
|
+
error_oneOf: 'Value must validate against exactly one of the provided schemas. It currently validates against {{0}} of the schemas.',
|
|
52
|
+
/**
|
|
53
|
+
* When a value does not validate a 'not' schema
|
|
54
|
+
*/
|
|
55
|
+
error_not: 'Value must not validate against the provided schema',
|
|
56
|
+
/**
|
|
57
|
+
* When a value does not match any of the provided types
|
|
58
|
+
*/
|
|
59
|
+
error_type_union: 'Value must be one of the provided types',
|
|
60
|
+
/**
|
|
61
|
+
* When a value does not match the given type
|
|
62
|
+
* @variables This key takes one variable: The type the value should be of
|
|
63
|
+
*/
|
|
64
|
+
error_type: 'Value must be of type {{0}}',
|
|
65
|
+
/**
|
|
66
|
+
* When the value validates one of the disallowed types
|
|
67
|
+
*/
|
|
68
|
+
error_disallow_union: 'Value must not be one of the provided disallowed types',
|
|
69
|
+
/**
|
|
70
|
+
* When the value validates a disallowed type
|
|
71
|
+
* @variables This key takes one variable: The type the value should not be of
|
|
72
|
+
*/
|
|
73
|
+
error_disallow: 'Value must not be of type {{0}}',
|
|
74
|
+
/**
|
|
75
|
+
* When a value is not a multiple of or divisible by a given number
|
|
76
|
+
* @variables This key takes one variable: The number mentioned above
|
|
77
|
+
*/
|
|
78
|
+
error_multipleOf: 'Value must be a multiple of {{0}}',
|
|
79
|
+
/**
|
|
80
|
+
* When a value is greater than it's supposed to be (exclusive)
|
|
81
|
+
* @variables This key takes one variable: The maximum
|
|
82
|
+
*/
|
|
83
|
+
error_maximum_excl: 'Value must be less than {{0}}',
|
|
84
|
+
/**
|
|
85
|
+
* When a value is greater than it's supposed to be (inclusive
|
|
86
|
+
* @variables This key takes one variable: The maximum
|
|
87
|
+
*/
|
|
88
|
+
error_maximum_incl: 'Value must be at most {{0}}',
|
|
89
|
+
/**
|
|
90
|
+
* When a value is lesser than it's supposed to be (exclusive)
|
|
91
|
+
* @variables This key takes one variable: The minimum
|
|
92
|
+
*/
|
|
93
|
+
error_minimum_excl: 'Value must be greater than {{0}}',
|
|
94
|
+
/**
|
|
95
|
+
* When a value is lesser than it's supposed to be (inclusive)
|
|
96
|
+
* @variables This key takes one variable: The minimum
|
|
97
|
+
*/
|
|
98
|
+
error_minimum_incl: 'Value must be at least {{0}}',
|
|
99
|
+
/**
|
|
100
|
+
* When a value have too many characters
|
|
101
|
+
* @variables This key takes one variable: The maximum character count
|
|
102
|
+
*/
|
|
103
|
+
error_maxLength: 'Value must be at most {{0}} characters long',
|
|
104
|
+
/**
|
|
105
|
+
* When a value does not have enough characters
|
|
106
|
+
* @variables This key takes one variable: The minimum character count
|
|
107
|
+
*/
|
|
108
|
+
error_minLength: 'Value must be at least {{0}} characters long',
|
|
109
|
+
/**
|
|
110
|
+
* When a value does not match a given pattern
|
|
111
|
+
*/
|
|
112
|
+
error_pattern: 'Value must match the pattern {{0}}',
|
|
113
|
+
/**
|
|
114
|
+
* When an array has additional items whereas it is not supposed to
|
|
115
|
+
*/
|
|
116
|
+
error_additionalItems: 'No additional items allowed in this array',
|
|
117
|
+
/**
|
|
118
|
+
* When there are to many items in an array
|
|
119
|
+
* @variables This key takes one variable: The maximum item count
|
|
120
|
+
*/
|
|
121
|
+
error_maxItems: 'Value must have at most {{0}} items',
|
|
122
|
+
/**
|
|
123
|
+
* When there are not enough items in an array
|
|
124
|
+
* @variables This key takes one variable: The minimum item count
|
|
125
|
+
*/
|
|
126
|
+
error_minItems: 'Value must have at least {{0}} items',
|
|
127
|
+
/**
|
|
128
|
+
* When an array is supposed to have unique items but has duplicates
|
|
129
|
+
*/
|
|
130
|
+
error_uniqueItems: 'Array must have unique items',
|
|
131
|
+
/**
|
|
132
|
+
* When there are too many properties in an object
|
|
133
|
+
* @variables This key takes one variable: The maximum property count
|
|
134
|
+
*/
|
|
135
|
+
error_maxProperties: 'Object must have at most {{0}} properties',
|
|
136
|
+
/**
|
|
137
|
+
* When there are not enough properties in an object
|
|
138
|
+
* @variables This key takes one variable: The minimum property count
|
|
139
|
+
*/
|
|
140
|
+
error_minProperties: 'Object must have at least {{0}} properties',
|
|
141
|
+
/**
|
|
142
|
+
* When a required property is not defined
|
|
143
|
+
* @variables This key takes one variable: The name of the missing property
|
|
144
|
+
*/
|
|
145
|
+
error_required: "Object is missing the required property '{{0}}'",
|
|
146
|
+
/**
|
|
147
|
+
* When there is an additional property is set whereas there should be none
|
|
148
|
+
* @variables This key takes one variable: The name of the additional property
|
|
149
|
+
*/
|
|
150
|
+
error_additional_properties: 'No additional properties allowed, but property {{0}} is set',
|
|
151
|
+
/**
|
|
152
|
+
* When there is a propertyName that sets a max length and a property name exceeds the max length
|
|
153
|
+
* @variables This key takes one variable: The name of the invalid property
|
|
154
|
+
*/
|
|
155
|
+
error_property_names_exceeds_maxlength: 'Property name {{0}} exceeds maxLength',
|
|
156
|
+
/**
|
|
157
|
+
* When there is a propertyName that sets an enum and a property name matches none of the possible enum
|
|
158
|
+
* @variables This key takes one variable: The name of the invalid property
|
|
159
|
+
*/
|
|
160
|
+
error_property_names_enum_mismatch: 'Property name {{0}} does not match any enum values',
|
|
161
|
+
/**
|
|
162
|
+
* When there is a propertyName that sets a const and a property does not match the const value
|
|
163
|
+
* @variables This key takes one variable: The name of the invalid property
|
|
164
|
+
*/
|
|
165
|
+
error_property_names_const_mismatch: 'Property name {{0}} does not match the const value',
|
|
166
|
+
/**
|
|
167
|
+
* When there is a propertyName that sets a pattern and a property name does not match the pattern
|
|
168
|
+
* @variables This key takes one variable: The name of the invalid property
|
|
169
|
+
*/
|
|
170
|
+
error_property_names_pattern_mismatch: 'Property name {{0}} does not match pattern',
|
|
171
|
+
/**
|
|
172
|
+
* When the propertyName is set to false and there is at least one property
|
|
173
|
+
* @variables This key takes one variable: The name of the invalid property
|
|
174
|
+
*/
|
|
175
|
+
error_property_names_false: 'Property name {{0}} fails when propertyName is false',
|
|
176
|
+
/**
|
|
177
|
+
* When the propertyName specifies a maxLength that is not a number
|
|
178
|
+
* @variables This key takes one variable: The name of the current property
|
|
179
|
+
*/
|
|
180
|
+
error_property_names_maxlength: 'Property name {{0}} cannot match invalid maxLength',
|
|
181
|
+
/**
|
|
182
|
+
* When the propertyName specifies an enum that is not an array
|
|
183
|
+
* @variables This key takes one variable: The name of the current property
|
|
184
|
+
*/
|
|
185
|
+
error_property_names_enum: 'Property name {{0}} cannot match invalid enum',
|
|
186
|
+
/**
|
|
187
|
+
* When the propertyName specifies a pattern that is not a string
|
|
188
|
+
* @variables This key takes one variable: The name of the current property
|
|
189
|
+
*/
|
|
190
|
+
error_property_names_pattern: 'Property name {{0}} cannot match invalid pattern',
|
|
191
|
+
/**
|
|
192
|
+
* When the propertyName is unsupported
|
|
193
|
+
* @variables This key takes one variable: The name of the invalid propertyName
|
|
194
|
+
*/
|
|
195
|
+
error_property_names_unsupported: 'Unsupported propertyName {{0}}',
|
|
196
|
+
/**
|
|
197
|
+
* When a dependency is not resolved
|
|
198
|
+
* @variables This key takes one variable: The name of the missing property for the dependency
|
|
199
|
+
*/
|
|
200
|
+
error_dependency: 'Must have property {{0}}',
|
|
201
|
+
/**
|
|
202
|
+
* When a date is in incorrect format
|
|
203
|
+
* @variables This key takes one variable: The valid format
|
|
204
|
+
*/
|
|
205
|
+
error_date: 'Date must be in the format {{0}}',
|
|
206
|
+
/**
|
|
207
|
+
* When a time is in incorrect format
|
|
208
|
+
* @variables This key takes one variable: The valid format
|
|
209
|
+
*/
|
|
210
|
+
error_time: 'Time must be in the format {{0}}',
|
|
211
|
+
/**
|
|
212
|
+
* When a datetime-local is in incorrect format
|
|
213
|
+
* @variables This key takes one variable: The valid format
|
|
214
|
+
*/
|
|
215
|
+
error_datetime_local: 'Datetime must be in the format {{0}}',
|
|
216
|
+
/**
|
|
217
|
+
* When a integer date is less than 1 January 1970
|
|
218
|
+
*/
|
|
219
|
+
error_invalid_epoch: 'Date must be greater than 1 January 1970',
|
|
220
|
+
/**
|
|
221
|
+
* When an IPv4 is in incorrect format
|
|
222
|
+
*/
|
|
223
|
+
error_ipv4: 'Value must be a valid IPv4 address in the form of 4 numbers between 0 and 255, separated by dots',
|
|
224
|
+
/**
|
|
225
|
+
* When an IPv6 is in incorrect format
|
|
226
|
+
*/
|
|
227
|
+
error_ipv6: 'Value must be a valid IPv6 address',
|
|
228
|
+
/**
|
|
229
|
+
* When a hostname is in incorrect format
|
|
230
|
+
*/
|
|
231
|
+
error_hostname: 'The hostname has the wrong format',
|
|
232
|
+
/**
|
|
233
|
+
* Text/Title on Save button
|
|
234
|
+
*/
|
|
235
|
+
button_save: 'Save',
|
|
236
|
+
/**
|
|
237
|
+
* Text/Title on Copy button
|
|
238
|
+
*/
|
|
239
|
+
button_copy: 'Copy',
|
|
240
|
+
/**
|
|
241
|
+
* Text/Title on Cancel button
|
|
242
|
+
*/
|
|
243
|
+
button_cancel: 'Cancel',
|
|
244
|
+
/**
|
|
245
|
+
* Text/Title on Add button
|
|
246
|
+
*/
|
|
247
|
+
button_add: 'Add',
|
|
248
|
+
/**
|
|
249
|
+
* Text on Delete All buttons
|
|
250
|
+
*/
|
|
251
|
+
button_delete_all: 'All',
|
|
252
|
+
/**
|
|
253
|
+
* Title on Delete All buttons
|
|
254
|
+
*/
|
|
255
|
+
button_delete_all_title: 'Delete All',
|
|
256
|
+
/**
|
|
257
|
+
* Text on Delete Last buttons
|
|
258
|
+
* @variable This key takes one variable: The title of object to delete
|
|
259
|
+
*/
|
|
260
|
+
button_delete_last: 'Last {{0}}',
|
|
261
|
+
/**
|
|
262
|
+
* Title on Delete Last buttons
|
|
263
|
+
* @variable This key takes one variable: The title of object to delete
|
|
264
|
+
*/
|
|
265
|
+
button_delete_last_title: 'Delete Last {{0}}',
|
|
266
|
+
/**
|
|
267
|
+
* Title on Add Row buttons
|
|
268
|
+
* @variable This key takes one variable: The title of object to add
|
|
269
|
+
*/
|
|
270
|
+
button_add_row_title: 'Add {{0}}',
|
|
271
|
+
/**
|
|
272
|
+
* Title on Move Down buttons
|
|
273
|
+
*/
|
|
274
|
+
button_move_down_title: 'Move down',
|
|
275
|
+
/**
|
|
276
|
+
* Title on Move Up buttons
|
|
277
|
+
*/
|
|
278
|
+
button_move_up_title: 'Move up',
|
|
279
|
+
/**
|
|
280
|
+
* Text on Object Properties buttons
|
|
281
|
+
*/
|
|
282
|
+
edit_properties: 'Properties',
|
|
283
|
+
property_name_placeholder: 'Property name...',
|
|
284
|
+
properties: 'properties',
|
|
285
|
+
duplicate_property_error: 'There is already a property with that name',
|
|
286
|
+
/**
|
|
287
|
+
* Title on Object Properties buttons
|
|
288
|
+
*/
|
|
289
|
+
button_object_properties: 'Object Properties',
|
|
290
|
+
/**
|
|
291
|
+
* Title on Copy Row button
|
|
292
|
+
* @variable This key takes one variable: The title of object to delete
|
|
293
|
+
*/
|
|
294
|
+
button_copy_row_title: 'Copy {{0}}',
|
|
295
|
+
/**
|
|
296
|
+
* Title on Delete Row buttons
|
|
297
|
+
* @variable This key takes one variable: The title of object to delete
|
|
298
|
+
*/
|
|
299
|
+
button_delete_row_title: 'Delete {{0}}',
|
|
300
|
+
/**
|
|
301
|
+
* Title on Delete Row buttons, short version (no parameter with the object title)
|
|
302
|
+
*/
|
|
303
|
+
button_delete_row_title_short: 'Delete',
|
|
304
|
+
/**
|
|
305
|
+
* Title on Copy Row buttons, short version (no parameter with the object title)
|
|
306
|
+
*/
|
|
307
|
+
button_copy_row_title_short: 'Copy',
|
|
308
|
+
/**
|
|
309
|
+
* Title on Collapse buttons
|
|
310
|
+
*/
|
|
311
|
+
button_collapse: 'Collapse',
|
|
312
|
+
/**
|
|
313
|
+
* Title on Expand buttons
|
|
314
|
+
*/
|
|
315
|
+
button_expand: 'Expand',
|
|
316
|
+
/**
|
|
317
|
+
* Title on Edit JSON buttons
|
|
318
|
+
*/
|
|
319
|
+
button_edit_json: 'Edit JSON',
|
|
320
|
+
/**
|
|
321
|
+
* Text/Title on Upload buttons
|
|
322
|
+
*/
|
|
323
|
+
button_upload: 'Upload',
|
|
324
|
+
/**
|
|
325
|
+
* Title on Flatpickr toggle buttons
|
|
326
|
+
*/
|
|
327
|
+
flatpickr_toggle_button: 'Toggle',
|
|
328
|
+
/**
|
|
329
|
+
* Title on Flatpickr clear buttons
|
|
330
|
+
*/
|
|
331
|
+
flatpickr_clear_button: 'Clear',
|
|
332
|
+
/**
|
|
333
|
+
* Choices input field placeholder text
|
|
334
|
+
*/
|
|
335
|
+
choices_placeholder_text: 'Start typing to add value',
|
|
336
|
+
/**
|
|
337
|
+
* Default title for array items
|
|
338
|
+
*/
|
|
339
|
+
default_array_item_title: 'item',
|
|
340
|
+
/**
|
|
341
|
+
* Warning when deleting a node
|
|
342
|
+
*/
|
|
343
|
+
button_delete_node_warning: 'Are you sure you want to remove this node?'
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
/* Default per-editor options */
|
|
347
|
+
Object.entries(editors).forEach(([i, editor]) => { editors[i].options = editor.options || {} })
|
|
348
|
+
|
|
349
|
+
/* Default upload handler */
|
|
350
|
+
function upload (type, file, cbs) {
|
|
351
|
+
// eslint-disable-next-line no-console
|
|
352
|
+
console.log('Upload handler required for upload editor')
|
|
353
|
+
}
|
|
354
|
+
|
|
355
|
+
/* String translate function */
|
|
356
|
+
function translate (key, variables) {
|
|
357
|
+
const lang = defaults.languages[defaults.language]
|
|
358
|
+
if (!lang) throw new Error(`Unknown language ${defaults.language}`)
|
|
359
|
+
|
|
360
|
+
let string = lang[key] || defaults.languages[default_language][key] || key
|
|
361
|
+
|
|
362
|
+
if (variables) {
|
|
363
|
+
for (let i = 0; i < variables.length; i++) {
|
|
364
|
+
string = string.replace(new RegExp(`\\{\\{${i}}}`, 'g'), variables[i])
|
|
365
|
+
}
|
|
366
|
+
}
|
|
367
|
+
|
|
368
|
+
return string
|
|
369
|
+
}
|
|
370
|
+
|
|
371
|
+
/* Text element translate function */
|
|
372
|
+
|
|
373
|
+
function translateProperty (text, variables) {
|
|
374
|
+
return text
|
|
375
|
+
}
|
|
376
|
+
|
|
377
|
+
/* Default options when initializing JSON Editor */
|
|
378
|
+
const options = {
|
|
379
|
+
upload,
|
|
380
|
+
prompt_before_delete: true,
|
|
381
|
+
use_default_values: true,
|
|
382
|
+
max_depth: 0
|
|
383
|
+
}
|
|
384
|
+
|
|
385
|
+
/* This assignment was previously in index.js but makes more sense here */
|
|
386
|
+
export const defaults = {
|
|
387
|
+
options,
|
|
388
|
+
theme,
|
|
389
|
+
template,
|
|
390
|
+
themes,
|
|
391
|
+
callbacks,
|
|
392
|
+
templates,
|
|
393
|
+
iconlibs,
|
|
394
|
+
editors,
|
|
395
|
+
languages,
|
|
396
|
+
resolvers,
|
|
397
|
+
custom_validators,
|
|
398
|
+
default_language,
|
|
399
|
+
language,
|
|
400
|
+
translate,
|
|
401
|
+
translateProperty
|
|
402
|
+
}
|