pageflow 15.6.1 → 15.7.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +253 -11
- data/README.md +1 -2
- data/admins/pageflow/entry.rb +28 -57
- data/admins/pageflow/membership.rb +5 -1
- data/admins/pageflow/user.rb +1 -3
- data/app/assets/images/pageflow/admin/icons/buttons/editor.svg +2 -0
- data/app/assets/images/pageflow/admin/icons/buttons/preview.svg +2 -0
- data/app/assets/images/pageflow/admin/icons/buttons/show_public.svg +2 -0
- data/app/assets/images/pageflow/admin/icons/delete.svg +9 -0
- data/app/assets/images/pageflow/admin/icons/done.svg +6 -0
- data/app/assets/images/pageflow/admin/icons/edit.svg +7 -0
- data/app/assets/images/pageflow/admin/icons/editor.svg +2 -0
- data/app/assets/images/pageflow/admin/icons/folder.svg +8 -0
- data/app/assets/images/pageflow/admin/icons/folder_active.svg +8 -0
- data/app/assets/images/pageflow/admin/icons/info.svg +3 -0
- data/app/assets/images/pageflow/admin/icons/new.svg +5 -0
- data/app/assets/images/pageflow/admin/icons/preview.svg +2 -0
- data/app/assets/images/pageflow/admin/icons/published.svg +2 -0
- data/app/assets/images/pageflow/admin/icons/published_with_password.svg +2 -0
- data/app/assets/images/pageflow/admin/icons/show_public.svg +2 -0
- data/app/assets/images/pageflow/editor/blank_entry/logo.png +0 -0
- data/app/assets/images/pageflow/themes/default/embed_opt_in.svg +3 -0
- data/app/assets/images/pageflow/themes/default/embed_opt_out_info.svg +16 -0
- data/app/assets/javascripts/pageflow/admin/entries.js +9 -57
- data/app/assets/javascripts/pageflow/dist/editor.js +11890 -0
- data/app/assets/javascripts/pageflow/dist/frontend.js +5800 -0
- data/app/assets/javascripts/pageflow/dist/react-client.js +22 -0
- data/app/assets/javascripts/pageflow/dist/react-server.js +19 -0
- data/app/assets/javascripts/pageflow/dist/ui.js +127 -10
- data/app/assets/stylesheets/pageflow/admin/active_admin_patches.scss +18 -16
- data/app/assets/stylesheets/pageflow/admin/badge_list.scss +25 -35
- data/app/assets/stylesheets/pageflow/admin/columns.scss +13 -11
- data/app/assets/stylesheets/pageflow/admin/embed_code.scss +1 -4
- data/app/assets/stylesheets/pageflow/admin/entries/folders.scss +44 -19
- data/app/assets/stylesheets/pageflow/admin/entries.scss +15 -31
- data/app/assets/stylesheets/pageflow/admin/features.scss +3 -1
- data/app/assets/stylesheets/pageflow/admin/forms.scss +14 -12
- data/app/assets/stylesheets/pageflow/admin/hint.scss +8 -14
- data/app/assets/stylesheets/pageflow/admin/icon_button.scss +25 -14
- data/app/assets/stylesheets/pageflow/admin/icon_link.scss +31 -15
- data/app/assets/stylesheets/pageflow/admin/publication_state_indicator.scss +14 -7
- data/app/assets/stylesheets/pageflow/admin/status_tags.scss +5 -4
- data/app/assets/stylesheets/pageflow/admin/tabs_view.scss +36 -34
- data/app/assets/stylesheets/pageflow/admin/tooltip_bubble.scss +15 -11
- data/app/assets/stylesheets/pageflow/admin.scss +12 -0
- data/app/assets/stylesheets/pageflow/editor/background_positioning.scss +15 -61
- data/app/assets/stylesheets/pageflow/editor/base.scss +28 -13
- data/app/assets/stylesheets/pageflow/editor/blank_entry.scss +6 -6
- data/app/assets/stylesheets/pageflow/editor/change_theme.scss +28 -71
- data/app/assets/stylesheets/pageflow/editor/composables.scss +2 -2
- data/app/assets/stylesheets/pageflow/editor/confirm_encoding.scss +18 -36
- data/app/assets/stylesheets/pageflow/editor/confirm_upload.scss +12 -39
- data/app/assets/stylesheets/pageflow/editor/dialogs.scss +39 -12
- data/app/assets/stylesheets/pageflow/editor/disabled_atmo_indicator.scss +3 -3
- data/app/assets/stylesheets/pageflow/editor/drop_down_button.scss +7 -10
- data/app/assets/stylesheets/pageflow/editor/emulation_mode_button.scss +3 -8
- data/app/assets/stylesheets/pageflow/editor/failures.scss +3 -3
- data/app/assets/stylesheets/pageflow/editor/file_import.scss +22 -38
- data/app/assets/stylesheets/pageflow/editor/file_meta_data.scss +3 -7
- data/app/assets/stylesheets/pageflow/editor/file_settings_dialog.scss +4 -24
- data/app/assets/stylesheets/pageflow/editor/file_stages.scss +10 -11
- data/app/assets/stylesheets/pageflow/editor/file_thumbnails.scss +4 -8
- data/app/assets/stylesheets/pageflow/editor/files.scss +7 -6
- data/app/assets/stylesheets/pageflow/editor/files_explorer.scss +13 -30
- data/app/assets/stylesheets/pageflow/editor/files_gallery.scss +15 -11
- data/app/assets/stylesheets/pageflow/editor/filtered_files.scss +6 -7
- data/app/assets/stylesheets/pageflow/editor/help.scss +19 -14
- data/app/assets/stylesheets/pageflow/editor/help_image.scss +1 -1
- data/app/assets/stylesheets/pageflow/editor/info_box.scss +19 -0
- data/app/assets/stylesheets/pageflow/editor/inputs/file_input.scss +7 -11
- data/app/assets/stylesheets/pageflow/editor/inputs/file_processing_state_display.scss +0 -2
- data/app/assets/stylesheets/pageflow/editor/inputs/reference.scss +7 -11
- data/app/assets/stylesheets/pageflow/editor/list.scss +13 -10
- data/app/assets/stylesheets/pageflow/editor/loading.scss +1 -1
- data/app/assets/stylesheets/pageflow/editor/locked.scss +9 -5
- data/app/assets/stylesheets/pageflow/editor/menu.scss +5 -5
- data/app/assets/stylesheets/pageflow/editor/notifications.scss +15 -14
- data/app/assets/stylesheets/pageflow/editor/other_entry_item.scss +7 -3
- data/app/assets/stylesheets/pageflow/editor/outline.scss +57 -19
- data/app/assets/stylesheets/pageflow/editor/page_links.scss +10 -8
- data/app/assets/stylesheets/pageflow/editor/page_selection.scss +2 -29
- data/app/assets/stylesheets/pageflow/editor/publish_entry.scss +5 -6
- data/app/assets/stylesheets/pageflow/editor/quotas.scss +2 -3
- data/app/assets/stylesheets/pageflow/editor/select_button.scss +12 -6
- data/app/assets/stylesheets/pageflow/editor/sidebar_footer.scss +1 -5
- data/app/assets/stylesheets/pageflow/editor/storyline_picker.scss +6 -2
- data/app/assets/stylesheets/pageflow/editor/text_tracks.scss +6 -22
- data/app/assets/stylesheets/pageflow/editor/widgets.scss +2 -2
- data/app/assets/stylesheets/pageflow/editor/wysihtml5.scss +35 -29
- data/app/assets/stylesheets/pageflow/mixins/background_icons.scss +3 -3
- data/app/assets/stylesheets/pageflow/mixins/buttons.scss +50 -68
- data/app/assets/stylesheets/pageflow/themes/default/base.scss +2 -0
- data/app/assets/stylesheets/pageflow/themes/default/consent/bar.scss +156 -0
- data/app/assets/stylesheets/pageflow/themes/default/consent/vendor_list.scss +62 -0
- data/app/assets/stylesheets/pageflow/themes/default/consent.scss +2 -0
- data/app/assets/stylesheets/pageflow/themes/default/logo/alignment.scss +7 -0
- data/app/assets/stylesheets/pageflow/themes/default/page/shadow.scss +44 -0
- data/app/assets/stylesheets/pageflow/themes/default/third_party_embed_consent.scss +103 -0
- data/app/assets/stylesheets/pageflow/ui/forms.scss +79 -84
- data/app/assets/stylesheets/pageflow/ui/functions.scss +56 -0
- data/app/assets/stylesheets/pageflow/ui/input/check_box_group_input.scss +2 -3
- data/app/assets/stylesheets/pageflow/ui/input/color_input.scss +6 -6
- data/app/assets/stylesheets/pageflow/ui/input/extended_select_input.scss +63 -50
- data/app/assets/stylesheets/pageflow/ui/normalize/forms.scss +153 -0
- data/app/assets/stylesheets/pageflow/ui/normalize.scss +278 -0
- data/app/assets/stylesheets/pageflow/ui/properties.scss +44 -0
- data/app/assets/stylesheets/pageflow/ui/table_cells/delete_row_table_cell.scss +1 -1
- data/app/assets/stylesheets/pageflow/ui/table_view.scss +14 -18
- data/app/assets/stylesheets/pageflow/ui/tabs_view.scss +8 -11
- data/app/assets/stylesheets/pageflow/ui/tooltip.scss +6 -8
- data/app/assets/stylesheets/pageflow/ui/validation_error_messages.scss +6 -0
- data/app/assets/stylesheets/pageflow/ui.scss +4 -0
- data/app/controllers/pageflow/edit_locks_controller.rb +3 -1
- data/app/helpers/pageflow/admin/entries_helper.rb +2 -12
- data/app/helpers/pageflow/embed_code_helper.rb +1 -1
- data/app/helpers/pageflow/entries_helper.rb +41 -2
- data/app/helpers/pageflow/file_background_images_helper.rb +1 -1
- data/app/helpers/pageflow/page_types_helper.rb +1 -1
- data/app/helpers/pageflow/themes_helper.rb +1 -1
- data/app/jobs/pageflow/poll_meta_data_from_zencoder_job.rb +1 -1
- data/app/jobs/pageflow/poll_zencoder_job.rb +1 -9
- data/app/models/pageflow/audio_file.rb +17 -0
- data/app/models/pageflow/audio_file_url_templates.rb +4 -1
- data/app/models/pageflow/customized_theme.rb +37 -0
- data/app/models/pageflow/draft_entry.rb +6 -59
- data/app/models/pageflow/entry.rb +8 -0
- data/app/models/pageflow/entry_at_revision.rb +68 -0
- data/app/models/pageflow/entry_role_query.rb +44 -24
- data/app/models/pageflow/image_file_css_background_image_urls.rb +8 -2
- data/app/models/pageflow/published_entry.rb +9 -56
- data/app/models/pageflow/theme_customization.rb +46 -0
- data/app/models/pageflow/theme_customization_file.rb +58 -0
- data/app/models/pageflow/video_file.rb +11 -1
- data/app/models/pageflow/video_file_url_templates.rb +1 -0
- data/app/policies/pageflow/entry_policy.rb +4 -0
- data/app/state_machines/pageflow/media_encoding_state_machine.rb +23 -4
- data/app/views/admin/entries/_form.html.erb +50 -0
- data/app/views/admin/entries/entry_type_name_input.html.erb +5 -0
- data/app/views/admin/features/_form.html.erb +1 -1
- data/app/views/admin/memberships/_form.html.erb +2 -3
- data/app/views/admin/users/_form.html.erb +1 -1
- data/app/views/admin/users/invitation.html.erb +2 -2
- data/app/views/components/pageflow/admin/entry_user_badge_list.rb +10 -9
- data/app/views/components/pageflow/admin/members_tab.rb +5 -1
- data/app/views/components/pageflow/admin/revisions_tab.rb +13 -3
- data/app/views/components/pageflow/admin/timestamp.rb +20 -0
- data/app/views/components/pageflow/admin/user_account_badge_list.rb +5 -6
- data/app/views/pageflow/admin/entries/_cannot_add_user.html.erb +9 -5
- data/app/views/pageflow/admin/entries/_entry_type_name_input.html.erb +7 -0
- data/app/views/pageflow/audio_files/_audio_file.json.jbuilder +13 -0
- data/app/views/pageflow/editor/encoding_confirmations/_intro.html.erb +0 -0
- data/app/views/pageflow/editor/encoding_confirmations/check.json.jbuilder +14 -2
- data/config/initializers/paperclip.rb +16 -1
- data/config/locales/de.yml +24 -28
- data/config/locales/en.yml +19 -10
- data/db/migrate/20210528073122_create_pageflow_theme_customizations.rb +11 -0
- data/db/migrate/20210531090654_create_pageflow_theme_customization_files.rb +15 -0
- data/db/migrate/20210531102228_add_selected_file_ids_to_theme_customizations.rb +5 -0
- data/db/migrate/20211020085902_add_canonical_entry_url_prefix_to_themings.rb +5 -0
- data/db/migrate/20220503150010_add_peak_data_to_audio_files.rb +5 -0
- data/db/migrate/20220705084830_add_trailing_slash_in_canonical_urls_to_themings.rb +5 -0
- data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/editor.js +256 -124
- data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/frontend.js +566 -167
- data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/react-client.js +5 -5
- data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/react-server.js +4 -4
- data/entry_types/paged/app/helpers/pageflow_paged/third_party_embed_consent_helper.rb +38 -0
- data/entry_types/paged/app/views/pageflow_paged/third_party_embed_consent/_opt_in.html.erb +12 -0
- data/entry_types/paged/app/views/pageflow_paged/third_party_embed_consent/_opt_out_info.html.erb +10 -0
- data/entry_types/paged/config/initializers/features.rb +2 -0
- data/entry_types/paged/config/locales/new/video_contain.de.yml +7 -0
- data/entry_types/paged/config/locales/new/video_contain.en.yml +7 -0
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/editor/seed_html_helper.rb +3 -0
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/entry_json_seed_helper.rb +1 -0
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/packs_helper.rb +58 -0
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/react_server_side_rendering_helper.rb +37 -3
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/themes_helper.rb +92 -6
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/webpack_public_path_helper.rb +20 -0
- data/entry_types/scrolled/app/models/pageflow_scrolled/content_element.rb +7 -0
- data/entry_types/scrolled/app/views/pageflow_scrolled/editor/entries/_head.html.erb +5 -2
- data/entry_types/scrolled/app/views/pageflow_scrolled/editor/entries/_seed.json.jbuilder +5 -1
- data/entry_types/scrolled/app/views/pageflow_scrolled/entries/show.html.erb +5 -4
- data/entry_types/scrolled/app/views/pageflow_scrolled/entry_json_seed/_entry.json.jbuilder +16 -0
- data/entry_types/scrolled/app/views/pageflow_scrolled/entry_json_seed/_theme.json.jbuilder +13 -2
- data/entry_types/scrolled/app/views/pageflow_scrolled/entry_json_seed/_widget.json.jbuilder +2 -0
- data/entry_types/scrolled/config/locales/de.yml +1 -8
- data/entry_types/scrolled/config/locales/en.yml +1 -9
- data/entry_types/scrolled/config/locales/new/before_after_slider.de.yml +8 -0
- data/entry_types/scrolled/config/locales/new/before_after_slider.en.yml +8 -0
- data/entry_types/scrolled/config/locales/new/center_ragged.de.yml +8 -0
- data/entry_types/scrolled/config/locales/new/center_ragged.en.yml +9 -0
- data/entry_types/scrolled/config/locales/new/consent.de.yml +25 -0
- data/entry_types/scrolled/config/locales/new/consent.en.yml +24 -0
- data/entry_types/scrolled/config/locales/new/content_element_categories.de.yml +39 -0
- data/entry_types/scrolled/config/locales/new/content_element_categories.en.yml +39 -0
- data/entry_types/scrolled/config/locales/new/default_transition.de.yml +14 -0
- data/entry_types/scrolled/config/locales/new/default_transition.en.yml +14 -0
- data/entry_types/scrolled/config/locales/new/header_line_breaks.de.yml +28 -0
- data/entry_types/scrolled/config/locales/new/header_line_breaks.en.yml +27 -0
- data/entry_types/scrolled/config/locales/new/header_size.de.yml +17 -0
- data/entry_types/scrolled/config/locales/new/header_size.en.yml +17 -0
- data/entry_types/scrolled/config/locales/new/iframe_embed.de.yml +39 -0
- data/entry_types/scrolled/config/locales/new/iframe_embed.en.yml +39 -0
- data/entry_types/scrolled/config/locales/new/inline_loops.de.yml +26 -0
- data/entry_types/scrolled/config/locales/new/inline_loops.en.yml +26 -0
- data/entry_types/scrolled/config/locales/new/portrait_inline_image.de.yml +9 -0
- data/entry_types/scrolled/config/locales/new/portrait_inline_image.en.yml +9 -0
- data/entry_types/scrolled/config/locales/new/section_width.de.yml +10 -0
- data/entry_types/scrolled/config/locales/new/section_width.en.yml +10 -0
- data/entry_types/scrolled/config/locales/new/typography_variants.de.yml +7 -0
- data/entry_types/scrolled/config/locales/new/typography_variants.en.yml +7 -0
- data/entry_types/scrolled/config/locales/new/video_embed_poster.de.yml +8 -0
- data/entry_types/scrolled/config/locales/new/video_embed_poster.en.yml +8 -0
- data/entry_types/scrolled/config/locales/new/waveform_styles.de.yml +11 -0
- data/entry_types/scrolled/config/locales/new/waveform_styles.en.yml +12 -0
- data/entry_types/scrolled/config/locales/new/widgets.de.yml +6 -0
- data/entry_types/scrolled/config/locales/new/widgets.en.yml +6 -0
- data/entry_types/scrolled/lib/generators/pageflow_scrolled/install/install_generator.rb +29 -5
- data/entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/themes_plugin.rb.tt +8 -6
- data/entry_types/scrolled/lib/pageflow_scrolled/additional_packs.rb +37 -0
- data/entry_types/scrolled/lib/pageflow_scrolled/additional_seed_data.rb +57 -0
- data/entry_types/scrolled/lib/pageflow_scrolled/configuration.rb +49 -0
- data/entry_types/scrolled/lib/pageflow_scrolled/plugin.rb +8 -0
- data/entry_types/scrolled/lib/pageflow_scrolled/react_widget_type.rb +42 -0
- data/entry_types/scrolled/lib/pageflow_scrolled.rb +17 -1
- data/entry_types/scrolled/package/contentElements-editor.js +323 -89
- data/entry_types/scrolled/package/contentElements-frontend.css +1 -1
- data/entry_types/scrolled/package/contentElements-frontend.js +719 -529
- data/entry_types/scrolled/package/editor.js +459 -261
- data/entry_types/scrolled/package/frontend/{EditableText-7093fd0e.js → EditableInlineText.module-b9923660.js} +284 -362
- data/entry_types/scrolled/package/frontend/{i18n-4dc6c377.js → PhonePlatformContext-9fb97827.js} +199 -106
- data/entry_types/scrolled/package/frontend/{Viewer-e49e7807.js → Viewer-e2290ea0.js} +196 -79
- data/entry_types/scrolled/package/frontend/{Wavesurfer-0adf5667.js → Wavesurfer-7d9cf1b7.js} +16 -58
- data/entry_types/scrolled/package/frontend/{components-6a6793ca.js → components-6ab26015.js} +664 -671
- data/entry_types/scrolled/package/frontend/{getPrototypeOf-63c7c8e8.js → createSuper-d0f30da3.js} +34 -5
- data/entry_types/scrolled/package/frontend/index.css +1 -9
- data/entry_types/scrolled/package/frontend/index.js +1919 -2386
- data/entry_types/scrolled/package/frontend/{useBrowserFeature-91a4c29d.js → usePhonePlatform-2857c22b.js} +9 -8
- data/entry_types/scrolled/package/frontend-server.js +3 -6
- data/entry_types/scrolled/package/package.json +16 -8
- data/entry_types/scrolled/package/testHelpers.js +456 -0
- data/entry_types/scrolled/package/values/breakpoints.module.css +9 -0
- data/entry_types/scrolled/package/values/colors.module.css +5 -0
- data/entry_types/scrolled/package/widgets/defaultNavigation.css +9 -0
- data/entry_types/scrolled/package/widgets/defaultNavigation.js +612 -0
- data/entry_types/scrolled/spec/fixtures/image.svg +1 -0
- data/lib/pageflow/ability_mixin.rb +4 -0
- data/lib/pageflow/built_in_widget_type.rb +4 -0
- data/lib/pageflow/built_in_widget_types_plugin.rb +7 -0
- data/lib/pageflow/configuration.rb +34 -1
- data/lib/pageflow/entry_type.rb +11 -2
- data/lib/pageflow/entry_type_configuration.rb +2 -0
- data/lib/pageflow/file_type.rb +24 -0
- data/lib/pageflow/paperclip_processors/audio_waveform.rb +42 -0
- data/lib/pageflow/paperclip_processors/noop.rb +10 -0
- data/lib/pageflow/theme_customizations.rb +61 -0
- data/lib/pageflow/user_mixin.rb +6 -0
- data/lib/pageflow/version.rb +1 -1
- data/lib/pageflow.rb +9 -0
- data/package/config/jest/index.js +2 -1
- data/package/config/postcss/scaleFunctions.js +71 -0
- data/package/editor.js +95 -85
- data/package/frontend.js +521 -161
- data/package/package.json +5 -3
- data/package/testHelpers.js +26 -5
- data/package/ui.js +124 -11
- data/spec/factories/draft_entries.rb +19 -1
- data/spec/factories/entries.rb +4 -0
- data/spec/factories/published_entries.rb +6 -0
- data/spec/fixtures/audio.ogg +0 -0
- metadata +123 -15
- data/app/views/admin/entries/_not_allowed_to_see_entry_types.json.jbuilder +0 -2
- data/app/views/admin/entries/entry_types.json.jbuilder +0 -4
- data/package/config/jest/transformers/upwardBabel.js +0 -5
@@ -0,0 +1,24 @@
|
|
1
|
+
en:
|
2
|
+
pageflow_scrolled:
|
3
|
+
public:
|
4
|
+
third_party_consent:
|
5
|
+
opt_in_prompt:
|
6
|
+
video: DELETED
|
7
|
+
youtube: I agree with being shown YouTube videos.
|
8
|
+
vimeo: I agree with being shown Vimeo videos.
|
9
|
+
facebook: I agree with being shown Facebook videos.
|
10
|
+
consent_accept_all: Accept all and close
|
11
|
+
consent_configure: More Information
|
12
|
+
consent_deny_all: Deny
|
13
|
+
consent_expand_vendor: More information
|
14
|
+
consent_no_vendors: Currently not using any third party integrations.
|
15
|
+
consent_prompt_html: |-
|
16
|
+
This website uses third party technologies.
|
17
|
+
We are asking your permission to use these technologies.
|
18
|
+
You can always change or withdraw your consent later via our
|
19
|
+
<a href="%{privacyLinkUrl}" target="_blank">privacy policy</a> page.
|
20
|
+
consent_save: Save selection
|
21
|
+
consent_settings: Privacy Settings
|
22
|
+
pageflow:
|
23
|
+
datawrapper_chart_embed_opt_in:
|
24
|
+
feature_name: 'Opt-in for Datawrapper embeds'
|
@@ -0,0 +1,39 @@
|
|
1
|
+
de:
|
2
|
+
pageflow_scrolled:
|
3
|
+
editor:
|
4
|
+
content_element_categories:
|
5
|
+
basic:
|
6
|
+
name: "Basic"
|
7
|
+
links:
|
8
|
+
name: "Verweise"
|
9
|
+
data:
|
10
|
+
name: "Daten und Diagramme"
|
11
|
+
media:
|
12
|
+
name: "Media"
|
13
|
+
interactive:
|
14
|
+
name: "Interaktiv"
|
15
|
+
content_elements:
|
16
|
+
dataWrapperChart:
|
17
|
+
description: "Einbindung von Diagrammen, die mit Datawrapper erstellt wurden"
|
18
|
+
externalLinkList:
|
19
|
+
description: "Sammlung von Verweisen zu Webseiten außerhalb des Beitrags"
|
20
|
+
heading:
|
21
|
+
description: "Beitrags- oder Kapiteltitel"
|
22
|
+
inlineAudio:
|
23
|
+
description: "Wiedergabe einer Audiodatei mit Steuerelementen"
|
24
|
+
inlineBeforeAfter:
|
25
|
+
description: "Zwei übereinandergelegte Bilder mit Schieberegler getrennt"
|
26
|
+
inlineImage:
|
27
|
+
description: "Einbindung von Bildern"
|
28
|
+
inlineVideo:
|
29
|
+
description: "Wiedergabe einer Videodatei mit Steuerelementen"
|
30
|
+
soundDisclaimer:
|
31
|
+
description: "Lass den Leser den Ton aktiveren"
|
32
|
+
textBlock:
|
33
|
+
description: "Text mit Listen, Zitaten und Zwischenüberschriften"
|
34
|
+
videoEmbed:
|
35
|
+
description: "Bettet ein externes Video von YouTube, Vimeo oder Facebook ein"
|
36
|
+
vrImage:
|
37
|
+
description: "Interaktives Panorama aus Bild mit rektangularer Projektion"
|
38
|
+
iframeEmbed:
|
39
|
+
description: "Einbindung einer extern gehosteten Website"
|
@@ -0,0 +1,39 @@
|
|
1
|
+
en:
|
2
|
+
pageflow_scrolled:
|
3
|
+
editor:
|
4
|
+
content_element_categories:
|
5
|
+
basic:
|
6
|
+
name: "Basic"
|
7
|
+
links:
|
8
|
+
name: "Links"
|
9
|
+
data:
|
10
|
+
name: "Data and Diagrams"
|
11
|
+
media:
|
12
|
+
name: "Media"
|
13
|
+
interactive:
|
14
|
+
name: "Interactive"
|
15
|
+
content_elements:
|
16
|
+
dataWrapperChart:
|
17
|
+
description: "Embedded chart created with Datawrapper"
|
18
|
+
externalLinkList:
|
19
|
+
description: "A collection of links to external websites"
|
20
|
+
heading:
|
21
|
+
description: "Entry or chapter title"
|
22
|
+
inlineAudio:
|
23
|
+
description: "Player or waveform with controls"
|
24
|
+
inlineBeforeAfter:
|
25
|
+
description: "Compare to images using a slider"
|
26
|
+
inlineImage:
|
27
|
+
description: "Display an image"
|
28
|
+
inlineVideo:
|
29
|
+
description: "Player with controls"
|
30
|
+
soundDisclaimer:
|
31
|
+
description: "Make sure users unmute before continuing"
|
32
|
+
textBlock:
|
33
|
+
description: "Text with lists, block quotes and sub-headings"
|
34
|
+
videoEmbed:
|
35
|
+
description: "Embed a video from YouTube, Vimeo or Facebook"
|
36
|
+
vrImage:
|
37
|
+
description: "Interactive panorama using an image with rectangular projection"
|
38
|
+
iframeEmbed:
|
39
|
+
description: "Embed externally hosted websites"
|
@@ -0,0 +1,14 @@
|
|
1
|
+
de:
|
2
|
+
pageflow_scrolled:
|
3
|
+
editor:
|
4
|
+
edit_section_transition:
|
5
|
+
attributes:
|
6
|
+
transition:
|
7
|
+
values:
|
8
|
+
fade: "Überblenden"
|
9
|
+
fadeBg: "DELETE"
|
10
|
+
variants:
|
11
|
+
fade: "Inhalte der Abschnitte ebenfalls überblenden"
|
12
|
+
fadeBg: "Nur Hintergründe der Abschnitte überblenden"
|
13
|
+
mark_as_default_transition: "Als Standard für neue Abschnitte verwenden"
|
14
|
+
default_transition: "Wird als Standard für neue Abschnitte verwendet"
|
@@ -0,0 +1,14 @@
|
|
1
|
+
en:
|
2
|
+
pageflow_scrolled:
|
3
|
+
editor:
|
4
|
+
edit_section_transition:
|
5
|
+
attributes:
|
6
|
+
transition:
|
7
|
+
values:
|
8
|
+
fade: "Cross Fade"
|
9
|
+
fadeBg: "DELETE"
|
10
|
+
variants:
|
11
|
+
fade: "Also fade content of sections"
|
12
|
+
fadeBg: "Fade only section backgrounds"
|
13
|
+
mark_as_default_transition: "Use as default for new sections"
|
14
|
+
default_transition: "Used as default for new sections"
|
@@ -0,0 +1,28 @@
|
|
1
|
+
de:
|
2
|
+
pageflow_scrolled:
|
3
|
+
editor:
|
4
|
+
content_elements:
|
5
|
+
heading:
|
6
|
+
help_texts:
|
7
|
+
shortcuts: |
|
8
|
+
<dl class="shortcuts">
|
9
|
+
<dt><kbd>Shift</kbd> + <kbd>Enter</kbd></dt>
|
10
|
+
<dd>
|
11
|
+
Bedingten Trennstrich einfügen.
|
12
|
+
</dd>
|
13
|
+
</dl>
|
14
|
+
attributes:
|
15
|
+
hyphens:
|
16
|
+
label: 'Silbentrennung'
|
17
|
+
inline_help: |
|
18
|
+
Bei manueller Silbentrennung werden Worte nur an
|
19
|
+
Stellen getrennt, die durch einen bedingten
|
20
|
+
Trennstrich ausgezeichnet wurden. Du kannst so
|
21
|
+
Trennung an unerwünschten Stellen verhindern. Ohne
|
22
|
+
bedingte Trennstriche werden lange Worte in der
|
23
|
+
nächsten Zeile ohne Bindestrich fortgesetzt. Prüfe
|
24
|
+
daher insbesondere die mobile Darstellung, wenn du
|
25
|
+
manuelle Silbentrennung verwendest.
|
26
|
+
values:
|
27
|
+
auto: 'Automatisch'
|
28
|
+
manual: 'Manuell'
|
@@ -0,0 +1,27 @@
|
|
1
|
+
en:
|
2
|
+
pageflow_scrolled:
|
3
|
+
editor:
|
4
|
+
content_elements:
|
5
|
+
heading:
|
6
|
+
help_texts:
|
7
|
+
shortcuts: |
|
8
|
+
<dl class="shortcuts">
|
9
|
+
<dt><kbd>Shift</kbd> + <kbd>Enter</kbd></dt>
|
10
|
+
<dd>
|
11
|
+
Insert soft hyphen.
|
12
|
+
</dd>
|
13
|
+
</dl>
|
14
|
+
attributes:
|
15
|
+
hyphens:
|
16
|
+
label: 'Hyphenation'
|
17
|
+
inline_help: |
|
18
|
+
With manual hyphenation, words are only ever separated
|
19
|
+
at positions that have been marked with a soft
|
20
|
+
hyphen. This helps prevent separating words at
|
21
|
+
unwanted positions. Without soft hyphens, long words
|
22
|
+
will be continued to the next line without a hyphen.
|
23
|
+
Therefore, always double check mobile display when
|
24
|
+
using manual hyphenation.
|
25
|
+
values:
|
26
|
+
auto: 'Automatic'
|
27
|
+
manual: 'Manual'
|
@@ -0,0 +1,17 @@
|
|
1
|
+
de:
|
2
|
+
pageflow_scrolled:
|
3
|
+
editor:
|
4
|
+
content_elements:
|
5
|
+
heading:
|
6
|
+
attributes:
|
7
|
+
textSize:
|
8
|
+
label: "Schriftgröße"
|
9
|
+
values:
|
10
|
+
auto: "(Automatisch)"
|
11
|
+
large: "Groß"
|
12
|
+
medium: "Mittel"
|
13
|
+
small: "Klein"
|
14
|
+
inline_help: |
|
15
|
+
Standardmäßig haben Überschriften im ersten Abschnitt
|
16
|
+
des Beitrags große Schrift. Überschriften in späteren
|
17
|
+
Abschnitten verwenden Schriftgröße "Klein".
|
@@ -0,0 +1,17 @@
|
|
1
|
+
en:
|
2
|
+
pageflow_scrolled:
|
3
|
+
editor:
|
4
|
+
content_elements:
|
5
|
+
heading:
|
6
|
+
attributes:
|
7
|
+
textSize:
|
8
|
+
label: "Text size"
|
9
|
+
values:
|
10
|
+
auto: "(Auto)"
|
11
|
+
large: "Large"
|
12
|
+
medium: "Medium"
|
13
|
+
small: "Small"
|
14
|
+
inline_help: |
|
15
|
+
By default, a heading in the first section of the
|
16
|
+
entry is large. Headings in later sections have small
|
17
|
+
text size.
|
@@ -0,0 +1,39 @@
|
|
1
|
+
de:
|
2
|
+
pageflow_scrolled:
|
3
|
+
editor:
|
4
|
+
content_elements:
|
5
|
+
iframeEmbed:
|
6
|
+
attributes:
|
7
|
+
aspectRatio:
|
8
|
+
label: Seitenverhältnis
|
9
|
+
values:
|
10
|
+
narrow: Landscape (4:3)
|
11
|
+
portrait: Portrait (9:16)
|
12
|
+
square: Quadratisch (1:1)
|
13
|
+
wide: Landscape (16:9)
|
14
|
+
portraitAspectRatio:
|
15
|
+
label: Seitenverhältnis (Hochkant)
|
16
|
+
values:
|
17
|
+
narrow: Landscape (4:3)
|
18
|
+
portrait: Portrait (9:16)
|
19
|
+
square: Quadratisch (1:1)
|
20
|
+
wide: Landscape (16:9)
|
21
|
+
blank: '(Standard)'
|
22
|
+
scale:
|
23
|
+
label: Skalieren
|
24
|
+
values:
|
25
|
+
p100: "100%"
|
26
|
+
p75: "75%"
|
27
|
+
p50: "50%"
|
28
|
+
p33: "33%"
|
29
|
+
source:
|
30
|
+
label: URL
|
31
|
+
title:
|
32
|
+
inline_help: Dieser Titel wird von Screenreadern verwendet, um das iframe als Ganzes zu beschreiben.
|
33
|
+
label: Titel
|
34
|
+
name: iframe-Embed
|
35
|
+
tabs:
|
36
|
+
general: iframe-Embed
|
37
|
+
pageflow:
|
38
|
+
iframe_embed_content_element:
|
39
|
+
feature_name: "iframe-Embed Inhaltselement"
|
@@ -0,0 +1,39 @@
|
|
1
|
+
en:
|
2
|
+
pageflow_scrolled:
|
3
|
+
editor:
|
4
|
+
content_elements:
|
5
|
+
iframeEmbed:
|
6
|
+
attributes:
|
7
|
+
aspectRatio:
|
8
|
+
label: Aspect Ratio
|
9
|
+
values:
|
10
|
+
narrow: Landscape (4:3)
|
11
|
+
portrait: Portrait (9:16)
|
12
|
+
square: Square (1:1)
|
13
|
+
wide: Landscape (16:9)
|
14
|
+
portraitAspectRatio:
|
15
|
+
label: Aspect Ratio (Portrait)
|
16
|
+
values:
|
17
|
+
narrow: Landscape (4:3)
|
18
|
+
portrait: Portrait (9:16)
|
19
|
+
square: Square (1:1)
|
20
|
+
wide: Landscape (16:9)
|
21
|
+
blank: '(Default)'
|
22
|
+
scale:
|
23
|
+
label: Scale
|
24
|
+
values:
|
25
|
+
p100: "100%"
|
26
|
+
p75: "75%"
|
27
|
+
p50: "50%"
|
28
|
+
p33: "33%"
|
29
|
+
source:
|
30
|
+
label: URL
|
31
|
+
title:
|
32
|
+
inline_help: Used by screen readers to describe the chart as a whole.
|
33
|
+
label: Title
|
34
|
+
name: iframe Embed
|
35
|
+
tabs:
|
36
|
+
general: iframe Embed
|
37
|
+
pageflow:
|
38
|
+
iframe_embed_content_element:
|
39
|
+
feature_name: "iframe embed content element"
|
@@ -0,0 +1,26 @@
|
|
1
|
+
de:
|
2
|
+
pageflow_scrolled:
|
3
|
+
editor:
|
4
|
+
content_elements:
|
5
|
+
inlineVideo:
|
6
|
+
attributes:
|
7
|
+
playbackMode:
|
8
|
+
label: "Wiedergabe-Modus"
|
9
|
+
values:
|
10
|
+
manual: "Manuell"
|
11
|
+
autoplay: "Automatisch"
|
12
|
+
loop: "Loop"
|
13
|
+
inline_help_html: "Bestimme, wie das Video gestartet wird:<ul><li><strong>Manuell:</strong> Durch einen Klick des Benutzers.</li><li><strong>Automatisch:</strong> Wenn es die Mitte des Browser-Viewports erreicht.</li><li><strong>Loop:</strong> In Endlosschleife sobald es sichtbar wird.</li></ul>"
|
14
|
+
hideControlBar:
|
15
|
+
label: "Controls ausblenden"
|
16
|
+
inline_help: "Für kurze Videos, bei denen der Benutzer nicht an bestimmte Stellen springen will."
|
17
|
+
inline_help_disabled: 'Für Videos mit Wiedergabe-Modus "Loop" sind die Controls immer ausgeblendet.'
|
18
|
+
unmuteLabel:
|
19
|
+
label: "Stummschaltung des Beitrags"
|
20
|
+
inline_help_html: 'Browser erlauben standardmäßig das Abspielen von Videos mit Ton nur nach einer Benutzer-Interaktion. Um Videos dennoch automatisch abspielen zu können, sind Beiträge zu Beginn stummgeschaltet.<br /><br />Die Stummschaltung kann z.B. über das Lautsprecher-Icon in der Navigationsleiste oder ein im Beitrag platziertes "Audio-Hinweis"-Element aufgehoben werden.'
|
21
|
+
unmute:
|
22
|
+
label: "...bei Klick auf Video aufheben"
|
23
|
+
inline_help_html: "Der Klick auf das Video wird verwendet, um den Ton für den gesamten Beitrag zu aktivieren.<br /><br />Nach dem Klick können Atmo-Audios sowie der Ton nachfolgender Videos dann unmittelbar wiedergegeben werden.<br /><br />Wenn diese Option aktiviert ist, wird bei automatisch ohne Ton gestarteten Videos ein animierter Indikator angezeigt, der auf die Stummschaltung hinweist."
|
24
|
+
rewindOnUnmute:
|
25
|
+
label: "...und Video von vorne abspielen"
|
26
|
+
inline_help_html: "Verhindere, dass der Benutzer bei einem automatisch ohne Ton gestarteten Video wichtige Inhalte verpasst.<br /><br />Alternativ kann dem Video eine Ton-Ersatz-Textspur hinzugefügt werden. Diese wird automatisch gezeigt solange der Beitrag stummgeschaltet ist."
|
@@ -0,0 +1,26 @@
|
|
1
|
+
en:
|
2
|
+
pageflow_scrolled:
|
3
|
+
editor:
|
4
|
+
content_elements:
|
5
|
+
inlineVideo:
|
6
|
+
attributes:
|
7
|
+
playbackMode:
|
8
|
+
label: "Playback Mode"
|
9
|
+
values:
|
10
|
+
manual: "Manual"
|
11
|
+
autoplay: "Autoplay"
|
12
|
+
loop: "Loop"
|
13
|
+
inline_help_html: "Determines how the video starts:<ul><li><strong>Manual:</strong> When the user clicks the video.</li><li><strong>Autoplay:</strong> When the video is scrolled to the center of the browser viewport.</li><li><strong>Loop:</strong> In an endless loop soon as it becomes visible.</li></ul>"
|
14
|
+
hideControlBar:
|
15
|
+
label: "Hide controls"
|
16
|
+
inline_help: "For short videos where there is no need to seek."
|
17
|
+
inline_help_disabled: 'Controls are always hidden for videos with playback mode "Loop".'
|
18
|
+
unmuteLabel:
|
19
|
+
label: "Unmute entry"
|
20
|
+
inline_help_html: 'By default browsers only allow autoplaying videos with sound after a user interaction. To still be able to autoplay videos, entries therefore start muted.<br /><br />Sound can be activated using the speaker icon in the navigation bar or via an "Audio notice" element that has been placed in the entry.'
|
21
|
+
unmute:
|
22
|
+
label: "...when user clicks video"
|
23
|
+
inline_help_html: "The click is used to activate sound for the whole entry.<br /><br />After the click, atmo audios and audio of following video elements can then immediately be played.<br /><br />If this option is active, the video element displays an animated indicator icon when autoplaying without sound."
|
24
|
+
rewindOnUnmute:
|
25
|
+
label: "...and play from the beginning"
|
26
|
+
inline_help_html: "Prevent users from missing important content when videos are autoplayed without sound.<br /><br />Alternatively, you can add an audio replacement text track to the video. It will be displayed automatically as long as the entry is muted."
|
@@ -0,0 +1,9 @@
|
|
1
|
+
de:
|
2
|
+
pageflow_scrolled:
|
3
|
+
editor:
|
4
|
+
content_elements:
|
5
|
+
inlineImage:
|
6
|
+
attributes:
|
7
|
+
portraitId:
|
8
|
+
label: Bild (Hochkant)
|
9
|
+
inline_help: Wird gezeigt, wenn der Browser-Viewport höher als breit ist - zum Beispiel auf Smartphones oder Tablets in Portrait-Ausrichtung. Kann als Alternative zu einem querformatigen Bild konfiguriert werden, das ansonsten zu klein dargestellt würde.
|
@@ -0,0 +1,9 @@
|
|
1
|
+
en:
|
2
|
+
pageflow_scrolled:
|
3
|
+
editor:
|
4
|
+
content_elements:
|
5
|
+
inlineImage:
|
6
|
+
attributes:
|
7
|
+
portraitId:
|
8
|
+
label: Image (Portrait)
|
9
|
+
inline_help: Displayed when the browser viewport is taller than wide, for example on phones or tablets in portrait orientation. Can be used to provide an alternative to a landscape image that would otherwise be displayed too small.
|
@@ -2,6 +2,8 @@ module PageflowScrolled
|
|
2
2
|
module Generators
|
3
3
|
# @api private
|
4
4
|
class InstallGenerator < Rails::Generators::Base
|
5
|
+
CUSTOM_THEME_ICONS = [:information, :muted, :share, :unmuted].freeze
|
6
|
+
|
5
7
|
desc 'Installs Pageflow Scrolled entry type.'
|
6
8
|
|
7
9
|
source_root File.expand_path('templates', __dir__)
|
@@ -17,6 +19,8 @@ module PageflowScrolled
|
|
17
19
|
end
|
18
20
|
|
19
21
|
def theme_plugin
|
22
|
+
@custom_theme_icons = CUSTOM_THEME_ICONS.inspect
|
23
|
+
|
20
24
|
# Ruby files in the lib directory are eager loaded in
|
21
25
|
# production. This includes template files in
|
22
26
|
# lib/generators. Template file extension (.tt) is removed by
|
@@ -34,6 +38,12 @@ module PageflowScrolled
|
|
34
38
|
before: "module.exports = environment\n") do
|
35
39
|
"environment.config.merge(require('pageflow/config/webpack'))\n" \
|
36
40
|
"environment.config.merge(require('pageflow-scrolled/config/webpack'))\n\n" \
|
41
|
+
"// Allow loading only chunks of used widgets. runtimeChunk 'single'\n" \
|
42
|
+
"// ensures that modules are only evaluated once which is important\n" \
|
43
|
+
"// for modules with side effects.\n" \
|
44
|
+
"environment.splitChunks((config) =>\n" \
|
45
|
+
" Object.assign({}, config, { optimization: { runtimeChunk: 'single' }})\n" \
|
46
|
+
")\n\n" \
|
37
47
|
"// Opt into future default behavior of Webpacker [1] to work around\n" \
|
38
48
|
"// problems with Video.js DASH service worker.\n" \
|
39
49
|
"//\n" \
|
@@ -71,6 +81,9 @@ module PageflowScrolled
|
|
71
81
|
|
72
82
|
def frontend_pack
|
73
83
|
create_file 'app/javascript/packs/pageflow-scrolled-frontend.js', <<-JS
|
84
|
+
import 'pageflow-scrolled/frontend/index.css';
|
85
|
+
import 'pageflow-scrolled/contentElements-frontend.css';
|
86
|
+
|
74
87
|
import 'pageflow-scrolled/frontend';
|
75
88
|
import 'pageflow-scrolled/contentElements-frontend';
|
76
89
|
|
@@ -82,13 +95,16 @@ module PageflowScrolled
|
|
82
95
|
create_file 'app/javascript/packs/pageflow-scrolled-server.js', <<-JS
|
83
96
|
import 'pageflow-scrolled/frontend-server';
|
84
97
|
import 'pageflow-scrolled/contentElements-frontend';
|
98
|
+
import 'pageflow-scrolled/widgets/defaultNavigation';
|
85
99
|
JS
|
86
100
|
end
|
87
101
|
|
88
|
-
def
|
89
|
-
|
90
|
-
|
91
|
-
|
102
|
+
def default_navigation_widget_packs
|
103
|
+
widget_dir = 'app/javascript/packs/pageflow-scrolled/widgets'
|
104
|
+
|
105
|
+
create_file File.join(widget_dir, 'defaultNavigation.js'), <<-JS
|
106
|
+
import 'pageflow-scrolled/widgets/defaultNavigation';
|
107
|
+
import 'pageflow-scrolled/widgets/defaultNavigation.css';
|
92
108
|
JS
|
93
109
|
end
|
94
110
|
|
@@ -100,7 +116,15 @@ module PageflowScrolled
|
|
100
116
|
end
|
101
117
|
|
102
118
|
def default_theme
|
103
|
-
|
119
|
+
theme_dir = 'app/javascript/pageflow-scrolled/themes/default'
|
120
|
+
icons_src_dir = PageflowScrolled::Engine.root.join('package/src/frontend/icons')
|
121
|
+
|
122
|
+
directory 'theme', theme_dir
|
123
|
+
|
124
|
+
CUSTOM_THEME_ICONS.each do |icon|
|
125
|
+
copy_file icons_src_dir.join("#{icon}.svg"),
|
126
|
+
File.join(theme_dir, "icons/#{icon}.svg")
|
127
|
+
end
|
104
128
|
end
|
105
129
|
end
|
106
130
|
end
|
data/entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/themes_plugin.rb.tt
CHANGED
@@ -6,18 +6,20 @@ class ScrolledThemesPlugin
|
|
6
6
|
stylesheet_packs: ['fonts/sourceSansPro'],
|
7
7
|
font_family: {
|
8
8
|
entry: '"Source Sans Pro", sans-serif',
|
9
|
-
|
9
|
+
widget: '"Source Sans Pro", sans-serif'
|
10
10
|
},
|
11
|
+
custom_theme_icons: <%= @custom_theme_icons %>,
|
11
12
|
colors: {
|
12
13
|
accent: '#e10028',
|
13
|
-
|
14
|
+
widget: {
|
14
15
|
surface: '#fff',
|
15
16
|
on_surface: '#000',
|
16
|
-
|
17
|
-
|
17
|
+
primary: '#00375a',
|
18
|
+
on_primary: '#fff',
|
19
|
+
secondary: '#c2c2c2',
|
20
|
+
on_seconday: '#000',
|
18
21
|
background: 'rgba(255, 255, 255, 0.95)',
|
19
|
-
on_background: '#000'
|
20
|
-
primary_on_background: '#00375a'
|
22
|
+
on_background: '#000'
|
21
23
|
}
|
22
24
|
},
|
23
25
|
logo_alt_text: 'Pageflow',
|
@@ -0,0 +1,37 @@
|
|
1
|
+
module PageflowScrolled
|
2
|
+
# Register additonal Webpacker packs to be loaded in entries.
|
3
|
+
class AdditionalPacks
|
4
|
+
# @api private
|
5
|
+
def initialize
|
6
|
+
@packs = []
|
7
|
+
end
|
8
|
+
|
9
|
+
# content_element_type_names option only takes effect for frontend
|
10
|
+
# packs.
|
11
|
+
def register(path, content_element_type_names: [])
|
12
|
+
@packs << AdditionalPack.new(path, content_element_type_names)
|
13
|
+
end
|
14
|
+
|
15
|
+
# @api private
|
16
|
+
def content_element_type_names
|
17
|
+
@packs
|
18
|
+
.flat_map(&:content_element_type_names)
|
19
|
+
.uniq
|
20
|
+
end
|
21
|
+
|
22
|
+
# @api private
|
23
|
+
def paths
|
24
|
+
@packs.map(&:path)
|
25
|
+
end
|
26
|
+
|
27
|
+
# @api private
|
28
|
+
def paths_for_content_element_types(type_names)
|
29
|
+
@packs.reject { |pack|
|
30
|
+
(pack.content_element_type_names & type_names).empty?
|
31
|
+
}.map(&:path)
|
32
|
+
end
|
33
|
+
|
34
|
+
# @api private
|
35
|
+
AdditionalPack = Struct.new(:path, :content_element_type_names)
|
36
|
+
end
|
37
|
+
end
|