Skip to content

Releases: eclipsesource/jsonforms

v3.4.0

14 Sep 09:53
Compare
Choose a tag to compare

What's Changed

[all packages] memoize array translation (#2358)

[core] feat: add support for disabling remove and add buttons (#2344)
[core] refactor: resolve circular dependencies (#2345)
[core] fix: matching required paths with slashes (#2367)

[react-material] feat: support @mui/x-date-pickers v7 (#2349)
[react-material] Reduce bundle size by fixing material-icon imports (#2351)
[react-material] Add support for "multiple" prop on Select (fixes #2347) (#2356)
[react-material] chore: remove 'matchMedia' mock (#2370)
[react-material] Allow material ui ^6 as peer dependency (#2376)

[react-vanilla] Disable vanilla array buttons when readonly (#2303)

[vue-vanilla] fix: select element's id postfix should be '-input' not '-select' (#2368)

[vue-vuetify] initial contribution for vue-vuetify renderer set (#2341)

[ci] update ci actions (#2359)
[ci] Update publish workflow pnpm setup action to v4 (#2365)

[docs] Describe milestones in README (#2352)

Many thanks to @adamskeeled, @changjung-kim, @eneufeld, @jchamberlain, @joefreeman, @LukasBoll, @seanparmelee, @semery-fractalev for their great contributions!

Special thanks to @kchobantonov for contributing the vue-vuetify renderer set!

Full Changelog: (v3.3.0...v3.4.0)

When updating from v3.3.0, no migration should be necessary. See the migration guide if upgrading from an older version.

v3.3.0

29 May 07:12
Compare
Choose a tag to compare

What's Changed

[all packages] Use latest vue 3.4.21 & upgrade further dependencies (#2318)
[all packages] fix: update ID on schema change (#2307)

[core] feat: add hasOption tester (#2287)
[core] Add context for array operation (#2317) - Contributed on behalf of STMicroelectronics
[core, react-material] Allow the translation of enum value used for elementLabelProp in ExpandPanelRenderer (#2289)
[core, react-material] Add translation fix and support of elementLabelProp to ListWithDetail (#2304)

[angular, angular-material] Angular 18 Update (#2340)

Note

This drops support for Angular 16.
Angular 16 support is available until JSON Forms v3.3.0-beta.0.

[angular-material] Fix Angular Datepicker (#2281)
[angular-material] Add autosize prop to mat-sidenav-container (#2301)
[angular-material] Fix memory leak issue (#2243)
[angular-material] feat: improve responsiveness of tablerenderer (#2312)
[angular-material] fix: Export ArrayLayoutRenderer (#2320)
[angular-material] fix: Revert deletion of hide css class in process of angular upgrade (#2330)

[react-material] Disable auto select in MuiAutocomplete control (#2276)
[react-material] Allow the translation of the No Data case for MaterialArrayLayout (#2286)
[react-material] Add tooltip for remove, up and down button on MaterialArrayLayout and MaterialArrayControl (#2295)
[react-material] MaterialEnumArrayRenderer - Add Form Label and description (#2297)
[react-material] fix: open date dialog on mobile (#2300)
[react-material] refactor: Replace Hidden component (#2315)

[react-vanilla] Set type of <button>s in vanilla array renderer (#2298)

[vue-vanilla] Enum Multi Selection for vue vanilla (#2261)
[vue-vanilla] fix: Vue Vanilla CombinatorProperties in OneOfRenderer (#2266)
[vue-vanilla] fix: add a style class to the vue vanilla OneOfRenderer (#2272)
[vue-vanilla] feat: create own element for asterisk and add class in vue vanilla controlWrapper (#2274)
[vue-vanilla] Show required asterisk in example app (#2280)
[vue-vanilla] feat: add categorization renderer to Vue Vanilla (#2270)

[dev] reverse push and publish operations (#2259)
[dev] add simple grid layout to the dev app. save example name at location hash. show schema and uischema (#2269)
[dev] use the given i18n from the current example in vue vanilla example app (#2291)
[dev] Upgrade ESLint to ^8.56.0, regenerate pnpm-lock, consolidate vs code settings (#2293)

[docs] chore: add contributing information (#2323)
[docs] link contribution guidelines in root readme (#2329)

Many thanks to @glengemann, @davewwww, @lukasf, @zaosoula, @Maxouwell, @joefreeman, @LukasBoll, @TheZoker, @howdyAnkit, @eneufeld, @stanisev, @laurentgrangier for their great contributions!

Full Changelog: v3.2.1...v3.3.0

Also see the migration guide on hints for breaking changes.

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!