Skip to content

Commit 85414bd

Browse files
committed
chore(lookup): Skip providers which do not support GTIN lookups
Immediately create a warning message instead of calling the provider only to let it throw an error (which clutters the logs).
1 parent 69ff14d commit 85414bd

File tree

1 file changed

+11
-2
lines changed

1 file changed

+11
-2
lines changed

lookup.ts

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import { detectLanguageAndScript } from '@/harmonizer/language_script.ts';
22
import { mergeRelease } from '@/harmonizer/merge.ts';
33
import { defaultProviderPreferences, providers } from '@/providers/mod.ts';
4+
import { FeatureQuality } from '@/providers/features.ts';
45
import { LookupError, ProviderError } from '@/utils/errors.ts';
56
import { ensureValidGTIN, isEqualGTIN, uniqueGtinSet } from '@/utils/gtin.ts';
67
import { isDefined, isNotError } from '@/utils/predicate.ts';
@@ -139,8 +140,16 @@ export class CombinedReleaseLookup {
139140
for (const providerName of this.gtinLookupProviders) {
140141
const provider = providers.findByName(providerName);
141142
if (provider) {
142-
this.queuedReleases.push(provider.getRelease(['gtin', this.gtin], this.options));
143-
this.queuedProviderNames.add(provider.name);
143+
if (provider.getQuality('GTIN lookup') != FeatureQuality.MISSING) {
144+
this.queuedReleases.push(provider.getRelease(['gtin', this.gtin], this.options));
145+
this.queuedProviderNames.add(provider.name);
146+
} else {
147+
this.messages.push({
148+
provider: provider.name,
149+
type: 'warning',
150+
text: 'GTIN lookups are not supported',
151+
});
152+
}
144153
} else {
145154
this.messages.push({
146155
type: 'error',

0 commit comments

Comments
 (0)