swc/crates/swc_bundler/tests/.cache/deno/f2105c5c7e6674ed4a4337d18b6da3d39faab95d.ts
2021-11-09 20:42:49 +09:00

45 lines
990 B
TypeScript

// Loaded from https://deno.land/x/cliffy@v0.12.1/packages/x/upperCase.ts
import { LanguageSpecific } from 'https://deno.land/x/case/types.ts';
const LANGUAGES: LanguageSpecific = {
tr: {
regexp: /[\u0069]/g,
map: {
i: '\u0130'
}
},
az: {
regexp: /[\u0069]/g,
map: {
i: '\u0130'
}
},
lt: {
regexp: /[\u0069\u006A\u012F]\u0307|\u0069\u0307[\u0300\u0301\u0303]/g,
map: {
: '\u0049',
: '\u004A',
į̇: '\u012E',
i̇̀: '\u00CC',
i̇́: '\u00CD',
i̇̃: '\u0128'
}
}
};
export default function ( str: string, locale?: string ): string {
const lang = locale && LANGUAGES[ locale ];
str = str == null ? '' : String( str );
if ( lang ) {
str = str.replace( lang.regexp, function ( m ) {
return lang.map[ m ];
} );
}
return str.toUpperCase();
}