diff --git a/main.go b/main.go index ec7adbe..685abd2 100644 --- a/main.go +++ b/main.go @@ -25,7 +25,6 @@ type Service struct { Group string `json:"group"` Description LocalizedText `json:"description"` Domains []string `json:"domains,omitempty"` - Patterns []string `json:"patterns,omitempty"` } type CompiledServicesOutput struct { diff --git a/schemas/services.schema.json b/schemas/services.schema.json index 326178a..613e652 100644 --- a/schemas/services.schema.json +++ b/schemas/services.schema.json @@ -29,28 +29,10 @@ "description": "A list of domains associated with the service", "items": { "type": "string", - "pattern": "^(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\\.)+[a-zA-Z]{2,}$" - } - }, - "patterns": { - "type": "array", - "description": "A list of regex patterns to match domains", - "items": { - "type": "string" + "pattern": "^(?:\\*\\.)?(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\\.)+(?:[a-zA-Z]{2,}|\\*)$" } } }, - "required": ["name", "group", "description"], - "anyOf": [ - { - "required": ["domains"] - }, - { - "required": ["patterns"] - }, - { - "required": ["domains", "patterns"] - } - ], + "required": ["name", "group", "description", "domains"], "additionalProperties": false } diff --git a/services/airbnb.json b/services/airbnb.json index 32d6c38..446d9c2 100644 --- a/services/airbnb.json +++ b/services/airbnb.json @@ -5,7 +5,5 @@ "en": "A global online marketplace for booking unique accommodations, apartments, and experiences from local hosts.", "de": "Ein weltweiter Online-Marktplatz für die Buchung einzigartiger Unterkünfte, Apartments und Erlebnisse von lokalen Gastgebern." }, - "patterns": [ - "^([a-zA-Z0-9-]+\\.)*airbnb\\.([a-zA-Z0-9.-]+)$" - ] + "domains": ["airbnb.*"] } diff --git a/services/ali-express.json b/services/ali-express.json index e3026c6..fa5c1cb 100644 --- a/services/ali-express.json +++ b/services/ali-express.json @@ -5,7 +5,5 @@ "en": "An online retail service based in China.", "de": "Ein Online-Einzelhandelsservice mit Sitz in China." }, - "patterns": [ - "^([a-zA-Z0-9-]+\\.)*aliexpress\\.([a-zA-Z0-9.-]+)$" - ] + "domains": ["aliexpress.*"] } diff --git a/services/apple.json b/services/apple.json index 023e3f2..733ddb5 100644 --- a/services/apple.json +++ b/services/apple.json @@ -5,7 +5,7 @@ "en": "A technology company known for its consumer electronics.", "de": "Ein Technologieunternehmen, das für seine Unterhaltungselektronik bekannt ist." }, - "patterns": [ - "^([a-zA-Z0-9-]+\\.)*apple\\.([a-zA-Z0-9.-]+)$" + "domains": [ + "apple.*" ] } diff --git a/services/badoo.json b/services/badoo.json index 345e086..05d2d25 100644 --- a/services/badoo.json +++ b/services/badoo.json @@ -5,7 +5,7 @@ "en": "A dating app for connecting people.", "de": "Eine Dating-App zum Kennenlernen von Menschen." }, - "patterns": [ - "^([a-zA-Z0-9-]+\\.)*badoo\\.([a-zA-Z0-9.-]+)$" + "domains": [ + "badoo.*" ] } diff --git a/services/bing.json b/services/bing.json index d7996a1..c5fc6b6 100644 --- a/services/bing.json +++ b/services/bing.json @@ -5,7 +5,7 @@ "en": "A search engine developed by Microsoft.", "de": "Eine von Microsoft entwickelte Suchmaschine." }, - "patterns": [ - "^([a-zA-Z0-9-]+\\.)*bing\\.([a-zA-Z0-9.-]+)$" + "domains": [ + "bing.*" ] } diff --git a/services/booking-com.json b/services/booking-com.json index c302d63..ecf186c 100644 --- a/services/booking-com.json +++ b/services/booking-com.json @@ -5,7 +5,7 @@ "en": "A vacation rental service.", "de": "Ein Service für Ferienunterkünfte." }, - "patterns": [ - "^([a-zA-Z0-9-]+\\.)*booking\\.([a-zA-Z0-9.-]+)$" + "domains": [ + "booking.*" ] } diff --git a/services/crunchyroll.json b/services/crunchyroll.json index cf5f72f..0d39070 100644 --- a/services/crunchyroll.json +++ b/services/crunchyroll.json @@ -5,7 +5,7 @@ "en": "A streaming service for anime and Asian dramas.", "de": "Ein Streaming-Dienst für Anime und asiatische Dramen." }, - "patterns": [ - "^([a-zA-Z0-9-]+\\.)*crunchyroll\\.([a-zA-Z0-9.-]+)$" + "domains": [ + "crunchyroll.*" ] } diff --git a/services/deepseek.json b/services/deepseek.json index 14af977..1361718 100644 --- a/services/deepseek.json +++ b/services/deepseek.json @@ -5,7 +5,7 @@ "en": "An AI language model.", "de": "Ein KI-Sprachmodell." }, - "patterns": [ - "^([a-zA-Z0-9-]+\\.)*deepseek\\.([a-zA-Z0-9.-]+)$" + "domains": [ + "deepseek.*" ] } diff --git a/services/dropbox.json b/services/dropbox.json index 1a2fb86..c294da1 100644 --- a/services/dropbox.json +++ b/services/dropbox.json @@ -5,7 +5,7 @@ "en": "A cloud storage service.", "de": "Ein Cloud-Speicherdienst." }, - "patterns": [ - "^([a-zA-Z0-9-]+\\.)*dropbox\\.([a-zA-Z0-9.-]+)$" + "domains": [ + "dropbox.*" ] } diff --git a/services/notion.json b/services/notion.json index 705e7f8..e17395b 100644 --- a/services/notion.json +++ b/services/notion.json @@ -5,7 +5,7 @@ "en": "A project management tool.", "de": "Ein Projektmanagement-Tool." }, - "patterns": [ - "^([a-zA-Z0-9-]+\\.)*notion\\.([a-zA-Z0-9.-]+)$" + "domains": [ + "notion.*" ] } diff --git a/services/paramount-plus.json b/services/paramount-plus.json index 33baa81..8287277 100644 --- a/services/paramount-plus.json +++ b/services/paramount-plus.json @@ -5,7 +5,7 @@ "en": "A streaming service for movies and TV shows.", "de": "Ein Streaming-Dienst für Filme und Fernsehsendungen." }, - "patterns": [ - "^([a-zA-Z0-9-]+\\.)*paramountplus\\.([a-zA-Z0-9.-]+)$" + "domains": [ + "paramountplus.*" ] } diff --git a/services/paypal.json b/services/paypal.json index 9bd0ffa..f32de2c 100644 --- a/services/paypal.json +++ b/services/paypal.json @@ -5,7 +5,7 @@ "en": "A mobile payment service.", "de": "Ein mobiler Zahlungsdienst." }, - "patterns": [ - "^([a-zA-Z0-9-]+\\.)*paypal\\.([a-zA-Z0-9.-]+)$" + "domains": [ + "paypal.*" ] } diff --git a/services/peacock.json b/services/peacock.json index 187e513..7ed35be 100644 --- a/services/peacock.json +++ b/services/peacock.json @@ -6,9 +6,7 @@ "de": "Ein Streaming-Dienst für Filme und Fernsehsendungen." }, "domains": [ - "nbcuniversal.com" - ], - "patterns": [ - "^([a-zA-Z0-9-]+\\.)*peacocktv\\.([a-zA-Z0-9.-]+)$" + "nbcuniversal.com", + "peacocktv.*" ] } diff --git a/services/shein.json b/services/shein.json index d72241c..e5b9d35 100644 --- a/services/shein.json +++ b/services/shein.json @@ -5,7 +5,7 @@ "en": "An online retail service.", "de": "Ein Online-Einzelhandelsservice." }, - "patterns": [ - "^([a-zA-Z0-9-]+\\.)*shein\\.([a-zA-Z0-9.-]+)$" + "domains": [ + "shein.*" ] } diff --git a/services/skype.json b/services/skype.json index df61130..e0b33e4 100644 --- a/services/skype.json +++ b/services/skype.json @@ -12,7 +12,7 @@ "skype.net", "skypeassets.com", "skypeassets.net", - "skypedata.akadns.net" - ], - "patterns": ["^([a-zA-Z0-9-]+\\.)*skype\\.([a-zA-Z0-9.-]+)$"] + "skypedata.akadns.net", + "skype.*" + ] } diff --git a/services/temu.json b/services/temu.json index 05d01c9..a4684ea 100644 --- a/services/temu.json +++ b/services/temu.json @@ -5,7 +5,7 @@ "en": "An online retail service.", "de": "Ein Online-Einzelhandelsservice." }, - "patterns": [ - "^([a-zA-Z0-9-]+\\.)*temu\\.([a-zA-Z0-9.-]+)$" + "domains": [ + "temu.*" ] } diff --git a/services/webex.json b/services/webex.json index 764ca89..0529bd4 100644 --- a/services/webex.json +++ b/services/webex.json @@ -5,7 +5,7 @@ "en": "A video conferencing service.", "de": "Ein Videokonferenzdienst." }, - "patterns": [ - "^([a-zA-Z0-9-]+\\.)*webex\\.([a-zA-Z0-9.-]+)$" + "domains": [ + "webex.*" ] }