Fankhauser-Dominik / JFRSR

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Current status: Build Status Coverage Status

React Spectrum Renderer Set for JSONForms

Notice: This renderer set is work in progress and integrates yet unreleased React Spectrum components.

Checkout the examples to see the React Spectrum renderer set in action.

Developers Documentation

First time setup

  • Install node.js (version = 14.x.x)
  • Update npm (version = 6.x.x)
  • Clone this repository
  • Change into the Directory: cd JFRSR
  • Install dependencies and Hook up dependencies between packages: npm ci && npm run init
  • Build and Run React Spectrum examples: cd packages/spectrum && npm i && npm run build && npm run dev

Start the example application locally

  • Run React Spectrum examples: cd packages/spectrum && npm run dev

Build & Testing

  • Run React Spectrum tests in watch mode: cd packages/spectrum && npx jest --watch

  • Check Formatting: npm run check-format

  • Build (all packages): npm run build

  • Test (all packages): npm run test

  • Clean (delete dist folder of all packages): npm run clean

Dependency & Release management

// TODO

Continuous Integration

The React Spectrum JSONForms project is build and tested via Travis. Coverage is documented by Coveralls.

JSON Schema Features

  • boolean - Checkbox
  • boolean - Toggle
  • boolean - Button
  • integer - Number
  • integer - Text (only used in Angular Material and Ionic, toFormatted doesn't work)
  • integer - Starrating
  • number - Number
  • number - Text (only used in Angular Material and Ionic, toFormatted doesn't work)
  • number range - Slider
  • string - Text
  • string - TextArea
  • enum - Combo
  • enum - Autocomplete
  • Date format - Date field
  • Time format - Time field
  • Datetime format - Datetime field
  • Object - Vertical grid
  • Array of primitives - List
  • Array of objects - Table
  • Array of objects - List
  • Array of objects - List with Detail
  • Array of enums - Multiple Choice
  • oneOf - Tabs
  • allOf - Vertical Grid
  • anyOf - Tabs

UI Schema Features

  • Vertical Layout - Vertical Grid
  • Horizontal Layout - Horizontal Grid
  • Categorization - Tabs
  • Group - Group
  • Label - Text

License

The JSONForms project is licensed under the MIT License. See the LICENSE file for more information.

About

License:Other


Languages

Language:TypeScript 89.0%Language:JavaScript 7.8%Language:CSS 2.1%Language:Shell 0.6%Language:HTML 0.4%Language:Handlebars 0.1%