@mooncellwiki/prts-design-vue 0.1.1 → 0.1.2

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.
@@ -1,5 +1,6 @@
1
1
  /**
2
- * 一条语音:播放钮(+ 下载钮)+ 标题行(语种徽标 / 解锁条件 / 编号)+ 台词。一般放在 AkVoiceList 里,跟列表的语种走。
2
+ * 一条语音:播放钮(+ 下载钮)+ 标题行(解锁条件 / 编号)+ 台词。一般放在 AkVoiceList 里,跟列表的语种走。
3
+ * 标题旁不再标语种:当前语种在上面的切换条里,每条再标一遍只是复读,而「方言」这类也没有靠谱的缩写。
3
4
  * 播放钮标 data-no-toggle:皮肤脚本会在 document 上替模板输出的纯 CSS 播放钮翻 is-playing(演示用),这里的 is-playing 跟真实播放状态走,
4
5
  * 不退出那层委托就会两边各翻一次(点一下在放但图标还是播放,再点停了图标却变成暂停)。
5
6
  */
@@ -14,7 +15,7 @@ type __VLS_Props = {
14
15
  code?: string;
15
16
  /** 游戏内解锁条件(提升至精英阶段1以查看),标题行里的灰标 */
16
17
  unlock?: string;
17
- /** 语种键:不在 AkVoiceList 里时用它取 text / src、显示徽标;在列表里时跟列表的 v-model */
18
+ /** 语种键:不在 AkVoiceList 里时用它取 text / src、标台词的 HTML lang;在列表里时跟列表的 v-model */
18
19
  lang?: string;
19
20
  /** 下载地址(现网是 torappu 的 wav):一个串,或按语种的对象(同 src);给了就在播放钮旁出一枚同款下载钮 */
20
21
  download?: string | Record<string, string>;
@@ -3,14 +3,14 @@ import { type VoiceLanguage, type VoiceText } from "./context";
3
3
  * 语音列表(= 现网 {{:xx/语音记录}} 的 VoiceTable):若干 AkVoice,外框 + 悬停行底色。
4
4
  * 上方最多两排切换条(.ak-voice-toolbar 里排一行,放不下时后一排整组换行):
5
5
  * - texts:文本(台词的语言),多选、可以一个都不选,v-model:shown-texts;AkVoice 的 text 按文本键给对象,选中的几种一种一行
6
- * - languages:语种(音频差分,普通话 / 方言 / 日 / 英 / 韩,带 CV 名),单选,v-model;AkVoice 的 src 按语种键给对象,徽标跟它
7
- * 只给 languages 时 AkVoice 的 text 也按语种给,切语种同时换台词、徽标和音频地址。
6
+ * - languages:语种(音频差分,普通话 / 方言 / 日 / 英 / 韩,带 CV 名),单选,v-model;AkVoice 的 src 按语种键给对象
7
+ * 只给 languages 时 AkVoice 的 text 也按语种给,切语种同时换台词和音频地址。
8
8
  * 当前语种 / 选中的文本经 provide 给子项;播放全页只有一条(见 player.ts)。
9
9
  * 切换条标 data-no-toggle:皮肤脚本会在 document 上替模板输出的纯 CSS 芯片翻 is-active / aria-pressed,这里的状态归 Vue 管,
10
10
  * 不退出那层委托就会两边各翻一次(点第二下反而取消选中)。
11
11
  */
12
12
  type __VLS_Props = {
13
- /** 语种选项 { value, label, badge?, cv? }(同 Naive 的 options);不给就没有语种切换条 */
13
+ /** 语种选项 { value, label, cv? }(同 Naive 的 options);不给就没有语种切换条 */
14
14
  languages?: VoiceLanguage[];
15
15
  /** 文本语言选项 { value, label };不给就没有文本切换条,台词跟语种走 */
16
16
  texts?: VoiceText[];
@@ -5,8 +5,6 @@ export interface VoiceLanguage {
5
5
  value: string;
6
6
  /** 切换条上的名字(中文-普通话) */
7
7
  label: string;
8
- /** 条目标题旁的徽标(CN / 粤 / JP …);不写时是 value 的大写 */
9
- badge?: string;
10
8
  /** 配音演员(切换条上名字后的小字) */
11
9
  cv?: string;
12
10
  }
@@ -17,7 +15,7 @@ export interface VoiceText {
17
15
  /** 切换条上的名字 */
18
16
  label: string;
19
17
  }
20
- /** AkVoiceList 给 AkVoice 的:当前语种(及其徽标)、文本语言选项与选中的几种 */
18
+ /** AkVoiceList 给 AkVoice 的:当前语种、文本语言选项与选中的几种 */
21
19
  export declare const voiceListKey: InjectionKey<ComputedRef<{
22
20
  lang?: string;
23
21
  languages: readonly VoiceLanguage[];
package/dist/index.js CHANGED
@@ -4204,7 +4204,7 @@ var _hoisted_7$11 = {
4204
4204
  class: "ak-op-card__elite"
4205
4205
  };
4206
4206
  var _hoisted_8$9 = ["src", "alt"];
4207
- var _hoisted_9$6 = {
4207
+ var _hoisted_9$5 = {
4208
4208
  key: 2,
4209
4209
  class: "ak-op-card__badge"
4210
4210
  };
@@ -4280,7 +4280,7 @@ var AkOpCard_default = /* @__PURE__ */ defineComponent({
4280
4280
  src: __props.eliteIcon,
4281
4281
  alt: __props.elite === void 0 ? "" : `精英${CN[__props.elite]}`
4282
4282
  }, null, 8, _hoisted_8$9)])) : createCommentVNode("", true),
4283
- _ctx.$slots.badge ? (openBlock(), createElementBlock("span", _hoisted_9$6, [renderSlot(_ctx.$slots, "badge")])) : createCommentVNode("", true)
4283
+ _ctx.$slots.badge ? (openBlock(), createElementBlock("span", _hoisted_9$5, [renderSlot(_ctx.$slots, "badge")])) : createCommentVNode("", true)
4284
4284
  ]), createElementVNode("span", _hoisted_10$4, [createTextVNode(toDisplayString(__props.name), 1), __props.sub ? (openBlock(), createElementBlock("span", _hoisted_11$4, toDisplayString(__props.sub), 1)) : createCommentVNode("", true)])]),
4285
4285
  _: 3
4286
4286
  }, 8, [
@@ -4630,7 +4630,7 @@ var _hoisted_6$10 = {
4630
4630
  };
4631
4631
  var _hoisted_7$10 = { key: 0 };
4632
4632
  var _hoisted_8$8 = { key: 1 };
4633
- var _hoisted_9$5 = { key: 2 };
4633
+ var _hoisted_9$4 = { key: 2 };
4634
4634
  var _hoisted_10$3 = {
4635
4635
  key: 0,
4636
4636
  class: "ak-skill__aside"
@@ -4705,7 +4705,7 @@ var AkSkill_default = /* @__PURE__ */ defineComponent({
4705
4705
  kind: "init",
4706
4706
  value: __props.init
4707
4707
  }, null, 8, ["value"])])) : createCommentVNode("", true),
4708
- __props.duration !== void 0 ? (openBlock(), createElementBlock("span", _hoisted_9$5, [_cache[0] || (_cache[0] = createTextVNode("持续 ", -1)), createElementVNode("b", null, toDisplayString(durationText.value), 1)])) : createCommentVNode("", true)
4708
+ __props.duration !== void 0 ? (openBlock(), createElementBlock("span", _hoisted_9$4, [_cache[0] || (_cache[0] = createTextVNode("持续 ", -1)), createElementVNode("b", null, toDisplayString(durationText.value), 1)])) : createCommentVNode("", true)
4709
4709
  ])) : createCommentVNode("", true)]),
4710
4710
  wide.value ? (openBlock(), createElementBlock("div", _hoisted_10$3, [__props.unlock ? (openBlock(), createElementBlock("span", _hoisted_11$3, [__props.unlockIcon ? (openBlock(), createElementBlock("img", {
4711
4711
  key: 0,
@@ -4841,7 +4841,7 @@ var _hoisted_5$11 = {
4841
4841
  var _hoisted_6$9 = ["aria-current"];
4842
4842
  var _hoisted_7$9 = { class: "lv" };
4843
4843
  var _hoisted_8$7 = { class: "desc" };
4844
- var _hoisted_9$4 = ["textContent"];
4844
+ var _hoisted_9$3 = ["textContent"];
4845
4845
  var _hoisted_10$2 = ["textContent"];
4846
4846
  var _hoisted_11$2 = ["textContent"];
4847
4847
  var _hoisted_12$2 = {
@@ -4918,7 +4918,7 @@ var AkSkillSheet_default = /* @__PURE__ */ defineComponent({
4918
4918
  createElementVNode("td", {
4919
4919
  class: "num",
4920
4920
  textContent: toDisplayString(num(row.init))
4921
- }, null, 8, _hoisted_9$4),
4921
+ }, null, 8, _hoisted_9$3),
4922
4922
  createElementVNode("td", {
4923
4923
  class: "num",
4924
4924
  textContent: toDisplayString(num(row.cost))
@@ -5117,7 +5117,7 @@ var _hoisted_6$7 = {
5117
5117
  };
5118
5118
  var _hoisted_7$7 = ["rowspan"];
5119
5119
  var _hoisted_8$5 = { class: "cond" };
5120
- var _hoisted_9$3 = { class: "desc" };
5120
+ var _hoisted_9$2 = { class: "desc" };
5121
5121
  var _hoisted_10$1 = { class: "ak-talent-table__base" };
5122
5122
  var _hoisted_11$1 = { class: "ak-talent-table__pot" };
5123
5123
  var _hoisted_12$1 = { key: 0 };
@@ -5223,7 +5223,7 @@ var AkTalentTable_default = /* @__PURE__ */ defineComponent({
5223
5223
  row,
5224
5224
  index: i
5225
5225
  }, () => [createTextVNode(toDisplayString(row.condition), 1)])]),
5226
- createElementVNode("td", _hoisted_9$3, [row.potential !== void 0 ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [createElementVNode("span", _hoisted_10$1, [renderSlot(_ctx.$slots, "description", {
5226
+ createElementVNode("td", _hoisted_9$2, [row.potential !== void 0 ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [createElementVNode("span", _hoisted_10$1, [renderSlot(_ctx.$slots, "description", {
5227
5227
  row,
5228
5228
  index: i,
5229
5229
  potential: false
@@ -5507,7 +5507,7 @@ var _hoisted_5$8 = {
5507
5507
  var _hoisted_6$6 = ["src"];
5508
5508
  var _hoisted_7$6 = { class: "ak-module__name" };
5509
5509
  var _hoisted_8$4 = ["data-ak-tip"];
5510
- var _hoisted_9$2 = ["id"];
5510
+ var _hoisted_9$1 = ["id"];
5511
5511
  var _hoisted_10 = {
5512
5512
  key: 1,
5513
5513
  class: "ak-module__more"
@@ -5591,7 +5591,7 @@ var AkModule_default = /* @__PURE__ */ defineComponent({
5591
5591
  key: 0,
5592
5592
  id: `${unref(id)}-story`,
5593
5593
  class: "ak-module__story"
5594
- }, [renderSlot(_ctx.$slots, "default")], 8, _hoisted_9$2)) : createCommentVNode("", true),
5594
+ }, [renderSlot(_ctx.$slots, "default")], 8, _hoisted_9$1)) : createCommentVNode("", true),
5595
5595
  __props.collapsible && _ctx.$slots.default ? (openBlock(), createElementBlock("label", _hoisted_10, [
5596
5596
  withDirectives(createElementVNode("input", {
5597
5597
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => open.value = $event),
@@ -5689,7 +5689,7 @@ var AkModuleUnlock_default = /* @__PURE__ */ defineComponent({
5689
5689
  });
5690
5690
  //#endregion
5691
5691
  //#region src/components/Voice/context.ts
5692
- /** AkVoiceList 给 AkVoice 的:当前语种(及其徽标)、文本语言选项与选中的几种 */
5692
+ /** AkVoiceList 给 AkVoice 的:当前语种、文本语言选项与选中的几种 */
5693
5693
  var voiceListKey = Symbol("AkVoiceList");
5694
5694
  /** 游戏语种键 → HTML lang(读屏按语种发音);不认识的键不写 lang */
5695
5695
  var HTML_LANG = {
@@ -5713,7 +5713,7 @@ var _hoisted_5$6 = ["aria-labelledby"];
5713
5713
  var _hoisted_6$4 = ["id"];
5714
5714
  var _hoisted_7$4 = ["aria-pressed", "onClick"];
5715
5715
  var _hoisted_8$3 = { key: 0 };
5716
- var _hoisted_9$1 = { class: "ak-voice-list ak-not-prose" };
5716
+ var _hoisted_9 = { class: "ak-voice-list ak-not-prose" };
5717
5717
  //#endregion
5718
5718
  //#region src/components/Voice/AkVoiceList.vue
5719
5719
  var AkVoiceList_default = /* @__PURE__ */ defineComponent({
@@ -5784,7 +5784,7 @@ var AkVoiceList_default = /* @__PURE__ */ defineComponent({
5784
5784
  }, [createTextVNode(toDisplayString(l.label), 1), l.cv ? (openBlock(), createElementBlock("small", _hoisted_8$3, toDisplayString(l.cv), 1)) : createCommentVNode("", true)], 10, _hoisted_7$4);
5785
5785
  }), 128)),
5786
5786
  renderSlot(_ctx.$slots, "header-extra")
5787
- ], 8, _hoisted_5$6)) : createCommentVNode("", true)])) : createCommentVNode("", true), createElementVNode("div", _hoisted_9$1, [renderSlot(_ctx.$slots, "default")])]);
5787
+ ], 8, _hoisted_5$6)) : createCommentVNode("", true)])) : createCommentVNode("", true), createElementVNode("div", _hoisted_9, [renderSlot(_ctx.$slots, "default")])]);
5788
5788
  };
5789
5789
  }
5790
5790
  });
@@ -5832,22 +5832,18 @@ var _hoisted_3$7 = [
5832
5832
  var _hoisted_4$6 = { class: "ak-voice__title" };
5833
5833
  var _hoisted_5$5 = {
5834
5834
  key: 0,
5835
- class: "ak-voice__lang"
5835
+ class: "ak-voice__cond"
5836
5836
  };
5837
5837
  var _hoisted_6$3 = {
5838
5838
  key: 1,
5839
- class: "ak-voice__cond"
5839
+ class: "ak-code-id"
5840
5840
  };
5841
5841
  var _hoisted_7$3 = {
5842
5842
  key: 2,
5843
- class: "ak-code-id"
5844
- };
5845
- var _hoisted_8$2 = {
5846
- key: 3,
5847
5843
  class: "ak-voice__wave",
5848
5844
  "aria-hidden": "true"
5849
5845
  };
5850
- var _hoisted_9 = ["lang"];
5846
+ var _hoisted_8$2 = ["lang"];
5851
5847
  //#endregion
5852
5848
  //#region src/components/Voice/AkVoice.vue
5853
5849
  var AkVoice_default = /* @__PURE__ */ defineComponent({
@@ -5877,10 +5873,6 @@ var AkVoice_default = /* @__PURE__ */ defineComponent({
5877
5873
  });
5878
5874
  const src = computed(() => pick(props.src));
5879
5875
  const download = computed(() => pick(props.download));
5880
- const badge = computed(() => {
5881
- const k = lang.value;
5882
- return k && (list?.value.languages.find((l) => l.value === k)?.badge ?? k.toUpperCase());
5883
- });
5884
5876
  const id = Symbol("AkVoice");
5885
5877
  const isPlaying = computed(() => playing.value === id);
5886
5878
  onBeforeUnmount(() => isPlaying.value && stop());
@@ -5911,16 +5903,15 @@ var AkVoice_default = /* @__PURE__ */ defineComponent({
5911
5903
  })], 8, _hoisted_3$7)) : createCommentVNode("", true),
5912
5904
  createElementVNode("div", null, [createElementVNode("div", _hoisted_4$6, [
5913
5905
  createTextVNode(toDisplayString(__props.title) + " ", 1),
5914
- badge.value ? (openBlock(), createElementBlock("span", _hoisted_5$5, toDisplayString(badge.value), 1)) : createCommentVNode("", true),
5915
- __props.unlock ? (openBlock(), createElementBlock("span", _hoisted_6$3, toDisplayString(__props.unlock), 1)) : createCommentVNode("", true),
5916
- __props.code ? (openBlock(), createElementBlock("span", _hoisted_7$3, toDisplayString(__props.code), 1)) : createCommentVNode("", true),
5917
- isPlaying.value ? (openBlock(), createElementBlock("span", _hoisted_8$2, [(openBlock(), createElementBlock(Fragment, null, renderList(5, (n) => {
5906
+ __props.unlock ? (openBlock(), createElementBlock("span", _hoisted_5$5, toDisplayString(__props.unlock), 1)) : createCommentVNode("", true),
5907
+ __props.code ? (openBlock(), createElementBlock("span", _hoisted_6$3, toDisplayString(__props.code), 1)) : createCommentVNode("", true),
5908
+ isPlaying.value ? (openBlock(), createElementBlock("span", _hoisted_7$3, [(openBlock(), createElementBlock(Fragment, null, renderList(5, (n) => {
5918
5909
  return createElementVNode("i", { key: n });
5919
5910
  }), 64))])) : createCommentVNode("", true)
5920
5911
  ]), createElementVNode("div", {
5921
5912
  class: "ak-voice__text",
5922
5913
  lang: lang.value && unref(HTML_LANG)[lang.value]
5923
- }, toDisplayString(text.value), 9, _hoisted_9)])
5914
+ }, toDisplayString(text.value), 9, _hoisted_8$2)])
5924
5915
  ]);
5925
5916
  };
5926
5917
  }