@movalib/movalib-commons 1.59.28 → 1.59.29
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/dist/index.d.ts +1 -1
- package/dist/index.js +2 -2
- package/dist/src/ScheduleFields.js +1 -0
- package/dist/src/helpers/DateUtils.d.ts +2 -2
- package/dist/src/helpers/DateUtils.js +5 -10
- package/dist/src/models/Garage.d.ts +2 -3
- package/dist/src/models/Garage.js +2 -1
- package/index.ts +1 -1
- package/package.json +8 -4
- package/src/ScheduleFields.tsx +3 -1
- package/src/components/vehicle/VehicleFullCard.tsx +3 -3
- package/src/helpers/DateUtils.ts +3 -10
- package/src/models/Garage.ts +4 -5
package/dist/index.d.ts
CHANGED
|
@@ -52,7 +52,7 @@ export type { MovaFormField, MovaLoginForm, MovaUserSignUpForm, MovaInterval, Mo
|
|
|
52
52
|
export { readCookie, deleteCookie } from './src/helpers/CookieUtils';
|
|
53
53
|
export { validateField, formatVehicleTire, formatFrenchVehiclePlate, isEmpty, getApplicationShortLabel, capitalizeFirstLetter, flexLeftRow, formatPhoneNumber, getFormattedSchedule, getFormattedIntervals, findScheduleByDayOfWeek, getDayOfWeekLabel, isSafariOniOS, getApplicationsShortLabels, } from './src/helpers/Tools';
|
|
54
54
|
export { validatePhoneNumber, validateText, validateEmail } from './src/helpers/Validator';
|
|
55
|
-
export {
|
|
55
|
+
export { formatDateByTimezone, getLongFormattedDateTime } from './src/helpers/DateUtils';
|
|
56
56
|
export { request, API_BASE_URL } from './src/helpers/ApiHelper';
|
|
57
57
|
export { CustomerType, RoleType, MovaAppType, DayOfWeek, EventState, EventType, DocumentType, DigitalPassportIndex, DocumentState, Gender, DateFormatTypes, PartsApplicationType, ProductType, OrderPreference, OrderState, SlotAlgorithm, VehiclePlateFormat as VehiclePlateType, SubscriptionPaymentInterval, RegistrationState, PrestationType, PrestationState, CountryCode, SubscriptionState, SubscriptionType, APIMethod, } from './src/helpers/Enums';
|
|
58
58
|
export { openDialogPrint } from './src/utils/DialogPrint';
|
package/dist/index.js
CHANGED
|
@@ -5,7 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
};
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
exports.VehicleTire = exports.Event = exports.Schedule = exports.VehicleGarage = exports.Garage = exports.Document = exports.Vehicle = exports.Address = exports.Role = exports.User = exports.Customer = exports.Logger = exports.Operation = exports.Prestation = exports.Product = exports.Supplier = exports.Employee = exports.Absence = exports.Subscription = exports.LinkedDocumentDialog = exports.PrintSize = exports.PLVComponent = exports.QrCodePLVContainer = exports.ActivateAccount = exports.GenderSelector = exports.ConfirmationDialog = exports.MovaVehicleTireField = exports.MovaCopyright = exports.MovaSignUp = exports.MovaLogin = exports.MovaSnackbar = exports.TestButton = exports.oldRegexPlate = exports.regexPlate = exports.VehiclePlateField = exports.QRCode = exports.MovaDialog = exports.Loader = exports.MovaDigitalPassport = exports.VehicleFullCard = exports.ScheduleFields = exports.AddressFields = exports.AccountValidation = exports.GaragePLV = exports.IbanInput = exports.DialogForgotPassword = exports.UserService = exports.GarageService = exports.AuthenticationService = exports.VehicleService = void 0;
|
|
8
|
-
exports.openDialogPrint = exports.APIMethod = exports.SubscriptionType = exports.SubscriptionState = exports.CountryCode = exports.PrestationState = exports.PrestationType = exports.RegistrationState = exports.SubscriptionPaymentInterval = exports.VehiclePlateType = exports.SlotAlgorithm = exports.OrderState = exports.OrderPreference = exports.ProductType = exports.PartsApplicationType = exports.DateFormatTypes = exports.Gender = exports.DocumentState = exports.DigitalPassportIndex = exports.DocumentType = exports.EventType = exports.EventState = exports.DayOfWeek = exports.MovaAppType = exports.RoleType = exports.CustomerType = exports.API_BASE_URL = exports.request = exports.getLongFormattedDateTime = exports.
|
|
8
|
+
exports.openDialogPrint = exports.APIMethod = exports.SubscriptionType = exports.SubscriptionState = exports.CountryCode = exports.PrestationState = exports.PrestationType = exports.RegistrationState = exports.SubscriptionPaymentInterval = exports.VehiclePlateType = exports.SlotAlgorithm = exports.OrderState = exports.OrderPreference = exports.ProductType = exports.PartsApplicationType = exports.DateFormatTypes = exports.Gender = exports.DocumentState = exports.DigitalPassportIndex = exports.DocumentType = exports.EventType = exports.EventState = exports.DayOfWeek = exports.MovaAppType = exports.RoleType = exports.CustomerType = exports.API_BASE_URL = exports.request = exports.getLongFormattedDateTime = exports.formatDateByTimezone = exports.validateEmail = exports.validateText = exports.validatePhoneNumber = exports.getApplicationsShortLabels = exports.isSafariOniOS = exports.getDayOfWeekLabel = exports.findScheduleByDayOfWeek = exports.getFormattedIntervals = exports.getFormattedSchedule = exports.formatPhoneNumber = exports.flexLeftRow = exports.capitalizeFirstLetter = exports.getApplicationShortLabel = exports.isEmpty = exports.formatFrenchVehiclePlate = exports.formatVehicleTire = exports.validateField = exports.deleteCookie = exports.readCookie = exports.CategoryPrestation = void 0;
|
|
9
9
|
exports.StyledToggleButtonGroup = exports.StyledToggleButton = void 0;
|
|
10
10
|
// Export des services
|
|
11
11
|
var VehicleService_1 = require("./src/services/VehicleService");
|
|
@@ -133,7 +133,7 @@ Object.defineProperty(exports, "validatePhoneNumber", { enumerable: true, get: f
|
|
|
133
133
|
Object.defineProperty(exports, "validateText", { enumerable: true, get: function () { return Validator_1.validateText; } });
|
|
134
134
|
Object.defineProperty(exports, "validateEmail", { enumerable: true, get: function () { return Validator_1.validateEmail; } });
|
|
135
135
|
var DateUtils_1 = require("./src/helpers/DateUtils");
|
|
136
|
-
Object.defineProperty(exports, "
|
|
136
|
+
Object.defineProperty(exports, "formatDateByTimezone", { enumerable: true, get: function () { return DateUtils_1.formatDateByTimezone; } });
|
|
137
137
|
Object.defineProperty(exports, "getLongFormattedDateTime", { enumerable: true, get: function () { return DateUtils_1.getLongFormattedDateTime; } });
|
|
138
138
|
var ApiHelper_1 = require("./src/helpers/ApiHelper");
|
|
139
139
|
Object.defineProperty(exports, "request", { enumerable: true, get: function () { return ApiHelper_1.request; } });
|
|
@@ -52,6 +52,7 @@ var ScheduleFields = function (_a) {
|
|
|
52
52
|
// Parcourez chaque élément de apiSchedules et mettez à jour updatedSchedules
|
|
53
53
|
var today = new Date().toISOString().substring(0, 10);
|
|
54
54
|
var _loop_1 = function (apiSchedule) {
|
|
55
|
+
console.log(apiSchedule.intervals);
|
|
55
56
|
var dayIndex = mergedSchedules.findIndex(function (schedule) { return schedule.day === apiSchedule.dayOfWeek; });
|
|
56
57
|
if (dayIndex !== -1) {
|
|
57
58
|
mergedSchedules[dayIndex].checked = apiSchedule.intervals.length > 0;
|
|
@@ -4,6 +4,6 @@ export declare function isValidDate(date: unknown): date is Date;
|
|
|
4
4
|
export declare const countryTimeZones: {
|
|
5
5
|
[key: string]: string;
|
|
6
6
|
};
|
|
7
|
-
export declare const toUTCToLocaleDate: (date: "" | Date | null,
|
|
8
|
-
export declare const
|
|
7
|
+
export declare const toUTCToLocaleDate: (date: "" | Date | null, timeZone: string) => Date;
|
|
8
|
+
export declare const formatDateByTimezone: (date: Date | undefined, timeZone: string, formatType: DateFormatTypes) => string;
|
|
9
9
|
export declare function getLongFormattedDateTime(date: Date | undefined, timeZone: string, locale: Locale): string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getLongFormattedDateTime = exports.
|
|
3
|
+
exports.getLongFormattedDateTime = exports.formatDateByTimezone = exports.toUTCToLocaleDate = exports.countryTimeZones = exports.isValidDate = void 0;
|
|
4
4
|
var date_fns_tz_1 = require("date-fns-tz");
|
|
5
5
|
var locale_1 = require("date-fns/locale");
|
|
6
6
|
var Enums_1 = require("./Enums");
|
|
@@ -14,24 +14,19 @@ exports.countryTimeZones = {
|
|
|
14
14
|
'FR': 'Europe/Paris',
|
|
15
15
|
// Ajoutez d'autres correspondances de codes de pays et de fuseaux horaires ici
|
|
16
16
|
};
|
|
17
|
-
var toUTCToLocaleDate = function (date,
|
|
17
|
+
var toUTCToLocaleDate = function (date, timeZone) {
|
|
18
18
|
var zonedDate = new Date(date !== null && date !== void 0 ? date : "");
|
|
19
19
|
if (date) {
|
|
20
|
-
var timeZone = exports.countryTimeZones[countryCode.toUpperCase()];
|
|
21
|
-
if (!timeZone) {
|
|
22
|
-
throw new Error('Code de pays non pris en charge');
|
|
23
|
-
}
|
|
24
20
|
// Convertir la date UTC en date du fuseau horaire local
|
|
25
21
|
zonedDate = (0, date_fns_tz_1.utcToZonedTime)(date, timeZone);
|
|
26
22
|
}
|
|
27
23
|
return zonedDate;
|
|
28
24
|
};
|
|
29
25
|
exports.toUTCToLocaleDate = toUTCToLocaleDate;
|
|
30
|
-
var
|
|
26
|
+
var formatDateByTimezone = function (date, timeZone, formatType) {
|
|
31
27
|
if (date) {
|
|
32
28
|
// Convertir la date UTC en date du fuseau horaire local
|
|
33
|
-
var zonedDate = (0, exports.toUTCToLocaleDate)(date,
|
|
34
|
-
var timeZone = exports.countryTimeZones[countryCode.toUpperCase()];
|
|
29
|
+
var zonedDate = (0, exports.toUTCToLocaleDate)(date, timeZone);
|
|
35
30
|
// Formater la date
|
|
36
31
|
switch (formatType) {
|
|
37
32
|
case Enums_1.DateFormatTypes.SHORT_FORMAT_DATE:
|
|
@@ -44,7 +39,7 @@ var formatDateByCountryCode = function (date, countryCode, formatType) {
|
|
|
44
39
|
}
|
|
45
40
|
return '';
|
|
46
41
|
};
|
|
47
|
-
exports.
|
|
42
|
+
exports.formatDateByTimezone = formatDateByTimezone;
|
|
48
43
|
function getLongFormattedDateTime(date, timeZone, locale) {
|
|
49
44
|
if (date) {
|
|
50
45
|
var day = (0, Tools_1.capitalizeFirstLetter)((0, date_fns_tz_1.format)(date, 'eeee', { timeZone: timeZone, locale: locale }));
|
|
@@ -32,8 +32,6 @@ export default class Garage {
|
|
|
32
32
|
orderPreference?: OrderPreference;
|
|
33
33
|
amVehicleDeposit?: Date;
|
|
34
34
|
pmVehicleDeposit?: Date;
|
|
35
|
-
zonedAmVehicleDeposit?: Date;
|
|
36
|
-
zonedPmVehicleDeposit?: Date;
|
|
37
35
|
appointmentRequestStart?: Date;
|
|
38
36
|
slotAlgorithm?: SlotAlgorithm;
|
|
39
37
|
customerQuoteActive?: boolean;
|
|
@@ -54,6 +52,7 @@ export default class Garage {
|
|
|
54
52
|
loanerVehicleRequestActive?: boolean;
|
|
55
53
|
paymentAuthorizationActive?: boolean;
|
|
56
54
|
paymentAuthorizationMinDowntime?: number;
|
|
55
|
+
timezone: string;
|
|
57
56
|
customStyle?: string;
|
|
58
|
-
constructor(id: string, adminId: string, name: string, address: Address, workforce: number, prestations: Prestation[], schedules: Schedule[], contactPhone: string, prestationCategories: CategoryPrestation[], dayPeriodFastServiceExcluded: boolean, loanerVehicleFastServiceExcluded: boolean, fastServiceThreshold: number, vehicles?: VehicleGarage[], contactEmail?: string, logo?: string, suppliers?: Supplier[], documents?: Document[], subscriptions?: Subscription[], loanerVehicleActive?: boolean, loanerVehicleRequestActive?: boolean, customStyle?: string, subscription?: Subscription, partialWorkforce?: number);
|
|
57
|
+
constructor(id: string, adminId: string, name: string, address: Address, workforce: number, prestations: Prestation[], schedules: Schedule[], contactPhone: string, prestationCategories: CategoryPrestation[], dayPeriodFastServiceExcluded: boolean, loanerVehicleFastServiceExcluded: boolean, fastServiceThreshold: number, timezone: string, vehicles?: VehicleGarage[], contactEmail?: string, logo?: string, suppliers?: Supplier[], documents?: Document[], subscriptions?: Subscription[], loanerVehicleActive?: boolean, loanerVehicleRequestActive?: boolean, customStyle?: string, subscription?: Subscription, partialWorkforce?: number);
|
|
59
58
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
var Garage = /** @class */ (function () {
|
|
4
|
-
function Garage(id, adminId, name, address, workforce, prestations, schedules, contactPhone, prestationCategories, dayPeriodFastServiceExcluded, loanerVehicleFastServiceExcluded, fastServiceThreshold, vehicles, contactEmail, logo, suppliers, documents, subscriptions, loanerVehicleActive, loanerVehicleRequestActive, customStyle, subscription, partialWorkforce) {
|
|
4
|
+
function Garage(id, adminId, name, address, workforce, prestations, schedules, contactPhone, prestationCategories, dayPeriodFastServiceExcluded, loanerVehicleFastServiceExcluded, fastServiceThreshold, timezone, vehicles, contactEmail, logo, suppliers, documents, subscriptions, loanerVehicleActive, loanerVehicleRequestActive, customStyle, subscription, partialWorkforce) {
|
|
5
5
|
this.id = id;
|
|
6
6
|
this.adminId = adminId;
|
|
7
7
|
this.name = name;
|
|
@@ -25,6 +25,7 @@ var Garage = /** @class */ (function () {
|
|
|
25
25
|
this.loanerVehicleFastServiceExcluded = loanerVehicleFastServiceExcluded;
|
|
26
26
|
this.fastServiceThreshold = fastServiceThreshold;
|
|
27
27
|
this.customStyle = customStyle;
|
|
28
|
+
this.timezone = timezone;
|
|
28
29
|
}
|
|
29
30
|
return Garage;
|
|
30
31
|
}());
|
package/index.ts
CHANGED
|
@@ -83,7 +83,7 @@ export {
|
|
|
83
83
|
getApplicationsShortLabels,
|
|
84
84
|
} from './src/helpers/Tools';
|
|
85
85
|
export { validatePhoneNumber, validateText, validateEmail } from './src/helpers/Validator';
|
|
86
|
-
export {
|
|
86
|
+
export { formatDateByTimezone, getLongFormattedDateTime } from './src/helpers/DateUtils';
|
|
87
87
|
export { request, API_BASE_URL } from './src/helpers/ApiHelper';
|
|
88
88
|
|
|
89
89
|
// Export des enums
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@movalib/movalib-commons",
|
|
3
|
-
"version": "1.59.
|
|
3
|
+
"version": "1.59.29",
|
|
4
4
|
"description": "Bibliothèque d'objets communs à l'ensemble des projets React de Movalib",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"copy-assets": "cp -r src/assets/ dist/src/assets/ && cp -r src/style/ dist/src/style/",
|
|
12
12
|
"test": "echo \"Error: no test specified\" && exit 1",
|
|
13
13
|
"clean": "rm -rf dist node_modules package-lock.json",
|
|
14
|
-
"build:dev"
|
|
14
|
+
"build:dev": "rm -rf dist && tsc && npm run copy-assets && npm pack"
|
|
15
15
|
},
|
|
16
16
|
"keywords": [],
|
|
17
17
|
"author": "",
|
|
@@ -31,6 +31,8 @@
|
|
|
31
31
|
"file-loader": "^6.2.0",
|
|
32
32
|
"html2canvas": "^1.4.1",
|
|
33
33
|
"js-cookie": "^3.0.5",
|
|
34
|
+
"moment": "^2.30.1",
|
|
35
|
+
"moment-timezone": "^0.5.48",
|
|
34
36
|
"pdf-lib": "^1.17.1",
|
|
35
37
|
"pdfjs-dist": "^4.6.82",
|
|
36
38
|
"qr-code-styling": "^1.4.4",
|
|
@@ -43,7 +45,9 @@
|
|
|
43
45
|
"typescript": "^4.9.5"
|
|
44
46
|
},
|
|
45
47
|
"eslintConfig": {
|
|
46
|
-
"extends": [
|
|
48
|
+
"extends": [
|
|
49
|
+
"react-app"
|
|
50
|
+
]
|
|
47
51
|
},
|
|
48
52
|
"devDependencies": {
|
|
49
53
|
"@types/js-cookie": "^3.0.4",
|
|
@@ -53,4 +57,4 @@
|
|
|
53
57
|
"ts-loader": "^9.4.4",
|
|
54
58
|
"webpack-cli": "^5.1.4"
|
|
55
59
|
}
|
|
56
|
-
}
|
|
60
|
+
}
|
package/src/ScheduleFields.tsx
CHANGED
|
@@ -9,8 +9,9 @@ import Schedule from './models/Schedule';
|
|
|
9
9
|
import { CountryCode, DayOfWeek } from './helpers/Enums';
|
|
10
10
|
import Logger from './helpers/Logger';
|
|
11
11
|
import { flexCenter, getDayOfWeekIndex, getDayOfWeekLabel } from './helpers/Tools';
|
|
12
|
-
import { isValidDate
|
|
12
|
+
import { isValidDate } from './helpers/DateUtils';
|
|
13
13
|
import ContentCopyIcon from '@mui/icons-material/ContentCopy';
|
|
14
|
+
import moment from 'moment-timezone';
|
|
14
15
|
|
|
15
16
|
|
|
16
17
|
export type DayInterval = {
|
|
@@ -54,6 +55,7 @@ const ScheduleFields: FunctionComponent<ScheduleFieldsProps> = ({ timePickerStep
|
|
|
54
55
|
const today = new Date().toISOString().substring(0, 10);
|
|
55
56
|
|
|
56
57
|
for (const apiSchedule of apiSchedules) {
|
|
58
|
+
console.log(apiSchedule.intervals);
|
|
57
59
|
const dayIndex = mergedSchedules.findIndex((schedule: { day: DayOfWeek; }) => schedule.day === apiSchedule.dayOfWeek);
|
|
58
60
|
if (dayIndex !== -1) {
|
|
59
61
|
mergedSchedules[dayIndex].checked = apiSchedule.intervals.length > 0;
|
|
@@ -14,7 +14,7 @@ import { DocumentType, DateFormatTypes, MovaAppType } from '../../helpers/Enums'
|
|
|
14
14
|
import { validateField, formatVehicleTire, formatFrenchVehiclePlate } from '../../helpers/Tools';
|
|
15
15
|
import MovaDigitalPassport from '../../MovaDigitalPassport';
|
|
16
16
|
import Loader from '../../Loader';
|
|
17
|
-
import {
|
|
17
|
+
import { formatDateByTimezone } from '../../helpers/DateUtils';
|
|
18
18
|
import CancelIcon from '@mui/icons-material/CloseRounded';
|
|
19
19
|
import EditIcon from '@mui/icons-material/EditRounded';
|
|
20
20
|
import CloseIcon from '@mui/icons-material/CloseRounded';
|
|
@@ -431,7 +431,7 @@ const VehicleFullCard: FC<VehicleFullCardProps> = ({ vehicle, fullwidth, onError
|
|
|
431
431
|
<Grid item xs={11} key={(index+1)*50} sx={{ textAlign: 'left' }} >
|
|
432
432
|
<Link color={darken('#F29ABA', 0.2)} href={invoice.fileSignedUrl} target="_blank" rel="noopener">
|
|
433
433
|
<Typography variant="body1">
|
|
434
|
-
Facture du {
|
|
434
|
+
Facture du {formatDateByTimezone(invoice.creationDate, 'fr', DateFormatTypes.SHORT_FORMAT_DATE)}
|
|
435
435
|
</Typography>
|
|
436
436
|
</Link>
|
|
437
437
|
</Grid>
|
|
@@ -449,7 +449,7 @@ const VehicleFullCard: FC<VehicleFullCardProps> = ({ vehicle, fullwidth, onError
|
|
|
449
449
|
<Grid item xs={11} key={(index+1)*50} sx={{ textAlign: 'left' }} >
|
|
450
450
|
<Link color={darken('#F29ABA', 0.2)} href={tirePhoto.fileSignedUrl} target="_blank" rel="noopener">
|
|
451
451
|
<Typography variant="body1">
|
|
452
|
-
Photo pneu du {
|
|
452
|
+
Photo pneu du {formatDateByTimezone(tirePhoto.creationDate, 'fr', DateFormatTypes.SHORT_FORMAT_DATE)}
|
|
453
453
|
</Typography>
|
|
454
454
|
</Link>
|
|
455
455
|
</Grid>
|
package/src/helpers/DateUtils.ts
CHANGED
|
@@ -13,17 +13,11 @@ export const countryTimeZones: { [key: string]: string } = {
|
|
|
13
13
|
// Ajoutez d'autres correspondances de codes de pays et de fuseaux horaires ici
|
|
14
14
|
};
|
|
15
15
|
|
|
16
|
-
export const toUTCToLocaleDate = (date: "" | Date | null,
|
|
16
|
+
export const toUTCToLocaleDate = (date: "" | Date | null, timeZone: string): Date => {
|
|
17
17
|
let zonedDate = new Date(date ?? "");
|
|
18
18
|
|
|
19
19
|
if(date){
|
|
20
20
|
|
|
21
|
-
const timeZone = countryTimeZones[countryCode.toUpperCase()];
|
|
22
|
-
|
|
23
|
-
if (!timeZone) {
|
|
24
|
-
throw new Error('Code de pays non pris en charge');
|
|
25
|
-
}
|
|
26
|
-
|
|
27
21
|
// Convertir la date UTC en date du fuseau horaire local
|
|
28
22
|
zonedDate = utcToZonedTime(date, timeZone);
|
|
29
23
|
}
|
|
@@ -31,13 +25,12 @@ export const toUTCToLocaleDate = (date: "" | Date | null, countryCode: string):
|
|
|
31
25
|
return zonedDate;
|
|
32
26
|
}
|
|
33
27
|
|
|
34
|
-
export const
|
|
28
|
+
export const formatDateByTimezone = (date: Date | undefined, timeZone: string, formatType: DateFormatTypes): string => {
|
|
35
29
|
|
|
36
30
|
if(date){
|
|
37
31
|
|
|
38
32
|
// Convertir la date UTC en date du fuseau horaire local
|
|
39
|
-
let zonedDate = toUTCToLocaleDate(date,
|
|
40
|
-
const timeZone = countryTimeZones[countryCode.toUpperCase()];
|
|
33
|
+
let zonedDate = toUTCToLocaleDate(date, timeZone);
|
|
41
34
|
|
|
42
35
|
// Formater la date
|
|
43
36
|
switch(formatType){
|
package/src/models/Garage.ts
CHANGED
|
@@ -11,7 +11,6 @@ import CategoryPrestation from "./CategoryPrestation";
|
|
|
11
11
|
import VehicleGarage from "./VehicleGarage";
|
|
12
12
|
|
|
13
13
|
export default class Garage {
|
|
14
|
-
|
|
15
14
|
id:string;
|
|
16
15
|
adminId:string;
|
|
17
16
|
name:string;
|
|
@@ -34,8 +33,6 @@ export default class Garage {
|
|
|
34
33
|
orderPreference?: OrderPreference;
|
|
35
34
|
amVehicleDeposit?: Date;
|
|
36
35
|
pmVehicleDeposit?: Date;
|
|
37
|
-
zonedAmVehicleDeposit?: Date;
|
|
38
|
-
zonedPmVehicleDeposit?: Date;
|
|
39
36
|
appointmentRequestStart?: Date;
|
|
40
37
|
slotAlgorithm?: SlotAlgorithm;
|
|
41
38
|
customerQuoteActive?: boolean;
|
|
@@ -56,7 +53,7 @@ export default class Garage {
|
|
|
56
53
|
loanerVehicleRequestActive?: boolean;
|
|
57
54
|
paymentAuthorizationActive?: boolean;
|
|
58
55
|
paymentAuthorizationMinDowntime?: number;
|
|
59
|
-
|
|
56
|
+
timezone: string;
|
|
60
57
|
customStyle?: string;
|
|
61
58
|
|
|
62
59
|
constructor(
|
|
@@ -72,6 +69,7 @@ export default class Garage {
|
|
|
72
69
|
dayPeriodFastServiceExcluded: boolean,
|
|
73
70
|
loanerVehicleFastServiceExcluded: boolean,
|
|
74
71
|
fastServiceThreshold: number,
|
|
72
|
+
timezone:string,
|
|
75
73
|
vehicles?: VehicleGarage[],
|
|
76
74
|
contactEmail?: string,
|
|
77
75
|
logo?:string,
|
|
@@ -82,7 +80,7 @@ export default class Garage {
|
|
|
82
80
|
loanerVehicleRequestActive?: boolean,
|
|
83
81
|
customStyle?: string,
|
|
84
82
|
subscription?: Subscription,
|
|
85
|
-
partialWorkforce?: number
|
|
83
|
+
partialWorkforce?: number,
|
|
86
84
|
) {
|
|
87
85
|
this.id = id;
|
|
88
86
|
this.adminId = adminId;
|
|
@@ -107,5 +105,6 @@ export default class Garage {
|
|
|
107
105
|
this.loanerVehicleFastServiceExcluded = loanerVehicleFastServiceExcluded;
|
|
108
106
|
this.fastServiceThreshold = fastServiceThreshold;
|
|
109
107
|
this.customStyle = customStyle;
|
|
108
|
+
this.timezone = timezone;
|
|
110
109
|
}
|
|
111
110
|
}
|