%%{init: {"theme": "base", "themeVariables": {"primaryColor": "#fabd2f", "primaryTextColor": "#282828", "primaryBorderColor": "#b57614", "lineColor": "#7c6f64", "secondaryColor": "#83a598", "tertiaryColor": "#b8bb26", "background": "#fbf1c7", "mainBkg": "#ebdbb2", "fontFamily": "Tahoma, sans-serif"}}}%% flowchart LR subgraph Era1["ยุค Bundle เดียว / Single Bundle"] A["โหลดทุกอย่างตอนเริ่มLarge Initial Bundle"] end subgraph Era2["ยุค Feature Module / Modular App"] B["Feature Moduleแยกตามฟีเจอร์"] C["Lazy Loadingโหลดเมื่อเข้า route"] end subgraph Era3["ยุค Protected Route / Guarded App"] D["CanActivateตรวจสิทธิ์"] E["Resolverโหลดข้อมูลก่อนเข้า"] end A --> B --> C --> D --> E
%%{init: {"theme": "base", "themeVariables": {"primaryColor": "#fabd2f", "primaryTextColor": "#282828", "primaryBorderColor": "#b57614", "lineColor": "#7c6f64", "secondaryColor": "#83a598", "tertiaryColor": "#b8bb26", "background": "#fbf1c7", "mainBkg": "#ebdbb2", "fontFamily": "Tahoma, sans-serif"}}}%% flowchart TD A["ผู้ใช้เข้า /adminNavigate"] --> B["CanActivate Guardตรวจสิทธิ์"] B -->|ผ่าน / Allow| C["Lazy Load Moduleโหลด AdminModule"] B -->|ไม่ผ่าน / Deny| D["Redirect /loginส่งไปหน้า Login"] C --> E["Resolverโหลดข้อมูล"] E --> F["Admin Componentแสดงหน้า"]