This contains the source files for the "Omnipedia - Content" Drupal module, which provides content-related functionality for Omnipedia.
This contains our content infrastructure that provides custom HTML elements for wiki content which gets rendered as standard HTML, and many alterations built on top of CommonMark for our specific use-cases.
-
PHP 8.1
Before attempting to install this, you must add the Composer repositories as described in the installation instructions for these dependencies:
-
The
ambientimpact_core
,ambientimpact_markdown
, andambientimpact_ux
modules. -
The
omnipedia_core
andomnipedia_date
modules.
To build front-end assets for this project, Node.js and Yarn are required.
Ensure that you have your Drupal installation set up with the correct Composer
installer types such as those provided by the drupal/recommended-project
template.
If you're starting from scratch, simply requiring that template and following
the Drupal.org Composer
documentation
should get you up and running.
In your root composer.json
, add the following to the "repositories"
section:
"drupal/omnipedia_content": {
"type": "vcs",
"url": "https://github.com/neurocracy/drupal-omnipedia-content.git"
}
Once you've completed all of the above, run composer require "drupal/omnipedia_content:^7.0@dev"
in the root of your project to have
Composer install this and its required dependencies for you.
To build front-end assets for this project, you'll need to install Node.js and Yarn.
This package makes use of Yarn
Workspaces and references other local
workspace dependencies. In the package.json
in the root of your Drupal
project, you'll need to add the following:
"workspaces": [
"<web directory>/modules/custom/*"
],
where <web directory>
is your public Drupal directory name, web
by default.
Once those are defined, add the following to the "dependencies"
section of
your top-level package.json
:
"drupal-omnipedia-content": "workspace:^7"
Then run yarn install
and let Yarn do the rest.
While not required, yarn.BUILD is recommended to make building all of the front-end assets even easier.
This uses Webpack and Symfony Webpack Encore to automate most of the build process. These will have been installed for you if you followed the Yarn installation instructions above.
If you have yarn.BUILD installed, you can run:
yarn build
from the root of your Drupal site. If you want to build just this package, run:
yarn workspace drupal-omnipedia-content run build
The following major version bumps indicate breaking changes:
-
4.x - Front-end package manager is now Yarn; front-end build process ported to Webpack.
-
5.x:
-
Requires Drupal 9.5; includes backward compatible Drupal 10 deprecation fixes but is still not fully compatible.
-
Increases minimum version of Hook Event Dispatcher to 3.1, removes deprecated code, and adds support for 4.0 which supports Drupal 10.
-
Removes the
omnipedia_content_legacy
module; you can still find it in the 4.x branch.
-
-
6.x:
-
Requires Drupal 10 due to non-backwards compatible change to
\Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher::dispatch()
. -
Removes PHP 7.4 support; Drupal 10 only supports PHP 8.
-
Requires
drupal/ambientimpact_core
2.x for Drupal 10 support. -
Requires
drupal/ambientimpact_markdown
2.x for Drupal 10 support.
-
-
7.x:
-
Increased
drupal/ambientimpact_ux
to 2.x from 1.x. -
Removed the
omnipedia_tooltip
component and moved the functionality it provided (reparent tooltips) toomnipedia_site_theme
8.x. -
Removed Symfony 4.x support; only Symfony 6.x is supported now.
-