//  Hydrogen / Properties / Padding

@mixin h2-prop-padding($mediaQueryMap, $sideMap, $whitespaceMap, $padding) {
  @each $mediaKey, $mediaValue in $mediaQueryMap {
    @media #{$mediaValue} {
      @each $sideKey, $sideValue in $sideMap {
        @each $whitespaceKey, $whitespaceValue in $whitespaceMap {

          [data-h2-padding*="#{$mediaKey}(#{$sideKey}, #{$whitespaceKey})"],
          [data-h2-accordion-trigger][data-h2-padding*="#{$mediaKey}(#{$sideKey}, #{$whitespaceKey})"] {
            @if $sideKey == "all" {
              padding: calc(#{$padding} #{$whitespaceValue});
            }
            @else if $sideKey == "tb" {
              padding-top: calc(#{$padding} #{$whitespaceValue});
              padding-bottom: calc(#{$padding} #{$whitespaceValue});
            }
            @else if $sideKey == "rl" {
              padding-right: calc(#{$padding} #{$whitespaceValue});
              padding-left: calc(#{$padding} #{$whitespaceValue});
            }
            @else {
              padding#{$sideValue}: calc(#{$padding} #{$whitespaceValue});
            }
          }

        }
      }
    }
  }
}