@salesforce/ui-bundle-features 11.10.1 → 11.11.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/dist/features.json +76 -0
- package/package.json +1 -1
package/dist/features.json
CHANGED
|
@@ -133,6 +133,82 @@
|
|
|
133
133
|
"filterUtils - URL serialization and GraphQL filter building for all filter types",
|
|
134
134
|
"sortUtils - GraphQL sort order building"
|
|
135
135
|
]
|
|
136
|
+
},
|
|
137
|
+
"search": {
|
|
138
|
+
"name": "Search (Beta)",
|
|
139
|
+
"package": "@salesforce/ui-bundle-template-feature-react-search",
|
|
140
|
+
"shortDescription": "[Beta] Configuration-driven multi-source (multi-object) search with one query box, per-source filters/sort, and global or per-source pagination over GraphQL",
|
|
141
|
+
"longDescription": "[Beta — API may change in a future release] Configuration-driven unified search across multiple Salesforce objects from a single query box. The application declares a SearchConfig with one entry per searchable SObject source; the library handles query construction, per-source filter/sort/pagination state, URL sync, and a single batched multi-aliased GraphQL request that fans out across every source. Supports two pagination models: per-source cursor pagination (each source advances its own Relay cursor) and merged/global pagination (the cumulative result set is windowed into fixed pages of pageSize). Provides a drop-in <Search> component plus lower-level primitives (useSearch hook, SearchBar, SearchResults, ScopeSelector, sort and pagination controls) and a configuration-driven filter panel (text, select, multi-select, numeric range, date range, boolean). Results can render one section per source or as a single combined grid via mergedResults, and a scope selector narrows the search to a single object or 'all'.",
|
|
142
|
+
"keywords": [
|
|
143
|
+
"search",
|
|
144
|
+
"multi-object",
|
|
145
|
+
"unified search",
|
|
146
|
+
"global search",
|
|
147
|
+
"filter",
|
|
148
|
+
"sort",
|
|
149
|
+
"pagination",
|
|
150
|
+
"GraphQL",
|
|
151
|
+
"scope",
|
|
152
|
+
"multi-source",
|
|
153
|
+
"beta"
|
|
154
|
+
],
|
|
155
|
+
"featureDependencies": [],
|
|
156
|
+
"packageDependencies": {
|
|
157
|
+
"@salesforce/platform-sdk": "^11.2.0",
|
|
158
|
+
"lucide-react": "^0.562.0",
|
|
159
|
+
"react-router": "^7.10.1"
|
|
160
|
+
},
|
|
161
|
+
"copy": [
|
|
162
|
+
{
|
|
163
|
+
"from": "force-app/main/default/uiBundles/feature-react-search/src/features/search",
|
|
164
|
+
"to": "<uiBundleDir>/src/features/search",
|
|
165
|
+
"description": "Multi-source search library: useSearch hook, drop-in <Search> component, scope selector, filter panel, sort and pagination controls, query builder, GraphQL search service, and the example config.json"
|
|
166
|
+
},
|
|
167
|
+
{
|
|
168
|
+
"from": "force-app/main/default/uiBundles/feature-react-search/src/pages/Home.tsx",
|
|
169
|
+
"to": "<uiBundleDir>/src/features/search/__examples__/search-page-example.tsx",
|
|
170
|
+
"description": "Example page rendering the drop-in <Search config={config} /> — shows how to mount the search experience on a route",
|
|
171
|
+
"integrationTarget": "src/routes.tsx"
|
|
172
|
+
}
|
|
173
|
+
],
|
|
174
|
+
"features": [
|
|
175
|
+
"Configuration-driven multi-object search from a single query box",
|
|
176
|
+
"One batched multi-aliased GraphQL request fans out across all in-scope sources",
|
|
177
|
+
"Two pagination models: per-source cursor pagination and merged/global fixed-size pagination",
|
|
178
|
+
"Merge ordering for the combined result list: sequential, interleaved, or proportional",
|
|
179
|
+
"Scope selector to narrow the search to a single object or search across all",
|
|
180
|
+
"Per-source structured filters: text, select, multi-select, numeric range, date range, boolean",
|
|
181
|
+
"Per-source sort controls with configurable sort fields and default sort",
|
|
182
|
+
"URL-synced query, scope, filters, sort, and pagination for bookmarkable/shareable searches",
|
|
183
|
+
"Drop-in <Search> component (one section per source) plus low-level primitives for custom layouts",
|
|
184
|
+
"mergedResults for rendering a single combined cross-source grid",
|
|
185
|
+
"Extensible adapter boundary — SObject sources today, room for CMS/REST adapters"
|
|
186
|
+
],
|
|
187
|
+
"components": [
|
|
188
|
+
"Search - Drop-in multi-source search experience (search bar, scope, sections, pagination)",
|
|
189
|
+
"useSearch - Hook orchestrating query, scope, per-source filter/sort/pagination, URL sync, and fetch",
|
|
190
|
+
"SearchBar - Global query input driving every source",
|
|
191
|
+
"ScopeSelector - Dropdown to narrow search scope to one source or 'all'",
|
|
192
|
+
"SearchResults - Renders in-scope source results",
|
|
193
|
+
"SourceSection - One result section for a single source",
|
|
194
|
+
"SortControl - Per-source sort field and direction dropdown",
|
|
195
|
+
"PaginationControls - Pagination with page navigation and configurable page size",
|
|
196
|
+
"DefaultFilterPanel - Sidebar panel rendering filter controls from config",
|
|
197
|
+
"DefaultResultRow - Default renderer for a single result node",
|
|
198
|
+
"ActiveFilters - Chip display of active filters with removal",
|
|
199
|
+
"FilterContext - FilterProvider and hooks (useFilterField, useFilterPanel) for custom filter UIs",
|
|
200
|
+
"TextFilter - Debounced text input filter",
|
|
201
|
+
"SelectFilter - Single-select picklist filter",
|
|
202
|
+
"MultiSelectFilter - Multi-select picklist filter",
|
|
203
|
+
"NumericRangeFilter - Min/max numeric range filter",
|
|
204
|
+
"DateRangeFilter - Date range filter with start/end pickers",
|
|
205
|
+
"BooleanFilter - Boolean toggle filter",
|
|
206
|
+
"useDistinctValues - Hook for fetching distinct picklist values",
|
|
207
|
+
"useAsyncData - Hook for async data fetching with loading/error states",
|
|
208
|
+
"queryBuilder - Builds the multi-aliased GraphQL document and variables",
|
|
209
|
+
"searchService - Runs the batched GraphQL search and parses per-source results",
|
|
210
|
+
"filterUtils / sortUtils / fieldUtils - URL serialization, GraphQL filter/order building, field extraction"
|
|
211
|
+
]
|
|
136
212
|
}
|
|
137
213
|
}
|
|
138
214
|
}
|
package/package.json
CHANGED