@treely/strapi-slices 7.5.5 → 7.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/models/strapi/StrapiEvent.d.ts +4 -2
- package/dist/strapi-slices.cjs.development.js +23 -15
- package/dist/strapi-slices.cjs.development.js.map +1 -1
- package/dist/strapi-slices.cjs.production.min.js +1 -1
- package/dist/strapi-slices.cjs.production.min.js.map +1 -1
- package/dist/strapi-slices.esm.js +23 -15
- package/dist/strapi-slices.esm.js.map +1 -1
- package/dist/utils/convertStrapiTime.d.ts +3 -0
- package/package.json +3 -2
- package/src/components/EventCard/EventCard.test.tsx +7 -3
- package/src/components/EventCard/EventCard.tsx +13 -17
- package/src/models/strapi/StrapiEvent.ts +4 -2
- package/src/slices/Events/Events.test.tsx +11 -9
- package/src/slices/Events/Events.tsx +6 -5
- package/src/test/strapiMocks/strapiEventMock.ts +4 -2
- package/src/utils/convertStrapiTime.test.ts +21 -0
- package/src/utils/convertStrapiTime.ts +19 -0
|
@@ -39,8 +39,10 @@ interface StrapiEvent {
|
|
|
39
39
|
location?: string;
|
|
40
40
|
locale: Locale;
|
|
41
41
|
online?: boolean;
|
|
42
|
-
|
|
43
|
-
|
|
42
|
+
startDate: Date;
|
|
43
|
+
startTime?: string;
|
|
44
|
+
endDate?: Date;
|
|
45
|
+
endTime?: string;
|
|
44
46
|
slices: any[];
|
|
45
47
|
localizations: StrapiLocalization[];
|
|
46
48
|
topBanner?: StrapiTopBanner;
|
|
@@ -5869,6 +5869,18 @@ var EventType;
|
|
|
5869
5869
|
EventType["FAIR"] = "Fair";
|
|
5870
5870
|
})(EventType || (EventType = {}));
|
|
5871
5871
|
|
|
5872
|
+
var convertStrapiTime = function convertStrapiTime(date, formatNumber) {
|
|
5873
|
+
var tempTime = date.split(':');
|
|
5874
|
+
var dt = new Date();
|
|
5875
|
+
dt.setHours(parseInt(tempTime[0], 10), parseInt(tempTime[1], 10), 0, 0);
|
|
5876
|
+
var time = new Date(dt.getTime() - dt.getTimezoneOffset() * 60000);
|
|
5877
|
+
return formatNumber(time.getUTCHours(), {
|
|
5878
|
+
minimumIntegerDigits: 2
|
|
5879
|
+
}) + ":" + formatNumber(time.getUTCMinutes(), {
|
|
5880
|
+
minimumIntegerDigits: 2
|
|
5881
|
+
});
|
|
5882
|
+
};
|
|
5883
|
+
|
|
5872
5884
|
var _templateObject;
|
|
5873
5885
|
var MAX_LENGTH = 120;
|
|
5874
5886
|
var LOCATION_MAX_LENGTH = 28;
|
|
@@ -6042,19 +6054,15 @@ var EventCard = function EventCard(_ref) {
|
|
|
6042
6054
|
color: 'var(--boemly-colors-primary-700)'
|
|
6043
6055
|
}), React__default.default.createElement(boemly.Text, {
|
|
6044
6056
|
size: ['xsLowBold', null, null, 'smLowBold']
|
|
6045
|
-
}, formatDate(event.
|
|
6057
|
+
}, formatDate(event.startDate, {
|
|
6046
6058
|
year: 'numeric',
|
|
6047
6059
|
month: '2-digit',
|
|
6048
6060
|
day: '2-digit'
|
|
6049
|
-
}),
|
|
6050
|
-
|
|
6051
|
-
|
|
6052
|
-
|
|
6053
|
-
}),
|
|
6054
|
-
minimumIntegerDigits: 2
|
|
6055
|
-
}), ":", formatNumber(new Date(event.end).getUTCMinutes(), {
|
|
6056
|
-
minimumIntegerDigits: 2
|
|
6057
|
-
})))), React__default.default.createElement(boemly.Text, {
|
|
6061
|
+
}), event.startTime && " | " + convertStrapiTime(event.startTime, formatNumber) + " ", (event.endDate || event.endTime) && ' - ', event.endDate && formatDate(event.endDate, {
|
|
6062
|
+
year: 'numeric',
|
|
6063
|
+
month: '2-digit',
|
|
6064
|
+
day: '2-digit'
|
|
6065
|
+
}), event.endTime && event.endDate && ' | ', event.endTime && convertStrapiTime(event.endTime, formatNumber)))), React__default.default.createElement(boemly.Text, {
|
|
6058
6066
|
mb: mobile ? '0' : '7',
|
|
6059
6067
|
size: ['xsRegularNormal', null, null, 'smRegularNormal']
|
|
6060
6068
|
}, isExpanded || !mobile ? event.description : event.description.substring(0, MAX_LENGTH) + "..."), event.description.length > MAX_LENGTH && mobile && React__default.default.createElement(boemly.Flex, {
|
|
@@ -6180,15 +6188,15 @@ var Events = function Events(_ref) {
|
|
|
6180
6188
|
var now = new Date().toISOString();
|
|
6181
6189
|
var buildEventsUrl = function buildEventsUrl(index, batchSize, startFilter) {
|
|
6182
6190
|
var url = new URL("/treely-events", STRAPI_URI);
|
|
6183
|
-
url.searchParams.append('pagination[
|
|
6191
|
+
url.searchParams.append('pagination[startDate]', (index * batchSize).toString());
|
|
6184
6192
|
url.searchParams.append('pagination[limit]', batchSize.toString());
|
|
6185
6193
|
url.searchParams.append(startFilter, now);
|
|
6186
6194
|
url.searchParams.append('locale', locale);
|
|
6187
6195
|
url.searchParams.append('pLevel', STRAPI_DEFAULT_POPULATE_DEPTH);
|
|
6188
6196
|
if (sort[0] === Sort.OLDEST_FIRST) {
|
|
6189
|
-
url.searchParams.append('sort', '
|
|
6197
|
+
url.searchParams.append('sort', 'startDate:asc');
|
|
6190
6198
|
} else {
|
|
6191
|
-
url.searchParams.append('sort', '
|
|
6199
|
+
url.searchParams.append('sort', 'startDate:desc');
|
|
6192
6200
|
}
|
|
6193
6201
|
if (eventTypeFilter.length) {
|
|
6194
6202
|
eventTypeFilter.forEach(function (filter, i) {
|
|
@@ -6203,10 +6211,10 @@ var Events = function Events(_ref) {
|
|
|
6203
6211
|
return "/treely-events" + url.search;
|
|
6204
6212
|
};
|
|
6205
6213
|
var getUpcomingKey = React.useCallback(function (index) {
|
|
6206
|
-
return buildEventsUrl(index, UPCOMING_BATCH_SIZE, 'filters[
|
|
6214
|
+
return buildEventsUrl(index, UPCOMING_BATCH_SIZE, 'filters[startDate][$gte]');
|
|
6207
6215
|
}, [eventTypeFilter, languageFilter, sort]);
|
|
6208
6216
|
var getPastKey = React.useCallback(function (index) {
|
|
6209
|
-
return buildEventsUrl(index, PAST_BATCH_SIZE, 'filters[
|
|
6217
|
+
return buildEventsUrl(index, PAST_BATCH_SIZE, 'filters[startDate][$lt]');
|
|
6210
6218
|
}, [eventTypeFilter, languageFilter, sort]);
|
|
6211
6219
|
var _useEvents = useEvents({
|
|
6212
6220
|
getKey: getUpcomingKey,
|