ExpansionPanel.vue 907 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <!--
  2. Panneaux déroulants de type "accordéon"
  3. @see https://vuetifyjs.com/en/components/expansion-panels/
  4. -->
  5. <template>
  6. <v-expansion-panel :id="id">
  7. <v-expansion-panel-header class="ot_light_grey">
  8. <v-icon class="ot_white--text ot_green icon">
  9. {{ icon }}
  10. </v-icon>
  11. {{ $t(id) }}
  12. </v-expansion-panel-header>
  13. <v-expansion-panel-content>
  14. <slot />
  15. </v-expansion-panel-content>
  16. </v-expansion-panel>
  17. </template>
  18. <script lang="ts">
  19. export default {
  20. props: {
  21. id: {
  22. type: String,
  23. required: true
  24. },
  25. icon: {
  26. type: String,
  27. required: false
  28. }
  29. }
  30. }
  31. </script>
  32. <style scoped>
  33. .icon{
  34. width: 47px;
  35. height: 47px;
  36. padding: 10px;
  37. margin-right: 10px;
  38. flex: none;
  39. }
  40. .v-expansion-panel-header{
  41. padding: 0;
  42. }
  43. .v-expansion-panel--active > .v-expansion-panel-header{
  44. min-height: 47px;
  45. }
  46. </style>