- 新增 miniapp/constants/profileLabels.js 作为「枚举码→中文简体」唯一字典 (婚姻/子女/学历/职业/吸烟饮酒/择偶子女/红娘状态),覆盖表单值与种子 实际值两套并集,保证详情页无论后端返回哪种码都显示中文 - 修复「择偶条件-子女」下拉英文选项(any/accept/reject→不限/可接受/不接受), 改用 value/label 数组 + range-key="label" - 修复 recommend-card / user-card / profile-detail / profile-confirm 直接渲染 后端枚举码(educationCode/maritalStatus/occupationCode…)的问题,改由 observers 派生中文 label 上屏 - 清理残留英文文案:Required 条件→必须符合的条件、喜欢TA/向Ta→喜欢对方/向对方、 U51 服务预约→服务预约、U64 公益服务记录→公益服务记录 - 修复 7 个英文窗口标题与 3 个英文占位页正文 - matchmaker 历史服务状态消除原始码兜底,统一走字典 - 加固 scripts/audit-miniapp-language.mjs(A 整行先剥离 mustache、B 排除 bind:action 处理器、F 窗口标题、JPG/PNG 入白名单) - 新增 ui-tests/miniapp-language-contracts.mjs 语种守卫(复用审计脚本,断言 0 命中), UI 契约门禁 MIN_GUARDS 21→22;已做负向注入验证判别力
76 lines
2.8 KiB
JavaScript
76 lines
2.8 KiB
JavaScript
/**
|
||
* 常量聚合入口(规范 §133 constants 目录)
|
||
*
|
||
* 统一存放 routeNames / statusEnums / permissionCodes / storageKeys / businessLimits,
|
||
* 不让状态字符串散落页面。
|
||
*/
|
||
|
||
const routeNames = require('./routeNames');
|
||
const statusEnums = require('./statusEnums');
|
||
const permissionCodes = require('./permissionCodes');
|
||
const storageKeys = require('./storageKeys');
|
||
const businessLimits = require('./businessLimits');
|
||
const profileLabels = require('./profileLabels');
|
||
|
||
module.exports = {
|
||
// 路由
|
||
ROUTE: routeNames,
|
||
TAB: routeNames.TAB,
|
||
AUTH: routeNames.AUTH,
|
||
ONBOARDING: routeNames.ONBOARDING,
|
||
ONBOARDING_STEPS: routeNames.ONBOARDING_STEPS,
|
||
REVIEW: routeNames.REVIEW,
|
||
MAIN: routeNames.MAIN,
|
||
SETTINGS: routeNames.SETTINGS,
|
||
DETAIL: routeNames.DETAIL,
|
||
OPERATOR: routeNames.OPERATOR,
|
||
buildPath: routeNames.buildPath,
|
||
to: routeNames.to,
|
||
|
||
// 状态枚举
|
||
PROFILE_COMPLETION: statusEnums.PROFILE_COMPLETION,
|
||
PROFILE_REVIEW: statusEnums.PROFILE_REVIEW,
|
||
ACCOUNT_STATUS: statusEnums.ACCOUNT_STATUS,
|
||
RELATIONSHIP_STATUS: statusEnums.RELATIONSHIP_STATUS,
|
||
RELATION_STATUS: statusEnums.RELATION_STATUS,
|
||
RECOMMENDATION_STATE: statusEnums.RECOMMENDATION_STATE,
|
||
ACTIVITY_STATUS: statusEnums.ACTIVITY_STATUS,
|
||
REGISTRATION_STATUS: statusEnums.REGISTRATION_STATUS,
|
||
CHECKIN_STATUS: statusEnums.CHECKIN_STATUS,
|
||
MATCHMAKER_SERVICE_STATUS: statusEnums.MATCHMAKER_SERVICE_STATUS,
|
||
MATCHMAKER_RECOMMENDATION_STATUS: statusEnums.MATCHMAKER_RECOMMENDATION_STATUS,
|
||
CHAT_CONNECTION: statusEnums.CHAT_CONNECTION,
|
||
MESSAGE_SEND_STATUS: statusEnums.MESSAGE_SEND_STATUS,
|
||
PHOTO_STATUS: statusEnums.PHOTO_STATUS,
|
||
CHAT_BUBBLE_TYPE: statusEnums.CHAT_BUBBLE_TYPE,
|
||
REQUEST_ERROR: statusEnums.REQUEST_ERROR,
|
||
BUSINESS_ERROR_CODE: statusEnums.BUSINESS_ERROR_CODE,
|
||
STATUS_BADGE: statusEnums.STATUS_BADGE,
|
||
DANGER_ACTION: statusEnums.DANGER_ACTION,
|
||
mapErrorMessage: statusEnums.mapErrorMessage,
|
||
|
||
// 权限
|
||
USER_PERMISSION: permissionCodes.USER_PERMISSION,
|
||
ADMIN_PERMISSION: permissionCodes.ADMIN_PERMISSION,
|
||
hasPermission: permissionCodes.hasPermission,
|
||
hasAnyPermission: permissionCodes.hasAnyPermission,
|
||
|
||
// 存储
|
||
STORAGE_KEYS: storageKeys.STORAGE_KEYS,
|
||
|
||
// 业务限制
|
||
BUSINESS_LIMITS: businessLimits.BUSINESS_LIMITS,
|
||
mergeAppConfig: businessLimits.mergeAppConfig,
|
||
|
||
// 资料/择偶枚举码 → 中文简体字典(界面不得出现英文枚举码)
|
||
PROFILE_LABELS: profileLabels,
|
||
profileLabelOf: profileLabels.labelOf,
|
||
yesNoLabel: profileLabels.yesNoLabel,
|
||
futureDanyangLabel: profileLabels.futureDanyangLabel,
|
||
MATCHMAKER_SERVICE_STATUS_LABEL: profileLabels.MATCHMAKER_SERVICE_STATUS_LABEL,
|
||
ACCEPT_CHILDREN_OPTIONS: profileLabels.ACCEPT_CHILDREN_OPTIONS,
|
||
MARITAL_OPTIONS: profileLabels.MARITAL_OPTIONS,
|
||
EDUCATION_OPTIONS: profileLabels.EDUCATION_OPTIONS,
|
||
OCCUPATION_OPTIONS: profileLabels.OCCUPATION_OPTIONS,
|
||
};
|