@indxsearch/intrface 2.0.0 → 2.0.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.
- package/CHANGELOG.md +63 -0
- package/LICENSE +1 -1
- package/README.md +11 -0
- package/dist/context/SearchContext.d.ts +1 -1
- package/dist/index.es.js +752 -770
- package/dist/index.umd.js +4 -4
- package/package.json +9 -3
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to @indxsearch/intrface will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## [2.0.1] - 2026-01-16
|
|
9
|
+
|
|
10
|
+
### Fixed
|
|
11
|
+
- Fixed search firing 3 times per keystroke instead of 2 (immediate + debounced)
|
|
12
|
+
- Fixed reset filters not triggering new search when user clicks "Reset" button
|
|
13
|
+
- Fixed filter effect race conditions with automatic range filter cleanups
|
|
14
|
+
- Fixed range filter panel automatically triggering searches when cleaning up full-range filters
|
|
15
|
+
|
|
16
|
+
### Changed
|
|
17
|
+
- Added optional `isUserAction` parameter to `resetSingleFilter` method to distinguish between user-initiated actions and automatic code cleanups
|
|
18
|
+
- Optimized `coverageSetup` reference preservation in `setSearchSettings` to prevent unnecessary re-renders
|
|
19
|
+
- Removed verbose `useMemo` dependencies for `coverageSetup` (replaced with stable reference approach)
|
|
20
|
+
|
|
21
|
+
### Technical Details
|
|
22
|
+
The root cause of the 3-search bug was `RangeFilterPanel` automatically calling `resetSingleFilter` after every search to clean up full-range filters. This was setting the `filtersChangedByUser` flag, causing the filter effect to fire an extra search. The fix distinguishes between user-initiated resets (should trigger search) and automatic cleanups (should not trigger search).
|
|
23
|
+
|
|
24
|
+
### Compatibility
|
|
25
|
+
- Requires IndxCloudApi 1.0.0
|
|
26
|
+
- React ^19.0.0
|
|
27
|
+
- React DOM ^19.0.0
|
|
28
|
+
|
|
29
|
+
## [2.0.0] - [Previous Date]
|
|
30
|
+
|
|
31
|
+
### Added
|
|
32
|
+
- Initial public release with major architectural improvements
|
|
33
|
+
- Full TypeScript support
|
|
34
|
+
- Comprehensive authentication system (bearer token + email/password)
|
|
35
|
+
- Error boundary component with fallback UI
|
|
36
|
+
- Active filters panel for displaying and managing applied filters
|
|
37
|
+
- Range filter panel for numeric filtering
|
|
38
|
+
- Value filter panel with checkbox and button display modes
|
|
39
|
+
- Sort by panel with dropdown and radio display modes
|
|
40
|
+
- Debounced faceted search with optimized performance
|
|
41
|
+
- Real-time facet counts and aggregations
|
|
42
|
+
- Mobile-responsive design
|
|
43
|
+
|
|
44
|
+
### Compatibility
|
|
45
|
+
- Requires IndxCloudApi 1.0.0
|
|
46
|
+
- React ^19.0.0
|
|
47
|
+
- React DOM ^19.0.0
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## How to Update
|
|
52
|
+
|
|
53
|
+
To update to the latest version:
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
npm install @indxsearch/intrface@latest
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Or with a specific version:
|
|
60
|
+
|
|
61
|
+
```bash
|
|
62
|
+
npm install @indxsearch/intrface@2.0.1
|
|
63
|
+
```
|
package/LICENSE
CHANGED
|
@@ -175,7 +175,7 @@ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
|
|
175
175
|
|
|
176
176
|
END OF TERMS AND CONDITIONS
|
|
177
177
|
|
|
178
|
-
Copyright
|
|
178
|
+
Copyright 2026 Indx Search (Bionic AS)
|
|
179
179
|
|
|
180
180
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
181
181
|
you may not use this file except in compliance with the License.
|
package/README.md
CHANGED
|
@@ -12,6 +12,17 @@ A powerful, flexible React search UI library for INDX Search API.
|
|
|
12
12
|
- 🎨 **Customizable rendering** - Full control over result display
|
|
13
13
|
- 🔒 **Secure authentication** - Session-based authentication with automatic login
|
|
14
14
|
|
|
15
|
+
## Compatibility
|
|
16
|
+
|
|
17
|
+
| Package | Version |
|
|
18
|
+
|---------|---------|
|
|
19
|
+
| **IndxCloudApi** | `1.0.0` |
|
|
20
|
+
| **React** | `^19.0.0` |
|
|
21
|
+
| **React DOM** | `^19.0.0` |
|
|
22
|
+
| **Node.js** | `>=16.0.0` |
|
|
23
|
+
|
|
24
|
+
> **Note:** This library is designed specifically for IndxCloudApi version 1.0.0. Different API versions may have incompatible changes.
|
|
25
|
+
|
|
15
26
|
## Installation
|
|
16
27
|
|
|
17
28
|
```bash
|
|
@@ -66,7 +66,7 @@ export interface SearchContextType {
|
|
|
66
66
|
toggleFilter: (field: string, value: string) => void;
|
|
67
67
|
setRangeFilter: (field: string, min: number, max: number) => void;
|
|
68
68
|
resetFilters: () => void;
|
|
69
|
-
resetSingleFilter: (field: string, value?: string) => void;
|
|
69
|
+
resetSingleFilter: (field: string, value?: string, isUserAction?: boolean) => void;
|
|
70
70
|
setSort: (field: string | null, ascending: boolean) => void;
|
|
71
71
|
setDebounceDelay?: (ms: number) => void;
|
|
72
72
|
setSearchSettings: (settings: Partial<SearchSettings>) => void;
|