Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
小浣熊撸代码
uni-app
提交
5cd5de9d
U
uni-app
项目概览
小浣熊撸代码
/
uni-app
与 Fork 源项目一致
Fork自
DCloud / uni-app
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
uni-app
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
5cd5de9d
编写于
11月 19, 2021
作者:
fxy060608
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
feat(mp): custom vue-i18n compiler
上级
1a48f480
变更
7
展开全部
隐藏空白更改
内联
并排
Showing
7 changed file
with
108 addition
and
2684 deletion
+108
-2684
packages/uni-mp-vite/lib/vue-i18n/dist/vue-i18n.cjs.js
packages/uni-mp-vite/lib/vue-i18n/dist/vue-i18n.cjs.js
+13
-1
packages/uni-mp-vite/lib/vue-i18n/dist/vue-i18n.cjs.prod.js
packages/uni-mp-vite/lib/vue-i18n/dist/vue-i18n.cjs.prod.js
+13
-1
packages/uni-mp-vite/lib/vue-i18n/dist/vue-i18n.esm-browser.js
...ges/uni-mp-vite/lib/vue-i18n/dist/vue-i18n.esm-browser.js
+12
-1318
packages/uni-mp-vite/lib/vue-i18n/dist/vue-i18n.esm-browser.prod.js
...ni-mp-vite/lib/vue-i18n/dist/vue-i18n.esm-browser.prod.js
+1
-1
packages/uni-mp-vite/lib/vue-i18n/dist/vue-i18n.esm-bundler.js
...ges/uni-mp-vite/lib/vue-i18n/dist/vue-i18n.esm-bundler.js
+56
-44
packages/uni-mp-vite/lib/vue-i18n/dist/vue-i18n.global.js
packages/uni-mp-vite/lib/vue-i18n/dist/vue-i18n.global.js
+12
-1318
packages/uni-mp-vite/lib/vue-i18n/dist/vue-i18n.global.prod.js
...ges/uni-mp-vite/lib/vue-i18n/dist/vue-i18n.global.prod.js
+1
-1
未找到文件。
packages/uni-mp-vite/lib/vue-i18n/dist/vue-i18n.cjs.js
浏览文件 @
5cd5de9d
...
...
@@ -21,6 +21,18 @@ var vue = require('vue');
*/
const
VERSION
=
'
9.1.9
'
;
/**
* 目前暂不支持任何语法
* @param source
* @param _
* @returns
*/
function
compileToFunction
(
source
,
_
=
{})
{
return
((
ctx
)
=>
{
return
ctx
.
normalize
([
source
]);
});
}
const
warnMessages
=
{
[
6
/* FALLBACK_TO_ROOT */
]:
`Fall back to {type} '{key}' with root locale.`
,
[
7
/* NOT_SUPPORTED_PRESERVE */
]:
`Not supported 'preserve'.`
,
...
...
@@ -1797,7 +1809,7 @@ function injectGlobalFields(app, composer) {
}
// register message compiler at vue-i18n
coreBase
.
registerMessageCompiler
(
co
reBase
.
co
mpileToFunction
);
coreBase
.
registerMessageCompiler
(
compileToFunction
);
// NOTE: experimental !!
{
const
target
=
shared
.
getGlobalThis
();
...
...
packages/uni-mp-vite/lib/vue-i18n/dist/vue-i18n.cjs.prod.js
浏览文件 @
5cd5de9d
...
...
@@ -21,6 +21,18 @@ var shared = require('@intlify/shared');
*/
const
VERSION
=
'
9.1.9
'
;
/**
* 目前暂不支持任何语法
* @param source
* @param _
* @returns
*/
function
compileToFunction
(
source
,
_
=
{})
{
return
((
ctx
)
=>
{
return
ctx
.
normalize
([
source
]);
});
}
function
createI18nError
(
code
,
...
args
)
{
return
coreBase
.
createCompileError
(
code
,
null
,
undefined
);
}
...
...
@@ -1687,7 +1699,7 @@ function injectGlobalFields(app, composer) {
}
// register message compiler at vue-i18n
coreBase
.
registerMessageCompiler
(
co
reBase
.
co
mpileToFunction
);
coreBase
.
registerMessageCompiler
(
compileToFunction
);
exports
.
DatetimeFormat
=
DatetimeFormat
;
exports
.
NumberFormat
=
NumberFormat
;
...
...
packages/uni-mp-vite/lib/vue-i18n/dist/vue-i18n.esm-browser.js
浏览文件 @
5cd5de9d
此差异已折叠。
点击以展开。
packages/uni-mp-vite/lib/vue-i18n/dist/vue-i18n.esm-browser.prod.js
浏览文件 @
5cd5de9d
此差异已折叠。
点击以展开。
packages/uni-mp-vite/lib/vue-i18n/dist/vue-i18n.esm-bundler.js
浏览文件 @
5cd5de9d
/*!
* vue-i18n v9.1.9
* (c) 2021 kazuya kawaguchi
* Released under the MIT License.
*/
import
{
getGlobalThis
,
format
,
makeSymbol
,
isPlainObject
,
isArray
,
hasOwn
,
isObject
,
isBoolean
,
isString
,
isRegExp
,
isFunction
,
assign
,
isNumber
,
warn
,
createEmitter
,
isEmptyObject
}
from
'
@intlify/shared
'
;
import
{
createCompileError
,
handleFlatJson
,
createCoreContext
,
updateFallbackLocale
,
resolveValue
,
clearDateTimeFormat
,
clearNumberFormat
,
setAdditionalMeta
,
NOT_REOSLVED
,
isTranslateFallbackWarn
,
isTranslateMissingWarn
,
parseTranslateArgs
,
translate
,
MISSING_RESOLVE_VALUE
,
parseDateTimeArgs
,
datetime
,
parseNumberArgs
,
number
,
getLocaleChain
,
registerMessageCompiler
,
compileToFunction
,
setDevToolsHook
}
from
'
@intlify/core-base
'
;
import
{
ref
,
getCurrentInstance
,
computed
,
watch
,
createVNode
,
Text
,
h
,
Fragment
,
inject
,
onMounted
,
onUnmounted
,
isRef
}
from
'
vue
'
;
import
{
setupDevtoolsPlugin
}
from
'
@vue/devtools-api
'
;
import
{
VueDevToolsLabels
,
VueDevToolsPlaceholders
,
VueDevToolsTimelineColors
}
from
'
@intlify/vue-devtools
'
;
console
.
log
(
'
custom vue-i18n......
'
)
/*!
* vue-i18n v9.1.9
* (c) 2021 kazuya kawaguchi
* Released under the MIT License.
*/
import
{
getGlobalThis
,
format
,
makeSymbol
,
isPlainObject
,
isArray
,
hasOwn
,
isObject
,
isBoolean
,
isString
,
isRegExp
,
isFunction
,
assign
,
isNumber
,
warn
,
createEmitter
,
isEmptyObject
}
from
'
@intlify/shared
'
;
import
{
createCompileError
,
handleFlatJson
,
createCoreContext
,
updateFallbackLocale
,
resolveValue
,
clearDateTimeFormat
,
clearNumberFormat
,
setAdditionalMeta
,
NOT_REOSLVED
,
isTranslateFallbackWarn
,
isTranslateMissingWarn
,
parseTranslateArgs
,
translate
,
MISSING_RESOLVE_VALUE
,
parseDateTimeArgs
,
datetime
,
parseNumberArgs
,
number
,
getLocaleChain
,
registerMessageCompiler
,
setDevToolsHook
}
from
'
@intlify/core-base
'
;
import
{
ref
,
getCurrentInstance
,
computed
,
watch
,
createVNode
,
Text
,
h
,
Fragment
,
inject
,
onMounted
,
onUnmounted
,
isRef
}
from
'
vue
'
;
import
{
setupDevtoolsPlugin
}
from
'
@vue/devtools-api
'
;
import
{
VueDevToolsLabels
,
VueDevToolsPlaceholders
,
VueDevToolsTimelineColors
}
from
'
@intlify/vue-devtools
'
;
/**
* Vue I18n Version
*
...
...
@@ -47,8 +47,20 @@ function initFeatureFlags() {
`configure your bundler to explicitly replace feature flag globals `
+
`with boolean literals to get proper tree-shaking in the final bundle.`
);
}
}
}
/**
* 目前暂不支持任何语法
* @param source
* @param _
* @returns
*/
function
compileToFunction
(
source
,
_
=
{})
{
return
((
ctx
)
=>
{
return
ctx
.
normalize
([
source
]);
});
}
const
warnMessages
=
{
[
6
/* FALLBACK_TO_ROOT */
]:
`Fall back to {type} '{key}' with root locale.`
,
[
7
/* NOT_SUPPORTED_PRESERVE */
]:
`Not supported 'preserve'.`
,
...
...
@@ -60,8 +72,8 @@ const warnMessages = {
};
function
getWarnMessage
(
code
,
...
args
)
{
return
format
(
warnMessages
[
code
],
...
args
);
}
}
function
createI18nError
(
code
,
...
args
)
{
return
createCompileError
(
code
,
null
,
(
process
.
env
.
NODE_ENV
!==
'
production
'
)
?
{
messages
:
errorMessages
,
args
}
:
undefined
);
}
...
...
@@ -75,8 +87,8 @@ const errorMessages = {
[
19
/* REQUIRED_VALUE */
]:
`Required in value: {0}`
,
[
20
/* INVALID_VALUE */
]:
`Invalid value`
,
[
21
/* CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN */
]:
`Cannot setup vue-devtools plugin`
};
};
const
DEVTOOLS_META
=
'
__INTLIFY_META__
'
;
const
TransrateVNodeSymbol
=
makeSymbol
(
'
__transrateVNode
'
);
const
DatetimePartsSymbol
=
makeSymbol
(
'
__datetimeParts
'
);
...
...
@@ -642,8 +654,8 @@ function createComposer(options = {}) {
};
}
return
composer
;
}
}
/**
* Convert to I18n Composer Options from VueI18n Options
*
...
...
@@ -1001,8 +1013,8 @@ function createVueI18n(options = {}) {
};
}
return
vueI18n
;
}
}
const
baseFormatProps
=
{
tag
:
{
type
:
[
String
,
Object
]
...
...
@@ -1018,8 +1030,8 @@ const baseFormatProps = {
i18n
:
{
type
:
Object
}
};
};
/**
* Translation Component
*
...
...
@@ -1128,8 +1140,8 @@ function getInterpolateArg({ slots }, keys) {
return
arg
;
},
{});
}
}
}
function
renderFormatter
(
props
,
context
,
slotKeys
,
partFormatter
)
{
const
{
slots
,
attrs
}
=
context
;
return
()
=>
{
...
...
@@ -1175,8 +1187,8 @@ function renderFormatter(props, context, slotKeys, partFormatter) {
?
h
(
props
.
tag
,
assignedAttrs
,
children
)
:
h
(
Fragment
,
assignedAttrs
,
children
);
};
}
}
const
NUMBER_FORMAT_KEYS
=
[
'
localeMatcher
'
,
'
style
'
,
...
...
@@ -1231,8 +1243,8 @@ const NumberFormat = {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
i18n
[
NumberPartsSymbol
](...
args
));
}
};
};
const
DATETIME_FORMAT_KEYS
=
[
'
dateStyle
'
,
'
timeStyle
'
,
...
...
@@ -1292,8 +1304,8 @@ const DatetimeFormat = {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
i18n
[
DatetimePartsSymbol
](...
args
));
}
};
};
function
getComposer$2
(
i18n
,
instance
)
{
const
i18nInternal
=
i18n
;
if
(
i18n
.
mode
===
'
composition
'
)
{
...
...
@@ -1352,8 +1364,8 @@ function makeParams(value) {
options
.
plural
=
plural
;
}
return
[
path
,
named
,
options
];
}
}
function
apply
(
app
,
i18n
,
...
options
)
{
const
pluginOptions
=
isPlainObject
(
options
[
0
])
?
options
[
0
]
...
...
@@ -1375,8 +1387,8 @@ function apply(app, i18n, ...options) {
}
// install directive
app
.
directive
(
'
t
'
,
vTDirective
(
i18n
));
}
}
const
VUE_I18N_COMPONENT_TYPES
=
'
vue-i18n: composer properties
'
;
let
devtoolsApi
;
async
function
enableDevTools
(
app
,
i18n
)
{
...
...
@@ -1704,8 +1716,8 @@ function editScope(payload, i18n) {
composer
.
inheritLocale
=
payload
.
state
.
value
;
}
}
}
}
// supports compatibility for legacy vue-i18n APIs
function
defineMixin
(
vuei18n
,
composer
,
i18n
)
{
return
{
...
...
@@ -1823,8 +1835,8 @@ function mergeToRoot(root, options) {
Object
.
keys
(
options
.
numberFormats
).
forEach
(
locale
=>
root
.
mergeNumberFormat
(
locale
,
options
.
numberFormats
[
locale
]));
}
return
root
;
}
}
/**
* Vue I18n factory
*
...
...
@@ -2221,8 +2233,8 @@ function injectGlobalFields(app, composer) {
}
Object
.
defineProperty
(
app
.
config
.
globalProperties
,
`$
${
method
}
`
,
desc
);
});
}
}
// register message compiler at vue-i18n
registerMessageCompiler
(
compileToFunction
);
{
...
...
@@ -2234,6 +2246,6 @@ if ((process.env.NODE_ENV !== 'production') || __INTLIFY_PROD_DEVTOOLS__) {
target
.
__INTLIFY__
=
true
;
setDevToolsHook
(
target
.
__INTLIFY_DEVTOOLS_GLOBAL_HOOK__
);
}
if
((
process
.
env
.
NODE_ENV
!==
'
production
'
))
;
export
{
DatetimeFormat
,
NumberFormat
,
Translation
,
VERSION
,
createI18n
,
useI18n
,
vTDirective
};
if
((
process
.
env
.
NODE_ENV
!==
'
production
'
))
;
export
{
DatetimeFormat
,
NumberFormat
,
Translation
,
VERSION
,
createI18n
,
useI18n
,
vTDirective
};
packages/uni-mp-vite/lib/vue-i18n/dist/vue-i18n.global.js
浏览文件 @
5cd5de9d
此差异已折叠。
点击以展开。
packages/uni-mp-vite/lib/vue-i18n/dist/vue-i18n.global.prod.js
浏览文件 @
5cd5de9d
此差异已折叠。
点击以展开。
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录