+signup +login
Some checks failed
ci/woodpecker/push/bff Pipeline was successful
ci/woodpecker/push/db Pipeline was successful
ci/woodpecker/push/billing_fees Pipeline was successful
ci/woodpecker/push/chain_gateway Pipeline was successful
ci/woodpecker/push/fx_ingestor Pipeline was successful
ci/woodpecker/push/frontend Pipeline was successful
ci/woodpecker/push/fx_oracle Pipeline was successful
ci/woodpecker/push/nats Pipeline was successful
ci/woodpecker/push/ledger Pipeline was successful
ci/woodpecker/push/notification Pipeline was successful
ci/woodpecker/push/payments_orchestrator Pipeline was successful
ci/woodpecker/push/bump_version Pipeline failed

This commit is contained in:
Stephan D
2025-11-17 20:16:45 +01:00
parent 1ab7f2e7d3
commit c6a56071b5
89 changed files with 1308 additions and 3497 deletions

View File

@@ -1,6 +1,7 @@
import 'package:json_annotation/json_annotation.dart';
import 'package:pshared/data/dto/account/base.dart';
import 'package:pshared/data/dto/date_time.dart';
part 'account.g.dart';
@@ -8,14 +9,17 @@ part 'account.g.dart';
@JsonSerializable()
class AccountDTO extends AccountBaseDTO {
final String login;
final String locale;
const AccountDTO({
required super.id,
required super.createdAt,
required super.updatedAt,
required super.name,
required super.lastName,
required super.description,
required super.avatarUrl,
required super.locale,
required this.locale,
required this.login,
});

View File

@@ -1,6 +1,7 @@
import 'package:json_annotation/json_annotation.dart';
import 'package:pshared/data/dto/storable.dart';
import 'package:pshared/data/dto/date_time.dart';
part 'base.g.dart';
@@ -8,7 +9,8 @@ part 'base.g.dart';
@JsonSerializable()
class AccountBaseDTO extends StorableDTO {
final String name;
final String locale;
final String lastName;
final String? description;
final String? avatarUrl;
const AccountBaseDTO({
@@ -16,8 +18,9 @@ class AccountBaseDTO extends StorableDTO {
required super.createdAt,
required super.updatedAt,
required this.name,
required this.description,
required this.avatarUrl,
required this.locale,
required this.lastName,
});
factory AccountBaseDTO.fromJson(Map<String, dynamic> json) => _$AccountBaseDTOFromJson(json);

View File

@@ -0,0 +1,12 @@
import 'package:json_annotation/json_annotation.dart';
class UtcIso8601Converter implements JsonConverter<DateTime, String> {
const UtcIso8601Converter();
@override
DateTime fromJson(String json) => DateTime.parse(json).toUtc();
@override
String toJson(DateTime value) => value.toUtc().toIso8601String();
}

View File

@@ -0,0 +1,18 @@
import 'package:json_annotation/json_annotation.dart';
part 'describable.g.dart';
@JsonSerializable()
class DescribableDTO {
final String name;
final String? description;
const DescribableDTO({
required this.name,
this.description,
});
factory DescribableDTO.fromJson(Map<String, dynamic> json) => _$DescribableDTOFromJson(json);
Map<String, dynamic> toJson() => _$DescribableDTOToJson(this);
}

View File

@@ -1,18 +1,28 @@
import 'package:json_annotation/json_annotation.dart';
import 'package:pshared/data/dto/storable.dart';
import 'package:pshared/data/dto/date_time.dart';
import 'package:pshared/data/dto/permissions/bound.dart';
part 'organization.g.dart';
@JsonSerializable()
class OrganizationDTO extends StorableDTO {
class OrganizationDTO extends PermissionBoundDTO {
final String name;
final String? description;
final String timeZone;
final String? logoUrl;
final String tenantRef;
const OrganizationDTO({
required super.id,
required super.createdAt,
required super.updatedAt,
required super.permissionRef,
required super.organizationRef,
required this.name,
required this.tenantRef,
this.description,
required this.timeZone,
this.logoUrl,
});

View File

@@ -0,0 +1,23 @@
import 'package:json_annotation/json_annotation.dart';
import 'package:pshared/data/dto/storable.dart';
import 'package:pshared/data/dto/date_time.dart';
part 'bound.g.dart';
@JsonSerializable()
class OrganizationBoundDTO extends StorableDTO {
final String organizationRef;
const OrganizationBoundDTO({
required super.id,
required super.createdAt,
required super.updatedAt,
required this.organizationRef,
});
factory OrganizationBoundDTO.fromJson(Map<String, dynamic> json) => _$OrganizationBoundDTOFromJson(json);
@override
Map<String, dynamic> toJson() => _$OrganizationBoundDTOToJson(this);
}

View File

@@ -1,13 +1,17 @@
import 'package:json_annotation/json_annotation.dart';
import 'package:pshared/data/dto/describable.dart';
part 'description.g.dart';
@JsonSerializable()
class OrganizationDescriptionDTO {
final DescribableDTO description;
final String? logoUrl;
const OrganizationDescriptionDTO({
required this.description,
this.logoUrl,
});

View File

@@ -0,0 +1,26 @@
import 'package:json_annotation/json_annotation.dart';
import 'package:pshared/data/dto/date_time.dart';
import 'package:pshared/data/dto/storable.dart';
part 'bound.g.dart';
@JsonSerializable()
class PermissionBoundDTO extends StorableDTO {
final String permissionRef;
final String organizationRef;
const PermissionBoundDTO({
required super.id,
required super.createdAt,
required super.updatedAt,
required this.permissionRef,
required this.organizationRef,
});
factory PermissionBoundDTO.fromJson(Map<String, dynamic> json) => _$PermissionBoundDTOFromJson(json);
@override
Map<String, dynamic> toJson() => _$PermissionBoundDTOToJson(this);
}

View File

@@ -1,12 +1,14 @@
import 'package:json_annotation/json_annotation.dart';
import 'package:pshared/data/dto/storable.dart';
import 'package:pshared/data/dto/storable/describable.dart';
import 'package:pshared/data/dto/date_time.dart';
import 'package:pshared/models/resources.dart';
part 'policy.g.dart';
@JsonSerializable()
class PolicyDescriptionDTO extends StorableDTO {
class PolicyDescriptionDTO extends StorableDescribabaleDTO {
final List<ResourceType>? resourceTypes;
final String? organizationRef;
@@ -14,6 +16,8 @@ class PolicyDescriptionDTO extends StorableDTO {
required super.id,
required super.createdAt,
required super.updatedAt,
required super.name,
required super.description,
required this.resourceTypes,
required this.organizationRef,
});

View File

@@ -1,17 +1,21 @@
import 'package:json_annotation/json_annotation.dart';
import 'package:pshared/data/dto/storable.dart';
import 'package:pshared/data/dto/date_time.dart';
import 'package:pshared/data/dto/storable/describable.dart';
part 'role.g.dart';
@JsonSerializable()
class RoleDescriptionDTO extends StorableDTO {
class RoleDescriptionDTO extends StorableDescribabaleDTO {
final String organizationRef;
const RoleDescriptionDTO({
required super.id,
required super.createdAt,
required super.updatedAt,
required super.name,
required super.description,
required this.organizationRef,
});

View File

@@ -0,0 +1,16 @@
import 'package:json_annotation/json_annotation.dart';
part 'reference.g.dart';
@JsonSerializable()
class ReferenceDTO {
final String ref;
const ReferenceDTO({
required this.ref,
});
factory ReferenceDTO.fromJson(Map<String, dynamic> json) => _$ReferenceDTOFromJson(json);
Map<String, dynamic> toJson() => _$ReferenceDTOToJson(this);
}

View File

@@ -1,12 +1,18 @@
import 'package:json_annotation/json_annotation.dart';
import 'package:pshared/data/dto/date_time.dart';
part 'storable.g.dart';
@JsonSerializable()
class StorableDTO {
final String id;
@UtcIso8601Converter()
final DateTime createdAt;
@UtcIso8601Converter()
final DateTime updatedAt;
const StorableDTO({

View File

@@ -0,0 +1,26 @@
import 'package:json_annotation/json_annotation.dart';
import 'package:pshared/data/dto/date_time.dart';
import 'package:pshared/data/dto/storable.dart';
part 'describable.g.dart';
@JsonSerializable()
class StorableDescribabaleDTO extends StorableDTO {
final String name;
final String? description;
const StorableDescribabaleDTO({
required super.id,
required super.createdAt,
required super.updatedAt,
required this.name,
this.description,
});
factory StorableDescribabaleDTO.fromJson(Map<String, dynamic> json) => _$StorableDescribabaleDTOFromJson(json);
@override
Map<String, dynamic> toJson() => _$StorableDescribabaleDTOToJson(this);
}