mirror of
https://github.com/openharmony/js_api_module.git
synced 2026-08-24 22:21:26 -04:00
Signed-off-by: lifansheng <lifansheng1@huawei.com>
On branch OpenHarmony-3.0-LTS Your branch is up to date with 'origin/OpenHarmony-3.0-LTS'. Changes to be committed: modified: convertxml/BUILD.gn modified: convertxml/native_module_convertxml.cpp modified: uri/BUILD.gn modified: uri/native_module_uri.cpp modified: url/BUILD.gn modified: url/native_module_url.cpp
This commit is contained in:
@@ -11,16 +11,51 @@
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
import("//ark/ts2abc/ts2panda/ts2abc_config.gni")
|
||||
import("//build/ohos.gni")
|
||||
import("//build/ohos/ace/ace.gni")
|
||||
import("//foundation/ace/ace_engine/ace_config.gni")
|
||||
|
||||
# compile .js to .abc.
|
||||
action("gen_convertxml_abc") {
|
||||
visibility = [ ":*" ]
|
||||
script = "//ark/ts2abc/ts2panda/scripts/generate_js_bytecode.py"
|
||||
|
||||
args = [
|
||||
"--src-js",
|
||||
rebase_path(
|
||||
"//base/compileruntime/js_api_module/convertxml/js_convertxml.js"),
|
||||
"--dst-file",
|
||||
rebase_path(target_out_dir + "/convertxml.abc"),
|
||||
"--node",
|
||||
rebase_path("${node_path}"),
|
||||
"--frontend-tool-path",
|
||||
rebase_path("${ts2abc_build_path}"),
|
||||
"--node-modules",
|
||||
rebase_path("${node_modules}"),
|
||||
]
|
||||
deps = [ "//ark/ts2abc/ts2panda:ark_ts2abc_build" ]
|
||||
|
||||
inputs = [ "//base/compileruntime/js_api_module/convertxml/js_convertxml.js" ]
|
||||
outputs = [ target_out_dir + "/convertxml.abc" ]
|
||||
}
|
||||
|
||||
base_output_path = get_label_info(":js_convertxml", "target_out_dir")
|
||||
js_xml_obj_path = base_output_path + "/convertxml.o"
|
||||
|
||||
gen_js_obj("js_convertxml") {
|
||||
input = "//base/compileruntime/js_api_module/convertxml/js_convertxml.js"
|
||||
output = js_xml_obj_path
|
||||
}
|
||||
|
||||
abc_output_path = get_label_info(":convertxml_abc", "target_out_dir")
|
||||
convertxml_abc_obj_path = abc_output_path + "/convertxml_abc.o"
|
||||
gen_js_obj("convertxml_abc") {
|
||||
input = "$target_out_dir/convertxml.abc"
|
||||
output = convertxml_abc_obj_path
|
||||
dep = ":gen_convertxml_abc"
|
||||
}
|
||||
|
||||
ohos_shared_library("convertxml") {
|
||||
include_dirs = [
|
||||
"//third_party/icu/icu4c/source/common",
|
||||
@@ -36,6 +71,7 @@ ohos_shared_library("convertxml") {
|
||||
]
|
||||
|
||||
deps = [
|
||||
":convertxml_abc",
|
||||
":js_convertxml",
|
||||
"//base/compileruntime/js_api_module/convertxml/:js_convertxml",
|
||||
"//foundation/ace/napi/:ace_napi",
|
||||
|
||||
@@ -19,6 +19,8 @@
|
||||
|
||||
extern const char _binary_js_convertxml_js_start[];
|
||||
extern const char _binary_js_convertxml_js_end[];
|
||||
extern const char _binary_convertxml_abc_start[];
|
||||
extern const char _binary_convertxml_abc_end[];
|
||||
|
||||
static napi_value ConvertXmlConstructor(napi_env env, napi_callback_info info)
|
||||
{
|
||||
@@ -95,6 +97,16 @@ __attribute__((visibility("default"))) void NAPI_convertxml_GetJSCode(const char
|
||||
*bufLen = _binary_js_convertxml_js_end - _binary_js_convertxml_js_start;
|
||||
}
|
||||
}
|
||||
extern "C"
|
||||
__attribute__((visibility("default"))) void NAPI_convertxml_GetABCCode(const char** buf, int* buflen)
|
||||
{
|
||||
if (buf != nullptr) {
|
||||
*buf = _binary_convertxml_abc_start;
|
||||
}
|
||||
if (buflen != nullptr) {
|
||||
*buflen = _binary_convertxml_abc_end - _binary_convertxml_abc_start;
|
||||
}
|
||||
}
|
||||
|
||||
static napi_module ConvertXmlModule = {
|
||||
.nm_version = 1,
|
||||
|
||||
+34
-1
@@ -10,9 +10,41 @@
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
import("//ark/ts2abc/ts2panda/ts2abc_config.gni")
|
||||
import("//build/ohos.gni")
|
||||
import("//build/ohos/ace/ace.gni")
|
||||
import("//foundation/ace/ace_engine/ace_config.gni")
|
||||
|
||||
# compile .js to .abc.
|
||||
action("gen_uri_abc") {
|
||||
visibility = [ ":*" ]
|
||||
script = "//ark/ts2abc/ts2panda/scripts/generate_js_bytecode.py"
|
||||
|
||||
args = [
|
||||
"--src-js",
|
||||
rebase_path("//base/compileruntime/js_api_module/uri/js_uri.js"),
|
||||
"--dst-file",
|
||||
rebase_path(target_out_dir + "/uri.abc"),
|
||||
"--node",
|
||||
rebase_path("${node_path}"),
|
||||
"--frontend-tool-path",
|
||||
rebase_path("${ts2abc_build_path}"),
|
||||
"--node-modules",
|
||||
rebase_path("${node_modules}"),
|
||||
]
|
||||
deps = [ "//ark/ts2abc/ts2panda:ark_ts2abc_build"]
|
||||
|
||||
inputs = [ "//base/compileruntime/js_api_module/uri/js_uri.js" ]
|
||||
outputs = [ target_out_dir + "/uri.abc" ]
|
||||
}
|
||||
|
||||
abc_output_path = get_label_info(":uri_abc", "target_out_dir")
|
||||
uri_abc_obj_path = abc_output_path + "/uri_abc.o"
|
||||
gen_js_obj("uri_abc") {
|
||||
input = "$target_out_dir/uri.abc"
|
||||
output = uri_abc_obj_path
|
||||
dep = ":gen_uri_abc"
|
||||
}
|
||||
|
||||
base_output_path = get_label_info(":js_uri", "target_out_dir")
|
||||
js_uri_obj_path = base_output_path + "/uri.o"
|
||||
@@ -35,6 +67,7 @@ ohos_shared_library("uri") {
|
||||
]
|
||||
|
||||
deps = [
|
||||
":uri_abc",
|
||||
":js_uri",
|
||||
"//base/compileruntime/js_api_module/uri/:js_uri",
|
||||
"//foundation/ace/napi/:ace_napi",
|
||||
|
||||
@@ -21,6 +21,8 @@
|
||||
|
||||
extern const char _binary_js_uri_js_start[];
|
||||
extern const char _binary_js_uri_js_end[];
|
||||
extern const char _binary_uri_abc_start[];
|
||||
extern const char _binary_uri_abc_end[];
|
||||
namespace OHOS::Uri {
|
||||
static napi_value UriConstructor(napi_env env, napi_callback_info info)
|
||||
{
|
||||
@@ -283,6 +285,16 @@ namespace OHOS::Uri {
|
||||
*bufLen = _binary_js_uri_js_end - _binary_js_uri_js_start;
|
||||
}
|
||||
}
|
||||
extern "C"
|
||||
__attribute__((visibility("default"))) void NAPI_uri_GetABCCode(const char** buf, int* buflen)
|
||||
{
|
||||
if (buf != nullptr) {
|
||||
*buf = _binary_uri_abc_start;
|
||||
}
|
||||
if (buflen != nullptr) {
|
||||
*buflen = _binary_uri_abc_end - _binary_uri_abc_start;
|
||||
}
|
||||
}
|
||||
|
||||
static napi_module UriModule = {
|
||||
.nm_version = 1,
|
||||
|
||||
+34
-1
@@ -10,9 +10,41 @@
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
import("//ark/ts2abc/ts2panda/ts2abc_config.gni")
|
||||
import("//build/ohos.gni")
|
||||
import("//build/ohos/ace/ace.gni")
|
||||
import("//foundation/ace/ace_engine/ace_config.gni")
|
||||
|
||||
# compile .js to .abc.
|
||||
action("gen_url_abc") {
|
||||
visibility = [ ":*" ]
|
||||
script = "//ark/ts2abc/ts2panda/scripts/generate_js_bytecode.py"
|
||||
|
||||
args = [
|
||||
"--src-js",
|
||||
rebase_path("//base/compileruntime/js_api_module/url/js_url.js"),
|
||||
"--dst-file",
|
||||
rebase_path(target_out_dir + "/url.abc"),
|
||||
"--node",
|
||||
rebase_path("${node_path}"),
|
||||
"--frontend-tool-path",
|
||||
rebase_path("${ts2abc_build_path}"),
|
||||
"--node-modules",
|
||||
rebase_path("${node_modules}"),
|
||||
]
|
||||
deps = [ "//ark/ts2abc/ts2panda:ark_ts2abc_build"]
|
||||
|
||||
inputs = [ "//base/compileruntime/js_api_module/url/js_url.js" ]
|
||||
outputs = [ target_out_dir + "/url.abc" ]
|
||||
}
|
||||
|
||||
abc_output_path = get_label_info(":url_abc", "target_out_dir")
|
||||
url_abc_obj_path = abc_output_path + "/url_abc.o"
|
||||
gen_js_obj("url_abc") {
|
||||
input = "$target_out_dir/url.abc"
|
||||
output = url_abc_obj_path
|
||||
dep = ":gen_url_abc"
|
||||
}
|
||||
|
||||
base_output_path = get_label_info(":js_url", "target_out_dir")
|
||||
js_url_obj_path = base_output_path + "/url.o"
|
||||
@@ -35,6 +67,7 @@ ohos_shared_library("url") {
|
||||
]
|
||||
|
||||
deps = [
|
||||
":url_abc",
|
||||
":js_url",
|
||||
"//base/compileruntime/js_api_module/url/:js_url",
|
||||
"//foundation/ace/napi/:ace_napi",
|
||||
|
||||
@@ -20,6 +20,8 @@
|
||||
|
||||
extern const char _binary_js_url_js_start[];
|
||||
extern const char _binary_js_url_js_end[];
|
||||
extern const char _binary_url_abc_start[];
|
||||
extern const char _binary_url_abc_end[];
|
||||
namespace OHOS::Url {
|
||||
static void UrlStructor(napi_env &env, napi_callback_info &info, URL *&object)
|
||||
{
|
||||
@@ -29,8 +31,8 @@ namespace OHOS::Url {
|
||||
void *data = nullptr;
|
||||
napi_get_cb_info(env, info, &argc, nullptr, &thisVar, &data);
|
||||
napi_get_cb_info(env, info, &argc, argv, &thisVar, &data);
|
||||
napi_valuetype valuetype1 = napi_null;
|
||||
napi_valuetype valuetype2 = napi_null;
|
||||
napi_valuetype valuetype1;
|
||||
napi_valuetype valuetype2;
|
||||
std::string input = "";
|
||||
napi_typeof(env, argv[0], &valuetype1);
|
||||
if (valuetype1 == napi_string) {
|
||||
@@ -80,7 +82,7 @@ namespace OHOS::Url {
|
||||
if (argc == 1) {
|
||||
std::string input = "";
|
||||
NAPI_CALL(env, napi_get_cb_info(env, info, &argc, argv, &thisVar, &data));
|
||||
napi_valuetype valuetype = napi_null;
|
||||
napi_valuetype valuetype;
|
||||
NAPI_CALL(env, napi_typeof(env, argv[0], &valuetype));
|
||||
if (valuetype == napi_string) {
|
||||
char *type = nullptr;
|
||||
@@ -102,9 +104,9 @@ namespace OHOS::Url {
|
||||
napi_wrap(
|
||||
env, thisVar, object,
|
||||
[](napi_env env, void *data, void *hint) {
|
||||
auto obj = (URL*)data;
|
||||
if (obj != nullptr) {
|
||||
delete obj;
|
||||
auto object = (URL*)data;
|
||||
if (object != nullptr) {
|
||||
delete object;
|
||||
}
|
||||
},
|
||||
nullptr, nullptr);
|
||||
@@ -884,7 +886,7 @@ namespace OHOS::Url {
|
||||
DECLARE_NAPI_GETTER("GetIsIpv6", GetIsIpv6),
|
||||
};
|
||||
NAPI_CALL(env, napi_define_class(env, urlClassName, strlen(urlClassName), UrlConstructor,
|
||||
nullptr, sizeof(UrlDesc) / sizeof(UrlDesc[0]), UrlDesc, &urlClass));
|
||||
nullptr, sizeof(UrlDesc) / sizeof(UrlDesc[0]), UrlDesc, &urlClass));
|
||||
static napi_property_descriptor desc[] = {
|
||||
DECLARE_NAPI_PROPERTY("Url", urlClass)
|
||||
};
|
||||
@@ -914,6 +916,16 @@ namespace OHOS::Url {
|
||||
*bufLen = _binary_js_url_js_end - _binary_js_url_js_start;
|
||||
}
|
||||
}
|
||||
extern "C"
|
||||
__attribute__((visibility("default"))) void NAPI_url_GetABCCode(const char** buf, int* buflen)
|
||||
{
|
||||
if (buf != nullptr) {
|
||||
*buf = _binary_url_abc_start;
|
||||
}
|
||||
if (buflen != nullptr) {
|
||||
*buflen = _binary_url_abc_end - _binary_url_abc_start;
|
||||
}
|
||||
}
|
||||
|
||||
static napi_module UrlModule = {
|
||||
.nm_version = 1,
|
||||
|
||||
Reference in New Issue
Block a user