MCPcopy Create free account
hub / github.com/chhoumann/quickadd / processValues

Method processValues

src/utils/FieldValueProcessor.ts:21–50  ·  view source on GitHub ↗

* Process field values with deduplication, defaults, and sorting

(
		rawValues: Set<string>,
		filters: FieldFilter
	)

Source from the content-addressed store, hash-verified

19 * Process field values with deduplication, defaults, and sorting
20 */
21 static processValues(
22 rawValues: Set<string>,
23 filters: FieldFilter
24 ): ProcessedValues {
25 const totalProcessed = rawValues.size;
26 let values = Array.from(rawValues).filter(
27 (value) => !this.isUnresolvedFieldToken(value),
28 );
29
30 // Apply deduplication
31 const deduplicationOptions: DeduplicationOptions = {
32 strategy: filters.caseSensitive ? 'case-sensitive' : 'case-insensitive',
33 preserveFirstOccurrence: true,
34 sortResult: true
35 };
36
37 const deduplicationResult = FieldValueDeduplicator.deduplicate(values, deduplicationOptions);
38 values = deduplicationResult.values;
39
40 // Handle default values
41 const { processedValues, hasDefault } = this.applyDefaultValues(values, filters);
42 values = processedValues;
43
44 return {
45 values,
46 hasDefaultValue: hasDefault,
47 duplicatesRemoved: deduplicationResult.duplicatesRemoved,
48 totalProcessed
49 };
50 }
51
52 private static isUnresolvedFieldToken(value: string): boolean {
53 return this.unresolvedFieldTokenRegex.test(value.trim());

Calls 3

applyDefaultValuesMethod · 0.95
deduplicateMethod · 0.80

Tested by

no test coverage detected