toast lokasyonu top-end olarak değiştirildi.

This commit is contained in:
Sedat ÖZTÜRK 2025-09-01 17:07:03 +03:00
parent f2a75eb20f
commit 7c43ed600f
36 changed files with 409 additions and 364 deletions

View file

@ -1,5 +1,5 @@
import { useState, useEffect, useCallback } from 'react' import { useState, useEffect, useCallback } from 'react'
import { FaThLarge } from 'react-icons/fa'; import { FaThLarge } from 'react-icons/fa'
import { import {
parseReactCode, parseReactCode,
updateComponentProp, updateComponentProp,
@ -82,7 +82,7 @@ function CodeLayout() {
"Bileşen başarıyla kaydedildi." "Bileşen başarıyla kaydedildi."
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
} }

View file

@ -25,8 +25,8 @@ const CopyButton = () => {
{`Please replace themeConfig in 'src/configs/themeConfig.js'`} {`Please replace themeConfig in 'src/configs/themeConfig.js'`}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
} },
) )
} }

View file

@ -72,8 +72,8 @@ const Upload = forwardRef<HTMLDivElement, UploadProps>((props, ref) => {
{msg || 'Upload Failed!'} {msg || 'Upload Failed!'}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
} },
) )
} }
@ -189,13 +189,10 @@ const Upload = forwardRef<HTMLDivElement, UploadProps>((props, ref) => {
draggable && !disabled && `hover:${draggableEventFeedbackClass}`, draggable && !disabled && `hover:${draggableEventFeedbackClass}`,
draggable && disabled && 'disabled', draggable && disabled && 'disabled',
dragOver && draggableEventFeedbackClass, dragOver && draggableEventFeedbackClass,
className className,
) )
const uploadInputClass = classNames( const uploadInputClass = classNames('upload-input', draggable && `draggable`)
'upload-input',
draggable && `draggable`
)
return ( return (
<> <>
@ -225,10 +222,7 @@ const Upload = forwardRef<HTMLDivElement, UploadProps>((props, ref) => {
<div className={classNames('upload-file-list', fileListClass)}> <div className={classNames('upload-file-list', fileListClass)}>
{files.map((file, index) => ( {files.map((file, index) => (
<FileItem key={file.name + index} file={file} className={fileItemClass}> <FileItem key={file.name + index} file={file} className={fileItemClass}>
<CloseButton <CloseButton className="upload-file-remove" onClick={() => removeFile(index)} />
className="upload-file-remove"
onClick={() => removeFile(index)}
/>
</FileItem> </FileItem>
))} ))}
</div> </div>

View file

@ -14,7 +14,11 @@ export abstract class UiEvalService {
const { texts, config } = state.abpConfig const { texts, config } = state.abpConfig
// Create translate function similar to useLocalization hook // Create translate function similar to useLocalization hook
const translate = (localizationKey: string, params?: Record<string, string | number>, defaultResourceName?: string): string => { const translate = (
localizationKey: string,
params?: Record<string, string | number>,
defaultResourceName?: string,
): string => {
if (!texts) { if (!texts) {
return localizationKey return localizationKey
} }
@ -22,7 +26,7 @@ export abstract class UiEvalService {
texts, texts,
defaultResourceName ?? config?.localization?.defaultResourceName, defaultResourceName ?? config?.localization?.defaultResourceName,
localizationKey, localizationKey,
params params,
) )
} }
@ -37,7 +41,7 @@ export abstract class UiEvalService {
{translate('::App.BackgroundWorkers.Message')} {translate('::App.BackgroundWorkers.Message')}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
} }

View file

@ -100,7 +100,7 @@ export class SignalRService {
this.connection.onreconnected(async () => { this.connection.onreconnected(async () => {
this.isConnected = true this.isConnected = true
toast.push(<Notification title="🔄 Bağlantı tekrar kuruldu" type="success" />, { toast.push(<Notification title="🔄 Bağlantı tekrar kuruldu" type="success" />, {
placement: 'top-center', placement: 'top-end',
}) })
if (this.currentSessionId && store.getState().auth.user) { if (this.currentSessionId && store.getState().auth.user) {
@ -113,7 +113,7 @@ export class SignalRService {
if (this.isKicked) { if (this.isKicked) {
toast.push( toast.push(
<Notification title="⚠️ Bağlantı koptu, yeniden bağlanılıyor..." type="warning" />, <Notification title="⚠️ Bağlantı koptu, yeniden bağlanılıyor..." type="warning" />,
{ placement: 'top-center' }, { placement: 'top-end' },
) )
this.isConnected = false this.isConnected = false
this.currentSessionId = undefined this.currentSessionId = undefined
@ -132,19 +132,19 @@ export class SignalRService {
this.connection.on('Error', (message: string) => { this.connection.on('Error', (message: string) => {
toast.push(<Notification title={`❌ Hata: ${message}`} type="danger" />, { toast.push(<Notification title={`❌ Hata: ${message}`} type="danger" />, {
placement: 'top-center', placement: 'top-end',
}) })
}) })
this.connection.on('Warning', (message: string) => { this.connection.on('Warning', (message: string) => {
toast.push(<Notification title={`⚠️ Uyarı: ${message}`} type="warning" />, { toast.push(<Notification title={`⚠️ Uyarı: ${message}`} type="warning" />, {
placement: 'top-center', placement: 'top-end',
}) })
}) })
this.connection.on('Info', (message: string) => { this.connection.on('Info', (message: string) => {
toast.push(<Notification title={` Bilgi: ${message}`} type="info" />, { toast.push(<Notification title={` Bilgi: ${message}`} type="info" />, {
placement: 'top-center', placement: 'top-end',
}) })
}) })
@ -164,7 +164,7 @@ export class SignalRService {
this.connection.on('ForceDisconnect', async (message: string) => { this.connection.on('ForceDisconnect', async (message: string) => {
this.isKicked = true this.isKicked = true
toast.push(<Notification title={`❌ Sınıftan çıkarıldınız: ${message}`} type="danger" />, { toast.push(<Notification title={`❌ Sınıftan çıkarıldınız: ${message}`} type="danger" />, {
placement: 'top-center', placement: 'top-end',
}) })
if (this.onForceCleanup) { if (this.onForceCleanup) {
@ -200,7 +200,7 @@ export class SignalRService {
await Promise.race([startPromise, timeout]) await Promise.race([startPromise, timeout])
this.isConnected = true this.isConnected = true
toast.push(<Notification title="✅ Bağlantı kuruldu" type="success" />, { toast.push(<Notification title="✅ Bağlantı kuruldu" type="success" />, {
placement: 'top-center', placement: 'top-end',
}) })
} catch { } catch {
toast.push( toast.push(
@ -208,7 +208,7 @@ export class SignalRService {
title="⚠️ Sunucuya bağlanılamadı. Lütfen sayfayı yenileyin veya internet bağlantınızı kontrol edin." title="⚠️ Sunucuya bağlanılamadı. Lütfen sayfayı yenileyin veya internet bağlantınızı kontrol edin."
type="danger" type="danger"
/>, />,
{ placement: 'top-center' }, { placement: 'top-end' },
) )
this.isConnected = false this.isConnected = false
} }
@ -236,7 +236,7 @@ export class SignalRService {
await this.connection.invoke('JoinClass', sessionId, userId, userName, isTeacher, isActive) await this.connection.invoke('JoinClass', sessionId, userId, userName, isTeacher, isActive)
} catch { } catch {
toast.push(<Notification title="❌ Sınıfa katılamadı" type="danger" />, { toast.push(<Notification title="❌ Sınıfa katılamadı" type="danger" />, {
placement: 'top-center', placement: 'top-end',
}) })
} }
} }
@ -254,7 +254,7 @@ export class SignalRService {
this.currentSessionId = undefined this.currentSessionId = undefined
} catch { } catch {
toast.push(<Notification title="⚠️ Çıkış başarısız" type="warning" />, { toast.push(<Notification title="⚠️ Çıkış başarısız" type="warning" />, {
placement: 'top-center', placement: 'top-end',
}) })
} }
} }
@ -295,7 +295,7 @@ export class SignalRService {
) )
} catch { } catch {
toast.push(<Notification title="❌ Mesaj gönderilemedi" type="danger" />, { toast.push(<Notification title="❌ Mesaj gönderilemedi" type="danger" />, {
placement: 'top-center', placement: 'top-end',
}) })
} }
} }
@ -342,7 +342,7 @@ export class SignalRService {
) )
} catch { } catch {
toast.push(<Notification title="❌ Özel mesaj gönderilemedi" type="danger" />, { toast.push(<Notification title="❌ Özel mesaj gönderilemedi" type="danger" />, {
placement: 'top-center', placement: 'top-end',
}) })
} }
} }
@ -382,7 +382,7 @@ export class SignalRService {
) )
} catch { } catch {
toast.push(<Notification title="❌ Duyuru gönderilemedi" type="danger" />, { toast.push(<Notification title="❌ Duyuru gönderilemedi" type="danger" />, {
placement: 'top-center', placement: 'top-end',
}) })
} }
} }
@ -404,7 +404,7 @@ export class SignalRService {
await this.connection.invoke('MuteParticipant', sessionId, userId, isMuted, isTeacher) await this.connection.invoke('MuteParticipant', sessionId, userId, isMuted, isTeacher)
} catch { } catch {
toast.push(<Notification title="⚠️ Katılımcı susturulamadı" type="warning" />, { toast.push(<Notification title="⚠️ Katılımcı susturulamadı" type="warning" />, {
placement: 'top-center', placement: 'top-end',
}) })
} }
} }
@ -421,7 +421,7 @@ export class SignalRService {
await this.connection.invoke('RaiseHand', sessionId, studentId, studentName) await this.connection.invoke('RaiseHand', sessionId, studentId, studentName)
} catch { } catch {
toast.push(<Notification title="❌ El kaldırma başarısız" type="danger" />, { toast.push(<Notification title="❌ El kaldırma başarısız" type="danger" />, {
placement: 'top-center', placement: 'top-end',
}) })
} }
} }
@ -438,7 +438,7 @@ export class SignalRService {
await this.connection.invoke('KickParticipant', sessionId, participantId) await this.connection.invoke('KickParticipant', sessionId, participantId)
} catch { } catch {
toast.push(<Notification title="❌ Katılımcı atılamadı" type="danger" />, { toast.push(<Notification title="❌ Katılımcı atılamadı" type="danger" />, {
placement: 'top-center', placement: 'top-end',
}) })
} }
} }
@ -455,7 +455,7 @@ export class SignalRService {
await this.connection.invoke('ApproveHandRaise', sessionId, studentId) await this.connection.invoke('ApproveHandRaise', sessionId, studentId)
} catch { } catch {
toast.push(<Notification title="⚠️ El kaldırma onayı başarısız" type="warning" />, { toast.push(<Notification title="⚠️ El kaldırma onayı başarısız" type="warning" />, {
placement: 'top-center', placement: 'top-end',
}) })
} }
} }
@ -472,7 +472,7 @@ export class SignalRService {
await this.connection.invoke('DismissHandRaise', sessionId, studentId) await this.connection.invoke('DismissHandRaise', sessionId, studentId)
} catch { } catch {
toast.push(<Notification title="⚠️ El indirme başarısız" type="warning" />, { toast.push(<Notification title="⚠️ El indirme başarısız" type="warning" />, {
placement: 'top-center', placement: 'top-end',
}) })
} }
} }
@ -552,7 +552,7 @@ export class SignalRService {
await this.connection.invoke('LeaveClass', this.currentSessionId) await this.connection.invoke('LeaveClass', this.currentSessionId)
} catch { } catch {
toast.push(<Notification title="⚠️ Bağlantı koparılırken hata" type="warning" />, { toast.push(<Notification title="⚠️ Bağlantı koparılırken hata" type="warning" />, {
placement: 'top-center', placement: 'top-end',
}) })
} }
} }

View file

@ -53,6 +53,7 @@ export class WebRTCService {
title="❌ Kamera/Mikrofon erişilemedi. Tarayıcı ayarlarınızı veya izinleri kontrol edin." title="❌ Kamera/Mikrofon erişilemedi. Tarayıcı ayarlarınızı veya izinleri kontrol edin."
type="danger" type="danger"
/>, />,
{ placement: 'top-end' },
) )
throw new Error('Media devices access failed') throw new Error('Media devices access failed')
} }
@ -104,7 +105,7 @@ export class WebRTCService {
title={`❌ Bağlantı kurulamadı (${this.maxRetries} deneme başarısız).`} title={`❌ Bağlantı kurulamadı (${this.maxRetries} deneme başarısız).`}
type="danger" type="danger"
/>, />,
{ placement: 'top-center' }, { placement: 'top-end' },
) )
this.closePeerConnection(userId) this.closePeerConnection(userId)
} }
@ -149,7 +150,7 @@ export class WebRTCService {
return offer return offer
} catch { } catch {
toast.push(<Notification title="❌ Offer oluşturulamadı" type="danger" />, { toast.push(<Notification title="❌ Offer oluşturulamadı" type="danger" />, {
placement: 'top-center', placement: 'top-end',
}) })
throw new Error('Offer creation failed') throw new Error('Offer creation failed')
} }
@ -169,7 +170,7 @@ export class WebRTCService {
return answer return answer
} catch { } catch {
toast.push(<Notification title="❌ Answer oluşturulamadı" type="danger" />, { toast.push(<Notification title="❌ Answer oluşturulamadı" type="danger" />, {
placement: 'top-center', placement: 'top-end',
}) })
throw new Error('Answer creation failed') throw new Error('Answer creation failed')
} }
@ -237,7 +238,7 @@ export class WebRTCService {
} }
} catch { } catch {
toast.push(<Notification title="❌ Kamera açılamadı" type="danger" />, { toast.push(<Notification title="❌ Kamera açılamadı" type="danger" />, {
placement: 'top-center', placement: 'top-end',
}) })
} }
} }
@ -266,7 +267,7 @@ export class WebRTCService {
} }
} catch { } catch {
toast.push(<Notification title="❌ Mikrofon açılamadı" type="danger" />, { toast.push(<Notification title="❌ Mikrofon açılamadı" type="danger" />, {
placement: 'top-center', placement: 'top-end',
}) })
} }
} }
@ -285,12 +286,12 @@ export class WebRTCService {
await this.signalRService.sendOffer(this.sessionId, userId, offer) await this.signalRService.sendOffer(this.sessionId, userId, offer)
} else { } else {
toast.push(<Notification title="⚠️ Tekrar bağlanma başarısız" type="warning" />, { toast.push(<Notification title="⚠️ Tekrar bağlanma başarısız" type="warning" />, {
placement: 'top-center', placement: 'top-end',
}) })
} }
} catch { } catch {
toast.push(<Notification title="❌ ICE restart başarısız" type="danger" />, { toast.push(<Notification title="❌ ICE restart başarısız" type="danger" />, {
placement: 'top-center', placement: 'top-end',
}) })
} }
} }
@ -344,7 +345,7 @@ export class WebRTCService {
pc.removeTrack(sender) pc.removeTrack(sender)
} catch { } catch {
toast.push(<Notification title="⚠️ Track silinemedi" type="warning" />, { toast.push(<Notification title="⚠️ Track silinemedi" type="warning" />, {
placement: 'top-center', placement: 'top-end',
}) })
} }
if (sender.track?.readyState !== 'ended') { if (sender.track?.readyState !== 'ended') {

View file

@ -185,7 +185,7 @@ const useListFormColumns = ({
// {error.toString()} // {error.toString()}
// </Notification>, // </Notification>,
// { // {
// placement: 'top-center', // placement: 'top-end',
// }, // },
// ) // )
return null return null
@ -231,7 +231,7 @@ const useListFormColumns = ({
// {'Lookup Datası boş geldi.'} // {'Lookup Datası boş geldi.'}
// </Notification>, // </Notification>,
// { // {
// placement: 'top-center', // placement: 'top-end',
// }, // },
// ) // )
return return
@ -252,7 +252,7 @@ const useListFormColumns = ({
// {'Network error'} // {'Network error'}
// </Notification>, // </Notification>,
// { // {
// placement: 'top-center', // placement: 'top-end',
// }, // },
// ) // )
return return

View file

@ -97,7 +97,7 @@ const useListFormCustomDataSource = ({
// {'multiValue Error'} // {'multiValue Error'}
// </Notification>, // </Notification>,
// { // {
// placement: 'top-center', // placement: 'top-end',
// }, // },
// ) // )
console.log('multiValue Error', e) console.log('multiValue Error', e)
@ -132,7 +132,7 @@ const useListFormCustomDataSource = ({
// {error.toString()} // {error.toString()}
// </Notification>, // </Notification>,
// { // {
// placement: 'top-center', // placement: 'top-end',
// }, // },
// ) // )
return null return null
@ -156,7 +156,7 @@ const useListFormCustomDataSource = ({
// {error.toString()} // {error.toString()}
// </Notification>, // </Notification>,
// { // {
// placement: 'top-center', // placement: 'top-end',
// }, // },
// ) // )
return null return null
@ -178,7 +178,7 @@ const useListFormCustomDataSource = ({
// {error.toString()} // {error.toString()}
// </Notification>, // </Notification>,
// { // {
// placement: 'top-center', // placement: 'top-end',
// }, // },
// ) // )
return null return null

View file

@ -279,7 +279,7 @@ function ChartEdit() {
{'Chart Bilgileri Kaydedildi.'} {'Chart Bilgileri Kaydedildi.'}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
@ -3352,7 +3352,7 @@ function ChartEdit() {
: 'Kayıt Değiştirildi.'} : 'Kayıt Değiştirildi.'}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
@ -3460,7 +3460,7 @@ function ChartEdit() {
: 'Kayıt Değiştirildi.'} : 'Kayıt Değiştirildi.'}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
@ -3757,7 +3757,7 @@ function ChartEdit() {
: 'Kayıt Değiştirildi.'} : 'Kayıt Değiştirildi.'}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
@ -4093,7 +4093,7 @@ function ChartEdit() {
: 'Kayıt Değiştirildi.'} : 'Kayıt Değiştirildi.'}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
@ -4389,7 +4389,7 @@ function ChartEdit() {
{translate('::ListForms.KayitSilindi')} {translate('::ListForms.KayitSilindi')}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )

View file

@ -149,7 +149,7 @@ const Wizard = () => {
{translate('::ListForms.FormBilgileriKaydedildi')} {translate('::ListForms.FormBilgileriKaydedildi')}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
setSubmitting(false) setSubmitting(false)
@ -163,7 +163,7 @@ const Wizard = () => {
}, 500) }, 500)
} catch (error: any) { } catch (error: any) {
toast.push(<Notification title={error.message} type="danger" />, { toast.push(<Notification title={error.message} type="danger" />, {
placement: 'top-center', placement: 'top-end',
}) })
} }
}} }}

View file

@ -24,7 +24,7 @@ import { SelectBoxOption } from '@/shared/types'
import { useLocalization } from '@/utils/hooks/useLocalization' import { useLocalization } from '@/utils/hooks/useLocalization'
import { Field, FieldProps, Form, Formik } from 'formik' import { Field, FieldProps, Form, Formik } from 'formik'
import { useState } from 'react' import { useState } from 'react'
import { FaEdit, FaFileMedical, FaTrash } from 'react-icons/fa'; import { FaEdit, FaFileMedical, FaTrash } from 'react-icons/fa'
import * as Yup from 'yup' import * as Yup from 'yup'
import { listFormCustomizationOptions } from './options' import { listFormCustomizationOptions } from './options'
import { IdentityRoleDto, IdentityUserDto } from '@/proxy/admin/models' import { IdentityRoleDto, IdentityUserDto } from '@/proxy/admin/models'
@ -170,7 +170,7 @@ function FormCustomization({
: translate('::ListForms.KayitEklendi')} : translate('::ListForms.KayitEklendi')}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
setRow(null) setRow(null)
@ -180,6 +180,7 @@ function FormCustomization({
Hata Hata
<code>{error}</code> <code>{error}</code>
</Notification>, </Notification>,
{ placement: 'top-end' },
) )
} finally { } finally {
setSubmitting(false) setSubmitting(false)
@ -335,7 +336,7 @@ function FormCustomization({
{translate('::ListForms.KayitSilindi')} {translate('::ListForms.KayitSilindi')}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
getListFormCustomizations() getListFormCustomizations()

View file

@ -131,6 +131,7 @@ const FormEdit = () => {
<Notification type="success" duration={2000}> <Notification type="success" duration={2000}>
{translate('::ListForms.FormBilgileriKaydedildi')} {translate('::ListForms.FormBilgileriKaydedildi')}
</Notification>, </Notification>,
{ placement: 'top-end' },
) )
} catch (error: any) { } catch (error: any) {
toast.push( toast.push(
@ -138,6 +139,7 @@ const FormEdit = () => {
Hata Hata
<code>{error}</code> <code>{error}</code>
</Notification>, </Notification>,
{ placement: 'top-end' },
) )
} finally { } finally {
formikHelpers.setSubmitting(false) formikHelpers.setSubmitting(false)

View file

@ -22,7 +22,7 @@ import { useLocalization } from '@/utils/hooks/useLocalization'
import setNull from '@/utils/setNull' import setNull from '@/utils/setNull'
import { Field, FieldProps, Form, Formik } from 'formik' import { Field, FieldProps, Form, Formik } from 'formik'
import { useState } from 'react' import { useState } from 'react'
import { FaEdit, FaPlusSquare, FaCheck, FaTrashAlt } from 'react-icons/fa'; import { FaEdit, FaPlusSquare, FaCheck, FaTrashAlt } from 'react-icons/fa'
import { object, string } from 'yup' import { object, string } from 'yup'
import { columnRowTypeListOptions, columnValidationComparisonTypeListOptions } from '../options' import { columnRowTypeListOptions, columnValidationComparisonTypeListOptions } from '../options'
import { FormFieldEditProps } from './FormFields' import { FormFieldEditProps } from './FormFields'
@ -141,7 +141,7 @@ function FormFieldTabConditionalFormatting({
{translate('::ListForms.FormBilgileriKaydedildi')} {translate('::ListForms.FormBilgileriKaydedildi')}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
handleClose() handleClose()
@ -151,6 +151,7 @@ function FormFieldTabConditionalFormatting({
Hata Hata
<code>{error}</code> <code>{error}</code>
</Notification>, </Notification>,
{ placement: 'top-end' },
) )
} }
}} }}
@ -200,7 +201,7 @@ function FormFieldTabConditionalFormatting({
{translate('::ListForms.FormBilgileriKaydedildi')} {translate('::ListForms.FormBilgileriKaydedildi')}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
handleClose() handleClose()
@ -210,6 +211,7 @@ function FormFieldTabConditionalFormatting({
Hata Hata
<code>{error}</code> <code>{error}</code>
</Notification>, </Notification>,
{ placement: 'top-end' },
) )
} finally { } finally {
setSubmitting(false) setSubmitting(false)

View file

@ -23,7 +23,7 @@ import { useLocalization } from '@/utils/hooks/useLocalization'
import setNull from '@/utils/setNull' import setNull from '@/utils/setNull'
import { Field, FieldProps, Form, Formik } from 'formik' import { Field, FieldProps, Form, Formik } from 'formik'
import { useState } from 'react' import { useState } from 'react'
import { FaEdit, FaPlusSquare, FaCheck, FaTrashAlt } from 'react-icons/fa'; import { FaEdit, FaPlusSquare, FaCheck, FaTrashAlt } from 'react-icons/fa'
import { bool, object, string } from 'yup' import { bool, object, string } from 'yup'
import { import {
columnValidationComparisonTypeListOptions, columnValidationComparisonTypeListOptions,
@ -159,6 +159,7 @@ function FormFieldTabValidationRules({
Hata Hata
<code>{error}</code> <code>{error}</code>
</Notification>, </Notification>,
{ placement: 'top-end' },
) )
} }
}} }}
@ -210,7 +211,7 @@ function FormFieldTabValidationRules({
{translate('::ListForms.FormBilgileriKaydedildi')} {translate('::ListForms.FormBilgileriKaydedildi')}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
handleClose() handleClose()
@ -220,6 +221,7 @@ function FormFieldTabValidationRules({
Hata Hata
<code>{error}</code> <code>{error}</code>
</Notification>, </Notification>,
{ placement: 'top-end' },
) )
} finally { } finally {
setSubmitting(false) setSubmitting(false)

View file

@ -36,7 +36,7 @@ import setNull from '@/utils/setNull'
import classNames from 'classnames' import classNames from 'classnames'
import { Field, FieldProps, Form, Formik, FormikHelpers } from 'formik' import { Field, FieldProps, Form, Formik, FormikHelpers } from 'formik'
import { useEffect, useState } from 'react' import { useEffect, useState } from 'react'
import { FaFileMedical, FaCopy, FaEyeSlash, FaMinus, FaTimes } from 'react-icons/fa'; import { FaFileMedical, FaCopy, FaEyeSlash, FaMinus, FaTimes } from 'react-icons/fa'
import { number, object, string } from 'yup' import { number, object, string } from 'yup'
import FormFieldEdit from './FormFieldEdit' import FormFieldEdit from './FormFieldEdit'
import { dbSourceTypeOptions } from '../options' import { dbSourceTypeOptions } from '../options'
@ -142,7 +142,7 @@ function FormFields({
{error.toString()} {error.toString()}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
} }
@ -179,6 +179,7 @@ function FormFields({
<Notification type="success" duration={2000}> <Notification type="success" duration={2000}>
{translate('::ListForms.FormBilgileriKaydedildi')} {translate('::ListForms.FormBilgileriKaydedildi')}
</Notification>, </Notification>,
{ placement: 'top-end' },
) )
} catch (error: any) { } catch (error: any) {
toast.push( toast.push(
@ -186,6 +187,7 @@ function FormFields({
Hata Hata
<code>{error}</code> <code>{error}</code>
</Notification>, </Notification>,
{ placement: 'top-end' },
) )
} finally { } finally {
formikHelpers?.setSubmitting(false) formikHelpers?.setSubmitting(false)
@ -222,6 +224,7 @@ function FormFields({
<Notification type="success" duration={100}> <Notification type="success" duration={100}>
{'Alanlar geldi'} {'Alanlar geldi'}
</Notification>, </Notification>,
{ placement: 'top-end' },
) )
}) })
setSubmitting(false) setSubmitting(false)
@ -424,7 +427,7 @@ function FormFields({
: translate('::ListForms.KayitEklendi')} : translate('::ListForms.KayitEklendi')}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
handleNewFieldFormClose() handleNewFieldFormClose()
@ -434,6 +437,7 @@ function FormFields({
Hata Hata
<code>{error}</code> <code>{error}</code>
</Notification>, </Notification>,
{ placement: 'top-end' },
) )
} finally { } finally {
setSubmitting(false) setSubmitting(false)
@ -588,7 +592,7 @@ function FormFields({
{translate('::ListForms.KayitSilindi')} {translate('::ListForms.KayitSilindi')}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
getFields() getFields()
@ -642,7 +646,7 @@ function FormFields({
await postListFormFieldCopy({ ...values }) await postListFormFieldCopy({ ...values })
toast.push(<Notification type="success">{'Field Kopyalandı.'}</Notification>, { toast.push(<Notification type="success">{'Field Kopyalandı.'}</Notification>, {
placement: 'top-center', placement: 'top-end',
}) })
handleCopyFieldFormClose() handleCopyFieldFormClose()
} catch (error: any) { } catch (error: any) {
@ -651,6 +655,7 @@ function FormFields({
Hata Hata
<code>{error}</code> <code>{error}</code>
</Notification>, </Notification>,
{ placement: 'top-end' },
) )
} finally { } finally {
setSubmitting(false) setSubmitting(false)

View file

@ -137,6 +137,7 @@ function JsonRowOpDialogCommand({
<Notification type="success"> <Notification type="success">
{data.index === -1 ? 'Kayıt eklendi' : 'Kayıt güncellendi'} {data.index === -1 ? 'Kayıt eklendi' : 'Kayıt güncellendi'}
</Notification>, </Notification>,
{ placement: 'top-end' },
) )
handleClose() handleClose()
} catch (error: any) { } catch (error: any) {
@ -145,6 +146,7 @@ function JsonRowOpDialogCommand({
Hata Hata
<code>{error}</code> <code>{error}</code>
</Notification>, </Notification>,
{ placement: 'top-end' },
) )
} finally { } finally {
setSubmitting(false) setSubmitting(false)
@ -355,7 +357,9 @@ function JsonRowOpDialogCommand({
setSubmitting(true) setSubmitting(true)
try { try {
await deleteListFormJsonRow(data.id, data.tabName, values.index) await deleteListFormJsonRow(data.id, data.tabName, values.index)
toast.push(<Notification type="success">Kayıt silindi </Notification>) toast.push(<Notification type="success">Kayıt silindi </Notification>, {
placement: 'top-end',
})
handleClose() handleClose()
} catch (error: any) { } catch (error: any) {
toast.push( toast.push(
@ -363,6 +367,7 @@ function JsonRowOpDialogCommand({
Hata Hata
<code>{error}</code> <code>{error}</code>
</Notification>, </Notification>,
{ placement: 'top-end' },
) )
} finally { } finally {
setSubmitting(false) setSubmitting(false)

View file

@ -122,6 +122,7 @@ function JsonRowOpDialogDatabase({
<Notification type="success"> <Notification type="success">
{data.index === -1 ? 'Kayıt eklendi' : 'Kayıt güncellendi'} {data.index === -1 ? 'Kayıt eklendi' : 'Kayıt güncellendi'}
</Notification>, </Notification>,
{ placement: 'top-end' },
) )
handleClose() handleClose()
} catch (error: any) { } catch (error: any) {
@ -130,6 +131,7 @@ function JsonRowOpDialogDatabase({
Hata Hata
<code>{error}</code> <code>{error}</code>
</Notification>, </Notification>,
{ placement: 'top-end' },
) )
} finally { } finally {
setSubmitting(false) setSubmitting(false)
@ -252,7 +254,9 @@ function JsonRowOpDialogDatabase({
setSubmitting(true) setSubmitting(true)
try { try {
await deleteListFormJsonRow(data.id, data.tabName, values.index) await deleteListFormJsonRow(data.id, data.tabName, values.index)
toast.push(<Notification type="success">Kayıt silindi </Notification>) toast.push(<Notification type="success">Kayıt silindi </Notification>, {
placement: 'top-end',
})
handleClose() handleClose()
} catch (error: any) { } catch (error: any) {
toast.push( toast.push(
@ -260,6 +264,7 @@ function JsonRowOpDialogDatabase({
Hata Hata
<code>{error}</code> <code>{error}</code>
</Notification>, </Notification>,
{ placement: 'top-end' },
) )
} finally { } finally {
setSubmitting(false) setSubmitting(false)

View file

@ -18,11 +18,7 @@ import { useLocalization } from '@/utils/hooks/useLocalization'
import { Field, FieldArray, FieldProps, Form, Formik } from 'formik' import { Field, FieldArray, FieldProps, Form, Formik } from 'formik'
import groupBy from 'lodash/groupBy' import groupBy from 'lodash/groupBy'
import { Dispatch, SetStateAction, useEffect, useState } from 'react' import { Dispatch, SetStateAction, useEffect, useState } from 'react'
import { import { FaCalendarPlus, FaCalendarMinus, FaTag } from 'react-icons/fa'
FaCalendarPlus,
FaCalendarMinus,
FaTag,
} from 'react-icons/fa'
import { number, object, string } from 'yup' import { number, object, string } from 'yup'
import { import {
columnEditorTypeListOptions, columnEditorTypeListOptions,
@ -109,7 +105,7 @@ function JsonRowOpDialogEditForm({
{error.toString()} {error.toString()}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
} }
@ -181,6 +177,7 @@ function JsonRowOpDialogEditForm({
<Notification type="success"> <Notification type="success">
{data.index === -1 ? 'Kayıt eklendi' : 'Kayıt güncellendi'} {data.index === -1 ? 'Kayıt eklendi' : 'Kayıt güncellendi'}
</Notification>, </Notification>,
{ placement: 'top-end' },
) )
handleClose() handleClose()
} catch (error: any) { } catch (error: any) {
@ -189,6 +186,7 @@ function JsonRowOpDialogEditForm({
Hata Hata
<code>{error}</code> <code>{error}</code>
</Notification>, </Notification>,
{ placement: 'top-end' },
) )
} finally { } finally {
setSubmitting(false) setSubmitting(false)
@ -767,6 +765,7 @@ function JsonRowOpDialogEditForm({
Hata Hata
<code>{error}</code> <code>{error}</code>
</Notification>, </Notification>,
{ placement: 'top-end' },
) )
} finally { } finally {
setSubmitting(false) setSubmitting(false)

View file

@ -14,10 +14,7 @@ import { useStoreActions } from '@/store'
import { useLocalization } from '@/utils/hooks/useLocalization' import { useLocalization } from '@/utils/hooks/useLocalization'
import { Field, FieldArray, FieldProps, Form, Formik } from 'formik' import { Field, FieldArray, FieldProps, Form, Formik } from 'formik'
import { Dispatch, SetStateAction } from 'react' import { Dispatch, SetStateAction } from 'react'
import { import { FaCalendarPlus, FaCalendarMinus } from 'react-icons/fa'
FaCalendarPlus,
FaCalendarMinus,
} from 'react-icons/fa'
import { object, string } from 'yup' import { object, string } from 'yup'
import { tabTypeOptions } from '../options' import { tabTypeOptions } from '../options'
import { JsonRowDialogData } from './types' import { JsonRowDialogData } from './types'
@ -107,6 +104,7 @@ function JsonRowOpDialogSubForm({
<Notification type="success"> <Notification type="success">
{data.index === -1 ? 'Kayıt eklendi' : 'Kayıt güncellendi'} {data.index === -1 ? 'Kayıt eklendi' : 'Kayıt güncellendi'}
</Notification>, </Notification>,
{ placement: 'top-end' },
) )
handleClose() handleClose()
} catch (error: any) { } catch (error: any) {
@ -115,6 +113,7 @@ function JsonRowOpDialogSubForm({
Hata Hata
<code>{error}</code> <code>{error}</code>
</Notification>, </Notification>,
{ placement: 'top-end' },
) )
} finally { } finally {
setSubmitting(false) setSubmitting(false)
@ -281,6 +280,7 @@ function JsonRowOpDialogSubForm({
Hata Hata
<code>{error}</code> <code>{error}</code>
</Notification>, </Notification>,
{ placement: 'top-end' },
) )
} finally { } finally {
setSubmitting(false) setSubmitting(false)

View file

@ -53,7 +53,7 @@ function CreateNotification({
{translate('::Kaydet')} {translate('::Kaydet')}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
onDialogClose() onDialogClose()
@ -63,7 +63,7 @@ function CreateNotification({
{'Hata'} {'Hata'}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
} finally { } finally {

View file

@ -227,7 +227,7 @@ const OrganizationUnits = () => {
{translate('::Kaydet')} {translate('::Kaydet')}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
@ -239,7 +239,7 @@ const OrganizationUnits = () => {
Hata Hata
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
} finally { } finally {
@ -296,7 +296,7 @@ const OrganizationUnits = () => {
Hata Hata
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
} finally { } finally {
@ -332,7 +332,7 @@ const OrganizationUnits = () => {
{translate('::Kaydet')} {translate('::Kaydet')}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
@ -343,7 +343,7 @@ const OrganizationUnits = () => {
Hata Hata
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
} finally { } finally {
@ -365,7 +365,7 @@ const OrganizationUnits = () => {
{translate('::Kaydet')} {translate('::Kaydet')}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
@ -376,7 +376,7 @@ const OrganizationUnits = () => {
Hata Hata
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
} finally { } finally {
@ -781,7 +781,7 @@ const OrganizationUnits = () => {
Updated Updated
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
await fetchUsersAndRoles(activeOu) await fetchUsersAndRoles(activeOu)
@ -792,7 +792,7 @@ const OrganizationUnits = () => {
Hata Hata
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
} finally { } finally {
@ -852,7 +852,7 @@ const OrganizationUnits = () => {
{translate('::ListForms.FormBilgileriKaydedildi')} {translate('::ListForms.FormBilgileriKaydedildi')}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
await fetchUsersAndRoles(activeOu) await fetchUsersAndRoles(activeOu)
@ -863,7 +863,7 @@ const OrganizationUnits = () => {
Hata Hata
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
} finally { } finally {
@ -932,7 +932,7 @@ const OrganizationUnits = () => {
{translate('::KayitSilindi')} {translate('::KayitSilindi')}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
} catch (error) { } catch (error) {
@ -941,7 +941,7 @@ const OrganizationUnits = () => {
Hata Hata
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
} finally { } finally {
@ -979,7 +979,7 @@ const OrganizationUnits = () => {
{translate('::Abp.Identity.OrganizationUnit.MoveAllUsersMessage')} {translate('::Abp.Identity.OrganizationUnit.MoveAllUsersMessage')}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
await fetchUsersAndRoles(values.id) await fetchUsersAndRoles(values.id)
@ -990,7 +990,7 @@ const OrganizationUnits = () => {
Hata Hata
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
} finally { } finally {

View file

@ -19,7 +19,14 @@ import {
CropperRef, CropperRef,
} from 'react-advanced-cropper' } from 'react-advanced-cropper'
import 'react-advanced-cropper/dist/style.css' import 'react-advanced-cropper/dist/style.css'
import { FaFacebookMessenger, FaEnvelope, FaTrashAlt, FaUserCircle, FaPhone, FaPlus } from 'react-icons/fa'; import {
FaFacebookMessenger,
FaEnvelope,
FaTrashAlt,
FaUserCircle,
FaPhone,
FaPlus,
} from 'react-icons/fa'
import * as Yup from 'yup' import * as Yup from 'yup'
import isEmpty from 'lodash/isEmpty' import isEmpty from 'lodash/isEmpty'
import FormRow from '@/views/shared/FormRow' import FormRow from '@/views/shared/FormRow'
@ -112,11 +119,11 @@ const General = () => {
}) })
toast.push(<Notification title={'Profil güncellendi'} type="success" />, { toast.push(<Notification title={'Profil güncellendi'} type="success" />, {
placement: 'top-center', placement: 'top-end',
}) })
} else { } else {
toast.push(<Notification title={resp?.error?.message} type="danger" />, { toast.push(<Notification title={resp?.error?.message} type="danger" />, {
placement: 'top-center', placement: 'top-end',
}) })
} }
setSubmitting(false) setSubmitting(false)

View file

@ -8,7 +8,7 @@ import { useLocalization } from '@/utils/hooks/useLocalization'
import FormDesription from '@/views/shared/FormDesription' import FormDesription from '@/views/shared/FormDesription'
import FormRow from '@/views/shared/FormRow' import FormRow from '@/views/shared/FormRow'
import { Field, Form, Formik } from 'formik' import { Field, Form, Formik } from 'formik'
import { FaDesktop, FaMobileAlt, FaTabletAlt } from 'react-icons/fa'; import { FaDesktop, FaMobileAlt, FaTabletAlt } from 'react-icons/fa'
import * as Yup from 'yup' import * as Yup from 'yup'
type LoginHistory = { type LoginHistory = {
@ -57,11 +57,11 @@ const Password = ({ data }: { data?: LoginHistory[] }) => {
const resp = await changePassword(values.password, values.newPassword) const resp = await changePassword(values.password, values.newPassword)
if (resp.status === 204) { if (resp.status === 204) {
toast.push(<Notification title={'Password updated'} type="success" />, { toast.push(<Notification title={'Password updated'} type="success" />, {
placement: 'top-center', placement: 'top-end',
}) })
} else { } else {
toast.push(<Notification title={resp?.error?.message} type="danger" />, { toast.push(<Notification title={resp?.error?.message} type="danger" />, {
placement: 'top-center', placement: 'top-end',
}) })
} }
setSubmitting(false) setSubmitting(false)

View file

@ -46,7 +46,7 @@ const Roles = () => {
toast.push( toast.push(
<RolesPermission open={true} name={'admin'} onDialogClose={() => {}}></RolesPermission>, <RolesPermission open={true} name={'admin'} onDialogClose={() => {}}></RolesPermission>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
}} }}

View file

@ -106,7 +106,7 @@ function TenantConnectionString({
{translate('::AbpTenantManagement.Tenants.ConnectionStringDeleted')} {translate('::AbpTenantManagement.Tenants.ConnectionStringDeleted')}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
onDialogClose() onDialogClose()
@ -116,7 +116,7 @@ function TenantConnectionString({
{'Hata'} {'Hata'}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
} finally { } finally {
@ -142,7 +142,7 @@ function TenantConnectionString({
{translate('::AbpTenantManagement.Tenants.ConnectionStringSaved')} {translate('::AbpTenantManagement.Tenants.ConnectionStringSaved')}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
@ -154,7 +154,7 @@ function TenantConnectionString({
{'Hata'} {'Hata'}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
} finally { } finally {
@ -181,7 +181,7 @@ function TenantConnectionString({
{translate('::AbpTenantManagement.Tenants.DatabaseSeeded')} {translate('::AbpTenantManagement.Tenants.DatabaseSeeded')}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
} catch (error) { } catch (error) {
@ -190,7 +190,7 @@ function TenantConnectionString({
{'Hata'} {'Hata'}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
} finally { } finally {

View file

@ -33,7 +33,7 @@ import dayjs from 'dayjs'
import { Field, FieldArray, FieldProps, Form, Formik, FormikHelpers } from 'formik' import { Field, FieldArray, FieldProps, Form, Formik, FormikHelpers } from 'formik'
import { useEffect, useState } from 'react' import { useEffect, useState } from 'react'
import { Helmet } from 'react-helmet' import { Helmet } from 'react-helmet'
import { FaLockOpen, FaUser, FaFileAlt, FaTrashAlt } from 'react-icons/fa'; import { FaLockOpen, FaUser, FaFileAlt, FaTrashAlt } from 'react-icons/fa'
import { useParams } from 'react-router-dom' import { useParams } from 'react-router-dom'
import * as Yup from 'yup' import * as Yup from 'yup'
import { SelectBoxOption } from '@/shared/types' import { SelectBoxOption } from '@/shared/types'
@ -81,7 +81,7 @@ function UserDetails() {
{translate('::Kaydet')} {translate('::Kaydet')}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
setOpen(false) setOpen(false)
@ -92,7 +92,7 @@ function UserDetails() {
{'Hata'} {'Hata'}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
} finally { } finally {
@ -134,7 +134,7 @@ function UserDetails() {
{translate('Kaydet')} {translate('Kaydet')}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
@ -375,7 +375,7 @@ function UserDetails() {
{'Lockout bilgileri kaydedildi.'} {'Lockout bilgileri kaydedildi.'}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
@ -752,7 +752,7 @@ function UserDetails() {
<Notification type="success" duration={2000}> <Notification type="success" duration={2000}>
{translate('::Abp.Identity.User.ClaimDeleted')} {translate('::Abp.Identity.User.ClaimDeleted')}
</Notification>, </Notification>,
{ placement: 'top-center' }, { placement: 'top-end' },
) )
setConfirmDeleteClaim(null) setConfirmDeleteClaim(null)
getUser() getUser()

View file

@ -104,7 +104,7 @@ const Users = () => {
updatePermissions(providerName, activeUser.id, { permissions: updatePermList }) updatePermissions(providerName, activeUser.id, { permissions: updatePermList })
toast.push(<Notification title={'Permission updated'} type="success" />, { toast.push(<Notification title={'Permission updated'} type="success" />, {
placement: 'top-center', placement: 'top-end',
}) })
} }

View file

@ -285,7 +285,7 @@ const RoomDetail: React.FC = () => {
if (!isActive) return if (!isActive) return
toast.push(<Notification title={`${name} sınıfa katıldı`} type="success" />, { toast.push(<Notification title={`${name} sınıfa katıldı`} type="success" />, {
placement: 'top-center', placement: 'top-end',
}) })
// Statee ekle // Statee ekle
@ -370,7 +370,7 @@ const RoomDetail: React.FC = () => {
title={`Katılımcı ayrıldı: ${userName ?? 'Bilinmeyen'}`} title={`Katılımcı ayrıldı: ${userName ?? 'Bilinmeyen'}`}
type="warning" type="warning"
/>, />,
{ placement: 'top-center' }, { placement: 'top-end' },
) )
} }
@ -445,7 +445,7 @@ const RoomDetail: React.FC = () => {
title="❌ Sınıf servisleri başlatılamadı. Bağlantınızı veya tarayıcı izinlerini kontrol edin." title="❌ Sınıf servisleri başlatılamadı. Bağlantınızı veya tarayıcı izinlerini kontrol edin."
type="danger" type="danger"
/>, />,
{ placement: 'top-center' }, { placement: 'top-end' },
) )
} }
} }
@ -484,7 +484,9 @@ const RoomDetail: React.FC = () => {
// Başka sayfaya yönlendir // Başka sayfaya yönlendir
navigate(ROUTES_ENUM.protected.admin.classroom.classes) navigate(ROUTES_ENUM.protected.admin.classroom.classes)
} catch (err) { } catch (err) {
toast.push(<Notification title="⚠️ Çıkış sırasında hata oluştu" type="warning" />) toast.push(<Notification title="⚠️ Çıkış sırasında hata oluştu" type="warning" />, {
placement: 'top-end',
})
navigate(ROUTES_ENUM.protected.admin.classroom.classes) navigate(ROUTES_ENUM.protected.admin.classroom.classes)
} }
} }
@ -504,7 +506,9 @@ const RoomDetail: React.FC = () => {
user.role === 'teacher', user.role === 'teacher',
) )
} catch (error) { } catch (error) {
toast.push(<Notification title="❌ Özel mesaj gönderilemedi" type="danger" />) toast.push(<Notification title="❌ Özel mesaj gönderilemedi" type="danger" />, {
placement: 'top-end',
})
} }
} else if (messageMode === 'announcement' && user.role === 'teacher') { } else if (messageMode === 'announcement' && user.role === 'teacher') {
try { try {
@ -516,7 +520,9 @@ const RoomDetail: React.FC = () => {
user.role === 'teacher', user.role === 'teacher',
) )
} catch (error) { } catch (error) {
toast.push(<Notification title="❌ Duyuru gönderilemedi" type="danger" />) toast.push(<Notification title="❌ Duyuru gönderilemedi" type="danger" />, {
placement: 'top-end',
})
} }
} else { } else {
try { try {
@ -528,7 +534,9 @@ const RoomDetail: React.FC = () => {
user.role === 'teacher', user.role === 'teacher',
) )
} catch (error) { } catch (error) {
toast.push(<Notification title="❌ Genel mesaj gönderilemedi" type="danger" />) toast.push(<Notification title="❌ Genel mesaj gönderilemedi" type="danger" />, {
placement: 'top-end',
})
} }
} }
setNewMessage('') setNewMessage('')
@ -549,7 +557,9 @@ const RoomDetail: React.FC = () => {
isTeacher, isTeacher,
) )
} catch (err) { } catch (err) {
toast.push(<Notification title="❌ Katılımcı susturulamadı" type="danger" />) toast.push(<Notification title="❌ Katılımcı susturulamadı" type="danger" />, {
placement: 'top-end',
})
} }
} }
} }
@ -609,7 +619,9 @@ const RoomDetail: React.FC = () => {
}), }),
) )
} catch (error) { } catch (error) {
toast.push(<Notification title="❌ Katılımcı atılamadı" type="danger" />) toast.push(<Notification title="❌ Katılımcı atılamadı" type="danger" />, {
placement: 'top-end',
})
} }
} }
} }
@ -672,7 +684,9 @@ const RoomDetail: React.FC = () => {
handleStopScreenShare() handleStopScreenShare()
} }
} catch (error) { } catch (error) {
toast.push(<Notification title="❌ Ekran paylaşımı başlatılamadı" type="danger" />) toast.push(<Notification title="❌ Ekran paylaşımı başlatılamadı" type="danger" />, {
placement: 'top-end',
})
} }
} }

View file

@ -3,7 +3,7 @@ import navigationIcon from '@/configs/navigation-icon.config'
import { useLocalization } from '@/utils/hooks/useLocalization' import { useLocalization } from '@/utils/hooks/useLocalization'
import CustomStore from 'devextreme/data/custom_store' import CustomStore from 'devextreme/data/custom_store'
import { useState } from 'react' import { useState } from 'react'
import { FaPlus, FaTrash, FaEdit, FaFileAlt, FaSave } from 'react-icons/fa'; import { FaPlus, FaTrash, FaEdit, FaFileAlt, FaSave } from 'react-icons/fa'
import { useNavigate } from 'react-router-dom' import { useNavigate } from 'react-router-dom'
import { GridColumnData } from '../list/GridColumnData' import { GridColumnData } from '../list/GridColumnData'
import { useToolbar } from '../list/useToolbar' import { useToolbar } from '../list/useToolbar'
@ -82,12 +82,12 @@ const FormButtons = (props: {
{translate('::ListForms.FormBilgileriSilindi')} {translate('::ListForms.FormBilgileriSilindi')}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
} catch (error: any) { } catch (error: any) {
toast.push(<Notification title={error.message} type="danger" />, { toast.push(<Notification title={error.message} type="danger" />, {
placement: 'top-center', placement: 'top-end',
}) })
} finally { } finally {
setLoading(false) setLoading(false)
@ -200,7 +200,11 @@ const FormButtons = (props: {
if (onActionEdit) { if (onActionEdit) {
onActionEdit() onActionEdit()
} else { } else {
navigate(ROUTES_ENUM.protected.admin.formEdit.replace(':listFormCode', listFormCode).replace(':id', id!)) navigate(
ROUTES_ENUM.protected.admin.formEdit
.replace(':listFormCode', listFormCode)
.replace(':id', id!),
)
} }
}} }}
{...(permissions.u ? {} : { disabled: true })} {...(permissions.u ? {} : { disabled: true })}
@ -217,7 +221,11 @@ const FormButtons = (props: {
if (onActionView) { if (onActionView) {
onActionView() onActionView()
} else { } else {
navigate(ROUTES_ENUM.protected.admin.formView.replace(':listFormCode', listFormCode).replace(':id', id!)) navigate(
ROUTES_ENUM.protected.admin.formView
.replace(':listFormCode', listFormCode)
.replace(':id', id!),
)
} }
}} }}
{...(permissions.r ? {} : { disabled: true })} {...(permissions.r ? {} : { disabled: true })}

View file

@ -67,7 +67,7 @@ const useGridData = (props: {
} }
} catch (error: any) { } catch (error: any) {
toast.push(<Notification title={error.message} type="danger" />, { toast.push(<Notification title={error.message} type="danger" />, {
placement: 'top-center', placement: 'top-end',
}) })
} finally { } finally {
setLoading(false) setLoading(false)
@ -101,7 +101,7 @@ const useGridData = (props: {
{translate('::ListForms.FormBilgileriKaydedildi')} {translate('::ListForms.FormBilgileriKaydedildi')}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
} else { } else {
@ -139,7 +139,7 @@ const useGridData = (props: {
{translate('::ListForms.FormBilgileriKaydedildi')} {translate('::ListForms.FormBilgileriKaydedildi')}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
} else { } else {
@ -148,7 +148,7 @@ const useGridData = (props: {
} }
} catch (error: any) { } catch (error: any) {
toast.push(<Notification title={error.message} type="danger" />, { toast.push(<Notification title={error.message} type="danger" />, {
placement: 'top-center', placement: 'top-end',
}) })
} finally { } finally {
setLoading(false) setLoading(false)

View file

@ -319,7 +319,7 @@ const Grid = (props: GridProps) => {
{e.error?.message} {e.error?.message}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
} }
@ -497,7 +497,7 @@ const Grid = (props: GridProps) => {
<Notification type="danger" duration={2500}> <Notification type="danger" duration={2500}>
{translate('::App.Common.ExportError') ?? 'Dışa aktarma sırasında hata oluştu.'} {translate('::App.Common.ExportError') ?? 'Dışa aktarma sırasında hata oluştu.'}
</Notification>, </Notification>,
{ placement: 'top-center' }, { placement: 'top-end' },
) )
} }
} }

View file

@ -80,7 +80,7 @@ const GridFilterDialogs = (props: {
{'Filter not found'} {'Filter not found'}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
return return
@ -97,7 +97,7 @@ const GridFilterDialogs = (props: {
{'Filter Saved'} {'Filter Saved'}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
@ -152,7 +152,7 @@ const GridFilterDialogs = (props: {
{'Filter Deleted'} {'Filter Deleted'}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )

View file

@ -279,7 +279,7 @@ const useFilters = ({
{error.message} {error.message}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
} finally { } finally {

View file

@ -142,7 +142,7 @@ const useToolbar = ({
{'Tüm kayıtlar silindi.'} {'Tüm kayıtlar silindi.'}
</Notification>, </Notification>,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )

View file

@ -20,11 +20,7 @@ import {
import { Field, FieldProps, Form, Formik } from 'formik' import { Field, FieldProps, Form, Formik } from 'formik'
import { SelectBoxOption } from '@/shared/types' import { SelectBoxOption } from '@/shared/types'
import * as Yup from 'yup' import * as Yup from 'yup'
import { import { FaExternalLinkAlt, FaPlus, FaTrashAlt } from 'react-icons/fa'
FaExternalLinkAlt,
FaPlus,
FaTrashAlt
} from 'react-icons/fa';
import { MenuDto } from '@/proxy/menus/models' import { MenuDto } from '@/proxy/menus/models'
interface MenuItemComponentProps { interface MenuItemComponentProps {
@ -194,7 +190,7 @@ export const MenuItemComponent: React.FC<MenuItemComponentProps> = ({
<Notification title="Başarılı" type="success"> <Notification title="Başarılı" type="success">
{translate('::KayitEklendi')} {translate('::KayitEklendi')}
</Notification>, </Notification>,
{ placement: 'top-center' }, { placement: 'top-end' },
) )
setIsModalOpen(false) setIsModalOpen(false)
refetch() refetch()
@ -203,7 +199,7 @@ export const MenuItemComponent: React.FC<MenuItemComponentProps> = ({
<Notification title="Hata" type="danger"> <Notification title="Hata" type="danger">
{translate('::IslemBasarisiz')} {translate('::IslemBasarisiz')}
</Notification>, </Notification>,
{ placement: 'top-center' }, { placement: 'top-end' },
) )
} finally { } finally {
setSubmitting(false) setSubmitting(false)

View file

@ -21,7 +21,7 @@ import { Field, FieldProps, Form, Formik } from 'formik'
import isEmpty from 'lodash/isEmpty' import isEmpty from 'lodash/isEmpty'
import { useEffect, useMemo, useState } from 'react' import { useEffect, useMemo, useState } from 'react'
import { Helmet } from 'react-helmet' import { Helmet } from 'react-helmet'
import { FaQuestionCircle } from 'react-icons/fa'; import { FaQuestionCircle } from 'react-icons/fa'
type Option = { type Option = {
value: string value: string
@ -76,17 +76,17 @@ const Settings = () => {
title={ title={
translate('::' + activeGroupName) + translate('::' + activeGroupName) +
' ' + ' ' +
translate('::SuccessfullySaved', 'AbpSettingManagement') translate('AbpSettingManagement::SuccessfullySaved')
} }
type="success" type="success"
/>, />,
{ {
placement: 'top-center', placement: 'top-end',
}, },
) )
} else { } else {
toast.push(<Notification title={resp?.error?.message} type="danger" />, { toast.push(<Notification title={resp?.error?.message} type="danger" />, {
placement: 'top-center', placement: 'top-end',
}) })
} }
//getConfig değiştiriliyor. //getConfig değiştiriliyor.