@graphcommerce/algolia-recommend 10.0.0-canary.66 → 10.0.0-canary.68

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
@@ -1,5 +1,9 @@
1
1
  # @graphcommerce/algolia-recommend
2
2
 
3
+ ## 10.0.0-canary.68
4
+
5
+ ## 10.0.0-canary.67
6
+
3
7
  ## 10.0.0-canary.66
4
8
 
5
9
  ## 10.0.0-canary.65
@@ -93,6 +93,7 @@ info:
93
93
 
94
94
  The current version of the Recommend API is version 1, as indicated by the `/1/` in each endpoint's URL.
95
95
 
96
+
96
97
  version: 1.0.0
97
98
  paths:
98
99
  /1/indexes/*/recommendations:
@@ -123,6 +124,7 @@ paths:
123
124
  description: >-
124
125
  Recommendation request with parameters depending on the requested model.
125
126
 
127
+
126
128
  items:
127
129
  $ref: '#/components/schemas/recommendationsRequest'
128
130
  required:
@@ -169,6 +171,7 @@ components:
169
171
 
170
172
  The required ACL to make a request is listed in each endpoint's reference.
171
173
 
174
+
172
175
  parameters:
173
176
  PathInPath:
174
177
  name: path
@@ -200,6 +203,7 @@ components:
200
203
  description: >
201
204
  [Recommend model](https://www.algolia.com/doc/guides/algolia-recommend/overview/#recommend-models).
202
205
 
206
+
203
207
  schema:
204
208
  $ref: '#/components/schemas/recommendModels'
205
209
  ObjectID:
@@ -245,6 +249,7 @@ components:
245
249
 
246
250
  Combine it with `filters` to narrow down the list of results.
247
251
 
252
+
248
253
  example: comedy drama crime Macy Buscemi
249
254
  x-categories:
250
255
  - Search
@@ -285,6 +290,7 @@ components:
285
290
 
286
291
  For more information, see [Filters](https://www.algolia.com/doc/guides/managing-results/refine-results/filtering/).
287
292
 
293
+
288
294
  example: (category:Book OR category:Ebook) AND _tags:published
289
295
  x-categories:
290
296
  - Filtering
@@ -307,6 +313,7 @@ components:
307
313
 
308
314
  `facet:\-value`.
309
315
 
316
+
310
317
  x-categories:
311
318
  - Filtering
312
319
  type: object
@@ -330,6 +337,7 @@ components:
330
337
 
331
338
  - Optional filters don't work with numeric attributes.
332
339
 
340
+
333
341
  example:
334
342
  - category:Book
335
343
  - author:John Doe
@@ -356,6 +364,7 @@ components:
356
364
 
357
365
  The same combination rules apply as for `facetFilters`.
358
366
 
367
+
359
368
  example:
360
369
  - - inStock = 1
361
370
  - deliveryDate < 1441755506
@@ -381,6 +390,7 @@ components:
381
390
 
382
391
  The same combination and escaping rules apply as for `facetFilters`.
383
392
 
393
+
384
394
  example:
385
395
  - - Book
386
396
  - Movie
@@ -404,6 +414,7 @@ components:
404
414
 
405
415
  For more information, see [filter scores](https://www.algolia.com/doc/guides/managing-results/refine-results/filtering/in-depth/filter-scoring/#accumulating-scores-with-sumorfiltersscores).
406
416
 
417
+
407
418
  x-categories:
408
419
  - Filtering
409
420
  restrictSearchableAttributes:
@@ -430,6 +441,7 @@ components:
430
441
 
431
442
  For more information, see [facets](https://www.algolia.com/doc/guides/managing-results/refine-results/faceting/#contextual-facet-values-and-counts).
432
443
 
444
+
433
445
  example:
434
446
  - '*'
435
447
  x-categories:
@@ -446,6 +458,7 @@ components:
446
458
 
447
459
  as `facetingAfterDistinct` only computes correct facet counts if all records have the same facet values for the `attributeForDistinct`.
448
460
 
461
+
449
462
  x-categories:
450
463
  - Faceting
451
464
  aroundLatLng:
@@ -460,6 +473,7 @@ components:
460
473
 
461
474
  This parameter is ignored if you also specify `insidePolygon` or `insideBoundingBox`.
462
475
 
476
+
463
477
  example: 40.71,-74.01
464
478
  x-categories:
465
479
  - Geo-Search
@@ -474,6 +488,7 @@ components:
474
488
  description: >-
475
489
  Return all records with a valid `_geoloc` attribute. Don't filter by distance.
476
490
 
491
+
477
492
  enum:
478
493
  - all
479
494
  aroundRadius:
@@ -487,6 +502,7 @@ components:
487
502
 
488
503
  The search radius is small if there are many hits close to the central coordinates.
489
504
 
505
+
490
506
  oneOf:
491
507
  - type: integer
492
508
  minimum: 1
@@ -503,18 +519,21 @@ components:
503
519
  description: >-
504
520
  Range object with lower and upper values in meters to define custom ranges.
505
521
 
522
+
506
523
  properties:
507
524
  from:
508
525
  type: integer
509
526
  description: >-
510
527
  Lower boundary of a range in meters. The Geo ranking criterion considers all records within the range to be equal.
511
528
 
529
+
512
530
  example: 20
513
531
  value:
514
532
  type: integer
515
533
  description: >-
516
534
  Upper boundary of a range in meters. The Geo ranking criterion considers all records within the range to be equal.
517
535
 
536
+
518
537
  aroundPrecision:
519
538
  description: >
520
539
  Precision of a coordinate-based search in meters to group results with similar distances.
@@ -522,6 +541,7 @@ components:
522
541
 
523
542
  The Geo ranking criterion considers all matches within the same range of distances to be equal.
524
543
 
544
+
525
545
  oneOf:
526
546
  - type: integer
527
547
  default: 10
@@ -533,6 +553,7 @@ components:
533
553
 
534
554
  as are records between 100 and 199 meters.
535
555
 
556
+
536
557
  - $ref: '#/components/schemas/aroundPrecisionFromValue'
537
558
  x-categories:
538
559
  - Geo-Search
@@ -541,6 +562,7 @@ components:
541
562
  description: >-
542
563
  Minimum radius (in meters) for a search around a location when `aroundRadius` isn't set.
543
564
 
565
+
544
566
  minimum: 1
545
567
  x-categories:
546
568
  - Geo-Search
@@ -565,6 +587,7 @@ components:
565
587
 
566
588
  For more information, see [rectangular area](https://www.algolia.com/doc/guides/managing-results/refine-results/geolocation/#filtering-inside-rectangular-or-polygonal-areas).
567
589
 
590
+
568
591
  example:
569
592
  - - 47.3165
570
593
  - 4.9665
@@ -602,6 +625,7 @@ components:
602
625
 
603
626
  This parameter is ignored if you also specify `insideBoundingBox`.
604
627
 
628
+
605
629
  example:
606
630
  - - 47.3165
607
631
  - 4.9665
@@ -703,6 +727,7 @@ components:
703
727
 
704
728
  - Adds a `natural_language` attribute to `ruleContexts` and `analyticsTags`.
705
729
 
730
+
706
731
  x-categories:
707
732
  - Languages
708
733
  ruleContexts:
@@ -715,6 +740,7 @@ components:
715
740
 
716
741
  [Rule contexts](https://www.algolia.com/doc/guides/managing-results/rules/rules-overview/how-to/customize-search-results-by-platform/#whats-a-context) are strings that you can use to trigger matching rules.
717
742
 
743
+
718
744
  example:
719
745
  - mobile
720
746
  x-categories:
@@ -729,6 +755,7 @@ components:
729
755
 
730
756
  For more information, see [Understanding Personalization impact](https://www.algolia.com/doc/guides/personalization/personalizing-results/in-depth/configuring-personalization/#understanding-personalization-impact).
731
757
 
758
+
732
759
  minimum: 0
733
760
  maximum: 100
734
761
  x-categories:
@@ -743,6 +770,7 @@ components:
743
770
 
744
771
  For more information, see [user token](https://www.algolia.com/doc/guides/sending-events/concepts/usertoken/).
745
772
 
773
+
746
774
  example: test-user-123
747
775
  x-categories:
748
776
  - Personalization
@@ -764,6 +792,7 @@ components:
764
792
 
765
793
  The query ID is a unique identifier for a search query and is required for tracking [click and conversion events](https://www.algolia.com/guides/sending-events/getting-started/).
766
794
 
795
+
767
796
  x-categories:
768
797
  - Analytics
769
798
  analytics:
@@ -778,6 +807,7 @@ components:
778
807
  description: >-
779
808
  Tags to apply to the query for [segmenting analytics data](https://www.algolia.com/doc/guides/search-analytics/guides/segments/).
780
809
 
810
+
781
811
  x-categories:
782
812
  - Analytics
783
813
  percentileComputation:
@@ -785,6 +815,7 @@ components:
785
815
  description: >-
786
816
  Whether to include this search when calculating processing-time percentiles.
787
817
 
818
+
788
819
  x-categories:
789
820
  - Advanced
790
821
  enableABTest:
@@ -878,6 +909,7 @@ components:
878
909
  description: >-
879
910
  Maximum number of facet values to return when [searching for facet values](https://www.algolia.com/doc/guides/managing-results/refine-results/faceting/#search-for-facet-values).
880
911
 
912
+
881
913
  maximum: 100
882
914
  x-categories:
883
915
  - Advanced
@@ -922,6 +954,7 @@ components:
922
954
  This ensures accurate facet counts.
923
955
  You can apply this modifier to searchable facets: `afterDistinct(searchable(ATTRIBUTE))`.
924
956
 
957
+
925
958
  x-categories:
926
959
  - Faceting
927
960
  replicas:
@@ -953,6 +986,7 @@ components:
953
986
  Create a virtual replica,
954
987
  Virtual replicas don't increase the number of records and are optimized for [Relevant sorting](https://www.algolia.com/doc/guides/managing-results/refine-results/sorting/in-depth/relevant-sort/).
955
988
 
989
+
956
990
  x-categories:
957
991
  - Ranking
958
992
  paginationLimitedTo:
@@ -966,6 +1000,7 @@ components:
966
1000
 
967
1001
  For pagination limits above 1,000, the sorting of results beyond the 1,000th hit can't be guaranteed.
968
1002
 
1003
+
969
1004
  maximum: 20000
970
1005
  unretrievableAttributes:
971
1006
  type: array
@@ -983,6 +1018,7 @@ components:
983
1018
 
984
1019
  Attribute names are case-sensitive.
985
1020
 
1021
+
986
1022
  x-categories:
987
1023
  - Attributes
988
1024
  disableTypoToleranceOnWords:
@@ -997,6 +1033,7 @@ components:
997
1033
 
998
1034
  This also turns off [word splitting and concatenation](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/splitting-and-concatenation/) for the specified words.
999
1035
 
1036
+
1000
1037
  x-categories:
1001
1038
  - Typos
1002
1039
  attributesToTransliterate:
@@ -1010,6 +1047,7 @@ components:
1010
1047
 
1011
1048
  Attribute names are case-sensitive.
1012
1049
 
1050
+
1013
1051
  type: array
1014
1052
  items:
1015
1053
  type: string
@@ -1029,6 +1067,7 @@ components:
1029
1067
 
1030
1068
  Attribute names are case-sensitive.
1031
1069
 
1070
+
1032
1071
  x-categories:
1033
1072
  - Languages
1034
1073
  decompoundedAttributes:
@@ -1059,6 +1098,7 @@ components:
1059
1098
 
1060
1099
  For example, `Gartenstühle` won't be decompounded if the `ü` consists of `u` (U+0075) and `◌̈` (U+0308).
1061
1100
 
1101
+
1062
1102
  x-categories:
1063
1103
  - Languages
1064
1104
  indexLanguages:
@@ -1081,6 +1121,7 @@ components:
1081
1121
 
1082
1122
  For more information, see [Language-specific configuration](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/).
1083
1123
 
1124
+
1084
1125
  x-categories:
1085
1126
  - Languages
1086
1127
  disablePrefixOnAttributes:
@@ -1094,6 +1135,7 @@ components:
1094
1135
 
1095
1136
  Attribute names are case-sensitive.
1096
1137
 
1138
+
1097
1139
  x-categories:
1098
1140
  - Query strategy
1099
1141
  allowCompressionOfIntegerArray:
@@ -1103,6 +1145,7 @@ components:
1103
1145
 
1104
1146
  If true, the compressed arrays may be reordered.
1105
1147
 
1148
+
1106
1149
  x-categories:
1107
1150
  - Performance
1108
1151
  numericAttributesForFiltering:
@@ -1129,6 +1172,7 @@ components:
1129
1172
  - `equalOnly("ATTRIBUTE")`.
1130
1173
  Support only filtering based on equality comparisons `=` and `!=`.
1131
1174
 
1175
+
1132
1176
  example:
1133
1177
  - equalOnly(quantity)
1134
1178
  - popularity
@@ -1153,6 +1197,7 @@ components:
1153
1197
 
1154
1198
  For example, in a search for "Disney+", Algolia considers "Disney" and "+" as two separate words.
1155
1199
 
1200
+
1156
1201
  x-categories:
1157
1202
  - Typos
1158
1203
  searchableAttributes:
@@ -1190,6 +1235,7 @@ components:
1190
1235
 
1191
1236
  Without a modifier, matches at the beginning of an attribute rank higher than matches at the end.
1192
1237
 
1238
+
1193
1239
  x-categories:
1194
1240
  - Attributes
1195
1241
  userData:
@@ -1200,6 +1246,7 @@ components:
1200
1246
 
1201
1247
  This overrides Algolia's default [normalization](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/normalization/).
1202
1248
 
1249
+
1203
1250
  type: object
1204
1251
  additionalProperties:
1205
1252
  type: object
@@ -1225,6 +1272,7 @@ components:
1225
1272
 
1226
1273
  This applies faceting _after_ deduplication, which will result in accurate facet counts.
1227
1274
 
1275
+
1228
1276
  example: url
1229
1277
  type: string
1230
1278
  maxFacetHits:
@@ -1276,6 +1324,7 @@ components:
1276
1324
 
1277
1325
  or the other attributes will never be applied.
1278
1326
 
1327
+
1279
1328
  x-categories:
1280
1329
  - Ranking
1281
1330
  attributesToRetrieve:
@@ -1301,6 +1350,7 @@ components:
1301
1350
 
1302
1351
  - The `objectID` attribute is always included.
1303
1352
 
1353
+
1304
1354
  x-categories:
1305
1355
  - Attributes
1306
1356
  ranking:
@@ -1334,6 +1384,7 @@ components:
1334
1384
 
1335
1385
  and by [A/B testing](https://www.algolia.com/doc/guides/ab-testing/what-is-ab-testing/).
1336
1386
 
1387
+
1337
1388
  x-categories:
1338
1389
  - Ranking
1339
1390
  relevancyStrictness:
@@ -1347,6 +1398,7 @@ components:
1347
1398
 
1348
1399
  Use this setting to strike a balance between the relevance and number of returned results.
1349
1400
 
1401
+
1350
1402
  x-categories:
1351
1403
  - Ranking
1352
1404
  attributesToHighlight:
@@ -1376,6 +1428,7 @@ components:
1376
1428
 
1377
1429
  For more information, see [Highlighting and snippeting](https://www.algolia.com/doc/guides/building-search-ui/ui-and-ux-patterns/highlighting-snippeting/js/).
1378
1430
 
1431
+
1379
1432
  x-categories:
1380
1433
  - Highlighting and Snippeting
1381
1434
  attributesToSnippet:
@@ -1401,6 +1454,7 @@ components:
1401
1454
 
1402
1455
  where `NUMBER` is the number of words to be extracted.
1403
1456
 
1457
+
1404
1458
  x-categories:
1405
1459
  - Highlighting and Snippeting
1406
1460
  highlightPreTag:
@@ -1408,6 +1462,7 @@ components:
1408
1462
  description: >-
1409
1463
  HTML tag to insert before the highlighted parts in all highlighted results and snippets.
1410
1464
 
1465
+
1411
1466
  x-categories:
1412
1467
  - Highlighting and Snippeting
1413
1468
  highlightPostTag:
@@ -1415,6 +1470,7 @@ components:
1415
1470
  description: >-
1416
1471
  HTML tag to insert after the highlighted parts in all highlighted results and snippets.
1417
1472
 
1473
+
1418
1474
  x-categories:
1419
1475
  - Highlighting and Snippeting
1420
1476
  snippetEllipsisText:
@@ -1429,6 +1485,7 @@ components:
1429
1485
 
1430
1486
  By default, all items are highlighted and snippeted.
1431
1487
 
1488
+
1432
1489
  x-categories:
1433
1490
  - Highlighting and Snippeting
1434
1491
  minWordSizefor1Typo:
@@ -1436,6 +1493,7 @@ components:
1436
1493
  description: >-
1437
1494
  Minimum number of characters a word in the search query must contain to accept matches with [one typo](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/in-depth/configuring-typo-tolerance/#configuring-word-length-for-typos).
1438
1495
 
1496
+
1439
1497
  x-categories:
1440
1498
  - Typos
1441
1499
  minWordSizefor2Typos:
@@ -1443,6 +1501,7 @@ components:
1443
1501
  description: >-
1444
1502
  Minimum number of characters a word in the search query must contain to accept matches with [two typos](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/in-depth/configuring-typo-tolerance/#configuring-word-length-for-typos).
1445
1503
 
1504
+
1446
1505
  x-categories:
1447
1506
  - Typos
1448
1507
  typoToleranceEnum:
@@ -1464,12 +1523,14 @@ components:
1464
1523
 
1465
1524
  If typo tolerance is true, `min`, or `strict`, [word splitting and concatenation](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/splitting-and-concatenation/) are also active.
1466
1525
 
1526
+
1467
1527
  oneOf:
1468
1528
  - type: boolean
1469
1529
  default: true
1470
1530
  description: >-
1471
1531
  Whether typo tolerance is active. If true, matches with typos are included in the search results and rank after exact matches.
1472
1532
 
1533
+
1473
1534
  - $ref: '#/components/schemas/typoToleranceEnum'
1474
1535
  x-categories:
1475
1536
  - Typos
@@ -1504,6 +1565,7 @@ components:
1504
1565
 
1505
1566
  Consider alternatives such as `disableTypoToleranceOnWords` or adding synonyms if your attributes have intentional unusual spellings that might look like typos.
1506
1567
 
1568
+
1507
1569
  x-categories:
1508
1570
  - Typos
1509
1571
  booleanString:
@@ -1532,6 +1594,7 @@ components:
1532
1594
 
1533
1595
  If false, singulars, plurals, and other declensions won't be considered equivalent.
1534
1596
 
1597
+
1535
1598
  default: false
1536
1599
  x-categories:
1537
1600
  - Languages
@@ -1547,6 +1610,7 @@ components:
1547
1610
 
1548
1611
  You should only use this feature for the languages used in your index.
1549
1612
 
1613
+
1550
1614
  example:
1551
1615
  - ca
1552
1616
  - es
@@ -1555,6 +1619,7 @@ components:
1555
1619
  description: >-
1556
1620
  ISO code for languages for which stop words should be removed. This overrides languages you set in `queryLanguges`.
1557
1621
 
1622
+
1558
1623
  items:
1559
1624
  $ref: '#/components/schemas/supportedLanguage'
1560
1625
  - type: boolean
@@ -1564,6 +1629,7 @@ components:
1564
1629
 
1565
1630
  If false, stop words are not removed.
1566
1631
 
1632
+
1567
1633
  x-categories:
1568
1634
  - Languages
1569
1635
  queryLanguages:
@@ -1593,6 +1659,7 @@ components:
1593
1659
 
1594
1660
  For more information, see [Language-specific configuration](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/).
1595
1661
 
1662
+
1596
1663
  x-categories:
1597
1664
  - Languages
1598
1665
  decompoundQuery:
@@ -1609,6 +1676,7 @@ components:
1609
1676
 
1610
1677
  For example, `Gartenstühle` won't be decompounded if the `ü` consists of `u` (U+0075) and `◌̈` (U+0308).
1611
1678
 
1679
+
1612
1680
  x-categories:
1613
1681
  - Languages
1614
1682
  enableRules:
@@ -1642,6 +1710,7 @@ components:
1642
1710
 
1643
1711
  For more information, see [Prefix searching](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/override-search-engine-defaults/in-depth/prefix-searching/).
1644
1712
 
1713
+
1645
1714
  x-categories:
1646
1715
  - Query strategy
1647
1716
  removeWordsIfNoResults:
@@ -1674,6 +1743,7 @@ components:
1674
1743
 
1675
1744
  For more information, see [Remove words to improve results](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/empty-or-insufficient-results/in-depth/why-use-remove-words-if-no-results/).
1676
1745
 
1746
+
1677
1747
  x-categories:
1678
1748
  - Query strategy
1679
1749
  advancedSyntax:
@@ -1684,6 +1754,7 @@ components:
1684
1754
 
1685
1755
  Use the `advancedSyntaxFeatures` parameter to control which feature is supported.
1686
1756
 
1757
+
1687
1758
  x-categories:
1688
1759
  - Query strategy
1689
1760
  optionalWordsArray:
@@ -1696,6 +1767,7 @@ components:
1696
1767
  description: >-
1697
1768
  List of [optional words](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/empty-or-insufficient-results/#creating-a-list-of-optional-words).
1698
1769
 
1770
+
1699
1771
  x-categories:
1700
1772
  - Query strategy
1701
1773
  optionalWords:
@@ -1726,6 +1798,7 @@ components:
1726
1798
 
1727
1799
  For more information, see [Optional words](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/empty-or-insufficient-results/#creating-a-list-of-optional-words).
1728
1800
 
1801
+
1729
1802
  oneOf:
1730
1803
  - type: string
1731
1804
  - type: 'null'
@@ -1750,6 +1823,7 @@ components:
1750
1823
 
1751
1824
  This reduces the impact of individual attributes with a lot of content on ranking.
1752
1825
 
1826
+
1753
1827
  x-categories:
1754
1828
  - Query strategy
1755
1829
  exactOnSingleWordQuery:
@@ -1775,6 +1849,7 @@ components:
1775
1849
  Only exact matches will be highlighted,
1776
1850
  partial and prefix matches won't.
1777
1851
 
1852
+
1778
1853
  x-categories:
1779
1854
  - Query strategy
1780
1855
  alternativesAsExact:
@@ -1813,6 +1888,7 @@ components:
1813
1888
  - `multiWordsSynonym`.
1814
1889
  Multi-word synonyms, such as "NY" = "New York", are considered exact matches.
1815
1890
 
1891
+
1816
1892
  x-categories:
1817
1893
  - Query strategy
1818
1894
  advancedSyntaxFeatures:
@@ -1854,12 +1930,14 @@ components:
1854
1930
 
1855
1931
  The `distinct` setting is ignored if `attributeForDistinct` is not set.
1856
1932
 
1933
+
1857
1934
  example: 1
1858
1935
  oneOf:
1859
1936
  - type: boolean
1860
1937
  description: >-
1861
1938
  Whether deduplication is turned on. If true, only one member of a group is shown in the search results.
1862
1939
 
1940
+
1863
1941
  - type: integer
1864
1942
  description: >
1865
1943
  Number of members of a group of records to include in the search results.
@@ -1871,6 +1949,7 @@ components:
1871
1949
  For example, with `hitsPerPage: 10` and `distinct: 2`, up to 20 records are returned.
1872
1950
  Likewise, the `nbHits` response attribute contains the number of returned groups.
1873
1951
 
1952
+
1874
1953
  minimum: 0
1875
1954
  maximum: 4
1876
1955
  default: 0
@@ -1895,6 +1974,7 @@ components:
1895
1974
 
1896
1975
  but all occurrences of "house" are replaced by "home" in the highlighted response.
1897
1976
 
1977
+
1898
1978
  x-categories:
1899
1979
  - Highlighting and Snippeting
1900
1980
  minProximity:
@@ -1912,6 +1992,7 @@ components:
1912
1992
 
1913
1993
  For example, if `minProximity` is 2, neighboring matches and matches with one word between them would have the same score.
1914
1994
 
1995
+
1915
1996
  x-categories:
1916
1997
  - Advanced
1917
1998
  responseFields:
@@ -1943,6 +2024,7 @@ components:
1943
2024
 
1944
2025
  Before restricting the response size, check the impact on your search experience.
1945
2026
 
2027
+
1946
2028
  x-categories:
1947
2029
  - Advanced
1948
2030
  maxValuesPerFacet:
@@ -1968,6 +2050,7 @@ components:
1968
2050
 
1969
2051
  For more information, see [facet value display](https://www.algolia.com/doc/guides/building-search-ui/ui-and-ux-patterns/facet-display/js/).
1970
2052
 
2053
+
1971
2054
  x-categories:
1972
2055
  - Faceting
1973
2056
  attributeCriteriaComputedByMinProximity:
@@ -1982,6 +2065,7 @@ components:
1982
2065
 
1983
2066
  Otherwise, the best matching attribute is determined by the order in the `searchableAttributes` setting.
1984
2067
 
2068
+
1985
2069
  x-categories:
1986
2070
  - Advanced
1987
2071
  order:
@@ -1991,6 +2075,7 @@ components:
1991
2075
 
1992
2076
  This setting lets you always show specific facets or facet values at the top of the list.
1993
2077
 
2078
+
1994
2079
  type: array
1995
2080
  items:
1996
2081
  type: string
@@ -2016,6 +2101,7 @@ components:
2016
2101
  - `hidden`.
2017
2102
  Don't show facet values that aren't explicitly positioned.
2018
2103
 
2104
+
2019
2105
  type: string
2020
2106
  enum:
2021
2107
  - count
@@ -2113,6 +2199,7 @@ components:
2113
2199
 
2114
2200
  without changing your frontend code.
2115
2201
 
2202
+
2116
2203
  type: object
2117
2204
  additionalProperties: false
2118
2205
  properties:
@@ -2132,12 +2219,14 @@ components:
2132
2219
 
2133
2220
  This setting only has an effect if you activated Dynamic Re-Ranking for this index in the Algolia dashboard.
2134
2221
 
2222
+
2135
2223
  x-categories:
2136
2224
  - Filtering
2137
2225
  reRankingApplyFilter:
2138
2226
  description: >
2139
2227
  Restrict [Dynamic Re-Ranking](https://www.algolia.com/doc/guides/algolia-ai/re-ranking/) to records that match these filters.
2140
2228
 
2229
+
2141
2230
  oneOf:
2142
2231
  - type: array
2143
2232
  items:
@@ -2255,6 +2344,7 @@ components:
2255
2344
  description: >-
2256
2345
  Minimum score a recommendation must have to be included in the response.
2257
2346
 
2347
+
2258
2348
  maxRecommendations:
2259
2349
  type: integer
2260
2350
  minimum: 1
@@ -2268,6 +2358,7 @@ components:
2268
2358
 
2269
2359
  the actual number of recommendations may be lower than this value.
2270
2360
 
2361
+
2271
2362
  queryParameters:
2272
2363
  $ref: '#/components/schemas/searchParamsObject'
2273
2364
  required:
@@ -2281,6 +2372,7 @@ components:
2281
2372
 
2282
2373
  This model recommends items that have been purchased within 1 day with the item with the ID `objectID`.
2283
2374
 
2375
+
2284
2376
  enum:
2285
2377
  - bought-together
2286
2378
  objectID:
@@ -2312,6 +2404,7 @@ components:
2312
2404
 
2313
2405
  Similarity is determined from the user interactions and attributes.
2314
2406
 
2407
+
2315
2408
  enum:
2316
2409
  - related-products
2317
2410
  fallbackParams:
@@ -2342,6 +2435,7 @@ components:
2342
2435
 
2343
2436
  If specified, only recommendations matching the facet filter will be returned.
2344
2437
 
2438
+
2345
2439
  facetValue:
2346
2440
  type: string
2347
2441
  description: >
@@ -2349,6 +2443,7 @@ components:
2349
2443
 
2350
2444
  If specified, only recommendations matching the facet filter will be returned.
2351
2445
 
2446
+
2352
2447
  trendingItemsModel:
2353
2448
  description: >
2354
2449
  Trending items model.
@@ -2356,6 +2451,7 @@ components:
2356
2451
 
2357
2452
  Trending items are determined from the number of conversion events collected on them.
2358
2453
 
2454
+
2359
2455
  type: string
2360
2456
  enum:
2361
2457
  - trending-items
@@ -2385,6 +2481,7 @@ components:
2385
2481
 
2386
2482
  This model recommends trending facet values for the specified facet attribute.
2387
2483
 
2484
+
2388
2485
  enum:
2389
2486
  - trending-facets
2390
2487
  trendingFacets:
@@ -2413,6 +2510,7 @@ components:
2413
2510
 
2414
2511
  This model recommends items that look similar to the item with the ID `objectID` based on image attributes in your index.
2415
2512
 
2513
+
2416
2514
  enum:
2417
2515
  - looking-similar
2418
2516
  lookingSimilar:
@@ -2484,12 +2582,14 @@ components:
2484
2582
  description: >-
2485
2583
  A/B test ID. This is only included in the response for indices that are part of an A/B test.
2486
2584
 
2585
+
2487
2586
  abTestVariantID:
2488
2587
  type: integer
2489
2588
  minimum: 1
2490
2589
  description: >-
2491
2590
  Variant ID. This is only included in the response for indices that are part of an A/B test.
2492
2591
 
2592
+
2493
2593
  aroundLatLng:
2494
2594
  type: string
2495
2595
  description: Computed geographical location.
@@ -2504,6 +2604,7 @@ components:
2504
2604
  description: >-
2505
2605
  Whether certain properties of the search response are calculated exhaustive (exact) or approximated.
2506
2606
 
2607
+
2507
2608
  properties:
2508
2609
  facetsCount:
2509
2610
  type: boolean
@@ -2511,6 +2612,7 @@ components:
2511
2612
  description: >-
2512
2613
  Whether the facet count is exhaustive (`true`) or approximate (`false`). See the [related discussion](https://support.algolia.com/hc/en-us/articles/4406975248145-Why-are-my-facet-and-hit-counts-not-accurate-).
2513
2614
 
2615
+
2514
2616
  facetValues:
2515
2617
  type: boolean
2516
2618
  title: facetValues
@@ -2521,18 +2623,21 @@ components:
2521
2623
  description: >-
2522
2624
  Whether the `nbHits` is exhaustive (`true`) or approximate (`false`). When the query takes more than 50ms to be processed, the engine makes an approximation. This can happen when using complex filters on millions of records, when typo-tolerance was not exhaustive, or when enough hits have been retrieved (for example, after the engine finds 10,000 exact matches). `nbHits` is reported as non-exhaustive whenever an approximation is made, even if the approximation didn’t, in the end, impact the exhaustivity of the query.
2523
2625
 
2626
+
2524
2627
  rulesMatch:
2525
2628
  type: boolean
2526
2629
  title: rulesMatch
2527
2630
  description: >-
2528
2631
  Rules matching exhaustivity. The value is `false` if rules were enable for this query, and could not be fully processed due a timeout. This is generally caused by the number of alternatives (such as typos) which is too large.
2529
2632
 
2633
+
2530
2634
  typo:
2531
2635
  type: boolean
2532
2636
  title: typo
2533
2637
  description: >-
2534
2638
  Whether the typo search was exhaustive (`true`) or approximate (`false`). An approximation is done when the typo search query part takes more than 10% of the query budget (ie. 5ms by default) to be processed (this can happen when a lot of typo alternatives exist for the query). This field will not be included when typo-tolerance is entirely disabled.
2535
2639
 
2640
+
2536
2641
  appliedRules:
2537
2642
  description: Rules applied to the query.
2538
2643
  title: appliedRules
@@ -2544,6 +2649,7 @@ components:
2544
2649
  description: >-
2545
2650
  See the `facetsCount` field of the `exhaustive` object in the response.
2546
2651
 
2652
+
2547
2653
  deprecated: true
2548
2654
  exhaustiveNbHits:
2549
2655
  type: boolean
@@ -2595,6 +2701,7 @@ components:
2595
2701
  description: >-
2596
2702
  Index name used for the query. During A/B testing, the targeted index isn't always the index used by the query.
2597
2703
 
2704
+
2598
2705
  example: indexNameAlt
2599
2706
  message:
2600
2707
  type: string
@@ -2608,6 +2715,7 @@ components:
2608
2715
  description: >-
2609
2716
  Post-[normalization](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/#what-does-normalization-mean) query string that will be searched.
2610
2717
 
2718
+
2611
2719
  example: george clo
2612
2720
  processingTimeMS:
2613
2721
  $ref: '#/components/schemas/processingTimeMS'
@@ -2616,17 +2724,20 @@ components:
2616
2724
  description: >-
2617
2725
  Experimental. List of processing steps and their times, in milliseconds. You can use this list to investigate performance issues.
2618
2726
 
2727
+
2619
2728
  queryAfterRemoval:
2620
2729
  type: string
2621
2730
  description: >-
2622
2731
  Markup text indicating which parts of the original query have been removed to retrieve a non-empty result set.
2623
2732
 
2733
+
2624
2734
  redirect:
2625
2735
  title: redirect
2626
2736
  type: object
2627
2737
  description: >
2628
2738
  [Redirect results to a URL](https://www.algolia.com/doc/guides/managing-results/rules/merchandising-and-promoting/how-to/redirects/), this this parameter is for internal use only.
2629
2739
 
2740
+
2630
2741
  properties:
2631
2742
  index:
2632
2743
  type: array
@@ -2649,6 +2760,7 @@ components:
2649
2760
  description: >-
2650
2761
  Unique identifier for the query. This is used for [click analytics](https://www.algolia.com/doc/guides/analytics/click-analytics/).
2651
2762
 
2763
+
2652
2764
  example: a00dbc80a8d13c4565a442e7e2dca80a
2653
2765
  _automaticInsights:
2654
2766
  type: boolean
@@ -2787,6 +2899,7 @@ components:
2787
2899
  description: >-
2788
2900
  Distance between the matched location and the search location (in meters).
2789
2901
 
2902
+
2790
2903
  personalization:
2791
2904
  type: object
2792
2905
  properties:
@@ -2814,12 +2927,14 @@ components:
2814
2927
  description: >-
2815
2928
  Position of the first matched word in the best matching attribute of the record.
2816
2929
 
2930
+
2817
2931
  geoDistance:
2818
2932
  type: integer
2819
2933
  minimum: 0
2820
2934
  description: >-
2821
2935
  Distance between the geo location in the search query and the best matching geo location in the record, divided by the geo precision (in meters).
2822
2936
 
2937
+
2823
2938
  geoPrecision:
2824
2939
  type: integer
2825
2940
  minimum: 1
@@ -2845,11 +2960,13 @@ components:
2845
2960
  description: >-
2846
2961
  Number of words between multiple matches in the query plus 1. For single word queries, `proximityDistance` is 0.
2847
2962
 
2963
+
2848
2964
  userScore:
2849
2965
  type: integer
2850
2966
  description: >-
2851
2967
  Overall ranking of the record, expressed as a single integer. This attribute is internal.
2852
2968
 
2969
+
2853
2970
  words:
2854
2971
  type: integer
2855
2972
  minimum: 1
@@ -2952,6 +3069,7 @@ components:
2952
3069
 
2953
3070
  A rule context must only contain alphanumeric characters.
2954
3071
 
3072
+
2955
3073
  example: mobile
2956
3074
  Condition:
2957
3075
  type: object
@@ -2996,6 +3114,7 @@ components:
2996
3114
  description: >-
2997
3115
  Facet attribute. Only recommendations with the same value (or only recommendations with a different value) as the original viewed item are included.
2998
3116
 
3117
+
2999
3118
  properties:
3000
3119
  facet:
3001
3120
  type: string
@@ -3009,6 +3128,7 @@ components:
3009
3128
 
3010
3129
  If false, recommendations must have the same value for the `facet` attribute.
3011
3130
 
3131
+
3012
3132
  ParamsConsequence:
3013
3133
  type: object
3014
3134
  description: Filter or boost recommendations matching a facet filter.
@@ -3018,6 +3138,7 @@ components:
3018
3138
  description: >-
3019
3139
  Filter recommendations that match or don't match the same `facet:facet_value` combination as the viewed item.
3020
3140
 
3141
+
3021
3142
  items:
3022
3143
  $ref: '#/components/schemas/AutoFacetFilter'
3023
3144
  filters:
@@ -3036,6 +3157,7 @@ components:
3036
3157
 
3037
3158
  If you're using a negative filter `facet:-value`, matching records rank after records that don't match.
3038
3159
 
3160
+
3039
3161
  items:
3040
3162
  type: string
3041
3163
  example:
@@ -3089,12 +3211,14 @@ components:
3089
3211
  description: >-
3090
3212
  Description of the rule's purpose. This can be helpful for display in the Algolia dashboard.
3091
3213
 
3214
+
3092
3215
  example: Boost on-sale items
3093
3216
  enabled:
3094
3217
  type: boolean
3095
3218
  description: >-
3096
3219
  Indicates whether to enable the rule. If it isn't enabled, it isn't applied at query time.
3097
3220
 
3221
+
3098
3222
  validity:
3099
3223
  type: array
3100
3224
  description: Time periods when the rule is active.
@@ -3110,6 +3234,7 @@ components:
3110
3234
 
3111
3235
  A successful API response means that a task was added to a queue. It might not run immediately. You can check the task's progress with the [`task` operation](#tag/Indices/operation/getTask) and this `taskID`.
3112
3236
 
3237
+
3113
3238
  deletedAt:
3114
3239
  type: string
3115
3240
  example: '2023-06-27T14:42:38.831Z'
@@ -3122,6 +3247,7 @@ components:
3122
3247
  description: >-
3123
3248
  Task status, `published` if the task is completed, `notPublished` otherwise.
3124
3249
 
3250
+
3125
3251
  parameters_query:
3126
3252
  type: string
3127
3253
  description: Search query.
@@ -3142,6 +3268,7 @@ components:
3142
3268
 
3143
3269
  For example, to display 10 results per page starting from the third page, set `hitsPerPage` to 10 and `page` to 2.
3144
3270
 
3271
+
3145
3272
  parameters_hitsPerPage:
3146
3273
  type: integer
3147
3274
  minimum: 1
@@ -3160,6 +3287,7 @@ components:
3160
3287
 
3161
3288
  For example, to display 10 results per page starting from the third page, set `hitsPerPage` to 10 and `page` to 2.
3162
3289
 
3290
+
3163
3291
  recommendUpdatedAtResponse:
3164
3292
  type: object
3165
3293
  description: Response, taskID, and update timestamp.
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@graphcommerce/algolia-recommend",
3
3
  "homepage": "https://www.graphcommerce.org/",
4
4
  "repository": "github:graphcommerce-org/graphcommerce",
5
- "version": "10.0.0-canary.66",
5
+ "version": "10.0.0-canary.68",
6
6
  "sideEffects": false,
7
7
  "prettier": "@graphcommerce/prettier-config-pwa",
8
8
  "eslintConfig": {
@@ -22,11 +22,11 @@
22
22
  "generate": "tsx scripts/generate-recommend-spec.mts"
23
23
  },
24
24
  "peerDependencies": {
25
- "@graphcommerce/algolia-products": "^10.0.0-canary.66",
26
- "@graphcommerce/graphql": "^10.0.0-canary.66",
27
- "@graphcommerce/graphql-mesh": "^10.0.0-canary.66",
28
- "@graphcommerce/next-config": "^10.0.0-canary.66",
29
- "@graphcommerce/next-ui": "^10.0.0-canary.66",
25
+ "@graphcommerce/algolia-products": "^10.0.0-canary.68",
26
+ "@graphcommerce/graphql": "^10.0.0-canary.68",
27
+ "@graphcommerce/graphql-mesh": "^10.0.0-canary.68",
28
+ "@graphcommerce/next-config": "^10.0.0-canary.68",
29
+ "@graphcommerce/next-ui": "^10.0.0-canary.68",
30
30
  "react": "^19.2.0"
31
31
  },
32
32
  "devDependencies": {