From 61fc0ff25f7f00f31e365181b6005b04f0dadbb2 Mon Sep 17 00:00:00 2001 From: hanyuxinting Date: Mon, 14 Apr 2025 22:22:26 +0800 Subject: [PATCH 1/4] feat: configprovider --- src/locales/base.ts | 141 ----------------- src/locales/en-US.ts | 4 +- src/locales/id-ID.ts | 4 +- src/locales/tr-TR.ts | 4 +- src/locales/zh-CN.ts | 4 +- src/locales/zh-TW.ts | 4 +- src/locales/zh-UG.ts | 4 +- .../configprovider/configprovider.taro.tsx | 29 ++-- .../configprovider/configprovider.tsx | 29 ++-- src/packages/configprovider/index.taro.ts | 6 +- src/packages/configprovider/index.ts | 6 +- src/types/base/locales.ts | 144 +++++++++++++++++- src/types/spec/configprovider/base.ts | 9 +- src/types/spec/configprovider/h5.ts | 4 +- src/types/spec/configprovider/taro.ts | 4 +- 15 files changed, 193 insertions(+), 203 deletions(-) delete mode 100644 src/locales/base.ts diff --git a/src/locales/base.ts b/src/locales/base.ts deleted file mode 100644 index bc4e0010c5..0000000000 --- a/src/locales/base.ts +++ /dev/null @@ -1,141 +0,0 @@ -export interface BaseLang { - save: string - confirm: string - cancel: string - done: string - noData: string - placeholder: string - select: string - edit: string - reset: string - video: { - errorTip: string - clickRetry: string - } - fixednav: { - activeText: string - inactiveText: string - } - infiniteloading: { - pullRefreshText: string - loadText: string - loadMoreText: string - } - pagination: { - prev: string - next: string - } - range: { - rangeText: string - } - calendaritem: { - weekdays: Array - end: string - start: string - confirm: string - title: string - // eslint-disable-next-line @typescript-eslint/ban-types - monthTitle: Function - today: string - loadPreviousMonth: string - noEarlierMonth: string - } - shortpassword: { - title: string - description: string - tips: string - } - uploader: { - list: string - ready: string - readyUpload: string - waitingUpload: string - uploading: string - success: string - error: string - deleteWord: string - } - countdown: { - day: string - hour: string - minute: string - second: string - } - address: { - selectRegion: string - deliveryTo: string - chooseAnotherAddress: string - } - signature: { - reSign: string - unsupported: string - } - ecard: { - chooseText: string - otherValueText: string - placeholder: string - } - timeselect: { - pickupTime: string - } - sku: { - buyNow: string - buyNumber: string - addToCard: string - } - skuheader: { - skuId: string - } - addresslist: { - addAddress: string - } - comment: { - complaintsText: string - // eslint-disable-next-line @typescript-eslint/ban-types - additionalReview: Function - // eslint-disable-next-line @typescript-eslint/ban-types - additionalImages: Function - } - searchbar: { - basePlaceholder: string - text: string - test: string - title1: string - title2: string - title3: string - title4: string - title5: string - title6: string - } - audio: { - back: string - forward: string - pause: string - start: string - mute: string - tips: string - } - avatarCropper: { rotate: string; selectImage: string } - datepicker: { - year: string - month: string - day: string - hour: string - min: string - seconds: string - } - pullToRefresh: { - pullingText: string - canReleaseText: string - refreshingText: string - completeText: string - } - tour: { - prevStepText: string - completeText: string - nextStepText: string - } - watermark: { - errorCanvasTips: string - } -} diff --git a/src/locales/en-US.ts b/src/locales/en-US.ts index e812d330ae..c4ff0daac8 100644 --- a/src/locales/en-US.ts +++ b/src/locales/en-US.ts @@ -1,6 +1,6 @@ -import { BaseLang } from './base' +import { Locales } from '@/types' -const enUS: BaseLang = { +const enUS: Locales = { save: 'Save', confirm: 'Confirm', cancel: 'Cancel', diff --git a/src/locales/id-ID.ts b/src/locales/id-ID.ts index 7ba1328ad0..8977f2db55 100644 --- a/src/locales/id-ID.ts +++ b/src/locales/id-ID.ts @@ -1,6 +1,6 @@ -import { BaseLang } from './base' +import { Locales } from '@/types' -const idID: BaseLang = { +const idID: Locales = { save: 'Simpan', confirm: 'Konfirmasi', cancel: 'Batal', diff --git a/src/locales/tr-TR.ts b/src/locales/tr-TR.ts index cc13028177..2f87d1c00f 100644 --- a/src/locales/tr-TR.ts +++ b/src/locales/tr-TR.ts @@ -1,6 +1,6 @@ -import { BaseLang } from './base' +import { Locales } from '@/types' -const trTR: BaseLang = { +const trTR: Locales = { save: 'Kaydet', confirm: 'Onayla', cancel: 'İptal', diff --git a/src/locales/zh-CN.ts b/src/locales/zh-CN.ts index 896064def4..da3ab5ff36 100644 --- a/src/locales/zh-CN.ts +++ b/src/locales/zh-CN.ts @@ -1,6 +1,6 @@ -import { BaseLang } from './base' +import { Locales } from '@/types' -const zhCN: BaseLang = { +const zhCN: Locales = { save: '保存', confirm: '确认', cancel: '取消', diff --git a/src/locales/zh-TW.ts b/src/locales/zh-TW.ts index 1aff33151e..ee6da7ebc4 100644 --- a/src/locales/zh-TW.ts +++ b/src/locales/zh-TW.ts @@ -1,6 +1,6 @@ -import { BaseLang } from './base' +import { Locales } from '@/types' -const zhCN: BaseLang = { +const zhCN: Locales = { save: '保存', confirm: '確認', cancel: '取消', diff --git a/src/locales/zh-UG.ts b/src/locales/zh-UG.ts index 62dc80c998..15da698ed4 100644 --- a/src/locales/zh-UG.ts +++ b/src/locales/zh-UG.ts @@ -1,6 +1,6 @@ -import { BaseLang } from './base' +import { Locales } from '@/types' -const zhUG: BaseLang = { +const zhUG: Locales = { save: 'ساقلاش', confirm: 'ھەئە', cancel: 'ياق', diff --git a/src/packages/configprovider/configprovider.taro.tsx b/src/packages/configprovider/configprovider.taro.tsx index c7d83aed57..bf470ded91 100644 --- a/src/packages/configprovider/configprovider.taro.tsx +++ b/src/packages/configprovider/configprovider.taro.tsx @@ -4,23 +4,12 @@ import kebabCase from 'lodash.kebabcase' import isEqual from 'react-fast-compare' import { View } from '@tarojs/components' import { useMemo } from '@/hooks/use-memo' -import { BasicComponent } from '@/utils/typings' -import { BaseLang } from '@/locales/base' import zhCN from '@/locales/zh-CN' -import type { NutCSSVariables } from './types' - -export interface ConfigProviderProps extends BasicComponent { - locale: BaseLang - direction?: ConfigProviderDirection - theme?: Record -} - -export type ConfigProviderDirection = 'ltr' | 'rtl' | undefined - -const classPrefix = 'nut-configprovider' +import { TaroConfigProviderProps, Locales as LocalesType } from '@/types' +type Locales = Partial export const defaultConfigRef: { - current: ConfigProviderProps + current: TaroConfigProviderProps } = { current: { locale: zhCN, @@ -28,7 +17,7 @@ export const defaultConfigRef: { }, } -export const setDefaultConfig = (config: ConfigProviderProps) => { +export const setDefaultConfig = (config: TaroConfigProviderProps) => { defaultConfigRef.current = config } @@ -36,7 +25,9 @@ export const getDefaultConfig = () => { return defaultConfigRef.current } -const ConfigContext = createContext(null) +const ConfigContext = createContext | null>( + null +) export const useConfig = () => { return useContext(ConfigContext) ?? getDefaultConfig() @@ -56,10 +47,10 @@ export const useRtl = () => { } export const ConfigProvider: FunctionComponent< - Partial + Partial> > = (props) => { const { style, className, children, direction, ...config } = props - + const classPrefix = 'nut-configprovider' const mergedConfig = useMemo( () => { return { @@ -74,7 +65,7 @@ export const ConfigProvider: FunctionComponent< const nextTheme = next[index] return !isEqual(prevTheme, nextTheme) }) - ) as ConfigProviderProps + ) as TaroConfigProviderProps const cssVarStyle = React.useMemo(() => { return convertThemeVarsToCSSVars(mergedConfig.theme || {}) diff --git a/src/packages/configprovider/configprovider.tsx b/src/packages/configprovider/configprovider.tsx index 20397ae5a3..9fe6ddb843 100644 --- a/src/packages/configprovider/configprovider.tsx +++ b/src/packages/configprovider/configprovider.tsx @@ -3,31 +3,22 @@ import classNames from 'classnames' import kebabCase from 'lodash.kebabcase' import isEqual from 'react-fast-compare' import { useMemo } from '@/hooks/use-memo' -import { BasicComponent } from '@/utils/typings' -import { BaseLang } from '@/locales/base' import zhCN from '@/locales/zh-CN' -import type { NutCSSVariables } from './types' import { inBrowser } from '@/utils' +import { WebConfigProviderProps, Locales as LocalesType } from '@/types' -export interface ConfigProviderProps extends BasicComponent { - locale: BaseLang - direction?: ConfigProviderDirection - theme?: Record -} - -export type ConfigProviderDirection = 'ltr' | 'rtl' | undefined - -const classPrefix = 'nut-configprovider' +type Locales = Partial export const defaultConfigRef: { - current: ConfigProviderProps + current: WebConfigProviderProps } = { current: { locale: zhCN, + direction: 'ltr', }, } -export const setDefaultConfig = (config: ConfigProviderProps) => { +export const setDefaultConfig = (config: WebConfigProviderProps) => { defaultConfigRef.current = config } @@ -35,7 +26,9 @@ export const getDefaultConfig = () => { return defaultConfigRef.current } -const ConfigContext = createContext(null) +const ConfigContext = createContext | null>( + null +) export const useConfig = () => { return useContext(ConfigContext) ?? getDefaultConfig() @@ -58,10 +51,10 @@ export const useRtl = () => { } export const ConfigProvider: FunctionComponent< - Partial + Partial> > = (props) => { const { style, className, children, direction, ...config } = props - + const classPrefix = 'nut-configprovider' const mergedConfig = useMemo( () => { return { @@ -76,7 +69,7 @@ export const ConfigProvider: FunctionComponent< const nextTheme = next[index] return !isEqual(prevTheme, nextTheme) }) - ) as ConfigProviderProps + ) as WebConfigProviderProps const cssVarStyle = React.useMemo(() => { return convertThemeVarsToCSSVars(mergedConfig.theme || {}) diff --git a/src/packages/configprovider/index.taro.ts b/src/packages/configprovider/index.taro.ts index aae66d0c65..eb8d6ce30e 100644 --- a/src/packages/configprovider/index.taro.ts +++ b/src/packages/configprovider/index.taro.ts @@ -7,9 +7,9 @@ import { } from './configprovider.taro' export type { - ConfigProviderProps, - ConfigProviderDirection, -} from './configprovider.taro' + TaroConfigProviderProps, + PageDirection as ConfigProviderDirection, +} from '@/types' export type { NutCSSVariables } from './types' export { useConfig, setDefaultConfig, getDefaultConfig, useRtl } export default ConfigProvider diff --git a/src/packages/configprovider/index.ts b/src/packages/configprovider/index.ts index 7856781ec0..87ca5cf63b 100644 --- a/src/packages/configprovider/index.ts +++ b/src/packages/configprovider/index.ts @@ -7,9 +7,9 @@ import { } from './configprovider' export type { - ConfigProviderProps, - ConfigProviderDirection, -} from './configprovider' + WebConfigProviderProps, + PageDirection as ConfigProviderDirection, +} from '@/types' export type { NutCSSVariables } from './types' export { useConfig, setDefaultConfig, getDefaultConfig, useRtl } export default ConfigProvider diff --git a/src/types/base/locales.ts b/src/types/base/locales.ts index a8e7e18b94..1a88493902 100644 --- a/src/types/base/locales.ts +++ b/src/types/base/locales.ts @@ -1,4 +1,146 @@ export interface BaseLang { - [key: string]: string | BaseLang + [key: string]: string | object | BaseLang } export type PageDirection = 'ltr' | 'rtl' | undefined + +export interface Locales extends Partial { + save?: string + confirm?: string + cancel?: string + done?: string + noData?: string + placeholder?: string + select?: string + edit?: string + reset?: string + video?: { + errorTip: string + clickRetry: string + } + fixednav?: { + activeText: string + inactiveText: string + } + infiniteloading?: { + pullRefreshText: string + loadText: string + loadMoreText: string + } + pagination?: { + prev: string + next: string + } + range?: { + rangeText: string + } + calendaritem?: { + weekdays: Array + end: string + start: string + confirm: string + title: string + // eslint-disable-next-line @typescript-eslint/ban-types + monthTitle: Function + today: string + loadPreviousMonth: string + noEarlierMonth: string + } + shortpassword?: { + title: string + description: string + tips: string + } + uploader?: { + list: string + ready: string + readyUpload: string + waitingUpload: string + uploading: string + success: string + error: string + deleteWord: string + } + countdown?: { + day: string + hour: string + minute: string + second: string + } + address?: { + selectRegion: string + deliveryTo: string + chooseAnotherAddress: string + } + signature?: { + reSign: string + unsupported: string + } + ecard?: { + chooseText: string + otherValueText: string + placeholder: string + } + timeselect?: { + pickupTime: string + } + sku?: { + buyNow: string + buyNumber: string + addToCard: string + } + skuheader?: { + skuId: string + } + addresslist?: { + addAddress: string + } + comment?: { + complaintsText: string + // eslint-disable-next-line @typescript-eslint/ban-types + additionalReview: Function + // eslint-disable-next-line @typescript-eslint/ban-types + additionalImages: Function + } + searchbar?: { + basePlaceholder: string + text: string + test: string + title1: string + title2: string + title3: string + title4: string + title5: string + title6: string + } + audio?: { + back: string + forward: string + pause: string + start: string + mute: string + tips: string + } + avatarCropper?: { rotate: string; selectImage: string } + datepicker?: { + year: string + month: string + day: string + hour: string + min: string + seconds: string + } + pullToRefresh?: { + pullingText: string + canReleaseText: string + refreshingText: string + completeText: string + } + tour?: { + prevStepText: string + completeText: string + nextStepText: string + } + watermark?: { + errorCanvasTips: string + } +} diff --git a/src/types/spec/configprovider/base.ts b/src/types/spec/configprovider/base.ts index 1de9223b3d..58eb2e5a3c 100644 --- a/src/types/spec/configprovider/base.ts +++ b/src/types/spec/configprovider/base.ts @@ -1,8 +1,9 @@ import { BaseProps } from '../../base/props' -import { BaseLang, PageDirection } from '../../base/locales' +import { Locales, PageDirection } from '../../base/locales' -export interface BaseConfigProvider extends BaseProps { - locale: BaseLang +export interface BaseConfigProvider> + extends BaseProps { + locale: T direction: PageDirection - theme: Record + theme?: Record } diff --git a/src/types/spec/configprovider/h5.ts b/src/types/spec/configprovider/h5.ts index 61305cd1ca..d84efcd833 100644 --- a/src/types/spec/configprovider/h5.ts +++ b/src/types/spec/configprovider/h5.ts @@ -1,3 +1,5 @@ import { BaseConfigProvider } from './base' +import { Locales } from '../../base/locales' -export interface WebConfigProviderProps extends BaseConfigProvider {} +export interface WebConfigProviderProps + extends BaseConfigProvider {} diff --git a/src/types/spec/configprovider/taro.ts b/src/types/spec/configprovider/taro.ts index 13d3452ce4..7b1c43006e 100644 --- a/src/types/spec/configprovider/taro.ts +++ b/src/types/spec/configprovider/taro.ts @@ -1,3 +1,5 @@ import { BaseConfigProvider } from './base' +import { Locales } from '../../base/locales' -export interface TaroConfigProviderProps extends BaseConfigProvider {} +export interface TaroConfigProviderProps + extends BaseConfigProvider {} From ae764102de4fb929e9ecf3c2181c5d4a7662beea Mon Sep 17 00:00:00 2001 From: hanyuxinting Date: Mon, 14 Apr 2025 22:46:20 +0800 Subject: [PATCH 2/4] =?UTF-8?q?fix:=20=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/packages/address/address.taro.tsx | 4 ++-- src/packages/address/address.tsx | 4 ++-- src/packages/address/existRender.taro.tsx | 2 +- src/packages/address/existRender.tsx | 2 +- src/packages/audio/audio.taro.tsx | 10 ++++------ src/packages/audio/audio.tsx | 12 +++++------- src/packages/avatarcropper/avatarcropper.taro.tsx | 2 +- src/packages/avatarcropper/avatarcropper.tsx | 4 ++-- src/packages/calendar/calendar.taro.tsx | 8 ++++---- src/packages/calendar/calendar.tsx | 8 ++++---- src/packages/calendarcard/calendarcard.taro.tsx | 4 ++-- src/packages/calendarcard/calendarcard.tsx | 4 ++-- src/packages/calendaritem/calendaritem.taro.tsx | 12 ++++++------ src/packages/calendaritem/calendaritem.tsx | 12 ++++++------ src/packages/configprovider/index.taro.ts | 2 +- src/packages/configprovider/index.ts | 2 +- src/packages/datepicker/datepicker.taro.tsx | 9 ++++++++- src/packages/datepicker/datepicker.tsx | 9 ++++++++- src/packages/datepickerview/datepickerview.taro.tsx | 9 ++++++++- src/packages/datepickerview/datepickerview.tsx | 9 ++++++++- src/packages/fixednav/fixednav.taro.tsx | 4 ++-- src/packages/fixednav/fixednav.tsx | 4 ++-- .../infiniteloading/infiniteloading.taro.tsx | 6 +++--- src/packages/infiniteloading/infiniteloading.tsx | 6 +++--- src/packages/pagination/pagination.taro.tsx | 4 ++-- src/packages/pagination/pagination.tsx | 4 ++-- src/packages/pulltorefresh/pulltorefresh.taro.tsx | 8 ++++---- src/packages/pulltorefresh/pulltorefresh.tsx | 8 ++++---- src/packages/shortpassword/shortpassword.taro.tsx | 6 +++--- src/packages/shortpassword/shortpassword.tsx | 6 +++--- src/packages/signature/signature.tsx | 2 +- src/packages/timeselect/timeselect.taro.tsx | 2 +- src/packages/timeselect/timeselect.tsx | 2 +- src/packages/tour/tour.taro.tsx | 6 +++--- src/packages/tour/tour.tsx | 6 +++--- src/packages/uploader/uploader.taro.tsx | 12 ++++++------ src/packages/uploader/uploader.tsx | 12 ++++++------ src/packages/watermark/watermark.taro.tsx | 2 +- 38 files changed, 126 insertions(+), 102 deletions(-) diff --git a/src/packages/address/address.taro.tsx b/src/packages/address/address.taro.tsx index fef8a23fea..62830df070 100644 --- a/src/packages/address/address.taro.tsx +++ b/src/packages/address/address.taro.tsx @@ -131,7 +131,7 @@ const InternalAddress: ForwardRefRenderFunction<
- {(custom || (custom && locale.address.chooseAnotherAddress)) && ( + {(custom || (custom && locale.address?.chooseAnotherAddress)) && ( {custom} diff --git a/src/packages/address/existRender.tsx b/src/packages/address/existRender.tsx index 4f25e0c945..0588259809 100644 --- a/src/packages/address/existRender.tsx +++ b/src/packages/address/existRender.tsx @@ -106,7 +106,7 @@ export const ExistRender: FunctionComponent< ) })} - {(custom || (custom && locale.address.chooseAnotherAddress)) && ( + {(custom || (custom && locale.address?.chooseAnotherAddress)) && (
{custom}
diff --git a/src/packages/audio/audio.taro.tsx b/src/packages/audio/audio.taro.tsx index cc72ef71b7..8450369f54 100644 --- a/src/packages/audio/audio.taro.tsx +++ b/src/packages/audio/audio.taro.tsx @@ -73,7 +73,7 @@ export const Audio: FunctionComponent< }) audioCtx.onEnded(() => { if (loop) { - console.warn(locale.audio.tips || 'onPlayEnd事件在loop=false时才会触发') + console.warn(locale.audio?.tips || 'onPlayEnd事件在loop=false时才会触发') } else { onPlayEnd?.(audioCtx) } @@ -191,7 +191,7 @@ export const Audio: FunctionComponent< className="back" onClick={handleBack} > - {locale.audio.back || '快退'} + {locale.audio?.back} diff --git a/src/packages/audio/audio.tsx b/src/packages/audio/audio.tsx index 34c2220910..1ccef9f863 100644 --- a/src/packages/audio/audio.tsx +++ b/src/packages/audio/audio.tsx @@ -68,7 +68,7 @@ export const Audio: FunctionComponent< const classPrefix = 'nut-audio' const handleEnded = (e: SyntheticEvent) => { if (loop) { - console.warn(locale.audio.tips || 'onPlayEnd事件在loop=false时才会触发') + console.warn(locale.audio?.tips || 'onPlayEnd事件在loop=false时才会触发') } else { onEnd?.(e) } @@ -183,7 +183,7 @@ export const Audio: FunctionComponent< className="back" onClick={handleBack} > - {locale.audio.back || '快退'} + {locale.audio?.back}
diff --git a/src/packages/avatarcropper/avatarcropper.taro.tsx b/src/packages/avatarcropper/avatarcropper.taro.tsx index ee184339f9..40cdf33e1a 100644 --- a/src/packages/avatarcropper/avatarcropper.taro.tsx +++ b/src/packages/avatarcropper/avatarcropper.taro.tsx @@ -47,7 +47,7 @@ export const AvatarCropper: FunctionComponent< {locale.cancel} , , - , + , , diff --git a/src/packages/avatarcropper/avatarcropper.tsx b/src/packages/avatarcropper/avatarcropper.tsx index 74033e4aef..2dd1b7d4ba 100644 --- a/src/packages/avatarcropper/avatarcropper.tsx +++ b/src/packages/avatarcropper/avatarcropper.tsx @@ -44,7 +44,7 @@ export const AvatarCropper: FunctionComponent< {locale.cancel} , , - , + , , @@ -458,7 +458,7 @@ export const AvatarCropper: FunctionComponent< accept="image/*" className={`${classPrefix}-input`} onChange={(e: any) => inputImageChange(e)} - aria-label={locale.avatarCropper.selectImage} + aria-label={locale.avatarCropper?.selectImage} />
{editText}
diff --git a/src/packages/calendar/calendar.taro.tsx b/src/packages/calendar/calendar.taro.tsx index 254c0348a7..c117b6282a 100644 --- a/src/packages/calendar/calendar.taro.tsx +++ b/src/packages/calendar/calendar.taro.tsx @@ -113,14 +113,14 @@ export const Calendar = React.forwardRef< type={type} autoBackfill={autoBackfill} popup={popup} - title={title || locale.calendaritem.title} + title={title || locale.calendaritem?.title} defaultValue={defaultValue} startDate={startDate} endDate={endDate} showToday={showToday} - startText={startText || locale.calendaritem.start} - endText={endText || locale.calendaritem.end} - confirmText={confirmText || locale.calendaritem.confirm} + startText={startText || locale.calendaritem?.start} + endText={endText || locale.calendaritem?.end} + confirmText={confirmText || locale.calendaritem?.confirm} showTitle={showTitle} showSubTitle={showSubTitle} scrollAnimation={scrollAnimation} diff --git a/src/packages/calendar/calendar.tsx b/src/packages/calendar/calendar.tsx index 10c16be734..2f0471cee4 100644 --- a/src/packages/calendar/calendar.tsx +++ b/src/packages/calendar/calendar.tsx @@ -114,14 +114,14 @@ export const Calendar = React.forwardRef< autoBackfill={autoBackfill} renderBottomButton={renderBottomButton} popup={popup} - title={title || locale.calendaritem.title} + title={title || locale.calendaritem?.title} defaultValue={defaultValue} startDate={startDate} endDate={endDate} showToday={showToday} - startText={startText || locale.calendaritem.start} - endText={endText || locale.calendaritem.end} - confirmText={confirmText || locale.calendaritem.confirm} + startText={startText || locale.calendaritem?.start} + endText={endText || locale.calendaritem?.end} + confirmText={confirmText || locale.calendaritem?.confirm} showTitle={showTitle} showSubTitle={showSubTitle} scrollAnimation={scrollAnimation} diff --git a/src/packages/calendarcard/calendarcard.taro.tsx b/src/packages/calendarcard/calendarcard.taro.tsx index 450ae5bc10..eba8014858 100644 --- a/src/packages/calendarcard/calendarcard.taro.tsx +++ b/src/packages/calendarcard/calendarcard.taro.tsx @@ -364,7 +364,7 @@ export const CalendarCard = React.forwardRef< } } - const monthTitle = locale.calendaritem.monthTitle + const monthTitle = locale.calendaritem?.monthTitle const renderHeader = () => { return ( @@ -393,7 +393,7 @@ export const CalendarCard = React.forwardRef< } const [weekHeader] = useState(() => { - const weekdays = locale.calendaritem.weekdays.map((day, index) => { + const weekdays = locale.calendaritem?.weekdays.map((day, index) => { return { name: day, key: index, diff --git a/src/packages/calendarcard/calendarcard.tsx b/src/packages/calendarcard/calendarcard.tsx index 904a69f522..a0f3ba5d8e 100644 --- a/src/packages/calendarcard/calendarcard.tsx +++ b/src/packages/calendarcard/calendarcard.tsx @@ -363,7 +363,7 @@ export const CalendarCard = React.forwardRef< } } - const monthTitle = locale.calendaritem.monthTitle + const monthTitle = locale.calendaritem?.monthTitle const renderHeader = () => { return ( @@ -392,7 +392,7 @@ export const CalendarCard = React.forwardRef< } const [weekHeader] = useState(() => { - const weekdays = locale.calendaritem.weekdays.map((day, index) => { + const weekdays = locale.calendaritem?.weekdays.map((day, index) => { return { name: day, key: index, diff --git a/src/packages/calendaritem/calendaritem.taro.tsx b/src/packages/calendaritem/calendaritem.taro.tsx index 50807f2f98..a162e20e42 100644 --- a/src/packages/calendaritem/calendaritem.taro.tsx +++ b/src/packages/calendaritem/calendaritem.taro.tsx @@ -130,12 +130,12 @@ export const CalendarItem = React.forwardRef< onPageChange, } = { ...defaultProps, ...props } - const weekdays = locale.calendaritem.weekdays + const weekdays = locale.calendaritem?.weekdays || [] const weeks = [ ...weekdays.slice(firstDayOfWeek, 7), ...weekdays.slice(0, firstDayOfWeek), ] - const monthTitle = locale.calendaritem.monthTitle + const monthTitle = locale.calendaritem?.monthTitle const [yearMonthTitle, setYearMonthTitle] = useState('') const [monthsData, setMonthsData] = useState([]) const [monthsNum, setMonthsNum] = useState(0) @@ -763,7 +763,7 @@ export const CalendarItem = React.forwardRef< {showTitle && ( - {title || locale.calendaritem.title} + {title || locale.calendaritem?.title} )} {renderHeaderButtons && ( @@ -845,7 +845,7 @@ export const CalendarItem = React.forwardRef< showToday && isCurrDay(month, day.day) && ( - {locale.calendaritem.today} + {locale.calendaritem?.today} )} {isStartTip(day, month) && ( @@ -856,12 +856,12 @@ export const CalendarItem = React.forwardRef< : '' }`} > - {startText || locale.calendaritem.start} + {startText || locale.calendaritem?.start} )} {isEndTip(day, month) && ( - {endText || locale.calendaritem.end} + {endText || locale.calendaritem?.end} )}
diff --git a/src/packages/calendaritem/calendaritem.tsx b/src/packages/calendaritem/calendaritem.tsx index e5d14c1707..32bbc4a6de 100644 --- a/src/packages/calendaritem/calendaritem.tsx +++ b/src/packages/calendaritem/calendaritem.tsx @@ -128,13 +128,13 @@ export const CalendarItem = React.forwardRef< onPageChange, } = { ...defaultProps, ...props } - const weekdays = locale.calendaritem.weekdays + const weekdays = locale.calendaritem?.weekdays const weeks = [ ...weekdays.slice(firstDayOfWeek, 7), ...weekdays.slice(0, firstDayOfWeek), ] - const monthTitle = locale.calendaritem.monthTitle + const monthTitle = locale.calendaritem?.monthTitle const [yearMonthTitle, setYearMonthTitle] = useState('') const [monthsData, setMonthsData] = useState([]) const [monthsNum, setMonthsNum] = useState(0) @@ -766,7 +766,7 @@ export const CalendarItem = React.forwardRef<
{showTitle && (
- {title || locale.calendaritem.title} + {title || locale.calendaritem?.title}
)} {renderHeaderButtons && ( @@ -842,7 +842,7 @@ export const CalendarItem = React.forwardRef< showToday && isCurrDay(month, day.day) && (
- {locale.calendaritem.today} + {locale.calendaritem?.today}
)} {isStartTip(day, month) && ( @@ -853,12 +853,12 @@ export const CalendarItem = React.forwardRef< : '' }`} > - {startText || locale.calendaritem.start} + {startText || locale.calendaritem?.start}
)} {isEndTip(day, month) && (
- {endText || locale.calendaritem.end} + {endText || locale.calendaritem?.end}
)} diff --git a/src/packages/configprovider/index.taro.ts b/src/packages/configprovider/index.taro.ts index eb8d6ce30e..a2421fa7d9 100644 --- a/src/packages/configprovider/index.taro.ts +++ b/src/packages/configprovider/index.taro.ts @@ -7,7 +7,7 @@ import { } from './configprovider.taro' export type { - TaroConfigProviderProps, + TaroConfigProviderProps as ConfigProviderProps, PageDirection as ConfigProviderDirection, } from '@/types' export type { NutCSSVariables } from './types' diff --git a/src/packages/configprovider/index.ts b/src/packages/configprovider/index.ts index 87ca5cf63b..37cf9a5fc6 100644 --- a/src/packages/configprovider/index.ts +++ b/src/packages/configprovider/index.ts @@ -7,7 +7,7 @@ import { } from './configprovider' export type { - WebConfigProviderProps, + WebConfigProviderProps as ConfigProviderProps, PageDirection as ConfigProviderDirection, } from '@/types' export type { NutCSSVariables } from './types' diff --git a/src/packages/datepicker/datepicker.taro.tsx b/src/packages/datepicker/datepicker.taro.tsx index 4f958817c2..ffa56992e7 100644 --- a/src/packages/datepicker/datepicker.taro.tsx +++ b/src/packages/datepicker/datepicker.taro.tsx @@ -72,7 +72,14 @@ const InternalPicker: ForwardRefRenderFunction< } const { locale } = useConfig() - const lang = locale.datepicker + const lang = locale.datepicker || { + day: '', + year: '', + month: '', + hour: '', + min: '', + seconds: '', + } const zhCNType: { [key: string]: string } = { day: lang.day, diff --git a/src/packages/datepicker/datepicker.tsx b/src/packages/datepicker/datepicker.tsx index 38439517b9..a2a31f62f9 100644 --- a/src/packages/datepicker/datepicker.tsx +++ b/src/packages/datepicker/datepicker.tsx @@ -71,7 +71,14 @@ const InternalPicker: ForwardRefRenderFunction< } const { locale } = useConfig() - const lang = locale.datepicker + const lang = locale.datepicker || { + day: '', + year: '', + month: '', + hour: '', + min: '', + seconds: '', + } const zhCNType: { [key: string]: string } = { day: lang.day, diff --git a/src/packages/datepickerview/datepickerview.taro.tsx b/src/packages/datepickerview/datepickerview.taro.tsx index 22dcba13ea..7ec53493ef 100644 --- a/src/packages/datepickerview/datepickerview.taro.tsx +++ b/src/packages/datepickerview/datepickerview.taro.tsx @@ -57,7 +57,14 @@ export const DatePickerView: FunctionComponent< const cls = classNames(classPrefix, className) const { locale } = useConfig() - const lang = locale.datepicker + const lang = locale.datepicker || { + day: '', + year: '', + month: '', + hour: '', + min: '', + seconds: '', + } const zhCNType: { [key: string]: string } = { day: lang.day, diff --git a/src/packages/datepickerview/datepickerview.tsx b/src/packages/datepickerview/datepickerview.tsx index ff58973796..7ce39ef85b 100644 --- a/src/packages/datepickerview/datepickerview.tsx +++ b/src/packages/datepickerview/datepickerview.tsx @@ -56,7 +56,14 @@ export const DatePickerView: FunctionComponent< const cls = classNames(classPrefix, className) const { locale } = useConfig() - const lang = locale.datepicker + const lang = locale.datepicker || { + day: '', + year: '', + month: '', + hour: '', + min: '', + seconds: '', + } const zhCNType: { [key: string]: string } = { day: lang.day, diff --git a/src/packages/fixednav/fixednav.taro.tsx b/src/packages/fixednav/fixednav.taro.tsx index 1074e4951f..4712dec9fd 100644 --- a/src/packages/fixednav/fixednav.taro.tsx +++ b/src/packages/fixednav/fixednav.taro.tsx @@ -117,8 +117,8 @@ export const FixedNav: FunctionComponent< {visible - ? activeText || locale.fixednav.activeText - : inactiveText || locale.fixednav.inactiveText} + ? activeText || locale.fixednav?.activeText + : inactiveText || locale.fixednav?.inactiveText} )} diff --git a/src/packages/fixednav/fixednav.tsx b/src/packages/fixednav/fixednav.tsx index 281495e5d5..7640c56827 100644 --- a/src/packages/fixednav/fixednav.tsx +++ b/src/packages/fixednav/fixednav.tsx @@ -118,8 +118,8 @@ export const FixedNav: FunctionComponent<
{visible - ? activeText || locale.fixednav.activeText - : inactiveText || locale.fixednav.inactiveText} + ? activeText || locale.fixednav?.activeText + : inactiveText || locale.fixednav?.inactiveText}
)} diff --git a/src/packages/infiniteloading/infiniteloading.taro.tsx b/src/packages/infiniteloading/infiniteloading.taro.tsx index 53c8535d8b..704071fc84 100644 --- a/src/packages/infiniteloading/infiniteloading.taro.tsx +++ b/src/packages/infiniteloading/infiniteloading.taro.tsx @@ -146,10 +146,10 @@ export const InfiniteLoading: FunctionComponent< function getBottomTipsText() { if (isInfiniting) { - return loadingText || locale.infiniteloading.loadText + return loadingText || locale.infiniteloading?.loadText } if (!hasMore) { - return loadMoreText || locale.infiniteloading.loadMoreText + return loadMoreText || locale.infiniteloading?.loadMoreText } return null } @@ -170,7 +170,7 @@ export const InfiniteLoading: FunctionComponent< > - {pullingText || locale.infiniteloading.pullRefreshText} + {pullingText || locale.infiniteloading?.pullRefreshText} {children} diff --git a/src/packages/infiniteloading/infiniteloading.tsx b/src/packages/infiniteloading/infiniteloading.tsx index 55fdd73622..78954b8421 100644 --- a/src/packages/infiniteloading/infiniteloading.tsx +++ b/src/packages/infiniteloading/infiniteloading.tsx @@ -195,10 +195,10 @@ export const InfiniteLoading: FunctionComponent< function getBottomTipsText() { if (isInfiniting) { - return loadingText || locale.infiniteloading.loadText + return loadingText || locale.infiniteloading?.loadText } if (!hasMore) { - return loadMoreText || locale.infiniteloading.loadMoreText + return loadMoreText || locale.infiniteloading?.loadMoreText } return null } @@ -213,7 +213,7 @@ export const InfiniteLoading: FunctionComponent< >
- {pullingText || locale.infiniteloading.pullRefreshText} + {pullingText || locale.infiniteloading?.pullRefreshText}
{children}
diff --git a/src/packages/pagination/pagination.taro.tsx b/src/packages/pagination/pagination.taro.tsx index 23d8e2ef50..41ea35864d 100644 --- a/src/packages/pagination/pagination.taro.tsx +++ b/src/packages/pagination/pagination.taro.tsx @@ -87,7 +87,7 @@ export const Pagination: FunctionComponent< onClick={() => prevPage()} > {addColorForHarmony( - prev || locale.pagination.prev, + prev || locale.pagination?.prev, current === 1 ? '#c2c4cc' : '#ff0f23' )} @@ -126,7 +126,7 @@ export const Pagination: FunctionComponent< onClick={() => nextPage()} > {addColorForHarmony( - next || locale.pagination.next, + next || locale.pagination?.next, current >= pageCount ? '#c2c4cc' : '#ff0f23' )} diff --git a/src/packages/pagination/pagination.tsx b/src/packages/pagination/pagination.tsx index 951770037a..261897bfd8 100644 --- a/src/packages/pagination/pagination.tsx +++ b/src/packages/pagination/pagination.tsx @@ -84,7 +84,7 @@ export const Pagination: FunctionComponent< })} onClick={() => prevPage()} > - {prev || locale.pagination.prev} + {prev || locale.pagination?.prev} {mode === 'multi' && (
@@ -120,7 +120,7 @@ export const Pagination: FunctionComponent< })} onClick={() => nextPage()} > - {next || locale.pagination.next} + {next || locale.pagination?.next}
)} diff --git a/src/packages/pulltorefresh/pulltorefresh.taro.tsx b/src/packages/pulltorefresh/pulltorefresh.taro.tsx index 5d1da33c35..c8af3766a9 100644 --- a/src/packages/pulltorefresh/pulltorefresh.taro.tsx +++ b/src/packages/pulltorefresh/pulltorefresh.taro.tsx @@ -37,10 +37,10 @@ export const PullToRefresh: FunctionComponent< ...defaultProps, ...p, ...{ - pullingText: p.pullingText || locale.pullToRefresh.pullingText, - canReleaseText: p.canReleaseText || locale.pullToRefresh.canReleaseText, - refreshingText: p.refreshingText || locale.pullToRefresh.refreshingText, - completeText: p.completeText || locale.pullToRefresh.completeText, + pullingText: p.pullingText || locale.pullToRefresh?.pullingText, + canReleaseText: p.canReleaseText || locale.pullToRefresh?.canReleaseText, + refreshingText: p.refreshingText || locale.pullToRefresh?.refreshingText, + completeText: p.completeText || locale.pullToRefresh?.completeText, }, } diff --git a/src/packages/pulltorefresh/pulltorefresh.tsx b/src/packages/pulltorefresh/pulltorefresh.tsx index d19f23bdfd..94318f0116 100644 --- a/src/packages/pulltorefresh/pulltorefresh.tsx +++ b/src/packages/pulltorefresh/pulltorefresh.tsx @@ -33,10 +33,10 @@ export const PullToRefresh: FunctionComponent< ...defaultProps, ...p, ...{ - pullingText: p.pullingText || locale.pullToRefresh.pullingText, - canReleaseText: p.canReleaseText || locale.pullToRefresh.canReleaseText, - refreshingText: p.refreshingText || locale.pullToRefresh.refreshingText, - completeText: p.completeText || locale.pullToRefresh.completeText, + pullingText: p.pullingText || locale.pullToRefresh?.pullingText, + canReleaseText: p.canReleaseText || locale.pullToRefresh?.canReleaseText, + refreshingText: p.refreshingText || locale.pullToRefresh?.refreshingText, + completeText: p.completeText || locale.pullToRefresh?.completeText, }, } diff --git a/src/packages/shortpassword/shortpassword.taro.tsx b/src/packages/shortpassword/shortpassword.taro.tsx index a22528970b..f49404789a 100644 --- a/src/packages/shortpassword/shortpassword.taro.tsx +++ b/src/packages/shortpassword/shortpassword.taro.tsx @@ -112,10 +112,10 @@ export const InternalShortPassword: ForwardRefRenderFunction< > - {title || locale.shortpassword.title} + {title || locale.shortpassword?.title} - {description || locale.shortpassword.description} + {description || locale.shortpassword?.description} @@ -143,7 +143,7 @@ export const InternalShortPassword: ForwardRefRenderFunction< {tips || ( <> - {locale.shortpassword.tips} + {locale.shortpassword?.tips} )} diff --git a/src/packages/shortpassword/shortpassword.tsx b/src/packages/shortpassword/shortpassword.tsx index 4e7cc02da5..f08a00bd0c 100644 --- a/src/packages/shortpassword/shortpassword.tsx +++ b/src/packages/shortpassword/shortpassword.tsx @@ -111,10 +111,10 @@ export const InternalShortPassword: ForwardRefRenderFunction< >
- {title || locale.shortpassword.title} + {title || locale.shortpassword?.title}
- {description || locale.shortpassword.description} + {description || locale.shortpassword?.description}
@@ -142,7 +142,7 @@ export const InternalShortPassword: ForwardRefRenderFunction< {tips || ( <> - {locale.shortpassword.tips} + {locale.shortpassword?.tips} )}
diff --git a/src/packages/signature/signature.tsx b/src/packages/signature/signature.tsx index 97ef30943e..9aeb68a830 100644 --- a/src/packages/signature/signature.tsx +++ b/src/packages/signature/signature.tsx @@ -162,7 +162,7 @@ const InternalSignature: ForwardRefRenderFunction< <>{unsupported} ) : (

- {locale.signature.unsupported} + {locale.signature?.unsupported}

)} diff --git a/src/packages/timeselect/timeselect.taro.tsx b/src/packages/timeselect/timeselect.taro.tsx index de6ead8136..c678c772c6 100644 --- a/src/packages/timeselect/timeselect.taro.tsx +++ b/src/packages/timeselect/timeselect.taro.tsx @@ -114,7 +114,7 @@ export const TimeSelect: FunctionComponent> = ( round visible={visible} position="bottom" - title={title || locale.timeselect.pickupTime} + title={title || locale.timeselect?.pickupTime} style={{ ...style, }} diff --git a/src/packages/timeselect/timeselect.tsx b/src/packages/timeselect/timeselect.tsx index 6c4a8ba16f..302d1b68cc 100644 --- a/src/packages/timeselect/timeselect.tsx +++ b/src/packages/timeselect/timeselect.tsx @@ -113,7 +113,7 @@ export const TimeSelect: FunctionComponent> = ( round visible={visible} position="bottom" - title={title || locale.timeselect.pickupTime} + title={title || locale.timeselect?.pickupTime} style={{ ...style, }} diff --git a/src/packages/tour/tour.taro.tsx b/src/packages/tour/tour.taro.tsx index 26a2f464f0..513a142445 100644 --- a/src/packages/tour/tour.taro.tsx +++ b/src/packages/tour/tour.taro.tsx @@ -199,7 +199,7 @@ export const Tour: FunctionComponent< className="nut-tour-content-bottom-operate-btn" onClick={() => changeStep('prev')} > - {prev || locale.tour.prevStepText} + {prev || locale.tour?.prevStepText} )} {list.length - 1 === active && ( @@ -207,7 +207,7 @@ export const Tour: FunctionComponent< className="nut-tour-content-bottom-operate-btn active" onClick={(e) => maskClose(e)} > - {complete || locale.tour.completeText} + {complete || locale.tour?.completeText} )} {list.length - 1 !== active && ( @@ -215,7 +215,7 @@ export const Tour: FunctionComponent< className="nut-tour-content-bottom-operate-btn active" onClick={() => changeStep('next')} > - {next || locale.tour.nextStepText} + {next || locale.tour?.nextStepText} )} diff --git a/src/packages/tour/tour.tsx b/src/packages/tour/tour.tsx index d36147dfbf..a952cdae07 100644 --- a/src/packages/tour/tour.tsx +++ b/src/packages/tour/tour.tsx @@ -187,7 +187,7 @@ export const Tour: FunctionComponent< className="nut-tour-content-bottom-operate-btn" onClick={() => changeStep('prev')} > - {prev || locale.tour.prevStepText} + {prev || locale.tour?.prevStepText}
)} {list.length - 1 === active && ( @@ -195,7 +195,7 @@ export const Tour: FunctionComponent< className="nut-tour-content-bottom-operate-btn active" onClick={(e) => maskClose(e)} > - {complete || locale.tour.completeText} + {complete || locale.tour?.completeText}
)} {list.length - 1 !== active && ( @@ -203,7 +203,7 @@ export const Tour: FunctionComponent< className="nut-tour-content-bottom-operate-btn active" onClick={() => changeStep('next')} > - {next || locale.tour.nextStepText} + {next || locale.tour?.nextStepText} )} diff --git a/src/packages/uploader/uploader.taro.tsx b/src/packages/uploader/uploader.taro.tsx index 1773c1511c..013b3575f0 100644 --- a/src/packages/uploader/uploader.taro.tsx +++ b/src/packages/uploader/uploader.taro.tsx @@ -184,7 +184,7 @@ const InternalUploader: ForwardRefRenderFunction< return { ...file, status: 'uploading', - message: locale.uploader.uploading, + message: locale.uploader?.uploading, } } return file @@ -198,7 +198,7 @@ const InternalUploader: ForwardRefRenderFunction< const list = fileListRef.current.map((item) => { if (item.uid === currentTask.uid) { item.status = 'success' - item.message = locale.uploader.success + item.message = locale.uploader?.success item.url = result.url } return item @@ -208,7 +208,7 @@ const InternalUploader: ForwardRefRenderFunction< const list = fileListRef.current.map((item) => { if (item.uid === currentTask.uid) { item.status = 'error' - item.message = locale.uploader.error + item.message = locale.uploader?.error } return item }) @@ -240,8 +240,8 @@ const InternalUploader: ForwardRefRenderFunction< status: autoUpload ? 'uploading' : 'ready', file, message: autoUpload - ? locale.uploader.uploading - : locale.uploader.waitingUpload, + ? locale.uploader?.uploading + : locale.uploader?.waitingUpload, name: getEnv() === 'WEB' ? file.originalFileObj?.name : filepath, path: filepath, type: getEnv() === 'WEB' ? file.originalFileObj?.type : fileType, @@ -333,7 +333,7 @@ const InternalUploader: ForwardRefRenderFunction< <> {Number(maxCount) > fileList.length && ( {Number(maxCount) > fileList.length && ( Date: Mon, 14 Apr 2025 22:59:43 +0800 Subject: [PATCH 3/4] =?UTF-8?q?fix:=20=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/packages/calendarcard/calendarcard.taro.tsx | 15 +++++++-------- src/packages/calendarcard/calendarcard.tsx | 15 +++++++-------- src/packages/calendaritem/calendaritem.tsx | 2 +- src/packages/watermark/watermark.tsx | 2 +- 4 files changed, 16 insertions(+), 18 deletions(-) diff --git a/src/packages/calendarcard/calendarcard.taro.tsx b/src/packages/calendarcard/calendarcard.taro.tsx index eba8014858..ca22c1b160 100644 --- a/src/packages/calendarcard/calendarcard.taro.tsx +++ b/src/packages/calendarcard/calendarcard.taro.tsx @@ -393,15 +393,14 @@ export const CalendarCard = React.forwardRef< } const [weekHeader] = useState(() => { - const weekdays = locale.calendaritem?.weekdays.map((day, index) => { - return { - name: day, - key: index, - } - }) + const weekdays = locale.calendaritem?.weekdays || [] + const weeks = weekdays.map((day, index) => ({ + name: day, + key: index, + })) return [ - ...weekdays.slice(firstDayOfWeek, 7), - ...weekdays.slice(0, firstDayOfWeek), + ...weeks.slice(firstDayOfWeek, 7), + ...weeks.slice(0, firstDayOfWeek), ] }) diff --git a/src/packages/calendarcard/calendarcard.tsx b/src/packages/calendarcard/calendarcard.tsx index a0f3ba5d8e..7661ef753c 100644 --- a/src/packages/calendarcard/calendarcard.tsx +++ b/src/packages/calendarcard/calendarcard.tsx @@ -392,15 +392,14 @@ export const CalendarCard = React.forwardRef< } const [weekHeader] = useState(() => { - const weekdays = locale.calendaritem?.weekdays.map((day, index) => { - return { - name: day, - key: index, - } - }) + const weekdays = locale.calendaritem?.weekdays || [] + const weeks = weekdays.map((day, index) => ({ + name: day, + key: index, + })) return [ - ...weekdays.slice(firstDayOfWeek, 7), - ...weekdays.slice(0, firstDayOfWeek), + ...weeks.slice(firstDayOfWeek, 7), + ...weeks.slice(0, firstDayOfWeek), ] }) diff --git a/src/packages/calendaritem/calendaritem.tsx b/src/packages/calendaritem/calendaritem.tsx index 32bbc4a6de..04d0db0dea 100644 --- a/src/packages/calendaritem/calendaritem.tsx +++ b/src/packages/calendaritem/calendaritem.tsx @@ -128,7 +128,7 @@ export const CalendarItem = React.forwardRef< onPageChange, } = { ...defaultProps, ...props } - const weekdays = locale.calendaritem?.weekdays + const weekdays = locale.calendaritem?.weekdays || [] const weeks = [ ...weekdays.slice(firstDayOfWeek, 7), ...weekdays.slice(0, firstDayOfWeek), diff --git a/src/packages/watermark/watermark.tsx b/src/packages/watermark/watermark.tsx index 25307cbb11..c13063b3f5 100644 --- a/src/packages/watermark/watermark.tsx +++ b/src/packages/watermark/watermark.tsx @@ -110,7 +110,7 @@ export const WaterMark: FunctionComponent< setBase64Url(canvas.toDataURL()) } } else { - throw new Error(locale.watermark.errorCanvasTips) + throw new Error(locale.watermark?.errorCanvasTips) } } From cc878c82443d3bdc213766b9020b68b52a4415fa Mon Sep 17 00:00:00 2001 From: hanyuxinting Date: Mon, 14 Apr 2025 23:28:31 +0800 Subject: [PATCH 4/4] =?UTF-8?q?fix:=20=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/locales/zh-TW.ts | 4 +- src/packages/audio/audio.taro.tsx | 8 ++- src/packages/audio/audio.tsx | 10 +-- .../calendarcard/calendarcard.taro.tsx | 4 +- src/packages/calendarcard/calendarcard.tsx | 4 +- .../calendaritem/calendaritem.taro.tsx | 9 ++- src/packages/calendaritem/calendaritem.tsx | 9 ++- .../configprovider/demos/h5/demo4.tsx | 7 +- src/packages/watermark/watermark.taro.tsx | 4 +- src/packages/watermark/watermark.tsx | 4 +- src/types/base/locales.ts | 68 +++++++++---------- src/types/spec/configprovider/h5.ts | 2 +- src/types/spec/configprovider/taro.ts | 2 +- 13 files changed, 77 insertions(+), 58 deletions(-) diff --git a/src/locales/zh-TW.ts b/src/locales/zh-TW.ts index ee6da7ebc4..d5af80715f 100644 --- a/src/locales/zh-TW.ts +++ b/src/locales/zh-TW.ts @@ -1,6 +1,6 @@ import { Locales } from '@/types' -const zhCN: Locales = { +const zhTW: Locales = { save: '保存', confirm: '確認', cancel: '取消', @@ -139,4 +139,4 @@ const zhCN: Locales = { errorCanvasTips: '當前環境不支持Canvas', }, } -export default zhCN +export default zhTW diff --git a/src/packages/audio/audio.taro.tsx b/src/packages/audio/audio.taro.tsx index 8450369f54..e6929dbdbe 100644 --- a/src/packages/audio/audio.taro.tsx +++ b/src/packages/audio/audio.taro.tsx @@ -191,7 +191,7 @@ export const Audio: FunctionComponent< className="back" onClick={handleBack} > - {locale.audio?.back} + {locale.audio?.back || '快退'} diff --git a/src/packages/audio/audio.tsx b/src/packages/audio/audio.tsx index 1ccef9f863..d2c3c24160 100644 --- a/src/packages/audio/audio.tsx +++ b/src/packages/audio/audio.tsx @@ -183,7 +183,7 @@ export const Audio: FunctionComponent< className="back" onClick={handleBack} > - {locale.audio?.back} + {locale.audio?.back || '快退'} diff --git a/src/packages/calendarcard/calendarcard.taro.tsx b/src/packages/calendarcard/calendarcard.taro.tsx index ca22c1b160..d3fb7abcca 100644 --- a/src/packages/calendarcard/calendarcard.taro.tsx +++ b/src/packages/calendarcard/calendarcard.taro.tsx @@ -364,7 +364,9 @@ export const CalendarCard = React.forwardRef< } } - const monthTitle = locale.calendaritem?.monthTitle + const formatTitle = (year: number, month: number) => + `${year}-${Number(month) < 10 ? `0${Number(month)}` : month}` + const monthTitle = locale.calendaritem?.monthTitle || formatTitle const renderHeader = () => { return ( diff --git a/src/packages/calendarcard/calendarcard.tsx b/src/packages/calendarcard/calendarcard.tsx index 7661ef753c..e6a732224a 100644 --- a/src/packages/calendarcard/calendarcard.tsx +++ b/src/packages/calendarcard/calendarcard.tsx @@ -363,7 +363,9 @@ export const CalendarCard = React.forwardRef< } } - const monthTitle = locale.calendaritem?.monthTitle + const formatTitle = (year: number, month: number) => + `${year}-${Number(month) < 10 ? `0${Number(month)}` : month}` + const monthTitle = locale.calendaritem?.monthTitle || formatTitle const renderHeader = () => { return ( diff --git a/src/packages/calendaritem/calendaritem.taro.tsx b/src/packages/calendaritem/calendaritem.taro.tsx index a162e20e42..4f7e341034 100644 --- a/src/packages/calendaritem/calendaritem.taro.tsx +++ b/src/packages/calendaritem/calendaritem.taro.tsx @@ -135,7 +135,9 @@ export const CalendarItem = React.forwardRef< ...weekdays.slice(firstDayOfWeek, 7), ...weekdays.slice(0, firstDayOfWeek), ] - const monthTitle = locale.calendaritem?.monthTitle + const formatTitle = (year: number, month: number) => + `${year}-${Number(month) < 10 ? `0${Number(month)}` : month}` + const monthTitle = locale.calendaritem?.monthTitle || formatTitle const [yearMonthTitle, setYearMonthTitle] = useState('') const [monthsData, setMonthsData] = useState([]) const [monthsNum, setMonthsNum] = useState(0) @@ -843,9 +845,10 @@ export const CalendarItem = React.forwardRef< !isEndTip(day, month) && !renderDayBottom && showToday && - isCurrDay(month, day.day) && ( + isCurrDay(month, day.day) && + locale.calendaritem?.today && ( - {locale.calendaritem?.today} + {locale.calendaritem.today} )} {isStartTip(day, month) && ( diff --git a/src/packages/calendaritem/calendaritem.tsx b/src/packages/calendaritem/calendaritem.tsx index 04d0db0dea..cb85ff163e 100644 --- a/src/packages/calendaritem/calendaritem.tsx +++ b/src/packages/calendaritem/calendaritem.tsx @@ -134,7 +134,9 @@ export const CalendarItem = React.forwardRef< ...weekdays.slice(0, firstDayOfWeek), ] - const monthTitle = locale.calendaritem?.monthTitle + const formatTitle = (year: number, month: number) => + `${year}-${Number(month) < 10 ? `0${Number(month)}` : month}` + const monthTitle = locale.calendaritem?.monthTitle || formatTitle const [yearMonthTitle, setYearMonthTitle] = useState('') const [monthsData, setMonthsData] = useState([]) const [monthsNum, setMonthsNum] = useState(0) @@ -840,9 +842,10 @@ export const CalendarItem = React.forwardRef< !isEndTip(day, month) && !renderDayBottom && showToday && - isCurrDay(month, day.day) && ( + isCurrDay(month, day.day) && + locale.calendaritem?.today && (
- {locale.calendaritem?.today} + {locale.calendaritem.today}
)} {isStartTip(day, month) && ( diff --git a/src/packages/configprovider/demos/h5/demo4.tsx b/src/packages/configprovider/demos/h5/demo4.tsx index bd8c51e251..0d12e58d19 100644 --- a/src/packages/configprovider/demos/h5/demo4.tsx +++ b/src/packages/configprovider/demos/h5/demo4.tsx @@ -1,11 +1,12 @@ import React from 'react' -import { ConfigProvider, TextArea } from '@nutui/nutui-react' -import enUS from '@nutui/nutui-react/dist/es/locale/en-US' +import { ConfigProvider, TextArea, Button } from '@nutui/nutui-react' +const loc = { text: 'ee' } const Demo4 = () => { return ( <> - + +