1+ /**
2+ * @author kazuya kawaguchi (a.k.a. kazupon)
3+ * @license MIT
4+ */
5+
6+ import { ACCEPT_LANGUAGE_HEADER , DEFAULT_LANG_TAG } from './constants.ts'
17import {
28 isLocale ,
39 isURL ,
410 isURLSearchParams ,
511 parseAcceptLanguage ,
612 pathLanguageParser ,
713 toLocale ,
8- validateLangTag ,
14+ validateLangTag
915} from './shared.ts'
10- import { ACCEPT_LANGUAGE_HEADER , DEFAULT_LANG_TAG } from './constants.ts'
1116
1217import type { PathLanguageParser } from './shared.ts'
1318// import type { CookieSerializeOptions } from 'cookie-es'
@@ -123,15 +128,14 @@ export function parseDefaultHeader(input: string): string[] {
123128
124129export function getHeaderLanguagesWithGetter (
125130 getter : ( ) => string | null | undefined ,
126- {
127- name = ACCEPT_LANGUAGE_HEADER ,
128- parser = parseDefaultHeader ,
129- } : HeaderOptions = { } ,
131+ { name = ACCEPT_LANGUAGE_HEADER , parser = parseDefaultHeader } : HeaderOptions = { }
130132) : string [ ] {
131133 const langString = getter ( )
132134 return langString
133135 ? name === ACCEPT_LANGUAGE_HEADER
134- ? parser === parseDefaultHeader ? parseAcceptLanguage ( langString ) : parser ( langString )
136+ ? parser === parseDefaultHeader
137+ ? parseAcceptLanguage ( langString )
138+ : parser ( langString )
135139 : parser ( langString )
136140 : [ ]
137141}
@@ -141,34 +145,25 @@ export function getLocaleWithGetter(getter: () => string): Intl.Locale {
141145}
142146
143147export function validateLocale ( locale : string | Intl . Locale ) : void {
144- if (
145- ! ( isLocale ( locale ) ||
146- typeof locale === 'string' && validateLangTag ( locale ) )
147- ) {
148+ if ( ! ( isLocale ( locale ) || ( typeof locale === 'string' && validateLangTag ( locale ) ) ) ) {
148149 throw new SyntaxError ( `locale is invalid: ${ locale . toString ( ) } ` )
149150 }
150151}
151152
152153export function mapToLocaleFromLanguageTag (
153- // deno-lint-ignore no-explicit-any
154- getter : ( ...args : any [ ] ) => string [ ] ,
154+ getter : ( ...args : unknown [ ] ) => string [ ] ,
155155 ...args : unknown [ ]
156156) : Intl . Locale [ ] {
157- return ( Reflect . apply ( getter , null , args ) as string [ ] ) . map ( ( lang ) =>
158- getLocaleWithGetter ( ( ) => lang )
159- )
157+ return Reflect . apply ( getter , null , args ) . map ( lang => getLocaleWithGetter ( ( ) => lang ) )
160158}
161159
162- export function getExistCookies (
163- name : string ,
164- getter : ( ) => unknown ,
165- ) {
160+ export function getExistCookies ( name : string , getter : ( ) => unknown ) {
166161 let setCookies = getter ( )
167162 if ( ! Array . isArray ( setCookies ) ) {
168163 setCookies = [ setCookies ]
169164 }
170- setCookies = ( setCookies as string [ ] ) . filter ( ( cookieValue : string ) =>
171- cookieValue && ! cookieValue . startsWith ( name + '=' )
165+ setCookies = ( setCookies as string [ ] ) . filter (
166+ ( cookieValue : string ) => cookieValue && ! cookieValue . startsWith ( name + '=' )
172167 )
173168 return setCookies as string [ ]
174169}
@@ -189,7 +184,7 @@ export type PathOptions = {
189184 */
190185export function getPathLanguage (
191186 path : string | URL ,
192- { lang = DEFAULT_LANG_TAG , parser = pathLanguageParser } : PathOptions = { } ,
187+ { lang = DEFAULT_LANG_TAG , parser = pathLanguageParser } : PathOptions = { }
193188) : string {
194189 return ( parser || pathLanguageParser ) ( path ) || lang
195190}
@@ -207,14 +202,12 @@ export function getPathLanguage(
207202 */
208203export function getPathLocale (
209204 path : string | URL ,
210- { lang = DEFAULT_LANG_TAG , parser = pathLanguageParser } : PathOptions = { } ,
205+ { lang = DEFAULT_LANG_TAG , parser = pathLanguageParser } : PathOptions = { }
211206) : Intl . Locale {
212207 return new Intl . Locale ( getPathLanguage ( path , { lang, parser } ) )
213208}
214209
215- function getURLSearchParams (
216- input : string | URL | URLSearchParams ,
217- ) : URLSearchParams {
210+ function getURLSearchParams ( input : string | URL | URLSearchParams ) : URLSearchParams {
218211 if ( isURLSearchParams ( input ) ) {
219212 return input
220213 } else if ( isURL ( input ) ) {
@@ -240,7 +233,7 @@ export type QueryOptions = {
240233 */
241234export function getQueryLanguage (
242235 query : string | URL | URLSearchParams ,
243- { lang = DEFAULT_LANG_TAG , name = 'lang' } : QueryOptions = { } ,
236+ { lang = DEFAULT_LANG_TAG , name = 'lang' } : QueryOptions = { }
244237) : string {
245238 const queryParams = getURLSearchParams ( query )
246239 return queryParams . get ( name ) || lang
@@ -259,7 +252,7 @@ export function getQueryLanguage(
259252 */
260253export function getQueryLocale (
261254 query : string | URL | URLSearchParams ,
262- { lang = DEFAULT_LANG_TAG , name = 'locale' } : QueryOptions = { } ,
255+ { lang = DEFAULT_LANG_TAG , name = 'locale' } : QueryOptions = { }
263256) : Intl . Locale {
264257 return new Intl . Locale ( getQueryLanguage ( query , { lang, name } ) )
265258}
0 commit comments