Deleting a studyset blanked it with everything inside it once a four-second Undo was over. It now only marks it (`studyset.deletedAt`, a column as `archivedAt`): it leaves every list, count and session with what is inside it and waits in the library's Recently deleted for 14 days, saying how many are left, with Restore and Delete now. Deleting no longer asks first and offers Undo; Delete now asks. Once the 14 days are over, whichever of the person's devices looks next (as their data opens, after every sync) deletes it for good, blanking first as before; the server can't blank a payload and never writes a person's space (ADR 0007). The connector, publishing and the learner count leave deleted studysets out too. The migration adds one nullable column: app versions before it stop syncing until they update. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MMm7usAo6q9ZZRoPkWjoxi Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
39 lines
1.7 KiB
Dart
39 lines
1.7 KiB
Dart
/// AUTOGENERATED BY SERVERPOD create-migration - DO NOT EDIT BY HAND
|
|
/// Merging: resolve registry conflicts the same as migration_registry.txt.
|
|
library;
|
|
|
|
import 'package:serverpod_database/serverpod_database.dart';
|
|
|
|
part '20260930094729362-studysets/migration.dart';
|
|
part '20260930122235111-cards/migration.dart';
|
|
part '20260930145136285-reviews/migration.dart';
|
|
part '20261001064926911-tree-tags-assets/migration.dart';
|
|
part '20261002191122122-notes/migration.dart';
|
|
part '20261002211346701-learning-paths/migration.dart';
|
|
part '20261003110855698-pdf-sources/migration.dart';
|
|
part '20261007205440868-card-buried-at/migration.dart';
|
|
part '20261008165051407-pdf-position/migration.dart';
|
|
part '20261009224606274-feedback/migration.dart';
|
|
part '20261012162411835-studyset-deleted-at/migration.dart';
|
|
|
|
/// Migration registry for the client-side database.
|
|
class MigrationRegistry {
|
|
/// Ordered list of all client-side database migrations.
|
|
/// New migrations are always appended at the end.
|
|
static final List<MigrationVersionSql> migrations = [
|
|
_Migration20260930094729362_studysets(),
|
|
_Migration20260930122235111_cards(),
|
|
_Migration20260930145136285_reviews(),
|
|
_Migration20261001064926911_tree_tags_assets(),
|
|
_Migration20261002191122122_notes(),
|
|
_Migration20261002211346701_learning_paths(),
|
|
_Migration20261003110855698_pdf_sources(),
|
|
_Migration20261007205440868_card_buried_at(),
|
|
_Migration20261008165051407_pdf_position(),
|
|
_Migration20261009224606274_feedback(),
|
|
_Migration20261012162411835_studyset_deleted_at(),
|
|
];
|
|
|
|
/// List of all client-side database migration versions.
|
|
static List<String> get versions => migrations.map((m) => m.version).toList();
|
|
}
|