Sha256: 78ed38c06ae9dbdaa6ee39b54975b6fcbb3865f7d80348f96aa197a745e0bc4b

Contents?: true

Size: 1000 Bytes

Versions: 5

Compression:

Stored size: 1000 Bytes

Contents

<template>
  <dropdown v-on="$listeners" class="absolute top-1.5 right-1">
    <template v-slot:button>
      <button
        class="px-1 py-1 hover:text-gray-900 focus:outline-none transition-colors duration-200"
      >
        <icon name="ri-palette-line" size="1.25rem" />
      </button>
    </template>
    <template v-slot:content>
      <div class="flex flex-wrap gap-1">
        <preset-button 
          v-for="preset in presets" 
          v-model="updatableValue"
          :preset="preset"
          :key="preset" />
      </div>
    </template>
  </dropdown>
</template>

<script>
import PresetButton from './preset-button.vue'

export default {
  name: 'PresetDropdown',
  components: { PresetButton },
  props: {
    value: { type: String },
    presets: {
      type: Array,
      default: () => [],
    },
  },
  computed: {
    updatableValue: {
      get() {
        return this.value
      },
      set(color) {
        this.$emit('input', color)
      },
    },
  }
}
</script>

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
maglevcms-1.4.0 app/frontend/editor/components/kit/color-input/preset-dropdown.vue
maglevcms-1.3.0 app/frontend/editor/components/kit/color-input/preset-dropdown.vue
maglevcms-1.2.2 app/frontend/editor/components/kit/color-input/preset-dropdown.vue
maglevcms-1.2.1 app/frontend/editor/components/kit/color-input/preset-dropdown.vue
maglevcms-1.2.0 app/frontend/editor/components/kit/color-input/preset-dropdown.vue