From 631a636f4c5212ced500d3c342e7c1953271bf29 Mon Sep 17 00:00:00 2001 From: Tim Fischbach Date: Mon, 11 Dec 2023 11:52:55 +0100 Subject: [PATCH] Decouple host application from scrolled widget packs Implicitly define packs via pageflow-scrolled/config. Allow importing all widget for SSR. REDMINE-20093 --- .../install/install_generator.rb | 21 +------------------ .../scrolled/package/config/webpack.js | 14 +++++++++++++ .../scrolled/package/widgets-server.js | 2 ++ 3 files changed, 17 insertions(+), 20 deletions(-) create mode 100644 entry_types/scrolled/package/widgets-server.js diff --git a/entry_types/scrolled/lib/generators/pageflow_scrolled/install/install_generator.rb b/entry_types/scrolled/lib/generators/pageflow_scrolled/install/install_generator.rb index 4a5bc2b2cc..009d3378bb 100644 --- a/entry_types/scrolled/lib/generators/pageflow_scrolled/install/install_generator.rb +++ b/entry_types/scrolled/lib/generators/pageflow_scrolled/install/install_generator.rb @@ -129,26 +129,7 @@ def server_pack create_file 'app/javascript/packs/pageflow-scrolled-server.js', <<-JS import 'pageflow-scrolled/frontend-server'; import 'pageflow-scrolled/contentElements-frontend'; - import 'pageflow-scrolled/widgets/defaultNavigation'; - import 'pageflow-scrolled/widgets/consentBar'; - JS - end - - def default_navigation_widget_packs - widget_dir = 'app/javascript/packs/pageflow-scrolled/widgets' - - create_file File.join(widget_dir, 'defaultNavigation.js'), <<-JS - import 'pageflow-scrolled/widgets/defaultNavigation'; - import 'pageflow-scrolled/widgets/defaultNavigation.css'; - JS - end - - def consent_bar_widget_packs - widget_dir = 'app/javascript/packs/pageflow-scrolled/widgets' - - create_file File.join(widget_dir, 'consentBar.js'), <<-JS - import 'pageflow-scrolled/widgets/consentBar'; - import 'pageflow-scrolled/widgets/consentBar.css'; + import 'pageflow-scrolled/widgets-server'; JS end diff --git a/entry_types/scrolled/package/config/webpack.js b/entry_types/scrolled/package/config/webpack.js index a2ea58d60f..b2327fff5f 100644 --- a/entry_types/scrolled/package/config/webpack.js +++ b/entry_types/scrolled/package/config/webpack.js @@ -7,5 +7,19 @@ module.exports = { // supported by the browser. 'video.js$': 'video.js/core.es.js' }, + }, + entry: { + 'pageflow-scrolled/widgets/defaultNavigation': { + import: [ + 'pageflow-scrolled/widgets/defaultNavigation', + 'pageflow-scrolled/widgets/defaultNavigation.css' + ] + }, + 'pageflow-scrolled/widgets/consentBar': { + import: [ + 'pageflow-scrolled/widgets/consentBar', + 'pageflow-scrolled/widgets/consentBar.css' + ] + } } }; diff --git a/entry_types/scrolled/package/widgets-server.js b/entry_types/scrolled/package/widgets-server.js new file mode 100644 index 0000000000..a46597e112 --- /dev/null +++ b/entry_types/scrolled/package/widgets-server.js @@ -0,0 +1,2 @@ +import 'pageflow-scrolled/widgets/defaultNavigation'; +import 'pageflow-scrolled/widgets/consentBar';