PHP Classes

File: resources/js/Components/Bucket/Partials/OptionMenu.vue

Recommend this page to a friend!
  Classes of Nyi Nyi Lwin   S3 B2B PHP Amazon S3 File Manager   resources/js/Components/Bucket/Partials/OptionMenu.vue   Download  
File: resources/js/Components/Bucket/Partials/OptionMenu.vue
Role: Auxiliary data
Content type: text/plain
Description: Auxiliary data
Class: S3 B2B PHP Amazon S3 File Manager
Manage files stored in multiple Amazon S3 buckets
Author: By
Last change:
Date: 9 months ago
Size: 4,416 bytes
 

Contents

Class file image Download
<script setup> import { Menu, MenuButton, MenuItem, MenuItems } from '@headlessui/vue' import { EllipsisVerticalIcon, FolderIcon, TrashIcon, PencilSquareIcon, CloudArrowUpIcon, EyeIcon } from '@heroicons/vue/20/solid' const emit = defineEmits(['move', 'delete', 'edit', 'upload', 'view']) defineProps({ hideEdit: { type: Boolean, default: false, }, hideDelete: { type: Boolean, default: false, }, hideMove: { type: Boolean, default: false, }, hideUpload: { type: Boolean, default: false, }, hideView: { type: Boolean, default: false, }, }); </script> <template> <Menu as="div" class="relative inline-block text-left" > <div> <MenuButton class="-mt-2 -mr-3 flex items-center rounded-full p-2 text-gray-400 hover:text-gray-600"> <span class="sr-only">Open options</span> <slot name="menu-button"> <EllipsisVerticalIcon class="h-5 w-5" aria-hidden="true" /> </slot> </MenuButton> </div> <transition enter-active-class="transition ease-out duration-100" enter-from-class="transform opacity-0 scale-95" enter-to-class="transform opacity-100 scale-100" leave-active-class="transition ease-in duration-75" leave-from-class="transform opacity-100 scale-100" leave-to-class="transform opacity-0 scale-95" > <MenuItems class="absolute right-0 z-10 mt-2 w-56 origin-top-right rounded-md bg-white shadow-lg ring-1 ring-black ring-opacity-5 focus:outline-none"> <div class="divide-y divide-gray-200"> <MenuItem v-if="!hideMove" v-slot="{ active }" > <a href="#" :class="[active ? 'bg-gray-100 text-gray-900' : 'text-gray-700', 'flex px-4 py-2 text-sm']" @click="emit('move')" > <FolderIcon class="mr-3 h-5 w-5 text-gray-400" aria-hidden="true" /> <span> {{ $t('menus.move') }} </span> </a> </MenuItem> <MenuItem v-if="!hideUpload" v-slot="{ active }" > <a href="#" :class="[active ? 'bg-gray-100 text-gray-900' : 'text-gray-700', 'flex px-4 py-2 text-sm']" @click="emit('upload')" > <CloudArrowUpIcon class="mr-3 h-5 w-5 text-gray-400" aria-hidden="true" /> <span> {{ $t('menus.upload') }} </span> </a> </MenuItem> <MenuItem v-if="!hideEdit" v-slot="{ active }" > <a href="#" :class="[active ? 'bg-gray-100 text-gray-900' : 'text-gray-700', 'flex px-4 py-2 text-sm']" @click="emit('edit')" > <PencilSquareIcon class="mr-3 h-5 w-5 text-gray-400" aria-hidden="true" /> <span> {{ $t('menus.edit') }} </span> </a> </MenuItem> <MenuItem v-if="!hideDelete" v-slot="{ active }" > <a href="#" :class="[active ? 'bg-gray-100 text-gray-900' : 'text-gray-700', 'flex px-4 py-2 text-sm']" @click="emit('delete')" > <TrashIcon class="mr-3 h-5 w-5 text-gray-400" aria-hidden="true" /> <span> {{ $t('menus.delete') }} </span> </a> </MenuItem> <MenuItem v-if="!hideView" v-slot="{ active }" > <a href="#" :class="[active ? 'bg-gray-100 text-gray-900' : 'text-gray-700', 'flex px-4 py-2 text-sm']" @click="emit('view')" > <EyeIcon class="mr-3 h-5 w-5 text-gray-400" aria-hidden="true" /> <span> {{ $t('menus.view') }} </span> </a> </MenuItem> </div> </MenuItems> </transition> </Menu> </template> <style scoped> </style>