datakeen-session-react 1.1.194 → 1.1.195

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.
Files changed (35) hide show
  1. package/dist/cjs/components/session/StartSession.js +4 -29
  2. package/dist/cjs/components/session/StartSession.js.map +1 -1
  3. package/dist/cjs/components/start-flow/Start.js +5 -6
  4. package/dist/cjs/components/start-flow/Start.js.map +1 -1
  5. package/dist/cjs/i18n/en.json.js +0 -25
  6. package/dist/cjs/i18n/en.json.js.map +1 -1
  7. package/dist/cjs/i18n/es.json.js +0 -25
  8. package/dist/cjs/i18n/es.json.js.map +1 -1
  9. package/dist/cjs/i18n/fr.json.js +0 -25
  10. package/dist/cjs/i18n/fr.json.js.map +1 -1
  11. package/dist/cjs/types/session.js.map +1 -1
  12. package/dist/esm/components/session/StartSession.js +5 -30
  13. package/dist/esm/components/session/StartSession.js.map +1 -1
  14. package/dist/esm/components/start-flow/Start.js +5 -6
  15. package/dist/esm/components/start-flow/Start.js.map +1 -1
  16. package/dist/esm/i18n/en.json.js +1 -25
  17. package/dist/esm/i18n/en.json.js.map +1 -1
  18. package/dist/esm/i18n/es.json.js +1 -25
  19. package/dist/esm/i18n/es.json.js.map +1 -1
  20. package/dist/esm/i18n/fr.json.js +1 -25
  21. package/dist/esm/i18n/fr.json.js.map +1 -1
  22. package/dist/esm/types/session.js.map +1 -1
  23. package/package.json +1 -1
  24. package/dist/cjs/components/start-flow/CGU.js +0 -132
  25. package/dist/cjs/components/start-flow/CGU.js.map +0 -1
  26. package/dist/cjs/components/ui/LanguageSelector.js +0 -46
  27. package/dist/cjs/components/ui/LanguageSelector.js.map +0 -1
  28. package/dist/cjs/utils/languageFlags.js +0 -46
  29. package/dist/cjs/utils/languageFlags.js.map +0 -1
  30. package/dist/esm/components/start-flow/CGU.js +0 -108
  31. package/dist/esm/components/start-flow/CGU.js.map +0 -1
  32. package/dist/esm/components/ui/LanguageSelector.js +0 -42
  33. package/dist/esm/components/ui/LanguageSelector.js.map +0 -1
  34. package/dist/esm/utils/languageFlags.js +0 -42
  35. package/dist/esm/utils/languageFlags.js.map +0 -1
@@ -1,42 +0,0 @@
1
- import { __awaiter, __generator } from '../../node_modules/tslib/tslib.es6.js';
2
- import { jsxs, jsx } from 'react/jsx-runtime';
3
- import { useState, useRef, useEffect } from 'react';
4
- import { useI18n } from '../../hooks/useI18n.js';
5
- import { getSupportedLanguages, getLanguageAlpha2 } from '../../utils/languageFlags.js';
6
- import { CircleFlag } from 'react-circle-flags';
7
-
8
- var LanguageSelector = function (_a) {
9
- var _b = _a.className, className = _b === void 0 ? '' : _b, languages = _a.languages;
10
- var _c = useI18n(), currentLanguage = _c.currentLanguage, setLanguage = _c.setLanguage; _c.t;
11
- var _d = useState(false), isOpen = _d[0], setIsOpen = _d[1];
12
- var dropdownRef = useRef(null);
13
- var languageFormat = languages
14
- ? languages.map(function (code) { return getSupportedLanguages().find(function (lang) { return lang.code === code; }); }).filter(Boolean)
15
- : getSupportedLanguages();
16
- var currentLangInfo = languageFormat.find(function (lang) { return lang.code === currentLanguage; }) || languageFormat[0];
17
- var handleLanguageChange = function (languageCode) { return __awaiter(void 0, void 0, void 0, function () {
18
- return __generator(this, function (_a) {
19
- switch (_a.label) {
20
- case 0: return [4 /*yield*/, setLanguage(languageCode)];
21
- case 1:
22
- _a.sent();
23
- setIsOpen(false);
24
- return [2 /*return*/];
25
- }
26
- });
27
- }); };
28
- // Close dropdown when clicking outside
29
- useEffect(function () {
30
- var handleClickOutside = function (event) {
31
- if (dropdownRef.current && !dropdownRef.current.contains(event.target)) {
32
- setIsOpen(false);
33
- }
34
- };
35
- document.addEventListener('mousedown', handleClickOutside);
36
- return function () { return document.removeEventListener('mousedown', handleClickOutside); };
37
- }, []);
38
- return (jsxs("div", { className: "relative ".concat(className), ref: dropdownRef, children: [jsxs("button", { onClick: function () { return setIsOpen(!isOpen); }, className: "flex items-center space-x-2 px-3 py-2 text-sm border border-gray-300 rounded bg-white hover:bg-gray-50 focus:outline-none focus:ring-2 focus:ring-blue-500 min-w-[120px] mx-auto", children: [jsx("span", { className: "inline-flex items-center justify-center w-5 h-5 shrink-0 overflow-hidden rounded-full", children: jsx(CircleFlag, { countryCode: getLanguageAlpha2(currentLangInfo.code) || 'UN', height: 20 }) }), jsx("span", { className: "overflow-hidden text-ellipsis whitespace-nowrap", children: currentLangInfo.nativeName }), jsx("svg", { className: "w-4 h-4 transition-transform ".concat(isOpen ? 'rotate-180' : ''), fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M19 9l-7 7-7-7" }) })] }), isOpen && (jsx("div", { className: "absolute top-full left-1/2 transform -translate-x-1/2 mt-1 bg-white border border-gray-300 rounded shadow-lg z-50 max-h-48 overflow-y-auto min-w-[120px]", children: languageFormat.map(function (lang) { return (jsxs("button", { onClick: function () { return handleLanguageChange(lang.code); }, className: "w-full flex items-center space-x-2 px-3 py-2 text-sm hover:bg-gray-100 focus:outline-none focus:bg-gray-100 ".concat(lang.code === currentLanguage ? 'bg-blue-50 text-blue-600' : 'text-gray-700'), children: [jsx("span", { className: "inline-flex items-center justify-center w-5 h-5 shrink-0 overflow-hidden rounded-full", children: jsx(CircleFlag, { countryCode: getLanguageAlpha2(lang.code) || 'fr', height: 20 }) }), jsx("span", { className: "overflow-hidden text-ellipsis whitespace-nowrap", children: lang.nativeName })] }, lang.code)); }) }))] }));
39
- };
40
-
41
- export { LanguageSelector as default };
42
- //# sourceMappingURL=LanguageSelector.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LanguageSelector.js","sources":["../../../../../src/components/ui/LanguageSelector.tsx"],"sourcesContent":["import React, { useState, useRef, useEffect } from 'react';\nimport { useI18n } from '../../hooks/useI18n';\nimport { getLanguageAlpha2, getSupportedLanguages, LanguageFlag } from '../../utils/languageFlags';\nimport { CircleFlag } from 'react-circle-flags';\n\ninterface LanguageSelectorProps {\n className?: string;\n languages?: string[];\n}\n\nconst LanguageSelector: React.FC<LanguageSelectorProps> = ({ className = '', languages }) => {\n const { currentLanguage, setLanguage, t } = useI18n();\n const [isOpen, setIsOpen] = useState(false);\n const dropdownRef = useRef<HTMLDivElement>(null);\n\n const languageFormat: LanguageFlag[] = languages\n ? languages.map(code => getSupportedLanguages().find(lang => lang.code === code)!).filter(Boolean)\n : getSupportedLanguages();\n\n const currentLangInfo = languageFormat.find(lang => lang.code === currentLanguage) || languageFormat[0];\n\n const handleLanguageChange = async (languageCode: string) => {\n await setLanguage(languageCode);\n setIsOpen(false);\n };\n\n // Close dropdown when clicking outside\n useEffect(() => {\n const handleClickOutside = (event: MouseEvent) => {\n if (dropdownRef.current && !dropdownRef.current.contains(event.target as Node)) {\n setIsOpen(false);\n }\n };\n\n document.addEventListener('mousedown', handleClickOutside);\n return () => document.removeEventListener('mousedown', handleClickOutside);\n }, []);\n\n return (\n <div className={`relative ${className}`} ref={dropdownRef}>\n {/* Selected language display */}\n <button\n onClick={() => setIsOpen(!isOpen)}\n className=\"flex items-center space-x-2 px-3 py-2 text-sm border border-gray-300 rounded bg-white hover:bg-gray-50 focus:outline-none focus:ring-2 focus:ring-blue-500 min-w-[120px] mx-auto\"\n >\n <span className=\"inline-flex items-center justify-center w-5 h-5 shrink-0 overflow-hidden rounded-full\">\n <CircleFlag\n countryCode={getLanguageAlpha2(currentLangInfo.code) || 'UN'}\n height={20}\n />\n </span>\n <span className=\"overflow-hidden text-ellipsis whitespace-nowrap\">\n {currentLangInfo.nativeName}\n </span>\n <svg\n className={`w-4 h-4 transition-transform ${isOpen ? 'rotate-180' : ''}`}\n fill=\"none\"\n stroke=\"currentColor\"\n viewBox=\"0 0 24 24\"\n >\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth={2} d=\"M19 9l-7 7-7-7\" />\n </svg>\n </button>\n\n {/* Dropdown options */}\n {isOpen && (\n <div className=\"absolute top-full left-1/2 transform -translate-x-1/2 mt-1 bg-white border border-gray-300 rounded shadow-lg z-50 max-h-48 overflow-y-auto min-w-[120px]\">\n {languageFormat.map((lang) => (\n <button\n key={lang.code}\n onClick={() => handleLanguageChange(lang.code)}\n className={`w-full flex items-center space-x-2 px-3 py-2 text-sm hover:bg-gray-100 focus:outline-none focus:bg-gray-100 ${lang.code === currentLanguage ? 'bg-blue-50 text-blue-600' : 'text-gray-700'\n }`}\n >\n <span className=\"inline-flex items-center justify-center w-5 h-5 shrink-0 overflow-hidden rounded-full\">\n <CircleFlag\n countryCode={getLanguageAlpha2(lang.code) || 'fr'}\n height={20}\n />\n </span>\n <span className=\"overflow-hidden text-ellipsis whitespace-nowrap\">\n {lang.nativeName}\n </span>\n </button>\n ))}\n </div>\n )}\n </div>\n );\n};\n\nexport default LanguageSelector;"],"names":["_jsxs","_jsx"],"mappings":"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"}
@@ -1,42 +0,0 @@
1
- /**
2
- * Mapping of language codes to country flags and names
3
- */
4
- var LANGUAGE_FLAGS = {
5
- fr: {
6
- code: 'fr',
7
- name: 'French',
8
- alpha2: 'fr',
9
- nativeName: 'Français'
10
- },
11
- en: {
12
- code: 'en',
13
- name: 'English',
14
- alpha2: 'gb',
15
- nativeName: 'English'
16
- },
17
- es: {
18
- code: 'es',
19
- name: 'Spanish',
20
- alpha2: 'es',
21
- nativeName: 'Español'
22
- }
23
- };
24
- /**
25
- * Get flag for a language code
26
- * @param languageCode - The language code (e.g., 'fr', 'en')
27
- * @returns The flag emoji or empty string if not found
28
- */
29
- var getLanguageAlpha2 = function (languageCode) {
30
- var _a;
31
- return (_a = LANGUAGE_FLAGS[languageCode]) === null || _a === void 0 ? void 0 : _a.alpha2;
32
- };
33
- /**
34
- * Get all supported languages with their flags
35
- * @returns Array of all supported language flags
36
- */
37
- var getSupportedLanguages = function () {
38
- return Object.values(LANGUAGE_FLAGS);
39
- };
40
-
41
- export { LANGUAGE_FLAGS, getLanguageAlpha2, getSupportedLanguages };
42
- //# sourceMappingURL=languageFlags.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"languageFlags.js","sources":["../../../../src/utils/languageFlags.ts"],"sourcesContent":["/**\n * Language flag mapping utility\n * Maps language codes to their corresponding country flags\n */\nexport interface LanguageFlag {\n code: string;\n name: string;\n alpha2: string;\n nativeName: string;\n}\n\n/**\n * Mapping of language codes to country flags and names\n */\nexport const LANGUAGE_FLAGS: Record<string, LanguageFlag> = {\n fr: {\n code: 'fr',\n name: 'French',\n alpha2: 'fr',\n nativeName: 'Français'\n },\n en: {\n code: 'en',\n name: 'English',\n alpha2: 'gb',\n nativeName: 'English'\n },\n es: {\n code: 'es',\n name: 'Spanish',\n alpha2: 'es',\n nativeName: 'Español'\n }\n};\n\n/**\n * Get flag for a language code\n * @param languageCode - The language code (e.g., 'fr', 'en')\n * @returns The flag emoji or empty string if not found\n*/\nexport const getLanguageAlpha2 = (languageCode: string): string | null => {\n return LANGUAGE_FLAGS[languageCode]?.alpha2;\n};\n\n/**\n * Get language info for a language code\n * @param languageCode - The language code (e.g., 'fr', 'en')\n * @returns The language flag info or null if not found\n */\nexport const getLanguageInfo = (languageCode: string): LanguageFlag | null => {\n return LANGUAGE_FLAGS[languageCode] || null;\n};\n\n/**\n * Get all supported languages with their flags\n * @returns Array of all supported language flags\n */\nexport const getSupportedLanguages = (): LanguageFlag[] => {\n return Object.values(LANGUAGE_FLAGS);\n};\n\n/**\n * Check if a language code is supported\n * @param languageCode - The language code to check\n * @returns True if the language is supported\n */\nexport const isLanguageSupported = (languageCode: string): boolean => {\n return languageCode in LANGUAGE_FLAGS;\n};\n"],"names":[],"mappings":"AAWA;;AAEG;AACI,IAAM,cAAc,GAAiC;AAC1D,IAAA,EAAE,EAAE;AACF,QAAA,IAAI,EAAE,IAAI;AACV,QAAA,IAAI,EAAE,QAAQ;AACd,QAAA,MAAM,EAAE,IAAI;AACZ,QAAA,UAAU,EAAE;AACb,KAAA;AACD,IAAA,EAAE,EAAE;AACF,QAAA,IAAI,EAAE,IAAI;AACV,QAAA,IAAI,EAAE,SAAS;AACf,QAAA,MAAM,EAAE,IAAI;AACZ,QAAA,UAAU,EAAE;AACb,KAAA;AACD,IAAA,EAAE,EAAE;AACF,QAAA,IAAI,EAAE,IAAI;AACV,QAAA,IAAI,EAAE,SAAS;AACf,QAAA,MAAM,EAAE,IAAI;AACZ,QAAA,UAAU,EAAE;AACb;;AAGH;;;;AAIE;AACK,IAAM,iBAAiB,GAAG,UAAC,YAAoB,EAAA;;AAClD,IAAA,OAAO,MAAA,cAAc,CAAC,YAAY,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,MAAM;AAC/C;AAWA;;;AAGG;AACI,IAAM,qBAAqB,GAAG,YAAA;AACnC,IAAA,OAAO,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC;AACtC;;;;"}