-
Notifications
You must be signed in to change notification settings - Fork 274
[Remove Vuetify from Studio] Channel details in Channels - content #5540
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
base: unstable
Are you sure you want to change the base?
[Remove Vuetify from Studio] Channel details in Channels - content #5540
Conversation
61e0727 to
5c41386
Compare
|
Hi @vtushar06, thank you. As for the structure of components, and very high-level, looks as expected 👍 Before we dive into full review though, let's revisit approach to testing. This will help a reviewer too - they will be able to recognize whether the logic behaves as expected for channels with/without all sorts of data. Also, the guidance I left is quite general. I know you have more PRs open - would you please check if there are some similar patterns to be addressed there as well? |
contentcuration/contentcuration/frontend/shared/views/__tests__/StudioChip.spec.js
Outdated
Show resolved
Hide resolved
contentcuration/contentcuration/frontend/shared/views/__tests__/StudioDetailsPanel.spec.js
Outdated
Show resolved
Hide resolved
contentcuration/contentcuration/frontend/shared/views/__tests__/StudioDetailsPanel.spec.js
Show resolved
Hide resolved
|
Hii @MisRob, |
|
One more thing when I tested this in 'rtl' I can see that notranslate class doesn't follow that on official website and same on localhost, what should I do to that?? |
|
Hi @vtushar06, We will assign reviewer here week or two later, some time after we've merged few other PRs, one of them yours, that will be good to have in place before we check these changes. Meanwhile you can revisit: (1) The use of stubs and possible simplification of the test suite setup according to notes I left today on your other PRs, if relevant. (2) As for your note:
I don't yet see this in |
I don't quite understand the question - would you post a screenshot, or rephrase? |
|
Hi @vtushar06, I wanted to mention that I've just merged another PR that introduces I think it'd be easiest if you rebased this PR on top of the latest |
…n from unstable The contributor's StudioChip implementation is identical to ours. We'll use their version from unstable and focus on test refactoring following Issue learningequality#5536 patterns (data-present vs data-absent scenarios). Following maintainer guidance from PR learningequality#5540 review.
f5d6f31 to
5600ff2
Compare
… add cases for various data states and edge cases
…formatting and style consistency
ba4add6 to
ff8e9e0
Compare
|
Hi @MisRob, I've completed all the requested changes - tests now follow VTL principles with data-present/absent scenarios, and I'm using the contributor's StudioChip from unstable. About RTL/notranslate: The notranslate class is for excluding user content from translation services, not for text direction. The dir="auto" attribute handles RTL direction. Is this the expected behavior? and all 41 tests passing. Now it is ready for review . |
|
Hii @MisRob, Please give me some time I am going through all the files line by line to see any cleanups require or any other change referencing to my other PRs. |
|
Much appreciated @vtushar06 - and take all the time you need, no rush. We need to finish other reviews at first anyway. |
|
@vtushar06, before you revisit it, would you also merge the latest |
|
yeah sure @MisRob, I will and work is almost done, last commit will be pushed very soon. |
…placeholder handling and styling consistency
Resolved conflict in ChannelDetailsModal.vue by keeping KDS components (KButton, KDropdownMenu) from unstable while using StudioDetailsPanel instead of DetailsPanel
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This pull request migrates the Channel Details functionality from Vuetify components to the Kolibri Design System (KDS), continuing the broader effort to remove Vuetify dependencies from Studio. The migration introduces two new KDS-based components (StudioDetailsRow and StudioDetailsPanel) that replace the Vuetify-based DetailsPanel, ensuring consistent design patterns across the application.
Key changes:
- Created
StudioDetailsRow.vuewith CSS Grid layout replacing Vuetify's VLayout/VFlex - Created
StudioDetailsPanel.vuewith full KDS component migration (KImg, KIcon, KTooltip) - Updated
ChannelDetailsModal.vueto use the new StudioDetailsPanel component - Added comprehensive unit tests for both new components (41 tests total)
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
StudioDetailsRow.vue |
New component implementing responsive grid layout for detail rows with label-value pairs, including accessibility support via HelpTooltip |
StudioDetailsPanel.vue |
New component replacing DetailsPanel with KDS equivalents, displaying channel/content metadata with KImg thumbnails, StudioChip tags, and KTooltip descriptions |
ChannelDetailsModal.vue |
Updated imports and component references to use StudioDetailsPanel instead of DetailsPanel |
StudioDetailsRow.spec.js |
Test suite for StudioDetailsRow (13 tests) covering rendering, slots, and tooltip behavior |
StudioDetailsPanel.spec.js |
Test suite for StudioDetailsPanel (28 tests) covering published/unpublished channels and data presence/absence scenarios |
StudioChip.spec.js |
Removed tests (existing component from unstable, tests likely consolidated elsewhere) |
EmailUsersDialog.vue |
Import ordering correction: moved vuex imports before local imports per codebase convention |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
contentcuration/contentcuration/frontend/shared/views/details/StudioDetailsPanel.vue
Outdated
Show resolved
Hide resolved
|
Hi @MisRob, I have merged the latest unstable and resolved all conflicts.Now PR is ready for review. |
|
Hi @vtushar06, I'm sorry for delay - I will review after I'm back from my vacation. It'll be quite a long time - just in case you wouldn't be around later in January or February, I can just push requested changes, if I locate any, too. Thanks! |
|
sure @MisRob, I will be there waiting for your review and you can push changes if exists. |
|
Thanks for your patience @vtushar06. Take care and see you in the new year :)! |
|
Hii @MisRob, once you are free, can you review this PR.Thanks |
|
Hi @vtushar06, thanks for the reminder - it's on my schedule for this week! Again sorry for delay - was catching up after vacation, and then needed to attend to high-priority tasks. |
|
No worries at all @MisRob, I understand priorities and urgent tasks come first. I'm excited about |
MisRob
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @vtushar06, I started reviewing and testing.
I have some technical difficulties in downloading production-like channels for testing and it may take some time for us to fix it. But meanwhile I will be gradually posting whatever I notice from code or from development-only channels.
contentcuration/contentcuration/frontend/shared/views/__tests__/StudioChip.spec.js
Show resolved
Hide resolved
contentcuration/contentcuration/frontend/shared/views/details/StudioDetailsPanel.vue
Show resolved
Hide resolved
contentcuration/contentcuration/frontend/shared/views/details/StudioDetailsPanel.vue
Outdated
Show resolved
Hide resolved
contentcuration/contentcuration/frontend/shared/views/details/StudioDetailsPanel.vue
Outdated
Show resolved
Hide resolved
contentcuration/contentcuration/frontend/shared/views/details/StudioDetailsPanel.vue
Show resolved
Hide resolved
|
Hi @vtushar06, I was able to preview on our QA channel - and overall it's pretty solid! There's a problem with the channel thumbnail (may be related to my question around encoding) and few smaller visual regressions (spacing, help icon alignment, the bottom sample content section). Could you compare and fix what you can? (3) is just for reference. For now, you'd want to align (1) to (2).
|
|
Here is How to preview QA channel in Studio localhost. After you have that, the most efficient way to preview before/after I figured out was to This way you won't need to stop and re-run the development server ;) Or, to make it even simpler and avoid having to use |
|
Apart from those visual matters, I haven't noticed any missing data, sections, etc. - so I want to say good work! This was a bit more complex than I originally anticipated. Let me know if you had any questions. It may also be good to merge latest Please take your time and try to align everything carefully and let me know after you're finished. Be ready for some more feedback coming after that, but I would expected that to be last fine-tuning. |



Summary
Migrates ChannelDetailsModal from Vuetify to Kolibri Design System (KDS).
Components
Key Changes
Testing
Screen-Recording:
Channel.details.modal.mp4
…
References
fixes : #5530
…
Reviewer guidance
…