-
Notifications
You must be signed in to change notification settings - Fork 4.9k
Notes: Open a full searchable emoji picker from the add-reaction button (stacked on #76767) #78176
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weβll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
adamsilverstein
wants to merge
205
commits into
add-notes-emoji-reactions-try-addditional-comment-type
from
add-notes-emoji-reactions-full-picker
+4,826
β427
Open
Changes from all commits
Commits
Show all changes
205 commits
Select commit
Hold shift + click to select a range
9e4bfb3
Add ReactionEmojiPicker component for Notes
adamsilverstein 461eead
Add ReactionDisplay component for Notes
adamsilverstein 3432f96
Add ReactionDetailsPopover component for Notes
adamsilverstein 6a8a24b
Add reaction CRUD functions to useBlockCommentsActions
adamsilverstein 426927f
Integrate emoji reactions into Notes UI
adamsilverstein 866d095
Add styles for emoji reactions in Notes
adamsilverstein d440bba
Add E2E tests for emoji reactions in Notes
adamsilverstein f996e50
Merge trunk and fix emoji reaction E2E test failures
adamsilverstein 2b793d6
Fix emoji reaction button: use smiley icon, fix focus, and improve stβ¦
adamsilverstein 1b66eb9
Move emoji reaction button to header and register _wp_reactions meta
adamsilverstein 9f3c8e4
Fix emoji reaction pills dark background
adamsilverstein b12a044
Override Button is-pressed style on reaction pills
adamsilverstein 427f25d
Make reaction pill buttons more circular
adamsilverstein d4d39e3
update docblock
adamsilverstein de66f7d
Refactor to use 'Composite' component
Mamaduka 888c837
Move _wp_reactions meta to wordpress-7.0 compat
adamsilverstein a031099
Remove unnecessary login checks from reaction handlers
adamsilverstein bbb61a9
Remove reflowComments from reaction handlers
adamsilverstein b28f67e
Batch user fetching in reaction details popover
adamsilverstein 39f9d35
Update reaction button icon per design feedback
adamsilverstein e4f9139
Replace thumbs down reaction with thinking emoji
adamsilverstein 30d4a7e
type fix
adamsilverstein b2b46d1
Linter and styling fixes
adamsilverstein b9f1383
Store emoji slugs in database instead of emoji characters
adamsilverstein d7445c7
Use Button component in emoji picker / simplify CSS
adamsilverstein 2c1526c
finish switch to button and emoji as slugs
adamsilverstein 240c410
Make emoji reaction picker vertical
adamsilverstein 792ac67
Reduce emoji reactions to five skin-tone-safe options
adamsilverstein b1c9d35
more style cleanup
adamsilverstein bd8064d
Use Button component in emoji picker to reduce CSS
adamsilverstein 765605e
Improve reaction button styling
adamsilverstein 31d15de
Rename _wp_reactions meta key to _wp_note_reactions
adamsilverstein 2e71e3d
Apply suggestion from @t-hamano
adamsilverstein 1afeb81
Move currentUserId selector into ReactionDisplay
adamsilverstein 1d3fe41
Replace reaction details popover with tooltips
adamsilverstein ebc07c5
Consolidate reaction functions into onToggleReaction
adamsilverstein 9edaaca
Move reaction button to comment content area
adamsilverstein e9c5b6c
Add missing primitives reference to editor tsconfig
adamsilverstein 6b092af
Fix CI: update package-lock.json and E2E emoji reaction tests
adamsilverstein 2f5d925
Close emoji picker popover after selecting a reaction
adamsilverstein 1f02b4f
Update packages/editor/src/components/collab-sidebar/style.scss
adamsilverstein 96ff549
Update lib/compat/wordpress-6.9/block-comments.php
adamsilverstein 335ad3d
Add backport changelog entry for core PR 10930
adamsilverstein cbc4d99
move backport changelog to 7.0
adamsilverstein 10f745d
Switch emoji reactions to custom comment type
adamsilverstein 941b736
Add backport changelog entry for PR 75549
adamsilverstein 6b21598
Show add-reaction button on touch devices
adamsilverstein 7117448
Show add-reaction button only on hover on desktop
adamsilverstein a9f1490
Merge branch 'add-notes-emoji-reactions' into add-notes-emoji-reactioβ¦
adamsilverstein e304dff
Add note_reaction_emojis filter for emoji list
adamsilverstein 52690b2
Inject note reaction emojis into editor settings
adamsilverstein 869c89e
Read reaction emojis from editor settings
adamsilverstein ea6413e
Use settings-based emoji list in ReactionDisplay
adamsilverstein cb92b59
Make reaction emoji list filterable via settings
adamsilverstein 007854e
Move add-reaction button to reactions row
adamsilverstein 857c84f
Simplify reaction placement and style from Mamaduka
adamsilverstein db5e541
Merge branch 'add-notes-emoji-reactions' into add-notes-emoji-reactioβ¦
adamsilverstein 3b2512d
Remove stray add_action for nonexistent metadata registration function
adamsilverstein b9e4284
Revert filterable emoji list for note reactions
adamsilverstein 326c7ed
Rename note_reaction comment type to reaction
adamsilverstein 5664b64
Move reaction PHP code to lib/compat/wordpress-7.1
adamsilverstein db49d96
Expose allowed reaction emojis via REST API schema
adamsilverstein e6082a1
Merge trunk into add-notes-emoji-reactions-try-addditional-comment-type
adamsilverstein 8d5457d
Fix CI: add new PR to backport changelog and fix PHP alignment
adamsilverstein d97cf1a
Fix children link type for notes, unmount safety, and stale closure
adamsilverstein 5028f97
Fix schema tests to call get_item_schema() directly
adamsilverstein c6b5c81
Fix prettier formatting in reaction-emoji-picker
adamsilverstein 64cd35e
Add reaction_summary field to note REST responses
adamsilverstein 1c95873
Use reaction_summary from REST API instead of fetching all reactions
adamsilverstein 6ae1c82
Add PHP tests for reaction_summary field
adamsilverstein e1ae515
Fix PHP alignment warnings
adamsilverstein 8253d31
Fix PHP alignment in test file
adamsilverstein 73eb5dc
Move smiley icon to @wordpress/icons package
adamsilverstein 776efb9
Lazy-load user names for reaction tooltips on hover
adamsilverstein 0a0350d
Replace GROUP_CONCAT with separate user query for reaction summaries
adamsilverstein e257b7e
Merge branch 'trunk' into add-notes-emoji-reactions-try-addditional-cβ¦
adamsilverstein 74a114e
Merge branch 'trunk' into add-notes-emoji-reactions-try-addditional-cβ¦
adamsilverstein 2015ad2
Merge branch 'trunk' into add-notes-emoji-reactions-try-addditional-cβ¦
adamsilverstein 9064196
Notes: Document rationale for storing reactions as a custom comment type
adamsilverstein acf83b7
Notes: Update reaction E2E tests to renamed fixture and method
adamsilverstein 729f47f
Merge branch 'trunk' into add-notes-emoji-reactions-try-addditional-cβ¦
adamsilverstein 73b0fd7
Notes: Use --wpds-cursor-control token on add-reaction button
adamsilverstein a99bc46
Merge branch 'trunk' into add-notes-emoji-reactions-try-addditional-cβ¦
adamsilverstein ea19200
Notes: Centralize internal comment types via gutenberg_get_internal_cβ¦
adamsilverstein 265f24a
Notes: Add Frimousse-based full emoji picker behind a + button
adamsilverstein 9df4145
Notes: Bundle Frimousse emoji data, normalize reaction storage
adamsilverstein e430b3d
Notes: Move full picker to a sibling button + add E2E tests
adamsilverstein f5ffa57
Notes: Serve emojibase data from plugins_url, drop bundle inflation
adamsilverstein 9495517
Notes: Replace Menu.Popover with Dropdown so reaction popovers escapeβ¦
adamsilverstein 05a6c1f
Notes: Add E2E tests pinning the popover-portal and selection-persistβ¦
adamsilverstein b1c45e5
Notes: Wrap Frimousse popover tightly to its picker
adamsilverstein 06c8169
Notes: Size Frimousse picker to its 8-column grid, not an arbitrary sβ¦
adamsilverstein ca79a82
Notes: Allow re-adding a reaction after removing it on the same note
adamsilverstein 4d74489
Notes: Drop empty wordpress-7.0/block-comments.php compat shim
adamsilverstein 1c2f0d3
Notes: Force-delete reactions and refetch only the toggled note's record
adamsilverstein f2a21ac
Notes: Pin re-add-reaction test against duplicate-reaction error and β¦
adamsilverstein 96ad388
Notes: Replace Frimousse picker with native SearchControl + Compositeβ¦
adamsilverstein e24a397
Notes: Move full emoji picker to a follow-up PR
adamsilverstein 3524f99
Notes: Drop hex-key storage helpers and orphan picker CSS
adamsilverstein 6aa1aec
Notes: Add full emoji picker behind a + button
adamsilverstein 61d19a0
Notes: Consolidate reaction failure-case tests with a data provider
adamsilverstein c40bdcf
Notes: Switch curated reaction picker from vertical to horizontal
adamsilverstein 85ed2c7
Update backport-changelog/7.0/10930.md
adamsilverstein 23bd527
Update packages/editor/src/components/collab-sidebar/style.scss
adamsilverstein b6e3cb1
Notes: Standardize add-reaction button to 24px height
adamsilverstein 89289cf
Notes: Disable add-reaction button on resolved threads
adamsilverstein b7db753
Notes: Switch emoji slug lookups to a memoized Map
adamsilverstein 033e765
Notes: Inline smiley icon, drop from public @wordpress/icons
adamsilverstein a8cfa0c
Merge branch 'add-notes-emoji-reactions-try-addditional-comment-type'β¦
adamsilverstein 9af7fae
Merge remote-tracking branch 'origin/trunk' into add-notes-emoji-reacβ¦
adamsilverstein 411ba15
Merge branch 'add-notes-emoji-reactions-try-addditional-comment-type'β¦
adamsilverstein a47d635
Update build.mjs
adamsilverstein 3299acc
Notes: Move emojibase copy script to tools/build-scripts workspace
adamsilverstein 9e7442e
Notes: Remove redundant __nextHasNoMarginBottom from SearchControl
adamsilverstein b73893f
Merge trunk into add-notes-emoji-reactions-try-addditional-comment-type
adamsilverstein d836ac2
Merge branch 'trunk' into add-notes-emoji-reactions-try-addditional-cβ¦
adamsilverstein e5d9415
Merge remote-tracking branch 'origin/add-notes-emoji-reactions-try-adβ¦
adamsilverstein 72d5d3b
Merge remote-tracking branch 'origin/trunk' into add-notes-emoji-reacβ¦
adamsilverstein 1d80e8e
Merge remote-tracking branch 'origin/add-notes-emoji-reactions-try-adβ¦
adamsilverstein 9488cf1
Notes: Harden note and reaction creation permissions
adamsilverstein dee5d00
Notes: Stop overriding note children link with reactions
adamsilverstein 87384c8
Notes: Drop OPTIONS emoji fetch in favor of curated client list
adamsilverstein 1b0c65e
Collab sidebar: update renamed WPDS color tokens
adamsilverstein 5fa099e
Merge remote-tracking branch 'origin/add-notes-emoji-reactions-try-adβ¦
adamsilverstein 95535a2
Merge remote-tracking branch 'origin/add-notes-emoji-reactions-try-adβ¦
adamsilverstein 033b1cf
Merge remote-tracking branch 'origin/add-notes-emoji-reactions-try-adβ¦
adamsilverstein 3fc3c8a
Merge remote-tracking branch 'origin/add-notes-emoji-reactions-try-adβ¦
adamsilverstein 8cf346a
Notes full picker: address design review feedback
adamsilverstein ec5f642
Merge remote-tracking branch 'origin/add-notes-emoji-reactions-try-adβ¦
adamsilverstein e7bdbc6
Add Storybook story for the Notes emoji picker
adamsilverstein 9a682b5
Add Storybook story for the full Notes reaction row
adamsilverstein ed4c39b
Consolidate reaction triggers into a single smiley button
adamsilverstein e41a6eb
Add a skin tone picker to the full emoji picker
adamsilverstein b4a2ee4
Add e2e coverage for the emoji skin tone preference
adamsilverstein 50aacc5
Add a Frequently used section to the full emoji picker
adamsilverstein e984905
Add e2e coverage for the Frequently used emoji section
adamsilverstein 496d549
Notes: Author the emoji picker modules as TypeScript
adamsilverstein b7dfa8c
Merge remote-tracking branch 'origin/trunk' into add-notes-emoji-reacβ¦
adamsilverstein 379bdff
Merge remote-tracking branch 'origin/add-notes-emoji-reactions-try-adβ¦
adamsilverstein ff10c2f
Notes: Fix build failures from trunk merge
adamsilverstein 0d9df50
Notes: Drop stale 'Reaction added.' snackbar assertions from e2e
adamsilverstein 70cff94
Merge updated base (trunk-current #76767) into full-picker
adamsilverstein 76ccc26
Notes: Decode emoji code points without mbstring
adamsilverstein a06fd32
Notes: Normalize full-picker picks against the filtered emoji list
adamsilverstein ccfff03
Notes: Announce emoji search result counts
adamsilverstein f92a981
Notes: Focus the selected skin tone when the flyout opens
adamsilverstein ac9d380
Notes: Expose picker categories to AT and flatten search results
adamsilverstein e883e28
Notes: Match the emoji picker popover to standard popover chrome
adamsilverstein d9a475b
Notes: Add editor CHANGELOG entry for the full emoji picker
adamsilverstein d08d3e5
Merge branch 'add-notes-emoji-reactions-try-addditional-comment-type'β¦
adamsilverstein 6ede323
Notes: Open the full emoji picker directly from the add-reaction button
adamsilverstein 5643a47
Notes: Fix emoji grid focus ring clipping and phantom active highlight
adamsilverstein d776cff
Notes: Drop the redundant 'emoji' suffix from reaction tooltips
adamsilverstein 1d04ff3
Notes: Give reaction pills more breathing room
adamsilverstein f38bc94
Notes: Expose the skin-tone listbox's horizontal orientation
adamsilverstein 755bc44
Notes: Derive the reactor tooltip from names plus the current label
adamsilverstein d6b6d55
Notes: Name the reaction picker popups and advertise them on triggers
adamsilverstein 777f0b8
Notes: Extract the add-reaction picker and survive full-picker failures
adamsilverstein 25313a8
Notes: Configure the emoji picker through editor settings, not globals
adamsilverstein a1e7d01
Notes: Derive picker geometry from WPDS tokens
adamsilverstein 8d973ba
Notes: Assert Escape focus return and nested-overlay dismissal in e2e
adamsilverstein e2fa31a
Merge remote-tracking branch 'origin/add-notes-emoji-reactions-try-adβ¦
adamsilverstein db8ac3a
Merge branch 'add-notes-emoji-reactions-try-addditional-comment-type'β¦
adamsilverstein 5209f0d
Update the picker keynav test and drop stale dependency-group comments
adamsilverstein 7a10cd5
Merge branch 'add-notes-emoji-reactions-try-addditional-comment-type'β¦
adamsilverstein ca95c99
Keep reaction hex keys in one normal form
adamsilverstein 2905c6e
Fix the emoji picker's loading, announcement and tooltip edges
adamsilverstein 4edeefd
Merge remote-tracking branch 'origin/add-notes-emoji-reactions-try-adβ¦
adamsilverstein 084bf12
Align reaction tests with the merged curated picker
adamsilverstein 669b089
Convert the emoji picker's new test and story files to TypeScript
adamsilverstein 19164b4
Merge remote-tracking branch 'origin/add-notes-emoji-reactions-try-adβ¦
adamsilverstein 53380fe
Add backport changelog entry for PR #78176
adamsilverstein 649b766
Accept hex code-point reaction slugs from the full picker
adamsilverstein 366e53f
Merge remote-tracking branch 'origin/add-notes-emoji-reactions-try-adβ¦
adamsilverstein 5c6367a
Drop 'emoji' from the reaction tooltip assertion
adamsilverstein 27ffc8c
Merge remote-tracking branch 'origin/add-notes-emoji-reactions-try-adβ¦
adamsilverstein 9713a89
Merge commit '85042b89cbd' into add-notes-emoji-reactions-full-picker
adamsilverstein 5294abb
Merge commit '7e3a89c33df' into add-notes-emoji-reactions-full-picker
adamsilverstein a1ccbcc
Merge branch 'add-notes-emoji-reactions-try-addditional-comment-type'β¦
adamsilverstein 7880ae3
Rename emoji picker tests to the jsdom test naming convention
adamsilverstein 669b874
Merge branch 'add-notes-emoji-reactions-try-addditional-comment-type'β¦
adamsilverstein 3c6e363
Merge branch 'add-notes-emoji-reactions-try-addditional-comment-type'β¦
adamsilverstein 11a5127
Move the emojibase data compat file to the WordPress 7.2 directory
adamsilverstein 8c17d82
Tighten inline documentation across the emoji picker
adamsilverstein 1aed735
Merge commit '4b591065801' into add-notes-emoji-reactions-full-picker
adamsilverstein 06558d6
Move the emoji picker changelog entry to Unreleased
adamsilverstein 4e66600
Emoji picker: use Unicode's own category names for the group headings
adamsilverstein 5787b53
Merge trunk into add-notes-emoji-reactions-full-picker
adamsilverstein 44f5e24
Merge remote-tracking branch 'origin/add-notes-emoji-reactions-try-adβ¦
adamsilverstein 0467594
Merge remote-tracking branch 'origin/add-notes-emoji-reactions-try-adβ¦
adamsilverstein 5bca0cf
Tests: Run the emoji picker tests under Vitest
adamsilverstein ab14021
Tests: Type the module mocks and mock matchMedia for the skin tone flβ¦
adamsilverstein f2fb3f5
Merge remote-tracking branch 'origin/add-notes-emoji-reactions-try-adβ¦
adamsilverstein 0ef5a47
Editor: Declare the Vitest test env types for the dev project
adamsilverstein 3add4b4
Merge remote-tracking branch 'origin/add-notes-emoji-reactions-try-adβ¦
adamsilverstein 5dd9ae6
Merge remote-tracking branch 'origin/add-notes-emoji-reactions-try-adβ¦
adamsilverstein ef0e27f
Reformat ternary continuations for Prettier 3.9.6
adamsilverstein 75625d0
Notes: reveal the add-reaction trigger on hover instead of reserving β¦
adamsilverstein 25e7637
Merge remote-tracking branch 'origin/add-notes-emoji-reactions-try-adβ¦
adamsilverstein 59ad5e8
Notes: Use the reaction icon for the add reaction trigger
adamsilverstein 1c7479e
Merge #76767 into #78176 now that it carries the hover trigger
adamsilverstein e0febbf
Merge branch 'add-notes-emoji-reactions-try-addditional-comment-type'β¦
adamsilverstein e789531
Merge remote-tracking branch 'origin/add-notes-emoji-reactions-try-adβ¦
adamsilverstein c9c7f1c
Merge remote-tracking branch 'origin/add-notes-emoji-reactions-try-adβ¦
adamsilverstein 78a52b6
Notes: Match the emoji picker to its design and reach the grid from sβ¦
adamsilverstein File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,4 @@ | ||
| https://github.com/WordPress/wordpress-develop/pull/10930 | ||
|
|
||
| * https://github.com/WordPress/gutenberg/pull/76767 | ||
| * https://github.com/WordPress/gutenberg/pull/78176 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,129 @@ | ||
| <?php | ||
| /** | ||
| * Exposes a same-origin URL for the bundled Emojibase data, so the Notes | ||
| * emoji picker fetches its dataset without an external CDN. | ||
| * | ||
| * `tools/build-scripts/copy-emojibase-data.mjs` copies the files into | ||
| * `build/emojibase-data/{locale}/` at plugin build time. | ||
| * | ||
| * @package gutenberg | ||
| * @since 7.2.0 | ||
| */ | ||
|
|
||
| /** | ||
| * Injects the Emojibase dataset URL and per-emoji label overrides into the | ||
| * block editor settings, where the Notes picker reads them. npm consumers | ||
| * of `@wordpress/editor` opt in by supplying the same two settings. | ||
| * | ||
| * @since 7.2.0 | ||
| * | ||
| * @param array $settings Existing block editor settings. | ||
| * @return array Updated block editor settings. | ||
| */ | ||
| function gutenberg_add_emojibase_settings( $settings ) { | ||
| $settings['noteEmojibaseUrl'] = gutenberg_url( 'build/emojibase-data' ); | ||
| $settings['noteEmojiLabelOverrides'] = gutenberg_get_emoji_picker_label_overrides(); | ||
| return $settings; | ||
| } | ||
| add_filter( 'block_editor_settings_all', 'gutenberg_add_emojibase_settings' ); | ||
|
|
||
| /** | ||
| * Convert an emoji character to Emojibase's uppercase `hexcode` form: | ||
| * Variation Selector-16 stripped and each code point padded to four | ||
| * digits (`00A9`, not `A9`). | ||
| * | ||
| * Decodes UTF-8 by hand because `mbstring` is recommended but not | ||
| * required by WordPress, and `mb_ord()` is not polyfilled on all | ||
| * supported versions. | ||
| * | ||
| * @since 7.2.0 | ||
| * | ||
| * @param string $emoji Emoji character. | ||
| * @return string Uppercase four-digit-padded hex code-points joined by | ||
| * `-`, or empty string. | ||
| */ | ||
| function gutenberg_emoji_to_hexcode( $emoji ) { | ||
| if ( ! is_string( $emoji ) || '' === $emoji ) { | ||
| return ''; | ||
| } | ||
| $length = strlen( $emoji ); | ||
| $parts = array(); | ||
| for ( $i = 0; $i < $length; ) { | ||
| $byte = ord( $emoji[ $i ] ); | ||
| if ( $byte < 0x80 ) { | ||
| $codepoint = $byte; | ||
| $size = 1; | ||
| } elseif ( 0xC0 === ( $byte & 0xE0 ) ) { | ||
| $codepoint = $byte & 0x1F; | ||
| $size = 2; | ||
| } elseif ( 0xE0 === ( $byte & 0xF0 ) ) { | ||
| $codepoint = $byte & 0x0F; | ||
| $size = 3; | ||
| } elseif ( 0xF0 === ( $byte & 0xF8 ) ) { | ||
| $codepoint = $byte & 0x07; | ||
| $size = 4; | ||
| } else { | ||
| return ''; | ||
| } | ||
| for ( $j = 1; $j < $size; $j++ ) { | ||
| if ( $i + $j >= $length || 0x80 !== ( ord( $emoji[ $i + $j ] ) & 0xC0 ) ) { | ||
| return ''; | ||
| } | ||
| $codepoint = ( $codepoint << 6 ) | ( ord( $emoji[ $i + $j ] ) & 0x3F ); | ||
| } | ||
| $i += $size; | ||
| // Skip Variation Selector-16 so qualified `β€οΈ` (2764 FE0F) | ||
| // matches Emojibase's unqualified `2764` entry. | ||
| if ( 0xFE0F === $codepoint ) { | ||
| continue; | ||
| } | ||
| $parts[] = str_pad( strtoupper( dechex( $codepoint ) ), 4, '0', STR_PAD_LEFT ); | ||
| } | ||
| return implode( '-', $parts ); | ||
| } | ||
|
|
||
| /** | ||
| * Builds the per-emoji label override map exposed to the editor's picker. | ||
| * | ||
| * Emojibase translates labels for 28 locales only; the filter below lets | ||
| * sites fill the gap for the emojis they care about. Seeded with the | ||
| * curated reactions so both rows show the same label. | ||
| * | ||
| * @since 7.2.0 | ||
| * | ||
| * @return array Map of `hexcode => translated label`. | ||
| */ | ||
| function gutenberg_get_emoji_picker_label_overrides() { | ||
| $defaults = array(); | ||
| if ( function_exists( 'gutenberg_get_note_reaction_emojis' ) ) { | ||
| foreach ( gutenberg_get_note_reaction_emojis() as $entry ) { | ||
| if ( empty( $entry['emoji'] ) || empty( $entry['label'] ) ) { | ||
| continue; | ||
| } | ||
| $hex = gutenberg_emoji_to_hexcode( $entry['emoji'] ); | ||
| if ( '' !== $hex ) { | ||
| $defaults[ $hex ] = $entry['label']; | ||
| } | ||
| } | ||
| } | ||
|
|
||
| /** | ||
| * Filters the emoji label overrides exposed to the Notes picker. | ||
| * | ||
| * Keys are uppercase Emojibase `hexcode` values: each code point | ||
| * zero-padded to four digits with U+FE0F stripped, e.g. `2764` for | ||
| * β€οΈ and `00A9` for Β©οΈ. | ||
| * | ||
| * @since 7.2.0 | ||
| * | ||
| * @param array $overrides Map of `hexcode => translated label`. | ||
| */ | ||
| $overrides = apply_filters( | ||
| 'gutenberg_emoji_picker_label_overrides', | ||
| $defaults | ||
| ); | ||
|
|
||
| // A non-string label would crash `label.toLowerCase()` in searchEmojis(). | ||
| $overrides = is_array( $overrides ) ? $overrides : array(); | ||
| return array_filter( $overrides, 'is_string' ); | ||
| } | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,21 @@ | ||
| <?php | ||
| /** | ||
| * Plugin Name: Gutenberg Test Note Emojibase Unavailable | ||
| * Plugin URI: https://github.com/WordPress/gutenberg | ||
| * Author: Gutenberg Team | ||
| * | ||
| * @package gutenberg-test-note-emojibase-unavailable | ||
| */ | ||
|
|
||
| /** | ||
| * Drops the Emojibase dataset URL so the editor falls back to the curated | ||
| * quick row. Runs late to win over `gutenberg_add_emojibase_settings()`. | ||
| * | ||
| * @param array $settings Existing block editor settings. | ||
| * @return array Updated block editor settings. | ||
| */ | ||
| function gutenberg_test_remove_emojibase_url( $settings ) { | ||
| unset( $settings['noteEmojibaseUrl'] ); | ||
| return $settings; | ||
| } | ||
| add_filter( 'block_editor_settings_all', 'gutenberg_test_remove_emojibase_url', 20 ); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.