File tree Expand file tree Collapse file tree 4 files changed +40
-4
lines changed Expand file tree Collapse file tree 4 files changed +40
-4
lines changed Original file line number Diff line number Diff line change 1
1
module default {
2
2
global currentUserId: uuid ;
3
+ alias currentUser := < User> (global currentUserId);
3
4
4
5
scalar type ReportPeriod extending enum < Monthly, Quarterly> ;
5
6
Original file line number Diff line number Diff line change @@ -23,11 +23,11 @@ module File {
23
23
public: bool ;
24
24
25
25
required createdBy: default :: User {
26
- default := < default:: User > ( global default :: currentUserId) ;
26
+ default := default :: currentUser ;
27
27
};
28
28
required modifiedBy: default :: User {
29
- default := < default:: User > ( global default :: currentUserId) ;
30
- rewrite update using (< default :: User > ( global default :: currentUserId) );
29
+ default := default :: currentUser ;
30
+ rewrite update using (default :: currentUser );
31
31
# TODO trigger change up the tree
32
32
# TODO trigger re-eval on node delete?
33
33
};
Original file line number Diff line number Diff line change
1
+ CREATE MIGRATION m1vzgo7d3slqdwhpmcigvmaxnh3cz7nhympvu7mb5g3beipzfve5tq
2
+ ONTO m1zpp5l5wqgcm7hmcunnzswx6oivv7eh5gtwq5ysfaxlk5vhkfjieq
3
+ {
4
+ CREATE ALIAS default :: currentUser := (
5
+ < default:: User> GLOBAL default :: currentUserId
6
+ );
7
+ ALTER TYPE File:: Node {
8
+ ALTER LINK createdBy {
9
+ SET default := (default :: currentUser);
10
+ };
11
+ };
12
+ ALTER TYPE File:: Node {
13
+ ALTER LINK modifiedBy {
14
+ SET default := (default :: currentUser);
15
+ };
16
+ };
17
+ ALTER TYPE Mixin:: Owned {
18
+ ALTER LINK owner {
19
+ SET default := (default :: currentUser);
20
+ };
21
+ };
22
+ ALTER TYPE File:: Node {
23
+ ALTER LINK modifiedBy {
24
+ DROP REWRITE
25
+ UPDATE ;
26
+ };
27
+ };
28
+ ALTER TYPE File:: Node {
29
+ ALTER LINK modifiedBy {
30
+ CREATE REWRITE
31
+ UPDATE
32
+ USING (default :: currentUser);
33
+ };
34
+ };
35
+ };
Original file line number Diff line number Diff line change 1
1
module Mixin {
2
2
abstract type Owned {
3
3
link owner: default :: User {
4
- default := < default:: User > ( global default :: currentUserId) ;
4
+ default := default :: currentUser ;
5
5
};
6
6
property isOwner := .owner = < default:: User> (global default :: currentUserId);
7
7
}
You can’t perform that action at this time.
0 commit comments