s
Some checks are pending
Backend CI / test (push) Waiting to run
Backend CI / build (push) Blocked by required conditions
Deploy Mnemo Cards / Deploy Backend (push) Waiting to run
Deploy Mnemo Cards / Deploy Web App (push) Blocked by required conditions
Deploy Mnemo Cards / Final Verification (push) Blocked by required conditions
Some checks are pending
Backend CI / test (push) Waiting to run
Backend CI / build (push) Blocked by required conditions
Deploy Mnemo Cards / Deploy Backend (push) Waiting to run
Deploy Mnemo Cards / Deploy Web App (push) Blocked by required conditions
Deploy Mnemo Cards / Final Verification (push) Blocked by required conditions
This commit is contained in:
parent
10f827534c
commit
22340d78ef
4 changed files with 26 additions and 26 deletions
|
|
@ -26,7 +26,7 @@ class JsonMapConverter extends TypeConverter<Map<String, dynamic>?, String?> {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class JsonListConverter extends TypeConverter<List<dynamic>, String> {
|
class JsonListConverter extends TypeConverter<List<dynamic>, String?> {
|
||||||
const JsonListConverter();
|
const JsonListConverter();
|
||||||
|
|
||||||
@override
|
@override
|
||||||
|
|
@ -46,12 +46,12 @@ class JsonListConverter extends TypeConverter<List<dynamic>, String> {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class StringListConverter extends TypeConverter<List<String>, String> {
|
class StringListConverter extends TypeConverter<List<String>, String?> {
|
||||||
const StringListConverter();
|
const StringListConverter();
|
||||||
|
|
||||||
@override
|
@override
|
||||||
List<String> fromSql(String fromDb) {
|
List<String> fromSql(String? fromDb) {
|
||||||
if (fromDb.isEmpty || fromDb == '[]') return [];
|
if (fromDb == null || fromDb.isEmpty || fromDb == '[]') return [];
|
||||||
try {
|
try {
|
||||||
final decoded = json.decode(fromDb);
|
final decoded = json.decode(fromDb);
|
||||||
return (decoded as List).map((e) => e as String).toList();
|
return (decoded as List).map((e) => e as String).toList();
|
||||||
|
|
@ -93,12 +93,12 @@ class DateTimeListConverter extends TypeConverter<List<DateTime>?, String> {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class IntListConverter extends TypeConverter<List<int>, String> {
|
class IntListConverter extends TypeConverter<List<int>, String?> {
|
||||||
const IntListConverter();
|
const IntListConverter();
|
||||||
|
|
||||||
@override
|
@override
|
||||||
List<int> fromSql(String fromDb) {
|
List<int> fromSql(String? fromDb) {
|
||||||
if (fromDb.isEmpty || fromDb == '[]') return [];
|
if (fromDb == null || fromDb.isEmpty || fromDb == '[]') return [];
|
||||||
try {
|
try {
|
||||||
final decoded = json.decode(fromDb);
|
final decoded = json.decode(fromDb);
|
||||||
return (decoded as List).map((e) => e as int).toList();
|
return (decoded as List).map((e) => e as int).toList();
|
||||||
|
|
|
||||||
|
|
@ -75,7 +75,7 @@ class $UsersTable extends Users with TableInfo<$UsersTable, User> {
|
||||||
GeneratedColumn<String>(
|
GeneratedColumn<String>(
|
||||||
'purchases',
|
'purchases',
|
||||||
aliasedName,
|
aliasedName,
|
||||||
false,
|
true,
|
||||||
type: DriftSqlType.string,
|
type: DriftSqlType.string,
|
||||||
requiredDuringInsert: false,
|
requiredDuringInsert: false,
|
||||||
defaultValue: const Constant('[]'),
|
defaultValue: const Constant('[]'),
|
||||||
|
|
@ -240,7 +240,7 @@ class $UsersTable extends Users with TableInfo<$UsersTable, User> {
|
||||||
attachedDatabase.typeMapping.read(
|
attachedDatabase.typeMapping.read(
|
||||||
DriftSqlType.string,
|
DriftSqlType.string,
|
||||||
data['${effectivePrefix}purchases'],
|
data['${effectivePrefix}purchases'],
|
||||||
)!,
|
),
|
||||||
),
|
),
|
||||||
createdAt: attachedDatabase.typeMapping.read(
|
createdAt: attachedDatabase.typeMapping.read(
|
||||||
PgTypes.timestampWithTimezone,
|
PgTypes.timestampWithTimezone,
|
||||||
|
|
@ -262,7 +262,7 @@ class $UsersTable extends Users with TableInfo<$UsersTable, User> {
|
||||||
return $UsersTable(attachedDatabase, alias);
|
return $UsersTable(attachedDatabase, alias);
|
||||||
}
|
}
|
||||||
|
|
||||||
static TypeConverter<List<String>, String> $converterpurchases =
|
static TypeConverter<List<String>, String?> $converterpurchases =
|
||||||
const StringListConverter();
|
const StringListConverter();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1058,15 +1058,15 @@ class $UserDatasTable extends UserDatas
|
||||||
return $UserDatasTable(attachedDatabase, alias);
|
return $UserDatasTable(attachedDatabase, alias);
|
||||||
}
|
}
|
||||||
|
|
||||||
static TypeConverter<List<dynamic>, String> $converterwords =
|
static TypeConverter<List<dynamic>, String?> $converterwords =
|
||||||
const JsonListConverter();
|
const JsonListConverter();
|
||||||
static TypeConverter<List<String>, String> $convertertags =
|
static TypeConverter<List<String>, String?> $convertertags =
|
||||||
const StringListConverter();
|
const StringListConverter();
|
||||||
static TypeConverter<List<dynamic>, String> $converterpackProgress =
|
static TypeConverter<List<dynamic>, String?> $converterpackProgress =
|
||||||
const JsonListConverter();
|
const JsonListConverter();
|
||||||
static TypeConverter<List<DateTime>?, String> $converterstudyDates =
|
static TypeConverter<List<DateTime>?, String> $converterstudyDates =
|
||||||
const DateTimeListConverter();
|
const DateTimeListConverter();
|
||||||
static TypeConverter<List<dynamic>, String> $converterachievements =
|
static TypeConverter<List<dynamic>, String?> $converterachievements =
|
||||||
const JsonListConverter();
|
const JsonListConverter();
|
||||||
static TypeConverter<Map<String, dynamic>?, String?>
|
static TypeConverter<Map<String, dynamic>?, String?>
|
||||||
$convertercategoryMinutes = const JsonMapConverter();
|
$convertercategoryMinutes = const JsonMapConverter();
|
||||||
|
|
@ -3641,7 +3641,7 @@ class $CardPacksTable extends CardPacks
|
||||||
return $CardPacksTable(attachedDatabase, alias);
|
return $CardPacksTable(attachedDatabase, alias);
|
||||||
}
|
}
|
||||||
|
|
||||||
static TypeConverter<List<String>, String> $convertercardsOrder =
|
static TypeConverter<List<String>, String?> $convertercardsOrder =
|
||||||
const StringListConverter();
|
const StringListConverter();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -6734,7 +6734,7 @@ class $SubscriptionPlansTable extends SubscriptionPlans
|
||||||
|
|
||||||
static TypeConverter<Map<String, dynamic>?, String?> $converterui =
|
static TypeConverter<Map<String, dynamic>?, String?> $converterui =
|
||||||
const JsonMapConverter();
|
const JsonMapConverter();
|
||||||
static TypeConverter<List<dynamic>, String> $converterfeatures =
|
static TypeConverter<List<dynamic>, String?> $converterfeatures =
|
||||||
const JsonListConverter();
|
const JsonListConverter();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -7314,7 +7314,7 @@ class $UserSubscriptionsTable extends UserSubscriptions
|
||||||
return $UserSubscriptionsTable(attachedDatabase, alias);
|
return $UserSubscriptionsTable(attachedDatabase, alias);
|
||||||
}
|
}
|
||||||
|
|
||||||
static TypeConverter<List<dynamic>, String> $converterfeatures =
|
static TypeConverter<List<dynamic>, String?> $converterfeatures =
|
||||||
const JsonListConverter();
|
const JsonListConverter();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -7944,9 +7944,9 @@ class $PaymentsTable extends Payments with TableInfo<$PaymentsTable, Payment> {
|
||||||
return $PaymentsTable(attachedDatabase, alias);
|
return $PaymentsTable(attachedDatabase, alias);
|
||||||
}
|
}
|
||||||
|
|
||||||
static TypeConverter<List<dynamic>, String> $converterproducts =
|
static TypeConverter<List<dynamic>, String?> $converterproducts =
|
||||||
const JsonListConverter();
|
const JsonListConverter();
|
||||||
static TypeConverter<List<String>, String> $converterpacks =
|
static TypeConverter<List<String>, String?> $converterpacks =
|
||||||
const StringListConverter();
|
const StringListConverter();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -11232,9 +11232,9 @@ class $UserTasksTable extends UserTasks
|
||||||
return $UserTasksTable(attachedDatabase, alias);
|
return $UserTasksTable(attachedDatabase, alias);
|
||||||
}
|
}
|
||||||
|
|
||||||
static TypeConverter<List<dynamic>, String> $converterrewards =
|
static TypeConverter<List<dynamic>, String?> $converterrewards =
|
||||||
const JsonListConverter();
|
const JsonListConverter();
|
||||||
static TypeConverter<List<String>, String> $convertertags =
|
static TypeConverter<List<String>, String?> $convertertags =
|
||||||
const StringListConverter();
|
const StringListConverter();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -12949,9 +12949,9 @@ class $PromoCodesCampaignsTable extends PromoCodesCampaigns
|
||||||
return $PromoCodesCampaignsTable(attachedDatabase, alias);
|
return $PromoCodesCampaignsTable(attachedDatabase, alias);
|
||||||
}
|
}
|
||||||
|
|
||||||
static TypeConverter<List<dynamic>, String> $converterproducts =
|
static TypeConverter<List<dynamic>, String?> $converterproducts =
|
||||||
const JsonListConverter();
|
const JsonListConverter();
|
||||||
static TypeConverter<List<String>, String> $convertertags =
|
static TypeConverter<List<String>, String?> $convertertags =
|
||||||
const StringListConverter();
|
const StringListConverter();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -14131,7 +14131,7 @@ class $DiscountCampaignsTable extends DiscountCampaigns
|
||||||
return $DiscountCampaignsTable(attachedDatabase, alias);
|
return $DiscountCampaignsTable(attachedDatabase, alias);
|
||||||
}
|
}
|
||||||
|
|
||||||
static TypeConverter<List<String>, String> $convertertags =
|
static TypeConverter<List<String>, String?> $convertertags =
|
||||||
const StringListConverter();
|
const StringListConverter();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -14665,7 +14665,7 @@ class $DiscountsTable extends Discounts
|
||||||
return $DiscountsTable(attachedDatabase, alias);
|
return $DiscountsTable(attachedDatabase, alias);
|
||||||
}
|
}
|
||||||
|
|
||||||
static TypeConverter<List<dynamic>, String> $converterproducts =
|
static TypeConverter<List<dynamic>, String?> $converterproducts =
|
||||||
const JsonListConverter();
|
const JsonListConverter();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -19,6 +19,7 @@ class Users extends Table {
|
||||||
|
|
||||||
// Purchases (JSON array)
|
// Purchases (JSON array)
|
||||||
TextColumn get purchases => text()
|
TextColumn get purchases => text()
|
||||||
|
.nullable()
|
||||||
.withDefault(const Constant('[]'))
|
.withDefault(const Constant('[]'))
|
||||||
.map(const StringListConverter())();
|
.map(const StringListConverter())();
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -131,7 +131,6 @@ class UserManager {
|
||||||
externalUserId: externalId,
|
externalUserId: externalId,
|
||||||
name: drift.Value(name),
|
name: drift.Value(name),
|
||||||
email: drift.Value(email),
|
email: drift.Value(email),
|
||||||
// Explicitly set fields with default values to ensure they're returned by insertReturning
|
|
||||||
admin: drift.Value(false),
|
admin: drift.Value(false),
|
||||||
purchases: drift.Value([]),
|
purchases: drift.Value([]),
|
||||||
createdAt: drift.Value(PgDateTime(now)),
|
createdAt: drift.Value(PgDateTime(now)),
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue