@redneckz/wildless-cms-uni-blocks 0.8.31 → 0.9.1

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 (214) hide show
  1. package/bundle/blocks.schema.json +1 -1
  2. package/bundle/bundle.umd.js +93 -24
  3. package/bundle/bundle.umd.min.js +1 -1
  4. package/bundle/components/Filtration/Filtration.d.ts +6 -0
  5. package/bundle/components/Filtration/FiltrationContent.d.ts +78 -0
  6. package/bundle/components/Filtration/FiltrationInner.d.ts +7 -0
  7. package/bundle/components/Filtration/checkShouldRenderBlock.d.ts +1 -0
  8. package/bundle/components/Filtration/renderFormItem.d.ts +4 -0
  9. package/bundle/components/ProductBlock/ProductBlockContent.d.ts +2 -0
  10. package/bundle/hooks/useForm.d.ts +12 -0
  11. package/bundle/model/JSXBlock.d.ts +2 -0
  12. package/bundle/ui-kit/ControlProps.d.ts +4 -0
  13. package/bundle/ui-kit/Foldable/DefaultFoldButton.d.ts +1 -0
  14. package/bundle/ui-kit/SlideCheckbox/SlideCheckbox.d.ts +3 -2
  15. package/bundle/ui-kit/SlideCheckboxGroup/SlideCheckboxGroup.d.ts +15 -0
  16. package/dist/components/ApplicationForm/renderSlideCheckboxes.js +1 -1
  17. package/dist/components/ApplicationForm/renderSlideCheckboxes.js.map +1 -1
  18. package/dist/components/Blocks.js +2 -0
  19. package/dist/components/Blocks.js.map +1 -1
  20. package/dist/components/Filtration/Filtration.d.ts +6 -0
  21. package/dist/components/Filtration/Filtration.js +17 -0
  22. package/dist/components/Filtration/Filtration.js.map +1 -0
  23. package/dist/components/Filtration/FiltrationContent.d.ts +78 -0
  24. package/dist/components/Filtration/FiltrationContent.js +2 -0
  25. package/dist/components/Filtration/FiltrationContent.js.map +1 -0
  26. package/dist/components/Filtration/FiltrationInner.d.ts +7 -0
  27. package/dist/components/Filtration/FiltrationInner.js +23 -0
  28. package/dist/components/Filtration/FiltrationInner.js.map +1 -0
  29. package/dist/components/Filtration/checkShouldRenderBlock.d.ts +1 -0
  30. package/dist/components/Filtration/checkShouldRenderBlock.js +11 -0
  31. package/dist/components/Filtration/checkShouldRenderBlock.js.map +1 -0
  32. package/dist/components/Filtration/renderFormItem.d.ts +4 -0
  33. package/dist/components/Filtration/renderFormItem.js +21 -0
  34. package/dist/components/Filtration/renderFormItem.js.map +1 -0
  35. package/dist/components/ProductBlock/ProductBlockContent.d.ts +2 -0
  36. package/dist/components/ProductBlock/ProductBlockInner.js +2 -2
  37. package/dist/components/ProductBlock/ProductBlockInner.js.map +1 -1
  38. package/dist/hooks/useForm.d.ts +12 -0
  39. package/dist/hooks/useForm.js +21 -0
  40. package/dist/hooks/useForm.js.map +1 -0
  41. package/dist/model/JSXBlock.d.ts +2 -0
  42. package/dist/ui-kit/ControlProps.d.ts +4 -0
  43. package/dist/ui-kit/ControlProps.js +2 -0
  44. package/dist/ui-kit/ControlProps.js.map +1 -0
  45. package/dist/ui-kit/Foldable/DefaultFoldButton.d.ts +1 -0
  46. package/dist/ui-kit/Foldable/DefaultFoldButton.js +5 -9
  47. package/dist/ui-kit/Foldable/DefaultFoldButton.js.map +1 -1
  48. package/dist/ui-kit/SlideCheckbox/SlideCheckbox.d.ts +3 -2
  49. package/dist/ui-kit/SlideCheckbox/SlideCheckbox.js +2 -2
  50. package/dist/ui-kit/SlideCheckbox/SlideCheckbox.js.map +1 -1
  51. package/dist/ui-kit/SlideCheckboxGroup/SlideCheckboxGroup.d.ts +15 -0
  52. package/dist/ui-kit/SlideCheckboxGroup/SlideCheckboxGroup.js +19 -0
  53. package/dist/ui-kit/SlideCheckboxGroup/SlideCheckboxGroup.js.map +1 -0
  54. package/lib/common.css +1 -1
  55. package/lib/components/ApplicationForm/renderSlideCheckboxes.js +1 -1
  56. package/lib/components/ApplicationForm/renderSlideCheckboxes.js.map +1 -1
  57. package/lib/components/Blocks.js +2 -0
  58. package/lib/components/Blocks.js.map +1 -1
  59. package/lib/components/Filtration/Filtration.d.ts +6 -0
  60. package/lib/components/Filtration/Filtration.fixture.d.ts +5 -0
  61. package/lib/components/Filtration/Filtration.js +15 -0
  62. package/lib/components/Filtration/Filtration.js.map +1 -0
  63. package/lib/components/Filtration/FiltrationContent.d.ts +78 -0
  64. package/lib/components/Filtration/FiltrationContent.js +2 -0
  65. package/lib/components/Filtration/FiltrationContent.js.map +1 -0
  66. package/lib/components/Filtration/FiltrationInner.d.ts +7 -0
  67. package/lib/components/Filtration/FiltrationInner.js +21 -0
  68. package/lib/components/Filtration/FiltrationInner.js.map +1 -0
  69. package/lib/components/Filtration/checkShouldRenderBlock.d.ts +1 -0
  70. package/lib/components/Filtration/checkShouldRenderBlock.js +8 -0
  71. package/lib/components/Filtration/checkShouldRenderBlock.js.map +1 -0
  72. package/lib/components/Filtration/renderFormItem.d.ts +4 -0
  73. package/lib/components/Filtration/renderFormItem.js +18 -0
  74. package/lib/components/Filtration/renderFormItem.js.map +1 -0
  75. package/lib/components/ProductBlock/ProductBlock.fixture.d.ts +1 -0
  76. package/lib/components/ProductBlock/ProductBlockContent.d.ts +2 -0
  77. package/lib/components/ProductBlock/ProductBlockInner.js +2 -2
  78. package/lib/components/ProductBlock/ProductBlockInner.js.map +1 -1
  79. package/lib/hooks/useForm.d.ts +12 -0
  80. package/lib/hooks/useForm.js +18 -0
  81. package/lib/hooks/useForm.js.map +1 -0
  82. package/lib/model/JSXBlock.d.ts +2 -0
  83. package/lib/ui-kit/ControlProps.d.ts +4 -0
  84. package/lib/ui-kit/ControlProps.js +2 -0
  85. package/lib/ui-kit/ControlProps.js.map +1 -0
  86. package/lib/ui-kit/Foldable/DefaultFoldButton.d.ts +1 -0
  87. package/lib/ui-kit/Foldable/DefaultFoldButton.js +5 -9
  88. package/lib/ui-kit/Foldable/DefaultFoldButton.js.map +1 -1
  89. package/lib/ui-kit/SlideCheckbox/SlideCheckbox.d.ts +3 -2
  90. package/lib/ui-kit/SlideCheckbox/SlideCheckbox.js +2 -2
  91. package/lib/ui-kit/SlideCheckbox/SlideCheckbox.js.map +1 -1
  92. package/lib/ui-kit/SlideCheckboxGroup/SlideCheckboxGroup.d.ts +15 -0
  93. package/lib/ui-kit/SlideCheckboxGroup/SlideCheckboxGroup.js +17 -0
  94. package/lib/ui-kit/SlideCheckboxGroup/SlideCheckboxGroup.js.map +1 -0
  95. package/mobile/bundle/bundle.umd.js +5 -10
  96. package/mobile/bundle/bundle.umd.min.js +1 -1
  97. package/mobile/bundle/components/Filtration/Filtration.d.ts +6 -0
  98. package/mobile/bundle/components/Filtration/FiltrationContent.d.ts +78 -0
  99. package/mobile/bundle/components/Filtration/FiltrationInner.d.ts +7 -0
  100. package/mobile/bundle/components/Filtration/checkShouldRenderBlock.d.ts +1 -0
  101. package/mobile/bundle/components/Filtration/renderFormItem.d.ts +4 -0
  102. package/mobile/bundle/components/ProductBlock/ProductBlockContent.d.ts +2 -0
  103. package/mobile/bundle/hooks/useForm.d.ts +12 -0
  104. package/mobile/bundle/model/JSXBlock.d.ts +2 -0
  105. package/mobile/bundle/ui-kit/ControlProps.d.ts +4 -0
  106. package/mobile/bundle/ui-kit/Foldable/DefaultFoldButton.d.ts +1 -0
  107. package/mobile/bundle/ui-kit/SlideCheckbox/SlideCheckbox.d.ts +3 -2
  108. package/mobile/bundle/ui-kit/SlideCheckboxGroup/SlideCheckboxGroup.d.ts +15 -0
  109. package/mobile/dist/components/ApplicationForm/renderSlideCheckboxes.js +1 -1
  110. package/mobile/dist/components/ApplicationForm/renderSlideCheckboxes.js.map +1 -1
  111. package/mobile/dist/components/Filtration/Filtration.d.ts +6 -0
  112. package/mobile/dist/components/Filtration/Filtration.js +17 -0
  113. package/mobile/dist/components/Filtration/Filtration.js.map +1 -0
  114. package/mobile/dist/components/Filtration/FiltrationContent.d.ts +78 -0
  115. package/mobile/dist/components/Filtration/FiltrationContent.js +2 -0
  116. package/mobile/dist/components/Filtration/FiltrationContent.js.map +1 -0
  117. package/mobile/dist/components/Filtration/FiltrationInner.d.ts +7 -0
  118. package/mobile/dist/components/Filtration/FiltrationInner.js +23 -0
  119. package/mobile/dist/components/Filtration/FiltrationInner.js.map +1 -0
  120. package/mobile/dist/components/Filtration/checkShouldRenderBlock.d.ts +1 -0
  121. package/mobile/dist/components/Filtration/checkShouldRenderBlock.js +11 -0
  122. package/mobile/dist/components/Filtration/checkShouldRenderBlock.js.map +1 -0
  123. package/mobile/dist/components/Filtration/renderFormItem.d.ts +4 -0
  124. package/mobile/dist/components/Filtration/renderFormItem.js +21 -0
  125. package/mobile/dist/components/Filtration/renderFormItem.js.map +1 -0
  126. package/mobile/dist/components/ProductBlock/ProductBlockContent.d.ts +2 -0
  127. package/mobile/dist/hooks/useForm.d.ts +12 -0
  128. package/mobile/dist/hooks/useForm.js +21 -0
  129. package/mobile/dist/hooks/useForm.js.map +1 -0
  130. package/mobile/dist/model/JSXBlock.d.ts +2 -0
  131. package/mobile/dist/ui-kit/ControlProps.d.ts +4 -0
  132. package/mobile/dist/ui-kit/ControlProps.js +2 -0
  133. package/mobile/dist/ui-kit/ControlProps.js.map +1 -0
  134. package/mobile/dist/ui-kit/Foldable/DefaultFoldButton.d.ts +1 -0
  135. package/mobile/dist/ui-kit/Foldable/DefaultFoldButton.js +5 -9
  136. package/mobile/dist/ui-kit/Foldable/DefaultFoldButton.js.map +1 -1
  137. package/mobile/dist/ui-kit/SlideCheckbox/SlideCheckbox.d.ts +3 -2
  138. package/mobile/dist/ui-kit/SlideCheckbox/SlideCheckbox.js +2 -2
  139. package/mobile/dist/ui-kit/SlideCheckbox/SlideCheckbox.js.map +1 -1
  140. package/mobile/dist/ui-kit/SlideCheckboxGroup/SlideCheckboxGroup.d.ts +15 -0
  141. package/mobile/dist/ui-kit/SlideCheckboxGroup/SlideCheckboxGroup.js +19 -0
  142. package/mobile/dist/ui-kit/SlideCheckboxGroup/SlideCheckboxGroup.js.map +1 -0
  143. package/mobile/lib/components/ApplicationForm/renderSlideCheckboxes.js +1 -1
  144. package/mobile/lib/components/ApplicationForm/renderSlideCheckboxes.js.map +1 -1
  145. package/mobile/lib/components/Filtration/Filtration.d.ts +6 -0
  146. package/mobile/lib/components/Filtration/Filtration.js +15 -0
  147. package/mobile/lib/components/Filtration/Filtration.js.map +1 -0
  148. package/mobile/lib/components/Filtration/FiltrationContent.d.ts +78 -0
  149. package/mobile/lib/components/Filtration/FiltrationContent.js +2 -0
  150. package/mobile/lib/components/Filtration/FiltrationContent.js.map +1 -0
  151. package/mobile/lib/components/Filtration/FiltrationInner.d.ts +7 -0
  152. package/mobile/lib/components/Filtration/FiltrationInner.js +21 -0
  153. package/mobile/lib/components/Filtration/FiltrationInner.js.map +1 -0
  154. package/mobile/lib/components/Filtration/checkShouldRenderBlock.d.ts +1 -0
  155. package/mobile/lib/components/Filtration/checkShouldRenderBlock.js +8 -0
  156. package/mobile/lib/components/Filtration/checkShouldRenderBlock.js.map +1 -0
  157. package/mobile/lib/components/Filtration/renderFormItem.d.ts +4 -0
  158. package/mobile/lib/components/Filtration/renderFormItem.js +18 -0
  159. package/mobile/lib/components/Filtration/renderFormItem.js.map +1 -0
  160. package/mobile/lib/components/ProductBlock/ProductBlockContent.d.ts +2 -0
  161. package/mobile/lib/hooks/useForm.d.ts +12 -0
  162. package/mobile/lib/hooks/useForm.js +18 -0
  163. package/mobile/lib/hooks/useForm.js.map +1 -0
  164. package/mobile/lib/model/JSXBlock.d.ts +2 -0
  165. package/mobile/lib/ui-kit/ControlProps.d.ts +4 -0
  166. package/mobile/lib/ui-kit/ControlProps.js +2 -0
  167. package/mobile/lib/ui-kit/ControlProps.js.map +1 -0
  168. package/mobile/lib/ui-kit/Foldable/DefaultFoldButton.d.ts +1 -0
  169. package/mobile/lib/ui-kit/Foldable/DefaultFoldButton.js +5 -9
  170. package/mobile/lib/ui-kit/Foldable/DefaultFoldButton.js.map +1 -1
  171. package/mobile/lib/ui-kit/SlideCheckbox/SlideCheckbox.d.ts +3 -2
  172. package/mobile/lib/ui-kit/SlideCheckbox/SlideCheckbox.js +2 -2
  173. package/mobile/lib/ui-kit/SlideCheckbox/SlideCheckbox.js.map +1 -1
  174. package/mobile/lib/ui-kit/SlideCheckboxGroup/SlideCheckboxGroup.d.ts +15 -0
  175. package/mobile/lib/ui-kit/SlideCheckboxGroup/SlideCheckboxGroup.js +17 -0
  176. package/mobile/lib/ui-kit/SlideCheckboxGroup/SlideCheckboxGroup.js.map +1 -0
  177. package/mobile/src/components/ApplicationForm/renderSlideCheckboxes.tsx +4 -4
  178. package/mobile/src/components/Filtration/Filtration.example.json +37 -0
  179. package/mobile/src/components/Filtration/Filtration.tsx +41 -0
  180. package/mobile/src/components/Filtration/Filtration.ui.json +1 -0
  181. package/mobile/src/components/Filtration/FiltrationContent.ts +87 -0
  182. package/mobile/src/components/Filtration/FiltrationInner.tsx +67 -0
  183. package/mobile/src/components/Filtration/checkShouldRenderBlock.ts +18 -0
  184. package/mobile/src/components/Filtration/renderFormItem.tsx +36 -0
  185. package/mobile/src/components/ProductBlock/ProductBlock.example.json +2 -1
  186. package/mobile/src/components/ProductBlock/ProductBlockContent.ts +2 -0
  187. package/mobile/src/hooks/useForm.ts +29 -0
  188. package/mobile/src/model/JSXBlock.ts +2 -0
  189. package/mobile/src/ui-kit/ControlProps.ts +4 -0
  190. package/mobile/src/ui-kit/Foldable/DefaultFoldButton.tsx +11 -11
  191. package/mobile/src/ui-kit/SlideCheckbox/SlideCheckbox.tsx +26 -23
  192. package/mobile/src/ui-kit/SlideCheckboxGroup/SlideCheckboxGroup.tsx +44 -0
  193. package/package.json +2 -1
  194. package/src/components/ApplicationForm/renderSlideCheckboxes.tsx +4 -4
  195. package/src/components/Blocks.ts +2 -0
  196. package/src/components/Filtration/Filtration.example.json +37 -0
  197. package/src/components/Filtration/Filtration.fixture.tsx +147 -0
  198. package/src/components/Filtration/Filtration.tsx +41 -0
  199. package/src/components/Filtration/Filtration.ui.json +1 -0
  200. package/src/components/Filtration/FiltrationContent.ts +87 -0
  201. package/src/components/Filtration/FiltrationInner.tsx +67 -0
  202. package/src/components/Filtration/checkShouldRenderBlock.ts +18 -0
  203. package/src/components/Filtration/renderFormItem.tsx +36 -0
  204. package/src/components/ProductBlock/ProductBlock.example.json +2 -1
  205. package/src/components/ProductBlock/ProductBlock.fixture.tsx +17 -0
  206. package/src/components/ProductBlock/ProductBlockContent.ts +2 -0
  207. package/src/components/ProductBlock/ProductBlockInner.tsx +4 -1
  208. package/src/hooks/useForm.ts +29 -0
  209. package/src/model/JSXBlock.ts +2 -0
  210. package/src/ui-kit/ControlProps.ts +4 -0
  211. package/src/ui-kit/Foldable/DefaultFoldButton.tsx +11 -11
  212. package/src/ui-kit/SlideCheckbox/SlideCheckbox.fixture.tsx +1 -1
  213. package/src/ui-kit/SlideCheckbox/SlideCheckbox.tsx +26 -23
  214. package/src/ui-kit/SlideCheckboxGroup/SlideCheckboxGroup.tsx +44 -0
@@ -0,0 +1,6 @@
1
+ import type { JSXBlock, UniBlockProps } from '../../model/JSXBlock';
2
+ import type { FiltrationContent } from './FiltrationContent';
3
+ interface FiltrationProps extends FiltrationContent, UniBlockProps {
4
+ }
5
+ export declare const Filtration: JSXBlock<FiltrationProps>;
6
+ export {};
@@ -0,0 +1,78 @@
1
+ import type { ButtonVersion } from '../../model/ButtonVersion';
2
+ /**
3
+ * @title Заголовок
4
+ */
5
+ declare type Title = string;
6
+ /**
7
+ * @title Ключи
8
+ */
9
+ declare type Enum = string[];
10
+ /**
11
+ * @title Имена
12
+ */
13
+ declare type EnumNames = string[];
14
+ export declare type StringEnum = {
15
+ title?: Title;
16
+ /**
17
+ * @default string
18
+ * @hidden
19
+ */
20
+ type?: 'string';
21
+ enum?: Enum;
22
+ enumNames?: EnumNames;
23
+ };
24
+ export declare type StringArray = {
25
+ title?: Title;
26
+ /**
27
+ * @default array
28
+ * @hidden
29
+ */
30
+ type?: 'array';
31
+ items?: {
32
+ /**
33
+ * @default string
34
+ * @hidden
35
+ */
36
+ type?: 'string';
37
+ enum?: Enum;
38
+ enumNames?: EnumNames;
39
+ };
40
+ };
41
+ export declare type FiltrationSchema = {
42
+ /** @title Тип недвижимости */
43
+ propertyType?: StringEnum;
44
+ /** @title Этап строительства */
45
+ stage?: StringEnum;
46
+ /** @title Категории */
47
+ categories?: StringEnum;
48
+ /** @title Дополнительно */
49
+ extraOptions?: StringEnum;
50
+ };
51
+ /**
52
+ * @title Кнопка сброса
53
+ */
54
+ export declare type ResetButton = {
55
+ /**
56
+ * @title Текст кнопки
57
+ */
58
+ text: string;
59
+ /**
60
+ * @title Цвет кнопки
61
+ */
62
+ buttonVersion: ButtonVersion;
63
+ };
64
+ export interface FiltrationInnerContent {
65
+ /** @title Название кнопки */
66
+ label?: string;
67
+ /** @title Количество отображаемых предметов */
68
+ topItemsCount?: number;
69
+ }
70
+ /**
71
+ * @title Фильтрация
72
+ */
73
+ export interface FiltrationContent extends FiltrationInnerContent {
74
+ /** @title Параметры фильтрации */
75
+ filtrationSchema?: FiltrationSchema;
76
+ resetButton?: ResetButton;
77
+ }
78
+ export {};
@@ -0,0 +1,7 @@
1
+ import type { UniBlockProps } from '../../model/JSXBlock';
2
+ import type { FiltrationInnerContent } from './FiltrationContent';
3
+ interface FiltrationInnerProps extends FiltrationInnerContent, UniBlockProps {
4
+ filtrationState?: Record<string, any>;
5
+ }
6
+ export declare const FiltrationInner: import("@redneckz/uni-jsx").UNIComponent<FiltrationInnerProps, any, any>;
7
+ export {};
@@ -0,0 +1 @@
1
+ export declare const checkShouldRenderBlock: (pattern: Record<string, any>, target: Record<string, any>) => boolean;
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import type { FormElementRegisterer } from '../../hooks/useForm';
3
+ import type { FiltrationSchema } from './FiltrationContent';
4
+ export declare const renderFormItem: (filtrationSchema: FiltrationSchema, register: FormElementRegisterer) => (key: string) => JSX.Element | null;
@@ -29,6 +29,8 @@ export declare type ProductBlockInnerContent = HeadlineProps & RichTextProps & L
29
29
  * @hidden
30
30
  */
31
31
  textBlockClassName?: string;
32
+ /** @title Картинка справа/текст слева */
33
+ directionRight?: boolean;
32
34
  };
33
35
  /**
34
36
  * @title Продуктовый блок
@@ -0,0 +1,12 @@
1
+ export declare type FormElementRegisterer = ReturnType<typeof useForm>['register'];
2
+ export declare const useForm: <FormState extends Record<string, any>>(initialState?: Partial<FormState>) => {
3
+ formState: Partial<FormState>;
4
+ register: <FieldName extends keyof FormState>(fieldName: FieldName) => {
5
+ value?: undefined;
6
+ onChange?: undefined;
7
+ } | {
8
+ value: Partial<FormState>[FieldName];
9
+ onChange: Partial<Record<keyof FormState, () => void>>[FieldName];
10
+ };
11
+ resetForm: () => void;
12
+ };
@@ -1,4 +1,5 @@
1
1
  import type { UNIComponent } from '@redneckz/uni-jsx';
2
+ import type { JSONSchema7Definition } from 'json-schema';
2
3
  import type { BlockRendererOptions } from '../BlockRenderer/BlockRendererOptions';
3
4
  import type { SlotName } from './BlockDecorator';
4
5
  import type { BlockVersion } from './BlockVersion';
@@ -22,5 +23,6 @@ export declare type JSXBlock<BlockProps extends UniBlockProps = UniBlockProps> =
22
23
  include?: string[];
23
24
  exclude?: string[];
24
25
  };
26
+ childSchema?: (content: BlockDef['content']) => Record<string, JSONSchema7Definition>;
25
27
  slots?: (props: BlockProps) => SlotName[];
26
28
  };
@@ -0,0 +1,4 @@
1
+ export interface ControlProps<T> {
2
+ value?: T;
3
+ onChange?: (value: T | undefined) => void;
4
+ }
@@ -7,6 +7,7 @@ interface DefaultFoldButtonProps {
7
7
  label: string;
8
8
  icon: IconName;
9
9
  dataTheme?: ColorPalette;
10
+ disabled?: boolean;
10
11
  onClick?: () => void;
11
12
  }
12
13
  export declare const DefaultFoldButton: import("@redneckz/uni-jsx").UNIComponent<DefaultFoldButtonProps, any, any>;
@@ -1,7 +1,8 @@
1
1
  interface SlideCheckboxProps {
2
- checked?: boolean;
2
+ value?: boolean;
3
3
  text?: string;
4
- onClick?: () => void;
4
+ type?: 'checkbox' | 'radio';
5
+ onChange?: (value: boolean) => void;
5
6
  }
6
7
  export declare const SlideCheckbox: import("@redneckz/uni-jsx").UNIComponent<SlideCheckboxProps, any, any>;
7
8
  export {};
@@ -0,0 +1,15 @@
1
+ import type { ControlProps } from '../ControlProps';
2
+ declare type SlideCheckboxGroupItem = {
3
+ value: string;
4
+ title: string;
5
+ };
6
+ interface SlideCheckboxGroupProps extends ControlProps<string> {
7
+ multiple: false;
8
+ items: SlideCheckboxGroupItem[];
9
+ }
10
+ interface MultipleSlideCheckboxGroupProps extends ControlProps<string[]> {
11
+ multiple: true;
12
+ items: SlideCheckboxGroupItem[];
13
+ }
14
+ export declare const SlideCheckboxGroup: import("@redneckz/uni-jsx").UNIComponent<SlideCheckboxGroupProps | MultipleSlideCheckboxGroupProps, any, any>;
15
+ export {};
@@ -2,6 +2,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
2
2
  exports.renderSlideCheckboxes = void 0;
3
3
  const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
4
  const SlideCheckbox_1 = require("../../ui-kit/SlideCheckbox/SlideCheckbox");
5
- const renderSlideCheckboxes = ({ onlineСheckout, posTerminal, handleChange, }) => ((0, jsx_runtime_1.jsxs)("div", { className: "mb-5", children: [(0, jsx_runtime_1.jsx)(SlideCheckbox_1.SlideCheckbox, { checked: onlineСheckout, text: "\u0425\u043E\u0447\u0443 \u043A\u0443\u043F\u0438\u0442\u044C \u043E\u043D\u043B\u0430\u0439\u043D-\u043A\u0430\u0441\u0441\u0443", onClick: () => handleChange({ onlineСheckout: !onlineСheckout }) }), (0, jsx_runtime_1.jsx)(SlideCheckbox_1.SlideCheckbox, { checked: posTerminal, text: "\u0425\u043E\u0447\u0443 \u043A\u0443\u043F\u0438\u0442\u044C POS-\u0442\u0435\u0440\u043C\u0438\u043D\u0430\u043B", onClick: () => handleChange({ posTerminal: !posTerminal }) })] }));
5
+ const renderSlideCheckboxes = ({ onlineСheckout, posTerminal, handleChange, }) => ((0, jsx_runtime_1.jsxs)("div", { className: "mb-5", children: [(0, jsx_runtime_1.jsx)(SlideCheckbox_1.SlideCheckbox, { value: onlineСheckout, text: "\u0425\u043E\u0447\u0443 \u043A\u0443\u043F\u0438\u0442\u044C \u043E\u043D\u043B\u0430\u0439\u043D-\u043A\u0430\u0441\u0441\u0443", onChange: () => handleChange({ onlineСheckout: !onlineСheckout }) }), (0, jsx_runtime_1.jsx)(SlideCheckbox_1.SlideCheckbox, { value: posTerminal, text: "\u0425\u043E\u0447\u0443 \u043A\u0443\u043F\u0438\u0442\u044C POS-\u0442\u0435\u0440\u043C\u0438\u043D\u0430\u043B", onChange: () => handleChange({ posTerminal: !posTerminal }) })] }));
6
6
  exports.renderSlideCheckboxes = renderSlideCheckboxes;
7
7
  //# sourceMappingURL=renderSlideCheckboxes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"renderSlideCheckboxes.js","sourceRoot":"","sources":["../../../src/components/ApplicationForm/renderSlideCheckboxes.tsx"],"names":[],"mappings":";;;AAAA,4EAAyE;AAUlE,MAAM,qBAAqB,GAAG,CAAC,EACpC,cAAc,EACd,WAAW,EACX,YAAY,GACS,EAAE,EAAE,CAAC,CAC1B,iCAAK,SAAS,EAAC,MAAM,aACnB,uBAAC,6BAAa,IACZ,OAAO,EAAE,cAAc,EACvB,IAAI,EAAC,mIAA0B,EAC/B,OAAO,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,EAAE,cAAc,EAAE,CAAC,cAAc,EAAE,CAAC,GAChE,EACF,uBAAC,6BAAa,IACZ,OAAO,EAAE,WAAW,EACpB,IAAI,EAAC,oHAA0B,EAC/B,OAAO,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC,WAAW,EAAE,CAAC,GAC1D,IACE,CACP,CAAC;AAjBW,QAAA,qBAAqB,yBAiBhC"}
1
+ {"version":3,"file":"renderSlideCheckboxes.js","sourceRoot":"","sources":["../../../src/components/ApplicationForm/renderSlideCheckboxes.tsx"],"names":[],"mappings":";;;AAAA,4EAAyE;AAUlE,MAAM,qBAAqB,GAAG,CAAC,EACpC,cAAc,EACd,WAAW,EACX,YAAY,GACS,EAAE,EAAE,CAAC,CAC1B,iCAAK,SAAS,EAAC,MAAM,aACnB,uBAAC,6BAAa,IACZ,KAAK,EAAE,cAAc,EACrB,IAAI,EAAC,mIAA0B,EAC/B,QAAQ,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,EAAE,cAAc,EAAE,CAAC,cAAc,EAAE,CAAC,GACjE,EACF,uBAAC,6BAAa,IACZ,KAAK,EAAE,WAAW,EAClB,IAAI,EAAC,oHAA0B,EAC/B,QAAQ,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC,WAAW,EAAE,CAAC,GAC3D,IACE,CACP,CAAC;AAjBW,QAAA,qBAAqB,yBAiBhC"}
@@ -24,6 +24,7 @@ const ComparisonTable_1 = require("./ComparisonTable/ComparisonTable");
24
24
  const ContactsBlock_1 = require("./ContactsBlock/ContactsBlock");
25
25
  const ErrorBlock_1 = require("./ErrorBlock/ErrorBlock");
26
26
  const ExchangeRateTile_1 = require("./ExchangeRateTile/ExchangeRateTile");
27
+ const Filtration_1 = require("./Filtration/Filtration");
27
28
  const Footer_1 = require("./Footer/Footer");
28
29
  const GracePeriod_1 = require("./GracePeriod/GracePeriod");
29
30
  const Header_1 = require("./Header/Header");
@@ -80,6 +81,7 @@ exports.Blocks = {
80
81
  ContactsBlock: ContactsBlock_1.ContactsBlock,
81
82
  ErrorBlock: ErrorBlock_1.ErrorBlock,
82
83
  ExchangeRateTile: ExchangeRateTile_1.ExchangeRateTile,
84
+ Filtration: Filtration_1.Filtration,
83
85
  Footer: Footer_1.Footer,
84
86
  GracePeriod: GracePeriod_1.GracePeriod,
85
87
  Header: Header_1.Header,
@@ -1 +1 @@
1
- {"version":3,"file":"Blocks.js","sourceRoot":"","sources":["../../src/components/Blocks.ts"],"names":[],"mappings":";;AACA,qDAAkD;AAClD,uEAAoE;AACpE,iEAA8D;AAC9D,yCAAsC;AACtC,gFAA6E;AAC7E,iEAA8D;AAC9D,2DAAwD;AACxD,wDAAqD;AACrD,8DAA2D;AAC3D,kDAA+C;AAC/C,+FAA4F;AAC5F,8DAA2D;AAC3D,mFAAgF;AAChF,6EAA0E;AAC1E,4FAAyF;AACzF,iEAA8D;AAC9D,mFAAgF;AAChF,sFAAmF;AACnF,wGAAqG;AACrG,mFAAgF;AAChF,uEAAoE;AACpE,iEAA8D;AAC9D,wDAAqD;AACrD,0EAAuE;AACvE,4CAAyC;AACzC,2DAAwD;AACxD,4CAAyC;AACzC,kDAA+C;AAC/C,0EAAuE;AACvE,kDAA+C;AAC/C,sFAAmF;AACnF,oEAAiE;AACjE,kDAA+C;AAC/C,iEAA8D;AAC9D,qDAAkD;AAClD,mFAAgF;AAChF,oEAAiE;AACjE,2DAAwD;AACxD,2DAAwD;AACxD,8DAA2D;AAC3D,oEAAiE;AACjE,2DAAwD;AACxD,qDAAkD;AAClD,oEAAiE;AACjE,iEAA8D;AAC9D,wDAAqD;AACrD,6EAA0E;AAC1E,wDAAqD;AACrD,yFAAsF;AACtF,sCAAmC;AACnC,8DAA2D;AAC3D,qDAAkD;AAClD,sCAAmC;AACnC,oEAAiE;AACjE,yCAAsC;AAEzB,QAAA,MAAM,GAAmB;IACpC,SAAS,EAAT,qBAAS;IACT,eAAe,EAAf,iCAAe;IACf,aAAa,EAAb,6BAAa;IACb,KAAK,EAAL,aAAK;IACL,kBAAkB,EAAlB,uCAAkB;IAClB,aAAa,EAAb,6BAAa;IACb,WAAW,EAAX,yBAAW;IACX,UAAU,EAAV,uBAAU;IACV,YAAY,EAAZ,2BAAY;IACZ,QAAQ,EAAR,mBAAQ;IACR,uBAAuB,EAAvB,iDAAuB;IACvB,YAAY,EAAZ,2BAAY;IACZ,mBAAmB,EAAnB,yCAAmB;IACnB,iBAAiB,EAAjB,qCAAiB;IACjB,sBAAsB,EAAtB,+CAAsB;IACtB,aAAa,EAAb,6BAAa;IACb,mBAAmB,EAAnB,yCAAmB;IACnB,oBAAoB,EAApB,2CAAoB;IACpB,0BAA0B,EAA1B,uDAA0B;IAC1B,mBAAmB,EAAnB,yCAAmB;IACnB,eAAe,EAAf,iCAAe;IACf,aAAa,EAAb,6BAAa;IACb,UAAU,EAAV,uBAAU;IACV,gBAAgB,EAAhB,mCAAgB;IAChB,MAAM,EAAN,eAAM;IACN,WAAW,EAAX,yBAAW;IACX,MAAM,EAAN,eAAM;IACN,QAAQ,EAAR,mBAAQ;IACR,gBAAgB,EAAhB,mCAAgB;IAChB,QAAQ,EAAR,mBAAQ;IACR,oBAAoB,EAApB,2CAAoB;IACpB,cAAc,EAAd,+BAAc;IACd,QAAQ,EAAR,mBAAQ;IACR,aAAa,EAAb,6BAAa;IACb,SAAS,EAAT,qBAAS;IACT,mBAAmB,EAAnB,yCAAmB;IACnB,cAAc,EAAd,+BAAc;IACd,WAAW,EAAX,yBAAW;IACX,WAAW,EAAX,yBAAW;IACX,YAAY,EAAZ,2BAAY;IACZ,cAAc,EAAd,+BAAc;IACd,WAAW,EAAX,yBAAW;IACX,SAAS,EAAT,qBAAS;IACT,cAAc,EAAd,+BAAc;IACd,aAAa,EAAb,6BAAa;IACb,UAAU,EAAV,uBAAU;IACV,iBAAiB,EAAjB,qCAAiB;IACjB,UAAU,EAAV,uBAAU;IACV,qBAAqB,EAArB,6CAAqB;IACrB,IAAI,EAAJ,WAAI;IACJ,YAAY,EAAZ,2BAAY;IACZ,SAAS,EAAT,qBAAS;IACT,IAAI,EAAJ,WAAI;IACJ,cAAc,EAAd,+BAAc;IACd,KAAK,EAAL,aAAK;CACN,CAAC"}
1
+ {"version":3,"file":"Blocks.js","sourceRoot":"","sources":["../../src/components/Blocks.ts"],"names":[],"mappings":";;AACA,qDAAkD;AAClD,uEAAoE;AACpE,iEAA8D;AAC9D,yCAAsC;AACtC,gFAA6E;AAC7E,iEAA8D;AAC9D,2DAAwD;AACxD,wDAAqD;AACrD,8DAA2D;AAC3D,kDAA+C;AAC/C,+FAA4F;AAC5F,8DAA2D;AAC3D,mFAAgF;AAChF,6EAA0E;AAC1E,4FAAyF;AACzF,iEAA8D;AAC9D,mFAAgF;AAChF,sFAAmF;AACnF,wGAAqG;AACrG,mFAAgF;AAChF,uEAAoE;AACpE,iEAA8D;AAC9D,wDAAqD;AACrD,0EAAuE;AACvE,wDAAqD;AACrD,4CAAyC;AACzC,2DAAwD;AACxD,4CAAyC;AACzC,kDAA+C;AAC/C,0EAAuE;AACvE,kDAA+C;AAC/C,sFAAmF;AACnF,oEAAiE;AACjE,kDAA+C;AAC/C,iEAA8D;AAC9D,qDAAkD;AAClD,mFAAgF;AAChF,oEAAiE;AACjE,2DAAwD;AACxD,2DAAwD;AACxD,8DAA2D;AAC3D,oEAAiE;AACjE,2DAAwD;AACxD,qDAAkD;AAClD,oEAAiE;AACjE,iEAA8D;AAC9D,wDAAqD;AACrD,6EAA0E;AAC1E,wDAAqD;AACrD,yFAAsF;AACtF,sCAAmC;AACnC,8DAA2D;AAC3D,qDAAkD;AAClD,sCAAmC;AACnC,oEAAiE;AACjE,yCAAsC;AAEzB,QAAA,MAAM,GAAmB;IACpC,SAAS,EAAT,qBAAS;IACT,eAAe,EAAf,iCAAe;IACf,aAAa,EAAb,6BAAa;IACb,KAAK,EAAL,aAAK;IACL,kBAAkB,EAAlB,uCAAkB;IAClB,aAAa,EAAb,6BAAa;IACb,WAAW,EAAX,yBAAW;IACX,UAAU,EAAV,uBAAU;IACV,YAAY,EAAZ,2BAAY;IACZ,QAAQ,EAAR,mBAAQ;IACR,uBAAuB,EAAvB,iDAAuB;IACvB,YAAY,EAAZ,2BAAY;IACZ,mBAAmB,EAAnB,yCAAmB;IACnB,iBAAiB,EAAjB,qCAAiB;IACjB,sBAAsB,EAAtB,+CAAsB;IACtB,aAAa,EAAb,6BAAa;IACb,mBAAmB,EAAnB,yCAAmB;IACnB,oBAAoB,EAApB,2CAAoB;IACpB,0BAA0B,EAA1B,uDAA0B;IAC1B,mBAAmB,EAAnB,yCAAmB;IACnB,eAAe,EAAf,iCAAe;IACf,aAAa,EAAb,6BAAa;IACb,UAAU,EAAV,uBAAU;IACV,gBAAgB,EAAhB,mCAAgB;IAChB,UAAU,EAAV,uBAAU;IACV,MAAM,EAAN,eAAM;IACN,WAAW,EAAX,yBAAW;IACX,MAAM,EAAN,eAAM;IACN,QAAQ,EAAR,mBAAQ;IACR,gBAAgB,EAAhB,mCAAgB;IAChB,QAAQ,EAAR,mBAAQ;IACR,oBAAoB,EAApB,2CAAoB;IACpB,cAAc,EAAd,+BAAc;IACd,QAAQ,EAAR,mBAAQ;IACR,aAAa,EAAb,6BAAa;IACb,SAAS,EAAT,qBAAS;IACT,mBAAmB,EAAnB,yCAAmB;IACnB,cAAc,EAAd,+BAAc;IACd,WAAW,EAAX,yBAAW;IACX,WAAW,EAAX,yBAAW;IACX,YAAY,EAAZ,2BAAY;IACZ,cAAc,EAAd,+BAAc;IACd,WAAW,EAAX,yBAAW;IACX,SAAS,EAAT,qBAAS;IACT,cAAc,EAAd,+BAAc;IACd,aAAa,EAAb,6BAAa;IACb,UAAU,EAAV,uBAAU;IACV,iBAAiB,EAAjB,qCAAiB;IACjB,UAAU,EAAV,uBAAU;IACV,qBAAqB,EAArB,6CAAqB;IACrB,IAAI,EAAJ,WAAI;IACJ,YAAY,EAAZ,2BAAY;IACZ,SAAS,EAAT,qBAAS;IACT,IAAI,EAAJ,WAAI;IACJ,cAAc,EAAd,+BAAc;IACd,KAAK,EAAL,aAAK;CACN,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { JSXBlock, UniBlockProps } from '../../model/JSXBlock';
2
+ import type { FiltrationContent } from './FiltrationContent';
3
+ interface FiltrationProps extends FiltrationContent, UniBlockProps {
4
+ }
5
+ export declare const Filtration: JSXBlock<FiltrationProps>;
6
+ export {};
@@ -0,0 +1,17 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.Filtration = void 0;
3
+ const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
+ const uni_jsx_1 = require("@redneckz/uni-jsx");
5
+ const useForm_1 = require("../../hooks/useForm");
6
+ const BlockWrapper_1 = require("../../ui-kit/BlockWrapper");
7
+ const Button_1 = require("../../ui-kit/Button/Button");
8
+ const style_1 = require("../../utils/style");
9
+ const FiltrationInner_1 = require("./FiltrationInner");
10
+ const renderFormItem_1 = require("./renderFormItem");
11
+ exports.Filtration = (0, uni_jsx_1.JSX)(({ className, filtrationSchema = {}, resetButton, ...rest }) => {
12
+ const { formState, register, resetForm } = (0, useForm_1.useForm)();
13
+ return ((0, jsx_runtime_1.jsxs)(BlockWrapper_1.BlockWrapper, { className: (0, style_1.style)('p-9', className), ...rest, children: [(0, jsx_runtime_1.jsxs)("form", { className: "flex justify-between", children: [(0, jsx_runtime_1.jsx)("div", { className: "flex gap-11", children: Object.keys(filtrationSchema).map((0, renderFormItem_1.renderFormItem)(filtrationSchema, register)) }), resetButton ? ((0, jsx_runtime_1.jsx)("div", { children: (0, jsx_runtime_1.jsx)(Button_1.Button, { className: "w-72", text: resetButton.text, version: resetButton.buttonVersion, onClick: resetForm }) })) : null] }), (0, jsx_runtime_1.jsx)(FiltrationInner_1.FiltrationInner, { filtrationState: formState, ...rest })] }));
14
+ });
15
+ exports.Filtration.childrenTypes = ['ProductTile'];
16
+ exports.Filtration.childSchema = (content) => content?.filtrationSchema || {};
17
+ //# sourceMappingURL=Filtration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Filtration.js","sourceRoot":"","sources":["../../../src/components/Filtration/Filtration.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,iDAA8C;AAE9C,4DAAyD;AACzD,uDAAoD;AACpD,6CAA0C;AAE1C,uDAAoD;AACpD,qDAAkD;AAIrC,QAAA,UAAU,GAA8B,IAAA,aAAG,EACtD,CAAC,EAAE,SAAS,EAAE,gBAAgB,GAAG,EAAE,EAAE,WAAW,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE;IAC7D,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAA,iBAAO,GAAE,CAAC;IAErD,OAAO,CACL,wBAAC,2BAAY,IAAC,SAAS,EAAE,IAAA,aAAK,EAAC,KAAK,EAAE,SAAS,CAAC,KAAM,IAAI,aACxD,kCAAM,SAAS,EAAC,sBAAsB,aACpC,gCAAK,SAAS,EAAC,aAAa,YACzB,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,IAAA,+BAAc,EAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC,GAC1E,EACL,WAAW,CAAC,CAAC,CAAC,CACb,0CACE,uBAAC,eAAM,IACL,SAAS,EAAC,MAAM,EAChB,IAAI,EAAE,WAAW,CAAC,IAAI,EACtB,OAAO,EAAE,WAAW,CAAC,aAAa,EAClC,OAAO,EAAE,SAAS,GAClB,GACE,CACP,CAAC,CAAC,CAAC,IAAI,IACH,EACP,uBAAC,iCAAe,IAAC,eAAe,EAAE,SAAS,KAAM,IAAI,GAAI,IAC5C,CAChB,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,kBAAU,CAAC,aAAa,GAAG,CAAC,aAAa,CAAC,CAAC;AAC3C,kBAAU,CAAC,WAAW,GAAG,CAAC,OAA2B,EAAE,EAAE,CAAC,OAAO,EAAE,gBAAgB,IAAI,EAAE,CAAC"}
@@ -0,0 +1,78 @@
1
+ import type { ButtonVersion } from '../../model/ButtonVersion';
2
+ /**
3
+ * @title Заголовок
4
+ */
5
+ declare type Title = string;
6
+ /**
7
+ * @title Ключи
8
+ */
9
+ declare type Enum = string[];
10
+ /**
11
+ * @title Имена
12
+ */
13
+ declare type EnumNames = string[];
14
+ export declare type StringEnum = {
15
+ title?: Title;
16
+ /**
17
+ * @default string
18
+ * @hidden
19
+ */
20
+ type?: 'string';
21
+ enum?: Enum;
22
+ enumNames?: EnumNames;
23
+ };
24
+ export declare type StringArray = {
25
+ title?: Title;
26
+ /**
27
+ * @default array
28
+ * @hidden
29
+ */
30
+ type?: 'array';
31
+ items?: {
32
+ /**
33
+ * @default string
34
+ * @hidden
35
+ */
36
+ type?: 'string';
37
+ enum?: Enum;
38
+ enumNames?: EnumNames;
39
+ };
40
+ };
41
+ export declare type FiltrationSchema = {
42
+ /** @title Тип недвижимости */
43
+ propertyType?: StringEnum;
44
+ /** @title Этап строительства */
45
+ stage?: StringEnum;
46
+ /** @title Категории */
47
+ categories?: StringEnum;
48
+ /** @title Дополнительно */
49
+ extraOptions?: StringEnum;
50
+ };
51
+ /**
52
+ * @title Кнопка сброса
53
+ */
54
+ export declare type ResetButton = {
55
+ /**
56
+ * @title Текст кнопки
57
+ */
58
+ text: string;
59
+ /**
60
+ * @title Цвет кнопки
61
+ */
62
+ buttonVersion: ButtonVersion;
63
+ };
64
+ export interface FiltrationInnerContent {
65
+ /** @title Название кнопки */
66
+ label?: string;
67
+ /** @title Количество отображаемых предметов */
68
+ topItemsCount?: number;
69
+ }
70
+ /**
71
+ * @title Фильтрация
72
+ */
73
+ export interface FiltrationContent extends FiltrationInnerContent {
74
+ /** @title Параметры фильтрации */
75
+ filtrationSchema?: FiltrationSchema;
76
+ resetButton?: ResetButton;
77
+ }
78
+ export {};
@@ -0,0 +1,2 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ //# sourceMappingURL=FiltrationContent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FiltrationContent.js","sourceRoot":"","sources":["../../../src/components/Filtration/FiltrationContent.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import type { UniBlockProps } from '../../model/JSXBlock';
2
+ import type { FiltrationInnerContent } from './FiltrationContent';
3
+ interface FiltrationInnerProps extends FiltrationInnerContent, UniBlockProps {
4
+ filtrationState?: Record<string, any>;
5
+ }
6
+ export declare const FiltrationInner: import("@redneckz/uni-jsx").UNIComponent<FiltrationInnerProps, any, any>;
7
+ export {};
@@ -0,0 +1,23 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.FiltrationInner = void 0;
3
+ const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
+ const uni_jsx_1 = require("@redneckz/uni-jsx");
5
+ const renderBlockList_1 = require("../../BlockRenderer/renderBlockList");
6
+ const DefaultFoldButton_1 = require("../../ui-kit/Foldable/DefaultFoldButton");
7
+ const Foldable_1 = require("../../ui-kit/Foldable/Foldable");
8
+ const FoldableSection_1 = require("../../ui-kit/Foldable/FoldableSection");
9
+ const style_1 = require("../../utils/style");
10
+ const ErrorBlock_1 = require("../ErrorBlock/ErrorBlock");
11
+ const checkShouldRenderBlock_1 = require("./checkShouldRenderBlock");
12
+ const ICONS = ['ArrowDownIcon', 'ArrowUpIcon'];
13
+ const resultsGridStyle = 'grid grid-cols-12 gap-1 border-box';
14
+ exports.FiltrationInner = (0, uni_jsx_1.JSX)(({ label = '', filtrationState = {}, topItemsCount = 0, block, ...rest }) => {
15
+ const blocksToRender = block?.blocks?.filter((b) => (0, checkShouldRenderBlock_1.checkShouldRenderBlock)(filtrationState, b.content || {})) || [];
16
+ const [visibleBlocks, hiddenBlocks] = topItemsCount > 0
17
+ ? [blocksToRender.slice(0, topItemsCount), blocksToRender.slice(topItemsCount)]
18
+ : [blocksToRender, []];
19
+ return ((0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)("div", { className: (0, style_1.style)(blocksToRender.length ? 'hidden' : ''), children: (0, jsx_runtime_1.jsx)(ErrorBlock_1.ErrorBlock, { error: { errorContentType: 'Image' }, title: "\u041D\u0435\u0442 \u043F\u043E\u0434\u0445\u043E\u0434\u044F\u0449\u0435\u0439 \u0438\u043F\u043E\u0442\u0435\u0447\u043D\u043E\u0439 \u043F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u044B", subtitle: "\u041F\u043E\u043F\u0440\u043E\u0431\u0443\u0439\u0442\u0435 \u043E\u0447\u0438\u0441\u0442\u0438\u0442\u044C \u0444\u0438\u043B\u044C\u0442\u0440\u044B" }) }), (0, jsx_runtime_1.jsxs)("div", { className: (0, style_1.style)(blocksToRender.length ? '' : 'hidden'), children: [(0, jsx_runtime_1.jsx)("div", { className: resultsGridStyle, children: (0, renderBlockList_1.renderBlocksList)(visibleBlocks, { ...rest.options, parent: block }) }), (0, jsx_runtime_1.jsx)(Foldable_1.Foldable, { renderFoldableSection: ({ isUnfolded }) => {
20
+ return ((0, jsx_runtime_1.jsx)(FoldableSection_1.FoldableSection, { className: resultsGridStyle, isUnfolded: isUnfolded, children: (0, renderBlockList_1.renderBlocksList)(hiddenBlocks, { ...rest.options, parent: block }) }));
21
+ }, renderFoldButton: ({ isUnfolded, onToggle }) => ((0, jsx_runtime_1.jsx)(DefaultFoldButton_1.DefaultFoldButton, { className: (0, style_1.style)('mt-11', topItemsCount < 1 ? 'hidden' : ''), disabled: !hiddenBlocks?.length, label: label, icon: ICONS[Number(isUnfolded)], dataTheme: rest.options?.page?.colorPalette, onClick: onToggle })) })] })] }));
22
+ });
23
+ //# sourceMappingURL=FiltrationInner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FiltrationInner.js","sourceRoot":"","sources":["../../../src/components/Filtration/FiltrationInner.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,yEAAuE;AAGvE,+EAA4E;AAC5E,6DAA0D;AAC1D,2EAAwE;AACxE,6CAA0C;AAC1C,yDAAsD;AACtD,qEAAkE;AAGlE,MAAM,KAAK,GAAe,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;AAE3D,MAAM,gBAAgB,GAAG,oCAAoC,CAAC;AAMjD,QAAA,eAAe,GAAG,IAAA,aAAG,EAChC,CAAC,EAAE,KAAK,GAAG,EAAE,EAAE,eAAe,GAAG,EAAE,EAAE,aAAa,GAAG,CAAC,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE;IAC1E,MAAM,cAAc,GAClB,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,+CAAsB,EAAC,eAAe,EAAE,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAE/F,MAAM,CAAC,aAAa,EAAE,YAAY,CAAC,GACjC,aAAa,GAAG,CAAC;QACf,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC,EAAE,cAAc,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAC/E,CAAC,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;IAE3B,OAAO,CACL,4CACE,gCAAK,SAAS,EAAE,IAAA,aAAK,EAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,YAC1D,uBAAC,uBAAU,IACT,KAAK,EAAE,EAAE,gBAAgB,EAAE,OAAO,EAAE,EACpC,KAAK,EAAC,+LAAoC,EAC1C,QAAQ,EAAC,0JAA6B,GACtC,GACE,EACN,iCAAK,SAAS,EAAE,IAAA,aAAK,EAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,aAC1D,gCAAK,SAAS,EAAE,gBAAgB,YAC7B,IAAA,kCAAgB,EAAC,aAAa,EAAE,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAChE,EACN,uBAAC,mBAAQ,IACP,qBAAqB,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE;4BACxC,OAAO,CACL,uBAAC,iCAAe,IAAC,SAAS,EAAE,gBAAgB,EAAE,UAAU,EAAE,UAAU,YACjE,IAAA,kCAAgB,EAAC,YAAY,EAAE,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GACnD,CACnB,CAAC;wBACJ,CAAC,EACD,gBAAgB,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAC9C,uBAAC,qCAAiB,IAChB,SAAS,EAAE,IAAA,aAAK,EAAC,OAAO,EAAE,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAC5D,QAAQ,EAAE,CAAC,YAAY,EAAE,MAAM,EAC/B,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAC/B,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,YAAY,EAC3C,OAAO,EAAE,QAAQ,GACjB,CACH,GACD,IACE,IACF,CACP,CAAC;AACJ,CAAC,CACF,CAAC"}
@@ -0,0 +1 @@
1
+ export declare const checkShouldRenderBlock: (pattern: Record<string, any>, target: Record<string, any>) => boolean;
@@ -0,0 +1,11 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.checkShouldRenderBlock = void 0;
3
+ const isSingularFieldMatch = (key, pattern) => (target) => pattern[key] === undefined || pattern[key] === target[key];
4
+ const isMultipleFieldMatch = (key, pattern) => (target) => pattern[key] === undefined || pattern[key]?.every((_) => target[key]?.includes(_));
5
+ const checkShouldRenderBlock = (pattern, target) => Object.entries(pattern)
6
+ .map(([key, subPattern]) => Array.isArray(subPattern)
7
+ ? isMultipleFieldMatch(key, pattern)
8
+ : isSingularFieldMatch(key, pattern))
9
+ .every((predicate) => predicate(target));
10
+ exports.checkShouldRenderBlock = checkShouldRenderBlock;
11
+ //# sourceMappingURL=checkShouldRenderBlock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkShouldRenderBlock.js","sourceRoot":"","sources":["../../../src/components/Filtration/checkShouldRenderBlock.ts"],"names":[],"mappings":";;AAAA,MAAM,oBAAoB,GACxB,CAAsD,GAAW,EAAE,OAAU,EAAE,EAAE,CACjF,CAAC,MAAS,EAAE,EAAE,CACZ,OAAO,CAAC,GAAG,CAAC,KAAK,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,GAAG,CAAC,CAAC;AAE/D,MAAM,oBAAoB,GACxB,CAAwD,GAAW,EAAE,OAAU,EAAE,EAAE,CACnF,CAAC,MAAS,EAAE,EAAE,CACZ,OAAO,CAAC,GAAG,CAAC,KAAK,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AAEhF,MAAM,sBAAsB,GAAG,CAAC,OAA4B,EAAE,MAA2B,EAAE,EAAE,CAClG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;KACpB,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,UAAU,CAAC,EAAE,EAAE,CACzB,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;IACvB,CAAC,CAAC,oBAAoB,CAAC,GAAG,EAAE,OAAO,CAAC;IACpC,CAAC,CAAC,oBAAoB,CAAC,GAAG,EAAE,OAAO,CAAC,CACvC;KACA,KAAK,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;AAPhC,QAAA,sBAAsB,0BAOU"}
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import type { FormElementRegisterer } from '../../hooks/useForm';
3
+ import type { FiltrationSchema } from './FiltrationContent';
4
+ export declare const renderFormItem: (filtrationSchema: FiltrationSchema, register: FormElementRegisterer) => (key: string) => JSX.Element | null;
@@ -0,0 +1,21 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.renderFormItem = void 0;
3
+ const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
+ const SlideCheckboxGroup_1 = require("../../ui-kit/SlideCheckboxGroup/SlideCheckboxGroup");
5
+ const Text_1 = require("../../ui-kit/Text/Text");
6
+ const renderFormItem = (filtrationSchema, register) => (key) => {
7
+ const item = filtrationSchema[key];
8
+ const type = item?.type;
9
+ switch (type) {
10
+ case 'string':
11
+ return renderRadioButtons(key, register)(item);
12
+ default:
13
+ return null;
14
+ }
15
+ };
16
+ exports.renderFormItem = renderFormItem;
17
+ const renderRadioButtons = (key, register) => (item) => {
18
+ const options = item?.enum?.map((e, i) => ({ value: e, title: item?.enumNames?.[i] || '' })) || [];
19
+ return ((0, jsx_runtime_1.jsxs)("div", { role: "radiogroup", children: [item?.title ? ((0, jsx_runtime_1.jsx)("div", { className: "mb-4", children: (0, jsx_runtime_1.jsx)(Text_1.Text, { size: "text-m", font: "font-light", color: "text-secondary-text", children: item.title }) })) : null, (0, jsx_runtime_1.jsx)(SlideCheckboxGroup_1.SlideCheckboxGroup, { items: options, multiple: false, ...register(key) })] }, key));
20
+ };
21
+ //# sourceMappingURL=renderFormItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"renderFormItem.js","sourceRoot":"","sources":["../../../src/components/Filtration/renderFormItem.tsx"],"names":[],"mappings":";;;AACA,2FAAwF;AACxF,iDAA8C;AAGvC,MAAM,cAAc,GACzB,CAAC,gBAAkC,EAAE,QAA+B,EAAE,EAAE,CAAC,CAAC,GAAW,EAAE,EAAE;IACvF,MAAM,IAAI,GAAG,gBAAgB,CAAC,GAAoC,CAAC,CAAC;IACpE,MAAM,IAAI,GAAG,IAAI,EAAE,IAAI,CAAC;IAExB,QAAQ,IAAI,EAAE;QACZ,KAAK,QAAQ;YACX,OAAO,kBAAkB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC;QACjD;YACE,OAAO,IAAI,CAAC;KACf;AACH,CAAC,CAAC;AAXS,QAAA,cAAc,kBAWvB;AAEJ,MAAM,kBAAkB,GACtB,CAAC,GAAW,EAAE,QAA+B,EAAE,EAAE,CAAC,CAAC,IAAiB,EAAE,EAAE;IACtE,MAAM,OAAO,GACX,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAErF,OAAO,CACL,iCAAK,IAAI,EAAC,YAAY,aACnB,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CACb,gCAAK,SAAS,EAAC,MAAM,YACnB,uBAAC,WAAI,IAAC,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAC,YAAY,EAAC,KAAK,EAAC,qBAAqB,YAC9D,IAAI,CAAC,KAAK,GACN,GACH,CACP,CAAC,CAAC,CAAC,IAAI,EACR,uBAAC,uCAAkB,IAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,KAAM,QAAQ,CAAC,GAAG,CAAC,GAAI,KARhD,GAAG,CASzB,CACP,CAAC;AACJ,CAAC,CAAC"}
@@ -29,6 +29,8 @@ export declare type ProductBlockInnerContent = HeadlineProps & RichTextProps & L
29
29
  * @hidden
30
30
  */
31
31
  textBlockClassName?: string;
32
+ /** @title Картинка справа/текст слева */
33
+ directionRight?: boolean;
32
34
  };
33
35
  /**
34
36
  * @title Продуктовый блок
@@ -10,10 +10,10 @@ const style_1 = require("../../utils/style");
10
10
  const BaseTile_1 = require("../BaseTile/BaseTile");
11
11
  const Headline_1 = require("../Headline/Headline");
12
12
  const renderBenefit_1 = require("./renderBenefit");
13
- exports.ProductBlockInner = (0, uni_jsx_1.JSX)(({ className = '', title, headlineVersion = 'L', description, benefitsCountOfRow = 3, benefits, benefitsVersion, buttons, footnote, image, __html, items, version = 'primary', isDotted = true, textBlockClassName = '', }) => {
13
+ exports.ProductBlockInner = (0, uni_jsx_1.JSX)(({ className = '', title, headlineVersion = 'L', description, benefitsCountOfRow = 3, benefits, benefitsVersion, buttons, footnote, image, __html, items, version = 'primary', isDotted = true, textBlockClassName = '', directionRight = true, }) => {
14
14
  const benefitsCount = benefits?.filter((_) => _.label)?.length;
15
15
  const benefitsContainerStyles = getBenefitsContainerStyles(benefitsCountOfRow);
16
- return ((0, jsx_runtime_1.jsxs)("div", { className: (0, style_1.style)('flex grow justify-between items-stretch h-full', className), children: [(0, jsx_runtime_1.jsxs)("div", { className: (0, style_1.style)('flex flex-col', textBlockClassName), children: [(0, jsx_runtime_1.jsx)(Headline_1.Headline, { className: "!p-0 max-w-[600px]", title: title, description: description, headlineVersion: headlineVersion, align: "text-left" }), (0, jsx_runtime_1.jsxs)("div", { className: "flex flex-col justify-between h-full", children: [(0, jsx_runtime_1.jsxs)(BaseTile_1.BaseTile, { buttons: (0, renderButtonsSection_1.renderButtonsSection)(buttons), children: [benefitsCount ? ((0, jsx_runtime_1.jsx)("div", { className: benefitsContainerStyles, children: benefits?.map((0, renderBenefit_1.renderBenefit)(version, benefitsVersion)) })) : null, __html ? ((0, jsx_runtime_1.jsx)("div", { className: "mt-5", children: (0, jsx_runtime_1.jsx)(RichText_1.RichText, { __html: __html }) })) : null, items?.length ? ((0, jsx_runtime_1.jsx)(List_1.List, { className: "mt-5 text-h6", items: items, itemClassName: "mb-[7px]", isDotted: isDotted })) : null] }), footnote ? (0, jsx_runtime_1.jsx)("p", { className: "text-m-light pt-12", children: footnote }) : null] })] }), image?.src && (0, jsx_runtime_1.jsx)(Img_1.Img, { className: "mt-[-50px]", image: image })] }));
16
+ return ((0, jsx_runtime_1.jsxs)("div", { className: (0, style_1.style)('flex grow justify-between items-stretch h-full', className), children: [image?.src ? ((0, jsx_runtime_1.jsx)(Img_1.Img, { className: `mt-[-50px] ${directionRight ? 'order-2' : ''}`, image: image })) : null, (0, jsx_runtime_1.jsxs)("div", { className: (0, style_1.style)('flex flex-col', textBlockClassName), children: [(0, jsx_runtime_1.jsx)(Headline_1.Headline, { className: "!p-0 max-w-[600px]", title: title, description: description, headlineVersion: headlineVersion, align: "text-left" }), (0, jsx_runtime_1.jsxs)("div", { className: "flex flex-col justify-between h-full", children: [(0, jsx_runtime_1.jsxs)(BaseTile_1.BaseTile, { buttons: (0, renderButtonsSection_1.renderButtonsSection)(buttons), children: [benefitsCount ? ((0, jsx_runtime_1.jsx)("div", { className: benefitsContainerStyles, children: benefits?.map((0, renderBenefit_1.renderBenefit)(version, benefitsVersion)) })) : null, __html ? ((0, jsx_runtime_1.jsx)("div", { className: "mt-5", children: (0, jsx_runtime_1.jsx)(RichText_1.RichText, { __html: __html }) })) : null, items?.length ? ((0, jsx_runtime_1.jsx)(List_1.List, { className: "mt-5 text-h6", items: items, itemClassName: "mb-[7px]", isDotted: isDotted })) : null] }), footnote ? (0, jsx_runtime_1.jsx)("p", { className: "text-m-light pt-12", children: footnote }) : null] })] })] }));
17
17
  });
18
18
  const getBenefitsContainerStyles = (benefitsCountOfRow = 2) => `gap-6 mt-6 ${benefitsCountOfRow > 2
19
19
  ? 'inline-grid grid-cols-[auto_auto_auto]'
@@ -1 +1 @@
1
- {"version":3,"file":"ProductBlockInner.js","sourceRoot":"","sources":["../../../src/components/ProductBlock/ProductBlockInner.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AAExC,mFAAgF;AAChF,8CAA2C;AAC3C,iDAA8C;AAC9C,6DAA0D;AAC1D,6CAA0C;AAC1C,mDAAgD;AAChD,mDAAgD;AAEhD,mDAAgD;AAInC,QAAA,iBAAiB,GAAG,IAAA,aAAG,EAClC,CAAC,EACC,SAAS,GAAG,EAAE,EACd,KAAK,EACL,eAAe,GAAG,GAAG,EACrB,WAAW,EACX,kBAAkB,GAAG,CAAC,EACtB,QAAQ,EACR,eAAe,EACf,OAAO,EACP,QAAQ,EACR,KAAK,EACL,MAAM,EACN,KAAK,EACL,OAAO,GAAG,SAAS,EACnB,QAAQ,GAAG,IAAI,EACf,kBAAkB,GAAG,EAAE,GACxB,EAAE,EAAE;IACH,MAAM,aAAa,GAAG,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAC/D,MAAM,uBAAuB,GAAG,0BAA0B,CAAC,kBAAkB,CAAC,CAAC;IAE/E,OAAO,CACL,iCAAK,SAAS,EAAE,IAAA,aAAK,EAAC,gDAAgD,EAAE,SAAS,CAAC,aAChF,iCAAK,SAAS,EAAE,IAAA,aAAK,EAAC,eAAe,EAAE,kBAAkB,CAAC,aACxD,uBAAC,mBAAQ,IACP,SAAS,EAAC,oBAAoB,EAC9B,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,WAAW,EACxB,eAAe,EAAE,eAAe,EAChC,KAAK,EAAC,WAAW,GACjB,EACF,iCAAK,SAAS,EAAC,sCAAsC,aACnD,wBAAC,mBAAQ,IAAC,OAAO,EAAE,IAAA,2CAAoB,EAAC,OAAO,CAAC,aAC7C,aAAa,CAAC,CAAC,CAAC,CACf,gCAAK,SAAS,EAAE,uBAAuB,YACpC,QAAQ,EAAE,GAAG,CAAC,IAAA,6BAAa,EAAC,OAAO,EAAE,eAAe,CAAC,CAAC,GACnD,CACP,CAAC,CAAC,CAAC,IAAI,EACP,MAAM,CAAC,CAAC,CAAC,CACR,gCAAK,SAAS,EAAC,MAAM,YACnB,uBAAC,mBAAQ,IAAC,MAAM,EAAE,MAAM,GAAI,GACxB,CACP,CAAC,CAAC,CAAC,IAAI,EACP,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CACf,uBAAC,WAAI,IACH,SAAS,EAAC,cAAc,EACxB,KAAK,EAAE,KAAK,EACZ,aAAa,EAAC,UAAU,EACxB,QAAQ,EAAE,QAAQ,GAClB,CACH,CAAC,CAAC,CAAC,IAAI,IACC,EACV,QAAQ,CAAC,CAAC,CAAC,8BAAG,SAAS,EAAC,oBAAoB,YAAE,QAAQ,GAAK,CAAC,CAAC,CAAC,IAAI,IAC/D,IACF,EACL,KAAK,EAAE,GAAG,IAAI,uBAAC,SAAG,IAAC,SAAS,EAAC,YAAY,EAAC,KAAK,EAAE,KAAK,GAAI,IACvD,CACP,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,0BAA0B,GAAG,CAAC,kBAAkB,GAAG,CAAC,EAAE,EAAE,CAC5D,cACE,kBAAkB,GAAG,CAAC;IACpB,CAAC,CAAC,wCAAwC;IAC1C,CAAC,CAAC,mCACN,EAAE,CAAC"}
1
+ {"version":3,"file":"ProductBlockInner.js","sourceRoot":"","sources":["../../../src/components/ProductBlock/ProductBlockInner.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AAExC,mFAAgF;AAChF,8CAA2C;AAC3C,iDAA8C;AAC9C,6DAA0D;AAC1D,6CAA0C;AAC1C,mDAAgD;AAChD,mDAAgD;AAEhD,mDAAgD;AAInC,QAAA,iBAAiB,GAAG,IAAA,aAAG,EAClC,CAAC,EACC,SAAS,GAAG,EAAE,EACd,KAAK,EACL,eAAe,GAAG,GAAG,EACrB,WAAW,EACX,kBAAkB,GAAG,CAAC,EACtB,QAAQ,EACR,eAAe,EACf,OAAO,EACP,QAAQ,EACR,KAAK,EACL,MAAM,EACN,KAAK,EACL,OAAO,GAAG,SAAS,EACnB,QAAQ,GAAG,IAAI,EACf,kBAAkB,GAAG,EAAE,EACvB,cAAc,GAAG,IAAI,GACtB,EAAE,EAAE;IACH,MAAM,aAAa,GAAG,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAC/D,MAAM,uBAAuB,GAAG,0BAA0B,CAAC,kBAAkB,CAAC,CAAC;IAE/E,OAAO,CACL,iCAAK,SAAS,EAAE,IAAA,aAAK,EAAC,gDAAgD,EAAE,SAAS,CAAC,aAC/E,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CACZ,uBAAC,SAAG,IAAC,SAAS,EAAE,cAAc,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,GAAI,CAClF,CAAC,CAAC,CAAC,IAAI,EACR,iCAAK,SAAS,EAAE,IAAA,aAAK,EAAC,eAAe,EAAE,kBAAkB,CAAC,aACxD,uBAAC,mBAAQ,IACP,SAAS,EAAC,oBAAoB,EAC9B,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,WAAW,EACxB,eAAe,EAAE,eAAe,EAChC,KAAK,EAAC,WAAW,GACjB,EACF,iCAAK,SAAS,EAAC,sCAAsC,aACnD,wBAAC,mBAAQ,IAAC,OAAO,EAAE,IAAA,2CAAoB,EAAC,OAAO,CAAC,aAC7C,aAAa,CAAC,CAAC,CAAC,CACf,gCAAK,SAAS,EAAE,uBAAuB,YACpC,QAAQ,EAAE,GAAG,CAAC,IAAA,6BAAa,EAAC,OAAO,EAAE,eAAe,CAAC,CAAC,GACnD,CACP,CAAC,CAAC,CAAC,IAAI,EACP,MAAM,CAAC,CAAC,CAAC,CACR,gCAAK,SAAS,EAAC,MAAM,YACnB,uBAAC,mBAAQ,IAAC,MAAM,EAAE,MAAM,GAAI,GACxB,CACP,CAAC,CAAC,CAAC,IAAI,EACP,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CACf,uBAAC,WAAI,IACH,SAAS,EAAC,cAAc,EACxB,KAAK,EAAE,KAAK,EACZ,aAAa,EAAC,UAAU,EACxB,QAAQ,EAAE,QAAQ,GAClB,CACH,CAAC,CAAC,CAAC,IAAI,IACC,EACV,QAAQ,CAAC,CAAC,CAAC,8BAAG,SAAS,EAAC,oBAAoB,YAAE,QAAQ,GAAK,CAAC,CAAC,CAAC,IAAI,IAC/D,IACF,IACF,CACP,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,0BAA0B,GAAG,CAAC,kBAAkB,GAAG,CAAC,EAAE,EAAE,CAC5D,cACE,kBAAkB,GAAG,CAAC;IACpB,CAAC,CAAC,wCAAwC;IAC1C,CAAC,CAAC,mCACN,EAAE,CAAC"}
@@ -0,0 +1,12 @@
1
+ export declare type FormElementRegisterer = ReturnType<typeof useForm>['register'];
2
+ export declare const useForm: <FormState extends Record<string, any>>(initialState?: Partial<FormState>) => {
3
+ formState: Partial<FormState>;
4
+ register: <FieldName extends keyof FormState>(fieldName: FieldName) => {
5
+ value?: undefined;
6
+ onChange?: undefined;
7
+ } | {
8
+ value: Partial<FormState>[FieldName];
9
+ onChange: Partial<Record<keyof FormState, () => void>>[FieldName];
10
+ };
11
+ resetForm: () => void;
12
+ };
@@ -0,0 +1,21 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.useForm = void 0;
3
+ const hooks_1 = require("@redneckz/uni-jsx/lib/hooks");
4
+ const useForm = (initialState = {}) => {
5
+ const [formState, setFormState] = (0, hooks_1.useState)(initialState);
6
+ const handlersMap = (0, hooks_1.useRef)({});
7
+ const register = (fieldName) => {
8
+ if (!handlersMap.current) {
9
+ return {};
10
+ }
11
+ const handler = (value) => {
12
+ setFormState((prev) => ({ ...prev, [fieldName]: value }));
13
+ };
14
+ handlersMap.current[fieldName] ||= handler;
15
+ return { value: formState?.[fieldName], onChange: handlersMap.current[fieldName] };
16
+ };
17
+ const resetForm = (0, hooks_1.useCallback)(() => setFormState({}), []);
18
+ return { formState, register, resetForm };
19
+ };
20
+ exports.useForm = useForm;
21
+ //# sourceMappingURL=useForm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useForm.js","sourceRoot":"","sources":["../../src/hooks/useForm.ts"],"names":[],"mappings":";;AAAA,uDAA4E;AAIrE,MAAM,OAAO,GAAG,CACrB,eAAmC,EAAE,EACrC,EAAE;IACF,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,IAAA,gBAAQ,EAAqB,YAAY,CAAC,CAAC;IAE7E,MAAM,WAAW,GAAG,IAAA,cAAM,EAA+C,EAAE,CAAC,CAAC;IAE7E,MAAM,QAAQ,GAAG,CAAoC,SAAoB,EAAE,EAAE;QAC3E,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE;YACxB,OAAO,EAAE,CAAC;SACX;QAED,MAAM,OAAO,GAAG,CAAC,KAA4B,EAAE,EAAE;YAC/C,YAAY,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAC5D,CAAC,CAAC;QAEF,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,OAAO,CAAC;QAE3C,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;IACrF,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,IAAA,mBAAW,EAAC,GAAG,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAE1D,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;AAC5C,CAAC,CAAC;AAxBW,QAAA,OAAO,WAwBlB"}
@@ -1,4 +1,5 @@
1
1
  import type { UNIComponent } from '@redneckz/uni-jsx';
2
+ import type { JSONSchema7Definition } from 'json-schema';
2
3
  import type { BlockRendererOptions } from '../BlockRenderer/BlockRendererOptions';
3
4
  import type { SlotName } from './BlockDecorator';
4
5
  import type { BlockVersion } from './BlockVersion';
@@ -22,5 +23,6 @@ export declare type JSXBlock<BlockProps extends UniBlockProps = UniBlockProps> =
22
23
  include?: string[];
23
24
  exclude?: string[];
24
25
  };
26
+ childSchema?: (content: BlockDef['content']) => Record<string, JSONSchema7Definition>;
25
27
  slots?: (props: BlockProps) => SlotName[];
26
28
  };
@@ -0,0 +1,4 @@
1
+ export interface ControlProps<T> {
2
+ value?: T;
3
+ onChange?: (value: T | undefined) => void;
4
+ }
@@ -0,0 +1,2 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ //# sourceMappingURL=ControlProps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ControlProps.js","sourceRoot":"","sources":["../../src/ui-kit/ControlProps.ts"],"names":[],"mappings":""}
@@ -7,6 +7,7 @@ interface DefaultFoldButtonProps {
7
7
  label: string;
8
8
  icon: IconName;
9
9
  dataTheme?: ColorPalette;
10
+ disabled?: boolean;
10
11
  onClick?: () => void;
11
12
  }
12
13
  export declare const DefaultFoldButton: import("@redneckz/uni-jsx").UNIComponent<DefaultFoldButtonProps, any, any>;
@@ -2,16 +2,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
2
2
  exports.renderDefaultFoldButton = exports.DefaultFoldButton = void 0;
3
3
  const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
4
  const uni_jsx_1 = require("@redneckz/uni-jsx");
5
+ const style_1 = require("../../utils/style");
5
6
  const Img_1 = require("../Img/Img");
6
- exports.DefaultFoldButton = (0, uni_jsx_1.JSX)(({ className = '', label, icon, dataTheme = '', onClick }) => {
7
- const STATE_STYLE = 'hover:bg-primary-hover focus:border-primary-text active:bg-primary-active outline-none';
8
- const DIMENSIONS_STYLE = 'flex justify-center w-full px-0 py-5';
9
- return ((0, jsx_runtime_1.jsxs)("button", { className: [
10
- 'border border-transparent bg-primary-main font-sans text-white cursor-pointer',
11
- STATE_STYLE,
12
- DIMENSIONS_STYLE,
13
- className,
14
- ].join(' '), "data-theme": dataTheme, onClick: onClick, children: [(0, jsx_runtime_1.jsx)("span", { className: "text-h4 pr-3", children: label }), icon ? ((0, jsx_runtime_1.jsx)(Img_1.Img, { image: {
7
+ exports.DefaultFoldButton = (0, uni_jsx_1.JSX)(({ className = '', label, icon, dataTheme = '', disabled = false, onClick }) => {
8
+ return ((0, jsx_runtime_1.jsxs)("button", { className: (0, style_1.style)('flex justify-center w-full px-0 py-5 border border-transparent outline-none focus:border-primary-text', disabled
9
+ ? 'bg-main-divider text-main-disabled hover:bg-main-divider'
10
+ : 'bg-primary-main text-white hover:bg-primary-hove', className), onClick: onClick, disabled: disabled, "data-theme": dataTheme, children: [(0, jsx_runtime_1.jsx)("span", { className: "text-h4 pr-3", children: label }), icon ? ((0, jsx_runtime_1.jsx)(Img_1.Img, { image: {
15
11
  icon,
16
12
  iconVersion: 'white',
17
13
  }, className: "flex-shrink-0 my-auto", width: "20", height: "20", asSVG: true })) : null] }));
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultFoldButton.js","sourceRoot":"","sources":["../../../src/ui-kit/Foldable/DefaultFoldButton.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AAGxC,oCAAiC;AAWpB,QAAA,iBAAiB,GAAG,IAAA,aAAG,EAClC,CAAC,EAAE,SAAS,GAAG,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,GAAG,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;IAC3D,MAAM,WAAW,GACf,wFAAwF,CAAC;IAC3F,MAAM,gBAAgB,GAAG,sCAAsC,CAAC;IAEhE,OAAO,CACL,oCACE,SAAS,EAAE;YACT,+EAA+E;YAC/E,WAAW;YACX,gBAAgB;YAChB,SAAS;SACV,CAAC,IAAI,CAAC,GAAG,CAAC,gBACC,SAAS,EACrB,OAAO,EAAE,OAAO,aAEhB,iCAAM,SAAS,EAAC,cAAc,YAAE,KAAK,GAAQ,EAC5C,IAAI,CAAC,CAAC,CAAC,CACN,uBAAC,SAAG,IACF,KAAK,EAAE;oBACL,IAAI;oBACJ,WAAW,EAAE,OAAO;iBACrB,EACD,SAAS,EAAC,uBAAuB,EACjC,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,KAAK,SACL,CACH,CAAC,CAAC,CAAC,IAAI,IACD,CACV,CAAC;AACJ,CAAC,CACF,CAAC;AAEK,MAAM,uBAAuB,GAAG,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAqB,EAAE,EAAE;IACrF,MAAM,MAAM,GAAG,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IACxC,MAAM,KAAK,GAAe,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;IAE3D,OAAO,CACL,uBAAC,yBAAiB,IAChB,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAC/B,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EACjC,OAAO,EAAE,QAAQ,GACjB,CACH,CAAC;AACJ,CAAC,CAAC;AAXW,QAAA,uBAAuB,2BAWlC"}
1
+ {"version":3,"file":"DefaultFoldButton.js","sourceRoot":"","sources":["../../../src/ui-kit/Foldable/DefaultFoldButton.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AAExC,6CAA0C;AAE1C,oCAAiC;AAYpB,QAAA,iBAAiB,GAAG,IAAA,aAAG,EAClC,CAAC,EAAE,SAAS,GAAG,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,GAAG,EAAE,EAAE,QAAQ,GAAG,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE;IAC7E,OAAO,CACL,oCACE,SAAS,EAAE,IAAA,aAAK,EACd,uGAAuG,EACvG,QAAQ;YACN,CAAC,CAAC,0DAA0D;YAC5D,CAAC,CAAC,kDAAkD,EACtD,SAAS,CACV,EACD,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,QAAQ,gBACN,SAAS,aAErB,iCAAM,SAAS,EAAC,cAAc,YAAE,KAAK,GAAQ,EAC5C,IAAI,CAAC,CAAC,CAAC,CACN,uBAAC,SAAG,IACF,KAAK,EAAE;oBACL,IAAI;oBACJ,WAAW,EAAE,OAAO;iBACrB,EACD,SAAS,EAAC,uBAAuB,EACjC,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,KAAK,SACL,CACH,CAAC,CAAC,CAAC,IAAI,IACD,CACV,CAAC;AACJ,CAAC,CACF,CAAC;AAEK,MAAM,uBAAuB,GAAG,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAqB,EAAE,EAAE;IACrF,MAAM,MAAM,GAAG,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IACxC,MAAM,KAAK,GAAe,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;IAE3D,OAAO,CACL,uBAAC,yBAAiB,IAChB,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAC/B,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EACjC,OAAO,EAAE,QAAQ,GACjB,CACH,CAAC;AACJ,CAAC,CAAC;AAXW,QAAA,uBAAuB,2BAWlC"}
@@ -1,7 +1,8 @@
1
1
  interface SlideCheckboxProps {
2
- checked?: boolean;
2
+ value?: boolean;
3
3
  text?: string;
4
- onClick?: () => void;
4
+ type?: 'checkbox' | 'radio';
5
+ onChange?: (value: boolean) => void;
5
6
  }
6
7
  export declare const SlideCheckbox: import("@redneckz/uni-jsx").UNIComponent<SlideCheckboxProps, any, any>;
7
8
  export {};