Initial commit — BMP Website 2026
Vollständiges Redesign mit Gold-Formularen, BMP-Logo, multi-step Forms (Bewerbung, Kontakt, Sponsoring), Netlify-Deployment. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
21
node_modules/@uidotdev/usehooks/LICENSE
generated
vendored
Normal file
21
node_modules/@uidotdev/usehooks/LICENSE
generated
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2023 ui.dev
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
75
node_modules/@uidotdev/usehooks/README.md
generated
vendored
Normal file
75
node_modules/@uidotdev/usehooks/README.md
generated
vendored
Normal file
@@ -0,0 +1,75 @@
|
||||

|
||||
|
||||
# useHooks
|
||||
|
||||
A collection of modern, server-safe React hooks – from the [ui.dev](https://ui.dev) team.
|
||||
|
||||
Compatible with React v18.0.0+.
|
||||
|
||||
## Standard
|
||||
|
||||
### Install
|
||||
|
||||
`npm i @uidotdev/usehooks`
|
||||
|
||||
### Hooks
|
||||
|
||||
- [useBattery](https://usehooks.com/usebattery)
|
||||
- [useClickAway](https://usehooks.com/useclickaway)
|
||||
- [useCopyToClipboard](https://usehooks.com/usecopytoclipboard)
|
||||
- [useCounter](https://usehooks.com/usecounter)
|
||||
- [useDebounce](https://usehooks.com/usedebounce)
|
||||
- [useDefault](https://usehooks.com/usedefault)
|
||||
- [useDocumentTitle](https://usehooks.com/usedocumenttitle)
|
||||
- [useFavicon](https://usehooks.com/usefavicon)
|
||||
- [useGeolocation](https://usehooks.com/usegeolocation)
|
||||
- [useHistoryState](https://usehooks.com/usehistoryState)
|
||||
- [useHover](https://usehooks.com/usehover)
|
||||
- [useIdle](https://usehooks.com/useidle)
|
||||
- [useIntersectionObserver](https://usehooks.com/useintersectionobserver)
|
||||
- [useIsClient](https://usehooks.com/useisclient)
|
||||
- [useIsFirstRender](https://usehooks.com/useisfirstrender)
|
||||
- [useList](https://usehooks.com/uselist)
|
||||
- [useLocalStorage](https://usehooks.com/uselocalstorage)
|
||||
- [useLockBodyScroll](https://usehooks.com/uselockbodyscroll)
|
||||
- [useLongPress](https://usehooks.com/uselongpress)
|
||||
- [useMap](https://usehooks.com/usemap)
|
||||
- [useMeasure](https://usehooks.com/usemeasure)
|
||||
- [useMediaQuery](https://usehooks.com/usemediaquery)
|
||||
- [useMouse](https://usehooks.com/usemouse)
|
||||
- [useNetworkState](https://usehooks.com/usenetworkstate)
|
||||
- [useObjectState](https://usehooks.com/useobjectstate)
|
||||
- [useOrientation](https://usehooks.com/useorientation)
|
||||
- [usePreferredLanguage](https://usehooks.com/usepreferredlanguage)
|
||||
- [usePrevious](https://usehooks.com/useprevious)
|
||||
- [useQueue](https://usehooks.com/usequeue)
|
||||
- [useRenderCount](https://usehooks.com/userendercount)
|
||||
- [useRenderInfo](https://usehooks.com/userenderinfo)
|
||||
- [useScript](https://usehooks.com/usescript)
|
||||
- [useSessionStorage](https://usehooks.com/usesessionstorage)
|
||||
- [useSet](https://usehooks.com/useset)
|
||||
- [useThrottle](https://usehooks.com/usethrottle)
|
||||
- [useToggle](https://usehooks.com/usetoggle)
|
||||
- [useVisibilityChange](https://usehooks.com/usevisibilitychange)
|
||||
- [useWindowScroll](https://usehooks.com/usewindowscroll)
|
||||
- [useWindowSize](https://usehooks.com/usewindowsize)
|
||||
|
||||
## Experimental
|
||||
|
||||
### Install
|
||||
|
||||
`npm i @uidotdev/usehooks@experimental react@experimental react-dom@experimental`
|
||||
|
||||
### Hooks
|
||||
|
||||
- [useContinuousRetry](https://usehooks.com/usecontinuousretry)
|
||||
- [useCountdown](https://usehooks.com/usecountdown)
|
||||
- [useEventListener](https://usehooks.com/useeventlistener)
|
||||
- [useFetch](https://usehooks.com/usefetch)
|
||||
- [useInterval](https://usehooks.com/useinterval)
|
||||
- [useIntervalWhen](https://usehooks.com/useintervalwhen)
|
||||
- [useKeyPress](https://usehooks.com/usekeypress)
|
||||
- [useLogger](https://usehooks.com/uselogger)
|
||||
- [usePageLeave](https://usehooks.com/usepageleave)
|
||||
- [useRandomInterval](https://usehooks.com/userandominterval)
|
||||
- [useTimeout](https://usehooks.com/usetimeout)
|
||||
263
node_modules/@uidotdev/usehooks/index.d.ts
generated
vendored
Normal file
263
node_modules/@uidotdev/usehooks/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1,263 @@
|
||||
import * as React from "react";
|
||||
|
||||
export type BatteryManager = {
|
||||
supported: boolean;
|
||||
loading: boolean;
|
||||
level: number | null;
|
||||
charging: boolean | null;
|
||||
chargingTime: number | null;
|
||||
dischargingTime: number | null;
|
||||
};
|
||||
|
||||
export type GeolocationState = {
|
||||
loading: boolean;
|
||||
accuracy: number | null;
|
||||
altitude: number | null;
|
||||
altitudeAccuracy: number | null;
|
||||
heading: number | null;
|
||||
latitude: number | null;
|
||||
longitude: number | null;
|
||||
speed: number | null;
|
||||
timestamp: number | null;
|
||||
error: GeolocationPositionError | null;
|
||||
};
|
||||
|
||||
export type HistoryState<T> = {
|
||||
state: T;
|
||||
set: (newPresent: T) => void;
|
||||
undo: () => void;
|
||||
redo: () => void;
|
||||
clear: () => void;
|
||||
canUndo: boolean;
|
||||
canRedo: boolean;
|
||||
};
|
||||
|
||||
export type LongPressOptions = {
|
||||
threshold?: number;
|
||||
onStart?: (e: Event) => void;
|
||||
onFinish?: (e: Event) => void;
|
||||
onCancel?: (e: Event) => void;
|
||||
};
|
||||
|
||||
export type LongPressFns = {
|
||||
onMouseDown: (e: React.MouseEvent) => void;
|
||||
onMouseUp: (e: React.MouseEvent) => void;
|
||||
onMouseLeave: (e: React.MouseEvent) => void;
|
||||
onTouchStart: (e: React.TouchEvent) => void;
|
||||
onTouchEnd: (e: React.TouchEvent) => void;
|
||||
};
|
||||
|
||||
export type MousePosition = {
|
||||
x: number;
|
||||
y: number;
|
||||
elementX: number;
|
||||
elementY: number;
|
||||
elementPositionX: number;
|
||||
elementPositionY: number;
|
||||
};
|
||||
|
||||
export type NetworkState = {
|
||||
online: boolean;
|
||||
downlink: number | null;
|
||||
downlinkMax: number | null;
|
||||
effectiveType: string | null;
|
||||
rtt: number | null;
|
||||
saveData: boolean | null;
|
||||
type: string | null;
|
||||
};
|
||||
|
||||
export type CustomList<T> = {
|
||||
set: (l: T[]) => void;
|
||||
push: (element: T) => void;
|
||||
removeAt: (index: number) => void;
|
||||
insertAt: (index: number, element: T) => void;
|
||||
updateAt: (index: number, element: T) => void;
|
||||
clear: () => void;
|
||||
};
|
||||
|
||||
export type CustomQueue<T> = {
|
||||
add: (element: T) => void;
|
||||
remove: () => T | undefined;
|
||||
clear: () => void;
|
||||
first: T | undefined;
|
||||
last: T | undefined;
|
||||
size: number;
|
||||
queue: T[];
|
||||
};
|
||||
|
||||
export type RenderInfo = {
|
||||
name: string;
|
||||
renders: number;
|
||||
sinceLastRender: number;
|
||||
timestamp: number;
|
||||
};
|
||||
|
||||
export type SpeechOptions = {
|
||||
lang?: string;
|
||||
voice?: {
|
||||
lang?: string;
|
||||
name?: string;
|
||||
};
|
||||
rate?: number;
|
||||
pitch?: number;
|
||||
volume?: number;
|
||||
};
|
||||
|
||||
export type SpeechState = {
|
||||
isPlaying: boolean;
|
||||
status: "init" | "play" | "pause" | "stop";
|
||||
lang: string;
|
||||
voiceInfo: {
|
||||
lang: string;
|
||||
name: string;
|
||||
};
|
||||
rate: number;
|
||||
pitch: number;
|
||||
volume: number;
|
||||
};
|
||||
|
||||
declare module "@uidotdev/usehooks" {
|
||||
export function useBattery(): BatteryManager;
|
||||
|
||||
export function useClickAway<T extends Element>(
|
||||
cb: (e: Event) => void
|
||||
): React.MutableRefObject<T>;
|
||||
|
||||
export function useCopyToClipboard(): [
|
||||
string | null,
|
||||
(value: string) => Promise<void>
|
||||
];
|
||||
|
||||
export function useCounter(
|
||||
startingValue?: number,
|
||||
options?: {
|
||||
min?: number;
|
||||
max?: number;
|
||||
}
|
||||
): [
|
||||
number,
|
||||
{
|
||||
increment: () => void;
|
||||
decrement: () => void;
|
||||
set: (nextCount: number) => void;
|
||||
reset: () => void;
|
||||
}
|
||||
];
|
||||
|
||||
export function useDebounce<T>(value: T, delay: number): T;
|
||||
|
||||
export function useDefault<T>(
|
||||
initialValue: T,
|
||||
defaultValue: T
|
||||
): [T, React.Dispatch<React.SetStateAction<T>>];
|
||||
|
||||
export function useDocumentTitle(title: string): void;
|
||||
|
||||
export function useFavicon(url: string): void;
|
||||
|
||||
export function useGeolocation(options?: PositionOptions): GeolocationState;
|
||||
|
||||
export function useHistoryState<T>(initialPresent?: T): HistoryState<T>;
|
||||
|
||||
export function useHover<T extends Element>(): [
|
||||
React.RefCallback<T>,
|
||||
boolean
|
||||
];
|
||||
|
||||
export function useIdle(ms?: number): boolean;
|
||||
|
||||
export function useIntersectionObserver<T extends Element>(
|
||||
options?: IntersectionObserverInit
|
||||
): [React.RefCallback<T>, IntersectionObserverEntry | null];
|
||||
|
||||
export function useIsClient(): boolean;
|
||||
|
||||
export function useIsFirstRender(): boolean;
|
||||
|
||||
export function useList<T>(defaultList?: T[]): [T[], CustomList<T>];
|
||||
|
||||
export function useLocalStorage<T>(
|
||||
key: string,
|
||||
initialValue?: T
|
||||
): [T, React.Dispatch<React.SetStateAction<T>>];
|
||||
|
||||
export function useLockBodyScroll(): void;
|
||||
|
||||
export function useLongPress(
|
||||
callback: (e: Event) => void,
|
||||
options?: LongPressOptions
|
||||
): LongPressFns;
|
||||
|
||||
export function useMap<T>(initialState?: T): Map<T, any>;
|
||||
|
||||
export function useMeasure<T extends Element>(): [
|
||||
React.RefCallback<T>,
|
||||
{
|
||||
width: number | null;
|
||||
height: number | null;
|
||||
}
|
||||
];
|
||||
|
||||
export function useMediaQuery(query: string): boolean;
|
||||
|
||||
export function useMouse<T extends Element>(): [
|
||||
MousePosition,
|
||||
React.MutableRefObject<T>
|
||||
];
|
||||
|
||||
export function useNetworkState(): NetworkState;
|
||||
|
||||
export function useObjectState<T>(initialValue: T): [T, (arg: T) => void];
|
||||
|
||||
export function useOrientation(): {
|
||||
angle: number;
|
||||
type: string;
|
||||
};
|
||||
|
||||
export function usePreferredLanguage(): string;
|
||||
|
||||
export function usePrevious<T>(newValue: T): T;
|
||||
|
||||
export function useQueue<T>(initialValue?: T[]): CustomQueue<T>;
|
||||
|
||||
export function useRenderCount(): number;
|
||||
|
||||
export function useRenderInfo(name?: string): RenderInfo | undefined;
|
||||
|
||||
export function useScript(
|
||||
src: string,
|
||||
options?: {
|
||||
removeOnUnmount?: boolean;
|
||||
}
|
||||
): "unknown" | "loading" | "ready" | "error";
|
||||
|
||||
export function useSessionStorage<T>(
|
||||
key: string,
|
||||
initialValue: T
|
||||
): [T, React.Dispatch<React.SetStateAction<T>>];
|
||||
|
||||
export function useSet<T>(values?: T[]): Set<T>;
|
||||
|
||||
export function useSpeech(text: string, options?: SpeechOptions): SpeechState;
|
||||
|
||||
export function useThrottle<T>(value: T, delay: number): T;
|
||||
|
||||
export function useToggle(
|
||||
initialValue?: boolean
|
||||
): [boolean, (newValue?: boolean) => void];
|
||||
|
||||
export function useVisibilityChange(): boolean;
|
||||
|
||||
export function useWindowScroll(): [
|
||||
{
|
||||
x: number | null;
|
||||
y: number | null;
|
||||
},
|
||||
(args: unknown) => void
|
||||
];
|
||||
|
||||
export function useWindowSize(): {
|
||||
width: number | null;
|
||||
height: number | null;
|
||||
};
|
||||
}
|
||||
1367
node_modules/@uidotdev/usehooks/index.js
generated
vendored
Normal file
1367
node_modules/@uidotdev/usehooks/index.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
30
node_modules/@uidotdev/usehooks/package.json
generated
vendored
Normal file
30
node_modules/@uidotdev/usehooks/package.json
generated
vendored
Normal file
@@ -0,0 +1,30 @@
|
||||
{
|
||||
"name": "@uidotdev/usehooks",
|
||||
"version": "2.4.1",
|
||||
"description": "A collection of modern, server-safe React hooks – from the ui.dev team",
|
||||
"type": "module",
|
||||
"repository": "uidotdev/usehooks",
|
||||
"devDependencies": {
|
||||
"@types/react": "^18.2.20",
|
||||
"react": "^18.2.0",
|
||||
"react-dom": "^18.2.0",
|
||||
"typescript": "^5.1.6"
|
||||
},
|
||||
"exports": {
|
||||
"default": "./index.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=16"
|
||||
},
|
||||
"files": [
|
||||
"index.js",
|
||||
"index.d.ts"
|
||||
],
|
||||
"types": "index.d.ts",
|
||||
"peerDependencies": {
|
||||
"react": ">=18.0.0",
|
||||
"react-dom": ">=18.0.0"
|
||||
},
|
||||
"author": "Tyler McGinnis, Ben Adam",
|
||||
"license": "MIT"
|
||||
}
|
||||
Reference in New Issue
Block a user