@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
@@ -3434,7 +3434,7 @@
3434
3434
  isEmpty(target[key]) ||
3435
3435
  (naturalNumber(pattern[key]?.min) >= naturalNumber(target[key]?.min) &&
3436
3436
  naturalNumber(pattern[key]?.min) <= naturalNumber(target[key]?.max));
3437
- const shouldRenderBlock = (pattern, target) => Object.entries(pattern)
3437
+ const targetMatchPattern = (pattern, target) => Object.entries(pattern)
3438
3438
  .map(([key, subPattern]) => {
3439
3439
  if (typeof subPattern === 'number') {
3440
3440
  return Array.isArray(target[key])
@@ -3451,7 +3451,7 @@
3451
3451
  .every((predicate) => predicate(target));
3452
3452
  const naturalNumber = (n) => Number(n || 0);
3453
3453
 
3454
- const getBlocksToRender = (blocks, filtrationState) => (normalize = identity) => blocks && blocks.filter((b) => shouldRenderBlock(filtrationState, normalize(b.content || {})));
3454
+ const filterBlocks = (blocks, filtrationState) => (normalize = identity) => blocks && blocks.filter((b) => targetMatchPattern(filtrationState, normalize(b.content || {})));
3455
3455
 
3456
3456
  const SlideCheckboxGroup = JSX(({ value, onChange, items = [], multiple }) => {
3457
3457
  const handleChange = (newValue) => {
@@ -3485,22 +3485,23 @@
3485
3485
  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));
3486
3486
  };
3487
3487
 
3488
- const getPeriod = (source, content) => {
3489
- const sourceItem = source[content?.sourceBook];
3490
- return sourceItem
3491
- ? sourceItem?.rateRows
3492
- .map((el) => el.minMonths)
3493
- .filter((minMonths) => minMonths !== undefined)
3494
- : [];
3488
+ const unique = (list) => [...new Set(list)];
3489
+
3490
+ const isRateRow = (rateRow) => {
3491
+ return typeof rateRow?.minMonths === 'number' && typeof rateRow?.maxMonths === 'number';
3495
3492
  };
3496
3493
 
3494
+ const numberRange = (start, end) => Array.from({ length: end - start + 1 }, (_, i) => start + i);
3495
+
3496
+ const getPeriod = (source, content) => unique((source[content?.sourceBook]?.rateRows || [])
3497
+ .filter(isRateRow)
3498
+ .flatMap((_) => numberRange(_.minMonths, _.maxMonths)));
3499
+
3497
3500
  const fetchMultitudeJSON = (...urls) => {
3498
3501
  const fetchPromises = urls.map((url) => fetchJSON(url));
3499
3502
  return Promise.all(fetchPromises);
3500
3503
  };
3501
3504
 
3502
- const unique = (list) => [...new Set(list)];
3503
-
3504
3505
  function zip(firstCol, ...restCols) {
3505
3506
  return firstCol.map((firstEl, rowIndex) => [firstEl, ...restCols.map((col) => col[rowIndex])]);
3506
3507
  }
@@ -3518,8 +3519,8 @@
3518
3519
  source: Object.fromEntries(zip(source, data).filter(([, sourceData]) => Boolean(sourceData))),
3519
3520
  months: unique(data
3520
3521
  .flatMap((item) => item?.rateRows || [])
3521
- .filter((row) => typeof row.minMonths === 'number' && row.minMonths === row.maxMonths)
3522
- .map((row) => row.minMonths)).sort((a, b) => a - b) || [],
3522
+ .filter(isRateRow)
3523
+ .flatMap((_) => numberRange(_.minMonths, _.maxMonths))).sort((a, b) => a - b) || [],
3523
3524
  };
3524
3525
  }
3525
3526
 
@@ -3535,7 +3536,9 @@
3535
3536
  const DepositFiltration = JSX(({ className, filtrationSchema = {}, resetButton, sumInput, periodInput, ...rest }) => {
3536
3537
  const { source, months } = useDepositsPeriods(rest.block?.blocks);
3537
3538
  const [filtrationState, { field, reset }] = useForm(initialFiltrationState$1);
3538
- const blocksToRender = getBlocksToRender(rest.block?.blocks, filtrationState)((content) => ({ ...content, period: getPeriod(source, content || {}) || [] }));
3539
+ const blocksToRender = filtrationState === initialFiltrationState$1
3540
+ ? rest.block?.blocks
3541
+ : filterBlocks(rest.block?.blocks, filtrationState)((content) => ({ ...content, period: getPeriod(source, content || {}) || [] }));
3539
3542
  const Inputs = (jsxs("div", { children: [jsx(CurrencyInput, { label: sumInput?.title, min: DEFAULT_MIN_SUM, max: DEFAULT_MAX_SUM, ...field('sum', {
3540
3543
  parse: (min) => ({ min: Number(min), max: DEFAULT_MAX_SUM }),
3541
3544
  format: ({ min }) => String(min),
@@ -4015,7 +4018,7 @@
4015
4018
  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 }) }));
4016
4019
  });
4017
4020
 
4018
- const getBadgeCount = (blocks = [], filter = {}) => blocks.filter(({ content = {} }) => shouldRenderBlock(filter, content)).length;
4021
+ const getBadgeCount = (blocks = [], filter = {}) => blocks.filter(({ content = {} }) => targetMatchPattern(filter, content)).length;
4019
4022
 
4020
4023
  const scalarCmp = (a, b) => a === b;
4021
4024
  const arrCmp = (cmp = scalarCmp) => (a, b) => a === b || Boolean(a && b && a.length === b.length && a.every((_, i) => cmp(_, b[i])));
@@ -4104,7 +4107,9 @@
4104
4107
  };
4105
4108
  const MortgageFiltration = JSX(({ className, hotFilters, filtrationSchema = {}, resetButton, ...rest }) => {
4106
4109
  const [filtrationState, { field, reset, update: replaceFiltrationState }] = useForm(initialFiltrationState);
4107
- const blocksToRender = getBlocksToRender(rest.block?.blocks, filtrationState)();
4110
+ const blocksToRender = filtrationState === initialFiltrationState
4111
+ ? rest.block?.blocks
4112
+ : filterBlocks(rest.block?.blocks, filtrationState)();
4108
4113
  const handleFiltrationStateChange = useCallback((_ = initialFiltrationState) => replaceFiltrationState(_), []);
4109
4114
  const tabsControlProps = useHotFilters({
4110
4115
  hotFilters,
@@ -5728,7 +5733,7 @@
5728
5733
 
5729
5734
  const joinList = (sep) => (list) => list.reduce((acc, el, i) => (acc.length ? acc.concat({ ...sep, key: `sep-${i}` }, el) : [el]), []);
5730
5735
 
5731
- const packageVersion = "0.14.157";
5736
+ const packageVersion = "0.14.159";
5732
5737
 
5733
5738
  exports.Blocks = Blocks;
5734
5739
  exports.ContentPage = ContentPage;