@sinequa/atomic-angular 1.0.4 → 1.0.7

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
@@ -2705,12 +2705,24 @@ declare class AggregationsService {
2705
2705
  * @returns The updated tree node with parent nodes opened if necessary.
2706
2706
  */
2707
2707
  private openParentNodes;
2708
- getAuthorizedFilters(aggregations: Aggregation[] | undefined, includedFilters?: string[], excludedFilters?: string[]): {
2708
+ getAuthorizedFilters(aggregations: Aggregation[] | undefined, includedFilters?: string[], excludedFilters?: string[], homepageOnly?: boolean): {
2709
2709
  field: string;
2710
2710
  column: string;
2711
2711
  name: string;
2712
2712
  }[];
2713
+ /**
2714
+ * Determines whether a custom JSON filter refers to the given aggregation.
2715
+ *
2716
+ * Matches by `name` when it is defined, otherwise falls back to `column`,
2717
+ * resolving column/alias ambiguity through the app store's column map.
2718
+ *
2719
+ * @param filter - The filter object coming from the custom JSON.
2720
+ * @param agg - The aggregation returned by the backend.
2721
+ * @returns `true` if the filter refers to the aggregation.
2722
+ */
2723
+ private matchesAggregation;
2713
2724
  private getFilterCriteria;
2725
+ private getHomepageFilterCriteria;
2714
2726
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AggregationsService, never>;
2715
2727
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<AggregationsService>;
2716
2728
  }
@@ -4181,7 +4193,17 @@ type Theme = (typeof THEMES)[number];
4181
4193
 
4182
4194
  declare function withThemes(app: ApplicationRef, themes: Theme[]): ApplicationRef;
4183
4195
 
4184
- declare function signIn(): Promise<void>;
4196
+ /**
4197
+ * Signs in the user by checking the global configuration for authentication method and acting accordingly.
4198
+ *
4199
+ * This function first clears any existing session tokens to ensure a clean authentication state. It then checks the
4200
+ * global configuration to determine whether to use credentials-based authentication or Single Sign-On (SSO). If
4201
+ * credentials are used, it redirects the user to the login page. If SSO is enabled, it reloads the page to trigger
4202
+ * the SSO login process. If neither method is specified, it attempts a standard login and handles any errors that
4203
+ * may occur during the process.
4204
+ * @returns A promise resolving to a boolean indicating the success of the sign-in operation.
4205
+ */
4206
+ declare function signIn(): Promise<boolean>;
4185
4207
 
4186
4208
  /**
4187
4209
  * Bootstraps the application by ensuring the user is authenticated and initializing the application.
@@ -5912,7 +5934,7 @@ declare class SourceComponent {
5912
5934
  readonly iconDetails: _angular_core.Signal<{
5913
5935
  iconClass: string;
5914
5936
  iconPath?: string;
5915
- } | undefined>;
5937
+ }>;
5916
5938
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<SourceComponent, never>;
5917
5939
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<SourceComponent, "source, Source", never, { "collection": { "alias": "collection"; "required": false; "isSignal": true; }; "connector": { "alias": "connector"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
5918
5940
  }
@@ -6908,7 +6930,7 @@ declare class AdvancedFiltersComponent {
6908
6930
  protected allowEmptySearch: _angular_core.Signal<boolean>;
6909
6931
  text: string;
6910
6932
  constructor();
6911
- getFirstPageQuery(): Promise<void>;
6933
+ getFirstPageQuery(queryName: string): Promise<void>;
6912
6934
  onTabChange(tab: string): void;
6913
6935
  onSearch(): void;
6914
6936
  /** Generate the LegacyFilter to add to the query */
@@ -8695,7 +8717,7 @@ declare class DrawerAdvancedFiltersComponent extends DrawerComponent {
8695
8717
  protected allowEmptySearch: _angular_core.Signal<boolean>;
8696
8718
  text: string;
8697
8719
  constructor();
8698
- getFirstPageQuery(): Promise<void>;
8720
+ getFirstPageQuery(queryName: string): Promise<void>;
8699
8721
  onTabChange(tab: string): void;
8700
8722
  onSearch(): void;
8701
8723
  /** Generate the LegacyFilter to add to the query */
@@ -11822,9 +11844,10 @@ declare class MoreButtonComponent {
11822
11844
  includedFilters: _angular_core.InputSignal<string[]>;
11823
11845
  excludedFilters: _angular_core.InputSignal<string[]>;
11824
11846
  aggregations: _angular_core.InputSignal<Aggregation[] | undefined>;
11847
+ homepage: _angular_core.InputSignalWithTransform<boolean, unknown>;
11825
11848
  totalFiltersCount: _angular_core.Signal<number>;
11826
11849
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<MoreButtonComponent, never>;
11827
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<MoreButtonComponent, "more-button, MoreButton", never, { "count": { "alias": "count"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; "includedFilters": { "alias": "includedFilters"; "required": false; "isSignal": true; }; "excludedFilters": { "alias": "excludedFilters"; "required": false; "isSignal": true; }; "aggregations": { "alias": "aggregations"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
11850
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<MoreButtonComponent, "more-button, MoreButton", never, { "count": { "alias": "count"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; "includedFilters": { "alias": "includedFilters"; "required": false; "isSignal": true; }; "excludedFilters": { "alias": "excludedFilters"; "required": false; "isSignal": true; }; "aggregations": { "alias": "aggregations"; "required": false; "isSignal": true; }; "homepage": { "alias": "homepage"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
11828
11851
  }
11829
11852
 
11830
11853
  declare class FiltersBarComponent {
@@ -11863,6 +11886,15 @@ declare class FiltersBarComponent {
11863
11886
  * @default true
11864
11887
  */
11865
11888
  showMoreFiltersButton: _angular_core.InputSignalWithTransform<boolean, unknown>;
11889
+ /**
11890
+ * When enabled, only the filters flagged with `homepage: true` in the "filters" custom JSON
11891
+ * are displayed. If no filter is flagged, the bar shows no filters.
11892
+ *
11893
+ * Accepts a boolean value or a string that can be transformed to a boolean.
11894
+ *
11895
+ * @default false
11896
+ */
11897
+ homepage: _angular_core.InputSignalWithTransform<boolean, unknown>;
11866
11898
  direction: _angular_core.InputSignal<"horizontal" | "vertical">;
11867
11899
  /**
11868
11900
  * The distance in pixels between the popover and its trigger element.
@@ -12359,7 +12391,7 @@ declare class FiltersBarComponent {
12359
12391
  */
12360
12392
  handleClick(event: MouseEvent): void;
12361
12393
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<FiltersBarComponent, never>;
12362
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<FiltersBarComponent, "filters-bar, FiltersBar, filtersbar", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; "morePosition": { "alias": "morePosition"; "required": false; "isSignal": true; }; "aggregations": { "alias": "aggregations"; "required": false; "isSignal": true; }; "includeFilters": { "alias": "includeFilters"; "required": false; "isSignal": true; }; "excludeFilters": { "alias": "excludeFilters"; "required": false; "isSignal": true; }; "filtersCount": { "alias": "filtersCount"; "required": false; "isSignal": true; }; "showMoreFiltersButton": { "alias": "showMoreFiltersButton"; "required": false; "isSignal": true; }; "direction": { "alias": "direction"; "required": false; "isSignal": true; }; "offset": { "alias": "offset"; "required": false; "isSignal": true; }; "expandedLevel": { "alias": "expandedLevel"; "required": false; "isSignal": true; }; }, { "onClearFilters": "onClearFilters"; "onClearBasket": "onClearBasket"; }, never, never, true, never>;
12394
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<FiltersBarComponent, "filters-bar, FiltersBar, filtersbar", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; "morePosition": { "alias": "morePosition"; "required": false; "isSignal": true; }; "aggregations": { "alias": "aggregations"; "required": false; "isSignal": true; }; "includeFilters": { "alias": "includeFilters"; "required": false; "isSignal": true; }; "excludeFilters": { "alias": "excludeFilters"; "required": false; "isSignal": true; }; "filtersCount": { "alias": "filtersCount"; "required": false; "isSignal": true; }; "showMoreFiltersButton": { "alias": "showMoreFiltersButton"; "required": false; "isSignal": true; }; "homepage": { "alias": "homepage"; "required": false; "isSignal": true; }; "direction": { "alias": "direction"; "required": false; "isSignal": true; }; "offset": { "alias": "offset"; "required": false; "isSignal": true; }; "expandedLevel": { "alias": "expandedLevel"; "required": false; "isSignal": true; }; }, { "onClearFilters": "onClearFilters"; "onClearBasket": "onClearBasket"; }, never, never, true, never>;
12363
12395
  }
12364
12396
 
12365
12397
  declare class MoreComponent {
@@ -12368,6 +12400,7 @@ declare class MoreComponent {
12368
12400
  includedFilters: _angular_core.InputSignal<string[]>;
12369
12401
  excludedFilters: _angular_core.InputSignal<string[]>;
12370
12402
  aggregations: _angular_core.InputSignal<Aggregation[] | undefined>;
12403
+ homepage: _angular_core.InputSignalWithTransform<boolean, unknown>;
12371
12404
  appStore: {
12372
12405
  name: _angular_core.Signal<string>;
12373
12406
  description?: _angular_core.Signal<string | undefined> | undefined;
@@ -12800,7 +12833,7 @@ declare class MoreComponent {
12800
12833
  */
12801
12834
  hasFilters(aggregation: Aggregation): boolean;
12802
12835
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<MoreComponent, never>;
12803
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<MoreComponent, "more, More", never, { "count": { "alias": "count"; "required": false; "isSignal": true; }; "includedFilters": { "alias": "includedFilters"; "required": false; "isSignal": true; }; "excludedFilters": { "alias": "excludedFilters"; "required": false; "isSignal": true; }; "aggregations": { "alias": "aggregations"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
12836
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<MoreComponent, "more, More", never, { "count": { "alias": "count"; "required": false; "isSignal": true; }; "includedFilters": { "alias": "includedFilters"; "required": false; "isSignal": true; }; "excludedFilters": { "alias": "excludedFilters"; "required": false; "isSignal": true; }; "aggregations": { "alias": "aggregations"; "required": false; "isSignal": true; }; "homepage": { "alias": "homepage"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
12804
12837
  }
12805
12838
 
12806
12839
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sinequa/atomic-angular",
3
- "version": "1.0.4",
3
+ "version": "1.0.7",
4
4
  "peerDependencies": {
5
5
  "@angular/core": "^20.0.0"
6
6
  },