BBASMPlugin+ShowToast.h 4.38 KB
//
//  BBASMPlugin+ShowToast.h
//  SWAN
//
//  Created by baidu on 2018/7/23.
//  Copyright © 2018年 baidu. All rights reserved.
//

#define BBASMC_ShowToastLimitShowCount BBASM_UNCONFUSED_STR_METHOD(@"a1NXQU5TaG93VG9hc3RMaW1pdFNob3dDb3VudA==") //kBBASMShowToastLimitShowCount

#import "BBASMPlugin.h"

@interface BBASMPlugin (ShowToast)

/**
 * 描  述: 为小程序提供的独立调用showToast端能力入口
 * 示  例: baiduboxapp://swanAPI/showToast?params={"title":"icon为空","icon":"","message":"icon为空","time":"1.5","modal":"0","type":"2"}&callback=_bdbox_js_229&upgrade=0
 * 文  档: http://ft.baidu.com/#/scheme/swan_showtoast
 * 备  注:
 * ********** description ************
 * @name:      showToast
 * @authority: swanAPI
 * @path:      /showToast
 * @args:      [{"name": "title", "value": "string"}, {"name": "message", "value": "string="}, {"name": "icon", "value": "string="}, {"name": "mask", "value": "boolean="}, {"name": "time", "value": "string"}, {"name": "type", "value": "string"}, {"name": "image", "value": "string="}, {"name": "buttonText", "value": "string="}, {"name": "cb", "value": "string="}]
 * @config:    {"swan": {"web": {"invoke": "swan.message.url", "handler": "bridge"}, "jsc": {"invoke": "swan.method.json", "method": "_naSwan.bridge.interactionBridge.showToast"}}}
 */
- (void)showToast:(BBASchemeDispatcher *)aCommand;

/**
 * 描  述: 显示loading提示框
 * 示  例: baiduboxapp://swanAPI/showLoading?params={"title":"loading"}&callback=_bdbox_js_87&upgrade=0&oauthType=swan
 * 文  档:
 * 备  注:
 * ********** description ************
 * @name:      showLoading
 * @authority: swanAPI
 * @path:      /showLoading
 * @args:      [{"name": "title", "value": "string"}, {"name": "mask", "value": "boolean="}]
 * @config:    {"swan": {"web": {"invoke": "swan.message.url", "handler": "bridge"}, "jsc": {"invoke": "swan.method.json", "method": "_naSwan.bridge.interactionBridge.showloading"}}}
 */
- (void)showloading:(BBASchemeDispatcher *)command;

/**
 * 描  述: 消失toast端能力
 * 示  例: baiduboxapp://swanAPI/dismissToast?params={"title":"loading"}&callback=_bdbox_js_87&upgrade=0&oauthType=swan
 * 文  档:
 * 备  注:
 * ********** description ************
 * @name:      hideToast
 * @authority: swanAPI
 * @path:      /dismissToast
 * @args:      []
 * @config:    {"swan": {"web": {"invoke": "swan.message.url", "handler": "bridge"}, "jsc": {"invoke": "swan.method.json", "method": "_naSwan.bridge.interactionBridge.dismissToast"}}}
 */
- (void)dismissToast:(BBASchemeDispatcher *)aCommand;

/**
 * 描  述: 小程序隐藏 loading 提示框
 * 示  例: baiduboxapp://swanAPI/hideLoading?callback=\$callback
 * 文  档: http://ft.baidu.com/#/scheme/swan_hideloading
 * 备  注:
 * ********** description ************
 * @name:      hideLoading
 * @authority: swanAPI
 * @path:      /hideLoading
 * @args:      []
 * @config:    {"swan": {"web": {"invoke": "swan.message.url", "handler": "bridge"}, "jsc": {"invoke": "swan.method.json", "method": "_naSwan.bridge.interactionBridge.hideLoading"}}}
 */
- (void)hideLoading:(BBASchemeDispatcher *)command;

/**
 * 描  述: 展示小程序收藏的引导图
 * 示  例: baiduboxapp://swanAPI/showFavoriteGuide?params=\$params&callback=\$callback
 * 文  档: http://ft.baidu.com/#/scheme/swan_showfavorateguide
 * 备  注:
 * ********** description ************
 * @name:      showFavoriteGuide
 * @authority: swanAPI
 * @path:      /showFavoriteGuide
 * @args:      [{"name": "type", "value": {"oneOf": ["bar", "bar-autohide", "tip"]}},  {"name": "cb", "value": "string"}]
 * @config:    {"swan": {"web": {"invoke": "swan.message.url", "handler": "bridge"}, "jsc": {"invoke": "swan.method.url", "method": "_naSwan.bridge.postMessage"}}}
 */
- (void)showFavoriteGuide:(BBASchemeDispatcher *)command;

#pragma mark - not API
+ (NSDictionary *)showLoadingWithAppID:(NSString *)appID params:(NSDictionary *)params;

+ (NSDictionary *)hideLoading;

/**
 * @brief 显示消息提示框
 * @param appId 小程序appId
 * @param params 端能力参数
 * @param callback 点击事件回调callback
 * @return NSDictionary 返回调用结果
 */
+ (NSDictionary *)showToastWithAppID:(NSString *)appId
                              params:(NSDictionary *)params
                       clickCallback:(void (^)(NSDictionary *data))callback;

/**
 * @brief 隐藏消息提示框
 * @return NSDictionary 返回调用结果
 */
+ (NSDictionary *)dismissToast;
@end