@redneckz/wildless-cms-uni-blocks 0.14.869 → 0.14.870
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/bundle.umd.js +50 -53
- package/bundle/bundle.umd.min.js +1 -1
- package/bundle/components/OfficesAtmsMap/OfficesAtmsMapLayout.d.ts +0 -1
- package/bundle/components/OfficesAtmsMap/OfficesAtmsMapProps.d.ts +1 -0
- package/bundle/components/OfficesAtmsMap/filters.d.ts +23 -13
- package/dist/components/AdTile/AdTile.js.map +1 -1
- package/dist/components/OfficesAtmsMap/AtmsMap.js +3 -23
- package/dist/components/OfficesAtmsMap/AtmsMap.js.map +1 -1
- package/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.d.ts +0 -1
- package/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.js +3 -3
- package/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.js.map +1 -1
- package/dist/components/OfficesAtmsMap/OfficesAtmsMapProps.d.ts +1 -0
- package/dist/components/OfficesAtmsMap/filters.d.ts +23 -13
- package/dist/components/OfficesAtmsMap/filters.js +28 -12
- package/dist/components/OfficesAtmsMap/filters.js.map +1 -1
- package/dist/components/OfficesAtmsMap/renderButtonsGroup.js +1 -1
- package/dist/components/OfficesAtmsMap/renderButtonsGroup.js.map +1 -1
- package/dist/components/OfficesAtmsMap/renderDescriptionBlock.js +2 -1
- package/dist/components/OfficesAtmsMap/renderDescriptionBlock.js.map +1 -1
- package/dist/components/OfficesAtmsMap/renderHeading.js +1 -1
- package/dist/components/OfficesAtmsMap/renderHeading.js.map +1 -1
- package/dist/ui-kit/PriceList/PriceList.js +1 -1
- package/dist/ui-kit/PriceList/PriceList.js.map +1 -1
- package/dist/ui-kit/TopItem/TopItem.js.map +1 -1
- package/lib/common.css +1 -1
- package/lib/components/AdTile/AdTile.js.map +1 -1
- package/lib/components/OfficesAtmsMap/AtmsMap.js +3 -23
- package/lib/components/OfficesAtmsMap/AtmsMap.js.map +1 -1
- package/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.d.ts +0 -1
- package/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.js +3 -3
- package/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.js.map +1 -1
- package/lib/components/OfficesAtmsMap/OfficesAtmsMapProps.d.ts +1 -0
- package/lib/components/OfficesAtmsMap/filters.d.ts +23 -13
- package/lib/components/OfficesAtmsMap/filters.js +28 -12
- package/lib/components/OfficesAtmsMap/filters.js.map +1 -1
- package/lib/components/OfficesAtmsMap/renderButtonsGroup.js +1 -1
- package/lib/components/OfficesAtmsMap/renderButtonsGroup.js.map +1 -1
- package/lib/components/OfficesAtmsMap/renderDescriptionBlock.js +2 -1
- package/lib/components/OfficesAtmsMap/renderDescriptionBlock.js.map +1 -1
- package/lib/components/OfficesAtmsMap/renderHeading.js +1 -1
- package/lib/components/OfficesAtmsMap/renderHeading.js.map +1 -1
- package/lib/ui-kit/PriceList/PriceList.js +1 -1
- package/lib/ui-kit/PriceList/PriceList.js.map +1 -1
- package/lib/ui-kit/TopItem/TopItem.js.map +1 -1
- package/mobile/bundle/bundle.umd.js +48 -51
- package/mobile/bundle/bundle.umd.min.js +1 -1
- package/mobile/bundle/components/OfficesAtmsMap/OfficesAtmsMapLayout.d.ts +0 -1
- package/mobile/bundle/components/OfficesAtmsMap/OfficesAtmsMapProps.d.ts +1 -0
- package/mobile/bundle/components/OfficesAtmsMap/filters.d.ts +23 -13
- package/mobile/dist/components/AdTile/AdTile.js.map +1 -1
- package/mobile/dist/components/OfficesAtmsMap/AtmsMap.js +3 -23
- package/mobile/dist/components/OfficesAtmsMap/AtmsMap.js.map +1 -1
- package/mobile/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.d.ts +0 -1
- package/mobile/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.js +3 -3
- package/mobile/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.js.map +1 -1
- package/mobile/dist/components/OfficesAtmsMap/OfficesAtmsMapProps.d.ts +1 -0
- package/mobile/dist/components/OfficesAtmsMap/filters.d.ts +23 -13
- package/mobile/dist/components/OfficesAtmsMap/filters.js +28 -12
- package/mobile/dist/components/OfficesAtmsMap/filters.js.map +1 -1
- package/mobile/dist/components/OfficesAtmsMap/renderButtonsGroup.js +1 -1
- package/mobile/dist/components/OfficesAtmsMap/renderButtonsGroup.js.map +1 -1
- package/mobile/dist/components/OfficesAtmsMap/renderDescriptionBlock.js +2 -1
- package/mobile/dist/components/OfficesAtmsMap/renderDescriptionBlock.js.map +1 -1
- package/mobile/dist/components/OfficesAtmsMap/renderHeading.js +1 -1
- package/mobile/dist/components/OfficesAtmsMap/renderHeading.js.map +1 -1
- package/mobile/dist/ui-kit/PriceList/PriceList.js +1 -1
- package/mobile/dist/ui-kit/PriceList/PriceList.js.map +1 -1
- package/mobile/dist/ui-kit/TopItem/TopItem.js.map +1 -1
- package/mobile/lib/common.css +1 -1
- package/mobile/lib/components/AdTile/AdTile.js.map +1 -1
- package/mobile/lib/components/OfficesAtmsMap/AtmsMap.js +3 -23
- package/mobile/lib/components/OfficesAtmsMap/AtmsMap.js.map +1 -1
- package/mobile/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.d.ts +0 -1
- package/mobile/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.js +3 -3
- package/mobile/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.js.map +1 -1
- package/mobile/lib/components/OfficesAtmsMap/OfficesAtmsMapProps.d.ts +1 -0
- package/mobile/lib/components/OfficesAtmsMap/filters.d.ts +23 -13
- package/mobile/lib/components/OfficesAtmsMap/filters.js +28 -12
- package/mobile/lib/components/OfficesAtmsMap/filters.js.map +1 -1
- package/mobile/lib/components/OfficesAtmsMap/renderButtonsGroup.js +1 -1
- package/mobile/lib/components/OfficesAtmsMap/renderButtonsGroup.js.map +1 -1
- package/mobile/lib/components/OfficesAtmsMap/renderDescriptionBlock.js +2 -1
- package/mobile/lib/components/OfficesAtmsMap/renderDescriptionBlock.js.map +1 -1
- package/mobile/lib/components/OfficesAtmsMap/renderHeading.js +1 -1
- package/mobile/lib/components/OfficesAtmsMap/renderHeading.js.map +1 -1
- package/mobile/lib/ui-kit/PriceList/PriceList.js +1 -1
- package/mobile/lib/ui-kit/PriceList/PriceList.js.map +1 -1
- package/mobile/lib/ui-kit/TopItem/TopItem.js.map +1 -1
- package/mobile/src/components/AdTile/AdTile.tsx +1 -1
- package/mobile/src/components/OfficesAtmsMap/AtmsMap.tsx +3 -31
- package/mobile/src/components/OfficesAtmsMap/OfficesAtmsMapLayout.tsx +3 -3
- package/mobile/src/components/OfficesAtmsMap/OfficesAtmsMapProps.tsx +1 -0
- package/mobile/src/components/OfficesAtmsMap/filters.ts +31 -13
- package/mobile/src/components/OfficesAtmsMap/renderButtonsGroup.tsx +1 -1
- package/mobile/src/components/OfficesAtmsMap/renderDescriptionBlock.tsx +15 -17
- package/mobile/src/components/OfficesAtmsMap/renderHeading.tsx +13 -12
- package/mobile/src/ui-kit/PriceList/PriceList.tsx +1 -1
- package/mobile/src/ui-kit/TopItem/TopItem.tsx +1 -1
- package/package.json +1 -1
- package/src/components/AdTile/AdTile.tsx +1 -1
- package/src/components/OfficesAtmsMap/AtmsMap.tsx +3 -31
- package/src/components/OfficesAtmsMap/OfficesAtmsMapLayout.tsx +3 -3
- package/src/components/OfficesAtmsMap/OfficesAtmsMapProps.tsx +1 -0
- package/src/components/OfficesAtmsMap/filters.ts +31 -13
- package/src/components/OfficesAtmsMap/renderButtonsGroup.tsx +1 -1
- package/src/components/OfficesAtmsMap/renderDescriptionBlock.tsx +15 -17
- package/src/components/OfficesAtmsMap/renderHeading.tsx +13 -12
- package/src/ui-kit/PriceList/PriceList.tsx +1 -1
- package/src/ui-kit/TopItem/TopItem.tsx +1 -1
|
@@ -706,7 +706,7 @@
|
|
|
706
706
|
}).format(Number(_) || 0);
|
|
707
707
|
|
|
708
708
|
const PriceList = JSX(({ priceList }) => priceList?.length ? (jsx("div", { className: "flex flex-wrap xl:flex-nowrap xl:bg-main-divider xl:rounded-md p-xs gap-xl", role: "list", children: priceList.map(renderPriceListItem) })) : null);
|
|
709
|
-
const renderPriceListItem = ({ label, amount, unit }, i) => (jsxs("div", { className: "basis-full flex flex-col-reverse sm:flex-row sm:justify-between sm:bg-main-divider sm:py-m sm:px-lg
|
|
709
|
+
const renderPriceListItem = ({ label, amount, unit }, i) => (jsxs("div", { className: "basis-full flex flex-col-reverse sm:flex-row sm:justify-between sm:bg-main-divider sm:py-m sm:px-lg rounded-md items-baseline whitespace-pre", role: "listitem", children: [jsx(Text, { font: "font-light", size: "text-l", color: "text-secondary-text", children: label }), amount ? (jsxs("span", { className: "font-sans text-h6 sm:text-primary-main text-primary-text", children: [toLocalNumberFormat(2)(amount), " ", unit || '₽'] })) : null] }, String(i)));
|
|
710
710
|
|
|
711
711
|
const Tags = JSX(({ className, tags }) => tags?.length ? (jsx("div", { className: style('flex flex-wrap gap-xs', className), role: "list", children: tags.map(renderTag) })) : null);
|
|
712
712
|
const renderTag = (tag, key) => (jsx("div", { className: "p-xs border-solid border rounded-md border-gray", role: "listitem", children: jsx(Text, { size: "text-m", font: "font-light", children: tag }) }, String(key)));
|
|
@@ -3313,6 +3313,12 @@
|
|
|
3313
3313
|
return { header, body };
|
|
3314
3314
|
};
|
|
3315
3315
|
|
|
3316
|
+
const ATMS_INITIAL_FILTRATION_STATE = {
|
|
3317
|
+
billAcceptorEnable: false,
|
|
3318
|
+
workAllTime: false,
|
|
3319
|
+
terminalTypeTerm: false,
|
|
3320
|
+
terminalTypeAtms: false,
|
|
3321
|
+
};
|
|
3316
3322
|
const INITIAL_FILTRATION_STATE$1 = {
|
|
3317
3323
|
workingSaturday: false,
|
|
3318
3324
|
premiumService: false,
|
|
@@ -3324,27 +3330,37 @@
|
|
|
3324
3330
|
bullionOperations: false,
|
|
3325
3331
|
preciousMetalsOperations: false,
|
|
3326
3332
|
transferringDataToBiometricSystem: false,
|
|
3333
|
+
...ATMS_INITIAL_FILTRATION_STATE,
|
|
3327
3334
|
};
|
|
3328
3335
|
const FILTRATION_LABELS = {
|
|
3329
|
-
safeBoxCaseVolumes: 'Аренда индивидуальных сейфовых ячеек',
|
|
3330
|
-
workingSaturday: 'Открыты по субботам',
|
|
3331
|
-
terminalTypeAtms: 'Банкоматы',
|
|
3332
|
-
terminalTypeTerm: 'Терминалы',
|
|
3333
|
-
workAllTime: 'Круглосуточно',
|
|
3334
3336
|
billAcceptorEnable: 'Прием наличных',
|
|
3335
|
-
premiumService: 'Премиальное обслуживание',
|
|
3336
|
-
privateBanking: 'Услуга Private banking',
|
|
3337
|
-
sellingCoins: 'Продажа монет из драгоценных металлов',
|
|
3338
|
-
buyingCoins: 'Покупка монет из драгоценных металлов',
|
|
3339
3337
|
bullionOperations: 'Операции со слитками',
|
|
3340
|
-
|
|
3341
|
-
transferringDataToBiometricSystem: 'Передача фото и голоса в Единую биометрическую систему',
|
|
3342
|
-
locationDisabledPeople: 'Для маломобильных',
|
|
3338
|
+
buyingCoins: 'Покупка монет из драгоценных металлов',
|
|
3343
3339
|
designDisabledPeople: 'Для слабовидящих',
|
|
3340
|
+
locationDisabledPeople: 'Для маломобильных',
|
|
3341
|
+
preciousMetalsOperations: 'Операции с драгоценными металлами',
|
|
3342
|
+
premiumService: 'Премиальное обслуживание',
|
|
3343
|
+
privateBanking: 'Услуга Private banking',
|
|
3344
3344
|
remoteWorkplace: 'Удаленное рабочее место',
|
|
3345
|
+
terminalTypeAtms: 'Банкоматы',
|
|
3346
|
+
terminalTypeTerm: 'Терминалы',
|
|
3347
|
+
transferringDataToBiometricSystem: 'Передача фото и голоса в Единую биометрическую систему',
|
|
3348
|
+
sellingCoins: 'Продажа монет из драгоценных металлов',
|
|
3349
|
+
safeBoxCaseVolumes: 'Аренда индивидуальных сейфовых ячеек',
|
|
3345
3350
|
serviceDisabledPeople: 'Для маломобильных граждан',
|
|
3351
|
+
workAllTime: 'Круглосуточно',
|
|
3352
|
+
workingSaturday: 'Открыты по субботам',
|
|
3353
|
+
};
|
|
3354
|
+
const FILTRATION_PREDICATES_ATMS = {
|
|
3355
|
+
terminalTypeTerm: (item) => item.terminalType?.toLowerCase() === 'терминал',
|
|
3356
|
+
terminalTypeAtms: (item) => item.terminalType?.toLowerCase() === 'банкомат',
|
|
3357
|
+
workAllTime: (item) => item.workTime?.toLowerCase() === 'круглосуточно',
|
|
3358
|
+
billAcceptorEnable: (item) => Boolean(item.billAcceptorEnable),
|
|
3359
|
+
locationDisabledPeople: (item) => Boolean(item.locationDisabledPeople),
|
|
3360
|
+
designDisabledPeople: (item) => Boolean(item.designDisabledPeople),
|
|
3346
3361
|
};
|
|
3347
|
-
const FILTRATION_PREDICATES
|
|
3362
|
+
const FILTRATION_PREDICATES = {
|
|
3363
|
+
...FILTRATION_PREDICATES_ATMS,
|
|
3348
3364
|
workingSaturday: (item) => Boolean('workSchedule' in item && item.workSchedule?.workingSaturday),
|
|
3349
3365
|
premiumService: (item) => Boolean('premiumService' in item && item.premiumService),
|
|
3350
3366
|
privateBanking: (item) => Boolean('privateBanking' in item && item.privateBanking),
|
|
@@ -3357,16 +3373,16 @@
|
|
|
3357
3373
|
transferringDataToBiometricSystem: (item) => Boolean('transferringDataToBiometricSystem' in item && item.transferringDataToBiometricSystem),
|
|
3358
3374
|
};
|
|
3359
3375
|
|
|
3360
|
-
const filterItems
|
|
3376
|
+
const filterItems = (data, filtrationState) => {
|
|
3361
3377
|
const truthyFilters = Object.keys(filtrationState).filter((key) => filtrationState[key]);
|
|
3362
|
-
return data.filter((item) => truthyFilters.every((_) => FILTRATION_PREDICATES
|
|
3378
|
+
return data.filter((item) => truthyFilters.every((_) => FILTRATION_PREDICATES[_](item)));
|
|
3363
3379
|
};
|
|
3364
3380
|
|
|
3365
3381
|
const defaultEmptyFunction$1 = () => void 0;
|
|
3366
3382
|
const useOfficesAtmsMapData = ({ data, remoteWorkplaces = [], filtrationState = {}, getBalloon = defaultEmptyFunction$1, getBalloonRemoteWorkplaces = defaultEmptyFunction$1, }) => {
|
|
3367
3383
|
const [filteredItems, points, filteredRemoteWorkplaces, lengthItems] = useMemo(() => {
|
|
3368
|
-
const _filteredItems = filterItems
|
|
3369
|
-
const _filteredRemoteWorkplaces = filterItems
|
|
3384
|
+
const _filteredItems = filterItems(data, filtrationState);
|
|
3385
|
+
const _filteredRemoteWorkplaces = filterItems(remoteWorkplaces, filtrationState);
|
|
3370
3386
|
const _points = [
|
|
3371
3387
|
..._filteredItems.map((_) => ({
|
|
3372
3388
|
type: 'offices',
|
|
@@ -7728,9 +7744,9 @@
|
|
|
7728
7744
|
if (!items) {
|
|
7729
7745
|
return null;
|
|
7730
7746
|
}
|
|
7731
|
-
return (jsxs("div", { children: [jsx("hr", { className: "w-full h-px bg-main-gray border-0" }), jsxs("div", { className: "p-xl", children: [title ? (jsx(Text, { color: "text-primary-text", size: "text-h5", children: jsx("div", { className: style({ 'mb-m': Boolean(title) }), children: title }) })) : null, items ? (jsx("div", { className: style('grid grid-cols-1 gap-m', inputColumnStyles(countColumns || isMobile ? 1 : 2)), children: items.map((item, index) => (jsx("div", { children: renderItem(item) }, index))) })) : null] })] }));
|
|
7747
|
+
return (jsxs("div", { children: [jsx("hr", { className: "w-full h-px bg-main-gray border-0" }), jsxs("div", { className: "p-xl", children: [title ? (jsx(Text, { color: "text-primary-text", size: "text-h5", children: jsx("div", { className: style({ 'mb-m': Boolean(title) }), children: title }) })) : null, items ? (jsx("div", { className: style('grid grid-cols-1 gap-m', inputColumnStyles(countColumns || isMobile ? 1 : 2)), children: items.map((item, index) => (jsx("div", { children: renderItem$1(item) }, index))) })) : null] })] }));
|
|
7732
7748
|
};
|
|
7733
|
-
const renderItem = ({ label, description }) => (jsxs("div", { className: "flex flex-col", children: [jsx(Text, { color: "text-secondary-text", size: "text-l", children: label }), jsx(Text, { color: "text-primary-text", size: "text-xl", children: description })] }));
|
|
7749
|
+
const renderItem$1 = ({ label, description }) => (jsxs("div", { className: "flex flex-col", children: [jsx(Text, { color: "text-secondary-text", size: "text-l", children: label }), jsx(Text, { color: "text-primary-text", size: "text-xl", children: description })] }));
|
|
7734
7750
|
|
|
7735
7751
|
const FailedStatusContent$1 = JSX(() => (jsx(FormStatus, { title: "\u0411\u043B\u0430\u0433\u043E\u0434\u0430\u0440\u0438\u043C \u0412\u0430\u0441 \u0437\u0430 \u043E\u0436\u0438\u0434\u0430\u043D\u0438\u0435", description: "\u0412 \u043D\u0430\u0441\u0442\u043E\u044F\u0449\u0438\u0439 \u043C\u043E\u043C\u0435\u043D\u0442 \u0411\u0430\u043D\u043A \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u043E\u0434\u043E\u0431\u0440\u0438\u0442\u044C \u0412\u0430\u0448\u0443 \u0437\u0430\u044F\u0432\u043A\u0443 \u043D\u0430 \u043A\u0440\u0435\u0434\u0438\u0442. \u041F\u043E\u043F\u0440\u043E\u0431\u0443\u0439\u0442\u0435 \u043F\u043E\u0434\u0430\u0442\u044C \u0437\u0430\u044F\u0432\u043A\u0443 \u043F\u043E\u0437\u0436\u0435. \u0421\u043F\u0430\u0441\u0438\u0431\u043E \u0437\u0430 \u043E\u0431\u0440\u0430\u0449\u0435\u043D\u0438\u0435 \u0432 \u0410\u041E \u00AB\u0420\u043E\u0441\u0441\u0435\u043B\u044C\u0445\u043E\u0437\u0431\u0430\u043D\u043A\u00BB.", buttonText: "\u0412\u0435\u0440\u043D\u0443\u0442\u044C\u0441\u044F \u043D\u0430 \u0433\u043B\u0430\u0432\u043D\u0443\u044E" })));
|
|
7736
7752
|
|
|
@@ -9615,18 +9631,19 @@
|
|
|
9615
9631
|
const filterBranches = (branches) => branches.filter((branch) => branch.workSchedule &&
|
|
9616
9632
|
branch.workSchedule.businessScheduleVisibleTag &&
|
|
9617
9633
|
!branch.workSchedule.businessScheduleDescription);
|
|
9618
|
-
return (jsxs("div", { className: "flex gap-lg flex-col sm:flex-row
|
|
9634
|
+
return (jsxs("div", { className: "flex gap-lg flex-col sm:flex-row", children: [jsx(Button, { "data-id": "all", onClick: (e) => handleClick(e, 'all', data), version: allButtonVersion, children: "\u0414\u043B\u044F \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043A\u0438\u0445 \u043B\u0438\u0446" }), jsx(Button, { "data-id": "business", onClick: (e) => handleClick(e, 'business', data), version: businessButtonVersion, children: "\u0414\u043B\u044F \u044E\u0440\u0438\u0434\u0438\u0447\u0435\u0441\u043A\u0438\u0445 \u043B\u0438\u0446" })] }));
|
|
9619
9635
|
};
|
|
9620
9636
|
|
|
9621
|
-
const renderDescriptionBlock = ({ __html, list, richVersion }) => __html || list?.length ? (jsxs("div", { className: "
|
|
9637
|
+
const renderDescriptionBlock = ({ __html, list, richVersion }) => __html || list?.length ? (jsxs("div", { className: "border-b sm:border border-main-divider rounded-md space-y-2xl", children: [__html ? jsx(RichText, { __html: __html, richVersion: richVersion }) : null, list?.length ? (jsx("div", { className: "flex flex-col sm:flex-row gap-2xl sm:flex-wrap pb-2xl sm:pb-xl", children: list.map(renderItem) })) : null] })) : null;
|
|
9638
|
+
const renderItem = (item, i) => (jsxs("div", { className: "flex gap-xs items-center", children: [jsx(Img, { image: item.image }), item?.text ? (jsx(Text, { size: "text-m", font: "font-light", children: item.text })) : null] }, String(i)));
|
|
9622
9639
|
|
|
9623
|
-
const renderHeading = (title, lengthItems) => (jsx("div", { className: "flex flex-
|
|
9640
|
+
const renderHeading = (title, lengthItems) => title ? (jsx("div", { className: "flex flex-row gap-xs", children: jsxs(Heading, { headingType: "h3", children: [jsx("span", { suppressHydrationWarning: true, children: title }), lengthItems ? (jsx(Text, { size: "text-h2", color: "text-secondary-text", children: jsx("span", { suppressHydrationWarning: true, children: ` (${lengthItems})` }) })) : null] }) })) : null;
|
|
9624
9641
|
|
|
9625
9642
|
const defaultEmptyFunction = () => void 0;
|
|
9626
9643
|
const filtersVisibleStyles = (activeButton) => activeButton === 'all' ? 'block' : 'hidden';
|
|
9627
|
-
const OfficesAtmsMapLayout = JSX(({ className, data = [], isLoad, remoteWorkplaces = [], renderCard = defaultEmptyFunction, renderRemoteWorkplaceCard = defaultEmptyFunction, getBalloon = defaultEmptyFunction, getBalloonRemoteWorkplaces = defaultEmptyFunction, descriptionData, title, }) => {
|
|
9644
|
+
const OfficesAtmsMapLayout = JSX(({ className, data = [], isLoad, remoteWorkplaces = [], renderCard = defaultEmptyFunction, renderRemoteWorkplaceCard = defaultEmptyFunction, getBalloon = defaultEmptyFunction, initFilterState = INITIAL_FILTRATION_STATE$1, getBalloonRemoteWorkplaces = defaultEmptyFunction, descriptionData, title, }) => {
|
|
9628
9645
|
const onlyOffice = title?.includes('Офис');
|
|
9629
|
-
const [filtrationState, { field, reset }] = useForm(
|
|
9646
|
+
const [filtrationState, { field, reset }] = useForm(initFilterState);
|
|
9630
9647
|
const { filteredItems, points, filteredRemoteWorkplaces, lengthItems } = useOfficesAtmsMapData({
|
|
9631
9648
|
data,
|
|
9632
9649
|
remoteWorkplaces,
|
|
@@ -9635,9 +9652,9 @@
|
|
|
9635
9652
|
getBalloonRemoteWorkplaces,
|
|
9636
9653
|
});
|
|
9637
9654
|
const [activeButton, setActiveButton] = useState('all');
|
|
9638
|
-
return (jsxs("div", { className: style('space-y-1', className), children: [jsxs("div", { className: "bg-white", children: [jsxs("div", { className: "p-3xl pb-0", children: [renderHeading(title, lengthItems), descriptionData ? renderDescriptionBlock(descriptionData) : null, onlyOffice && renderButtonsGroup(data, activeButton, setActiveButton), jsx("div", { className: style('pb-3xl', filtersVisibleStyles(activeButton)), children: jsx(FiltrationForm, { filters: getFiltersWithNonEmptyData([...data, ...remoteWorkplaces]), field: { field, reset }, onlyOffice: onlyOffice, labels: FILTRATION_LABELS }) })] }), jsx("div", { className: "h-[600px]", children: jsx(ClientOnly, { children: jsx(YandexMap, { points: points, isLoad: isLoad, className: "h-full" }) }) })] }), jsxs(ClientOnly, { children: [filteredItems.map(renderCard), filteredRemoteWorkplaces.map(renderRemoteWorkplaceCard)] })] }));
|
|
9655
|
+
return (jsxs("div", { className: style('space-y-1', className), children: [jsxs("div", { className: "bg-white", children: [jsxs("div", { className: "p-3xl pb-0 grid gap-xl", children: [renderHeading(title, lengthItems), descriptionData ? renderDescriptionBlock(descriptionData) : null, onlyOffice && renderButtonsGroup(data, activeButton, setActiveButton), jsx("div", { className: style('pb-3xl', filtersVisibleStyles(activeButton)), children: jsx(FiltrationForm, { filters: getFiltersWithNonEmptyData([...data, ...remoteWorkplaces]), field: { field, reset }, onlyOffice: onlyOffice, labels: FILTRATION_LABELS }) })] }), jsx("div", { className: "h-[600px]", children: jsx(ClientOnly, { children: jsx(YandexMap, { points: points, isLoad: isLoad, className: "h-full" }) }) })] }), jsxs(ClientOnly, { children: [filteredItems.map(renderCard), filteredRemoteWorkplaces.map(renderRemoteWorkplaceCard)] })] }));
|
|
9639
9656
|
});
|
|
9640
|
-
const getFiltersWithNonEmptyData = (data) => Object.keys(INITIAL_FILTRATION_STATE$1).filter((_) => data.filter((item) => FILTRATION_PREDICATES
|
|
9657
|
+
const getFiltersWithNonEmptyData = (data) => Object.keys(INITIAL_FILTRATION_STATE$1).filter((_) => data.filter((item) => FILTRATION_PREDICATES[_](item)).length);
|
|
9641
9658
|
|
|
9642
9659
|
const capitalize = (text) => text ? `${text.charAt(0).toUpperCase()}${text.slice(1)}` : '';
|
|
9643
9660
|
|
|
@@ -9678,39 +9695,19 @@
|
|
|
9678
9695
|
};
|
|
9679
9696
|
|
|
9680
9697
|
const INITIAL_FILTRATION_STATE = {
|
|
9681
|
-
terminalTypeAtms: true,
|
|
9682
9698
|
terminalTypeTerm: false,
|
|
9699
|
+
terminalTypeAtms: false,
|
|
9683
9700
|
workAllTime: false,
|
|
9684
9701
|
billAcceptorEnable: false,
|
|
9685
9702
|
locationDisabledPeople: false,
|
|
9686
9703
|
designDisabledPeople: false,
|
|
9687
9704
|
};
|
|
9688
|
-
const FILTRATION_PREDICATES = {
|
|
9689
|
-
terminalTypeAtms: (item) => item.terminalType?.toLowerCase() === 'банкомат',
|
|
9690
|
-
terminalTypeTerm: (item) => item.terminalType?.toLowerCase() === 'терминал',
|
|
9691
|
-
workAllTime: (item) => item.workTime?.toLowerCase() === 'круглосуточно',
|
|
9692
|
-
billAcceptorEnable: (item) => Boolean(item.billAcceptorEnable),
|
|
9693
|
-
locationDisabledPeople: (item) => Boolean(item.locationDisabledPeople),
|
|
9694
|
-
designDisabledPeople: (item) => Boolean(item.designDisabledPeople),
|
|
9695
|
-
};
|
|
9696
9705
|
const AtmsMap = JSX(({ descriptionData, className }) => {
|
|
9697
9706
|
const currentLocation = useLocation();
|
|
9698
9707
|
const regionCode = currentLocation?.code ?? '000';
|
|
9699
|
-
const { data
|
|
9700
|
-
return (jsx(OfficesAtmsMapLayout, { className: className,
|
|
9708
|
+
const { data, isLoad } = useAtms(regionCode);
|
|
9709
|
+
return (jsx(OfficesAtmsMapLayout, { className: className, data: data, isLoad: isLoad, initFilterState: INITIAL_FILTRATION_STATE, renderCard: renderAtmCard, getBalloon: getAtmPoint, title: `Банкоматы филиала ${currentLocation?.name}`, descriptionData: descriptionData }));
|
|
9701
9710
|
});
|
|
9702
|
-
const filterItems = (data, filtrationState) => {
|
|
9703
|
-
const truthyFilters = Object.keys(filtrationState).filter((key) => filtrationState[key]);
|
|
9704
|
-
const filtersOR = truthyFilters.filter((_) => _.startsWith('terminalType'));
|
|
9705
|
-
const filtersAND = truthyFilters.filter((_) => !filtersOR.includes(_));
|
|
9706
|
-
return data.filter((item) => {
|
|
9707
|
-
const resultAND = filtersAND.every((_) => FILTRATION_PREDICATES[_](item));
|
|
9708
|
-
const resultOR = filtersOR.length
|
|
9709
|
-
? filtersOR.some((_) => FILTRATION_PREDICATES[_](item))
|
|
9710
|
-
: true;
|
|
9711
|
-
return resultAND && resultOR;
|
|
9712
|
-
});
|
|
9713
|
-
};
|
|
9714
9711
|
|
|
9715
9712
|
const renderRemoteWorkplaceCard = ({ address, workScheduleDescription }, i) => {
|
|
9716
9713
|
if (!workScheduleDescription) {
|
|
@@ -10551,7 +10548,7 @@
|
|
|
10551
10548
|
slots: () => [HEADER_SLOT, FOOTER_SLOT, STICKY_FOOTER_SLOT],
|
|
10552
10549
|
});
|
|
10553
10550
|
|
|
10554
|
-
const packageVersion = "0.14.
|
|
10551
|
+
const packageVersion = "0.14.869";
|
|
10555
10552
|
|
|
10556
10553
|
exports.Blocks = Blocks;
|
|
10557
10554
|
exports.ContentPage = ContentPage;
|