Web Components Versions Save

React Components for Accord Project

v0.93.1

3 years ago

Markdown Editor

🚀 New Feature

#119 - Enables drag and drop for images (@DianaLease)

Contract Editor

🚀 New Feature

#115 - Enables drag and drop for clause blocks (@DianaLease)

v0.93.0

4 years ago

We have refactored our three main user facing, front-end libraries to be four. This allows the structure to be more consistent.

Organization

The syntax structure of the packages has changed, and packages will now be available from npm as:

  • @accordproject/ui-markdown-editor
  • @accordproject/ui-contract-editor
  • @accordproject/ui-concerto
  • @accordproject/ui-components

Adjusted directory names:

  • @accordproject/markdown-editor => @accordproject/ui-markdown-editor
  • @accordproject/concerto-ui => @accordproject/ui-concerto
  • @accordproject/cicero-ui => @accordproject/ui-contract-editor
  • @accordproject/cicero-ui => @accordproject/ui-components
  • @accordproject/text-editor => @accordproject/ui-components

Markdown Editor

💥 Breaking Change

Contract Editor (Formerly Cicero UI)

💥 Breaking Change

🐛 Bug Fix

UI Components (Formerly Cicero UI)

💥 Breaking Change

UI Concerto

💥 Breaking Change

v0.92.2

4 years ago

Web Components

🏠 Internal

  • #100: Migrates from Github pages to Netlify (@jeromesimeon)

Cicero UI

🚀 New Feature

  • #93 : Adds class to Library component for styling (@petrgazarov)
  • #104 : Updates clause component styling so less space at the top (@DianaLease)

🏠 Internal

  • #94 : Fixes linter errors (@petrgazarov)

Markdown Editor

🚀 New Feature

  • #99: Allows format button color change through prop (@irmerk)

🐛 Bug Fix

  • #105: Renders space for softbreak (@DianaLease)

v0.92.1

4 years ago

Cicero UI

🐛 Bug Fix

  • #89 : Fixes issue where clicking on the background of a clause caused an error from slate in the Javascript console (@DianaLease)

🛍️ Feature

  • #90 : Adds a new query to the editor canAddClause() which will return false if the user's selection is inside of a nested element such as a list or another clause (@DianaLease)

v0.92.0

4 years ago

Web Components

🏠 Internal

  • #82: Updates have been made to the eslint config across all packages. This repo no longer uses prettier and now extends Clause's eslint config. (@DianaLease)
  • #84: Updates READMEs for each individual package as well as the root README to make developing instructions more clear (@irmerk)

Cicero UI

🐛 Bug Fixes

  • #83 : Removes semantic-ui stylesheet previously imported into the library to avoid overriding styles when imported into other apps (@DianaLease)
  • #88 : Passes the readOnly prop to the Clause component so it can prevent rendering icons on hover when readOnly is true (@DianaLease)

Concerto UI

💥 Breaking Change

  • #85 : Removes @accordproject/concerto-ui-core and @accordproject/concerto-ui-react in favor of merging them into one @accordproject/concerto-ui (@mttrbrts)

v0.91.0

4 years ago

This is a major initial release!

We have consolidated our three main user facing, front-end libraries under one mono-repository. Please take the time to familiarize yourself with the new structure and documentation.

This process has brought a number of high level benefits:

Performance

The new Slate version (v0.58) brings us huge benefits in speed, please read more at the Slate documentation.

Size

Switching to Rollup has changed the bundle sizes:

  • markdown-editor: 90% Reduction
  • concerto-ui: 15% Reduction
  • cicero-ui: 30% Reduction

Functional

This is a collection of React components that take advantage of Hooks and functional components, which means less overhead for extending functionality.

Functionality

Image support in the editor and editor's toolbar. Copy and paste have been improved. We have scrapped the props approach for styling and in favor of class names css.

Organization

There will now be a simplified, single version number for all components. Moreover, the structure has changed:

  • markdown-editor/RichTextEditor -> markdown-editor/MarkdownEditor
  • markdown-editor/TextEditor -> text-editor/TextEditor
  • cicero-ui/TemplateLibrary -> cicero-ui/Library

Note: Packages will still be available from npm in the same way:

  • @accordproject/markdown-editor
  • @accordproject/concerto-ui
  • @accordproject/cicero-ui

Markdown Editor

Support for:

Some new highlights:

💥 Breaking Change

  • MDE #297: Migrate to Slate 0.58 (@dselman, @dianalease, @irmerk)
    • This new version does away with the 'plugin' concept of applying plugins onto the editor
    • augmentEditor (optional)
      • There is a new Higher Order Function (HOF) approach to adding or manipulating methods on the editor
      • You can utilize this by creating a HOF which takes editor and pass it in as augmentEditor
    • customElements (optional)
      • You may define and use your own custom React components for extra Slate Node types
      • These must be defined in a function which receives attributes, children, and element
      • This function returns an object with Slate Node type names as keys, and functions which return the React components as values
    • isEditable (optional)
      • A method that determines if current edit should be allowed
    • canBeFormatted (optional)
      • A method that determines if current formatting change should be allowed
    • canCopy (optional)
      • A method that determines if current selection copy should be allowed
    • canKeyDown (optional)
      • A method that determines if current key press event should be allowed
    • Styling
      • We did away with editorProps, opting to leave it to the user of this library to override css if desired
    • Slate's Document Object Model (DOM) has changed to be more JSON-esque
  • #1: Renamed export from RichTextEditor to MarkdownEditor (@dselman)
  • MDE #390: Changed the className property to the id property in the editor and toolbar (@irmerk)

🚀 New Feature

  • MDE #244: Support keyboard shortcuts (@98lenvi)
    • MDE #312: Support hyperlink creation shortcut (@algomaster99)
    • MDE #333: Support image addition shortcut (@shrey-sachdeva2000)
  • MDE #311: Hyperlink modal revamp (@dianalease)
    • MDE #346: Prevent insertion of link with empty URL (@algomaster99)
    • MDE #351: Improved UI for hyperlink modal (@elit-altum)
  • MDE #377: Support Heading id's (@dianalease)
  • MDE #365: Insert https:// if a hyperlink does not have it (@nik72619c)

💅 Polish

  • MDE #382: Improved developer demo (@arteevraina)
  • MDE #315: Sticky formatting toolbar (@shrey-sachdeva2000)

📝 Documentation

  • #286: Consolidate contributing guides to the techdocs repository (@irmerk)

🏠 Internal

  • #81: Support an Accord Project badge (@jeromesimeon)

Cicero UI

Support for:

Some new highlights:

💥 Breaking Change

  • CUI #297: Migrate to Slate 0.58 (@dselman, @dianalease, @irmerk)
    • This new version does away with the 'plugin' concept of applying plugins onto the Slate editor
    • augmentEditor (optional)
      • There is a new Higher Order Function (HOF) approach to adding or manipulating methods on the Slate editor
      • You can utilize this by creating a HOF which takes editor and pass it in as augmentEditor
      • This adds onto the already built in augmentEditor passed into markdown-editor
    • onClauseUpdated
    • pasteToContract
      • Remains as is, but updated to handle the new Slate format
    • loadTemplateObject
      • Deprecated, now it is up to the parent component which consumes this library to handle fetching the template objects
    • Slate's Document Object Model (DOM) has changed to be more JSON-esque
    • Styling
      • We did away with clauseProps and editorProps which pertained to styling, opting to leave it to the user of this library to override css if desired
      • Note: Still existing:
        • CLAUSE_DELETE_FUNCTION
        • CLAUSE_EDIT_FUNCTION
        • CLAUSE_TEST_FUNCTION
  • CUI #363: TemplateLibrary becomes Library through full redesign and can handle more objects than templates (@petrgazarov)

🚀 New Feature

  • CUI #315: Storybook for developer focused demo (@sanyamdogra, @elit-altum, @98lenvi)

💅 Polish

  • CUI #366: Correct clickable import area in Library (@nik72619c)
  • CUI #389: CSS Styling for Blockquotes (@arteevraina)
  • CUI #359: Provide user feedback if Library search has no results (@nik72619c)

📝 Documentation

  • #286: Consolidate contributing guides to the techdocs repository (@irmerk)

🏠 Internal

  • #81: Support an Accord Project badge (@jeromesimeon)

Concerto UI

Some new highlights:

👓 Spec Compliance

  • CON #36: Support for React Hooks (@mttrbrts)

🚀 New Feature

  • CON #45: Support for read-only rendering (@kanav-raina)

🐛 Bug Fix

  • CON #23: MonetaryAmount currency dropdown width on Safari (@mttrbrts)
  • CON #40: Resolve enum radio buttons not updating (@mttrbrts)
  • CON #38: Resolve bug adding element to an array of numbers (@mttrbrts)
  • CON #48: Resolve missing logo and invalid logo link (@kanav-raina)
  • CON #57: Resolve bug when adding element to nested array (@mttrbrts)