@bytebrand/fe-ui-core 4.2.111 → 4.2.112
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/package.json +3 -3
- package/source/components/OfferPanel/MuiOfferPeriod/MuiOfferPeriod.theme.tsx +1 -1
- package/source/components/OfferPanel/MuiOfferPeriod/MuiOfferPeriod.tsx +5 -5
- package/source/components/OfferPanel/OfferCheckboxGroup/CheckboxContainer.tsx +1 -3
- package/source/components/PriceRatingDetailed/PriceRatingDetailed.tsx +5 -1
- package/source/components/UserDashboardPage/sections/OrderStatusSection/AdditionalOrderInfo.tsx +4 -4
- package/source/components/UserDashboardPage/sections/OrderStatusSection/OrderStatusCar.tsx +2 -2
- package/source/components/UserDashboardPage/sections/OrderStatusSection/OrderStatusSection.tsx +11 -10
- package/source/components/UserDashboardPage/sections/RequestedCarsSection/RequestedCarsSection.tsx +2 -2
- package/source/components/_common/Checkbox/FormCheckbox.tsx +4 -4
- package/source/components/_common/Modal/CookieModal.tsx +1 -3
- package/source/components/_common/Modal/ModalsConfig.tsx +3 -3
- package/source/components/_common/Modal/modals/PreviewCookieModal/PreviewCookieModal.tsx +5 -5
- package/source/components/_common/UserMenu/MaterialMenuItem.tsx +1 -1
- package/source/components/containers/SearchPage/FiltersContainer/FiltersContainer.tsx +2 -2
- package/source/framework/types/types.ts +2 -2
- package/source/framework/utils/CommonUtils.ts +10 -5
- package/source/framework/utils/DateUtils.ts +1 -1
- package/tslint.json +1 -2
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bytebrand/fe-ui-core",
|
|
3
|
-
"version": "4.2.
|
|
3
|
+
"version": "4.2.112",
|
|
4
4
|
"description": "UI components for the auto.de project",
|
|
5
5
|
"main": "index.ts",
|
|
6
6
|
"module": "dist/common.js",
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"@babel/preset-react": "^7.18.6",
|
|
15
15
|
"@babel/preset-typescript": "^7.21.0",
|
|
16
16
|
"@bytebrand/car-schema-selectors": "^2.0.7",
|
|
17
|
-
"@bytebrand/fe-histoslider": "^2.1.
|
|
17
|
+
"@bytebrand/fe-histoslider": "^2.1.5",
|
|
18
18
|
"@bytebrand/i18n-dictionaries": "^0.7.5",
|
|
19
19
|
"@date-io/date-fns": "1.3.13",
|
|
20
20
|
"@emotion/react": "^11.9.3",
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
"react": "^17.0.2",
|
|
54
54
|
"react-device-detect": "^2.1.2",
|
|
55
55
|
"react-dom": "^17.0.2",
|
|
56
|
-
"react-grid-system": "^
|
|
56
|
+
"react-grid-system": "^8.1.9",
|
|
57
57
|
"react-i18next": "9.0.4",
|
|
58
58
|
"react-lazyload": "3.2.0",
|
|
59
59
|
"react-scroll": "^1.7.13",
|
|
@@ -2,7 +2,7 @@ import React, { FC } from 'react';
|
|
|
2
2
|
import _get from 'lodash/get';
|
|
3
3
|
import styles from '../OfferPanel.styl';
|
|
4
4
|
import { modalsTranslate } from '../../../locales/data';
|
|
5
|
-
import ToggleButton, { ToggleButtonProps } from '@mui/material/ToggleButton';
|
|
5
|
+
import ToggleButton, { ToggleButtonProps as IToggleButtonProps } from '@mui/material/ToggleButton';
|
|
6
6
|
import ToggleButtonGroup from '@mui/material/ToggleButtonGroup';
|
|
7
7
|
import { ThemeProvider } from '@mui/material/styles';
|
|
8
8
|
import { theme } from './MuiOfferPeriod.theme';
|
|
@@ -14,17 +14,17 @@ export interface IOfferPeriod {
|
|
|
14
14
|
onChange: (key: string, value: number) => void;
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
-
type
|
|
17
|
+
type IToggleButtonVariant =
|
|
18
18
|
| 'text'
|
|
19
19
|
| 'outlined'
|
|
20
20
|
| 'contained'
|
|
21
21
|
| 'sidebar';
|
|
22
22
|
|
|
23
|
-
interface
|
|
24
|
-
variant:
|
|
23
|
+
interface ICustomToggleButtonProps extends Omit<IToggleButtonProps, 'variant'> {
|
|
24
|
+
variant: IToggleButtonVariant;
|
|
25
25
|
}
|
|
26
26
|
|
|
27
|
-
const MyCustomToggleButton: FC<
|
|
27
|
+
const MyCustomToggleButton: FC<ICustomToggleButtonProps> = (props) => {
|
|
28
28
|
return (
|
|
29
29
|
<ToggleButton {...props}>
|
|
30
30
|
{props.children}
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import styles from './OfferCheckboxGroup.styl';
|
|
3
3
|
import classnames from 'classnames';
|
|
4
|
-
// import FormattedNumber from '../../FormattedNumber/FormattedNumber';
|
|
5
|
-
// import Tooltip from '../../_common/Tooltip/Tooltip';
|
|
6
4
|
import CheckboxMaterial from '../../_common/CheckboxMaterial/CheckboxMaterial';
|
|
7
5
|
import MaterialTooltip from '../../_common/MaterialTooltip/MaterialTooltip';
|
|
8
6
|
|
|
@@ -22,7 +20,7 @@ export interface ICheckboxProps {
|
|
|
22
20
|
containerClassName?: string;
|
|
23
21
|
checkboxClassName?: string;
|
|
24
22
|
labelClassName?: string;
|
|
25
|
-
labelPlacement?:
|
|
23
|
+
labelPlacement?: 'end' | 'start' | 'top' | 'bottom';
|
|
26
24
|
tooltipDescription?: string;
|
|
27
25
|
checkboxPriceValue: any;
|
|
28
26
|
tooltipPosX?: string;
|
|
@@ -158,7 +158,11 @@ class PriceRatingDetailed extends React.Component<IPriceRatingDetailedProps, IPr
|
|
|
158
158
|
const MARGIN_OFFSET = price >= MIN_PRICE ? MIN_PRICE : (price / 2);
|
|
159
159
|
const strings = {
|
|
160
160
|
general: `${getFormattedPrice((marginToLeft ? price - MARGIN_OFFSET : min) as number)} – ${getFormattedPrice((marginToRight ? price + MARGIN_OFFSET : max) as number)}\u00A0€`,
|
|
161
|
-
compact: <>
|
|
161
|
+
compact: <>
|
|
162
|
+
{getFormattedPrice((marginToLeft ? price - MARGIN_OFFSET : min) as number)}
|
|
163
|
+
<br />
|
|
164
|
+
{t(`${i18nPrefix}priceTo`)} {getFormattedPrice((marginToRight ? price + MARGIN_OFFSET : max) as number)} €
|
|
165
|
+
</>
|
|
162
166
|
};
|
|
163
167
|
|
|
164
168
|
return (
|
package/source/components/UserDashboardPage/sections/OrderStatusSection/AdditionalOrderInfo.tsx
CHANGED
|
@@ -5,7 +5,7 @@ import VehicleFormattedPrice from '../../../Vehicle/VehicleFormattedPrice/Vehicl
|
|
|
5
5
|
import Button from '../../../_common/Button/Button';
|
|
6
6
|
import classNames from 'classnames';
|
|
7
7
|
|
|
8
|
-
import {
|
|
8
|
+
import { ITFunction } from '../../../../framework/types/types';
|
|
9
9
|
|
|
10
10
|
interface IAdditionalOrderData {
|
|
11
11
|
addressData: ({ value: string; label: string; })[];
|
|
@@ -14,7 +14,7 @@ interface IAdditionalOrderData {
|
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
interface IAdditionalOrderInfo {
|
|
17
|
-
t:
|
|
17
|
+
t: ITFunction;
|
|
18
18
|
additionalOrderData: IAdditionalOrderData;
|
|
19
19
|
redirectToUrl: (url: string) => void;
|
|
20
20
|
buyingType: string;
|
|
@@ -29,8 +29,8 @@ const AdditionalOrderInfo = ({ t, additionalOrderData, redirectToUrl, buyingType
|
|
|
29
29
|
|
|
30
30
|
const supportSectionClassnames = classNames(
|
|
31
31
|
styles.customerSuport,
|
|
32
|
-
{[styles.supportSectionBorder]: addressData.length > 0}
|
|
33
|
-
)
|
|
32
|
+
{ [styles.supportSectionBorder]: addressData.length > 0 }
|
|
33
|
+
);
|
|
34
34
|
|
|
35
35
|
return (
|
|
36
36
|
<div className={styles.container}>
|
|
@@ -5,7 +5,7 @@ import OrderStatusCard from './OrderStatusCard';
|
|
|
5
5
|
import { getFormattedPrice } from '../../../../framework/utils/CommonUtils';
|
|
6
6
|
|
|
7
7
|
// tslint:disable-next-line:interface-name
|
|
8
|
-
interface
|
|
8
|
+
interface ITFunction {
|
|
9
9
|
<T = string>(key: string, options?: object): T;
|
|
10
10
|
<T = string>(keys: string[], options?: object): T;
|
|
11
11
|
}
|
|
@@ -20,7 +20,7 @@ interface IOrderStatusCar {
|
|
|
20
20
|
paybackPeriod?: number;
|
|
21
21
|
monthlyInstallment?: number;
|
|
22
22
|
status?: string;
|
|
23
|
-
t:
|
|
23
|
+
t: ITFunction;
|
|
24
24
|
request: string;
|
|
25
25
|
registration: boolean;
|
|
26
26
|
currentSalesPrice: number;
|
package/source/components/UserDashboardPage/sections/OrderStatusSection/OrderStatusSection.tsx
CHANGED
|
@@ -8,7 +8,7 @@ import { Skeleton } from '@mui/material';
|
|
|
8
8
|
|
|
9
9
|
import { getFormattedPrice } from '../../../../framework/utils/CommonUtils';
|
|
10
10
|
|
|
11
|
-
interface
|
|
11
|
+
interface ITFunction {
|
|
12
12
|
<T = string>(key: string, options?: object): T;
|
|
13
13
|
<T = string>(keys: string[], options?: object): T;
|
|
14
14
|
}
|
|
@@ -16,7 +16,7 @@ interface TFunction {
|
|
|
16
16
|
interface IOrderStatusSection {
|
|
17
17
|
getSupportedImageFormat: (id: string, mainImageId: string, size: 'small' | 'medium' | 'large') => string;
|
|
18
18
|
redirectToUrl: (url: string) => void;
|
|
19
|
-
t:
|
|
19
|
+
t: ITFunction;
|
|
20
20
|
isFetching: boolean;
|
|
21
21
|
withAdditionalInfo?: boolean; // for using on /account/my-order.
|
|
22
22
|
orderedCars: any[]; // TODO: create interface for orderedCars, when the object is formatted by the backend
|
|
@@ -25,7 +25,7 @@ interface IOrderStatusSection {
|
|
|
25
25
|
const OrderStatusSection = ({
|
|
26
26
|
getSupportedImageFormat,
|
|
27
27
|
t,
|
|
28
|
-
redirectToUrl,
|
|
28
|
+
redirectToUrl,
|
|
29
29
|
orderedCars,
|
|
30
30
|
isFetching,
|
|
31
31
|
withAdditionalInfo = false
|
|
@@ -60,17 +60,18 @@ const OrderStatusSection = ({
|
|
|
60
60
|
case 'deliveryCity':
|
|
61
61
|
addressString = `${addressString} ${addressObj[key]}`;
|
|
62
62
|
break;
|
|
63
|
+
default: addressString = `${addressString} ${addressObj[key]}`;
|
|
63
64
|
}
|
|
64
|
-
})
|
|
65
|
+
});
|
|
65
66
|
}
|
|
66
67
|
return addressString;
|
|
67
68
|
};
|
|
68
69
|
|
|
69
70
|
const getDataPriceItem = (value: number, label: string): {value: string, label: string} | [] => {
|
|
70
71
|
if (!!value && value !== 0) {
|
|
71
|
-
return { value: getFormattedPrice(value, '$,.2f', ' €')
|
|
72
|
+
return { label, value: getFormattedPrice(value, '$,.2f', ' €') };
|
|
72
73
|
}
|
|
73
|
-
}
|
|
74
|
+
};
|
|
74
75
|
|
|
75
76
|
const renderRequestedCars = () => {
|
|
76
77
|
return (
|
|
@@ -78,7 +79,7 @@ const OrderStatusSection = ({
|
|
|
78
79
|
{!!orderedCars && orderedCars.map((orderedCar: any, index: number) => {
|
|
79
80
|
const { car: { _id } } = orderedCar;
|
|
80
81
|
const { car: { mainData: { make, model, subModel } } } = orderedCar;
|
|
81
|
-
const { car: { metaData: { mainImageId } }} = orderedCar;
|
|
82
|
+
const { car: { metaData: { mainImageId } } } = orderedCar;
|
|
82
83
|
const {
|
|
83
84
|
buyingType,
|
|
84
85
|
selfPickup,
|
|
@@ -110,11 +111,11 @@ const OrderStatusSection = ({
|
|
|
110
111
|
...transportationCost ? [getDataPriceItem(transportationCost, t('MyOrderPage:delivery'))] : [],
|
|
111
112
|
...buyingType !== 'buy' ? [
|
|
112
113
|
...monthlyInstallment ? [
|
|
113
|
-
{
|
|
114
|
+
{
|
|
114
115
|
label: t(`MyOrderPage:${buyingType}Rate`),
|
|
115
116
|
value: t('MyOrderPage:monthlyInstallment', { monthlyInstallment: getFormattedPrice(monthlyInstallment, '$,.2f', '', '€') })
|
|
116
117
|
}] : [],
|
|
117
|
-
...paybackPeriod ? [{ label: t('MyOrderPage:runningTime'), value: t('MyOrderPage:paybackPeriod', { paybackPeriod })}] : [],
|
|
118
|
+
...paybackPeriod ? [{ label: t('MyOrderPage:runningTime'), value: t('MyOrderPage:paybackPeriod', { paybackPeriod }) }] : [],
|
|
118
119
|
...deposit ? [getDataPriceItem(deposit, t('MyOrderPage:deposit'))] : []
|
|
119
120
|
] : []
|
|
120
121
|
],
|
|
@@ -168,7 +169,7 @@ const OrderStatusSection = ({
|
|
|
168
169
|
|
|
169
170
|
return (
|
|
170
171
|
<>
|
|
171
|
-
{isFetching ?
|
|
172
|
+
{isFetching ?
|
|
172
173
|
<div className={styles.skeletonBlock}>
|
|
173
174
|
<Skeleton animation='wave' variant='rectangular' width='100%' />
|
|
174
175
|
</div>
|
package/source/components/UserDashboardPage/sections/RequestedCarsSection/RequestedCarsSection.tsx
CHANGED
|
@@ -11,7 +11,7 @@ import { getFormattedPrice } from '../../../../framework/utils/CommonUtils';
|
|
|
11
11
|
import Button from '../../../_common/Button/Button';
|
|
12
12
|
|
|
13
13
|
// tslint:disable-next-line:interface-name
|
|
14
|
-
interface
|
|
14
|
+
interface ITFunction {
|
|
15
15
|
<T = string>(key: string, options?: object): T;
|
|
16
16
|
<T = string>(keys: string[], options?: object): T;
|
|
17
17
|
}
|
|
@@ -20,7 +20,7 @@ interface IRequestedCarsSection {
|
|
|
20
20
|
redirectToCar: (id: string) => void;
|
|
21
21
|
getSupportedImageFormat: (id: string, mainImageId: string, size: 'small' | 'medium' | 'large') => string;
|
|
22
22
|
requestedCars: any[];
|
|
23
|
-
t:
|
|
23
|
+
t: ITFunction;
|
|
24
24
|
LinkRouter:any;
|
|
25
25
|
// initHotjar:() => void;
|
|
26
26
|
}
|
|
@@ -21,7 +21,7 @@ interface IFormCheckboxState {
|
|
|
21
21
|
checked?: boolean;
|
|
22
22
|
error?: boolean;
|
|
23
23
|
disabled?: boolean
|
|
24
|
-
}
|
|
24
|
+
};
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
class FormCheckbox extends React.Component<IFormCheckboxProps, IFormCheckboxState> {
|
|
@@ -68,11 +68,11 @@ class FormCheckbox extends React.Component<IFormCheckboxProps, IFormCheckboxStat
|
|
|
68
68
|
checked,
|
|
69
69
|
name,
|
|
70
70
|
disabled,
|
|
71
|
-
onChange: this.handleChange,
|
|
72
|
-
error: customError,
|
|
73
71
|
label,
|
|
74
72
|
checkboxClassName,
|
|
75
|
-
labelClassName
|
|
73
|
+
labelClassName,
|
|
74
|
+
onChange: this.handleChange,
|
|
75
|
+
error: customError
|
|
76
76
|
};
|
|
77
77
|
|
|
78
78
|
return (
|
|
@@ -3,7 +3,6 @@ import useModal from '../../../framework/hooks/useModal';
|
|
|
3
3
|
import { updateCookieList } from '../../../framework/utils/CommonUtils';
|
|
4
4
|
import Modal from './Modal';
|
|
5
5
|
|
|
6
|
-
|
|
7
6
|
export interface ICookieModal {
|
|
8
7
|
handleSentryInit?: () => void;
|
|
9
8
|
}
|
|
@@ -43,9 +42,8 @@ const CookieModal = ({ handleSentryInit }: ICookieModal) => {
|
|
|
43
42
|
: <></>;
|
|
44
43
|
};
|
|
45
44
|
|
|
46
|
-
|
|
47
45
|
CookieModal.defaultProps = {
|
|
48
|
-
handleSentryInit: () => {}
|
|
46
|
+
handleSentryInit: () => {}
|
|
49
47
|
};
|
|
50
48
|
|
|
51
49
|
export default CookieModal;
|
|
@@ -4,11 +4,11 @@ import TestModal from './modals/TestModal';
|
|
|
4
4
|
import PreviewCookieModal from './modals/PreviewCookieModal/PreviewCookieModal';
|
|
5
5
|
import ManageCookieModal from './modals/ManageCookieModal/ManageCookieModal';
|
|
6
6
|
|
|
7
|
-
interface
|
|
8
|
-
[key: string]: (props: any) => JSX.Element;
|
|
7
|
+
interface IModalConfigProps {
|
|
8
|
+
[key: string]: (props: any) => JSX.Element;
|
|
9
9
|
}
|
|
10
10
|
|
|
11
|
-
const ModalsConfig:
|
|
11
|
+
const ModalsConfig: IModalConfigProps = {
|
|
12
12
|
TEST_MODAL: (props: any) => {
|
|
13
13
|
return <TestModal { ...props } />;
|
|
14
14
|
},
|
|
@@ -23,11 +23,11 @@ const PreviewCookieModal = ({ toggleModal, setModal, handleSentryInit } : IPrevi
|
|
|
23
23
|
<IconSVG name='autodeLogo' customDimensions />
|
|
24
24
|
<div className={styles.modalTitle}>Nach den Cookies geht die Fahrt weiter.</div>
|
|
25
25
|
<div className={styles.modalContent}>
|
|
26
|
-
Wenn Sie auf "Zustimmen" klicken, ermöglichen Sie uns über Cookies das Nutzerverhalten
|
|
27
|
-
für alle User zu optimieren und Ihnen individuelle Empfehlungen auch auf Drittseiten anzuzeigen.
|
|
28
|
-
Durch die Zustimmung erteilen Sie uns Ihre ausdrückliche Einwilligung.
|
|
29
|
-
Über "Anpassen" können Sie Ihre Einwilligungen individuell anpassen.
|
|
30
|
-
Dies ist auch später jederzeit im Bereich "Cookie-Richtlinie" möglich.
|
|
26
|
+
Wenn Sie auf "Zustimmen" klicken, ermöglichen Sie uns über Cookies das Nutzerverhalten
|
|
27
|
+
für alle User zu optimieren und Ihnen individuelle Empfehlungen auch auf Drittseiten anzuzeigen.
|
|
28
|
+
Durch die Zustimmung erteilen Sie uns Ihre ausdrückliche Einwilligung.
|
|
29
|
+
Über "Anpassen" können Sie Ihre Einwilligungen individuell anpassen.
|
|
30
|
+
Dies ist auch später jederzeit im Bereich "Cookie-Richtlinie" möglich.
|
|
31
31
|
Die relevante Datenschutzerklärung finden Sie
|
|
32
32
|
<a href={`${environment}/datenschutz/`} target='_blank' style={{ textDecoration: 'underline', color: 'rgba(76,78,100,0.87)' }}>hier</a>.
|
|
33
33
|
<a href={`${environment}/impressum/`} target='_blank' className={styles.outlinedBtnLeft}>Impressum</a>
|
|
@@ -24,7 +24,7 @@ const ListItem = ({ icon, label, amount, divider, onClick, href, isComponent, Li
|
|
|
24
24
|
const onMenuItemClick = (e: React.MouseEvent<HTMLLIElement>) => {
|
|
25
25
|
onClick(e);
|
|
26
26
|
handleClose();
|
|
27
|
-
}
|
|
27
|
+
};
|
|
28
28
|
|
|
29
29
|
return !!href ? (
|
|
30
30
|
<Link color='#4C4E64DE' variant='caption' to={href} underline='none' onClick={onClick}>
|
|
@@ -423,5 +423,5 @@ export default React.memo(FiltersContainer, (props, nextProps) => {
|
|
|
423
423
|
return t === nextProps.t &&
|
|
424
424
|
location.search === nextProps.location.search &&
|
|
425
425
|
isEqual(aggregation, nextProps.aggregation) &&
|
|
426
|
-
isEqual(filters.MMS_GROUPS, nextProps.filters.MMS_GROUPS)
|
|
427
|
-
});
|
|
426
|
+
isEqual(filters.MMS_GROUPS, nextProps.filters.MMS_GROUPS);
|
|
427
|
+
});
|
|
@@ -343,7 +343,7 @@ export interface IVehicleCompareProps {
|
|
|
343
343
|
onRemoveClick: () => void;
|
|
344
344
|
}
|
|
345
345
|
|
|
346
|
-
export interface
|
|
346
|
+
export interface ITFunction {
|
|
347
347
|
<T = string>(key: string, options?: object): T;
|
|
348
348
|
<T = string>(keys: string[], options?: object): T;
|
|
349
|
-
}
|
|
349
|
+
}
|
|
@@ -567,12 +567,17 @@ export const updateCookieList = (handleSentryInit: () => void) => {
|
|
|
567
567
|
cookieConsentList = cookieConsentList.filter(i => i !== cookie); // deny google cookie consent for _gcl_au, _ga, _gid, _gat_UA-31842-13, etc
|
|
568
568
|
|
|
569
569
|
isHomeGoogleGranted = false;
|
|
570
|
+
} else if (cookie === 'hotjar') {
|
|
571
|
+
isHotjarGranted = false;
|
|
572
|
+
} else if (cookie === '_uetvid' || cookie === '_uetsid') {
|
|
573
|
+
isMicrosoftGranted = false;
|
|
574
|
+
} else if (cookie === '_clck' || cookie === '_clsk') {
|
|
575
|
+
isMicrosoftClarity = false;
|
|
576
|
+
} else if (cookie === '_fbp') {
|
|
577
|
+
isFacebookGranted = false;
|
|
578
|
+
} else if (cookie === 'sentry') {
|
|
579
|
+
isSentryGranted = false;
|
|
570
580
|
}
|
|
571
|
-
else if (cookie === 'hotjar') isHotjarGranted = false;
|
|
572
|
-
else if (cookie === '_uetvid' || cookie === '_uetsid') isMicrosoftGranted = false;
|
|
573
|
-
else if (cookie === '_clck' || cookie === '_clsk') isMicrosoftClarity = false;
|
|
574
|
-
else if (cookie === '_fbp') isFacebookGranted = false;
|
|
575
|
-
else if (cookie === 'sentry') isSentryGranted = false;
|
|
576
581
|
});
|
|
577
582
|
});
|
|
578
583
|
|
|
@@ -11,7 +11,7 @@ export const timestampToDate = (timestamp: number) => {
|
|
|
11
11
|
const date = new Date(timestamp * 1000);
|
|
12
12
|
const year = date.getFullYear();
|
|
13
13
|
const month = date.getMonth() + 1;
|
|
14
|
-
const monthFormatted = month < 10 ?
|
|
14
|
+
const monthFormatted = month < 10 ? `0${month}` : month;
|
|
15
15
|
return (`${monthFormatted}/${year}`);
|
|
16
16
|
};
|
|
17
17
|
|
package/tslint.json
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"match-default-export-name": false,
|
|
14
14
|
"import-name": false,
|
|
15
15
|
"no-boolean-literal-compare": false,
|
|
16
|
-
"max-line-length": [
|
|
16
|
+
"max-line-length": [false],
|
|
17
17
|
"semicolon": [true, "always", "ignore-bound-class-methods"],
|
|
18
18
|
"variable-name": [true, "allow-pascal-case", "allow-leading-underscore", "allow-trailing-underscore"],
|
|
19
19
|
"trailing-comma": [true, {"multiline": "never", "singleline": "never"}],
|
|
@@ -32,7 +32,6 @@
|
|
|
32
32
|
"interface-name": [true, "always-prefix"],
|
|
33
33
|
"class-name": true,
|
|
34
34
|
"prefer-function-over-method": false,
|
|
35
|
-
"prefer-switch": [true, {"min-cases": 2}],
|
|
36
35
|
"switch-final-break": true
|
|
37
36
|
},
|
|
38
37
|
"rulesDirectory": []
|