I want my extensions to support text, URLs, videos and 10 images.
I configured plist as below:

This work is great, but I want my extension to not support image and video at the same time.
I understand that I will most likely have to build the "SUBQUERY (..)" statement. My predicate:
SUBQUERY (
extensionItems,
$extensionItem,
SUBQUERY (
$extensionItem.attachments,
$attachment,(
NOT ( ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "public.image"
AND ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "public.movie")
) AND (
ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "public.image"
|| ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "public.plain-text"
|| ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "public.url"
|| ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "public.movie"
|| ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "public.text")
).@count < 10
).@count == 1
But this does not work for me. How can I use in this case. Thanks for any help!
source
share