diff --git a/package.json b/package.json
index 6194ddda8..b52cebd0e 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "reactmap",
- "version": "1.38.0-develop.3",
+ "version": "1.38.0-develop.4",
"private": true,
"description": "React based frontend map.",
"license": "MIT",
diff --git a/packages/locales/lib/human/de.json b/packages/locales/lib/human/de.json
index 183759413..832364c77 100644
--- a/packages/locales/lib/human/de.json
+++ b/packages/locales/lib/human/de.json
@@ -798,5 +798,9 @@
"filters": "Filter",
"active": "aktiv",
"inactive": "inaktiv",
- "bread_time_window": "Du kannst von 6Uhr bis 21Uhr an Dyna-Kämpfen teilnehmen."
+ "bread_time_window": "Du kannst von 6Uhr bis 21Uhr an Dyna-Kämpfen teilnehmen.",
+ "rsvp_0": "ohne RSVP",
+ "rsvp_1": "RSVP",
+ "rsvp_2": "nur_RSVP",
+ "rsvp_changes": "RSVP Änderungen"
}
diff --git a/packages/locales/lib/human/en.json b/packages/locales/lib/human/en.json
index e319efea0..50693178a 100644
--- a/packages/locales/lib/human/en.json
+++ b/packages/locales/lib/human/en.json
@@ -826,6 +826,10 @@
"active": "Active",
"inactive": "Inactive",
"bread_time_window": "You can take on Max Battles between 6AM and 9PM.",
+ "rsvp_0": "no rsvp",
+ "rsvp_1": "rsvp",
+ "rsvp_2": "rsvp_only",
+ "rsvp_changes": "RSVP changes",
"expert_basic_syntax": "Basic Syntax 🔎",
"expert_clause_description": "The fundamental building block of a filter is a clause. A clause consists of a prefix (what you're filtering), followed by a value or a range.",
"expert_format_description": "The basic format is: [Prefix][Value] or [Prefix][MinValue]-[MaxValue]",
diff --git a/packages/locales/lib/human/es.json b/packages/locales/lib/human/es.json
index 94fad28d1..cf3057354 100644
--- a/packages/locales/lib/human/es.json
+++ b/packages/locales/lib/human/es.json
@@ -617,5 +617,9 @@
"hide_editor": "Ocultar Editor",
"reported_error": "Este error ha sido reportado al servidor con el identificador",
"dark_mode": "Modo Oscuro",
- "bread_time_window": "Puedes acceder a los Combates Max de 6h a 21h."
+ "bread_time_window": "Puedes acceder a los Combates Max de 6h a 21h.",
+ "rsvp_0": "no rsvp",
+ "rsvp_1": "rsvp",
+ "rsvp_2": "rsvp_only",
+ "rsvp_changes": "RSVP cambios"
}
diff --git a/packages/locales/lib/human/fr.json b/packages/locales/lib/human/fr.json
index 0ea81a066..fa7addf36 100644
--- a/packages/locales/lib/human/fr.json
+++ b/packages/locales/lib/human/fr.json
@@ -773,5 +773,9 @@
"weather_audio": "Son de météo",
"active": "Actif",
"inactive": "Inactif",
- "bread_time_window": "Tu peux participer à des Combats Dynamax entre 6h et 21h."
+ "bread_time_window": "Tu peux participer à des Combats Dynamax entre 6h et 21h.",
+ "rsvp_0": "no rsvp",
+ "rsvp_1": "rsvp",
+ "rsvp_2": "rsvp_only",
+ "rsvp_changes": "RSVP changements"
}
diff --git a/packages/locales/lib/human/nl.json b/packages/locales/lib/human/nl.json
index b9bf73c57..a2d515522 100644
--- a/packages/locales/lib/human/nl.json
+++ b/packages/locales/lib/human/nl.json
@@ -469,5 +469,9 @@
"webhook_advanced_save_width": 2,
"login_button": 5,
"join_button": 5,
- "all": "Alle"
+ "all": "Alle",
+ "rsvp_0": "no rsvp",
+ "rsvp_1": "rsvp",
+ "rsvp_2": "rsvp_only",
+ "rsvp_changes": "RSVP veranderingen"
}
diff --git a/packages/locales/lib/human/pl.json b/packages/locales/lib/human/pl.json
index 35bca8ed8..077c4b17b 100644
--- a/packages/locales/lib/human/pl.json
+++ b/packages/locales/lib/human/pl.json
@@ -522,6 +522,10 @@
"route_type": "Typ scieżki",
"routes": "Scieżki",
"routes_subtitle": "Wyświetl scieżki w grze i związane z nimi informacje na mapie",
+ "rsvp_0": "no rsvp",
+ "rsvp_1": "rsvp",
+ "rsvp_2": "rsvp_only",
+ "rsvp_changes": "RSVP zmiany",
"s2_cell_level": "Poziom {{level}} S2 Cell",
"s2_cell_limit_0": "Próbowałeś wygenerować więcej niż 20 000 komórek ({{variable_0}})",
"s2cells": "Komórki S2",
diff --git a/packages/types/lib/poracle.d.ts b/packages/types/lib/poracle.d.ts
index 86c78bf89..42f7adc1b 100644
--- a/packages/types/lib/poracle.d.ts
+++ b/packages/types/lib/poracle.d.ts
@@ -66,6 +66,7 @@ export interface PoracleRaid {
distance: number
template: string
team: number
+ rsvp_changes: number
gym_id: string
form: number
move: number
@@ -84,6 +85,7 @@ export interface PoracleEgg {
distance: number
template: string
team: number
+ rsvp_changes: number
gym_id: string
description: string
}
diff --git a/server/src/graphql/typeDefs/poracle.graphql b/server/src/graphql/typeDefs/poracle.graphql
index 57291f267..404ac595c 100644
--- a/server/src/graphql/typeDefs/poracle.graphql
+++ b/server/src/graphql/typeDefs/poracle.graphql
@@ -61,6 +61,7 @@ type PoracleRaid {
distance: Int
template: String
team: Int
+ rsvp_changes: Int
gym_id: String
form: Int
move: Int
@@ -80,6 +81,7 @@ type PoracleEgg {
distance: Int
template: String
team: Int
+ rsvp_changes: Int
gym_id: String
description: String
}
diff --git a/server/src/services/Poracle.js b/server/src/services/Poracle.js
index 996e70e34..81edc6d64 100644
--- a/server/src/services/Poracle.js
+++ b/server/src/services/Poracle.js
@@ -223,11 +223,11 @@ class PoracleAPI {
if (
major < 4 ||
- (major === 4 && minor < 6) ||
- (major === 4 && minor === 6 && patch < 0)
+ (major === 4 && minor < 8) ||
+ (major === 4 && minor === 8 && patch < 4)
) {
throw new Error(
- `Poracle must be at least version 4.6.0, current version is ${this.version}`,
+ `Poracle must be at least version 4.8.4, current version is ${this.version}`,
)
}
const { providerURL, addressFormat, ...rest } = remoteConfig
@@ -796,6 +796,7 @@ class PoracleAPI {
exclusive: false,
level: 9000,
team: 4,
+ rsvp_changes: 0,
gym_id: null,
byDistance: false,
allMoves: true,
@@ -813,11 +814,12 @@ class PoracleAPI {
disabled: true,
options: [],
xs: 6,
- sm: 3,
+ sm: 4,
},
- { name: 'template', options: [], xs: 6, sm: 3 },
- { name: 'team', options: [0, 1, 2, 3, 4], xs: 6, sm: 3 },
- { name: 'move', options: [], xs: 6, sm: 3 },
+ { name: 'template', options: [], xs: 6, sm: 4 },
+ { name: 'team', options: [0, 1, 2, 3, 4], xs: 6, sm: 4 },
+ { name: 'move', options: [], xs: 6, sm: 5 },
+ { name: 'rsvp_changes', options: [0, 1, 2], xs: 6, sm: 5 },
],
booleans: [
{ name: 'clean', xs: 6, sm: 3 },
@@ -869,6 +871,7 @@ class PoracleAPI {
exclusive: false,
level: 9000,
team: 4,
+ rsvp_changes: 0,
gym_id: null,
byDistance: false,
everything_individually:
@@ -884,10 +887,11 @@ class PoracleAPI {
disabled: true,
options: [],
xs: 6,
- sm: 4,
+ sm: 3,
},
- { name: 'template', options: [], xs: 6, sm: 4 },
- { name: 'team', options: [0, 1, 2, 3, 4], xs: 6, sm: 4 },
+ { name: 'template', options: [], xs: 6, sm: 3 },
+ { name: 'team', options: [0, 1, 2, 3, 4], xs: 6, sm: 3 },
+ { name: 'rsvp_changes', options: [0, 1, 2], xs: 6, sm: 3 },
],
booleans: [
{ name: 'clean', xs: 6, sm: 6 },
diff --git a/src/features/webhooks/WebhookAdv.jsx b/src/features/webhooks/WebhookAdv.jsx
index 1885d5c1b..381d65ed4 100644
--- a/src/features/webhooks/WebhookAdv.jsx
+++ b/src/features/webhooks/WebhookAdv.jsx
@@ -66,6 +66,7 @@ const skipFields = new Set([
'gym_id',
'slot_changes',
'team',
+ 'rsvp_changes',
'battle_changes',
'shiny',
'everything_individually',
@@ -328,6 +329,15 @@ export function WebhookAdvanced() {
),
)
break
+ case 'rsvp_changes':
+ option.options.forEach((rsvp_changes) =>
+ menuItems.push(
+ ,
+ ),
+ )
+ break
case 'move':
menuItems.push(