Skip to main content

User Settings Modules

The User Settings modules are also documented in the Tutorial and in the Tips & Tricks section.

Also check the documentation on the User Settings web service from the Web Services library (in the Core library).

Features​

There are currently five functionalities based on the User Settings. The table below summarizes the features available for each of them:

FunctionalityLibrary @sinequa/componentsServiceCRUD APIEdit ModalManage ModalUser MenuFacet
Saved Queries/saved-queriesSavedQueriesService✓✓✓✓
Recent Queries/saved-queriesRecentQueriesService✓✓
Recent Documents/saved-queriesRecentDocumentsService✓✓
Baskets/basketsBasketsService✓✓✓✓✓
Alerts/alertsAlertsService✓✓✓✓

Import​

Import one or more module(s) in your app.module.ts.

import { BsSavedQueriesModule } from '@sinequa/components/saved-queries';
import { BsAlertsModule } from '@sinequa/components/alerts';
import { BsBasketsModule } from '@sinequa/components/baskets';

@NgModule({
imports: [
...
BsSavedQueriesModule,
BsAlertsModule,
BsBasketsModule

These modules are internationalized: If not already the case, you need to import their messages for the language(s) of your application. For example, in your app's src/locales/en.ts:

...
import {enAlerts} from "@sinequa/components/alerts";
import {enBaskets} from "@sinequa/components/baskets";
import {enSavedQueries} from "@sinequa/components/saved-queries";

const messages = Utils.merge({}, ..., enAlerts, enBaskets, enSavedQueries, appMessages);

Saved Queries​

Saved Queries are a functionality that lets users save their current search criteria (which may include searched text, tabs and facets selections, etc.) to replay them later. These queries are given a name and can be displayed in a list (facet, or user menu).

User Menu​

The sq-saved-queries-menu component displays the list of saved queries, lets a user save his current query and allows to reorganize the list (See the Manage modal below).

Saved queries menu

This menu is meant to be inserted in a Bootstrap-styled navbar:

<ul class="navbar-nav">
<sq-saved-queries-menu></sq-saved-queries-menu>
<!-- Other menus -->
</ul>

Facet​

The sq-facet-saved-queries component displays the list of saved queries, lets a user re-play one of them, open the Manage modal (see below), or delete specific queries.

Saved queries facet

This facet is meant to work with the sq-facet-card component (See Facet Module):

<sq-facet-card [title]="'msg#savedQueries.savedQueries'"
[tooltip]="'msg#home.savedQueriesTooltip'"
[icon]="'fas fa-save'">
<sq-facet-saved-queries #facet [maxQueries]="5"></sq-facet-saved-queries>
</sq-facet-card>

The component accepts the following (optional) inputs:

  • searchRoute (default: '/search'): The route to navigate to when searching a query (clicked by the user).
  • maxQueries (default: 5): The maximum number of queries to display (the rest is available with pagination).
  • enableDelete (default: true): Whether to enable the deletion of queries in the facet.

Service & Modals​

The SavedQueriesService is the access point for the list of saved queries (SavedQueriesService.savedqueries), and it provides a list of public methods to create, read, update and delete this data (CRUD API).

Additional methods allow to display modal dialogs:

  • createSavedQueryModal() displays the sq-edit-saved-query modal component which prompts the user for a name (for the saved query)
  • manageSavedQueriesModal() displays the sq-manage-saved-queries modal component which displays the list of queries and lets the user reorganize it (change the order, remove or rename elements)
  • exportModal() displays the sq-export-query modal component which allows to export a saved query or a list of results.

Manage saved queries modal Manage Modal component to reorder, rename or delete saved queries

Recent Queries​

Recent Queries are a functionality that records the latest queries of the user in the User Settings. These queries can then be displayed (eg. in a facet), or used in other ways (eg. autocomplete).

Facet​

The sq-facet-recent-queries component displays the list of recent queries and lets a user re-play, delete or save one of them.

Recent queries facet

This facet is meant to work with the sq-facet-card component (See Facet Module):

<sq-facet-card [title]="'msg#facet.recentQueries.title'"
[tooltip]="'msg#home.recentQueriesTooltip'"
[icon]="'fas fa-history'">
<sq-facet-recent-queries #facet [maxQueries]="5"></sq-facet-recent-queries>
</sq-facet-card>

The component accepts the following (optional) inputs:

  • searchRoute (default: '/search'): The route to navigate to when searching a query (clicked by the user).
  • maxQueries (default: 5): The maximum number of queries to display (the rest is available with pagination).
  • enableDelete (default: true): Whether to enable the deletion of queries in the facet.
  • enableSave (default: true): Whether to enable saving a recent query in the facet.

Service​

The RecentQueriesService is the access point for the list of recent queries (RecentQueriesService.recentqueries), and it provides a list of public methods to create, read, update and delete this data (CRUD API).

Recent Documents​

Recent Documents are a functionality that records the latest documents opened by the user in the User Settings. This list of documents can then be displayed (eg. in a facet), or used in other ways (eg. autocomplete).

Facet​

The sq-facet-recent-documents component displays the list of recent document and lets a user re-open one, or remove it from the list.

Recent documents facet

This facet is meant to work with the sq-facet-card component (See Facet Module):

<sq-facet-card [title]="'msg#savedQueries.savedQueries'"
[tooltip]="'msg#home.savedQueriesTooltip'"
[icon]="'fas fa-save'">
<sq-facet-recent-documents #facet [maxDocuments]="5"></sq-facet-recent-documents>
</sq-facet-card>

The component accepts the following (optional) inputs:

  • maxDocuments (default: 5): The maximum number of documents to display (the rest is available with pagination).
  • enableDelete (default: true): Whether to enable the deletion of documents from the list.
  • openOriginal (default: false): Whether to open the original document (record.url1) when clicked, or simply emit an event ((documentOpened) event emitter).

Service​

The RecentDocumentsService is the access point for the list of recent documents (RecentDocumentsService.recentdocuments), and it provides a list of public methods to create, read, update and delete this data (CRUD API).

Alerts​

Alerts are a functionality that lets a user schedule and subscribe to a search alert (which will regularly inform them of new relevant content). These alerts can then be displayed (eg. in a user menu), edited (Edit modal) and reorganized (Manage modal).

User Menu​

The sq-alerts-menu component displays the list of alerts, lets a user schedule an alert for the current query and allows to reorganize the list (See the Manage modal below).

Alerts menu

This menu is meant to be inserted in a Bootstrap-styled navbar:

<ul class="navbar-nav">
<sq-alerts-menu></sq-alerts-menu>
<!-- Other menus -->
</ul>

Service & Modals​

The AlertsService is the access point for the list of alerts (AlertsService.Alerts), and it provides a list of public methods to create, read, update and delete this data (CRUD API).

Additional methods allow to display modal dialogs:

  • createAlertModal() displays the sq-edit-alert modal component which lets the user create and schedule an alert.
  • editAlertModal() displays the sq-edit-alert modal component (same as above) which allows to edit the parameters of an existing alert.
  • manageAlertsModal() displays the sq-manage-alerts modal component which displays the list of alerts and lets the user reorganize it (change the order, remove or rename elements). This component is similar to the sq-manage-saved-queries component.

Alerts modal Edit/Create Modal component for alerts

Baskets​

Baskets (a.k.a Bookmarks or Collections) are a functionality that lets users store specific documents to retrieve them later. A basket is essentially a named list of document ids (the document is only referenced, not copied).

Note: in Vanilla Search, Baskets are actually renamed "Collections" (via internationalization).

User Menu​

The sq-baskets-menu component displays the list of baskets, lets a user create a new basket and reorganize the list (See the Manage modal below).

This menu is meant to be inserted in a Bootstrap-styled navbar.

Facet​

The sq-facet-baskets component displays the list of baskets, lets a user open one of them, create a new one, open the Manage modal (see below), and delete specific baskets.

This facet is meant to work with the sq-facet-card component (See Facet Module).

The component accepts the following (optional) inputs:

  • searchRoute (default: '/search'): The route to navigate to when opening a basket (clicked by the user).
  • maxBaskets (default: 5): The maximum number of baskets to display (the rest is available with pagination).
  • enableDelete (default: true): Whether to enable the deletion of baskets in the facet.

Service & Modals​

The BasketsService is the access point for the list of baskets (BasketsService.baskets), and it provides a list of public methods to create, read, update and delete this data (CRUD API).

Additional methods allow to display modal dialogs:

  • addToBasketModal() displays the sq-select-basket modal component which lets the user select a basket. The input document is then added to that basket.
  • removeFromBasketModal() performs the same action as addToBasketModal() but removes the document from that basket.
  • createBasketModal() displays the sq-edit-basket modal component which allows to create a basket after giving it a name.
  • manageBasketsModal() displays the sq-manage-baskets modal component which displays the list of baskets and lets the user reorganize it (change the order, remove or rename elements). This component is similar to the sq-manage-saved-queries component.

Baskets modal Select Modal to add or remove a document to/from a basket