You could use hook_facetapi_filters() to define a new filter for your facets.
/**
* Implements hook_facetapi_filter().
*/
function MODULE_facetapi_filters() {
return array(
'uppercase_items' => array(
'handler' => array(
'label' => t('Uppercase items'),
'class' => 'FacetapiFilterUppercaseItems',
),
),
);
}
and then extend the FacetapiFilter class like this:
class FacetapiFilterUppercaseItems extends FacetapiFilter {
/**
* Filters facet items.
*/
public function execute(array $build) {
// Do your magic.
foreach ($build as $key => $value) {
$build[$key]['#markup'] = ucfirst($value['#markup']);
}
return $build;
}
/**
* Adds hook documentation.
*/
function settingsForm(&$form, &$form_state) {
$form['uppercase_items'] = array(
'#title' => t('Uppercase filters'),
'#type' => 'checkbox',
'#default_value' => TRUE,
);
}
}
I haven't actually tried this out but this is pretty much what Facet API Bonus does, which is also a great example for creating your own filters.