Riverlea - add stream preview/edit to admin page - #32344
Conversation
|
🤖 Thank you for contributing to CiviCRM! ❤️ We will need to test and review this PR. 👷 Introduction for new contributors...
Quick links for reviewers...
|
6674d53 to
a2400a1
Compare
a2400a1 to
d9b35c9
Compare
|
Ok, there was some teething on Drupal (and the list is a bit squished). But demo should be working now here: http://core-32344-987dd.test-1.civicrm.org:8003/civicrm/admin/riverlea/streams |
|
This is really impressive @ufundo. The one-click preview alone is huge! I've only time for a quick explore this week. I'd perhaps separate test / discussion around the follow areas:
And then the big questions/tests
|
9939c78 to
243511f
Compare
| <div class="civi-riverlea-stream-editor-preview-container"> | ||
| </div> | ||
| </div> | ||
| <div class="civi-riverlea-stream-editor-buttons"> |
|
Do you have a particular problem with the responsive grid @vingle ? For me it seems much preferable if you might have a lot of entries and you have a nice wide screen. If they are fixed to fullwidth then they can become very very wide, and unnecessarily push later items below the fold. |
Just noting it should be responsive columns rather than fixed at 2. Unless I broke it somehow. Personally I'd prefer the extensions list to work this way also... I think it is a commonly preferred layout for in app/plug-in library type things? |
|
Just noting this will need updating for changes to variable names in master. |
|
@ufundo – it's more I don't like introducing new UX patterns with every new feature - it's not such good UX. My first choice would be make it look like the Extensions table. Second choice, SearchKit or FormBuilder. Third choice like ThemeTest. Am sure there's other UX's we could borrow. |
|
Right I see what you mean. You can create grid displays like this in SearchKit already - though the responsivity options need a bit of work, and hasn't been used for any core screens yet. Something got to be the first one? |
|
@ufundo - it's tricky because Civi doesn't have a pattern library. But it should because Civi has a mountain of patterns, all introduced with new functions like this! I guess the central question is - what does your layout add that other existing layouts don't offer? ie why is a new pattern needed? You need to be able to have two highlight border / bg colours simultaneously, but other than that this seems well-served by a tabular Civi layout with inline buttons? The extensions table in particular has details/summary expand region and three shades of coloured background. The design I sketched is similar to ThemeTest as I'm guessing themers might use both, but better imho would be to use a more common UX like Extensions table. (NB - I'm not trying to be a blocker here, design is obvs subjective. Just flagging the UX principle of re-using patterns as much as possible to make life easier for users - who gradually, subconsciously learn how they should behave around each pattern, and have to start from scratch with each new pattern they encounter). |
a40002e to
90e9fb2
Compare
|
@vingle I added those panel classes and Screencast.from.2025-06-16.17-35-47.mp4Definitely still needs some thinking about which variables to expose first... and how they can automatically cascade. |
|
( test site page: http://core-32344-4x7n9sa.test-1.civicrm.org:8003/civicrm/admin/riverlea/streams ) |
|
@ufundo this is too cool to let go stale. Would you be able to rebase? |
|
It's cool but a bit premature - waiting for the current batch of variable renames before rebasing. |
|
They got merged today! #33802
|
|
@ufundo Would this be a good time to rebase? I was curious to see if this patch still works. I managed to somewhat get it to work: https://github.com/civicrm/civicrm-core/compare/master...mlutfy:civicrm-core:pr32344test?expand=1 There are two lines of code that I had to comment because the functions didn't exist. I probably missed a piece of a patch. The live preview does not work, but the rest seems to work: I also renamed a few RiverLea variables that have been changed recently, but not all of them.
|
e93dc12 to
81cc3d5
Compare
|
@mlutfy I've had a go rebasing this. I've also tried to make the display of the currently selected themes clearer. In light of discussion on Riverlea docs MR I've moved the theme list to "/civicrm/admin/theme" and combined with the other theme settings. |
81cc3d5 to
5395bb4
Compare
|
Outstanding:
|
5395bb4 to
1f6dbf7
Compare
1f6dbf7 to
6d09700
Compare
| civi-riverlea-stream-card .btn.btn-set-preview.btn-stream-selected { | ||
| background-color: var(--crm-c-warning); | ||
| color: var(--crm-c-warning-text); | ||
| } |
There was a problem hiding this comment.
has changed to:
civi-riverlea-stream-card .btn.btn-stream-selected {
background-color: var(--crm-success-color);
color: var(--crm-success-text-color);
}
civi-riverlea-stream-card .btn.btn-set-preview.btn-stream-selected {
background-color: var(--crm-warning-color);
color: var(--crm-warning-text-color);
}
|
|
||
| civi-riverlea-stream-editor iframe { | ||
| width: 100%; | ||
| height: 100%; |
There was a problem hiding this comment.
border: var(--crm-border); would get rid of the default iframe 2px shaded border.
6d09700 to
1b6c431
Compare
I took it out because I thought it was a bit messy. There were borders for currently selected too. Positioning them at the top works much better I think, but have restored the border for the preview.
Yeh neatened it up a bit now
Does this really add anything, when you can see what these do on the screen in front of you instantly?
Yes!
Added more graceful handling for this. |
@ufundo - border-radius, unlike say font size, still often make sense to be, 3px, or 50%. So knowing the unit is 'rem' is useful - but it could go in parenthesis in the label. For the font sizes - I'd also find it useful if I'm trying to match a front-end layout with an existing front-end theme to know that 'large' is 24px, etc. But agree this info maybe won't be useful to many users. But I wouldn't call that a blocker on merging this. |







Overview
Add stream listing/previewing/editing to the Riverlea settings page. Rename the page "Theme Settings"
Before
After
Technical Details
The stream list, preview and editor are built with WebComponents. Some of the loading and templating could be streamlined if/when #34325 is merged.
Old Description
This builds on #32127 to add a UI for previewing and editing Riverlea streams.
It's not ready for merging but the idea is to demonstrate the point of adding the entity in #32127 and get feedback on a) how it looks; b) the technical approach.
Before
After
Technical Details
It's WebComponents again. This seems quite a good place to test them because a) there's opportunity for various bits of interaction between the components in this PR; but b) there probably quite self-contained and won't need to interact with anything outside of this PR.
The stream list also component also I think demonstrates how a WebComponent search kit listing might work.
Comments
@vingle would you be able to take a look? There's no upgrader for the entity included here so on the test site is probably best.