ui uygulamasının klasör düzenlemesi

This commit is contained in:
Sedat Öztürk 2025-11-09 13:30:15 +03:00
parent 533e937307
commit 13a3b56ab4
142 changed files with 234 additions and 1487 deletions

View file

@ -27,7 +27,7 @@ namespace Kurs.Platform.DynamicServices
// Bekleyen assembly kayıt istekleri
private static readonly Queue<AssemblyRegistrationRequest> _pendingRegistrations = new();
private static readonly object _lock = new object();
private static readonly object _lock = new();
public DynamicAssemblyRegistrationService(
IServiceProvider serviceProvider,

View file

@ -1,5 +1,5 @@
{
"commit": "f7deeb4",
"commit": "533e937",
"releases": [
{
"version": "1.0.33",
@ -163,7 +163,7 @@
{
"version": "1.0.14",
"buildDate": "2025-09-22",
"commit": "1c4ab4f8232b4cd2a39fa66f8101664840113ce5",
"commit": "51208b86937484d68b699120d74872067b1c7ef6",
"changeLog": [
"Yeni versiyon çıktı uyarı gelecek şekilde düzenlendi.",
"Sağ alt kısımda mesaj çıkacak ve yenile butonu ile uygulama yeni versiyona geçecektir."

View file

@ -1,18 +0,0 @@
import { ReactNode, CSSProperties } from 'react'
export interface CommonProps {
className?: string
children?: ReactNode
style?: CSSProperties
}
export type TableQueries = {
total?: number
pageIndex?: number
pageSize?: number
query?: string
sort?: {
order: 'asc' | 'desc' | ''
key: string | number
}
}

View file

@ -1,12 +0,0 @@
import type { LazyExoticComponent } from 'react'
export type DocRouteNav = {
path: string
label: string
component: LazyExoticComponent<() => JSX.Element>
}
export type DocumentationRoute = {
groupName: string
nav: DocRouteNav[]
}

View file

@ -1,6 +1,6 @@
import React, { useState, useEffect, useRef } from 'react'
import Editor from '@monaco-editor/react'
import { ComponentDefinition } from '../../@types/componentInfo'
import { ComponentDefinition } from '../../proxy/developerKit/componentInfo'
import { generateSingleComponentJSX, generateUniqueId } from '@/utils/codeParser'
import { FaCheck, FaCode, FaSpinner, FaMousePointer, FaSave, FaCog, FaTimes } from 'react-icons/fa'

View file

@ -1,8 +1,8 @@
import React, { useMemo, useState } from "react";
import { FaSearch, FaSquare } from 'react-icons/fa';
import { ComponentDefinition, HookInfo, PropertyInfo } from "../../@types/componentInfo";
import { ComponentDefinition, HookInfo, PropertyInfo } from "../../proxy/developerKit/componentInfo";
import { getAllComponentDefinitions } from "./data/componentDefinitions";
import navigationIcon from "@/configs/navigation-icon.config";
import navigationIcon from "@/proxy/menus/navigation-icon.config";
interface ComponentLibraryProps {
onDragStart: (componentDef: ComponentDefinition, e: React.DragEvent) => void;

View file

@ -1,5 +1,5 @@
import React from 'react';
import { ComponentInfo } from '../../@types/componentInfo';
import { ComponentInfo } from '../../proxy/developerKit/componentInfo';
interface ComponentSelectorProps {
components: ComponentInfo[];

View file

@ -1,6 +1,6 @@
import { useState, useEffect } from "react";
import TailwindModal from "./TailwindModal";
import { ComponentInfo, HookInfo, PropertyInfo } from "../../@types/componentInfo";
import { ComponentInfo, HookInfo, PropertyInfo } from "../../proxy/developerKit/componentInfo";
import { getComponentDefinition } from "./data/componentDefinitions";
interface PropertyPanelProps {

View file

@ -1,4 +1,4 @@
import { ComponentDefinition } from "../../../@types/componentInfo";
import { ComponentDefinition } from "../../../proxy/developerKit/componentInfo";
export const CUSTOM_COMPONENTS: ComponentDefinition[] = [
{

View file

@ -1,4 +1,4 @@
import { TailwindClass } from "../../../@types/componentInfo";
import { TailwindClass } from "../../../proxy/developerKit/componentInfo";
export const TAILWIND_CLASSES: TailwindClass[] = [
{

View file

@ -16,7 +16,7 @@ import { ComponentLibrary } from '../../components/codeLayout/ComponentLibrary'
import { Splitter } from '../../components/codeLayout/Splitter'
import { PanelManager } from '../../components/codeLayout/PanelManager'
import { CodeEditor } from '../../components/codeLayout/CodeEditor'
import { ComponentDefinition, ComponentInfo, EditorState } from '../../@types/componentInfo'
import { ComponentDefinition, ComponentInfo, EditorState } from '../../proxy/developerKit/componentInfo'
import PropertyPanel from '../../components/codeLayout/PropertyPanel'
import ComponentSelector from '../../components/codeLayout/ComponentSelector'
import { useParams } from 'react-router-dom'

View file

@ -12,7 +12,7 @@ import {
} from 'react-icons/fa'
import { parseReactCode } from '../../utils/codeParser'
import ComponentPreview from '../../components/componentEditor/ComponentPreview'
import { EditorState } from '../../@types/componentInfo'
import { EditorState } from '../../proxy/developerKit/componentInfo'
import { ROUTES_ENUM } from '@/routes/route.constant'
import { useLocalization } from '@/utils/hooks/useLocalization'
import { Formik, Form, Field, FieldProps } from 'formik'

View file

@ -17,7 +17,7 @@ import { useLocalization } from '@/utils/hooks/useLocalization'
import { Formik, Form, Field, FieldProps, FieldArray } from 'formik'
import * as Yup from 'yup'
import { FormItem, Input, Select, Checkbox, FormContainer, Button } from '@/components/ui'
import { SelectBoxOption } from '@/shared/types'
import { SelectBoxOption } from '@/types/shared'
import { MenuPrefixEnum, menuPrefixValues, toPrefix } from '@/types/menu'
// Validation schema

View file

@ -1,7 +1,7 @@
import { cloneElement } from 'react'
import Logo from '@/components/template/Logo'
import { APP_NAME } from '@/constants/app.constant'
import type { CommonProps } from '@/@types/common'
import type { CommonProps } from '@/proxy/common'
import type { ReactNode, ReactElement } from 'react'
import { Avatar } from '@/components/ui'
import { useLocalization } from '@/utils/hooks/useLocalization'

View file

@ -2,7 +2,7 @@ import { cloneElement } from 'react'
import Avatar from '@/components/ui/Avatar'
import Logo from '@/components/template/Logo'
import { APP_NAME } from '@/constants/app.constant'
import type { CommonProps } from '@/@types/common'
import type { CommonProps } from '@/proxy/common'
import { useLocalization } from '@/utils/hooks/useLocalization'
interface SideProps extends CommonProps {

View file

@ -3,11 +3,11 @@ import Container from '@/components/shared/Container'
import Card from '@/components/ui/Card'
import Logo from '@/components/template/Logo'
import type { ReactNode, ReactElement } from 'react'
import type { CommonProps } from '@/@types/common'
import type { CommonProps } from '@/proxy/common'
import { FaArrowLeft, FaCheck } from 'react-icons/fa';
import { Avatar, Select } from '@/components/ui'
import { useStoreActions, useStoreState } from '@/store'
import appConfig from '@/configs/app.config'
import appConfig from '@/proxy/configs/app.config'
import dayjs from 'dayjs'
import { components } from 'react-select'
import { ROUTES_ENUM } from '@/routes/route.constant'

View file

@ -1,7 +1,7 @@
import { useEffect, useCallback } from 'react'
import { useStoreState, useStoreActions } from '@/store'
import { useLocation } from 'react-router-dom'
import type { LayoutType } from '@/@types/theme'
import type { LayoutType } from '@/proxy/theme/models'
import type { ComponentType } from 'react'
export type AppRouteProps<T> = {

View file

@ -1,4 +1,4 @@
import appConfig from '@/configs/app.config'
import appConfig from '@/proxy/configs/app.config'
import { REDIRECT_URL_KEY } from '@/constants/app.constant'
import { Navigate, Outlet, useLocation } from 'react-router-dom'
import useAuth from '@/utils/hooks/useAuth'

View file

@ -1,5 +1,5 @@
import { Navigate, Outlet } from 'react-router-dom'
import appConfig from '@/configs/app.config'
import appConfig from '@/proxy/configs/app.config'
import useAuth from '@/utils/hooks/useAuth'
const { authenticatedEntryPath } = appConfig

View file

@ -1,7 +1,7 @@
import classNames from 'classnames'
import useThemeClass from '@/utils/hooks/useThemeClass'
import { Link } from 'react-router-dom'
import type { CommonProps } from '@/@types/common'
import type { CommonProps } from '@/proxy/common'
import type { ComponentPropsWithoutRef } from 'react'
interface ActionLink extends CommonProps, ComponentPropsWithoutRef<'a'> {

View file

@ -1,6 +1,6 @@
import { useEffect, createRef } from 'react'
import classNames from 'classnames'
import type { CommonProps } from '@/@types/common'
import type { CommonProps } from '@/proxy/common'
type AffixStyles = {
position: string

View file

@ -1,5 +1,5 @@
import useAuthority from '@/utils/hooks/useAuthority'
import type { CommonProps } from '@/@types/common'
import type { CommonProps } from '@/proxy/common'
interface AuthorityCheckProps extends CommonProps {
userAuthority: string[]

View file

@ -1,6 +1,6 @@
import { forwardRef, ElementType } from 'react'
import classNames from 'classnames'
import { CommonProps } from '@/@types/common'
import { CommonProps } from '@/proxy/common'
interface ContainerProps extends CommonProps {
asElement?: ElementType

View file

@ -1,5 +1,5 @@
import classNames from 'classnames'
import type { CommonProps } from '@/@types/common'
import type { CommonProps } from '@/proxy/common'
import type { ReactNode, ElementType } from 'react'
export interface IconTextProps extends CommonProps {

View file

@ -1,6 +1,6 @@
import Spinner from '@/components/ui/Spinner'
import classNames from 'classnames'
import type { CommonProps } from '@/@types/common'
import type { CommonProps } from '@/proxy/common'
import type { ElementType, ReactNode } from 'react'
interface BaseLoadingProps extends CommonProps {

View file

@ -1,5 +1,5 @@
import { FaAlignLeft, FaAlignJustify } from 'react-icons/fa'
import type { CommonProps } from '@/@types/common'
import type { CommonProps } from '@/proxy/common'
export interface NavToggleProps extends CommonProps {
toggled?: boolean

View file

@ -1,4 +1,4 @@
import type { CommonProps } from '@/@types/common'
import type { CommonProps } from '@/proxy/common'
import { usePermission } from '@/utils/hooks/usePermission'
interface PermissionCheckProps extends CommonProps {

View file

@ -2,7 +2,7 @@ import { forwardRef } from 'react'
import classNames from 'classnames'
import useThemeClass from '@/utils/hooks/useThemeClass'
import { FaCheckCircle } from 'react-icons/fa'
import type { CommonProps } from '@/@types/common'
import type { CommonProps } from '@/proxy/common'
interface SegmentItemOptionProps extends CommonProps {
active: boolean

View file

@ -1,6 +1,6 @@
import { useRef, useState, useEffect } from 'react'
import classNames from 'classnames'
import type { CommonProps } from '@/@types/common'
import type { CommonProps } from '@/proxy/common'
import type { HTMLAttributes } from 'react'
interface StickyFooterProps

View file

@ -1,6 +1,6 @@
import { forwardRef } from 'react'
import classNames from 'classnames'
import type { CommonProps } from '@/@types/common'
import type { CommonProps } from '@/proxy/common'
const SvgIcon = forwardRef<HTMLSpanElement, CommonProps>((props, ref) => {
const { children, className, ...rest } = props

View file

@ -1,7 +1,7 @@
import classNames from 'classnames'
import { HEADER_HEIGHT_CLASS } from '@/constants/theme.constant'
import type { ReactNode } from 'react'
import type { CommonProps } from '@/@types/common'
import type { CommonProps } from '@/proxy/common'
interface HeaderProps extends CommonProps {
headerStart?: ReactNode

View file

@ -1,4 +1,4 @@
import type { NavMode } from '@/@types/theme'
import type { NavMode } from '@/proxy/theme/models'
import { PermissionCheck } from '@/components/shared'
import Dropdown from '@/components/ui/Dropdown'
import {

View file

@ -1,4 +1,4 @@
import navigationIcon from '@/configs/navigation-icon.config'
import navigationIcon from '@/proxy/menus/navigation-icon.config'
import type { ElementType, ComponentPropsWithRef } from 'react'
import React from 'react'
import { FaQuestionCircle } from 'react-icons/fa'

View file

@ -1,7 +1,7 @@
import navigationIcon from '@/configs/navigation-icon.config'
import navigationIcon from '@/proxy/menus/navigation-icon.config'
import MenuItem from '@/components/ui/MenuItem'
import HorizontalMenuNavLink from './HorizontalMenuNavLink'
import type { NavMode } from '@/@types/theme'
import type { NavMode } from '@/proxy/theme/models'
import React from 'react'
import { FaQuestionCircle } from 'react-icons/fa'

View file

@ -7,8 +7,8 @@ import withHeaderItem from '@/utils/hoc/withHeaderItem'
import { useStoreState, useStoreActions } from '@/store'
import dayjs from 'dayjs'
import { FaCheck } from 'react-icons/fa'
import type { CommonProps } from '@/@types/common'
import appConfig from '@/configs/app.config'
import type { CommonProps } from '@/proxy/common'
import appConfig from '@/proxy/configs/app.config'
import { dateLocales } from '@/constants/dateLocales.constant'
import { Tooltip } from '../ui'
import { useLocalization } from '@/utils/hooks/useLocalization'

View file

@ -1,7 +1,7 @@
import classNames from 'classnames'
import { APP_NAME } from '@/constants/app.constant'
import type { CommonProps } from '@/@types/common'
import { Mode } from '@/@types/theme'
import type { CommonProps } from '@/proxy/common'
import { Mode } from '@/proxy/theme/models'
import { Link } from 'react-router-dom'
import { ROUTES_ENUM } from '@/routes/route.constant'

View file

@ -6,8 +6,8 @@ import {
PAGE_CONTAINER_GUTTER_Y,
} from '@/constants/theme.constant'
import Footer from '@/components/template/Footer'
import type { CommonProps } from '@/@types/common'
import type { Meta } from '@/@types/routes'
import type { CommonProps } from '@/proxy/common'
import type { Meta } from '@/proxy/routes/routes'
import type { ElementType, ComponentPropsWithRef } from 'react'
import type { FooterPageContainerType } from '@/components/template/Footer'

View file

@ -3,7 +3,7 @@ import HorizontalMenuContent from '@/components/template/HorizontalMenuContent'
import { NAV_MODE_THEMED } from '@/constants/theme.constant'
import useResponsive from '@/utils/hooks/useResponsive'
import { useStoreState } from '@/store'
import type { CommonProps } from '@/@types/common'
import type { CommonProps } from '@/proxy/common'
interface SecondaryHeaderProps extends CommonProps {
contained: boolean

View file

@ -2,7 +2,7 @@ import withHeaderItem from '@/utils/hoc/withHeaderItem'
import { useStoreState, useStoreActions } from '@/store'
import useResponsive from '@/utils/hooks/useResponsive'
import NavToggle from '@/components/shared/NavToggle'
import type { CommonProps } from '@/@types/common'
import type { CommonProps } from '@/proxy/common'
const _SideNavToggle = ({ className }: CommonProps) => {
const sideNavCollapse = useStoreState((state) => state.theme.layout.sideNavCollapse)

View file

@ -3,7 +3,7 @@ import Drawer from '@/components/ui/Drawer'
import SidePanelContent, { SidePanelContentProps } from './SidePanelContent'
import withHeaderItem from '@/utils/hoc/withHeaderItem'
import { useStoreState, useStoreActions } from '@/store'
import type { CommonProps } from '@/@types/common'
import type { CommonProps } from '@/proxy/common'
import { useLocalization } from '@/utils/hooks/useLocalization'
import { FcEngineering } from 'react-icons/fc'
import { Tooltip } from '@/components/ui'

View file

@ -1,11 +1,11 @@
import type { CommonProps } from '@/@types/common'
import type { NavigationTree } from '@/@types/navigation'
import type { Direction, Mode, NavMode } from '@/@types/theme'
import type { CommonProps } from '@/proxy/common'
import type { NavigationTree } from '@/proxy/menus/navigation'
import type { Direction, Mode, NavMode } from '@/proxy/theme/models'
import { PermissionCheck } from '@/components/shared'
import Logo from '@/components/template/Logo'
import Menu from '@/components/ui/Menu'
import ScrollBar from '@/components/ui/ScrollBar'
import navigationIcon from '@/configs/navigation-icon.config'
import navigationIcon from '@/proxy/menus/navigation-icon.config'
import { NAV_ITEM_TYPE_ITEM } from '@/constants/navigation.constant'
import {
NAV_MODE_DARK,

View file

@ -4,8 +4,8 @@ import classNames from 'classnames'
import { HEADER_HEIGHT_CLASS, DIR_LTR, DIR_RTL } from '@/constants/theme.constant'
import VerticalMenuContent from '@/components/template/VerticalMenuContent'
import { FaArrowLeft, FaArrowRight } from 'react-icons/fa'
import type { NavigationTree } from '@/@types/navigation'
import type { Direction, NavMode } from '@/@types/theme'
import type { NavigationTree } from '@/proxy/menus/navigation'
import type { Direction, NavMode } from '@/proxy/theme/models'
type StackedSideNavSecondaryProps = {
className?: string

View file

@ -1,6 +1,6 @@
import type { CommonProps } from '@/@types/common'
import type { CommonProps } from '@/proxy/common'
import ConfigProvider from '@/components/ui/ConfigProvider'
import { themeConfig } from '@/configs/theme.config'
import { themeConfig } from '@/proxy/theme/theme.config'
import { useStoreActions, useStoreState } from '@/store'
import useDarkMode from '@/utils/hooks/useDarkmode'
import useNotification from '@/utils/hooks/useNotification'

View file

@ -1,7 +1,7 @@
import Notification from '@/components/ui/Notification'
import Button from '@/components/ui/Button'
import toast from '@/components/ui/toast'
import { themeConfig } from '@/configs/theme.config'
import { themeConfig } from '@/proxy/theme/theme.config'
import { useStoreState } from '@/store'
const CopyButton = () => {

View file

@ -2,7 +2,7 @@ import Button from '@/components/ui/Button'
import InputGroup from '@/components/ui/InputGroup'
import useDirection from '@/utils/hooks/useDirection'
import { THEME_ENUM } from '@/constants/theme.constant'
import type { Direction } from '@/@types/theme'
import type { Direction } from '@/proxy/theme/models'
const dirList = [
{ value: THEME_ENUM.DIR_LTR, label: 'LTR' },

View file

@ -13,7 +13,7 @@ import {
LAYOUT_TYPE_DECKED,
LAYOUT_TYPE_BLANK,
} from '@/constants/theme.constant'
import type { LayoutType } from '@/@types/theme'
import type { LayoutType } from '@/proxy/theme/models'
import { useLocalization } from '@/utils/hooks/useLocalization'
const layouts = [

View file

@ -4,7 +4,7 @@ import Badge from '@/components/ui/Badge'
import { useStoreState, useStoreActions } from '@/store'
import { FaCheck } from 'react-icons/fa'
import { components } from 'react-select'
import type { ColorLevel } from '@/@types/theme'
import type { ColorLevel } from '@/proxy/theme/models'
import type { ControlProps, OptionProps } from 'react-select'
const { Control } = components

View file

@ -1,4 +1,4 @@
import type { CommonProps } from '@/@types/common'
import type { CommonProps } from '@/proxy/common'
import Dropdown from '@/components/ui/Dropdown'
import { ROUTES_ENUM } from '@/routes/route.constant'
import { useStoreActions, useStoreState } from '@/store'

View file

@ -1,6 +1,6 @@
import type { CommonProps } from '@/@types/common'
import type { NavigationTree } from '@/@types/navigation'
import type { Direction } from '@/@types/theme'
import type { CommonProps } from '@/proxy/common'
import type { NavigationTree } from '@/proxy/menus/navigation'
import type { Direction } from '@/proxy/theme/models'
import { PermissionCheck } from '@/components/shared'
import Dropdown from '@/components/ui/Dropdown'
import Menu from '@/components/ui/Menu'

View file

@ -1,8 +1,8 @@
import type { NavigationTree } from '@/@types/navigation'
import { Direction, NavMode } from '@/@types/theme'
import type { NavigationTree } from '@/proxy/menus/navigation'
import { Direction, NavMode } from '@/proxy/theme/models'
import { PermissionCheck } from '@/components/shared'
import Menu from '@/components/ui/Menu'
import { themeConfig } from '@/configs/theme.config'
import { themeConfig } from '@/proxy/theme/theme.config'
import {
NAV_ITEM_TYPE_COLLAPSE,
NAV_ITEM_TYPE_ITEM,

View file

@ -1,4 +1,4 @@
import navigationIcon from '@/configs/navigation-icon.config'
import navigationIcon from '@/proxy/menus/navigation-icon.config'
import type { ElementType, ComponentPropsWithRef } from 'react'
import React from 'react'

View file

@ -2,9 +2,9 @@ import Tooltip from '@/components/ui/Tooltip'
import Menu from '@/components/ui/Menu'
import VerticalMenuIcon from './VerticalMenuIcon'
import { Link } from 'react-router-dom'
import type { CommonProps } from '@/@types/common'
import type { Direction } from '@/@types/theme'
import type { NavigationTree } from '@/@types/navigation'
import type { CommonProps } from '@/proxy/common'
import type { Direction } from '@/proxy/theme/models'
import type { NavigationTree } from '@/proxy/menus/navigation'
import { PermissionCheck } from '@/components/shared'
const { MenuItem } = Menu

View file

@ -1,23 +0,0 @@
import { ROUTES_ENUM } from "@/routes/route.constant"
export type AppConfig = {
baseUrl: string
apiPrefix: string
authenticatedEntryPath: string
unAuthenticatedEntryPath: string
tourPath: string
locale: string
uiVersion: string | undefined
}
const appConfig: AppConfig = {
baseUrl: import.meta.env.VITE_API_URL,
apiPrefix: '/api',
authenticatedEntryPath: ROUTES_ENUM.protected.dashboard,
unAuthenticatedEntryPath: ROUTES_ENUM.authenticated.login,
tourPath: '/',
locale: 'en',
uiVersion : undefined
}
export default appConfig

View file

@ -1,43 +0,0 @@
import { THEME_ENUM } from '@/constants/theme.constant'
import {
Direction,
Mode,
ColorLevel,
NavMode,
ControlSize,
LayoutType,
} from '@/@types/theme'
export type ThemeConfig = {
themeColor: string
direction: Direction
mode: Mode
primaryColorLevel: ColorLevel
panelExpand: boolean
navMode: NavMode
controlSize: ControlSize
cardBordered: boolean
layout: {
type: LayoutType
sideNavCollapse: boolean
}
}
/**
* Since some configurations need to be match with specific themes,
* we recommend to use the configuration that generated from demo.
*/
export const themeConfig: ThemeConfig = {
themeColor: 'indigo',
direction: THEME_ENUM.DIR_LTR,
mode: THEME_ENUM.MODE_LIGHT,
primaryColorLevel: 600,
cardBordered: true,
panelExpand: false,
controlSize: 'md',
navMode: THEME_ENUM.NAV_MODE_LIGHT,
layout: {
type: THEME_ENUM.LAYOUT_TYPE_SIMPLE,
sideNavCollapse: false,
},
}

File diff suppressed because it is too large Load diff

View file

@ -1,2 +0,0 @@
export const ADMIN = 'admin'
export const USER = 'user'

View file

@ -1,5 +1,5 @@
import { ExtensibleObject } from '..'
import { SignInResponse } from '../../@types/auth'
import { SignInResponse } from '../auth/models'
export interface ProfileDto extends ExtensibleObject {
email: string

7
ui/src/proxy/common.ts Normal file
View file

@ -0,0 +1,7 @@
import { ReactNode, CSSProperties } from 'react'
export interface CommonProps {
className?: string
children?: ReactNode
style?: CSSProperties
}

View file

@ -0,0 +1,14 @@
import { ROUTES_ENUM } from '@/routes/route.constant'
import { AppConfig } from './models'
const appConfig: AppConfig = {
baseUrl: import.meta.env.VITE_API_URL,
apiPrefix: '/api',
authenticatedEntryPath: ROUTES_ENUM.protected.dashboard,
unAuthenticatedEntryPath: ROUTES_ENUM.authenticated.login,
tourPath: '/',
locale: 'en',
uiVersion: undefined,
}
export default appConfig

View file

@ -0,0 +1,9 @@
export type AppConfig = {
baseUrl: string
apiPrefix: string
authenticatedEntryPath: string
unAuthenticatedEntryPath: string
tourPath: string
locale: string
uiVersion: string | undefined
}

View file

@ -1,4 +1,4 @@
import { LayoutType } from './theme'
import { LayoutType } from '../theme/models'
import type { LazyExoticComponent, ReactNode } from 'react'
export interface Meta {

View file

@ -1,7 +1,7 @@
export type Direction = 'ltr' | 'rtl'
export type Mode = 'light' | 'dark'
export type NavMode = 'transparent' | 'light' | 'dark' | 'themed'
export type ControlSize = 'lg' | 'md' | 'sm'
export type ControlSize = 'lg' | 'md' | 'sm' | 'xs'
export type LayoutType =
| 'blank'
| 'classic'
@ -20,3 +20,17 @@ export type ColorLevel =
| 700
| 800
| 900
export type ThemeConfig = {
themeColor: string
direction: Direction
mode: Mode
primaryColorLevel: ColorLevel
panelExpand: boolean
navMode: NavMode
controlSize: ControlSize
cardBordered: boolean
layout: {
type: LayoutType
sideNavCollapse: boolean
}
}

View file

@ -0,0 +1,17 @@
import { THEME_ENUM } from '@/constants/theme.constant'
import { ThemeConfig } from '@/proxy/theme/models'
export const themeConfig: ThemeConfig = {
themeColor: 'indigo',
direction: THEME_ENUM.DIR_LTR,
mode: THEME_ENUM.MODE_LIGHT,
primaryColorLevel: 600,
cardBordered: true,
panelExpand: false,
controlSize: 'md',
navMode: THEME_ENUM.NAV_MODE_LIGHT,
layout: {
type: THEME_ENUM.LAYOUT_TYPE_SIMPLE,
sideNavCollapse: false,
},
}

View file

@ -1,5 +1,5 @@
import { AxiosError } from 'axios'
import { SignUpCredential, SignUpResponse } from '../@types/auth'
import { SignUpCredential, SignUpResponse } from '../proxy/auth/models'
import apiService from './api.service'
import { ProfileDto, UpdateProfileDto } from '@/proxy/account/models'

View file

@ -3,7 +3,7 @@ import {
FailedSignInResponse,
SignInCredential,
SignInResponse,
} from '../@types/auth'
} from '../proxy/auth/models'
import { AUTH_API_NAME } from '../constants/app.constant'
import apiService, { Config } from './api.service'

View file

@ -1,4 +1,4 @@
import appConfig from '@/configs/app.config'
import appConfig from '@/proxy/configs/app.config'
import { store } from '@/store'
import axios from 'axios'

View file

@ -1,7 +1,7 @@
import axios from 'axios'
import { store } from '../store'
import { jwtDecode } from 'jwt-decode'
import appConfig from '../configs/app.config'
import appConfig from '../proxy/configs/app.config'
import { refreshToken } from './auth.service'
import { isLoginSuccess } from '../proxy/account/models'

View file

@ -2,8 +2,8 @@ import type { Action, Thunk } from 'easy-peasy'
import { action, thunk } from 'easy-peasy'
import { Injections, StoreModel } from '.'
import { getLocalization, setLocalization } from '../services/localization.service'
import appConfig from '../configs/app.config'
import { NavigationTree } from '../@types/navigation'
import appConfig from '../proxy/configs/app.config'
import { NavigationTree } from '../proxy/menus/navigation'
import { MenuDto } from '../proxy/menus/models'
import getChildren from '../utils/navigation'
import {

View file

@ -1,6 +1,6 @@
import type { Action, ThunkOn } from 'easy-peasy'
import { action, thunkOn } from 'easy-peasy'
import appConfig from '../configs/app.config'
import appConfig from '../proxy/configs/app.config'
import { Injections, StoreModel } from '.'
export interface LocaleStoreModel {

View file

@ -1,6 +1,6 @@
import type { Action } from 'easy-peasy'
import { action } from 'easy-peasy'
import { themeConfig } from '../configs/theme.config'
import { themeConfig } from '../proxy/theme/theme.config'
import {
LAYOUT_TYPE_CLASSIC,
LAYOUT_TYPE_DECKED,
@ -13,7 +13,7 @@ import {
NAV_MODE_THEMED,
NAV_MODE_TRANSPARENT,
} from '../constants/theme.constant'
import { Direction, Mode, NavMode } from '../@types/theme'
import { Direction, Mode, NavMode } from '../proxy/theme/models'
export interface ThemeStoreModel {
themeColor: string

View file

@ -2,7 +2,7 @@ import * as parser from "@babel/parser";
import traverse from "@babel/traverse";
import * as t from "@babel/types";
import generate from "@babel/generator";
import { ComponentInfo } from "../@types/componentInfo";
import { ComponentInfo } from "../proxy/developerKit/componentInfo";
export interface ParsedComponent {
components: ComponentInfo[];

View file

@ -7,11 +7,11 @@ import {
SignInCredential,
SignInResponse,
SignUpCredential,
} from '../../@types/auth'
} from '../../proxy/auth/models'
import { signIn, signOut } from '../../services/auth.service'
import { isLoginSuccess } from '../../proxy/account/models'
import { REDIRECT_URL_KEY } from '../../constants/app.constant'
import appConfig from '../../configs/app.config'
import appConfig from '../../proxy/configs/app.config'
import { register } from '../../services/account.service'
type Status = 'success' | 'failed' | 'error'

View file

@ -1,7 +1,7 @@
import { useStoreState } from '@/store/store'
import { useLocation } from 'react-router-dom'
import { FaUser } from 'react-icons/fa'
import navigationIcon from '@/configs/navigation-icon.config'
import navigationIcon from '@/proxy/menus/navigation-icon.config'
import { navigationTreeToFlat } from '@/utils/navigation'
export function useCurrentMenuIcon(className = 'w-6 h-6'): JSX.Element {

View file

@ -1,4 +1,4 @@
import type { Mode } from '@/@types/theme'
import type { Mode } from '@/proxy/theme/models'
import { THEME_ENUM } from '@/constants/theme.constant'
import { useStoreActions, useStoreState } from '@/store'
import { useEffect } from 'react'

View file

@ -1,6 +1,6 @@
import { useEffect } from 'react'
import { useStoreActions, useStoreState } from '@/store'
import type { Direction } from '@/@types/theme'
import type { Direction } from '@/proxy/theme/models'
function useDirection(): [direction: Direction, updateDirection: (dir: Direction) => void] {
const direction = useStoreState((state) => state.theme.direction)

View file

@ -1,6 +1,6 @@
/* eslint-disable @typescript-eslint/no-explicit-any */
// eslint-disable @typescript-eslint/no-explicit-any
import type { NavigationTree } from '@/@types/navigation'
import type { NavigationTree } from '@/proxy/menus/navigation'
import isPlainObject from 'lodash/isPlainObject'
import { useMemo } from 'react'

View file

@ -1,4 +1,4 @@
import { MenuItem } from '@/@types/menu'
import { MenuItem } from '@/proxy/menus/menu'
import { getMenus, MenuService } from '@/services/menu.service'
import { useStoreActions } from '@/store/store'
import { useState, useEffect } from 'react'

View file

@ -1,4 +1,4 @@
import { NavigationTree } from '@/@types/navigation'
import { NavigationTree } from '@/proxy/menus/navigation'
import {
NAV_ITEM_TYPE_COLLAPSE,
NAV_ITEM_TYPE_ITEM,

View file

@ -1,4 +1,4 @@
import type { LayoutType } from '@/@types/theme'
import type { LayoutType } from '@/proxy/theme/models'
import Loading from '@/components/shared/Loading'
import { Alert, Button } from '@/components/ui'
import { store, useStoreState } from '@/store'

View file

@ -1,4 +1,4 @@
import type { CommonProps } from '@/@types/common'
import type { CommonProps } from '@/proxy/common'
import { Card, Tag } from '@/components/ui'
import { NotificationChannelColors } from '@/constants/notification-channel.enum'
import { NotificationDto } from '@/proxy/notification/models'

View file

@ -1,4 +1,4 @@
import type { CommonProps } from '@/@types/common'
import type { CommonProps } from '@/proxy/common'
import Affix from '@/components/shared/Affix'
import Checkbox from '@/components/ui/Checkbox'
import NotificationChannels from '@/constants/notification-channel.enum'

View file

@ -11,7 +11,7 @@ import {
import { ROUTES_ENUM } from '@/routes/route.constant'
import { ListFormWizardDto } from '@/proxy/admin/list-form/models'
import { getDataSources } from '@/proxy/data-source'
import { SelectBoxOption } from '@/shared/types'
import { SelectBoxOption } from '@/types/shared'
import { useLocalization } from '@/utils/hooks/useLocalization'
import { Field, FieldProps, Form, Formik } from 'formik'
import { useEffect, useState } from 'react'

View file

@ -1,5 +1,5 @@
import { Card, Checkbox, FormContainer, FormItem, Input, Select, Button } from '@/components/ui'
import { SelectBoxOption } from '@/shared/types'
import { SelectBoxOption } from '@/types/shared'
import { Field, FieldProps, Form, Formik } from 'formik'
import { object } from 'yup'
import { useLocalization } from '@/utils/hooks/useLocalization'

View file

@ -17,7 +17,7 @@ import THead from '@/components/ui/Table/THead'
import Td from '@/components/ui/Table/Td'
import Th from '@/components/ui/Table/Th'
import Tr from '@/components/ui/Table/Tr'
import { SelectBoxOption } from '@/shared/types'
import { SelectBoxOption } from '@/types/shared'
import { Field, FieldProps, Form, Formik } from 'formik'
import { FaEdit, FaFileMedical, FaTrash } from 'react-icons/fa'
import { object, string } from 'yup'

View file

@ -17,7 +17,7 @@ import Tr from '@/components/ui/Table/Tr'
import TabContent from '@/components/ui/Tabs/TabContent'
import TabList from '@/components/ui/Tabs/TabList'
import TabNav from '@/components/ui/Tabs/TabNav'
import { SelectBoxOption } from '@/shared/types'
import { SelectBoxOption } from '@/types/shared'
import { Field, FieldProps, Form, Formik } from 'formik'
import { FaEdit, FaPlus, FaTrash } from 'react-icons/fa'
import { FormEditProps } from '../../listForm/edit/FormEdit'

View file

@ -12,7 +12,7 @@ import TabContent from '@/components/ui/Tabs/TabContent'
import TabList from '@/components/ui/Tabs/TabList'
import TabNav from '@/components/ui/Tabs/TabNav'
import { IdentityRoleDto } from '@/proxy/admin/models'
import { SelectBoxOption } from '@/shared/types'
import { SelectBoxOption } from '@/types/shared'
import { Field, FieldProps, Form, Formik, FormikErrors, FormikTouched } from 'formik'
import { FormEditProps } from '../../listForm/edit/FormEdit'
import { useLocalization } from '@/utils/hooks/useLocalization'

View file

@ -1,5 +1,5 @@
import { Button, Card, Checkbox, FormContainer, FormItem, Input, Select } from '@/components/ui'
import { SelectBoxOption } from '@/shared/types'
import { SelectBoxOption } from '@/types/shared'
import { Field, FieldProps, Form, Formik } from 'formik'
import { FormEditProps } from '../../listForm/edit/FormEdit'
import { useLocalization } from '@/utils/hooks/useLocalization'

View file

@ -11,7 +11,7 @@ import {
import TabContent from '@/components/ui/Tabs/TabContent'
import TabList from '@/components/ui/Tabs/TabList'
import TabNav from '@/components/ui/Tabs/TabNav'
import { SelectBoxOption } from '@/shared/types'
import { SelectBoxOption } from '@/types/shared'
import { Field, FieldProps, Form, Formik } from 'formik'
import { FormEditProps } from '../../listForm/edit/FormEdit'
import { useLocalization } from '@/utils/hooks/useLocalization'

View file

@ -21,7 +21,7 @@ import TabContent from '@/components/ui/Tabs/TabContent'
import TabList from '@/components/ui/Tabs/TabList'
import TabNav from '@/components/ui/Tabs/TabNav'
import { ChartPanesDto, ChartValueAxisDto } from '@/proxy/admin/charts/models'
import { SelectBoxOption } from '@/shared/types'
import { SelectBoxOption } from '@/types/shared'
import { Field, FieldProps, Form, Formik } from 'formik'
import { FaEdit, FaPlus, FaTrash } from 'react-icons/fa'
import { FormEditProps } from '../../listForm/edit/FormEdit'

View file

@ -1,5 +1,5 @@
import { Button, Card, Checkbox, FormContainer, FormItem, Input, Select } from '@/components/ui'
import { SelectBoxOption } from '@/shared/types'
import { SelectBoxOption } from '@/types/shared'
import { Field, FieldProps, Form, Formik } from 'formik'
import { FormEditProps } from '../../listForm/edit/FormEdit'
import { ListFormEditTabs } from '@/proxy/admin/list-form/options'

View file

@ -20,7 +20,7 @@ import {
postListFormCustomization,
putListFormCustomization,
} from '@/services/admin/list-form-customization.service'
import { SelectBoxOption } from '@/shared/types'
import { SelectBoxOption } from '@/types/shared'
import { useLocalization } from '@/utils/hooks/useLocalization'
import { Field, FieldProps, Form, Formik } from 'formik'
import { useState } from 'react'

View file

@ -3,7 +3,7 @@ import TabContent from '@/components/ui/Tabs/TabContent'
import TabList from '@/components/ui/Tabs/TabList'
import TabNav from '@/components/ui/Tabs/TabNav'
import { LanguageInfo } from '@/proxy/config/models'
import { SelectBoxOption } from '@/shared/types'
import { SelectBoxOption } from '@/types/shared'
import { useStoreActions, useStoreState } from '@/store'
import { useLocalization } from '@/utils/hooks/useLocalization'
import { FormikHelpers } from 'formik'

View file

@ -2,7 +2,7 @@ import { Container } from '@/components/shared'
import { Button, Card, Checkbox, FormContainer, FormItem, Input, Select } from '@/components/ui'
import { ListFormEditTabs } from '@/proxy/admin/list-form/options'
import { getDataSources } from '@/proxy/data-source'
import { SelectBoxOption } from '@/shared/types'
import { SelectBoxOption } from '@/types/shared'
import { useStoreState } from '@/store'
import { useLocalization } from '@/utils/hooks/useLocalization'
import { Field, FieldProps, Form, Formik } from 'formik'

View file

@ -2,7 +2,7 @@ import { Container } from '@/components/shared'
import { Button, Checkbox, FormContainer, FormItem, Input, Select } from '@/components/ui'
import { ListFormEditTabs } from '@/proxy/admin/list-form/options'
import { LanguageInfo } from '@/proxy/config/models'
import { SelectBoxOption } from '@/shared/types'
import { SelectBoxOption } from '@/types/shared'
import { useStoreState } from '@/store'
import { useLocalization } from '@/utils/hooks/useLocalization'
import SelectBox from 'devextreme-react/select-box'

Some files were not shown because too many files have changed in this diff Show more