karin-plugin-kkk 2.31.2 → 2.32.1

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.
@@ -17297,32 +17297,41 @@ var OriginalAVContent = ({ content }) => {
17297
17297
  }),
17298
17298
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "h-15" }),
17299
17299
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
17300
- className: "flex flex-col items-center",
17301
- children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
17302
- className: "flex overflow-hidden relative flex-col items-center w-full rounded-4xl rounded-10 aspect-video shadow-large",
17303
- children: [
17304
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(EnhancedImage, {
17305
- src: content.cover,
17306
- alt: "视频封面",
17307
- className: "object-cover object-center absolute"
17308
- }),
17309
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "absolute right-0 bottom-0 left-0 h-1/2 bg-linear-to-t to-transparent pointer-events-none from-black/75" }),
17310
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
17311
- className: "absolute right-5 left-12 bottom-14 z-10 text-4xl font-light text-white select-text",
17312
- children: [
17313
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
17314
- className: "px-4 py-2 mr-3 text-4xl text-white rounded-2xl bg-black/50",
17315
- children: content.duration_text
17316
- }),
17317
- content.play,
17318
- "观看 ",
17319
- content.danmaku,
17320
- "弹幕"
17321
- ]
17322
- })
17323
- ]
17300
+ className: "relative items-center text-5xl tracking-wider wrap-break-word text-muted leading-relaxed",
17301
+ children: content.text.nodes.length > 0 && renderRichTextToReact(content.text, {
17302
+ at: { className: "text-[#006A9E] dark:text-[#58B0D5]" },
17303
+ topic: { className: "text-[#006A9E] dark:text-[#58B0D5]" },
17304
+ lottery: { className: "text-[#006A9E] dark:text-[#58B0D5]" },
17305
+ webLink: { className: "text-[#006A9E] dark:text-[#58B0D5]" },
17306
+ vote: { className: "text-[#006A9E] dark:text-[#58B0D5]" },
17307
+ viewPicture: { className: "text-[#006A9E] dark:text-[#58B0D5]" }
17324
17308
  })
17325
17309
  }),
17310
+ content.text.nodes.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "h-5" }),
17311
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
17312
+ className: "flex overflow-hidden relative flex-col items-center w-full rounded-5xl aspect-video",
17313
+ children: [
17314
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(EnhancedImage, {
17315
+ src: content.cover,
17316
+ alt: "视频封面",
17317
+ className: "w-full h-full"
17318
+ }),
17319
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "absolute right-0 bottom-0 left-0 h-1/2 bg-linear-to-t to-transparent pointer-events-none from-black/75" }),
17320
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
17321
+ className: "absolute right-5 left-12 bottom-14 z-10 text-4xl font-light text-white select-text",
17322
+ children: [
17323
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
17324
+ className: "px-4 py-2 mr-3 text-4xl text-white rounded-2xl bg-black/50",
17325
+ children: content.duration_text
17326
+ }),
17327
+ content.play,
17328
+ "观看 ",
17329
+ content.danmaku,
17330
+ "弹幕"
17331
+ ]
17332
+ })
17333
+ ]
17334
+ }),
17326
17335
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "h-10" }),
17327
17336
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
17328
17337
  className: "pl-2 text-6xl font-bold select-text leading-20 text-foreground",
@@ -36051,24 +36060,28 @@ var Bilibili = class extends Base {
36051
36060
  const text = buildBilibiliDynamicRichText(dynamicInfo.data.data.item.modules.module_dynamic.desc.text, dynamicInfo.data.data.item.modules.module_dynamic.desc.rich_text_nodes);
36052
36061
  const imgList = [];
36053
36062
  for (const richTxtItem of dynamicInfo.data.data.item.modules.module_dynamic.desc.rich_text_nodes) if (richTxtItem.type === "RICH_TEXT_NODE_TYPE_VIEW_PICTURE") for (const pic of richTxtItem.pics) imgList.push(pic.src);
36054
- let data = {};
36063
+ let original_content = {};
36055
36064
  switch (dynamicInfo.data.data.item.orig.type) {
36056
- case DynamicType.AV:
36057
- data = {
36065
+ case DynamicType.AV: {
36066
+ const desc = dynamicInfo.data.data.item.orig.modules.module_dynamic?.desc || {
36067
+ text: "",
36068
+ rich_text_nodes: []
36069
+ };
36070
+ original_content = { DYNAMIC_TYPE_AV: {
36058
36071
  usernameMeta: getUsernameMetadata(dynamicInfo.data.data.item.orig.modules.module_author),
36059
- pub_action: dynamicInfo.data.data.item.orig.modules.module_author.pub_action,
36060
36072
  avatar_url: dynamicInfo.data.data.item.orig.modules.module_author.face,
36061
36073
  duration_text: dynamicInfo.data.data.item.orig.modules.module_dynamic.major.archive.duration_text,
36074
+ text: buildBilibiliDynamicRichText(desc.text, desc.rich_text_nodes),
36062
36075
  title: buildBilibiliDynamicRichText(dynamicInfo.data.data.item.orig.modules.module_dynamic.major.archive.title, []),
36063
36076
  danmaku: dynamicInfo.data.data.item.orig.modules.module_dynamic.major.archive.stat.danmaku,
36064
- view: dynamicInfo.data.data.item.orig.modules.module_dynamic.major.archive.stat.view,
36065
36077
  play: dynamicInfo.data.data.item.orig.modules.module_dynamic.major.archive.stat.play,
36066
36078
  cover: dynamicInfo.data.data.item.orig.modules.module_dynamic.major.archive.cover,
36067
36079
  create_time: TimeFormatter.toDateTime(dynamicInfo.data.data.item.orig.modules.module_author.pub_ts),
36068
36080
  decoration_card: generateDecorationCard(dynamicInfo.data.data.item.orig.modules.module_author.decoration_card),
36069
36081
  frame: dynamicInfo.data.data.item.orig.modules.module_author.pendant.image
36070
- };
36082
+ } };
36071
36083
  break;
36084
+ }
36072
36085
  case DynamicType.DRAW: {
36073
36086
  const origMd = dynamicInfo.data.data.item.orig.modules.module_dynamic;
36074
36087
  if (origMd.topic) {
@@ -36087,8 +36100,8 @@ var Bilibili = class extends Base {
36087
36100
  summary.text = summary.text ? `${name}\n${summary.text}` : name;
36088
36101
  }
36089
36102
  }
36090
- data = {
36091
- title: dynamicInfo.data.data.item.orig.modules.module_dynamic.major?.opus?.title ?? null,
36103
+ original_content = { DYNAMIC_TYPE_DRAW: {
36104
+ title: dynamicInfo.data.data.item.orig.modules.module_dynamic.major?.opus?.title ?? void 0,
36092
36105
  usernameMeta: getUsernameMetadata(dynamicInfo.data.data.item.orig.modules.module_author),
36093
36106
  create_time: TimeFormatter.toDateTime(dynamicInfo.data.data.item.orig.modules.module_author.pub_ts),
36094
36107
  avatar_url: dynamicInfo.data.data.item.orig.modules.module_author.face,
@@ -36096,7 +36109,7 @@ var Bilibili = class extends Base {
36096
36109
  image_url: Object.values(dynamicInfo.data.data.item.orig.modules.module_dynamic.major.opus.pics).filter((item) => typeof item?.url === "string").map((item) => ({ image_src: item.url })),
36097
36110
  decoration_card: generateDecorationCard(dynamicInfo.data.data.item.orig.modules.module_author.decoration_card),
36098
36111
  frame: dynamicInfo.data.data.item.orig.modules.module_author.pendant.image
36099
- };
36112
+ } };
36100
36113
  break;
36101
36114
  }
36102
36115
  case DynamicType.WORD: {
@@ -36115,7 +36128,7 @@ var Bilibili = class extends Base {
36115
36128
  summary.text = summary.text ? `${name}\n${summary.text}` : name;
36116
36129
  }
36117
36130
  }
36118
- data = {
36131
+ original_content = { DYNAMIC_TYPE_WORD: {
36119
36132
  usernameMeta: getUsernameMetadata(dynamicInfo.data.data.item.orig.modules.module_author),
36120
36133
  create_time: TimeFormatter.toDateTime(dynamicInfo.data.data.item.orig.modules.module_author.pub_ts),
36121
36134
  avatar_url: dynamicInfo.data.data.item.orig.modules.module_author.face,
@@ -36123,12 +36136,12 @@ var Bilibili = class extends Base {
36123
36136
  decoration_card: generateDecorationCard(dynamicInfo.data.data.item.orig.modules.module_author.decoration_card),
36124
36137
  frame: dynamicInfo.data.data.item.orig.modules.module_author.pendant.image,
36125
36138
  additional: parseAdditionalCard(dynamicInfo.data.data.item.orig.modules.module_dynamic.additional)
36126
- };
36139
+ } };
36127
36140
  break;
36128
36141
  }
36129
36142
  case DynamicType.LIVE_RCMD: {
36130
36143
  const liveData = JSON.parse(dynamicInfo.data.data.item.orig.modules.module_dynamic.major.live_rcmd.content);
36131
- data = {
36144
+ original_content = { DYNAMIC_TYPE_LIVE_RCMD: {
36132
36145
  usernameMeta: getUsernameMetadata(dynamicInfo.data.data.item.orig.modules.module_author),
36133
36146
  create_time: TimeFormatter.toDateTime(dynamicInfo.data.data.item.orig.modules.module_author.pub_ts),
36134
36147
  avatar_url: dynamicInfo.data.data.item.orig.modules.module_author.face,
@@ -36139,7 +36152,7 @@ var Bilibili = class extends Base {
36139
36152
  area_name: liveData.live_play_info.area_name,
36140
36153
  title: buildBilibiliDynamicRichText(liveData.live_play_info.title, []),
36141
36154
  online: liveData.live_play_info.online
36142
- };
36155
+ } };
36143
36156
  break;
36144
36157
  }
36145
36158
  default:
@@ -36164,7 +36177,7 @@ var Bilibili = class extends Base {
36164
36177
  dynamicTYPE: "转发动态解析",
36165
36178
  decoration_card: generateDecorationCard(dynamicInfo.data.data.item.modules.module_author.decoration_card),
36166
36179
  render_time: TimeFormatter.now(),
36167
- original_content: { [dynamicInfo.data.data.item.orig.type]: data },
36180
+ original_content,
36168
36181
  dynamic_id: dynamicInfo.data.data.item.id_str
36169
36182
  }));
36170
36183
  break;
@@ -37696,29 +37709,33 @@ var Bilibilipush = class extends Base {
37696
37709
  desc.text = desc.text ? `${name}\n\n${desc.text}` : name;
37697
37710
  }
37698
37711
  const text = buildBilibiliDynamicRichText(data[dynamicId].Dynamic_Data.modules.module_dynamic.desc.text, data[dynamicId].Dynamic_Data.modules.module_dynamic.desc.rich_text_nodes);
37699
- let param = {};
37700
37712
  /** 富文本节点:查看图片 */
37701
37713
  const imgList = [];
37702
37714
  if (data[dynamicId].Dynamic_Data.modules.module_dynamic.desc) {
37703
37715
  for (const richTxtItem of data[dynamicId].Dynamic_Data.modules.module_dynamic.desc.rich_text_nodes) if (richTxtItem.type === "RICH_TEXT_NODE_TYPE_VIEW_PICTURE") for (const pic of richTxtItem.pics) imgList.push(pic.src);
37704
37716
  }
37717
+ let original_content = {};
37705
37718
  switch (data[dynamicId].Dynamic_Data.orig.type) {
37706
- case DynamicType.AV:
37707
- param = {
37719
+ case DynamicType.AV: {
37720
+ const desc = data[dynamicId].Dynamic_Data.orig.modules.module_dynamic?.desc || {
37721
+ text: "",
37722
+ rich_text_nodes: []
37723
+ };
37724
+ original_content = { DYNAMIC_TYPE_AV: {
37708
37725
  usernameMeta: getUsernameMetadata(data[dynamicId].Dynamic_Data.orig.modules.module_author),
37709
- pub_action: data[dynamicId].Dynamic_Data.orig.modules.module_author.pub_action,
37710
37726
  avatar_url: data[dynamicId].Dynamic_Data.orig.modules.module_author.face,
37711
37727
  duration_text: data[dynamicId].Dynamic_Data.orig.modules.module_dynamic.major.archive?.duration_text,
37728
+ text: buildBilibiliDynamicRichText(desc.text, desc.rich_text_nodes),
37712
37729
  title: buildBilibiliDynamicRichText(data[dynamicId].Dynamic_Data.orig.modules.module_dynamic.major.archive?.title ?? "", []),
37713
37730
  danmaku: data[dynamicId].Dynamic_Data.orig.modules.module_dynamic.major.archive?.stat.danmaku,
37714
- view: data[dynamicId].Dynamic_Data.orig.modules.module_dynamic.major.archive?.stat.view,
37715
37731
  play: data[dynamicId].Dynamic_Data.orig.modules.module_dynamic.major.archive?.stat.play,
37716
37732
  cover: data[dynamicId].Dynamic_Data.orig.modules.module_dynamic.major.archive?.cover,
37717
37733
  create_time: TimeFormatter.toDateTime(data[dynamicId].Dynamic_Data.orig.modules.module_author.pub_ts),
37718
37734
  decoration_card: generateDecorationCard(data[dynamicId].Dynamic_Data.orig.modules.module_author.decoration_card),
37719
37735
  frame: data[dynamicId].Dynamic_Data.orig.modules.module_author.pendant.image
37720
- };
37736
+ } };
37721
37737
  break;
37738
+ }
37722
37739
  case DynamicType.DRAW: {
37723
37740
  const origMd = data[dynamicId].Dynamic_Data.orig.modules.module_dynamic;
37724
37741
  if (origMd.topic) {
@@ -37737,8 +37754,8 @@ var Bilibilipush = class extends Base {
37737
37754
  summary.text = summary.text ? `${name}\n${summary.text}` : name;
37738
37755
  }
37739
37756
  }
37740
- param = {
37741
- title: data[dynamicId].Dynamic_Data.orig.modules.module_dynamic.major?.opus?.title ?? null,
37757
+ original_content = { DYNAMIC_TYPE_DRAW: {
37758
+ title: data[dynamicId].Dynamic_Data.orig.modules.module_dynamic.major?.opus?.title || "图文动态",
37742
37759
  usernameMeta: getUsernameMetadata(data[dynamicId].Dynamic_Data.orig.modules.module_author),
37743
37760
  create_time: TimeFormatter.toDateTime(data[dynamicId].Dynamic_Data.orig.modules.module_author.pub_ts),
37744
37761
  avatar_url: data[dynamicId].Dynamic_Data.orig.modules.module_author.face,
@@ -37746,7 +37763,7 @@ var Bilibilipush = class extends Base {
37746
37763
  image_url: Object.values(data[dynamicId].Dynamic_Data.orig.modules.module_dynamic.major.opus.pics).filter((item) => typeof item?.url === "string").map((item) => ({ image_src: item.url })),
37747
37764
  decoration_card: generateDecorationCard(data[dynamicId].Dynamic_Data.orig.modules.module_author.decoration_card),
37748
37765
  frame: data[dynamicId].Dynamic_Data.orig.modules.module_author.pendant.image
37749
- };
37766
+ } };
37750
37767
  break;
37751
37768
  }
37752
37769
  case DynamicType.WORD: {
@@ -37765,19 +37782,19 @@ var Bilibilipush = class extends Base {
37765
37782
  summary.text = summary.text ? `${name}\n${summary.text}` : name;
37766
37783
  }
37767
37784
  }
37768
- param = {
37785
+ original_content = { DYNAMIC_TYPE_WORD: {
37769
37786
  usernameMeta: getUsernameMetadata(data[dynamicId].Dynamic_Data.orig.modules.module_author),
37770
37787
  create_time: TimeFormatter.toDateTime(data[dynamicId].Dynamic_Data.orig.modules.module_author.pub_ts),
37771
37788
  avatar_url: data[dynamicId].Dynamic_Data.orig.modules.module_author.face,
37772
37789
  text: buildBilibiliDynamicRichText(data[dynamicId].Dynamic_Data.orig.modules.module_dynamic.major.opus.summary.text, data[dynamicId].Dynamic_Data.orig.modules.module_dynamic.major.opus.summary.rich_text_nodes),
37773
37790
  decoration_card: generateDecorationCard(data[dynamicId].Dynamic_Data.orig.modules.module_author.decoration_card),
37774
37791
  frame: data[dynamicId].Dynamic_Data.orig.modules.module_author.pendant.image
37775
- };
37792
+ } };
37776
37793
  break;
37777
37794
  }
37778
37795
  case DynamicType.LIVE_RCMD: {
37779
37796
  const liveData = JSON.parse(data[dynamicId].Dynamic_Data.orig.modules.module_dynamic.major.live_rcmd.content);
37780
- param = {
37797
+ original_content = { DYNAMIC_TYPE_LIVE_RCMD: {
37781
37798
  usernameMeta: getUsernameMetadata(data[dynamicId].Dynamic_Data.orig.modules.module_author),
37782
37799
  create_time: TimeFormatter.toDateTime(data[dynamicId].Dynamic_Data.orig.modules.module_author.pub_ts),
37783
37800
  avatar_url: data[dynamicId].Dynamic_Data.orig.modules.module_author.face,
@@ -37788,7 +37805,7 @@ var Bilibilipush = class extends Base {
37788
37805
  area_name: liveData.live_play_info.area_name,
37789
37806
  title: buildBilibiliDynamicRichText(liveData.live_play_info.title, []),
37790
37807
  online: liveData.live_play_info.online
37791
- };
37808
+ } };
37792
37809
  break;
37793
37810
  }
37794
37811
  default: {
@@ -37814,7 +37831,7 @@ var Bilibilipush = class extends Base {
37814
37831
  dynamicTYPE: "转发动态推送",
37815
37832
  decoration_card: generateDecorationCard(data[dynamicId].Dynamic_Data.modules.module_author.decoration_card),
37816
37833
  render_time: TimeFormatter.now(),
37817
- original_content: { [data[dynamicId].Dynamic_Data.orig.type]: param },
37834
+ original_content,
37818
37835
  imgList: imgList.length > 0 ? imgList : null,
37819
37836
  dynamic_id: dynamicId
37820
37837
  }, { skipWatermark: true });
@@ -47034,9 +47051,13 @@ app$1.use(express.urlencoded({ extended: true }));
47034
47051
  if (Config.app.APIServer && Config.app.APIServerMount) {
47035
47052
  app$1.use("/amagi/api/bilibili", createBilibiliRoutes(Config.cookies.bilibili));
47036
47053
  app$1.use("/amagi/api/douyin", createDouyinRoutes(Config.cookies.douyin));
47054
+ app$1.use("/amagi/api/kuaishou", createKuaishouRoutes(Config.cookies.kuaishou));
47055
+ app$1.use("/amagi/api/xiaohongshu", createXiaohongshuRoutes(Config.cookies.xiaohongshu));
47037
47056
  } else if (Config.app.APIServer) new Client({ cookies: {
47038
47057
  bilibili: Config.cookies.bilibili,
47039
- douyin: Config.cookies.douyin
47058
+ douyin: Config.cookies.douyin,
47059
+ kuaishou: Config.cookies.kuaishou,
47060
+ xiaohongshu: Config.cookies.xiaohongshu
47040
47061
  } }).startServer(Config.app.APIServerPort);
47041
47062
  app$1.get("/stream/:filename", videoStreamRouter);
47042
47063
  app$1.get("/video/:filename", getVideoRouter);
@@ -1008,6 +1008,8 @@ interface OriginalContentAV {
1008
1008
  danmaku: string;
1009
1009
  /** 视频标题 */
1010
1010
  title: RichTextDocument;
1011
+ /** 动态文本内容(富文本文档) */
1012
+ text: RichTextDocument;
1011
1013
  }
1012
1014
  /**
1013
1015
  * 原始内容图文类型接口
@@ -15858,10 +15858,6 @@
15858
15858
  object-fit: cover;
15859
15859
  }
15860
15860
 
15861
- .object-center {
15862
- object-position: center;
15863
- }
15864
-
15865
15861
  .p-0 {
15866
15862
  padding: calc(var(--spacing) * 0);
15867
15863
  }
@@ -17992,7 +17988,7 @@
17992
17988
  }
17993
17989
  }
17994
17990
 
17995
- .dark\:bg-\[\#321b26\]:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
17991
+ .dark\:bg-\[\#321b26\]:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
17996
17992
  background-color: #321b26;
17997
17993
  }
17998
17994
 
@@ -18002,12 +17998,12 @@
18002
17998
  }
18003
17999
  }
18004
18000
 
18005
- .dark\:bg-black\/72:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18001
+ .dark\:bg-black\/72:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18006
18002
  background-color: #000000b8;
18007
18003
  }
18008
18004
 
18009
18005
  @supports (color: color-mix(in lab, red, red)) {
18010
- .dark\:bg-black\/72:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18006
+ .dark\:bg-black\/72:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18011
18007
  background-color: color-mix(in oklab, var(--color-black) 72%, transparent);
18012
18008
  }
18013
18009
  }
@@ -18024,12 +18020,12 @@
18024
18020
  }
18025
18021
  }
18026
18022
 
18027
- .dark\:bg-surface\/10:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18023
+ .dark\:bg-surface\/10:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18028
18024
  background-color: var(--surface);
18029
18025
  }
18030
18026
 
18031
18027
  @supports (color: color-mix(in lab, red, red)) {
18032
- .dark\:bg-surface\/10:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18028
+ .dark\:bg-surface\/10:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18033
18029
  background-color: color-mix(in oklab, var(--surface) 10%, transparent);
18034
18030
  }
18035
18031
  }
@@ -18046,17 +18042,17 @@
18046
18042
  }
18047
18043
  }
18048
18044
 
18049
- .dark\:from-black\/40:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18045
+ .dark\:from-black\/40:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18050
18046
  --tw-gradient-from: #0006;
18051
18047
  }
18052
18048
 
18053
18049
  @supports (color: color-mix(in lab, red, red)) {
18054
- .dark\:from-black\/40:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18050
+ .dark\:from-black\/40:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18055
18051
  --tw-gradient-from: color-mix(in oklab, var(--color-black) 40%, transparent);
18056
18052
  }
18057
18053
  }
18058
18054
 
18059
- .dark\:from-black\/40:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18055
+ .dark\:from-black\/40:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18060
18056
  --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
18061
18057
  }
18062
18058
 
@@ -18076,17 +18072,17 @@
18076
18072
  }
18077
18073
  }
18078
18074
 
18079
- .dark\:from-black\/55:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18075
+ .dark\:from-black\/55:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18080
18076
  --tw-gradient-from: #0000008c;
18081
18077
  }
18082
18078
 
18083
18079
  @supports (color: color-mix(in lab, red, red)) {
18084
- .dark\:from-black\/55:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18080
+ .dark\:from-black\/55:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18085
18081
  --tw-gradient-from: color-mix(in oklab, var(--color-black) 55%, transparent);
18086
18082
  }
18087
18083
  }
18088
18084
 
18089
- .dark\:from-black\/55:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18085
+ .dark\:from-black\/55:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18090
18086
  --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
18091
18087
  }
18092
18088
 
@@ -18106,17 +18102,17 @@
18106
18102
  }
18107
18103
  }
18108
18104
 
18109
- .dark\:via-black\/20:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18105
+ .dark\:via-black\/20:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18110
18106
  --tw-gradient-via: #0003;
18111
18107
  }
18112
18108
 
18113
18109
  @supports (color: color-mix(in lab, red, red)) {
18114
- .dark\:via-black\/20:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18110
+ .dark\:via-black\/20:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18115
18111
  --tw-gradient-via: color-mix(in oklab, var(--color-black) 20%, transparent);
18116
18112
  }
18117
18113
  }
18118
18114
 
18119
- .dark\:via-black\/20:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18115
+ .dark\:via-black\/20:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18120
18116
  --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
18121
18117
  --tw-gradient-stops: var(--tw-gradient-via-stops);
18122
18118
  }
@@ -18138,17 +18134,17 @@
18138
18134
  }
18139
18135
  }
18140
18136
 
18141
- .dark\:via-black\/30:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18137
+ .dark\:via-black\/30:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18142
18138
  --tw-gradient-via: #0000004d;
18143
18139
  }
18144
18140
 
18145
18141
  @supports (color: color-mix(in lab, red, red)) {
18146
- .dark\:via-black\/30:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18142
+ .dark\:via-black\/30:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18147
18143
  --tw-gradient-via: color-mix(in oklab, var(--color-black) 30%, transparent);
18148
18144
  }
18149
18145
  }
18150
18146
 
18151
- .dark\:via-black\/30:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18147
+ .dark\:via-black\/30:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18152
18148
  --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
18153
18149
  --tw-gradient-stops: var(--tw-gradient-via-stops);
18154
18150
  }
@@ -18170,17 +18166,17 @@
18170
18166
  }
18171
18167
  }
18172
18168
 
18173
- .dark\:to-black\/40:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18169
+ .dark\:to-black\/40:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18174
18170
  --tw-gradient-to: #0006;
18175
18171
  }
18176
18172
 
18177
18173
  @supports (color: color-mix(in lab, red, red)) {
18178
- .dark\:to-black\/40:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18174
+ .dark\:to-black\/40:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18179
18175
  --tw-gradient-to: color-mix(in oklab, var(--color-black) 40%, transparent);
18180
18176
  }
18181
18177
  }
18182
18178
 
18183
- .dark\:to-black\/40:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18179
+ .dark\:to-black\/40:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18184
18180
  --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
18185
18181
  }
18186
18182
 
@@ -18200,17 +18196,17 @@
18200
18196
  }
18201
18197
  }
18202
18198
 
18203
- .dark\:to-black\/55:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18199
+ .dark\:to-black\/55:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18204
18200
  --tw-gradient-to: #0000008c;
18205
18201
  }
18206
18202
 
18207
18203
  @supports (color: color-mix(in lab, red, red)) {
18208
- .dark\:to-black\/55:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18204
+ .dark\:to-black\/55:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18209
18205
  --tw-gradient-to: color-mix(in oklab, var(--color-black) 55%, transparent);
18210
18206
  }
18211
18207
  }
18212
18208
 
18213
- .dark\:to-black\/55:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18209
+ .dark\:to-black\/55:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18214
18210
  --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
18215
18211
  }
18216
18212
 
@@ -18230,7 +18226,7 @@
18230
18226
  }
18231
18227
  }
18232
18228
 
18233
- .dark\:text-\[\#58B0D5\]:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18229
+ .dark\:text-\[\#58B0D5\]:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18234
18230
  color: #58b0d5;
18235
18231
  }
18236
18232
 
@@ -18240,7 +18236,7 @@
18240
18236
  }
18241
18237
  }
18242
18238
 
18243
- .dark\:text-\[\#c7daef\]:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18239
+ .dark\:text-\[\#c7daef\]:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18244
18240
  color: #c7daef;
18245
18241
  }
18246
18242
 
@@ -18250,7 +18246,7 @@
18250
18246
  }
18251
18247
  }
18252
18248
 
18253
- .dark\:text-\[\#cb5775\]:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18249
+ .dark\:text-\[\#cb5775\]:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18254
18250
  color: #cb5775;
18255
18251
  }
18256
18252
 
@@ -18260,7 +18256,7 @@
18260
18256
  }
18261
18257
  }
18262
18258
 
18263
- .dark\:text-\[\#face15\]:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18259
+ .dark\:text-\[\#face15\]:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18264
18260
  color: #face15;
18265
18261
  }
18266
18262
 
@@ -18270,7 +18266,7 @@
18270
18266
  }
18271
18267
  }
18272
18268
 
18273
- .dark\:opacity-10:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18269
+ .dark\:opacity-10:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18274
18270
  opacity: .1;
18275
18271
  }
18276
18272
 
@@ -18280,7 +18276,7 @@
18280
18276
  }
18281
18277
  }
18282
18278
 
18283
- .dark\:opacity-20:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18279
+ .dark\:opacity-20:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18284
18280
  opacity: .2;
18285
18281
  }
18286
18282
 
@@ -18290,7 +18286,7 @@
18290
18286
  }
18291
18287
  }
18292
18288
 
18293
- .dark\:opacity-70:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18289
+ .dark\:opacity-70:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18294
18290
  opacity: .7;
18295
18291
  }
18296
18292
 
@@ -18300,7 +18296,7 @@
18300
18296
  }
18301
18297
  }
18302
18298
 
18303
- .dark\:opacity-\[0\.12\]:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18299
+ .dark\:opacity-\[0\.12\]:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18304
18300
  opacity: .12;
18305
18301
  }
18306
18302
 
@@ -18310,7 +18306,7 @@
18310
18306
  }
18311
18307
  }
18312
18308
 
18313
- .dark\:mix-blend-soft-light:is(.dark, .dark :not(:is(.light *, [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is(.light *, [data-theme="light"] *))) {
18309
+ .dark\:mix-blend-soft-light:is(.dark, .dark :not(:is(.dark .light *, .dark [data-theme="light"] *)), [data-theme="dark"], [data-theme="dark"] :not(:is([data-theme="dark"] .light *, [data-theme="dark"] [data-theme="light"] *))) {
18314
18310
  mix-blend-mode: soft-light;
18315
18311
  }
18316
18312
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "karin-plugin-kkk",
3
- "version": "2.31.2",
3
+ "version": "2.32.1",
4
4
  "description": "Karin 的「抖音」「B 站」视频解析/动态推送插件",
5
5
  "keywords": [
6
6
  "karin-plugin",
@@ -89,5 +89,5 @@
89
89
  "web": "./lib/web.config.js",
90
90
  "ts-web": "./src/web.config.ts"
91
91
  },
92
- "timestamp": "2026-05-27T05:41:42.732Z"
92
+ "timestamp": "2026-05-27T07:37:49.656Z"
93
93
  }