@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
@@ -0,0 +1,5 @@
1
+ import { type RateRow } from './isRateRow';
2
+
3
+ export interface SourceItem {
4
+ rateRows?: Partial<RateRow>[];
5
+ }
@@ -1,15 +1,13 @@
1
- export interface SourceItem {
2
- rateRows: Array<{ minMonths?: number; maxMonths?: number }>;
3
- }
1
+ import { unique } from '../../utils/unique';
2
+ import { isRateRow } from './isRateRow';
3
+ import { numberRange } from './numberRange';
4
+ import { type SourceItem } from './SourceItem';
4
5
 
5
6
  type Source = Record<string, SourceItem | null>;
6
7
 
7
- export const getPeriod = (source: Source, content: Record<string, any>): number[] => {
8
- const sourceItem = source[content?.sourceBook];
9
-
10
- return sourceItem
11
- ? sourceItem?.rateRows
12
- .map((el) => el.minMonths)
13
- .filter((minMonths): minMonths is number => minMonths !== undefined)
14
- : [];
15
- };
8
+ export const getPeriod = (source: Source, content: Record<string, any>): number[] =>
9
+ unique(
10
+ (source[content?.sourceBook]?.rateRows || [])
11
+ .filter(isRateRow)
12
+ .flatMap((_) => numberRange(_.minMonths, _.maxMonths)),
13
+ );
@@ -0,0 +1,8 @@
1
+ export interface RateRow {
2
+ minMonths: number;
3
+ maxMonths: number;
4
+ }
5
+
6
+ export const isRateRow = (rateRow: Partial<RateRow> | undefined): rateRow is RateRow => {
7
+ return typeof rateRow?.minMonths === 'number' && typeof rateRow?.maxMonths === 'number';
8
+ };
@@ -0,0 +1,2 @@
1
+ export const numberRange = (start: number, end: number): number[] =>
2
+ Array.from({ length: end - start + 1 }, (_, i) => start + i);
@@ -5,7 +5,9 @@ import { fetchMultitudeJSON, type FetchMultitudeJSONType } from '../../utils/fet
5
5
  import { unique } from '../../utils/unique';
6
6
  import { zip } from '../../utils/zip';
7
7
  import { getChildSourceBook } from './getChildSourceBook';
8
- import { type SourceItem } from './getPeriod';
8
+ import { isRateRow } from './isRateRow';
9
+ import { numberRange } from './numberRange';
10
+ import { type SourceItem } from './SourceItem';
9
11
 
10
12
  export function useDepositsPeriods(blocks: BlockDef[] | undefined) {
11
13
  const { dirs = [], source = [] } = useMemo(() => {
@@ -25,8 +27,8 @@ export function useDepositsPeriods(blocks: BlockDef[] | undefined) {
25
27
  unique(
26
28
  data
27
29
  .flatMap((item) => item?.rateRows || [])
28
- .filter((row) => typeof row.minMonths === 'number' && row.minMonths === row.maxMonths)
29
- .map((row) => row.minMonths as number),
30
+ .filter(isRateRow)
31
+ .flatMap((_) => numberRange(_.minMonths, _.maxMonths)),
30
32
  ).sort((a, b) => a - b) || [],
31
33
  };
32
34
  }
@@ -3,7 +3,7 @@ import { useCallback } from '@redneckz/uni-jsx/lib/hooks';
3
3
  import { useForm } from '../../hooks/useForm';
4
4
  import { type JSXBlock, type UniBlockProps } from '../../model/JSXBlock';
5
5
  import { BaseFiltrationInner } from '../../ui-kit/BaseFiltration/BaseFiltrationInner';
6
- import { getBlocksToRender } from '../../ui-kit/BaseFiltration/getBlocksToRender';
6
+ import { filterBlocks } from '../../ui-kit/BaseFiltration/filterBlocks';
7
7
  import { renderFiltrationForm } from '../../ui-kit/BaseFiltration/renderFiltrationForm';
8
8
  import { useHotFilters } from '../../ui-kit/BaseFiltration/useHotFilters';
9
9
  import { BlockWrapper } from '../../ui-kit/BlockWrapper';
@@ -30,7 +30,10 @@ export const MortgageFiltration: JSXBlock<MortgageFiltrationProps> = JSX<Mortgag
30
30
  const [filtrationState, { field, reset, update: replaceFiltrationState }] =
31
31
  useForm(initialFiltrationState);
32
32
 
33
- const blocksToRender = getBlocksToRender(rest.block?.blocks, filtrationState)();
33
+ const blocksToRender =
34
+ filtrationState === initialFiltrationState
35
+ ? rest.block?.blocks
36
+ : filterBlocks(rest.block?.blocks, filtrationState)();
34
37
 
35
38
  const handleFiltrationStateChange = useCallback(
36
39
  (_: MortgageFiltrationState = initialFiltrationState) => replaceFiltrationState(_),
@@ -1,8 +1,8 @@
1
1
  import { type BlockDef } from '../../model/ContentPageDef';
2
2
  import { identity } from '../../utils/identity';
3
- import { shouldRenderBlock } from './shouldRenderBlock';
3
+ import { targetMatchPattern } from './targetMatchPattern';
4
4
 
5
- export const getBlocksToRender =
5
+ export const filterBlocks =
6
6
  (blocks: BlockDef[] | undefined, filtrationState: Record<string, any>) =>
7
7
  (normalize = identity) =>
8
- blocks && blocks.filter((b) => shouldRenderBlock(filtrationState, normalize(b.content || {})));
8
+ blocks && blocks.filter((b) => targetMatchPattern(filtrationState, normalize(b.content || {})));
@@ -1,6 +1,6 @@
1
1
  import { type BlockDef } from '../../model/ContentPageDef';
2
- import { shouldRenderBlock } from './shouldRenderBlock';
2
+ import { targetMatchPattern } from './targetMatchPattern';
3
3
  import { type BaseFilter } from './useHotFilters';
4
4
 
5
5
  export const getBadgeCount = (blocks: BlockDef[] = [], filter: BaseFilter = {}) =>
6
- blocks.filter(({ content = {} }) => shouldRenderBlock(filter, content)).length;
6
+ blocks.filter(({ content = {} }) => targetMatchPattern(filter, content)).length;
@@ -32,7 +32,7 @@ const isValueInRange =
32
32
  (naturalNumber(pattern[key]?.min) >= naturalNumber(target[key]?.min) &&
33
33
  naturalNumber(pattern[key]?.min) <= naturalNumber(target[key]?.max));
34
34
 
35
- export const shouldRenderBlock = (pattern: Record<string, any>, target: Record<string, any>) =>
35
+ export const targetMatchPattern = (pattern: Record<string, any>, target: Record<string, any>) =>
36
36
  Object.entries(pattern)
37
37
  .map(([key, subPattern]) => {
38
38
  if (typeof subPattern === 'number') {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redneckz/wildless-cms-uni-blocks",
3
- "version": "0.14.158",
3
+ "version": "0.14.160",
4
4
  "private": false,
5
5
  "license": "MIT",
6
6
  "author": "ЦК",
@@ -117,7 +117,7 @@ export default {
117
117
  OPTIONS_PENSIONER_WITHDRAWAL,
118
118
  PERCENTS_IN_THE_END,
119
119
  {
120
- sum: { min: 500, max: 500000 },
120
+ sum: { min: 100, max: 500 },
121
121
  },
122
122
  {
123
123
  sourceBook: 'product-block-data',
@@ -144,7 +144,7 @@ export default {
144
144
  sum: { min: 1000, max: 100000 },
145
145
  },
146
146
  {
147
- sourceBook: 'product-block-data',
147
+ sourceBook: 'product-block-3-data',
148
148
  },
149
149
  ),
150
150
  ],
@@ -3,7 +3,7 @@ import { type JSONSchema7Definition } from 'json-schema';
3
3
  import { useForm } from '../../hooks/useForm';
4
4
  import { type JSXBlock, type UniBlockProps } from '../../model/JSXBlock';
5
5
  import { BaseFiltrationInner } from '../../ui-kit/BaseFiltration/BaseFiltrationInner';
6
- import { getBlocksToRender } from '../../ui-kit/BaseFiltration/getBlocksToRender';
6
+ import { filterBlocks } from '../../ui-kit/BaseFiltration/filterBlocks';
7
7
  import { renderFiltrationForm } from '../../ui-kit/BaseFiltration/renderFiltrationForm';
8
8
  import { BlockWrapper } from '../../ui-kit/BlockWrapper';
9
9
  import { CurrencyInput } from '../../ui-kit/CurrencyInput/CurrencyInput';
@@ -31,10 +31,13 @@ export const DepositFiltration: JSXBlock<DepositFiltrationProps> = JSX<DepositFi
31
31
  const { source, months } = useDepositsPeriods(rest.block?.blocks);
32
32
  const [filtrationState, { field, reset }] = useForm(initialFiltrationState);
33
33
 
34
- const blocksToRender = getBlocksToRender(
35
- rest.block?.blocks,
36
- filtrationState,
37
- )((content) => ({ ...content, period: getPeriod(source, content || {}) || [] }));
34
+ const blocksToRender =
35
+ filtrationState === initialFiltrationState
36
+ ? rest.block?.blocks
37
+ : filterBlocks(
38
+ rest.block?.blocks,
39
+ filtrationState,
40
+ )((content) => ({ ...content, period: getPeriod(source, content || {}) || [] }));
38
41
 
39
42
  const Inputs = (
40
43
  <div>
@@ -0,0 +1,5 @@
1
+ import { type RateRow } from './isRateRow';
2
+
3
+ export interface SourceItem {
4
+ rateRows?: Partial<RateRow>[];
5
+ }
@@ -1,15 +1,13 @@
1
- export interface SourceItem {
2
- rateRows: Array<{ minMonths?: number; maxMonths?: number }>;
3
- }
1
+ import { unique } from '../../utils/unique';
2
+ import { isRateRow } from './isRateRow';
3
+ import { numberRange } from './numberRange';
4
+ import { type SourceItem } from './SourceItem';
4
5
 
5
6
  type Source = Record<string, SourceItem | null>;
6
7
 
7
- export const getPeriod = (source: Source, content: Record<string, any>): number[] => {
8
- const sourceItem = source[content?.sourceBook];
9
-
10
- return sourceItem
11
- ? sourceItem?.rateRows
12
- .map((el) => el.minMonths)
13
- .filter((minMonths): minMonths is number => minMonths !== undefined)
14
- : [];
15
- };
8
+ export const getPeriod = (source: Source, content: Record<string, any>): number[] =>
9
+ unique(
10
+ (source[content?.sourceBook]?.rateRows || [])
11
+ .filter(isRateRow)
12
+ .flatMap((_) => numberRange(_.minMonths, _.maxMonths)),
13
+ );
@@ -0,0 +1,8 @@
1
+ export interface RateRow {
2
+ minMonths: number;
3
+ maxMonths: number;
4
+ }
5
+
6
+ export const isRateRow = (rateRow: Partial<RateRow> | undefined): rateRow is RateRow => {
7
+ return typeof rateRow?.minMonths === 'number' && typeof rateRow?.maxMonths === 'number';
8
+ };
@@ -0,0 +1,2 @@
1
+ export const numberRange = (start: number, end: number): number[] =>
2
+ Array.from({ length: end - start + 1 }, (_, i) => start + i);
@@ -5,7 +5,9 @@ import { fetchMultitudeJSON, type FetchMultitudeJSONType } from '../../utils/fet
5
5
  import { unique } from '../../utils/unique';
6
6
  import { zip } from '../../utils/zip';
7
7
  import { getChildSourceBook } from './getChildSourceBook';
8
- import { type SourceItem } from './getPeriod';
8
+ import { isRateRow } from './isRateRow';
9
+ import { numberRange } from './numberRange';
10
+ import { type SourceItem } from './SourceItem';
9
11
 
10
12
  export function useDepositsPeriods(blocks: BlockDef[] | undefined) {
11
13
  const { dirs = [], source = [] } = useMemo(() => {
@@ -25,8 +27,8 @@ export function useDepositsPeriods(blocks: BlockDef[] | undefined) {
25
27
  unique(
26
28
  data
27
29
  .flatMap((item) => item?.rateRows || [])
28
- .filter((row) => typeof row.minMonths === 'number' && row.minMonths === row.maxMonths)
29
- .map((row) => row.minMonths as number),
30
+ .filter(isRateRow)
31
+ .flatMap((_) => numberRange(_.minMonths, _.maxMonths)),
30
32
  ).sort((a, b) => a - b) || [],
31
33
  };
32
34
  }
@@ -3,7 +3,7 @@ import { useCallback } from '@redneckz/uni-jsx/lib/hooks';
3
3
  import { useForm } from '../../hooks/useForm';
4
4
  import { type JSXBlock, type UniBlockProps } from '../../model/JSXBlock';
5
5
  import { BaseFiltrationInner } from '../../ui-kit/BaseFiltration/BaseFiltrationInner';
6
- import { getBlocksToRender } from '../../ui-kit/BaseFiltration/getBlocksToRender';
6
+ import { filterBlocks } from '../../ui-kit/BaseFiltration/filterBlocks';
7
7
  import { renderFiltrationForm } from '../../ui-kit/BaseFiltration/renderFiltrationForm';
8
8
  import { useHotFilters } from '../../ui-kit/BaseFiltration/useHotFilters';
9
9
  import { BlockWrapper } from '../../ui-kit/BlockWrapper';
@@ -30,7 +30,10 @@ export const MortgageFiltration: JSXBlock<MortgageFiltrationProps> = JSX<Mortgag
30
30
  const [filtrationState, { field, reset, update: replaceFiltrationState }] =
31
31
  useForm(initialFiltrationState);
32
32
 
33
- const blocksToRender = getBlocksToRender(rest.block?.blocks, filtrationState)();
33
+ const blocksToRender =
34
+ filtrationState === initialFiltrationState
35
+ ? rest.block?.blocks
36
+ : filterBlocks(rest.block?.blocks, filtrationState)();
34
37
 
35
38
  const handleFiltrationStateChange = useCallback(
36
39
  (_: MortgageFiltrationState = initialFiltrationState) => replaceFiltrationState(_),
@@ -1,8 +1,8 @@
1
1
  import { type BlockDef } from '../../model/ContentPageDef';
2
2
  import { identity } from '../../utils/identity';
3
- import { shouldRenderBlock } from './shouldRenderBlock';
3
+ import { targetMatchPattern } from './targetMatchPattern';
4
4
 
5
- export const getBlocksToRender =
5
+ export const filterBlocks =
6
6
  (blocks: BlockDef[] | undefined, filtrationState: Record<string, any>) =>
7
7
  (normalize = identity) =>
8
- blocks && blocks.filter((b) => shouldRenderBlock(filtrationState, normalize(b.content || {})));
8
+ blocks && blocks.filter((b) => targetMatchPattern(filtrationState, normalize(b.content || {})));
@@ -1,6 +1,6 @@
1
1
  import { type BlockDef } from '../../model/ContentPageDef';
2
- import { shouldRenderBlock } from './shouldRenderBlock';
2
+ import { targetMatchPattern } from './targetMatchPattern';
3
3
  import { type BaseFilter } from './useHotFilters';
4
4
 
5
5
  export const getBadgeCount = (blocks: BlockDef[] = [], filter: BaseFilter = {}) =>
6
- blocks.filter(({ content = {} }) => shouldRenderBlock(filter, content)).length;
6
+ blocks.filter(({ content = {} }) => targetMatchPattern(filter, content)).length;
@@ -32,7 +32,7 @@ const isValueInRange =
32
32
  (naturalNumber(pattern[key]?.min) >= naturalNumber(target[key]?.min) &&
33
33
  naturalNumber(pattern[key]?.min) <= naturalNumber(target[key]?.max));
34
34
 
35
- export const shouldRenderBlock = (pattern: Record<string, any>, target: Record<string, any>) =>
35
+ export const targetMatchPattern = (pattern: Record<string, any>, target: Record<string, any>) =>
36
36
  Object.entries(pattern)
37
37
  .map(([key, subPattern]) => {
38
38
  if (typeof subPattern === 'number') {
@@ -1,2 +0,0 @@
1
- import { type BlockDef } from '../../model/ContentPageDef';
2
- export declare const getBlocksToRender: (blocks: BlockDef[] | undefined, filtrationState: Record<string, any>) => (normalize?: <T>(_: T) => T) => BlockDef[] | undefined;
@@ -1 +0,0 @@
1
- export declare const shouldRenderBlock: (pattern: Record<string, any>, target: Record<string, any>) => boolean;
@@ -1,2 +0,0 @@
1
- import { type BlockDef } from '../../model/ContentPageDef';
2
- export declare const getBlocksToRender: (blocks: BlockDef[] | undefined, filtrationState: Record<string, any>) => (normalize?: <T>(_: T) => T) => BlockDef[] | undefined;
@@ -1,7 +0,0 @@
1
- Object.defineProperty(exports, "__esModule", { value: true });
2
- exports.getBlocksToRender = void 0;
3
- const identity_1 = require("../../utils/identity");
4
- const shouldRenderBlock_1 = require("./shouldRenderBlock");
5
- const getBlocksToRender = (blocks, filtrationState) => (normalize = identity_1.identity) => blocks && blocks.filter((b) => (0, shouldRenderBlock_1.shouldRenderBlock)(filtrationState, normalize(b.content || {})));
6
- exports.getBlocksToRender = getBlocksToRender;
7
- //# sourceMappingURL=getBlocksToRender.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getBlocksToRender.js","sourceRoot":"","sources":["../../../src/ui-kit/BaseFiltration/getBlocksToRender.ts"],"names":[],"mappings":";;AACA,mDAAgD;AAChD,2DAAwD;AAEjD,MAAM,iBAAiB,GAC5B,CAAC,MAA8B,EAAE,eAAoC,EAAE,EAAE,CACzE,CAAC,SAAS,GAAG,mBAAQ,EAAE,EAAE,CACvB,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,qCAAiB,EAAC,eAAe,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAHtF,QAAA,iBAAiB,qBAGqE"}
@@ -1 +0,0 @@
1
- export declare const shouldRenderBlock: (pattern: Record<string, any>, target: Record<string, any>) => boolean;
@@ -1 +0,0 @@
1
- {"version":3,"file":"shouldRenderBlock.js","sourceRoot":"","sources":["../../../src/ui-kit/BaseFiltration/shouldRenderBlock.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import { type BlockDef } from '../../model/ContentPageDef';
2
- export declare const getBlocksToRender: (blocks: BlockDef[] | undefined, filtrationState: Record<string, any>) => (normalize?: <T>(_: T) => T) => BlockDef[] | undefined;
@@ -1,4 +0,0 @@
1
- import { identity } from '../../utils/identity.js';
2
- import { shouldRenderBlock } from './shouldRenderBlock.js';
3
- export const getBlocksToRender = (blocks, filtrationState) => (normalize = identity) => blocks && blocks.filter((b) => shouldRenderBlock(filtrationState, normalize(b.content || {})));
4
- //# sourceMappingURL=getBlocksToRender.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getBlocksToRender.js","sourceRoot":"","sources":["../../../src/ui-kit/BaseFiltration/getBlocksToRender.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,MAAM,CAAC,MAAM,iBAAiB,GAC5B,CAAC,MAA8B,EAAE,eAAoC,EAAE,EAAE,CACzE,CAAC,SAAS,GAAG,QAAQ,EAAE,EAAE,CACvB,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- export declare const shouldRenderBlock: (pattern: Record<string, any>, target: Record<string, any>) => boolean;
@@ -1 +0,0 @@
1
- {"version":3,"file":"shouldRenderBlock.js","sourceRoot":"","sources":["../../../src/ui-kit/BaseFiltration/shouldRenderBlock.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import { type BlockDef } from '../../model/ContentPageDef';
2
- export declare const getBlocksToRender: (blocks: BlockDef[] | undefined, filtrationState: Record<string, any>) => (normalize?: <T>(_: T) => T) => BlockDef[] | undefined;
@@ -1 +0,0 @@
1
- export declare const shouldRenderBlock: (pattern: Record<string, any>, target: Record<string, any>) => boolean;
@@ -1,2 +0,0 @@
1
- import { type BlockDef } from '../../model/ContentPageDef';
2
- export declare const getBlocksToRender: (blocks: BlockDef[] | undefined, filtrationState: Record<string, any>) => (normalize?: <T>(_: T) => T) => BlockDef[] | undefined;
@@ -1,7 +0,0 @@
1
- Object.defineProperty(exports, "__esModule", { value: true });
2
- exports.getBlocksToRender = void 0;
3
- const identity_1 = require("../../utils/identity");
4
- const shouldRenderBlock_1 = require("./shouldRenderBlock");
5
- const getBlocksToRender = (blocks, filtrationState) => (normalize = identity_1.identity) => blocks && blocks.filter((b) => (0, shouldRenderBlock_1.shouldRenderBlock)(filtrationState, normalize(b.content || {})));
6
- exports.getBlocksToRender = getBlocksToRender;
7
- //# sourceMappingURL=getBlocksToRender.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getBlocksToRender.js","sourceRoot":"","sources":["../../../src/ui-kit/BaseFiltration/getBlocksToRender.ts"],"names":[],"mappings":";;AACA,mDAAgD;AAChD,2DAAwD;AAEjD,MAAM,iBAAiB,GAC5B,CAAC,MAA8B,EAAE,eAAoC,EAAE,EAAE,CACzE,CAAC,SAAS,GAAG,mBAAQ,EAAE,EAAE,CACvB,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,qCAAiB,EAAC,eAAe,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAHtF,QAAA,iBAAiB,qBAGqE"}
@@ -1 +0,0 @@
1
- export declare const shouldRenderBlock: (pattern: Record<string, any>, target: Record<string, any>) => boolean;
@@ -1 +0,0 @@
1
- {"version":3,"file":"shouldRenderBlock.js","sourceRoot":"","sources":["../../../src/ui-kit/BaseFiltration/shouldRenderBlock.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import { type BlockDef } from '../../model/ContentPageDef';
2
- export declare const getBlocksToRender: (blocks: BlockDef[] | undefined, filtrationState: Record<string, any>) => (normalize?: <T>(_: T) => T) => BlockDef[] | undefined;
@@ -1,4 +0,0 @@
1
- import { identity } from '../../utils/identity.js';
2
- import { shouldRenderBlock } from './shouldRenderBlock.js';
3
- export const getBlocksToRender = (blocks, filtrationState) => (normalize = identity) => blocks && blocks.filter((b) => shouldRenderBlock(filtrationState, normalize(b.content || {})));
4
- //# sourceMappingURL=getBlocksToRender.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getBlocksToRender.js","sourceRoot":"","sources":["../../../src/ui-kit/BaseFiltration/getBlocksToRender.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,MAAM,CAAC,MAAM,iBAAiB,GAC5B,CAAC,MAA8B,EAAE,eAAoC,EAAE,EAAE,CACzE,CAAC,SAAS,GAAG,QAAQ,EAAE,EAAE,CACvB,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- export declare const shouldRenderBlock: (pattern: Record<string, any>, target: Record<string, any>) => boolean;
@@ -1 +0,0 @@
1
- {"version":3,"file":"shouldRenderBlock.js","sourceRoot":"","sources":["../../../src/ui-kit/BaseFiltration/shouldRenderBlock.ts"],"names":[],"mappings":"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"}