diff --git a/skills/build_cms_search_input.sh b/skills/build_cms_search_input.sh deleted file mode 100644 index 2b3fd66..0000000 --- a/skills/build_cms_search_input.sh +++ /dev/null @@ -1,145 +0,0 @@ -#!/usr/bin/env bash -# Build CMS Search Input JSON -# -# Generates properly formatted input JSON for search_media_cms_channels MCP tool. -# Cross-platform compatible: Mac, Windows (Git Bash/MSYS/Cygwin), Linux, POSIX -# -# Usage: -# bash build_cms_search_input.sh --keywords "car,automobile,vehicle" --taxonomies "Modern,Luxury" --locale "en_US" -# bash build_cms_search_input.sh --keywords "car" --taxonomies "Luxury" -# -# Examples: -# # With empty keywords -# bash build_cms_search_input.sh --keywords "" --taxonomies "Bright,Spacious" --locale "en_US" -# -# # With empty taxonomies -# bash build_cms_search_input.sh --keywords "logo,brand" --taxonomies "" --locale "en_US" -# -# # With page parameters -# bash build_cms_search_input.sh --keywords "car" --taxonomies "Luxury" --locale "en_US" --limit 10 --offset 0 - -set -e - -# Default values -KEYWORDS="" -TAXONOMIES="" -LOCALE="en_US" -PAGE_OFFSET=0 -PAGE_LIMIT=5 - -# Parse arguments -while [[ $# -gt 0 ]]; do - case $1 in - --keywords) - KEYWORDS="$2" - shift 2 - ;; - --taxonomies) - TAXONOMIES="$2" - shift 2 - ;; - --locale) - LOCALE="$2" - shift 2 - ;; - --offset) - PAGE_OFFSET="$2" - shift 2 - ;; - --limit) - PAGE_LIMIT="$2" - shift 2 - ;; - -h|--help) - echo "Usage: $0 --keywords KEYWORDS --taxonomies TAXONOMIES [--locale LOCALE] [--offset OFFSET] [--limit LIMIT]" - echo "" - echo "Required arguments:" - echo " --keywords KEYWORDS Comma-separated keywords (e.g., 'car,automobile,vehicle')" - echo " Use empty string '' for no keywords" - echo " --taxonomies TAXONOMIES Comma-separated taxonomy labels (e.g., 'Modern,Luxury')" - echo " Use empty string '' for no taxonomies" - echo "" - echo "Optional arguments:" - echo " --locale LOCALE Language locale (default: 'en_US')" - echo " --offset OFFSET Page offset for pagination (default: 0)" - echo " --limit LIMIT Number of results to return (default: 5)" - echo "" - echo "Examples:" - echo " $0 --keywords 'car,automobile,vehicle' --taxonomies 'Modern,Luxury' --locale 'en_US'" - echo " $0 --keywords '' --taxonomies 'Bright,Spacious' --locale 'en_US'" - echo " $0 --keywords 'logo,brand' --taxonomies '' --locale 'en_US' --limit 10" - exit 0 - ;; - *) - echo "Unknown argument: $1" - echo "Use --help for usage information" - exit 1 - ;; - esac -done - -# Function to build search keyword (OR-separated) -build_search_keyword() { - local keywords="$1" - - if [[ -z "$keywords" ]]; then - echo "" - return - fi - - # Replace commas with " OR " - local result=$(echo "$keywords" | sed 's/,/ OR /g' | sed 's/ */ /g') - echo "$result" -} - -# Function to build taxonomy expression (JSON string) -build_taxonomy_expression() { - local taxonomies="$1" - - if [[ -z "$taxonomies" ]]; then - echo "{}" - return - fi - - # Split by comma and build JSON array - IFS=',' read -ra taxonomy_array <<< "$taxonomies" - - # Build JSON array string - local json_array="[" - local first=true - for tax in "${taxonomy_array[@]}"; do - tax=$(echo "$tax" | xargs) # Trim whitespace - if [[ -n "$tax" ]]; then - if [[ "$first" == true ]]; then - first=false - else - json_array+=", " - fi - json_array+="\"$tax\"" - fi - done - json_array+="]" - - # Build complete JSON string - echo "{\"OR\": $json_array}" -} - -# Build components -SEARCH_KEYWORD=$(build_search_keyword "$KEYWORDS") -TAXONOMY_EXPRESSION=$(build_taxonomy_expression "$TAXONOMIES") - -# Output JSON -cat <