@lark-apaas/coding-steering 0.1.18-dev.e2d9278 → 0.1.18-dev.ec88bb5

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.
Files changed (31) hide show
  1. package/README.md +19 -21
  2. package/package.json +1 -1
  3. package/steering/design-html/skills/animated-video/SKILL.md +2 -2
  4. package/steering/design-html/skills/charts/SKILL.md +48 -7
  5. package/steering/design-html/skills/{data-report → data-viz}/SKILL.md +65 -9
  6. package/steering/design-html/skills/frontend-design/SKILL.md +2 -2
  7. package/steering/design-html/skills/interactive-prototype/SKILL.md +35 -2
  8. package/steering/design-html/skills/mini-game/SKILL.md +71 -0
  9. package/steering/design-html/skills/mini-game/references/three-js.md +54 -0
  10. package/steering/design-html/skills/pptx-style-extract/SKILL.md +112 -0
  11. package/steering/design-html/skills/pptx-style-extract/font-fallback.yaml +129 -0
  12. package/steering/design-html/skills/pptx-style-extract/scripts/census.py +955 -0
  13. package/steering/design-html/skills/pptx-style-extract/scripts/check_v2.py +907 -0
  14. package/steering/design-html/skills/pptx-style-extract/scripts/draft.py +945 -0
  15. package/steering/design-html/skills/pptx-style-extract/scripts/export_consumer_md.py +75 -0
  16. package/steering/design-html/skills/pptx-style-extract/scripts/export_consumer_zip.py +175 -0
  17. package/steering/design-html/skills/pptx-style-extract/scripts/extract.py +765 -0
  18. package/steering/design-html/skills/pptx-style-extract/scripts/ooxml.py +699 -0
  19. package/steering/design-html/skills/pptx-style-extract/scripts/package.py +1120 -0
  20. package/steering/design-html/skills/pptx-style-extract/scripts/parts.py +461 -0
  21. package/steering/design-html/skills/pptx-style-extract/scripts/query.py +562 -0
  22. package/steering/design-html/skills/pptx-style-extract/scripts/render_pages.py +679 -0
  23. package/steering/design-html/skills/pptx-style-extract/scripts/verify_font.py +68 -0
  24. package/steering/design-html/skills/pptx-style-extract/v2-format-spec.md +193 -0
  25. package/steering/design-html/skills/preflight/SKILL.md +51 -0
  26. package/steering/design-html/skills/preflight/scripts/probe.sh +108 -0
  27. package/steering/design-html/skills/slide-deck/SKILL.md +165 -0
  28. package/steering/design-html/skills/{visual-exposure → visual-report}/SKILL.md +24 -2
  29. package/steering/nestjs-react-fullstack/skills_common/trigger-guide/SKILL.md +180 -0
  30. package/steering/nestjs-react-fullstack/{skills/trigger-guide/SKILL.md → skills_common/trigger-guide/references/trigger-lifecycle.md} +11 -162
  31. package/steering/design-html/skills/make-a-deck/SKILL.md +0 -209
@@ -0,0 +1,129 @@
1
+ # 商业字体降级映射表(随 skill 分发,E5:初始 20+ 族)
2
+ #
3
+ # 消费方:L4 字体角色分配。直读本文件文本即可,不依赖 yaml 库。
4
+ # 命中 families[].match 中任一名字(含碎片化变体)→ 降级链写进 fontFamily 栈:
5
+ # 原始名留栈首,fallback 依序追加,末位永远可加系统兜底
6
+ # `"PingFang SC", "Microsoft YaHei", sans-serif`。
7
+ # 查无对应 → 按 dsm-v1-spec.md 的气质候选清单选近似体 + 记 gaps,不编造。
8
+ # 匹配纪律:先做字体名归一化聚类(中文名/拉丁名、weight 后缀剥离、31 字符截断),
9
+ # 再拿聚类后的 family 与 match 逐条比对(大小写不敏感、忽略空格/连字符)。
10
+
11
+ version: 2
12
+
13
+ # fallback 用到的 web 字体实测状态(镜像 https://miaoda.feishu.cn/fonts/css2)。
14
+ # verified: true = 该镜像已 curl 实测返回 @font-face(2026-08-06)。
15
+ # 状态过期不影响正确性:L4 对 verified 为 false 或存疑的字体按 dsm-v1-spec 字体条款
16
+ # 重新 curl 实测后再用,加载不到降到下一档。
17
+ web-fonts:
18
+ "Noto Sans SC": {verified: true}
19
+ "Noto Serif SC": {verified: true}
20
+ "ZCOOL XiaoWei": {verified: true}
21
+ "ZCOOL QingKe HuangYou": {verified: true}
22
+ "Ma Shan Zheng": {verified: true}
23
+ "Inter": {verified: true}
24
+ "Montserrat": {verified: true}
25
+ "Barlow": {verified: true}
26
+ "Jost": {verified: true}
27
+ "Nunito Sans": {verified: true}
28
+ "Roboto Condensed": {verified: true}
29
+ "Arial": {verified: system} # 系统字体,不走镜像
30
+
31
+ families:
32
+ # ---- 方正系 ----
33
+ - family: 方正兰亭黑
34
+ match: [方正兰亭黑Pro_GB18030, FZLanTingHeiPro, FZLanTingHeiPro_GB18030, FZLTHProS-R--GB1-0, FZLTHProS, 方正兰亭黑]
35
+ category: sans
36
+ fallback: ["Noto Sans SC"]
37
+ - family: 方正兰亭圆
38
+ match: [方正兰亭圆, FZLanTingYuan, FZLTYuanS]
39
+ category: rounded
40
+ fallback: ["ZCOOL XiaoWei", "Noto Sans SC"]
41
+ - family: 方正准圆
42
+ match: [方正准圆, FZZhunYuan, FZY3JW]
43
+ category: rounded
44
+ fallback: ["ZCOOL XiaoWei", "Noto Sans SC"]
45
+ - family: 方正书宋/宋体系
46
+ match: [方正书宋, FZShuSong, 方正宋体, FZSongS]
47
+ category: serif
48
+ fallback: ["Noto Serif SC"]
49
+
50
+ # ---- 汉仪系 ----
51
+ - family: 汉仪旗黑
52
+ match: [汉仪旗黑, HYQiHei, HYQiHeiX]
53
+ category: sans
54
+ fallback: ["Noto Sans SC"]
55
+ - family: 汉仪文黑
56
+ match: [汉仪文黑, HYWenHei]
57
+ category: sans
58
+ fallback: ["Noto Sans SC"]
59
+ - family: 汉仪菱心体
60
+ match: [汉仪菱心体, HYLingXin]
61
+ category: display
62
+ fallback: ["ZCOOL QingKe HuangYou", "Noto Sans SC"]
63
+ - family: 汉仪粗黑
64
+ match: [汉仪粗黑, HYCuHei]
65
+ category: display
66
+ fallback: ["Noto Sans SC"]
67
+ weight-hint: 900
68
+
69
+ # ---- 系统/厂商中文 ----
70
+ - family: 苹方
71
+ match: [苹方, PingFang SC, PingFangSC, 苹方-简]
72
+ category: sans
73
+ fallback: ["Noto Sans SC"]
74
+ - family: 微软雅黑
75
+ match: [微软雅黑, Microsoft YaHei, MicrosoftYaHei, 微软雅黑 UI]
76
+ category: sans
77
+ fallback: ["Noto Sans SC"]
78
+ - family: 等线
79
+ match: [等线, DengXian, 等线 Light, DengXian Light]
80
+ category: sans
81
+ fallback: ["Noto Sans SC"]
82
+ - family: 华文黑体
83
+ match: [华文黑体, STHeiti, 华文细黑, STXihei]
84
+ category: sans
85
+ fallback: ["Noto Sans SC"]
86
+ - family: 华文宋体/楷体
87
+ match: [华文宋体, STSong, 华文楷体, STKaiti, 楷体, KaiTi]
88
+ category: serif
89
+ fallback: ["Noto Serif SC"] # 手写楷气质另可选 Ma Shan Zheng,按场景判断
90
+ - family: 思源黑体
91
+ match: [思源黑体, Source Han Sans, Source Han Sans SC, SourceHanSansSC, 思源黑体 CN]
92
+ category: sans
93
+ fallback: ["Noto Sans SC"] # 同源设计,无损替换
94
+ - family: 思源宋体
95
+ match: [思源宋体, Source Han Serif, Source Han Serif SC, SourceHanSerifSC]
96
+ category: serif
97
+ fallback: ["Noto Serif SC"] # 同源设计,无损替换
98
+
99
+ # ---- 互联网厂商定制体 ----
100
+ - family: 阿里巴巴普惠体
101
+ match: [阿里巴巴普惠体, Alibaba PuHuiTi, AlibabaPuHuiTi]
102
+ category: sans
103
+ fallback: ["Noto Sans SC"]
104
+ - family: 字节跳动定制体
105
+ match: [Byte Sans, ByteDance Sans, Douyin Sans]
106
+ category: sans
107
+ fallback: ["Noto Sans SC"]
108
+ - family: 小米/OPPO/荣耀定制体
109
+ match: [MiSans, OPPO Sans, HarmonyOS Sans, HONOR Sans]
110
+ category: sans
111
+ fallback: ["Noto Sans SC"]
112
+
113
+ # ---- 拉丁商业体 ----
114
+ - family: Helvetica Neue
115
+ match: [Helvetica Neue, HelveticaNeue, Helvetica Neue Medium, Helvetica]
116
+ category: sans-latin
117
+ fallback: ["Inter", "Arial"]
118
+ - family: Gotham / Proxima Nova
119
+ match: [Gotham, Proxima Nova, ProximaNova]
120
+ category: sans-latin
121
+ fallback: ["Montserrat", "Inter"]
122
+ - family: DIN
123
+ match: [DIN, DIN Pro, DIN Next, FF DIN]
124
+ category: sans-latin
125
+ fallback: ["Barlow", "Roboto Condensed"]
126
+ - family: Futura / Avenir
127
+ match: [Futura, Avenir, Avenir Next]
128
+ category: sans-latin
129
+ fallback: ["Jost", "Nunito Sans"]