mirror of
				https://github.com/lingble/chatwoot.git
				synced 2025-11-03 20:48:07 +00:00 
			
		
		
		
	# Pull Request Template ## Description With these fixes, I could improve some translations in portuguese, and also I added some improvements to make some drowpdown values, that were not translatable into translatable strings, into the Automations, Macros and Custom Attributes page. I also fixed some typos. Here are the main improvements. - ~Fixed typo in portuguese into `Reports > Agents` page:~ ~Before:  After: ~ - Added the possibility to make the `Priority` and `Message types` translatables in other languages, into Macros and Automations page. Also added the same feature for Custom attributes page at `applies to` and `type` fields: Before:     After:     - ~Improve Bots page. In the Brazilian portuguese is very common and widely used bots to refer to chatbots, using `robô` as a direct translations sounds weird, `robô` is used more often when we are talking about robots, not chatbots. Before:  After: ~ - Added multiselect both `no options` and `Select` placeholder translatable strings: Before:   After:  - Added `.pnpm-store` to `.gitignore`, when I'm using docker, the pnpm always creates this folder into my root directory, so I imagine the same could happens with others, so I fixed it. ## Type of change Please delete options that are not relevant. - [x] Bug fix (non-breaking change which fixes an issue) - [x] New feature (non-breaking change which adds functionality) - [ ] Breaking change (fix or feature that would cause existing functionality not to work as expected) - [ ] This change requires a documentation update ## How Has This Been Tested? I've added some translations for my language (brazilian portuguese), so i just switched the languages between the original in EN to PT_BR. ## 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 - [ ] New and existing unit tests pass locally with my changes - [x] Any dependent changes have been merged and published in downstream modules --------- Co-authored-by: Sivin Varghese <64252451+iamsivin@users.noreply.github.com> Co-authored-by: iamsivin <iamsivin@gmail.com> Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com>
		
			
				
	
	
		
			50 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			50 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
import { computed } from 'vue';
 | 
						|
import { useI18n } from 'vue-i18n';
 | 
						|
import { useStoreGetters } from 'dashboard/composables/store';
 | 
						|
import { PRIORITY_CONDITION_VALUES } from 'dashboard/constants/automation';
 | 
						|
 | 
						|
/**
 | 
						|
 * Composable for handling macro-related functionality
 | 
						|
 * @returns {Object} An object containing the getMacroDropdownValues function
 | 
						|
 */
 | 
						|
export const useMacros = () => {
 | 
						|
  const { t } = useI18n();
 | 
						|
  const getters = useStoreGetters();
 | 
						|
 | 
						|
  const labels = computed(() => getters['labels/getLabels'].value);
 | 
						|
  const teams = computed(() => getters['teams/getTeams'].value);
 | 
						|
  const agents = computed(() => getters['agents/getAgents'].value);
 | 
						|
 | 
						|
  /**
 | 
						|
   * Get dropdown values based on the specified type
 | 
						|
   * @param {string} type - The type of dropdown values to retrieve
 | 
						|
   * @returns {Array} An array of dropdown values
 | 
						|
   */
 | 
						|
  const getMacroDropdownValues = type => {
 | 
						|
    switch (type) {
 | 
						|
      case 'assign_team':
 | 
						|
      case 'send_email_to_team':
 | 
						|
        return teams.value;
 | 
						|
      case 'assign_agent':
 | 
						|
        return [{ id: 'self', name: 'Self' }, ...agents.value];
 | 
						|
      case 'add_label':
 | 
						|
      case 'remove_label':
 | 
						|
        return labels.value.map(i => ({
 | 
						|
          id: i.title,
 | 
						|
          name: i.title,
 | 
						|
        }));
 | 
						|
      case 'change_priority':
 | 
						|
        return PRIORITY_CONDITION_VALUES.map(item => ({
 | 
						|
          id: item.id,
 | 
						|
          name: t(`MACROS.PRIORITY_TYPES.${item.i18nKey}`),
 | 
						|
        }));
 | 
						|
      default:
 | 
						|
        return [];
 | 
						|
    }
 | 
						|
  };
 | 
						|
 | 
						|
  return {
 | 
						|
    getMacroDropdownValues,
 | 
						|
  };
 | 
						|
};
 |