clean
This commit is contained in:
@@ -0,0 +1,57 @@
|
||||
graph TD
|
||||
subgraph GraphQL API
|
||||
subgraph Queries
|
||||
Q1[getStaffStatus]
|
||||
Q2[getMe]
|
||||
Q3[getStaffPersonalInfo]
|
||||
Q4[getStaffProfileRoles]
|
||||
Q5[getShifts]
|
||||
Q6[staffNoBreakShifts]
|
||||
Q7[getShiftPosition]
|
||||
end
|
||||
|
||||
subgraph Mutations
|
||||
M1[updateStaffPersonalInfo]
|
||||
M2[updateStaffPersonalInfoWithAvatar]
|
||||
M3[uploadStaffAvatar]
|
||||
M4[acceptShift]
|
||||
M5[trackStaffClockin]
|
||||
M6[trackStaffClockout]
|
||||
M7[trackStaffBreak]
|
||||
M8[submitNoBreakStaffShift]
|
||||
M9[cancelStaffShift]
|
||||
M10[declineShift]
|
||||
end
|
||||
end
|
||||
|
||||
subgraph Firebase Services
|
||||
FS[Firebase Storage]
|
||||
FF[Firebase Firestore]
|
||||
FA[Firebase Auth]
|
||||
end
|
||||
|
||||
M2 --> FS;
|
||||
M3 --> FS;
|
||||
|
||||
Q1 --> FF;
|
||||
Q2 --> FF;
|
||||
Q3 --> FF;
|
||||
Q4 --> FF;
|
||||
Q5 --> FF;
|
||||
Q6 --> FF;
|
||||
Q7 --> FF;
|
||||
|
||||
M1 --> FF;
|
||||
M2 --> FF;
|
||||
M4 --> FF;
|
||||
M5 --> FF;
|
||||
M6 --> FF;
|
||||
M7 --> FF;
|
||||
M8 --> FF;
|
||||
M9 --> FF;
|
||||
M10 --> FF;
|
||||
|
||||
Q1 --> FA;
|
||||
Q2 --> FA;
|
||||
Q3 --> FA;
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
graph TD
|
||||
subgraph Flutter App
|
||||
A[Flutter UI]
|
||||
B[GraphQL Client]
|
||||
C[Firebase SDK]
|
||||
end
|
||||
|
||||
subgraph Backend
|
||||
D[GraphQL Server]
|
||||
E[Firebase]
|
||||
end
|
||||
|
||||
subgraph Firebase
|
||||
F[Firebase Auth]
|
||||
G[Firebase Firestore]
|
||||
H[Firebase Storage]
|
||||
I[Firebase Cloud Functions]
|
||||
J[Firebase Cloud Messaging]
|
||||
K[Firebase Remote Config]
|
||||
end
|
||||
|
||||
A --> B;
|
||||
A --> C;
|
||||
|
||||
B --> D;
|
||||
C --> F;
|
||||
C --> J;
|
||||
C --> K;
|
||||
|
||||
D --> G;
|
||||
D --> H;
|
||||
D --> I;
|
||||
D --> F;
|
||||
|
||||
I --> G;
|
||||
I --> H;
|
||||
I --> J;
|
||||
@@ -0,0 +1,117 @@
|
||||
flowchart TD
|
||||
A[main.dart] --> B{KrowApp};
|
||||
B --> C{MaterialApp.router};
|
||||
C --> D[SplashRoute];
|
||||
D --> E{SplashRedirectGuard};
|
||||
|
||||
E -- Authenticated --> F[HomeRoute];
|
||||
E -- Admin Validation --> G[WaitingValidationRoute];
|
||||
E -- Prepare Profile --> H[CheckListFlowRoute];
|
||||
E -- Unauthenticated/Error --> I[AuthFlowRoute];
|
||||
|
||||
F --> F1[ShiftsFlowRoute];
|
||||
F --> F2[EarningsFlowRoute];
|
||||
F --> F3[ProfileMainFlowRoute];
|
||||
|
||||
F1 --> F1a[ShiftsListMainRoute];
|
||||
F1a --> F1b[ShiftDetailsRoute];
|
||||
F1a --> F1c[QrScannerRoute];
|
||||
|
||||
F2 --> F2a[EarningsRoute];
|
||||
F2a --> F2b[EarningsHistoryRoute];
|
||||
|
||||
F3 --> F3a[ProfileMainRoute];
|
||||
F3a --> F3b[RoleKitFlowRoute];
|
||||
F3a --> F3c[CertificatesRoute];
|
||||
F3a --> F3d[ScheduleRoute];
|
||||
F3a --> F3e[WorkingAreaRoute];
|
||||
F3a --> F3f[LivePhotoRoute];
|
||||
F3a --> F3g[ProfileSettingsFlowRoute];
|
||||
F3a --> F3h[WagesFormsFlowRoute];
|
||||
F3a --> F3i[BankAccountFlowRoute];
|
||||
F3a --> F3j[BenefitsRoute];
|
||||
F3a --> F3k[SupportRoute];
|
||||
F3a --> F3l[FaqRoute];
|
||||
|
||||
F3g --> F3g1[ProfileSettingsMenuRoute];
|
||||
F3g1 --> F3g2[RoleRoute];
|
||||
F3g1 --> F3g3[PersonalInfoRoute];
|
||||
F3g1 --> F3g4[EmailVerificationRoute];
|
||||
F3g4 --> L1;
|
||||
F3g1 --> F3g5[AddressRoute];
|
||||
F3g1 --> F3g6[EmergencyContactsRoute];
|
||||
F3g1 --> F3g7[MobilityRoute];
|
||||
F3g1 --> F3g8[InclusiveRoute];
|
||||
|
||||
F3h --> F3h1[FormsListRoute];
|
||||
F3h1 --> F3h2[OfferLetterFormRoute];
|
||||
F3h1 --> F3h3[EddFormRoute];
|
||||
F3h1 --> F3h4[INineFormRoute];
|
||||
F3h1 --> F3h5[WFourFormRoute];
|
||||
F3h2 --> F3h6[FormSignRoute];
|
||||
F3h3 --> F3h6;
|
||||
F3h4 --> F3h6;
|
||||
F3h5 --> F3h6;
|
||||
F3h6 --> F3h7[SignedFormRoute];
|
||||
F3h6 --> F3h8[FormPreviewRoute];
|
||||
|
||||
F3i --> F3i1[BankAccountRoute];
|
||||
F3i1 --> F3i2[BankAccountEditRoute];
|
||||
|
||||
F3b --> F3b1[RolesKitListRoute];
|
||||
F3b1 --> F3b2[RoleKitRoute];
|
||||
|
||||
H --> H1[CheckListRoute];
|
||||
H1 --> H2[PersonalInfoRoute];
|
||||
H1 --> H3[EmailVerificationRoute];
|
||||
H3 --> L1;
|
||||
H1 --> H4[EmergencyContactsRoute];
|
||||
H1 --> H5[AddressRoute];
|
||||
H1 --> H6[WorkingAreaRoute];
|
||||
H1 --> H7[RoleRoute];
|
||||
H1 --> H8[CertificatesRoute];
|
||||
H1 --> H9[ScheduleRoute];
|
||||
H1 --> F3i;
|
||||
H1 --> F3h;
|
||||
H1 --> F3b;
|
||||
|
||||
I --> I1[WelcomeRoute];
|
||||
I1 --> I2[PhoneVerificationRoute];
|
||||
I2 --> I3[CodeVerificationRoute];
|
||||
I3 --> J{SingUpRedirectGuard};
|
||||
|
||||
J -- Prepare Profile --> K[SignupFlowRoute];
|
||||
J -- Authenticated --> F;
|
||||
J -- Admin Validation --> G;
|
||||
J -- Unauthenticated/Error --> I;
|
||||
|
||||
K --> K1[PersonalInfoRoute];
|
||||
K1 --> K2[EmailVerificationRoute];
|
||||
K2 --> K3[EmergencyContactsRoute];
|
||||
K2 --> L1;
|
||||
K3 --> K4[MobilityRoute];
|
||||
K4 --> K5[InclusiveRoute];
|
||||
K5 --> K6[AddressRoute];
|
||||
K6 --> K7[WorkingAreaRoute];
|
||||
K7 --> K8[RoleRoute];
|
||||
|
||||
subgraph PhoneReLoginFlow
|
||||
L1[PhoneReLoginFlowRoute]
|
||||
L1 --> L2[CodeVerificationRoute]
|
||||
end
|
||||
|
||||
subgraph CheckListFlow
|
||||
H
|
||||
end
|
||||
|
||||
subgraph AuthFlow
|
||||
I
|
||||
end
|
||||
|
||||
subgraph SignUpFlow
|
||||
K
|
||||
end
|
||||
|
||||
subgraph HomeFlow
|
||||
F
|
||||
end
|
||||
@@ -0,0 +1,85 @@
|
||||
flowchart TD
|
||||
subgraph AppInitialization
|
||||
A[Start App] --> B{Check Auth Status};
|
||||
B -- Authenticated --> C[Go to Home];
|
||||
B -- Unauthenticated --> D[Go to Auth];
|
||||
B -- Admin Validation --> E[Go to Waiting Validation];
|
||||
B -- Prepare Profile --> F[Go to Checklist];
|
||||
end
|
||||
|
||||
subgraph UserAuthentication
|
||||
D --> G[Welcome Screen];
|
||||
G --> H{Select Sign In/Up};
|
||||
H -- Sign In --> I[Sign In With Phone];
|
||||
I --> J[Verify Phone Code];
|
||||
J -- Success --> C;
|
||||
H -- Sign Up --> K[Go to User Onboarding];
|
||||
end
|
||||
|
||||
subgraph UserOnboarding
|
||||
K --> L[Collect Personal Info];
|
||||
L --> M[Verify Email];
|
||||
M --> N[Add Emergency Contacts];
|
||||
N --> O[Specify Mobility];
|
||||
O --> P[Provide Inclusivity Info];
|
||||
P --> Q[Enter Address];
|
||||
Q --> R[Define Working Area];
|
||||
R --> S[Select Role];
|
||||
S -- Success --> F;
|
||||
end
|
||||
|
||||
subgraph ProfileCompletion
|
||||
F --> T[View Checklist];
|
||||
T --> U[Complete Personal Info];
|
||||
T --> V[Complete Email Verification];
|
||||
T --> W[Complete Emergency Contacts];
|
||||
T --> X[Manage Certificates];
|
||||
T --> Y[Set Schedule];
|
||||
T --> Z[Manage Bank Account];
|
||||
T --> AA[Fill Out Wage Forms];
|
||||
T --> AB[Manage Role Kit];
|
||||
AB -- All Complete --> C;
|
||||
end
|
||||
|
||||
subgraph MainApp
|
||||
C --> AC[Home Screen];
|
||||
AC --> AD{Navigate};
|
||||
AD -- Shifts --> AE[Shift Management];
|
||||
AD -- Earnings --> AF[Earnings Management];
|
||||
AD -- Profile --> AG[Profile Management];
|
||||
end
|
||||
|
||||
subgraph ShiftManagement
|
||||
AE --> AH[View Shifts];
|
||||
AH --> AI[View Shift Details];
|
||||
AH --> AJ[Clock In/Out via QR];
|
||||
end
|
||||
|
||||
subgraph EarningsManagement
|
||||
AF --> AK[View Current Earnings];
|
||||
AK --> AL[View Earnings History];
|
||||
end
|
||||
|
||||
subgraph ProfileManagement
|
||||
AG --> AM[View Profile];
|
||||
AM --> AN[Manage Role Kit];
|
||||
AM --> AO[Manage Certificates];
|
||||
AM --> AP[Manage Schedule];
|
||||
AM --> AQ[Manage Working Area];
|
||||
AM --> AR[Update Live Photo];
|
||||
AM --> AS[Manage Profile Settings];
|
||||
AS --> AT[Update Personal Info];
|
||||
AS --> AU[Update Email];
|
||||
AU --> AV[Re-login with Phone];
|
||||
AS --> AW[Update Address];
|
||||
AM --> AX[Manage Wage Forms];
|
||||
AM --> AY[Manage Bank Account];
|
||||
AM --> AZ[View Benefits];
|
||||
AM --> BA[Access Support];
|
||||
BA --> BB[View FAQs];
|
||||
BA --> BC[Contact Support];
|
||||
end
|
||||
|
||||
subgraph QRScanning
|
||||
AJ --> BD[Scan QR Code];
|
||||
end
|
||||
@@ -0,0 +1,39 @@
|
||||
graph TD
|
||||
subgraph User Authentication
|
||||
direction LR
|
||||
UA1[Flutter App] -->|Phone Number| UA2[Firebase Auth];
|
||||
UA2 -->|Verification Code| UA1;
|
||||
UA1 -->|Verification Code| UA2;
|
||||
UA2 -->|Auth Token| UA1;
|
||||
UA1 -->|Auth Token| UA3[GraphQL Server];
|
||||
UA3 -->|User Data| UA1;
|
||||
end
|
||||
|
||||
subgraph User Onboarding
|
||||
direction LR
|
||||
UO1[Flutter App] -->|Personal Info| UO2[GraphQL Server];
|
||||
UO2 -->|update_staff_personal_info| UO3[Firebase Firestore];
|
||||
UO2 -->|User Data| UO1;
|
||||
end
|
||||
|
||||
subgraph Shift Management
|
||||
direction LR
|
||||
SM1[Flutter App] -->|Get Shifts| SM2[GraphQL Server];
|
||||
SM2 -->|getShifts| SM3[Firebase Firestore];
|
||||
SM3 -->|Shift Data| SM2;
|
||||
SM2 -->|Shift Data| SM1;
|
||||
|
||||
SM1 -->|Accept Shift| SM2;
|
||||
SM2 -->|accept_shift| SM3;
|
||||
SM3 -->|Updated Shift| SM2;
|
||||
SM2 -->|Updated Shift| SM1;
|
||||
end
|
||||
|
||||
subgraph Profile Update with Avatar
|
||||
direction LR
|
||||
PU1[Flutter App] -->|Image| PU2[Firebase Storage];
|
||||
PU2 -->|Image URL| PU1;
|
||||
PU1 -->|Image URL & Personal Info| PU3[GraphQL Server];
|
||||
PU3 -->|update_staff_personal_info & upload_staff_avatar| PU4[Firebase Firestore];
|
||||
PU3 -->|User Data| PU1;
|
||||
end
|
||||
Reference in New Issue
Block a user