@flatbiz/antd
Version:
113 lines (104 loc) • 3.15 kB
JavaScript
/*! @flatjs/forge MIT @flatbiz/antd */
import { _ as _objectWithoutProperties, b as _objectSpread2 } from './_rollupPluginBabelHelpers-BYm17lo8.js';
import { ConfigProvider } from 'antd';
import enUS from 'antd/es/locale/en_US.js';
import zhCN from 'antd/es/locale/zh_CN.js';
import dayjs from 'dayjs';
import advancedFormat from 'dayjs/plugin/advancedFormat.js';
import customParseFormat from 'dayjs/plugin/customParseFormat.js';
import localeData from 'dayjs/plugin/localeData.js';
import dayjsUtc from 'dayjs/plugin/utc.js';
import weekday from 'dayjs/plugin/weekday.js';
import weekOfYear from 'dayjs/plugin/weekOfYear.js';
import weekYear from 'dayjs/plugin/weekYear.js';
import { extend } from '@dimjs/utils/extend/extend';
import { fbaHooks } from './fba-hooks/index.js';
import 'dayjs/locale/en.js';
import 'dayjs/locale/zh-cn.js';
import { jsx } from 'react/jsx-runtime';
var en = {
TreeWrapper: {
/** 数据加载异常,默认文案 */
requestError: '数据加载异常...'
},
FbaDialogModal: {
cancelText: 'cancel'
}
};
var zhCn = {
TreeWrapper: {
/** 数据加载异常,默认文案 */
requestError: '数据加载异常...'
},
FbaDialogModal: {
cancelText: '取消'
}
};
/**
* 设置 @flatbiz/antd中的国际化语言
* @param locale
* @param customLocaleMessage
*/
var setFbaLocaleMessage = function setFbaLocaleMessage(locale, customLocaleMessage) {
var localeMessage = zhCn;
if (locale === 'en') {
localeMessage = en;
}
window['__fba_locale_message'] = extend(true, {}, localeMessage, customLocaleMessage);
};
/**
* 读取 @flatbiz/antd中的国际化语言
* @param key
* @returns
*/
var getFbaLocaleMessage = function getFbaLocaleMessage() {
var localeMessage = window['__fba_locale_message'];
return localeMessage || {};
};
var _excluded = ["locale"];
dayjs.extend(customParseFormat);
dayjs.extend(advancedFormat);
dayjs.extend(weekday);
dayjs.extend(localeData);
dayjs.extend(weekOfYear);
dayjs.extend(weekYear);
dayjs.extend(dayjsUtc);
var localeMap = {
en: {
dayjs: 'en',
antd: enUS
},
'zh-cn': {
dayjs: 'zh-cn',
antd: zhCN
}
};
/**
* antd ConfigProvider 扩展类
* ```
* 1. 新增监听辅助行为,移除复制文本中前后空格能力
* ```
*/
var ConfigProviderWrapper = function ConfigProviderWrapper(props) {
var locale = props.locale,
otherProps = _objectWithoutProperties(props, _excluded);
var localeNew = locale || 'zh-cn';
fbaHooks.useEffectCustom(function () {
setFbaLocaleMessage(localeNew, props.customLocaleMessage);
dayjs.locale(localeMap[localeNew].dayjs || localeMap['zh-cn'].dayjs);
}, []);
fbaHooks.useCopyRemoveSpace({
ignoreClass: props.copyOperateIgnoreClass
});
return /*#__PURE__*/jsx(ConfigProvider, _objectSpread2(_objectSpread2({
componentSize: 'middle',
space: {
size: 'middle'
}
}, otherProps), {}, {
locale: localeMap[localeNew].antd || localeMap['zh-cn'].antd,
children: props.children
}));
};
export { ConfigProviderWrapper as C, getFbaLocaleMessage as g };
//# sourceMappingURL=config-provider-wrapper-DDa_64Ce.js.map