pageflow 15.6.1 → 15.7.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of pageflow might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/CHANGELOG.md +236 -11
- data/README.md +1 -2
- data/admins/pageflow/entry.rb +28 -57
- data/admins/pageflow/user.rb +1 -3
- data/app/assets/images/pageflow/admin/icons/buttons/editor.svg +2 -0
- data/app/assets/images/pageflow/admin/icons/buttons/preview.svg +2 -0
- data/app/assets/images/pageflow/admin/icons/buttons/show_public.svg +2 -0
- data/app/assets/images/pageflow/admin/icons/delete.svg +9 -0
- data/app/assets/images/pageflow/admin/icons/done.svg +6 -0
- data/app/assets/images/pageflow/admin/icons/edit.svg +7 -0
- data/app/assets/images/pageflow/admin/icons/editor.svg +2 -0
- data/app/assets/images/pageflow/admin/icons/folder.svg +8 -0
- data/app/assets/images/pageflow/admin/icons/folder_active.svg +8 -0
- data/app/assets/images/pageflow/admin/icons/info.svg +3 -0
- data/app/assets/images/pageflow/admin/icons/new.svg +5 -0
- data/app/assets/images/pageflow/admin/icons/preview.svg +2 -0
- data/app/assets/images/pageflow/admin/icons/published.svg +2 -0
- data/app/assets/images/pageflow/admin/icons/published_with_password.svg +2 -0
- data/app/assets/images/pageflow/admin/icons/show_public.svg +2 -0
- data/app/assets/images/pageflow/editor/blank_entry/logo.png +0 -0
- data/app/assets/images/pageflow/themes/default/embed_opt_in.svg +3 -0
- data/app/assets/images/pageflow/themes/default/embed_opt_out_info.svg +16 -0
- data/app/assets/javascripts/pageflow/admin/entries.js +9 -57
- data/app/assets/javascripts/pageflow/dist/ui.js +127 -10
- data/app/assets/stylesheets/pageflow/admin/active_admin_patches.scss +18 -16
- data/app/assets/stylesheets/pageflow/admin/badge_list.scss +25 -35
- data/app/assets/stylesheets/pageflow/admin/columns.scss +13 -11
- data/app/assets/stylesheets/pageflow/admin/embed_code.scss +1 -4
- data/app/assets/stylesheets/pageflow/admin/entries/folders.scss +44 -19
- data/app/assets/stylesheets/pageflow/admin/entries.scss +15 -31
- data/app/assets/stylesheets/pageflow/admin/features.scss +3 -1
- data/app/assets/stylesheets/pageflow/admin/forms.scss +14 -12
- data/app/assets/stylesheets/pageflow/admin/hint.scss +8 -14
- data/app/assets/stylesheets/pageflow/admin/icon_button.scss +25 -14
- data/app/assets/stylesheets/pageflow/admin/icon_link.scss +31 -15
- data/app/assets/stylesheets/pageflow/admin/publication_state_indicator.scss +14 -7
- data/app/assets/stylesheets/pageflow/admin/status_tags.scss +5 -4
- data/app/assets/stylesheets/pageflow/admin/tabs_view.scss +36 -34
- data/app/assets/stylesheets/pageflow/admin/tooltip_bubble.scss +15 -11
- data/app/assets/stylesheets/pageflow/admin.scss +12 -0
- data/app/assets/stylesheets/pageflow/editor/background_positioning.scss +15 -61
- data/app/assets/stylesheets/pageflow/editor/base.scss +28 -13
- data/app/assets/stylesheets/pageflow/editor/blank_entry.scss +6 -6
- data/app/assets/stylesheets/pageflow/editor/change_theme.scss +28 -71
- data/app/assets/stylesheets/pageflow/editor/composables.scss +2 -2
- data/app/assets/stylesheets/pageflow/editor/confirm_encoding.scss +18 -36
- data/app/assets/stylesheets/pageflow/editor/confirm_upload.scss +12 -39
- data/app/assets/stylesheets/pageflow/editor/dialogs.scss +39 -12
- data/app/assets/stylesheets/pageflow/editor/disabled_atmo_indicator.scss +3 -3
- data/app/assets/stylesheets/pageflow/editor/drop_down_button.scss +7 -10
- data/app/assets/stylesheets/pageflow/editor/emulation_mode_button.scss +3 -8
- data/app/assets/stylesheets/pageflow/editor/failures.scss +3 -3
- data/app/assets/stylesheets/pageflow/editor/file_import.scss +22 -38
- data/app/assets/stylesheets/pageflow/editor/file_meta_data.scss +3 -7
- data/app/assets/stylesheets/pageflow/editor/file_settings_dialog.scss +4 -24
- data/app/assets/stylesheets/pageflow/editor/file_stages.scss +10 -11
- data/app/assets/stylesheets/pageflow/editor/file_thumbnails.scss +4 -8
- data/app/assets/stylesheets/pageflow/editor/files.scss +7 -6
- data/app/assets/stylesheets/pageflow/editor/files_explorer.scss +13 -30
- data/app/assets/stylesheets/pageflow/editor/files_gallery.scss +15 -11
- data/app/assets/stylesheets/pageflow/editor/filtered_files.scss +6 -7
- data/app/assets/stylesheets/pageflow/editor/help.scss +19 -14
- data/app/assets/stylesheets/pageflow/editor/help_image.scss +1 -1
- data/app/assets/stylesheets/pageflow/editor/info_box.scss +19 -0
- data/app/assets/stylesheets/pageflow/editor/inputs/file_input.scss +7 -11
- data/app/assets/stylesheets/pageflow/editor/inputs/file_processing_state_display.scss +0 -2
- data/app/assets/stylesheets/pageflow/editor/inputs/reference.scss +7 -11
- data/app/assets/stylesheets/pageflow/editor/list.scss +13 -10
- data/app/assets/stylesheets/pageflow/editor/loading.scss +1 -1
- data/app/assets/stylesheets/pageflow/editor/locked.scss +9 -5
- data/app/assets/stylesheets/pageflow/editor/menu.scss +5 -5
- data/app/assets/stylesheets/pageflow/editor/notifications.scss +15 -14
- data/app/assets/stylesheets/pageflow/editor/other_entry_item.scss +7 -3
- data/app/assets/stylesheets/pageflow/editor/outline.scss +57 -19
- data/app/assets/stylesheets/pageflow/editor/page_links.scss +10 -8
- data/app/assets/stylesheets/pageflow/editor/page_selection.scss +2 -29
- data/app/assets/stylesheets/pageflow/editor/publish_entry.scss +5 -6
- data/app/assets/stylesheets/pageflow/editor/quotas.scss +2 -3
- data/app/assets/stylesheets/pageflow/editor/select_button.scss +12 -6
- data/app/assets/stylesheets/pageflow/editor/sidebar_footer.scss +1 -5
- data/app/assets/stylesheets/pageflow/editor/storyline_picker.scss +6 -2
- data/app/assets/stylesheets/pageflow/editor/text_tracks.scss +6 -22
- data/app/assets/stylesheets/pageflow/editor/widgets.scss +2 -2
- data/app/assets/stylesheets/pageflow/editor/wysihtml5.scss +35 -29
- data/app/assets/stylesheets/pageflow/mixins/background_icons.scss +3 -3
- data/app/assets/stylesheets/pageflow/mixins/buttons.scss +50 -68
- data/app/assets/stylesheets/pageflow/themes/default/base.scss +2 -0
- data/app/assets/stylesheets/pageflow/themes/default/consent/bar.scss +156 -0
- data/app/assets/stylesheets/pageflow/themes/default/consent/vendor_list.scss +62 -0
- data/app/assets/stylesheets/pageflow/themes/default/consent.scss +2 -0
- data/app/assets/stylesheets/pageflow/themes/default/logo/alignment.scss +7 -0
- data/app/assets/stylesheets/pageflow/themes/default/page/shadow.scss +44 -0
- data/app/assets/stylesheets/pageflow/themes/default/third_party_embed_consent.scss +103 -0
- data/app/assets/stylesheets/pageflow/ui/forms.scss +79 -84
- data/app/assets/stylesheets/pageflow/ui/functions.scss +56 -0
- data/app/assets/stylesheets/pageflow/ui/input/check_box_group_input.scss +2 -3
- data/app/assets/stylesheets/pageflow/ui/input/color_input.scss +6 -6
- data/app/assets/stylesheets/pageflow/ui/input/extended_select_input.scss +63 -50
- data/app/assets/stylesheets/pageflow/ui/normalize/forms.scss +153 -0
- data/app/assets/stylesheets/pageflow/ui/normalize.scss +278 -0
- data/app/assets/stylesheets/pageflow/ui/properties.scss +44 -0
- data/app/assets/stylesheets/pageflow/ui/table_cells/delete_row_table_cell.scss +1 -1
- data/app/assets/stylesheets/pageflow/ui/table_view.scss +14 -18
- data/app/assets/stylesheets/pageflow/ui/tabs_view.scss +8 -11
- data/app/assets/stylesheets/pageflow/ui/tooltip.scss +6 -8
- data/app/assets/stylesheets/pageflow/ui/validation_error_messages.scss +6 -0
- data/app/assets/stylesheets/pageflow/ui.scss +4 -0
- data/app/controllers/pageflow/edit_locks_controller.rb +3 -1
- data/app/helpers/pageflow/admin/entries_helper.rb +2 -12
- data/app/helpers/pageflow/embed_code_helper.rb +1 -1
- data/app/helpers/pageflow/entries_helper.rb +41 -2
- data/app/helpers/pageflow/file_background_images_helper.rb +1 -1
- data/app/helpers/pageflow/page_types_helper.rb +1 -1
- data/app/helpers/pageflow/themes_helper.rb +1 -1
- data/app/jobs/pageflow/poll_meta_data_from_zencoder_job.rb +1 -1
- data/app/jobs/pageflow/poll_zencoder_job.rb +1 -9
- data/app/models/pageflow/audio_file.rb +17 -0
- data/app/models/pageflow/audio_file_url_templates.rb +4 -1
- data/app/models/pageflow/customized_theme.rb +37 -0
- data/app/models/pageflow/draft_entry.rb +6 -59
- data/app/models/pageflow/entry_at_revision.rb +68 -0
- data/app/models/pageflow/entry_role_query.rb +44 -24
- data/app/models/pageflow/image_file_css_background_image_urls.rb +8 -2
- data/app/models/pageflow/published_entry.rb +9 -56
- data/app/models/pageflow/theme_customization.rb +46 -0
- data/app/models/pageflow/theme_customization_file.rb +58 -0
- data/app/models/pageflow/video_file.rb +11 -1
- data/app/models/pageflow/video_file_url_templates.rb +1 -0
- data/app/policies/pageflow/entry_policy.rb +4 -0
- data/app/state_machines/pageflow/media_encoding_state_machine.rb +23 -4
- data/app/views/admin/entries/_form.html.erb +50 -0
- data/app/views/admin/entries/entry_type_name_input.html.erb +5 -0
- data/app/views/admin/features/_form.html.erb +1 -1
- data/app/views/admin/memberships/_form.html.erb +2 -3
- data/app/views/admin/users/_form.html.erb +1 -1
- data/app/views/admin/users/invitation.html.erb +2 -2
- data/app/views/components/pageflow/admin/entry_user_badge_list.rb +10 -9
- data/app/views/components/pageflow/admin/members_tab.rb +5 -1
- data/app/views/components/pageflow/admin/revisions_tab.rb +13 -3
- data/app/views/components/pageflow/admin/timestamp.rb +20 -0
- data/app/views/components/pageflow/admin/user_account_badge_list.rb +5 -6
- data/app/views/pageflow/admin/entries/_cannot_add_user.html.erb +9 -5
- data/app/views/pageflow/admin/entries/_entry_type_name_input.html.erb +7 -0
- data/app/views/pageflow/audio_files/_audio_file.json.jbuilder +13 -0
- data/app/views/pageflow/editor/encoding_confirmations/_intro.html.erb +0 -0
- data/app/views/pageflow/editor/encoding_confirmations/check.json.jbuilder +14 -2
- data/config/initializers/paperclip.rb +16 -1
- data/config/locales/de.yml +24 -28
- data/config/locales/en.yml +19 -10
- data/db/migrate/20210528073122_create_pageflow_theme_customizations.rb +11 -0
- data/db/migrate/20210531090654_create_pageflow_theme_customization_files.rb +15 -0
- data/db/migrate/20210531102228_add_selected_file_ids_to_theme_customizations.rb +5 -0
- data/db/migrate/20211020085902_add_canonical_entry_url_prefix_to_themings.rb +5 -0
- data/db/migrate/20220503150010_add_peak_data_to_audio_files.rb +5 -0
- data/db/migrate/20220705084830_add_trailing_slash_in_canonical_urls_to_themings.rb +5 -0
- data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/editor.js +256 -124
- data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/frontend.js +566 -167
- data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/react-client.js +5 -5
- data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/react-server.js +4 -4
- data/entry_types/paged/app/helpers/pageflow_paged/third_party_embed_consent_helper.rb +38 -0
- data/entry_types/paged/app/views/pageflow_paged/third_party_embed_consent/_opt_in.html.erb +12 -0
- data/entry_types/paged/app/views/pageflow_paged/third_party_embed_consent/_opt_out_info.html.erb +10 -0
- data/entry_types/paged/config/initializers/features.rb +2 -0
- data/entry_types/paged/config/locales/new/video_contain.de.yml +7 -0
- data/entry_types/paged/config/locales/new/video_contain.en.yml +7 -0
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/editor/seed_html_helper.rb +3 -0
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/entry_json_seed_helper.rb +1 -0
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/packs_helper.rb +58 -0
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/react_server_side_rendering_helper.rb +37 -3
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/themes_helper.rb +92 -6
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/webpack_public_path_helper.rb +20 -0
- data/entry_types/scrolled/app/models/pageflow_scrolled/content_element.rb +7 -0
- data/entry_types/scrolled/app/views/pageflow_scrolled/editor/entries/_head.html.erb +5 -2
- data/entry_types/scrolled/app/views/pageflow_scrolled/editor/entries/_seed.json.jbuilder +5 -1
- data/entry_types/scrolled/app/views/pageflow_scrolled/entries/show.html.erb +5 -4
- data/entry_types/scrolled/app/views/pageflow_scrolled/entry_json_seed/_entry.json.jbuilder +16 -0
- data/entry_types/scrolled/app/views/pageflow_scrolled/entry_json_seed/_theme.json.jbuilder +13 -2
- data/entry_types/scrolled/app/views/pageflow_scrolled/entry_json_seed/_widget.json.jbuilder +2 -0
- data/entry_types/scrolled/config/locales/de.yml +1 -8
- data/entry_types/scrolled/config/locales/en.yml +1 -9
- data/entry_types/scrolled/config/locales/new/before_after_slider.de.yml +8 -0
- data/entry_types/scrolled/config/locales/new/before_after_slider.en.yml +8 -0
- data/entry_types/scrolled/config/locales/new/center_ragged.de.yml +8 -0
- data/entry_types/scrolled/config/locales/new/center_ragged.en.yml +9 -0
- data/entry_types/scrolled/config/locales/new/consent.de.yml +25 -0
- data/entry_types/scrolled/config/locales/new/consent.en.yml +24 -0
- data/entry_types/scrolled/config/locales/new/content_element_categories.de.yml +39 -0
- data/entry_types/scrolled/config/locales/new/content_element_categories.en.yml +39 -0
- data/entry_types/scrolled/config/locales/new/default_transition.de.yml +14 -0
- data/entry_types/scrolled/config/locales/new/default_transition.en.yml +14 -0
- data/entry_types/scrolled/config/locales/new/header_line_breaks.de.yml +28 -0
- data/entry_types/scrolled/config/locales/new/header_line_breaks.en.yml +27 -0
- data/entry_types/scrolled/config/locales/new/header_size.de.yml +17 -0
- data/entry_types/scrolled/config/locales/new/header_size.en.yml +17 -0
- data/entry_types/scrolled/config/locales/new/iframe_embed.de.yml +39 -0
- data/entry_types/scrolled/config/locales/new/iframe_embed.en.yml +39 -0
- data/entry_types/scrolled/config/locales/new/inline_loops.de.yml +26 -0
- data/entry_types/scrolled/config/locales/new/inline_loops.en.yml +26 -0
- data/entry_types/scrolled/config/locales/new/portrait_inline_image.de.yml +9 -0
- data/entry_types/scrolled/config/locales/new/portrait_inline_image.en.yml +9 -0
- data/entry_types/scrolled/config/locales/new/section_width.de.yml +10 -0
- data/entry_types/scrolled/config/locales/new/section_width.en.yml +10 -0
- data/entry_types/scrolled/config/locales/new/typography_variants.de.yml +7 -0
- data/entry_types/scrolled/config/locales/new/typography_variants.en.yml +7 -0
- data/entry_types/scrolled/config/locales/new/video_embed_poster.de.yml +8 -0
- data/entry_types/scrolled/config/locales/new/video_embed_poster.en.yml +8 -0
- data/entry_types/scrolled/config/locales/new/waveform_styles.de.yml +11 -0
- data/entry_types/scrolled/config/locales/new/waveform_styles.en.yml +12 -0
- data/entry_types/scrolled/config/locales/new/widgets.de.yml +6 -0
- data/entry_types/scrolled/config/locales/new/widgets.en.yml +6 -0
- data/entry_types/scrolled/lib/generators/pageflow_scrolled/install/install_generator.rb +29 -5
- data/entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/themes_plugin.rb.tt +8 -6
- data/entry_types/scrolled/lib/pageflow_scrolled/additional_packs.rb +37 -0
- data/entry_types/scrolled/lib/pageflow_scrolled/additional_seed_data.rb +57 -0
- data/entry_types/scrolled/lib/pageflow_scrolled/configuration.rb +49 -0
- data/entry_types/scrolled/lib/pageflow_scrolled/plugin.rb +8 -0
- data/entry_types/scrolled/lib/pageflow_scrolled/react_widget_type.rb +42 -0
- data/entry_types/scrolled/lib/pageflow_scrolled.rb +17 -1
- data/entry_types/scrolled/package/contentElements-editor.js +323 -89
- data/entry_types/scrolled/package/contentElements-frontend.css +1 -1
- data/entry_types/scrolled/package/contentElements-frontend.js +719 -529
- data/entry_types/scrolled/package/editor.js +459 -261
- data/entry_types/scrolled/package/frontend/{EditableText-7093fd0e.js → EditableInlineText.module-b9923660.js} +284 -362
- data/entry_types/scrolled/package/frontend/{i18n-4dc6c377.js → PhonePlatformContext-9fb97827.js} +199 -106
- data/entry_types/scrolled/package/frontend/{Viewer-e49e7807.js → Viewer-e2290ea0.js} +196 -79
- data/entry_types/scrolled/package/frontend/{Wavesurfer-0adf5667.js → Wavesurfer-7d9cf1b7.js} +16 -58
- data/entry_types/scrolled/package/frontend/{components-6a6793ca.js → components-6ab26015.js} +664 -671
- data/entry_types/scrolled/package/frontend/{getPrototypeOf-63c7c8e8.js → createSuper-d0f30da3.js} +34 -5
- data/entry_types/scrolled/package/frontend/index.css +1 -9
- data/entry_types/scrolled/package/frontend/index.js +1919 -2386
- data/entry_types/scrolled/package/frontend/{useBrowserFeature-91a4c29d.js → usePhonePlatform-2857c22b.js} +9 -8
- data/entry_types/scrolled/package/frontend-server.js +3 -6
- data/entry_types/scrolled/package/package.json +16 -8
- data/entry_types/scrolled/package/testHelpers.js +456 -0
- data/entry_types/scrolled/package/values/breakpoints.module.css +9 -0
- data/entry_types/scrolled/package/values/colors.module.css +5 -0
- data/entry_types/scrolled/package/widgets/defaultNavigation.css +9 -0
- data/entry_types/scrolled/package/widgets/defaultNavigation.js +612 -0
- data/entry_types/scrolled/spec/fixtures/image.svg +1 -0
- data/lib/pageflow/ability_mixin.rb +4 -0
- data/lib/pageflow/built_in_widget_type.rb +4 -0
- data/lib/pageflow/built_in_widget_types_plugin.rb +7 -0
- data/lib/pageflow/configuration.rb +34 -1
- data/lib/pageflow/entry_type.rb +11 -2
- data/lib/pageflow/entry_type_configuration.rb +2 -0
- data/lib/pageflow/file_type.rb +24 -0
- data/lib/pageflow/paperclip_processors/audio_waveform.rb +42 -0
- data/lib/pageflow/paperclip_processors/noop.rb +10 -0
- data/lib/pageflow/theme_customizations.rb +61 -0
- data/lib/pageflow/version.rb +1 -1
- data/lib/pageflow.rb +9 -0
- data/package/config/jest/index.js +2 -1
- data/package/config/postcss/scaleFunctions.js +71 -0
- data/package/editor.js +95 -85
- data/package/frontend.js +521 -161
- data/package/package.json +5 -3
- data/package/testHelpers.js +26 -5
- data/package/ui.js +124 -11
- data/spec/factories/draft_entries.rb +19 -1
- data/spec/factories/entries.rb +4 -0
- data/spec/factories/published_entries.rb +6 -0
- data/spec/fixtures/audio.ogg +0 -0
- metadata +118 -14
- data/app/views/admin/entries/_not_allowed_to_see_entry_types.json.jbuilder +0 -2
- data/app/views/admin/entries/entry_types.json.jbuilder +0 -4
- data/package/config/jest/transformers/upwardBabel.js +0 -5
data/entry_types/scrolled/package/frontend/{components-6a6793ca.js → components-6ab26015.js}
RENAMED
@@ -1,12 +1,12 @@
|
|
1
1
|
import React, { useMemo, useState, useCallback, useContext, useRef, useEffect, createContext, useLayoutEffect, memo } from 'react';
|
2
|
-
import {
|
3
|
-
import
|
2
|
+
import { c as _slicedToArray, q as useEntryStateDispatch, b as _defineProperty, _ as _objectWithoutProperties, u as useI18n, A as updateContentElementConfiguration, a as _objectSpread2, o as _toConsumableArray, P as PhonePlatformContext } from './PhonePlatformContext-9fb97827.js';
|
3
|
+
import 'i18n-js';
|
4
4
|
import 'use-context-selector';
|
5
5
|
import 'reselect';
|
6
|
-
import 'i18n-js';
|
7
6
|
import 'slugify';
|
8
|
-
import
|
9
|
-
import './
|
7
|
+
import classNames from 'classnames';
|
8
|
+
import { C as ContentElementEditorCommandEmitterContext, e as usePostMessageListener, n as MotifAreaVisibilityProvider, o as ForcePaddingContext, p as ContentElementConfigurationUpdateContext, q as ContentElementEditorStateContext, f as api, u as useContentElementEditorState, r as LayoutWithoutInlineEditing, s as renderElement, t as renderLeaf$1, j as useContentElementEditorCommandSubscription, T as Text$1, h as frontendStyles } from './EditableInlineText.module-b9923660.js';
|
9
|
+
import './createSuper-d0f30da3.js';
|
10
10
|
import BackboneEvents from 'backbone-events-standalone';
|
11
11
|
import { DndProvider, useDrop, useDrag } from 'react-dnd';
|
12
12
|
import { HTML5Backend } from 'react-dnd-html5-backend';
|
@@ -37,12 +37,9 @@ function EditorStateProvider(props) {
|
|
37
37
|
setSelection: setSelection
|
38
38
|
};
|
39
39
|
}, [setSelection, selection]);
|
40
|
-
return (
|
41
|
-
|
42
|
-
|
43
|
-
value: value
|
44
|
-
}, props.children)
|
45
|
-
);
|
40
|
+
return /*#__PURE__*/React.createElement(Context.Provider, {
|
41
|
+
value: value
|
42
|
+
}, props.children);
|
46
43
|
}
|
47
44
|
function useEditorSelection(options) {
|
48
45
|
var _useContext = useContext(Context),
|
@@ -57,6 +54,7 @@ function useEditorSelection(options) {
|
|
57
54
|
}, [setSelection, options]);
|
58
55
|
return useMemo(function () {
|
59
56
|
return setSelection ? {
|
57
|
+
range: selection === null || selection === void 0 ? void 0 : selection.range,
|
60
58
|
isSelected: selection && options && selection.id === options.id && selection.type === options.type,
|
61
59
|
select: select,
|
62
60
|
resetSelection: resetSelection
|
@@ -72,12 +70,9 @@ function useContentElementEditorCommandEmitter() {
|
|
72
70
|
function ContentElementEditorCommandSubscriptionProvider(_ref) {
|
73
71
|
var emitter = _ref.emitter,
|
74
72
|
children = _ref.children;
|
75
|
-
return (
|
76
|
-
|
77
|
-
|
78
|
-
value: emitter
|
79
|
-
}, children)
|
80
|
-
);
|
73
|
+
return /*#__PURE__*/React.createElement(ContentElementEditorCommandEmitterContext.Provider, {
|
74
|
+
value: emitter
|
75
|
+
}, children);
|
81
76
|
}
|
82
77
|
|
83
78
|
// the editor phone preview. Each ContentElementDecorator renders a
|
@@ -157,26 +152,15 @@ function restoreScrollPoint(name) {
|
|
157
152
|
}
|
158
153
|
}
|
159
154
|
|
160
|
-
function
|
155
|
+
function ContentDecorator(props) {
|
161
156
|
var contentElementEditorCommandEmitter = useContentElementEditorCommandEmitter();
|
162
|
-
return (
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
/*#__PURE__*/
|
170
|
-
React.createElement(ScrollPointMessageHandler, null),
|
171
|
-
/*#__PURE__*/
|
172
|
-
React.createElement(ContentElementEditorCommandSubscriptionProvider, {
|
173
|
-
emitter: contentElementEditorCommandEmitter
|
174
|
-
},
|
175
|
-
/*#__PURE__*/
|
176
|
-
React.createElement(DndProvider, {
|
177
|
-
backend: HTML5Backend
|
178
|
-
}, props.children)))
|
179
|
-
);
|
157
|
+
return /*#__PURE__*/React.createElement(EditorStateProvider, null, /*#__PURE__*/React.createElement(MessageHandler, {
|
158
|
+
contentElementEditorCommandEmitter: contentElementEditorCommandEmitter
|
159
|
+
}), /*#__PURE__*/React.createElement(ScrollPointMessageHandler, null), /*#__PURE__*/React.createElement(ContentElementEditorCommandSubscriptionProvider, {
|
160
|
+
emitter: contentElementEditorCommandEmitter
|
161
|
+
}, /*#__PURE__*/React.createElement(DndProvider, {
|
162
|
+
backend: HTML5Backend
|
163
|
+
}, props.children)));
|
180
164
|
}
|
181
165
|
|
182
166
|
function MessageHandler(_ref) {
|
@@ -217,33 +201,25 @@ function Toolbar(_ref) {
|
|
217
201
|
onButtonClick = _ref.onButtonClick,
|
218
202
|
iconSize = _ref.iconSize,
|
219
203
|
collapsible = _ref.collapsible;
|
220
|
-
return (
|
221
|
-
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
|
226
|
-
|
227
|
-
|
228
|
-
|
229
|
-
|
230
|
-
|
231
|
-
|
232
|
-
|
233
|
-
|
234
|
-
|
235
|
-
|
236
|
-
|
237
|
-
|
238
|
-
|
239
|
-
/*#__PURE__*/
|
240
|
-
React.createElement(Icon, {
|
241
|
-
width: iconSize,
|
242
|
-
height: iconSize
|
243
|
-
}))
|
244
|
-
);
|
245
|
-
}))
|
246
|
-
);
|
204
|
+
return /*#__PURE__*/React.createElement("div", {
|
205
|
+
className: classNames(styles$2.Toolbar, _defineProperty({}, styles$2.collapsible, collapsible)),
|
206
|
+
contentEditable: false
|
207
|
+
}, buttons.map(function (button) {
|
208
|
+
var Icon = button.icon;
|
209
|
+
return /*#__PURE__*/React.createElement("button", {
|
210
|
+
key: button.name,
|
211
|
+
title: button.text,
|
212
|
+
className: classNames(styles$2.button, _defineProperty({}, styles$2.activeButton, button.active)),
|
213
|
+
onMouseDown: function onMouseDown(event) {
|
214
|
+
event.preventDefault();
|
215
|
+
event.stopPropagation();
|
216
|
+
onButtonClick(button.name);
|
217
|
+
}
|
218
|
+
}, /*#__PURE__*/React.createElement(Icon, {
|
219
|
+
width: iconSize,
|
220
|
+
height: iconSize
|
221
|
+
}));
|
222
|
+
}));
|
247
223
|
}
|
248
224
|
Toolbar.defaultProps = {
|
249
225
|
iconSize: 15
|
@@ -271,27 +247,31 @@ var transitionIcon = (function (_ref) {
|
|
271
247
|
styles = _ref$styles === void 0 ? {} : _ref$styles,
|
272
248
|
props = _objectWithoutProperties(_ref, ["styles"]);
|
273
249
|
|
274
|
-
return React.createElement("svg", _extends({
|
250
|
+
return /*#__PURE__*/React.createElement("svg", _extends({
|
275
251
|
"aria-hidden": "true",
|
276
252
|
"data-prefix": "fas",
|
277
253
|
"data-icon": "random",
|
278
254
|
className: (styles["svg-inline--fa"] || "svg-inline--fa") + " " + (styles["fa-random"] || "fa-random") + " " + (styles["fa-w-16"] || "fa-w-16"),
|
279
255
|
xmlns: "http://www.w3.org/2000/svg",
|
280
256
|
viewBox: "0 0 512 512"
|
281
|
-
}, props), React.createElement("path", {
|
257
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
282
258
|
fill: "currentColor",
|
283
259
|
d: "M504.971 359.029c9.373 9.373 9.373 24.569 0 33.941l-80 79.984c-15.01 15.01-40.971 4.49-40.971-16.971V416h-58.785a12.004 12.004 0 01-8.773-3.812l-70.556-75.596 53.333-57.143L352 336h32v-39.981c0-21.438 25.943-31.998 40.971-16.971l80 79.981zM12 176h84l52.781 56.551 53.333-57.143-70.556-75.596A11.999 11.999 0 00122.785 96H12c-6.627 0-12 5.373-12 12v56c0 6.627 5.373 12 12 12zm372 0v39.984c0 21.46 25.961 31.98 40.971 16.971l80-79.984c9.373-9.373 9.373-24.569 0-33.941l-80-79.981C409.943 24.021 384 34.582 384 56.019V96h-58.785a12.004 12.004 0 00-8.773 3.812L96 336H12c-6.627 0-12 5.373-12 12v56c0 6.627 5.373 12 12 12h110.785c3.326 0 6.503-1.381 8.773-3.812L352 176h32z"
|
284
260
|
}));
|
285
261
|
});
|
286
262
|
|
287
|
-
function SectionDecorator(
|
263
|
+
function SectionDecorator(_ref) {
|
264
|
+
var section = _ref.section,
|
265
|
+
contentElements = _ref.contentElements,
|
266
|
+
children = _ref.children;
|
267
|
+
|
288
268
|
var _useI18n = useI18n({
|
289
269
|
locale: 'ui'
|
290
270
|
}),
|
291
271
|
t = _useI18n.t;
|
292
272
|
|
293
273
|
var _useEditorSelection = useEditorSelection({
|
294
|
-
id:
|
274
|
+
id: section.id,
|
295
275
|
type: 'sectionSettings'
|
296
276
|
}),
|
297
277
|
isSelected = _useEditorSelection.isSelected,
|
@@ -299,14 +279,14 @@ function SectionDecorator(props) {
|
|
299
279
|
resetSelection = _useEditorSelection.resetSelection;
|
300
280
|
|
301
281
|
var transitionSelection = useEditorSelection({
|
302
|
-
id:
|
282
|
+
id: section.id,
|
303
283
|
type: 'sectionTransition'
|
304
284
|
});
|
305
285
|
var nextTransitionSelection = useEditorSelection({
|
306
|
-
id:
|
286
|
+
id: section.nextSection && section.nextSection.id,
|
307
287
|
type: 'sectionTransition'
|
308
288
|
});
|
309
|
-
var lastContentElement =
|
289
|
+
var lastContentElement = contentElements[contentElements.length - 1];
|
310
290
|
|
311
291
|
var _useEditorSelection2 = useEditorSelection({
|
312
292
|
id: lastContentElement && lastContentElement.id,
|
@@ -320,34 +300,25 @@ function SectionDecorator(props) {
|
|
320
300
|
}
|
321
301
|
}
|
322
302
|
|
323
|
-
return (
|
324
|
-
|
325
|
-
|
326
|
-
|
327
|
-
|
328
|
-
|
329
|
-
|
330
|
-
|
331
|
-
|
332
|
-
|
333
|
-
|
334
|
-
|
335
|
-
|
336
|
-
|
337
|
-
|
338
|
-
|
339
|
-
|
340
|
-
|
341
|
-
|
342
|
-
/*#__PURE__*/
|
343
|
-
React.createElement(MotifAreaVisibilityProvider, {
|
344
|
-
visible: isSelected
|
345
|
-
},
|
346
|
-
/*#__PURE__*/
|
347
|
-
React.createElement(ForcePaddingContext.Provider, {
|
348
|
-
value: isLastContentElementSelected || isSelected
|
349
|
-
}, props.children)))
|
350
|
-
);
|
303
|
+
return /*#__PURE__*/React.createElement("div", {
|
304
|
+
"aria-label": t('pageflow_scrolled.inline_editing.select_section'),
|
305
|
+
className: className(isSelected, transitionSelection),
|
306
|
+
onMouseDown: selectIfOutsideContentItem
|
307
|
+
}, /*#__PURE__*/React.createElement("div", {
|
308
|
+
className: styles.controls
|
309
|
+
}, renderEditTransitionButton({
|
310
|
+
id: section.previousSection && section.id,
|
311
|
+
selection: transitionSelection,
|
312
|
+
position: 'before'
|
313
|
+
}), renderEditTransitionButton({
|
314
|
+
id: section.nextSection && section.nextSection.id,
|
315
|
+
selection: nextTransitionSelection,
|
316
|
+
position: 'after'
|
317
|
+
})), /*#__PURE__*/React.createElement(MotifAreaVisibilityProvider, {
|
318
|
+
visible: isSelected
|
319
|
+
}, /*#__PURE__*/React.createElement(ForcePaddingContext.Provider, {
|
320
|
+
value: isLastContentElementSelected || isSelected
|
321
|
+
}, children)));
|
351
322
|
}
|
352
323
|
|
353
324
|
function className(isSectionSelected, transitionSelection) {
|
@@ -356,70 +327,59 @@ function className(isSectionSelected, transitionSelection) {
|
|
356
327
|
return classNames(styles.wrapper, (_classNames = {}, _defineProperty(_classNames, styles.selected, isSectionSelected), _defineProperty(_classNames, styles.transitionSelected, transitionSelection.isSelected), _classNames));
|
357
328
|
}
|
358
329
|
|
359
|
-
function renderEditTransitionButton(
|
360
|
-
var id =
|
361
|
-
position =
|
362
|
-
selection =
|
330
|
+
function renderEditTransitionButton(_ref2) {
|
331
|
+
var id = _ref2.id,
|
332
|
+
position = _ref2.position,
|
333
|
+
selection = _ref2.selection;
|
363
334
|
|
364
335
|
if (!id) {
|
365
336
|
return null;
|
366
337
|
}
|
367
338
|
|
368
|
-
return (
|
369
|
-
|
370
|
-
|
371
|
-
|
372
|
-
|
373
|
-
|
374
|
-
|
375
|
-
id: id,
|
376
|
-
selection: selection,
|
377
|
-
position: position
|
378
|
-
}))
|
379
|
-
);
|
339
|
+
return /*#__PURE__*/React.createElement("div", {
|
340
|
+
className: styles["transitionToolbar-".concat(position)]
|
341
|
+
}, /*#__PURE__*/React.createElement(EditTransitionButton, {
|
342
|
+
id: id,
|
343
|
+
selection: selection,
|
344
|
+
position: position
|
345
|
+
}));
|
380
346
|
}
|
381
347
|
|
382
|
-
function EditTransitionButton(
|
383
|
-
var id =
|
384
|
-
position =
|
385
|
-
selection =
|
348
|
+
function EditTransitionButton(_ref3) {
|
349
|
+
var id = _ref3.id,
|
350
|
+
position = _ref3.position,
|
351
|
+
selection = _ref3.selection;
|
386
352
|
|
387
353
|
var _useI18n2 = useI18n({
|
388
354
|
locale: 'ui'
|
389
355
|
}),
|
390
356
|
t = _useI18n2.t;
|
391
357
|
|
392
|
-
return (
|
393
|
-
|
394
|
-
|
395
|
-
|
396
|
-
|
397
|
-
|
398
|
-
icon: transitionIcon
|
399
|
-
})
|
400
|
-
);
|
358
|
+
return /*#__PURE__*/React.createElement(EditSectionButton, {
|
359
|
+
id: id,
|
360
|
+
selection: selection,
|
361
|
+
text: t("pageflow_scrolled.inline_editing.edit_section_transition_".concat(position)),
|
362
|
+
icon: transitionIcon
|
363
|
+
});
|
401
364
|
}
|
402
365
|
|
403
|
-
function EditSectionButton(
|
404
|
-
var id =
|
405
|
-
selection =
|
406
|
-
icon =
|
407
|
-
text =
|
408
|
-
return (
|
409
|
-
|
410
|
-
|
411
|
-
|
412
|
-
|
413
|
-
|
414
|
-
|
415
|
-
|
416
|
-
|
417
|
-
|
418
|
-
|
419
|
-
|
420
|
-
}
|
421
|
-
})
|
422
|
-
);
|
366
|
+
function EditSectionButton(_ref4) {
|
367
|
+
var id = _ref4.id,
|
368
|
+
selection = _ref4.selection,
|
369
|
+
icon = _ref4.icon,
|
370
|
+
text = _ref4.text;
|
371
|
+
return /*#__PURE__*/React.createElement(Toolbar, {
|
372
|
+
buttons: [{
|
373
|
+
name: 'button',
|
374
|
+
active: selection.isSelected,
|
375
|
+
icon: icon,
|
376
|
+
text: text
|
377
|
+
}],
|
378
|
+
iconSize: 20,
|
379
|
+
onButtonClick: function onButtonClick() {
|
380
|
+
return selection.select();
|
381
|
+
}
|
382
|
+
});
|
423
383
|
}
|
424
384
|
|
425
385
|
var styles$3 = {"selectionWidth":"1px","selectionPadding":"-6px","selectionPadding2":"-0.5em","main":"SelectionRect-module_main__3AOhG","draggable":"SelectionRect-module_draggable__3Qp53","full":"SelectionRect-module_full__3tsQF","selected":"SelectionRect-module_selected__1PhM6","toolbar":"SelectionRect-module_toolbar__3nPrd","insert":"SelectionRect-module_insert__w0Tl0","insertHovered":"SelectionRect-module_insertHovered__VTsDD","start":"SelectionRect-module_start__3_nAf","insert-before":"SelectionRect-module_insert-before__2Tyq5 SelectionRect-module_insert__w0Tl0","end":"SelectionRect-module_end__3qOoK","insert-after":"SelectionRect-module_insert-after__3FJ4R SelectionRect-module_insert__w0Tl0","insertButton":"SelectionRect-module_insertButton__1g-ZG","dragHandle":"SelectionRect-module_dragHandle__2vVhP"};
|
@@ -445,10 +405,10 @@ var PlusIcon = (function (_ref) {
|
|
445
405
|
var _ref$styles = _ref.styles,
|
446
406
|
props = _objectWithoutProperties(_ref, ["styles"]);
|
447
407
|
|
448
|
-
return React.createElement("svg", _extends$1({
|
408
|
+
return /*#__PURE__*/React.createElement("svg", _extends$1({
|
449
409
|
xmlns: "http://www.w3.org/2000/svg",
|
450
410
|
viewBox: "0 0 512 512"
|
451
|
-
}, props), React.createElement("path", {
|
411
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
452
412
|
d: "M256 0C114.844 0 0 114.839 0 256s114.844 256 256 256 256-114.839 256-256S397.156 0 256 0zm133.594 272.699H272.699v116.895c0 9.225-7.48 16.699-16.699 16.699-9.219 0-16.699-7.475-16.699-16.699V272.699H122.406c-9.219 0-16.699-7.475-16.699-16.699 0-9.225 7.48-16.699 16.699-16.699h116.895V122.406c0-9.225 7.48-16.699 16.699-16.699 9.219 0 16.699 7.475 16.699 16.699v116.895h116.895c9.219 0 16.699 7.475 16.699 16.699.001 9.225-7.48 16.699-16.699 16.699z"
|
453
413
|
}));
|
454
414
|
});
|
@@ -475,14 +435,14 @@ var MoveIcon = (function (_ref) {
|
|
475
435
|
styles = _ref$styles === void 0 ? {} : _ref$styles,
|
476
436
|
props = _objectWithoutProperties(_ref, ["styles"]);
|
477
437
|
|
478
|
-
return React.createElement("svg", _extends$2({
|
438
|
+
return /*#__PURE__*/React.createElement("svg", _extends$2({
|
479
439
|
"aria-hidden": "true",
|
480
440
|
"data-prefix": "fas",
|
481
441
|
"data-icon": "arrows-alt",
|
482
442
|
className: (styles["svg-inline--fa"] || "svg-inline--fa") + " " + (styles["fa-arrows-alt"] || "fa-arrows-alt") + " " + (styles["fa-w-16"] || "fa-w-16"),
|
483
443
|
xmlns: "http://www.w3.org/2000/svg",
|
484
444
|
viewBox: "0 0 512 512"
|
485
|
-
}, props), React.createElement("path", {
|
445
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
486
446
|
fill: "currentColor",
|
487
447
|
d: "M352.201 425.775l-79.196 79.196c-9.373 9.373-24.568 9.373-33.941 0l-79.196-79.196c-15.119-15.119-4.411-40.971 16.971-40.97h51.162L228 284H127.196v51.162c0 21.382-25.851 32.09-40.971 16.971L7.029 272.937c-9.373-9.373-9.373-24.569 0-33.941L86.225 159.8c15.119-15.119 40.971-4.411 40.971 16.971V228H228V127.196h-51.23c-21.382 0-32.09-25.851-16.971-40.971l79.196-79.196c9.373-9.373 24.568-9.373 33.941 0l79.196 79.196c15.119 15.119 4.411 40.971-16.971 40.971h-51.162V228h100.804v-51.162c0-21.382 25.851-32.09 40.97-16.971l79.196 79.196c9.373 9.373 9.373 24.569 0 33.941L425.773 352.2c-15.119 15.119-40.971 4.411-40.97-16.971V284H284v100.804h51.23c21.382 0 32.09 25.851 16.971 40.971z"
|
488
448
|
}));
|
@@ -491,23 +451,16 @@ var MoveIcon = (function (_ref) {
|
|
491
451
|
function SelectionRect(props) {
|
492
452
|
var _classNames;
|
493
453
|
|
494
|
-
return (
|
495
|
-
|
496
|
-
|
497
|
-
|
498
|
-
|
499
|
-
|
500
|
-
|
501
|
-
|
502
|
-
|
503
|
-
|
504
|
-
at: "before"
|
505
|
-
})), props.children,
|
506
|
-
/*#__PURE__*/
|
507
|
-
React.createElement(InsertButton, Object.assign({}, props, {
|
508
|
-
at: "after"
|
509
|
-
})))
|
510
|
-
);
|
454
|
+
return /*#__PURE__*/React.createElement("div", {
|
455
|
+
className: classNames(styles$3.main, (_classNames = {}, _defineProperty(_classNames, styles$3.full, props.full), _defineProperty(_classNames, styles$3.selected, props.selected), _defineProperty(_classNames, styles$3.draggable, props.drag), _defineProperty(_classNames, styles$3.start, props.selected && props.start), _defineProperty(_classNames, styles$3.end, props.selected && props.end), _classNames)),
|
456
|
+
"aria-label": props.ariaLabel,
|
457
|
+
"data-scrollpoint": props.scrollPoint ? 'selection' : undefined,
|
458
|
+
onClick: props.onClick
|
459
|
+
}, renderDragHandle(props), renderToolbar(props), /*#__PURE__*/React.createElement(InsertButton, Object.assign({}, props, {
|
460
|
+
at: "before"
|
461
|
+
})), props.children, /*#__PURE__*/React.createElement(InsertButton, Object.assign({}, props, {
|
462
|
+
at: "after"
|
463
|
+
})));
|
511
464
|
}
|
512
465
|
|
513
466
|
function InsertButton(props) {
|
@@ -516,33 +469,26 @@ function InsertButton(props) {
|
|
516
469
|
insertHovered = _useState2[0],
|
517
470
|
setInsertHovered = _useState2[1];
|
518
471
|
|
519
|
-
return (
|
520
|
-
|
521
|
-
|
522
|
-
|
523
|
-
|
472
|
+
return /*#__PURE__*/React.createElement("div", {
|
473
|
+
className: classNames(styles$3["insert-".concat(props.at)], _defineProperty({}, styles$3.insertHovered, insertHovered)),
|
474
|
+
contentEditable: false
|
475
|
+
}, /*#__PURE__*/React.createElement("button", {
|
476
|
+
className: styles$3.insertButton,
|
477
|
+
title: props.insertButtonTitles && props.insertButtonTitles[props.at],
|
478
|
+
onClick: function onClick() {
|
479
|
+
return props.onInsertButtonClick(props.at);
|
524
480
|
},
|
525
|
-
|
526
|
-
|
527
|
-
className: styles$3.insertButton,
|
528
|
-
title: props.insertButtonTitles && props.insertButtonTitles[props.at],
|
529
|
-
onClick: function onClick() {
|
530
|
-
return props.onInsertButtonClick(props.at);
|
531
|
-
},
|
532
|
-
onMouseEnter: function onMouseEnter() {
|
533
|
-
return setInsertHovered(true);
|
534
|
-
},
|
535
|
-
onMouseLeave: function onMouseLeave() {
|
536
|
-
return setInsertHovered(false);
|
537
|
-
}
|
481
|
+
onMouseEnter: function onMouseEnter() {
|
482
|
+
return setInsertHovered(true);
|
538
483
|
},
|
539
|
-
|
540
|
-
|
541
|
-
|
542
|
-
|
543
|
-
|
544
|
-
|
545
|
-
|
484
|
+
onMouseLeave: function onMouseLeave() {
|
485
|
+
return setInsertHovered(false);
|
486
|
+
}
|
487
|
+
}, /*#__PURE__*/React.createElement(PlusIcon, {
|
488
|
+
width: 15,
|
489
|
+
height: 15,
|
490
|
+
fill: "currentColor"
|
491
|
+
})));
|
546
492
|
}
|
547
493
|
|
548
494
|
function renderDragHandle(_ref) {
|
@@ -553,16 +499,11 @@ function renderDragHandle(_ref) {
|
|
553
499
|
return null;
|
554
500
|
}
|
555
501
|
|
556
|
-
return (
|
557
|
-
|
558
|
-
|
559
|
-
|
560
|
-
|
561
|
-
title: dragHandleTitle
|
562
|
-
},
|
563
|
-
/*#__PURE__*/
|
564
|
-
React.createElement(MoveIcon, null))
|
565
|
-
);
|
502
|
+
return /*#__PURE__*/React.createElement("div", {
|
503
|
+
ref: drag,
|
504
|
+
className: styles$3.dragHandle,
|
505
|
+
title: dragHandleTitle
|
506
|
+
}, /*#__PURE__*/React.createElement(MoveIcon, null));
|
566
507
|
}
|
567
508
|
|
568
509
|
function renderToolbar(_ref2) {
|
@@ -571,18 +512,13 @@ function renderToolbar(_ref2) {
|
|
571
512
|
start = _ref2.start;
|
572
513
|
|
573
514
|
if (toolbarButtons && start) {
|
574
|
-
return (
|
575
|
-
|
576
|
-
|
577
|
-
|
578
|
-
|
579
|
-
|
580
|
-
|
581
|
-
buttons: toolbarButtons,
|
582
|
-
collapsible: true,
|
583
|
-
onButtonClick: onToolbarButtonClick
|
584
|
-
}))
|
585
|
-
);
|
515
|
+
return /*#__PURE__*/React.createElement("div", {
|
516
|
+
className: styles$3.toolbar
|
517
|
+
}, /*#__PURE__*/React.createElement(Toolbar, {
|
518
|
+
buttons: toolbarButtons,
|
519
|
+
collapsible: true,
|
520
|
+
onButtonClick: onToolbarButtonClick
|
521
|
+
}));
|
586
522
|
}
|
587
523
|
}
|
588
524
|
|
@@ -615,7 +551,8 @@ function DropTargets(_ref) {
|
|
615
551
|
drop: function drop(item) {
|
616
552
|
return onDrop({
|
617
553
|
at: 'before',
|
618
|
-
id: item.id
|
554
|
+
id: item.id,
|
555
|
+
range: item.range
|
619
556
|
});
|
620
557
|
}
|
621
558
|
}),
|
@@ -642,7 +579,8 @@ function DropTargets(_ref) {
|
|
642
579
|
drop: function drop(item) {
|
643
580
|
return onDrop({
|
644
581
|
at: 'after',
|
645
|
-
id: item.id
|
582
|
+
id: item.id,
|
583
|
+
range: item.range
|
646
584
|
});
|
647
585
|
}
|
648
586
|
}),
|
@@ -652,23 +590,16 @@ function DropTargets(_ref) {
|
|
652
590
|
isAfter = _useDrop4$.isAfter,
|
653
591
|
dropAfter = _useDrop4[1];
|
654
592
|
|
655
|
-
return (
|
656
|
-
|
657
|
-
|
658
|
-
|
659
|
-
|
660
|
-
|
661
|
-
|
662
|
-
|
663
|
-
}
|
664
|
-
|
665
|
-
React.createElement("div", {
|
666
|
-
ref: dropAfter,
|
667
|
-
"data-testid": "drop-after",
|
668
|
-
title: "bar",
|
669
|
-
className: classNames(styles$4.after, _defineProperty({}, styles$4.isOver, isAfter))
|
670
|
-
}))
|
671
|
-
);
|
593
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, canDropBefore && /*#__PURE__*/React.createElement("div", {
|
594
|
+
ref: dropBefore,
|
595
|
+
"data-testid": "drop-before",
|
596
|
+
className: classNames(styles$4.before, _defineProperty({}, styles$4.isOver, isBefore))
|
597
|
+
}), canDropAfter && /*#__PURE__*/React.createElement("div", {
|
598
|
+
ref: dropAfter,
|
599
|
+
"data-testid": "drop-after",
|
600
|
+
title: "bar",
|
601
|
+
className: classNames(styles$4.after, _defineProperty({}, styles$4.isOver, isAfter))
|
602
|
+
}));
|
672
603
|
}
|
673
604
|
|
674
605
|
function postInsertContentElementMessage(_ref) {
|
@@ -686,11 +617,13 @@ function postInsertContentElementMessage(_ref) {
|
|
686
617
|
}
|
687
618
|
function postMoveContentElementMessage(_ref2) {
|
688
619
|
var id = _ref2.id,
|
620
|
+
range = _ref2.range,
|
689
621
|
to = _ref2.to;
|
690
622
|
window.parent.postMessage({
|
691
623
|
type: 'MOVE_CONTENT_ELEMENT',
|
692
624
|
payload: {
|
693
625
|
id: id,
|
626
|
+
range: range,
|
694
627
|
to: to
|
695
628
|
}
|
696
629
|
}, window.location.origin);
|
@@ -734,12 +667,9 @@ function ContentElementConfigurationUpdateProvider(_ref) {
|
|
734
667
|
configuration: configuration
|
735
668
|
});
|
736
669
|
}, [dispatch, permaId, id]);
|
737
|
-
return (
|
738
|
-
|
739
|
-
|
740
|
-
value: update
|
741
|
-
}, children)
|
742
|
-
);
|
670
|
+
return /*#__PURE__*/React.createElement(ContentElementConfigurationUpdateContext.Provider, {
|
671
|
+
value: update
|
672
|
+
}, children);
|
743
673
|
}
|
744
674
|
|
745
675
|
function ContentElementEditorStateProvider(_ref) {
|
@@ -751,7 +681,8 @@ function ContentElementEditorStateProvider(_ref) {
|
|
751
681
|
type: 'contentElement'
|
752
682
|
}),
|
753
683
|
isSelected = _useEditorSelection.isSelected,
|
754
|
-
select = _useEditorSelection.select
|
684
|
+
select = _useEditorSelection.select,
|
685
|
+
range = _useEditorSelection.range;
|
755
686
|
|
756
687
|
var previousTransientState = useRef({});
|
757
688
|
var setTransientState = useCallback(function (state) {
|
@@ -768,15 +699,13 @@ function ContentElementEditorStateProvider(_ref) {
|
|
768
699
|
isEditable: true,
|
769
700
|
select: select,
|
770
701
|
isSelected: isSelected,
|
702
|
+
range: range,
|
771
703
|
setTransientState: setTransientState
|
772
704
|
};
|
773
|
-
}, [select, isSelected, setTransientState]);
|
774
|
-
return (
|
775
|
-
|
776
|
-
|
777
|
-
value: value
|
778
|
-
}, children)
|
779
|
-
);
|
705
|
+
}, [select, isSelected, range, setTransientState]);
|
706
|
+
return /*#__PURE__*/React.createElement(ContentElementEditorStateContext.Provider, {
|
707
|
+
value: value
|
708
|
+
}, children);
|
780
709
|
}
|
781
710
|
|
782
711
|
function shallowEqual(obj1, obj2) {
|
@@ -786,24 +715,15 @@ function shallowEqual(obj1, obj2) {
|
|
786
715
|
}
|
787
716
|
|
788
717
|
function ContentElementDecorator(props) {
|
789
|
-
return (
|
790
|
-
|
791
|
-
|
792
|
-
|
793
|
-
|
794
|
-
|
795
|
-
|
796
|
-
|
797
|
-
|
798
|
-
},
|
799
|
-
/*#__PURE__*/
|
800
|
-
React.createElement(OptionalSelectionRect, props,
|
801
|
-
/*#__PURE__*/
|
802
|
-
React.createElement(ContentElementConfigurationUpdateProvider, {
|
803
|
-
id: props.id,
|
804
|
-
permaId: props.permaId
|
805
|
-
}, props.children))))
|
806
|
-
);
|
718
|
+
return /*#__PURE__*/React.createElement("div", {
|
719
|
+
className: styles$1.wrapper,
|
720
|
+
"data-scrollpoint": props.id
|
721
|
+
}, /*#__PURE__*/React.createElement(ContentElementEditorStateProvider, {
|
722
|
+
id: props.id
|
723
|
+
}, /*#__PURE__*/React.createElement(OptionalSelectionRect, props, /*#__PURE__*/React.createElement(ContentElementConfigurationUpdateProvider, {
|
724
|
+
id: props.id,
|
725
|
+
permaId: props.permaId
|
726
|
+
}, props.children))));
|
807
727
|
}
|
808
728
|
|
809
729
|
function OptionalSelectionRect(props) {
|
@@ -813,10 +733,7 @@ function OptionalSelectionRect(props) {
|
|
813
733
|
if (customSelectionRect) {
|
814
734
|
return props.children;
|
815
735
|
} else {
|
816
|
-
return (
|
817
|
-
/*#__PURE__*/
|
818
|
-
React.createElement(DefaultSelectionRect, props, props.children)
|
819
|
-
);
|
736
|
+
return /*#__PURE__*/React.createElement(DefaultSelectionRect, props, props.children);
|
820
737
|
}
|
821
738
|
}
|
822
739
|
|
@@ -840,50 +757,45 @@ function DefaultSelectionRect(props) {
|
|
840
757
|
drag = _useDrag2[1],
|
841
758
|
preview = _useDrag2[2];
|
842
759
|
|
843
|
-
return (
|
844
|
-
|
845
|
-
|
846
|
-
|
847
|
-
|
848
|
-
|
849
|
-
|
850
|
-
|
851
|
-
|
852
|
-
|
853
|
-
|
854
|
-
|
855
|
-
|
856
|
-
|
857
|
-
|
760
|
+
return /*#__PURE__*/React.createElement(SelectionRect, {
|
761
|
+
selected: isSelected,
|
762
|
+
scrollPoint: isSelected,
|
763
|
+
drag: drag,
|
764
|
+
dragHandleTitle: t('pageflow_scrolled.inline_editing.drag_content_element'),
|
765
|
+
full: props.position === 'full',
|
766
|
+
ariaLabel: t('pageflow_scrolled.inline_editing.select_content_element'),
|
767
|
+
insertButtonTitles: t('pageflow_scrolled.inline_editing.insert_content_element'),
|
768
|
+
onClick: function onClick() {
|
769
|
+
return select();
|
770
|
+
},
|
771
|
+
onInsertButtonClick: function onInsertButtonClick(at) {
|
772
|
+
return postInsertContentElementMessage({
|
773
|
+
id: props.id,
|
774
|
+
at: at
|
775
|
+
});
|
776
|
+
}
|
777
|
+
}, /*#__PURE__*/React.createElement("div", {
|
778
|
+
ref: preview
|
779
|
+
}, props.children), /*#__PURE__*/React.createElement(DropTargets, {
|
780
|
+
accept: "contentElement",
|
781
|
+
canDrop: function canDrop(_ref2) {
|
782
|
+
var id = _ref2.id;
|
783
|
+
return id !== props.id;
|
784
|
+
},
|
785
|
+
onDrop: function onDrop(_ref3) {
|
786
|
+
var id = _ref3.id,
|
787
|
+
range = _ref3.range,
|
788
|
+
at = _ref3.at;
|
789
|
+
return postMoveContentElementMessage({
|
790
|
+
id: id,
|
791
|
+
range: range,
|
792
|
+
to: {
|
858
793
|
id: props.id,
|
859
794
|
at: at
|
860
|
-
}
|
861
|
-
}
|
862
|
-
}
|
863
|
-
|
864
|
-
React.createElement("div", {
|
865
|
-
ref: preview
|
866
|
-
}, props.children),
|
867
|
-
/*#__PURE__*/
|
868
|
-
React.createElement(DropTargets, {
|
869
|
-
accept: "contentElement",
|
870
|
-
canDrop: function canDrop(_ref2) {
|
871
|
-
var id = _ref2.id;
|
872
|
-
return id !== props.id;
|
873
|
-
},
|
874
|
-
onDrop: function onDrop(_ref3) {
|
875
|
-
var id = _ref3.id,
|
876
|
-
at = _ref3.at;
|
877
|
-
return postMoveContentElementMessage({
|
878
|
-
id: id,
|
879
|
-
to: {
|
880
|
-
id: props.id,
|
881
|
-
at: at
|
882
|
-
}
|
883
|
-
});
|
884
|
-
}
|
885
|
-
}))
|
886
|
-
);
|
795
|
+
}
|
796
|
+
});
|
797
|
+
}
|
798
|
+
}));
|
887
799
|
}
|
888
800
|
|
889
801
|
var styles$5 = {"container":"ContentElementInsertButton-module_container__3dvUS","hovered":"ContentElementInsertButton-module_hovered__3Pggi","button":"ContentElementInsertButton-module_button__2-eE2"};
|
@@ -901,33 +813,26 @@ function ContentElementInsertButton(_ref) {
|
|
901
813
|
}),
|
902
814
|
t = _useI18n.t;
|
903
815
|
|
904
|
-
return (
|
905
|
-
|
906
|
-
|
907
|
-
|
816
|
+
return /*#__PURE__*/React.createElement("div", {
|
817
|
+
className: classNames(styles$5.container, _defineProperty({}, styles$5.hovered, hovered))
|
818
|
+
}, /*#__PURE__*/React.createElement("button", {
|
819
|
+
className: styles$5.button,
|
820
|
+
title: t('pageflow_scrolled.inline_editing.add_content_element'),
|
821
|
+
onClick: onClick,
|
822
|
+
onMouseDown: function onMouseDown(event) {
|
823
|
+
return event.stopPropagation();
|
908
824
|
},
|
909
|
-
|
910
|
-
|
911
|
-
className: styles$5.button,
|
912
|
-
title: t('pageflow_scrolled.inline_editing.add_content_element'),
|
913
|
-
onClick: onClick,
|
914
|
-
onMouseDown: function onMouseDown(event) {
|
915
|
-
return event.stopPropagation();
|
916
|
-
},
|
917
|
-
onMouseEnter: function onMouseEnter() {
|
918
|
-
return setHovered(true);
|
919
|
-
},
|
920
|
-
onMouseLeave: function onMouseLeave() {
|
921
|
-
return setHovered(false);
|
922
|
-
}
|
825
|
+
onMouseEnter: function onMouseEnter() {
|
826
|
+
return setHovered(true);
|
923
827
|
},
|
924
|
-
|
925
|
-
|
926
|
-
|
927
|
-
|
928
|
-
|
929
|
-
|
930
|
-
|
828
|
+
onMouseLeave: function onMouseLeave() {
|
829
|
+
return setHovered(false);
|
830
|
+
}
|
831
|
+
}, /*#__PURE__*/React.createElement(PlusIcon, {
|
832
|
+
width: 15,
|
833
|
+
height: 15,
|
834
|
+
fill: "currentColor"
|
835
|
+
})));
|
931
836
|
}
|
932
837
|
|
933
838
|
function LayoutWithPlaceholder(props) {
|
@@ -943,9 +848,7 @@ function LayoutWithPlaceholder(props) {
|
|
943
848
|
}),
|
944
849
|
settingsSelected = _useEditorSelection2.isSelected;
|
945
850
|
|
946
|
-
var placeholder = isSelected || settingsSelected ?
|
947
|
-
/*#__PURE__*/
|
948
|
-
React.createElement(ContentElementInsertButton, {
|
851
|
+
var placeholder = isSelected || settingsSelected ? /*#__PURE__*/React.createElement(ContentElementInsertButton, {
|
949
852
|
onClick: function onClick() {
|
950
853
|
return postInsertContentElementMessage({
|
951
854
|
at: 'endOfSection',
|
@@ -953,12 +856,9 @@ function LayoutWithPlaceholder(props) {
|
|
953
856
|
});
|
954
857
|
}
|
955
858
|
}) : null;
|
956
|
-
return (
|
957
|
-
|
958
|
-
|
959
|
-
placeholder: placeholder
|
960
|
-
}))
|
961
|
-
);
|
859
|
+
return /*#__PURE__*/React.createElement(LayoutWithoutInlineEditing, Object.assign({}, props, {
|
860
|
+
placeholder: placeholder
|
861
|
+
}));
|
962
862
|
}
|
963
863
|
|
964
864
|
function useCachedValue(value) {
|
@@ -1028,14 +928,9 @@ function TextPlaceholder(_ref) {
|
|
1028
928
|
return null;
|
1029
929
|
}
|
1030
930
|
|
1031
|
-
return (
|
1032
|
-
|
1033
|
-
|
1034
|
-
className: styles$6.placeholder
|
1035
|
-
},
|
1036
|
-
/*#__PURE__*/
|
1037
|
-
React.createElement("div", null, text))
|
1038
|
-
);
|
931
|
+
return /*#__PURE__*/React.createElement("div", {
|
932
|
+
className: styles$6.placeholder
|
933
|
+
}, /*#__PURE__*/React.createElement("div", null, text));
|
1039
934
|
}
|
1040
935
|
|
1041
936
|
function withCustomInsertBreak(editor) {
|
@@ -1098,14 +993,14 @@ var ExternalLinkIcon = (function (_ref) {
|
|
1098
993
|
styles = _ref$styles === void 0 ? {} : _ref$styles,
|
1099
994
|
props = _objectWithoutProperties(_ref, ["styles"]);
|
1100
995
|
|
1101
|
-
return React.createElement("svg", _extends$3({
|
996
|
+
return /*#__PURE__*/React.createElement("svg", _extends$3({
|
1102
997
|
"aria-hidden": "true",
|
1103
998
|
"data-prefix": "fas",
|
1104
999
|
"data-icon": "external-link-alt",
|
1105
1000
|
className: (styles["svg-inline--fa"] || "svg-inline--fa") + " " + (styles["fa-external-link-alt"] || "fa-external-link-alt") + " " + (styles["fa-w-16"] || "fa-w-16"),
|
1106
1001
|
xmlns: "http://www.w3.org/2000/svg",
|
1107
1002
|
viewBox: "0 0 512 512"
|
1108
|
-
}, props), React.createElement("path", {
|
1003
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1109
1004
|
fill: "currentColor",
|
1110
1005
|
d: "M432 320h-32a16 16 0 00-16 16v112H64V128h144a16 16 0 0016-16V80a16 16 0 00-16-16H48a48 48 0 00-48 48v352a48 48 0 0048 48h352a48 48 0 0048-48V336a16 16 0 00-16-16zM488 0H360c-21.37 0-32.05 25.91-17 41l35.73 35.73L135 320.37a24 24 0 000 34L157.67 377a24 24 0 0034 0l243.61-243.68L471 169c15 15 41 4.5 41-17V24a24 24 0 00-24-24z"
|
1111
1006
|
}));
|
@@ -1152,26 +1047,15 @@ function LinkTooltipProvider(_ref) {
|
|
1152
1047
|
}
|
1153
1048
|
};
|
1154
1049
|
}, []);
|
1155
|
-
return (
|
1156
|
-
|
1157
|
-
|
1158
|
-
|
1159
|
-
|
1160
|
-
|
1161
|
-
|
1162
|
-
|
1163
|
-
|
1164
|
-
/*#__PURE__*/
|
1165
|
-
React.createElement(UpdateContext.Provider, {
|
1166
|
-
value: update
|
1167
|
-
},
|
1168
|
-
/*#__PURE__*/
|
1169
|
-
React.createElement("div", {
|
1170
|
-
ref: outerRef
|
1171
|
-
},
|
1172
|
-
/*#__PURE__*/
|
1173
|
-
React.createElement(LinkTooltip, null), children))))
|
1174
|
-
);
|
1050
|
+
return /*#__PURE__*/React.createElement(DisabledContext.Provider, {
|
1051
|
+
value: disabled
|
1052
|
+
}, /*#__PURE__*/React.createElement(StateContext.Provider, {
|
1053
|
+
value: state
|
1054
|
+
}, /*#__PURE__*/React.createElement(UpdateContext.Provider, {
|
1055
|
+
value: update
|
1056
|
+
}, /*#__PURE__*/React.createElement("div", {
|
1057
|
+
ref: outerRef
|
1058
|
+
}, /*#__PURE__*/React.createElement(LinkTooltip, null), children))));
|
1175
1059
|
}
|
1176
1060
|
function LinkPreview(_ref2) {
|
1177
1061
|
var href = _ref2.href,
|
@@ -1182,17 +1066,14 @@ function LinkPreview(_ref2) {
|
|
1182
1066
|
deactivate = _useContext.deactivate;
|
1183
1067
|
|
1184
1068
|
var ref = useRef();
|
1185
|
-
return (
|
1186
|
-
|
1187
|
-
|
1188
|
-
|
1189
|
-
|
1190
|
-
|
1191
|
-
|
1192
|
-
|
1193
|
-
onMouseDown: deactivate
|
1194
|
-
}, children)
|
1195
|
-
);
|
1069
|
+
return /*#__PURE__*/React.createElement("span", {
|
1070
|
+
ref: ref,
|
1071
|
+
onMouseEnter: function onMouseEnter() {
|
1072
|
+
return activate(href, ref);
|
1073
|
+
},
|
1074
|
+
onMouseLeave: deactivate,
|
1075
|
+
onMouseDown: deactivate
|
1076
|
+
}, children);
|
1196
1077
|
}
|
1197
1078
|
function LinkTooltip() {
|
1198
1079
|
var disabled = useContext(DisabledContext);
|
@@ -1208,30 +1089,23 @@ function LinkTooltip() {
|
|
1208
1089
|
return null;
|
1209
1090
|
}
|
1210
1091
|
|
1211
|
-
return (
|
1212
|
-
|
1213
|
-
|
1214
|
-
|
1215
|
-
|
1216
|
-
|
1217
|
-
|
1218
|
-
|
1219
|
-
|
1220
|
-
|
1221
|
-
|
1222
|
-
|
1223
|
-
|
1224
|
-
|
1225
|
-
|
1226
|
-
|
1227
|
-
|
1228
|
-
}, state.href,
|
1229
|
-
/*#__PURE__*/
|
1230
|
-
React.createElement(ExternalLinkIcon, {
|
1231
|
-
width: 10,
|
1232
|
-
height: 10
|
1233
|
-
})))
|
1234
|
-
);
|
1092
|
+
return /*#__PURE__*/React.createElement("div", {
|
1093
|
+
className: classNames(styles$7.linkTooltip, styles$7.hoveringToolbar),
|
1094
|
+
onMouseEnter: keep,
|
1095
|
+
onMouseLeave: deactivate,
|
1096
|
+
style: {
|
1097
|
+
top: state.top,
|
1098
|
+
left: state.left,
|
1099
|
+
opacity: 1
|
1100
|
+
}
|
1101
|
+
}, /*#__PURE__*/React.createElement("a", {
|
1102
|
+
href: state.href,
|
1103
|
+
target: "_blank",
|
1104
|
+
rel: "noopener noreferrer"
|
1105
|
+
}, state.href, /*#__PURE__*/React.createElement(ExternalLinkIcon, {
|
1106
|
+
width: 10,
|
1107
|
+
height: 10
|
1108
|
+
})));
|
1235
1109
|
}
|
1236
1110
|
|
1237
1111
|
function withLinks(editor) {
|
@@ -1245,29 +1119,23 @@ function withLinks(editor) {
|
|
1245
1119
|
}
|
1246
1120
|
function renderElementWithLinkPreview(options) {
|
1247
1121
|
if (options.element.type === 'link') {
|
1248
|
-
return (
|
1249
|
-
|
1250
|
-
|
1251
|
-
href: options.element.href
|
1252
|
-
}, renderElement(options))
|
1253
|
-
);
|
1122
|
+
return /*#__PURE__*/React.createElement(LinkPreview, {
|
1123
|
+
href: options.element.href
|
1124
|
+
}, renderElement(options));
|
1254
1125
|
} else {
|
1255
1126
|
return renderElement(options);
|
1256
1127
|
}
|
1257
1128
|
}
|
1258
1129
|
function renderLeafWithLinkSelection(options) {
|
1259
1130
|
if (options.leaf.linkSelection) {
|
1260
|
-
return (
|
1261
|
-
|
1262
|
-
|
1263
|
-
|
1264
|
-
|
1265
|
-
}
|
1266
|
-
}), renderLeaf(options))
|
1267
|
-
);
|
1131
|
+
return /*#__PURE__*/React.createElement("span", Object.assign({}, options.attributes, {
|
1132
|
+
style: {
|
1133
|
+
backgroundColor: '#aaa'
|
1134
|
+
}
|
1135
|
+
}), renderLeaf$1(options));
|
1268
1136
|
}
|
1269
1137
|
|
1270
|
-
return renderLeaf(options);
|
1138
|
+
return renderLeaf$1(options);
|
1271
1139
|
}
|
1272
1140
|
function decorateLinkSelection(_ref, linkSelection) {
|
1273
1141
|
var _ref2 = _slicedToArray(_ref, 2),
|
@@ -1360,14 +1228,14 @@ var CancelIcon = (function (_ref) {
|
|
1360
1228
|
styles = _ref$styles === void 0 ? {} : _ref$styles,
|
1361
1229
|
props = _objectWithoutProperties(_ref, ["styles"]);
|
1362
1230
|
|
1363
|
-
return React.createElement("svg", _extends$4({
|
1231
|
+
return /*#__PURE__*/React.createElement("svg", _extends$4({
|
1364
1232
|
"aria-hidden": "true",
|
1365
1233
|
"data-prefix": "fas",
|
1366
1234
|
"data-icon": "times",
|
1367
1235
|
className: (styles["svg-inline--fa"] || "svg-inline--fa") + " " + (styles["fa-times"] || "fa-times") + " " + (styles["fa-w-11"] || "fa-w-11"),
|
1368
1236
|
xmlns: "http://www.w3.org/2000/svg",
|
1369
1237
|
viewBox: "0 0 352 512"
|
1370
|
-
}, props), React.createElement("path", {
|
1238
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1371
1239
|
fill: "currentColor",
|
1372
1240
|
d: "M242.72 256l100.07-100.07c12.28-12.28 12.28-32.19 0-44.48l-22.24-22.24c-12.28-12.28-32.19-12.28-44.48 0L176 189.28 75.93 89.21c-12.28-12.28-32.19-12.28-44.48 0L9.21 111.45c-12.28 12.28-12.28 32.19 0 44.48L109.28 256 9.21 356.07c-12.28 12.28-12.28 32.19 0 44.48l22.24 22.24c12.28 12.28 32.2 12.28 44.48 0L176 322.72l100.07 100.07c12.28 12.28 32.2 12.28 44.48 0l22.24-22.24c12.28-12.28 12.28-32.19 0-44.48L242.72 256z"
|
1373
1241
|
}));
|
@@ -1411,37 +1279,28 @@ function LinkInput(_ref) {
|
|
1411
1279
|
}
|
1412
1280
|
}
|
1413
1281
|
|
1414
|
-
return (
|
1415
|
-
|
1416
|
-
|
1417
|
-
|
1282
|
+
return /*#__PURE__*/React.createElement("div", {
|
1283
|
+
className: styles$7.linkTooltip
|
1284
|
+
}, /*#__PURE__*/React.createElement("input", {
|
1285
|
+
ref: ref,
|
1286
|
+
type: "text",
|
1287
|
+
value: href,
|
1288
|
+
placeholder: t('pageflow_scrolled.inline_editing.url_placeholder'),
|
1289
|
+
onBlur: submit,
|
1290
|
+
onChange: function onChange(e) {
|
1291
|
+
return setHref(e.target.value);
|
1418
1292
|
},
|
1419
|
-
|
1420
|
-
|
1421
|
-
|
1422
|
-
|
1423
|
-
value: href,
|
1424
|
-
placeholder: t('pageflow_scrolled.inline_editing.url_placeholder'),
|
1425
|
-
onBlur: submit,
|
1426
|
-
onChange: function onChange(e) {
|
1427
|
-
return setHref(e.target.value);
|
1428
|
-
},
|
1429
|
-
onKeyDown: handleKey
|
1430
|
-
}),
|
1431
|
-
/*#__PURE__*/
|
1432
|
-
React.createElement("button", {
|
1433
|
-
onMouseDown: function onMouseDown(e) {
|
1434
|
-
return e.preventDefault();
|
1435
|
-
},
|
1436
|
-
onClick: onCancel,
|
1437
|
-
title: t('pageflow_scrolled.inline_editing.cancel')
|
1293
|
+
onKeyDown: handleKey
|
1294
|
+
}), /*#__PURE__*/React.createElement("button", {
|
1295
|
+
onMouseDown: function onMouseDown(e) {
|
1296
|
+
return e.preventDefault();
|
1438
1297
|
},
|
1439
|
-
|
1440
|
-
|
1441
|
-
|
1442
|
-
|
1443
|
-
|
1444
|
-
);
|
1298
|
+
onClick: onCancel,
|
1299
|
+
title: t('pageflow_scrolled.inline_editing.cancel')
|
1300
|
+
}, /*#__PURE__*/React.createElement(CancelIcon, {
|
1301
|
+
width: 10,
|
1302
|
+
height: 10
|
1303
|
+
})));
|
1445
1304
|
}
|
1446
1305
|
|
1447
1306
|
function _extends$5() {
|
@@ -1466,14 +1325,14 @@ var BoldIcon = (function (_ref) {
|
|
1466
1325
|
styles = _ref$styles === void 0 ? {} : _ref$styles,
|
1467
1326
|
props = _objectWithoutProperties(_ref, ["styles"]);
|
1468
1327
|
|
1469
|
-
return React.createElement("svg", _extends$5({
|
1328
|
+
return /*#__PURE__*/React.createElement("svg", _extends$5({
|
1470
1329
|
"aria-hidden": "true",
|
1471
1330
|
"data-prefix": "fas",
|
1472
1331
|
"data-icon": "bold",
|
1473
1332
|
className: (styles["svg-inline--fa"] || "svg-inline--fa") + " " + (styles["fa-bold"] || "fa-bold") + " " + (styles["fa-w-12"] || "fa-w-12"),
|
1474
1333
|
xmlns: "http://www.w3.org/2000/svg",
|
1475
1334
|
viewBox: "0 0 384 512"
|
1476
|
-
}, props), React.createElement("path", {
|
1335
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1477
1336
|
fill: "currentColor",
|
1478
1337
|
d: "M333.49 238a122 122 0 0027-65.21C367.87 96.49 308 32 233.42 32H34a16 16 0 00-16 16v48a16 16 0 0016 16h31.87v288H34a16 16 0 00-16 16v48a16 16 0 0016 16h209.32c70.8 0 134.14-51.75 141-122.4 4.74-48.45-16.39-92.06-50.83-119.6zM145.66 112h87.76a48 48 0 010 96h-87.76zm87.76 288h-87.76V288h87.76a56 56 0 010 112z"
|
1479
1338
|
}));
|
@@ -1501,14 +1360,14 @@ var UnderlineIcon = (function (_ref) {
|
|
1501
1360
|
styles = _ref$styles === void 0 ? {} : _ref$styles,
|
1502
1361
|
props = _objectWithoutProperties(_ref, ["styles"]);
|
1503
1362
|
|
1504
|
-
return React.createElement("svg", _extends$6({
|
1363
|
+
return /*#__PURE__*/React.createElement("svg", _extends$6({
|
1505
1364
|
"aria-hidden": "true",
|
1506
1365
|
"data-prefix": "fas",
|
1507
1366
|
"data-icon": "underline",
|
1508
1367
|
className: (styles["svg-inline--fa"] || "svg-inline--fa") + " " + (styles["fa-underline"] || "fa-underline") + " " + (styles["fa-w-14"] || "fa-w-14"),
|
1509
1368
|
xmlns: "http://www.w3.org/2000/svg",
|
1510
1369
|
viewBox: "0 0 448 512"
|
1511
|
-
}, props), React.createElement("path", {
|
1370
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1512
1371
|
fill: "currentColor",
|
1513
1372
|
d: "M32 64h32v160c0 88.22 71.78 160 160 160s160-71.78 160-160V64h32a16 16 0 0016-16V16a16 16 0 00-16-16H272a16 16 0 00-16 16v32a16 16 0 0016 16h32v160a80 80 0 01-160 0V64h32a16 16 0 0016-16V16a16 16 0 00-16-16H32a16 16 0 00-16 16v32a16 16 0 0016 16zm400 384H16a16 16 0 00-16 16v32a16 16 0 0016 16h416a16 16 0 0016-16v-32a16 16 0 00-16-16z"
|
1514
1373
|
}));
|
@@ -1536,14 +1395,14 @@ var ItalicIcon = (function (_ref) {
|
|
1536
1395
|
styles = _ref$styles === void 0 ? {} : _ref$styles,
|
1537
1396
|
props = _objectWithoutProperties(_ref, ["styles"]);
|
1538
1397
|
|
1539
|
-
return React.createElement("svg", _extends$7({
|
1398
|
+
return /*#__PURE__*/React.createElement("svg", _extends$7({
|
1540
1399
|
"aria-hidden": "true",
|
1541
1400
|
"data-prefix": "fas",
|
1542
1401
|
"data-icon": "italic",
|
1543
1402
|
className: (styles["svg-inline--fa"] || "svg-inline--fa") + " " + (styles["fa-italic"] || "fa-italic") + " " + (styles["fa-w-10"] || "fa-w-10"),
|
1544
1403
|
xmlns: "http://www.w3.org/2000/svg",
|
1545
1404
|
viewBox: "0 0 320 512"
|
1546
|
-
}, props), React.createElement("path", {
|
1405
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1547
1406
|
fill: "currentColor",
|
1548
1407
|
d: "M320 48v32a16 16 0 01-16 16h-62.76l-80 320H208a16 16 0 0116 16v32a16 16 0 01-16 16H16a16 16 0 01-16-16v-32a16 16 0 0116-16h62.76l80-320H112a16 16 0 01-16-16V48a16 16 0 0116-16h192a16 16 0 0116 16z"
|
1549
1408
|
}));
|
@@ -1571,14 +1430,14 @@ var StrikethroughIcon = (function (_ref) {
|
|
1571
1430
|
styles = _ref$styles === void 0 ? {} : _ref$styles,
|
1572
1431
|
props = _objectWithoutProperties(_ref, ["styles"]);
|
1573
1432
|
|
1574
|
-
return React.createElement("svg", _extends$8({
|
1433
|
+
return /*#__PURE__*/React.createElement("svg", _extends$8({
|
1575
1434
|
"aria-hidden": "true",
|
1576
1435
|
"data-prefix": "fas",
|
1577
1436
|
"data-icon": "strikethrough",
|
1578
1437
|
className: (styles["svg-inline--fa"] || "svg-inline--fa") + " " + (styles["fa-strikethrough"] || "fa-strikethrough") + " " + (styles["fa-w-16"] || "fa-w-16"),
|
1579
1438
|
xmlns: "http://www.w3.org/2000/svg",
|
1580
1439
|
viewBox: "0 0 512 512"
|
1581
|
-
}, props), React.createElement("path", {
|
1440
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1582
1441
|
fill: "currentColor",
|
1583
1442
|
d: "M496 224H293.9l-87.17-26.83A43.55 43.55 0 01219.55 112h66.79A49.89 49.89 0 01331 139.58a16 16 0 0021.46 7.15l42.94-21.47a16 16 0 007.16-21.46l-.53-1A128 128 0 00287.51 32h-68a123.68 123.68 0 00-123 135.64c2 20.89 10.1 39.83 21.78 56.36H16a16 16 0 00-16 16v32a16 16 0 0016 16h480a16 16 0 0016-16v-32a16 16 0 00-16-16zm-180.24 96A43 43 0 01336 356.45 43.59 43.59 0 01292.45 400h-66.79A49.89 49.89 0 01181 372.42a16 16 0 00-21.46-7.15l-42.94 21.47a16 16 0 00-7.16 21.46l.53 1A128 128 0 00224.49 480h68a123.68 123.68 0 00123-135.64 114.25 114.25 0 00-5.34-24.36z"
|
1584
1443
|
}));
|
@@ -1606,14 +1465,14 @@ var LinkIcon = (function (_ref) {
|
|
1606
1465
|
styles = _ref$styles === void 0 ? {} : _ref$styles,
|
1607
1466
|
props = _objectWithoutProperties(_ref, ["styles"]);
|
1608
1467
|
|
1609
|
-
return React.createElement("svg", _extends$9({
|
1468
|
+
return /*#__PURE__*/React.createElement("svg", _extends$9({
|
1610
1469
|
"aria-hidden": "true",
|
1611
1470
|
"data-prefix": "fas",
|
1612
1471
|
"data-icon": "link",
|
1613
1472
|
className: (styles["svg-inline--fa"] || "svg-inline--fa") + " " + (styles["fa-link"] || "fa-link") + " " + (styles["fa-w-16"] || "fa-w-16"),
|
1614
1473
|
xmlns: "http://www.w3.org/2000/svg",
|
1615
1474
|
viewBox: "0 0 512 512"
|
1616
|
-
}, props), React.createElement("path", {
|
1475
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1617
1476
|
fill: "currentColor",
|
1618
1477
|
d: "M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 01-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0120.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0020.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 00-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z"
|
1619
1478
|
}));
|
@@ -1651,17 +1510,12 @@ function HoveringToolbar(_ref) {
|
|
1651
1510
|
el.style.top = "".concat(rect.bottom - outerRect.top + 10, "px");
|
1652
1511
|
el.style.left = "".concat(rect.left - outerRect.left, "px");
|
1653
1512
|
});
|
1654
|
-
return (
|
1655
|
-
|
1656
|
-
|
1657
|
-
|
1658
|
-
|
1659
|
-
|
1660
|
-
React.createElement("div", {
|
1661
|
-
ref: ref,
|
1662
|
-
className: styles$7.hoveringToolbar
|
1663
|
-
}, !linkSelection && renderToolbar$1(editor, setLinkSelection, t), linkSelection && renderLinkInput(editor, linkSelection, setLinkSelection)))
|
1664
|
-
);
|
1513
|
+
return /*#__PURE__*/React.createElement("div", {
|
1514
|
+
ref: outerRef
|
1515
|
+
}, /*#__PURE__*/React.createElement("div", {
|
1516
|
+
ref: ref,
|
1517
|
+
className: styles$7.hoveringToolbar
|
1518
|
+
}, !linkSelection && renderToolbar$1(editor, setLinkSelection, t), linkSelection && renderLinkInput(editor, linkSelection, setLinkSelection)));
|
1665
1519
|
}
|
1666
1520
|
|
1667
1521
|
function renderToolbar$1(editor, setLinkSelection, t) {
|
@@ -1690,15 +1544,12 @@ function renderToolbar$1(editor, setLinkSelection, t) {
|
|
1690
1544
|
active: isButtonActive(editor, button.name)
|
1691
1545
|
});
|
1692
1546
|
});
|
1693
|
-
return (
|
1694
|
-
|
1695
|
-
|
1696
|
-
|
1697
|
-
|
1698
|
-
|
1699
|
-
}
|
1700
|
-
})
|
1701
|
-
);
|
1547
|
+
return /*#__PURE__*/React.createElement(Toolbar, {
|
1548
|
+
buttons: buttons,
|
1549
|
+
onButtonClick: function onButtonClick(name) {
|
1550
|
+
return handleButtonClick(editor, name, setLinkSelection);
|
1551
|
+
}
|
1552
|
+
});
|
1702
1553
|
}
|
1703
1554
|
|
1704
1555
|
function handleButtonClick(editor, format, setLinkSelection) {
|
@@ -1739,13 +1590,10 @@ function renderLinkInput(editor, linkSelection, setLinkSelection) {
|
|
1739
1590
|
ReactEditor.focus(editor);
|
1740
1591
|
}
|
1741
1592
|
|
1742
|
-
return (
|
1743
|
-
|
1744
|
-
|
1745
|
-
|
1746
|
-
onCancel: handleCancel
|
1747
|
-
})
|
1748
|
-
);
|
1593
|
+
return /*#__PURE__*/React.createElement(LinkInput, {
|
1594
|
+
onSubmit: handleSubmit,
|
1595
|
+
onCancel: handleCancel
|
1596
|
+
});
|
1749
1597
|
}
|
1750
1598
|
|
1751
1599
|
function unwrapLink(editor) {
|
@@ -1797,6 +1645,25 @@ function isMarkActive(editor, format) {
|
|
1797
1645
|
return marks ? marks[format] === true : false;
|
1798
1646
|
}
|
1799
1647
|
|
1648
|
+
function getUniformSelectedNodeProperty(editor, propertyName) {
|
1649
|
+
var currentNodeEntries = _toConsumableArray(Editor.nodes(editor, {
|
1650
|
+
match: function match(n) {
|
1651
|
+
return !!n.type;
|
1652
|
+
},
|
1653
|
+
mode: 'highest'
|
1654
|
+
}));
|
1655
|
+
|
1656
|
+
var values = _toConsumableArray(new Set(currentNodeEntries.map(function (_ref) {
|
1657
|
+
var _ref2 = _slicedToArray(_ref, 2),
|
1658
|
+
node = _ref2[0],
|
1659
|
+
path = _ref2[1];
|
1660
|
+
|
1661
|
+
return node[propertyName];
|
1662
|
+
})));
|
1663
|
+
|
1664
|
+
return values.length === 1 ? values[0] : null;
|
1665
|
+
}
|
1666
|
+
|
1800
1667
|
function _extends$a() {
|
1801
1668
|
_extends$a = Object.assign || function (target) {
|
1802
1669
|
for (var i = 1; i < arguments.length; i++) {
|
@@ -1819,14 +1686,14 @@ var TextIcon = (function (_ref) {
|
|
1819
1686
|
styles = _ref$styles === void 0 ? {} : _ref$styles,
|
1820
1687
|
props = _objectWithoutProperties(_ref, ["styles"]);
|
1821
1688
|
|
1822
|
-
return React.createElement("svg", _extends$a({
|
1689
|
+
return /*#__PURE__*/React.createElement("svg", _extends$a({
|
1823
1690
|
"aria-hidden": "true",
|
1824
1691
|
"data-prefix": "fas",
|
1825
1692
|
"data-icon": "align-justify",
|
1826
1693
|
className: (styles["svg-inline--fa"] || "svg-inline--fa") + " " + (styles["fa-align-justify"] || "fa-align-justify") + " " + (styles["fa-w-14"] || "fa-w-14"),
|
1827
1694
|
xmlns: "http://www.w3.org/2000/svg",
|
1828
1695
|
viewBox: "0 0 448 512"
|
1829
|
-
}, props), React.createElement("path", {
|
1696
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1830
1697
|
fill: "currentColor",
|
1831
1698
|
d: "M432 416H16a16 16 0 00-16 16v32a16 16 0 0016 16h416a16 16 0 0016-16v-32a16 16 0 00-16-16zm0-128H16a16 16 0 00-16 16v32a16 16 0 0016 16h416a16 16 0 0016-16v-32a16 16 0 00-16-16zm0-128H16a16 16 0 00-16 16v32a16 16 0 0016 16h416a16 16 0 0016-16v-32a16 16 0 00-16-16zm0-128H16A16 16 0 000 48v32a16 16 0 0016 16h416a16 16 0 0016-16V48a16 16 0 00-16-16z"
|
1832
1699
|
}));
|
@@ -1854,14 +1721,14 @@ var HeadingIcon = (function (_ref) {
|
|
1854
1721
|
styles = _ref$styles === void 0 ? {} : _ref$styles,
|
1855
1722
|
props = _objectWithoutProperties(_ref, ["styles"]);
|
1856
1723
|
|
1857
|
-
return React.createElement("svg", _extends$b({
|
1724
|
+
return /*#__PURE__*/React.createElement("svg", _extends$b({
|
1858
1725
|
"aria-hidden": "true",
|
1859
1726
|
"data-prefix": "fas",
|
1860
1727
|
"data-icon": "heading",
|
1861
1728
|
className: (styles["svg-inline--fa"] || "svg-inline--fa") + " " + (styles["fa-heading"] || "fa-heading") + " " + (styles["fa-w-16"] || "fa-w-16"),
|
1862
1729
|
xmlns: "http://www.w3.org/2000/svg",
|
1863
1730
|
viewBox: "0 0 512 512"
|
1864
|
-
}, props), React.createElement("path", {
|
1731
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1865
1732
|
fill: "currentColor",
|
1866
1733
|
d: "M448 96v320h32a16 16 0 0116 16v32a16 16 0 01-16 16H320a16 16 0 01-16-16v-32a16 16 0 0116-16h32V288H160v128h32a16 16 0 0116 16v32a16 16 0 01-16 16H32a16 16 0 01-16-16v-32a16 16 0 0116-16h32V96H32a16 16 0 01-16-16V48a16 16 0 0116-16h160a16 16 0 0116 16v32a16 16 0 01-16 16h-32v128h192V96h-32a16 16 0 01-16-16V48a16 16 0 0116-16h160a16 16 0 0116 16v32a16 16 0 01-16 16z"
|
1867
1734
|
}));
|
@@ -1889,14 +1756,14 @@ var OlIcon = (function (_ref) {
|
|
1889
1756
|
styles = _ref$styles === void 0 ? {} : _ref$styles,
|
1890
1757
|
props = _objectWithoutProperties(_ref, ["styles"]);
|
1891
1758
|
|
1892
|
-
return React.createElement("svg", _extends$c({
|
1759
|
+
return /*#__PURE__*/React.createElement("svg", _extends$c({
|
1893
1760
|
"aria-hidden": "true",
|
1894
1761
|
"data-prefix": "fas",
|
1895
1762
|
"data-icon": "list-ol",
|
1896
1763
|
className: (styles["svg-inline--fa"] || "svg-inline--fa") + " " + (styles["fa-list-ol"] || "fa-list-ol") + " " + (styles["fa-w-16"] || "fa-w-16"),
|
1897
1764
|
xmlns: "http://www.w3.org/2000/svg",
|
1898
1765
|
viewBox: "0 0 512 512"
|
1899
|
-
}, props), React.createElement("path", {
|
1766
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1900
1767
|
fill: "currentColor",
|
1901
1768
|
d: "M61.77 401l17.5-20.15a19.92 19.92 0 005.07-14.19v-3.31C84.34 356 80.5 352 73 352H16a8 8 0 00-8 8v16a8 8 0 008 8h22.83a157.41 157.41 0 00-11 12.31l-5.61 7c-4 5.07-5.25 10.13-2.8 14.88l1.05 1.93c3 5.76 6.29 7.88 12.25 7.88h4.73c10.33 0 15.94 2.44 15.94 9.09 0 4.72-4.2 8.22-14.36 8.22a41.54 41.54 0 01-15.47-3.12c-6.49-3.88-11.74-3.5-15.6 3.12l-5.59 9.31c-3.72 6.13-3.19 11.72 2.63 15.94 7.71 4.69 20.38 9.44 37 9.44 34.16 0 48.5-22.75 48.5-44.12-.03-14.38-9.12-29.76-28.73-34.88zM496 224H176a16 16 0 00-16 16v32a16 16 0 0016 16h320a16 16 0 0016-16v-32a16 16 0 00-16-16zm0-160H176a16 16 0 00-16 16v32a16 16 0 0016 16h320a16 16 0 0016-16V80a16 16 0 00-16-16zm0 320H176a16 16 0 00-16 16v32a16 16 0 0016 16h320a16 16 0 0016-16v-32a16 16 0 00-16-16zM16 160h64a8 8 0 008-8v-16a8 8 0 00-8-8H64V40a8 8 0 00-8-8H32a8 8 0 00-7.14 4.42l-8 16A8 8 0 0024 64h8v64H16a8 8 0 00-8 8v16a8 8 0 008 8zm-3.91 160H80a8 8 0 008-8v-16a8 8 0 00-8-8H41.32c3.29-10.29 48.34-18.68 48.34-56.44 0-29.06-25-39.56-44.47-39.56-21.36 0-33.8 10-40.46 18.75-4.37 5.59-3 10.84 2.8 15.37l8.58 6.88c5.61 4.56 11 2.47 16.12-2.44a13.44 13.44 0 019.46-3.84c3.33 0 9.28 1.56 9.28 8.75C51 248.19 0 257.31 0 304.59v4C0 316 5.08 320 12.09 320z"
|
1902
1769
|
}));
|
@@ -1924,14 +1791,14 @@ var UlIcon = (function (_ref) {
|
|
1924
1791
|
styles = _ref$styles === void 0 ? {} : _ref$styles,
|
1925
1792
|
props = _objectWithoutProperties(_ref, ["styles"]);
|
1926
1793
|
|
1927
|
-
return React.createElement("svg", _extends$d({
|
1794
|
+
return /*#__PURE__*/React.createElement("svg", _extends$d({
|
1928
1795
|
"aria-hidden": "true",
|
1929
1796
|
"data-prefix": "fas",
|
1930
1797
|
"data-icon": "list-ul",
|
1931
1798
|
className: (styles["svg-inline--fa"] || "svg-inline--fa") + " " + (styles["fa-list-ul"] || "fa-list-ul") + " " + (styles["fa-w-16"] || "fa-w-16"),
|
1932
1799
|
xmlns: "http://www.w3.org/2000/svg",
|
1933
1800
|
viewBox: "0 0 512 512"
|
1934
|
-
}, props), React.createElement("path", {
|
1801
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1935
1802
|
fill: "currentColor",
|
1936
1803
|
d: "M48 48a48 48 0 1048 48 48 48 0 00-48-48zm0 160a48 48 0 1048 48 48 48 0 00-48-48zm0 160a48 48 0 1048 48 48 48 0 00-48-48zm448 16H176a16 16 0 00-16 16v32a16 16 0 0016 16h320a16 16 0 0016-16v-32a16 16 0 00-16-16zm0-320H176a16 16 0 00-16 16v32a16 16 0 0016 16h320a16 16 0 0016-16V80a16 16 0 00-16-16zm0 160H176a16 16 0 00-16 16v32a16 16 0 0016 16h320a16 16 0 0016-16v-32a16 16 0 00-16-16z"
|
1937
1804
|
}));
|
@@ -1959,14 +1826,14 @@ var QuoteIcon = (function (_ref) {
|
|
1959
1826
|
styles = _ref$styles === void 0 ? {} : _ref$styles,
|
1960
1827
|
props = _objectWithoutProperties(_ref, ["styles"]);
|
1961
1828
|
|
1962
|
-
return React.createElement("svg", _extends$e({
|
1829
|
+
return /*#__PURE__*/React.createElement("svg", _extends$e({
|
1963
1830
|
"aria-hidden": "true",
|
1964
1831
|
"data-prefix": "fas",
|
1965
1832
|
"data-icon": "quote-right",
|
1966
1833
|
className: (styles["svg-inline--fa"] || "svg-inline--fa") + " " + (styles["fa-quote-right"] || "fa-quote-right") + " " + (styles["fa-w-16"] || "fa-w-16"),
|
1967
1834
|
xmlns: "http://www.w3.org/2000/svg",
|
1968
1835
|
viewBox: "0 0 512 512"
|
1969
|
-
}, props), React.createElement("path", {
|
1836
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1970
1837
|
fill: "currentColor",
|
1971
1838
|
d: "M464 32H336c-26.5 0-48 21.5-48 48v128c0 26.5 21.5 48 48 48h80v64c0 35.3-28.7 64-64 64h-8c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h8c88.4 0 160-71.6 160-160V80c0-26.5-21.5-48-48-48zm-288 0H48C21.5 32 0 53.5 0 80v128c0 26.5 21.5 48 48 48h80v64c0 35.3-28.7 64-64 64h-8c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h8c88.4 0 160-71.6 160-160V80c0-26.5-21.5-48-48-48z"
|
1972
1839
|
}));
|
@@ -1984,11 +1851,13 @@ function Selection(props) {
|
|
1984
1851
|
var outerRef = useRef();
|
1985
1852
|
var innerRef = useRef();
|
1986
1853
|
var boundsRef = useRef();
|
1854
|
+
var lastRangeRef = useRef();
|
1987
1855
|
|
1988
1856
|
var _useContentElementEdi = useContentElementEditorState(),
|
1989
1857
|
setTransientState = _useContentElementEdi.setTransientState,
|
1990
1858
|
select = _useContentElementEdi.select,
|
1991
|
-
isContentElementSelected = _useContentElementEdi.isSelected
|
1859
|
+
isContentElementSelected = _useContentElementEdi.isSelected,
|
1860
|
+
range = _useContentElementEdi.range;
|
1992
1861
|
|
1993
1862
|
useEffect(function () {
|
1994
1863
|
var selection = editor.selection;
|
@@ -1997,6 +1866,27 @@ function Selection(props) {
|
|
1997
1866
|
return;
|
1998
1867
|
}
|
1999
1868
|
|
1869
|
+
if (isContentElementSelected && range && lastRangeRef.current !== range) {
|
1870
|
+
lastRangeRef.current = range;
|
1871
|
+
|
1872
|
+
if (range[1] === range[0] + 1) {
|
1873
|
+
Transforms.select(editor, Editor.point(editor, [range[0]], {
|
1874
|
+
edge: 'start'
|
1875
|
+
}));
|
1876
|
+
} else {
|
1877
|
+
Transforms.select(editor, {
|
1878
|
+
anchor: Editor.point(editor, [range[0]], {
|
1879
|
+
edge: 'start'
|
1880
|
+
}),
|
1881
|
+
focus: Editor.point(editor, [range[1] - 1], {
|
1882
|
+
edge: 'end'
|
1883
|
+
})
|
1884
|
+
});
|
1885
|
+
}
|
1886
|
+
|
1887
|
+
ReactEditor.focus(editor);
|
1888
|
+
}
|
1889
|
+
|
2000
1890
|
if (!selection) {
|
2001
1891
|
if (boundsRef.current) {
|
2002
1892
|
hideRect(ref.current);
|
@@ -2008,6 +1898,8 @@ function Selection(props) {
|
|
2008
1898
|
|
2009
1899
|
if (!isContentElementSelected && boundsRef.current) {
|
2010
1900
|
hideRect(ref.current);
|
1901
|
+
boundsRef.current = null;
|
1902
|
+
window.getSelection().removeAllRanges();
|
2011
1903
|
return;
|
2012
1904
|
}
|
2013
1905
|
|
@@ -2021,7 +1913,9 @@ function Selection(props) {
|
|
2021
1913
|
end = _computeBounds2[1];
|
2022
1914
|
|
2023
1915
|
setTransientState({
|
2024
|
-
editableTextIsSingleBlock: editor.children.length <= 1
|
1916
|
+
editableTextIsSingleBlock: editor.children.length <= 1,
|
1917
|
+
currentNodeType: getUniformSelectedNodeProperty(editor, 'type'),
|
1918
|
+
typographyVariant: getUniformSelectedNodeProperty(editor, 'variant')
|
2025
1919
|
});
|
2026
1920
|
boundsRef.current = {
|
2027
1921
|
start: start,
|
@@ -2029,49 +1923,58 @@ function Selection(props) {
|
|
2029
1923
|
};
|
2030
1924
|
updateRect(editor, start, end, outerRef.current, ref.current, innerRef.current);
|
2031
1925
|
});
|
2032
|
-
|
2033
|
-
|
2034
|
-
|
2035
|
-
|
2036
|
-
|
2037
|
-
/*#__PURE__*/
|
2038
|
-
React.createElement("div", {
|
2039
|
-
ref: ref,
|
2040
|
-
className: styles$7.selection
|
1926
|
+
|
1927
|
+
var _useDrag = useDrag({
|
1928
|
+
item: {
|
1929
|
+
type: 'contentElement',
|
1930
|
+
id: props.contentElementId
|
2041
1931
|
},
|
2042
|
-
|
2043
|
-
|
2044
|
-
|
2045
|
-
|
2046
|
-
|
2047
|
-
|
2048
|
-
|
2049
|
-
|
2050
|
-
|
2051
|
-
|
2052
|
-
|
2053
|
-
|
2054
|
-
|
2055
|
-
|
2056
|
-
|
2057
|
-
|
2058
|
-
|
2059
|
-
|
2060
|
-
|
2061
|
-
|
2062
|
-
|
2063
|
-
|
1932
|
+
begin: function begin() {
|
1933
|
+
return {
|
1934
|
+
type: 'contentElement',
|
1935
|
+
id: props.contentElementId,
|
1936
|
+
range: [boundsRef.current.start, boundsRef.current.end + 1]
|
1937
|
+
};
|
1938
|
+
}
|
1939
|
+
}),
|
1940
|
+
_useDrag2 = _slicedToArray(_useDrag, 2),
|
1941
|
+
drag = _useDrag2[1];
|
1942
|
+
|
1943
|
+
return /*#__PURE__*/React.createElement("div", {
|
1944
|
+
ref: outerRef
|
1945
|
+
}, /*#__PURE__*/React.createElement("div", {
|
1946
|
+
ref: ref,
|
1947
|
+
className: styles$7.selection
|
1948
|
+
}, /*#__PURE__*/React.createElement(SelectionRect, {
|
1949
|
+
selected: true,
|
1950
|
+
drag: drag,
|
1951
|
+
scrollPoint: isContentElementSelected,
|
1952
|
+
insertButtonTitles: t('pageflow_scrolled.inline_editing.insert_content_element'),
|
1953
|
+
onInsertButtonClick: function onInsertButtonClick(at) {
|
1954
|
+
if (at === 'before' && boundsRef.current.start === 0 || at === 'after' && !Node.has(editor, [boundsRef.current.end + 1])) {
|
1955
|
+
postInsertContentElementMessage({
|
1956
|
+
id: props.contentElementId,
|
1957
|
+
at: at
|
1958
|
+
});
|
1959
|
+
} else {
|
1960
|
+
postInsertContentElementMessage({
|
1961
|
+
id: props.contentElementId,
|
1962
|
+
at: 'split',
|
1963
|
+
splitPoint: at === 'before' ? boundsRef.current.start : boundsRef.current.end + 1
|
2064
1964
|
});
|
2065
|
-
}),
|
2066
|
-
onToolbarButtonClick: function onToolbarButtonClick(name) {
|
2067
|
-
return toggleBlock(editor, name);
|
2068
1965
|
}
|
2069
1966
|
},
|
2070
|
-
|
2071
|
-
|
2072
|
-
|
2073
|
-
|
2074
|
-
|
1967
|
+
toolbarButtons: toolbarButtons(t).map(function (button) {
|
1968
|
+
return _objectSpread2(_objectSpread2({}, button), {}, {
|
1969
|
+
active: isBlockActive(editor, button.name)
|
1970
|
+
});
|
1971
|
+
}),
|
1972
|
+
onToolbarButtonClick: function onToolbarButtonClick(name) {
|
1973
|
+
return toggleBlock(editor, name);
|
1974
|
+
}
|
1975
|
+
}, /*#__PURE__*/React.createElement("div", {
|
1976
|
+
ref: innerRef
|
1977
|
+
}))));
|
2075
1978
|
}
|
2076
1979
|
|
2077
1980
|
function computeBounds(editor) {
|
@@ -2197,20 +2100,18 @@ function DropTargets$1(_ref) {
|
|
2197
2100
|
setTargets(measureHeights(editor, containerRef.current));
|
2198
2101
|
}
|
2199
2102
|
}, [targets, editor]);
|
2200
|
-
return (
|
2201
|
-
|
2202
|
-
|
2203
|
-
|
2204
|
-
className: styles$8.container
|
2205
|
-
}, renderDropTargets(targets || [], contentElementId))
|
2206
|
-
);
|
2103
|
+
return /*#__PURE__*/React.createElement("div", {
|
2104
|
+
ref: containerRef,
|
2105
|
+
className: styles$8.container
|
2106
|
+
}, renderDropTargets(targets || [], contentElementId));
|
2207
2107
|
}
|
2208
2108
|
|
2209
2109
|
function renderDropTargets(targets, contentElementId) {
|
2210
|
-
function handleDrop(
|
2110
|
+
function handleDrop(item, index) {
|
2211
2111
|
if (index === 0) {
|
2212
2112
|
postMoveContentElementMessage({
|
2213
|
-
id:
|
2113
|
+
id: item.id,
|
2114
|
+
range: item.range,
|
2214
2115
|
to: {
|
2215
2116
|
at: 'before',
|
2216
2117
|
id: contentElementId
|
@@ -2218,7 +2119,8 @@ function renderDropTargets(targets, contentElementId) {
|
|
2218
2119
|
});
|
2219
2120
|
} else if (index === targets.length - 1) {
|
2220
2121
|
postMoveContentElementMessage({
|
2221
|
-
id:
|
2122
|
+
id: item.id,
|
2123
|
+
range: item.range,
|
2222
2124
|
to: {
|
2223
2125
|
at: 'after',
|
2224
2126
|
id: contentElementId
|
@@ -2226,7 +2128,8 @@ function renderDropTargets(targets, contentElementId) {
|
|
2226
2128
|
});
|
2227
2129
|
} else {
|
2228
2130
|
postMoveContentElementMessage({
|
2229
|
-
id:
|
2131
|
+
id: item.id,
|
2132
|
+
range: item.range,
|
2230
2133
|
to: {
|
2231
2134
|
at: 'split',
|
2232
2135
|
id: contentElementId,
|
@@ -2237,20 +2140,18 @@ function renderDropTargets(targets, contentElementId) {
|
|
2237
2140
|
}
|
2238
2141
|
|
2239
2142
|
return targets.map(function (target, index) {
|
2240
|
-
return (
|
2241
|
-
|
2242
|
-
|
2243
|
-
|
2244
|
-
|
2245
|
-
|
2246
|
-
}
|
2247
|
-
}))
|
2248
|
-
);
|
2143
|
+
return /*#__PURE__*/React.createElement(DropTarget, Object.assign({}, target, {
|
2144
|
+
key: index,
|
2145
|
+
onDrop: function onDrop(item) {
|
2146
|
+
return handleDrop(item, index);
|
2147
|
+
}
|
2148
|
+
}));
|
2249
2149
|
});
|
2250
2150
|
}
|
2251
2151
|
|
2252
2152
|
function DropTarget(_ref2) {
|
2253
|
-
var
|
2153
|
+
var display = _ref2.display,
|
2154
|
+
top = _ref2.top,
|
2254
2155
|
height = _ref2.height,
|
2255
2156
|
indicatorTop = _ref2.indicatorTop,
|
2256
2157
|
onDrop = _ref2.onDrop;
|
@@ -2263,31 +2164,27 @@ function DropTarget(_ref2) {
|
|
2263
2164
|
};
|
2264
2165
|
},
|
2265
2166
|
drop: function drop(item) {
|
2266
|
-
return onDrop(item
|
2167
|
+
return onDrop(item);
|
2267
2168
|
}
|
2268
2169
|
}),
|
2269
2170
|
_useDrop2 = _slicedToArray(_useDrop, 2),
|
2270
2171
|
isOver = _useDrop2[0].isOver,
|
2271
2172
|
drop = _useDrop2[1];
|
2272
2173
|
|
2273
|
-
return (
|
2274
|
-
|
2275
|
-
|
2276
|
-
|
2277
|
-
|
2278
|
-
|
2279
|
-
|
2280
|
-
|
2281
|
-
|
2282
|
-
|
2283
|
-
|
2284
|
-
|
2285
|
-
|
2286
|
-
|
2287
|
-
top: indicatorTop
|
2288
|
-
}
|
2289
|
-
}))
|
2290
|
-
);
|
2174
|
+
return /*#__PURE__*/React.createElement("div", {
|
2175
|
+
ref: drop,
|
2176
|
+
className: classNames(styles$8.dropTarget, _defineProperty({}, styles$8.isOver, isOver)),
|
2177
|
+
style: {
|
2178
|
+
display: display,
|
2179
|
+
top: top,
|
2180
|
+
height: height
|
2181
|
+
}
|
2182
|
+
}, /*#__PURE__*/React.createElement("div", {
|
2183
|
+
className: styles$8.dropIndicator,
|
2184
|
+
style: {
|
2185
|
+
top: indicatorTop
|
2186
|
+
}
|
2187
|
+
}));
|
2291
2188
|
}
|
2292
2189
|
|
2293
2190
|
function measureHeights(editor, container) {
|
@@ -2306,6 +2203,7 @@ function measureHeights(editor, container) {
|
|
2306
2203
|
var targetDimensions = {
|
2307
2204
|
top: top,
|
2308
2205
|
height: bottom - top,
|
2206
|
+
display: editor.selection && Range.includes(editor.selection, [index]) ? 'none' : undefined,
|
2309
2207
|
indicatorTop: index > 0 ? lastRectBottom + (rect.top - lastRectBottom) / 2 - containerRect.top - top : 0
|
2310
2208
|
};
|
2311
2209
|
lastRectBottom = rect.bottom;
|
@@ -2354,6 +2252,10 @@ var EditableText = React.memo(function EditableText(_ref) {
|
|
2354
2252
|
Transforms.removeNodes(editor, {
|
2355
2253
|
mode: 'highest'
|
2356
2254
|
});
|
2255
|
+
} else if (command.type === 'TRANSIENT_STATE_UPDATE' && 'typographyVariant' in command.payload) {
|
2256
|
+
Transforms.setNodes(editor, {
|
2257
|
+
variant: command.payload.typographyVariant
|
2258
|
+
});
|
2357
2259
|
}
|
2358
2260
|
});
|
2359
2261
|
|
@@ -2371,51 +2273,32 @@ var EditableText = React.memo(function EditableText(_ref) {
|
|
2371
2273
|
return renderLeafWithLinkSelection(options);
|
2372
2274
|
}, [linkSelection]); // eslint-disable-line react-hooks/exhaustive-deps
|
2373
2275
|
|
2374
|
-
return (
|
2375
|
-
|
2376
|
-
|
2377
|
-
|
2378
|
-
|
2379
|
-
|
2380
|
-
|
2381
|
-
|
2382
|
-
|
2383
|
-
|
2384
|
-
|
2385
|
-
|
2386
|
-
|
2387
|
-
|
2388
|
-
|
2389
|
-
|
2390
|
-
|
2391
|
-
|
2392
|
-
|
2393
|
-
|
2394
|
-
|
2395
|
-
|
2396
|
-
|
2397
|
-
|
2398
|
-
|
2399
|
-
|
2400
|
-
contentElementId: contentElementId
|
2401
|
-
}),
|
2402
|
-
/*#__PURE__*/
|
2403
|
-
React.createElement(HoveringToolbar, {
|
2404
|
-
linkSelection: linkSelection,
|
2405
|
-
setLinkSelection: setLinkSelection
|
2406
|
-
}),
|
2407
|
-
/*#__PURE__*/
|
2408
|
-
React.createElement(Editable, {
|
2409
|
-
decorate: decorate,
|
2410
|
-
renderElement: renderElementWithLinkPreview,
|
2411
|
-
renderLeaf: renderLeaf
|
2412
|
-
}))),
|
2413
|
-
/*#__PURE__*/
|
2414
|
-
React.createElement(TextPlaceholder, {
|
2415
|
-
text: placeholder,
|
2416
|
-
visible: isBlank(cachedValue)
|
2417
|
-
})))
|
2418
|
-
);
|
2276
|
+
return /*#__PURE__*/React.createElement(Text$1, {
|
2277
|
+
scaleCategory: "body"
|
2278
|
+
}, /*#__PURE__*/React.createElement("div", {
|
2279
|
+
className: styles$7.container,
|
2280
|
+
ref: ref
|
2281
|
+
}, /*#__PURE__*/React.createElement(Slate, {
|
2282
|
+
editor: editor,
|
2283
|
+
value: cachedValue,
|
2284
|
+
onChange: setCachedValue
|
2285
|
+
}, /*#__PURE__*/React.createElement(LinkTooltipProvider, {
|
2286
|
+
disabled: !!linkSelection
|
2287
|
+
}, /*#__PURE__*/React.createElement(Selection, {
|
2288
|
+
contentElementId: contentElementId
|
2289
|
+
}), dropTargetsActive && /*#__PURE__*/React.createElement(DropTargets$1, {
|
2290
|
+
contentElementId: contentElementId
|
2291
|
+
}), /*#__PURE__*/React.createElement(HoveringToolbar, {
|
2292
|
+
linkSelection: linkSelection,
|
2293
|
+
setLinkSelection: setLinkSelection
|
2294
|
+
}), /*#__PURE__*/React.createElement(Editable, {
|
2295
|
+
decorate: decorate,
|
2296
|
+
renderElement: renderElementWithLinkPreview,
|
2297
|
+
renderLeaf: renderLeaf
|
2298
|
+
}))), /*#__PURE__*/React.createElement(TextPlaceholder, {
|
2299
|
+
text: placeholder,
|
2300
|
+
visible: isBlank(cachedValue)
|
2301
|
+
})));
|
2419
2302
|
});
|
2420
2303
|
|
2421
2304
|
function isBlank(value) {
|
@@ -2429,22 +2312,134 @@ function resetSelectionIfOutsideNextValue(editor, nextValue) {
|
|
2429
2312
|
children: nextValue
|
2430
2313
|
};
|
2431
2314
|
|
2432
|
-
if (editor.selection && (!
|
2315
|
+
if (editor.selection && (!hasTextAtPoint(nextEditor, editor.selection.anchor) || !hasTextAtPoint(nextEditor, editor.selection.focus))) {
|
2433
2316
|
Transforms.deselect(editor);
|
2434
2317
|
}
|
2435
2318
|
}
|
2436
2319
|
|
2320
|
+
function hasTextAtPoint(editor, point) {
|
2321
|
+
if (!Node.has(editor, point.path)) {
|
2322
|
+
return false;
|
2323
|
+
}
|
2324
|
+
|
2325
|
+
var node = Node.get(editor, point.path);
|
2326
|
+
return Text.isText(node) && point.offset <= node.text.length;
|
2327
|
+
}
|
2328
|
+
|
2329
|
+
var shy = "\xAD";
|
2330
|
+
function useLineBreakHandler(editor) {
|
2331
|
+
return useCallback(function (event) {
|
2332
|
+
if (event.key !== 'Enter') {
|
2333
|
+
return true;
|
2334
|
+
}
|
2335
|
+
|
2336
|
+
if (event.shiftKey === true) {
|
2337
|
+
editor.insertText(shy);
|
2338
|
+
} else {
|
2339
|
+
editor.insertText('\n');
|
2340
|
+
}
|
2341
|
+
|
2342
|
+
return false;
|
2343
|
+
}, [editor]);
|
2344
|
+
}
|
2345
|
+
function decorateLineBreaks(nodeEntry) {
|
2346
|
+
return [].concat(_toConsumableArray(decorateCharacter(nodeEntry, shy, {
|
2347
|
+
shy: true
|
2348
|
+
}, {
|
2349
|
+
length: 1
|
2350
|
+
})), _toConsumableArray(decorateCharacter(nodeEntry, "\n", {
|
2351
|
+
newLine: true
|
2352
|
+
}, {
|
2353
|
+
length: 0
|
2354
|
+
})));
|
2355
|
+
}
|
2356
|
+
|
2357
|
+
function decorateCharacter(_ref, character, attributes, _ref2) {
|
2358
|
+
var _ref3 = _slicedToArray(_ref, 2),
|
2359
|
+
node = _ref3[0],
|
2360
|
+
path = _ref3[1];
|
2361
|
+
|
2362
|
+
var length = _ref2.length;
|
2363
|
+
|
2364
|
+
if (Text.isText(node)) {
|
2365
|
+
var parts = node.text.split(character);
|
2366
|
+
parts.pop();
|
2367
|
+
var i = 0;
|
2368
|
+
return parts.map(function (part) {
|
2369
|
+
i += part.length + 1;
|
2370
|
+
return _objectSpread2({
|
2371
|
+
anchor: {
|
2372
|
+
path: path,
|
2373
|
+
offset: i - 1
|
2374
|
+
},
|
2375
|
+
focus: {
|
2376
|
+
path: path,
|
2377
|
+
offset: i - 1 + length
|
2378
|
+
}
|
2379
|
+
}, attributes);
|
2380
|
+
});
|
2381
|
+
}
|
2382
|
+
|
2383
|
+
return [];
|
2384
|
+
}
|
2385
|
+
|
2386
|
+
function withLineBreakNormalization(editor) {
|
2387
|
+
var normalizeNode = editor.normalizeNode;
|
2388
|
+
|
2389
|
+
editor.normalizeNode = function (_ref4) {
|
2390
|
+
var _ref5 = _slicedToArray(_ref4, 2),
|
2391
|
+
node = _ref5[0],
|
2392
|
+
path = _ref5[1];
|
2393
|
+
|
2394
|
+
if (path.length === 0 && editor.children.length > 1) {
|
2395
|
+
Transforms.mergeNodes(editor);
|
2396
|
+
return;
|
2397
|
+
} else if (node.text) {
|
2398
|
+
if (deleteCharacter(editor, node, path, /\n\n/) || deleteCharacter(editor, node, path, new RegExp("^\n")) || deleteCharacter(editor, node, path, new RegExp("".concat(shy, "\\s"))) || deleteCharacter(editor, node, path, new RegExp("^".concat(shy))) || deleteCharacter(editor, node, path, new RegExp("\\s".concat(shy)), 1) || deleteCharacter(editor, node, path, new RegExp("".concat(shy).concat(shy)))) {
|
2399
|
+
return;
|
2400
|
+
}
|
2401
|
+
}
|
2402
|
+
|
2403
|
+
return normalizeNode([node, path]);
|
2404
|
+
};
|
2405
|
+
|
2406
|
+
return editor;
|
2407
|
+
}
|
2408
|
+
|
2409
|
+
function deleteCharacter(editor, node, path, regExp) {
|
2410
|
+
var offset = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 0;
|
2411
|
+
var match = regExp.exec(node.text);
|
2412
|
+
|
2413
|
+
if (match) {
|
2414
|
+
Transforms["delete"](editor, {
|
2415
|
+
at: {
|
2416
|
+
path: path,
|
2417
|
+
offset: match.index + offset
|
2418
|
+
},
|
2419
|
+
distance: 1,
|
2420
|
+
unit: 'character'
|
2421
|
+
});
|
2422
|
+
return true;
|
2423
|
+
}
|
2424
|
+
|
2425
|
+
return false;
|
2426
|
+
}
|
2427
|
+
|
2428
|
+
var styles$9 = {"shy":"index-module_shy__1E2-J","newLine":"index-module_newLine__1QnIs","selected":"index-module_selected__1U9ro","manualHyphens":"index-module_manualHyphens__16b2t"};
|
2429
|
+
|
2437
2430
|
var EditableInlineText = memo(function EditableInlineText(_ref) {
|
2438
2431
|
var _cachedValue$, _cachedValue$$childre;
|
2439
2432
|
|
2440
2433
|
var value = _ref.value,
|
2441
2434
|
_ref$defaultValue = _ref.defaultValue,
|
2442
2435
|
defaultValue = _ref$defaultValue === void 0 ? '' : _ref$defaultValue,
|
2436
|
+
hyphens = _ref.hyphens,
|
2443
2437
|
placeholder = _ref.placeholder,
|
2444
2438
|
onChange = _ref.onChange;
|
2445
2439
|
var editor = useMemo(function () {
|
2446
|
-
return
|
2440
|
+
return withLineBreakNormalization(withReact(createEditor()));
|
2447
2441
|
}, []);
|
2442
|
+
var handleLineBreaks = useLineBreakHandler(editor);
|
2448
2443
|
|
2449
2444
|
var _useCachedValue = useCachedValue(value, {
|
2450
2445
|
defaultValue: [{
|
@@ -2459,43 +2454,44 @@ var EditableInlineText = memo(function EditableInlineText(_ref) {
|
|
2459
2454
|
cachedValue = _useCachedValue2[0],
|
2460
2455
|
setCachedValue = _useCachedValue2[1];
|
2461
2456
|
|
2462
|
-
|
2463
|
-
|
2464
|
-
|
2465
|
-
|
2466
|
-
|
2467
|
-
|
2468
|
-
|
2469
|
-
|
2470
|
-
|
2471
|
-
|
2472
|
-
|
2473
|
-
|
2474
|
-
|
2475
|
-
|
2476
|
-
|
2477
|
-
|
2478
|
-
|
2457
|
+
var _useContentElementEdi = useContentElementEditorState(),
|
2458
|
+
isSelected = _useContentElementEdi.isSelected;
|
2459
|
+
|
2460
|
+
return /*#__PURE__*/React.createElement("div", {
|
2461
|
+
className: classNames(frontendStyles.root, _defineProperty({}, styles$9.manualHyphens, hyphens === 'manual'), _defineProperty({}, frontendStyles.manualHyphens, hyphens === 'manual'), _defineProperty({}, styles$9.selected, isSelected)),
|
2462
|
+
spellCheck: "false"
|
2463
|
+
}, /*#__PURE__*/React.createElement(Slate, {
|
2464
|
+
editor: editor,
|
2465
|
+
value: cachedValue,
|
2466
|
+
onChange: setCachedValue
|
2467
|
+
}, /*#__PURE__*/React.createElement(Editable, {
|
2468
|
+
decorate: decorateLineBreaks,
|
2469
|
+
onKeyDown: handleLineBreaks,
|
2470
|
+
renderLeaf: renderLeaf
|
2471
|
+
})), /*#__PURE__*/React.createElement(TextPlaceholder, {
|
2472
|
+
text: placeholder,
|
2473
|
+
visible: !((_cachedValue$ = cachedValue[0]) === null || _cachedValue$ === void 0 ? void 0 : (_cachedValue$$childre = _cachedValue$.children[0]) === null || _cachedValue$$childre === void 0 ? void 0 : _cachedValue$$childre.text)
|
2474
|
+
}));
|
2479
2475
|
});
|
2480
2476
|
|
2481
|
-
function
|
2482
|
-
var
|
2483
|
-
|
2484
|
-
|
2485
|
-
var _ref3 = _slicedToArray(_ref2, 2),
|
2486
|
-
node = _ref3[0],
|
2487
|
-
path = _ref3[1];
|
2477
|
+
function renderLeaf(_ref2) {
|
2478
|
+
var attributes = _ref2.attributes,
|
2479
|
+
children = _ref2.children,
|
2480
|
+
leaf = _ref2.leaf;
|
2488
2481
|
|
2489
|
-
|
2490
|
-
|
2491
|
-
|
2492
|
-
|
2493
|
-
|
2482
|
+
if (leaf.shy) {
|
2483
|
+
children = /*#__PURE__*/React.createElement("span", {
|
2484
|
+
className: styles$9.shy
|
2485
|
+
}, children);
|
2486
|
+
}
|
2494
2487
|
|
2495
|
-
|
2496
|
-
|
2488
|
+
if (leaf.newLine) {
|
2489
|
+
children = /*#__PURE__*/React.createElement("span", {
|
2490
|
+
className: styles$9.newLine
|
2491
|
+
}, children);
|
2492
|
+
}
|
2497
2493
|
|
2498
|
-
return
|
2494
|
+
return /*#__PURE__*/React.createElement("span", attributes, children);
|
2499
2495
|
}
|
2500
2496
|
|
2501
2497
|
function PhonePlatformProvider(_ref) {
|
@@ -2523,12 +2519,9 @@ function PhonePlatformProvider(_ref) {
|
|
2523
2519
|
return window.removeEventListener('message', receive);
|
2524
2520
|
};
|
2525
2521
|
});
|
2526
|
-
return (
|
2527
|
-
|
2528
|
-
|
2529
|
-
value: phoneEmulationMode
|
2530
|
-
}, children)
|
2531
|
-
);
|
2522
|
+
return /*#__PURE__*/React.createElement(PhonePlatformContext.Provider, {
|
2523
|
+
value: phoneEmulationMode
|
2524
|
+
}, children);
|
2532
2525
|
}
|
2533
2526
|
|
2534
|
-
export { ContentElementDecorator, EditableInlineText, EditableText,
|
2527
|
+
export { ContentDecorator, ContentElementDecorator, EditableInlineText, EditableText, LayoutWithPlaceholder, PhonePlatformProvider, SectionDecorator };
|