@redneckz/wildless-cms-uni-blocks 0.14.158 → 0.14.160

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.
Files changed (172) hide show
  1. package/bundle/bundle.umd.js +22 -17
  2. package/bundle/bundle.umd.min.js +1 -1
  3. package/bundle/components/DepositFiltration/SourceItem.d.ts +4 -0
  4. package/bundle/components/DepositFiltration/getPeriod.d.ts +1 -6
  5. package/bundle/components/DepositFiltration/isRateRow.d.ts +5 -0
  6. package/bundle/components/DepositFiltration/numberRange.d.ts +1 -0
  7. package/bundle/components/DepositFiltration/useDepositsPeriods.d.ts +1 -1
  8. package/bundle/ui-kit/BaseFiltration/filterBlocks.d.ts +2 -0
  9. package/bundle/ui-kit/BaseFiltration/targetMatchPattern.d.ts +1 -0
  10. package/dist/components/DepositFiltration/DepositFiltration.js +4 -2
  11. package/dist/components/DepositFiltration/DepositFiltration.js.map +1 -1
  12. package/dist/components/DepositFiltration/SourceItem.d.ts +4 -0
  13. package/dist/components/DepositFiltration/SourceItem.js +2 -0
  14. package/dist/components/DepositFiltration/SourceItem.js.map +1 -0
  15. package/dist/components/DepositFiltration/getPeriod.d.ts +1 -6
  16. package/dist/components/DepositFiltration/getPeriod.js +6 -8
  17. package/dist/components/DepositFiltration/getPeriod.js.map +1 -1
  18. package/dist/components/DepositFiltration/isRateRow.d.ts +5 -0
  19. package/dist/components/DepositFiltration/isRateRow.js +7 -0
  20. package/dist/components/DepositFiltration/isRateRow.js.map +1 -0
  21. package/dist/components/DepositFiltration/numberRange.d.ts +1 -0
  22. package/dist/components/DepositFiltration/numberRange.js +5 -0
  23. package/dist/components/DepositFiltration/numberRange.js.map +1 -0
  24. package/dist/components/DepositFiltration/useDepositsPeriods.d.ts +1 -1
  25. package/dist/components/DepositFiltration/useDepositsPeriods.js +4 -2
  26. package/dist/components/DepositFiltration/useDepositsPeriods.js.map +1 -1
  27. package/dist/components/MortgageFiltration/MortgageFiltration.js +4 -2
  28. package/dist/components/MortgageFiltration/MortgageFiltration.js.map +1 -1
  29. package/dist/ui-kit/BaseFiltration/filterBlocks.d.ts +2 -0
  30. package/dist/ui-kit/BaseFiltration/filterBlocks.js +7 -0
  31. package/dist/ui-kit/BaseFiltration/filterBlocks.js.map +1 -0
  32. package/dist/ui-kit/BaseFiltration/getBadgeCount.js +2 -2
  33. package/dist/ui-kit/BaseFiltration/getBadgeCount.js.map +1 -1
  34. package/dist/ui-kit/BaseFiltration/targetMatchPattern.d.ts +1 -0
  35. package/dist/ui-kit/BaseFiltration/{shouldRenderBlock.js → targetMatchPattern.js} +4 -4
  36. package/dist/ui-kit/BaseFiltration/targetMatchPattern.js.map +1 -0
  37. package/lib/components/DepositFiltration/DepositFiltration.js +4 -2
  38. package/lib/components/DepositFiltration/DepositFiltration.js.map +1 -1
  39. package/lib/components/DepositFiltration/SourceItem.d.ts +4 -0
  40. package/lib/components/DepositFiltration/SourceItem.js +2 -0
  41. package/lib/components/DepositFiltration/SourceItem.js.map +1 -0
  42. package/lib/components/DepositFiltration/getPeriod.d.ts +1 -6
  43. package/lib/components/DepositFiltration/getPeriod.js +6 -8
  44. package/lib/components/DepositFiltration/getPeriod.js.map +1 -1
  45. package/lib/components/DepositFiltration/isRateRow.d.ts +5 -0
  46. package/lib/components/DepositFiltration/isRateRow.js +4 -0
  47. package/lib/components/DepositFiltration/isRateRow.js.map +1 -0
  48. package/lib/components/DepositFiltration/numberRange.d.ts +1 -0
  49. package/lib/components/DepositFiltration/numberRange.js +2 -0
  50. package/lib/components/DepositFiltration/numberRange.js.map +1 -0
  51. package/lib/components/DepositFiltration/useDepositsPeriods.d.ts +1 -1
  52. package/lib/components/DepositFiltration/useDepositsPeriods.js +4 -2
  53. package/lib/components/DepositFiltration/useDepositsPeriods.js.map +1 -1
  54. package/lib/components/MortgageFiltration/MortgageFiltration.js +4 -2
  55. package/lib/components/MortgageFiltration/MortgageFiltration.js.map +1 -1
  56. package/lib/ui-kit/BaseFiltration/filterBlocks.d.ts +2 -0
  57. package/lib/ui-kit/BaseFiltration/filterBlocks.js +4 -0
  58. package/lib/ui-kit/BaseFiltration/filterBlocks.js.map +1 -0
  59. package/lib/ui-kit/BaseFiltration/getBadgeCount.js +2 -2
  60. package/lib/ui-kit/BaseFiltration/getBadgeCount.js.map +1 -1
  61. package/lib/ui-kit/BaseFiltration/targetMatchPattern.d.ts +1 -0
  62. package/lib/ui-kit/BaseFiltration/{shouldRenderBlock.js → targetMatchPattern.js} +2 -2
  63. package/lib/ui-kit/BaseFiltration/targetMatchPattern.js.map +1 -0
  64. package/mobile/bundle/bundle.umd.js +22 -17
  65. package/mobile/bundle/bundle.umd.min.js +1 -1
  66. package/mobile/bundle/components/DepositFiltration/SourceItem.d.ts +4 -0
  67. package/mobile/bundle/components/DepositFiltration/getPeriod.d.ts +1 -6
  68. package/mobile/bundle/components/DepositFiltration/isRateRow.d.ts +5 -0
  69. package/mobile/bundle/components/DepositFiltration/numberRange.d.ts +1 -0
  70. package/mobile/bundle/components/DepositFiltration/useDepositsPeriods.d.ts +1 -1
  71. package/mobile/bundle/ui-kit/BaseFiltration/filterBlocks.d.ts +2 -0
  72. package/mobile/bundle/ui-kit/BaseFiltration/targetMatchPattern.d.ts +1 -0
  73. package/mobile/dist/components/DepositFiltration/DepositFiltration.js +4 -2
  74. package/mobile/dist/components/DepositFiltration/DepositFiltration.js.map +1 -1
  75. package/mobile/dist/components/DepositFiltration/SourceItem.d.ts +4 -0
  76. package/mobile/dist/components/DepositFiltration/SourceItem.js +2 -0
  77. package/mobile/dist/components/DepositFiltration/SourceItem.js.map +1 -0
  78. package/mobile/dist/components/DepositFiltration/getPeriod.d.ts +1 -6
  79. package/mobile/dist/components/DepositFiltration/getPeriod.js +6 -8
  80. package/mobile/dist/components/DepositFiltration/getPeriod.js.map +1 -1
  81. package/mobile/dist/components/DepositFiltration/isRateRow.d.ts +5 -0
  82. package/mobile/dist/components/DepositFiltration/isRateRow.js +7 -0
  83. package/mobile/dist/components/DepositFiltration/isRateRow.js.map +1 -0
  84. package/mobile/dist/components/DepositFiltration/numberRange.d.ts +1 -0
  85. package/mobile/dist/components/DepositFiltration/numberRange.js +5 -0
  86. package/mobile/dist/components/DepositFiltration/numberRange.js.map +1 -0
  87. package/mobile/dist/components/DepositFiltration/useDepositsPeriods.d.ts +1 -1
  88. package/mobile/dist/components/DepositFiltration/useDepositsPeriods.js +4 -2
  89. package/mobile/dist/components/DepositFiltration/useDepositsPeriods.js.map +1 -1
  90. package/mobile/dist/components/MortgageFiltration/MortgageFiltration.js +4 -2
  91. package/mobile/dist/components/MortgageFiltration/MortgageFiltration.js.map +1 -1
  92. package/mobile/dist/ui-kit/BaseFiltration/filterBlocks.d.ts +2 -0
  93. package/mobile/dist/ui-kit/BaseFiltration/filterBlocks.js +7 -0
  94. package/mobile/dist/ui-kit/BaseFiltration/filterBlocks.js.map +1 -0
  95. package/mobile/dist/ui-kit/BaseFiltration/getBadgeCount.js +2 -2
  96. package/mobile/dist/ui-kit/BaseFiltration/getBadgeCount.js.map +1 -1
  97. package/mobile/dist/ui-kit/BaseFiltration/targetMatchPattern.d.ts +1 -0
  98. package/mobile/dist/ui-kit/BaseFiltration/{shouldRenderBlock.js → targetMatchPattern.js} +4 -4
  99. package/mobile/dist/ui-kit/BaseFiltration/targetMatchPattern.js.map +1 -0
  100. package/mobile/lib/components/DepositFiltration/DepositFiltration.js +4 -2
  101. package/mobile/lib/components/DepositFiltration/DepositFiltration.js.map +1 -1
  102. package/mobile/lib/components/DepositFiltration/SourceItem.d.ts +4 -0
  103. package/mobile/lib/components/DepositFiltration/SourceItem.js +2 -0
  104. package/mobile/lib/components/DepositFiltration/SourceItem.js.map +1 -0
  105. package/mobile/lib/components/DepositFiltration/getPeriod.d.ts +1 -6
  106. package/mobile/lib/components/DepositFiltration/getPeriod.js +6 -8
  107. package/mobile/lib/components/DepositFiltration/getPeriod.js.map +1 -1
  108. package/mobile/lib/components/DepositFiltration/isRateRow.d.ts +5 -0
  109. package/mobile/lib/components/DepositFiltration/isRateRow.js +4 -0
  110. package/mobile/lib/components/DepositFiltration/isRateRow.js.map +1 -0
  111. package/mobile/lib/components/DepositFiltration/numberRange.d.ts +1 -0
  112. package/mobile/lib/components/DepositFiltration/numberRange.js +2 -0
  113. package/mobile/lib/components/DepositFiltration/numberRange.js.map +1 -0
  114. package/mobile/lib/components/DepositFiltration/useDepositsPeriods.d.ts +1 -1
  115. package/mobile/lib/components/DepositFiltration/useDepositsPeriods.js +4 -2
  116. package/mobile/lib/components/DepositFiltration/useDepositsPeriods.js.map +1 -1
  117. package/mobile/lib/components/MortgageFiltration/MortgageFiltration.js +4 -2
  118. package/mobile/lib/components/MortgageFiltration/MortgageFiltration.js.map +1 -1
  119. package/mobile/lib/ui-kit/BaseFiltration/filterBlocks.d.ts +2 -0
  120. package/mobile/lib/ui-kit/BaseFiltration/filterBlocks.js +4 -0
  121. package/mobile/lib/ui-kit/BaseFiltration/filterBlocks.js.map +1 -0
  122. package/mobile/lib/ui-kit/BaseFiltration/getBadgeCount.js +2 -2
  123. package/mobile/lib/ui-kit/BaseFiltration/getBadgeCount.js.map +1 -1
  124. package/mobile/lib/ui-kit/BaseFiltration/targetMatchPattern.d.ts +1 -0
  125. package/mobile/lib/ui-kit/BaseFiltration/{shouldRenderBlock.js → targetMatchPattern.js} +2 -2
  126. package/mobile/lib/ui-kit/BaseFiltration/targetMatchPattern.js.map +1 -0
  127. package/mobile/src/components/DepositFiltration/DepositFiltration.tsx +8 -5
  128. package/mobile/src/components/DepositFiltration/SourceItem.ts +5 -0
  129. package/mobile/src/components/DepositFiltration/getPeriod.ts +10 -12
  130. package/mobile/src/components/DepositFiltration/isRateRow.ts +8 -0
  131. package/mobile/src/components/DepositFiltration/numberRange.ts +2 -0
  132. package/mobile/src/components/DepositFiltration/useDepositsPeriods.ts +5 -3
  133. package/mobile/src/components/MortgageFiltration/MortgageFiltration.tsx +5 -2
  134. package/mobile/src/ui-kit/BaseFiltration/{getBlocksToRender.ts → filterBlocks.ts} +3 -3
  135. package/mobile/src/ui-kit/BaseFiltration/getBadgeCount.ts +2 -2
  136. package/mobile/src/ui-kit/BaseFiltration/{shouldRenderBlock.ts → targetMatchPattern.ts} +1 -1
  137. package/package.json +1 -1
  138. package/src/components/DepositFiltration/DepositFiltration.fixture.tsx +2 -2
  139. package/src/components/DepositFiltration/DepositFiltration.tsx +8 -5
  140. package/src/components/DepositFiltration/SourceItem.ts +5 -0
  141. package/src/components/DepositFiltration/getPeriod.ts +10 -12
  142. package/src/components/DepositFiltration/isRateRow.ts +8 -0
  143. package/src/components/DepositFiltration/numberRange.ts +2 -0
  144. package/src/components/DepositFiltration/useDepositsPeriods.ts +5 -3
  145. package/src/components/MortgageFiltration/MortgageFiltration.tsx +5 -2
  146. package/src/ui-kit/BaseFiltration/{getBlocksToRender.ts → filterBlocks.ts} +3 -3
  147. package/src/ui-kit/BaseFiltration/getBadgeCount.ts +2 -2
  148. package/src/ui-kit/BaseFiltration/{shouldRenderBlock.ts → targetMatchPattern.ts} +1 -1
  149. package/bundle/ui-kit/BaseFiltration/getBlocksToRender.d.ts +0 -2
  150. package/bundle/ui-kit/BaseFiltration/shouldRenderBlock.d.ts +0 -1
  151. package/dist/ui-kit/BaseFiltration/getBlocksToRender.d.ts +0 -2
  152. package/dist/ui-kit/BaseFiltration/getBlocksToRender.js +0 -7
  153. package/dist/ui-kit/BaseFiltration/getBlocksToRender.js.map +0 -1
  154. package/dist/ui-kit/BaseFiltration/shouldRenderBlock.d.ts +0 -1
  155. package/dist/ui-kit/BaseFiltration/shouldRenderBlock.js.map +0 -1
  156. package/lib/ui-kit/BaseFiltration/getBlocksToRender.d.ts +0 -2
  157. package/lib/ui-kit/BaseFiltration/getBlocksToRender.js +0 -4
  158. package/lib/ui-kit/BaseFiltration/getBlocksToRender.js.map +0 -1
  159. package/lib/ui-kit/BaseFiltration/shouldRenderBlock.d.ts +0 -1
  160. package/lib/ui-kit/BaseFiltration/shouldRenderBlock.js.map +0 -1
  161. package/mobile/bundle/ui-kit/BaseFiltration/getBlocksToRender.d.ts +0 -2
  162. package/mobile/bundle/ui-kit/BaseFiltration/shouldRenderBlock.d.ts +0 -1
  163. package/mobile/dist/ui-kit/BaseFiltration/getBlocksToRender.d.ts +0 -2
  164. package/mobile/dist/ui-kit/BaseFiltration/getBlocksToRender.js +0 -7
  165. package/mobile/dist/ui-kit/BaseFiltration/getBlocksToRender.js.map +0 -1
  166. package/mobile/dist/ui-kit/BaseFiltration/shouldRenderBlock.d.ts +0 -1
  167. package/mobile/dist/ui-kit/BaseFiltration/shouldRenderBlock.js.map +0 -1
  168. package/mobile/lib/ui-kit/BaseFiltration/getBlocksToRender.d.ts +0 -2
  169. package/mobile/lib/ui-kit/BaseFiltration/getBlocksToRender.js +0 -4
  170. package/mobile/lib/ui-kit/BaseFiltration/getBlocksToRender.js.map +0 -1
  171. package/mobile/lib/ui-kit/BaseFiltration/shouldRenderBlock.d.ts +0 -1
  172. package/mobile/lib/ui-kit/BaseFiltration/shouldRenderBlock.js.map +0 -1
@@ -3509,7 +3509,7 @@
3509
3509
  isEmpty(target[key]) ||
3510
3510
  (naturalNumber(pattern[key]?.min) >= naturalNumber(target[key]?.min) &&
3511
3511
  naturalNumber(pattern[key]?.min) <= naturalNumber(target[key]?.max));
3512
- const shouldRenderBlock = (pattern, target) => Object.entries(pattern)
3512
+ const targetMatchPattern = (pattern, target) => Object.entries(pattern)
3513
3513
  .map(([key, subPattern]) => {
3514
3514
  if (typeof subPattern === 'number') {
3515
3515
  return Array.isArray(target[key])
@@ -3526,7 +3526,7 @@
3526
3526
  .every((predicate) => predicate(target));
3527
3527
  const naturalNumber = (n) => Number(n || 0);
3528
3528
 
3529
- const getBlocksToRender = (blocks, filtrationState) => (normalize = identity) => blocks && blocks.filter((b) => shouldRenderBlock(filtrationState, normalize(b.content || {})));
3529
+ const filterBlocks = (blocks, filtrationState) => (normalize = identity) => blocks && blocks.filter((b) => targetMatchPattern(filtrationState, normalize(b.content || {})));
3530
3530
 
3531
3531
  const SlideCheckboxGroup = JSX(({ value, onChange, items = [], multiple }) => {
3532
3532
  const handleChange = (newValue) => {
@@ -3560,22 +3560,23 @@
3560
3560
  return (jsxs("div", { children: [item?.title ? (jsx("div", { className: "mb-m", children: jsx(Text, { size: "text-m", font: "font-light", color: "text-secondary-text", children: item.title }) })) : null, jsx(SlideCheckboxGroup, { items: options, multiple: !item?.single, ...field(key) })] }, key));
3561
3561
  };
3562
3562
 
3563
- const getPeriod = (source, content) => {
3564
- const sourceItem = source[content?.sourceBook];
3565
- return sourceItem
3566
- ? sourceItem?.rateRows
3567
- .map((el) => el.minMonths)
3568
- .filter((minMonths) => minMonths !== undefined)
3569
- : [];
3563
+ const unique = (list) => [...new Set(list)];
3564
+
3565
+ const isRateRow = (rateRow) => {
3566
+ return typeof rateRow?.minMonths === 'number' && typeof rateRow?.maxMonths === 'number';
3570
3567
  };
3571
3568
 
3569
+ const numberRange = (start, end) => Array.from({ length: end - start + 1 }, (_, i) => start + i);
3570
+
3571
+ const getPeriod = (source, content) => unique((source[content?.sourceBook]?.rateRows || [])
3572
+ .filter(isRateRow)
3573
+ .flatMap((_) => numberRange(_.minMonths, _.maxMonths)));
3574
+
3572
3575
  const fetchMultitudeJSON = (...urls) => {
3573
3576
  const fetchPromises = urls.map((url) => fetchJSON(url));
3574
3577
  return Promise.all(fetchPromises);
3575
3578
  };
3576
3579
 
3577
- const unique = (list) => [...new Set(list)];
3578
-
3579
3580
  function zip(firstCol, ...restCols) {
3580
3581
  return firstCol.map((firstEl, rowIndex) => [firstEl, ...restCols.map((col) => col[rowIndex])]);
3581
3582
  }
@@ -3593,8 +3594,8 @@
3593
3594
  source: Object.fromEntries(zip(source, data).filter(([, sourceData]) => Boolean(sourceData))),
3594
3595
  months: unique(data
3595
3596
  .flatMap((item) => item?.rateRows || [])
3596
- .filter((row) => typeof row.minMonths === 'number' && row.minMonths === row.maxMonths)
3597
- .map((row) => row.minMonths)).sort((a, b) => a - b) || [],
3597
+ .filter(isRateRow)
3598
+ .flatMap((_) => numberRange(_.minMonths, _.maxMonths))).sort((a, b) => a - b) || [],
3598
3599
  };
3599
3600
  }
3600
3601
 
@@ -3610,7 +3611,9 @@
3610
3611
  const DepositFiltration = JSX(({ className, filtrationSchema = {}, resetButton, sumInput, periodInput, ...rest }) => {
3611
3612
  const { source, months } = useDepositsPeriods(rest.block?.blocks);
3612
3613
  const [filtrationState, { field, reset }] = useForm(initialFiltrationState$2);
3613
- const blocksToRender = getBlocksToRender(rest.block?.blocks, filtrationState)((content) => ({ ...content, period: getPeriod(source, content || {}) || [] }));
3614
+ const blocksToRender = filtrationState === initialFiltrationState$2
3615
+ ? rest.block?.blocks
3616
+ : filterBlocks(rest.block?.blocks, filtrationState)((content) => ({ ...content, period: getPeriod(source, content || {}) || [] }));
3614
3617
  const Inputs = (jsxs("div", { children: [jsx(CurrencyInput, { label: sumInput?.title, min: DEFAULT_MIN_SUM, max: DEFAULT_MAX_SUM, ...field('sum', {
3615
3618
  parse: (min) => ({ min: Number(min), max: DEFAULT_MAX_SUM }),
3616
3619
  format: ({ min }) => String(min),
@@ -4703,7 +4706,7 @@
4703
4706
  return (jsx("div", { className: style('w-6 h-6 rounded-full flex items-center justify-center', badgeBgStyleMap[version]), children: jsx(Text, { size: "text-xs", color: badgeTextColorStyleMap[version], children: count }) }));
4704
4707
  });
4705
4708
 
4706
- const getBadgeCount = (blocks = [], filter = {}) => blocks.filter(({ content = {} }) => shouldRenderBlock(filter, content)).length;
4709
+ const getBadgeCount = (blocks = [], filter = {}) => blocks.filter(({ content = {} }) => targetMatchPattern(filter, content)).length;
4707
4710
 
4708
4711
  const scalarCmp = (a, b) => a === b;
4709
4712
  const arrCmp = (cmp = scalarCmp) => (a, b) => a === b || Boolean(a && b && a.length === b.length && a.every((_, i) => cmp(_, b[i])));
@@ -4792,7 +4795,9 @@
4792
4795
  };
4793
4796
  const MortgageFiltration = JSX(({ className, hotFilters, filtrationSchema = {}, resetButton, ...rest }) => {
4794
4797
  const [filtrationState, { field, reset, update: replaceFiltrationState }] = useForm(initialFiltrationState);
4795
- const blocksToRender = getBlocksToRender(rest.block?.blocks, filtrationState)();
4798
+ const blocksToRender = filtrationState === initialFiltrationState
4799
+ ? rest.block?.blocks
4800
+ : filterBlocks(rest.block?.blocks, filtrationState)();
4796
4801
  const handleFiltrationStateChange = useCallback((_ = initialFiltrationState) => replaceFiltrationState(_), []);
4797
4802
  const tabsControlProps = useHotFilters({
4798
4803
  hotFilters,
@@ -6106,7 +6111,7 @@
6106
6111
  return (jsx("div", { className: "flex items-end absolute bottom-0 right-0 h-full pointer-events-none", children: jsx(LikeControl, { className: "rounded-tl-3xl sticky bottom-0 pointer-events-auto" }) }));
6107
6112
  }
6108
6113
 
6109
- const packageVersion = "0.14.157";
6114
+ const packageVersion = "0.14.159";
6110
6115
 
6111
6116
  exports.Blocks = Blocks;
6112
6117
  exports.ContentPage = ContentPage;