@sinequa/atomic-angular 1.19.2 → 1.19.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.
package/index.d.ts CHANGED
@@ -4789,6 +4789,37 @@ declare class AutocompleteService {
4789
4789
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<AutocompleteService>;
4790
4790
  }
4791
4791
 
4792
+ interface EntityNavigation {
4793
+ /** The entity value being navigated (i.e. "ALBERT EINSTEIN") */
4794
+ value: string;
4795
+ /** The 1-based index of the current occurrence */
4796
+ index: number;
4797
+ }
4798
+ /**
4799
+ * Cursor over the occurrences of an entity value highlighted in the preview.
4800
+ *
4801
+ * The number of occurrences is the one actually located in the preview (`PreviewService.getEntityLocations`),
4802
+ * not the `count` of the indexed record, which can be greater (ES-32245).
4803
+ */
4804
+ declare class EntityNavigationService {
4805
+ private readonly previewService;
4806
+ private lastPreviewData;
4807
+ /** The current position, shared by the entities panels */
4808
+ readonly navigation: _angular_core.WritableSignal<EntityNavigation | undefined>;
4809
+ /** The value hovered in the panel */
4810
+ readonly hovering: _angular_core.WritableSignal<string | undefined>;
4811
+ /** The 1-based position of the hovered value, `0` when it is not the one being navigated */
4812
+ readonly hoverIndex: _angular_core.Signal<number>;
4813
+ /**
4814
+ * Number of occurrences of `value` highlighted in the preview.
4815
+ * `fallback` (the indexed count) is only used while no preview is loaded.
4816
+ */
4817
+ total(entity: string, value: string, fallback?: number): number;
4818
+ navigate(entity: string, value: string, direction: "next" | "prev"): void;
4819
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<EntityNavigationService, never>;
4820
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<EntityNavigationService>;
4821
+ }
4822
+
4792
4823
  type Options = {
4793
4824
  headers?: HttpHeaders | {
4794
4825
  [header: string]: string | string[];
@@ -5708,6 +5739,20 @@ declare class PreviewService {
5708
5739
  * @returns the html id
5709
5740
  */
5710
5741
  getEntityId(entity: string, value: string, index: number): number | undefined;
5742
+ /**
5743
+ * Get the ids of every occurrence of an entity value that is actually highlighted in the preview,
5744
+ * ordered by position in the document.
5745
+ *
5746
+ * This is the source of truth for entity navigation: the `count` carried by the indexed record can be
5747
+ * greater than the number of occurrences located in the converted document (ES-32245).
5748
+ *
5749
+ * @param entity the entity type (i.e. "geo")
5750
+ * @param value the entity value (i.e. "AUSTRALIA")
5751
+ * @returns the html ids (`positionInCategories[entity]`), empty when nothing is highlighted
5752
+ */
5753
+ getEntityLocations(entity: string, value: string): number[];
5754
+ /** Memoized `getEntityLocations` results, dropped with the `PreviewData` they were computed from. */
5755
+ private readonly entityLocationsCache;
5711
5756
  /**
5712
5757
  * Send a message to the prewiew iFrame with the required data to retrieve HTML content for a specific highlight category
5713
5758
  *
@@ -8512,10 +8557,6 @@ declare class AdvancedSearch {
8512
8557
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AdvancedSearch, "advanced-search", never, { "article": { "alias": "article"; "required": true; "isSignal": true; }; "previewStrategy": { "alias": "previewStrategy"; "required": false; "isSignal": true; }; }, { "selected": "selected"; }, never, never, true, never>;
8513
8558
  }
8514
8559
 
8515
- interface MetadataNavigation {
8516
- index: number;
8517
- value: string;
8518
- }
8519
8560
  declare class ArticleEntities {
8520
8561
  cn: typeof cn;
8521
8562
  protected readonly appStore: {
@@ -8834,6 +8875,7 @@ declare class ArticleEntities {
8834
8875
  columnMap?: Record<string, _sinequa_atomic.CCColumn> | undefined;
8835
8876
  }>;
8836
8877
  protected readonly previewService: PreviewService;
8878
+ protected readonly entityNavigation: EntityNavigationService;
8837
8879
  readonly article: _angular_core.InputSignal<Article$1>;
8838
8880
  protected readonly previewHighlights: _angular_core.Signal<{
8839
8881
  name: string;
@@ -8841,11 +8883,12 @@ declare class ArticleEntities {
8841
8883
  metadata: ArticleMetadata[];
8842
8884
  }[] | undefined>;
8843
8885
  getMetadata(article: Partial<Article$1 & Record<string, unknown>>, entity: string): ArticleMetadata[];
8844
- navigation: _angular_core.WritableSignal<MetadataNavigation | undefined>;
8845
- hovering: _angular_core.WritableSignal<string | undefined>;
8846
- hoverIndex: _angular_core.Signal<number>;
8886
+ readonly navigation: _angular_core.WritableSignal<_sinequa_atomic_angular.EntityNavigation | undefined>;
8887
+ readonly hovering: _angular_core.WritableSignal<string | undefined>;
8888
+ readonly hoverIndex: _angular_core.Signal<number>;
8889
+ /** Number of occurrences of the entity value highlighted in the preview (not the indexed `count`, see ES-32245) */
8890
+ total(entity: string, data: ArticleMetadata): number;
8847
8891
  scrollTo(type: string | undefined, index: number, usePassageHighlighter?: boolean): void;
8848
- private navigate;
8849
8892
  navigateNext(entity: string, data: ArticleMetadata): void;
8850
8893
  navigatePrev(entity: string, data: ArticleMetadata): void;
8851
8894
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ArticleEntities, never>;
@@ -15801,8 +15844,8 @@ declare class UserProfileFormComponent {
15801
15844
  customData: _angular_core.Signal<string[]>;
15802
15845
  readonly allowChangePassword: _angular_core.Signal<boolean | undefined>;
15803
15846
  constructor();
15804
- protected userProfileResource: _angular_common_http.HttpResourceRef<_sinequa_atomic.UserProfile | undefined>;
15805
- readonly userProfile: _angular_core.WritableSignal<_sinequa_atomic.UserProfile | undefined>;
15847
+ protected userProfileResource: _angular_common_http.HttpResourceRef<UserProfile | undefined>;
15848
+ readonly userProfile: _angular_core.WritableSignal<UserProfile | undefined>;
15806
15849
  createUserProfile(): Promise<void>;
15807
15850
  /**
15808
15851
  * On editing a value, we save its former value to set it back in case of error
@@ -15819,6 +15862,15 @@ declare class UserProfileFormComponent {
15819
15862
  fieldState(key: string): "success" | "error" | undefined;
15820
15863
  /** Leaves the editor without saving. */
15821
15864
  onCancelEdit(): void;
15865
+ /**
15866
+ * Whether the profile holds a value for a property. Only then is there something to delete: a property
15867
+ * that shows its configured default, or that is simply not set, is absent from the profile and the
15868
+ * server answers 404 to a delete on it (ES-34462).
15869
+ *
15870
+ * @param category data or customData
15871
+ * @param propertyName property name
15872
+ */
15873
+ hasStoredValue(category: "data" | "customData", propertyName: string): boolean;
15822
15874
  /**
15823
15875
  * On data property deletion, for now we make the property an empty string
15824
15876
  *
@@ -15826,6 +15878,8 @@ declare class UserProfileFormComponent {
15826
15878
  * @param propertyName property name
15827
15879
  */
15828
15880
  onDeleteData(category: "data" | "customData", propertyName: string): Promise<void>;
15881
+ /** Takes a deleted property out of the stored profile; a custom property with a default shows that default again. */
15882
+ private forgetProperty;
15829
15883
  /**
15830
15884
  * Saving a data property
15831
15885
  *
@@ -15833,6 +15887,14 @@ declare class UserProfileFormComponent {
15833
15887
  * @param propertyName property name
15834
15888
  */
15835
15889
  onSaveData(category: "data" | "customData", propertyName: string): Promise<void>;
15890
+ /**
15891
+ * Folds the answer of a PATCH back into the stored profile, so the form shows what was just saved.
15892
+ *
15893
+ * The answer depends on the server: before ES-34373 it is the whole updated profile (`{ data, customData, … }`),
15894
+ * after it is the written value alone (`"fav-1AAA"`). Reading the latter as a profile used to leave the stored
15895
+ * profile unchanged, and the form kept showing the old value (or the default) until the page was reloaded.
15896
+ */
15897
+ private foldSavedValue;
15836
15898
  /**
15837
15899
  * Get the value of a data key
15838
15900
  *
@@ -16391,5 +16453,5 @@ type AppFeatures = {
16391
16453
  */
16392
16454
  declare const APP_FEATURES: InjectionToken<AppFeatures>;
16393
16455
 
16394
- export { AGGREGATIONS_NAMES, AGGREGATIONS_NAMES_PRESET_DEFAULT, APP_FEATURES, AdvancedFiltersComponent, AdvancedSearch, AdvancedSearchComponent, AggregationComponent, AggregationDateComponent, AggregationDateRangeDialogComponent, AggregationItemDirective, AggregationListComponent, AggregationPanelComponent, AggregationTreeComponent, AggregationsService, AggregationsStore, Alert, AlertDialog, AlertsComponent, AppService, AppStore, ApplicationService, ApplicationStore, ArticleEntities, ArticleExtracts, ArticleLabels, ArticleSimilarDocuments, AsideFiltersComponent, AuditFeedbackType, AuditService, AuthGuard, AuthPageComponent, AutocompleteService, BOOKMARKS_CONFIG, BOOKMARKS_OPTIONS, BackdropComponent, BackdropService, BookmarkButtonComponent, BookmarksComponent, COLLECTIONS_CONFIG, COLLECTIONS_OPTIONS, COMPONENTS_FOR_DOCUMENT_TYPE, ChangePasswordComponent, ChildMarkerDirective, CollectionsComponent, CollectionsDialog, DRAWER_COMPONENT, DRAWER_STACK_MAX_COUNT, DateComponent, DeleteCollectionDialog, DidYouMeanComponent, DocumentLocatorComponent, DrawerAdvancedFiltersComponent, DrawerComponent, DrawerNavbarComponent, DrawerPreviewComponent, DrawerService, DrawerStackComponent, DrawerStackService, DropdownInputComponent, DropdownListComponent, ErrorComponent, ExportDialog, ExportService, FILTERS_BREAKPOINT, FILTER_DATE_ALLOW_CUSTOM_RANGE, FeatureFlagsDialogComponent, FeedbackDialogComponent, FileSizePipe, FilterButtonComponent, FiltersBarComponent, HIGHLIGHTS, HighlightWordPipe, InfinityScrollDirective, InlineWorker, JsonMethodPluginService, KeyboardNavigatorDirective, LabelService, LabelsEditDialog, LoadingComponent, MetadataComponent, MissingTermsComponent, MoreButtonComponent, MoreComponent, MultiSelectLabelsComponent, MultiSelectionToolbarComponent, NON_SEARCHABLE_COLUMNS, NON_SEARCHABLE_DEFAULTS, NavbarTabsComponent, NavigationService, NoResultComponent, OpenArticleOnCtrlEnterDirective, OperatorPipe, OverflowItemDirective, OverflowManagerDirective, OverflowStopDirective, OverrideUserDialogComponent, PREVIEW_CONFIG, PagerComponent, PreviewNavigator, PreviewService, PrincipalService, PrincipalStore, QueryParamsStore, QueryService, RECENT_SEARCHES_CONFIG, RECENT_SEARCHES_OPTIONS, ROUTE_COMPONENTS, RecentSearchesComponent, ResetUserSettingsDialogComponent, SAVED_SEARCHES_CONFIG, SAVED_SEARCHES_OPTIONS, SavedSearchDialog, SavedSearchesComponent, SavedSearchesService, SearchFeedbackComponent, SearchInputFooter, SearchService, SelectArticleDirective, SelectArticleOnClickDirective, SelectionHistoryService, SelectionService, SelectionStore, ShowBookmarkDirective, SidebarNavComponent, SignInComponent, SignedOutComponent, SortSelectorComponent, SourceComponent, SourceIconPipe, SponsoredResultsComponent, SyslangPipe, THEMES, TextChunkService, ThemeProviderDirective, ThemeSelectorComponent, ThemeStore, ThemeToggleComponent, TranslocoDateImpurePipe, UserProfileDialog, UserProfileFormComponent, UserProfileService, UserSettingsStore, __resetSignInMutexForTests, applyThemeToNativeElement, auditInterceptorFn, authInterceptorFn, bodyInterceptorFn, bootstrapApp, buildQuery, debouncedSignal, errorInterceptorFn, getCurrentPath, getCurrentQueryName, getQueryNameFromRoute, injectRouteNavigation, isAuthRoute, isSignInInFlight, legacyFilterToFilter, processCssVars, queryNameResolver, signIn, themeColorNameToCssVariable, themeColorsToCssVariables, toastInterceptorFn, withAggregationsFeatures, withAlertsFeatures, withAppFeatures, withApplicationFeatures, withAssistantFeatures, withBasketsFeatures, withBookmarkFeatures, withBootstrapApp, withExtractsFeatures, withFetch, withMultiSelectionFeatures, withQueryParamsFeatures, withRecentSearchesFeatures, withSavedSearchesFeatures, withSelectionFeatures, withThemeBodyHook, withThemes, withThemesFeatures, withUserSettingsFeatures };
16395
- export type { AgentUserSettings, AggEx, AggregationEx, AggregationItemContext, AggregationListEx, AggregationListItem, AggregationSelection, AggregationTitle, AggregationTreeEx, AggregationTreeItemContext, AggregationsState, AppCJson, AppFeatures, ApplicationState, ArticleMetadata, AssistantDetails, Autocomplete, Basket, Bookmark, BookmarksConfig, CAggregation, CAggregationItem, CCAppState, CCWebServiceLabels, CConverter, CFeedback, CFilter, CFilterEx, CFilterItem, CJ, CJson, CJsonMint, CSources, CollectionsConfig, ComponentMapping, CssVars, CustomDataEntry, DateRange, DocumentOffsets, DocumentPages, DocumentTypeMap, DropdownItem, ExportQueryOptions, Extract, FilterDropdown, KeyboardNavigationOnSelectionHandlers, KeyboardNavigatorOptions, LabelsConfig, MultiSelectionState, MultiSelectionToolbarVariants, NavRouteTab, PageConfiguration, PreviewEvents, PreviewHighlight, PreviewHighlightName, PreviewHighlights, PrincipalState, SearchItem, SearchOptions, SearchesConfig, SelectionHistoryEvent, SelectionState, SelectionStrategy, SideCJson, SortingChoice, Theme, ThemeBodyHookParameters, ThemeScope, ThemeStoreState, UserSettingsState };
16456
+ export { AGGREGATIONS_NAMES, AGGREGATIONS_NAMES_PRESET_DEFAULT, APP_FEATURES, AdvancedFiltersComponent, AdvancedSearch, AdvancedSearchComponent, AggregationComponent, AggregationDateComponent, AggregationDateRangeDialogComponent, AggregationItemDirective, AggregationListComponent, AggregationPanelComponent, AggregationTreeComponent, AggregationsService, AggregationsStore, Alert, AlertDialog, AlertsComponent, AppService, AppStore, ApplicationService, ApplicationStore, ArticleEntities, ArticleExtracts, ArticleLabels, ArticleSimilarDocuments, AsideFiltersComponent, AuditFeedbackType, AuditService, AuthGuard, AuthPageComponent, AutocompleteService, BOOKMARKS_CONFIG, BOOKMARKS_OPTIONS, BackdropComponent, BackdropService, BookmarkButtonComponent, BookmarksComponent, COLLECTIONS_CONFIG, COLLECTIONS_OPTIONS, COMPONENTS_FOR_DOCUMENT_TYPE, ChangePasswordComponent, ChildMarkerDirective, CollectionsComponent, CollectionsDialog, DRAWER_COMPONENT, DRAWER_STACK_MAX_COUNT, DateComponent, DeleteCollectionDialog, DidYouMeanComponent, DocumentLocatorComponent, DrawerAdvancedFiltersComponent, DrawerComponent, DrawerNavbarComponent, DrawerPreviewComponent, DrawerService, DrawerStackComponent, DrawerStackService, DropdownInputComponent, DropdownListComponent, EntityNavigationService, ErrorComponent, ExportDialog, ExportService, FILTERS_BREAKPOINT, FILTER_DATE_ALLOW_CUSTOM_RANGE, FeatureFlagsDialogComponent, FeedbackDialogComponent, FileSizePipe, FilterButtonComponent, FiltersBarComponent, HIGHLIGHTS, HighlightWordPipe, InfinityScrollDirective, InlineWorker, JsonMethodPluginService, KeyboardNavigatorDirective, LabelService, LabelsEditDialog, LoadingComponent, MetadataComponent, MissingTermsComponent, MoreButtonComponent, MoreComponent, MultiSelectLabelsComponent, MultiSelectionToolbarComponent, NON_SEARCHABLE_COLUMNS, NON_SEARCHABLE_DEFAULTS, NavbarTabsComponent, NavigationService, NoResultComponent, OpenArticleOnCtrlEnterDirective, OperatorPipe, OverflowItemDirective, OverflowManagerDirective, OverflowStopDirective, OverrideUserDialogComponent, PREVIEW_CONFIG, PagerComponent, PreviewNavigator, PreviewService, PrincipalService, PrincipalStore, QueryParamsStore, QueryService, RECENT_SEARCHES_CONFIG, RECENT_SEARCHES_OPTIONS, ROUTE_COMPONENTS, RecentSearchesComponent, ResetUserSettingsDialogComponent, SAVED_SEARCHES_CONFIG, SAVED_SEARCHES_OPTIONS, SavedSearchDialog, SavedSearchesComponent, SavedSearchesService, SearchFeedbackComponent, SearchInputFooter, SearchService, SelectArticleDirective, SelectArticleOnClickDirective, SelectionHistoryService, SelectionService, SelectionStore, ShowBookmarkDirective, SidebarNavComponent, SignInComponent, SignedOutComponent, SortSelectorComponent, SourceComponent, SourceIconPipe, SponsoredResultsComponent, SyslangPipe, THEMES, TextChunkService, ThemeProviderDirective, ThemeSelectorComponent, ThemeStore, ThemeToggleComponent, TranslocoDateImpurePipe, UserProfileDialog, UserProfileFormComponent, UserProfileService, UserSettingsStore, __resetSignInMutexForTests, applyThemeToNativeElement, auditInterceptorFn, authInterceptorFn, bodyInterceptorFn, bootstrapApp, buildQuery, debouncedSignal, errorInterceptorFn, getCurrentPath, getCurrentQueryName, getQueryNameFromRoute, injectRouteNavigation, isAuthRoute, isSignInInFlight, legacyFilterToFilter, processCssVars, queryNameResolver, signIn, themeColorNameToCssVariable, themeColorsToCssVariables, toastInterceptorFn, withAggregationsFeatures, withAlertsFeatures, withAppFeatures, withApplicationFeatures, withAssistantFeatures, withBasketsFeatures, withBookmarkFeatures, withBootstrapApp, withExtractsFeatures, withFetch, withMultiSelectionFeatures, withQueryParamsFeatures, withRecentSearchesFeatures, withSavedSearchesFeatures, withSelectionFeatures, withThemeBodyHook, withThemes, withThemesFeatures, withUserSettingsFeatures };
16457
+ export type { AgentUserSettings, AggEx, AggregationEx, AggregationItemContext, AggregationListEx, AggregationListItem, AggregationSelection, AggregationTitle, AggregationTreeEx, AggregationTreeItemContext, AggregationsState, AppCJson, AppFeatures, ApplicationState, ArticleMetadata, AssistantDetails, Autocomplete, Basket, Bookmark, BookmarksConfig, CAggregation, CAggregationItem, CCAppState, CCWebServiceLabels, CConverter, CFeedback, CFilter, CFilterEx, CFilterItem, CJ, CJson, CJsonMint, CSources, CollectionsConfig, ComponentMapping, CssVars, CustomDataEntry, DateRange, DocumentOffsets, DocumentPages, DocumentTypeMap, DropdownItem, EntityNavigation, ExportQueryOptions, Extract, FilterDropdown, KeyboardNavigationOnSelectionHandlers, KeyboardNavigatorOptions, LabelsConfig, MultiSelectionState, MultiSelectionToolbarVariants, NavRouteTab, PageConfiguration, PreviewEvents, PreviewHighlight, PreviewHighlightName, PreviewHighlights, PrincipalState, SearchItem, SearchOptions, SearchesConfig, SelectionHistoryEvent, SelectionState, SelectionStrategy, SideCJson, SortingChoice, Theme, ThemeBodyHookParameters, ThemeScope, ThemeStoreState, UserSettingsState };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sinequa/atomic-angular",
3
- "version": "1.19.2",
3
+ "version": "1.19.4",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },