@@ -390,7 +390,7 @@ export function translate<
390390 // resolve message format
391391 // eslint-disable-next-line prefer-const
392392 let [ formatScope , targetLocale , message ] : [
393- PathValue | MessageFunction < Message > ,
393+ PathValue | MessageFunction < Message > | ResourceNode ,
394394 Locale | undefined ,
395395 LocaleMessageValue < Message >
396396 ] = ! resolvedMessage
@@ -657,7 +657,7 @@ function compileMessageFormat<Messages, Message>(
657657 context : CoreContext < Message , Messages > ,
658658 key : string ,
659659 targetLocale : string ,
660- format : PathValue ,
660+ format : PathValue | ResourceNode | MessageFunction < Message > ,
661661 cacheBaseKey : string ,
662662 errorDetector : ( ) => void
663663) : MessageFunctionInternal {
@@ -707,7 +707,7 @@ function compileMessageFormat<Messages, Message>(
707707 if ( emitter && start ) {
708708 emitter . emit ( VueDevToolsTimelineEvents . MESSAGE_COMPILATION , {
709709 type : VueDevToolsTimelineEvents . MESSAGE_COMPILATION ,
710- message : format ,
710+ message : format as string | ResourceNode | MessageFunction ,
711711 time : end - start ,
712712 groupId : `${ 'translate' } :${ key } `
713713 } )
@@ -767,11 +767,16 @@ function evaluateMessage<Messages, Message>(
767767/** @internal */
768768export function parseTranslateArgs < Message = string > (
769769 ...args : unknown [ ]
770- ) : [ Path | MessageFunction < Message > , TranslateOptions ] {
770+ ) : [ Path | MessageFunction < Message > | ResourceNode , TranslateOptions ] {
771771 const [ arg1 , arg2 , arg3 ] = args
772772 const options = { } as TranslateOptions
773773
774- if ( ! isString ( arg1 ) && ! isNumber ( arg1 ) && ! isMessageFunction ( arg1 ) ) {
774+ if (
775+ ! isString ( arg1 ) &&
776+ ! isNumber ( arg1 ) &&
777+ ! isMessageFunction ( arg1 ) &&
778+ ! isMessageAST ( arg1 )
779+ ) {
775780 throw createCoreError ( CoreErrorCodes . INVALID_ARGUMENT )
776781 }
777782
0 commit comments