@qite/tide-booking-component 1.4.60 → 1.4.62
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.
- package/build/build-cjs/index.js +131 -1
- package/build/build-cjs/src/content/components/image-with-text.d.ts +2 -1
- package/build/build-cjs/src/content/image-with-text-section/card.d.ts +4 -0
- package/build/build-cjs/src/content/image-with-text-section/index.d.ts +4 -0
- package/build/build-cjs/src/content/image-with-text-section/types.d.ts +19 -0
- package/build/build-cjs/src/content/navbar/placeholderData.d.ts +2 -0
- package/build/build-cjs/src/content/navbar/types.d.ts +4 -0
- package/build/build-cjs/src/index.d.ts +3 -1
- package/build/build-cjs/src/shared/utils/localization-util.d.ts +1 -0
- package/build/build-esm/index.js +129 -2
- package/build/build-esm/src/content/components/image-with-text.d.ts +2 -1
- package/build/build-esm/src/content/image-with-text-section/card.d.ts +4 -0
- package/build/build-esm/src/content/image-with-text-section/index.d.ts +4 -0
- package/build/build-esm/src/content/image-with-text-section/types.d.ts +19 -0
- package/build/build-esm/src/content/navbar/placeholderData.d.ts +2 -0
- package/build/build-esm/src/content/navbar/types.d.ts +4 -0
- package/build/build-esm/src/index.d.ts +3 -1
- package/build/build-esm/src/shared/utils/localization-util.d.ts +1 -0
- package/package.json +1 -1
- package/src/content/components/image-with-text.tsx +8 -6
- package/src/content/image-with-text-section/card.tsx +58 -0
- package/src/content/image-with-text-section/index.tsx +22 -0
- package/src/content/image-with-text-section/types.ts +20 -0
- package/src/content/navbar/index.tsx +38 -1
- package/src/content/navbar/placeholderData.tsx +15 -4
- package/src/content/navbar/types.ts +6 -0
- package/src/index.ts +3 -1
- package/src/shared/translations/ar-SA.json +1 -0
- package/src/shared/translations/da-DK.json +1 -0
- package/src/shared/translations/de-DE.json +1 -0
- package/src/shared/translations/en-GB.json +1 -0
- package/src/shared/translations/es-ES.json +1 -0
- package/src/shared/translations/fr-BE.json +1 -0
- package/src/shared/translations/fr-FR.json +1 -0
- package/src/shared/translations/is-IS.json +1 -0
- package/src/shared/translations/it-IT.json +1 -0
- package/src/shared/translations/ja-JP.json +1 -0
- package/src/shared/translations/nl-BE.json +1 -0
- package/src/shared/translations/nl-NL.json +1 -0
- package/src/shared/translations/no-NO.json +1 -0
- package/src/shared/translations/pl-PL.json +1 -0
- package/src/shared/translations/pt-PT.json +1 -0
- package/src/shared/translations/sv-SE.json +1 -0
- package/styles/components/_image-with-text.scss +31 -34
- package/styles/components/_navbar.scss +18 -0
package/build/build-cjs/index.js
CHANGED
|
@@ -516,6 +516,7 @@ var LOGIN$f = {
|
|
|
516
516
|
PASSWORD_REQUIRED: 'كلمة المرور مطلوبة.',
|
|
517
517
|
INVALID_CREDENTIALS: 'البريد الإلكتروني أو كلمة المرور غير صحيحة.',
|
|
518
518
|
LOGIN: 'تسجيل الدخول',
|
|
519
|
+
LOGOUT: 'تسجيل الخروج',
|
|
519
520
|
FORGOT_PASSWORD: 'هل نسيت كلمة المرور؟',
|
|
520
521
|
LOGGING_IN: 'جاري تسجيل الدخول...',
|
|
521
522
|
WELCOME_X: 'مرحبًا، ',
|
|
@@ -913,6 +914,7 @@ var LOGIN$e = {
|
|
|
913
914
|
PASSWORD_REQUIRED: 'Adgangskode er påkrævet.',
|
|
914
915
|
INVALID_CREDENTIALS: 'Ugyldig e-mail eller adgangskode.',
|
|
915
916
|
LOGIN: 'Log ind',
|
|
917
|
+
LOGOUT: 'Log ud',
|
|
916
918
|
FORGOT_PASSWORD: 'Glemt adgangskode?',
|
|
917
919
|
LOGGING_IN: 'Logger ind...',
|
|
918
920
|
WELCOME_X: 'Velkommen, ',
|
|
@@ -1311,6 +1313,7 @@ var LOGIN$d = {
|
|
|
1311
1313
|
PASSWORD_REQUIRED: 'Passwort ist erforderlich.',
|
|
1312
1314
|
INVALID_CREDENTIALS: 'Ungültige E-Mail oder Passwort.',
|
|
1313
1315
|
LOGIN: 'Anmelden',
|
|
1316
|
+
LOGOUT: 'Abmelden',
|
|
1314
1317
|
FORGOT_PASSWORD: 'Passwort vergessen?',
|
|
1315
1318
|
LOGGING_IN: 'Anmeldung läuft...',
|
|
1316
1319
|
WELCOME_X: 'Willkommen, ',
|
|
@@ -1712,6 +1715,7 @@ var LOGIN$c = {
|
|
|
1712
1715
|
PASSWORD_REQUIRED: 'Password is required.',
|
|
1713
1716
|
INVALID_CREDENTIALS: 'Invalid email or password.',
|
|
1714
1717
|
LOGIN: 'Login',
|
|
1718
|
+
LOGOUT: 'Logout',
|
|
1715
1719
|
FORGOT_PASSWORD: 'Forgot password?',
|
|
1716
1720
|
LOGGING_IN: 'Logging in...',
|
|
1717
1721
|
WELCOME_X: 'Welcome, ',
|
|
@@ -2110,6 +2114,7 @@ var LOGIN$b = {
|
|
|
2110
2114
|
PASSWORD_REQUIRED: 'La contraseña es obligatoria.',
|
|
2111
2115
|
INVALID_CREDENTIALS: 'Correo electrónico o contraseña no válidos.',
|
|
2112
2116
|
LOGIN: 'Iniciar sesión',
|
|
2117
|
+
LOGOUT: 'Cerrar sesión',
|
|
2113
2118
|
FORGOT_PASSWORD: '¿Olvidaste tu contraseña?',
|
|
2114
2119
|
LOGGING_IN: 'Iniciando sesión...',
|
|
2115
2120
|
WELCOME_X: 'Bienvenido, ',
|
|
@@ -2512,6 +2517,7 @@ var LOGIN$a = {
|
|
|
2512
2517
|
PASSWORD_REQUIRED: 'Le mot de passe est requis.',
|
|
2513
2518
|
INVALID_CREDENTIALS: 'Email ou mot de passe invalide.',
|
|
2514
2519
|
LOGIN: 'Se connecter',
|
|
2520
|
+
LOGOUT: 'Se déconnecter',
|
|
2515
2521
|
FORGOT_PASSWORD: 'Mot de passe oublié ?',
|
|
2516
2522
|
LOGGING_IN: 'Connexion...',
|
|
2517
2523
|
WELCOME_X: 'Bienvenue, ',
|
|
@@ -2909,6 +2915,7 @@ var LOGIN$9 = {
|
|
|
2909
2915
|
PASSWORD_REQUIRED: 'Le mot de passe est requis.',
|
|
2910
2916
|
INVALID_CREDENTIALS: 'Email ou mot de passe invalide.',
|
|
2911
2917
|
LOGIN: 'Se connecter',
|
|
2918
|
+
LOGOUT: 'Se déconnecter',
|
|
2912
2919
|
FORGOT_PASSWORD: 'Mot de passe oublié ?',
|
|
2913
2920
|
LOGGING_IN: 'Connexion...',
|
|
2914
2921
|
WELCOME_X: 'Bienvenue, ',
|
|
@@ -3306,6 +3313,7 @@ var LOGIN$8 = {
|
|
|
3306
3313
|
PASSWORD_REQUIRED: 'Lykilorð er nauðsynlegt.',
|
|
3307
3314
|
INVALID_CREDENTIALS: 'Ógilt netfang eða lykilorð.',
|
|
3308
3315
|
LOGIN: 'Skrá inn',
|
|
3316
|
+
LOGOUT: 'Skrá út',
|
|
3309
3317
|
FORGOT_PASSWORD: 'Gleymt lykilorð?',
|
|
3310
3318
|
LOGGING_IN: 'Skrái inn...',
|
|
3311
3319
|
WELCOME_X: 'Velkomin, ',
|
|
@@ -3704,6 +3712,7 @@ var LOGIN$7 = {
|
|
|
3704
3712
|
PASSWORD_REQUIRED: 'La password è obbligatoria.',
|
|
3705
3713
|
INVALID_CREDENTIALS: 'Email o password non validi.',
|
|
3706
3714
|
LOGIN: 'Accedi',
|
|
3715
|
+
LOGOUT: 'Esci',
|
|
3707
3716
|
FORGOT_PASSWORD: 'Password dimenticata?',
|
|
3708
3717
|
LOGGING_IN: 'Accesso in corso...',
|
|
3709
3718
|
WELCOME_X: 'Benvenuto, ',
|
|
@@ -4106,6 +4115,7 @@ var LOGIN$6 = {
|
|
|
4106
4115
|
PASSWORD_REQUIRED: 'Wachtwoord is verplicht.',
|
|
4107
4116
|
INVALID_CREDENTIALS: 'Ongeldig e-mailadres of wachtwoord.',
|
|
4108
4117
|
LOGIN: 'Inloggen',
|
|
4118
|
+
LOGOUT: 'Uitloggen',
|
|
4109
4119
|
FORGOT_PASSWORD: 'Wachtwoord vergeten?',
|
|
4110
4120
|
LOGGING_IN: 'Bezig met inloggen...',
|
|
4111
4121
|
WELCOME_X: 'Welkom, ',
|
|
@@ -4504,6 +4514,7 @@ var LOGIN$5 = {
|
|
|
4504
4514
|
PASSWORD_REQUIRED: 'Wachtwoord is verplicht.',
|
|
4505
4515
|
INVALID_CREDENTIALS: 'Ongeldig e-mailadres of wachtwoord.',
|
|
4506
4516
|
LOGIN: 'Inloggen',
|
|
4517
|
+
LOGOUT: 'Uitloggen',
|
|
4507
4518
|
FORGOT_PASSWORD: 'Wachtwoord vergeten?',
|
|
4508
4519
|
LOGGING_IN: 'Bezig met inloggen...',
|
|
4509
4520
|
WELCOME_X: 'Welkom, ',
|
|
@@ -4902,6 +4913,7 @@ var LOGIN$4 = {
|
|
|
4902
4913
|
PASSWORD_REQUIRED: 'Passord er påkrevd.',
|
|
4903
4914
|
INVALID_CREDENTIALS: 'Ugyldig e-post eller passord.',
|
|
4904
4915
|
LOGIN: 'Logg inn',
|
|
4916
|
+
LOGOUT: 'Logg ut',
|
|
4905
4917
|
FORGOT_PASSWORD: 'Glemt passord?',
|
|
4906
4918
|
LOGGING_IN: 'Logger inn...',
|
|
4907
4919
|
WELCOME_X: 'Velkommen, ',
|
|
@@ -5300,6 +5312,7 @@ var LOGIN$3 = {
|
|
|
5300
5312
|
PASSWORD_REQUIRED: 'Hasło jest wymagane.',
|
|
5301
5313
|
INVALID_CREDENTIALS: 'Nieprawidłowy adres e-mail lub hasło.',
|
|
5302
5314
|
LOGIN: 'Zaloguj się',
|
|
5315
|
+
LOGOUT: 'Wyloguj się',
|
|
5303
5316
|
FORGOT_PASSWORD: 'Zapomniałeś hasła?',
|
|
5304
5317
|
LOGGING_IN: 'Logowanie...',
|
|
5305
5318
|
WELCOME_X: 'Witaj, ',
|
|
@@ -5698,6 +5711,7 @@ var LOGIN$2 = {
|
|
|
5698
5711
|
PASSWORD_REQUIRED: 'A palavra-passe é obrigatória.',
|
|
5699
5712
|
INVALID_CREDENTIALS: 'Email ou palavra-passe inválidos.',
|
|
5700
5713
|
LOGIN: 'Iniciar sessão',
|
|
5714
|
+
LOGOUT: 'Terminar sessão',
|
|
5701
5715
|
FORGOT_PASSWORD: 'Esqueceu a palavra-passe?',
|
|
5702
5716
|
LOGGING_IN: 'A iniciar sessão...',
|
|
5703
5717
|
WELCOME_X: 'Bem-vindo, ',
|
|
@@ -6096,6 +6110,7 @@ var LOGIN$1 = {
|
|
|
6096
6110
|
PASSWORD_REQUIRED: 'Lösenord krävs.',
|
|
6097
6111
|
INVALID_CREDENTIALS: 'Ogiltig e-post eller lösenord.',
|
|
6098
6112
|
LOGIN: 'Logga in',
|
|
6113
|
+
LOGOUT: 'Logga ut',
|
|
6099
6114
|
FORGOT_PASSWORD: 'Glömt lösenord?',
|
|
6100
6115
|
LOGGING_IN: 'Loggar in...',
|
|
6101
6116
|
WELCOME_X: 'Välkommen, ',
|
|
@@ -6492,6 +6507,7 @@ var LOGIN = {
|
|
|
6492
6507
|
PASSWORD_REQUIRED: 'パスワードは必須です。',
|
|
6493
6508
|
INVALID_CREDENTIALS: 'メールアドレスまたはパスワードが無効です。',
|
|
6494
6509
|
LOGIN: 'ログイン',
|
|
6510
|
+
LOGOUT: 'ログアウト',
|
|
6495
6511
|
FORGOT_PASSWORD: 'パスワードをお忘れですか?',
|
|
6496
6512
|
LOGGING_IN: 'ログイン中...',
|
|
6497
6513
|
WELCOME_X: 'ようこそ、',
|
|
@@ -29669,7 +29685,10 @@ var Navbar = function (_a) {
|
|
|
29669
29685
|
language = _a.language,
|
|
29670
29686
|
languages = _a.languages,
|
|
29671
29687
|
onLanguageChange = _a.onLanguageChange,
|
|
29672
|
-
onSearch = _a.onSearch
|
|
29688
|
+
onSearch = _a.onSearch,
|
|
29689
|
+
member = _a.member,
|
|
29690
|
+
onLogin = _a.onLogin,
|
|
29691
|
+
onLogout = _a.onLogout;
|
|
29673
29692
|
var _c = React.useState(false),
|
|
29674
29693
|
menuOpen = _c[0],
|
|
29675
29694
|
setMenuOpen = _c[1];
|
|
@@ -29897,6 +29916,18 @@ var Navbar = function (_a) {
|
|
|
29897
29916
|
)
|
|
29898
29917
|
);
|
|
29899
29918
|
};
|
|
29919
|
+
var handleLogout = function (event) {
|
|
29920
|
+
event.preventDefault();
|
|
29921
|
+
if (onLogout) {
|
|
29922
|
+
onLogout();
|
|
29923
|
+
}
|
|
29924
|
+
};
|
|
29925
|
+
var handleLogin = function (event) {
|
|
29926
|
+
event.preventDefault();
|
|
29927
|
+
if (onLogin) {
|
|
29928
|
+
onLogin();
|
|
29929
|
+
}
|
|
29930
|
+
};
|
|
29900
29931
|
return React__default['default'].createElement(
|
|
29901
29932
|
React__default['default'].Fragment,
|
|
29902
29933
|
null,
|
|
@@ -29909,6 +29940,20 @@ var Navbar = function (_a) {
|
|
|
29909
29940
|
React__default['default'].createElement(
|
|
29910
29941
|
'div',
|
|
29911
29942
|
{ className: 'nav__subnav__links' },
|
|
29943
|
+
member && React__default['default'].createElement('span', { className: 'nav__subnav__member' }, translations.LOGIN.WELCOME_X, member.name),
|
|
29944
|
+
member
|
|
29945
|
+
? React__default['default'].createElement(
|
|
29946
|
+
React__default['default'].Fragment,
|
|
29947
|
+
null,
|
|
29948
|
+
onLogout &&
|
|
29949
|
+
React__default['default'].createElement('a', { href: '#', className: 'nav__subnav__link', onClick: handleLogout }, translations.LOGIN.LOGOUT)
|
|
29950
|
+
)
|
|
29951
|
+
: React__default['default'].createElement(
|
|
29952
|
+
React__default['default'].Fragment,
|
|
29953
|
+
null,
|
|
29954
|
+
onLogin &&
|
|
29955
|
+
React__default['default'].createElement('a', { href: '#', className: 'nav__subnav__link', onClick: handleLogin }, translations.LOGIN.LOGIN)
|
|
29956
|
+
),
|
|
29912
29957
|
React__default['default'].createElement(LanguageSwitcher, {
|
|
29913
29958
|
value: language.code,
|
|
29914
29959
|
languages: languages,
|
|
@@ -44864,6 +44909,90 @@ var Login = function (_a) {
|
|
|
44864
44909
|
);
|
|
44865
44910
|
};
|
|
44866
44911
|
|
|
44912
|
+
var ImageWithTextCard = function (_a) {
|
|
44913
|
+
var noCard = _a.noCard,
|
|
44914
|
+
fullImage = _a.fullImage,
|
|
44915
|
+
reverse = _a.reverse,
|
|
44916
|
+
imageSrc = _a.imageSrc,
|
|
44917
|
+
imageAlt = _a.imageAlt,
|
|
44918
|
+
title = _a.title,
|
|
44919
|
+
activityTitle = _a.activityTitle,
|
|
44920
|
+
activityText = _a.activityText,
|
|
44921
|
+
detailsTitle = _a.detailsTitle,
|
|
44922
|
+
detailsText = _a.detailsText,
|
|
44923
|
+
buttonText = _a.buttonText,
|
|
44924
|
+
onButtonClick = _a.onButtonClick;
|
|
44925
|
+
var cardClassName = 'image-with-text__card';
|
|
44926
|
+
if (noCard) {
|
|
44927
|
+
cardClassName += ' image-with-text__card--no-card';
|
|
44928
|
+
}
|
|
44929
|
+
if (fullImage) {
|
|
44930
|
+
cardClassName += ' image-with-text__card--full-image';
|
|
44931
|
+
}
|
|
44932
|
+
if (reverse) {
|
|
44933
|
+
cardClassName += ' image-with-text__card--reverse';
|
|
44934
|
+
}
|
|
44935
|
+
return React__default['default'].createElement(
|
|
44936
|
+
'div',
|
|
44937
|
+
{ className: cardClassName },
|
|
44938
|
+
React__default['default'].createElement(
|
|
44939
|
+
'div',
|
|
44940
|
+
{ className: 'image-with-text__card__image__wrapper' },
|
|
44941
|
+
React__default['default'].createElement('img', { src: imageSrc, alt: imageAlt, className: 'image-with-text__card__image' })
|
|
44942
|
+
),
|
|
44943
|
+
React__default['default'].createElement(
|
|
44944
|
+
'div',
|
|
44945
|
+
{ className: 'image-with-text__card__content' },
|
|
44946
|
+
React__default['default'].createElement('h3', { className: 'image-with-text__card__title' }, title),
|
|
44947
|
+
React__default['default'].createElement(
|
|
44948
|
+
'div',
|
|
44949
|
+
{ className: 'image-with-text__card__description' },
|
|
44950
|
+
React__default['default'].createElement('h5', { className: 'image-with-text__card__description__title' }, activityTitle),
|
|
44951
|
+
React__default['default'].createElement('p', { className: 'image-with-text__card__description__text' }, activityText)
|
|
44952
|
+
),
|
|
44953
|
+
React__default['default'].createElement(
|
|
44954
|
+
'div',
|
|
44955
|
+
{ className: 'image-with-text__card__description' },
|
|
44956
|
+
React__default['default'].createElement('h5', { className: 'image-with-text__card__description__title' }, detailsTitle),
|
|
44957
|
+
React__default['default'].createElement('p', { className: 'image-with-text__card__description__text' }, detailsText)
|
|
44958
|
+
),
|
|
44959
|
+
React__default['default'].createElement(
|
|
44960
|
+
'div',
|
|
44961
|
+
{ className: 'image-with-text__card__btn' },
|
|
44962
|
+
React__default['default'].createElement('button', { type: 'button', className: 'cta cta--select', onClick: onButtonClick }, buttonText)
|
|
44963
|
+
)
|
|
44964
|
+
)
|
|
44965
|
+
);
|
|
44966
|
+
};
|
|
44967
|
+
|
|
44968
|
+
var ImageWithTextSection = function (_a) {
|
|
44969
|
+
var title = _a.title,
|
|
44970
|
+
hasBackground = _a.hasBackground,
|
|
44971
|
+
cards = _a.cards;
|
|
44972
|
+
var className = 'image-with-text '.concat(hasBackground ? 'image-with-text--background' : '');
|
|
44973
|
+
return React__default['default'].createElement(
|
|
44974
|
+
'div',
|
|
44975
|
+
{ className: className },
|
|
44976
|
+
React__default['default'].createElement(
|
|
44977
|
+
'div',
|
|
44978
|
+
{ className: 'image-with-text__container' },
|
|
44979
|
+
React__default['default'].createElement(
|
|
44980
|
+
'div',
|
|
44981
|
+
{ className: 'image-with-text__title__row' },
|
|
44982
|
+
React__default['default'].createElement('h2', { className: 'image-with-text__title' }, title)
|
|
44983
|
+
),
|
|
44984
|
+
React__default['default'].createElement(
|
|
44985
|
+
'div',
|
|
44986
|
+
{ className: 'image-with-text__card__wrapper' },
|
|
44987
|
+
!lodash.isEmpty(cards) &&
|
|
44988
|
+
cards.map(function (card, index) {
|
|
44989
|
+
return React__default['default'].createElement(ImageWithTextCard, __assign({ key: index }, card));
|
|
44990
|
+
})
|
|
44991
|
+
)
|
|
44992
|
+
)
|
|
44993
|
+
);
|
|
44994
|
+
};
|
|
44995
|
+
|
|
44867
44996
|
var signalR$1 = {};
|
|
44868
44997
|
|
|
44869
44998
|
var jqueryDeferred$1 = { exports: {} };
|
|
@@ -48763,6 +48892,7 @@ exports.BookingWizard = BookingWizard;
|
|
|
48763
48892
|
exports.Footer = Footer;
|
|
48764
48893
|
exports.Header = Header;
|
|
48765
48894
|
exports.ImageCardGrid = ImageCardGrid;
|
|
48895
|
+
exports.ImageWithTextSection = ImageWithTextSection;
|
|
48766
48896
|
exports.Login = Login;
|
|
48767
48897
|
exports.Navbar = Navbar;
|
|
48768
48898
|
exports.QSM = QSM;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
type Variant = 'image-with-
|
|
2
|
+
type Variant = 'image-with-text__card--no-card' | 'image-with-text__card--full-img';
|
|
3
3
|
interface ImageWithTextCardProps {
|
|
4
|
+
variant?: Variant;
|
|
4
5
|
reverse?: boolean;
|
|
5
6
|
imageSrc: string;
|
|
6
7
|
imageAlt: string;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export interface ImageWithTextSectionProps {
|
|
2
|
+
title: string;
|
|
3
|
+
hasBackground?: boolean;
|
|
4
|
+
cards: ImageWithTextCardProps[];
|
|
5
|
+
}
|
|
6
|
+
export interface ImageWithTextCardProps {
|
|
7
|
+
noCard?: boolean;
|
|
8
|
+
fullImage?: boolean;
|
|
9
|
+
reverse?: boolean;
|
|
10
|
+
imageSrc: string;
|
|
11
|
+
imageAlt: string;
|
|
12
|
+
title: string;
|
|
13
|
+
activityTitle: string;
|
|
14
|
+
activityText: string;
|
|
15
|
+
detailsTitle: string;
|
|
16
|
+
detailsText: string;
|
|
17
|
+
buttonText: string;
|
|
18
|
+
onButtonClick?: () => void;
|
|
19
|
+
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { Language, NavItem } from './types';
|
|
3
|
+
import { MemberInfo } from '@qite/tide-client';
|
|
3
4
|
export declare const language: Language;
|
|
4
5
|
export declare const languages: Language[];
|
|
5
6
|
export declare const topLinks: {
|
|
@@ -8,3 +9,4 @@ export declare const topLinks: {
|
|
|
8
9
|
}[];
|
|
9
10
|
export declare const navItems: NavItem[];
|
|
10
11
|
export declare const TideLogo: () => React.JSX.Element;
|
|
12
|
+
export declare const placeholderMember: MemberInfo;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { MemberInfo } from '@qite/tide-client';
|
|
1
2
|
export interface Language {
|
|
2
3
|
code: string;
|
|
3
4
|
label: string;
|
|
@@ -24,4 +25,7 @@ export interface NavbarProps {
|
|
|
24
25
|
languages: Language[];
|
|
25
26
|
onLanguageChange: (lang: string) => void;
|
|
26
27
|
onSearch: (query: string) => void;
|
|
28
|
+
member?: MemberInfo;
|
|
29
|
+
onLogin?: () => void;
|
|
30
|
+
onLogout?: () => void;
|
|
27
31
|
}
|
|
@@ -7,12 +7,14 @@ import QSM from './qsm';
|
|
|
7
7
|
import SearchResults from './search-results';
|
|
8
8
|
import ImageCardGrid from './content/image-card-grid';
|
|
9
9
|
import Login from './content/login';
|
|
10
|
+
import ImageWithTextSection from './content/image-with-text-section';
|
|
10
11
|
export * from './content/navbar/types';
|
|
11
12
|
export * from './content/header/types';
|
|
12
13
|
export * from './content/footer/types';
|
|
13
14
|
export * from './content/image-card-grid/types';
|
|
14
15
|
export * from './content/login/types';
|
|
16
|
+
export * from './content/image-with-text-section/types';
|
|
15
17
|
export * from './search-results/types';
|
|
16
18
|
export * from './qsm/types';
|
|
17
19
|
export * from './shared/types';
|
|
18
|
-
export { BookingProduct, BookingWizard, QSM, SearchResults, Navbar, Header, Footer, ImageCardGrid, Login };
|
|
20
|
+
export { BookingProduct, BookingWizard, QSM, SearchResults, Navbar, Header, Footer, ImageCardGrid, Login, ImageWithTextSection };
|
package/build/build-esm/index.js
CHANGED
|
@@ -547,6 +547,7 @@ var LOGIN$f = {
|
|
|
547
547
|
PASSWORD_REQUIRED: 'كلمة المرور مطلوبة.',
|
|
548
548
|
INVALID_CREDENTIALS: 'البريد الإلكتروني أو كلمة المرور غير صحيحة.',
|
|
549
549
|
LOGIN: 'تسجيل الدخول',
|
|
550
|
+
LOGOUT: 'تسجيل الخروج',
|
|
550
551
|
FORGOT_PASSWORD: 'هل نسيت كلمة المرور؟',
|
|
551
552
|
LOGGING_IN: 'جاري تسجيل الدخول...',
|
|
552
553
|
WELCOME_X: 'مرحبًا، ',
|
|
@@ -944,6 +945,7 @@ var LOGIN$e = {
|
|
|
944
945
|
PASSWORD_REQUIRED: 'Adgangskode er påkrævet.',
|
|
945
946
|
INVALID_CREDENTIALS: 'Ugyldig e-mail eller adgangskode.',
|
|
946
947
|
LOGIN: 'Log ind',
|
|
948
|
+
LOGOUT: 'Log ud',
|
|
947
949
|
FORGOT_PASSWORD: 'Glemt adgangskode?',
|
|
948
950
|
LOGGING_IN: 'Logger ind...',
|
|
949
951
|
WELCOME_X: 'Velkommen, ',
|
|
@@ -1342,6 +1344,7 @@ var LOGIN$d = {
|
|
|
1342
1344
|
PASSWORD_REQUIRED: 'Passwort ist erforderlich.',
|
|
1343
1345
|
INVALID_CREDENTIALS: 'Ungültige E-Mail oder Passwort.',
|
|
1344
1346
|
LOGIN: 'Anmelden',
|
|
1347
|
+
LOGOUT: 'Abmelden',
|
|
1345
1348
|
FORGOT_PASSWORD: 'Passwort vergessen?',
|
|
1346
1349
|
LOGGING_IN: 'Anmeldung läuft...',
|
|
1347
1350
|
WELCOME_X: 'Willkommen, ',
|
|
@@ -1743,6 +1746,7 @@ var LOGIN$c = {
|
|
|
1743
1746
|
PASSWORD_REQUIRED: 'Password is required.',
|
|
1744
1747
|
INVALID_CREDENTIALS: 'Invalid email or password.',
|
|
1745
1748
|
LOGIN: 'Login',
|
|
1749
|
+
LOGOUT: 'Logout',
|
|
1746
1750
|
FORGOT_PASSWORD: 'Forgot password?',
|
|
1747
1751
|
LOGGING_IN: 'Logging in...',
|
|
1748
1752
|
WELCOME_X: 'Welcome, ',
|
|
@@ -2141,6 +2145,7 @@ var LOGIN$b = {
|
|
|
2141
2145
|
PASSWORD_REQUIRED: 'La contraseña es obligatoria.',
|
|
2142
2146
|
INVALID_CREDENTIALS: 'Correo electrónico o contraseña no válidos.',
|
|
2143
2147
|
LOGIN: 'Iniciar sesión',
|
|
2148
|
+
LOGOUT: 'Cerrar sesión',
|
|
2144
2149
|
FORGOT_PASSWORD: '¿Olvidaste tu contraseña?',
|
|
2145
2150
|
LOGGING_IN: 'Iniciando sesión...',
|
|
2146
2151
|
WELCOME_X: 'Bienvenido, ',
|
|
@@ -2543,6 +2548,7 @@ var LOGIN$a = {
|
|
|
2543
2548
|
PASSWORD_REQUIRED: 'Le mot de passe est requis.',
|
|
2544
2549
|
INVALID_CREDENTIALS: 'Email ou mot de passe invalide.',
|
|
2545
2550
|
LOGIN: 'Se connecter',
|
|
2551
|
+
LOGOUT: 'Se déconnecter',
|
|
2546
2552
|
FORGOT_PASSWORD: 'Mot de passe oublié ?',
|
|
2547
2553
|
LOGGING_IN: 'Connexion...',
|
|
2548
2554
|
WELCOME_X: 'Bienvenue, ',
|
|
@@ -2940,6 +2946,7 @@ var LOGIN$9 = {
|
|
|
2940
2946
|
PASSWORD_REQUIRED: 'Le mot de passe est requis.',
|
|
2941
2947
|
INVALID_CREDENTIALS: 'Email ou mot de passe invalide.',
|
|
2942
2948
|
LOGIN: 'Se connecter',
|
|
2949
|
+
LOGOUT: 'Se déconnecter',
|
|
2943
2950
|
FORGOT_PASSWORD: 'Mot de passe oublié ?',
|
|
2944
2951
|
LOGGING_IN: 'Connexion...',
|
|
2945
2952
|
WELCOME_X: 'Bienvenue, ',
|
|
@@ -3337,6 +3344,7 @@ var LOGIN$8 = {
|
|
|
3337
3344
|
PASSWORD_REQUIRED: 'Lykilorð er nauðsynlegt.',
|
|
3338
3345
|
INVALID_CREDENTIALS: 'Ógilt netfang eða lykilorð.',
|
|
3339
3346
|
LOGIN: 'Skrá inn',
|
|
3347
|
+
LOGOUT: 'Skrá út',
|
|
3340
3348
|
FORGOT_PASSWORD: 'Gleymt lykilorð?',
|
|
3341
3349
|
LOGGING_IN: 'Skrái inn...',
|
|
3342
3350
|
WELCOME_X: 'Velkomin, ',
|
|
@@ -3735,6 +3743,7 @@ var LOGIN$7 = {
|
|
|
3735
3743
|
PASSWORD_REQUIRED: 'La password è obbligatoria.',
|
|
3736
3744
|
INVALID_CREDENTIALS: 'Email o password non validi.',
|
|
3737
3745
|
LOGIN: 'Accedi',
|
|
3746
|
+
LOGOUT: 'Esci',
|
|
3738
3747
|
FORGOT_PASSWORD: 'Password dimenticata?',
|
|
3739
3748
|
LOGGING_IN: 'Accesso in corso...',
|
|
3740
3749
|
WELCOME_X: 'Benvenuto, ',
|
|
@@ -4137,6 +4146,7 @@ var LOGIN$6 = {
|
|
|
4137
4146
|
PASSWORD_REQUIRED: 'Wachtwoord is verplicht.',
|
|
4138
4147
|
INVALID_CREDENTIALS: 'Ongeldig e-mailadres of wachtwoord.',
|
|
4139
4148
|
LOGIN: 'Inloggen',
|
|
4149
|
+
LOGOUT: 'Uitloggen',
|
|
4140
4150
|
FORGOT_PASSWORD: 'Wachtwoord vergeten?',
|
|
4141
4151
|
LOGGING_IN: 'Bezig met inloggen...',
|
|
4142
4152
|
WELCOME_X: 'Welkom, ',
|
|
@@ -4535,6 +4545,7 @@ var LOGIN$5 = {
|
|
|
4535
4545
|
PASSWORD_REQUIRED: 'Wachtwoord is verplicht.',
|
|
4536
4546
|
INVALID_CREDENTIALS: 'Ongeldig e-mailadres of wachtwoord.',
|
|
4537
4547
|
LOGIN: 'Inloggen',
|
|
4548
|
+
LOGOUT: 'Uitloggen',
|
|
4538
4549
|
FORGOT_PASSWORD: 'Wachtwoord vergeten?',
|
|
4539
4550
|
LOGGING_IN: 'Bezig met inloggen...',
|
|
4540
4551
|
WELCOME_X: 'Welkom, ',
|
|
@@ -4933,6 +4944,7 @@ var LOGIN$4 = {
|
|
|
4933
4944
|
PASSWORD_REQUIRED: 'Passord er påkrevd.',
|
|
4934
4945
|
INVALID_CREDENTIALS: 'Ugyldig e-post eller passord.',
|
|
4935
4946
|
LOGIN: 'Logg inn',
|
|
4947
|
+
LOGOUT: 'Logg ut',
|
|
4936
4948
|
FORGOT_PASSWORD: 'Glemt passord?',
|
|
4937
4949
|
LOGGING_IN: 'Logger inn...',
|
|
4938
4950
|
WELCOME_X: 'Velkommen, ',
|
|
@@ -5331,6 +5343,7 @@ var LOGIN$3 = {
|
|
|
5331
5343
|
PASSWORD_REQUIRED: 'Hasło jest wymagane.',
|
|
5332
5344
|
INVALID_CREDENTIALS: 'Nieprawidłowy adres e-mail lub hasło.',
|
|
5333
5345
|
LOGIN: 'Zaloguj się',
|
|
5346
|
+
LOGOUT: 'Wyloguj się',
|
|
5334
5347
|
FORGOT_PASSWORD: 'Zapomniałeś hasła?',
|
|
5335
5348
|
LOGGING_IN: 'Logowanie...',
|
|
5336
5349
|
WELCOME_X: 'Witaj, ',
|
|
@@ -5729,6 +5742,7 @@ var LOGIN$2 = {
|
|
|
5729
5742
|
PASSWORD_REQUIRED: 'A palavra-passe é obrigatória.',
|
|
5730
5743
|
INVALID_CREDENTIALS: 'Email ou palavra-passe inválidos.',
|
|
5731
5744
|
LOGIN: 'Iniciar sessão',
|
|
5745
|
+
LOGOUT: 'Terminar sessão',
|
|
5732
5746
|
FORGOT_PASSWORD: 'Esqueceu a palavra-passe?',
|
|
5733
5747
|
LOGGING_IN: 'A iniciar sessão...',
|
|
5734
5748
|
WELCOME_X: 'Bem-vindo, ',
|
|
@@ -6127,6 +6141,7 @@ var LOGIN$1 = {
|
|
|
6127
6141
|
PASSWORD_REQUIRED: 'Lösenord krävs.',
|
|
6128
6142
|
INVALID_CREDENTIALS: 'Ogiltig e-post eller lösenord.',
|
|
6129
6143
|
LOGIN: 'Logga in',
|
|
6144
|
+
LOGOUT: 'Logga ut',
|
|
6130
6145
|
FORGOT_PASSWORD: 'Glömt lösenord?',
|
|
6131
6146
|
LOGGING_IN: 'Loggar in...',
|
|
6132
6147
|
WELCOME_X: 'Välkommen, ',
|
|
@@ -6523,6 +6538,7 @@ var LOGIN = {
|
|
|
6523
6538
|
PASSWORD_REQUIRED: 'パスワードは必須です。',
|
|
6524
6539
|
INVALID_CREDENTIALS: 'メールアドレスまたはパスワードが無効です。',
|
|
6525
6540
|
LOGIN: 'ログイン',
|
|
6541
|
+
LOGOUT: 'ログアウト',
|
|
6526
6542
|
FORGOT_PASSWORD: 'パスワードをお忘れですか?',
|
|
6527
6543
|
LOGGING_IN: 'ログイン中...',
|
|
6528
6544
|
WELCOME_X: 'ようこそ、',
|
|
@@ -29558,7 +29574,10 @@ var Navbar = function (_a) {
|
|
|
29558
29574
|
language = _a.language,
|
|
29559
29575
|
languages = _a.languages,
|
|
29560
29576
|
onLanguageChange = _a.onLanguageChange,
|
|
29561
|
-
onSearch = _a.onSearch
|
|
29577
|
+
onSearch = _a.onSearch,
|
|
29578
|
+
member = _a.member,
|
|
29579
|
+
onLogin = _a.onLogin,
|
|
29580
|
+
onLogout = _a.onLogout;
|
|
29562
29581
|
var _c = useState(false),
|
|
29563
29582
|
menuOpen = _c[0],
|
|
29564
29583
|
setMenuOpen = _c[1];
|
|
@@ -29786,6 +29805,18 @@ var Navbar = function (_a) {
|
|
|
29786
29805
|
)
|
|
29787
29806
|
);
|
|
29788
29807
|
};
|
|
29808
|
+
var handleLogout = function (event) {
|
|
29809
|
+
event.preventDefault();
|
|
29810
|
+
if (onLogout) {
|
|
29811
|
+
onLogout();
|
|
29812
|
+
}
|
|
29813
|
+
};
|
|
29814
|
+
var handleLogin = function (event) {
|
|
29815
|
+
event.preventDefault();
|
|
29816
|
+
if (onLogin) {
|
|
29817
|
+
onLogin();
|
|
29818
|
+
}
|
|
29819
|
+
};
|
|
29789
29820
|
return React__default.createElement(
|
|
29790
29821
|
React__default.Fragment,
|
|
29791
29822
|
null,
|
|
@@ -29798,6 +29829,18 @@ var Navbar = function (_a) {
|
|
|
29798
29829
|
React__default.createElement(
|
|
29799
29830
|
'div',
|
|
29800
29831
|
{ className: 'nav__subnav__links' },
|
|
29832
|
+
member && React__default.createElement('span', { className: 'nav__subnav__member' }, translations.LOGIN.WELCOME_X, member.name),
|
|
29833
|
+
member
|
|
29834
|
+
? React__default.createElement(
|
|
29835
|
+
React__default.Fragment,
|
|
29836
|
+
null,
|
|
29837
|
+
onLogout && React__default.createElement('a', { href: '#', className: 'nav__subnav__link', onClick: handleLogout }, translations.LOGIN.LOGOUT)
|
|
29838
|
+
)
|
|
29839
|
+
: React__default.createElement(
|
|
29840
|
+
React__default.Fragment,
|
|
29841
|
+
null,
|
|
29842
|
+
onLogin && React__default.createElement('a', { href: '#', className: 'nav__subnav__link', onClick: handleLogin }, translations.LOGIN.LOGIN)
|
|
29843
|
+
),
|
|
29801
29844
|
React__default.createElement(LanguageSwitcher, {
|
|
29802
29845
|
value: language.code,
|
|
29803
29846
|
languages: languages,
|
|
@@ -44574,6 +44617,90 @@ var Login = function (_a) {
|
|
|
44574
44617
|
);
|
|
44575
44618
|
};
|
|
44576
44619
|
|
|
44620
|
+
var ImageWithTextCard = function (_a) {
|
|
44621
|
+
var noCard = _a.noCard,
|
|
44622
|
+
fullImage = _a.fullImage,
|
|
44623
|
+
reverse = _a.reverse,
|
|
44624
|
+
imageSrc = _a.imageSrc,
|
|
44625
|
+
imageAlt = _a.imageAlt,
|
|
44626
|
+
title = _a.title,
|
|
44627
|
+
activityTitle = _a.activityTitle,
|
|
44628
|
+
activityText = _a.activityText,
|
|
44629
|
+
detailsTitle = _a.detailsTitle,
|
|
44630
|
+
detailsText = _a.detailsText,
|
|
44631
|
+
buttonText = _a.buttonText,
|
|
44632
|
+
onButtonClick = _a.onButtonClick;
|
|
44633
|
+
var cardClassName = 'image-with-text__card';
|
|
44634
|
+
if (noCard) {
|
|
44635
|
+
cardClassName += ' image-with-text__card--no-card';
|
|
44636
|
+
}
|
|
44637
|
+
if (fullImage) {
|
|
44638
|
+
cardClassName += ' image-with-text__card--full-image';
|
|
44639
|
+
}
|
|
44640
|
+
if (reverse) {
|
|
44641
|
+
cardClassName += ' image-with-text__card--reverse';
|
|
44642
|
+
}
|
|
44643
|
+
return React__default.createElement(
|
|
44644
|
+
'div',
|
|
44645
|
+
{ className: cardClassName },
|
|
44646
|
+
React__default.createElement(
|
|
44647
|
+
'div',
|
|
44648
|
+
{ className: 'image-with-text__card__image__wrapper' },
|
|
44649
|
+
React__default.createElement('img', { src: imageSrc, alt: imageAlt, className: 'image-with-text__card__image' })
|
|
44650
|
+
),
|
|
44651
|
+
React__default.createElement(
|
|
44652
|
+
'div',
|
|
44653
|
+
{ className: 'image-with-text__card__content' },
|
|
44654
|
+
React__default.createElement('h3', { className: 'image-with-text__card__title' }, title),
|
|
44655
|
+
React__default.createElement(
|
|
44656
|
+
'div',
|
|
44657
|
+
{ className: 'image-with-text__card__description' },
|
|
44658
|
+
React__default.createElement('h5', { className: 'image-with-text__card__description__title' }, activityTitle),
|
|
44659
|
+
React__default.createElement('p', { className: 'image-with-text__card__description__text' }, activityText)
|
|
44660
|
+
),
|
|
44661
|
+
React__default.createElement(
|
|
44662
|
+
'div',
|
|
44663
|
+
{ className: 'image-with-text__card__description' },
|
|
44664
|
+
React__default.createElement('h5', { className: 'image-with-text__card__description__title' }, detailsTitle),
|
|
44665
|
+
React__default.createElement('p', { className: 'image-with-text__card__description__text' }, detailsText)
|
|
44666
|
+
),
|
|
44667
|
+
React__default.createElement(
|
|
44668
|
+
'div',
|
|
44669
|
+
{ className: 'image-with-text__card__btn' },
|
|
44670
|
+
React__default.createElement('button', { type: 'button', className: 'cta cta--select', onClick: onButtonClick }, buttonText)
|
|
44671
|
+
)
|
|
44672
|
+
)
|
|
44673
|
+
);
|
|
44674
|
+
};
|
|
44675
|
+
|
|
44676
|
+
var ImageWithTextSection = function (_a) {
|
|
44677
|
+
var title = _a.title,
|
|
44678
|
+
hasBackground = _a.hasBackground,
|
|
44679
|
+
cards = _a.cards;
|
|
44680
|
+
var className = 'image-with-text '.concat(hasBackground ? 'image-with-text--background' : '');
|
|
44681
|
+
return React__default.createElement(
|
|
44682
|
+
'div',
|
|
44683
|
+
{ className: className },
|
|
44684
|
+
React__default.createElement(
|
|
44685
|
+
'div',
|
|
44686
|
+
{ className: 'image-with-text__container' },
|
|
44687
|
+
React__default.createElement(
|
|
44688
|
+
'div',
|
|
44689
|
+
{ className: 'image-with-text__title__row' },
|
|
44690
|
+
React__default.createElement('h2', { className: 'image-with-text__title' }, title)
|
|
44691
|
+
),
|
|
44692
|
+
React__default.createElement(
|
|
44693
|
+
'div',
|
|
44694
|
+
{ className: 'image-with-text__card__wrapper' },
|
|
44695
|
+
!isEmpty(cards) &&
|
|
44696
|
+
cards.map(function (card, index) {
|
|
44697
|
+
return React__default.createElement(ImageWithTextCard, __assign({ key: index }, card));
|
|
44698
|
+
})
|
|
44699
|
+
)
|
|
44700
|
+
)
|
|
44701
|
+
);
|
|
44702
|
+
};
|
|
44703
|
+
|
|
44577
44704
|
var signalR$1 = {};
|
|
44578
44705
|
|
|
44579
44706
|
var jqueryDeferred$1 = { exports: {} };
|
|
@@ -48468,4 +48595,4 @@ var signalR = /*#__PURE__*/ _mergeNamespaces(
|
|
|
48468
48595
|
[signalR$1]
|
|
48469
48596
|
);
|
|
48470
48597
|
|
|
48471
|
-
export { BookingProduct, BookingWizard, DepartureRange, Footer, Header, ImageCardGrid, Login, Navbar, QSM, SearchResults };
|
|
48598
|
+
export { BookingProduct, BookingWizard, DepartureRange, Footer, Header, ImageCardGrid, ImageWithTextSection, Login, Navbar, QSM, SearchResults };
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
type Variant = 'image-with-
|
|
2
|
+
type Variant = 'image-with-text__card--no-card' | 'image-with-text__card--full-img';
|
|
3
3
|
interface ImageWithTextCardProps {
|
|
4
|
+
variant?: Variant;
|
|
4
5
|
reverse?: boolean;
|
|
5
6
|
imageSrc: string;
|
|
6
7
|
imageAlt: string;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export interface ImageWithTextSectionProps {
|
|
2
|
+
title: string;
|
|
3
|
+
hasBackground?: boolean;
|
|
4
|
+
cards: ImageWithTextCardProps[];
|
|
5
|
+
}
|
|
6
|
+
export interface ImageWithTextCardProps {
|
|
7
|
+
noCard?: boolean;
|
|
8
|
+
fullImage?: boolean;
|
|
9
|
+
reverse?: boolean;
|
|
10
|
+
imageSrc: string;
|
|
11
|
+
imageAlt: string;
|
|
12
|
+
title: string;
|
|
13
|
+
activityTitle: string;
|
|
14
|
+
activityText: string;
|
|
15
|
+
detailsTitle: string;
|
|
16
|
+
detailsText: string;
|
|
17
|
+
buttonText: string;
|
|
18
|
+
onButtonClick?: () => void;
|
|
19
|
+
}
|