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.mjs CHANGED
@@ -161,9 +161,18 @@ var ArticlePost = class ArticlePost {
161
161
  * 提问悬赏积分
162
162
  */
163
163
  offerPoint;
164
+ /**
165
+ * 从接口数据转换为 ArticlePost 实例
166
+ * @param article 帖子数据
167
+ * @returns ArticlePost 实例
168
+ */
164
169
  static from(article) {
165
170
  return Object.assign(new ArticlePost(), article);
166
171
  }
172
+ /**
173
+ * 转换为接口请求数据
174
+ * @returns 接口请求数据
175
+ */
167
176
  toJson() {
168
177
  return {
169
178
  articleTitle: this.title,
@@ -180,6 +189,9 @@ var ArticlePost = class ArticlePost {
180
189
  };
181
190
  }
182
191
  };
192
+ /**
193
+ * 评论提交信息
194
+ */
183
195
  var CommentPost = class CommentPost {
184
196
  /**
185
197
  * 文章 Id
@@ -201,9 +213,18 @@ var CommentPost = class CommentPost {
201
213
  * 回复评论 Id
202
214
  */
203
215
  originalId;
216
+ /**
217
+ * 从接口数据转换为 CommentPost 实例
218
+ * @param comment 评论数据
219
+ * @returns CommentPost 实例
220
+ */
204
221
  static from(comment) {
205
222
  return Object.assign(new CommentPost(), comment);
206
223
  }
224
+ /**
225
+ * 转换为接口请求数据
226
+ * @returns 接口请求数据
227
+ */
207
228
  toJson() {
208
229
  return {
209
230
  articleId: this.articleId,
@@ -1082,6 +1103,11 @@ var BreezemoonContent = class BreezemoonContent {
1082
1103
  * 发布城市(可能为空,请注意做判断)
1083
1104
  */
1084
1105
  city = "";
1106
+ /**
1107
+ * 从接口数据转换为 BreezemoonContent 实例
1108
+ * @param src 接口数据
1109
+ * @returns BreezemoonContent 实例
1110
+ */
1085
1111
  static from(src) {
1086
1112
  const data = new BreezemoonContent();
1087
1113
  data.authorName = src.breezemoonAuthorName;
@@ -1095,6 +1121,9 @@ var BreezemoonContent = class BreezemoonContent {
1095
1121
  return data;
1096
1122
  }
1097
1123
  };
1124
+ /**
1125
+ * 清风明月列表
1126
+ */
1098
1127
  var BreezemoonList = class BreezemoonList {
1099
1128
  /**
1100
1129
  * 分页信息
@@ -1104,6 +1133,11 @@ var BreezemoonList = class BreezemoonList {
1104
1133
  * 清风明月列表
1105
1134
  */
1106
1135
  breezemoons = [];
1136
+ /**
1137
+ * 从接口数据转换为 BreezemoonList 实例
1138
+ * @param src 接口数据
1139
+ * @returns BreezemoonList 实例
1140
+ */
1107
1141
  static from(src) {
1108
1142
  const data = new BreezemoonList();
1109
1143
  data.pagination = src.pagination;
@@ -1447,9 +1481,17 @@ var UserInfo = class UserInfo {
1447
1481
  * MBTI 性格类型
1448
1482
  */
1449
1483
  mbti = "";
1484
+ /**
1485
+ * 获取用户显示名称
1486
+ */
1450
1487
  get name() {
1451
1488
  return this.userNickname ? `${this.userNickname}(${this.userName})` : this.userName;
1452
1489
  }
1490
+ /**
1491
+ * 从接口数据转换为 UserInfo 实例
1492
+ * @param user 接口数据
1493
+ * @returns UserInfo 实例
1494
+ */
1453
1495
  static from(user) {
1454
1496
  const data = new UserInfo();
1455
1497
  data.oId = user.oId;
@@ -1574,8 +1616,17 @@ var AtUser = class {
1574
1616
  * 摸鱼大闯关信息
1575
1617
  */
1576
1618
  var MoFishGame = class {
1619
+ /**
1620
+ * 用户名
1621
+ */
1577
1622
  userName = "";
1623
+ /**
1624
+ * 关卡
1625
+ */
1578
1626
  stage = "";
1627
+ /**
1628
+ * 时间
1629
+ */
1579
1630
  time = 0;
1580
1631
  };
1581
1632
  /**
@@ -2052,9 +2103,21 @@ var Pagination = class Pagination {
2052
2103
 
2053
2104
  //#endregion
2054
2105
  //#region src/ws.ts
2106
+ /**
2107
+ * WebSocket 事件基础类
2108
+ */
2055
2109
  var WsEventBase = class {
2110
+ /**
2111
+ * 事件触发器
2112
+ */
2056
2113
  emitter = new EventEmitter();
2114
+ /**
2115
+ * WebSocket 连接对象
2116
+ */
2057
2117
  ws = null;
2118
+ /**
2119
+ * WebSocket 配置
2120
+ */
2058
2121
  rwsOptions = {
2059
2122
  minReconnectionDelay: 1e4,
2060
2123
  maxReconnectionDelay: 6e5,
@@ -2092,6 +2155,7 @@ var WsEventBase = class {
2092
2155
  * WebSocket 监听
2093
2156
  * @param event WebSocket 事件
2094
2157
  * @param listener 监听器
2158
+ * @returns EventEmitter
2095
2159
  */
2096
2160
  on(event, listener) {
2097
2161
  if (this.ws == null || this.ws.readyState !== WebSocket.OPEN) this.connect();
@@ -2101,6 +2165,7 @@ var WsEventBase = class {
2101
2165
  * 移除 WebSocket 监听
2102
2166
  * @param event WebSocket 事件
2103
2167
  * @param listener 监听器
2168
+ * @returns EventEmitter
2104
2169
  */
2105
2170
  off(event, listener) {
2106
2171
  if (!event) return this.emitter.removeAllListeners();
@@ -2111,6 +2176,7 @@ var WsEventBase = class {
2111
2176
  * WebSocket 单次监听
2112
2177
  * @param event WebSocket 事件
2113
2178
  * @param listener 监听器
2179
+ * @returns EventEmitter
2114
2180
  */
2115
2181
  once(event, listener) {
2116
2182
  return this.emitter.once(event, listener);
@@ -2141,13 +2207,38 @@ var WsEventBase = class {
2141
2207
 
2142
2208
  //#endregion
2143
2209
  //#region src/chatroom.ts
2210
+ /**
2211
+ * 摸鱼派聊天室接口
2212
+ */
2144
2213
  var ChatRoom = class extends WsEventBase {
2214
+ /**
2215
+ * 接口 API Key
2216
+ */
2145
2217
  apiKey = "";
2218
+ /**
2219
+ * 讨论话题
2220
+ */
2146
2221
  _discusse = "";
2222
+ /**
2223
+ * 在线用户列表
2224
+ */
2147
2225
  _onlines = [];
2226
+ /**
2227
+ * WebSocket 心跳定时器
2228
+ */
2148
2229
  wsTimer = null;
2230
+ /**
2231
+ * 客户端类型
2232
+ */
2149
2233
  client = ClientType.Other;
2234
+ /**
2235
+ * 客户端版本
2236
+ */
2150
2237
  version = "Latest";
2238
+ /**
2239
+ * 实例化聊天室
2240
+ * @param token 认证 Token
2241
+ */
2151
2242
  constructor(token = "") {
2152
2243
  super();
2153
2244
  if (!token) return;
@@ -2167,6 +2258,7 @@ var ChatRoom = class extends WsEventBase {
2167
2258
  }
2168
2259
  /**
2169
2260
  * 設置当前聊天室话题
2261
+ * @param val 话题内容
2170
2262
  */
2171
2263
  set discusse(val) {
2172
2264
  this.send(`[setdiscuss]${val}[/setdiscuss]`).catch(() => {});
@@ -2216,10 +2308,12 @@ var ChatRoom = class extends WsEventBase {
2216
2308
  }
2217
2309
  /**
2218
2310
  * 获取指定消息附近的聊天室消息
2219
- * @param oId 消息 Id
2220
- * @param mode 获取模式,context 上下文模式,after 之后模式
2221
- * @param size 获取消息数量,默认 25,最大 100
2222
- * @param type 获取消息类型,默认 HTML
2311
+ * @param params 获取参数
2312
+ * @param params.oId 消息 Id
2313
+ * @param params.mode 获取模式,context 上下文模式,after 之后模式
2314
+ * @param params.size 获取消息数量,默认 25,最大 100
2315
+ * @param params.type 获取消息类型,默认 HTML
2316
+ * @returns 聊天室消息列表
2223
2317
  */
2224
2318
  async get({ oId, mode = ChatMessageType.Context, size = 25, type = ChatContentType.HTML }) {
2225
2319
  try {
@@ -2481,7 +2575,7 @@ var ChatRoom = class extends WsEventBase {
2481
2575
  break;
2482
2576
  }
2483
2577
  this.emitter.emit(msg.type, data);
2484
- this.emitter.emit("all", data);
2578
+ this.emitter.emit("all", msg.type, data);
2485
2579
  };
2486
2580
  this.ws.onerror = (e) => {
2487
2581
  this.emitter.emit("error", e);
@@ -2536,8 +2630,18 @@ var RedPacket = class {
2536
2630
 
2537
2631
  //#endregion
2538
2632
  //#region src/notice.ts
2633
+ /**
2634
+ * 摸鱼派通知接口
2635
+ */
2539
2636
  var Notice = class extends WsEventBase {
2637
+ /**
2638
+ * 接口 API Key
2639
+ */
2540
2640
  apiKey = "";
2641
+ /**
2642
+ * 实例化通知
2643
+ * @param token 认证 Token
2644
+ */
2541
2645
  constructor(token = "") {
2542
2646
  super();
2543
2647
  if (!token) return;
@@ -2545,13 +2649,14 @@ var Notice = class extends WsEventBase {
2545
2649
  }
2546
2650
  /**
2547
2651
  * 重新设置请求 Token
2548
- * @param apiKey 接口 API Key
2652
+ * @param token 接口 API Key
2549
2653
  */
2550
2654
  setToken(token) {
2551
2655
  this.apiKey = token;
2552
2656
  }
2553
2657
  /**
2554
2658
  * 获取未读消息数
2659
+ * @returns 未读消息数信息
2555
2660
  */
2556
2661
  async count() {
2557
2662
  let rsp;
@@ -2567,6 +2672,7 @@ var Notice = class extends WsEventBase {
2567
2672
  /**
2568
2673
  * 获取消息列表
2569
2674
  * @param type 消息类型
2675
+ * @returns 消息列表
2570
2676
  */
2571
2677
  async list(type) {
2572
2678
  let rsp;
@@ -2622,7 +2728,8 @@ var Notice = class extends WsEventBase {
2622
2728
  });
2623
2729
  }
2624
2730
  /**
2625
- * 连接用户私聊频道
2731
+ * 连接通知频道
2732
+ * @param reload 是否重新连接
2626
2733
  * @returns Websocket 连接对象
2627
2734
  */
2628
2735
  connect(reload = false) {
@@ -2658,21 +2765,37 @@ var Notice = class extends WsEventBase {
2658
2765
 
2659
2766
  //#endregion
2660
2767
  //#region src/emoji.ts
2768
+ /**
2769
+ * 摸鱼派表情接口
2770
+ */
2661
2771
  var Emoji = class {
2772
+ /**
2773
+ * 接口 API Key
2774
+ */
2662
2775
  apiKey = "";
2776
+ /**
2777
+ * 自定义表情列表
2778
+ */
2663
2779
  emojis = [];
2780
+ /**
2781
+ * 各个模块的实例化
2782
+ * @param token 认证 Token
2783
+ */
2664
2784
  constructor(token = "") {
2665
2785
  if (!token) return;
2666
2786
  this.setToken(token);
2667
2787
  }
2668
2788
  /**
2669
2789
  * 重新设置请求 Token
2670
- * @param apiKey 接口 API Key
2790
+ * @param token 接口 API Key
2671
2791
  */
2672
2792
  setToken(token) {
2673
2793
  this.apiKey = token;
2674
2794
  if (token) this.get().then((e) => this.emojis = e).catch(() => {});
2675
2795
  }
2796
+ /**
2797
+ * 默认表情列表
2798
+ */
2676
2799
  get default() {
2677
2800
  return {
2678
2801
  doge: "https://cdn.jsdelivr.net/npm/vditor@3.8.7/dist/images/emoji/doge.png",
@@ -2919,15 +3042,25 @@ var Emoji = class {
2919
3042
 
2920
3043
  //#endregion
2921
3044
  //#region src/user.ts
3045
+ /**
3046
+ * 摸鱼派用户接口
3047
+ */
2922
3048
  var User = class {
3049
+ /**
3050
+ * 接口 API Key
3051
+ */
2923
3052
  apiKey = "";
3053
+ /**
3054
+ * 实例化用户
3055
+ * @param token 认证 Token
3056
+ */
2924
3057
  constructor(token = "") {
2925
3058
  if (!token) return;
2926
3059
  this.apiKey = token;
2927
3060
  }
2928
3061
  /**
2929
3062
  * 重新设置请求 Token
2930
- * @param apiKey 接口 API Key
3063
+ * @param token 接口 API Key
2931
3064
  */
2932
3065
  setToken(token) {
2933
3066
  this.apiKey = token;
@@ -3084,6 +3217,7 @@ var User = class {
3084
3217
  /**
3085
3218
  * 修改用户头像
3086
3219
  * @param userAvatarURL 用户头像地址
3220
+ * @returns void
3087
3221
  */
3088
3222
  async updateUserAvatar(userAvatarURL) {
3089
3223
  let rsp;
@@ -3104,6 +3238,7 @@ var User = class {
3104
3238
  /**
3105
3239
  * 修改用户信息
3106
3240
  * @param data 用户信息参数
3241
+ * @returns void
3107
3242
  */
3108
3243
  async updateUserInfo(data) {
3109
3244
  let rsp;
@@ -3125,16 +3260,29 @@ var User = class {
3125
3260
 
3126
3261
  //#endregion
3127
3262
  //#region src/article.ts
3263
+ /**
3264
+ * 摸鱼派文章接口
3265
+ */
3128
3266
  var Article = class {
3267
+ /**
3268
+ * 接口 API Key
3269
+ */
3129
3270
  apiKey = "";
3271
+ /**
3272
+ * 文章频道
3273
+ */
3130
3274
  channels = {};
3275
+ /**
3276
+ * 各个模块的实例化
3277
+ * @param token 认证 Token
3278
+ */
3131
3279
  constructor(token = "") {
3132
3280
  if (!token) return;
3133
3281
  this.apiKey = token;
3134
3282
  }
3135
3283
  /**
3136
3284
  * 重新设置请求 Token
3137
- * @param apiKey 接口 API Key
3285
+ * @param token 接口 API Key
3138
3286
  */
3139
3287
  setToken(token) {
3140
3288
  this.apiKey = token;
@@ -3186,8 +3334,11 @@ var Article = class {
3186
3334
  }
3187
3335
  /**
3188
3336
  * 查询文章列表
3189
- * @param type 查询类型
3190
- * @param tag 指定查询标签,可选
3337
+ * @param params 查询参数
3338
+ * @param params.type 查询类型
3339
+ * @param params.page 页码,默认 1
3340
+ * @param params.size 每页数量,默认 20
3341
+ * @param params.tag 指定查询标签,可选
3191
3342
  * @returns 文章列表
3192
3343
  */
3193
3344
  async list({ type, page = 1, size = 20, tag }) {
@@ -3257,6 +3408,7 @@ var Article = class {
3257
3408
  /**
3258
3409
  * 感谢文章
3259
3410
  * @param id 文章id
3411
+ * @returns void
3260
3412
  */
3261
3413
  async thank(id) {
3262
3414
  let rsp;
@@ -3294,6 +3446,7 @@ var Article = class {
3294
3446
  /**
3295
3447
  * 取消收藏文章
3296
3448
  * @param followingId 文章id
3449
+ * @returns void
3297
3450
  */
3298
3451
  async unfollow(followingId) {
3299
3452
  let rsp;
@@ -3314,6 +3467,7 @@ var Article = class {
3314
3467
  /**
3315
3468
  * 关注文章
3316
3469
  * @param followingId 文章id
3470
+ * @returns void
3317
3471
  */
3318
3472
  async watch(followingId) {
3319
3473
  let rsp;
@@ -3334,6 +3488,7 @@ var Article = class {
3334
3488
  /**
3335
3489
  * 取消关注文章
3336
3490
  * @param followingId 文章id
3491
+ * @returns void
3337
3492
  */
3338
3493
  async unwatch(followingId) {
3339
3494
  let rsp;
@@ -3371,6 +3526,7 @@ var Article = class {
3371
3526
  /**
3372
3527
  * 获取文章在线人数
3373
3528
  * @param id 文章id
3529
+ * @returns 文章热度值
3374
3530
  */
3375
3531
  async heat(id) {
3376
3532
  let rsp;
@@ -3388,6 +3544,7 @@ var Article = class {
3388
3544
  /**
3389
3545
  * 获取帖子的Markdown原文
3390
3546
  * @param articleId 文章Id
3547
+ * @returns 文章 Markdown 内容
3391
3548
  */
3392
3549
  async md(articleId) {
3393
3550
  let rsp;
@@ -3399,25 +3556,48 @@ var Article = class {
3399
3556
  throw e;
3400
3557
  }
3401
3558
  }
3559
+ /**
3560
+ * 获取文章频道
3561
+ * @param id 文章 Id
3562
+ * @param type 文章类型
3563
+ * @returns 文章频道实例
3564
+ */
3402
3565
  channel(id, type) {
3403
3566
  if (!this.channels[id]) this.channels[id] = new ArticleChannel(this.apiKey, id, type);
3404
3567
  return this.channels[id];
3405
3568
  }
3406
3569
  };
3570
+ /**
3571
+ * 文章实时频道
3572
+ */
3407
3573
  var ArticleChannel = class extends WsEventBase {
3574
+ /**
3575
+ * 接口 API Key
3576
+ */
3408
3577
  apiKey = "";
3578
+ /**
3579
+ * 文章 Id
3580
+ */
3409
3581
  id = "";
3582
+ /**
3583
+ * 文章类型
3584
+ */
3410
3585
  type = ArticleType.Normal;
3586
+ /**
3587
+ * 实例化文章频道
3588
+ * @param token 认证 Token
3589
+ * @param id 文章 Id
3590
+ * @param type 文章类型
3591
+ */
3411
3592
  constructor(token, id, type) {
3412
3593
  super();
3413
3594
  if (!token) return;
3414
3595
  this.apiKey = token;
3415
3596
  }
3416
3597
  /**
3417
- * 添加文章监听器
3418
- * @param id 文章id
3419
- * @param type 文章类型
3420
- * @param callback 监听回调
3598
+ * 连接实时频道
3599
+ * @param reload 是否强制重连
3600
+ * @returns WebSocket 实例
3421
3601
  */
3422
3602
  async connect(reload) {
3423
3603
  return new Promise(async (resolve, reject) => {
@@ -3449,15 +3629,25 @@ var ArticleChannel = class extends WsEventBase {
3449
3629
 
3450
3630
  //#endregion
3451
3631
  //#region src/comment.ts
3632
+ /**
3633
+ * 摸鱼派评论接口
3634
+ */
3452
3635
  var Comment = class {
3636
+ /**
3637
+ * 接口 API Key
3638
+ */
3453
3639
  apiKey = "";
3640
+ /**
3641
+ * 各个模块的实例化
3642
+ * @param token 认证 Token
3643
+ */
3454
3644
  constructor(token = "") {
3455
3645
  if (!token) return;
3456
3646
  this.apiKey = token;
3457
3647
  }
3458
3648
  /**
3459
3649
  * 重新设置请求 Token
3460
- * @param apiKey 接口 API Key
3650
+ * @param token 接口 API Key
3461
3651
  */
3462
3652
  setToken(token) {
3463
3653
  this.apiKey = token;
@@ -3465,6 +3655,7 @@ var Comment = class {
3465
3655
  /**
3466
3656
  * 发布评论
3467
3657
  * @param data 评论信息
3658
+ * @returns void
3468
3659
  */
3469
3660
  async send(data) {
3470
3661
  let rsp;
@@ -3486,6 +3677,7 @@ var Comment = class {
3486
3677
  * 更新评论
3487
3678
  * @param id 评论 Id
3488
3679
  * @param data 评论信息
3680
+ * @returns 评论内容
3489
3681
  */
3490
3682
  async update(id, data) {
3491
3683
  let rsp;
@@ -3508,6 +3700,7 @@ var Comment = class {
3508
3700
  * 评论点赞
3509
3701
  * @param id 评论 Id
3510
3702
  * @param type 点赞类型
3703
+ * @returns 投票状态
3511
3704
  */
3512
3705
  async vote(id, type) {
3513
3706
  let rsp;
@@ -3568,9 +3761,23 @@ var Comment = class {
3568
3761
 
3569
3762
  //#endregion
3570
3763
  //#region src/chat.ts
3764
+ /**
3765
+ * 私聊频道
3766
+ */
3571
3767
  var ChatChannel = class extends WsEventBase {
3768
+ /**
3769
+ * 接口 API Key
3770
+ */
3572
3771
  apiKey = "";
3772
+ /**
3773
+ * 目标用户名
3774
+ */
3573
3775
  user = "";
3776
+ /**
3777
+ * 实例化私聊频道
3778
+ * @param user 目标用户名
3779
+ * @param apiKey 接口 API Key
3780
+ */
3574
3781
  constructor(user, apiKey) {
3575
3782
  super();
3576
3783
  this.apiKey = apiKey;
@@ -3618,11 +3825,19 @@ var ChatChannel = class extends WsEventBase {
3618
3825
  };
3619
3826
  });
3620
3827
  }
3828
+ /**
3829
+ * 发送私聊消息
3830
+ * @param msg 消息内容
3831
+ * @returns void
3832
+ */
3621
3833
  async send(msg) {
3622
3834
  var _this$ws;
3623
3835
  if (this.ws == null) await this.connect();
3624
3836
  if (this.user) (_this$ws = this.ws) === null || _this$ws === void 0 || _this$ws.send(msg);
3625
3837
  }
3838
+ /**
3839
+ * 关闭私聊频道
3840
+ */
3626
3841
  close() {
3627
3842
  var _this$ws2;
3628
3843
  (_this$ws2 = this.ws) === null || _this$ws2 === void 0 || _this$ws2.close();
@@ -3739,15 +3954,25 @@ var Chat = class {
3739
3954
 
3740
3955
  //#endregion
3741
3956
  //#region src/breezemoon.ts
3957
+ /**
3958
+ * 摸鱼派清风明月接口
3959
+ */
3742
3960
  var Breezemoon = class {
3961
+ /**
3962
+ * 接口 API Key
3963
+ */
3743
3964
  apiKey = "";
3965
+ /**
3966
+ * 各个模块的实例化
3967
+ * @param token 认证 Token
3968
+ */
3744
3969
  constructor(token = "") {
3745
3970
  if (!token) return;
3746
3971
  this.apiKey = token;
3747
3972
  }
3748
3973
  /**
3749
3974
  * 重新设置请求 Token
3750
- * @param apiKey 接口 API Key
3975
+ * @param token 接口 API Key
3751
3976
  */
3752
3977
  setToken(token) {
3753
3978
  this.apiKey = token;
@@ -3756,6 +3981,7 @@ var Breezemoon = class {
3756
3981
  * 获取清风明月列表
3757
3982
  * @param page 消息页码
3758
3983
  * @param size 每页个数
3984
+ * @returns 清风明月列表
3759
3985
  */
3760
3986
  async list(page = 1, size = 20) {
3761
3987
  try {
@@ -3771,6 +3997,7 @@ var Breezemoon = class {
3771
3997
  * @param user 用户名
3772
3998
  * @param page 消息页码
3773
3999
  * @param size 每页个数
4000
+ * @returns 清风明月列表
3774
4001
  */
3775
4002
  async listByUser(user, page = 1, size = 20) {
3776
4003
  try {
@@ -3784,6 +4011,7 @@ var Breezemoon = class {
3784
4011
  /**
3785
4012
  * 发送清风明月
3786
4013
  * @param content 内容
4014
+ * @returns void
3787
4015
  */
3788
4016
  async send(content) {
3789
4017
  try {
@@ -3804,8 +4032,18 @@ var Breezemoon = class {
3804
4032
 
3805
4033
  //#endregion
3806
4034
  //#region src/finger.ts
4035
+ /**
4036
+ * 摸鱼派金手指接口
4037
+ */
3807
4038
  var Finger = class {
4039
+ /**
4040
+ * 金手指密钥
4041
+ */
3808
4042
  goldFingerKey = "";
4043
+ /**
4044
+ * 实例化金手指
4045
+ * @param key 金手指密钥
4046
+ */
3809
4047
  constructor(key) {
3810
4048
  if (!key) return;
3811
4049
  this.goldFingerKey = key;
@@ -3813,15 +4051,18 @@ var Finger = class {
3813
4051
  /**
3814
4052
  * 设置金手指
3815
4053
  * @param key 金手指密钥
4054
+ * @returns void
3816
4055
  */
3817
4056
  setFinger(key) {
3818
4057
  this.goldFingerKey = key;
3819
4058
  }
3820
4059
  /**
3821
4060
  * 上传摸鱼大闯关关卡数据
3822
- * @param userName: 用户在摸鱼派的用户名
3823
- * @param stage: 关卡数
3824
- * @param time: 通过此关时间(毫秒级时间戳)
4061
+ * @param params 关卡数据
4062
+ * @param params.userName 用户在摸鱼派的用户名
4063
+ * @param params.stage 关卡数
4064
+ * @param params.time 通过此关时间(毫秒级时间戳)
4065
+ * @returns void
3825
4066
  */
3826
4067
  async addMofishScore({ userName, stage, time = (/* @__PURE__ */ new Date()).getTime() }) {
3827
4068
  let rsp;
@@ -3843,7 +4084,8 @@ var Finger = class {
3843
4084
  }
3844
4085
  /**
3845
4086
  * 查询用户最近登录的IP地址
3846
- * @param userName: 用户在摸鱼派的用户名
4087
+ * @param userName 用户在摸鱼派的用户名
4088
+ * @returns 用户 IP 信息
3847
4089
  */
3848
4090
  async queryLatestLoginIP(userName) {
3849
4091
  let rsp;
@@ -3864,8 +4106,9 @@ var Finger = class {
3864
4106
  }
3865
4107
  /**
3866
4108
  * 添加勋章
3867
- * @param userName: 用户在摸鱼派的用户名
3868
- * @param metal: 勋章信息
4109
+ * @param userName 用户在摸鱼派的用户名
4110
+ * @param metal 勋章信息
4111
+ * @returns void
3869
4112
  */
3870
4113
  async addMetal(userName, metal) {
3871
4114
  let rsp;
@@ -4040,10 +4283,36 @@ var Finger = class {
4040
4283
  throw e;
4041
4284
  }
4042
4285
  }
4286
+ /**
4287
+ * 给指定用户发送通知
4288
+ * @param userName: 用户在摸鱼派的用户名
4289
+ * @param notification: 通知内容
4290
+ * @returns void
4291
+ */
4292
+ async sendNotice(userName, notification) {
4293
+ let rsp;
4294
+ try {
4295
+ rsp = await request({
4296
+ url: `user/edit/notification`,
4297
+ method: "post",
4298
+ data: {
4299
+ goldFingerKey: this.goldFingerKey,
4300
+ userName,
4301
+ notification
4302
+ }
4303
+ });
4304
+ if (rsp.code) throw new Error(rsp.msg);
4305
+ } catch (e) {
4306
+ throw e;
4307
+ }
4308
+ }
4043
4309
  };
4044
4310
 
4045
4311
  //#endregion
4046
4312
  //#region src/index.ts
4313
+ /**
4314
+ * 摸鱼派 SDK 主入口
4315
+ */
4047
4316
  var FishPi = class {
4048
4317
  /**
4049
4318
  * 请求 API 的 API Key
@@ -4089,6 +4358,11 @@ var FishPi = class {
4089
4358
  if (!token) return;
4090
4359
  this.setToken(token);
4091
4360
  }
4361
+ /**
4362
+ * 设置请求 Token
4363
+ * @param apiKey 接口 API Key
4364
+ * @returns void
4365
+ */
4092
4366
  async setToken(apiKey) {
4093
4367
  this.apiKey = apiKey;
4094
4368
  this.chatroom.setToken(this.apiKey);
@@ -4100,6 +4374,11 @@ var FishPi = class {
4100
4374
  this.breezemoon.setToken(this.apiKey);
4101
4375
  this.chat.setToken(this.apiKey);
4102
4376
  }
4377
+ /**
4378
+ * 设置 API 域名
4379
+ * @param domain API 域名
4380
+ * @returns void
4381
+ */
4103
4382
  async setDomain(domain) {
4104
4383
  setDomain(domain);
4105
4384
  }
@@ -4128,7 +4407,7 @@ var FishPi = class {
4128
4407
  /**
4129
4408
  * 预注册账号
4130
4409
  * @param data 用户信息
4131
- * @returns
4410
+ * @returns void
4132
4411
  */
4133
4412
  async preRegister(data) {
4134
4413
  try {
@@ -4150,7 +4429,7 @@ var FishPi = class {
4150
4429
  /**
4151
4430
  * 验证手机验证码
4152
4431
  * @param code 验证码
4153
- * @returns
4432
+ * @returns 验证状态
4154
4433
  */
4155
4434
  async verify(code) {
4156
4435
  try {
@@ -4166,6 +4445,8 @@ var FishPi = class {
4166
4445
  }
4167
4446
  /**
4168
4447
  * 注册账号
4448
+ * @param data 注册信息
4449
+ * @returns void
4169
4450
  */
4170
4451
  async register(data) {
4171
4452
  try {