Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
Introduce PluginManager class #19485
This PR introduces a new PluginManager class that is meant to disconnect the plugin API function calls from direct access to the low-level datatype.
This PR would be a precursor to changes to the API such as #16384.
As a nice-to-have, I have introduced a new filter to allow the PluginManager class to be filtered. This will allow for ease of testing new API features and underlying data types but is not the main purpose of this PR and is easily removed.
How has this been tested?
This has been tested locally.
* added a Text component * avoid exporting and documenting the mixin * fix storybook title * use kebab-case for file naming * added a _default story with all variants in the one story * update styles * update snapshots for react-native * git and case-sensitive renames are the worst on macos * git and case-sensitive renames are the worst on macos * rename tests in kebab-case * renamed snapshot files * d'oh forgot to fix the casing ina file * update the readme to include when to use the component * removed eslint disable rule * update native snapshots * delete unnecessary tests ready for visual regression testing * update storyshots * commit updates to generated file * renamed Text to __experimentalText * remove unnecessary files * Update formatting of typings Co-Authored-By: Grzegorz (Greg) Ziółkowski <firstname.lastname@example.org> * fix formatting * Mark stories as experimental Co-Authored-By: Grzegorz (Greg) Ziółkowski <email@example.com> * updated story snapshots Co-authored-by: Grzegorz (Greg) Ziółkowski <firstname.lastname@example.org>
Removed instances of float:none; in other CSS rules since the component is already set for this. Remove the float completely.
* WritingFlow: absorb navigation logic from block * Move selection and navigation logic to WritingFlow * Use getBlockClientId in useMultiSelection * Fix block dragging * Fix focus after escape to nav mode * Remove IgnoreNestedEvents * Add getBlockClientId docs * Restore tabindex comment * Fix nested block appender click * Move focus and drag handling * Create root container for block list * Polish * Conditionally bind block event handlers * Ensure multiselection has 2 items before selecting * Update packages/block-editor/src/utils/dom.js Co-Authored-By: Andrew Duthie <email@example.com> * Adjust onFocus comment Co-authored-by: Andrew Duthie <firstname.lastname@example.org>
* useColors: directly pass ref for color detecting * Remove withFallbackStyles * Fix useColors parameters * Use state for detected colors so warning is immediately displayed * Restore separate targets * Address feedback
Ryan and I chatted about this PR yesterday. My personal observations are:
Maybe we can channel the current attention drawn to this PR and to #16384 and attempt to solve a broader problem? It's harder, but it pays off. :)
…9569) * [RNMobile] Merge mobile release v1.20.0 back into master (#19562) * styling fixes after navigation feature merge (#19455) * Styling fixes to navigation feature * Add netural styles for toolbar * Fix condition for not registered component * Display 'Unsupported' in breadcrumbs for missing components * Refactor after CR * Remove leftovers * [FIX] rich text focus loop (#19240) * check if onBlur event contains text that is different than value * add check if there is a text in native event * Prevent re-selection of RichText when native selection changes as a result of resigning focus * Fix typo * Check if isSelected only in onSelectionChangeFromAztec Co-authored-by: Jorge Bernal <email@example.com> * [RNMobile] Correct displaying photo during upload (#19502) * [RNMobile] Fix crash once adding Group (#19457) * Add extra branch for travis to run tests onto Co-authored-by: Luke Walczak <firstname.lastname@example.org> Co-authored-by: Drapich Piotr <email@example.com> Co-authored-by: Jorge Bernal <firstname.lastname@example.org> * Revert travis changes Co-authored-by: Luke Walczak <email@example.com> Co-authored-by: Drapich Piotr <firstname.lastname@example.org> Co-authored-by: Jorge Bernal <email@example.com>
@nerrad thank you for your comments/insight!
I'll remove the filter, it was not required for this PR to function and I agree with the argument of only added it when needed.
To this point:
This PR is a direct result of the work done for #16384. Specifically this comment. The idea of the API not being semantic enough has been raised a couple of times in Slack in regards to #16384. This PR is an attempt to address that.
As you can imagine, it's starting to feel like we're going in circles a little bit between the two PRs.
I don't know what's happened but my comment has disappeared from this pull it looks like. Also there's still a lot of changes in the changeset for this pull that don't seem related to the pull itself (there's 258 files changed for my view of this pull). What merge strategy is being used? Maybe there's just something awry with github at the time of me posting this.
It's unfortunate I can't see what I originally wrote in here :(
To address your response to the question I had about what problem this pull solves:
I think what I'm trying to point out by my question is that while I understand the inspiration for this pull, I'm not clear on how this specifically addresses what was raised by the comment in #16384. In part, it's likely because it's unclear exactly what @youknowriad is wanting to see. It appears that in this pull, you feel by moving the plain object into a named class
To address this pull specifically. I think there's value on pausing the discussion on gets implemented here until: