mirror of
				https://github.com/lingble/chatwoot.git
				synced 2025-10-30 18:47:51 +00:00 
			
		
		
		
	 b46c07519a
			
		
	
	b46c07519a
	
	
	
		
			
			# Pull Request Template ## Description This PR adds the `AssignmentCard` component with a story for the agent management UI. ## Type of change - [x] New feature (non-breaking change which adds functionality) ## How Has This Been Tested? ### Screenshot <img width="1061" height="357" alt="image" src="https://github.com/user-attachments/assets/e5548325-294a-48f8-8c7f-0a0c9272bf76" /> <img width="1061" height="357" alt="image" src="https://github.com/user-attachments/assets/cfb76bf4-bddc-4ec4-a27d-27be3efb0e8f" /> <img width="1061" height="357" alt="image" src="https://github.com/user-attachments/assets/6efc6617-4ce5-42df-b239-c296bbd0acc5" /> ## Checklist: - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my code - [ ] I have commented on my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] Any dependent changes have been merged and published in downstream modules
		
			
				
	
	
		
			64 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Vue
		
	
	
	
	
	
			
		
		
	
	
			64 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Vue
		
	
	
	
	
	
| <script setup>
 | |
| import AssignmentCard from './AssignmentCard.vue';
 | |
| 
 | |
| const agentAssignments = [
 | |
|   {
 | |
|     id: 1,
 | |
|     title: 'Assignment policy',
 | |
|     description: 'Manage how conversations get assigned in inboxes.',
 | |
|     features: [
 | |
|       {
 | |
|         icon: 'i-lucide-circle-fading-arrow-up',
 | |
|         label: 'Assign by conversations evenly or by available capacity',
 | |
|       },
 | |
|       {
 | |
|         icon: 'i-lucide-scale',
 | |
|         label: 'Add fair distribution rules to avoid overloading any agent',
 | |
|       },
 | |
|       {
 | |
|         icon: 'i-lucide-inbox',
 | |
|         label: 'Add inboxes to a policy - one policy per inbox',
 | |
|       },
 | |
|     ],
 | |
|   },
 | |
|   {
 | |
|     id: 2,
 | |
|     title: 'Agent capacity policy',
 | |
|     description: 'Manage workload for agents.',
 | |
|     features: [
 | |
|       {
 | |
|         icon: 'i-lucide-glass-water',
 | |
|         label: 'Define maximum conversations per inbox',
 | |
|       },
 | |
|       {
 | |
|         icon: 'i-lucide-circle-minus',
 | |
|         label: 'Create exceptions based on labels and time',
 | |
|       },
 | |
|       {
 | |
|         icon: 'i-lucide-users-round',
 | |
|         label: 'Add agents to a policy - one policy per agent',
 | |
|       },
 | |
|     ],
 | |
|   },
 | |
| ];
 | |
| </script>
 | |
| 
 | |
| <template>
 | |
|   <Story
 | |
|     title="Components/AgentManagementPolicy/AssignmentCard"
 | |
|     :layout="{ type: 'grid', width: '1000px' }"
 | |
|   >
 | |
|     <Variant title="Assignment Card">
 | |
|       <div class="px-4 py-4 bg-n-background flex gap-6 justify-between">
 | |
|         <AssignmentCard
 | |
|           v-for="(item, index) in agentAssignments"
 | |
|           :key="index"
 | |
|           :title="item.title"
 | |
|           :description="item.description"
 | |
|           :features="item.features"
 | |
|         />
 | |
|       </div>
 | |
|     </Variant>
 | |
|   </Story>
 | |
| </template>
 |