@sbb-esta/lyne-elements-experimental-dev 0.0.0 → 4.5.1-dev.1771849274
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/README.md +55 -0
- package/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +86 -0
- package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +54 -0
- package/autocomplete-grid/autocomplete-grid-button.js +4 -0
- package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +25 -0
- package/autocomplete-grid/autocomplete-grid-cell.js +4 -0
- package/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js +29 -0
- package/autocomplete-grid/autocomplete-grid-optgroup.js +4 -0
- package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +41 -0
- package/autocomplete-grid/autocomplete-grid-option.js +5 -0
- package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +28 -0
- package/autocomplete-grid/autocomplete-grid-row.js +4 -0
- package/autocomplete-grid/autocomplete-grid.js +4 -0
- package/autocomplete-grid.js +15 -0
- package/core/datetime/date-helper.js +191 -0
- package/core/datetime.js +5 -0
- package/core/timetable/access-leg-helper.js +91 -0
- package/core/timetable/timetable-helper.js +12 -0
- package/core/timetable/timetable-properties.js +1 -0
- package/core/timetable.js +8 -0
- package/custom-elements.json +8211 -0
- package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.d.ts +39 -0
- package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.d.ts.map +1 -0
- package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +141 -0
- package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts +31 -0
- package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts.map +1 -0
- package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +82 -0
- package/development/autocomplete-grid/autocomplete-grid-button.d.ts +5 -0
- package/development/autocomplete-grid/autocomplete-grid-button.d.ts.map +1 -0
- package/development/autocomplete-grid/autocomplete-grid-button.js +5 -0
- package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts +19 -0
- package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts.map +1 -0
- package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +40 -0
- package/development/autocomplete-grid/autocomplete-grid-cell.d.ts +5 -0
- package/development/autocomplete-grid/autocomplete-grid-cell.d.ts.map +1 -0
- package/development/autocomplete-grid/autocomplete-grid-cell.js +5 -0
- package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.d.ts +19 -0
- package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.d.ts.map +1 -0
- package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js +40 -0
- package/development/autocomplete-grid/autocomplete-grid-optgroup.d.ts +5 -0
- package/development/autocomplete-grid/autocomplete-grid-optgroup.d.ts.map +1 -0
- package/development/autocomplete-grid/autocomplete-grid-optgroup.js +5 -0
- package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts +26 -0
- package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts.map +1 -0
- package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +134 -0
- package/development/autocomplete-grid/autocomplete-grid-option.d.ts +5 -0
- package/development/autocomplete-grid/autocomplete-grid-option.d.ts.map +1 -0
- package/development/autocomplete-grid/autocomplete-grid-option.js +6 -0
- package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts +20 -0
- package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts.map +1 -0
- package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +115 -0
- package/development/autocomplete-grid/autocomplete-grid-row.d.ts +5 -0
- package/development/autocomplete-grid/autocomplete-grid-row.d.ts.map +1 -0
- package/development/autocomplete-grid/autocomplete-grid-row.js +5 -0
- package/development/autocomplete-grid/autocomplete-grid.d.ts +5 -0
- package/development/autocomplete-grid/autocomplete-grid.d.ts.map +1 -0
- package/development/autocomplete-grid/autocomplete-grid.js +5 -0
- package/development/autocomplete-grid.d.ts +10 -0
- package/development/autocomplete-grid.d.ts.map +1 -0
- package/development/autocomplete-grid.js +16 -0
- package/development/core/datetime/date-helper.d.ts +27 -0
- package/development/core/datetime/date-helper.d.ts.map +1 -0
- package/development/core/datetime/date-helper.js +285 -0
- package/development/core/datetime.d.ts +5 -0
- package/development/core/datetime.d.ts.map +1 -0
- package/development/core/datetime.js +6 -0
- package/development/core/timetable/access-leg-helper.d.ts +26 -0
- package/development/core/timetable/access-leg-helper.d.ts.map +1 -0
- package/development/core/timetable/access-leg-helper.js +125 -0
- package/development/core/timetable/timetable-helper.d.ts +12 -0
- package/development/core/timetable/timetable-helper.d.ts.map +1 -0
- package/development/core/timetable/timetable-helper.js +20 -0
- package/development/core/timetable/timetable-properties.d.ts +308 -0
- package/development/core/timetable/timetable-properties.d.ts.map +1 -0
- package/development/core/timetable/timetable-properties.js +2 -0
- package/development/core/timetable.d.ts +7 -0
- package/development/core/timetable.d.ts.map +1 -0
- package/development/core/timetable.js +9 -0
- package/development/differenceInMinutes-B0dawX-5.js +26 -0
- package/development/format-BMkeaqaF.js +1433 -0
- package/development/isValid-BYRch7pV.js +53 -0
- package/development/journey-summary/journey-summary.component.d.ts +65 -0
- package/development/journey-summary/journey-summary.component.d.ts.map +1 -0
- package/development/journey-summary/journey-summary.component.js +294 -0
- package/development/journey-summary.d.ts +5 -0
- package/development/journey-summary.d.ts.map +1 -0
- package/development/journey-summary.js +5 -0
- package/development/pearl-chain/pearl-chain.component.d.ts +42 -0
- package/development/pearl-chain/pearl-chain.component.d.ts.map +1 -0
- package/development/pearl-chain/pearl-chain.component.js +639 -0
- package/development/pearl-chain-time/pearl-chain-time.component.d.ts +47 -0
- package/development/pearl-chain-time/pearl-chain-time.component.d.ts.map +1 -0
- package/development/pearl-chain-time/pearl-chain-time.component.js +312 -0
- package/development/pearl-chain-time.d.ts +5 -0
- package/development/pearl-chain-time.d.ts.map +1 -0
- package/development/pearl-chain-time.js +5 -0
- package/development/pearl-chain-vertical/pearl-chain-vertical.component.d.ts +16 -0
- package/development/pearl-chain-vertical/pearl-chain-vertical.component.d.ts.map +1 -0
- package/development/pearl-chain-vertical/pearl-chain-vertical.component.js +40 -0
- package/development/pearl-chain-vertical-item/pearl-chain-vertical-item.component.d.ts +34 -0
- package/development/pearl-chain-vertical-item/pearl-chain-vertical-item.component.d.ts.map +1 -0
- package/development/pearl-chain-vertical-item/pearl-chain-vertical-item.component.js +398 -0
- package/development/pearl-chain-vertical-item.d.ts +5 -0
- package/development/pearl-chain-vertical-item.d.ts.map +1 -0
- package/development/pearl-chain-vertical-item.js +5 -0
- package/development/pearl-chain-vertical.d.ts +5 -0
- package/development/pearl-chain-vertical.d.ts.map +1 -0
- package/development/pearl-chain-vertical.js +5 -0
- package/development/pearl-chain.d.ts +5 -0
- package/development/pearl-chain.d.ts.map +1 -0
- package/development/pearl-chain.js +5 -0
- package/development/seat-reservation/common/mapper/icon-mapper.d.ts +106 -0
- package/development/seat-reservation/common/mapper/icon-mapper.d.ts.map +1 -0
- package/development/seat-reservation/common/mapper/icon-mapper.js +72 -0
- package/development/seat-reservation/common/mapper/mapper.d.ts +34 -0
- package/development/seat-reservation/common/mapper/mapper.d.ts.map +1 -0
- package/development/seat-reservation/common/mapper/mapper.js +129 -0
- package/development/seat-reservation/common/mapper/seat-reservation-sample-data.d.ts +372 -0
- package/development/seat-reservation/common/mapper/seat-reservation-sample-data.d.ts.map +1 -0
- package/development/seat-reservation/common/mapper/seat-reservation-sample-data.js +31673 -0
- package/development/seat-reservation/common/mapper.d.ts +3 -0
- package/development/seat-reservation/common/mapper.d.ts.map +1 -0
- package/development/seat-reservation/common/mapper.js +10 -0
- package/development/seat-reservation/common/svgs.d.ts +24 -0
- package/development/seat-reservation/common/svgs.d.ts.map +1 -0
- package/development/seat-reservation/common/svgs.js +46 -0
- package/development/seat-reservation/common/translations/i18n.d.ts +28 -0
- package/development/seat-reservation/common/translations/i18n.d.ts.map +1 -0
- package/development/seat-reservation/common/translations/i18n.js +871 -0
- package/development/seat-reservation/common/translations.d.ts +2 -0
- package/development/seat-reservation/common/translations.d.ts.map +1 -0
- package/development/seat-reservation/common/translations.js +5 -0
- package/development/seat-reservation/common/types.d.ts +97 -0
- package/development/seat-reservation/common/types.d.ts.map +1 -0
- package/development/seat-reservation/common/types.js +2 -0
- package/development/seat-reservation/common.d.ts +8 -0
- package/development/seat-reservation/common.d.ts.map +1 -0
- package/development/seat-reservation/common.js +14 -0
- package/development/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts +273 -0
- package/development/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts.map +1 -0
- package/development/seat-reservation/seat-reservation/seat-reservation-base-element.js +1171 -0
- package/development/seat-reservation/seat-reservation/seat-reservation.component.d.ts +75 -0
- package/development/seat-reservation/seat-reservation/seat-reservation.component.d.ts.map +1 -0
- package/development/seat-reservation/seat-reservation/seat-reservation.component.js +832 -0
- package/development/seat-reservation/seat-reservation-area/seat-reservation-area.component.d.ts +18 -0
- package/development/seat-reservation/seat-reservation-area/seat-reservation-area.component.d.ts.map +1 -0
- package/development/seat-reservation/seat-reservation-area/seat-reservation-area.component.js +112 -0
- package/development/seat-reservation/seat-reservation-area.d.ts +5 -0
- package/development/seat-reservation/seat-reservation-area.d.ts.map +1 -0
- package/development/seat-reservation/seat-reservation-area.js +5 -0
- package/development/seat-reservation/seat-reservation-graphic/seat-reservation-assets.d.ts +9 -0
- package/development/seat-reservation/seat-reservation-graphic/seat-reservation-assets.d.ts.map +1 -0
- package/development/seat-reservation/seat-reservation-graphic/seat-reservation-assets.js +303 -0
- package/development/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.d.ts +20 -0
- package/development/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.d.ts.map +1 -0
- package/development/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +167 -0
- package/development/seat-reservation/seat-reservation-graphic.d.ts +5 -0
- package/development/seat-reservation/seat-reservation-graphic.d.ts.map +1 -0
- package/development/seat-reservation/seat-reservation-graphic.js +5 -0
- package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.d.ts +65 -0
- package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.d.ts.map +1 -0
- package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +798 -0
- package/development/seat-reservation/seat-reservation-navigation-coach.d.ts +5 -0
- package/development/seat-reservation/seat-reservation-navigation-coach.d.ts.map +1 -0
- package/development/seat-reservation/seat-reservation-navigation-coach.js +5 -0
- package/development/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.d.ts +21 -0
- package/development/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.d.ts.map +1 -0
- package/development/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.js +120 -0
- package/development/seat-reservation/seat-reservation-navigation-services.d.ts +5 -0
- package/development/seat-reservation/seat-reservation-navigation-services.d.ts.map +1 -0
- package/development/seat-reservation/seat-reservation-navigation-services.js +5 -0
- package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.d.ts +42 -0
- package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.d.ts.map +1 -0
- package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.js +462 -0
- package/development/seat-reservation/seat-reservation-place-control.d.ts +5 -0
- package/development/seat-reservation/seat-reservation-place-control.d.ts.map +1 -0
- package/development/seat-reservation/seat-reservation-place-control.js +5 -0
- package/development/seat-reservation/seat-reservation-scoped/seat-reservation-scoped.component.d.ts +14 -0
- package/development/seat-reservation/seat-reservation-scoped/seat-reservation-scoped.component.d.ts.map +1 -0
- package/development/seat-reservation/seat-reservation-scoped/seat-reservation-scoped.component.js +34 -0
- package/development/seat-reservation/seat-reservation-scoped.d.ts +5 -0
- package/development/seat-reservation/seat-reservation-scoped.d.ts.map +1 -0
- package/development/seat-reservation/seat-reservation-scoped.js +5 -0
- package/development/seat-reservation/seat-reservation.d.ts +6 -0
- package/development/seat-reservation/seat-reservation.d.ts.map +1 -0
- package/development/seat-reservation/seat-reservation.js +7 -0
- package/development/seat-reservation.d.ts +12 -0
- package/development/seat-reservation.d.ts.map +1 -0
- package/development/seat-reservation.js +30 -0
- package/development/timetable-duration/timetable-duration.component.d.ts +22 -0
- package/development/timetable-duration/timetable-duration.component.d.ts.map +1 -0
- package/development/timetable-duration/timetable-duration.component.js +114 -0
- package/development/timetable-duration.d.ts +5 -0
- package/development/timetable-duration.d.ts.map +1 -0
- package/development/timetable-duration.js +5 -0
- package/development/timetable-row/timetable-row.component.d.ts +87 -0
- package/development/timetable-row/timetable-row.component.d.ts.map +1 -0
- package/development/timetable-row/timetable-row.component.js +787 -0
- package/development/timetable-row.d.ts +5 -0
- package/development/timetable-row.d.ts.map +1 -0
- package/development/timetable-row.js +12 -0
- package/development/toDate-BWb6Z1JD.js +24 -0
- package/differenceInMinutes-COvvdYsJ.js +23 -0
- package/format-CmKROkbc.js +1186 -0
- package/index.d.ts +44 -0
- package/index.js +43 -0
- package/isValid-m3_OsPaB.js +45 -0
- package/journey-summary/journey-summary.component.js +193 -0
- package/journey-summary.js +4 -0
- package/package.json +161 -1
- package/pearl-chain/pearl-chain.component.js +164 -0
- package/pearl-chain-time/pearl-chain-time.component.js +156 -0
- package/pearl-chain-time.js +4 -0
- package/pearl-chain-vertical/pearl-chain-vertical.component.js +24 -0
- package/pearl-chain-vertical-item/pearl-chain-vertical-item.component.js +76 -0
- package/pearl-chain-vertical-item.js +4 -0
- package/pearl-chain-vertical.js +4 -0
- package/pearl-chain.js +4 -0
- package/seat-reservation/common/mapper/icon-mapper.js +71 -0
- package/seat-reservation/common/mapper/mapper.js +89 -0
- package/seat-reservation/common/mapper/seat-reservation-sample-data.js +31668 -0
- package/seat-reservation/common/mapper.js +9 -0
- package/seat-reservation/common/svgs.js +243 -0
- package/seat-reservation/common/translations/i18n.js +861 -0
- package/seat-reservation/common/translations.js +4 -0
- package/seat-reservation/common/types.js +1 -0
- package/seat-reservation/common.js +13 -0
- package/seat-reservation/seat-reservation/seat-reservation-base-element.js +756 -0
- package/seat-reservation/seat-reservation/seat-reservation.component.js +410 -0
- package/seat-reservation/seat-reservation-area/seat-reservation-area.component.js +50 -0
- package/seat-reservation/seat-reservation-area.js +4 -0
- package/seat-reservation/seat-reservation-graphic/seat-reservation-assets.js +292 -0
- package/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +73 -0
- package/seat-reservation/seat-reservation-graphic.js +4 -0
- package/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +277 -0
- package/seat-reservation/seat-reservation-navigation-coach.js +4 -0
- package/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.js +73 -0
- package/seat-reservation/seat-reservation-navigation-services.js +4 -0
- package/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.js +167 -0
- package/seat-reservation/seat-reservation-place-control.js +4 -0
- package/seat-reservation/seat-reservation-scoped/seat-reservation-scoped.component.js +20 -0
- package/seat-reservation/seat-reservation-scoped.js +4 -0
- package/seat-reservation/seat-reservation.js +6 -0
- package/seat-reservation.js +29 -0
- package/timetable-duration/timetable-duration.component.js +56 -0
- package/timetable-duration.js +4 -0
- package/timetable-row/timetable-row.component.js +426 -0
- package/timetable-row.js +11 -0
- package/toDate-Bw2KTWeq.js +15 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"translations.d.ts","sourceRoot":"","sources":["../../../../../src/elements-experimental/seat-reservation/common/translations.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { getI18nSeatReservation } from "./translations/i18n.js";
|
|
2
|
+
export {
|
|
3
|
+
getI18nSeatReservation
|
|
4
|
+
};
|
|
5
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRpb25zLmpzIiwic291cmNlcyI6W10sInNvdXJjZXNDb250ZW50IjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjsifQ==
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/** SeatReservation defines all information about a vehicle and the wagons it contains */
|
|
2
|
+
export type SeatReservation = {
|
|
3
|
+
vehicleType: VehicleType;
|
|
4
|
+
deckCoachIndex: number;
|
|
5
|
+
deckCoachLevel: CoachDeckLevel;
|
|
6
|
+
coachItems: CoachItem[];
|
|
7
|
+
};
|
|
8
|
+
/** Describes a coach (wagon) in the reservation. */
|
|
9
|
+
export type CoachItem = {
|
|
10
|
+
id: string;
|
|
11
|
+
number: string;
|
|
12
|
+
dimension: ElementDimension;
|
|
13
|
+
type?: CoachType;
|
|
14
|
+
places?: Place[];
|
|
15
|
+
graphicElements?: BaseElement[];
|
|
16
|
+
serviceElements?: BaseElement[];
|
|
17
|
+
travelClass: PlaceTravelClass[];
|
|
18
|
+
propertyIds?: string[];
|
|
19
|
+
};
|
|
20
|
+
/** Describes a coach (wagon) in the navigation. */
|
|
21
|
+
export type NavigationCoachItem = {
|
|
22
|
+
id: string;
|
|
23
|
+
travelClass: PlaceTravelClass;
|
|
24
|
+
propertyIds: string[];
|
|
25
|
+
freePlaces: CoachNumberOfFreePlaces;
|
|
26
|
+
isDriverArea: boolean;
|
|
27
|
+
driverAreaSide?: Record<string, boolean>;
|
|
28
|
+
};
|
|
29
|
+
/** Extends BaseElement with seat-specific data. */
|
|
30
|
+
export interface Place extends BaseElement {
|
|
31
|
+
number: string;
|
|
32
|
+
state: PlaceState;
|
|
33
|
+
type: PlaceType;
|
|
34
|
+
travelClass?: PlaceTravelClass;
|
|
35
|
+
propertyIds?: string[];
|
|
36
|
+
}
|
|
37
|
+
/** Base properties for any renderable element within a coach. */
|
|
38
|
+
export type BaseElement = {
|
|
39
|
+
icon?: string | null;
|
|
40
|
+
rotation?: number;
|
|
41
|
+
position: ElementPosition;
|
|
42
|
+
dimension: ElementDimension;
|
|
43
|
+
};
|
|
44
|
+
export type ElementDimension = {
|
|
45
|
+
w: number;
|
|
46
|
+
h: number;
|
|
47
|
+
};
|
|
48
|
+
export type ElementPosition = {
|
|
49
|
+
x: number;
|
|
50
|
+
y: number;
|
|
51
|
+
z: number;
|
|
52
|
+
};
|
|
53
|
+
/** Info about */
|
|
54
|
+
export type CoachNumberOfFreePlaces = {
|
|
55
|
+
seats: number;
|
|
56
|
+
bicycles: number;
|
|
57
|
+
};
|
|
58
|
+
/** Selection info for a single place. */
|
|
59
|
+
export type PlaceSelection = {
|
|
60
|
+
id: string;
|
|
61
|
+
number: string;
|
|
62
|
+
deckIndex: number;
|
|
63
|
+
coachIndex: number;
|
|
64
|
+
state: PlaceState;
|
|
65
|
+
placeType: PlaceType;
|
|
66
|
+
};
|
|
67
|
+
export type SeatReservationPlaceSelection = {
|
|
68
|
+
id: string;
|
|
69
|
+
coachId: string;
|
|
70
|
+
coachNumber: string;
|
|
71
|
+
coachIndex: number;
|
|
72
|
+
deckIndex: number;
|
|
73
|
+
placeNumber: string;
|
|
74
|
+
placeType: PlaceType;
|
|
75
|
+
placeTravelClass: PlaceTravelClass;
|
|
76
|
+
propertyIds: string[];
|
|
77
|
+
};
|
|
78
|
+
export type SeatReservationSelectedCoach = {
|
|
79
|
+
coachId: string;
|
|
80
|
+
coachNumber: string;
|
|
81
|
+
coachIndex: number;
|
|
82
|
+
coachType?: CoachType;
|
|
83
|
+
coachTravelClass: PlaceTravelClass[];
|
|
84
|
+
coachPropertyIds?: string[];
|
|
85
|
+
coachNumberOfFreePlaces?: CoachNumberOfFreePlaces;
|
|
86
|
+
};
|
|
87
|
+
export type SeatReservationSelectedPlaces = {
|
|
88
|
+
seats: SeatReservationPlaceSelection[];
|
|
89
|
+
bicycles: SeatReservationPlaceSelection[];
|
|
90
|
+
};
|
|
91
|
+
export type PlaceType = 'SEAT' | 'BICYCLE';
|
|
92
|
+
export type CoachDeckLevel = 'SINGLE_DECK' | 'LOWER_DECK' | 'MIDDLE_DECK' | 'UPPER_DECK';
|
|
93
|
+
export type CoachType = 'RESTAURANT_COACH' | 'BICYCLE_COACH' | 'LUGGAGE_COACH' | 'TRAIN_HEAD';
|
|
94
|
+
export type PlaceState = 'FREE' | 'ALLOCATED' | 'RESTRICTED' | 'SELECTED';
|
|
95
|
+
export type PlaceTravelClass = 'FIRST' | 'SECOND' | 'ANY_CLASS';
|
|
96
|
+
export type VehicleType = 'TRAIN' | 'BUS';
|
|
97
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/elements-experimental/seat-reservation/common/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../../src/elements-experimental/seat-reservation/common.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { mapCoachInfosToCoachSelection, mapPlaceAndCoachToSeatReservationPlaceSelection, mapPlaceInfosToPlaceSelection, mapRawDataToSeatReservation } from "./common/mapper/mapper.js";
|
|
2
|
+
import { mapIconToSvg } from "./common/mapper/icon-mapper.js";
|
|
3
|
+
import { svgs } from "./common/svgs.js";
|
|
4
|
+
import { getI18nSeatReservation } from "./common/translations/i18n.js";
|
|
5
|
+
export {
|
|
6
|
+
getI18nSeatReservation,
|
|
7
|
+
mapCoachInfosToCoachSelection,
|
|
8
|
+
mapIconToSvg,
|
|
9
|
+
mapPlaceAndCoachToSeatReservationPlaceSelection,
|
|
10
|
+
mapPlaceInfosToPlaceSelection,
|
|
11
|
+
mapRawDataToSeatReservation,
|
|
12
|
+
svgs
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlcyI6W10sInNvdXJjZXNDb250ZW50IjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OzsifQ==
|
|
@@ -0,0 +1,273 @@
|
|
|
1
|
+
import { LitElement, PropertyValues } from 'lit';
|
|
2
|
+
import { BaseElement, CoachNumberOfFreePlaces, ElementDimension, ElementPosition, NavigationCoachItem, Place, PlaceSelection, SeatReservation, SeatReservationSelectedPlaces } from '../common.ts';
|
|
3
|
+
declare enum ScrollDirection {
|
|
4
|
+
right = "right",
|
|
5
|
+
left = "left"
|
|
6
|
+
}
|
|
7
|
+
interface CoachScrollTriggerPoint {
|
|
8
|
+
start: number;
|
|
9
|
+
end: number;
|
|
10
|
+
width: number;
|
|
11
|
+
}
|
|
12
|
+
export declare class SeatReservationBaseElement extends LitElement {
|
|
13
|
+
static readonly events: {
|
|
14
|
+
readonly selectedplaces: "selectedplaces";
|
|
15
|
+
readonly selectedcoach: "selectedcoach";
|
|
16
|
+
};
|
|
17
|
+
/** The seat reservations array contains all coaches and places */
|
|
18
|
+
accessor seatReservations: SeatReservation[];
|
|
19
|
+
/** The seat reservation navigation can be toggled by this property */
|
|
20
|
+
accessor hasNavigation: boolean;
|
|
21
|
+
/** The seat reservation area is aligned vertically */
|
|
22
|
+
accessor alignVertical: boolean;
|
|
23
|
+
/** The seat reservation area's base grid size */
|
|
24
|
+
accessor baseGridSize: number;
|
|
25
|
+
/** The seat reservation area's width */
|
|
26
|
+
accessor height: number;
|
|
27
|
+
/** Maximal number of possible clickable seats */
|
|
28
|
+
accessor maxSeatReservations: number;
|
|
29
|
+
/** Maximal number of possible clickable bicycle places */
|
|
30
|
+
accessor maxBicycleReservations: number;
|
|
31
|
+
/** Any click functionality is prevented */
|
|
32
|
+
accessor preventPlaceClick: boolean;
|
|
33
|
+
accessor preselectCoachIndex: number;
|
|
34
|
+
protected accessor selectedCoachIndex: number;
|
|
35
|
+
protected accessor focusedCoachIndex: number;
|
|
36
|
+
protected accessor hoveredCoachIndex: number;
|
|
37
|
+
protected coachBorderPadding: number;
|
|
38
|
+
protected gapBetweenCoaches: number;
|
|
39
|
+
protected coachBorderOffset: number;
|
|
40
|
+
protected gapBetweenCoachDecks: number;
|
|
41
|
+
protected coachNavButtonDim: number;
|
|
42
|
+
protected coachNavData: NavigationCoachItem[];
|
|
43
|
+
protected currScrollDirection: ScrollDirection;
|
|
44
|
+
protected maxCalcCoachesWidth: number;
|
|
45
|
+
protected scrollCoachesAreaWidth: number;
|
|
46
|
+
protected scrollNavigationAreaDim: number;
|
|
47
|
+
protected triggerCoachPositionsCollection: CoachScrollTriggerPoint[];
|
|
48
|
+
protected navigationScrollArea: HTMLElement;
|
|
49
|
+
protected coachScrollArea: HTMLElement;
|
|
50
|
+
protected currSelectedPlace: Place | null;
|
|
51
|
+
protected currSelectedPlaceElementId: string | null;
|
|
52
|
+
protected currSelectedCoachIndex: number;
|
|
53
|
+
protected currSelectedDeckIndex: number;
|
|
54
|
+
protected preventCoachScrollByPlaceClick: boolean;
|
|
55
|
+
protected selectedSeatReservationPlaces: SeatReservationSelectedPlaces;
|
|
56
|
+
protected seatReservationWithoutNavigationHasFocus: boolean;
|
|
57
|
+
protected isCoachGridFocusable: boolean;
|
|
58
|
+
protected isAutoScrolling: boolean;
|
|
59
|
+
protected isKeyboardNavigation: boolean;
|
|
60
|
+
protected hasMultipleDecks: boolean;
|
|
61
|
+
protected hasSeatReservationNativeFocus: boolean;
|
|
62
|
+
protected keyboardNavigationEvents: {
|
|
63
|
+
readonly ArrowLeft: "ArrowLeft";
|
|
64
|
+
readonly ArrowRight: "ArrowRight";
|
|
65
|
+
readonly ArrowUp: "ArrowUp";
|
|
66
|
+
readonly ArrowDown: "ArrowDown";
|
|
67
|
+
readonly Tab: "Tab";
|
|
68
|
+
readonly Enter: "Enter";
|
|
69
|
+
};
|
|
70
|
+
protected notAreaElements: string[];
|
|
71
|
+
protected overHangingElementInformation: {
|
|
72
|
+
coachId: string;
|
|
73
|
+
overhangingPlaces: boolean;
|
|
74
|
+
overhangingGraphicAreas: boolean;
|
|
75
|
+
}[];
|
|
76
|
+
private _isRunningInitPreselectCoachIndex;
|
|
77
|
+
private _scrollTimeout;
|
|
78
|
+
private _lastStartScrollPos;
|
|
79
|
+
protected willUpdate(changedProperties: PropertyValues<this>): void;
|
|
80
|
+
protected navigateByDirectionBtn(btnDirection: string): void;
|
|
81
|
+
/**
|
|
82
|
+
* Data can be prepared once for the entire component
|
|
83
|
+
* in order to avoid recurring iteration processes in rendering.
|
|
84
|
+
*/
|
|
85
|
+
private _initPrepareSeatReservationData;
|
|
86
|
+
/** Init scroll event handling for coach navigation */
|
|
87
|
+
protected initNavigationSelectionByScrollEvent(): void;
|
|
88
|
+
/**
|
|
89
|
+
* Scroll event handler managed the end of scrolling inside the coach scroll area.
|
|
90
|
+
* Timeout event handling to check if the scrolling has been completed.
|
|
91
|
+
* It is required because the Safari browser does not handle scrollend event,
|
|
92
|
+
* and we therefore imitate this event -> scrollend.
|
|
93
|
+
*/
|
|
94
|
+
protected coachAreaScrollend(): void;
|
|
95
|
+
/**
|
|
96
|
+
* If no navigation exists (property setting -> hasNavigation) and a table coach gets the focus,
|
|
97
|
+
* the first place in the coach must be automatically preselected to control the place navigation via keyboard
|
|
98
|
+
*
|
|
99
|
+
* @param focusCoachIndex
|
|
100
|
+
*/
|
|
101
|
+
protected onFocusTableCoachAndPreselectPlace(focusCoachIndex: number): void;
|
|
102
|
+
/** Will be triggered by focus navigation direction */
|
|
103
|
+
protected onFocusNavDirectionButton(): void;
|
|
104
|
+
/** TAB Key Event handling for Coach Navigation */
|
|
105
|
+
protected onKeyNavigationNavCoachButton(event: KeyboardEvent, currNavCoachButtonIndex: number): void;
|
|
106
|
+
/** General TAB Key Event handling for tab navigation inside the coach navigation area and the seatmap area */
|
|
107
|
+
private _handleTabKeyNavigation;
|
|
108
|
+
/**
|
|
109
|
+
* Initialisation of Keyboard Seatmap event handling to navigation between each places inside a selected coach by using [arrow] keys.
|
|
110
|
+
* With the [TAB] key the user navigation goes to the next coach navigation element and the currently selected place is automatically reset.
|
|
111
|
+
*/
|
|
112
|
+
protected keyboardSeatmapEventHandling(event: KeyboardEvent): void;
|
|
113
|
+
/**
|
|
114
|
+
* Selects a place inside the coach if navigated via keyboard,
|
|
115
|
+
* otherwise the coach grid is selected (necessary for ScreenReader)
|
|
116
|
+
*/
|
|
117
|
+
protected preselectPlaceInCoach(): void;
|
|
118
|
+
protected scrollToSelectedNavCoach(selectedNavCoachIndex: number): void;
|
|
119
|
+
protected focusPlaceElement(place: Place | null): void;
|
|
120
|
+
protected unfocusPlaceElement(): void;
|
|
121
|
+
protected getCalculatedDimension(elementDimension: ElementDimension, coachDimension?: ElementDimension, isOriginHeight?: boolean, isStretchHeight?: boolean): ElementDimension;
|
|
122
|
+
protected getCalculatedPosition(elementPosition: ElementPosition, elementDimension?: ElementDimension, coachDimension?: ElementDimension, isOriginHeight?: boolean): ElementPosition;
|
|
123
|
+
/**
|
|
124
|
+
* detects if a (graphical) element is on the border with its position (upper or lower border).
|
|
125
|
+
* @param baseElement
|
|
126
|
+
* @param coachDimension
|
|
127
|
+
* @protected
|
|
128
|
+
*/
|
|
129
|
+
protected isElementDirectlyOnBorder(baseElement: BaseElement, coachDimension: ElementDimension): boolean;
|
|
130
|
+
/**
|
|
131
|
+
* Counts all available seats together depending on the seat type
|
|
132
|
+
*
|
|
133
|
+
* @param places
|
|
134
|
+
* @returns An Object with count of free seats and free bicycle places
|
|
135
|
+
*/
|
|
136
|
+
protected getAvailableFreePlacesNumFromCoach(places: Place[] | undefined): CoachNumberOfFreePlaces;
|
|
137
|
+
/**
|
|
138
|
+
* At the end of a scroll Event from the coach scrollable area,
|
|
139
|
+
* the reached coach is marked as selected
|
|
140
|
+
*/
|
|
141
|
+
private _handleCoachAreaScrollendEvent;
|
|
142
|
+
/**
|
|
143
|
+
* Performs an automatic main navigation scroll to the specified selectedNavCoachIndex.
|
|
144
|
+
* Calculates the central scroll offset of the nav coach to be selected.
|
|
145
|
+
* @param selectedNavCoachIndex
|
|
146
|
+
*/
|
|
147
|
+
private _scrollToSelectedNavigationButton;
|
|
148
|
+
/**
|
|
149
|
+
* Sets the new ScrollDirection by the new given target coach index.
|
|
150
|
+
*/
|
|
151
|
+
private _setScrollDirectionByCoachIndex;
|
|
152
|
+
/**
|
|
153
|
+
* Returns the scroll start or end position X from the selected coach.
|
|
154
|
+
* In case the user is currently navigating through places by keyboard and goes to previous coach,
|
|
155
|
+
* then we return the end position of the coach to get the closest scroll position of the next focus place.
|
|
156
|
+
* @returns number
|
|
157
|
+
*/
|
|
158
|
+
private _getCoachScrollPositionX;
|
|
159
|
+
/**
|
|
160
|
+
* Sets the focus on the HTML table (grid) caption element so that the heading is read out when using a ScreenReader.
|
|
161
|
+
*/
|
|
162
|
+
private _setFocusToSelectedCoachGrid;
|
|
163
|
+
/**
|
|
164
|
+
* Returns whether the current scrolled position can be used to scroll to the selected wagon
|
|
165
|
+
* @returns boolean
|
|
166
|
+
*/
|
|
167
|
+
private _isScrollableToSelectedCoach;
|
|
168
|
+
/**
|
|
169
|
+
* Returns the coach index which is currently visible in the scroll area
|
|
170
|
+
* @returns number
|
|
171
|
+
*/
|
|
172
|
+
private _getCoachIndexByScrollTriggerPosition;
|
|
173
|
+
/**
|
|
174
|
+
* Get the first place of current selected coach by table cell coordinate 0-0 id.
|
|
175
|
+
* @returns Place or null
|
|
176
|
+
*/
|
|
177
|
+
private _getFirstPlaceInSelectedCoach;
|
|
178
|
+
private _getSwitchedCoachDeckIndexByKeyNavigation;
|
|
179
|
+
/**
|
|
180
|
+
* To get the correct closest place of current pressed key and the current selected place,
|
|
181
|
+
* we have to investigate the coordinates of each place to find the closest place of the currSelectedPlaceElementId.
|
|
182
|
+
* @param pressedKey
|
|
183
|
+
* @returns Place or null
|
|
184
|
+
*/
|
|
185
|
+
private _getClosestPlaceByKeyDirection;
|
|
186
|
+
private _navigateCoachNavigationByKeyboard;
|
|
187
|
+
private _navigateToPlaceByKeyboard;
|
|
188
|
+
protected getNextAvailableCoachIndex(currentIndex?: number): number;
|
|
189
|
+
protected getPrevAvailableCoachIndex(currentIndex?: number): number;
|
|
190
|
+
protected updateSelectedSeatReservationPlaces(placeSelection: PlaceSelection): void;
|
|
191
|
+
private _updateSelectedSeatReservationPlaces;
|
|
192
|
+
protected updateCurrentSelectedPlaceInCoach(placeSelection: PlaceSelection): void;
|
|
193
|
+
protected updateCurrentSelectedCoach(): void;
|
|
194
|
+
protected getPlaceElementId(coachDeckIndex: number, coachIndex: number, placeNumber: string): string;
|
|
195
|
+
/**
|
|
196
|
+
* In the case of coach layouts with different decks,
|
|
197
|
+
* it is necessary to extend the offset with empty coaches
|
|
198
|
+
* in order to create a stable vehicle layout.
|
|
199
|
+
*
|
|
200
|
+
* [ooo]-[ooo]-[ooo]
|
|
201
|
+
* [ooo]-[ooo]-[ooo]-[ooo]-[ooo]
|
|
202
|
+
*/
|
|
203
|
+
private _initEmptyCoachDeckOffsets;
|
|
204
|
+
/**
|
|
205
|
+
* Initialization of SeatReservationPlaceSelection Array based on the transferred places
|
|
206
|
+
* that have the state SELECTED within the seatReservation object
|
|
207
|
+
*/
|
|
208
|
+
private _initSeatReservationPlaceSelection;
|
|
209
|
+
/**
|
|
210
|
+
* All selected places will be reset or the currentSelectedPlace was given, then we reset all except currentSelectedPlace
|
|
211
|
+
* @param reservationPlaceSelections
|
|
212
|
+
* @param currSelectedPlace
|
|
213
|
+
*/
|
|
214
|
+
private _resetAllPlaceSelections;
|
|
215
|
+
private _getSeatReservationPlaceSelection;
|
|
216
|
+
private _getSeatReservationSelectedCoach;
|
|
217
|
+
private _setCurrSelectedPlaceElementId;
|
|
218
|
+
/**
|
|
219
|
+
* Preparation of the used documents font-size which needs
|
|
220
|
+
* to be determined in order to correctly calculate CSS values with rem
|
|
221
|
+
* */
|
|
222
|
+
private _determineBaseFontSize;
|
|
223
|
+
/**
|
|
224
|
+
* Prepares data for displaying navigation area.
|
|
225
|
+
* Calculates the values which are not going to change during use of a component:
|
|
226
|
+
* - coach id
|
|
227
|
+
* - list of service icons
|
|
228
|
+
* - class (first, second, any)
|
|
229
|
+
* - whether there is a driver area left or right
|
|
230
|
+
* */
|
|
231
|
+
private _prepareNavigationCoachData;
|
|
232
|
+
private _prepareTravelClassNavigation;
|
|
233
|
+
private _prepareDriverAreaSideNavigation;
|
|
234
|
+
private _prepareServiceIconsNavigation;
|
|
235
|
+
private _prepareCoachWidthAndGapCalculations;
|
|
236
|
+
/**
|
|
237
|
+
* Returns the current selected place HTML element by currSelectedPlaceElementId.
|
|
238
|
+
* @returns HTMLElement or null
|
|
239
|
+
*/
|
|
240
|
+
private _getPlaceHtmlElement;
|
|
241
|
+
/**
|
|
242
|
+
* Returns the extracted coach deck index from place id
|
|
243
|
+
* @returns number
|
|
244
|
+
*/
|
|
245
|
+
private _getDeckIndexByPlaceId;
|
|
246
|
+
private _isValidCoachIndex;
|
|
247
|
+
/**
|
|
248
|
+
* Returns existing coach deck index depending on the selected coach.
|
|
249
|
+
* This method is necessary to get an available coach deck index during keyboard navigation, which can vary between coaches with different decks.
|
|
250
|
+
* For example, when navigating from a coach with two decks to a coach with one deck.
|
|
251
|
+
*
|
|
252
|
+
* [ooo]-[ooo]-[ooo]
|
|
253
|
+
* [ooo]-[ooo]-[ooo]-[ooo]-[ooo]
|
|
254
|
+
*
|
|
255
|
+
* @returns number
|
|
256
|
+
*/
|
|
257
|
+
private _getExistingCoachDeckIndex;
|
|
258
|
+
/**
|
|
259
|
+
* If a selected place is slightly hidden by the overflow scroll content and is still clicked,
|
|
260
|
+
* the method tries to scroll the selected place into the nearest viewport, so that it is completely visible.
|
|
261
|
+
*
|
|
262
|
+
* @param placeId
|
|
263
|
+
*/
|
|
264
|
+
private _scrollPlaceIntoNearestViewport;
|
|
265
|
+
/**
|
|
266
|
+
* checks if any places or graphical elements (e.g. toilet area, etc.) are overhanging the coach borders
|
|
267
|
+
* @param coachItemWidth
|
|
268
|
+
* @param elements
|
|
269
|
+
*/
|
|
270
|
+
private _isOverhangingElementsPresent;
|
|
271
|
+
}
|
|
272
|
+
export {};
|
|
273
|
+
//# sourceMappingURL=seat-reservation-base-element.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"seat-reservation-base-element.d.ts","sourceRoot":"","sources":["../../../../../src/elements-experimental/seat-reservation/seat-reservation/seat-reservation-base-element.ts"],"names":[],"mappings":"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"}
|