mobx-view-model-devtools 0.0.40 → 0.0.42
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.
- package/auto.global.js +2 -2
- package/index.cjs +2 -2
- package/index.d.ts +35 -1
- package/index.js +3045 -1483
- package/package.json +5 -13
package/index.d.ts
CHANGED
|
@@ -95,6 +95,7 @@ interface SearchEngineConfig {
|
|
|
95
95
|
getItemOffset: (index: number) => number;
|
|
96
96
|
scrollToOffset: (offset: number) => void;
|
|
97
97
|
getRootItems: () => ListItem<any>[];
|
|
98
|
+
getPresentationMode: () => 'tree' | 'list';
|
|
98
99
|
}
|
|
99
100
|
declare class SearchEngine {
|
|
100
101
|
private config;
|
|
@@ -102,6 +103,8 @@ declare class SearchEngine {
|
|
|
102
103
|
searchText: string;
|
|
103
104
|
searchCacheKey: string;
|
|
104
105
|
isSearching: boolean;
|
|
106
|
+
private scrollToSearchMatchTimeout;
|
|
107
|
+
private static readonly itemHeight;
|
|
105
108
|
get formattedSearchText(): string;
|
|
106
109
|
/**
|
|
107
110
|
* Сегменты поиска, разбитые по точке.
|
|
@@ -118,16 +121,34 @@ declare class SearchEngine {
|
|
|
118
121
|
get suggestionSuffix(): string;
|
|
119
122
|
handleSearchInput: (e: ChangeEvent<HTMLInputElement>) => void;
|
|
120
123
|
handleKeyDown: (e: KeyboardEvent<HTMLInputElement>) => void;
|
|
124
|
+
private scheduleScrollToFirstSearchMatch;
|
|
125
|
+
private scrollToFirstSearchMatch;
|
|
126
|
+
private scrollSimpleBarToOffset;
|
|
127
|
+
/**
|
|
128
|
+
* Рекурсивно собирает все VMListItem из дерева (включая вложенные).
|
|
129
|
+
*/
|
|
130
|
+
private collectAllVMs;
|
|
121
131
|
/**
|
|
122
132
|
* Возвращает PropertyListItem на целевой глубине для получения подсказки.
|
|
123
133
|
* pathSegments — все сегменты кроме последнего (путь навигации).
|
|
124
134
|
*/
|
|
125
135
|
private getCandidatePropsAtDepth;
|
|
136
|
+
/**
|
|
137
|
+
* Уже введённый path-сегмент должен совпадать строго:
|
|
138
|
+
* `product.` заходит только в `product`, а не в `productAsyncTasks`
|
|
139
|
+
* или `serviceAndProductSearch`.
|
|
140
|
+
*/
|
|
141
|
+
private getPathMatchingProps;
|
|
126
142
|
/**
|
|
127
143
|
* Навигация вглубь по цепочке свойств.
|
|
128
144
|
* Возвращает свойства на нужной глубине.
|
|
129
145
|
*/
|
|
130
146
|
private navigatePropertyPath;
|
|
147
|
+
/**
|
|
148
|
+
* Плоский список для режима 'list': все VM показываются независимо,
|
|
149
|
+
* сворачивание VM скрывает только его свойства, но не дочерние VM.
|
|
150
|
+
*/
|
|
151
|
+
private getFlatListItems;
|
|
131
152
|
getListItems(rootItems: ListItem<any>[]): ListItem<any>[];
|
|
132
153
|
private getFilteredItemsForSearch;
|
|
133
154
|
private getVMSearchItems;
|
|
@@ -144,15 +165,28 @@ declare class SearchEngine {
|
|
|
144
165
|
isPropertyItemExpanded(item: PropertyListItem): boolean;
|
|
145
166
|
isPropertyItemExpandable(item: PropertyListItem): boolean;
|
|
146
167
|
isVmItemExpanded(item: VMListItem): boolean;
|
|
168
|
+
private isSearchTargetMatched;
|
|
169
|
+
private isVMSearchTargetMatched;
|
|
170
|
+
private isPropertySearchTargetMatched;
|
|
147
171
|
/**
|
|
148
172
|
* Определяет, должен ли элемент отображаться «нормально» (true)
|
|
149
173
|
* или «затемнённо» (false — серым).
|
|
150
174
|
*
|
|
151
175
|
* Для PropertyListItem: проходим вверх по цепочке parentListItem,
|
|
152
|
-
*
|
|
176
|
+
* собирая предков и вычисляя уровень вложенности.
|
|
177
|
+
* Затем проверяем, что вся цепочка предков соответствует сегментам поиска:
|
|
178
|
+
* если хотя бы один предок не совпадает с нужным сегментом —
|
|
179
|
+
* элемент находится в «несовпадающей ветке» и тоже должен быть серым.
|
|
153
180
|
*/
|
|
154
181
|
isItemFitted(item: ListItem<any>): boolean;
|
|
182
|
+
/**
|
|
183
|
+
* Для path-сегмента exact-match важнее includes.
|
|
184
|
+
* Если среди соседей есть `product`, то `product.` должен подсветить только
|
|
185
|
+
* `product`, а не `serviceAndProductSearch`.
|
|
186
|
+
*/
|
|
187
|
+
private isPropertyFittedToSegment;
|
|
155
188
|
resetSearch: () => void;
|
|
189
|
+
focusInput: () => void;
|
|
156
190
|
constructor(config: SearchEngineConfig);
|
|
157
191
|
}
|
|
158
192
|
|