Skip to content

Instantly share code, notes, and snippets.

View CamiloVelasquezBotero's full-sized avatar

Camilo CamiloVelasquezBotero

View GitHub Profile
import { Fragment } from 'react';
import { Dialog, Transition } from '@headlessui/react';
import { useLocation, useNavigate, useSearchParams } from 'react-router-dom';
export default function AddTaskModal() {
const location = useLocation()
const navigate = useNavigate()
/* Get the queries from the URL */
const queryParams = new URLSearchParams(location.search)
@CamiloVelasquezBotero
CamiloVelasquezBotero / Options (HeadlessUi) component
Last active June 27, 2026 20:24
Options (HeadlessUi) component
<div className="flex shrink-0 gap-x-6">
<Menu as="div" className="relative flex-none">
<Menu.Button className="-m-2.5 block p-2.5 text-gray-500 hover:text-gray-900">
<span className="sr-only">opciones</span>
<EllipsisVerticalIcon className="h-9 w-9" aria-hidden="true" />
</Menu.Button>
<Transition as={Fragment} enter="transition ease-out duration-100" enterFrom="transform opacity-0 scale-95"
enterTo="transform opacity-100 scale-100" leave="transition ease-in duration-75"
leaveFrom="transform opacity-100 scale-100" leaveTo="transform opacity-0 scale-95">
<Menu.Items
@CamiloVelasquezBotero
CamiloVelasquezBotero / Menu Burger "HeadlessUi" and "HeroIcons"
Last active June 26, 2026 19:56
Menu Burger "HeadlessUi" and "HeroIcons"
import { Fragment } from 'react'
import { Popover, Transition } from '@headlessui/react'
import { Bars3Icon } from '@heroicons/react/20/solid'
import { Link } from 'react-router-dom'
export default function NavMenu() {
return (
<Popover className="relative">
<Popover.Button className="inline-flex items-center gap-x-1 text-sm font-semibold leading-6 p-1 rounded-lg bg-purple-400">
@CamiloVelasquezBotero
CamiloVelasquezBotero / SwipeableItem.txt
Last active June 20, 2026 07:09
SwipeableItem_Component - Swipe a div to left or right with a cool animation
/* Component Created By Camilo Velasquez botero */
/*
Swipe an item
1- enclose the div in this component and passing it as children
2- Give the properties "onLeadingSwipeFunction" to the Left side for the function and "onTrailingSwipeFunction" for the Rigth side
3- Give the content to show to the user in "leadingActionContent" to left and "trailingActionContent" to right
*/
import { useState, useRef, useCallback } from "react"
@CamiloVelasquezBotero
CamiloVelasquezBotero / Format Currency 'COP, USD, EUR...'
Last active June 26, 2026 19:57
Format Currency 'COP, USD, EUR...'
export function formatCurrency(amount:number) {
return new Intl.NumberFormat('en-US', {
style: 'currency',
currency: 'USD'
}).format(amount)
}
@CamiloVelasquezBotero
CamiloVelasquezBotero / Notification_HeadlessUi
Last active June 26, 2026 19:58
Notification_HeadlessUi
import { Fragment } from 'react'
import { CheckCircleIcon, XCircleIcon } from '@heroicons/react/24/outline'
import { XMarkIcon } from '@heroicons/react/20/solid'
import { Transition } from '@headlessui/react'
import { useAppStore } from '../stores/useAppStore'
export default function Notification() {
const notification = useAppStore((state) => state.notification)
const hideNotification = useAppStore((state) => state.hideNotification)
@CamiloVelasquezBotero
CamiloVelasquezBotero / MODAL HeadlessUI.jsx
Last active June 26, 2026 19:57
MODAL HeadlessUI.jsx
import { Dialog, Transition } from '@headlessui/react';
import { Fragment, useState } from 'react';
export default function Modal() {
const [modal, useModal] = useState(true)
return (
<>
<Transition appear show={modal} as={Fragment}>
<Dialog as="div" className="relative z-10" onClose={() => { }}>
<Transition.Child