new translations types
This commit is contained in:
		
							
								
								
									
										2
									
								
								dist/mailgo.dark.min.js.map
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								dist/mailgo.dark.min.js.map
									
									
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										2
									
								
								dist/mailgo.min.js.map
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								dist/mailgo.min.js.map
									
									
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										27
									
								
								mailgo.d.ts
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										27
									
								
								mailgo.d.ts
									
									
									
									
										vendored
									
									
								
							@@ -10,5 +10,32 @@ declare module "mailgo" {
 | 
				
			|||||||
    forceLang?: boolean;
 | 
					    forceLang?: boolean;
 | 
				
			||||||
  };
 | 
					  };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  export type MailgoTranslation = {
 | 
				
			||||||
 | 
					    open_in?: string;
 | 
				
			||||||
 | 
					    cc_?: string;
 | 
				
			||||||
 | 
					    bcc_?: string;
 | 
				
			||||||
 | 
					    subject_?: string;
 | 
				
			||||||
 | 
					    body_?: string;
 | 
				
			||||||
 | 
					    gmail?: string;
 | 
				
			||||||
 | 
					    outlook?: string;
 | 
				
			||||||
 | 
					    telegram?: string;
 | 
				
			||||||
 | 
					    whatsapp?: string;
 | 
				
			||||||
 | 
					    skype?: string;
 | 
				
			||||||
 | 
					    call?: string;
 | 
				
			||||||
 | 
					    open?: string;
 | 
				
			||||||
 | 
					    _default?: string;
 | 
				
			||||||
 | 
					    _as_default?: string;
 | 
				
			||||||
 | 
					    copy?: string;
 | 
				
			||||||
 | 
					  };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  export type MailgoTranslations = {
 | 
				
			||||||
 | 
					    [language: string]: MailgoTranslation;
 | 
				
			||||||
 | 
					  };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  export type MailgoI18n = {
 | 
				
			||||||
 | 
					    languages: string[];
 | 
				
			||||||
 | 
					    translations: MailgoTranslations;
 | 
				
			||||||
 | 
					  };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  export default function mailgo(mailgoConfig?: MailgoConfig): void;
 | 
					  export default function mailgo(mailgoConfig?: MailgoConfig): void;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,13 +1,18 @@
 | 
				
			|||||||
import { MailgoConfig } from "mailgo";
 | 
					import {
 | 
				
			||||||
 | 
					  MailgoConfig,
 | 
				
			||||||
 | 
					  MailgoTranslations,
 | 
				
			||||||
 | 
					  MailgoTranslation,
 | 
				
			||||||
 | 
					  MailgoI18n,
 | 
				
			||||||
 | 
					} from "mailgo";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// i18n for mailgo
 | 
					// i18n for mailgo
 | 
				
			||||||
const i18n = require("../i18n/i18n.json");
 | 
					const i18n: MailgoI18n = require("../i18n/i18n.json");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// mailgo scss
 | 
					// mailgo scss
 | 
				
			||||||
const mailgoCSS = require("./mailgo.scss").toString();
 | 
					const mailgoCSS: string = require("./mailgo.scss").toString();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// default lang
 | 
					// default lang
 | 
				
			||||||
const DEFAULT_LANG = "en";
 | 
					const DEFAULT_LANG: string = "en";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// links
 | 
					// links
 | 
				
			||||||
const MAILTO: string = "mailto:";
 | 
					const MAILTO: string = "mailto:";
 | 
				
			||||||
@@ -71,7 +76,7 @@ const mailgoInit = (mailgoConfig?: MailgoConfig): void => {
 | 
				
			|||||||
  let lang = DEFAULT_LANG;
 | 
					  let lang = DEFAULT_LANG;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  // translations
 | 
					  // translations
 | 
				
			||||||
  let translations: any = i18n.translations;
 | 
					  let translations: MailgoTranslations = i18n.translations;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  // if a default language is defined use it
 | 
					  // if a default language is defined use it
 | 
				
			||||||
  if (mailgoConfig?.lang && i18n.languages.includes(mailgoConfig.lang)) {
 | 
					  if (mailgoConfig?.lang && i18n.languages.includes(mailgoConfig.lang)) {
 | 
				
			||||||
@@ -81,7 +86,7 @@ const mailgoInit = (mailgoConfig?: MailgoConfig): void => {
 | 
				
			|||||||
  // if is defined <html lang=""> use it!
 | 
					  // if is defined <html lang=""> use it!
 | 
				
			||||||
  if (!mailgoConfig?.forceLang) {
 | 
					  if (!mailgoConfig?.forceLang) {
 | 
				
			||||||
    // keep the lang from html
 | 
					    // keep the lang from html
 | 
				
			||||||
    let htmlLang = document.documentElement.lang;
 | 
					    let htmlLang: string = document.documentElement.lang;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    // if there are translations...
 | 
					    // if there are translations...
 | 
				
			||||||
    if (i18n.languages.includes(htmlLang)) {
 | 
					    if (i18n.languages.includes(htmlLang)) {
 | 
				
			||||||
@@ -90,8 +95,8 @@ const mailgoInit = (mailgoConfig?: MailgoConfig): void => {
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  // strings
 | 
					  // strings
 | 
				
			||||||
  let defaultStrings: any = translations[DEFAULT_LANG];
 | 
					  let defaultStrings: MailgoTranslation = translations[DEFAULT_LANG];
 | 
				
			||||||
  let strings: any = translations[lang];
 | 
					  let strings: MailgoTranslation = translations[lang];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  // mailgo mail
 | 
					  // mailgo mail
 | 
				
			||||||
  {
 | 
					  {
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user