diff --git a/.eslintrc.json b/.eslintrc.json index ec5e9b8bb7d..a4ca4233380 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -19,13 +19,8 @@ ], "overrides": [ { - "files": [ - "**/*.mdx" - ], - "extends": [ - "plugin:react/recommended", - "plugin:mdx/recommended" - ], + "files": ["**/*.mdx"], + "extends": ["plugin:react/recommended", "plugin:mdx/recommended"], "rules": { "react/jsx-no-target-blank": "off", "i18next/no-literal-string": "off" @@ -40,10 +35,7 @@ "ecmaVersion": 12, "sourceType": "module" }, - "plugins": [ - "@typescript-eslint", - "i18next" - ], + "plugins": ["@typescript-eslint", "i18next", "no-relative-import-paths"], "rules": { "no-unused-vars": "off", "@typescript-eslint/no-unused-vars": [ @@ -61,22 +53,20 @@ { "mode": "jsx-only", "jsx-attributes": { - "include": [ - "label", - "placeholder", - "error", - "title" - ], - "exclude": [ - ".*" - ] + "include": ["label", "placeholder", "error", "title"], + "exclude": [".*"] }, "callees": { - "exclude": [ - ".*" - ] + "exclude": [".*"] } } + ], + "no-relative-import-paths/no-relative-import-paths": [ + "error", + { + "allowSameFolder": true, + "prefix": "@" + } ] }, "ignorePatterns": [ diff --git a/package-lock.json b/package-lock.json index 2f03acbcaef..4d6d2119a62 100644 --- a/package-lock.json +++ b/package-lock.json @@ -117,6 +117,7 @@ "eslint-config-prettier": "^9.1.0", "eslint-plugin-i18next": "^6.1.0", "eslint-plugin-mdx": "^3.1.5", + "eslint-plugin-no-relative-import-paths": "^1.6.1", "eslint-plugin-prettier": "^5.2.1", "eslint-plugin-react": "^7.37.2", "eslint-plugin-react-hooks": "^5.0.0", @@ -10178,6 +10179,13 @@ "eslint": ">=8.0.0" } }, + "node_modules/eslint-plugin-no-relative-import-paths": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-no-relative-import-paths/-/eslint-plugin-no-relative-import-paths-1.6.1.tgz", + "integrity": "sha512-YZNeOnsOrJcwhFw0X29MXjIzu2P/f5X2BZDPWw1R3VUYBRFxNIh77lyoL/XrMU9ewZNQPcEvAgL/cBOT1P330A==", + "dev": true, + "license": "ISC" + }, "node_modules/eslint-plugin-prettier": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.2.1.tgz", diff --git a/package.json b/package.json index 96b8f0675f8..3bc3f615229 100644 --- a/package.json +++ b/package.json @@ -155,6 +155,7 @@ "eslint-config-prettier": "^9.1.0", "eslint-plugin-i18next": "^6.1.0", "eslint-plugin-mdx": "^3.1.5", + "eslint-plugin-no-relative-import-paths": "^1.6.1", "eslint-plugin-prettier": "^5.2.1", "eslint-plugin-react": "^7.37.2", "eslint-plugin-react-hooks": "^5.0.0", diff --git a/src/Routers/AppRouter.tsx b/src/Routers/AppRouter.tsx index ed8ed8a8aa0..179cded03e1 100644 --- a/src/Routers/AppRouter.tsx +++ b/src/Routers/AppRouter.tsx @@ -32,9 +32,9 @@ const PATHS_WITHOUT_SIDEBAR = ["/", "/session-expired"]; export type RouteParams = T extends `${string}:${infer Param}/${infer Rest}` - ? { [K in Param | keyof RouteParams]: string } + ? { [_ in Param | keyof RouteParams]: string } : T extends `${string}:${infer Param}` - ? { [K in Param]: string } + ? { [_ in Param]: string } : Record; export type RouteFunction = ( diff --git a/src/Routers/routes/questionnaireRoutes.tsx b/src/Routers/routes/questionnaireRoutes.tsx index 044f9fcc1d4..ccc89f17f90 100644 --- a/src/Routers/routes/questionnaireRoutes.tsx +++ b/src/Routers/routes/questionnaireRoutes.tsx @@ -2,7 +2,7 @@ import { QuestionnaireList } from "@/components/Questionnaire"; import QuestionnaireEditor from "@/components/Questionnaire/QuestionnaireEditor"; import { QuestionnaireShow } from "@/components/Questionnaire/show"; -import { AppRoutes } from "../AppRouter"; +import { AppRoutes } from "@/Routers/AppRouter"; const QuestionnaireRoutes: AppRoutes = { "/questionnaire": () => , diff --git a/src/Utils/request/types.ts b/src/Utils/request/types.ts index 591b4404968..2592208b926 100644 --- a/src/Utils/request/types.ts +++ b/src/Utils/request/types.ts @@ -42,7 +42,7 @@ type ExtractRouteParams = : never; type PathParams = { - [K in ExtractRouteParams]: string; + [_ in ExtractRouteParams]: string; }; export interface ApiCallOptions> { diff --git a/src/Utils/types.ts b/src/Utils/types.ts index cdee60e1f2f..70631ac6b37 100644 --- a/src/Utils/types.ts +++ b/src/Utils/types.ts @@ -16,15 +16,15 @@ export interface BaseModel { export type Writable = T extends object ? { [P in keyof T as IfEquals< - { [Q in P]: T[P] }, - { -readonly [Q in P]: T[P] }, + { [_ in P]: T[P] }, + { -readonly [_ in P]: T[P] }, never, P >]?: undefined; } & { [P in keyof T as IfEquals< - { [Q in P]: T[P] }, - { -readonly [Q in P]: T[P] }, + { [_ in P]: T[P] }, + { -readonly [_ in P]: T[P] }, P, never >]: T[P] extends object ? Writable : T[P]; @@ -38,8 +38,8 @@ export type Writable = T extends object export type WritableOnly = T extends object ? { [P in keyof T as IfEquals< - { [Q in P]: T[P] }, - { -readonly [Q in P]: T[P] }, + { [_ in P]: T[P] }, + { -readonly [_ in P]: T[P] }, P >]: T[P] extends object ? WritableOnly : T[P]; } diff --git a/src/components/Common/Charts/ObservationChart.tsx b/src/components/Common/Charts/ObservationChart.tsx index f79d529abb4..d210255a181 100644 --- a/src/components/Common/Charts/ObservationChart.tsx +++ b/src/components/Common/Charts/ObservationChart.tsx @@ -22,12 +22,13 @@ import { } from "@/components/ui/table"; import { Tabs, TabsContent, TabsList, TabsTrigger } from "@/components/ui/tabs"; +import { Avatar } from "@/components/Common/Avatar"; + import routes from "@/Utils/request/api"; import query from "@/Utils/request/query"; import { ObservationAnalyzeResponse } from "@/types/emr/observation"; import { Code } from "@/types/questionnaire/code"; -import { Avatar } from "../Avatar"; import { ObservationHistoryTable } from "./ObservationHistoryTable"; export type ObservationPlotConfig = { diff --git a/src/components/Common/Charts/ObservationHistoryTable.tsx b/src/components/Common/Charts/ObservationHistoryTable.tsx index 9e3940bff17..240bfea2790 100644 --- a/src/components/Common/Charts/ObservationHistoryTable.tsx +++ b/src/components/Common/Charts/ObservationHistoryTable.tsx @@ -12,13 +12,13 @@ import { TableRow, } from "@/components/ui/table"; +import { Avatar } from "@/components/Common/Avatar"; + import routes from "@/Utils/request/api"; import query from "@/Utils/request/query"; import { ObservationWithUser } from "@/types/emr/observation"; import { Code } from "@/types/questionnaire/code"; -import { Avatar } from "../Avatar"; - interface PaginatedResponse { count: number; next: string | null; diff --git a/src/components/ErrorPages/DefaultErrorPage.tsx b/src/components/ErrorPages/DefaultErrorPage.tsx index f7074726236..37d3f0509db 100644 --- a/src/components/ErrorPages/DefaultErrorPage.tsx +++ b/src/components/ErrorPages/DefaultErrorPage.tsx @@ -2,9 +2,9 @@ import { useEffect } from "react"; import { useTranslation } from "react-i18next"; import { toast } from "sonner"; -import useAppHistory from "@/hooks/useAppHistory"; +import { Button } from "@/components/ui/button"; -import { Button } from "../ui/button"; +import useAppHistory from "@/hooks/useAppHistory"; type ErrorType = "PAGE_NOT_FOUND" | "PAGE_LOAD_ERROR" | "CUSTOM_ERROR"; diff --git a/src/components/Facility/DuplicatePatientDialog.tsx b/src/components/Facility/DuplicatePatientDialog.tsx index ea12f1d06c4..2e795092042 100644 --- a/src/components/Facility/DuplicatePatientDialog.tsx +++ b/src/components/Facility/DuplicatePatientDialog.tsx @@ -3,11 +3,7 @@ import { useTranslation } from "react-i18next"; import CareIcon from "@/CAREUI/icons/CareIcon"; -import DialogModal from "@/components/Common/Dialog"; - -import { PartialPatientModel } from "@/types/emr/newPatient"; - -import { Button } from "../ui/button"; +import { Button } from "@/components/ui/button"; import { Table, TableBody, @@ -15,7 +11,11 @@ import { TableHead, TableHeader, TableRow, -} from "../ui/table"; +} from "@/components/ui/table"; + +import DialogModal from "@/components/Common/Dialog"; + +import { PartialPatientModel } from "@/types/emr/newPatient"; interface Props { patientList: Array; diff --git a/src/components/Facility/EncounterCard.tsx b/src/components/Facility/EncounterCard.tsx index bfa2ab67363..10c408a7bee 100644 --- a/src/components/Facility/EncounterCard.tsx +++ b/src/components/Facility/EncounterCard.tsx @@ -7,12 +7,11 @@ import { cn } from "@/lib/utils"; import CareIcon from "@/CAREUI/icons/CareIcon"; import { Badge } from "@/components/ui/badge"; +import { buttonVariants } from "@/components/ui/button"; import { formatDateTime } from "@/Utils/utils"; import { Encounter, completedEncounterStatus } from "@/types/emr/encounter"; -import { buttonVariants } from "../ui/button"; - interface EncounterCardProps { encounter: Encounter; } diff --git a/src/components/Files/AudioCaptureDialog.tsx b/src/components/Files/AudioCaptureDialog.tsx index 05488d305e0..d50c9b4acde 100644 --- a/src/components/Files/AudioCaptureDialog.tsx +++ b/src/components/Files/AudioCaptureDialog.tsx @@ -7,7 +7,7 @@ import CareIcon from "@/CAREUI/icons/CareIcon"; import { useTimer } from "@/hooks/useTimer"; -import useVoiceRecorder from "../../Utils/useVoiceRecorder"; +import useVoiceRecorder from "@/Utils/useVoiceRecorder"; export interface AudioCaptureDialogProps { show: boolean; diff --git a/src/components/Patient/MedicationStatementList.tsx b/src/components/Patient/MedicationStatementList.tsx index 89b1ffaf244..87ac973a021 100644 --- a/src/components/Patient/MedicationStatementList.tsx +++ b/src/components/Patient/MedicationStatementList.tsx @@ -14,13 +14,16 @@ import { TableHeader, TableRow, } from "@/components/ui/table"; +import { + Tooltip, + TooltipContent, + TooltipTrigger, +} from "@/components/ui/tooltip"; import routes from "@/Utils/request/api"; import query from "@/Utils/request/query"; import { formatDateTime } from "@/Utils/utils"; -import { Tooltip, TooltipContent, TooltipTrigger } from "../ui/tooltip"; - interface MedicationStatementListProps { patientId: string; } diff --git a/src/components/Patient/PatientDetailsTab/HealthProfileSummary.tsx b/src/components/Patient/PatientDetailsTab/HealthProfileSummary.tsx index d503cb7efdc..30cd2529952 100644 --- a/src/components/Patient/PatientDetailsTab/HealthProfileSummary.tsx +++ b/src/components/Patient/PatientDetailsTab/HealthProfileSummary.tsx @@ -1,9 +1,9 @@ +import { MedicationStatementList } from "@/components/Patient/MedicationStatementList"; +import { AllergyList } from "@/components/Patient/allergy/list"; import { DiagnosisList } from "@/components/Patient/diagnosis/list"; import { SymptomsList } from "@/components/Patient/symptoms/list"; import { PatientProps } from "."; -import { MedicationStatementList } from "../MedicationStatementList"; -import { AllergyList } from "../allergy/list"; export const HealthProfileSummary = (props: PatientProps) => { const { id } = props; diff --git a/src/components/Patient/PatientRegistration.tsx b/src/components/Patient/PatientRegistration.tsx index 01de8a77d29..69c3ff24e0b 100644 --- a/src/components/Patient/PatientRegistration.tsx +++ b/src/components/Patient/PatientRegistration.tsx @@ -10,6 +10,7 @@ import { z } from "zod"; import CareIcon from "@/CAREUI/icons/CareIcon"; import SectionNavigator from "@/CAREUI/misc/SectionNavigator"; +import Autocomplete from "@/components/ui/autocomplete"; import { Button } from "@/components/ui/button"; import { Checkbox } from "@/components/ui/checkbox"; import { @@ -57,8 +58,6 @@ import GovtOrganizationSelector from "@/pages/Organization/components/GovtOrgani import { PatientModel } from "@/types/emr/patient"; import { Organization } from "@/types/organization/organization"; -import Autocomplete from "../ui/autocomplete"; - interface PatientRegistrationPageProps { facilityId: string; patientId?: string; diff --git a/src/components/Questionnaire/QuestionTypes/EncounterQuestion.tsx b/src/components/Questionnaire/QuestionTypes/EncounterQuestion.tsx index 1ec0873c973..61cc44e4a95 100644 --- a/src/components/Questionnaire/QuestionTypes/EncounterQuestion.tsx +++ b/src/components/Questionnaire/QuestionTypes/EncounterQuestion.tsx @@ -11,6 +11,7 @@ import { SelectTrigger, SelectValue, } from "@/components/ui/select"; +import { Switch } from "@/components/ui/switch"; import routes from "@/Utils/request/api"; import query from "@/Utils/request/query"; @@ -35,8 +36,6 @@ import type { } from "@/types/questionnaire/form"; import type { Question } from "@/types/questionnaire/question"; -import { Switch } from "../../../components/ui/switch"; - interface EncounterQuestionProps { question: Question; encounterId: string; diff --git a/src/components/Questionnaire/QuestionnaireEditor.tsx b/src/components/Questionnaire/QuestionnaireEditor.tsx index 28a1cbb0049..459fa74455a 100644 --- a/src/components/Questionnaire/QuestionnaireEditor.tsx +++ b/src/components/Questionnaire/QuestionnaireEditor.tsx @@ -28,6 +28,8 @@ import { Switch } from "@/components/ui/switch"; import { Tabs, TabsContent, TabsList, TabsTrigger } from "@/components/ui/tabs"; import { Textarea } from "@/components/ui/textarea"; +import Loading from "@/components/Common/Loading"; + import mutate from "@/Utils/request/mutate"; import query from "@/Utils/request/query"; import { @@ -44,7 +46,6 @@ import { } from "@/types/questionnaire/questionnaire"; import questionnaireApi from "@/types/questionnaire/questionnaireApi"; -import Loading from "../Common/Loading"; import { QuestionnaireForm } from "./QuestionnaireForm"; interface QuestionnaireEditorProps { diff --git a/src/components/Questionnaire/index.tsx b/src/components/Questionnaire/index.tsx index a1843a4ccda..b7f9105ce16 100644 --- a/src/components/Questionnaire/index.tsx +++ b/src/components/Questionnaire/index.tsx @@ -4,12 +4,12 @@ import { useNavigate } from "raviger"; import { Badge } from "@/components/ui/badge"; import { Button } from "@/components/ui/button"; +import Loading from "@/components/Common/Loading"; + import query from "@/Utils/request/query"; import { QuestionnaireDetail } from "@/types/questionnaire/questionnaire"; import questionnaireApi from "@/types/questionnaire/questionnaireApi"; -import Loading from "../Common/Loading"; - export function QuestionnaireList() { const navigate = useNavigate(); const { data: response, isLoading } = useQuery({ diff --git a/src/components/Questionnaire/show.tsx b/src/components/Questionnaire/show.tsx index 83b178bacc3..a10c24aa2d3 100644 --- a/src/components/Questionnaire/show.tsx +++ b/src/components/Questionnaire/show.tsx @@ -27,12 +27,13 @@ import { } from "@/components/ui/dropdown-menu"; import { Tabs, TabsContent, TabsList, TabsTrigger } from "@/components/ui/tabs"; +import Loading from "@/components/Common/Loading"; + import mutate from "@/Utils/request/mutate"; import query from "@/Utils/request/query"; import type { Question } from "@/types/questionnaire/question"; import questionnaireApi from "@/types/questionnaire/questionnaireApi"; -import Loading from "../Common/Loading"; import CloneQuestionnaireSheet from "./CloneQuestionnaireSheet"; import ManageQuestionnaireOrganizationsSheet from "./ManageQuestionnaireOrganizationsSheet"; import ManageQuestionnaireTagsSheet from "./ManageQuestionnaireTagsSheet"; diff --git a/src/components/Resource/ResourceCommentSection.tsx b/src/components/Resource/ResourceCommentSection.tsx index e4d3d8c29a5..b10e3b5c1cf 100644 --- a/src/components/Resource/ResourceCommentSection.tsx +++ b/src/components/Resource/ResourceCommentSection.tsx @@ -6,6 +6,7 @@ import PaginatedList from "@/CAREUI/misc/PaginatedList"; import { Button } from "@/components/ui/button"; +import { Avatar } from "@/components/Common/Avatar"; import CircularProgress from "@/components/Common/CircularProgress"; import TextAreaFormField from "@/components/Form/FormFields/TextAreaFormField"; @@ -14,8 +15,6 @@ import request from "@/Utils/request/request"; import { formatName, relativeTime } from "@/Utils/utils"; import { CommentModel } from "@/types/resourceRequest/resourceRequest"; -import { Avatar } from "../Common/Avatar"; - const CommentSection = (props: { id: string }) => { const [commentBox, setCommentBox] = useState(""); diff --git a/src/components/Resource/ResourceDetails.tsx b/src/components/Resource/ResourceDetails.tsx index 1c9e7e6cd3a..ec4c617d532 100644 --- a/src/components/Resource/ResourceDetails.tsx +++ b/src/components/Resource/ResourceDetails.tsx @@ -11,6 +11,7 @@ import { Separator } from "@/components/ui/separator"; import Loading from "@/components/Common/Loading"; import Page from "@/components/Common/Page"; +import { FacilityModel } from "@/components/Facility/models"; import CommentSection from "@/components/Resource/ResourceCommentSection"; import { RESOURCE_CATEGORY_CHOICES } from "@/common/constants"; @@ -21,8 +22,6 @@ import { formatDateTime, formatName } from "@/Utils/utils"; import { PatientModel } from "@/types/emr/patient"; import { ResourceRequest } from "@/types/resourceRequest/resourceRequest"; -import { FacilityModel } from "../Facility/models"; - function PatientCard({ patient }: { patient: PatientModel }) { const { t } = useTranslation(); return ( diff --git a/src/components/Users/UserSummary.tsx b/src/components/Users/UserSummary.tsx index 6c0e8fb0073..38ee413cc23 100644 --- a/src/components/Users/UserSummary.tsx +++ b/src/components/Users/UserSummary.tsx @@ -5,6 +5,8 @@ import { toast } from "sonner"; import CareIcon from "@/CAREUI/icons/CareIcon"; +import { Button } from "@/components/ui/button"; + import LanguageSelector from "@/components/Common/LanguageSelector"; import UserColumns from "@/components/Common/UserColumns"; import UserAvatar from "@/components/Users/UserAvatar"; @@ -28,8 +30,6 @@ import routes from "@/Utils/request/api"; import request from "@/Utils/request/request"; import { UserBase } from "@/types/user/user"; -import { Button } from "../ui/button"; - export default function UserSummaryTab({ userData, refetchUserData, diff --git a/src/components/ui/chart.tsx b/src/components/ui/chart.tsx index 5887b4d3acb..11a65a13e9d 100644 --- a/src/components/ui/chart.tsx +++ b/src/components/ui/chart.tsx @@ -7,7 +7,7 @@ import { cn } from "@/lib/utils"; const THEMES = { light: "", dark: ".dark" } as const; export type ChartConfig = { - [k in string]: { + [_ in string]: { label?: React.ReactNode; icon?: React.ComponentType; } & ( diff --git a/src/components/ui/sidebar/patient-switcher.tsx b/src/components/ui/sidebar/patient-switcher.tsx index 370cafad43c..189eafa6bf9 100644 --- a/src/components/ui/sidebar/patient-switcher.tsx +++ b/src/components/ui/sidebar/patient-switcher.tsx @@ -7,6 +7,7 @@ import { SelectTrigger, SelectValue, } from "@/components/ui/select"; +import { useSidebar } from "@/components/ui/sidebar"; import { Avatar } from "@/components/Common/Avatar"; @@ -14,8 +15,6 @@ import { usePatientContext } from "@/hooks/usePatientUser"; import { classNames } from "@/Utils/utils"; -import { useSidebar } from "../sidebar"; - interface PatientSwitcherProps { className?: string; } diff --git a/src/pages/Facility/FacilitiesPage.tsx b/src/pages/Facility/FacilitiesPage.tsx index 36e27f0c528..8412dc7e575 100644 --- a/src/pages/Facility/FacilitiesPage.tsx +++ b/src/pages/Facility/FacilitiesPage.tsx @@ -16,10 +16,10 @@ import { RESULTS_PER_PAGE_LIMIT } from "@/common/constants"; import query from "@/Utils/request/query"; import { PaginatedResponse } from "@/Utils/request/types"; +import OrganizationFilter from "@/pages/Organization/components/OrganizationFilter"; import { FacilityData } from "@/types/facility/facility"; import facilityApi from "@/types/facility/facilityApi"; -import OrganizationFilter from "../Organization/components/OrganizationFilter"; import { FacilityCard } from "./components/FacilityCard"; export function FacilitiesPage() { diff --git a/src/pages/Facility/components/FacilityCard.tsx b/src/pages/Facility/components/FacilityCard.tsx index 5ffe42b1050..3b4634061cf 100644 --- a/src/pages/Facility/components/FacilityCard.tsx +++ b/src/pages/Facility/components/FacilityCard.tsx @@ -7,10 +7,9 @@ import { Card } from "@/components/ui/card"; import { Avatar } from "@/components/Common/Avatar"; +import { FeatureBadge } from "@/pages/Facility/Utils"; import { FacilityData } from "@/types/facility/facility"; -import { FeatureBadge } from "../Utils"; - interface Props { facility: FacilityData; className?: string; diff --git a/src/pages/PublicAppointments/PatientRegistration.tsx b/src/pages/PublicAppointments/PatientRegistration.tsx index 4879a8647db..a91d206743b 100644 --- a/src/pages/PublicAppointments/PatientRegistration.tsx +++ b/src/pages/PublicAppointments/PatientRegistration.tsx @@ -33,6 +33,7 @@ import routes from "@/Utils/request/api"; import mutate from "@/Utils/request/mutate"; import { HTTPError } from "@/Utils/request/types"; import { dateQueryString } from "@/Utils/utils"; +import GovtOrganizationSelector from "@/pages/Organization/components/GovtOrganizationSelector"; import { AppointmentPatient, AppointmentPatientRegister, @@ -44,8 +45,6 @@ import { TokenSlot, } from "@/types/scheduling/schedule"; -import GovtOrganizationSelector from "../Organization/components/GovtOrganizationSelector"; - const initialForm: AppointmentPatientRegister & { ageInputType: "age" | "date_of_birth"; } = { diff --git a/src/types/emr/allergyIntolerance/allergyIntolerance.ts b/src/types/emr/allergyIntolerance/allergyIntolerance.ts index 860cfe14243..f87b09e1d82 100644 --- a/src/types/emr/allergyIntolerance/allergyIntolerance.ts +++ b/src/types/emr/allergyIntolerance/allergyIntolerance.ts @@ -1,5 +1,5 @@ -import { Code } from "../../questionnaire/code"; -import { UserBase } from "../../user/user"; +import { Code } from "@/types/questionnaire/code"; +import { UserBase } from "@/types/user/user"; // Base type for allergy data export interface AllergyIntolerance { diff --git a/src/types/emr/diagnosis/diagnosis.ts b/src/types/emr/diagnosis/diagnosis.ts index 62e5a92c946..b16634373be 100644 --- a/src/types/emr/diagnosis/diagnosis.ts +++ b/src/types/emr/diagnosis/diagnosis.ts @@ -1,5 +1,5 @@ -import { Code } from "../../questionnaire/code"; -import { UserBase } from "../../user/user"; +import { Code } from "@/types/questionnaire/code"; +import { UserBase } from "@/types/user/user"; export const DIAGNOSIS_CLINICAL_STATUS = [ "active", diff --git a/src/types/emr/encounter.ts b/src/types/emr/encounter.ts index 12e5f40ee6d..85e6f915274 100644 --- a/src/types/emr/encounter.ts +++ b/src/types/emr/encounter.ts @@ -1,8 +1,7 @@ import { Patient } from "@/types/emr/newPatient"; +import { FacilityOrganization } from "@/types/facilityOrganization/facilityOrganization"; import { UserBase } from "@/types/user/user"; -import { FacilityOrganization } from "../facilityOrganization/facilityOrganization"; - export const ENCOUNTER_ADMIT_SOURCE = [ "hosp_trans", "emd", diff --git a/src/types/emr/newPatient.ts b/src/types/emr/newPatient.ts index 02946da9ea9..853564b6be7 100644 --- a/src/types/emr/newPatient.ts +++ b/src/types/emr/newPatient.ts @@ -1,6 +1,6 @@ import { UserBareMinimum } from "@/components/Users/models"; -import { Organization } from "../organization/organization"; +import { Organization } from "@/types/organization/organization"; export type BloodGroupChoices = | "A_negative" diff --git a/src/types/emr/observation.ts b/src/types/emr/observation.ts index 3d6dfeb7295..b100c2a2f78 100644 --- a/src/types/emr/observation.ts +++ b/src/types/emr/observation.ts @@ -1,5 +1,5 @@ -import { Code } from "../questionnaire/code"; -import { UserBase } from "../user/user"; +import { Code } from "@/types/questionnaire/code"; +import { UserBase } from "@/types/user/user"; export interface ObservationValue { value?: string; diff --git a/src/types/emr/symptom/symptom.ts b/src/types/emr/symptom/symptom.ts index 3d55cfbad3e..38a7d75c781 100644 --- a/src/types/emr/symptom/symptom.ts +++ b/src/types/emr/symptom/symptom.ts @@ -1,5 +1,5 @@ -import { Code } from "../../questionnaire/code"; -import { UserBase } from "../../user/user"; +import { Code } from "@/types/questionnaire/code"; +import { UserBase } from "@/types/user/user"; export const SYMPTOM_CLINICAL_STATUS = [ "active", diff --git a/src/types/facilityOrganization/facilityOrganization.ts b/src/types/facilityOrganization/facilityOrganization.ts index e76b96adbcb..8f5122610bf 100644 --- a/src/types/facilityOrganization/facilityOrganization.ts +++ b/src/types/facilityOrganization/facilityOrganization.ts @@ -1,6 +1,5 @@ import { PaginatedResponse } from "@/Utils/request/types"; - -import { UserBase } from "../user/user"; +import { UserBase } from "@/types/user/user"; type org_type = "root" | "dept" | "team"; diff --git a/src/types/organization/organization.ts b/src/types/organization/organization.ts index 5b36828ed09..26f2bd2e1c5 100644 --- a/src/types/organization/organization.ts +++ b/src/types/organization/organization.ts @@ -1,8 +1,7 @@ import { t } from "i18next"; import { PaginatedResponse } from "@/Utils/request/types"; - -import { UserBase } from "../user/user"; +import { UserBase } from "@/types/user/user"; type org_type = "team" | "govt" | "role" | "other"; diff --git a/src/types/organization/organizationApi.ts b/src/types/organization/organizationApi.ts index 5e90f0b26b5..5181827622a 100644 --- a/src/types/organization/organizationApi.ts +++ b/src/types/organization/organizationApi.ts @@ -1,7 +1,7 @@ import { HttpMethod, Type } from "@/Utils/request/api"; import { PaginatedResponse } from "@/Utils/request/types"; +import { Patient } from "@/types/emr/newPatient"; -import { Patient } from "../emr/newPatient"; import { Organization, OrganizationUserRole } from "./organization"; export default { diff --git a/src/types/questionnaire/questionnaireApi.ts b/src/types/questionnaire/questionnaireApi.ts index 415bf9fa8ef..b475cbd2ce9 100644 --- a/src/types/questionnaire/questionnaireApi.ts +++ b/src/types/questionnaire/questionnaireApi.ts @@ -1,7 +1,7 @@ import { HttpMethod, Type } from "@/Utils/request/api"; import { PaginatedResponse } from "@/Utils/request/types"; +import { Organization } from "@/types/organization/organization"; -import { Organization } from "../organization/organization"; import { QuestionnaireCreate, QuestionnaireDetail } from "./questionnaire"; import { QuestionnaireTagModel, QuestionnaireTagSet } from "./tags"; diff --git a/src/types/questionnaire/questionnaireResponse.ts b/src/types/questionnaire/questionnaireResponse.ts index da8e8e16c83..a956e55062c 100644 --- a/src/types/questionnaire/questionnaireResponse.ts +++ b/src/types/questionnaire/questionnaireResponse.ts @@ -1,4 +1,5 @@ -import { UserBase } from "../user/user"; +import { UserBase } from "@/types/user/user"; + import { QuestionnaireResponse as Response } from "./form"; import { StructuredQuestionType } from "./question"; import { QuestionnaireDetail } from "./questionnaire"; diff --git a/src/types/resourceRequest/resourceRequest.ts b/src/types/resourceRequest/resourceRequest.ts index a97b4eaeccd..7594766017c 100644 --- a/src/types/resourceRequest/resourceRequest.ts +++ b/src/types/resourceRequest/resourceRequest.ts @@ -1,7 +1,7 @@ import { FacilityModel } from "@/components/Facility/models"; import { UserBareMinimum } from "@/components/Users/models"; -import { PatientModel } from "../emr/patient"; +import { PatientModel } from "@/types/emr/patient"; export interface ResourceRequest { approving_facility: FacilityModel | null;