pne-ui 2.0.3 → 2.0.4

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.
@@ -4,22 +4,82 @@ import { CriterionTypeEnum, ExactCriterionSearchLabelEnum, SearchCriteria, Searc
4
4
  import { GetPagedOrderedSortedListRequest, Order } from '../../common';
5
5
  import { TableCreateHeaderType } from '../..';
6
6
  import { UseTableParams } from '../table/useTable';
7
+ /**
8
+ * Параметры запроса поиска, отправляемые в обработчик данных таблицы.
9
+ * Тип формируется на основе SearchCriteria без служебного флага `initialized`
10
+ * и стандартных параметров пагинации/сортировки списка.
11
+ */
7
12
  export type SearchParams = Omit<SearchCriteria & GetPagedOrderedSortedListRequest, 'initialized'>;
13
+ /**
14
+ * Свойства компонента {@link SearchUI}.
15
+ * @template D Тип строки данных, возвращаемых запросом поиска и отображаемых в таблице.
16
+ */
8
17
  type Props<D extends object> = {
18
+ /**
19
+ * Имя контекста настроек, под которым таблица и фильтры сохраняют состояние пользователя.
20
+ */
9
21
  settingsContextName: string;
22
+ /**
23
+ * Полный список критериев, доступных пользователю для выбора.
24
+ */
10
25
  possibleCriteria: CriterionTypeEnum[];
26
+ /**
27
+ * Критерии, которые должны быть активированы при первой загрузке фильтра.
28
+ */
11
29
  predefinedCriteria?: CriterionTypeEnum[];
30
+ /**
31
+ * Допустимые точные метки поиска, отображаемые в выпадающем списке.
32
+ */
12
33
  exactSearchLabels?: ExactCriterionSearchLabelEnum[];
34
+ /**
35
+ * Начальные значения условий фильтрации, кроме списка критериев.
36
+ */
13
37
  initialSearchConditions?: Partial<Omit<SearchUIConditions, 'criteria'>>;
38
+ /**
39
+ * Внешнее управление состоянием фильтров. При изменении значения происходит синхронизация стора.
40
+ */
14
41
  searchConditions?: Partial<SearchUIConditions>;
42
+ /**
43
+ * Функция загрузки данных по текущим параметрам поиска.
44
+ */
15
45
  searchData: (searchParams: SearchParams) => Promise<D[]>;
46
+ /**
47
+ * Фабрика заголовка таблицы.
48
+ */
16
49
  createTableHeader: TableCreateHeaderType;
50
+ /**
51
+ * Фабрика строки таблицы.
52
+ * @param rowData Данные текущей строки.
53
+ * @param index Индекс строки.
54
+ * @param data Все текущие данные таблицы.
55
+ * @param setData Сеттер для обновления данных таблицы.
56
+ */
17
57
  createTableRow: (rowData: D, index: number, data: D[], setData: Dispatch<SetStateAction<D[]>>) => React.ReactElement;
58
+ /**
59
+ * Кастомизация поведения таблицы (пагинация, отображение, дублирование пагинатора).
60
+ */
18
61
  tableParams?: Pick<UseTableParams<D>, 'rowsPerPageOptions' | 'duplicatePagination' | 'paginatorActiveActionSx' | 'displayOptions'>;
62
+ /**
63
+ * Внешнее управление данными таблицы через React.useState.
64
+ */
19
65
  dataUseState?: [D[], Dispatch<SetStateAction<D[]>>];
66
+ /**
67
+ * Конфигурация виджета фильтров.
68
+ */
20
69
  config?: SearchUIFiltersConfig;
21
70
  };
71
+ /**
72
+ * Высокоуровневый компонент поискового UI, объединяющий фильтры и таблицу с результатами.
73
+ * @template D Тип строки данных, отображаемых в таблице.
74
+ * @param props Свойства компонента.
75
+ */
22
76
  export declare const SearchUI: <D extends object>(props: Props<D>) => React.ReactElement;
77
+ /**
78
+ * Преобразует внутреннее состояние фильтров и таблицы в параметры запроса для загрузки данных.
79
+ * @param searchCriteria Текущее состояние критериев поиска.
80
+ * @param options Параметры пагинации и сортировки таблицы.
81
+ * @returns Объект параметров, совместимый с обработчиком `searchData`.
82
+ */
23
83
  export declare const createSearchParams: (searchCriteria: SearchCriteria, options: {
24
84
  page: number;
25
85
  pageSize: number;
@@ -7,6 +7,11 @@ const SearchUIFilters_1 = require("./filters/SearchUIFilters");
7
7
  const material_1 = require("@mui/material");
8
8
  const __1 = require("../..");
9
9
  const store_1 = require("./state/store");
10
+ /**
11
+ * Высокоуровневый компонент поискового UI, объединяющий фильтры и таблицу с результатами.
12
+ * @template D Тип строки данных, отображаемых в таблице.
13
+ * @param props Свойства компонента.
14
+ */
10
15
  const SearchUI = (props) => {
11
16
  const { settingsContextName, possibleCriteria, predefinedCriteria, exactSearchLabels, initialSearchConditions, searchConditions, searchData, createTableHeader, createTableRow, tableParams, dataUseState, config, } = props;
12
17
  const { searchCriteria, setSearchCriteria, } = (0, store_1.useSearchUIStore)((store) => ({
@@ -62,6 +67,12 @@ const initialDisplayOptions = {
62
67
  const tableBoxSx = {
63
68
  p: '16px 16px 0 16px',
64
69
  };
70
+ /**
71
+ * Преобразует внутреннее состояние фильтров и таблицы в параметры запроса для загрузки данных.
72
+ * @param searchCriteria Текущее состояние критериев поиска.
73
+ * @param options Параметры пагинации и сортировки таблицы.
74
+ * @returns Объект параметров, совместимый с обработчиком `searchData`.
75
+ */
65
76
  const createSearchParams = (searchCriteria, options) => ({
66
77
  startNum: options.page * options.pageSize,
67
78
  rowCount: options.pageSize + 1,
@@ -1 +1 @@
1
- {"version":3,"file":"SearchUI.js","sourceRoot":"","sources":["../../../src/component/search-ui/SearchUI.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SearchUI.js","sourceRoot":"","sources":["../../../src/component/search-ui/SearchUI.tsx"],"names":[],"mappings":"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"}
@@ -1,26 +1,87 @@
1
1
  import React from 'react';
2
2
  import { CriterionTypeEnum, ExactCriterionSearchLabelEnum, SearchCriteria, SearchUIConditions } from './types';
3
3
  import { SearchUIDefaults } from '../../..';
4
+ /**
5
+ * Дополнительные настройки критерия диапазона дат.
6
+ */
4
7
  export type DateRangeCriterionConfig = {
8
+ /**
9
+ * Разрешает выбор времени вместе с датой.
10
+ */
5
11
  enableTimeSelection?: boolean;
6
12
  };
13
+ /**
14
+ * Общая конфигурация компонента {@link SearchUIFilters}.
15
+ */
7
16
  export type SearchUIFiltersConfig = {
17
+ /**
18
+ * Группы критериев, которые не могут быть активны одновременно.
19
+ */
8
20
  conflictingCriteriaGroups?: CriterionTypeEnum[][];
21
+ /**
22
+ * Список предустановленных критериев, которые пользователь может удалить.
23
+ */
9
24
  removablePredefinedCriteria?: CriterionTypeEnum[];
25
+ /**
26
+ * Прячет выпадающий список шаблонов фильтров.
27
+ */
10
28
  hideTemplatesSelect?: boolean;
29
+ /**
30
+ * Прячет кнопку сворачивания/разворачивания панели фильтров.
31
+ */
11
32
  hideShowFiltersButton?: boolean;
33
+ /**
34
+ * Дополнительные настройки поведения фильтра по диапазону дат.
35
+ */
12
36
  dateRange?: DateRangeCriterionConfig;
13
37
  };
38
+ /**
39
+ * Свойства компонента {@link SearchUIFilters}.
40
+ */
14
41
  type Props = {
42
+ /**
43
+ * Имя контекста настроек, используемое для хранения пользовательских предпочтений.
44
+ */
15
45
  settingsContextName: string;
46
+ /**
47
+ * Полный набор критериев, доступных в фильтре.
48
+ */
16
49
  possibleCriteria: CriterionTypeEnum[];
50
+ /**
51
+ * Критерии, которые активируются автоматически.
52
+ */
17
53
  predefinedCriteria?: CriterionTypeEnum[];
54
+ /**
55
+ * Доступные значения точного поиска.
56
+ */
18
57
  exactSearchLabels?: ExactCriterionSearchLabelEnum[];
58
+ /**
59
+ * Первоначальное состояние фильтров (кроме перечня критериев).
60
+ */
19
61
  initialSearchConditions?: Partial<Omit<SearchUIConditions, 'criteria'>>;
62
+ /**
63
+ * Внешнее состояние фильтра, синхронизируемое со стором.
64
+ */
20
65
  searchConditions?: Partial<SearchUIConditions>;
66
+ /**
67
+ * Колбэк, вызываемый при изменении условий поиска.
68
+ */
21
69
  onFiltersUpdate: (searchCriteria: SearchCriteria) => void;
70
+ /**
71
+ * Конфигурация поведения фильтра.
72
+ */
22
73
  config?: SearchUIFiltersConfig;
23
74
  };
75
+ /**
76
+ * Панель фильтров поискового интерфейса с поддержкой шаблонов и динамических критериев.
77
+ * @param props Свойства компонента.
78
+ */
24
79
  export declare const SearchUIFilters: (props: Props) => React.JSX.Element;
80
+ /**
81
+ * Фильтрует список критериев в соответствии с доступностью, предоставленной настройками по умолчанию.
82
+ * @param defaults Значения по умолчанию из {@link SearchUIDefaultsContext}.
83
+ * @param criteria Критерии, которые требуется проверить.
84
+ * @returns Подмножество критериев, доступных пользователю.
85
+ */
25
86
  export declare const filterAvailableCriteria: (defaults: SearchUIDefaults, criteria: CriterionTypeEnum[] | undefined) => CriterionTypeEnum[];
26
87
  export {};
@@ -14,6 +14,10 @@ const SearchUIAddFilter_1 = tslib_1.__importDefault(require("./component/select/
14
14
  const CriterionContainer_1 = require("./CriterionContainer");
15
15
  const __1 = require("../../..");
16
16
  const SearchUIProvider_1 = require("../SearchUIProvider");
17
+ /**
18
+ * Панель фильтров поискового интерфейса с поддержкой шаблонов и динамических критериев.
19
+ * @param props Свойства компонента.
20
+ */
17
21
  const SearchUIFilters = (props) => {
18
22
  const { t } = (0, react_i18next_1.useTranslation)();
19
23
  const { settingsContextName, possibleCriteria = [], predefinedCriteria = [], exactSearchLabels = [], initialSearchConditions, searchConditions, config, onFiltersUpdate, } = props;
@@ -102,6 +106,12 @@ const headerSx = {
102
106
  width: '100%',
103
107
  py: '15px',
104
108
  };
109
+ /**
110
+ * Фильтрует список критериев в соответствии с доступностью, предоставленной настройками по умолчанию.
111
+ * @param defaults Значения по умолчанию из {@link SearchUIDefaultsContext}.
112
+ * @param criteria Критерии, которые требуется проверить.
113
+ * @returns Подмножество критериев, доступных пользователю.
114
+ */
105
115
  const filterAvailableCriteria = (defaults, criteria) => {
106
116
  const visibilityFlags = {
107
117
  [types_1.CriterionTypeEnum.PROJECT_CURRENCY]: defaults.showProjectCurrencyCriterion(),
@@ -1 +1 @@
1
- {"version":3,"file":"SearchUIFilters.js","sourceRoot":"","sources":["../../../../src/component/search-ui/filters/SearchUIFilters.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SearchUIFilters.js","sourceRoot":"","sources":["../../../../src/component/search-ui/filters/SearchUIFilters.tsx"],"names":[],"mappings":"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"}
@@ -116,16 +116,32 @@ export declare enum LinkedEntityTypeEnum {
116
116
  FORM_TEMPLATE_FINISH = "FORM_TEMPLATE_FINISH",
117
117
  FORM_TEMPLATE_TDS_METHOD = "FORM_TEMPLATE_TDS_METHOD"
118
118
  }
119
+ /**
120
+ * Универсальный критерий множественного выбора с поддержкой предзагрузки связанных сущностей.
121
+ */
119
122
  export type MultigetCriterion = {
123
+ /** Тип связанной сущности, для которой выполняется запрос. */
120
124
  entityType: LinkedEntityTypeEnum;
125
+ /** Способ фильтрации, применяемый к множественному выбору. */
121
126
  filterType: MultichoiceFilterTypeEnum;
127
+ /** Строка поиска по сущностям. */
122
128
  searchString: string;
129
+ /** Идентификаторы выбранных элементов в виде строки. */
123
130
  selectedItems: string;
131
+ /** Идентификаторы исключённых элементов. */
124
132
  deselectedItems: string;
133
+ /** Отображаемые имена выбранных элементов. */
125
134
  selectedItemNames: string;
135
+ /** Отображаемые имена исключённых элементов. */
126
136
  deselectedItemNames: string;
127
137
  };
138
+ /**
139
+ * Плоское представление условий поиска, используемое при запросе данных на сервер.
140
+ */
128
141
  export type SearchCriteria = {
142
+ /**
143
+ * Флаг инициализации стора, предотвращающий преждевременные сетевые запросы.
144
+ */
129
145
  initialized: boolean;
130
146
  exactSearchLabel: string | null;
131
147
  exactSearchValue: string | null;
@@ -153,6 +169,9 @@ export type SearchCriteria = {
153
169
  processorLogEntryType: string | null;
154
170
  errorCode: number | null;
155
171
  };
172
+ /**
173
+ * Расширенное состояние условий поиска, используемое внутри UI и стора.
174
+ */
156
175
  export type SearchUIConditions = {
157
176
  criteria: CriterionTypeEnum[];
158
177
  multigetCriteria: MultigetCriterion[];
@@ -180,7 +199,12 @@ export type SearchUIConditions = {
180
199
  processorLogEntryType: AbstractEntity | null;
181
200
  errorCode: AutoCompleteChoice | null;
182
201
  };
202
+ /**
203
+ * Описание сохранённого шаблона поиска.
204
+ */
183
205
  export type SearchUITemplate = {
206
+ /** Человекочитаемое имя шаблона. */
184
207
  name: string;
208
+ /** Значения условий поиска, сохранённые в шаблоне. */
185
209
  searchConditions: SearchUIConditions;
186
210
  };
@@ -4,22 +4,82 @@ import { CriterionTypeEnum, ExactCriterionSearchLabelEnum, SearchCriteria, Searc
4
4
  import { GetPagedOrderedSortedListRequest, Order } from '../../common';
5
5
  import { TableCreateHeaderType } from '../..';
6
6
  import { UseTableParams } from '../table/useTable';
7
+ /**
8
+ * Параметры запроса поиска, отправляемые в обработчик данных таблицы.
9
+ * Тип формируется на основе SearchCriteria без служебного флага `initialized`
10
+ * и стандартных параметров пагинации/сортировки списка.
11
+ */
7
12
  export type SearchParams = Omit<SearchCriteria & GetPagedOrderedSortedListRequest, 'initialized'>;
13
+ /**
14
+ * Свойства компонента {@link SearchUI}.
15
+ * @template D Тип строки данных, возвращаемых запросом поиска и отображаемых в таблице.
16
+ */
8
17
  type Props<D extends object> = {
18
+ /**
19
+ * Имя контекста настроек, под которым таблица и фильтры сохраняют состояние пользователя.
20
+ */
9
21
  settingsContextName: string;
22
+ /**
23
+ * Полный список критериев, доступных пользователю для выбора.
24
+ */
10
25
  possibleCriteria: CriterionTypeEnum[];
26
+ /**
27
+ * Критерии, которые должны быть активированы при первой загрузке фильтра.
28
+ */
11
29
  predefinedCriteria?: CriterionTypeEnum[];
30
+ /**
31
+ * Допустимые точные метки поиска, отображаемые в выпадающем списке.
32
+ */
12
33
  exactSearchLabels?: ExactCriterionSearchLabelEnum[];
34
+ /**
35
+ * Начальные значения условий фильтрации, кроме списка критериев.
36
+ */
13
37
  initialSearchConditions?: Partial<Omit<SearchUIConditions, 'criteria'>>;
38
+ /**
39
+ * Внешнее управление состоянием фильтров. При изменении значения происходит синхронизация стора.
40
+ */
14
41
  searchConditions?: Partial<SearchUIConditions>;
42
+ /**
43
+ * Функция загрузки данных по текущим параметрам поиска.
44
+ */
15
45
  searchData: (searchParams: SearchParams) => Promise<D[]>;
46
+ /**
47
+ * Фабрика заголовка таблицы.
48
+ */
16
49
  createTableHeader: TableCreateHeaderType;
50
+ /**
51
+ * Фабрика строки таблицы.
52
+ * @param rowData Данные текущей строки.
53
+ * @param index Индекс строки.
54
+ * @param data Все текущие данные таблицы.
55
+ * @param setData Сеттер для обновления данных таблицы.
56
+ */
17
57
  createTableRow: (rowData: D, index: number, data: D[], setData: Dispatch<SetStateAction<D[]>>) => React.ReactElement;
58
+ /**
59
+ * Кастомизация поведения таблицы (пагинация, отображение, дублирование пагинатора).
60
+ */
18
61
  tableParams?: Pick<UseTableParams<D>, 'rowsPerPageOptions' | 'duplicatePagination' | 'paginatorActiveActionSx' | 'displayOptions'>;
62
+ /**
63
+ * Внешнее управление данными таблицы через React.useState.
64
+ */
19
65
  dataUseState?: [D[], Dispatch<SetStateAction<D[]>>];
66
+ /**
67
+ * Конфигурация виджета фильтров.
68
+ */
20
69
  config?: SearchUIFiltersConfig;
21
70
  };
71
+ /**
72
+ * Высокоуровневый компонент поискового UI, объединяющий фильтры и таблицу с результатами.
73
+ * @template D Тип строки данных, отображаемых в таблице.
74
+ * @param props Свойства компонента.
75
+ */
22
76
  export declare const SearchUI: <D extends object>(props: Props<D>) => React.ReactElement;
77
+ /**
78
+ * Преобразует внутреннее состояние фильтров и таблицы в параметры запроса для загрузки данных.
79
+ * @param searchCriteria Текущее состояние критериев поиска.
80
+ * @param options Параметры пагинации и сортировки таблицы.
81
+ * @returns Объект параметров, совместимый с обработчиком `searchData`.
82
+ */
23
83
  export declare const createSearchParams: (searchCriteria: SearchCriteria, options: {
24
84
  page: number;
25
85
  pageSize: number;
@@ -3,6 +3,11 @@ import { SearchUIFilters } from './filters/SearchUIFilters';
3
3
  import { Box, Divider } from '@mui/material';
4
4
  import { PneTable, useTable } from '../..';
5
5
  import { useSearchUIStore } from './state/store';
6
+ /**
7
+ * Высокоуровневый компонент поискового UI, объединяющий фильтры и таблицу с результатами.
8
+ * @template D Тип строки данных, отображаемых в таблице.
9
+ * @param props Свойства компонента.
10
+ */
6
11
  export const SearchUI = (props) => {
7
12
  const { settingsContextName, possibleCriteria, predefinedCriteria, exactSearchLabels, initialSearchConditions, searchConditions, searchData, createTableHeader, createTableRow, tableParams, dataUseState, config, } = props;
8
13
  const { searchCriteria, setSearchCriteria, } = useSearchUIStore((store) => ({
@@ -57,6 +62,12 @@ const initialDisplayOptions = {
57
62
  const tableBoxSx = {
58
63
  p: '16px 16px 0 16px',
59
64
  };
65
+ /**
66
+ * Преобразует внутреннее состояние фильтров и таблицы в параметры запроса для загрузки данных.
67
+ * @param searchCriteria Текущее состояние критериев поиска.
68
+ * @param options Параметры пагинации и сортировки таблицы.
69
+ * @returns Объект параметров, совместимый с обработчиком `searchData`.
70
+ */
60
71
  export const createSearchParams = (searchCriteria, options) => ({
61
72
  startNum: options.page * options.pageSize,
62
73
  rowCount: options.pageSize + 1,
@@ -1 +1 @@
1
- {"version":3,"file":"SearchUI.js","sourceRoot":"","sources":["../../../src/component/search-ui/SearchUI.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SearchUI.js","sourceRoot":"","sources":["../../../src/component/search-ui/SearchUI.tsx"],"names":[],"mappings":"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"}
@@ -1,26 +1,87 @@
1
1
  import React from 'react';
2
2
  import { CriterionTypeEnum, ExactCriterionSearchLabelEnum, SearchCriteria, SearchUIConditions } from './types';
3
3
  import { SearchUIDefaults } from '../../..';
4
+ /**
5
+ * Дополнительные настройки критерия диапазона дат.
6
+ */
4
7
  export type DateRangeCriterionConfig = {
8
+ /**
9
+ * Разрешает выбор времени вместе с датой.
10
+ */
5
11
  enableTimeSelection?: boolean;
6
12
  };
13
+ /**
14
+ * Общая конфигурация компонента {@link SearchUIFilters}.
15
+ */
7
16
  export type SearchUIFiltersConfig = {
17
+ /**
18
+ * Группы критериев, которые не могут быть активны одновременно.
19
+ */
8
20
  conflictingCriteriaGroups?: CriterionTypeEnum[][];
21
+ /**
22
+ * Список предустановленных критериев, которые пользователь может удалить.
23
+ */
9
24
  removablePredefinedCriteria?: CriterionTypeEnum[];
25
+ /**
26
+ * Прячет выпадающий список шаблонов фильтров.
27
+ */
10
28
  hideTemplatesSelect?: boolean;
29
+ /**
30
+ * Прячет кнопку сворачивания/разворачивания панели фильтров.
31
+ */
11
32
  hideShowFiltersButton?: boolean;
33
+ /**
34
+ * Дополнительные настройки поведения фильтра по диапазону дат.
35
+ */
12
36
  dateRange?: DateRangeCriterionConfig;
13
37
  };
38
+ /**
39
+ * Свойства компонента {@link SearchUIFilters}.
40
+ */
14
41
  type Props = {
42
+ /**
43
+ * Имя контекста настроек, используемое для хранения пользовательских предпочтений.
44
+ */
15
45
  settingsContextName: string;
46
+ /**
47
+ * Полный набор критериев, доступных в фильтре.
48
+ */
16
49
  possibleCriteria: CriterionTypeEnum[];
50
+ /**
51
+ * Критерии, которые активируются автоматически.
52
+ */
17
53
  predefinedCriteria?: CriterionTypeEnum[];
54
+ /**
55
+ * Доступные значения точного поиска.
56
+ */
18
57
  exactSearchLabels?: ExactCriterionSearchLabelEnum[];
58
+ /**
59
+ * Первоначальное состояние фильтров (кроме перечня критериев).
60
+ */
19
61
  initialSearchConditions?: Partial<Omit<SearchUIConditions, 'criteria'>>;
62
+ /**
63
+ * Внешнее состояние фильтра, синхронизируемое со стором.
64
+ */
20
65
  searchConditions?: Partial<SearchUIConditions>;
66
+ /**
67
+ * Колбэк, вызываемый при изменении условий поиска.
68
+ */
21
69
  onFiltersUpdate: (searchCriteria: SearchCriteria) => void;
70
+ /**
71
+ * Конфигурация поведения фильтра.
72
+ */
22
73
  config?: SearchUIFiltersConfig;
23
74
  };
75
+ /**
76
+ * Панель фильтров поискового интерфейса с поддержкой шаблонов и динамических критериев.
77
+ * @param props Свойства компонента.
78
+ */
24
79
  export declare const SearchUIFilters: (props: Props) => React.JSX.Element;
80
+ /**
81
+ * Фильтрует список критериев в соответствии с доступностью, предоставленной настройками по умолчанию.
82
+ * @param defaults Значения по умолчанию из {@link SearchUIDefaultsContext}.
83
+ * @param criteria Критерии, которые требуется проверить.
84
+ * @returns Подмножество критериев, доступных пользователю.
85
+ */
25
86
  export declare const filterAvailableCriteria: (defaults: SearchUIDefaults, criteria: CriterionTypeEnum[] | undefined) => CriterionTypeEnum[];
26
87
  export {};
@@ -10,6 +10,10 @@ import SearchUIAddFilter from './component/select/SearchUIAddFilter';
10
10
  import { CriterionContainer } from './CriterionContainer';
11
11
  import { PneButton } from '../../..';
12
12
  import { SearchUIDefaultsContext } from "../SearchUIProvider";
13
+ /**
14
+ * Панель фильтров поискового интерфейса с поддержкой шаблонов и динамических критериев.
15
+ * @param props Свойства компонента.
16
+ */
13
17
  export const SearchUIFilters = (props) => {
14
18
  const { t } = useTranslation();
15
19
  const { settingsContextName, possibleCriteria = [], predefinedCriteria = [], exactSearchLabels = [], initialSearchConditions, searchConditions, config, onFiltersUpdate, } = props;
@@ -97,6 +101,12 @@ const headerSx = {
97
101
  width: '100%',
98
102
  py: '15px',
99
103
  };
104
+ /**
105
+ * Фильтрует список критериев в соответствии с доступностью, предоставленной настройками по умолчанию.
106
+ * @param defaults Значения по умолчанию из {@link SearchUIDefaultsContext}.
107
+ * @param criteria Критерии, которые требуется проверить.
108
+ * @returns Подмножество критериев, доступных пользователю.
109
+ */
100
110
  export const filterAvailableCriteria = (defaults, criteria) => {
101
111
  const visibilityFlags = {
102
112
  [CriterionTypeEnum.PROJECT_CURRENCY]: defaults.showProjectCurrencyCriterion(),
@@ -1 +1 @@
1
- {"version":3,"file":"SearchUIFilters.js","sourceRoot":"","sources":["../../../../src/component/search-ui/filters/SearchUIFilters.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SearchUIFilters.js","sourceRoot":"","sources":["../../../../src/component/search-ui/filters/SearchUIFilters.tsx"],"names":[],"mappings":"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"}
@@ -116,16 +116,32 @@ export declare enum LinkedEntityTypeEnum {
116
116
  FORM_TEMPLATE_FINISH = "FORM_TEMPLATE_FINISH",
117
117
  FORM_TEMPLATE_TDS_METHOD = "FORM_TEMPLATE_TDS_METHOD"
118
118
  }
119
+ /**
120
+ * Универсальный критерий множественного выбора с поддержкой предзагрузки связанных сущностей.
121
+ */
119
122
  export type MultigetCriterion = {
123
+ /** Тип связанной сущности, для которой выполняется запрос. */
120
124
  entityType: LinkedEntityTypeEnum;
125
+ /** Способ фильтрации, применяемый к множественному выбору. */
121
126
  filterType: MultichoiceFilterTypeEnum;
127
+ /** Строка поиска по сущностям. */
122
128
  searchString: string;
129
+ /** Идентификаторы выбранных элементов в виде строки. */
123
130
  selectedItems: string;
131
+ /** Идентификаторы исключённых элементов. */
124
132
  deselectedItems: string;
133
+ /** Отображаемые имена выбранных элементов. */
125
134
  selectedItemNames: string;
135
+ /** Отображаемые имена исключённых элементов. */
126
136
  deselectedItemNames: string;
127
137
  };
138
+ /**
139
+ * Плоское представление условий поиска, используемое при запросе данных на сервер.
140
+ */
128
141
  export type SearchCriteria = {
142
+ /**
143
+ * Флаг инициализации стора, предотвращающий преждевременные сетевые запросы.
144
+ */
129
145
  initialized: boolean;
130
146
  exactSearchLabel: string | null;
131
147
  exactSearchValue: string | null;
@@ -153,6 +169,9 @@ export type SearchCriteria = {
153
169
  processorLogEntryType: string | null;
154
170
  errorCode: number | null;
155
171
  };
172
+ /**
173
+ * Расширенное состояние условий поиска, используемое внутри UI и стора.
174
+ */
156
175
  export type SearchUIConditions = {
157
176
  criteria: CriterionTypeEnum[];
158
177
  multigetCriteria: MultigetCriterion[];
@@ -180,7 +199,12 @@ export type SearchUIConditions = {
180
199
  processorLogEntryType: AbstractEntity | null;
181
200
  errorCode: AutoCompleteChoice | null;
182
201
  };
202
+ /**
203
+ * Описание сохранённого шаблона поиска.
204
+ */
183
205
  export type SearchUITemplate = {
206
+ /** Человекочитаемое имя шаблона. */
184
207
  name: string;
208
+ /** Значения условий поиска, сохранённые в шаблоне. */
185
209
  searchConditions: SearchUIConditions;
186
210
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pne-ui",
3
- "version": "2.0.3",
3
+ "version": "2.0.4",
4
4
  "description": "",
5
5
  "repository": {
6
6
  "type": "git",