Download the PHP package cosray/legacy-richtext-converter without Composer
On this page you can find all versions of the php package cosray/legacy-richtext-converter. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download cosray/legacy-richtext-converter
More information about cosray/legacy-richtext-converter
Files in cosray/legacy-richtext-converter
Package legacy-richtext-converter
Short Description Migration-only converter turning pre-structured-richtext HTML into Cosray rich-text documents
License MIT
Homepage https://cosray.dev
Informations about the package legacy-richtext-converter
cosray/legacy-richtext-converter
Converts pre-structured-richtext HTML into Cosray rich-text documents. It exists for one-shot migrations and legacy imports — not for request-time conversion or newly authored content.
[!IMPORTANT] This package is transitional. It carries a 3 MB generated bundle that has no place in
cosray/cms's history. It will be deleted once every downstream production database has run the000000-000020-richtext-html-to-jsonmigration. Do not build anything new on top of it.
Why it is a separate package
The bundle is a self-contained build of the Cosray panel's own rich-text schema, so migrated content is identical to what the editor itself produces. Shipping it inside cosray/cms meant a multi-megabyte artifact in that repository's permanent history and in every dev-main install. Here it can be required while it is needed and dropped afterwards.
Requirements
PHP 8.5+ and a node executable on PATH. No panel checkout, panel installation, or npm dependencies are needed — the bundle is self-contained.
Usage
Input is a map of caller-chosen unit ids to HTML. Output is the same keys mapped to rich-text documents, with null for units whose HTML was empty. Normalize and validate the documents before persisting them when the surrounding migration does not already do so — cosray/cms provides Cosray\Richtext\Normalizer for that.
Undeclared paragraph classes and text styles are preserved here; dropping or resetting them is the caller's decision.
Rebuilding the bundle
The converter's source lives in the Cosray panel because it imports the panel's rich-text schema and cannot build standalone. To rebuild, run this from a cosray/cms checkout beside this repository:
That writes resources/legacy-richtext-html-converter.mjs and resources/THIRD-PARTY-NOTICES.md here. Commit the result in this repository, not in cosray/cms.
Tests
The conversion test skips when node is unavailable.