Breaking: The study plan assets are loaded by the template, as module 

Description 

Version 2.4 built the stylesheet and the script of the study plan from sources and moved them into a frontend/ subdirectory, see Breaking: The frontend assets are built and moved. The TypoScript of the content element still added both to every page of the site, through page.includeCSS and page.includeJSFooter , and the script was a classic script.

The script is an ES module now. It is registered in Configuration/JavaScriptModules.php and addressed by the bare specifier @fgtclb/academic-study-plan/frontend/academic-study-plan.js. TypoScript has no counterpart for loading an ES module, so the template of the content element loads the script now, and only pages that render a study plan request it. The TypoScript of the extension, the deprecated path of version 2.3 included, no longer adds it to the page. It can be switched off, see Feature: The study plan script can be switched off.

The stylesheet of the study plan is not shipped any more, see Breaking: The study plan ships no stylesheet.

Impact 

An installation that uses the shipped template needs to do nothing.

An installation that overrides the template, or that adds the files with its own includeCSS or includeJSFooter entries, no longer gets them from the extension. A classic script tag of its own does not execute the module.

Affected Installations 

Installations that override AcademicStudyPlan.html, or that reference either asset path from their own TypoScript or site package.

Migration 

Drop own includeCSS or includeJSFooter entries for these files. In an overridden template, load the script the way the shipped one does:

<f:asset.module identifier="@fgtclb/academic-study-plan/frontend/academic-study-plan.js" />
Copied!

<f:asset.script> cannot be used for the script any more, because a classic script tag does not execute an ES module.