Skip to content

v2.4.0

Choose a tag to compare

@ZoliQua ZoliQua released this 10 Aug 22:36
· 149 commits to main since this release

React Advanced Odontogram v2.4.0

Added

  • Opt-in localStorage persistence — enablePersistence / disablePersistence / clearPersistedState / isPersistenceEnabled; disabled by default, size-guarded, never throws. Saves are debounced (an edit burst coalesces into one write).
  • FHIR: deciduous ISO 3950 tooth codes for milk teeth (51-85), with lossless import mapping.
  • FHIR: ICDAS/CARS scoring coding on caries components (ICDAS on primary surfaces, CARS on recurrent).
  • Settings panel reorganization (General / Odontogram / Periodontal Chart / Tooth details / Caries / Fillings / Export Settings) plus new availability controls, on-screen tooth spacing/number size, selection colour/border, and a new Fillings tab.
  • Collapsible panel state + API — getCollapsedCards / isCardCollapsed / setCollapsedCard / toggleCollapsedCard; session-only UI state, not serialized to the payload.
  • CSP meta tag injected into the demo production build.

Changed

  • Export Settings now apply to the PNG/JPG/SVG image exports, not just the PDF report.
  • Fissure sealing is now offered on premolars as well as molars.
  • Idempotent session-flag setters (no redundant re-render when the value is unchanged).

Fixed

  • The grouped dentition-summary table is now legible in dark mode.

Security

  • Plugin renderSvg() output is sanitized with DOMPurify before insertion; structural (non-regex) unwrap closes an </svg>-breakout gap.
  • SNOMED dev server hardened; npm audit dev-dependency vulnerabilities fixed (0 remaining).

Docs

  • Codebase-wide comment cleanup; full pt-br and fr README re-translations.

Full details in CHANGELOG.md.