Skip to content

Instantly share code, notes, and snippets.

View zbeyens's full-sized avatar

Ziad Beyens zbeyens

View GitHub Profile
export const fetchCompressImage = async (file: Blob) => {
const formData = new FormData();
formData.append('Content-Type', file.type);
formData.append('file', file);
const res = await fetch(apiRoutes.compressImage, {
body: formData,
method: 'POST',
});
export const searchRange = (
editor: PlateEditor,
search: string | [string, string],
{
match,
// from,
}: {
match?: GetNodeEntriesOptions['match']
from?: Point
} = {},
'use client';
export function withTooltip<
T extends React.ComponentType<any> | keyof HTMLElementTagNameMap,
>(Component: T) {
return React.forwardRef<
React.ElementRef<T>,
React.ComponentPropsWithoutRef<T> & {
tooltip?: React.ReactNode;
tooltipContentProps?: Omit<
import {
getPluginType,
type PlatePlugin,
type TDescendant,
type TElement,
type TText,
} from '@udecode/plate-common';
import {
remarkTransformElementChildren,
type DeserializeMdPlugin,
const RemoteSelection = ({ data, selectionRects, caretPosition }: CursorOverlayData<CursorData>) => {
if (!data) {
return null
}
return (
<>
{selectionRects.map((position, i) => (
<div
key={i}
@zbeyens
zbeyens / normalized leaf.tsx
Last active August 29, 2022 11:21
normalized leaf
export const MARK_THREAD = 'thread'
export const getThreadKey = (id: string) => MARK_THREAD + '_' + id
export const isThreadKey = (key: string) => key.startsWith(MARK_THREAD + '_')
export const createThreadPlugin = createPluginFactory({
key: MARK_THREAD,
isLeaf: true,
@zbeyens
zbeyens / settings.json
Last active October 10, 2019 09:42
color info
"colorInfo.languages":[
{
"selector": "css",
"colors": "css"
},
{
"selector": "sass",
"colors": "css"
},
{
@zbeyens
zbeyens / bd3d4befe38185704bf0fc875e9deed6|configuration.json
Last active January 31, 2019 21:42
Visual Studio Code Settings Sync Gist
{"contents":{"eslint":{"enable":true},"launch":{"version":"0.2.0","configurations":[{"type":"node","request":"launch","name":"Launch Program","program":"${file}"}]}},"overrides":[],"keys":["eslint.enable","launch.version","launch.configurations"]}
@zbeyens
zbeyens / vanilla-js-cheatsheet.md
Last active February 27, 2018 02:40 — forked from thegitfather/vanilla-js-cheatsheet.md
Vanilla JavaScript Quick Reference / Cheatsheet