Skip to content

Commit db29fbd

Browse files
committed
refactor core typing name and build targets
1 parent f034af3 commit db29fbd

File tree

13 files changed

+126
-156
lines changed

13 files changed

+126
-156
lines changed

packages/core/src/context.ts

Lines changed: 33 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -61,17 +61,14 @@ export type LocaleMessages<Message = string> = Record<
6161
>
6262

6363
/** @internal */
64-
export type RuntimeMissingType =
65-
| 'translate'
66-
| 'datetime format'
67-
| 'number format'
64+
export type CoreMissingType = 'translate' | 'datetime format' | 'number format'
6865

6966
/** @internal */
70-
export type RuntimeMissingHandler<Message = string> = (
71-
context: RuntimeCommonContext<Message>,
67+
export type CoreMissingHandler<Message = string> = (
68+
context: CoreCommonContext<Message>,
7269
locale: Locale,
7370
key: Path,
74-
type: RuntimeMissingType,
71+
type: CoreMissingType,
7572
...values: unknown[]
7673
) => string | void
7774
/** @VueI18nGeneral */
@@ -86,15 +83,15 @@ export type MessageCompiler<Message = string> = (
8683
) => MessageFunction<Message>
8784

8885
/** @internal */
89-
export interface RuntimeOptions<Message = string> {
86+
export interface CoreOptions<Message = string> {
9087
locale?: Locale
9188
fallbackLocale?: FallbackLocale
9289
messages?: LocaleMessages<Message>
9390
datetimeFormats?: DateTimeFormatsType
9491
numberFormats?: NumberFormatsType
9592
modifiers?: LinkedModifiers<Message>
9693
pluralRules?: PluralizationRules
97-
missing?: RuntimeMissingHandler<Message>
94+
missing?: CoreMissingHandler<Message>
9895
missingWarn?: boolean | RegExp
9996
fallbackWarn?: boolean | RegExp
10097
fallbackFormat?: boolean
@@ -108,17 +105,17 @@ export interface RuntimeOptions<Message = string> {
108105
}
109106

110107
/** @internal */
111-
export interface RuntimeInternalOptions {
108+
export interface CoreInternalOptions {
112109
__datetimeFormatters?: Map<string, Intl.DateTimeFormat>
113110
__numberFormatters?: Map<string, Intl.NumberFormat>
114111
__emitter?: DevToolsEmitter // for vue-devtools timeline event
115112
}
116113

117114
/** @internal */
118-
export interface RuntimeCommonContext<Message = string> {
115+
export interface CoreCommonContext<Message = string> {
119116
locale: Locale
120117
fallbackLocale: FallbackLocale
121-
missing: RuntimeMissingHandler<Message> | null
118+
missing: CoreMissingHandler<Message> | null
122119
missingWarn: boolean | RegExp
123120
fallbackWarn: boolean | RegExp
124121
fallbackFormat: boolean
@@ -127,8 +124,8 @@ export interface RuntimeCommonContext<Message = string> {
127124
}
128125

129126
/** @internal */
130-
export interface RuntimeTranslationContext<Messages = {}, Message = string>
131-
extends RuntimeCommonContext<Message> {
127+
export interface CoreTranslationContext<Messages = {}, Message = string>
128+
extends CoreCommonContext<Message> {
132129
messages: Messages
133130
modifiers: LinkedModifiers<Message>
134131
pluralRules?: PluralizationRules
@@ -140,29 +137,29 @@ export interface RuntimeTranslationContext<Messages = {}, Message = string>
140137
}
141138

142139
/** @internal */
143-
export interface RuntimeDateTimeContext<DateTimeFormats = {}, Message = string>
144-
extends RuntimeCommonContext<Message> {
140+
export interface CoreDateTimeContext<DateTimeFormats = {}, Message = string>
141+
extends CoreCommonContext<Message> {
145142
datetimeFormats: DateTimeFormats
146143
}
147144

148145
/** @internal */
149-
export interface RuntimeNumberContext<NumberFormats = {}, Message = string>
150-
extends RuntimeCommonContext<Message> {
146+
export interface CoreNumberContext<NumberFormats = {}, Message = string>
147+
extends CoreCommonContext<Message> {
151148
numberFormats: NumberFormats
152149
}
153150

154151
/** @internal */
155-
export interface RuntimeContext<
152+
export interface CoreContext<
156153
Messages = {},
157154
DateTimeFormats = {},
158155
NumberFormats = {},
159156
Message = string
160-
> extends RuntimeTranslationContext<Messages, Message>,
161-
RuntimeDateTimeContext<DateTimeFormats, Message>,
162-
RuntimeNumberContext<NumberFormats, Message> {}
157+
> extends CoreTranslationContext<Messages, Message>,
158+
CoreDateTimeContext<DateTimeFormats, Message>,
159+
CoreNumberContext<NumberFormats, Message> {}
163160

164161
/** @internal */
165-
export interface RuntimeInternalContext {
162+
export interface CoreInternalContext {
166163
__datetimeFormatters: Map<string, Intl.DateTimeFormat>
167164
__numberFormatters: Map<string, Intl.NumberFormat>
168165
__localeChainCache?: Map<Locale, Locale[]>
@@ -192,9 +189,9 @@ function getDefaultLinkedModifiers<
192189
}
193190

194191
/** @internal */
195-
export function createRuntimeContext<
192+
export function createCoreContext<
196193
Message = string,
197-
Options extends RuntimeOptions<Message> = object,
194+
Options extends CoreOptions<Message> = object,
198195
Messages extends Record<
199196
keyof Options['messages'],
200197
LocaleMessageDictionary<Message>
@@ -209,7 +206,7 @@ export function createRuntimeContext<
209206
> = Record<keyof Options['numberFormats'], NumberFormat>
210207
>(
211208
options: Options = {} as Options
212-
): RuntimeContext<
209+
): CoreContext<
213210
Options['messages'],
214211
Options['datetimeFormats'],
215212
Options['numberFormats'],
@@ -264,7 +261,7 @@ export function createRuntimeContext<
264261
const onWarn = isFunction(options.onWarn) ? options.onWarn : warn
265262

266263
// setup internal options
267-
const internalOptions = options as RuntimeInternalOptions
264+
const internalOptions = options as CoreInternalOptions
268265
const __datetimeFormatters = isObject(internalOptions.__datetimeFormatters)
269266
? internalOptions.__datetimeFormatters
270267
: new Map<string, Intl.DateTimeFormat>()
@@ -293,7 +290,7 @@ export function createRuntimeContext<
293290
onWarn,
294291
__datetimeFormatters,
295292
__numberFormatters
296-
} as RuntimeContext<
293+
} as CoreContext<
297294
Options['messages'],
298295
Options['datetimeFormats'],
299296
Options['numberFormats'],
@@ -302,7 +299,7 @@ export function createRuntimeContext<
302299

303300
// for vue-devtools timeline event
304301
if (__DEV__) {
305-
;((context as unknown) as RuntimeInternalContext).__emitter =
302+
;((context as unknown) as CoreInternalContext).__emitter =
306303
internalOptions.__emitter != null ? internalOptions.__emitter : undefined
307304
}
308305

@@ -327,17 +324,17 @@ export function isTranslateMissingWarn(
327324

328325
/** @internal */
329326
export function handleMissing<Message = string>(
330-
context: RuntimeCommonContext<Message>,
327+
context: CoreCommonContext<Message>,
331328
key: Path,
332329
locale: Locale,
333330
missingWarn: boolean | RegExp,
334-
type: RuntimeMissingType
331+
type: CoreMissingType
335332
): unknown {
336333
const { missing, onWarn } = context
337334

338335
// for vue-devtools timeline event
339336
if (__DEV__) {
340-
const emitter = ((context as unknown) as RuntimeInternalContext).__emitter
337+
const emitter = ((context as unknown) as CoreInternalContext).__emitter
341338
if (emitter) {
342339
emitter.emit(DevToolsTimelineEvents.MISSING, {
343340
locale,
@@ -360,11 +357,11 @@ export function handleMissing<Message = string>(
360357

361358
/** @internal */
362359
export function getLocaleChain<Message = string>(
363-
ctx: RuntimeCommonContext<Message>,
360+
ctx: CoreCommonContext<Message>,
364361
fallback: FallbackLocale,
365362
start: Locale = ''
366363
): Locale[] {
367-
const context = (ctx as unknown) as RuntimeInternalContext
364+
const context = (ctx as unknown) as CoreInternalContext
368365

369366
if (start === '') {
370367
return []
@@ -463,11 +460,11 @@ function appendItemToChain(
463460

464461
/** @internal */
465462
export function updateFallbackLocale<Message = string>(
466-
ctx: RuntimeCommonContext<Message>,
463+
ctx: CoreCommonContext<Message>,
467464
locale: Locale,
468465
fallback: FallbackLocale
469466
): void {
470-
const context = (ctx as unknown) as RuntimeInternalContext
467+
const context = (ctx as unknown) as CoreInternalContext
471468
context.__localeChainCache = new Map()
472469
getLocaleChain(ctx, fallback, locale)
473470
}

packages/core/src/datetime.ts

Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,8 @@ import type {
2525
} from './types'
2626
import type {
2727
Locale,
28-
RuntimeDateTimeContext,
29-
RuntimeInternalContext
28+
CoreDateTimeContext,
29+
CoreInternalContext
3030
} from './context'
3131

3232
/**
@@ -108,44 +108,42 @@ export interface DateTimeOptions {
108108
// `datetime` function overloads
109109
/** @internal */
110110
export function datetime<DateTimeFormats, Message = string>(
111-
context: RuntimeDateTimeContext<DateTimeFormats, Message>,
111+
context: CoreDateTimeContext<DateTimeFormats, Message>,
112112
value: number | Date
113113
): string | number | Intl.DateTimeFormatPart[]
114114
/** @internal */
115115
export function datetime<DateTimeFormats, Message = string>(
116-
context: RuntimeDateTimeContext<DateTimeFormats, Message>,
116+
context: CoreDateTimeContext<DateTimeFormats, Message>,
117117
value: number | Date,
118118
key: string
119119
): string | number | Intl.DateTimeFormatPart[]
120120
/** @internal */
121121
export function datetime<DateTimeFormats, Message = string>(
122-
context: RuntimeDateTimeContext<DateTimeFormats, Message>,
122+
context: CoreDateTimeContext<DateTimeFormats, Message>,
123123
value: number | Date,
124124
key: string,
125125
locale: Locale
126126
): string | number | Intl.DateTimeFormatPart[]
127127
/** @internal */
128128
export function datetime<DateTimeFormats, Message = string>(
129-
context: RuntimeDateTimeContext<DateTimeFormats, Message>,
129+
context: CoreDateTimeContext<DateTimeFormats, Message>,
130130
value: number | Date,
131131
options: DateTimeOptions
132132
): string | number | Intl.DateTimeFormatPart[]
133133
/** @internal */
134134
export function datetime<DateTimeFormats, Message = string>(
135-
context: RuntimeDateTimeContext<DateTimeFormats, Message>,
135+
context: CoreDateTimeContext<DateTimeFormats, Message>,
136136
...args: unknown[]
137137
): string | number | Intl.DateTimeFormatPart[] // for internal
138138

139139
// implementation of `datetime` function
140140
/** @internal */
141141
export function datetime<DateTimeFormats, Message = string>(
142-
context: RuntimeDateTimeContext<DateTimeFormats, Message>,
142+
context: CoreDateTimeContext<DateTimeFormats, Message>,
143143
...args: unknown[]
144144
): string | number | Intl.DateTimeFormatPart[] {
145145
const { datetimeFormats, unresolving, fallbackLocale, onWarn } = context
146-
const {
147-
__datetimeFormatters
148-
} = (context as unknown) as RuntimeInternalContext
146+
const { __datetimeFormatters } = (context as unknown) as CoreInternalContext
149147

150148
if (__DEV__ && !Availabilities.dateTimeFormat) {
151149
onWarn(getWarnMessage(CoreWarnCodes.CANNOT_FORMAT_DATE))
@@ -192,7 +190,7 @@ export function datetime<DateTimeFormats, Message = string>(
192190

193191
// for vue-devtools timeline event
194192
if (__DEV__ && locale !== targetLocale) {
195-
const emitter = ((context as unknown) as RuntimeInternalContext).__emitter
193+
const emitter = ((context as unknown) as CoreInternalContext).__emitter
196194
if (emitter) {
197195
emitter.emit(DevToolsTimelineEvents.FALBACK, {
198196
type,
@@ -288,11 +286,11 @@ export function parseDateTimeArgs(
288286

289287
/** @internal */
290288
export function clearDateTimeFormat<DateTimeFormats = {}, Message = string>(
291-
ctx: RuntimeDateTimeContext<DateTimeFormats, Message>,
289+
ctx: CoreDateTimeContext<DateTimeFormats, Message>,
292290
locale: Locale,
293291
format: DateTimeFormat
294292
): void {
295-
const context = (ctx as unknown) as RuntimeInternalContext
293+
const context = (ctx as unknown) as CoreInternalContext
296294
for (const key in format) {
297295
const id = `${locale}__${key}`
298296
if (!context.__datetimeFormatters.has(id)) {

packages/core/src/debugger/constants.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import type { Emittable } from './emittable'
22
import type { Path, PathValue } from '@intlify/message-resolver'
3-
import type { Locale, RuntimeMissingType } from '../context'
3+
import type { Locale, CoreMissingType } from '../context'
44

55
export const enum DevToolsIDs {
66
PLUGIN = 'vue-devtools-plugin-vue-i18n',
@@ -50,11 +50,11 @@ export type DevToolsTimelineEventPayloads = {
5050
[DevToolsTimelineEvents.MISSING]: {
5151
locale: Locale
5252
key: Path
53-
type: RuntimeMissingType
53+
type: CoreMissingType
5454
}
5555
[DevToolsTimelineEvents.FALBACK]: {
5656
key: Path
57-
type: RuntimeMissingType
57+
type: CoreMissingType
5858
from?: Locale
5959
to: Locale | 'global'
6060
}

0 commit comments

Comments
 (0)