Sha256: c8004f07ed7885222bce7abb82525d8e74f5ccd258e4af676867a46a20349cbe

Contents?: true

Size: 1.54 KB

Versions: 17

Compression:

Stored size: 1.54 KB

Contents

<template>
  <dropdown
    :placement="placement"
    v-on="$listeners"
    class="relative"
    ref="dropdown"
  >
    <template v-slot:button>
      <slot></slot>
    </template>
    <template v-slot:content>
      <div class="text-gray-700 text-md w-56">
        <p class="py-3">
          {{ text || $t('confirmationButton.text') }}
        </p>
        <div class="mt-1 flex flex-col">
          <button
            class="bg-red-600 rounded-sm text-white py-2 px-4"
            @click.stop="confirm"
          >
            {{
              confirmButtonLabel || $t('confirmationButton.confirmButtonLabel')
            }}
          </button>
          <button
            class="block w-full text-gray-800 py-2 hover:bg-gray-100 transition-colors duration-200"
            @click.stop="cancel"
          >
            {{
              cancelButtonLabel || $t('confirmationButton.cancelButtonLabel')
            }}
          </button>
        </div>
      </div>
    </template>
  </dropdown>
</template>

<script>
export default {
  name: 'ConfirmationButton',
  props: {
    placement: { type: String, default: 'bottom' },
    text: { type: String, default: null },
    confirmButtonLabel: { type: String, default: null },
    cancelButtonLabel: { type: String, default: null },
  },
  methods: {
    isOpen() {
      return this.$refs.dropdown.open
    },
    confirm() {
      this.close()
      this.$emit('confirm')
    },
    cancel() {
      this.close()
      this.$emit('cancel')
    },
    close() {
      this.$refs.dropdown.close()
    },
  },
}
</script>

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
maglevcms-1.4.0 app/frontend/editor/components/kit/confirmation-button.vue
maglevcms-1.3.0 app/frontend/editor/components/kit/confirmation-button.vue
maglevcms-1.2.2 app/frontend/editor/components/kit/confirmation-button.vue
maglevcms-1.2.1 app/frontend/editor/components/kit/confirmation-button.vue
maglevcms-1.2.0 app/frontend/editor/components/kit/confirmation-button.vue
maglevcms-1.1.7 app/frontend/editor/components/kit/confirmation-button.vue
maglevcms-1.1.6 app/frontend/editor/components/kit/confirmation-button.vue
maglevcms-1.1.5 app/frontend/editor/components/kit/confirmation-button.vue
maglevcms-1.1.4 app/frontend/editor/components/kit/confirmation-button.vue
maglevcms-1.1.3 app/frontend/editor/components/kit/confirmation-button.vue
maglevcms-1.1.2 app/frontend/editor/components/kit/confirmation-button.vue
maglevcms-1.1.1 app/frontend/editor/components/kit/confirmation-button.vue
maglevcms-1.1.0 app/frontend/editor/components/kit/confirmation-button.vue
maglevcms-1.0.0 app/javascript/editor/components/kit/confirmation-button.vue
maglevcms-1.0.0.rc3 app/javascript/editor/components/kit/confirmation-button.vue
maglevcms-1.0.0.rc2 app/javascript/editor/components/kit/confirmation-button.vue
maglevcms-1.0.0.rc1 app/javascript/editor/components/kit/confirmation-button.vue