Frontend first draft

This commit is contained in:
Arseni
2025-11-13 15:06:15 +03:00
parent e47f343afb
commit ddb54ddfdc
504 changed files with 25498 additions and 1 deletions

View File

@@ -0,0 +1,13 @@
import 'package:pshared/models/permissions/descriptions/policy.dart';
import 'package:pshared/models/permissions/descriptions/role.dart';
class PermissionsDescription {
final List<RoleDescription> roles;
final List<PolicyDescription> policies;
const PermissionsDescription({
required this.roles,
required this.policies,
});
}

View File

@@ -0,0 +1,22 @@
import 'package:pshared/models/resources.dart';
import 'package:pshared/models/storable.dart';
class PolicyDescription implements Storable {
final Storable storable;
final List<ResourceType>? resourceTypes;
final String? organizationRef;
@override
String get id => storable.id;
@override
DateTime get createdAt => storable.createdAt;
@override
DateTime get updatedAt => storable.updatedAt;
const PolicyDescription({
required this.storable,
required this.resourceTypes,
required this.organizationRef,
});
}

View File

@@ -0,0 +1,27 @@
import 'package:pshared/models/storable.dart';
class RoleDescription implements Storable {
final Storable storable;
@override
String get id => storable.id;
@override
DateTime get createdAt => storable.createdAt;
@override
DateTime get updatedAt => storable.updatedAt;
final String organizationRef;
const RoleDescription({
required this.storable,
required this.organizationRef,
});
factory RoleDescription.build({
required String organizationRef,
}) => RoleDescription(
storable: newStorable(),
organizationRef: organizationRef
);
}