-
Notifications
You must be signed in to change notification settings - Fork 487
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
Vertical Bar Component #2903
Comments
@jbalsas is this already an existing component via clay-css? |
I don't think so, but @pat270 might know best. I think @eduardoallegrini and @marcoscv-work can work on this with @pat270 or he can use the linked POC as a base. |
@jbalsas @bryceosterhaus @marcoscv-work @eduardoallegrini The Product Menu and Journal Sidebar can be Sidebar variations. I think we should name them For the search bar in Product Menu we will need details about focus, disabled and placeholder styles from @drakonux and @laugardie. Feel free to send a PR otherwise I can get to it after I work on the other milestone 15 stuff. |
I think these sidebar looks the same, only differs by the content. May We could create |
Can't we use general names instead of dedicated one? E.g. |
Yeah, these are not application specific. We're likely to have:
But they can be used in different apps other than journal and product menu, so we should make them as generic as possible |
I'm going to work on it |
Going forward, I'm trying to address some of the concerns expressed in #1104. We should refrain from being too generic because modifying |
Hey folks, considering that inside an sidebar we can use collapses or anything I created this draft: <ClaySidebar displayType="dark" position="left">
<ClaySidebar.Buttons buttons={buttons} diplayType="tabs?" />
<ClaySidebar.Contents>
<WidgetsSidebarContent id="widgets" label="Widgets"/>
<ApplicationsSidebarContent id="apps" label="Applications"/>
<FragmentsSidebarContent id="apps" label="Applications"/>
</ClaySidebar.Contents>
</ClaySidebar>
const buttons =
[
{
icon: 'square',
id: 'widgets',
renderIcon?: (children, openCallback) => (<div className="bg-success" onClick={openCallback}> {children} </div>)
},
{
icon: 'app',
id: 'apps',
label: 'Applications',
renderIcon?: (children, openCallback) => (<div className="bg-success" onClick={openCallback}> {children} </div>)
},
{
separator
},
{
icon: 'fragments',
id: 'fragments',
label: 'Fragments',
renderIcon?: (children, openCallback) => (<div className="bg-success" onClick={openCallback}> {children} </div>)
},
] Where buttons.id can be used to display the sidebar content. What are you thoughts on this? |
@diegonvs how do you see the |
It just tells to the ClaySidebar.Contents component: The logic to show and hide the Sidebar will be handled by ClaySidebar component.
We could rename this property. |
Hey @pat270, I think this is both the beauty and the curse of CSS, isn't it? :) In general, we need to carefully analyze such reports so we don't put the bandaid where it's not needed. There's a lot of things to be considered and same way people expect some things not to change, other people expect the exact opposite. In this case, as we move to SaaS, it's critical that we have a coherent set of components that all react cohesively to a small set of variations (skins). This is becoming increasingly important to our company as we try to make the jump to SaaS offerings like Commerce. With all that in mind, as I recognize this is a real issue and other solutions might be harder to implement (shadow DOM) or more harmful to users (documentation), I think we could move with the |
@jbalsas |
… applying `hover`, `focus`, `disabled`, `active`, `active-class-after`, `active-focus`. feat(clay-css): Mixins `clay-button-variant` adds option to configure `overflow` fix(clay-css): Mixins `clay-button-variant` deprecate options `hover-bg`, `hover-border-color`, `hover-color`, `hover-opacity`, `hover-text-decoration`, `focus-bg`, `focus-border-color`, `focus-box-shadow`, `focus-color`, `focus-opacity`, `focus-outline`, `disabled-bg`, `disabled-border-color`, `disabled-box-shadow`, `disabled-color`, `disabled-cursor`, `disabled-opacity`, `active-bg`, `active-border-color`, `active-box-shadow`, `active-color`, `active-opacity`, `active-focus-box-shadow` issue liferay#2903
…pplying base `tbar`, `strong`, `.tbar-item`, `.tbar-section` styles feat(clay-css): Mixins `clay-tbar-variant` use `clay-button-variant` mixin for applying `.tbar-btn`, `.tbar-btn-monospaced` styles feat(clay-css): Mixins `clay-tbar-variant` use `clay-link` mixin for applying `.tbar-link`, `.tbar-link-monospaced` styles feat(clay-css): Mixins `clay-tbar-variant` add option to configure `.tbar-nav`, `.tbar-divider-before`, `.tbar-divider-after`, `tbar-item-expand` via Sass maps and `clay-css` mixin feat(clay-css): Mixins `clay-tbar-variant` deprecate options `border-color`, `border-style`, `border-width`, `bg-color`, `color`, `font-size`, `height`, `padding-x`, `padding-y`, `strong-font-weight`, `item-justify-content`, `item-padding-x`, `item-padding-y`, `btn-height`, `btn-font-size`, `btn-font-weight`, `btn-line-height`, `btn-margin-x`, `btn-margin-y`, `btn-padding-x`, `btn-padding-y`, `btn-monospaced-border-radius`, `btn-monospaced-border-width`, `btn-monospaced-font-size`, `btn-monospaced-margin-x`, `btn-monospaced-margin-y`, `btn-monospaced-padding`, `btn-monospaced-size`, `link-margin-x`, `link-margin-y`, `link-padding-x`, `link-padding-y`, `link-monospaced-border-radius`, `link-monospaced-border-width`, `link-monospaced-font-size`, `link-monospaced-margin-x`, `link-monospaced-margin-y`, `link-monospaced-padding`, `link-monospaced-size`, `section-text-align` issue liferay#2903
…Pattern and variants `.tbar-light`, `.tbar-dark-l2`, .tbar-dark-d1` feat(clay-css): Tbar adds Sass maps `$tbar-stacked`, `$tbar-light`, `$tbar-dark-d1`, `$tbar-dark-l2` issue liferay#2903
… `.sidebar`, `.sidebar-panel`, `.sidebar-header`, `.sidebar-body`, `.sidebar-footer`, `.nav-nested`, `.sidebar-list-group .list-group-item`, `.sidebar-list-group .sticker`, `.sidebar-list-group .sticker-secondary` via Sass maps and `clay-css` mixin feat(clay-css): Mixins `clay-sidebar-variant` add option to configure `.close` via Sass map and `clay-close` mixin feat(clay-css): Mixins `clay-sidebar-variant` add option to configure `.nav-nested .nav-link` via Sass map and `clay-link` mixin issue liferay#2903
…idebar-dark` which uses `clay-sidebar-variant` mixin issue liferay#2903
…ut-transition-in`, `.c-slideout-transition-out`, `.c-slideout-fixed`, `.c-slideout-absolute`, `.c-slideout-start`, `.c-slideout-end` feat(clay-css): Slideout adds variables `$c-slideout-sidebar-width`, `$c-slideout-sidebar-width-mobile`, `$c-slideout-tbar-stacked-min-width`, `$c-slideout-tbar-stacked-min-width-mobile` feat(clay-css): Slideout adds Sass maps `$c-slideout-transition-in`, `$c-slideout-transition-out`, `$c-slideout-absolute`, `$c-slideout-fixed`, `$c-slideout`, `$c-slideout-sm-down`, `$c-slideout-start`, `$c-slideout-start-sm-down`, `$c-slideout-end`, `$c-slideout-end-sm-down` issue #2903
…, `focus-z-index`, `disabled-z-index`, `active-z-index` and use the Sass maps instead issue #2903
Removing from the milestone for now, since this will likely take additional time |
… applying `hover`, `focus`, `disabled`, `active`, `active-class-after`, `active-focus`. feat(clay-css): Mixins `clay-button-variant` adds option to configure `overflow` fix(clay-css): Mixins `clay-button-variant` deprecate options `hover-bg`, `hover-border-color`, `hover-color`, `hover-opacity`, `hover-text-decoration`, `focus-bg`, `focus-border-color`, `focus-box-shadow`, `focus-color`, `focus-opacity`, `focus-outline`, `disabled-bg`, `disabled-border-color`, `disabled-box-shadow`, `disabled-color`, `disabled-cursor`, `disabled-opacity`, `active-bg`, `active-border-color`, `active-box-shadow`, `active-color`, `active-opacity`, `active-focus-box-shadow` issue liferay#2903
…pplying base `tbar`, `strong`, `.tbar-item`, `.tbar-section` styles feat(clay-css): Mixins `clay-tbar-variant` use `clay-button-variant` mixin for applying `.tbar-btn`, `.tbar-btn-monospaced` styles feat(clay-css): Mixins `clay-tbar-variant` use `clay-link` mixin for applying `.tbar-link`, `.tbar-link-monospaced` styles feat(clay-css): Mixins `clay-tbar-variant` add option to configure `.tbar-nav`, `.tbar-divider-before`, `.tbar-divider-after`, `tbar-item-expand` via Sass maps and `clay-css` mixin feat(clay-css): Mixins `clay-tbar-variant` deprecate options `border-color`, `border-style`, `border-width`, `bg-color`, `color`, `font-size`, `height`, `padding-x`, `padding-y`, `strong-font-weight`, `item-justify-content`, `item-padding-x`, `item-padding-y`, `btn-height`, `btn-font-size`, `btn-font-weight`, `btn-line-height`, `btn-margin-x`, `btn-margin-y`, `btn-padding-x`, `btn-padding-y`, `btn-monospaced-border-radius`, `btn-monospaced-border-width`, `btn-monospaced-font-size`, `btn-monospaced-margin-x`, `btn-monospaced-margin-y`, `btn-monospaced-padding`, `btn-monospaced-size`, `link-margin-x`, `link-margin-y`, `link-padding-x`, `link-padding-y`, `link-monospaced-border-radius`, `link-monospaced-border-width`, `link-monospaced-font-size`, `link-monospaced-margin-x`, `link-monospaced-margin-y`, `link-monospaced-padding`, `link-monospaced-size`, `section-text-align` issue liferay#2903
…Pattern and variants `.tbar-light`, `.tbar-dark-l2`, .tbar-dark-d1` feat(clay-css): Tbar adds Sass maps `$tbar-stacked`, `$tbar-light`, `$tbar-dark-d1`, `$tbar-dark-l2` issue liferay#2903
… `.sidebar`, `.sidebar-panel`, `.sidebar-header`, `.sidebar-body`, `.sidebar-footer`, `.nav-nested`, `.sidebar-list-group .list-group-item`, `.sidebar-list-group .sticker`, `.sidebar-list-group .sticker-secondary` via Sass maps and `clay-css` mixin feat(clay-css): Mixins `clay-sidebar-variant` add option to configure `.close` via Sass map and `clay-close` mixin feat(clay-css): Mixins `clay-sidebar-variant` add option to configure `.nav-nested .nav-link` via Sass map and `clay-link` mixin issue liferay#2903
…idebar-dark` which uses `clay-sidebar-variant` mixin issue liferay#2903
…onfigure `c-slideout-shown`, `c-slideout-tbar-shown`, `c-slideout-tbar-shown-sidebar`, `sidebar`, `sidebar-c-slideout-show`, `sidebar-c-slideout-transition`, `tbar-stacked`, `tbar-stacked-c-slideout-show`, `tbar-stacked-c-slideout-transition` issue liferay#2903
…ut-transition-in`, `.c-slideout-transition-out`, `.c-slideout-fixed`, `.c-slideout-absolute`, `.c-slideout-start`, `.c-slideout-end` feat(clay-css): Slideout adds variables `$c-slideout-sidebar-width`, `$c-slideout-sidebar-width-mobile`, `$c-slideout-tbar-stacked-min-width`, `$c-slideout-tbar-stacked-min-width-mobile` feat(clay-css): Slideout adds Sass maps `$c-slideout-transition-in`, `$c-slideout-transition-out`, `$c-slideout-absolute`, `$c-slideout-fixed`, `$c-slideout`, `$c-slideout-sm-down`, `$c-slideout-start`, `$c-slideout-start-sm-down`, `$c-slideout-end`, `$c-slideout-end-sm-down` issue liferay#2903
…, `focus-z-index`, `disabled-z-index`, `active-z-index` and use the Sass maps instead issue liferay#2903
Is this one still valid? The component teams have already created their sidebars in DXP. Product Menu sidebar was replaced with Application Menu. Feel free to reopen if it is. |
We created the vertical bar time ago to solve all the cases in DXP. Is still valid? I would say yes, it's still valid and we should create the component and replace all the bars in DXP with a vertical bar component (customized in some cases). But I'm not the owner of DXP... nor do I know the plans of FI to regularize its use... so I summon you @nhpatt @dsanz |
In fact, Corbin asked for this time ago see #3959 |
@drakonux I will reopen |
Yes, this is still valid as there is a definition in lexicon that is not implemented in Clay (just one, tables and treeview does not exist :P) |
This issue has been merged and will be released in DXP at https://issues.liferay.com/browse/LPS-155343 |
This is a formal request to implement Application Sidebar as a Clay Component.
We currently lack documentation proper Lexicon definition and documentation for this component, so this task should start by involving @drakonux and @laugardie in analysis and definition tasks. This is already requested in LEXI-806
#### Current Existing Implementations:
PageEditor Sidebar
Future Implementations:
Product Menu
We currently have a POC for this at https://github.com/eduardoallegrini/liferay-product-menu
Journal Sidebar
/cc @bryceosterhaus, @kresimir-coko, feel free to ping @drakonux for any clarification
The text was updated successfully, but these errors were encountered: