diff --git a/pb_migrations/1759273534_deleted_player_badges_view.js b/pb_migrations/1759273534_deleted_player_badges_view.js
new file mode 100644
index 0000000..40dada0
--- /dev/null
+++ b/pb_migrations/1759273534_deleted_player_badges_view.js
@@ -0,0 +1,187 @@
+///
+migrate((app) => {
+ const collection = app.findCollectionByNameOrId("pbc_5062686152");
+
+ return app.delete(collection);
+}, (app) => {
+ const collection = new Collection({
+ "createRule": null,
+ "deleteRule": null,
+ "fields": [
+ {
+ "autogeneratePattern": "",
+ "hidden": false,
+ "id": "text3208210256",
+ "max": 0,
+ "min": 0,
+ "name": "id",
+ "pattern": "^[a-z0-9]+$",
+ "presentable": false,
+ "primaryKey": true,
+ "required": true,
+ "system": true,
+ "type": "text"
+ },
+ {
+ "cascadeDelete": false,
+ "collectionId": "pbc_3072146508",
+ "hidden": false,
+ "id": "relation2582050271",
+ "maxSelect": 1,
+ "minSelect": 0,
+ "name": "player_id",
+ "presentable": false,
+ "required": false,
+ "system": false,
+ "type": "relation"
+ },
+ {
+ "cascadeDelete": false,
+ "collectionId": "pbc_1340419796",
+ "hidden": false,
+ "id": "relation4154639100",
+ "maxSelect": 1,
+ "minSelect": 0,
+ "name": "badge_id",
+ "presentable": false,
+ "required": false,
+ "system": false,
+ "type": "relation"
+ },
+ {
+ "autogeneratePattern": "",
+ "hidden": false,
+ "id": "_clone_bzlv",
+ "max": 0,
+ "min": 0,
+ "name": "badge_name",
+ "pattern": "",
+ "presentable": false,
+ "primaryKey": false,
+ "required": true,
+ "system": false,
+ "type": "text"
+ },
+ {
+ "autogeneratePattern": "",
+ "hidden": false,
+ "id": "_clone_CXA6",
+ "max": 0,
+ "min": 0,
+ "name": "badge_description",
+ "pattern": "",
+ "presentable": false,
+ "primaryKey": false,
+ "required": true,
+ "system": false,
+ "type": "text"
+ },
+ {
+ "hidden": false,
+ "id": "_clone_kZTN",
+ "maxSelect": 1,
+ "name": "badge_type",
+ "presentable": false,
+ "required": true,
+ "system": false,
+ "type": "select",
+ "values": [
+ "tournament_participation",
+ "tournament_placement",
+ "performance",
+ "overtime",
+ "match_milestone"
+ ]
+ },
+ {
+ "autogeneratePattern": "",
+ "hidden": false,
+ "id": "_clone_AgrF",
+ "max": 50,
+ "min": 0,
+ "name": "badge_icon",
+ "pattern": "",
+ "presentable": false,
+ "primaryKey": false,
+ "required": false,
+ "system": false,
+ "type": "text"
+ },
+ {
+ "autogeneratePattern": "",
+ "hidden": false,
+ "id": "_clone_m5vn",
+ "max": 50,
+ "min": 0,
+ "name": "badge_color",
+ "pattern": "",
+ "presentable": false,
+ "primaryKey": false,
+ "required": false,
+ "system": false,
+ "type": "text"
+ },
+ {
+ "hidden": false,
+ "id": "_clone_MAib",
+ "name": "is_progressive",
+ "presentable": false,
+ "required": false,
+ "system": false,
+ "type": "bool"
+ },
+ {
+ "hidden": false,
+ "id": "json3212413036",
+ "maxSize": 1,
+ "name": "current_progress",
+ "presentable": false,
+ "required": false,
+ "system": false,
+ "type": "json"
+ },
+ {
+ "hidden": false,
+ "id": "json4171899439",
+ "maxSize": 1,
+ "name": "target_progress",
+ "presentable": false,
+ "required": false,
+ "system": false,
+ "type": "json"
+ },
+ {
+ "hidden": false,
+ "id": "json3435813110",
+ "maxSize": 1,
+ "name": "is_earned",
+ "presentable": false,
+ "required": false,
+ "system": false,
+ "type": "json"
+ },
+ {
+ "hidden": false,
+ "id": "_clone_g8UU",
+ "max": "",
+ "min": "",
+ "name": "earned_at",
+ "presentable": false,
+ "required": false,
+ "system": false,
+ "type": "date"
+ }
+ ],
+ "id": "pbc_5062686152",
+ "indexes": [],
+ "listRule": null,
+ "name": "player_badges_view",
+ "system": false,
+ "type": "view",
+ "updateRule": null,
+ "viewQuery": "\n SELECT\n (p.id || '_' || b.id) as id,\n p.id as player_id,\n b.id as badge_id,\n b.name as badge_name,\n b.description as badge_description,\n b.type as badge_type,\n b.icon as badge_icon,\n b.color as badge_color,\n b.is_progressive,\n COALESCE(pbp.current_progress, 0) as current_progress,\n COALESCE(pbp.target_progress, b.progress_target, 1) as target_progress,\n COALESCE(pbp.is_earned, false) as is_earned,\n pbp.earned_at\n FROM players p\n CROSS JOIN badges b\n LEFT JOIN player_badge_progress pbp ON pbp.player_id = p.id AND pbp.badge_id = b.id\n ",
+ "viewRule": null
+ });
+
+ return app.save(collection);
+})
diff --git a/pb_migrations/1759273543_deleted_player_badge_progress.js b/pb_migrations/1759273543_deleted_player_badge_progress.js
new file mode 100644
index 0000000..5d3a4df
--- /dev/null
+++ b/pb_migrations/1759273543_deleted_player_badge_progress.js
@@ -0,0 +1,129 @@
+///
+migrate((app) => {
+ const collection = app.findCollectionByNameOrId("pbc_4251874343");
+
+ return app.delete(collection);
+}, (app) => {
+ const collection = new Collection({
+ "createRule": null,
+ "deleteRule": null,
+ "fields": [
+ {
+ "autogeneratePattern": "[a-z0-9]{15}",
+ "hidden": false,
+ "id": "text3208210256",
+ "max": 15,
+ "min": 15,
+ "name": "id",
+ "pattern": "^[a-z0-9]+$",
+ "presentable": false,
+ "primaryKey": true,
+ "required": true,
+ "system": true,
+ "type": "text"
+ },
+ {
+ "cascadeDelete": true,
+ "collectionId": "pbc_3072146508",
+ "hidden": false,
+ "id": "relation2847519201",
+ "maxSelect": 1,
+ "minSelect": 1,
+ "name": "player_id",
+ "presentable": false,
+ "required": true,
+ "system": false,
+ "type": "relation"
+ },
+ {
+ "cascadeDelete": true,
+ "collectionId": "pbc_1340419796",
+ "hidden": false,
+ "id": "relation3948571039",
+ "maxSelect": 1,
+ "minSelect": 1,
+ "name": "badge_id",
+ "presentable": false,
+ "required": true,
+ "system": false,
+ "type": "relation"
+ },
+ {
+ "hidden": false,
+ "id": "number1847293057",
+ "max": null,
+ "min": 0,
+ "name": "current_progress",
+ "onlyInt": false,
+ "presentable": false,
+ "required": true,
+ "system": false,
+ "type": "number"
+ },
+ {
+ "hidden": false,
+ "id": "number2948571040",
+ "max": null,
+ "min": 1,
+ "name": "target_progress",
+ "onlyInt": false,
+ "presentable": false,
+ "required": true,
+ "system": false,
+ "type": "number"
+ },
+ {
+ "hidden": false,
+ "id": "bool3049672141",
+ "name": "is_earned",
+ "presentable": false,
+ "required": false,
+ "system": false,
+ "type": "bool"
+ },
+ {
+ "hidden": false,
+ "id": "date1150773242",
+ "max": "",
+ "min": "",
+ "name": "earned_at",
+ "presentable": false,
+ "required": false,
+ "system": false,
+ "type": "date"
+ },
+ {
+ "hidden": false,
+ "id": "autodate2990389176",
+ "name": "created",
+ "onCreate": true,
+ "onUpdate": false,
+ "presentable": false,
+ "system": false,
+ "type": "autodate"
+ },
+ {
+ "hidden": false,
+ "id": "autodate3332085495",
+ "name": "updated",
+ "onCreate": true,
+ "onUpdate": true,
+ "presentable": false,
+ "system": false,
+ "type": "autodate"
+ }
+ ],
+ "id": "pbc_4251874343",
+ "indexes": [
+ "CREATE UNIQUE INDEX `idx_unique_player_badge` ON `player_badge_progress` (`player_id`, `badge_id`)"
+ ],
+ "listRule": null,
+ "name": "player_badge_progress",
+ "system": false,
+ "type": "base",
+ "updateRule": null,
+ "viewRule": null
+ });
+
+ return app.save(collection);
+})