pageflow 17.0.5 → 17.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +362 -35
- data/README.md +0 -1
- data/admins/pageflow/accounts.rb +16 -14
- data/admins/pageflow/entry.rb +68 -20
- data/admins/pageflow/entry_templates.rb +10 -9
- data/admins/pageflow/folder.rb +1 -1
- data/admins/pageflow/membership.rb +4 -4
- data/admins/pageflow/revisions.rb +5 -5
- data/admins/pageflow/site_root_entry.rb +64 -0
- data/admins/pageflow/sites.rb +12 -3
- data/admins/pageflow/translations.rb +75 -0
- data/admins/pageflow/user.rb +21 -35
- data/app/assets/javascripts/pageflow/admin/entries.js +30 -5
- data/app/assets/javascripts/pageflow/dist/ui.js +2865 -257
- data/app/assets/stylesheets/pageflow/admin/entries/index_table.scss +2 -1
- data/app/assets/stylesheets/pageflow/admin/permalink_input.scss +2 -1
- data/app/assets/stylesheets/pageflow/editor/background_positioning.scss +6 -0
- data/app/assets/stylesheets/pageflow/editor/base.scss +2 -0
- data/app/assets/stylesheets/pageflow/editor/drop_down_button.scss +7 -1
- data/app/assets/stylesheets/pageflow/editor/file_meta_data.scss +5 -1
- data/app/assets/stylesheets/pageflow/editor/files.scss +28 -16
- data/app/assets/stylesheets/pageflow/editor/filtered_files.scss +24 -0
- data/app/assets/stylesheets/pageflow/editor/info_box.scss +11 -3
- data/app/assets/stylesheets/pageflow/editor/list.scss +6 -4
- data/app/assets/stylesheets/pageflow/editor/list_search_field.scss +52 -0
- data/app/assets/stylesheets/pageflow/editor/outline.scss +0 -13
- data/app/assets/stylesheets/pageflow/editor/select_button.scss +1 -1
- data/app/assets/stylesheets/pageflow/editor/sortable.scss +12 -0
- data/app/assets/stylesheets/pageflow/mixins/buttons.scss +4 -4
- data/app/assets/stylesheets/pageflow/ui/forms.scss +4 -0
- data/app/assets/stylesheets/pageflow/ui/input/color_input.scss +8 -0
- data/app/assets/stylesheets/pageflow/ui/input/file_name_input.scss +37 -0
- data/app/assets/stylesheets/pageflow/ui/properties.scss +5 -0
- data/app/assets/stylesheets/pageflow/ui.scss +1 -0
- data/app/controllers/concerns/pageflow/controller_delegation.rb +1 -1
- data/app/controllers/concerns/pageflow/edit_locking.rb +17 -10
- data/app/controllers/concerns/pageflow/entry_password_protection.rb +1 -0
- data/app/controllers/concerns/pageflow/public_https_mode.rb +2 -1
- data/app/controllers/concerns/pageflow/quota_verification.rb +5 -4
- data/app/controllers/pageflow/admin/initial_passwords_controller.rb +1 -0
- data/app/controllers/pageflow/application_controller.rb +19 -19
- data/app/controllers/pageflow/chapters_controller.rb +3 -2
- data/app/controllers/pageflow/edit_locks_controller.rb +3 -2
- data/app/controllers/pageflow/editor/encoding_confirmations_controller.rb +1 -0
- data/app/controllers/pageflow/editor/entries_controller.rb +2 -1
- data/app/controllers/pageflow/editor/entry_publications_controller.rb +1 -0
- data/app/controllers/pageflow/editor/file_import_controller.rb +3 -3
- data/app/controllers/pageflow/editor/files_controller.rb +7 -6
- data/app/controllers/pageflow/editor/widgets_controller.rb +1 -0
- data/app/controllers/pageflow/entries_controller.rb +77 -17
- data/app/controllers/pageflow/feeds_controller.rb +1 -1
- data/app/controllers/pageflow/files_controller.rb +1 -0
- data/app/controllers/pageflow/pages_controller.rb +4 -2
- data/app/controllers/pageflow/revisions_controller.rb +2 -1
- data/app/controllers/pageflow/sitemaps_controller.rb +1 -1
- data/app/controllers/pageflow/storylines_controller.rb +1 -0
- data/app/helpers/pageflow/admin/cutoff_modes_helper.rb +12 -0
- data/app/helpers/pageflow/admin/entries_helper.rb +1 -1
- data/app/helpers/pageflow/admin/entry_translations_helper.rb +18 -0
- data/app/helpers/pageflow/admin/features_helper.rb +1 -1
- data/app/helpers/pageflow/admin/form_helper.rb +3 -3
- data/app/helpers/pageflow/admin/locales_helper.rb +10 -2
- data/app/helpers/pageflow/admin/memberships_helper.rb +32 -32
- data/app/helpers/pageflow/admin/revisions_helper.rb +1 -1
- data/app/helpers/pageflow/admin/sites_helper.rb +22 -0
- data/app/helpers/pageflow/admin/users_helper.rb +7 -5
- data/app/helpers/pageflow/admin/widgets_helper.rb +3 -3
- data/app/helpers/pageflow/asset_urls_helper.rb +1 -1
- data/app/helpers/pageflow/audio_files_helper.rb +5 -2
- data/app/helpers/pageflow/background_image_helper.rb +7 -6
- data/app/helpers/pageflow/common_entry_seed_helper.rb +2 -4
- data/app/helpers/pageflow/editor/config_helper.rb +1 -1
- data/app/helpers/pageflow/editor/files_helper.rb +1 -1
- data/app/helpers/pageflow/embed_code_helper.rb +3 -3
- data/app/helpers/pageflow/entries_helper.rb +58 -34
- data/app/helpers/pageflow/entry_json_seed_helper.rb +3 -2
- data/app/helpers/pageflow/feeds_helper.rb +2 -2
- data/app/helpers/pageflow/file_background_images_helper.rb +2 -2
- data/app/helpers/pageflow/file_thumbnails_helper.rb +4 -3
- data/app/helpers/pageflow/files_helper.rb +5 -4
- data/app/helpers/pageflow/folders_helper.rb +8 -5
- data/app/helpers/pageflow/help_entries_helper.rb +2 -2
- data/app/helpers/pageflow/hreflang_links_helper.rb +37 -0
- data/app/helpers/pageflow/info_box_helper.rb +7 -11
- data/app/helpers/pageflow/media_query_helper.rb +3 -3
- data/app/helpers/pageflow/navigation_bar_helper.rb +1 -1
- data/app/helpers/pageflow/overview_helper.rb +1 -1
- data/app/helpers/pageflow/page_types_helper.rb +5 -5
- data/app/helpers/pageflow/pages_helper.rb +29 -15
- data/app/helpers/pageflow/public_i18n_helper.rb +1 -1
- data/app/helpers/pageflow/quota_helper.rb +4 -4
- data/app/helpers/pageflow/render_json_helper.rb +6 -3
- data/app/helpers/pageflow/revision_file_helper.rb +2 -1
- data/app/helpers/pageflow/sites_helper.rb +3 -3
- data/app/helpers/pageflow/social_share_helper.rb +24 -10
- data/app/helpers/pageflow/social_share_links_helper.rb +12 -9
- data/app/helpers/pageflow/structured_data_helper.rb +1 -1
- data/app/helpers/pageflow/stub_page_configuration.rb +7 -3
- data/app/helpers/pageflow/text_direction_helper.rb +1 -1
- data/app/helpers/pageflow/themes_helper.rb +1 -1
- data/app/helpers/pageflow/video_files_helper.rb +29 -13
- data/app/helpers/pageflow/widgets_helper.rb +7 -6
- data/app/inputs/pageflow_permalink_input.rb +3 -2
- data/app/jobs/pageflow/application_job.rb +1 -0
- data/app/jobs/pageflow/entry_export_import/upload_and_publish_file_job.rb +1 -1
- data/app/jobs/pageflow/poll_meta_data_from_zencoder_job.rb +1 -0
- data/app/jobs/pageflow/poll_zencoder_job.rb +3 -2
- data/app/jobs/pageflow/process_image_or_text_track_job.rb +1 -0
- data/app/jobs/pageflow/prune_auto_snapshots_job.rb +1 -0
- data/app/jobs/pageflow/request_meta_data_from_zencoder_job.rb +1 -0
- data/app/jobs/pageflow/submit_file_to_zencoder_job.rb +1 -0
- data/app/mailers/pageflow/user_mailer.rb +1 -0
- data/app/models/concerns/pageflow/auto_generated_perma_id.rb +13 -1
- data/app/models/concerns/pageflow/entry_publication_states.rb +7 -3
- data/app/models/concerns/pageflow/feature_target.rb +8 -4
- data/app/models/concerns/pageflow/output_source.rb +3 -3
- data/app/models/concerns/pageflow/permalinkable.rb +2 -1
- data/app/models/concerns/pageflow/reusable_file.rb +23 -23
- data/app/models/concerns/pageflow/serialization_blacklist.rb +1 -1
- data/app/models/concerns/pageflow/suspendable.rb +5 -3
- data/app/models/concerns/pageflow/theme_referencer.rb +1 -1
- data/app/models/concerns/pageflow/translatable.rb +62 -0
- data/app/models/concerns/pageflow/uploadable_file.rb +6 -6
- data/app/models/pageflow/account.rb +6 -5
- data/app/models/pageflow/account_member_query.rb +1 -1
- data/app/models/pageflow/account_role_query.rb +1 -1
- data/app/models/pageflow/application_query.rb +1 -1
- data/app/models/pageflow/application_record.rb +1 -1
- data/app/models/pageflow/audio_file.rb +4 -4
- data/app/models/pageflow/audio_file_url_templates.rb +1 -1
- data/app/models/pageflow/authentication_token.rb +2 -2
- data/app/models/pageflow/chapter.rb +6 -1
- data/app/models/pageflow/chapter_scaffold.rb +2 -4
- data/app/models/pageflow/cname_site_request_scope.rb +1 -1
- data/app/models/pageflow/customized_theme.rb +6 -6
- data/app/models/pageflow/draft_entry.rb +37 -9
- data/app/models/pageflow/edit_lock.rb +19 -21
- data/app/models/pageflow/encoding_confirmation.rb +2 -2
- data/app/models/pageflow/entries_feed.rb +2 -2
- data/app/models/pageflow/entry.rb +44 -30
- data/app/models/pageflow/entry_at_revision.rb +5 -1
- data/app/models/pageflow/entry_duplicate.rb +8 -5
- data/app/models/pageflow/entry_publication.rb +2 -2
- data/app/models/pageflow/entry_role_query.rb +4 -4
- data/app/models/pageflow/entry_template.rb +4 -4
- data/app/models/pageflow/entry_title_or_account_name_query.rb +2 -2
- data/app/models/pageflow/entry_translation_group.rb +42 -0
- data/app/models/pageflow/file_reuse.rb +2 -2
- data/app/models/pageflow/file_usage.rb +10 -3
- data/app/models/pageflow/folder.rb +2 -2
- data/app/models/pageflow/home_button.rb +7 -7
- data/app/models/pageflow/image_file.rb +20 -5
- data/app/models/pageflow/image_file_url_templates.rb +1 -1
- data/app/models/pageflow/invitation_form.rb +2 -1
- data/app/models/pageflow/managed_user_query.rb +1 -1
- data/app/models/pageflow/membership.rb +5 -5
- data/app/models/pageflow/nested_revision_component_copy.rb +263 -0
- data/app/models/pageflow/null_user.rb +1 -1
- data/app/models/pageflow/overview_button.rb +1 -1
- data/app/models/pageflow/page.rb +7 -3
- data/app/models/pageflow/permalink.rb +23 -2
- data/app/models/pageflow/permalink_directory.rb +7 -0
- data/app/models/pageflow/permalink_redirect.rb +7 -0
- data/app/models/pageflow/positioned_file.rb +5 -5
- data/app/models/pageflow/potential_entry_translations.rb +55 -0
- data/app/models/pageflow/potential_memberships.rb +5 -4
- data/app/models/pageflow/published_entry.rb +62 -11
- data/app/models/pageflow/revision.rb +24 -15
- data/app/models/pageflow/roles.rb +14 -18
- data/app/models/pageflow/site.rb +36 -3
- data/app/models/pageflow/site_root_entry_form.rb +27 -0
- data/app/models/pageflow/sitemaps.rb +10 -1
- data/app/models/pageflow/storyline.rb +5 -2
- data/app/models/pageflow/storyline_scaffold.rb +1 -1
- data/app/models/pageflow/text_track_file.rb +1 -1
- data/app/models/pageflow/text_track_file_url_templates.rb +1 -1
- data/app/models/pageflow/theme_customization_file.rb +3 -2
- data/app/models/pageflow/thumbnail_file_resolver.rb +1 -1
- data/app/models/pageflow/url_template.rb +1 -1
- data/app/models/pageflow/used_file.rb +7 -3
- data/app/models/pageflow/user_name_query.rb +2 -2
- data/app/models/pageflow/video_file.rb +22 -15
- data/app/models/pageflow/video_file_url_templates.rb +6 -4
- data/app/models/pageflow/widget.rb +4 -3
- data/app/models/pageflow/with_file_usage_extension.rb +1 -1
- data/app/models/pageflow/zencoder_attachment.rb +8 -8
- data/app/policies/pageflow/account_policy.rb +3 -1
- data/app/policies/pageflow/admin/admin_only_tab_policy.rb +1 -0
- data/app/policies/pageflow/admin/entry_tab_policy.rb +1 -0
- data/app/policies/pageflow/application_policy.rb +2 -0
- data/app/policies/pageflow/entry_policy.rb +7 -1
- data/app/policies/pageflow/entry_template_policy.rb +2 -1
- data/app/policies/pageflow/file_policy.rb +4 -7
- data/app/policies/pageflow/folder_policy.rb +18 -8
- data/app/policies/pageflow/membership_policy.rb +6 -4
- data/app/policies/pageflow/site_policy.rb +10 -3
- data/app/policies/pageflow/user_policy.rb +6 -4
- data/app/state_machines/pageflow/image_and_text_track_processing_state_machine.rb +3 -2
- data/app/state_machines/pageflow/media_encoding_state_machine.rb +5 -4
- data/app/views/admin/accounts/_entry_template_details.html.arb +2 -2
- data/app/views/admin/entries/_attributes_table.html.arb +6 -5
- data/app/views/admin/entries/_form.html.erb +2 -1
- data/app/views/admin/entries/_permalink_inputs.html.erb +9 -2
- data/app/views/admin/entry_templates/_form.html.erb +1 -3
- data/app/views/admin/site_root_entry/choose.html.erb +19 -0
- data/app/views/admin/sites/_fields.html.erb +14 -1
- data/app/views/admin/translations/_form.html.erb +31 -0
- data/app/views/admin/users/_attributes_table.html.arb +13 -0
- data/app/views/components/pageflow/admin/add_membership_button.rb +13 -12
- data/app/views/components/pageflow/admin/custom_scopes_renderer.rb +1 -0
- data/app/views/components/pageflow/admin/embed_code_field.rb +1 -0
- data/app/views/components/pageflow/admin/embedded_index_table.rb +9 -10
- data/app/views/components/pageflow/admin/entries_tab.rb +1 -0
- data/app/views/components/pageflow/admin/entry_publication_state_indicator.rb +6 -5
- data/app/views/components/pageflow/admin/entry_templates_tab.rb +2 -1
- data/app/views/components/pageflow/admin/entry_translations_tab.rb +102 -0
- data/app/views/components/pageflow/admin/entry_user_badge_list.rb +1 -0
- data/app/views/components/pageflow/admin/extensible_attributes_table.rb +9 -8
- data/app/views/components/pageflow/admin/features_tab.rb +1 -0
- data/app/views/components/pageflow/admin/grouped_folder_list.rb +1 -0
- data/app/views/components/pageflow/admin/icon_link_to.rb +1 -0
- data/app/views/components/pageflow/admin/members_tab.rb +4 -3
- data/app/views/components/pageflow/admin/membership_role_with_tooltip.rb +3 -2
- data/app/views/components/pageflow/admin/revisions_tab.rb +14 -10
- data/app/views/components/pageflow/admin/sites_tab.rb +1 -0
- data/app/views/components/pageflow/admin/tabs_view.rb +1 -0
- data/app/views/components/pageflow/admin/timestamp.rb +6 -5
- data/app/views/components/pageflow/admin/user_account_badge_list.rb +2 -3
- data/app/views/components/pageflow/admin/user_accounts_tab.rb +1 -0
- data/app/views/components/pageflow/admin/user_entries_tab.rb +1 -0
- data/app/views/components/pageflow/admin/users_tab.rb +1 -0
- data/app/views/pageflow/editor/config/_seeds.json.jbuilder +1 -1
- data/app/views/pageflow/editor/entries/index.json.jbuilder +1 -1
- data/app/views/pageflow/editor/entries/show.json.jbuilder +1 -1
- data/app/views/pageflow/editor/entry_publications/check.json.jbuilder +2 -2
- data/app/views/pageflow/editor/files/_file.json.jbuilder +5 -13
- data/app/views/pageflow/editor/files/create.json.jbuilder +1 -1
- data/app/views/pageflow/editor/files/index.json.jbuilder +1 -1
- data/app/views/pageflow/editor/sites/_site.json.jbuilder +1 -0
- data/app/views/pageflow/editor/video_files/_video_file.json.jbuilder +1 -3
- data/app/views/pageflow/entries/share_menu/_bluesky_link.html.erb +8 -0
- data/app/views/pageflow/entries/share_menu/_threads_link.html.erb +8 -0
- data/app/views/pageflow/files/_file.json.jbuilder +3 -3
- data/app/views/pageflow/sitemaps/index.xml.builder +9 -1
- data/app/views/pageflow/social_share/_entry_meta_tags.html.erb +1 -1
- data/app/views/pageflow/social_share/_page_meta_tags.html.erb +1 -1
- data/config/initializers/active_admin_patches.rb +3 -6
- data/config/initializers/admin_resource_tabs.rb +3 -0
- data/config/initializers/paperclip.rb +1 -0
- data/config/initializers/symmetric_encryption.rb +1 -1
- data/config/initializers/zencoder.rb +24 -13
- data/config/locales/de.yml +110 -4
- data/config/locales/en.yml +109 -7
- data/config/routes.rb +15 -13
- data/config/spring.rb +2 -1
- data/db/migrate/20140418225525_setup_schema.rb +2 -2
- data/db/migrate/20190306161431_copy_file_attributes_of_failed_uploads.rb +2 -2
- data/db/migrate/20190820152900_drop_accounts_themes.rb +2 -1
- data/db/migrate/20191202145757_create_pageflow_scrolled_sections.rb +11 -11
- data/db/migrate/20191202150657_create_pageflow_scrolled_chapters.rb +1 -1
- data/db/migrate/20191202154723_create_pageflow_scrolled_content_elements.rb +9 -9
- data/db/migrate/20191219143450_add_position_to_content_elements.rb +2 -1
- data/db/migrate/20200117133200_change_revision_appearance_option_default_and_null.rb +2 -1
- data/db/migrate/20200122115400_create_pageflow_entry_templates.rb +25 -25
- data/db/migrate/20200206134400_convert_legacy_scrolled_content_element_types.rb +3 -3
- data/db/migrate/20221215120856_associate_entry_templates_with_sites.rb +2 -2
- data/db/migrate/20230120092923_create_other_files.rb +2 -1
- data/db/migrate/20230419083307_create_pageflow_entry_translation_group.rb +9 -0
- data/db/migrate/20240612110434_add_cutoff_mode_name_to_sites.rb +5 -0
- data/db/migrate/20240918084059_create_pageflow_permalink_redirects.rb +14 -0
- data/db/migrate/20250508172234_ensure_scrolled_entries_have_main_storyline.rb +14 -0
- data/db/migrate/20250617090048_add_custom404_entry_to_sites.rb +5 -0
- data/db/migrate/20250617100000_add_perma_id_counter_to_entries.rb +28 -0
- data/db/migrate/20250722174123_add_perma_id_to_chapters.rb +10 -0
- data/db/migrate/20250725080603_add_perma_id_indexes_to_revision_components.rb +13 -0
- data/db/migrate/20250726000000_add_display_name_to_file_usages.rb +5 -0
- data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/editor.js +3912 -1486
- data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/frontend.js +468 -1161
- data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/react-client.js +28125 -22
- data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/react-server.js +26589 -19
- data/entry_types/paged/app/controllers/pageflow_paged/entries_controller.rb +1 -0
- data/entry_types/paged/app/helpers/pageflow_paged/page_background_asset_helper.rb +1 -1
- data/entry_types/paged/app/helpers/pageflow_paged/third_party_embed_consent_helper.rb +7 -7
- data/entry_types/paged/app/views/pageflow_paged/editor/entries/_seed.json.jbuilder +1 -0
- data/entry_types/paged/app/views/pageflow_paged/entries/show.html.erb +1 -0
- data/entry_types/paged/lib/pageflow_paged/plugin.rb +4 -0
- data/entry_types/paged/lib/pageflow_paged/react/page_type.rb +1 -1
- data/entry_types/paged/lib/pageflow_paged/react/widget_type.rb +3 -3
- data/entry_types/paged/lib/pageflow_paged.rb +1 -1
- data/entry_types/scrolled/app/controllers/pageflow_scrolled/editor/chapters_controller.rb +5 -3
- data/entry_types/scrolled/app/controllers/pageflow_scrolled/editor/content_elements_controller.rb +2 -2
- data/entry_types/scrolled/app/controllers/pageflow_scrolled/editor/sections_controller.rb +2 -2
- data/entry_types/scrolled/app/controllers/pageflow_scrolled/entries_controller.rb +2 -1
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/cache_helper.rb +2 -2
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/editor/entry_json_seed_helper.rb +1 -0
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/editor/seed_html_helper.rb +2 -1
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/entry_json_seed_helper.rb +60 -6
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/packs_helper.rb +16 -2
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/react_server_side_rendering_helper.rb +21 -23
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/themes_helper.rb +16 -1
- data/entry_types/scrolled/app/models/pageflow_scrolled/chapter.rb +15 -14
- data/entry_types/scrolled/app/models/pageflow_scrolled/content_element.rb +12 -0
- data/entry_types/scrolled/app/models/pageflow_scrolled/section.rb +12 -1
- data/entry_types/scrolled/app/models/pageflow_scrolled/storyline.rb +19 -1
- data/entry_types/scrolled/app/views/pageflow_scrolled/editor/entries/_head.html.erb +1 -0
- data/entry_types/scrolled/app/views/pageflow_scrolled/editor/sections/_section_with_content_elements.json.jbuilder +2 -2
- data/entry_types/scrolled/app/views/pageflow_scrolled/entries/show.html.erb +2 -0
- data/entry_types/scrolled/app/views/pageflow_scrolled/entry_json_seed/_entry.json.jbuilder +17 -9
- data/entry_types/scrolled/app/views/pageflow_scrolled/entry_json_seed/_entry_translations.json.jbuilder +14 -0
- data/entry_types/scrolled/app/views/pageflow_scrolled/entry_json_seed/_theme.json.jbuilder +25 -5
- data/entry_types/scrolled/app/views/pageflow_scrolled/storylines/_storyline.json.jbuilder +7 -0
- data/entry_types/scrolled/config/locales/de.yml +614 -45
- data/entry_types/scrolled/config/locales/en.yml +586 -47
- data/entry_types/scrolled/config/routes.rb +18 -8
- data/entry_types/scrolled/lib/generators/pageflow_scrolled/install/install_generator.rb +11 -11
- data/entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/theme/logoDarkVariantDesktop.svg +56 -0
- data/entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/theme/logoDarkVariantMobile.svg +22 -0
- data/entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/themes_plugin.rb.tt +26 -11
- data/entry_types/scrolled/lib/pageflow_scrolled/additional_packs.rb +27 -8
- data/entry_types/scrolled/lib/pageflow_scrolled/additional_seed_data.rb +1 -1
- data/entry_types/scrolled/lib/pageflow_scrolled/additional_theme_assets.rb +27 -0
- data/entry_types/scrolled/lib/pageflow_scrolled/configuration.rb +16 -4
- data/entry_types/scrolled/lib/pageflow_scrolled/content_element_consent_vendors.rb +1 -1
- data/entry_types/scrolled/lib/pageflow_scrolled/plugin.rb +24 -4
- data/entry_types/scrolled/lib/pageflow_scrolled/seeds.rb +24 -22
- data/entry_types/scrolled/lib/pageflow_scrolled.rb +1 -1
- data/entry_types/scrolled/lib/tasks/pageflow_scrolled/storybook.rake +6 -5
- data/entry_types/scrolled/package/config/webpack.js +22 -0
- data/entry_types/scrolled/package/contentElements/hotspots-frontend.css +1 -0
- data/entry_types/scrolled/package/contentElements/hotspots-frontend.js +1529 -0
- data/entry_types/scrolled/package/contentElements/tikTokEmbed-frontend.css +1 -0
- data/entry_types/scrolled/package/contentElements/tikTokEmbed-frontend.js +59 -0
- data/entry_types/scrolled/package/contentElements-editor.js +2075 -321
- data/entry_types/scrolled/package/contentElements-frontend.css +1 -1
- data/entry_types/scrolled/package/contentElements-frontend.js +1019 -643
- data/entry_types/scrolled/package/editor.js +2086 -1091
- data/entry_types/scrolled/package/frontend/{EditableInlineText.module-ebd22921.js → FloatingPortalRootProvider-51914be7.js} +1200 -1258
- data/entry_types/scrolled/package/frontend/{PhonePlatformContext-4ec6b2de.js → PhonePlatformContext-9f76033e.js} +7 -8
- data/entry_types/scrolled/package/frontend/ThemeIcon-81f2f066.js +1932 -0
- data/entry_types/scrolled/package/frontend/ToggleFullscreenCornerButton-788e9cdb.js +39 -0
- data/entry_types/scrolled/package/frontend/{Viewer-1bb5597c.js → Viewer-0345ce57.js} +36 -63
- data/entry_types/scrolled/package/frontend/{Viewer-1ecf3375.js → Viewer-cdc549cc.js} +15 -22
- data/entry_types/scrolled/package/frontend/{Wavesurfer-7d9cf1b7.js → Wavesurfer-1cdc3925.js} +54 -74
- data/entry_types/scrolled/package/frontend/{components-024a9893.js → components-96660ffd.js} +1791 -841
- data/entry_types/scrolled/package/frontend/{index-11f32f10.js → index-eb670c2f.js} +11 -18
- data/entry_types/scrolled/package/frontend/index.css +1 -1
- data/entry_types/scrolled/package/frontend/index.js +517 -903
- data/entry_types/scrolled/package/frontend/{createSuper-d0f30da3.js → inherits-539844a6.js} +40 -56
- data/entry_types/scrolled/package/frontend/{useContentElementEditorState-4f4c3cf6.js → useContentElementEditorState-77fe6c79.js} +7 -8
- data/entry_types/scrolled/package/frontend/usePhonePlatform-c2ba875d.js +8 -0
- data/entry_types/scrolled/package/frontend-server.js +0 -1
- data/entry_types/scrolled/package/package.json +18 -10
- data/entry_types/scrolled/package/testHelpers.js +306 -70
- data/entry_types/scrolled/package/values/widgets.module.css +18 -0
- data/entry_types/scrolled/package/widgets/consentBar.css +1 -1
- data/entry_types/scrolled/package/widgets/consentBar.js +47 -66
- data/entry_types/scrolled/package/widgets/defaultNavigation.css +2 -2
- data/entry_types/scrolled/package/widgets/defaultNavigation.js +177 -207
- data/entry_types/scrolled/package/widgets/excursionDialog.css +1 -0
- data/entry_types/scrolled/package/widgets/excursionDialog.js +109 -0
- data/entry_types/scrolled/package/widgets/excursionSheet.css +1 -0
- data/entry_types/scrolled/package/widgets/excursionSheet.js +262 -0
- data/entry_types/scrolled/package/widgets/iconInlineFileRights.css +1 -1
- data/entry_types/scrolled/package/widgets/iconInlineFileRights.js +6 -9
- data/entry_types/scrolled/package/widgets/iconScrollIndicator.css +1 -0
- data/entry_types/scrolled/package/widgets/iconScrollIndicator.js +48 -0
- data/entry_types/scrolled/package/widgets/mainStorylineSheet.css +1 -0
- data/entry_types/scrolled/package/widgets/mainStorylineSheet.js +144 -0
- data/entry_types/scrolled/package/widgets/textInlineFileRights.css +1 -1
- data/entry_types/scrolled/package/widgets/textInlineFileRights.js +26 -9
- data/entry_types/scrolled/package/widgets-server.js +1 -0
- data/entry_types/scrolled/spec/factories/chapters.rb +14 -1
- data/entry_types/scrolled/spec/factories/content_elements.rb +1 -1
- data/lib/generators/pageflow/active_admin_initializer/active_admin_initializer_generator.rb +5 -3
- data/lib/generators/pageflow/assets/assets_generator.rb +7 -5
- data/lib/generators/pageflow/cancan/cancan_generator.rb +2 -1
- data/lib/generators/pageflow/cancan/templates/ability.rb +1 -1
- data/lib/generators/pageflow/error_pages/error_pages_generator.rb +2 -1
- data/lib/generators/pageflow/initializer/initializer_generator.rb +3 -2
- data/lib/generators/pageflow/install/install_generator.rb +2 -2
- data/lib/generators/pageflow/procfile/procfile_generator.rb +2 -1
- data/lib/generators/pageflow/resque/resque_generator.rb +6 -4
- data/lib/generators/pageflow/resque/templates/resque.rake +1 -1
- data/lib/generators/pageflow/routes/routes_generator.rb +4 -2
- data/lib/generators/pageflow/seeds/seeds_generator.rb +3 -2
- data/lib/generators/pageflow/seeds/templates/seeds.rb +6 -6
- data/lib/generators/pageflow/theme/theme_generator.rb +2 -1
- data/lib/generators/pageflow/user/user_generator.rb +2 -1
- data/lib/pageflow/ability_mixin.rb +25 -15
- data/lib/pageflow/active_admin_patches/views/attributes_table.rb +1 -0
- data/lib/pageflow/active_admin_patches/views/pages/base.rb +3 -2
- data/lib/pageflow/active_admin_patches/views/table_for.rb +1 -0
- data/lib/pageflow/additional_headers.rb +27 -0
- data/lib/pageflow/admin/attributes_table_rows.rb +3 -3
- data/lib/pageflow/admin/tabs.rb +1 -1
- data/lib/pageflow/built_in_file_type.rb +1 -1
- data/lib/pageflow/built_in_page_types_plugin.rb +1 -1
- data/lib/pageflow/built_in_widget_type.rb +2 -2
- data/lib/pageflow/built_in_widget_types_plugin.rb +2 -1
- data/lib/pageflow/configuration.rb +141 -18
- data/lib/pageflow/cutoff_modes.rb +39 -0
- data/lib/pageflow/editor_controller.rb +6 -10
- data/lib/pageflow/engine.rb +4 -5
- data/lib/pageflow/entry_export_import/attachment_files.rb +1 -1
- data/lib/pageflow/entry_export_import/entry_serialization.rb +5 -4
- data/lib/pageflow/entry_export_import/file_mappings.rb +1 -0
- data/lib/pageflow/entry_export_import/revision_serialization/import.rb +1 -1
- data/lib/pageflow/entry_export_import.rb +3 -3
- data/lib/pageflow/entry_types.rb +2 -2
- data/lib/pageflow/feature.rb +1 -1
- data/lib/pageflow/features.rb +4 -6
- data/lib/pageflow/file_importers.rb +4 -4
- data/lib/pageflow/file_type.rb +3 -3
- data/lib/pageflow/file_types.rb +3 -3
- data/lib/pageflow/global_config_api.rb +5 -6
- data/lib/pageflow/help_entries.rb +7 -7
- data/lib/pageflow/help_entry.rb +1 -1
- data/lib/pageflow/hooks.rb +1 -1
- data/lib/pageflow/nested_revision_component.rb +9 -27
- data/lib/pageflow/news_item_api.rb +1 -1
- data/lib/pageflow/page_type.rb +2 -3
- data/lib/pageflow/page_types.rb +3 -3
- data/lib/pageflow/paperclip_interpolations/support.rb +1 -1
- data/lib/pageflow/paperclip_processors/vtt.rb +1 -0
- data/lib/pageflow/paperclip_processors/webp.rb +2 -2
- data/lib/pageflow/partial_editor_fragment_renderer.rb +2 -2
- data/lib/pageflow/plugin.rb +1 -2
- data/lib/pageflow/quota.rb +9 -5
- data/lib/pageflow/quotas.rb +1 -1
- data/lib/pageflow/rails_version.rb +1 -0
- data/lib/pageflow/react.rb +1 -1
- data/lib/pageflow/revision_component.rb +8 -40
- data/lib/pageflow/revision_components.rb +16 -6
- data/lib/pageflow/seeds.rb +12 -16
- data/lib/pageflow/theme.rb +1 -1
- data/lib/pageflow/theme_customizations.rb +10 -10
- data/lib/pageflow/themes.rb +3 -3
- data/lib/pageflow/user_mixin.rb +6 -6
- data/lib/pageflow/version.rb +1 -1
- data/lib/pageflow/widget_type.rb +4 -4
- data/lib/pageflow/widget_types.rb +9 -9
- data/lib/pageflow/zencoder_api.rb +32 -42
- data/lib/pageflow/zencoder_audio_output_definition.rb +14 -13
- data/lib/pageflow/zencoder_meta_data_output_definition.rb +3 -2
- data/lib/pageflow/zencoder_output_definition.rb +16 -14
- data/lib/pageflow/zencoder_video_output_definition.rb +140 -88
- data/lib/pageflow.rb +7 -2
- data/lib/tasks/pageflow_tasks.rake +1 -1
- data/package/editor.js +954 -868
- data/package/frontend.js +113 -387
- data/package/package.json +2 -1
- data/package/testHelpers.js +10 -56
- data/package/ui.js +209 -251
- data/spec/factories/accounts.rb +37 -22
- data/spec/factories/audio_files.rb +2 -2
- data/spec/factories/authentication_tokens.rb +4 -4
- data/spec/factories/chapters.rb +4 -4
- data/spec/factories/draft_entries.rb +14 -6
- data/spec/factories/edit_locks.rb +1 -1
- data/spec/factories/entries.rb +28 -19
- data/spec/factories/entry_translation_groups.rb +6 -0
- data/spec/factories/file_usages.rb +2 -1
- data/spec/factories/folders.rb +1 -1
- data/spec/factories/image_files.rb +2 -2
- data/spec/factories/pages.rb +3 -3
- data/spec/factories/published_entries.rb +26 -8
- data/spec/factories/revisions.rb +1 -1
- data/spec/factories/sites.rb +6 -0
- data/spec/factories/test_multi_attachment_files.rb +1 -1
- data/spec/factories/text_track_files.rb +1 -1
- data/spec/factories/uploadable_files.rb +1 -1
- data/spec/factories/users.rb +6 -6
- data/spec/factories/video_files.rb +2 -2
- data/spec/factories/widgets.rb +1 -1
- data/spec/fixtures/7x15_rotated.jpg +0 -0
- data/vendor/assets/javascripts/wysihtml-toolbar.js +19288 -0
- metadata +98 -45
- data/config/initializers/revision_components.rb +0 -5
- data/config/locales/twitter_to_x.de.yml +0 -6
- data/config/locales/twitter_to_x.en.yml +0 -6
- data/entry_types/scrolled/config/locales/twitter_to_x.de.yml +0 -12
- data/entry_types/scrolled/config/locales/twitter_to_x.en.yml +0 -12
- data/entry_types/scrolled/config/locales/vr_image_projection.de.yml +0 -24
- data/entry_types/scrolled/config/locales/vr_image_projection.en.yml +0 -24
- data/entry_types/scrolled/package/frontend/ToggleFullscreenCornerButton-b79159cc.js +0 -107
- data/entry_types/scrolled/package/frontend/arrowRight-62998af9.js +0 -77
- data/entry_types/scrolled/package/frontend/i18n-ce13a8bf.js +0 -1129
@@ -0,0 +1,1932 @@
|
|
1
|
+
import React, { useReducer, useMemo, useCallback, createContext as createContext$1, useContext } from 'react';
|
2
|
+
import { createContext, useContextSelector } from 'use-context-selector';
|
3
|
+
import { createSelectorCreator, defaultMemoize, createSelector } from 'reselect';
|
4
|
+
import slugify from 'slugify';
|
5
|
+
import I18n from 'i18n-js';
|
6
|
+
|
7
|
+
function _arrayWithHoles(arr) {
|
8
|
+
if (Array.isArray(arr)) return arr;
|
9
|
+
}
|
10
|
+
|
11
|
+
function _iterableToArrayLimit(arr, i) {
|
12
|
+
if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return;
|
13
|
+
var _arr = [];
|
14
|
+
var _n = true;
|
15
|
+
var _d = false;
|
16
|
+
var _e = undefined;
|
17
|
+
|
18
|
+
try {
|
19
|
+
for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {
|
20
|
+
_arr.push(_s.value);
|
21
|
+
|
22
|
+
if (i && _arr.length === i) break;
|
23
|
+
}
|
24
|
+
} catch (err) {
|
25
|
+
_d = true;
|
26
|
+
_e = err;
|
27
|
+
} finally {
|
28
|
+
try {
|
29
|
+
if (!_n && _i["return"] != null) _i["return"]();
|
30
|
+
} finally {
|
31
|
+
if (_d) throw _e;
|
32
|
+
}
|
33
|
+
}
|
34
|
+
|
35
|
+
return _arr;
|
36
|
+
}
|
37
|
+
|
38
|
+
function _arrayLikeToArray(arr, len) {
|
39
|
+
if (len == null || len > arr.length) len = arr.length;
|
40
|
+
|
41
|
+
for (var i = 0, arr2 = new Array(len); i < len; i++) {
|
42
|
+
arr2[i] = arr[i];
|
43
|
+
}
|
44
|
+
|
45
|
+
return arr2;
|
46
|
+
}
|
47
|
+
|
48
|
+
function _unsupportedIterableToArray(o, minLen) {
|
49
|
+
if (!o) return;
|
50
|
+
if (typeof o === "string") return _arrayLikeToArray(o, minLen);
|
51
|
+
var n = Object.prototype.toString.call(o).slice(8, -1);
|
52
|
+
if (n === "Object" && o.constructor) n = o.constructor.name;
|
53
|
+
if (n === "Map" || n === "Set") return Array.from(n);
|
54
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
|
55
|
+
}
|
56
|
+
|
57
|
+
function _nonIterableRest() {
|
58
|
+
throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
59
|
+
}
|
60
|
+
|
61
|
+
function _slicedToArray(arr, i) {
|
62
|
+
return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
|
63
|
+
}
|
64
|
+
|
65
|
+
function _defineProperty(obj, key, value) {
|
66
|
+
if (key in obj) {
|
67
|
+
Object.defineProperty(obj, key, {
|
68
|
+
value: value,
|
69
|
+
enumerable: true,
|
70
|
+
configurable: true,
|
71
|
+
writable: true
|
72
|
+
});
|
73
|
+
} else {
|
74
|
+
obj[key] = value;
|
75
|
+
}
|
76
|
+
|
77
|
+
return obj;
|
78
|
+
}
|
79
|
+
|
80
|
+
function ownKeys(object, enumerableOnly) {
|
81
|
+
var keys = Object.keys(object);
|
82
|
+
|
83
|
+
if (Object.getOwnPropertySymbols) {
|
84
|
+
var symbols = Object.getOwnPropertySymbols(object);
|
85
|
+
if (enumerableOnly) symbols = symbols.filter(function (sym) {
|
86
|
+
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
|
87
|
+
});
|
88
|
+
keys.push.apply(keys, symbols);
|
89
|
+
}
|
90
|
+
|
91
|
+
return keys;
|
92
|
+
}
|
93
|
+
|
94
|
+
function _objectSpread2(target) {
|
95
|
+
for (var i = 1; i < arguments.length; i++) {
|
96
|
+
var source = arguments[i] != null ? arguments[i] : {};
|
97
|
+
|
98
|
+
if (i % 2) {
|
99
|
+
ownKeys(Object(source), true).forEach(function (key) {
|
100
|
+
_defineProperty(target, key, source[key]);
|
101
|
+
});
|
102
|
+
} else if (Object.getOwnPropertyDescriptors) {
|
103
|
+
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
|
104
|
+
} else {
|
105
|
+
ownKeys(Object(source)).forEach(function (key) {
|
106
|
+
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
|
107
|
+
});
|
108
|
+
}
|
109
|
+
}
|
110
|
+
|
111
|
+
return target;
|
112
|
+
}
|
113
|
+
|
114
|
+
function _objectWithoutPropertiesLoose(source, excluded) {
|
115
|
+
if (source == null) return {};
|
116
|
+
var target = {};
|
117
|
+
var sourceKeys = Object.keys(source);
|
118
|
+
var key, i;
|
119
|
+
|
120
|
+
for (i = 0; i < sourceKeys.length; i++) {
|
121
|
+
key = sourceKeys[i];
|
122
|
+
if (excluded.indexOf(key) >= 0) continue;
|
123
|
+
target[key] = source[key];
|
124
|
+
}
|
125
|
+
|
126
|
+
return target;
|
127
|
+
}
|
128
|
+
|
129
|
+
function _objectWithoutProperties(source, excluded) {
|
130
|
+
if (source == null) return {};
|
131
|
+
var target = _objectWithoutPropertiesLoose(source, excluded);
|
132
|
+
var key, i;
|
133
|
+
|
134
|
+
if (Object.getOwnPropertySymbols) {
|
135
|
+
var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
|
136
|
+
|
137
|
+
for (i = 0; i < sourceSymbolKeys.length; i++) {
|
138
|
+
key = sourceSymbolKeys[i];
|
139
|
+
if (excluded.indexOf(key) >= 0) continue;
|
140
|
+
if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
|
141
|
+
target[key] = source[key];
|
142
|
+
}
|
143
|
+
}
|
144
|
+
|
145
|
+
return target;
|
146
|
+
}
|
147
|
+
|
148
|
+
function _arrayWithoutHoles(arr) {
|
149
|
+
if (Array.isArray(arr)) return _arrayLikeToArray(arr);
|
150
|
+
}
|
151
|
+
|
152
|
+
function _iterableToArray(iter) {
|
153
|
+
if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter);
|
154
|
+
}
|
155
|
+
|
156
|
+
function _nonIterableSpread() {
|
157
|
+
throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
158
|
+
}
|
159
|
+
|
160
|
+
function _toConsumableArray(arr) {
|
161
|
+
return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
|
162
|
+
}
|
163
|
+
|
164
|
+
var PREFIX = 'PAGEFLOW_SCROLLED_COLLECTION';
|
165
|
+
var RESET = "".concat(PREFIX, "_RESET");
|
166
|
+
var ADD = "".concat(PREFIX, "_ADD");
|
167
|
+
var CHANGE = "".concat(PREFIX, "_CHANGE");
|
168
|
+
var PATCH_CONFIGURATION = "".concat(PREFIX, "_PATCH_CONFIGURATION");
|
169
|
+
var REMOVE = "".concat(PREFIX, "_REMOVE");
|
170
|
+
var SORT = "".concat(PREFIX, "_SORT");
|
171
|
+
function useCollections() {
|
172
|
+
var seed = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
173
|
+
var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
|
174
|
+
keyAttribute = _ref.keyAttribute;
|
175
|
+
return useReducer(reducer, Object.keys(seed).reduce(function (result, key) {
|
176
|
+
result[key] = init(seed[key], keyAttribute);
|
177
|
+
return result;
|
178
|
+
}, {}));
|
179
|
+
}
|
180
|
+
function reducer(state, action) {
|
181
|
+
var collectionName = action.payload.collectionName;
|
182
|
+
var keyAttribute = action.payload.keyAttribute;
|
183
|
+
switch (action.type) {
|
184
|
+
case RESET:
|
185
|
+
return _objectSpread2(_objectSpread2({}, state), {}, _defineProperty({}, collectionName, init(action.payload.items, keyAttribute)));
|
186
|
+
case ADD:
|
187
|
+
return _objectSpread2(_objectSpread2({}, state), {}, _defineProperty({}, collectionName, {
|
188
|
+
order: action.payload.order,
|
189
|
+
items: _objectSpread2(_objectSpread2({}, state[collectionName].items), {}, _defineProperty({}, action.payload.attributes[keyAttribute], action.payload.attributes))
|
190
|
+
}));
|
191
|
+
case CHANGE:
|
192
|
+
return _objectSpread2(_objectSpread2({}, state), {}, _defineProperty({}, collectionName, {
|
193
|
+
order: state[collectionName].order,
|
194
|
+
items: _objectSpread2(_objectSpread2({}, state[collectionName].items), {}, _defineProperty({}, action.payload.attributes[keyAttribute], action.payload.attributes))
|
195
|
+
}));
|
196
|
+
case PATCH_CONFIGURATION:
|
197
|
+
var key = action.payload.key;
|
198
|
+
return _objectSpread2(_objectSpread2({}, state), {}, _defineProperty({}, collectionName, {
|
199
|
+
order: state[collectionName].order,
|
200
|
+
items: _objectSpread2(_objectSpread2({}, state[collectionName].items), {}, _defineProperty({}, key, _objectSpread2(_objectSpread2({}, state[collectionName].items[key]), {}, {
|
201
|
+
configuration: _objectSpread2(_objectSpread2({}, state[collectionName].items[key].configuration), action.payload.configuration)
|
202
|
+
})))
|
203
|
+
}));
|
204
|
+
case REMOVE:
|
205
|
+
var clonedItems = _objectSpread2({}, state[collectionName].items);
|
206
|
+
delete clonedItems[action.payload.key];
|
207
|
+
return _objectSpread2(_objectSpread2({}, state), {}, _defineProperty({}, collectionName, {
|
208
|
+
order: action.payload.order,
|
209
|
+
items: clonedItems
|
210
|
+
}));
|
211
|
+
case SORT:
|
212
|
+
return _objectSpread2(_objectSpread2({}, state), {}, _defineProperty({}, collectionName, {
|
213
|
+
order: action.payload.order,
|
214
|
+
items: state[collectionName].items
|
215
|
+
}));
|
216
|
+
default:
|
217
|
+
return state;
|
218
|
+
}
|
219
|
+
}
|
220
|
+
function init(items) {
|
221
|
+
var keyAttribute = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'id';
|
222
|
+
items = items.filter(function (item) {
|
223
|
+
return item[keyAttribute];
|
224
|
+
});
|
225
|
+
return {
|
226
|
+
order: items.map(function (item) {
|
227
|
+
return item[keyAttribute];
|
228
|
+
}),
|
229
|
+
items: items.reduce(function (result, item) {
|
230
|
+
result[item[keyAttribute]] = item;
|
231
|
+
return result;
|
232
|
+
}, {})
|
233
|
+
};
|
234
|
+
}
|
235
|
+
function updateConfiguration(_ref2) {
|
236
|
+
var dispatch = _ref2.dispatch,
|
237
|
+
name = _ref2.name,
|
238
|
+
key = _ref2.key,
|
239
|
+
configuration = _ref2.configuration;
|
240
|
+
dispatch({
|
241
|
+
type: PATCH_CONFIGURATION,
|
242
|
+
payload: {
|
243
|
+
collectionName: name,
|
244
|
+
key: key,
|
245
|
+
configuration: configuration
|
246
|
+
}
|
247
|
+
});
|
248
|
+
}
|
249
|
+
function getItem(state, collectionName, key) {
|
250
|
+
if (state[collectionName]) {
|
251
|
+
return state[collectionName].items[key];
|
252
|
+
}
|
253
|
+
}
|
254
|
+
function createMultipleItemsSelector(collectionNames, filter) {
|
255
|
+
return createSelector.apply(void 0, _toConsumableArray(collectionNames.map(function (collectionName) {
|
256
|
+
return function (collections) {
|
257
|
+
return collections[collectionName];
|
258
|
+
};
|
259
|
+
})).concat([function () {
|
260
|
+
for (var _len = arguments.length, collections = new Array(_len), _key = 0; _key < _len; _key++) {
|
261
|
+
collections[_key] = arguments[_key];
|
262
|
+
}
|
263
|
+
return collectionNames.reduce(function (result, collectionName, index) {
|
264
|
+
result[collectionName] = toOrderedItems(collections[index]);
|
265
|
+
return result;
|
266
|
+
}, {});
|
267
|
+
}]));
|
268
|
+
}
|
269
|
+
function createItemsSelector(collectionName, filter) {
|
270
|
+
if (filter) {
|
271
|
+
var itemsSelector = createItemsSelector(collectionName);
|
272
|
+
return createShallowEqualArraysSelector(function (collections) {
|
273
|
+
return itemsSelector(collections).filter(filter);
|
274
|
+
}, function (items) {
|
275
|
+
return items;
|
276
|
+
});
|
277
|
+
}
|
278
|
+
return createSelector(function (collections) {
|
279
|
+
return collections[collectionName];
|
280
|
+
}, toOrderedItems);
|
281
|
+
}
|
282
|
+
function toOrderedItems(collection) {
|
283
|
+
if (collection) {
|
284
|
+
var items = collection.items;
|
285
|
+
return collection.order.map(function (key) {
|
286
|
+
return items[key];
|
287
|
+
});
|
288
|
+
} else {
|
289
|
+
return [];
|
290
|
+
}
|
291
|
+
}
|
292
|
+
var createShallowEqualArraysSelector = createSelectorCreator(defaultMemoize, shallowEqualArrays);
|
293
|
+
function shallowEqualArrays(a, b) {
|
294
|
+
return a.length === b.length && a.every(function (item, index) {
|
295
|
+
return item === b[index];
|
296
|
+
});
|
297
|
+
}
|
298
|
+
|
299
|
+
var Context = createContext();
|
300
|
+
function EntryStateProvider(_ref) {
|
301
|
+
var seed = _ref.seed,
|
302
|
+
children = _ref.children;
|
303
|
+
var _useCollections = useCollections(seed.collections, {
|
304
|
+
keyAttribute: 'permaId'
|
305
|
+
}),
|
306
|
+
_useCollections2 = _slicedToArray(_useCollections, 2),
|
307
|
+
collections = _useCollections2[0],
|
308
|
+
dispatch = _useCollections2[1];
|
309
|
+
var value = useMemo(function () {
|
310
|
+
return {
|
311
|
+
entryState: {
|
312
|
+
collections: collections,
|
313
|
+
config: seed.config
|
314
|
+
},
|
315
|
+
dispatch: dispatch
|
316
|
+
};
|
317
|
+
}, [collections, dispatch, seed]);
|
318
|
+
return /*#__PURE__*/React.createElement(Context.Provider, {
|
319
|
+
value: value
|
320
|
+
}, children);
|
321
|
+
}
|
322
|
+
function useEntryState() {
|
323
|
+
var selector = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : function (entryState) {
|
324
|
+
return entryState;
|
325
|
+
};
|
326
|
+
return useContextSelector(Context, function (value) {
|
327
|
+
return selector(value.entryState);
|
328
|
+
});
|
329
|
+
}
|
330
|
+
function useEntryStateDispatch() {
|
331
|
+
return useContextSelector(Context, function (value) {
|
332
|
+
return value.dispatch;
|
333
|
+
});
|
334
|
+
}
|
335
|
+
function useEntryStateConfig() {
|
336
|
+
return useEntryState(function (entryState) {
|
337
|
+
return entryState.config;
|
338
|
+
});
|
339
|
+
}
|
340
|
+
function useEntryStateCollectionItem(collectionName, key) {
|
341
|
+
return useEntryState(function (entryState) {
|
342
|
+
return getItem(entryState.collections, collectionName, key);
|
343
|
+
});
|
344
|
+
}
|
345
|
+
function useEntryStateCollectionItems(collectionName, filter) {
|
346
|
+
var itemsSelector = useMemo(function () {
|
347
|
+
return createItemsSelector(collectionName, filter);
|
348
|
+
}, [collectionName, filter]);
|
349
|
+
return useEntryState(function (entryState) {
|
350
|
+
return itemsSelector(entryState.collections);
|
351
|
+
});
|
352
|
+
}
|
353
|
+
function useMultipleEntryStateCollectionItems(collectionNames) {
|
354
|
+
var multipleItemsSelector = useMemo(function () {
|
355
|
+
return createMultipleItemsSelector(collectionNames);
|
356
|
+
}, [collectionNames]);
|
357
|
+
return useEntryState(function (entryState) {
|
358
|
+
return multipleItemsSelector(entryState.collections);
|
359
|
+
});
|
360
|
+
}
|
361
|
+
|
362
|
+
/**
|
363
|
+
* Returns data generated by a Ruby lambda registered server
|
364
|
+
* side via `config.additional_frontend_seed_data.register`.
|
365
|
+
*
|
366
|
+
* @example
|
367
|
+
*
|
368
|
+
* const data = useAdditionalSeedData('someSeed');
|
369
|
+
*/
|
370
|
+
function useAdditionalSeedData(name) {
|
371
|
+
var config = useEntryStateConfig();
|
372
|
+
if (!config.additionalSeedData[name]) {
|
373
|
+
throw new Error("Could not find additional seed data with name '".concat(name, "'."));
|
374
|
+
}
|
375
|
+
return config.additionalSeedData[name];
|
376
|
+
}
|
377
|
+
|
378
|
+
function useContentElementConsentVendor(_ref) {
|
379
|
+
var contentElementId = _ref.contentElementId;
|
380
|
+
var config = useEntryStateConfig();
|
381
|
+
var vendorName = config.contentElementConsentVendors[contentElementId];
|
382
|
+
return config.consentVendors.find(function (vendor) {
|
383
|
+
return vendor.name === vendorName;
|
384
|
+
});
|
385
|
+
}
|
386
|
+
|
387
|
+
function useCutOff() {
|
388
|
+
var config = useEntryStateConfig();
|
389
|
+
return config.cutOff;
|
390
|
+
}
|
391
|
+
|
392
|
+
/**
|
393
|
+
* Returns an object containing theme asset paths.
|
394
|
+
*
|
395
|
+
* @example
|
396
|
+
*
|
397
|
+
* const theme = useTheme();
|
398
|
+
* theme // =>
|
399
|
+
* {
|
400
|
+
* assets: {
|
401
|
+
* logoDesktop: 'path/to/logoDesktop.svg',
|
402
|
+
* logoMobile: 'path/to/logoMobile.svg'
|
403
|
+
* },
|
404
|
+
* options: {
|
405
|
+
* // options passed to `themes.register` in `pageflow.rb` initializer
|
406
|
+
* // with camleized keys.
|
407
|
+
* }
|
408
|
+
* }
|
409
|
+
*/
|
410
|
+
function useTheme() {
|
411
|
+
var config = useEntryStateConfig();
|
412
|
+
return config.theme;
|
413
|
+
}
|
414
|
+
|
415
|
+
/**
|
416
|
+
* Returns a nested data structure representing the metadata of the entry.
|
417
|
+
*
|
418
|
+
* @example
|
419
|
+
*
|
420
|
+
* const metaData = useEntryMetadata();
|
421
|
+
* metaData // =>
|
422
|
+
* {
|
423
|
+
* id: 5,
|
424
|
+
* locale: 'en',
|
425
|
+
* shareProviders: {email: false, facebook: true},
|
426
|
+
* share_url: 'http://test.host/test',
|
427
|
+
* credits: 'Credits: Pageflow',
|
428
|
+
* configuration: {darkWidgets: true}
|
429
|
+
* }
|
430
|
+
*/
|
431
|
+
function useEntryMetadata() {
|
432
|
+
var entries = useEntryStateCollectionItems('entries');
|
433
|
+
return useMemo(function () {
|
434
|
+
return entries[0];
|
435
|
+
}, [entries]);
|
436
|
+
}
|
437
|
+
|
438
|
+
/**
|
439
|
+
* Returns boolean indicating whether dark variant has been activated for
|
440
|
+
* the widgets of the entry.
|
441
|
+
*/
|
442
|
+
function useDarkWidgets() {
|
443
|
+
var theme = useTheme();
|
444
|
+
return useEntryMetadata().configuration.darkWidgets || theme.options.darkWidgets;
|
445
|
+
}
|
446
|
+
|
447
|
+
/**
|
448
|
+
* Returns a list of attributes (iconName, name and url) of all configured share
|
449
|
+
* providers of the entry. The url provides a %<url>s placeholder where the link
|
450
|
+
* can be inserted. iconName can be passed to ThemeIcon to render a theme
|
451
|
+
* specific icon.
|
452
|
+
*
|
453
|
+
* @example
|
454
|
+
*
|
455
|
+
* const shareProviders = useShareProviders(options);
|
456
|
+
* shareProviders // =>
|
457
|
+
* [
|
458
|
+
* {
|
459
|
+
* iconName: 'facebook',
|
460
|
+
* name: 'Facebook',
|
461
|
+
* url: http://www.facebook.com/sharer/sharer.php?u=%<url>s
|
462
|
+
* },
|
463
|
+
* {
|
464
|
+
* iconName: 'twitter',
|
465
|
+
* name: 'Twitter',
|
466
|
+
* url: https://x.com/intent/post?url=%<url>s
|
467
|
+
* }
|
468
|
+
* ]
|
469
|
+
*/
|
470
|
+
function useShareProviders(_ref) {
|
471
|
+
var isPhonePlatform = _ref.isPhonePlatform;
|
472
|
+
var config = useEntryStateConfig();
|
473
|
+
var entryMetadata = useEntryMetadata();
|
474
|
+
var shareProviders = (entryMetadata === null || entryMetadata === void 0 ? void 0 : entryMetadata.shareProviders) || {};
|
475
|
+
var urlTemplates = config.shareUrlTemplates;
|
476
|
+
return useMemo(function () {
|
477
|
+
var sharing = {
|
478
|
+
bluesky: {
|
479
|
+
iconName: 'bluesky',
|
480
|
+
name: 'Bluesky',
|
481
|
+
url: urlTemplates.bluesky
|
482
|
+
},
|
483
|
+
email: {
|
484
|
+
iconName: 'email',
|
485
|
+
name: 'Mail',
|
486
|
+
url: urlTemplates.email
|
487
|
+
},
|
488
|
+
facebook: {
|
489
|
+
iconName: 'facebook',
|
490
|
+
name: 'Facebook',
|
491
|
+
url: urlTemplates.facebook
|
492
|
+
},
|
493
|
+
linked_in: {
|
494
|
+
iconName: 'linkedIn',
|
495
|
+
name: 'LinkedIn',
|
496
|
+
url: urlTemplates.linked_in
|
497
|
+
},
|
498
|
+
telegram: {
|
499
|
+
iconName: 'telegram',
|
500
|
+
name: 'Telegram',
|
501
|
+
url: urlTemplates.telegram
|
502
|
+
},
|
503
|
+
threads: {
|
504
|
+
iconName: 'threads',
|
505
|
+
name: 'threads',
|
506
|
+
url: urlTemplates.threads
|
507
|
+
},
|
508
|
+
twitter: {
|
509
|
+
iconName: 'twitter',
|
510
|
+
name: 'X',
|
511
|
+
url: urlTemplates.twitter
|
512
|
+
},
|
513
|
+
whats_app: {
|
514
|
+
iconName: 'whatsApp',
|
515
|
+
name: 'WhatsApp',
|
516
|
+
url: urlTemplates.whats_app
|
517
|
+
}
|
518
|
+
};
|
519
|
+
return activeShareProviders(shareProviders, isPhonePlatform).map(function (provider) {
|
520
|
+
var config = sharing[provider];
|
521
|
+
return {
|
522
|
+
name: config.name,
|
523
|
+
iconName: config.iconName,
|
524
|
+
url: config.url
|
525
|
+
};
|
526
|
+
});
|
527
|
+
}, [shareProviders, isPhonePlatform, urlTemplates]);
|
528
|
+
}
|
529
|
+
function activeShareProviders(shareProvidersConfig, isPhonePlatform) {
|
530
|
+
var providers = filterShareProviders(shareProvidersConfig, isPhonePlatform);
|
531
|
+
return providers.filter(function (provider) {
|
532
|
+
return shareProvidersConfig[provider] !== false;
|
533
|
+
});
|
534
|
+
}
|
535
|
+
function filterShareProviders(shareProvidersConfig, isPhonePlatform) {
|
536
|
+
if (!isPhonePlatform) {
|
537
|
+
return Object.keys(shareProvidersConfig).filter(function (provider) {
|
538
|
+
return provider !== 'telegram' && provider !== 'whats_app';
|
539
|
+
});
|
540
|
+
}
|
541
|
+
return Object.keys(shareProvidersConfig);
|
542
|
+
}
|
543
|
+
|
544
|
+
/**
|
545
|
+
* Returns the share url of the entry.
|
546
|
+
*
|
547
|
+
* @example
|
548
|
+
*
|
549
|
+
* const shareUrl = useShareUrl();
|
550
|
+
* shareUrl // => "http://test.host/test"
|
551
|
+
*/
|
552
|
+
function useShareUrl() {
|
553
|
+
var entryMetadata = useEntryMetadata();
|
554
|
+
var config = useEntryStateConfig();
|
555
|
+
if (entryMetadata) {
|
556
|
+
return entryMetadata.shareUrl ? entryMetadata.shareUrl : config.prettyUrl;
|
557
|
+
} else {
|
558
|
+
return config.shareUrl;
|
559
|
+
}
|
560
|
+
}
|
561
|
+
|
562
|
+
function useEntryTranslations() {
|
563
|
+
var config = useEntryStateConfig();
|
564
|
+
return config.entryTranslations;
|
565
|
+
}
|
566
|
+
|
567
|
+
/**
|
568
|
+
* Returns a nested data structure representing the chapters and sections
|
569
|
+
* of the entry.
|
570
|
+
*
|
571
|
+
* @private
|
572
|
+
*
|
573
|
+
* @example
|
574
|
+
*
|
575
|
+
* const structure = useEntryStructure();
|
576
|
+
* structure // =>
|
577
|
+
* [
|
578
|
+
* {
|
579
|
+
* permaId: 5,
|
580
|
+
* title: 'Chapter 1',
|
581
|
+
* summary: 'An introductory chapter',
|
582
|
+
* sections: [
|
583
|
+
* {
|
584
|
+
* id: 1,
|
585
|
+
* permaId: 101,
|
586
|
+
* chapterId: 3,
|
587
|
+
* sectionIndex: 0,
|
588
|
+
* transition: 'scroll',
|
589
|
+
*
|
590
|
+
* // references to parent chapter
|
591
|
+
* chapter: { ... },
|
592
|
+
*
|
593
|
+
* // references to adjacent section objects
|
594
|
+
* previousSection: { ... },
|
595
|
+
* nextSection: { ... },
|
596
|
+
* }
|
597
|
+
* ],
|
598
|
+
* }
|
599
|
+
* ]
|
600
|
+
*/
|
601
|
+
function useEntryStructure() {
|
602
|
+
var mainStoryline = useMainStoryline();
|
603
|
+
var chapters = useChapters();
|
604
|
+
var sections = useEntryStateCollectionItems('sections');
|
605
|
+
return useMemo(function () {
|
606
|
+
var enrichedSections = sections.map(function (section) {
|
607
|
+
return sectionData(section);
|
608
|
+
});
|
609
|
+
var main = [];
|
610
|
+
var excursions = [];
|
611
|
+
chapters.forEach(function (chapter) {
|
612
|
+
var chapterSections = enrichedSections.filter(function (item) {
|
613
|
+
return item.chapterId === chapter.id;
|
614
|
+
});
|
615
|
+
chapterSections.forEach(function (section) {
|
616
|
+
return section.chapter = chapter;
|
617
|
+
});
|
618
|
+
chapter = _objectSpread2(_objectSpread2({}, chapter), {}, {
|
619
|
+
sections: chapterSections
|
620
|
+
});
|
621
|
+
if (chapter.storylineId === mainStoryline.id) {
|
622
|
+
main.push(chapter);
|
623
|
+
} else {
|
624
|
+
excursions.push(chapter);
|
625
|
+
}
|
626
|
+
});
|
627
|
+
linkAndIndexSections(main.flatMap(function (chapter) {
|
628
|
+
return chapter.sections;
|
629
|
+
}));
|
630
|
+
excursions.forEach(function (excursion) {
|
631
|
+
return linkAndIndexSections(excursion.sections);
|
632
|
+
});
|
633
|
+
return {
|
634
|
+
main: main,
|
635
|
+
excursions: excursions
|
636
|
+
};
|
637
|
+
}, [mainStoryline, chapters, sections]);
|
638
|
+
}
|
639
|
+
function linkAndIndexSections(sections) {
|
640
|
+
sections.forEach(function (section, index) {
|
641
|
+
section.sectionIndex = index;
|
642
|
+
section.previousSection = sections[index - 1];
|
643
|
+
section.nextSection = sections[index + 1];
|
644
|
+
});
|
645
|
+
}
|
646
|
+
|
647
|
+
/**
|
648
|
+
* Returns an array of sections each with a chapter property containing
|
649
|
+
* data about the parent chapter.
|
650
|
+
*
|
651
|
+
* @private
|
652
|
+
*
|
653
|
+
* @example
|
654
|
+
*
|
655
|
+
* const sections = useSectionsWithChapter();
|
656
|
+
* sections // =>
|
657
|
+
* [
|
658
|
+
* {
|
659
|
+
* id: 1,
|
660
|
+
* permaId: 101,
|
661
|
+
* chapterId: 3,
|
662
|
+
* transition: 'scroll',
|
663
|
+
* chapter: {
|
664
|
+
* id: 3,
|
665
|
+
* permaId: 5,
|
666
|
+
* title: 'Chapter 1',
|
667
|
+
* summary: 'An introductory chapter',
|
668
|
+
* chapterSlug: 'chapter-1'
|
669
|
+
* },
|
670
|
+
* }
|
671
|
+
* ]
|
672
|
+
*/
|
673
|
+
function useSectionsWithChapter() {
|
674
|
+
var chapters = useChapters();
|
675
|
+
var sections = useEntryStateCollectionItems('sections');
|
676
|
+
var chaptersById = useMemo(function () {
|
677
|
+
return chapters.reduce(function (result, chapter) {
|
678
|
+
result[chapter.id] = chapter;
|
679
|
+
return result;
|
680
|
+
}, {});
|
681
|
+
}, [chapters]);
|
682
|
+
return useMemo(function () {
|
683
|
+
return sections.map(function (section, sectionIndex) {
|
684
|
+
return _objectSpread2(_objectSpread2({
|
685
|
+
sectionIndex: sectionIndex
|
686
|
+
}, sectionData(section)), {}, {
|
687
|
+
chapter: chaptersById[section.chapterId]
|
688
|
+
});
|
689
|
+
});
|
690
|
+
}, [chaptersById, sections]);
|
691
|
+
}
|
692
|
+
|
693
|
+
/**
|
694
|
+
* Returns a nested data structure representing the content elements
|
695
|
+
* of section.
|
696
|
+
*
|
697
|
+
* @param {Object} options
|
698
|
+
* @param {number} options.sectionPermaId
|
699
|
+
*
|
700
|
+
* @private
|
701
|
+
*
|
702
|
+
* @example
|
703
|
+
*
|
704
|
+
* const section = useSection({sectionPermaId: 4});
|
705
|
+
* section // =>
|
706
|
+
* {
|
707
|
+
* id: 100,
|
708
|
+
* permaId: 4,
|
709
|
+
* chapterId: 1,
|
710
|
+
* transition: 'scroll'
|
711
|
+
* }
|
712
|
+
*/
|
713
|
+
function useSection(_ref) {
|
714
|
+
var sectionPermaId = _ref.sectionPermaId;
|
715
|
+
var section = useEntryStateCollectionItem('sections', sectionPermaId);
|
716
|
+
return sectionData(section);
|
717
|
+
}
|
718
|
+
function sectionData(section) {
|
719
|
+
return section && _objectSpread2({
|
720
|
+
permaId: section.permaId,
|
721
|
+
id: section.id,
|
722
|
+
chapterId: section.chapterId
|
723
|
+
}, normalizeSectionConfigurationData(section.configuration));
|
724
|
+
}
|
725
|
+
function normalizeSectionConfigurationData(configuration) {
|
726
|
+
return _objectSpread2(_objectSpread2({}, configuration), configuration.backdropType === 'contentElement' ? {
|
727
|
+
fullHeight: true
|
728
|
+
} : {});
|
729
|
+
}
|
730
|
+
function useSectionForegroundContentElements(_ref2) {
|
731
|
+
var sectionId = _ref2.sectionId,
|
732
|
+
layout = _ref2.layout,
|
733
|
+
phoneLayout = _ref2.phoneLayout;
|
734
|
+
var filter = useCallback(function (contentElement) {
|
735
|
+
return contentElement.sectionId === sectionId && contentElement.configuration.position !== 'backdrop';
|
736
|
+
}, [sectionId]);
|
737
|
+
var contentElements = useEntryStateCollectionItems('contentElements', filter);
|
738
|
+
return contentElements.map(function (contentElement) {
|
739
|
+
return contentElementData(contentElement, layout, phoneLayout);
|
740
|
+
});
|
741
|
+
}
|
742
|
+
function useContentElement(_ref3) {
|
743
|
+
var permaId = _ref3.permaId,
|
744
|
+
layout = _ref3.layout;
|
745
|
+
var contentElement = useEntryStateCollectionItem('contentElements', permaId);
|
746
|
+
return useMemo(function () {
|
747
|
+
return contentElement && contentElementData(contentElement, layout);
|
748
|
+
}, [contentElement, layout]);
|
749
|
+
}
|
750
|
+
function contentElementData(contentElement, layout, phoneLayout) {
|
751
|
+
var position = getPosition(contentElement, layout, phoneLayout);
|
752
|
+
return {
|
753
|
+
id: contentElement.id,
|
754
|
+
permaId: contentElement.permaId,
|
755
|
+
sectionId: contentElement.sectionId,
|
756
|
+
type: contentElement.typeName,
|
757
|
+
position: position,
|
758
|
+
width: getWidth(contentElement, position, phoneLayout),
|
759
|
+
standAlone: contentElement.configuration.position === 'standAlone',
|
760
|
+
alignment: contentElement.configuration.alignment,
|
761
|
+
props: contentElement.configuration
|
762
|
+
};
|
763
|
+
}
|
764
|
+
var supportedPositions = {
|
765
|
+
center: ['inline', 'left', 'right'],
|
766
|
+
centerRagged: ['inline', 'left', 'right'],
|
767
|
+
left: ['inline', 'side', 'sticky'],
|
768
|
+
right: ['inline', 'side', 'sticky'],
|
769
|
+
backdrop: ['backdrop']
|
770
|
+
};
|
771
|
+
function getPosition(contentElement, layout, phoneLayout) {
|
772
|
+
var position = contentElement.configuration.position;
|
773
|
+
if (contentElement.configuration.fullWidthInPhoneLayout && phoneLayout) {
|
774
|
+
return 'inline';
|
775
|
+
}
|
776
|
+
return supportedPositions[layout || 'left'].includes(position) ? position : 'inline';
|
777
|
+
}
|
778
|
+
var legacyPositionWidths = {
|
779
|
+
wide: 2,
|
780
|
+
full: 3
|
781
|
+
};
|
782
|
+
var clampedWidthPositions = ['sticky', 'left', 'right'];
|
783
|
+
function getWidth(contentElement, position, phoneLayout) {
|
784
|
+
var width = typeof contentElement.configuration.width === 'number' ? contentElement.configuration.width : legacyPositionWidths[contentElement.configuration.position] || 0;
|
785
|
+
if (contentElement.configuration.fullWidthInPhoneLayout && phoneLayout) {
|
786
|
+
return 3;
|
787
|
+
} else if (clampedWidthPositions.includes(position)) {
|
788
|
+
return Math.min(Math.max(width || 0, -2), 2);
|
789
|
+
} else {
|
790
|
+
return width;
|
791
|
+
}
|
792
|
+
}
|
793
|
+
function useChapter(_ref4) {
|
794
|
+
var permaId = _ref4.permaId;
|
795
|
+
var chapters = useChapters();
|
796
|
+
return useMemo(function () {
|
797
|
+
return chapters.find(function (chapter) {
|
798
|
+
return chapter.permaId === permaId;
|
799
|
+
});
|
800
|
+
}, [chapters, permaId]);
|
801
|
+
}
|
802
|
+
function useChapters() {
|
803
|
+
var chapters = useEntryStateCollectionItems('chapters');
|
804
|
+
return useMemo(function () {
|
805
|
+
var chapterSlugs = {};
|
806
|
+
return chapters.map(function (chapter, index) {
|
807
|
+
var chapterSlug = chapter.configuration.title;
|
808
|
+
if (chapterSlug) {
|
809
|
+
chapterSlug = slugify(chapterSlug, {
|
810
|
+
lower: true,
|
811
|
+
locale: 'de',
|
812
|
+
strict: true
|
813
|
+
});
|
814
|
+
if (chapterSlugs[chapterSlug]) {
|
815
|
+
chapterSlug = chapterSlug + '-' + chapter.permaId; //append permaId if chapter reference is not unique
|
816
|
+
}
|
817
|
+
chapterSlugs[chapterSlug] = chapter;
|
818
|
+
} else {
|
819
|
+
chapterSlug = 'chapter-' + chapter.permaId;
|
820
|
+
}
|
821
|
+
return _objectSpread2({
|
822
|
+
id: chapter.id,
|
823
|
+
permaId: chapter.permaId,
|
824
|
+
storylineId: chapter.storylineId,
|
825
|
+
chapterSlug: chapterSlug,
|
826
|
+
index: index
|
827
|
+
}, chapter.configuration);
|
828
|
+
});
|
829
|
+
}, [chapters]);
|
830
|
+
}
|
831
|
+
function useMainChapters() {
|
832
|
+
var chapters = useChapters();
|
833
|
+
var mainStoryline = useMainStoryline();
|
834
|
+
return useMemo(function () {
|
835
|
+
return chapters.filter(function (chapter) {
|
836
|
+
return chapter.storylineId === mainStoryline.id;
|
837
|
+
});
|
838
|
+
}, [chapters, mainStoryline]);
|
839
|
+
}
|
840
|
+
function useMainStoryline() {
|
841
|
+
var storylines = useEntryStateCollectionItems('storylines');
|
842
|
+
return useMemo(function () {
|
843
|
+
return storylines.find(function (storyline) {
|
844
|
+
return storyline.configuration.main;
|
845
|
+
});
|
846
|
+
}, [storylines]);
|
847
|
+
}
|
848
|
+
|
849
|
+
function extendFile(collectionName, file, config) {
|
850
|
+
return addModelType(collectionName, expandUrls(collectionName, file, config.fileUrlTemplates), config.fileModelTypes);
|
851
|
+
}
|
852
|
+
function addModelType(collectionName, file, modelTypes) {
|
853
|
+
if (!file) {
|
854
|
+
return null;
|
855
|
+
}
|
856
|
+
if (!modelTypes[collectionName]) {
|
857
|
+
throw new Error("Could not find model type for collection name ".concat(collectionName));
|
858
|
+
}
|
859
|
+
return _objectSpread2(_objectSpread2({}, file), {}, {
|
860
|
+
modelType: modelTypes[collectionName]
|
861
|
+
});
|
862
|
+
}
|
863
|
+
function expandUrls(collectionName, file, urlTemplates) {
|
864
|
+
if (!file) {
|
865
|
+
return null;
|
866
|
+
}
|
867
|
+
if (!urlTemplates[collectionName]) {
|
868
|
+
throw new Error("No file url templates found for ".concat(collectionName));
|
869
|
+
}
|
870
|
+
var variants = file.variants ? ['original'].concat(_toConsumableArray(file.variants)) : Object.keys(urlTemplates[collectionName]);
|
871
|
+
var urls = variants.reduce(function (result, variant) {
|
872
|
+
var url = getFileUrl(collectionName, file, variant, urlTemplates);
|
873
|
+
if (url) {
|
874
|
+
result[variant] = url;
|
875
|
+
}
|
876
|
+
return result;
|
877
|
+
}, {});
|
878
|
+
return _objectSpread2({
|
879
|
+
urls: urls
|
880
|
+
}, file);
|
881
|
+
}
|
882
|
+
function getFileUrl(collectionName, file, quality, urlTemplates) {
|
883
|
+
var templates = urlTemplates[collectionName];
|
884
|
+
var template = templates[quality];
|
885
|
+
if (template) {
|
886
|
+
return template.replace(':id_partition', idPartition(file.id)).replace(':basename', file.basename).replace(':extension', file.extension).replace(':processed_extension', file.processedExtension).replace(':pageflow_hls_qualities', function () {
|
887
|
+
return hlsQualities(file);
|
888
|
+
});
|
889
|
+
}
|
890
|
+
}
|
891
|
+
function idPartition(id) {
|
892
|
+
return partition(pad(id, 9));
|
893
|
+
}
|
894
|
+
function partition(string, separator) {
|
895
|
+
return string.replace(/./g, function (c, i, a) {
|
896
|
+
return i && (a.length - i) % 3 === 0 ? '/' + c : c;
|
897
|
+
});
|
898
|
+
}
|
899
|
+
function pad(string, size) {
|
900
|
+
return (Array(size).fill(0).join('') + string).slice(-size);
|
901
|
+
}
|
902
|
+
function hlsQualities(file) {
|
903
|
+
return ['low', 'medium', 'high', 'fullhd', '4k'].filter(function (quality) {
|
904
|
+
return file.variants.includes(quality);
|
905
|
+
}).join(',');
|
906
|
+
}
|
907
|
+
|
908
|
+
/**
|
909
|
+
* Look up a file by its collection and perma id.
|
910
|
+
*
|
911
|
+
* @param {Object} options
|
912
|
+
* @param {String} options.collectionName - Collection name of file type to look for (in camel case).
|
913
|
+
* @param {String} options.permaId - Perma id of file look up
|
914
|
+
*
|
915
|
+
* @example
|
916
|
+
* const imageFile = useFile({collectionName: 'imageFiles', permaId: 5});
|
917
|
+
* imageFile // =>
|
918
|
+
* {
|
919
|
+
* id: 102,
|
920
|
+
* permaId: 5,
|
921
|
+
* width: 1000,
|
922
|
+
* height: 500,
|
923
|
+
* urls: {
|
924
|
+
* large: 'https://...'
|
925
|
+
* },
|
926
|
+
* configuration: {
|
927
|
+
* alt: '...'
|
928
|
+
* }
|
929
|
+
* }
|
930
|
+
*/
|
931
|
+
function useFile(_ref) {
|
932
|
+
var collectionName = _ref.collectionName,
|
933
|
+
permaId = _ref.permaId;
|
934
|
+
var file = useEntryStateCollectionItem(collectionName, permaId);
|
935
|
+
return extendFile(collectionName, file, useEntryStateConfig());
|
936
|
+
}
|
937
|
+
|
938
|
+
function useFileWithInlineRights(_ref) {
|
939
|
+
var configuration = _ref.configuration,
|
940
|
+
collectionName = _ref.collectionName,
|
941
|
+
propertyName = _ref.propertyName;
|
942
|
+
var file = useFile({
|
943
|
+
collectionName: collectionName,
|
944
|
+
permaId: configuration[propertyName]
|
945
|
+
});
|
946
|
+
var config = useEntryStateConfig();
|
947
|
+
return file && _objectSpread2(_objectSpread2({}, file), {}, {
|
948
|
+
license: file.configuration.license && config.fileLicenses[file.configuration.license],
|
949
|
+
inlineRights: file.configuration.rights_display === 'inline' && !configuration[propertyName === 'id' ? 'inlineRightsHidden' : "".concat(propertyName.replace('Id', ''), "InlineRightsHidden")]
|
950
|
+
});
|
951
|
+
}
|
952
|
+
|
953
|
+
function useDownloadableFile(options) {
|
954
|
+
var file = useFile(options);
|
955
|
+
return file && _objectSpread2(_objectSpread2({}, file), {}, {
|
956
|
+
urls: _objectSpread2(_objectSpread2({}, file.urls), {}, {
|
957
|
+
download: "".concat(file.urls.original, "?download=").concat(encodeURIComponent(file.displayName))
|
958
|
+
})
|
959
|
+
});
|
960
|
+
}
|
961
|
+
|
962
|
+
function useNestedFiles(_ref) {
|
963
|
+
var collectionName = _ref.collectionName,
|
964
|
+
parent = _ref.parent;
|
965
|
+
var config = useEntryStateConfig();
|
966
|
+
var files = useEntryStateCollectionItems(collectionName, function (file) {
|
967
|
+
return parent && file.parentFileId === parent.id && file.parentFileModelType === parent.modelType;
|
968
|
+
});
|
969
|
+
return files.map(function (file) {
|
970
|
+
return extendFile(collectionName, file, config);
|
971
|
+
});
|
972
|
+
}
|
973
|
+
|
974
|
+
function getFileUrlTemplateHost(seed, collectionName, variant) {
|
975
|
+
var hlsUrlTemplate = seed.config.fileUrlTemplates[collectionName][variant];
|
976
|
+
return hlsUrlTemplate.split('//')[1].split('/')[0];
|
977
|
+
}
|
978
|
+
|
979
|
+
/**
|
980
|
+
* Returns a collection of rights and source urls of all files
|
981
|
+
* used in the entry. If none of the files has a rights attribute
|
982
|
+
* configured, it falls back to the default file rights of the
|
983
|
+
* entry's site, otherwise returns an empty array.
|
984
|
+
*
|
985
|
+
* @example
|
986
|
+
*
|
987
|
+
* const fileRights = useFileRights();
|
988
|
+
* fileRights // => [{text: 'author of image 1', urls: ['https://example.com/source-url']}]
|
989
|
+
*/
|
990
|
+
function useFileRights() {
|
991
|
+
var _config$defaultFileRi;
|
992
|
+
var config = useEntryStateConfig();
|
993
|
+
var fileCollectionNames = Object.keys(config.fileModelTypes);
|
994
|
+
var files = useMultipleEntryStateCollectionItems(fileCollectionNames);
|
995
|
+
var defaultFileRights = (_config$defaultFileRi = config.defaultFileRights) === null || _config$defaultFileRi === void 0 ? void 0 : _config$defaultFileRi.trim();
|
996
|
+
var items = {};
|
997
|
+
Object.keys(files).forEach(function (key) {
|
998
|
+
return files[key].filter(function (file) {
|
999
|
+
return file.configuration.rights_display !== 'inline';
|
1000
|
+
}).forEach(function (file) {
|
1001
|
+
var _file$rights;
|
1002
|
+
var text = ((_file$rights = file.rights) === null || _file$rights === void 0 ? void 0 : _file$rights.trim()) || defaultFileRights;
|
1003
|
+
if (text) {
|
1004
|
+
var _file$configuration$s;
|
1005
|
+
items[text] = items[text] || {
|
1006
|
+
text: text,
|
1007
|
+
urls: new Set()
|
1008
|
+
};
|
1009
|
+
if ((_file$configuration$s = file.configuration.source_url) === null || _file$configuration$s === void 0 ? void 0 : _file$configuration$s.trim()) {
|
1010
|
+
items[text].urls.add(file.configuration.source_url);
|
1011
|
+
}
|
1012
|
+
}
|
1013
|
+
});
|
1014
|
+
});
|
1015
|
+
return Object.values(items).map(function (item) {
|
1016
|
+
return _objectSpread2(_objectSpread2({}, item), {}, {
|
1017
|
+
urls: Array.from(item.urls).sort()
|
1018
|
+
});
|
1019
|
+
}).sort(function (a, b) {
|
1020
|
+
return a.text.localeCompare(b.text);
|
1021
|
+
});
|
1022
|
+
}
|
1023
|
+
|
1024
|
+
/**
|
1025
|
+
* Returns a nested data structure representing the legal info of the entry.
|
1026
|
+
* Each legal info is separated into label and url to use in links.
|
1027
|
+
* Both label and url can be blank, depending on the configuration.
|
1028
|
+
*
|
1029
|
+
* @example
|
1030
|
+
*
|
1031
|
+
* const legalInfo = useLegalInfo();
|
1032
|
+
* legalInfo // =>
|
1033
|
+
* {
|
1034
|
+
* imprint: {
|
1035
|
+
* label: '',
|
1036
|
+
* url: ''
|
1037
|
+
* },
|
1038
|
+
* copyright: {
|
1039
|
+
* label: '',
|
1040
|
+
* url: ''
|
1041
|
+
* },
|
1042
|
+
* privacy: {
|
1043
|
+
* label: '',
|
1044
|
+
* url: ''
|
1045
|
+
* }
|
1046
|
+
* }
|
1047
|
+
*/
|
1048
|
+
function useLegalInfo() {
|
1049
|
+
var config = useEntryStateConfig();
|
1050
|
+
return config.legalInfo;
|
1051
|
+
}
|
1052
|
+
|
1053
|
+
/**
|
1054
|
+
* Returns the credits string (rich text) of the entry.
|
1055
|
+
*
|
1056
|
+
* @example
|
1057
|
+
*
|
1058
|
+
* const credits = useCredits();
|
1059
|
+
* credits // => "Credits: <a href="http://pageflow.com">pageflow.com</a>"
|
1060
|
+
*/
|
1061
|
+
function useCredits() {
|
1062
|
+
var entryMetadata = useEntryMetadata();
|
1063
|
+
var credits = '';
|
1064
|
+
if (entryMetadata) {
|
1065
|
+
credits = entryMetadata.credits;
|
1066
|
+
}
|
1067
|
+
return credits;
|
1068
|
+
}
|
1069
|
+
|
1070
|
+
var qualities = ['medium', 'fullhd', '4k'];
|
1071
|
+
function useAvailableQualities(file) {
|
1072
|
+
if (!file) {
|
1073
|
+
return [];
|
1074
|
+
}
|
1075
|
+
return ['auto'].concat(_toConsumableArray(qualities.filter(function (name) {
|
1076
|
+
return file.variants.includes(name);
|
1077
|
+
})));
|
1078
|
+
}
|
1079
|
+
|
1080
|
+
function useWidget(_ref) {
|
1081
|
+
var role = _ref.role;
|
1082
|
+
var widgets = useEntryStateCollectionItems('widgets');
|
1083
|
+
return useMemo(function () {
|
1084
|
+
return widgets.find(function (widget) {
|
1085
|
+
return widget.role === role && widget.typeName;
|
1086
|
+
});
|
1087
|
+
}, [role, widgets]);
|
1088
|
+
}
|
1089
|
+
|
1090
|
+
function updateContentElementConfiguration(_ref) {
|
1091
|
+
var dispatch = _ref.dispatch,
|
1092
|
+
permaId = _ref.permaId,
|
1093
|
+
configuration = _ref.configuration;
|
1094
|
+
updateConfiguration({
|
1095
|
+
dispatch: dispatch,
|
1096
|
+
name: 'contentElements',
|
1097
|
+
key: permaId,
|
1098
|
+
configuration: configuration
|
1099
|
+
});
|
1100
|
+
}
|
1101
|
+
|
1102
|
+
var LocaleContext = createContext$1('en');
|
1103
|
+
function setupI18n(_ref) {
|
1104
|
+
var defaultLocale = _ref.defaultLocale,
|
1105
|
+
locale = _ref.locale,
|
1106
|
+
translations = _ref.translations;
|
1107
|
+
I18n.defaultLocale = defaultLocale;
|
1108
|
+
I18n.locale = locale;
|
1109
|
+
I18n.translations = translations;
|
1110
|
+
}
|
1111
|
+
function LocaleProvider(_ref2) {
|
1112
|
+
var children = _ref2.children;
|
1113
|
+
var _ref3 = useEntryMetadata() || {},
|
1114
|
+
locale = _ref3.locale;
|
1115
|
+
return /*#__PURE__*/React.createElement(LocaleContext.Provider, {
|
1116
|
+
value: locale
|
1117
|
+
}, children);
|
1118
|
+
}
|
1119
|
+
function useLocale() {
|
1120
|
+
return useContext(LocaleContext);
|
1121
|
+
}
|
1122
|
+
|
1123
|
+
/**
|
1124
|
+
* Use translations in frontend elements. Uses the configured locale
|
1125
|
+
* of the current entry by default. Note that only translation keys
|
1126
|
+
* from the `pageflow_scrolled.public` scope are universally
|
1127
|
+
* available.
|
1128
|
+
*
|
1129
|
+
* to render translations for inline editing controls in the editor
|
1130
|
+
* preview, you can pass `"ui"` as `locale` option and use
|
1131
|
+
* translations from the `pageflow_scrolled.inline_editing` scope.
|
1132
|
+
*
|
1133
|
+
* @param {Object} [options]
|
1134
|
+
* @param {string} [locale="entry"] -
|
1135
|
+
* Pass `"ui"` to use the locale of the editor interface instead.
|
1136
|
+
*
|
1137
|
+
* @example
|
1138
|
+
* const {t} = useI18n();
|
1139
|
+
* t('pageflow_scrolled.public.some.key')
|
1140
|
+
*
|
1141
|
+
* const {t} = useI18n({locale: 'ui'});
|
1142
|
+
* t('pageflow_scrolled.inline_editing.some.key')
|
1143
|
+
*/
|
1144
|
+
function useI18n() {
|
1145
|
+
var _ref4 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
1146
|
+
scope = _ref4.locale;
|
1147
|
+
var locale = useLocale();
|
1148
|
+
return {
|
1149
|
+
t: function t(key, options) {
|
1150
|
+
return I18n.t(key, _objectSpread2(_objectSpread2({}, options), {}, {
|
1151
|
+
locale: scope !== 'ui' && locale
|
1152
|
+
}));
|
1153
|
+
}
|
1154
|
+
};
|
1155
|
+
}
|
1156
|
+
|
1157
|
+
var _excluded = ["styles"];
|
1158
|
+
function _extends() {
|
1159
|
+
_extends = Object.assign ? Object.assign.bind() : function (target) {
|
1160
|
+
for (var i = 1; i < arguments.length; i++) {
|
1161
|
+
var source = arguments[i];
|
1162
|
+
for (var key in source) {
|
1163
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
1164
|
+
target[key] = source[key];
|
1165
|
+
}
|
1166
|
+
}
|
1167
|
+
}
|
1168
|
+
return target;
|
1169
|
+
};
|
1170
|
+
return _extends.apply(this, arguments);
|
1171
|
+
}
|
1172
|
+
var information = (function (_ref) {
|
1173
|
+
var _ref$styles = _ref.styles,
|
1174
|
+
props = _objectWithoutProperties(_ref, _excluded);
|
1175
|
+
return /*#__PURE__*/React.createElement("svg", _extends({
|
1176
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1177
|
+
viewBox: "-65 -65 449 449"
|
1178
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1179
|
+
d: "M165 0C74.019 0 0 74.02 0 165.001 0 255.982 74.019 330 165 330s165-74.018 165-164.999S255.981 0 165 0zm0 300c-74.44 0-135-60.56-135-134.999S90.56 30 165 30s135 60.562 135 135.001C300 239.44 239.439 300 165 300z"
|
1180
|
+
}), /*#__PURE__*/React.createElement("path", {
|
1181
|
+
d: "M164.998 70c-11.026 0-19.996 8.976-19.996 20.009 0 11.023 8.97 19.991 19.996 19.991 11.026 0 19.996-8.968 19.996-19.991 0-11.033-8.97-20.009-19.996-20.009zm.002 70c-8.284 0-15 6.716-15 15v90c0 8.284 6.716 15 15 15 8.284 0 15-6.716 15-15v-90c0-8.284-6.716-15-15-15z"
|
1182
|
+
}));
|
1183
|
+
});
|
1184
|
+
|
1185
|
+
var _excluded$1 = ["styles"];
|
1186
|
+
function _extends$1() {
|
1187
|
+
_extends$1 = Object.assign ? Object.assign.bind() : function (target) {
|
1188
|
+
for (var i = 1; i < arguments.length; i++) {
|
1189
|
+
var source = arguments[i];
|
1190
|
+
for (var key in source) {
|
1191
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
1192
|
+
target[key] = source[key];
|
1193
|
+
}
|
1194
|
+
}
|
1195
|
+
}
|
1196
|
+
return target;
|
1197
|
+
};
|
1198
|
+
return _extends$1.apply(this, arguments);
|
1199
|
+
}
|
1200
|
+
var muted = (function (_ref) {
|
1201
|
+
var _ref$styles = _ref.styles,
|
1202
|
+
styles = _ref$styles === void 0 ? {} : _ref$styles,
|
1203
|
+
props = _objectWithoutProperties(_ref, _excluded$1);
|
1204
|
+
return /*#__PURE__*/React.createElement("svg", _extends$1({
|
1205
|
+
"aria-hidden": "true",
|
1206
|
+
"data-prefix": "fas",
|
1207
|
+
"data-icon": "volume-mute",
|
1208
|
+
className: (styles["svg-inline--fa"] || "svg-inline--fa") + " " + (styles["fa-volume-mute"] || "fa-volume-mute") + " " + (styles["fa-w-16"] || "fa-w-16"),
|
1209
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1210
|
+
viewBox: "0 0 512 512"
|
1211
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1212
|
+
d: "M215.03 71.05L126.06 160H24c-13.26 0-24 10.74-24 24v144c0 13.25 10.74 24 24 24h102.06l88.97 88.95c15.03 15.03 40.97 4.47 40.97-16.97V88.02c0-21.46-25.96-31.98-40.97-16.97zM461.64 256l45.64-45.64c6.3-6.3 6.3-16.52 0-22.82l-22.82-22.82c-6.3-6.3-16.52-6.3-22.82 0L416 210.36l-45.64-45.64c-6.3-6.3-16.52-6.3-22.82 0l-22.82 22.82c-6.3 6.3-6.3 16.52 0 22.82L370.36 256l-45.63 45.63c-6.3 6.3-6.3 16.52 0 22.82l22.82 22.82c6.3 6.3 16.52 6.3 22.82 0L416 301.64l45.64 45.64c6.3 6.3 16.52 6.3 22.82 0l22.82-22.82c6.3-6.3 6.3-16.52 0-22.82L461.64 256z"
|
1213
|
+
}));
|
1214
|
+
});
|
1215
|
+
|
1216
|
+
var _excluded$2 = ["styles"];
|
1217
|
+
function _extends$2() {
|
1218
|
+
_extends$2 = Object.assign ? Object.assign.bind() : function (target) {
|
1219
|
+
for (var i = 1; i < arguments.length; i++) {
|
1220
|
+
var source = arguments[i];
|
1221
|
+
for (var key in source) {
|
1222
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
1223
|
+
target[key] = source[key];
|
1224
|
+
}
|
1225
|
+
}
|
1226
|
+
}
|
1227
|
+
return target;
|
1228
|
+
};
|
1229
|
+
return _extends$2.apply(this, arguments);
|
1230
|
+
}
|
1231
|
+
var share = (function (_ref) {
|
1232
|
+
var _ref$styles = _ref.styles,
|
1233
|
+
props = _objectWithoutProperties(_ref, _excluded$2);
|
1234
|
+
return /*#__PURE__*/React.createElement("svg", _extends$2({
|
1235
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1236
|
+
viewBox: "5 5 84 84"
|
1237
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1238
|
+
d: "M67.5 18c-5.1 0-9.3 4.2-9.3 9.3 0 .5.1 1.1.2 1.6l-23 12.9c-1.7-1.8-4.1-3-6.8-3-5.1 0-9.3 4.1-9.3 9.3 0 5.1 4.1 9.3 9.3 9.3 2.7 0 5.2-1.2 6.9-3.1l22.8 13.4c0 .4-.1.7-.1 1.1 0 5.1 4.1 9.3 9.3 9.3 5.1 0 9.3-4.1 9.3-9.3 0-5.1-4.1-9.3-9.3-9.3-2.8 0-5.4 1.3-7.1 3.3L37.7 49.4c.1-.4.1-.9.1-1.3 0-.5 0-1-.1-1.5l23.1-13c1.7 1.8 4.1 3 6.8 3 5.1 0 9.3-4.1 9.3-9.3-.1-5.1-4.3-9.3-9.4-9.3z"
|
1239
|
+
}));
|
1240
|
+
});
|
1241
|
+
|
1242
|
+
var _excluded$3 = ["styles"];
|
1243
|
+
function _extends$3() {
|
1244
|
+
_extends$3 = Object.assign ? Object.assign.bind() : function (target) {
|
1245
|
+
for (var i = 1; i < arguments.length; i++) {
|
1246
|
+
var source = arguments[i];
|
1247
|
+
for (var key in source) {
|
1248
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
1249
|
+
target[key] = source[key];
|
1250
|
+
}
|
1251
|
+
}
|
1252
|
+
}
|
1253
|
+
return target;
|
1254
|
+
};
|
1255
|
+
return _extends$3.apply(this, arguments);
|
1256
|
+
}
|
1257
|
+
var unmuted = (function (_ref) {
|
1258
|
+
var _ref$styles = _ref.styles,
|
1259
|
+
styles = _ref$styles === void 0 ? {} : _ref$styles,
|
1260
|
+
props = _objectWithoutProperties(_ref, _excluded$3);
|
1261
|
+
return /*#__PURE__*/React.createElement("svg", _extends$3({
|
1262
|
+
"aria-hidden": "true",
|
1263
|
+
"data-prefix": "fas",
|
1264
|
+
"data-icon": "volume-mute",
|
1265
|
+
className: (styles["svg-inline--fa"] || "svg-inline--fa") + " " + (styles["fa-volume-mute"] || "fa-volume-mute") + " " + (styles["fa-w-16"] || "fa-w-16"),
|
1266
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1267
|
+
viewBox: "0 0 512 512"
|
1268
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1269
|
+
d: "M232.36 64.01a24.007 24.007 0 00-1.176.002c-5.703.15-11.464 2.348-16.155 7.039L126.061 160H24c-13.26 0-24 10.74-24 24v144c0 13.25 10.74 24 24 24h102.06l88.97 88.95c15.03 15.03 40.97 4.47 40.97-16.97V88.02c0-14.293-11.514-23.733-23.64-24.01zm149.5 31.994c-8.107-.16-16.098 3.814-20.75 11.217-7.09 11.28-3.78 26.21 7.41 33.36C408.27 165.97 432 209.11 432 256s-23.73 90.03-63.48 115.42c-11.19 7.14-14.5 22.07-7.41 33.36 6.51 10.36 21.12 15.14 33.12 7.46C447.94 377.94 480 319.54 480 256c0-63.53-32.06-121.94-85.77-156.24a23.808 23.808 0 00-12.37-3.756zm-55.032 80.174c-8.51-.046-16.795 4.42-21.209 12.402-6.39 11.61-2.159 26.2 9.451 32.61C327.98 228.28 336 241.63 336 256c0 14.38-8.02 27.72-20.92 34.81-11.61 6.41-15.84 21-9.45 32.61 6.43 11.66 21.05 15.8 32.61 9.45 28.23-15.55 45.77-45 45.77-76.88 0-31.88-17.54-61.32-45.78-76.86a23.987 23.987 0 00-11.402-2.952z"
|
1270
|
+
}));
|
1271
|
+
});
|
1272
|
+
|
1273
|
+
var _excluded$4 = ["styles"];
|
1274
|
+
function _extends$4() {
|
1275
|
+
_extends$4 = Object.assign ? Object.assign.bind() : function (target) {
|
1276
|
+
for (var i = 1; i < arguments.length; i++) {
|
1277
|
+
var source = arguments[i];
|
1278
|
+
for (var key in source) {
|
1279
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
1280
|
+
target[key] = source[key];
|
1281
|
+
}
|
1282
|
+
}
|
1283
|
+
}
|
1284
|
+
return target;
|
1285
|
+
};
|
1286
|
+
return _extends$4.apply(this, arguments);
|
1287
|
+
}
|
1288
|
+
var gear = (function (_ref) {
|
1289
|
+
var _ref$styles = _ref.styles,
|
1290
|
+
props = _objectWithoutProperties(_ref, _excluded$4);
|
1291
|
+
return /*#__PURE__*/React.createElement("svg", _extends$4({
|
1292
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1293
|
+
viewBox: "-3 -3 30 30"
|
1294
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1295
|
+
d: "M19.43 12.98c.04-.32.07-.64.07-.98s-.03-.66-.07-.98l2.11-1.65c.19-.15.24-.42.12-.64l-2-3.46c-.12-.22-.39-.3-.61-.22l-2.49 1c-.52-.4-1.08-.73-1.69-.98l-.38-2.65A.488.488 0 0014 2h-4c-.25 0-.46.18-.49.42l-.38 2.65c-.61.25-1.17.59-1.69.98l-2.49-1c-.23-.09-.49 0-.61.22l-2 3.46c-.13.22-.07.49.12.64l2.11 1.65c-.04.32-.07.65-.07.98s.03.66.07.98l-2.11 1.65c-.19.15-.24.42-.12.64l2 3.46c.12.22.39.3.61.22l2.49-1c.52.4 1.08.73 1.69.98l.38 2.65c.03.24.24.42.49.42h4c.25 0 .46-.18.49-.42l.38-2.65c.61-.25 1.17-.59 1.69-.98l2.49 1c.23.09.49 0 .61-.22l2-3.46c.12-.22.07-.49-.12-.64l-2.11-1.65zM12 15.5c-1.93 0-3.5-1.57-3.5-3.5s1.57-3.5 3.5-3.5 3.5 1.57 3.5 3.5-1.57 3.5-3.5 3.5z"
|
1296
|
+
}));
|
1297
|
+
});
|
1298
|
+
|
1299
|
+
var _excluded$5 = ["styles"];
|
1300
|
+
function _extends$5() {
|
1301
|
+
_extends$5 = Object.assign ? Object.assign.bind() : function (target) {
|
1302
|
+
for (var i = 1; i < arguments.length; i++) {
|
1303
|
+
var source = arguments[i];
|
1304
|
+
for (var key in source) {
|
1305
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
1306
|
+
target[key] = source[key];
|
1307
|
+
}
|
1308
|
+
}
|
1309
|
+
}
|
1310
|
+
return target;
|
1311
|
+
};
|
1312
|
+
return _extends$5.apply(this, arguments);
|
1313
|
+
}
|
1314
|
+
var textTracks = (function (_ref) {
|
1315
|
+
var _ref$styles = _ref.styles,
|
1316
|
+
props = _objectWithoutProperties(_ref, _excluded$5);
|
1317
|
+
return /*#__PURE__*/React.createElement("svg", _extends$5({
|
1318
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1319
|
+
viewBox: "-3 -3 30 30"
|
1320
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1321
|
+
d: "M20 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zM4 12h4v2H4v-2zm10 6H4v-2h10v2zm6 0h-4v-2h4v2zm0-4H10v-2h10v2z"
|
1322
|
+
}));
|
1323
|
+
});
|
1324
|
+
|
1325
|
+
var _excluded$6 = ["styles"];
|
1326
|
+
function _extends$6() {
|
1327
|
+
_extends$6 = Object.assign ? Object.assign.bind() : function (target) {
|
1328
|
+
for (var i = 1; i < arguments.length; i++) {
|
1329
|
+
var source = arguments[i];
|
1330
|
+
for (var key in source) {
|
1331
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
1332
|
+
target[key] = source[key];
|
1333
|
+
}
|
1334
|
+
}
|
1335
|
+
}
|
1336
|
+
return target;
|
1337
|
+
};
|
1338
|
+
return _extends$6.apply(this, arguments);
|
1339
|
+
}
|
1340
|
+
var copyright = (function (_ref) {
|
1341
|
+
var _ref$styles = _ref.styles,
|
1342
|
+
props = _objectWithoutProperties(_ref, _excluded$6);
|
1343
|
+
return /*#__PURE__*/React.createElement("svg", _extends$6({
|
1344
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1345
|
+
width: "800",
|
1346
|
+
height: "800",
|
1347
|
+
viewBox: "0 0 24 24",
|
1348
|
+
fill: "none"
|
1349
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1350
|
+
d: "M14 9c-.48-.6-1.07-1-2-1-1.923 0-3 1.143-3 4s1.077 4 3 4c.93 0 1.52-.4 2-1m-2 6a9 9 0 100-18 9 9 0 000 18z",
|
1351
|
+
stroke: "currentColor",
|
1352
|
+
strokeWidth: "2",
|
1353
|
+
strokeLinecap: "round",
|
1354
|
+
strokeLinejoin: "round"
|
1355
|
+
}));
|
1356
|
+
});
|
1357
|
+
|
1358
|
+
var _excluded$7 = ["styles"];
|
1359
|
+
function _extends$7() {
|
1360
|
+
_extends$7 = Object.assign ? Object.assign.bind() : function (target) {
|
1361
|
+
for (var i = 1; i < arguments.length; i++) {
|
1362
|
+
var source = arguments[i];
|
1363
|
+
for (var key in source) {
|
1364
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
1365
|
+
target[key] = source[key];
|
1366
|
+
}
|
1367
|
+
}
|
1368
|
+
}
|
1369
|
+
return target;
|
1370
|
+
};
|
1371
|
+
return _extends$7.apply(this, arguments);
|
1372
|
+
}
|
1373
|
+
var world = (function (_ref) {
|
1374
|
+
var _ref$styles = _ref.styles,
|
1375
|
+
props = _objectWithoutProperties(_ref, _excluded$7);
|
1376
|
+
return /*#__PURE__*/React.createElement("svg", _extends$7({
|
1377
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1378
|
+
fill: "none",
|
1379
|
+
viewBox: "-2 -2 28 28",
|
1380
|
+
strokeWidth: "1.75",
|
1381
|
+
stroke: "currentColor"
|
1382
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1383
|
+
strokeLinecap: "round",
|
1384
|
+
strokeLinejoin: "round",
|
1385
|
+
d: "M12 21a9.004 9.004 0 008.716-6.747M12 21a9.004 9.004 0 01-8.716-6.747M12 21c2.485 0 4.5-4.03 4.5-9S14.485 3 12 3m0 18c-2.485 0-4.5-4.03-4.5-9S9.515 3 12 3m0 0a8.997 8.997 0 017.843 4.582M12 3a8.997 8.997 0 00-7.843 4.582m15.686 0A11.953 11.953 0 0112 10.5c-2.998 0-5.74-1.1-7.843-2.918m15.686 0A8.959 8.959 0 0121 12c0 .778-.099 1.533-.284 2.253m0 0A17.919 17.919 0 0112 16.5a17.92 17.92 0 01-8.716-2.247m0 0A9.015 9.015 0 013 12c0-1.605.42-3.113 1.157-4.418"
|
1386
|
+
}));
|
1387
|
+
});
|
1388
|
+
|
1389
|
+
var _excluded$8 = ["styles"];
|
1390
|
+
function _extends$8() {
|
1391
|
+
_extends$8 = Object.assign ? Object.assign.bind() : function (target) {
|
1392
|
+
for (var i = 1; i < arguments.length; i++) {
|
1393
|
+
var source = arguments[i];
|
1394
|
+
for (var key in source) {
|
1395
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
1396
|
+
target[key] = source[key];
|
1397
|
+
}
|
1398
|
+
}
|
1399
|
+
}
|
1400
|
+
return target;
|
1401
|
+
};
|
1402
|
+
return _extends$8.apply(this, arguments);
|
1403
|
+
}
|
1404
|
+
var close = (function (_ref) {
|
1405
|
+
var _ref$styles = _ref.styles,
|
1406
|
+
props = _objectWithoutProperties(_ref, _excluded$8);
|
1407
|
+
return /*#__PURE__*/React.createElement("svg", _extends$8({
|
1408
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1409
|
+
fill: "none",
|
1410
|
+
viewBox: "0 0 24 24",
|
1411
|
+
strokeWidth: "1.5",
|
1412
|
+
stroke: "currentColor"
|
1413
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1414
|
+
strokeLinecap: "round",
|
1415
|
+
strokeLinejoin: "round",
|
1416
|
+
d: "M6 18L18 6M6 6l12 12"
|
1417
|
+
}));
|
1418
|
+
});
|
1419
|
+
|
1420
|
+
var _excluded$9 = ["styles"];
|
1421
|
+
function _extends$9() {
|
1422
|
+
_extends$9 = Object.assign ? Object.assign.bind() : function (target) {
|
1423
|
+
for (var i = 1; i < arguments.length; i++) {
|
1424
|
+
var source = arguments[i];
|
1425
|
+
for (var key in source) {
|
1426
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
1427
|
+
target[key] = source[key];
|
1428
|
+
}
|
1429
|
+
}
|
1430
|
+
}
|
1431
|
+
return target;
|
1432
|
+
};
|
1433
|
+
return _extends$9.apply(this, arguments);
|
1434
|
+
}
|
1435
|
+
var checked = (function (_ref) {
|
1436
|
+
var _ref$styles = _ref.styles,
|
1437
|
+
props = _objectWithoutProperties(_ref, _excluded$9);
|
1438
|
+
return /*#__PURE__*/React.createElement("svg", _extends$9({
|
1439
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1440
|
+
width: "24",
|
1441
|
+
height: "24",
|
1442
|
+
viewBox: "0 0 512 512"
|
1443
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1444
|
+
d: "M434.442 58.997L195.559 297.881 77.554 179.88 0 257.438l195.559 195.565L512 136.551z"
|
1445
|
+
}));
|
1446
|
+
});
|
1447
|
+
|
1448
|
+
var _excluded$a = ["styles"];
|
1449
|
+
function _extends$a() {
|
1450
|
+
_extends$a = Object.assign ? Object.assign.bind() : function (target) {
|
1451
|
+
for (var i = 1; i < arguments.length; i++) {
|
1452
|
+
var source = arguments[i];
|
1453
|
+
for (var key in source) {
|
1454
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
1455
|
+
target[key] = source[key];
|
1456
|
+
}
|
1457
|
+
}
|
1458
|
+
}
|
1459
|
+
return target;
|
1460
|
+
};
|
1461
|
+
return _extends$a.apply(this, arguments);
|
1462
|
+
}
|
1463
|
+
var bluesky = (function (_ref) {
|
1464
|
+
var _ref$styles = _ref.styles,
|
1465
|
+
props = _objectWithoutProperties(_ref, _excluded$a);
|
1466
|
+
return /*#__PURE__*/React.createElement("svg", _extends$a({
|
1467
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1468
|
+
viewBox: "0 0 512 512"
|
1469
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1470
|
+
d: "M111.8 62.2C170.2 105.9 233 194.7 256 242.4c23-47.6 85.8-136.4 144.2-180.2 42.1-31.6 110.3-56 110.3 21.8 0 15.5-8.9 130.5-14.1 149.2-18.2 64.8-84.4 81.4-143.3 71.3C456 322 482.2 380 425.6 438c-107.4 110.2-154.3-27.6-166.3-62.9-1.7-4.9-2.6-7.8-3.3-7.8s-1.6 3-3.3 7.8c-12 35.3-59 173.1-166.3 62.9-56.5-58-30.4-116 72.5-133.5C100 314.6 33.8 298 15.7 233.1 10.4 214.4 1.5 99.4 1.5 83.9c0-77.8 68.2-53.4 110.3-21.8z"
|
1471
|
+
}));
|
1472
|
+
});
|
1473
|
+
|
1474
|
+
var _excluded$b = ["styles"];
|
1475
|
+
function _extends$b() {
|
1476
|
+
_extends$b = Object.assign ? Object.assign.bind() : function (target) {
|
1477
|
+
for (var i = 1; i < arguments.length; i++) {
|
1478
|
+
var source = arguments[i];
|
1479
|
+
for (var key in source) {
|
1480
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
1481
|
+
target[key] = source[key];
|
1482
|
+
}
|
1483
|
+
}
|
1484
|
+
}
|
1485
|
+
return target;
|
1486
|
+
};
|
1487
|
+
return _extends$b.apply(this, arguments);
|
1488
|
+
}
|
1489
|
+
var email = (function (_ref) {
|
1490
|
+
var _ref$styles = _ref.styles,
|
1491
|
+
props = _objectWithoutProperties(_ref, _excluded$b);
|
1492
|
+
return /*#__PURE__*/React.createElement("svg", _extends$b({
|
1493
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1494
|
+
viewBox: "0 0 612 612"
|
1495
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1496
|
+
d: "M573.75 57.375H38.25C17.136 57.375 0 74.511 0 95.625v420.75c0 21.133 17.136 38.25 38.25 38.25h535.5c21.133 0 38.25-17.117 38.25-38.25V95.625c0-21.114-17.117-38.25-38.25-38.25zM554.625 497.25H57.375V204.657l224.03 187.999c7.134 5.967 15.874 8.97 24.595 8.97 8.74 0 17.461-3.003 24.595-8.97l224.03-187.999V497.25zm0-367.487L306 338.379 57.375 129.763V114.75h497.25v15.013z"
|
1497
|
+
}));
|
1498
|
+
});
|
1499
|
+
|
1500
|
+
var _excluded$c = ["styles"];
|
1501
|
+
function _extends$c() {
|
1502
|
+
_extends$c = Object.assign ? Object.assign.bind() : function (target) {
|
1503
|
+
for (var i = 1; i < arguments.length; i++) {
|
1504
|
+
var source = arguments[i];
|
1505
|
+
for (var key in source) {
|
1506
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
1507
|
+
target[key] = source[key];
|
1508
|
+
}
|
1509
|
+
}
|
1510
|
+
}
|
1511
|
+
return target;
|
1512
|
+
};
|
1513
|
+
return _extends$c.apply(this, arguments);
|
1514
|
+
}
|
1515
|
+
var facebook = (function (_ref) {
|
1516
|
+
var _ref$styles = _ref.styles,
|
1517
|
+
props = _objectWithoutProperties(_ref, _excluded$c);
|
1518
|
+
return /*#__PURE__*/React.createElement("svg", _extends$c({
|
1519
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1520
|
+
viewBox: "0 0 430.113 430.114"
|
1521
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1522
|
+
d: "M158.081 83.3v59.218h-43.385v72.412h43.385v215.183h89.122V214.936h59.805s5.601-34.721 8.316-72.685H247.54V92.74c0-7.4 9.717-17.354 19.321-17.354h48.557V.001h-66.021C155.878-.004 158.081 72.48 158.081 83.3z"
|
1523
|
+
}));
|
1524
|
+
});
|
1525
|
+
|
1526
|
+
var _excluded$d = ["styles"];
|
1527
|
+
function _extends$d() {
|
1528
|
+
_extends$d = Object.assign ? Object.assign.bind() : function (target) {
|
1529
|
+
for (var i = 1; i < arguments.length; i++) {
|
1530
|
+
var source = arguments[i];
|
1531
|
+
for (var key in source) {
|
1532
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
1533
|
+
target[key] = source[key];
|
1534
|
+
}
|
1535
|
+
}
|
1536
|
+
}
|
1537
|
+
return target;
|
1538
|
+
};
|
1539
|
+
return _extends$d.apply(this, arguments);
|
1540
|
+
}
|
1541
|
+
var linkedIn = (function (_ref) {
|
1542
|
+
var _ref$styles = _ref.styles,
|
1543
|
+
props = _objectWithoutProperties(_ref, _excluded$d);
|
1544
|
+
return /*#__PURE__*/React.createElement("svg", _extends$d({
|
1545
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1546
|
+
viewBox: "0 0 430.117 430.117"
|
1547
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1548
|
+
d: "M430.117 261.543V420.56h-92.188V272.193c0-37.271-13.334-62.707-46.703-62.707-25.473 0-40.632 17.142-47.301 33.724-2.432 5.928-3.058 14.179-3.058 22.477V420.56h-92.219s1.242-251.285 0-277.32h92.21v39.309c-.187.294-.43.611-.606.896h.606v-.896c12.251-18.869 34.13-45.824 83.102-45.824 60.673-.001 106.157 39.636 106.157 124.818zM52.183 9.558C20.635 9.558 0 30.251 0 57.463c0 26.619 20.038 47.94 50.959 47.94h.616c32.159 0 52.159-21.317 52.159-47.94-.606-27.212-20-47.905-51.551-47.905zM5.477 420.56h92.184V143.24H5.477v277.32z"
|
1549
|
+
}));
|
1550
|
+
});
|
1551
|
+
|
1552
|
+
var _excluded$e = ["styles"];
|
1553
|
+
function _extends$e() {
|
1554
|
+
_extends$e = Object.assign ? Object.assign.bind() : function (target) {
|
1555
|
+
for (var i = 1; i < arguments.length; i++) {
|
1556
|
+
var source = arguments[i];
|
1557
|
+
for (var key in source) {
|
1558
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
1559
|
+
target[key] = source[key];
|
1560
|
+
}
|
1561
|
+
}
|
1562
|
+
}
|
1563
|
+
return target;
|
1564
|
+
};
|
1565
|
+
return _extends$e.apply(this, arguments);
|
1566
|
+
}
|
1567
|
+
var telegram = (function (_ref) {
|
1568
|
+
var _ref$styles = _ref.styles,
|
1569
|
+
props = _objectWithoutProperties(_ref, _excluded$e);
|
1570
|
+
return /*#__PURE__*/React.createElement("svg", _extends$e({
|
1571
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1572
|
+
viewBox: "0 0 512.004 512.004"
|
1573
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1574
|
+
d: "M508.194 20.517c-4.43-4.96-11.42-6.29-17.21-3.76l-482 211a15.01 15.01 0 00-8.98 13.41 15.005 15.005 0 008.38 13.79l115.09 56.6 28.68 172.06c.93 6.53 6.06 11.78 12.74 12.73 4.8.69 9.57-1 12.87-4.4l90.86-90.86 129.66 92.62a15.02 15.02 0 0014.24 1.74 15.01 15.01 0 009.19-11.01l90-451c.89-4.47-.26-9.26-3.52-12.92zm-372.84 263.45l-84.75-41.68 334.82-146.57-250.07 188.25zm46.94 44.59l-13.95 69.75-15.05-90.3 183.97-138.49-150.88 151.39c-2.12 2.12-3.53 4.88-4.09 7.65zm9.13 107.3l15.74-78.67 36.71 26.22-52.45 52.45zm205.41 19.94l-176.73-126.23 252.47-253.31-75.74 379.54z"
|
1575
|
+
}));
|
1576
|
+
});
|
1577
|
+
|
1578
|
+
var _excluded$f = ["styles"];
|
1579
|
+
function _extends$f() {
|
1580
|
+
_extends$f = Object.assign ? Object.assign.bind() : function (target) {
|
1581
|
+
for (var i = 1; i < arguments.length; i++) {
|
1582
|
+
var source = arguments[i];
|
1583
|
+
for (var key in source) {
|
1584
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
1585
|
+
target[key] = source[key];
|
1586
|
+
}
|
1587
|
+
}
|
1588
|
+
}
|
1589
|
+
return target;
|
1590
|
+
};
|
1591
|
+
return _extends$f.apply(this, arguments);
|
1592
|
+
}
|
1593
|
+
var threads = (function (_ref) {
|
1594
|
+
var _ref$styles = _ref.styles,
|
1595
|
+
props = _objectWithoutProperties(_ref, _excluded$f);
|
1596
|
+
return /*#__PURE__*/React.createElement("svg", _extends$f({
|
1597
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1598
|
+
viewBox: "0 0 448 512"
|
1599
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1600
|
+
d: "M331.5 235.7c2.2.9 4.2 1.9 6.3 2.8 29.2 14.1 50.6 35.2 61.8 61.4 15.7 36.5 17.2 95.8-30.3 143.2-36.2 36.2-80.3 52.5-142.6 53h-.3c-70.2-.5-124.1-24.1-160.4-70.2-32.3-41-48.9-98.1-49.5-169.6v-.5c.5-71.5 17.1-128.6 49.4-169.6 36.3-46.1 90.3-69.7 160.5-70.2h.3c70.3.5 124.9 24 162.3 69.9 18.4 22.7 32 50 40.6 81.7l-40.4 10.8c-7.1-25.8-17.8-47.8-32.2-65.4-29.2-35.8-73-54.2-130.5-54.6-57 .5-100.1 18.8-128.2 54.4C72.1 146.1 58.5 194.3 58 256c.5 61.7 14.1 109.9 40.3 143.3 28 35.6 71.2 53.9 128.2 54.4 51.4-.4 85.4-12.6 113.7-40.9 32.3-32.2 31.7-71.8 21.4-95.9-6.1-14.2-17.1-26-31.9-34.9-3.7 26.9-11.8 48.3-24.7 64.8-17.1 21.8-41.4 33.6-72.7 35.3-23.6 1.3-46.3-4.4-63.9-16-20.8-13.8-33-34.8-34.3-59.3-2.5-48.3 35.7-83 95.2-86.4 21.1-1.2 40.9-.3 59.2 2.8-2.4-14.8-7.3-26.6-14.6-35.2-10-11.7-25.6-17.7-46.2-17.8h-.7c-16.6 0-39 4.6-53.3 26.3l-34.4-23.6c19.2-29.1 50.3-45.1 87.8-45.1h.8c62.6.4 99.9 39.5 103.7 107.7l-.2.2zm-156 68.8c1.3 25.1 28.4 36.8 54.6 35.3 25.6-1.4 54.6-11.4 59.5-73.2-13.2-2.9-27.8-4.4-43.4-4.4-4.8 0-9.6.1-14.4.4-42.9 2.4-57.2 23.2-56.2 41.8l-.1.1z"
|
1601
|
+
}));
|
1602
|
+
});
|
1603
|
+
|
1604
|
+
var _excluded$g = ["styles"];
|
1605
|
+
function _extends$g() {
|
1606
|
+
_extends$g = Object.assign ? Object.assign.bind() : function (target) {
|
1607
|
+
for (var i = 1; i < arguments.length; i++) {
|
1608
|
+
var source = arguments[i];
|
1609
|
+
for (var key in source) {
|
1610
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
1611
|
+
target[key] = source[key];
|
1612
|
+
}
|
1613
|
+
}
|
1614
|
+
}
|
1615
|
+
return target;
|
1616
|
+
};
|
1617
|
+
return _extends$g.apply(this, arguments);
|
1618
|
+
}
|
1619
|
+
var twitter = (function (_ref) {
|
1620
|
+
var _ref$styles = _ref.styles,
|
1621
|
+
props = _objectWithoutProperties(_ref, _excluded$g);
|
1622
|
+
return /*#__PURE__*/React.createElement("svg", _extends$g({
|
1623
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1624
|
+
viewBox: "0 0 512 512"
|
1625
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1626
|
+
d: "M389.2 48h70.6L305.6 224.2 487 464H345L233.7 318.6 106.5 464H35.8l164.9-188.5L26.8 48h145.6l100.5 132.9L389.2 48zm-24.8 373.8h39.1L151.1 88h-42l255.3 333.8z"
|
1627
|
+
}));
|
1628
|
+
});
|
1629
|
+
|
1630
|
+
var _excluded$h = ["styles"];
|
1631
|
+
function _extends$h() {
|
1632
|
+
_extends$h = Object.assign ? Object.assign.bind() : function (target) {
|
1633
|
+
for (var i = 1; i < arguments.length; i++) {
|
1634
|
+
var source = arguments[i];
|
1635
|
+
for (var key in source) {
|
1636
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
1637
|
+
target[key] = source[key];
|
1638
|
+
}
|
1639
|
+
}
|
1640
|
+
}
|
1641
|
+
return target;
|
1642
|
+
};
|
1643
|
+
return _extends$h.apply(this, arguments);
|
1644
|
+
}
|
1645
|
+
var whatsApp = (function (_ref) {
|
1646
|
+
var _ref$styles = _ref.styles,
|
1647
|
+
props = _objectWithoutProperties(_ref, _excluded$h);
|
1648
|
+
return /*#__PURE__*/React.createElement("svg", _extends$h({
|
1649
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1650
|
+
viewBox: "0 0 90 90"
|
1651
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1652
|
+
d: "M90 43.841c0 24.213-19.779 43.841-44.182 43.841a44.256 44.256 0 01-21.357-5.455L0 90l7.975-23.522a43.38 43.38 0 01-6.34-22.637C1.635 19.628 21.416 0 45.818 0 70.223 0 90 19.628 90 43.841zM45.818 6.982c-20.484 0-37.146 16.535-37.146 36.859 0 8.065 2.629 15.534 7.076 21.61L11.107 79.14l14.275-4.537A37.122 37.122 0 0045.819 80.7c20.481 0 37.146-16.533 37.146-36.857S66.301 6.982 45.818 6.982zm22.311 46.956c-.273-.447-.994-.717-2.076-1.254-1.084-.537-6.41-3.138-7.4-3.495-.993-.358-1.717-.538-2.438.537-.721 1.076-2.797 3.495-3.43 4.212-.632.719-1.263.809-2.347.271-1.082-.537-4.571-1.673-8.708-5.333-3.219-2.848-5.393-6.364-6.025-7.441-.631-1.075-.066-1.656.475-2.191.488-.482 1.084-1.255 1.625-1.882.543-.628.723-1.075 1.082-1.793.363-.717.182-1.344-.09-1.883-.27-.537-2.438-5.825-3.34-7.977-.902-2.15-1.803-1.792-2.436-1.792-.631 0-1.354-.09-2.076-.09s-1.896.269-2.889 1.344c-.992 1.076-3.789 3.676-3.789 8.963 0 5.288 3.879 10.397 4.422 11.113.541.716 7.49 11.92 18.5 16.223C58.2 65.771 58.2 64.336 60.186 64.156c1.984-.179 6.406-2.599 7.312-5.107.9-2.512.9-4.663.631-5.111z"
|
1653
|
+
}));
|
1654
|
+
});
|
1655
|
+
|
1656
|
+
var _excluded$i = ["styles"];
|
1657
|
+
function _extends$i() {
|
1658
|
+
_extends$i = Object.assign ? Object.assign.bind() : function (target) {
|
1659
|
+
for (var i = 1; i < arguments.length; i++) {
|
1660
|
+
var source = arguments[i];
|
1661
|
+
for (var key in source) {
|
1662
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
1663
|
+
target[key] = source[key];
|
1664
|
+
}
|
1665
|
+
}
|
1666
|
+
}
|
1667
|
+
return target;
|
1668
|
+
};
|
1669
|
+
return _extends$i.apply(this, arguments);
|
1670
|
+
}
|
1671
|
+
var arrowLeft = (function (_ref) {
|
1672
|
+
var _ref$styles = _ref.styles,
|
1673
|
+
styles = _ref$styles === void 0 ? {} : _ref$styles,
|
1674
|
+
props = _objectWithoutProperties(_ref, _excluded$i);
|
1675
|
+
return /*#__PURE__*/React.createElement("svg", _extends$i({
|
1676
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1677
|
+
className: (styles["h-5"] || "h-5") + " " + (styles["w-5"] || "w-5"),
|
1678
|
+
viewBox: "0 0 20 20",
|
1679
|
+
fill: "currentColor"
|
1680
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1681
|
+
fillRule: "evenodd",
|
1682
|
+
d: "M12.707 5.293a1 1 0 010 1.414L9.414 10l3.293 3.293a1 1 0 01-1.414 1.414l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 0z",
|
1683
|
+
clipRule: "evenodd"
|
1684
|
+
}));
|
1685
|
+
});
|
1686
|
+
|
1687
|
+
var _excluded$j = ["styles"];
|
1688
|
+
function _extends$j() {
|
1689
|
+
_extends$j = Object.assign ? Object.assign.bind() : function (target) {
|
1690
|
+
for (var i = 1; i < arguments.length; i++) {
|
1691
|
+
var source = arguments[i];
|
1692
|
+
for (var key in source) {
|
1693
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
1694
|
+
target[key] = source[key];
|
1695
|
+
}
|
1696
|
+
}
|
1697
|
+
}
|
1698
|
+
return target;
|
1699
|
+
};
|
1700
|
+
return _extends$j.apply(this, arguments);
|
1701
|
+
}
|
1702
|
+
var arrowRight = (function (_ref) {
|
1703
|
+
var _ref$styles = _ref.styles,
|
1704
|
+
styles = _ref$styles === void 0 ? {} : _ref$styles,
|
1705
|
+
props = _objectWithoutProperties(_ref, _excluded$j);
|
1706
|
+
return /*#__PURE__*/React.createElement("svg", _extends$j({
|
1707
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1708
|
+
className: (styles["h-5"] || "h-5") + " " + (styles["w-5"] || "w-5"),
|
1709
|
+
viewBox: "0 0 20 20",
|
1710
|
+
fill: "currentColor"
|
1711
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1712
|
+
fillRule: "evenodd",
|
1713
|
+
d: "M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z",
|
1714
|
+
clipRule: "evenodd"
|
1715
|
+
}));
|
1716
|
+
});
|
1717
|
+
|
1718
|
+
var _excluded$k = ["styles"];
|
1719
|
+
function _extends$k() {
|
1720
|
+
_extends$k = Object.assign ? Object.assign.bind() : function (target) {
|
1721
|
+
for (var i = 1; i < arguments.length; i++) {
|
1722
|
+
var source = arguments[i];
|
1723
|
+
for (var key in source) {
|
1724
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
1725
|
+
target[key] = source[key];
|
1726
|
+
}
|
1727
|
+
}
|
1728
|
+
}
|
1729
|
+
return target;
|
1730
|
+
};
|
1731
|
+
return _extends$k.apply(this, arguments);
|
1732
|
+
}
|
1733
|
+
var scrollDown = (function (_ref) {
|
1734
|
+
var _ref$styles = _ref.styles,
|
1735
|
+
props = _objectWithoutProperties(_ref, _excluded$k);
|
1736
|
+
return /*#__PURE__*/React.createElement("svg", _extends$k({
|
1737
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1738
|
+
viewBox: "0 0 24 24"
|
1739
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1740
|
+
d: "M16.939 10.939L12 15.879l-4.939-4.94-2.122 2.122L12 20.121l7.061-7.06z"
|
1741
|
+
}), /*#__PURE__*/React.createElement("path", {
|
1742
|
+
d: "M16.939 3.939L12 8.879l-4.939-4.94-2.122 2.122L12 13.121l7.061-7.06z"
|
1743
|
+
}));
|
1744
|
+
});
|
1745
|
+
|
1746
|
+
var _excluded$l = ["styles"];
|
1747
|
+
function _extends$l() {
|
1748
|
+
_extends$l = Object.assign ? Object.assign.bind() : function (target) {
|
1749
|
+
for (var i = 1; i < arguments.length; i++) {
|
1750
|
+
var source = arguments[i];
|
1751
|
+
for (var key in source) {
|
1752
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
1753
|
+
target[key] = source[key];
|
1754
|
+
}
|
1755
|
+
}
|
1756
|
+
}
|
1757
|
+
return target;
|
1758
|
+
};
|
1759
|
+
return _extends$l.apply(this, arguments);
|
1760
|
+
}
|
1761
|
+
var enterFullscreen = (function (_ref) {
|
1762
|
+
var _ref$styles = _ref.styles,
|
1763
|
+
styles = _ref$styles === void 0 ? {} : _ref$styles,
|
1764
|
+
props = _objectWithoutProperties(_ref, _excluded$l);
|
1765
|
+
return /*#__PURE__*/React.createElement("svg", _extends$l({
|
1766
|
+
"aria-hidden": "true",
|
1767
|
+
"data-prefix": "fas",
|
1768
|
+
"data-icon": "expand",
|
1769
|
+
className: (styles["svg-inline--fa"] || "svg-inline--fa") + " " + (styles["fa-expand"] || "fa-expand") + " " + (styles["fa-w-14"] || "fa-w-14"),
|
1770
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1771
|
+
viewBox: "0 0 448 512"
|
1772
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1773
|
+
fill: "currentColor",
|
1774
|
+
d: "M0 180V56c0-13.3 10.7-24 24-24h124c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H64v84c0 6.6-5.4 12-12 12H12c-6.6 0-12-5.4-12-12zM288 44v40c0 6.6 5.4 12 12 12h84v84c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12V56c0-13.3-10.7-24-24-24H300c-6.6 0-12 5.4-12 12zm148 276h-40c-6.6 0-12 5.4-12 12v84h-84c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h124c13.3 0 24-10.7 24-24V332c0-6.6-5.4-12-12-12zM160 468v-40c0-6.6-5.4-12-12-12H64v-84c0-6.6-5.4-12-12-12H12c-6.6 0-12 5.4-12 12v124c0 13.3 10.7 24 24 24h124c6.6 0 12-5.4 12-12z"
|
1775
|
+
}));
|
1776
|
+
});
|
1777
|
+
|
1778
|
+
var _excluded$m = ["styles"];
|
1779
|
+
function _extends$m() {
|
1780
|
+
_extends$m = Object.assign ? Object.assign.bind() : function (target) {
|
1781
|
+
for (var i = 1; i < arguments.length; i++) {
|
1782
|
+
var source = arguments[i];
|
1783
|
+
for (var key in source) {
|
1784
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
1785
|
+
target[key] = source[key];
|
1786
|
+
}
|
1787
|
+
}
|
1788
|
+
}
|
1789
|
+
return target;
|
1790
|
+
};
|
1791
|
+
return _extends$m.apply(this, arguments);
|
1792
|
+
}
|
1793
|
+
var exitFullscreen = (function (_ref) {
|
1794
|
+
var _ref$styles = _ref.styles,
|
1795
|
+
styles = _ref$styles === void 0 ? {} : _ref$styles,
|
1796
|
+
props = _objectWithoutProperties(_ref, _excluded$m);
|
1797
|
+
return /*#__PURE__*/React.createElement("svg", _extends$m({
|
1798
|
+
"aria-hidden": "true",
|
1799
|
+
"data-prefix": "fas",
|
1800
|
+
"data-icon": "compress",
|
1801
|
+
className: (styles["svg-inline--fa"] || "svg-inline--fa") + " " + (styles["fa-compress"] || "fa-compress") + " " + (styles["fa-w-14"] || "fa-w-14"),
|
1802
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1803
|
+
viewBox: "0 0 448 512"
|
1804
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1805
|
+
fill: "currentColor",
|
1806
|
+
d: "M436 192H312c-13.3 0-24-10.7-24-24V44c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v84h84c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12zm-276-24V44c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v84H12c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h124c13.3 0 24-10.7 24-24zm0 300V344c0-13.3-10.7-24-24-24H12c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h84v84c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12zm192 0v-84h84c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12H312c-13.3 0-24 10.7-24 24v124c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12z"
|
1807
|
+
}));
|
1808
|
+
});
|
1809
|
+
|
1810
|
+
var _excluded$n = ["styles"];
|
1811
|
+
function _extends$n() {
|
1812
|
+
_extends$n = Object.assign ? Object.assign.bind() : function (target) {
|
1813
|
+
for (var i = 1; i < arguments.length; i++) {
|
1814
|
+
var source = arguments[i];
|
1815
|
+
for (var key in source) {
|
1816
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
1817
|
+
target[key] = source[key];
|
1818
|
+
}
|
1819
|
+
}
|
1820
|
+
}
|
1821
|
+
return target;
|
1822
|
+
};
|
1823
|
+
return _extends$n.apply(this, arguments);
|
1824
|
+
}
|
1825
|
+
var play = (function (_ref) {
|
1826
|
+
var _ref$styles = _ref.styles,
|
1827
|
+
props = _objectWithoutProperties(_ref, _excluded$n);
|
1828
|
+
return /*#__PURE__*/React.createElement("svg", _extends$n({
|
1829
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1830
|
+
viewBox: "0 0 24 24"
|
1831
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1832
|
+
d: "M8 5v14l11-7z"
|
1833
|
+
}));
|
1834
|
+
});
|
1835
|
+
|
1836
|
+
var _excluded$o = ["styles"];
|
1837
|
+
function _extends$o() {
|
1838
|
+
_extends$o = Object.assign ? Object.assign.bind() : function (target) {
|
1839
|
+
for (var i = 1; i < arguments.length; i++) {
|
1840
|
+
var source = arguments[i];
|
1841
|
+
for (var key in source) {
|
1842
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
1843
|
+
target[key] = source[key];
|
1844
|
+
}
|
1845
|
+
}
|
1846
|
+
}
|
1847
|
+
return target;
|
1848
|
+
};
|
1849
|
+
return _extends$o.apply(this, arguments);
|
1850
|
+
}
|
1851
|
+
var pause = (function (_ref) {
|
1852
|
+
var _ref$styles = _ref.styles,
|
1853
|
+
props = _objectWithoutProperties(_ref, _excluded$o);
|
1854
|
+
return /*#__PURE__*/React.createElement("svg", _extends$o({
|
1855
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1856
|
+
viewBox: "0 0 24 24"
|
1857
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1858
|
+
d: "M6 19h4V5H6v14zm8-14v14h4V5h-4z"
|
1859
|
+
}));
|
1860
|
+
});
|
1861
|
+
|
1862
|
+
var icons = {
|
1863
|
+
expand: arrowRight,
|
1864
|
+
information: information,
|
1865
|
+
muted: muted,
|
1866
|
+
share: share,
|
1867
|
+
unmuted: unmuted,
|
1868
|
+
gear: gear,
|
1869
|
+
textTracks: textTracks,
|
1870
|
+
copyright: copyright,
|
1871
|
+
world: world,
|
1872
|
+
close: close,
|
1873
|
+
checked: checked,
|
1874
|
+
bluesky: bluesky,
|
1875
|
+
email: email,
|
1876
|
+
facebook: facebook,
|
1877
|
+
linkedIn: linkedIn,
|
1878
|
+
telegram: telegram,
|
1879
|
+
threads: threads,
|
1880
|
+
twitter: twitter,
|
1881
|
+
whatsApp: whatsApp,
|
1882
|
+
arrowLeft: arrowLeft,
|
1883
|
+
arrowRight: arrowRight,
|
1884
|
+
scrollDown: scrollDown,
|
1885
|
+
enterFullscreen: enterFullscreen,
|
1886
|
+
exitFullscreen: exitFullscreen,
|
1887
|
+
play: play,
|
1888
|
+
pause: pause
|
1889
|
+
};
|
1890
|
+
|
1891
|
+
/**
|
1892
|
+
* Render an SVG icon that can be customized in themes.
|
1893
|
+
*
|
1894
|
+
* @param {Object} props
|
1895
|
+
* @param {string} props.name -
|
1896
|
+
* Either: arrowLeft, arrowRight, checked, copyright, close, email,
|
1897
|
+
* enterFullscreen, exitFullscreen, expand, facebook, gear, information,
|
1898
|
+
* linkedIn, menu, muted, pause, play, share, telegram,
|
1899
|
+
* textTracks, twitter, unmuted, world, whatsApp,
|
1900
|
+
* arrowLeft, arrowRight, scrollDown, world
|
1901
|
+
* @params {number} [props.width] - Image width.
|
1902
|
+
* @params {number} [props.height] - Image height.
|
1903
|
+
*/
|
1904
|
+
function ThemeIcon(_ref) {
|
1905
|
+
var name = _ref.name,
|
1906
|
+
width = _ref.width,
|
1907
|
+
height = _ref.height,
|
1908
|
+
renderFallback = _ref.renderFallback;
|
1909
|
+
var theme = useTheme();
|
1910
|
+
var FallbackIcon = icons[name];
|
1911
|
+
var themeAsset = theme.assets.icons[name];
|
1912
|
+
if (!FallbackIcon && !renderFallback) {
|
1913
|
+
throw new Error("Unknown icon '".concat(name, "'. Available options: ").concat(Object.keys(icons).join(', '), "."));
|
1914
|
+
}
|
1915
|
+
if (themeAsset) {
|
1916
|
+
return /*#__PURE__*/React.createElement("svg", {
|
1917
|
+
width: width,
|
1918
|
+
height: height
|
1919
|
+
}, /*#__PURE__*/React.createElement("use", {
|
1920
|
+
xlinkHref: "".concat(themeAsset, "#icon")
|
1921
|
+
}));
|
1922
|
+
} else if (renderFallback) {
|
1923
|
+
return renderFallback();
|
1924
|
+
} else {
|
1925
|
+
return /*#__PURE__*/React.createElement(FallbackIcon, {
|
1926
|
+
width: width,
|
1927
|
+
height: height
|
1928
|
+
});
|
1929
|
+
}
|
1930
|
+
}
|
1931
|
+
|
1932
|
+
export { useCutOff as A, useDarkWidgets as B, useEntryTranslations as C, useFileRights as D, EntryStateProvider as E, useLegalInfo as F, useMainChapters as G, useShareProviders as H, useShareUrl as I, useLocale as J, updateContentElementConfiguration as K, LocaleProvider as L, _unsupportedIterableToArray as M, ThemeIcon as T, _slicedToArray as _, _objectSpread2 as a, _defineProperty as b, useEntryMetadata as c, useNestedFiles as d, _objectWithoutProperties as e, useWidget as f, useTheme as g, useContentElement as h, useFileWithInlineRights as i, useFile as j, useSectionForegroundContentElements as k, useAdditionalSeedData as l, useSectionsWithChapter as m, useContentElementConsentVendor as n, _toConsumableArray as o, useChapter as p, useDownloadableFile as q, useEntryStateDispatch as r, useSection as s, useEntryStructure as t, useI18n as u, getFileUrlTemplateHost as v, useAvailableQualities as w, setupI18n as x, useChapters as y, useCredits as z };
|