chore: App 名稱 Hey Mama → Dear Mama + 相關修復
- 品牌與顯示:app.json、Info.plist、package scheme、iOS 產物 DearMama.app - 協議與條款:隱私協議/使用條款全文、設計文檔、server legal_docs + legal API、push 預設 title - 多語言:all.json / zh-TW / zh-CN / en / es / pt 的 consent、widget 標題與引導文案 - 小工具:EmotionWidget.swift 品牌文案、Dear Mama.xcscheme - CocoaPods:project.pbxproj objectVersion 70→56 以通過 pod install - Metro:react-native-text-size 用 require + extraNodeModules 解析 - textWrap:measureWidthImpl 改為 require 載入 react-native-text-size Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -20,11 +20,12 @@ type TextSizeMeasureParams = {
|
||||
|
||||
type TextSizeMeasureResult = { width: number };
|
||||
|
||||
async function loadReactNativeTextSize(): Promise<{
|
||||
function loadReactNativeTextSize(): {
|
||||
measure: (params: TextSizeMeasureParams) => Promise<TextSizeMeasureResult>;
|
||||
}> {
|
||||
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
||||
const mod: any = await import('react-native-text-size');
|
||||
} {
|
||||
// 使用 require 确保 Metro 能解析并打包该原生模块(动态 import 在某些环境下无法被正确解析)
|
||||
// eslint-disable-next-line @typescript-eslint/no-require-imports, @typescript-eslint/no-explicit-any
|
||||
const mod: any = require('react-native-text-size');
|
||||
return mod?.default ?? mod;
|
||||
}
|
||||
|
||||
@@ -42,7 +43,7 @@ function toTextSizeFontSpecs(fontSpec: FontSpec): Pick<TextSizeMeasureParams, 'f
|
||||
* - usePreciseWidth=true,取更精确的宽度(开销更大,但对本算法更稳定)
|
||||
*/
|
||||
export const defaultMeasureWidthImpl: MeasureWidthImpl = async ({ text, fontSpec }) => {
|
||||
const TextSize = await loadReactNativeTextSize();
|
||||
const TextSize = loadReactNativeTextSize();
|
||||
if (!TextSize || typeof TextSize.measure !== 'function') {
|
||||
// 典型原因:在 Expo Go 中运行,或没有使用包含该原生模块的 Development Build。
|
||||
// 这里抛出更明确的错误,方便上层捕获并在 meta.reason=MEASURE_FAILED 时看到根因。
|
||||
|
||||
@@ -88,7 +88,7 @@
|
||||
"errorDesc": "It’s okay if enabling fails. You can keep using the app."
|
||||
},
|
||||
"home": {
|
||||
"title": "Hey Mama",
|
||||
"title": "Dear Mama",
|
||||
"like": "Like",
|
||||
"dislike": "Dislike",
|
||||
"favorites": "Favorites",
|
||||
@@ -127,7 +127,7 @@
|
||||
"homeScreen": "Home Screen Widget",
|
||||
"howToTitle": "How to add the widget",
|
||||
"howToDesc1": "Long-press on the Home Screen until the apps jiggle, then tap “+” in the top-left corner.",
|
||||
"howToDesc2": "Search “Hey Mama”, choose a widget size you like, then tap “Add Widget”.",
|
||||
"howToDesc2": "Search “Dear Mama”, choose a widget size you like, then tap “Add Widget”.",
|
||||
"previewDate": "Thu, Jan 29",
|
||||
"previewQuote": "I’m proud of who I am, even while becoming who I want to be."
|
||||
},
|
||||
@@ -141,10 +141,10 @@
|
||||
"language": "Language",
|
||||
"version": "Version",
|
||||
"widgetTitle": "iOS Widget",
|
||||
"widgetDesc": "Put gentle reminders on your home screen: long-press → tap “+” → search “Hey Mama” → add a size you like."
|
||||
"widgetDesc": "Put gentle reminders on your home screen: long-press → tap “+” → search “Dear Mama” → add a size you like."
|
||||
},
|
||||
"consent": {
|
||||
"title": "Hey mama.",
|
||||
"title": "Dear mama.",
|
||||
"subtitle": "You’re doing okay\nright now.",
|
||||
"subtitleSecondary": "",
|
||||
"agree": "Agree & Continue",
|
||||
@@ -260,7 +260,7 @@
|
||||
"errorDesc": "開啟失敗也沒關係,你仍然可以繼續使用應用。"
|
||||
},
|
||||
"home": {
|
||||
"title": "Hey Mama",
|
||||
"title": "Dear Mama",
|
||||
"like": "喜歡",
|
||||
"dislike": "不喜歡",
|
||||
"favorites": "收藏",
|
||||
@@ -299,7 +299,7 @@
|
||||
"homeScreen": "桌面小工具",
|
||||
"howToTitle": "如何加入小工具",
|
||||
"howToDesc1": "長按主畫面空白處進入編輯,點左上角「+」新增小工具。",
|
||||
"howToDesc2": "搜尋「Hey Mama」,選擇喜歡的尺寸,點「加入小工具」。",
|
||||
"howToDesc2": "搜尋「Dear Mama」,選擇喜歡的尺寸,點「加入小工具」。",
|
||||
"previewDate": "1月29日週四 · 已至臘月十一",
|
||||
"previewQuote": "我也對現在的自己感到滿意,即使我仍在努力成為想成為的人。"
|
||||
},
|
||||
@@ -313,7 +313,7 @@
|
||||
"language": "語言",
|
||||
"version": "版本",
|
||||
"widgetTitle": "iOS 小工具",
|
||||
"widgetDesc": "把溫柔提醒放到桌面上:長按主畫面 → 點「+」 → 搜尋「Hey Mama」 → 添加你喜歡的尺寸。"
|
||||
"widgetDesc": "把溫柔提醒放到桌面上:長按主畫面 → 點「+」 → 搜尋「Dear Mama」 → 添加你喜歡的尺寸。"
|
||||
},
|
||||
"consent": {
|
||||
"title": "我們知道,",
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
"errorDesc": "It’s okay if enabling fails. You can keep using the app."
|
||||
},
|
||||
"home": {
|
||||
"title": "Hey Mama",
|
||||
"title": "Dear Mama",
|
||||
"like": "Like",
|
||||
"dislike": "Dislike",
|
||||
"favorites": "Favorites",
|
||||
@@ -80,7 +80,7 @@
|
||||
"language": "Language",
|
||||
"version": "Version",
|
||||
"widgetTitle": "iOS Widget",
|
||||
"widgetDesc": "Put gentle reminders on your home screen: long-press → tap “+” → search “Hey Mama” → add a size you like."
|
||||
"widgetDesc": "Put gentle reminders on your home screen: long-press → tap “+” → search “Dear Mama” → add a size you like."
|
||||
},
|
||||
"consent": {
|
||||
"title": "You Are Perfect.",
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
"errorDesc": "No pasa nada si falla. Puedes seguir usando la app."
|
||||
},
|
||||
"home": {
|
||||
"title": "Hey Mama",
|
||||
"title": "Dear Mama",
|
||||
"like": "Me gusta",
|
||||
"dislike": "No me gusta",
|
||||
"favorites": "Favoritos",
|
||||
@@ -78,7 +78,7 @@
|
||||
"language": "Idioma",
|
||||
"version": "Versión",
|
||||
"widgetTitle": "Widget de iOS",
|
||||
"widgetDesc": "Pon recordatorios en tu pantalla: mantén pulsado → “+” → busca “Hey Mama” → añade el tamaño."
|
||||
"widgetDesc": "Pon recordatorios en tu pantalla: mantén pulsado → “+” → busca “Dear Mama” → añade el tamaño."
|
||||
},
|
||||
"consent": {
|
||||
"agree": "Aceptar y Continuar",
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
"errorDesc": "Tudo bem se falhar. Você pode continuar usando o app."
|
||||
},
|
||||
"home": {
|
||||
"title": "Hey Mama",
|
||||
"title": "Dear Mama",
|
||||
"like": "Curtir",
|
||||
"dislike": "Não curtir",
|
||||
"favorites": "Favoritos",
|
||||
@@ -78,7 +78,7 @@
|
||||
"language": "Idioma",
|
||||
"version": "Versão",
|
||||
"widgetTitle": "Widget do iOS",
|
||||
"widgetDesc": "Coloque lembretes na tela inicial: pressione e segure → “+” → procure “Hey Mama” → adicione o tamanho."
|
||||
"widgetDesc": "Coloque lembretes na tela inicial: pressione e segure → “+” → procure “Dear Mama” → adicione o tamanho."
|
||||
},
|
||||
"consent": {
|
||||
"agree": "Concordar e Continuar",
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
"errorDesc": "开启失败,请稍后重试(模拟器可能无法获取推送 Token,建议用真机测试)。"
|
||||
},
|
||||
"home": {
|
||||
"title": "Hey Mama",
|
||||
"title": "Dear Mama",
|
||||
"like": "点赞",
|
||||
"dislike": "讨厌",
|
||||
"favorites": "收藏",
|
||||
@@ -81,7 +81,7 @@
|
||||
"language": "语言",
|
||||
"version": "版本",
|
||||
"widgetTitle": "iOS 小组件",
|
||||
"widgetDesc": "把温柔提醒放到桌面上:长按主屏幕 → 点“+” → 搜索“Hey Mama” → 添加你喜欢的尺寸。"
|
||||
"widgetDesc": "把温柔提醒放到桌面上:长按主屏幕 → 点“+” → 搜索“Dear Mama” → 添加你喜欢的尺寸。"
|
||||
},
|
||||
"consent": {
|
||||
"title": "你本就完美。",
|
||||
|
||||
@@ -92,7 +92,7 @@
|
||||
"errorDesc": "開啟失敗也沒關係,你仍然可以繼續使用應用。"
|
||||
},
|
||||
"home": {
|
||||
"title": "Hey Mama",
|
||||
"title": "Dear Mama",
|
||||
"like": "喜歡",
|
||||
"dislike": "不喜歡",
|
||||
"favorites": "收藏",
|
||||
@@ -131,7 +131,7 @@
|
||||
"homeScreen": "桌面小工具",
|
||||
"howToTitle": "如何加入小工具",
|
||||
"howToDesc1": "長按主畫面空白處進入編輯,點左上角「+」新增小工具。",
|
||||
"howToDesc2": "搜尋「Hey Mama」,選擇喜歡的尺寸,點「加入小工具」。",
|
||||
"howToDesc2": "搜尋「Dear Mama」,選擇喜歡的尺寸,點「加入小工具」。",
|
||||
"previewDate": "1月29日週四 · 已至臘月十一",
|
||||
"previewQuote": "我也對現在的自己感到滿意,即使我仍在努力成為想成為的人。"
|
||||
},
|
||||
@@ -145,7 +145,7 @@
|
||||
"language": "語言",
|
||||
"version": "版本",
|
||||
"widgetTitle": "iOS 小工具",
|
||||
"widgetDesc": "把溫柔提醒放到桌面上:長按主畫面 → 點「+」 → 搜尋「Hey Mama」 → 添加你喜歡的尺寸。"
|
||||
"widgetDesc": "把溫柔提醒放到桌面上:長按主畫面 → 點「+」 → 搜尋「Dear Mama」 → 添加你喜歡的尺寸。"
|
||||
},
|
||||
"consent": {
|
||||
"title": "我們知道,",
|
||||
|
||||
Reference in New Issue
Block a user