Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Global I18n Standard
提交
8783cb03
G
Global I18n Standard
项目概览
OpenHarmony
/
Global I18n Standard
9 个月 前同步成功
通知
0
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
Global I18n Standard
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
8783cb03
编写于
5月 29, 2022
作者:
S
sunyaozu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Modify security vulnerabilities
Signed-off-by:
N
sunyaozu
<
sunyaozu@huawei.com
>
上级
4b9e7de2
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
102 addition
and
29 deletion
+102
-29
interfaces/js/kits/src/i18n_addon.cpp
interfaces/js/kits/src/i18n_addon.cpp
+81
-11
interfaces/js/kits/src/intl_addon.cpp
interfaces/js/kits/src/intl_addon.cpp
+21
-18
未找到文件。
interfaces/js/kits/src/i18n_addon.cpp
浏览文件 @
8783cb03
...
...
@@ -244,6 +244,9 @@ napi_value I18nAddon::UnitConvert(napi_env env, napi_callback_info info)
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
std
::
string
fromUnit
;
GetOptionValue
(
env
,
argv
[
0
],
"unit"
,
fromUnit
);
std
::
string
fromMeasSys
;
...
...
@@ -261,7 +264,6 @@ napi_value I18nAddon::UnitConvert(napi_env env, napi_callback_info info)
// 3 is the index of value
status
=
napi_get_value_string_utf8
(
env
,
argv
[
3
],
localeBuf
.
data
(),
len
+
1
,
&
len
);
if
(
status
!=
napi_ok
)
{
HiLog
::
Error
(
LABEL
,
"Failed to get string item"
);
return
nullptr
;
}
std
::
vector
<
std
::
string
>
localeTags
;
...
...
@@ -269,7 +271,6 @@ napi_value I18nAddon::UnitConvert(napi_env env, napi_callback_info info)
std
::
map
<
std
::
string
,
std
::
string
>
map
=
{};
map
.
insert
(
std
::
make_pair
(
"style"
,
"unit"
));
if
(
!
convertStatus
)
{
HiLog
::
Error
(
LABEL
,
"Do not support the conversion"
);
map
.
insert
(
std
::
make_pair
(
"unit"
,
fromUnit
));
}
else
{
map
.
insert
(
std
::
make_pair
(
"unit"
,
toUnit
));
...
...
@@ -295,6 +296,9 @@ napi_value I18nAddon::GetDateOrder(napi_env env, napi_callback_info info)
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
size_t
len
=
0
;
napi_get_value_string_utf8
(
env
,
argv
[
0
],
nullptr
,
0
,
&
len
);
std
::
vector
<
char
>
languageBuf
(
len
+
1
);
...
...
@@ -627,6 +631,9 @@ napi_value I18nAddon::IsDigitAddon(napi_env env, napi_callback_info info)
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
napi_valuetype
valueType
=
napi_valuetype
::
napi_undefined
;
napi_typeof
(
env
,
argv
[
0
],
&
valueType
);
if
(
valueType
!=
napi_valuetype
::
napi_string
)
{
...
...
@@ -655,6 +662,9 @@ napi_value I18nAddon::IsSpaceCharAddon(napi_env env, napi_callback_info info)
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
napi_valuetype
valueType
=
napi_valuetype
::
napi_undefined
;
napi_typeof
(
env
,
argv
[
0
],
&
valueType
);
if
(
valueType
!=
napi_valuetype
::
napi_string
)
{
...
...
@@ -683,6 +693,9 @@ napi_value I18nAddon::IsWhiteSpaceAddon(napi_env env, napi_callback_info info)
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
napi_valuetype
valueType
=
napi_valuetype
::
napi_undefined
;
napi_typeof
(
env
,
argv
[
0
],
&
valueType
);
if
(
valueType
!=
napi_valuetype
::
napi_string
)
{
...
...
@@ -711,6 +724,9 @@ napi_value I18nAddon::IsRTLCharacterAddon(napi_env env, napi_callback_info info)
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
napi_valuetype
valueType
=
napi_valuetype
::
napi_undefined
;
napi_typeof
(
env
,
argv
[
0
],
&
valueType
);
if
(
valueType
!=
napi_valuetype
::
napi_string
)
{
...
...
@@ -739,6 +755,9 @@ napi_value I18nAddon::IsIdeoGraphicAddon(napi_env env, napi_callback_info info)
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
napi_valuetype
valueType
=
napi_valuetype
::
napi_undefined
;
napi_typeof
(
env
,
argv
[
0
],
&
valueType
);
if
(
valueType
!=
napi_valuetype
::
napi_string
)
{
...
...
@@ -767,6 +786,9 @@ napi_value I18nAddon::IsLetterAddon(napi_env env, napi_callback_info info)
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
napi_valuetype
valueType
=
napi_valuetype
::
napi_undefined
;
napi_typeof
(
env
,
argv
[
0
],
&
valueType
);
if
(
valueType
!=
napi_valuetype
::
napi_string
)
{
...
...
@@ -795,6 +817,9 @@ napi_value I18nAddon::IsLowerCaseAddon(napi_env env, napi_callback_info info)
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
napi_valuetype
valueType
=
napi_valuetype
::
napi_undefined
;
napi_typeof
(
env
,
argv
[
0
],
&
valueType
);
if
(
valueType
!=
napi_valuetype
::
napi_string
)
{
...
...
@@ -823,6 +848,9 @@ napi_value I18nAddon::IsUpperCaseAddon(napi_env env, napi_callback_info info)
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
napi_valuetype
valueType
=
napi_valuetype
::
napi_undefined
;
napi_typeof
(
env
,
argv
[
0
],
&
valueType
);
if
(
valueType
!=
napi_valuetype
::
napi_string
)
{
...
...
@@ -851,6 +879,9 @@ napi_value I18nAddon::GetTypeAddon(napi_env env, napi_callback_info info)
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
napi_valuetype
valueType
=
napi_valuetype
::
napi_undefined
;
napi_typeof
(
env
,
argv
[
0
],
&
valueType
);
if
(
valueType
!=
napi_valuetype
::
napi_string
)
{
...
...
@@ -905,6 +936,9 @@ napi_value I18nAddon::GetSystemCountries(napi_env env, napi_callback_info info)
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
size_t
len
=
0
;
napi_get_value_string_utf8
(
env
,
argv
[
0
],
nullptr
,
0
,
&
len
);
std
::
vector
<
char
>
localeBuf
(
len
+
1
);
...
...
@@ -981,6 +1015,9 @@ napi_value I18nAddon::GetDisplayLanguage(napi_env env, napi_callback_info info)
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
size_t
len
=
0
;
napi_get_value_string_utf8
(
env
,
argv
[
0
],
nullptr
,
0
,
&
len
);
std
::
vector
<
char
>
localeBuf
(
len
+
1
);
...
...
@@ -1020,6 +1057,9 @@ napi_value I18nAddon::GetDisplayCountry(napi_env env, napi_callback_info info)
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
size_t
len
=
0
;
napi_get_value_string_utf8
(
env
,
argv
[
0
],
nullptr
,
0
,
&
len
);
std
::
vector
<
char
>
localeBuf
(
len
+
1
);
...
...
@@ -1058,6 +1098,9 @@ napi_value I18nAddon::IsSuggested(napi_env env, napi_callback_info info)
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
size_t
len
=
0
;
napi_get_value_string_utf8
(
env
,
argv
[
0
],
nullptr
,
0
,
&
len
);
std
::
vector
<
char
>
languageBuf
(
len
+
1
);
...
...
@@ -1095,6 +1138,9 @@ napi_value I18nAddon::SetSystemLanguage(napi_env env, napi_callback_info info)
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
size_t
len
=
0
;
napi_get_value_string_utf8
(
env
,
argv
[
0
],
nullptr
,
0
,
&
len
);
std
::
vector
<
char
>
languageBuf
(
len
+
1
);
...
...
@@ -1120,6 +1166,9 @@ napi_value I18nAddon::SetSystemRegion(napi_env env, napi_callback_info info)
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
size_t
len
=
0
;
napi_get_value_string_utf8
(
env
,
argv
[
0
],
nullptr
,
0
,
&
len
);
std
::
vector
<
char
>
regionBuf
(
len
+
1
);
...
...
@@ -1145,6 +1194,9 @@ napi_value I18nAddon::SetSystemLocale(napi_env env, napi_callback_info info)
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
size_t
len
=
0
;
napi_get_value_string_utf8
(
env
,
argv
[
0
],
nullptr
,
0
,
&
len
);
std
::
vector
<
char
>
localeBuf
(
len
+
1
);
...
...
@@ -1170,6 +1222,9 @@ napi_value I18nAddon::IsRTL(napi_env env, napi_callback_info info)
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
size_t
len
=
0
;
napi_get_value_string_utf8
(
env
,
argv
[
0
],
nullptr
,
0
,
&
len
);
std
::
vector
<
char
>
localeBuf
(
len
+
1
);
...
...
@@ -1231,6 +1286,9 @@ void GetOptionValue(napi_env env, napi_value options, const std::string &optionN
napi_get_value_string_utf8
(
env
,
optionValue
,
nullptr
,
0
,
&
len
);
std
::
vector
<
char
>
optionBuf
(
len
+
1
);
status
=
napi_get_value_string_utf8
(
env
,
optionValue
,
optionBuf
.
data
(),
len
+
1
,
&
len
);
if
(
status
!=
napi_ok
)
{
return
;
}
map
.
insert
(
make_pair
(
optionName
,
optionBuf
.
data
()));
}
}
...
...
@@ -1243,51 +1301,45 @@ napi_value I18nAddon::PhoneNumberFormatConstructor(napi_env env, napi_callback_i
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
napi_valuetype
valueType
=
napi_valuetype
::
napi_undefined
;
napi_typeof
(
env
,
argv
[
0
],
&
valueType
);
if
(
valueType
!=
napi_valuetype
::
napi_string
)
{
napi_throw_type_error
(
env
,
nullptr
,
"Parameter type does not match"
);
return
nullptr
;
}
size_t
len
=
0
;
status
=
napi_get_value_string_utf8
(
env
,
argv
[
0
],
nullptr
,
0
,
&
len
);
if
(
status
!=
napi_ok
)
{
HiLog
::
Error
(
LABEL
,
"Get country tag length failed"
);
return
nullptr
;
}
std
::
vector
<
char
>
country
(
len
+
1
);
status
=
napi_get_value_string_utf8
(
env
,
argv
[
0
],
country
.
data
(),
len
+
1
,
&
len
);
if
(
status
!=
napi_ok
)
{
HiLog
::
Error
(
LABEL
,
"Get country tag failed"
);
return
nullptr
;
}
std
::
map
<
std
::
string
,
std
::
string
>
options
;
GetOptionValue
(
env
,
argv
[
1
],
"type"
,
options
);
std
::
unique_ptr
<
I18nAddon
>
obj
=
nullptr
;
obj
=
std
::
make_unique
<
I18nAddon
>
();
if
(
!
obj
)
{
HiLog
::
Error
(
LABEL
,
"Create I18nAddon failed"
);
return
nullptr
;
}
status
=
napi_wrap
(
env
,
thisVar
,
reinterpret_cast
<
void
*>
(
obj
.
get
()),
I18nAddon
::
Destructor
,
nullptr
,
&
obj
->
wrapper_
);
if
(
status
!=
napi_ok
)
{
HiLog
::
Error
(
LABEL
,
"Wrap I18nAddon failed"
);
return
nullptr
;
}
if
(
!
obj
->
InitPhoneNumberFormatContext
(
env
,
info
,
country
.
data
(),
options
))
{
return
nullptr
;
}
obj
.
release
();
return
thisVar
;
}
...
...
@@ -2391,6 +2443,9 @@ napi_value I18nAddon::IndexUtilConstructor(napi_env env, napi_callback_info info
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
std
::
string
localeTag
=
""
;
if
(
argv
[
0
]
!=
nullptr
)
{
napi_valuetype
valueType
=
napi_valuetype
::
napi_undefined
;
...
...
@@ -2604,6 +2659,9 @@ napi_value I18nAddon::Set24HourClock(napi_env env, napi_callback_info info)
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
bool
option
=
false
;
status
=
napi_get_value_bool
(
env
,
argv
[
0
],
&
option
);
...
...
@@ -2628,6 +2686,9 @@ napi_value I18nAddon::AddPreferredLanguage(napi_env env, napi_callback_info info
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
napi_valuetype
valueType
=
napi_valuetype
::
napi_undefined
;
napi_typeof
(
env
,
argv
[
0
],
&
valueType
);
...
...
@@ -2672,6 +2733,9 @@ napi_value I18nAddon::RemovePreferredLanguage(napi_env env, napi_callback_info i
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
napi_valuetype
valueType
=
napi_valuetype
::
napi_undefined
;
napi_typeof
(
env
,
argv
[
0
],
&
valueType
);
...
...
@@ -2926,6 +2990,9 @@ napi_value I18nAddon::GetTimeZoneDisplayName(napi_env env, napi_callback_info in
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
I18nAddon
*
obj
=
nullptr
;
status
=
napi_unwrap
(
env
,
thisVar
,
reinterpret_cast
<
void
**>
(
&
obj
));
...
...
@@ -2968,6 +3035,9 @@ napi_value I18nAddon::GetOffset(napi_env env, napi_callback_info info)
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
double
date
=
0
;
if
(
argv
[
0
])
{
...
...
interfaces/js/kits/src/intl_addon.cpp
浏览文件 @
8783cb03
...
...
@@ -181,6 +181,9 @@ void GetOptionValue(napi_env env, napi_value options, const std::string &optionN
napi_get_value_string_utf8
(
env
,
optionValue
,
nullptr
,
0
,
&
len
);
std
::
vector
<
char
>
optionBuf
(
len
+
1
);
status
=
napi_get_value_string_utf8
(
env
,
optionValue
,
optionBuf
.
data
(),
len
+
1
,
&
len
);
if
(
status
!=
napi_ok
)
{
return
;
}
map
.
insert
(
make_pair
(
optionName
,
optionBuf
.
data
()));
}
}
...
...
@@ -300,6 +303,9 @@ napi_value IntlAddon::LocaleConstructor(napi_env env, napi_callback_info info)
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
std
::
string
localeTag
=
GetLocaleTag
(
env
,
argv
[
0
]);
std
::
map
<
std
::
string
,
std
::
string
>
map
=
{};
...
...
@@ -364,12 +370,14 @@ void GetLocaleTags(napi_env env, napi_value rawLocaleTag, std::vector<std::strin
napi_value
IntlAddon
::
DateTimeFormatConstructor
(
napi_env
env
,
napi_callback_info
info
)
{
// Need to get one parameter of a locale in string format to create DateTimeFormat object.
size_t
argc
=
2
;
napi_value
argv
[
2
]
=
{
0
};
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
std
::
vector
<
std
::
string
>
localeTags
;
if
(
argv
[
0
]
!=
nullptr
)
{
napi_valuetype
valueType
=
napi_valuetype
::
napi_undefined
;
...
...
@@ -429,13 +437,14 @@ bool IntlAddon::InitDateTimeFormatContext(napi_env env, napi_callback_info info,
napi_value
IntlAddon
::
RelativeTimeFormatConstructor
(
napi_env
env
,
napi_callback_info
info
)
{
// Need to get one parameter of a locale in string format to create DateTimeFormat object.
size_t
argc
=
2
;
napi_value
argv
[
2
]
=
{
0
};
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
std
::
vector
<
std
::
string
>
localeTags
;
if
(
argv
[
0
]
!=
nullptr
)
{
napi_valuetype
valueType
=
napi_valuetype
::
napi_undefined
;
...
...
@@ -454,31 +463,26 @@ napi_value IntlAddon::RelativeTimeFormatConstructor(napi_env env, napi_callback_
}
}
}
std
::
map
<
std
::
string
,
std
::
string
>
map
=
{};
if
(
argv
[
1
]
!=
nullptr
)
{
GetRelativeTimeOptionValues
(
env
,
argv
[
1
],
map
);
}
std
::
unique_ptr
<
IntlAddon
>
obj
=
nullptr
;
obj
=
std
::
make_unique
<
IntlAddon
>
();
if
(
!
obj
)
{
HiLog
::
Error
(
LABEL
,
"Create IntlAddon failed"
);
return
nullptr
;
}
status
=
napi_wrap
(
env
,
thisVar
,
reinterpret_cast
<
void
*>
(
obj
.
get
()),
IntlAddon
::
Destructor
,
nullptr
,
&
obj
->
wrapper_
);
if
(
status
!=
napi_ok
)
{
HiLog
::
Error
(
LABEL
,
"Wrap IntlAddon failed"
);
return
nullptr
;
}
if
(
!
obj
->
InitRelativeTimeFormatContext
(
env
,
info
,
localeTags
,
map
))
{
HiLog
::
Error
(
LABEL
,
"Init RelativeTimeFormat failed"
);
return
nullptr
;
}
obj
.
release
();
return
thisVar
;
}
...
...
@@ -595,13 +599,14 @@ void GetNumberOptionValues(napi_env env, napi_value options, std::map<std::strin
napi_value
IntlAddon
::
NumberFormatConstructor
(
napi_env
env
,
napi_callback_info
info
)
{
// Need to get one parameter of a locale in string format to create DateTimeFormat object.
size_t
argc
=
2
;
napi_value
argv
[
2
]
=
{
0
};
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
std
::
vector
<
std
::
string
>
localeTags
;
if
(
argv
[
0
]
!=
nullptr
)
{
napi_valuetype
valueType
=
napi_valuetype
::
napi_undefined
;
...
...
@@ -621,31 +626,25 @@ napi_value IntlAddon::NumberFormatConstructor(napi_env env, napi_callback_info i
}
}
}
std
::
map
<
std
::
string
,
std
::
string
>
map
=
{};
if
(
argv
[
1
]
!=
nullptr
)
{
GetNumberOptionValues
(
env
,
argv
[
1
],
map
);
}
std
::
unique_ptr
<
IntlAddon
>
obj
=
nullptr
;
obj
=
std
::
make_unique
<
IntlAddon
>
();
if
(
!
obj
)
{
HiLog
::
Error
(
LABEL
,
"Create IntlAddon failed"
);
return
nullptr
;
}
status
=
napi_wrap
(
env
,
thisVar
,
reinterpret_cast
<
void
*>
(
obj
.
get
()),
IntlAddon
::
Destructor
,
nullptr
,
&
obj
->
wrapper_
);
if
(
status
!=
napi_ok
)
{
HiLog
::
Error
(
LABEL
,
"Wrap IntlAddon failed"
);
return
nullptr
;
}
if
(
!
obj
->
InitNumberFormatContext
(
env
,
info
,
localeTags
,
map
))
{
HiLog
::
Error
(
LABEL
,
"Init NumberFormat failed"
);
return
nullptr
;
}
obj
.
release
();
return
thisVar
;
}
...
...
@@ -1486,6 +1485,9 @@ napi_value IntlAddon::CollatorConstructor(napi_env env, napi_callback_info info)
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
std
::
vector
<
std
::
string
>
localeTags
;
if
(
argv
[
0
]
!=
nullptr
)
{
napi_valuetype
valueType
=
napi_valuetype
::
napi_undefined
;
...
...
@@ -1504,12 +1506,10 @@ napi_value IntlAddon::CollatorConstructor(napi_env env, napi_callback_info info)
}
}
}
std
::
map
<
std
::
string
,
std
::
string
>
map
=
{};
if
(
argv
[
1
]
!=
nullptr
)
{
GetCollatorOptionValue
(
env
,
argv
[
1
],
map
);
}
std
::
unique_ptr
<
IntlAddon
>
obj
=
nullptr
;
obj
=
std
::
make_unique
<
IntlAddon
>
();
if
(
!
obj
)
{
...
...
@@ -1869,6 +1869,9 @@ napi_value IntlAddon::PluralRulesConstructor(napi_env env, napi_callback_info in
napi_value
thisVar
=
nullptr
;
void
*
data
=
nullptr
;
napi_status
status
=
napi_get_cb_info
(
env
,
info
,
&
argc
,
argv
,
&
thisVar
,
&
data
);
if
(
status
!=
napi_ok
)
{
return
nullptr
;
}
napi_valuetype
valueType
=
napi_valuetype
::
napi_undefined
;
std
::
vector
<
std
::
string
>
localeTags
;
if
(
argv
[
0
]
!=
nullptr
)
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录