✨ New
- Comments — the emoji picker and GIF panel now speak your language (emoji-mart locale packs, 14 languages). The GIF panel opens on trending instead of a blank 300px box, and pressing Enter while searching GIFs no longer submits the comment form. Arabic comments mixing in URLs render in the right order (
dir="auto"). - One empty state everywhere — a shared
EmptyStatecomponent replaces antd's light cartoon illustrations. The 404 page and the "no results" state now offer a way out (Home / Community, clear filters) instead of a dead end. - Localized what used to be English-only for all 18 locales — antd pagination labels, comment timestamps, login/vote toasts, and a batch of
aria-labels. - Account & My Space fixes — level card no longer shows "06 / 05", the tag manager shows colour swatches instead of antd palette keys, deleting a prompt gets a proper danger button, and
/userno longer white-screens when signed out.
⚡ Faster
- The 5,022 prompt page shells are generated at build time instead of being tracked in git; dependencies slimmed, and CI now gates on
yarn typecheck. - dayjs dropped in favour of native
Intl.RelativeTimeFormat— 17 locale chunks gone, and plurals are more accurate (Arabic dual, Russian case forms). - antd and emoji-mart locale packs load on demand, scoped to the 18 shipped locales.
- In-flight dedup for community prompt fetches, keeping the 1h failure backoff.
🐛 Fixed
- Prompt cards are keyboard-operable (
role/tabIndex/Enter/Space) — the card entry point was unreachable for keyboard and screen-reader users. - Multi-line card text is no longer sliced mid-line: a flex item gets blockified, which silently kills
-webkit-line-clamp. - The copy button falls back to
execCommandwhen the native clipboard is unavailable, and its state reflects the real result. - Session lifecycle hardened against residue and cross-account leaks; favourite mutations are decided from authoritative auth state.
- Clearing the search box no longer stacks duplicate history entries.
- The prompt page sidebar stacks below the content until ≥992px — between 768 and 991px it was squeezed to ~170px, shredding FAQ answers.
- Sitemap
lastmodcomes from each card'sdateModified; the sitemap merge now fails loudly when a locale is missing instead of silently dropping it from search engines. - The legacy Google OAuth flow (
USE_LEGACY_GAUTH) is back — the browser extension reuses this API layer and has no page that can receive the Strapi redirect.
📦 Deps & docs
actions/setup-node6 → 7.- Store listings are now AI Short - AI Prompt Shortcuts; every store link was updated across 18 READMEs and the docs site. The Firefox guide was rewritten: the extension only requests
storage, so the old per-site permission step is gone.
✨ 新增
- 评论区 —— 表情选择器与 GIF 面板不再整版英文(接入 emoji-mart 官方语言包,14 种语言有译文);GIF 面板打开即铺热门,不再是 300px 空白;搜 GIF 按回车不会再误触发评论提交。阿拉伯语评论混入网址时行内顺序也修正了(
dir="auto")。 - 空状态全站统一 —— 新的
EmptyState组件替换掉 antd 自带的浅色卡通插画。404 页与「无结果」不再是死路,都给了可点的出口(首页 / 社区、清除筛选)。 - 补齐对 18 种语言一律发英文的文案 —— antd 分页、评论时间戳、登录与投票 toast,以及一批
aria-label。 - 账户与我的空间 —— 等级卡不再显示「06 / 05」,标签管理器改用色块而非 antd 调色板 key,删除提示词换成 danger 按钮,未登录访问
/user不再白屏。
⚡ 提速
- 5022 个提示词页薄壳改为构建时生成、不再入库;依赖瘦身,CI 增加
yarn typecheck门禁。 - 移除 dayjs,改用原生
Intl.RelativeTimeFormat:少了 17 个语言包 chunk,复数形态还更准(阿语双数、俄语按数取词形)。 - antd 与 emoji-mart 语言包按需加载,且限定在实际发布的 18 种语言内。
- 社区提示词请求加入在途去重,保留 1 小时失败退避。
🐛 修复
- 提示词卡片可键盘操作(
role/tabIndex/Enter/Space)—— 此前键盘与读屏用户完全够不到这个入口。 - 卡片多行文本不再被从中间切断:flex 子项会被 blockify,
-webkit-line-clamp因此静默失效。 - 复制按钮在原生剪贴板不可用时回退到
execCommand,按钮状态如实反映结果。 - 会话生命周期加固,消除登录残留与跨账号泄漏;收藏操作改由权威登录态判定。
- 清空搜索框不再向浏览器历史里塞重复记录。
- 提示词页侧栏在 992px 以下整块落到正文下方 —— 768~991px 时它只有约 170px 宽,FAQ 答案被压成窄条。
- 站点地图
lastmod改取卡片的dateModified;合并时缺语言直接报错,不再静默丢失(丢了搜索引擎就再也看不到那门语言)。 - 恢复 Google OAuth 旧流程(
USE_LEGACY_GAUTH)—— 浏览器扩展复用这份 api 层,它没有能承接 Strapi 重定向的页面。
📦 依赖与文档
actions/setup-node6 → 7。- 商店条目更名为 AI Short - AI Prompt Shortcuts,18 份 README 与文档站的商店链接全部更新。Firefox 文档整篇重写:扩展只申请
storage权限,旧的「逐站授权」步骤已不存在。
Firefox users: install from Firefox Add-ons — the attached packages are for Chrome / Edge.
Firefox 用户请从 Firefox Add-ons 安装,附件仅适用于 Chrome / Edge。