ProductVariant.vue 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. <template lang="pug">
  2. .product-variant(@click="selectVariant({ data })")
  3. img.variant-image(:src="this.data.image_medium ? 'data:image/png;base64,' + this.data.image_medium : '/web/static/src/img/placeholder.png'")
  4. .variant-details
  5. h2.variant-name {{ data.display_name }}
  6. </template>
  7. <script>
  8. import { mapActions } from 'vuex'
  9. export default {
  10. props: {
  11. data: {
  12. type: Object,
  13. default: () => {
  14. return {}
  15. }
  16. }
  17. },
  18. methods: mapActions([
  19. 'selectVariant'
  20. ])
  21. }
  22. </script>
  23. <style lang="sass">
  24. .product-variant
  25. width: calc(100% - 20px)
  26. height: 84px
  27. margin: 5px 10px
  28. display: flex
  29. &:hover
  30. cursor: pointer
  31. .variant-details
  32. transition-duration: 0.5s
  33. border-bottom: 2px solid #7c7bad
  34. .variant-image
  35. width: 80px
  36. height: 80px
  37. margin: 0
  38. border: none
  39. .variant-details
  40. flex-grow: 1
  41. border-bottom: 1px solid #d3d3d3
  42. .variant-name
  43. font-size: 10pt
  44. </style>