By lauriii on
Change record status:
Published (View all published change records)
Project:
Introduced in branch:
9.0.x
Introduced in version:
9.0.0
Issue links:
Description:
Drupal 9 has updated Popper.js to 2.0.6. Code currently depending on Drupal core Popper.js, should be upgraded to Popper.js 2.0.6 following the migration guide.
Drupal 8 and Drupal 9 run different versions of Popper.js
These are the errors that will occur if Popper.js implementation is for the incorrect version:
- If Popper 2.x is installed but code is written for Popper 1.x:
Uncaught TypeError: Popper is not a constructor -
If Popper 1.x is installed but code is written for Popper 2.x:
Uncaught TypeError: Popper.createPopper is not a function
Modules and themes that want to use Popper.js without the need for separate 8.x and 9.x versions can do so by adding implementations for both Popper.js 1 and 2. It is possible to determine if Popper 1 or 2 is in use with a conditional checking if Popper.createPopper exists. This condition is only true for Popper.js 2.
Impacts:
Module developers
Themers