33 lines
836 B
TypeScript
33 lines
836 B
TypeScript
import { isEmpty, isNil } from 'lodash-es';
|
|
|
|
export function defaultEmptyFormData<D>(formData: FormData, param: string, defaultValue: D): D {
|
|
const value = formData.get(param) as D;
|
|
if (isNil(value) || isEmpty(value)) {
|
|
return defaultValue;
|
|
}
|
|
return value;
|
|
}
|
|
|
|
export function defaultEmptyValue<T, D>(value: T, defaultValue: D): T | D {
|
|
if (isNil(value) || isEmpty(value)) {
|
|
return defaultValue;
|
|
}
|
|
return value;
|
|
}
|
|
|
|
export function isNilOrEmpty(value?: unknown): boolean {
|
|
return isNil(value) || isEmpty(value);
|
|
}
|
|
|
|
export function mapToObject<K extends string | number | symbol, V>(map: Map<K, V>): Record<K, V> {
|
|
const obj = {} as Record<K, V>;
|
|
map.forEach((value, key) => {
|
|
if (value instanceof Map) {
|
|
obj[key] = mapToObject(value);
|
|
} else {
|
|
obj[key] = value;
|
|
}
|
|
});
|
|
return obj;
|
|
}
|