diff --git a/Elements/notification.ts b/Elements/notification.ts new file mode 100644 index 0000000..0e8946f --- /dev/null +++ b/Elements/notification.ts @@ -0,0 +1,8 @@ +/* eslint-disable unicorn/prefer-export-from */ +import { notification } from 'antd'; + +notification.config({ + placement: 'bottomRight', +}); + +export default notification; diff --git a/stores/calculation/validation/index.ts b/stores/calculation/validation/index.ts index c37a9d7..1c08f81 100644 --- a/stores/calculation/validation/index.ts +++ b/stores/calculation/validation/index.ts @@ -1,5 +1,7 @@ /* eslint-disable object-curly-newline */ +import titles from 'Components/Calculation/config/elements-titles'; import type { Elements } from 'Components/Calculation/config/map/values'; +import notification from 'Elements/notification'; import { makeAutoObservable, observable } from 'mobx'; import type RootStore from 'stores/root'; import type { ElementsErrors, Error } from './types'; @@ -38,7 +40,11 @@ export default class ValidationStore { this.elementsErrors[elementName]?.splice(errorIndex, 1, error); } - // TODO: call notification + notification.error({ + key: error.name, + message: `Ошибка в поле ${titles[elementName]}`, + description: error.text, + }); return () => this.#removeError(elementName, error.name); };