@empathyco/x-components 8.12.2 → 8.13.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 CHANGED
@@ -3,6 +3,21 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [8.13.1](https://github.com/empathyco/x/compare/@empathyco/x-components@8.13.0...@empathyco/x-components@8.13.1) (2026-08-25)
7
+
8
+ **Note:** Version bump only for package @empathyco/x-components
9
+
10
+
11
+
12
+
13
+
14
+ ## [8.13.0](https://github.com/empathyco/x/compare/@empathyco/x-components@8.12.2...@empathyco/x-components@8.13.0) (2026-08-25)
15
+
16
+ ### Features
17
+
18
+ * **facets:** add Boolean facet type (#2157)
19
+
20
+
6
21
  ## [8.12.2](https://github.com/empathyco/x/compare/@empathyco/x-components@8.12.1...@empathyco/x-components@8.12.2) (2026-08-25)
7
22
 
8
23
  ### Bug Fixes
@@ -9,5 +9,5 @@ Facet type for the `platform` API. It can be: value, hierarchical or range.
9
9
  **Signature:**
10
10
 
11
11
  ```typescript
12
- export type PlatformFacetType = 'value' | 'hierarchical' | 'range' | 'editable-range';
12
+ export type PlatformFacetType = 'value' | 'hierarchical' | 'range' | 'editable-range' | 'boolean';
13
13
  ```
@@ -0,0 +1,13 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@empathyco/x-types](./x-types.md) &gt; [BooleanFacet](./x-types.booleanfacet.md) &gt; [filters](./x-types.booleanfacet.filters.md)
4
+
5
+ ## BooleanFacet.filters property
6
+
7
+ Filters available for the facet.
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ filters: BooleanFilter[];
13
+ ```
@@ -0,0 +1,78 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@empathyco/x-types](./x-types.md) &gt; [BooleanFacet](./x-types.booleanfacet.md)
4
+
5
+ ## BooleanFacet interface
6
+
7
+ Boolean facet is a trait for filtering results. It extends from [Facet](./x-types.facet.md) changes the modelName and uses [BooleanFilter](./x-types.booleanfilter.md) as filter.
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ export interface BooleanFacet extends Facet
13
+ ```
14
+ **Extends:** [Facet](./x-types.facet.md)
15
+
16
+ ## Properties
17
+
18
+ <table><thead><tr><th>
19
+
20
+ Property
21
+
22
+
23
+ </th><th>
24
+
25
+ Modifiers
26
+
27
+
28
+ </th><th>
29
+
30
+ Type
31
+
32
+
33
+ </th><th>
34
+
35
+ Description
36
+
37
+
38
+ </th></tr></thead>
39
+ <tbody><tr><td>
40
+
41
+ [filters](./x-types.booleanfacet.filters.md)
42
+
43
+
44
+ </td><td>
45
+
46
+
47
+ </td><td>
48
+
49
+ [BooleanFilter](./x-types.booleanfilter.md)<!-- -->\[\]
50
+
51
+
52
+ </td><td>
53
+
54
+ Filters available for the facet.
55
+
56
+
57
+ </td></tr>
58
+ <tr><td>
59
+
60
+ [modelName](./x-types.booleanfacet.modelname.md)
61
+
62
+
63
+ </td><td>
64
+
65
+
66
+ </td><td>
67
+
68
+ 'BooleanFacet'
69
+
70
+
71
+ </td><td>
72
+
73
+ Model name to indicate the facet type.
74
+
75
+
76
+ </td></tr>
77
+ </tbody></table>
78
+
@@ -0,0 +1,13 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@empathyco/x-types](./x-types.md) &gt; [BooleanFacet](./x-types.booleanfacet.md) &gt; [modelName](./x-types.booleanfacet.modelname.md)
4
+
5
+ ## BooleanFacet.modelName property
6
+
7
+ Model name to indicate the facet type.
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ modelName: 'BooleanFacet';
13
+ ```
@@ -13,10 +13,6 @@ export interface BooleanFilter extends FacetFilter
13
13
  ```
14
14
  **Extends:** [FacetFilter](./x-types.facetfilter.md)
15
15
 
16
- ## Remarks
17
-
18
- It is like an "abstract" interface because it is not going to be implemented but it is extended by other interfaces. There will never be an object with this type.
19
-
20
16
  ## Properties
21
17
 
22
18
  <table><thead><tr><th>
@@ -9,5 +9,5 @@ Const to use in the [BooleanFilterModelName](./x-types.booleanfiltermodelname.md
9
9
  **Signature:**
10
10
 
11
11
  ```typescript
12
- BooleanFilterModelNames: readonly ["SimpleFilter", "HierarchicalFilter", "NumberRangeFilter"]
12
+ BooleanFilterModelNames: readonly ["SimpleFilter", "HierarchicalFilter", "NumberRangeFilter", "BooleanFilter"]
13
13
  ```
@@ -9,5 +9,5 @@ Facets model names type. It can be: SimpleFacet, HierarchicalFacet, NumberRangeF
9
9
  **Signature:**
10
10
 
11
11
  ```typescript
12
- export type FacetModelName = 'SimpleFacet' | 'HierarchicalFacet' | 'NumberRangeFacet' | 'EditableNumberRangeFacet';
12
+ export type FacetModelName = 'SimpleFacet' | 'HierarchicalFacet' | 'NumberRangeFacet' | 'EditableNumberRangeFacet' | 'BooleanFacet';
13
13
  ```
@@ -0,0 +1,56 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@empathyco/x-types](./x-types.md) &gt; [isBooleanFacet](./x-types.isbooleanfacet.md)
4
+
5
+ ## isBooleanFacet() function
6
+
7
+ Type guard to check if a facet is an [BooleanFacet](./x-types.booleanfacet.md)<!-- -->.
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ export declare function isBooleanFacet(facet: Facet): facet is BooleanFacet;
13
+ ```
14
+
15
+ ## Parameters
16
+
17
+ <table><thead><tr><th>
18
+
19
+ Parameter
20
+
21
+
22
+ </th><th>
23
+
24
+ Type
25
+
26
+
27
+ </th><th>
28
+
29
+ Description
30
+
31
+
32
+ </th></tr></thead>
33
+ <tbody><tr><td>
34
+
35
+ facet
36
+
37
+
38
+ </td><td>
39
+
40
+ [Facet](./x-types.facet.md)
41
+
42
+
43
+ </td><td>
44
+
45
+ The facet to check.
46
+
47
+
48
+ </td></tr>
49
+ </tbody></table>
50
+
51
+ **Returns:**
52
+
53
+ facet is [BooleanFacet](./x-types.booleanfacet.md)
54
+
55
+ True if the facet is a [BooleanFacet](./x-types.booleanfacet.md)<!-- -->, false otherwise.
56
+
@@ -25,6 +25,17 @@ Description
25
25
  </th></tr></thead>
26
26
  <tbody><tr><td>
27
27
 
28
+ [isBooleanFacet(facet)](./x-types.isbooleanfacet.md)
29
+
30
+
31
+ </td><td>
32
+
33
+ Type guard to check if a facet is an [BooleanFacet](./x-types.booleanfacet.md)<!-- -->.
34
+
35
+
36
+ </td></tr>
37
+ <tr><td>
38
+
28
39
  [isBooleanFilter(filter)](./x-types.isbooleanfilter.md)
29
40
 
30
41
 
@@ -290,6 +301,17 @@ Response for the task endpoint.
290
301
  A banner is an image with a title, that when clicked redirect the user to an URL. Often it is represented as a 100% wide element that appears on top of the results inside the grid or between rows.
291
302
 
292
303
 
304
+ </td></tr>
305
+ <tr><td>
306
+
307
+ [BooleanFacet](./x-types.booleanfacet.md)
308
+
309
+
310
+ </td><td>
311
+
312
+ Boolean facet is a trait for filtering results. It extends from [Facet](./x-types.facet.md) changes the modelName and uses [BooleanFilter](./x-types.booleanfilter.md) as filter.
313
+
314
+
293
315
  </td></tr>
294
316
  <tr><td>
295
317
 
@@ -0,0 +1,27 @@
1
+ import { isBooleanFilter } from '@empathyco/x-types';
2
+ import { addFacetIfNotPresent } from './add-facet-if-not-present.js';
3
+
4
+ /**
5
+ * Allows selecting and deselecting a filter of {@link BooleanFilter}.
6
+ *
7
+ * @internal
8
+ */
9
+ class BooleanFilterEntity {
10
+ constructor(store) {
11
+ this.store = store;
12
+ }
13
+ deselect(filterParam) {
14
+ const filter = filterParam;
15
+ this.store.commit('x/facets/mutateFilter', { filter, newFilterState: { selected: false } });
16
+ addFacetIfNotPresent(this.store, filter.facetId, 'BooleanFacet');
17
+ }
18
+ select(filterParam) {
19
+ const filter = filterParam;
20
+ this.store.commit('x/facets/mutateFilter', { filter, newFilterState: { selected: true } });
21
+ addFacetIfNotPresent(this.store, filter.facetId, 'BooleanFacet');
22
+ }
23
+ }
24
+ BooleanFilterEntity.accepts = isBooleanFilter;
25
+
26
+ export { BooleanFilterEntity };
27
+ //# sourceMappingURL=boolean-filter.entity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"boolean-filter.entity.js","sources":["../../../../../src/x-modules/facets/entities/boolean-filter.entity.ts"],"sourcesContent":["import type { BooleanFilter, Filter } from '@empathyco/x-types'\nimport type { Store } from 'vuex'\nimport type { RootXStoreState } from '../../../store/store.types'\nimport type { FilterEntity } from './types'\nimport { isBooleanFilter } from '@empathyco/x-types'\nimport { addFacetIfNotPresent } from './add-facet-if-not-present'\n\n/**\n * Allows selecting and deselecting a filter of {@link BooleanFilter}.\n *\n * @internal\n */\nexport class BooleanFilterEntity implements FilterEntity {\n public static accepts = isBooleanFilter\n\n public constructor(protected store: Store<RootXStoreState>) {}\n\n deselect(filterParam: Filter): void {\n const filter = filterParam as BooleanFilter\n this.store.commit('x/facets/mutateFilter', { filter, newFilterState: { selected: false } })\n addFacetIfNotPresent(this.store, filter.facetId, 'BooleanFacet')\n }\n\n select(filterParam: Filter): void {\n const filter = filterParam as BooleanFilter\n this.store.commit('x/facets/mutateFilter', { filter, newFilterState: { selected: true } })\n addFacetIfNotPresent(this.store, filter.facetId, 'BooleanFacet')\n }\n}\n"],"names":[],"mappings":";;;AAOA;;;;AAIG;MACU,mBAAmB,CAAA;AAG9B,IAAA,WAAA,CAA6B,KAA6B,EAAA;QAA7B,IAAA,CAAA,KAAK,GAAL,KAAK;IAA2B;AAE7D,IAAA,QAAQ,CAAC,WAAmB,EAAA;QAC1B,MAAM,MAAM,GAAG,WAA4B;AAC3C,QAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,uBAAuB,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC;QAC3F,oBAAoB,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,cAAc,CAAC;IAClE;AAEA,IAAA,MAAM,CAAC,WAAmB,EAAA;QACxB,MAAM,MAAM,GAAG,WAA4B;AAC3C,QAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,uBAAuB,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC;QAC1F,oBAAoB,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,cAAc,CAAC;IAClE;;AAdc,mBAAA,CAAA,OAAO,GAAG,eAAe;;;;"}
@@ -1,5 +1,6 @@
1
1
  import { isFacetFilter } from '@empathyco/x-types';
2
2
  import { UNKNOWN_FACET_KEY } from '../store/constants.js';
3
+ import { BooleanFilterEntity } from './boolean-filter.entity.js';
3
4
  import { EditableNumberRangeFilterEntity } from './editable-number-range-filter.entity.js';
4
5
  import { HierarchicalFilterEntity } from './hierarchical-filter.entity.js';
5
6
  import { NumberRangeFilterEntity } from './number-range-filter.entity.js';
@@ -22,6 +23,7 @@ class FilterEntityFactory {
22
23
  NumberRangeFilterEntity,
23
24
  EditableNumberRangeFilterEntity,
24
25
  RawFilterEntity,
26
+ BooleanFilterEntity,
25
27
  ];
26
28
  /**
27
29
  * The registered modifiers grouped by the facetId to be applied.
@@ -1 +1 @@
1
- {"version":3,"file":"filter-entity.factory.js","sources":["../../../../../src/x-modules/facets/entities/filter-entity.factory.ts"],"sourcesContent":["import type { Facet, Filter, FilterModelName } from '@empathyco/x-types'\nimport type { Store } from 'vuex'\nimport type { RootXStoreState } from '../../../store/store.types'\nimport type { FilterEntity, FilterEntityConstructor, FilterEntityModifier } from './types'\nimport { isFacetFilter } from '@empathyco/x-types'\nimport { UNKNOWN_FACET_KEY } from '../store/constants'\nimport { EditableNumberRangeFilterEntity } from './editable-number-range-filter.entity'\nimport { HierarchicalFilterEntity } from './hierarchical-filter.entity'\nimport { NumberRangeFilterEntity } from './number-range-filter.entity'\nimport { RawFilterEntity } from './raw-filter.entity'\nimport { SimpleFilterEntity } from './simple-filter.entity'\n\n/**\n * Creates {@link FilterEntity | FilterEntities} based on the provided configs.\n *\n * @internal\n */\nexport class FilterEntityFactory {\n /**\n * The public global instance of the Singleton.\n *\n * @remarks The constructor is not private, so it's possible to create more instances,\n * to simplify the testing.\n */\n public static instance = new FilterEntityFactory()\n\n /**\n * The registered entities by default to be used by the Factory.\n */\n protected entities = [\n SimpleFilterEntity,\n HierarchicalFilterEntity,\n NumberRangeFilterEntity,\n EditableNumberRangeFilterEntity,\n RawFilterEntity,\n ] as FilterEntityConstructor[]\n\n /**\n * The registered modifiers grouped by the facetId to be applied.\n */\n protected modifiersByFacetId: Record<Facet['id'], FilterEntityModifier[]> = {}\n\n /**\n * The registered modifiers grouped by the filter `ModelName` to be applied.\n */\n protected modifiersByFilterModelName: Partial<Record<FilterModelName, FilterEntityModifier[]>> =\n {}\n\n /**\n * Contains the instantiated entities for each facet.\n *\n * @internal\n */\n protected cache: Record<Facet['id'] | typeof UNKNOWN_FACET_KEY, FilterEntity> = {}\n\n /**\n * Creates a new FilterEntity from a filter.\n *\n * @param store - The {@link https://vuex.vuejs.org/guide/ | Vuex Store} that the entity will\n * use.\n * @param filter - The {@link @empathyco/x-types#Filter | Filter} necessary to know what\n * {@link FilterEntity} to create.\n * @returns The {@link FilterEntity} created by the factory.\n */\n getFilterEntity(store: Store<RootXStoreState>, filter: Filter): FilterEntity {\n const cacheKey = isFacetFilter(filter) ? filter.facetId : UNKNOWN_FACET_KEY\n return this.cache[cacheKey] ?? (this.cache[cacheKey] = this.createFilterEntity(store, filter))\n }\n\n /**\n * Creates a brand new {@link FilterEntity} for the given\n * {@link @empathyco/x-types#Filter | Filter}.\n *\n * @param store - The store which should be mutated through the entity.\n * @param filter - The filter to create the entity for.\n * @returns A new {@link FilterEntity} for the given {@link @empathyco/x-types#Filter | Filter}.\n * @internal\n */\n protected createFilterEntity(store: Store<RootXStoreState>, filter: Filter): FilterEntity {\n const filterEntityConstructor = this.entities.find(entity => entity.accepts(filter))\n if (!filterEntityConstructor) {\n throw new Error(`Entity configuration for ${filter.modelName} not registered.`)\n }\n // eslint-disable-next-line new-cap\n const entity = new filterEntityConstructor(store)\n const modifiers = isFacetFilter(filter)\n ? (this.modifiersByFacetId[filter.facetId] ??\n this.modifiersByFilterModelName[filter.modelName] ??\n [])\n : []\n return modifiers.reduce(\n // eslint-disable-next-line new-cap\n (modifiedEntity, modifier) => new modifier(store, modifiedEntity),\n entity,\n )\n }\n\n /**\n * Registers a new {@link FilterEntity} to be used by the factory.\n *\n * @param entity - The new {@link FilterEntity} to be registered in the factory.\n */\n registerFilterEntity(entity: FilterEntityConstructor): void {\n if (!this.entities.includes(entity)) {\n this.entities.push(entity)\n }\n }\n\n /**\n * Registers a list of modifiers to be used with the {@link FilterEntity | FilterEntities} of a\n * particular facet.\n *\n * @param facetId - The facet id whose Entities will be modified.\n * @param modifiers - The list of modifiers to be registered.\n */\n registerModifierByFacetId(facetId: Facet['id'], ...modifiers: FilterEntityModifier[]): void {\n this.updateModifiers(this.modifiersByFacetId, facetId, modifiers)\n }\n\n /**\n * Registers a list of modifiers to be used with the {@link FilterEntity | FilterEntities} of a\n * particular facet.\n *\n * @param filterModelName - The facet ModelName whose Entities will be modified.\n * @param modifiers - The list of modifiers to be registered.\n */\n registerModifierByFilterModelName(\n filterModelName: FilterModelName,\n ...modifiers: FilterEntityModifier[]\n ): void {\n this.updateModifiers(this.modifiersByFilterModelName, filterModelName, modifiers)\n }\n\n /**\n * Updates the modifiers for a particular facet.\n *\n * @param modifiersRecord - The map of modifiers to be updated.\n * @param modifierKey - The id whose modifiers will be updated.\n * @param modifiers - The list of new modifiers to be registered.\n */\n protected updateModifiers(\n modifiersRecord: Record<string, FilterEntityModifier[]>,\n modifierKey: string | number,\n modifiers: FilterEntityModifier[],\n ): void {\n if (!modifiersRecord[modifierKey]) {\n modifiersRecord[modifierKey] = []\n }\n const facetModifiers = modifiersRecord[modifierKey]\n const newModifiers = modifiers.filter(modifier => !facetModifiers.includes(modifier))\n facetModifiers.push(...newModifiers)\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"filter-entity.factory.js","sources":["../../../../../src/x-modules/facets/entities/filter-entity.factory.ts"],"sourcesContent":["import type { Facet, Filter, FilterModelName } from '@empathyco/x-types'\nimport type { Store } from 'vuex'\nimport type { RootXStoreState } from '../../../store/store.types'\nimport type { FilterEntity, FilterEntityConstructor, FilterEntityModifier } from './types'\nimport { isFacetFilter } from '@empathyco/x-types'\nimport { UNKNOWN_FACET_KEY } from '../store/constants'\nimport { BooleanFilterEntity } from './boolean-filter.entity'\nimport { EditableNumberRangeFilterEntity } from './editable-number-range-filter.entity'\nimport { HierarchicalFilterEntity } from './hierarchical-filter.entity'\nimport { NumberRangeFilterEntity } from './number-range-filter.entity'\nimport { RawFilterEntity } from './raw-filter.entity'\nimport { SimpleFilterEntity } from './simple-filter.entity'\n\n/**\n * Creates {@link FilterEntity | FilterEntities} based on the provided configs.\n *\n * @internal\n */\nexport class FilterEntityFactory {\n /**\n * The public global instance of the Singleton.\n *\n * @remarks The constructor is not private, so it's possible to create more instances,\n * to simplify the testing.\n */\n public static instance = new FilterEntityFactory()\n\n /**\n * The registered entities by default to be used by the Factory.\n */\n protected entities = [\n SimpleFilterEntity,\n HierarchicalFilterEntity,\n NumberRangeFilterEntity,\n EditableNumberRangeFilterEntity,\n RawFilterEntity,\n BooleanFilterEntity,\n ] as FilterEntityConstructor[]\n\n /**\n * The registered modifiers grouped by the facetId to be applied.\n */\n protected modifiersByFacetId: Record<Facet['id'], FilterEntityModifier[]> = {}\n\n /**\n * The registered modifiers grouped by the filter `ModelName` to be applied.\n */\n protected modifiersByFilterModelName: Partial<Record<FilterModelName, FilterEntityModifier[]>> =\n {}\n\n /**\n * Contains the instantiated entities for each facet.\n *\n * @internal\n */\n protected cache: Record<Facet['id'] | typeof UNKNOWN_FACET_KEY, FilterEntity> = {}\n\n /**\n * Creates a new FilterEntity from a filter.\n *\n * @param store - The {@link https://vuex.vuejs.org/guide/ | Vuex Store} that the entity will\n * use.\n * @param filter - The {@link @empathyco/x-types#Filter | Filter} necessary to know what\n * {@link FilterEntity} to create.\n * @returns The {@link FilterEntity} created by the factory.\n */\n getFilterEntity(store: Store<RootXStoreState>, filter: Filter): FilterEntity {\n const cacheKey = isFacetFilter(filter) ? filter.facetId : UNKNOWN_FACET_KEY\n return this.cache[cacheKey] ?? (this.cache[cacheKey] = this.createFilterEntity(store, filter))\n }\n\n /**\n * Creates a brand new {@link FilterEntity} for the given\n * {@link @empathyco/x-types#Filter | Filter}.\n *\n * @param store - The store which should be mutated through the entity.\n * @param filter - The filter to create the entity for.\n * @returns A new {@link FilterEntity} for the given {@link @empathyco/x-types#Filter | Filter}.\n * @internal\n */\n protected createFilterEntity(store: Store<RootXStoreState>, filter: Filter): FilterEntity {\n const filterEntityConstructor = this.entities.find(entity => entity.accepts(filter))\n if (!filterEntityConstructor) {\n throw new Error(`Entity configuration for ${filter.modelName} not registered.`)\n }\n // eslint-disable-next-line new-cap\n const entity = new filterEntityConstructor(store)\n const modifiers = isFacetFilter(filter)\n ? (this.modifiersByFacetId[filter.facetId] ??\n this.modifiersByFilterModelName[filter.modelName] ??\n [])\n : []\n return modifiers.reduce(\n // eslint-disable-next-line new-cap\n (modifiedEntity, modifier) => new modifier(store, modifiedEntity),\n entity,\n )\n }\n\n /**\n * Registers a new {@link FilterEntity} to be used by the factory.\n *\n * @param entity - The new {@link FilterEntity} to be registered in the factory.\n */\n registerFilterEntity(entity: FilterEntityConstructor): void {\n if (!this.entities.includes(entity)) {\n this.entities.push(entity)\n }\n }\n\n /**\n * Registers a list of modifiers to be used with the {@link FilterEntity | FilterEntities} of a\n * particular facet.\n *\n * @param facetId - The facet id whose Entities will be modified.\n * @param modifiers - The list of modifiers to be registered.\n */\n registerModifierByFacetId(facetId: Facet['id'], ...modifiers: FilterEntityModifier[]): void {\n this.updateModifiers(this.modifiersByFacetId, facetId, modifiers)\n }\n\n /**\n * Registers a list of modifiers to be used with the {@link FilterEntity | FilterEntities} of a\n * particular facet.\n *\n * @param filterModelName - The facet ModelName whose Entities will be modified.\n * @param modifiers - The list of modifiers to be registered.\n */\n registerModifierByFilterModelName(\n filterModelName: FilterModelName,\n ...modifiers: FilterEntityModifier[]\n ): void {\n this.updateModifiers(this.modifiersByFilterModelName, filterModelName, modifiers)\n }\n\n /**\n * Updates the modifiers for a particular facet.\n *\n * @param modifiersRecord - The map of modifiers to be updated.\n * @param modifierKey - The id whose modifiers will be updated.\n * @param modifiers - The list of new modifiers to be registered.\n */\n protected updateModifiers(\n modifiersRecord: Record<string, FilterEntityModifier[]>,\n modifierKey: string | number,\n modifiers: FilterEntityModifier[],\n ): void {\n if (!modifiersRecord[modifierKey]) {\n modifiersRecord[modifierKey] = []\n }\n const facetModifiers = modifiersRecord[modifierKey]\n const newModifiers = modifiers.filter(modifier => !facetModifiers.includes(modifier))\n facetModifiers.push(...newModifiers)\n }\n}\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@empathyco/x-components",
3
- "version": "8.12.2",
3
+ "version": "8.13.1",
4
4
  "description": "Empathy X Components",
5
5
  "author": "Empathy Systems Corporation S.L.",
6
6
  "license": "Apache-2.0",
@@ -67,10 +67,10 @@
67
67
  "vuex": "4.0.2"
68
68
  },
69
69
  "dependencies": {
70
- "@empathyco/x-adapter": "8.1.8",
71
- "@empathyco/x-adapter-platform": "1.8.0",
72
- "@empathyco/x-types": "10.7.0",
73
- "@empathyco/x-utils": "1.0.9",
70
+ "@empathyco/x-adapter": "8.1.9",
71
+ "@empathyco/x-adapter-platform": "1.9.1",
72
+ "@empathyco/x-types": "10.8.1",
73
+ "@empathyco/x-utils": "1.0.10",
74
74
  "@vue/devtools-api": "~6.6.4",
75
75
  "@vueuse/core": "~12.8.2",
76
76
  "js-md5": "~0.8.3",
@@ -95,7 +95,7 @@
95
95
  "@vue/test-utils": "2.4.11",
96
96
  "convert-source-map": "2.0.0",
97
97
  "esbuild": "0.28.1",
98
- "jsdom": "29.1.1",
98
+ "jsdom": "30.0.1",
99
99
  "rollup": "4.60.4",
100
100
  "rollup-plugin-copy": "3.5.0",
101
101
  "rollup-plugin-delete": "2.2.0",
@@ -117,5 +117,5 @@
117
117
  "access": "public",
118
118
  "directory": "dist"
119
119
  },
120
- "gitHead": "4364944c8845c6ccd36aaeb64a76d098bab7b473"
120
+ "gitHead": "da38da312076220b81ec62482686150ea601292b"
121
121
  }
@@ -4094,7 +4094,7 @@
4094
4094
  },
4095
4095
  {
4096
4096
  "kind": "Content",
4097
- "text": "'value' | 'hierarchical' | 'range' | 'editable-range'"
4097
+ "text": "'value' | 'hierarchical' | 'range' | 'editable-range' | 'boolean'"
4098
4098
  },
4099
4099
  {
4100
4100
  "kind": "Content",
@@ -1655,10 +1655,101 @@
1655
1655
  "endIndex": 2
1656
1656
  }
1657
1657
  },
1658
+ {
1659
+ "kind": "Interface",
1660
+ "canonicalReference": "@empathyco/x-types!BooleanFacet:interface",
1661
+ "docComment": "/**\n * Boolean facet is a trait for filtering results. It extends from {@link Facet} changes the modelName and uses {@link BooleanFilter} as filter.\n *\n * @public\n */\n",
1662
+ "excerptTokens": [
1663
+ {
1664
+ "kind": "Content",
1665
+ "text": "export interface BooleanFacet extends "
1666
+ },
1667
+ {
1668
+ "kind": "Reference",
1669
+ "text": "Facet",
1670
+ "canonicalReference": "@empathyco/x-types!Facet:interface"
1671
+ },
1672
+ {
1673
+ "kind": "Content",
1674
+ "text": " "
1675
+ }
1676
+ ],
1677
+ "fileUrlPath": "temp/types/facet/boolean-facet.model.d.ts",
1678
+ "releaseTag": "Public",
1679
+ "name": "BooleanFacet",
1680
+ "preserveMemberOrder": false,
1681
+ "members": [
1682
+ {
1683
+ "kind": "PropertySignature",
1684
+ "canonicalReference": "@empathyco/x-types!BooleanFacet#filters:member",
1685
+ "docComment": "/**\n * Filters available for the facet.\n */\n",
1686
+ "excerptTokens": [
1687
+ {
1688
+ "kind": "Content",
1689
+ "text": "filters: "
1690
+ },
1691
+ {
1692
+ "kind": "Reference",
1693
+ "text": "BooleanFilter",
1694
+ "canonicalReference": "@empathyco/x-types!BooleanFilter:interface"
1695
+ },
1696
+ {
1697
+ "kind": "Content",
1698
+ "text": "[]"
1699
+ },
1700
+ {
1701
+ "kind": "Content",
1702
+ "text": ";"
1703
+ }
1704
+ ],
1705
+ "isReadonly": false,
1706
+ "isOptional": false,
1707
+ "releaseTag": "Public",
1708
+ "name": "filters",
1709
+ "propertyTypeTokenRange": {
1710
+ "startIndex": 1,
1711
+ "endIndex": 3
1712
+ }
1713
+ },
1714
+ {
1715
+ "kind": "PropertySignature",
1716
+ "canonicalReference": "@empathyco/x-types!BooleanFacet#modelName:member",
1717
+ "docComment": "/**\n * Model name to indicate the facet type.\n */\n",
1718
+ "excerptTokens": [
1719
+ {
1720
+ "kind": "Content",
1721
+ "text": "modelName: "
1722
+ },
1723
+ {
1724
+ "kind": "Content",
1725
+ "text": "'BooleanFacet'"
1726
+ },
1727
+ {
1728
+ "kind": "Content",
1729
+ "text": ";"
1730
+ }
1731
+ ],
1732
+ "isReadonly": false,
1733
+ "isOptional": false,
1734
+ "releaseTag": "Public",
1735
+ "name": "modelName",
1736
+ "propertyTypeTokenRange": {
1737
+ "startIndex": 1,
1738
+ "endIndex": 2
1739
+ }
1740
+ }
1741
+ ],
1742
+ "extendsTokenRanges": [
1743
+ {
1744
+ "startIndex": 1,
1745
+ "endIndex": 2
1746
+ }
1747
+ ]
1748
+ },
1658
1749
  {
1659
1750
  "kind": "Interface",
1660
1751
  "canonicalReference": "@empathyco/x-types!BooleanFilter:interface",
1661
- "docComment": "/**\n * A boolean filter used in a {@link FacetFilter}, which status can be selected or not and it may contains the total results number that the filter should return.\n *\n * @remarks\n *\n * It is like an \"abstract\" interface because it is not going to be implemented but it is extended by other interfaces. There will never be an object with this type.\n *\n * @public\n */\n",
1752
+ "docComment": "/**\n * A boolean filter used in a {@link FacetFilter}, which status can be selected or not and it may contains the total results number that the filter should return.\n *\n * @public\n */\n",
1662
1753
  "excerptTokens": [
1663
1754
  {
1664
1755
  "kind": "Content",
@@ -1815,7 +1906,7 @@
1815
1906
  },
1816
1907
  {
1817
1908
  "kind": "Content",
1818
- "text": "readonly [\"SimpleFilter\", \"HierarchicalFilter\", \"NumberRangeFilter\"]"
1909
+ "text": "readonly [\"SimpleFilter\", \"HierarchicalFilter\", \"NumberRangeFilter\", \"BooleanFilter\"]"
1819
1910
  }
1820
1911
  ],
1821
1912
  "fileUrlPath": "temp/types/named-model.model.d.ts",
@@ -2917,7 +3008,7 @@
2917
3008
  },
2918
3009
  {
2919
3010
  "kind": "Content",
2920
- "text": "'SimpleFacet' | 'HierarchicalFacet' | 'NumberRangeFacet' | 'EditableNumberRangeFacet'"
3011
+ "text": "'SimpleFacet' | 'HierarchicalFacet' | 'NumberRangeFacet' | 'EditableNumberRangeFacet' | 'BooleanFacet'"
2921
3012
  },
2922
3013
  {
2923
3014
  "kind": "Content",
@@ -3855,6 +3946,62 @@
3855
3946
  ],
3856
3947
  "extendsTokenRanges": []
3857
3948
  },
3949
+ {
3950
+ "kind": "Function",
3951
+ "canonicalReference": "@empathyco/x-types!isBooleanFacet:function(1)",
3952
+ "docComment": "/**\n * Type guard to check if a facet is an {@link BooleanFacet}.\n *\n * @param facet - The facet to check.\n *\n * @returns True if the facet is a {@link BooleanFacet}, false otherwise.\n *\n * @public\n */\n",
3953
+ "excerptTokens": [
3954
+ {
3955
+ "kind": "Content",
3956
+ "text": "export declare function isBooleanFacet(facet: "
3957
+ },
3958
+ {
3959
+ "kind": "Reference",
3960
+ "text": "Facet",
3961
+ "canonicalReference": "@empathyco/x-types!Facet:interface"
3962
+ },
3963
+ {
3964
+ "kind": "Content",
3965
+ "text": "): "
3966
+ },
3967
+ {
3968
+ "kind": "Reference",
3969
+ "text": "facet",
3970
+ "canonicalReference": "@empathyco/x-types!~facet"
3971
+ },
3972
+ {
3973
+ "kind": "Content",
3974
+ "text": " is "
3975
+ },
3976
+ {
3977
+ "kind": "Reference",
3978
+ "text": "BooleanFacet",
3979
+ "canonicalReference": "@empathyco/x-types!BooleanFacet:interface"
3980
+ },
3981
+ {
3982
+ "kind": "Content",
3983
+ "text": ";"
3984
+ }
3985
+ ],
3986
+ "fileUrlPath": "temp/types/facet/boolean-facet.model.d.ts",
3987
+ "returnTypeTokenRange": {
3988
+ "startIndex": 3,
3989
+ "endIndex": 6
3990
+ },
3991
+ "releaseTag": "Public",
3992
+ "overloadIndex": 1,
3993
+ "parameters": [
3994
+ {
3995
+ "parameterName": "facet",
3996
+ "parameterTypeTokenRange": {
3997
+ "startIndex": 1,
3998
+ "endIndex": 2
3999
+ },
4000
+ "isOptional": false
4001
+ }
4002
+ ],
4003
+ "name": "isBooleanFacet"
4004
+ },
3858
4005
  {
3859
4006
  "kind": "Function",
3860
4007
  "canonicalReference": "@empathyco/x-types!isBooleanFilter:function(1)",
@@ -0,0 +1,18 @@
1
+ import type { Filter } from '@empathyco/x-types';
2
+ import type { Store } from 'vuex';
3
+ import type { RootXStoreState } from '../../../store/store.types';
4
+ import type { FilterEntity } from './types';
5
+ import { isBooleanFilter } from '@empathyco/x-types';
6
+ /**
7
+ * Allows selecting and deselecting a filter of {@link BooleanFilter}.
8
+ *
9
+ * @internal
10
+ */
11
+ export declare class BooleanFilterEntity implements FilterEntity {
12
+ protected store: Store<RootXStoreState>;
13
+ static accepts: typeof isBooleanFilter;
14
+ constructor(store: Store<RootXStoreState>);
15
+ deselect(filterParam: Filter): void;
16
+ select(filterParam: Filter): void;
17
+ }
18
+ //# sourceMappingURL=boolean-filter.entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"boolean-filter.entity.d.ts","sourceRoot":"","sources":["../../../../../../src/x-modules/facets/entities/boolean-filter.entity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAiB,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,MAAM,CAAA;AACjC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAGpD;;;;GAIG;AACH,qBAAa,mBAAoB,YAAW,YAAY;IAGnC,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,eAAe,CAAC;IAF1D,OAAc,OAAO,yBAAkB;gBAEV,KAAK,EAAE,KAAK,CAAC,eAAe,CAAC;IAE1D,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAMnC,MAAM,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;CAKlC"}
@@ -1 +1 @@
1
- {"version":3,"file":"filter-entity.factory.d.ts","sourceRoot":"","sources":["../../../../../../src/x-modules/facets/entities/filter-entity.factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACxE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,MAAM,CAAA;AACjC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAE1F,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAOtD;;;;GAIG;AACH,qBAAa,mBAAmB;IAC9B;;;;;OAKG;IACH,OAAc,QAAQ,sBAA4B;IAElD;;OAEG;IACH,SAAS,CAAC,QAAQ,EAMb,uBAAuB,EAAE,CAAA;IAE9B;;OAEG;IACH,SAAS,CAAC,kBAAkB,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,oBAAoB,EAAE,CAAC,CAAK;IAE9E;;OAEG;IACH,SAAS,CAAC,0BAA0B,EAAE,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAC1F;IAEJ;;;;OAIG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,iBAAiB,EAAE,YAAY,CAAC,CAAK;IAElF;;;;;;;;OAQG;IACH,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,YAAY;IAK5E;;;;;;;;OAQG;IACH,SAAS,CAAC,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,YAAY;IAmBzF;;;;OAIG;IACH,oBAAoB,CAAC,MAAM,EAAE,uBAAuB,GAAG,IAAI;IAM3D;;;;;;OAMG;IACH,yBAAyB,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,SAAS,EAAE,oBAAoB,EAAE,GAAG,IAAI;IAI3F;;;;;;OAMG;IACH,iCAAiC,CAC/B,eAAe,EAAE,eAAe,EAChC,GAAG,SAAS,EAAE,oBAAoB,EAAE,GACnC,IAAI;IAIP;;;;;;OAMG;IACH,SAAS,CAAC,eAAe,CACvB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,EAAE,CAAC,EACvD,WAAW,EAAE,MAAM,GAAG,MAAM,EAC5B,SAAS,EAAE,oBAAoB,EAAE,GAChC,IAAI;CAQR"}
1
+ {"version":3,"file":"filter-entity.factory.d.ts","sourceRoot":"","sources":["../../../../../../src/x-modules/facets/entities/filter-entity.factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACxE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,MAAM,CAAA;AACjC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAE1F,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAQtD;;;;GAIG;AACH,qBAAa,mBAAmB;IAC9B;;;;;OAKG;IACH,OAAc,QAAQ,sBAA4B;IAElD;;OAEG;IACH,SAAS,CAAC,QAAQ,EAOb,uBAAuB,EAAE,CAAA;IAE9B;;OAEG;IACH,SAAS,CAAC,kBAAkB,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,oBAAoB,EAAE,CAAC,CAAK;IAE9E;;OAEG;IACH,SAAS,CAAC,0BAA0B,EAAE,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAC1F;IAEJ;;;;OAIG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,iBAAiB,EAAE,YAAY,CAAC,CAAK;IAElF;;;;;;;;OAQG;IACH,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,YAAY;IAK5E;;;;;;;;OAQG;IACH,SAAS,CAAC,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,YAAY;IAmBzF;;;;OAIG;IACH,oBAAoB,CAAC,MAAM,EAAE,uBAAuB,GAAG,IAAI;IAM3D;;;;;;OAMG;IACH,yBAAyB,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,SAAS,EAAE,oBAAoB,EAAE,GAAG,IAAI;IAI3F;;;;;;OAMG;IACH,iCAAiC,CAC/B,eAAe,EAAE,eAAe,EAChC,GAAG,SAAS,EAAE,oBAAoB,EAAE,GACnC,IAAI;IAIP;;;;;;OAMG;IACH,SAAS,CAAC,eAAe,CACvB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,EAAE,CAAC,EACvD,WAAW,EAAE,MAAM,GAAG,MAAM,EAC5B,SAAS,EAAE,oBAAoB,EAAE,GAChC,IAAI;CAQR"}
@@ -1 +1 @@
1
- {"version":3,"file":"related-prompts-tag-list.vue?vue&type=script&lang.d.ts","sourceRoot":"","sources":["../../../../../../src/x-modules/related-prompts/components/related-prompts-tag-list.vue?vue&type=script&lang.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAA;AAQnC;;;;;;;GAOG;;IAMC;;;;OAIG;;IAEH;;;;OAIG;;;;;IAEH;;;;OAIG;;IAEH;;;;OAIG;;IAEH;;;;;OAKG;eACiB,QAAQ,CAAC,MAAM,EAAE,CAAC;IACtC;;;;OAIG;;;;;;8BAoE8B,MAAM,KAAG,IAAI;wBAiEnB,OAAO;kBAeb,OAAO,QAAQ,MAAM,IAAI;kBAkBzB,OAAO,QAAQ,MAAM,IAAI;;;;;;;;;;;iCAoCs9b,CAAC;sCAAqD,CAAC;8BAA6C,CAAC;;;;;;;;;;;;;IA7Ozmc;;;;OAIG;;IAEH;;;;OAIG;;;;;IAEH;;;;OAIG;;IAEH;;;;OAIG;;IAEH;;;;;OAKG;eACiB,QAAQ,CAAC,MAAM,EAAE,CAAC;IACtC;;;;OAIG;;;;;;;;;;;;;AAxCP,wBAiPE"}
1
+ {"version":3,"file":"related-prompts-tag-list.vue?vue&type=script&lang.d.ts","sourceRoot":"","sources":["../../../../../../src/x-modules/related-prompts/components/related-prompts-tag-list.vue?vue&type=script&lang.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAA;AAQnC;;;;;;;GAOG;;IAMC;;;;OAIG;;IAEH;;;;OAIG;;;;;IAEH;;;;OAIG;;IAEH;;;;OAIG;;IAEH;;;;;OAKG;eACiB,QAAQ,CAAC,MAAM,EAAE,CAAC;IACtC;;;;OAIG;;;;;;8BAoE8B,MAAM,KAAG,IAAI;wBAiEnB,OAAO;kBAeb,OAAO,QAAQ,MAAM,IAAI;kBAkBzB,OAAO,QAAQ,MAAM,IAAI;;;;;;;;;;;iCAoC8+c,CAAC;sCAAqD,CAAC;8BAA6C,CAAC;;;;;;;;;;;;;IA7Ojod;;;;OAIG;;IAEH;;;;OAIG;;;;;IAEH;;;;OAIG;;IAEH;;;;OAIG;;IAEH;;;;;OAKG;eACiB,QAAQ,CAAC,MAAM,EAAE,CAAC;IACtC;;;;OAIG;;;;;;;;;;;;;AAxCP,wBAiPE"}