Submit to Community Library panel #5405
Open
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.
Summary
This PR implements a side panel for submitting channels to the Community Library.
I manually tested the changes by interacting with it in the browser, tried network throttling simulation to check the experience for users on slow networks, and tried switching the interface to Arabic to see how it handles RTL languages.
Detailed changes
SubmitToCommunityLibrarySidePanel
componentTreeViewBase
addPublishedData
method to the existingChannel
resourceCommunityLibrarySubmission
resourcei18n-iso-countries
instance to a separate util file to allow reuse outsideCountryField
fullWidth
prop toCountryField
to allow stretching the whole parent container widthtranslateMetadataString
util function (motivated by making it easier to use this logic from components using the composition API, where using mixins is not practical)References
Resolves #5262.
Reviewer guidance
The UX of the panel when it is loading data it needs to display was invented by me and needs to be especially checked from a design perspective. Also, warnings for when the channel is already public or when the latest published version of the channel already has a submission to the community library were not present in the initial design and should be especially checked.
Unresolved questions
KTextbox
component from KDS does not display correctly when an RTL language is used