<template>
  <draggable
    v-bind="$attrs"
    v-on="$listeners"
    v-model="innerValue"
    animation="250"
    forceFallback="true"
  >
    <transition-group>
      <slot></slot>
    </transition-group>
  </draggable>
</template>

<script>
import draggable from "vuedraggable";
export default {
  name: "Draggable",
  props: {
    // v-model
    value: {
      type: [Array],
      require: true,
    },
    group: {
      type: [String, Object],
      require: true,
    },
  },
  components: { draggable },
  data() {
    return {};
  },
  computed: {
    innerValue: {
      get() {
        return this.value;
      },
      set(value) {
        this.$emit("input", value);
      },
    },
  },
  watch: {},
  methods: {},
  created() {},
  mounted() {},
  destroyed() {},
};
</script>
<style scoped></style>