Include Ink as a third-party JavaScript and CSS library.

Review Request #13664 — Created March 25, 2024 and submitted — Latest diff uploaded

Information

Review Board
release-7.x

Reviewers

This brings in Ink, our new CSS/JavaScript component library, embedding
the CSS and JavaScript on all pages. Currently it's not used anywhere,
but further changes will be moving components over to it.

Since Ink is not released, this currently requires some manual setup
during development. .npm-workspaces/ink must be symlinked to the root
of the Ink source tree, followed by npm install. Once we start
releasing builds of Ink, this symlink can be removed (though will be
needed for local development).

We make use of Ink's babel-preset to enable compilation of craft and
paint templates, easing component and element creation.

There's also a path fix to include Djblets from node_modules, rather
than the legacy .djblets symlink, in order to resolve typing issues.

Viewed some pages and verified that both the Ink JavaScript namespace
and Ink default theme CSS variables were available.

Commits

Files