ublo-lib 1.20.16 → 1.21.0
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/es/esf/components/loyal-customers/api.js +4 -4
- package/es/lbm/lumiplan/api.d.ts +8 -0
- package/es/lbm/lumiplan/api.d.ts.map +1 -0
- package/es/lbm/lumiplan/api.js +33 -0
- package/es/lbm/lumiplan/domain.d.ts +8 -0
- package/es/lbm/lumiplan/domain.d.ts.map +1 -0
- package/es/lbm/lumiplan/domain.js +30 -0
- package/es/lbm/lumiplan/domain.module.css +111 -0
- package/es/lbm/lumiplan/i18n/en.json +1 -0
- package/es/lbm/lumiplan/i18n/fr.json +255 -0
- package/es/lbm/lumiplan/i18n/translations.d.ts +7 -0
- package/es/lbm/lumiplan/i18n/translations.d.ts.map +1 -0
- package/es/lbm/lumiplan/i18n/translations.js +20 -0
- package/es/lbm/lumiplan/icons/alert.js +23 -0
- package/es/lbm/lumiplan/icons/avalanche-risk.js +16 -0
- package/es/lbm/lumiplan/icons/cabin.js +16 -0
- package/es/lbm/lumiplan/icons/check.js +18 -0
- package/es/lbm/lumiplan/icons/close.js +23 -0
- package/es/lbm/lumiplan/icons/cloud.js +18 -0
- package/es/lbm/lumiplan/icons/cloud.module.css +9 -0
- package/es/lbm/lumiplan/icons/dawn.js +21 -0
- package/es/lbm/lumiplan/icons/fog.js +37 -0
- package/es/lbm/lumiplan/icons/fog.module.css +34 -0
- package/es/lbm/lumiplan/icons/information.js +23 -0
- package/es/lbm/lumiplan/icons/isothermal.js +27 -0
- package/es/lbm/lumiplan/icons/lifts/index.js +5 -0
- package/es/lbm/lumiplan/icons/lifts/tapis-roulant.js +18 -0
- package/es/lbm/lumiplan/icons/lifts/telecabine.js +18 -0
- package/es/lbm/lumiplan/icons/lifts/telesiege-debrayable.js +29 -0
- package/es/lbm/lumiplan/icons/lifts/telesiege.js +18 -0
- package/es/lbm/lumiplan/icons/lifts/teleski.js +18 -0
- package/es/lbm/lumiplan/icons/night.js +16 -0
- package/es/lbm/lumiplan/icons/rain.js +27 -0
- package/es/lbm/lumiplan/icons/rain.module.css +27 -0
- package/es/lbm/lumiplan/icons/rainy.js +31 -0
- package/es/lbm/lumiplan/icons/rainy.module.css +33 -0
- package/es/lbm/lumiplan/icons/reload.js +32 -0
- package/es/lbm/lumiplan/icons/road-condition.js +30 -0
- package/es/lbm/lumiplan/icons/slopes.js +16 -0
- package/es/lbm/lumiplan/icons/snow-cover.js +18 -0
- package/es/lbm/lumiplan/icons/snow.js +33 -0
- package/es/lbm/lumiplan/icons/snow.module.css +28 -0
- package/es/lbm/lumiplan/icons/storm.js +27 -0
- package/es/lbm/lumiplan/icons/storm.module.css +25 -0
- package/es/lbm/lumiplan/icons/sun.js +23 -0
- package/es/lbm/lumiplan/icons/sun.module.css +14 -0
- package/es/lbm/lumiplan/icons/sunny.js +29 -0
- package/es/lbm/lumiplan/icons/sunny.module.css +11 -0
- package/es/lbm/lumiplan/icons/time.js +23 -0
- package/es/lbm/lumiplan/icons/trails/boarder-cross.js +22 -0
- package/es/lbm/lumiplan/icons/trails/champ-de-bosse.js +20 -0
- package/es/lbm/lumiplan/icons/trails/freeride.js +17 -0
- package/es/lbm/lumiplan/icons/trails/index.js +12 -0
- package/es/lbm/lumiplan/icons/trails/luge.js +17 -0
- package/es/lbm/lumiplan/icons/trails/pieton.js +17 -0
- package/es/lbm/lumiplan/icons/trails/piste-eclairee.js +20 -0
- package/es/lbm/lumiplan/icons/trails/raquette.js +66 -0
- package/es/lbm/lumiplan/icons/trails/ski-alpin.js +17 -0
- package/es/lbm/lumiplan/icons/trails/ski-fond.js +17 -0
- package/es/lbm/lumiplan/icons/trails/snowpark.js +17 -0
- package/es/lbm/lumiplan/icons/trails/vtt.js +20 -0
- package/es/lbm/lumiplan/icons/trails/zone-freeride.js +17 -0
- package/es/lbm/lumiplan/icons/warning.js +23 -0
- package/es/lbm/lumiplan/icons/wind.js +30 -0
- package/es/lbm/lumiplan/index.d.ts +3 -0
- package/es/lbm/lumiplan/index.d.ts.map +1 -0
- package/es/lbm/lumiplan/index.js +2 -0
- package/es/lbm/lumiplan/lumiplan.d.ts +2 -0
- package/es/lbm/lumiplan/lumiplan.d.ts.map +1 -0
- package/es/lbm/lumiplan/lumiplan.js +118 -0
- package/es/lbm/lumiplan/lumiplan.module.css +3 -0
- package/es/lbm/lumiplan/opening.d.ts +8 -0
- package/es/lbm/lumiplan/opening.d.ts.map +1 -0
- package/es/lbm/lumiplan/opening.js +33 -0
- package/es/lbm/lumiplan/opening.module.css +88 -0
- package/es/lbm/lumiplan/pois.d.ts +8 -0
- package/es/lbm/lumiplan/pois.d.ts.map +1 -0
- package/es/lbm/lumiplan/pois.js +150 -0
- package/es/lbm/lumiplan/pois.module.css +137 -0
- package/es/lbm/lumiplan/resort-selector.d.ts +12 -0
- package/es/lbm/lumiplan/resort-selector.d.ts.map +1 -0
- package/es/lbm/lumiplan/resort-selector.js +18 -0
- package/es/lbm/lumiplan/resort-selector.module.css +28 -0
- package/es/lbm/lumiplan/road-condition.d.ts +8 -0
- package/es/lbm/lumiplan/road-condition.d.ts.map +1 -0
- package/es/lbm/lumiplan/road-condition.js +26 -0
- package/es/lbm/lumiplan/road-condition.module.css +79 -0
- package/es/lbm/lumiplan/todays-tips.d.ts +8 -0
- package/es/lbm/lumiplan/todays-tips.d.ts.map +1 -0
- package/es/lbm/lumiplan/todays-tips.js +23 -0
- package/es/lbm/lumiplan/todays-tips.module.css +35 -0
- package/es/lbm/lumiplan/types.d.ts +281 -0
- package/es/lbm/lumiplan/types.d.ts.map +1 -0
- package/es/lbm/lumiplan/types.js +1 -0
- package/es/lbm/lumiplan/weather/avalanche-risk.d.ts +4 -0
- package/es/lbm/lumiplan/weather/avalanche-risk.d.ts.map +1 -0
- package/es/lbm/lumiplan/weather/avalanche-risk.js +12 -0
- package/es/lbm/lumiplan/weather/avalanche-risk.module.css +21 -0
- package/es/lbm/lumiplan/weather/index.d.ts +3 -0
- package/es/lbm/lumiplan/weather/index.d.ts.map +1 -0
- package/es/lbm/lumiplan/weather/index.js +2 -0
- package/es/lbm/lumiplan/weather/snow-data.d.ts +8 -0
- package/es/lbm/lumiplan/weather/snow-data.d.ts.map +1 -0
- package/es/lbm/lumiplan/weather/snow-data.js +8 -0
- package/es/lbm/lumiplan/weather/snow-data.module.css +41 -0
- package/es/lbm/lumiplan/weather/weather-data.d.ts +9 -0
- package/es/lbm/lumiplan/weather/weather-data.d.ts.map +1 -0
- package/es/lbm/lumiplan/weather/weather-data.js +8 -0
- package/es/lbm/lumiplan/weather/weather-data.module.css +61 -0
- package/es/lbm/lumiplan/weather/weather-icon.d.ts +23 -0
- package/es/lbm/lumiplan/weather/weather-icon.d.ts.map +1 -0
- package/es/lbm/lumiplan/weather/weather-icon.js +30 -0
- package/es/lbm/lumiplan/weather/weather.d.ts +8 -0
- package/es/lbm/lumiplan/weather/weather.d.ts.map +1 -0
- package/es/lbm/lumiplan/weather/weather.js +74 -0
- package/es/lbm/lumiplan/weather/weather.module.css +118 -0
- package/package.json +3 -2
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import classNames from "classnames";
|
|
3
|
+
import Button from "dt-design-system/es/button";
|
|
4
|
+
import css from "./resort-selector.module.css";
|
|
5
|
+
export default function ResortSelector({ resorts, currentResortId, setCurrentResortId, }) {
|
|
6
|
+
if (!resorts || resorts.length < 2) {
|
|
7
|
+
return null;
|
|
8
|
+
}
|
|
9
|
+
return (_jsx("div", { className: css.selector, children: resorts.map(({ id, label }) => {
|
|
10
|
+
const classes = classNames(css.button, {
|
|
11
|
+
[css.selected]: id === currentResortId,
|
|
12
|
+
});
|
|
13
|
+
const updateCurrentResort = () => {
|
|
14
|
+
setCurrentResortId(id);
|
|
15
|
+
};
|
|
16
|
+
return (_jsx(Button, { className: classes, onClick: updateCurrentResort, children: label }, id));
|
|
17
|
+
}) }));
|
|
18
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
.selector {
|
|
2
|
+
display: flex;
|
|
3
|
+
justify-content: center;
|
|
4
|
+
flex-wrap: wrap;
|
|
5
|
+
gap: 20px;
|
|
6
|
+
margin-bottom: 40px;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
button.button {
|
|
10
|
+
--ds-button-padding: 12px;
|
|
11
|
+
--ds-button-font-size: 16px;
|
|
12
|
+
--ds-button-foreground: hsl(var(--primary));
|
|
13
|
+
--ds-button-font-weight: 400;
|
|
14
|
+
--ds-button-background: transparent;
|
|
15
|
+
--ds-button-hover-background: hsla(var(--primary), 10%);
|
|
16
|
+
--ds-button-shadow: 0 0 0 1px hsl(var(--primary)) inset;
|
|
17
|
+
--ds-button-text-transform: uppercase;
|
|
18
|
+
--ds-button-font-weight: 700;
|
|
19
|
+
|
|
20
|
+
display: block;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
button.selected {
|
|
24
|
+
--ds-button-foreground: hsl(var(--grey-000));
|
|
25
|
+
--ds-button-shadow: 0;
|
|
26
|
+
|
|
27
|
+
background: var(--blue-gradient);
|
|
28
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { ResortAccess } from "./types";
|
|
3
|
+
type Props = {
|
|
4
|
+
resortAccess?: ResortAccess | null;
|
|
5
|
+
};
|
|
6
|
+
declare const RoadCondition: React.ForwardRefExoticComponent<Props & React.RefAttributes<HTMLDivElement>>;
|
|
7
|
+
export default RoadCondition;
|
|
8
|
+
//# sourceMappingURL=road-condition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"road-condition.d.ts","sourceRoot":"","sources":["../../../src/lbm/lumiplan/road-condition.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAG5C,KAAK,KAAK,GAAG;IACX,YAAY,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;CACpC,CAAC;AAEF,QAAA,MAAM,aAAa,8EA8ElB,CAAC;AAIF,eAAe,aAAa,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { useUbloContext } from "ublo/with-ublo";
|
|
4
|
+
import Loader from "dt-design-system/es/loader";
|
|
5
|
+
import T, { t } from "./i18n/translations";
|
|
6
|
+
import RoadConditionIcon from "./icons/road-condition";
|
|
7
|
+
import css from "./road-condition.module.css";
|
|
8
|
+
const RoadCondition = React.forwardRef(({ resortAccess }, ref) => {
|
|
9
|
+
const { lang } = useUbloContext();
|
|
10
|
+
if (resortAccess === undefined) {
|
|
11
|
+
return (_jsx("div", { ref: ref, className: css.loader, "data-tags": t(lang, "road-conditions.navigation-title"), children: _jsx(Loader, { variant: "overlay" }) }));
|
|
12
|
+
}
|
|
13
|
+
if (!resortAccess?.roadConditions?.length) {
|
|
14
|
+
return null;
|
|
15
|
+
}
|
|
16
|
+
const { roadConditions } = resortAccess;
|
|
17
|
+
return (_jsxs("div", { ref: ref, className: css.conditions, "data-tags": t(lang, "road-conditions.navigation-title"), children: [_jsx("div", { className: css.title, dangerouslySetInnerHTML: { __html: t(lang, "road-conditions.title") } }), roadConditions.map(({ id, name, status, roadInfo, equipment, surface }) => {
|
|
18
|
+
const roadInfoData = roadInfo?.data?.find(({ language }) => {
|
|
19
|
+
const _lang = lang === "fr" ? "fr_FR" : "en_US";
|
|
20
|
+
return language === _lang;
|
|
21
|
+
});
|
|
22
|
+
return (_jsxs("div", { className: css.condition, children: [_jsx(RoadConditionIcon, { className: css.icon }), _jsxs("div", { className: css.right, children: [_jsxs("div", { className: css.top, children: [_jsx("div", { className: css.name, children: name }), _jsxs("div", { className: css.surface, children: [_jsx("b", { children: _jsx(T, { id: "road-conditions.surface.title" }) }), _jsx(T, { id: `road-conditions.surface.states.${surface}` }), "."] }), _jsxs("div", { className: css.equipment, children: [_jsx("b", { children: _jsx(T, { id: "road-conditions.equipment.title" }) }), _jsx(T, { id: `road-conditions.equipment.states.${equipment}` })] })] }), roadInfoData && (_jsx("div", { className: css.bottom, dangerouslySetInnerHTML: { __html: roadInfoData.data } }))] }), _jsx("div", { className: css.status, children: _jsx(T, { id: `road-conditions.status.${status ? "OPENED" : "CLOSED"}` }) })] }, id));
|
|
23
|
+
})] }));
|
|
24
|
+
});
|
|
25
|
+
RoadCondition.displayName = "RoadCondition";
|
|
26
|
+
export default RoadCondition;
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
.loader {
|
|
2
|
+
position: relative;
|
|
3
|
+
width: 100%;
|
|
4
|
+
max-width: 1200px;
|
|
5
|
+
height: 150px;
|
|
6
|
+
margin: 30px auto;
|
|
7
|
+
border-radius: var(--radius-200);
|
|
8
|
+
overflow: hidden;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.conditions {
|
|
12
|
+
width: 100%;
|
|
13
|
+
max-width: 1200px;
|
|
14
|
+
display: flex;
|
|
15
|
+
flex-direction: column;
|
|
16
|
+
gap: 16px;
|
|
17
|
+
margin: 30px auto;
|
|
18
|
+
padding: 0 10px;
|
|
19
|
+
color: hsl(var(--primary));
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
@media (min-width: 1220px) {
|
|
23
|
+
.conditions {
|
|
24
|
+
padding: 0;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.title {
|
|
29
|
+
font-size: 38px;
|
|
30
|
+
color: hsl(var(--primary));
|
|
31
|
+
margin-bottom: 10px;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.condition {
|
|
35
|
+
display: flex;
|
|
36
|
+
flex-wrap: wrap;
|
|
37
|
+
gap: 12px;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
.icon {
|
|
41
|
+
flex: 0 0 30px;
|
|
42
|
+
width: 30px;
|
|
43
|
+
height: 30px;
|
|
44
|
+
fill: var(--blue-gradient-fill);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.right {
|
|
48
|
+
display: flex;
|
|
49
|
+
flex-direction: column;
|
|
50
|
+
margin-right: auto;
|
|
51
|
+
gap: 10px;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.top {
|
|
55
|
+
display: flex;
|
|
56
|
+
align-items: baseline;
|
|
57
|
+
flex-wrap: wrap;
|
|
58
|
+
gap: 6px;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
.name {
|
|
62
|
+
font-size: 20px;
|
|
63
|
+
font-weight: 700;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.surface,
|
|
67
|
+
.equipment {
|
|
68
|
+
font-size: 17px;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
.bottom {
|
|
72
|
+
font-size: 15px;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
.status {
|
|
76
|
+
font-size: 20px;
|
|
77
|
+
font-weight: 700;
|
|
78
|
+
text-transform: uppercase;
|
|
79
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { ResortOpening } from "./types";
|
|
3
|
+
type Props = {
|
|
4
|
+
resortOpening?: ResortOpening | null;
|
|
5
|
+
};
|
|
6
|
+
declare const TodaysTips: React.ForwardRefExoticComponent<Props & React.RefAttributes<HTMLDivElement>>;
|
|
7
|
+
export default TodaysTips;
|
|
8
|
+
//# sourceMappingURL=todays-tips.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"todays-tips.d.ts","sourceRoot":"","sources":["../../../src/lbm/lumiplan/todays-tips.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAG7C,KAAK,KAAK,GAAG;IACX,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;CACtC,CAAC;AAEF,QAAA,MAAM,UAAU,8EAsCf,CAAC;AAIF,eAAe,UAAU,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { useUbloContext } from "ublo/with-ublo";
|
|
4
|
+
import Loader from "dt-design-system/es/loader";
|
|
5
|
+
import { t } from "./i18n/translations";
|
|
6
|
+
import css from "./todays-tips.module.css";
|
|
7
|
+
const TodaysTips = React.forwardRef(({ resortOpening }, ref) => {
|
|
8
|
+
const { lang } = useUbloContext();
|
|
9
|
+
const todaysTips = resortOpening?.resortInfos?.find(({ type }) => type === "RESORT_TIP_OF_THE_DAY");
|
|
10
|
+
if (todaysTips === undefined) {
|
|
11
|
+
return (_jsx("div", { ref: ref, className: css.loader, children: _jsx(Loader, { variant: "overlay" }) }));
|
|
12
|
+
}
|
|
13
|
+
if (!todaysTips) {
|
|
14
|
+
return null;
|
|
15
|
+
}
|
|
16
|
+
const text = todaysTips.data.find(({ language }) => language === "fr_FR");
|
|
17
|
+
if (!text?.data) {
|
|
18
|
+
return null;
|
|
19
|
+
}
|
|
20
|
+
return (_jsxs("div", { ref: ref, className: css.tips, children: [_jsx("div", { className: css.title, dangerouslySetInnerHTML: { __html: t(lang, "todays-tips.title") } }), _jsx("div", { className: css.text, dangerouslySetInnerHTML: { __html: text.data } })] }));
|
|
21
|
+
});
|
|
22
|
+
TodaysTips.displayName = "TodaysTips";
|
|
23
|
+
export default TodaysTips;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
.loader {
|
|
2
|
+
position: relative;
|
|
3
|
+
width: 100%;
|
|
4
|
+
max-width: 1200px;
|
|
5
|
+
height: 100px;
|
|
6
|
+
margin: 0 auto;
|
|
7
|
+
border-radius: var(--radius-200);
|
|
8
|
+
overflow: hidden;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.tips {
|
|
12
|
+
width: 100%;
|
|
13
|
+
max-width: 1200px;
|
|
14
|
+
display: flex;
|
|
15
|
+
flex-direction: column;
|
|
16
|
+
margin: 0 auto;
|
|
17
|
+
padding: 0 10px;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
@media (min-width: 1220px) {
|
|
21
|
+
.tips {
|
|
22
|
+
padding: 0;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
.title {
|
|
27
|
+
font-size: 38px;
|
|
28
|
+
color: hsl(var(--primary));
|
|
29
|
+
margin-bottom: 10px;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.text {
|
|
33
|
+
font-style: 18px;
|
|
34
|
+
color: hsl(var(--primary));
|
|
35
|
+
}
|
|
@@ -0,0 +1,281 @@
|
|
|
1
|
+
type Day = {
|
|
2
|
+
dayType: string;
|
|
3
|
+
open: boolean;
|
|
4
|
+
};
|
|
5
|
+
type MultiLangString = {
|
|
6
|
+
language: "fr_FR" | "en_US";
|
|
7
|
+
data: string;
|
|
8
|
+
};
|
|
9
|
+
export type MultiLangMessage = {
|
|
10
|
+
id: string;
|
|
11
|
+
type: string;
|
|
12
|
+
title: string;
|
|
13
|
+
data: MultiLangString[];
|
|
14
|
+
};
|
|
15
|
+
type OpeningStatus = "OPEN" | "OPEN_PEDESTRIAN_ONLY" | "OPEN_DOWNHILL_ONLY" | "FORECAST" | "FORECAST_AURORA_SKI" | "FORECAST_NIGHT_SKI" | "DELAYED" | "DELAYED_TECHNICAL_ISSUE" | "DELAYED_SECURING" | "DELAYED_WEATHER" | "DELAYED_WIND" | "STOPPED" | "STOPPED_TECHNICAL_ISSUE" | "STOPPED_SECURING" | "STOPPED_WEATHER" | "STOPPED_WIND" | "CLOSED" | "CLOSED_CONTEST" | "OUT_OF_PERIOD" | "OUT_OF_PERIOD_SEASON_BEGINNING" | "OUT_OF_PERIOD_SEASON_ENDING" | "UNDEF";
|
|
16
|
+
export type ResortOpening = {
|
|
17
|
+
id: string;
|
|
18
|
+
availability: {
|
|
19
|
+
openingStatus: OpeningStatus;
|
|
20
|
+
openingDate: string;
|
|
21
|
+
closingDate: string;
|
|
22
|
+
openingDays: Day[];
|
|
23
|
+
dawnSkiingDays: Day[];
|
|
24
|
+
nightSkiingDays: Day[];
|
|
25
|
+
backToBaseArea: string;
|
|
26
|
+
winterAmbiance: string;
|
|
27
|
+
practicalActivities: string;
|
|
28
|
+
};
|
|
29
|
+
name: string;
|
|
30
|
+
resortInfos: MultiLangMessage[];
|
|
31
|
+
};
|
|
32
|
+
type Surface = "UNDEF" | "CLEAR_DRY" | "CLEAR_WET" | "SOGGY" | "PART_SNOW" | "SNOWY" | "PACKED" | "ICY" | "CLOSED";
|
|
33
|
+
type Equipment = "UNDEF" | "NORM" | "CHAIN" | "RECO_CHAIN_RESORT" | "RECO_CHAIN" | "ICY" | "CLOSED";
|
|
34
|
+
type RoadCondition = {
|
|
35
|
+
id: string;
|
|
36
|
+
name: string;
|
|
37
|
+
number: string;
|
|
38
|
+
status: boolean;
|
|
39
|
+
roadInfo: MultiLangMessage;
|
|
40
|
+
surface: Surface;
|
|
41
|
+
equipment: Equipment;
|
|
42
|
+
};
|
|
43
|
+
export type ResortAccess = {
|
|
44
|
+
roadConditions: RoadCondition[];
|
|
45
|
+
};
|
|
46
|
+
export type DomainInfo = {
|
|
47
|
+
slopes: {
|
|
48
|
+
slopes: {
|
|
49
|
+
GREEN: {
|
|
50
|
+
open: number;
|
|
51
|
+
total: number;
|
|
52
|
+
};
|
|
53
|
+
BLUE: {
|
|
54
|
+
open: number;
|
|
55
|
+
total: number;
|
|
56
|
+
};
|
|
57
|
+
RED: {
|
|
58
|
+
open: number;
|
|
59
|
+
total: number;
|
|
60
|
+
};
|
|
61
|
+
BLACK: {
|
|
62
|
+
open: number;
|
|
63
|
+
total: number;
|
|
64
|
+
};
|
|
65
|
+
};
|
|
66
|
+
count: {
|
|
67
|
+
open: number;
|
|
68
|
+
total: number;
|
|
69
|
+
};
|
|
70
|
+
};
|
|
71
|
+
lifts: {
|
|
72
|
+
count: {
|
|
73
|
+
open: number;
|
|
74
|
+
total: number;
|
|
75
|
+
};
|
|
76
|
+
};
|
|
77
|
+
};
|
|
78
|
+
type SnowQuality = "UNDEF" | "FRESH" | "ARTIFICIAL" | "CRUSTED" | "DRIFTED" | "EARLY_SEASON" | "FROZEN" | "GRADIENT" | "HARD_PACKED" | "LOW_SNOWFALL" | "PACKED_POWDER" | "POWDER" | "SNOW_GROOMED" | "SPRING" | "VARIABLE" | "WET_SNOW";
|
|
79
|
+
type AvalancheRisk = "UNDEF" | "LOW" | "MODERATE" | "CONSIDERABLE" | "HIGH" | "VERY_HIGH";
|
|
80
|
+
export type SnowZone = {
|
|
81
|
+
id: number;
|
|
82
|
+
name: string;
|
|
83
|
+
altitude: {
|
|
84
|
+
value: number;
|
|
85
|
+
unit: "METER";
|
|
86
|
+
};
|
|
87
|
+
altitudeLevel: "LOW" | "MEDIUM" | "HIGH";
|
|
88
|
+
avalancheRisk: AvalancheRisk;
|
|
89
|
+
snowQuality: SnowQuality;
|
|
90
|
+
snowTotalDepth: {
|
|
91
|
+
value: number;
|
|
92
|
+
unit: "CENTIMETER";
|
|
93
|
+
};
|
|
94
|
+
overnight: {
|
|
95
|
+
value: number;
|
|
96
|
+
unit: "CENTIMETER";
|
|
97
|
+
};
|
|
98
|
+
freshSnowFallDepth12H: {
|
|
99
|
+
value: number;
|
|
100
|
+
unit: "CENTIMETER";
|
|
101
|
+
};
|
|
102
|
+
freshSnowFallDepth24H: {
|
|
103
|
+
value: number;
|
|
104
|
+
unit: "CENTIMETER";
|
|
105
|
+
};
|
|
106
|
+
freshSnowFallDepth48H: {
|
|
107
|
+
value: number;
|
|
108
|
+
unit: "CENTIMETER";
|
|
109
|
+
};
|
|
110
|
+
freshSnowFallDepth72H: {
|
|
111
|
+
value: number;
|
|
112
|
+
unit: "CENTIMETER";
|
|
113
|
+
};
|
|
114
|
+
freshSnowFallDepth7D: {
|
|
115
|
+
value: number;
|
|
116
|
+
unit: "CENTIMETER";
|
|
117
|
+
};
|
|
118
|
+
snowFallDepthCompleteSeason: {
|
|
119
|
+
value: number;
|
|
120
|
+
unit: "CENTIMETER";
|
|
121
|
+
};
|
|
122
|
+
lastSnowFallDepth: {
|
|
123
|
+
value: number;
|
|
124
|
+
unit: "CENTIMETER";
|
|
125
|
+
};
|
|
126
|
+
lastSnowFallDate: string;
|
|
127
|
+
};
|
|
128
|
+
type Direction = "UNDEF" | "NORTH" | "NORTH_WEST" | "NORTH_EAST" | "EAST" | "WEST" | "SOUTH" | "SOUTH_EAST" | "SOUTH_WEST" | "TURNING";
|
|
129
|
+
export type WeatherInfo = {
|
|
130
|
+
indexUv: {
|
|
131
|
+
value: number;
|
|
132
|
+
unit: string;
|
|
133
|
+
};
|
|
134
|
+
skyStatus: "UNDEF" | "SUNNY" | "MOSTLY_SUNNY" | "FAIR_WEATHER_PARTLY_CLOUDY" | "MOSTLY_CLOUDY_SOME_SUN" | "MOSTLY_CLOUDY_LIGHT_RAIN" | "CLOUDY_LIGHT_RAIN" | "CLOUDY" | "VARIABLE_SKY_LIGHT_SNOWFALL" | "CLOUDY_LIGHT_SNOWFALL" | "CLOUDY_MODERATE_HEAVY_SNOWFALL" | "CLOUDY_MODERATE_HEAVY_RAIN" | "FOG" | "THUNDERSTORMS" | "VARIABLE_SKY_SCATTERED_THUNDERSTORMS";
|
|
135
|
+
temperature: {
|
|
136
|
+
value: number;
|
|
137
|
+
unit: "CELCIUS";
|
|
138
|
+
};
|
|
139
|
+
wind: {
|
|
140
|
+
value: {
|
|
141
|
+
value: number;
|
|
142
|
+
unit: "METTER";
|
|
143
|
+
};
|
|
144
|
+
valueMax: {
|
|
145
|
+
value: number;
|
|
146
|
+
unit: "METTER";
|
|
147
|
+
};
|
|
148
|
+
direction: Direction;
|
|
149
|
+
};
|
|
150
|
+
windchill: {
|
|
151
|
+
value: number;
|
|
152
|
+
unit: "CELSIUS";
|
|
153
|
+
};
|
|
154
|
+
limitRainSnowFall: {
|
|
155
|
+
value: number;
|
|
156
|
+
unit: "METER";
|
|
157
|
+
};
|
|
158
|
+
limitIsothermic0: {
|
|
159
|
+
value: number;
|
|
160
|
+
unit: "METER";
|
|
161
|
+
};
|
|
162
|
+
limitIsothermicMinus10: {
|
|
163
|
+
value: number;
|
|
164
|
+
unit: "METER";
|
|
165
|
+
};
|
|
166
|
+
visibility: "UNDEF" | "VISIBILITE_0" | "VISIBILITE_25" | "VISIBILITE_50" | "VISIBILITE_75" | "VISIBILITE_100";
|
|
167
|
+
};
|
|
168
|
+
type WeatherInfos = {
|
|
169
|
+
date: string;
|
|
170
|
+
am: WeatherInfo;
|
|
171
|
+
pm: WeatherInfo;
|
|
172
|
+
};
|
|
173
|
+
type WeatherZone = {
|
|
174
|
+
id: string;
|
|
175
|
+
name: string;
|
|
176
|
+
altitude: {
|
|
177
|
+
value: number;
|
|
178
|
+
unit: string;
|
|
179
|
+
};
|
|
180
|
+
altitudeLevel: string;
|
|
181
|
+
weatherInfos: WeatherInfos[];
|
|
182
|
+
};
|
|
183
|
+
export type WeatherForecast = {
|
|
184
|
+
weather: {
|
|
185
|
+
weatherZones: WeatherZone[];
|
|
186
|
+
};
|
|
187
|
+
snow: {
|
|
188
|
+
snowZones: SnowZone[];
|
|
189
|
+
};
|
|
190
|
+
};
|
|
191
|
+
type LiftType = "CABRIOLET_GONDOLA" | "CHAIRLIFT" | "COMBINED_CHAIR_GONDOLA_LIFT" | "DETACHABLE_BUBBLE_CHAIRLIFT" | "DETACHABLE_CHAIRLIFT" | "FUNICULAR" | "FUNITEL" | "GONDOLA" | "LIFT" | "MAGIC_CARPET" | "PEDESTRIAN_SKI_LIFT" | "ROPE_TO" | "SURFACE_LIFT" | "TRAIN" | "TRAM" | "UNDEF";
|
|
192
|
+
type TimePeriod = {
|
|
193
|
+
beginTime: string;
|
|
194
|
+
endTime: string;
|
|
195
|
+
};
|
|
196
|
+
type Lift = {
|
|
197
|
+
id: string;
|
|
198
|
+
name: string;
|
|
199
|
+
type: "TRAIL" | "SKI_LIFT";
|
|
200
|
+
openingStatus: OpeningStatus;
|
|
201
|
+
openingStatusCompl: OpeningStatus;
|
|
202
|
+
messagePoi: MultiLangMessage;
|
|
203
|
+
operating: boolean;
|
|
204
|
+
liftType: LiftType;
|
|
205
|
+
sectorName: string;
|
|
206
|
+
openingTimesTh?: TimePeriod;
|
|
207
|
+
openingTimesReal?: TimePeriod;
|
|
208
|
+
departureAltitude: {
|
|
209
|
+
value: number;
|
|
210
|
+
unit: string;
|
|
211
|
+
};
|
|
212
|
+
arrivalAltitude: {
|
|
213
|
+
value: number;
|
|
214
|
+
unit: string;
|
|
215
|
+
};
|
|
216
|
+
uphillCapacity: {
|
|
217
|
+
value: number;
|
|
218
|
+
unit: string;
|
|
219
|
+
};
|
|
220
|
+
length: {
|
|
221
|
+
value: number;
|
|
222
|
+
unit: string;
|
|
223
|
+
};
|
|
224
|
+
duration: {
|
|
225
|
+
value: number;
|
|
226
|
+
unit: string;
|
|
227
|
+
};
|
|
228
|
+
exposure: Direction;
|
|
229
|
+
};
|
|
230
|
+
type Grooming = "UNDEF" | "GROOMED" | "PARTIALLY_GROOMED" | "MORNING_GROOMED " | "EVENING_GROOMED " | "H48_GROOMED " | "GROOMING_FORECAST" | "NOT_GROOMED ";
|
|
231
|
+
type TrailType = "BIKE_PARK" | "BOARDERCROSS" | "BUMP_TRAIL" | "CROSS_COUNTRY_MOUNTAIN_BIKING" | "CROSS_COUNTRY_SKIING" | "DOWNHILL_MOUNTAIN_BIKING" | "DOWNHILL_SKIING" | "EBIKE" | "ENDURO" | "FREERIDE_AREA_OFF_PIST" | "FREERIDE_SKI_ITINERARY" | "FUN_ZONE" | "GATE" | "GLADES" | "ILLUMINATED_TRAIL" | "MULTI_USE_TRAIL" | "MTB_ENDURO" | "PATH" | "PEDESTRIAN" | "ROUTE_OF_CROSS_COUNTRY" | "SKI_TOURING" | "SLEDDING_HILL" | "SNOWPARK" | "SNOWPARK_LINE" | "SNOWSHOE" | "TERRAIN_PARK" | "TERRAIN_PARK_US" | "TRAIL_RUNNING" | "UNDEF" | "VIDEO_ZONE";
|
|
232
|
+
type TrailLevel = "UNDEF" | "GREEN" | "BLUE" | "RED" | "BLACK" | "YELLOW";
|
|
233
|
+
type Trail = {
|
|
234
|
+
id: string;
|
|
235
|
+
name: string;
|
|
236
|
+
type: "TRAIL" | "SKI_LIFT";
|
|
237
|
+
openingStatus: OpeningStatus;
|
|
238
|
+
openingStatusCompl: OpeningStatus;
|
|
239
|
+
messagePoi: MultiLangMessage;
|
|
240
|
+
operating: boolean;
|
|
241
|
+
trailType: TrailType;
|
|
242
|
+
trailLevel: TrailLevel;
|
|
243
|
+
groomingStatus: Grooming;
|
|
244
|
+
snowQuality: SnowQuality;
|
|
245
|
+
sectorName: string;
|
|
246
|
+
openingTimesTh?: TimePeriod;
|
|
247
|
+
openingTimesReal?: TimePeriod;
|
|
248
|
+
arrivalAltitude: {
|
|
249
|
+
value: number;
|
|
250
|
+
unit: "METER";
|
|
251
|
+
};
|
|
252
|
+
departureAltitude: {
|
|
253
|
+
value: number;
|
|
254
|
+
unit: "METER";
|
|
255
|
+
};
|
|
256
|
+
exposure: Direction;
|
|
257
|
+
length: {
|
|
258
|
+
value: number;
|
|
259
|
+
unit: "METER";
|
|
260
|
+
};
|
|
261
|
+
countInTotals: boolean;
|
|
262
|
+
};
|
|
263
|
+
type Interconnection = {
|
|
264
|
+
id: string;
|
|
265
|
+
name: string;
|
|
266
|
+
type: string;
|
|
267
|
+
openingStatus: OpeningStatus;
|
|
268
|
+
openingStatusCompl: OpeningStatus;
|
|
269
|
+
operating: boolean;
|
|
270
|
+
};
|
|
271
|
+
export type Poi = Lift & Trail;
|
|
272
|
+
export type Zone = {
|
|
273
|
+
id: string;
|
|
274
|
+
name: string;
|
|
275
|
+
lifts: Poi[];
|
|
276
|
+
trails: Poi[];
|
|
277
|
+
interconnections: Interconnection[];
|
|
278
|
+
};
|
|
279
|
+
export type PoisInfo = Zone[];
|
|
280
|
+
export {};
|
|
281
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lbm/lumiplan/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"avalanche-risk.d.ts","sourceRoot":"","sources":["../../../../src/lbm/lumiplan/weather/avalanche-risk.tsx"],"names":[],"mappings":"AASA,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EAAE,aAAa,EAAE;;CAAA,kDAmBtD"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import Image from "next/image";
|
|
3
|
+
import getConfig from "next/config";
|
|
4
|
+
import T from "../i18n/translations";
|
|
5
|
+
import css from "./avalanche-risk.module.css";
|
|
6
|
+
const { publicRuntimeConfig } = getConfig();
|
|
7
|
+
const { lumiplanApiV2 } = publicRuntimeConfig;
|
|
8
|
+
export default function AvalancheRisk({ avalancheRisk }) {
|
|
9
|
+
if (!avalancheRisk || avalancheRisk === "UNDEF")
|
|
10
|
+
return null;
|
|
11
|
+
return (_jsxs("div", { className: css.avalancheRisk, children: [_jsxs("b", { children: [_jsx(T, { id: "weather.avalanche-risk.title" }), " :"] }), _jsx(Image, { src: `${lumiplanApiV2}/avalanche/${avalancheRisk}.svg`, width: 20, height: 20, alt: "" }), _jsx("span", { children: _jsx(T, { id: `weather.avalanche-risk.states.${avalancheRisk}` }) })] }));
|
|
12
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
.avalancheRisk {
|
|
2
|
+
width: fit-content;
|
|
3
|
+
display: flex;
|
|
4
|
+
justify-content: center;
|
|
5
|
+
gap: 7px;
|
|
6
|
+
margin: 0 auto;
|
|
7
|
+
padding: 4px 16px;
|
|
8
|
+
font-size: 18px;
|
|
9
|
+
color: hsl(var(--primary));
|
|
10
|
+
font-weight: 700;
|
|
11
|
+
border: 1px solid hsl(var(--primary));
|
|
12
|
+
border-radius: var(--radius-400);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.avalancheRisk > b {
|
|
16
|
+
text-transform: uppercase;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.avalancheRisk > span {
|
|
20
|
+
color: hsl(var(--grey-800));
|
|
21
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lbm/lumiplan/weather/index.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,WAAW,CAAC;AAEhC,eAAe,OAAO,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"snow-data.d.ts","sourceRoot":"","sources":["../../../../src/lbm/lumiplan/weather/snow-data.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGzC,KAAK,KAAK,GAAG;IACX,IAAI,EAAE,QAAQ,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,KAAK,2CA6DzD"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import T from "../i18n/translations";
|
|
3
|
+
import SnowCover from "../icons/snow-cover";
|
|
4
|
+
import css from "./snow-data.module.css";
|
|
5
|
+
export default function SnowData({ data, expanded }) {
|
|
6
|
+
const { snowQuality, snowTotalDepth, freshSnowFallDepth12H, freshSnowFallDepth24H, freshSnowFallDepth48H, freshSnowFallDepth72H, } = data;
|
|
7
|
+
return (_jsxs("div", { className: css.snow, children: [_jsx(SnowCover, { className: css.snowIcon }), _jsxs("div", { className: css.snowInfo, children: [_jsxs("div", { className: css.snowState, children: [_jsx(T, { id: "snow.snow-quality.title" }), " ", snowQuality && snowQuality !== "UNDEF" && (_jsxs(_Fragment, { children: [": ", _jsx(T, { id: `snow.snow-quality.states.${snowQuality}` })] }))] }), _jsxs("div", { className: css.snowDepth, children: [snowTotalDepth?.value || 0, _jsx(T, { id: snowTotalDepth?.unit || "CENTIMETER" })] }), expanded && (_jsxs("div", { className: css.expanded, children: [freshSnowFallDepth12H && (_jsxs("div", { className: css.snowFall, children: [_jsx(T, { id: "snow.fresh-snow-fall" }), " 12h :", " ", freshSnowFallDepth12H.value, _jsx(T, { id: freshSnowFallDepth12H.unit })] })), freshSnowFallDepth24H && (_jsxs("div", { className: css.snowFall, children: [_jsx(T, { id: "snow.fresh-snow-fall" }), " 24h :", " ", freshSnowFallDepth24H.value, _jsx(T, { id: freshSnowFallDepth24H.unit })] })), freshSnowFallDepth48H && (_jsxs("div", { className: css.snowFall, children: [_jsx(T, { id: "snow.fresh-snow-fall" }), " 48h :", " ", freshSnowFallDepth48H.value, _jsx(T, { id: freshSnowFallDepth48H.unit })] })), freshSnowFallDepth72H && (_jsxs("div", { className: css.snowFall, children: [_jsx(T, { id: "snow.fresh-snow-fall" }), " 72h :", " ", freshSnowFallDepth72H.value, _jsx(T, { id: freshSnowFallDepth72H.unit })] }))] }))] })] }));
|
|
8
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
.snow {
|
|
2
|
+
flex: 1 1 100%;
|
|
3
|
+
display: flex;
|
|
4
|
+
gap: 34px;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
.snowIcon {
|
|
8
|
+
flex: 0 0 50px;
|
|
9
|
+
width: 50px;
|
|
10
|
+
height: 50px;
|
|
11
|
+
margin-top: 10px;
|
|
12
|
+
fill: hsl(var(--primary));
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.snowInfo {
|
|
16
|
+
display: flex;
|
|
17
|
+
flex-direction: column;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.snowState {
|
|
21
|
+
color: hsl(var(--primary));
|
|
22
|
+
font-weight: 700;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.snowDepth {
|
|
26
|
+
margin: 16px 0;
|
|
27
|
+
font-size: 28px;
|
|
28
|
+
font-weight: 700;
|
|
29
|
+
color: hsl(var(--secondary));
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.expanded {
|
|
33
|
+
display: flex;
|
|
34
|
+
flex-direction: column;
|
|
35
|
+
gap: 3px;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
.snowFall {
|
|
39
|
+
color: hsl(var(--primary));
|
|
40
|
+
font-size: 14px;
|
|
41
|
+
}
|