Skip to content

Conversation

@wesleyboar
Copy link
Member

@wesleyboar wesleyboar commented Aug 7, 2021

To Do

Overview

Implement "Data List" plugin.

Issues

Changes

  • Create plugin for UI component.

Screenshots

Form
Plugin Image
Data List GH-75 Form - Data List
Data List Item GH-75 Form - Data List Itemold screenshot
Link either "Generic" > "Link" or "Bootstrap 4" > "Link / Button"
Render GH-75 Render
Structure GH-75 Structure 1 GH-75 Structure 2

Testing

Last recorded deploy to Frontera (dev) was Build #392 (Aug 9, 2021 1:02:37 PM).

Last recorded deploy to Core (dev) was Build #393 (Aug 9, 2021 1:04:25 PM).

  1. If no environment, then prepare to test CMS changes.
  2. In CMS container, run python3 manage.py migrate.
  3. On CMS website, logged in as admin, add "TACC Site" > "Data List" plugin.
  4. Within the "Data List" plugin, add "TACC Site" > "Data List Item" plugin.
  5. Ensure the following:
    1. each config value changes/adds a classname on the root element from the snippet markup (classname/config map)
    2. plugin description (next to name) in Structure view describes the required config values (short_desc/config map)
    3. labels and values added (via "Data List Item" plugins) are rendered
      • ✱ and an empty Label field results in no label text (an empty label spot)
    4. styles match those from GH-75: Data List - Styles / Component #305
      • ✱ but more space above & below between Table label/value cells
  6. Within a "Data List Item":
    1. ✱ confirm "Link" fieldset instructions render well and make sense
    2. confirm "Advanced settings" > "Support child plugin for Label" is checked
    3. † add a "Generic" > "Link" or "Bootstrap 4" > "Link / Button"‡ plugin
  7. † Confirm label becomes the link you added.
  8. Add "Generic" > "Text" plugin.
  9. In Text plugin, in "CMS Plugins" dropdown, confirm these new plugins are not available:
    1. "TACC Site" > "Data List"
    2. "TACC Site" > "Data List Item"

✱ Step added since initial review.
† Step requires testing on a branch into which task/GH-75-plugin and quick/support-plugins-unadulterated-by-bootstrap--for-main have been merged.
‡ Removed since initial review, because this plugin is not supported in this PR.

- Add item child plugin.
- Fix classes.
- Tweak dict descriptions.
- Support tables.
- Add To Do item (add link support).
Do not enable text support, because one can not nest "Data List Item".*

* Or, I found no way.
@wesleyboar wesleyboar added blocked Unable to continue work priority ━ Medium priority labels Aug 8, 2021
Copy link
Member Author

@wesleyboar wesleyboar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added notes.

@wesleyboar wesleyboar removed the blocked Unable to continue work label Aug 9, 2021
@wesleyboar wesleyboar marked this pull request as ready for review August 9, 2021 18:47
@wesleyboar wesleyboar requested a review from iamthatian August 11, 2021 15:35
Copy link
Contributor

@iamthatian iamthatian left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Everything works!
I had some small python style comments.

@wesleyboar wesleyboar added priority ▲ High priority and removed priority ━ Medium priority labels Aug 13, 2021
@wesleyboar
Copy link
Member Author

wesleyboar commented Aug 13, 2021

@duckonomy I've added three commits (one new test step each).*

  • e224ea6 Instruct user in "Data List Item" how to add a link.
  • a7c6ae4 Allow empty Label field in "Data List Item" so user can quickly add link.
    • new test step: 5.iii.
  • 4fbf1e2 Add missing vertical padding to "Data List Item" in Table "Data List".
    • new test step: 5.iv.

* Sorry to add more after you've already reviewed. This PR is meant to support GH-88 which has a Data List component. I'd like to do it all well on the first attempt if I know how.

It does not seem to work, so I am removing it.

Without it, lable can be multiple links... that's okay.
@wesleyboar
Copy link
Member Author

wesleyboar commented Aug 16, 2021

@duckonomy The remaining review tasks are (a) checking my resolution of your items from your previous review and (b) the three new features (sorry, these came up as I re-reviewed the UX and UI while testing integration into GH-88).

  1. Use get() not direct indexing.
  2. (Optional) Resolve list comprehension legibility.
  3. See e224ea6 and three new commits (for details).
  4. See a7c6ae4 and three new commits (for details).
  5. See 4fbf1e2 and three new commits (for details).

Copy link
Contributor

@iamthatian iamthatian left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Functionality-wise LGTM!

I've spotted a few typos but will approve!

wesleyboar and others added 2 commits August 17, 2021 16:41
I consistently misspelled local function name.

I did not misspell model method of the same name.

Co-authored-by: Ian Park <[email protected]>
@wesleyboar
Copy link
Member Author

Thanks, @duckonomy. I've committed the changes, and tested* them.

* (via manual integration test on site/frontera/task/GH-75-plugincherry-picks commits from task/GH-75-plugin)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

priority ▲ High priority

Projects

None yet

Development

Successfully merging this pull request may close these issues.

"Data List" Table (for System Specs) - Styles & Plugin

3 participants