@redneckz/wildless-cms-uni-blocks 0.14.1064 → 0.14.1066
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/bundle/blocks.schema.json +1 -1
- package/bundle/bundle.umd.js +58 -32
- package/bundle/bundle.umd.min.js +1 -1
- package/bundle/components/RatesTable/RatesTable.d.ts +3 -0
- package/bundle/components/RatesTable/RatesTableContent.d.ts +13 -3
- package/bundle/components/RatesTable/RatesTableItem.d.ts +2 -2
- package/bundle/hooks/useRates.d.ts +11 -2
- package/dist/components/CreditCardForm/getDeliveryCreditCardData.js +6 -0
- package/dist/components/CreditCardForm/getDeliveryCreditCardData.js.map +1 -1
- package/dist/components/CreditCardForm/useCreditCardFormAPI.js +2 -1
- package/dist/components/CreditCardForm/useCreditCardFormAPI.js.map +1 -1
- package/dist/components/RatesTable/RatesTable.d.ts +3 -0
- package/dist/components/RatesTable/RatesTable.js +23 -5
- package/dist/components/RatesTable/RatesTable.js.map +1 -1
- package/dist/components/RatesTable/RatesTableContent.d.ts +13 -3
- package/dist/components/RatesTable/RatesTableItem.d.ts +2 -2
- package/dist/components/RatesTable/RatesTableItem.js.map +1 -1
- package/dist/hooks/useRates.d.ts +11 -2
- package/dist/hooks/useRates.js +28 -20
- package/dist/hooks/useRates.js.map +1 -1
- package/dist/retail/components/Fields/DeliveryDateField.js +1 -5
- package/dist/retail/components/Fields/DeliveryDateField.js.map +1 -1
- package/dist/retail/components/Fields/DeliveryTimeField.js +1 -0
- package/dist/retail/components/Fields/DeliveryTimeField.js.map +1 -1
- package/lib/components/CreditCardForm/getDeliveryCreditCardData.js +6 -0
- package/lib/components/CreditCardForm/getDeliveryCreditCardData.js.map +1 -1
- package/lib/components/CreditCardForm/useCreditCardFormAPI.js +2 -1
- package/lib/components/CreditCardForm/useCreditCardFormAPI.js.map +1 -1
- package/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.d.ts +1 -1
- package/lib/components/RatesTable/RatesTable.d.ts +3 -0
- package/lib/components/RatesTable/RatesTable.fixture.d.ts +1 -1
- package/lib/components/RatesTable/RatesTable.fixture.mobile.d.ts +1 -1
- package/lib/components/RatesTable/RatesTable.js +23 -5
- package/lib/components/RatesTable/RatesTable.js.map +1 -1
- package/lib/components/RatesTable/RatesTableContent.d.ts +13 -3
- package/lib/components/RatesTable/RatesTableItem.d.ts +2 -2
- package/lib/components/RatesTable/RatesTableItem.js.map +1 -1
- package/lib/hooks/useRates.d.ts +11 -2
- package/lib/hooks/useRates.js +28 -20
- package/lib/hooks/useRates.js.map +1 -1
- package/lib/retail/components/Fields/DeliveryDateField.js +1 -5
- package/lib/retail/components/Fields/DeliveryDateField.js.map +1 -1
- package/lib/retail/components/Fields/DeliveryTimeField.js +1 -0
- package/lib/retail/components/Fields/DeliveryTimeField.js.map +1 -1
- package/mobile/bundle/bundle.umd.js +58 -32
- package/mobile/bundle/bundle.umd.min.js +1 -1
- package/mobile/bundle/components/RatesTable/RatesTable.d.ts +3 -0
- package/mobile/bundle/components/RatesTable/RatesTableContent.d.ts +13 -3
- package/mobile/bundle/components/RatesTable/RatesTableItem.d.ts +2 -2
- package/mobile/bundle/hooks/useRates.d.ts +11 -2
- package/mobile/dist/components/CreditCardForm/getDeliveryCreditCardData.js +6 -0
- package/mobile/dist/components/CreditCardForm/getDeliveryCreditCardData.js.map +1 -1
- package/mobile/dist/components/CreditCardForm/useCreditCardFormAPI.js +2 -1
- package/mobile/dist/components/CreditCardForm/useCreditCardFormAPI.js.map +1 -1
- package/mobile/dist/components/RatesTable/RatesTable.d.ts +3 -0
- package/mobile/dist/components/RatesTable/RatesTable.js +23 -5
- package/mobile/dist/components/RatesTable/RatesTable.js.map +1 -1
- package/mobile/dist/components/RatesTable/RatesTableContent.d.ts +13 -3
- package/mobile/dist/components/RatesTable/RatesTableItem.d.ts +2 -2
- package/mobile/dist/components/RatesTable/RatesTableItem.js.map +1 -1
- package/mobile/dist/hooks/useRates.d.ts +11 -2
- package/mobile/dist/hooks/useRates.js +28 -20
- package/mobile/dist/hooks/useRates.js.map +1 -1
- package/mobile/dist/retail/components/Fields/DeliveryDateField.js +1 -5
- package/mobile/dist/retail/components/Fields/DeliveryDateField.js.map +1 -1
- package/mobile/dist/retail/components/Fields/DeliveryTimeField.js +1 -0
- package/mobile/dist/retail/components/Fields/DeliveryTimeField.js.map +1 -1
- package/mobile/lib/components/CreditCardForm/getDeliveryCreditCardData.js +6 -0
- package/mobile/lib/components/CreditCardForm/getDeliveryCreditCardData.js.map +1 -1
- package/mobile/lib/components/CreditCardForm/useCreditCardFormAPI.js +2 -1
- package/mobile/lib/components/CreditCardForm/useCreditCardFormAPI.js.map +1 -1
- package/mobile/lib/components/RatesTable/RatesTable.d.ts +3 -0
- package/mobile/lib/components/RatesTable/RatesTable.js +23 -5
- package/mobile/lib/components/RatesTable/RatesTable.js.map +1 -1
- package/mobile/lib/components/RatesTable/RatesTableContent.d.ts +13 -3
- package/mobile/lib/components/RatesTable/RatesTableItem.d.ts +2 -2
- package/mobile/lib/components/RatesTable/RatesTableItem.js.map +1 -1
- package/mobile/lib/hooks/useRates.d.ts +11 -2
- package/mobile/lib/hooks/useRates.js +28 -20
- package/mobile/lib/hooks/useRates.js.map +1 -1
- package/mobile/lib/retail/components/Fields/DeliveryDateField.js +1 -5
- package/mobile/lib/retail/components/Fields/DeliveryDateField.js.map +1 -1
- package/mobile/lib/retail/components/Fields/DeliveryTimeField.js +1 -0
- package/mobile/lib/retail/components/Fields/DeliveryTimeField.js.map +1 -1
- package/mobile/src/components/CreditCardForm/getDeliveryCreditCardData.ts +6 -0
- package/mobile/src/components/CreditCardForm/useCreditCardFormAPI.tsx +2 -1
- package/mobile/src/components/RatesTable/RatesTable.example.json +5 -3
- package/mobile/src/components/RatesTable/RatesTable.tsx +71 -16
- package/mobile/src/components/RatesTable/RatesTableContent.ts +14 -3
- package/mobile/src/components/RatesTable/RatesTableItem.tsx +2 -1
- package/mobile/src/hooks/useRates.ts +46 -23
- package/mobile/src/retail/components/Fields/DeliveryDateField.tsx +2 -6
- package/mobile/src/retail/components/Fields/DeliveryTimeField.tsx +1 -0
- package/package.json +1 -1
- package/src/components/CreditCardForm/getDeliveryCreditCardData.ts +6 -0
- package/src/components/CreditCardForm/useCreditCardFormAPI.tsx +2 -1
- package/src/components/RatesTable/RatesTable.example.json +5 -3
- package/src/components/RatesTable/RatesTable.fixture.mobile.tsx +10 -5
- package/src/components/RatesTable/RatesTable.fixture.tsx +10 -5
- package/src/components/RatesTable/RatesTable.tsx +71 -16
- package/src/components/RatesTable/RatesTableContent.ts +14 -3
- package/src/components/RatesTable/RatesTableItem.tsx +2 -1
- package/src/hooks/useRates.ts +46 -23
- package/src/retail/components/Fields/DeliveryDateField.tsx +2 -6
- package/src/retail/components/Fields/DeliveryTimeField.tsx +1 -0
package/bundle/bundle.umd.js
CHANGED
|
@@ -6243,9 +6243,6 @@
|
|
|
6243
6243
|
|
|
6244
6244
|
const MIN_DATE = new Date(Date.now() + 1 * 24 * 60 * 60 * 1000);
|
|
6245
6245
|
const DeliveryDateField = JSX(({ field, input }) => {
|
|
6246
|
-
const { productType } = useRetailFormStore();
|
|
6247
|
-
const isDebit = productType === 'debitCard';
|
|
6248
|
-
const minDate = isDebit ? MIN_DATE : new Date();
|
|
6249
6246
|
const { data } = useLeadFormData('DAYS_DELIVERY_SETTINGS');
|
|
6250
6247
|
const weekends = useMemo(() => {
|
|
6251
6248
|
const weekendItem = data?.find((item) => item.key === 'WEEKEND');
|
|
@@ -6254,7 +6251,7 @@
|
|
|
6254
6251
|
}
|
|
6255
6252
|
return [];
|
|
6256
6253
|
}, [data]);
|
|
6257
|
-
return (jsx(DatePickerControl, { label: "\u0414\u0430\u0442\u0430 \u0434\u043E\u0441\u0442\u0430\u0432\u043A\u0438", ...field(input?.name ?? ''), ...input, minDate:
|
|
6254
|
+
return (jsx(DatePickerControl, { label: "\u0414\u0430\u0442\u0430 \u0434\u043E\u0441\u0442\u0430\u0432\u043A\u0438", ...field(input?.name ?? ''), ...input, minDate: MIN_DATE, weekends: weekends }));
|
|
6258
6255
|
});
|
|
6259
6256
|
|
|
6260
6257
|
const DeliveryTimeField = JSX(({ field, input }) => {
|
|
@@ -6267,6 +6264,7 @@
|
|
|
6267
6264
|
const allowedTimes = isDebit ? debitDeliveryTime : creditDeliveryTime;
|
|
6268
6265
|
return (data || [])
|
|
6269
6266
|
.filter((item) => item.key && allowedTimes.includes(item.key))
|
|
6267
|
+
.sort((a, b) => (a.displayOrder || 0) - (b.displayOrder || 0))
|
|
6270
6268
|
.map((item) => ({
|
|
6271
6269
|
id: item.key,
|
|
6272
6270
|
text: item.value,
|
|
@@ -10828,12 +10826,17 @@
|
|
|
10828
10826
|
|
|
10829
10827
|
const getDeliveryData$1 = (formData) => {
|
|
10830
10828
|
const { methodObtain, deliveryDate = '', deliveryTime } = formData;
|
|
10829
|
+
const isNewMicroservice = checkNewMicroservice();
|
|
10830
|
+
//TODO временный хардкод для тестирования, требуется чтобы отработал ЕФР
|
|
10831
|
+
const oficeId = isNewMicroservice ? { id: '92fc8b67-2648-43ad-a441-5ca827021186' } : { id: '3' };
|
|
10831
10832
|
const isCourierDelivery = methodObtain === 'courier';
|
|
10832
10833
|
const deliveryTimeCd = deliveryTime ? { deliveryTimeCd: { key: deliveryTime } } : {};
|
|
10833
10834
|
return isCourierDelivery
|
|
10834
10835
|
? {
|
|
10835
10836
|
courierDeliveryFlg: isCourierDelivery,
|
|
10836
10837
|
deliveryDate: dateToISO(deliveryDate.toString().replace(/(GMT)[+-]\d{4}/, 'GMT+0000')),
|
|
10838
|
+
//TODO временный хардкод для тестирования, не забыть удалить
|
|
10839
|
+
office: oficeId,
|
|
10837
10840
|
...deliveryTimeCd,
|
|
10838
10841
|
}
|
|
10839
10842
|
: {};
|
|
@@ -10929,7 +10932,8 @@
|
|
|
10929
10932
|
cardCategory: leadForm?.cardCategory?.text,
|
|
10930
10933
|
deliveryDate: leadForm?.deliveryDate,
|
|
10931
10934
|
};
|
|
10932
|
-
|
|
10935
|
+
const resetState = { ...initialState, methodObtain: undefined };
|
|
10936
|
+
retailFormStore.leadForm = resetState;
|
|
10933
10937
|
}
|
|
10934
10938
|
}, [isFinalStep, initialState]);
|
|
10935
10939
|
const handleSubmit = useCallback(async (formData) => {
|
|
@@ -14080,40 +14084,48 @@
|
|
|
14080
14084
|
return (jsx(BlockWrapper, { version: "transparent", className: style(className), defaultPadding: "p-0", ...rest, children: dataType === 'offices' ? jsx(OfficesMap, {}) : jsx(AtmsMap, { descriptionData: data }) }));
|
|
14081
14085
|
});
|
|
14082
14086
|
|
|
14083
|
-
const
|
|
14084
|
-
const
|
|
14085
|
-
|
|
14086
|
-
|
|
14087
|
-
|
|
14088
|
-
|
|
14089
|
-
|
|
14090
|
-
|
|
14091
|
-
|
|
14092
|
-
|
|
14093
|
-
|
|
14094
|
-
|
|
14095
|
-
|
|
14096
|
-
const
|
|
14087
|
+
const EMPTY_RATES = [];
|
|
14088
|
+
const RATES_URL = {
|
|
14089
|
+
natural: `${API_BASE_URI}/rates`,
|
|
14090
|
+
cards: `${API_BASE_URI}/ratescards`,
|
|
14091
|
+
//archive: `${API_BASE_URI}/historyrates`,
|
|
14092
|
+
};
|
|
14093
|
+
const RATES_KEY = {
|
|
14094
|
+
natural: 'rates',
|
|
14095
|
+
cards: 'ratescards',
|
|
14096
|
+
//archive: 'historyrates',
|
|
14097
|
+
};
|
|
14098
|
+
// TODO: для архива прокинуть date
|
|
14099
|
+
function useRates({ ratesType = 'natural', fetchArchive = true }) {
|
|
14100
|
+
//const url = ratesType === 'archive' ? getArchiveRatesURL(date) : RATES_URL[ratesType];
|
|
14101
|
+
const url = RATES_URL[ratesType];
|
|
14102
|
+
const rateKey = RATES_KEY[ratesType];
|
|
14097
14103
|
const ratesStore = useLocalStore();
|
|
14098
14104
|
// проверяем, надо ли обновлять значения ставок
|
|
14099
|
-
const shouldUpdate = getShouldUpdate(
|
|
14105
|
+
const shouldUpdate = getShouldUpdate(rateKey, ratesStore, fetchArchive);
|
|
14100
14106
|
// костыль, не отправлять запрос на бэк, если уже был запрос менее 15 мин назад
|
|
14101
14107
|
const { data } = useAsyncData(shouldUpdate ? url : '', fetchJSONUnsafe);
|
|
14102
14108
|
// если есть data и значение надо обновить, то обновляем локалсторадж
|
|
14103
14109
|
if (shouldUpdate && data) {
|
|
14104
14110
|
const nextUpdate = getTimeAfter15Minutes();
|
|
14105
|
-
ratesStore[rateKey] = { rate: data, nextUpdate };
|
|
14111
|
+
ratesStore[rateKey] = { rate: data ?? [], nextUpdate };
|
|
14106
14112
|
}
|
|
14107
14113
|
// берем данные из локалсторадж
|
|
14108
14114
|
const rates = ratesStore[rateKey]?.rate;
|
|
14115
|
+
const isLoad = Array.isArray(rates);
|
|
14109
14116
|
// возвращаем данные из локалсторадж или заглушку
|
|
14110
|
-
return
|
|
14117
|
+
return { ratesList: rates ?? EMPTY_RATES, isLoad };
|
|
14111
14118
|
}
|
|
14112
14119
|
// Отсчитываем 15 минут с текущего момента
|
|
14113
14120
|
const getTimeAfter15Minutes = () => Date.now() + 15 * 60 * 1000;
|
|
14114
|
-
const getShouldUpdate = (
|
|
14115
|
-
? !ratesStore?.
|
|
14116
|
-
: !ratesStore?.
|
|
14121
|
+
const getShouldUpdate = (rateKey, ratesStore, fetchArchive) => rateKey === 'archive'
|
|
14122
|
+
? (!ratesStore?.[rateKey] || ratesStore?.[rateKey].nextUpdate <= Date.now()) && fetchArchive
|
|
14123
|
+
: !ratesStore?.[rateKey] || ratesStore?.[rateKey].nextUpdate <= Date.now();
|
|
14124
|
+
/*const getArchiveRatesURL = (date?: Date) => {
|
|
14125
|
+
const formattedDate = date && formatDate(date, true);
|
|
14126
|
+
|
|
14127
|
+
return formattedDate ? `${RATES_URL['archive']}?date=${formattedDate}` : RATES_URL['archive'];
|
|
14128
|
+
};*/
|
|
14117
14129
|
|
|
14118
14130
|
const useCarouselControls = (props, initialIndex = 0) => {
|
|
14119
14131
|
const { itemCount, visibleItemCount } = props;
|
|
@@ -14223,15 +14235,29 @@
|
|
|
14223
14235
|
return (jsxs("div", { className: "space-y-xl mb-3xl", children: [maxDate && renderDate({ dateString: maxDate, isArchive }), jsxs("div", { className: style(RATES_COLUMN_STYLE), children: [jsx(Text, { font: "font-medium", children: "\u0412\u0430\u043B\u044E\u0442\u0430" }), jsx(Text, { font: "font-medium", children: "\u041F\u043E\u043A\u0443\u043F\u043A\u0430" }), jsx(Text, { font: "font-medium", children: "\u041F\u0440\u043E\u0434\u0430\u0436\u0430" })] }), list.length > 0 ? (list.map((rate, i) => jsx(Rate, { ...rate }, String(i)))) : (jsx(Paragraph, { children: "\u041E\u0448\u0438\u0431\u043A\u0430 \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u0438\u044F \u0434\u0430\u043D\u043D\u044B\u0445" })), jsx(Paragraph, { color: "text-secondary-text", children: infoMessage })] }));
|
|
14224
14236
|
});
|
|
14225
14237
|
|
|
14226
|
-
const renderDataPickForm = () => (jsxs("div", { className: "flex justify-start items-end space-x-xl", children: [jsx(DatePicker, { label: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0434\u0435\u043D\u044C", maxDate: new Date() }), jsx(SubmitButton$1, { className: "h-fit", children: "\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C" })] }));
|
|
14227
|
-
|
|
14228
14238
|
const renderLink = (href) => (jsxs(Paragraph, { children: ["\u041F\u043E\u043B\u043D\u044B\u0439 \u0430\u0440\u0445\u0438\u0432 \u0432\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u043F\u043E\u0441\u043C\u043E\u0442\u0440\u0435\u0442\u044C ", jsx(Link, { href: href, children: "\u0437\u0434\u0435\u0441\u044C" })] }));
|
|
14229
14239
|
|
|
14230
|
-
const RatesTable = JSX(({ href, className = '', infoMessage,
|
|
14231
|
-
const
|
|
14232
|
-
const
|
|
14233
|
-
|
|
14240
|
+
const RatesTable = JSX(({ href, ratesType = 'natural', className = '', infoMessage, notFoundMessage, title, ...rest }) => {
|
|
14241
|
+
// const [date, setDate] = useState<Date>();
|
|
14242
|
+
const [fetchArchive, setFetchArchive] = useState(true);
|
|
14243
|
+
//const isArchive = ratesType === 'archive';
|
|
14244
|
+
const { ratesList, isLoad } = useRates({
|
|
14245
|
+
ratesType,
|
|
14246
|
+
fetchArchive,
|
|
14247
|
+
});
|
|
14248
|
+
useEffect(() => {
|
|
14249
|
+
setFetchArchive(false);
|
|
14250
|
+
}, []);
|
|
14251
|
+
const isRatesValid = ratesList?.length > 0;
|
|
14252
|
+
return (jsxs(BlockWrapper, { className: style('p-6xl space-y-xl', className), defaultPadding: "p-0", ...rest, children: [jsx(Heading, { className: "mb-xl", children: title }), isLoad ? (renderRatesContent({
|
|
14253
|
+
ratesList,
|
|
14254
|
+
isArchive: false,
|
|
14255
|
+
infoMessage,
|
|
14256
|
+
isRatesValid,
|
|
14257
|
+
notFoundMessage,
|
|
14258
|
+
})) : (jsx(Loader, { position: "static" })), href ? renderLink(href) : null] }));
|
|
14234
14259
|
});
|
|
14260
|
+
const renderRatesContent = ({ ratesList = [], isArchive = false, infoMessage, isRatesValid, notFoundMessage, }) => ratesList.length > 0 ? (ratesList.map((list, i) => (jsx(RatesTableItem, { list: list, isRatesValid: isRatesValid, isArchive: isArchive, infoMessage: infoMessage }, String(i))))) : (jsx(NotFound, { description: notFoundMessage }));
|
|
14235
14261
|
|
|
14236
14262
|
const inputs = [
|
|
14237
14263
|
{
|
|
@@ -14823,7 +14849,7 @@
|
|
|
14823
14849
|
slots: () => [HEADER_SLOT, FOOTER_SLOT, STICKY_FOOTER_SLOT],
|
|
14824
14850
|
});
|
|
14825
14851
|
|
|
14826
|
-
const packageVersion = "0.14.
|
|
14852
|
+
const packageVersion = "0.14.1065";
|
|
14827
14853
|
|
|
14828
14854
|
exports.Blocks = Blocks;
|
|
14829
14855
|
exports.ContentPage = ContentPage;
|