Skip to content

Releases: eclipsesource/jsonforms

v3.2.1

24 Jan 15:59
Compare
Choose a tag to compare

This is a patch release to fix an inconsistency with the React Material UI variant defaults

  • [react-material] fix: consistently use outlined input variant (#2256)
  • [development] fix: React Material and Vanilla example dev (#2257)
  • [docs] docs: update migration guide and readmes (#2258)

v3.2.0

23 Jan 13:04
Compare
Choose a tag to compare

[all packages] feat: respect "default" values when creating new elements in an array (#2206) - Contributed on behalf of STMicroelectronics
[all packages] feat: introduce middleware support (#2220, #2246)
[all packages] fix: resolve refs in object renderer (#2202)

[core] feat: add a failWhenUndefined option to the SchemaBasedCondition (#2095)
[core] feat: pass resolved subschema to createLabel (#2165)
[core] feat: remove state slice when set as undefined (#2163)
[core] fix: generate UI Schema with Type Null (#2251)
[core] fix: disable schema caching in AJV instance (#2201)
[core] fix: generate a control for enums in generated uischema (#2189)
[core] fix: fenerate valid path segments when schemaPath contains 10 or more subschemas. (#2194)
[core] fix: removeItems for list renderers (#2181)
[core] fix: createRenderInfo TypeError in default title case (#2169)

[react-material] feat: add description to array renderer (#2227)
[react-material] feat: make material renderers aware of input variant in theme (#2182)
[react-material] feat: reset data in anyOfRenderer, if data types dont match (#2175)
[react-material] fix: datepicker validation (#2200)
[react-material] fix: always hide React Material multi enum when not visible (#2252)
[react-material] fix: orphaned labels on single select dropdown (#2199)
[react-material] fix: resolve refs in EnumArrayRenderer (#2204)
[react-material] chore: update peer dependency for mui/icons in material-renderers (#2186)
[react-material] chore: update @mui/icons-material depdency in material-renderers (#2218)

[react-vanilla] feat: vanilla textcell password support (#2254)
[react-vanilla] fix: avoid stale categories (#2120)
[react-vanilla] fix: store actual enum values instead of stringified versions (#2205)

[angular, angular-material] dev: build Angular packages with ng-packagr (#2236)
[angular, angular-material] feat: Angular 16 and Angular 17 support (#2229)
[angular, angular-material] feat: Angular 15 support. (#2212)

Note

Angular 15 support is only available in JSON Forms 3.2.0-alpha.4.
The support for Angular 15 was dropped in favor of supporting Angular 16 and 17 for the stable release

[angular-material] fix: remove @jsonforms/angular-test peerDependency (#2230)
[angular-material] fix: remove unsupported operators in angular material object renderer (#2160)
[angular-material] fix: unfocused description display for number renderer (#2167)
[angular-material] dev: add Angular Material Autocomplete test (#2217)

[vue-vanilla] fix: element label in vue array renderer (#2191)
[vue-vanilla] feat: disable ArrayListRenderer add if control.data.length exceeds or is equal to maxItems (#2154)
[vue-vanilla] feat: add Object and OneOf renderer to vue3-vanilla (#2151)

[development] dev: move vue packages up to be directly contained in packages folder; smaller deps improvements (#2162)
[development] dev: use npm provenance (#2248)
[development] dev: typescript 4.9.5, TS target ES2021, TS module ES2020, typedoc ~0.25.3 (#2241)
[development] dev: adapt issue templates to vue 2 removal (#2240)
[development] dev: update Node version to 18.19+ (#2235)
[development] dev: implement GitHub Action for Publishing (#2223)
[development] dev: update and fix dev container (#2170)
[development] dev: enable and fix tests on MacOS CI (#2171)
[development] dev: change URLs to absolute paths in README files (#2155)
[development] dev: upgrade build stack to pnpm, Node 16, Lerna 6 (#2148)

Many thanks to @SaSteffen, @sebastianfrey, @devbydaniel, @sgober, @IhsenBen, @dholmes2409, @dchambers, @fuku710, @xou816, @clemens-msupply, @DrewHoo, @howdyAnkit, @Droxx, @butzist for their great contributions!

Super special thanks to @JBBianchi for several great contributions, significantly enhancing the Angular project.

v3.1.0

21 Jun 12:28
Compare
Choose a tag to compare

Sponsored Development

Ongoing maintenance of the Vuetify renderer set

Funded by the Gordon and Betty Moore Foundation. (Grant Agreement #10485). Sponsored by Crossref, as part of our commitment to open scholarly infrastructure.

Detailed changes

[all packages] i18n Internationalizaton support (#2099, #2129, #2098, #2082)

[core] fix: properly match AJV paths with slashes (#2147)
[core] fix toDataPath function comment explaining correct functionality (#2061)
[core] fix duplicate error message (#2051)
[core] fix allOf in array (#2053)
[core] Fix percent char decoding (#2124)

[material] add readOnly functionality to array and list (#2040)
[material] Migrate @mui/x-date-pickers to v6 (#2139)
[material] Export all unwrapped React Material renderers (#2132)
[material] fix visibility of error-icon in array (#2037)
[material] check if index of category is out of range (#2121)
[material] Use aria-describedby on checkboxes with descriptions (#2079)
[material] Show description or tooltip on boolean controls (#2072)

[vue] Fix vue onChange (#2084)
[vue] Fix vue2 control type (#2088)

[angular-material] propagate readOnly prop in Angular detail-List (#2062)
[angular-material] Fix category hiding in Angular Material (#2027)
[angular-material] Added add and remove icons to table renderer (#2021)
[angular-material] show hint onFocus (#2036)

[development] Replace TSLint with ESLint and Prettier (#2112)
[development] Improve internal example app(#2101, #2074, #2056)
[development] folder names should match package names (#2064, #2050, #248)
[development] Add JSON Forms version field to issue template (#2039)
[development] Use type only imports (#2076)

Many thanks to @sebastianfrey, @codefactor, @brockfanning,@wienczny, @jlarrubiaq and @Tarjei400 for their great contributions!

Special thanks to Crossref and @yaffol for the sponsorship!

v3.0.0

26 Sep 09:54
Compare
Choose a tag to compare

Sponsored Development

  • i18n Internationalization feature
  • ongoing maintenance of the Vuetify renderer set

Funded by the Gordon and Betty Moore Foundation. (Grant Agreement #10485). Sponsored by Crossref, as part of our commitment to open scholarly infrastructure.

Detailed changes

[all packages] i18n Internationalizaton support (#2023, #1974, #1944, #1879, #1848, #1825, #1966, #1954, #1939)
[all packages] readOnly support (#2019, #1860, #1763)
[all packages] Provide additional tester context (#1975)
[all packages] Readme and documentation (#1875, #1793, #1764)
[all packages] Integrate external errors in form (#1937)
[all packages] Encode '/' in prop name (#1834)
[all packages] Improve reference resolving (#1829, #2001)
[all packages] Update ajv to version 8 (#1739, #1827)
[all packages] Deleting values instead of storing empty string (#1961, #1984)
[all packages] Properly determine UI Schemas (#1940)

[core] Add additional interfaces for Scoped, Labelable and Labeled ui elements. (#1935)
[core] allow other additional types besides 'string' when testing for format (#1925)
[core] Add support for 'then/else' paths (#1909)
[core] Recognize arrays with union type items as nested object arrays again (#2000)
[core] Move logic out of index files (#1766)
[core] Add support for const constraint in combinator mappings (#1788)

[angular, core, material, vanilla] Improve Time Pickers (#1792)
[core, react, vue] Various minor adjustments (#1932)

[react] Debounce emitted events in React (#1864)
[react] Add uischemas to dependency array (#1836)

[core, material, react, vanilla] Improve React.memo performance (#1814)

[material] Update MUI to version 5 (#1812, #1911)
[material] Add debounce for input material controls (#1813)
[material] Differentiate between sort buttons (#1955)
[material] Fix control mode of React Material radio group (#2009)
[material] Migrate material date- and time pickers from mui/lab to mui/x-date-pickers (#2002)
[material] Refactor MuiAutocomplete (#1950, #1982)
[material] Add default views for material date/time controls (#1960)
[material] Pass all props in the MaterialArrayLayoutRenderer (#1951)
[material] Pass through original values for invalid dates (#1949)
[material] Preserve enum labels in React Material enum array (#1904)
[material] Don't modify user-schemas in Material Object Renderer (#1871)
[material] Rename ExpansionPanel to Accordion as suggested by Material UI (#1776)
[material] reset state on prop change for detailList (#2006)
[material] Fix type-imports according to the release notes of TypeScript 3.8 (#1845)
[material] Use filtered categories in childProps (#1789)
[material] Add required prop to Inputs (#1798)
[material] Explicitly check for undefined and null (#1796)

[vanilla] Rework Vanilla Layout Arrray Control (#1957, #1990, #2011)
[vanilla] Fix React Vanilla time renderer format (#1962)
[vanilla] Fix Vanilla IntegerCell not rendering zero (#1916)
[vanilla] Add special className to style boolean cells (checkbox) in Vanilla package (#1865)
[vanilla] Use validationError classes defined in styles. This way this can be ovewriten by users (#1866)
[vanilla] Add customizable CSS classes to vanilla radio group (#1843)
[vanilla] Allow to pass as UISchema options placeholder attribute for TextCell and TextAreaCell cells (#1844)
[vanilla] Register RadioGroupControl in React Vanilla (#1791)
[vanilla] Remove redux vanilla (#1802)

[material, vanilla] Disable group elements on group disable rule (#1794)

[angular-material, angular] Update Angular packages (#1869)
[angular, angular-material] Compatibility with Angular 14 (#1979)
[angular-material] Update RXJS peer dependency version to include ^7.4.0 (#2015)
[angular-material, angular, core] Build ESM and CommonJS modules (#1858)
[angular, angular-material] Add JsonFormsAbstractControl to exported classes (#1785)
[angular-material] Improve label handling in MasterListComponent (#1786)

[vue] add binding for one enum cell elements (#1919)
[vue2] Remove composition-api plugin & upgrade to vue 2.7 (#1981)

[examples] Improve Vue Vanilla demo app (#1968)
[examples] Enhance example app (#1877)
[examples] Remove redux from example package (#1828)
[development] Remote container setup for VS-Code (#1809, #1941, #1945)

Many thanks to @rsoika, @marcianos, @kchobantonov, @sunnysingh, @wienczny, @jdwit, @nmaier95, @JoshuaFortriede, @nmay231, @rokiyama, @andresgutgon, @mirismaili, @awolokita, @larsw, @richturner, @onerzafer for their great contributions!

Special thanks to @kchobantonov for his amazing Vuetify renderer set contribution!

Very special thanks to CrossRef for the ongoing sponsoring!

v2.5.2

16 Jun 13:02
Compare
Choose a tag to compare

[vue2] Change vue2 module system to commonjs (#1755)

v2.5.1

11 May 17:39
Compare
Choose a tag to compare

[vue, vue-vanilla, vue2, vue2-vanilla, core] Add Vue Vanilla renderer sets (#1703, #1727, #1730, #1731, #1732, #1733)
[core] Added auto anyOf/oneOf/allOf resolving (#1702)
[core] Improve error filtering for anyOf, oneOf and allOf (#1714)
[core] Update data via lodash's fp/set (#1721)
[react] Indicate React 17 to be compatible with JSON Forms (#1740)
[core, material, react] Add MultiEnum renderer for enums and oneOf (#1709, #1736)
[material] Add React Material boolean toggle switch control and cell (#1693)
[material] Offer MuiInputText inputComponent customization (#1700)
[material] Fixes group's label being reformatted with startCase (#1701)
[angular, angular-material] Indicate compatibility with Angular 10 and 11 (#1749)
[angular-material] Fix resolving issues for nested categorizations (#1743)
[examples] Remove Redux dependency from examples package (#1708)

Special thanks to @sifthedog, @buryndin, @DavidHenri008 and @Felix-Puetz for their great contributions!

Big thanks also to headwire.com who partly sponsored the new Vue Vanilla renderer sets ❤️

v2.5.0

26 Jan 15:34
Compare
Choose a tag to compare

[vue, vue2] Add JSON Forms Vue support (#1682)
[core, material, angular-material, example, react, vanilla] Remove redux dependencies from JSON Forms (#1649, #1653, #1664)
[core, react, material] React performance improvements (#1655)
[core, material] Support ui schema registry in React standalone (#1589)
[material, vanilla] Honor property titles in Table renderers (#1650)
[material] MaterialRadioGroupControl not used (#1642)
[material] Refactor "Clear input" button (#1648)
[material] Add radio group control for "oneOf" enums (#1654)
[angular] Improve dataChange emit (#1662)
[angular] Add error output to Angular component (#1663)
[angular, angular-material] Make Angular component consumable multiple times (#1657)
[angular, angular-material] Add Angular component config support (#1661)
[angular-material] Manually trigger changeDetector in Angular Master renderer (#1671)
[angular-material] Introduce 'useGrouping' option (#1672)
[vanilla] Add Vanilla JsonFormsStyleContext (#1652, #1665)
[vanilla] Automatically use default styles, remove redux style support, support style def merging (#1675)
[vanilla] Enhance VanillaRenderer customizable class names (#1679)
[vanilla] Show 0 in Vanilla NumberCell (#1658)

Special thanks to @sarahtrefethen and @JovanShandro for their great contributions!

Many thanks to headwire.com whose sponsoring made the Vue-based renderer sets possible. Among others they plan to power peregrine-cms.com with JSON Forms Vue and decided to contribute back to the OS community. ❤️

v2.4.1

30 Sep 18:50
Compare
Choose a tag to compare

[all] Add label support for enums (#1591)
[all] Use existing Ajv instance in all places (#1624)
[core] Make sure resolveData throws no exception (#1616)
[core] Fix AJV error when modifying schemas with ids (#1620)
[core, react] Add global readonly flag to react and core (#1594) (#1628)
[angular, core, react] Introduce validation mode (#1611)
[material] Add enum autocomplete renderers (#1593) (#1598) (#1600) (#1609)
[material] Remove TrimmableInputLabel (#1629)
[react] Move @types/* dependencies of react package to dev dependencies (#1618)
[react] Cache generated schema and ui schema (#1644)
[vanilla] Fix Vanilla example app crash (#1640)
[angular] Improve change detection for angular (#1614) (#1617)
[angular] Angular renderer for object arrays (#1615) (#1636) (#1646)
[example] Add control options example (#1602)
[example] Enhance categorization example (#1599)
[example] Add show/hide data to rule example (#1606)

Special thanks to @DBosley for their great contributions!

v2.4.0

18 Jun 15:26
Compare
Choose a tag to compare

[all] Add keywords to important packages (#1534)
[all] Consistently handle 'renderers' and 'cells' props (#1545)
[core] Handle undefined as initial data prop (#1577)
[core, react] Rework JsonFormsStateProvider (#1583)
[material] Fix sorting buttons width for tablet devices (#1528)
[material, react, vanilla] Fix performance of rendering lots of fields in React (#1559)
[material] Fix crash in MaterialTableControl (#1563)
[material] Don't cut off labels in MaterialInputControl (#1585)
[material] Hide 'clear' adornment when data is undefined (#1585)
[material, example] Support showNavButtons on categorization stepper (#1580)
[react] Update ContextToProps to handle enums correctly (#1549)
[react] Shallow compare schema and uischema props (#1559)
[react] Offer config customization in Standalone Renderer (#1583)
[vanilla] Fix styling support for vanilla cells (#1544)
[vanilla] Export vanilla renderer actions (#1544)
[vanilla] Adjust enum cells type and vanilla usage (#1544)
[vanilla] Add tests for vanilla cell CSS classes (#1544)
[angular] Remove Redux from Angular packages (#1531)
[angular] Move to Angular 9 (#1532)
[angular] Add responsive support to angular horizontallayout (#1554)
[angular] Import renderers explicitly in angular module (#1556)
[angular] Fix dispatch call in angular master (#1558)
[angular] Fix rule visibility for enum renderer (#1573)
[angular] Expose state as an observable and let consumer import browser animation module (#1569)
[angular] Add hint to show description on controls (#1572)
[angular] Use ChangeDetectionStrategy in Angular (#1582)
[angular] Implement form-wide configuration for Angular (#1584)
[example] Fix type error in example app (#1556)
[ionic] Extract ionic renderer set into its own repository (#1530)
[webcomponent] Extract webcomponent into its own repository (#1552)
[material-tree-renderer] Extract material tree renderer into its own repository (#1552)

Special thanks to @nowells, @zRosenthal and @chavalipraveen for their great contributions!

v2.3.2

29 Nov 15:25
Compare
Choose a tag to compare

[all] Update core / react / material and vanilla dependencies (#1526)
[all] Add layout enable/disable feature (#1506)
[core] Remove duplicate definition of StatePropsOfCell (#1523)
[core, react] Generate (ui)schema in JsonForms component (#1515)
[material] Fix too much padding on table cell with add icon (#1494)
[material] Fix time field not being disabled (#1502)
[material] Hide clear button via visibility instead of 'Hidden' (#1513)
[material] Restyle MaterialArrayLayout (#1521)
[material] Allow configuring array child label (#1522)
[example] Add sorting option to Array example (#1496)
[react] Fix array rendering in standalone application (#1511)
[angular] Remove angular private package information (#1493)

Special thanks to @iluuu1994 for their great contributions!