diff --git a/jsonforms-tooling-common/package-lock.json b/jsonforms-tooling-common/package-lock.json
index 725d515..d5cf51f 100644
--- a/jsonforms-tooling-common/package-lock.json
+++ b/jsonforms-tooling-common/package-lock.json
@@ -49,6 +49,16 @@
"@types/node": "*"
}
},
+ "@types/chokidar": {
+ "version": "1.7.5",
+ "resolved": "https://registry.npmjs.org/@types/chokidar/-/chokidar-1.7.5.tgz",
+ "integrity": "sha512-PDkSRY7KltW3M60hSBlerxI8SFPXsO3AL/aRVsO4Kh9IHRW74Ih75gUuTd/aE4LSSFqypb10UIX3QzOJwBQMGQ==",
+ "dev": true,
+ "requires": {
+ "@types/events": "*",
+ "@types/node": "*"
+ }
+ },
"@types/enzyme": {
"version": "3.9.0",
"resolved": "https://registry.npmjs.org/@types/enzyme/-/enzyme-3.9.0.tgz",
@@ -66,6 +76,12 @@
"@types/enzyme": "*"
}
},
+ "@types/events": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz",
+ "integrity": "sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==",
+ "dev": true
+ },
"@types/node": {
"version": "11.10.5",
"resolved": "https://registry.npmjs.org/@types/node/-/node-11.10.5.tgz",
@@ -123,6 +139,25 @@
"color-convert": "^1.9.0"
}
},
+ "anymatch": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz",
+ "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==",
+ "requires": {
+ "micromatch": "^3.1.4",
+ "normalize-path": "^2.1.1"
+ },
+ "dependencies": {
+ "normalize-path": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
+ "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=",
+ "requires": {
+ "remove-trailing-separator": "^1.0.1"
+ }
+ }
+ }
+ },
"argparse": {
"version": "1.0.10",
"resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
@@ -174,6 +209,11 @@
"resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz",
"integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c="
},
+ "async-each": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz",
+ "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0="
+ },
"asynckit": {
"version": "0.4.0",
"resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
@@ -239,6 +279,11 @@
}
}
},
+ "binary-extensions": {
+ "version": "1.13.0",
+ "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.0.tgz",
+ "integrity": "sha512-EgmjVLMn22z7eGGv3kcnHwSnJXmFHjISTY9E/S5lIcTD3Oxw05QTcBLNkJFzcb3cNueUdF/IN4U+d78V0zO8Hw=="
+ },
"brace-expansion": {
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
@@ -311,6 +356,25 @@
"resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz",
"integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA=="
},
+ "chokidar": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.2.tgz",
+ "integrity": "sha512-IwXUx0FXc5ibYmPC2XeEj5mpXoV66sR+t3jqu2NS2GYwCktt3KF1/Qqjws/NkegajBA4RbZ5+DDwlOiJsxDHEg==",
+ "requires": {
+ "anymatch": "^2.0.0",
+ "async-each": "^1.0.1",
+ "braces": "^2.3.2",
+ "fsevents": "^1.2.7",
+ "glob-parent": "^3.1.0",
+ "inherits": "^2.0.3",
+ "is-binary-path": "^1.0.0",
+ "is-glob": "^4.0.0",
+ "normalize-path": "^3.0.0",
+ "path-is-absolute": "^1.0.0",
+ "readdirp": "^2.2.1",
+ "upath": "^1.1.0"
+ }
+ },
"class-utils": {
"version": "0.3.6",
"resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
@@ -742,6 +806,468 @@
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
"integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
},
+ "fsevents": {
+ "version": "1.2.7",
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.7.tgz",
+ "integrity": "sha512-Pxm6sI2MeBD7RdD12RYsqaP0nMiwx8eZBXCa6z2L+mRHm2DYrOYwihmhjpkdjUHwQhslWQjRpEgNq4XvBmaAuw==",
+ "optional": true,
+ "requires": {
+ "nan": "^2.9.2",
+ "node-pre-gyp": "^0.10.0"
+ },
+ "dependencies": {
+ "abbrev": {
+ "version": "1.1.1",
+ "bundled": true,
+ "optional": true
+ },
+ "ansi-regex": {
+ "version": "2.1.1",
+ "bundled": true
+ },
+ "aproba": {
+ "version": "1.2.0",
+ "bundled": true,
+ "optional": true
+ },
+ "are-we-there-yet": {
+ "version": "1.1.5",
+ "bundled": true,
+ "optional": true,
+ "requires": {
+ "delegates": "^1.0.0",
+ "readable-stream": "^2.0.6"
+ }
+ },
+ "balanced-match": {
+ "version": "1.0.0",
+ "bundled": true
+ },
+ "brace-expansion": {
+ "version": "1.1.11",
+ "bundled": true,
+ "requires": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "chownr": {
+ "version": "1.1.1",
+ "bundled": true,
+ "optional": true
+ },
+ "code-point-at": {
+ "version": "1.1.0",
+ "bundled": true
+ },
+ "concat-map": {
+ "version": "0.0.1",
+ "bundled": true
+ },
+ "console-control-strings": {
+ "version": "1.1.0",
+ "bundled": true
+ },
+ "core-util-is": {
+ "version": "1.0.2",
+ "bundled": true,
+ "optional": true
+ },
+ "debug": {
+ "version": "2.6.9",
+ "bundled": true,
+ "optional": true,
+ "requires": {
+ "ms": "2.0.0"
+ }
+ },
+ "deep-extend": {
+ "version": "0.6.0",
+ "bundled": true,
+ "optional": true
+ },
+ "delegates": {
+ "version": "1.0.0",
+ "bundled": true,
+ "optional": true
+ },
+ "detect-libc": {
+ "version": "1.0.3",
+ "bundled": true,
+ "optional": true
+ },
+ "fs-minipass": {
+ "version": "1.2.5",
+ "bundled": true,
+ "optional": true,
+ "requires": {
+ "minipass": "^2.2.1"
+ }
+ },
+ "fs.realpath": {
+ "version": "1.0.0",
+ "bundled": true,
+ "optional": true
+ },
+ "gauge": {
+ "version": "2.7.4",
+ "bundled": true,
+ "optional": true,
+ "requires": {
+ "aproba": "^1.0.3",
+ "console-control-strings": "^1.0.0",
+ "has-unicode": "^2.0.0",
+ "object-assign": "^4.1.0",
+ "signal-exit": "^3.0.0",
+ "string-width": "^1.0.1",
+ "strip-ansi": "^3.0.1",
+ "wide-align": "^1.1.0"
+ }
+ },
+ "glob": {
+ "version": "7.1.3",
+ "bundled": true,
+ "optional": true,
+ "requires": {
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.0.4",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ }
+ },
+ "has-unicode": {
+ "version": "2.0.1",
+ "bundled": true,
+ "optional": true
+ },
+ "iconv-lite": {
+ "version": "0.4.24",
+ "bundled": true,
+ "optional": true,
+ "requires": {
+ "safer-buffer": ">= 2.1.2 < 3"
+ }
+ },
+ "ignore-walk": {
+ "version": "3.0.1",
+ "bundled": true,
+ "optional": true,
+ "requires": {
+ "minimatch": "^3.0.4"
+ }
+ },
+ "inflight": {
+ "version": "1.0.6",
+ "bundled": true,
+ "optional": true,
+ "requires": {
+ "once": "^1.3.0",
+ "wrappy": "1"
+ }
+ },
+ "inherits": {
+ "version": "2.0.3",
+ "bundled": true
+ },
+ "ini": {
+ "version": "1.3.5",
+ "bundled": true,
+ "optional": true
+ },
+ "is-fullwidth-code-point": {
+ "version": "1.0.0",
+ "bundled": true,
+ "requires": {
+ "number-is-nan": "^1.0.0"
+ }
+ },
+ "isarray": {
+ "version": "1.0.0",
+ "bundled": true,
+ "optional": true
+ },
+ "minimatch": {
+ "version": "3.0.4",
+ "bundled": true,
+ "requires": {
+ "brace-expansion": "^1.1.7"
+ }
+ },
+ "minimist": {
+ "version": "0.0.8",
+ "bundled": true
+ },
+ "minipass": {
+ "version": "2.3.5",
+ "bundled": true,
+ "requires": {
+ "safe-buffer": "^5.1.2",
+ "yallist": "^3.0.0"
+ }
+ },
+ "minizlib": {
+ "version": "1.2.1",
+ "bundled": true,
+ "optional": true,
+ "requires": {
+ "minipass": "^2.2.1"
+ }
+ },
+ "mkdirp": {
+ "version": "0.5.1",
+ "bundled": true,
+ "requires": {
+ "minimist": "0.0.8"
+ }
+ },
+ "ms": {
+ "version": "2.0.0",
+ "bundled": true,
+ "optional": true
+ },
+ "needle": {
+ "version": "2.2.4",
+ "bundled": true,
+ "optional": true,
+ "requires": {
+ "debug": "^2.1.2",
+ "iconv-lite": "^0.4.4",
+ "sax": "^1.2.4"
+ }
+ },
+ "node-pre-gyp": {
+ "version": "0.10.3",
+ "bundled": true,
+ "optional": true,
+ "requires": {
+ "detect-libc": "^1.0.2",
+ "mkdirp": "^0.5.1",
+ "needle": "^2.2.1",
+ "nopt": "^4.0.1",
+ "npm-packlist": "^1.1.6",
+ "npmlog": "^4.0.2",
+ "rc": "^1.2.7",
+ "rimraf": "^2.6.1",
+ "semver": "^5.3.0",
+ "tar": "^4"
+ }
+ },
+ "nopt": {
+ "version": "4.0.1",
+ "bundled": true,
+ "optional": true,
+ "requires": {
+ "abbrev": "1",
+ "osenv": "^0.1.4"
+ }
+ },
+ "npm-bundled": {
+ "version": "1.0.5",
+ "bundled": true,
+ "optional": true
+ },
+ "npm-packlist": {
+ "version": "1.2.0",
+ "bundled": true,
+ "optional": true,
+ "requires": {
+ "ignore-walk": "^3.0.1",
+ "npm-bundled": "^1.0.1"
+ }
+ },
+ "npmlog": {
+ "version": "4.1.2",
+ "bundled": true,
+ "optional": true,
+ "requires": {
+ "are-we-there-yet": "~1.1.2",
+ "console-control-strings": "~1.1.0",
+ "gauge": "~2.7.3",
+ "set-blocking": "~2.0.0"
+ }
+ },
+ "number-is-nan": {
+ "version": "1.0.1",
+ "bundled": true
+ },
+ "object-assign": {
+ "version": "4.1.1",
+ "bundled": true,
+ "optional": true
+ },
+ "once": {
+ "version": "1.4.0",
+ "bundled": true,
+ "requires": {
+ "wrappy": "1"
+ }
+ },
+ "os-homedir": {
+ "version": "1.0.2",
+ "bundled": true,
+ "optional": true
+ },
+ "os-tmpdir": {
+ "version": "1.0.2",
+ "bundled": true,
+ "optional": true
+ },
+ "osenv": {
+ "version": "0.1.5",
+ "bundled": true,
+ "optional": true,
+ "requires": {
+ "os-homedir": "^1.0.0",
+ "os-tmpdir": "^1.0.0"
+ }
+ },
+ "path-is-absolute": {
+ "version": "1.0.1",
+ "bundled": true,
+ "optional": true
+ },
+ "process-nextick-args": {
+ "version": "2.0.0",
+ "bundled": true,
+ "optional": true
+ },
+ "rc": {
+ "version": "1.2.8",
+ "bundled": true,
+ "optional": true,
+ "requires": {
+ "deep-extend": "^0.6.0",
+ "ini": "~1.3.0",
+ "minimist": "^1.2.0",
+ "strip-json-comments": "~2.0.1"
+ },
+ "dependencies": {
+ "minimist": {
+ "version": "1.2.0",
+ "bundled": true,
+ "optional": true
+ }
+ }
+ },
+ "readable-stream": {
+ "version": "2.3.6",
+ "bundled": true,
+ "optional": true,
+ "requires": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.3",
+ "isarray": "~1.0.0",
+ "process-nextick-args": "~2.0.0",
+ "safe-buffer": "~5.1.1",
+ "string_decoder": "~1.1.1",
+ "util-deprecate": "~1.0.1"
+ }
+ },
+ "rimraf": {
+ "version": "2.6.3",
+ "bundled": true,
+ "optional": true,
+ "requires": {
+ "glob": "^7.1.3"
+ }
+ },
+ "safe-buffer": {
+ "version": "5.1.2",
+ "bundled": true
+ },
+ "safer-buffer": {
+ "version": "2.1.2",
+ "bundled": true,
+ "optional": true
+ },
+ "sax": {
+ "version": "1.2.4",
+ "bundled": true,
+ "optional": true
+ },
+ "semver": {
+ "version": "5.6.0",
+ "bundled": true,
+ "optional": true
+ },
+ "set-blocking": {
+ "version": "2.0.0",
+ "bundled": true,
+ "optional": true
+ },
+ "signal-exit": {
+ "version": "3.0.2",
+ "bundled": true,
+ "optional": true
+ },
+ "string-width": {
+ "version": "1.0.2",
+ "bundled": true,
+ "requires": {
+ "code-point-at": "^1.0.0",
+ "is-fullwidth-code-point": "^1.0.0",
+ "strip-ansi": "^3.0.0"
+ }
+ },
+ "string_decoder": {
+ "version": "1.1.1",
+ "bundled": true,
+ "optional": true,
+ "requires": {
+ "safe-buffer": "~5.1.0"
+ }
+ },
+ "strip-ansi": {
+ "version": "3.0.1",
+ "bundled": true,
+ "requires": {
+ "ansi-regex": "^2.0.0"
+ }
+ },
+ "strip-json-comments": {
+ "version": "2.0.1",
+ "bundled": true,
+ "optional": true
+ },
+ "tar": {
+ "version": "4.4.8",
+ "bundled": true,
+ "optional": true,
+ "requires": {
+ "chownr": "^1.1.1",
+ "fs-minipass": "^1.2.5",
+ "minipass": "^2.3.4",
+ "minizlib": "^1.1.1",
+ "mkdirp": "^0.5.0",
+ "safe-buffer": "^5.1.2",
+ "yallist": "^3.0.2"
+ }
+ },
+ "util-deprecate": {
+ "version": "1.0.2",
+ "bundled": true,
+ "optional": true
+ },
+ "wide-align": {
+ "version": "1.1.3",
+ "bundled": true,
+ "optional": true,
+ "requires": {
+ "string-width": "^1.0.2 || 2"
+ }
+ },
+ "wrappy": {
+ "version": "1.0.2",
+ "bundled": true
+ },
+ "yallist": {
+ "version": "3.0.3",
+ "bundled": true
+ }
+ }
+ },
"get-value": {
"version": "2.0.6",
"resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz",
@@ -933,6 +1459,14 @@
}
}
},
+ "is-binary-path": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz",
+ "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=",
+ "requires": {
+ "binary-extensions": "^1.0.0"
+ }
+ },
"is-buffer": {
"version": "1.1.6",
"resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
@@ -1248,6 +1782,12 @@
"resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz",
"integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s="
},
+ "nan": {
+ "version": "2.12.1",
+ "resolved": "https://registry.npmjs.org/nan/-/nan-2.12.1.tgz",
+ "integrity": "sha512-JY7V6lRkStKcKTvHO5NVSQRv+RV+FIL5pvDoLiAtSL9pKlC5x9PKQcZDsq7m4FO4d57mkhC6Z+QhAh3Jdk5JFw==",
+ "optional": true
+ },
"nanomatch": {
"version": "1.2.13",
"resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz",
@@ -1276,6 +1816,11 @@
"resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
"integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ=="
},
+ "normalize-path": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
+ "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA=="
+ },
"object-assign": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
@@ -1461,6 +2006,16 @@
"util-deprecate": "~1.0.1"
}
},
+ "readdirp": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz",
+ "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==",
+ "requires": {
+ "graceful-fs": "^4.1.11",
+ "micromatch": "^3.1.10",
+ "readable-stream": "^2.0.2"
+ }
+ },
"redux": {
"version": "3.7.2",
"resolved": "https://registry.npmjs.org/redux/-/redux-3.7.2.tgz",
@@ -1481,6 +2036,11 @@
"safe-regex": "^1.1.0"
}
},
+ "remove-trailing-separator": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz",
+ "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8="
+ },
"repeat-element": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz",
@@ -2000,6 +2560,11 @@
"resolved": "https://registry.npmjs.org/untildify/-/untildify-3.0.3.tgz",
"integrity": "sha512-iSk/J8efr8uPT/Z4eSUywnqyrQU7DSdMfdqK4iWEaUVVmcP5JcnpRqmVMwcwcnmI1ATFNgC5V90u09tBynNFKA=="
},
+ "upath": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.0.tgz",
+ "integrity": "sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw=="
+ },
"uri-js": {
"version": "4.2.2",
"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz",
diff --git a/jsonforms-tooling-common/package.json b/jsonforms-tooling-common/package.json
index f7e8b32..e844190 100644
--- a/jsonforms-tooling-common/package.json
+++ b/jsonforms-tooling-common/package.json
@@ -18,12 +18,14 @@
"@jsonforms/core": "^2.2.0",
"@jsonforms/react": "^2.2.0",
"ajv": "^6.5.5",
- "yeoman-environment": "^2.3.4",
"react": "^16.8.3",
- "redux": "^3.0.0"
+ "redux": "^3.0.0",
+ "chokidar": "^2.1.2",
+ "yeoman-environment": "^2.3.4"
},
"type-check": "tsc",
"devDependencies": {
+ "@types/chokidar": "^1.7.5",
"rimraf": "^2.6.2"
}
}
diff --git a/jsonforms-tooling-common/src/index.ts b/jsonforms-tooling-common/src/index.ts
index 14b80e5..377f134 100644
--- a/jsonforms-tooling-common/src/index.ts
+++ b/jsonforms-tooling-common/src/index.ts
@@ -5,7 +5,8 @@
import { generateDefaultUISchema } from '@jsonforms/core';
import { readFile, writeFile } from 'fs';
import Ajv from 'ajv';
-import { sep } from 'path';
+import { join, sep } from 'path';
+import { watch } from 'chokidar';
const yeoman = require('yeoman-environment');
export enum Project {
@@ -67,6 +68,85 @@ export const generateUISchema = (editorInstance: any, path: string) => {
}
};
+/**
+ * Shows a preview form of a given json schema and ui schema in a new panel inside the editor
+ * @param {any} editorInstance the instance of the editor
+ * @param {string} path the path to the schema or ui-schema file
+ * @param {string} extensionPath the path to the extension directory
+ */
+export const showPreview = (editorInstance: any, path: any, extensionPath: string) => {
+ if (!path) {
+ editorInstance.window.showOpenDialog(editorInstance.OpenDialogOptions = {
+ canSelectMany: false,
+ canSelectFolders: false,
+ canSelectFiles: true,
+ openLabel: 'Select ui schema',
+ filters: {
+ 'Json Files': ['json'],
+ },
+ }).then((uiSchemafileUri: any) => {
+ if (uiSchemafileUri && uiSchemafileUri[0].fsPath) {
+ editorInstance.window.showOpenDialog(editorInstance.OpenDialogOptions = {
+ canSelectMany: false,
+ canSelectFolders: false,
+ canSelectFiles: true,
+ openLabel: 'Select schema',
+ filters: {
+ 'Json Files': ['json'],
+ },
+ }).then((schemaFileUri: any) => {
+ if (schemaFileUri && schemaFileUri[0].fsPath) {
+ const uiSchemaPath = uiSchemafileUri[0].fsPath;
+ const schemaPath = schemaFileUri[0].fsPath;
+ showWebview(editorInstance, 'preview', extensionPath, uiSchemaPath, schemaPath);
+ } else {
+ showMessage('Please select a json schema file', 'err');
+ return;
+ }
+ });
+ } else {
+ showMessage('Please select a ui schema file', 'err');
+ return;
+ }
+ });
+ } else {
+ editorInstance.window.showQuickPick(['UI Schema', 'Schema'], editorInstance.QuickPickOptions = {
+ canSelectMany: false,
+ placeHolder: 'Was that the UI schema or the schema file?'
+ }).then((schema: any) => {
+ if (schema) {
+ let selectLabel = 'Select ui Schema';
+ if (schema === 'UI Schema') {
+ selectLabel = 'Select Schema';
+ }
+ editorInstance.window.showOpenDialog(editorInstance.OpenDialogOptions = {
+ canSelectMany: false,
+ canSelectFolders: false,
+ canSelectFiles: true,
+ openLabel: selectLabel,
+ filters: {
+ 'Json Files': ['json'],
+ },
+ }).then((schemaFileUri: any) => {
+ if (schemaFileUri && schemaFileUri[0].fsPath) {
+ if (schema === 'UI Schema') {
+ showWebview(editorInstance, 'preview', extensionPath, path, schemaFileUri[0].fsPath);
+ } else {
+ showWebview(editorInstance, 'preview', extensionPath, schemaFileUri[0].fsPath, path);
+ }
+ } else {
+ showMessage('Please select a json schema file', 'err');
+ return;
+ }
+ });
+ } else {
+ showMessage('Please select the schema type', 'err');
+ return;
+ }
+ });
+ }
+};
+
/**
* Async Generate UI Schema
* @param {any} editorInstance the instance of the editor
@@ -206,3 +286,149 @@ const cloneAndInstall = (editorInstance: any, project: string, path: string, nam
});
});
};
+
+/**
+ * Get HTML to be shown inside the preview webview
+ * @param {any} scriptUriCore Uri of jsonforms-core.js
+ * @param {any} scriptUriReact Uri of jsonforms-react.js
+ * @param {any} scriptUriMaterial Uri of jsonforms-material.js
+ * @param {JSON} schema schema of the form
+ * @param {JSON} uiSchema uiSchema of the form
+ */
+const getPreviewHTML = (
+ scriptUriCore: any,
+ scriptUriReact: any,
+ scriptUriMaterial: any,
+ schema: string,
+ uiSchema: string
+) => {
+ return `
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Loading...
+
+
+`;
+};
+
+/**
+ * Show webview
+ * @param {any} editorInstance the instance of the editor
+ * @param {string} id the id for the webview
+ * @param {string} extensionPath the path to the extension directory
+ * @param {string} uiSchemaPath the path to the ui schema
+ * @param {string} schemaPath the path to the schema
+ */
+const showWebview = (
+ editorInstance: any,
+ id: string,
+ extensionPath: string,
+ uiSchemaPath: string,
+ schemaPath: string
+) => {
+ const name = id;
+ const webView = editorInstance.window.createWebviewPanel(
+ 'view-' + name,
+ name,
+ editorInstance.ViewColumn.Two,
+ { enableScripts: true}
+ );
+ preparePreview(editorInstance, extensionPath, uiSchemaPath, schemaPath, (html: string) => {
+ webView.webview.html = html;
+ watch(uiSchemaPath).on('change', (event: any, path: any) => {
+ preparePreview(editorInstance, extensionPath, uiSchemaPath, schemaPath, (newHtml: string) => {
+ webView.webview.html = newHtml;
+ });
+ });
+ });
+};
+
+/**
+ * Prepare the preview webview
+ * @param {any} editorInstance the instance of the editor
+ * @param {string} extensionPath the path to the extension directory
+ * @param {string} uiSchemaPath the path to the ui schema
+ * @param {string} schemaPath the path to the schema
+ * @param {any} callback the callback, that is called, after all files are loaded
+ */
+const preparePreview = (
+ editorInstance: any,
+ extensionPath: string,
+ uiSchemaPath: string,
+ schemaPath: string,
+ callback: any
+) => {
+ // Prepare the scripts needed to show the App inside the Webview
+ const scriptPathOnDiskCore = editorInstance.Uri.file(
+ join(extensionPath, 'assets', 'preview', 'jsonforms-core.js')
+ );
+ const scriptPathOnDiskReact = editorInstance.Uri.file(
+ join(extensionPath, 'assets', 'preview', 'jsonforms-react.js')
+ );
+ const scriptPathOnDiskMaterial = editorInstance.Uri.file(
+ join(extensionPath, 'assets', 'preview', 'jsonforms-material.js')
+ );
+ const scriptUriCore = scriptPathOnDiskCore.with({ scheme: 'vscode-resource'});
+ const scriptUriReact = scriptPathOnDiskReact.with({ scheme: 'vscode-resource'});
+ const scriptUriMaterial = scriptPathOnDiskMaterial.with({ scheme: 'vscode-resource'});
+
+ // Read json files and load html for webview
+ readFile(schemaPath, 'utf8', (readError, schema) => {
+ if ((readError !== null) && readError.message) {
+ showMessage(editorInstance, readError.message, 'err');
+ return;
+ }
+ readFile(uiSchemaPath, 'utf8', (secondReadError, uiSchema) => {
+ if ((secondReadError !== null) && secondReadError.message) {
+ showMessage(editorInstance, secondReadError.message, 'err');
+ return;
+ }
+ callback(getPreviewHTML(scriptUriCore, scriptUriReact, scriptUriMaterial, schema, uiSchema));
+ });
+ });
+};
diff --git a/theia-plugin/src/extension.ts b/theia-plugin/src/extension.ts
index 135b081..3fc6f0e 100644
--- a/theia-plugin/src/extension.ts
+++ b/theia-plugin/src/extension.ts
@@ -3,7 +3,7 @@
*/
import * as theia from '@theia/plugin';
-import { createProject, generateUISchema, Project } from 'jsonforms-tooling-common';
+import { createProject, generateUISchema, Project, showPreview } from 'jsonforms-tooling-common';
export const start = (context: theia.PluginContext) => {
const createExampleProjectCommandOptions = {
@@ -41,7 +41,22 @@ export const start = (context: theia.PluginContext) => {
}
);
+ const showPreviewCommandOptions = {
+ id: 'show-preview',
+ label: 'JSONForms: Show Preview',
+ };
+ const showPreviewCommand = theia.commands.registerCommand(
+ showPreviewCommandOptions,
+ (args: any) => {
+ if (args === undefined) {
+ args = {fsPath: null};
+ }
+ showPreview(theia, args.fsPath, context.extensionPath);
+ }
+ );
+
context.subscriptions.push(createExampleProjectCommand);
context.subscriptions.push(createSeedProjectCommand);
context.subscriptions.push(generateUISchemaCommand);
+ context.subscriptions.push(showPreviewCommand);
};
diff --git a/theia-plugin/yarn.lock b/theia-plugin/yarn.lock
index 44226cd..6a0e3ee 100644
--- a/theia-plugin/yarn.lock
+++ b/theia-plugin/yarn.lock
@@ -108,6 +108,10 @@
"@types/prop-types" "*"
csstype "^2.2.0"
+abbrev@1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8"
+
ajv@^6.4.0, ajv@^6.5.5:
version "6.10.0"
resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.10.0.tgz#90d0d54439da587cd7e843bfb7045f50bd22bdf1"
@@ -139,6 +143,17 @@ ansi-styles@^3.2.1:
dependencies:
color-convert "^1.9.0"
+anymatch@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb"
+ dependencies:
+ micromatch "^3.1.4"
+ normalize-path "^2.1.1"
+
+aproba@^1.0.3:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a"
+
archiver-utils@^1.3.0:
version "1.3.0"
resolved "https://registry.yarnpkg.com/archiver-utils/-/archiver-utils-1.3.0.tgz#e50b4c09c70bf3d680e32ff1b7994e9f9d895174"
@@ -163,6 +178,13 @@ archiver@2.1.1:
tar-stream "^1.5.0"
zip-stream "^1.2.0"
+are-we-there-yet@~1.1.2:
+ version "1.1.5"
+ resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21"
+ dependencies:
+ delegates "^1.0.0"
+ readable-stream "^2.0.6"
+
argparse@^1.0.7:
version "1.0.10"
resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911"
@@ -203,6 +225,10 @@ assign-symbols@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367"
+async-each@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d"
+
async@^2.0.0:
version "2.6.2"
resolved "https://registry.yarnpkg.com/async/-/async-2.6.2.tgz#18330ea7e6e313887f5d2f2a904bac6fe4dd5381"
@@ -237,6 +263,10 @@ base@^0.11.1:
mixin-deep "^1.2.0"
pascalcase "^0.1.1"
+binary-extensions@^1.0.0:
+ version "1.13.0"
+ resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.0.tgz#9523e001306a32444b907423f1de2164222f6ab1"
+
bl@^1.0.0:
version "1.2.2"
resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.2.tgz#a160911717103c07410cef63ef51b397c025af9c"
@@ -251,7 +281,7 @@ brace-expansion@^1.1.7:
balanced-match "^1.0.0"
concat-map "0.0.1"
-braces@^2.3.1:
+braces@^2.3.1, braces@^2.3.2:
version "2.3.2"
resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729"
dependencies:
@@ -334,6 +364,28 @@ chardet@^0.7.0:
version "0.7.0"
resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e"
+chokidar@^2.1.2:
+ version "2.1.2"
+ resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.2.tgz#9c23ea40b01638439e0513864d362aeacc5ad058"
+ dependencies:
+ anymatch "^2.0.0"
+ async-each "^1.0.1"
+ braces "^2.3.2"
+ glob-parent "^3.1.0"
+ inherits "^2.0.3"
+ is-binary-path "^1.0.0"
+ is-glob "^4.0.0"
+ normalize-path "^3.0.0"
+ path-is-absolute "^1.0.0"
+ readdirp "^2.2.1"
+ upath "^1.1.0"
+ optionalDependencies:
+ fsevents "^1.2.7"
+
+chownr@^1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.1.tgz#54726b8b8fff4df053c42187e801fb4412df1494"
+
class-utils@^0.3.5:
version "0.3.6"
resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463"
@@ -417,6 +469,10 @@ concat-map@0.0.1:
version "0.0.1"
resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
+console-control-strings@^1.0.0, console-control-strings@~1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e"
+
cookiejar@^2.1.0:
version "2.1.2"
resolved "https://registry.yarnpkg.com/cookiejar/-/cookiejar-2.1.2.tgz#dd8a235530752f988f9a0844f3fc589e3111125c"
@@ -464,7 +520,7 @@ csstype@^2.2.0:
version "2.6.3"
resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.3.tgz#b701e5968245bf9b08d54ac83d00b624e622a9fa"
-debug@^2.2.0, debug@^2.3.3:
+debug@^2.1.2, debug@^2.2.0, debug@^2.3.3:
version "2.6.9"
resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
dependencies:
@@ -486,6 +542,10 @@ decode-uri-component@^0.2.0:
version "0.2.0"
resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545"
+deep-extend@^0.6.0:
+ version "0.6.0"
+ resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac"
+
define-property@^0.2.5:
version "0.2.5"
resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116"
@@ -509,6 +569,14 @@ delayed-stream@~1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
+delegates@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a"
+
+detect-libc@^1.0.2:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b"
+
diff@^3.5.0:
version "3.5.0"
resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12"
@@ -674,10 +742,36 @@ fs-constants@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad"
+fs-minipass@^1.2.5:
+ version "1.2.5"
+ resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.5.tgz#06c277218454ec288df77ada54a03b8702aacb9d"
+ dependencies:
+ minipass "^2.2.1"
+
fs.realpath@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
+fsevents@^1.2.7:
+ version "1.2.7"
+ resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.7.tgz#4851b664a3783e52003b3c66eb0eee1074933aa4"
+ dependencies:
+ nan "^2.9.2"
+ node-pre-gyp "^0.10.0"
+
+gauge@~2.7.3:
+ version "2.7.4"
+ resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7"
+ dependencies:
+ aproba "^1.0.3"
+ console-control-strings "^1.0.0"
+ has-unicode "^2.0.0"
+ object-assign "^4.1.0"
+ signal-exit "^3.0.0"
+ string-width "^1.0.1"
+ strip-ansi "^3.0.1"
+ wide-align "^1.1.0"
+
get-caller-file@^1.0.1:
version "1.0.3"
resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a"
@@ -730,7 +824,7 @@ globby@^8.0.1:
pify "^3.0.0"
slash "^1.0.0"
-graceful-fs@^4.1.0, graceful-fs@^4.1.2:
+graceful-fs@^4.1.0, graceful-fs@^4.1.11, graceful-fs@^4.1.2:
version "4.1.15"
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.15.tgz#ffb703e1066e8a0eeaa4c8b80ba9253eeefbfb00"
@@ -750,6 +844,10 @@ has-flag@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
+has-unicode@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9"
+
has-value@^0.3.1:
version "0.3.1"
resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f"
@@ -781,7 +879,7 @@ hosted-git-info@^2.1.4:
version "2.7.1"
resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.7.1.tgz#97f236977bd6e125408930ff6de3eec6281ec047"
-iconv-lite@^0.4.24:
+iconv-lite@^0.4.24, iconv-lite@^0.4.4:
version "0.4.24"
resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
dependencies:
@@ -791,6 +889,12 @@ ieee754@^1.1.4:
version "1.1.12"
resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.12.tgz#50bf24e5b9c8bb98af4964c941cdb0918da7b60b"
+ignore-walk@^3.0.1:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.1.tgz#a83e62e7d272ac0e3b551aaa82831a19b69f82f8"
+ dependencies:
+ minimatch "^3.0.4"
+
ignore@^3.3.5:
version "3.3.10"
resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043"
@@ -802,10 +906,14 @@ inflight@^1.0.4:
once "^1.3.0"
wrappy "1"
-inherits@2, inherits@~2.0.3:
+inherits@2, inherits@^2.0.3, inherits@~2.0.3:
version "2.0.3"
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
+ini@~1.3.0:
+ version "1.3.5"
+ resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927"
+
inquirer@^6.0.0:
version "6.2.2"
resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.2.2.tgz#46941176f65c9eb20804627149b743a218f25406"
@@ -844,6 +952,12 @@ is-arrayish@^0.2.1:
version "0.2.1"
resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
+is-binary-path@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898"
+ dependencies:
+ binary-extensions "^1.0.0"
+
is-buffer@^1.1.5:
version "1.1.6"
resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
@@ -1002,6 +1116,7 @@ json-schema-traverse@^0.4.1:
"@jsonforms/core" "^2.2.0"
"@jsonforms/react" "^2.2.0"
ajv "^6.5.5"
+ chokidar "^2.1.2"
react "^16.8.3"
redux "^3.0.0"
yeoman-environment "^2.3.4"
@@ -1104,7 +1219,7 @@ methods@^1.1.1:
version "1.1.2"
resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee"
-micromatch@3.1.10, micromatch@^3.1.10:
+micromatch@3.1.10, micromatch@^3.1.10, micromatch@^3.1.4:
version "3.1.10"
resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23"
dependencies:
@@ -1146,6 +1261,27 @@ minimatch@^3.0.4:
dependencies:
brace-expansion "^1.1.7"
+minimist@0.0.8:
+ version "0.0.8"
+ resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
+
+minimist@^1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284"
+
+minipass@^2.2.1, minipass@^2.3.4:
+ version "2.3.5"
+ resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.3.5.tgz#cacebe492022497f656b0f0f51e2682a9ed2d848"
+ dependencies:
+ safe-buffer "^5.1.2"
+ yallist "^3.0.0"
+
+minizlib@^1.1.1:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.2.1.tgz#dd27ea6136243c7c880684e8672bb3a45fd9b614"
+ dependencies:
+ minipass "^2.2.1"
+
mixin-deep@^1.2.0:
version "1.3.1"
resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.1.tgz#a49e7268dce1a0d9698e45326c5626df3543d0fe"
@@ -1153,6 +1289,12 @@ mixin-deep@^1.2.0:
for-in "^1.0.2"
is-extendable "^1.0.1"
+mkdirp@^0.5.0, mkdirp@^0.5.1:
+ version "0.5.1"
+ resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
+ dependencies:
+ minimist "0.0.8"
+
ms@2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
@@ -1165,6 +1307,10 @@ mute-stream@0.0.7:
version "0.0.7"
resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab"
+nan@^2.9.2:
+ version "2.12.1"
+ resolved "https://registry.yarnpkg.com/nan/-/nan-2.12.1.tgz#7b1aa193e9aa86057e3c7bbd0ac448e770925552"
+
nanomatch@^1.2.9:
version "1.2.13"
resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119"
@@ -1185,10 +1331,40 @@ native-promise-only@^0.8.1:
version "0.8.1"
resolved "https://registry.yarnpkg.com/native-promise-only/-/native-promise-only-0.8.1.tgz#20a318c30cb45f71fe7adfbf7b21c99c1472ef11"
+needle@^2.2.1:
+ version "2.2.4"
+ resolved "https://registry.yarnpkg.com/needle/-/needle-2.2.4.tgz#51931bff82533b1928b7d1d69e01f1b00ffd2a4e"
+ dependencies:
+ debug "^2.1.2"
+ iconv-lite "^0.4.4"
+ sax "^1.2.4"
+
nice-try@^1.0.4:
version "1.0.5"
resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366"
+node-pre-gyp@^0.10.0:
+ version "0.10.3"
+ resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.10.3.tgz#3070040716afdc778747b61b6887bf78880b80fc"
+ dependencies:
+ detect-libc "^1.0.2"
+ mkdirp "^0.5.1"
+ needle "^2.2.1"
+ nopt "^4.0.1"
+ npm-packlist "^1.1.6"
+ npmlog "^4.0.2"
+ rc "^1.2.7"
+ rimraf "^2.6.1"
+ semver "^5.3.0"
+ tar "^4"
+
+nopt@^4.0.1:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d"
+ dependencies:
+ abbrev "1"
+ osenv "^0.1.4"
+
normalize-package-data@^2.3.2:
version "2.5.0"
resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8"
@@ -1198,23 +1374,47 @@ normalize-package-data@^2.3.2:
semver "2 || 3 || 4 || 5"
validate-npm-package-license "^3.0.1"
-normalize-path@^2.0.0:
+normalize-path@^2.0.0, normalize-path@^2.1.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9"
dependencies:
remove-trailing-separator "^1.0.1"
+normalize-path@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
+
+npm-bundled@^1.0.1:
+ version "1.0.6"
+ resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.0.6.tgz#e7ba9aadcef962bb61248f91721cd932b3fe6bdd"
+
+npm-packlist@^1.1.6:
+ version "1.4.1"
+ resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.1.tgz#19064cdf988da80ea3cee45533879d90192bbfbc"
+ dependencies:
+ ignore-walk "^3.0.1"
+ npm-bundled "^1.0.1"
+
npm-run-path@^2.0.0:
version "2.0.2"
resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f"
dependencies:
path-key "^2.0.0"
+npmlog@^4.0.2:
+ version "4.1.2"
+ resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b"
+ dependencies:
+ are-we-there-yet "~1.1.2"
+ console-control-strings "~1.1.0"
+ gauge "~2.7.3"
+ set-blocking "~2.0.0"
+
number-is-nan@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d"
-object-assign@^4.1.1:
+object-assign@^4.1.0, object-assign@^4.1.1:
version "4.1.1"
resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
@@ -1250,6 +1450,10 @@ onetime@^2.0.0:
dependencies:
mimic-fn "^1.0.0"
+os-homedir@^1.0.0:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3"
+
os-locale@^2.0.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-2.1.0.tgz#42bc2900a6b5b8bd17376c8e882b65afccf24bf2"
@@ -1258,10 +1462,17 @@ os-locale@^2.0.0:
lcid "^1.0.0"
mem "^1.1.0"
-os-tmpdir@~1.0.2:
+os-tmpdir@^1.0.0, os-tmpdir@~1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
+osenv@^0.1.4:
+ version "0.1.5"
+ resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410"
+ dependencies:
+ os-homedir "^1.0.0"
+ os-tmpdir "^1.0.0"
+
p-finally@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae"
@@ -1372,6 +1583,15 @@ qs@^6.5.1:
version "6.6.0"
resolved "https://registry.yarnpkg.com/qs/-/qs-6.6.0.tgz#a99c0f69a8d26bf7ef012f871cdabb0aee4424c2"
+rc@^1.2.7:
+ version "1.2.8"
+ resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed"
+ dependencies:
+ deep-extend "^0.6.0"
+ ini "~1.3.0"
+ minimist "^1.2.0"
+ strip-json-comments "~2.0.1"
+
react-is@^16.8.1:
version "16.8.4"
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.8.4.tgz#90f336a68c3a29a096a3d648ab80e87ec61482a2"
@@ -1393,7 +1613,7 @@ read-pkg@4.0.1:
parse-json "^4.0.0"
pify "^3.0.0"
-readable-stream@^2.0.0, readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.3.0, readable-stream@^2.3.5, readable-stream@~2.3.6:
+readable-stream@^2.0.0, readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.0.6, readable-stream@^2.3.0, readable-stream@^2.3.5, readable-stream@~2.3.6:
version "2.3.6"
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf"
dependencies:
@@ -1405,6 +1625,14 @@ readable-stream@^2.0.0, readable-stream@^2.0.2, readable-stream@^2.0.5, readable
string_decoder "~1.1.1"
util-deprecate "~1.0.1"
+readdirp@^2.2.1:
+ version "2.2.1"
+ resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525"
+ dependencies:
+ graceful-fs "^4.1.11"
+ micromatch "^3.1.10"
+ readable-stream "^2.0.2"
+
redux@^3.0.0, redux@^3.6.0:
version "3.7.2"
resolved "https://registry.yarnpkg.com/redux/-/redux-3.7.2.tgz#06b73123215901d25d065be342eb026bc1c8537b"
@@ -1466,7 +1694,7 @@ ret@~0.1.10:
version "0.1.15"
resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc"
-rimraf@2.6.3:
+rimraf@2.6.3, rimraf@^2.6.1:
version "2.6.3"
resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab"
dependencies:
@@ -1484,7 +1712,7 @@ rxjs@^6.4.0:
dependencies:
tslib "^1.9.0"
-safe-buffer@^5.1.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1:
+safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1:
version "5.1.2"
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
@@ -1498,6 +1726,10 @@ safe-regex@^1.1.0:
version "2.1.2"
resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
+sax@^1.2.4:
+ version "1.2.4"
+ resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
+
scheduler@^0.13.4:
version "0.13.4"
resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.13.4.tgz#8fef05e7a3580c76c0364d2df5e550e4c9140298"
@@ -1509,11 +1741,11 @@ scoped-regex@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/scoped-regex/-/scoped-regex-1.0.0.tgz#a346bb1acd4207ae70bd7c0c7ca9e566b6baddb8"
-"semver@2 || 3 || 4 || 5", semver@^5.5.0:
+"semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.5.0:
version "5.6.0"
resolved "https://registry.yarnpkg.com/semver/-/semver-5.6.0.tgz#7e74256fbaa49c75aa7c7a205cc22799cac80004"
-set-blocking@^2.0.0:
+set-blocking@^2.0.0, set-blocking@~2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7"
@@ -1645,7 +1877,7 @@ string-width@^1.0.1:
is-fullwidth-code-point "^1.0.0"
strip-ansi "^3.0.0"
-string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1:
+"string-width@^1.0.2 || 2", string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e"
dependencies:
@@ -1693,6 +1925,10 @@ strip-eof@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf"
+strip-json-comments@~2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
+
superagent@^3.8.3:
version "3.8.3"
resolved "https://registry.yarnpkg.com/superagent/-/superagent-3.8.3.tgz#460ea0dbdb7d5b11bc4f78deba565f86a178e128"
@@ -1730,6 +1966,18 @@ tar-stream@^1.5.0:
to-buffer "^1.1.1"
xtend "^4.0.0"
+tar@^4:
+ version "4.4.8"
+ resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.8.tgz#b19eec3fde2a96e64666df9fdb40c5ca1bc3747d"
+ dependencies:
+ chownr "^1.1.1"
+ fs-minipass "^1.2.5"
+ minipass "^2.3.4"
+ minizlib "^1.1.1"
+ mkdirp "^0.5.0"
+ safe-buffer "^5.1.2"
+ yallist "^3.0.2"
+
text-table@^0.2.0:
version "0.2.0"
resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
@@ -1805,6 +2053,10 @@ untildify@^3.0.3:
version "3.0.3"
resolved "https://registry.yarnpkg.com/untildify/-/untildify-3.0.3.tgz#1e7b42b140bcfd922b22e70ca1265bfe3634c7c9"
+upath@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/upath/-/upath-1.1.0.tgz#35256597e46a581db4793d0ce47fa9aebfc9fabd"
+
uri-js@^3.0.2:
version "3.0.2"
resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-3.0.2.tgz#f90b858507f81dea4dcfbb3c4c3dbfa2b557faaa"
@@ -1869,6 +2121,12 @@ which@^1.2.9:
dependencies:
isexe "^2.0.0"
+wide-align@^1.1.0:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457"
+ dependencies:
+ string-width "^1.0.2 || 2"
+
wrap-ansi@^2.0.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85"
@@ -1896,6 +2154,10 @@ yallist@^2.1.2:
version "2.1.2"
resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52"
+yallist@^3.0.0, yallist@^3.0.2:
+ version "3.0.3"
+ resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.0.3.tgz#b4b049e314be545e3ce802236d6cd22cd91c3de9"
+
yargs-parser@^10.1.0:
version "10.1.0"
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-10.1.0.tgz#7202265b89f7e9e9f2e5765e0fe735a905edbaa8"
diff --git a/vscode-extension/assets/preview/jsonforms-core.js b/vscode-extension/assets/preview/jsonforms-core.js
new file mode 100644
index 0000000..0a07534
--- /dev/null
+++ b/vscode-extension/assets/preview/jsonforms-core.js
@@ -0,0 +1,19510 @@
+(function webpackUniversalModuleDefinition(root, factory) {
+ if(typeof exports === 'object' && typeof module === 'object')
+ module.exports = factory(require("Redux"));
+ else if(typeof define === 'function' && define.amd)
+ define("JSONFormsCore", ["Redux"], factory);
+ else if(typeof exports === 'object')
+ exports["JSONFormsCore"] = factory(require("Redux"));
+ else
+ root["JSONFormsCore"] = factory(root["Redux"]);
+})(window, function(__WEBPACK_EXTERNAL_MODULE_redux__) {
+return /******/ (function(modules) { // webpackBootstrap
+/******/ // The module cache
+/******/ var installedModules = {};
+/******/
+/******/ // The require function
+/******/ function __webpack_require__(moduleId) {
+/******/
+/******/ // Check if module is in cache
+/******/ if(installedModules[moduleId]) {
+/******/ return installedModules[moduleId].exports;
+/******/ }
+/******/ // Create a new module (and put it into the cache)
+/******/ var module = installedModules[moduleId] = {
+/******/ i: moduleId,
+/******/ l: false,
+/******/ exports: {}
+/******/ };
+/******/
+/******/ // Execute the module function
+/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
+/******/
+/******/ // Flag the module as loaded
+/******/ module.l = true;
+/******/
+/******/ // Return the exports of the module
+/******/ return module.exports;
+/******/ }
+/******/
+/******/
+/******/ // expose the modules object (__webpack_modules__)
+/******/ __webpack_require__.m = modules;
+/******/
+/******/ // expose the module cache
+/******/ __webpack_require__.c = installedModules;
+/******/
+/******/ // define getter function for harmony exports
+/******/ __webpack_require__.d = function(exports, name, getter) {
+/******/ if(!__webpack_require__.o(exports, name)) {
+/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
+/******/ }
+/******/ };
+/******/
+/******/ // define __esModule on exports
+/******/ __webpack_require__.r = function(exports) {
+/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
+/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
+/******/ }
+/******/ Object.defineProperty(exports, '__esModule', { value: true });
+/******/ };
+/******/
+/******/ // create a fake namespace object
+/******/ // mode & 1: value is a module id, require it
+/******/ // mode & 2: merge all properties of value into the ns
+/******/ // mode & 4: return value when already ns object
+/******/ // mode & 8|1: behave like require
+/******/ __webpack_require__.t = function(value, mode) {
+/******/ if(mode & 1) value = __webpack_require__(value);
+/******/ if(mode & 8) return value;
+/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
+/******/ var ns = Object.create(null);
+/******/ __webpack_require__.r(ns);
+/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
+/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
+/******/ return ns;
+/******/ };
+/******/
+/******/ // getDefaultExport function for compatibility with non-harmony modules
+/******/ __webpack_require__.n = function(module) {
+/******/ var getter = module && module.__esModule ?
+/******/ function getDefault() { return module['default']; } :
+/******/ function getModuleExports() { return module; };
+/******/ __webpack_require__.d(getter, 'a', getter);
+/******/ return getter;
+/******/ };
+/******/
+/******/ // Object.prototype.hasOwnProperty.call
+/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
+/******/
+/******/ // __webpack_public_path__
+/******/ __webpack_require__.p = "";
+/******/
+/******/
+/******/ // Load entry module and return exports
+/******/ return __webpack_require__(__webpack_require__.s = "./src/index.ts");
+/******/ })
+/************************************************************************/
+/******/ ({
+
+/***/ "../../node_modules/ajv/lib/ajv.js":
+/*!*******************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/ajv/lib/ajv.js ***!
+ \*******************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var compileSchema = __webpack_require__(/*! ./compile */ "../../node_modules/ajv/lib/compile/index.js")
+ , resolve = __webpack_require__(/*! ./compile/resolve */ "../../node_modules/ajv/lib/compile/resolve.js")
+ , Cache = __webpack_require__(/*! ./cache */ "../../node_modules/ajv/lib/cache.js")
+ , SchemaObject = __webpack_require__(/*! ./compile/schema_obj */ "../../node_modules/ajv/lib/compile/schema_obj.js")
+ , stableStringify = __webpack_require__(/*! fast-json-stable-stringify */ "../../node_modules/fast-json-stable-stringify/index.js")
+ , formats = __webpack_require__(/*! ./compile/formats */ "../../node_modules/ajv/lib/compile/formats.js")
+ , rules = __webpack_require__(/*! ./compile/rules */ "../../node_modules/ajv/lib/compile/rules.js")
+ , $dataMetaSchema = __webpack_require__(/*! ./data */ "../../node_modules/ajv/lib/data.js")
+ , util = __webpack_require__(/*! ./compile/util */ "../../node_modules/ajv/lib/compile/util.js");
+
+module.exports = Ajv;
+
+Ajv.prototype.validate = validate;
+Ajv.prototype.compile = compile;
+Ajv.prototype.addSchema = addSchema;
+Ajv.prototype.addMetaSchema = addMetaSchema;
+Ajv.prototype.validateSchema = validateSchema;
+Ajv.prototype.getSchema = getSchema;
+Ajv.prototype.removeSchema = removeSchema;
+Ajv.prototype.addFormat = addFormat;
+Ajv.prototype.errorsText = errorsText;
+
+Ajv.prototype._addSchema = _addSchema;
+Ajv.prototype._compile = _compile;
+
+Ajv.prototype.compileAsync = __webpack_require__(/*! ./compile/async */ "../../node_modules/ajv/lib/compile/async.js");
+var customKeyword = __webpack_require__(/*! ./keyword */ "../../node_modules/ajv/lib/keyword.js");
+Ajv.prototype.addKeyword = customKeyword.add;
+Ajv.prototype.getKeyword = customKeyword.get;
+Ajv.prototype.removeKeyword = customKeyword.remove;
+
+var errorClasses = __webpack_require__(/*! ./compile/error_classes */ "../../node_modules/ajv/lib/compile/error_classes.js");
+Ajv.ValidationError = errorClasses.Validation;
+Ajv.MissingRefError = errorClasses.MissingRef;
+Ajv.$dataMetaSchema = $dataMetaSchema;
+
+var META_SCHEMA_ID = 'http://json-schema.org/draft-07/schema';
+
+var META_IGNORE_OPTIONS = [ 'removeAdditional', 'useDefaults', 'coerceTypes' ];
+var META_SUPPORT_DATA = ['/properties'];
+
+/**
+ * Creates validator instance.
+ * Usage: `Ajv(opts)`
+ * @param {Object} opts optional options
+ * @return {Object} ajv instance
+ */
+function Ajv(opts) {
+ if (!(this instanceof Ajv)) return new Ajv(opts);
+ opts = this._opts = util.copy(opts) || {};
+ setLogger(this);
+ this._schemas = {};
+ this._refs = {};
+ this._fragments = {};
+ this._formats = formats(opts.format);
+
+ this._cache = opts.cache || new Cache;
+ this._loadingSchemas = {};
+ this._compilations = [];
+ this.RULES = rules();
+ this._getId = chooseGetId(opts);
+
+ opts.loopRequired = opts.loopRequired || Infinity;
+ if (opts.errorDataPath == 'property') opts._errorDataPathProperty = true;
+ if (opts.serialize === undefined) opts.serialize = stableStringify;
+ this._metaOpts = getMetaSchemaOptions(this);
+
+ if (opts.formats) addInitialFormats(this);
+ addDefaultMetaSchema(this);
+ if (typeof opts.meta == 'object') this.addMetaSchema(opts.meta);
+ if (opts.nullable) this.addKeyword('nullable', {metaSchema: {const: true}});
+ addInitialSchemas(this);
+}
+
+
+
+/**
+ * Validate data using schema
+ * Schema will be compiled and cached (using serialized JSON as key. [fast-json-stable-stringify](https://github.com/epoberezkin/fast-json-stable-stringify) is used to serialize.
+ * @this Ajv
+ * @param {String|Object} schemaKeyRef key, ref or schema object
+ * @param {Any} data to be validated
+ * @return {Boolean} validation result. Errors from the last validation will be available in `ajv.errors` (and also in compiled schema: `schema.errors`).
+ */
+function validate(schemaKeyRef, data) {
+ var v;
+ if (typeof schemaKeyRef == 'string') {
+ v = this.getSchema(schemaKeyRef);
+ if (!v) throw new Error('no schema with key or ref "' + schemaKeyRef + '"');
+ } else {
+ var schemaObj = this._addSchema(schemaKeyRef);
+ v = schemaObj.validate || this._compile(schemaObj);
+ }
+
+ var valid = v(data);
+ if (v.$async !== true) this.errors = v.errors;
+ return valid;
+}
+
+
+/**
+ * Create validating function for passed schema.
+ * @this Ajv
+ * @param {Object} schema schema object
+ * @param {Boolean} _meta true if schema is a meta-schema. Used internally to compile meta schemas of custom keywords.
+ * @return {Function} validating function
+ */
+function compile(schema, _meta) {
+ var schemaObj = this._addSchema(schema, undefined, _meta);
+ return schemaObj.validate || this._compile(schemaObj);
+}
+
+
+/**
+ * Adds schema to the instance.
+ * @this Ajv
+ * @param {Object|Array} schema schema or array of schemas. If array is passed, `key` and other parameters will be ignored.
+ * @param {String} key Optional schema key. Can be passed to `validate` method instead of schema object or id/ref. One schema per instance can have empty `id` and `key`.
+ * @param {Boolean} _skipValidation true to skip schema validation. Used internally, option validateSchema should be used instead.
+ * @param {Boolean} _meta true if schema is a meta-schema. Used internally, addMetaSchema should be used instead.
+ * @return {Ajv} this for method chaining
+ */
+function addSchema(schema, key, _skipValidation, _meta) {
+ if (Array.isArray(schema)){
+ for (var i=0; i} errors optional array of validation errors, if not passed errors from the instance are used.
+ * @param {Object} options optional options with properties `separator` and `dataVar`.
+ * @return {String} human readable string with all errors descriptions
+ */
+function errorsText(errors, options) {
+ errors = errors || this.errors;
+ if (!errors) return 'No errors';
+ options = options || {};
+ var separator = options.separator === undefined ? ', ' : options.separator;
+ var dataVar = options.dataVar === undefined ? 'data' : options.dataVar;
+
+ var text = '';
+ for (var i=0; i%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i;
+// For the source: https://gist.github.com/dperini/729294
+// For test cases: https://mathiasbynens.be/demo/url-regex
+// @todo Delete current URL in favour of the commented out URL rule when this issue is fixed https://github.com/eslint/eslint/issues/7983.
+// var URL = /^(?:(?:https?|ftp):\/\/)(?:\S+(?::\S*)?@)?(?:(?!10(?:\.\d{1,3}){3})(?!127(?:\.\d{1,3}){3})(?!169\.254(?:\.\d{1,3}){2})(?!192\.168(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u{00a1}-\u{ffff}0-9]+-?)*[a-z\u{00a1}-\u{ffff}0-9]+)(?:\.(?:[a-z\u{00a1}-\u{ffff}0-9]+-?)*[a-z\u{00a1}-\u{ffff}0-9]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu;
+var URL = /^(?:(?:http[s\u017F]?|ftp):\/\/)(?:(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+(?::(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?@)?(?:(?!10(?:\.[0-9]{1,3}){3})(?!127(?:\.[0-9]{1,3}){3})(?!169\.254(?:\.[0-9]{1,3}){2})(?!192\.168(?:\.[0-9]{1,3}){2})(?!172\.(?:1[6-9]|2[0-9]|3[01])(?:\.[0-9]{1,3}){2})(?:[1-9][0-9]?|1[0-9][0-9]|2[01][0-9]|22[0-3])(?:\.(?:1?[0-9]{1,2}|2[0-4][0-9]|25[0-5])){2}(?:\.(?:[1-9][0-9]?|1[0-9][0-9]|2[0-4][0-9]|25[0-4]))|(?:(?:(?:[0-9KSa-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-?)*(?:[0-9KSa-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)(?:\.(?:(?:[0-9KSa-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-?)*(?:[0-9KSa-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)*(?:\.(?:(?:[KSa-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]){2,})))(?::[0-9]{2,5})?(?:\/(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?$/i;
+var UUID = /^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i;
+var JSON_POINTER = /^(?:\/(?:[^~/]|~0|~1)*)*$/;
+var JSON_POINTER_URI_FRAGMENT = /^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i;
+var RELATIVE_JSON_POINTER = /^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/;
+
+
+module.exports = formats;
+
+function formats(mode) {
+ mode = mode == 'full' ? 'full' : 'fast';
+ return util.copy(formats[mode]);
+}
+
+
+formats.fast = {
+ // date: http://tools.ietf.org/html/rfc3339#section-5.6
+ date: /^\d\d\d\d-[0-1]\d-[0-3]\d$/,
+ // date-time: http://tools.ietf.org/html/rfc3339#section-5.6
+ time: /^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d:\d\d)?$/i,
+ 'date-time': /^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d:\d\d)$/i,
+ // uri: https://github.com/mafintosh/is-my-json-valid/blob/master/formats.js
+ uri: /^(?:[a-z][a-z0-9+-.]*:)(?:\/?\/)?[^\s]*$/i,
+ 'uri-reference': /^(?:(?:[a-z][a-z0-9+-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,
+ 'uri-template': URITEMPLATE,
+ url: URL,
+ // email (sources from jsen validator):
+ // http://stackoverflow.com/questions/201323/using-a-regular-expression-to-validate-an-email-address#answer-8829363
+ // http://www.w3.org/TR/html5/forms.html#valid-e-mail-address (search for 'willful violation')
+ email: /^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i,
+ hostname: HOSTNAME,
+ // optimized https://www.safaribooksonline.com/library/view/regular-expressions-cookbook/9780596802837/ch07s16.html
+ ipv4: /^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,
+ // optimized http://stackoverflow.com/questions/53497/regular-expression-that-matches-valid-ipv6-addresses
+ ipv6: /^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i,
+ regex: regex,
+ // uuid: http://tools.ietf.org/html/rfc4122
+ uuid: UUID,
+ // JSON-pointer: https://tools.ietf.org/html/rfc6901
+ // uri fragment: https://tools.ietf.org/html/rfc3986#appendix-A
+ 'json-pointer': JSON_POINTER,
+ 'json-pointer-uri-fragment': JSON_POINTER_URI_FRAGMENT,
+ // relative JSON-pointer: http://tools.ietf.org/html/draft-luff-relative-json-pointer-00
+ 'relative-json-pointer': RELATIVE_JSON_POINTER
+};
+
+
+formats.full = {
+ date: date,
+ time: time,
+ 'date-time': date_time,
+ uri: uri,
+ 'uri-reference': URIREF,
+ 'uri-template': URITEMPLATE,
+ url: URL,
+ email: /^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,
+ hostname: hostname,
+ ipv4: /^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,
+ ipv6: /^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i,
+ regex: regex,
+ uuid: UUID,
+ 'json-pointer': JSON_POINTER,
+ 'json-pointer-uri-fragment': JSON_POINTER_URI_FRAGMENT,
+ 'relative-json-pointer': RELATIVE_JSON_POINTER
+};
+
+
+function isLeapYear(year) {
+ // https://tools.ietf.org/html/rfc3339#appendix-C
+ return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);
+}
+
+
+function date(str) {
+ // full-date from http://tools.ietf.org/html/rfc3339#section-5.6
+ var matches = str.match(DATE);
+ if (!matches) return false;
+
+ var year = +matches[1];
+ var month = +matches[2];
+ var day = +matches[3];
+
+ return month >= 1 && month <= 12 && day >= 1 &&
+ day <= (month == 2 && isLeapYear(year) ? 29 : DAYS[month]);
+}
+
+
+function time(str, full) {
+ var matches = str.match(TIME);
+ if (!matches) return false;
+
+ var hour = matches[1];
+ var minute = matches[2];
+ var second = matches[3];
+ var timeZone = matches[5];
+ return ((hour <= 23 && minute <= 59 && second <= 59) ||
+ (hour == 23 && minute == 59 && second == 60)) &&
+ (!full || timeZone);
+}
+
+
+var DATE_TIME_SEPARATOR = /t|\s/i;
+function date_time(str) {
+ // http://tools.ietf.org/html/rfc3339#section-5.6
+ var dateTime = str.split(DATE_TIME_SEPARATOR);
+ return dateTime.length == 2 && date(dateTime[0]) && time(dateTime[1], true);
+}
+
+
+function hostname(str) {
+ // https://tools.ietf.org/html/rfc1034#section-3.5
+ // https://tools.ietf.org/html/rfc1123#section-2
+ return str.length <= 255 && HOSTNAME.test(str);
+}
+
+
+var NOT_URI_FRAGMENT = /\/|:/;
+function uri(str) {
+ // http://jmrware.com/articles/2009/uri_regexp/URI_regex.html + optional protocol + required "."
+ return NOT_URI_FRAGMENT.test(str) && URI.test(str);
+}
+
+
+var Z_ANCHOR = /[^\\]\\Z/;
+function regex(str) {
+ if (Z_ANCHOR.test(str)) return false;
+ try {
+ new RegExp(str);
+ return true;
+ } catch(e) {
+ return false;
+ }
+}
+
+
+/***/ }),
+
+/***/ "../../node_modules/ajv/lib/compile/index.js":
+/*!*****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/ajv/lib/compile/index.js ***!
+ \*****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var resolve = __webpack_require__(/*! ./resolve */ "../../node_modules/ajv/lib/compile/resolve.js")
+ , util = __webpack_require__(/*! ./util */ "../../node_modules/ajv/lib/compile/util.js")
+ , errorClasses = __webpack_require__(/*! ./error_classes */ "../../node_modules/ajv/lib/compile/error_classes.js")
+ , stableStringify = __webpack_require__(/*! fast-json-stable-stringify */ "../../node_modules/fast-json-stable-stringify/index.js");
+
+var validateGenerator = __webpack_require__(/*! ../dotjs/validate */ "../../node_modules/ajv/lib/dotjs/validate.js");
+
+/**
+ * Functions below are used inside compiled validations function
+ */
+
+var ucs2length = util.ucs2length;
+var equal = __webpack_require__(/*! fast-deep-equal */ "../../node_modules/fast-deep-equal/index.js");
+
+// this error is thrown by async schemas to return validation errors via exception
+var ValidationError = errorClasses.Validation;
+
+module.exports = compile;
+
+
+/**
+ * Compiles schema to validation function
+ * @this Ajv
+ * @param {Object} schema schema object
+ * @param {Object} root object with information about the root schema for this schema
+ * @param {Object} localRefs the hash of local references inside the schema (created by resolve.id), used for inline resolution
+ * @param {String} baseId base ID for IDs in the schema
+ * @return {Function} validation function
+ */
+function compile(schema, root, localRefs, baseId) {
+ /* jshint validthis: true, evil: true */
+ /* eslint no-shadow: 0 */
+ var self = this
+ , opts = this._opts
+ , refVal = [ undefined ]
+ , refs = {}
+ , patterns = []
+ , patternsHash = {}
+ , defaults = []
+ , defaultsHash = {}
+ , customRules = [];
+
+ root = root || { schema: schema, refVal: refVal, refs: refs };
+
+ var c = checkCompiling.call(this, schema, root, baseId);
+ var compilation = this._compilations[c.index];
+ if (c.compiling) return (compilation.callValidate = callValidate);
+
+ var formats = this._formats;
+ var RULES = this.RULES;
+
+ try {
+ var v = localCompile(schema, root, localRefs, baseId);
+ compilation.validate = v;
+ var cv = compilation.callValidate;
+ if (cv) {
+ cv.schema = v.schema;
+ cv.errors = null;
+ cv.refs = v.refs;
+ cv.refVal = v.refVal;
+ cv.root = v.root;
+ cv.$async = v.$async;
+ if (opts.sourceCode) cv.source = v.source;
+ }
+ return v;
+ } finally {
+ endCompiling.call(this, schema, root, baseId);
+ }
+
+ /* @this {*} - custom context, see passContext option */
+ function callValidate() {
+ /* jshint validthis: true */
+ var validate = compilation.validate;
+ var result = validate.apply(this, arguments);
+ callValidate.errors = validate.errors;
+ return result;
+ }
+
+ function localCompile(_schema, _root, localRefs, baseId) {
+ var isRoot = !_root || (_root && _root.schema == _schema);
+ if (_root.schema != root.schema)
+ return compile.call(self, _schema, _root, localRefs, baseId);
+
+ var $async = _schema.$async === true;
+
+ var sourceCode = validateGenerator({
+ isTop: true,
+ schema: _schema,
+ isRoot: isRoot,
+ baseId: baseId,
+ root: _root,
+ schemaPath: '',
+ errSchemaPath: '#',
+ errorPath: '""',
+ MissingRefError: errorClasses.MissingRef,
+ RULES: RULES,
+ validate: validateGenerator,
+ util: util,
+ resolve: resolve,
+ resolveRef: resolveRef,
+ usePattern: usePattern,
+ useDefault: useDefault,
+ useCustomRule: useCustomRule,
+ opts: opts,
+ formats: formats,
+ logger: self.logger,
+ self: self
+ });
+
+ sourceCode = vars(refVal, refValCode) + vars(patterns, patternCode)
+ + vars(defaults, defaultCode) + vars(customRules, customRuleCode)
+ + sourceCode;
+
+ if (opts.processCode) sourceCode = opts.processCode(sourceCode);
+ // console.log('\n\n\n *** \n', JSON.stringify(sourceCode));
+ var validate;
+ try {
+ var makeValidate = new Function(
+ 'self',
+ 'RULES',
+ 'formats',
+ 'root',
+ 'refVal',
+ 'defaults',
+ 'customRules',
+ 'equal',
+ 'ucs2length',
+ 'ValidationError',
+ sourceCode
+ );
+
+ validate = makeValidate(
+ self,
+ RULES,
+ formats,
+ root,
+ refVal,
+ defaults,
+ customRules,
+ equal,
+ ucs2length,
+ ValidationError
+ );
+
+ refVal[0] = validate;
+ } catch(e) {
+ self.logger.error('Error compiling schema, function code:', sourceCode);
+ throw e;
+ }
+
+ validate.schema = _schema;
+ validate.errors = null;
+ validate.refs = refs;
+ validate.refVal = refVal;
+ validate.root = isRoot ? validate : _root;
+ if ($async) validate.$async = true;
+ if (opts.sourceCode === true) {
+ validate.source = {
+ code: sourceCode,
+ patterns: patterns,
+ defaults: defaults
+ };
+ }
+
+ return validate;
+ }
+
+ function resolveRef(baseId, ref, isRoot) {
+ ref = resolve.url(baseId, ref);
+ var refIndex = refs[ref];
+ var _refVal, refCode;
+ if (refIndex !== undefined) {
+ _refVal = refVal[refIndex];
+ refCode = 'refVal[' + refIndex + ']';
+ return resolvedRef(_refVal, refCode);
+ }
+ if (!isRoot && root.refs) {
+ var rootRefId = root.refs[ref];
+ if (rootRefId !== undefined) {
+ _refVal = root.refVal[rootRefId];
+ refCode = addLocalRef(ref, _refVal);
+ return resolvedRef(_refVal, refCode);
+ }
+ }
+
+ refCode = addLocalRef(ref);
+ var v = resolve.call(self, localCompile, root, ref);
+ if (v === undefined) {
+ var localSchema = localRefs && localRefs[ref];
+ if (localSchema) {
+ v = resolve.inlineRef(localSchema, opts.inlineRefs)
+ ? localSchema
+ : compile.call(self, localSchema, root, localRefs, baseId);
+ }
+ }
+
+ if (v === undefined) {
+ removeLocalRef(ref);
+ } else {
+ replaceLocalRef(ref, v);
+ return resolvedRef(v, refCode);
+ }
+ }
+
+ function addLocalRef(ref, v) {
+ var refId = refVal.length;
+ refVal[refId] = v;
+ refs[ref] = refId;
+ return 'refVal' + refId;
+ }
+
+ function removeLocalRef(ref) {
+ delete refs[ref];
+ }
+
+ function replaceLocalRef(ref, v) {
+ var refId = refs[ref];
+ refVal[refId] = v;
+ }
+
+ function resolvedRef(refVal, code) {
+ return typeof refVal == 'object' || typeof refVal == 'boolean'
+ ? { code: code, schema: refVal, inline: true }
+ : { code: code, $async: refVal && !!refVal.$async };
+ }
+
+ function usePattern(regexStr) {
+ var index = patternsHash[regexStr];
+ if (index === undefined) {
+ index = patternsHash[regexStr] = patterns.length;
+ patterns[index] = regexStr;
+ }
+ return 'pattern' + index;
+ }
+
+ function useDefault(value) {
+ switch (typeof value) {
+ case 'boolean':
+ case 'number':
+ return '' + value;
+ case 'string':
+ return util.toQuotedString(value);
+ case 'object':
+ if (value === null) return 'null';
+ var valueStr = stableStringify(value);
+ var index = defaultsHash[valueStr];
+ if (index === undefined) {
+ index = defaultsHash[valueStr] = defaults.length;
+ defaults[index] = value;
+ }
+ return 'default' + index;
+ }
+ }
+
+ function useCustomRule(rule, schema, parentSchema, it) {
+ var validateSchema = rule.definition.validateSchema;
+ if (validateSchema && self._opts.validateSchema !== false) {
+ var valid = validateSchema(schema);
+ if (!valid) {
+ var message = 'keyword schema is invalid: ' + self.errorsText(validateSchema.errors);
+ if (self._opts.validateSchema == 'log') self.logger.error(message);
+ else throw new Error(message);
+ }
+ }
+
+ var compile = rule.definition.compile
+ , inline = rule.definition.inline
+ , macro = rule.definition.macro;
+
+ var validate;
+ if (compile) {
+ validate = compile.call(self, schema, parentSchema, it);
+ } else if (macro) {
+ validate = macro.call(self, schema, parentSchema, it);
+ if (opts.validateSchema !== false) self.validateSchema(validate, true);
+ } else if (inline) {
+ validate = inline.call(self, it, rule.keyword, schema, parentSchema);
+ } else {
+ validate = rule.definition.validate;
+ if (!validate) return;
+ }
+
+ if (validate === undefined)
+ throw new Error('custom keyword "' + rule.keyword + '"failed to compile');
+
+ var index = customRules.length;
+ customRules[index] = validate;
+
+ return {
+ code: 'customRule' + index,
+ validate: validate
+ };
+ }
+}
+
+
+/**
+ * Checks if the schema is currently compiled
+ * @this Ajv
+ * @param {Object} schema schema to compile
+ * @param {Object} root root object
+ * @param {String} baseId base schema ID
+ * @return {Object} object with properties "index" (compilation index) and "compiling" (boolean)
+ */
+function checkCompiling(schema, root, baseId) {
+ /* jshint validthis: true */
+ var index = compIndex.call(this, schema, root, baseId);
+ if (index >= 0) return { index: index, compiling: true };
+ index = this._compilations.length;
+ this._compilations[index] = {
+ schema: schema,
+ root: root,
+ baseId: baseId
+ };
+ return { index: index, compiling: false };
+}
+
+
+/**
+ * Removes the schema from the currently compiled list
+ * @this Ajv
+ * @param {Object} schema schema to compile
+ * @param {Object} root root object
+ * @param {String} baseId base schema ID
+ */
+function endCompiling(schema, root, baseId) {
+ /* jshint validthis: true */
+ var i = compIndex.call(this, schema, root, baseId);
+ if (i >= 0) this._compilations.splice(i, 1);
+}
+
+
+/**
+ * Index of schema compilation in the currently compiled list
+ * @this Ajv
+ * @param {Object} schema schema to compile
+ * @param {Object} root root object
+ * @param {String} baseId base schema ID
+ * @return {Integer} compilation index
+ */
+function compIndex(schema, root, baseId) {
+ /* jshint validthis: true */
+ for (var i=0; i= 0xD800 && value <= 0xDBFF && pos < len) {
+ // high surrogate, and there is a next character
+ value = str.charCodeAt(pos);
+ if ((value & 0xFC00) == 0xDC00) pos++; // low surrogate
+ }
+ }
+ return length;
+};
+
+
+/***/ }),
+
+/***/ "../../node_modules/ajv/lib/compile/util.js":
+/*!****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/ajv/lib/compile/util.js ***!
+ \****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+
+module.exports = {
+ copy: copy,
+ checkDataType: checkDataType,
+ checkDataTypes: checkDataTypes,
+ coerceToTypes: coerceToTypes,
+ toHash: toHash,
+ getProperty: getProperty,
+ escapeQuotes: escapeQuotes,
+ equal: __webpack_require__(/*! fast-deep-equal */ "../../node_modules/fast-deep-equal/index.js"),
+ ucs2length: __webpack_require__(/*! ./ucs2length */ "../../node_modules/ajv/lib/compile/ucs2length.js"),
+ varOccurences: varOccurences,
+ varReplace: varReplace,
+ cleanUpCode: cleanUpCode,
+ finalCleanUpCode: finalCleanUpCode,
+ schemaHasRules: schemaHasRules,
+ schemaHasRulesExcept: schemaHasRulesExcept,
+ toQuotedString: toQuotedString,
+ getPathExpr: getPathExpr,
+ getPath: getPath,
+ getData: getData,
+ unescapeFragment: unescapeFragment,
+ unescapeJsonPointer: unescapeJsonPointer,
+ escapeFragment: escapeFragment,
+ escapeJsonPointer: escapeJsonPointer
+};
+
+
+function copy(o, to) {
+ to = to || {};
+ for (var key in o) to[key] = o[key];
+ return to;
+}
+
+
+function checkDataType(dataType, data, negate) {
+ var EQUAL = negate ? ' !== ' : ' === '
+ , AND = negate ? ' || ' : ' && '
+ , OK = negate ? '!' : ''
+ , NOT = negate ? '' : '!';
+ switch (dataType) {
+ case 'null': return data + EQUAL + 'null';
+ case 'array': return OK + 'Array.isArray(' + data + ')';
+ case 'object': return '(' + OK + data + AND +
+ 'typeof ' + data + EQUAL + '"object"' + AND +
+ NOT + 'Array.isArray(' + data + '))';
+ case 'integer': return '(typeof ' + data + EQUAL + '"number"' + AND +
+ NOT + '(' + data + ' % 1)' +
+ AND + data + EQUAL + data + ')';
+ default: return 'typeof ' + data + EQUAL + '"' + dataType + '"';
+ }
+}
+
+
+function checkDataTypes(dataTypes, data) {
+ switch (dataTypes.length) {
+ case 1: return checkDataType(dataTypes[0], data, true);
+ default:
+ var code = '';
+ var types = toHash(dataTypes);
+ if (types.array && types.object) {
+ code = types.null ? '(': '(!' + data + ' || ';
+ code += 'typeof ' + data + ' !== "object")';
+ delete types.null;
+ delete types.array;
+ delete types.object;
+ }
+ if (types.number) delete types.integer;
+ for (var t in types)
+ code += (code ? ' && ' : '' ) + checkDataType(t, data, true);
+
+ return code;
+ }
+}
+
+
+var COERCE_TO_TYPES = toHash([ 'string', 'number', 'integer', 'boolean', 'null' ]);
+function coerceToTypes(optionCoerceTypes, dataTypes) {
+ if (Array.isArray(dataTypes)) {
+ var types = [];
+ for (var i=0; i= lvl) throw new Error('Cannot access property/index ' + up + ' levels up, current level is ' + lvl);
+ return paths[lvl - up];
+ }
+
+ if (up > lvl) throw new Error('Cannot access data ' + up + ' levels up, current level is ' + lvl);
+ data = 'data' + ((lvl - up) || '');
+ if (!jsonPointer) return data;
+ }
+
+ var expr = data;
+ var segments = jsonPointer.split('/');
+ for (var i=0; i',
+ $notOp = $isMax ? '>' : '<',
+ $errorKeyword = undefined;
+ if ($isDataExcl) {
+ var $schemaValueExcl = it.util.getData($schemaExcl.$data, $dataLvl, it.dataPathArr),
+ $exclusive = 'exclusive' + $lvl,
+ $exclType = 'exclType' + $lvl,
+ $exclIsNumber = 'exclIsNumber' + $lvl,
+ $opExpr = 'op' + $lvl,
+ $opStr = '\' + ' + $opExpr + ' + \'';
+ out += ' var schemaExcl' + ($lvl) + ' = ' + ($schemaValueExcl) + '; ';
+ $schemaValueExcl = 'schemaExcl' + $lvl;
+ out += ' var ' + ($exclusive) + '; var ' + ($exclType) + ' = typeof ' + ($schemaValueExcl) + '; if (' + ($exclType) + ' != \'boolean\' && ' + ($exclType) + ' != \'undefined\' && ' + ($exclType) + ' != \'number\') { ';
+ var $errorKeyword = $exclusiveKeyword;
+ var $$outStack = $$outStack || [];
+ $$outStack.push(out);
+ out = ''; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ($errorKeyword || '_exclusiveLimit') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'' + ($exclusiveKeyword) + ' should be boolean\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ var __err = out;
+ out = $$outStack.pop();
+ if (!it.compositeRule && $breakOnError) {
+ /* istanbul ignore if */
+ if (it.async) {
+ out += ' throw new ValidationError([' + (__err) + ']); ';
+ } else {
+ out += ' validate.errors = [' + (__err) + ']; return false; ';
+ }
+ } else {
+ out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ }
+ out += ' } else if ( ';
+ if ($isData) {
+ out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'number\') || ';
+ }
+ out += ' ' + ($exclType) + ' == \'number\' ? ( (' + ($exclusive) + ' = ' + ($schemaValue) + ' === undefined || ' + ($schemaValueExcl) + ' ' + ($op) + '= ' + ($schemaValue) + ') ? ' + ($data) + ' ' + ($notOp) + '= ' + ($schemaValueExcl) + ' : ' + ($data) + ' ' + ($notOp) + ' ' + ($schemaValue) + ' ) : ( (' + ($exclusive) + ' = ' + ($schemaValueExcl) + ' === true) ? ' + ($data) + ' ' + ($notOp) + '= ' + ($schemaValue) + ' : ' + ($data) + ' ' + ($notOp) + ' ' + ($schemaValue) + ' ) || ' + ($data) + ' !== ' + ($data) + ') { var op' + ($lvl) + ' = ' + ($exclusive) + ' ? \'' + ($op) + '\' : \'' + ($op) + '=\'; ';
+ if ($schema === undefined) {
+ $errorKeyword = $exclusiveKeyword;
+ $errSchemaPath = it.errSchemaPath + '/' + $exclusiveKeyword;
+ $schemaValue = $schemaValueExcl;
+ $isData = $isDataExcl;
+ }
+ } else {
+ var $exclIsNumber = typeof $schemaExcl == 'number',
+ $opStr = $op;
+ if ($exclIsNumber && $isData) {
+ var $opExpr = '\'' + $opStr + '\'';
+ out += ' if ( ';
+ if ($isData) {
+ out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'number\') || ';
+ }
+ out += ' ( ' + ($schemaValue) + ' === undefined || ' + ($schemaExcl) + ' ' + ($op) + '= ' + ($schemaValue) + ' ? ' + ($data) + ' ' + ($notOp) + '= ' + ($schemaExcl) + ' : ' + ($data) + ' ' + ($notOp) + ' ' + ($schemaValue) + ' ) || ' + ($data) + ' !== ' + ($data) + ') { ';
+ } else {
+ if ($exclIsNumber && $schema === undefined) {
+ $exclusive = true;
+ $errorKeyword = $exclusiveKeyword;
+ $errSchemaPath = it.errSchemaPath + '/' + $exclusiveKeyword;
+ $schemaValue = $schemaExcl;
+ $notOp += '=';
+ } else {
+ if ($exclIsNumber) $schemaValue = Math[$isMax ? 'min' : 'max']($schemaExcl, $schema);
+ if ($schemaExcl === ($exclIsNumber ? $schemaValue : true)) {
+ $exclusive = true;
+ $errorKeyword = $exclusiveKeyword;
+ $errSchemaPath = it.errSchemaPath + '/' + $exclusiveKeyword;
+ $notOp += '=';
+ } else {
+ $exclusive = false;
+ $opStr += '=';
+ }
+ }
+ var $opExpr = '\'' + $opStr + '\'';
+ out += ' if ( ';
+ if ($isData) {
+ out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'number\') || ';
+ }
+ out += ' ' + ($data) + ' ' + ($notOp) + ' ' + ($schemaValue) + ' || ' + ($data) + ' !== ' + ($data) + ') { ';
+ }
+ }
+ $errorKeyword = $errorKeyword || $keyword;
+ var $$outStack = $$outStack || [];
+ $$outStack.push(out);
+ out = ''; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ($errorKeyword || '_limit') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { comparison: ' + ($opExpr) + ', limit: ' + ($schemaValue) + ', exclusive: ' + ($exclusive) + ' } ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'should be ' + ($opStr) + ' ';
+ if ($isData) {
+ out += '\' + ' + ($schemaValue);
+ } else {
+ out += '' + ($schemaValue) + '\'';
+ }
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: ';
+ if ($isData) {
+ out += 'validate.schema' + ($schemaPath);
+ } else {
+ out += '' + ($schema);
+ }
+ out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ var __err = out;
+ out = $$outStack.pop();
+ if (!it.compositeRule && $breakOnError) {
+ /* istanbul ignore if */
+ if (it.async) {
+ out += ' throw new ValidationError([' + (__err) + ']); ';
+ } else {
+ out += ' validate.errors = [' + (__err) + ']; return false; ';
+ }
+ } else {
+ out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ }
+ out += ' } ';
+ if ($breakOnError) {
+ out += ' else { ';
+ }
+ return out;
+}
+
+
+/***/ }),
+
+/***/ "../../node_modules/ajv/lib/dotjs/_limitItems.js":
+/*!*********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/ajv/lib/dotjs/_limitItems.js ***!
+ \*********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+module.exports = function generate__limitItems(it, $keyword, $ruleType) {
+ var out = ' ';
+ var $lvl = it.level;
+ var $dataLvl = it.dataLevel;
+ var $schema = it.schema[$keyword];
+ var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
+ var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
+ var $breakOnError = !it.opts.allErrors;
+ var $errorKeyword;
+ var $data = 'data' + ($dataLvl || '');
+ var $isData = it.opts.$data && $schema && $schema.$data,
+ $schemaValue;
+ if ($isData) {
+ out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';
+ $schemaValue = 'schema' + $lvl;
+ } else {
+ $schemaValue = $schema;
+ }
+ var $op = $keyword == 'maxItems' ? '>' : '<';
+ out += 'if ( ';
+ if ($isData) {
+ out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'number\') || ';
+ }
+ out += ' ' + ($data) + '.length ' + ($op) + ' ' + ($schemaValue) + ') { ';
+ var $errorKeyword = $keyword;
+ var $$outStack = $$outStack || [];
+ $$outStack.push(out);
+ out = ''; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ($errorKeyword || '_limitItems') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { limit: ' + ($schemaValue) + ' } ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'should NOT have ';
+ if ($keyword == 'maxItems') {
+ out += 'more';
+ } else {
+ out += 'fewer';
+ }
+ out += ' than ';
+ if ($isData) {
+ out += '\' + ' + ($schemaValue) + ' + \'';
+ } else {
+ out += '' + ($schema);
+ }
+ out += ' items\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: ';
+ if ($isData) {
+ out += 'validate.schema' + ($schemaPath);
+ } else {
+ out += '' + ($schema);
+ }
+ out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ var __err = out;
+ out = $$outStack.pop();
+ if (!it.compositeRule && $breakOnError) {
+ /* istanbul ignore if */
+ if (it.async) {
+ out += ' throw new ValidationError([' + (__err) + ']); ';
+ } else {
+ out += ' validate.errors = [' + (__err) + ']; return false; ';
+ }
+ } else {
+ out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ }
+ out += '} ';
+ if ($breakOnError) {
+ out += ' else { ';
+ }
+ return out;
+}
+
+
+/***/ }),
+
+/***/ "../../node_modules/ajv/lib/dotjs/_limitLength.js":
+/*!**********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/ajv/lib/dotjs/_limitLength.js ***!
+ \**********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+module.exports = function generate__limitLength(it, $keyword, $ruleType) {
+ var out = ' ';
+ var $lvl = it.level;
+ var $dataLvl = it.dataLevel;
+ var $schema = it.schema[$keyword];
+ var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
+ var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
+ var $breakOnError = !it.opts.allErrors;
+ var $errorKeyword;
+ var $data = 'data' + ($dataLvl || '');
+ var $isData = it.opts.$data && $schema && $schema.$data,
+ $schemaValue;
+ if ($isData) {
+ out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';
+ $schemaValue = 'schema' + $lvl;
+ } else {
+ $schemaValue = $schema;
+ }
+ var $op = $keyword == 'maxLength' ? '>' : '<';
+ out += 'if ( ';
+ if ($isData) {
+ out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'number\') || ';
+ }
+ if (it.opts.unicode === false) {
+ out += ' ' + ($data) + '.length ';
+ } else {
+ out += ' ucs2length(' + ($data) + ') ';
+ }
+ out += ' ' + ($op) + ' ' + ($schemaValue) + ') { ';
+ var $errorKeyword = $keyword;
+ var $$outStack = $$outStack || [];
+ $$outStack.push(out);
+ out = ''; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ($errorKeyword || '_limitLength') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { limit: ' + ($schemaValue) + ' } ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'should NOT be ';
+ if ($keyword == 'maxLength') {
+ out += 'longer';
+ } else {
+ out += 'shorter';
+ }
+ out += ' than ';
+ if ($isData) {
+ out += '\' + ' + ($schemaValue) + ' + \'';
+ } else {
+ out += '' + ($schema);
+ }
+ out += ' characters\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: ';
+ if ($isData) {
+ out += 'validate.schema' + ($schemaPath);
+ } else {
+ out += '' + ($schema);
+ }
+ out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ var __err = out;
+ out = $$outStack.pop();
+ if (!it.compositeRule && $breakOnError) {
+ /* istanbul ignore if */
+ if (it.async) {
+ out += ' throw new ValidationError([' + (__err) + ']); ';
+ } else {
+ out += ' validate.errors = [' + (__err) + ']; return false; ';
+ }
+ } else {
+ out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ }
+ out += '} ';
+ if ($breakOnError) {
+ out += ' else { ';
+ }
+ return out;
+}
+
+
+/***/ }),
+
+/***/ "../../node_modules/ajv/lib/dotjs/_limitProperties.js":
+/*!**************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/ajv/lib/dotjs/_limitProperties.js ***!
+ \**************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+module.exports = function generate__limitProperties(it, $keyword, $ruleType) {
+ var out = ' ';
+ var $lvl = it.level;
+ var $dataLvl = it.dataLevel;
+ var $schema = it.schema[$keyword];
+ var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
+ var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
+ var $breakOnError = !it.opts.allErrors;
+ var $errorKeyword;
+ var $data = 'data' + ($dataLvl || '');
+ var $isData = it.opts.$data && $schema && $schema.$data,
+ $schemaValue;
+ if ($isData) {
+ out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';
+ $schemaValue = 'schema' + $lvl;
+ } else {
+ $schemaValue = $schema;
+ }
+ var $op = $keyword == 'maxProperties' ? '>' : '<';
+ out += 'if ( ';
+ if ($isData) {
+ out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'number\') || ';
+ }
+ out += ' Object.keys(' + ($data) + ').length ' + ($op) + ' ' + ($schemaValue) + ') { ';
+ var $errorKeyword = $keyword;
+ var $$outStack = $$outStack || [];
+ $$outStack.push(out);
+ out = ''; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ($errorKeyword || '_limitProperties') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { limit: ' + ($schemaValue) + ' } ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'should NOT have ';
+ if ($keyword == 'maxProperties') {
+ out += 'more';
+ } else {
+ out += 'fewer';
+ }
+ out += ' than ';
+ if ($isData) {
+ out += '\' + ' + ($schemaValue) + ' + \'';
+ } else {
+ out += '' + ($schema);
+ }
+ out += ' properties\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: ';
+ if ($isData) {
+ out += 'validate.schema' + ($schemaPath);
+ } else {
+ out += '' + ($schema);
+ }
+ out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ var __err = out;
+ out = $$outStack.pop();
+ if (!it.compositeRule && $breakOnError) {
+ /* istanbul ignore if */
+ if (it.async) {
+ out += ' throw new ValidationError([' + (__err) + ']); ';
+ } else {
+ out += ' validate.errors = [' + (__err) + ']; return false; ';
+ }
+ } else {
+ out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ }
+ out += '} ';
+ if ($breakOnError) {
+ out += ' else { ';
+ }
+ return out;
+}
+
+
+/***/ }),
+
+/***/ "../../node_modules/ajv/lib/dotjs/allOf.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/ajv/lib/dotjs/allOf.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+module.exports = function generate_allOf(it, $keyword, $ruleType) {
+ var out = ' ';
+ var $schema = it.schema[$keyword];
+ var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
+ var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
+ var $breakOnError = !it.opts.allErrors;
+ var $it = it.util.copy(it);
+ var $closingBraces = '';
+ $it.level++;
+ var $nextValid = 'valid' + $it.level;
+ var $currentBaseId = $it.baseId,
+ $allSchemasEmpty = true;
+ var arr1 = $schema;
+ if (arr1) {
+ var $sch, $i = -1,
+ l1 = arr1.length - 1;
+ while ($i < l1) {
+ $sch = arr1[$i += 1];
+ if (it.util.schemaHasRules($sch, it.RULES.all)) {
+ $allSchemasEmpty = false;
+ $it.schema = $sch;
+ $it.schemaPath = $schemaPath + '[' + $i + ']';
+ $it.errSchemaPath = $errSchemaPath + '/' + $i;
+ out += ' ' + (it.validate($it)) + ' ';
+ $it.baseId = $currentBaseId;
+ if ($breakOnError) {
+ out += ' if (' + ($nextValid) + ') { ';
+ $closingBraces += '}';
+ }
+ }
+ }
+ }
+ if ($breakOnError) {
+ if ($allSchemasEmpty) {
+ out += ' if (true) { ';
+ } else {
+ out += ' ' + ($closingBraces.slice(0, -1)) + ' ';
+ }
+ }
+ out = it.util.cleanUpCode(out);
+ return out;
+}
+
+
+/***/ }),
+
+/***/ "../../node_modules/ajv/lib/dotjs/anyOf.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/ajv/lib/dotjs/anyOf.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+module.exports = function generate_anyOf(it, $keyword, $ruleType) {
+ var out = ' ';
+ var $lvl = it.level;
+ var $dataLvl = it.dataLevel;
+ var $schema = it.schema[$keyword];
+ var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
+ var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
+ var $breakOnError = !it.opts.allErrors;
+ var $data = 'data' + ($dataLvl || '');
+ var $valid = 'valid' + $lvl;
+ var $errs = 'errs__' + $lvl;
+ var $it = it.util.copy(it);
+ var $closingBraces = '';
+ $it.level++;
+ var $nextValid = 'valid' + $it.level;
+ var $noEmptySchema = $schema.every(function($sch) {
+ return it.util.schemaHasRules($sch, it.RULES.all);
+ });
+ if ($noEmptySchema) {
+ var $currentBaseId = $it.baseId;
+ out += ' var ' + ($errs) + ' = errors; var ' + ($valid) + ' = false; ';
+ var $wasComposite = it.compositeRule;
+ it.compositeRule = $it.compositeRule = true;
+ var arr1 = $schema;
+ if (arr1) {
+ var $sch, $i = -1,
+ l1 = arr1.length - 1;
+ while ($i < l1) {
+ $sch = arr1[$i += 1];
+ $it.schema = $sch;
+ $it.schemaPath = $schemaPath + '[' + $i + ']';
+ $it.errSchemaPath = $errSchemaPath + '/' + $i;
+ out += ' ' + (it.validate($it)) + ' ';
+ $it.baseId = $currentBaseId;
+ out += ' ' + ($valid) + ' = ' + ($valid) + ' || ' + ($nextValid) + '; if (!' + ($valid) + ') { ';
+ $closingBraces += '}';
+ }
+ }
+ it.compositeRule = $it.compositeRule = $wasComposite;
+ out += ' ' + ($closingBraces) + ' if (!' + ($valid) + ') { var err = '; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ('anyOf') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'should match some schema in anyOf\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ if (!it.compositeRule && $breakOnError) {
+ /* istanbul ignore if */
+ if (it.async) {
+ out += ' throw new ValidationError(vErrors); ';
+ } else {
+ out += ' validate.errors = vErrors; return false; ';
+ }
+ }
+ out += ' } else { errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; } ';
+ if (it.opts.allErrors) {
+ out += ' } ';
+ }
+ out = it.util.cleanUpCode(out);
+ } else {
+ if ($breakOnError) {
+ out += ' if (true) { ';
+ }
+ }
+ return out;
+}
+
+
+/***/ }),
+
+/***/ "../../node_modules/ajv/lib/dotjs/comment.js":
+/*!*****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/ajv/lib/dotjs/comment.js ***!
+ \*****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+module.exports = function generate_comment(it, $keyword, $ruleType) {
+ var out = ' ';
+ var $schema = it.schema[$keyword];
+ var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
+ var $breakOnError = !it.opts.allErrors;
+ var $comment = it.util.toQuotedString($schema);
+ if (it.opts.$comment === true) {
+ out += ' console.log(' + ($comment) + ');';
+ } else if (typeof it.opts.$comment == 'function') {
+ out += ' self._opts.$comment(' + ($comment) + ', ' + (it.util.toQuotedString($errSchemaPath)) + ', validate.root.schema);';
+ }
+ return out;
+}
+
+
+/***/ }),
+
+/***/ "../../node_modules/ajv/lib/dotjs/const.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/ajv/lib/dotjs/const.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+module.exports = function generate_const(it, $keyword, $ruleType) {
+ var out = ' ';
+ var $lvl = it.level;
+ var $dataLvl = it.dataLevel;
+ var $schema = it.schema[$keyword];
+ var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
+ var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
+ var $breakOnError = !it.opts.allErrors;
+ var $data = 'data' + ($dataLvl || '');
+ var $valid = 'valid' + $lvl;
+ var $isData = it.opts.$data && $schema && $schema.$data,
+ $schemaValue;
+ if ($isData) {
+ out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';
+ $schemaValue = 'schema' + $lvl;
+ } else {
+ $schemaValue = $schema;
+ }
+ if (!$isData) {
+ out += ' var schema' + ($lvl) + ' = validate.schema' + ($schemaPath) + ';';
+ }
+ out += 'var ' + ($valid) + ' = equal(' + ($data) + ', schema' + ($lvl) + '); if (!' + ($valid) + ') { ';
+ var $$outStack = $$outStack || [];
+ $$outStack.push(out);
+ out = ''; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ('const') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { allowedValue: schema' + ($lvl) + ' } ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'should be equal to constant\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ var __err = out;
+ out = $$outStack.pop();
+ if (!it.compositeRule && $breakOnError) {
+ /* istanbul ignore if */
+ if (it.async) {
+ out += ' throw new ValidationError([' + (__err) + ']); ';
+ } else {
+ out += ' validate.errors = [' + (__err) + ']; return false; ';
+ }
+ } else {
+ out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ }
+ out += ' }';
+ if ($breakOnError) {
+ out += ' else { ';
+ }
+ return out;
+}
+
+
+/***/ }),
+
+/***/ "../../node_modules/ajv/lib/dotjs/contains.js":
+/*!******************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/ajv/lib/dotjs/contains.js ***!
+ \******************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+module.exports = function generate_contains(it, $keyword, $ruleType) {
+ var out = ' ';
+ var $lvl = it.level;
+ var $dataLvl = it.dataLevel;
+ var $schema = it.schema[$keyword];
+ var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
+ var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
+ var $breakOnError = !it.opts.allErrors;
+ var $data = 'data' + ($dataLvl || '');
+ var $valid = 'valid' + $lvl;
+ var $errs = 'errs__' + $lvl;
+ var $it = it.util.copy(it);
+ var $closingBraces = '';
+ $it.level++;
+ var $nextValid = 'valid' + $it.level;
+ var $idx = 'i' + $lvl,
+ $dataNxt = $it.dataLevel = it.dataLevel + 1,
+ $nextData = 'data' + $dataNxt,
+ $currentBaseId = it.baseId,
+ $nonEmptySchema = it.util.schemaHasRules($schema, it.RULES.all);
+ out += 'var ' + ($errs) + ' = errors;var ' + ($valid) + ';';
+ if ($nonEmptySchema) {
+ var $wasComposite = it.compositeRule;
+ it.compositeRule = $it.compositeRule = true;
+ $it.schema = $schema;
+ $it.schemaPath = $schemaPath;
+ $it.errSchemaPath = $errSchemaPath;
+ out += ' var ' + ($nextValid) + ' = false; for (var ' + ($idx) + ' = 0; ' + ($idx) + ' < ' + ($data) + '.length; ' + ($idx) + '++) { ';
+ $it.errorPath = it.util.getPathExpr(it.errorPath, $idx, it.opts.jsonPointers, true);
+ var $passData = $data + '[' + $idx + ']';
+ $it.dataPathArr[$dataNxt] = $idx;
+ var $code = it.validate($it);
+ $it.baseId = $currentBaseId;
+ if (it.util.varOccurences($code, $nextData) < 2) {
+ out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';
+ } else {
+ out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';
+ }
+ out += ' if (' + ($nextValid) + ') break; } ';
+ it.compositeRule = $it.compositeRule = $wasComposite;
+ out += ' ' + ($closingBraces) + ' if (!' + ($nextValid) + ') {';
+ } else {
+ out += ' if (' + ($data) + '.length == 0) {';
+ }
+ var $$outStack = $$outStack || [];
+ $$outStack.push(out);
+ out = ''; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ('contains') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'should contain a valid item\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ var __err = out;
+ out = $$outStack.pop();
+ if (!it.compositeRule && $breakOnError) {
+ /* istanbul ignore if */
+ if (it.async) {
+ out += ' throw new ValidationError([' + (__err) + ']); ';
+ } else {
+ out += ' validate.errors = [' + (__err) + ']; return false; ';
+ }
+ } else {
+ out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ }
+ out += ' } else { ';
+ if ($nonEmptySchema) {
+ out += ' errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; } ';
+ }
+ if (it.opts.allErrors) {
+ out += ' } ';
+ }
+ out = it.util.cleanUpCode(out);
+ return out;
+}
+
+
+/***/ }),
+
+/***/ "../../node_modules/ajv/lib/dotjs/custom.js":
+/*!****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/ajv/lib/dotjs/custom.js ***!
+ \****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+module.exports = function generate_custom(it, $keyword, $ruleType) {
+ var out = ' ';
+ var $lvl = it.level;
+ var $dataLvl = it.dataLevel;
+ var $schema = it.schema[$keyword];
+ var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
+ var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
+ var $breakOnError = !it.opts.allErrors;
+ var $errorKeyword;
+ var $data = 'data' + ($dataLvl || '');
+ var $valid = 'valid' + $lvl;
+ var $errs = 'errs__' + $lvl;
+ var $isData = it.opts.$data && $schema && $schema.$data,
+ $schemaValue;
+ if ($isData) {
+ out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';
+ $schemaValue = 'schema' + $lvl;
+ } else {
+ $schemaValue = $schema;
+ }
+ var $rule = this,
+ $definition = 'definition' + $lvl,
+ $rDef = $rule.definition,
+ $closingBraces = '';
+ var $compile, $inline, $macro, $ruleValidate, $validateCode;
+ if ($isData && $rDef.$data) {
+ $validateCode = 'keywordValidate' + $lvl;
+ var $validateSchema = $rDef.validateSchema;
+ out += ' var ' + ($definition) + ' = RULES.custom[\'' + ($keyword) + '\'].definition; var ' + ($validateCode) + ' = ' + ($definition) + '.validate;';
+ } else {
+ $ruleValidate = it.useCustomRule($rule, $schema, it.schema, it);
+ if (!$ruleValidate) return;
+ $schemaValue = 'validate.schema' + $schemaPath;
+ $validateCode = $ruleValidate.code;
+ $compile = $rDef.compile;
+ $inline = $rDef.inline;
+ $macro = $rDef.macro;
+ }
+ var $ruleErrs = $validateCode + '.errors',
+ $i = 'i' + $lvl,
+ $ruleErr = 'ruleErr' + $lvl,
+ $asyncKeyword = $rDef.async;
+ if ($asyncKeyword && !it.async) throw new Error('async keyword in sync schema');
+ if (!($inline || $macro)) {
+ out += '' + ($ruleErrs) + ' = null;';
+ }
+ out += 'var ' + ($errs) + ' = errors;var ' + ($valid) + ';';
+ if ($isData && $rDef.$data) {
+ $closingBraces += '}';
+ out += ' if (' + ($schemaValue) + ' === undefined) { ' + ($valid) + ' = true; } else { ';
+ if ($validateSchema) {
+ $closingBraces += '}';
+ out += ' ' + ($valid) + ' = ' + ($definition) + '.validateSchema(' + ($schemaValue) + '); if (' + ($valid) + ') { ';
+ }
+ }
+ if ($inline) {
+ if ($rDef.statements) {
+ out += ' ' + ($ruleValidate.validate) + ' ';
+ } else {
+ out += ' ' + ($valid) + ' = ' + ($ruleValidate.validate) + '; ';
+ }
+ } else if ($macro) {
+ var $it = it.util.copy(it);
+ var $closingBraces = '';
+ $it.level++;
+ var $nextValid = 'valid' + $it.level;
+ $it.schema = $ruleValidate.validate;
+ $it.schemaPath = '';
+ var $wasComposite = it.compositeRule;
+ it.compositeRule = $it.compositeRule = true;
+ var $code = it.validate($it).replace(/validate\.schema/g, $validateCode);
+ it.compositeRule = $it.compositeRule = $wasComposite;
+ out += ' ' + ($code);
+ } else {
+ var $$outStack = $$outStack || [];
+ $$outStack.push(out);
+ out = '';
+ out += ' ' + ($validateCode) + '.call( ';
+ if (it.opts.passContext) {
+ out += 'this';
+ } else {
+ out += 'self';
+ }
+ if ($compile || $rDef.schema === false) {
+ out += ' , ' + ($data) + ' ';
+ } else {
+ out += ' , ' + ($schemaValue) + ' , ' + ($data) + ' , validate.schema' + (it.schemaPath) + ' ';
+ }
+ out += ' , (dataPath || \'\')';
+ if (it.errorPath != '""') {
+ out += ' + ' + (it.errorPath);
+ }
+ var $parentData = $dataLvl ? 'data' + (($dataLvl - 1) || '') : 'parentData',
+ $parentDataProperty = $dataLvl ? it.dataPathArr[$dataLvl] : 'parentDataProperty';
+ out += ' , ' + ($parentData) + ' , ' + ($parentDataProperty) + ' , rootData ) ';
+ var def_callRuleValidate = out;
+ out = $$outStack.pop();
+ if ($rDef.errors === false) {
+ out += ' ' + ($valid) + ' = ';
+ if ($asyncKeyword) {
+ out += 'await ';
+ }
+ out += '' + (def_callRuleValidate) + '; ';
+ } else {
+ if ($asyncKeyword) {
+ $ruleErrs = 'customErrors' + $lvl;
+ out += ' var ' + ($ruleErrs) + ' = null; try { ' + ($valid) + ' = await ' + (def_callRuleValidate) + '; } catch (e) { ' + ($valid) + ' = false; if (e instanceof ValidationError) ' + ($ruleErrs) + ' = e.errors; else throw e; } ';
+ } else {
+ out += ' ' + ($ruleErrs) + ' = null; ' + ($valid) + ' = ' + (def_callRuleValidate) + '; ';
+ }
+ }
+ }
+ if ($rDef.modifying) {
+ out += ' if (' + ($parentData) + ') ' + ($data) + ' = ' + ($parentData) + '[' + ($parentDataProperty) + '];';
+ }
+ out += '' + ($closingBraces);
+ if ($rDef.valid) {
+ if ($breakOnError) {
+ out += ' if (true) { ';
+ }
+ } else {
+ out += ' if ( ';
+ if ($rDef.valid === undefined) {
+ out += ' !';
+ if ($macro) {
+ out += '' + ($nextValid);
+ } else {
+ out += '' + ($valid);
+ }
+ } else {
+ out += ' ' + (!$rDef.valid) + ' ';
+ }
+ out += ') { ';
+ $errorKeyword = $rule.keyword;
+ var $$outStack = $$outStack || [];
+ $$outStack.push(out);
+ out = '';
+ var $$outStack = $$outStack || [];
+ $$outStack.push(out);
+ out = ''; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ($errorKeyword || 'custom') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { keyword: \'' + ($rule.keyword) + '\' } ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'should pass "' + ($rule.keyword) + '" keyword validation\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ var __err = out;
+ out = $$outStack.pop();
+ if (!it.compositeRule && $breakOnError) {
+ /* istanbul ignore if */
+ if (it.async) {
+ out += ' throw new ValidationError([' + (__err) + ']); ';
+ } else {
+ out += ' validate.errors = [' + (__err) + ']; return false; ';
+ }
+ } else {
+ out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ }
+ var def_customError = out;
+ out = $$outStack.pop();
+ if ($inline) {
+ if ($rDef.errors) {
+ if ($rDef.errors != 'full') {
+ out += ' for (var ' + ($i) + '=' + ($errs) + '; ' + ($i) + '= 0) {
+ if ($breakOnError) {
+ out += ' if (true) { ';
+ }
+ return out;
+ } else {
+ throw new Error('unknown format "' + $schema + '" is used in schema at path "' + it.errSchemaPath + '"');
+ }
+ }
+ var $isObject = typeof $format == 'object' && !($format instanceof RegExp) && $format.validate;
+ var $formatType = $isObject && $format.type || 'string';
+ if ($isObject) {
+ var $async = $format.async === true;
+ $format = $format.validate;
+ }
+ if ($formatType != $ruleType) {
+ if ($breakOnError) {
+ out += ' if (true) { ';
+ }
+ return out;
+ }
+ if ($async) {
+ if (!it.async) throw new Error('async format in sync schema');
+ var $formatRef = 'formats' + it.util.getProperty($schema) + '.validate';
+ out += ' if (!(await ' + ($formatRef) + '(' + ($data) + '))) { ';
+ } else {
+ out += ' if (! ';
+ var $formatRef = 'formats' + it.util.getProperty($schema);
+ if ($isObject) $formatRef += '.validate';
+ if (typeof $format == 'function') {
+ out += ' ' + ($formatRef) + '(' + ($data) + ') ';
+ } else {
+ out += ' ' + ($formatRef) + '.test(' + ($data) + ') ';
+ }
+ out += ') { ';
+ }
+ }
+ var $$outStack = $$outStack || [];
+ $$outStack.push(out);
+ out = ''; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ('format') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { format: ';
+ if ($isData) {
+ out += '' + ($schemaValue);
+ } else {
+ out += '' + (it.util.toQuotedString($schema));
+ }
+ out += ' } ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'should match format "';
+ if ($isData) {
+ out += '\' + ' + ($schemaValue) + ' + \'';
+ } else {
+ out += '' + (it.util.escapeQuotes($schema));
+ }
+ out += '"\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: ';
+ if ($isData) {
+ out += 'validate.schema' + ($schemaPath);
+ } else {
+ out += '' + (it.util.toQuotedString($schema));
+ }
+ out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ var __err = out;
+ out = $$outStack.pop();
+ if (!it.compositeRule && $breakOnError) {
+ /* istanbul ignore if */
+ if (it.async) {
+ out += ' throw new ValidationError([' + (__err) + ']); ';
+ } else {
+ out += ' validate.errors = [' + (__err) + ']; return false; ';
+ }
+ } else {
+ out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ }
+ out += ' } ';
+ if ($breakOnError) {
+ out += ' else { ';
+ }
+ return out;
+}
+
+
+/***/ }),
+
+/***/ "../../node_modules/ajv/lib/dotjs/if.js":
+/*!************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/ajv/lib/dotjs/if.js ***!
+ \************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+module.exports = function generate_if(it, $keyword, $ruleType) {
+ var out = ' ';
+ var $lvl = it.level;
+ var $dataLvl = it.dataLevel;
+ var $schema = it.schema[$keyword];
+ var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
+ var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
+ var $breakOnError = !it.opts.allErrors;
+ var $data = 'data' + ($dataLvl || '');
+ var $valid = 'valid' + $lvl;
+ var $errs = 'errs__' + $lvl;
+ var $it = it.util.copy(it);
+ $it.level++;
+ var $nextValid = 'valid' + $it.level;
+ var $thenSch = it.schema['then'],
+ $elseSch = it.schema['else'],
+ $thenPresent = $thenSch !== undefined && it.util.schemaHasRules($thenSch, it.RULES.all),
+ $elsePresent = $elseSch !== undefined && it.util.schemaHasRules($elseSch, it.RULES.all),
+ $currentBaseId = $it.baseId;
+ if ($thenPresent || $elsePresent) {
+ var $ifClause;
+ $it.createErrors = false;
+ $it.schema = $schema;
+ $it.schemaPath = $schemaPath;
+ $it.errSchemaPath = $errSchemaPath;
+ out += ' var ' + ($errs) + ' = errors; var ' + ($valid) + ' = true; ';
+ var $wasComposite = it.compositeRule;
+ it.compositeRule = $it.compositeRule = true;
+ out += ' ' + (it.validate($it)) + ' ';
+ $it.baseId = $currentBaseId;
+ $it.createErrors = true;
+ out += ' errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; } ';
+ it.compositeRule = $it.compositeRule = $wasComposite;
+ if ($thenPresent) {
+ out += ' if (' + ($nextValid) + ') { ';
+ $it.schema = it.schema['then'];
+ $it.schemaPath = it.schemaPath + '.then';
+ $it.errSchemaPath = it.errSchemaPath + '/then';
+ out += ' ' + (it.validate($it)) + ' ';
+ $it.baseId = $currentBaseId;
+ out += ' ' + ($valid) + ' = ' + ($nextValid) + '; ';
+ if ($thenPresent && $elsePresent) {
+ $ifClause = 'ifClause' + $lvl;
+ out += ' var ' + ($ifClause) + ' = \'then\'; ';
+ } else {
+ $ifClause = '\'then\'';
+ }
+ out += ' } ';
+ if ($elsePresent) {
+ out += ' else { ';
+ }
+ } else {
+ out += ' if (!' + ($nextValid) + ') { ';
+ }
+ if ($elsePresent) {
+ $it.schema = it.schema['else'];
+ $it.schemaPath = it.schemaPath + '.else';
+ $it.errSchemaPath = it.errSchemaPath + '/else';
+ out += ' ' + (it.validate($it)) + ' ';
+ $it.baseId = $currentBaseId;
+ out += ' ' + ($valid) + ' = ' + ($nextValid) + '; ';
+ if ($thenPresent && $elsePresent) {
+ $ifClause = 'ifClause' + $lvl;
+ out += ' var ' + ($ifClause) + ' = \'else\'; ';
+ } else {
+ $ifClause = '\'else\'';
+ }
+ out += ' } ';
+ }
+ out += ' if (!' + ($valid) + ') { var err = '; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ('if') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { failingKeyword: ' + ($ifClause) + ' } ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'should match "\' + ' + ($ifClause) + ' + \'" schema\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ if (!it.compositeRule && $breakOnError) {
+ /* istanbul ignore if */
+ if (it.async) {
+ out += ' throw new ValidationError(vErrors); ';
+ } else {
+ out += ' validate.errors = vErrors; return false; ';
+ }
+ }
+ out += ' } ';
+ if ($breakOnError) {
+ out += ' else { ';
+ }
+ out = it.util.cleanUpCode(out);
+ } else {
+ if ($breakOnError) {
+ out += ' if (true) { ';
+ }
+ }
+ return out;
+}
+
+
+/***/ }),
+
+/***/ "../../node_modules/ajv/lib/dotjs/index.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/ajv/lib/dotjs/index.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+//all requires must be explicit because browserify won't work with dynamic requires
+module.exports = {
+ '$ref': __webpack_require__(/*! ./ref */ "../../node_modules/ajv/lib/dotjs/ref.js"),
+ allOf: __webpack_require__(/*! ./allOf */ "../../node_modules/ajv/lib/dotjs/allOf.js"),
+ anyOf: __webpack_require__(/*! ./anyOf */ "../../node_modules/ajv/lib/dotjs/anyOf.js"),
+ '$comment': __webpack_require__(/*! ./comment */ "../../node_modules/ajv/lib/dotjs/comment.js"),
+ const: __webpack_require__(/*! ./const */ "../../node_modules/ajv/lib/dotjs/const.js"),
+ contains: __webpack_require__(/*! ./contains */ "../../node_modules/ajv/lib/dotjs/contains.js"),
+ dependencies: __webpack_require__(/*! ./dependencies */ "../../node_modules/ajv/lib/dotjs/dependencies.js"),
+ 'enum': __webpack_require__(/*! ./enum */ "../../node_modules/ajv/lib/dotjs/enum.js"),
+ format: __webpack_require__(/*! ./format */ "../../node_modules/ajv/lib/dotjs/format.js"),
+ 'if': __webpack_require__(/*! ./if */ "../../node_modules/ajv/lib/dotjs/if.js"),
+ items: __webpack_require__(/*! ./items */ "../../node_modules/ajv/lib/dotjs/items.js"),
+ maximum: __webpack_require__(/*! ./_limit */ "../../node_modules/ajv/lib/dotjs/_limit.js"),
+ minimum: __webpack_require__(/*! ./_limit */ "../../node_modules/ajv/lib/dotjs/_limit.js"),
+ maxItems: __webpack_require__(/*! ./_limitItems */ "../../node_modules/ajv/lib/dotjs/_limitItems.js"),
+ minItems: __webpack_require__(/*! ./_limitItems */ "../../node_modules/ajv/lib/dotjs/_limitItems.js"),
+ maxLength: __webpack_require__(/*! ./_limitLength */ "../../node_modules/ajv/lib/dotjs/_limitLength.js"),
+ minLength: __webpack_require__(/*! ./_limitLength */ "../../node_modules/ajv/lib/dotjs/_limitLength.js"),
+ maxProperties: __webpack_require__(/*! ./_limitProperties */ "../../node_modules/ajv/lib/dotjs/_limitProperties.js"),
+ minProperties: __webpack_require__(/*! ./_limitProperties */ "../../node_modules/ajv/lib/dotjs/_limitProperties.js"),
+ multipleOf: __webpack_require__(/*! ./multipleOf */ "../../node_modules/ajv/lib/dotjs/multipleOf.js"),
+ not: __webpack_require__(/*! ./not */ "../../node_modules/ajv/lib/dotjs/not.js"),
+ oneOf: __webpack_require__(/*! ./oneOf */ "../../node_modules/ajv/lib/dotjs/oneOf.js"),
+ pattern: __webpack_require__(/*! ./pattern */ "../../node_modules/ajv/lib/dotjs/pattern.js"),
+ properties: __webpack_require__(/*! ./properties */ "../../node_modules/ajv/lib/dotjs/properties.js"),
+ propertyNames: __webpack_require__(/*! ./propertyNames */ "../../node_modules/ajv/lib/dotjs/propertyNames.js"),
+ required: __webpack_require__(/*! ./required */ "../../node_modules/ajv/lib/dotjs/required.js"),
+ uniqueItems: __webpack_require__(/*! ./uniqueItems */ "../../node_modules/ajv/lib/dotjs/uniqueItems.js"),
+ validate: __webpack_require__(/*! ./validate */ "../../node_modules/ajv/lib/dotjs/validate.js")
+};
+
+
+/***/ }),
+
+/***/ "../../node_modules/ajv/lib/dotjs/items.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/ajv/lib/dotjs/items.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+module.exports = function generate_items(it, $keyword, $ruleType) {
+ var out = ' ';
+ var $lvl = it.level;
+ var $dataLvl = it.dataLevel;
+ var $schema = it.schema[$keyword];
+ var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
+ var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
+ var $breakOnError = !it.opts.allErrors;
+ var $data = 'data' + ($dataLvl || '');
+ var $valid = 'valid' + $lvl;
+ var $errs = 'errs__' + $lvl;
+ var $it = it.util.copy(it);
+ var $closingBraces = '';
+ $it.level++;
+ var $nextValid = 'valid' + $it.level;
+ var $idx = 'i' + $lvl,
+ $dataNxt = $it.dataLevel = it.dataLevel + 1,
+ $nextData = 'data' + $dataNxt,
+ $currentBaseId = it.baseId;
+ out += 'var ' + ($errs) + ' = errors;var ' + ($valid) + ';';
+ if (Array.isArray($schema)) {
+ var $additionalItems = it.schema.additionalItems;
+ if ($additionalItems === false) {
+ out += ' ' + ($valid) + ' = ' + ($data) + '.length <= ' + ($schema.length) + '; ';
+ var $currErrSchemaPath = $errSchemaPath;
+ $errSchemaPath = it.errSchemaPath + '/additionalItems';
+ out += ' if (!' + ($valid) + ') { ';
+ var $$outStack = $$outStack || [];
+ $$outStack.push(out);
+ out = ''; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ('additionalItems') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { limit: ' + ($schema.length) + ' } ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'should NOT have more than ' + ($schema.length) + ' items\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: false , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ var __err = out;
+ out = $$outStack.pop();
+ if (!it.compositeRule && $breakOnError) {
+ /* istanbul ignore if */
+ if (it.async) {
+ out += ' throw new ValidationError([' + (__err) + ']); ';
+ } else {
+ out += ' validate.errors = [' + (__err) + ']; return false; ';
+ }
+ } else {
+ out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ }
+ out += ' } ';
+ $errSchemaPath = $currErrSchemaPath;
+ if ($breakOnError) {
+ $closingBraces += '}';
+ out += ' else { ';
+ }
+ }
+ var arr1 = $schema;
+ if (arr1) {
+ var $sch, $i = -1,
+ l1 = arr1.length - 1;
+ while ($i < l1) {
+ $sch = arr1[$i += 1];
+ if (it.util.schemaHasRules($sch, it.RULES.all)) {
+ out += ' ' + ($nextValid) + ' = true; if (' + ($data) + '.length > ' + ($i) + ') { ';
+ var $passData = $data + '[' + $i + ']';
+ $it.schema = $sch;
+ $it.schemaPath = $schemaPath + '[' + $i + ']';
+ $it.errSchemaPath = $errSchemaPath + '/' + $i;
+ $it.errorPath = it.util.getPathExpr(it.errorPath, $i, it.opts.jsonPointers, true);
+ $it.dataPathArr[$dataNxt] = $i;
+ var $code = it.validate($it);
+ $it.baseId = $currentBaseId;
+ if (it.util.varOccurences($code, $nextData) < 2) {
+ out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';
+ } else {
+ out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';
+ }
+ out += ' } ';
+ if ($breakOnError) {
+ out += ' if (' + ($nextValid) + ') { ';
+ $closingBraces += '}';
+ }
+ }
+ }
+ }
+ if (typeof $additionalItems == 'object' && it.util.schemaHasRules($additionalItems, it.RULES.all)) {
+ $it.schema = $additionalItems;
+ $it.schemaPath = it.schemaPath + '.additionalItems';
+ $it.errSchemaPath = it.errSchemaPath + '/additionalItems';
+ out += ' ' + ($nextValid) + ' = true; if (' + ($data) + '.length > ' + ($schema.length) + ') { for (var ' + ($idx) + ' = ' + ($schema.length) + '; ' + ($idx) + ' < ' + ($data) + '.length; ' + ($idx) + '++) { ';
+ $it.errorPath = it.util.getPathExpr(it.errorPath, $idx, it.opts.jsonPointers, true);
+ var $passData = $data + '[' + $idx + ']';
+ $it.dataPathArr[$dataNxt] = $idx;
+ var $code = it.validate($it);
+ $it.baseId = $currentBaseId;
+ if (it.util.varOccurences($code, $nextData) < 2) {
+ out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';
+ } else {
+ out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';
+ }
+ if ($breakOnError) {
+ out += ' if (!' + ($nextValid) + ') break; ';
+ }
+ out += ' } } ';
+ if ($breakOnError) {
+ out += ' if (' + ($nextValid) + ') { ';
+ $closingBraces += '}';
+ }
+ }
+ } else if (it.util.schemaHasRules($schema, it.RULES.all)) {
+ $it.schema = $schema;
+ $it.schemaPath = $schemaPath;
+ $it.errSchemaPath = $errSchemaPath;
+ out += ' for (var ' + ($idx) + ' = ' + (0) + '; ' + ($idx) + ' < ' + ($data) + '.length; ' + ($idx) + '++) { ';
+ $it.errorPath = it.util.getPathExpr(it.errorPath, $idx, it.opts.jsonPointers, true);
+ var $passData = $data + '[' + $idx + ']';
+ $it.dataPathArr[$dataNxt] = $idx;
+ var $code = it.validate($it);
+ $it.baseId = $currentBaseId;
+ if (it.util.varOccurences($code, $nextData) < 2) {
+ out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';
+ } else {
+ out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';
+ }
+ if ($breakOnError) {
+ out += ' if (!' + ($nextValid) + ') break; ';
+ }
+ out += ' }';
+ }
+ if ($breakOnError) {
+ out += ' ' + ($closingBraces) + ' if (' + ($errs) + ' == errors) {';
+ }
+ out = it.util.cleanUpCode(out);
+ return out;
+}
+
+
+/***/ }),
+
+/***/ "../../node_modules/ajv/lib/dotjs/multipleOf.js":
+/*!********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/ajv/lib/dotjs/multipleOf.js ***!
+ \********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+module.exports = function generate_multipleOf(it, $keyword, $ruleType) {
+ var out = ' ';
+ var $lvl = it.level;
+ var $dataLvl = it.dataLevel;
+ var $schema = it.schema[$keyword];
+ var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
+ var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
+ var $breakOnError = !it.opts.allErrors;
+ var $data = 'data' + ($dataLvl || '');
+ var $isData = it.opts.$data && $schema && $schema.$data,
+ $schemaValue;
+ if ($isData) {
+ out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';
+ $schemaValue = 'schema' + $lvl;
+ } else {
+ $schemaValue = $schema;
+ }
+ out += 'var division' + ($lvl) + ';if (';
+ if ($isData) {
+ out += ' ' + ($schemaValue) + ' !== undefined && ( typeof ' + ($schemaValue) + ' != \'number\' || ';
+ }
+ out += ' (division' + ($lvl) + ' = ' + ($data) + ' / ' + ($schemaValue) + ', ';
+ if (it.opts.multipleOfPrecision) {
+ out += ' Math.abs(Math.round(division' + ($lvl) + ') - division' + ($lvl) + ') > 1e-' + (it.opts.multipleOfPrecision) + ' ';
+ } else {
+ out += ' division' + ($lvl) + ' !== parseInt(division' + ($lvl) + ') ';
+ }
+ out += ' ) ';
+ if ($isData) {
+ out += ' ) ';
+ }
+ out += ' ) { ';
+ var $$outStack = $$outStack || [];
+ $$outStack.push(out);
+ out = ''; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ('multipleOf') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { multipleOf: ' + ($schemaValue) + ' } ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'should be multiple of ';
+ if ($isData) {
+ out += '\' + ' + ($schemaValue);
+ } else {
+ out += '' + ($schemaValue) + '\'';
+ }
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: ';
+ if ($isData) {
+ out += 'validate.schema' + ($schemaPath);
+ } else {
+ out += '' + ($schema);
+ }
+ out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ var __err = out;
+ out = $$outStack.pop();
+ if (!it.compositeRule && $breakOnError) {
+ /* istanbul ignore if */
+ if (it.async) {
+ out += ' throw new ValidationError([' + (__err) + ']); ';
+ } else {
+ out += ' validate.errors = [' + (__err) + ']; return false; ';
+ }
+ } else {
+ out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ }
+ out += '} ';
+ if ($breakOnError) {
+ out += ' else { ';
+ }
+ return out;
+}
+
+
+/***/ }),
+
+/***/ "../../node_modules/ajv/lib/dotjs/not.js":
+/*!*************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/ajv/lib/dotjs/not.js ***!
+ \*************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+module.exports = function generate_not(it, $keyword, $ruleType) {
+ var out = ' ';
+ var $lvl = it.level;
+ var $dataLvl = it.dataLevel;
+ var $schema = it.schema[$keyword];
+ var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
+ var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
+ var $breakOnError = !it.opts.allErrors;
+ var $data = 'data' + ($dataLvl || '');
+ var $errs = 'errs__' + $lvl;
+ var $it = it.util.copy(it);
+ $it.level++;
+ var $nextValid = 'valid' + $it.level;
+ if (it.util.schemaHasRules($schema, it.RULES.all)) {
+ $it.schema = $schema;
+ $it.schemaPath = $schemaPath;
+ $it.errSchemaPath = $errSchemaPath;
+ out += ' var ' + ($errs) + ' = errors; ';
+ var $wasComposite = it.compositeRule;
+ it.compositeRule = $it.compositeRule = true;
+ $it.createErrors = false;
+ var $allErrorsOption;
+ if ($it.opts.allErrors) {
+ $allErrorsOption = $it.opts.allErrors;
+ $it.opts.allErrors = false;
+ }
+ out += ' ' + (it.validate($it)) + ' ';
+ $it.createErrors = true;
+ if ($allErrorsOption) $it.opts.allErrors = $allErrorsOption;
+ it.compositeRule = $it.compositeRule = $wasComposite;
+ out += ' if (' + ($nextValid) + ') { ';
+ var $$outStack = $$outStack || [];
+ $$outStack.push(out);
+ out = ''; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ('not') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'should NOT be valid\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ var __err = out;
+ out = $$outStack.pop();
+ if (!it.compositeRule && $breakOnError) {
+ /* istanbul ignore if */
+ if (it.async) {
+ out += ' throw new ValidationError([' + (__err) + ']); ';
+ } else {
+ out += ' validate.errors = [' + (__err) + ']; return false; ';
+ }
+ } else {
+ out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ }
+ out += ' } else { errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; } ';
+ if (it.opts.allErrors) {
+ out += ' } ';
+ }
+ } else {
+ out += ' var err = '; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ('not') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'should NOT be valid\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ if ($breakOnError) {
+ out += ' if (false) { ';
+ }
+ }
+ return out;
+}
+
+
+/***/ }),
+
+/***/ "../../node_modules/ajv/lib/dotjs/oneOf.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/ajv/lib/dotjs/oneOf.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+module.exports = function generate_oneOf(it, $keyword, $ruleType) {
+ var out = ' ';
+ var $lvl = it.level;
+ var $dataLvl = it.dataLevel;
+ var $schema = it.schema[$keyword];
+ var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
+ var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
+ var $breakOnError = !it.opts.allErrors;
+ var $data = 'data' + ($dataLvl || '');
+ var $valid = 'valid' + $lvl;
+ var $errs = 'errs__' + $lvl;
+ var $it = it.util.copy(it);
+ var $closingBraces = '';
+ $it.level++;
+ var $nextValid = 'valid' + $it.level;
+ var $currentBaseId = $it.baseId,
+ $prevValid = 'prevValid' + $lvl,
+ $passingSchemas = 'passingSchemas' + $lvl;
+ out += 'var ' + ($errs) + ' = errors , ' + ($prevValid) + ' = false , ' + ($valid) + ' = false , ' + ($passingSchemas) + ' = null; ';
+ var $wasComposite = it.compositeRule;
+ it.compositeRule = $it.compositeRule = true;
+ var arr1 = $schema;
+ if (arr1) {
+ var $sch, $i = -1,
+ l1 = arr1.length - 1;
+ while ($i < l1) {
+ $sch = arr1[$i += 1];
+ if (it.util.schemaHasRules($sch, it.RULES.all)) {
+ $it.schema = $sch;
+ $it.schemaPath = $schemaPath + '[' + $i + ']';
+ $it.errSchemaPath = $errSchemaPath + '/' + $i;
+ out += ' ' + (it.validate($it)) + ' ';
+ $it.baseId = $currentBaseId;
+ } else {
+ out += ' var ' + ($nextValid) + ' = true; ';
+ }
+ if ($i) {
+ out += ' if (' + ($nextValid) + ' && ' + ($prevValid) + ') { ' + ($valid) + ' = false; ' + ($passingSchemas) + ' = [' + ($passingSchemas) + ', ' + ($i) + ']; } else { ';
+ $closingBraces += '}';
+ }
+ out += ' if (' + ($nextValid) + ') { ' + ($valid) + ' = ' + ($prevValid) + ' = true; ' + ($passingSchemas) + ' = ' + ($i) + '; }';
+ }
+ }
+ it.compositeRule = $it.compositeRule = $wasComposite;
+ out += '' + ($closingBraces) + 'if (!' + ($valid) + ') { var err = '; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ('oneOf') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { passingSchemas: ' + ($passingSchemas) + ' } ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'should match exactly one schema in oneOf\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ if (!it.compositeRule && $breakOnError) {
+ /* istanbul ignore if */
+ if (it.async) {
+ out += ' throw new ValidationError(vErrors); ';
+ } else {
+ out += ' validate.errors = vErrors; return false; ';
+ }
+ }
+ out += '} else { errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; }';
+ if (it.opts.allErrors) {
+ out += ' } ';
+ }
+ return out;
+}
+
+
+/***/ }),
+
+/***/ "../../node_modules/ajv/lib/dotjs/pattern.js":
+/*!*****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/ajv/lib/dotjs/pattern.js ***!
+ \*****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+module.exports = function generate_pattern(it, $keyword, $ruleType) {
+ var out = ' ';
+ var $lvl = it.level;
+ var $dataLvl = it.dataLevel;
+ var $schema = it.schema[$keyword];
+ var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
+ var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
+ var $breakOnError = !it.opts.allErrors;
+ var $data = 'data' + ($dataLvl || '');
+ var $isData = it.opts.$data && $schema && $schema.$data,
+ $schemaValue;
+ if ($isData) {
+ out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';
+ $schemaValue = 'schema' + $lvl;
+ } else {
+ $schemaValue = $schema;
+ }
+ var $regexp = $isData ? '(new RegExp(' + $schemaValue + '))' : it.usePattern($schema);
+ out += 'if ( ';
+ if ($isData) {
+ out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'string\') || ';
+ }
+ out += ' !' + ($regexp) + '.test(' + ($data) + ') ) { ';
+ var $$outStack = $$outStack || [];
+ $$outStack.push(out);
+ out = ''; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ('pattern') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { pattern: ';
+ if ($isData) {
+ out += '' + ($schemaValue);
+ } else {
+ out += '' + (it.util.toQuotedString($schema));
+ }
+ out += ' } ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'should match pattern "';
+ if ($isData) {
+ out += '\' + ' + ($schemaValue) + ' + \'';
+ } else {
+ out += '' + (it.util.escapeQuotes($schema));
+ }
+ out += '"\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: ';
+ if ($isData) {
+ out += 'validate.schema' + ($schemaPath);
+ } else {
+ out += '' + (it.util.toQuotedString($schema));
+ }
+ out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ var __err = out;
+ out = $$outStack.pop();
+ if (!it.compositeRule && $breakOnError) {
+ /* istanbul ignore if */
+ if (it.async) {
+ out += ' throw new ValidationError([' + (__err) + ']); ';
+ } else {
+ out += ' validate.errors = [' + (__err) + ']; return false; ';
+ }
+ } else {
+ out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ }
+ out += '} ';
+ if ($breakOnError) {
+ out += ' else { ';
+ }
+ return out;
+}
+
+
+/***/ }),
+
+/***/ "../../node_modules/ajv/lib/dotjs/properties.js":
+/*!********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/ajv/lib/dotjs/properties.js ***!
+ \********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+module.exports = function generate_properties(it, $keyword, $ruleType) {
+ var out = ' ';
+ var $lvl = it.level;
+ var $dataLvl = it.dataLevel;
+ var $schema = it.schema[$keyword];
+ var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
+ var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
+ var $breakOnError = !it.opts.allErrors;
+ var $data = 'data' + ($dataLvl || '');
+ var $errs = 'errs__' + $lvl;
+ var $it = it.util.copy(it);
+ var $closingBraces = '';
+ $it.level++;
+ var $nextValid = 'valid' + $it.level;
+ var $key = 'key' + $lvl,
+ $idx = 'idx' + $lvl,
+ $dataNxt = $it.dataLevel = it.dataLevel + 1,
+ $nextData = 'data' + $dataNxt,
+ $dataProperties = 'dataProperties' + $lvl;
+ var $schemaKeys = Object.keys($schema || {}),
+ $pProperties = it.schema.patternProperties || {},
+ $pPropertyKeys = Object.keys($pProperties),
+ $aProperties = it.schema.additionalProperties,
+ $someProperties = $schemaKeys.length || $pPropertyKeys.length,
+ $noAdditional = $aProperties === false,
+ $additionalIsSchema = typeof $aProperties == 'object' && Object.keys($aProperties).length,
+ $removeAdditional = it.opts.removeAdditional,
+ $checkAdditional = $noAdditional || $additionalIsSchema || $removeAdditional,
+ $ownProperties = it.opts.ownProperties,
+ $currentBaseId = it.baseId;
+ var $required = it.schema.required;
+ if ($required && !(it.opts.$data && $required.$data) && $required.length < it.opts.loopRequired) var $requiredHash = it.util.toHash($required);
+ out += 'var ' + ($errs) + ' = errors;var ' + ($nextValid) + ' = true;';
+ if ($ownProperties) {
+ out += ' var ' + ($dataProperties) + ' = undefined;';
+ }
+ if ($checkAdditional) {
+ if ($ownProperties) {
+ out += ' ' + ($dataProperties) + ' = ' + ($dataProperties) + ' || Object.keys(' + ($data) + '); for (var ' + ($idx) + '=0; ' + ($idx) + '<' + ($dataProperties) + '.length; ' + ($idx) + '++) { var ' + ($key) + ' = ' + ($dataProperties) + '[' + ($idx) + ']; ';
+ } else {
+ out += ' for (var ' + ($key) + ' in ' + ($data) + ') { ';
+ }
+ if ($someProperties) {
+ out += ' var isAdditional' + ($lvl) + ' = !(false ';
+ if ($schemaKeys.length) {
+ if ($schemaKeys.length > 8) {
+ out += ' || validate.schema' + ($schemaPath) + '.hasOwnProperty(' + ($key) + ') ';
+ } else {
+ var arr1 = $schemaKeys;
+ if (arr1) {
+ var $propertyKey, i1 = -1,
+ l1 = arr1.length - 1;
+ while (i1 < l1) {
+ $propertyKey = arr1[i1 += 1];
+ out += ' || ' + ($key) + ' == ' + (it.util.toQuotedString($propertyKey)) + ' ';
+ }
+ }
+ }
+ }
+ if ($pPropertyKeys.length) {
+ var arr2 = $pPropertyKeys;
+ if (arr2) {
+ var $pProperty, $i = -1,
+ l2 = arr2.length - 1;
+ while ($i < l2) {
+ $pProperty = arr2[$i += 1];
+ out += ' || ' + (it.usePattern($pProperty)) + '.test(' + ($key) + ') ';
+ }
+ }
+ }
+ out += ' ); if (isAdditional' + ($lvl) + ') { ';
+ }
+ if ($removeAdditional == 'all') {
+ out += ' delete ' + ($data) + '[' + ($key) + ']; ';
+ } else {
+ var $currentErrorPath = it.errorPath;
+ var $additionalProperty = '\' + ' + $key + ' + \'';
+ if (it.opts._errorDataPathProperty) {
+ it.errorPath = it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers);
+ }
+ if ($noAdditional) {
+ if ($removeAdditional) {
+ out += ' delete ' + ($data) + '[' + ($key) + ']; ';
+ } else {
+ out += ' ' + ($nextValid) + ' = false; ';
+ var $currErrSchemaPath = $errSchemaPath;
+ $errSchemaPath = it.errSchemaPath + '/additionalProperties';
+ var $$outStack = $$outStack || [];
+ $$outStack.push(out);
+ out = ''; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ('additionalProperties') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { additionalProperty: \'' + ($additionalProperty) + '\' } ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'';
+ if (it.opts._errorDataPathProperty) {
+ out += 'is an invalid additional property';
+ } else {
+ out += 'should NOT have additional properties';
+ }
+ out += '\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: false , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ var __err = out;
+ out = $$outStack.pop();
+ if (!it.compositeRule && $breakOnError) {
+ /* istanbul ignore if */
+ if (it.async) {
+ out += ' throw new ValidationError([' + (__err) + ']); ';
+ } else {
+ out += ' validate.errors = [' + (__err) + ']; return false; ';
+ }
+ } else {
+ out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ }
+ $errSchemaPath = $currErrSchemaPath;
+ if ($breakOnError) {
+ out += ' break; ';
+ }
+ }
+ } else if ($additionalIsSchema) {
+ if ($removeAdditional == 'failing') {
+ out += ' var ' + ($errs) + ' = errors; ';
+ var $wasComposite = it.compositeRule;
+ it.compositeRule = $it.compositeRule = true;
+ $it.schema = $aProperties;
+ $it.schemaPath = it.schemaPath + '.additionalProperties';
+ $it.errSchemaPath = it.errSchemaPath + '/additionalProperties';
+ $it.errorPath = it.opts._errorDataPathProperty ? it.errorPath : it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers);
+ var $passData = $data + '[' + $key + ']';
+ $it.dataPathArr[$dataNxt] = $key;
+ var $code = it.validate($it);
+ $it.baseId = $currentBaseId;
+ if (it.util.varOccurences($code, $nextData) < 2) {
+ out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';
+ } else {
+ out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';
+ }
+ out += ' if (!' + ($nextValid) + ') { errors = ' + ($errs) + '; if (validate.errors !== null) { if (errors) validate.errors.length = errors; else validate.errors = null; } delete ' + ($data) + '[' + ($key) + ']; } ';
+ it.compositeRule = $it.compositeRule = $wasComposite;
+ } else {
+ $it.schema = $aProperties;
+ $it.schemaPath = it.schemaPath + '.additionalProperties';
+ $it.errSchemaPath = it.errSchemaPath + '/additionalProperties';
+ $it.errorPath = it.opts._errorDataPathProperty ? it.errorPath : it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers);
+ var $passData = $data + '[' + $key + ']';
+ $it.dataPathArr[$dataNxt] = $key;
+ var $code = it.validate($it);
+ $it.baseId = $currentBaseId;
+ if (it.util.varOccurences($code, $nextData) < 2) {
+ out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';
+ } else {
+ out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';
+ }
+ if ($breakOnError) {
+ out += ' if (!' + ($nextValid) + ') break; ';
+ }
+ }
+ }
+ it.errorPath = $currentErrorPath;
+ }
+ if ($someProperties) {
+ out += ' } ';
+ }
+ out += ' } ';
+ if ($breakOnError) {
+ out += ' if (' + ($nextValid) + ') { ';
+ $closingBraces += '}';
+ }
+ }
+ var $useDefaults = it.opts.useDefaults && !it.compositeRule;
+ if ($schemaKeys.length) {
+ var arr3 = $schemaKeys;
+ if (arr3) {
+ var $propertyKey, i3 = -1,
+ l3 = arr3.length - 1;
+ while (i3 < l3) {
+ $propertyKey = arr3[i3 += 1];
+ var $sch = $schema[$propertyKey];
+ if (it.util.schemaHasRules($sch, it.RULES.all)) {
+ var $prop = it.util.getProperty($propertyKey),
+ $passData = $data + $prop,
+ $hasDefault = $useDefaults && $sch.default !== undefined;
+ $it.schema = $sch;
+ $it.schemaPath = $schemaPath + $prop;
+ $it.errSchemaPath = $errSchemaPath + '/' + it.util.escapeFragment($propertyKey);
+ $it.errorPath = it.util.getPath(it.errorPath, $propertyKey, it.opts.jsonPointers);
+ $it.dataPathArr[$dataNxt] = it.util.toQuotedString($propertyKey);
+ var $code = it.validate($it);
+ $it.baseId = $currentBaseId;
+ if (it.util.varOccurences($code, $nextData) < 2) {
+ $code = it.util.varReplace($code, $nextData, $passData);
+ var $useData = $passData;
+ } else {
+ var $useData = $nextData;
+ out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ';
+ }
+ if ($hasDefault) {
+ out += ' ' + ($code) + ' ';
+ } else {
+ if ($requiredHash && $requiredHash[$propertyKey]) {
+ out += ' if ( ' + ($useData) + ' === undefined ';
+ if ($ownProperties) {
+ out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($propertyKey)) + '\') ';
+ }
+ out += ') { ' + ($nextValid) + ' = false; ';
+ var $currentErrorPath = it.errorPath,
+ $currErrSchemaPath = $errSchemaPath,
+ $missingProperty = it.util.escapeQuotes($propertyKey);
+ if (it.opts._errorDataPathProperty) {
+ it.errorPath = it.util.getPath($currentErrorPath, $propertyKey, it.opts.jsonPointers);
+ }
+ $errSchemaPath = it.errSchemaPath + '/required';
+ var $$outStack = $$outStack || [];
+ $$outStack.push(out);
+ out = ''; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ('required') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \'' + ($missingProperty) + '\' } ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'';
+ if (it.opts._errorDataPathProperty) {
+ out += 'is a required property';
+ } else {
+ out += 'should have required property \\\'' + ($missingProperty) + '\\\'';
+ }
+ out += '\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ var __err = out;
+ out = $$outStack.pop();
+ if (!it.compositeRule && $breakOnError) {
+ /* istanbul ignore if */
+ if (it.async) {
+ out += ' throw new ValidationError([' + (__err) + ']); ';
+ } else {
+ out += ' validate.errors = [' + (__err) + ']; return false; ';
+ }
+ } else {
+ out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ }
+ $errSchemaPath = $currErrSchemaPath;
+ it.errorPath = $currentErrorPath;
+ out += ' } else { ';
+ } else {
+ if ($breakOnError) {
+ out += ' if ( ' + ($useData) + ' === undefined ';
+ if ($ownProperties) {
+ out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($propertyKey)) + '\') ';
+ }
+ out += ') { ' + ($nextValid) + ' = true; } else { ';
+ } else {
+ out += ' if (' + ($useData) + ' !== undefined ';
+ if ($ownProperties) {
+ out += ' && Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($propertyKey)) + '\') ';
+ }
+ out += ' ) { ';
+ }
+ }
+ out += ' ' + ($code) + ' } ';
+ }
+ }
+ if ($breakOnError) {
+ out += ' if (' + ($nextValid) + ') { ';
+ $closingBraces += '}';
+ }
+ }
+ }
+ }
+ if ($pPropertyKeys.length) {
+ var arr4 = $pPropertyKeys;
+ if (arr4) {
+ var $pProperty, i4 = -1,
+ l4 = arr4.length - 1;
+ while (i4 < l4) {
+ $pProperty = arr4[i4 += 1];
+ var $sch = $pProperties[$pProperty];
+ if (it.util.schemaHasRules($sch, it.RULES.all)) {
+ $it.schema = $sch;
+ $it.schemaPath = it.schemaPath + '.patternProperties' + it.util.getProperty($pProperty);
+ $it.errSchemaPath = it.errSchemaPath + '/patternProperties/' + it.util.escapeFragment($pProperty);
+ if ($ownProperties) {
+ out += ' ' + ($dataProperties) + ' = ' + ($dataProperties) + ' || Object.keys(' + ($data) + '); for (var ' + ($idx) + '=0; ' + ($idx) + '<' + ($dataProperties) + '.length; ' + ($idx) + '++) { var ' + ($key) + ' = ' + ($dataProperties) + '[' + ($idx) + ']; ';
+ } else {
+ out += ' for (var ' + ($key) + ' in ' + ($data) + ') { ';
+ }
+ out += ' if (' + (it.usePattern($pProperty)) + '.test(' + ($key) + ')) { ';
+ $it.errorPath = it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers);
+ var $passData = $data + '[' + $key + ']';
+ $it.dataPathArr[$dataNxt] = $key;
+ var $code = it.validate($it);
+ $it.baseId = $currentBaseId;
+ if (it.util.varOccurences($code, $nextData) < 2) {
+ out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';
+ } else {
+ out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';
+ }
+ if ($breakOnError) {
+ out += ' if (!' + ($nextValid) + ') break; ';
+ }
+ out += ' } ';
+ if ($breakOnError) {
+ out += ' else ' + ($nextValid) + ' = true; ';
+ }
+ out += ' } ';
+ if ($breakOnError) {
+ out += ' if (' + ($nextValid) + ') { ';
+ $closingBraces += '}';
+ }
+ }
+ }
+ }
+ }
+ if ($breakOnError) {
+ out += ' ' + ($closingBraces) + ' if (' + ($errs) + ' == errors) {';
+ }
+ out = it.util.cleanUpCode(out);
+ return out;
+}
+
+
+/***/ }),
+
+/***/ "../../node_modules/ajv/lib/dotjs/propertyNames.js":
+/*!***********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/ajv/lib/dotjs/propertyNames.js ***!
+ \***********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+module.exports = function generate_propertyNames(it, $keyword, $ruleType) {
+ var out = ' ';
+ var $lvl = it.level;
+ var $dataLvl = it.dataLevel;
+ var $schema = it.schema[$keyword];
+ var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
+ var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
+ var $breakOnError = !it.opts.allErrors;
+ var $data = 'data' + ($dataLvl || '');
+ var $errs = 'errs__' + $lvl;
+ var $it = it.util.copy(it);
+ var $closingBraces = '';
+ $it.level++;
+ var $nextValid = 'valid' + $it.level;
+ out += 'var ' + ($errs) + ' = errors;';
+ if (it.util.schemaHasRules($schema, it.RULES.all)) {
+ $it.schema = $schema;
+ $it.schemaPath = $schemaPath;
+ $it.errSchemaPath = $errSchemaPath;
+ var $key = 'key' + $lvl,
+ $idx = 'idx' + $lvl,
+ $i = 'i' + $lvl,
+ $invalidName = '\' + ' + $key + ' + \'',
+ $dataNxt = $it.dataLevel = it.dataLevel + 1,
+ $nextData = 'data' + $dataNxt,
+ $dataProperties = 'dataProperties' + $lvl,
+ $ownProperties = it.opts.ownProperties,
+ $currentBaseId = it.baseId;
+ if ($ownProperties) {
+ out += ' var ' + ($dataProperties) + ' = undefined; ';
+ }
+ if ($ownProperties) {
+ out += ' ' + ($dataProperties) + ' = ' + ($dataProperties) + ' || Object.keys(' + ($data) + '); for (var ' + ($idx) + '=0; ' + ($idx) + '<' + ($dataProperties) + '.length; ' + ($idx) + '++) { var ' + ($key) + ' = ' + ($dataProperties) + '[' + ($idx) + ']; ';
+ } else {
+ out += ' for (var ' + ($key) + ' in ' + ($data) + ') { ';
+ }
+ out += ' var startErrs' + ($lvl) + ' = errors; ';
+ var $passData = $key;
+ var $wasComposite = it.compositeRule;
+ it.compositeRule = $it.compositeRule = true;
+ var $code = it.validate($it);
+ $it.baseId = $currentBaseId;
+ if (it.util.varOccurences($code, $nextData) < 2) {
+ out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';
+ } else {
+ out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';
+ }
+ it.compositeRule = $it.compositeRule = $wasComposite;
+ out += ' if (!' + ($nextValid) + ') { for (var ' + ($i) + '=startErrs' + ($lvl) + '; ' + ($i) + '= it.opts.loopRequired,
+ $ownProperties = it.opts.ownProperties;
+ if ($breakOnError) {
+ out += ' var missing' + ($lvl) + '; ';
+ if ($loopRequired) {
+ if (!$isData) {
+ out += ' var ' + ($vSchema) + ' = validate.schema' + ($schemaPath) + '; ';
+ }
+ var $i = 'i' + $lvl,
+ $propertyPath = 'schema' + $lvl + '[' + $i + ']',
+ $missingProperty = '\' + ' + $propertyPath + ' + \'';
+ if (it.opts._errorDataPathProperty) {
+ it.errorPath = it.util.getPathExpr($currentErrorPath, $propertyPath, it.opts.jsonPointers);
+ }
+ out += ' var ' + ($valid) + ' = true; ';
+ if ($isData) {
+ out += ' if (schema' + ($lvl) + ' === undefined) ' + ($valid) + ' = true; else if (!Array.isArray(schema' + ($lvl) + ')) ' + ($valid) + ' = false; else {';
+ }
+ out += ' for (var ' + ($i) + ' = 0; ' + ($i) + ' < ' + ($vSchema) + '.length; ' + ($i) + '++) { ' + ($valid) + ' = ' + ($data) + '[' + ($vSchema) + '[' + ($i) + ']] !== undefined ';
+ if ($ownProperties) {
+ out += ' && Object.prototype.hasOwnProperty.call(' + ($data) + ', ' + ($vSchema) + '[' + ($i) + ']) ';
+ }
+ out += '; if (!' + ($valid) + ') break; } ';
+ if ($isData) {
+ out += ' } ';
+ }
+ out += ' if (!' + ($valid) + ') { ';
+ var $$outStack = $$outStack || [];
+ $$outStack.push(out);
+ out = ''; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ('required') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \'' + ($missingProperty) + '\' } ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'';
+ if (it.opts._errorDataPathProperty) {
+ out += 'is a required property';
+ } else {
+ out += 'should have required property \\\'' + ($missingProperty) + '\\\'';
+ }
+ out += '\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ var __err = out;
+ out = $$outStack.pop();
+ if (!it.compositeRule && $breakOnError) {
+ /* istanbul ignore if */
+ if (it.async) {
+ out += ' throw new ValidationError([' + (__err) + ']); ';
+ } else {
+ out += ' validate.errors = [' + (__err) + ']; return false; ';
+ }
+ } else {
+ out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ }
+ out += ' } else { ';
+ } else {
+ out += ' if ( ';
+ var arr2 = $required;
+ if (arr2) {
+ var $propertyKey, $i = -1,
+ l2 = arr2.length - 1;
+ while ($i < l2) {
+ $propertyKey = arr2[$i += 1];
+ if ($i) {
+ out += ' || ';
+ }
+ var $prop = it.util.getProperty($propertyKey),
+ $useData = $data + $prop;
+ out += ' ( ( ' + ($useData) + ' === undefined ';
+ if ($ownProperties) {
+ out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($propertyKey)) + '\') ';
+ }
+ out += ') && (missing' + ($lvl) + ' = ' + (it.util.toQuotedString(it.opts.jsonPointers ? $propertyKey : $prop)) + ') ) ';
+ }
+ }
+ out += ') { ';
+ var $propertyPath = 'missing' + $lvl,
+ $missingProperty = '\' + ' + $propertyPath + ' + \'';
+ if (it.opts._errorDataPathProperty) {
+ it.errorPath = it.opts.jsonPointers ? it.util.getPathExpr($currentErrorPath, $propertyPath, true) : $currentErrorPath + ' + ' + $propertyPath;
+ }
+ var $$outStack = $$outStack || [];
+ $$outStack.push(out);
+ out = ''; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ('required') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \'' + ($missingProperty) + '\' } ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'';
+ if (it.opts._errorDataPathProperty) {
+ out += 'is a required property';
+ } else {
+ out += 'should have required property \\\'' + ($missingProperty) + '\\\'';
+ }
+ out += '\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ var __err = out;
+ out = $$outStack.pop();
+ if (!it.compositeRule && $breakOnError) {
+ /* istanbul ignore if */
+ if (it.async) {
+ out += ' throw new ValidationError([' + (__err) + ']); ';
+ } else {
+ out += ' validate.errors = [' + (__err) + ']; return false; ';
+ }
+ } else {
+ out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ }
+ out += ' } else { ';
+ }
+ } else {
+ if ($loopRequired) {
+ if (!$isData) {
+ out += ' var ' + ($vSchema) + ' = validate.schema' + ($schemaPath) + '; ';
+ }
+ var $i = 'i' + $lvl,
+ $propertyPath = 'schema' + $lvl + '[' + $i + ']',
+ $missingProperty = '\' + ' + $propertyPath + ' + \'';
+ if (it.opts._errorDataPathProperty) {
+ it.errorPath = it.util.getPathExpr($currentErrorPath, $propertyPath, it.opts.jsonPointers);
+ }
+ if ($isData) {
+ out += ' if (' + ($vSchema) + ' && !Array.isArray(' + ($vSchema) + ')) { var err = '; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ('required') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \'' + ($missingProperty) + '\' } ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'';
+ if (it.opts._errorDataPathProperty) {
+ out += 'is a required property';
+ } else {
+ out += 'should have required property \\\'' + ($missingProperty) + '\\\'';
+ }
+ out += '\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } else if (' + ($vSchema) + ' !== undefined) { ';
+ }
+ out += ' for (var ' + ($i) + ' = 0; ' + ($i) + ' < ' + ($vSchema) + '.length; ' + ($i) + '++) { if (' + ($data) + '[' + ($vSchema) + '[' + ($i) + ']] === undefined ';
+ if ($ownProperties) {
+ out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', ' + ($vSchema) + '[' + ($i) + ']) ';
+ }
+ out += ') { var err = '; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ('required') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \'' + ($missingProperty) + '\' } ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'';
+ if (it.opts._errorDataPathProperty) {
+ out += 'is a required property';
+ } else {
+ out += 'should have required property \\\'' + ($missingProperty) + '\\\'';
+ }
+ out += '\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } } ';
+ if ($isData) {
+ out += ' } ';
+ }
+ } else {
+ var arr3 = $required;
+ if (arr3) {
+ var $propertyKey, i3 = -1,
+ l3 = arr3.length - 1;
+ while (i3 < l3) {
+ $propertyKey = arr3[i3 += 1];
+ var $prop = it.util.getProperty($propertyKey),
+ $missingProperty = it.util.escapeQuotes($propertyKey),
+ $useData = $data + $prop;
+ if (it.opts._errorDataPathProperty) {
+ it.errorPath = it.util.getPath($currentErrorPath, $propertyKey, it.opts.jsonPointers);
+ }
+ out += ' if ( ' + ($useData) + ' === undefined ';
+ if ($ownProperties) {
+ out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($propertyKey)) + '\') ';
+ }
+ out += ') { var err = '; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ('required') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \'' + ($missingProperty) + '\' } ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'';
+ if (it.opts._errorDataPathProperty) {
+ out += 'is a required property';
+ } else {
+ out += 'should have required property \\\'' + ($missingProperty) + '\\\'';
+ }
+ out += '\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } ';
+ }
+ }
+ }
+ }
+ it.errorPath = $currentErrorPath;
+ } else if ($breakOnError) {
+ out += ' if (true) {';
+ }
+ return out;
+}
+
+
+/***/ }),
+
+/***/ "../../node_modules/ajv/lib/dotjs/uniqueItems.js":
+/*!*********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/ajv/lib/dotjs/uniqueItems.js ***!
+ \*********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+module.exports = function generate_uniqueItems(it, $keyword, $ruleType) {
+ var out = ' ';
+ var $lvl = it.level;
+ var $dataLvl = it.dataLevel;
+ var $schema = it.schema[$keyword];
+ var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
+ var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
+ var $breakOnError = !it.opts.allErrors;
+ var $data = 'data' + ($dataLvl || '');
+ var $valid = 'valid' + $lvl;
+ var $isData = it.opts.$data && $schema && $schema.$data,
+ $schemaValue;
+ if ($isData) {
+ out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';
+ $schemaValue = 'schema' + $lvl;
+ } else {
+ $schemaValue = $schema;
+ }
+ if (($schema || $isData) && it.opts.uniqueItems !== false) {
+ if ($isData) {
+ out += ' var ' + ($valid) + '; if (' + ($schemaValue) + ' === false || ' + ($schemaValue) + ' === undefined) ' + ($valid) + ' = true; else if (typeof ' + ($schemaValue) + ' != \'boolean\') ' + ($valid) + ' = false; else { ';
+ }
+ out += ' var i = ' + ($data) + '.length , ' + ($valid) + ' = true , j; if (i > 1) { ';
+ var $itemType = it.schema.items && it.schema.items.type,
+ $typeIsArray = Array.isArray($itemType);
+ if (!$itemType || $itemType == 'object' || $itemType == 'array' || ($typeIsArray && ($itemType.indexOf('object') >= 0 || $itemType.indexOf('array') >= 0))) {
+ out += ' outer: for (;i--;) { for (j = i; j--;) { if (equal(' + ($data) + '[i], ' + ($data) + '[j])) { ' + ($valid) + ' = false; break outer; } } } ';
+ } else {
+ out += ' var itemIndices = {}, item; for (;i--;) { var item = ' + ($data) + '[i]; ';
+ var $method = 'checkDataType' + ($typeIsArray ? 's' : '');
+ out += ' if (' + (it.util[$method]($itemType, 'item', true)) + ') continue; ';
+ if ($typeIsArray) {
+ out += ' if (typeof item == \'string\') item = \'"\' + item; ';
+ }
+ out += ' if (typeof itemIndices[item] == \'number\') { ' + ($valid) + ' = false; j = itemIndices[item]; break; } itemIndices[item] = i; } ';
+ }
+ out += ' } ';
+ if ($isData) {
+ out += ' } ';
+ }
+ out += ' if (!' + ($valid) + ') { ';
+ var $$outStack = $$outStack || [];
+ $$outStack.push(out);
+ out = ''; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ('uniqueItems') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { i: i, j: j } ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'should NOT have duplicate items (items ## \' + j + \' and \' + i + \' are identical)\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: ';
+ if ($isData) {
+ out += 'validate.schema' + ($schemaPath);
+ } else {
+ out += '' + ($schema);
+ }
+ out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ var __err = out;
+ out = $$outStack.pop();
+ if (!it.compositeRule && $breakOnError) {
+ /* istanbul ignore if */
+ if (it.async) {
+ out += ' throw new ValidationError([' + (__err) + ']); ';
+ } else {
+ out += ' validate.errors = [' + (__err) + ']; return false; ';
+ }
+ } else {
+ out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ }
+ out += ' } ';
+ if ($breakOnError) {
+ out += ' else { ';
+ }
+ } else {
+ if ($breakOnError) {
+ out += ' if (true) { ';
+ }
+ }
+ return out;
+}
+
+
+/***/ }),
+
+/***/ "../../node_modules/ajv/lib/dotjs/validate.js":
+/*!******************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/ajv/lib/dotjs/validate.js ***!
+ \******************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+module.exports = function generate_validate(it, $keyword, $ruleType) {
+ var out = '';
+ var $async = it.schema.$async === true,
+ $refKeywords = it.util.schemaHasRulesExcept(it.schema, it.RULES.all, '$ref'),
+ $id = it.self._getId(it.schema);
+ if (it.isTop) {
+ out += ' var validate = ';
+ if ($async) {
+ it.async = true;
+ out += 'async ';
+ }
+ out += 'function(data, dataPath, parentData, parentDataProperty, rootData) { \'use strict\'; ';
+ if ($id && (it.opts.sourceCode || it.opts.processCode)) {
+ out += ' ' + ('/\*# sourceURL=' + $id + ' */') + ' ';
+ }
+ }
+ if (typeof it.schema == 'boolean' || !($refKeywords || it.schema.$ref)) {
+ var $keyword = 'false schema';
+ var $lvl = it.level;
+ var $dataLvl = it.dataLevel;
+ var $schema = it.schema[$keyword];
+ var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
+ var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
+ var $breakOnError = !it.opts.allErrors;
+ var $errorKeyword;
+ var $data = 'data' + ($dataLvl || '');
+ var $valid = 'valid' + $lvl;
+ if (it.schema === false) {
+ if (it.isTop) {
+ $breakOnError = true;
+ } else {
+ out += ' var ' + ($valid) + ' = false; ';
+ }
+ var $$outStack = $$outStack || [];
+ $$outStack.push(out);
+ out = ''; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ($errorKeyword || 'false schema') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'boolean schema is false\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: false , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ var __err = out;
+ out = $$outStack.pop();
+ if (!it.compositeRule && $breakOnError) {
+ /* istanbul ignore if */
+ if (it.async) {
+ out += ' throw new ValidationError([' + (__err) + ']); ';
+ } else {
+ out += ' validate.errors = [' + (__err) + ']; return false; ';
+ }
+ } else {
+ out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ }
+ } else {
+ if (it.isTop) {
+ if ($async) {
+ out += ' return data; ';
+ } else {
+ out += ' validate.errors = null; return true; ';
+ }
+ } else {
+ out += ' var ' + ($valid) + ' = true; ';
+ }
+ }
+ if (it.isTop) {
+ out += ' }; return validate; ';
+ }
+ return out;
+ }
+ if (it.isTop) {
+ var $top = it.isTop,
+ $lvl = it.level = 0,
+ $dataLvl = it.dataLevel = 0,
+ $data = 'data';
+ it.rootId = it.resolve.fullPath(it.self._getId(it.root.schema));
+ it.baseId = it.baseId || it.rootId;
+ delete it.isTop;
+ it.dataPathArr = [undefined];
+ out += ' var vErrors = null; ';
+ out += ' var errors = 0; ';
+ out += ' if (rootData === undefined) rootData = data; ';
+ } else {
+ var $lvl = it.level,
+ $dataLvl = it.dataLevel,
+ $data = 'data' + ($dataLvl || '');
+ if ($id) it.baseId = it.resolve.url(it.baseId, $id);
+ if ($async && !it.async) throw new Error('async schema in sync schema');
+ out += ' var errs_' + ($lvl) + ' = errors;';
+ }
+ var $valid = 'valid' + $lvl,
+ $breakOnError = !it.opts.allErrors,
+ $closingBraces1 = '',
+ $closingBraces2 = '';
+ var $errorKeyword;
+ var $typeSchema = it.schema.type,
+ $typeIsArray = Array.isArray($typeSchema);
+ if ($typeSchema && it.opts.nullable && it.schema.nullable === true) {
+ if ($typeIsArray) {
+ if ($typeSchema.indexOf('null') == -1) $typeSchema = $typeSchema.concat('null');
+ } else if ($typeSchema != 'null') {
+ $typeSchema = [$typeSchema, 'null'];
+ $typeIsArray = true;
+ }
+ }
+ if ($typeIsArray && $typeSchema.length == 1) {
+ $typeSchema = $typeSchema[0];
+ $typeIsArray = false;
+ }
+ if (it.schema.$ref && $refKeywords) {
+ if (it.opts.extendRefs == 'fail') {
+ throw new Error('$ref: validation keywords used in schema at path "' + it.errSchemaPath + '" (see option extendRefs)');
+ } else if (it.opts.extendRefs !== true) {
+ $refKeywords = false;
+ it.logger.warn('$ref: keywords ignored in schema at path "' + it.errSchemaPath + '"');
+ }
+ }
+ if (it.schema.$comment && it.opts.$comment) {
+ out += ' ' + (it.RULES.all.$comment.code(it, '$comment'));
+ }
+ if ($typeSchema) {
+ if (it.opts.coerceTypes) {
+ var $coerceToTypes = it.util.coerceToTypes(it.opts.coerceTypes, $typeSchema);
+ }
+ var $rulesGroup = it.RULES.types[$typeSchema];
+ if ($coerceToTypes || $typeIsArray || $rulesGroup === true || ($rulesGroup && !$shouldUseGroup($rulesGroup))) {
+ var $schemaPath = it.schemaPath + '.type',
+ $errSchemaPath = it.errSchemaPath + '/type';
+ var $schemaPath = it.schemaPath + '.type',
+ $errSchemaPath = it.errSchemaPath + '/type',
+ $method = $typeIsArray ? 'checkDataTypes' : 'checkDataType';
+ out += ' if (' + (it.util[$method]($typeSchema, $data, true)) + ') { ';
+ if ($coerceToTypes) {
+ var $dataType = 'dataType' + $lvl,
+ $coerced = 'coerced' + $lvl;
+ out += ' var ' + ($dataType) + ' = typeof ' + ($data) + '; ';
+ if (it.opts.coerceTypes == 'array') {
+ out += ' if (' + ($dataType) + ' == \'object\' && Array.isArray(' + ($data) + ')) ' + ($dataType) + ' = \'array\'; ';
+ }
+ out += ' var ' + ($coerced) + ' = undefined; ';
+ var $bracesCoercion = '';
+ var arr1 = $coerceToTypes;
+ if (arr1) {
+ var $type, $i = -1,
+ l1 = arr1.length - 1;
+ while ($i < l1) {
+ $type = arr1[$i += 1];
+ if ($i) {
+ out += ' if (' + ($coerced) + ' === undefined) { ';
+ $bracesCoercion += '}';
+ }
+ if (it.opts.coerceTypes == 'array' && $type != 'array') {
+ out += ' if (' + ($dataType) + ' == \'array\' && ' + ($data) + '.length == 1) { ' + ($coerced) + ' = ' + ($data) + ' = ' + ($data) + '[0]; ' + ($dataType) + ' = typeof ' + ($data) + '; } ';
+ }
+ if ($type == 'string') {
+ out += ' if (' + ($dataType) + ' == \'number\' || ' + ($dataType) + ' == \'boolean\') ' + ($coerced) + ' = \'\' + ' + ($data) + '; else if (' + ($data) + ' === null) ' + ($coerced) + ' = \'\'; ';
+ } else if ($type == 'number' || $type == 'integer') {
+ out += ' if (' + ($dataType) + ' == \'boolean\' || ' + ($data) + ' === null || (' + ($dataType) + ' == \'string\' && ' + ($data) + ' && ' + ($data) + ' == +' + ($data) + ' ';
+ if ($type == 'integer') {
+ out += ' && !(' + ($data) + ' % 1)';
+ }
+ out += ')) ' + ($coerced) + ' = +' + ($data) + '; ';
+ } else if ($type == 'boolean') {
+ out += ' if (' + ($data) + ' === \'false\' || ' + ($data) + ' === 0 || ' + ($data) + ' === null) ' + ($coerced) + ' = false; else if (' + ($data) + ' === \'true\' || ' + ($data) + ' === 1) ' + ($coerced) + ' = true; ';
+ } else if ($type == 'null') {
+ out += ' if (' + ($data) + ' === \'\' || ' + ($data) + ' === 0 || ' + ($data) + ' === false) ' + ($coerced) + ' = null; ';
+ } else if (it.opts.coerceTypes == 'array' && $type == 'array') {
+ out += ' if (' + ($dataType) + ' == \'string\' || ' + ($dataType) + ' == \'number\' || ' + ($dataType) + ' == \'boolean\' || ' + ($data) + ' == null) ' + ($coerced) + ' = [' + ($data) + ']; ';
+ }
+ }
+ }
+ out += ' ' + ($bracesCoercion) + ' if (' + ($coerced) + ' === undefined) { ';
+ var $$outStack = $$outStack || [];
+ $$outStack.push(out);
+ out = ''; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ($errorKeyword || 'type') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { type: \'';
+ if ($typeIsArray) {
+ out += '' + ($typeSchema.join(","));
+ } else {
+ out += '' + ($typeSchema);
+ }
+ out += '\' } ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'should be ';
+ if ($typeIsArray) {
+ out += '' + ($typeSchema.join(","));
+ } else {
+ out += '' + ($typeSchema);
+ }
+ out += '\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ var __err = out;
+ out = $$outStack.pop();
+ if (!it.compositeRule && $breakOnError) {
+ /* istanbul ignore if */
+ if (it.async) {
+ out += ' throw new ValidationError([' + (__err) + ']); ';
+ } else {
+ out += ' validate.errors = [' + (__err) + ']; return false; ';
+ }
+ } else {
+ out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ }
+ out += ' } else { ';
+ var $parentData = $dataLvl ? 'data' + (($dataLvl - 1) || '') : 'parentData',
+ $parentDataProperty = $dataLvl ? it.dataPathArr[$dataLvl] : 'parentDataProperty';
+ out += ' ' + ($data) + ' = ' + ($coerced) + '; ';
+ if (!$dataLvl) {
+ out += 'if (' + ($parentData) + ' !== undefined)';
+ }
+ out += ' ' + ($parentData) + '[' + ($parentDataProperty) + '] = ' + ($coerced) + '; } ';
+ } else {
+ var $$outStack = $$outStack || [];
+ $$outStack.push(out);
+ out = ''; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ($errorKeyword || 'type') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { type: \'';
+ if ($typeIsArray) {
+ out += '' + ($typeSchema.join(","));
+ } else {
+ out += '' + ($typeSchema);
+ }
+ out += '\' } ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'should be ';
+ if ($typeIsArray) {
+ out += '' + ($typeSchema.join(","));
+ } else {
+ out += '' + ($typeSchema);
+ }
+ out += '\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ var __err = out;
+ out = $$outStack.pop();
+ if (!it.compositeRule && $breakOnError) {
+ /* istanbul ignore if */
+ if (it.async) {
+ out += ' throw new ValidationError([' + (__err) + ']); ';
+ } else {
+ out += ' validate.errors = [' + (__err) + ']; return false; ';
+ }
+ } else {
+ out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ }
+ }
+ out += ' } ';
+ }
+ }
+ if (it.schema.$ref && !$refKeywords) {
+ out += ' ' + (it.RULES.all.$ref.code(it, '$ref')) + ' ';
+ if ($breakOnError) {
+ out += ' } if (errors === ';
+ if ($top) {
+ out += '0';
+ } else {
+ out += 'errs_' + ($lvl);
+ }
+ out += ') { ';
+ $closingBraces2 += '}';
+ }
+ } else {
+ var arr2 = it.RULES;
+ if (arr2) {
+ var $rulesGroup, i2 = -1,
+ l2 = arr2.length - 1;
+ while (i2 < l2) {
+ $rulesGroup = arr2[i2 += 1];
+ if ($shouldUseGroup($rulesGroup)) {
+ if ($rulesGroup.type) {
+ out += ' if (' + (it.util.checkDataType($rulesGroup.type, $data)) + ') { ';
+ }
+ if (it.opts.useDefaults && !it.compositeRule) {
+ if ($rulesGroup.type == 'object' && it.schema.properties) {
+ var $schema = it.schema.properties,
+ $schemaKeys = Object.keys($schema);
+ var arr3 = $schemaKeys;
+ if (arr3) {
+ var $propertyKey, i3 = -1,
+ l3 = arr3.length - 1;
+ while (i3 < l3) {
+ $propertyKey = arr3[i3 += 1];
+ var $sch = $schema[$propertyKey];
+ if ($sch.default !== undefined) {
+ var $passData = $data + it.util.getProperty($propertyKey);
+ out += ' if (' + ($passData) + ' === undefined ';
+ if (it.opts.useDefaults == 'empty') {
+ out += ' || ' + ($passData) + ' === null || ' + ($passData) + ' === \'\' ';
+ }
+ out += ' ) ' + ($passData) + ' = ';
+ if (it.opts.useDefaults == 'shared') {
+ out += ' ' + (it.useDefault($sch.default)) + ' ';
+ } else {
+ out += ' ' + (JSON.stringify($sch.default)) + ' ';
+ }
+ out += '; ';
+ }
+ }
+ }
+ } else if ($rulesGroup.type == 'array' && Array.isArray(it.schema.items)) {
+ var arr4 = it.schema.items;
+ if (arr4) {
+ var $sch, $i = -1,
+ l4 = arr4.length - 1;
+ while ($i < l4) {
+ $sch = arr4[$i += 1];
+ if ($sch.default !== undefined) {
+ var $passData = $data + '[' + $i + ']';
+ out += ' if (' + ($passData) + ' === undefined ';
+ if (it.opts.useDefaults == 'empty') {
+ out += ' || ' + ($passData) + ' === null || ' + ($passData) + ' === \'\' ';
+ }
+ out += ' ) ' + ($passData) + ' = ';
+ if (it.opts.useDefaults == 'shared') {
+ out += ' ' + (it.useDefault($sch.default)) + ' ';
+ } else {
+ out += ' ' + (JSON.stringify($sch.default)) + ' ';
+ }
+ out += '; ';
+ }
+ }
+ }
+ }
+ }
+ var arr5 = $rulesGroup.rules;
+ if (arr5) {
+ var $rule, i5 = -1,
+ l5 = arr5.length - 1;
+ while (i5 < l5) {
+ $rule = arr5[i5 += 1];
+ if ($shouldUseRule($rule)) {
+ var $code = $rule.code(it, $rule.keyword, $rulesGroup.type);
+ if ($code) {
+ out += ' ' + ($code) + ' ';
+ if ($breakOnError) {
+ $closingBraces1 += '}';
+ }
+ }
+ }
+ }
+ }
+ if ($breakOnError) {
+ out += ' ' + ($closingBraces1) + ' ';
+ $closingBraces1 = '';
+ }
+ if ($rulesGroup.type) {
+ out += ' } ';
+ if ($typeSchema && $typeSchema === $rulesGroup.type && !$coerceToTypes) {
+ out += ' else { ';
+ var $schemaPath = it.schemaPath + '.type',
+ $errSchemaPath = it.errSchemaPath + '/type';
+ var $$outStack = $$outStack || [];
+ $$outStack.push(out);
+ out = ''; /* istanbul ignore else */
+ if (it.createErrors !== false) {
+ out += ' { keyword: \'' + ($errorKeyword || 'type') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { type: \'';
+ if ($typeIsArray) {
+ out += '' + ($typeSchema.join(","));
+ } else {
+ out += '' + ($typeSchema);
+ }
+ out += '\' } ';
+ if (it.opts.messages !== false) {
+ out += ' , message: \'should be ';
+ if ($typeIsArray) {
+ out += '' + ($typeSchema.join(","));
+ } else {
+ out += '' + ($typeSchema);
+ }
+ out += '\' ';
+ }
+ if (it.opts.verbose) {
+ out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
+ }
+ out += ' } ';
+ } else {
+ out += ' {} ';
+ }
+ var __err = out;
+ out = $$outStack.pop();
+ if (!it.compositeRule && $breakOnError) {
+ /* istanbul ignore if */
+ if (it.async) {
+ out += ' throw new ValidationError([' + (__err) + ']); ';
+ } else {
+ out += ' validate.errors = [' + (__err) + ']; return false; ';
+ }
+ } else {
+ out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
+ }
+ out += ' } ';
+ }
+ }
+ if ($breakOnError) {
+ out += ' if (errors === ';
+ if ($top) {
+ out += '0';
+ } else {
+ out += 'errs_' + ($lvl);
+ }
+ out += ') { ';
+ $closingBraces2 += '}';
+ }
+ }
+ }
+ }
+ }
+ if ($breakOnError) {
+ out += ' ' + ($closingBraces2) + ' ';
+ }
+ if ($top) {
+ if ($async) {
+ out += ' if (errors === 0) return data; ';
+ out += ' else throw new ValidationError(vErrors); ';
+ } else {
+ out += ' validate.errors = vErrors; ';
+ out += ' return errors === 0; ';
+ }
+ out += ' }; return validate;';
+ } else {
+ out += ' var ' + ($valid) + ' = errors === errs_' + ($lvl) + ';';
+ }
+ out = it.util.cleanUpCode(out);
+ if ($top) {
+ out = it.util.finalCleanUpCode(out, $async);
+ }
+
+ function $shouldUseGroup($rulesGroup) {
+ var rules = $rulesGroup.rules;
+ for (var i = 0; i < rules.length; i++)
+ if ($shouldUseRule(rules[i])) return true;
+ }
+
+ function $shouldUseRule($rule) {
+ return it.schema[$rule.keyword] !== undefined || ($rule.implements && $ruleImplementsSomeKeyword($rule));
+ }
+
+ function $ruleImplementsSomeKeyword($rule) {
+ var impl = $rule.implements;
+ for (var i = 0; i < impl.length; i++)
+ if (it.schema[impl[i]] !== undefined) return true;
+ }
+ return out;
+}
+
+
+/***/ }),
+
+/***/ "../../node_modules/ajv/lib/keyword.js":
+/*!***********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/ajv/lib/keyword.js ***!
+ \***********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var IDENTIFIER = /^[a-z_$][a-z0-9_$-]*$/i;
+var customRuleCode = __webpack_require__(/*! ./dotjs/custom */ "../../node_modules/ajv/lib/dotjs/custom.js");
+
+module.exports = {
+ add: addKeyword,
+ get: getKeyword,
+ remove: removeKeyword
+};
+
+/**
+ * Define custom keyword
+ * @this Ajv
+ * @param {String} keyword custom keyword, should be unique (including different from all standard, custom and macro keywords).
+ * @param {Object} definition keyword definition object with properties `type` (type(s) which the keyword applies to), `validate` or `compile`.
+ * @return {Ajv} this for method chaining
+ */
+function addKeyword(keyword, definition) {
+ /* jshint validthis: true */
+ /* eslint no-shadow: 0 */
+ var RULES = this.RULES;
+
+ if (RULES.keywords[keyword])
+ throw new Error('Keyword ' + keyword + ' is already defined');
+
+ if (!IDENTIFIER.test(keyword))
+ throw new Error('Keyword ' + keyword + ' is not a valid identifier');
+
+ if (definition) {
+ if (definition.macro && definition.valid !== undefined)
+ throw new Error('"valid" option cannot be used with macro keywords');
+
+ var dataType = definition.type;
+ if (Array.isArray(dataType)) {
+ var i, len = dataType.length;
+ for (i=0; i -1;
+}
+
+module.exports = arrayIncludes;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_arrayIncludesWith.js":
+/*!*********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_arrayIncludesWith.js ***!
+ \*********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * This function is like `arrayIncludes` except that it accepts a comparator.
+ *
+ * @private
+ * @param {Array} [array] The array to inspect.
+ * @param {*} target The value to search for.
+ * @param {Function} comparator The comparator invoked per element.
+ * @returns {boolean} Returns `true` if `target` is found, else `false`.
+ */
+function arrayIncludesWith(array, value, comparator) {
+ var index = -1,
+ length = array == null ? 0 : array.length;
+
+ while (++index < length) {
+ if (comparator(value, array[index])) {
+ return true;
+ }
+ }
+ return false;
+}
+
+module.exports = arrayIncludesWith;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_arrayLikeKeys.js":
+/*!*****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_arrayLikeKeys.js ***!
+ \*****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseTimes = __webpack_require__(/*! ./_baseTimes */ "../../node_modules/lodash/_baseTimes.js"),
+ isArguments = __webpack_require__(/*! ./isArguments */ "../../node_modules/lodash/isArguments.js"),
+ isArray = __webpack_require__(/*! ./isArray */ "../../node_modules/lodash/isArray.js"),
+ isBuffer = __webpack_require__(/*! ./isBuffer */ "../../node_modules/lodash/isBuffer.js"),
+ isIndex = __webpack_require__(/*! ./_isIndex */ "../../node_modules/lodash/_isIndex.js"),
+ isTypedArray = __webpack_require__(/*! ./isTypedArray */ "../../node_modules/lodash/isTypedArray.js");
+
+/** Used for built-in method references. */
+var objectProto = Object.prototype;
+
+/** Used to check objects for own properties. */
+var hasOwnProperty = objectProto.hasOwnProperty;
+
+/**
+ * Creates an array of the enumerable property names of the array-like `value`.
+ *
+ * @private
+ * @param {*} value The value to query.
+ * @param {boolean} inherited Specify returning inherited property names.
+ * @returns {Array} Returns the array of property names.
+ */
+function arrayLikeKeys(value, inherited) {
+ var isArr = isArray(value),
+ isArg = !isArr && isArguments(value),
+ isBuff = !isArr && !isArg && isBuffer(value),
+ isType = !isArr && !isArg && !isBuff && isTypedArray(value),
+ skipIndexes = isArr || isArg || isBuff || isType,
+ result = skipIndexes ? baseTimes(value.length, String) : [],
+ length = result.length;
+
+ for (var key in value) {
+ if ((inherited || hasOwnProperty.call(value, key)) &&
+ !(skipIndexes && (
+ // Safari 9 has enumerable `arguments.length` in strict mode.
+ key == 'length' ||
+ // Node.js 0.10 has enumerable non-index properties on buffers.
+ (isBuff && (key == 'offset' || key == 'parent')) ||
+ // PhantomJS 2 has enumerable non-index properties on typed arrays.
+ (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||
+ // Skip index properties.
+ isIndex(key, length)
+ ))) {
+ result.push(key);
+ }
+ }
+ return result;
+}
+
+module.exports = arrayLikeKeys;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_arrayMap.js":
+/*!************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_arrayMap.js ***!
+ \************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * A specialized version of `_.map` for arrays without support for iteratee
+ * shorthands.
+ *
+ * @private
+ * @param {Array} [array] The array to iterate over.
+ * @param {Function} iteratee The function invoked per iteration.
+ * @returns {Array} Returns the new mapped array.
+ */
+function arrayMap(array, iteratee) {
+ var index = -1,
+ length = array == null ? 0 : array.length,
+ result = Array(length);
+
+ while (++index < length) {
+ result[index] = iteratee(array[index], index, array);
+ }
+ return result;
+}
+
+module.exports = arrayMap;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_arrayPush.js":
+/*!*************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_arrayPush.js ***!
+ \*************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * Appends the elements of `values` to `array`.
+ *
+ * @private
+ * @param {Array} array The array to modify.
+ * @param {Array} values The values to append.
+ * @returns {Array} Returns `array`.
+ */
+function arrayPush(array, values) {
+ var index = -1,
+ length = values.length,
+ offset = array.length;
+
+ while (++index < length) {
+ array[offset + index] = values[index];
+ }
+ return array;
+}
+
+module.exports = arrayPush;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_arrayReduce.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_arrayReduce.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * A specialized version of `_.reduce` for arrays without support for
+ * iteratee shorthands.
+ *
+ * @private
+ * @param {Array} [array] The array to iterate over.
+ * @param {Function} iteratee The function invoked per iteration.
+ * @param {*} [accumulator] The initial value.
+ * @param {boolean} [initAccum] Specify using the first element of `array` as
+ * the initial value.
+ * @returns {*} Returns the accumulated value.
+ */
+function arrayReduce(array, iteratee, accumulator, initAccum) {
+ var index = -1,
+ length = array == null ? 0 : array.length;
+
+ if (initAccum && length) {
+ accumulator = array[++index];
+ }
+ while (++index < length) {
+ accumulator = iteratee(accumulator, array[index], index, array);
+ }
+ return accumulator;
+}
+
+module.exports = arrayReduce;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_arraySome.js":
+/*!*************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_arraySome.js ***!
+ \*************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * A specialized version of `_.some` for arrays without support for iteratee
+ * shorthands.
+ *
+ * @private
+ * @param {Array} [array] The array to iterate over.
+ * @param {Function} predicate The function invoked per iteration.
+ * @returns {boolean} Returns `true` if any element passes the predicate check,
+ * else `false`.
+ */
+function arraySome(array, predicate) {
+ var index = -1,
+ length = array == null ? 0 : array.length;
+
+ while (++index < length) {
+ if (predicate(array[index], index, array)) {
+ return true;
+ }
+ }
+ return false;
+}
+
+module.exports = arraySome;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_asciiToArray.js":
+/*!****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_asciiToArray.js ***!
+ \****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * Converts an ASCII `string` to an array.
+ *
+ * @private
+ * @param {string} string The string to convert.
+ * @returns {Array} Returns the converted array.
+ */
+function asciiToArray(string) {
+ return string.split('');
+}
+
+module.exports = asciiToArray;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_asciiWords.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_asciiWords.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/** Used to match words composed of alphanumeric characters. */
+var reAsciiWord = /[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;
+
+/**
+ * Splits an ASCII `string` into an array of its words.
+ *
+ * @private
+ * @param {string} The string to inspect.
+ * @returns {Array} Returns the words of `string`.
+ */
+function asciiWords(string) {
+ return string.match(reAsciiWord) || [];
+}
+
+module.exports = asciiWords;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_assignMergeValue.js":
+/*!********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_assignMergeValue.js ***!
+ \********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseAssignValue = __webpack_require__(/*! ./_baseAssignValue */ "../../node_modules/lodash/_baseAssignValue.js"),
+ eq = __webpack_require__(/*! ./eq */ "../../node_modules/lodash/eq.js");
+
+/**
+ * This function is like `assignValue` except that it doesn't assign
+ * `undefined` values.
+ *
+ * @private
+ * @param {Object} object The object to modify.
+ * @param {string} key The key of the property to assign.
+ * @param {*} value The value to assign.
+ */
+function assignMergeValue(object, key, value) {
+ if ((value !== undefined && !eq(object[key], value)) ||
+ (value === undefined && !(key in object))) {
+ baseAssignValue(object, key, value);
+ }
+}
+
+module.exports = assignMergeValue;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_assignValue.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_assignValue.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseAssignValue = __webpack_require__(/*! ./_baseAssignValue */ "../../node_modules/lodash/_baseAssignValue.js"),
+ eq = __webpack_require__(/*! ./eq */ "../../node_modules/lodash/eq.js");
+
+/** Used for built-in method references. */
+var objectProto = Object.prototype;
+
+/** Used to check objects for own properties. */
+var hasOwnProperty = objectProto.hasOwnProperty;
+
+/**
+ * Assigns `value` to `key` of `object` if the existing value is not equivalent
+ * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
+ * for equality comparisons.
+ *
+ * @private
+ * @param {Object} object The object to modify.
+ * @param {string} key The key of the property to assign.
+ * @param {*} value The value to assign.
+ */
+function assignValue(object, key, value) {
+ var objValue = object[key];
+ if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||
+ (value === undefined && !(key in object))) {
+ baseAssignValue(object, key, value);
+ }
+}
+
+module.exports = assignValue;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_assocIndexOf.js":
+/*!****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_assocIndexOf.js ***!
+ \****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var eq = __webpack_require__(/*! ./eq */ "../../node_modules/lodash/eq.js");
+
+/**
+ * Gets the index at which the `key` is found in `array` of key-value pairs.
+ *
+ * @private
+ * @param {Array} array The array to inspect.
+ * @param {*} key The key to search for.
+ * @returns {number} Returns the index of the matched value, else `-1`.
+ */
+function assocIndexOf(array, key) {
+ var length = array.length;
+ while (length--) {
+ if (eq(array[length][0], key)) {
+ return length;
+ }
+ }
+ return -1;
+}
+
+module.exports = assocIndexOf;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseAssign.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseAssign.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var copyObject = __webpack_require__(/*! ./_copyObject */ "../../node_modules/lodash/_copyObject.js"),
+ keys = __webpack_require__(/*! ./keys */ "../../node_modules/lodash/keys.js");
+
+/**
+ * The base implementation of `_.assign` without support for multiple sources
+ * or `customizer` functions.
+ *
+ * @private
+ * @param {Object} object The destination object.
+ * @param {Object} source The source object.
+ * @returns {Object} Returns `object`.
+ */
+function baseAssign(object, source) {
+ return object && copyObject(source, keys(source), object);
+}
+
+module.exports = baseAssign;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseAssignIn.js":
+/*!****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseAssignIn.js ***!
+ \****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var copyObject = __webpack_require__(/*! ./_copyObject */ "../../node_modules/lodash/_copyObject.js"),
+ keysIn = __webpack_require__(/*! ./keysIn */ "../../node_modules/lodash/keysIn.js");
+
+/**
+ * The base implementation of `_.assignIn` without support for multiple sources
+ * or `customizer` functions.
+ *
+ * @private
+ * @param {Object} object The destination object.
+ * @param {Object} source The source object.
+ * @returns {Object} Returns `object`.
+ */
+function baseAssignIn(object, source) {
+ return object && copyObject(source, keysIn(source), object);
+}
+
+module.exports = baseAssignIn;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseAssignValue.js":
+/*!*******************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseAssignValue.js ***!
+ \*******************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var defineProperty = __webpack_require__(/*! ./_defineProperty */ "../../node_modules/lodash/_defineProperty.js");
+
+/**
+ * The base implementation of `assignValue` and `assignMergeValue` without
+ * value checks.
+ *
+ * @private
+ * @param {Object} object The object to modify.
+ * @param {string} key The key of the property to assign.
+ * @param {*} value The value to assign.
+ */
+function baseAssignValue(object, key, value) {
+ if (key == '__proto__' && defineProperty) {
+ defineProperty(object, key, {
+ 'configurable': true,
+ 'enumerable': true,
+ 'value': value,
+ 'writable': true
+ });
+ } else {
+ object[key] = value;
+ }
+}
+
+module.exports = baseAssignValue;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseClamp.js":
+/*!*************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseClamp.js ***!
+ \*************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * The base implementation of `_.clamp` which doesn't coerce arguments.
+ *
+ * @private
+ * @param {number} number The number to clamp.
+ * @param {number} [lower] The lower bound.
+ * @param {number} upper The upper bound.
+ * @returns {number} Returns the clamped number.
+ */
+function baseClamp(number, lower, upper) {
+ if (number === number) {
+ if (upper !== undefined) {
+ number = number <= upper ? number : upper;
+ }
+ if (lower !== undefined) {
+ number = number >= lower ? number : lower;
+ }
+ }
+ return number;
+}
+
+module.exports = baseClamp;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseClone.js":
+/*!*************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseClone.js ***!
+ \*************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var Stack = __webpack_require__(/*! ./_Stack */ "../../node_modules/lodash/_Stack.js"),
+ arrayEach = __webpack_require__(/*! ./_arrayEach */ "../../node_modules/lodash/_arrayEach.js"),
+ assignValue = __webpack_require__(/*! ./_assignValue */ "../../node_modules/lodash/_assignValue.js"),
+ baseAssign = __webpack_require__(/*! ./_baseAssign */ "../../node_modules/lodash/_baseAssign.js"),
+ baseAssignIn = __webpack_require__(/*! ./_baseAssignIn */ "../../node_modules/lodash/_baseAssignIn.js"),
+ cloneBuffer = __webpack_require__(/*! ./_cloneBuffer */ "../../node_modules/lodash/_cloneBuffer.js"),
+ copyArray = __webpack_require__(/*! ./_copyArray */ "../../node_modules/lodash/_copyArray.js"),
+ copySymbols = __webpack_require__(/*! ./_copySymbols */ "../../node_modules/lodash/_copySymbols.js"),
+ copySymbolsIn = __webpack_require__(/*! ./_copySymbolsIn */ "../../node_modules/lodash/_copySymbolsIn.js"),
+ getAllKeys = __webpack_require__(/*! ./_getAllKeys */ "../../node_modules/lodash/_getAllKeys.js"),
+ getAllKeysIn = __webpack_require__(/*! ./_getAllKeysIn */ "../../node_modules/lodash/_getAllKeysIn.js"),
+ getTag = __webpack_require__(/*! ./_getTag */ "../../node_modules/lodash/_getTag.js"),
+ initCloneArray = __webpack_require__(/*! ./_initCloneArray */ "../../node_modules/lodash/_initCloneArray.js"),
+ initCloneByTag = __webpack_require__(/*! ./_initCloneByTag */ "../../node_modules/lodash/_initCloneByTag.js"),
+ initCloneObject = __webpack_require__(/*! ./_initCloneObject */ "../../node_modules/lodash/_initCloneObject.js"),
+ isArray = __webpack_require__(/*! ./isArray */ "../../node_modules/lodash/isArray.js"),
+ isBuffer = __webpack_require__(/*! ./isBuffer */ "../../node_modules/lodash/isBuffer.js"),
+ isMap = __webpack_require__(/*! ./isMap */ "../../node_modules/lodash/isMap.js"),
+ isObject = __webpack_require__(/*! ./isObject */ "../../node_modules/lodash/isObject.js"),
+ isSet = __webpack_require__(/*! ./isSet */ "../../node_modules/lodash/isSet.js"),
+ keys = __webpack_require__(/*! ./keys */ "../../node_modules/lodash/keys.js");
+
+/** Used to compose bitmasks for cloning. */
+var CLONE_DEEP_FLAG = 1,
+ CLONE_FLAT_FLAG = 2,
+ CLONE_SYMBOLS_FLAG = 4;
+
+/** `Object#toString` result references. */
+var argsTag = '[object Arguments]',
+ arrayTag = '[object Array]',
+ boolTag = '[object Boolean]',
+ dateTag = '[object Date]',
+ errorTag = '[object Error]',
+ funcTag = '[object Function]',
+ genTag = '[object GeneratorFunction]',
+ mapTag = '[object Map]',
+ numberTag = '[object Number]',
+ objectTag = '[object Object]',
+ regexpTag = '[object RegExp]',
+ setTag = '[object Set]',
+ stringTag = '[object String]',
+ symbolTag = '[object Symbol]',
+ weakMapTag = '[object WeakMap]';
+
+var arrayBufferTag = '[object ArrayBuffer]',
+ dataViewTag = '[object DataView]',
+ float32Tag = '[object Float32Array]',
+ float64Tag = '[object Float64Array]',
+ int8Tag = '[object Int8Array]',
+ int16Tag = '[object Int16Array]',
+ int32Tag = '[object Int32Array]',
+ uint8Tag = '[object Uint8Array]',
+ uint8ClampedTag = '[object Uint8ClampedArray]',
+ uint16Tag = '[object Uint16Array]',
+ uint32Tag = '[object Uint32Array]';
+
+/** Used to identify `toStringTag` values supported by `_.clone`. */
+var cloneableTags = {};
+cloneableTags[argsTag] = cloneableTags[arrayTag] =
+cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] =
+cloneableTags[boolTag] = cloneableTags[dateTag] =
+cloneableTags[float32Tag] = cloneableTags[float64Tag] =
+cloneableTags[int8Tag] = cloneableTags[int16Tag] =
+cloneableTags[int32Tag] = cloneableTags[mapTag] =
+cloneableTags[numberTag] = cloneableTags[objectTag] =
+cloneableTags[regexpTag] = cloneableTags[setTag] =
+cloneableTags[stringTag] = cloneableTags[symbolTag] =
+cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] =
+cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;
+cloneableTags[errorTag] = cloneableTags[funcTag] =
+cloneableTags[weakMapTag] = false;
+
+/**
+ * The base implementation of `_.clone` and `_.cloneDeep` which tracks
+ * traversed objects.
+ *
+ * @private
+ * @param {*} value The value to clone.
+ * @param {boolean} bitmask The bitmask flags.
+ * 1 - Deep clone
+ * 2 - Flatten inherited properties
+ * 4 - Clone symbols
+ * @param {Function} [customizer] The function to customize cloning.
+ * @param {string} [key] The key of `value`.
+ * @param {Object} [object] The parent object of `value`.
+ * @param {Object} [stack] Tracks traversed objects and their clone counterparts.
+ * @returns {*} Returns the cloned value.
+ */
+function baseClone(value, bitmask, customizer, key, object, stack) {
+ var result,
+ isDeep = bitmask & CLONE_DEEP_FLAG,
+ isFlat = bitmask & CLONE_FLAT_FLAG,
+ isFull = bitmask & CLONE_SYMBOLS_FLAG;
+
+ if (customizer) {
+ result = object ? customizer(value, key, object, stack) : customizer(value);
+ }
+ if (result !== undefined) {
+ return result;
+ }
+ if (!isObject(value)) {
+ return value;
+ }
+ var isArr = isArray(value);
+ if (isArr) {
+ result = initCloneArray(value);
+ if (!isDeep) {
+ return copyArray(value, result);
+ }
+ } else {
+ var tag = getTag(value),
+ isFunc = tag == funcTag || tag == genTag;
+
+ if (isBuffer(value)) {
+ return cloneBuffer(value, isDeep);
+ }
+ if (tag == objectTag || tag == argsTag || (isFunc && !object)) {
+ result = (isFlat || isFunc) ? {} : initCloneObject(value);
+ if (!isDeep) {
+ return isFlat
+ ? copySymbolsIn(value, baseAssignIn(result, value))
+ : copySymbols(value, baseAssign(result, value));
+ }
+ } else {
+ if (!cloneableTags[tag]) {
+ return object ? value : {};
+ }
+ result = initCloneByTag(value, tag, isDeep);
+ }
+ }
+ // Check for circular references and return its corresponding clone.
+ stack || (stack = new Stack);
+ var stacked = stack.get(value);
+ if (stacked) {
+ return stacked;
+ }
+ stack.set(value, result);
+
+ if (isSet(value)) {
+ value.forEach(function(subValue) {
+ result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack));
+ });
+
+ return result;
+ }
+
+ if (isMap(value)) {
+ value.forEach(function(subValue, key) {
+ result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack));
+ });
+
+ return result;
+ }
+
+ var keysFunc = isFull
+ ? (isFlat ? getAllKeysIn : getAllKeys)
+ : (isFlat ? keysIn : keys);
+
+ var props = isArr ? undefined : keysFunc(value);
+ arrayEach(props || value, function(subValue, key) {
+ if (props) {
+ key = subValue;
+ subValue = value[key];
+ }
+ // Recursively populate clone (susceptible to call stack limits).
+ assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack));
+ });
+ return result;
+}
+
+module.exports = baseClone;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseCreate.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseCreate.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var isObject = __webpack_require__(/*! ./isObject */ "../../node_modules/lodash/isObject.js");
+
+/** Built-in value references. */
+var objectCreate = Object.create;
+
+/**
+ * The base implementation of `_.create` without support for assigning
+ * properties to the created object.
+ *
+ * @private
+ * @param {Object} proto The object to inherit from.
+ * @returns {Object} Returns the new object.
+ */
+var baseCreate = (function() {
+ function object() {}
+ return function(proto) {
+ if (!isObject(proto)) {
+ return {};
+ }
+ if (objectCreate) {
+ return objectCreate(proto);
+ }
+ object.prototype = proto;
+ var result = new object;
+ object.prototype = undefined;
+ return result;
+ };
+}());
+
+module.exports = baseCreate;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseEach.js":
+/*!************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseEach.js ***!
+ \************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseForOwn = __webpack_require__(/*! ./_baseForOwn */ "../../node_modules/lodash/_baseForOwn.js"),
+ createBaseEach = __webpack_require__(/*! ./_createBaseEach */ "../../node_modules/lodash/_createBaseEach.js");
+
+/**
+ * The base implementation of `_.forEach` without support for iteratee shorthands.
+ *
+ * @private
+ * @param {Array|Object} collection The collection to iterate over.
+ * @param {Function} iteratee The function invoked per iteration.
+ * @returns {Array|Object} Returns `collection`.
+ */
+var baseEach = createBaseEach(baseForOwn);
+
+module.exports = baseEach;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseExtremum.js":
+/*!****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseExtremum.js ***!
+ \****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var isSymbol = __webpack_require__(/*! ./isSymbol */ "../../node_modules/lodash/isSymbol.js");
+
+/**
+ * The base implementation of methods like `_.max` and `_.min` which accepts a
+ * `comparator` to determine the extremum value.
+ *
+ * @private
+ * @param {Array} array The array to iterate over.
+ * @param {Function} iteratee The iteratee invoked per iteration.
+ * @param {Function} comparator The comparator used to compare values.
+ * @returns {*} Returns the extremum value.
+ */
+function baseExtremum(array, iteratee, comparator) {
+ var index = -1,
+ length = array.length;
+
+ while (++index < length) {
+ var value = array[index],
+ current = iteratee(value);
+
+ if (current != null && (computed === undefined
+ ? (current === current && !isSymbol(current))
+ : comparator(current, computed)
+ )) {
+ var computed = current,
+ result = value;
+ }
+ }
+ return result;
+}
+
+module.exports = baseExtremum;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseFilter.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseFilter.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseEach = __webpack_require__(/*! ./_baseEach */ "../../node_modules/lodash/_baseEach.js");
+
+/**
+ * The base implementation of `_.filter` without support for iteratee shorthands.
+ *
+ * @private
+ * @param {Array|Object} collection The collection to iterate over.
+ * @param {Function} predicate The function invoked per iteration.
+ * @returns {Array} Returns the new filtered array.
+ */
+function baseFilter(collection, predicate) {
+ var result = [];
+ baseEach(collection, function(value, index, collection) {
+ if (predicate(value, index, collection)) {
+ result.push(value);
+ }
+ });
+ return result;
+}
+
+module.exports = baseFilter;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseFindIndex.js":
+/*!*****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseFindIndex.js ***!
+ \*****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * The base implementation of `_.findIndex` and `_.findLastIndex` without
+ * support for iteratee shorthands.
+ *
+ * @private
+ * @param {Array} array The array to inspect.
+ * @param {Function} predicate The function invoked per iteration.
+ * @param {number} fromIndex The index to search from.
+ * @param {boolean} [fromRight] Specify iterating from right to left.
+ * @returns {number} Returns the index of the matched value, else `-1`.
+ */
+function baseFindIndex(array, predicate, fromIndex, fromRight) {
+ var length = array.length,
+ index = fromIndex + (fromRight ? 1 : -1);
+
+ while ((fromRight ? index-- : ++index < length)) {
+ if (predicate(array[index], index, array)) {
+ return index;
+ }
+ }
+ return -1;
+}
+
+module.exports = baseFindIndex;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseFlatten.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseFlatten.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var arrayPush = __webpack_require__(/*! ./_arrayPush */ "../../node_modules/lodash/_arrayPush.js"),
+ isFlattenable = __webpack_require__(/*! ./_isFlattenable */ "../../node_modules/lodash/_isFlattenable.js");
+
+/**
+ * The base implementation of `_.flatten` with support for restricting flattening.
+ *
+ * @private
+ * @param {Array} array The array to flatten.
+ * @param {number} depth The maximum recursion depth.
+ * @param {boolean} [predicate=isFlattenable] The function invoked per iteration.
+ * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks.
+ * @param {Array} [result=[]] The initial result value.
+ * @returns {Array} Returns the new flattened array.
+ */
+function baseFlatten(array, depth, predicate, isStrict, result) {
+ var index = -1,
+ length = array.length;
+
+ predicate || (predicate = isFlattenable);
+ result || (result = []);
+
+ while (++index < length) {
+ var value = array[index];
+ if (depth > 0 && predicate(value)) {
+ if (depth > 1) {
+ // Recursively flatten arrays (susceptible to call stack limits).
+ baseFlatten(value, depth - 1, predicate, isStrict, result);
+ } else {
+ arrayPush(result, value);
+ }
+ } else if (!isStrict) {
+ result[result.length] = value;
+ }
+ }
+ return result;
+}
+
+module.exports = baseFlatten;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseFor.js":
+/*!***********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseFor.js ***!
+ \***********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var createBaseFor = __webpack_require__(/*! ./_createBaseFor */ "../../node_modules/lodash/_createBaseFor.js");
+
+/**
+ * The base implementation of `baseForOwn` which iterates over `object`
+ * properties returned by `keysFunc` and invokes `iteratee` for each property.
+ * Iteratee functions may exit iteration early by explicitly returning `false`.
+ *
+ * @private
+ * @param {Object} object The object to iterate over.
+ * @param {Function} iteratee The function invoked per iteration.
+ * @param {Function} keysFunc The function to get the keys of `object`.
+ * @returns {Object} Returns `object`.
+ */
+var baseFor = createBaseFor();
+
+module.exports = baseFor;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseForOwn.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseForOwn.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseFor = __webpack_require__(/*! ./_baseFor */ "../../node_modules/lodash/_baseFor.js"),
+ keys = __webpack_require__(/*! ./keys */ "../../node_modules/lodash/keys.js");
+
+/**
+ * The base implementation of `_.forOwn` without support for iteratee shorthands.
+ *
+ * @private
+ * @param {Object} object The object to iterate over.
+ * @param {Function} iteratee The function invoked per iteration.
+ * @returns {Object} Returns `object`.
+ */
+function baseForOwn(object, iteratee) {
+ return object && baseFor(object, iteratee, keys);
+}
+
+module.exports = baseForOwn;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseGet.js":
+/*!***********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseGet.js ***!
+ \***********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var castPath = __webpack_require__(/*! ./_castPath */ "../../node_modules/lodash/_castPath.js"),
+ toKey = __webpack_require__(/*! ./_toKey */ "../../node_modules/lodash/_toKey.js");
+
+/**
+ * The base implementation of `_.get` without support for default values.
+ *
+ * @private
+ * @param {Object} object The object to query.
+ * @param {Array|string} path The path of the property to get.
+ * @returns {*} Returns the resolved value.
+ */
+function baseGet(object, path) {
+ path = castPath(path, object);
+
+ var index = 0,
+ length = path.length;
+
+ while (object != null && index < length) {
+ object = object[toKey(path[index++])];
+ }
+ return (index && index == length) ? object : undefined;
+}
+
+module.exports = baseGet;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseGetAllKeys.js":
+/*!******************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseGetAllKeys.js ***!
+ \******************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var arrayPush = __webpack_require__(/*! ./_arrayPush */ "../../node_modules/lodash/_arrayPush.js"),
+ isArray = __webpack_require__(/*! ./isArray */ "../../node_modules/lodash/isArray.js");
+
+/**
+ * The base implementation of `getAllKeys` and `getAllKeysIn` which uses
+ * `keysFunc` and `symbolsFunc` to get the enumerable property names and
+ * symbols of `object`.
+ *
+ * @private
+ * @param {Object} object The object to query.
+ * @param {Function} keysFunc The function to get the keys of `object`.
+ * @param {Function} symbolsFunc The function to get the symbols of `object`.
+ * @returns {Array} Returns the array of property names and symbols.
+ */
+function baseGetAllKeys(object, keysFunc, symbolsFunc) {
+ var result = keysFunc(object);
+ return isArray(object) ? result : arrayPush(result, symbolsFunc(object));
+}
+
+module.exports = baseGetAllKeys;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseGetTag.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseGetTag.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var Symbol = __webpack_require__(/*! ./_Symbol */ "../../node_modules/lodash/_Symbol.js"),
+ getRawTag = __webpack_require__(/*! ./_getRawTag */ "../../node_modules/lodash/_getRawTag.js"),
+ objectToString = __webpack_require__(/*! ./_objectToString */ "../../node_modules/lodash/_objectToString.js");
+
+/** `Object#toString` result references. */
+var nullTag = '[object Null]',
+ undefinedTag = '[object Undefined]';
+
+/** Built-in value references. */
+var symToStringTag = Symbol ? Symbol.toStringTag : undefined;
+
+/**
+ * The base implementation of `getTag` without fallbacks for buggy environments.
+ *
+ * @private
+ * @param {*} value The value to query.
+ * @returns {string} Returns the `toStringTag`.
+ */
+function baseGetTag(value) {
+ if (value == null) {
+ return value === undefined ? undefinedTag : nullTag;
+ }
+ return (symToStringTag && symToStringTag in Object(value))
+ ? getRawTag(value)
+ : objectToString(value);
+}
+
+module.exports = baseGetTag;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseGt.js":
+/*!**********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseGt.js ***!
+ \**********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * The base implementation of `_.gt` which doesn't coerce arguments.
+ *
+ * @private
+ * @param {*} value The value to compare.
+ * @param {*} other The other value to compare.
+ * @returns {boolean} Returns `true` if `value` is greater than `other`,
+ * else `false`.
+ */
+function baseGt(value, other) {
+ return value > other;
+}
+
+module.exports = baseGt;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseHas.js":
+/*!***********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseHas.js ***!
+ \***********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/** Used for built-in method references. */
+var objectProto = Object.prototype;
+
+/** Used to check objects for own properties. */
+var hasOwnProperty = objectProto.hasOwnProperty;
+
+/**
+ * The base implementation of `_.has` without support for deep paths.
+ *
+ * @private
+ * @param {Object} [object] The object to query.
+ * @param {Array|string} key The key to check.
+ * @returns {boolean} Returns `true` if `key` exists, else `false`.
+ */
+function baseHas(object, key) {
+ return object != null && hasOwnProperty.call(object, key);
+}
+
+module.exports = baseHas;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseHasIn.js":
+/*!*************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseHasIn.js ***!
+ \*************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * The base implementation of `_.hasIn` without support for deep paths.
+ *
+ * @private
+ * @param {Object} [object] The object to query.
+ * @param {Array|string} key The key to check.
+ * @returns {boolean} Returns `true` if `key` exists, else `false`.
+ */
+function baseHasIn(object, key) {
+ return object != null && key in Object(object);
+}
+
+module.exports = baseHasIn;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseIndexOf.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseIndexOf.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseFindIndex = __webpack_require__(/*! ./_baseFindIndex */ "../../node_modules/lodash/_baseFindIndex.js"),
+ baseIsNaN = __webpack_require__(/*! ./_baseIsNaN */ "../../node_modules/lodash/_baseIsNaN.js"),
+ strictIndexOf = __webpack_require__(/*! ./_strictIndexOf */ "../../node_modules/lodash/_strictIndexOf.js");
+
+/**
+ * The base implementation of `_.indexOf` without `fromIndex` bounds checks.
+ *
+ * @private
+ * @param {Array} array The array to inspect.
+ * @param {*} value The value to search for.
+ * @param {number} fromIndex The index to search from.
+ * @returns {number} Returns the index of the matched value, else `-1`.
+ */
+function baseIndexOf(array, value, fromIndex) {
+ return value === value
+ ? strictIndexOf(array, value, fromIndex)
+ : baseFindIndex(array, baseIsNaN, fromIndex);
+}
+
+module.exports = baseIndexOf;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseIsArguments.js":
+/*!*******************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseIsArguments.js ***!
+ \*******************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseGetTag = __webpack_require__(/*! ./_baseGetTag */ "../../node_modules/lodash/_baseGetTag.js"),
+ isObjectLike = __webpack_require__(/*! ./isObjectLike */ "../../node_modules/lodash/isObjectLike.js");
+
+/** `Object#toString` result references. */
+var argsTag = '[object Arguments]';
+
+/**
+ * The base implementation of `_.isArguments`.
+ *
+ * @private
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is an `arguments` object,
+ */
+function baseIsArguments(value) {
+ return isObjectLike(value) && baseGetTag(value) == argsTag;
+}
+
+module.exports = baseIsArguments;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseIsEqual.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseIsEqual.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseIsEqualDeep = __webpack_require__(/*! ./_baseIsEqualDeep */ "../../node_modules/lodash/_baseIsEqualDeep.js"),
+ isObjectLike = __webpack_require__(/*! ./isObjectLike */ "../../node_modules/lodash/isObjectLike.js");
+
+/**
+ * The base implementation of `_.isEqual` which supports partial comparisons
+ * and tracks traversed objects.
+ *
+ * @private
+ * @param {*} value The value to compare.
+ * @param {*} other The other value to compare.
+ * @param {boolean} bitmask The bitmask flags.
+ * 1 - Unordered comparison
+ * 2 - Partial comparison
+ * @param {Function} [customizer] The function to customize comparisons.
+ * @param {Object} [stack] Tracks traversed `value` and `other` objects.
+ * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
+ */
+function baseIsEqual(value, other, bitmask, customizer, stack) {
+ if (value === other) {
+ return true;
+ }
+ if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {
+ return value !== value && other !== other;
+ }
+ return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);
+}
+
+module.exports = baseIsEqual;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseIsEqualDeep.js":
+/*!*******************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseIsEqualDeep.js ***!
+ \*******************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var Stack = __webpack_require__(/*! ./_Stack */ "../../node_modules/lodash/_Stack.js"),
+ equalArrays = __webpack_require__(/*! ./_equalArrays */ "../../node_modules/lodash/_equalArrays.js"),
+ equalByTag = __webpack_require__(/*! ./_equalByTag */ "../../node_modules/lodash/_equalByTag.js"),
+ equalObjects = __webpack_require__(/*! ./_equalObjects */ "../../node_modules/lodash/_equalObjects.js"),
+ getTag = __webpack_require__(/*! ./_getTag */ "../../node_modules/lodash/_getTag.js"),
+ isArray = __webpack_require__(/*! ./isArray */ "../../node_modules/lodash/isArray.js"),
+ isBuffer = __webpack_require__(/*! ./isBuffer */ "../../node_modules/lodash/isBuffer.js"),
+ isTypedArray = __webpack_require__(/*! ./isTypedArray */ "../../node_modules/lodash/isTypedArray.js");
+
+/** Used to compose bitmasks for value comparisons. */
+var COMPARE_PARTIAL_FLAG = 1;
+
+/** `Object#toString` result references. */
+var argsTag = '[object Arguments]',
+ arrayTag = '[object Array]',
+ objectTag = '[object Object]';
+
+/** Used for built-in method references. */
+var objectProto = Object.prototype;
+
+/** Used to check objects for own properties. */
+var hasOwnProperty = objectProto.hasOwnProperty;
+
+/**
+ * A specialized version of `baseIsEqual` for arrays and objects which performs
+ * deep comparisons and tracks traversed objects enabling objects with circular
+ * references to be compared.
+ *
+ * @private
+ * @param {Object} object The object to compare.
+ * @param {Object} other The other object to compare.
+ * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
+ * @param {Function} customizer The function to customize comparisons.
+ * @param {Function} equalFunc The function to determine equivalents of values.
+ * @param {Object} [stack] Tracks traversed `object` and `other` objects.
+ * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
+ */
+function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {
+ var objIsArr = isArray(object),
+ othIsArr = isArray(other),
+ objTag = objIsArr ? arrayTag : getTag(object),
+ othTag = othIsArr ? arrayTag : getTag(other);
+
+ objTag = objTag == argsTag ? objectTag : objTag;
+ othTag = othTag == argsTag ? objectTag : othTag;
+
+ var objIsObj = objTag == objectTag,
+ othIsObj = othTag == objectTag,
+ isSameTag = objTag == othTag;
+
+ if (isSameTag && isBuffer(object)) {
+ if (!isBuffer(other)) {
+ return false;
+ }
+ objIsArr = true;
+ objIsObj = false;
+ }
+ if (isSameTag && !objIsObj) {
+ stack || (stack = new Stack);
+ return (objIsArr || isTypedArray(object))
+ ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)
+ : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);
+ }
+ if (!(bitmask & COMPARE_PARTIAL_FLAG)) {
+ var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),
+ othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');
+
+ if (objIsWrapped || othIsWrapped) {
+ var objUnwrapped = objIsWrapped ? object.value() : object,
+ othUnwrapped = othIsWrapped ? other.value() : other;
+
+ stack || (stack = new Stack);
+ return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);
+ }
+ }
+ if (!isSameTag) {
+ return false;
+ }
+ stack || (stack = new Stack);
+ return equalObjects(object, other, bitmask, customizer, equalFunc, stack);
+}
+
+module.exports = baseIsEqualDeep;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseIsMap.js":
+/*!*************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseIsMap.js ***!
+ \*************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var getTag = __webpack_require__(/*! ./_getTag */ "../../node_modules/lodash/_getTag.js"),
+ isObjectLike = __webpack_require__(/*! ./isObjectLike */ "../../node_modules/lodash/isObjectLike.js");
+
+/** `Object#toString` result references. */
+var mapTag = '[object Map]';
+
+/**
+ * The base implementation of `_.isMap` without Node.js optimizations.
+ *
+ * @private
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is a map, else `false`.
+ */
+function baseIsMap(value) {
+ return isObjectLike(value) && getTag(value) == mapTag;
+}
+
+module.exports = baseIsMap;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseIsMatch.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseIsMatch.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var Stack = __webpack_require__(/*! ./_Stack */ "../../node_modules/lodash/_Stack.js"),
+ baseIsEqual = __webpack_require__(/*! ./_baseIsEqual */ "../../node_modules/lodash/_baseIsEqual.js");
+
+/** Used to compose bitmasks for value comparisons. */
+var COMPARE_PARTIAL_FLAG = 1,
+ COMPARE_UNORDERED_FLAG = 2;
+
+/**
+ * The base implementation of `_.isMatch` without support for iteratee shorthands.
+ *
+ * @private
+ * @param {Object} object The object to inspect.
+ * @param {Object} source The object of property values to match.
+ * @param {Array} matchData The property names, values, and compare flags to match.
+ * @param {Function} [customizer] The function to customize comparisons.
+ * @returns {boolean} Returns `true` if `object` is a match, else `false`.
+ */
+function baseIsMatch(object, source, matchData, customizer) {
+ var index = matchData.length,
+ length = index,
+ noCustomizer = !customizer;
+
+ if (object == null) {
+ return !length;
+ }
+ object = Object(object);
+ while (index--) {
+ var data = matchData[index];
+ if ((noCustomizer && data[2])
+ ? data[1] !== object[data[0]]
+ : !(data[0] in object)
+ ) {
+ return false;
+ }
+ }
+ while (++index < length) {
+ data = matchData[index];
+ var key = data[0],
+ objValue = object[key],
+ srcValue = data[1];
+
+ if (noCustomizer && data[2]) {
+ if (objValue === undefined && !(key in object)) {
+ return false;
+ }
+ } else {
+ var stack = new Stack;
+ if (customizer) {
+ var result = customizer(objValue, srcValue, key, object, source, stack);
+ }
+ if (!(result === undefined
+ ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack)
+ : result
+ )) {
+ return false;
+ }
+ }
+ }
+ return true;
+}
+
+module.exports = baseIsMatch;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseIsNaN.js":
+/*!*************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseIsNaN.js ***!
+ \*************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * The base implementation of `_.isNaN` without support for number objects.
+ *
+ * @private
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.
+ */
+function baseIsNaN(value) {
+ return value !== value;
+}
+
+module.exports = baseIsNaN;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseIsNative.js":
+/*!****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseIsNative.js ***!
+ \****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var isFunction = __webpack_require__(/*! ./isFunction */ "../../node_modules/lodash/isFunction.js"),
+ isMasked = __webpack_require__(/*! ./_isMasked */ "../../node_modules/lodash/_isMasked.js"),
+ isObject = __webpack_require__(/*! ./isObject */ "../../node_modules/lodash/isObject.js"),
+ toSource = __webpack_require__(/*! ./_toSource */ "../../node_modules/lodash/_toSource.js");
+
+/**
+ * Used to match `RegExp`
+ * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).
+ */
+var reRegExpChar = /[\\^$.*+?()[\]{}|]/g;
+
+/** Used to detect host constructors (Safari). */
+var reIsHostCtor = /^\[object .+?Constructor\]$/;
+
+/** Used for built-in method references. */
+var funcProto = Function.prototype,
+ objectProto = Object.prototype;
+
+/** Used to resolve the decompiled source of functions. */
+var funcToString = funcProto.toString;
+
+/** Used to check objects for own properties. */
+var hasOwnProperty = objectProto.hasOwnProperty;
+
+/** Used to detect if a method is native. */
+var reIsNative = RegExp('^' +
+ funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\$&')
+ .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$'
+);
+
+/**
+ * The base implementation of `_.isNative` without bad shim checks.
+ *
+ * @private
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is a native function,
+ * else `false`.
+ */
+function baseIsNative(value) {
+ if (!isObject(value) || isMasked(value)) {
+ return false;
+ }
+ var pattern = isFunction(value) ? reIsNative : reIsHostCtor;
+ return pattern.test(toSource(value));
+}
+
+module.exports = baseIsNative;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseIsSet.js":
+/*!*************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseIsSet.js ***!
+ \*************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var getTag = __webpack_require__(/*! ./_getTag */ "../../node_modules/lodash/_getTag.js"),
+ isObjectLike = __webpack_require__(/*! ./isObjectLike */ "../../node_modules/lodash/isObjectLike.js");
+
+/** `Object#toString` result references. */
+var setTag = '[object Set]';
+
+/**
+ * The base implementation of `_.isSet` without Node.js optimizations.
+ *
+ * @private
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is a set, else `false`.
+ */
+function baseIsSet(value) {
+ return isObjectLike(value) && getTag(value) == setTag;
+}
+
+module.exports = baseIsSet;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseIsTypedArray.js":
+/*!********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseIsTypedArray.js ***!
+ \********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseGetTag = __webpack_require__(/*! ./_baseGetTag */ "../../node_modules/lodash/_baseGetTag.js"),
+ isLength = __webpack_require__(/*! ./isLength */ "../../node_modules/lodash/isLength.js"),
+ isObjectLike = __webpack_require__(/*! ./isObjectLike */ "../../node_modules/lodash/isObjectLike.js");
+
+/** `Object#toString` result references. */
+var argsTag = '[object Arguments]',
+ arrayTag = '[object Array]',
+ boolTag = '[object Boolean]',
+ dateTag = '[object Date]',
+ errorTag = '[object Error]',
+ funcTag = '[object Function]',
+ mapTag = '[object Map]',
+ numberTag = '[object Number]',
+ objectTag = '[object Object]',
+ regexpTag = '[object RegExp]',
+ setTag = '[object Set]',
+ stringTag = '[object String]',
+ weakMapTag = '[object WeakMap]';
+
+var arrayBufferTag = '[object ArrayBuffer]',
+ dataViewTag = '[object DataView]',
+ float32Tag = '[object Float32Array]',
+ float64Tag = '[object Float64Array]',
+ int8Tag = '[object Int8Array]',
+ int16Tag = '[object Int16Array]',
+ int32Tag = '[object Int32Array]',
+ uint8Tag = '[object Uint8Array]',
+ uint8ClampedTag = '[object Uint8ClampedArray]',
+ uint16Tag = '[object Uint16Array]',
+ uint32Tag = '[object Uint32Array]';
+
+/** Used to identify `toStringTag` values of typed arrays. */
+var typedArrayTags = {};
+typedArrayTags[float32Tag] = typedArrayTags[float64Tag] =
+typedArrayTags[int8Tag] = typedArrayTags[int16Tag] =
+typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =
+typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =
+typedArrayTags[uint32Tag] = true;
+typedArrayTags[argsTag] = typedArrayTags[arrayTag] =
+typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =
+typedArrayTags[dataViewTag] = typedArrayTags[dateTag] =
+typedArrayTags[errorTag] = typedArrayTags[funcTag] =
+typedArrayTags[mapTag] = typedArrayTags[numberTag] =
+typedArrayTags[objectTag] = typedArrayTags[regexpTag] =
+typedArrayTags[setTag] = typedArrayTags[stringTag] =
+typedArrayTags[weakMapTag] = false;
+
+/**
+ * The base implementation of `_.isTypedArray` without Node.js optimizations.
+ *
+ * @private
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.
+ */
+function baseIsTypedArray(value) {
+ return isObjectLike(value) &&
+ isLength(value.length) && !!typedArrayTags[baseGetTag(value)];
+}
+
+module.exports = baseIsTypedArray;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseIteratee.js":
+/*!****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseIteratee.js ***!
+ \****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseMatches = __webpack_require__(/*! ./_baseMatches */ "../../node_modules/lodash/_baseMatches.js"),
+ baseMatchesProperty = __webpack_require__(/*! ./_baseMatchesProperty */ "../../node_modules/lodash/_baseMatchesProperty.js"),
+ identity = __webpack_require__(/*! ./identity */ "../../node_modules/lodash/identity.js"),
+ isArray = __webpack_require__(/*! ./isArray */ "../../node_modules/lodash/isArray.js"),
+ property = __webpack_require__(/*! ./property */ "../../node_modules/lodash/property.js");
+
+/**
+ * The base implementation of `_.iteratee`.
+ *
+ * @private
+ * @param {*} [value=_.identity] The value to convert to an iteratee.
+ * @returns {Function} Returns the iteratee.
+ */
+function baseIteratee(value) {
+ // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9.
+ // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details.
+ if (typeof value == 'function') {
+ return value;
+ }
+ if (value == null) {
+ return identity;
+ }
+ if (typeof value == 'object') {
+ return isArray(value)
+ ? baseMatchesProperty(value[0], value[1])
+ : baseMatches(value);
+ }
+ return property(value);
+}
+
+module.exports = baseIteratee;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseKeys.js":
+/*!************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseKeys.js ***!
+ \************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var isPrototype = __webpack_require__(/*! ./_isPrototype */ "../../node_modules/lodash/_isPrototype.js"),
+ nativeKeys = __webpack_require__(/*! ./_nativeKeys */ "../../node_modules/lodash/_nativeKeys.js");
+
+/** Used for built-in method references. */
+var objectProto = Object.prototype;
+
+/** Used to check objects for own properties. */
+var hasOwnProperty = objectProto.hasOwnProperty;
+
+/**
+ * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.
+ *
+ * @private
+ * @param {Object} object The object to query.
+ * @returns {Array} Returns the array of property names.
+ */
+function baseKeys(object) {
+ if (!isPrototype(object)) {
+ return nativeKeys(object);
+ }
+ var result = [];
+ for (var key in Object(object)) {
+ if (hasOwnProperty.call(object, key) && key != 'constructor') {
+ result.push(key);
+ }
+ }
+ return result;
+}
+
+module.exports = baseKeys;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseKeysIn.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseKeysIn.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var isObject = __webpack_require__(/*! ./isObject */ "../../node_modules/lodash/isObject.js"),
+ isPrototype = __webpack_require__(/*! ./_isPrototype */ "../../node_modules/lodash/_isPrototype.js"),
+ nativeKeysIn = __webpack_require__(/*! ./_nativeKeysIn */ "../../node_modules/lodash/_nativeKeysIn.js");
+
+/** Used for built-in method references. */
+var objectProto = Object.prototype;
+
+/** Used to check objects for own properties. */
+var hasOwnProperty = objectProto.hasOwnProperty;
+
+/**
+ * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.
+ *
+ * @private
+ * @param {Object} object The object to query.
+ * @returns {Array} Returns the array of property names.
+ */
+function baseKeysIn(object) {
+ if (!isObject(object)) {
+ return nativeKeysIn(object);
+ }
+ var isProto = isPrototype(object),
+ result = [];
+
+ for (var key in object) {
+ if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {
+ result.push(key);
+ }
+ }
+ return result;
+}
+
+module.exports = baseKeysIn;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseMatches.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseMatches.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseIsMatch = __webpack_require__(/*! ./_baseIsMatch */ "../../node_modules/lodash/_baseIsMatch.js"),
+ getMatchData = __webpack_require__(/*! ./_getMatchData */ "../../node_modules/lodash/_getMatchData.js"),
+ matchesStrictComparable = __webpack_require__(/*! ./_matchesStrictComparable */ "../../node_modules/lodash/_matchesStrictComparable.js");
+
+/**
+ * The base implementation of `_.matches` which doesn't clone `source`.
+ *
+ * @private
+ * @param {Object} source The object of property values to match.
+ * @returns {Function} Returns the new spec function.
+ */
+function baseMatches(source) {
+ var matchData = getMatchData(source);
+ if (matchData.length == 1 && matchData[0][2]) {
+ return matchesStrictComparable(matchData[0][0], matchData[0][1]);
+ }
+ return function(object) {
+ return object === source || baseIsMatch(object, source, matchData);
+ };
+}
+
+module.exports = baseMatches;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseMatchesProperty.js":
+/*!***********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseMatchesProperty.js ***!
+ \***********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseIsEqual = __webpack_require__(/*! ./_baseIsEqual */ "../../node_modules/lodash/_baseIsEqual.js"),
+ get = __webpack_require__(/*! ./get */ "../../node_modules/lodash/get.js"),
+ hasIn = __webpack_require__(/*! ./hasIn */ "../../node_modules/lodash/hasIn.js"),
+ isKey = __webpack_require__(/*! ./_isKey */ "../../node_modules/lodash/_isKey.js"),
+ isStrictComparable = __webpack_require__(/*! ./_isStrictComparable */ "../../node_modules/lodash/_isStrictComparable.js"),
+ matchesStrictComparable = __webpack_require__(/*! ./_matchesStrictComparable */ "../../node_modules/lodash/_matchesStrictComparable.js"),
+ toKey = __webpack_require__(/*! ./_toKey */ "../../node_modules/lodash/_toKey.js");
+
+/** Used to compose bitmasks for value comparisons. */
+var COMPARE_PARTIAL_FLAG = 1,
+ COMPARE_UNORDERED_FLAG = 2;
+
+/**
+ * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`.
+ *
+ * @private
+ * @param {string} path The path of the property to get.
+ * @param {*} srcValue The value to match.
+ * @returns {Function} Returns the new spec function.
+ */
+function baseMatchesProperty(path, srcValue) {
+ if (isKey(path) && isStrictComparable(srcValue)) {
+ return matchesStrictComparable(toKey(path), srcValue);
+ }
+ return function(object) {
+ var objValue = get(object, path);
+ return (objValue === undefined && objValue === srcValue)
+ ? hasIn(object, path)
+ : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG);
+ };
+}
+
+module.exports = baseMatchesProperty;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseMerge.js":
+/*!*************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseMerge.js ***!
+ \*************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var Stack = __webpack_require__(/*! ./_Stack */ "../../node_modules/lodash/_Stack.js"),
+ assignMergeValue = __webpack_require__(/*! ./_assignMergeValue */ "../../node_modules/lodash/_assignMergeValue.js"),
+ baseFor = __webpack_require__(/*! ./_baseFor */ "../../node_modules/lodash/_baseFor.js"),
+ baseMergeDeep = __webpack_require__(/*! ./_baseMergeDeep */ "../../node_modules/lodash/_baseMergeDeep.js"),
+ isObject = __webpack_require__(/*! ./isObject */ "../../node_modules/lodash/isObject.js"),
+ keysIn = __webpack_require__(/*! ./keysIn */ "../../node_modules/lodash/keysIn.js"),
+ safeGet = __webpack_require__(/*! ./_safeGet */ "../../node_modules/lodash/_safeGet.js");
+
+/**
+ * The base implementation of `_.merge` without support for multiple sources.
+ *
+ * @private
+ * @param {Object} object The destination object.
+ * @param {Object} source The source object.
+ * @param {number} srcIndex The index of `source`.
+ * @param {Function} [customizer] The function to customize merged values.
+ * @param {Object} [stack] Tracks traversed source values and their merged
+ * counterparts.
+ */
+function baseMerge(object, source, srcIndex, customizer, stack) {
+ if (object === source) {
+ return;
+ }
+ baseFor(source, function(srcValue, key) {
+ if (isObject(srcValue)) {
+ stack || (stack = new Stack);
+ baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);
+ }
+ else {
+ var newValue = customizer
+ ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack)
+ : undefined;
+
+ if (newValue === undefined) {
+ newValue = srcValue;
+ }
+ assignMergeValue(object, key, newValue);
+ }
+ }, keysIn);
+}
+
+module.exports = baseMerge;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseMergeDeep.js":
+/*!*****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseMergeDeep.js ***!
+ \*****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var assignMergeValue = __webpack_require__(/*! ./_assignMergeValue */ "../../node_modules/lodash/_assignMergeValue.js"),
+ cloneBuffer = __webpack_require__(/*! ./_cloneBuffer */ "../../node_modules/lodash/_cloneBuffer.js"),
+ cloneTypedArray = __webpack_require__(/*! ./_cloneTypedArray */ "../../node_modules/lodash/_cloneTypedArray.js"),
+ copyArray = __webpack_require__(/*! ./_copyArray */ "../../node_modules/lodash/_copyArray.js"),
+ initCloneObject = __webpack_require__(/*! ./_initCloneObject */ "../../node_modules/lodash/_initCloneObject.js"),
+ isArguments = __webpack_require__(/*! ./isArguments */ "../../node_modules/lodash/isArguments.js"),
+ isArray = __webpack_require__(/*! ./isArray */ "../../node_modules/lodash/isArray.js"),
+ isArrayLikeObject = __webpack_require__(/*! ./isArrayLikeObject */ "../../node_modules/lodash/isArrayLikeObject.js"),
+ isBuffer = __webpack_require__(/*! ./isBuffer */ "../../node_modules/lodash/isBuffer.js"),
+ isFunction = __webpack_require__(/*! ./isFunction */ "../../node_modules/lodash/isFunction.js"),
+ isObject = __webpack_require__(/*! ./isObject */ "../../node_modules/lodash/isObject.js"),
+ isPlainObject = __webpack_require__(/*! ./isPlainObject */ "../../node_modules/lodash/isPlainObject.js"),
+ isTypedArray = __webpack_require__(/*! ./isTypedArray */ "../../node_modules/lodash/isTypedArray.js"),
+ safeGet = __webpack_require__(/*! ./_safeGet */ "../../node_modules/lodash/_safeGet.js"),
+ toPlainObject = __webpack_require__(/*! ./toPlainObject */ "../../node_modules/lodash/toPlainObject.js");
+
+/**
+ * A specialized version of `baseMerge` for arrays and objects which performs
+ * deep merges and tracks traversed objects enabling objects with circular
+ * references to be merged.
+ *
+ * @private
+ * @param {Object} object The destination object.
+ * @param {Object} source The source object.
+ * @param {string} key The key of the value to merge.
+ * @param {number} srcIndex The index of `source`.
+ * @param {Function} mergeFunc The function to merge values.
+ * @param {Function} [customizer] The function to customize assigned values.
+ * @param {Object} [stack] Tracks traversed source values and their merged
+ * counterparts.
+ */
+function baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {
+ var objValue = safeGet(object, key),
+ srcValue = safeGet(source, key),
+ stacked = stack.get(srcValue);
+
+ if (stacked) {
+ assignMergeValue(object, key, stacked);
+ return;
+ }
+ var newValue = customizer
+ ? customizer(objValue, srcValue, (key + ''), object, source, stack)
+ : undefined;
+
+ var isCommon = newValue === undefined;
+
+ if (isCommon) {
+ var isArr = isArray(srcValue),
+ isBuff = !isArr && isBuffer(srcValue),
+ isTyped = !isArr && !isBuff && isTypedArray(srcValue);
+
+ newValue = srcValue;
+ if (isArr || isBuff || isTyped) {
+ if (isArray(objValue)) {
+ newValue = objValue;
+ }
+ else if (isArrayLikeObject(objValue)) {
+ newValue = copyArray(objValue);
+ }
+ else if (isBuff) {
+ isCommon = false;
+ newValue = cloneBuffer(srcValue, true);
+ }
+ else if (isTyped) {
+ isCommon = false;
+ newValue = cloneTypedArray(srcValue, true);
+ }
+ else {
+ newValue = [];
+ }
+ }
+ else if (isPlainObject(srcValue) || isArguments(srcValue)) {
+ newValue = objValue;
+ if (isArguments(objValue)) {
+ newValue = toPlainObject(objValue);
+ }
+ else if (!isObject(objValue) || isFunction(objValue)) {
+ newValue = initCloneObject(srcValue);
+ }
+ }
+ else {
+ isCommon = false;
+ }
+ }
+ if (isCommon) {
+ // Recursively merge objects and arrays (susceptible to call stack limits).
+ stack.set(srcValue, newValue);
+ mergeFunc(newValue, srcValue, srcIndex, customizer, stack);
+ stack['delete'](srcValue);
+ }
+ assignMergeValue(object, key, newValue);
+}
+
+module.exports = baseMergeDeep;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseProperty.js":
+/*!****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseProperty.js ***!
+ \****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * The base implementation of `_.property` without support for deep paths.
+ *
+ * @private
+ * @param {string} key The key of the property to get.
+ * @returns {Function} Returns the new accessor function.
+ */
+function baseProperty(key) {
+ return function(object) {
+ return object == null ? undefined : object[key];
+ };
+}
+
+module.exports = baseProperty;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_basePropertyDeep.js":
+/*!********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_basePropertyDeep.js ***!
+ \********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseGet = __webpack_require__(/*! ./_baseGet */ "../../node_modules/lodash/_baseGet.js");
+
+/**
+ * A specialized version of `baseProperty` which supports deep paths.
+ *
+ * @private
+ * @param {Array|string} path The path of the property to get.
+ * @returns {Function} Returns the new accessor function.
+ */
+function basePropertyDeep(path) {
+ return function(object) {
+ return baseGet(object, path);
+ };
+}
+
+module.exports = basePropertyDeep;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_basePropertyOf.js":
+/*!******************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_basePropertyOf.js ***!
+ \******************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * The base implementation of `_.propertyOf` without support for deep paths.
+ *
+ * @private
+ * @param {Object} object The object to query.
+ * @returns {Function} Returns the new accessor function.
+ */
+function basePropertyOf(object) {
+ return function(key) {
+ return object == null ? undefined : object[key];
+ };
+}
+
+module.exports = basePropertyOf;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_basePullAt.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_basePullAt.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseUnset = __webpack_require__(/*! ./_baseUnset */ "../../node_modules/lodash/_baseUnset.js"),
+ isIndex = __webpack_require__(/*! ./_isIndex */ "../../node_modules/lodash/_isIndex.js");
+
+/** Used for built-in method references. */
+var arrayProto = Array.prototype;
+
+/** Built-in value references. */
+var splice = arrayProto.splice;
+
+/**
+ * The base implementation of `_.pullAt` without support for individual
+ * indexes or capturing the removed elements.
+ *
+ * @private
+ * @param {Array} array The array to modify.
+ * @param {number[]} indexes The indexes of elements to remove.
+ * @returns {Array} Returns `array`.
+ */
+function basePullAt(array, indexes) {
+ var length = array ? indexes.length : 0,
+ lastIndex = length - 1;
+
+ while (length--) {
+ var index = indexes[length];
+ if (length == lastIndex || index !== previous) {
+ var previous = index;
+ if (isIndex(index)) {
+ splice.call(array, index, 1);
+ } else {
+ baseUnset(array, index);
+ }
+ }
+ }
+ return array;
+}
+
+module.exports = basePullAt;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseRange.js":
+/*!*************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseRange.js ***!
+ \*************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/* Built-in method references for those with the same name as other `lodash` methods. */
+var nativeCeil = Math.ceil,
+ nativeMax = Math.max;
+
+/**
+ * The base implementation of `_.range` and `_.rangeRight` which doesn't
+ * coerce arguments.
+ *
+ * @private
+ * @param {number} start The start of the range.
+ * @param {number} end The end of the range.
+ * @param {number} step The value to increment or decrement by.
+ * @param {boolean} [fromRight] Specify iterating from right to left.
+ * @returns {Array} Returns the range of numbers.
+ */
+function baseRange(start, end, step, fromRight) {
+ var index = -1,
+ length = nativeMax(nativeCeil((end - start) / (step || 1)), 0),
+ result = Array(length);
+
+ while (length--) {
+ result[fromRight ? length : ++index] = start;
+ start += step;
+ }
+ return result;
+}
+
+module.exports = baseRange;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseReduce.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseReduce.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * The base implementation of `_.reduce` and `_.reduceRight`, without support
+ * for iteratee shorthands, which iterates over `collection` using `eachFunc`.
+ *
+ * @private
+ * @param {Array|Object} collection The collection to iterate over.
+ * @param {Function} iteratee The function invoked per iteration.
+ * @param {*} accumulator The initial value.
+ * @param {boolean} initAccum Specify using the first or last element of
+ * `collection` as the initial value.
+ * @param {Function} eachFunc The function to iterate over `collection`.
+ * @returns {*} Returns the accumulated value.
+ */
+function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) {
+ eachFunc(collection, function(value, index, collection) {
+ accumulator = initAccum
+ ? (initAccum = false, value)
+ : iteratee(accumulator, value, index, collection);
+ });
+ return accumulator;
+}
+
+module.exports = baseReduce;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseRest.js":
+/*!************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseRest.js ***!
+ \************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var identity = __webpack_require__(/*! ./identity */ "../../node_modules/lodash/identity.js"),
+ overRest = __webpack_require__(/*! ./_overRest */ "../../node_modules/lodash/_overRest.js"),
+ setToString = __webpack_require__(/*! ./_setToString */ "../../node_modules/lodash/_setToString.js");
+
+/**
+ * The base implementation of `_.rest` which doesn't validate or coerce arguments.
+ *
+ * @private
+ * @param {Function} func The function to apply a rest parameter to.
+ * @param {number} [start=func.length-1] The start position of the rest parameter.
+ * @returns {Function} Returns the new function.
+ */
+function baseRest(func, start) {
+ return setToString(overRest(func, start, identity), func + '');
+}
+
+module.exports = baseRest;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseSet.js":
+/*!***********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseSet.js ***!
+ \***********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var assignValue = __webpack_require__(/*! ./_assignValue */ "../../node_modules/lodash/_assignValue.js"),
+ castPath = __webpack_require__(/*! ./_castPath */ "../../node_modules/lodash/_castPath.js"),
+ isIndex = __webpack_require__(/*! ./_isIndex */ "../../node_modules/lodash/_isIndex.js"),
+ isObject = __webpack_require__(/*! ./isObject */ "../../node_modules/lodash/isObject.js"),
+ toKey = __webpack_require__(/*! ./_toKey */ "../../node_modules/lodash/_toKey.js");
+
+/**
+ * The base implementation of `_.set`.
+ *
+ * @private
+ * @param {Object} object The object to modify.
+ * @param {Array|string} path The path of the property to set.
+ * @param {*} value The value to set.
+ * @param {Function} [customizer] The function to customize path creation.
+ * @returns {Object} Returns `object`.
+ */
+function baseSet(object, path, value, customizer) {
+ if (!isObject(object)) {
+ return object;
+ }
+ path = castPath(path, object);
+
+ var index = -1,
+ length = path.length,
+ lastIndex = length - 1,
+ nested = object;
+
+ while (nested != null && ++index < length) {
+ var key = toKey(path[index]),
+ newValue = value;
+
+ if (index != lastIndex) {
+ var objValue = nested[key];
+ newValue = customizer ? customizer(objValue, key, nested) : undefined;
+ if (newValue === undefined) {
+ newValue = isObject(objValue)
+ ? objValue
+ : (isIndex(path[index + 1]) ? [] : {});
+ }
+ }
+ assignValue(nested, key, newValue);
+ nested = nested[key];
+ }
+ return object;
+}
+
+module.exports = baseSet;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseSetToString.js":
+/*!*******************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseSetToString.js ***!
+ \*******************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var constant = __webpack_require__(/*! ./constant */ "../../node_modules/lodash/constant.js"),
+ defineProperty = __webpack_require__(/*! ./_defineProperty */ "../../node_modules/lodash/_defineProperty.js"),
+ identity = __webpack_require__(/*! ./identity */ "../../node_modules/lodash/identity.js");
+
+/**
+ * The base implementation of `setToString` without support for hot loop shorting.
+ *
+ * @private
+ * @param {Function} func The function to modify.
+ * @param {Function} string The `toString` result.
+ * @returns {Function} Returns `func`.
+ */
+var baseSetToString = !defineProperty ? identity : function(func, string) {
+ return defineProperty(func, 'toString', {
+ 'configurable': true,
+ 'enumerable': false,
+ 'value': constant(string),
+ 'writable': true
+ });
+};
+
+module.exports = baseSetToString;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseSlice.js":
+/*!*************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseSlice.js ***!
+ \*************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * The base implementation of `_.slice` without an iteratee call guard.
+ *
+ * @private
+ * @param {Array} array The array to slice.
+ * @param {number} [start=0] The start position.
+ * @param {number} [end=array.length] The end position.
+ * @returns {Array} Returns the slice of `array`.
+ */
+function baseSlice(array, start, end) {
+ var index = -1,
+ length = array.length;
+
+ if (start < 0) {
+ start = -start > length ? 0 : (length + start);
+ }
+ end = end > length ? length : end;
+ if (end < 0) {
+ end += length;
+ }
+ length = start > end ? 0 : ((end - start) >>> 0);
+ start >>>= 0;
+
+ var result = Array(length);
+ while (++index < length) {
+ result[index] = array[index + start];
+ }
+ return result;
+}
+
+module.exports = baseSlice;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseTimes.js":
+/*!*************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseTimes.js ***!
+ \*************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * The base implementation of `_.times` without support for iteratee shorthands
+ * or max array length checks.
+ *
+ * @private
+ * @param {number} n The number of times to invoke `iteratee`.
+ * @param {Function} iteratee The function invoked per iteration.
+ * @returns {Array} Returns the array of results.
+ */
+function baseTimes(n, iteratee) {
+ var index = -1,
+ result = Array(n);
+
+ while (++index < n) {
+ result[index] = iteratee(index);
+ }
+ return result;
+}
+
+module.exports = baseTimes;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseToPairs.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseToPairs.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var arrayMap = __webpack_require__(/*! ./_arrayMap */ "../../node_modules/lodash/_arrayMap.js");
+
+/**
+ * The base implementation of `_.toPairs` and `_.toPairsIn` which creates an array
+ * of key-value pairs for `object` corresponding to the property names of `props`.
+ *
+ * @private
+ * @param {Object} object The object to query.
+ * @param {Array} props The property names to get values for.
+ * @returns {Object} Returns the key-value pairs.
+ */
+function baseToPairs(object, props) {
+ return arrayMap(props, function(key) {
+ return [key, object[key]];
+ });
+}
+
+module.exports = baseToPairs;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseToString.js":
+/*!****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseToString.js ***!
+ \****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var Symbol = __webpack_require__(/*! ./_Symbol */ "../../node_modules/lodash/_Symbol.js"),
+ arrayMap = __webpack_require__(/*! ./_arrayMap */ "../../node_modules/lodash/_arrayMap.js"),
+ isArray = __webpack_require__(/*! ./isArray */ "../../node_modules/lodash/isArray.js"),
+ isSymbol = __webpack_require__(/*! ./isSymbol */ "../../node_modules/lodash/isSymbol.js");
+
+/** Used as references for various `Number` constants. */
+var INFINITY = 1 / 0;
+
+/** Used to convert symbols to primitives and strings. */
+var symbolProto = Symbol ? Symbol.prototype : undefined,
+ symbolToString = symbolProto ? symbolProto.toString : undefined;
+
+/**
+ * The base implementation of `_.toString` which doesn't convert nullish
+ * values to empty strings.
+ *
+ * @private
+ * @param {*} value The value to process.
+ * @returns {string} Returns the string.
+ */
+function baseToString(value) {
+ // Exit early for strings to avoid a performance hit in some environments.
+ if (typeof value == 'string') {
+ return value;
+ }
+ if (isArray(value)) {
+ // Recursively convert values (susceptible to call stack limits).
+ return arrayMap(value, baseToString) + '';
+ }
+ if (isSymbol(value)) {
+ return symbolToString ? symbolToString.call(value) : '';
+ }
+ var result = (value + '');
+ return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;
+}
+
+module.exports = baseToString;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseUnary.js":
+/*!*************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseUnary.js ***!
+ \*************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * The base implementation of `_.unary` without support for storing metadata.
+ *
+ * @private
+ * @param {Function} func The function to cap arguments for.
+ * @returns {Function} Returns the new capped function.
+ */
+function baseUnary(func) {
+ return function(value) {
+ return func(value);
+ };
+}
+
+module.exports = baseUnary;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseUniq.js":
+/*!************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseUniq.js ***!
+ \************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var SetCache = __webpack_require__(/*! ./_SetCache */ "../../node_modules/lodash/_SetCache.js"),
+ arrayIncludes = __webpack_require__(/*! ./_arrayIncludes */ "../../node_modules/lodash/_arrayIncludes.js"),
+ arrayIncludesWith = __webpack_require__(/*! ./_arrayIncludesWith */ "../../node_modules/lodash/_arrayIncludesWith.js"),
+ cacheHas = __webpack_require__(/*! ./_cacheHas */ "../../node_modules/lodash/_cacheHas.js"),
+ createSet = __webpack_require__(/*! ./_createSet */ "../../node_modules/lodash/_createSet.js"),
+ setToArray = __webpack_require__(/*! ./_setToArray */ "../../node_modules/lodash/_setToArray.js");
+
+/** Used as the size to enable large array optimizations. */
+var LARGE_ARRAY_SIZE = 200;
+
+/**
+ * The base implementation of `_.uniqBy` without support for iteratee shorthands.
+ *
+ * @private
+ * @param {Array} array The array to inspect.
+ * @param {Function} [iteratee] The iteratee invoked per element.
+ * @param {Function} [comparator] The comparator invoked per element.
+ * @returns {Array} Returns the new duplicate free array.
+ */
+function baseUniq(array, iteratee, comparator) {
+ var index = -1,
+ includes = arrayIncludes,
+ length = array.length,
+ isCommon = true,
+ result = [],
+ seen = result;
+
+ if (comparator) {
+ isCommon = false;
+ includes = arrayIncludesWith;
+ }
+ else if (length >= LARGE_ARRAY_SIZE) {
+ var set = iteratee ? null : createSet(array);
+ if (set) {
+ return setToArray(set);
+ }
+ isCommon = false;
+ includes = cacheHas;
+ seen = new SetCache;
+ }
+ else {
+ seen = iteratee ? [] : result;
+ }
+ outer:
+ while (++index < length) {
+ var value = array[index],
+ computed = iteratee ? iteratee(value) : value;
+
+ value = (comparator || value !== 0) ? value : 0;
+ if (isCommon && computed === computed) {
+ var seenIndex = seen.length;
+ while (seenIndex--) {
+ if (seen[seenIndex] === computed) {
+ continue outer;
+ }
+ }
+ if (iteratee) {
+ seen.push(computed);
+ }
+ result.push(value);
+ }
+ else if (!includes(seen, computed, comparator)) {
+ if (seen !== result) {
+ seen.push(computed);
+ }
+ result.push(value);
+ }
+ }
+ return result;
+}
+
+module.exports = baseUniq;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseUnset.js":
+/*!*************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseUnset.js ***!
+ \*************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var castPath = __webpack_require__(/*! ./_castPath */ "../../node_modules/lodash/_castPath.js"),
+ last = __webpack_require__(/*! ./last */ "../../node_modules/lodash/last.js"),
+ parent = __webpack_require__(/*! ./_parent */ "../../node_modules/lodash/_parent.js"),
+ toKey = __webpack_require__(/*! ./_toKey */ "../../node_modules/lodash/_toKey.js");
+
+/**
+ * The base implementation of `_.unset`.
+ *
+ * @private
+ * @param {Object} object The object to modify.
+ * @param {Array|string} path The property path to unset.
+ * @returns {boolean} Returns `true` if the property is deleted, else `false`.
+ */
+function baseUnset(object, path) {
+ path = castPath(path, object);
+ object = parent(object, path);
+ return object == null || delete object[toKey(last(path))];
+}
+
+module.exports = baseUnset;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_baseValues.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_baseValues.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var arrayMap = __webpack_require__(/*! ./_arrayMap */ "../../node_modules/lodash/_arrayMap.js");
+
+/**
+ * The base implementation of `_.values` and `_.valuesIn` which creates an
+ * array of `object` property values corresponding to the property names
+ * of `props`.
+ *
+ * @private
+ * @param {Object} object The object to query.
+ * @param {Array} props The property names to get values for.
+ * @returns {Object} Returns the array of property values.
+ */
+function baseValues(object, props) {
+ return arrayMap(props, function(key) {
+ return object[key];
+ });
+}
+
+module.exports = baseValues;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_cacheHas.js":
+/*!************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_cacheHas.js ***!
+ \************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * Checks if a `cache` value for `key` exists.
+ *
+ * @private
+ * @param {Object} cache The cache to query.
+ * @param {string} key The key of the entry to check.
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
+ */
+function cacheHas(cache, key) {
+ return cache.has(key);
+}
+
+module.exports = cacheHas;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_castPath.js":
+/*!************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_castPath.js ***!
+ \************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var isArray = __webpack_require__(/*! ./isArray */ "../../node_modules/lodash/isArray.js"),
+ isKey = __webpack_require__(/*! ./_isKey */ "../../node_modules/lodash/_isKey.js"),
+ stringToPath = __webpack_require__(/*! ./_stringToPath */ "../../node_modules/lodash/_stringToPath.js"),
+ toString = __webpack_require__(/*! ./toString */ "../../node_modules/lodash/toString.js");
+
+/**
+ * Casts `value` to a path array if it's not one.
+ *
+ * @private
+ * @param {*} value The value to inspect.
+ * @param {Object} [object] The object to query keys on.
+ * @returns {Array} Returns the cast property path array.
+ */
+function castPath(value, object) {
+ if (isArray(value)) {
+ return value;
+ }
+ return isKey(value, object) ? [value] : stringToPath(toString(value));
+}
+
+module.exports = castPath;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_castSlice.js":
+/*!*************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_castSlice.js ***!
+ \*************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseSlice = __webpack_require__(/*! ./_baseSlice */ "../../node_modules/lodash/_baseSlice.js");
+
+/**
+ * Casts `array` to a slice if it's needed.
+ *
+ * @private
+ * @param {Array} array The array to inspect.
+ * @param {number} start The start position.
+ * @param {number} [end=array.length] The end position.
+ * @returns {Array} Returns the cast slice.
+ */
+function castSlice(array, start, end) {
+ var length = array.length;
+ end = end === undefined ? length : end;
+ return (!start && end >= length) ? array : baseSlice(array, start, end);
+}
+
+module.exports = castSlice;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_cloneArrayBuffer.js":
+/*!********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_cloneArrayBuffer.js ***!
+ \********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var Uint8Array = __webpack_require__(/*! ./_Uint8Array */ "../../node_modules/lodash/_Uint8Array.js");
+
+/**
+ * Creates a clone of `arrayBuffer`.
+ *
+ * @private
+ * @param {ArrayBuffer} arrayBuffer The array buffer to clone.
+ * @returns {ArrayBuffer} Returns the cloned array buffer.
+ */
+function cloneArrayBuffer(arrayBuffer) {
+ var result = new arrayBuffer.constructor(arrayBuffer.byteLength);
+ new Uint8Array(result).set(new Uint8Array(arrayBuffer));
+ return result;
+}
+
+module.exports = cloneArrayBuffer;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_cloneBuffer.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_cloneBuffer.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+/* WEBPACK VAR INJECTION */(function(module) {var root = __webpack_require__(/*! ./_root */ "../../node_modules/lodash/_root.js");
+
+/** Detect free variable `exports`. */
+var freeExports = true && exports && !exports.nodeType && exports;
+
+/** Detect free variable `module`. */
+var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;
+
+/** Detect the popular CommonJS extension `module.exports`. */
+var moduleExports = freeModule && freeModule.exports === freeExports;
+
+/** Built-in value references. */
+var Buffer = moduleExports ? root.Buffer : undefined,
+ allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined;
+
+/**
+ * Creates a clone of `buffer`.
+ *
+ * @private
+ * @param {Buffer} buffer The buffer to clone.
+ * @param {boolean} [isDeep] Specify a deep clone.
+ * @returns {Buffer} Returns the cloned buffer.
+ */
+function cloneBuffer(buffer, isDeep) {
+ if (isDeep) {
+ return buffer.slice();
+ }
+ var length = buffer.length,
+ result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);
+
+ buffer.copy(result);
+ return result;
+}
+
+module.exports = cloneBuffer;
+
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../webpack/buildin/module.js */ "../../node_modules/webpack/buildin/module.js")(module)))
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_cloneDataView.js":
+/*!*****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_cloneDataView.js ***!
+ \*****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var cloneArrayBuffer = __webpack_require__(/*! ./_cloneArrayBuffer */ "../../node_modules/lodash/_cloneArrayBuffer.js");
+
+/**
+ * Creates a clone of `dataView`.
+ *
+ * @private
+ * @param {Object} dataView The data view to clone.
+ * @param {boolean} [isDeep] Specify a deep clone.
+ * @returns {Object} Returns the cloned data view.
+ */
+function cloneDataView(dataView, isDeep) {
+ var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer;
+ return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength);
+}
+
+module.exports = cloneDataView;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_cloneRegExp.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_cloneRegExp.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/** Used to match `RegExp` flags from their coerced string values. */
+var reFlags = /\w*$/;
+
+/**
+ * Creates a clone of `regexp`.
+ *
+ * @private
+ * @param {Object} regexp The regexp to clone.
+ * @returns {Object} Returns the cloned regexp.
+ */
+function cloneRegExp(regexp) {
+ var result = new regexp.constructor(regexp.source, reFlags.exec(regexp));
+ result.lastIndex = regexp.lastIndex;
+ return result;
+}
+
+module.exports = cloneRegExp;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_cloneSymbol.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_cloneSymbol.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var Symbol = __webpack_require__(/*! ./_Symbol */ "../../node_modules/lodash/_Symbol.js");
+
+/** Used to convert symbols to primitives and strings. */
+var symbolProto = Symbol ? Symbol.prototype : undefined,
+ symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;
+
+/**
+ * Creates a clone of the `symbol` object.
+ *
+ * @private
+ * @param {Object} symbol The symbol object to clone.
+ * @returns {Object} Returns the cloned symbol object.
+ */
+function cloneSymbol(symbol) {
+ return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {};
+}
+
+module.exports = cloneSymbol;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_cloneTypedArray.js":
+/*!*******************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_cloneTypedArray.js ***!
+ \*******************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var cloneArrayBuffer = __webpack_require__(/*! ./_cloneArrayBuffer */ "../../node_modules/lodash/_cloneArrayBuffer.js");
+
+/**
+ * Creates a clone of `typedArray`.
+ *
+ * @private
+ * @param {Object} typedArray The typed array to clone.
+ * @param {boolean} [isDeep] Specify a deep clone.
+ * @returns {Object} Returns the cloned typed array.
+ */
+function cloneTypedArray(typedArray, isDeep) {
+ var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;
+ return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);
+}
+
+module.exports = cloneTypedArray;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_copyArray.js":
+/*!*************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_copyArray.js ***!
+ \*************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * Copies the values of `source` to `array`.
+ *
+ * @private
+ * @param {Array} source The array to copy values from.
+ * @param {Array} [array=[]] The array to copy values to.
+ * @returns {Array} Returns `array`.
+ */
+function copyArray(source, array) {
+ var index = -1,
+ length = source.length;
+
+ array || (array = Array(length));
+ while (++index < length) {
+ array[index] = source[index];
+ }
+ return array;
+}
+
+module.exports = copyArray;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_copyObject.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_copyObject.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var assignValue = __webpack_require__(/*! ./_assignValue */ "../../node_modules/lodash/_assignValue.js"),
+ baseAssignValue = __webpack_require__(/*! ./_baseAssignValue */ "../../node_modules/lodash/_baseAssignValue.js");
+
+/**
+ * Copies properties of `source` to `object`.
+ *
+ * @private
+ * @param {Object} source The object to copy properties from.
+ * @param {Array} props The property identifiers to copy.
+ * @param {Object} [object={}] The object to copy properties to.
+ * @param {Function} [customizer] The function to customize copied values.
+ * @returns {Object} Returns `object`.
+ */
+function copyObject(source, props, object, customizer) {
+ var isNew = !object;
+ object || (object = {});
+
+ var index = -1,
+ length = props.length;
+
+ while (++index < length) {
+ var key = props[index];
+
+ var newValue = customizer
+ ? customizer(object[key], source[key], key, object, source)
+ : undefined;
+
+ if (newValue === undefined) {
+ newValue = source[key];
+ }
+ if (isNew) {
+ baseAssignValue(object, key, newValue);
+ } else {
+ assignValue(object, key, newValue);
+ }
+ }
+ return object;
+}
+
+module.exports = copyObject;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_copySymbols.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_copySymbols.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var copyObject = __webpack_require__(/*! ./_copyObject */ "../../node_modules/lodash/_copyObject.js"),
+ getSymbols = __webpack_require__(/*! ./_getSymbols */ "../../node_modules/lodash/_getSymbols.js");
+
+/**
+ * Copies own symbols of `source` to `object`.
+ *
+ * @private
+ * @param {Object} source The object to copy symbols from.
+ * @param {Object} [object={}] The object to copy symbols to.
+ * @returns {Object} Returns `object`.
+ */
+function copySymbols(source, object) {
+ return copyObject(source, getSymbols(source), object);
+}
+
+module.exports = copySymbols;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_copySymbolsIn.js":
+/*!*****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_copySymbolsIn.js ***!
+ \*****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var copyObject = __webpack_require__(/*! ./_copyObject */ "../../node_modules/lodash/_copyObject.js"),
+ getSymbolsIn = __webpack_require__(/*! ./_getSymbolsIn */ "../../node_modules/lodash/_getSymbolsIn.js");
+
+/**
+ * Copies own and inherited symbols of `source` to `object`.
+ *
+ * @private
+ * @param {Object} source The object to copy symbols from.
+ * @param {Object} [object={}] The object to copy symbols to.
+ * @returns {Object} Returns `object`.
+ */
+function copySymbolsIn(source, object) {
+ return copyObject(source, getSymbolsIn(source), object);
+}
+
+module.exports = copySymbolsIn;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_coreJsData.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_coreJsData.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var root = __webpack_require__(/*! ./_root */ "../../node_modules/lodash/_root.js");
+
+/** Used to detect overreaching core-js shims. */
+var coreJsData = root['__core-js_shared__'];
+
+module.exports = coreJsData;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_createAssigner.js":
+/*!******************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_createAssigner.js ***!
+ \******************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseRest = __webpack_require__(/*! ./_baseRest */ "../../node_modules/lodash/_baseRest.js"),
+ isIterateeCall = __webpack_require__(/*! ./_isIterateeCall */ "../../node_modules/lodash/_isIterateeCall.js");
+
+/**
+ * Creates a function like `_.assign`.
+ *
+ * @private
+ * @param {Function} assigner The function to assign values.
+ * @returns {Function} Returns the new assigner function.
+ */
+function createAssigner(assigner) {
+ return baseRest(function(object, sources) {
+ var index = -1,
+ length = sources.length,
+ customizer = length > 1 ? sources[length - 1] : undefined,
+ guard = length > 2 ? sources[2] : undefined;
+
+ customizer = (assigner.length > 3 && typeof customizer == 'function')
+ ? (length--, customizer)
+ : undefined;
+
+ if (guard && isIterateeCall(sources[0], sources[1], guard)) {
+ customizer = length < 3 ? undefined : customizer;
+ length = 1;
+ }
+ object = Object(object);
+ while (++index < length) {
+ var source = sources[index];
+ if (source) {
+ assigner(object, source, index, customizer);
+ }
+ }
+ return object;
+ });
+}
+
+module.exports = createAssigner;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_createBaseEach.js":
+/*!******************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_createBaseEach.js ***!
+ \******************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var isArrayLike = __webpack_require__(/*! ./isArrayLike */ "../../node_modules/lodash/isArrayLike.js");
+
+/**
+ * Creates a `baseEach` or `baseEachRight` function.
+ *
+ * @private
+ * @param {Function} eachFunc The function to iterate over a collection.
+ * @param {boolean} [fromRight] Specify iterating from right to left.
+ * @returns {Function} Returns the new base function.
+ */
+function createBaseEach(eachFunc, fromRight) {
+ return function(collection, iteratee) {
+ if (collection == null) {
+ return collection;
+ }
+ if (!isArrayLike(collection)) {
+ return eachFunc(collection, iteratee);
+ }
+ var length = collection.length,
+ index = fromRight ? length : -1,
+ iterable = Object(collection);
+
+ while ((fromRight ? index-- : ++index < length)) {
+ if (iteratee(iterable[index], index, iterable) === false) {
+ break;
+ }
+ }
+ return collection;
+ };
+}
+
+module.exports = createBaseEach;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_createBaseFor.js":
+/*!*****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_createBaseFor.js ***!
+ \*****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * Creates a base function for methods like `_.forIn` and `_.forOwn`.
+ *
+ * @private
+ * @param {boolean} [fromRight] Specify iterating from right to left.
+ * @returns {Function} Returns the new base function.
+ */
+function createBaseFor(fromRight) {
+ return function(object, iteratee, keysFunc) {
+ var index = -1,
+ iterable = Object(object),
+ props = keysFunc(object),
+ length = props.length;
+
+ while (length--) {
+ var key = props[fromRight ? length : ++index];
+ if (iteratee(iterable[key], key, iterable) === false) {
+ break;
+ }
+ }
+ return object;
+ };
+}
+
+module.exports = createBaseFor;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_createCaseFirst.js":
+/*!*******************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_createCaseFirst.js ***!
+ \*******************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var castSlice = __webpack_require__(/*! ./_castSlice */ "../../node_modules/lodash/_castSlice.js"),
+ hasUnicode = __webpack_require__(/*! ./_hasUnicode */ "../../node_modules/lodash/_hasUnicode.js"),
+ stringToArray = __webpack_require__(/*! ./_stringToArray */ "../../node_modules/lodash/_stringToArray.js"),
+ toString = __webpack_require__(/*! ./toString */ "../../node_modules/lodash/toString.js");
+
+/**
+ * Creates a function like `_.lowerFirst`.
+ *
+ * @private
+ * @param {string} methodName The name of the `String` case method to use.
+ * @returns {Function} Returns the new case function.
+ */
+function createCaseFirst(methodName) {
+ return function(string) {
+ string = toString(string);
+
+ var strSymbols = hasUnicode(string)
+ ? stringToArray(string)
+ : undefined;
+
+ var chr = strSymbols
+ ? strSymbols[0]
+ : string.charAt(0);
+
+ var trailing = strSymbols
+ ? castSlice(strSymbols, 1).join('')
+ : string.slice(1);
+
+ return chr[methodName]() + trailing;
+ };
+}
+
+module.exports = createCaseFirst;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_createCompounder.js":
+/*!********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_createCompounder.js ***!
+ \********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var arrayReduce = __webpack_require__(/*! ./_arrayReduce */ "../../node_modules/lodash/_arrayReduce.js"),
+ deburr = __webpack_require__(/*! ./deburr */ "../../node_modules/lodash/deburr.js"),
+ words = __webpack_require__(/*! ./words */ "../../node_modules/lodash/words.js");
+
+/** Used to compose unicode capture groups. */
+var rsApos = "['\u2019]";
+
+/** Used to match apostrophes. */
+var reApos = RegExp(rsApos, 'g');
+
+/**
+ * Creates a function like `_.camelCase`.
+ *
+ * @private
+ * @param {Function} callback The function to combine each word.
+ * @returns {Function} Returns the new compounder function.
+ */
+function createCompounder(callback) {
+ return function(string) {
+ return arrayReduce(words(deburr(string).replace(reApos, '')), callback, '');
+ };
+}
+
+module.exports = createCompounder;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_createRange.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_createRange.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseRange = __webpack_require__(/*! ./_baseRange */ "../../node_modules/lodash/_baseRange.js"),
+ isIterateeCall = __webpack_require__(/*! ./_isIterateeCall */ "../../node_modules/lodash/_isIterateeCall.js"),
+ toFinite = __webpack_require__(/*! ./toFinite */ "../../node_modules/lodash/toFinite.js");
+
+/**
+ * Creates a `_.range` or `_.rangeRight` function.
+ *
+ * @private
+ * @param {boolean} [fromRight] Specify iterating from right to left.
+ * @returns {Function} Returns the new range function.
+ */
+function createRange(fromRight) {
+ return function(start, end, step) {
+ if (step && typeof step != 'number' && isIterateeCall(start, end, step)) {
+ end = step = undefined;
+ }
+ // Ensure the sign of `-0` is preserved.
+ start = toFinite(start);
+ if (end === undefined) {
+ end = start;
+ start = 0;
+ } else {
+ end = toFinite(end);
+ }
+ step = step === undefined ? (start < end ? 1 : -1) : toFinite(step);
+ return baseRange(start, end, step, fromRight);
+ };
+}
+
+module.exports = createRange;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_createSet.js":
+/*!*************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_createSet.js ***!
+ \*************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var Set = __webpack_require__(/*! ./_Set */ "../../node_modules/lodash/_Set.js"),
+ noop = __webpack_require__(/*! ./noop */ "../../node_modules/lodash/noop.js"),
+ setToArray = __webpack_require__(/*! ./_setToArray */ "../../node_modules/lodash/_setToArray.js");
+
+/** Used as references for various `Number` constants. */
+var INFINITY = 1 / 0;
+
+/**
+ * Creates a set object of `values`.
+ *
+ * @private
+ * @param {Array} values The values to add to the set.
+ * @returns {Object} Returns the new set.
+ */
+var createSet = !(Set && (1 / setToArray(new Set([,-0]))[1]) == INFINITY) ? noop : function(values) {
+ return new Set(values);
+};
+
+module.exports = createSet;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_createToPairs.js":
+/*!*****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_createToPairs.js ***!
+ \*****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseToPairs = __webpack_require__(/*! ./_baseToPairs */ "../../node_modules/lodash/_baseToPairs.js"),
+ getTag = __webpack_require__(/*! ./_getTag */ "../../node_modules/lodash/_getTag.js"),
+ mapToArray = __webpack_require__(/*! ./_mapToArray */ "../../node_modules/lodash/_mapToArray.js"),
+ setToPairs = __webpack_require__(/*! ./_setToPairs */ "../../node_modules/lodash/_setToPairs.js");
+
+/** `Object#toString` result references. */
+var mapTag = '[object Map]',
+ setTag = '[object Set]';
+
+/**
+ * Creates a `_.toPairs` or `_.toPairsIn` function.
+ *
+ * @private
+ * @param {Function} keysFunc The function to get the keys of a given object.
+ * @returns {Function} Returns the new pairs function.
+ */
+function createToPairs(keysFunc) {
+ return function(object) {
+ var tag = getTag(object);
+ if (tag == mapTag) {
+ return mapToArray(object);
+ }
+ if (tag == setTag) {
+ return setToPairs(object);
+ }
+ return baseToPairs(object, keysFunc(object));
+ };
+}
+
+module.exports = createToPairs;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_deburrLetter.js":
+/*!****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_deburrLetter.js ***!
+ \****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var basePropertyOf = __webpack_require__(/*! ./_basePropertyOf */ "../../node_modules/lodash/_basePropertyOf.js");
+
+/** Used to map Latin Unicode letters to basic Latin letters. */
+var deburredLetters = {
+ // Latin-1 Supplement block.
+ '\xc0': 'A', '\xc1': 'A', '\xc2': 'A', '\xc3': 'A', '\xc4': 'A', '\xc5': 'A',
+ '\xe0': 'a', '\xe1': 'a', '\xe2': 'a', '\xe3': 'a', '\xe4': 'a', '\xe5': 'a',
+ '\xc7': 'C', '\xe7': 'c',
+ '\xd0': 'D', '\xf0': 'd',
+ '\xc8': 'E', '\xc9': 'E', '\xca': 'E', '\xcb': 'E',
+ '\xe8': 'e', '\xe9': 'e', '\xea': 'e', '\xeb': 'e',
+ '\xcc': 'I', '\xcd': 'I', '\xce': 'I', '\xcf': 'I',
+ '\xec': 'i', '\xed': 'i', '\xee': 'i', '\xef': 'i',
+ '\xd1': 'N', '\xf1': 'n',
+ '\xd2': 'O', '\xd3': 'O', '\xd4': 'O', '\xd5': 'O', '\xd6': 'O', '\xd8': 'O',
+ '\xf2': 'o', '\xf3': 'o', '\xf4': 'o', '\xf5': 'o', '\xf6': 'o', '\xf8': 'o',
+ '\xd9': 'U', '\xda': 'U', '\xdb': 'U', '\xdc': 'U',
+ '\xf9': 'u', '\xfa': 'u', '\xfb': 'u', '\xfc': 'u',
+ '\xdd': 'Y', '\xfd': 'y', '\xff': 'y',
+ '\xc6': 'Ae', '\xe6': 'ae',
+ '\xde': 'Th', '\xfe': 'th',
+ '\xdf': 'ss',
+ // Latin Extended-A block.
+ '\u0100': 'A', '\u0102': 'A', '\u0104': 'A',
+ '\u0101': 'a', '\u0103': 'a', '\u0105': 'a',
+ '\u0106': 'C', '\u0108': 'C', '\u010a': 'C', '\u010c': 'C',
+ '\u0107': 'c', '\u0109': 'c', '\u010b': 'c', '\u010d': 'c',
+ '\u010e': 'D', '\u0110': 'D', '\u010f': 'd', '\u0111': 'd',
+ '\u0112': 'E', '\u0114': 'E', '\u0116': 'E', '\u0118': 'E', '\u011a': 'E',
+ '\u0113': 'e', '\u0115': 'e', '\u0117': 'e', '\u0119': 'e', '\u011b': 'e',
+ '\u011c': 'G', '\u011e': 'G', '\u0120': 'G', '\u0122': 'G',
+ '\u011d': 'g', '\u011f': 'g', '\u0121': 'g', '\u0123': 'g',
+ '\u0124': 'H', '\u0126': 'H', '\u0125': 'h', '\u0127': 'h',
+ '\u0128': 'I', '\u012a': 'I', '\u012c': 'I', '\u012e': 'I', '\u0130': 'I',
+ '\u0129': 'i', '\u012b': 'i', '\u012d': 'i', '\u012f': 'i', '\u0131': 'i',
+ '\u0134': 'J', '\u0135': 'j',
+ '\u0136': 'K', '\u0137': 'k', '\u0138': 'k',
+ '\u0139': 'L', '\u013b': 'L', '\u013d': 'L', '\u013f': 'L', '\u0141': 'L',
+ '\u013a': 'l', '\u013c': 'l', '\u013e': 'l', '\u0140': 'l', '\u0142': 'l',
+ '\u0143': 'N', '\u0145': 'N', '\u0147': 'N', '\u014a': 'N',
+ '\u0144': 'n', '\u0146': 'n', '\u0148': 'n', '\u014b': 'n',
+ '\u014c': 'O', '\u014e': 'O', '\u0150': 'O',
+ '\u014d': 'o', '\u014f': 'o', '\u0151': 'o',
+ '\u0154': 'R', '\u0156': 'R', '\u0158': 'R',
+ '\u0155': 'r', '\u0157': 'r', '\u0159': 'r',
+ '\u015a': 'S', '\u015c': 'S', '\u015e': 'S', '\u0160': 'S',
+ '\u015b': 's', '\u015d': 's', '\u015f': 's', '\u0161': 's',
+ '\u0162': 'T', '\u0164': 'T', '\u0166': 'T',
+ '\u0163': 't', '\u0165': 't', '\u0167': 't',
+ '\u0168': 'U', '\u016a': 'U', '\u016c': 'U', '\u016e': 'U', '\u0170': 'U', '\u0172': 'U',
+ '\u0169': 'u', '\u016b': 'u', '\u016d': 'u', '\u016f': 'u', '\u0171': 'u', '\u0173': 'u',
+ '\u0174': 'W', '\u0175': 'w',
+ '\u0176': 'Y', '\u0177': 'y', '\u0178': 'Y',
+ '\u0179': 'Z', '\u017b': 'Z', '\u017d': 'Z',
+ '\u017a': 'z', '\u017c': 'z', '\u017e': 'z',
+ '\u0132': 'IJ', '\u0133': 'ij',
+ '\u0152': 'Oe', '\u0153': 'oe',
+ '\u0149': "'n", '\u017f': 's'
+};
+
+/**
+ * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A
+ * letters to basic Latin letters.
+ *
+ * @private
+ * @param {string} letter The matched letter to deburr.
+ * @returns {string} Returns the deburred letter.
+ */
+var deburrLetter = basePropertyOf(deburredLetters);
+
+module.exports = deburrLetter;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_defineProperty.js":
+/*!******************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_defineProperty.js ***!
+ \******************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var getNative = __webpack_require__(/*! ./_getNative */ "../../node_modules/lodash/_getNative.js");
+
+var defineProperty = (function() {
+ try {
+ var func = getNative(Object, 'defineProperty');
+ func({}, '', {});
+ return func;
+ } catch (e) {}
+}());
+
+module.exports = defineProperty;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_equalArrays.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_equalArrays.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var SetCache = __webpack_require__(/*! ./_SetCache */ "../../node_modules/lodash/_SetCache.js"),
+ arraySome = __webpack_require__(/*! ./_arraySome */ "../../node_modules/lodash/_arraySome.js"),
+ cacheHas = __webpack_require__(/*! ./_cacheHas */ "../../node_modules/lodash/_cacheHas.js");
+
+/** Used to compose bitmasks for value comparisons. */
+var COMPARE_PARTIAL_FLAG = 1,
+ COMPARE_UNORDERED_FLAG = 2;
+
+/**
+ * A specialized version of `baseIsEqualDeep` for arrays with support for
+ * partial deep comparisons.
+ *
+ * @private
+ * @param {Array} array The array to compare.
+ * @param {Array} other The other array to compare.
+ * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
+ * @param {Function} customizer The function to customize comparisons.
+ * @param {Function} equalFunc The function to determine equivalents of values.
+ * @param {Object} stack Tracks traversed `array` and `other` objects.
+ * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.
+ */
+function equalArrays(array, other, bitmask, customizer, equalFunc, stack) {
+ var isPartial = bitmask & COMPARE_PARTIAL_FLAG,
+ arrLength = array.length,
+ othLength = other.length;
+
+ if (arrLength != othLength && !(isPartial && othLength > arrLength)) {
+ return false;
+ }
+ // Assume cyclic values are equal.
+ var stacked = stack.get(array);
+ if (stacked && stack.get(other)) {
+ return stacked == other;
+ }
+ var index = -1,
+ result = true,
+ seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;
+
+ stack.set(array, other);
+ stack.set(other, array);
+
+ // Ignore non-index properties.
+ while (++index < arrLength) {
+ var arrValue = array[index],
+ othValue = other[index];
+
+ if (customizer) {
+ var compared = isPartial
+ ? customizer(othValue, arrValue, index, other, array, stack)
+ : customizer(arrValue, othValue, index, array, other, stack);
+ }
+ if (compared !== undefined) {
+ if (compared) {
+ continue;
+ }
+ result = false;
+ break;
+ }
+ // Recursively compare arrays (susceptible to call stack limits).
+ if (seen) {
+ if (!arraySome(other, function(othValue, othIndex) {
+ if (!cacheHas(seen, othIndex) &&
+ (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {
+ return seen.push(othIndex);
+ }
+ })) {
+ result = false;
+ break;
+ }
+ } else if (!(
+ arrValue === othValue ||
+ equalFunc(arrValue, othValue, bitmask, customizer, stack)
+ )) {
+ result = false;
+ break;
+ }
+ }
+ stack['delete'](array);
+ stack['delete'](other);
+ return result;
+}
+
+module.exports = equalArrays;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_equalByTag.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_equalByTag.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var Symbol = __webpack_require__(/*! ./_Symbol */ "../../node_modules/lodash/_Symbol.js"),
+ Uint8Array = __webpack_require__(/*! ./_Uint8Array */ "../../node_modules/lodash/_Uint8Array.js"),
+ eq = __webpack_require__(/*! ./eq */ "../../node_modules/lodash/eq.js"),
+ equalArrays = __webpack_require__(/*! ./_equalArrays */ "../../node_modules/lodash/_equalArrays.js"),
+ mapToArray = __webpack_require__(/*! ./_mapToArray */ "../../node_modules/lodash/_mapToArray.js"),
+ setToArray = __webpack_require__(/*! ./_setToArray */ "../../node_modules/lodash/_setToArray.js");
+
+/** Used to compose bitmasks for value comparisons. */
+var COMPARE_PARTIAL_FLAG = 1,
+ COMPARE_UNORDERED_FLAG = 2;
+
+/** `Object#toString` result references. */
+var boolTag = '[object Boolean]',
+ dateTag = '[object Date]',
+ errorTag = '[object Error]',
+ mapTag = '[object Map]',
+ numberTag = '[object Number]',
+ regexpTag = '[object RegExp]',
+ setTag = '[object Set]',
+ stringTag = '[object String]',
+ symbolTag = '[object Symbol]';
+
+var arrayBufferTag = '[object ArrayBuffer]',
+ dataViewTag = '[object DataView]';
+
+/** Used to convert symbols to primitives and strings. */
+var symbolProto = Symbol ? Symbol.prototype : undefined,
+ symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;
+
+/**
+ * A specialized version of `baseIsEqualDeep` for comparing objects of
+ * the same `toStringTag`.
+ *
+ * **Note:** This function only supports comparing values with tags of
+ * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.
+ *
+ * @private
+ * @param {Object} object The object to compare.
+ * @param {Object} other The other object to compare.
+ * @param {string} tag The `toStringTag` of the objects to compare.
+ * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
+ * @param {Function} customizer The function to customize comparisons.
+ * @param {Function} equalFunc The function to determine equivalents of values.
+ * @param {Object} stack Tracks traversed `object` and `other` objects.
+ * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
+ */
+function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {
+ switch (tag) {
+ case dataViewTag:
+ if ((object.byteLength != other.byteLength) ||
+ (object.byteOffset != other.byteOffset)) {
+ return false;
+ }
+ object = object.buffer;
+ other = other.buffer;
+
+ case arrayBufferTag:
+ if ((object.byteLength != other.byteLength) ||
+ !equalFunc(new Uint8Array(object), new Uint8Array(other))) {
+ return false;
+ }
+ return true;
+
+ case boolTag:
+ case dateTag:
+ case numberTag:
+ // Coerce booleans to `1` or `0` and dates to milliseconds.
+ // Invalid dates are coerced to `NaN`.
+ return eq(+object, +other);
+
+ case errorTag:
+ return object.name == other.name && object.message == other.message;
+
+ case regexpTag:
+ case stringTag:
+ // Coerce regexes to strings and treat strings, primitives and objects,
+ // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring
+ // for more details.
+ return object == (other + '');
+
+ case mapTag:
+ var convert = mapToArray;
+
+ case setTag:
+ var isPartial = bitmask & COMPARE_PARTIAL_FLAG;
+ convert || (convert = setToArray);
+
+ if (object.size != other.size && !isPartial) {
+ return false;
+ }
+ // Assume cyclic values are equal.
+ var stacked = stack.get(object);
+ if (stacked) {
+ return stacked == other;
+ }
+ bitmask |= COMPARE_UNORDERED_FLAG;
+
+ // Recursively compare objects (susceptible to call stack limits).
+ stack.set(object, other);
+ var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);
+ stack['delete'](object);
+ return result;
+
+ case symbolTag:
+ if (symbolValueOf) {
+ return symbolValueOf.call(object) == symbolValueOf.call(other);
+ }
+ }
+ return false;
+}
+
+module.exports = equalByTag;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_equalObjects.js":
+/*!****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_equalObjects.js ***!
+ \****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var getAllKeys = __webpack_require__(/*! ./_getAllKeys */ "../../node_modules/lodash/_getAllKeys.js");
+
+/** Used to compose bitmasks for value comparisons. */
+var COMPARE_PARTIAL_FLAG = 1;
+
+/** Used for built-in method references. */
+var objectProto = Object.prototype;
+
+/** Used to check objects for own properties. */
+var hasOwnProperty = objectProto.hasOwnProperty;
+
+/**
+ * A specialized version of `baseIsEqualDeep` for objects with support for
+ * partial deep comparisons.
+ *
+ * @private
+ * @param {Object} object The object to compare.
+ * @param {Object} other The other object to compare.
+ * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
+ * @param {Function} customizer The function to customize comparisons.
+ * @param {Function} equalFunc The function to determine equivalents of values.
+ * @param {Object} stack Tracks traversed `object` and `other` objects.
+ * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
+ */
+function equalObjects(object, other, bitmask, customizer, equalFunc, stack) {
+ var isPartial = bitmask & COMPARE_PARTIAL_FLAG,
+ objProps = getAllKeys(object),
+ objLength = objProps.length,
+ othProps = getAllKeys(other),
+ othLength = othProps.length;
+
+ if (objLength != othLength && !isPartial) {
+ return false;
+ }
+ var index = objLength;
+ while (index--) {
+ var key = objProps[index];
+ if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {
+ return false;
+ }
+ }
+ // Assume cyclic values are equal.
+ var stacked = stack.get(object);
+ if (stacked && stack.get(other)) {
+ return stacked == other;
+ }
+ var result = true;
+ stack.set(object, other);
+ stack.set(other, object);
+
+ var skipCtor = isPartial;
+ while (++index < objLength) {
+ key = objProps[index];
+ var objValue = object[key],
+ othValue = other[key];
+
+ if (customizer) {
+ var compared = isPartial
+ ? customizer(othValue, objValue, key, other, object, stack)
+ : customizer(objValue, othValue, key, object, other, stack);
+ }
+ // Recursively compare objects (susceptible to call stack limits).
+ if (!(compared === undefined
+ ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))
+ : compared
+ )) {
+ result = false;
+ break;
+ }
+ skipCtor || (skipCtor = key == 'constructor');
+ }
+ if (result && !skipCtor) {
+ var objCtor = object.constructor,
+ othCtor = other.constructor;
+
+ // Non `Object` object instances with different constructors are not equal.
+ if (objCtor != othCtor &&
+ ('constructor' in object && 'constructor' in other) &&
+ !(typeof objCtor == 'function' && objCtor instanceof objCtor &&
+ typeof othCtor == 'function' && othCtor instanceof othCtor)) {
+ result = false;
+ }
+ }
+ stack['delete'](object);
+ stack['delete'](other);
+ return result;
+}
+
+module.exports = equalObjects;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_freeGlobal.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_freeGlobal.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+/* WEBPACK VAR INJECTION */(function(global) {/** Detect free variable `global` from Node.js. */
+var freeGlobal = typeof global == 'object' && global && global.Object === Object && global;
+
+module.exports = freeGlobal;
+
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../webpack/buildin/global.js */ "../../node_modules/webpack/buildin/global.js")))
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_getAllKeys.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_getAllKeys.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseGetAllKeys = __webpack_require__(/*! ./_baseGetAllKeys */ "../../node_modules/lodash/_baseGetAllKeys.js"),
+ getSymbols = __webpack_require__(/*! ./_getSymbols */ "../../node_modules/lodash/_getSymbols.js"),
+ keys = __webpack_require__(/*! ./keys */ "../../node_modules/lodash/keys.js");
+
+/**
+ * Creates an array of own enumerable property names and symbols of `object`.
+ *
+ * @private
+ * @param {Object} object The object to query.
+ * @returns {Array} Returns the array of property names and symbols.
+ */
+function getAllKeys(object) {
+ return baseGetAllKeys(object, keys, getSymbols);
+}
+
+module.exports = getAllKeys;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_getAllKeysIn.js":
+/*!****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_getAllKeysIn.js ***!
+ \****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseGetAllKeys = __webpack_require__(/*! ./_baseGetAllKeys */ "../../node_modules/lodash/_baseGetAllKeys.js"),
+ getSymbolsIn = __webpack_require__(/*! ./_getSymbolsIn */ "../../node_modules/lodash/_getSymbolsIn.js"),
+ keysIn = __webpack_require__(/*! ./keysIn */ "../../node_modules/lodash/keysIn.js");
+
+/**
+ * Creates an array of own and inherited enumerable property names and
+ * symbols of `object`.
+ *
+ * @private
+ * @param {Object} object The object to query.
+ * @returns {Array} Returns the array of property names and symbols.
+ */
+function getAllKeysIn(object) {
+ return baseGetAllKeys(object, keysIn, getSymbolsIn);
+}
+
+module.exports = getAllKeysIn;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_getMapData.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_getMapData.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var isKeyable = __webpack_require__(/*! ./_isKeyable */ "../../node_modules/lodash/_isKeyable.js");
+
+/**
+ * Gets the data for `map`.
+ *
+ * @private
+ * @param {Object} map The map to query.
+ * @param {string} key The reference key.
+ * @returns {*} Returns the map data.
+ */
+function getMapData(map, key) {
+ var data = map.__data__;
+ return isKeyable(key)
+ ? data[typeof key == 'string' ? 'string' : 'hash']
+ : data.map;
+}
+
+module.exports = getMapData;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_getMatchData.js":
+/*!****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_getMatchData.js ***!
+ \****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var isStrictComparable = __webpack_require__(/*! ./_isStrictComparable */ "../../node_modules/lodash/_isStrictComparable.js"),
+ keys = __webpack_require__(/*! ./keys */ "../../node_modules/lodash/keys.js");
+
+/**
+ * Gets the property names, values, and compare flags of `object`.
+ *
+ * @private
+ * @param {Object} object The object to query.
+ * @returns {Array} Returns the match data of `object`.
+ */
+function getMatchData(object) {
+ var result = keys(object),
+ length = result.length;
+
+ while (length--) {
+ var key = result[length],
+ value = object[key];
+
+ result[length] = [key, value, isStrictComparable(value)];
+ }
+ return result;
+}
+
+module.exports = getMatchData;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_getNative.js":
+/*!*************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_getNative.js ***!
+ \*************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseIsNative = __webpack_require__(/*! ./_baseIsNative */ "../../node_modules/lodash/_baseIsNative.js"),
+ getValue = __webpack_require__(/*! ./_getValue */ "../../node_modules/lodash/_getValue.js");
+
+/**
+ * Gets the native function at `key` of `object`.
+ *
+ * @private
+ * @param {Object} object The object to query.
+ * @param {string} key The key of the method to get.
+ * @returns {*} Returns the function if it's native, else `undefined`.
+ */
+function getNative(object, key) {
+ var value = getValue(object, key);
+ return baseIsNative(value) ? value : undefined;
+}
+
+module.exports = getNative;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_getPrototype.js":
+/*!****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_getPrototype.js ***!
+ \****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var overArg = __webpack_require__(/*! ./_overArg */ "../../node_modules/lodash/_overArg.js");
+
+/** Built-in value references. */
+var getPrototype = overArg(Object.getPrototypeOf, Object);
+
+module.exports = getPrototype;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_getRawTag.js":
+/*!*************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_getRawTag.js ***!
+ \*************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var Symbol = __webpack_require__(/*! ./_Symbol */ "../../node_modules/lodash/_Symbol.js");
+
+/** Used for built-in method references. */
+var objectProto = Object.prototype;
+
+/** Used to check objects for own properties. */
+var hasOwnProperty = objectProto.hasOwnProperty;
+
+/**
+ * Used to resolve the
+ * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
+ * of values.
+ */
+var nativeObjectToString = objectProto.toString;
+
+/** Built-in value references. */
+var symToStringTag = Symbol ? Symbol.toStringTag : undefined;
+
+/**
+ * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.
+ *
+ * @private
+ * @param {*} value The value to query.
+ * @returns {string} Returns the raw `toStringTag`.
+ */
+function getRawTag(value) {
+ var isOwn = hasOwnProperty.call(value, symToStringTag),
+ tag = value[symToStringTag];
+
+ try {
+ value[symToStringTag] = undefined;
+ var unmasked = true;
+ } catch (e) {}
+
+ var result = nativeObjectToString.call(value);
+ if (unmasked) {
+ if (isOwn) {
+ value[symToStringTag] = tag;
+ } else {
+ delete value[symToStringTag];
+ }
+ }
+ return result;
+}
+
+module.exports = getRawTag;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_getSymbols.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_getSymbols.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var arrayFilter = __webpack_require__(/*! ./_arrayFilter */ "../../node_modules/lodash/_arrayFilter.js"),
+ stubArray = __webpack_require__(/*! ./stubArray */ "../../node_modules/lodash/stubArray.js");
+
+/** Used for built-in method references. */
+var objectProto = Object.prototype;
+
+/** Built-in value references. */
+var propertyIsEnumerable = objectProto.propertyIsEnumerable;
+
+/* Built-in method references for those with the same name as other `lodash` methods. */
+var nativeGetSymbols = Object.getOwnPropertySymbols;
+
+/**
+ * Creates an array of the own enumerable symbols of `object`.
+ *
+ * @private
+ * @param {Object} object The object to query.
+ * @returns {Array} Returns the array of symbols.
+ */
+var getSymbols = !nativeGetSymbols ? stubArray : function(object) {
+ if (object == null) {
+ return [];
+ }
+ object = Object(object);
+ return arrayFilter(nativeGetSymbols(object), function(symbol) {
+ return propertyIsEnumerable.call(object, symbol);
+ });
+};
+
+module.exports = getSymbols;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_getSymbolsIn.js":
+/*!****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_getSymbolsIn.js ***!
+ \****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var arrayPush = __webpack_require__(/*! ./_arrayPush */ "../../node_modules/lodash/_arrayPush.js"),
+ getPrototype = __webpack_require__(/*! ./_getPrototype */ "../../node_modules/lodash/_getPrototype.js"),
+ getSymbols = __webpack_require__(/*! ./_getSymbols */ "../../node_modules/lodash/_getSymbols.js"),
+ stubArray = __webpack_require__(/*! ./stubArray */ "../../node_modules/lodash/stubArray.js");
+
+/* Built-in method references for those with the same name as other `lodash` methods. */
+var nativeGetSymbols = Object.getOwnPropertySymbols;
+
+/**
+ * Creates an array of the own and inherited enumerable symbols of `object`.
+ *
+ * @private
+ * @param {Object} object The object to query.
+ * @returns {Array} Returns the array of symbols.
+ */
+var getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) {
+ var result = [];
+ while (object) {
+ arrayPush(result, getSymbols(object));
+ object = getPrototype(object);
+ }
+ return result;
+};
+
+module.exports = getSymbolsIn;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_getTag.js":
+/*!**********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_getTag.js ***!
+ \**********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var DataView = __webpack_require__(/*! ./_DataView */ "../../node_modules/lodash/_DataView.js"),
+ Map = __webpack_require__(/*! ./_Map */ "../../node_modules/lodash/_Map.js"),
+ Promise = __webpack_require__(/*! ./_Promise */ "../../node_modules/lodash/_Promise.js"),
+ Set = __webpack_require__(/*! ./_Set */ "../../node_modules/lodash/_Set.js"),
+ WeakMap = __webpack_require__(/*! ./_WeakMap */ "../../node_modules/lodash/_WeakMap.js"),
+ baseGetTag = __webpack_require__(/*! ./_baseGetTag */ "../../node_modules/lodash/_baseGetTag.js"),
+ toSource = __webpack_require__(/*! ./_toSource */ "../../node_modules/lodash/_toSource.js");
+
+/** `Object#toString` result references. */
+var mapTag = '[object Map]',
+ objectTag = '[object Object]',
+ promiseTag = '[object Promise]',
+ setTag = '[object Set]',
+ weakMapTag = '[object WeakMap]';
+
+var dataViewTag = '[object DataView]';
+
+/** Used to detect maps, sets, and weakmaps. */
+var dataViewCtorString = toSource(DataView),
+ mapCtorString = toSource(Map),
+ promiseCtorString = toSource(Promise),
+ setCtorString = toSource(Set),
+ weakMapCtorString = toSource(WeakMap);
+
+/**
+ * Gets the `toStringTag` of `value`.
+ *
+ * @private
+ * @param {*} value The value to query.
+ * @returns {string} Returns the `toStringTag`.
+ */
+var getTag = baseGetTag;
+
+// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.
+if ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||
+ (Map && getTag(new Map) != mapTag) ||
+ (Promise && getTag(Promise.resolve()) != promiseTag) ||
+ (Set && getTag(new Set) != setTag) ||
+ (WeakMap && getTag(new WeakMap) != weakMapTag)) {
+ getTag = function(value) {
+ var result = baseGetTag(value),
+ Ctor = result == objectTag ? value.constructor : undefined,
+ ctorString = Ctor ? toSource(Ctor) : '';
+
+ if (ctorString) {
+ switch (ctorString) {
+ case dataViewCtorString: return dataViewTag;
+ case mapCtorString: return mapTag;
+ case promiseCtorString: return promiseTag;
+ case setCtorString: return setTag;
+ case weakMapCtorString: return weakMapTag;
+ }
+ }
+ return result;
+ };
+}
+
+module.exports = getTag;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_getValue.js":
+/*!************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_getValue.js ***!
+ \************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * Gets the value at `key` of `object`.
+ *
+ * @private
+ * @param {Object} [object] The object to query.
+ * @param {string} key The key of the property to get.
+ * @returns {*} Returns the property value.
+ */
+function getValue(object, key) {
+ return object == null ? undefined : object[key];
+}
+
+module.exports = getValue;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_hasPath.js":
+/*!***********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_hasPath.js ***!
+ \***********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var castPath = __webpack_require__(/*! ./_castPath */ "../../node_modules/lodash/_castPath.js"),
+ isArguments = __webpack_require__(/*! ./isArguments */ "../../node_modules/lodash/isArguments.js"),
+ isArray = __webpack_require__(/*! ./isArray */ "../../node_modules/lodash/isArray.js"),
+ isIndex = __webpack_require__(/*! ./_isIndex */ "../../node_modules/lodash/_isIndex.js"),
+ isLength = __webpack_require__(/*! ./isLength */ "../../node_modules/lodash/isLength.js"),
+ toKey = __webpack_require__(/*! ./_toKey */ "../../node_modules/lodash/_toKey.js");
+
+/**
+ * Checks if `path` exists on `object`.
+ *
+ * @private
+ * @param {Object} object The object to query.
+ * @param {Array|string} path The path to check.
+ * @param {Function} hasFunc The function to check properties.
+ * @returns {boolean} Returns `true` if `path` exists, else `false`.
+ */
+function hasPath(object, path, hasFunc) {
+ path = castPath(path, object);
+
+ var index = -1,
+ length = path.length,
+ result = false;
+
+ while (++index < length) {
+ var key = toKey(path[index]);
+ if (!(result = object != null && hasFunc(object, key))) {
+ break;
+ }
+ object = object[key];
+ }
+ if (result || ++index != length) {
+ return result;
+ }
+ length = object == null ? 0 : object.length;
+ return !!length && isLength(length) && isIndex(key, length) &&
+ (isArray(object) || isArguments(object));
+}
+
+module.exports = hasPath;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_hasUnicode.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_hasUnicode.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/** Used to compose unicode character classes. */
+var rsAstralRange = '\\ud800-\\udfff',
+ rsComboMarksRange = '\\u0300-\\u036f',
+ reComboHalfMarksRange = '\\ufe20-\\ufe2f',
+ rsComboSymbolsRange = '\\u20d0-\\u20ff',
+ rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange,
+ rsVarRange = '\\ufe0e\\ufe0f';
+
+/** Used to compose unicode capture groups. */
+var rsZWJ = '\\u200d';
+
+/** Used to detect strings with [zero-width joiners or code points from the astral planes](http://eev.ee/blog/2015/09/12/dark-corners-of-unicode/). */
+var reHasUnicode = RegExp('[' + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + ']');
+
+/**
+ * Checks if `string` contains Unicode symbols.
+ *
+ * @private
+ * @param {string} string The string to inspect.
+ * @returns {boolean} Returns `true` if a symbol is found, else `false`.
+ */
+function hasUnicode(string) {
+ return reHasUnicode.test(string);
+}
+
+module.exports = hasUnicode;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_hasUnicodeWord.js":
+/*!******************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_hasUnicodeWord.js ***!
+ \******************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/** Used to detect strings that need a more robust regexp to match words. */
+var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;
+
+/**
+ * Checks if `string` contains a word composed of Unicode symbols.
+ *
+ * @private
+ * @param {string} string The string to inspect.
+ * @returns {boolean} Returns `true` if a word is found, else `false`.
+ */
+function hasUnicodeWord(string) {
+ return reHasUnicodeWord.test(string);
+}
+
+module.exports = hasUnicodeWord;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_hashClear.js":
+/*!*************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_hashClear.js ***!
+ \*************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var nativeCreate = __webpack_require__(/*! ./_nativeCreate */ "../../node_modules/lodash/_nativeCreate.js");
+
+/**
+ * Removes all key-value entries from the hash.
+ *
+ * @private
+ * @name clear
+ * @memberOf Hash
+ */
+function hashClear() {
+ this.__data__ = nativeCreate ? nativeCreate(null) : {};
+ this.size = 0;
+}
+
+module.exports = hashClear;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_hashDelete.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_hashDelete.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * Removes `key` and its value from the hash.
+ *
+ * @private
+ * @name delete
+ * @memberOf Hash
+ * @param {Object} hash The hash to modify.
+ * @param {string} key The key of the value to remove.
+ * @returns {boolean} Returns `true` if the entry was removed, else `false`.
+ */
+function hashDelete(key) {
+ var result = this.has(key) && delete this.__data__[key];
+ this.size -= result ? 1 : 0;
+ return result;
+}
+
+module.exports = hashDelete;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_hashGet.js":
+/*!***********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_hashGet.js ***!
+ \***********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var nativeCreate = __webpack_require__(/*! ./_nativeCreate */ "../../node_modules/lodash/_nativeCreate.js");
+
+/** Used to stand-in for `undefined` hash values. */
+var HASH_UNDEFINED = '__lodash_hash_undefined__';
+
+/** Used for built-in method references. */
+var objectProto = Object.prototype;
+
+/** Used to check objects for own properties. */
+var hasOwnProperty = objectProto.hasOwnProperty;
+
+/**
+ * Gets the hash value for `key`.
+ *
+ * @private
+ * @name get
+ * @memberOf Hash
+ * @param {string} key The key of the value to get.
+ * @returns {*} Returns the entry value.
+ */
+function hashGet(key) {
+ var data = this.__data__;
+ if (nativeCreate) {
+ var result = data[key];
+ return result === HASH_UNDEFINED ? undefined : result;
+ }
+ return hasOwnProperty.call(data, key) ? data[key] : undefined;
+}
+
+module.exports = hashGet;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_hashHas.js":
+/*!***********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_hashHas.js ***!
+ \***********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var nativeCreate = __webpack_require__(/*! ./_nativeCreate */ "../../node_modules/lodash/_nativeCreate.js");
+
+/** Used for built-in method references. */
+var objectProto = Object.prototype;
+
+/** Used to check objects for own properties. */
+var hasOwnProperty = objectProto.hasOwnProperty;
+
+/**
+ * Checks if a hash value for `key` exists.
+ *
+ * @private
+ * @name has
+ * @memberOf Hash
+ * @param {string} key The key of the entry to check.
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
+ */
+function hashHas(key) {
+ var data = this.__data__;
+ return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);
+}
+
+module.exports = hashHas;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_hashSet.js":
+/*!***********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_hashSet.js ***!
+ \***********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var nativeCreate = __webpack_require__(/*! ./_nativeCreate */ "../../node_modules/lodash/_nativeCreate.js");
+
+/** Used to stand-in for `undefined` hash values. */
+var HASH_UNDEFINED = '__lodash_hash_undefined__';
+
+/**
+ * Sets the hash `key` to `value`.
+ *
+ * @private
+ * @name set
+ * @memberOf Hash
+ * @param {string} key The key of the value to set.
+ * @param {*} value The value to set.
+ * @returns {Object} Returns the hash instance.
+ */
+function hashSet(key, value) {
+ var data = this.__data__;
+ this.size += this.has(key) ? 0 : 1;
+ data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;
+ return this;
+}
+
+module.exports = hashSet;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_initCloneArray.js":
+/*!******************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_initCloneArray.js ***!
+ \******************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/** Used for built-in method references. */
+var objectProto = Object.prototype;
+
+/** Used to check objects for own properties. */
+var hasOwnProperty = objectProto.hasOwnProperty;
+
+/**
+ * Initializes an array clone.
+ *
+ * @private
+ * @param {Array} array The array to clone.
+ * @returns {Array} Returns the initialized clone.
+ */
+function initCloneArray(array) {
+ var length = array.length,
+ result = new array.constructor(length);
+
+ // Add properties assigned by `RegExp#exec`.
+ if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) {
+ result.index = array.index;
+ result.input = array.input;
+ }
+ return result;
+}
+
+module.exports = initCloneArray;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_initCloneByTag.js":
+/*!******************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_initCloneByTag.js ***!
+ \******************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var cloneArrayBuffer = __webpack_require__(/*! ./_cloneArrayBuffer */ "../../node_modules/lodash/_cloneArrayBuffer.js"),
+ cloneDataView = __webpack_require__(/*! ./_cloneDataView */ "../../node_modules/lodash/_cloneDataView.js"),
+ cloneRegExp = __webpack_require__(/*! ./_cloneRegExp */ "../../node_modules/lodash/_cloneRegExp.js"),
+ cloneSymbol = __webpack_require__(/*! ./_cloneSymbol */ "../../node_modules/lodash/_cloneSymbol.js"),
+ cloneTypedArray = __webpack_require__(/*! ./_cloneTypedArray */ "../../node_modules/lodash/_cloneTypedArray.js");
+
+/** `Object#toString` result references. */
+var boolTag = '[object Boolean]',
+ dateTag = '[object Date]',
+ mapTag = '[object Map]',
+ numberTag = '[object Number]',
+ regexpTag = '[object RegExp]',
+ setTag = '[object Set]',
+ stringTag = '[object String]',
+ symbolTag = '[object Symbol]';
+
+var arrayBufferTag = '[object ArrayBuffer]',
+ dataViewTag = '[object DataView]',
+ float32Tag = '[object Float32Array]',
+ float64Tag = '[object Float64Array]',
+ int8Tag = '[object Int8Array]',
+ int16Tag = '[object Int16Array]',
+ int32Tag = '[object Int32Array]',
+ uint8Tag = '[object Uint8Array]',
+ uint8ClampedTag = '[object Uint8ClampedArray]',
+ uint16Tag = '[object Uint16Array]',
+ uint32Tag = '[object Uint32Array]';
+
+/**
+ * Initializes an object clone based on its `toStringTag`.
+ *
+ * **Note:** This function only supports cloning values with tags of
+ * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`.
+ *
+ * @private
+ * @param {Object} object The object to clone.
+ * @param {string} tag The `toStringTag` of the object to clone.
+ * @param {boolean} [isDeep] Specify a deep clone.
+ * @returns {Object} Returns the initialized clone.
+ */
+function initCloneByTag(object, tag, isDeep) {
+ var Ctor = object.constructor;
+ switch (tag) {
+ case arrayBufferTag:
+ return cloneArrayBuffer(object);
+
+ case boolTag:
+ case dateTag:
+ return new Ctor(+object);
+
+ case dataViewTag:
+ return cloneDataView(object, isDeep);
+
+ case float32Tag: case float64Tag:
+ case int8Tag: case int16Tag: case int32Tag:
+ case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag:
+ return cloneTypedArray(object, isDeep);
+
+ case mapTag:
+ return new Ctor;
+
+ case numberTag:
+ case stringTag:
+ return new Ctor(object);
+
+ case regexpTag:
+ return cloneRegExp(object);
+
+ case setTag:
+ return new Ctor;
+
+ case symbolTag:
+ return cloneSymbol(object);
+ }
+}
+
+module.exports = initCloneByTag;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_initCloneObject.js":
+/*!*******************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_initCloneObject.js ***!
+ \*******************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseCreate = __webpack_require__(/*! ./_baseCreate */ "../../node_modules/lodash/_baseCreate.js"),
+ getPrototype = __webpack_require__(/*! ./_getPrototype */ "../../node_modules/lodash/_getPrototype.js"),
+ isPrototype = __webpack_require__(/*! ./_isPrototype */ "../../node_modules/lodash/_isPrototype.js");
+
+/**
+ * Initializes an object clone.
+ *
+ * @private
+ * @param {Object} object The object to clone.
+ * @returns {Object} Returns the initialized clone.
+ */
+function initCloneObject(object) {
+ return (typeof object.constructor == 'function' && !isPrototype(object))
+ ? baseCreate(getPrototype(object))
+ : {};
+}
+
+module.exports = initCloneObject;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_isFlattenable.js":
+/*!*****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_isFlattenable.js ***!
+ \*****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var Symbol = __webpack_require__(/*! ./_Symbol */ "../../node_modules/lodash/_Symbol.js"),
+ isArguments = __webpack_require__(/*! ./isArguments */ "../../node_modules/lodash/isArguments.js"),
+ isArray = __webpack_require__(/*! ./isArray */ "../../node_modules/lodash/isArray.js");
+
+/** Built-in value references. */
+var spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined;
+
+/**
+ * Checks if `value` is a flattenable `arguments` object or array.
+ *
+ * @private
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is flattenable, else `false`.
+ */
+function isFlattenable(value) {
+ return isArray(value) || isArguments(value) ||
+ !!(spreadableSymbol && value && value[spreadableSymbol]);
+}
+
+module.exports = isFlattenable;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_isIndex.js":
+/*!***********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_isIndex.js ***!
+ \***********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/** Used as references for various `Number` constants. */
+var MAX_SAFE_INTEGER = 9007199254740991;
+
+/** Used to detect unsigned integer values. */
+var reIsUint = /^(?:0|[1-9]\d*)$/;
+
+/**
+ * Checks if `value` is a valid array-like index.
+ *
+ * @private
+ * @param {*} value The value to check.
+ * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.
+ * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.
+ */
+function isIndex(value, length) {
+ var type = typeof value;
+ length = length == null ? MAX_SAFE_INTEGER : length;
+
+ return !!length &&
+ (type == 'number' ||
+ (type != 'symbol' && reIsUint.test(value))) &&
+ (value > -1 && value % 1 == 0 && value < length);
+}
+
+module.exports = isIndex;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_isIterateeCall.js":
+/*!******************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_isIterateeCall.js ***!
+ \******************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var eq = __webpack_require__(/*! ./eq */ "../../node_modules/lodash/eq.js"),
+ isArrayLike = __webpack_require__(/*! ./isArrayLike */ "../../node_modules/lodash/isArrayLike.js"),
+ isIndex = __webpack_require__(/*! ./_isIndex */ "../../node_modules/lodash/_isIndex.js"),
+ isObject = __webpack_require__(/*! ./isObject */ "../../node_modules/lodash/isObject.js");
+
+/**
+ * Checks if the given arguments are from an iteratee call.
+ *
+ * @private
+ * @param {*} value The potential iteratee value argument.
+ * @param {*} index The potential iteratee index or key argument.
+ * @param {*} object The potential iteratee object argument.
+ * @returns {boolean} Returns `true` if the arguments are from an iteratee call,
+ * else `false`.
+ */
+function isIterateeCall(value, index, object) {
+ if (!isObject(object)) {
+ return false;
+ }
+ var type = typeof index;
+ if (type == 'number'
+ ? (isArrayLike(object) && isIndex(index, object.length))
+ : (type == 'string' && index in object)
+ ) {
+ return eq(object[index], value);
+ }
+ return false;
+}
+
+module.exports = isIterateeCall;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_isKey.js":
+/*!*********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_isKey.js ***!
+ \*********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var isArray = __webpack_require__(/*! ./isArray */ "../../node_modules/lodash/isArray.js"),
+ isSymbol = __webpack_require__(/*! ./isSymbol */ "../../node_modules/lodash/isSymbol.js");
+
+/** Used to match property names within property paths. */
+var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,
+ reIsPlainProp = /^\w*$/;
+
+/**
+ * Checks if `value` is a property name and not a property path.
+ *
+ * @private
+ * @param {*} value The value to check.
+ * @param {Object} [object] The object to query keys on.
+ * @returns {boolean} Returns `true` if `value` is a property name, else `false`.
+ */
+function isKey(value, object) {
+ if (isArray(value)) {
+ return false;
+ }
+ var type = typeof value;
+ if (type == 'number' || type == 'symbol' || type == 'boolean' ||
+ value == null || isSymbol(value)) {
+ return true;
+ }
+ return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||
+ (object != null && value in Object(object));
+}
+
+module.exports = isKey;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_isKeyable.js":
+/*!*************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_isKeyable.js ***!
+ \*************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * Checks if `value` is suitable for use as unique object key.
+ *
+ * @private
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is suitable, else `false`.
+ */
+function isKeyable(value) {
+ var type = typeof value;
+ return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')
+ ? (value !== '__proto__')
+ : (value === null);
+}
+
+module.exports = isKeyable;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_isMasked.js":
+/*!************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_isMasked.js ***!
+ \************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var coreJsData = __webpack_require__(/*! ./_coreJsData */ "../../node_modules/lodash/_coreJsData.js");
+
+/** Used to detect methods masquerading as native. */
+var maskSrcKey = (function() {
+ var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');
+ return uid ? ('Symbol(src)_1.' + uid) : '';
+}());
+
+/**
+ * Checks if `func` has its source masked.
+ *
+ * @private
+ * @param {Function} func The function to check.
+ * @returns {boolean} Returns `true` if `func` is masked, else `false`.
+ */
+function isMasked(func) {
+ return !!maskSrcKey && (maskSrcKey in func);
+}
+
+module.exports = isMasked;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_isPrototype.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_isPrototype.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/** Used for built-in method references. */
+var objectProto = Object.prototype;
+
+/**
+ * Checks if `value` is likely a prototype object.
+ *
+ * @private
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.
+ */
+function isPrototype(value) {
+ var Ctor = value && value.constructor,
+ proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;
+
+ return value === proto;
+}
+
+module.exports = isPrototype;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_isStrictComparable.js":
+/*!**********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_isStrictComparable.js ***!
+ \**********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var isObject = __webpack_require__(/*! ./isObject */ "../../node_modules/lodash/isObject.js");
+
+/**
+ * Checks if `value` is suitable for strict equality comparisons, i.e. `===`.
+ *
+ * @private
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` if suitable for strict
+ * equality comparisons, else `false`.
+ */
+function isStrictComparable(value) {
+ return value === value && !isObject(value);
+}
+
+module.exports = isStrictComparable;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_listCacheClear.js":
+/*!******************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_listCacheClear.js ***!
+ \******************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * Removes all key-value entries from the list cache.
+ *
+ * @private
+ * @name clear
+ * @memberOf ListCache
+ */
+function listCacheClear() {
+ this.__data__ = [];
+ this.size = 0;
+}
+
+module.exports = listCacheClear;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_listCacheDelete.js":
+/*!*******************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_listCacheDelete.js ***!
+ \*******************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var assocIndexOf = __webpack_require__(/*! ./_assocIndexOf */ "../../node_modules/lodash/_assocIndexOf.js");
+
+/** Used for built-in method references. */
+var arrayProto = Array.prototype;
+
+/** Built-in value references. */
+var splice = arrayProto.splice;
+
+/**
+ * Removes `key` and its value from the list cache.
+ *
+ * @private
+ * @name delete
+ * @memberOf ListCache
+ * @param {string} key The key of the value to remove.
+ * @returns {boolean} Returns `true` if the entry was removed, else `false`.
+ */
+function listCacheDelete(key) {
+ var data = this.__data__,
+ index = assocIndexOf(data, key);
+
+ if (index < 0) {
+ return false;
+ }
+ var lastIndex = data.length - 1;
+ if (index == lastIndex) {
+ data.pop();
+ } else {
+ splice.call(data, index, 1);
+ }
+ --this.size;
+ return true;
+}
+
+module.exports = listCacheDelete;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_listCacheGet.js":
+/*!****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_listCacheGet.js ***!
+ \****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var assocIndexOf = __webpack_require__(/*! ./_assocIndexOf */ "../../node_modules/lodash/_assocIndexOf.js");
+
+/**
+ * Gets the list cache value for `key`.
+ *
+ * @private
+ * @name get
+ * @memberOf ListCache
+ * @param {string} key The key of the value to get.
+ * @returns {*} Returns the entry value.
+ */
+function listCacheGet(key) {
+ var data = this.__data__,
+ index = assocIndexOf(data, key);
+
+ return index < 0 ? undefined : data[index][1];
+}
+
+module.exports = listCacheGet;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_listCacheHas.js":
+/*!****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_listCacheHas.js ***!
+ \****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var assocIndexOf = __webpack_require__(/*! ./_assocIndexOf */ "../../node_modules/lodash/_assocIndexOf.js");
+
+/**
+ * Checks if a list cache value for `key` exists.
+ *
+ * @private
+ * @name has
+ * @memberOf ListCache
+ * @param {string} key The key of the entry to check.
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
+ */
+function listCacheHas(key) {
+ return assocIndexOf(this.__data__, key) > -1;
+}
+
+module.exports = listCacheHas;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_listCacheSet.js":
+/*!****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_listCacheSet.js ***!
+ \****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var assocIndexOf = __webpack_require__(/*! ./_assocIndexOf */ "../../node_modules/lodash/_assocIndexOf.js");
+
+/**
+ * Sets the list cache `key` to `value`.
+ *
+ * @private
+ * @name set
+ * @memberOf ListCache
+ * @param {string} key The key of the value to set.
+ * @param {*} value The value to set.
+ * @returns {Object} Returns the list cache instance.
+ */
+function listCacheSet(key, value) {
+ var data = this.__data__,
+ index = assocIndexOf(data, key);
+
+ if (index < 0) {
+ ++this.size;
+ data.push([key, value]);
+ } else {
+ data[index][1] = value;
+ }
+ return this;
+}
+
+module.exports = listCacheSet;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_mapCacheClear.js":
+/*!*****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_mapCacheClear.js ***!
+ \*****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var Hash = __webpack_require__(/*! ./_Hash */ "../../node_modules/lodash/_Hash.js"),
+ ListCache = __webpack_require__(/*! ./_ListCache */ "../../node_modules/lodash/_ListCache.js"),
+ Map = __webpack_require__(/*! ./_Map */ "../../node_modules/lodash/_Map.js");
+
+/**
+ * Removes all key-value entries from the map.
+ *
+ * @private
+ * @name clear
+ * @memberOf MapCache
+ */
+function mapCacheClear() {
+ this.size = 0;
+ this.__data__ = {
+ 'hash': new Hash,
+ 'map': new (Map || ListCache),
+ 'string': new Hash
+ };
+}
+
+module.exports = mapCacheClear;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_mapCacheDelete.js":
+/*!******************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_mapCacheDelete.js ***!
+ \******************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var getMapData = __webpack_require__(/*! ./_getMapData */ "../../node_modules/lodash/_getMapData.js");
+
+/**
+ * Removes `key` and its value from the map.
+ *
+ * @private
+ * @name delete
+ * @memberOf MapCache
+ * @param {string} key The key of the value to remove.
+ * @returns {boolean} Returns `true` if the entry was removed, else `false`.
+ */
+function mapCacheDelete(key) {
+ var result = getMapData(this, key)['delete'](key);
+ this.size -= result ? 1 : 0;
+ return result;
+}
+
+module.exports = mapCacheDelete;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_mapCacheGet.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_mapCacheGet.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var getMapData = __webpack_require__(/*! ./_getMapData */ "../../node_modules/lodash/_getMapData.js");
+
+/**
+ * Gets the map value for `key`.
+ *
+ * @private
+ * @name get
+ * @memberOf MapCache
+ * @param {string} key The key of the value to get.
+ * @returns {*} Returns the entry value.
+ */
+function mapCacheGet(key) {
+ return getMapData(this, key).get(key);
+}
+
+module.exports = mapCacheGet;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_mapCacheHas.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_mapCacheHas.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var getMapData = __webpack_require__(/*! ./_getMapData */ "../../node_modules/lodash/_getMapData.js");
+
+/**
+ * Checks if a map value for `key` exists.
+ *
+ * @private
+ * @name has
+ * @memberOf MapCache
+ * @param {string} key The key of the entry to check.
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
+ */
+function mapCacheHas(key) {
+ return getMapData(this, key).has(key);
+}
+
+module.exports = mapCacheHas;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_mapCacheSet.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_mapCacheSet.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var getMapData = __webpack_require__(/*! ./_getMapData */ "../../node_modules/lodash/_getMapData.js");
+
+/**
+ * Sets the map `key` to `value`.
+ *
+ * @private
+ * @name set
+ * @memberOf MapCache
+ * @param {string} key The key of the value to set.
+ * @param {*} value The value to set.
+ * @returns {Object} Returns the map cache instance.
+ */
+function mapCacheSet(key, value) {
+ var data = getMapData(this, key),
+ size = data.size;
+
+ data.set(key, value);
+ this.size += data.size == size ? 0 : 1;
+ return this;
+}
+
+module.exports = mapCacheSet;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_mapToArray.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_mapToArray.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * Converts `map` to its key-value pairs.
+ *
+ * @private
+ * @param {Object} map The map to convert.
+ * @returns {Array} Returns the key-value pairs.
+ */
+function mapToArray(map) {
+ var index = -1,
+ result = Array(map.size);
+
+ map.forEach(function(value, key) {
+ result[++index] = [key, value];
+ });
+ return result;
+}
+
+module.exports = mapToArray;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_matchesStrictComparable.js":
+/*!***************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_matchesStrictComparable.js ***!
+ \***************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * A specialized version of `matchesProperty` for source values suitable
+ * for strict equality comparisons, i.e. `===`.
+ *
+ * @private
+ * @param {string} key The key of the property to get.
+ * @param {*} srcValue The value to match.
+ * @returns {Function} Returns the new spec function.
+ */
+function matchesStrictComparable(key, srcValue) {
+ return function(object) {
+ if (object == null) {
+ return false;
+ }
+ return object[key] === srcValue &&
+ (srcValue !== undefined || (key in Object(object)));
+ };
+}
+
+module.exports = matchesStrictComparable;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_memoizeCapped.js":
+/*!*****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_memoizeCapped.js ***!
+ \*****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var memoize = __webpack_require__(/*! ./memoize */ "../../node_modules/lodash/memoize.js");
+
+/** Used as the maximum memoize cache size. */
+var MAX_MEMOIZE_SIZE = 500;
+
+/**
+ * A specialized version of `_.memoize` which clears the memoized function's
+ * cache when it exceeds `MAX_MEMOIZE_SIZE`.
+ *
+ * @private
+ * @param {Function} func The function to have its output memoized.
+ * @returns {Function} Returns the new memoized function.
+ */
+function memoizeCapped(func) {
+ var result = memoize(func, function(key) {
+ if (cache.size === MAX_MEMOIZE_SIZE) {
+ cache.clear();
+ }
+ return key;
+ });
+
+ var cache = result.cache;
+ return result;
+}
+
+module.exports = memoizeCapped;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_nativeCreate.js":
+/*!****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_nativeCreate.js ***!
+ \****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var getNative = __webpack_require__(/*! ./_getNative */ "../../node_modules/lodash/_getNative.js");
+
+/* Built-in method references that are verified to be native. */
+var nativeCreate = getNative(Object, 'create');
+
+module.exports = nativeCreate;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_nativeKeys.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_nativeKeys.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var overArg = __webpack_require__(/*! ./_overArg */ "../../node_modules/lodash/_overArg.js");
+
+/* Built-in method references for those with the same name as other `lodash` methods. */
+var nativeKeys = overArg(Object.keys, Object);
+
+module.exports = nativeKeys;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_nativeKeysIn.js":
+/*!****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_nativeKeysIn.js ***!
+ \****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * This function is like
+ * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)
+ * except that it includes inherited enumerable properties.
+ *
+ * @private
+ * @param {Object} object The object to query.
+ * @returns {Array} Returns the array of property names.
+ */
+function nativeKeysIn(object) {
+ var result = [];
+ if (object != null) {
+ for (var key in Object(object)) {
+ result.push(key);
+ }
+ }
+ return result;
+}
+
+module.exports = nativeKeysIn;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_nodeUtil.js":
+/*!************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_nodeUtil.js ***!
+ \************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+/* WEBPACK VAR INJECTION */(function(module) {var freeGlobal = __webpack_require__(/*! ./_freeGlobal */ "../../node_modules/lodash/_freeGlobal.js");
+
+/** Detect free variable `exports`. */
+var freeExports = true && exports && !exports.nodeType && exports;
+
+/** Detect free variable `module`. */
+var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;
+
+/** Detect the popular CommonJS extension `module.exports`. */
+var moduleExports = freeModule && freeModule.exports === freeExports;
+
+/** Detect free variable `process` from Node.js. */
+var freeProcess = moduleExports && freeGlobal.process;
+
+/** Used to access faster Node.js helpers. */
+var nodeUtil = (function() {
+ try {
+ // Use `util.types` for Node.js 10+.
+ var types = freeModule && freeModule.require && freeModule.require('util').types;
+
+ if (types) {
+ return types;
+ }
+
+ // Legacy `process.binding('util')` for Node.js < 10.
+ return freeProcess && freeProcess.binding && freeProcess.binding('util');
+ } catch (e) {}
+}());
+
+module.exports = nodeUtil;
+
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../webpack/buildin/module.js */ "../../node_modules/webpack/buildin/module.js")(module)))
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_objectToString.js":
+/*!******************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_objectToString.js ***!
+ \******************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/** Used for built-in method references. */
+var objectProto = Object.prototype;
+
+/**
+ * Used to resolve the
+ * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
+ * of values.
+ */
+var nativeObjectToString = objectProto.toString;
+
+/**
+ * Converts `value` to a string using `Object.prototype.toString`.
+ *
+ * @private
+ * @param {*} value The value to convert.
+ * @returns {string} Returns the converted string.
+ */
+function objectToString(value) {
+ return nativeObjectToString.call(value);
+}
+
+module.exports = objectToString;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_overArg.js":
+/*!***********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_overArg.js ***!
+ \***********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * Creates a unary function that invokes `func` with its argument transformed.
+ *
+ * @private
+ * @param {Function} func The function to wrap.
+ * @param {Function} transform The argument transform.
+ * @returns {Function} Returns the new function.
+ */
+function overArg(func, transform) {
+ return function(arg) {
+ return func(transform(arg));
+ };
+}
+
+module.exports = overArg;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_overRest.js":
+/*!************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_overRest.js ***!
+ \************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var apply = __webpack_require__(/*! ./_apply */ "../../node_modules/lodash/_apply.js");
+
+/* Built-in method references for those with the same name as other `lodash` methods. */
+var nativeMax = Math.max;
+
+/**
+ * A specialized version of `baseRest` which transforms the rest array.
+ *
+ * @private
+ * @param {Function} func The function to apply a rest parameter to.
+ * @param {number} [start=func.length-1] The start position of the rest parameter.
+ * @param {Function} transform The rest array transform.
+ * @returns {Function} Returns the new function.
+ */
+function overRest(func, start, transform) {
+ start = nativeMax(start === undefined ? (func.length - 1) : start, 0);
+ return function() {
+ var args = arguments,
+ index = -1,
+ length = nativeMax(args.length - start, 0),
+ array = Array(length);
+
+ while (++index < length) {
+ array[index] = args[start + index];
+ }
+ index = -1;
+ var otherArgs = Array(start + 1);
+ while (++index < start) {
+ otherArgs[index] = args[index];
+ }
+ otherArgs[start] = transform(array);
+ return apply(func, this, otherArgs);
+ };
+}
+
+module.exports = overRest;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_parent.js":
+/*!**********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_parent.js ***!
+ \**********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseGet = __webpack_require__(/*! ./_baseGet */ "../../node_modules/lodash/_baseGet.js"),
+ baseSlice = __webpack_require__(/*! ./_baseSlice */ "../../node_modules/lodash/_baseSlice.js");
+
+/**
+ * Gets the parent value at `path` of `object`.
+ *
+ * @private
+ * @param {Object} object The object to query.
+ * @param {Array} path The path to get the parent value of.
+ * @returns {*} Returns the parent value.
+ */
+function parent(object, path) {
+ return path.length < 2 ? object : baseGet(object, baseSlice(path, 0, -1));
+}
+
+module.exports = parent;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_root.js":
+/*!********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_root.js ***!
+ \********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var freeGlobal = __webpack_require__(/*! ./_freeGlobal */ "../../node_modules/lodash/_freeGlobal.js");
+
+/** Detect free variable `self`. */
+var freeSelf = typeof self == 'object' && self && self.Object === Object && self;
+
+/** Used as a reference to the global object. */
+var root = freeGlobal || freeSelf || Function('return this')();
+
+module.exports = root;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_safeGet.js":
+/*!***********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_safeGet.js ***!
+ \***********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * Gets the value at `key`, unless `key` is "__proto__".
+ *
+ * @private
+ * @param {Object} object The object to query.
+ * @param {string} key The key of the property to get.
+ * @returns {*} Returns the property value.
+ */
+function safeGet(object, key) {
+ if (key == '__proto__') {
+ return;
+ }
+
+ return object[key];
+}
+
+module.exports = safeGet;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_setCacheAdd.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_setCacheAdd.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/** Used to stand-in for `undefined` hash values. */
+var HASH_UNDEFINED = '__lodash_hash_undefined__';
+
+/**
+ * Adds `value` to the array cache.
+ *
+ * @private
+ * @name add
+ * @memberOf SetCache
+ * @alias push
+ * @param {*} value The value to cache.
+ * @returns {Object} Returns the cache instance.
+ */
+function setCacheAdd(value) {
+ this.__data__.set(value, HASH_UNDEFINED);
+ return this;
+}
+
+module.exports = setCacheAdd;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_setCacheHas.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_setCacheHas.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * Checks if `value` is in the array cache.
+ *
+ * @private
+ * @name has
+ * @memberOf SetCache
+ * @param {*} value The value to search for.
+ * @returns {number} Returns `true` if `value` is found, else `false`.
+ */
+function setCacheHas(value) {
+ return this.__data__.has(value);
+}
+
+module.exports = setCacheHas;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_setToArray.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_setToArray.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * Converts `set` to an array of its values.
+ *
+ * @private
+ * @param {Object} set The set to convert.
+ * @returns {Array} Returns the values.
+ */
+function setToArray(set) {
+ var index = -1,
+ result = Array(set.size);
+
+ set.forEach(function(value) {
+ result[++index] = value;
+ });
+ return result;
+}
+
+module.exports = setToArray;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_setToPairs.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_setToPairs.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * Converts `set` to its value-value pairs.
+ *
+ * @private
+ * @param {Object} set The set to convert.
+ * @returns {Array} Returns the value-value pairs.
+ */
+function setToPairs(set) {
+ var index = -1,
+ result = Array(set.size);
+
+ set.forEach(function(value) {
+ result[++index] = [value, value];
+ });
+ return result;
+}
+
+module.exports = setToPairs;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_setToString.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_setToString.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseSetToString = __webpack_require__(/*! ./_baseSetToString */ "../../node_modules/lodash/_baseSetToString.js"),
+ shortOut = __webpack_require__(/*! ./_shortOut */ "../../node_modules/lodash/_shortOut.js");
+
+/**
+ * Sets the `toString` method of `func` to return `string`.
+ *
+ * @private
+ * @param {Function} func The function to modify.
+ * @param {Function} string The `toString` result.
+ * @returns {Function} Returns `func`.
+ */
+var setToString = shortOut(baseSetToString);
+
+module.exports = setToString;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_shortOut.js":
+/*!************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_shortOut.js ***!
+ \************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/** Used to detect hot functions by number of calls within a span of milliseconds. */
+var HOT_COUNT = 800,
+ HOT_SPAN = 16;
+
+/* Built-in method references for those with the same name as other `lodash` methods. */
+var nativeNow = Date.now;
+
+/**
+ * Creates a function that'll short out and invoke `identity` instead
+ * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`
+ * milliseconds.
+ *
+ * @private
+ * @param {Function} func The function to restrict.
+ * @returns {Function} Returns the new shortable function.
+ */
+function shortOut(func) {
+ var count = 0,
+ lastCalled = 0;
+
+ return function() {
+ var stamp = nativeNow(),
+ remaining = HOT_SPAN - (stamp - lastCalled);
+
+ lastCalled = stamp;
+ if (remaining > 0) {
+ if (++count >= HOT_COUNT) {
+ return arguments[0];
+ }
+ } else {
+ count = 0;
+ }
+ return func.apply(undefined, arguments);
+ };
+}
+
+module.exports = shortOut;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_stackClear.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_stackClear.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var ListCache = __webpack_require__(/*! ./_ListCache */ "../../node_modules/lodash/_ListCache.js");
+
+/**
+ * Removes all key-value entries from the stack.
+ *
+ * @private
+ * @name clear
+ * @memberOf Stack
+ */
+function stackClear() {
+ this.__data__ = new ListCache;
+ this.size = 0;
+}
+
+module.exports = stackClear;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_stackDelete.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_stackDelete.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * Removes `key` and its value from the stack.
+ *
+ * @private
+ * @name delete
+ * @memberOf Stack
+ * @param {string} key The key of the value to remove.
+ * @returns {boolean} Returns `true` if the entry was removed, else `false`.
+ */
+function stackDelete(key) {
+ var data = this.__data__,
+ result = data['delete'](key);
+
+ this.size = data.size;
+ return result;
+}
+
+module.exports = stackDelete;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_stackGet.js":
+/*!************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_stackGet.js ***!
+ \************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * Gets the stack value for `key`.
+ *
+ * @private
+ * @name get
+ * @memberOf Stack
+ * @param {string} key The key of the value to get.
+ * @returns {*} Returns the entry value.
+ */
+function stackGet(key) {
+ return this.__data__.get(key);
+}
+
+module.exports = stackGet;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_stackHas.js":
+/*!************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_stackHas.js ***!
+ \************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * Checks if a stack value for `key` exists.
+ *
+ * @private
+ * @name has
+ * @memberOf Stack
+ * @param {string} key The key of the entry to check.
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
+ */
+function stackHas(key) {
+ return this.__data__.has(key);
+}
+
+module.exports = stackHas;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_stackSet.js":
+/*!************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_stackSet.js ***!
+ \************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var ListCache = __webpack_require__(/*! ./_ListCache */ "../../node_modules/lodash/_ListCache.js"),
+ Map = __webpack_require__(/*! ./_Map */ "../../node_modules/lodash/_Map.js"),
+ MapCache = __webpack_require__(/*! ./_MapCache */ "../../node_modules/lodash/_MapCache.js");
+
+/** Used as the size to enable large array optimizations. */
+var LARGE_ARRAY_SIZE = 200;
+
+/**
+ * Sets the stack `key` to `value`.
+ *
+ * @private
+ * @name set
+ * @memberOf Stack
+ * @param {string} key The key of the value to set.
+ * @param {*} value The value to set.
+ * @returns {Object} Returns the stack cache instance.
+ */
+function stackSet(key, value) {
+ var data = this.__data__;
+ if (data instanceof ListCache) {
+ var pairs = data.__data__;
+ if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {
+ pairs.push([key, value]);
+ this.size = ++data.size;
+ return this;
+ }
+ data = this.__data__ = new MapCache(pairs);
+ }
+ data.set(key, value);
+ this.size = data.size;
+ return this;
+}
+
+module.exports = stackSet;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_strictIndexOf.js":
+/*!*****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_strictIndexOf.js ***!
+ \*****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * A specialized version of `_.indexOf` which performs strict equality
+ * comparisons of values, i.e. `===`.
+ *
+ * @private
+ * @param {Array} array The array to inspect.
+ * @param {*} value The value to search for.
+ * @param {number} fromIndex The index to search from.
+ * @returns {number} Returns the index of the matched value, else `-1`.
+ */
+function strictIndexOf(array, value, fromIndex) {
+ var index = fromIndex - 1,
+ length = array.length;
+
+ while (++index < length) {
+ if (array[index] === value) {
+ return index;
+ }
+ }
+ return -1;
+}
+
+module.exports = strictIndexOf;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_stringToArray.js":
+/*!*****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_stringToArray.js ***!
+ \*****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var asciiToArray = __webpack_require__(/*! ./_asciiToArray */ "../../node_modules/lodash/_asciiToArray.js"),
+ hasUnicode = __webpack_require__(/*! ./_hasUnicode */ "../../node_modules/lodash/_hasUnicode.js"),
+ unicodeToArray = __webpack_require__(/*! ./_unicodeToArray */ "../../node_modules/lodash/_unicodeToArray.js");
+
+/**
+ * Converts `string` to an array.
+ *
+ * @private
+ * @param {string} string The string to convert.
+ * @returns {Array} Returns the converted array.
+ */
+function stringToArray(string) {
+ return hasUnicode(string)
+ ? unicodeToArray(string)
+ : asciiToArray(string);
+}
+
+module.exports = stringToArray;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_stringToPath.js":
+/*!****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_stringToPath.js ***!
+ \****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var memoizeCapped = __webpack_require__(/*! ./_memoizeCapped */ "../../node_modules/lodash/_memoizeCapped.js");
+
+/** Used to match property names within property paths. */
+var rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;
+
+/** Used to match backslashes in property paths. */
+var reEscapeChar = /\\(\\)?/g;
+
+/**
+ * Converts `string` to a property path array.
+ *
+ * @private
+ * @param {string} string The string to convert.
+ * @returns {Array} Returns the property path array.
+ */
+var stringToPath = memoizeCapped(function(string) {
+ var result = [];
+ if (string.charCodeAt(0) === 46 /* . */) {
+ result.push('');
+ }
+ string.replace(rePropName, function(match, number, quote, subString) {
+ result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));
+ });
+ return result;
+});
+
+module.exports = stringToPath;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_toKey.js":
+/*!*********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_toKey.js ***!
+ \*********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var isSymbol = __webpack_require__(/*! ./isSymbol */ "../../node_modules/lodash/isSymbol.js");
+
+/** Used as references for various `Number` constants. */
+var INFINITY = 1 / 0;
+
+/**
+ * Converts `value` to a string key if it's not a string or symbol.
+ *
+ * @private
+ * @param {*} value The value to inspect.
+ * @returns {string|symbol} Returns the key.
+ */
+function toKey(value) {
+ if (typeof value == 'string' || isSymbol(value)) {
+ return value;
+ }
+ var result = (value + '');
+ return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;
+}
+
+module.exports = toKey;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_toSource.js":
+/*!************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_toSource.js ***!
+ \************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/** Used for built-in method references. */
+var funcProto = Function.prototype;
+
+/** Used to resolve the decompiled source of functions. */
+var funcToString = funcProto.toString;
+
+/**
+ * Converts `func` to its source code.
+ *
+ * @private
+ * @param {Function} func The function to convert.
+ * @returns {string} Returns the source code.
+ */
+function toSource(func) {
+ if (func != null) {
+ try {
+ return funcToString.call(func);
+ } catch (e) {}
+ try {
+ return (func + '');
+ } catch (e) {}
+ }
+ return '';
+}
+
+module.exports = toSource;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_unicodeToArray.js":
+/*!******************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_unicodeToArray.js ***!
+ \******************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/** Used to compose unicode character classes. */
+var rsAstralRange = '\\ud800-\\udfff',
+ rsComboMarksRange = '\\u0300-\\u036f',
+ reComboHalfMarksRange = '\\ufe20-\\ufe2f',
+ rsComboSymbolsRange = '\\u20d0-\\u20ff',
+ rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange,
+ rsVarRange = '\\ufe0e\\ufe0f';
+
+/** Used to compose unicode capture groups. */
+var rsAstral = '[' + rsAstralRange + ']',
+ rsCombo = '[' + rsComboRange + ']',
+ rsFitz = '\\ud83c[\\udffb-\\udfff]',
+ rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')',
+ rsNonAstral = '[^' + rsAstralRange + ']',
+ rsRegional = '(?:\\ud83c[\\udde6-\\uddff]){2}',
+ rsSurrPair = '[\\ud800-\\udbff][\\udc00-\\udfff]',
+ rsZWJ = '\\u200d';
+
+/** Used to compose unicode regexes. */
+var reOptMod = rsModifier + '?',
+ rsOptVar = '[' + rsVarRange + ']?',
+ rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*',
+ rsSeq = rsOptVar + reOptMod + rsOptJoin,
+ rsSymbol = '(?:' + [rsNonAstral + rsCombo + '?', rsCombo, rsRegional, rsSurrPair, rsAstral].join('|') + ')';
+
+/** Used to match [string symbols](https://mathiasbynens.be/notes/javascript-unicode). */
+var reUnicode = RegExp(rsFitz + '(?=' + rsFitz + ')|' + rsSymbol + rsSeq, 'g');
+
+/**
+ * Converts a Unicode `string` to an array.
+ *
+ * @private
+ * @param {string} string The string to convert.
+ * @returns {Array} Returns the converted array.
+ */
+function unicodeToArray(string) {
+ return string.match(reUnicode) || [];
+}
+
+module.exports = unicodeToArray;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/_unicodeWords.js":
+/*!****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/_unicodeWords.js ***!
+ \****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/** Used to compose unicode character classes. */
+var rsAstralRange = '\\ud800-\\udfff',
+ rsComboMarksRange = '\\u0300-\\u036f',
+ reComboHalfMarksRange = '\\ufe20-\\ufe2f',
+ rsComboSymbolsRange = '\\u20d0-\\u20ff',
+ rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange,
+ rsDingbatRange = '\\u2700-\\u27bf',
+ rsLowerRange = 'a-z\\xdf-\\xf6\\xf8-\\xff',
+ rsMathOpRange = '\\xac\\xb1\\xd7\\xf7',
+ rsNonCharRange = '\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf',
+ rsPunctuationRange = '\\u2000-\\u206f',
+ rsSpaceRange = ' \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000',
+ rsUpperRange = 'A-Z\\xc0-\\xd6\\xd8-\\xde',
+ rsVarRange = '\\ufe0e\\ufe0f',
+ rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange;
+
+/** Used to compose unicode capture groups. */
+var rsApos = "['\u2019]",
+ rsBreak = '[' + rsBreakRange + ']',
+ rsCombo = '[' + rsComboRange + ']',
+ rsDigits = '\\d+',
+ rsDingbat = '[' + rsDingbatRange + ']',
+ rsLower = '[' + rsLowerRange + ']',
+ rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']',
+ rsFitz = '\\ud83c[\\udffb-\\udfff]',
+ rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')',
+ rsNonAstral = '[^' + rsAstralRange + ']',
+ rsRegional = '(?:\\ud83c[\\udde6-\\uddff]){2}',
+ rsSurrPair = '[\\ud800-\\udbff][\\udc00-\\udfff]',
+ rsUpper = '[' + rsUpperRange + ']',
+ rsZWJ = '\\u200d';
+
+/** Used to compose unicode regexes. */
+var rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')',
+ rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')',
+ rsOptContrLower = '(?:' + rsApos + '(?:d|ll|m|re|s|t|ve))?',
+ rsOptContrUpper = '(?:' + rsApos + '(?:D|LL|M|RE|S|T|VE))?',
+ reOptMod = rsModifier + '?',
+ rsOptVar = '[' + rsVarRange + ']?',
+ rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*',
+ rsOrdLower = '\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])',
+ rsOrdUpper = '\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])',
+ rsSeq = rsOptVar + reOptMod + rsOptJoin,
+ rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq;
+
+/** Used to match complex or compound words. */
+var reUnicodeWord = RegExp([
+ rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')',
+ rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')',
+ rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower,
+ rsUpper + '+' + rsOptContrUpper,
+ rsOrdUpper,
+ rsOrdLower,
+ rsDigits,
+ rsEmoji
+].join('|'), 'g');
+
+/**
+ * Splits a Unicode `string` into an array of its words.
+ *
+ * @private
+ * @param {string} The string to inspect.
+ * @returns {Array} Returns the words of `string`.
+ */
+function unicodeWords(string) {
+ return string.match(reUnicodeWord) || [];
+}
+
+module.exports = unicodeWords;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/cloneDeep.js":
+/*!************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/cloneDeep.js ***!
+ \************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseClone = __webpack_require__(/*! ./_baseClone */ "../../node_modules/lodash/_baseClone.js");
+
+/** Used to compose bitmasks for cloning. */
+var CLONE_DEEP_FLAG = 1,
+ CLONE_SYMBOLS_FLAG = 4;
+
+/**
+ * This method is like `_.clone` except that it recursively clones `value`.
+ *
+ * @static
+ * @memberOf _
+ * @since 1.0.0
+ * @category Lang
+ * @param {*} value The value to recursively clone.
+ * @returns {*} Returns the deep cloned value.
+ * @see _.clone
+ * @example
+ *
+ * var objects = [{ 'a': 1 }, { 'b': 2 }];
+ *
+ * var deep = _.cloneDeep(objects);
+ * console.log(deep[0] === objects[0]);
+ * // => false
+ */
+function cloneDeep(value) {
+ return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG);
+}
+
+module.exports = cloneDeep;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/constant.js":
+/*!***********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/constant.js ***!
+ \***********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * Creates a function that returns `value`.
+ *
+ * @static
+ * @memberOf _
+ * @since 2.4.0
+ * @category Util
+ * @param {*} value The value to return from the new function.
+ * @returns {Function} Returns the new constant function.
+ * @example
+ *
+ * var objects = _.times(2, _.constant({ 'a': 1 }));
+ *
+ * console.log(objects);
+ * // => [{ 'a': 1 }, { 'a': 1 }]
+ *
+ * console.log(objects[0] === objects[1]);
+ * // => true
+ */
+function constant(value) {
+ return function() {
+ return value;
+ };
+}
+
+module.exports = constant;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/deburr.js":
+/*!*********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/deburr.js ***!
+ \*********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var deburrLetter = __webpack_require__(/*! ./_deburrLetter */ "../../node_modules/lodash/_deburrLetter.js"),
+ toString = __webpack_require__(/*! ./toString */ "../../node_modules/lodash/toString.js");
+
+/** Used to match Latin Unicode letters (excluding mathematical operators). */
+var reLatin = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g;
+
+/** Used to compose unicode character classes. */
+var rsComboMarksRange = '\\u0300-\\u036f',
+ reComboHalfMarksRange = '\\ufe20-\\ufe2f',
+ rsComboSymbolsRange = '\\u20d0-\\u20ff',
+ rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange;
+
+/** Used to compose unicode capture groups. */
+var rsCombo = '[' + rsComboRange + ']';
+
+/**
+ * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and
+ * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols).
+ */
+var reComboMark = RegExp(rsCombo, 'g');
+
+/**
+ * Deburrs `string` by converting
+ * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table)
+ * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A)
+ * letters to basic Latin letters and removing
+ * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks).
+ *
+ * @static
+ * @memberOf _
+ * @since 3.0.0
+ * @category String
+ * @param {string} [string=''] The string to deburr.
+ * @returns {string} Returns the deburred string.
+ * @example
+ *
+ * _.deburr('déjà vu');
+ * // => 'deja vu'
+ */
+function deburr(string) {
+ string = toString(string);
+ return string && string.replace(reLatin, deburrLetter).replace(reComboMark, '');
+}
+
+module.exports = deburr;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/endsWith.js":
+/*!***********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/endsWith.js ***!
+ \***********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseClamp = __webpack_require__(/*! ./_baseClamp */ "../../node_modules/lodash/_baseClamp.js"),
+ baseToString = __webpack_require__(/*! ./_baseToString */ "../../node_modules/lodash/_baseToString.js"),
+ toInteger = __webpack_require__(/*! ./toInteger */ "../../node_modules/lodash/toInteger.js"),
+ toString = __webpack_require__(/*! ./toString */ "../../node_modules/lodash/toString.js");
+
+/**
+ * Checks if `string` ends with the given target string.
+ *
+ * @static
+ * @memberOf _
+ * @since 3.0.0
+ * @category String
+ * @param {string} [string=''] The string to inspect.
+ * @param {string} [target] The string to search for.
+ * @param {number} [position=string.length] The position to search up to.
+ * @returns {boolean} Returns `true` if `string` ends with `target`,
+ * else `false`.
+ * @example
+ *
+ * _.endsWith('abc', 'c');
+ * // => true
+ *
+ * _.endsWith('abc', 'b');
+ * // => false
+ *
+ * _.endsWith('abc', 'b', 2);
+ * // => true
+ */
+function endsWith(string, target, position) {
+ string = toString(string);
+ target = baseToString(target);
+
+ var length = string.length;
+ position = position === undefined
+ ? length
+ : baseClamp(toInteger(position), 0, length);
+
+ var end = position;
+ position -= target.length;
+ return position >= 0 && string.slice(position, end) == target;
+}
+
+module.exports = endsWith;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/eq.js":
+/*!*****************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/eq.js ***!
+ \*****************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * Performs a
+ * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
+ * comparison between two values to determine if they are equivalent.
+ *
+ * @static
+ * @memberOf _
+ * @since 4.0.0
+ * @category Lang
+ * @param {*} value The value to compare.
+ * @param {*} other The other value to compare.
+ * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
+ * @example
+ *
+ * var object = { 'a': 1 };
+ * var other = { 'a': 1 };
+ *
+ * _.eq(object, object);
+ * // => true
+ *
+ * _.eq(object, other);
+ * // => false
+ *
+ * _.eq('a', 'a');
+ * // => true
+ *
+ * _.eq('a', Object('a'));
+ * // => false
+ *
+ * _.eq(NaN, NaN);
+ * // => true
+ */
+function eq(value, other) {
+ return value === other || (value !== value && other !== other);
+}
+
+module.exports = eq;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/filter.js":
+/*!*********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/filter.js ***!
+ \*********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var arrayFilter = __webpack_require__(/*! ./_arrayFilter */ "../../node_modules/lodash/_arrayFilter.js"),
+ baseFilter = __webpack_require__(/*! ./_baseFilter */ "../../node_modules/lodash/_baseFilter.js"),
+ baseIteratee = __webpack_require__(/*! ./_baseIteratee */ "../../node_modules/lodash/_baseIteratee.js"),
+ isArray = __webpack_require__(/*! ./isArray */ "../../node_modules/lodash/isArray.js");
+
+/**
+ * Iterates over elements of `collection`, returning an array of all elements
+ * `predicate` returns truthy for. The predicate is invoked with three
+ * arguments: (value, index|key, collection).
+ *
+ * **Note:** Unlike `_.remove`, this method returns a new array.
+ *
+ * @static
+ * @memberOf _
+ * @since 0.1.0
+ * @category Collection
+ * @param {Array|Object} collection The collection to iterate over.
+ * @param {Function} [predicate=_.identity] The function invoked per iteration.
+ * @returns {Array} Returns the new filtered array.
+ * @see _.reject
+ * @example
+ *
+ * var users = [
+ * { 'user': 'barney', 'age': 36, 'active': true },
+ * { 'user': 'fred', 'age': 40, 'active': false }
+ * ];
+ *
+ * _.filter(users, function(o) { return !o.active; });
+ * // => objects for ['fred']
+ *
+ * // The `_.matches` iteratee shorthand.
+ * _.filter(users, { 'age': 36, 'active': true });
+ * // => objects for ['barney']
+ *
+ * // The `_.matchesProperty` iteratee shorthand.
+ * _.filter(users, ['active', false]);
+ * // => objects for ['fred']
+ *
+ * // The `_.property` iteratee shorthand.
+ * _.filter(users, 'active');
+ * // => objects for ['barney']
+ */
+function filter(collection, predicate) {
+ var func = isArray(collection) ? arrayFilter : baseFilter;
+ return func(collection, baseIteratee(predicate, 3));
+}
+
+module.exports = filter;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/get.js":
+/*!******************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/get.js ***!
+ \******************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseGet = __webpack_require__(/*! ./_baseGet */ "../../node_modules/lodash/_baseGet.js");
+
+/**
+ * Gets the value at `path` of `object`. If the resolved value is
+ * `undefined`, the `defaultValue` is returned in its place.
+ *
+ * @static
+ * @memberOf _
+ * @since 3.7.0
+ * @category Object
+ * @param {Object} object The object to query.
+ * @param {Array|string} path The path of the property to get.
+ * @param {*} [defaultValue] The value returned for `undefined` resolved values.
+ * @returns {*} Returns the resolved value.
+ * @example
+ *
+ * var object = { 'a': [{ 'b': { 'c': 3 } }] };
+ *
+ * _.get(object, 'a[0].b.c');
+ * // => 3
+ *
+ * _.get(object, ['a', '0', 'b', 'c']);
+ * // => 3
+ *
+ * _.get(object, 'a.b.c', 'default');
+ * // => 'default'
+ */
+function get(object, path, defaultValue) {
+ var result = object == null ? undefined : baseGet(object, path);
+ return result === undefined ? defaultValue : result;
+}
+
+module.exports = get;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/has.js":
+/*!******************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/has.js ***!
+ \******************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseHas = __webpack_require__(/*! ./_baseHas */ "../../node_modules/lodash/_baseHas.js"),
+ hasPath = __webpack_require__(/*! ./_hasPath */ "../../node_modules/lodash/_hasPath.js");
+
+/**
+ * Checks if `path` is a direct property of `object`.
+ *
+ * @static
+ * @since 0.1.0
+ * @memberOf _
+ * @category Object
+ * @param {Object} object The object to query.
+ * @param {Array|string} path The path to check.
+ * @returns {boolean} Returns `true` if `path` exists, else `false`.
+ * @example
+ *
+ * var object = { 'a': { 'b': 2 } };
+ * var other = _.create({ 'a': _.create({ 'b': 2 }) });
+ *
+ * _.has(object, 'a');
+ * // => true
+ *
+ * _.has(object, 'a.b');
+ * // => true
+ *
+ * _.has(object, ['a', 'b']);
+ * // => true
+ *
+ * _.has(other, 'a');
+ * // => false
+ */
+function has(object, path) {
+ return object != null && hasPath(object, path, baseHas);
+}
+
+module.exports = has;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/hasIn.js":
+/*!********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/hasIn.js ***!
+ \********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseHasIn = __webpack_require__(/*! ./_baseHasIn */ "../../node_modules/lodash/_baseHasIn.js"),
+ hasPath = __webpack_require__(/*! ./_hasPath */ "../../node_modules/lodash/_hasPath.js");
+
+/**
+ * Checks if `path` is a direct or inherited property of `object`.
+ *
+ * @static
+ * @memberOf _
+ * @since 4.0.0
+ * @category Object
+ * @param {Object} object The object to query.
+ * @param {Array|string} path The path to check.
+ * @returns {boolean} Returns `true` if `path` exists, else `false`.
+ * @example
+ *
+ * var object = _.create({ 'a': _.create({ 'b': 2 }) });
+ *
+ * _.hasIn(object, 'a');
+ * // => true
+ *
+ * _.hasIn(object, 'a.b');
+ * // => true
+ *
+ * _.hasIn(object, ['a', 'b']);
+ * // => true
+ *
+ * _.hasIn(object, 'b');
+ * // => false
+ */
+function hasIn(object, path) {
+ return object != null && hasPath(object, path, baseHasIn);
+}
+
+module.exports = hasIn;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/head.js":
+/*!*******************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/head.js ***!
+ \*******************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * Gets the first element of `array`.
+ *
+ * @static
+ * @memberOf _
+ * @since 0.1.0
+ * @alias first
+ * @category Array
+ * @param {Array} array The array to query.
+ * @returns {*} Returns the first element of `array`.
+ * @example
+ *
+ * _.head([1, 2, 3]);
+ * // => 1
+ *
+ * _.head([]);
+ * // => undefined
+ */
+function head(array) {
+ return (array && array.length) ? array[0] : undefined;
+}
+
+module.exports = head;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/identity.js":
+/*!***********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/identity.js ***!
+ \***********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * This method returns the first argument it receives.
+ *
+ * @static
+ * @since 0.1.0
+ * @memberOf _
+ * @category Util
+ * @param {*} value Any value.
+ * @returns {*} Returns `value`.
+ * @example
+ *
+ * var object = { 'a': 1 };
+ *
+ * console.log(_.identity(object) === object);
+ * // => true
+ */
+function identity(value) {
+ return value;
+}
+
+module.exports = identity;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/includes.js":
+/*!***********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/includes.js ***!
+ \***********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseIndexOf = __webpack_require__(/*! ./_baseIndexOf */ "../../node_modules/lodash/_baseIndexOf.js"),
+ isArrayLike = __webpack_require__(/*! ./isArrayLike */ "../../node_modules/lodash/isArrayLike.js"),
+ isString = __webpack_require__(/*! ./isString */ "../../node_modules/lodash/isString.js"),
+ toInteger = __webpack_require__(/*! ./toInteger */ "../../node_modules/lodash/toInteger.js"),
+ values = __webpack_require__(/*! ./values */ "../../node_modules/lodash/values.js");
+
+/* Built-in method references for those with the same name as other `lodash` methods. */
+var nativeMax = Math.max;
+
+/**
+ * Checks if `value` is in `collection`. If `collection` is a string, it's
+ * checked for a substring of `value`, otherwise
+ * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
+ * is used for equality comparisons. If `fromIndex` is negative, it's used as
+ * the offset from the end of `collection`.
+ *
+ * @static
+ * @memberOf _
+ * @since 0.1.0
+ * @category Collection
+ * @param {Array|Object|string} collection The collection to inspect.
+ * @param {*} value The value to search for.
+ * @param {number} [fromIndex=0] The index to search from.
+ * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`.
+ * @returns {boolean} Returns `true` if `value` is found, else `false`.
+ * @example
+ *
+ * _.includes([1, 2, 3], 1);
+ * // => true
+ *
+ * _.includes([1, 2, 3], 1, 2);
+ * // => false
+ *
+ * _.includes({ 'a': 1, 'b': 2 }, 1);
+ * // => true
+ *
+ * _.includes('abcd', 'bc');
+ * // => true
+ */
+function includes(collection, value, fromIndex, guard) {
+ collection = isArrayLike(collection) ? collection : values(collection);
+ fromIndex = (fromIndex && !guard) ? toInteger(fromIndex) : 0;
+
+ var length = collection.length;
+ if (fromIndex < 0) {
+ fromIndex = nativeMax(length + fromIndex, 0);
+ }
+ return isString(collection)
+ ? (fromIndex <= length && collection.indexOf(value, fromIndex) > -1)
+ : (!!length && baseIndexOf(collection, value, fromIndex) > -1);
+}
+
+module.exports = includes;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/isArguments.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/isArguments.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseIsArguments = __webpack_require__(/*! ./_baseIsArguments */ "../../node_modules/lodash/_baseIsArguments.js"),
+ isObjectLike = __webpack_require__(/*! ./isObjectLike */ "../../node_modules/lodash/isObjectLike.js");
+
+/** Used for built-in method references. */
+var objectProto = Object.prototype;
+
+/** Used to check objects for own properties. */
+var hasOwnProperty = objectProto.hasOwnProperty;
+
+/** Built-in value references. */
+var propertyIsEnumerable = objectProto.propertyIsEnumerable;
+
+/**
+ * Checks if `value` is likely an `arguments` object.
+ *
+ * @static
+ * @memberOf _
+ * @since 0.1.0
+ * @category Lang
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is an `arguments` object,
+ * else `false`.
+ * @example
+ *
+ * _.isArguments(function() { return arguments; }());
+ * // => true
+ *
+ * _.isArguments([1, 2, 3]);
+ * // => false
+ */
+var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {
+ return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&
+ !propertyIsEnumerable.call(value, 'callee');
+};
+
+module.exports = isArguments;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/isArray.js":
+/*!**********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/isArray.js ***!
+ \**********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * Checks if `value` is classified as an `Array` object.
+ *
+ * @static
+ * @memberOf _
+ * @since 0.1.0
+ * @category Lang
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is an array, else `false`.
+ * @example
+ *
+ * _.isArray([1, 2, 3]);
+ * // => true
+ *
+ * _.isArray(document.body.children);
+ * // => false
+ *
+ * _.isArray('abc');
+ * // => false
+ *
+ * _.isArray(_.noop);
+ * // => false
+ */
+var isArray = Array.isArray;
+
+module.exports = isArray;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/isArrayLike.js":
+/*!**************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/isArrayLike.js ***!
+ \**************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var isFunction = __webpack_require__(/*! ./isFunction */ "../../node_modules/lodash/isFunction.js"),
+ isLength = __webpack_require__(/*! ./isLength */ "../../node_modules/lodash/isLength.js");
+
+/**
+ * Checks if `value` is array-like. A value is considered array-like if it's
+ * not a function and has a `value.length` that's an integer greater than or
+ * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.
+ *
+ * @static
+ * @memberOf _
+ * @since 4.0.0
+ * @category Lang
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is array-like, else `false`.
+ * @example
+ *
+ * _.isArrayLike([1, 2, 3]);
+ * // => true
+ *
+ * _.isArrayLike(document.body.children);
+ * // => true
+ *
+ * _.isArrayLike('abc');
+ * // => true
+ *
+ * _.isArrayLike(_.noop);
+ * // => false
+ */
+function isArrayLike(value) {
+ return value != null && isLength(value.length) && !isFunction(value);
+}
+
+module.exports = isArrayLike;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/isArrayLikeObject.js":
+/*!********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/isArrayLikeObject.js ***!
+ \********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var isArrayLike = __webpack_require__(/*! ./isArrayLike */ "../../node_modules/lodash/isArrayLike.js"),
+ isObjectLike = __webpack_require__(/*! ./isObjectLike */ "../../node_modules/lodash/isObjectLike.js");
+
+/**
+ * This method is like `_.isArrayLike` except that it also checks if `value`
+ * is an object.
+ *
+ * @static
+ * @memberOf _
+ * @since 4.0.0
+ * @category Lang
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is an array-like object,
+ * else `false`.
+ * @example
+ *
+ * _.isArrayLikeObject([1, 2, 3]);
+ * // => true
+ *
+ * _.isArrayLikeObject(document.body.children);
+ * // => true
+ *
+ * _.isArrayLikeObject('abc');
+ * // => false
+ *
+ * _.isArrayLikeObject(_.noop);
+ * // => false
+ */
+function isArrayLikeObject(value) {
+ return isObjectLike(value) && isArrayLike(value);
+}
+
+module.exports = isArrayLikeObject;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/isBuffer.js":
+/*!***********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/isBuffer.js ***!
+ \***********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+/* WEBPACK VAR INJECTION */(function(module) {var root = __webpack_require__(/*! ./_root */ "../../node_modules/lodash/_root.js"),
+ stubFalse = __webpack_require__(/*! ./stubFalse */ "../../node_modules/lodash/stubFalse.js");
+
+/** Detect free variable `exports`. */
+var freeExports = true && exports && !exports.nodeType && exports;
+
+/** Detect free variable `module`. */
+var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;
+
+/** Detect the popular CommonJS extension `module.exports`. */
+var moduleExports = freeModule && freeModule.exports === freeExports;
+
+/** Built-in value references. */
+var Buffer = moduleExports ? root.Buffer : undefined;
+
+/* Built-in method references for those with the same name as other `lodash` methods. */
+var nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;
+
+/**
+ * Checks if `value` is a buffer.
+ *
+ * @static
+ * @memberOf _
+ * @since 4.3.0
+ * @category Lang
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.
+ * @example
+ *
+ * _.isBuffer(new Buffer(2));
+ * // => true
+ *
+ * _.isBuffer(new Uint8Array(2));
+ * // => false
+ */
+var isBuffer = nativeIsBuffer || stubFalse;
+
+module.exports = isBuffer;
+
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../webpack/buildin/module.js */ "../../node_modules/webpack/buildin/module.js")(module)))
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/isEmpty.js":
+/*!**********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/isEmpty.js ***!
+ \**********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseKeys = __webpack_require__(/*! ./_baseKeys */ "../../node_modules/lodash/_baseKeys.js"),
+ getTag = __webpack_require__(/*! ./_getTag */ "../../node_modules/lodash/_getTag.js"),
+ isArguments = __webpack_require__(/*! ./isArguments */ "../../node_modules/lodash/isArguments.js"),
+ isArray = __webpack_require__(/*! ./isArray */ "../../node_modules/lodash/isArray.js"),
+ isArrayLike = __webpack_require__(/*! ./isArrayLike */ "../../node_modules/lodash/isArrayLike.js"),
+ isBuffer = __webpack_require__(/*! ./isBuffer */ "../../node_modules/lodash/isBuffer.js"),
+ isPrototype = __webpack_require__(/*! ./_isPrototype */ "../../node_modules/lodash/_isPrototype.js"),
+ isTypedArray = __webpack_require__(/*! ./isTypedArray */ "../../node_modules/lodash/isTypedArray.js");
+
+/** `Object#toString` result references. */
+var mapTag = '[object Map]',
+ setTag = '[object Set]';
+
+/** Used for built-in method references. */
+var objectProto = Object.prototype;
+
+/** Used to check objects for own properties. */
+var hasOwnProperty = objectProto.hasOwnProperty;
+
+/**
+ * Checks if `value` is an empty object, collection, map, or set.
+ *
+ * Objects are considered empty if they have no own enumerable string keyed
+ * properties.
+ *
+ * Array-like values such as `arguments` objects, arrays, buffers, strings, or
+ * jQuery-like collections are considered empty if they have a `length` of `0`.
+ * Similarly, maps and sets are considered empty if they have a `size` of `0`.
+ *
+ * @static
+ * @memberOf _
+ * @since 0.1.0
+ * @category Lang
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is empty, else `false`.
+ * @example
+ *
+ * _.isEmpty(null);
+ * // => true
+ *
+ * _.isEmpty(true);
+ * // => true
+ *
+ * _.isEmpty(1);
+ * // => true
+ *
+ * _.isEmpty([1, 2, 3]);
+ * // => false
+ *
+ * _.isEmpty({ 'a': 1 });
+ * // => false
+ */
+function isEmpty(value) {
+ if (value == null) {
+ return true;
+ }
+ if (isArrayLike(value) &&
+ (isArray(value) || typeof value == 'string' || typeof value.splice == 'function' ||
+ isBuffer(value) || isTypedArray(value) || isArguments(value))) {
+ return !value.length;
+ }
+ var tag = getTag(value);
+ if (tag == mapTag || tag == setTag) {
+ return !value.size;
+ }
+ if (isPrototype(value)) {
+ return !baseKeys(value).length;
+ }
+ for (var key in value) {
+ if (hasOwnProperty.call(value, key)) {
+ return false;
+ }
+ }
+ return true;
+}
+
+module.exports = isEmpty;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/isFunction.js":
+/*!*************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/isFunction.js ***!
+ \*************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseGetTag = __webpack_require__(/*! ./_baseGetTag */ "../../node_modules/lodash/_baseGetTag.js"),
+ isObject = __webpack_require__(/*! ./isObject */ "../../node_modules/lodash/isObject.js");
+
+/** `Object#toString` result references. */
+var asyncTag = '[object AsyncFunction]',
+ funcTag = '[object Function]',
+ genTag = '[object GeneratorFunction]',
+ proxyTag = '[object Proxy]';
+
+/**
+ * Checks if `value` is classified as a `Function` object.
+ *
+ * @static
+ * @memberOf _
+ * @since 0.1.0
+ * @category Lang
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is a function, else `false`.
+ * @example
+ *
+ * _.isFunction(_);
+ * // => true
+ *
+ * _.isFunction(/abc/);
+ * // => false
+ */
+function isFunction(value) {
+ if (!isObject(value)) {
+ return false;
+ }
+ // The use of `Object#toString` avoids issues with the `typeof` operator
+ // in Safari 9 which returns 'object' for typed arrays and other constructors.
+ var tag = baseGetTag(value);
+ return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;
+}
+
+module.exports = isFunction;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/isLength.js":
+/*!***********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/isLength.js ***!
+ \***********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/** Used as references for various `Number` constants. */
+var MAX_SAFE_INTEGER = 9007199254740991;
+
+/**
+ * Checks if `value` is a valid array-like length.
+ *
+ * **Note:** This method is loosely based on
+ * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).
+ *
+ * @static
+ * @memberOf _
+ * @since 4.0.0
+ * @category Lang
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.
+ * @example
+ *
+ * _.isLength(3);
+ * // => true
+ *
+ * _.isLength(Number.MIN_VALUE);
+ * // => false
+ *
+ * _.isLength(Infinity);
+ * // => false
+ *
+ * _.isLength('3');
+ * // => false
+ */
+function isLength(value) {
+ return typeof value == 'number' &&
+ value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;
+}
+
+module.exports = isLength;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/isMap.js":
+/*!********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/isMap.js ***!
+ \********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseIsMap = __webpack_require__(/*! ./_baseIsMap */ "../../node_modules/lodash/_baseIsMap.js"),
+ baseUnary = __webpack_require__(/*! ./_baseUnary */ "../../node_modules/lodash/_baseUnary.js"),
+ nodeUtil = __webpack_require__(/*! ./_nodeUtil */ "../../node_modules/lodash/_nodeUtil.js");
+
+/* Node.js helper references. */
+var nodeIsMap = nodeUtil && nodeUtil.isMap;
+
+/**
+ * Checks if `value` is classified as a `Map` object.
+ *
+ * @static
+ * @memberOf _
+ * @since 4.3.0
+ * @category Lang
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is a map, else `false`.
+ * @example
+ *
+ * _.isMap(new Map);
+ * // => true
+ *
+ * _.isMap(new WeakMap);
+ * // => false
+ */
+var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap;
+
+module.exports = isMap;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/isObject.js":
+/*!***********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/isObject.js ***!
+ \***********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * Checks if `value` is the
+ * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
+ * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
+ *
+ * @static
+ * @memberOf _
+ * @since 0.1.0
+ * @category Lang
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is an object, else `false`.
+ * @example
+ *
+ * _.isObject({});
+ * // => true
+ *
+ * _.isObject([1, 2, 3]);
+ * // => true
+ *
+ * _.isObject(_.noop);
+ * // => true
+ *
+ * _.isObject(null);
+ * // => false
+ */
+function isObject(value) {
+ var type = typeof value;
+ return value != null && (type == 'object' || type == 'function');
+}
+
+module.exports = isObject;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/isObjectLike.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/isObjectLike.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * Checks if `value` is object-like. A value is object-like if it's not `null`
+ * and has a `typeof` result of "object".
+ *
+ * @static
+ * @memberOf _
+ * @since 4.0.0
+ * @category Lang
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
+ * @example
+ *
+ * _.isObjectLike({});
+ * // => true
+ *
+ * _.isObjectLike([1, 2, 3]);
+ * // => true
+ *
+ * _.isObjectLike(_.noop);
+ * // => false
+ *
+ * _.isObjectLike(null);
+ * // => false
+ */
+function isObjectLike(value) {
+ return value != null && typeof value == 'object';
+}
+
+module.exports = isObjectLike;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/isPlainObject.js":
+/*!****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/isPlainObject.js ***!
+ \****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseGetTag = __webpack_require__(/*! ./_baseGetTag */ "../../node_modules/lodash/_baseGetTag.js"),
+ getPrototype = __webpack_require__(/*! ./_getPrototype */ "../../node_modules/lodash/_getPrototype.js"),
+ isObjectLike = __webpack_require__(/*! ./isObjectLike */ "../../node_modules/lodash/isObjectLike.js");
+
+/** `Object#toString` result references. */
+var objectTag = '[object Object]';
+
+/** Used for built-in method references. */
+var funcProto = Function.prototype,
+ objectProto = Object.prototype;
+
+/** Used to resolve the decompiled source of functions. */
+var funcToString = funcProto.toString;
+
+/** Used to check objects for own properties. */
+var hasOwnProperty = objectProto.hasOwnProperty;
+
+/** Used to infer the `Object` constructor. */
+var objectCtorString = funcToString.call(Object);
+
+/**
+ * Checks if `value` is a plain object, that is, an object created by the
+ * `Object` constructor or one with a `[[Prototype]]` of `null`.
+ *
+ * @static
+ * @memberOf _
+ * @since 0.8.0
+ * @category Lang
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.
+ * @example
+ *
+ * function Foo() {
+ * this.a = 1;
+ * }
+ *
+ * _.isPlainObject(new Foo);
+ * // => false
+ *
+ * _.isPlainObject([1, 2, 3]);
+ * // => false
+ *
+ * _.isPlainObject({ 'x': 0, 'y': 0 });
+ * // => true
+ *
+ * _.isPlainObject(Object.create(null));
+ * // => true
+ */
+function isPlainObject(value) {
+ if (!isObjectLike(value) || baseGetTag(value) != objectTag) {
+ return false;
+ }
+ var proto = getPrototype(value);
+ if (proto === null) {
+ return true;
+ }
+ var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;
+ return typeof Ctor == 'function' && Ctor instanceof Ctor &&
+ funcToString.call(Ctor) == objectCtorString;
+}
+
+module.exports = isPlainObject;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/isSet.js":
+/*!********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/isSet.js ***!
+ \********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseIsSet = __webpack_require__(/*! ./_baseIsSet */ "../../node_modules/lodash/_baseIsSet.js"),
+ baseUnary = __webpack_require__(/*! ./_baseUnary */ "../../node_modules/lodash/_baseUnary.js"),
+ nodeUtil = __webpack_require__(/*! ./_nodeUtil */ "../../node_modules/lodash/_nodeUtil.js");
+
+/* Node.js helper references. */
+var nodeIsSet = nodeUtil && nodeUtil.isSet;
+
+/**
+ * Checks if `value` is classified as a `Set` object.
+ *
+ * @static
+ * @memberOf _
+ * @since 4.3.0
+ * @category Lang
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is a set, else `false`.
+ * @example
+ *
+ * _.isSet(new Set);
+ * // => true
+ *
+ * _.isSet(new WeakSet);
+ * // => false
+ */
+var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet;
+
+module.exports = isSet;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/isString.js":
+/*!***********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/isString.js ***!
+ \***********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseGetTag = __webpack_require__(/*! ./_baseGetTag */ "../../node_modules/lodash/_baseGetTag.js"),
+ isArray = __webpack_require__(/*! ./isArray */ "../../node_modules/lodash/isArray.js"),
+ isObjectLike = __webpack_require__(/*! ./isObjectLike */ "../../node_modules/lodash/isObjectLike.js");
+
+/** `Object#toString` result references. */
+var stringTag = '[object String]';
+
+/**
+ * Checks if `value` is classified as a `String` primitive or object.
+ *
+ * @static
+ * @since 0.1.0
+ * @memberOf _
+ * @category Lang
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is a string, else `false`.
+ * @example
+ *
+ * _.isString('abc');
+ * // => true
+ *
+ * _.isString(1);
+ * // => false
+ */
+function isString(value) {
+ return typeof value == 'string' ||
+ (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag);
+}
+
+module.exports = isString;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/isSymbol.js":
+/*!***********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/isSymbol.js ***!
+ \***********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseGetTag = __webpack_require__(/*! ./_baseGetTag */ "../../node_modules/lodash/_baseGetTag.js"),
+ isObjectLike = __webpack_require__(/*! ./isObjectLike */ "../../node_modules/lodash/isObjectLike.js");
+
+/** `Object#toString` result references. */
+var symbolTag = '[object Symbol]';
+
+/**
+ * Checks if `value` is classified as a `Symbol` primitive or object.
+ *
+ * @static
+ * @memberOf _
+ * @since 4.0.0
+ * @category Lang
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.
+ * @example
+ *
+ * _.isSymbol(Symbol.iterator);
+ * // => true
+ *
+ * _.isSymbol('abc');
+ * // => false
+ */
+function isSymbol(value) {
+ return typeof value == 'symbol' ||
+ (isObjectLike(value) && baseGetTag(value) == symbolTag);
+}
+
+module.exports = isSymbol;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/isTypedArray.js":
+/*!***************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/isTypedArray.js ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseIsTypedArray = __webpack_require__(/*! ./_baseIsTypedArray */ "../../node_modules/lodash/_baseIsTypedArray.js"),
+ baseUnary = __webpack_require__(/*! ./_baseUnary */ "../../node_modules/lodash/_baseUnary.js"),
+ nodeUtil = __webpack_require__(/*! ./_nodeUtil */ "../../node_modules/lodash/_nodeUtil.js");
+
+/* Node.js helper references. */
+var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;
+
+/**
+ * Checks if `value` is classified as a typed array.
+ *
+ * @static
+ * @memberOf _
+ * @since 3.0.0
+ * @category Lang
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.
+ * @example
+ *
+ * _.isTypedArray(new Uint8Array);
+ * // => true
+ *
+ * _.isTypedArray([]);
+ * // => false
+ */
+var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;
+
+module.exports = isTypedArray;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/keys.js":
+/*!*******************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/keys.js ***!
+ \*******************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var arrayLikeKeys = __webpack_require__(/*! ./_arrayLikeKeys */ "../../node_modules/lodash/_arrayLikeKeys.js"),
+ baseKeys = __webpack_require__(/*! ./_baseKeys */ "../../node_modules/lodash/_baseKeys.js"),
+ isArrayLike = __webpack_require__(/*! ./isArrayLike */ "../../node_modules/lodash/isArrayLike.js");
+
+/**
+ * Creates an array of the own enumerable property names of `object`.
+ *
+ * **Note:** Non-object values are coerced to objects. See the
+ * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)
+ * for more details.
+ *
+ * @static
+ * @since 0.1.0
+ * @memberOf _
+ * @category Object
+ * @param {Object} object The object to query.
+ * @returns {Array} Returns the array of property names.
+ * @example
+ *
+ * function Foo() {
+ * this.a = 1;
+ * this.b = 2;
+ * }
+ *
+ * Foo.prototype.c = 3;
+ *
+ * _.keys(new Foo);
+ * // => ['a', 'b'] (iteration order is not guaranteed)
+ *
+ * _.keys('hi');
+ * // => ['0', '1']
+ */
+function keys(object) {
+ return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);
+}
+
+module.exports = keys;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/keysIn.js":
+/*!*********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/keysIn.js ***!
+ \*********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var arrayLikeKeys = __webpack_require__(/*! ./_arrayLikeKeys */ "../../node_modules/lodash/_arrayLikeKeys.js"),
+ baseKeysIn = __webpack_require__(/*! ./_baseKeysIn */ "../../node_modules/lodash/_baseKeysIn.js"),
+ isArrayLike = __webpack_require__(/*! ./isArrayLike */ "../../node_modules/lodash/isArrayLike.js");
+
+/**
+ * Creates an array of the own and inherited enumerable property names of `object`.
+ *
+ * **Note:** Non-object values are coerced to objects.
+ *
+ * @static
+ * @memberOf _
+ * @since 3.0.0
+ * @category Object
+ * @param {Object} object The object to query.
+ * @returns {Array} Returns the array of property names.
+ * @example
+ *
+ * function Foo() {
+ * this.a = 1;
+ * this.b = 2;
+ * }
+ *
+ * Foo.prototype.c = 3;
+ *
+ * _.keysIn(new Foo);
+ * // => ['a', 'b', 'c'] (iteration order is not guaranteed)
+ */
+function keysIn(object) {
+ return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);
+}
+
+module.exports = keysIn;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/last.js":
+/*!*******************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/last.js ***!
+ \*******************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * Gets the last element of `array`.
+ *
+ * @static
+ * @memberOf _
+ * @since 0.1.0
+ * @category Array
+ * @param {Array} array The array to query.
+ * @returns {*} Returns the last element of `array`.
+ * @example
+ *
+ * _.last([1, 2, 3]);
+ * // => 3
+ */
+function last(array) {
+ var length = array == null ? 0 : array.length;
+ return length ? array[length - 1] : undefined;
+}
+
+module.exports = last;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/maxBy.js":
+/*!********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/maxBy.js ***!
+ \********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseExtremum = __webpack_require__(/*! ./_baseExtremum */ "../../node_modules/lodash/_baseExtremum.js"),
+ baseGt = __webpack_require__(/*! ./_baseGt */ "../../node_modules/lodash/_baseGt.js"),
+ baseIteratee = __webpack_require__(/*! ./_baseIteratee */ "../../node_modules/lodash/_baseIteratee.js");
+
+/**
+ * This method is like `_.max` except that it accepts `iteratee` which is
+ * invoked for each element in `array` to generate the criterion by which
+ * the value is ranked. The iteratee is invoked with one argument: (value).
+ *
+ * @static
+ * @memberOf _
+ * @since 4.0.0
+ * @category Math
+ * @param {Array} array The array to iterate over.
+ * @param {Function} [iteratee=_.identity] The iteratee invoked per element.
+ * @returns {*} Returns the maximum value.
+ * @example
+ *
+ * var objects = [{ 'n': 1 }, { 'n': 2 }];
+ *
+ * _.maxBy(objects, function(o) { return o.n; });
+ * // => { 'n': 2 }
+ *
+ * // The `_.property` iteratee shorthand.
+ * _.maxBy(objects, 'n');
+ * // => { 'n': 2 }
+ */
+function maxBy(array, iteratee) {
+ return (array && array.length)
+ ? baseExtremum(array, baseIteratee(iteratee, 2), baseGt)
+ : undefined;
+}
+
+module.exports = maxBy;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/memoize.js":
+/*!**********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/memoize.js ***!
+ \**********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var MapCache = __webpack_require__(/*! ./_MapCache */ "../../node_modules/lodash/_MapCache.js");
+
+/** Error message constants. */
+var FUNC_ERROR_TEXT = 'Expected a function';
+
+/**
+ * Creates a function that memoizes the result of `func`. If `resolver` is
+ * provided, it determines the cache key for storing the result based on the
+ * arguments provided to the memoized function. By default, the first argument
+ * provided to the memoized function is used as the map cache key. The `func`
+ * is invoked with the `this` binding of the memoized function.
+ *
+ * **Note:** The cache is exposed as the `cache` property on the memoized
+ * function. Its creation may be customized by replacing the `_.memoize.Cache`
+ * constructor with one whose instances implement the
+ * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)
+ * method interface of `clear`, `delete`, `get`, `has`, and `set`.
+ *
+ * @static
+ * @memberOf _
+ * @since 0.1.0
+ * @category Function
+ * @param {Function} func The function to have its output memoized.
+ * @param {Function} [resolver] The function to resolve the cache key.
+ * @returns {Function} Returns the new memoized function.
+ * @example
+ *
+ * var object = { 'a': 1, 'b': 2 };
+ * var other = { 'c': 3, 'd': 4 };
+ *
+ * var values = _.memoize(_.values);
+ * values(object);
+ * // => [1, 2]
+ *
+ * values(other);
+ * // => [3, 4]
+ *
+ * object.a = 2;
+ * values(object);
+ * // => [1, 2]
+ *
+ * // Modify the result cache.
+ * values.cache.set(object, ['a', 'b']);
+ * values(object);
+ * // => ['a', 'b']
+ *
+ * // Replace `_.memoize.Cache`.
+ * _.memoize.Cache = WeakMap;
+ */
+function memoize(func, resolver) {
+ if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {
+ throw new TypeError(FUNC_ERROR_TEXT);
+ }
+ var memoized = function() {
+ var args = arguments,
+ key = resolver ? resolver.apply(this, args) : args[0],
+ cache = memoized.cache;
+
+ if (cache.has(key)) {
+ return cache.get(key);
+ }
+ var result = func.apply(this, args);
+ memoized.cache = cache.set(key, result) || cache;
+ return result;
+ };
+ memoized.cache = new (memoize.Cache || MapCache);
+ return memoized;
+}
+
+// Expose `MapCache`.
+memoize.Cache = MapCache;
+
+module.exports = memoize;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/merge.js":
+/*!********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/merge.js ***!
+ \********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseMerge = __webpack_require__(/*! ./_baseMerge */ "../../node_modules/lodash/_baseMerge.js"),
+ createAssigner = __webpack_require__(/*! ./_createAssigner */ "../../node_modules/lodash/_createAssigner.js");
+
+/**
+ * This method is like `_.assign` except that it recursively merges own and
+ * inherited enumerable string keyed properties of source objects into the
+ * destination object. Source properties that resolve to `undefined` are
+ * skipped if a destination value exists. Array and plain object properties
+ * are merged recursively. Other objects and value types are overridden by
+ * assignment. Source objects are applied from left to right. Subsequent
+ * sources overwrite property assignments of previous sources.
+ *
+ * **Note:** This method mutates `object`.
+ *
+ * @static
+ * @memberOf _
+ * @since 0.5.0
+ * @category Object
+ * @param {Object} object The destination object.
+ * @param {...Object} [sources] The source objects.
+ * @returns {Object} Returns `object`.
+ * @example
+ *
+ * var object = {
+ * 'a': [{ 'b': 2 }, { 'd': 4 }]
+ * };
+ *
+ * var other = {
+ * 'a': [{ 'c': 3 }, { 'e': 5 }]
+ * };
+ *
+ * _.merge(object, other);
+ * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }
+ */
+var merge = createAssigner(function(object, source, srcIndex) {
+ baseMerge(object, source, srcIndex);
+});
+
+module.exports = merge;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/noop.js":
+/*!*******************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/noop.js ***!
+ \*******************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * This method returns `undefined`.
+ *
+ * @static
+ * @memberOf _
+ * @since 2.3.0
+ * @category Util
+ * @example
+ *
+ * _.times(2, _.noop);
+ * // => [undefined, undefined]
+ */
+function noop() {
+ // No operation performed.
+}
+
+module.exports = noop;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/property.js":
+/*!***********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/property.js ***!
+ \***********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseProperty = __webpack_require__(/*! ./_baseProperty */ "../../node_modules/lodash/_baseProperty.js"),
+ basePropertyDeep = __webpack_require__(/*! ./_basePropertyDeep */ "../../node_modules/lodash/_basePropertyDeep.js"),
+ isKey = __webpack_require__(/*! ./_isKey */ "../../node_modules/lodash/_isKey.js"),
+ toKey = __webpack_require__(/*! ./_toKey */ "../../node_modules/lodash/_toKey.js");
+
+/**
+ * Creates a function that returns the value at `path` of a given object.
+ *
+ * @static
+ * @memberOf _
+ * @since 2.4.0
+ * @category Util
+ * @param {Array|string} path The path of the property to get.
+ * @returns {Function} Returns the new accessor function.
+ * @example
+ *
+ * var objects = [
+ * { 'a': { 'b': 2 } },
+ * { 'a': { 'b': 1 } }
+ * ];
+ *
+ * _.map(objects, _.property('a.b'));
+ * // => [2, 1]
+ *
+ * _.map(_.sortBy(objects, _.property(['a', 'b'])), 'a.b');
+ * // => [1, 2]
+ */
+function property(path) {
+ return isKey(path) ? baseProperty(toKey(path)) : basePropertyDeep(path);
+}
+
+module.exports = property;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/range.js":
+/*!********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/range.js ***!
+ \********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var createRange = __webpack_require__(/*! ./_createRange */ "../../node_modules/lodash/_createRange.js");
+
+/**
+ * Creates an array of numbers (positive and/or negative) progressing from
+ * `start` up to, but not including, `end`. A step of `-1` is used if a negative
+ * `start` is specified without an `end` or `step`. If `end` is not specified,
+ * it's set to `start` with `start` then set to `0`.
+ *
+ * **Note:** JavaScript follows the IEEE-754 standard for resolving
+ * floating-point values which can produce unexpected results.
+ *
+ * @static
+ * @since 0.1.0
+ * @memberOf _
+ * @category Util
+ * @param {number} [start=0] The start of the range.
+ * @param {number} end The end of the range.
+ * @param {number} [step=1] The value to increment or decrement by.
+ * @returns {Array} Returns the range of numbers.
+ * @see _.inRange, _.rangeRight
+ * @example
+ *
+ * _.range(4);
+ * // => [0, 1, 2, 3]
+ *
+ * _.range(-4);
+ * // => [0, -1, -2, -3]
+ *
+ * _.range(1, 5);
+ * // => [1, 2, 3, 4]
+ *
+ * _.range(0, 20, 5);
+ * // => [0, 5, 10, 15]
+ *
+ * _.range(0, -4, -1);
+ * // => [0, -1, -2, -3]
+ *
+ * _.range(1, 4, 0);
+ * // => [1, 1, 1]
+ *
+ * _.range(0);
+ * // => []
+ */
+var range = createRange();
+
+module.exports = range;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/reduce.js":
+/*!*********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/reduce.js ***!
+ \*********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var arrayReduce = __webpack_require__(/*! ./_arrayReduce */ "../../node_modules/lodash/_arrayReduce.js"),
+ baseEach = __webpack_require__(/*! ./_baseEach */ "../../node_modules/lodash/_baseEach.js"),
+ baseIteratee = __webpack_require__(/*! ./_baseIteratee */ "../../node_modules/lodash/_baseIteratee.js"),
+ baseReduce = __webpack_require__(/*! ./_baseReduce */ "../../node_modules/lodash/_baseReduce.js"),
+ isArray = __webpack_require__(/*! ./isArray */ "../../node_modules/lodash/isArray.js");
+
+/**
+ * Reduces `collection` to a value which is the accumulated result of running
+ * each element in `collection` thru `iteratee`, where each successive
+ * invocation is supplied the return value of the previous. If `accumulator`
+ * is not given, the first element of `collection` is used as the initial
+ * value. The iteratee is invoked with four arguments:
+ * (accumulator, value, index|key, collection).
+ *
+ * Many lodash methods are guarded to work as iteratees for methods like
+ * `_.reduce`, `_.reduceRight`, and `_.transform`.
+ *
+ * The guarded methods are:
+ * `assign`, `defaults`, `defaultsDeep`, `includes`, `merge`, `orderBy`,
+ * and `sortBy`
+ *
+ * @static
+ * @memberOf _
+ * @since 0.1.0
+ * @category Collection
+ * @param {Array|Object} collection The collection to iterate over.
+ * @param {Function} [iteratee=_.identity] The function invoked per iteration.
+ * @param {*} [accumulator] The initial value.
+ * @returns {*} Returns the accumulated value.
+ * @see _.reduceRight
+ * @example
+ *
+ * _.reduce([1, 2], function(sum, n) {
+ * return sum + n;
+ * }, 0);
+ * // => 3
+ *
+ * _.reduce({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) {
+ * (result[value] || (result[value] = [])).push(key);
+ * return result;
+ * }, {});
+ * // => { '1': ['a', 'c'], '2': ['b'] } (iteration order is not guaranteed)
+ */
+function reduce(collection, iteratee, accumulator) {
+ var func = isArray(collection) ? arrayReduce : baseReduce,
+ initAccum = arguments.length < 3;
+
+ return func(collection, baseIteratee(iteratee, 4), accumulator, initAccum, baseEach);
+}
+
+module.exports = reduce;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/remove.js":
+/*!*********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/remove.js ***!
+ \*********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseIteratee = __webpack_require__(/*! ./_baseIteratee */ "../../node_modules/lodash/_baseIteratee.js"),
+ basePullAt = __webpack_require__(/*! ./_basePullAt */ "../../node_modules/lodash/_basePullAt.js");
+
+/**
+ * Removes all elements from `array` that `predicate` returns truthy for
+ * and returns an array of the removed elements. The predicate is invoked
+ * with three arguments: (value, index, array).
+ *
+ * **Note:** Unlike `_.filter`, this method mutates `array`. Use `_.pull`
+ * to pull elements from an array by value.
+ *
+ * @static
+ * @memberOf _
+ * @since 2.0.0
+ * @category Array
+ * @param {Array} array The array to modify.
+ * @param {Function} [predicate=_.identity] The function invoked per iteration.
+ * @returns {Array} Returns the new array of removed elements.
+ * @example
+ *
+ * var array = [1, 2, 3, 4];
+ * var evens = _.remove(array, function(n) {
+ * return n % 2 == 0;
+ * });
+ *
+ * console.log(array);
+ * // => [1, 3]
+ *
+ * console.log(evens);
+ * // => [2, 4]
+ */
+function remove(array, predicate) {
+ var result = [];
+ if (!(array && array.length)) {
+ return result;
+ }
+ var index = -1,
+ indexes = [],
+ length = array.length;
+
+ predicate = baseIteratee(predicate, 3);
+ while (++index < length) {
+ var value = array[index];
+ if (predicate(value, index, array)) {
+ result.push(value);
+ indexes.push(index);
+ }
+ }
+ basePullAt(array, indexes);
+ return result;
+}
+
+module.exports = remove;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/set.js":
+/*!******************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/set.js ***!
+ \******************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseSet = __webpack_require__(/*! ./_baseSet */ "../../node_modules/lodash/_baseSet.js");
+
+/**
+ * Sets the value at `path` of `object`. If a portion of `path` doesn't exist,
+ * it's created. Arrays are created for missing index properties while objects
+ * are created for all other missing properties. Use `_.setWith` to customize
+ * `path` creation.
+ *
+ * **Note:** This method mutates `object`.
+ *
+ * @static
+ * @memberOf _
+ * @since 3.7.0
+ * @category Object
+ * @param {Object} object The object to modify.
+ * @param {Array|string} path The path of the property to set.
+ * @param {*} value The value to set.
+ * @returns {Object} Returns `object`.
+ * @example
+ *
+ * var object = { 'a': [{ 'b': { 'c': 3 } }] };
+ *
+ * _.set(object, 'a[0].b.c', 4);
+ * console.log(object.a[0].b.c);
+ * // => 4
+ *
+ * _.set(object, ['x', '0', 'y', 'z'], 5);
+ * console.log(object.x[0].y.z);
+ * // => 5
+ */
+function set(object, path, value) {
+ return object == null ? object : baseSet(object, path, value);
+}
+
+module.exports = set;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/startCase.js":
+/*!************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/startCase.js ***!
+ \************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var createCompounder = __webpack_require__(/*! ./_createCompounder */ "../../node_modules/lodash/_createCompounder.js"),
+ upperFirst = __webpack_require__(/*! ./upperFirst */ "../../node_modules/lodash/upperFirst.js");
+
+/**
+ * Converts `string` to
+ * [start case](https://en.wikipedia.org/wiki/Letter_case#Stylistic_or_specialised_usage).
+ *
+ * @static
+ * @memberOf _
+ * @since 3.1.0
+ * @category String
+ * @param {string} [string=''] The string to convert.
+ * @returns {string} Returns the start cased string.
+ * @example
+ *
+ * _.startCase('--foo-bar--');
+ * // => 'Foo Bar'
+ *
+ * _.startCase('fooBar');
+ * // => 'Foo Bar'
+ *
+ * _.startCase('__FOO_BAR__');
+ * // => 'FOO BAR'
+ */
+var startCase = createCompounder(function(result, word, index) {
+ return result + (index ? ' ' : '') + upperFirst(word);
+});
+
+module.exports = startCase;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/stubArray.js":
+/*!************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/stubArray.js ***!
+ \************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * This method returns a new empty array.
+ *
+ * @static
+ * @memberOf _
+ * @since 4.13.0
+ * @category Util
+ * @returns {Array} Returns the new empty array.
+ * @example
+ *
+ * var arrays = _.times(2, _.stubArray);
+ *
+ * console.log(arrays);
+ * // => [[], []]
+ *
+ * console.log(arrays[0] === arrays[1]);
+ * // => false
+ */
+function stubArray() {
+ return [];
+}
+
+module.exports = stubArray;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/stubFalse.js":
+/*!************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/stubFalse.js ***!
+ \************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+/**
+ * This method returns `false`.
+ *
+ * @static
+ * @memberOf _
+ * @since 4.13.0
+ * @category Util
+ * @returns {boolean} Returns `false`.
+ * @example
+ *
+ * _.times(2, _.stubFalse);
+ * // => [false, false]
+ */
+function stubFalse() {
+ return false;
+}
+
+module.exports = stubFalse;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/toFinite.js":
+/*!***********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/toFinite.js ***!
+ \***********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var toNumber = __webpack_require__(/*! ./toNumber */ "../../node_modules/lodash/toNumber.js");
+
+/** Used as references for various `Number` constants. */
+var INFINITY = 1 / 0,
+ MAX_INTEGER = 1.7976931348623157e+308;
+
+/**
+ * Converts `value` to a finite number.
+ *
+ * @static
+ * @memberOf _
+ * @since 4.12.0
+ * @category Lang
+ * @param {*} value The value to convert.
+ * @returns {number} Returns the converted number.
+ * @example
+ *
+ * _.toFinite(3.2);
+ * // => 3.2
+ *
+ * _.toFinite(Number.MIN_VALUE);
+ * // => 5e-324
+ *
+ * _.toFinite(Infinity);
+ * // => 1.7976931348623157e+308
+ *
+ * _.toFinite('3.2');
+ * // => 3.2
+ */
+function toFinite(value) {
+ if (!value) {
+ return value === 0 ? value : 0;
+ }
+ value = toNumber(value);
+ if (value === INFINITY || value === -INFINITY) {
+ var sign = (value < 0 ? -1 : 1);
+ return sign * MAX_INTEGER;
+ }
+ return value === value ? value : 0;
+}
+
+module.exports = toFinite;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/toInteger.js":
+/*!************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/toInteger.js ***!
+ \************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var toFinite = __webpack_require__(/*! ./toFinite */ "../../node_modules/lodash/toFinite.js");
+
+/**
+ * Converts `value` to an integer.
+ *
+ * **Note:** This method is loosely based on
+ * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger).
+ *
+ * @static
+ * @memberOf _
+ * @since 4.0.0
+ * @category Lang
+ * @param {*} value The value to convert.
+ * @returns {number} Returns the converted integer.
+ * @example
+ *
+ * _.toInteger(3.2);
+ * // => 3
+ *
+ * _.toInteger(Number.MIN_VALUE);
+ * // => 0
+ *
+ * _.toInteger(Infinity);
+ * // => 1.7976931348623157e+308
+ *
+ * _.toInteger('3.2');
+ * // => 3
+ */
+function toInteger(value) {
+ var result = toFinite(value),
+ remainder = result % 1;
+
+ return result === result ? (remainder ? result - remainder : result) : 0;
+}
+
+module.exports = toInteger;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/toNumber.js":
+/*!***********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/toNumber.js ***!
+ \***********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var isObject = __webpack_require__(/*! ./isObject */ "../../node_modules/lodash/isObject.js"),
+ isSymbol = __webpack_require__(/*! ./isSymbol */ "../../node_modules/lodash/isSymbol.js");
+
+/** Used as references for various `Number` constants. */
+var NAN = 0 / 0;
+
+/** Used to match leading and trailing whitespace. */
+var reTrim = /^\s+|\s+$/g;
+
+/** Used to detect bad signed hexadecimal string values. */
+var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;
+
+/** Used to detect binary string values. */
+var reIsBinary = /^0b[01]+$/i;
+
+/** Used to detect octal string values. */
+var reIsOctal = /^0o[0-7]+$/i;
+
+/** Built-in method references without a dependency on `root`. */
+var freeParseInt = parseInt;
+
+/**
+ * Converts `value` to a number.
+ *
+ * @static
+ * @memberOf _
+ * @since 4.0.0
+ * @category Lang
+ * @param {*} value The value to process.
+ * @returns {number} Returns the number.
+ * @example
+ *
+ * _.toNumber(3.2);
+ * // => 3.2
+ *
+ * _.toNumber(Number.MIN_VALUE);
+ * // => 5e-324
+ *
+ * _.toNumber(Infinity);
+ * // => Infinity
+ *
+ * _.toNumber('3.2');
+ * // => 3.2
+ */
+function toNumber(value) {
+ if (typeof value == 'number') {
+ return value;
+ }
+ if (isSymbol(value)) {
+ return NAN;
+ }
+ if (isObject(value)) {
+ var other = typeof value.valueOf == 'function' ? value.valueOf() : value;
+ value = isObject(other) ? (other + '') : other;
+ }
+ if (typeof value != 'string') {
+ return value === 0 ? value : +value;
+ }
+ value = value.replace(reTrim, '');
+ var isBinary = reIsBinary.test(value);
+ return (isBinary || reIsOctal.test(value))
+ ? freeParseInt(value.slice(2), isBinary ? 2 : 8)
+ : (reIsBadHex.test(value) ? NAN : +value);
+}
+
+module.exports = toNumber;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/toPairs.js":
+/*!**********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/toPairs.js ***!
+ \**********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var createToPairs = __webpack_require__(/*! ./_createToPairs */ "../../node_modules/lodash/_createToPairs.js"),
+ keys = __webpack_require__(/*! ./keys */ "../../node_modules/lodash/keys.js");
+
+/**
+ * Creates an array of own enumerable string keyed-value pairs for `object`
+ * which can be consumed by `_.fromPairs`. If `object` is a map or set, its
+ * entries are returned.
+ *
+ * @static
+ * @memberOf _
+ * @since 4.0.0
+ * @alias entries
+ * @category Object
+ * @param {Object} object The object to query.
+ * @returns {Array} Returns the key-value pairs.
+ * @example
+ *
+ * function Foo() {
+ * this.a = 1;
+ * this.b = 2;
+ * }
+ *
+ * Foo.prototype.c = 3;
+ *
+ * _.toPairs(new Foo);
+ * // => [['a', 1], ['b', 2]] (iteration order is not guaranteed)
+ */
+var toPairs = createToPairs(keys);
+
+module.exports = toPairs;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/toPlainObject.js":
+/*!****************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/toPlainObject.js ***!
+ \****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var copyObject = __webpack_require__(/*! ./_copyObject */ "../../node_modules/lodash/_copyObject.js"),
+ keysIn = __webpack_require__(/*! ./keysIn */ "../../node_modules/lodash/keysIn.js");
+
+/**
+ * Converts `value` to a plain object flattening inherited enumerable string
+ * keyed properties of `value` to own properties of the plain object.
+ *
+ * @static
+ * @memberOf _
+ * @since 3.0.0
+ * @category Lang
+ * @param {*} value The value to convert.
+ * @returns {Object} Returns the converted plain object.
+ * @example
+ *
+ * function Foo() {
+ * this.b = 2;
+ * }
+ *
+ * Foo.prototype.c = 3;
+ *
+ * _.assign({ 'a': 1 }, new Foo);
+ * // => { 'a': 1, 'b': 2 }
+ *
+ * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));
+ * // => { 'a': 1, 'b': 2, 'c': 3 }
+ */
+function toPlainObject(value) {
+ return copyObject(value, keysIn(value));
+}
+
+module.exports = toPlainObject;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/toString.js":
+/*!***********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/toString.js ***!
+ \***********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseToString = __webpack_require__(/*! ./_baseToString */ "../../node_modules/lodash/_baseToString.js");
+
+/**
+ * Converts `value` to a string. An empty string is returned for `null`
+ * and `undefined` values. The sign of `-0` is preserved.
+ *
+ * @static
+ * @memberOf _
+ * @since 4.0.0
+ * @category Lang
+ * @param {*} value The value to convert.
+ * @returns {string} Returns the converted string.
+ * @example
+ *
+ * _.toString(null);
+ * // => ''
+ *
+ * _.toString(-0);
+ * // => '-0'
+ *
+ * _.toString([1, 2, 3]);
+ * // => '1,2,3'
+ */
+function toString(value) {
+ return value == null ? '' : baseToString(value);
+}
+
+module.exports = toString;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/union.js":
+/*!********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/union.js ***!
+ \********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseFlatten = __webpack_require__(/*! ./_baseFlatten */ "../../node_modules/lodash/_baseFlatten.js"),
+ baseRest = __webpack_require__(/*! ./_baseRest */ "../../node_modules/lodash/_baseRest.js"),
+ baseUniq = __webpack_require__(/*! ./_baseUniq */ "../../node_modules/lodash/_baseUniq.js"),
+ isArrayLikeObject = __webpack_require__(/*! ./isArrayLikeObject */ "../../node_modules/lodash/isArrayLikeObject.js");
+
+/**
+ * Creates an array of unique values, in order, from all given arrays using
+ * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
+ * for equality comparisons.
+ *
+ * @static
+ * @memberOf _
+ * @since 0.1.0
+ * @category Array
+ * @param {...Array} [arrays] The arrays to inspect.
+ * @returns {Array} Returns the new array of combined values.
+ * @example
+ *
+ * _.union([2], [1, 2]);
+ * // => [2, 1]
+ */
+var union = baseRest(function(arrays) {
+ return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true));
+});
+
+module.exports = union;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/upperFirst.js":
+/*!*************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/upperFirst.js ***!
+ \*************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var createCaseFirst = __webpack_require__(/*! ./_createCaseFirst */ "../../node_modules/lodash/_createCaseFirst.js");
+
+/**
+ * Converts the first character of `string` to upper case.
+ *
+ * @static
+ * @memberOf _
+ * @since 4.0.0
+ * @category String
+ * @param {string} [string=''] The string to convert.
+ * @returns {string} Returns the converted string.
+ * @example
+ *
+ * _.upperFirst('fred');
+ * // => 'Fred'
+ *
+ * _.upperFirst('FRED');
+ * // => 'FRED'
+ */
+var upperFirst = createCaseFirst('toUpperCase');
+
+module.exports = upperFirst;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/values.js":
+/*!*********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/values.js ***!
+ \*********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var baseValues = __webpack_require__(/*! ./_baseValues */ "../../node_modules/lodash/_baseValues.js"),
+ keys = __webpack_require__(/*! ./keys */ "../../node_modules/lodash/keys.js");
+
+/**
+ * Creates an array of the own enumerable string keyed property values of `object`.
+ *
+ * **Note:** Non-object values are coerced to objects.
+ *
+ * @static
+ * @since 0.1.0
+ * @memberOf _
+ * @category Object
+ * @param {Object} object The object to query.
+ * @returns {Array} Returns the array of property values.
+ * @example
+ *
+ * function Foo() {
+ * this.a = 1;
+ * this.b = 2;
+ * }
+ *
+ * Foo.prototype.c = 3;
+ *
+ * _.values(new Foo);
+ * // => [1, 2] (iteration order is not guaranteed)
+ *
+ * _.values('hi');
+ * // => ['h', 'i']
+ */
+function values(object) {
+ return object == null ? [] : baseValues(object, keys(object));
+}
+
+module.exports = values;
+
+
+/***/ }),
+
+/***/ "../../node_modules/lodash/words.js":
+/*!********************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/lodash/words.js ***!
+ \********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var asciiWords = __webpack_require__(/*! ./_asciiWords */ "../../node_modules/lodash/_asciiWords.js"),
+ hasUnicodeWord = __webpack_require__(/*! ./_hasUnicodeWord */ "../../node_modules/lodash/_hasUnicodeWord.js"),
+ toString = __webpack_require__(/*! ./toString */ "../../node_modules/lodash/toString.js"),
+ unicodeWords = __webpack_require__(/*! ./_unicodeWords */ "../../node_modules/lodash/_unicodeWords.js");
+
+/**
+ * Splits `string` into an array of its words.
+ *
+ * @static
+ * @memberOf _
+ * @since 3.0.0
+ * @category String
+ * @param {string} [string=''] The string to inspect.
+ * @param {RegExp|string} [pattern] The pattern to match words.
+ * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
+ * @returns {Array} Returns the words of `string`.
+ * @example
+ *
+ * _.words('fred, barney, & pebbles');
+ * // => ['fred', 'barney', 'pebbles']
+ *
+ * _.words('fred, barney, & pebbles', /[^, ]+/g);
+ * // => ['fred', 'barney', '&', 'pebbles']
+ */
+function words(string, pattern, guard) {
+ string = toString(string);
+ pattern = guard ? undefined : pattern;
+
+ if (pattern === undefined) {
+ return hasUnicodeWord(string) ? unicodeWords(string) : asciiWords(string);
+ }
+ return string.match(pattern) || [];
+}
+
+module.exports = words;
+
+
+/***/ }),
+
+/***/ "../../node_modules/uri-js/dist/es5/uri.all.js":
+/*!*******************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/uri-js/dist/es5/uri.all.js ***!
+ \*******************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+/** @license URI.js v4.2.1 (c) 2011 Gary Court. License: http://github.com/garycourt/uri-js */
+(function (global, factory) {
+ true ? factory(exports) :
+ undefined;
+}(this, (function (exports) { 'use strict';
+
+function merge() {
+ for (var _len = arguments.length, sets = Array(_len), _key = 0; _key < _len; _key++) {
+ sets[_key] = arguments[_key];
+ }
+
+ if (sets.length > 1) {
+ sets[0] = sets[0].slice(0, -1);
+ var xl = sets.length - 1;
+ for (var x = 1; x < xl; ++x) {
+ sets[x] = sets[x].slice(1, -1);
+ }
+ sets[xl] = sets[xl].slice(1);
+ return sets.join('');
+ } else {
+ return sets[0];
+ }
+}
+function subexp(str) {
+ return "(?:" + str + ")";
+}
+function typeOf(o) {
+ return o === undefined ? "undefined" : o === null ? "null" : Object.prototype.toString.call(o).split(" ").pop().split("]").shift().toLowerCase();
+}
+function toUpperCase(str) {
+ return str.toUpperCase();
+}
+function toArray(obj) {
+ return obj !== undefined && obj !== null ? obj instanceof Array ? obj : typeof obj.length !== "number" || obj.split || obj.setInterval || obj.call ? [obj] : Array.prototype.slice.call(obj) : [];
+}
+function assign(target, source) {
+ var obj = target;
+ if (source) {
+ for (var key in source) {
+ obj[key] = source[key];
+ }
+ }
+ return obj;
+}
+
+function buildExps(isIRI) {
+ var ALPHA$$ = "[A-Za-z]",
+ CR$ = "[\\x0D]",
+ DIGIT$$ = "[0-9]",
+ DQUOTE$$ = "[\\x22]",
+ HEXDIG$$ = merge(DIGIT$$, "[A-Fa-f]"),
+ //case-insensitive
+ LF$$ = "[\\x0A]",
+ SP$$ = "[\\x20]",
+ PCT_ENCODED$ = subexp(subexp("%[EFef]" + HEXDIG$$ + "%" + HEXDIG$$ + HEXDIG$$ + "%" + HEXDIG$$ + HEXDIG$$) + "|" + subexp("%[89A-Fa-f]" + HEXDIG$$ + "%" + HEXDIG$$ + HEXDIG$$) + "|" + subexp("%" + HEXDIG$$ + HEXDIG$$)),
+ //expanded
+ GEN_DELIMS$$ = "[\\:\\/\\?\\#\\[\\]\\@]",
+ SUB_DELIMS$$ = "[\\!\\$\\&\\'\\(\\)\\*\\+\\,\\;\\=]",
+ RESERVED$$ = merge(GEN_DELIMS$$, SUB_DELIMS$$),
+ UCSCHAR$$ = isIRI ? "[\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]" : "[]",
+ //subset, excludes bidi control characters
+ IPRIVATE$$ = isIRI ? "[\\uE000-\\uF8FF]" : "[]",
+ //subset
+ UNRESERVED$$ = merge(ALPHA$$, DIGIT$$, "[\\-\\.\\_\\~]", UCSCHAR$$),
+ SCHEME$ = subexp(ALPHA$$ + merge(ALPHA$$, DIGIT$$, "[\\+\\-\\.]") + "*"),
+ USERINFO$ = subexp(subexp(PCT_ENCODED$ + "|" + merge(UNRESERVED$$, SUB_DELIMS$$, "[\\:]")) + "*"),
+ DEC_OCTET$ = subexp(subexp("25[0-5]") + "|" + subexp("2[0-4]" + DIGIT$$) + "|" + subexp("1" + DIGIT$$ + DIGIT$$) + "|" + subexp("[1-9]" + DIGIT$$) + "|" + DIGIT$$),
+ DEC_OCTET_RELAXED$ = subexp(subexp("25[0-5]") + "|" + subexp("2[0-4]" + DIGIT$$) + "|" + subexp("1" + DIGIT$$ + DIGIT$$) + "|" + subexp("0?[1-9]" + DIGIT$$) + "|0?0?" + DIGIT$$),
+ //relaxed parsing rules
+ IPV4ADDRESS$ = subexp(DEC_OCTET_RELAXED$ + "\\." + DEC_OCTET_RELAXED$ + "\\." + DEC_OCTET_RELAXED$ + "\\." + DEC_OCTET_RELAXED$),
+ H16$ = subexp(HEXDIG$$ + "{1,4}"),
+ LS32$ = subexp(subexp(H16$ + "\\:" + H16$) + "|" + IPV4ADDRESS$),
+ IPV6ADDRESS1$ = subexp(subexp(H16$ + "\\:") + "{6}" + LS32$),
+ // 6( h16 ":" ) ls32
+ IPV6ADDRESS2$ = subexp("\\:\\:" + subexp(H16$ + "\\:") + "{5}" + LS32$),
+ // "::" 5( h16 ":" ) ls32
+ IPV6ADDRESS3$ = subexp(subexp(H16$) + "?\\:\\:" + subexp(H16$ + "\\:") + "{4}" + LS32$),
+ //[ h16 ] "::" 4( h16 ":" ) ls32
+ IPV6ADDRESS4$ = subexp(subexp(subexp(H16$ + "\\:") + "{0,1}" + H16$) + "?\\:\\:" + subexp(H16$ + "\\:") + "{3}" + LS32$),
+ //[ *1( h16 ":" ) h16 ] "::" 3( h16 ":" ) ls32
+ IPV6ADDRESS5$ = subexp(subexp(subexp(H16$ + "\\:") + "{0,2}" + H16$) + "?\\:\\:" + subexp(H16$ + "\\:") + "{2}" + LS32$),
+ //[ *2( h16 ":" ) h16 ] "::" 2( h16 ":" ) ls32
+ IPV6ADDRESS6$ = subexp(subexp(subexp(H16$ + "\\:") + "{0,3}" + H16$) + "?\\:\\:" + H16$ + "\\:" + LS32$),
+ //[ *3( h16 ":" ) h16 ] "::" h16 ":" ls32
+ IPV6ADDRESS7$ = subexp(subexp(subexp(H16$ + "\\:") + "{0,4}" + H16$) + "?\\:\\:" + LS32$),
+ //[ *4( h16 ":" ) h16 ] "::" ls32
+ IPV6ADDRESS8$ = subexp(subexp(subexp(H16$ + "\\:") + "{0,5}" + H16$) + "?\\:\\:" + H16$),
+ //[ *5( h16 ":" ) h16 ] "::" h16
+ IPV6ADDRESS9$ = subexp(subexp(subexp(H16$ + "\\:") + "{0,6}" + H16$) + "?\\:\\:"),
+ //[ *6( h16 ":" ) h16 ] "::"
+ IPV6ADDRESS$ = subexp([IPV6ADDRESS1$, IPV6ADDRESS2$, IPV6ADDRESS3$, IPV6ADDRESS4$, IPV6ADDRESS5$, IPV6ADDRESS6$, IPV6ADDRESS7$, IPV6ADDRESS8$, IPV6ADDRESS9$].join("|")),
+ ZONEID$ = subexp(subexp(UNRESERVED$$ + "|" + PCT_ENCODED$) + "+"),
+ //RFC 6874
+ IPV6ADDRZ$ = subexp(IPV6ADDRESS$ + "\\%25" + ZONEID$),
+ //RFC 6874
+ IPV6ADDRZ_RELAXED$ = subexp(IPV6ADDRESS$ + subexp("\\%25|\\%(?!" + HEXDIG$$ + "{2})") + ZONEID$),
+ //RFC 6874, with relaxed parsing rules
+ IPVFUTURE$ = subexp("[vV]" + HEXDIG$$ + "+\\." + merge(UNRESERVED$$, SUB_DELIMS$$, "[\\:]") + "+"),
+ IP_LITERAL$ = subexp("\\[" + subexp(IPV6ADDRZ_RELAXED$ + "|" + IPV6ADDRESS$ + "|" + IPVFUTURE$) + "\\]"),
+ //RFC 6874
+ REG_NAME$ = subexp(subexp(PCT_ENCODED$ + "|" + merge(UNRESERVED$$, SUB_DELIMS$$)) + "*"),
+ HOST$ = subexp(IP_LITERAL$ + "|" + IPV4ADDRESS$ + "(?!" + REG_NAME$ + ")" + "|" + REG_NAME$),
+ PORT$ = subexp(DIGIT$$ + "*"),
+ AUTHORITY$ = subexp(subexp(USERINFO$ + "@") + "?" + HOST$ + subexp("\\:" + PORT$) + "?"),
+ PCHAR$ = subexp(PCT_ENCODED$ + "|" + merge(UNRESERVED$$, SUB_DELIMS$$, "[\\:\\@]")),
+ SEGMENT$ = subexp(PCHAR$ + "*"),
+ SEGMENT_NZ$ = subexp(PCHAR$ + "+"),
+ SEGMENT_NZ_NC$ = subexp(subexp(PCT_ENCODED$ + "|" + merge(UNRESERVED$$, SUB_DELIMS$$, "[\\@]")) + "+"),
+ PATH_ABEMPTY$ = subexp(subexp("\\/" + SEGMENT$) + "*"),
+ PATH_ABSOLUTE$ = subexp("\\/" + subexp(SEGMENT_NZ$ + PATH_ABEMPTY$) + "?"),
+ //simplified
+ PATH_NOSCHEME$ = subexp(SEGMENT_NZ_NC$ + PATH_ABEMPTY$),
+ //simplified
+ PATH_ROOTLESS$ = subexp(SEGMENT_NZ$ + PATH_ABEMPTY$),
+ //simplified
+ PATH_EMPTY$ = "(?!" + PCHAR$ + ")",
+ PATH$ = subexp(PATH_ABEMPTY$ + "|" + PATH_ABSOLUTE$ + "|" + PATH_NOSCHEME$ + "|" + PATH_ROOTLESS$ + "|" + PATH_EMPTY$),
+ QUERY$ = subexp(subexp(PCHAR$ + "|" + merge("[\\/\\?]", IPRIVATE$$)) + "*"),
+ FRAGMENT$ = subexp(subexp(PCHAR$ + "|[\\/\\?]") + "*"),
+ HIER_PART$ = subexp(subexp("\\/\\/" + AUTHORITY$ + PATH_ABEMPTY$) + "|" + PATH_ABSOLUTE$ + "|" + PATH_ROOTLESS$ + "|" + PATH_EMPTY$),
+ URI$ = subexp(SCHEME$ + "\\:" + HIER_PART$ + subexp("\\?" + QUERY$) + "?" + subexp("\\#" + FRAGMENT$) + "?"),
+ RELATIVE_PART$ = subexp(subexp("\\/\\/" + AUTHORITY$ + PATH_ABEMPTY$) + "|" + PATH_ABSOLUTE$ + "|" + PATH_NOSCHEME$ + "|" + PATH_EMPTY$),
+ RELATIVE$ = subexp(RELATIVE_PART$ + subexp("\\?" + QUERY$) + "?" + subexp("\\#" + FRAGMENT$) + "?"),
+ URI_REFERENCE$ = subexp(URI$ + "|" + RELATIVE$),
+ ABSOLUTE_URI$ = subexp(SCHEME$ + "\\:" + HIER_PART$ + subexp("\\?" + QUERY$) + "?"),
+ GENERIC_REF$ = "^(" + SCHEME$ + ")\\:" + subexp(subexp("\\/\\/(" + subexp("(" + USERINFO$ + ")@") + "?(" + HOST$ + ")" + subexp("\\:(" + PORT$ + ")") + "?)") + "?(" + PATH_ABEMPTY$ + "|" + PATH_ABSOLUTE$ + "|" + PATH_ROOTLESS$ + "|" + PATH_EMPTY$ + ")") + subexp("\\?(" + QUERY$ + ")") + "?" + subexp("\\#(" + FRAGMENT$ + ")") + "?$",
+ RELATIVE_REF$ = "^(){0}" + subexp(subexp("\\/\\/(" + subexp("(" + USERINFO$ + ")@") + "?(" + HOST$ + ")" + subexp("\\:(" + PORT$ + ")") + "?)") + "?(" + PATH_ABEMPTY$ + "|" + PATH_ABSOLUTE$ + "|" + PATH_NOSCHEME$ + "|" + PATH_EMPTY$ + ")") + subexp("\\?(" + QUERY$ + ")") + "?" + subexp("\\#(" + FRAGMENT$ + ")") + "?$",
+ ABSOLUTE_REF$ = "^(" + SCHEME$ + ")\\:" + subexp(subexp("\\/\\/(" + subexp("(" + USERINFO$ + ")@") + "?(" + HOST$ + ")" + subexp("\\:(" + PORT$ + ")") + "?)") + "?(" + PATH_ABEMPTY$ + "|" + PATH_ABSOLUTE$ + "|" + PATH_ROOTLESS$ + "|" + PATH_EMPTY$ + ")") + subexp("\\?(" + QUERY$ + ")") + "?$",
+ SAMEDOC_REF$ = "^" + subexp("\\#(" + FRAGMENT$ + ")") + "?$",
+ AUTHORITY_REF$ = "^" + subexp("(" + USERINFO$ + ")@") + "?(" + HOST$ + ")" + subexp("\\:(" + PORT$ + ")") + "?$";
+ return {
+ NOT_SCHEME: new RegExp(merge("[^]", ALPHA$$, DIGIT$$, "[\\+\\-\\.]"), "g"),
+ NOT_USERINFO: new RegExp(merge("[^\\%\\:]", UNRESERVED$$, SUB_DELIMS$$), "g"),
+ NOT_HOST: new RegExp(merge("[^\\%\\[\\]\\:]", UNRESERVED$$, SUB_DELIMS$$), "g"),
+ NOT_PATH: new RegExp(merge("[^\\%\\/\\:\\@]", UNRESERVED$$, SUB_DELIMS$$), "g"),
+ NOT_PATH_NOSCHEME: new RegExp(merge("[^\\%\\/\\@]", UNRESERVED$$, SUB_DELIMS$$), "g"),
+ NOT_QUERY: new RegExp(merge("[^\\%]", UNRESERVED$$, SUB_DELIMS$$, "[\\:\\@\\/\\?]", IPRIVATE$$), "g"),
+ NOT_FRAGMENT: new RegExp(merge("[^\\%]", UNRESERVED$$, SUB_DELIMS$$, "[\\:\\@\\/\\?]"), "g"),
+ ESCAPE: new RegExp(merge("[^]", UNRESERVED$$, SUB_DELIMS$$), "g"),
+ UNRESERVED: new RegExp(UNRESERVED$$, "g"),
+ OTHER_CHARS: new RegExp(merge("[^\\%]", UNRESERVED$$, RESERVED$$), "g"),
+ PCT_ENCODED: new RegExp(PCT_ENCODED$, "g"),
+ IPV4ADDRESS: new RegExp("^(" + IPV4ADDRESS$ + ")$"),
+ IPV6ADDRESS: new RegExp("^\\[?(" + IPV6ADDRESS$ + ")" + subexp(subexp("\\%25|\\%(?!" + HEXDIG$$ + "{2})") + "(" + ZONEID$ + ")") + "?\\]?$") //RFC 6874, with relaxed parsing rules
+ };
+}
+var URI_PROTOCOL = buildExps(false);
+
+var IRI_PROTOCOL = buildExps(true);
+
+var slicedToArray = function () {
+ function sliceIterator(arr, i) {
+ var _arr = [];
+ var _n = true;
+ var _d = false;
+ var _e = undefined;
+
+ try {
+ for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {
+ _arr.push(_s.value);
+
+ if (i && _arr.length === i) break;
+ }
+ } catch (err) {
+ _d = true;
+ _e = err;
+ } finally {
+ try {
+ if (!_n && _i["return"]) _i["return"]();
+ } finally {
+ if (_d) throw _e;
+ }
+ }
+
+ return _arr;
+ }
+
+ return function (arr, i) {
+ if (Array.isArray(arr)) {
+ return arr;
+ } else if (Symbol.iterator in Object(arr)) {
+ return sliceIterator(arr, i);
+ } else {
+ throw new TypeError("Invalid attempt to destructure non-iterable instance");
+ }
+ };
+}();
+
+
+
+
+
+
+
+
+
+
+
+
+
+var toConsumableArray = function (arr) {
+ if (Array.isArray(arr)) {
+ for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) arr2[i] = arr[i];
+
+ return arr2;
+ } else {
+ return Array.from(arr);
+ }
+};
+
+/** Highest positive signed 32-bit float value */
+
+var maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1
+
+/** Bootstring parameters */
+var base = 36;
+var tMin = 1;
+var tMax = 26;
+var skew = 38;
+var damp = 700;
+var initialBias = 72;
+var initialN = 128; // 0x80
+var delimiter = '-'; // '\x2D'
+
+/** Regular expressions */
+var regexPunycode = /^xn--/;
+var regexNonASCII = /[^\0-\x7E]/; // non-ASCII chars
+var regexSeparators = /[\x2E\u3002\uFF0E\uFF61]/g; // RFC 3490 separators
+
+/** Error messages */
+var errors = {
+ 'overflow': 'Overflow: input needs wider integers to process',
+ 'not-basic': 'Illegal input >= 0x80 (not a basic code point)',
+ 'invalid-input': 'Invalid input'
+};
+
+/** Convenience shortcuts */
+var baseMinusTMin = base - tMin;
+var floor = Math.floor;
+var stringFromCharCode = String.fromCharCode;
+
+/*--------------------------------------------------------------------------*/
+
+/**
+ * A generic error utility function.
+ * @private
+ * @param {String} type The error type.
+ * @returns {Error} Throws a `RangeError` with the applicable error message.
+ */
+function error$1(type) {
+ throw new RangeError(errors[type]);
+}
+
+/**
+ * A generic `Array#map` utility function.
+ * @private
+ * @param {Array} array The array to iterate over.
+ * @param {Function} callback The function that gets called for every array
+ * item.
+ * @returns {Array} A new array of values returned by the callback function.
+ */
+function map(array, fn) {
+ var result = [];
+ var length = array.length;
+ while (length--) {
+ result[length] = fn(array[length]);
+ }
+ return result;
+}
+
+/**
+ * A simple `Array#map`-like wrapper to work with domain name strings or email
+ * addresses.
+ * @private
+ * @param {String} domain The domain name or email address.
+ * @param {Function} callback The function that gets called for every
+ * character.
+ * @returns {Array} A new string of characters returned by the callback
+ * function.
+ */
+function mapDomain(string, fn) {
+ var parts = string.split('@');
+ var result = '';
+ if (parts.length > 1) {
+ // In email addresses, only the domain name should be punycoded. Leave
+ // the local part (i.e. everything up to `@`) intact.
+ result = parts[0] + '@';
+ string = parts[1];
+ }
+ // Avoid `split(regex)` for IE8 compatibility. See #17.
+ string = string.replace(regexSeparators, '\x2E');
+ var labels = string.split('.');
+ var encoded = map(labels, fn).join('.');
+ return result + encoded;
+}
+
+/**
+ * Creates an array containing the numeric code points of each Unicode
+ * character in the string. While JavaScript uses UCS-2 internally,
+ * this function will convert a pair of surrogate halves (each of which
+ * UCS-2 exposes as separate characters) into a single code point,
+ * matching UTF-16.
+ * @see `punycode.ucs2.encode`
+ * @see
+ * @memberOf punycode.ucs2
+ * @name decode
+ * @param {String} string The Unicode input string (UCS-2).
+ * @returns {Array} The new array of code points.
+ */
+function ucs2decode(string) {
+ var output = [];
+ var counter = 0;
+ var length = string.length;
+ while (counter < length) {
+ var value = string.charCodeAt(counter++);
+ if (value >= 0xD800 && value <= 0xDBFF && counter < length) {
+ // It's a high surrogate, and there is a next character.
+ var extra = string.charCodeAt(counter++);
+ if ((extra & 0xFC00) == 0xDC00) {
+ // Low surrogate.
+ output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);
+ } else {
+ // It's an unmatched surrogate; only append this code unit, in case the
+ // next code unit is the high surrogate of a surrogate pair.
+ output.push(value);
+ counter--;
+ }
+ } else {
+ output.push(value);
+ }
+ }
+ return output;
+}
+
+/**
+ * Creates a string based on an array of numeric code points.
+ * @see `punycode.ucs2.decode`
+ * @memberOf punycode.ucs2
+ * @name encode
+ * @param {Array} codePoints The array of numeric code points.
+ * @returns {String} The new Unicode string (UCS-2).
+ */
+var ucs2encode = function ucs2encode(array) {
+ return String.fromCodePoint.apply(String, toConsumableArray(array));
+};
+
+/**
+ * Converts a basic code point into a digit/integer.
+ * @see `digitToBasic()`
+ * @private
+ * @param {Number} codePoint The basic numeric code point value.
+ * @returns {Number} The numeric value of a basic code point (for use in
+ * representing integers) in the range `0` to `base - 1`, or `base` if
+ * the code point does not represent a value.
+ */
+var basicToDigit = function basicToDigit(codePoint) {
+ if (codePoint - 0x30 < 0x0A) {
+ return codePoint - 0x16;
+ }
+ if (codePoint - 0x41 < 0x1A) {
+ return codePoint - 0x41;
+ }
+ if (codePoint - 0x61 < 0x1A) {
+ return codePoint - 0x61;
+ }
+ return base;
+};
+
+/**
+ * Converts a digit/integer into a basic code point.
+ * @see `basicToDigit()`
+ * @private
+ * @param {Number} digit The numeric value of a basic code point.
+ * @returns {Number} The basic code point whose value (when used for
+ * representing integers) is `digit`, which needs to be in the range
+ * `0` to `base - 1`. If `flag` is non-zero, the uppercase form is
+ * used; else, the lowercase form is used. The behavior is undefined
+ * if `flag` is non-zero and `digit` has no uppercase form.
+ */
+var digitToBasic = function digitToBasic(digit, flag) {
+ // 0..25 map to ASCII a..z or A..Z
+ // 26..35 map to ASCII 0..9
+ return digit + 22 + 75 * (digit < 26) - ((flag != 0) << 5);
+};
+
+/**
+ * Bias adaptation function as per section 3.4 of RFC 3492.
+ * https://tools.ietf.org/html/rfc3492#section-3.4
+ * @private
+ */
+var adapt = function adapt(delta, numPoints, firstTime) {
+ var k = 0;
+ delta = firstTime ? floor(delta / damp) : delta >> 1;
+ delta += floor(delta / numPoints);
+ for (; /* no initialization */delta > baseMinusTMin * tMax >> 1; k += base) {
+ delta = floor(delta / baseMinusTMin);
+ }
+ return floor(k + (baseMinusTMin + 1) * delta / (delta + skew));
+};
+
+/**
+ * Converts a Punycode string of ASCII-only symbols to a string of Unicode
+ * symbols.
+ * @memberOf punycode
+ * @param {String} input The Punycode string of ASCII-only symbols.
+ * @returns {String} The resulting string of Unicode symbols.
+ */
+var decode = function decode(input) {
+ // Don't use UCS-2.
+ var output = [];
+ var inputLength = input.length;
+ var i = 0;
+ var n = initialN;
+ var bias = initialBias;
+
+ // Handle the basic code points: let `basic` be the number of input code
+ // points before the last delimiter, or `0` if there is none, then copy
+ // the first basic code points to the output.
+
+ var basic = input.lastIndexOf(delimiter);
+ if (basic < 0) {
+ basic = 0;
+ }
+
+ for (var j = 0; j < basic; ++j) {
+ // if it's not a basic code point
+ if (input.charCodeAt(j) >= 0x80) {
+ error$1('not-basic');
+ }
+ output.push(input.charCodeAt(j));
+ }
+
+ // Main decoding loop: start just after the last delimiter if any basic code
+ // points were copied; start at the beginning otherwise.
+
+ for (var index = basic > 0 ? basic + 1 : 0; index < inputLength;) /* no final expression */{
+
+ // `index` is the index of the next character to be consumed.
+ // Decode a generalized variable-length integer into `delta`,
+ // which gets added to `i`. The overflow checking is easier
+ // if we increase `i` as we go, then subtract off its starting
+ // value at the end to obtain `delta`.
+ var oldi = i;
+ for (var w = 1, k = base;; /* no condition */k += base) {
+
+ if (index >= inputLength) {
+ error$1('invalid-input');
+ }
+
+ var digit = basicToDigit(input.charCodeAt(index++));
+
+ if (digit >= base || digit > floor((maxInt - i) / w)) {
+ error$1('overflow');
+ }
+
+ i += digit * w;
+ var t = k <= bias ? tMin : k >= bias + tMax ? tMax : k - bias;
+
+ if (digit < t) {
+ break;
+ }
+
+ var baseMinusT = base - t;
+ if (w > floor(maxInt / baseMinusT)) {
+ error$1('overflow');
+ }
+
+ w *= baseMinusT;
+ }
+
+ var out = output.length + 1;
+ bias = adapt(i - oldi, out, oldi == 0);
+
+ // `i` was supposed to wrap around from `out` to `0`,
+ // incrementing `n` each time, so we'll fix that now:
+ if (floor(i / out) > maxInt - n) {
+ error$1('overflow');
+ }
+
+ n += floor(i / out);
+ i %= out;
+
+ // Insert `n` at position `i` of the output.
+ output.splice(i++, 0, n);
+ }
+
+ return String.fromCodePoint.apply(String, output);
+};
+
+/**
+ * Converts a string of Unicode symbols (e.g. a domain name label) to a
+ * Punycode string of ASCII-only symbols.
+ * @memberOf punycode
+ * @param {String} input The string of Unicode symbols.
+ * @returns {String} The resulting Punycode string of ASCII-only symbols.
+ */
+var encode = function encode(input) {
+ var output = [];
+
+ // Convert the input in UCS-2 to an array of Unicode code points.
+ input = ucs2decode(input);
+
+ // Cache the length.
+ var inputLength = input.length;
+
+ // Initialize the state.
+ var n = initialN;
+ var delta = 0;
+ var bias = initialBias;
+
+ // Handle the basic code points.
+ var _iteratorNormalCompletion = true;
+ var _didIteratorError = false;
+ var _iteratorError = undefined;
+
+ try {
+ for (var _iterator = input[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
+ var _currentValue2 = _step.value;
+
+ if (_currentValue2 < 0x80) {
+ output.push(stringFromCharCode(_currentValue2));
+ }
+ }
+ } catch (err) {
+ _didIteratorError = true;
+ _iteratorError = err;
+ } finally {
+ try {
+ if (!_iteratorNormalCompletion && _iterator.return) {
+ _iterator.return();
+ }
+ } finally {
+ if (_didIteratorError) {
+ throw _iteratorError;
+ }
+ }
+ }
+
+ var basicLength = output.length;
+ var handledCPCount = basicLength;
+
+ // `handledCPCount` is the number of code points that have been handled;
+ // `basicLength` is the number of basic code points.
+
+ // Finish the basic string with a delimiter unless it's empty.
+ if (basicLength) {
+ output.push(delimiter);
+ }
+
+ // Main encoding loop:
+ while (handledCPCount < inputLength) {
+
+ // All non-basic code points < n have been handled already. Find the next
+ // larger one:
+ var m = maxInt;
+ var _iteratorNormalCompletion2 = true;
+ var _didIteratorError2 = false;
+ var _iteratorError2 = undefined;
+
+ try {
+ for (var _iterator2 = input[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
+ var currentValue = _step2.value;
+
+ if (currentValue >= n && currentValue < m) {
+ m = currentValue;
+ }
+ }
+
+ // Increase `delta` enough to advance the decoder's state to ,
+ // but guard against overflow.
+ } catch (err) {
+ _didIteratorError2 = true;
+ _iteratorError2 = err;
+ } finally {
+ try {
+ if (!_iteratorNormalCompletion2 && _iterator2.return) {
+ _iterator2.return();
+ }
+ } finally {
+ if (_didIteratorError2) {
+ throw _iteratorError2;
+ }
+ }
+ }
+
+ var handledCPCountPlusOne = handledCPCount + 1;
+ if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) {
+ error$1('overflow');
+ }
+
+ delta += (m - n) * handledCPCountPlusOne;
+ n = m;
+
+ var _iteratorNormalCompletion3 = true;
+ var _didIteratorError3 = false;
+ var _iteratorError3 = undefined;
+
+ try {
+ for (var _iterator3 = input[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {
+ var _currentValue = _step3.value;
+
+ if (_currentValue < n && ++delta > maxInt) {
+ error$1('overflow');
+ }
+ if (_currentValue == n) {
+ // Represent delta as a generalized variable-length integer.
+ var q = delta;
+ for (var k = base;; /* no condition */k += base) {
+ var t = k <= bias ? tMin : k >= bias + tMax ? tMax : k - bias;
+ if (q < t) {
+ break;
+ }
+ var qMinusT = q - t;
+ var baseMinusT = base - t;
+ output.push(stringFromCharCode(digitToBasic(t + qMinusT % baseMinusT, 0)));
+ q = floor(qMinusT / baseMinusT);
+ }
+
+ output.push(stringFromCharCode(digitToBasic(q, 0)));
+ bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength);
+ delta = 0;
+ ++handledCPCount;
+ }
+ }
+ } catch (err) {
+ _didIteratorError3 = true;
+ _iteratorError3 = err;
+ } finally {
+ try {
+ if (!_iteratorNormalCompletion3 && _iterator3.return) {
+ _iterator3.return();
+ }
+ } finally {
+ if (_didIteratorError3) {
+ throw _iteratorError3;
+ }
+ }
+ }
+
+ ++delta;
+ ++n;
+ }
+ return output.join('');
+};
+
+/**
+ * Converts a Punycode string representing a domain name or an email address
+ * to Unicode. Only the Punycoded parts of the input will be converted, i.e.
+ * it doesn't matter if you call it on a string that has already been
+ * converted to Unicode.
+ * @memberOf punycode
+ * @param {String} input The Punycoded domain name or email address to
+ * convert to Unicode.
+ * @returns {String} The Unicode representation of the given Punycode
+ * string.
+ */
+var toUnicode = function toUnicode(input) {
+ return mapDomain(input, function (string) {
+ return regexPunycode.test(string) ? decode(string.slice(4).toLowerCase()) : string;
+ });
+};
+
+/**
+ * Converts a Unicode string representing a domain name or an email address to
+ * Punycode. Only the non-ASCII parts of the domain name will be converted,
+ * i.e. it doesn't matter if you call it with a domain that's already in
+ * ASCII.
+ * @memberOf punycode
+ * @param {String} input The domain name or email address to convert, as a
+ * Unicode string.
+ * @returns {String} The Punycode representation of the given domain name or
+ * email address.
+ */
+var toASCII = function toASCII(input) {
+ return mapDomain(input, function (string) {
+ return regexNonASCII.test(string) ? 'xn--' + encode(string) : string;
+ });
+};
+
+/*--------------------------------------------------------------------------*/
+
+/** Define the public API */
+var punycode = {
+ /**
+ * A string representing the current Punycode.js version number.
+ * @memberOf punycode
+ * @type String
+ */
+ 'version': '2.1.0',
+ /**
+ * An object of methods to convert from JavaScript's internal character
+ * representation (UCS-2) to Unicode code points, and back.
+ * @see
+ * @memberOf punycode
+ * @type Object
+ */
+ 'ucs2': {
+ 'decode': ucs2decode,
+ 'encode': ucs2encode
+ },
+ 'decode': decode,
+ 'encode': encode,
+ 'toASCII': toASCII,
+ 'toUnicode': toUnicode
+};
+
+/**
+ * URI.js
+ *
+ * @fileoverview An RFC 3986 compliant, scheme extendable URI parsing/validating/resolving library for JavaScript.
+ * @author Gary Court
+ * @see http://github.com/garycourt/uri-js
+ */
+/**
+ * Copyright 2011 Gary Court. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without modification, are
+ * permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice, this list of
+ * conditions and the following disclaimer.
+ *
+ * 2. 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.
+ *
+ * THIS SOFTWARE IS PROVIDED BY GARY COURT ``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 GARY COURT OR
+ * CONTRIBUTORS 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.
+ *
+ * The views and conclusions contained in the software and documentation are those of the
+ * authors and should not be interpreted as representing official policies, either expressed
+ * or implied, of Gary Court.
+ */
+var SCHEMES = {};
+function pctEncChar(chr) {
+ var c = chr.charCodeAt(0);
+ var e = void 0;
+ if (c < 16) e = "%0" + c.toString(16).toUpperCase();else if (c < 128) e = "%" + c.toString(16).toUpperCase();else if (c < 2048) e = "%" + (c >> 6 | 192).toString(16).toUpperCase() + "%" + (c & 63 | 128).toString(16).toUpperCase();else e = "%" + (c >> 12 | 224).toString(16).toUpperCase() + "%" + (c >> 6 & 63 | 128).toString(16).toUpperCase() + "%" + (c & 63 | 128).toString(16).toUpperCase();
+ return e;
+}
+function pctDecChars(str) {
+ var newStr = "";
+ var i = 0;
+ var il = str.length;
+ while (i < il) {
+ var c = parseInt(str.substr(i + 1, 2), 16);
+ if (c < 128) {
+ newStr += String.fromCharCode(c);
+ i += 3;
+ } else if (c >= 194 && c < 224) {
+ if (il - i >= 6) {
+ var c2 = parseInt(str.substr(i + 4, 2), 16);
+ newStr += String.fromCharCode((c & 31) << 6 | c2 & 63);
+ } else {
+ newStr += str.substr(i, 6);
+ }
+ i += 6;
+ } else if (c >= 224) {
+ if (il - i >= 9) {
+ var _c = parseInt(str.substr(i + 4, 2), 16);
+ var c3 = parseInt(str.substr(i + 7, 2), 16);
+ newStr += String.fromCharCode((c & 15) << 12 | (_c & 63) << 6 | c3 & 63);
+ } else {
+ newStr += str.substr(i, 9);
+ }
+ i += 9;
+ } else {
+ newStr += str.substr(i, 3);
+ i += 3;
+ }
+ }
+ return newStr;
+}
+function _normalizeComponentEncoding(components, protocol) {
+ function decodeUnreserved(str) {
+ var decStr = pctDecChars(str);
+ return !decStr.match(protocol.UNRESERVED) ? str : decStr;
+ }
+ if (components.scheme) components.scheme = String(components.scheme).replace(protocol.PCT_ENCODED, decodeUnreserved).toLowerCase().replace(protocol.NOT_SCHEME, "");
+ if (components.userinfo !== undefined) components.userinfo = String(components.userinfo).replace(protocol.PCT_ENCODED, decodeUnreserved).replace(protocol.NOT_USERINFO, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);
+ if (components.host !== undefined) components.host = String(components.host).replace(protocol.PCT_ENCODED, decodeUnreserved).toLowerCase().replace(protocol.NOT_HOST, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);
+ if (components.path !== undefined) components.path = String(components.path).replace(protocol.PCT_ENCODED, decodeUnreserved).replace(components.scheme ? protocol.NOT_PATH : protocol.NOT_PATH_NOSCHEME, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);
+ if (components.query !== undefined) components.query = String(components.query).replace(protocol.PCT_ENCODED, decodeUnreserved).replace(protocol.NOT_QUERY, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);
+ if (components.fragment !== undefined) components.fragment = String(components.fragment).replace(protocol.PCT_ENCODED, decodeUnreserved).replace(protocol.NOT_FRAGMENT, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);
+ return components;
+}
+
+function _stripLeadingZeros(str) {
+ return str.replace(/^0*(.*)/, "$1") || "0";
+}
+function _normalizeIPv4(host, protocol) {
+ var matches = host.match(protocol.IPV4ADDRESS) || [];
+
+ var _matches = slicedToArray(matches, 2),
+ address = _matches[1];
+
+ if (address) {
+ return address.split(".").map(_stripLeadingZeros).join(".");
+ } else {
+ return host;
+ }
+}
+function _normalizeIPv6(host, protocol) {
+ var matches = host.match(protocol.IPV6ADDRESS) || [];
+
+ var _matches2 = slicedToArray(matches, 3),
+ address = _matches2[1],
+ zone = _matches2[2];
+
+ if (address) {
+ var _address$toLowerCase$ = address.toLowerCase().split('::').reverse(),
+ _address$toLowerCase$2 = slicedToArray(_address$toLowerCase$, 2),
+ last = _address$toLowerCase$2[0],
+ first = _address$toLowerCase$2[1];
+
+ var firstFields = first ? first.split(":").map(_stripLeadingZeros) : [];
+ var lastFields = last.split(":").map(_stripLeadingZeros);
+ var isLastFieldIPv4Address = protocol.IPV4ADDRESS.test(lastFields[lastFields.length - 1]);
+ var fieldCount = isLastFieldIPv4Address ? 7 : 8;
+ var lastFieldsStart = lastFields.length - fieldCount;
+ var fields = Array(fieldCount);
+ for (var x = 0; x < fieldCount; ++x) {
+ fields[x] = firstFields[x] || lastFields[lastFieldsStart + x] || '';
+ }
+ if (isLastFieldIPv4Address) {
+ fields[fieldCount - 1] = _normalizeIPv4(fields[fieldCount - 1], protocol);
+ }
+ var allZeroFields = fields.reduce(function (acc, field, index) {
+ if (!field || field === "0") {
+ var lastLongest = acc[acc.length - 1];
+ if (lastLongest && lastLongest.index + lastLongest.length === index) {
+ lastLongest.length++;
+ } else {
+ acc.push({ index: index, length: 1 });
+ }
+ }
+ return acc;
+ }, []);
+ var longestZeroFields = allZeroFields.sort(function (a, b) {
+ return b.length - a.length;
+ })[0];
+ var newHost = void 0;
+ if (longestZeroFields && longestZeroFields.length > 1) {
+ var newFirst = fields.slice(0, longestZeroFields.index);
+ var newLast = fields.slice(longestZeroFields.index + longestZeroFields.length);
+ newHost = newFirst.join(":") + "::" + newLast.join(":");
+ } else {
+ newHost = fields.join(":");
+ }
+ if (zone) {
+ newHost += "%" + zone;
+ }
+ return newHost;
+ } else {
+ return host;
+ }
+}
+var URI_PARSE = /^(?:([^:\/?#]+):)?(?:\/\/((?:([^\/?#@]*)@)?(\[[^\/?#\]]+\]|[^\/?#:]*)(?:\:(\d*))?))?([^?#]*)(?:\?([^#]*))?(?:#((?:.|\n|\r)*))?/i;
+var NO_MATCH_IS_UNDEFINED = "".match(/(){0}/)[1] === undefined;
+function parse(uriString) {
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
+
+ var components = {};
+ var protocol = options.iri !== false ? IRI_PROTOCOL : URI_PROTOCOL;
+ if (options.reference === "suffix") uriString = (options.scheme ? options.scheme + ":" : "") + "//" + uriString;
+ var matches = uriString.match(URI_PARSE);
+ if (matches) {
+ if (NO_MATCH_IS_UNDEFINED) {
+ //store each component
+ components.scheme = matches[1];
+ components.userinfo = matches[3];
+ components.host = matches[4];
+ components.port = parseInt(matches[5], 10);
+ components.path = matches[6] || "";
+ components.query = matches[7];
+ components.fragment = matches[8];
+ //fix port number
+ if (isNaN(components.port)) {
+ components.port = matches[5];
+ }
+ } else {
+ //IE FIX for improper RegExp matching
+ //store each component
+ components.scheme = matches[1] || undefined;
+ components.userinfo = uriString.indexOf("@") !== -1 ? matches[3] : undefined;
+ components.host = uriString.indexOf("//") !== -1 ? matches[4] : undefined;
+ components.port = parseInt(matches[5], 10);
+ components.path = matches[6] || "";
+ components.query = uriString.indexOf("?") !== -1 ? matches[7] : undefined;
+ components.fragment = uriString.indexOf("#") !== -1 ? matches[8] : undefined;
+ //fix port number
+ if (isNaN(components.port)) {
+ components.port = uriString.match(/\/\/(?:.|\n)*\:(?:\/|\?|\#|$)/) ? matches[4] : undefined;
+ }
+ }
+ if (components.host) {
+ //normalize IP hosts
+ components.host = _normalizeIPv6(_normalizeIPv4(components.host, protocol), protocol);
+ }
+ //determine reference type
+ if (components.scheme === undefined && components.userinfo === undefined && components.host === undefined && components.port === undefined && !components.path && components.query === undefined) {
+ components.reference = "same-document";
+ } else if (components.scheme === undefined) {
+ components.reference = "relative";
+ } else if (components.fragment === undefined) {
+ components.reference = "absolute";
+ } else {
+ components.reference = "uri";
+ }
+ //check for reference errors
+ if (options.reference && options.reference !== "suffix" && options.reference !== components.reference) {
+ components.error = components.error || "URI is not a " + options.reference + " reference.";
+ }
+ //find scheme handler
+ var schemeHandler = SCHEMES[(options.scheme || components.scheme || "").toLowerCase()];
+ //check if scheme can't handle IRIs
+ if (!options.unicodeSupport && (!schemeHandler || !schemeHandler.unicodeSupport)) {
+ //if host component is a domain name
+ if (components.host && (options.domainHost || schemeHandler && schemeHandler.domainHost)) {
+ //convert Unicode IDN -> ASCII IDN
+ try {
+ components.host = punycode.toASCII(components.host.replace(protocol.PCT_ENCODED, pctDecChars).toLowerCase());
+ } catch (e) {
+ components.error = components.error || "Host's domain name can not be converted to ASCII via punycode: " + e;
+ }
+ }
+ //convert IRI -> URI
+ _normalizeComponentEncoding(components, URI_PROTOCOL);
+ } else {
+ //normalize encodings
+ _normalizeComponentEncoding(components, protocol);
+ }
+ //perform scheme specific parsing
+ if (schemeHandler && schemeHandler.parse) {
+ schemeHandler.parse(components, options);
+ }
+ } else {
+ components.error = components.error || "URI can not be parsed.";
+ }
+ return components;
+}
+
+function _recomposeAuthority(components, options) {
+ var protocol = options.iri !== false ? IRI_PROTOCOL : URI_PROTOCOL;
+ var uriTokens = [];
+ if (components.userinfo !== undefined) {
+ uriTokens.push(components.userinfo);
+ uriTokens.push("@");
+ }
+ if (components.host !== undefined) {
+ //normalize IP hosts, add brackets and escape zone separator for IPv6
+ uriTokens.push(_normalizeIPv6(_normalizeIPv4(String(components.host), protocol), protocol).replace(protocol.IPV6ADDRESS, function (_, $1, $2) {
+ return "[" + $1 + ($2 ? "%25" + $2 : "") + "]";
+ }));
+ }
+ if (typeof components.port === "number") {
+ uriTokens.push(":");
+ uriTokens.push(components.port.toString(10));
+ }
+ return uriTokens.length ? uriTokens.join("") : undefined;
+}
+
+var RDS1 = /^\.\.?\//;
+var RDS2 = /^\/\.(\/|$)/;
+var RDS3 = /^\/\.\.(\/|$)/;
+var RDS5 = /^\/?(?:.|\n)*?(?=\/|$)/;
+function removeDotSegments(input) {
+ var output = [];
+ while (input.length) {
+ if (input.match(RDS1)) {
+ input = input.replace(RDS1, "");
+ } else if (input.match(RDS2)) {
+ input = input.replace(RDS2, "/");
+ } else if (input.match(RDS3)) {
+ input = input.replace(RDS3, "/");
+ output.pop();
+ } else if (input === "." || input === "..") {
+ input = "";
+ } else {
+ var im = input.match(RDS5);
+ if (im) {
+ var s = im[0];
+ input = input.slice(s.length);
+ output.push(s);
+ } else {
+ throw new Error("Unexpected dot segment condition");
+ }
+ }
+ }
+ return output.join("");
+}
+
+function serialize(components) {
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
+
+ var protocol = options.iri ? IRI_PROTOCOL : URI_PROTOCOL;
+ var uriTokens = [];
+ //find scheme handler
+ var schemeHandler = SCHEMES[(options.scheme || components.scheme || "").toLowerCase()];
+ //perform scheme specific serialization
+ if (schemeHandler && schemeHandler.serialize) schemeHandler.serialize(components, options);
+ if (components.host) {
+ //if host component is an IPv6 address
+ if (protocol.IPV6ADDRESS.test(components.host)) {}
+ //TODO: normalize IPv6 address as per RFC 5952
+
+ //if host component is a domain name
+ else if (options.domainHost || schemeHandler && schemeHandler.domainHost) {
+ //convert IDN via punycode
+ try {
+ components.host = !options.iri ? punycode.toASCII(components.host.replace(protocol.PCT_ENCODED, pctDecChars).toLowerCase()) : punycode.toUnicode(components.host);
+ } catch (e) {
+ components.error = components.error || "Host's domain name can not be converted to " + (!options.iri ? "ASCII" : "Unicode") + " via punycode: " + e;
+ }
+ }
+ }
+ //normalize encoding
+ _normalizeComponentEncoding(components, protocol);
+ if (options.reference !== "suffix" && components.scheme) {
+ uriTokens.push(components.scheme);
+ uriTokens.push(":");
+ }
+ var authority = _recomposeAuthority(components, options);
+ if (authority !== undefined) {
+ if (options.reference !== "suffix") {
+ uriTokens.push("//");
+ }
+ uriTokens.push(authority);
+ if (components.path && components.path.charAt(0) !== "/") {
+ uriTokens.push("/");
+ }
+ }
+ if (components.path !== undefined) {
+ var s = components.path;
+ if (!options.absolutePath && (!schemeHandler || !schemeHandler.absolutePath)) {
+ s = removeDotSegments(s);
+ }
+ if (authority === undefined) {
+ s = s.replace(/^\/\//, "/%2F"); //don't allow the path to start with "//"
+ }
+ uriTokens.push(s);
+ }
+ if (components.query !== undefined) {
+ uriTokens.push("?");
+ uriTokens.push(components.query);
+ }
+ if (components.fragment !== undefined) {
+ uriTokens.push("#");
+ uriTokens.push(components.fragment);
+ }
+ return uriTokens.join(""); //merge tokens into a string
+}
+
+function resolveComponents(base, relative) {
+ var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
+ var skipNormalization = arguments[3];
+
+ var target = {};
+ if (!skipNormalization) {
+ base = parse(serialize(base, options), options); //normalize base components
+ relative = parse(serialize(relative, options), options); //normalize relative components
+ }
+ options = options || {};
+ if (!options.tolerant && relative.scheme) {
+ target.scheme = relative.scheme;
+ //target.authority = relative.authority;
+ target.userinfo = relative.userinfo;
+ target.host = relative.host;
+ target.port = relative.port;
+ target.path = removeDotSegments(relative.path || "");
+ target.query = relative.query;
+ } else {
+ if (relative.userinfo !== undefined || relative.host !== undefined || relative.port !== undefined) {
+ //target.authority = relative.authority;
+ target.userinfo = relative.userinfo;
+ target.host = relative.host;
+ target.port = relative.port;
+ target.path = removeDotSegments(relative.path || "");
+ target.query = relative.query;
+ } else {
+ if (!relative.path) {
+ target.path = base.path;
+ if (relative.query !== undefined) {
+ target.query = relative.query;
+ } else {
+ target.query = base.query;
+ }
+ } else {
+ if (relative.path.charAt(0) === "/") {
+ target.path = removeDotSegments(relative.path);
+ } else {
+ if ((base.userinfo !== undefined || base.host !== undefined || base.port !== undefined) && !base.path) {
+ target.path = "/" + relative.path;
+ } else if (!base.path) {
+ target.path = relative.path;
+ } else {
+ target.path = base.path.slice(0, base.path.lastIndexOf("/") + 1) + relative.path;
+ }
+ target.path = removeDotSegments(target.path);
+ }
+ target.query = relative.query;
+ }
+ //target.authority = base.authority;
+ target.userinfo = base.userinfo;
+ target.host = base.host;
+ target.port = base.port;
+ }
+ target.scheme = base.scheme;
+ }
+ target.fragment = relative.fragment;
+ return target;
+}
+
+function resolve(baseURI, relativeURI, options) {
+ var schemelessOptions = assign({ scheme: 'null' }, options);
+ return serialize(resolveComponents(parse(baseURI, schemelessOptions), parse(relativeURI, schemelessOptions), schemelessOptions, true), schemelessOptions);
+}
+
+function normalize(uri, options) {
+ if (typeof uri === "string") {
+ uri = serialize(parse(uri, options), options);
+ } else if (typeOf(uri) === "object") {
+ uri = parse(serialize(uri, options), options);
+ }
+ return uri;
+}
+
+function equal(uriA, uriB, options) {
+ if (typeof uriA === "string") {
+ uriA = serialize(parse(uriA, options), options);
+ } else if (typeOf(uriA) === "object") {
+ uriA = serialize(uriA, options);
+ }
+ if (typeof uriB === "string") {
+ uriB = serialize(parse(uriB, options), options);
+ } else if (typeOf(uriB) === "object") {
+ uriB = serialize(uriB, options);
+ }
+ return uriA === uriB;
+}
+
+function escapeComponent(str, options) {
+ return str && str.toString().replace(!options || !options.iri ? URI_PROTOCOL.ESCAPE : IRI_PROTOCOL.ESCAPE, pctEncChar);
+}
+
+function unescapeComponent(str, options) {
+ return str && str.toString().replace(!options || !options.iri ? URI_PROTOCOL.PCT_ENCODED : IRI_PROTOCOL.PCT_ENCODED, pctDecChars);
+}
+
+var handler = {
+ scheme: "http",
+ domainHost: true,
+ parse: function parse(components, options) {
+ //report missing host
+ if (!components.host) {
+ components.error = components.error || "HTTP URIs must have a host.";
+ }
+ return components;
+ },
+ serialize: function serialize(components, options) {
+ //normalize the default port
+ if (components.port === (String(components.scheme).toLowerCase() !== "https" ? 80 : 443) || components.port === "") {
+ components.port = undefined;
+ }
+ //normalize the empty path
+ if (!components.path) {
+ components.path = "/";
+ }
+ //NOTE: We do not parse query strings for HTTP URIs
+ //as WWW Form Url Encoded query strings are part of the HTML4+ spec,
+ //and not the HTTP spec.
+ return components;
+ }
+};
+
+var handler$1 = {
+ scheme: "https",
+ domainHost: handler.domainHost,
+ parse: handler.parse,
+ serialize: handler.serialize
+};
+
+var O = {};
+var isIRI = true;
+//RFC 3986
+var UNRESERVED$$ = "[A-Za-z0-9\\-\\.\\_\\~" + (isIRI ? "\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF" : "") + "]";
+var HEXDIG$$ = "[0-9A-Fa-f]"; //case-insensitive
+var PCT_ENCODED$ = subexp(subexp("%[EFef]" + HEXDIG$$ + "%" + HEXDIG$$ + HEXDIG$$ + "%" + HEXDIG$$ + HEXDIG$$) + "|" + subexp("%[89A-Fa-f]" + HEXDIG$$ + "%" + HEXDIG$$ + HEXDIG$$) + "|" + subexp("%" + HEXDIG$$ + HEXDIG$$)); //expanded
+//RFC 5322, except these symbols as per RFC 6068: @ : / ? # [ ] & ; =
+//const ATEXT$$ = "[A-Za-z0-9\\!\\#\\$\\%\\&\\'\\*\\+\\-\\/\\=\\?\\^\\_\\`\\{\\|\\}\\~]";
+//const WSP$$ = "[\\x20\\x09]";
+//const OBS_QTEXT$$ = "[\\x01-\\x08\\x0B\\x0C\\x0E-\\x1F\\x7F]"; //(%d1-8 / %d11-12 / %d14-31 / %d127)
+//const QTEXT$$ = merge("[\\x21\\x23-\\x5B\\x5D-\\x7E]", OBS_QTEXT$$); //%d33 / %d35-91 / %d93-126 / obs-qtext
+//const VCHAR$$ = "[\\x21-\\x7E]";
+//const WSP$$ = "[\\x20\\x09]";
+//const OBS_QP$ = subexp("\\\\" + merge("[\\x00\\x0D\\x0A]", OBS_QTEXT$$)); //%d0 / CR / LF / obs-qtext
+//const FWS$ = subexp(subexp(WSP$$ + "*" + "\\x0D\\x0A") + "?" + WSP$$ + "+");
+//const QUOTED_PAIR$ = subexp(subexp("\\\\" + subexp(VCHAR$$ + "|" + WSP$$)) + "|" + OBS_QP$);
+//const QUOTED_STRING$ = subexp('\\"' + subexp(FWS$ + "?" + QCONTENT$) + "*" + FWS$ + "?" + '\\"');
+var ATEXT$$ = "[A-Za-z0-9\\!\\$\\%\\'\\*\\+\\-\\^\\_\\`\\{\\|\\}\\~]";
+var QTEXT$$ = "[\\!\\$\\%\\'\\(\\)\\*\\+\\,\\-\\.0-9\\<\\>A-Z\\x5E-\\x7E]";
+var VCHAR$$ = merge(QTEXT$$, "[\\\"\\\\]");
+var SOME_DELIMS$$ = "[\\!\\$\\'\\(\\)\\*\\+\\,\\;\\:\\@]";
+var UNRESERVED = new RegExp(UNRESERVED$$, "g");
+var PCT_ENCODED = new RegExp(PCT_ENCODED$, "g");
+var NOT_LOCAL_PART = new RegExp(merge("[^]", ATEXT$$, "[\\.]", '[\\"]', VCHAR$$), "g");
+var NOT_HFNAME = new RegExp(merge("[^]", UNRESERVED$$, SOME_DELIMS$$), "g");
+var NOT_HFVALUE = NOT_HFNAME;
+function decodeUnreserved(str) {
+ var decStr = pctDecChars(str);
+ return !decStr.match(UNRESERVED) ? str : decStr;
+}
+var handler$2 = {
+ scheme: "mailto",
+ parse: function parse$$1(components, options) {
+ var mailtoComponents = components;
+ var to = mailtoComponents.to = mailtoComponents.path ? mailtoComponents.path.split(",") : [];
+ mailtoComponents.path = undefined;
+ if (mailtoComponents.query) {
+ var unknownHeaders = false;
+ var headers = {};
+ var hfields = mailtoComponents.query.split("&");
+ for (var x = 0, xl = hfields.length; x < xl; ++x) {
+ var hfield = hfields[x].split("=");
+ switch (hfield[0]) {
+ case "to":
+ var toAddrs = hfield[1].split(",");
+ for (var _x = 0, _xl = toAddrs.length; _x < _xl; ++_x) {
+ to.push(toAddrs[_x]);
+ }
+ break;
+ case "subject":
+ mailtoComponents.subject = unescapeComponent(hfield[1], options);
+ break;
+ case "body":
+ mailtoComponents.body = unescapeComponent(hfield[1], options);
+ break;
+ default:
+ unknownHeaders = true;
+ headers[unescapeComponent(hfield[0], options)] = unescapeComponent(hfield[1], options);
+ break;
+ }
+ }
+ if (unknownHeaders) mailtoComponents.headers = headers;
+ }
+ mailtoComponents.query = undefined;
+ for (var _x2 = 0, _xl2 = to.length; _x2 < _xl2; ++_x2) {
+ var addr = to[_x2].split("@");
+ addr[0] = unescapeComponent(addr[0]);
+ if (!options.unicodeSupport) {
+ //convert Unicode IDN -> ASCII IDN
+ try {
+ addr[1] = punycode.toASCII(unescapeComponent(addr[1], options).toLowerCase());
+ } catch (e) {
+ mailtoComponents.error = mailtoComponents.error || "Email address's domain name can not be converted to ASCII via punycode: " + e;
+ }
+ } else {
+ addr[1] = unescapeComponent(addr[1], options).toLowerCase();
+ }
+ to[_x2] = addr.join("@");
+ }
+ return mailtoComponents;
+ },
+ serialize: function serialize$$1(mailtoComponents, options) {
+ var components = mailtoComponents;
+ var to = toArray(mailtoComponents.to);
+ if (to) {
+ for (var x = 0, xl = to.length; x < xl; ++x) {
+ var toAddr = String(to[x]);
+ var atIdx = toAddr.lastIndexOf("@");
+ var localPart = toAddr.slice(0, atIdx).replace(PCT_ENCODED, decodeUnreserved).replace(PCT_ENCODED, toUpperCase).replace(NOT_LOCAL_PART, pctEncChar);
+ var domain = toAddr.slice(atIdx + 1);
+ //convert IDN via punycode
+ try {
+ domain = !options.iri ? punycode.toASCII(unescapeComponent(domain, options).toLowerCase()) : punycode.toUnicode(domain);
+ } catch (e) {
+ components.error = components.error || "Email address's domain name can not be converted to " + (!options.iri ? "ASCII" : "Unicode") + " via punycode: " + e;
+ }
+ to[x] = localPart + "@" + domain;
+ }
+ components.path = to.join(",");
+ }
+ var headers = mailtoComponents.headers = mailtoComponents.headers || {};
+ if (mailtoComponents.subject) headers["subject"] = mailtoComponents.subject;
+ if (mailtoComponents.body) headers["body"] = mailtoComponents.body;
+ var fields = [];
+ for (var name in headers) {
+ if (headers[name] !== O[name]) {
+ fields.push(name.replace(PCT_ENCODED, decodeUnreserved).replace(PCT_ENCODED, toUpperCase).replace(NOT_HFNAME, pctEncChar) + "=" + headers[name].replace(PCT_ENCODED, decodeUnreserved).replace(PCT_ENCODED, toUpperCase).replace(NOT_HFVALUE, pctEncChar));
+ }
+ }
+ if (fields.length) {
+ components.query = fields.join("&");
+ }
+ return components;
+ }
+};
+
+var URN_PARSE = /^([^\:]+)\:(.*)/;
+//RFC 2141
+var handler$3 = {
+ scheme: "urn",
+ parse: function parse$$1(components, options) {
+ var matches = components.path && components.path.match(URN_PARSE);
+ var urnComponents = components;
+ if (matches) {
+ var scheme = options.scheme || urnComponents.scheme || "urn";
+ var nid = matches[1].toLowerCase();
+ var nss = matches[2];
+ var urnScheme = scheme + ":" + (options.nid || nid);
+ var schemeHandler = SCHEMES[urnScheme];
+ urnComponents.nid = nid;
+ urnComponents.nss = nss;
+ urnComponents.path = undefined;
+ if (schemeHandler) {
+ urnComponents = schemeHandler.parse(urnComponents, options);
+ }
+ } else {
+ urnComponents.error = urnComponents.error || "URN can not be parsed.";
+ }
+ return urnComponents;
+ },
+ serialize: function serialize$$1(urnComponents, options) {
+ var scheme = options.scheme || urnComponents.scheme || "urn";
+ var nid = urnComponents.nid;
+ var urnScheme = scheme + ":" + (options.nid || nid);
+ var schemeHandler = SCHEMES[urnScheme];
+ if (schemeHandler) {
+ urnComponents = schemeHandler.serialize(urnComponents, options);
+ }
+ var uriComponents = urnComponents;
+ var nss = urnComponents.nss;
+ uriComponents.path = (nid || options.nid) + ":" + nss;
+ return uriComponents;
+ }
+};
+
+var UUID = /^[0-9A-Fa-f]{8}(?:\-[0-9A-Fa-f]{4}){3}\-[0-9A-Fa-f]{12}$/;
+//RFC 4122
+var handler$4 = {
+ scheme: "urn:uuid",
+ parse: function parse(urnComponents, options) {
+ var uuidComponents = urnComponents;
+ uuidComponents.uuid = uuidComponents.nss;
+ uuidComponents.nss = undefined;
+ if (!options.tolerant && (!uuidComponents.uuid || !uuidComponents.uuid.match(UUID))) {
+ uuidComponents.error = uuidComponents.error || "UUID is not valid.";
+ }
+ return uuidComponents;
+ },
+ serialize: function serialize(uuidComponents, options) {
+ var urnComponents = uuidComponents;
+ //normalize UUID
+ urnComponents.nss = (uuidComponents.uuid || "").toLowerCase();
+ return urnComponents;
+ }
+};
+
+SCHEMES[handler.scheme] = handler;
+SCHEMES[handler$1.scheme] = handler$1;
+SCHEMES[handler$2.scheme] = handler$2;
+SCHEMES[handler$3.scheme] = handler$3;
+SCHEMES[handler$4.scheme] = handler$4;
+
+exports.SCHEMES = SCHEMES;
+exports.pctEncChar = pctEncChar;
+exports.pctDecChars = pctDecChars;
+exports.parse = parse;
+exports.removeDotSegments = removeDotSegments;
+exports.serialize = serialize;
+exports.resolveComponents = resolveComponents;
+exports.resolve = resolve;
+exports.normalize = normalize;
+exports.equal = equal;
+exports.escapeComponent = escapeComponent;
+exports.unescapeComponent = unescapeComponent;
+
+Object.defineProperty(exports, '__esModule', { value: true });
+
+})));
+//# sourceMappingURL=uri.all.js.map
+
+
+/***/ }),
+
+/***/ "../../node_modules/webpack/buildin/global.js":
+/*!***********************************!*\
+ !*** (webpack)/buildin/global.js ***!
+ \***********************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+var g;
+
+// This works in non-strict mode
+g = (function() {
+ return this;
+})();
+
+try {
+ // This works if eval is allowed (see CSP)
+ g = g || new Function("return this")();
+} catch (e) {
+ // This works if the window reference is available
+ if (typeof window === "object") g = window;
+}
+
+// g can still be undefined, but nothing to do about it...
+// We return undefined, instead of nothing here, so it's
+// easier to handle this case. if(!global) { ...}
+
+module.exports = g;
+
+
+/***/ }),
+
+/***/ "../../node_modules/webpack/buildin/module.js":
+/*!***********************************!*\
+ !*** (webpack)/buildin/module.js ***!
+ \***********************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+module.exports = function(module) {
+ if (!module.webpackPolyfill) {
+ module.deprecate = function() {};
+ module.paths = [];
+ // module.parent = undefined by default
+ if (!module.children) module.children = [];
+ Object.defineProperty(module, "loaded", {
+ enumerable: true,
+ get: function() {
+ return module.l;
+ }
+ });
+ Object.defineProperty(module, "id", {
+ enumerable: true,
+ get: function() {
+ return module.i;
+ }
+ });
+ module.webpackPolyfill = 1;
+ }
+ return module;
+};
+
+
+/***/ }),
+
+/***/ "./src/actions/index.ts":
+/*!******************************!*\
+ !*** ./src/actions/index.ts ***!
+ \******************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+Object.defineProperty(exports, "__esModule", { value: true });
+var generators_1 = __webpack_require__(/*! ../generators */ "./src/generators/index.ts");
+exports.INIT = 'jsonforms/INIT';
+exports.SET_AJV = 'jsonforms/SET_AJV';
+exports.UPDATE_DATA = 'jsonforms/UPDATE';
+exports.VALIDATE = 'jsonforms/VALIDATE';
+exports.ADD_RENDERER = 'jsonforms/ADD_RENDERER';
+exports.REMOVE_RENDERER = 'jsonforms/REMOVE_RENDERER';
+exports.ADD_FIELD = 'jsonforms/ADD_FIELD';
+exports.REMOVE_FIELD = 'jsonforms/REMOVE_FIELD';
+exports.SET_CONFIG = 'jsonforms/SET_CONFIG';
+exports.ADD_UI_SCHEMA = "jsonforms/ADD_UI_SCHEMA";
+exports.REMOVE_UI_SCHEMA = "jsonforms/REMOVE_UI_SCHEMA";
+exports.SET_SCHEMA = "jsonforms/SET_SCHEMA";
+exports.SET_UISCHEMA = "jsonforms/SET_UISCHEMA";
+exports.SET_LOCALE = "jsonforms/SET_LOCALE";
+exports.SET_LOCALIZED_SCHEMAS = 'jsonforms/SET_LOCALIZED_SCHEMAS';
+exports.SET_LOCALIZED_UISCHEMAS = 'jsonforms/SET_LOCALIZED_UISCHEMAS';
+exports.ADD_DEFAULT_DATA = "jsonforms/ADD_DEFAULT_DATA";
+exports.REMOVE_DEFAULT_DATA = "jsonforms/REMOVE_DEFAULT_DATA";
+exports.init = function (data, schema, uischema, ajv) {
+ if (schema === void 0) { schema = generators_1.generateJsonSchema(data); }
+ if (uischema === void 0) { uischema = generators_1.generateDefaultUISchema(schema); }
+ return ({
+ type: exports.INIT,
+ data: data,
+ schema: schema,
+ uischema: uischema,
+ ajv: ajv
+ });
+};
+exports.registerDefaultData = function (schemaPath, data) { return ({
+ type: exports.ADD_DEFAULT_DATA,
+ schemaPath: schemaPath,
+ data: data
+}); };
+exports.unregisterDefaultData = function (schemaPath) { return ({
+ type: exports.REMOVE_DEFAULT_DATA,
+ schemaPath: schemaPath
+}); };
+exports.setAjv = function (ajv) { return ({
+ type: exports.SET_AJV,
+ ajv: ajv
+}); };
+exports.update = function (path, updater) { return ({
+ type: exports.UPDATE_DATA,
+ path: path,
+ updater: updater
+}); };
+exports.registerRenderer = function (tester, renderer) { return ({
+ type: exports.ADD_RENDERER,
+ tester: tester,
+ renderer: renderer
+}); };
+exports.registerField = function (tester, field) { return ({
+ type: exports.ADD_FIELD,
+ tester: tester,
+ field: field
+}); };
+exports.unregisterField = function (tester, field) { return ({
+ type: exports.REMOVE_FIELD,
+ tester: tester,
+ field: field
+}); };
+exports.unregisterRenderer = function (tester, renderer) { return ({
+ type: exports.REMOVE_RENDERER,
+ tester: tester,
+ renderer: renderer
+}); };
+exports.setConfig = function (config) { return function (dispatch) {
+ dispatch({
+ type: exports.SET_CONFIG,
+ config: config
+ });
+}; };
+exports.registerUISchema = function (tester, uischema) {
+ return {
+ type: exports.ADD_UI_SCHEMA,
+ tester: tester,
+ uischema: uischema
+ };
+};
+exports.unregisterUISchema = function (tester) {
+ return {
+ type: exports.REMOVE_UI_SCHEMA,
+ tester: tester
+ };
+};
+exports.setLocale = function (locale) { return ({
+ type: exports.SET_LOCALE,
+ locale: locale
+}); };
+exports.setLocalizedSchemas = function (localizedSchemas) { return ({
+ type: exports.SET_LOCALIZED_SCHEMAS,
+ localizedSchemas: localizedSchemas
+}); };
+exports.setSchema = function (schema) { return ({
+ type: exports.SET_SCHEMA,
+ schema: schema
+}); };
+exports.setLocalizedUISchemas = function (localizedUISchemas) { return ({
+ type: exports.SET_LOCALIZED_UISCHEMAS,
+ localizedUISchemas: localizedUISchemas
+}); };
+exports.setUISchema = function (uischema) { return ({
+ type: exports.SET_UISCHEMA,
+ uischema: uischema
+}); };
+
+
+/***/ }),
+
+/***/ "./src/configDefault.ts":
+/*!******************************!*\
+ !*** ./src/configDefault.ts ***!
+ \******************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+Object.defineProperty(exports, "__esModule", { value: true });
+/*
+ The MIT License
+
+ Copyright (c) 2018 EclipseSource Munich
+ https://github.com/eclipsesource/jsonforms
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ THE SOFTWARE.
+*/
+exports.configDefault = {
+ /*
+ * [text] whether to restrict the number of characters to maxLength,
+ * if specified in the JSON schema
+ */
+ restrict: false,
+ /*
+ * [text] whether to resize the input's width to maxLength,
+ * if specified in the JSON schema
+ */
+ trim: false
+};
+
+
+/***/ }),
+
+/***/ "./src/generators/index.ts":
+/*!*********************************!*\
+ !*** ./src/generators/index.ts ***!
+ \*********************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+Object.defineProperty(exports, "__esModule", { value: true });
+var schema_1 = __webpack_require__(/*! ./schema */ "./src/generators/schema.ts");
+exports.generateJsonSchema = schema_1.generateJsonSchema;
+var uischema_1 = __webpack_require__(/*! ./uischema */ "./src/generators/uischema.ts");
+exports.generateDefaultUISchema = uischema_1.generateDefaultUISchema;
+exports.Generate = {
+ jsonSchema: schema_1.generateJsonSchema,
+ uiSchema: uischema_1.generateDefaultUISchema,
+ controlElement: uischema_1.createControlElement
+};
+
+
+/***/ }),
+
+/***/ "./src/generators/schema.ts":
+/*!**********************************!*\
+ !*** ./src/generators/schema.ts ***!
+ \**********************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+/*
+ The MIT License
+
+ Copyright (c) 2018 EclipseSource Munich
+ https://github.com/eclipsesource/jsonforms
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ THE SOFTWARE.
+*/
+Object.defineProperty(exports, "__esModule", { value: true });
+var ADDITIONAL_PROPERTIES = 'additionalProperties';
+var REQUIRED_PROPERTIES = 'required';
+var distinct = function (properties, discriminator) {
+ var known = {};
+ return properties.filter(function (item) {
+ var discriminatorValue = discriminator(item);
+ if (known.hasOwnProperty(discriminatorValue)) {
+ return false;
+ }
+ else {
+ known[discriminatorValue] = true;
+ return true;
+ }
+ });
+};
+var Gen = /** @class */ (function () {
+ function Gen(findOption) {
+ var _this = this;
+ this.findOption = findOption;
+ this.schemaObject = function (data) {
+ var props = _this.properties(data);
+ var schema = {
+ type: 'object',
+ properties: props,
+ additionalProperties: _this.findOption(props)(ADDITIONAL_PROPERTIES)
+ };
+ var required = _this.findOption(props)(REQUIRED_PROPERTIES);
+ if (required.length > 0) {
+ schema.required = required;
+ }
+ return schema;
+ };
+ this.properties = function (data) {
+ var emptyProps = {};
+ return Object.keys(data).reduce(function (acc, propName) {
+ acc[propName] = _this.property(data[propName]);
+ return acc;
+ }, emptyProps);
+ };
+ this.property = function (data) {
+ switch (typeof data) {
+ case 'string':
+ return { type: 'string' };
+ case 'boolean':
+ return { type: 'boolean' };
+ case 'number':
+ if (Number.isInteger(data)) {
+ return { type: 'integer' };
+ }
+ return { type: 'number' };
+ case 'object':
+ if (data == null) {
+ return { type: 'null' };
+ }
+ return _this.schemaObjectOrArray(data);
+ default:
+ return {};
+ }
+ };
+ this.schemaObjectOrArray = function (data) {
+ if (data instanceof Array) {
+ return _this.schemaArray(data);
+ }
+ else {
+ return _this.schemaObject(data);
+ }
+ };
+ this.schemaArray = function (data) {
+ if (data.length > 0) {
+ var allProperties = data.map(_this.property);
+ var uniqueProperties = distinct(allProperties, function (prop) {
+ return JSON.stringify(prop);
+ });
+ if (uniqueProperties.length === 1) {
+ return {
+ type: 'array',
+ items: uniqueProperties[0]
+ };
+ }
+ else {
+ return {
+ type: 'array',
+ items: {
+ oneOf: uniqueProperties
+ }
+ };
+ }
+ }
+ else {
+ return {
+ type: 'array',
+ items: {}
+ };
+ }
+ };
+ }
+ return Gen;
+}());
+/**
+ * Generate a JSON schema based on the given data and any additional options.
+ * @param {Object} instance the data to create a JSON schema for
+ * @param {any} options any additional options that may alter the generated JSON schema
+ * @returns {JsonSchema} the generated schema
+ */
+exports.generateJsonSchema = function (instance, options) {
+ if (options === void 0) { options = {}; }
+ var findOption = function (props) { return function (optionName) {
+ switch (optionName) {
+ case ADDITIONAL_PROPERTIES:
+ if (options.hasOwnProperty(ADDITIONAL_PROPERTIES)) {
+ return options[ADDITIONAL_PROPERTIES];
+ }
+ return true;
+ case REQUIRED_PROPERTIES:
+ if (options.hasOwnProperty(REQUIRED_PROPERTIES)) {
+ return options[REQUIRED_PROPERTIES](props);
+ }
+ return Object.keys(props);
+ default:
+ return;
+ }
+ }; };
+ var gen = new Gen(findOption);
+ return gen.schemaObject(instance);
+};
+
+
+/***/ }),
+
+/***/ "./src/generators/uischema.ts":
+/*!************************************!*\
+ !*** ./src/generators/uischema.ts ***!
+ \************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var __importDefault = (this && this.__importDefault) || function (mod) {
+ return (mod && mod.__esModule) ? mod : { "default": mod };
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+/*
+ The MIT License
+
+ Copyright (c) 2018 EclipseSource Munich
+ https://github.com/eclipsesource/jsonforms
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ THE SOFTWARE.
+*/
+var isEmpty_1 = __importDefault(__webpack_require__(/*! lodash/isEmpty */ "../../node_modules/lodash/isEmpty.js"));
+var isArray_1 = __importDefault(__webpack_require__(/*! lodash/isArray */ "../../node_modules/lodash/isArray.js"));
+var head_1 = __importDefault(__webpack_require__(/*! lodash/head */ "../../node_modules/lodash/head.js"));
+var startCase_1 = __importDefault(__webpack_require__(/*! lodash/startCase */ "../../node_modules/lodash/startCase.js"));
+var keys_1 = __importDefault(__webpack_require__(/*! lodash/keys */ "../../node_modules/lodash/keys.js"));
+var uischema_1 = __webpack_require__(/*! ../models/uischema */ "./src/models/uischema.ts");
+var resolvers_1 = __webpack_require__(/*! ../util/resolvers */ "./src/util/resolvers.ts");
+/**
+ * Creates a new ILayout.
+ * @param layoutType The type of the laoyut
+ * @returns the new ILayout
+ */
+var createLayout = function (layoutType) { return ({
+ type: layoutType,
+ elements: []
+}); };
+/**
+ * Checks if the type of jsonSchema is a union of multiple types
+ *
+ * @param {JsonSchema} jsonSchema
+ * @returns {boolean}
+ */
+var isUnionType = function (jsonSchema) {
+ return !isEmpty_1.default(jsonSchema) && !isEmpty_1.default(jsonSchema.type) && isArray_1.default(jsonSchema.type);
+};
+/**
+ * Derives the type of the jsonSchema element
+ */
+var deriveType = function (jsonSchema) {
+ if (!isEmpty_1.default(jsonSchema) &&
+ !isEmpty_1.default(jsonSchema.type) &&
+ typeof jsonSchema.type === 'string') {
+ return jsonSchema.type;
+ }
+ if (isUnionType(jsonSchema)) {
+ return head_1.default(jsonSchema.type);
+ }
+ if (!isEmpty_1.default(jsonSchema) &&
+ (!isEmpty_1.default(jsonSchema.properties) ||
+ !isEmpty_1.default(jsonSchema.additionalProperties))) {
+ return 'object';
+ }
+ if (!isEmpty_1.default(jsonSchema) && !isEmpty_1.default(jsonSchema.items)) {
+ return 'array';
+ }
+ // ignore all remaining cases
+ return 'null';
+};
+/**
+ * Creates a IControlObject with the given label referencing the given ref
+ */
+exports.createControlElement = function (label, ref) { return ({
+ type: 'Control',
+ label: label === undefined ? false : label,
+ scope: ref
+}); };
+var isLayout = function (uischema) {
+ return uischema.elements !== undefined;
+};
+/**
+ * Wraps the given {@code uiSchema} in a Layout if there is none already.
+ * @param uischema The ui schema to wrap in a layout.
+ * @param layoutType The type of the layout to create.
+ * @returns the wrapped uiSchema.
+ */
+var wrapInLayoutIfNecessary = function (uischema, layoutType) {
+ if (!isEmpty_1.default(uischema) && !isLayout(uischema)) {
+ var verticalLayout = createLayout(layoutType);
+ verticalLayout.elements.push(uischema);
+ return verticalLayout;
+ }
+ return uischema;
+};
+/**
+ * Adds the given {@code labelName} to the {@code layout} if it exists
+ * @param layout
+ * The layout which is to receive the label
+ * @param labelName
+ * The name of the schema
+ */
+var addLabel = function (layout, labelName) {
+ if (!isEmpty_1.default(labelName)) {
+ var fixedLabel = startCase_1.default(labelName);
+ if (uischema_1.isGroup(layout)) {
+ layout.label = fixedLabel;
+ }
+ else {
+ // add label with name
+ var label = {
+ type: 'Label',
+ text: fixedLabel
+ };
+ layout.elements.push(label);
+ }
+ }
+};
+/**
+ * Returns whether the given {@code jsonSchema} is a combinator ({@code oneOf}, {@code anyOf}, {@code allOf}) at the root level
+ * @param jsonSchema
+ * the schema to check
+ */
+var isCombinator = function (jsonSchema) {
+ return (!isEmpty_1.default(jsonSchema) &&
+ (!isEmpty_1.default(jsonSchema.oneOf) ||
+ !isEmpty_1.default(jsonSchema.anyOf) ||
+ !isEmpty_1.default(jsonSchema.allOf)));
+};
+var generateUISchema = function (jsonSchema, schemaElements, currentRef, schemaName, layoutType, rootSchema) {
+ if (!isEmpty_1.default(jsonSchema) && jsonSchema.$ref !== undefined) {
+ return generateUISchema(resolvers_1.resolveSchema(rootSchema, jsonSchema.$ref), schemaElements, currentRef, schemaName, layoutType, rootSchema);
+ }
+ if (isCombinator(jsonSchema)) {
+ var controlObject = exports.createControlElement(startCase_1.default(schemaName), currentRef);
+ schemaElements.push(controlObject);
+ return controlObject;
+ }
+ var type = deriveType(jsonSchema);
+ switch (type) {
+ case 'object':
+ var layout_1 = createLayout(layoutType);
+ schemaElements.push(layout_1);
+ if (jsonSchema.properties && keys_1.default(jsonSchema.properties).length > 1) {
+ addLabel(layout_1, schemaName);
+ }
+ if (!isEmpty_1.default(jsonSchema.properties)) {
+ // traverse properties
+ var nextRef_1 = currentRef + '/properties';
+ Object.keys(jsonSchema.properties).map(function (propName) {
+ var value = jsonSchema.properties[propName];
+ var ref = nextRef_1 + "/" + propName;
+ if (value.$ref !== undefined) {
+ value = resolvers_1.resolveSchema(rootSchema, value.$ref);
+ }
+ generateUISchema(value, layout_1.elements, ref, propName, layoutType, rootSchema);
+ });
+ }
+ return layout_1;
+ case 'array': // array items will be handled by the array control itself
+ /* falls through */
+ case 'string':
+ /* falls through */
+ case 'number':
+ /* falls through */
+ case 'integer':
+ /* falls through */
+ case 'boolean':
+ var controlObject = exports.createControlElement(startCase_1.default(schemaName), currentRef);
+ schemaElements.push(controlObject);
+ return controlObject;
+ case 'null':
+ return null;
+ default:
+ throw new Error('Unknown type: ' + JSON.stringify(jsonSchema));
+ }
+};
+/**
+ * Generate a default UI schema.
+ * @param {JsonSchema} jsonSchema the JSON schema to generated a UI schema for
+ * @param {string} layoutType the desired layout type for the root layout
+ * of the generated UI schema
+ */
+exports.generateDefaultUISchema = function (jsonSchema, layoutType, prefix, rootSchema) {
+ if (layoutType === void 0) { layoutType = 'VerticalLayout'; }
+ if (prefix === void 0) { prefix = '#'; }
+ if (rootSchema === void 0) { rootSchema = jsonSchema; }
+ return wrapInLayoutIfNecessary(generateUISchema(jsonSchema, [], prefix, '', layoutType, rootSchema), layoutType);
+};
+
+
+/***/ }),
+
+/***/ "./src/index.ts":
+/*!**********************!*\
+ !*** ./src/index.ts ***!
+ \**********************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+function __export(m) {
+ for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];
+}
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
+ result["default"] = mod;
+ return result;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+/*
+ The MIT License
+
+ Copyright (c) 2018 EclipseSource Munich
+ https://github.com/eclipsesource/jsonforms
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ THE SOFTWARE.
+*/
+__export(__webpack_require__(/*! ./util */ "./src/util/index.ts"));
+__export(__webpack_require__(/*! ./actions */ "./src/actions/index.ts"));
+var Actions = __importStar(__webpack_require__(/*! ./actions */ "./src/actions/index.ts"));
+exports.Actions = Actions;
+__export(__webpack_require__(/*! ./reducers */ "./src/reducers/index.ts"));
+__export(__webpack_require__(/*! ./generators */ "./src/generators/index.ts"));
+__export(__webpack_require__(/*! ./models/uischema */ "./src/models/uischema.ts"));
+var Test = __importStar(__webpack_require__(/*! ./testers */ "./src/testers/index.ts"));
+exports.Test = Test;
+__export(__webpack_require__(/*! ./testers */ "./src/testers/index.ts"));
+var util_1 = __webpack_require__(/*! ./util */ "./src/util/index.ts");
+var Helpers = {
+ createLabelDescriptionFrom: util_1.createLabelDescriptionFrom,
+ convertToValidClassName: util_1.convertToValidClassName
+};
+exports.Helpers = Helpers;
+__export(__webpack_require__(/*! ./util */ "./src/util/index.ts"));
+
+
+/***/ }),
+
+/***/ "./src/models/draft4.ts":
+/*!******************************!*\
+ !*** ./src/models/draft4.ts ***!
+ \******************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+Object.defineProperty(exports, "__esModule", { value: true });
+exports.Draft4 = {
+ id: 'http://json-schema.org/draft-04/schema#',
+ $schema: 'http://json-schema.org/draft-04/schema#',
+ description: 'Core schema meta-schema',
+ definitions: {
+ schemaArray: {
+ type: 'array',
+ minItems: 1,
+ items: { $ref: '#' }
+ },
+ positiveInteger: {
+ type: 'integer',
+ minimum: 0
+ },
+ positiveIntegerDefault0: {
+ allOf: [{ $ref: '#/definitions/positiveInteger' }, { default: 0 }]
+ },
+ simpleTypes: {
+ enum: [
+ 'array',
+ 'boolean',
+ 'integer',
+ 'null',
+ 'number',
+ 'object',
+ 'string'
+ ]
+ },
+ stringArray: {
+ type: 'array',
+ items: { type: 'string' },
+ minItems: 1,
+ uniqueItems: true
+ }
+ },
+ type: 'object',
+ properties: {
+ id: {
+ type: 'string',
+ format: 'uri'
+ },
+ $schema: {
+ type: 'string',
+ format: 'uri'
+ },
+ title: {
+ type: 'string'
+ },
+ description: {
+ type: 'string'
+ },
+ default: {},
+ multipleOf: {
+ type: 'number',
+ minimum: 0,
+ exclusiveMinimum: true
+ },
+ maximum: {
+ type: 'number'
+ },
+ exclusiveMaximum: {
+ type: 'boolean',
+ default: false
+ },
+ minimum: {
+ type: 'number'
+ },
+ exclusiveMinimum: {
+ type: 'boolean',
+ default: false
+ },
+ maxLength: { $ref: '#/definitions/positiveInteger' },
+ minLength: { $ref: '#/definitions/positiveIntegerDefault0' },
+ pattern: {
+ type: 'string',
+ format: 'regex'
+ },
+ additionalItems: {
+ anyOf: [{ type: 'boolean' }, { $ref: '#' }],
+ default: {}
+ },
+ items: {
+ anyOf: [{ $ref: '#' }, { $ref: '#/definitions/schemaArray' }],
+ default: {}
+ },
+ maxItems: { $ref: '#/definitions/positiveInteger' },
+ minItems: { $ref: '#/definitions/positiveIntegerDefault0' },
+ uniqueItems: {
+ type: 'boolean',
+ default: false
+ },
+ maxProperties: { $ref: '#/definitions/positiveInteger' },
+ minProperties: { $ref: '#/definitions/positiveIntegerDefault0' },
+ required: { $ref: '#/definitions/stringArray' },
+ additionalProperties: {
+ anyOf: [{ type: 'boolean' }, { $ref: '#' }],
+ default: {}
+ },
+ definitions: {
+ type: 'object',
+ additionalProperties: { $ref: '#' },
+ default: {}
+ },
+ properties: {
+ type: 'object',
+ additionalProperties: { $ref: '#' },
+ default: {}
+ },
+ patternProperties: {
+ type: 'object',
+ additionalProperties: { $ref: '#' },
+ default: {}
+ },
+ dependencies: {
+ type: 'object',
+ additionalProperties: {
+ anyOf: [{ $ref: '#' }, { $ref: '#/definitions/stringArray' }]
+ }
+ },
+ enum: {
+ type: 'array',
+ minItems: 1,
+ uniqueItems: true
+ },
+ type: {
+ anyOf: [
+ { $ref: '#/definitions/simpleTypes' },
+ {
+ type: 'array',
+ items: { $ref: '#/definitions/simpleTypes' },
+ minItems: 1,
+ uniqueItems: true
+ }
+ ]
+ },
+ allOf: { $ref: '#/definitions/schemaArray' },
+ anyOf: { $ref: '#/definitions/schemaArray' },
+ oneOf: { $ref: '#/definitions/schemaArray' },
+ not: { $ref: '#' }
+ },
+ dependencies: {
+ exclusiveMaximum: ['maximum'],
+ exclusiveMinimum: ['minimum']
+ },
+ default: {}
+};
+
+
+/***/ }),
+
+/***/ "./src/models/uischema.ts":
+/*!********************************!*\
+ !*** ./src/models/uischema.ts ***!
+ \********************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+Object.defineProperty(exports, "__esModule", { value: true });
+/**
+ * The different rule effects.
+ */
+var RuleEffect;
+(function (RuleEffect) {
+ /**
+ * Effect that hides the associated element.
+ */
+ RuleEffect["HIDE"] = "HIDE";
+ /**
+ * Effect that shows the associated element.
+ */
+ RuleEffect["SHOW"] = "SHOW";
+ /**
+ * Effect that enables the associated element.
+ */
+ RuleEffect["ENABLE"] = "ENABLE";
+ /**
+ * Effect that disables the associated element.
+ */
+ RuleEffect["DISABLE"] = "DISABLE";
+})(RuleEffect = exports.RuleEffect || (exports.RuleEffect = {}));
+exports.isGroup = function (layout) {
+ return layout.type === 'Group';
+};
+
+
+/***/ }),
+
+/***/ "./src/reducers/config.ts":
+/*!********************************!*\
+ !*** ./src/reducers/config.ts ***!
+ \********************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var __importDefault = (this && this.__importDefault) || function (mod) {
+ return (mod && mod.__esModule) ? mod : { "default": mod };
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+/*
+ The MIT License
+
+ Copyright (c) 2018 EclipseSource Munich
+ https://github.com/eclipsesource/jsonforms
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ THE SOFTWARE.
+*/
+var merge_1 = __importDefault(__webpack_require__(/*! lodash/merge */ "../../node_modules/lodash/merge.js"));
+var actions_1 = __webpack_require__(/*! ../actions */ "./src/actions/index.ts");
+var configDefault_1 = __webpack_require__(/*! ../configDefault */ "./src/configDefault.ts");
+var applyDefaultConfiguration = function (config) {
+ if (config === void 0) { config = {}; }
+ return merge_1.default({}, configDefault_1.configDefault, config);
+};
+exports.configReducer = function (state, action) {
+ if (state === void 0) { state = applyDefaultConfiguration(); }
+ switch (action.type) {
+ case actions_1.SET_CONFIG:
+ return applyDefaultConfiguration(action.config);
+ default:
+ return state;
+ }
+};
+
+
+/***/ }),
+
+/***/ "./src/reducers/core.ts":
+/*!******************************!*\
+ !*** ./src/reducers/core.ts ***!
+ \******************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __importDefault = (this && this.__importDefault) || function (mod) {
+ return (mod && mod.__esModule) ? mod : { "default": mod };
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+/*
+ The MIT License
+
+ Copyright (c) 2018 EclipseSource Munich
+ https://github.com/eclipsesource/jsonforms
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ THE SOFTWARE.
+*/
+var cloneDeep_1 = __importDefault(__webpack_require__(/*! lodash/cloneDeep */ "../../node_modules/lodash/cloneDeep.js"));
+var set_1 = __importDefault(__webpack_require__(/*! lodash/set */ "../../node_modules/lodash/set.js"));
+var get_1 = __importDefault(__webpack_require__(/*! lodash/get */ "../../node_modules/lodash/get.js"));
+var filter_1 = __importDefault(__webpack_require__(/*! lodash/filter */ "../../node_modules/lodash/filter.js"));
+var actions_1 = __webpack_require__(/*! ../actions */ "./src/actions/index.ts");
+var validator_1 = __webpack_require__(/*! ../util/validator */ "./src/util/validator.ts");
+var validate = function (validator, data) {
+ var valid = validator(data);
+ if (valid) {
+ return [];
+ }
+ return validator.errors;
+};
+var sanitizeErrors = function (validator, data) {
+ return validate(validator, data).map(function (error) {
+ error.dataPath = error.dataPath.replace(/\//g, '.').substr(1);
+ return error;
+ });
+};
+var alwaysValid = function () { return true; };
+var initState = {
+ data: {},
+ schema: {},
+ uischema: undefined,
+ errors: [],
+ validator: alwaysValid,
+ ajv: undefined
+};
+var getOrCreateAjv = function (state, action) {
+ if (action && action.ajv) {
+ return action.ajv;
+ }
+ if (state.ajv) {
+ return state.ajv;
+ }
+ return validator_1.createAjv();
+};
+exports.coreReducer = function (state, action) {
+ if (state === void 0) { state = initState; }
+ switch (action.type) {
+ case actions_1.INIT: {
+ var thisAjv = getOrCreateAjv(state, action);
+ var v = thisAjv.compile(action.schema);
+ var e = sanitizeErrors(v, action.data);
+ return __assign({}, state, { data: action.data, schema: action.schema, uischema: action.uischema, errors: e, validator: v, ajv: thisAjv });
+ }
+ case actions_1.SET_AJV: {
+ var currentAjv = action.ajv;
+ var validator = currentAjv.compile(state.schema);
+ var errors = sanitizeErrors(validator, state.data);
+ return __assign({}, state, { validator: validator,
+ errors: errors });
+ }
+ case actions_1.SET_SCHEMA: {
+ var v = action.schema && state.ajv
+ ? state.ajv.compile(action.schema)
+ : state.validator;
+ return __assign({}, state, { validator: v, schema: action.schema });
+ }
+ case actions_1.SET_UISCHEMA: {
+ return __assign({}, state, { uischema: action.uischema });
+ }
+ case actions_1.UPDATE_DATA: {
+ if (action.path === undefined || action.path === null) {
+ return state;
+ }
+ else if (action.path === '') {
+ // empty path is ok
+ var result = action.updater(cloneDeep_1.default(state.data));
+ if (result === undefined || result === null) {
+ return __assign({}, state, { data: state.data, uischema: state.uischema, schema: state.schema });
+ }
+ var errors = sanitizeErrors(state.validator, result);
+ return __assign({}, state, { data: result, errors: errors });
+ }
+ else {
+ var oldData = get_1.default(state.data, action.path);
+ var newData = action.updater(oldData);
+ if (newData === '') {
+ newData = undefined;
+ }
+ var newState = set_1.default(cloneDeep_1.default(state.data), action.path, newData);
+ var errors = sanitizeErrors(state.validator, newState);
+ return __assign({}, state, { data: newState, errors: errors });
+ }
+ }
+ default:
+ return state;
+ }
+};
+exports.extractData = function (state) { return get_1.default(state, 'data'); };
+exports.extractSchema = function (state) { return get_1.default(state, 'schema'); };
+exports.extractUiSchema = function (state) { return get_1.default(state, 'uischema'); };
+exports.errorAt = function (instancePath) { return function (state) {
+ return filter_1.default(state.errors, function (error) { return error.dataPath === instancePath; });
+}; };
+exports.subErrorsAt = function (instancePath) { return function (state) {
+ var path = instancePath + ".";
+ return filter_1.default(state.errors, function (error) {
+ return error.dataPath.startsWith(path);
+ });
+}; };
+
+
+/***/ }),
+
+/***/ "./src/reducers/default-data.ts":
+/*!**************************************!*\
+ !*** ./src/reducers/default-data.ts ***!
+ \**************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+Object.defineProperty(exports, "__esModule", { value: true });
+/*
+ The MIT License
+
+ Copyright (c) 2018 EclipseSource Munich
+ https://github.com/eclipsesource/jsonforms
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ THE SOFTWARE.
+*/
+var actions_1 = __webpack_require__(/*! ../actions */ "./src/actions/index.ts");
+exports.defaultDataReducer = function (state, action) {
+ if (state === void 0) { state = []; }
+ switch (action.type) {
+ case actions_1.ADD_DEFAULT_DATA:
+ return state.concat([
+ { schemaPath: action.schemaPath, data: action.data }
+ ]);
+ case actions_1.REMOVE_DEFAULT_DATA:
+ return state.filter(function (t) { return t.schemaPath !== action.schemaPath; });
+ default:
+ return state;
+ }
+};
+exports.extractDefaultData = function (state) { return state; };
+
+
+/***/ }),
+
+/***/ "./src/reducers/fields.ts":
+/*!********************************!*\
+ !*** ./src/reducers/fields.ts ***!
+ \********************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+Object.defineProperty(exports, "__esModule", { value: true });
+var actions_1 = __webpack_require__(/*! ../actions */ "./src/actions/index.ts");
+exports.fieldReducer = function (state, _a) {
+ if (state === void 0) { state = []; }
+ var type = _a.type, tester = _a.tester, field = _a.field;
+ switch (type) {
+ case actions_1.ADD_FIELD:
+ return state.concat([{ tester: tester, field: field }]);
+ case actions_1.REMOVE_FIELD:
+ return state.filter(function (t) { return t.tester !== tester; });
+ default:
+ return state;
+ }
+};
+
+
+/***/ }),
+
+/***/ "./src/reducers/i18n.ts":
+/*!******************************!*\
+ !*** ./src/reducers/i18n.ts ***!
+ \******************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+/*
+ The MIT License
+
+ Copyright (c) 2018 EclipseSource Munich
+ https://github.com/eclipsesource/jsonforms
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ THE SOFTWARE.
+*/
+var actions_1 = __webpack_require__(/*! ../actions */ "./src/actions/index.ts");
+var __1 = __webpack_require__(/*! .. */ "./src/index.ts");
+var initState = {
+ locale: undefined,
+ localizedSchemas: new Map(),
+ localizedUISchemas: new Map()
+};
+exports.i18nReducer = function (state, action) {
+ if (state === void 0) { state = initState; }
+ switch (action.type) {
+ case actions_1.SET_LOCALIZED_SCHEMAS:
+ return __assign({}, state, { localizedSchemas: action.localizedSchemas });
+ case __1.SET_LOCALIZED_UISCHEMAS:
+ return __assign({}, state, { localizedUISchemas: action.localizedUISchemas });
+ case actions_1.SET_LOCALE:
+ return __assign({}, state, { locale: action.locale === undefined ? navigator.languages[0] : action.locale });
+ default:
+ return state;
+ }
+};
+exports.fetchLocale = function (state) {
+ if (state === undefined) {
+ return undefined;
+ }
+ return state.locale;
+};
+exports.findLocalizedSchema = function (locale) { return function (state) {
+ if (state === undefined) {
+ return undefined;
+ }
+ return state.localizedSchemas.get(locale);
+}; };
+exports.findLocalizedUISchema = function (locale) { return function (state) {
+ if (state === undefined) {
+ return undefined;
+ }
+ return state.localizedUISchemas.get(locale);
+}; };
+
+
+/***/ }),
+
+/***/ "./src/reducers/index.ts":
+/*!*******************************!*\
+ !*** ./src/reducers/index.ts ***!
+ \*******************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __importDefault = (this && this.__importDefault) || function (mod) {
+ return (mod && mod.__esModule) ? mod : { "default": mod };
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+/*
+ The MIT License
+
+ Copyright (c) 2018 EclipseSource Munich
+ https://github.com/eclipsesource/jsonforms
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ THE SOFTWARE.
+*/
+var get_1 = __importDefault(__webpack_require__(/*! lodash/get */ "../../node_modules/lodash/get.js"));
+var default_data_1 = __webpack_require__(/*! ./default-data */ "./src/reducers/default-data.ts");
+var redux_1 = __webpack_require__(/*! redux */ "redux");
+var renderers_1 = __webpack_require__(/*! ./renderers */ "./src/reducers/renderers.ts");
+exports.rendererReducer = renderers_1.rendererReducer;
+var fields_1 = __webpack_require__(/*! ./fields */ "./src/reducers/fields.ts");
+exports.fieldReducer = fields_1.fieldReducer;
+var config_1 = __webpack_require__(/*! ./config */ "./src/reducers/config.ts");
+var core_1 = __webpack_require__(/*! ./core */ "./src/reducers/core.ts");
+exports.coreReducer = core_1.coreReducer;
+var uischemas_1 = __webpack_require__(/*! ./uischemas */ "./src/reducers/uischemas.ts");
+var __1 = __webpack_require__(/*! .. */ "./src/index.ts");
+var i18n_1 = __webpack_require__(/*! ./i18n */ "./src/reducers/i18n.ts");
+exports.jsonformsReducer = function (additionalReducers) {
+ if (additionalReducers === void 0) { additionalReducers = {}; }
+ return redux_1.combineReducers(__assign({ core: core_1.coreReducer, renderers: renderers_1.rendererReducer, fields: fields_1.fieldReducer, config: config_1.configReducer, uischemas: uischemas_1.uischemaRegistryReducer, defaultData: default_data_1.defaultDataReducer, i18n: i18n_1.i18nReducer }, additionalReducers));
+};
+exports.getData = function (state) {
+ return core_1.extractData(get_1.default(state, 'jsonforms.core'));
+};
+exports.getSchema = function (state) {
+ return core_1.extractSchema(get_1.default(state, 'jsonforms.core'));
+};
+exports.getUiSchema = function (state) {
+ return core_1.extractUiSchema(get_1.default(state, 'jsonforms.core'));
+};
+exports.getDefaultData = function (state) {
+ return default_data_1.extractDefaultData(get_1.default(state, 'jsonforms.defaultData'));
+};
+exports.getRenderers = function (state) { return get_1.default(state, 'jsonforms.renderers'); };
+exports.findUISchema = function (state) { return function (schema, schemaPath, path, fallbackLayoutType, control) {
+ if (fallbackLayoutType === void 0) { fallbackLayoutType = 'VerticalLayout'; }
+ // handle options
+ if (control && control.options && control.options.detail) {
+ if (typeof control.options.detail === 'string') {
+ if (control.options.detail.toUpperCase() === 'GENERATE') {
+ // force generation of uischema
+ return __1.Generate.uiSchema(schema, fallbackLayoutType);
+ }
+ }
+ else if (typeof control.options.detail === 'object') {
+ // check if detail is a valid uischema
+ if (control.options.detail.type &&
+ typeof control.options.detail.type === 'string') {
+ return control.options.detail;
+ }
+ }
+ }
+ // default
+ var uiSchema = uischemas_1.findMatchingUISchema(state.jsonforms.uischemas)(schema, schemaPath, path);
+ if (uiSchema === undefined) {
+ return __1.Generate.uiSchema(schema, fallbackLayoutType);
+ }
+ return uiSchema;
+}; };
+exports.getErrorAt = function (instancePath) { return function (state) {
+ return core_1.errorAt(instancePath)(state.jsonforms.core);
+}; };
+exports.getSubErrorsAt = function (instancePath) { return function (state) { return core_1.subErrorsAt(instancePath)(state.jsonforms.core); }; };
+exports.getConfig = function (state) { return state.jsonforms.config; };
+exports.getLocale = function (state) {
+ return i18n_1.fetchLocale(get_1.default(state, 'jsonforms.i18n'));
+};
+exports.getLocalizedSchema = function (locale) { return function (state) { return i18n_1.findLocalizedSchema(locale)(get_1.default(state, 'jsonforms.i18n')); }; };
+exports.getLocalizedUISchema = function (locale) { return function (state) {
+ return i18n_1.findLocalizedUISchema(locale)(get_1.default(state, 'jsonforms.i18n'));
+}; };
+
+
+/***/ }),
+
+/***/ "./src/reducers/renderers.ts":
+/*!***********************************!*\
+ !*** ./src/reducers/renderers.ts ***!
+ \***********************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+Object.defineProperty(exports, "__esModule", { value: true });
+var actions_1 = __webpack_require__(/*! ../actions */ "./src/actions/index.ts");
+exports.rendererReducer = function (state, action) {
+ if (state === void 0) { state = []; }
+ switch (action.type) {
+ case actions_1.ADD_RENDERER:
+ return state.concat([
+ { tester: action.tester, renderer: action.renderer }
+ ]);
+ case actions_1.REMOVE_RENDERER:
+ return state.filter(function (t) { return t.tester !== action.tester; });
+ default:
+ return state;
+ }
+};
+
+
+/***/ }),
+
+/***/ "./src/reducers/uischemas.ts":
+/*!***********************************!*\
+ !*** ./src/reducers/uischemas.ts ***!
+ \***********************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var __importDefault = (this && this.__importDefault) || function (mod) {
+ return (mod && mod.__esModule) ? mod : { "default": mod };
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var maxBy_1 = __importDefault(__webpack_require__(/*! lodash/maxBy */ "../../node_modules/lodash/maxBy.js"));
+var remove_1 = __importDefault(__webpack_require__(/*! lodash/remove */ "../../node_modules/lodash/remove.js"));
+var actions_1 = __webpack_require__(/*! ../actions */ "./src/actions/index.ts");
+var __1 = __webpack_require__(/*! .. */ "./src/index.ts");
+exports.uischemaRegistryReducer = function (state, action) {
+ if (state === void 0) { state = []; }
+ switch (action.type) {
+ case actions_1.ADD_UI_SCHEMA:
+ return state
+ .slice()
+ .concat({ tester: action.tester, uischema: action.uischema });
+ case actions_1.REMOVE_UI_SCHEMA:
+ var copy = state.slice();
+ remove_1.default(copy, function (entry) { return entry.tester === action.tester; });
+ return copy;
+ default:
+ return state;
+ }
+};
+exports.findMatchingUISchema = function (state) { return function (jsonSchema, schemaPath, path) {
+ var match = maxBy_1.default(state, function (entry) {
+ return entry.tester(jsonSchema, schemaPath, path);
+ });
+ if (match !== undefined &&
+ match.tester(jsonSchema, schemaPath, path) !== __1.NOT_APPLICABLE) {
+ return match.uischema;
+ }
+ return undefined;
+}; };
+
+
+/***/ }),
+
+/***/ "./src/testers/index.ts":
+/*!******************************!*\
+ !*** ./src/testers/index.ts ***!
+ \******************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var __importDefault = (this && this.__importDefault) || function (mod) {
+ return (mod && mod.__esModule) ? mod : { "default": mod };
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+/*
+ The MIT License
+
+ Copyright (c) 2018 EclipseSource Munich
+ https://github.com/eclipsesource/jsonforms
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ THE SOFTWARE.
+*/
+var isEmpty_1 = __importDefault(__webpack_require__(/*! lodash/isEmpty */ "../../node_modules/lodash/isEmpty.js"));
+var get_1 = __importDefault(__webpack_require__(/*! lodash/get */ "../../node_modules/lodash/get.js"));
+var endsWith_1 = __importDefault(__webpack_require__(/*! lodash/endsWith */ "../../node_modules/lodash/endsWith.js"));
+var last_1 = __importDefault(__webpack_require__(/*! lodash/last */ "../../node_modules/lodash/last.js"));
+var isArray_1 = __importDefault(__webpack_require__(/*! lodash/isArray */ "../../node_modules/lodash/isArray.js"));
+var reduce_1 = __importDefault(__webpack_require__(/*! lodash/reduce */ "../../node_modules/lodash/reduce.js"));
+var toPairs_1 = __importDefault(__webpack_require__(/*! lodash/toPairs */ "../../node_modules/lodash/toPairs.js"));
+var has_1 = __importDefault(__webpack_require__(/*! lodash/has */ "../../node_modules/lodash/has.js"));
+var includes_1 = __importDefault(__webpack_require__(/*! lodash/includes */ "../../node_modules/lodash/includes.js"));
+var resolvers_1 = __webpack_require__(/*! ../util/resolvers */ "./src/util/resolvers.ts");
+/**
+ * Constant that indicates that a tester is not capable of handling
+ * a combination of schema/data.
+ * @type {number}
+ */
+exports.NOT_APPLICABLE = -1;
+exports.isControl = function (uischema) {
+ return !isEmpty_1.default(uischema) &&
+ uischema.scope !== undefined &&
+ uischema.scope !== undefined;
+};
+/**
+ * Only applicable for Controls.
+ *
+ * This function checks whether the given UI schema is of type Control
+ * and if so, resolves the sub-schema referenced by the control and applies
+ * the given predicate
+ *
+ * @param {(JsonSchema) => boolean} predicate the predicate that should be
+ * applied to the resolved sub-schema
+ */
+exports.schemaMatches = function (predicate) { return function (uischema, schema) {
+ if (isEmpty_1.default(uischema) || !exports.isControl(uischema)) {
+ return false;
+ }
+ var schemaPath = uischema.scope;
+ if (isEmpty_1.default(schemaPath)) {
+ return false;
+ }
+ var currentDataSchema = resolvers_1.resolveSchema(schema, schemaPath);
+ while (!isEmpty_1.default(currentDataSchema) && !isEmpty_1.default(currentDataSchema.$ref)) {
+ currentDataSchema = resolvers_1.resolveSchema(schema, currentDataSchema.$ref);
+ }
+ if (currentDataSchema === undefined) {
+ return false;
+ }
+ return predicate(currentDataSchema);
+}; };
+exports.schemaSubPathMatches = function (subPath, predicate) { return function (uischema, schema) {
+ if (isEmpty_1.default(uischema) || !exports.isControl(uischema)) {
+ return false;
+ }
+ var schemaPath = uischema.scope;
+ if (isEmpty_1.default(schemaPath)) {
+ return false;
+ }
+ var currentDataSchema = resolvers_1.resolveSchema(schema, "" + schemaPath);
+ while (!isEmpty_1.default(currentDataSchema.$ref)) {
+ currentDataSchema = resolvers_1.resolveSchema(schema, currentDataSchema.$ref);
+ }
+ currentDataSchema = get_1.default(currentDataSchema, subPath);
+ if (currentDataSchema === undefined) {
+ return false;
+ }
+ return predicate(currentDataSchema);
+}; };
+/**
+ * Only applicable for Controls.
+ *
+ * This function checks whether the given UI schema is of type Control
+ * and if so, resolves the sub-schema referenced by the control and checks
+ * whether the type of the sub-schema matches the expected one.
+ *
+ * @param {string} expectedType the expected type of the resolved sub-schema
+ */
+exports.schemaTypeIs = function (expectedType) {
+ return exports.schemaMatches(function (schema) { return !isEmpty_1.default(schema) && schema.type === expectedType; });
+};
+/**
+ * Only applicable for Controls.
+ *
+ * This function checks whether the given UI schema is of type Control
+ * and if so, resolves the sub-schema referenced by the control and checks
+ * whether the format of the sub-schema matches the expected one.
+ *
+ * @param {string} expectedFormat the expected format of the resolved sub-schema
+ */
+exports.formatIs = function (expectedFormat) {
+ return exports.schemaMatches(function (schema) {
+ return !isEmpty_1.default(schema) &&
+ schema.format === expectedFormat &&
+ schema.type === 'string';
+ });
+};
+/**
+ * Checks whether the given UI schema has the expected type.
+ *
+ * @param {string} expected the expected UI schema type
+ */
+exports.uiTypeIs = function (expected) { return function (uischema) { return !isEmpty_1.default(uischema) && uischema.type === expected; }; };
+/**
+ * Checks whether the given UI schema has an option with the given
+ * name and whether it has the expected value. If no options property
+ * is set, returns false.
+ *
+ * @param {string} optionName the name of the option to check
+ * @param {any} optionValue the expected value of the option
+ */
+exports.optionIs = function (optionName, optionValue) { return function (uischema) {
+ var options = uischema.options;
+ return !isEmpty_1.default(options) && options[optionName] === optionValue;
+}; };
+/**
+ * Only applicable for Controls.
+ *
+ * Checks whether the scope of a control ends with the expected string.
+ *
+ * @param {string} expected the expected ending of the reference
+ */
+exports.scopeEndsWith = function (expected) { return function (uischema) {
+ if (isEmpty_1.default(expected) || !exports.isControl(uischema)) {
+ return false;
+ }
+ return endsWith_1.default(uischema.scope, expected);
+}; };
+/**
+ * Only applicable for Controls.
+ *
+ * Checks whether the last segment of the scope matches the expected string.
+ *
+ * @param {string} expected the expected ending of the reference
+ */
+exports.scopeEndIs = function (expected) { return function (uischema) {
+ if (isEmpty_1.default(expected) || !exports.isControl(uischema)) {
+ return false;
+ }
+ var schemaPath = uischema.scope;
+ return !isEmpty_1.default(schemaPath) && last_1.default(schemaPath.split('/')) === expected;
+}; };
+/**
+ * A tester that allow composing other testers by && them.
+ *
+ * @param {Array} testers the testers to be composed
+ */
+exports.and = function () {
+ var testers = [];
+ for (var _i = 0; _i < arguments.length; _i++) {
+ testers[_i] = arguments[_i];
+ }
+ return function (uischema, schema) { return testers.reduce(function (acc, tester) { return acc && tester(uischema, schema); }, true); };
+};
+/**
+ * A tester that allow composing other testers by || them.
+ *
+ * @param {Array} testers the testers to be composed
+ */
+exports.or = function () {
+ var testers = [];
+ for (var _i = 0; _i < arguments.length; _i++) {
+ testers[_i] = arguments[_i];
+ }
+ return function (uischema, schema) { return testers.reduce(function (acc, tester) { return acc || tester(uischema, schema); }, false); };
+};
+/**
+ * Create a ranked tester that will associate a number with a given tester, if the
+ * latter returns true.
+ *
+ * @param {number} rank the rank to be returned in case the tester returns true
+ * @param {Tester} tester a tester
+ */
+exports.rankWith = function (rank, tester) { return function (uischema, schema) {
+ if (tester(uischema, schema)) {
+ return rank;
+ }
+ return exports.NOT_APPLICABLE;
+}; };
+exports.withIncreasedRank = function (by, rankedTester) { return function (uischema, schema) {
+ var rank = rankedTester(uischema, schema);
+ if (rank === exports.NOT_APPLICABLE) {
+ return exports.NOT_APPLICABLE;
+ }
+ return rank + by;
+}; };
+/**
+ * Default tester for boolean.
+ * @type {RankedTester}
+ */
+exports.isBooleanControl = exports.and(exports.uiTypeIs('Control'), exports.schemaTypeIs('boolean'));
+// TODO: rather check for properties property
+exports.isObjectControl = exports.and(exports.uiTypeIs('Control'), exports.schemaTypeIs('object'));
+exports.isAllOfControl = exports.and(exports.uiTypeIs('Control'), exports.schemaMatches(function (schema) { return schema.hasOwnProperty('allOf'); }));
+exports.isAnyOfControl = exports.and(exports.uiTypeIs('Control'), exports.schemaMatches(function (schema) { return schema.hasOwnProperty('anyOf'); }));
+exports.isOneOfControl = exports.and(exports.uiTypeIs('Control'), exports.schemaMatches(function (schema) { return schema.hasOwnProperty('oneOf'); }));
+/**
+ * Tests whether the given UI schema is of type Control and if the schema
+ * has a 'date' format.
+ * @type {Tester}
+ */
+exports.isDateControl = exports.and(exports.uiTypeIs('Control'), exports.formatIs('date'));
+/**
+ * Tests whether the given UI schema is of type Control and if the schema
+ * has an enum.
+ * @type {Tester}
+ */
+exports.isEnumControl = exports.and(exports.uiTypeIs('Control'), exports.schemaMatches(function (schema) { return schema.hasOwnProperty('enum'); }));
+/**
+ * Tests whether the given UI schema is of type Control and if the schema
+ * is of type integer
+ * @type {Tester}
+ */
+exports.isIntegerControl = exports.and(exports.uiTypeIs('Control'), exports.schemaTypeIs('integer'));
+/**
+ * Tests whether the given UI schema is of type Control and if the schema
+ * is of type number
+ * @type {Tester}
+ */
+exports.isNumberControl = exports.and(exports.uiTypeIs('Control'), exports.schemaTypeIs('number'));
+/**
+ * Tests whether the given UI schema is of type Control and if the schema
+ * is of type string
+ * @type {Tester}
+ */
+exports.isStringControl = exports.and(exports.uiTypeIs('Control'), exports.schemaTypeIs('string'));
+/**
+ * Tests whether the given UI schema is of type Control and if is has
+ * a 'multi' option.
+ * @type {Tester}
+ */
+exports.isMultiLineControl = exports.and(exports.uiTypeIs('Control'), exports.optionIs('multi', true));
+/**
+ * Tests whether the given UI schema is of type Control and if the schema
+ * has a 'time' format.
+ * @type {Tester}
+ */
+exports.isTimeControl = exports.and(exports.uiTypeIs('Control'), exports.formatIs('time'));
+/**
+ * Tests whether the given UI schema is of type Control and if the schema
+ * has a 'date-time' format.
+ * @type {Tester}
+ */
+exports.isDateTimeControl = exports.and(exports.uiTypeIs('Control'), exports.formatIs('date-time'));
+/**
+ * Tests whether the given UI schema is of type Control and if the schema
+ * is an array of objects.
+ * @type {Tester}
+ */
+exports.isObjectArrayControl = exports.and(exports.uiTypeIs('Control'), exports.schemaMatches(function (schema) {
+ return !isEmpty_1.default(schema) &&
+ schema.type === 'array' &&
+ !isEmpty_1.default(schema.items) &&
+ !Array.isArray(schema.items);
+} // we don't care about tuples
+), exports.schemaSubPathMatches('items', function (schema) { return schema.type === 'object'; }));
+var traverse = function (any, pred) {
+ if (isArray_1.default(any)) {
+ return reduce_1.default(any, function (acc, el) { return acc || traverse(el, pred); }, false);
+ }
+ if (pred(any)) {
+ return true;
+ }
+ if (any.items) {
+ return traverse(any.items, pred);
+ }
+ if (any.properties) {
+ return reduce_1.default(toPairs_1.default(any.properties), function (acc, _a) {
+ var _key = _a[0], val = _a[1];
+ return acc || traverse(val, pred);
+ }, false);
+ }
+ return false;
+};
+exports.isObjectArrayWithNesting = function (uischema, schema) {
+ if (!exports.uiTypeIs('Control')(uischema, schema)) {
+ return false;
+ }
+ var schemaPath = uischema.scope;
+ var resolvedSchema = resolvers_1.resolveSchema(schema, schemaPath);
+ var wantedNestingByType = {
+ object: 2,
+ array: 1
+ };
+ if (has_1.default(resolvedSchema, 'items')) {
+ // check if nested arrays
+ if (traverse(resolvedSchema.items, function (val) {
+ if (val === schema) {
+ return false;
+ }
+ // we don't support multiple types
+ if (typeof val.type !== 'string') {
+ return true;
+ }
+ var typeCount = wantedNestingByType[val.type];
+ if (typeCount === undefined) {
+ return false;
+ }
+ wantedNestingByType[val.type] = typeCount - 1;
+ if (wantedNestingByType[val.type] === 0) {
+ return true;
+ }
+ return false;
+ })) {
+ return true;
+ }
+ // check if uischema options detail is set
+ if (uischema.options && uischema.options.detail) {
+ if (typeof uischema.options.detail === 'string') {
+ return uischema.options.detail.toUpperCase() !== 'DEFAULT';
+ }
+ else if (typeof uischema.options.detail === 'object' &&
+ uischema.options.detail.type) {
+ return true;
+ }
+ }
+ }
+ return false;
+};
+/**
+ * Synonym for isObjectArrayControl
+ */
+exports.isArrayObjectControl = exports.isObjectArrayControl;
+/**
+ * Tests whether the given UI schema is of type Control and if the schema
+ * is an array of a primitive type.
+ * @type {Tester}
+ */
+exports.isPrimitiveArrayControl = exports.and(exports.uiTypeIs('Control'), exports.schemaMatches(function (schema) {
+ return !isEmpty_1.default(schema) &&
+ schema.type === 'array' &&
+ !isEmpty_1.default(schema.items) &&
+ !Array.isArray(schema.items);
+} // we don't care about tuples
+), exports.schemaSubPathMatches('items', function (schema) {
+ return includes_1.default(['integer', 'number', 'boolean', 'string'], schema.type);
+}));
+/**
+ * Tests whether a given UI schema is of type Control,
+ * if the schema is of type number or integer and
+ * whether the schema defines a numerical range with a default value.
+ * @type {Tester}
+ */
+exports.isRangeControl = exports.and(exports.uiTypeIs('Control'), exports.or(exports.schemaTypeIs('number'), exports.schemaTypeIs('integer')), exports.schemaMatches(function (schema) {
+ return schema.hasOwnProperty('maximum') &&
+ schema.hasOwnProperty('minimum') &&
+ schema.hasOwnProperty('default');
+}), exports.optionIs('slider', true));
+/**
+ * Tests whether the given UI schema is of type Control, if the schema
+ * is of type string and has option format
+ * @type {Tester}
+ */
+exports.isNumberFormatControl = exports.and(exports.uiTypeIs('Control'), exports.schemaTypeIs('integer'), exports.optionIs('format', true));
+exports.isCategorization = function (category) { return category.type === 'Categorization'; };
+exports.isCategory = function (uischema) {
+ return uischema.type === 'Category';
+};
+exports.hasCategory = function (categorization) {
+ if (isEmpty_1.default(categorization.elements)) {
+ return false;
+ }
+ // all children of the categorization have to be categories
+ return categorization.elements
+ .map(function (elem) {
+ return exports.isCategorization(elem) ? exports.hasCategory(elem) : exports.isCategory(elem);
+ })
+ .reduce(function (prev, curr) { return prev && curr; }, true);
+};
+exports.categorizationHasCategory = function (uischema) {
+ return exports.hasCategory(uischema);
+};
+
+
+/***/ }),
+
+/***/ "./src/util/field.ts":
+/*!***************************!*\
+ !*** ./src/util/field.ts ***!
+ \***************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __importDefault = (this && this.__importDefault) || function (mod) {
+ return (mod && mod.__esModule) ? mod : { "default": mod };
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+/*
+ The MIT License
+
+ Copyright (c) 2018 EclipseSource Munich
+ https://github.com/eclipsesource/jsonforms
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ THE SOFTWARE.
+*/
+var isEmpty_1 = __importDefault(__webpack_require__(/*! lodash/isEmpty */ "../../node_modules/lodash/isEmpty.js"));
+var has_1 = __importDefault(__webpack_require__(/*! lodash/has */ "../../node_modules/lodash/has.js"));
+var cloneDeep_1 = __importDefault(__webpack_require__(/*! lodash/cloneDeep */ "../../node_modules/lodash/cloneDeep.js"));
+var merge_1 = __importDefault(__webpack_require__(/*! lodash/merge */ "../../node_modules/lodash/merge.js"));
+var reducers_1 = __webpack_require__(/*! ../reducers */ "./src/reducers/index.ts");
+var util_1 = __webpack_require__(/*! ../util */ "./src/util/index.ts");
+var renderer_1 = __webpack_require__(/*! ./renderer */ "./src/util/renderer.ts");
+/**
+ * Map state to field props.
+ *
+ * @param state JSONForms state tree
+ * @param ownProps any own props
+ * @returns {StatePropsOfField} state props of a field
+ */
+exports.mapStateToFieldProps = function (state, ownProps) {
+ var path = util_1.composeWithUi(ownProps.uischema, ownProps.path);
+ var visible = has_1.default(ownProps, 'visible')
+ ? ownProps.visible
+ : util_1.isVisible(ownProps, state);
+ var enabled = has_1.default(ownProps, 'enabled')
+ ? ownProps.enabled
+ : util_1.isEnabled(ownProps, state);
+ var errors = reducers_1.getErrorAt(path)(state).map(function (error) { return error.message; });
+ var isValid = isEmpty_1.default(errors);
+ var controlElement = ownProps.uischema;
+ var id = ownProps.id;
+ var defaultConfig = cloneDeep_1.default(reducers_1.getConfig(state));
+ var config = merge_1.default(defaultConfig, ownProps.uischema.options);
+ return {
+ data: ownProps.data !== undefined
+ ? util_1.Resolve.data(ownProps.data, path)
+ : util_1.Resolve.data(reducers_1.getData(state), path),
+ visible: visible,
+ enabled: enabled,
+ id: id,
+ path: path,
+ errors: errors,
+ isValid: isValid,
+ scopedSchema: util_1.Resolve.schema(ownProps.schema, controlElement.scope),
+ uischema: ownProps.uischema,
+ schema: ownProps.schema,
+ config: config,
+ findUISchema: reducers_1.findUISchema(state)
+ };
+};
+exports.mapStateToDispatchFieldProps = function (state, ownProps) {
+ var props = exports.mapStateToFieldProps(state, ownProps);
+ return __assign({}, props, ownProps, { fields: state.jsonforms.fields || [] });
+};
+/**
+ * Default mapStateToFieldProps for enum field. Options is used for populating dropdown list
+ * @param state
+ * @param ownProps
+ * @returns {StatePropsOfEnumField}
+ */
+exports.defaultMapStateToEnumFieldProps = function (state, ownProps) {
+ var props = exports.mapStateToFieldProps(state, ownProps);
+ var options = ownProps.options !== undefined ? ownProps.options : props.scopedSchema.enum;
+ return __assign({}, props, { options: options });
+};
+/**
+ * Synonym for mapDispatchToControlProps.
+ *
+ * @type {(dispatch) => {handleChange(path, value): void}}
+ */
+exports.mapDispatchToFieldProps = renderer_1.mapDispatchToControlProps;
+/**
+ * Default dispatch to control props which can be customized to set handleChange action
+ *
+ */
+exports.defaultMapDispatchToControlProps =
+// TODO: ownProps types
+function (dispatch, ownProps) {
+ var dispatchControlProps = exports.mapDispatchToFieldProps(dispatch);
+ return {
+ handleChange: ownProps.handleChange !== undefined
+ ? ownProps.handleChange
+ : dispatchControlProps.handleChange
+ };
+};
+
+
+/***/ }),
+
+/***/ "./src/util/ids.ts":
+/*!*************************!*\
+ !*** ./src/util/ids.ts ***!
+ \*************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+Object.defineProperty(exports, "__esModule", { value: true });
+var usedIds = new Set();
+var makeId = function (idBase, iteration) {
+ return iteration <= 1 ? idBase : idBase + iteration.toString();
+};
+var isUniqueId = function (idBase, iteration) {
+ var newID = makeId(idBase, iteration);
+ return !usedIds.has(newID);
+};
+exports.createId = function (proposedId) {
+ if (proposedId === undefined) {
+ // failsafe to avoid endless loops in error cases
+ proposedId = 'undefined';
+ }
+ var tries = 0;
+ while (!isUniqueId(proposedId, tries)) {
+ tries++;
+ }
+ var newID = makeId(proposedId, tries);
+ usedIds.add(newID);
+ return newID;
+};
+exports.removeId = function (id) { return usedIds.delete(id); };
+exports.clearAllIds = function () { return usedIds.clear(); };
+
+
+/***/ }),
+
+/***/ "./src/util/index.ts":
+/*!***************************!*\
+ !*** ./src/util/index.ts ***!
+ \***************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+function __export(m) {
+ for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];
+}
+Object.defineProperty(exports, "__esModule", { value: true });
+var resolvers_1 = __webpack_require__(/*! ./resolvers */ "./src/util/resolvers.ts");
+var path_1 = __webpack_require__(/*! ./path */ "./src/util/path.ts");
+exports.composePaths = path_1.compose;
+exports.composeWithUi = path_1.composeWithUi;
+exports.toDataPath = path_1.toDataPath;
+var runtime_1 = __webpack_require__(/*! ./runtime */ "./src/util/runtime.ts");
+exports.isEnabled = runtime_1.isEnabled;
+exports.isVisible = runtime_1.isVisible;
+var label_1 = __webpack_require__(/*! ./label */ "./src/util/label.ts");
+exports.createCleanLabel = label_1.createCleanLabel;
+exports.createLabelDescriptionFrom = label_1.createLabelDescriptionFrom;
+/**
+ * Escape the given string such that it can be used as a class name,
+ * i.e. hashes and slashes will be replaced.
+ *
+ * @param {string} s the string that should be converted to a valid class name
+ * @returns {string} the escaped string
+ */
+exports.convertToValidClassName = function (s) {
+ return s.replace('#', 'root').replace(new RegExp('/', 'g'), '_');
+};
+exports.formatErrorMessage = function (errors) {
+ if (errors === undefined || errors === null) {
+ return '';
+ }
+ return errors.join('\n');
+};
+/**
+ * Convenience wrapper around resolveData and resolveSchema.
+ */
+var Resolve = {
+ schema: resolvers_1.resolveSchema,
+ data: resolvers_1.resolveData
+};
+exports.Resolve = Resolve;
+var resolvers_2 = __webpack_require__(/*! ./resolvers */ "./src/util/resolvers.ts");
+exports.resolveData = resolvers_2.resolveData;
+exports.resolveSchema = resolvers_2.resolveSchema;
+// Paths --
+var fromScopable = function (scopable) {
+ return path_1.toDataPathSegments(scopable.scope).join('.');
+};
+var Paths = {
+ compose: path_1.compose,
+ fromScopable: fromScopable
+};
+exports.Paths = Paths;
+// Runtime --
+var Runtime = {
+ isEnabled: function (props, state) {
+ return runtime_1.isEnabled(props, state);
+ },
+ isVisible: function (props, state) {
+ return runtime_1.isVisible(props, state);
+ }
+};
+exports.Runtime = Runtime;
+__export(__webpack_require__(/*! ./renderer */ "./src/util/renderer.ts"));
+__export(__webpack_require__(/*! ./field */ "./src/util/field.ts"));
+__export(__webpack_require__(/*! ./runtime */ "./src/util/runtime.ts"));
+__export(__webpack_require__(/*! ./ids */ "./src/util/ids.ts"));
+__export(__webpack_require__(/*! ./validator */ "./src/util/validator.ts"));
+
+
+/***/ }),
+
+/***/ "./src/util/label.ts":
+/*!***************************!*\
+ !*** ./src/util/label.ts ***!
+ \***************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var __importDefault = (this && this.__importDefault) || function (mod) {
+ return (mod && mod.__esModule) ? mod : { "default": mod };
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+/*
+ The MIT License
+
+ Copyright (c) 2018 EclipseSource Munich
+ https://github.com/eclipsesource/jsonforms
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ THE SOFTWARE.
+*/
+var startCase_1 = __importDefault(__webpack_require__(/*! lodash/startCase */ "../../node_modules/lodash/startCase.js"));
+var deriveLabel = function (controlElement) {
+ if (controlElement.scope !== undefined) {
+ var ref = controlElement.scope;
+ var label = ref.substr(ref.lastIndexOf('/') + 1);
+ return startCase_1.default(label);
+ }
+ return '';
+};
+exports.createCleanLabel = function (label) {
+ return startCase_1.default(label.replace('_', ' '));
+};
+/**
+ * Return a label object based on the given control element.
+ * @param {ControlElement} withLabel the UI schema to obtain a label object for
+ * @returns {LabelDescription}
+ */
+exports.createLabelDescriptionFrom = function (withLabel) {
+ var labelProperty = withLabel.label;
+ var derivedLabel = deriveLabel(withLabel);
+ if (typeof labelProperty === 'boolean') {
+ if (labelProperty) {
+ return {
+ text: derivedLabel,
+ show: labelProperty
+ };
+ }
+ else {
+ return {
+ text: derivedLabel,
+ show: labelProperty
+ };
+ }
+ }
+ else if (typeof labelProperty === 'string') {
+ return {
+ text: labelProperty,
+ show: true
+ };
+ }
+ else if (typeof labelProperty === 'object') {
+ var show = labelProperty.hasOwnProperty('show')
+ ? labelProperty.show
+ : true;
+ var label = labelProperty.hasOwnProperty('text')
+ ? labelProperty.text
+ : derivedLabel;
+ return {
+ text: label,
+ show: show
+ };
+ }
+ else {
+ return {
+ text: derivedLabel,
+ show: true
+ };
+ }
+};
+
+
+/***/ }),
+
+/***/ "./src/util/path.ts":
+/*!**************************!*\
+ !*** ./src/util/path.ts ***!
+ \**************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var __importDefault = (this && this.__importDefault) || function (mod) {
+ return (mod && mod.__esModule) ? mod : { "default": mod };
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+/*
+ The MIT License
+
+ Copyright (c) 2018 EclipseSource Munich
+ https://github.com/eclipsesource/jsonforms
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ THE SOFTWARE.
+*/
+var isEmpty_1 = __importDefault(__webpack_require__(/*! lodash/isEmpty */ "../../node_modules/lodash/isEmpty.js"));
+var range_1 = __importDefault(__webpack_require__(/*! lodash/range */ "../../node_modules/lodash/range.js"));
+exports.compose = function (path1, path2) {
+ var p1 = path1;
+ if (!isEmpty_1.default(path1) && !isEmpty_1.default(path2) && !path2.startsWith('[')) {
+ p1 = path1 + '.';
+ }
+ if (isEmpty_1.default(p1)) {
+ return path2;
+ }
+ else if (isEmpty_1.default(path2)) {
+ return p1;
+ }
+ else {
+ return "" + p1 + path2;
+ }
+};
+/**
+ * Convert a schema path (i.e. JSON pointer) to an array by splitting
+ * at the '/' character and removing all schema-specific keywords.
+ *
+ * The returned value can be used to de-reference a root object by folding over it
+ * and de-referencing the single segments to obtain a new object.
+ *
+ *
+ * @param {string} schemaPath the schema path to be converted
+ * @returns {string[]} an array containing only non-schema-specific segments
+ */
+exports.toDataPathSegments = function (schemaPath) {
+ var s = schemaPath
+ .replace(/anyOf\/[\d]\//, '')
+ .replace(/allOf\/[\d]\//, '')
+ .replace(/oneOf\/[\d]\//, '');
+ var segments = s.split('/');
+ var startFromRoot = segments[0] === '#' || segments[0] === '';
+ var startIndex = startFromRoot ? 2 : 1;
+ return range_1.default(startIndex, segments.length, 2).map(function (idx) { return segments[idx]; });
+};
+/**
+ * Remove all schema-specific keywords (e.g. 'properties') from a given path.
+ * @example
+ * toDataPath('#/properties/foo/properties/bar') === '#/foo/bar')
+ *
+ * @param {string} schemaPath the schema path to be converted
+ * @returns {string} the path without schema-specific keywords
+ */
+exports.toDataPath = function (schemaPath) {
+ return exports.toDataPathSegments(schemaPath).join('.');
+};
+exports.composeWithUi = function (scopableUi, path) {
+ var segments = exports.toDataPathSegments(scopableUi.scope);
+ if (isEmpty_1.default(segments) && path === undefined) {
+ return '';
+ }
+ return isEmpty_1.default(segments)
+ ? path
+ : exports.compose(path, segments.join('.'));
+};
+
+
+/***/ }),
+
+/***/ "./src/util/renderer.ts":
+/*!******************************!*\
+ !*** ./src/util/renderer.ts ***!
+ \******************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0)
+ t[p[i]] = s[p[i]];
+ return t;
+};
+var __importDefault = (this && this.__importDefault) || function (mod) {
+ return (mod && mod.__esModule) ? mod : { "default": mod };
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+/*
+ The MIT License
+
+ Copyright (c) 2018 EclipseSource Munich
+ https://github.com/eclipsesource/jsonforms
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ THE SOFTWARE.
+*/
+var get_1 = __importDefault(__webpack_require__(/*! lodash/get */ "../../node_modules/lodash/get.js"));
+var has_1 = __importDefault(__webpack_require__(/*! lodash/has */ "../../node_modules/lodash/has.js"));
+var cloneDeep_1 = __importDefault(__webpack_require__(/*! lodash/cloneDeep */ "../../node_modules/lodash/cloneDeep.js"));
+var merge_1 = __importDefault(__webpack_require__(/*! lodash/merge */ "../../node_modules/lodash/merge.js"));
+var union_1 = __importDefault(__webpack_require__(/*! lodash/union */ "../../node_modules/lodash/union.js"));
+var reducers_1 = __webpack_require__(/*! ../reducers */ "./src/reducers/index.ts");
+var util_1 = __webpack_require__(/*! ../util */ "./src/util/index.ts");
+var actions_1 = __webpack_require__(/*! ../actions */ "./src/actions/index.ts");
+var generators_1 = __webpack_require__(/*! ../generators */ "./src/generators/index.ts");
+exports.isPlainLabel = function (label) {
+ return typeof label === 'string';
+};
+var isRequired = function (schema, schemaPath) {
+ var pathSegments = schemaPath.split('/');
+ var lastSegment = pathSegments[pathSegments.length - 1];
+ var nextHigherSchemaSegments = pathSegments.slice(0, pathSegments.length - 2);
+ var nextHigherSchemaPath = nextHigherSchemaSegments.join('/');
+ var nextHigherSchema = util_1.Resolve.schema(schema, nextHigherSchemaPath);
+ return (nextHigherSchema !== undefined &&
+ nextHigherSchema.required !== undefined &&
+ nextHigherSchema.required.indexOf(lastSegment) !== -1);
+};
+/**
+ * Adds an asterisk to the given label string based
+ * on the required parameter.
+ *
+ * @param {string} label the label string
+ * @param {boolean} required whether the label belongs to a control which is required
+ * @returns {string} the label string
+ */
+exports.computeLabel = function (label, required) {
+ return required ? label + '*' : label;
+};
+/**
+ * Create a default value based on the given scheam.
+ * @param schema the schema for which to create a default value.
+ * @returns {any}
+ */
+exports.createDefaultValue = function (schema) {
+ switch (schema.type) {
+ case 'string':
+ if (schema.format === 'date-time' ||
+ schema.format === 'date' ||
+ schema.format === 'time') {
+ return new Date();
+ }
+ return '';
+ case 'integer':
+ case 'number':
+ return 0;
+ case 'boolean':
+ return false;
+ case 'array':
+ return [];
+ case 'null':
+ return null;
+ default:
+ return {};
+ }
+};
+/**
+ * Whether an element's description should be hidden.
+ *
+ * @param visible whether an element is visible
+ * @param description the element's description
+ * @param isFocused whether the element is focused
+ *
+ * @returns {boolean} true, if the description is to be hidden, false otherwise
+ */
+exports.isDescriptionHidden = function (visible, description, isFocused) {
+ return (description === undefined ||
+ (description !== undefined && !visible) ||
+ !isFocused);
+};
+/**
+ * Map state to control props.
+ * @param state the store's state
+ * @param ownProps any own props
+ * @returns {StatePropsOfControl} state props for a control
+ */
+exports.mapStateToControlProps = function (state, ownProps) {
+ var uischema = ownProps.uischema;
+ var path = util_1.composeWithUi(uischema, ownProps.path);
+ var visible = has_1.default(ownProps, 'visible')
+ ? ownProps.visible
+ : util_1.isVisible(ownProps, state, ownProps.path);
+ var enabled = has_1.default(ownProps, 'enabled')
+ ? ownProps.enabled
+ : util_1.isEnabled(ownProps, state, ownProps.path);
+ var labelDesc = util_1.createLabelDescriptionFrom(uischema);
+ var label = labelDesc.show ? labelDesc.text : '';
+ var errors = union_1.default(reducers_1.getErrorAt(path)(state).map(function (error) { return error.message; }));
+ var controlElement = uischema;
+ var id = ownProps.id;
+ var required = controlElement.scope !== undefined &&
+ isRequired(ownProps.schema, controlElement.scope);
+ var resolvedSchema = util_1.Resolve.schema(ownProps.schema, controlElement.scope);
+ var description = resolvedSchema !== undefined ? resolvedSchema.description : '';
+ var defaultConfig = cloneDeep_1.default(reducers_1.getConfig(state));
+ var config = merge_1.default(defaultConfig, controlElement.options);
+ return {
+ data: util_1.Resolve.data(reducers_1.getData(state), path),
+ description: description,
+ errors: errors,
+ label: label,
+ visible: visible,
+ enabled: enabled,
+ id: id,
+ path: path,
+ parentPath: ownProps.path,
+ required: required,
+ scopedSchema: resolvedSchema,
+ uischema: ownProps.uischema,
+ findUISchema: reducers_1.findUISchema(state),
+ schema: ownProps.schema,
+ config: config,
+ fields: state.jsonforms.fields
+ };
+};
+/**
+ *
+ * Map dispatch to control props.
+ *
+ * @param dispatch the store's dispatch method
+ * @returns {DispatchPropsOfControl} dispatch props for a control
+ */
+exports.mapDispatchToControlProps = function (dispatch) { return ({
+ handleChange: function (path, value) {
+ dispatch(actions_1.update(path, function () { return value; }));
+ }
+}); };
+/**
+ * Map state to table props
+ *
+ * @param state the store's state
+ * @param ownProps any element's own props
+ * @returns {StatePropsOfArrayControl} state props for a table control
+ */
+exports.mapStateToArrayControlProps = function (state, ownProps) {
+ var _a = exports.mapStateToControlProps(state, ownProps), path = _a.path, schema = _a.schema, uischema = _a.uischema, props = __rest(_a, ["path", "schema", "uischema"]);
+ var controlElement = uischema;
+ var resolvedSchema = util_1.Resolve.schema(schema, controlElement.scope + '/items');
+ var childErrors = reducers_1.getSubErrorsAt(path)(state);
+ return __assign({}, props, { path: path,
+ schema: schema,
+ uischema: uischema, scopedSchema: resolvedSchema, childErrors: childErrors });
+};
+/**
+ * Maps state to dispatch properties of an array control.
+ *
+ * @param dispatch the store's dispatch method
+ * @param ownProps own properties
+ * @returns {DispatchPropsOfArrayControl} dispatch props of an array control
+ */
+exports.mapDispatchToArrayControlProps = function (dispatch, ownProps) { return ({
+ addItem: function (path) { return function () {
+ dispatch(actions_1.update(path, function (array) {
+ var schemaPath = ownProps.uischema.scope + '/items';
+ var resolvedSchema = util_1.Resolve.schema(ownProps.schema, schemaPath);
+ var newValue = exports.createDefaultValue(resolvedSchema);
+ if (array === undefined || array === null) {
+ return [newValue];
+ }
+ array.push(newValue);
+ return array;
+ }));
+ }; },
+ removeItems: function (path, toDelete) { return function () {
+ dispatch(actions_1.update(path, function (array) {
+ toDelete.forEach(function (s) { return array.splice(array.indexOf(s), 1); });
+ return array;
+ }));
+ }; }
+}); };
+/**
+ * Map state to layout props.
+ * @param state JSONForms state tree
+ * @param ownProps any own props
+ * @returns {StatePropsOfLayout}
+ */
+exports.mapStateToLayoutProps = function (state, ownProps) {
+ var visible = has_1.default(ownProps, 'visible')
+ ? ownProps.visible
+ : util_1.isVisible(ownProps, state, ownProps.path);
+ return {
+ renderers: reducers_1.getRenderers(state),
+ visible: visible,
+ path: ownProps.path,
+ uischema: ownProps.uischema,
+ schema: ownProps.schema
+ };
+};
+exports.mapStateToJsonFormsRendererProps = function (state, ownProps) {
+ var uischema = ownProps.uischema;
+ if (uischema === undefined) {
+ if (ownProps.schema) {
+ uischema = generators_1.generateDefaultUISchema(ownProps.schema);
+ }
+ else {
+ uischema = reducers_1.getUiSchema(state);
+ }
+ }
+ return {
+ renderers: ownProps.renderers || get_1.default(state.jsonforms, 'renderers') || [],
+ schema: ownProps.schema || reducers_1.getSchema(state),
+ uischema: uischema
+ };
+};
+
+
+/***/ }),
+
+/***/ "./src/util/resolvers.ts":
+/*!*******************************!*\
+ !*** ./src/util/resolvers.ts ***!
+ \*******************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var __importDefault = (this && this.__importDefault) || function (mod) {
+ return (mod && mod.__esModule) ? mod : { "default": mod };
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+/*
+ The MIT License
+
+ Copyright (c) 2018 EclipseSource Munich
+ https://github.com/eclipsesource/jsonforms
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ THE SOFTWARE.
+*/
+var isEmpty_1 = __importDefault(__webpack_require__(/*! lodash/isEmpty */ "../../node_modules/lodash/isEmpty.js"));
+var get_1 = __importDefault(__webpack_require__(/*! lodash/get */ "../../node_modules/lodash/get.js"));
+var has_1 = __importDefault(__webpack_require__(/*! lodash/has */ "../../node_modules/lodash/has.js"));
+var isObjectSchema = function (schema) {
+ return schema.properties !== undefined;
+};
+var isArraySchema = function (schema) {
+ return schema.type === 'array' && schema.items !== undefined;
+};
+exports.resolveData = function (instance, dataPath) {
+ var dataPathSegments = dataPath.split('.');
+ if (isEmpty_1.default(dataPath)) {
+ return instance;
+ }
+ return dataPathSegments
+ .map(function (segment) { return decodeURIComponent(segment); })
+ .reduce(function (curInstance, decodedSegment) {
+ if (curInstance === undefined ||
+ !curInstance.hasOwnProperty(decodedSegment)) {
+ return undefined;
+ }
+ return curInstance[decodedSegment];
+ }, instance);
+};
+/**
+ * Finds all references inside the given schema.
+ *
+ * @param schema The {@link JsonSchema} to find the references in
+ * @param result The initial result map, default: empty map (this parameter is used for recursion
+ * inside the function)
+ * @param resolveTuples Whether arrays of tuples should be considered; default: false
+ */
+exports.findAllRefs = function (schema, result, resolveTuples) {
+ if (result === void 0) { result = {}; }
+ if (resolveTuples === void 0) { resolveTuples = false; }
+ if (isObjectSchema(schema)) {
+ Object.keys(schema.properties).forEach(function (key) {
+ return exports.findAllRefs(schema.properties[key], result);
+ });
+ }
+ if (isArraySchema(schema)) {
+ if (Array.isArray(schema.items)) {
+ if (resolveTuples) {
+ var items = schema.items;
+ items.forEach(function (child) { return exports.findAllRefs(child, result); });
+ }
+ }
+ else {
+ exports.findAllRefs(schema.items, result);
+ }
+ }
+ if (Array.isArray(schema.anyOf)) {
+ var anyOf = schema.anyOf;
+ anyOf.forEach(function (child) { return exports.findAllRefs(child, result); });
+ }
+ if (schema.$ref !== undefined) {
+ result[schema.$ref] = schema;
+ }
+ // tslint:disable:no-string-literal
+ if (has_1.default(schema, 'links')) {
+ get_1.default(schema, 'links').forEach(function (link) {
+ if (!isEmpty_1.default(link.targetSchema.$ref)) {
+ result[link.targetSchema.$ref] = schema;
+ }
+ else {
+ exports.findAllRefs(link.targetSchema, result);
+ }
+ });
+ }
+ return result;
+};
+/**
+ * Resolve the given schema path in order to obtain a subschema.
+ * @param {JsonSchema} schema the root schema from which to start
+ * @param {string} schemaPath the schema path to be resolved
+ * @returns {JsonSchema} the resolved sub-schema
+ */
+exports.resolveSchema = function (schema, schemaPath) {
+ if (isEmpty_1.default(schema)) {
+ return undefined;
+ }
+ var validPathSegments = schemaPath.split('/');
+ var invalidSegment = function (pathSegment) {
+ return pathSegment === '#' || pathSegment === undefined || pathSegment === '';
+ };
+ var resultSchema = validPathSegments.reduce(function (curSchema, pathSegment) {
+ curSchema =
+ curSchema === undefined || curSchema.$ref === undefined
+ ? curSchema
+ : exports.resolveSchema(schema, curSchema.$ref);
+ return invalidSegment(pathSegment)
+ ? curSchema
+ : get_1.default(curSchema, pathSegment);
+ }, schema);
+ if (resultSchema !== undefined && resultSchema.$ref !== undefined) {
+ return retrieveResolvableSchema(schema, resultSchema.$ref);
+ }
+ return resultSchema;
+};
+/**
+ * Normalizes the schema and resolves the given ref.
+ *
+ * @param {JsonSchema} full the JSON schema to resolved the reference against
+ * @param {string} reference the reference to be resolved
+ * @returns {JsonSchema} the resolved sub-schema
+ */
+// disable rule because resolve is mutually recursive
+// tslint:disable:only-arrow-functions
+function retrieveResolvableSchema(full, reference) {
+ // tslint:enable:only-arrow-functions
+ var child = exports.resolveSchema(full, reference);
+ var allRefs = exports.findAllRefs(child);
+ var innerSelfReference = allRefs[reference];
+ if (innerSelfReference !== undefined) {
+ innerSelfReference.$ref = '#';
+ }
+ return child;
+}
+
+
+/***/ }),
+
+/***/ "./src/util/runtime.ts":
+/*!*****************************!*\
+ !*** ./src/util/runtime.ts ***!
+ \*****************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var __importDefault = (this && this.__importDefault) || function (mod) {
+ return (mod && mod.__esModule) ? mod : { "default": mod };
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+/*
+ The MIT License
+
+ Copyright (c) 2018 EclipseSource Munich
+ https://github.com/eclipsesource/jsonforms
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ THE SOFTWARE.
+*/
+var has_1 = __importDefault(__webpack_require__(/*! lodash/has */ "../../node_modules/lodash/has.js"));
+// TODO: pass in uischema and data instead of props and state
+var reducers_1 = __webpack_require__(/*! ../reducers */ "./src/reducers/index.ts");
+var uischema_1 = __webpack_require__(/*! ../models/uischema */ "./src/models/uischema.ts");
+var resolvers_1 = __webpack_require__(/*! ./resolvers */ "./src/util/resolvers.ts");
+var path_1 = __webpack_require__(/*! ./path */ "./src/util/path.ts");
+var validator_1 = __webpack_require__(/*! ./validator */ "./src/util/validator.ts");
+var ajv = validator_1.createAjv();
+var isOrCondition = function (condition) {
+ return condition.type === 'OR';
+};
+var isAndCondition = function (condition) {
+ return condition.type === 'AND';
+};
+var isLeafCondition = function (condition) {
+ return condition.type === 'LEAF';
+};
+var isSchemaCondition = function (condition) { return has_1.default(condition, 'schema'); };
+var getConditionScope = function (condition, path) {
+ return path_1.composeWithUi(condition, path);
+};
+var evaluateCondition = function (data, condition, path) {
+ if (isAndCondition(condition)) {
+ return condition.conditions.reduce(function (acc, cur) { return acc && evaluateCondition(data, cur, path); }, true);
+ }
+ else if (isOrCondition(condition)) {
+ return condition.conditions.reduce(function (acc, cur) { return acc || evaluateCondition(data, cur, path); }, false);
+ }
+ else if (isLeafCondition(condition)) {
+ var value = resolvers_1.resolveData(data, getConditionScope(condition, path));
+ return value === condition.expectedValue;
+ }
+ else if (isSchemaCondition(condition)) {
+ var value = resolvers_1.resolveData(data, getConditionScope(condition, path));
+ return ajv.validate(condition.schema, value);
+ }
+ else {
+ // unknown condition
+ return true;
+ }
+};
+var isRuleFulfilled = function (uischema, data, path) {
+ var condition = uischema.rule.condition;
+ return evaluateCondition(data, condition, path);
+};
+exports.evalVisibility = function (uischema, data, path) {
+ if (path === void 0) { path = undefined; }
+ var fulfilled = isRuleFulfilled(uischema, data, path);
+ switch (uischema.rule.effect) {
+ case uischema_1.RuleEffect.HIDE:
+ return !fulfilled;
+ case uischema_1.RuleEffect.SHOW:
+ return fulfilled;
+ // visible by default
+ default:
+ return true;
+ }
+};
+exports.evalEnablement = function (uischema, data, path) {
+ if (path === void 0) { path = undefined; }
+ var fulfilled = isRuleFulfilled(uischema, data, path);
+ switch (uischema.rule.effect) {
+ case uischema_1.RuleEffect.DISABLE:
+ return !fulfilled;
+ case uischema_1.RuleEffect.ENABLE:
+ return fulfilled;
+ // enabled by default
+ default:
+ return true;
+ }
+};
+exports.isVisible = function (props, state, path) {
+ if (path === void 0) { path = undefined; }
+ if (props.uischema.rule) {
+ return exports.evalVisibility(props.uischema, reducers_1.getData(state), path);
+ }
+ return true;
+};
+exports.isEnabled = function (props, state, path) {
+ if (path === void 0) { path = undefined; }
+ if (props.uischema.rule) {
+ return exports.evalEnablement(props.uischema, reducers_1.getData(state), path);
+ }
+ return true;
+};
+
+
+/***/ }),
+
+/***/ "./src/util/validator.ts":
+/*!*******************************!*\
+ !*** ./src/util/validator.ts ***!
+ \*******************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+};
+var __importDefault = (this && this.__importDefault) || function (mod) {
+ return (mod && mod.__esModule) ? mod : { "default": mod };
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var ajv_1 = __importDefault(__webpack_require__(/*! ajv */ "../../node_modules/ajv/lib/ajv.js"));
+var draft4_1 = __webpack_require__(/*! ../models/draft4 */ "./src/models/draft4.ts");
+exports.createAjv = function (options) {
+ var ajv = new ajv_1.default(__assign({ schemaId: 'auto', allErrors: true, jsonPointers: true, errorDataPath: 'property' }, options));
+ ajv.addFormat('time', '^([0-1][0-9]|2[0-3]):[0-5][0-9]$');
+ ajv.addMetaSchema(draft4_1.Draft4);
+ return ajv;
+};
+
+
+/***/ }),
+
+/***/ "redux":
+/*!************************!*\
+ !*** external "Redux" ***!
+ \************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+module.exports = __WEBPACK_EXTERNAL_MODULE_redux__;
+
+/***/ })
+
+/******/ });
+});
+//# sourceMappingURL=jsonforms-core.js.map
\ No newline at end of file
diff --git a/vscode-extension/assets/preview/jsonforms-material.js b/vscode-extension/assets/preview/jsonforms-material.js
new file mode 100644
index 0000000..3525ebd
--- /dev/null
+++ b/vscode-extension/assets/preview/jsonforms-material.js
@@ -0,0 +1,102246 @@
+(function webpackUniversalModuleDefinition(root, factory) {
+ if(typeof exports === 'object' && typeof module === 'object')
+ module.exports = factory(require("JSONFormsCore"), require("JSONFormsReact"), require("React"), require("ReactRedux"), require("Redux"));
+ else if(typeof define === 'function' && define.amd)
+ define("JSONFormsMaterial", ["JSONFormsCore", "JSONFormsReact", "React", "ReactRedux", "Redux"], factory);
+ else if(typeof exports === 'object')
+ exports["JSONFormsMaterial"] = factory(require("JSONFormsCore"), require("JSONFormsReact"), require("React"), require("ReactRedux"), require("Redux"));
+ else
+ root["JSONFormsMaterial"] = factory(root["JSONFormsCore"], root["JSONFormsReact"], root["React"], root["ReactRedux"], root["Redux"]);
+})(window, function(__WEBPACK_EXTERNAL_MODULE__jsonforms_core__, __WEBPACK_EXTERNAL_MODULE__jsonforms_react__, __WEBPACK_EXTERNAL_MODULE_react__, __WEBPACK_EXTERNAL_MODULE_react_redux__, __WEBPACK_EXTERNAL_MODULE_redux__) {
+return /******/ (function(modules) { // webpackBootstrap
+/******/ // The module cache
+/******/ var installedModules = {};
+/******/
+/******/ // The require function
+/******/ function __webpack_require__(moduleId) {
+/******/
+/******/ // Check if module is in cache
+/******/ if(installedModules[moduleId]) {
+/******/ return installedModules[moduleId].exports;
+/******/ }
+/******/ // Create a new module (and put it into the cache)
+/******/ var module = installedModules[moduleId] = {
+/******/ i: moduleId,
+/******/ l: false,
+/******/ exports: {}
+/******/ };
+/******/
+/******/ // Execute the module function
+/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
+/******/
+/******/ // Flag the module as loaded
+/******/ module.l = true;
+/******/
+/******/ // Return the exports of the module
+/******/ return module.exports;
+/******/ }
+/******/
+/******/
+/******/ // expose the modules object (__webpack_modules__)
+/******/ __webpack_require__.m = modules;
+/******/
+/******/ // expose the module cache
+/******/ __webpack_require__.c = installedModules;
+/******/
+/******/ // define getter function for harmony exports
+/******/ __webpack_require__.d = function(exports, name, getter) {
+/******/ if(!__webpack_require__.o(exports, name)) {
+/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
+/******/ }
+/******/ };
+/******/
+/******/ // define __esModule on exports
+/******/ __webpack_require__.r = function(exports) {
+/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
+/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
+/******/ }
+/******/ Object.defineProperty(exports, '__esModule', { value: true });
+/******/ };
+/******/
+/******/ // create a fake namespace object
+/******/ // mode & 1: value is a module id, require it
+/******/ // mode & 2: merge all properties of value into the ns
+/******/ // mode & 4: return value when already ns object
+/******/ // mode & 8|1: behave like require
+/******/ __webpack_require__.t = function(value, mode) {
+/******/ if(mode & 1) value = __webpack_require__(value);
+/******/ if(mode & 8) return value;
+/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
+/******/ var ns = Object.create(null);
+/******/ __webpack_require__.r(ns);
+/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
+/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
+/******/ return ns;
+/******/ };
+/******/
+/******/ // getDefaultExport function for compatibility with non-harmony modules
+/******/ __webpack_require__.n = function(module) {
+/******/ var getter = module && module.__esModule ?
+/******/ function getDefault() { return module['default']; } :
+/******/ function getModuleExports() { return module; };
+/******/ __webpack_require__.d(getter, 'a', getter);
+/******/ return getter;
+/******/ };
+/******/
+/******/ // Object.prototype.hasOwnProperty.call
+/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
+/******/
+/******/ // __webpack_public_path__
+/******/ __webpack_require__.p = "";
+/******/
+/******/
+/******/ // Load entry module and return exports
+/******/ return __webpack_require__(__webpack_require__.s = "./src/index.ts");
+/******/ })
+/************************************************************************/
+/******/ ({
+
+/***/ "../../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js":
+/*!************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@babel/runtime/helpers/arrayWithoutHoles.js ***!
+ \************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+function _arrayWithoutHoles(arr) {
+ if (Array.isArray(arr)) {
+ for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) {
+ arr2[i] = arr[i];
+ }
+
+ return arr2;
+ }
+}
+
+module.exports = _arrayWithoutHoles;
+
+/***/ }),
+
+/***/ "../../node_modules/@babel/runtime/helpers/assertThisInitialized.js":
+/*!****************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@babel/runtime/helpers/assertThisInitialized.js ***!
+ \****************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+function _assertThisInitialized(self) {
+ if (self === void 0) {
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
+ }
+
+ return self;
+}
+
+module.exports = _assertThisInitialized;
+
+/***/ }),
+
+/***/ "../../node_modules/@babel/runtime/helpers/classCallCheck.js":
+/*!*********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@babel/runtime/helpers/classCallCheck.js ***!
+ \*********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+function _classCallCheck(instance, Constructor) {
+ if (!(instance instanceof Constructor)) {
+ throw new TypeError("Cannot call a class as a function");
+ }
+}
+
+module.exports = _classCallCheck;
+
+/***/ }),
+
+/***/ "../../node_modules/@babel/runtime/helpers/createClass.js":
+/*!******************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@babel/runtime/helpers/createClass.js ***!
+ \******************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+function _defineProperties(target, props) {
+ for (var i = 0; i < props.length; i++) {
+ var descriptor = props[i];
+ descriptor.enumerable = descriptor.enumerable || false;
+ descriptor.configurable = true;
+ if ("value" in descriptor) descriptor.writable = true;
+ Object.defineProperty(target, descriptor.key, descriptor);
+ }
+}
+
+function _createClass(Constructor, protoProps, staticProps) {
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
+ if (staticProps) _defineProperties(Constructor, staticProps);
+ return Constructor;
+}
+
+module.exports = _createClass;
+
+/***/ }),
+
+/***/ "../../node_modules/@babel/runtime/helpers/defineProperty.js":
+/*!*********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@babel/runtime/helpers/defineProperty.js ***!
+ \*********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+function _defineProperty(obj, key, value) {
+ if (key in obj) {
+ Object.defineProperty(obj, key, {
+ value: value,
+ enumerable: true,
+ configurable: true,
+ writable: true
+ });
+ } else {
+ obj[key] = value;
+ }
+
+ return obj;
+}
+
+module.exports = _defineProperty;
+
+/***/ }),
+
+/***/ "../../node_modules/@babel/runtime/helpers/extends.js":
+/*!**************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@babel/runtime/helpers/extends.js ***!
+ \**************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+function _extends() {
+ module.exports = _extends = Object.assign || function (target) {
+ for (var i = 1; i < arguments.length; i++) {
+ var source = arguments[i];
+
+ for (var key in source) {
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
+ target[key] = source[key];
+ }
+ }
+ }
+
+ return target;
+ };
+
+ return _extends.apply(this, arguments);
+}
+
+module.exports = _extends;
+
+/***/ }),
+
+/***/ "../../node_modules/@babel/runtime/helpers/getPrototypeOf.js":
+/*!*********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@babel/runtime/helpers/getPrototypeOf.js ***!
+ \*********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+function _getPrototypeOf(o) {
+ module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
+ return o.__proto__ || Object.getPrototypeOf(o);
+ };
+ return _getPrototypeOf(o);
+}
+
+module.exports = _getPrototypeOf;
+
+/***/ }),
+
+/***/ "../../node_modules/@babel/runtime/helpers/inherits.js":
+/*!***************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@babel/runtime/helpers/inherits.js ***!
+ \***************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf */ "../../node_modules/@babel/runtime/helpers/setPrototypeOf.js");
+
+function _inherits(subClass, superClass) {
+ if (typeof superClass !== "function" && superClass !== null) {
+ throw new TypeError("Super expression must either be null or a function");
+ }
+
+ subClass.prototype = Object.create(superClass && superClass.prototype, {
+ constructor: {
+ value: subClass,
+ writable: true,
+ configurable: true
+ }
+ });
+ if (superClass) setPrototypeOf(subClass, superClass);
+}
+
+module.exports = _inherits;
+
+/***/ }),
+
+/***/ "../../node_modules/@babel/runtime/helpers/inheritsLoose.js":
+/*!********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@babel/runtime/helpers/inheritsLoose.js ***!
+ \********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+function _inheritsLoose(subClass, superClass) {
+ subClass.prototype = Object.create(superClass.prototype);
+ subClass.prototype.constructor = subClass;
+ subClass.__proto__ = superClass;
+}
+
+module.exports = _inheritsLoose;
+
+/***/ }),
+
+/***/ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js":
+/*!****************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@babel/runtime/helpers/interopRequireDefault.js ***!
+ \****************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+function _interopRequireDefault(obj) {
+ return obj && obj.__esModule ? obj : {
+ default: obj
+ };
+}
+
+module.exports = _interopRequireDefault;
+
+/***/ }),
+
+/***/ "../../node_modules/@babel/runtime/helpers/interopRequireWildcard.js":
+/*!*****************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@babel/runtime/helpers/interopRequireWildcard.js ***!
+ \*****************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+function _interopRequireWildcard(obj) {
+ if (obj && obj.__esModule) {
+ return obj;
+ } else {
+ var newObj = {};
+
+ if (obj != null) {
+ for (var key in obj) {
+ if (Object.prototype.hasOwnProperty.call(obj, key)) {
+ var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {};
+
+ if (desc.get || desc.set) {
+ Object.defineProperty(newObj, key, desc);
+ } else {
+ newObj[key] = obj[key];
+ }
+ }
+ }
+ }
+
+ newObj.default = obj;
+ return newObj;
+ }
+}
+
+module.exports = _interopRequireWildcard;
+
+/***/ }),
+
+/***/ "../../node_modules/@babel/runtime/helpers/iterableToArray.js":
+/*!**********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@babel/runtime/helpers/iterableToArray.js ***!
+ \**********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+function _iterableToArray(iter) {
+ if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter);
+}
+
+module.exports = _iterableToArray;
+
+/***/ }),
+
+/***/ "../../node_modules/@babel/runtime/helpers/nonIterableSpread.js":
+/*!************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@babel/runtime/helpers/nonIterableSpread.js ***!
+ \************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+function _nonIterableSpread() {
+ throw new TypeError("Invalid attempt to spread non-iterable instance");
+}
+
+module.exports = _nonIterableSpread;
+
+/***/ }),
+
+/***/ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js":
+/*!******************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@babel/runtime/helpers/objectWithoutProperties.js ***!
+ \******************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var objectWithoutPropertiesLoose = __webpack_require__(/*! ./objectWithoutPropertiesLoose */ "../../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js");
+
+function _objectWithoutProperties(source, excluded) {
+ if (source == null) return {};
+ var target = objectWithoutPropertiesLoose(source, excluded);
+ var key, i;
+
+ if (Object.getOwnPropertySymbols) {
+ var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
+
+ for (i = 0; i < sourceSymbolKeys.length; i++) {
+ key = sourceSymbolKeys[i];
+ if (excluded.indexOf(key) >= 0) continue;
+ if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
+ target[key] = source[key];
+ }
+ }
+
+ return target;
+}
+
+module.exports = _objectWithoutProperties;
+
+/***/ }),
+
+/***/ "../../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js":
+/*!***********************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js ***!
+ \***********************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+function _objectWithoutPropertiesLoose(source, excluded) {
+ if (source == null) return {};
+ var target = {};
+ var sourceKeys = Object.keys(source);
+ var key, i;
+
+ for (i = 0; i < sourceKeys.length; i++) {
+ key = sourceKeys[i];
+ if (excluded.indexOf(key) >= 0) continue;
+ target[key] = source[key];
+ }
+
+ return target;
+}
+
+module.exports = _objectWithoutPropertiesLoose;
+
+/***/ }),
+
+/***/ "../../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js":
+/*!********************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@babel/runtime/helpers/possibleConstructorReturn.js ***!
+ \********************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var _typeof = __webpack_require__(/*! ../helpers/typeof */ "../../node_modules/@babel/runtime/helpers/typeof.js");
+
+var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized */ "../../node_modules/@babel/runtime/helpers/assertThisInitialized.js");
+
+function _possibleConstructorReturn(self, call) {
+ if (call && (_typeof(call) === "object" || typeof call === "function")) {
+ return call;
+ }
+
+ return assertThisInitialized(self);
+}
+
+module.exports = _possibleConstructorReturn;
+
+/***/ }),
+
+/***/ "../../node_modules/@babel/runtime/helpers/setPrototypeOf.js":
+/*!*********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@babel/runtime/helpers/setPrototypeOf.js ***!
+ \*********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+function _setPrototypeOf(o, p) {
+ module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
+ o.__proto__ = p;
+ return o;
+ };
+
+ return _setPrototypeOf(o, p);
+}
+
+module.exports = _setPrototypeOf;
+
+/***/ }),
+
+/***/ "../../node_modules/@babel/runtime/helpers/toConsumableArray.js":
+/*!************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@babel/runtime/helpers/toConsumableArray.js ***!
+ \************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var arrayWithoutHoles = __webpack_require__(/*! ./arrayWithoutHoles */ "../../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js");
+
+var iterableToArray = __webpack_require__(/*! ./iterableToArray */ "../../node_modules/@babel/runtime/helpers/iterableToArray.js");
+
+var nonIterableSpread = __webpack_require__(/*! ./nonIterableSpread */ "../../node_modules/@babel/runtime/helpers/nonIterableSpread.js");
+
+function _toConsumableArray(arr) {
+ return arrayWithoutHoles(arr) || iterableToArray(arr) || nonIterableSpread();
+}
+
+module.exports = _toConsumableArray;
+
+/***/ }),
+
+/***/ "../../node_modules/@babel/runtime/helpers/typeof.js":
+/*!*************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@babel/runtime/helpers/typeof.js ***!
+ \*************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports) {
+
+function _typeof2(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof2 = function _typeof2(obj) { return typeof obj; }; } else { _typeof2 = function _typeof2(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof2(obj); }
+
+function _typeof(obj) {
+ if (typeof Symbol === "function" && _typeof2(Symbol.iterator) === "symbol") {
+ module.exports = _typeof = function _typeof(obj) {
+ return _typeof2(obj);
+ };
+ } else {
+ module.exports = _typeof = function _typeof(obj) {
+ return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : _typeof2(obj);
+ };
+ }
+
+ return _typeof(obj);
+}
+
+module.exports = _typeof;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/AppBar/AppBar.js":
+/*!***************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/AppBar/AppBar.js ***!
+ \***************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _helpers = __webpack_require__(/*! ../utils/helpers */ "../../node_modules/@material-ui/core/utils/helpers.js");
+
+var _Paper = _interopRequireDefault(__webpack_require__(/*! ../Paper */ "../../node_modules/@material-ui/core/Paper/index.js"));
+
+// @inheritedComponent Paper
+var styles = function styles(theme) {
+ var backgroundColorDefault = theme.palette.type === 'light' ? theme.palette.grey[100] : theme.palette.grey[900];
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ display: 'flex',
+ flexDirection: 'column',
+ width: '100%',
+ boxSizing: 'border-box',
+ // Prevent padding issue with the Modal and fixed positioned AppBar.
+ zIndex: theme.zIndex.appBar,
+ flexShrink: 0
+ },
+
+ /* Styles applied to the root element if `position="fixed"`. */
+ positionFixed: {
+ position: 'fixed',
+ top: 0,
+ left: 'auto',
+ right: 0
+ },
+
+ /* Styles applied to the root element if `position="absolute"`. */
+ positionAbsolute: {
+ position: 'absolute',
+ top: 0,
+ left: 'auto',
+ right: 0
+ },
+
+ /* Styles applied to the root element if `position="sticky"`. */
+ positionSticky: {
+ position: 'sticky',
+ top: 0,
+ left: 'auto',
+ right: 0
+ },
+
+ /* Styles applied to the root element if `position="static"`. */
+ positionStatic: {
+ position: 'static'
+ },
+
+ /* Styles applied to the root element if `position="relative"`. */
+ positionRelative: {
+ position: 'relative'
+ },
+
+ /* Styles applied to the root element if `color="default"`. */
+ colorDefault: {
+ backgroundColor: backgroundColorDefault,
+ color: theme.palette.getContrastText(backgroundColorDefault)
+ },
+
+ /* Styles applied to the root element if `color="primary"`. */
+ colorPrimary: {
+ backgroundColor: theme.palette.primary.main,
+ color: theme.palette.primary.contrastText
+ },
+
+ /* Styles applied to the root element if `color="secondary"`. */
+ colorSecondary: {
+ backgroundColor: theme.palette.secondary.main,
+ color: theme.palette.secondary.contrastText
+ }
+ };
+};
+
+exports.styles = styles;
+
+function AppBar(props) {
+ var _classNames;
+
+ var children = props.children,
+ classes = props.classes,
+ classNameProp = props.className,
+ color = props.color,
+ position = props.position,
+ other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "color", "position"]);
+ var className = (0, _classnames.default)(classes.root, classes["position".concat((0, _helpers.capitalize)(position))], (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes["color".concat((0, _helpers.capitalize)(color))], color !== 'inherit'), (0, _defineProperty2.default)(_classNames, 'mui-fixed', position === 'fixed'), _classNames), classNameProp);
+ return _react.default.createElement(_Paper.default, (0, _extends2.default)({
+ square: true,
+ component: "header",
+ elevation: 4,
+ className: className
+ }, other), children);
+}
+
+ true ? AppBar.propTypes = {
+ /**
+ * The content of the component.
+ */
+ children: _propTypes.default.node.isRequired,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The color of the component. It supports those theme colors that make sense for this component.
+ */
+ color: _propTypes.default.oneOf(['inherit', 'primary', 'secondary', 'default']),
+
+ /**
+ * The positioning type. The behavior of the different options is described
+ * [in the MDN web docs](https://developer.mozilla.org/en-US/docs/Learn/CSS/CSS_layout/Positioning).
+ * Note: `sticky` is not universally supported and will fall back to `static` when unavailable.
+ */
+ position: _propTypes.default.oneOf(['fixed', 'absolute', 'sticky', 'static', 'relative'])
+} : undefined;
+AppBar.defaultProps = {
+ color: 'primary',
+ position: 'fixed'
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiAppBar'
+})(AppBar);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/AppBar/index.js":
+/*!**************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/AppBar/index.js ***!
+ \**************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _AppBar.default;
+ }
+});
+
+var _AppBar = _interopRequireDefault(__webpack_require__(/*! ./AppBar */ "../../node_modules/@material-ui/core/AppBar/AppBar.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Avatar/Avatar.js":
+/*!***************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Avatar/Avatar.js ***!
+ \***************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ position: 'relative',
+ display: 'flex',
+ alignItems: 'center',
+ justifyContent: 'center',
+ flexShrink: 0,
+ width: 40,
+ height: 40,
+ fontFamily: theme.typography.fontFamily,
+ fontSize: theme.typography.pxToRem(20),
+ borderRadius: '50%',
+ overflow: 'hidden',
+ userSelect: 'none'
+ },
+
+ /* Styles applied to the root element if there are children and not `src` or `srcSet`. */
+ colorDefault: {
+ color: theme.palette.background.default,
+ backgroundColor: theme.palette.type === 'light' ? theme.palette.grey[400] : theme.palette.grey[600]
+ },
+
+ /* Styles applied to the img element if either `src` or `srcSet` is defined. */
+ img: {
+ width: '100%',
+ height: '100%',
+ textAlign: 'center',
+ // Handle non-square image. The property isn't supported by IE 11.
+ objectFit: 'cover'
+ }
+ };
+};
+
+exports.styles = styles;
+
+function Avatar(props) {
+ var alt = props.alt,
+ childrenProp = props.children,
+ childrenClassNameProp = props.childrenClassName,
+ classes = props.classes,
+ classNameProp = props.className,
+ Component = props.component,
+ imgProps = props.imgProps,
+ sizes = props.sizes,
+ src = props.src,
+ srcSet = props.srcSet,
+ other = (0, _objectWithoutProperties2.default)(props, ["alt", "children", "childrenClassName", "classes", "className", "component", "imgProps", "sizes", "src", "srcSet"]);
+ var children = null;
+ var img = src || srcSet;
+
+ if (img) {
+ children = _react.default.createElement("img", (0, _extends2.default)({
+ alt: alt,
+ src: src,
+ srcSet: srcSet,
+ sizes: sizes,
+ className: classes.img
+ }, imgProps));
+ } else if (childrenClassNameProp && _react.default.isValidElement(childrenProp)) {
+ children = _react.default.cloneElement(childrenProp, {
+ className: (0, _classnames.default)(childrenClassNameProp, childrenProp.props.className)
+ });
+ } else {
+ children = childrenProp;
+ }
+
+ return _react.default.createElement(Component, (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, classes.system, (0, _defineProperty2.default)({}, classes.colorDefault, !img), classNameProp)
+ }, other), children);
+}
+
+ true ? Avatar.propTypes = {
+ /**
+ * Used in combination with `src` or `srcSet` to
+ * provide an alt attribute for the rendered `img` element.
+ */
+ alt: _propTypes.default.string,
+
+ /**
+ * Used to render icon or text elements inside the Avatar.
+ * `src` and `alt` props will not be used and no `img` will
+ * be rendered by default.
+ *
+ * This can be an element, or just a string.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * @ignore
+ * The className of the child element.
+ * Used by Chip and ListItemIcon to style the Avatar icon.
+ */
+ childrenClassName: _propTypes.default.string,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a DOM element or a component.
+ */
+ component: _utils.componentPropType,
+
+ /**
+ * Attributes applied to the `img` element if the component
+ * is used to display an image.
+ */
+ imgProps: _propTypes.default.object,
+
+ /**
+ * The `sizes` attribute for the `img` element.
+ */
+ sizes: _propTypes.default.string,
+
+ /**
+ * The `src` attribute for the `img` element.
+ */
+ src: _propTypes.default.string,
+
+ /**
+ * The `srcSet` attribute for the `img` element.
+ */
+ srcSet: _propTypes.default.string
+} : undefined;
+Avatar.defaultProps = {
+ component: 'div'
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiAvatar'
+})(Avatar);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Avatar/index.js":
+/*!**************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Avatar/index.js ***!
+ \**************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Avatar.default;
+ }
+});
+
+var _Avatar = _interopRequireDefault(__webpack_require__(/*! ./Avatar */ "../../node_modules/@material-ui/core/Avatar/Avatar.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Backdrop/Backdrop.js":
+/*!*******************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Backdrop/Backdrop.js ***!
+ \*******************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _Fade = _interopRequireDefault(__webpack_require__(/*! ../Fade */ "../../node_modules/@material-ui/core/Fade/index.js"));
+
+var styles = {
+ /* Styles applied to the root element. */
+ root: {
+ zIndex: -1,
+ position: 'fixed',
+ right: 0,
+ bottom: 0,
+ top: 0,
+ left: 0,
+ backgroundColor: 'rgba(0, 0, 0, 0.5)',
+ // Remove grey highlight
+ WebkitTapHighlightColor: 'transparent',
+ // Disable scroll capabilities.
+ touchAction: 'none'
+ },
+
+ /* Styles applied to the root element if `invisible={true}`. */
+ invisible: {
+ backgroundColor: 'transparent'
+ }
+};
+exports.styles = styles;
+
+function Backdrop(props) {
+ var classes = props.classes,
+ className = props.className,
+ invisible = props.invisible,
+ open = props.open,
+ transitionDuration = props.transitionDuration,
+ other = (0, _objectWithoutProperties2.default)(props, ["classes", "className", "invisible", "open", "transitionDuration"]);
+ return _react.default.createElement(_Fade.default, (0, _extends2.default)({
+ in: open,
+ timeout: transitionDuration
+ }, other), _react.default.createElement("div", {
+ className: (0, _classnames.default)(classes.root, (0, _defineProperty2.default)({}, classes.invisible, invisible), className),
+ "aria-hidden": "true"
+ }));
+}
+
+ true ? Backdrop.propTypes = {
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * If `true`, the backdrop is invisible.
+ * It can be used when rendering a popover or a custom select component.
+ */
+ invisible: _propTypes.default.bool,
+
+ /**
+ * If `true`, the backdrop is open.
+ */
+ open: _propTypes.default.bool.isRequired,
+
+ /**
+ * The duration for the transition, in milliseconds.
+ * You may specify a single timeout for all transitions, or individually with an object.
+ */
+ transitionDuration: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.shape({
+ enter: _propTypes.default.number,
+ exit: _propTypes.default.number
+ })])
+} : undefined;
+Backdrop.defaultProps = {
+ invisible: false
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiBackdrop'
+})(Backdrop);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Backdrop/index.js":
+/*!****************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Backdrop/index.js ***!
+ \****************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Backdrop.default;
+ }
+});
+
+var _Backdrop = _interopRequireDefault(__webpack_require__(/*! ./Backdrop */ "../../node_modules/@material-ui/core/Backdrop/Backdrop.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Badge/Badge.js":
+/*!*************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Badge/Badge.js ***!
+ \*************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _helpers = __webpack_require__(/*! ../utils/helpers */ "../../node_modules/@material-ui/core/utils/helpers.js");
+
+var RADIUS = 10;
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ position: 'relative',
+ display: 'inline-flex',
+ // For correct alignment with the text.
+ verticalAlign: 'middle'
+ },
+
+ /* Styles applied to the badge `span` element. */
+ badge: {
+ display: 'flex',
+ flexDirection: 'row',
+ flexWrap: 'wrap',
+ justifyContent: 'center',
+ alignContent: 'center',
+ alignItems: 'center',
+ position: 'absolute',
+ top: 0,
+ right: 0,
+ boxSizing: 'border-box',
+ fontFamily: theme.typography.fontFamily,
+ fontWeight: theme.typography.fontWeightMedium,
+ fontSize: theme.typography.pxToRem(12),
+ minWidth: RADIUS * 2,
+ padding: '0 4px',
+ height: RADIUS * 2,
+ borderRadius: RADIUS,
+ backgroundColor: theme.palette.color,
+ color: theme.palette.textColor,
+ zIndex: 1,
+ // Render the badge on top of potential ripples.
+ transform: 'scale(1) translate(50%, -50%)',
+ transformOrigin: '100% 0%',
+ transition: theme.transitions.create('transform', {
+ easing: theme.transitions.easing.easeInOut,
+ duration: theme.transitions.duration.enteringScreen
+ })
+ },
+
+ /* Styles applied to the root element if `color="primary"`. */
+ colorPrimary: {
+ backgroundColor: theme.palette.primary.main,
+ color: theme.palette.primary.contrastText
+ },
+
+ /* Styles applied to the root element if `color="secondary"`. */
+ colorSecondary: {
+ backgroundColor: theme.palette.secondary.main,
+ color: theme.palette.secondary.contrastText
+ },
+
+ /* Styles applied to the root element if `color="error"`. */
+ colorError: {
+ backgroundColor: theme.palette.error.main,
+ color: theme.palette.error.contrastText
+ },
+
+ /* Styles applied to the badge `span` element if `invisible={true}`. */
+ invisible: {
+ transition: theme.transitions.create('transform', {
+ easing: theme.transitions.easing.easeInOut,
+ duration: theme.transitions.duration.leavingScreen
+ }),
+ transform: 'scale(0) translate(50%, -50%)',
+ transformOrigin: '100% 0%'
+ },
+
+ /* Styles applied to the root element if `variant="dot"`. */
+ dot: {
+ height: 6,
+ minWidth: 6,
+ padding: 0
+ }
+ };
+};
+
+exports.styles = styles;
+
+function Badge(props) {
+ var _classNames;
+
+ var badgeContent = props.badgeContent,
+ children = props.children,
+ classes = props.classes,
+ className = props.className,
+ color = props.color,
+ ComponentProp = props.component,
+ invisibleProp = props.invisible,
+ showZero = props.showZero,
+ max = props.max,
+ variant = props.variant,
+ other = (0, _objectWithoutProperties2.default)(props, ["badgeContent", "children", "classes", "className", "color", "component", "invisible", "showZero", "max", "variant"]);
+ var invisible = invisibleProp;
+
+ if (invisibleProp == null && Number(badgeContent) === 0 && !showZero) {
+ invisible = true;
+ }
+
+ var badgeClassName = (0, _classnames.default)(classes.badge, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes["color".concat((0, _helpers.capitalize)(color))], color !== 'default'), (0, _defineProperty2.default)(_classNames, classes.invisible, invisible), (0, _defineProperty2.default)(_classNames, classes.dot, variant === 'dot'), _classNames));
+ var displayValue = '';
+
+ if (variant !== 'dot') {
+ displayValue = badgeContent > max ? "".concat(max, "+") : badgeContent;
+ }
+
+ return _react.default.createElement(ComponentProp, (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, className)
+ }, other), children, _react.default.createElement("span", {
+ className: badgeClassName
+ }, displayValue));
+}
+
+ true ? Badge.propTypes = {
+ /**
+ * The content rendered within the badge.
+ */
+ badgeContent: _propTypes.default.node,
+
+ /**
+ * The badge will be added relative to this node.
+ */
+ children: _propTypes.default.node.isRequired,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The color of the component. It supports those theme colors that make sense for this component.
+ */
+ color: _propTypes.default.oneOf(['default', 'primary', 'secondary', 'error']),
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a DOM element or a component.
+ */
+ component: _utils.componentPropType,
+
+ /**
+ * If `true`, the badge will be invisible.
+ */
+ invisible: _propTypes.default.bool,
+
+ /**
+ * Max count to show.
+ */
+ max: _propTypes.default.number,
+
+ /**
+ * Controls whether the badge is hidden when `badgeContent` is zero.
+ */
+ showZero: _propTypes.default.bool,
+
+ /**
+ * The variant to use.
+ */
+ variant: _propTypes.default.oneOf(['standard', 'dot'])
+} : undefined;
+Badge.defaultProps = {
+ color: 'default',
+ component: 'span',
+ max: 99,
+ showZero: false,
+ variant: 'standard'
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiBadge'
+})(Badge);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Badge/index.js":
+/*!*************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Badge/index.js ***!
+ \*************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Badge.default;
+ }
+});
+
+var _Badge = _interopRequireDefault(__webpack_require__(/*! ./Badge */ "../../node_modules/@material-ui/core/Badge/Badge.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/BottomNavigation/BottomNavigation.js":
+/*!***********************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/BottomNavigation/BottomNavigation.js ***!
+ \***********************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _warning = _interopRequireDefault(__webpack_require__(/*! warning */ "../../node_modules/warning/warning.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ display: 'flex',
+ justifyContent: 'center',
+ height: 56,
+ backgroundColor: theme.palette.background.paper
+ }
+ };
+};
+
+exports.styles = styles;
+
+function BottomNavigation(props) {
+ var childrenProp = props.children,
+ classes = props.classes,
+ classNameProp = props.className,
+ Component = props.component,
+ onChange = props.onChange,
+ showLabels = props.showLabels,
+ value = props.value,
+ other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "component", "onChange", "showLabels", "value"]);
+ var className = (0, _classnames.default)(classes.root, classNameProp);
+
+ var children = _react.default.Children.map(childrenProp, function (child, childIndex) {
+ if (!_react.default.isValidElement(child)) {
+ return null;
+ }
+
+ true ? (0, _warning.default)(child.type !== _react.default.Fragment, ["Material-UI: the BottomNavigation component doesn't accept a Fragment as a child.", 'Consider providing an array instead.'].join('\n')) : undefined;
+ var childValue = child.props.value === undefined ? childIndex : child.props.value;
+ return _react.default.cloneElement(child, {
+ selected: childValue === value,
+ showLabel: child.props.showLabel !== undefined ? child.props.showLabel : showLabels,
+ value: childValue,
+ onChange: onChange
+ });
+ });
+
+ return _react.default.createElement(Component, (0, _extends2.default)({
+ className: className
+ }, other), children);
+}
+
+ true ? BottomNavigation.propTypes = {
+ /**
+ * The content of the component.
+ */
+ children: _propTypes.default.node.isRequired,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a DOM element or a component.
+ */
+ component: _utils.componentPropType,
+
+ /**
+ * Callback fired when the value changes.
+ *
+ * @param {object} event The event source of the callback
+ * @param {any} value We default to the index of the child
+ */
+ onChange: _propTypes.default.func,
+
+ /**
+ * If `true`, all `BottomNavigationAction`s will show their labels.
+ * By default, only the selected `BottomNavigationAction` will show its label.
+ */
+ showLabels: _propTypes.default.bool,
+
+ /**
+ * The value of the currently selected `BottomNavigationAction`.
+ */
+ value: _propTypes.default.any
+} : undefined;
+BottomNavigation.defaultProps = {
+ component: 'div',
+ showLabels: false
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiBottomNavigation'
+})(BottomNavigation);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/BottomNavigation/index.js":
+/*!************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/BottomNavigation/index.js ***!
+ \************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _BottomNavigation.default;
+ }
+});
+
+var _BottomNavigation = _interopRequireDefault(__webpack_require__(/*! ./BottomNavigation */ "../../node_modules/@material-ui/core/BottomNavigation/BottomNavigation.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/BottomNavigationAction/BottomNavigationAction.js":
+/*!***********************************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/BottomNavigationAction/BottomNavigationAction.js ***!
+ \***********************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../../node_modules/@babel/runtime/helpers/classCallCheck.js"));
+
+var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../../node_modules/@babel/runtime/helpers/createClass.js"));
+
+var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
+
+var _getPrototypeOf3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
+
+var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../../node_modules/@babel/runtime/helpers/inherits.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _ButtonBase = _interopRequireDefault(__webpack_require__(/*! ../ButtonBase */ "../../node_modules/@material-ui/core/ButtonBase/index.js"));
+
+var _unsupportedProp = _interopRequireDefault(__webpack_require__(/*! ../utils/unsupportedProp */ "../../node_modules/@material-ui/core/utils/unsupportedProp.js"));
+
+// @inheritedComponent ButtonBase
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ transition: theme.transitions.create(['color', 'padding-top'], {
+ duration: theme.transitions.duration.short
+ }),
+ padding: '6px 12px 8px',
+ minWidth: 80,
+ maxWidth: 168,
+ color: theme.palette.text.secondary,
+ flex: '1',
+ '&$iconOnly': {
+ paddingTop: 16
+ },
+ '&$selected': {
+ paddingTop: 6,
+ color: theme.palette.primary.main
+ }
+ },
+
+ /* Styles applied to the root element if selected. */
+ selected: {},
+
+ /* Styles applied to the root element if `showLabel={false}` and not selected. */
+ iconOnly: {},
+
+ /* Styles applied to the span element that wraps the icon and label. */
+ wrapper: {
+ display: 'inline-flex',
+ alignItems: 'center',
+ justifyContent: 'center',
+ width: '100%',
+ flexDirection: 'column'
+ },
+
+ /* Styles applied to the label's span element. */
+ label: {
+ fontFamily: theme.typography.fontFamily,
+ fontSize: theme.typography.pxToRem(12),
+ opacity: 1,
+ transition: 'font-size 0.2s, opacity 0.2s',
+ transitionDelay: '0.1s',
+ '&$iconOnly': {
+ opacity: 0,
+ transitionDelay: '0s'
+ },
+ '&$selected': {
+ fontSize: theme.typography.pxToRem(14)
+ }
+ }
+ };
+};
+
+exports.styles = styles;
+
+var BottomNavigationAction =
+/*#__PURE__*/
+function (_React$Component) {
+ (0, _inherits2.default)(BottomNavigationAction, _React$Component);
+
+ function BottomNavigationAction() {
+ var _getPrototypeOf2;
+
+ var _this;
+
+ (0, _classCallCheck2.default)(this, BottomNavigationAction);
+
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
+ }
+
+ _this = (0, _possibleConstructorReturn2.default)(this, (_getPrototypeOf2 = (0, _getPrototypeOf3.default)(BottomNavigationAction)).call.apply(_getPrototypeOf2, [this].concat(args)));
+
+ _this.handleChange = function (event) {
+ var _this$props = _this.props,
+ onChange = _this$props.onChange,
+ value = _this$props.value,
+ onClick = _this$props.onClick;
+
+ if (onChange) {
+ onChange(event, value);
+ }
+
+ if (onClick) {
+ onClick(event);
+ }
+ };
+
+ return _this;
+ }
+
+ (0, _createClass2.default)(BottomNavigationAction, [{
+ key: "render",
+ value: function render() {
+ var _classNames, _classNames2;
+
+ var _this$props2 = this.props,
+ classes = _this$props2.classes,
+ classNameProp = _this$props2.className,
+ icon = _this$props2.icon,
+ label = _this$props2.label,
+ onChange = _this$props2.onChange,
+ onClick = _this$props2.onClick,
+ selected = _this$props2.selected,
+ showLabelProp = _this$props2.showLabel,
+ value = _this$props2.value,
+ other = (0, _objectWithoutProperties2.default)(_this$props2, ["classes", "className", "icon", "label", "onChange", "onClick", "selected", "showLabel", "value"]);
+ var className = (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.selected, selected), (0, _defineProperty2.default)(_classNames, classes.iconOnly, !showLabelProp && !selected), _classNames), classNameProp);
+ var labelClassName = (0, _classnames.default)(classes.label, (_classNames2 = {}, (0, _defineProperty2.default)(_classNames2, classes.selected, selected), (0, _defineProperty2.default)(_classNames2, classes.iconOnly, !showLabelProp && !selected), _classNames2));
+ return _react.default.createElement(_ButtonBase.default, (0, _extends2.default)({
+ className: className,
+ focusRipple: true,
+ onClick: this.handleChange
+ }, other), _react.default.createElement("span", {
+ className: classes.wrapper
+ }, icon, _react.default.createElement("span", {
+ className: labelClassName
+ }, label)));
+ }
+ }]);
+ return BottomNavigationAction;
+}(_react.default.Component);
+
+ true ? BottomNavigationAction.propTypes = {
+ /**
+ * This property isn't supported.
+ * Use the `component` property if you need to change the children structure.
+ */
+ children: _unsupportedProp.default,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The icon element.
+ */
+ icon: _propTypes.default.node,
+
+ /**
+ * The label element.
+ */
+ label: _propTypes.default.node,
+
+ /**
+ * @ignore
+ */
+ onChange: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onClick: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ selected: _propTypes.default.bool,
+
+ /**
+ * If `true`, the `BottomNavigationAction` will show its label.
+ * By default, only the selected `BottomNavigationAction`
+ * inside `BottomNavigation` will show its label.
+ */
+ showLabel: _propTypes.default.bool,
+
+ /**
+ * You can provide your own value. Otherwise, we fallback to the child position index.
+ */
+ value: _propTypes.default.any
+} : undefined;
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiBottomNavigationAction'
+})(BottomNavigationAction);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/BottomNavigationAction/index.js":
+/*!******************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/BottomNavigationAction/index.js ***!
+ \******************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _BottomNavigationAction.default;
+ }
+});
+
+var _BottomNavigationAction = _interopRequireDefault(__webpack_require__(/*! ./BottomNavigationAction */ "../../node_modules/@material-ui/core/BottomNavigationAction/BottomNavigationAction.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Button/Button.js":
+/*!***************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Button/Button.js ***!
+ \***************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _colorManipulator = __webpack_require__(/*! ../styles/colorManipulator */ "../../node_modules/@material-ui/core/styles/colorManipulator.js");
+
+var _ButtonBase = _interopRequireDefault(__webpack_require__(/*! ../ButtonBase */ "../../node_modules/@material-ui/core/ButtonBase/index.js"));
+
+var _helpers = __webpack_require__(/*! ../utils/helpers */ "../../node_modules/@material-ui/core/utils/helpers.js");
+
+// @inheritedComponent ButtonBase
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: (0, _extends2.default)({
+ lineHeight: 1.75
+ }, theme.typography.button, {
+ boxSizing: 'border-box',
+ minWidth: 64,
+ padding: '6px 16px',
+ borderRadius: theme.shape.borderRadius,
+ color: theme.palette.text.primary,
+ transition: theme.transitions.create(['background-color', 'box-shadow', 'border'], {
+ duration: theme.transitions.duration.short
+ }),
+ '&:hover': {
+ textDecoration: 'none',
+ backgroundColor: (0, _colorManipulator.fade)(theme.palette.text.primary, theme.palette.action.hoverOpacity),
+ // Reset on touch devices, it doesn't add specificity
+ '@media (hover: none)': {
+ backgroundColor: 'transparent'
+ },
+ '&$disabled': {
+ backgroundColor: 'transparent'
+ }
+ },
+ '&$disabled': {
+ color: theme.palette.action.disabled
+ }
+ }),
+
+ /* Styles applied to the span element that wraps the children. */
+ label: {
+ width: '100%',
+ // assure the correct width for iOS Safari
+ display: 'inherit',
+ alignItems: 'inherit',
+ justifyContent: 'inherit'
+ },
+
+ /* Styles applied to the root element if `variant="text"`. */
+ text: {
+ padding: '6px 8px'
+ },
+
+ /* Styles applied to the root element if `variant="text"` and `color="primary"`. */
+ textPrimary: {
+ color: theme.palette.primary.main,
+ '&:hover': {
+ backgroundColor: (0, _colorManipulator.fade)(theme.palette.primary.main, theme.palette.action.hoverOpacity),
+ // Reset on touch devices, it doesn't add specificity
+ '@media (hover: none)': {
+ backgroundColor: 'transparent'
+ }
+ }
+ },
+
+ /* Styles applied to the root element if `variant="text"` and `color="secondary"`. */
+ textSecondary: {
+ color: theme.palette.secondary.main,
+ '&:hover': {
+ backgroundColor: (0, _colorManipulator.fade)(theme.palette.secondary.main, theme.palette.action.hoverOpacity),
+ // Reset on touch devices, it doesn't add specificity
+ '@media (hover: none)': {
+ backgroundColor: 'transparent'
+ }
+ }
+ },
+
+ /* Styles applied to the root element for backwards compatibility with legacy variant naming. */
+ flat: {},
+
+ /* Styles applied to the root element for backwards compatibility with legacy variant naming. */
+ flatPrimary: {},
+
+ /* Styles applied to the root element for backwards compatibility with legacy variant naming. */
+ flatSecondary: {},
+
+ /* Styles applied to the root element if `variant="outlined"`. */
+ outlined: {
+ padding: '5px 16px',
+ border: "1px solid ".concat(theme.palette.type === 'light' ? 'rgba(0, 0, 0, 0.23)' : 'rgba(255, 255, 255, 0.23)')
+ },
+
+ /* Styles applied to the root element if `variant="outlined"` and `color="primary"`. */
+ outlinedPrimary: {
+ color: theme.palette.primary.main,
+ border: "1px solid ".concat((0, _colorManipulator.fade)(theme.palette.primary.main, 0.5)),
+ '&:hover': {
+ border: "1px solid ".concat(theme.palette.primary.main),
+ backgroundColor: (0, _colorManipulator.fade)(theme.palette.primary.main, theme.palette.action.hoverOpacity),
+ // Reset on touch devices, it doesn't add specificity
+ '@media (hover: none)': {
+ backgroundColor: 'transparent'
+ }
+ },
+ '&$disabled': {
+ border: "1px solid ".concat(theme.palette.action.disabled)
+ }
+ },
+
+ /* Styles applied to the root element if `variant="outlined"` and `color="secondary"`. */
+ outlinedSecondary: {
+ color: theme.palette.secondary.main,
+ border: "1px solid ".concat((0, _colorManipulator.fade)(theme.palette.secondary.main, 0.5)),
+ '&:hover': {
+ border: "1px solid ".concat(theme.palette.secondary.main),
+ backgroundColor: (0, _colorManipulator.fade)(theme.palette.secondary.main, theme.palette.action.hoverOpacity),
+ // Reset on touch devices, it doesn't add specificity
+ '@media (hover: none)': {
+ backgroundColor: 'transparent'
+ }
+ },
+ '&$disabled': {
+ border: "1px solid ".concat(theme.palette.action.disabled)
+ }
+ },
+
+ /* Styles applied to the root element if `variant="[contained | fab]"`. */
+ contained: {
+ color: theme.palette.getContrastText(theme.palette.grey[300]),
+ backgroundColor: theme.palette.grey[300],
+ boxShadow: theme.shadows[2],
+ '&$focusVisible': {
+ boxShadow: theme.shadows[6]
+ },
+ '&:active': {
+ boxShadow: theme.shadows[8]
+ },
+ '&$disabled': {
+ color: theme.palette.action.disabled,
+ boxShadow: theme.shadows[0],
+ backgroundColor: theme.palette.action.disabledBackground
+ },
+ '&:hover': {
+ backgroundColor: theme.palette.grey.A100,
+ // Reset on touch devices, it doesn't add specificity
+ '@media (hover: none)': {
+ backgroundColor: theme.palette.grey[300]
+ },
+ '&$disabled': {
+ backgroundColor: theme.palette.action.disabledBackground
+ }
+ }
+ },
+
+ /* Styles applied to the root element if `variant="[contained | fab]"` and `color="primary"`. */
+ containedPrimary: {
+ color: theme.palette.primary.contrastText,
+ backgroundColor: theme.palette.primary.main,
+ '&:hover': {
+ backgroundColor: theme.palette.primary.dark,
+ // Reset on touch devices, it doesn't add specificity
+ '@media (hover: none)': {
+ backgroundColor: theme.palette.primary.main
+ }
+ }
+ },
+
+ /* Styles applied to the root element if `variant="[contained | fab]"` and `color="secondary"`. */
+ containedSecondary: {
+ color: theme.palette.secondary.contrastText,
+ backgroundColor: theme.palette.secondary.main,
+ '&:hover': {
+ backgroundColor: theme.palette.secondary.dark,
+ // Reset on touch devices, it doesn't add specificity
+ '@media (hover: none)': {
+ backgroundColor: theme.palette.secondary.main
+ }
+ }
+ },
+
+ /* Styles applied to the root element for backwards compatibility with legacy variant naming. */
+ raised: {},
+ // legacy
+
+ /* Styles applied to the root element for backwards compatibility with legacy variant naming. */
+ raisedPrimary: {},
+ // legacy
+
+ /* Styles applied to the root element for backwards compatibility with legacy variant naming. */
+ raisedSecondary: {},
+ // legacy
+
+ /* Styles applied to the root element if `variant="[fab | extendedFab]"`. */
+ fab: {
+ borderRadius: '50%',
+ padding: 0,
+ minWidth: 0,
+ width: 56,
+ height: 56,
+ boxShadow: theme.shadows[6],
+ '&:active': {
+ boxShadow: theme.shadows[12]
+ }
+ },
+
+ /* Styles applied to the root element if `variant="extendedFab"`. */
+ extendedFab: {
+ borderRadius: 48 / 2,
+ padding: '0 16px',
+ width: 'auto',
+ minWidth: 48,
+ height: 48
+ },
+
+ /* Styles applied to the ButtonBase root element if the button is keyboard focused. */
+ focusVisible: {},
+
+ /* Styles applied to the root element if `disabled={true}`. */
+ disabled: {},
+
+ /* Styles applied to the root element if `color="inherit"`. */
+ colorInherit: {
+ color: 'inherit'
+ },
+
+ /* Styles applied to the root element if `mini={true}` & `variant="[fab | extendedFab]"`. */
+ mini: {
+ width: 40,
+ height: 40
+ },
+
+ /* Styles applied to the root element if `size="small"`. */
+ sizeSmall: {
+ padding: '4px 8px',
+ minWidth: 64,
+ fontSize: theme.typography.pxToRem(13)
+ },
+
+ /* Styles applied to the root element if `size="large"`. */
+ sizeLarge: {
+ padding: '8px 24px',
+ fontSize: theme.typography.pxToRem(15)
+ },
+
+ /* Styles applied to the root element if `fullWidth={true}`. */
+ fullWidth: {
+ width: '100%'
+ }
+ };
+};
+
+exports.styles = styles;
+
+function Button(props) {
+ var _classNames;
+
+ var children = props.children,
+ classes = props.classes,
+ classNameProp = props.className,
+ color = props.color,
+ disabled = props.disabled,
+ disableFocusRipple = props.disableFocusRipple,
+ focusVisibleClassName = props.focusVisibleClassName,
+ fullWidth = props.fullWidth,
+ mini = props.mini,
+ size = props.size,
+ variant = props.variant,
+ other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "color", "disabled", "disableFocusRipple", "focusVisibleClassName", "fullWidth", "mini", "size", "variant"]);
+ var fab = variant === 'fab' || variant === 'extendedFab';
+ var contained = variant === 'contained' || variant === 'raised';
+ var text = variant === 'text' || variant === 'flat';
+ var className = (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.fab, fab), (0, _defineProperty2.default)(_classNames, classes.mini, fab && mini), (0, _defineProperty2.default)(_classNames, classes.extendedFab, variant === 'extendedFab'), (0, _defineProperty2.default)(_classNames, classes.text, text), (0, _defineProperty2.default)(_classNames, classes.textPrimary, text && color === 'primary'), (0, _defineProperty2.default)(_classNames, classes.textSecondary, text && color === 'secondary'), (0, _defineProperty2.default)(_classNames, classes.flat, text), (0, _defineProperty2.default)(_classNames, classes.flatPrimary, text && color === 'primary'), (0, _defineProperty2.default)(_classNames, classes.flatSecondary, text && color === 'secondary'), (0, _defineProperty2.default)(_classNames, classes.contained, contained || fab), (0, _defineProperty2.default)(_classNames, classes.containedPrimary, (contained || fab) && color === 'primary'), (0, _defineProperty2.default)(_classNames, classes.containedSecondary, (contained || fab) && color === 'secondary'), (0, _defineProperty2.default)(_classNames, classes.raised, contained || fab), (0, _defineProperty2.default)(_classNames, classes.raisedPrimary, (contained || fab) && color === 'primary'), (0, _defineProperty2.default)(_classNames, classes.raisedSecondary, (contained || fab) && color === 'secondary'), (0, _defineProperty2.default)(_classNames, classes.outlined, variant === 'outlined'), (0, _defineProperty2.default)(_classNames, classes.outlinedPrimary, variant === 'outlined' && color === 'primary'), (0, _defineProperty2.default)(_classNames, classes.outlinedSecondary, variant === 'outlined' && color === 'secondary'), (0, _defineProperty2.default)(_classNames, classes["size".concat((0, _helpers.capitalize)(size))], size !== 'medium'), (0, _defineProperty2.default)(_classNames, classes.disabled, disabled), (0, _defineProperty2.default)(_classNames, classes.fullWidth, fullWidth), (0, _defineProperty2.default)(_classNames, classes.colorInherit, color === 'inherit'), _classNames), classNameProp);
+ return _react.default.createElement(_ButtonBase.default, (0, _extends2.default)({
+ className: className,
+ disabled: disabled,
+ focusRipple: !disableFocusRipple,
+ focusVisibleClassName: (0, _classnames.default)(classes.focusVisible, focusVisibleClassName)
+ }, other), _react.default.createElement("span", {
+ className: classes.label
+ }, children));
+}
+
+ true ? Button.propTypes = {
+ /**
+ * The content of the button.
+ */
+ children: _propTypes.default.node.isRequired,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The color of the component. It supports those theme colors that make sense for this component.
+ */
+ color: _propTypes.default.oneOf(['default', 'inherit', 'primary', 'secondary']),
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a DOM element or a component.
+ */
+ component: _utils.componentPropType,
+
+ /**
+ * If `true`, the button will be disabled.
+ */
+ disabled: _propTypes.default.bool,
+
+ /**
+ * If `true`, the keyboard focus ripple will be disabled.
+ * `disableRipple` must also be true.
+ */
+ disableFocusRipple: _propTypes.default.bool,
+
+ /**
+ * If `true`, the ripple effect will be disabled.
+ */
+ disableRipple: _propTypes.default.bool,
+
+ /**
+ * @ignore
+ */
+ focusVisibleClassName: _propTypes.default.string,
+
+ /**
+ * If `true`, the button will take up the full width of its container.
+ */
+ fullWidth: _propTypes.default.bool,
+
+ /**
+ * The URL to link to when the button is clicked.
+ * If defined, an `a` element will be used as the root node.
+ */
+ href: _propTypes.default.string,
+
+ /**
+ * If `true`, and `variant` is `'fab'`, will use mini floating action button styling.
+ */
+ mini: _propTypes.default.bool,
+
+ /**
+ * The size of the button.
+ * `small` is equivalent to the dense button styling.
+ */
+ size: _propTypes.default.oneOf(['small', 'medium', 'large']),
+
+ /**
+ * @ignore
+ */
+ type: _propTypes.default.string,
+
+ /**
+ * The variant to use.
+ * __WARNING__: `flat` and `raised` are deprecated.
+ * Instead use `text` and `contained` respectively.
+ * `fab` and `extendedFab` are deprecated.
+ * Instead use `` and ``
+ */
+ variant: (0, _utils.chainPropTypes)(_propTypes.default.oneOf(['text', 'outlined', 'contained', 'fab', 'extendedFab', 'flat', 'raised']), function (props) {
+ if (props.variant === 'flat') {
+ return new Error('Material-UI: the `flat` variant will be removed in the next major release. ' + '`text` is equivalent and should be used instead.');
+ }
+
+ if (props.variant === 'raised') {
+ return new Error('Material-UI: the `raised` variant will be removed in the next major release. ' + '`contained` is equivalent and should be used instead.');
+ }
+
+ if (props.variant === 'fab') {
+ return new Error('Material-UI: the `fab` variant will be removed in the next major release. ' + 'The `` component is equivalent and should be used instead.');
+ }
+
+ if (props.variant === 'extendedFab') {
+ return new Error('Material-UI: the `fab` variant will be removed in the next major release. ' + 'The `` component with `variant="extended"` is equivalent ' + 'and should be used instead.');
+ }
+
+ return null;
+ })
+} : undefined;
+Button.defaultProps = {
+ color: 'default',
+ component: 'button',
+ disabled: false,
+ disableFocusRipple: false,
+ fullWidth: false,
+ mini: false,
+ size: 'medium',
+ type: 'button',
+ variant: 'text'
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiButton'
+})(Button);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Button/index.js":
+/*!**************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Button/index.js ***!
+ \**************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Button.default;
+ }
+});
+
+var _Button = _interopRequireDefault(__webpack_require__(/*! ./Button */ "../../node_modules/@material-ui/core/Button/Button.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ButtonBase/ButtonBase.js":
+/*!***********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ButtonBase/ButtonBase.js ***!
+ \***********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../../node_modules/@babel/runtime/helpers/classCallCheck.js"));
+
+var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../../node_modules/@babel/runtime/helpers/createClass.js"));
+
+var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
+
+var _getPrototypeOf3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
+
+var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../../node_modules/@babel/runtime/helpers/inherits.js"));
+
+var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../../node_modules/@babel/runtime/helpers/assertThisInitialized.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "../../node_modules/react-dom/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _keycode = _interopRequireDefault(__webpack_require__(/*! keycode */ "../../node_modules/keycode/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _ownerWindow = _interopRequireDefault(__webpack_require__(/*! ../utils/ownerWindow */ "../../node_modules/@material-ui/core/utils/ownerWindow.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _NoSsr = _interopRequireDefault(__webpack_require__(/*! ../NoSsr */ "../../node_modules/@material-ui/core/NoSsr/index.js"));
+
+var _focusVisible = __webpack_require__(/*! ./focusVisible */ "../../node_modules/@material-ui/core/ButtonBase/focusVisible.js");
+
+var _TouchRipple = _interopRequireDefault(__webpack_require__(/*! ./TouchRipple */ "../../node_modules/@material-ui/core/ButtonBase/TouchRipple.js"));
+
+var _createRippleHandler = _interopRequireDefault(__webpack_require__(/*! ./createRippleHandler */ "../../node_modules/@material-ui/core/ButtonBase/createRippleHandler.js"));
+
+var styles = {
+ /* Styles applied to the root element. */
+ root: {
+ display: 'inline-flex',
+ alignItems: 'center',
+ justifyContent: 'center',
+ position: 'relative',
+ // Remove grey highlight
+ WebkitTapHighlightColor: 'transparent',
+ backgroundColor: 'transparent',
+ // Reset default value
+ // We disable the focus ring for mouse, touch and keyboard users.
+ outline: 'none',
+ border: 0,
+ margin: 0,
+ // Remove the margin in Safari
+ borderRadius: 0,
+ padding: 0,
+ // Remove the padding in Firefox
+ cursor: 'pointer',
+ userSelect: 'none',
+ verticalAlign: 'middle',
+ '-moz-appearance': 'none',
+ // Reset
+ '-webkit-appearance': 'none',
+ // Reset
+ textDecoration: 'none',
+ // So we take precedent over the style of a native element.
+ color: 'inherit',
+ '&::-moz-focus-inner': {
+ borderStyle: 'none' // Remove Firefox dotted outline.
+
+ },
+ '&$disabled': {
+ pointerEvents: 'none',
+ // Disable link interactions
+ cursor: 'default'
+ }
+ },
+
+ /* Styles applied to the root element if `disabled={true}`. */
+ disabled: {},
+
+ /* Styles applied to the root element if keyboard focused. */
+ focusVisible: {}
+};
+/* istanbul ignore if */
+
+exports.styles = styles;
+
+if ( true && !_react.default.createContext) {
+ throw new Error('Material-UI: react@16.3.0 or greater is required.');
+}
+/**
+ * `ButtonBase` contains as few styles as possible.
+ * It aims to be a simple building block for creating a button.
+ * It contains a load of style reset and some focus/ripple logic.
+ */
+
+
+var ButtonBase =
+/*#__PURE__*/
+function (_React$Component) {
+ (0, _inherits2.default)(ButtonBase, _React$Component);
+
+ function ButtonBase() {
+ var _getPrototypeOf2;
+
+ var _this;
+
+ (0, _classCallCheck2.default)(this, ButtonBase);
+
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
+ }
+
+ _this = (0, _possibleConstructorReturn2.default)(this, (_getPrototypeOf2 = (0, _getPrototypeOf3.default)(ButtonBase)).call.apply(_getPrototypeOf2, [this].concat(args)));
+ _this.state = {};
+ _this.keyDown = false;
+ _this.focusVisibleCheckTime = 50;
+ _this.focusVisibleMaxCheckTimes = 5;
+ _this.handleMouseDown = (0, _createRippleHandler.default)((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)), 'MouseDown', 'start', function () {
+ clearTimeout(_this.focusVisibleTimeout);
+
+ if (_this.state.focusVisible) {
+ _this.setState({
+ focusVisible: false
+ });
+ }
+ });
+ _this.handleMouseUp = (0, _createRippleHandler.default)((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)), 'MouseUp', 'stop');
+ _this.handleMouseLeave = (0, _createRippleHandler.default)((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)), 'MouseLeave', 'stop', function (event) {
+ if (_this.state.focusVisible) {
+ event.preventDefault();
+ }
+ });
+ _this.handleTouchStart = (0, _createRippleHandler.default)((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)), 'TouchStart', 'start');
+ _this.handleTouchEnd = (0, _createRippleHandler.default)((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)), 'TouchEnd', 'stop');
+ _this.handleTouchMove = (0, _createRippleHandler.default)((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)), 'TouchMove', 'stop');
+ _this.handleContextMenu = (0, _createRippleHandler.default)((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)), 'ContextMenu', 'stop');
+ _this.handleBlur = (0, _createRippleHandler.default)((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)), 'Blur', 'stop', function () {
+ clearTimeout(_this.focusVisibleTimeout);
+
+ if (_this.state.focusVisible) {
+ _this.setState({
+ focusVisible: false
+ });
+ }
+ });
+
+ _this.onRippleRef = function (node) {
+ _this.ripple = node;
+ };
+
+ _this.onFocusVisibleHandler = function (event) {
+ _this.keyDown = false;
+
+ _this.setState({
+ focusVisible: true
+ });
+
+ if (_this.props.onFocusVisible) {
+ _this.props.onFocusVisible(event);
+ }
+ };
+
+ _this.handleKeyDown = function (event) {
+ var _this$props = _this.props,
+ component = _this$props.component,
+ focusRipple = _this$props.focusRipple,
+ onKeyDown = _this$props.onKeyDown,
+ onClick = _this$props.onClick;
+ var key = (0, _keycode.default)(event); // Check if key is already down to avoid repeats being counted as multiple activations
+
+ if (focusRipple && !_this.keyDown && _this.state.focusVisible && _this.ripple && key === 'space') {
+ _this.keyDown = true;
+ event.persist();
+
+ _this.ripple.stop(event, function () {
+ _this.ripple.start(event);
+ });
+ }
+
+ if (onKeyDown) {
+ onKeyDown(event);
+ } // Keyboard accessibility for non interactive elements
+
+
+ if (event.target === event.currentTarget && component && component !== 'button' && (key === 'space' || key === 'enter') && !(_this.button.tagName === 'A' && _this.button.href)) {
+ event.preventDefault();
+
+ if (onClick) {
+ onClick(event);
+ }
+ }
+ };
+
+ _this.handleKeyUp = function (event) {
+ if (_this.props.focusRipple && (0, _keycode.default)(event) === 'space' && _this.ripple && _this.state.focusVisible) {
+ _this.keyDown = false;
+ event.persist();
+
+ _this.ripple.stop(event, function () {
+ _this.ripple.pulsate(event);
+ });
+ }
+
+ if (_this.props.onKeyUp) {
+ _this.props.onKeyUp(event);
+ }
+ };
+
+ _this.handleFocus = function (event) {
+ if (_this.props.disabled) {
+ return;
+ } // Fix for https://github.com/facebook/react/issues/7769
+
+
+ if (!_this.button) {
+ _this.button = event.currentTarget;
+ }
+
+ event.persist();
+ (0, _focusVisible.detectFocusVisible)((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)), _this.button, function () {
+ _this.onFocusVisibleHandler(event);
+ });
+
+ if (_this.props.onFocus) {
+ _this.props.onFocus(event);
+ }
+ };
+
+ return _this;
+ }
+
+ (0, _createClass2.default)(ButtonBase, [{
+ key: "componentDidMount",
+ value: function componentDidMount() {
+ var _this2 = this;
+
+ this.button = _reactDom.default.findDOMNode(this);
+ (0, _focusVisible.listenForFocusKeys)((0, _ownerWindow.default)(this.button));
+
+ if (this.props.action) {
+ this.props.action({
+ focusVisible: function focusVisible() {
+ _this2.setState({
+ focusVisible: true
+ });
+
+ _this2.button.focus();
+ }
+ });
+ }
+ }
+ }, {
+ key: "componentDidUpdate",
+ value: function componentDidUpdate(prevProps, prevState) {
+ if (this.props.focusRipple && !this.props.disableRipple && !prevState.focusVisible && this.state.focusVisible) {
+ this.ripple.pulsate();
+ }
+ }
+ }, {
+ key: "componentWillUnmount",
+ value: function componentWillUnmount() {
+ clearTimeout(this.focusVisibleTimeout);
+ }
+ }, {
+ key: "render",
+ value: function render() {
+ var _classNames;
+
+ var _this$props2 = this.props,
+ action = _this$props2.action,
+ buttonRef = _this$props2.buttonRef,
+ centerRipple = _this$props2.centerRipple,
+ children = _this$props2.children,
+ classes = _this$props2.classes,
+ classNameProp = _this$props2.className,
+ component = _this$props2.component,
+ disabled = _this$props2.disabled,
+ disableRipple = _this$props2.disableRipple,
+ disableTouchRipple = _this$props2.disableTouchRipple,
+ focusRipple = _this$props2.focusRipple,
+ focusVisibleClassName = _this$props2.focusVisibleClassName,
+ onBlur = _this$props2.onBlur,
+ onFocus = _this$props2.onFocus,
+ onFocusVisible = _this$props2.onFocusVisible,
+ onKeyDown = _this$props2.onKeyDown,
+ onKeyUp = _this$props2.onKeyUp,
+ onMouseDown = _this$props2.onMouseDown,
+ onMouseLeave = _this$props2.onMouseLeave,
+ onMouseUp = _this$props2.onMouseUp,
+ onTouchEnd = _this$props2.onTouchEnd,
+ onTouchMove = _this$props2.onTouchMove,
+ onTouchStart = _this$props2.onTouchStart,
+ tabIndex = _this$props2.tabIndex,
+ TouchRippleProps = _this$props2.TouchRippleProps,
+ type = _this$props2.type,
+ other = (0, _objectWithoutProperties2.default)(_this$props2, ["action", "buttonRef", "centerRipple", "children", "classes", "className", "component", "disabled", "disableRipple", "disableTouchRipple", "focusRipple", "focusVisibleClassName", "onBlur", "onFocus", "onFocusVisible", "onKeyDown", "onKeyUp", "onMouseDown", "onMouseLeave", "onMouseUp", "onTouchEnd", "onTouchMove", "onTouchStart", "tabIndex", "TouchRippleProps", "type"]);
+ var className = (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.disabled, disabled), (0, _defineProperty2.default)(_classNames, classes.focusVisible, this.state.focusVisible), (0, _defineProperty2.default)(_classNames, focusVisibleClassName, this.state.focusVisible), _classNames), classNameProp);
+ var ComponentProp = component;
+
+ if (ComponentProp === 'button' && other.href) {
+ ComponentProp = 'a';
+ }
+
+ var buttonProps = {};
+
+ if (ComponentProp === 'button') {
+ buttonProps.type = type || 'button';
+ buttonProps.disabled = disabled;
+ } else {
+ buttonProps.role = 'button';
+ }
+
+ return _react.default.createElement(ComponentProp, (0, _extends2.default)({
+ className: className,
+ onBlur: this.handleBlur,
+ onFocus: this.handleFocus,
+ onKeyDown: this.handleKeyDown,
+ onKeyUp: this.handleKeyUp,
+ onMouseDown: this.handleMouseDown,
+ onMouseLeave: this.handleMouseLeave,
+ onMouseUp: this.handleMouseUp,
+ onTouchEnd: this.handleTouchEnd,
+ onTouchMove: this.handleTouchMove,
+ onTouchStart: this.handleTouchStart,
+ onContextMenu: this.handleContextMenu,
+ ref: buttonRef,
+ tabIndex: disabled ? '-1' : tabIndex
+ }, buttonProps, other), children, !disableRipple && !disabled ? _react.default.createElement(_NoSsr.default, null, _react.default.createElement(_TouchRipple.default, (0, _extends2.default)({
+ innerRef: this.onRippleRef,
+ center: centerRipple
+ }, TouchRippleProps))) : null);
+ }
+ }], [{
+ key: "getDerivedStateFromProps",
+ value: function getDerivedStateFromProps(nextProps, prevState) {
+ if (typeof prevState.focusVisible === 'undefined') {
+ return {
+ focusVisible: false,
+ lastDisabled: nextProps.disabled
+ };
+ } // The blur won't fire when the disabled state is set on a focused input.
+ // We need to book keep the focused state manually.
+
+
+ if (!prevState.prevState && nextProps.disabled && prevState.focusVisible) {
+ return {
+ focusVisible: false,
+ lastDisabled: nextProps.disabled
+ };
+ }
+
+ return {
+ lastDisabled: nextProps.disabled
+ };
+ }
+ }]);
+ return ButtonBase;
+}(_react.default.Component);
+
+ true ? ButtonBase.propTypes = {
+ /**
+ * Callback fired when the component mounts.
+ * This is useful when you want to trigger an action programmatically.
+ * It currently only supports `focusVisible()` action.
+ *
+ * @param {object} actions This object contains all possible actions
+ * that can be triggered programmatically.
+ */
+ action: _propTypes.default.func,
+
+ /**
+ * Use that property to pass a ref callback to the native button component.
+ */
+ buttonRef: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
+
+ /**
+ * If `true`, the ripples will be centered.
+ * They won't start at the cursor interaction position.
+ */
+ centerRipple: _propTypes.default.bool,
+
+ /**
+ * The content of the component.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a DOM element or a component.
+ */
+ component: _utils.componentPropType,
+
+ /**
+ * If `true`, the base button will be disabled.
+ */
+ disabled: _propTypes.default.bool,
+
+ /**
+ * If `true`, the ripple effect will be disabled.
+ */
+ disableRipple: _propTypes.default.bool,
+
+ /**
+ * If `true`, the touch ripple effect will be disabled.
+ */
+ disableTouchRipple: _propTypes.default.bool,
+
+ /**
+ * If `true`, the base button will have a keyboard focus ripple.
+ * `disableRipple` must also be `false`.
+ */
+ focusRipple: _propTypes.default.bool,
+
+ /**
+ * This property can help a person know which element has the keyboard focus.
+ * The class name will be applied when the element gain the focus through a keyboard interaction.
+ * It's a polyfill for the [CSS :focus-visible selector](https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo).
+ * The rationale for using this feature [is explained here](https://github.com/WICG/focus-visible/blob/master/explainer.md).
+ * A [polyfill can be used](https://github.com/WICG/focus-visible) to apply a `focus-visible` class to other components
+ * if needed.
+ */
+ focusVisibleClassName: _propTypes.default.string,
+
+ /**
+ * @ignore
+ */
+ onBlur: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onClick: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onFocus: _propTypes.default.func,
+
+ /**
+ * Callback fired when the component is focused with a keyboard.
+ * We trigger a `onFocus` callback too.
+ */
+ onFocusVisible: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onKeyDown: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onKeyUp: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onMouseDown: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onMouseLeave: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onMouseUp: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onTouchEnd: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onTouchMove: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onTouchStart: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ role: _propTypes.default.string,
+
+ /**
+ * @ignore
+ */
+ tabIndex: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
+
+ /**
+ * Properties applied to the `TouchRipple` element.
+ */
+ TouchRippleProps: _propTypes.default.object,
+
+ /**
+ * Used to control the button's purpose.
+ * This property passes the value to the `type` attribute of the native button component.
+ * Valid property values include `button`, `submit`, and `reset`.
+ */
+ type: _propTypes.default.string
+} : undefined;
+ButtonBase.defaultProps = {
+ centerRipple: false,
+ component: 'button',
+ disableRipple: false,
+ disableTouchRipple: false,
+ focusRipple: false,
+ tabIndex: '0',
+ type: 'button'
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiButtonBase'
+})(ButtonBase);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ButtonBase/Ripple.js":
+/*!*******************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ButtonBase/Ripple.js ***!
+ \*******************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../../node_modules/@babel/runtime/helpers/classCallCheck.js"));
+
+var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../../node_modules/@babel/runtime/helpers/createClass.js"));
+
+var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
+
+var _getPrototypeOf3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
+
+var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../../node_modules/@babel/runtime/helpers/inherits.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _Transition = _interopRequireDefault(__webpack_require__(/*! react-transition-group/Transition */ "../../node_modules/react-transition-group/Transition.js"));
+
+/**
+ * @ignore - internal component.
+ */
+var Ripple =
+/*#__PURE__*/
+function (_React$Component) {
+ (0, _inherits2.default)(Ripple, _React$Component);
+
+ function Ripple() {
+ var _getPrototypeOf2;
+
+ var _this;
+
+ (0, _classCallCheck2.default)(this, Ripple);
+
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
+ }
+
+ _this = (0, _possibleConstructorReturn2.default)(this, (_getPrototypeOf2 = (0, _getPrototypeOf3.default)(Ripple)).call.apply(_getPrototypeOf2, [this].concat(args)));
+ _this.state = {
+ visible: false,
+ leaving: false
+ };
+
+ _this.handleEnter = function () {
+ _this.setState({
+ visible: true
+ });
+ };
+
+ _this.handleExit = function () {
+ _this.setState({
+ leaving: true
+ });
+ };
+
+ return _this;
+ }
+
+ (0, _createClass2.default)(Ripple, [{
+ key: "render",
+ value: function render() {
+ var _classNames, _classNames2;
+
+ var _this$props = this.props,
+ classes = _this$props.classes,
+ classNameProp = _this$props.className,
+ pulsate = _this$props.pulsate,
+ rippleX = _this$props.rippleX,
+ rippleY = _this$props.rippleY,
+ rippleSize = _this$props.rippleSize,
+ other = (0, _objectWithoutProperties2.default)(_this$props, ["classes", "className", "pulsate", "rippleX", "rippleY", "rippleSize"]);
+ var _this$state = this.state,
+ visible = _this$state.visible,
+ leaving = _this$state.leaving;
+ var rippleClassName = (0, _classnames.default)(classes.ripple, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.rippleVisible, visible), (0, _defineProperty2.default)(_classNames, classes.ripplePulsate, pulsate), _classNames), classNameProp);
+ var rippleStyles = {
+ width: rippleSize,
+ height: rippleSize,
+ top: -(rippleSize / 2) + rippleY,
+ left: -(rippleSize / 2) + rippleX
+ };
+ var childClassName = (0, _classnames.default)(classes.child, (_classNames2 = {}, (0, _defineProperty2.default)(_classNames2, classes.childLeaving, leaving), (0, _defineProperty2.default)(_classNames2, classes.childPulsate, pulsate), _classNames2));
+ return _react.default.createElement(_Transition.default, (0, _extends2.default)({
+ onEnter: this.handleEnter,
+ onExit: this.handleExit
+ }, other), _react.default.createElement("span", {
+ className: rippleClassName,
+ style: rippleStyles
+ }, _react.default.createElement("span", {
+ className: childClassName
+ })));
+ }
+ }]);
+ return Ripple;
+}(_react.default.Component);
+
+ true ? Ripple.propTypes = {
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * If `true`, the ripple pulsates, typically indicating the keyboard focus state of an element.
+ */
+ pulsate: _propTypes.default.bool,
+
+ /**
+ * Diameter of the ripple.
+ */
+ rippleSize: _propTypes.default.number,
+
+ /**
+ * Horizontal position of the ripple center.
+ */
+ rippleX: _propTypes.default.number,
+
+ /**
+ * Vertical position of the ripple center.
+ */
+ rippleY: _propTypes.default.number
+} : undefined;
+Ripple.defaultProps = {
+ pulsate: false
+};
+var _default = Ripple;
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ButtonBase/TouchRipple.js":
+/*!************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ButtonBase/TouchRipple.js ***!
+ \************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = exports.DELAY_RIPPLE = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
+
+var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../../node_modules/@babel/runtime/helpers/classCallCheck.js"));
+
+var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../../node_modules/@babel/runtime/helpers/createClass.js"));
+
+var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
+
+var _getPrototypeOf3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
+
+var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../../node_modules/@babel/runtime/helpers/inherits.js"));
+
+var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../../node_modules/@babel/runtime/helpers/assertThisInitialized.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "../../node_modules/react-dom/index.js"));
+
+var _TransitionGroup = _interopRequireDefault(__webpack_require__(/*! react-transition-group/TransitionGroup */ "../../node_modules/react-transition-group/TransitionGroup.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _Ripple = _interopRequireDefault(__webpack_require__(/*! ./Ripple */ "../../node_modules/@material-ui/core/ButtonBase/Ripple.js"));
+
+var DURATION = 550;
+var DELAY_RIPPLE = 80;
+exports.DELAY_RIPPLE = DELAY_RIPPLE;
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ display: 'block',
+ position: 'absolute',
+ overflow: 'hidden',
+ borderRadius: 'inherit',
+ width: '100%',
+ height: '100%',
+ left: 0,
+ top: 0,
+ pointerEvents: 'none',
+ zIndex: 0
+ },
+
+ /* Styles applied to the internal `Ripple` components `ripple` class. */
+ ripple: {
+ width: 50,
+ height: 50,
+ left: 0,
+ top: 0,
+ opacity: 0,
+ position: 'absolute'
+ },
+
+ /* Styles applied to the internal `Ripple` components `rippleVisible` class. */
+ rippleVisible: {
+ opacity: 0.3,
+ transform: 'scale(1)',
+ animation: "mui-ripple-enter ".concat(DURATION, "ms ").concat(theme.transitions.easing.easeInOut),
+ // Backward compatible logic between JSS v9 and v10.
+ // To remove with the release of Material-UI v4
+ animationName: '$mui-ripple-enter'
+ },
+
+ /* Styles applied to the internal `Ripple` components `ripplePulsate` class. */
+ ripplePulsate: {
+ animationDuration: "".concat(theme.transitions.duration.shorter, "ms")
+ },
+
+ /* Styles applied to the internal `Ripple` components `child` class. */
+ child: {
+ opacity: 1,
+ display: 'block',
+ width: '100%',
+ height: '100%',
+ borderRadius: '50%',
+ backgroundColor: 'currentColor'
+ },
+
+ /* Styles applied to the internal `Ripple` components `childLeaving` class. */
+ childLeaving: {
+ opacity: 0,
+ animation: "mui-ripple-exit ".concat(DURATION, "ms ").concat(theme.transitions.easing.easeInOut),
+ // Backward compatible logic between JSS v9 and v10.
+ // To remove with the release of Material-UI v4
+ animationName: '$mui-ripple-exit'
+ },
+
+ /* Styles applied to the internal `Ripple` components `childPulsate` class. */
+ childPulsate: {
+ position: 'absolute',
+ left: 0,
+ top: 0,
+ animation: "mui-ripple-pulsate 2500ms ".concat(theme.transitions.easing.easeInOut, " 200ms infinite"),
+ // Backward compatible logic between JSS v9 and v10.
+ // To remove with the release of Material-UI v4
+ animationName: '$mui-ripple-pulsate'
+ },
+ '@keyframes mui-ripple-enter': {
+ '0%': {
+ transform: 'scale(0)',
+ opacity: 0.1
+ },
+ '100%': {
+ transform: 'scale(1)',
+ opacity: 0.3
+ }
+ },
+ '@keyframes mui-ripple-exit': {
+ '0%': {
+ opacity: 1
+ },
+ '100%': {
+ opacity: 0
+ }
+ },
+ '@keyframes mui-ripple-pulsate': {
+ '0%': {
+ transform: 'scale(1)'
+ },
+ '50%': {
+ transform: 'scale(0.92)'
+ },
+ '100%': {
+ transform: 'scale(1)'
+ }
+ }
+ };
+};
+
+exports.styles = styles;
+
+var TouchRipple =
+/*#__PURE__*/
+function (_React$PureComponent) {
+ (0, _inherits2.default)(TouchRipple, _React$PureComponent);
+
+ function TouchRipple() {
+ var _getPrototypeOf2;
+
+ var _this;
+
+ (0, _classCallCheck2.default)(this, TouchRipple);
+
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
+ }
+
+ _this = (0, _possibleConstructorReturn2.default)(this, (_getPrototypeOf2 = (0, _getPrototypeOf3.default)(TouchRipple)).call.apply(_getPrototypeOf2, [this].concat(args)));
+ _this.state = {
+ // eslint-disable-next-line react/no-unused-state
+ nextKey: 0,
+ ripples: []
+ };
+
+ _this.pulsate = function () {
+ _this.start({}, {
+ pulsate: true
+ });
+ };
+
+ _this.start = function () {
+ var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
+ var cb = arguments.length > 2 ? arguments[2] : undefined;
+ var _options$pulsate = options.pulsate,
+ pulsate = _options$pulsate === void 0 ? false : _options$pulsate,
+ _options$center = options.center,
+ center = _options$center === void 0 ? _this.props.center || options.pulsate : _options$center,
+ _options$fakeElement = options.fakeElement,
+ fakeElement = _options$fakeElement === void 0 ? false : _options$fakeElement;
+
+ if (event.type === 'mousedown' && _this.ignoringMouseDown) {
+ _this.ignoringMouseDown = false;
+ return;
+ }
+
+ if (event.type === 'touchstart') {
+ _this.ignoringMouseDown = true;
+ }
+
+ var element = fakeElement ? null : _reactDom.default.findDOMNode((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
+ var rect = element ? element.getBoundingClientRect() : {
+ width: 0,
+ height: 0,
+ left: 0,
+ top: 0
+ }; // Get the size of the ripple
+
+ var rippleX;
+ var rippleY;
+ var rippleSize;
+
+ if (center || event.clientX === 0 && event.clientY === 0 || !event.clientX && !event.touches) {
+ rippleX = Math.round(rect.width / 2);
+ rippleY = Math.round(rect.height / 2);
+ } else {
+ var clientX = event.clientX ? event.clientX : event.touches[0].clientX;
+ var clientY = event.clientY ? event.clientY : event.touches[0].clientY;
+ rippleX = Math.round(clientX - rect.left);
+ rippleY = Math.round(clientY - rect.top);
+ }
+
+ if (center) {
+ rippleSize = Math.sqrt((2 * Math.pow(rect.width, 2) + Math.pow(rect.height, 2)) / 3); // For some reason the animation is broken on Mobile Chrome if the size if even.
+
+ if (rippleSize % 2 === 0) {
+ rippleSize += 1;
+ }
+ } else {
+ var sizeX = Math.max(Math.abs((element ? element.clientWidth : 0) - rippleX), rippleX) * 2 + 2;
+ var sizeY = Math.max(Math.abs((element ? element.clientHeight : 0) - rippleY), rippleY) * 2 + 2;
+ rippleSize = Math.sqrt(Math.pow(sizeX, 2) + Math.pow(sizeY, 2));
+ } // Touche devices
+
+
+ if (event.touches) {
+ // Prepare the ripple effect.
+ _this.startTimerCommit = function () {
+ _this.startCommit({
+ pulsate: pulsate,
+ rippleX: rippleX,
+ rippleY: rippleY,
+ rippleSize: rippleSize,
+ cb: cb
+ });
+ }; // Delay the execution of the ripple effect.
+
+
+ _this.startTimer = setTimeout(function () {
+ if (_this.startTimerCommit) {
+ _this.startTimerCommit();
+
+ _this.startTimerCommit = null;
+ }
+ }, DELAY_RIPPLE); // We have to make a tradeoff with this value.
+ } else {
+ _this.startCommit({
+ pulsate: pulsate,
+ rippleX: rippleX,
+ rippleY: rippleY,
+ rippleSize: rippleSize,
+ cb: cb
+ });
+ }
+ };
+
+ _this.startCommit = function (params) {
+ var pulsate = params.pulsate,
+ rippleX = params.rippleX,
+ rippleY = params.rippleY,
+ rippleSize = params.rippleSize,
+ cb = params.cb;
+
+ _this.setState(function (state) {
+ return {
+ nextKey: state.nextKey + 1,
+ ripples: [].concat((0, _toConsumableArray2.default)(state.ripples), [_react.default.createElement(_Ripple.default, {
+ key: state.nextKey,
+ classes: _this.props.classes,
+ timeout: {
+ exit: DURATION,
+ enter: DURATION
+ },
+ pulsate: pulsate,
+ rippleX: rippleX,
+ rippleY: rippleY,
+ rippleSize: rippleSize
+ })])
+ };
+ }, cb);
+ };
+
+ _this.stop = function (event, cb) {
+ clearTimeout(_this.startTimer);
+ var ripples = _this.state.ripples; // The touch interaction occurs too quickly.
+ // We still want to show ripple effect.
+
+ if (event.type === 'touchend' && _this.startTimerCommit) {
+ event.persist();
+
+ _this.startTimerCommit();
+
+ _this.startTimerCommit = null;
+ _this.startTimer = setTimeout(function () {
+ _this.stop(event, cb);
+ }, 0);
+ return;
+ }
+
+ _this.startTimerCommit = null;
+
+ if (ripples && ripples.length) {
+ _this.setState({
+ ripples: ripples.slice(1)
+ }, cb);
+ }
+ };
+
+ return _this;
+ }
+
+ (0, _createClass2.default)(TouchRipple, [{
+ key: "componentWillUnmount",
+ value: function componentWillUnmount() {
+ clearTimeout(this.startTimer);
+ }
+ }, {
+ key: "render",
+ value: function render() {
+ var _this$props = this.props,
+ center = _this$props.center,
+ classes = _this$props.classes,
+ className = _this$props.className,
+ other = (0, _objectWithoutProperties2.default)(_this$props, ["center", "classes", "className"]);
+ return _react.default.createElement(_TransitionGroup.default, (0, _extends2.default)({
+ component: "span",
+ enter: true,
+ exit: true,
+ className: (0, _classnames.default)(classes.root, className)
+ }, other), this.state.ripples);
+ }
+ }]);
+ return TouchRipple;
+}(_react.default.PureComponent);
+
+ true ? TouchRipple.propTypes = {
+ /**
+ * If `true`, the ripple starts at the center of the component
+ * rather than at the point of interaction.
+ */
+ center: _propTypes.default.bool,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string
+} : undefined;
+TouchRipple.defaultProps = {
+ center: false
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ flip: false,
+ name: 'MuiTouchRipple'
+})(TouchRipple);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ButtonBase/createRippleHandler.js":
+/*!********************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ButtonBase/createRippleHandler.js ***!
+ \********************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = void 0;
+
+/* eslint-disable import/no-mutable-exports */
+var createRippleHandler = function createRippleHandler(instance, eventName, action, cb) {
+ return function (event) {
+ if (cb) {
+ cb.call(instance, event);
+ }
+
+ var ignore = false; // Ignore events that have been `event.preventDefault()` marked.
+
+ if (event.defaultPrevented) {
+ ignore = true;
+ }
+
+ if (instance.props.disableTouchRipple && eventName !== 'Blur') {
+ ignore = true;
+ }
+
+ if (!ignore && instance.ripple) {
+ instance.ripple[action](event);
+ }
+
+ if (typeof instance.props["on".concat(eventName)] === 'function') {
+ instance.props["on".concat(eventName)](event);
+ }
+
+ return true;
+ };
+};
+/* istanbul ignore if */
+
+
+if (typeof window === 'undefined') {
+ createRippleHandler = function createRippleHandler() {
+ return function () {};
+ };
+}
+
+var _default = createRippleHandler;
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ButtonBase/focusVisible.js":
+/*!*************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ButtonBase/focusVisible.js ***!
+ \*************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.detectFocusVisible = detectFocusVisible;
+exports.listenForFocusKeys = listenForFocusKeys;
+
+var _keycode = _interopRequireDefault(__webpack_require__(/*! keycode */ "../../node_modules/keycode/index.js"));
+
+var _warning = _interopRequireDefault(__webpack_require__(/*! warning */ "../../node_modules/warning/warning.js"));
+
+var _ownerDocument = _interopRequireDefault(__webpack_require__(/*! ../utils/ownerDocument */ "../../node_modules/@material-ui/core/utils/ownerDocument.js"));
+
+var internal = {
+ focusKeyPressed: false,
+ keyUpEventTimeout: -1
+};
+
+function findActiveElement(doc) {
+ var activeElement = doc.activeElement;
+
+ while (activeElement && activeElement.shadowRoot && activeElement.shadowRoot.activeElement) {
+ activeElement = activeElement.shadowRoot.activeElement;
+ }
+
+ return activeElement;
+}
+
+function detectFocusVisible(instance, element, callback) {
+ var attempt = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 1;
+ true ? (0, _warning.default)(instance.focusVisibleCheckTime, 'Material-UI: missing instance.focusVisibleCheckTime.') : undefined;
+ true ? (0, _warning.default)(instance.focusVisibleMaxCheckTimes, 'Material-UI: missing instance.focusVisibleMaxCheckTimes.') : undefined;
+ instance.focusVisibleTimeout = setTimeout(function () {
+ var doc = (0, _ownerDocument.default)(element);
+ var activeElement = findActiveElement(doc);
+
+ if (internal.focusKeyPressed && (activeElement === element || element.contains(activeElement))) {
+ callback();
+ } else if (attempt < instance.focusVisibleMaxCheckTimes) {
+ detectFocusVisible(instance, element, callback, attempt + 1);
+ }
+ }, instance.focusVisibleCheckTime);
+}
+
+var FOCUS_KEYS = ['tab', 'enter', 'space', 'esc', 'up', 'down', 'left', 'right'];
+
+function isFocusKey(event) {
+ return FOCUS_KEYS.indexOf((0, _keycode.default)(event)) > -1;
+}
+
+var handleKeyUpEvent = function handleKeyUpEvent(event) {
+ if (isFocusKey(event)) {
+ internal.focusKeyPressed = true; // Let's consider that the user is using a keyboard during a window frame of 500ms.
+
+ clearTimeout(internal.keyUpEventTimeout);
+ internal.keyUpEventTimeout = setTimeout(function () {
+ internal.focusKeyPressed = false;
+ }, 500);
+ }
+};
+
+function listenForFocusKeys(win) {
+ // The event listener will only be added once per window.
+ // Duplicate event listeners will be ignored by addEventListener.
+ // Also, this logic is client side only, we don't need a teardown.
+ win.addEventListener('keyup', handleKeyUpEvent);
+}
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ButtonBase/index.js":
+/*!******************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ButtonBase/index.js ***!
+ \******************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _ButtonBase.default;
+ }
+});
+
+var _ButtonBase = _interopRequireDefault(__webpack_require__(/*! ./ButtonBase */ "../../node_modules/@material-ui/core/ButtonBase/ButtonBase.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Card/Card.js":
+/*!***********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Card/Card.js ***!
+ \***********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _Paper = _interopRequireDefault(__webpack_require__(/*! ../Paper */ "../../node_modules/@material-ui/core/Paper/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+// @inheritedComponent Paper
+var styles = {
+ /* Styles applied to the root element. */
+ root: {
+ overflow: 'hidden'
+ }
+};
+exports.styles = styles;
+
+function Card(props) {
+ var classes = props.classes,
+ className = props.className,
+ raised = props.raised,
+ other = (0, _objectWithoutProperties2.default)(props, ["classes", "className", "raised"]);
+ return _react.default.createElement(_Paper.default, (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, className),
+ elevation: raised ? 8 : 1
+ }, other));
+}
+
+ true ? Card.propTypes = {
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * If `true`, the card will use raised styling.
+ */
+ raised: _propTypes.default.bool
+} : undefined;
+Card.defaultProps = {
+ raised: false
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiCard'
+})(Card);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Card/index.js":
+/*!************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Card/index.js ***!
+ \************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Card.default;
+ }
+});
+
+var _Card = _interopRequireDefault(__webpack_require__(/*! ./Card */ "../../node_modules/@material-ui/core/Card/Card.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/CardActionArea/CardActionArea.js":
+/*!*******************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/CardActionArea/CardActionArea.js ***!
+ \*******************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _ButtonBase = _interopRequireDefault(__webpack_require__(/*! ../ButtonBase */ "../../node_modules/@material-ui/core/ButtonBase/index.js"));
+
+// @inheritedComponent ButtonBase
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ display: 'block',
+ textAlign: 'inherit',
+ width: '100%',
+ '&:hover $focusHighlight': {
+ opacity: theme.palette.action.hoverOpacity
+ },
+ '&$focusVisible $focusHighlight': {
+ opacity: 0.12
+ }
+ },
+
+ /* Styles applied to the ButtonBase root element if the action area is keyboard focused. */
+ focusVisible: {},
+
+ /* Styles applied to the overlay that covers the action area when it is keyboard focused. */
+ focusHighlight: {
+ pointerEvents: 'none',
+ position: 'absolute',
+ backgroundColor: 'currentcolor',
+ top: 0,
+ right: 0,
+ bottom: 0,
+ left: 0,
+ opacity: 0,
+ transition: theme.transitions.create('opacity', {
+ duration: theme.transitions.duration.short
+ })
+ }
+ };
+};
+
+exports.styles = styles;
+
+function CardActionArea(props) {
+ var children = props.children,
+ classes = props.classes,
+ className = props.className,
+ focusVisibleClassName = props.focusVisibleClassName,
+ other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "focusVisibleClassName"]);
+ return _react.default.createElement(_ButtonBase.default, (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, className),
+ focusVisibleClassName: (0, _classnames.default)(focusVisibleClassName, classes.focusVisible)
+ }, other), children, _react.default.createElement("span", {
+ className: classes.focusHighlight
+ }));
+}
+
+ true ? CardActionArea.propTypes = {
+ /**
+ * The content of the component.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * @ignore
+ */
+ focusVisibleClassName: _propTypes.default.string
+} : undefined;
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiCardActionArea'
+})(CardActionArea);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/CardActionArea/index.js":
+/*!**********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/CardActionArea/index.js ***!
+ \**********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _CardActionArea.default;
+ }
+});
+
+var _CardActionArea = _interopRequireDefault(__webpack_require__(/*! ./CardActionArea */ "../../node_modules/@material-ui/core/CardActionArea/CardActionArea.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/CardActions/CardActions.js":
+/*!*************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/CardActions/CardActions.js ***!
+ \*************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _reactHelpers = __webpack_require__(/*! ../utils/reactHelpers */ "../../node_modules/@material-ui/core/utils/reactHelpers.js");
+
+__webpack_require__(/*! ../Button */ "../../node_modules/@material-ui/core/Button/index.js");
+
+// So we don't have any override priority issue.
+var styles = {
+ /* Styles applied to the root element. */
+ root: {
+ display: 'flex',
+ alignItems: 'center',
+ boxSizing: 'border-box',
+ padding: '8px 4px'
+ },
+
+ /* Styles applied to the root element if `disableActionSpacing={true}`. */
+ disableActionSpacing: {
+ padding: 8
+ },
+
+ /* Styles applied to the children. */
+ action: {
+ margin: '0 4px'
+ }
+};
+exports.styles = styles;
+
+function CardActions(props) {
+ var disableActionSpacing = props.disableActionSpacing,
+ children = props.children,
+ classes = props.classes,
+ className = props.className,
+ other = (0, _objectWithoutProperties2.default)(props, ["disableActionSpacing", "children", "classes", "className"]);
+ return _react.default.createElement("div", (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, (0, _defineProperty2.default)({}, classes.disableActionSpacing, disableActionSpacing), className)
+ }, other), disableActionSpacing ? children : (0, _reactHelpers.cloneChildrenWithClassName)(children, classes.action));
+}
+
+ true ? CardActions.propTypes = {
+ /**
+ * The content of the component.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * If `true`, the card actions do not have additional margin.
+ */
+ disableActionSpacing: _propTypes.default.bool
+} : undefined;
+CardActions.defaultProps = {
+ disableActionSpacing: false
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiCardActions'
+})(CardActions);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/CardActions/index.js":
+/*!*******************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/CardActions/index.js ***!
+ \*******************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _CardActions.default;
+ }
+});
+
+var _CardActions = _interopRequireDefault(__webpack_require__(/*! ./CardActions */ "../../node_modules/@material-ui/core/CardActions/CardActions.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/CardContent/CardContent.js":
+/*!*************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/CardContent/CardContent.js ***!
+ \*************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var styles = {
+ /* Styles applied to the root element. */
+ root: {
+ padding: 16,
+ '&:last-child': {
+ paddingBottom: 24
+ }
+ }
+};
+exports.styles = styles;
+
+function CardContent(props) {
+ var classes = props.classes,
+ className = props.className,
+ Component = props.component,
+ other = (0, _objectWithoutProperties2.default)(props, ["classes", "className", "component"]);
+ return _react.default.createElement(Component, (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, className)
+ }, other));
+}
+
+ true ? CardContent.propTypes = {
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a DOM element or a component.
+ */
+ component: _utils.componentPropType
+} : undefined;
+CardContent.defaultProps = {
+ component: 'div'
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiCardContent'
+})(CardContent);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/CardContent/index.js":
+/*!*******************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/CardContent/index.js ***!
+ \*******************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _CardContent.default;
+ }
+});
+
+var _CardContent = _interopRequireDefault(__webpack_require__(/*! ./CardContent */ "../../node_modules/@material-ui/core/CardContent/CardContent.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/CardHeader/CardHeader.js":
+/*!***********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/CardHeader/CardHeader.js ***!
+ \***********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _Typography = _interopRequireDefault(__webpack_require__(/*! ../Typography */ "../../node_modules/@material-ui/core/Typography/index.js"));
+
+var styles = {
+ /* Styles applied to the root element. */
+ root: {
+ display: 'flex',
+ alignItems: 'center',
+ padding: 16
+ },
+
+ /* Styles applied to the avatar element. */
+ avatar: {
+ flex: '0 0 auto',
+ marginRight: 16
+ },
+
+ /* Styles applied to the action element. */
+ action: {
+ flex: '0 0 auto',
+ alignSelf: 'flex-start',
+ marginTop: -8,
+ marginRight: -8
+ },
+
+ /* Styles applied to the content wrapper element. */
+ content: {
+ flex: '1 1 auto'
+ },
+
+ /* Styles applied to the title Typography element. */
+ title: {},
+
+ /* Styles applied to the subheader Typography element. */
+ subheader: {}
+};
+exports.styles = styles;
+
+function CardHeader(props) {
+ var action = props.action,
+ avatar = props.avatar,
+ classes = props.classes,
+ classNameProp = props.className,
+ Component = props.component,
+ disableTypography = props.disableTypography,
+ subheaderProp = props.subheader,
+ subheaderTypographyProps = props.subheaderTypographyProps,
+ titleProp = props.title,
+ titleTypographyProps = props.titleTypographyProps,
+ other = (0, _objectWithoutProperties2.default)(props, ["action", "avatar", "classes", "className", "component", "disableTypography", "subheader", "subheaderTypographyProps", "title", "titleTypographyProps"]);
+ var title = titleProp;
+
+ if (title != null && title.type !== _Typography.default && !disableTypography) {
+ title = _react.default.createElement(_Typography.default, (0, _extends2.default)({
+ variant: avatar ? 'body2' : 'headline',
+ internalDeprecatedVariant: true,
+ className: classes.title,
+ component: "span"
+ }, titleTypographyProps), title);
+ }
+
+ var subheader = subheaderProp;
+
+ if (subheader != null && subheader.type !== _Typography.default && !disableTypography) {
+ subheader = _react.default.createElement(_Typography.default, (0, _extends2.default)({
+ variant: avatar ? 'body2' : 'body1',
+ className: classes.subheader,
+ color: "textSecondary",
+ component: "span"
+ }, subheaderTypographyProps), subheader);
+ }
+
+ return _react.default.createElement(Component, (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, classNameProp)
+ }, other), avatar && _react.default.createElement("div", {
+ className: classes.avatar
+ }, avatar), _react.default.createElement("div", {
+ className: classes.content
+ }, title, subheader), action && _react.default.createElement("div", {
+ className: classes.action
+ }, action));
+}
+
+ true ? CardHeader.propTypes = {
+ /**
+ * The action to display in the card header.
+ */
+ action: _propTypes.default.node,
+
+ /**
+ * The Avatar for the Card Header.
+ */
+ avatar: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a DOM element or a component.
+ */
+ component: _utils.componentPropType,
+
+ /**
+ * If `true`, the children won't be wrapped by a Typography component.
+ * This can be useful to render an alternative Typography variant by wrapping
+ * the `title` text, and optional `subheader` text
+ * with the Typography component.
+ */
+ disableTypography: _propTypes.default.bool,
+
+ /**
+ * The content of the component.
+ */
+ subheader: _propTypes.default.node,
+
+ /**
+ * These props will be forwarded to the subheader
+ * (as long as disableTypography is not `true`).
+ */
+ subheaderTypographyProps: _propTypes.default.object,
+
+ /**
+ * The content of the Card Title.
+ */
+ title: _propTypes.default.node,
+
+ /**
+ * These props will be forwarded to the title
+ * (as long as disableTypography is not `true`).
+ */
+ titleTypographyProps: _propTypes.default.object
+} : undefined;
+CardHeader.defaultProps = {
+ component: 'div',
+ disableTypography: false
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiCardHeader'
+})(CardHeader);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/CardHeader/index.js":
+/*!******************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/CardHeader/index.js ***!
+ \******************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _CardHeader.default;
+ }
+});
+
+var _CardHeader = _interopRequireDefault(__webpack_require__(/*! ./CardHeader */ "../../node_modules/@material-ui/core/CardHeader/CardHeader.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/CardMedia/CardMedia.js":
+/*!*********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/CardMedia/CardMedia.js ***!
+ \*********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _warning = _interopRequireDefault(__webpack_require__(/*! warning */ "../../node_modules/warning/warning.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var styles = {
+ /* Styles applied to the root element. */
+ root: {
+ display: 'block',
+ backgroundSize: 'cover',
+ backgroundRepeat: 'no-repeat',
+ backgroundPosition: 'center'
+ },
+
+ /* Styles applied to the root element if `component="video, audio, picture, iframe, or img"`. */
+ media: {
+ width: '100%'
+ }
+};
+exports.styles = styles;
+var MEDIA_COMPONENTS = ['video', 'audio', 'picture', 'iframe', 'img'];
+
+function CardMedia(props) {
+ var classes = props.classes,
+ className = props.className,
+ Component = props.component,
+ image = props.image,
+ src = props.src,
+ style = props.style,
+ other = (0, _objectWithoutProperties2.default)(props, ["classes", "className", "component", "image", "src", "style"]);
+ true ? (0, _warning.default)(Boolean(image || src), 'Material-UI: either `image` or `src` property must be specified.') : undefined;
+ var isMediaComponent = MEDIA_COMPONENTS.indexOf(Component) !== -1;
+ var composedStyle = !isMediaComponent && image ? (0, _extends2.default)({
+ backgroundImage: "url(\"".concat(image, "\")")
+ }, style) : style;
+ return _react.default.createElement(Component, (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, (0, _defineProperty2.default)({}, classes.media, isMediaComponent), className),
+ style: composedStyle,
+ src: isMediaComponent ? image || src : undefined
+ }, other));
+}
+
+ true ? CardMedia.propTypes = {
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * Component for rendering image.
+ * Either a string to use a DOM element or a component.
+ */
+ component: _utils.componentPropType,
+
+ /**
+ * Image to be displayed as a background image.
+ * Either `image` or `src` prop must be specified.
+ * Note that caller must specify height otherwise the image will not be visible.
+ */
+ image: _propTypes.default.string,
+
+ /**
+ * An alias for `image` property.
+ * Available only with media components.
+ * Media components: `video`, `audio`, `picture`, `iframe`, `img`.
+ */
+ src: _propTypes.default.string,
+
+ /**
+ * @ignore
+ */
+ style: _propTypes.default.object
+} : undefined;
+CardMedia.defaultProps = {
+ component: 'div'
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiCardMedia'
+})(CardMedia);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/CardMedia/index.js":
+/*!*****************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/CardMedia/index.js ***!
+ \*****************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _CardMedia.default;
+ }
+});
+
+var _CardMedia = _interopRequireDefault(__webpack_require__(/*! ./CardMedia */ "../../node_modules/@material-ui/core/CardMedia/CardMedia.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Checkbox/Checkbox.js":
+/*!*******************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Checkbox/Checkbox.js ***!
+ \*******************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _SwitchBase = _interopRequireDefault(__webpack_require__(/*! ../internal/SwitchBase */ "../../node_modules/@material-ui/core/internal/SwitchBase.js"));
+
+var _CheckBoxOutlineBlank = _interopRequireDefault(__webpack_require__(/*! ../internal/svg-icons/CheckBoxOutlineBlank */ "../../node_modules/@material-ui/core/internal/svg-icons/CheckBoxOutlineBlank.js"));
+
+var _CheckBox = _interopRequireDefault(__webpack_require__(/*! ../internal/svg-icons/CheckBox */ "../../node_modules/@material-ui/core/internal/svg-icons/CheckBox.js"));
+
+var _IndeterminateCheckBox = _interopRequireDefault(__webpack_require__(/*! ../internal/svg-icons/IndeterminateCheckBox */ "../../node_modules/@material-ui/core/internal/svg-icons/IndeterminateCheckBox.js"));
+
+var _helpers = __webpack_require__(/*! ../utils/helpers */ "../../node_modules/@material-ui/core/utils/helpers.js");
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ color: theme.palette.text.secondary
+ },
+
+ /* Styles applied to the root element if `checked={true}`. */
+ checked: {},
+
+ /* Styles applied to the root element if `disabled={true}`. */
+ disabled: {},
+
+ /* Styles applied to the root element if `indeterminate={true}`. */
+ indeterminate: {},
+
+ /* Styles applied to the root element if `color="primary"`. */
+ colorPrimary: {
+ '&$checked': {
+ color: theme.palette.primary.main
+ },
+ '&$disabled': {
+ color: theme.palette.action.disabled
+ }
+ },
+
+ /* Styles applied to the root element if `color="secondary"`. */
+ colorSecondary: {
+ '&$checked': {
+ color: theme.palette.secondary.main
+ },
+ '&$disabled': {
+ color: theme.palette.action.disabled
+ }
+ }
+ };
+};
+
+exports.styles = styles;
+
+function Checkbox(props) {
+ var checkedIcon = props.checkedIcon,
+ classes = props.classes,
+ className = props.className,
+ color = props.color,
+ icon = props.icon,
+ indeterminate = props.indeterminate,
+ indeterminateIcon = props.indeterminateIcon,
+ inputProps = props.inputProps,
+ other = (0, _objectWithoutProperties2.default)(props, ["checkedIcon", "classes", "className", "color", "icon", "indeterminate", "indeterminateIcon", "inputProps"]);
+ return _react.default.createElement(_SwitchBase.default, (0, _extends2.default)({
+ type: "checkbox",
+ checkedIcon: indeterminate ? indeterminateIcon : checkedIcon,
+ className: (0, _classnames.default)((0, _defineProperty2.default)({}, classes.indeterminate, indeterminate), className),
+ classes: {
+ root: (0, _classnames.default)(classes.root, classes["color".concat((0, _helpers.capitalize)(color))]),
+ checked: classes.checked,
+ disabled: classes.disabled
+ },
+ inputProps: (0, _extends2.default)({
+ 'data-indeterminate': indeterminate
+ }, inputProps),
+ icon: indeterminate ? indeterminateIcon : icon
+ }, other));
+}
+
+ true ? Checkbox.propTypes = {
+ /**
+ * If `true`, the component is checked.
+ */
+ checked: _propTypes.default.oneOfType([_propTypes.default.bool, _propTypes.default.string]),
+
+ /**
+ * The icon to display when the component is checked.
+ */
+ checkedIcon: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The color of the component. It supports those theme colors that make sense for this component.
+ */
+ color: _propTypes.default.oneOf(['primary', 'secondary', 'default']),
+
+ /**
+ * If `true`, the switch will be disabled.
+ */
+ disabled: _propTypes.default.bool,
+
+ /**
+ * If `true`, the ripple effect will be disabled.
+ */
+ disableRipple: _propTypes.default.bool,
+
+ /**
+ * The icon to display when the component is unchecked.
+ */
+ icon: _propTypes.default.node,
+
+ /**
+ * The id of the `input` element.
+ */
+ id: _propTypes.default.string,
+
+ /**
+ * If `true`, the component appears indeterminate.
+ * This does not set the native input element to indeterminate due
+ * to inconsistent behavior across browsers.
+ * However, we set a `data-indeterminate` attribute on the input.
+ */
+ indeterminate: _propTypes.default.bool,
+
+ /**
+ * The icon to display when the component is indeterminate.
+ */
+ indeterminateIcon: _propTypes.default.node,
+
+ /**
+ * Properties applied to the `input` element.
+ */
+ inputProps: _propTypes.default.object,
+
+ /**
+ * Use that property to pass a ref callback to the native input component.
+ */
+ inputRef: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
+
+ /**
+ * Callback fired when the state is changed.
+ *
+ * @param {object} event The event source of the callback.
+ * You can pull out the new value by accessing `event.target.checked`.
+ * @param {boolean} checked The `checked` value of the switch
+ */
+ onChange: _propTypes.default.func,
+
+ /**
+ * The input component property `type`.
+ */
+ type: _propTypes.default.string,
+
+ /**
+ * The value of the component.
+ */
+ value: _propTypes.default.string
+} : undefined;
+Checkbox.defaultProps = {
+ checkedIcon: _react.default.createElement(_CheckBox.default, null),
+ color: 'secondary',
+ icon: _react.default.createElement(_CheckBoxOutlineBlank.default, null),
+ indeterminate: false,
+ indeterminateIcon: _react.default.createElement(_IndeterminateCheckBox.default, null)
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiCheckbox'
+})(Checkbox);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Checkbox/index.js":
+/*!****************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Checkbox/index.js ***!
+ \****************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Checkbox.default;
+ }
+});
+
+var _Checkbox = _interopRequireDefault(__webpack_require__(/*! ./Checkbox */ "../../node_modules/@material-ui/core/Checkbox/Checkbox.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Chip/Chip.js":
+/*!***********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Chip/Chip.js ***!
+ \***********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../../node_modules/@babel/runtime/helpers/classCallCheck.js"));
+
+var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../../node_modules/@babel/runtime/helpers/createClass.js"));
+
+var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
+
+var _getPrototypeOf3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
+
+var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../../node_modules/@babel/runtime/helpers/inherits.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _keycode = _interopRequireDefault(__webpack_require__(/*! keycode */ "../../node_modules/keycode/index.js"));
+
+var _warning = _interopRequireDefault(__webpack_require__(/*! warning */ "../../node_modules/warning/warning.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _Cancel = _interopRequireDefault(__webpack_require__(/*! ../internal/svg-icons/Cancel */ "../../node_modules/@material-ui/core/internal/svg-icons/Cancel.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _colorManipulator = __webpack_require__(/*! ../styles/colorManipulator */ "../../node_modules/@material-ui/core/styles/colorManipulator.js");
+
+var _unsupportedProp = _interopRequireDefault(__webpack_require__(/*! ../utils/unsupportedProp */ "../../node_modules/@material-ui/core/utils/unsupportedProp.js"));
+
+var _helpers = __webpack_require__(/*! ../utils/helpers */ "../../node_modules/@material-ui/core/utils/helpers.js");
+
+__webpack_require__(/*! ../Avatar/Avatar */ "../../node_modules/@material-ui/core/Avatar/Avatar.js");
+
+// So we don't have any override priority issue.
+var styles = function styles(theme) {
+ var height = 32;
+ var backgroundColor = theme.palette.type === 'light' ? theme.palette.grey[300] : theme.palette.grey[700];
+ var deleteIconColor = (0, _colorManipulator.fade)(theme.palette.text.primary, 0.26);
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ fontFamily: theme.typography.fontFamily,
+ fontSize: theme.typography.pxToRem(13),
+ display: 'inline-flex',
+ alignItems: 'center',
+ justifyContent: 'center',
+ height: height,
+ color: theme.palette.getContrastText(backgroundColor),
+ backgroundColor: backgroundColor,
+ borderRadius: height / 2,
+ whiteSpace: 'nowrap',
+ transition: theme.transitions.create(['background-color', 'box-shadow']),
+ // label will inherit this from root, then `clickable` class overrides this for both
+ cursor: 'default',
+ // We disable the focus ring for mouse, touch and keyboard users.
+ outline: 'none',
+ textDecoration: 'none',
+ border: 'none',
+ // Remove `button` border
+ padding: 0,
+ // Remove `button` padding
+ verticalAlign: 'middle',
+ boxSizing: 'border-box'
+ },
+
+ /* Styles applied to the root element if `color="primary"`. */
+ colorPrimary: {
+ backgroundColor: theme.palette.primary.main,
+ color: theme.palette.primary.contrastText
+ },
+
+ /* Styles applied to the root element if `color="secondary"`. */
+ colorSecondary: {
+ backgroundColor: theme.palette.secondary.main,
+ color: theme.palette.secondary.contrastText
+ },
+
+ /* Styles applied to the root element if `onClick` is defined or `clickable={true}`. */
+ clickable: {
+ WebkitTapHighlightColor: 'transparent',
+ // Remove grey highlight
+ cursor: 'pointer',
+ '&:hover, &:focus': {
+ backgroundColor: (0, _colorManipulator.emphasize)(backgroundColor, 0.08)
+ },
+ '&:active': {
+ boxShadow: theme.shadows[1],
+ backgroundColor: (0, _colorManipulator.emphasize)(backgroundColor, 0.12)
+ }
+ },
+
+ /**
+ * Styles applied to the root element if
+ * `onClick` and `color="primary"` is defined or `clickable={true}`.
+ */
+ clickableColorPrimary: {
+ '&:hover, &:focus': {
+ backgroundColor: (0, _colorManipulator.emphasize)(theme.palette.primary.main, 0.08)
+ },
+ '&:active': {
+ backgroundColor: (0, _colorManipulator.emphasize)(theme.palette.primary.main, 0.12)
+ }
+ },
+
+ /**
+ * Styles applied to the root element if
+ * `onClick` and `color="secondary"` is defined or `clickable={true}`.
+ */
+ clickableColorSecondary: {
+ '&:hover, &:focus': {
+ backgroundColor: (0, _colorManipulator.emphasize)(theme.palette.secondary.main, 0.08)
+ },
+ '&:active': {
+ backgroundColor: (0, _colorManipulator.emphasize)(theme.palette.secondary.main, 0.12)
+ }
+ },
+
+ /* Styles applied to the root element if `onDelete` is defined. */
+ deletable: {
+ '&:focus': {
+ backgroundColor: (0, _colorManipulator.emphasize)(backgroundColor, 0.08)
+ }
+ },
+
+ /* Styles applied to the root element if `onDelete` and `color="primary"` is defined. */
+ deletableColorPrimary: {
+ '&:focus': {
+ backgroundColor: (0, _colorManipulator.emphasize)(theme.palette.primary.main, 0.2)
+ }
+ },
+
+ /* Styles applied to the root element if `onDelete` and `color="secondary"` is defined. */
+ deletableColorSecondary: {
+ '&:focus': {
+ backgroundColor: (0, _colorManipulator.emphasize)(theme.palette.secondary.main, 0.2)
+ }
+ },
+
+ /* Styles applied to the root element if `variant="outlined"`. */
+ outlined: {
+ backgroundColor: 'transparent',
+ border: "1px solid ".concat(theme.palette.type === 'light' ? 'rgba(0, 0, 0, 0.23)' : 'rgba(255, 255, 255, 0.23)'),
+ '$clickable&:hover, $clickable&:focus, $deletable&:focus': {
+ backgroundColor: (0, _colorManipulator.fade)(theme.palette.text.primary, theme.palette.action.hoverOpacity)
+ },
+ '& $avatar': {
+ marginLeft: -1
+ }
+ },
+
+ /* Styles applied to the root element if `variant="outlined"` and `color="primary"`. */
+ outlinedPrimary: {
+ color: theme.palette.primary.main,
+ border: "1px solid ".concat(theme.palette.primary.main),
+ '$clickable&:hover, $clickable&:focus, $deletable&:focus': {
+ backgroundColor: (0, _colorManipulator.fade)(theme.palette.primary.main, theme.palette.action.hoverOpacity)
+ }
+ },
+
+ /* Styles applied to the root element if `variant="outlined"` and `color="secondary"`. */
+ outlinedSecondary: {
+ color: theme.palette.secondary.main,
+ border: "1px solid ".concat(theme.palette.secondary.main),
+ '$clickable&:hover, $clickable&:focus, $deletable&:focus': {
+ backgroundColor: (0, _colorManipulator.fade)(theme.palette.secondary.main, theme.palette.action.hoverOpacity)
+ }
+ },
+
+ /* Styles applied to the `avatar` element. */
+ avatar: {
+ marginRight: -4,
+ width: height,
+ height: height,
+ color: theme.palette.type === 'light' ? theme.palette.grey[700] : theme.palette.grey[300],
+ fontSize: theme.typography.pxToRem(16)
+ },
+
+ /* Styles applied to the `avatar` element if `color="primary"`. */
+ avatarColorPrimary: {
+ color: theme.palette.primary.contrastText,
+ backgroundColor: theme.palette.primary.dark
+ },
+
+ /* Styles applied to the `avatar` element if `color="secondary"`. */
+ avatarColorSecondary: {
+ color: theme.palette.secondary.contrastText,
+ backgroundColor: theme.palette.secondary.dark
+ },
+
+ /* Styles applied to the `avatar` elements children. */
+ avatarChildren: {
+ width: 19,
+ height: 19
+ },
+
+ /* Styles applied to the `icon` element. */
+ icon: {
+ color: theme.palette.type === 'light' ? theme.palette.grey[700] : theme.palette.grey[300],
+ marginLeft: 4,
+ marginRight: -8
+ },
+
+ /* Styles applied to the `icon` element if `color="primary"`. */
+ iconColorPrimary: {
+ color: 'inherit'
+ },
+
+ /* Styles applied to the `icon` element if `color="secondary"`. */
+ iconColorSecondary: {
+ color: 'inherit'
+ },
+
+ /* Styles applied to the label `span` element`. */
+ label: {
+ display: 'flex',
+ alignItems: 'center',
+ paddingLeft: 12,
+ paddingRight: 12,
+ userSelect: 'none',
+ whiteSpace: 'nowrap',
+ cursor: 'inherit'
+ },
+
+ /* Styles applied to the `deleteIcon` element. */
+ deleteIcon: {
+ // Remove grey highlight
+ WebkitTapHighlightColor: 'transparent',
+ color: deleteIconColor,
+ cursor: 'pointer',
+ height: 'auto',
+ margin: '0 4px 0 -8px',
+ '&:hover': {
+ color: (0, _colorManipulator.fade)(deleteIconColor, 0.4)
+ }
+ },
+
+ /* Styles applied to the deleteIcon element if `color="primary"` and `variant="default"`. */
+ deleteIconColorPrimary: {
+ color: (0, _colorManipulator.fade)(theme.palette.primary.contrastText, 0.7),
+ '&:hover, &:active': {
+ color: theme.palette.primary.contrastText
+ }
+ },
+
+ /* Styles applied to the deleteIcon element if `color="secondary"` and `variant="default"`. */
+ deleteIconColorSecondary: {
+ color: (0, _colorManipulator.fade)(theme.palette.secondary.contrastText, 0.7),
+ '&:hover, &:active': {
+ color: theme.palette.secondary.contrastText
+ }
+ },
+
+ /* Styles applied to the deleteIcon element if `color="primary"` and `variant="outlined"`. */
+ deleteIconOutlinedColorPrimary: {
+ color: (0, _colorManipulator.fade)(theme.palette.primary.main, 0.7),
+ '&:hover, &:active': {
+ color: theme.palette.primary.main
+ }
+ },
+
+ /* Styles applied to the deleteIcon element if `color="secondary"` and `variant="outlined"`. */
+ deleteIconOutlinedColorSecondary: {
+ color: (0, _colorManipulator.fade)(theme.palette.secondary.main, 0.7),
+ '&:hover, &:active': {
+ color: theme.palette.secondary.main
+ }
+ }
+ };
+};
+/**
+ * Chips represent complex entities in small blocks, such as a contact.
+ */
+
+
+exports.styles = styles;
+
+var Chip =
+/*#__PURE__*/
+function (_React$Component) {
+ (0, _inherits2.default)(Chip, _React$Component);
+
+ function Chip() {
+ var _getPrototypeOf2;
+
+ var _this;
+
+ (0, _classCallCheck2.default)(this, Chip);
+
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
+ }
+
+ _this = (0, _possibleConstructorReturn2.default)(this, (_getPrototypeOf2 = (0, _getPrototypeOf3.default)(Chip)).call.apply(_getPrototypeOf2, [this].concat(args)));
+
+ _this.handleDeleteIconClick = function (event) {
+ // Stop the event from bubbling up to the `Chip`
+ event.stopPropagation();
+ var onDelete = _this.props.onDelete;
+
+ if (onDelete) {
+ onDelete(event);
+ }
+ };
+
+ _this.handleKeyDown = function (event) {
+ var onKeyDown = _this.props.onKeyDown;
+
+ if (onKeyDown) {
+ onKeyDown(event);
+ } // Ignore events from children of `Chip`.
+
+
+ if (event.currentTarget !== event.target) {
+ return;
+ }
+
+ var key = (0, _keycode.default)(event);
+
+ if (key === 'space' || key === 'enter' || key === 'backspace' || key === 'esc') {
+ event.preventDefault();
+ }
+ };
+
+ _this.handleKeyUp = function (event) {
+ var _this$props = _this.props,
+ onClick = _this$props.onClick,
+ onDelete = _this$props.onDelete,
+ onKeyUp = _this$props.onKeyUp;
+
+ if (onKeyUp) {
+ onKeyUp(event);
+ } // Ignore events from children of `Chip`.
+
+
+ if (event.currentTarget !== event.target) {
+ return;
+ }
+
+ var key = (0, _keycode.default)(event);
+
+ if (onClick && (key === 'space' || key === 'enter')) {
+ onClick(event);
+ } else if (onDelete && key === 'backspace') {
+ onDelete(event);
+ } else if (key === 'esc' && _this.chipRef) {
+ _this.chipRef.blur();
+ }
+ };
+
+ return _this;
+ }
+
+ (0, _createClass2.default)(Chip, [{
+ key: "render",
+ value: function render() {
+ var _classNames,
+ _this2 = this;
+
+ var _this$props2 = this.props,
+ avatarProp = _this$props2.avatar,
+ classes = _this$props2.classes,
+ classNameProp = _this$props2.className,
+ clickableProp = _this$props2.clickable,
+ color = _this$props2.color,
+ Component = _this$props2.component,
+ deleteIconProp = _this$props2.deleteIcon,
+ iconProp = _this$props2.icon,
+ label = _this$props2.label,
+ onClick = _this$props2.onClick,
+ onDelete = _this$props2.onDelete,
+ onKeyDown = _this$props2.onKeyDown,
+ onKeyUp = _this$props2.onKeyUp,
+ tabIndexProp = _this$props2.tabIndex,
+ variant = _this$props2.variant,
+ other = (0, _objectWithoutProperties2.default)(_this$props2, ["avatar", "classes", "className", "clickable", "color", "component", "deleteIcon", "icon", "label", "onClick", "onDelete", "onKeyDown", "onKeyUp", "tabIndex", "variant"]);
+ var clickable = clickableProp !== false && onClick ? true : clickableProp;
+ var className = (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes["color".concat((0, _helpers.capitalize)(color))], color !== 'default'), (0, _defineProperty2.default)(_classNames, classes.clickable, clickable), (0, _defineProperty2.default)(_classNames, classes["clickableColor".concat((0, _helpers.capitalize)(color))], clickable && color !== 'default'), (0, _defineProperty2.default)(_classNames, classes.deletable, onDelete), (0, _defineProperty2.default)(_classNames, classes["deletableColor".concat((0, _helpers.capitalize)(color))], onDelete && color !== 'default'), (0, _defineProperty2.default)(_classNames, classes.outlined, variant === 'outlined'), (0, _defineProperty2.default)(_classNames, classes.outlinedPrimary, variant === 'outlined' && color === 'primary'), (0, _defineProperty2.default)(_classNames, classes.outlinedSecondary, variant === 'outlined' && color === 'secondary'), _classNames), classNameProp);
+ var deleteIcon = null;
+
+ if (onDelete) {
+ var _customClasses;
+
+ var customClasses = (_customClasses = {}, (0, _defineProperty2.default)(_customClasses, classes["deleteIconColor".concat((0, _helpers.capitalize)(color))], color !== 'default' && variant !== 'outlined'), (0, _defineProperty2.default)(_customClasses, classes["deleteIconOutlinedColor".concat((0, _helpers.capitalize)(color))], color !== 'default' && variant === 'outlined'), _customClasses);
+ deleteIcon = deleteIconProp && _react.default.isValidElement(deleteIconProp) ? _react.default.cloneElement(deleteIconProp, {
+ className: (0, _classnames.default)(deleteIconProp.props.className, classes.deleteIcon, customClasses),
+ onClick: this.handleDeleteIconClick
+ }) : _react.default.createElement(_Cancel.default, {
+ className: (0, _classnames.default)(classes.deleteIcon, customClasses),
+ onClick: this.handleDeleteIconClick
+ });
+ }
+
+ var avatar = null;
+
+ if (avatarProp && _react.default.isValidElement(avatarProp)) {
+ avatar = _react.default.cloneElement(avatarProp, {
+ className: (0, _classnames.default)(classes.avatar, avatarProp.props.className, (0, _defineProperty2.default)({}, classes["avatarColor".concat((0, _helpers.capitalize)(color))], color !== 'default')),
+ childrenClassName: (0, _classnames.default)(classes.avatarChildren, avatarProp.props.childrenClassName)
+ });
+ }
+
+ var icon = null;
+
+ if (iconProp && _react.default.isValidElement(iconProp)) {
+ icon = _react.default.cloneElement(iconProp, {
+ className: (0, _classnames.default)(classes.icon, iconProp.props.className, (0, _defineProperty2.default)({}, classes["iconColor".concat((0, _helpers.capitalize)(color))], color !== 'default'))
+ });
+ }
+
+ var tabIndex = tabIndexProp;
+
+ if (!tabIndex) {
+ tabIndex = onClick || onDelete || clickable ? 0 : -1;
+ }
+
+ true ? (0, _warning.default)(!avatar || !icon, 'Material-UI: the Chip component can not handle the avatar ' + 'and the icon property at the same time. Pick one.') : undefined;
+ return _react.default.createElement(Component, (0, _extends2.default)({
+ role: "button",
+ className: className,
+ tabIndex: tabIndex,
+ onClick: onClick,
+ onKeyDown: this.handleKeyDown,
+ onKeyUp: this.handleKeyUp,
+ ref: function ref(_ref) {
+ _this2.chipRef = _ref;
+ }
+ }, other), avatar || icon, _react.default.createElement("span", {
+ className: classes.label
+ }, label), deleteIcon);
+ }
+ }]);
+ return Chip;
+}(_react.default.Component);
+
+ true ? Chip.propTypes = {
+ /**
+ * Avatar element.
+ */
+ avatar: _propTypes.default.element,
+
+ /**
+ * This property isn't supported.
+ * Use the `component` property if you need to change the children structure.
+ */
+ children: _unsupportedProp.default,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * If true, the chip will appear clickable, and will raise when pressed,
+ * even if the onClick property is not defined.
+ * If false, the chip will not be clickable, even if onClick property is defined.
+ * This can be used, for example,
+ * along with the component property to indicate an anchor Chip is clickable.
+ */
+ clickable: _propTypes.default.bool,
+
+ /**
+ * The color of the component. It supports those theme colors that make sense for this component.
+ */
+ color: _propTypes.default.oneOf(['default', 'primary', 'secondary']),
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a DOM element or a component.
+ */
+ component: _utils.componentPropType,
+
+ /**
+ * Override the default delete icon element. Shown only if `onDelete` is set.
+ */
+ deleteIcon: _propTypes.default.element,
+
+ /**
+ * Icon element.
+ */
+ icon: _propTypes.default.element,
+
+ /**
+ * The content of the label.
+ */
+ label: _propTypes.default.node,
+
+ /**
+ * @ignore
+ */
+ onClick: _propTypes.default.func,
+
+ /**
+ * Callback function fired when the delete icon is clicked.
+ * If set, the delete icon will be shown.
+ */
+ onDelete: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onKeyDown: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onKeyUp: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ tabIndex: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
+
+ /**
+ * The variant to use.
+ */
+ variant: _propTypes.default.oneOf(['default', 'outlined'])
+} : undefined;
+Chip.defaultProps = {
+ component: 'div',
+ color: 'default',
+ variant: 'default'
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiChip'
+})(Chip);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Chip/index.js":
+/*!************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Chip/index.js ***!
+ \************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Chip.default;
+ }
+});
+
+var _Chip = _interopRequireDefault(__webpack_require__(/*! ./Chip */ "../../node_modules/@material-ui/core/Chip/Chip.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/CircularProgress/CircularProgress.js":
+/*!***********************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/CircularProgress/CircularProgress.js ***!
+ \***********************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _helpers = __webpack_require__(/*! ../utils/helpers */ "../../node_modules/@material-ui/core/utils/helpers.js");
+
+var SIZE = 44;
+
+function getRelativeValue(value, min, max) {
+ var clampedValue = Math.min(Math.max(min, value), max);
+ return (clampedValue - min) / (max - min);
+}
+
+function easeOut(t) {
+ t = getRelativeValue(t, 0, 1); // https://gist.github.com/gre/1650294
+
+ t = (t -= 1) * t * t + 1;
+ return t;
+}
+
+function easeIn(t) {
+ return t * t;
+}
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ display: 'inline-block',
+ lineHeight: 1 // Keep the progress centered
+
+ },
+
+ /* Styles applied to the root element if `variant="static"`. */
+ static: {
+ transition: theme.transitions.create('transform')
+ },
+
+ /* Styles applied to the root element if `variant="indeterminate"`. */
+ indeterminate: {
+ animation: 'mui-progress-circular-rotate 1.4s linear infinite',
+ // Backward compatible logic between JSS v9 and v10.
+ // To remove with the release of Material-UI v4
+ animationName: '$mui-progress-circular-rotate'
+ },
+
+ /* Styles applied to the root element if `color="primary"`. */
+ colorPrimary: {
+ color: theme.palette.primary.main
+ },
+
+ /* Styles applied to the root element if `color="secondary"`. */
+ colorSecondary: {
+ color: theme.palette.secondary.main
+ },
+
+ /* Styles applied to the `svg` element. */
+ svg: {},
+
+ /* Styles applied to the `circle` svg path. */
+ circle: {
+ stroke: 'currentColor' // Use butt to follow the specification, by chance, it's already the default CSS value.
+ // strokeLinecap: 'butt',
+
+ },
+
+ /* Styles applied to the `circle` svg path if `variant="static"`. */
+ circleStatic: {
+ transition: theme.transitions.create('stroke-dashoffset')
+ },
+
+ /* Styles applied to the `circle` svg path if `variant="indeterminate"`. */
+ circleIndeterminate: {
+ animation: 'mui-progress-circular-dash 1.4s ease-in-out infinite',
+ // Backward compatible logic between JSS v9 and v10.
+ // To remove with the release of Material-UI v4
+ animationName: '$mui-progress-circular-dash',
+ // Some default value that looks fine waiting for the animation to kicks in.
+ strokeDasharray: '80px, 200px',
+ strokeDashoffset: '0px' // Add the unit to fix a Edge 16 and below bug.
+
+ },
+ '@keyframes mui-progress-circular-rotate': {
+ '100%': {
+ transform: 'rotate(360deg)'
+ }
+ },
+ '@keyframes mui-progress-circular-dash': {
+ '0%': {
+ strokeDasharray: '1px, 200px',
+ strokeDashoffset: '0px'
+ },
+ '50%': {
+ strokeDasharray: '100px, 200px',
+ strokeDashoffset: '-15px'
+ },
+ '100%': {
+ strokeDasharray: '100px, 200px',
+ strokeDashoffset: '-120px'
+ }
+ },
+
+ /* Styles applied to the `circle` svg path if `disableShrink={true}`. */
+ circleDisableShrink: {
+ animation: 'none'
+ }
+ };
+};
+/**
+ * ## ARIA
+ *
+ * If the progress bar is describing the loading progress of a particular region of a page,
+ * you should use `aria-describedby` to point to the progress bar, and set the `aria-busy`
+ * attribute to `true` on that region until it has finished loading.
+ */
+
+
+exports.styles = styles;
+
+function CircularProgress(props) {
+ var _classNames, _classNames2;
+
+ var classes = props.classes,
+ className = props.className,
+ color = props.color,
+ disableShrink = props.disableShrink,
+ size = props.size,
+ style = props.style,
+ thickness = props.thickness,
+ value = props.value,
+ variant = props.variant,
+ other = (0, _objectWithoutProperties2.default)(props, ["classes", "className", "color", "disableShrink", "size", "style", "thickness", "value", "variant"]);
+ var circleStyle = {};
+ var rootStyle = {};
+ var rootProps = {};
+
+ if (variant === 'determinate' || variant === 'static') {
+ var circumference = 2 * Math.PI * ((SIZE - thickness) / 2);
+ circleStyle.strokeDasharray = circumference.toFixed(3);
+ rootProps['aria-valuenow'] = Math.round(value);
+
+ if (variant === 'static') {
+ circleStyle.strokeDashoffset = "".concat(((100 - value) / 100 * circumference).toFixed(3), "px");
+ rootStyle.transform = 'rotate(-90deg)';
+ } else {
+ circleStyle.strokeDashoffset = "".concat((easeIn((100 - value) / 100) * circumference).toFixed(3), "px");
+ rootStyle.transform = "rotate(".concat((easeOut(value / 70) * 270).toFixed(3), "deg)");
+ }
+ }
+
+ return _react.default.createElement("div", (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes["color".concat((0, _helpers.capitalize)(color))], color !== 'inherit'), (0, _defineProperty2.default)(_classNames, classes.indeterminate, variant === 'indeterminate'), (0, _defineProperty2.default)(_classNames, classes.static, variant === 'static'), _classNames), className),
+ style: (0, _extends2.default)({
+ width: size,
+ height: size
+ }, rootStyle, style),
+ role: "progressbar"
+ }, rootProps, other), _react.default.createElement("svg", {
+ className: classes.svg,
+ viewBox: "".concat(SIZE / 2, " ").concat(SIZE / 2, " ").concat(SIZE, " ").concat(SIZE)
+ }, _react.default.createElement("circle", {
+ className: (0, _classnames.default)(classes.circle, (_classNames2 = {}, (0, _defineProperty2.default)(_classNames2, classes.circleIndeterminate, variant === 'indeterminate'), (0, _defineProperty2.default)(_classNames2, classes.circleStatic, variant === 'static'), (0, _defineProperty2.default)(_classNames2, classes.circleDisableShrink, disableShrink), _classNames2)),
+ style: circleStyle,
+ cx: SIZE,
+ cy: SIZE,
+ r: (SIZE - thickness) / 2,
+ fill: "none",
+ strokeWidth: thickness
+ })));
+}
+
+ true ? CircularProgress.propTypes = {
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The color of the component. It supports those theme colors that make sense for this component.
+ */
+ color: _propTypes.default.oneOf(['primary', 'secondary', 'inherit']),
+
+ /**
+ * If `true`, the shrink animation is disabled.
+ * This only works if variant is `indeterminate`.
+ */
+ disableShrink: (0, _utils.chainPropTypes)(_propTypes.default.bool, function (props) {
+ /* istanbul ignore if */
+ if (props.disableShrink && props.variant !== 'indeterminate') {
+ return new Error('Material-UI: you have provided the `disableShrink` property ' + 'with a variant other than `indeterminate`. This will have no effect.');
+ }
+
+ return null;
+ }),
+
+ /**
+ * The size of the circle.
+ */
+ size: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
+
+ /**
+ * @ignore
+ */
+ style: _propTypes.default.object,
+
+ /**
+ * The thickness of the circle.
+ */
+ thickness: _propTypes.default.number,
+
+ /**
+ * The value of the progress indicator for the determinate and static variants.
+ * Value between 0 and 100.
+ */
+ value: _propTypes.default.number,
+
+ /**
+ * The variant to use.
+ * Use indeterminate when there is no progress value.
+ */
+ variant: _propTypes.default.oneOf(['determinate', 'indeterminate', 'static'])
+} : undefined;
+CircularProgress.defaultProps = {
+ color: 'primary',
+ disableShrink: false,
+ size: 40,
+ thickness: 3.6,
+ value: 0,
+ variant: 'indeterminate'
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiCircularProgress',
+ flip: false
+})(CircularProgress);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/CircularProgress/index.js":
+/*!************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/CircularProgress/index.js ***!
+ \************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _CircularProgress.default;
+ }
+});
+
+var _CircularProgress = _interopRequireDefault(__webpack_require__(/*! ./CircularProgress */ "../../node_modules/@material-ui/core/CircularProgress/CircularProgress.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ClickAwayListener/ClickAwayListener.js":
+/*!*************************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ClickAwayListener/ClickAwayListener.js ***!
+ \*************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../../node_modules/@babel/runtime/helpers/classCallCheck.js"));
+
+var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../../node_modules/@babel/runtime/helpers/createClass.js"));
+
+var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
+
+var _getPrototypeOf3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
+
+var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../../node_modules/@babel/runtime/helpers/inherits.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "../../node_modules/react-dom/index.js"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _reactEventListener = _interopRequireDefault(__webpack_require__(/*! react-event-listener */ "../../node_modules/react-event-listener/dist/react-event-listener.cjs.js"));
+
+var _ownerDocument = _interopRequireDefault(__webpack_require__(/*! ../utils/ownerDocument */ "../../node_modules/@material-ui/core/utils/ownerDocument.js"));
+
+// @inheritedComponent EventListener
+
+/**
+ * Listen for click events that occur somewhere in the document, outside of the element itself.
+ * For instance, if you need to hide a menu when people click anywhere else on your page.
+ */
+var ClickAwayListener =
+/*#__PURE__*/
+function (_React$Component) {
+ (0, _inherits2.default)(ClickAwayListener, _React$Component);
+
+ function ClickAwayListener() {
+ var _getPrototypeOf2;
+
+ var _this;
+
+ (0, _classCallCheck2.default)(this, ClickAwayListener);
+
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
+ }
+
+ _this = (0, _possibleConstructorReturn2.default)(this, (_getPrototypeOf2 = (0, _getPrototypeOf3.default)(ClickAwayListener)).call.apply(_getPrototypeOf2, [this].concat(args)));
+ _this.mounted = false;
+ _this.moved = false;
+
+ _this.handleClickAway = function (event) {
+ // Ignore events that have been `event.preventDefault()` marked.
+ if (event.defaultPrevented) {
+ return;
+ } // IE 11 support, which trigger the handleClickAway even after the unbind
+
+
+ if (!_this.mounted) {
+ return;
+ } // Do not act if user performed touchmove
+
+
+ if (_this.moved) {
+ _this.moved = false;
+ return;
+ } // The child might render null.
+
+
+ if (!_this.node) {
+ return;
+ }
+
+ var doc = (0, _ownerDocument.default)(_this.node);
+
+ if (doc.documentElement && doc.documentElement.contains(event.target) && !_this.node.contains(event.target)) {
+ _this.props.onClickAway(event);
+ }
+ };
+
+ _this.handleTouchMove = function () {
+ _this.moved = true;
+ };
+
+ return _this;
+ }
+
+ (0, _createClass2.default)(ClickAwayListener, [{
+ key: "componentDidMount",
+ value: function componentDidMount() {
+ // Finds the first child when a component returns a fragment.
+ // https://github.com/facebook/react/blob/036ae3c6e2f056adffc31dfb78d1b6f0c63272f0/packages/react-dom/src/__tests__/ReactDOMFiber-test.js#L105
+ this.node = _reactDom.default.findDOMNode(this);
+ this.mounted = true;
+ }
+ }, {
+ key: "componentWillUnmount",
+ value: function componentWillUnmount() {
+ this.mounted = false;
+ }
+ }, {
+ key: "render",
+ value: function render() {
+ var _this$props = this.props,
+ children = _this$props.children,
+ mouseEvent = _this$props.mouseEvent,
+ touchEvent = _this$props.touchEvent,
+ onClickAway = _this$props.onClickAway,
+ other = (0, _objectWithoutProperties2.default)(_this$props, ["children", "mouseEvent", "touchEvent", "onClickAway"]);
+ var listenerProps = {};
+
+ if (mouseEvent !== false) {
+ listenerProps[mouseEvent] = this.handleClickAway;
+ }
+
+ if (touchEvent !== false) {
+ listenerProps[touchEvent] = this.handleClickAway;
+ listenerProps.onTouchMove = this.handleTouchMove;
+ }
+
+ return _react.default.createElement(_react.default.Fragment, null, children, _react.default.createElement(_reactEventListener.default, (0, _extends2.default)({
+ target: "document"
+ }, listenerProps, other)));
+ }
+ }]);
+ return ClickAwayListener;
+}(_react.default.Component);
+
+ true ? ClickAwayListener.propTypes = {
+ /**
+ * The wrapped element.
+ */
+ children: _propTypes.default.element.isRequired,
+
+ /**
+ * The mouse event to listen to. You can disable the listener by providing `false`.
+ */
+ mouseEvent: _propTypes.default.oneOf(['onClick', 'onMouseDown', 'onMouseUp', false]),
+
+ /**
+ * Callback fired when a "click away" event is detected.
+ */
+ onClickAway: _propTypes.default.func.isRequired,
+
+ /**
+ * The touch event to listen to. You can disable the listener by providing `false`.
+ */
+ touchEvent: _propTypes.default.oneOf(['onTouchStart', 'onTouchEnd', false])
+} : undefined;
+ClickAwayListener.defaultProps = {
+ mouseEvent: 'onMouseUp',
+ touchEvent: 'onTouchEnd'
+};
+var _default = ClickAwayListener;
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ClickAwayListener/index.js":
+/*!*************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ClickAwayListener/index.js ***!
+ \*************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _ClickAwayListener.default;
+ }
+});
+
+var _ClickAwayListener = _interopRequireDefault(__webpack_require__(/*! ./ClickAwayListener */ "../../node_modules/@material-ui/core/ClickAwayListener/ClickAwayListener.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Collapse/Collapse.js":
+/*!*******************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Collapse/Collapse.js ***!
+ \*******************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../../node_modules/@babel/runtime/helpers/classCallCheck.js"));
+
+var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../../node_modules/@babel/runtime/helpers/createClass.js"));
+
+var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
+
+var _getPrototypeOf3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
+
+var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../../node_modules/@babel/runtime/helpers/inherits.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _Transition = _interopRequireDefault(__webpack_require__(/*! react-transition-group/Transition */ "../../node_modules/react-transition-group/Transition.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _transitions = __webpack_require__(/*! ../styles/transitions */ "../../node_modules/@material-ui/core/styles/transitions.js");
+
+var _utils2 = __webpack_require__(/*! ../transitions/utils */ "../../node_modules/@material-ui/core/transitions/utils.js");
+
+// @inheritedComponent Transition
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the container element. */
+ container: {
+ height: 0,
+ overflow: 'hidden',
+ transition: theme.transitions.create('height')
+ },
+
+ /* Styles applied to the container element when the transition has entered. */
+ entered: {
+ height: 'auto',
+ overflow: 'visible'
+ },
+
+ /* Styles applied to the outer wrapper element. */
+ wrapper: {
+ // Hack to get children with a negative margin to not falsify the height computation.
+ display: 'flex'
+ },
+
+ /* Styles applied to the inner wrapper element. */
+ wrapperInner: {
+ width: '100%'
+ }
+ };
+};
+/**
+ * The Collapse transition is used by the
+ * [Vertical Stepper](/demos/steppers/#vertical-stepper) StepContent component.
+ * It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally.
+ */
+
+
+exports.styles = styles;
+
+var Collapse =
+/*#__PURE__*/
+function (_React$Component) {
+ (0, _inherits2.default)(Collapse, _React$Component);
+
+ function Collapse() {
+ var _getPrototypeOf2;
+
+ var _this;
+
+ (0, _classCallCheck2.default)(this, Collapse);
+
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
+ }
+
+ _this = (0, _possibleConstructorReturn2.default)(this, (_getPrototypeOf2 = (0, _getPrototypeOf3.default)(Collapse)).call.apply(_getPrototypeOf2, [this].concat(args)));
+
+ _this.handleEnter = function (node) {
+ node.style.height = _this.props.collapsedHeight;
+
+ if (_this.props.onEnter) {
+ _this.props.onEnter(node);
+ }
+ };
+
+ _this.handleEntering = function (node) {
+ var _this$props = _this.props,
+ timeout = _this$props.timeout,
+ theme = _this$props.theme;
+ var wrapperHeight = _this.wrapperRef ? _this.wrapperRef.clientHeight : 0;
+
+ var _getTransitionProps = (0, _utils2.getTransitionProps)(_this.props, {
+ mode: 'enter'
+ }),
+ transitionDuration = _getTransitionProps.duration;
+
+ if (timeout === 'auto') {
+ var duration2 = theme.transitions.getAutoHeightDuration(wrapperHeight);
+ node.style.transitionDuration = "".concat(duration2, "ms");
+ _this.autoTransitionDuration = duration2;
+ } else {
+ node.style.transitionDuration = typeof transitionDuration === 'string' ? transitionDuration : "".concat(transitionDuration, "ms");
+ }
+
+ node.style.height = "".concat(wrapperHeight, "px");
+
+ if (_this.props.onEntering) {
+ _this.props.onEntering(node);
+ }
+ };
+
+ _this.handleEntered = function (node) {
+ node.style.height = 'auto';
+
+ if (_this.props.onEntered) {
+ _this.props.onEntered(node);
+ }
+ };
+
+ _this.handleExit = function (node) {
+ var wrapperHeight = _this.wrapperRef ? _this.wrapperRef.clientHeight : 0;
+ node.style.height = "".concat(wrapperHeight, "px");
+
+ if (_this.props.onExit) {
+ _this.props.onExit(node);
+ }
+ };
+
+ _this.handleExiting = function (node) {
+ var _this$props2 = _this.props,
+ timeout = _this$props2.timeout,
+ theme = _this$props2.theme;
+ var wrapperHeight = _this.wrapperRef ? _this.wrapperRef.clientHeight : 0;
+
+ var _getTransitionProps2 = (0, _utils2.getTransitionProps)(_this.props, {
+ mode: 'exit'
+ }),
+ transitionDuration = _getTransitionProps2.duration;
+
+ if (timeout === 'auto') {
+ var duration2 = theme.transitions.getAutoHeightDuration(wrapperHeight);
+ node.style.transitionDuration = "".concat(duration2, "ms");
+ _this.autoTransitionDuration = duration2;
+ } else {
+ node.style.transitionDuration = typeof transitionDuration === 'string' ? transitionDuration : "".concat(transitionDuration, "ms");
+ }
+
+ node.style.height = _this.props.collapsedHeight;
+
+ if (_this.props.onExiting) {
+ _this.props.onExiting(node);
+ }
+ };
+
+ _this.addEndListener = function (_, next) {
+ if (_this.props.timeout === 'auto') {
+ _this.timer = setTimeout(next, _this.autoTransitionDuration || 0);
+ }
+ };
+
+ return _this;
+ }
+
+ (0, _createClass2.default)(Collapse, [{
+ key: "componentWillUnmount",
+ value: function componentWillUnmount() {
+ clearTimeout(this.timer);
+ }
+ }, {
+ key: "render",
+ value: function render() {
+ var _this2 = this;
+
+ var _this$props3 = this.props,
+ children = _this$props3.children,
+ classes = _this$props3.classes,
+ className = _this$props3.className,
+ collapsedHeight = _this$props3.collapsedHeight,
+ Component = _this$props3.component,
+ onEnter = _this$props3.onEnter,
+ onEntered = _this$props3.onEntered,
+ onEntering = _this$props3.onEntering,
+ onExit = _this$props3.onExit,
+ onExiting = _this$props3.onExiting,
+ style = _this$props3.style,
+ theme = _this$props3.theme,
+ timeout = _this$props3.timeout,
+ other = (0, _objectWithoutProperties2.default)(_this$props3, ["children", "classes", "className", "collapsedHeight", "component", "onEnter", "onEntered", "onEntering", "onExit", "onExiting", "style", "theme", "timeout"]);
+ return _react.default.createElement(_Transition.default, (0, _extends2.default)({
+ onEnter: this.handleEnter,
+ onEntered: this.handleEntered,
+ onEntering: this.handleEntering,
+ onExit: this.handleExit,
+ onExiting: this.handleExiting,
+ addEndListener: this.addEndListener,
+ timeout: timeout === 'auto' ? null : timeout
+ }, other), function (state, childProps) {
+ return _react.default.createElement(Component, (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.container, (0, _defineProperty2.default)({}, classes.entered, state === 'entered'), className),
+ style: (0, _extends2.default)({}, style, {
+ minHeight: collapsedHeight
+ })
+ }, childProps), _react.default.createElement("div", {
+ className: classes.wrapper,
+ ref: function ref(_ref) {
+ _this2.wrapperRef = _ref;
+ }
+ }, _react.default.createElement("div", {
+ className: classes.wrapperInner
+ }, children)));
+ });
+ }
+ }]);
+ return Collapse;
+}(_react.default.Component);
+
+ true ? Collapse.propTypes = {
+ /**
+ * The content node to be collapsed.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The height of the container when collapsed.
+ */
+ collapsedHeight: _propTypes.default.string,
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a DOM element or a component.
+ */
+ component: _utils.componentPropType,
+
+ /**
+ * If `true`, the component will transition in.
+ */
+ in: _propTypes.default.bool,
+
+ /**
+ * @ignore
+ */
+ onEnter: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onEntered: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onEntering: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onExit: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onExiting: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ style: _propTypes.default.object,
+
+ /**
+ * @ignore
+ */
+ theme: _propTypes.default.object.isRequired,
+
+ /**
+ * The duration for the transition, in milliseconds.
+ * You may specify a single timeout for all transitions, or individually with an object.
+ *
+ * Set to 'auto' to automatically calculate transition time based on height.
+ */
+ timeout: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.shape({
+ enter: _propTypes.default.number,
+ exit: _propTypes.default.number
+ }), _propTypes.default.oneOf(['auto'])])
+} : undefined;
+Collapse.defaultProps = {
+ collapsedHeight: '0px',
+ component: 'div',
+ timeout: _transitions.duration.standard
+};
+Collapse.muiSupportAuto = true;
+
+var _default = (0, _withStyles.default)(styles, {
+ withTheme: true,
+ name: 'MuiCollapse'
+})(Collapse);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Collapse/index.js":
+/*!****************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Collapse/index.js ***!
+ \****************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Collapse.default;
+ }
+});
+
+var _Collapse = _interopRequireDefault(__webpack_require__(/*! ./Collapse */ "../../node_modules/@material-ui/core/Collapse/Collapse.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/CssBaseline/CssBaseline.js":
+/*!*************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/CssBaseline/CssBaseline.js ***!
+ \*************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = void 0;
+
+var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../../node_modules/@babel/runtime/helpers/classCallCheck.js"));
+
+var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../../node_modules/@babel/runtime/helpers/createClass.js"));
+
+var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
+
+var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
+
+var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../../node_modules/@babel/runtime/helpers/inherits.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _styles = __webpack_require__(/*! ../styles */ "../../node_modules/@material-ui/core/styles/index.js");
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+/* eslint-disable react/no-unused-prop-types */
+var styles = function styles(theme) {
+ return {
+ '@global': {
+ html: {
+ WebkitFontSmoothing: 'antialiased',
+ // Antialiasing.
+ MozOsxFontSmoothing: 'grayscale',
+ // Antialiasing.
+ // Change from `box-sizing: content-box` so that `width`
+ // is not affected by `padding` or `border`.
+ boxSizing: 'border-box'
+ },
+ '*, *::before, *::after': {
+ boxSizing: 'inherit'
+ },
+ body: {
+ margin: 0,
+ // Remove the margin in all browsers.
+ backgroundColor: theme.palette.background.default,
+ '@media print': {
+ // Save printer ink.
+ backgroundColor: theme.palette.common.white
+ }
+ }
+ }
+ };
+};
+/**
+ * Kickstart an elegant, consistent, and simple baseline to build upon.
+ */
+
+
+var CssBaseline =
+/*#__PURE__*/
+function (_React$Component) {
+ (0, _inherits2.default)(CssBaseline, _React$Component);
+
+ function CssBaseline() {
+ (0, _classCallCheck2.default)(this, CssBaseline);
+ return (0, _possibleConstructorReturn2.default)(this, (0, _getPrototypeOf2.default)(CssBaseline).apply(this, arguments));
+ }
+
+ (0, _createClass2.default)(CssBaseline, [{
+ key: "render",
+ value: function render() {
+ return this.props.children;
+ }
+ }]);
+ return CssBaseline;
+}(_react.default.Component);
+
+ true ? CssBaseline.propTypes = {
+ /**
+ * You can wrap a node.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * @ignore
+ */
+ classes: _propTypes.default.object.isRequired
+} : undefined;
+
+if (true) {
+ true ? CssBaseline.propTypes = (0, _utils.exactProp)(CssBaseline.propTypes) : undefined;
+}
+
+CssBaseline.defaultProps = {
+ children: null
+};
+
+var _default = (0, _styles.withStyles)(styles, {
+ name: 'MuiCssBaseline'
+})(CssBaseline);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/CssBaseline/index.js":
+/*!*******************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/CssBaseline/index.js ***!
+ \*******************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _CssBaseline.default;
+ }
+});
+
+var _CssBaseline = _interopRequireDefault(__webpack_require__(/*! ./CssBaseline */ "../../node_modules/@material-ui/core/CssBaseline/CssBaseline.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Dialog/Dialog.js":
+/*!***************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Dialog/Dialog.js ***!
+ \***************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../../node_modules/@babel/runtime/helpers/classCallCheck.js"));
+
+var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../../node_modules/@babel/runtime/helpers/createClass.js"));
+
+var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
+
+var _getPrototypeOf3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
+
+var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../../node_modules/@babel/runtime/helpers/inherits.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _helpers = __webpack_require__(/*! ../utils/helpers */ "../../node_modules/@material-ui/core/utils/helpers.js");
+
+var _Modal = _interopRequireDefault(__webpack_require__(/*! ../Modal */ "../../node_modules/@material-ui/core/Modal/index.js"));
+
+var _Fade = _interopRequireDefault(__webpack_require__(/*! ../Fade */ "../../node_modules/@material-ui/core/Fade/index.js"));
+
+var _transitions = __webpack_require__(/*! ../styles/transitions */ "../../node_modules/@material-ui/core/styles/transitions.js");
+
+var _Paper = _interopRequireDefault(__webpack_require__(/*! ../Paper */ "../../node_modules/@material-ui/core/Paper/index.js"));
+
+/* eslint-disable jsx-a11y/click-events-have-key-events */
+
+/* eslint-disable jsx-a11y/no-noninteractive-element-interactions */
+// @inheritedComponent Modal
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {},
+
+ /* Styles applied to the root element if `scroll="paper"`. */
+ scrollPaper: {
+ display: 'flex',
+ justifyContent: 'center',
+ alignItems: 'center'
+ },
+
+ /* Styles applied to the root element if `scroll="body"`. */
+ scrollBody: {
+ overflowY: 'auto',
+ overflowX: 'hidden'
+ },
+
+ /* Styles applied to the container element. */
+ container: {
+ height: '100%',
+ // We disable the focus ring for mouse, touch and keyboard users.
+ outline: 'none'
+ },
+
+ /* Styles applied to the `Paper` component. */
+ paper: {
+ display: 'flex',
+ flexDirection: 'column',
+ margin: 48,
+ position: 'relative',
+ overflowY: 'auto' // Fix IE 11 issue, to remove at some point.
+
+ },
+
+ /* Styles applied to the `Paper` component if `scroll="paper"`. */
+ paperScrollPaper: {
+ flex: '0 1 auto',
+ maxHeight: 'calc(100% - 96px)'
+ },
+
+ /* Styles applied to the `Paper` component if `scroll="body"`. */
+ paperScrollBody: {
+ margin: '48px auto'
+ },
+
+ /* Styles applied to the `Paper` component if `maxWidth="xs"`. */
+ paperWidthXs: {
+ maxWidth: Math.max(theme.breakpoints.values.xs, 360),
+ '&$paperScrollBody': (0, _defineProperty2.default)({}, theme.breakpoints.down(Math.max(theme.breakpoints.values.xs, 360) + 48 * 2), {
+ margin: 48
+ })
+ },
+
+ /* Styles applied to the `Paper` component if `maxWidth="sm"`. */
+ paperWidthSm: {
+ maxWidth: theme.breakpoints.values.sm,
+ '&$paperScrollBody': (0, _defineProperty2.default)({}, theme.breakpoints.down(theme.breakpoints.values.sm + 48 * 2), {
+ margin: 48
+ })
+ },
+
+ /* Styles applied to the `Paper` component if `maxWidth="md"`. */
+ paperWidthMd: {
+ maxWidth: theme.breakpoints.values.md,
+ '&$paperScrollBody': (0, _defineProperty2.default)({}, theme.breakpoints.down(theme.breakpoints.values.md + 48 * 2), {
+ margin: 48
+ })
+ },
+
+ /* Styles applied to the `Paper` component if `maxWidth="lg"`. */
+ paperWidthLg: {
+ maxWidth: theme.breakpoints.values.lg,
+ '&$paperScrollBody': (0, _defineProperty2.default)({}, theme.breakpoints.down(theme.breakpoints.values.lg + 48 * 2), {
+ margin: 48
+ })
+ },
+
+ /* Styles applied to the `Paper` component if `maxWidth="xl"`. */
+ paperWidthXl: {
+ maxWidth: theme.breakpoints.values.xl,
+ '&$paperScrollBody': (0, _defineProperty2.default)({}, theme.breakpoints.down(theme.breakpoints.values.xl + 48 * 2), {
+ margin: 48
+ })
+ },
+
+ /* Styles applied to the `Paper` component if `fullWidth={true}`. */
+ paperFullWidth: {
+ width: '100%'
+ },
+
+ /* Styles applied to the `Paper` component if `fullScreen={true}`. */
+ paperFullScreen: {
+ margin: 0,
+ width: '100%',
+ maxWidth: '100%',
+ height: '100%',
+ maxHeight: 'none',
+ borderRadius: 0,
+ '&$paperScrollBody': {
+ margin: 0
+ }
+ }
+ };
+};
+/**
+ * Dialogs are overlaid modal paper based components with a backdrop.
+ */
+
+
+exports.styles = styles;
+
+var Dialog =
+/*#__PURE__*/
+function (_React$Component) {
+ (0, _inherits2.default)(Dialog, _React$Component);
+
+ function Dialog() {
+ var _getPrototypeOf2;
+
+ var _this;
+
+ (0, _classCallCheck2.default)(this, Dialog);
+
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
+ }
+
+ _this = (0, _possibleConstructorReturn2.default)(this, (_getPrototypeOf2 = (0, _getPrototypeOf3.default)(Dialog)).call.apply(_getPrototypeOf2, [this].concat(args)));
+
+ _this.handleBackdropClick = function (event) {
+ if (event.target !== event.currentTarget) {
+ return;
+ }
+
+ if (_this.props.onBackdropClick) {
+ _this.props.onBackdropClick(event);
+ }
+
+ if (!_this.props.disableBackdropClick && _this.props.onClose) {
+ _this.props.onClose(event, 'backdropClick');
+ }
+ };
+
+ return _this;
+ }
+
+ (0, _createClass2.default)(Dialog, [{
+ key: "render",
+ value: function render() {
+ var _classNames;
+
+ var _this$props = this.props,
+ BackdropProps = _this$props.BackdropProps,
+ children = _this$props.children,
+ classes = _this$props.classes,
+ className = _this$props.className,
+ disableBackdropClick = _this$props.disableBackdropClick,
+ disableEscapeKeyDown = _this$props.disableEscapeKeyDown,
+ fullScreen = _this$props.fullScreen,
+ fullWidth = _this$props.fullWidth,
+ maxWidth = _this$props.maxWidth,
+ onBackdropClick = _this$props.onBackdropClick,
+ onClose = _this$props.onClose,
+ onEnter = _this$props.onEnter,
+ onEntered = _this$props.onEntered,
+ onEntering = _this$props.onEntering,
+ onEscapeKeyDown = _this$props.onEscapeKeyDown,
+ onExit = _this$props.onExit,
+ onExited = _this$props.onExited,
+ onExiting = _this$props.onExiting,
+ open = _this$props.open,
+ PaperComponent = _this$props.PaperComponent,
+ _this$props$PaperProp = _this$props.PaperProps,
+ PaperProps = _this$props$PaperProp === void 0 ? {} : _this$props$PaperProp,
+ scroll = _this$props.scroll,
+ TransitionComponent = _this$props.TransitionComponent,
+ transitionDuration = _this$props.transitionDuration,
+ TransitionProps = _this$props.TransitionProps,
+ other = (0, _objectWithoutProperties2.default)(_this$props, ["BackdropProps", "children", "classes", "className", "disableBackdropClick", "disableEscapeKeyDown", "fullScreen", "fullWidth", "maxWidth", "onBackdropClick", "onClose", "onEnter", "onEntered", "onEntering", "onEscapeKeyDown", "onExit", "onExited", "onExiting", "open", "PaperComponent", "PaperProps", "scroll", "TransitionComponent", "transitionDuration", "TransitionProps"]);
+ return _react.default.createElement(_Modal.default, (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, className),
+ BackdropProps: (0, _extends2.default)({
+ transitionDuration: transitionDuration
+ }, BackdropProps),
+ disableBackdropClick: disableBackdropClick,
+ disableEscapeKeyDown: disableEscapeKeyDown,
+ onBackdropClick: onBackdropClick,
+ onEscapeKeyDown: onEscapeKeyDown,
+ onClose: onClose,
+ open: open,
+ role: "dialog"
+ }, other), _react.default.createElement(TransitionComponent, (0, _extends2.default)({
+ appear: true,
+ in: open,
+ timeout: transitionDuration,
+ onEnter: onEnter,
+ onEntering: onEntering,
+ onEntered: onEntered,
+ onExit: onExit,
+ onExiting: onExiting,
+ onExited: onExited
+ }, TransitionProps), _react.default.createElement("div", {
+ className: (0, _classnames.default)(classes.container, classes["scroll".concat((0, _helpers.capitalize)(scroll))]),
+ onClick: this.handleBackdropClick,
+ role: "document"
+ }, _react.default.createElement(PaperComponent, (0, _extends2.default)({
+ elevation: 24
+ }, PaperProps, {
+ className: (0, _classnames.default)(classes.paper, classes["paperScroll".concat((0, _helpers.capitalize)(scroll))], (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes["paperWidth".concat(maxWidth ? (0, _helpers.capitalize)(maxWidth) : '')], maxWidth), (0, _defineProperty2.default)(_classNames, classes.paperFullScreen, fullScreen), (0, _defineProperty2.default)(_classNames, classes.paperFullWidth, fullWidth), _classNames), PaperProps.className)
+ }), children))));
+ }
+ }]);
+ return Dialog;
+}(_react.default.Component);
+
+ true ? Dialog.propTypes = {
+ /**
+ * @ignore
+ */
+ BackdropProps: _propTypes.default.object,
+
+ /**
+ * Dialog children, usually the included sub-components.
+ */
+ children: _propTypes.default.node.isRequired,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * If `true`, clicking the backdrop will not fire the `onClose` callback.
+ */
+ disableBackdropClick: _propTypes.default.bool,
+
+ /**
+ * If `true`, hitting escape will not fire the `onClose` callback.
+ */
+ disableEscapeKeyDown: _propTypes.default.bool,
+
+ /**
+ * If `true`, the dialog will be full-screen
+ */
+ fullScreen: _propTypes.default.bool,
+
+ /**
+ * If `true`, the dialog stretches to `maxWidth`.
+ */
+ fullWidth: _propTypes.default.bool,
+
+ /**
+ * Determine the max width of the dialog.
+ * The dialog width grows with the size of the screen, this property is useful
+ * on the desktop where you might need some coherent different width size across your
+ * application. Set to `false` to disable `maxWidth`.
+ */
+ maxWidth: _propTypes.default.oneOf(['xs', 'sm', 'md', 'lg', 'xl', false]),
+
+ /**
+ * Callback fired when the backdrop is clicked.
+ */
+ onBackdropClick: _propTypes.default.func,
+
+ /**
+ * Callback fired when the component requests to be closed.
+ *
+ * @param {object} event The event source of the callback
+ * @param {string} reason Can be:`"escapeKeyDown"`, `"backdropClick"`
+ */
+ onClose: _propTypes.default.func,
+
+ /**
+ * Callback fired before the dialog enters.
+ */
+ onEnter: _propTypes.default.func,
+
+ /**
+ * Callback fired when the dialog has entered.
+ */
+ onEntered: _propTypes.default.func,
+
+ /**
+ * Callback fired when the dialog is entering.
+ */
+ onEntering: _propTypes.default.func,
+
+ /**
+ * Callback fired when the escape key is pressed,
+ * `disableKeyboard` is false and the modal is in focus.
+ */
+ onEscapeKeyDown: _propTypes.default.func,
+
+ /**
+ * Callback fired before the dialog exits.
+ */
+ onExit: _propTypes.default.func,
+
+ /**
+ * Callback fired when the dialog has exited.
+ */
+ onExited: _propTypes.default.func,
+
+ /**
+ * Callback fired when the dialog is exiting.
+ */
+ onExiting: _propTypes.default.func,
+
+ /**
+ * If `true`, the Dialog is open.
+ */
+ open: _propTypes.default.bool.isRequired,
+
+ /**
+ * The component used to render the body of the dialog.
+ */
+ PaperComponent: _utils.componentPropType,
+
+ /**
+ * Properties applied to the [`Paper`](/api/paper/) element.
+ */
+ PaperProps: _propTypes.default.object,
+
+ /**
+ * Determine the container for scrolling the dialog.
+ */
+ scroll: _propTypes.default.oneOf(['body', 'paper']),
+
+ /**
+ * The component used for the transition.
+ */
+ TransitionComponent: _utils.componentPropType,
+
+ /**
+ * The duration for the transition, in milliseconds.
+ * You may specify a single timeout for all transitions, or individually with an object.
+ */
+ transitionDuration: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.shape({
+ enter: _propTypes.default.number,
+ exit: _propTypes.default.number
+ })]),
+
+ /**
+ * Properties applied to the `Transition` element.
+ */
+ TransitionProps: _propTypes.default.object
+} : undefined;
+Dialog.defaultProps = {
+ disableBackdropClick: false,
+ disableEscapeKeyDown: false,
+ fullScreen: false,
+ fullWidth: false,
+ maxWidth: 'sm',
+ PaperComponent: _Paper.default,
+ scroll: 'paper',
+ TransitionComponent: _Fade.default,
+ transitionDuration: {
+ enter: _transitions.duration.enteringScreen,
+ exit: _transitions.duration.leavingScreen
+ }
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiDialog'
+})(Dialog);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Dialog/index.js":
+/*!**************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Dialog/index.js ***!
+ \**************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Dialog.default;
+ }
+});
+
+var _Dialog = _interopRequireDefault(__webpack_require__(/*! ./Dialog */ "../../node_modules/@material-ui/core/Dialog/Dialog.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/DialogActions/DialogActions.js":
+/*!*****************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/DialogActions/DialogActions.js ***!
+ \*****************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _reactHelpers = __webpack_require__(/*! ../utils/reactHelpers */ "../../node_modules/@material-ui/core/utils/reactHelpers.js");
+
+__webpack_require__(/*! ../Button */ "../../node_modules/@material-ui/core/Button/index.js");
+
+// So we don't have any override priority issue.
+var styles = {
+ /* Styles applied to the root element. */
+ root: {
+ display: 'flex',
+ alignItems: 'center',
+ justifyContent: 'flex-end',
+ flex: '0 0 auto',
+ margin: '8px 4px'
+ },
+
+ /* Styles applied to the children. */
+ action: {
+ margin: '0 4px'
+ }
+};
+exports.styles = styles;
+
+function DialogActions(props) {
+ var disableActionSpacing = props.disableActionSpacing,
+ children = props.children,
+ classes = props.classes,
+ className = props.className,
+ other = (0, _objectWithoutProperties2.default)(props, ["disableActionSpacing", "children", "classes", "className"]);
+ return _react.default.createElement("div", (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, className)
+ }, other), disableActionSpacing ? children : (0, _reactHelpers.cloneChildrenWithClassName)(children, classes.action));
+}
+
+ true ? DialogActions.propTypes = {
+ /**
+ * The content of the component.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * If `true`, the dialog actions do not have additional margin.
+ */
+ disableActionSpacing: _propTypes.default.bool
+} : undefined;
+DialogActions.defaultProps = {
+ disableActionSpacing: false
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiDialogActions'
+})(DialogActions);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/DialogActions/index.js":
+/*!*********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/DialogActions/index.js ***!
+ \*********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _DialogActions.default;
+ }
+});
+
+var _DialogActions = _interopRequireDefault(__webpack_require__(/*! ./DialogActions */ "../../node_modules/@material-ui/core/DialogActions/DialogActions.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/DialogContent/DialogContent.js":
+/*!*****************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/DialogContent/DialogContent.js ***!
+ \*****************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var styles = {
+ /* Styles applied to the root element. */
+ root: {
+ flex: '1 1 auto',
+ overflowY: 'auto',
+ WebkitOverflowScrolling: 'touch',
+ // Add iOS momentum scrolling.
+ padding: '0 24px 24px',
+ '&:first-child': {
+ paddingTop: 24
+ }
+ }
+};
+exports.styles = styles;
+
+function DialogContent(props) {
+ var classes = props.classes,
+ children = props.children,
+ className = props.className,
+ other = (0, _objectWithoutProperties2.default)(props, ["classes", "children", "className"]);
+ return _react.default.createElement("div", (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, className)
+ }, other), children);
+}
+
+ true ? DialogContent.propTypes = {
+ /**
+ * The content of the component.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string
+} : undefined;
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiDialogContent'
+})(DialogContent);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/DialogContent/index.js":
+/*!*********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/DialogContent/index.js ***!
+ \*********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _DialogContent.default;
+ }
+});
+
+var _DialogContent = _interopRequireDefault(__webpack_require__(/*! ./DialogContent */ "../../node_modules/@material-ui/core/DialogContent/DialogContent.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/DialogContentText/DialogContentText.js":
+/*!*************************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/DialogContentText/DialogContentText.js ***!
+ \*************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _Typography = _interopRequireDefault(__webpack_require__(/*! ../Typography */ "../../node_modules/@material-ui/core/Typography/index.js"));
+
+// @inheritedComponent Typography
+var styles = {
+ /* Styles applied to the root element. */
+ root: {
+ // Should use variant="body1" in v4.0.0
+ lineHeight: 1.5
+ }
+};
+exports.styles = styles;
+
+function DialogContentText(props) {
+ return _react.default.createElement(_Typography.default, (0, _extends2.default)({
+ component: "p",
+ internalDeprecatedVariant: true,
+ variant: "subheading",
+ color: "textSecondary"
+ }, props));
+}
+
+ true ? DialogContentText.propTypes = {
+ /**
+ * The content of the component.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired
+} : undefined;
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiDialogContentText'
+})(DialogContentText);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/DialogContentText/index.js":
+/*!*************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/DialogContentText/index.js ***!
+ \*************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _DialogContentText.default;
+ }
+});
+
+var _DialogContentText = _interopRequireDefault(__webpack_require__(/*! ./DialogContentText */ "../../node_modules/@material-ui/core/DialogContentText/DialogContentText.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/DialogTitle/DialogTitle.js":
+/*!*************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/DialogTitle/DialogTitle.js ***!
+ \*************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _Typography = _interopRequireDefault(__webpack_require__(/*! ../Typography */ "../../node_modules/@material-ui/core/Typography/index.js"));
+
+var styles = {
+ /* Styles applied to the root element. */
+ root: {
+ margin: 0,
+ padding: '24px 24px 20px',
+ flex: '0 0 auto'
+ }
+};
+exports.styles = styles;
+
+function DialogTitle(props) {
+ var children = props.children,
+ classes = props.classes,
+ className = props.className,
+ disableTypography = props.disableTypography,
+ other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "disableTypography"]);
+ return _react.default.createElement("div", (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, className)
+ }, other), disableTypography ? children : _react.default.createElement(_Typography.default, {
+ variant: "title",
+ internalDeprecatedVariant: true
+ }, children));
+}
+
+ true ? DialogTitle.propTypes = {
+ /**
+ * The content of the component.
+ */
+ children: _propTypes.default.node.isRequired,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * If `true`, the children won't be wrapped by a typography component.
+ * For instance, this can be useful to render an h4 instead of the default h2.
+ */
+ disableTypography: _propTypes.default.bool
+} : undefined;
+DialogTitle.defaultProps = {
+ disableTypography: false
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiDialogTitle'
+})(DialogTitle);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/DialogTitle/index.js":
+/*!*******************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/DialogTitle/index.js ***!
+ \*******************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _DialogTitle.default;
+ }
+});
+
+var _DialogTitle = _interopRequireDefault(__webpack_require__(/*! ./DialogTitle */ "../../node_modules/@material-ui/core/DialogTitle/DialogTitle.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Divider/Divider.js":
+/*!*****************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Divider/Divider.js ***!
+ \*****************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _colorManipulator = __webpack_require__(/*! ../styles/colorManipulator */ "../../node_modules/@material-ui/core/styles/colorManipulator.js");
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ height: 1,
+ margin: 0,
+ // Reset browser default style.
+ border: 'none',
+ flexShrink: 0,
+ backgroundColor: theme.palette.divider
+ },
+
+ /* Styles applied to the root element if `absolute={true}`. */
+ absolute: {
+ position: 'absolute',
+ bottom: 0,
+ left: 0,
+ width: '100%'
+ },
+
+ /* Styles applied to the root element if `variant="inset"`. */
+ inset: {
+ marginLeft: 72
+ },
+
+ /* Styles applied to the root element if `light={true}`. */
+ light: {
+ backgroundColor: (0, _colorManipulator.fade)(theme.palette.divider, 0.08)
+ },
+
+ /* Styles applied to the root element if `variant="middle"`. */
+ middle: {
+ marginLeft: theme.spacing.unit * 2,
+ marginRight: theme.spacing.unit * 2
+ }
+ };
+};
+
+exports.styles = styles;
+
+function Divider(props) {
+ var _classNames;
+
+ var absolute = props.absolute,
+ classes = props.classes,
+ className = props.className,
+ Component = props.component,
+ inset = props.inset,
+ light = props.light,
+ variant = props.variant,
+ other = (0, _objectWithoutProperties2.default)(props, ["absolute", "classes", "className", "component", "inset", "light", "variant"]);
+ return _react.default.createElement(Component, (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.inset, inset || variant === 'inset'), (0, _defineProperty2.default)(_classNames, classes.middle, variant === 'middle'), (0, _defineProperty2.default)(_classNames, classes.absolute, absolute), (0, _defineProperty2.default)(_classNames, classes.light, light), _classNames), className)
+ }, other));
+}
+
+ true ? Divider.propTypes = {
+ /**
+ * Absolutely position the element.
+ */
+ absolute: _propTypes.default.bool,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a DOM element or a component.
+ */
+ component: _utils.componentPropType,
+
+ /**
+ * If `true`, the divider will be indented.
+ * __WARNING__: `inset` is deprecated.
+ * Instead use `variant="inset"`.
+ */
+ inset: (0, _utils.chainPropTypes)(_propTypes.default.bool, function (props) {
+ /* istanbul ignore if */
+ if (props.inset) {
+ return new Error('Material-UI: you are using the deprecated `inset` property ' + 'that will be removed in the next major release. The property `variant="inset"` ' + 'is equivalent and should be used instead.');
+ }
+
+ return null;
+ }),
+
+ /**
+ * If `true`, the divider will have a lighter color.
+ */
+ light: _propTypes.default.bool,
+
+ /**
+ * The variant to use.
+ */
+ variant: _propTypes.default.oneOf(['fullWidth', 'inset', 'middle'])
+} : undefined;
+Divider.defaultProps = {
+ absolute: false,
+ component: 'hr',
+ light: false,
+ variant: 'fullWidth'
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiDivider'
+})(Divider);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Divider/index.js":
+/*!***************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Divider/index.js ***!
+ \***************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Divider.default;
+ }
+});
+
+var _Divider = _interopRequireDefault(__webpack_require__(/*! ./Divider */ "../../node_modules/@material-ui/core/Divider/Divider.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Drawer/Drawer.js":
+/*!***************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Drawer/Drawer.js ***!
+ \***************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.isHorizontal = isHorizontal;
+exports.getAnchor = getAnchor;
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../../node_modules/@babel/runtime/helpers/classCallCheck.js"));
+
+var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../../node_modules/@babel/runtime/helpers/createClass.js"));
+
+var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
+
+var _getPrototypeOf3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
+
+var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../../node_modules/@babel/runtime/helpers/inherits.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _Modal = _interopRequireDefault(__webpack_require__(/*! ../Modal */ "../../node_modules/@material-ui/core/Modal/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _Slide = _interopRequireDefault(__webpack_require__(/*! ../Slide */ "../../node_modules/@material-ui/core/Slide/index.js"));
+
+var _Paper = _interopRequireDefault(__webpack_require__(/*! ../Paper */ "../../node_modules/@material-ui/core/Paper/index.js"));
+
+var _helpers = __webpack_require__(/*! ../utils/helpers */ "../../node_modules/@material-ui/core/utils/helpers.js");
+
+var _transitions = __webpack_require__(/*! ../styles/transitions */ "../../node_modules/@material-ui/core/styles/transitions.js");
+
+var oppositeDirection = {
+ left: 'right',
+ right: 'left',
+ top: 'down',
+ bottom: 'up'
+};
+
+function isHorizontal(props) {
+ return ['left', 'right'].indexOf(props.anchor) !== -1;
+}
+
+function getAnchor(props) {
+ return props.theme.direction === 'rtl' && isHorizontal(props) ? oppositeDirection[props.anchor] : props.anchor;
+}
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {},
+
+ /* Styles applied to the root element if `variant="permanent or persistent"`. */
+ docked: {
+ flex: '0 0 auto'
+ },
+
+ /* Styles applied to the `Paper` component. */
+ paper: {
+ overflowY: 'auto',
+ display: 'flex',
+ flexDirection: 'column',
+ height: '100%',
+ flex: '1 0 auto',
+ zIndex: theme.zIndex.drawer,
+ WebkitOverflowScrolling: 'touch',
+ // Add iOS momentum scrolling.
+ // temporary style
+ position: 'fixed',
+ top: 0,
+ // We disable the focus ring for mouse, touch and keyboard users.
+ // At some point, it would be better to keep it for keyboard users.
+ // :focus-ring CSS pseudo-class will help.
+ outline: 'none'
+ },
+
+ /* Styles applied to the `Paper` component if `anchor="left"`. */
+ paperAnchorLeft: {
+ left: 0,
+ right: 'auto'
+ },
+
+ /* Styles applied to the `Paper` component if `anchor="right"`. */
+ paperAnchorRight: {
+ left: 'auto',
+ right: 0
+ },
+
+ /* Styles applied to the `Paper` component if `anchor="top"`. */
+ paperAnchorTop: {
+ top: 0,
+ left: 0,
+ bottom: 'auto',
+ right: 0,
+ height: 'auto',
+ maxHeight: '100%'
+ },
+
+ /* Styles applied to the `Paper` component if `anchor="bottom"`. */
+ paperAnchorBottom: {
+ top: 'auto',
+ left: 0,
+ bottom: 0,
+ right: 0,
+ height: 'auto',
+ maxHeight: '100%'
+ },
+
+ /* Styles applied to the `Paper` component if `anchor="left"` & `variant` is not "temporary". */
+ paperAnchorDockedLeft: {
+ borderRight: "1px solid ".concat(theme.palette.divider)
+ },
+
+ /* Styles applied to the `Paper` component if `anchor="top"` & `variant` is not "temporary". */
+ paperAnchorDockedTop: {
+ borderBottom: "1px solid ".concat(theme.palette.divider)
+ },
+
+ /* Styles applied to the `Paper` component if `anchor="right"` & `variant` is not "temporary". */
+ paperAnchorDockedRight: {
+ borderLeft: "1px solid ".concat(theme.palette.divider)
+ },
+
+ /* Styles applied to the `Paper` component if `anchor="bottom"` & `variant` is not "temporary". */
+ paperAnchorDockedBottom: {
+ borderTop: "1px solid ".concat(theme.palette.divider)
+ },
+
+ /* Styles applied to the `Modal` component. */
+ modal: {}
+ };
+};
+/**
+ * The properties of the [Modal](/api/modal/) component are available
+ * when `variant="temporary"` is set.
+ */
+
+
+exports.styles = styles;
+
+var Drawer =
+/*#__PURE__*/
+function (_React$Component) {
+ (0, _inherits2.default)(Drawer, _React$Component);
+
+ function Drawer() {
+ var _getPrototypeOf2;
+
+ var _this;
+
+ (0, _classCallCheck2.default)(this, Drawer);
+
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
+ }
+
+ _this = (0, _possibleConstructorReturn2.default)(this, (_getPrototypeOf2 = (0, _getPrototypeOf3.default)(Drawer)).call.apply(_getPrototypeOf2, [this].concat(args)));
+ _this.mounted = false;
+ return _this;
+ }
+
+ (0, _createClass2.default)(Drawer, [{
+ key: "componentDidMount",
+ value: function componentDidMount() {
+ this.mounted = true;
+ }
+ }, {
+ key: "render",
+ value: function render() {
+ var _this$props = this.props,
+ anchorProp = _this$props.anchor,
+ BackdropProps = _this$props.BackdropProps,
+ children = _this$props.children,
+ classes = _this$props.classes,
+ className = _this$props.className,
+ elevation = _this$props.elevation,
+ _this$props$ModalProp = _this$props.ModalProps;
+ _this$props$ModalProp = _this$props$ModalProp === void 0 ? {} : _this$props$ModalProp;
+ var BackdropPropsProp = _this$props$ModalProp.BackdropProps,
+ ModalProps = (0, _objectWithoutProperties2.default)(_this$props$ModalProp, ["BackdropProps"]),
+ onClose = _this$props.onClose,
+ open = _this$props.open,
+ PaperProps = _this$props.PaperProps,
+ SlideProps = _this$props.SlideProps,
+ theme = _this$props.theme,
+ transitionDuration = _this$props.transitionDuration,
+ variant = _this$props.variant,
+ other = (0, _objectWithoutProperties2.default)(_this$props, ["anchor", "BackdropProps", "children", "classes", "className", "elevation", "ModalProps", "onClose", "open", "PaperProps", "SlideProps", "theme", "transitionDuration", "variant"]);
+ var anchor = getAnchor(this.props);
+
+ var drawer = _react.default.createElement(_Paper.default, (0, _extends2.default)({
+ elevation: variant === 'temporary' ? elevation : 0,
+ square: true,
+ className: (0, _classnames.default)(classes.paper, classes["paperAnchor".concat((0, _helpers.capitalize)(anchor))], (0, _defineProperty2.default)({}, classes["paperAnchorDocked".concat((0, _helpers.capitalize)(anchor))], variant !== 'temporary'))
+ }, PaperProps), children);
+
+ if (variant === 'permanent') {
+ return _react.default.createElement("div", (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, classes.docked, className)
+ }, other), drawer);
+ }
+
+ var slidingDrawer = _react.default.createElement(_Slide.default, (0, _extends2.default)({
+ in: open,
+ direction: oppositeDirection[anchor],
+ timeout: transitionDuration,
+ appear: this.mounted
+ }, SlideProps), drawer);
+
+ if (variant === 'persistent') {
+ return _react.default.createElement("div", (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, classes.docked, className)
+ }, other), slidingDrawer);
+ } // variant === temporary
+
+
+ return _react.default.createElement(_Modal.default, (0, _extends2.default)({
+ BackdropProps: (0, _extends2.default)({}, BackdropProps, BackdropPropsProp, {
+ transitionDuration: transitionDuration
+ }),
+ className: (0, _classnames.default)(classes.root, classes.modal, className),
+ open: open,
+ onClose: onClose
+ }, other, ModalProps), slidingDrawer);
+ }
+ }]);
+ return Drawer;
+}(_react.default.Component);
+
+ true ? Drawer.propTypes = {
+ /**
+ * Side from which the drawer will appear.
+ */
+ anchor: _propTypes.default.oneOf(['left', 'top', 'right', 'bottom']),
+
+ /**
+ * The contents of the drawer.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The elevation of the drawer.
+ */
+ elevation: _propTypes.default.number,
+
+ /**
+ * Properties applied to the [`Modal`](/api/modal/) element.
+ */
+ ModalProps: _propTypes.default.object,
+
+ /**
+ * Callback fired when the component requests to be closed.
+ *
+ * @param {object} event The event source of the callback
+ */
+ onClose: _propTypes.default.func,
+
+ /**
+ * If `true`, the drawer is open.
+ */
+ open: _propTypes.default.bool,
+
+ /**
+ * Properties applied to the [`Paper`](/api/paper/) element.
+ */
+ PaperProps: _propTypes.default.object,
+
+ /**
+ * Properties applied to the [`Slide`](/api/slide/) element.
+ */
+ SlideProps: _propTypes.default.object,
+
+ /**
+ * @ignore
+ */
+ theme: _propTypes.default.object.isRequired,
+
+ /**
+ * The duration for the transition, in milliseconds.
+ * You may specify a single timeout for all transitions, or individually with an object.
+ */
+ transitionDuration: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.shape({
+ enter: _propTypes.default.number,
+ exit: _propTypes.default.number
+ })]),
+
+ /**
+ * The variant to use.
+ */
+ variant: _propTypes.default.oneOf(['permanent', 'persistent', 'temporary'])
+} : undefined;
+Drawer.defaultProps = {
+ anchor: 'left',
+ elevation: 16,
+ open: false,
+ transitionDuration: {
+ enter: _transitions.duration.enteringScreen,
+ exit: _transitions.duration.leavingScreen
+ },
+ variant: 'temporary' // Mobile first.
+
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiDrawer',
+ flip: false,
+ withTheme: true
+})(Drawer);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Drawer/index.js":
+/*!**************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Drawer/index.js ***!
+ \**************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Drawer.default;
+ }
+});
+
+var _Drawer = _interopRequireDefault(__webpack_require__(/*! ./Drawer */ "../../node_modules/@material-ui/core/Drawer/Drawer.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ExpansionPanel/ExpansionPanel.js":
+/*!*******************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ExpansionPanel/ExpansionPanel.js ***!
+ \*******************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../../node_modules/@babel/runtime/helpers/classCallCheck.js"));
+
+var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../../node_modules/@babel/runtime/helpers/createClass.js"));
+
+var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
+
+var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
+
+var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../../node_modules/@babel/runtime/helpers/inherits.js"));
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _warning = _interopRequireDefault(__webpack_require__(/*! warning */ "../../node_modules/warning/warning.js"));
+
+var _Collapse = _interopRequireDefault(__webpack_require__(/*! ../Collapse */ "../../node_modules/@material-ui/core/Collapse/index.js"));
+
+var _Paper = _interopRequireDefault(__webpack_require__(/*! ../Paper */ "../../node_modules/@material-ui/core/Paper/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _reactHelpers = __webpack_require__(/*! ../utils/reactHelpers */ "../../node_modules/@material-ui/core/utils/reactHelpers.js");
+
+// @inheritedComponent Paper
+// Workaround https://github.com/jsdom/jsdom/issues/2026
+var edgeFix = typeof window !== 'undefined' && /jsdom/.test(window.navigator.userAgent) ? {} : {
+ // Fix a rendering issue on Edge
+ '@supports (-ms-ime-align: auto)': {
+ borderBottomLeftRadius: 0,
+ borderBottomRightRadius: 0
+ }
+};
+
+var styles = function styles(theme) {
+ var transition = {
+ duration: theme.transitions.duration.shortest
+ };
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ position: 'relative',
+ transition: theme.transitions.create(['margin'], transition),
+ '&:before': {
+ position: 'absolute',
+ left: 0,
+ top: -1,
+ right: 0,
+ height: 1,
+ content: '""',
+ opacity: 1,
+ backgroundColor: theme.palette.divider,
+ transition: theme.transitions.create(['opacity', 'background-color'], transition)
+ },
+ '&:first-child': {
+ borderTopLeftRadius: theme.shape.borderRadius,
+ borderTopRightRadius: theme.shape.borderRadius,
+ '&:before': {
+ display: 'none'
+ }
+ },
+ '&:last-child': (0, _extends2.default)({
+ borderBottomLeftRadius: theme.shape.borderRadius,
+ borderBottomRightRadius: theme.shape.borderRadius
+ }, edgeFix),
+ '&$expanded + &': {
+ '&:before': {
+ display: 'none'
+ }
+ }
+ },
+
+ /* Styles applied to the root element if `expanded={true}`. */
+ expanded: {
+ margin: '16px 0',
+ '&:first-child': {
+ marginTop: 0
+ },
+ '&:last-child': {
+ marginBottom: 0
+ },
+ '&:before': {
+ opacity: 0
+ }
+ },
+
+ /* Styles applied to the root element if `disabled={true}`. */
+ disabled: {
+ backgroundColor: theme.palette.action.disabledBackground
+ }
+ };
+};
+
+exports.styles = styles;
+
+var ExpansionPanel =
+/*#__PURE__*/
+function (_React$Component) {
+ (0, _inherits2.default)(ExpansionPanel, _React$Component);
+
+ function ExpansionPanel(props) {
+ var _this;
+
+ (0, _classCallCheck2.default)(this, ExpansionPanel);
+ _this = (0, _possibleConstructorReturn2.default)(this, (0, _getPrototypeOf2.default)(ExpansionPanel).call(this));
+
+ _this.handleChange = function (event) {
+ var expanded = _this.isControlled ? _this.props.expanded : _this.state.expanded;
+
+ if (!_this.isControlled) {
+ _this.setState({
+ expanded: !expanded
+ });
+ }
+
+ if (_this.props.onChange) {
+ _this.props.onChange(event, !expanded);
+ }
+ };
+
+ _this.isControlled = props.expanded != null;
+ _this.state = {};
+
+ if (!_this.isControlled) {
+ // not controlled, use internal state
+ _this.state.expanded = props.defaultExpanded !== undefined ? props.defaultExpanded : false;
+ }
+
+ return _this;
+ }
+
+ (0, _createClass2.default)(ExpansionPanel, [{
+ key: "render",
+ value: function render() {
+ var _classNames,
+ _this2 = this;
+
+ var _this$props = this.props,
+ childrenProp = _this$props.children,
+ classes = _this$props.classes,
+ classNameProp = _this$props.className,
+ CollapsePropsProp = _this$props.CollapseProps,
+ defaultExpanded = _this$props.defaultExpanded,
+ disabled = _this$props.disabled,
+ expandedProp = _this$props.expanded,
+ onChange = _this$props.onChange,
+ other = (0, _objectWithoutProperties2.default)(_this$props, ["children", "classes", "className", "CollapseProps", "defaultExpanded", "disabled", "expanded", "onChange"]);
+ var expanded = this.isControlled ? expandedProp : this.state.expanded;
+ var className = (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.expanded, expanded), (0, _defineProperty2.default)(_classNames, classes.disabled, disabled), _classNames), classNameProp);
+ var summary = null;
+
+ var children = _react.default.Children.map(childrenProp, function (child) {
+ if (!_react.default.isValidElement(child)) {
+ return null;
+ }
+
+ true ? (0, _warning.default)(child.type !== _react.default.Fragment, ["Material-UI: the ExpansionPanel component doesn't accept a Fragment as a child.", 'Consider providing an array instead.'].join('\n')) : undefined;
+
+ if ((0, _reactHelpers.isMuiElement)(child, ['ExpansionPanelSummary'])) {
+ summary = _react.default.cloneElement(child, {
+ disabled: disabled,
+ expanded: expanded,
+ onChange: _this2.handleChange
+ });
+ return null;
+ }
+
+ return child;
+ });
+
+ var CollapseProps = !expanded ? {
+ 'aria-hidden': 'true'
+ } : null;
+ return _react.default.createElement(_Paper.default, (0, _extends2.default)({
+ className: className,
+ elevation: 1,
+ square: true
+ }, other), summary, _react.default.createElement(_Collapse.default, (0, _extends2.default)({
+ in: expanded,
+ timeout: "auto"
+ }, CollapseProps, CollapsePropsProp), children));
+ }
+ }]);
+ return ExpansionPanel;
+}(_react.default.Component);
+
+ true ? ExpansionPanel.propTypes = {
+ /**
+ * The content of the expansion panel.
+ */
+ children: _propTypes.default.node.isRequired,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * Properties applied to the [`Collapse`](/api/collapse/) element.
+ */
+ CollapseProps: _propTypes.default.object,
+
+ /**
+ * If `true`, expands the panel by default.
+ */
+ defaultExpanded: _propTypes.default.bool,
+
+ /**
+ * If `true`, the panel will be displayed in a disabled state.
+ */
+ disabled: _propTypes.default.bool,
+
+ /**
+ * If `true`, expands the panel, otherwise collapse it.
+ * Setting this prop enables control over the panel.
+ */
+ expanded: _propTypes.default.bool,
+
+ /**
+ * Callback fired when the expand/collapse state is changed.
+ *
+ * @param {object} event The event source of the callback
+ * @param {boolean} expanded The `expanded` state of the panel
+ */
+ onChange: _propTypes.default.func
+} : undefined;
+ExpansionPanel.defaultProps = {
+ defaultExpanded: false,
+ disabled: false
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiExpansionPanel'
+})(ExpansionPanel);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ExpansionPanel/index.js":
+/*!**********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ExpansionPanel/index.js ***!
+ \**********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _ExpansionPanel.default;
+ }
+});
+
+var _ExpansionPanel = _interopRequireDefault(__webpack_require__(/*! ./ExpansionPanel */ "../../node_modules/@material-ui/core/ExpansionPanel/ExpansionPanel.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ExpansionPanelActions/ExpansionPanelActions.js":
+/*!*********************************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ExpansionPanelActions/ExpansionPanelActions.js ***!
+ \*********************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _reactHelpers = __webpack_require__(/*! ../utils/reactHelpers */ "../../node_modules/@material-ui/core/utils/reactHelpers.js");
+
+__webpack_require__(/*! ../Button */ "../../node_modules/@material-ui/core/Button/index.js");
+
+// So we don't have any override priority issue.
+var styles = {
+ /* Styles applied to the root element. */
+ root: {
+ display: 'flex',
+ alignItems: 'center',
+ justifyContent: 'flex-end',
+ padding: '16px 8px'
+ },
+
+ /* Styles applied to the children. */
+ action: {
+ marginLeft: 8
+ }
+};
+exports.styles = styles;
+
+function ExpansionPanelActions(props) {
+ var children = props.children,
+ classes = props.classes,
+ className = props.className,
+ other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className"]);
+ return _react.default.createElement("div", (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, className)
+ }, other), (0, _reactHelpers.cloneChildrenWithClassName)(children, classes.action));
+}
+
+ true ? ExpansionPanelActions.propTypes = {
+ /**
+ * The content of the component.
+ */
+ children: _propTypes.default.node.isRequired,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string
+} : undefined;
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiExpansionPanelActions'
+})(ExpansionPanelActions);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ExpansionPanelActions/index.js":
+/*!*****************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ExpansionPanelActions/index.js ***!
+ \*****************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _ExpansionPanelActions.default;
+ }
+});
+
+var _ExpansionPanelActions = _interopRequireDefault(__webpack_require__(/*! ./ExpansionPanelActions */ "../../node_modules/@material-ui/core/ExpansionPanelActions/ExpansionPanelActions.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ExpansionPanelDetails/ExpansionPanelDetails.js":
+/*!*********************************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ExpansionPanelDetails/ExpansionPanelDetails.js ***!
+ \*********************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var styles = {
+ /* Styles applied to the root element. */
+ root: {
+ display: 'flex',
+ padding: '8px 24px 24px'
+ }
+};
+exports.styles = styles;
+
+function ExpansionPanelDetails(props) {
+ var classes = props.classes,
+ children = props.children,
+ className = props.className,
+ other = (0, _objectWithoutProperties2.default)(props, ["classes", "children", "className"]);
+ return _react.default.createElement("div", (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, className)
+ }, other), children);
+}
+
+ true ? ExpansionPanelDetails.propTypes = {
+ /**
+ * The content of the expansion panel details.
+ */
+ children: _propTypes.default.node.isRequired,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string
+} : undefined;
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiExpansionPanelDetails'
+})(ExpansionPanelDetails);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ExpansionPanelDetails/index.js":
+/*!*****************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ExpansionPanelDetails/index.js ***!
+ \*****************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _ExpansionPanelDetails.default;
+ }
+});
+
+var _ExpansionPanelDetails = _interopRequireDefault(__webpack_require__(/*! ./ExpansionPanelDetails */ "../../node_modules/@material-ui/core/ExpansionPanelDetails/ExpansionPanelDetails.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ExpansionPanelSummary/ExpansionPanelSummary.js":
+/*!*********************************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ExpansionPanelSummary/ExpansionPanelSummary.js ***!
+ \*********************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../../node_modules/@babel/runtime/helpers/classCallCheck.js"));
+
+var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../../node_modules/@babel/runtime/helpers/createClass.js"));
+
+var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
+
+var _getPrototypeOf3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
+
+var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../../node_modules/@babel/runtime/helpers/inherits.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _ButtonBase = _interopRequireDefault(__webpack_require__(/*! ../ButtonBase */ "../../node_modules/@material-ui/core/ButtonBase/index.js"));
+
+var _IconButton = _interopRequireDefault(__webpack_require__(/*! ../IconButton */ "../../node_modules/@material-ui/core/IconButton/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+// @inheritedComponent ButtonBase
+var styles = function styles(theme) {
+ var transition = {
+ duration: theme.transitions.duration.shortest
+ };
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ display: 'flex',
+ minHeight: 8 * 6,
+ transition: theme.transitions.create(['min-height', 'background-color'], transition),
+ padding: '0 24px 0 24px',
+ '&:hover:not($disabled)': {
+ cursor: 'pointer'
+ },
+ '&$expanded': {
+ minHeight: 64
+ },
+ '&$focused': {
+ backgroundColor: theme.palette.grey[300]
+ },
+ '&$disabled': {
+ opacity: 0.38
+ }
+ },
+
+ /* Styles applied to the root element if `expanded={true}`. */
+ expanded: {},
+
+ /* Styles applied to the root and children wrapper elements when focused. */
+ focused: {},
+
+ /* Styles applied to the root element if `disabled={true}`. */
+ disabled: {},
+
+ /* Styles applied to the children wrapper element. */
+ content: {
+ display: 'flex',
+ flexGrow: 1,
+ transition: theme.transitions.create(['margin'], transition),
+ margin: '12px 0',
+ '& > :last-child': {
+ paddingRight: 32
+ },
+ '&$expanded': {
+ margin: '20px 0'
+ }
+ },
+
+ /* Styles applied to the `IconButton` component when `expandIcon` is supplied. */
+ expandIcon: {
+ position: 'absolute',
+ top: '50%',
+ right: 8,
+ transform: 'translateY(-50%) rotate(0deg)',
+ transition: theme.transitions.create('transform', transition),
+ '&:hover': {
+ // Disable the hover effect for the IconButton,
+ // because a hover effect should apply to the entire Expand button and
+ // not only to the IconButton.
+ backgroundColor: 'transparent'
+ },
+ '&$expanded': {
+ transform: 'translateY(-50%) rotate(180deg)'
+ }
+ }
+ };
+};
+
+exports.styles = styles;
+
+var ExpansionPanelSummary =
+/*#__PURE__*/
+function (_React$Component) {
+ (0, _inherits2.default)(ExpansionPanelSummary, _React$Component);
+
+ function ExpansionPanelSummary() {
+ var _getPrototypeOf2;
+
+ var _this;
+
+ (0, _classCallCheck2.default)(this, ExpansionPanelSummary);
+
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
+ }
+
+ _this = (0, _possibleConstructorReturn2.default)(this, (_getPrototypeOf2 = (0, _getPrototypeOf3.default)(ExpansionPanelSummary)).call.apply(_getPrototypeOf2, [this].concat(args)));
+ _this.state = {
+ focused: false
+ };
+
+ _this.handleFocusVisible = function (event) {
+ _this.setState({
+ focused: true
+ });
+
+ if (_this.props.onFocusVisible) {
+ _this.props.onFocusVisible(event);
+ }
+ };
+
+ _this.handleBlur = function (event) {
+ _this.setState({
+ focused: false
+ });
+
+ if (_this.props.onBlur) {
+ _this.props.onBlur(event);
+ }
+ };
+
+ _this.handleChange = function (event) {
+ var _this$props = _this.props,
+ onChange = _this$props.onChange,
+ onClick = _this$props.onClick;
+
+ if (onChange) {
+ onChange(event);
+ }
+
+ if (onClick) {
+ onClick(event);
+ }
+ };
+
+ return _this;
+ }
+
+ (0, _createClass2.default)(ExpansionPanelSummary, [{
+ key: "render",
+ value: function render() {
+ var _classNames;
+
+ var _this$props2 = this.props,
+ children = _this$props2.children,
+ classes = _this$props2.classes,
+ className = _this$props2.className,
+ disabled = _this$props2.disabled,
+ expanded = _this$props2.expanded,
+ expandIcon = _this$props2.expandIcon,
+ IconButtonProps = _this$props2.IconButtonProps,
+ onBlur = _this$props2.onBlur,
+ onChange = _this$props2.onChange,
+ onClick = _this$props2.onClick,
+ onFocusVisible = _this$props2.onFocusVisible,
+ other = (0, _objectWithoutProperties2.default)(_this$props2, ["children", "classes", "className", "disabled", "expanded", "expandIcon", "IconButtonProps", "onBlur", "onChange", "onClick", "onFocusVisible"]);
+ var focused = this.state.focused;
+ return _react.default.createElement(_ButtonBase.default, (0, _extends2.default)({
+ focusRipple: false,
+ disableRipple: true,
+ disabled: disabled,
+ component: "div",
+ "aria-expanded": expanded,
+ className: (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.disabled, disabled), (0, _defineProperty2.default)(_classNames, classes.expanded, expanded), (0, _defineProperty2.default)(_classNames, classes.focused, focused), _classNames), className),
+ onFocusVisible: this.handleFocusVisible,
+ onBlur: this.handleBlur,
+ onClick: this.handleChange
+ }, other), _react.default.createElement("div", {
+ className: (0, _classnames.default)(classes.content, (0, _defineProperty2.default)({}, classes.expanded, expanded))
+ }, children), expandIcon && _react.default.createElement(_IconButton.default, (0, _extends2.default)({
+ disabled: disabled,
+ className: (0, _classnames.default)(classes.expandIcon, (0, _defineProperty2.default)({}, classes.expanded, expanded)),
+ component: "div",
+ tabIndex: -1,
+ "aria-hidden": "true"
+ }, IconButtonProps), expandIcon));
+ }
+ }]);
+ return ExpansionPanelSummary;
+}(_react.default.Component);
+
+ true ? ExpansionPanelSummary.propTypes = {
+ /**
+ * The content of the expansion panel summary.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * @ignore
+ * If `true`, the summary will be displayed in a disabled state.
+ */
+ disabled: _propTypes.default.bool,
+
+ /**
+ * @ignore
+ * If `true`, expands the summary, otherwise collapse it.
+ */
+ expanded: _propTypes.default.bool,
+
+ /**
+ * The icon to display as the expand indicator.
+ */
+ expandIcon: _propTypes.default.node,
+
+ /**
+ * Properties applied to the `TouchRipple` element wrapping the expand icon.
+ */
+ IconButtonProps: _propTypes.default.object,
+
+ /**
+ * @ignore
+ */
+ onChange: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onClick: _propTypes.default.func
+} : undefined;
+ExpansionPanelSummary.defaultProps = {
+ disabled: false
+};
+ExpansionPanelSummary.muiName = 'ExpansionPanelSummary';
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiExpansionPanelSummary'
+})(ExpansionPanelSummary);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ExpansionPanelSummary/index.js":
+/*!*****************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ExpansionPanelSummary/index.js ***!
+ \*****************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _ExpansionPanelSummary.default;
+ }
+});
+
+var _ExpansionPanelSummary = _interopRequireDefault(__webpack_require__(/*! ./ExpansionPanelSummary */ "../../node_modules/@material-ui/core/ExpansionPanelSummary/ExpansionPanelSummary.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Fab/Fab.js":
+/*!*********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Fab/Fab.js ***!
+ \*********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _ButtonBase = _interopRequireDefault(__webpack_require__(/*! ../ButtonBase */ "../../node_modules/@material-ui/core/ButtonBase/index.js"));
+
+var _helpers = __webpack_require__(/*! ../utils/helpers */ "../../node_modules/@material-ui/core/utils/helpers.js");
+
+// @inheritedComponent ButtonBase
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: (0, _extends2.default)({}, theme.typography.button, {
+ boxSizing: 'border-box',
+ minHeight: 36,
+ transition: theme.transitions.create(['background-color', 'box-shadow', 'border'], {
+ duration: theme.transitions.duration.short
+ }),
+ borderRadius: '50%',
+ padding: 0,
+ minWidth: 0,
+ width: 56,
+ height: 56,
+ boxShadow: theme.shadows[6],
+ '&:active': {
+ boxShadow: theme.shadows[12]
+ },
+ color: theme.palette.getContrastText(theme.palette.grey[300]),
+ backgroundColor: theme.palette.grey[300],
+ '&$focusVisible': {
+ boxShadow: theme.shadows[6]
+ },
+ '&:hover': {
+ backgroundColor: theme.palette.grey.A100,
+ // Reset on touch devices, it doesn't add specificity
+ '@media (hover: none)': {
+ backgroundColor: theme.palette.grey[300]
+ },
+ '&$disabled': {
+ backgroundColor: theme.palette.action.disabledBackground
+ },
+ textDecoration: 'none'
+ },
+ '&$disabled': {
+ color: theme.palette.action.disabled,
+ boxShadow: theme.shadows[0],
+ backgroundColor: theme.palette.action.disabledBackground
+ }
+ }),
+
+ /* Styles applied to the span element that wraps the children. */
+ label: {
+ width: '100%',
+ // assure the correct width for iOS Safari
+ display: 'inherit',
+ alignItems: 'inherit',
+ justifyContent: 'inherit'
+ },
+
+ /* Styles applied to the root element if `color="primary"`. */
+ primary: {
+ color: theme.palette.primary.contrastText,
+ backgroundColor: theme.palette.primary.main,
+ '&:hover': {
+ backgroundColor: theme.palette.primary.dark,
+ // Reset on touch devices, it doesn't add specificity
+ '@media (hover: none)': {
+ backgroundColor: theme.palette.primary.main
+ }
+ }
+ },
+
+ /* Styles applied to the root element if `color="secondary"`. */
+ secondary: {
+ color: theme.palette.secondary.contrastText,
+ backgroundColor: theme.palette.secondary.main,
+ '&:hover': {
+ backgroundColor: theme.palette.secondary.dark,
+ // Reset on touch devices, it doesn't add specificity
+ '@media (hover: none)': {
+ backgroundColor: theme.palette.secondary.main
+ }
+ }
+ },
+
+ /* Styles applied to the root element if `variant="extended"`. */
+ extended: {
+ borderRadius: 48 / 2,
+ padding: '0 16px',
+ width: 'auto',
+ minHeight: 'auto',
+ minWidth: 48,
+ height: 48,
+ '&$sizeSmall': {
+ width: 'auto',
+ padding: '0 8px',
+ borderRadius: 34 / 2,
+ minWidth: 34,
+ height: 34
+ },
+ '&$sizeMedium': {
+ width: 'auto',
+ padding: '0 16px',
+ borderRadius: 40 / 2,
+ minWidth: 40,
+ height: 40
+ }
+ },
+
+ /* Styles applied to the ButtonBase root element if the button is keyboard focused. */
+ focusVisible: {},
+
+ /* Styles applied to the root element if `disabled={true}`. */
+ disabled: {},
+
+ /* Styles applied to the root element if `color="inherit"`. */
+ colorInherit: {
+ color: 'inherit'
+ },
+
+ /* Styles applied to the root element if `size="small"``. */
+ sizeSmall: {
+ width: 40,
+ height: 40
+ },
+
+ /* Styles applied to the root element if `size="medium"``. */
+ sizeMedium: {
+ width: 48,
+ height: 48
+ }
+ };
+};
+
+exports.styles = styles;
+
+function Fab(props) {
+ var _classNames;
+
+ var children = props.children,
+ classes = props.classes,
+ className = props.className,
+ color = props.color,
+ disabled = props.disabled,
+ disableFocusRipple = props.disableFocusRipple,
+ focusVisibleClassName = props.focusVisibleClassName,
+ size = props.size,
+ variant = props.variant,
+ other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "color", "disabled", "disableFocusRipple", "focusVisibleClassName", "size", "variant"]);
+ return _react.default.createElement(_ButtonBase.default, (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.extended, variant === 'extended'), (0, _defineProperty2.default)(_classNames, classes.primary, color === 'primary'), (0, _defineProperty2.default)(_classNames, classes.secondary, color === 'secondary'), (0, _defineProperty2.default)(_classNames, classes["size".concat((0, _helpers.capitalize)(size))], size !== 'large'), (0, _defineProperty2.default)(_classNames, classes.disabled, disabled), (0, _defineProperty2.default)(_classNames, classes.colorInherit, color === 'inherit'), _classNames), className),
+ disabled: disabled,
+ focusRipple: !disableFocusRipple,
+ focusVisibleClassName: (0, _classnames.default)(classes.focusVisible, focusVisibleClassName)
+ }, other), _react.default.createElement("span", {
+ className: classes.label
+ }, children));
+}
+
+ true ? Fab.propTypes = {
+ /**
+ * The content of the button.
+ */
+ children: _propTypes.default.node.isRequired,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The color of the component. It supports those theme colors that make sense for this component.
+ */
+ color: _propTypes.default.oneOf(['default', 'inherit', 'primary', 'secondary']),
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a DOM element or a component.
+ */
+ component: _utils.componentPropType,
+
+ /**
+ * If `true`, the button will be disabled.
+ */
+ disabled: _propTypes.default.bool,
+
+ /**
+ * If `true`, the keyboard focus ripple will be disabled.
+ * `disableRipple` must also be true.
+ */
+ disableFocusRipple: _propTypes.default.bool,
+
+ /**
+ * If `true`, the ripple effect will be disabled.
+ */
+ disableRipple: _propTypes.default.bool,
+
+ /**
+ * @ignore
+ */
+ focusVisibleClassName: _propTypes.default.string,
+
+ /**
+ * The URL to link to when the button is clicked.
+ * If defined, an `a` element will be used as the root node.
+ */
+ href: _propTypes.default.string,
+
+ /**
+ * The size of the button.
+ * `small` is equivalent to the dense button styling.
+ */
+ size: _propTypes.default.oneOf(['small', 'medium', 'large']),
+
+ /**
+ * @ignore
+ */
+ type: _propTypes.default.string,
+
+ /**
+ * The variant to use.
+ */
+ variant: _propTypes.default.oneOf(['round', 'extended'])
+} : undefined;
+Fab.defaultProps = {
+ color: 'default',
+ component: 'button',
+ disabled: false,
+ disableFocusRipple: false,
+ size: 'large',
+ type: 'button',
+ variant: 'round'
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiFab'
+})(Fab);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Fab/index.js":
+/*!***********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Fab/index.js ***!
+ \***********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Fab.default;
+ }
+});
+
+var _Fab = _interopRequireDefault(__webpack_require__(/*! ./Fab */ "../../node_modules/@material-ui/core/Fab/Fab.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Fade/Fade.js":
+/*!***********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Fade/Fade.js ***!
+ \***********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../../node_modules/@babel/runtime/helpers/classCallCheck.js"));
+
+var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../../node_modules/@babel/runtime/helpers/createClass.js"));
+
+var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
+
+var _getPrototypeOf3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
+
+var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../../node_modules/@babel/runtime/helpers/inherits.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _Transition = _interopRequireDefault(__webpack_require__(/*! react-transition-group/Transition */ "../../node_modules/react-transition-group/Transition.js"));
+
+var _transitions = __webpack_require__(/*! ../styles/transitions */ "../../node_modules/@material-ui/core/styles/transitions.js");
+
+var _withTheme = _interopRequireDefault(__webpack_require__(/*! ../styles/withTheme */ "../../node_modules/@material-ui/core/styles/withTheme.js"));
+
+var _utils = __webpack_require__(/*! ../transitions/utils */ "../../node_modules/@material-ui/core/transitions/utils.js");
+
+// @inheritedComponent Transition
+var styles = {
+ entering: {
+ opacity: 1
+ },
+ entered: {
+ opacity: 1
+ }
+};
+/**
+ * The Fade transition is used by the [Modal](/utils/modal/) component.
+ * It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally.
+ */
+
+var Fade =
+/*#__PURE__*/
+function (_React$Component) {
+ (0, _inherits2.default)(Fade, _React$Component);
+
+ function Fade() {
+ var _getPrototypeOf2;
+
+ var _this;
+
+ (0, _classCallCheck2.default)(this, Fade);
+
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
+ }
+
+ _this = (0, _possibleConstructorReturn2.default)(this, (_getPrototypeOf2 = (0, _getPrototypeOf3.default)(Fade)).call.apply(_getPrototypeOf2, [this].concat(args)));
+
+ _this.handleEnter = function (node) {
+ var theme = _this.props.theme;
+ (0, _utils.reflow)(node); // So the animation always start from the start.
+
+ var transitionProps = (0, _utils.getTransitionProps)(_this.props, {
+ mode: 'enter'
+ });
+ node.style.webkitTransition = theme.transitions.create('opacity', transitionProps);
+ node.style.transition = theme.transitions.create('opacity', transitionProps);
+
+ if (_this.props.onEnter) {
+ _this.props.onEnter(node);
+ }
+ };
+
+ _this.handleExit = function (node) {
+ var theme = _this.props.theme;
+ var transitionProps = (0, _utils.getTransitionProps)(_this.props, {
+ mode: 'exit'
+ });
+ node.style.webkitTransition = theme.transitions.create('opacity', transitionProps);
+ node.style.transition = theme.transitions.create('opacity', transitionProps);
+
+ if (_this.props.onExit) {
+ _this.props.onExit(node);
+ }
+ };
+
+ return _this;
+ }
+
+ (0, _createClass2.default)(Fade, [{
+ key: "render",
+ value: function render() {
+ var _this$props = this.props,
+ children = _this$props.children,
+ onEnter = _this$props.onEnter,
+ onExit = _this$props.onExit,
+ styleProp = _this$props.style,
+ theme = _this$props.theme,
+ other = (0, _objectWithoutProperties2.default)(_this$props, ["children", "onEnter", "onExit", "style", "theme"]);
+ var style = (0, _extends2.default)({}, styleProp, _react.default.isValidElement(children) ? children.props.style : {});
+ return _react.default.createElement(_Transition.default, (0, _extends2.default)({
+ appear: true,
+ onEnter: this.handleEnter,
+ onExit: this.handleExit
+ }, other), function (state, childProps) {
+ return _react.default.cloneElement(children, (0, _extends2.default)({
+ style: (0, _extends2.default)({
+ opacity: 0
+ }, styles[state], style)
+ }, childProps));
+ });
+ }
+ }]);
+ return Fade;
+}(_react.default.Component);
+
+ true ? Fade.propTypes = {
+ /**
+ * A single child content element.
+ */
+ children: _propTypes.default.oneOfType([_propTypes.default.element, _propTypes.default.func]),
+
+ /**
+ * If `true`, the component will transition in.
+ */
+ in: _propTypes.default.bool,
+
+ /**
+ * @ignore
+ */
+ onEnter: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onExit: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ style: _propTypes.default.object,
+
+ /**
+ * @ignore
+ */
+ theme: _propTypes.default.object.isRequired,
+
+ /**
+ * The duration for the transition, in milliseconds.
+ * You may specify a single timeout for all transitions, or individually with an object.
+ */
+ timeout: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.shape({
+ enter: _propTypes.default.number,
+ exit: _propTypes.default.number
+ })])
+} : undefined;
+Fade.defaultProps = {
+ timeout: {
+ enter: _transitions.duration.enteringScreen,
+ exit: _transitions.duration.leavingScreen
+ }
+};
+
+var _default = (0, _withTheme.default)()(Fade);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Fade/index.js":
+/*!************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Fade/index.js ***!
+ \************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Fade.default;
+ }
+});
+
+var _Fade = _interopRequireDefault(__webpack_require__(/*! ./Fade */ "../../node_modules/@material-ui/core/Fade/Fade.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/FilledInput/FilledInput.js":
+/*!*************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/FilledInput/FilledInput.js ***!
+ \*************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _InputBase = _interopRequireDefault(__webpack_require__(/*! ../InputBase */ "../../node_modules/@material-ui/core/InputBase/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+// @inheritedComponent InputBase
+var styles = function styles(theme) {
+ var light = theme.palette.type === 'light';
+ var bottomLineColor = light ? 'rgba(0, 0, 0, 0.42)' : 'rgba(255, 255, 255, 0.7)';
+ var backgroundColor = light ? 'rgba(0, 0, 0, 0.09)' : 'rgba(255, 255, 255, 0.09)';
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ position: 'relative',
+ backgroundColor: backgroundColor,
+ borderTopLeftRadius: theme.shape.borderRadius,
+ borderTopRightRadius: theme.shape.borderRadius,
+ transition: theme.transitions.create('background-color', {
+ duration: theme.transitions.duration.shorter,
+ easing: theme.transitions.easing.easeOut
+ }),
+ '&:hover': {
+ backgroundColor: light ? 'rgba(0, 0, 0, 0.13)' : 'rgba(255, 255, 255, 0.13)',
+ // Reset on touch devices, it doesn't add specificity
+ '@media (hover: none)': {
+ backgroundColor: backgroundColor
+ }
+ },
+ '&$focused': {
+ backgroundColor: light ? 'rgba(0, 0, 0, 0.09)' : 'rgba(255, 255, 255, 0.09)'
+ },
+ '&$disabled': {
+ backgroundColor: light ? 'rgba(0, 0, 0, 0.12)' : 'rgba(255, 255, 255, 0.12)'
+ }
+ },
+
+ /* Styles applied to the root element if `disableUnderline={false}`. */
+ underline: {
+ '&:after': {
+ borderBottom: "2px solid ".concat(theme.palette.primary[light ? 'dark' : 'light']),
+ left: 0,
+ bottom: 0,
+ // Doing the other way around crash on IE 11 "''" https://github.com/cssinjs/jss/issues/242
+ content: '""',
+ position: 'absolute',
+ right: 0,
+ transform: 'scaleX(0)',
+ transition: theme.transitions.create('transform', {
+ duration: theme.transitions.duration.shorter,
+ easing: theme.transitions.easing.easeOut
+ }),
+ pointerEvents: 'none' // Transparent to the hover style.
+
+ },
+ '&$focused:after': {
+ transform: 'scaleX(1)'
+ },
+ '&$error:after': {
+ borderBottomColor: theme.palette.error.main,
+ transform: 'scaleX(1)' // error is always underlined in red
+
+ },
+ '&:before': {
+ borderBottom: "1px solid ".concat(bottomLineColor),
+ left: 0,
+ bottom: 0,
+ // Doing the other way around crash on IE 11 "''" https://github.com/cssinjs/jss/issues/242
+ content: '"\\00a0"',
+ position: 'absolute',
+ right: 0,
+ transition: theme.transitions.create('border-bottom-color', {
+ duration: theme.transitions.duration.shorter
+ }),
+ pointerEvents: 'none' // Transparent to the hover style.
+
+ },
+ '&:hover:not($disabled):not($focused):not($error):before': {
+ borderBottom: "1px solid ".concat(theme.palette.text.primary)
+ },
+ '&$disabled:before': {
+ borderBottom: "1px dotted ".concat(bottomLineColor)
+ }
+ },
+
+ /* Styles applied to the root element if the component is focused. */
+ focused: {},
+
+ /* Styles applied to the root element if `disabled={true}`. */
+ disabled: {},
+
+ /* Styles applied to the root element if `startAdornment` is provided. */
+ adornedStart: {
+ paddingLeft: 12
+ },
+
+ /* Styles applied to the root element if `endAdornment` is provided. */
+ adornedEnd: {
+ paddingRight: 12
+ },
+
+ /* Styles applied to the root element if `error={true}`. */
+ error: {},
+
+ /* Styles applied to the root element if `multiline={true}`. */
+ multiline: {
+ padding: '27px 12px 10px',
+ boxSizing: 'border-box' // Prevent padding issue with fullWidth.
+
+ },
+
+ /* Styles applied to the `input` element. */
+ input: {
+ padding: '27px 12px 10px'
+ },
+
+ /* Styles applied to the `input` element if `margin="dense"`. */
+ inputMarginDense: {
+ paddingTop: 24,
+ paddingBottom: 6
+ },
+
+ /* Styles applied to the `input` element if `multiline={true}`. */
+ inputMultiline: {
+ padding: 0
+ },
+
+ /* Styles applied to the `input` element if `startAdornment` is provided. */
+ inputAdornedStart: {
+ paddingLeft: 0
+ },
+
+ /* Styles applied to the `input` element if `endAdornment` is provided. */
+ inputAdornedEnd: {
+ paddingRight: 0
+ }
+ };
+};
+
+exports.styles = styles;
+
+function FilledInput(props) {
+ var disableUnderline = props.disableUnderline,
+ classes = props.classes,
+ other = (0, _objectWithoutProperties2.default)(props, ["disableUnderline", "classes"]);
+ return _react.default.createElement(_InputBase.default, (0, _extends2.default)({
+ classes: (0, _extends2.default)({}, classes, {
+ root: (0, _classnames.default)(classes.root, (0, _defineProperty2.default)({}, classes.underline, !disableUnderline)),
+ underline: null
+ })
+ }, other));
+}
+
+ true ? FilledInput.propTypes = {
+ /**
+ * This property helps users to fill forms faster, especially on mobile devices.
+ * The name can be confusing, as it's more like an autofill.
+ * You can learn more about it here:
+ * https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofill
+ */
+ autoComplete: _propTypes.default.string,
+
+ /**
+ * If `true`, the input will be focused during the first mount.
+ */
+ autoFocus: _propTypes.default.bool,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * The CSS class name of the wrapper element.
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The default input value, useful when not controlling the component.
+ */
+ defaultValue: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number, _propTypes.default.bool, _propTypes.default.object, _propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number, _propTypes.default.bool, _propTypes.default.object]))]),
+
+ /**
+ * If `true`, the input will be disabled.
+ */
+ disabled: _propTypes.default.bool,
+
+ /**
+ * If `true`, the input will not have an underline.
+ */
+ disableUnderline: _propTypes.default.bool,
+
+ /**
+ * End `InputAdornment` for this component.
+ */
+ endAdornment: _propTypes.default.node,
+
+ /**
+ * If `true`, the input will indicate an error. This is normally obtained via context from
+ * FormControl.
+ */
+ error: _propTypes.default.bool,
+
+ /**
+ * If `true`, the input will take up the full width of its container.
+ */
+ fullWidth: _propTypes.default.bool,
+
+ /**
+ * The id of the `input` element.
+ */
+ id: _propTypes.default.string,
+
+ /**
+ * The component used for the native input.
+ * Either a string to use a DOM element or a component.
+ */
+ inputComponent: _utils.componentPropType,
+
+ /**
+ * Attributes applied to the `input` element.
+ */
+ inputProps: _propTypes.default.object,
+
+ /**
+ * Use that property to pass a ref callback to the native input component.
+ */
+ inputRef: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
+
+ /**
+ * If `dense`, will adjust vertical spacing. This is normally obtained via context from
+ * FormControl.
+ */
+ margin: _propTypes.default.oneOf(['dense', 'none']),
+
+ /**
+ * If `true`, a textarea element will be rendered.
+ */
+ multiline: _propTypes.default.bool,
+
+ /**
+ * Name attribute of the `input` element.
+ */
+ name: _propTypes.default.string,
+
+ /**
+ * Callback fired when the value is changed.
+ *
+ * @param {object} event The event source of the callback.
+ * You can pull out the new value by accessing `event.target.value`.
+ */
+ onChange: _propTypes.default.func,
+
+ /**
+ * The short hint displayed in the input before the user enters a value.
+ */
+ placeholder: _propTypes.default.string,
+
+ /**
+ * It prevents the user from changing the value of the field
+ * (not from interacting with the field).
+ */
+ readOnly: _propTypes.default.bool,
+
+ /**
+ * If `true`, the input will be required.
+ */
+ required: _propTypes.default.bool,
+
+ /**
+ * Number of rows to display when multiline option is set to true.
+ */
+ rows: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
+
+ /**
+ * Maximum number of rows to display when multiline option is set to true.
+ */
+ rowsMax: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
+
+ /**
+ * Start `InputAdornment` for this component.
+ */
+ startAdornment: _propTypes.default.node,
+
+ /**
+ * Type of the input element. It should be a valid HTML5 input type.
+ */
+ type: _propTypes.default.string,
+
+ /**
+ * The input value, required for a controlled component.
+ */
+ value: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number, _propTypes.default.bool, _propTypes.default.object, _propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number, _propTypes.default.bool, _propTypes.default.object]))])
+} : undefined;
+_InputBase.default.defaultProps = {
+ fullWidth: false,
+ inputComponent: 'input',
+ multiline: false,
+ type: 'text'
+};
+FilledInput.muiName = 'Input';
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiFilledInput'
+})(FilledInput);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/FilledInput/index.js":
+/*!*******************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/FilledInput/index.js ***!
+ \*******************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _FilledInput.default;
+ }
+});
+
+var _FilledInput = _interopRequireDefault(__webpack_require__(/*! ./FilledInput */ "../../node_modules/@material-ui/core/FilledInput/FilledInput.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/FormControl/FormControl.js":
+/*!*************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/FormControl/FormControl.js ***!
+ \*************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../../node_modules/@babel/runtime/helpers/classCallCheck.js"));
+
+var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
+
+var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
+
+var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../../node_modules/@babel/runtime/helpers/createClass.js"));
+
+var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../../node_modules/@babel/runtime/helpers/inherits.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _utils2 = __webpack_require__(/*! ../InputBase/utils */ "../../node_modules/@material-ui/core/InputBase/utils.js");
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _helpers = __webpack_require__(/*! ../utils/helpers */ "../../node_modules/@material-ui/core/utils/helpers.js");
+
+var _reactHelpers = __webpack_require__(/*! ../utils/reactHelpers */ "../../node_modules/@material-ui/core/utils/reactHelpers.js");
+
+var _FormControlContext = _interopRequireDefault(__webpack_require__(/*! ./FormControlContext */ "../../node_modules/@material-ui/core/FormControl/FormControlContext.js"));
+
+var styles = {
+ /* Styles applied to the root element. */
+ root: {
+ display: 'inline-flex',
+ flexDirection: 'column',
+ position: 'relative',
+ // Reset fieldset default style.
+ minWidth: 0,
+ padding: 0,
+ margin: 0,
+ border: 0,
+ verticalAlign: 'top' // Fix alignment issue on Safari.
+
+ },
+
+ /* Styles applied to the root element if `margin="normal"`. */
+ marginNormal: {
+ marginTop: 16,
+ marginBottom: 8
+ },
+
+ /* Styles applied to the root element if `margin="dense"`. */
+ marginDense: {
+ marginTop: 8,
+ marginBottom: 4
+ },
+
+ /* Styles applied to the root element if `fullWidth={true}`. */
+ fullWidth: {
+ width: '100%'
+ }
+};
+/**
+ * Provides context such as filled/focused/error/required for form inputs.
+ * Relying on the context provides high flexibility and ensures that the state always stays
+ * consistent across the children of the `FormControl`.
+ * This context is used by the following components:
+ * - FormLabel
+ * - FormHelperText
+ * - Input
+ * - InputLabel
+ *
+ * ⚠️ Only one input can be used within a FormControl.
+ */
+
+exports.styles = styles;
+
+var FormControl =
+/*#__PURE__*/
+function (_React$Component) {
+ (0, _inherits2.default)(FormControl, _React$Component);
+ (0, _createClass2.default)(FormControl, null, [{
+ key: "getDerivedStateFromProps",
+ value: function getDerivedStateFromProps(props, state) {
+ if (props.disabled && state.focused) {
+ return {
+ focused: false
+ };
+ }
+
+ return null;
+ }
+ }]);
+
+ function FormControl(props) {
+ var _this;
+
+ (0, _classCallCheck2.default)(this, FormControl);
+ _this = (0, _possibleConstructorReturn2.default)(this, (0, _getPrototypeOf2.default)(FormControl).call(this));
+
+ _this.handleFocus = function () {
+ _this.setState(function (state) {
+ return !state.focused ? {
+ focused: true
+ } : null;
+ });
+ };
+
+ _this.handleBlur = function () {
+ _this.setState(function (state) {
+ return state.focused ? {
+ focused: false
+ } : null;
+ });
+ };
+
+ _this.handleDirty = function () {
+ if (!_this.state.filled) {
+ _this.setState({
+ filled: true
+ });
+ }
+ };
+
+ _this.handleClean = function () {
+ if (_this.state.filled) {
+ _this.setState({
+ filled: false
+ });
+ }
+ };
+
+ _this.state = {
+ adornedStart: false,
+ filled: false,
+ focused: false
+ }; // We need to iterate through the children and find the Input in order
+ // to fully support server-side rendering.
+
+ var children = props.children;
+
+ if (children) {
+ _react.default.Children.forEach(children, function (child) {
+ if (!(0, _reactHelpers.isMuiElement)(child, ['Input', 'Select'])) {
+ return;
+ }
+
+ if ((0, _utils2.isFilled)(child.props, true)) {
+ _this.state.filled = true;
+ }
+
+ var input = (0, _reactHelpers.isMuiElement)(child, ['Select']) ? child.props.input : child;
+
+ if (input && (0, _utils2.isAdornedStart)(input.props)) {
+ _this.state.adornedStart = true;
+ }
+ });
+ }
+
+ return _this;
+ }
+
+ (0, _createClass2.default)(FormControl, [{
+ key: "render",
+ value: function render() {
+ var _classNames;
+
+ var _this$props = this.props,
+ classes = _this$props.classes,
+ className = _this$props.className,
+ Component = _this$props.component,
+ disabled = _this$props.disabled,
+ error = _this$props.error,
+ fullWidth = _this$props.fullWidth,
+ margin = _this$props.margin,
+ required = _this$props.required,
+ variant = _this$props.variant,
+ other = (0, _objectWithoutProperties2.default)(_this$props, ["classes", "className", "component", "disabled", "error", "fullWidth", "margin", "required", "variant"]);
+ var _this$state = this.state,
+ adornedStart = _this$state.adornedStart,
+ filled = _this$state.filled,
+ focused = _this$state.focused;
+ var childContext = {
+ adornedStart: adornedStart,
+ disabled: disabled,
+ error: error,
+ filled: filled,
+ focused: focused,
+ margin: margin,
+ onBlur: this.handleBlur,
+ onEmpty: this.handleClean,
+ onFilled: this.handleDirty,
+ onFocus: this.handleFocus,
+ required: required,
+ variant: variant
+ };
+ return _react.default.createElement(_FormControlContext.default.Provider, {
+ value: childContext
+ }, _react.default.createElement(Component, (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes["margin".concat((0, _helpers.capitalize)(margin))], margin !== 'none'), (0, _defineProperty2.default)(_classNames, classes.fullWidth, fullWidth), _classNames), className)
+ }, other)));
+ }
+ }]);
+ return FormControl;
+}(_react.default.Component);
+
+ true ? FormControl.propTypes = {
+ /**
+ * The contents of the form control.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a DOM element or a component.
+ */
+ component: _utils.componentPropType,
+
+ /**
+ * If `true`, the label, input and helper text should be displayed in a disabled state.
+ */
+ disabled: _propTypes.default.bool,
+
+ /**
+ * If `true`, the label should be displayed in an error state.
+ */
+ error: _propTypes.default.bool,
+
+ /**
+ * If `true`, the component will take up the full width of its container.
+ */
+ fullWidth: _propTypes.default.bool,
+
+ /**
+ * If `dense` or `normal`, will adjust vertical spacing of this and contained components.
+ */
+ margin: _propTypes.default.oneOf(['none', 'dense', 'normal']),
+
+ /**
+ * If `true`, the label will indicate that the input is required.
+ */
+ required: _propTypes.default.bool,
+
+ /**
+ * The variant to use.
+ */
+ variant: _propTypes.default.oneOf(['standard', 'outlined', 'filled'])
+} : undefined;
+FormControl.defaultProps = {
+ component: 'div',
+ disabled: false,
+ error: false,
+ fullWidth: false,
+ margin: 'none',
+ required: false,
+ variant: 'standard'
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiFormControl'
+})(FormControl);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/FormControl/FormControlContext.js":
+/*!********************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/FormControl/FormControlContext.js ***!
+ \********************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = void 0;
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+/**
+ * @ignore - internal component.
+ */
+var FormControlContext = _react.default.createContext();
+
+var _default = FormControlContext;
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/FormControl/formControlState.js":
+/*!******************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/FormControl/formControlState.js ***!
+ \******************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = formControlState;
+
+function formControlState(_ref) {
+ var props = _ref.props,
+ states = _ref.states,
+ muiFormControl = _ref.muiFormControl;
+ return states.reduce(function (acc, state) {
+ acc[state] = props[state];
+
+ if (muiFormControl) {
+ if (typeof props[state] === 'undefined') {
+ acc[state] = muiFormControl[state];
+ }
+ }
+
+ return acc;
+ }, {});
+}
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/FormControl/index.js":
+/*!*******************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/FormControl/index.js ***!
+ \*******************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _FormControl.default;
+ }
+});
+
+var _FormControl = _interopRequireDefault(__webpack_require__(/*! ./FormControl */ "../../node_modules/@material-ui/core/FormControl/FormControl.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/FormControl/withFormControlContext.js":
+/*!************************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/FormControl/withFormControlContext.js ***!
+ \************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = withFormControlContext;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _hoistNonReactStatics = _interopRequireDefault(__webpack_require__(/*! hoist-non-react-statics */ "../../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js"));
+
+var _FormControlContext = _interopRequireDefault(__webpack_require__(/*! ./FormControlContext */ "../../node_modules/@material-ui/core/FormControl/FormControlContext.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+function withFormControlContext(Component) {
+ var EnhancedComponent = function EnhancedComponent(props) {
+ return _react.default.createElement(_FormControlContext.default.Consumer, null, function (context) {
+ return _react.default.createElement(Component, (0, _extends2.default)({
+ muiFormControl: context
+ }, props));
+ });
+ };
+
+ if (true) {
+ EnhancedComponent.displayName = "WithFormControlContext(".concat((0, _utils.getDisplayName)(Component), ")");
+ }
+
+ (0, _hoistNonReactStatics.default)(EnhancedComponent, Component);
+ return EnhancedComponent;
+}
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/FormControlLabel/FormControlLabel.js":
+/*!***********************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/FormControlLabel/FormControlLabel.js ***!
+ \***********************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _withFormControlContext = _interopRequireDefault(__webpack_require__(/*! ../FormControl/withFormControlContext */ "../../node_modules/@material-ui/core/FormControl/withFormControlContext.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _Typography = _interopRequireDefault(__webpack_require__(/*! ../Typography */ "../../node_modules/@material-ui/core/Typography/index.js"));
+
+var _helpers = __webpack_require__(/*! ../utils/helpers */ "../../node_modules/@material-ui/core/utils/helpers.js");
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ display: 'inline-flex',
+ alignItems: 'center',
+ cursor: 'pointer',
+ // For correct alignment with the text.
+ verticalAlign: 'middle',
+ // Remove grey highlight
+ WebkitTapHighlightColor: 'transparent',
+ marginLeft: -14,
+ marginRight: 16,
+ // used for row presentation of radio/checkbox
+ '&$disabled': {
+ cursor: 'default'
+ }
+ },
+
+ /* Styles applied to the root element if `labelPlacement="start"`. */
+ labelPlacementStart: {
+ flexDirection: 'row-reverse',
+ marginLeft: 16,
+ // used for row presentation of radio/checkbox
+ marginRight: -14
+ },
+
+ /* Styles applied to the root element if `labelPlacement="top"`. */
+ labelPlacementTop: {
+ flexDirection: 'column-reverse',
+ marginLeft: 16
+ },
+
+ /* Styles applied to the root element if `labelPlacement="bottom"`. */
+ labelPlacementBottom: {
+ flexDirection: 'column',
+ marginLeft: 16
+ },
+
+ /* Styles applied to the root element if `disabled={true}`. */
+ disabled: {},
+
+ /* Styles applied to the label's Typography component. */
+ label: {
+ '&$disabled': {
+ color: theme.palette.text.disabled
+ }
+ }
+ };
+};
+/**
+ * Drop in replacement of the `Radio`, `Switch` and `Checkbox` component.
+ * Use this component if you want to display an extra label.
+ */
+
+
+exports.styles = styles;
+
+function FormControlLabel(props) {
+ var _classNames;
+
+ var checked = props.checked,
+ classes = props.classes,
+ classNameProp = props.className,
+ control = props.control,
+ disabledProp = props.disabled,
+ inputRef = props.inputRef,
+ label = props.label,
+ labelPlacement = props.labelPlacement,
+ muiFormControl = props.muiFormControl,
+ name = props.name,
+ onChange = props.onChange,
+ value = props.value,
+ other = (0, _objectWithoutProperties2.default)(props, ["checked", "classes", "className", "control", "disabled", "inputRef", "label", "labelPlacement", "muiFormControl", "name", "onChange", "value"]);
+ var disabled = disabledProp;
+
+ if (typeof disabled === 'undefined' && typeof control.props.disabled !== 'undefined') {
+ disabled = control.props.disabled;
+ }
+
+ if (typeof disabled === 'undefined' && muiFormControl) {
+ disabled = muiFormControl.disabled;
+ }
+
+ var controlProps = {
+ disabled: disabled
+ };
+ ['checked', 'name', 'onChange', 'value', 'inputRef'].forEach(function (key) {
+ if (typeof control.props[key] === 'undefined' && typeof props[key] !== 'undefined') {
+ controlProps[key] = props[key];
+ }
+ });
+ return _react.default.createElement("label", (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes["labelPlacement".concat((0, _helpers.capitalize)(labelPlacement))], labelPlacement !== 'end'), (0, _defineProperty2.default)(_classNames, classes.disabled, disabled), _classNames), classNameProp)
+ }, other), _react.default.cloneElement(control, controlProps), _react.default.createElement(_Typography.default, {
+ component: "span",
+ className: (0, _classnames.default)(classes.label, (0, _defineProperty2.default)({}, classes.disabled, disabled))
+ }, label));
+}
+
+ true ? FormControlLabel.propTypes = {
+ /**
+ * If `true`, the component appears selected.
+ */
+ checked: _propTypes.default.oneOfType([_propTypes.default.bool, _propTypes.default.string]),
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * A control element. For instance, it can be be a `Radio`, a `Switch` or a `Checkbox`.
+ */
+ control: _propTypes.default.element,
+
+ /**
+ * If `true`, the control will be disabled.
+ */
+ disabled: _propTypes.default.bool,
+
+ /**
+ * Use that property to pass a ref callback to the native input component.
+ */
+ inputRef: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
+
+ /**
+ * The text to be used in an enclosing label element.
+ */
+ label: _propTypes.default.node,
+
+ /**
+ * The position of the label.
+ */
+ labelPlacement: _propTypes.default.oneOf(['end', 'start', 'top', 'bottom']),
+
+ /**
+ * @ignore
+ */
+ muiFormControl: _propTypes.default.object,
+
+ /*
+ * @ignore
+ */
+ name: _propTypes.default.string,
+
+ /**
+ * Callback fired when the state is changed.
+ *
+ * @param {object} event The event source of the callback.
+ * You can pull out the new value by accessing `event.target.checked`.
+ * @param {boolean} checked The `checked` value of the switch
+ */
+ onChange: _propTypes.default.func,
+
+ /**
+ * The value of the component.
+ */
+ value: _propTypes.default.string
+} : undefined;
+FormControlLabel.defaultProps = {
+ labelPlacement: 'end'
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiFormControlLabel'
+})((0, _withFormControlContext.default)(FormControlLabel));
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/FormControlLabel/index.js":
+/*!************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/FormControlLabel/index.js ***!
+ \************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _FormControlLabel.default;
+ }
+});
+
+var _FormControlLabel = _interopRequireDefault(__webpack_require__(/*! ./FormControlLabel */ "../../node_modules/@material-ui/core/FormControlLabel/FormControlLabel.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/FormGroup/FormGroup.js":
+/*!*********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/FormGroup/FormGroup.js ***!
+ \*********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var styles = {
+ /* Styles applied to the root element. */
+ root: {
+ display: 'flex',
+ flexDirection: 'column',
+ flexWrap: 'wrap'
+ },
+
+ /* Styles applied to the root element if `row={true}`. */
+ row: {
+ flexDirection: 'row'
+ }
+};
+/**
+ * `FormGroup` wraps controls such as `Checkbox` and `Switch`.
+ * It provides compact row layout.
+ * For the `Radio`, you should be using the `RadioGroup` component instead of this one.
+ */
+
+exports.styles = styles;
+
+function FormGroup(props) {
+ var classes = props.classes,
+ className = props.className,
+ children = props.children,
+ row = props.row,
+ other = (0, _objectWithoutProperties2.default)(props, ["classes", "className", "children", "row"]);
+ return _react.default.createElement("div", (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, (0, _defineProperty2.default)({}, classes.row, row), className)
+ }, other), children);
+}
+
+ true ? FormGroup.propTypes = {
+ /**
+ * The content of the component.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * Display group of elements in a compact row.
+ */
+ row: _propTypes.default.bool
+} : undefined;
+FormGroup.defaultProps = {
+ row: false
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiFormGroup'
+})(FormGroup);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/FormGroup/index.js":
+/*!*****************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/FormGroup/index.js ***!
+ \*****************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _FormGroup.default;
+ }
+});
+
+var _FormGroup = _interopRequireDefault(__webpack_require__(/*! ./FormGroup */ "../../node_modules/@material-ui/core/FormGroup/FormGroup.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/FormHelperText/FormHelperText.js":
+/*!*******************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/FormHelperText/FormHelperText.js ***!
+ \*******************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _formControlState = _interopRequireDefault(__webpack_require__(/*! ../FormControl/formControlState */ "../../node_modules/@material-ui/core/FormControl/formControlState.js"));
+
+var _withFormControlContext = _interopRequireDefault(__webpack_require__(/*! ../FormControl/withFormControlContext */ "../../node_modules/@material-ui/core/FormControl/withFormControlContext.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ color: theme.palette.text.secondary,
+ fontFamily: theme.typography.fontFamily,
+ fontSize: theme.typography.pxToRem(12),
+ textAlign: 'left',
+ marginTop: 8,
+ lineHeight: '1em',
+ minHeight: '1em',
+ margin: 0,
+ '&$disabled': {
+ color: theme.palette.text.disabled
+ },
+ '&$error': {
+ color: theme.palette.error.main
+ }
+ },
+
+ /* Styles applied to the root element if `error={true}`. */
+ error: {},
+
+ /* Styles applied to the root element if `disabled={true}`. */
+ disabled: {},
+
+ /* Styles applied to the root element if `margin="dense"`. */
+ marginDense: {
+ marginTop: 4
+ },
+
+ /* Styles applied to the root element if `variant="filled"` or `variant="outlined"`. */
+ contained: {
+ margin: '8px 12px 0'
+ },
+
+ /* Styles applied to the root element if `focused={true}`. */
+ focused: {},
+
+ /* Styles applied to the root element if `filled={true}`. */
+ filled: {},
+
+ /* Styles applied to the root element if `required={true}`. */
+ required: {}
+ };
+};
+
+exports.styles = styles;
+
+function FormHelperText(props) {
+ var _classNames;
+
+ var classes = props.classes,
+ classNameProp = props.className,
+ Component = props.component,
+ disabled = props.disabled,
+ error = props.error,
+ filled = props.filled,
+ focused = props.focused,
+ margin = props.margin,
+ muiFormControl = props.muiFormControl,
+ required = props.required,
+ variant = props.variant,
+ other = (0, _objectWithoutProperties2.default)(props, ["classes", "className", "component", "disabled", "error", "filled", "focused", "margin", "muiFormControl", "required", "variant"]);
+ var fcs = (0, _formControlState.default)({
+ props: props,
+ muiFormControl: muiFormControl,
+ states: ['variant', 'margin', 'disabled', 'error', 'filled', 'focused', 'required']
+ });
+ return _react.default.createElement(Component, (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.contained, fcs.variant === 'filled' || fcs.variant === 'outlined'), (0, _defineProperty2.default)(_classNames, classes.marginDense, fcs.margin === 'dense'), (0, _defineProperty2.default)(_classNames, classes.disabled, fcs.disabled), (0, _defineProperty2.default)(_classNames, classes.error, fcs.error), (0, _defineProperty2.default)(_classNames, classes.filled, fcs.filled), (0, _defineProperty2.default)(_classNames, classes.focused, fcs.focused), (0, _defineProperty2.default)(_classNames, classes.required, fcs.required), _classNames), classNameProp)
+ }, other));
+}
+
+ true ? FormHelperText.propTypes = {
+ /**
+ * The content of the component.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a DOM element or a component.
+ */
+ component: _utils.componentPropType,
+
+ /**
+ * If `true`, the helper text should be displayed in a disabled state.
+ */
+ disabled: _propTypes.default.bool,
+
+ /**
+ * If `true`, helper text should be displayed in an error state.
+ */
+ error: _propTypes.default.bool,
+
+ /**
+ * If `true`, the helper text should use filled classes key.
+ */
+ filled: _propTypes.default.bool,
+
+ /**
+ * If `true`, the helper text should use focused classes key.
+ */
+ focused: _propTypes.default.bool,
+
+ /**
+ * If `dense`, will adjust vertical spacing. This is normally obtained via context from
+ * FormControl.
+ */
+ margin: _propTypes.default.oneOf(['dense']),
+
+ /**
+ * @ignore
+ */
+ muiFormControl: _propTypes.default.object,
+
+ /**
+ * If `true`, the helper text should use required classes key.
+ */
+ required: _propTypes.default.bool,
+
+ /**
+ * The variant to use.
+ */
+ variant: _propTypes.default.oneOf(['standard', 'outlined', 'filled'])
+} : undefined;
+FormHelperText.defaultProps = {
+ component: 'p'
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiFormHelperText'
+})((0, _withFormControlContext.default)(FormHelperText));
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/FormHelperText/index.js":
+/*!**********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/FormHelperText/index.js ***!
+ \**********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _FormHelperText.default;
+ }
+});
+
+var _FormHelperText = _interopRequireDefault(__webpack_require__(/*! ./FormHelperText */ "../../node_modules/@material-ui/core/FormHelperText/FormHelperText.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/FormLabel/FormLabel.js":
+/*!*********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/FormLabel/FormLabel.js ***!
+ \*********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _formControlState = _interopRequireDefault(__webpack_require__(/*! ../FormControl/formControlState */ "../../node_modules/@material-ui/core/FormControl/formControlState.js"));
+
+var _withFormControlContext = _interopRequireDefault(__webpack_require__(/*! ../FormControl/withFormControlContext */ "../../node_modules/@material-ui/core/FormControl/withFormControlContext.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ fontFamily: theme.typography.fontFamily,
+ color: theme.palette.text.secondary,
+ fontSize: theme.typography.pxToRem(16),
+ lineHeight: 1,
+ padding: 0,
+ '&$focused': {
+ color: theme.palette.primary[theme.palette.type === 'light' ? 'dark' : 'light']
+ },
+ '&$disabled': {
+ color: theme.palette.text.disabled
+ },
+ '&$error': {
+ color: theme.palette.error.main
+ }
+ },
+
+ /* Styles applied to the root element if `focused={true}`. */
+ focused: {},
+
+ /* Styles applied to the root element if `disabled={true}`. */
+ disabled: {},
+
+ /* Styles applied to the root element if `error={true}`. */
+ error: {},
+
+ /* Styles applied to the root element if `filled={true}`. */
+ filled: {},
+
+ /* Styles applied to the root element if `required={true}`. */
+ required: {},
+ asterisk: {
+ '&$error': {
+ color: theme.palette.error.main
+ }
+ }
+ };
+};
+
+exports.styles = styles;
+
+function FormLabel(props) {
+ var _classNames;
+
+ var children = props.children,
+ classes = props.classes,
+ classNameProp = props.className,
+ Component = props.component,
+ disabled = props.disabled,
+ error = props.error,
+ filled = props.filled,
+ focused = props.focused,
+ muiFormControl = props.muiFormControl,
+ required = props.required,
+ other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "component", "disabled", "error", "filled", "focused", "muiFormControl", "required"]);
+ var fcs = (0, _formControlState.default)({
+ props: props,
+ muiFormControl: muiFormControl,
+ states: ['required', 'focused', 'disabled', 'error', 'filled']
+ });
+ return _react.default.createElement(Component, (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.disabled, fcs.disabled), (0, _defineProperty2.default)(_classNames, classes.error, fcs.error), (0, _defineProperty2.default)(_classNames, classes.filled, fcs.filled), (0, _defineProperty2.default)(_classNames, classes.focused, fcs.focused), (0, _defineProperty2.default)(_classNames, classes.required, fcs.required), _classNames), classNameProp)
+ }, other), children, fcs.required && _react.default.createElement("span", {
+ className: (0, _classnames.default)(classes.asterisk, (0, _defineProperty2.default)({}, classes.error, fcs.error))
+ }, "\u2009*"));
+}
+
+ true ? FormLabel.propTypes = {
+ /**
+ * The content of the component.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a DOM element or a component.
+ */
+ component: _utils.componentPropType,
+
+ /**
+ * If `true`, the label should be displayed in a disabled state.
+ */
+ disabled: _propTypes.default.bool,
+
+ /**
+ * If `true`, the label should be displayed in an error state.
+ */
+ error: _propTypes.default.bool,
+
+ /**
+ * If `true`, the label should use filled classes key.
+ */
+ filled: _propTypes.default.bool,
+
+ /**
+ * If `true`, the input of this label is focused (used by `FormGroup` components).
+ */
+ focused: _propTypes.default.bool,
+
+ /**
+ * @ignore
+ */
+ muiFormControl: _propTypes.default.object,
+
+ /**
+ * If `true`, the label will indicate that the input is required.
+ */
+ required: _propTypes.default.bool
+} : undefined;
+FormLabel.defaultProps = {
+ component: 'label'
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiFormLabel'
+})((0, _withFormControlContext.default)(FormLabel));
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/FormLabel/index.js":
+/*!*****************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/FormLabel/index.js ***!
+ \*****************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _FormLabel.default;
+ }
+});
+
+var _FormLabel = _interopRequireDefault(__webpack_require__(/*! ./FormLabel */ "../../node_modules/@material-ui/core/FormLabel/FormLabel.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Grid/Grid.js":
+/*!***********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Grid/Grid.js ***!
+ \***********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _createBreakpoints = __webpack_require__(/*! ../styles/createBreakpoints */ "../../node_modules/@material-ui/core/styles/createBreakpoints.js");
+
+var _requirePropFactory = _interopRequireDefault(__webpack_require__(/*! ../utils/requirePropFactory */ "../../node_modules/@material-ui/core/utils/requirePropFactory.js"));
+
+// A grid component using the following libs as inspiration.
+//
+// For the implementation:
+// - http://v4-alpha.getbootstrap.com/layout/flexbox-grid/
+// - https://github.com/kristoferjoseph/flexboxgrid/blob/master/src/css/flexboxgrid.css
+// - https://github.com/roylee0704/react-flexbox-grid
+// - https://material.angularjs.org/latest/layout/introduction
+//
+// Follow this flexbox Guide to better understand the underlying model:
+// - https://css-tricks.com/snippets/css/a-guide-to-flexbox/
+var GUTTERS = [0, 8, 16, 24, 32, 40];
+var GRID_SIZES = ['auto', true, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12];
+
+function generateGrid(globalStyles, theme, breakpoint) {
+ var styles = {};
+ GRID_SIZES.forEach(function (size) {
+ var key = "grid-".concat(breakpoint, "-").concat(size);
+
+ if (size === true) {
+ // For the auto layouting
+ styles[key] = {
+ flexBasis: 0,
+ flexGrow: 1,
+ maxWidth: '100%'
+ };
+ return;
+ }
+
+ if (size === 'auto') {
+ styles[key] = {
+ flexBasis: 'auto',
+ flexGrow: 0,
+ maxWidth: 'none'
+ };
+ return;
+ } // Keep 7 significant numbers.
+
+
+ var width = "".concat(Math.round(size / 12 * 10e7) / 10e5, "%"); // Close to the bootstrap implementation:
+ // https://github.com/twbs/bootstrap/blob/8fccaa2439e97ec72a4b7dc42ccc1f649790adb0/scss/mixins/_grid.scss#L41
+
+ styles[key] = {
+ flexBasis: width,
+ flexGrow: 0,
+ maxWidth: width
+ };
+ }); // No need for a media query for the first size.
+
+ if (breakpoint === 'xs') {
+ (0, _extends2.default)(globalStyles, styles);
+ } else {
+ globalStyles[theme.breakpoints.up(breakpoint)] = styles;
+ }
+}
+
+function generateGutter(theme, breakpoint) {
+ var styles = {};
+ GUTTERS.forEach(function (spacing, index) {
+ if (index === 0) {
+ // Skip the default style.
+ return;
+ }
+
+ styles["spacing-".concat(breakpoint, "-").concat(spacing)] = {
+ margin: -spacing / 2,
+ width: "calc(100% + ".concat(spacing, "px)"),
+ '& > $item': {
+ padding: spacing / 2
+ }
+ };
+ });
+ return styles;
+} // Default CSS values
+// flex: '0 1 auto',
+// flexDirection: 'row',
+// alignItems: 'flex-start',
+// flexWrap: 'nowrap',
+// justifyContent: 'flex-start',
+
+
+var styles = function styles(theme) {
+ return (0, _extends2.default)({
+ /* Styles applied to the root element if `container={true}`. */
+ container: {
+ boxSizing: 'border-box',
+ display: 'flex',
+ flexWrap: 'wrap',
+ width: '100%'
+ },
+
+ /* Styles applied to the root element if `item={true}`. */
+ item: {
+ boxSizing: 'border-box',
+ margin: '0' // For instance, it's useful when used with a `figure` element.
+
+ },
+
+ /* Styles applied to the root element if `zeroMinWidth={true}`. */
+ zeroMinWidth: {
+ minWidth: 0
+ },
+
+ /* Styles applied to the root element if `direction="column"`. */
+ 'direction-xs-column': {
+ flexDirection: 'column'
+ },
+
+ /* Styles applied to the root element if `direction="column-reverse"`. */
+ 'direction-xs-column-reverse': {
+ flexDirection: 'column-reverse'
+ },
+
+ /* Styles applied to the root element if `direction="rwo-reverse"`. */
+ 'direction-xs-row-reverse': {
+ flexDirection: 'row-reverse'
+ },
+
+ /* Styles applied to the root element if `wrap="nowrap"`. */
+ 'wrap-xs-nowrap': {
+ flexWrap: 'nowrap'
+ },
+
+ /* Styles applied to the root element if `wrap="reverse"`. */
+ 'wrap-xs-wrap-reverse': {
+ flexWrap: 'wrap-reverse'
+ },
+
+ /* Styles applied to the root element if `alignItems="center"`. */
+ 'align-items-xs-center': {
+ alignItems: 'center'
+ },
+
+ /* Styles applied to the root element if `alignItems="flex-start"`. */
+ 'align-items-xs-flex-start': {
+ alignItems: 'flex-start'
+ },
+
+ /* Styles applied to the root element if `alignItems="flex-end"`. */
+ 'align-items-xs-flex-end': {
+ alignItems: 'flex-end'
+ },
+
+ /* Styles applied to the root element if `alignItems="baseline"`. */
+ 'align-items-xs-baseline': {
+ alignItems: 'baseline'
+ },
+
+ /* Styles applied to the root element if `alignContent="center"`. */
+ 'align-content-xs-center': {
+ alignContent: 'center'
+ },
+
+ /* Styles applied to the root element if `alignContent="flex-start"`. */
+ 'align-content-xs-flex-start': {
+ alignContent: 'flex-start'
+ },
+
+ /* Styles applied to the root element if `alignContent="flex-end"`. */
+ 'align-content-xs-flex-end': {
+ alignContent: 'flex-end'
+ },
+
+ /* Styles applied to the root element if `alignContent="space-between"`. */
+ 'align-content-xs-space-between': {
+ alignContent: 'space-between'
+ },
+
+ /* Styles applied to the root element if `alignContent="space-around"`. */
+ 'align-content-xs-space-around': {
+ alignContent: 'space-around'
+ },
+
+ /* Styles applied to the root element if `justify="center"`. */
+ 'justify-xs-center': {
+ justifyContent: 'center'
+ },
+
+ /* Styles applied to the root element if `justify="flex-end"`. */
+ 'justify-xs-flex-end': {
+ justifyContent: 'flex-end'
+ },
+
+ /* Styles applied to the root element if `justify="space-between"`. */
+ 'justify-xs-space-between': {
+ justifyContent: 'space-between'
+ },
+
+ /* Styles applied to the root element if `justify="space-around"`. */
+ 'justify-xs-space-around': {
+ justifyContent: 'space-around'
+ },
+
+ /* Styles applied to the root element if `justify="space-evenly"`. */
+ 'justify-xs-space-evenly': {
+ justifyContent: 'space-evenly'
+ }
+ }, generateGutter(theme, 'xs'), _createBreakpoints.keys.reduce(function (accumulator, key) {
+ // Use side effect over immutability for better performance.
+ generateGrid(accumulator, theme, key);
+ return accumulator;
+ }, {}));
+};
+
+exports.styles = styles;
+
+function Grid(props) {
+ var _classNames;
+
+ var alignContent = props.alignContent,
+ alignItems = props.alignItems,
+ classes = props.classes,
+ classNameProp = props.className,
+ Component = props.component,
+ container = props.container,
+ direction = props.direction,
+ item = props.item,
+ justify = props.justify,
+ lg = props.lg,
+ md = props.md,
+ sm = props.sm,
+ spacing = props.spacing,
+ wrap = props.wrap,
+ xl = props.xl,
+ xs = props.xs,
+ zeroMinWidth = props.zeroMinWidth,
+ other = (0, _objectWithoutProperties2.default)(props, ["alignContent", "alignItems", "classes", "className", "component", "container", "direction", "item", "justify", "lg", "md", "sm", "spacing", "wrap", "xl", "xs", "zeroMinWidth"]);
+ var className = (0, _classnames.default)((_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.container, container), (0, _defineProperty2.default)(_classNames, classes.item, item), (0, _defineProperty2.default)(_classNames, classes.zeroMinWidth, zeroMinWidth), (0, _defineProperty2.default)(_classNames, classes["spacing-xs-".concat(String(spacing))], container && spacing !== 0), (0, _defineProperty2.default)(_classNames, classes["direction-xs-".concat(String(direction))], direction !== Grid.defaultProps.direction), (0, _defineProperty2.default)(_classNames, classes["wrap-xs-".concat(String(wrap))], wrap !== Grid.defaultProps.wrap), (0, _defineProperty2.default)(_classNames, classes["align-items-xs-".concat(String(alignItems))], alignItems !== Grid.defaultProps.alignItems), (0, _defineProperty2.default)(_classNames, classes["align-content-xs-".concat(String(alignContent))], alignContent !== Grid.defaultProps.alignContent), (0, _defineProperty2.default)(_classNames, classes["justify-xs-".concat(String(justify))], justify !== Grid.defaultProps.justify), (0, _defineProperty2.default)(_classNames, classes["grid-xs-".concat(String(xs))], xs !== false), (0, _defineProperty2.default)(_classNames, classes["grid-sm-".concat(String(sm))], sm !== false), (0, _defineProperty2.default)(_classNames, classes["grid-md-".concat(String(md))], md !== false), (0, _defineProperty2.default)(_classNames, classes["grid-lg-".concat(String(lg))], lg !== false), (0, _defineProperty2.default)(_classNames, classes["grid-xl-".concat(String(xl))], xl !== false), _classNames), classNameProp);
+ return _react.default.createElement(Component, (0, _extends2.default)({
+ className: className
+ }, other));
+}
+
+ true ? Grid.propTypes = {
+ /**
+ * Defines the `align-content` style property.
+ * It's applied for all screen sizes.
+ */
+ alignContent: _propTypes.default.oneOf(['stretch', 'center', 'flex-start', 'flex-end', 'space-between', 'space-around']),
+
+ /**
+ * Defines the `align-items` style property.
+ * It's applied for all screen sizes.
+ */
+ alignItems: _propTypes.default.oneOf(['flex-start', 'center', 'flex-end', 'stretch', 'baseline']),
+
+ /**
+ * The content of the component.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a DOM element or a component.
+ */
+ component: _utils.componentPropType,
+
+ /**
+ * If `true`, the component will have the flex *container* behavior.
+ * You should be wrapping *items* with a *container*.
+ */
+ container: _propTypes.default.bool,
+
+ /**
+ * Defines the `flex-direction` style property.
+ * It is applied for all screen sizes.
+ */
+ direction: _propTypes.default.oneOf(['row', 'row-reverse', 'column', 'column-reverse']),
+
+ /**
+ * If `true`, the component will have the flex *item* behavior.
+ * You should be wrapping *items* with a *container*.
+ */
+ item: _propTypes.default.bool,
+
+ /**
+ * Defines the `justify-content` style property.
+ * It is applied for all screen sizes.
+ */
+ justify: _propTypes.default.oneOf(['flex-start', 'center', 'flex-end', 'space-between', 'space-around', 'space-evenly']),
+
+ /**
+ * Defines the number of grids the component is going to use.
+ * It's applied for the `lg` breakpoint and wider screens if not overridden.
+ */
+ lg: _propTypes.default.oneOf([false, 'auto', true, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]),
+
+ /**
+ * Defines the number of grids the component is going to use.
+ * It's applied for the `md` breakpoint and wider screens if not overridden.
+ */
+ md: _propTypes.default.oneOf([false, 'auto', true, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]),
+
+ /**
+ * Defines the number of grids the component is going to use.
+ * It's applied for the `sm` breakpoint and wider screens if not overridden.
+ */
+ sm: _propTypes.default.oneOf([false, 'auto', true, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]),
+
+ /**
+ * Defines the space between the type `item` component.
+ * It can only be used on a type `container` component.
+ */
+ spacing: _propTypes.default.oneOf(GUTTERS),
+
+ /**
+ * Defines the `flex-wrap` style property.
+ * It's applied for all screen sizes.
+ */
+ wrap: _propTypes.default.oneOf(['nowrap', 'wrap', 'wrap-reverse']),
+
+ /**
+ * Defines the number of grids the component is going to use.
+ * It's applied for the `xl` breakpoint and wider screens.
+ */
+ xl: _propTypes.default.oneOf([false, 'auto', true, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]),
+
+ /**
+ * Defines the number of grids the component is going to use.
+ * It's applied for all the screen sizes with the lowest priority.
+ */
+ xs: _propTypes.default.oneOf([false, 'auto', true, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]),
+
+ /**
+ * If `true`, it sets `min-width: 0` on the item.
+ * Refer to the limitations section of the documentation to better understand the use case.
+ */
+ zeroMinWidth: _propTypes.default.bool
+} : undefined;
+Grid.defaultProps = {
+ alignContent: 'stretch',
+ alignItems: 'stretch',
+ component: 'div',
+ container: false,
+ direction: 'row',
+ item: false,
+ justify: 'flex-start',
+ lg: false,
+ md: false,
+ sm: false,
+ spacing: 0,
+ wrap: 'wrap',
+ xl: false,
+ xs: false,
+ zeroMinWidth: false
+};
+var StyledGrid = (0, _withStyles.default)(styles, {
+ name: 'MuiGrid'
+})(Grid);
+
+if (true) {
+ var requireProp = (0, _requirePropFactory.default)('Grid');
+ StyledGrid.propTypes = (0, _extends2.default)({}, StyledGrid.propTypes, {
+ alignContent: requireProp('container'),
+ alignItems: requireProp('container'),
+ direction: requireProp('container'),
+ justify: requireProp('container'),
+ lg: requireProp('item'),
+ md: requireProp('item'),
+ sm: requireProp('item'),
+ spacing: requireProp('container'),
+ wrap: requireProp('container'),
+ xs: requireProp('item'),
+ zeroMinWidth: requireProp('zeroMinWidth')
+ });
+}
+
+var _default = StyledGrid;
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Grid/index.js":
+/*!************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Grid/index.js ***!
+ \************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Grid.default;
+ }
+});
+
+var _Grid = _interopRequireDefault(__webpack_require__(/*! ./Grid */ "../../node_modules/@material-ui/core/Grid/Grid.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/GridList/GridList.js":
+/*!*******************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/GridList/GridList.js ***!
+ \*******************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _warning = _interopRequireDefault(__webpack_require__(/*! warning */ "../../node_modules/warning/warning.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var styles = {
+ /* Styles applied to the root element. */
+ root: {
+ display: 'flex',
+ flexWrap: 'wrap',
+ overflowY: 'auto',
+ listStyle: 'none',
+ padding: 0,
+ WebkitOverflowScrolling: 'touch' // Add iOS momentum scrolling.
+
+ }
+};
+exports.styles = styles;
+
+function GridList(props) {
+ var cellHeight = props.cellHeight,
+ children = props.children,
+ classes = props.classes,
+ classNameProp = props.className,
+ cols = props.cols,
+ Component = props.component,
+ spacing = props.spacing,
+ style = props.style,
+ other = (0, _objectWithoutProperties2.default)(props, ["cellHeight", "children", "classes", "className", "cols", "component", "spacing", "style"]);
+ return _react.default.createElement(Component, (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, classNameProp),
+ style: (0, _extends2.default)({
+ margin: -spacing / 2
+ }, style)
+ }, other), _react.default.Children.map(children, function (child) {
+ if (!_react.default.isValidElement(child)) {
+ return null;
+ }
+
+ true ? (0, _warning.default)(child.type !== _react.default.Fragment, ["Material-UI: the GridList component doesn't accept a Fragment as a child.", 'Consider providing an array instead.'].join('\n')) : undefined;
+ var childCols = child.props.cols || 1;
+ var childRows = child.props.rows || 1;
+ return _react.default.cloneElement(child, {
+ style: (0, _extends2.default)({
+ width: "".concat(100 / cols * childCols, "%"),
+ height: cellHeight === 'auto' ? 'auto' : cellHeight * childRows + spacing,
+ padding: spacing / 2
+ }, child.props.style)
+ });
+ }));
+}
+
+ true ? GridList.propTypes = {
+ /**
+ * Number of px for one cell height.
+ * You can set `'auto'` if you want to let the children determine the height.
+ */
+ cellHeight: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.oneOf(['auto'])]),
+
+ /**
+ * Grid Tiles that will be in Grid List.
+ */
+ children: _propTypes.default.node.isRequired,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * Number of columns.
+ */
+ cols: _propTypes.default.number,
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a DOM element or a component.
+ */
+ component: _utils.componentPropType,
+
+ /**
+ * Number of px for the spacing between tiles.
+ */
+ spacing: _propTypes.default.number,
+
+ /**
+ * @ignore
+ */
+ style: _propTypes.default.object
+} : undefined;
+GridList.defaultProps = {
+ cellHeight: 180,
+ cols: 2,
+ component: 'ul',
+ spacing: 4
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiGridList'
+})(GridList);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/GridList/index.js":
+/*!****************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/GridList/index.js ***!
+ \****************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _GridList.default;
+ }
+});
+
+var _GridList = _interopRequireDefault(__webpack_require__(/*! ./GridList */ "../../node_modules/@material-ui/core/GridList/GridList.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/GridListTile/GridListTile.js":
+/*!***************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/GridListTile/GridListTile.js ***!
+ \***************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
+
+var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../../node_modules/@babel/runtime/helpers/classCallCheck.js"));
+
+var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../../node_modules/@babel/runtime/helpers/createClass.js"));
+
+var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
+
+var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
+
+var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../../node_modules/@babel/runtime/helpers/inherits.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _reactEventListener = _interopRequireDefault(__webpack_require__(/*! react-event-listener */ "../../node_modules/react-event-listener/dist/react-event-listener.cjs.js"));
+
+var _debounce = _interopRequireDefault(__webpack_require__(/*! debounce */ "../../node_modules/debounce/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+// < 1kb payload overhead when lodash/debounce is > 3kb.
+var styles = {
+ /* Styles applied to the root element. */
+ root: {
+ boxSizing: 'border-box',
+ flexShrink: 0
+ },
+
+ /* Styles applied to the `div` element that wraps the children. */
+ tile: {
+ position: 'relative',
+ display: 'block',
+ // In case it's not rendered with a div.
+ height: '100%',
+ overflow: 'hidden'
+ },
+
+ /* Styles applied to an `img` element child, if needed to ensure it covers the tile. */
+ imgFullHeight: {
+ height: '100%',
+ transform: 'translateX(-50%)',
+ position: 'relative',
+ left: '50%'
+ },
+
+ /* Styles applied to an `img` element child, if needed to ensure it covers the tile. */
+ imgFullWidth: {
+ width: '100%',
+ position: 'relative',
+ transform: 'translateY(-50%)',
+ top: '50%'
+ }
+};
+exports.styles = styles;
+
+var GridListTile =
+/*#__PURE__*/
+function (_React$Component) {
+ (0, _inherits2.default)(GridListTile, _React$Component);
+
+ function GridListTile() {
+ var _this;
+
+ (0, _classCallCheck2.default)(this, GridListTile);
+ _this = (0, _possibleConstructorReturn2.default)(this, (0, _getPrototypeOf2.default)(GridListTile).call(this));
+
+ _this.fit = function () {
+ var imgElement = _this.imgElement;
+
+ if (!imgElement || !imgElement.complete) {
+ return;
+ }
+
+ if (imgElement.width / imgElement.height > imgElement.parentNode.offsetWidth / imgElement.parentNode.offsetHeight) {
+ var _imgElement$classList, _imgElement$classList2;
+
+ (_imgElement$classList = imgElement.classList).remove.apply(_imgElement$classList, (0, _toConsumableArray2.default)(_this.props.classes.imgFullWidth.split(' ')));
+
+ (_imgElement$classList2 = imgElement.classList).add.apply(_imgElement$classList2, (0, _toConsumableArray2.default)(_this.props.classes.imgFullHeight.split(' ')));
+ } else {
+ var _imgElement$classList3, _imgElement$classList4;
+
+ (_imgElement$classList3 = imgElement.classList).remove.apply(_imgElement$classList3, (0, _toConsumableArray2.default)(_this.props.classes.imgFullHeight.split(' ')));
+
+ (_imgElement$classList4 = imgElement.classList).add.apply(_imgElement$classList4, (0, _toConsumableArray2.default)(_this.props.classes.imgFullWidth.split(' ')));
+ }
+
+ imgElement.removeEventListener('load', _this.fit);
+ };
+
+ if (typeof window !== 'undefined') {
+ _this.handleResize = (0, _debounce.default)(function () {
+ _this.fit();
+ }, 166); // Corresponds to 10 frames at 60 Hz.
+ }
+
+ return _this;
+ }
+
+ (0, _createClass2.default)(GridListTile, [{
+ key: "componentDidMount",
+ value: function componentDidMount() {
+ this.ensureImageCover();
+ }
+ }, {
+ key: "componentDidUpdate",
+ value: function componentDidUpdate() {
+ this.ensureImageCover();
+ }
+ }, {
+ key: "componentWillUnmount",
+ value: function componentWillUnmount() {
+ this.handleResize.clear();
+ }
+ }, {
+ key: "ensureImageCover",
+ value: function ensureImageCover() {
+ if (!this.imgElement) {
+ return;
+ }
+
+ if (this.imgElement.complete) {
+ this.fit();
+ } else {
+ this.imgElement.addEventListener('load', this.fit);
+ }
+ }
+ }, {
+ key: "render",
+ value: function render() {
+ var _this2 = this;
+
+ var _this$props = this.props,
+ children = _this$props.children,
+ classes = _this$props.classes,
+ className = _this$props.className,
+ cols = _this$props.cols,
+ Component = _this$props.component,
+ rows = _this$props.rows,
+ other = (0, _objectWithoutProperties2.default)(_this$props, ["children", "classes", "className", "cols", "component", "rows"]);
+ return _react.default.createElement(Component, (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, className)
+ }, other), _react.default.createElement(_reactEventListener.default, {
+ target: "window",
+ onResize: this.handleResize
+ }), _react.default.createElement("div", {
+ className: classes.tile
+ }, _react.default.Children.map(children, function (child) {
+ if (!_react.default.isValidElement(child)) {
+ return null;
+ }
+
+ if (child.type === 'img') {
+ return _react.default.cloneElement(child, {
+ ref: function ref(node) {
+ _this2.imgElement = node;
+ }
+ });
+ }
+
+ return child;
+ })));
+ }
+ }]);
+ return GridListTile;
+}(_react.default.Component);
+
+ true ? GridListTile.propTypes = {
+ /**
+ * Theoretically you can pass any node as children, but the main use case is to pass an img,
+ * in which case GridListTile takes care of making the image "cover" available space
+ * (similar to `background-size: cover` or to `object-fit: cover`).
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * Width of the tile in number of grid cells.
+ */
+ cols: _propTypes.default.number,
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a DOM element or a component.
+ */
+ component: _utils.componentPropType,
+
+ /**
+ * Height of the tile in number of grid cells.
+ */
+ rows: _propTypes.default.number
+} : undefined;
+GridListTile.defaultProps = {
+ cols: 1,
+ component: 'li',
+ rows: 1
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiGridListTile'
+})(GridListTile);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/GridListTile/index.js":
+/*!********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/GridListTile/index.js ***!
+ \********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _GridListTile.default;
+ }
+});
+
+var _GridListTile = _interopRequireDefault(__webpack_require__(/*! ./GridListTile */ "../../node_modules/@material-ui/core/GridListTile/GridListTile.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/GridListTileBar/GridListTileBar.js":
+/*!*********************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/GridListTileBar/GridListTileBar.js ***!
+ \*********************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ position: 'absolute',
+ left: 0,
+ right: 0,
+ height: 48,
+ background: 'rgba(0, 0, 0, 0.5)',
+ display: 'flex',
+ alignItems: 'center',
+ fontFamily: theme.typography.fontFamily
+ },
+
+ /* Styles applied to the root element if `titlePosition="bottom"`. */
+ titlePositionBottom: {
+ bottom: 0
+ },
+
+ /* Styles applied to the root element if `titlePosition="top"`. */
+ titlePositionTop: {
+ top: 0
+ },
+
+ /* Styles applied to the root element if a `subtitle` is provided. */
+ rootSubtitle: {
+ height: 68
+ },
+
+ /* Styles applied to the title and subtitle container element. */
+ titleWrap: {
+ flexGrow: 1,
+ marginLeft: theme.mixins.gutters().paddingLeft,
+ marginRight: theme.mixins.gutters().paddingRight,
+ color: theme.palette.common.white,
+ overflow: 'hidden'
+ },
+
+ /* Styles applied to the container element if `actionPosition="left"`. */
+ titleWrapActionPosLeft: {
+ marginLeft: 0
+ },
+
+ /* Styles applied to the container element if `actionPosition="right"`. */
+ titleWrapActionPosRight: {
+ marginRight: 0
+ },
+
+ /* Styles applied to the title container element. */
+ title: {
+ fontSize: theme.typography.pxToRem(16),
+ lineHeight: '24px',
+ textOverflow: 'ellipsis',
+ overflow: 'hidden',
+ whiteSpace: 'nowrap'
+ },
+
+ /* Styles applied to the subtitle container element. */
+ subtitle: {
+ fontSize: theme.typography.pxToRem(12),
+ lineHeight: 1,
+ textOverflow: 'ellipsis',
+ overflow: 'hidden',
+ whiteSpace: 'nowrap'
+ },
+
+ /* Styles applied to the actionIcon if supplied. */
+ actionIcon: {},
+
+ /* Styles applied to the actionIcon if `actionPosition="left"`. */
+ actionIconActionPosLeft: {
+ order: -1
+ }
+ };
+};
+
+exports.styles = styles;
+
+function GridListTileBar(props) {
+ var _classNames, _classNames2;
+
+ var actionIcon = props.actionIcon,
+ actionPosition = props.actionPosition,
+ classes = props.classes,
+ classNameProp = props.className,
+ subtitle = props.subtitle,
+ title = props.title,
+ titlePosition = props.titlePosition,
+ other = (0, _objectWithoutProperties2.default)(props, ["actionIcon", "actionPosition", "classes", "className", "subtitle", "title", "titlePosition"]);
+ var actionPos = actionIcon && actionPosition;
+ var className = (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.titlePositionBottom, titlePosition === 'bottom'), (0, _defineProperty2.default)(_classNames, classes.titlePositionTop, titlePosition === 'top'), (0, _defineProperty2.default)(_classNames, classes.rootSubtitle, subtitle), _classNames), classNameProp); // Remove the margin between the title / subtitle wrapper, and the Action Icon
+
+ var titleWrapClassName = (0, _classnames.default)(classes.titleWrap, (_classNames2 = {}, (0, _defineProperty2.default)(_classNames2, classes.titleWrapActionPosLeft, actionPos === 'left'), (0, _defineProperty2.default)(_classNames2, classes.titleWrapActionPosRight, actionPos === 'right'), _classNames2));
+ return _react.default.createElement("div", (0, _extends2.default)({
+ className: className
+ }, other), _react.default.createElement("div", {
+ className: titleWrapClassName
+ }, _react.default.createElement("div", {
+ className: classes.title
+ }, title), subtitle ? _react.default.createElement("div", {
+ className: classes.subtitle
+ }, subtitle) : null), actionIcon ? _react.default.createElement("div", {
+ className: (0, _classnames.default)(classes.actionIcon, (0, _defineProperty2.default)({}, classes.actionIconActionPosLeft, actionPos === 'left'))
+ }, actionIcon) : null);
+}
+
+ true ? GridListTileBar.propTypes = {
+ /**
+ * An IconButton element to be used as secondary action target
+ * (primary action target is the tile itself).
+ */
+ actionIcon: _propTypes.default.node,
+
+ /**
+ * Position of secondary action IconButton.
+ */
+ actionPosition: _propTypes.default.oneOf(['left', 'right']),
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * String or element serving as subtitle (support text).
+ */
+ subtitle: _propTypes.default.node,
+
+ /**
+ * Title to be displayed on tile.
+ */
+ title: _propTypes.default.node,
+
+ /**
+ * Position of the title bar.
+ */
+ titlePosition: _propTypes.default.oneOf(['top', 'bottom'])
+} : undefined;
+GridListTileBar.defaultProps = {
+ actionPosition: 'right',
+ titlePosition: 'bottom'
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiGridListTileBar'
+})(GridListTileBar);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/GridListTileBar/index.js":
+/*!***********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/GridListTileBar/index.js ***!
+ \***********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _GridListTileBar.default;
+ }
+});
+
+var _GridListTileBar = _interopRequireDefault(__webpack_require__(/*! ./GridListTileBar */ "../../node_modules/@material-ui/core/GridListTileBar/GridListTileBar.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Grow/Grow.js":
+/*!***********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Grow/Grow.js ***!
+ \***********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../../node_modules/@babel/runtime/helpers/classCallCheck.js"));
+
+var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../../node_modules/@babel/runtime/helpers/createClass.js"));
+
+var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
+
+var _getPrototypeOf3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
+
+var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../../node_modules/@babel/runtime/helpers/inherits.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _Transition = _interopRequireDefault(__webpack_require__(/*! react-transition-group/Transition */ "../../node_modules/react-transition-group/Transition.js"));
+
+var _withTheme = _interopRequireDefault(__webpack_require__(/*! ../styles/withTheme */ "../../node_modules/@material-ui/core/styles/withTheme.js"));
+
+var _utils = __webpack_require__(/*! ../transitions/utils */ "../../node_modules/@material-ui/core/transitions/utils.js");
+
+// @inheritedComponent Transition
+function getScale(value) {
+ return "scale(".concat(value, ", ").concat(Math.pow(value, 2), ")");
+}
+
+var styles = {
+ entering: {
+ opacity: 1,
+ transform: getScale(1)
+ },
+ entered: {
+ opacity: 1,
+ // Use translateZ to scrolling issue on Chrome.
+ transform: "".concat(getScale(1), " translateZ(0)")
+ }
+};
+/**
+ * The Grow transition is used by the [Tooltip](/demos/tooltips/) and
+ * [Popover](/utils/popover/) components.
+ * It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally.
+ */
+
+var Grow =
+/*#__PURE__*/
+function (_React$Component) {
+ (0, _inherits2.default)(Grow, _React$Component);
+
+ function Grow() {
+ var _getPrototypeOf2;
+
+ var _this;
+
+ (0, _classCallCheck2.default)(this, Grow);
+
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
+ }
+
+ _this = (0, _possibleConstructorReturn2.default)(this, (_getPrototypeOf2 = (0, _getPrototypeOf3.default)(Grow)).call.apply(_getPrototypeOf2, [this].concat(args)));
+
+ _this.handleEnter = function (node) {
+ var _this$props = _this.props,
+ theme = _this$props.theme,
+ timeout = _this$props.timeout;
+ (0, _utils.reflow)(node); // So the animation always start from the start.
+
+ var _getTransitionProps = (0, _utils.getTransitionProps)(_this.props, {
+ mode: 'enter'
+ }),
+ transitionDuration = _getTransitionProps.duration,
+ delay = _getTransitionProps.delay;
+
+ var duration = 0;
+
+ if (timeout === 'auto') {
+ duration = theme.transitions.getAutoHeightDuration(node.clientHeight);
+ _this.autoTimeout = duration;
+ } else {
+ duration = transitionDuration;
+ }
+
+ node.style.transition = [theme.transitions.create('opacity', {
+ duration: duration,
+ delay: delay
+ }), theme.transitions.create('transform', {
+ duration: duration * 0.666,
+ delay: delay
+ })].join(',');
+
+ if (_this.props.onEnter) {
+ _this.props.onEnter(node);
+ }
+ };
+
+ _this.handleExit = function (node) {
+ var _this$props2 = _this.props,
+ theme = _this$props2.theme,
+ timeout = _this$props2.timeout;
+ var duration = 0;
+
+ var _getTransitionProps2 = (0, _utils.getTransitionProps)(_this.props, {
+ mode: 'exit'
+ }),
+ transitionDuration = _getTransitionProps2.duration,
+ delay = _getTransitionProps2.delay;
+
+ if (timeout === 'auto') {
+ duration = theme.transitions.getAutoHeightDuration(node.clientHeight);
+ _this.autoTimeout = duration;
+ } else {
+ duration = transitionDuration;
+ }
+
+ node.style.transition = [theme.transitions.create('opacity', {
+ duration: duration,
+ delay: delay
+ }), theme.transitions.create('transform', {
+ duration: duration * 0.666,
+ delay: delay || duration * 0.333
+ })].join(',');
+ node.style.opacity = '0';
+ node.style.transform = getScale(0.75);
+
+ if (_this.props.onExit) {
+ _this.props.onExit(node);
+ }
+ };
+
+ _this.addEndListener = function (_, next) {
+ if (_this.props.timeout === 'auto') {
+ _this.timer = setTimeout(next, _this.autoTimeout || 0);
+ }
+ };
+
+ return _this;
+ }
+
+ (0, _createClass2.default)(Grow, [{
+ key: "componentWillUnmount",
+ value: function componentWillUnmount() {
+ clearTimeout(this.timer);
+ }
+ }, {
+ key: "render",
+ value: function render() {
+ var _this$props3 = this.props,
+ children = _this$props3.children,
+ onEnter = _this$props3.onEnter,
+ onExit = _this$props3.onExit,
+ styleProp = _this$props3.style,
+ theme = _this$props3.theme,
+ timeout = _this$props3.timeout,
+ other = (0, _objectWithoutProperties2.default)(_this$props3, ["children", "onEnter", "onExit", "style", "theme", "timeout"]);
+ var style = (0, _extends2.default)({}, styleProp, _react.default.isValidElement(children) ? children.props.style : {});
+ return _react.default.createElement(_Transition.default, (0, _extends2.default)({
+ appear: true,
+ onEnter: this.handleEnter,
+ onExit: this.handleExit,
+ addEndListener: this.addEndListener,
+ timeout: timeout === 'auto' ? null : timeout
+ }, other), function (state, childProps) {
+ return _react.default.cloneElement(children, (0, _extends2.default)({
+ style: (0, _extends2.default)({
+ opacity: 0,
+ transform: getScale(0.75)
+ }, styles[state], style)
+ }, childProps));
+ });
+ }
+ }]);
+ return Grow;
+}(_react.default.Component);
+
+ true ? Grow.propTypes = {
+ /**
+ * A single child content element.
+ */
+ children: _propTypes.default.oneOfType([_propTypes.default.element, _propTypes.default.func]),
+
+ /**
+ * If `true`, show the component; triggers the enter or exit animation.
+ */
+ in: _propTypes.default.bool,
+
+ /**
+ * @ignore
+ */
+ onEnter: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onExit: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ style: _propTypes.default.object,
+
+ /**
+ * @ignore
+ */
+ theme: _propTypes.default.object.isRequired,
+
+ /**
+ * The duration for the transition, in milliseconds.
+ * You may specify a single timeout for all transitions, or individually with an object.
+ *
+ * Set to 'auto' to automatically calculate transition time based on height.
+ */
+ timeout: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.shape({
+ enter: _propTypes.default.number,
+ exit: _propTypes.default.number
+ }), _propTypes.default.oneOf(['auto'])])
+} : undefined;
+Grow.defaultProps = {
+ timeout: 'auto'
+};
+Grow.muiSupportAuto = true;
+
+var _default = (0, _withTheme.default)()(Grow);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Grow/index.js":
+/*!************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Grow/index.js ***!
+ \************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Grow.default;
+ }
+});
+
+var _Grow = _interopRequireDefault(__webpack_require__(/*! ./Grow */ "../../node_modules/@material-ui/core/Grow/Grow.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Hidden/Hidden.js":
+/*!***************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Hidden/Hidden.js ***!
+ \***************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = void 0;
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _HiddenJs = _interopRequireDefault(__webpack_require__(/*! ./HiddenJs */ "../../node_modules/@material-ui/core/Hidden/HiddenJs.js"));
+
+var _HiddenCss = _interopRequireDefault(__webpack_require__(/*! ./HiddenCss */ "../../node_modules/@material-ui/core/Hidden/HiddenCss.js"));
+
+/**
+ * Responsively hides children based on the selected implementation.
+ */
+function Hidden(props) {
+ var implementation = props.implementation,
+ other = (0, _objectWithoutProperties2.default)(props, ["implementation"]);
+
+ if (implementation === 'js') {
+ return _react.default.createElement(_HiddenJs.default, other);
+ }
+
+ return _react.default.createElement(_HiddenCss.default, other);
+}
+
+ true ? Hidden.propTypes = {
+ /**
+ * The content of the component.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * Specify which implementation to use. 'js' is the default, 'css' works better for
+ * server-side rendering.
+ */
+ implementation: _propTypes.default.oneOf(['js', 'css']),
+
+ /**
+ * You can use this property when choosing the `js` implementation with server-side rendering.
+ *
+ * As `window.innerWidth` is unavailable on the server,
+ * we default to rendering an empty component during the first mount.
+ * You might want to use an heuristic to approximate
+ * the screen width of the client browser screen width.
+ *
+ * For instance, you could be using the user-agent or the client-hints.
+ * https://caniuse.com/#search=client%20hint
+ */
+ initialWidth: _propTypes.default.oneOf(['xs', 'sm', 'md', 'lg', 'xl']),
+
+ /**
+ * If true, screens this size and down will be hidden.
+ */
+ lgDown: _propTypes.default.bool,
+
+ /**
+ * If true, screens this size and up will be hidden.
+ */
+ lgUp: _propTypes.default.bool,
+
+ /**
+ * If true, screens this size and down will be hidden.
+ */
+ mdDown: _propTypes.default.bool,
+
+ /**
+ * If true, screens this size and up will be hidden.
+ */
+ mdUp: _propTypes.default.bool,
+
+ /**
+ * Hide the given breakpoint(s).
+ */
+ only: _propTypes.default.oneOfType([_propTypes.default.oneOf(['xs', 'sm', 'md', 'lg', 'xl']), _propTypes.default.arrayOf(_propTypes.default.oneOf(['xs', 'sm', 'md', 'lg', 'xl']))]),
+
+ /**
+ * If true, screens this size and down will be hidden.
+ */
+ smDown: _propTypes.default.bool,
+
+ /**
+ * If true, screens this size and up will be hidden.
+ */
+ smUp: _propTypes.default.bool,
+
+ /**
+ * If true, screens this size and down will be hidden.
+ */
+ xlDown: _propTypes.default.bool,
+
+ /**
+ * If true, screens this size and up will be hidden.
+ */
+ xlUp: _propTypes.default.bool,
+
+ /**
+ * If true, screens this size and down will be hidden.
+ */
+ xsDown: _propTypes.default.bool,
+
+ /**
+ * If true, screens this size and up will be hidden.
+ */
+ xsUp: _propTypes.default.bool
+} : undefined;
+Hidden.defaultProps = {
+ implementation: 'js',
+ lgDown: false,
+ lgUp: false,
+ mdDown: false,
+ mdUp: false,
+ smDown: false,
+ smUp: false,
+ xlDown: false,
+ xlUp: false,
+ xsDown: false,
+ xsUp: false
+};
+var _default = Hidden;
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Hidden/HiddenCss.js":
+/*!******************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Hidden/HiddenCss.js ***!
+ \******************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = void 0;
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _warning = _interopRequireDefault(__webpack_require__(/*! warning */ "../../node_modules/warning/warning.js"));
+
+var _createBreakpoints = __webpack_require__(/*! ../styles/createBreakpoints */ "../../node_modules/@material-ui/core/styles/createBreakpoints.js");
+
+var _helpers = __webpack_require__(/*! ../utils/helpers */ "../../node_modules/@material-ui/core/utils/helpers.js");
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var styles = function styles(theme) {
+ var hidden = {
+ display: 'none'
+ };
+ return _createBreakpoints.keys.reduce(function (acc, key) {
+ acc["only".concat((0, _helpers.capitalize)(key))] = (0, _defineProperty2.default)({}, theme.breakpoints.only(key), hidden);
+ acc["".concat(key, "Up")] = (0, _defineProperty2.default)({}, theme.breakpoints.up(key), hidden);
+ acc["".concat(key, "Down")] = (0, _defineProperty2.default)({}, theme.breakpoints.down(key), hidden);
+ return acc;
+ }, {});
+};
+/**
+ * @ignore - internal component.
+ */
+
+
+function HiddenCss(props) {
+ var children = props.children,
+ classes = props.classes,
+ className = props.className,
+ lgDown = props.lgDown,
+ lgUp = props.lgUp,
+ mdDown = props.mdDown,
+ mdUp = props.mdUp,
+ only = props.only,
+ smDown = props.smDown,
+ smUp = props.smUp,
+ xlDown = props.xlDown,
+ xlUp = props.xlUp,
+ xsDown = props.xsDown,
+ xsUp = props.xsUp,
+ other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "lgDown", "lgUp", "mdDown", "mdUp", "only", "smDown", "smUp", "xlDown", "xlUp", "xsDown", "xsUp"]);
+ true ? (0, _warning.default)(Object.keys(other).length === 0 || Object.keys(other).length === 1 && other.hasOwnProperty('ref'), "Material-UI: unsupported properties received ".concat(Object.keys(other).join(', '), " by ``.")) : undefined;
+ var classNames = [];
+
+ if (className) {
+ classNames.push(className);
+ }
+
+ for (var i = 0; i < _createBreakpoints.keys.length; i += 1) {
+ var breakpoint = _createBreakpoints.keys[i];
+ var breakpointUp = props["".concat(breakpoint, "Up")];
+ var breakpointDown = props["".concat(breakpoint, "Down")];
+
+ if (breakpointUp) {
+ classNames.push(classes["".concat(breakpoint, "Up")]);
+ }
+
+ if (breakpointDown) {
+ classNames.push(classes["".concat(breakpoint, "Down")]);
+ }
+ }
+
+ if (only) {
+ var onlyBreakpoints = Array.isArray(only) ? only : [only];
+ onlyBreakpoints.forEach(function (breakpoint) {
+ classNames.push(classes["only".concat((0, _helpers.capitalize)(breakpoint))]);
+ });
+ }
+
+ return _react.default.createElement("div", {
+ className: classNames.join(' ')
+ }, children);
+}
+
+ true ? HiddenCss.propTypes = {
+ /**
+ * The content of the component.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * Specify which implementation to use. 'js' is the default, 'css' works better for
+ * server-side rendering.
+ */
+ implementation: _propTypes.default.oneOf(['js', 'css']),
+
+ /**
+ * If true, screens this size and down will be hidden.
+ */
+ lgDown: _propTypes.default.bool,
+
+ /**
+ * If true, screens this size and up will be hidden.
+ */
+ lgUp: _propTypes.default.bool,
+
+ /**
+ * If true, screens this size and down will be hidden.
+ */
+ mdDown: _propTypes.default.bool,
+
+ /**
+ * If true, screens this size and up will be hidden.
+ */
+ mdUp: _propTypes.default.bool,
+
+ /**
+ * Hide the given breakpoint(s).
+ */
+ only: _propTypes.default.oneOfType([_propTypes.default.oneOf(['xs', 'sm', 'md', 'lg', 'xl']), _propTypes.default.arrayOf(_propTypes.default.oneOf(['xs', 'sm', 'md', 'lg', 'xl']))]),
+
+ /**
+ * If true, screens this size and down will be hidden.
+ */
+ smDown: _propTypes.default.bool,
+
+ /**
+ * If true, screens this size and up will be hidden.
+ */
+ smUp: _propTypes.default.bool,
+
+ /**
+ * If true, screens this size and down will be hidden.
+ */
+ xlDown: _propTypes.default.bool,
+
+ /**
+ * If true, screens this size and up will be hidden.
+ */
+ xlUp: _propTypes.default.bool,
+
+ /**
+ * If true, screens this size and down will be hidden.
+ */
+ xsDown: _propTypes.default.bool,
+
+ /**
+ * If true, screens this size and up will be hidden.
+ */
+ xsUp: _propTypes.default.bool
+} : undefined;
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiPrivateHiddenCss'
+})(HiddenCss);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Hidden/HiddenJs.js":
+/*!*****************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Hidden/HiddenJs.js ***!
+ \*****************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ "../../node_modules/@babel/runtime/helpers/interopRequireWildcard.js");
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = void 0;
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _createBreakpoints = __webpack_require__(/*! ../styles/createBreakpoints */ "../../node_modules/@material-ui/core/styles/createBreakpoints.js");
+
+var _withWidth = _interopRequireWildcard(__webpack_require__(/*! ../withWidth */ "../../node_modules/@material-ui/core/withWidth/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+/**
+ * @ignore - internal component.
+ */
+function HiddenJs(props) {
+ var children = props.children,
+ only = props.only,
+ width = props.width;
+ var visible = true; // `only` check is faster to get out sooner if used.
+
+ if (only) {
+ if (Array.isArray(only)) {
+ for (var i = 0; i < only.length; i += 1) {
+ var breakpoint = only[i];
+
+ if (width === breakpoint) {
+ visible = false;
+ break;
+ }
+ }
+ } else if (only && width === only) {
+ visible = false;
+ }
+ } // Allow `only` to be combined with other props. If already hidden, no need to check others.
+
+
+ if (visible) {
+ // determine visibility based on the smallest size up
+ for (var _i = 0; _i < _createBreakpoints.keys.length; _i += 1) {
+ var _breakpoint = _createBreakpoints.keys[_i];
+ var breakpointUp = props["".concat(_breakpoint, "Up")];
+ var breakpointDown = props["".concat(_breakpoint, "Down")];
+
+ if (breakpointUp && (0, _withWidth.isWidthUp)(_breakpoint, width) || breakpointDown && (0, _withWidth.isWidthDown)(_breakpoint, width)) {
+ visible = false;
+ break;
+ }
+ }
+ }
+
+ if (!visible) {
+ return null;
+ }
+
+ return children;
+}
+
+HiddenJs.propTypes = {
+ /**
+ * The content of the component.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * Specify which implementation to use. 'js' is the default, 'css' works better for
+ * server-side rendering.
+ */
+ implementation: _propTypes.default.oneOf(['js', 'css']),
+
+ /**
+ * You can use this property when choosing the `js` implementation with server-side rendering.
+ *
+ * As `window.innerWidth` is unavailable on the server,
+ * we default to rendering an empty component during the first mount.
+ * You might want to use an heuristic to approximate
+ * the screen width of the client browser screen width.
+ *
+ * For instance, you could be using the user-agent or the client-hints.
+ * https://caniuse.com/#search=client%20hint
+ */
+ initialWidth: _propTypes.default.oneOf(['xs', 'sm', 'md', 'lg', 'xl']),
+
+ /**
+ * If true, screens this size and down will be hidden.
+ */
+ lgDown: _propTypes.default.bool,
+
+ /**
+ * If true, screens this size and up will be hidden.
+ */
+ lgUp: _propTypes.default.bool,
+
+ /**
+ * If true, screens this size and down will be hidden.
+ */
+ mdDown: _propTypes.default.bool,
+
+ /**
+ * If true, screens this size and up will be hidden.
+ */
+ mdUp: _propTypes.default.bool,
+
+ /**
+ * Hide the given breakpoint(s).
+ */
+ only: _propTypes.default.oneOfType([_propTypes.default.oneOf(['xs', 'sm', 'md', 'lg', 'xl']), _propTypes.default.arrayOf(_propTypes.default.oneOf(['xs', 'sm', 'md', 'lg', 'xl']))]),
+
+ /**
+ * If true, screens this size and down will be hidden.
+ */
+ smDown: _propTypes.default.bool,
+
+ /**
+ * If true, screens this size and up will be hidden.
+ */
+ smUp: _propTypes.default.bool,
+
+ /**
+ * @ignore
+ * width prop provided by withWidth decorator.
+ */
+ width: _propTypes.default.string.isRequired,
+
+ /**
+ * If true, screens this size and down will be hidden.
+ */
+ xlDown: _propTypes.default.bool,
+
+ /**
+ * If true, screens this size and up will be hidden.
+ */
+ xlUp: _propTypes.default.bool,
+
+ /**
+ * If true, screens this size and down will be hidden.
+ */
+ xsDown: _propTypes.default.bool,
+
+ /**
+ * If true, screens this size and up will be hidden.
+ */
+ xsUp: _propTypes.default.bool
+};
+
+if (true) {
+ HiddenJs.propTypes = (0, _utils.exactProp)(HiddenJs.propTypes);
+}
+
+var _default = (0, _withWidth.default)()(HiddenJs);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Hidden/index.js":
+/*!**************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Hidden/index.js ***!
+ \**************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Hidden.default;
+ }
+});
+
+var _Hidden = _interopRequireDefault(__webpack_require__(/*! ./Hidden */ "../../node_modules/@material-ui/core/Hidden/Hidden.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Icon/Icon.js":
+/*!***********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Icon/Icon.js ***!
+ \***********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _helpers = __webpack_require__(/*! ../utils/helpers */ "../../node_modules/@material-ui/core/utils/helpers.js");
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ userSelect: 'none',
+ fontSize: 24,
+ width: '1em',
+ height: '1em',
+ // Chrome fix for https://bugs.chromium.org/p/chromium/issues/detail?id=820541
+ // To remove at some point.
+ overflow: 'hidden',
+ flexShrink: 0
+ },
+
+ /* Styles applied to the root element if `color="primary"`. */
+ colorPrimary: {
+ color: theme.palette.primary.main
+ },
+
+ /* Styles applied to the root element if `color="secondary"`. */
+ colorSecondary: {
+ color: theme.palette.secondary.main
+ },
+
+ /* Styles applied to the root element if `color="action"`. */
+ colorAction: {
+ color: theme.palette.action.active
+ },
+
+ /* Styles applied to the root element if `color="error"`. */
+ colorError: {
+ color: theme.palette.error.main
+ },
+
+ /* Styles applied to the root element if `color="disabled"`. */
+ colorDisabled: {
+ color: theme.palette.action.disabled
+ },
+ fontSizeInherit: {
+ fontSize: 'inherit'
+ },
+
+ /* Styles applied to the root element if `fontSize="small"`. */
+ fontSizeSmall: {
+ fontSize: 20
+ },
+
+ /* Styles applied to the root element if `fontSize="large"`. */
+ fontSizeLarge: {
+ fontSize: 36
+ }
+ };
+};
+
+exports.styles = styles;
+
+function Icon(props) {
+ var _classNames;
+
+ var children = props.children,
+ classes = props.classes,
+ className = props.className,
+ color = props.color,
+ Component = props.component,
+ fontSize = props.fontSize,
+ other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "color", "component", "fontSize"]);
+ return _react.default.createElement(Component, (0, _extends2.default)({
+ className: (0, _classnames.default)('material-icons', classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes["color".concat((0, _helpers.capitalize)(color))], color !== 'inherit'), (0, _defineProperty2.default)(_classNames, classes["fontSize".concat((0, _helpers.capitalize)(fontSize))], fontSize !== 'default'), _classNames), className),
+ "aria-hidden": "true"
+ }, other), children);
+}
+
+ true ? Icon.propTypes = {
+ /**
+ * The name of the icon font ligature.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The color of the component. It supports those theme colors that make sense for this component.
+ */
+ color: _propTypes.default.oneOf(['inherit', 'primary', 'secondary', 'action', 'error', 'disabled']),
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a DOM element or a component.
+ */
+ component: _utils.componentPropType,
+
+ /**
+ * The fontSize applied to the icon. Defaults to 24px, but can be configure to inherit font size.
+ */
+ fontSize: _propTypes.default.oneOf(['inherit', 'default', 'small', 'large'])
+} : undefined;
+Icon.defaultProps = {
+ color: 'inherit',
+ component: 'span',
+ fontSize: 'default'
+};
+Icon.muiName = 'Icon';
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiIcon'
+})(Icon);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Icon/index.js":
+/*!************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Icon/index.js ***!
+ \************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Icon.default;
+ }
+});
+
+var _Icon = _interopRequireDefault(__webpack_require__(/*! ./Icon */ "../../node_modules/@material-ui/core/Icon/Icon.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/IconButton/IconButton.js":
+/*!***********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/IconButton/IconButton.js ***!
+ \***********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _colorManipulator = __webpack_require__(/*! ../styles/colorManipulator */ "../../node_modules/@material-ui/core/styles/colorManipulator.js");
+
+var _ButtonBase = _interopRequireDefault(__webpack_require__(/*! ../ButtonBase */ "../../node_modules/@material-ui/core/ButtonBase/index.js"));
+
+var _helpers = __webpack_require__(/*! ../utils/helpers */ "../../node_modules/@material-ui/core/utils/helpers.js");
+
+// @inheritedComponent ButtonBase
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ textAlign: 'center',
+ flex: '0 0 auto',
+ fontSize: theme.typography.pxToRem(24),
+ padding: 12,
+ borderRadius: '50%',
+ overflow: 'visible',
+ // Explicitly set the default value to solve a bug on IE 11.
+ color: theme.palette.action.active,
+ transition: theme.transitions.create('background-color', {
+ duration: theme.transitions.duration.shortest
+ }),
+ '&:hover': {
+ backgroundColor: (0, _colorManipulator.fade)(theme.palette.action.active, theme.palette.action.hoverOpacity),
+ // Reset on touch devices, it doesn't add specificity
+ '@media (hover: none)': {
+ backgroundColor: 'transparent'
+ },
+ '&$disabled': {
+ backgroundColor: 'transparent'
+ }
+ },
+ '&$disabled': {
+ color: theme.palette.action.disabled
+ }
+ },
+
+ /* Styles applied to the root element if `color="inherit"`. */
+ colorInherit: {
+ color: 'inherit'
+ },
+
+ /* Styles applied to the root element if `color="primary"`. */
+ colorPrimary: {
+ color: theme.palette.primary.main,
+ '&:hover': {
+ backgroundColor: (0, _colorManipulator.fade)(theme.palette.primary.main, theme.palette.action.hoverOpacity),
+ // Reset on touch devices, it doesn't add specificity
+ '@media (hover: none)': {
+ backgroundColor: 'transparent'
+ }
+ }
+ },
+
+ /* Styles applied to the root element if `color="secondary"`. */
+ colorSecondary: {
+ color: theme.palette.secondary.main,
+ '&:hover': {
+ backgroundColor: (0, _colorManipulator.fade)(theme.palette.secondary.main, theme.palette.action.hoverOpacity),
+ // Reset on touch devices, it doesn't add specificity
+ '@media (hover: none)': {
+ backgroundColor: 'transparent'
+ }
+ }
+ },
+
+ /* Styles applied to the root element if `disabled={true}`. */
+ disabled: {},
+
+ /* Styles applied to the children container element. */
+ label: {
+ width: '100%',
+ display: 'flex',
+ alignItems: 'inherit',
+ justifyContent: 'inherit'
+ }
+ };
+};
+/**
+ * Refer to the [Icons](/style/icons/) section of the documentation
+ * regarding the available icon options.
+ */
+
+
+exports.styles = styles;
+
+function IconButton(props) {
+ var _classNames;
+
+ var children = props.children,
+ classes = props.classes,
+ className = props.className,
+ color = props.color,
+ disabled = props.disabled,
+ other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "color", "disabled"]);
+ return _react.default.createElement(_ButtonBase.default, (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes["color".concat((0, _helpers.capitalize)(color))], color !== 'default'), (0, _defineProperty2.default)(_classNames, classes.disabled, disabled), _classNames), className),
+ centerRipple: true,
+ focusRipple: true,
+ disabled: disabled
+ }, other), _react.default.createElement("span", {
+ className: classes.label
+ }, children));
+}
+
+ true ? IconButton.propTypes = {
+ /**
+ * The icon element.
+ */
+ children: (0, _utils.chainPropTypes)(_propTypes.default.node, function (props) {
+ var found = _react.default.Children.toArray(props.children).some(function (child) {
+ return _react.default.isValidElement(child) && child.props.onClick;
+ });
+
+ if (found) {
+ return new Error(['Material-UI: you are providing an onClick event listener ' + 'to a child of a button element.', 'Firefox will never trigger the event.', 'You should move the onClick listener to the parent button element.', 'https://github.com/mui-org/material-ui/issues/13957', // Change error message slightly on every check to prevent caching when testing
+ // which would not trigger console errors on subsequent fails
+ false ? undefined : ''].join('\n'));
+ }
+
+ return null;
+ }),
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The color of the component. It supports those theme colors that make sense for this component.
+ */
+ color: _propTypes.default.oneOf(['default', 'inherit', 'primary', 'secondary']),
+
+ /**
+ * If `true`, the button will be disabled.
+ */
+ disabled: _propTypes.default.bool,
+
+ /**
+ * If `true`, the ripple will be disabled.
+ */
+ disableRipple: _propTypes.default.bool
+} : undefined;
+IconButton.defaultProps = {
+ color: 'default',
+ disabled: false
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiIconButton'
+})(IconButton);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/IconButton/index.js":
+/*!******************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/IconButton/index.js ***!
+ \******************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _IconButton.default;
+ }
+});
+
+var _IconButton = _interopRequireDefault(__webpack_require__(/*! ./IconButton */ "../../node_modules/@material-ui/core/IconButton/IconButton.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Input/Input.js":
+/*!*************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Input/Input.js ***!
+ \*************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _InputBase = _interopRequireDefault(__webpack_require__(/*! ../InputBase */ "../../node_modules/@material-ui/core/InputBase/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+// @inheritedComponent InputBase
+var styles = function styles(theme) {
+ var light = theme.palette.type === 'light';
+ var bottomLineColor = light ? 'rgba(0, 0, 0, 0.42)' : 'rgba(255, 255, 255, 0.7)';
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ position: 'relative'
+ },
+
+ /* Styles applied to the root element if the component is a descendant of `FormControl`. */
+ formControl: {
+ 'label + &': {
+ marginTop: 16
+ }
+ },
+
+ /* Styles applied to the root element if the component is focused. */
+ focused: {},
+
+ /* Styles applied to the root element if `disabled={true}`. */
+ disabled: {},
+
+ /* Styles applied to the root element if `disableUnderline={false}`. */
+ underline: {
+ '&:after': {
+ borderBottom: "2px solid ".concat(theme.palette.primary[light ? 'dark' : 'light']),
+ left: 0,
+ bottom: 0,
+ // Doing the other way around crash on IE 11 "''" https://github.com/cssinjs/jss/issues/242
+ content: '""',
+ position: 'absolute',
+ right: 0,
+ transform: 'scaleX(0)',
+ transition: theme.transitions.create('transform', {
+ duration: theme.transitions.duration.shorter,
+ easing: theme.transitions.easing.easeOut
+ }),
+ pointerEvents: 'none' // Transparent to the hover style.
+
+ },
+ '&$focused:after': {
+ transform: 'scaleX(1)'
+ },
+ '&$error:after': {
+ borderBottomColor: theme.palette.error.main,
+ transform: 'scaleX(1)' // error is always underlined in red
+
+ },
+ '&:before': {
+ borderBottom: "1px solid ".concat(bottomLineColor),
+ left: 0,
+ bottom: 0,
+ // Doing the other way around crash on IE 11 "''" https://github.com/cssinjs/jss/issues/242
+ content: '"\\00a0"',
+ position: 'absolute',
+ right: 0,
+ transition: theme.transitions.create('border-bottom-color', {
+ duration: theme.transitions.duration.shorter
+ }),
+ pointerEvents: 'none' // Transparent to the hover style.
+
+ },
+ '&:hover:not($disabled):not($focused):not($error):before': {
+ borderBottom: "2px solid ".concat(theme.palette.text.primary),
+ // Reset on touch devices, it doesn't add specificity
+ '@media (hover: none)': {
+ borderBottom: "1px solid ".concat(bottomLineColor)
+ }
+ },
+ '&$disabled:before': {
+ borderBottomStyle: 'dotted'
+ }
+ },
+
+ /* Styles applied to the root element if `error={true}`. */
+ error: {},
+
+ /* Styles applied to the root element if `multiline={true}`. */
+ multiline: {},
+
+ /* Styles applied to the root element if `fullWidth={true}`. */
+ fullWidth: {},
+
+ /* Styles applied to the `input` element. */
+ input: {},
+
+ /* Styles applied to the `input` element if `margin="dense"`. */
+ inputMarginDense: {},
+
+ /* Styles applied to the `input` element if `multiline={true}`. */
+ inputMultiline: {},
+
+ /* Styles applied to the `input` element if `type` is not "text"`. */
+ inputType: {},
+
+ /* Styles applied to the `input` element if `type="search"`. */
+ inputTypeSearch: {}
+ };
+};
+
+exports.styles = styles;
+
+function Input(props) {
+ var disableUnderline = props.disableUnderline,
+ classes = props.classes,
+ other = (0, _objectWithoutProperties2.default)(props, ["disableUnderline", "classes"]);
+ return _react.default.createElement(_InputBase.default, (0, _extends2.default)({
+ classes: (0, _extends2.default)({}, classes, {
+ root: (0, _classnames.default)(classes.root, (0, _defineProperty2.default)({}, classes.underline, !disableUnderline)),
+ underline: null
+ })
+ }, other));
+}
+
+ true ? Input.propTypes = {
+ /**
+ * This property helps users to fill forms faster, especially on mobile devices.
+ * The name can be confusing, as it's more like an autofill.
+ * You can learn more about it here:
+ * https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofill
+ */
+ autoComplete: _propTypes.default.string,
+
+ /**
+ * If `true`, the input will be focused during the first mount.
+ */
+ autoFocus: _propTypes.default.bool,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * The CSS class name of the wrapper element.
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The default input value, useful when not controlling the component.
+ */
+ defaultValue: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number, _propTypes.default.bool, _propTypes.default.object, _propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number, _propTypes.default.bool, _propTypes.default.object]))]),
+
+ /**
+ * If `true`, the input will be disabled.
+ */
+ disabled: _propTypes.default.bool,
+
+ /**
+ * If `true`, the input will not have an underline.
+ */
+ disableUnderline: _propTypes.default.bool,
+
+ /**
+ * End `InputAdornment` for this component.
+ */
+ endAdornment: _propTypes.default.node,
+
+ /**
+ * If `true`, the input will indicate an error. This is normally obtained via context from
+ * FormControl.
+ */
+ error: _propTypes.default.bool,
+
+ /**
+ * If `true`, the input will take up the full width of its container.
+ */
+ fullWidth: _propTypes.default.bool,
+
+ /**
+ * The id of the `input` element.
+ */
+ id: _propTypes.default.string,
+
+ /**
+ * The component used for the native input.
+ * Either a string to use a DOM element or a component.
+ */
+ inputComponent: _utils.componentPropType,
+
+ /**
+ * Attributes applied to the `input` element.
+ */
+ inputProps: _propTypes.default.object,
+
+ /**
+ * Use that property to pass a ref callback to the native input component.
+ */
+ inputRef: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
+
+ /**
+ * If `dense`, will adjust vertical spacing. This is normally obtained via context from
+ * FormControl.
+ */
+ margin: _propTypes.default.oneOf(['dense', 'none']),
+
+ /**
+ * If `true`, a textarea element will be rendered.
+ */
+ multiline: _propTypes.default.bool,
+
+ /**
+ * Name attribute of the `input` element.
+ */
+ name: _propTypes.default.string,
+
+ /**
+ * Callback fired when the value is changed.
+ *
+ * @param {object} event The event source of the callback.
+ * You can pull out the new value by accessing `event.target.value`.
+ */
+ onChange: _propTypes.default.func,
+
+ /**
+ * The short hint displayed in the input before the user enters a value.
+ */
+ placeholder: _propTypes.default.string,
+
+ /**
+ * It prevents the user from changing the value of the field
+ * (not from interacting with the field).
+ */
+ readOnly: _propTypes.default.bool,
+
+ /**
+ * If `true`, the input will be required.
+ */
+ required: _propTypes.default.bool,
+
+ /**
+ * Number of rows to display when multiline option is set to true.
+ */
+ rows: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
+
+ /**
+ * Maximum number of rows to display when multiline option is set to true.
+ */
+ rowsMax: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
+
+ /**
+ * Start `InputAdornment` for this component.
+ */
+ startAdornment: _propTypes.default.node,
+
+ /**
+ * Type of the input element. It should be a valid HTML5 input type.
+ */
+ type: _propTypes.default.string,
+
+ /**
+ * The input value, required for a controlled component.
+ */
+ value: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number, _propTypes.default.bool, _propTypes.default.object, _propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number, _propTypes.default.bool, _propTypes.default.object]))])
+} : undefined;
+_InputBase.default.defaultProps = {
+ fullWidth: false,
+ inputComponent: 'input',
+ multiline: false,
+ type: 'text'
+};
+Input.muiName = 'Input';
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiInput'
+})(Input);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Input/index.js":
+/*!*************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Input/index.js ***!
+ \*************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Input.default;
+ }
+});
+
+var _Input = _interopRequireDefault(__webpack_require__(/*! ./Input */ "../../node_modules/@material-ui/core/Input/Input.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/InputAdornment/InputAdornment.js":
+/*!*******************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/InputAdornment/InputAdornment.js ***!
+ \*******************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _Typography = _interopRequireDefault(__webpack_require__(/*! ../Typography */ "../../node_modules/@material-ui/core/Typography/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var styles = {
+ /* Styles applied to the root element. */
+ root: {
+ display: 'flex',
+ height: '0.01em',
+ // Fix IE 11 flexbox alignment. To remove at some point.
+ maxHeight: '2em',
+ alignItems: 'center'
+ },
+
+ /* Styles applied to the root element if `variant="filled"`. */
+ filled: {
+ '&$positionStart': {
+ marginTop: 16
+ }
+ },
+
+ /* Styles applied to the root element if `position="start"`. */
+ positionStart: {
+ marginRight: 8
+ },
+
+ /* Styles applied to the root element if `position="end"`. */
+ positionEnd: {
+ marginLeft: 8
+ },
+
+ /* Styles applied to the root element if `disablePointerEvents=true`. */
+ disablePointerEvents: {
+ pointerEvents: 'none'
+ }
+};
+exports.styles = styles;
+
+function InputAdornment(props) {
+ var _classNames;
+
+ var children = props.children,
+ Component = props.component,
+ classes = props.classes,
+ className = props.className,
+ disablePointerEvents = props.disablePointerEvents,
+ disableTypography = props.disableTypography,
+ position = props.position,
+ variant = props.variant,
+ other = (0, _objectWithoutProperties2.default)(props, ["children", "component", "classes", "className", "disablePointerEvents", "disableTypography", "position", "variant"]);
+ return _react.default.createElement(Component, (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.filled, variant === 'filled'), (0, _defineProperty2.default)(_classNames, classes.positionStart, position === 'start'), (0, _defineProperty2.default)(_classNames, classes.positionEnd, position === 'end'), (0, _defineProperty2.default)(_classNames, classes.disablePointerEvents, disablePointerEvents), _classNames), className)
+ }, other), typeof children === 'string' && !disableTypography ? _react.default.createElement(_Typography.default, {
+ color: "textSecondary"
+ }, children) : children);
+}
+
+ true ? InputAdornment.propTypes = {
+ /**
+ * The content of the component, normally an `IconButton` or string.
+ */
+ children: _propTypes.default.node.isRequired,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a DOM element or a component.
+ */
+ component: _utils.componentPropType,
+
+ /**
+ * Disable pointer events on the root.
+ * This allows for the content of the adornment to focus the input on click.
+ */
+ disablePointerEvents: _propTypes.default.bool,
+
+ /**
+ * If children is a string then disable wrapping in a Typography component.
+ */
+ disableTypography: _propTypes.default.bool,
+
+ /**
+ * The position this adornment should appear relative to the `Input`.
+ */
+ position: _propTypes.default.oneOf(['start', 'end']),
+
+ /**
+ * The variant to use.
+ */
+ variant: _propTypes.default.oneOf(['standard', 'outlined', 'filled'])
+} : undefined;
+InputAdornment.defaultProps = {
+ component: 'div',
+ disablePointerEvents: false,
+ disableTypography: false
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiInputAdornment'
+})(InputAdornment);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/InputAdornment/index.js":
+/*!**********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/InputAdornment/index.js ***!
+ \**********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _InputAdornment.default;
+ }
+});
+
+var _InputAdornment = _interopRequireDefault(__webpack_require__(/*! ./InputAdornment */ "../../node_modules/@material-ui/core/InputAdornment/InputAdornment.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/InputBase/InputBase.js":
+/*!*********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/InputBase/InputBase.js ***!
+ \*********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../../node_modules/@babel/runtime/helpers/classCallCheck.js"));
+
+var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
+
+var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
+
+var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../../node_modules/@babel/runtime/helpers/createClass.js"));
+
+var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../../node_modules/@babel/runtime/helpers/inherits.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _warning = _interopRequireDefault(__webpack_require__(/*! warning */ "../../node_modules/warning/warning.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _formControlState = _interopRequireDefault(__webpack_require__(/*! ../FormControl/formControlState */ "../../node_modules/@material-ui/core/FormControl/formControlState.js"));
+
+var _FormControlContext = _interopRequireDefault(__webpack_require__(/*! ../FormControl/FormControlContext */ "../../node_modules/@material-ui/core/FormControl/FormControlContext.js"));
+
+var _withFormControlContext = _interopRequireDefault(__webpack_require__(/*! ../FormControl/withFormControlContext */ "../../node_modules/@material-ui/core/FormControl/withFormControlContext.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _reactHelpers = __webpack_require__(/*! ../utils/reactHelpers */ "../../node_modules/@material-ui/core/utils/reactHelpers.js");
+
+var _Textarea = _interopRequireDefault(__webpack_require__(/*! ./Textarea */ "../../node_modules/@material-ui/core/InputBase/Textarea.js"));
+
+var _utils2 = __webpack_require__(/*! ./utils */ "../../node_modules/@material-ui/core/InputBase/utils.js");
+
+/* eslint-disable jsx-a11y/click-events-have-key-events, jsx-a11y/no-static-element-interactions */
+var styles = function styles(theme) {
+ var light = theme.palette.type === 'light';
+ var placeholder = {
+ color: 'currentColor',
+ opacity: light ? 0.42 : 0.5,
+ transition: theme.transitions.create('opacity', {
+ duration: theme.transitions.duration.shorter
+ })
+ };
+ var placeholderHidden = {
+ opacity: 0
+ };
+ var placeholderVisible = {
+ opacity: light ? 0.42 : 0.5
+ };
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ // Mimics the default input display property used by browsers for an input.
+ fontFamily: theme.typography.fontFamily,
+ color: theme.palette.text.primary,
+ fontSize: theme.typography.pxToRem(16),
+ lineHeight: '1.1875em',
+ // Reset (19px), match the native input line-height
+ cursor: 'text',
+ display: 'inline-flex',
+ alignItems: 'center',
+ '&$disabled': {
+ color: theme.palette.text.disabled,
+ cursor: 'default'
+ }
+ },
+
+ /* Styles applied to the root element if the component is a descendant of `FormControl`. */
+ formControl: {},
+
+ /* Styles applied to the root element if the component is focused. */
+ focused: {},
+
+ /* Styles applied to the root element if `disabled={true}`. */
+ disabled: {},
+
+ /* Styles applied to the root element if `startAdornment` is provided. */
+ adornedStart: {},
+
+ /* Styles applied to the root element if `endAdornment` is provided. */
+ adornedEnd: {},
+
+ /* Styles applied to the root element if `error={true}`. */
+ error: {},
+
+ /* Styles applied to the `input` element if `margin="dense"`. */
+ marginDense: {},
+
+ /* Styles applied to the root element if `multiline={true}`. */
+ multiline: {
+ padding: "".concat(8 - 2, "px 0 ").concat(8 - 1, "px")
+ },
+
+ /* Styles applied to the root element if `fullWidth={true}`. */
+ fullWidth: {
+ width: '100%'
+ },
+
+ /* Styles applied to the `input` element. */
+ input: {
+ font: 'inherit',
+ color: 'currentColor',
+ padding: "".concat(8 - 2, "px 0 ").concat(8 - 1, "px"),
+ border: 0,
+ boxSizing: 'content-box',
+ background: 'none',
+ margin: 0,
+ // Reset for Safari
+ // Remove grey highlight
+ WebkitTapHighlightColor: 'transparent',
+ display: 'block',
+ // Make the flex item shrink with Firefox
+ minWidth: 0,
+ width: '100%',
+ // Fix IE 11 width issue
+ '&::-webkit-input-placeholder': placeholder,
+ '&::-moz-placeholder': placeholder,
+ // Firefox 19+
+ '&:-ms-input-placeholder': placeholder,
+ // IE 11
+ '&::-ms-input-placeholder': placeholder,
+ // Edge
+ '&:focus': {
+ outline: 0
+ },
+ // Reset Firefox invalid required input style
+ '&:invalid': {
+ boxShadow: 'none'
+ },
+ '&::-webkit-search-decoration': {
+ // Remove the padding when type=search.
+ '-webkit-appearance': 'none'
+ },
+ // Show and hide the placeholder logic
+ 'label[data-shrink=false] + $formControl &': {
+ '&::-webkit-input-placeholder': placeholderHidden,
+ '&::-moz-placeholder': placeholderHidden,
+ // Firefox 19+
+ '&:-ms-input-placeholder': placeholderHidden,
+ // IE 11
+ '&::-ms-input-placeholder': placeholderHidden,
+ // Edge
+ '&:focus::-webkit-input-placeholder': placeholderVisible,
+ '&:focus::-moz-placeholder': placeholderVisible,
+ // Firefox 19+
+ '&:focus:-ms-input-placeholder': placeholderVisible,
+ // IE 11
+ '&:focus::-ms-input-placeholder': placeholderVisible // Edge
+
+ },
+ '&$disabled': {
+ opacity: 1 // Reset iOS opacity
+
+ }
+ },
+
+ /* Styles applied to the `input` element if `margin="dense"`. */
+ inputMarginDense: {
+ paddingTop: 4 - 1
+ },
+
+ /* Styles applied to the `input` element if `multiline={true}`. */
+ inputMultiline: {
+ resize: 'none',
+ padding: 0
+ },
+
+ /* Styles applied to the `input` element if `type` is not "text"`. */
+ inputType: {
+ // type="date" or type="time", etc. have specific styles we need to reset.
+ height: '1.1875em' // Reset (19px), match the native input line-height
+
+ },
+
+ /* Styles applied to the `input` element if `type="search"`. */
+ inputTypeSearch: {
+ // Improve type search style.
+ '-moz-appearance': 'textfield',
+ '-webkit-appearance': 'textfield'
+ },
+
+ /* Styles applied to the `input` element if `startAdornment` is provided. */
+ inputAdornedStart: {},
+
+ /* Styles applied to the `input` element if `endAdornment` is provided. */
+ inputAdornedEnd: {}
+ };
+};
+/**
+ * `InputBase` contains as few styles as possible.
+ * It aims to be a simple building block for creating an input.
+ * It contains a load of style reset and some state logic.
+ */
+
+
+exports.styles = styles;
+
+var InputBase =
+/*#__PURE__*/
+function (_React$Component) {
+ (0, _inherits2.default)(InputBase, _React$Component);
+ (0, _createClass2.default)(InputBase, null, [{
+ key: "getDerivedStateFromProps",
+ value: function getDerivedStateFromProps(props, state) {
+ // The blur won't fire when the disabled state is set on a focused input.
+ // We need to book keep the focused state manually.
+ if (props.disabled && state.focused) {
+ return {
+ focused: false
+ };
+ }
+
+ return null;
+ }
+ }]);
+
+ function InputBase(props) {
+ var _this;
+
+ (0, _classCallCheck2.default)(this, InputBase);
+ _this = (0, _possibleConstructorReturn2.default)(this, (0, _getPrototypeOf2.default)(InputBase).call(this, props));
+ _this.state = {
+ focused: false
+ };
+
+ _this.handleFocus = function (event) {
+ var muiFormControl = _this.props.muiFormControl; // Fix a bug with IE 11 where the focus/blur events are triggered
+ // while the input is disabled.
+
+ if ((0, _formControlState.default)({
+ props: _this.props,
+ muiFormControl: muiFormControl,
+ states: ['disabled']
+ }).disabled) {
+ event.stopPropagation();
+ return;
+ }
+
+ _this.setState({
+ focused: true
+ });
+
+ if (_this.props.onFocus) {
+ _this.props.onFocus(event);
+ }
+
+ if (muiFormControl && muiFormControl.onFocus) {
+ muiFormControl.onFocus(event);
+ }
+ };
+
+ _this.handleBlur = function (event) {
+ _this.setState({
+ focused: false
+ });
+
+ if (_this.props.onBlur) {
+ _this.props.onBlur(event);
+ }
+
+ var muiFormControl = _this.props.muiFormControl;
+
+ if (muiFormControl && muiFormControl.onBlur) {
+ muiFormControl.onBlur(event);
+ }
+ };
+
+ _this.handleChange = function () {
+ if (!_this.isControlled) {
+ _this.checkDirty(_this.inputRef);
+ } // Perform in the willUpdate
+
+
+ if (_this.props.onChange) {
+ var _this$props;
+
+ (_this$props = _this.props).onChange.apply(_this$props, arguments);
+ }
+ };
+
+ _this.handleRefInput = function (ref) {
+ _this.inputRef = ref;
+ true ? (0, _warning.default)(!ref || ref instanceof HTMLInputElement || ref.focus, ['Material-UI: you have provided a `inputComponent` to the input component', 'that does not correctly handle the `inputRef` property.', 'Make sure the `inputRef` property is called with a HTMLInputElement.'].join('\n')) : undefined;
+ var refProp;
+
+ if (_this.props.inputRef) {
+ refProp = _this.props.inputRef;
+ } else if (_this.props.inputProps && _this.props.inputProps.ref) {
+ refProp = _this.props.inputProps.ref;
+ }
+
+ (0, _reactHelpers.setRef)(refProp, ref);
+ };
+
+ _this.handleClick = function (event) {
+ if (_this.inputRef && event.currentTarget === event.target) {
+ _this.inputRef.focus();
+ }
+
+ if (_this.props.onClick) {
+ _this.props.onClick(event);
+ }
+ };
+
+ _this.isControlled = props.value != null;
+
+ if (_this.isControlled) {
+ _this.checkDirty(props);
+ }
+
+ return _this;
+ }
+
+ (0, _createClass2.default)(InputBase, [{
+ key: "componentDidMount",
+ value: function componentDidMount() {
+ if (!this.isControlled) {
+ this.checkDirty(this.inputRef);
+ }
+ }
+ }, {
+ key: "componentDidUpdate",
+ value: function componentDidUpdate(prevProps) {
+ // Book keep the focused state.
+ if (!prevProps.disabled && this.props.disabled) {
+ var muiFormControl = this.props.muiFormControl;
+
+ if (muiFormControl && muiFormControl.onBlur) {
+ muiFormControl.onBlur();
+ }
+ }
+
+ if (this.isControlled) {
+ this.checkDirty(this.props);
+ } // else performed in the onChange
+
+ }
+ }, {
+ key: "checkDirty",
+ value: function checkDirty(obj) {
+ var muiFormControl = this.props.muiFormControl;
+
+ if ((0, _utils2.isFilled)(obj)) {
+ if (muiFormControl && muiFormControl.onFilled) {
+ muiFormControl.onFilled();
+ }
+
+ if (this.props.onFilled) {
+ this.props.onFilled();
+ }
+
+ return;
+ }
+
+ if (muiFormControl && muiFormControl.onEmpty) {
+ muiFormControl.onEmpty();
+ }
+
+ if (this.props.onEmpty) {
+ this.props.onEmpty();
+ }
+ }
+ }, {
+ key: "render",
+ value: function render() {
+ var _classNames, _classNames2;
+
+ var _this$props2 = this.props,
+ autoComplete = _this$props2.autoComplete,
+ autoFocus = _this$props2.autoFocus,
+ classes = _this$props2.classes,
+ classNameProp = _this$props2.className,
+ defaultValue = _this$props2.defaultValue,
+ disabled = _this$props2.disabled,
+ endAdornment = _this$props2.endAdornment,
+ error = _this$props2.error,
+ fullWidth = _this$props2.fullWidth,
+ id = _this$props2.id,
+ inputComponent = _this$props2.inputComponent,
+ _this$props2$inputPro = _this$props2.inputProps;
+ _this$props2$inputPro = _this$props2$inputPro === void 0 ? {} : _this$props2$inputPro;
+ var inputPropsClassName = _this$props2$inputPro.className,
+ inputPropsProp = (0, _objectWithoutProperties2.default)(_this$props2$inputPro, ["className"]),
+ inputRef = _this$props2.inputRef,
+ margin = _this$props2.margin,
+ muiFormControl = _this$props2.muiFormControl,
+ multiline = _this$props2.multiline,
+ name = _this$props2.name,
+ onBlur = _this$props2.onBlur,
+ onChange = _this$props2.onChange,
+ onClick = _this$props2.onClick,
+ onEmpty = _this$props2.onEmpty,
+ onFilled = _this$props2.onFilled,
+ onFocus = _this$props2.onFocus,
+ onKeyDown = _this$props2.onKeyDown,
+ onKeyUp = _this$props2.onKeyUp,
+ placeholder = _this$props2.placeholder,
+ readOnly = _this$props2.readOnly,
+ renderPrefix = _this$props2.renderPrefix,
+ rows = _this$props2.rows,
+ rowsMax = _this$props2.rowsMax,
+ startAdornment = _this$props2.startAdornment,
+ type = _this$props2.type,
+ value = _this$props2.value,
+ other = (0, _objectWithoutProperties2.default)(_this$props2, ["autoComplete", "autoFocus", "classes", "className", "defaultValue", "disabled", "endAdornment", "error", "fullWidth", "id", "inputComponent", "inputProps", "inputRef", "margin", "muiFormControl", "multiline", "name", "onBlur", "onChange", "onClick", "onEmpty", "onFilled", "onFocus", "onKeyDown", "onKeyUp", "placeholder", "readOnly", "renderPrefix", "rows", "rowsMax", "startAdornment", "type", "value"]);
+ var fcs = (0, _formControlState.default)({
+ props: this.props,
+ muiFormControl: muiFormControl,
+ states: ['disabled', 'error', 'margin', 'required', 'filled']
+ });
+ var focused = muiFormControl ? muiFormControl.focused : this.state.focused;
+ var className = (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.disabled, fcs.disabled), (0, _defineProperty2.default)(_classNames, classes.error, fcs.error), (0, _defineProperty2.default)(_classNames, classes.fullWidth, fullWidth), (0, _defineProperty2.default)(_classNames, classes.focused, focused), (0, _defineProperty2.default)(_classNames, classes.formControl, muiFormControl), (0, _defineProperty2.default)(_classNames, classes.marginDense, fcs.margin === 'dense'), (0, _defineProperty2.default)(_classNames, classes.multiline, multiline), (0, _defineProperty2.default)(_classNames, classes.adornedStart, startAdornment), (0, _defineProperty2.default)(_classNames, classes.adornedEnd, endAdornment), _classNames), classNameProp);
+ var inputClassName = (0, _classnames.default)(classes.input, (_classNames2 = {}, (0, _defineProperty2.default)(_classNames2, classes.disabled, fcs.disabled), (0, _defineProperty2.default)(_classNames2, classes.inputType, type !== 'text'), (0, _defineProperty2.default)(_classNames2, classes.inputTypeSearch, type === 'search'), (0, _defineProperty2.default)(_classNames2, classes.inputMultiline, multiline), (0, _defineProperty2.default)(_classNames2, classes.inputMarginDense, fcs.margin === 'dense'), (0, _defineProperty2.default)(_classNames2, classes.inputAdornedStart, startAdornment), (0, _defineProperty2.default)(_classNames2, classes.inputAdornedEnd, endAdornment), _classNames2), inputPropsClassName);
+ var InputComponent = inputComponent;
+ var inputProps = (0, _extends2.default)({}, inputPropsProp, {
+ ref: this.handleRefInput
+ });
+
+ if (typeof InputComponent !== 'string') {
+ inputProps = (0, _extends2.default)({
+ // Rename ref to inputRef as we don't know the
+ // provided `inputComponent` structure.
+ inputRef: this.handleRefInput,
+ type: type
+ }, inputProps, {
+ ref: null
+ });
+ } else if (multiline) {
+ if (rows && !rowsMax) {
+ InputComponent = 'textarea';
+ } else {
+ inputProps = (0, _extends2.default)({
+ rowsMax: rowsMax,
+ textareaRef: this.handleRefInput
+ }, inputProps, {
+ ref: null
+ });
+ InputComponent = _Textarea.default;
+ }
+ } else {
+ inputProps = (0, _extends2.default)({
+ type: type
+ }, inputProps);
+ }
+
+ return _react.default.createElement(_FormControlContext.default.Provider, {
+ value: null
+ }, _react.default.createElement("div", (0, _extends2.default)({
+ className: className,
+ onClick: this.handleClick
+ }, other), renderPrefix ? renderPrefix((0, _extends2.default)({}, fcs, {
+ startAdornment: startAdornment,
+ focused: focused
+ })) : null, startAdornment, _react.default.createElement(InputComponent, (0, _extends2.default)({
+ "aria-invalid": fcs.error,
+ autoComplete: autoComplete,
+ autoFocus: autoFocus,
+ className: inputClassName,
+ defaultValue: defaultValue,
+ disabled: fcs.disabled,
+ id: id,
+ name: name,
+ onBlur: this.handleBlur,
+ onChange: this.handleChange,
+ onFocus: this.handleFocus,
+ onKeyDown: onKeyDown,
+ onKeyUp: onKeyUp,
+ placeholder: placeholder,
+ readOnly: readOnly,
+ required: fcs.required,
+ rows: rows,
+ value: value
+ }, inputProps)), endAdornment));
+ }
+ }]);
+ return InputBase;
+}(_react.default.Component);
+
+ true ? InputBase.propTypes = {
+ /**
+ * This property helps users to fill forms faster, especially on mobile devices.
+ * The name can be confusing, as it's more like an autofill.
+ * You can learn more about it here:
+ * https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofill
+ */
+ autoComplete: _propTypes.default.string,
+
+ /**
+ * If `true`, the input will be focused during the first mount.
+ */
+ autoFocus: _propTypes.default.bool,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * The CSS class name of the wrapper element.
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The default input value, useful when not controlling the component.
+ */
+ defaultValue: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number, _propTypes.default.bool, _propTypes.default.object, _propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number, _propTypes.default.bool, _propTypes.default.object]))]),
+
+ /**
+ * If `true`, the input will be disabled.
+ */
+ disabled: _propTypes.default.bool,
+
+ /**
+ * End `InputAdornment` for this component.
+ */
+ endAdornment: _propTypes.default.node,
+
+ /**
+ * If `true`, the input will indicate an error. This is normally obtained via context from
+ * FormControl.
+ */
+ error: _propTypes.default.bool,
+
+ /**
+ * If `true`, the input will take up the full width of its container.
+ */
+ fullWidth: _propTypes.default.bool,
+
+ /**
+ * The id of the `input` element.
+ */
+ id: _propTypes.default.string,
+
+ /**
+ * The component used for the native input.
+ * Either a string to use a DOM element or a component.
+ */
+ inputComponent: _utils.componentPropType,
+
+ /**
+ * Attributes applied to the `input` element.
+ */
+ inputProps: _propTypes.default.object,
+
+ /**
+ * Use that property to pass a ref callback to the native input component.
+ */
+ inputRef: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
+
+ /**
+ * If `dense`, will adjust vertical spacing. This is normally obtained via context from
+ * FormControl.
+ */
+ margin: _propTypes.default.oneOf(['dense', 'none']),
+
+ /**
+ * @ignore
+ */
+ muiFormControl: _propTypes.default.object,
+
+ /**
+ * If `true`, a textarea element will be rendered.
+ */
+ multiline: _propTypes.default.bool,
+
+ /**
+ * Name attribute of the `input` element.
+ */
+ name: _propTypes.default.string,
+
+ /**
+ * @ignore
+ */
+ onBlur: _propTypes.default.func,
+
+ /**
+ * Callback fired when the value is changed.
+ *
+ * @param {object} event The event source of the callback.
+ * You can pull out the new value by accessing `event.target.value`.
+ */
+ onChange: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onEmpty: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onFilled: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onFocus: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onKeyDown: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onKeyUp: _propTypes.default.func,
+
+ /**
+ * The short hint displayed in the input before the user enters a value.
+ */
+ placeholder: _propTypes.default.string,
+
+ /**
+ * It prevents the user from changing the value of the field
+ * (not from interacting with the field).
+ */
+ readOnly: _propTypes.default.bool,
+
+ /**
+ * @ignore
+ */
+ renderPrefix: _propTypes.default.func,
+
+ /**
+ * If `true`, the input will be required.
+ */
+ required: _propTypes.default.bool,
+
+ /**
+ * Number of rows to display when multiline option is set to true.
+ */
+ rows: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
+
+ /**
+ * Maximum number of rows to display when multiline option is set to true.
+ */
+ rowsMax: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
+
+ /**
+ * Start `InputAdornment` for this component.
+ */
+ startAdornment: _propTypes.default.node,
+
+ /**
+ * Type of the input element. It should be a valid HTML5 input type.
+ */
+ type: _propTypes.default.string,
+
+ /**
+ * The input value, required for a controlled component.
+ */
+ value: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number, _propTypes.default.bool, _propTypes.default.object, _propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number, _propTypes.default.bool, _propTypes.default.object]))])
+} : undefined;
+InputBase.defaultProps = {
+ fullWidth: false,
+ inputComponent: 'input',
+ multiline: false,
+ type: 'text'
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiInputBase'
+})((0, _withFormControlContext.default)(InputBase));
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/InputBase/Textarea.js":
+/*!********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/InputBase/Textarea.js ***!
+ \********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../../node_modules/@babel/runtime/helpers/classCallCheck.js"));
+
+var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../../node_modules/@babel/runtime/helpers/createClass.js"));
+
+var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
+
+var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
+
+var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../../node_modules/@babel/runtime/helpers/inherits.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _debounce = _interopRequireDefault(__webpack_require__(/*! debounce */ "../../node_modules/debounce/index.js"));
+
+var _reactEventListener = _interopRequireDefault(__webpack_require__(/*! react-event-listener */ "../../node_modules/react-event-listener/dist/react-event-listener.cjs.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _reactHelpers = __webpack_require__(/*! ../utils/reactHelpers */ "../../node_modules/@material-ui/core/utils/reactHelpers.js");
+
+// < 1kb payload overhead when lodash/debounce is > 3kb.
+var ROWS_HEIGHT = 19;
+var styles = {
+ /* Styles applied to the root element. */
+ root: {
+ position: 'relative',
+ // because the shadow has position: 'absolute',
+ width: '100%'
+ },
+ textarea: {
+ width: '100%',
+ height: '100%',
+ resize: 'none',
+ font: 'inherit',
+ padding: 0,
+ cursor: 'inherit',
+ boxSizing: 'border-box',
+ lineHeight: 'inherit',
+ border: 'none',
+ outline: 'none',
+ background: 'transparent'
+ },
+ shadow: {
+ // Overflow also needed to here to remove the extra row
+ // added to textareas in Firefox.
+ overflow: 'hidden',
+ // Visibility needed to hide the extra text area on iPads
+ visibility: 'hidden',
+ position: 'absolute',
+ height: 'auto',
+ whiteSpace: 'pre-wrap'
+ }
+};
+/**
+ * @ignore - internal component.
+ */
+
+exports.styles = styles;
+
+var Textarea =
+/*#__PURE__*/
+function (_React$Component) {
+ (0, _inherits2.default)(Textarea, _React$Component);
+
+ function Textarea(props) {
+ var _this;
+
+ (0, _classCallCheck2.default)(this, Textarea);
+ _this = (0, _possibleConstructorReturn2.default)(this, (0, _getPrototypeOf2.default)(Textarea).call(this));
+
+ _this.handleRefInput = function (ref) {
+ _this.inputRef = ref;
+ (0, _reactHelpers.setRef)(_this.props.textareaRef, ref);
+ };
+
+ _this.handleRefSinglelineShadow = function (ref) {
+ _this.singlelineShadowRef = ref;
+ };
+
+ _this.handleRefShadow = function (ref) {
+ _this.shadowRef = ref;
+ };
+
+ _this.handleChange = function (event) {
+ _this.value = event.target.value;
+
+ if (!_this.isControlled) {
+ // The component is not controlled, we need to update the shallow value.
+ _this.shadowRef.value = _this.value;
+
+ _this.syncHeightWithShadow();
+ }
+
+ if (_this.props.onChange) {
+ _this.props.onChange(event);
+ }
+ };
+
+ _this.isControlled = props.value != null; // expects the components it renders to respond to 'value'
+ // so that it can check whether they are filled.
+
+ _this.value = props.value || props.defaultValue || '';
+ _this.state = {
+ height: Number(props.rows) * ROWS_HEIGHT
+ };
+
+ if (typeof window !== 'undefined') {
+ _this.handleResize = (0, _debounce.default)(function () {
+ _this.syncHeightWithShadow();
+ }, 166); // Corresponds to 10 frames at 60 Hz.
+ }
+
+ return _this;
+ }
+
+ (0, _createClass2.default)(Textarea, [{
+ key: "componentDidMount",
+ value: function componentDidMount() {
+ this.syncHeightWithShadow();
+ }
+ }, {
+ key: "componentDidUpdate",
+ value: function componentDidUpdate() {
+ this.syncHeightWithShadow();
+ }
+ }, {
+ key: "componentWillUnmount",
+ value: function componentWillUnmount() {
+ this.handleResize.clear();
+ }
+ }, {
+ key: "syncHeightWithShadow",
+ value: function syncHeightWithShadow() {
+ var props = this.props; // Guarding for **broken** shallow rendering method that call componentDidMount
+ // but doesn't handle refs correctly.
+ // To remove once the shallow rendering has been fixed.
+
+ if (!this.shadowRef) {
+ return;
+ }
+
+ if (this.isControlled) {
+ // The component is controlled, we need to update the shallow value.
+ this.shadowRef.value = props.value == null ? '' : String(props.value);
+ }
+
+ var lineHeight = this.singlelineShadowRef.scrollHeight;
+ var newHeight = this.shadowRef.scrollHeight; // Guarding for jsdom, where scrollHeight isn't present.
+ // See https://github.com/tmpvar/jsdom/issues/1013
+
+ if (newHeight === undefined) {
+ return;
+ }
+
+ if (Number(props.rowsMax) >= Number(props.rows)) {
+ newHeight = Math.min(Number(props.rowsMax) * lineHeight, newHeight);
+ }
+
+ newHeight = Math.max(newHeight, lineHeight); // Need a large enough different to update the height.
+ // This prevents infinite rendering loop.
+
+ if (Math.abs(this.state.height - newHeight) > 1) {
+ this.setState({
+ height: newHeight
+ });
+ }
+ }
+ }, {
+ key: "render",
+ value: function render() {
+ var _this$props = this.props,
+ classes = _this$props.classes,
+ className = _this$props.className,
+ defaultValue = _this$props.defaultValue,
+ onChange = _this$props.onChange,
+ rows = _this$props.rows,
+ rowsMax = _this$props.rowsMax,
+ textareaRef = _this$props.textareaRef,
+ value = _this$props.value,
+ style = _this$props.style,
+ other = (0, _objectWithoutProperties2.default)(_this$props, ["classes", "className", "defaultValue", "onChange", "rows", "rowsMax", "textareaRef", "value", "style"]);
+ return _react.default.createElement("div", {
+ className: classes.root
+ }, _react.default.createElement(_reactEventListener.default, {
+ target: "window",
+ onResize: this.handleResize
+ }), _react.default.createElement("textarea", {
+ "aria-hidden": "true",
+ className: (0, _classnames.default)(classes.textarea, classes.shadow),
+ readOnly: true,
+ ref: this.handleRefSinglelineShadow,
+ rows: "1",
+ tabIndex: -1,
+ value: ""
+ }), _react.default.createElement("textarea", {
+ "aria-hidden": "true",
+ className: (0, _classnames.default)(classes.textarea, classes.shadow),
+ defaultValue: defaultValue,
+ readOnly: true,
+ ref: this.handleRefShadow,
+ rows: rows,
+ tabIndex: -1,
+ value: value
+ }), _react.default.createElement("textarea", (0, _extends2.default)({
+ rows: rows,
+ className: (0, _classnames.default)(classes.textarea, className),
+ defaultValue: defaultValue,
+ value: value,
+ onChange: this.handleChange,
+ ref: this.handleRefInput,
+ style: (0, _extends2.default)({
+ height: this.state.height
+ }, style)
+ }, other)));
+ }
+ }]);
+ return Textarea;
+}(_react.default.Component);
+
+ true ? Textarea.propTypes = {
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * @ignore
+ */
+ defaultValue: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
+
+ /**
+ * @ignore
+ */
+ disabled: _propTypes.default.bool,
+
+ /**
+ * @ignore
+ */
+ onChange: _propTypes.default.func,
+
+ /**
+ * Number of rows to display when multiline option is set to true.
+ */
+ rows: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
+
+ /**
+ * Maximum number of rows to display when multiline option is set to true.
+ */
+ rowsMax: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
+
+ /**
+ * Use that property to pass a ref callback to the native textarea element.
+ */
+ textareaRef: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
+
+ /**
+ * @ignore
+ */
+ value: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number])
+} : undefined;
+Textarea.defaultProps = {
+ rows: 1
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiPrivateTextarea'
+})(Textarea);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/InputBase/index.js":
+/*!*****************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/InputBase/index.js ***!
+ \*****************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _InputBase.default;
+ }
+});
+
+var _InputBase = _interopRequireDefault(__webpack_require__(/*! ./InputBase */ "../../node_modules/@material-ui/core/InputBase/InputBase.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/InputBase/utils.js":
+/*!*****************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/InputBase/utils.js ***!
+ \*****************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.hasValue = hasValue;
+exports.isFilled = isFilled;
+exports.isAdornedStart = isAdornedStart;
+
+// Supports determination of isControlled().
+// Controlled input accepts its current value as a prop.
+//
+// @see https://facebook.github.io/react/docs/forms.html#controlled-components
+// @param value
+// @returns {boolean} true if string (including '') or number (including zero)
+function hasValue(value) {
+ return value != null && !(Array.isArray(value) && value.length === 0);
+} // Determine if field is empty or filled.
+// Response determines if label is presented above field or as placeholder.
+//
+// @param obj
+// @param SSR
+// @returns {boolean} False when not present or empty string.
+// True when any number or string with length.
+
+
+function isFilled(obj) {
+ var SSR = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
+ return obj && (hasValue(obj.value) && obj.value !== '' || SSR && hasValue(obj.defaultValue) && obj.defaultValue !== '');
+} // Determine if an Input is adorned on start.
+// It's corresponding to the left with LTR.
+//
+// @param obj
+// @returns {boolean} False when no adornments.
+// True when adorned at the start.
+
+
+function isAdornedStart(obj) {
+ return obj.startAdornment;
+}
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/InputLabel/InputLabel.js":
+/*!***********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/InputLabel/InputLabel.js ***!
+ \***********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _formControlState = _interopRequireDefault(__webpack_require__(/*! ../FormControl/formControlState */ "../../node_modules/@material-ui/core/FormControl/formControlState.js"));
+
+var _withFormControlContext = _interopRequireDefault(__webpack_require__(/*! ../FormControl/withFormControlContext */ "../../node_modules/@material-ui/core/FormControl/withFormControlContext.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _FormLabel = _interopRequireDefault(__webpack_require__(/*! ../FormLabel */ "../../node_modules/@material-ui/core/FormLabel/index.js"));
+
+// @inheritedComponent FormLabel
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ transformOrigin: 'top left'
+ },
+
+ /* Styles applied to the root element if `focused={true}`. */
+ focused: {},
+
+ /* Styles applied to the root element if `disabled={true}`. */
+ disabled: {},
+
+ /* Styles applied to the root element if `error={true}`. */
+ error: {},
+
+ /* Styles applied to the root element if `required={true}`. */
+ required: {},
+
+ /* Styles applied to the root element if the component is a descendant of `FormControl`. */
+ formControl: {
+ position: 'absolute',
+ left: 0,
+ top: 0,
+ // slight alteration to spec spacing to match visual spec result
+ transform: 'translate(0, 24px) scale(1)'
+ },
+
+ /* Styles applied to the root element if `margin="dense"`. */
+ marginDense: {
+ // Compensation for the `Input.inputDense` style.
+ transform: 'translate(0, 21px) scale(1)'
+ },
+
+ /* Styles applied to the `input` element if `shrink={true}`. */
+ shrink: {
+ transform: 'translate(0, 1.5px) scale(0.75)',
+ transformOrigin: 'top left'
+ },
+
+ /* Styles applied to the `input` element if `disableAnimation={false}`. */
+ animated: {
+ transition: theme.transitions.create(['color', 'transform'], {
+ duration: theme.transitions.duration.shorter,
+ easing: theme.transitions.easing.easeOut
+ })
+ },
+
+ /* Styles applied to the root element if `variant="filled"`. */
+ filled: {
+ // Chrome's autofill feature gives the input field a yellow background.
+ // Since the input field is behind the label in the HTML tree,
+ // the input field is drawn last and hides the label with an opaque background color.
+ // zIndex: 1 will raise the label above opaque background-colors of input.
+ zIndex: 1,
+ pointerEvents: 'none',
+ transform: 'translate(12px, 20px) scale(1)',
+ '&$marginDense': {
+ transform: 'translate(12px, 17px) scale(1)'
+ },
+ '&$shrink': {
+ transform: 'translate(12px, 10px) scale(0.75)',
+ '&$marginDense': {
+ transform: 'translate(12px, 7px) scale(0.75)'
+ }
+ }
+ },
+
+ /* Styles applied to the root element if `variant="outlined"`. */
+ outlined: {
+ // see comment above on filled.zIndex
+ zIndex: 1,
+ pointerEvents: 'none',
+ transform: 'translate(14px, 20px) scale(1)',
+ '&$marginDense': {
+ transform: 'translate(14px, 17px) scale(1)'
+ },
+ '&$shrink': {
+ transform: 'translate(14px, -6px) scale(0.75)'
+ }
+ }
+ };
+};
+
+exports.styles = styles;
+
+function InputLabel(props) {
+ var _classNames;
+
+ var children = props.children,
+ classes = props.classes,
+ classNameProp = props.className,
+ disableAnimation = props.disableAnimation,
+ FormLabelClasses = props.FormLabelClasses,
+ margin = props.margin,
+ muiFormControl = props.muiFormControl,
+ shrinkProp = props.shrink,
+ variant = props.variant,
+ other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "disableAnimation", "FormLabelClasses", "margin", "muiFormControl", "shrink", "variant"]);
+ var shrink = shrinkProp;
+
+ if (typeof shrink === 'undefined' && muiFormControl) {
+ shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;
+ }
+
+ var fcs = (0, _formControlState.default)({
+ props: props,
+ muiFormControl: muiFormControl,
+ states: ['margin', 'variant']
+ });
+ var className = (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.formControl, muiFormControl), (0, _defineProperty2.default)(_classNames, classes.animated, !disableAnimation), (0, _defineProperty2.default)(_classNames, classes.shrink, shrink), (0, _defineProperty2.default)(_classNames, classes.marginDense, fcs.margin === 'dense'), (0, _defineProperty2.default)(_classNames, classes.filled, fcs.variant === 'filled'), (0, _defineProperty2.default)(_classNames, classes.outlined, fcs.variant === 'outlined'), _classNames), classNameProp);
+ return _react.default.createElement(_FormLabel.default, (0, _extends2.default)({
+ "data-shrink": shrink,
+ className: className,
+ classes: (0, _extends2.default)({
+ focused: classes.focused,
+ disabled: classes.disabled,
+ error: classes.error,
+ required: classes.required
+ }, FormLabelClasses)
+ }, other), children);
+}
+
+ true ? InputLabel.propTypes = {
+ /**
+ * The contents of the `InputLabel`.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * If `true`, the transition animation is disabled.
+ */
+ disableAnimation: _propTypes.default.bool,
+
+ /**
+ * If `true`, apply disabled class.
+ */
+ disabled: _propTypes.default.bool,
+
+ /**
+ * If `true`, the label will be displayed in an error state.
+ */
+ error: _propTypes.default.bool,
+
+ /**
+ * If `true`, the input of this label is focused.
+ */
+ focused: _propTypes.default.bool,
+
+ /**
+ * `classes` property applied to the [`FormLabel`](/api/form-label/) element.
+ */
+ FormLabelClasses: _propTypes.default.object,
+
+ /**
+ * If `dense`, will adjust vertical spacing. This is normally obtained via context from
+ * FormControl.
+ */
+ margin: _propTypes.default.oneOf(['dense']),
+
+ /**
+ * @ignore
+ */
+ muiFormControl: _propTypes.default.object,
+
+ /**
+ * if `true`, the label will indicate that the input is required.
+ */
+ required: _propTypes.default.bool,
+
+ /**
+ * If `true`, the label is shrunk.
+ */
+ shrink: _propTypes.default.bool,
+
+ /**
+ * The variant to use.
+ */
+ variant: _propTypes.default.oneOf(['standard', 'outlined', 'filled'])
+} : undefined;
+InputLabel.defaultProps = {
+ disableAnimation: false
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiInputLabel'
+})((0, _withFormControlContext.default)(InputLabel));
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/InputLabel/index.js":
+/*!******************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/InputLabel/index.js ***!
+ \******************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _InputLabel.default;
+ }
+});
+
+var _InputLabel = _interopRequireDefault(__webpack_require__(/*! ./InputLabel */ "../../node_modules/@material-ui/core/InputLabel/InputLabel.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/LinearProgress/LinearProgress.js":
+/*!*******************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/LinearProgress/LinearProgress.js ***!
+ \*******************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _warning = _interopRequireDefault(__webpack_require__(/*! warning */ "../../node_modules/warning/warning.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _colorManipulator = __webpack_require__(/*! ../styles/colorManipulator */ "../../node_modules/@material-ui/core/styles/colorManipulator.js");
+
+var TRANSITION_DURATION = 4; // seconds
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ position: 'relative',
+ overflow: 'hidden',
+ height: 4
+ },
+
+ /* Styles applied to the root & bar2 element if `color="primary"`; bar2 if `variant-"buffer"`. */
+ colorPrimary: {
+ backgroundColor: (0, _colorManipulator.lighten)(theme.palette.primary.light, 0.6)
+ },
+ // eslint-disable-next-line max-len
+
+ /* Styles applied to the root & bar2 elements if `color="secondary"`; bar2 if `variant="buffer"`. */
+ colorSecondary: {
+ backgroundColor: (0, _colorManipulator.lighten)(theme.palette.secondary.light, 0.4)
+ },
+
+ /* Styles applied to the root element if `variant="determinate"`. */
+ determinate: {},
+
+ /* Styles applied to the root element if `variant="indeterminate"`. */
+ indeterminate: {},
+
+ /* Styles applied to the root element if `variant="buffer"`. */
+ buffer: {
+ backgroundColor: 'transparent'
+ },
+
+ /* Styles applied to the root element if `variant="query"`. */
+ query: {
+ transform: 'rotate(180deg)'
+ },
+
+ /* Styles applied to the additional bar element if `variant="buffer"`. */
+ dashed: {
+ position: 'absolute',
+ marginTop: 0,
+ height: '100%',
+ width: '100%',
+ animation: 'buffer 3s infinite linear',
+ // Backward compatible logic between JSS v9 and v10.
+ // To remove with the release of Material-UI v4
+ animationName: '$buffer'
+ },
+
+ /* Styles applied to the additional bar element if `variant="buffer"` & `color="primary"`. */
+ dashedColorPrimary: {
+ backgroundImage: "radial-gradient(".concat((0, _colorManipulator.lighten)(theme.palette.primary.light, 0.6), " 0%, ").concat((0, _colorManipulator.lighten)(theme.palette.primary.light, 0.6), " 16%, transparent 42%)"),
+ backgroundSize: '10px 10px',
+ backgroundPosition: '0px -23px'
+ },
+
+ /* Styles applied to the additional bar element if `variant="buffer"` & `color="secondary"`. */
+ dashedColorSecondary: {
+ backgroundImage: "radial-gradient(".concat((0, _colorManipulator.lighten)(theme.palette.secondary.light, 0.4), " 0%, ").concat((0, _colorManipulator.lighten)(theme.palette.secondary.light, 0.6), " 16%, transparent 42%)"),
+ backgroundSize: '10px 10px',
+ backgroundPosition: '0px -23px'
+ },
+
+ /* Styles applied to the layered bar1 & bar2 elements. */
+ bar: {
+ width: '100%',
+ position: 'absolute',
+ left: 0,
+ bottom: 0,
+ top: 0,
+ transition: 'transform 0.2s linear',
+ transformOrigin: 'left'
+ },
+
+ /* Styles applied to the bar elements if `color="primary"`; bar2 if `variant` not "buffer". */
+ barColorPrimary: {
+ backgroundColor: theme.palette.primary.main
+ },
+
+ /* Styles applied to the bar elements if `color="secondary"`; bar2 if `variant` not "buffer". */
+ barColorSecondary: {
+ backgroundColor: theme.palette.secondary.main
+ },
+
+ /* Styles applied to the bar1 element if `variant="indeterminate or query"`. */
+ bar1Indeterminate: {
+ width: 'auto',
+ animation: 'mui-indeterminate1 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite',
+ // Backward compatible logic between JSS v9 and v10.
+ // To remove with the release of Material-UI v4
+ animationName: '$mui-indeterminate1'
+ },
+
+ /* Styles applied to the bar1 element if `variant="determinate"`. */
+ bar1Determinate: {
+ transition: "transform .".concat(TRANSITION_DURATION, "s linear")
+ },
+
+ /* Styles applied to the bar1 element if `variant="buffer"`. */
+ bar1Buffer: {
+ zIndex: 1,
+ transition: "transform .".concat(TRANSITION_DURATION, "s linear")
+ },
+
+ /* Styles applied to the bar2 element if `variant="indeterminate or query"`. */
+ bar2Indeterminate: {
+ width: 'auto',
+ animation: 'mui-indeterminate2 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite',
+ // Backward compatible logic between JSS v9 and v10.
+ // To remove with the release of Material-UI v4
+ animationName: '$mui-indeterminate2',
+ animationDelay: '1.15s'
+ },
+
+ /* Styles applied to the bar2 element if `variant="buffer"`. */
+ bar2Buffer: {
+ transition: "transform .".concat(TRANSITION_DURATION, "s linear")
+ },
+ // Legends:
+ // || represents the viewport
+ // - represents a light background
+ // x represents a dark background
+ '@keyframes mui-indeterminate1': {
+ // |-----|---x-||-----||-----|
+ '0%': {
+ left: '-35%',
+ right: '100%'
+ },
+ // |-----|-----||-----||xxxx-|
+ '60%': {
+ left: '100%',
+ right: '-90%'
+ },
+ '100%': {
+ left: '100%',
+ right: '-90%'
+ }
+ },
+ '@keyframes mui-indeterminate2': {
+ // |xxxxx|xxxxx||-----||-----|
+ '0%': {
+ left: '-200%',
+ right: '100%'
+ },
+ // |-----|-----||-----||-x----|
+ '60%': {
+ left: '107%',
+ right: '-8%'
+ },
+ '100%': {
+ left: '107%',
+ right: '-8%'
+ }
+ },
+ '@keyframes buffer': {
+ '0%': {
+ opacity: 1,
+ backgroundPosition: '0px -23px'
+ },
+ '50%': {
+ opacity: 0,
+ backgroundPosition: '0px -23px'
+ },
+ '100%': {
+ opacity: 1,
+ backgroundPosition: '-200px -23px'
+ }
+ }
+ };
+};
+/**
+ * ## ARIA
+ *
+ * If the progress bar is describing the loading progress of a particular region of a page,
+ * you should use `aria-describedby` to point to the progress bar, and set the `aria-busy`
+ * attribute to `true` on that region until it has finished loading.
+ */
+
+
+exports.styles = styles;
+
+function LinearProgress(props) {
+ var _classNames, _classNames2, _classNames3, _classNames4;
+
+ var classes = props.classes,
+ classNameProp = props.className,
+ color = props.color,
+ value = props.value,
+ valueBuffer = props.valueBuffer,
+ variant = props.variant,
+ other = (0, _objectWithoutProperties2.default)(props, ["classes", "className", "color", "value", "valueBuffer", "variant"]);
+ var className = (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.colorPrimary, color === 'primary'), (0, _defineProperty2.default)(_classNames, classes.colorSecondary, color === 'secondary'), (0, _defineProperty2.default)(_classNames, classes.determinate, variant === 'determinate'), (0, _defineProperty2.default)(_classNames, classes.indeterminate, variant === 'indeterminate'), (0, _defineProperty2.default)(_classNames, classes.buffer, variant === 'buffer'), (0, _defineProperty2.default)(_classNames, classes.query, variant === 'query'), _classNames), classNameProp);
+ var dashedClass = (0, _classnames.default)(classes.dashed, (_classNames2 = {}, (0, _defineProperty2.default)(_classNames2, classes.dashedColorPrimary, color === 'primary'), (0, _defineProperty2.default)(_classNames2, classes.dashedColorSecondary, color === 'secondary'), _classNames2));
+ var bar1ClassName = (0, _classnames.default)(classes.bar, (_classNames3 = {}, (0, _defineProperty2.default)(_classNames3, classes.barColorPrimary, color === 'primary'), (0, _defineProperty2.default)(_classNames3, classes.barColorSecondary, color === 'secondary'), (0, _defineProperty2.default)(_classNames3, classes.bar1Indeterminate, variant === 'indeterminate' || variant === 'query'), (0, _defineProperty2.default)(_classNames3, classes.bar1Determinate, variant === 'determinate'), (0, _defineProperty2.default)(_classNames3, classes.bar1Buffer, variant === 'buffer'), _classNames3));
+ var bar2ClassName = (0, _classnames.default)(classes.bar, (_classNames4 = {}, (0, _defineProperty2.default)(_classNames4, classes.barColorPrimary, color === 'primary' && variant !== 'buffer'), (0, _defineProperty2.default)(_classNames4, classes.colorPrimary, color === 'primary' && variant === 'buffer'), (0, _defineProperty2.default)(_classNames4, classes.barColorSecondary, color === 'secondary' && variant !== 'buffer'), (0, _defineProperty2.default)(_classNames4, classes.colorSecondary, color === 'secondary' && variant === 'buffer'), (0, _defineProperty2.default)(_classNames4, classes.bar2Indeterminate, variant === 'indeterminate' || variant === 'query'), (0, _defineProperty2.default)(_classNames4, classes.bar2Buffer, variant === 'buffer'), _classNames4));
+ var rootProps = {};
+ var inlineStyles = {
+ bar1: {},
+ bar2: {}
+ };
+
+ if (variant === 'determinate' || variant === 'buffer') {
+ if (value !== undefined) {
+ rootProps['aria-valuenow'] = Math.round(value);
+ inlineStyles.bar1.transform = "scaleX(".concat(value / 100, ")");
+ } else {
+ true ? (0, _warning.default)(false, 'Material-UI: you need to provide a value property ' + 'when using the determinate or buffer variant of LinearProgress .') : undefined;
+ }
+ }
+
+ if (variant === 'buffer') {
+ if (valueBuffer !== undefined) {
+ inlineStyles.bar2.transform = "scaleX(".concat((valueBuffer || 0) / 100, ")");
+ } else {
+ true ? (0, _warning.default)(false, 'Material-UI: you need to provide a valueBuffer property ' + 'when using the buffer variant of LinearProgress.') : undefined;
+ }
+ }
+
+ return _react.default.createElement("div", (0, _extends2.default)({
+ className: className,
+ role: "progressbar"
+ }, rootProps, other), variant === 'buffer' ? _react.default.createElement("div", {
+ className: dashedClass
+ }) : null, _react.default.createElement("div", {
+ className: bar1ClassName,
+ style: inlineStyles.bar1
+ }), variant === 'determinate' ? null : _react.default.createElement("div", {
+ className: bar2ClassName,
+ style: inlineStyles.bar2
+ }));
+}
+
+ true ? LinearProgress.propTypes = {
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The color of the component. It supports those theme colors that make sense for this component.
+ */
+ color: _propTypes.default.oneOf(['primary', 'secondary']),
+
+ /**
+ * The value of the progress indicator for the determinate and buffer variants.
+ * Value between 0 and 100.
+ */
+ value: _propTypes.default.number,
+
+ /**
+ * The value for the buffer variant.
+ * Value between 0 and 100.
+ */
+ valueBuffer: _propTypes.default.number,
+
+ /**
+ * The variant to use.
+ * Use indeterminate or query when there is no progress value.
+ */
+ variant: _propTypes.default.oneOf(['determinate', 'indeterminate', 'buffer', 'query'])
+} : undefined;
+LinearProgress.defaultProps = {
+ color: 'primary',
+ variant: 'indeterminate'
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiLinearProgress'
+})(LinearProgress);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/LinearProgress/index.js":
+/*!**********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/LinearProgress/index.js ***!
+ \**********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _LinearProgress.default;
+ }
+});
+
+var _LinearProgress = _interopRequireDefault(__webpack_require__(/*! ./LinearProgress */ "../../node_modules/@material-ui/core/LinearProgress/LinearProgress.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Link/Link.js":
+/*!***********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Link/Link.js ***!
+ \***********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _helpers = __webpack_require__(/*! ../utils/helpers */ "../../node_modules/@material-ui/core/utils/helpers.js");
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _Typography = _interopRequireDefault(__webpack_require__(/*! ../Typography */ "../../node_modules/@material-ui/core/Typography/index.js"));
+
+// @inheritedComponent Typography
+var styles = {
+ /* Styles applied to the root element. */
+ root: {},
+
+ /* Styles applied to the root element if `underline="none"`. */
+ underlineNone: {
+ textDecoration: 'none'
+ },
+
+ /* Styles applied to the root element if `underline="hover"`. */
+ underlineHover: {
+ textDecoration: 'none',
+ '&:hover': {
+ textDecoration: 'underline'
+ }
+ },
+
+ /* Styles applied to the root element if `underline="always"`. */
+ underlineAlways: {
+ textDecoration: 'underline'
+ },
+ // Same reset as ButtonBase.root
+
+ /* Styles applied to the root element if `component="button"`. */
+ button: {
+ position: 'relative',
+ // Remove grey highlight
+ WebkitTapHighlightColor: 'transparent',
+ backgroundColor: 'transparent',
+ // Reset default value
+ // We disable the focus ring for mouse, touch and keyboard users.
+ outline: 'none',
+ border: 0,
+ margin: 0,
+ // Remove the margin in Safari
+ borderRadius: 0,
+ padding: 0,
+ // Remove the padding in Firefox
+ cursor: 'pointer',
+ userSelect: 'none',
+ verticalAlign: 'middle',
+ '-moz-appearance': 'none',
+ // Reset
+ '-webkit-appearance': 'none',
+ // Reset
+ '&::-moz-focus-inner': {
+ borderStyle: 'none' // Remove Firefox dotted outline.
+
+ }
+ }
+};
+exports.styles = styles;
+
+function Link(props) {
+ var block = props.block,
+ children = props.children,
+ classes = props.classes,
+ classNameProp = props.className,
+ component = props.component,
+ TypographyClasses = props.TypographyClasses,
+ underline = props.underline,
+ other = (0, _objectWithoutProperties2.default)(props, ["block", "children", "classes", "className", "component", "TypographyClasses", "underline"]);
+ return _react.default.createElement(_Typography.default, (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, (0, _defineProperty2.default)({}, classes.button, component === 'button'), classes["underline".concat((0, _helpers.capitalize)(underline))], classNameProp),
+ classes: TypographyClasses,
+ component: component,
+ inline: !block
+ }, other), children);
+}
+
+ true ? Link.propTypes = {
+ /**
+ * Controls whether the link is inline or not. When `block` is true the link is not inline
+ * when `block` is false it is.
+ */
+ block: _propTypes.default.bool,
+
+ /**
+ * The content of the link.
+ */
+ children: _propTypes.default.node.isRequired,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The color of the link.
+ */
+ color: _propTypes.default.oneOf(['error', 'inherit', 'primary', 'secondary', 'textPrimary', 'textSecondary']),
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a DOM element or a component.
+ */
+ component: _utils.componentPropType,
+
+ /**
+ * `classes` property applied to the [`Typography`](/api/typography/) element.
+ */
+ TypographyClasses: _propTypes.default.object,
+
+ /**
+ * Controls when the link should have an underline.
+ */
+ underline: _propTypes.default.oneOf(['none', 'hover', 'always']),
+
+ /**
+ * Applies the theme typography styles.
+ */
+ variant: _propTypes.default.string
+} : undefined;
+Link.defaultProps = {
+ block: false,
+ color: 'primary',
+ component: 'a',
+ underline: 'hover',
+ variant: 'inherit'
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiLink'
+})(Link);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Link/index.js":
+/*!************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Link/index.js ***!
+ \************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Link.default;
+ }
+});
+
+var _Link = _interopRequireDefault(__webpack_require__(/*! ./Link */ "../../node_modules/@material-ui/core/Link/Link.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/List/List.js":
+/*!***********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/List/List.js ***!
+ \***********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _ListContext = _interopRequireDefault(__webpack_require__(/*! ./ListContext */ "../../node_modules/@material-ui/core/List/ListContext.js"));
+
+var styles = {
+ /* Styles applied to the root element. */
+ root: {
+ listStyle: 'none',
+ margin: 0,
+ padding: 0,
+ position: 'relative'
+ },
+
+ /* Styles applied to the root element if `disablePadding={false}`. */
+ padding: {
+ paddingTop: 8,
+ paddingBottom: 8
+ },
+
+ /* Styles applied to the root element if `dense={true}` & `disablePadding={false}`. */
+ dense: {
+ paddingTop: 4,
+ paddingBottom: 4
+ },
+
+ /* Styles applied to the root element if a `subheader` is provided. */
+ subheader: {
+ paddingTop: 0
+ }
+};
+exports.styles = styles;
+
+function List(props) {
+ var _classNames;
+
+ var children = props.children,
+ classes = props.classes,
+ className = props.className,
+ Component = props.component,
+ dense = props.dense,
+ disablePadding = props.disablePadding,
+ subheader = props.subheader,
+ other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "component", "dense", "disablePadding", "subheader"]);
+ return _react.default.createElement(Component, (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.dense, dense && !disablePadding), (0, _defineProperty2.default)(_classNames, classes.padding, !disablePadding), (0, _defineProperty2.default)(_classNames, classes.subheader, subheader), _classNames), className)
+ }, other), _react.default.createElement(_ListContext.default.Provider, {
+ value: {
+ dense: dense
+ }
+ }, subheader, children));
+}
+
+ true ? List.propTypes = {
+ /**
+ * The content of the component.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a DOM element or a component.
+ */
+ component: _utils.componentPropType,
+
+ /**
+ * If `true`, compact vertical padding designed for keyboard and mouse input will be used for
+ * the list and list items. The property is available to descendant components as the
+ * `dense` context.
+ */
+ dense: _propTypes.default.bool,
+
+ /**
+ * If `true`, vertical padding will be removed from the list.
+ */
+ disablePadding: _propTypes.default.bool,
+
+ /**
+ * The content of the subheader, normally `ListSubheader`.
+ */
+ subheader: _propTypes.default.node
+} : undefined;
+List.defaultProps = {
+ component: 'ul',
+ dense: false,
+ disablePadding: false
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiList'
+})(List);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/List/ListContext.js":
+/*!******************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/List/ListContext.js ***!
+ \******************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = void 0;
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+/**
+ * @ignore - internal component.
+ */
+var ListContext = _react.default.createContext({});
+
+var _default = ListContext;
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/List/index.js":
+/*!************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/List/index.js ***!
+ \************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _List.default;
+ }
+});
+
+var _List = _interopRequireDefault(__webpack_require__(/*! ./List */ "../../node_modules/@material-ui/core/List/List.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ListItem/ListItem.js":
+/*!*******************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ListItem/ListItem.js ***!
+ \*******************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _ButtonBase = _interopRequireDefault(__webpack_require__(/*! ../ButtonBase */ "../../node_modules/@material-ui/core/ButtonBase/index.js"));
+
+var _reactHelpers = __webpack_require__(/*! ../utils/reactHelpers */ "../../node_modules/@material-ui/core/utils/reactHelpers.js");
+
+var _MergeListContext = _interopRequireDefault(__webpack_require__(/*! ./MergeListContext */ "../../node_modules/@material-ui/core/ListItem/MergeListContext.js"));
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the (normally root) `component` element. May be wrapped by a `container`. */
+ root: {
+ display: 'flex',
+ justifyContent: 'flex-start',
+ alignItems: 'center',
+ position: 'relative',
+ textDecoration: 'none',
+ width: '100%',
+ boxSizing: 'border-box',
+ textAlign: 'left',
+ paddingTop: 11,
+ // To use 10px in v4.0.0
+ paddingBottom: 11,
+ // To use 10px in v4.0.0
+ '&$selected, &$selected:hover': {
+ backgroundColor: theme.palette.action.selected
+ }
+ },
+
+ /* Styles applied to the `container` element if `children` includes `ListItemSecondaryAction`. */
+ container: {
+ position: 'relative'
+ },
+ // TODO: Sanity check this - why is focusVisibleClassName prop apparently applied to a div?
+
+ /* Styles applied to the `component`'s `focusVisibleClassName` property if `button={true}`. */
+ focusVisible: {
+ backgroundColor: theme.palette.action.hover
+ },
+
+ /* Legacy styles applied to the root element. Use `root` instead. */
+ default: {},
+
+ /* Styles applied to the `component` element if `dense={true}` or `children` includes `Avatar`. */
+ dense: {
+ paddingTop: 8,
+ paddingBottom: 8
+ },
+
+ /* Styles applied to the `component` element if `alignItems="flex-start"`. */
+ alignItemsFlexStart: {
+ alignItems: 'flex-start'
+ },
+
+ /* Styles applied to the inner `component` element if `disabled={true}`. */
+ disabled: {
+ opacity: 0.5
+ },
+
+ /* Styles applied to the inner `component` element if `divider={true}`. */
+ divider: {
+ borderBottom: "1px solid ".concat(theme.palette.divider),
+ backgroundClip: 'padding-box'
+ },
+
+ /* Styles applied to the inner `component` element if `disableGutters={false}`. */
+ gutters: {
+ paddingLeft: 16,
+ paddingRight: 16
+ },
+
+ /* Styles applied to the inner `component` element if `button={true}`. */
+ button: {
+ transition: theme.transitions.create('background-color', {
+ duration: theme.transitions.duration.shortest
+ }),
+ '&:hover': {
+ textDecoration: 'none',
+ backgroundColor: theme.palette.action.hover,
+ // Reset on touch devices, it doesn't add specificity
+ '@media (hover: none)': {
+ backgroundColor: 'transparent'
+ }
+ }
+ },
+
+ /* Styles applied to the `component` element if `children` includes `ListItemSecondaryAction`. */
+ secondaryAction: {
+ // Add some space to avoid collision as `ListItemSecondaryAction`
+ // is absolutely positioned.
+ paddingRight: 32
+ },
+
+ /* Styles applied to the root element if `selected={true}`. */
+ selected: {}
+ };
+};
+
+exports.styles = styles;
+
+function ListItem(props) {
+ var alignItems = props.alignItems,
+ button = props.button,
+ childrenProp = props.children,
+ classes = props.classes,
+ classNameProp = props.className,
+ componentProp = props.component,
+ ContainerComponent = props.ContainerComponent,
+ _props$ContainerProps = props.ContainerProps;
+ _props$ContainerProps = _props$ContainerProps === void 0 ? {} : _props$ContainerProps;
+ var ContainerClassName = _props$ContainerProps.className,
+ ContainerProps = (0, _objectWithoutProperties2.default)(_props$ContainerProps, ["className"]),
+ denseProp = props.dense,
+ disabled = props.disabled,
+ disableGutters = props.disableGutters,
+ divider = props.divider,
+ focusVisibleClassName = props.focusVisibleClassName,
+ selected = props.selected,
+ other = (0, _objectWithoutProperties2.default)(props, ["alignItems", "button", "children", "classes", "className", "component", "ContainerComponent", "ContainerProps", "dense", "disabled", "disableGutters", "divider", "focusVisibleClassName", "selected"]);
+ return _react.default.createElement(_MergeListContext.default, {
+ dense: denseProp,
+ alignItems: alignItems
+ }, function (_ref) {
+ var _classNames;
+
+ var dense = _ref.dense;
+
+ var children = _react.default.Children.toArray(childrenProp);
+
+ var hasAvatar = children.some(function (value) {
+ return (0, _reactHelpers.isMuiElement)(value, ['ListItemAvatar']);
+ });
+ var hasSecondaryAction = children.length && (0, _reactHelpers.isMuiElement)(children[children.length - 1], ['ListItemSecondaryAction']);
+ var className = (0, _classnames.default)(classes.root, classes.default, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.dense, dense || hasAvatar), (0, _defineProperty2.default)(_classNames, classes.gutters, !disableGutters), (0, _defineProperty2.default)(_classNames, classes.divider, divider), (0, _defineProperty2.default)(_classNames, classes.disabled, disabled), (0, _defineProperty2.default)(_classNames, classes.button, button), (0, _defineProperty2.default)(_classNames, classes.alignItemsFlexStart, alignItems === 'flex-start'), (0, _defineProperty2.default)(_classNames, classes.secondaryAction, hasSecondaryAction), (0, _defineProperty2.default)(_classNames, classes.selected, selected), _classNames), classNameProp);
+ var componentProps = (0, _extends2.default)({
+ className: className,
+ disabled: disabled
+ }, other);
+ var Component = componentProp || 'li';
+
+ if (button) {
+ componentProps.component = componentProp || 'div';
+ componentProps.focusVisibleClassName = (0, _classnames.default)(classes.focusVisible, focusVisibleClassName);
+ Component = _ButtonBase.default;
+ }
+
+ if (hasSecondaryAction) {
+ // Use div by default.
+ Component = !componentProps.component && !componentProp ? 'div' : Component; // Avoid nesting of li > li.
+
+ if (ContainerComponent === 'li') {
+ if (Component === 'li') {
+ Component = 'div';
+ } else if (componentProps.component === 'li') {
+ componentProps.component = 'div';
+ }
+ }
+
+ return _react.default.createElement(ContainerComponent, (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.container, ContainerClassName)
+ }, ContainerProps), _react.default.createElement(Component, componentProps, children), children.pop());
+ }
+
+ return _react.default.createElement(Component, componentProps, children);
+ });
+}
+
+ true ? ListItem.propTypes = {
+ /**
+ * Defines the `align-items` style property.
+ */
+ alignItems: _propTypes.default.oneOf(['flex-start', 'center']),
+
+ /**
+ * If `true`, the list item will be a button (using `ButtonBase`).
+ */
+ button: _propTypes.default.bool,
+
+ /**
+ * The content of the component.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a DOM element or a component.
+ * By default, it's a `li` when `button` is `false` and a `div` when `button` is `true`.
+ */
+ component: _utils.componentPropType,
+
+ /**
+ * The container component used when a `ListItemSecondaryAction` is rendered.
+ */
+ ContainerComponent: _utils.componentPropType,
+
+ /**
+ * Properties applied to the container element when the component
+ * is used to display a `ListItemSecondaryAction`.
+ */
+ ContainerProps: _propTypes.default.object,
+
+ /**
+ * If `true`, compact vertical padding designed for keyboard and mouse input will be used.
+ */
+ dense: _propTypes.default.bool,
+
+ /**
+ * If `true`, the list item will be disabled.
+ */
+ disabled: _propTypes.default.bool,
+
+ /**
+ * If `true`, the left and right padding is removed.
+ */
+ disableGutters: _propTypes.default.bool,
+
+ /**
+ * If `true`, a 1px light border is added to the bottom of the list item.
+ */
+ divider: _propTypes.default.bool,
+
+ /**
+ * @ignore
+ */
+ focusVisibleClassName: _propTypes.default.string,
+
+ /**
+ * Use to apply selected styling.
+ */
+ selected: _propTypes.default.bool
+} : undefined;
+ListItem.defaultProps = {
+ alignItems: 'center',
+ button: false,
+ ContainerComponent: 'li',
+ dense: false,
+ disabled: false,
+ disableGutters: false,
+ divider: false,
+ selected: false
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiListItem'
+})(ListItem);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ListItem/MergeListContext.js":
+/*!***************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ListItem/MergeListContext.js ***!
+ \***************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = void 0;
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _ListContext = _interopRequireDefault(__webpack_require__(/*! ../List/ListContext */ "../../node_modules/@material-ui/core/List/ListContext.js"));
+
+/**
+ * @ignore - internal component.
+ *
+ * Consumes a context and passes that context merged with its props.
+ */
+function MergeListContext(props) {
+ var alignItems = props.alignItems,
+ children = props.children,
+ dense = props.dense;
+ return _react.default.createElement(_ListContext.default.Consumer, null, function (context) {
+ var childContext = {
+ dense: dense || context.dense || false,
+ alignItems: alignItems
+ };
+ return _react.default.createElement(_ListContext.default.Provider, {
+ value: childContext
+ }, children(childContext));
+ });
+}
+
+ true ? MergeListContext.propTypes = {
+ alignItems: _propTypes.default.oneOf(['flex-start', 'center']).isRequired,
+ children: _propTypes.default.func.isRequired,
+ dense: _propTypes.default.bool.isRequired
+} : undefined;
+var _default = MergeListContext;
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ListItem/index.js":
+/*!****************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ListItem/index.js ***!
+ \****************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _ListItem.default;
+ }
+});
+
+var _ListItem = _interopRequireDefault(__webpack_require__(/*! ./ListItem */ "../../node_modules/@material-ui/core/ListItem/ListItem.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ListItemAvatar/ListItemAvatar.js":
+/*!*******************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ListItemAvatar/ListItemAvatar.js ***!
+ \*******************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _ListContext = _interopRequireDefault(__webpack_require__(/*! ../List/ListContext */ "../../node_modules/@material-ui/core/List/ListContext.js"));
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ width: 36,
+ height: 36,
+ fontSize: theme.typography.pxToRem(18),
+ marginRight: 4
+ },
+
+ /* Styles applied to the root element when. */
+ alignItemsFlexStart: {
+ marginTop: 4
+ },
+
+ /* Styles applied to the children – typically the `Avatar` component. */
+ icon: {
+ width: 20,
+ height: 20,
+ fontSize: theme.typography.pxToRem(20)
+ }
+ };
+};
+/**
+ * This is a simple wrapper to apply the `dense`
+ * and `align-items="flex-start"` mode styles to `Avatar`.
+ */
+
+
+exports.styles = styles;
+
+function ListItemAvatar(props) {
+ var children = props.children,
+ classes = props.classes,
+ className = props.className,
+ other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className"]);
+ return _react.default.createElement(_ListContext.default.Consumer, null, function (context) {
+ var _classNames;
+
+ return _react.default.cloneElement(children, (0, _extends2.default)({
+ className: (0, _classnames.default)((_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.root, context.dense), (0, _defineProperty2.default)(_classNames, classes.alignItemsFlexStart, context.alignItems === 'flex-start'), _classNames), className, children.props.className),
+ childrenClassName: (0, _classnames.default)((0, _defineProperty2.default)({}, classes.icon, context.dense), children.props.childrenClassName)
+ }, other));
+ });
+}
+
+ true ? ListItemAvatar.propTypes = {
+ /**
+ * The content of the component – normally `Avatar`.
+ */
+ children: _propTypes.default.element.isRequired,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string
+} : undefined;
+ListItemAvatar.muiName = 'ListItemAvatar';
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiListItemAvatar'
+})(ListItemAvatar);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ListItemAvatar/index.js":
+/*!**********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ListItemAvatar/index.js ***!
+ \**********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _ListItemAvatar.default;
+ }
+});
+
+var _ListItemAvatar = _interopRequireDefault(__webpack_require__(/*! ./ListItemAvatar */ "../../node_modules/@material-ui/core/ListItemAvatar/ListItemAvatar.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ListItemIcon/ListItemIcon.js":
+/*!***************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ListItemIcon/ListItemIcon.js ***!
+ \***************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ marginRight: 16,
+ color: theme.palette.action.active,
+ flexShrink: 0,
+ display: 'inline-flex'
+ }
+ };
+};
+/**
+ * A simple wrapper to apply `List` styles to an `Icon` or `SvgIcon`.
+ */
+
+
+exports.styles = styles;
+
+function ListItemIcon(props) {
+ var children = props.children,
+ classes = props.classes,
+ classNameProp = props.className,
+ other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className"]);
+ return _react.default.createElement("div", (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, classNameProp)
+ }, other), children);
+}
+
+ true ? ListItemIcon.propTypes = {
+ /**
+ * The content of the component, normally `Icon`, `SvgIcon`,
+ * or a `@material-ui/icons` SVG icon element.
+ */
+ children: _propTypes.default.element.isRequired,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string
+} : undefined;
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiListItemIcon'
+})(ListItemIcon);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ListItemIcon/index.js":
+/*!********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ListItemIcon/index.js ***!
+ \********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _ListItemIcon.default;
+ }
+});
+
+var _ListItemIcon = _interopRequireDefault(__webpack_require__(/*! ./ListItemIcon */ "../../node_modules/@material-ui/core/ListItemIcon/ListItemIcon.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ListItemSecondaryAction/ListItemSecondaryAction.js":
+/*!*************************************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ListItemSecondaryAction/ListItemSecondaryAction.js ***!
+ \*************************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var styles = {
+ /* Styles applied to the root element. */
+ root: {
+ position: 'absolute',
+ right: 4,
+ top: '50%',
+ transform: 'translateY(-50%)'
+ }
+};
+exports.styles = styles;
+
+function ListItemSecondaryAction(props) {
+ var children = props.children,
+ classes = props.classes,
+ className = props.className,
+ other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className"]);
+ return _react.default.createElement("div", (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, className)
+ }, other), children);
+}
+
+ true ? ListItemSecondaryAction.propTypes = {
+ /**
+ * The content of the component, normally an `IconButton` or selection control.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string
+} : undefined;
+ListItemSecondaryAction.muiName = 'ListItemSecondaryAction';
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiListItemSecondaryAction'
+})(ListItemSecondaryAction);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ListItemSecondaryAction/index.js":
+/*!*******************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ListItemSecondaryAction/index.js ***!
+ \*******************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _ListItemSecondaryAction.default;
+ }
+});
+
+var _ListItemSecondaryAction = _interopRequireDefault(__webpack_require__(/*! ./ListItemSecondaryAction */ "../../node_modules/@material-ui/core/ListItemSecondaryAction/ListItemSecondaryAction.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ListItemText/ListItemText.js":
+/*!***************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ListItemText/ListItemText.js ***!
+ \***************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _Typography = _interopRequireDefault(__webpack_require__(/*! ../Typography */ "../../node_modules/@material-ui/core/Typography/index.js"));
+
+var _ListContext = _interopRequireDefault(__webpack_require__(/*! ../List/ListContext */ "../../node_modules/@material-ui/core/List/ListContext.js"));
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ flex: '1 1 auto',
+ minWidth: 0,
+ padding: '0 16px',
+ '&:first-child': {
+ paddingLeft: 0
+ }
+ },
+
+ /* Styles applied to the root element if `inset={true}`. */
+ inset: {
+ '&:first-child': {
+ paddingLeft: 56
+ }
+ },
+
+ /* Styles applied to the root element if `context.dense` is `true`. */
+ dense: {
+ fontSize: theme.typography.pxToRem(13)
+ },
+
+ /* Styles applied to the primary `Typography` component. */
+ primary: {
+ '&$textDense': {
+ fontSize: 'inherit'
+ }
+ },
+
+ /* Styles applied to the secondary `Typography` component. */
+ secondary: {
+ '&$textDense': {
+ fontSize: 'inherit'
+ }
+ },
+
+ /* Styles applied to the `Typography` components if `context.dense` is `true`. */
+ textDense: {}
+ };
+};
+
+exports.styles = styles;
+
+function ListItemText(props) {
+ var children = props.children,
+ classes = props.classes,
+ classNameProp = props.className,
+ disableTypography = props.disableTypography,
+ inset = props.inset,
+ primaryProp = props.primary,
+ primaryTypographyProps = props.primaryTypographyProps,
+ secondaryProp = props.secondary,
+ secondaryTypographyProps = props.secondaryTypographyProps,
+ theme = props.theme,
+ other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "disableTypography", "inset", "primary", "primaryTypographyProps", "secondary", "secondaryTypographyProps", "theme"]);
+ return _react.default.createElement(_ListContext.default.Consumer, null, function (_ref) {
+ var _classNames3;
+
+ var dense = _ref.dense;
+ var primary = primaryProp != null ? primaryProp : children;
+
+ if (primary != null && primary.type !== _Typography.default && !disableTypography) {
+ primary = _react.default.createElement(_Typography.default, (0, _extends2.default)({
+ variant: theme.typography.useNextVariants ? 'body1' : 'subheading',
+ className: (0, _classnames.default)(classes.primary, (0, _defineProperty2.default)({}, classes.textDense, dense)),
+ component: "span"
+ }, primaryTypographyProps), primary);
+ }
+
+ var secondary = secondaryProp;
+
+ if (secondary != null && secondary.type !== _Typography.default && !disableTypography) {
+ secondary = _react.default.createElement(_Typography.default, (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.secondary, (0, _defineProperty2.default)({}, classes.textDense, dense)),
+ color: "textSecondary"
+ }, secondaryTypographyProps), secondary);
+ }
+
+ return _react.default.createElement("div", (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, (_classNames3 = {}, (0, _defineProperty2.default)(_classNames3, classes.dense, dense), (0, _defineProperty2.default)(_classNames3, classes.inset, inset), _classNames3), classNameProp)
+ }, other), primary, secondary);
+ });
+}
+
+ true ? ListItemText.propTypes = {
+ /**
+ * Alias for the `primary` property.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * If `true`, the children won't be wrapped by a Typography component.
+ * This can be useful to render an alternative Typography variant by wrapping
+ * the `children` (or `primary`) text, and optional `secondary` text
+ * with the Typography component.
+ */
+ disableTypography: _propTypes.default.bool,
+
+ /**
+ * If `true`, the children will be indented.
+ * This should be used if there is no left avatar or left icon.
+ */
+ inset: _propTypes.default.bool,
+
+ /**
+ * The main content element.
+ */
+ primary: _propTypes.default.node,
+
+ /**
+ * These props will be forwarded to the primary typography component
+ * (as long as disableTypography is not `true`).
+ */
+ primaryTypographyProps: _propTypes.default.object,
+
+ /**
+ * The secondary content element.
+ */
+ secondary: _propTypes.default.node,
+
+ /**
+ * These props will be forwarded to the secondary typography component
+ * (as long as disableTypography is not `true`).
+ */
+ secondaryTypographyProps: _propTypes.default.object,
+
+ /**
+ * @ignore
+ */
+ theme: _propTypes.default.object.isRequired
+} : undefined;
+ListItemText.defaultProps = {
+ disableTypography: false,
+ inset: false
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiListItemText',
+ withTheme: true
+})(ListItemText);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ListItemText/index.js":
+/*!********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ListItemText/index.js ***!
+ \********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _ListItemText.default;
+ }
+});
+
+var _ListItemText = _interopRequireDefault(__webpack_require__(/*! ./ListItemText */ "../../node_modules/@material-ui/core/ListItemText/ListItemText.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ListSubheader/ListSubheader.js":
+/*!*****************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ListSubheader/ListSubheader.js ***!
+ \*****************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _helpers = __webpack_require__(/*! ../utils/helpers */ "../../node_modules/@material-ui/core/utils/helpers.js");
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ boxSizing: 'border-box',
+ lineHeight: '48px',
+ listStyle: 'none',
+ color: theme.palette.text.secondary,
+ fontFamily: theme.typography.fontFamily,
+ fontWeight: theme.typography.fontWeightMedium,
+ fontSize: theme.typography.pxToRem(14)
+ },
+
+ /* Styles applied to the root element if `color="primary"`. */
+ colorPrimary: {
+ color: theme.palette.primary.main
+ },
+
+ /* Styles applied to the root element if `color="inherit"`. */
+ colorInherit: {
+ color: 'inherit'
+ },
+
+ /* Styles applied to the inner `component` element if `disableGutters={false}`. */
+ gutters: {
+ paddingLeft: 16,
+ paddingRight: 16
+ },
+
+ /* Styles applied to the root element if `inset={true}`. */
+ inset: {
+ paddingLeft: 72
+ },
+
+ /* Styles applied to the root element if `disableSticky={false}`. */
+ sticky: {
+ position: 'sticky',
+ top: 0,
+ zIndex: 1,
+ backgroundColor: 'inherit'
+ }
+ };
+};
+
+exports.styles = styles;
+
+function ListSubheader(props) {
+ var _classNames;
+
+ var classes = props.classes,
+ className = props.className,
+ color = props.color,
+ Component = props.component,
+ disableGutters = props.disableGutters,
+ disableSticky = props.disableSticky,
+ inset = props.inset,
+ other = (0, _objectWithoutProperties2.default)(props, ["classes", "className", "color", "component", "disableGutters", "disableSticky", "inset"]);
+ return _react.default.createElement(Component, (0, _extends2.default)({
+ className: (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes["color".concat((0, _helpers.capitalize)(color))], color !== 'default'), (0, _defineProperty2.default)(_classNames, classes.inset, inset), (0, _defineProperty2.default)(_classNames, classes.sticky, !disableSticky), (0, _defineProperty2.default)(_classNames, classes.gutters, !disableGutters), _classNames), className)
+ }, other));
+}
+
+ true ? ListSubheader.propTypes = {
+ /**
+ * The content of the component.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The color of the component. It supports those theme colors that make sense for this component.
+ */
+ color: _propTypes.default.oneOf(['default', 'primary', 'inherit']),
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a DOM element or a component.
+ */
+ component: _utils.componentPropType,
+
+ /**
+ * If `true`, the List Subheader will not have gutters.
+ */
+ disableGutters: _propTypes.default.bool,
+
+ /**
+ * If `true`, the List Subheader will not stick to the top during scroll.
+ */
+ disableSticky: _propTypes.default.bool,
+
+ /**
+ * If `true`, the List Subheader will be indented.
+ */
+ inset: _propTypes.default.bool
+} : undefined;
+ListSubheader.defaultProps = {
+ color: 'default',
+ component: 'li',
+ disableGutters: false,
+ disableSticky: false,
+ inset: false
+};
+ListSubheader.muiName = 'ListSubheader';
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiListSubheader'
+})(ListSubheader);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/ListSubheader/index.js":
+/*!*********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/ListSubheader/index.js ***!
+ \*********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _ListSubheader.default;
+ }
+});
+
+var _ListSubheader = _interopRequireDefault(__webpack_require__(/*! ./ListSubheader */ "../../node_modules/@material-ui/core/ListSubheader/ListSubheader.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Menu/Menu.js":
+/*!***********************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Menu/Menu.js ***!
+ \***********************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../../node_modules/@babel/runtime/helpers/classCallCheck.js"));
+
+var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../../node_modules/@babel/runtime/helpers/createClass.js"));
+
+var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
+
+var _getPrototypeOf3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
+
+var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../../node_modules/@babel/runtime/helpers/inherits.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "../../node_modules/react-dom/index.js"));
+
+var _scrollbarSize = _interopRequireDefault(__webpack_require__(/*! dom-helpers/util/scrollbarSize */ "../../node_modules/dom-helpers/util/scrollbarSize.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _Popover = _interopRequireDefault(__webpack_require__(/*! ../Popover */ "../../node_modules/@material-ui/core/Popover/index.js"));
+
+var _MenuList = _interopRequireDefault(__webpack_require__(/*! ../MenuList */ "../../node_modules/@material-ui/core/MenuList/index.js"));
+
+// @inheritedComponent Popover
+var RTL_ORIGIN = {
+ vertical: 'top',
+ horizontal: 'right'
+};
+var LTR_ORIGIN = {
+ vertical: 'top',
+ horizontal: 'left'
+};
+var styles = {
+ /* Styles applied to the `Paper` component. */
+ paper: {
+ // specZ: The maximum height of a simple menu should be one or more rows less than the view
+ // height. This ensures a tapable area outside of the simple menu with which to dismiss
+ // the menu.
+ maxHeight: 'calc(100% - 96px)',
+ // Add iOS momentum scrolling.
+ WebkitOverflowScrolling: 'touch'
+ }
+};
+exports.styles = styles;
+
+var Menu =
+/*#__PURE__*/
+function (_React$Component) {
+ (0, _inherits2.default)(Menu, _React$Component);
+
+ function Menu() {
+ var _getPrototypeOf2;
+
+ var _this;
+
+ (0, _classCallCheck2.default)(this, Menu);
+
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
+ }
+
+ _this = (0, _possibleConstructorReturn2.default)(this, (_getPrototypeOf2 = (0, _getPrototypeOf3.default)(Menu)).call.apply(_getPrototypeOf2, [this].concat(args)));
+
+ _this.getContentAnchorEl = function () {
+ if (_this.menuListRef.selectedItemRef) {
+ return _reactDom.default.findDOMNode(_this.menuListRef.selectedItemRef);
+ }
+
+ return _reactDom.default.findDOMNode(_this.menuListRef).firstChild;
+ };
+
+ _this.focus = function () {
+ if (_this.menuListRef && _this.menuListRef.selectedItemRef) {
+ _reactDom.default.findDOMNode(_this.menuListRef.selectedItemRef).focus();
+
+ return;
+ }
+
+ var menuList = _reactDom.default.findDOMNode(_this.menuListRef);
+
+ if (menuList && menuList.firstChild) {
+ menuList.firstChild.focus();
+ }
+ };
+
+ _this.handleMenuListRef = function (ref) {
+ _this.menuListRef = ref;
+ };
+
+ _this.handleEntering = function (element) {
+ var _this$props = _this.props,
+ disableAutoFocusItem = _this$props.disableAutoFocusItem,
+ theme = _this$props.theme;
+
+ var menuList = _reactDom.default.findDOMNode(_this.menuListRef); // Focus so the scroll computation of the Popover works as expected.
+
+
+ if (disableAutoFocusItem !== true) {
+ _this.focus();
+ } // Let's ignore that piece of logic if users are already overriding the width
+ // of the menu.
+
+
+ if (menuList && element.clientHeight < menuList.clientHeight && !menuList.style.width) {
+ var size = "".concat((0, _scrollbarSize.default)(), "px");
+ menuList.style[theme.direction === 'rtl' ? 'paddingLeft' : 'paddingRight'] = size;
+ menuList.style.width = "calc(100% + ".concat(size, ")");
+ }
+
+ if (_this.props.onEntering) {
+ _this.props.onEntering(element);
+ }
+ };
+
+ _this.handleListKeyDown = function (event, key) {
+ if (key === 'tab') {
+ event.preventDefault();
+
+ if (_this.props.onClose) {
+ _this.props.onClose(event, 'tabKeyDown');
+ }
+ }
+ };
+
+ return _this;
+ }
+
+ (0, _createClass2.default)(Menu, [{
+ key: "componentDidMount",
+ value: function componentDidMount() {
+ if (this.props.open && this.props.disableAutoFocusItem !== true) {
+ this.focus();
+ }
+ }
+ }, {
+ key: "render",
+ value: function render() {
+ var _this$props2 = this.props,
+ children = _this$props2.children,
+ classes = _this$props2.classes,
+ disableAutoFocusItem = _this$props2.disableAutoFocusItem,
+ MenuListProps = _this$props2.MenuListProps,
+ onEntering = _this$props2.onEntering,
+ _this$props2$PaperPro = _this$props2.PaperProps,
+ PaperProps = _this$props2$PaperPro === void 0 ? {} : _this$props2$PaperPro,
+ PopoverClasses = _this$props2.PopoverClasses,
+ theme = _this$props2.theme,
+ other = (0, _objectWithoutProperties2.default)(_this$props2, ["children", "classes", "disableAutoFocusItem", "MenuListProps", "onEntering", "PaperProps", "PopoverClasses", "theme"]);
+ return _react.default.createElement(_Popover.default, (0, _extends2.default)({
+ getContentAnchorEl: this.getContentAnchorEl,
+ classes: PopoverClasses,
+ onEntering: this.handleEntering,
+ anchorOrigin: theme.direction === 'rtl' ? RTL_ORIGIN : LTR_ORIGIN,
+ transformOrigin: theme.direction === 'rtl' ? RTL_ORIGIN : LTR_ORIGIN,
+ PaperProps: (0, _extends2.default)({}, PaperProps, {
+ classes: (0, _extends2.default)({}, PaperProps.classes, {
+ root: classes.paper
+ })
+ })
+ }, other), _react.default.createElement(_MenuList.default, (0, _extends2.default)({
+ onKeyDown: this.handleListKeyDown
+ }, MenuListProps, {
+ ref: this.handleMenuListRef
+ }), children));
+ }
+ }]);
+ return Menu;
+}(_react.default.Component);
+
+ true ? Menu.propTypes = {
+ /**
+ * The DOM element used to set the position of the menu.
+ */
+ anchorEl: _propTypes.default.oneOfType([_propTypes.default.object, _propTypes.default.func]),
+
+ /**
+ * Menu contents, normally `MenuItem`s.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * If `true`, the selected / first menu item will not be auto focused.
+ */
+ disableAutoFocusItem: _propTypes.default.bool,
+
+ /**
+ * Properties applied to the [`MenuList`](/api/menu-list/) element.
+ */
+ MenuListProps: _propTypes.default.object,
+
+ /**
+ * Callback fired when the component requests to be closed.
+ *
+ * @param {object} event The event source of the callback
+ * @param {string} reason Can be:`"escapeKeyDown"`, `"backdropClick"`, `"tabKeyDown"`
+ */
+ onClose: _propTypes.default.func,
+
+ /**
+ * Callback fired before the Menu enters.
+ */
+ onEnter: _propTypes.default.func,
+
+ /**
+ * Callback fired when the Menu has entered.
+ */
+ onEntered: _propTypes.default.func,
+
+ /**
+ * Callback fired when the Menu is entering.
+ */
+ onEntering: _propTypes.default.func,
+
+ /**
+ * Callback fired before the Menu exits.
+ */
+ onExit: _propTypes.default.func,
+
+ /**
+ * Callback fired when the Menu has exited.
+ */
+ onExited: _propTypes.default.func,
+
+ /**
+ * Callback fired when the Menu is exiting.
+ */
+ onExiting: _propTypes.default.func,
+
+ /**
+ * If `true`, the menu is visible.
+ */
+ open: _propTypes.default.bool.isRequired,
+
+ /**
+ * @ignore
+ */
+ PaperProps: _propTypes.default.object,
+
+ /**
+ * `classes` property applied to the [`Popover`](/api/popover/) element.
+ */
+ PopoverClasses: _propTypes.default.object,
+
+ /**
+ * @ignore
+ */
+ theme: _propTypes.default.object.isRequired,
+
+ /**
+ * The length of the transition in `ms`, or 'auto'
+ */
+ transitionDuration: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.shape({
+ enter: _propTypes.default.number,
+ exit: _propTypes.default.number
+ }), _propTypes.default.oneOf(['auto'])])
+} : undefined;
+Menu.defaultProps = {
+ disableAutoFocusItem: false,
+ transitionDuration: 'auto'
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiMenu',
+ withTheme: true
+})(Menu);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Menu/index.js":
+/*!************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Menu/index.js ***!
+ \************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Menu.default;
+ }
+});
+
+var _Menu = _interopRequireDefault(__webpack_require__(/*! ./Menu */ "../../node_modules/@material-ui/core/Menu/Menu.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/MenuItem/MenuItem.js":
+/*!*******************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/MenuItem/MenuItem.js ***!
+ \*******************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _ListItem = _interopRequireDefault(__webpack_require__(/*! ../ListItem */ "../../node_modules/@material-ui/core/ListItem/index.js"));
+
+// @inheritedComponent ListItem
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: (0, _extends2.default)({}, theme.typography.subheading, {
+ height: 24,
+ boxSizing: 'content-box',
+ width: 'auto',
+ overflow: 'hidden',
+ whiteSpace: 'nowrap',
+ '&$selected': {}
+ }),
+
+ /* Styles applied to the root element if `disableGutters={false}`. */
+ gutters: {
+ paddingLeft: 16,
+ paddingRight: 16
+ },
+
+ /* Styles applied to the root element if `selected={true}`. */
+ selected: {}
+ };
+};
+
+exports.styles = styles;
+
+function MenuItem(props) {
+ var _classNames;
+
+ var classes = props.classes,
+ className = props.className,
+ component = props.component,
+ disableGutters = props.disableGutters,
+ role = props.role,
+ selected = props.selected,
+ other = (0, _objectWithoutProperties2.default)(props, ["classes", "className", "component", "disableGutters", "role", "selected"]);
+ return _react.default.createElement(_ListItem.default, (0, _extends2.default)({
+ button: true,
+ role: role,
+ tabIndex: -1,
+ component: component,
+ selected: selected,
+ disableGutters: disableGutters,
+ className: (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.selected, selected), (0, _defineProperty2.default)(_classNames, classes.gutters, !disableGutters), _classNames), className)
+ }, other));
+}
+
+ true ? MenuItem.propTypes = {
+ /**
+ * Menu item contents.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a DOM element or a component.
+ */
+ component: _utils.componentPropType,
+
+ /**
+ * If `true`, the left and right padding is removed.
+ */
+ disableGutters: _propTypes.default.bool,
+
+ /**
+ * @ignore
+ */
+ role: _propTypes.default.string,
+
+ /**
+ * @ignore
+ */
+ selected: _propTypes.default.bool
+} : undefined;
+MenuItem.defaultProps = {
+ component: 'li',
+ disableGutters: false,
+ role: 'menuitem'
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiMenuItem'
+})(MenuItem);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/MenuItem/index.js":
+/*!****************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/MenuItem/index.js ***!
+ \****************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _MenuItem.default;
+ }
+});
+
+var _MenuItem = _interopRequireDefault(__webpack_require__(/*! ./MenuItem */ "../../node_modules/@material-ui/core/MenuItem/MenuItem.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/MenuList/MenuList.js":
+/*!*******************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/MenuList/MenuList.js ***!
+ \*******************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../../node_modules/@babel/runtime/helpers/classCallCheck.js"));
+
+var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../../node_modules/@babel/runtime/helpers/createClass.js"));
+
+var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
+
+var _getPrototypeOf3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
+
+var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../../node_modules/@babel/runtime/helpers/inherits.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "../../node_modules/react-dom/index.js"));
+
+var _keycode = _interopRequireDefault(__webpack_require__(/*! keycode */ "../../node_modules/keycode/index.js"));
+
+var _warning = _interopRequireDefault(__webpack_require__(/*! warning */ "../../node_modules/warning/warning.js"));
+
+var _ownerDocument = _interopRequireDefault(__webpack_require__(/*! ../utils/ownerDocument */ "../../node_modules/@material-ui/core/utils/ownerDocument.js"));
+
+var _List = _interopRequireDefault(__webpack_require__(/*! ../List */ "../../node_modules/@material-ui/core/List/index.js"));
+
+// @inheritedComponent List
+var MenuList =
+/*#__PURE__*/
+function (_React$Component) {
+ (0, _inherits2.default)(MenuList, _React$Component);
+
+ function MenuList() {
+ var _getPrototypeOf2;
+
+ var _this;
+
+ (0, _classCallCheck2.default)(this, MenuList);
+
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
+ }
+
+ _this = (0, _possibleConstructorReturn2.default)(this, (_getPrototypeOf2 = (0, _getPrototypeOf3.default)(MenuList)).call.apply(_getPrototypeOf2, [this].concat(args)));
+ _this.state = {
+ currentTabIndex: null
+ };
+
+ _this.handleBlur = function (event) {
+ _this.blurTimer = setTimeout(function () {
+ if (_this.listRef) {
+ var list = _this.listRef;
+ var currentFocus = (0, _ownerDocument.default)(list).activeElement;
+
+ if (!list.contains(currentFocus)) {
+ _this.resetTabIndex();
+ }
+ }
+ }, 30);
+
+ if (_this.props.onBlur) {
+ _this.props.onBlur(event);
+ }
+ };
+
+ _this.handleKeyDown = function (event) {
+ var list = _this.listRef;
+ var key = (0, _keycode.default)(event);
+ var currentFocus = (0, _ownerDocument.default)(list).activeElement;
+
+ if ((key === 'up' || key === 'down') && (!currentFocus || currentFocus && !list.contains(currentFocus))) {
+ if (_this.selectedItemRef) {
+ _this.selectedItemRef.focus();
+ } else {
+ list.firstChild.focus();
+ }
+ } else if (key === 'down') {
+ event.preventDefault();
+
+ if (currentFocus.nextElementSibling) {
+ currentFocus.nextElementSibling.focus();
+ } else if (!_this.props.disableListWrap) {
+ list.firstChild.focus();
+ }
+ } else if (key === 'up') {
+ event.preventDefault();
+
+ if (currentFocus.previousElementSibling) {
+ currentFocus.previousElementSibling.focus();
+ } else if (!_this.props.disableListWrap) {
+ list.lastChild.focus();
+ }
+ }
+
+ if (_this.props.onKeyDown) {
+ _this.props.onKeyDown(event, key);
+ }
+ };
+
+ _this.handleItemFocus = function (event) {
+ var list = _this.listRef;
+
+ if (list) {
+ for (var i = 0; i < list.children.length; i += 1) {
+ if (list.children[i] === event.currentTarget) {
+ _this.setTabIndex(i);
+
+ break;
+ }
+ }
+ }
+ };
+
+ return _this;
+ }
+
+ (0, _createClass2.default)(MenuList, [{
+ key: "componentDidMount",
+ value: function componentDidMount() {
+ this.resetTabIndex();
+ }
+ }, {
+ key: "componentWillUnmount",
+ value: function componentWillUnmount() {
+ clearTimeout(this.blurTimer);
+ }
+ }, {
+ key: "setTabIndex",
+ value: function setTabIndex(index) {
+ this.setState({
+ currentTabIndex: index
+ });
+ }
+ }, {
+ key: "focus",
+ value: function focus() {
+ var currentTabIndex = this.state.currentTabIndex;
+ var list = this.listRef;
+
+ if (!list || !list.children || !list.firstChild) {
+ return;
+ }
+
+ if (currentTabIndex && currentTabIndex >= 0) {
+ list.children[currentTabIndex].focus();
+ } else {
+ list.firstChild.focus();
+ }
+ }
+ }, {
+ key: "resetTabIndex",
+ value: function resetTabIndex() {
+ var list = this.listRef;
+ var currentFocus = (0, _ownerDocument.default)(list).activeElement;
+ var items = [];
+
+ for (var i = 0; i < list.children.length; i += 1) {
+ items.push(list.children[i]);
+ }
+
+ var currentFocusIndex = items.indexOf(currentFocus);
+
+ if (currentFocusIndex !== -1) {
+ return this.setTabIndex(currentFocusIndex);
+ }
+
+ if (this.selectedItemRef) {
+ return this.setTabIndex(items.indexOf(this.selectedItemRef));
+ }
+
+ return this.setTabIndex(0);
+ }
+ }, {
+ key: "render",
+ value: function render() {
+ var _this2 = this;
+
+ var _this$props = this.props,
+ children = _this$props.children,
+ className = _this$props.className,
+ onBlur = _this$props.onBlur,
+ onKeyDown = _this$props.onKeyDown,
+ disableListWrap = _this$props.disableListWrap,
+ other = (0, _objectWithoutProperties2.default)(_this$props, ["children", "className", "onBlur", "onKeyDown", "disableListWrap"]);
+ return _react.default.createElement(_List.default, (0, _extends2.default)({
+ role: "menu",
+ ref: function ref(_ref) {
+ _this2.listRef = _reactDom.default.findDOMNode(_ref);
+ },
+ className: className,
+ onKeyDown: this.handleKeyDown,
+ onBlur: this.handleBlur
+ }, other), _react.default.Children.map(children, function (child, index) {
+ if (!_react.default.isValidElement(child)) {
+ return null;
+ }
+
+ true ? (0, _warning.default)(child.type !== _react.default.Fragment, ["Material-UI: the MenuList component doesn't accept a Fragment as a child.", 'Consider providing an array instead.'].join('\n')) : undefined;
+ return _react.default.cloneElement(child, {
+ tabIndex: index === _this2.state.currentTabIndex ? 0 : -1,
+ ref: child.props.selected ? function (ref) {
+ _this2.selectedItemRef = _reactDom.default.findDOMNode(ref);
+ } : undefined,
+ onFocus: _this2.handleItemFocus
+ });
+ }));
+ }
+ }]);
+ return MenuList;
+}(_react.default.Component);
+
+ true ? MenuList.propTypes = {
+ /**
+ * MenuList contents, normally `MenuItem`s.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * If `true`, the menu items will not wrap focus.
+ */
+ disableListWrap: _propTypes.default.bool,
+
+ /**
+ * @ignore
+ */
+ onBlur: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onKeyDown: _propTypes.default.func
+} : undefined;
+MenuList.defaultProps = {
+ disableListWrap: false
+};
+var _default = MenuList;
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/MenuList/index.js":
+/*!****************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/MenuList/index.js ***!
+ \****************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _MenuList.default;
+ }
+});
+
+var _MenuList = _interopRequireDefault(__webpack_require__(/*! ./MenuList */ "../../node_modules/@material-ui/core/MenuList/MenuList.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/MobileStepper/MobileStepper.js":
+/*!*****************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/MobileStepper/MobileStepper.js ***!
+ \*****************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _Paper = _interopRequireDefault(__webpack_require__(/*! ../Paper */ "../../node_modules/@material-ui/core/Paper/index.js"));
+
+var _helpers = __webpack_require__(/*! ../utils/helpers */ "../../node_modules/@material-ui/core/utils/helpers.js");
+
+var _LinearProgress = _interopRequireDefault(__webpack_require__(/*! ../LinearProgress */ "../../node_modules/@material-ui/core/LinearProgress/index.js"));
+
+// @inheritedComponent Paper
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ display: 'flex',
+ flexDirection: 'row',
+ justifyContent: 'space-between',
+ alignItems: 'center',
+ background: theme.palette.background.default,
+ padding: 8
+ },
+
+ /* Styles applied to the root element if `position="bottom"`. */
+ positionBottom: {
+ position: 'fixed',
+ bottom: 0,
+ left: 0,
+ right: 0,
+ zIndex: theme.zIndex.mobileStepper
+ },
+
+ /* Styles applied to the root element if `position="top"`. */
+ positionTop: {
+ position: 'fixed',
+ top: 0,
+ left: 0,
+ right: 0,
+ zIndex: theme.zIndex.mobileStepper
+ },
+
+ /* Styles applied to the root element if `position="static"`. */
+ positionStatic: {},
+
+ /* Styles applied to the dots container if `variant="dots"`. */
+ dots: {
+ display: 'flex',
+ flexDirection: 'row'
+ },
+
+ /* Styles applied to each dot if `variant="dots"`. */
+ dot: {
+ backgroundColor: theme.palette.action.disabled,
+ borderRadius: '50%',
+ width: 8,
+ height: 8,
+ margin: '0 2px'
+ },
+
+ /* Styles applied to a dot if `variant="dots"` and this is the active step. */
+ dotActive: {
+ backgroundColor: theme.palette.primary.main
+ },
+
+ /* Styles applied to the Linear Progress component if `variant="progress"`. */
+ progress: {
+ width: '50%'
+ }
+ };
+};
+
+exports.styles = styles;
+
+function MobileStepper(props) {
+ var activeStep = props.activeStep,
+ backButton = props.backButton,
+ classes = props.classes,
+ classNameProp = props.className,
+ LinearProgressProps = props.LinearProgressProps,
+ nextButton = props.nextButton,
+ position = props.position,
+ steps = props.steps,
+ variant = props.variant,
+ other = (0, _objectWithoutProperties2.default)(props, ["activeStep", "backButton", "classes", "className", "LinearProgressProps", "nextButton", "position", "steps", "variant"]);
+ var className = (0, _classnames.default)(classes.root, classes["position".concat((0, _helpers.capitalize)(position))], classNameProp);
+ return _react.default.createElement(_Paper.default, (0, _extends2.default)({
+ square: true,
+ elevation: 0,
+ className: className
+ }, other), backButton, variant === 'dots' && _react.default.createElement("div", {
+ className: classes.dots
+ }, (0, _toConsumableArray2.default)(new Array(steps)).map(function (_, step) {
+ var dotClassName = (0, _classnames.default)(classes.dot, (0, _defineProperty2.default)({}, classes.dotActive, step === activeStep)); // eslint-disable-next-line react/no-array-index-key
+
+ return _react.default.createElement("div", {
+ key: step,
+ className: dotClassName
+ });
+ })), variant === 'progress' && _react.default.createElement(_LinearProgress.default, (0, _extends2.default)({
+ className: classes.progress,
+ variant: "determinate",
+ value: Math.ceil(activeStep / (steps - 1) * 100)
+ }, LinearProgressProps)), nextButton);
+}
+
+ true ? MobileStepper.propTypes = {
+ /**
+ * Set the active step (zero based index).
+ * Defines which dot is highlighted when the variant is 'dots'.
+ */
+ activeStep: _propTypes.default.number,
+
+ /**
+ * A back button element. For instance, it can be be a `Button` or a `IconButton`.
+ */
+ backButton: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * Properties applied to the `LinearProgress` element.
+ */
+ LinearProgressProps: _propTypes.default.object,
+
+ /**
+ * A next button element. For instance, it can be be a `Button` or a `IconButton`.
+ */
+ nextButton: _propTypes.default.node,
+
+ /**
+ * Set the positioning type.
+ */
+ position: _propTypes.default.oneOf(['bottom', 'top', 'static']),
+
+ /**
+ * The total steps.
+ */
+ steps: _propTypes.default.number.isRequired,
+
+ /**
+ * The variant to use.
+ */
+ variant: _propTypes.default.oneOf(['text', 'dots', 'progress'])
+} : undefined;
+MobileStepper.defaultProps = {
+ activeStep: 0,
+ position: 'bottom',
+ variant: 'dots'
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiMobileStepper'
+})(MobileStepper);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/MobileStepper/index.js":
+/*!*********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/MobileStepper/index.js ***!
+ \*********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _MobileStepper.default;
+ }
+});
+
+var _MobileStepper = _interopRequireDefault(__webpack_require__(/*! ./MobileStepper */ "../../node_modules/@material-ui/core/MobileStepper/MobileStepper.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Modal/Modal.js":
+/*!*************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Modal/Modal.js ***!
+ \*************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../../node_modules/@babel/runtime/helpers/defineProperty.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../../node_modules/@babel/runtime/helpers/classCallCheck.js"));
+
+var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../../node_modules/@babel/runtime/helpers/createClass.js"));
+
+var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
+
+var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
+
+var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../../node_modules/@babel/runtime/helpers/inherits.js"));
+
+var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../../node_modules/@babel/runtime/helpers/assertThisInitialized.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "../../node_modules/react-dom/index.js"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js"));
+
+var _warning = _interopRequireDefault(__webpack_require__(/*! warning */ "../../node_modules/warning/warning.js"));
+
+var _keycode = _interopRequireDefault(__webpack_require__(/*! keycode */ "../../node_modules/keycode/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _ownerDocument = _interopRequireDefault(__webpack_require__(/*! ../utils/ownerDocument */ "../../node_modules/@material-ui/core/utils/ownerDocument.js"));
+
+var _RootRef = _interopRequireDefault(__webpack_require__(/*! ../RootRef */ "../../node_modules/@material-ui/core/RootRef/index.js"));
+
+var _Portal = _interopRequireDefault(__webpack_require__(/*! ../Portal */ "../../node_modules/@material-ui/core/Portal/index.js"));
+
+var _helpers = __webpack_require__(/*! ../utils/helpers */ "../../node_modules/@material-ui/core/utils/helpers.js");
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _ModalManager = _interopRequireDefault(__webpack_require__(/*! ./ModalManager */ "../../node_modules/@material-ui/core/Modal/ModalManager.js"));
+
+var _Backdrop = _interopRequireDefault(__webpack_require__(/*! ../Backdrop */ "../../node_modules/@material-ui/core/Backdrop/index.js"));
+
+var _manageAriaHidden = __webpack_require__(/*! ./manageAriaHidden */ "../../node_modules/@material-ui/core/Modal/manageAriaHidden.js");
+
+function getContainer(container, defaultContainer) {
+ container = typeof container === 'function' ? container() : container;
+ return _reactDom.default.findDOMNode(container) || defaultContainer;
+}
+
+function getHasTransition(props) {
+ return props.children ? props.children.props.hasOwnProperty('in') : false;
+}
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ position: 'fixed',
+ zIndex: theme.zIndex.modal,
+ right: 0,
+ bottom: 0,
+ top: 0,
+ left: 0
+ },
+
+ /* Styles applied to the root element if the `Modal` has exited. */
+ hidden: {
+ visibility: 'hidden'
+ }
+ };
+};
+/* istanbul ignore if */
+
+
+exports.styles = styles;
+
+if ( true && !_react.default.createContext) {
+ throw new Error('Material-UI: react@16.3.0 or greater is required.');
+}
+/**
+ * Modal is a lower-level construct that is leveraged by the following components:
+ *
+ * - [Dialog](/api/dialog/)
+ * - [Drawer](/api/drawer/)
+ * - [Menu](/api/menu/)
+ * - [Popover](/api/popover/)
+ *
+ * If you are creating a modal dialog, you probably want to use the [Dialog](/api/dialog/) component
+ * rather than directly using Modal.
+ *
+ * This component shares many concepts with [react-overlays](https://react-bootstrap.github.io/react-overlays/#modals).
+ */
+
+
+var Modal =
+/*#__PURE__*/
+function (_React$Component) {
+ (0, _inherits2.default)(Modal, _React$Component);
+
+ function Modal(props) {
+ var _this;
+
+ (0, _classCallCheck2.default)(this, Modal);
+ _this = (0, _possibleConstructorReturn2.default)(this, (0, _getPrototypeOf2.default)(Modal).call(this));
+ _this.mounted = false;
+
+ _this.handleOpen = function () {
+ var doc = (0, _ownerDocument.default)(_this.mountNode);
+ var container = getContainer(_this.props.container, doc.body);
+
+ _this.props.manager.add((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)), container);
+
+ doc.addEventListener('focus', _this.enforceFocus, true);
+
+ if (_this.dialogRef) {
+ _this.handleOpened();
+ }
+ };
+
+ _this.handleRendered = function () {
+ if (_this.props.onRendered) {
+ _this.props.onRendered();
+ }
+
+ if (_this.props.open) {
+ _this.handleOpened();
+ } else {
+ (0, _manageAriaHidden.ariaHidden)(_this.modalRef, true);
+ }
+ };
+
+ _this.handleOpened = function () {
+ _this.autoFocus();
+
+ _this.props.manager.mount((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this))); // Fix a bug on Chrome where the scroll isn't initially 0.
+
+
+ _this.modalRef.scrollTop = 0;
+ };
+
+ _this.handleClose = function () {
+ _this.props.manager.remove((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
+
+ var doc = (0, _ownerDocument.default)(_this.mountNode);
+ doc.removeEventListener('focus', _this.enforceFocus, true);
+
+ _this.restoreLastFocus();
+ };
+
+ _this.handleExited = function () {
+ _this.setState({
+ exited: true
+ });
+ };
+
+ _this.handleBackdropClick = function (event) {
+ if (event.target !== event.currentTarget) {
+ return;
+ }
+
+ if (_this.props.onBackdropClick) {
+ _this.props.onBackdropClick(event);
+ }
+
+ if (!_this.props.disableBackdropClick && _this.props.onClose) {
+ _this.props.onClose(event, 'backdropClick');
+ }
+ };
+
+ _this.handleDocumentKeyDown = function (event) {
+ // event.defaultPrevented:
+ //
+ // Ignore events that have been `event.preventDefault()` marked.
+ // preventDefault() is meant to stop default behaviours like
+ // clicking a checkbox to check it, hitting a button to submit a form,
+ // and hitting left arrow to move the cursor in a text input etc.
+ // Only special HTML elements have these default bahaviours.
+ //
+ // To remove in v4.
+ if ((0, _keycode.default)(event) !== 'esc' || !_this.isTopModal() || event.defaultPrevented) {
+ return;
+ } // Swallow the event, in case someone is listening for the escape key on the body.
+
+
+ event.stopPropagation();
+
+ if (_this.props.onEscapeKeyDown) {
+ _this.props.onEscapeKeyDown(event);
+ }
+
+ if (!_this.props.disableEscapeKeyDown && _this.props.onClose) {
+ _this.props.onClose(event, 'escapeKeyDown');
+ }
+ };
+
+ _this.enforceFocus = function () {
+ // The Modal might not already be mounted.
+ if (!_this.isTopModal() || _this.props.disableEnforceFocus || !_this.mounted || !_this.dialogRef) {
+ return;
+ }
+
+ var currentActiveElement = (0, _ownerDocument.default)(_this.mountNode).activeElement;
+
+ if (!_this.dialogRef.contains(currentActiveElement)) {
+ _this.dialogRef.focus();
+ }
+ };
+
+ _this.handlePortalRef = function (ref) {
+ _this.mountNode = ref ? ref.getMountNode() : ref;
+ };
+
+ _this.handleModalRef = function (ref) {
+ _this.modalRef = ref;
+ };
+
+ _this.onRootRef = function (ref) {
+ _this.dialogRef = ref;
+ };
+
+ _this.state = {
+ exited: !props.open
+ };
+ return _this;
+ }
+
+ (0, _createClass2.default)(Modal, [{
+ key: "componentDidMount",
+ value: function componentDidMount() {
+ this.mounted = true;
+
+ if (this.props.open) {
+ this.handleOpen();
+ }
+ }
+ }, {
+ key: "componentDidUpdate",
+ value: function componentDidUpdate(prevProps) {
+ if (prevProps.open && !this.props.open) {
+ this.handleClose();
+ } else if (!prevProps.open && this.props.open) {
+ this.lastFocus = (0, _ownerDocument.default)(this.mountNode).activeElement;
+ this.handleOpen();
+ }
+ }
+ }, {
+ key: "componentWillUnmount",
+ value: function componentWillUnmount() {
+ this.mounted = false;
+
+ if (this.props.open || getHasTransition(this.props) && !this.state.exited) {
+ this.handleClose();
+ }
+ }
+ }, {
+ key: "autoFocus",
+ value: function autoFocus() {
+ // We might render an empty child.
+ if (this.props.disableAutoFocus || !this.dialogRef) {
+ return;
+ }
+
+ var currentActiveElement = (0, _ownerDocument.default)(this.mountNode).activeElement;
+
+ if (!this.dialogRef.contains(currentActiveElement)) {
+ if (!this.dialogRef.hasAttribute('tabIndex')) {
+ true ? (0, _warning.default)(false, ['Material-UI: the modal content node does not accept focus.', 'For the benefit of assistive technologies, ' + 'the tabIndex of the node is being set to "-1".'].join('\n')) : undefined;
+ this.dialogRef.setAttribute('tabIndex', -1);
+ }
+
+ this.lastFocus = currentActiveElement;
+ this.dialogRef.focus();
+ }
+ }
+ }, {
+ key: "restoreLastFocus",
+ value: function restoreLastFocus() {
+ if (this.props.disableRestoreFocus || !this.lastFocus) {
+ return;
+ } // Not all elements in IE 11 have a focus method.
+ // Because IE 11 market share is low, we accept the restore focus being broken
+ // and we silent the issue.
+
+
+ if (this.lastFocus.focus) {
+ this.lastFocus.focus();
+ }
+
+ this.lastFocus = null;
+ }
+ }, {
+ key: "isTopModal",
+ value: function isTopModal() {
+ return this.props.manager.isTopModal(this);
+ }
+ }, {
+ key: "render",
+ value: function render() {
+ var _this$props = this.props,
+ BackdropComponent = _this$props.BackdropComponent,
+ BackdropProps = _this$props.BackdropProps,
+ children = _this$props.children,
+ classes = _this$props.classes,
+ className = _this$props.className,
+ container = _this$props.container,
+ disableAutoFocus = _this$props.disableAutoFocus,
+ disableBackdropClick = _this$props.disableBackdropClick,
+ disableEnforceFocus = _this$props.disableEnforceFocus,
+ disableEscapeKeyDown = _this$props.disableEscapeKeyDown,
+ disablePortal = _this$props.disablePortal,
+ disableRestoreFocus = _this$props.disableRestoreFocus,
+ hideBackdrop = _this$props.hideBackdrop,
+ keepMounted = _this$props.keepMounted,
+ manager = _this$props.manager,
+ onBackdropClick = _this$props.onBackdropClick,
+ onClose = _this$props.onClose,
+ onEscapeKeyDown = _this$props.onEscapeKeyDown,
+ onRendered = _this$props.onRendered,
+ open = _this$props.open,
+ other = (0, _objectWithoutProperties2.default)(_this$props, ["BackdropComponent", "BackdropProps", "children", "classes", "className", "container", "disableAutoFocus", "disableBackdropClick", "disableEnforceFocus", "disableEscapeKeyDown", "disablePortal", "disableRestoreFocus", "hideBackdrop", "keepMounted", "manager", "onBackdropClick", "onClose", "onEscapeKeyDown", "onRendered", "open"]);
+ var exited = this.state.exited;
+ var hasTransition = getHasTransition(this.props);
+
+ if (!keepMounted && !open && (!hasTransition || exited)) {
+ return null;
+ }
+
+ var childProps = {}; // It's a Transition like component
+
+ if (hasTransition) {
+ childProps.onExited = (0, _helpers.createChainedFunction)(this.handleExited, children.props.onExited);
+ }
+
+ if (children.props.role === undefined) {
+ childProps.role = children.props.role || 'document';
+ }
+
+ if (children.props.tabIndex === undefined) {
+ childProps.tabIndex = children.props.tabIndex || '-1';
+ }
+
+ return _react.default.createElement(_Portal.default, {
+ ref: this.handlePortalRef,
+ container: container,
+ disablePortal: disablePortal,
+ onRendered: this.handleRendered
+ }, _react.default.createElement("div", (0, _extends2.default)({
+ ref: this.handleModalRef,
+ onKeyDown: this.handleDocumentKeyDown,
+ role: "presentation",
+ className: (0, _classnames.default)('mui-fixed', classes.root, className, (0, _defineProperty2.default)({}, classes.hidden, exited))
+ }, other), hideBackdrop ? null : _react.default.createElement(BackdropComponent, (0, _extends2.default)({
+ open: open,
+ onClick: this.handleBackdropClick
+ }, BackdropProps)), _react.default.createElement(_RootRef.default, {
+ rootRef: this.onRootRef
+ }, _react.default.cloneElement(children, childProps))));
+ }
+ }], [{
+ key: "getDerivedStateFromProps",
+ value: function getDerivedStateFromProps(nextProps) {
+ if (nextProps.open) {
+ return {
+ exited: false
+ };
+ }
+
+ if (!getHasTransition(nextProps)) {
+ // Otherwise let handleExited take care of marking exited.
+ return {
+ exited: true
+ };
+ }
+
+ return null;
+ }
+ }]);
+ return Modal;
+}(_react.default.Component);
+
+ true ? Modal.propTypes = {
+ /**
+ * A backdrop component. This property enables custom backdrop rendering.
+ */
+ BackdropComponent: _utils.componentPropType,
+
+ /**
+ * Properties applied to the [`Backdrop`](/api/backdrop/) element.
+ */
+ BackdropProps: _propTypes.default.object,
+
+ /**
+ * A single child content element.
+ */
+ children: _propTypes.default.element,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css-api) below for more details.
+ */
+ classes: _propTypes.default.object.isRequired,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * A node, component instance, or function that returns either.
+ * The `container` will have the portal children appended to it.
+ */
+ container: _propTypes.default.oneOfType([_propTypes.default.object, _propTypes.default.func]),
+
+ /**
+ * If `true`, the modal will not automatically shift focus to itself when it opens, and
+ * replace it to the last focused element when it closes.
+ * This also works correctly with any modal children that have the `disableAutoFocus` prop.
+ *
+ * Generally this should never be set to `true` as it makes the modal less
+ * accessible to assistive technologies, like screen readers.
+ */
+ disableAutoFocus: _propTypes.default.bool,
+
+ /**
+ * If `true`, clicking the backdrop will not fire any callback.
+ */
+ disableBackdropClick: _propTypes.default.bool,
+
+ /**
+ * If `true`, the modal will not prevent focus from leaving the modal while open.
+ *
+ * Generally this should never be set to `true` as it makes the modal less
+ * accessible to assistive technologies, like screen readers.
+ */
+ disableEnforceFocus: _propTypes.default.bool,
+
+ /**
+ * If `true`, hitting escape will not fire any callback.
+ */
+ disableEscapeKeyDown: _propTypes.default.bool,
+
+ /**
+ * Disable the portal behavior.
+ * The children stay within it's parent DOM hierarchy.
+ */
+ disablePortal: _propTypes.default.bool,
+
+ /**
+ * If `true`, the modal will not restore focus to previously focused element once
+ * modal is hidden.
+ */
+ disableRestoreFocus: _propTypes.default.bool,
+
+ /**
+ * If `true`, the backdrop is not rendered.
+ */
+ hideBackdrop: _propTypes.default.bool,
+
+ /**
+ * Always keep the children in the DOM.
+ * This property can be useful in SEO situation or
+ * when you want to maximize the responsiveness of the Modal.
+ */
+ keepMounted: _propTypes.default.bool,
+
+ /**
+ * A modal manager used to track and manage the state of open
+ * Modals. This enables customizing how modals interact within a container.
+ */
+ manager: _propTypes.default.object,
+
+ /**
+ * Callback fired when the backdrop is clicked.
+ */
+ onBackdropClick: _propTypes.default.func,
+
+ /**
+ * Callback fired when the component requests to be closed.
+ * The `reason` parameter can optionally be used to control the response to `onClose`.
+ *
+ * @param {object} event The event source of the callback
+ * @param {string} reason Can be:`"escapeKeyDown"`, `"backdropClick"`
+ */
+ onClose: _propTypes.default.func,
+
+ /**
+ * Callback fired when the escape key is pressed,
+ * `disableEscapeKeyDown` is false and the modal is in focus.
+ */
+ onEscapeKeyDown: _propTypes.default.func,
+
+ /**
+ * Callback fired once the children has been mounted into the `container`.
+ * It signals that the `open={true}` property took effect.
+ */
+ onRendered: _propTypes.default.func,
+
+ /**
+ * If `true`, the modal is open.
+ */
+ open: _propTypes.default.bool.isRequired
+} : undefined;
+Modal.defaultProps = {
+ BackdropComponent: _Backdrop.default,
+ disableAutoFocus: false,
+ disableBackdropClick: false,
+ disableEnforceFocus: false,
+ disableEscapeKeyDown: false,
+ disablePortal: false,
+ disableRestoreFocus: false,
+ hideBackdrop: false,
+ keepMounted: false,
+ // Modals don't open on the server so this won't conflict with concurrent requests.
+ manager: new _ModalManager.default()
+};
+
+var _default = (0, _withStyles.default)(styles, {
+ flip: false,
+ name: 'MuiModal'
+})(Modal);
+
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Modal/ModalManager.js":
+/*!********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Modal/ModalManager.js ***!
+ \********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = void 0;
+
+var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../../node_modules/@babel/runtime/helpers/classCallCheck.js"));
+
+var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../../node_modules/@babel/runtime/helpers/createClass.js"));
+
+var _style = _interopRequireDefault(__webpack_require__(/*! dom-helpers/style */ "../../node_modules/dom-helpers/style/index.js"));
+
+var _scrollbarSize = _interopRequireDefault(__webpack_require__(/*! dom-helpers/util/scrollbarSize */ "../../node_modules/dom-helpers/util/scrollbarSize.js"));
+
+var _ownerDocument = _interopRequireDefault(__webpack_require__(/*! ../utils/ownerDocument */ "../../node_modules/@material-ui/core/utils/ownerDocument.js"));
+
+var _isOverflowing = _interopRequireDefault(__webpack_require__(/*! ./isOverflowing */ "../../node_modules/@material-ui/core/Modal/isOverflowing.js"));
+
+var _manageAriaHidden = __webpack_require__(/*! ./manageAriaHidden */ "../../node_modules/@material-ui/core/Modal/manageAriaHidden.js");
+
+function findIndexOf(data, callback) {
+ var idx = -1;
+ data.some(function (item, index) {
+ if (callback(item)) {
+ idx = index;
+ return true;
+ }
+
+ return false;
+ });
+ return idx;
+}
+
+function getPaddingRight(node) {
+ return parseInt((0, _style.default)(node, 'paddingRight') || 0, 10);
+}
+
+function setContainerStyle(data) {
+ var style = {
+ overflow: 'hidden'
+ }; // We are only interested in the actual `style` here because we will override it.
+
+ data.style = {
+ overflow: data.container.style.overflow,
+ paddingRight: data.container.style.paddingRight
+ };
+
+ if (data.overflowing) {
+ var scrollbarSize = (0, _scrollbarSize.default)(); // Use computed style, here to get the real padding to add our scrollbar width.
+
+ style.paddingRight = "".concat(getPaddingRight(data.container) + scrollbarSize, "px"); // .mui-fixed is a global helper.
+
+ var fixedNodes = (0, _ownerDocument.default)(data.container).querySelectorAll('.mui-fixed');
+
+ for (var i = 0; i < fixedNodes.length; i += 1) {
+ var paddingRight = getPaddingRight(fixedNodes[i]);
+ data.prevPaddings.push(paddingRight);
+ fixedNodes[i].style.paddingRight = "".concat(paddingRight + scrollbarSize, "px");
+ }
+ }
+
+ Object.keys(style).forEach(function (key) {
+ data.container.style[key] = style[key];
+ });
+}
+
+function removeContainerStyle(data) {
+ // The modal might be closed before it had the chance to be mounted in the DOM.
+ if (data.style) {
+ Object.keys(data.style).forEach(function (key) {
+ data.container.style[key] = data.style[key];
+ });
+ }
+
+ var fixedNodes = (0, _ownerDocument.default)(data.container).querySelectorAll('.mui-fixed');
+
+ for (var i = 0; i < fixedNodes.length; i += 1) {
+ fixedNodes[i].style.paddingRight = "".concat(data.prevPaddings[i], "px");
+ }
+}
+/**
+ * @ignore - do not document.
+ *
+ * Proper state management for containers and the modals in those containers.
+ * Simplified, but inspired by react-overlay's ModalManager class.
+ * Used by the Modal to ensure proper styling of containers.
+ */
+
+
+var ModalManager =
+/*#__PURE__*/
+function () {
+ function ModalManager() {
+ var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
+ (0, _classCallCheck2.default)(this, ModalManager);
+ var _options$hideSiblingN = options.hideSiblingNodes,
+ hideSiblingNodes = _options$hideSiblingN === void 0 ? true : _options$hideSiblingN,
+ _options$handleContai = options.handleContainerOverflow,
+ handleContainerOverflow = _options$handleContai === void 0 ? true : _options$handleContai;
+ this.hideSiblingNodes = hideSiblingNodes;
+ this.handleContainerOverflow = handleContainerOverflow; // this.modals[modalIdx] = modal
+
+ this.modals = []; // this.data[containerIdx] = {
+ // modals: [],
+ // container,
+ // overflowing,
+ // prevPaddings,
+ // }
+
+ this.data = [];
+ }
+
+ (0, _createClass2.default)(ModalManager, [{
+ key: "add",
+ value: function add(modal, container) {
+ var modalIdx = this.modals.indexOf(modal);
+
+ if (modalIdx !== -1) {
+ return modalIdx;
+ }
+
+ modalIdx = this.modals.length;
+ this.modals.push(modal); // If the modal we are adding is already in the DOM.
+
+ if (modal.modalRef) {
+ (0, _manageAriaHidden.ariaHidden)(modal.modalRef, false);
+ }
+
+ if (this.hideSiblingNodes) {
+ (0, _manageAriaHidden.ariaHiddenSiblings)(container, modal.mountNode, modal.modalRef, true);
+ }
+
+ var containerIdx = findIndexOf(this.data, function (item) {
+ return item.container === container;
+ });
+
+ if (containerIdx !== -1) {
+ this.data[containerIdx].modals.push(modal);
+ return modalIdx;
+ }
+
+ var data = {
+ modals: [modal],
+ container: container,
+ overflowing: (0, _isOverflowing.default)(container),
+ prevPaddings: []
+ };
+ this.data.push(data);
+ return modalIdx;
+ }
+ }, {
+ key: "mount",
+ value: function mount(modal) {
+ var containerIdx = findIndexOf(this.data, function (item) {
+ return item.modals.indexOf(modal) !== -1;
+ });
+ var data = this.data[containerIdx];
+
+ if (!data.style && this.handleContainerOverflow) {
+ setContainerStyle(data);
+ }
+ }
+ }, {
+ key: "remove",
+ value: function remove(modal) {
+ var modalIdx = this.modals.indexOf(modal);
+
+ if (modalIdx === -1) {
+ return modalIdx;
+ }
+
+ var containerIdx = findIndexOf(this.data, function (item) {
+ return item.modals.indexOf(modal) !== -1;
+ });
+ var data = this.data[containerIdx];
+ data.modals.splice(data.modals.indexOf(modal), 1);
+ this.modals.splice(modalIdx, 1); // If that was the last modal in a container, clean up the container.
+
+ if (data.modals.length === 0) {
+ if (this.handleContainerOverflow) {
+ removeContainerStyle(data);
+ } // In case the modal wasn't in the DOM yet.
+
+
+ if (modal.modalRef) {
+ (0, _manageAriaHidden.ariaHidden)(modal.modalRef, true);
+ }
+
+ if (this.hideSiblingNodes) {
+ (0, _manageAriaHidden.ariaHiddenSiblings)(data.container, modal.mountNode, modal.modalRef, false);
+ }
+
+ this.data.splice(containerIdx, 1);
+ } else if (this.hideSiblingNodes) {
+ // Otherwise make sure the next top modal is visible to a screen reader.
+ var nextTop = data.modals[data.modals.length - 1]; // as soon as a modal is adding its modalRef is undefined. it can't set
+ // aria-hidden because the dom element doesn't exist either
+ // when modal was unmounted before modalRef gets null
+
+ if (nextTop.modalRef) {
+ (0, _manageAriaHidden.ariaHidden)(nextTop.modalRef, false);
+ }
+ }
+
+ return modalIdx;
+ }
+ }, {
+ key: "isTopModal",
+ value: function isTopModal(modal) {
+ return !!this.modals.length && this.modals[this.modals.length - 1] === modal;
+ }
+ }]);
+ return ModalManager;
+}();
+
+var _default = ModalManager;
+exports.default = _default;
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Modal/index.js":
+/*!*************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Modal/index.js ***!
+ \*************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Modal.default;
+ }
+});
+Object.defineProperty(exports, "ModalManager", {
+ enumerable: true,
+ get: function get() {
+ return _ModalManager.default;
+ }
+});
+
+var _Modal = _interopRequireDefault(__webpack_require__(/*! ./Modal */ "../../node_modules/@material-ui/core/Modal/Modal.js"));
+
+var _ModalManager = _interopRequireDefault(__webpack_require__(/*! ./ModalManager */ "../../node_modules/@material-ui/core/Modal/ModalManager.js"));
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Modal/isOverflowing.js":
+/*!*********************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Modal/isOverflowing.js ***!
+ \*********************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.isBody = isBody;
+exports.default = isOverflowing;
+
+var _isWindow = _interopRequireDefault(__webpack_require__(/*! dom-helpers/query/isWindow */ "../../node_modules/dom-helpers/query/isWindow.js"));
+
+var _ownerDocument = _interopRequireDefault(__webpack_require__(/*! ../utils/ownerDocument */ "../../node_modules/@material-ui/core/utils/ownerDocument.js"));
+
+var _ownerWindow = _interopRequireDefault(__webpack_require__(/*! ../utils/ownerWindow */ "../../node_modules/@material-ui/core/utils/ownerWindow.js"));
+
+function isBody(node) {
+ return node && node.tagName.toLowerCase() === 'body';
+} // Do we have a vertical scroll bar?
+
+
+function isOverflowing(container) {
+ var doc = (0, _ownerDocument.default)(container);
+ var win = (0, _ownerWindow.default)(doc);
+ /* istanbul ignore next */
+
+ if (!(0, _isWindow.default)(doc) && !isBody(container)) {
+ return container.scrollHeight > container.clientHeight;
+ } // Takes in account potential non zero margin on the body.
+
+
+ var style = win.getComputedStyle(doc.body);
+ var marginLeft = parseInt(style.getPropertyValue('margin-left'), 10);
+ var marginRight = parseInt(style.getPropertyValue('margin-right'), 10);
+ return marginLeft + doc.body.clientWidth + marginRight < win.innerWidth;
+}
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/Modal/manageAriaHidden.js":
+/*!************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/Modal/manageAriaHidden.js ***!
+ \************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.ariaHidden = ariaHidden;
+exports.ariaHiddenSiblings = ariaHiddenSiblings;
+var BLACKLIST = ['template', 'script', 'style'];
+
+function isHideable(node) {
+ return node.nodeType === 1 && BLACKLIST.indexOf(node.tagName.toLowerCase()) === -1;
+}
+
+function siblings(container, mount, currentNode, callback) {
+ var blacklist = [mount, currentNode];
+ [].forEach.call(container.children, function (node) {
+ if (blacklist.indexOf(node) === -1 && isHideable(node)) {
+ callback(node);
+ }
+ });
+}
+
+function ariaHidden(node, show) {
+ if (show) {
+ node.setAttribute('aria-hidden', 'true');
+ } else {
+ node.removeAttribute('aria-hidden');
+ }
+}
+
+function ariaHiddenSiblings(container, mountNode, currentNode, show) {
+ siblings(container, mountNode, currentNode, function (node) {
+ return ariaHidden(node, show);
+ });
+}
+
+/***/ }),
+
+/***/ "../../node_modules/@material-ui/core/NativeSelect/NativeSelect.js":
+/*!***************************************************************************************************!*\
+ !*** /home/edgar/git/jsonforms-edgar/node_modules/@material-ui/core/NativeSelect/NativeSelect.js ***!
+ \***************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../../node_modules/@babel/runtime/helpers/extends.js"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
+
+var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
+
+var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../../node_modules/prop-types/index.js"));
+
+var _utils = __webpack_require__(/*! @material-ui/utils */ "../../node_modules/@material-ui/utils/index.es.js");
+
+var _NativeSelectInput = _interopRequireDefault(__webpack_require__(/*! ./NativeSelectInput */ "../../node_modules/@material-ui/core/NativeSelect/NativeSelectInput.js"));
+
+var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "../../node_modules/@material-ui/core/styles/withStyles.js"));
+
+var _formControlState = _interopRequireDefault(__webpack_require__(/*! ../FormControl/formControlState */ "../../node_modules/@material-ui/core/FormControl/formControlState.js"));
+
+var _withFormControlContext = _interopRequireDefault(__webpack_require__(/*! ../FormControl/withFormControlContext */ "../../node_modules/@material-ui/core/FormControl/withFormControlContext.js"));
+
+var _ArrowDropDown = _interopRequireDefault(__webpack_require__(/*! ../internal/svg-icons/ArrowDropDown */ "../../node_modules/@material-ui/core/internal/svg-icons/ArrowDropDown.js"));
+
+var _Input = _interopRequireDefault(__webpack_require__(/*! ../Input */ "../../node_modules/@material-ui/core/Input/index.js"));
+
+// @inheritedComponent Input
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the `Input` component `root` class. */
+ root: {
+ position: 'relative',
+ width: '100%'
+ },
+
+ /* Styles applied to the `Input` component `select` class. */
+ select: {
+ '-moz-appearance': 'none',
+ // Reset
+ '-webkit-appearance': 'none',
+ // Reset
+ // When interacting quickly, the text can end up selected.
+ // Native select can't be selected either.
+ userSelect: 'none',
+ paddingRight: 32,
+ borderRadius: 0,
+ // Reset
+ height: '1.1875em',
+ // Reset (19px), match the native input line-height
+ width: 'calc(100% - 32px)',
+ minWidth: 16,
+ // So it doesn't collapse.
+ cursor: 'pointer',
+ '&:focus': {
+ // Show that it's not an text input
+ background: theme.palette.type === 'light' ? 'rgba(0, 0, 0, 0.05)' : 'rgba(255, 255, 255, 0.05)',
+ borderRadius: 0 // Reset Chrome style
+
+ },
+ // Remove IE 11 arrow
+ '&::-ms-expand': {
+ display: 'none'
+ },
+ '&$disabled': {
+ cursor: 'default'
+ },
+ '&[multiple]': {
+ height: 'auto'
+ }
+ },
+
+ /* Styles applied to the `Input` component if `variant="filled"`. */
+ filled: {
+ width: 'calc(100% - 44px)'
+ },
+
+ /* Styles applied to the `Input` component if `variant="outlined"`. */
+ outlined: {
+ width: 'calc(100% - 46px)',
+ borderRadius: theme.shape.borderRadius
+ },
+
+ /* Styles applied to the `Input` component `selectMenu` class. */
+ selectMenu: {
+ width: 'auto',
+ // Fix Safari textOverflow
+ height: 'auto',
+ // Reset
+ textOverflow: 'ellipsis',
+ whiteSpace: 'nowrap',
+ overflow: 'hidden',
+ minHeight: '1.1875em' // Reset (19px), match the native input line-height
+
+ },
+
+ /* Styles applied to the `Input` component `disabled` class. */
+ disabled: {},
+
+ /* Styles applied to the `Input` component `icon` class. */
+ icon: {
+ // We use a position absolute over a flexbox in order to forward the pointer events
+ // to the input.
+ position: 'absolute',
+ right: 0,
+ top: 'calc(50% - 12px)',
+ // Center vertically
+ color: theme.palette.action.active,
+ 'pointer-events': 'none' // Don't block pointer events on the select under the icon.
+
+ }
+ };
+};
+/**
+ * An alternative to `` with a much smaller bundle size footprint.
+ */
+
+
+exports.styles = styles;
+
+function NativeSelect(props) {
+ var children = props.children,
+ classes = props.classes,
+ IconComponent = props.IconComponent,
+ input = props.input,
+ inputProps = props.inputProps,
+ muiFormControl = props.muiFormControl,
+ variant = props.variant,
+ other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "IconComponent", "input", "inputProps", "muiFormControl", "variant"]);
+ var fcs = (0, _formControlState.default)({
+ props: props,
+ muiFormControl: muiFormControl,
+ states: ['variant']
+ });
+ return _react.default.cloneElement(input, (0, _extends2.default)({
+ // Most of the logic is implemented in `NativeSelectInput`.
+ // The `Select` component is a simple API wrapper to expose something better to play with.
+ inputComponent: _NativeSelectInput.default,
+ inputProps: (0, _extends2.default)({
+ children: children,
+ classes: classes,
+ IconComponent: IconComponent,
+ variant: fcs.variant,
+ type: undefined
+ }, inputProps, input ? input.props.inputProps : {})
+ }, other));
+}
+
+ true ? NativeSelect.propTypes = {
+ /**
+ * The option elements to populate the select with.
+ * Can be some `