JSON Schema Form Core
Core library for working with JSON-Schema with a UI-Schema (Form) definition that doesn't depend on a framework.
This library, through the use of its merge module, combines the schema and ui-schema
into a canonical schema for use by its services and external libraries.
You DO NOT use this file in addition to Angular Schema Form, it is embedded at
build into any frameworks using it.
Work-In-Progress!
There is test output that forms some super basic documentation
and I intend to expand them much further to the point of almost being
useful before I create a proper API and document that.
Keeping Track
After changing to Webpack 2, this library now includes a detailed version
header which is passed through into Angular Schema Form
and also the Bootstrap
decorator bundle
Contributing / Plans
The main contributions we need to the core at the moment are related to both the migration
of Angular Schema Form
features to the core (like templates/builders) and the addition
of an API for use by ASF (Angular) and RSF (React) libraries.
Please contact @Anthropic via our Gitter if you wish to get involved.
Testing it
With Angular Schema Form
There is a branch in angular-schema-form called feature/webpack-babel
that integrates the core.
To use it roughly follow these steps:
- Clone angular-schema-form to a sibling directory and switch to branch
feature/webpack-babel
npm install
to install dependenciesnpm run build
to build with the core.- Use dist/angular-schema-form.js, now with the core from this folder. No need to also load ObjectPath since it is already included
With Mocha tests
Tests are written in mocha + chai and run trough npm test
.
When the command npm run testdoc
is run instead, the tests will also generate a readable
markdown
file test.md to document elements of the library.
Notes
- ObjectPath is bundled with json-schema-form-core
- angular-schema-form bundles json-schema-form-core so the user doesn't have to include it as an dependency.
- The code for not using ObjectPath on Angular 1.2 is removed. Could maybe be fixed but I (davidlgj) strongly believe its time to drop Angular 1.2 support since it complicates validation code as well.