1 /*
2  * Copyright (c) 2024 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #include "ohos_nweb/bridge/ark_web_file_selector_params_wrapper.h"
17 
18 #include "base/bridge/ark_web_bridge_macros.h"
19 
20 namespace OHOS::ArkWeb {
21 
ArkWebFileSelectorParamsWrapper(ArkWebRefPtr<ArkWebFileSelectorParams> ark_web_file_selector_params)22 ArkWebFileSelectorParamsWrapper::ArkWebFileSelectorParamsWrapper(
23     ArkWebRefPtr<ArkWebFileSelectorParams> ark_web_file_selector_params)
24     : ark_web_file_selector_params_(ark_web_file_selector_params)
25 {}
26 
Mode()27 ArkWebFileSelectorMode ArkWebFileSelectorParamsWrapper::Mode()
28 {
29     return static_cast<ArkWebFileSelectorMode>(ark_web_file_selector_params_->Mode());
30 }
31 
Title()32 const std::string ArkWebFileSelectorParamsWrapper::Title()
33 {
34     ArkWebString stTitle = ark_web_file_selector_params_->Title();
35 
36     std::string objTitle = ArkWebStringStructToClass(stTitle);
37     ArkWebStringStructRelease(stTitle);
38     return objTitle;
39 }
40 
IsCapture()41 bool ArkWebFileSelectorParamsWrapper::IsCapture()
42 {
43     return ark_web_file_selector_params_->IsCapture();
44 }
45 
AcceptType()46 const std::vector<std::string> ArkWebFileSelectorParamsWrapper::AcceptType()
47 {
48     ArkWebStringVector stType = ark_web_file_selector_params_->AcceptType();
49 
50     std::vector<std::string> objType = ArkWebStringVectorStructToClass(stType);
51     ArkWebStringVectorStructRelease(stType);
52     return objType;
53 }
54 
DefaultFilename()55 const std::string ArkWebFileSelectorParamsWrapper::DefaultFilename()
56 {
57     ArkWebString stName = ark_web_file_selector_params_->DefaultFilename();
58 
59     std::string objName = ArkWebStringStructToClass(stName);
60     ArkWebStringStructRelease(stName);
61     return objName;
62 }
63 
64 } // namespace OHOS::ArkWeb
65