@voiceflow/voiceflow-types
Version:
Voiceflow 'voiceflow' project types
608 lines (607 loc) • 20.3 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.SlotTypes = exports.SlotType = void 0;
/* eslint-disable sonarjs/no-duplicate-string */
const base_1 = require("./base");
var SlotType;
(function (SlotType) {
SlotType["CUSTOM"] = "VF.CUSTOM";
SlotType["AGE"] = "VF.AGE";
SlotType["CURRENCY"] = "VF.CURRENCY";
SlotType["DATETIME"] = "VF.DATETIME";
SlotType["DIMENSION"] = "VF.DIMENSION";
SlotType["EMAIL"] = "VF.EMAIL";
SlotType["GEOGRAPHY"] = "VF.GEOGRAPHY";
SlotType["KEY_PHRASE"] = "VF.KEY_PHRASE";
SlotType["NAME"] = "VF.NAME";
SlotType["NATOAPCO"] = "VF.NATOAPCO";
SlotType["NUMBER"] = "VF.NUMBER";
SlotType["ORDINAL"] = "VF.ORDINAL";
SlotType["PERCENTAGE"] = "VF.PERCENTAGE";
SlotType["PHONENUMBER"] = "VF.PHONENUMBER";
SlotType["TEMPERATURE"] = "VF.TEMPERATURE";
SlotType["URL"] = "VF.URL";
})(SlotType || (exports.SlotType = SlotType = {}));
const EMAIL = {
name: SlotType.EMAIL,
label: 'Email',
values: [
'user@voiceflow.com',
'professor@utoronto.edu',
'person_name@gmail.com',
'username123.signature@hotmail.com',
'researcher@charity.org',
],
regex: '^[\\w-.]+@([\\w-]+\\.)+[\\w-]{2,4}$',
};
const PHONENUMBER = {
name: SlotType.PHONENUMBER,
label: 'Phone Number',
values: [
'1 (800) 642-7676',
'123-456-7890',
'647 126 3928',
'360 392-1293',
'906-459-2349',
'2018073710',
'4791945491',
],
};
const NUMBER = (label) => ({
name: SlotType.NUMBER,
label,
values: ['-43', '0', '35.5', '8', '520', '23599', '325', '15', '84730909029', '6947'],
});
const PERCENTAGE = (label) => ({
name: SlotType.PERCENTAGE,
label,
values: ['3 1/2', '2%', '5 %'],
});
const ORDINAL = (label) => ({
name: SlotType.ORDINAL,
label,
values: ['first', 'second', 'third', 'next', 'last', 'previous'],
});
const URL = (label) => ({
name: SlotType.URL,
label,
values: ['https://www.luis.ai', 'www.google.ca', 'voiceflow.com', 'dev.voiceflow.com', 'http://www.something.io'],
});
const KEY_PHRASE = (label) => ({
name: SlotType.KEY_PHRASE,
label,
values: ['educational requirements', 'development', 'food', 'wonderful staff', 'extravagant'],
});
exports.SlotTypes = {
[base_1.Language.EN]: [
{
name: SlotType.NAME,
label: 'Name',
values: [
'john',
'james',
'robert',
'michael',
'william',
'david',
'tyler',
'roy',
'andrew',
'richard',
'thomas',
'daniel',
'anthony',
'mary',
'jennifer',
'emily',
'susan',
'valerie',
'amanda',
'sam',
],
},
{
name: SlotType.GEOGRAPHY,
label: 'Geography',
values: ['the sphinx', 'gizah', 'egypt', 'africa', 'texas'],
},
EMAIL,
PHONENUMBER,
NUMBER('Number'),
PERCENTAGE('Percentage'),
ORDINAL('Ordinal'),
URL('URL'),
KEY_PHRASE('Key Phrase'),
{
name: SlotType.NATOAPCO,
label: 'NATO/APCO',
values: [],
list: [
{ canonicalForm: 'Alfa', list: ['Adam', 'Alpha'] },
{ canonicalForm: 'Bravo', list: ['Boy', 'Baker'] },
{ canonicalForm: 'Charlie', list: ['Charles'] },
{ canonicalForm: 'Delta', list: ['David'] },
{ canonicalForm: 'Echo', list: ['Edward', 'Easy'] },
{ canonicalForm: 'Foxtrot', list: ['Frank'] },
{ canonicalForm: 'Golf', list: ['George'] },
{ canonicalForm: 'Hotel', list: ['Henry'] },
{ canonicalForm: 'India', list: ['Ida'] },
{ canonicalForm: 'Juliett', list: ['John'] },
{ canonicalForm: 'Kilo', list: ['King'] },
{ canonicalForm: 'Lima', list: ['Lincoln'] },
{ canonicalForm: 'Mike', list: ['Mary'] },
{ canonicalForm: 'November', list: ['Nora'] },
{ canonicalForm: 'Oscar', list: ['Ocean'] },
{ canonicalForm: 'Papa', list: ['Paul'] },
{ canonicalForm: 'Quebec', list: ['Queen'] },
{ canonicalForm: 'Romeo', list: ['Robert'] },
{ canonicalForm: 'Sierra', list: ['Sam'] },
{ canonicalForm: 'Tango', list: ['Tom'] },
{ canonicalForm: 'Uniform', list: ['Union'] },
{ canonicalForm: 'Victor', list: [] },
{ canonicalForm: 'Whiskey', list: ['William'] },
{ canonicalForm: 'X-ray', list: ['Xray'] },
{ canonicalForm: 'Yankee', list: ['Young', 'Yellow'] },
{ canonicalForm: 'Zulu', list: ['Zebra'] },
{ canonicalForm: '0', list: ['Zero', 'Nadazero'] },
{ canonicalForm: '1', list: ['One', 'Wun', 'Unaone'] },
{ canonicalForm: '2', list: ['Two', 'Too', 'Bissotwo'] },
{ canonicalForm: '3', list: ['Three', 'Tree', 'Terrathree'] },
{ canonicalForm: '4', list: ['Four', 'Fower', 'Kartefour'] },
{ canonicalForm: '5', list: ['Five', 'Fife', 'Pantafive'] },
{ canonicalForm: '6', list: ['Six', 'Soxisix'] },
{ canonicalForm: '7', list: ['Seven', 'Setteseven'] },
{ canonicalForm: '8', list: ['Eight', 'Oktoeight'] },
{ canonicalForm: '9', list: ['Nine', 'Niner', 'Novenine'] },
{ canonicalForm: '00', list: ['Hundred'] },
{ canonicalForm: '000', list: ['Thousand'] },
{ canonicalForm: '-', list: ['Dash', 'Hyphen'] },
{ canonicalForm: '.', list: ['Decimal', 'Point', 'Stop'] },
],
},
{
name: SlotType.AGE,
label: 'Age',
values: ['20 days old', 'nineteen years old', '4 weeks old', '8 months old', '45 years-old', 'one month old'],
},
{
name: SlotType.CURRENCY,
label: 'Currency',
values: [
'5 dollars',
'1 dollar',
'one dollar',
'$8',
'6 canadian dollars',
'seven pennies',
'9 pounds',
'15 pesos',
'Four para',
'87 ruples',
'thirty rupees',
'£12.34',
'34.2$',
],
},
{
name: SlotType.DATETIME,
label: 'Datetime',
values: [
'May 2nd',
'May 25th, 2025',
'Tuesday to Thursday',
'From 6pm to 7pm',
'6:30 pm to 7 pm',
'8am',
'8:30 pm',
'9 am',
'10:12 am',
],
},
{
name: SlotType.DIMENSION,
label: 'Dimension',
values: ['10 1/2 miles', '10.5 kilometers', '0.3 mm', '5 feet', '6 yards', '10m', '25 m/s'],
},
{
name: SlotType.TEMPERATURE,
label: 'Temperature',
values: ['30 degrees', '215 kelvin', '56 f', '33°f', '22 degrees celsius', '102 degs farenheit'],
},
],
[base_1.Language.DE]: [
EMAIL,
PHONENUMBER,
{
name: SlotType.AGE,
label: 'Alter',
values: ['7 Jahre alt', 'acht Mondate alt', '3 wochen alt', 'neun Tage alt', 'einen tag alt', '1 Jahr alt'],
},
NUMBER('Nummer'),
PERCENTAGE('Prozentsatz'),
ORDINAL('Ordinalzahl'),
URL('URL'),
KEY_PHRASE('Schlüsselsatz'),
{
name: SlotType.CURRENCY,
label: 'Währung',
values: ['7 $', '23 Dollar', 'dreißig USD', '87 yuan', '11 pfund', '55£', '£5.99', 'neunzehn Pesos'],
},
{
name: SlotType.DATETIME,
label: 'Datum (und Uhrzeit',
values: ['2. Mai', '25. Mai 2025', 'Dienstag bis Donnerstag', 'Von 18 bis 19 Uhr', '8 Uhr morgens', '20:30 Uhr'],
},
{
name: SlotType.DIMENSION,
label: 'Dimension',
values: ['10 1/2 Meilen', '10,5 Kilometer', '0,3 mm', '5 Fuß', '6 Yards', '6m', '25 m/s'],
},
{
name: SlotType.TEMPERATURE,
label: 'Temperatur',
values: ['30 Grad', '215 Kelvin', '56 f', '33°f', '22 Grad Celsius', '102 Grad Fahrenheit'],
},
],
[base_1.Language.FR]: [
EMAIL,
PHONENUMBER,
{
name: SlotType.AGE,
label: 'Âge',
values: [
'3 ans',
'Trois ans',
"2 mois d'âge",
"six mois d'age",
'8 mois',
'huit mois',
'une semaine',
'1 semaine',
'3 semaines',
"sept semaines d'âge",
"9 semaines d'age",
'18 jours',
'quarante jours',
'un jour',
],
},
NUMBER('Nombre'),
PERCENTAGE('Pourcentage'),
ORDINAL('Nombre ordinal'),
URL('URL'),
KEY_PHRASE('Phrase clé'),
{
name: SlotType.CURRENCY,
label: 'Monnaie',
values: [
'un dollar',
'3 dollars',
'5$',
'£12.09',
'33 pence',
'Sept sou',
'6 livres',
'douze pesos',
'trois francs',
'7 dollars canadien',
],
},
{
name: SlotType.DATETIME,
label: "Date et l'Heure",
values: ['2 mai', '2 mai 2025', 'du mardi au jeudi', 'De 18h à 19h', '8h00', '20h30'],
},
{
name: SlotType.DIMENSION,
label: 'Dimension',
values: ['10 1/2 miles', '10,5 kilomètres', '0,3 mm', '5 pieds', '6 yards', '6m', '25 m/s'],
},
{
name: SlotType.TEMPERATURE,
label: 'Température',
values: ['30 degrés', '215 kelvin', '56 f', '33°f', '22 degrés Celsius', '102 degs farenheit'],
},
],
[base_1.Language.PT]: [
EMAIL,
PHONENUMBER,
{
name: SlotType.AGE,
label: 'Idade',
values: [
'3 anos',
'3 anos de idade',
'1 ano',
'uma ano',
'6 meses',
'1 mes',
'um mês',
'7 semanas',
'uma semana',
'1 semana',
'quatro dias',
'15 dias',
'1 dia',
],
},
NUMBER('Número'),
PERCENTAGE('Porcentagem'),
ORDINAL('Número ordinal'),
URL('URL'),
KEY_PHRASE('Frase chave'),
{
name: SlotType.CURRENCY,
label: 'Monnaie',
values: ['1 dólar', 'quatro pesos', '€6.01', '5€', '11.02 francos'],
},
{
name: SlotType.DATETIME,
label: 'Data e Hora',
values: ['2 de maio', '2 de maio de 2015', 'Terça a quinta', 'Das 18h às 19h', '8 horas da manhã', '20:30'],
},
{
name: SlotType.DIMENSION,
label: 'Dimensão',
values: ['10 1/2 milhas ', '10,5 quilômetros', '0,3 mm', '5 pés', '6 jardas', '6m', '25 m/s'],
},
{
name: SlotType.TEMPERATURE,
label: 'Temperatura',
values: ['30 graus', ' 215 Kelvin', '56 f', '33 ° f', '22 graus Celsius', '102 degs farenheit'],
},
],
[base_1.Language.ES]: [
EMAIL,
PHONENUMBER,
{
name: SlotType.AGE,
label: 'Edad',
values: [
'3 años',
'1 año',
'un año',
'6 meses',
'6 meses de edad',
'1 mes',
'um mês',
'7 semanas',
'un semana',
'1 semana',
'quatro dias',
'15 días',
'1 dia de edad',
'un día',
],
},
NUMBER('Número'),
PERCENTAGE('Porcentaje'),
ORDINAL('Número ordinal'),
URL('URL'),
KEY_PHRASE('Frase clave'),
{
name: SlotType.CURRENCY,
label: 'Moneda',
values: [
'5 dólares',
'1 peso',
'3.2 libras',
'Tres rublos',
'1 peso dominicano',
'4.5 dólares canadienses',
'3.5€',
'€9',
'tres euros',
],
},
{
name: SlotType.DATETIME,
label: 'Fecha y Hora',
values: ['2 de Mayo', '2 de mayo de 2015', 'Martes a jueves', 'De 18h a 19h', '8:00AM', '8:30 PM'],
},
{
name: SlotType.DIMENSION,
label: 'Dimensión',
values: ['10 1/2 millas', '10.5 kilómetros', '0,3 mm', '5 pies', '6 yardas', '10 m', '25 m/s'],
},
{
name: SlotType.TEMPERATURE,
label: 'Temperatura',
values: ['30 grados', '215 kelvin', '56 f', '33°f', '22 grados celsius', '102 grados farenheit'],
},
],
[base_1.Language.ZH]: [
EMAIL,
PHONENUMBER,
{
name: SlotType.AGE,
label: '岁',
values: ['一岁', '3岁', '5周岁', '7个月大', '9月大', '8周大', '21天大', '1天大'],
},
NUMBER('数字'),
PERCENTAGE('百分比'),
ORDINAL('序数词'),
URL('网址'),
{
name: SlotType.CURRENCY,
label: '貨幣',
values: ['5 欧元', '1比索', '9便士', '八便士', '8 美元', '8加元', '12 人民币'],
},
{
name: SlotType.DATETIME,
label: '日期和时间',
values: ['May 2nd', '2015 年 5 月 2 日', '周二至周四', '从下午 6 点到晚上 7 点', '早上八点', '晚上 8:30'],
},
{
name: SlotType.DIMENSION,
label: '尺寸',
values: ['10 1/2 英里', '10.5 公里', '0.3 毫米', '5 英尺', '6 码', '7毫米'],
},
{
name: SlotType.TEMPERATURE,
label: '温度',
values: ['30 度', '215 开尔文', '56 f', '33°f', '22 摄氏度', '华氏 102 度', '34.1摄氏度'],
},
],
[base_1.Language.JA]: [
EMAIL,
PHONENUMBER,
{
name: SlotType.AGE,
label: '歳',
values: ['1歳', '一歳', '2歳', '4ヶ月', '3週間', '6週', '5日間', '9日齢', '10日大'],
},
NUMBER('数'),
PERCENTAGE('パーセンテージ'),
ORDINAL('序数'),
URL('URL'),
KEY_PHRASE('キーフレーズ'),
{
name: SlotType.CURRENCY,
label: '通貨',
values: ['88ドル', '123人民元', '7ペンス', '87ペソ', '5カナダ・ドル', '44シリング'],
},
{
name: SlotType.DIMENSION,
label: '寸法',
values: ['101/2マイル', '10.5キロメートル', '0.3 mm', '5フィート', '6ヤード'],
},
{
name: SlotType.TEMPERATURE,
label: '温度',
values: ['30度', '215ケルビン', '56 f', '33°f', '22℃', '102度華氏'],
},
],
[base_1.Language.NL]: [
EMAIL,
PHONENUMBER,
{
name: SlotType.AGE,
label: 'Leeftijd',
values: [
'twintig jaar oud',
'19 dagen old',
'negentien dagen oud',
'4 week oud',
'8 maand oud',
'1 jaar oud',
'3 jaar',
'4 levensjaren',
'30 jarige leeftijd',
'45-jarige leeftijd',
'2-jarige',
'5 jarige',
'6 maand oud',
'twee maanden',
'vier weken oud',
'5 week',
'zeven weken',
'6 dag oud',
'7 dag',
'negen dagen',
],
},
NUMBER('Aantal'),
PERCENTAGE('Percentage'),
ORDINAL('Rangtelwoord'),
URL('URL'),
KEY_PHRASE('Sleutelwoord'),
{
name: SlotType.CURRENCY,
label: 'Valuta',
values: [
'8 euro',
'negen cent',
'4 japanse yen',
'vier pesos',
'11 centen',
'33 pence',
'5 dollar',
'0.12 bitcoin',
'drieëntwintig pond',
],
},
{
name: SlotType.DIMENSION,
label: 'Afmeting',
values: ['10 1/2 mijl', '10,5 kilometer', '0,3 mm', '5 voet', '6 yards', '7m', '25 m/s'],
},
{
name: SlotType.TEMPERATURE,
label: 'Temperatuur',
values: ['30 graden', '215 kelvin', '56 f', '33°f', '22 graden Celsius', '102 graden farenheit'],
},
],
[base_1.Language.IT]: [
EMAIL,
PHONENUMBER,
{
name: SlotType.AGE,
label: 'Età',
values: [
'8 anni di età',
'sette anni',
'un anno di età',
"11 anni d'età",
"1 anno d'età",
"di nove anni d'età",
'4 anni',
'1 anno',
'8 mesi di età',
'sette mesi',
'un mese di età',
"11 mesi d'età",
"1 mese d'età",
"di nove mesi d'età",
'1 mese',
'8 settimane di età',
'sette settimane',
'un settimana di età',
"11 settimane d'età",
"1 settimana d'età",
"di nove settimane d'età",
'1 settimana',
'8 giorni di età',
'sette giorni',
'un giorno di età',
"11 giorni d'età",
"1 giorno d'età",
"di nove giorni d'età",
'1 giorno',
],
},
NUMBER('Numero'),
PERCENTAGE('Percentuale'),
ORDINAL('Numero ordinale'),
URL('URL'),
KEY_PHRASE('Frase chiave'),
{
name: SlotType.CURRENCY,
label: 'Valuta',
values: [
'5 dollari',
'9.10 dollari canadesi',
'6 sterline',
'$4.1',
'quattro pence',
'24 pesos',
'84 £',
'£99.12',
],
},
{
name: SlotType.DIMENSION,
label: 'Dimensione',
values: ['10 1/2 miglia', '10,5 chilometri', '0,3 mm', '5 piedi', '6 iarde', '8m', '25 m/s'],
},
{
name: SlotType.TEMPERATURE,
label: 'Temperatura',
values: ['30 gradi', '215 kelvin', '56 f', '33°f', '22 gradi Celsius', '102 gradi fanheit'],
},
],
[base_1.Language.KO]: [EMAIL, PHONENUMBER, URL('URL'), KEY_PHRASE('핵심 문구')],
// Mexico Spanish has much less built in entities than Spain Spanish.
// There is a case in getSlotTypes in realtime-sdk for this
[base_1.Locale.ES_MX]: [EMAIL, NUMBER('Número'), URL('URL'), KEY_PHRASE('Frase clave')],
};