pat-shared-components 0.9.0-beta.3 → 1.0.0-beta-2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -26
- package/dist/index.es.js +25620 -8728
- package/dist/index.umd.js +81 -138
- package/dist/style.css +1 -1
- package/dist/types/{src/components/Public/TestResultViewer/Templates/Shared/CategoryItem/TestValueLabelRow.vue.d.ts → components/BookingDetail/BasicInfo.vue.d.ts} +6 -13
- package/dist/types/components/BookingDetail/BasicInfoSection.vue.d.ts +31 -0
- package/dist/types/{src/components/Public/TestResultViewer/Templates/Shared/CategoryItem/TestItem.vue.d.ts → components/BookingDetail/BookingCtaButtons.vue.d.ts} +13 -5
- package/dist/types/{src/components/Public/TestResultViewer/Templates/Shared/CategoryItem/CategoryHeader.vue.d.ts → components/BookingDetail/BookingDetail.vue.d.ts} +12 -15
- package/dist/types/components/BookingDetail/BookingDetailDesktop.vue.d.ts +34 -0
- package/dist/types/{src/components/Public/TestResultViewer/Templates/Shared/CategoryItem/TestHeader/ImagingValue.vue.d.ts → components/BookingDetail/BookingNote.vue.d.ts} +4 -4
- package/dist/types/components/BookingDetail/BookingNumber.vue.d.ts +25 -0
- package/dist/types/components/BookingDetail/BookingResultStatus.vue.d.ts +31 -0
- package/dist/types/{src/components/Public/TestResultViewer/Templates/HPV/HPV.vue.d.ts → components/BookingDetail/BookingStatusComponent.vue.d.ts} +2 -2
- package/dist/types/{src/components/Public/TestResultViewer/Templates/Shared/CategoryItem/TestValueXML.vue.d.ts → components/BookingDetail/BottomCurved.vue.d.ts} +5 -6
- package/dist/types/components/BookingDetail/CtaButton.vue.d.ts +40 -0
- package/dist/types/{src/components/Public/TestResultViewer/Templates/Shared/CategoryItem/TestHeader/DiagValue.vue.d.ts → components/BookingDetail/DiagLogo.vue.d.ts} +4 -5
- package/dist/types/{src/components/Public/TestResultViewer/Templates/HPV/WhatNext.vue.d.ts → components/BookingDetail/PaymentStatusComponent.vue.d.ts} +2 -2
- package/dist/types/components/BookingDetail/SampleCollectionInfo.vue.d.ts +23 -0
- package/dist/types/components/BookingDetail/TestList.vue.d.ts +27 -0
- package/dist/types/{src/components/Public/TestResultViewer/Templates/Shared/CategoryItem/TestHistory.vue.d.ts → components/BookingDetail/TotalPayment.vue.d.ts} +1 -2
- package/dist/types/components/BookingDetail/index.d.ts +2 -0
- package/dist/types/components/Shared/CtaButton.vue.d.ts +31 -0
- package/dist/types/components/Shared/LoadingSkeleton.vue.d.ts +2 -0
- package/dist/types/components/Shared/NoItemsFound.vue.d.ts +36 -0
- package/dist/types/{src/components/Public/TestResultViewer/Templates/Shared/FAQList.vue.d.ts → components/Shared/PatientName.vue.d.ts} +1 -2
- package/dist/types/components/Shared/ResultStatus.vue.d.ts +23 -0
- package/dist/types/{src/components/Shared/BTooltips.vue.d.ts → components/Shared/SectionTitle.vue.d.ts} +0 -3
- package/dist/types/components/Shared/TitleIcon.vue.d.ts +30 -0
- package/dist/types/components/Shared/index.d.ts +3 -0
- package/dist/types/{src/components/Public/TestResultViewer/Templates/Shared/CategoryItem/TestExtraInfo.vue.d.ts → components/TestResult/BookAppointmentModal/BookAppointment/BookAppointment.vue.d.ts} +10 -13
- package/dist/types/components/TestResult/BookAppointmentModal/BookAppointment/DateItem.vue.d.ts +24 -0
- package/dist/types/components/TestResult/BookAppointmentModal/BookAppointment/DayPartItem.vue.d.ts +24 -0
- package/dist/types/components/TestResult/BookAppointmentModal/BookAppointment/ErrorMessage.vue.d.ts +2 -0
- package/dist/types/{src/components/Public/TestResultViewer/Templates/HPV/components/HighRiskDetail.vue.d.ts → components/TestResult/BookAppointmentModal/BookAppointment/SuccessMessage.vue.d.ts} +1 -2
- package/dist/types/components/TestResult/BookAppointmentModal/BookAppointment/TimeSlotItem.vue.d.ts +30 -0
- package/dist/types/components/TestResult/BookAppointmentModal/BookAppointmentModal.vue.d.ts +39 -0
- package/dist/types/components/TestResult/CallUsFilledButton.vue.d.ts +2 -0
- package/dist/types/components/TestResult/CheckOthersButton.vue.d.ts +2 -0
- package/dist/types/components/TestResult/Desktop/CallUsTextButton.vue.d.ts +2 -0
- package/dist/types/components/TestResult/Desktop/ResultReady.vue.d.ts +15 -0
- package/dist/types/components/TestResult/Mobile/BookingTab/BookingList.vue.d.ts +36 -0
- package/dist/types/{src/components/Public/TestResultViewer/Templates/HPV/components/HPVResult.vue.d.ts → components/TestResult/Mobile/BookingTab/BookingListItem.vue.d.ts} +2 -2
- package/dist/types/components/TestResult/Mobile/MyProfile.vue.d.ts +34 -0
- package/dist/types/components/TestResult/Mobile/ResultTab/TestResultDetail/BookAppointmentButton.vue.d.ts +4 -0
- package/dist/types/components/TestResult/Mobile/ResultTab/TestResultDetail/DoctorNote.vue.d.ts +28 -0
- package/dist/types/{src/components/Public/TestResultViewer/Templates/GXNT1/GXNT1.vue.d.ts → components/TestResult/Mobile/ResultTab/TestResultDetail/ResultOverview.vue.d.ts} +2 -2
- package/dist/types/{src/components/Shared/BModal/BModal.vue.d.ts → components/TestResult/Mobile/ResultTab/TestResultDetail/TestResultDetail.vue.d.ts} +10 -12
- package/dist/types/components/TestResult/Mobile/ResultTab/TestResultDetail/TestResultDetailSkeleton/ResultViewerSkeleton.vue.d.ts +2 -0
- package/dist/types/components/TestResult/Mobile/ResultTab/TestResultDetail/TestResultDetailSkeleton/TestResultDetailSkeleton.vue.d.ts +2 -0
- package/dist/types/{src/components/Public/TestResultViewer/Templates/HPV/components/LowRiskDetail.vue.d.ts → components/TestResult/Mobile/ResultTab/TestResultDetail/UpcomingAppointment.vue.d.ts} +1 -2
- package/dist/types/components/TestResult/Mobile/ResultTab/TestResultList.vue.d.ts +40 -0
- package/dist/types/components/TestResult/Mobile/ResultTab/TestResultListItem.vue.d.ts +28 -0
- package/dist/types/components/TestResult/PatientFullInfo.vue.d.ts +27 -0
- package/dist/types/components/TestResult/RejectedResult.vue.d.ts +10 -0
- package/dist/types/components/TestResult/TabTitle.vue.d.ts +9 -0
- package/dist/types/components/TestResult/TestResultHistoryDetailModal/TestResultHistoryDetail.vue.d.ts +34 -0
- package/dist/types/{src/components/Public/TestResultViewer/Templates/Shared/CategoryItem/CategoryItem.vue.d.ts → components/TestResult/TestResultHistoryDetailModal/TestResultHistoryDetailModal.vue.d.ts} +6 -5
- package/dist/types/components/TestResult/index.d.ts +15 -0
- package/dist/types/composables/Booking.d.ts +5 -0
- package/dist/types/composables/BookingDetail.d.ts +6 -0
- package/dist/types/composables/Patient.d.ts +5 -0
- package/dist/types/constants/Common.d.ts +15 -0
- package/dist/types/constants/Enums.d.ts +103 -0
- package/dist/types/helpers/ComponentHelper.d.ts +2 -0
- package/dist/types/helpers/DateHelper.d.ts +1 -0
- package/dist/types/{src/index.d.ts → index.d.ts} +4 -2
- package/dist/types/types/Appointment.d.ts +14 -0
- package/dist/types/types/Booking.d.ts +98 -0
- package/dist/types/types/Common.d.ts +5 -0
- package/dist/types/{src/types → types}/TestResult.d.ts +29 -74
- package/dist/types/types/TestResultHistory.d.ts +23 -0
- package/dist/types/types/index.d.ts +5 -0
- package/package.json +8 -5
- package/dist/types/src/components/Public/TestResultViewer/Shared/TestExpansion.vue.d.ts +0 -80
- package/dist/types/src/components/Public/TestResultViewer/Templates/HPV/components/TestTooltipIcon.vue.d.ts +0 -14
- package/dist/types/src/components/Public/TestResultViewer/Templates/STD/STD.vue.d.ts +0 -23
- package/dist/types/src/components/Public/TestResultViewer/Templates/Shared/CategoryItem/TestHeader/TestHeader.vue.d.ts +0 -30
- package/dist/types/src/components/Public/TestResultViewer/Templates/Shared/CategoryItem/TestValueNumeric/RangeGroup.vue.d.ts +0 -48
- package/dist/types/src/components/Public/TestResultViewer/Templates/Shared/CategoryItem/TestValueNumeric/TestValueNumeric.vue.d.ts +0 -48
- package/dist/types/src/components/Public/TestResultViewer/Templates/Shared/CategoryItem/TestValueText.vue.d.ts +0 -26
- package/dist/types/src/components/Public/TestResultViewer/Templates/Shared/DigitalView.vue.d.ts +0 -23
- package/dist/types/src/components/Public/TestResultViewer/TestResultViewer.vue.d.ts +0 -40
- package/dist/types/src/components/Public/index.d.ts +0 -1
- package/dist/types/src/components/Shared/BButton.vue.d.ts +0 -53
- package/dist/types/src/components/Shared/BCollapse.vue.d.ts +0 -35
- package/dist/types/src/components/Shared/index.d.ts +0 -7
- package/dist/types/src/composables/HPV.d.ts +0 -7
- package/dist/types/src/composables/TestResult.d.ts +0 -4
- package/dist/types/src/constants/Common.d.ts +0 -2
- package/dist/types/src/constants/Enums.d.ts +0 -121
- package/dist/types/src/helpers/ComponentHelper.d.ts +0 -3
- package/dist/types/src/types/index.d.ts +0 -1
- /package/dist/types/{src/components/Public/TestResultViewer/Shared/CallUsTextButton.vue.d.ts → components/BookingDetail/BookingDetailDesktopSkeleton/BasicInfoSkeleton.vue.d.ts} +0 -0
- /package/dist/types/{src/components/Public/TestResultViewer/Templates/Shared/CategoryItem/TestHeader/OutsourceValue.vue.d.ts → components/BookingDetail/BookingDetailDesktopSkeleton/BookingDetailDesktopSkeleton.vue.d.ts} +0 -0
- /package/dist/types/{src/components/Shared/BModal/BModalBody.vue.d.ts → components/BookingDetail/BookingDetailSkeleton/BasicInfoSkeleton.vue.d.ts} +0 -0
- /package/dist/types/{src/components/Shared/BModal/BModalFooter.vue.d.ts → components/BookingDetail/BookingDetailSkeleton/BookingDetailSkeleton.vue.d.ts} +0 -0
- /package/dist/types/{src/components/Shared/BModal/BModalHeader.vue.d.ts → components/BookingDetail/DiagSupport.vue.d.ts} +0 -0
- /package/dist/types/{src/playground/PlaygroundView.vue.d.ts → components/Shared/CtaButtonSkeleton.vue.d.ts} +0 -0
- /package/dist/types/{src/components/Public/TestResultViewer/Templates/Default/Default.vue.d.ts → components/TestResult/Mobile/ResultTab/TestResultDetail/ResultReadyV2.vue.d.ts} +0 -0
- /package/dist/types/{src/plugin.d.ts → plugin.d.ts} +0 -0
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { TestResultHistory } from '@/types';
|
|
2
2
|
/**
|
|
3
3
|
* Props
|
|
4
4
|
*/
|
|
5
5
|
export interface Props {
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
modelValue: boolean;
|
|
7
|
+
historyData: TestResultHistory;
|
|
8
|
+
loading: boolean;
|
|
8
9
|
}
|
|
9
|
-
declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:
|
|
10
|
-
"onUpdate:
|
|
10
|
+
declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:modelValue"[], "update:modelValue", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {}>>> & {
|
|
11
|
+
"onUpdate:modelValue"?: (...args: any[]) => any;
|
|
11
12
|
}, {}>;
|
|
12
13
|
export default _default;
|
|
13
14
|
declare type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export { default as CallUsFilledButton } from './CallUsFilledButton.vue';
|
|
2
|
+
export { default as PatientFullInfo } from './PatientFullInfo.vue';
|
|
3
|
+
export { default as RejectedResult } from './RejectedResult.vue';
|
|
4
|
+
export { default as TestResultHistoryDetail } from './TestResultHistoryDetailModal/TestResultHistoryDetail.vue';
|
|
5
|
+
export { default as TestResultHistoryDetailModal } from './TestResultHistoryDetailModal/TestResultHistoryDetailModal.vue';
|
|
6
|
+
export { default as BookAppointment } from './BookAppointmentModal/BookAppointment/BookAppointment.vue';
|
|
7
|
+
export { default as BookAppointmentModal } from './BookAppointmentModal/BookAppointmentModal.vue';
|
|
8
|
+
export { default as BookingList } from './Mobile/BookingTab/BookingList.vue';
|
|
9
|
+
export { default as BookingListItem } from './Mobile/BookingTab/BookingListItem.vue';
|
|
10
|
+
export { default as TestResultDetail } from './Mobile/ResultTab/TestResultDetail/TestResultDetail.vue';
|
|
11
|
+
export { default as TestResultList } from './Mobile/ResultTab/TestResultList.vue';
|
|
12
|
+
export { default as TestResultListItem } from './Mobile/ResultTab/TestResultListItem.vue';
|
|
13
|
+
export { default as MyProfile } from './Mobile/MyProfile.vue';
|
|
14
|
+
export { default as CallUsTextButton } from './Desktop/CallUsTextButton.vue';
|
|
15
|
+
export { default as ResultReady } from './Desktop/ResultReady.vue';
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { Booking, BookingBasicInfoDoctor, BookingBasicInfoPatient } from '@/types';
|
|
2
|
+
import { type Ref } from 'vue';
|
|
3
|
+
export declare function useBookingDetail(booking: Ref<Booking>): {
|
|
4
|
+
patient: import("vue").ComputedRef<BookingBasicInfoPatient>;
|
|
5
|
+
doctor: import("vue").ComputedRef<BookingBasicInfoDoctor>;
|
|
6
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export declare const SupportPhone = "19001717";
|
|
2
|
+
export declare const SupportEmail = "customersupport@diag.vn";
|
|
3
|
+
export declare enum LsKey {
|
|
4
|
+
Locale = "DiagPatientPortalLocale"
|
|
5
|
+
}
|
|
6
|
+
export declare const EventBusName: {
|
|
7
|
+
Container: string;
|
|
8
|
+
MicroTestResult: string;
|
|
9
|
+
};
|
|
10
|
+
export declare const EventType: {
|
|
11
|
+
ChangeRoute: string;
|
|
12
|
+
};
|
|
13
|
+
export declare const CookieName: {
|
|
14
|
+
AccessToken: string;
|
|
15
|
+
};
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Booking
|
|
3
|
+
*/
|
|
4
|
+
export declare enum BookingStatus {
|
|
5
|
+
Created = "created",
|
|
6
|
+
InProgress = "in-progress",
|
|
7
|
+
Completed = "completed",
|
|
8
|
+
Canceled = "canceled"
|
|
9
|
+
}
|
|
10
|
+
export declare enum PaymentStatus {
|
|
11
|
+
RefundInProgress = "refund_in_progress",
|
|
12
|
+
Refunded = "refunded",
|
|
13
|
+
PayLater = "pay-later",
|
|
14
|
+
PaidOnline = "paid-online",
|
|
15
|
+
Paid = "paid",
|
|
16
|
+
Canceled = "cancelled"
|
|
17
|
+
}
|
|
18
|
+
export declare enum ServiceType {
|
|
19
|
+
Group = "GRP",
|
|
20
|
+
Package = "PKG",
|
|
21
|
+
Investigation = "INV",
|
|
22
|
+
ImagingService = "IMG"
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Test Result
|
|
26
|
+
*/
|
|
27
|
+
export declare enum TestResultStatus {
|
|
28
|
+
Ordered = "ordered",
|
|
29
|
+
Ready = "ready",
|
|
30
|
+
PartiallyComplete = "partial",
|
|
31
|
+
InProgress = "in-progress",
|
|
32
|
+
Canceled = "canceled",
|
|
33
|
+
Rejected = "rejected"
|
|
34
|
+
}
|
|
35
|
+
export declare enum TestResultTemplate {
|
|
36
|
+
Default = "default",
|
|
37
|
+
GXNT1 = "GXNT1",
|
|
38
|
+
HPV = "HPV",
|
|
39
|
+
STD = "STD"
|
|
40
|
+
}
|
|
41
|
+
export declare enum TestResultConclusion {
|
|
42
|
+
Abnormal = "A",
|
|
43
|
+
LowerAbnormal = "L",
|
|
44
|
+
Panic = "P",
|
|
45
|
+
Normal = "N"
|
|
46
|
+
}
|
|
47
|
+
export declare enum TestStatus {
|
|
48
|
+
SampleCollected = "SampleCollected",
|
|
49
|
+
SampleReceived = "SampleReceived",
|
|
50
|
+
YetToTransfer = "Yet to Transfer",
|
|
51
|
+
Completed = "Completed",
|
|
52
|
+
Cancel = "Cancel",
|
|
53
|
+
Approve = "Approve"
|
|
54
|
+
}
|
|
55
|
+
export declare enum ResultType {
|
|
56
|
+
Numberic = "numeric",
|
|
57
|
+
Text = "text",
|
|
58
|
+
XML = "XML"
|
|
59
|
+
}
|
|
60
|
+
export declare enum ResultSegmentNormalType {
|
|
61
|
+
Normal = "normal",
|
|
62
|
+
Attention = "attention",
|
|
63
|
+
Critical = "critical"
|
|
64
|
+
}
|
|
65
|
+
export declare enum ResultSegmentValueOPR {
|
|
66
|
+
GreaterThan = ">",
|
|
67
|
+
GreaterThanOrEqualTo = "\u2265",
|
|
68
|
+
LessThan = "<",
|
|
69
|
+
LessThanOrEqualTo = "\u2264",
|
|
70
|
+
BTW = "btw",
|
|
71
|
+
Txt = "txt"
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Patient
|
|
75
|
+
*/
|
|
76
|
+
export declare enum DocumentType {
|
|
77
|
+
IDCard = "ID Card",
|
|
78
|
+
Passport = "Passport",
|
|
79
|
+
PassportNo = "Passport No",
|
|
80
|
+
Unknown = "Unknown"
|
|
81
|
+
}
|
|
82
|
+
export declare enum Gender {
|
|
83
|
+
Male = "Male",
|
|
84
|
+
Female = "Female"
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Others
|
|
88
|
+
*/
|
|
89
|
+
export declare enum DayPartType {
|
|
90
|
+
Morning = "morning",
|
|
91
|
+
Afternoon = "afternoon",
|
|
92
|
+
Evening = "evening"
|
|
93
|
+
}
|
|
94
|
+
export declare enum AccountSegment {
|
|
95
|
+
HomeKit = "homekit",
|
|
96
|
+
Walkin = "walkin",
|
|
97
|
+
Doctor = "doctor",
|
|
98
|
+
Corporate = "corporate"
|
|
99
|
+
}
|
|
100
|
+
export declare enum BottomCursedType {
|
|
101
|
+
Medium = "md",
|
|
102
|
+
Large = "lg"
|
|
103
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const formatDateTimeShort: (date?: string | Date) => string | Date;
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import './assets/
|
|
2
|
-
export { TestResultViewer } from '@/components/Public';
|
|
1
|
+
import './assets/styles/main.scss';
|
|
3
2
|
export * from './types';
|
|
3
|
+
export * from './components/BookingDetail';
|
|
4
|
+
export * from './components/Shared';
|
|
5
|
+
export * from './components/TestResult';
|
|
4
6
|
export * from './constants/Common';
|
|
5
7
|
export * from './constants/Enums';
|
|
6
8
|
/**
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { DayPartType } from '@/constants/Enums';
|
|
2
|
+
export interface ApptDateOption {
|
|
3
|
+
value: any;
|
|
4
|
+
disabled: boolean;
|
|
5
|
+
dayParts: ApptDayPart[];
|
|
6
|
+
}
|
|
7
|
+
export interface ApptDayPart {
|
|
8
|
+
text: string;
|
|
9
|
+
value: DayPartType;
|
|
10
|
+
start: string;
|
|
11
|
+
end: string;
|
|
12
|
+
timeSlots: Date[];
|
|
13
|
+
disabled: boolean;
|
|
14
|
+
}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import type { AccountSegment, BookingStatus, DocumentType, Gender, PaymentStatus, TestResultStatus, ServiceType } from '@/constants/Enums';
|
|
2
|
+
export interface BookingCompact {
|
|
3
|
+
booking_code: string;
|
|
4
|
+
booking_status: BookingStatus;
|
|
5
|
+
created_at: string;
|
|
6
|
+
date_of_birth: string;
|
|
7
|
+
document_number: string;
|
|
8
|
+
document_type: DocumentType;
|
|
9
|
+
email: string;
|
|
10
|
+
first_name: string;
|
|
11
|
+
gender: Gender;
|
|
12
|
+
is_pay_online: boolean;
|
|
13
|
+
key: string;
|
|
14
|
+
note: string;
|
|
15
|
+
payment_status: PaymentStatus;
|
|
16
|
+
phone_number: string;
|
|
17
|
+
total_amount: number;
|
|
18
|
+
transaction: any;
|
|
19
|
+
}
|
|
20
|
+
export interface Booking {
|
|
21
|
+
booking_code: string;
|
|
22
|
+
booking_status: BookingStatus;
|
|
23
|
+
result_status: TestResultStatus;
|
|
24
|
+
created_at: string;
|
|
25
|
+
date_of_birth: string;
|
|
26
|
+
document_number: string;
|
|
27
|
+
document_type: DocumentType;
|
|
28
|
+
address?: string;
|
|
29
|
+
email?: string;
|
|
30
|
+
first_name: string;
|
|
31
|
+
note?: string;
|
|
32
|
+
gender: Gender;
|
|
33
|
+
is_pay_online: boolean;
|
|
34
|
+
key: string;
|
|
35
|
+
payment_status: PaymentStatus;
|
|
36
|
+
phone_number: string;
|
|
37
|
+
transaction?: {
|
|
38
|
+
transaction_id: string;
|
|
39
|
+
transaction_time: string;
|
|
40
|
+
transaction_status: string;
|
|
41
|
+
booking_id: number;
|
|
42
|
+
order_cash: string;
|
|
43
|
+
order_status: number;
|
|
44
|
+
payment_method: number;
|
|
45
|
+
bank_name: string;
|
|
46
|
+
};
|
|
47
|
+
account: BookingAccount;
|
|
48
|
+
services: Array<BookingService>;
|
|
49
|
+
total_amount: number;
|
|
50
|
+
test_result_key?: string;
|
|
51
|
+
data?: {
|
|
52
|
+
is_hbc: boolean;
|
|
53
|
+
planned_test_date?: string;
|
|
54
|
+
supportingInformation?: {
|
|
55
|
+
appointmentSampleCollectionPlace: string;
|
|
56
|
+
};
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
export interface BookingAccount {
|
|
60
|
+
account_code: string;
|
|
61
|
+
name: string;
|
|
62
|
+
phone_number?: string;
|
|
63
|
+
account_segment: AccountSegment;
|
|
64
|
+
}
|
|
65
|
+
export interface BookingService {
|
|
66
|
+
service: BookingServiceDetail;
|
|
67
|
+
}
|
|
68
|
+
export interface BookingServiceDetail {
|
|
69
|
+
test_code: string;
|
|
70
|
+
group: string;
|
|
71
|
+
test_name_en: string;
|
|
72
|
+
test_name_vi: string;
|
|
73
|
+
simple_name_en: string | null;
|
|
74
|
+
simple_name_vi: string | null;
|
|
75
|
+
walkin_price: number;
|
|
76
|
+
simple_cate_en: string;
|
|
77
|
+
simple_cate_vi: string;
|
|
78
|
+
service_type: ServiceType;
|
|
79
|
+
}
|
|
80
|
+
export interface BookingBasicInfoPatient {
|
|
81
|
+
first_name: string;
|
|
82
|
+
date_of_birth: string;
|
|
83
|
+
gender: Gender;
|
|
84
|
+
phone_number: string;
|
|
85
|
+
document_type: DocumentType;
|
|
86
|
+
document_number: string;
|
|
87
|
+
address?: string;
|
|
88
|
+
email?: string;
|
|
89
|
+
}
|
|
90
|
+
export interface BookingBasicInfoDoctor {
|
|
91
|
+
account_code: string;
|
|
92
|
+
name: string;
|
|
93
|
+
phone_number?: string;
|
|
94
|
+
}
|
|
95
|
+
export interface BookingBasicInfoSectionItem {
|
|
96
|
+
icon: string;
|
|
97
|
+
text?: string;
|
|
98
|
+
}
|
|
@@ -1,33 +1,10 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
export interface
|
|
3
|
-
name: string;
|
|
4
|
-
header: string[];
|
|
5
|
-
content: string[];
|
|
6
|
-
}
|
|
7
|
-
export interface TestResultBase {
|
|
8
|
-
can_booking: boolean;
|
|
9
|
-
date_of_birth: string;
|
|
10
|
-
doctor_name?: string;
|
|
11
|
-
doctor_note?: string;
|
|
12
|
-
first_name: string;
|
|
13
|
-
gender: Gender;
|
|
1
|
+
import type { Gender, ResultSegmentNormalType, ResultSegmentValueOPR, ResultType, TestResultConclusion, TestResultStatus, TestResultTemplate, TestStatus } from '@/constants/Enums';
|
|
2
|
+
export interface TestResultCompact {
|
|
14
3
|
order_id: string;
|
|
15
|
-
|
|
16
|
-
pdf: string;
|
|
17
|
-
phone_number: string;
|
|
18
|
-
result_at?: string;
|
|
4
|
+
first_name: string;
|
|
19
5
|
result_status: TestResultStatus;
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
template_type: `${TestResultTemplate}`;
|
|
23
|
-
overview: TestResultOverview[];
|
|
24
|
-
is_free_consultant: boolean;
|
|
25
|
-
consult_time?: string;
|
|
26
|
-
}
|
|
27
|
-
export interface TestResultOverview {
|
|
28
|
-
count: number;
|
|
29
|
-
name: string;
|
|
30
|
-
percent: number;
|
|
6
|
+
visit_date: string;
|
|
7
|
+
key: string;
|
|
31
8
|
}
|
|
32
9
|
export interface TestResult extends TestResultBase {
|
|
33
10
|
categories: TestResultCategory[];
|
|
@@ -53,62 +30,40 @@ export interface TestResultItem {
|
|
|
53
30
|
test_value_type: ResultType;
|
|
54
31
|
uom_code: string;
|
|
55
32
|
delta_value?: any;
|
|
56
|
-
service_type: TestServiceType;
|
|
57
33
|
}
|
|
58
34
|
export interface TestResultRange {
|
|
59
35
|
result_type: `${ResultType}`;
|
|
60
36
|
value_txt: string;
|
|
37
|
+
status: `${ResultSegmentNormalType}`;
|
|
61
38
|
result_label: string;
|
|
62
39
|
color: string;
|
|
63
40
|
is_active: boolean;
|
|
64
41
|
value_min: number;
|
|
65
42
|
value_max: number;
|
|
66
43
|
value_opr?: `${ResultSegmentValueOPR}`;
|
|
67
|
-
result_explanation?: string;
|
|
68
|
-
}
|
|
69
|
-
export interface TestRange {
|
|
70
|
-
min: number;
|
|
71
|
-
max: number;
|
|
72
|
-
minLabel: string;
|
|
73
|
-
maxLabel: string;
|
|
74
|
-
color: string;
|
|
75
|
-
showMin: boolean;
|
|
76
|
-
showMax: boolean;
|
|
77
|
-
active: boolean;
|
|
78
|
-
resultLabel: string;
|
|
79
|
-
showResultLabel: boolean;
|
|
80
|
-
compact: boolean;
|
|
81
44
|
}
|
|
82
|
-
export interface
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
results_overview: `${HPVTestResultType}`;
|
|
102
|
-
name: `${HPVRiskCategory}`;
|
|
103
|
-
tests: RiskTest[];
|
|
104
|
-
}
|
|
105
|
-
export interface RiskTest {
|
|
106
|
-
secondary_test_name: string;
|
|
107
|
-
test_code: string;
|
|
108
|
-
test_name: string;
|
|
109
|
-
test_value: HPVTestResultType;
|
|
45
|
+
export interface TestResultBase {
|
|
46
|
+
can_booking: boolean;
|
|
47
|
+
date_of_birth: string;
|
|
48
|
+
doctor_name?: string;
|
|
49
|
+
doctor_note?: string;
|
|
50
|
+
first_name: string;
|
|
51
|
+
gender: Gender;
|
|
52
|
+
order_id: string;
|
|
53
|
+
ordered_at: string;
|
|
54
|
+
pdf: string;
|
|
55
|
+
phone_number: string;
|
|
56
|
+
result_at?: string;
|
|
57
|
+
result_status: TestResultStatus;
|
|
58
|
+
sample_collected_at?: string;
|
|
59
|
+
status: string;
|
|
60
|
+
template_type: `${TestResultTemplate}`;
|
|
61
|
+
overview: TestResultOverview[];
|
|
62
|
+
is_free_consultant: boolean;
|
|
63
|
+
consult_time?: string;
|
|
110
64
|
}
|
|
111
|
-
export interface
|
|
112
|
-
|
|
113
|
-
|
|
65
|
+
export interface TestResultOverview {
|
|
66
|
+
count: number;
|
|
67
|
+
name: string;
|
|
68
|
+
percent: number;
|
|
114
69
|
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { TestResultConclusion } from '@/constants/Enums';
|
|
2
|
+
export interface TestResultHistoryCompact {
|
|
3
|
+
test_code: string;
|
|
4
|
+
min_test_value: number;
|
|
5
|
+
max_test_value: number;
|
|
6
|
+
uom_code: string;
|
|
7
|
+
test_name: string;
|
|
8
|
+
latest_test_value: number;
|
|
9
|
+
}
|
|
10
|
+
export interface TestResultHistory {
|
|
11
|
+
test_code: string;
|
|
12
|
+
test_name: string;
|
|
13
|
+
uom_code: string;
|
|
14
|
+
purpose: string;
|
|
15
|
+
charts: HistoryChartDataItem[] | Record<number, HistoryChartDataItem>;
|
|
16
|
+
}
|
|
17
|
+
export interface HistoryChartDataItem {
|
|
18
|
+
value: number;
|
|
19
|
+
original_test_value: string;
|
|
20
|
+
order_date: string;
|
|
21
|
+
is_abnormal: TestResultConclusion;
|
|
22
|
+
reference_range: string;
|
|
23
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pat-shared-components",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "1.0.0-beta-2",
|
|
4
4
|
"files": [
|
|
5
5
|
"dist/**/*"
|
|
6
6
|
],
|
|
@@ -32,18 +32,21 @@
|
|
|
32
32
|
"format": "prettier . --write"
|
|
33
33
|
},
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"
|
|
35
|
+
"@juggle/resize-observer": "^3.4.0",
|
|
36
|
+
"chart.js": "^3.9.1",
|
|
37
|
+
"imask": "^6.4.3",
|
|
36
38
|
"lodash": "^4.17.21",
|
|
37
39
|
"moment-mini": "^2.29.4",
|
|
40
|
+
"pat-design-system": "0.3.0-beta.50",
|
|
38
41
|
"uuid": "^8.3.2",
|
|
39
42
|
"vue": "^3.2.37",
|
|
40
|
-
"vue-i18n": "^9.2.2"
|
|
41
|
-
"vue3-popper": "^1.5.0"
|
|
43
|
+
"vue-i18n": "^9.2.2"
|
|
42
44
|
},
|
|
43
45
|
"devDependencies": {
|
|
44
46
|
"@babel/core": "^7.20.12",
|
|
45
47
|
"@intlify/eslint-plugin-vue-i18n": "^2.0.0",
|
|
46
48
|
"@rushstack/eslint-patch": "^1.1.4",
|
|
49
|
+
"@tailwindcss/line-clamp": "^0.4.2",
|
|
47
50
|
"@types/jsdom": "^20.0.0",
|
|
48
51
|
"@types/lodash": "^4.14.188",
|
|
49
52
|
"@types/uuid": "^8.3.4",
|
|
@@ -64,7 +67,7 @@
|
|
|
64
67
|
"prettier": "^2.7.1",
|
|
65
68
|
"prettier-plugin-tailwindcss": "^0.2.5",
|
|
66
69
|
"sass": "^1.56.0",
|
|
67
|
-
"tailwindcss": "^3.
|
|
70
|
+
"tailwindcss": "^3.2.2",
|
|
68
71
|
"typescript": "~4.7.4",
|
|
69
72
|
"vite": "^3.1.8",
|
|
70
73
|
"vitest": "^0.24.3",
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
|
|
2
|
-
modelValue: {
|
|
3
|
-
type: BooleanConstructor;
|
|
4
|
-
default: any;
|
|
5
|
-
};
|
|
6
|
-
headerClass: {
|
|
7
|
-
type: StringConstructor;
|
|
8
|
-
default: string;
|
|
9
|
-
};
|
|
10
|
-
headerIconClass: {
|
|
11
|
-
type: StringConstructor;
|
|
12
|
-
default: string;
|
|
13
|
-
};
|
|
14
|
-
bodyClass: {
|
|
15
|
-
type: StringConstructor;
|
|
16
|
-
default: string;
|
|
17
|
-
};
|
|
18
|
-
hideBottomCollapseBtn: {
|
|
19
|
-
type: BooleanConstructor;
|
|
20
|
-
};
|
|
21
|
-
defaultSlot: {
|
|
22
|
-
type: BooleanConstructor;
|
|
23
|
-
default: boolean;
|
|
24
|
-
};
|
|
25
|
-
autoFocus: {
|
|
26
|
-
type: BooleanConstructor;
|
|
27
|
-
default: boolean;
|
|
28
|
-
};
|
|
29
|
-
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:modelValue"[], "update:modelValue", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
30
|
-
modelValue: {
|
|
31
|
-
type: BooleanConstructor;
|
|
32
|
-
default: any;
|
|
33
|
-
};
|
|
34
|
-
headerClass: {
|
|
35
|
-
type: StringConstructor;
|
|
36
|
-
default: string;
|
|
37
|
-
};
|
|
38
|
-
headerIconClass: {
|
|
39
|
-
type: StringConstructor;
|
|
40
|
-
default: string;
|
|
41
|
-
};
|
|
42
|
-
bodyClass: {
|
|
43
|
-
type: StringConstructor;
|
|
44
|
-
default: string;
|
|
45
|
-
};
|
|
46
|
-
hideBottomCollapseBtn: {
|
|
47
|
-
type: BooleanConstructor;
|
|
48
|
-
};
|
|
49
|
-
defaultSlot: {
|
|
50
|
-
type: BooleanConstructor;
|
|
51
|
-
default: boolean;
|
|
52
|
-
};
|
|
53
|
-
autoFocus: {
|
|
54
|
-
type: BooleanConstructor;
|
|
55
|
-
default: boolean;
|
|
56
|
-
};
|
|
57
|
-
}>> & {
|
|
58
|
-
"onUpdate:modelValue"?: (...args: any[]) => any;
|
|
59
|
-
}, {
|
|
60
|
-
autoFocus: boolean;
|
|
61
|
-
modelValue: boolean;
|
|
62
|
-
headerClass: string;
|
|
63
|
-
headerIconClass: string;
|
|
64
|
-
bodyClass: string;
|
|
65
|
-
hideBottomCollapseBtn: boolean;
|
|
66
|
-
defaultSlot: boolean;
|
|
67
|
-
}>, {
|
|
68
|
-
header: (_: {
|
|
69
|
-
isExpanded: boolean;
|
|
70
|
-
}) => any;
|
|
71
|
-
default: (_: {
|
|
72
|
-
isExpanded: boolean;
|
|
73
|
-
}) => any;
|
|
74
|
-
}>;
|
|
75
|
-
export default _default;
|
|
76
|
-
declare type __VLS_WithTemplateSlots<T, S> = T & {
|
|
77
|
-
new (): {
|
|
78
|
-
$slots: S;
|
|
79
|
-
};
|
|
80
|
-
};
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
declare const _default: import("vue").DefineComponent<{
|
|
2
|
-
secondaryTestName: {
|
|
3
|
-
type: StringConstructor;
|
|
4
|
-
default: string;
|
|
5
|
-
};
|
|
6
|
-
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
7
|
-
secondaryTestName: {
|
|
8
|
-
type: StringConstructor;
|
|
9
|
-
default: string;
|
|
10
|
-
};
|
|
11
|
-
}>>, {
|
|
12
|
-
secondaryTestName: string;
|
|
13
|
-
}>;
|
|
14
|
-
export default _default;
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import type { TestResultSTD } from '@/types';
|
|
2
|
-
/**
|
|
3
|
-
* Props
|
|
4
|
-
*/
|
|
5
|
-
export interface Props {
|
|
6
|
-
testResult: TestResultSTD;
|
|
7
|
-
}
|
|
8
|
-
declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {}>>>, {}>;
|
|
9
|
-
export default _default;
|
|
10
|
-
declare type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
11
|
-
declare type __VLS_TypePropsToRuntimeProps<T> = {
|
|
12
|
-
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
13
|
-
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
14
|
-
} : {
|
|
15
|
-
type: import('vue').PropType<T[K]>;
|
|
16
|
-
required: true;
|
|
17
|
-
};
|
|
18
|
-
};
|
|
19
|
-
declare type __VLS_WithDefaults<P, D> = {
|
|
20
|
-
[K in keyof Pick<P, keyof P>]: K extends keyof D ? P[K] & {
|
|
21
|
-
default: D[K];
|
|
22
|
-
} : P[K];
|
|
23
|
-
};
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import type { TestResultItem } from '@/types';
|
|
2
|
-
export interface HeaderIcon {
|
|
3
|
-
icon: string;
|
|
4
|
-
iconColor: string;
|
|
5
|
-
}
|
|
6
|
-
/**
|
|
7
|
-
* Props
|
|
8
|
-
*/
|
|
9
|
-
export interface Props {
|
|
10
|
-
test: TestResultItem;
|
|
11
|
-
hideIcon?: boolean;
|
|
12
|
-
hideValue?: boolean;
|
|
13
|
-
hideUnit?: boolean;
|
|
14
|
-
}
|
|
15
|
-
declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {}>>>, {}>;
|
|
16
|
-
export default _default;
|
|
17
|
-
declare type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
18
|
-
declare type __VLS_TypePropsToRuntimeProps<T> = {
|
|
19
|
-
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
20
|
-
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
21
|
-
} : {
|
|
22
|
-
type: import('vue').PropType<T[K]>;
|
|
23
|
-
required: true;
|
|
24
|
-
};
|
|
25
|
-
};
|
|
26
|
-
declare type __VLS_WithDefaults<P, D> = {
|
|
27
|
-
[K in keyof Pick<P, keyof P>]: K extends keyof D ? P[K] & {
|
|
28
|
-
default: D[K];
|
|
29
|
-
} : P[K];
|
|
30
|
-
};
|