Skip to content

Instantly share code, notes, and snippets.

View Darkmift's full-sized avatar
🎯
Focusing

Avi E. Koenig Darkmift

🎯
Focusing
View GitHub Profile
@Darkmift
Darkmift / Monday_API
Last active November 21, 2023 04:15
Get Volunteers
{
"info": {
"_postman_id": "4ff3f646-3ee3-4227-b941-4a1467b9a478",
"name": "Monday_API",
"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
"_exporter_id": "3883128"
},
"item": [
{
"name": "Get Volunteer list",
@Darkmift
Darkmift / file.vue
Created November 9, 2023 11:50
Vue Snippet work
<template>
<v-container class="new-mone" v-if="formSchema">
<v-row>
<v-col>
<h1>
{{ formName }}
</h1>
</v-col>
</v-row>
<v-row>
@Darkmift
Darkmift / GenericBreadcrumbs.tsx
Created May 21, 2023 13:57
Dynamic React Mui Breadcrumbs
import { Breadcrumbs, Link as MuiLink, Typography } from '@mui/material';
import { Link } from 'react-router-dom';
import { useEffect, useState } from 'react';
import { useLocation } from 'react-router-dom';
type BreadCrumbSegment = { path: string; name: string };
function BreadCrumbs() {
const location = useLocation();
@Darkmift
Darkmift / useLocaleTimeAgo.ts
Created March 22, 2023 15:08
useTimeAgo composable for Vue3
import AppLogger from '@/services/AppLogger'
import type { UseTimeAgoMessages, UseTimeAgoUnitNamesDefault } from '@vueuse/core'
import { useI18n } from 'vue-i18n'
import { useTimeAgo } from '@vueuse/core'
const messages = {
en: {
common: {
timeAgo: {
'just-now': 'just now',
@Darkmift
Darkmift / experiment.js
Created March 21, 2023 12:14
some chatgpt fun
const { errMessage } = require('../errController');
const Event = require('./event.model');
const Setting = require('./setting.model');
const aggregateQueryOld = [
{
$match: {
$expr: {
$and: [
{ $isArray: '$targetAudience' },
@Darkmift
Darkmift / CloudinaryCrud.ts
Created March 14, 2023 14:00
basic cloudinary crud
import cloudinary from 'cloudinary';
import fs from 'fs';
import { CLOUDINARY_API_KEY, CLOUDINARY_API_SECRET, CLOUDINARY_CLOUD_NAME } from '@/config';
cloudinary.v2.config({
cloud_name: CLOUDINARY_CLOUD_NAME,
api_key: CLOUDINARY_API_KEY,
api_secret: CLOUDINARY_API_SECRET,
});
@Darkmift
Darkmift / image.api.js
Last active March 7, 2023 19:06
Next.js Image Handler
import {COLLECTIONS} from '@/const'
import {NextApiRequest, NextApiResponse} from 'next'
import fs from 'fs/promises'
import formidable, {Fields, File, Files} from 'formidable'
import path from 'path'
import checkAuthMiddleware from '../../../backend/middleware/checkIsAdmin'
import {v4 as uuid} from 'uuid'
const IMAGE_DIRECTORY = './public/assets/images/'
const ACCEPTED_FILE_TYPES = ['jpg', 'png']
@Darkmift
Darkmift / auth-is-admin.middleware.js
Created March 7, 2023 19:00
Next js generic authMiddleware
import {NextApiRequest, NextApiResponse} from 'next'
import jwt from 'jsonwebtoken'
type Handler = (req: NextApiRequest, res: NextApiResponse) => Promise<any>
const checkAuthMiddleware = (handler: Handler) =>
async function (req: NextApiRequest, res: NextApiResponse): Promise<any> {
try {
// Check if the Authorization header exists and extract the token value
const authHeader = req.headers['authorization']
@Darkmift
Darkmift / t.js
Last active February 18, 2023 23:04
Triangle one loop
var triangleSize;
// Keep prompting for a valid positive number
while (
isNaN(triangleSize) ||
typeof triangleSize !== 'number' ||
triangleSize < 3 ||
triangleSize % 1 != 0
) {
triangleSize = parseInt(
@Darkmift
Darkmift / ballsort.js
Created December 15, 2022 13:46
Sort Balls by color and num
// take bag of balls in colors red,yellow,blue green with digit 1-9
// args array of balls
const ball = { color: 'red', num: 1 };
/**
*
* @param {number} min
* @param {number} max