npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

@kaishi/bridge

v0.0.4

Published

提供与原生应用通信的桥接功能,封装了常用的原生交互方法。

Readme

@kaishi/bridge

提供与原生应用通信的桥接功能,封装了常用的原生交互方法。

安装

pnpm add @kaishi/bridge

使用

import { userInfo, jump2url, showShareBar } from '@kaishi/bridge';

// 获取用户信息
userInfo((result) => {
  console.log('用户信息:', result);
});

// 跳转到指定URL
jump2url({
  url: 'https://example.com',
  title: '示例页面'
});

// 显示分享栏
showShareBar({
  show: true
});

API 列表

基础功能

setupWebViewJavascriptBridge(callback: (bridge: any) => void): void

初始化WebView JavaScript Bridge。

导航与页面控制

close(callback?: BridgeCallback): void

关闭当前页面。

showTitleBar(params?: { show?: boolean }, callback?: BridgeCallback): void

控制标题栏的显示或隐藏。

changeStatusTextColor(params: { isDark: string }, callback?: BridgeCallback): void

更改状态栏文本颜色,isDark为'1'表示深色,'0'表示浅色。

gotoPage(params: { page: string }, callback?: BridgeCallback): void

跳转到指定页面。

jump2url(params: { url: string; title?: string }, callback?: BridgeCallback): void

跳转到指定URL。

gotoHomePage(callback?: BridgeCallback): void

跳转至首页并切换到指定标签。

setWebViewTitleText(params: { title: string }, callback?: BridgeCallback): void

设置WebView标题文本。

setRightBtn(params: { text: string }, callback?: BridgeCallback): void

设置右侧按钮文本。

change_direction(params: { direction: string }, callback?: BridgeCallback): void

改变屏幕方向,direction为'1'表示横屏,'0'表示竖屏。

showAppButton(params?: { show?: boolean }, callback?: BridgeCallback): void

控制应用按钮的显示或隐藏。

用户信息与登录

userInfo(callback?: BridgeCallback): void

获取用户信息,需要登录检查。

userInfoNoCheckLogin(params: { token: string; hcToken: string; userId: string; phone: string; appVersion: string }, callback?: BridgeCallback): void

获取用户信息,无需登录检查。

tradeLogin(callback?: BridgeCallback): void

交易登录。

分享功能

showShareBar(params?: { show?: boolean }, callback?: BridgeCallback): void

控制分享栏的显示或隐藏。

setShareUrl(params: { shareTitle: string; shareContent: string; shareImage: string; shareUrl: string }, callback?: BridgeCallback): void

设置分享内容。

设备与系统信息

phone_info(callback?: BridgeCallback): void

获取手机信息。

isOpenPermission(callback?: BridgeCallback<IsOpenPermissionResult>): void

判断相机相册权限状态。

requestAuthorization(callback?: BridgeCallback): void

申请相机相册权限。

交互反馈

updatePraised(params: { praised: string }, callback?: BridgeCallback): void

更新点赞状态,praised为'1'表示已点赞,'0'表示未点赞。

updateFollowed(params: { followed: string }, callback?: BridgeCallback): void

更新关注状态,followed为'1'表示已关注,'0'表示未关注。

updateComments(params: { comments: string }, callback?: BridgeCallback): void

更新评论数量。

showTurnOnNotificationDialogIfNeed(callback?: BridgeCallback): void

显示开启通知对话框(如果需要)。

feedback(params: { type: string }, callback?: BridgeCallback): void

进入意见反馈页面。

视图生命周期

viewWillAppear(callback?: BridgeCallback): void

视图即将出现时调用。

viewWillDisappear(callback?: BridgeCallback): void

视图即将消失时调用。

支付功能

vipPaySuccess(callback?: BridgeCallback): void

VIP支付成功回调。

payByWeixin(params: { appid: string; partnerid: string; prepayid: string; package: string; noncestr: string; timestamp: string; sign: string }, callback?: BridgeCallback): void

唤起微信支付。

payByALL(params: { orderInfo: string }, callback?: BridgeCallback): void

唤起支付宝支付。

媒体与文件

YxSavaAlbum(params: { base64: string }, callback?: BridgeCallback): void

保存Base64图片到相册。

downloadPDF(params: { url: string }, callback?: BridgeCallback): void

下载并打开PDF文件。

idCardUpload(callback?: BridgeCallback): void

上传身份证。

直播与交易

liveStudio(params: { studioid: string; tabindex: string }, callback?: BridgeCallback): void

进入直播间。

tradeTome(params: { hcTradeToken: string }, callback?: BridgeCallback): void

进入交易首页。

openAccount(params: { title: string; url: string }, callback?: BridgeCallback): void

打开开户二级页面。

自选功能

addOptional(params: { symbol: string; type: string }, callback?: BridgeCallback): void

为当前用户添加自选。

removeOptional(params: { symbol: string; type: string }, callback?: BridgeCallback): void

为当前用户取消自选。

其他功能

tel(params: { phone: string }, callback?: BridgeCallback): void

拨打电话。

类型定义

// 基础回调函数类型
type BridgeCallback<T = any> = (data: T) => void;

// 基础参数接口
interface BridgeBaseParams {
  cmd: string;
  time: number;
  data: Record<string, any>;
}

// 相机相册权限结果接口
interface IsOpenPermissionResult {
  cameraResult: string; // 相机权限,1为开启
  albumResult: string; // 相册权限,1为开启
}

许可证

MIT