issue fix for dev env
This commit is contained in:
parent
ddcfa59045
commit
af0524b785
@ -1,17 +1,17 @@
|
||||
import React from 'react'
|
||||
import { Routes, Route, Navigate } from 'react-router-dom'
|
||||
import Dashboard from './pages/Dashboard/Dashboard'
|
||||
import AdminDashboard from './pages/Admin/AdminDashboard'
|
||||
import AdminUsers from './pages/Admin/AdminUsers'
|
||||
import Validations from './pages/Admin/Validations'
|
||||
import ValidationReview from './pages/Admin/ValidationReview'
|
||||
import Configuration from './pages/Admin/Configuration'
|
||||
import Survey from './pages/Survey/Survey'
|
||||
import Login from './pages/Login/Login'
|
||||
import History from './pages/History/History'
|
||||
import ChangePassword from './pages/ChangePassword/ChangePassword'
|
||||
import ForgotPassword from './pages/ForgotPassword/ForgotPassword'
|
||||
import PublicContactForm from './pages/PublicContactForm'
|
||||
import React from 'react';
|
||||
import { Routes, Route, Navigate } from 'react-router-dom';
|
||||
import Dashboard from '@/pages/Dashboard/Dashboard';
|
||||
import AdminDashboard from '@/pages/Admin/AdminDashboard';
|
||||
import AdminUsers from '@/pages/Admin/AdminUsers';
|
||||
import Validations from '@/pages/Admin/Validations';
|
||||
import ValidationReview from '@/pages/Admin/ValidationReview';
|
||||
import Configuration from '@/pages/Admin/Configuration';
|
||||
import Survey from '@/pages/Survey/Survey';
|
||||
import Login from '@/pages/Login/Login';
|
||||
import History from '@/pages/History/History';
|
||||
import ChangePassword from '@/pages/ChangePassword/ChangePassword';
|
||||
import ForgotPassword from '@/pages/ForgotPassword/ForgotPassword';
|
||||
import PublicContactForm from '@/pages/PublicContactForm';
|
||||
|
||||
const RequireRole = ({ allowedRoles = [], children }) => {
|
||||
let role
|
||||
|
||||
@ -1,15 +1,15 @@
|
||||
import React from 'react';
|
||||
import { NavLink, useNavigate } from 'react-router-dom';
|
||||
import Logo from '../../assets/images/fcsclogo.svg';
|
||||
import DashboardIconActive from '../../assets/images/cuida_dashboard-outline.svg';
|
||||
import DashboardIconInactive from '../../assets/images/cuida_dashboard-outline-inactive.svg';
|
||||
import CheckCircleActive from '../../assets/images/checkcircle-active.svg';
|
||||
import ConfigActive from '../../assets/images/configrationicon-active.svg';
|
||||
import ConfigInactive from '../../assets/images/configrationicon-inactive.svg';
|
||||
import UserActive from '../../assets/images/user-active.svg';
|
||||
import UserInactive from '../../assets/images/user-inactive.svg';
|
||||
import ManageSubmissionInactive from '../../assets/images/managesubmission - inactive.svg';
|
||||
import BellIconAsset from '../../assets/images/bell.svg';
|
||||
import Logo from '@/assets/images/fcsclogo.svg';
|
||||
import DashboardIconActive from '@/assets/images/cuida_dashboard-outline.svg';
|
||||
import DashboardIconInactive from '@/assets/images/cuida_dashboard-outline-inactive.svg';
|
||||
import CheckCircleActive from '@/assets/images/checkcircle-active.svg';
|
||||
import ConfigActive from '@/assets/images/configrationicon-active.svg';
|
||||
import ConfigInactive from '@/assets/images/configrationicon-inactive.svg';
|
||||
import UserActive from '@/assets/images/user-active.svg';
|
||||
import UserInactive from '@/assets/images/user-inactive.svg';
|
||||
import ManageSubmissionInactive from '@/assets/images/managesubmission - inactive.svg';
|
||||
import BellIconAsset from '@/assets/images/bell.svg';
|
||||
|
||||
const NavItem = ({ label, to, iconActive, iconInactive, end = false }) => (
|
||||
<NavLink
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
import React from 'react';
|
||||
import Table from '../common/Table';
|
||||
import SearchIcon from '../../assets/images/material-symbols_search-rounded.svg';
|
||||
import Table from '@/components/common/Table';
|
||||
import SearchIcon from '@/assets/images/material-symbols_search-rounded.svg';
|
||||
|
||||
const submissions = [
|
||||
{
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
import React from 'react';
|
||||
import CaretDownActive from '../../assets/images/caretdown-active.svg';
|
||||
import CalendarIcon from '../../assets/images/uil_calender.svg';
|
||||
import CaretDownActive from '@/assets/images/caretdown-active.svg';
|
||||
import CalendarIcon from '@/assets/images/uil_calender.svg';
|
||||
|
||||
const baseInputStyles = {
|
||||
default: {
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
import React from 'react';
|
||||
import CaretLeftIcon from '../../assets/images/caretleft.svg';
|
||||
import CaretRightIcon from '../../assets/images/caretright.svg';
|
||||
import CaretDoubleLeftIcon from '../../assets/images/caretdoubleleft.svg';
|
||||
import CaretDoubleRightIcon from '../../assets/images/caretdoubleright.svg';
|
||||
import CaretLeftIcon from '@/assets/images/caretleft.svg';
|
||||
import CaretRightIcon from '@/assets/images/caretright.svg';
|
||||
import CaretDoubleLeftIcon from '@/assets/images/caretdoubleleft.svg';
|
||||
import CaretDoubleRightIcon from '@/assets/images/caretdoubleright.svg';
|
||||
|
||||
// Generic, reusable table
|
||||
// Props:
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
import React from 'react';
|
||||
import { useNavigate } from 'react-router-dom';
|
||||
import Table from '../common/Table';
|
||||
import SearchIcon from '../../assets/images/material-symbols_search-rounded.svg';
|
||||
import CaretDown from '../../assets/images/caretdown.svg';
|
||||
import Table from '@/components/common/Table';
|
||||
import SearchIcon from '@/assets/images/material-symbols_search-rounded.svg';
|
||||
import CaretDown from '@/assets/images/caretdown.svg';
|
||||
|
||||
const getStatusClass = (status) => {
|
||||
const normalized = String(status || '').toLowerCase();
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
import React from 'react';
|
||||
import HeaderBar from '../../components/layout/HeaderBar';
|
||||
import HeaderBar from '@/components/layout/HeaderBar';
|
||||
|
||||
const formatDate = (value) => {
|
||||
if (!value) return '—';
|
||||
|
||||
@ -1,12 +1,12 @@
|
||||
import React from 'react';
|
||||
import { NavLink, useNavigate } from 'react-router-dom';
|
||||
import Logo from '../../assets/images/fcsclogo.svg';
|
||||
import SurveyIconActive from '../../assets/images/vector.svg';
|
||||
import SurveyIconInactive from '../../assets/images/vectorblack.svg';
|
||||
import DashboardIconActive from '../../assets/images/cuida_dashboard-outline.svg';
|
||||
import DashboardIconInactive from '../../assets/images/cuida_dashboard-outline-inactive.svg';
|
||||
import HistoryIconActive from '../../assets/images/mdi_history.svg';
|
||||
import HistoryIconInactive from '../../assets/images/history.svg';
|
||||
import Logo from '@/assets/images/fcsclogo.svg';
|
||||
import SurveyIconActive from '@/assets/images/vector.svg';
|
||||
import SurveyIconInactive from '@/assets/images/vectorblack.svg';
|
||||
import DashboardIconActive from '@/assets/images/cuida_dashboard-outline.svg';
|
||||
import DashboardIconInactive from '@/assets/images/cuida_dashboard-outline-inactive.svg';
|
||||
import HistoryIconActive from '@/assets/images/mdi_history.svg';
|
||||
import HistoryIconInactive from '@/assets/images/history.svg';
|
||||
|
||||
const HeaderBar = () => {
|
||||
const [open, setOpen] = React.useState(false);
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
import React from 'react';
|
||||
import CaretDown from '../../../assets/images/caretdown.svg';
|
||||
import BackVendor from '../../../assets/images/backvector.svg';
|
||||
import CaretDown from '@/assets/images/caretdown.svg';
|
||||
import BackVendor from '@/assets/images/backvector.svg';
|
||||
|
||||
const Field = ({ label, placeholder = '', type = 'text', value = '', onChange = () => {}, disabled = false }) => (
|
||||
<div>
|
||||
|
||||
@ -4,8 +4,8 @@ import {
|
||||
fetchZeroTargetReasons,
|
||||
fetchProducts,
|
||||
fetchUnits,
|
||||
} from '../../../services/masters/masterService.js';
|
||||
import CaretDown from '../../../assets/images/caretdown-black.svg';
|
||||
} from '@/services/masters/masterService.js';
|
||||
import CaretDown from '@/assets/images/caretdown-black.svg';
|
||||
|
||||
const Input = ({ placeholder = '', type = 'text', value = '', onChange = () => {} }) => (
|
||||
<input
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
import React from 'react';
|
||||
import Table from '../../common/Table';
|
||||
import BackVendor from '../../../assets/images/caretdown-black.svg';
|
||||
import Table from '@/components/common/Table';
|
||||
import BackVendor from '@/assets/images/caretdown-black.svg';
|
||||
|
||||
const Card = ({ title, children }) => (
|
||||
<div className="bg-white w-full rounded-lg shadow-sm ring-1 ring-gray-200">
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
import React from 'react'
|
||||
import ReactDOM from 'react-dom/client'
|
||||
import App from './App.jsx'
|
||||
import './index.css'
|
||||
import { BrowserRouter } from 'react-router-dom'
|
||||
import React from 'react';
|
||||
import ReactDOM from 'react-dom/client';
|
||||
import { BrowserRouter } from 'react-router-dom';
|
||||
import App from '@/App';
|
||||
import '@/index.css';
|
||||
|
||||
ReactDOM.createRoot(document.getElementById('root')).render(
|
||||
<React.StrictMode>
|
||||
|
||||
@ -1,13 +1,13 @@
|
||||
import React from 'react';
|
||||
import AdminHeader from '../../components/admin/AdminHeader';
|
||||
import StatCard from '../../components/admin/StatCard';
|
||||
import WpfSurveyIcon from '../../assets/images/wpf_survey.svg';
|
||||
import SubmittedIcon from '../../assets/images/check-circle-fill 1.svg';
|
||||
import ApprovedIcon from '../../assets/images/check-circle-fill 1-approved.svg';
|
||||
import RejectedIcon from '../../assets/images/warning-circle-fill 1.svg';
|
||||
import OverdueIcon from '../../assets/images/warning-fill 1.svg';
|
||||
import PendingIcon from '../../assets/images/info-fill 1.svg';
|
||||
import SubmissionTable from '../../components/admin/SubmissionTable';
|
||||
import AdminHeader from '@/components/admin/AdminHeader';
|
||||
import StatCard from '@/components/admin/StatCard';
|
||||
import WpfSurveyIcon from '@/assets/images/wpf_survey.svg';
|
||||
import SubmittedIcon from '@/assets/images/check-circle-fill 1.svg';
|
||||
import ApprovedIcon from '@/assets/images/check-circle-fill 1-approved.svg';
|
||||
import RejectedIcon from '@/assets/images/warning-circle-fill 1.svg';
|
||||
import OverdueIcon from '@/assets/images/warning-fill 1.svg';
|
||||
import PendingIcon from '@/assets/images/info-fill 1.svg';
|
||||
import SubmissionTable from '@/components/admin/SubmissionTable';
|
||||
|
||||
const AdminDashboard = () => {
|
||||
return (
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
import React from 'react';
|
||||
import { Link } from 'react-router-dom';
|
||||
import AdminHeader from '../../components/admin/AdminHeader';
|
||||
import AdminHeader from '@/components/admin/AdminHeader';
|
||||
import AdminUsersContent from './configuration/AdminUsers';
|
||||
import CaretUp from '../../assets/images/caret-up.svg';
|
||||
import CaretUp from '@/assets/images/caret-up.svg';
|
||||
|
||||
const AdminUsersPage = () => {
|
||||
return (
|
||||
|
||||
@ -1,12 +1,12 @@
|
||||
import React from 'react';
|
||||
import { Link } from 'react-router-dom';
|
||||
import AdminHeader from '../../components/admin/AdminHeader';
|
||||
import QuarterlyWindows from './configuration/QuarterlyWindows';
|
||||
import IsicHsCodes from './configuration/IsicHsCodes';
|
||||
import UnitMaster from './configuration/UnitMaster';
|
||||
import AdminUsers from './configuration/AdminUsers';
|
||||
import CompanyProfile from './configuration/CompanyProfile';
|
||||
import CaretUp from '../../assets/images/caret-up.svg';
|
||||
import AdminHeader from '@/components/admin/AdminHeader';
|
||||
import QuarterlyWindows from '@/pages/Admin/configuration/QuarterlyWindows';
|
||||
import IsicHsCodes from '@/pages/Admin/configuration/IsicHsCodes';
|
||||
import UnitMaster from '@/pages/Admin/configuration/UnitMaster';
|
||||
import AdminUsers from '@/pages/Admin/configuration/AdminUsers';
|
||||
import CompanyProfile from '@/pages/Admin/configuration/CompanyProfile';
|
||||
import CaretUp from '@/assets/images/caret-up.svg';
|
||||
|
||||
const Configuration = () => {
|
||||
const tabs = ['Quarterly Windows', 'HS Codes', 'Unit Master', 'Admin Users', 'Company Profile'];
|
||||
|
||||
@ -1,16 +1,16 @@
|
||||
import React from 'react';
|
||||
import { Link, useNavigate, useParams } from 'react-router-dom';
|
||||
import AdminHeader from '../../components/admin/AdminHeader';
|
||||
import CaretUp from '../../assets/images/caret-up.svg';
|
||||
import EstablishmentIcon from '../../assets/images/establishment.svg';
|
||||
import EstablishmentIdIcon from '../../assets/images/establishmentid.svg';
|
||||
import EmailIcon from '../../assets/images/emailid.svg';
|
||||
import EmiratesIcon from '../../assets/images/emirates.svg';
|
||||
import TotalEmployeesIcon from '../../assets/images/totalemployess.svg';
|
||||
import MaleEmployeesIcon from '../../assets/images/maleemployes.svg';
|
||||
import FemaleEmployeesIcon from '../../assets/images/femaleemployess.svg';
|
||||
import UaeIcon from '../../assets/images/uae.svg';
|
||||
import NonUaeIcon from '../../assets/images/nonuae.svg';
|
||||
import AdminHeader from '@/components/admin/AdminHeader';
|
||||
import CaretUp from '@/assets/images/caret-up.svg';
|
||||
import EstablishmentIcon from '@/assets/images/establishment.svg';
|
||||
import EstablishmentIdIcon from '@/assets/images/establishmentid.svg';
|
||||
import EmailIcon from '@/assets/images/emailid.svg';
|
||||
import EmiratesIcon from '@/assets/images/emirates.svg';
|
||||
import TotalEmployeesIcon from '@/assets/images/totalemployess.svg';
|
||||
import MaleEmployeesIcon from '@/assets/images/maleemployes.svg';
|
||||
import FemaleEmployeesIcon from '@/assets/images/femaleemployess.svg';
|
||||
import UaeIcon from '@/assets/images/uae.svg';
|
||||
import NonUaeIcon from '@/assets/images/nonuae.svg';
|
||||
|
||||
const establishmentDetails = [
|
||||
{ label: 'Establishment Name', value: 'ABC Manufacturing LLC' },
|
||||
|
||||
@ -1,12 +1,12 @@
|
||||
import React from 'react';
|
||||
import { Link, useNavigate } from 'react-router-dom';
|
||||
import AdminHeader from '../../components/admin/AdminHeader';
|
||||
import Table from '../../components/common/Table';
|
||||
import SearchIcon from '../../assets/images/material-symbols_search-rounded.svg';
|
||||
import DownloadIcon from '../../assets/images/downloadsimple.svg';
|
||||
import CaretUp from '../../assets/images/caret-up.svg';
|
||||
import { SelectField } from '../../components/common/FormControls';
|
||||
import { getSubmissions } from '../../services/admin/submission.js';
|
||||
import AdminHeader from '@/components/admin/AdminHeader';
|
||||
import Table from '@/components/common/Table';
|
||||
import { SelectField } from '@/components/common/FormControls';
|
||||
import { getSubmissions } from '@/services/admin/submission';
|
||||
import SearchIcon from '@/assets/images/material-symbols_search-rounded.svg';
|
||||
import DownloadIcon from '@/assets/images/downloadsimple.svg';
|
||||
import CaretUp from '@/assets/images/caret-up.svg';
|
||||
|
||||
const STATUS_VARIANTS = {
|
||||
Approved: { background: '#F3FAF4', text: '#2F663C', border: '#F3FAF4' },
|
||||
|
||||
@ -1,17 +1,17 @@
|
||||
import React from 'react';
|
||||
import Table from '../../../components/common/Table';
|
||||
import SearchIcon from '../../../assets/images/material-symbols_search-rounded.svg';
|
||||
import ExportIcon from '../../../assets/images/downloadsimple.svg';
|
||||
import AddIcon from '../../../assets/images/ic_baseline-plus.svg';
|
||||
import PencilActive from '../../../assets/images/pencilsimple.svg';
|
||||
import PencilInactive from '../../../assets/images/pencilsimple-inactive.svg';
|
||||
import TrashActive from '../../../assets/images/trash - active.svg';
|
||||
import TrashInactive from '../../../assets/images/trash - inactive.svg';
|
||||
import AdminUserIcon from '../../../assets/images/usergear.svg';
|
||||
import ActiveUserIcon from '../../../assets/images/active-user.svg';
|
||||
import InactiveUserIcon from '../../../assets/images/inactive-user.svg';
|
||||
import ResetPasswordIcon from '../../../assets/images/hugeicons_reset-password.svg';
|
||||
import ResetPasswordInactiveIcon from '../../../assets/images/hugeicons_reset-password-inactive.svg';
|
||||
import Table from '@/components/common/Table';
|
||||
import SearchIcon from '@/assets/images/material-symbols_search-rounded.svg';
|
||||
import ExportIcon from '@/assets/images/downloadsimple.svg';
|
||||
import AddIcon from '@/assets/images/ic_baseline-plus.svg';
|
||||
import PencilActive from '@/assets/images/pencilsimple.svg';
|
||||
import PencilInactive from '@/assets/images/pencilsimple-inactive.svg';
|
||||
import TrashActive from '@/assets/images/trash - active.svg';
|
||||
import TrashInactive from '@/assets/images/trash - inactive.svg';
|
||||
import AdminUserIcon from '@/assets/images/usergear.svg';
|
||||
import ActiveUserIcon from '@/assets/images/active-user.svg';
|
||||
import InactiveUserIcon from '@/assets/images/inactive-user.svg';
|
||||
import ResetPasswordIcon from '@/assets/images/hugeicons_reset-password.svg';
|
||||
import ResetPasswordInactiveIcon from '@/assets/images/hugeicons_reset-password-inactive.svg';
|
||||
|
||||
const SummaryCard = ({ label, count, icon, iconBg = '#FDF7EB' }) => (
|
||||
<div className="flex min-h-[96px] min-w-[220px] flex-1 items-center justify-between rounded-[16px] border border-[#E6EAF5] bg-white px-6 py-5 shadow-[0_12px_24px_rgba(15,23,42,0.06)]">
|
||||
|
||||
@ -1,25 +1,25 @@
|
||||
import React from 'react';
|
||||
import Table from '../../../components/common/Table';
|
||||
import Loader from '../../../components/common/Loader';
|
||||
import { TextField, SelectField, PhoneField } from '../../../components/common/FormControls';
|
||||
import { fetchEmirates, fetchCityTowns } from '../../../services/masters/masterService';
|
||||
import Table from '@/components/common/Table';
|
||||
import Loader from '@/components/common/Loader';
|
||||
import { TextField, SelectField, PhoneField } from '@/components/common/FormControls';
|
||||
import { fetchEmirates, fetchCityTowns } from '@/services/masters/masterService';
|
||||
import {
|
||||
createEstablishment,
|
||||
fetchEstablishments,
|
||||
fetchEstablishmentDetail,
|
||||
updateEstablishment,
|
||||
deleteEstablishment,
|
||||
} from '../../../services/establishments/establishmentService';
|
||||
import SearchIcon from '../../../assets/images/material-symbols_search-rounded.svg';
|
||||
import DownloadIcon from '../../../assets/images/downloadsimple.svg';
|
||||
import AddIcon from '../../../assets/images/ic_baseline-plus.svg';
|
||||
import PencilActive from '../../../assets/images/pencilsimple.svg';
|
||||
import PencilInactive from '../../../assets/images/pencilsimple-inactive.svg';
|
||||
import TrashActive from '../../../assets/images/trash - active.svg';
|
||||
import TrashInactive from '../../../assets/images/trash - inactive.svg';
|
||||
import ResetPasswordActive from '../../../assets/images/hugeicons_reset-password.svg';
|
||||
import ResetPasswordInactive from '../../../assets/images/hugeicons_reset-password-inactive.svg';
|
||||
import DeleteIcon from '../../../assets/images/delete.svg';
|
||||
} from '@/services/establishments/establishmentService';
|
||||
import SearchIcon from '@/assets/images/material-symbols_search-rounded.svg';
|
||||
import DownloadIcon from '@/assets/images/downloadsimple.svg';
|
||||
import AddIcon from '@/assets/images/ic_baseline-plus.svg';
|
||||
import PencilActive from '@/assets/images/pencilsimple.svg';
|
||||
import PencilInactive from '@/assets/images/pencilsimple-inactive.svg';
|
||||
import TrashActive from '@/assets/images/trash - active.svg';
|
||||
import TrashInactive from '@/assets/images/trash - inactive.svg';
|
||||
import ResetPasswordActive from '@/assets/images/hugeicons_reset-password.svg';
|
||||
import ResetPasswordInactive from '@/assets/images/hugeicons_reset-password-inactive.svg';
|
||||
import DeleteIcon from '@/assets/images/delete.svg';
|
||||
|
||||
const PASSWORD_POLICY = {
|
||||
minLength: 12,
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
import React from 'react';
|
||||
import { SelectField, TextField } from '../../../components/common/FormControls';
|
||||
import { SelectField, TextField } from '@/components/common/FormControls';
|
||||
|
||||
const initialTemplate = {
|
||||
subject: 'IPI Survey Submission Reminder - {{quarter}}',
|
||||
|
||||
@ -1,13 +1,13 @@
|
||||
import React from 'react';
|
||||
import Table from '../../../components/common/Table';
|
||||
import { TextField, SelectField } from '../../../components/common/FormControls';
|
||||
import SearchIcon from '../../../assets/images/material-symbols_search-rounded.svg';
|
||||
import ExportIcon from '../../../assets/images/downloadsimple.svg';
|
||||
import AddIcon from '../../../assets/images/ic_baseline-plus.svg';
|
||||
import PencilActive from '../../../assets/images/pencilsimple.svg';
|
||||
import PencilInactive from '../../../assets/images/pencilsimple-inactive.svg';
|
||||
import TrashActive from '../../../assets/images/trash - active.svg';
|
||||
import TrashInactive from '../../../assets/images/trash - inactive.svg';
|
||||
import Table from '@/components/common/Table';
|
||||
import { TextField, SelectField } from '@/components/common/FormControls';
|
||||
import SearchIcon from '@/assets/images/material-symbols_search-rounded.svg';
|
||||
import ExportIcon from '@/assets/images/downloadsimple.svg';
|
||||
import AddIcon from '@/assets/images/ic_baseline-plus.svg';
|
||||
import PencilActive from '@/assets/images/pencilsimple.svg';
|
||||
import PencilInactive from '@/assets/images/pencilsimple-inactive.svg';
|
||||
import TrashActive from '@/assets/images/trash - active.svg';
|
||||
import TrashInactive from '@/assets/images/trash - inactive.svg';
|
||||
|
||||
const establishmentsSeed = [
|
||||
{
|
||||
|
||||
@ -1,15 +1,15 @@
|
||||
import React from 'react';
|
||||
import Table from '../../../components/common/Table';
|
||||
import DownloadIcon from '../../../assets/images/downloadsimple.svg';
|
||||
import UploadImportIcon from '../../../assets/images/upload-import.svg';
|
||||
import AddIcon from '../../../assets/images/ic_baseline-plus.svg';
|
||||
import PencilActive from '../../../assets/images/pencilsimple.svg';
|
||||
import PencilInactive from '../../../assets/images/pencilsimple-inactive.svg';
|
||||
import TrashActive from '../../../assets/images/trash - active.svg';
|
||||
import TrashInactive from '../../../assets/images/trash - inactive.svg';
|
||||
import DeleteIcon from '../../../assets/images/delete.svg';
|
||||
import StatusBadge from '../../../components/common/StatusBadge';
|
||||
import { TextField, SelectField } from '../../../components/common/FormControls';
|
||||
import Table from '@/components/common/Table';
|
||||
import DownloadIcon from '@/assets/images/downloadsimple.svg';
|
||||
import UploadImportIcon from '@/assets/images/upload-import.svg';
|
||||
import AddIcon from '@/assets/images/ic_baseline-plus.svg';
|
||||
import PencilActive from '@/assets/images/pencilsimple.svg';
|
||||
import PencilInactive from '@/assets/images/pencilsimple-inactive.svg';
|
||||
import TrashActive from '@/assets/images/trash - active.svg';
|
||||
import TrashInactive from '@/assets/images/trash - inactive.svg';
|
||||
import DeleteIcon from '@/assets/images/delete.svg';
|
||||
import StatusBadge from '@/components/common/StatusBadge';
|
||||
import { TextField, SelectField } from '@/components/common/FormControls';
|
||||
|
||||
const createEmptyCodeForm = () => ({
|
||||
code: '',
|
||||
|
||||
@ -1,17 +1,17 @@
|
||||
import React from 'react';
|
||||
import Table from '../../../components/common/Table';
|
||||
import DownloadIcon from '../../../assets/images/downloadsimple.svg';
|
||||
import AddIcon from '../../../assets/images/ic_baseline-plus.svg';
|
||||
import PencilActive from '../../../assets/images/pencilsimple.svg';
|
||||
import PencilInactive from '../../../assets/images/pencilsimple-inactive.svg';
|
||||
import TrashActive from '../../../assets/images/trash - active.svg';
|
||||
import TrashInactive from '../../../assets/images/trash - inactive.svg';
|
||||
import DeleteIcon from '../../../assets/images/delete.svg';
|
||||
import CaretDownActive from '../../../assets/images/caretdown-active.svg';
|
||||
import SearchIcon from '../../../assets/images/material-symbols_search-rounded.svg';
|
||||
import CaretDown from '../../../assets/images/caretdown-black.svg';
|
||||
import { TextField, SelectField, DateField } from '../../../components/common/FormControls';
|
||||
import StatusBadge from '../../../components/common/StatusBadge';
|
||||
import Table from '@/components/common/Table';
|
||||
import { TextField, SelectField, DateField } from '@/components/common/FormControls';
|
||||
import StatusBadge from '@/components/common/StatusBadge';
|
||||
import DownloadIcon from '@/assets/images/downloadsimple.svg';
|
||||
import AddIcon from '@/assets/images/ic_baseline-plus.svg';
|
||||
import PencilActive from '@/assets/images/pencilsimple.svg';
|
||||
import PencilInactive from '@/assets/images/pencilsimple-inactive.svg';
|
||||
import TrashActive from '@/assets/images/trash - active.svg';
|
||||
import TrashInactive from '@/assets/images/trash - inactive.svg';
|
||||
import DeleteIcon from '@/assets/images/delete.svg';
|
||||
import CaretDownActive from '@/assets/images/caretdown-active.svg';
|
||||
import SearchIcon from '@/assets/images/material-symbols_search-rounded.svg';
|
||||
import CaretDown from '@/assets/images/caretdown-black.svg';
|
||||
|
||||
const createEmptyQuarterForm = () => ({
|
||||
establishment: '',
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
import React from 'react';
|
||||
import { TextField } from '../../../components/common/FormControls';
|
||||
import { TextField } from '@/components/common/FormControls';
|
||||
|
||||
const SubmissionDeadlines = () => {
|
||||
const [form, setForm] = React.useState({
|
||||
|
||||
@ -1,17 +1,17 @@
|
||||
import React from 'react';
|
||||
import Table from '../../../components/common/Table';
|
||||
import DownloadIcon from '../../../assets/images/downloadsimple.svg';
|
||||
import AddIcon from '../../../assets/images/ic_baseline-plus.svg';
|
||||
import PencilActive from '../../../assets/images/pencilsimple.svg';
|
||||
import PencilInactive from '../../../assets/images/pencilsimple-inactive.svg';
|
||||
import TrashActive from '../../../assets/images/trash - active.svg';
|
||||
import TrashInactive from '../../../assets/images/trash - inactive.svg';
|
||||
import DeleteIcon from '../../../assets/images/delete.svg';
|
||||
import StatusBadge from '../../../components/common/StatusBadge';
|
||||
import { TextField, SelectField } from '../../../components/common/FormControls';
|
||||
import CaretDownIcon from '../../../assets/images/caretdown-active.svg';
|
||||
import RectangleIcon from '../../../assets/images/rectangle.svg';
|
||||
import CheckboxIcon from '../../../assets/images/checkbox.svg';
|
||||
import Table from '@/components/common/Table';
|
||||
import DownloadIcon from '@/assets/images/downloadsimple.svg';
|
||||
import AddIcon from '@/assets/images/ic_baseline-plus.svg';
|
||||
import PencilActive from '@/assets/images/pencilsimple.svg';
|
||||
import PencilInactive from '@/assets/images/pencilsimple-inactive.svg';
|
||||
import TrashActive from '@/assets/images/trash - active.svg';
|
||||
import TrashInactive from '@/assets/images/trash - inactive.svg';
|
||||
import DeleteIcon from '@/assets/images/delete.svg';
|
||||
import StatusBadge from '@/components/common/StatusBadge';
|
||||
import { TextField, SelectField } from '@/components/common/FormControls';
|
||||
import CaretDownIcon from '@/assets/images/caretdown-active.svg';
|
||||
import RectangleIcon from '@/assets/images/rectangle.svg';
|
||||
import CheckboxIcon from '@/assets/images/checkbox.svg';
|
||||
|
||||
const createEmptyUnitForm = () => ({
|
||||
unitName: '',
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
import React from "react";
|
||||
import Logo from "../../assets/images/fcsclogo.svg";
|
||||
import { useNavigate, useLocation } from "react-router-dom";
|
||||
import apiClient from "../../services/api/apiClient.js";
|
||||
import React from 'react';
|
||||
import { useNavigate, useLocation } from 'react-router-dom';
|
||||
import Logo from '@/assets/images/fcsclogo.svg';
|
||||
import apiClient from '@/services/api/apiClient';
|
||||
|
||||
const ChangePassword = () => {
|
||||
const navigate = useNavigate();
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
import React from 'react';
|
||||
import { WelcomeSection } from '../../components/dashboard/WelcomeSection';
|
||||
import { SurveyStatus } from '../../components/dashboard/SurveyStatus';
|
||||
import { SubmissionHistory } from '../../components/dashboard/SubmissionHistory';
|
||||
import { fetchEstablishmentDashboard } from '../../services/establishments/establishmentService.js';
|
||||
import { WelcomeSection } from '@/components/dashboard/WelcomeSection';
|
||||
import { SurveyStatus } from '@/components/dashboard/SurveyStatus';
|
||||
import { SubmissionHistory } from '@/components/dashboard/SubmissionHistory';
|
||||
import { fetchEstablishmentDashboard } from '@/services/establishments/establishmentService.js';
|
||||
|
||||
const Dashboard = () => {
|
||||
const [dashboardData, setDashboardData] = React.useState(null);
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
import React from 'react';
|
||||
import Logo from '../../assets/images/fcsclogo.svg';
|
||||
import { useNavigate } from 'react-router-dom';
|
||||
import { requestPasswordReset } from '../../services/auth/authService.js';
|
||||
import Logo from '@/assets/images/fcsclogo.svg';
|
||||
import { requestPasswordReset } from '@/services/auth/authService.js';
|
||||
|
||||
const ForgotPassword = () => {
|
||||
const navigate = useNavigate();
|
||||
|
||||
@ -1,10 +1,10 @@
|
||||
import React from 'react';
|
||||
import { useNavigate } from 'react-router-dom';
|
||||
import Table from '../../components/common/Table';
|
||||
import HeaderBar from '../../components/layout/HeaderBar';
|
||||
import { fetchSubmissionHistory } from '../../services/submissions/submissionService.js';
|
||||
import SearchIcon from '../../assets/images/material-symbols_search-rounded.svg';
|
||||
import CaretDown from '../../assets/images/caretdown.svg';
|
||||
import Table from '@/components/common/Table';
|
||||
import HeaderBar from '@/components/layout/HeaderBar';
|
||||
import { fetchSubmissionHistory } from '@/services/submissions/submissionService.js';
|
||||
import SearchIcon from '@/assets/images/material-symbols_search-rounded.svg';
|
||||
import CaretDown from '@/assets/images/caretdown.svg';
|
||||
|
||||
const Badge = ({ variant = 'default', children }) => {
|
||||
const styles = {
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
import React from 'react';
|
||||
import Logo from '../../assets/images/fcsclogo.svg';
|
||||
import { useNavigate } from 'react-router-dom';
|
||||
import { login } from '../../services/auth/authService.js';
|
||||
import Logo from '@/assets/images/fcsclogo.svg';
|
||||
import { login } from '@/services/auth/authService.js';
|
||||
|
||||
const Login = () => {
|
||||
const navigate = useNavigate();
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
import React, { useState, useEffect } from "react";
|
||||
import Logo from "../assets/images/fcsclogo.svg";
|
||||
import { useNavigate } from "react-router-dom";
|
||||
import apiClient from "../services/api/apiClient.js";
|
||||
import React, { useState, useEffect } from 'react';
|
||||
import { useNavigate } from 'react-router-dom';
|
||||
import Logo from '@/assets/images/fcsclogo.svg';
|
||||
import apiClient from '@/services/api/apiClient';
|
||||
|
||||
const PublicContactForm = () => {
|
||||
const navigate = useNavigate();
|
||||
|
||||
@ -1,12 +1,12 @@
|
||||
import React from 'react';
|
||||
import { useLocation, useNavigate } from 'react-router-dom';
|
||||
import { submitSurvey, fetchSubmissionDetail } from '../../services/submissions/submissionService.js';
|
||||
import { fetchEstablishmentDetail } from '../../services/establishments/establishmentService.js';
|
||||
import EstablishmentInfo from '../../components/survey/EstablishmentInfo/EstablishmentInfo';
|
||||
import HeaderBar from '../../components/layout/HeaderBar';
|
||||
import ProductData from '../../components/survey/ProductData/ProductData';
|
||||
import ReviewSubmit from '../../components/survey/ReviewSubmit/ReviewSubmit';
|
||||
import CheckCircleActive from '../../assets/images/circleframe.svg';
|
||||
import { submitSurvey, fetchSubmissionDetail } from '@/services/submissions/submissionService';
|
||||
import { fetchEstablishmentDetail } from '@/services/establishments/establishmentService';
|
||||
import EstablishmentInfo from '@/components/survey/EstablishmentInfo/EstablishmentInfo';
|
||||
import HeaderBar from '@/components/layout/HeaderBar';
|
||||
import ProductData from '@/components/survey/ProductData/ProductData';
|
||||
import ReviewSubmit from '@/components/survey/ReviewSubmit/ReviewSubmit';
|
||||
import CheckCircleActive from '@/assets/images/circleframe.svg';
|
||||
|
||||
const createEmptyProduct = (id) => ({
|
||||
id,
|
||||
|
||||
@ -1,10 +1,10 @@
|
||||
import React from 'react';
|
||||
import { Routes, Route } from 'react-router-dom';
|
||||
import Dashboard from '../pages/Dashboard/Dashboard';
|
||||
import Survey from '../pages/Survey/Survey';
|
||||
import History from '../pages/History/History';
|
||||
import Configuration from '../pages/Admin/Configuration';
|
||||
import AdminDashboard from '../pages/Admin/AdminDashboard';
|
||||
import Dashboard from '@/pages/Dashboard/Dashboard';
|
||||
import Survey from '@/pages/Survey/Survey';
|
||||
import History from '@/pages/History/History';
|
||||
import Configuration from '@/pages/Admin/Configuration';
|
||||
import AdminDashboard from '@/pages/Admin/AdminDashboard';
|
||||
|
||||
const AppRoutes = () => {
|
||||
return (
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
import apiClient from '../api/apiClient.js';
|
||||
import apiClient from '@/services/api/apiClient';
|
||||
|
||||
/** Fetch all submissions for the listing page */
|
||||
export const getSubmissions = async () => {
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
import apiClient from './apiClient.js';
|
||||
import apiClient from '@/services/api/apiClient';
|
||||
|
||||
export const getRequest = (url, config = {}) => apiClient.get(url, config);
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
import apiClient from '../api/apiClient.js';
|
||||
import apiClient from '@/services/api/apiClient';
|
||||
|
||||
export const login = async ({ email, password }) => {
|
||||
const response = await apiClient.post('/auth/login', { email, password }, { skipAuth: true });
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
import { getRequest, postRequest, putRequest, deleteRequest } from '../api/CommonService.js';
|
||||
import resolveEstablishmentId from '../utils/establishment.js';
|
||||
import { getRequest, postRequest, putRequest, deleteRequest } from '@/services/api/CommonService';
|
||||
import resolveEstablishmentId from '@/services/utils/establishment';
|
||||
|
||||
const dashboardEndpoint = '/establishment_dashboard';
|
||||
const establishmentsEndpoint = '/establishments';
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
import { getRequest } from '../api/CommonService.js';
|
||||
import { getRequest } from '@/services/api/CommonService';
|
||||
|
||||
const endpoints = {
|
||||
variationReasons: '/variation_reasons',
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
import { getRequest, postRequest } from '../api/CommonService.js';
|
||||
import resolveEstablishmentId from '../utils/establishment.js';
|
||||
import { getRequest, postRequest } from '@/services/api/CommonService';
|
||||
import resolveEstablishmentId from '@/services/utils/establishment';
|
||||
|
||||
const endpoint = '/submissions';
|
||||
|
||||
|
||||
@ -2,11 +2,11 @@ export {
|
||||
submitSurvey,
|
||||
fetchSubmissionHistory,
|
||||
fetchSubmissionDetail,
|
||||
} from '../submissions/submissionService.js';
|
||||
} from '@/services/submissions/submissionService';
|
||||
|
||||
export {
|
||||
fetchEstablishmentDashboard,
|
||||
fetchEstablishmentDetail,
|
||||
} from '../establishments/establishmentService.js';
|
||||
} from '@/services/establishments/establishmentService';
|
||||
|
||||
export { default as resolveEstablishmentId } from '../utils/establishment.js';
|
||||
export { default as resolveEstablishmentId } from '@/services/utils/establishment';
|
||||
|
||||
@ -1,3 +1,8 @@
|
||||
/**
|
||||
* Resolves an establishment ID from various input types
|
||||
* @param {string|number} inputId - The input ID to resolve
|
||||
* @returns {number|undefined} The resolved establishment ID or undefined if not found
|
||||
*/
|
||||
export const resolveEstablishmentId = (inputId) => {
|
||||
if (typeof inputId === 'number' && Number.isFinite(inputId)) {
|
||||
return inputId;
|
||||
|
||||
25
ipi-survey-platform/tsconfig.json
Normal file
25
ipi-survey-platform/tsconfig.json
Normal file
@ -0,0 +1,25 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"target": "ES2020",
|
||||
"useDefineForClassFields": true,
|
||||
"lib": ["DOM", "DOM.Iterable", "ESNext"],
|
||||
"allowJs": true,
|
||||
"skipLibCheck": true,
|
||||
"esModuleInterop": true,
|
||||
"allowSyntheticDefaultImports": true,
|
||||
"strict": true,
|
||||
"forceConsistentCasingInFileNames": true,
|
||||
"module": "ESNext",
|
||||
"moduleResolution": "node",
|
||||
"resolveJsonModule": true,
|
||||
"isolatedModules": true,
|
||||
"noEmit": true,
|
||||
"jsx": "react-jsx",
|
||||
"baseUrl": ".",
|
||||
"paths": {
|
||||
"@assets/*": ["src/assets/*"]
|
||||
}
|
||||
},
|
||||
"include": ["src"],
|
||||
"exclude": ["node_modules", "dist"]
|
||||
}
|
||||
@ -1,7 +1,19 @@
|
||||
import { defineConfig } from 'vite'
|
||||
import react from '@vitejs/plugin-react'
|
||||
import { defineConfig } from 'vite';
|
||||
import react from '@vitejs/plugin-react';
|
||||
import path from 'path';
|
||||
|
||||
// https://vite.dev/config/
|
||||
export default defineConfig({
|
||||
plugins: [react()],
|
||||
})
|
||||
resolve: {
|
||||
alias: {
|
||||
'@': path.resolve(__dirname, 'src'),
|
||||
'@assets': path.resolve(__dirname, 'src/assets'),
|
||||
},
|
||||
},
|
||||
// Ensure Vite handles these file types
|
||||
assetsInclude: ['**/*.svg', '**/*.png', '**/*.jpg', '**/*.jpeg', '**/*.gif'],
|
||||
build: {
|
||||
assetsDir: 'assets',
|
||||
outDir: 'dist',
|
||||
}
|
||||
});
|
||||
|
||||
Loading…
Reference in New Issue
Block a user