diff --git a/package-lock.json b/package-lock.json
index 72c5385..49dba8f 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -288,6 +288,12 @@
                 "@babel/types": "^7.18.6"
             }
         },
+        "@babel/helper-string-parser": {
+            "version": "7.23.4",
+            "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz",
+            "integrity": "sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==",
+            "dev": true
+        },
         "@babel/helper-validator-identifier": {
             "version": "7.18.6",
             "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz",
@@ -643,6 +649,23 @@
                 "@babel/helper-plugin-utils": "^7.14.5"
             }
         },
+        "@babel/plugin-syntax-typescript": {
+            "version": "7.23.3",
+            "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.23.3.tgz",
+            "integrity": "sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ==",
+            "dev": true,
+            "requires": {
+                "@babel/helper-plugin-utils": "^7.22.5"
+            },
+            "dependencies": {
+                "@babel/helper-plugin-utils": {
+                    "version": "7.24.0",
+                    "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz",
+                    "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==",
+                    "dev": true
+                }
+            }
+        },
         "@babel/plugin-transform-arrow-functions": {
             "version": "7.18.6",
             "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.18.6.tgz",
@@ -947,6 +970,176 @@
                 "@babel/helper-plugin-utils": "^7.18.9"
             }
         },
+        "@babel/plugin-transform-typescript": {
+            "version": "7.23.6",
+            "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.23.6.tgz",
+            "integrity": "sha512-6cBG5mBvUu4VUD04OHKnYzbuHNP8huDsD3EDqqpIpsswTDoqHCjLoHb6+QgsV1WsT2nipRqCPgxD3LXnEO7XfA==",
+            "dev": true,
+            "requires": {
+                "@babel/helper-annotate-as-pure": "^7.22.5",
+                "@babel/helper-create-class-features-plugin": "^7.23.6",
+                "@babel/helper-plugin-utils": "^7.22.5",
+                "@babel/plugin-syntax-typescript": "^7.23.3"
+            },
+            "dependencies": {
+                "@babel/code-frame": {
+                    "version": "7.23.5",
+                    "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz",
+                    "integrity": "sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==",
+                    "dev": true,
+                    "requires": {
+                        "@babel/highlight": "^7.23.4",
+                        "chalk": "^2.4.2"
+                    }
+                },
+                "@babel/helper-annotate-as-pure": {
+                    "version": "7.22.5",
+                    "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz",
+                    "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==",
+                    "dev": true,
+                    "requires": {
+                        "@babel/types": "^7.22.5"
+                    }
+                },
+                "@babel/helper-create-class-features-plugin": {
+                    "version": "7.24.0",
+                    "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.0.tgz",
+                    "integrity": "sha512-QAH+vfvts51BCsNZ2PhY6HAggnlS6omLLFTsIpeqZk/MmJ6cW7tgz5yRv0fMJThcr6FmbMrENh1RgrWPTYA76g==",
+                    "dev": true,
+                    "requires": {
+                        "@babel/helper-annotate-as-pure": "^7.22.5",
+                        "@babel/helper-environment-visitor": "^7.22.20",
+                        "@babel/helper-function-name": "^7.23.0",
+                        "@babel/helper-member-expression-to-functions": "^7.23.0",
+                        "@babel/helper-optimise-call-expression": "^7.22.5",
+                        "@babel/helper-replace-supers": "^7.22.20",
+                        "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5",
+                        "@babel/helper-split-export-declaration": "^7.22.6",
+                        "semver": "^6.3.1"
+                    }
+                },
+                "@babel/helper-environment-visitor": {
+                    "version": "7.22.20",
+                    "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz",
+                    "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==",
+                    "dev": true
+                },
+                "@babel/helper-function-name": {
+                    "version": "7.23.0",
+                    "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz",
+                    "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==",
+                    "dev": true,
+                    "requires": {
+                        "@babel/template": "^7.22.15",
+                        "@babel/types": "^7.23.0"
+                    }
+                },
+                "@babel/helper-member-expression-to-functions": {
+                    "version": "7.23.0",
+                    "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz",
+                    "integrity": "sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==",
+                    "dev": true,
+                    "requires": {
+                        "@babel/types": "^7.23.0"
+                    }
+                },
+                "@babel/helper-optimise-call-expression": {
+                    "version": "7.22.5",
+                    "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz",
+                    "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==",
+                    "dev": true,
+                    "requires": {
+                        "@babel/types": "^7.22.5"
+                    }
+                },
+                "@babel/helper-plugin-utils": {
+                    "version": "7.24.0",
+                    "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz",
+                    "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==",
+                    "dev": true
+                },
+                "@babel/helper-replace-supers": {
+                    "version": "7.22.20",
+                    "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.20.tgz",
+                    "integrity": "sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==",
+                    "dev": true,
+                    "requires": {
+                        "@babel/helper-environment-visitor": "^7.22.20",
+                        "@babel/helper-member-expression-to-functions": "^7.22.15",
+                        "@babel/helper-optimise-call-expression": "^7.22.5"
+                    }
+                },
+                "@babel/helper-skip-transparent-expression-wrappers": {
+                    "version": "7.22.5",
+                    "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz",
+                    "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==",
+                    "dev": true,
+                    "requires": {
+                        "@babel/types": "^7.22.5"
+                    }
+                },
+                "@babel/helper-split-export-declaration": {
+                    "version": "7.22.6",
+                    "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz",
+                    "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==",
+                    "dev": true,
+                    "requires": {
+                        "@babel/types": "^7.22.5"
+                    }
+                },
+                "@babel/helper-validator-identifier": {
+                    "version": "7.22.20",
+                    "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz",
+                    "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==",
+                    "dev": true
+                },
+                "@babel/highlight": {
+                    "version": "7.23.4",
+                    "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz",
+                    "integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==",
+                    "dev": true,
+                    "requires": {
+                        "@babel/helper-validator-identifier": "^7.22.20",
+                        "chalk": "^2.4.2",
+                        "js-tokens": "^4.0.0"
+                    }
+                },
+                "@babel/parser": {
+                    "version": "7.24.0",
+                    "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.0.tgz",
+                    "integrity": "sha512-QuP/FxEAzMSjXygs8v4N9dvdXzEHN4W1oF3PxuWAtPo08UdM17u89RDMgjLn/mlc56iM0HlLmVkO/wgR+rDgHg==",
+                    "dev": true
+                },
+                "@babel/template": {
+                    "version": "7.24.0",
+                    "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz",
+                    "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==",
+                    "dev": true,
+                    "requires": {
+                        "@babel/code-frame": "^7.23.5",
+                        "@babel/parser": "^7.24.0",
+                        "@babel/types": "^7.24.0"
+                    }
+                },
+                "@babel/types": {
+                    "version": "7.24.0",
+                    "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz",
+                    "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==",
+                    "dev": true,
+                    "requires": {
+                        "@babel/helper-string-parser": "^7.23.4",
+                        "@babel/helper-validator-identifier": "^7.22.20",
+                        "to-fast-properties": "^2.0.0"
+                    }
+                },
+                "semver": {
+                    "version": "6.3.1",
+                    "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+                    "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+                    "dev": true
+                }
+            }
+        },
         "@babel/plugin-transform-unicode-escapes": {
             "version": "7.18.6",
             "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.6.tgz",
@@ -1077,6 +1270,116 @@
                 "@babel/plugin-transform-react-pure-annotations": "^7.16.7"
             }
         },
+        "@babel/preset-typescript": {
+            "version": "7.23.3",
+            "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.23.3.tgz",
+            "integrity": "sha512-17oIGVlqz6CchO9RFYn5U6ZpWRZIngayYCtrPRSgANSwC2V1Jb+iP74nVxzzXJte8b8BYxrL1yY96xfhTBrNNQ==",
+            "dev": true,
+            "requires": {
+                "@babel/helper-plugin-utils": "^7.22.5",
+                "@babel/helper-validator-option": "^7.22.15",
+                "@babel/plugin-syntax-jsx": "^7.23.3",
+                "@babel/plugin-transform-modules-commonjs": "^7.23.3",
+                "@babel/plugin-transform-typescript": "^7.23.3"
+            },
+            "dependencies": {
+                "@babel/helper-environment-visitor": {
+                    "version": "7.22.20",
+                    "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz",
+                    "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==",
+                    "dev": true
+                },
+                "@babel/helper-module-imports": {
+                    "version": "7.22.15",
+                    "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz",
+                    "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==",
+                    "dev": true,
+                    "requires": {
+                        "@babel/types": "^7.22.15"
+                    }
+                },
+                "@babel/helper-module-transforms": {
+                    "version": "7.23.3",
+                    "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz",
+                    "integrity": "sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==",
+                    "dev": true,
+                    "requires": {
+                        "@babel/helper-environment-visitor": "^7.22.20",
+                        "@babel/helper-module-imports": "^7.22.15",
+                        "@babel/helper-simple-access": "^7.22.5",
+                        "@babel/helper-split-export-declaration": "^7.22.6",
+                        "@babel/helper-validator-identifier": "^7.22.20"
+                    }
+                },
+                "@babel/helper-plugin-utils": {
+                    "version": "7.24.0",
+                    "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz",
+                    "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==",
+                    "dev": true
+                },
+                "@babel/helper-simple-access": {
+                    "version": "7.22.5",
+                    "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz",
+                    "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==",
+                    "dev": true,
+                    "requires": {
+                        "@babel/types": "^7.22.5"
+                    }
+                },
+                "@babel/helper-split-export-declaration": {
+                    "version": "7.22.6",
+                    "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz",
+                    "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==",
+                    "dev": true,
+                    "requires": {
+                        "@babel/types": "^7.22.5"
+                    }
+                },
+                "@babel/helper-validator-identifier": {
+                    "version": "7.22.20",
+                    "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz",
+                    "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==",
+                    "dev": true
+                },
+                "@babel/helper-validator-option": {
+                    "version": "7.23.5",
+                    "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz",
+                    "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==",
+                    "dev": true
+                },
+                "@babel/plugin-syntax-jsx": {
+                    "version": "7.23.3",
+                    "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.23.3.tgz",
+                    "integrity": "sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg==",
+                    "dev": true,
+                    "requires": {
+                        "@babel/helper-plugin-utils": "^7.22.5"
+                    }
+                },
+                "@babel/plugin-transform-modules-commonjs": {
+                    "version": "7.23.3",
+                    "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.23.3.tgz",
+                    "integrity": "sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA==",
+                    "dev": true,
+                    "requires": {
+                        "@babel/helper-module-transforms": "^7.23.3",
+                        "@babel/helper-plugin-utils": "^7.22.5",
+                        "@babel/helper-simple-access": "^7.22.5"
+                    }
+                },
+                "@babel/types": {
+                    "version": "7.24.0",
+                    "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz",
+                    "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==",
+                    "dev": true,
+                    "requires": {
+                        "@babel/helper-string-parser": "^7.23.4",
+                        "@babel/helper-validator-identifier": "^7.22.20",
+                        "to-fast-properties": "^2.0.0"
+                    }
+                }
+            }
+        },
         "@babel/register": {
             "version": "7.18.9",
             "resolved": "https://registry.npmjs.org/@babel/register/-/register-7.18.9.tgz",
@@ -1341,36 +1644,14 @@
             }
         },
         "@exabyte-io/code.js": {
-            "version": "2023.11.22-0",
-            "resolved": "https://registry.npmjs.org/@exabyte-io/code.js/-/code.js-2023.11.22-0.tgz",
-            "integrity": "sha512-FKS3gUHimr3QA6V1hOoux1s6fafvjgbfCN9s45Ol6Qa3zdZLkUECJ20r4uGpHvg1ClFpB3BUL+cJU1kwlHjzJg==",
+            "version": "git+https://github.com/Exabyte-io/code.js.git#215e9e7b194c63422858d043be750fe023814329",
+            "from": "git+https://github.com/Exabyte-io/code.js.git#215e9e7b194c63422858d043be750fe023814329",
             "dev": true,
             "requires": {
-                "@babel/cli": "7.16.0",
-                "@babel/core": "7.16.0",
-                "@babel/eslint-parser": "7.16.3",
-                "@babel/plugin-proposal-class-properties": "7.16.0",
-                "@babel/preset-env": "7.16.4",
-                "@babel/preset-react": "7.16.7",
-                "@babel/register": "^7.16.0",
-                "@babel/runtime-corejs3": "7.16.8",
-                "@exabyte-io/esse.js": "2023.11.22-1",
-                "@types/chai": "^4.3.5",
-                "@types/crypto-js": "^4.1.1",
-                "@types/js-yaml": "^4.0.5",
-                "@types/json-schema": "^7.0.12",
-                "@types/mocha": "^10.0.1",
-                "@types/node": "^20.4.2",
-                "@types/react-jsonschema-form": "^1.7.8",
-                "@types/underscore": "^1.11.6",
-                "ajv": "4.1.7",
                 "crypto-js": "^4.1.1",
                 "js-yaml": "^4.1.0",
                 "json-schema": "^0.4.0",
-                "json-schema-deref-sync": "0.14.0",
-                "json-schema-merge-allof": "^0.8.1",
-                "json-schema-to-typescript": "^13.0.2",
-                "lodash": "^4.17.21",
+                "lodash": "^4.17.*",
                 "mathjs": "^3.9.0",
                 "mixwith": "^0.1.1",
                 "nunjucks": "^3.2.4",
@@ -1383,16 +1664,6 @@
                 "uuid": "8.3.2"
             },
             "dependencies": {
-                "ajv": {
-                    "version": "4.1.7",
-                    "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.1.7.tgz",
-                    "integrity": "sha512-Hwzb700P98NpTTljTIN3R9vkJMs61zblzMZe7esC78bSEXifltJ6LtXEK+5kp/elG3RFz9xgwk7gVajeI8e3nA==",
-                    "dev": true,
-                    "requires": {
-                        "co": "^4.6.0",
-                        "json-stable-stringify": "^1.0.1"
-                    }
-                },
                 "argparse": {
                     "version": "2.0.1",
                     "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
@@ -1425,64 +1696,6 @@
             "integrity": "sha512-BYTDSqvjj6ZiWb8l46T5BKrVfkelct+vK2mh7joHu5UWtJMUzLkb0KQMV1+6SUy4xHFnws33XS7/+JSW1yeZOQ==",
             "dev": true
         },
-        "@exabyte-io/esse.js": {
-            "version": "2023.11.22-1",
-            "resolved": "https://registry.npmjs.org/@exabyte-io/esse.js/-/esse.js-2023.11.22-1.tgz",
-            "integrity": "sha512-G4D9u+srCZWEoG4o9rXDL9VFT6BR6an4m1RwVOE2KkLKIftCyGxCWrlUAfRHh51ZOcP6LMzg1m4MQwwN8J0OBA==",
-            "dev": true,
-            "requires": {
-                "@babel/cli": "7.16.0",
-                "@babel/core": "7.16.0",
-                "@babel/eslint-parser": "7.16.3",
-                "@babel/preset-env": "7.16.4",
-                "@babel/register": "7.16.0",
-                "ajv": "^4.1.7",
-                "file": "^0.2.2",
-                "js-yaml": "^4.1.0",
-                "json-schema-deref-sync": "0.14.0",
-                "lodash": "4.17.21"
-            },
-            "dependencies": {
-                "@babel/register": {
-                    "version": "7.16.0",
-                    "resolved": "https://registry.npmjs.org/@babel/register/-/register-7.16.0.tgz",
-                    "integrity": "sha512-lzl4yfs0zVXnooeLE0AAfYaT7F3SPA8yB2Bj4W1BiZwLbMS3MZH35ZvCWSRHvneUugwuM+Wsnrj7h0F7UmU3NQ==",
-                    "dev": true,
-                    "requires": {
-                        "clone-deep": "^4.0.1",
-                        "find-cache-dir": "^2.0.0",
-                        "make-dir": "^2.1.0",
-                        "pirates": "^4.0.0",
-                        "source-map-support": "^0.5.16"
-                    }
-                },
-                "ajv": {
-                    "version": "4.11.8",
-                    "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz",
-                    "integrity": "sha512-I/bSHSNEcFFqXLf91nchoNB9D1Kie3QKcWdchYUaoIg1+1bdWDkdfdlvdIOJbi9U8xR0y+MWc5D+won9v95WlQ==",
-                    "dev": true,
-                    "requires": {
-                        "co": "^4.6.0",
-                        "json-stable-stringify": "^1.0.1"
-                    }
-                },
-                "argparse": {
-                    "version": "2.0.1",
-                    "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
-                    "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
-                    "dev": true
-                },
-                "js-yaml": {
-                    "version": "4.1.0",
-                    "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
-                    "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
-                    "dev": true,
-                    "requires": {
-                        "argparse": "^2.0.1"
-                    }
-                }
-            }
-        },
         "@exabyte-io/made.js": {
             "version": "git+https://github.com/Exabyte-io/made.js.git#00eec7c00079b686a8cb7591f85e1a06f2f5f647",
             "from": "git+https://github.com/Exabyte-io/made.js.git#00eec7c00079b686a8cb7591f85e1a06f2f5f647",
@@ -1705,6 +1918,76 @@
             "integrity": "sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==",
             "dev": true
         },
+        "@mat3ra/esse": {
+            "version": "git+https://github.com/Exabyte-io/esse.git#332a9cc5c0853af610dd721dc976905637cf989e",
+            "from": "git+https://github.com/Exabyte-io/esse.git#332a9cc5c0853af610dd721dc976905637cf989e",
+            "dev": true,
+            "requires": {
+                "@babel/cli": "7.16.0",
+                "@babel/core": "7.16.0",
+                "@babel/eslint-parser": "7.16.3",
+                "@babel/plugin-proposal-class-properties": "7.16.0",
+                "@babel/preset-env": "7.16.4",
+                "@babel/preset-react": "7.16.7",
+                "@babel/preset-typescript": "^7.22.5",
+                "@babel/register": "^7.16.0",
+                "@babel/runtime-corejs3": "7.16.8",
+                "@tsconfig/node14": "^14.1.0",
+                "@tsconfig/node20": "^20.1.2",
+                "@types/chai": "^4.3.11",
+                "@types/js-yaml": "^4.0.9",
+                "@types/json-schema-merge-allof": "^0.6.5",
+                "@types/mocha": "^10.0.6",
+                "ajv": "^8.12.0",
+                "js-yaml": "^4.1.0",
+                "json-schema": "^0.4.0",
+                "json-schema-deref-sync": "0.14.0",
+                "json-schema-merge-allof": "^0.8.1",
+                "json-schema-to-typescript": "^13.1.2",
+                "lodash": "4.17.21"
+            },
+            "dependencies": {
+                "@tsconfig/node14": {
+                    "version": "14.1.0",
+                    "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-14.1.0.tgz",
+                    "integrity": "sha512-VmsCG04YR58ciHBeJKBDNMWWfYbyP8FekWVuTlpstaUPlat1D0x/tXzkWP7yCMU0eSz9V4OZU0LBWTFJ3xZf6w==",
+                    "dev": true
+                },
+                "ajv": {
+                    "version": "8.12.0",
+                    "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz",
+                    "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==",
+                    "dev": true,
+                    "requires": {
+                        "fast-deep-equal": "^3.1.1",
+                        "json-schema-traverse": "^1.0.0",
+                        "require-from-string": "^2.0.2",
+                        "uri-js": "^4.2.2"
+                    }
+                },
+                "argparse": {
+                    "version": "2.0.1",
+                    "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
+                    "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
+                    "dev": true
+                },
+                "js-yaml": {
+                    "version": "4.1.0",
+                    "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
+                    "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
+                    "dev": true,
+                    "requires": {
+                        "argparse": "^2.0.1"
+                    }
+                },
+                "json-schema-traverse": {
+                    "version": "1.0.0",
+                    "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
+                    "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
+                    "dev": true
+                }
+            }
+        },
         "@nicolo-ribaudo/chokidar-2": {
             "version": "2.1.8-no-fsevents.3",
             "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/chokidar-2/-/chokidar-2-2.1.8-no-fsevents.3.tgz",
@@ -1735,18 +2018,18 @@
             "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==",
             "dev": true
         },
+        "@tsconfig/node20": {
+            "version": "20.1.2",
+            "resolved": "https://registry.npmjs.org/@tsconfig/node20/-/node20-20.1.2.tgz",
+            "integrity": "sha512-madaWq2k+LYMEhmcp0fs+OGaLFk0OenpHa4gmI4VEmCKX4PJntQ6fnnGADVFrVkBj0wIdAlQnK/MrlYTHsa1gQ==",
+            "dev": true
+        },
         "@types/chai": {
             "version": "4.3.12",
             "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.12.tgz",
             "integrity": "sha512-zNKDHG/1yxm8Il6uCCVsm+dRdEsJlFoDu73X17y09bId6UwoYww+vFBsAcRzl8knM1sab3Dp1VRikFQwDOtDDw==",
             "dev": true
         },
-        "@types/crypto-js": {
-            "version": "4.2.2",
-            "resolved": "https://registry.npmjs.org/@types/crypto-js/-/crypto-js-4.2.2.tgz",
-            "integrity": "sha512-sDOLlVbHhXpAUAL0YHDUUwDZf3iN4Bwi4W6a0W0b+QcAezUbRtH4FVb+9J4h+XFPW7l/gQ9F8qC7P+Ec4k8QVQ==",
-            "dev": true
-        },
         "@types/glob": {
             "version": "7.2.0",
             "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz",
@@ -1769,6 +2052,15 @@
             "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==",
             "dev": true
         },
+        "@types/json-schema-merge-allof": {
+            "version": "0.6.5",
+            "resolved": "https://registry.npmjs.org/@types/json-schema-merge-allof/-/json-schema-merge-allof-0.6.5.tgz",
+            "integrity": "sha512-5mS11ZUTyFNUVEMpK3uKoPb6BWL/nLgW/ln2VOiI8OOxKEYC4Gl9O3WjS5P49yqVTfkcbCAPKw3T1O4erUah5g==",
+            "dev": true,
+            "requires": {
+                "@types/json-schema": "*"
+            }
+        },
         "@types/json5": {
             "version": "0.0.29",
             "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz",
@@ -1808,39 +2100,6 @@
             "integrity": "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==",
             "dev": true
         },
-        "@types/prop-types": {
-            "version": "15.7.11",
-            "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.11.tgz",
-            "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==",
-            "dev": true
-        },
-        "@types/react": {
-            "version": "18.2.63",
-            "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.63.tgz",
-            "integrity": "sha512-ppaqODhs15PYL2nGUOaOu2RSCCB4Difu4UFrP4I3NHLloXC/ESQzQMi9nvjfT1+rudd0d2L3fQPJxRSey+rGlQ==",
-            "dev": true,
-            "requires": {
-                "@types/prop-types": "*",
-                "@types/scheduler": "*",
-                "csstype": "^3.0.2"
-            }
-        },
-        "@types/react-jsonschema-form": {
-            "version": "1.7.13",
-            "resolved": "https://registry.npmjs.org/@types/react-jsonschema-form/-/react-jsonschema-form-1.7.13.tgz",
-            "integrity": "sha512-C2jgO7/ow76oCSfUK++jKKox17R0A7ryMYNE5hJ2dR1Ske9jhuvjIlurvzMePh+Xjk8wey0nzB2C7HFKe2pRdg==",
-            "dev": true,
-            "requires": {
-                "@types/json-schema": "*",
-                "@types/react": "*"
-            }
-        },
-        "@types/scheduler": {
-            "version": "0.16.8",
-            "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.8.tgz",
-            "integrity": "sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==",
-            "dev": true
-        },
         "@types/underscore": {
             "version": "1.11.15",
             "resolved": "https://registry.npmjs.org/@types/underscore/-/underscore-1.11.15.tgz",
@@ -2438,12 +2697,6 @@
                 "shallow-clone": "^3.0.0"
             }
         },
-        "co": {
-            "version": "4.6.0",
-            "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
-            "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==",
-            "dev": true
-        },
         "color-convert": {
             "version": "1.9.3",
             "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
@@ -2583,12 +2836,6 @@
             "integrity": "sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==",
             "dev": true
         },
-        "csstype": {
-            "version": "3.1.3",
-            "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz",
-            "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==",
-            "dev": true
-        },
         "d": {
             "version": "1.0.2",
             "resolved": "https://registry.npmjs.org/d/-/d-1.0.2.tgz",
@@ -2663,17 +2910,6 @@
                 }
             }
         },
-        "define-data-property": {
-            "version": "1.1.4",
-            "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz",
-            "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==",
-            "dev": true,
-            "requires": {
-                "es-define-property": "^1.0.0",
-                "es-errors": "^1.3.0",
-                "gopd": "^1.0.1"
-            }
-        },
         "define-properties": {
             "version": "1.1.4",
             "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz",
@@ -2755,42 +2991,6 @@
                 "unbox-primitive": "^1.0.2"
             }
         },
-        "es-define-property": {
-            "version": "1.0.0",
-            "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz",
-            "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==",
-            "dev": true,
-            "requires": {
-                "get-intrinsic": "^1.2.4"
-            },
-            "dependencies": {
-                "function-bind": {
-                    "version": "1.1.2",
-                    "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
-                    "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
-                    "dev": true
-                },
-                "get-intrinsic": {
-                    "version": "1.2.4",
-                    "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz",
-                    "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==",
-                    "dev": true,
-                    "requires": {
-                        "es-errors": "^1.3.0",
-                        "function-bind": "^1.1.2",
-                        "has-proto": "^1.0.1",
-                        "has-symbols": "^1.0.3",
-                        "hasown": "^2.0.0"
-                    }
-                }
-            }
-        },
-        "es-errors": {
-            "version": "1.3.0",
-            "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz",
-            "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==",
-            "dev": true
-        },
         "es-shim-unscopables": {
             "version": "1.0.0",
             "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz",
@@ -3482,12 +3682,6 @@
             "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==",
             "dev": true
         },
-        "file": {
-            "version": "0.2.2",
-            "resolved": "https://registry.npmjs.org/file/-/file-0.2.2.tgz",
-            "integrity": "sha512-gwabMtChzdnpDJdPEpz8Vr/PX0pU85KailuPV71Zw/un5yJVKvzukhB3qf6O3lnTwIe5CxlMYLh3jOK3w5xrLA==",
-            "dev": true
-        },
         "file-entry-cache": {
             "version": "6.0.1",
             "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
@@ -3702,36 +3896,6 @@
             "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
             "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA=="
         },
-        "gopd": {
-            "version": "1.0.1",
-            "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz",
-            "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==",
-            "dev": true,
-            "requires": {
-                "get-intrinsic": "^1.1.3"
-            },
-            "dependencies": {
-                "function-bind": {
-                    "version": "1.1.2",
-                    "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
-                    "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
-                    "dev": true
-                },
-                "get-intrinsic": {
-                    "version": "1.2.4",
-                    "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz",
-                    "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==",
-                    "dev": true,
-                    "requires": {
-                        "es-errors": "^1.3.0",
-                        "function-bind": "^1.1.2",
-                        "has-proto": "^1.0.1",
-                        "has-symbols": "^1.0.3",
-                        "hasown": "^2.0.0"
-                    }
-                }
-            }
-        },
         "graceful-fs": {
             "version": "4.2.10",
             "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz",
@@ -3771,12 +3935,6 @@
                 "get-intrinsic": "^1.1.1"
             }
         },
-        "has-proto": {
-            "version": "1.0.3",
-            "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz",
-            "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==",
-            "dev": true
-        },
         "has-symbols": {
             "version": "1.0.3",
             "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz",
@@ -3809,23 +3967,6 @@
                 }
             }
         },
-        "hasown": {
-            "version": "2.0.1",
-            "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.1.tgz",
-            "integrity": "sha512-1/th4MHjnwncwXsIW6QMzlvYL9kG5e/CpVvLRZe4XPa8TOUNbCELqmvhDmnkNsAjwaG4+I8gJJL0JBvTTLO9qA==",
-            "dev": true,
-            "requires": {
-                "function-bind": "^1.1.2"
-            },
-            "dependencies": {
-                "function-bind": {
-                    "version": "1.1.2",
-                    "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
-                    "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
-                    "dev": true
-                }
-            }
-        },
         "he": {
             "version": "1.2.0",
             "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz",
@@ -4123,12 +4264,6 @@
             "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==",
             "dev": true
         },
-        "isarray": {
-            "version": "2.0.5",
-            "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz",
-            "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==",
-            "dev": true
-        },
         "isexe": {
             "version": "2.0.0",
             "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
@@ -4374,52 +4509,6 @@
             "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
             "dev": true
         },
-        "json-stable-stringify": {
-            "version": "1.1.1",
-            "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.1.1.tgz",
-            "integrity": "sha512-SU/971Kt5qVQfJpyDveVhQ/vya+5hvrjClFOcr8c0Fq5aODJjMwutrOfCU+eCnVD5gpx1Q3fEqkyom77zH1iIg==",
-            "dev": true,
-            "requires": {
-                "call-bind": "^1.0.5",
-                "isarray": "^2.0.5",
-                "jsonify": "^0.0.1",
-                "object-keys": "^1.1.1"
-            },
-            "dependencies": {
-                "call-bind": {
-                    "version": "1.0.7",
-                    "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz",
-                    "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==",
-                    "dev": true,
-                    "requires": {
-                        "es-define-property": "^1.0.0",
-                        "es-errors": "^1.3.0",
-                        "function-bind": "^1.1.2",
-                        "get-intrinsic": "^1.2.4",
-                        "set-function-length": "^1.2.1"
-                    }
-                },
-                "function-bind": {
-                    "version": "1.1.2",
-                    "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
-                    "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
-                    "dev": true
-                },
-                "get-intrinsic": {
-                    "version": "1.2.4",
-                    "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz",
-                    "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==",
-                    "dev": true,
-                    "requires": {
-                        "es-errors": "^1.3.0",
-                        "function-bind": "^1.1.2",
-                        "has-proto": "^1.0.1",
-                        "has-symbols": "^1.0.3",
-                        "hasown": "^2.0.0"
-                    }
-                }
-            }
-        },
         "json-stable-stringify-without-jsonify": {
             "version": "1.0.1",
             "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
@@ -4431,12 +4520,6 @@
             "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz",
             "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA=="
         },
-        "jsonify": {
-            "version": "0.0.1",
-            "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.1.tgz",
-            "integrity": "sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg==",
-            "dev": true
-        },
         "jsx-ast-utils": {
             "version": "3.3.2",
             "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.2.tgz",
@@ -5865,50 +5948,6 @@
             "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==",
             "dev": true
         },
-        "set-function-length": {
-            "version": "1.2.1",
-            "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.1.tgz",
-            "integrity": "sha512-j4t6ccc+VsKwYHso+kElc5neZpjtq9EnRICFZtWyBsLojhmeF/ZBd/elqm22WJh/BziDe/SBiOeAt0m2mfLD0g==",
-            "dev": true,
-            "requires": {
-                "define-data-property": "^1.1.2",
-                "es-errors": "^1.3.0",
-                "function-bind": "^1.1.2",
-                "get-intrinsic": "^1.2.3",
-                "gopd": "^1.0.1",
-                "has-property-descriptors": "^1.0.1"
-            },
-            "dependencies": {
-                "function-bind": {
-                    "version": "1.1.2",
-                    "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
-                    "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
-                    "dev": true
-                },
-                "get-intrinsic": {
-                    "version": "1.2.4",
-                    "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz",
-                    "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==",
-                    "dev": true,
-                    "requires": {
-                        "es-errors": "^1.3.0",
-                        "function-bind": "^1.1.2",
-                        "has-proto": "^1.0.1",
-                        "has-symbols": "^1.0.3",
-                        "hasown": "^2.0.0"
-                    }
-                },
-                "has-property-descriptors": {
-                    "version": "1.0.2",
-                    "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz",
-                    "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==",
-                    "dev": true,
-                    "requires": {
-                        "es-define-property": "^1.0.0"
-                    }
-                }
-            }
-        },
         "shallow-clone": {
             "version": "3.0.1",
             "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz",
diff --git a/package.json b/package.json
index b2f2313..a5989d8 100644
--- a/package.json
+++ b/package.json
@@ -44,10 +44,11 @@
         "underscore.string": "^3.3.4"
     },
     "devDependencies": {
-        "@exabyte-io/code.js": "2023.11.22-0",
+        "@exabyte-io/code.js": "git+https://github.com/Exabyte-io/code.js.git#215e9e7b194c63422858d043be750fe023814329",
         "@exabyte-io/eslint-config": "^2022.11.17-0",
         "@exabyte-io/made.js": "git+https://github.com/Exabyte-io/made.js.git#00eec7c00079b686a8cb7591f85e1a06f2f5f647",
         "@exabyte-io/application-flavors.js": "git+https://github.com/Exabyte-io/application-flavors.git#b25b433276e4b874de525b44ad6f9a6e8624aa6d",
+        "@mat3ra/esse": "git+https://github.com/Exabyte-io/esse.git#332a9cc5c0853af610dd721dc976905637cf989e",
         "chai": "^4.3.4",
         "eslint": "7.32.0",
         "eslint-config-airbnb": "19.0.2",
