Skip to content
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

Add a stretch layout on horizontal action bar #7438

Open
2 of 4 tasks
asangma opened this issue Aug 3, 2023 · 18 comments
Open
2 of 4 tasks

Add a stretch layout on horizontal action bar #7438

asangma opened this issue Aug 3, 2023 · 18 comments
Labels
0 - new New issues that need assignment. ArcGIS Maps SDK for JavaScript Issues logged by ArcGIS SDK for JavaScript team members. design Issues that need design consultation prior to development. enhancement Issues tied to a new feature or request. estimate - 3 A day or two of work, likely requires updates to tests. impact - p2 - want for an upcoming milestone User set priority impact status of p2 - want for an upcoming milestone p - medium Issue is non core or affecting less that 60% of people using the library p3 - want for upcoming milestone User set priority status of p3 - want for upcoming milestone ready for dev Issues ready for development implementation.

Comments

@asangma
Copy link
Contributor

asangma commented Aug 3, 2023

Check existing issues

Description

By deprecating layout on ActionGroup it removes the ability to use grid layout anywhere but ActionPad.

  1. I suggest either retaining it in ActionGroup or adding layout=grid to ActionBar.
  2. When ActionBar is layout="horizontal" AND in a flex container such as Panel, the ActionBar fills the space, and the Actions keep their content-based widths.

Acceptance Criteria

- [ ] The ability to do grid layouts without having to use ActionPad.
- [ ] Make Actions in a horizontal ActionBar and ActionPad look better, similar to:
image

Calcite design solution

  • Add new horizontal-fill value to the layout prop on action-bar
    • This will need to force slotted Actions to alignment=“center” and flex to fill
    • The collapse button, when present, should not follow this pattern and retain its current behavior

CleanShot 2024-09-10 at 12 16 27@2x

Relevant Info

  • A widget in Maps SDK needs grid layout but not the styles that come with ActionPad.
  • Refer to this codepen to see how ActionBar affects the different layouts.

Which Component

ActionGroup, ActionBar, ActionPad

Example Use Case

A widget that needs grid layout but not ActionPad styles.

Priority impact

p3 - want for upcoming milestone

Calcite package

  • @esri/calcite-components
  • @esri/calcite-components-react

Esri team

ArcGIS Maps SDK for JavaScript

@asangma asangma added enhancement Issues tied to a new feature or request. 0 - new New issues that need assignment. needs triage Planning workflow - pending design/dev review. labels Aug 3, 2023
@github-actions github-actions bot added p3 - want for upcoming milestone ArcGIS Maps SDK for JavaScript Issues logged by ArcGIS SDK for JavaScript team members. labels Aug 3, 2023
@driskull
Copy link
Member

driskull commented Aug 3, 2023

I think we should decide if calcite-action-group should be allowed to be used without a parent component. That will kind of drive whether or not layout is removed or kept.

@asangma
Copy link
Contributor Author

asangma commented Aug 4, 2023

@driskull That's a good point. Also it will help decide whether or not grid is available as a layout option on ActionBar.

As of now, in order to make the UI work in the SDK widget, we would be using ActionGroup without an ActionPad or ActionBar parent.

@geospatialem geospatialem added the design Issues that need design consultation prior to development. label Aug 7, 2023
@SkyeSeitz
Copy link

I lean towards setting grid on the parent to avoid having to use calcite-action-group outside of a Pad or Bar. Makes sense to get rid of calcite-action-group and instead add layout=grid to ActionBar (would love to see some examples if you got em).

@ashetland
Copy link
Contributor

ashetland commented Aug 7, 2023

Just to clarify, we're not talking about removing calcite-action-group, right? grid was a part of group, but it was removed in favor of setting the layout at the parent level. Agree with that logic and would definitely like to see some examples of how this played out in Action Bar when a group could be set to a grid layout. A path forward I could see is not adding grid to Action Bar (to keep it a single row/column bar), but adding the option to remove the styling from Action Pad.

@ashetland
Copy link
Contributor

Scratch the above comment. To clarify agian:

  • keep action-bar-group
  • add layout=grid to Action Bar
  • layout is set at parent level
  • 🚀

@ashetland ashetland added the ready for dev Issues ready for development implementation. label Aug 7, 2023
@github-actions github-actions bot added the needs milestone Planning workflow - pending milestone assignment, has priority and/or estimate. label Aug 7, 2023
@github-actions
Copy link
Contributor

github-actions bot commented Aug 7, 2023

cc @geospatialem, @brittneytewks

@geospatialem geospatialem removed the needs triage Planning workflow - pending design/dev review. label Aug 8, 2023
@brittneytewks brittneytewks added the figma changes Issues that require additions or updates to the Figma UI Kit where no `design` label exists label Sep 12, 2023
@geospatialem geospatialem added estimate - 3 A day or two of work, likely requires updates to tests. and removed needs milestone Planning workflow - pending milestone assignment, has priority and/or estimate. labels Nov 22, 2023
@brittneytewks brittneytewks removed the figma changes Issues that require additions or updates to the Figma UI Kit where no `design` label exists label Dec 11, 2023
@brittneytewks
Copy link

Removed Figma changes label as this will be tracked in monday.com

@ashetland ashetland added the p - low Issue is non core or affecting less that 10% of people using the library label Mar 8, 2024
@macandcheese
Copy link
Contributor

I'd like to bump the priority on this because it prevents many layouts that require this. It's related to #7496 so we can likely consolidate into one.

@geospatialem
Copy link
Member

I'd like to bump the priority on this because it prevents many layouts that require this. It's related to #7496 so we can likely consolidate into one.

It looks like this issue is assigned for design work in May. WDYT about using this in favor of #7496 and bumping priority to medium, @macandcheese?

@macandcheese
Copy link
Contributor

Sounds good. I think based on above comments design work is done, cc @ashetland

@geospatialem geospatialem added p - medium Issue is non core or affecting less that 60% of people using the library and removed p - low Issue is non core or affecting less that 10% of people using the library labels Mar 26, 2024
@ashetland
Copy link
Contributor

Yep, added a "Design recommendations" section to the top that links to the appropriate comment.

@josercarcamo josercarcamo self-assigned this May 14, 2024
@josercarcamo
Copy link
Contributor

josercarcamo commented May 15, 2024

@jcfranco @ashetland @driskull @macandcheese I don't believe this issue is ready for development. I've asked a few of the team members for clarification and each has provided a different answer. Could we please create clear requirements for this issue? I'll set up a meeting so we can clarify.

@driskull
Copy link
Member

The basic question for this issue is if action-group should be considered a standalone component or a child only component.

@macandcheese
Copy link
Contributor

IMO that is best as a child component, otherwise we have three possible top-level "Action Pad / Bar / Group"...

I think we could achieve Alan's designs by introducing the "grid" layout to Action Bar (like it exists in Pad) - and perhaps adding a "horizontal-stretch" or "horizontal-fill" layout that places actions horizontally, but stretches them to the container width. We could potentially add this to Pad as well. However... this does lead to Pad / Bar being basically the same with a visual and perhaps "fill height / width" difference. Maybe an opportunity to combine them in some way to simplify the story...

@josercarcamo josercarcamo changed the title Reconsider getting rid of layout on ActionGroup Add a stretch layout on horizontal action bar May 16, 2024
@josercarcamo josercarcamo removed the ready for dev Issues ready for development implementation. label May 16, 2024
@josercarcamo josercarcamo removed their assignment May 16, 2024
@josercarcamo josercarcamo added the needs triage Planning workflow - pending design/dev review. label May 16, 2024
@josercarcamo josercarcamo removed this from the 2024-05-28 - May Main Release milestone May 16, 2024
@ashetland
Copy link
Contributor

ashetland commented May 16, 2024

Design to do:

  • Flush out specs for layout="horizontal-fill" taking into account the collapse button
  • Determine next steps to support `layout="grid" in Action Bar, if needed

@driskull
Copy link
Member

I think we could achieve Alan's designs by introducing the "grid" layout to Action Bar (like it exists in Pad)

I'm not sure grid makes sense in action-bar. A bar by name should only be a single row or column.

and perhaps adding a "horizontal-stretch" or "horizontal-fill" layout that places actions horizontally, but stretches them to the container width.

Yeah, I think this makes the most sense to achieve what @asangma is looking for.

We could potentially add this to Pad as well. However... this does lead to Pad / Bar being basically the same with a visual and perhaps "fill height / width" difference. Maybe an opportunity to combine them in some way to simplify the story...

I'm not sure there's a need to stretch or fill action pad actions as the pad only takes up the space it needs.

@geospatialem geospatialem added impact - p2 - want for an upcoming milestone User set priority impact status of p2 - want for an upcoming milestone and removed p3 - want for upcoming milestone labels May 21, 2024
@ashetland ashetland added this to the Design Backlog milestone Jun 6, 2024
@ashetland ashetland removed the needs triage Planning workflow - pending design/dev review. label Jun 6, 2024
@DitwanP DitwanP removed this from the Design Backlog milestone Jul 11, 2024
@github-actions github-actions bot added the p3 - want for upcoming milestone User set priority status of p3 - want for upcoming milestone label Sep 10, 2024
@ashetland
Copy link
Contributor

Added recommendations from the Calcite team to the issue description.

@ashetland ashetland added the ready for dev Issues ready for development implementation. label Sep 10, 2024
@github-actions github-actions bot added the needs milestone Planning workflow - pending milestone assignment, has priority and/or estimate. label Sep 10, 2024
Copy link
Contributor

cc @geospatialem, @brittneytewks

@geospatialem geospatialem added this to the 2025-03-25 - Mar Release milestone Oct 11, 2024
@geospatialem geospatialem removed the needs milestone Planning workflow - pending milestone assignment, has priority and/or estimate. label Dec 2, 2024
@DitwanP DitwanP removed the needs milestone Planning workflow - pending milestone assignment, has priority and/or estimate. label Dec 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
0 - new New issues that need assignment. ArcGIS Maps SDK for JavaScript Issues logged by ArcGIS SDK for JavaScript team members. design Issues that need design consultation prior to development. enhancement Issues tied to a new feature or request. estimate - 3 A day or two of work, likely requires updates to tests. impact - p2 - want for an upcoming milestone User set priority impact status of p2 - want for an upcoming milestone p - medium Issue is non core or affecting less that 60% of people using the library p3 - want for upcoming milestone User set priority status of p3 - want for upcoming milestone ready for dev Issues ready for development implementation.
Projects
None yet
Development

No branches or pull requests

9 participants