genassist-chat-react 1.0.15 → 1.0.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,90 @@
1
+ {
2
+ "header": {
3
+ "subtitle": "Support"
4
+ },
5
+ "menu": {
6
+ "title": "Menu",
7
+ "resetConversation": "Réinitialiser la conversation",
8
+ "language": "Langue"
9
+ },
10
+ "buttons": {
11
+ "startConversation": "Démarrer la conversation",
12
+ "cancel": "Annuler",
13
+ "reset": "Réinitialiser",
14
+ "save": "Enregistrer",
15
+ "saveChanges": "Enregistrer les modifications",
16
+ "add": "Ajouter"
17
+ },
18
+ "input": {
19
+ "placeholder": "Posez une question"
20
+ },
21
+ "labels": {
22
+ "agent": "Agent",
23
+ "you": "Vous"
24
+ },
25
+ "dialog": {
26
+ "resetConversation": {
27
+ "title": "Réinitialiser la conversation",
28
+ "message": "Cela effacera l'historique de conversation actuel et démarrera une nouvelle conversation. Êtes-vous sûr ?"
29
+ }
30
+ },
31
+ "feedback": {
32
+ "thumbsUp": "Pouce vers le haut",
33
+ "thumbsDown": "Pouce vers le bas"
34
+ },
35
+ "thinking": {
36
+ "messages": [
37
+ "Réflexion…",
38
+ "Analyse de votre question…",
39
+ "Recherche d'informations…",
40
+ "Récupération d'informations pertinentes…",
41
+ "Rédaction de la réponse…",
42
+ "Vérification des détails…",
43
+ "Assemblage de tout…",
44
+ "Presque terminé…"
45
+ ]
46
+ },
47
+ "time": {
48
+ "justNow": "À l'instant",
49
+ "today": "Aujourd'hui",
50
+ "yesterday": "Hier"
51
+ },
52
+ "settings": {
53
+ "defaultDescription": "Support"
54
+ },
55
+ "metadata": {
56
+ "addParameter": "Ajouter un paramètre",
57
+ "editParameter": "Modifier le paramètre",
58
+ "defineKeyValue": "Définir des paramètres clé/valeur envoyés comme métadonnées du chat."
59
+ },
60
+ "configPanel": {
61
+ "appearance": "APPARENCE",
62
+ "settings": "PARAMÈTRES",
63
+ "metadata": "MÉTADONNÉES",
64
+ "primaryColor": "Couleur principale",
65
+ "secondaryColor": "Couleur secondaire",
66
+ "backgroundColor": "Couleur de fond",
67
+ "textColor": "Couleur du texte",
68
+ "fontSize": "Taille de police",
69
+ "fontFamily": "Famille de police",
70
+ "name": "Nom",
71
+ "description": "Description",
72
+ "small": "Petit (12px)",
73
+ "medium": "Moyen (15px)",
74
+ "large": "Grand (18px)",
75
+ "parameterName": "Nom du paramètre",
76
+ "type": "Type",
77
+ "required": "Requis",
78
+ "defaultValue": "Valeur par défaut",
79
+ "value": "Valeur",
80
+ "yes": "Oui",
81
+ "no": "Non",
82
+ "true": "Vrai",
83
+ "false": "Faux",
84
+ "string": "Chaîne",
85
+ "number": "Nombre",
86
+ "boolean": "Booléen",
87
+ "edit": "Modifier",
88
+ "remove": "Supprimer"
89
+ }
90
+ }
@@ -0,0 +1,90 @@
1
+ export interface Translations {
2
+ header: {
3
+ subtitle: string;
4
+ };
5
+ menu: {
6
+ title: string;
7
+ resetConversation: string;
8
+ language: string;
9
+ };
10
+ buttons: {
11
+ startConversation: string;
12
+ cancel: string;
13
+ reset: string;
14
+ save: string;
15
+ saveChanges: string;
16
+ add: string;
17
+ };
18
+ input: {
19
+ placeholder: string;
20
+ };
21
+ labels: {
22
+ agent: string;
23
+ you: string;
24
+ };
25
+ dialog: {
26
+ resetConversation: {
27
+ title: string;
28
+ message: string;
29
+ };
30
+ };
31
+ feedback: {
32
+ thumbsUp: string;
33
+ thumbsDown: string;
34
+ };
35
+ thinking: {
36
+ messages: string[];
37
+ };
38
+ time: {
39
+ justNow: string;
40
+ today: string;
41
+ yesterday: string;
42
+ };
43
+ settings: {
44
+ defaultDescription: string;
45
+ };
46
+ metadata: {
47
+ addParameter: string;
48
+ editParameter: string;
49
+ defineKeyValue: string;
50
+ };
51
+ }
52
+ export declare const defaultTranslations: Translations;
53
+ /**
54
+ * Get browser language code (e.g., 'en', 'es')
55
+ * Returns the primary language code without region
56
+ */
57
+ export declare function getBrowserLanguage(): string;
58
+ /**
59
+ * Get translation value by key path
60
+ * Supports nested keys like 'header.subtitle' or 'dialog.resetConversation.title'
61
+ */
62
+ export declare function getTranslation(key: string, translations: Translations, fallback?: string): string | string[];
63
+ /**
64
+ * Get a string translation (non-array)
65
+ */
66
+ export declare function getTranslationString(key: string, translations: Translations, fallback?: string): string;
67
+ /**
68
+ * Get an array translation
69
+ */
70
+ export declare function getTranslationArray(key: string, translations: Translations, fallback?: string[]): string[];
71
+ /**
72
+ * Resolve the language to use
73
+ * Priority: prop → browser → 'en'
74
+ */
75
+ export declare function resolveLanguage(languageProp?: string): string;
76
+ /**
77
+ * Merge custom translations with defaults
78
+ * Custom translations override defaults, but don't need to include all keys
79
+ */
80
+ export declare function mergeTranslations(custom?: Partial<Translations>, defaults?: Translations): Translations;
81
+ export declare const spanishTranslations: Partial<Translations>;
82
+ export declare const frenchTranslations: Partial<Translations>;
83
+ export declare const germanTranslations: Partial<Translations>;
84
+ export declare const italianTranslations: Partial<Translations>;
85
+ export declare const portugueseTranslations: Partial<Translations>;
86
+ export declare const translationsByLanguage: Record<string, Partial<Translations>>;
87
+ /**
88
+ * Get translations for a specific language
89
+ */
90
+ export declare function getTranslationsForLanguage(language: string): Translations;
@@ -0,0 +1,138 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ // Translation types and utilities
13
+ import defaultTranslationsData from './en.json';
14
+ import spanishTranslationsData from './es.json';
15
+ import frenchTranslationsData from './fr.json';
16
+ import germanTranslationsData from './de.json';
17
+ import italianTranslationsData from './it.json';
18
+ import portugueseTranslationsData from './pt.json';
19
+ // Default English translations loaded from JSON file
20
+ export var defaultTranslations = defaultTranslationsData;
21
+ /**
22
+ * Get browser language code (e.g., 'en', 'es')
23
+ * Returns the primary language code without region
24
+ */
25
+ export function getBrowserLanguage() {
26
+ if (typeof window === 'undefined' || !navigator.language) {
27
+ return 'en';
28
+ }
29
+ // Extract primary language code (e.g., 'en' from 'en-US')
30
+ return navigator.language.split('-')[0].toLowerCase();
31
+ }
32
+ /**
33
+ * Get translation value by key path
34
+ * Supports nested keys like 'header.subtitle' or 'dialog.resetConversation.title'
35
+ */
36
+ export function getTranslation(key, translations, fallback) {
37
+ var keys = key.split('.');
38
+ var value = translations;
39
+ for (var _i = 0, keys_1 = keys; _i < keys_1.length; _i++) {
40
+ var k = keys_1[_i];
41
+ if (value && typeof value === 'object' && k in value) {
42
+ value = value[k];
43
+ }
44
+ else {
45
+ return fallback || key;
46
+ }
47
+ }
48
+ return value;
49
+ }
50
+ /**
51
+ * Get a string translation (non-array)
52
+ */
53
+ export function getTranslationString(key, translations, fallback) {
54
+ var value = getTranslation(key, translations, fallback);
55
+ return Array.isArray(value) ? (fallback || key) : value;
56
+ }
57
+ /**
58
+ * Get an array translation
59
+ */
60
+ export function getTranslationArray(key, translations, fallback) {
61
+ var value = getTranslation(key, translations);
62
+ return Array.isArray(value) ? value : (fallback || []);
63
+ }
64
+ /**
65
+ * Resolve the language to use
66
+ * Priority: prop → browser → 'en'
67
+ */
68
+ export function resolveLanguage(languageProp) {
69
+ if (languageProp) {
70
+ return languageProp.toLowerCase();
71
+ }
72
+ return getBrowserLanguage();
73
+ }
74
+ /**
75
+ * Merge custom translations with defaults
76
+ * Custom translations override defaults, but don't need to include all keys
77
+ */
78
+ export function mergeTranslations(custom, defaults) {
79
+ if (defaults === void 0) { defaults = defaultTranslations; }
80
+ if (!custom) {
81
+ return defaults;
82
+ }
83
+ // Deep merge function
84
+ var deepMerge = function (target, source) {
85
+ var output = __assign({}, target);
86
+ if (isObject(target) && isObject(source)) {
87
+ Object.keys(source).forEach(function (key) {
88
+ var _a, _b;
89
+ if (isObject(source[key])) {
90
+ if (!(key in target)) {
91
+ Object.assign(output, (_a = {}, _a[key] = source[key], _a));
92
+ }
93
+ else {
94
+ output[key] = deepMerge(target[key], source[key]);
95
+ }
96
+ }
97
+ else {
98
+ Object.assign(output, (_b = {}, _b[key] = source[key], _b));
99
+ }
100
+ });
101
+ }
102
+ return output;
103
+ };
104
+ return deepMerge(defaults, custom);
105
+ }
106
+ function isObject(item) {
107
+ return item && typeof item === 'object' && !Array.isArray(item);
108
+ }
109
+ // Spanish translations loaded from JSON file
110
+ export var spanishTranslations = spanishTranslationsData;
111
+ // French translations loaded from JSON file
112
+ export var frenchTranslations = frenchTranslationsData;
113
+ // German translations loaded from JSON file
114
+ export var germanTranslations = germanTranslationsData;
115
+ // Italian translations loaded from JSON file
116
+ export var italianTranslations = italianTranslationsData;
117
+ // Portuguese translations loaded from JSON file
118
+ export var portugueseTranslations = portugueseTranslationsData;
119
+ // Translations map for easy access by language code
120
+ export var translationsByLanguage = {
121
+ en: defaultTranslations,
122
+ es: spanishTranslations,
123
+ fr: frenchTranslations,
124
+ de: germanTranslations,
125
+ it: italianTranslations,
126
+ pt: portugueseTranslations,
127
+ };
128
+ /**
129
+ * Get translations for a specific language
130
+ */
131
+ export function getTranslationsForLanguage(language) {
132
+ var langTranslations = translationsByLanguage[language.toLowerCase()];
133
+ if (langTranslations) {
134
+ return mergeTranslations(langTranslations, defaultTranslations);
135
+ }
136
+ return defaultTranslations;
137
+ }
138
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9pMThuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUEsa0NBQWtDO0FBQ2xDLE9BQU8sdUJBQXVCLE1BQU0sV0FBVyxDQUFDO0FBQ2hELE9BQU8sdUJBQXVCLE1BQU0sV0FBVyxDQUFDO0FBQ2hELE9BQU8sc0JBQXNCLE1BQU0sV0FBVyxDQUFDO0FBQy9DLE9BQU8sc0JBQXNCLE1BQU0sV0FBVyxDQUFDO0FBQy9DLE9BQU8sdUJBQXVCLE1BQU0sV0FBVyxDQUFDO0FBQ2hELE9BQU8sMEJBQTBCLE1BQU0sV0FBVyxDQUFDO0FBc0RuRCxxREFBcUQ7QUFDckQsTUFBTSxDQUFDLElBQU0sbUJBQW1CLEdBQWlCLHVCQUF1QyxDQUFDO0FBRXpGOzs7R0FHRztBQUNILE1BQU0sVUFBVSxrQkFBa0I7SUFDaEMsSUFBSSxPQUFPLE1BQU0sS0FBSyxXQUFXLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDekQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQ0QsMERBQTBEO0lBQzFELE9BQU8sU0FBUyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7QUFDeEQsQ0FBQztBQUVEOzs7R0FHRztBQUNILE1BQU0sVUFBVSxjQUFjLENBQzVCLEdBQVcsRUFDWCxZQUEwQixFQUMxQixRQUFpQjtJQUVqQixJQUFNLElBQUksR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzVCLElBQUksS0FBSyxHQUFRLFlBQVksQ0FBQztJQUU5QixLQUFnQixVQUFJLEVBQUosYUFBSSxFQUFKLGtCQUFJLEVBQUosSUFBSSxFQUFFLENBQUM7UUFBbEIsSUFBTSxDQUFDLGFBQUE7UUFDVixJQUFJLEtBQUssSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFR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LFFBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDbEUsQ0FBQztBQUVELDZDQUE2QztBQUM3QyxNQUFNLENBQUMsSUFBTSxtQkFBbUIsR0FBMEIsdUJBQWdELENBQUM7QUFFM0csNENBQTRDO0FBQzVDLE1BQU0sQ0FBQyxJQUFNLGtCQUFrQixHQUEwQixzQkFBK0MsQ0FBQztBQUV6Ryw0Q0FBNEM7QUFDNUMsTUFBTSxDQUFDLElBQU0sa0JBQWtCLEdBQTBCLHNCQUErQyxDQUFDO0FBRXpHLDZDQUE2QztBQUM3QyxNQUFNLENBQUMsSUFBTSxtQkFBbUIsR0FBMEIsdUJBQWdELENBQUM7QUFFM0csZ0RBQWdEO0FBQ2hELE1BQU0sQ0FBQyxJQUFNLHNCQUFzQixHQUEwQiwwQkFBbUQsQ0FBQztBQUVqSCxvREFBb0Q7QUFDcEQsTUFBTSxDQUFDLElBQU0sc0JBQXNCLEdBQTBDO0lBQzNFLEVBQUUsRUFBRSxtQkFBbUI7SUFDdkIsRUFBRSxFQUFFLG1CQUFtQjtJQUN2QixFQUFFLEVBQUUsa0JBQWtCO0lBQ3RCLEVBQUUsRUFBRSxrQkFBa0I7SUFDdEIsRUFBRSxFQUFFLG1CQUFtQjtJQUN2QixFQUFFLEVBQUUsc0JBQXNCO0NBQzNCLENBQUM7QUFFRjs7R0FFRztBQUNILE1BQU0sVUFBVSwwQkFBMEIsQ0FBQyxRQUFnQjtJQUN6RCxJQUFNLGdCQUFnQixHQUFHLHNCQUFzQixDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ3hFLElBQUksZ0JBQWdCLEVBQUUsQ0FBQztRQUNyQixPQUFPLGlCQUFpQixDQUFDLGdCQUFnQixFQUFFLG1CQUFtQixDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUNELE9BQU8sbUJBQW1CLENBQUM7QUFDN0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIFRyYW5zbGF0aW9uIHR5cGVzIGFuZCB1dGlsaXRpZXNcbmltcG9ydCBkZWZhdWx0VHJhbnNsYXRpb25zRGF0YSBmcm9tICcuL2VuLmpzb24nO1xuaW1wb3J0IHNwYW5pc2hUcmFuc2xhdGlvbnNEYXRhIGZyb20gJy4vZXMuanNvbic7XG5pbXBvcnQgZnJlbmNoVHJhbnNsYXRpb25zRGF0YSBmcm9tICcuL2ZyLmpzb24nO1xuaW1wb3J0IGdlcm1hblRyYW5zbGF0aW9uc0RhdGEgZnJvbSAnLi9kZS5qc29uJztcbmltcG9ydCBpdGFsaWFuVHJhbnNsYXRpb25zRGF0YSBmcm9tICcuL2l0Lmpzb24nO1xuaW1wb3J0IHBvcnR1Z3Vlc2VUcmFuc2xhdGlvbnNEYXRhIGZyb20gJy4vcHQuanNvbic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNsYXRpb25zIHtcbiAgaGVhZGVyOiB7XG4gICAgc3VidGl0bGU6IHN0cmluZztcbiAgfTtcbiAgbWVudToge1xuICAgIHRpdGxlOiBzdHJpbmc7XG4gICAgcmVzZXRDb252ZXJzYXRpb246IHN0cmluZztcbiAgICBsYW5ndWFnZTogc3RyaW5nO1xuICB9O1xuICBidXR0b25zOiB7XG4gICAgc3RhcnRDb252ZXJzYXRpb246IHN0cmluZztcbiAgICBjYW5jZWw6IHN0cmluZztcbiAgICByZXNldDogc3RyaW5nO1xuICAgIHNhdmU6IHN0cmluZztcbiAgICBzYXZlQ2hhbmdlczogc3RyaW5nO1xuICAgIGFkZDogc3RyaW5nO1xuICB9O1xuICBpbnB1dDoge1xuICAgIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gIH07XG4gIGxhYmVsczoge1xuICAgIGFnZW50OiBzdHJpbmc7XG4gICAgeW91OiBzdHJpbmc7XG4gIH07XG4gIGRpYWxvZzoge1xuICAgIHJlc2V0Q29udmVyc2F0aW9uOiB7XG4gICAgICB0aXRsZTogc3RyaW5nO1xuICAgICAgbWVzc2FnZTogc3RyaW5nO1xuICAgIH07XG4gIH07XG4gIGZlZWRiYWNrOiB7XG4gICAgdGh1bWJzVXA6IHN0cmluZztcbiAgICB0aHVtYnNEb3duOiBzdHJpbmc7XG4gIH07XG4gIHRoaW5raW5nOiB7XG4gICAgbWVzc2FnZXM6IHN0cmluZ1tdO1xuICB9O1xuICB0aW1lOiB7XG4gICAganVzdE5vdzogc3RyaW5nO1xuICAgIHRvZGF5OiBzdHJpbmc7XG4gICAgeWVzdGVyZGF5OiBzdHJpbmc7XG4gIH07XG4gIHNldHRpbmdzOiB7XG4gICAgZGVmYXVsdERlc2NyaXB0aW9uOiBzdHJpbmc7XG4gIH07XG4gIG1ldGFkYXRhOiB7XG4gICAgYWRkUGFyYW1ldGVyOiBzdHJpbmc7XG4gICAgZWRpdFBhcmFtZXRlcjogc3RyaW5nO1xuICAgIGRlZmluZUtleVZhbHVlOiBzdHJpbmc7XG4gIH07XG59XG5cbi8vIERlZmF1bHQgRW5nbGlzaCB0cmFuc2xhdGlvbnMgbG9hZGVkIGZyb20gSlNPTiBmaWxlXG5leHBvcnQgY29uc3QgZGVmYXVsdFRyYW5zbGF0aW9uczogVHJhbnNsYXRpb25zID0gZGVmYXVsdFRyYW5zbGF0aW9uc0RhdGEgYXMgVHJhbnNsYXRpb25zO1xuXG4vKipcbiAqIEdldCBicm93c2VyIGxhbmd1YWdlIGNvZGUgKGUuZy4sICdlbicsICdlcycpXG4gKiBSZXR1cm5zIHRoZSBwcmltYXJ5IGxhbmd1YWdlIGNvZGUgd2l0aG91dCByZWdpb25cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEJyb3dzZXJMYW5ndWFnZSgpOiBzdHJpbmcge1xuICBpZiAodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcgfHwgIW5hdmlnYXRvci5sYW5ndWFnZSkge1xuICAgIHJldHVybiAnZW4nO1xuICB9XG4gIC8vIEV4dHJhY3QgcHJpbWFyeSBsYW5ndWFnZSBjb2RlIChlLmcuLCAnZW4nIGZyb20gJ2VuLVVTJylcbiAgcmV0dXJuIG5hdmlnYXRvci5sYW5ndWFnZS5zcGxpdCgnLScpWzBdLnRvTG93ZXJDYXNlKCk7XG59XG5cbi8qKlxuICogR2V0IHRyYW5zbGF0aW9uIHZhbHVlIGJ5IGtleSBwYXRoXG4gKiBTdXBwb3J0cyBuZXN0ZWQga2V5cyBsaWtlICdoZWFkZXIuc3VidGl0bGUnIG9yICdkaWFsb2cucmVzZXRDb252ZXJzYXRpb24udGl0bGUnXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRUcmFuc2xhdGlvbihcbiAga2V5OiBzdHJpbmcsXG4gIHRyYW5zbGF0aW9uczogVHJhbnNsYXRpb25zLFxuICBmYWxsYmFjaz86IHN0cmluZ1xuKTogc3RyaW5nIHwgc3RyaW5nW10ge1xuICBjb25zdCBrZXlzID0ga2V5LnNwbGl0KCcuJyk7XG4gIGxldCB2YWx1ZTogYW55ID0gdHJhbnNsYXRpb25zO1xuXG4gIGZvciAoY29uc3QgayBvZiBrZXlzKSB7XG4gICAgaWYgKHZhbHVlICYmIHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgJiYgayBpbiB2YWx1ZSkge1xuICAgICAgdmFsdWUgPSB2YWx1ZVtrIGFzIGtleW9mIHR5cGVvZiB2YWx1ZV07XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBmYWxsYmFjayB8fCBrZXk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHZhbHVlO1xufVxuXG4vKipcbiAqIEdldCBhIHN0cmluZyB0cmFuc2xhdGlvbiAobm9uLWFycmF5KVxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0VHJhbnNsYXRpb25TdHJpbmcoXG4gIGtleTogc3RyaW5nLFxuICB0cmFuc2xhdGlvbnM6IFRyYW5zbGF0aW9ucyxcbiAgZmFsbGJhY2s/OiBzdHJpbmdcbik6IHN0cmluZyB7XG4gIGNvbnN0IHZhbHVlID0gZ2V0VHJhbnNsYXRpb24oa2V5LCB0cmFuc2xhdGlvbnMsIGZhbGxiYWNrKTtcbiAgcmV0dXJuIEFycmF5LmlzQXJyYXkodmFsdWUpID8gKGZhbGxiYWNrIHx8IGtleSkgOiB2YWx1ZTtcbn1cblxuLyoqXG4gKiBHZXQgYW4gYXJyYXkgdHJhbnNsYXRpb25cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFRyYW5zbGF0aW9uQXJyYXkoXG4gIGtleTogc3RyaW5nLFxuICB0cmFuc2xhdGlvbnM6IFRyYW5zbGF0aW9ucyxcbiAgZmFsbGJhY2s/OiBzdHJpbmdbXVxuKTogc3RyaW5nW10ge1xuICBjb25zdCB2YWx1ZSA9IGdldFRyYW5zbGF0aW9uKGtleSwgdHJhbnNsYXRpb25zKTtcbiAgcmV0dXJuIEFycmF5LmlzQXJyYXkodmFsdWUpID8gdmFsdWUgOiAoZmFsbGJhY2sgfHwgW10pO1xufVxuXG4vKipcbiAqIFJlc29sdmUgdGhlIGxhbmd1YWdlIHRvIHVzZVxuICogUHJpb3JpdHk6IHByb3Ag4oaSIGJyb3dzZXIg4oaSICdlbidcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmVMYW5ndWFnZShsYW5ndWFnZVByb3A/OiBzdHJpbmcpOiBzdHJpbmcge1xuICBpZiAobGFuZ3VhZ2VQcm9wKSB7XG4gICAgcmV0dXJuIGxhbmd1YWdlUHJvcC50b0xvd2VyQ2FzZSgpO1xuICB9XG4gIHJldHVybiBnZXRCcm93c2VyTGFuZ3VhZ2UoKTtcbn1cblxuLyoqXG4gKiBNZXJnZSBjdXN0b20gdHJhbnNsYXRpb25zIHdpdGggZGVmYXVsdHNcbiAqIEN1c3RvbSB0cmFuc2xhdGlvbnMgb3ZlcnJpZGUgZGVmYXVsdHMsIGJ1dCBkb24ndCBuZWVkIHRvIGluY2x1ZGUgYWxsIGtleXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1lcmdlVHJhbnNsYXRpb25zKFxuICBjdXN0b20/OiBQYXJ0aWFsPFRyYW5zbGF0aW9ucz4sXG4gIGRlZmF1bHRzOiBUcmFuc2xhdGlvbnMgPSBkZWZhdWx0VHJhbnNsYXRpb25zXG4pOiBUcmFuc2xhdGlvbnMge1xuICBpZiAoIWN1c3RvbSkge1xuICAgIHJldHVybiBkZWZhdWx0cztcbiAgfVxuXG4gIC8vIERlZXAgbWVyZ2UgZnVuY3Rpb25cbiAgY29uc3QgZGVlcE1lcmdlID0gKHRhcmdldDogYW55LCBzb3VyY2U6IGFueSk6IGFueSA9PiB7XG4gICAgY29uc3Qgb3V0cHV0ID0geyAuLi50YXJnZXQgfTtcbiAgICBpZiAoaXNPYmplY3QodGFyZ2V0KSAmJiBpc09iamVjdChzb3VyY2UpKSB7XG4gICAgICBPYmplY3Qua2V5cyhzb3VyY2UpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICBpZiAoaXNPYmplY3Qoc291cmNlW2tleV0pKSB7XG4gICAgICAgICAgaWYgKCEoa2V5IGluIHRhcmdldCkpIHtcbiAgICAgICAgICAgIE9iamVjdC5hc3NpZ24ob3V0cHV0LCB7IFtrZXldOiBzb3VyY2Vba2V5XSB9KTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgb3V0cHV0W2tleV0gPSBkZWVwTWVyZ2UodGFyZ2V0W2tleV0sIHNvdXJjZVtrZXldKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgT2JqZWN0LmFzc2lnbihvdXRwdXQsIHsgW2tleV06IHNvdXJjZVtrZXldIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIG91dHB1dDtcbiAgfTtcblxuICByZXR1cm4gZGVlcE1lcmdlKGRlZmF1bHRzLCBjdXN0b20pO1xufVxuXG5mdW5jdGlvbiBpc09iamVjdChpdGVtOiBhbnkpOiBib29sZWFuIHtcbiAgcmV0dXJuIGl0ZW0gJiYgdHlwZW9mIGl0ZW0gPT09ICdvYmplY3QnICYmICFBcnJheS5pc0FycmF5KGl0ZW0pO1xufVxuXG4vLyBTcGFuaXNoIHRyYW5zbGF0aW9ucyBsb2FkZWQgZnJvbSBKU09OIGZpbGVcbmV4cG9ydCBjb25zdCBzcGFuaXNoVHJhbnNsYXRpb25zOiBQYXJ0aWFsPFRyYW5zbGF0aW9ucz4gPSBzcGFuaXNoVHJhbnNsYXRpb25zRGF0YSBhcyBQYXJ0aWFsPFRyYW5zbGF0aW9ucz47XG5cbi8vIEZyZW5jaCB0cmFuc2xhdGlvbnMgbG9hZGVkIGZyb20gSlNPTiBmaWxlXG5leHBvcnQgY29uc3QgZnJlbmNoVHJhbnNsYXRpb25zOiBQYXJ0aWFsPFRyYW5zbGF0aW9ucz4gPSBmcmVuY2hUcmFuc2xhdGlvbnNEYXRhIGFzIFBhcnRpYWw8VHJhbnNsYXRpb25zPjtcblxuLy8gR2VybWFuIHRyYW5zbGF0aW9ucyBsb2FkZWQgZnJvbSBKU09OIGZpbGVcbmV4cG9ydCBjb25zdCBnZXJtYW5UcmFuc2xhdGlvbnM6IFBhcnRpYWw8VHJhbnNsYXRpb25zPiA9IGdlcm1hblRyYW5zbGF0aW9uc0RhdGEgYXMgUGFydGlhbDxUcmFuc2xhdGlvbnM+O1xuXG4vLyBJdGFsaWFuIHRyYW5zbGF0aW9ucyBsb2FkZWQgZnJvbSBKU09OIGZpbGVcbmV4cG9ydCBjb25zdCBpdGFsaWFuVHJhbnNsYXRpb25zOiBQYXJ0aWFsPFRyYW5zbGF0aW9ucz4gPSBpdGFsaWFuVHJhbnNsYXRpb25zRGF0YSBhcyBQYXJ0aWFsPFRyYW5zbGF0aW9ucz47XG5cbi8vIFBvcnR1Z3Vlc2UgdHJhbnNsYXRpb25zIGxvYWRlZCBmcm9tIEpTT04gZmlsZVxuZXhwb3J0IGNvbnN0IHBvcnR1Z3Vlc2VUcmFuc2xhdGlvbnM6IFBhcnRpYWw8VHJhbnNsYXRpb25zPiA9IHBvcnR1Z3Vlc2VUcmFuc2xhdGlvbnNEYXRhIGFzIFBhcnRpYWw8VHJhbnNsYXRpb25zPjtcblxuLy8gVHJhbnNsYXRpb25zIG1hcCBmb3IgZWFzeSBhY2Nlc3MgYnkgbGFuZ3VhZ2UgY29kZVxuZXhwb3J0IGNvbnN0IHRyYW5zbGF0aW9uc0J5TGFuZ3VhZ2U6IFJlY29yZDxzdHJpbmcsIFBhcnRpYWw8VHJhbnNsYXRpb25zPj4gPSB7XG4gIGVuOiBkZWZhdWx0VHJhbnNsYXRpb25zLFxuICBlczogc3BhbmlzaFRyYW5zbGF0aW9ucyxcbiAgZnI6IGZyZW5jaFRyYW5zbGF0aW9ucyxcbiAgZGU6IGdlcm1hblRyYW5zbGF0aW9ucyxcbiAgaXQ6IGl0YWxpYW5UcmFuc2xhdGlvbnMsXG4gIHB0OiBwb3J0dWd1ZXNlVHJhbnNsYXRpb25zLFxufTtcblxuLyoqXG4gKiBHZXQgdHJhbnNsYXRpb25zIGZvciBhIHNwZWNpZmljIGxhbmd1YWdlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRUcmFuc2xhdGlvbnNGb3JMYW5ndWFnZShsYW5ndWFnZTogc3RyaW5nKTogVHJhbnNsYXRpb25zIHtcbiAgY29uc3QgbGFuZ1RyYW5zbGF0aW9ucyA9IHRyYW5zbGF0aW9uc0J5TGFuZ3VhZ2VbbGFuZ3VhZ2UudG9Mb3dlckNhc2UoKV07XG4gIGlmIChsYW5nVHJhbnNsYXRpb25zKSB7XG4gICAgcmV0dXJuIG1lcmdlVHJhbnNsYXRpb25zKGxhbmdUcmFuc2xhdGlvbnMsIGRlZmF1bHRUcmFuc2xhdGlvbnMpO1xuICB9XG4gIHJldHVybiBkZWZhdWx0VHJhbnNsYXRpb25zO1xufVxuXG4iXX0=
@@ -0,0 +1,90 @@
1
+ {
2
+ "header": {
3
+ "subtitle": "Supporto"
4
+ },
5
+ "menu": {
6
+ "title": "Menu",
7
+ "resetConversation": "Reimposta conversazione",
8
+ "language": "Lingua"
9
+ },
10
+ "buttons": {
11
+ "startConversation": "Avvia conversazione",
12
+ "cancel": "Annulla",
13
+ "reset": "Reimposta",
14
+ "save": "Salva",
15
+ "saveChanges": "Salva modifiche",
16
+ "add": "Aggiungi"
17
+ },
18
+ "input": {
19
+ "placeholder": "Fai una domanda"
20
+ },
21
+ "labels": {
22
+ "agent": "Agente",
23
+ "you": "Tu"
24
+ },
25
+ "dialog": {
26
+ "resetConversation": {
27
+ "title": "Reimposta conversazione",
28
+ "message": "Questo cancellerà la cronologia della conversazione corrente e inizierà una nuova conversazione. Sei sicuro?"
29
+ }
30
+ },
31
+ "feedback": {
32
+ "thumbsUp": "Pollice su",
33
+ "thumbsDown": "Pollice giù"
34
+ },
35
+ "thinking": {
36
+ "messages": [
37
+ "Pensando…",
38
+ "Analizzando la tua domanda…",
39
+ "Cercando informazioni…",
40
+ "Recuperando informazioni rilevanti…",
41
+ "Redigendo la risposta…",
42
+ "Verificando i dettagli…",
43
+ "Mettendo tutto insieme…",
44
+ "Quasi fatto…"
45
+ ]
46
+ },
47
+ "time": {
48
+ "justNow": "Proprio ora",
49
+ "today": "Oggi",
50
+ "yesterday": "Ieri"
51
+ },
52
+ "settings": {
53
+ "defaultDescription": "Supporto"
54
+ },
55
+ "metadata": {
56
+ "addParameter": "Aggiungi parametro",
57
+ "editParameter": "Modifica parametro",
58
+ "defineKeyValue": "Definisci parametri chiave/valore inviati come metadati della chat."
59
+ },
60
+ "configPanel": {
61
+ "appearance": "ASPETTO",
62
+ "settings": "IMPOSTAZIONI",
63
+ "metadata": "METADATI",
64
+ "primaryColor": "Colore primario",
65
+ "secondaryColor": "Colore secondario",
66
+ "backgroundColor": "Colore di sfondo",
67
+ "textColor": "Colore del testo",
68
+ "fontSize": "Dimensione carattere",
69
+ "fontFamily": "Famiglia carattere",
70
+ "name": "Nome",
71
+ "description": "Descrizione",
72
+ "small": "Piccolo (12px)",
73
+ "medium": "Medio (15px)",
74
+ "large": "Grande (18px)",
75
+ "parameterName": "Nome parametro",
76
+ "type": "Tipo",
77
+ "required": "Obbligatorio",
78
+ "defaultValue": "Valore predefinito",
79
+ "value": "Valore",
80
+ "yes": "Sì",
81
+ "no": "No",
82
+ "true": "Vero",
83
+ "false": "Falso",
84
+ "string": "Stringa",
85
+ "number": "Numero",
86
+ "boolean": "Booleano",
87
+ "edit": "Modifica",
88
+ "remove": "Rimuovi"
89
+ }
90
+ }
@@ -0,0 +1,90 @@
1
+ {
2
+ "header": {
3
+ "subtitle": "Suporte"
4
+ },
5
+ "menu": {
6
+ "title": "Menu",
7
+ "resetConversation": "Reiniciar conversa",
8
+ "language": "Idioma"
9
+ },
10
+ "buttons": {
11
+ "startConversation": "Iniciar conversa",
12
+ "cancel": "Cancelar",
13
+ "reset": "Reiniciar",
14
+ "save": "Salvar",
15
+ "saveChanges": "Salvar alterações",
16
+ "add": "Adicionar"
17
+ },
18
+ "input": {
19
+ "placeholder": "Faça uma pergunta"
20
+ },
21
+ "labels": {
22
+ "agent": "Agente",
23
+ "you": "Você"
24
+ },
25
+ "dialog": {
26
+ "resetConversation": {
27
+ "title": "Reiniciar conversa",
28
+ "message": "Isso limpará o histórico de conversa atual e iniciará uma nova conversa. Tem certeza?"
29
+ }
30
+ },
31
+ "feedback": {
32
+ "thumbsUp": "Polegar para cima",
33
+ "thumbsDown": "Polegar para baixo"
34
+ },
35
+ "thinking": {
36
+ "messages": [
37
+ "Pensando…",
38
+ "Analisando sua pergunta…",
39
+ "Buscando informações…",
40
+ "Obtendo informações relevantes…",
41
+ "Redigindo a resposta…",
42
+ "Verificando detalhes…",
43
+ "Juntando tudo…",
44
+ "Quase lá…"
45
+ ]
46
+ },
47
+ "time": {
48
+ "justNow": "Agora mesmo",
49
+ "today": "Hoje",
50
+ "yesterday": "Ontem"
51
+ },
52
+ "settings": {
53
+ "defaultDescription": "Suporte"
54
+ },
55
+ "metadata": {
56
+ "addParameter": "Adicionar parâmetro",
57
+ "editParameter": "Editar parâmetro",
58
+ "defineKeyValue": "Defina parâmetros chave/valor enviados como metadados do chat."
59
+ },
60
+ "configPanel": {
61
+ "appearance": "APARÊNCIA",
62
+ "settings": "CONFIGURAÇÕES",
63
+ "metadata": "METADADOS",
64
+ "primaryColor": "Cor primária",
65
+ "secondaryColor": "Cor secundária",
66
+ "backgroundColor": "Cor de fundo",
67
+ "textColor": "Cor do texto",
68
+ "fontSize": "Tamanho da fonte",
69
+ "fontFamily": "Família da fonte",
70
+ "name": "Nome",
71
+ "description": "Descrição",
72
+ "small": "Pequeno (12px)",
73
+ "medium": "Médio (15px)",
74
+ "large": "Grande (18px)",
75
+ "parameterName": "Nome do parâmetro",
76
+ "type": "Tipo",
77
+ "required": "Obrigatório",
78
+ "defaultValue": "Valor padrão",
79
+ "value": "Valor",
80
+ "yes": "Sim",
81
+ "no": "Não",
82
+ "true": "Verdadeiro",
83
+ "false": "Falso",
84
+ "string": "String",
85
+ "number": "Número",
86
+ "boolean": "Booleano",
87
+ "edit": "Editar",
88
+ "remove": "Remover"
89
+ }
90
+ }
@@ -1 +1,6 @@
1
- export declare const formatTimestamp: (timestamp: number) => string;
1
+ export interface TimeTranslations {
2
+ justNow: string;
3
+ today: string;
4
+ yesterday: string;
5
+ }
6
+ export declare const formatTimestamp: (timestamp: number, language?: string, translations?: TimeTranslations) => string;
@@ -1,32 +1,42 @@
1
- export var formatTimestamp = function (timestamp) {
1
+ export var formatTimestamp = function (timestamp, language, translations) {
2
2
  try {
3
3
  if (!timestamp || isNaN(timestamp)) {
4
- return 'Just now';
4
+ return (translations === null || translations === void 0 ? void 0 : translations.justNow) || 'Just now';
5
5
  }
6
6
  var timestampMs = timestamp < 1000000000000 ? timestamp * 1000 : timestamp;
7
7
  var date = new Date(timestampMs);
8
8
  if (isNaN(date.getTime())) {
9
- return 'Just now';
9
+ return (translations === null || translations === void 0 ? void 0 : translations.justNow) || 'Just now';
10
10
  }
11
11
  var today = new Date();
12
12
  var yesterday = new Date(today);
13
13
  yesterday.setDate(yesterday.getDate() - 1);
14
+ // Use language for locale formatting
15
+ var localeMap = {
16
+ 'en': 'en-US',
17
+ 'es': 'es-ES',
18
+ 'fr': 'fr-FR',
19
+ 'de': 'de-DE',
20
+ 'it': 'it-IT',
21
+ 'pt': 'pt-PT',
22
+ };
23
+ var locale = language ? (localeMap[language] || language) : undefined;
14
24
  var timeOptions = { hour: 'numeric', minute: '2-digit', hour12: true };
15
- var timeStr = date.toLocaleTimeString(undefined, timeOptions);
25
+ var timeStr = date.toLocaleTimeString(locale, timeOptions);
16
26
  if (date.toDateString() === today.toDateString()) {
17
- return "Today, ".concat(timeStr);
27
+ return "".concat((translations === null || translations === void 0 ? void 0 : translations.today) || 'Today', ", ").concat(timeStr);
18
28
  }
19
29
  else if (date.toDateString() === yesterday.toDateString()) {
20
- return "Yesterday, ".concat(timeStr);
30
+ return "".concat((translations === null || translations === void 0 ? void 0 : translations.yesterday) || 'Yesterday', ", ").concat(timeStr);
21
31
  }
22
32
  else {
23
33
  var dateOptions = { month: 'short', day: 'numeric', year: 'numeric' };
24
- var dateStr = date.toLocaleDateString(undefined, dateOptions);
34
+ var dateStr = date.toLocaleDateString(locale, dateOptions);
25
35
  return "".concat(dateStr, ", ").concat(timeStr);
26
36
  }
27
37
  }
28
38
  catch (_a) {
29
- return 'Just now';
39
+ return (translations === null || translations === void 0 ? void 0 : translations.justNow) || 'Just now';
30
40
  }
31
41
  };
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy90aW1lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxJQUFNLGVBQWUsR0FBRyxVQUFDLFNBQWlCO0lBQy9DLElBQUksQ0FBQztRQUNILElBQUksQ0FBQyxTQUFTLElBQUksS0FBSyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7WUFDbkMsT0FBTyxVQUFVLENBQUM7UUFDcEIsQ0FBQztRQUNELElBQU0sV0FBVyxHQUFHLFNBQVMsR0FBRyxhQUFhLENBQUMsQ0FBQyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQUM3RSxJQUFNLElBQUksR0FBRyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNuQyxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQzFCLE9BQU8sVUFBVSxDQUFDO1FBQ3BCLENBQUM7UUFDRCxJQUFNLEtBQUssR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3pCLElBQU0sU0FBUyxHQUFHLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xDLFNBQVMsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQzNDLElBQU0sV0FBVyxHQUErQixFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFDckcsSUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUNoRSxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsS0FBSyxLQUFLLENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQztZQUNqRCxPQUFPLGlCQUFVLE9BQU8sQ0FBRSxDQUFDO1FBQzdCLENBQUM7YUFBTSxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsS0FBSyxTQUFTLENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQztZQUM1RCxPQUFPLHFCQUFjLE9BQU8sQ0FBRSxDQUFDO1FBQ2pDLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBTSxXQUFXLEdBQStCLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsQ0FBQztZQUNwRyxJQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsU0FBUyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1lBQ2hFLE9BQU8sVUFBRyxPQUFPLGVBQUssT0FBTyxDQUFFLENBQUM7UUFDbEMsQ0FBQztJQUNILENBQUM7SUFBQyxXQUFNLENBQUM7UUFDUCxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0FBQ0gsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGZvcm1hdFRpbWVzdGFtcCA9ICh0aW1lc3RhbXA6IG51bWJlcik6IHN0cmluZyA9PiB7XG4gIHRyeSB7XG4gICAgaWYgKCF0aW1lc3RhbXAgfHwgaXNOYU4odGltZXN0YW1wKSkge1xuICAgICAgcmV0dXJuICdKdXN0IG5vdyc7XG4gICAgfVxuICAgIGNvbnN0IHRpbWVzdGFtcE1zID0gdGltZXN0YW1wIDwgMTAwMDAwMDAwMDAwMCA/IHRpbWVzdGFtcCAqIDEwMDAgOiB0aW1lc3RhbXA7XG4gICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKHRpbWVzdGFtcE1zKTtcbiAgICBpZiAoaXNOYU4oZGF0ZS5nZXRUaW1lKCkpKSB7XG4gICAgICByZXR1cm4gJ0p1c3Qgbm93JztcbiAgICB9XG4gICAgY29uc3QgdG9kYXkgPSBuZXcgRGF0ZSgpO1xuICAgIGNvbnN0IHllc3RlcmRheSA9IG5ldyBEYXRlKHRvZGF5KTtcbiAgICB5ZXN0ZXJkYXkuc2V0RGF0ZSh5ZXN0ZXJkYXkuZ2V0RGF0ZSgpIC0gMSk7XG4gICAgY29uc3QgdGltZU9wdGlvbnM6IEludGwuRGF0ZVRpbWVGb3JtYXRPcHRpb25zID0geyBob3VyOiAnbnVtZXJpYycsIG1pbnV0ZTogJzItZGlnaXQnLCBob3VyMTI6IHRydWUgfTtcbiAgICBjb25zdCB0aW1lU3RyID0gZGF0ZS50b0xvY2FsZVRpbWVTdHJpbmcodW5kZWZpbmVkLCB0aW1lT3B0aW9ucyk7XG4gICAgaWYgKGRhdGUudG9EYXRlU3RyaW5nKCkgPT09IHRvZGF5LnRvRGF0ZVN0cmluZygpKSB7XG4gICAgICByZXR1cm4gYFRvZGF5LCAke3RpbWVTdHJ9YDtcbiAgICB9IGVsc2UgaWYgKGRhdGUudG9EYXRlU3RyaW5nKCkgPT09IHllc3RlcmRheS50b0RhdGVTdHJpbmcoKSkge1xuICAgICAgcmV0dXJuIGBZZXN0ZXJkYXksICR7dGltZVN0cn1gO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBkYXRlT3B0aW9uczogSW50bC5EYXRlVGltZUZvcm1hdE9wdGlvbnMgPSB7IG1vbnRoOiAnc2hvcnQnLCBkYXk6ICdudW1lcmljJywgeWVhcjogJ251bWVyaWMnIH07XG4gICAgICBjb25zdCBkYXRlU3RyID0gZGF0ZS50b0xvY2FsZURhdGVTdHJpbmcodW5kZWZpbmVkLCBkYXRlT3B0aW9ucyk7XG4gICAgICByZXR1cm4gYCR7ZGF0ZVN0cn0sICR7dGltZVN0cn1gO1xuICAgIH1cbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuICdKdXN0IG5vdyc7XG4gIH1cbn07XG5cbiJdfQ==
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy90aW1lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU1BLE1BQU0sQ0FBQyxJQUFNLGVBQWUsR0FBRyxVQUM3QixTQUFpQixFQUNqQixRQUFpQixFQUNqQixZQUErQjtJQUUvQixJQUFJLENBQUM7UUFDSCxJQUFJLENBQUMsU0FBUyxJQUFJLEtBQUssQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO1lBQ25DLE9BQU8sQ0FBQSxZQUFZLGFBQVosWUFBWSx1QkFBWixZQUFZLENBQUUsT0FBTyxLQUFJLFVBQVUsQ0FBQztRQUM3QyxDQUFDO1FBQ0QsSUFBTSxXQUFXLEdBQUcsU0FBUyxHQUFHLGFBQWEsQ0FBQyxDQUFDLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQzdFLElBQU0sSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ25DLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDMUIsT0FBTyxDQUFBLFlBQVksYUFBWixZQUFZLHVCQUFaLFlBQVksQ0FBRSxPQUFPLEtBQUksVUFBVSxDQUFDO1FBQzdDLENBQUM7UUFDRCxJQUFNLEtBQUssR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3pCLElBQU0sU0FBUyxHQUFHLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xDLFNBQVMsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRTNDLHFDQUFxQztRQUNyQyxJQUFNLFNBQVMsR0FBMkI7WUFDeEMsSUFBSSxFQUFFLE9BQU87WUFDYixJQUFJLEVBQUUsT0FBTztZQUNiLElBQUksRUFBRSxPQUFPO1lBQ2IsSUFBSSxFQUFFLE9BQU87WUFDYixJQUFJLEVBQUUsT0FBTztZQUNiLElBQUksRUFBRSxPQUFPO1NBQ2QsQ0FBQztRQUNGLElBQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQUN4RSxJQUFNLFdBQVcsR0FBK0IsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxDQUFDO1FBQ3JHLElBQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFFN0QsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLEtBQUssS0FBSyxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUM7WUFDakQsT0FBTyxVQUFHLENBQUEsWUFBWSxhQUFaLFlBQVksdUJBQVosWUFBWSxDQUFFLEtBQUssS0FBSSxPQUFPLGVBQUssT0FBTyxDQUFFLENBQUM7UUFDekQsQ0FBQzthQUFNLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxLQUFLLFNBQVMsQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDO1lBQzVELE9BQU8sVUFBRyxDQUFBLFlBQVksYUFBWixZQUFZLHVCQUFaLFlBQVksQ0FBRSxTQUFTLEtBQUksV0FBVyxlQUFLLE9BQU8sQ0FBRSxDQUFDO1FBQ2pFLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBTSxXQUFXLEdBQStCLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsQ0FBQztZQUNwRyxJQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1lBQzdELE9BQU8sVUFBRyxPQUFPLGVBQUssT0FBTyxDQUFFLENBQUM7UUFDbEMsQ0FBQztJQUNILENBQUM7SUFBQyxXQUFNLENBQUM7UUFDUCxPQUFPLENBQUEsWUFBWSxhQUFaLFlBQVksdUJBQVosWUFBWSxDQUFFLE9BQU8sS0FBSSxVQUFVLENBQUM7SUFDN0MsQ0FBQztBQUNILENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgVGltZVRyYW5zbGF0aW9ucyB7XG4gIGp1c3ROb3c6IHN0cmluZztcbiAgdG9kYXk6IHN0cmluZztcbiAgeWVzdGVyZGF5OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjb25zdCBmb3JtYXRUaW1lc3RhbXAgPSAoXG4gIHRpbWVzdGFtcDogbnVtYmVyLFxuICBsYW5ndWFnZT86IHN0cmluZyxcbiAgdHJhbnNsYXRpb25zPzogVGltZVRyYW5zbGF0aW9uc1xuKTogc3RyaW5nID0+IHtcbiAgdHJ5IHtcbiAgICBpZiAoIXRpbWVzdGFtcCB8fCBpc05hTih0aW1lc3RhbXApKSB7XG4gICAgICByZXR1cm4gdHJhbnNsYXRpb25zPy5qdXN0Tm93IHx8ICdKdXN0IG5vdyc7XG4gICAgfVxuICAgIGNvbnN0IHRpbWVzdGFtcE1zID0gdGltZXN0YW1wIDwgMTAwMDAwMDAwMDAwMCA/IHRpbWVzdGFtcCAqIDEwMDAgOiB0aW1lc3RhbXA7XG4gICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKHRpbWVzdGFtcE1zKTtcbiAgICBpZiAoaXNOYU4oZGF0ZS5nZXRUaW1lKCkpKSB7XG4gICAgICByZXR1cm4gdHJhbnNsYXRpb25zPy5qdXN0Tm93IHx8ICdKdXN0IG5vdyc7XG4gICAgfVxuICAgIGNvbnN0IHRvZGF5ID0gbmV3IERhdGUoKTtcbiAgICBjb25zdCB5ZXN0ZXJkYXkgPSBuZXcgRGF0ZSh0b2RheSk7XG4gICAgeWVzdGVyZGF5LnNldERhdGUoeWVzdGVyZGF5LmdldERhdGUoKSAtIDEpO1xuICAgIFxuICAgIC8vIFVzZSBsYW5ndWFnZSBmb3IgbG9jYWxlIGZvcm1hdHRpbmdcbiAgICBjb25zdCBsb2NhbGVNYXA6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gICAgICAnZW4nOiAnZW4tVVMnLFxuICAgICAgJ2VzJzogJ2VzLUVTJyxcbiAgICAgICdmcic6ICdmci1GUicsXG4gICAgICAnZGUnOiAnZGUtREUnLFxuICAgICAgJ2l0JzogJ2l0LUlUJyxcbiAgICAgICdwdCc6ICdwdC1QVCcsXG4gICAgfTtcbiAgICBjb25zdCBsb2NhbGUgPSBsYW5ndWFnZSA/IChsb2NhbGVNYXBbbGFuZ3VhZ2VdIHx8IGxhbmd1YWdlKSA6IHVuZGVmaW5lZDtcbiAgICBjb25zdCB0aW1lT3B0aW9uczogSW50bC5EYXRlVGltZUZvcm1hdE9wdGlvbnMgPSB7IGhvdXI6ICdudW1lcmljJywgbWludXRlOiAnMi1kaWdpdCcsIGhvdXIxMjogdHJ1ZSB9O1xuICAgIGNvbnN0IHRpbWVTdHIgPSBkYXRlLnRvTG9jYWxlVGltZVN0cmluZyhsb2NhbGUsIHRpbWVPcHRpb25zKTtcbiAgICBcbiAgICBpZiAoZGF0ZS50b0RhdGVTdHJpbmcoKSA9PT0gdG9kYXkudG9EYXRlU3RyaW5nKCkpIHtcbiAgICAgIHJldHVybiBgJHt0cmFuc2xhdGlvbnM/LnRvZGF5IHx8ICdUb2RheSd9LCAke3RpbWVTdHJ9YDtcbiAgICB9IGVsc2UgaWYgKGRhdGUudG9EYXRlU3RyaW5nKCkgPT09IHllc3RlcmRheS50b0RhdGVTdHJpbmcoKSkge1xuICAgICAgcmV0dXJuIGAke3RyYW5zbGF0aW9ucz8ueWVzdGVyZGF5IHx8ICdZZXN0ZXJkYXknfSwgJHt0aW1lU3RyfWA7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGRhdGVPcHRpb25zOiBJbnRsLkRhdGVUaW1lRm9ybWF0T3B0aW9ucyA9IHsgbW9udGg6ICdzaG9ydCcsIGRheTogJ251bWVyaWMnLCB5ZWFyOiAnbnVtZXJpYycgfTtcbiAgICAgIGNvbnN0IGRhdGVTdHIgPSBkYXRlLnRvTG9jYWxlRGF0ZVN0cmluZyhsb2NhbGUsIGRhdGVPcHRpb25zKTtcbiAgICAgIHJldHVybiBgJHtkYXRlU3RyfSwgJHt0aW1lU3RyfWA7XG4gICAgfVxuICB9IGNhdGNoIHtcbiAgICByZXR1cm4gdHJhbnNsYXRpb25zPy5qdXN0Tm93IHx8ICdKdXN0IG5vdyc7XG4gIH1cbn07XG5cbiJdfQ==
package/package.json CHANGED
@@ -1,10 +1,19 @@
1
1
  {
2
2
  "name": "genassist-chat-react",
3
- "version": "1.0.15",
3
+ "version": "1.0.16",
4
4
  "description": "React chat component for GenAssist",
5
- "main": "dist/index.js",
6
- "module": "dist/index.esm.js",
7
- "types": "dist/index.d.ts",
5
+ "main": "./dist/index.js",
6
+ "module": "./dist/index.js",
7
+ "types": "./dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "import": "./dist/index.js",
12
+ "require": "./dist/index.js",
13
+ "default": "./dist/index.js"
14
+ },
15
+ "./package.json": "./package.json"
16
+ },
8
17
  "files": [
9
18
  "dist",
10
19
  "assets"