diff --git a/packages/filter-predicates/report.api.md b/packages/filter-predicates/report.api.md index 9b729c3d60..76edeb61d2 100644 --- a/packages/filter-predicates/report.api.md +++ b/packages/filter-predicates/report.api.md @@ -61,7 +61,7 @@ export type FilterPredicateValue = $contains: FilterPredicate; } | { - $startsWith: string; + $hasPrefix: string; } | UnknownFilterPredicateValueMatcher; @@ -102,6 +102,6 @@ export type UnknownFilterPredicateOperator = { export type UnknownFilterPredicateValueMatcher = { [KMatcher in `$${string}`]: JsonValue; } & { - [KMatcher in '$exists' | '$in' | '$contains' | '$startsWith']: never; + [KMatcher in '$exists' | '$in' | '$contains' | '$hasPrefix']: never; }; ``` diff --git a/packages/filter-predicates/src/predicates/evaluate.test.ts b/packages/filter-predicates/src/predicates/evaluate.test.ts index f28c1c9453..6eb54c3c92 100644 --- a/packages/filter-predicates/src/predicates/evaluate.test.ts +++ b/packages/filter-predicates/src/predicates/evaluate.test.ts @@ -237,7 +237,7 @@ describe('evaluate', () => { 'metadata.annotations.github.com/repo': { $exists: true }, }, ], - ['a', { 'spec.type': { $startsWith: 'g' } }], + ['a', { 'spec.type': { $hasPrefix: 'g' } }], ])('filter entry %#', (expected, filter) => { it('filterPredicateToFilterFunction', () => { const filtered = entities.filter(entity => diff --git a/packages/filter-predicates/src/predicates/evaluate.ts b/packages/filter-predicates/src/predicates/evaluate.ts index 170bee41f3..2006265004 100644 --- a/packages/filter-predicates/src/predicates/evaluate.ts +++ b/packages/filter-predicates/src/predicates/evaluate.ts @@ -104,13 +104,13 @@ function evaluateFilterPredicateValue( } return value === undefined; } - if ('$startsWith' in filter) { + if ('$hasPrefix' in filter) { if (typeof value !== 'string') { return false; } return value .toLocaleUpperCase('en-US') - .startsWith(filter.$startsWith.toLocaleUpperCase('en-US')); + .startsWith(filter.$hasPrefix.toLocaleUpperCase('en-US')); } return false; diff --git a/packages/filter-predicates/src/predicates/types.ts b/packages/filter-predicates/src/predicates/types.ts index c66cdd8f64..8c5b298719 100644 --- a/packages/filter-predicates/src/predicates/types.ts +++ b/packages/filter-predicates/src/predicates/types.ts @@ -153,7 +153,7 @@ export type FilterPredicateExpression = { export type UnknownFilterPredicateValueMatcher = { [KMatcher in `$${string}`]: JsonValue; } & { - [KMatcher in '$exists' | '$in' | '$contains' | '$startsWith']: never; + [KMatcher in '$exists' | '$in' | '$contains' | '$hasPrefix']: never; }; /** @@ -188,7 +188,7 @@ export type FilterPredicateValue = /** * Asserts that the property value is string, and that it starts with the given string. */ - $startsWith: string; + $hasPrefix: string; } | UnknownFilterPredicateValueMatcher;