@foundernest/namecase
Version:
A fully typed library for fixing capitalization of people's names. Based on tamtamchik PHP library.
112 lines (111 loc) • 2.48 kB
TypeScript
declare type EnvironmentOptions = {
lazy?: boolean;
irish?: boolean;
spanish?: boolean;
roman?: boolean;
hebrew?: boolean;
postnominal?: boolean;
};
declare class Environment {
private EXCEPTIONS;
private REPLACEMENTS;
private HEBREW;
private CONJUNCTIONS;
private ROMAN_REGEX;
private POST_NOMINALS;
private postNominalsExcluded;
private options;
private bckOptions;
constructor(options: EnvironmentOptions);
/**
* Global options setter.
*
* @param options
*/
setOptions(options: EnvironmentOptions): void;
backupOptions(): void;
restoreOptions(): void;
/**
* Global post-nominals exclusions setter.
*
* @param values
* @returns boolean
*/
excludePostNominals(values: string | string[]): void;
/**
* Main function for NameCase.
*
* @param name
* @param options
*
* @returns string
*/
nameCase(name: string, options?: EnvironmentOptions): string;
private processOptions;
/**
* Capitalize first letters.
*
* @param name
*
* @returns string
*/
private capitalizeFirstLetters;
private lowercaseFinalS;
/**
* Define required replacements.
*
* @return array
*/
private getReplacements;
/**
* Update for Irish names.
*
* @param name
*
* @returns string
*/
private updateIrish;
/**
* Updates irish Mac & Mc.
*
* @param name
*
* @returns string
*/
private updateMac;
/**
* Fix roman numeral names.
*
* @param name
*
* @returns string
*/
private updateRoman;
/**
* Fix Spanish rules.
*
* @param name
*
* @returns string
*/
private updateSpanish;
/**
* Fix post-nominal letter cases.
*
* @param name
* @returns string
*/
private fixPostNominal;
/**
* Skip if string is mixed case.
*
* @param name
*
* @returns bool
*/
private skipMixed;
}
export declare const setOptions: (options: EnvironmentOptions) => void;
export declare const excludePostNominals: (values: string | string[]) => void;
export declare const nameCase: (name: string, options?: EnvironmentOptions) => string;
export default Environment;