angular / components

Component infrastructure and Material Design components for Angular
https://material.angular.io
MIT License
24.35k stars 6.74k forks source link

Proposal(feature): Expansion Panels #3664

Closed httpNick closed 7 years ago

httpNick commented 7 years ago

Proposal:

Add expansion panels as outlined here to the material2 pool of components. I have a (very) base setup project that I was using to start implementing the expansion panels element. Before I got any further, and since I am following the material spec, I wanted to propose moving this into the official material2 code base and modify what I have to follow the material2 coding standards/guidelines. My plan was to fork this repository and integrate the basics of what I have to fit into this code base. I have researched pretty heavily into the datepicker that is in progress in order to understand how styling and themes are applied to material componets, so I could work on getting my current progress modified right away to fit the material2 practices in use.

Also, a question - is this a duplication of work? I have looked around a bit and haven't seen anything started for expansion panels (at least that follow this spec).

I'd love to hear the communities thoughts!

fxck commented 7 years ago

@jelbourn is currently working on table, but I doubt this will be part of the initial release

https://github.com/jelbourn/material2/tree/table-prototype https://github.com/jelbourn/material2/tree/new-table-api

best you can do is to start with a design doc https://docs.google.com/document/d/1kpQStAn9L-NX_1bGz_4fXNeZgerWC0mUJHun72bF240/preview

httpNick commented 7 years ago

@fxck Thanks! I will start creating the design doc and post it back onto this proposal when ready for review.

jelbourn commented 7 years ago

Hi @httpNick:

Could you just add a brief comment about the API and use-cases you're imagining for an expansion panel?

httpNick commented 7 years ago

@jelbourn sorry to be MIA, I have some updates for the previous question you asked.

The basic API I was thinking of is here (in the README): https://github.com/httpNick/material2/tree/expansion-panels/src/lib/expansion-panel

I closely followed https://material.io/guidelines/components/expansion-panels.html#expansion-panels-specs in designing the selectors to include, and also I made the expansion-panel being editable an option via @Input editable.

The current branch I have adds the MdExpansionPanelModule to the repo following how other components have been added. I also created a demo-app section for it. It's still a WIP of course, but I thought I was at a good spot to get some feedback before moving forward more.

Let me know if I need to answer on anything else (I will respond more quickly this time 😄 ), or if I need to give a better answer!

jelbourn commented 7 years ago

@httpNick since my last comment @josephperrott starting working on this already :smile:

We're looking to do an API that's more in line with the native details element

httpNick commented 7 years ago

@jelbourn ah ok thanks for the info.

You snooze, you lose ;).

@josephperrott would you like any contribution or would you like me to close this?

csvn commented 7 years ago

This issue can probably be closed, since it's a duplicate of #995 now that this feature is being worked on by the Angular Material team.

@josephperrott Nice work! The API for the component in the demo looks great so far.

jelbourn commented 7 years ago

Closing into #995

angular-automatic-lock-bot[bot] commented 5 years ago

This issue has been automatically locked due to inactivity. Please file a new issue if you are encountering a similar or related problem.

Read more about our automatic conversation locking policy.

This action has been performed automatically by a bot.