@selfcommunity/react-ui 0.11.0-alpha.57 → 0.11.0-alpha.58
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/lib/cjs/components/EventForm/EventForm.js +13 -7
- package/lib/cjs/components/EventForm/utils.d.ts +1 -0
- package/lib/cjs/components/EventForm/utils.js +6 -1
- package/lib/esm/components/EventForm/EventForm.js +14 -8
- package/lib/esm/components/EventForm/utils.d.ts +1 -0
- package/lib/esm/components/EventForm/utils.js +4 -0
- package/lib/umd/react-ui.js +1 -1
- package/package.json +2 -2
|
@@ -324,17 +324,17 @@ function EventForm(inProps) {
|
|
|
324
324
|
let disabled = false;
|
|
325
325
|
switch (field.recurring) {
|
|
326
326
|
case types_1.SCEventRecurrenceType.DAILY:
|
|
327
|
-
disabled = date.getTime() > (0, utils_2.getLaterDaysDate)(constants_1.DAILY_LATER_DAYS, field.startDate).getTime();
|
|
327
|
+
disabled = date.getTime() > (0, utils_2.getDateAndHours)((0, utils_2.getLaterDaysDate)(constants_1.DAILY_LATER_DAYS, field.startDate), 23, 59, 59, 59).getTime();
|
|
328
328
|
break;
|
|
329
329
|
case types_1.SCEventRecurrenceType.WEEKLY:
|
|
330
|
-
disabled = date.getTime() > (0, utils_2.getLaterDaysDate)(constants_1.WEEKLY_LATER_DAYS, field.startDate).getTime();
|
|
330
|
+
disabled = date.getTime() > (0, utils_2.getDateAndHours)((0, utils_2.getLaterDaysDate)(constants_1.WEEKLY_LATER_DAYS, field.startDate), 23, 59, 59, 59).getTime();
|
|
331
331
|
break;
|
|
332
332
|
case types_1.SCEventRecurrenceType.MONTHLY:
|
|
333
|
-
disabled = date.getTime() > (0, utils_2.getLaterDaysDate)(constants_1.MONTHLY_LATER_DAYS, field.startDate).getTime();
|
|
333
|
+
disabled = date.getTime() > (0, utils_2.getDateAndHours)((0, utils_2.getLaterDaysDate)(constants_1.MONTHLY_LATER_DAYS, field.startDate), 23, 59, 59, 59).getTime();
|
|
334
334
|
break;
|
|
335
335
|
case types_1.SCEventRecurrenceType.NEVER:
|
|
336
336
|
default:
|
|
337
|
-
disabled = date.getTime() > (0, utils_2.getLaterDaysDate)(constants_1.NEVER_LATER_DAYS, field.startDate).getTime();
|
|
337
|
+
disabled = date.getTime() > (0, utils_2.getDateAndHours)((0, utils_2.getLaterDaysDate)(constants_1.NEVER_LATER_DAYS, field.startDate), 23, 59, 59, 59).getTime();
|
|
338
338
|
}
|
|
339
339
|
return disabled;
|
|
340
340
|
}, [field]);
|
|
@@ -365,7 +365,10 @@ function EventForm(inProps) {
|
|
|
365
365
|
// @ts-ignore
|
|
366
366
|
toolbarTitle: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.eventForm.time.title", defaultMessage: "ui.eventForm.time.title" })
|
|
367
367
|
}
|
|
368
|
-
}, onChange: (value) =>
|
|
368
|
+
}, onChange: (value) => {
|
|
369
|
+
handleChangeDateTime(value, 'startDate');
|
|
370
|
+
handleChangeDateTime(value, 'startTime');
|
|
371
|
+
} })] })) })), (0, jsx_runtime_1.jsxs)(material_1.FormControl, Object.assign({ className: classes.frequency }, { children: [field.recurring !== types_1.SCEventRecurrenceType.NEVER && (0, jsx_runtime_1.jsx)(material_1.InputLabel, Object.assign({ id: "recurring" }, { children: `${intl.formatMessage(messages.frequency)}` })), (0, jsx_runtime_1.jsx)(material_1.Select, Object.assign({ name: "recurring", label: field.recurring !== types_1.SCEventRecurrenceType.NEVER && `${intl.formatMessage(messages.frequency)}`, labelId: "recurring", value: field.recurring, onChange: handleChange, displayEmpty: true, renderValue: (selected) => {
|
|
369
372
|
if (!selected) {
|
|
370
373
|
return (0, jsx_runtime_1.jsx)("em", { children: `${intl.formatMessage(messages.frequencyPlaceholder)}` });
|
|
371
374
|
}
|
|
@@ -391,13 +394,16 @@ function EventForm(inProps) {
|
|
|
391
394
|
// @ts-ignore
|
|
392
395
|
toolbarTitle: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.eventForm.time.title", defaultMessage: "ui.eventForm.time.title" })
|
|
393
396
|
}
|
|
394
|
-
}, onChange: (value) =>
|
|
397
|
+
}, onChange: (value) => {
|
|
398
|
+
handleChangeDateTime(value, 'endDate');
|
|
399
|
+
handleChangeDateTime(value, 'endTime');
|
|
400
|
+
}, shouldDisableTime: shouldDisableTime })] })) })), (0, jsx_runtime_1.jsx)(EventAddress_1.default, Object.assign({ forwardGeolocationData: handleGeoData, forwardLivestreamSettingsData: handleLiveStreamSettingsData, event: Object.assign(Object.assign({}, event), {
|
|
395
401
|
name: field.name,
|
|
396
402
|
start_date: field.startDate,
|
|
397
403
|
location: field.location,
|
|
398
404
|
geolocation: field.geolocation,
|
|
399
405
|
live_stream: Object.assign(Object.assign({ title: field.name || `${intl.formatMessage(messages.name)}` }, (event && ((_c = event.live_stream) === null || _c === void 0 ? void 0 : _c.created_at) && { created_at: field.startDate })), { settings: field.liveStreamSettings })
|
|
400
|
-
}) }, EventAddressComponentProps)), privateEnabled && ((0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ className: classes.privacySection }, { children: [(0, jsx_runtime_1.jsxs)(material_1.Stack, Object.assign({ direction: "row", spacing: 1, alignItems: "center", justifyContent: "center" }, { children: [(0, jsx_runtime_1.jsxs)(material_1.Typography, Object.assign({ className: (0, classnames_1.default)(classes.switchLabel, { [classes.active]: !field.isPublic }) }, { children: [(0, jsx_runtime_1.jsx)(material_1.Icon, { children: "private" }), (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.eventForm.privacy.private", defaultMessage: "ui.eventForm.privacy.private" })] })), (0, jsx_runtime_1.jsx)(material_1.Switch, { className: classes.switch, checked: field.isPublic, onChange: () => setField((prev) => (Object.assign(Object.assign({}, prev), { ['isPublic']: !field.isPublic }))), disabled: event
|
|
406
|
+
}) }, EventAddressComponentProps)), privateEnabled && ((0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ className: classes.privacySection }, { children: [(0, jsx_runtime_1.jsxs)(material_1.Stack, Object.assign({ direction: "row", spacing: 1, alignItems: "center", justifyContent: "center" }, { children: [(0, jsx_runtime_1.jsxs)(material_1.Typography, Object.assign({ className: (0, classnames_1.default)(classes.switchLabel, { [classes.active]: !field.isPublic }) }, { children: [(0, jsx_runtime_1.jsx)(material_1.Icon, { children: "private" }), (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.eventForm.privacy.private", defaultMessage: "ui.eventForm.privacy.private" })] })), (0, jsx_runtime_1.jsx)(material_1.Switch, { className: classes.switch, checked: field.isPublic, onChange: () => setField((prev) => (Object.assign(Object.assign({}, prev), { ['isPublic']: !field.isPublic }))), disabled: (event === null || event === void 0 ? void 0 : event.privacy) === types_1.SCEventPrivacyType.PRIVATE }), (0, jsx_runtime_1.jsxs)(material_1.Typography, Object.assign({ className: (0, classnames_1.default)(classes.switchLabel, { [classes.active]: field.isPublic }) }, { children: [(0, jsx_runtime_1.jsx)(material_1.Icon, { children: "public" }), (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.eventForm.privacy.public", defaultMessage: "ui.eventForm.privacy.public" })] }))] })), (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ variant: "body2", textAlign: "center", className: classes.privacySectionInfo }, { children: field.isPublic ? ((0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.eventForm.privacy.public.info", defaultMessage: "ui.eventForm.privacy.public.info", values: {
|
|
401
407
|
// eslint-disable-next-line @typescript-eslint/ban-ts-ignore,@typescript-eslint/ban-ts-comment
|
|
402
408
|
// @ts-ignores
|
|
403
409
|
b: (chunks) => (0, jsx_runtime_1.jsx)("strong", { children: chunks })
|
|
@@ -2,3 +2,4 @@ export declare function getNewDate(date?: string | Date): Date;
|
|
|
2
2
|
export declare function getLaterHoursDate(hours: number, date?: Date): Date;
|
|
3
3
|
export declare function getLaterDaysDate(days: number, date?: Date): Date;
|
|
4
4
|
export declare const combineDateAndTime: (date: Date, time: Date) => string;
|
|
5
|
+
export declare function getDateAndHours(date: Date, hours: number, min?: number, sec?: number, ms?: number): Date;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.combineDateAndTime = exports.getLaterDaysDate = exports.getLaterHoursDate = exports.getNewDate = void 0;
|
|
3
|
+
exports.getDateAndHours = exports.combineDateAndTime = exports.getLaterDaysDate = exports.getLaterHoursDate = exports.getNewDate = void 0;
|
|
4
4
|
const date_fns_1 = require("date-fns");
|
|
5
5
|
function getNewDate(date) {
|
|
6
6
|
if (date) {
|
|
@@ -29,3 +29,8 @@ const combineDateAndTime = (date, time) => {
|
|
|
29
29
|
return combined.toISOString();
|
|
30
30
|
};
|
|
31
31
|
exports.combineDateAndTime = combineDateAndTime;
|
|
32
|
+
function getDateAndHours(date, hours, min, sec, ms) {
|
|
33
|
+
date.setHours(hours, min, sec, ms);
|
|
34
|
+
return date;
|
|
35
|
+
}
|
|
36
|
+
exports.getDateAndHours = getDateAndHours;
|
|
@@ -22,7 +22,7 @@ import { SCGroupEventType, SCTopicType } from '../../constants/PubSub';
|
|
|
22
22
|
import { DAILY_LATER_DAYS, MONTHLY_LATER_DAYS, NEVER_LATER_DAYS, PREFIX, WEEKLY_LATER_DAYS } from './constants';
|
|
23
23
|
import EventAddress from './EventAddress';
|
|
24
24
|
import UploadEventCover from './UploadEventCover';
|
|
25
|
-
import { combineDateAndTime, getLaterDaysDate, getLaterHoursDate, getNewDate } from './utils';
|
|
25
|
+
import { combineDateAndTime, getDateAndHours, getLaterDaysDate, getLaterHoursDate, getNewDate } from './utils';
|
|
26
26
|
import { LIVESTREAM_DEFAULT_SETTINGS } from '../LiveStreamForm/constants';
|
|
27
27
|
import CoverPlaceholder from '../../assets/deafultCover';
|
|
28
28
|
const messages = defineMessages({
|
|
@@ -322,17 +322,17 @@ export default function EventForm(inProps) {
|
|
|
322
322
|
let disabled = false;
|
|
323
323
|
switch (field.recurring) {
|
|
324
324
|
case SCEventRecurrenceType.DAILY:
|
|
325
|
-
disabled = date.getTime() > getLaterDaysDate(DAILY_LATER_DAYS, field.startDate).getTime();
|
|
325
|
+
disabled = date.getTime() > getDateAndHours(getLaterDaysDate(DAILY_LATER_DAYS, field.startDate), 23, 59, 59, 59).getTime();
|
|
326
326
|
break;
|
|
327
327
|
case SCEventRecurrenceType.WEEKLY:
|
|
328
|
-
disabled = date.getTime() > getLaterDaysDate(WEEKLY_LATER_DAYS, field.startDate).getTime();
|
|
328
|
+
disabled = date.getTime() > getDateAndHours(getLaterDaysDate(WEEKLY_LATER_DAYS, field.startDate), 23, 59, 59, 59).getTime();
|
|
329
329
|
break;
|
|
330
330
|
case SCEventRecurrenceType.MONTHLY:
|
|
331
|
-
disabled = date.getTime() > getLaterDaysDate(MONTHLY_LATER_DAYS, field.startDate).getTime();
|
|
331
|
+
disabled = date.getTime() > getDateAndHours(getLaterDaysDate(MONTHLY_LATER_DAYS, field.startDate), 23, 59, 59, 59).getTime();
|
|
332
332
|
break;
|
|
333
333
|
case SCEventRecurrenceType.NEVER:
|
|
334
334
|
default:
|
|
335
|
-
disabled = date.getTime() > getLaterDaysDate(NEVER_LATER_DAYS, field.startDate).getTime();
|
|
335
|
+
disabled = date.getTime() > getDateAndHours(getLaterDaysDate(NEVER_LATER_DAYS, field.startDate), 23, 59, 59, 59).getTime();
|
|
336
336
|
}
|
|
337
337
|
return disabled;
|
|
338
338
|
}, [field]);
|
|
@@ -363,7 +363,10 @@ export default function EventForm(inProps) {
|
|
|
363
363
|
// @ts-ignore
|
|
364
364
|
toolbarTitle: _jsx(FormattedMessage, { id: "ui.eventForm.time.title", defaultMessage: "ui.eventForm.time.title" })
|
|
365
365
|
}
|
|
366
|
-
}, onChange: (value) =>
|
|
366
|
+
}, onChange: (value) => {
|
|
367
|
+
handleChangeDateTime(value, 'startDate');
|
|
368
|
+
handleChangeDateTime(value, 'startTime');
|
|
369
|
+
} })] })) })), _jsxs(FormControl, Object.assign({ className: classes.frequency }, { children: [field.recurring !== SCEventRecurrenceType.NEVER && _jsx(InputLabel, Object.assign({ id: "recurring" }, { children: `${intl.formatMessage(messages.frequency)}` })), _jsx(Select, Object.assign({ name: "recurring", label: field.recurring !== SCEventRecurrenceType.NEVER && `${intl.formatMessage(messages.frequency)}`, labelId: "recurring", value: field.recurring, onChange: handleChange, displayEmpty: true, renderValue: (selected) => {
|
|
367
370
|
if (!selected) {
|
|
368
371
|
return _jsx("em", { children: `${intl.formatMessage(messages.frequencyPlaceholder)}` });
|
|
369
372
|
}
|
|
@@ -389,13 +392,16 @@ export default function EventForm(inProps) {
|
|
|
389
392
|
// @ts-ignore
|
|
390
393
|
toolbarTitle: _jsx(FormattedMessage, { id: "ui.eventForm.time.title", defaultMessage: "ui.eventForm.time.title" })
|
|
391
394
|
}
|
|
392
|
-
}, onChange: (value) =>
|
|
395
|
+
}, onChange: (value) => {
|
|
396
|
+
handleChangeDateTime(value, 'endDate');
|
|
397
|
+
handleChangeDateTime(value, 'endTime');
|
|
398
|
+
}, shouldDisableTime: shouldDisableTime })] })) })), _jsx(EventAddress, Object.assign({ forwardGeolocationData: handleGeoData, forwardLivestreamSettingsData: handleLiveStreamSettingsData, event: Object.assign(Object.assign({}, event), {
|
|
393
399
|
name: field.name,
|
|
394
400
|
start_date: field.startDate,
|
|
395
401
|
location: field.location,
|
|
396
402
|
geolocation: field.geolocation,
|
|
397
403
|
live_stream: Object.assign(Object.assign({ title: field.name || `${intl.formatMessage(messages.name)}` }, (event && ((_c = event.live_stream) === null || _c === void 0 ? void 0 : _c.created_at) && { created_at: field.startDate })), { settings: field.liveStreamSettings })
|
|
398
|
-
}) }, EventAddressComponentProps)), privateEnabled && (_jsxs(Box, Object.assign({ className: classes.privacySection }, { children: [_jsxs(Stack, Object.assign({ direction: "row", spacing: 1, alignItems: "center", justifyContent: "center" }, { children: [_jsxs(Typography, Object.assign({ className: classNames(classes.switchLabel, { [classes.active]: !field.isPublic }) }, { children: [_jsx(Icon, { children: "private" }), _jsx(FormattedMessage, { id: "ui.eventForm.privacy.private", defaultMessage: "ui.eventForm.privacy.private" })] })), _jsx(Switch, { className: classes.switch, checked: field.isPublic, onChange: () => setField((prev) => (Object.assign(Object.assign({}, prev), { ['isPublic']: !field.isPublic }))), disabled: event
|
|
404
|
+
}) }, EventAddressComponentProps)), privateEnabled && (_jsxs(Box, Object.assign({ className: classes.privacySection }, { children: [_jsxs(Stack, Object.assign({ direction: "row", spacing: 1, alignItems: "center", justifyContent: "center" }, { children: [_jsxs(Typography, Object.assign({ className: classNames(classes.switchLabel, { [classes.active]: !field.isPublic }) }, { children: [_jsx(Icon, { children: "private" }), _jsx(FormattedMessage, { id: "ui.eventForm.privacy.private", defaultMessage: "ui.eventForm.privacy.private" })] })), _jsx(Switch, { className: classes.switch, checked: field.isPublic, onChange: () => setField((prev) => (Object.assign(Object.assign({}, prev), { ['isPublic']: !field.isPublic }))), disabled: (event === null || event === void 0 ? void 0 : event.privacy) === SCEventPrivacyType.PRIVATE }), _jsxs(Typography, Object.assign({ className: classNames(classes.switchLabel, { [classes.active]: field.isPublic }) }, { children: [_jsx(Icon, { children: "public" }), _jsx(FormattedMessage, { id: "ui.eventForm.privacy.public", defaultMessage: "ui.eventForm.privacy.public" })] }))] })), _jsx(Typography, Object.assign({ variant: "body2", textAlign: "center", className: classes.privacySectionInfo }, { children: field.isPublic ? (_jsx(FormattedMessage, { id: "ui.eventForm.privacy.public.info", defaultMessage: "ui.eventForm.privacy.public.info", values: {
|
|
399
405
|
// eslint-disable-next-line @typescript-eslint/ban-ts-ignore,@typescript-eslint/ban-ts-comment
|
|
400
406
|
// @ts-ignores
|
|
401
407
|
b: (chunks) => _jsx("strong", { children: chunks })
|
|
@@ -2,3 +2,4 @@ export declare function getNewDate(date?: string | Date): Date;
|
|
|
2
2
|
export declare function getLaterHoursDate(hours: number, date?: Date): Date;
|
|
3
3
|
export declare function getLaterDaysDate(days: number, date?: Date): Date;
|
|
4
4
|
export declare const combineDateAndTime: (date: Date, time: Date) => string;
|
|
5
|
+
export declare function getDateAndHours(date: Date, hours: number, min?: number, sec?: number, ms?: number): Date;
|
|
@@ -22,3 +22,7 @@ export const combineDateAndTime = (date, time) => {
|
|
|
22
22
|
combined.setMilliseconds(time.getMilliseconds());
|
|
23
23
|
return combined.toISOString();
|
|
24
24
|
};
|
|
25
|
+
export function getDateAndHours(date, hours, min, sec, ms) {
|
|
26
|
+
date.setHours(hours, min, sec, ms);
|
|
27
|
+
return date;
|
|
28
|
+
}
|