handie-react-starter-umi
Version:
`handie-react-starter-antd` + `umi`
39 lines (38 loc) • 1.48 kB
JavaScript
import { __rest } from "tslib";
// @ts-ignore
import { history } from 'umi';
import { isPlainObject, createApp as _createApp, } from 'handie-react-starter-antd';
import { Dialog, Message } from '../controls';
import { setRoutes, getLocation, resolveHistoryParams } from './history';
function generateMessageHelper(type) {
return (message, ...args) => {
const lastParam = args.slice(-1);
Message.show(message, ...(isPlainObject(lastParam)
? [...args.slice(0, args.length - 1), Object.assign(Object.assign({}, lastParam), { type })]
: [...args, { type }]));
};
}
function createAppHelper() {
return {
history: {
getLocation,
back: history.goBack,
forward: history.goForward,
go: history.go,
push: (location) => history.push(resolveHistoryParams(location)),
replace: (location) => history.replace(resolveHistoryParams(location)),
},
alert: Dialog.alert,
confirm: Dialog.confirm,
success: generateMessageHelper('success'),
error: generateMessageHelper('error'),
warning: generateMessageHelper('warning'),
info: generateMessageHelper('info'),
};
}
function createApp(_a) {
var { routes } = _a, others = __rest(_a, ["routes"]);
setRoutes(routes);
return _createApp(Object.assign(Object.assign({}, others), { creators: { appHelper: createAppHelper } }));
}
export { createApp };