fishpi 0.1.26 → 0.1.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/index.cjs CHANGED
@@ -186,9 +186,18 @@ var ArticlePost = class ArticlePost {
186
186
  * 提问悬赏积分
187
187
  */
188
188
  offerPoint;
189
+ /**
190
+ * 从接口数据转换为 ArticlePost 实例
191
+ * @param article 帖子数据
192
+ * @returns ArticlePost 实例
193
+ */
189
194
  static from(article) {
190
195
  return Object.assign(new ArticlePost(), article);
191
196
  }
197
+ /**
198
+ * 转换为接口请求数据
199
+ * @returns 接口请求数据
200
+ */
192
201
  toJson() {
193
202
  return {
194
203
  articleTitle: this.title,
@@ -205,6 +214,9 @@ var ArticlePost = class ArticlePost {
205
214
  };
206
215
  }
207
216
  };
217
+ /**
218
+ * 评论提交信息
219
+ */
208
220
  var CommentPost = class CommentPost {
209
221
  /**
210
222
  * 文章 Id
@@ -226,9 +238,18 @@ var CommentPost = class CommentPost {
226
238
  * 回复评论 Id
227
239
  */
228
240
  originalId;
241
+ /**
242
+ * 从接口数据转换为 CommentPost 实例
243
+ * @param comment 评论数据
244
+ * @returns CommentPost 实例
245
+ */
229
246
  static from(comment) {
230
247
  return Object.assign(new CommentPost(), comment);
231
248
  }
249
+ /**
250
+ * 转换为接口请求数据
251
+ * @returns 接口请求数据
252
+ */
232
253
  toJson() {
233
254
  return {
234
255
  articleId: this.articleId,
@@ -1107,6 +1128,11 @@ var BreezemoonContent = class BreezemoonContent {
1107
1128
  * 发布城市(可能为空,请注意做判断)
1108
1129
  */
1109
1130
  city = "";
1131
+ /**
1132
+ * 从接口数据转换为 BreezemoonContent 实例
1133
+ * @param src 接口数据
1134
+ * @returns BreezemoonContent 实例
1135
+ */
1110
1136
  static from(src) {
1111
1137
  const data = new BreezemoonContent();
1112
1138
  data.authorName = src.breezemoonAuthorName;
@@ -1120,6 +1146,9 @@ var BreezemoonContent = class BreezemoonContent {
1120
1146
  return data;
1121
1147
  }
1122
1148
  };
1149
+ /**
1150
+ * 清风明月列表
1151
+ */
1123
1152
  var BreezemoonList = class BreezemoonList {
1124
1153
  /**
1125
1154
  * 分页信息
@@ -1129,6 +1158,11 @@ var BreezemoonList = class BreezemoonList {
1129
1158
  * 清风明月列表
1130
1159
  */
1131
1160
  breezemoons = [];
1161
+ /**
1162
+ * 从接口数据转换为 BreezemoonList 实例
1163
+ * @param src 接口数据
1164
+ * @returns BreezemoonList 实例
1165
+ */
1132
1166
  static from(src) {
1133
1167
  const data = new BreezemoonList();
1134
1168
  data.pagination = src.pagination;
@@ -1472,9 +1506,17 @@ var UserInfo = class UserInfo {
1472
1506
  * MBTI 性格类型
1473
1507
  */
1474
1508
  mbti = "";
1509
+ /**
1510
+ * 获取用户显示名称
1511
+ */
1475
1512
  get name() {
1476
1513
  return this.userNickname ? `${this.userNickname}(${this.userName})` : this.userName;
1477
1514
  }
1515
+ /**
1516
+ * 从接口数据转换为 UserInfo 实例
1517
+ * @param user 接口数据
1518
+ * @returns UserInfo 实例
1519
+ */
1478
1520
  static from(user) {
1479
1521
  const data = new UserInfo();
1480
1522
  data.oId = user.oId;
@@ -1599,8 +1641,17 @@ var AtUser = class {
1599
1641
  * 摸鱼大闯关信息
1600
1642
  */
1601
1643
  var MoFishGame = class {
1644
+ /**
1645
+ * 用户名
1646
+ */
1602
1647
  userName = "";
1648
+ /**
1649
+ * 关卡
1650
+ */
1603
1651
  stage = "";
1652
+ /**
1653
+ * 时间
1654
+ */
1604
1655
  time = 0;
1605
1656
  };
1606
1657
  /**
@@ -2077,9 +2128,21 @@ var Pagination = class Pagination {
2077
2128
 
2078
2129
  //#endregion
2079
2130
  //#region src/ws.ts
2131
+ /**
2132
+ * WebSocket 事件基础类
2133
+ */
2080
2134
  var WsEventBase = class {
2135
+ /**
2136
+ * 事件触发器
2137
+ */
2081
2138
  emitter = new EventEmitter();
2139
+ /**
2140
+ * WebSocket 连接对象
2141
+ */
2082
2142
  ws = null;
2143
+ /**
2144
+ * WebSocket 配置
2145
+ */
2083
2146
  rwsOptions = {
2084
2147
  minReconnectionDelay: 1e4,
2085
2148
  maxReconnectionDelay: 6e5,
@@ -2117,6 +2180,7 @@ var WsEventBase = class {
2117
2180
  * WebSocket 监听
2118
2181
  * @param event WebSocket 事件
2119
2182
  * @param listener 监听器
2183
+ * @returns EventEmitter
2120
2184
  */
2121
2185
  on(event, listener) {
2122
2186
  if (this.ws == null || this.ws.readyState !== WebSocket.OPEN) this.connect();
@@ -2126,6 +2190,7 @@ var WsEventBase = class {
2126
2190
  * 移除 WebSocket 监听
2127
2191
  * @param event WebSocket 事件
2128
2192
  * @param listener 监听器
2193
+ * @returns EventEmitter
2129
2194
  */
2130
2195
  off(event, listener) {
2131
2196
  if (!event) return this.emitter.removeAllListeners();
@@ -2136,6 +2201,7 @@ var WsEventBase = class {
2136
2201
  * WebSocket 单次监听
2137
2202
  * @param event WebSocket 事件
2138
2203
  * @param listener 监听器
2204
+ * @returns EventEmitter
2139
2205
  */
2140
2206
  once(event, listener) {
2141
2207
  return this.emitter.once(event, listener);
@@ -2166,13 +2232,38 @@ var WsEventBase = class {
2166
2232
 
2167
2233
  //#endregion
2168
2234
  //#region src/chatroom.ts
2235
+ /**
2236
+ * 摸鱼派聊天室接口
2237
+ */
2169
2238
  var ChatRoom = class extends WsEventBase {
2239
+ /**
2240
+ * 接口 API Key
2241
+ */
2170
2242
  apiKey = "";
2243
+ /**
2244
+ * 讨论话题
2245
+ */
2171
2246
  _discusse = "";
2247
+ /**
2248
+ * 在线用户列表
2249
+ */
2172
2250
  _onlines = [];
2251
+ /**
2252
+ * WebSocket 心跳定时器
2253
+ */
2173
2254
  wsTimer = null;
2255
+ /**
2256
+ * 客户端类型
2257
+ */
2174
2258
  client = ClientType.Other;
2259
+ /**
2260
+ * 客户端版本
2261
+ */
2175
2262
  version = "Latest";
2263
+ /**
2264
+ * 实例化聊天室
2265
+ * @param token 认证 Token
2266
+ */
2176
2267
  constructor(token = "") {
2177
2268
  super();
2178
2269
  if (!token) return;
@@ -2192,6 +2283,7 @@ var ChatRoom = class extends WsEventBase {
2192
2283
  }
2193
2284
  /**
2194
2285
  * 設置当前聊天室话题
2286
+ * @param val 话题内容
2195
2287
  */
2196
2288
  set discusse(val) {
2197
2289
  this.send(`[setdiscuss]${val}[/setdiscuss]`).catch(() => {});
@@ -2241,10 +2333,12 @@ var ChatRoom = class extends WsEventBase {
2241
2333
  }
2242
2334
  /**
2243
2335
  * 获取指定消息附近的聊天室消息
2244
- * @param oId 消息 Id
2245
- * @param mode 获取模式,context 上下文模式,after 之后模式
2246
- * @param size 获取消息数量,默认 25,最大 100
2247
- * @param type 获取消息类型,默认 HTML
2336
+ * @param params 获取参数
2337
+ * @param params.oId 消息 Id
2338
+ * @param params.mode 获取模式,context 上下文模式,after 之后模式
2339
+ * @param params.size 获取消息数量,默认 25,最大 100
2340
+ * @param params.type 获取消息类型,默认 HTML
2341
+ * @returns 聊天室消息列表
2248
2342
  */
2249
2343
  async get({ oId, mode = ChatMessageType.Context, size = 25, type = ChatContentType.HTML }) {
2250
2344
  try {
@@ -2506,7 +2600,7 @@ var ChatRoom = class extends WsEventBase {
2506
2600
  break;
2507
2601
  }
2508
2602
  this.emitter.emit(msg.type, data);
2509
- this.emitter.emit("all", data);
2603
+ this.emitter.emit("all", msg.type, data);
2510
2604
  };
2511
2605
  this.ws.onerror = (e) => {
2512
2606
  this.emitter.emit("error", e);
@@ -2561,8 +2655,18 @@ var RedPacket = class {
2561
2655
 
2562
2656
  //#endregion
2563
2657
  //#region src/notice.ts
2658
+ /**
2659
+ * 摸鱼派通知接口
2660
+ */
2564
2661
  var Notice = class extends WsEventBase {
2662
+ /**
2663
+ * 接口 API Key
2664
+ */
2565
2665
  apiKey = "";
2666
+ /**
2667
+ * 实例化通知
2668
+ * @param token 认证 Token
2669
+ */
2566
2670
  constructor(token = "") {
2567
2671
  super();
2568
2672
  if (!token) return;
@@ -2570,13 +2674,14 @@ var Notice = class extends WsEventBase {
2570
2674
  }
2571
2675
  /**
2572
2676
  * 重新设置请求 Token
2573
- * @param apiKey 接口 API Key
2677
+ * @param token 接口 API Key
2574
2678
  */
2575
2679
  setToken(token) {
2576
2680
  this.apiKey = token;
2577
2681
  }
2578
2682
  /**
2579
2683
  * 获取未读消息数
2684
+ * @returns 未读消息数信息
2580
2685
  */
2581
2686
  async count() {
2582
2687
  let rsp;
@@ -2592,6 +2697,7 @@ var Notice = class extends WsEventBase {
2592
2697
  /**
2593
2698
  * 获取消息列表
2594
2699
  * @param type 消息类型
2700
+ * @returns 消息列表
2595
2701
  */
2596
2702
  async list(type) {
2597
2703
  let rsp;
@@ -2647,7 +2753,8 @@ var Notice = class extends WsEventBase {
2647
2753
  });
2648
2754
  }
2649
2755
  /**
2650
- * 连接用户私聊频道
2756
+ * 连接通知频道
2757
+ * @param reload 是否重新连接
2651
2758
  * @returns Websocket 连接对象
2652
2759
  */
2653
2760
  connect(reload = false) {
@@ -2683,21 +2790,37 @@ var Notice = class extends WsEventBase {
2683
2790
 
2684
2791
  //#endregion
2685
2792
  //#region src/emoji.ts
2793
+ /**
2794
+ * 摸鱼派表情接口
2795
+ */
2686
2796
  var Emoji = class {
2797
+ /**
2798
+ * 接口 API Key
2799
+ */
2687
2800
  apiKey = "";
2801
+ /**
2802
+ * 自定义表情列表
2803
+ */
2688
2804
  emojis = [];
2805
+ /**
2806
+ * 各个模块的实例化
2807
+ * @param token 认证 Token
2808
+ */
2689
2809
  constructor(token = "") {
2690
2810
  if (!token) return;
2691
2811
  this.setToken(token);
2692
2812
  }
2693
2813
  /**
2694
2814
  * 重新设置请求 Token
2695
- * @param apiKey 接口 API Key
2815
+ * @param token 接口 API Key
2696
2816
  */
2697
2817
  setToken(token) {
2698
2818
  this.apiKey = token;
2699
2819
  if (token) this.get().then((e) => this.emojis = e).catch(() => {});
2700
2820
  }
2821
+ /**
2822
+ * 默认表情列表
2823
+ */
2701
2824
  get default() {
2702
2825
  return {
2703
2826
  doge: "https://cdn.jsdelivr.net/npm/vditor@3.8.7/dist/images/emoji/doge.png",
@@ -2944,15 +3067,25 @@ var Emoji = class {
2944
3067
 
2945
3068
  //#endregion
2946
3069
  //#region src/user.ts
3070
+ /**
3071
+ * 摸鱼派用户接口
3072
+ */
2947
3073
  var User = class {
3074
+ /**
3075
+ * 接口 API Key
3076
+ */
2948
3077
  apiKey = "";
3078
+ /**
3079
+ * 实例化用户
3080
+ * @param token 认证 Token
3081
+ */
2949
3082
  constructor(token = "") {
2950
3083
  if (!token) return;
2951
3084
  this.apiKey = token;
2952
3085
  }
2953
3086
  /**
2954
3087
  * 重新设置请求 Token
2955
- * @param apiKey 接口 API Key
3088
+ * @param token 接口 API Key
2956
3089
  */
2957
3090
  setToken(token) {
2958
3091
  this.apiKey = token;
@@ -3109,6 +3242,7 @@ var User = class {
3109
3242
  /**
3110
3243
  * 修改用户头像
3111
3244
  * @param userAvatarURL 用户头像地址
3245
+ * @returns void
3112
3246
  */
3113
3247
  async updateUserAvatar(userAvatarURL) {
3114
3248
  let rsp;
@@ -3129,6 +3263,7 @@ var User = class {
3129
3263
  /**
3130
3264
  * 修改用户信息
3131
3265
  * @param data 用户信息参数
3266
+ * @returns void
3132
3267
  */
3133
3268
  async updateUserInfo(data) {
3134
3269
  let rsp;
@@ -3150,16 +3285,29 @@ var User = class {
3150
3285
 
3151
3286
  //#endregion
3152
3287
  //#region src/article.ts
3288
+ /**
3289
+ * 摸鱼派文章接口
3290
+ */
3153
3291
  var Article = class {
3292
+ /**
3293
+ * 接口 API Key
3294
+ */
3154
3295
  apiKey = "";
3296
+ /**
3297
+ * 文章频道
3298
+ */
3155
3299
  channels = {};
3300
+ /**
3301
+ * 各个模块的实例化
3302
+ * @param token 认证 Token
3303
+ */
3156
3304
  constructor(token = "") {
3157
3305
  if (!token) return;
3158
3306
  this.apiKey = token;
3159
3307
  }
3160
3308
  /**
3161
3309
  * 重新设置请求 Token
3162
- * @param apiKey 接口 API Key
3310
+ * @param token 接口 API Key
3163
3311
  */
3164
3312
  setToken(token) {
3165
3313
  this.apiKey = token;
@@ -3211,8 +3359,11 @@ var Article = class {
3211
3359
  }
3212
3360
  /**
3213
3361
  * 查询文章列表
3214
- * @param type 查询类型
3215
- * @param tag 指定查询标签,可选
3362
+ * @param params 查询参数
3363
+ * @param params.type 查询类型
3364
+ * @param params.page 页码,默认 1
3365
+ * @param params.size 每页数量,默认 20
3366
+ * @param params.tag 指定查询标签,可选
3216
3367
  * @returns 文章列表
3217
3368
  */
3218
3369
  async list({ type, page = 1, size = 20, tag }) {
@@ -3282,6 +3433,7 @@ var Article = class {
3282
3433
  /**
3283
3434
  * 感谢文章
3284
3435
  * @param id 文章id
3436
+ * @returns void
3285
3437
  */
3286
3438
  async thank(id) {
3287
3439
  let rsp;
@@ -3319,6 +3471,7 @@ var Article = class {
3319
3471
  /**
3320
3472
  * 取消收藏文章
3321
3473
  * @param followingId 文章id
3474
+ * @returns void
3322
3475
  */
3323
3476
  async unfollow(followingId) {
3324
3477
  let rsp;
@@ -3339,6 +3492,7 @@ var Article = class {
3339
3492
  /**
3340
3493
  * 关注文章
3341
3494
  * @param followingId 文章id
3495
+ * @returns void
3342
3496
  */
3343
3497
  async watch(followingId) {
3344
3498
  let rsp;
@@ -3359,6 +3513,7 @@ var Article = class {
3359
3513
  /**
3360
3514
  * 取消关注文章
3361
3515
  * @param followingId 文章id
3516
+ * @returns void
3362
3517
  */
3363
3518
  async unwatch(followingId) {
3364
3519
  let rsp;
@@ -3396,6 +3551,7 @@ var Article = class {
3396
3551
  /**
3397
3552
  * 获取文章在线人数
3398
3553
  * @param id 文章id
3554
+ * @returns 文章热度值
3399
3555
  */
3400
3556
  async heat(id) {
3401
3557
  let rsp;
@@ -3413,6 +3569,7 @@ var Article = class {
3413
3569
  /**
3414
3570
  * 获取帖子的Markdown原文
3415
3571
  * @param articleId 文章Id
3572
+ * @returns 文章 Markdown 内容
3416
3573
  */
3417
3574
  async md(articleId) {
3418
3575
  let rsp;
@@ -3424,25 +3581,48 @@ var Article = class {
3424
3581
  throw e;
3425
3582
  }
3426
3583
  }
3584
+ /**
3585
+ * 获取文章频道
3586
+ * @param id 文章 Id
3587
+ * @param type 文章类型
3588
+ * @returns 文章频道实例
3589
+ */
3427
3590
  channel(id, type) {
3428
3591
  if (!this.channels[id]) this.channels[id] = new ArticleChannel(this.apiKey, id, type);
3429
3592
  return this.channels[id];
3430
3593
  }
3431
3594
  };
3595
+ /**
3596
+ * 文章实时频道
3597
+ */
3432
3598
  var ArticleChannel = class extends WsEventBase {
3599
+ /**
3600
+ * 接口 API Key
3601
+ */
3433
3602
  apiKey = "";
3603
+ /**
3604
+ * 文章 Id
3605
+ */
3434
3606
  id = "";
3607
+ /**
3608
+ * 文章类型
3609
+ */
3435
3610
  type = ArticleType.Normal;
3611
+ /**
3612
+ * 实例化文章频道
3613
+ * @param token 认证 Token
3614
+ * @param id 文章 Id
3615
+ * @param type 文章类型
3616
+ */
3436
3617
  constructor(token, id, type) {
3437
3618
  super();
3438
3619
  if (!token) return;
3439
3620
  this.apiKey = token;
3440
3621
  }
3441
3622
  /**
3442
- * 添加文章监听器
3443
- * @param id 文章id
3444
- * @param type 文章类型
3445
- * @param callback 监听回调
3623
+ * 连接实时频道
3624
+ * @param reload 是否强制重连
3625
+ * @returns WebSocket 实例
3446
3626
  */
3447
3627
  async connect(reload) {
3448
3628
  return new Promise(async (resolve, reject) => {
@@ -3474,15 +3654,25 @@ var ArticleChannel = class extends WsEventBase {
3474
3654
 
3475
3655
  //#endregion
3476
3656
  //#region src/comment.ts
3657
+ /**
3658
+ * 摸鱼派评论接口
3659
+ */
3477
3660
  var Comment = class {
3661
+ /**
3662
+ * 接口 API Key
3663
+ */
3478
3664
  apiKey = "";
3665
+ /**
3666
+ * 各个模块的实例化
3667
+ * @param token 认证 Token
3668
+ */
3479
3669
  constructor(token = "") {
3480
3670
  if (!token) return;
3481
3671
  this.apiKey = token;
3482
3672
  }
3483
3673
  /**
3484
3674
  * 重新设置请求 Token
3485
- * @param apiKey 接口 API Key
3675
+ * @param token 接口 API Key
3486
3676
  */
3487
3677
  setToken(token) {
3488
3678
  this.apiKey = token;
@@ -3490,6 +3680,7 @@ var Comment = class {
3490
3680
  /**
3491
3681
  * 发布评论
3492
3682
  * @param data 评论信息
3683
+ * @returns void
3493
3684
  */
3494
3685
  async send(data) {
3495
3686
  let rsp;
@@ -3511,6 +3702,7 @@ var Comment = class {
3511
3702
  * 更新评论
3512
3703
  * @param id 评论 Id
3513
3704
  * @param data 评论信息
3705
+ * @returns 评论内容
3514
3706
  */
3515
3707
  async update(id, data) {
3516
3708
  let rsp;
@@ -3533,6 +3725,7 @@ var Comment = class {
3533
3725
  * 评论点赞
3534
3726
  * @param id 评论 Id
3535
3727
  * @param type 点赞类型
3728
+ * @returns 投票状态
3536
3729
  */
3537
3730
  async vote(id, type) {
3538
3731
  let rsp;
@@ -3593,9 +3786,23 @@ var Comment = class {
3593
3786
 
3594
3787
  //#endregion
3595
3788
  //#region src/chat.ts
3789
+ /**
3790
+ * 私聊频道
3791
+ */
3596
3792
  var ChatChannel = class extends WsEventBase {
3793
+ /**
3794
+ * 接口 API Key
3795
+ */
3597
3796
  apiKey = "";
3797
+ /**
3798
+ * 目标用户名
3799
+ */
3598
3800
  user = "";
3801
+ /**
3802
+ * 实例化私聊频道
3803
+ * @param user 目标用户名
3804
+ * @param apiKey 接口 API Key
3805
+ */
3599
3806
  constructor(user, apiKey) {
3600
3807
  super();
3601
3808
  this.apiKey = apiKey;
@@ -3643,11 +3850,19 @@ var ChatChannel = class extends WsEventBase {
3643
3850
  };
3644
3851
  });
3645
3852
  }
3853
+ /**
3854
+ * 发送私聊消息
3855
+ * @param msg 消息内容
3856
+ * @returns void
3857
+ */
3646
3858
  async send(msg) {
3647
3859
  var _this$ws;
3648
3860
  if (this.ws == null) await this.connect();
3649
3861
  if (this.user) (_this$ws = this.ws) === null || _this$ws === void 0 || _this$ws.send(msg);
3650
3862
  }
3863
+ /**
3864
+ * 关闭私聊频道
3865
+ */
3651
3866
  close() {
3652
3867
  var _this$ws2;
3653
3868
  (_this$ws2 = this.ws) === null || _this$ws2 === void 0 || _this$ws2.close();
@@ -3764,15 +3979,25 @@ var Chat = class {
3764
3979
 
3765
3980
  //#endregion
3766
3981
  //#region src/breezemoon.ts
3982
+ /**
3983
+ * 摸鱼派清风明月接口
3984
+ */
3767
3985
  var Breezemoon = class {
3986
+ /**
3987
+ * 接口 API Key
3988
+ */
3768
3989
  apiKey = "";
3990
+ /**
3991
+ * 各个模块的实例化
3992
+ * @param token 认证 Token
3993
+ */
3769
3994
  constructor(token = "") {
3770
3995
  if (!token) return;
3771
3996
  this.apiKey = token;
3772
3997
  }
3773
3998
  /**
3774
3999
  * 重新设置请求 Token
3775
- * @param apiKey 接口 API Key
4000
+ * @param token 接口 API Key
3776
4001
  */
3777
4002
  setToken(token) {
3778
4003
  this.apiKey = token;
@@ -3781,6 +4006,7 @@ var Breezemoon = class {
3781
4006
  * 获取清风明月列表
3782
4007
  * @param page 消息页码
3783
4008
  * @param size 每页个数
4009
+ * @returns 清风明月列表
3784
4010
  */
3785
4011
  async list(page = 1, size = 20) {
3786
4012
  try {
@@ -3796,6 +4022,7 @@ var Breezemoon = class {
3796
4022
  * @param user 用户名
3797
4023
  * @param page 消息页码
3798
4024
  * @param size 每页个数
4025
+ * @returns 清风明月列表
3799
4026
  */
3800
4027
  async listByUser(user, page = 1, size = 20) {
3801
4028
  try {
@@ -3809,6 +4036,7 @@ var Breezemoon = class {
3809
4036
  /**
3810
4037
  * 发送清风明月
3811
4038
  * @param content 内容
4039
+ * @returns void
3812
4040
  */
3813
4041
  async send(content) {
3814
4042
  try {
@@ -3829,8 +4057,18 @@ var Breezemoon = class {
3829
4057
 
3830
4058
  //#endregion
3831
4059
  //#region src/finger.ts
4060
+ /**
4061
+ * 摸鱼派金手指接口
4062
+ */
3832
4063
  var Finger = class {
4064
+ /**
4065
+ * 金手指密钥
4066
+ */
3833
4067
  goldFingerKey = "";
4068
+ /**
4069
+ * 实例化金手指
4070
+ * @param key 金手指密钥
4071
+ */
3834
4072
  constructor(key) {
3835
4073
  if (!key) return;
3836
4074
  this.goldFingerKey = key;
@@ -3838,15 +4076,18 @@ var Finger = class {
3838
4076
  /**
3839
4077
  * 设置金手指
3840
4078
  * @param key 金手指密钥
4079
+ * @returns void
3841
4080
  */
3842
4081
  setFinger(key) {
3843
4082
  this.goldFingerKey = key;
3844
4083
  }
3845
4084
  /**
3846
4085
  * 上传摸鱼大闯关关卡数据
3847
- * @param userName: 用户在摸鱼派的用户名
3848
- * @param stage: 关卡数
3849
- * @param time: 通过此关时间(毫秒级时间戳)
4086
+ * @param params 关卡数据
4087
+ * @param params.userName 用户在摸鱼派的用户名
4088
+ * @param params.stage 关卡数
4089
+ * @param params.time 通过此关时间(毫秒级时间戳)
4090
+ * @returns void
3850
4091
  */
3851
4092
  async addMofishScore({ userName, stage, time = (/* @__PURE__ */ new Date()).getTime() }) {
3852
4093
  let rsp;
@@ -3868,7 +4109,8 @@ var Finger = class {
3868
4109
  }
3869
4110
  /**
3870
4111
  * 查询用户最近登录的IP地址
3871
- * @param userName: 用户在摸鱼派的用户名
4112
+ * @param userName 用户在摸鱼派的用户名
4113
+ * @returns 用户 IP 信息
3872
4114
  */
3873
4115
  async queryLatestLoginIP(userName) {
3874
4116
  let rsp;
@@ -3889,8 +4131,9 @@ var Finger = class {
3889
4131
  }
3890
4132
  /**
3891
4133
  * 添加勋章
3892
- * @param userName: 用户在摸鱼派的用户名
3893
- * @param metal: 勋章信息
4134
+ * @param userName 用户在摸鱼派的用户名
4135
+ * @param metal 勋章信息
4136
+ * @returns void
3894
4137
  */
3895
4138
  async addMetal(userName, metal) {
3896
4139
  let rsp;
@@ -4065,10 +4308,36 @@ var Finger = class {
4065
4308
  throw e;
4066
4309
  }
4067
4310
  }
4311
+ /**
4312
+ * 给指定用户发送通知
4313
+ * @param userName: 用户在摸鱼派的用户名
4314
+ * @param notification: 通知内容
4315
+ * @returns void
4316
+ */
4317
+ async sendNotice(userName, notification) {
4318
+ let rsp;
4319
+ try {
4320
+ rsp = await request({
4321
+ url: `user/edit/notification`,
4322
+ method: "post",
4323
+ data: {
4324
+ goldFingerKey: this.goldFingerKey,
4325
+ userName,
4326
+ notification
4327
+ }
4328
+ });
4329
+ if (rsp.code) throw new Error(rsp.msg);
4330
+ } catch (e) {
4331
+ throw e;
4332
+ }
4333
+ }
4068
4334
  };
4069
4335
 
4070
4336
  //#endregion
4071
4337
  //#region src/index.ts
4338
+ /**
4339
+ * 摸鱼派 SDK 主入口
4340
+ */
4072
4341
  var FishPi = class {
4073
4342
  /**
4074
4343
  * 请求 API 的 API Key
@@ -4114,6 +4383,11 @@ var FishPi = class {
4114
4383
  if (!token) return;
4115
4384
  this.setToken(token);
4116
4385
  }
4386
+ /**
4387
+ * 设置请求 Token
4388
+ * @param apiKey 接口 API Key
4389
+ * @returns void
4390
+ */
4117
4391
  async setToken(apiKey) {
4118
4392
  this.apiKey = apiKey;
4119
4393
  this.chatroom.setToken(this.apiKey);
@@ -4125,6 +4399,11 @@ var FishPi = class {
4125
4399
  this.breezemoon.setToken(this.apiKey);
4126
4400
  this.chat.setToken(this.apiKey);
4127
4401
  }
4402
+ /**
4403
+ * 设置 API 域名
4404
+ * @param domain API 域名
4405
+ * @returns void
4406
+ */
4128
4407
  async setDomain(domain) {
4129
4408
  setDomain(domain);
4130
4409
  }
@@ -4153,7 +4432,7 @@ var FishPi = class {
4153
4432
  /**
4154
4433
  * 预注册账号
4155
4434
  * @param data 用户信息
4156
- * @returns
4435
+ * @returns void
4157
4436
  */
4158
4437
  async preRegister(data) {
4159
4438
  try {
@@ -4175,7 +4454,7 @@ var FishPi = class {
4175
4454
  /**
4176
4455
  * 验证手机验证码
4177
4456
  * @param code 验证码
4178
- * @returns
4457
+ * @returns 验证状态
4179
4458
  */
4180
4459
  async verify(code) {
4181
4460
  try {
@@ -4191,6 +4470,8 @@ var FishPi = class {
4191
4470
  }
4192
4471
  /**
4193
4472
  * 注册账号
4473
+ * @param data 注册信息
4474
+ * @returns void
4194
4475
  */
4195
4476
  async register(data) {
4196
4477
  try {