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.
@@ -147,9 +147,18 @@ var ArticlePost = class ArticlePost {
147
147
  * 提问悬赏积分
148
148
  */
149
149
  offerPoint;
150
+ /**
151
+ * 从接口数据转换为 ArticlePost 实例
152
+ * @param article 帖子数据
153
+ * @returns ArticlePost 实例
154
+ */
150
155
  static from(article) {
151
156
  return Object.assign(new ArticlePost(), article);
152
157
  }
158
+ /**
159
+ * 转换为接口请求数据
160
+ * @returns 接口请求数据
161
+ */
153
162
  toJson() {
154
163
  return {
155
164
  articleTitle: this.title,
@@ -166,6 +175,9 @@ var ArticlePost = class ArticlePost {
166
175
  };
167
176
  }
168
177
  };
178
+ /**
179
+ * 评论提交信息
180
+ */
169
181
  var CommentPost = class CommentPost {
170
182
  /**
171
183
  * 文章 Id
@@ -187,9 +199,18 @@ var CommentPost = class CommentPost {
187
199
  * 回复评论 Id
188
200
  */
189
201
  originalId;
202
+ /**
203
+ * 从接口数据转换为 CommentPost 实例
204
+ * @param comment 评论数据
205
+ * @returns CommentPost 实例
206
+ */
190
207
  static from(comment) {
191
208
  return Object.assign(new CommentPost(), comment);
192
209
  }
210
+ /**
211
+ * 转换为接口请求数据
212
+ * @returns 接口请求数据
213
+ */
193
214
  toJson() {
194
215
  return {
195
216
  articleId: this.articleId,
@@ -1068,6 +1089,11 @@ var BreezemoonContent = class BreezemoonContent {
1068
1089
  * 发布城市(可能为空,请注意做判断)
1069
1090
  */
1070
1091
  city = "";
1092
+ /**
1093
+ * 从接口数据转换为 BreezemoonContent 实例
1094
+ * @param src 接口数据
1095
+ * @returns BreezemoonContent 实例
1096
+ */
1071
1097
  static from(src) {
1072
1098
  const data = new BreezemoonContent();
1073
1099
  data.authorName = src.breezemoonAuthorName;
@@ -1081,6 +1107,9 @@ var BreezemoonContent = class BreezemoonContent {
1081
1107
  return data;
1082
1108
  }
1083
1109
  };
1110
+ /**
1111
+ * 清风明月列表
1112
+ */
1084
1113
  var BreezemoonList = class BreezemoonList {
1085
1114
  /**
1086
1115
  * 分页信息
@@ -1090,6 +1119,11 @@ var BreezemoonList = class BreezemoonList {
1090
1119
  * 清风明月列表
1091
1120
  */
1092
1121
  breezemoons = [];
1122
+ /**
1123
+ * 从接口数据转换为 BreezemoonList 实例
1124
+ * @param src 接口数据
1125
+ * @returns BreezemoonList 实例
1126
+ */
1093
1127
  static from(src) {
1094
1128
  const data = new BreezemoonList();
1095
1129
  data.pagination = src.pagination;
@@ -1433,9 +1467,17 @@ var UserInfo = class UserInfo {
1433
1467
  * MBTI 性格类型
1434
1468
  */
1435
1469
  mbti = "";
1470
+ /**
1471
+ * 获取用户显示名称
1472
+ */
1436
1473
  get name() {
1437
1474
  return this.userNickname ? `${this.userNickname}(${this.userName})` : this.userName;
1438
1475
  }
1476
+ /**
1477
+ * 从接口数据转换为 UserInfo 实例
1478
+ * @param user 接口数据
1479
+ * @returns UserInfo 实例
1480
+ */
1439
1481
  static from(user) {
1440
1482
  const data = new UserInfo();
1441
1483
  data.oId = user.oId;
@@ -1560,8 +1602,17 @@ var AtUser = class {
1560
1602
  * 摸鱼大闯关信息
1561
1603
  */
1562
1604
  var MoFishGame = class {
1605
+ /**
1606
+ * 用户名
1607
+ */
1563
1608
  userName = "";
1609
+ /**
1610
+ * 关卡
1611
+ */
1564
1612
  stage = "";
1613
+ /**
1614
+ * 时间
1615
+ */
1565
1616
  time = 0;
1566
1617
  };
1567
1618
  /**
@@ -2038,9 +2089,21 @@ var Pagination = class Pagination {
2038
2089
 
2039
2090
  //#endregion
2040
2091
  //#region src/ws.ts
2092
+ /**
2093
+ * WebSocket 事件基础类
2094
+ */
2041
2095
  var WsEventBase = class {
2096
+ /**
2097
+ * 事件触发器
2098
+ */
2042
2099
  emitter = new EventEmitter();
2100
+ /**
2101
+ * WebSocket 连接对象
2102
+ */
2043
2103
  ws = null;
2104
+ /**
2105
+ * WebSocket 配置
2106
+ */
2044
2107
  rwsOptions = {
2045
2108
  minReconnectionDelay: 1e4,
2046
2109
  maxReconnectionDelay: 6e5,
@@ -2078,6 +2141,7 @@ var WsEventBase = class {
2078
2141
  * WebSocket 监听
2079
2142
  * @param event WebSocket 事件
2080
2143
  * @param listener 监听器
2144
+ * @returns EventEmitter
2081
2145
  */
2082
2146
  on(event, listener) {
2083
2147
  if (this.ws == null || this.ws.readyState !== WebSocket.OPEN) this.connect();
@@ -2087,6 +2151,7 @@ var WsEventBase = class {
2087
2151
  * 移除 WebSocket 监听
2088
2152
  * @param event WebSocket 事件
2089
2153
  * @param listener 监听器
2154
+ * @returns EventEmitter
2090
2155
  */
2091
2156
  off(event, listener) {
2092
2157
  if (!event) return this.emitter.removeAllListeners();
@@ -2097,6 +2162,7 @@ var WsEventBase = class {
2097
2162
  * WebSocket 单次监听
2098
2163
  * @param event WebSocket 事件
2099
2164
  * @param listener 监听器
2165
+ * @returns EventEmitter
2100
2166
  */
2101
2167
  once(event, listener) {
2102
2168
  return this.emitter.once(event, listener);
@@ -2127,13 +2193,38 @@ var WsEventBase = class {
2127
2193
 
2128
2194
  //#endregion
2129
2195
  //#region src/chatroom.ts
2196
+ /**
2197
+ * 摸鱼派聊天室接口
2198
+ */
2130
2199
  var ChatRoom = class extends WsEventBase {
2200
+ /**
2201
+ * 接口 API Key
2202
+ */
2131
2203
  apiKey = "";
2204
+ /**
2205
+ * 讨论话题
2206
+ */
2132
2207
  _discusse = "";
2208
+ /**
2209
+ * 在线用户列表
2210
+ */
2133
2211
  _onlines = [];
2212
+ /**
2213
+ * WebSocket 心跳定时器
2214
+ */
2134
2215
  wsTimer = null;
2216
+ /**
2217
+ * 客户端类型
2218
+ */
2135
2219
  client = ClientType.Other;
2220
+ /**
2221
+ * 客户端版本
2222
+ */
2136
2223
  version = "Latest";
2224
+ /**
2225
+ * 实例化聊天室
2226
+ * @param token 认证 Token
2227
+ */
2137
2228
  constructor(token = "") {
2138
2229
  super();
2139
2230
  if (!token) return;
@@ -2153,6 +2244,7 @@ var ChatRoom = class extends WsEventBase {
2153
2244
  }
2154
2245
  /**
2155
2246
  * 設置当前聊天室话题
2247
+ * @param val 话题内容
2156
2248
  */
2157
2249
  set discusse(val) {
2158
2250
  this.send(`[setdiscuss]${val}[/setdiscuss]`).catch(() => {});
@@ -2202,10 +2294,12 @@ var ChatRoom = class extends WsEventBase {
2202
2294
  }
2203
2295
  /**
2204
2296
  * 获取指定消息附近的聊天室消息
2205
- * @param oId 消息 Id
2206
- * @param mode 获取模式,context 上下文模式,after 之后模式
2207
- * @param size 获取消息数量,默认 25,最大 100
2208
- * @param type 获取消息类型,默认 HTML
2297
+ * @param params 获取参数
2298
+ * @param params.oId 消息 Id
2299
+ * @param params.mode 获取模式,context 上下文模式,after 之后模式
2300
+ * @param params.size 获取消息数量,默认 25,最大 100
2301
+ * @param params.type 获取消息类型,默认 HTML
2302
+ * @returns 聊天室消息列表
2209
2303
  */
2210
2304
  async get({ oId, mode = ChatMessageType.Context, size = 25, type = ChatContentType.HTML }) {
2211
2305
  try {
@@ -2467,7 +2561,7 @@ var ChatRoom = class extends WsEventBase {
2467
2561
  break;
2468
2562
  }
2469
2563
  this.emitter.emit(msg.type, data);
2470
- this.emitter.emit("all", data);
2564
+ this.emitter.emit("all", msg.type, data);
2471
2565
  };
2472
2566
  this.ws.onerror = (e) => {
2473
2567
  this.emitter.emit("error", e);
@@ -2522,8 +2616,18 @@ var RedPacket = class {
2522
2616
 
2523
2617
  //#endregion
2524
2618
  //#region src/notice.ts
2619
+ /**
2620
+ * 摸鱼派通知接口
2621
+ */
2525
2622
  var Notice = class extends WsEventBase {
2623
+ /**
2624
+ * 接口 API Key
2625
+ */
2526
2626
  apiKey = "";
2627
+ /**
2628
+ * 实例化通知
2629
+ * @param token 认证 Token
2630
+ */
2527
2631
  constructor(token = "") {
2528
2632
  super();
2529
2633
  if (!token) return;
@@ -2531,13 +2635,14 @@ var Notice = class extends WsEventBase {
2531
2635
  }
2532
2636
  /**
2533
2637
  * 重新设置请求 Token
2534
- * @param apiKey 接口 API Key
2638
+ * @param token 接口 API Key
2535
2639
  */
2536
2640
  setToken(token) {
2537
2641
  this.apiKey = token;
2538
2642
  }
2539
2643
  /**
2540
2644
  * 获取未读消息数
2645
+ * @returns 未读消息数信息
2541
2646
  */
2542
2647
  async count() {
2543
2648
  let rsp;
@@ -2553,6 +2658,7 @@ var Notice = class extends WsEventBase {
2553
2658
  /**
2554
2659
  * 获取消息列表
2555
2660
  * @param type 消息类型
2661
+ * @returns 消息列表
2556
2662
  */
2557
2663
  async list(type) {
2558
2664
  let rsp;
@@ -2608,7 +2714,8 @@ var Notice = class extends WsEventBase {
2608
2714
  });
2609
2715
  }
2610
2716
  /**
2611
- * 连接用户私聊频道
2717
+ * 连接通知频道
2718
+ * @param reload 是否重新连接
2612
2719
  * @returns Websocket 连接对象
2613
2720
  */
2614
2721
  connect(reload = false) {
@@ -2644,21 +2751,37 @@ var Notice = class extends WsEventBase {
2644
2751
 
2645
2752
  //#endregion
2646
2753
  //#region src/emoji.ts
2754
+ /**
2755
+ * 摸鱼派表情接口
2756
+ */
2647
2757
  var Emoji = class {
2758
+ /**
2759
+ * 接口 API Key
2760
+ */
2648
2761
  apiKey = "";
2762
+ /**
2763
+ * 自定义表情列表
2764
+ */
2649
2765
  emojis = [];
2766
+ /**
2767
+ * 各个模块的实例化
2768
+ * @param token 认证 Token
2769
+ */
2650
2770
  constructor(token = "") {
2651
2771
  if (!token) return;
2652
2772
  this.setToken(token);
2653
2773
  }
2654
2774
  /**
2655
2775
  * 重新设置请求 Token
2656
- * @param apiKey 接口 API Key
2776
+ * @param token 接口 API Key
2657
2777
  */
2658
2778
  setToken(token) {
2659
2779
  this.apiKey = token;
2660
2780
  if (token) this.get().then((e) => this.emojis = e).catch(() => {});
2661
2781
  }
2782
+ /**
2783
+ * 默认表情列表
2784
+ */
2662
2785
  get default() {
2663
2786
  return {
2664
2787
  doge: "https://cdn.jsdelivr.net/npm/vditor@3.8.7/dist/images/emoji/doge.png",
@@ -2905,15 +3028,25 @@ var Emoji = class {
2905
3028
 
2906
3029
  //#endregion
2907
3030
  //#region src/user.ts
3031
+ /**
3032
+ * 摸鱼派用户接口
3033
+ */
2908
3034
  var User = class {
3035
+ /**
3036
+ * 接口 API Key
3037
+ */
2909
3038
  apiKey = "";
3039
+ /**
3040
+ * 实例化用户
3041
+ * @param token 认证 Token
3042
+ */
2910
3043
  constructor(token = "") {
2911
3044
  if (!token) return;
2912
3045
  this.apiKey = token;
2913
3046
  }
2914
3047
  /**
2915
3048
  * 重新设置请求 Token
2916
- * @param apiKey 接口 API Key
3049
+ * @param token 接口 API Key
2917
3050
  */
2918
3051
  setToken(token) {
2919
3052
  this.apiKey = token;
@@ -3070,6 +3203,7 @@ var User = class {
3070
3203
  /**
3071
3204
  * 修改用户头像
3072
3205
  * @param userAvatarURL 用户头像地址
3206
+ * @returns void
3073
3207
  */
3074
3208
  async updateUserAvatar(userAvatarURL) {
3075
3209
  let rsp;
@@ -3090,6 +3224,7 @@ var User = class {
3090
3224
  /**
3091
3225
  * 修改用户信息
3092
3226
  * @param data 用户信息参数
3227
+ * @returns void
3093
3228
  */
3094
3229
  async updateUserInfo(data) {
3095
3230
  let rsp;
@@ -3111,16 +3246,29 @@ var User = class {
3111
3246
 
3112
3247
  //#endregion
3113
3248
  //#region src/article.ts
3249
+ /**
3250
+ * 摸鱼派文章接口
3251
+ */
3114
3252
  var Article = class {
3253
+ /**
3254
+ * 接口 API Key
3255
+ */
3115
3256
  apiKey = "";
3257
+ /**
3258
+ * 文章频道
3259
+ */
3116
3260
  channels = {};
3261
+ /**
3262
+ * 各个模块的实例化
3263
+ * @param token 认证 Token
3264
+ */
3117
3265
  constructor(token = "") {
3118
3266
  if (!token) return;
3119
3267
  this.apiKey = token;
3120
3268
  }
3121
3269
  /**
3122
3270
  * 重新设置请求 Token
3123
- * @param apiKey 接口 API Key
3271
+ * @param token 接口 API Key
3124
3272
  */
3125
3273
  setToken(token) {
3126
3274
  this.apiKey = token;
@@ -3172,8 +3320,11 @@ var Article = class {
3172
3320
  }
3173
3321
  /**
3174
3322
  * 查询文章列表
3175
- * @param type 查询类型
3176
- * @param tag 指定查询标签,可选
3323
+ * @param params 查询参数
3324
+ * @param params.type 查询类型
3325
+ * @param params.page 页码,默认 1
3326
+ * @param params.size 每页数量,默认 20
3327
+ * @param params.tag 指定查询标签,可选
3177
3328
  * @returns 文章列表
3178
3329
  */
3179
3330
  async list({ type, page = 1, size = 20, tag }) {
@@ -3243,6 +3394,7 @@ var Article = class {
3243
3394
  /**
3244
3395
  * 感谢文章
3245
3396
  * @param id 文章id
3397
+ * @returns void
3246
3398
  */
3247
3399
  async thank(id) {
3248
3400
  let rsp;
@@ -3280,6 +3432,7 @@ var Article = class {
3280
3432
  /**
3281
3433
  * 取消收藏文章
3282
3434
  * @param followingId 文章id
3435
+ * @returns void
3283
3436
  */
3284
3437
  async unfollow(followingId) {
3285
3438
  let rsp;
@@ -3300,6 +3453,7 @@ var Article = class {
3300
3453
  /**
3301
3454
  * 关注文章
3302
3455
  * @param followingId 文章id
3456
+ * @returns void
3303
3457
  */
3304
3458
  async watch(followingId) {
3305
3459
  let rsp;
@@ -3320,6 +3474,7 @@ var Article = class {
3320
3474
  /**
3321
3475
  * 取消关注文章
3322
3476
  * @param followingId 文章id
3477
+ * @returns void
3323
3478
  */
3324
3479
  async unwatch(followingId) {
3325
3480
  let rsp;
@@ -3357,6 +3512,7 @@ var Article = class {
3357
3512
  /**
3358
3513
  * 获取文章在线人数
3359
3514
  * @param id 文章id
3515
+ * @returns 文章热度值
3360
3516
  */
3361
3517
  async heat(id) {
3362
3518
  let rsp;
@@ -3374,6 +3530,7 @@ var Article = class {
3374
3530
  /**
3375
3531
  * 获取帖子的Markdown原文
3376
3532
  * @param articleId 文章Id
3533
+ * @returns 文章 Markdown 内容
3377
3534
  */
3378
3535
  async md(articleId) {
3379
3536
  let rsp;
@@ -3385,25 +3542,48 @@ var Article = class {
3385
3542
  throw e;
3386
3543
  }
3387
3544
  }
3545
+ /**
3546
+ * 获取文章频道
3547
+ * @param id 文章 Id
3548
+ * @param type 文章类型
3549
+ * @returns 文章频道实例
3550
+ */
3388
3551
  channel(id, type) {
3389
3552
  if (!this.channels[id]) this.channels[id] = new ArticleChannel(this.apiKey, id, type);
3390
3553
  return this.channels[id];
3391
3554
  }
3392
3555
  };
3556
+ /**
3557
+ * 文章实时频道
3558
+ */
3393
3559
  var ArticleChannel = class extends WsEventBase {
3560
+ /**
3561
+ * 接口 API Key
3562
+ */
3394
3563
  apiKey = "";
3564
+ /**
3565
+ * 文章 Id
3566
+ */
3395
3567
  id = "";
3568
+ /**
3569
+ * 文章类型
3570
+ */
3396
3571
  type = ArticleType.Normal;
3572
+ /**
3573
+ * 实例化文章频道
3574
+ * @param token 认证 Token
3575
+ * @param id 文章 Id
3576
+ * @param type 文章类型
3577
+ */
3397
3578
  constructor(token, id, type) {
3398
3579
  super();
3399
3580
  if (!token) return;
3400
3581
  this.apiKey = token;
3401
3582
  }
3402
3583
  /**
3403
- * 添加文章监听器
3404
- * @param id 文章id
3405
- * @param type 文章类型
3406
- * @param callback 监听回调
3584
+ * 连接实时频道
3585
+ * @param reload 是否强制重连
3586
+ * @returns WebSocket 实例
3407
3587
  */
3408
3588
  async connect(reload) {
3409
3589
  return new Promise(async (resolve, reject) => {
@@ -3435,15 +3615,25 @@ var ArticleChannel = class extends WsEventBase {
3435
3615
 
3436
3616
  //#endregion
3437
3617
  //#region src/comment.ts
3618
+ /**
3619
+ * 摸鱼派评论接口
3620
+ */
3438
3621
  var Comment = class {
3622
+ /**
3623
+ * 接口 API Key
3624
+ */
3439
3625
  apiKey = "";
3626
+ /**
3627
+ * 各个模块的实例化
3628
+ * @param token 认证 Token
3629
+ */
3440
3630
  constructor(token = "") {
3441
3631
  if (!token) return;
3442
3632
  this.apiKey = token;
3443
3633
  }
3444
3634
  /**
3445
3635
  * 重新设置请求 Token
3446
- * @param apiKey 接口 API Key
3636
+ * @param token 接口 API Key
3447
3637
  */
3448
3638
  setToken(token) {
3449
3639
  this.apiKey = token;
@@ -3451,6 +3641,7 @@ var Comment = class {
3451
3641
  /**
3452
3642
  * 发布评论
3453
3643
  * @param data 评论信息
3644
+ * @returns void
3454
3645
  */
3455
3646
  async send(data) {
3456
3647
  let rsp;
@@ -3472,6 +3663,7 @@ var Comment = class {
3472
3663
  * 更新评论
3473
3664
  * @param id 评论 Id
3474
3665
  * @param data 评论信息
3666
+ * @returns 评论内容
3475
3667
  */
3476
3668
  async update(id, data) {
3477
3669
  let rsp;
@@ -3494,6 +3686,7 @@ var Comment = class {
3494
3686
  * 评论点赞
3495
3687
  * @param id 评论 Id
3496
3688
  * @param type 点赞类型
3689
+ * @returns 投票状态
3497
3690
  */
3498
3691
  async vote(id, type) {
3499
3692
  let rsp;
@@ -3554,9 +3747,23 @@ var Comment = class {
3554
3747
 
3555
3748
  //#endregion
3556
3749
  //#region src/chat.ts
3750
+ /**
3751
+ * 私聊频道
3752
+ */
3557
3753
  var ChatChannel = class extends WsEventBase {
3754
+ /**
3755
+ * 接口 API Key
3756
+ */
3558
3757
  apiKey = "";
3758
+ /**
3759
+ * 目标用户名
3760
+ */
3559
3761
  user = "";
3762
+ /**
3763
+ * 实例化私聊频道
3764
+ * @param user 目标用户名
3765
+ * @param apiKey 接口 API Key
3766
+ */
3560
3767
  constructor(user, apiKey) {
3561
3768
  super();
3562
3769
  this.apiKey = apiKey;
@@ -3604,11 +3811,19 @@ var ChatChannel = class extends WsEventBase {
3604
3811
  };
3605
3812
  });
3606
3813
  }
3814
+ /**
3815
+ * 发送私聊消息
3816
+ * @param msg 消息内容
3817
+ * @returns void
3818
+ */
3607
3819
  async send(msg) {
3608
3820
  var _this$ws;
3609
3821
  if (this.ws == null) await this.connect();
3610
3822
  if (this.user) (_this$ws = this.ws) === null || _this$ws === void 0 || _this$ws.send(msg);
3611
3823
  }
3824
+ /**
3825
+ * 关闭私聊频道
3826
+ */
3612
3827
  close() {
3613
3828
  var _this$ws2;
3614
3829
  (_this$ws2 = this.ws) === null || _this$ws2 === void 0 || _this$ws2.close();
@@ -3725,15 +3940,25 @@ var Chat = class {
3725
3940
 
3726
3941
  //#endregion
3727
3942
  //#region src/breezemoon.ts
3943
+ /**
3944
+ * 摸鱼派清风明月接口
3945
+ */
3728
3946
  var Breezemoon = class {
3947
+ /**
3948
+ * 接口 API Key
3949
+ */
3729
3950
  apiKey = "";
3951
+ /**
3952
+ * 各个模块的实例化
3953
+ * @param token 认证 Token
3954
+ */
3730
3955
  constructor(token = "") {
3731
3956
  if (!token) return;
3732
3957
  this.apiKey = token;
3733
3958
  }
3734
3959
  /**
3735
3960
  * 重新设置请求 Token
3736
- * @param apiKey 接口 API Key
3961
+ * @param token 接口 API Key
3737
3962
  */
3738
3963
  setToken(token) {
3739
3964
  this.apiKey = token;
@@ -3742,6 +3967,7 @@ var Breezemoon = class {
3742
3967
  * 获取清风明月列表
3743
3968
  * @param page 消息页码
3744
3969
  * @param size 每页个数
3970
+ * @returns 清风明月列表
3745
3971
  */
3746
3972
  async list(page = 1, size = 20) {
3747
3973
  try {
@@ -3757,6 +3983,7 @@ var Breezemoon = class {
3757
3983
  * @param user 用户名
3758
3984
  * @param page 消息页码
3759
3985
  * @param size 每页个数
3986
+ * @returns 清风明月列表
3760
3987
  */
3761
3988
  async listByUser(user, page = 1, size = 20) {
3762
3989
  try {
@@ -3770,6 +3997,7 @@ var Breezemoon = class {
3770
3997
  /**
3771
3998
  * 发送清风明月
3772
3999
  * @param content 内容
4000
+ * @returns void
3773
4001
  */
3774
4002
  async send(content) {
3775
4003
  try {
@@ -3790,8 +4018,18 @@ var Breezemoon = class {
3790
4018
 
3791
4019
  //#endregion
3792
4020
  //#region src/finger.ts
4021
+ /**
4022
+ * 摸鱼派金手指接口
4023
+ */
3793
4024
  var Finger = class {
4025
+ /**
4026
+ * 金手指密钥
4027
+ */
3794
4028
  goldFingerKey = "";
4029
+ /**
4030
+ * 实例化金手指
4031
+ * @param key 金手指密钥
4032
+ */
3795
4033
  constructor(key) {
3796
4034
  if (!key) return;
3797
4035
  this.goldFingerKey = key;
@@ -3799,15 +4037,18 @@ var Finger = class {
3799
4037
  /**
3800
4038
  * 设置金手指
3801
4039
  * @param key 金手指密钥
4040
+ * @returns void
3802
4041
  */
3803
4042
  setFinger(key) {
3804
4043
  this.goldFingerKey = key;
3805
4044
  }
3806
4045
  /**
3807
4046
  * 上传摸鱼大闯关关卡数据
3808
- * @param userName: 用户在摸鱼派的用户名
3809
- * @param stage: 关卡数
3810
- * @param time: 通过此关时间(毫秒级时间戳)
4047
+ * @param params 关卡数据
4048
+ * @param params.userName 用户在摸鱼派的用户名
4049
+ * @param params.stage 关卡数
4050
+ * @param params.time 通过此关时间(毫秒级时间戳)
4051
+ * @returns void
3811
4052
  */
3812
4053
  async addMofishScore({ userName, stage, time = (/* @__PURE__ */ new Date()).getTime() }) {
3813
4054
  let rsp;
@@ -3829,7 +4070,8 @@ var Finger = class {
3829
4070
  }
3830
4071
  /**
3831
4072
  * 查询用户最近登录的IP地址
3832
- * @param userName: 用户在摸鱼派的用户名
4073
+ * @param userName 用户在摸鱼派的用户名
4074
+ * @returns 用户 IP 信息
3833
4075
  */
3834
4076
  async queryLatestLoginIP(userName) {
3835
4077
  let rsp;
@@ -3850,8 +4092,9 @@ var Finger = class {
3850
4092
  }
3851
4093
  /**
3852
4094
  * 添加勋章
3853
- * @param userName: 用户在摸鱼派的用户名
3854
- * @param metal: 勋章信息
4095
+ * @param userName 用户在摸鱼派的用户名
4096
+ * @param metal 勋章信息
4097
+ * @returns void
3855
4098
  */
3856
4099
  async addMetal(userName, metal) {
3857
4100
  let rsp;
@@ -4026,10 +4269,36 @@ var Finger = class {
4026
4269
  throw e;
4027
4270
  }
4028
4271
  }
4272
+ /**
4273
+ * 给指定用户发送通知
4274
+ * @param userName: 用户在摸鱼派的用户名
4275
+ * @param notification: 通知内容
4276
+ * @returns void
4277
+ */
4278
+ async sendNotice(userName, notification) {
4279
+ let rsp;
4280
+ try {
4281
+ rsp = await request({
4282
+ url: `user/edit/notification`,
4283
+ method: "post",
4284
+ data: {
4285
+ goldFingerKey: this.goldFingerKey,
4286
+ userName,
4287
+ notification
4288
+ }
4289
+ });
4290
+ if (rsp.code) throw new Error(rsp.msg);
4291
+ } catch (e) {
4292
+ throw e;
4293
+ }
4294
+ }
4029
4295
  };
4030
4296
 
4031
4297
  //#endregion
4032
4298
  //#region src/index.ts
4299
+ /**
4300
+ * 摸鱼派 SDK 主入口
4301
+ */
4033
4302
  var FishPi = class {
4034
4303
  /**
4035
4304
  * 请求 API 的 API Key
@@ -4075,6 +4344,11 @@ var FishPi = class {
4075
4344
  if (!token) return;
4076
4345
  this.setToken(token);
4077
4346
  }
4347
+ /**
4348
+ * 设置请求 Token
4349
+ * @param apiKey 接口 API Key
4350
+ * @returns void
4351
+ */
4078
4352
  async setToken(apiKey) {
4079
4353
  this.apiKey = apiKey;
4080
4354
  this.chatroom.setToken(this.apiKey);
@@ -4086,6 +4360,11 @@ var FishPi = class {
4086
4360
  this.breezemoon.setToken(this.apiKey);
4087
4361
  this.chat.setToken(this.apiKey);
4088
4362
  }
4363
+ /**
4364
+ * 设置 API 域名
4365
+ * @param domain API 域名
4366
+ * @returns void
4367
+ */
4089
4368
  async setDomain(domain) {
4090
4369
  setDomain(domain);
4091
4370
  }
@@ -4114,7 +4393,7 @@ var FishPi = class {
4114
4393
  /**
4115
4394
  * 预注册账号
4116
4395
  * @param data 用户信息
4117
- * @returns
4396
+ * @returns void
4118
4397
  */
4119
4398
  async preRegister(data) {
4120
4399
  try {
@@ -4136,7 +4415,7 @@ var FishPi = class {
4136
4415
  /**
4137
4416
  * 验证手机验证码
4138
4417
  * @param code 验证码
4139
- * @returns
4418
+ * @returns 验证状态
4140
4419
  */
4141
4420
  async verify(code) {
4142
4421
  try {
@@ -4152,6 +4431,8 @@ var FishPi = class {
4152
4431
  }
4153
4432
  /**
4154
4433
  * 注册账号
4434
+ * @param data 注册信息
4435
+ * @returns void
4155
4436
  */
4156
4437
  async register(data) {
4157
4438
  try {