@beinformed/ui 1.65.2 → 1.65.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +26 -0
- package/esm/hooks/useList.js +4 -4
- package/esm/hooks/useList.js.flow +5 -5
- package/esm/hooks/useList.js.map +1 -1
- package/esm/models/concepts/ConceptIndexModel.js +3 -2
- package/esm/models/concepts/ConceptIndexModel.js.flow +5 -4
- package/esm/models/concepts/ConceptIndexModel.js.map +1 -1
- package/esm/models/content/ContentIndexModel.js +7 -1
- package/esm/models/content/ContentIndexModel.js.flow +8 -3
- package/esm/models/content/ContentIndexModel.js.map +1 -1
- package/esm/models/content/ContentModel.js +3 -2
- package/esm/models/content/ContentModel.js.flow +4 -3
- package/esm/models/content/ContentModel.js.map +1 -1
- package/esm/models/content/ContentTOCModel.js +6 -2
- package/esm/models/content/ContentTOCModel.js.flow +6 -2
- package/esm/models/content/ContentTOCModel.js.map +1 -1
- package/esm/models/filters/AssignmentFilterModel.js +54 -26
- package/esm/models/filters/AssignmentFilterModel.js.flow +68 -37
- package/esm/models/filters/AssignmentFilterModel.js.map +1 -1
- package/esm/models/filters/BaseFilterModel.js +0 -110
- package/esm/models/filters/BaseFilterModel.js.flow +2 -133
- package/esm/models/filters/BaseFilterModel.js.map +1 -1
- package/esm/models/filters/ConceptIndexFilterModel.js +2 -2
- package/esm/models/filters/ConceptIndexFilterModel.js.flow +2 -2
- package/esm/models/filters/ConceptIndexFilterModel.js.map +1 -1
- package/esm/models/filters/FilterModel.js +117 -2
- package/esm/models/filters/FilterModel.js.flow +146 -1
- package/esm/models/filters/FilterModel.js.map +1 -1
- package/esm/models/filters/RangeFilterModel.js +2 -2
- package/esm/models/filters/RangeFilterModel.js.flow +2 -2
- package/esm/models/filters/RangeFilterModel.js.map +1 -1
- package/esm/models/href/Href.js +1 -1
- package/esm/models/href/Href.js.flow +1 -1
- package/esm/models/href/Href.js.map +1 -1
- package/esm/models/list/ListModel.js +5 -1
- package/esm/models/list/ListModel.js.flow +7 -3
- package/esm/models/list/ListModel.js.map +1 -1
- package/esm/models/sorting/SortOptionModel.js +7 -0
- package/esm/models/sorting/SortOptionModel.js.flow +7 -0
- package/esm/models/sorting/SortOptionModel.js.map +1 -1
- package/esm/models/sorting/SortingModel.js +14 -2
- package/esm/models/sorting/SortingModel.js.flow +14 -2
- package/esm/models/sorting/SortingModel.js.map +1 -1
- package/esm/models/types.js.flow +1 -3
- package/esm/models/types.js.map +1 -1
- package/esm/redux/_modularui/ModularUIConnector.js +7 -6
- package/esm/redux/_modularui/ModularUIConnector.js.flow +6 -4
- package/esm/redux/_modularui/ModularUIConnector.js.map +1 -1
- package/lib/hooks/useList.js +4 -4
- package/lib/hooks/useList.js.map +1 -1
- package/lib/models/concepts/ConceptIndexModel.js +3 -2
- package/lib/models/concepts/ConceptIndexModel.js.map +1 -1
- package/lib/models/content/ContentIndexModel.js +6 -1
- package/lib/models/content/ContentIndexModel.js.map +1 -1
- package/lib/models/content/ContentModel.js +3 -2
- package/lib/models/content/ContentModel.js.map +1 -1
- package/lib/models/content/ContentTOCModel.js +6 -2
- package/lib/models/content/ContentTOCModel.js.map +1 -1
- package/lib/models/filters/AssignmentFilterModel.js +54 -26
- package/lib/models/filters/AssignmentFilterModel.js.map +1 -1
- package/lib/models/filters/BaseFilterModel.js +0 -109
- package/lib/models/filters/BaseFilterModel.js.map +1 -1
- package/lib/models/filters/ConceptIndexFilterModel.js +2 -2
- package/lib/models/filters/ConceptIndexFilterModel.js.map +1 -1
- package/lib/models/filters/FilterModel.js +117 -1
- package/lib/models/filters/FilterModel.js.map +1 -1
- package/lib/models/filters/RangeFilterModel.js +2 -2
- package/lib/models/filters/RangeFilterModel.js.map +1 -1
- package/lib/models/href/Href.js +1 -1
- package/lib/models/href/Href.js.map +1 -1
- package/lib/models/list/ListModel.js +5 -1
- package/lib/models/list/ListModel.js.map +1 -1
- package/lib/models/sorting/SortOptionModel.js +7 -0
- package/lib/models/sorting/SortOptionModel.js.map +1 -1
- package/lib/models/sorting/SortingModel.js +14 -2
- package/lib/models/sorting/SortingModel.js.map +1 -1
- package/lib/models/types.js.map +1 -1
- package/lib/redux/_modularui/ModularUIConnector.js +7 -6
- package/lib/redux/_modularui/ModularUIConnector.js.map +1 -1
- package/package.json +6 -6
- package/src/hooks/useList.js +5 -5
- package/src/models/concepts/ConceptIndexModel.js +5 -4
- package/src/models/content/ContentIndexModel.js +8 -3
- package/src/models/content/ContentModel.js +4 -3
- package/src/models/content/ContentTOCModel.js +6 -2
- package/src/models/filters/AssignmentFilterModel.js +68 -37
- package/src/models/filters/BaseFilterModel.js +2 -133
- package/src/models/filters/ConceptIndexFilterModel.js +2 -2
- package/src/models/filters/FilterModel.js +146 -1
- package/src/models/filters/RangeFilterModel.js +2 -2
- package/src/models/href/Href.js +1 -1
- package/src/models/list/ListModel.js +7 -3
- package/src/models/sorting/SortOptionModel.js +7 -0
- package/src/models/sorting/SortingModel.js +14 -2
- package/src/models/types.js +1 -3
- package/src/redux/_modularui/ModularUIConnector.js +6 -4
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
|
|
2
2
|
import BaseFilterModel from "../filters/BaseFilterModel";
|
|
3
3
|
import { IllegalStateException } from "../../exceptions";
|
|
4
|
+
import createAttribute from "../attributes/_createAttribute";
|
|
4
5
|
/**
|
|
5
6
|
* Assignment filter consists of two filters: assignment type and user filter
|
|
6
7
|
*/
|
|
@@ -23,25 +24,12 @@ export default class AssignmentFilterModel extends BaseFilterModel {
|
|
|
23
24
|
return this.data.name;
|
|
24
25
|
}
|
|
25
26
|
|
|
26
|
-
/**
|
|
27
|
-
* Getting key of the list these filters apply to
|
|
28
|
-
*/
|
|
29
|
-
get listkey() {
|
|
30
|
-
return this._listKey;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
/**
|
|
34
|
-
* Set key of list this filter belongs to
|
|
35
|
-
*/
|
|
36
|
-
set listkey(key) {
|
|
37
|
-
this._listKey = key;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
27
|
/**
|
|
41
28
|
*/
|
|
42
29
|
get contextid() {
|
|
43
30
|
return this.getContribution("contextid", "");
|
|
44
31
|
}
|
|
32
|
+
|
|
45
33
|
/**
|
|
46
34
|
* Creates an assignmenttype model when assignmenttype json is present
|
|
47
35
|
*/
|
|
@@ -58,10 +46,11 @@ export default class AssignmentFilterModel extends BaseFilterModel {
|
|
|
58
46
|
}
|
|
59
47
|
const assignmentTypeContributions = {
|
|
60
48
|
...this.contributions[key],
|
|
49
|
+
type: "choice",
|
|
61
50
|
enumerated: true,
|
|
62
51
|
optionMode: assignmentTypeData._links ? "lookup" : "static"
|
|
63
52
|
};
|
|
64
|
-
return
|
|
53
|
+
return createAttribute(assignmentTypeData.name || assignmentTypeData.param, assignmentTypeData, assignmentTypeContributions, this.modelOptions);
|
|
65
54
|
}
|
|
66
55
|
|
|
67
56
|
/**
|
|
@@ -77,9 +66,11 @@ export default class AssignmentFilterModel extends BaseFilterModel {
|
|
|
77
66
|
}
|
|
78
67
|
const userContributions = {
|
|
79
68
|
...this.contributions[key],
|
|
69
|
+
type: "choice",
|
|
70
|
+
enumerated: true,
|
|
80
71
|
optionMode: userData._links ? "lookup" : "static"
|
|
81
72
|
};
|
|
82
|
-
return
|
|
73
|
+
return createAttribute(userData.name || userData.param, userData, userContributions, this.modelOptions);
|
|
83
74
|
}
|
|
84
75
|
|
|
85
76
|
/**
|
|
@@ -100,16 +91,38 @@ export default class AssignmentFilterModel extends BaseFilterModel {
|
|
|
100
91
|
* Getting the parameters of this filter
|
|
101
92
|
*/
|
|
102
93
|
get params() {
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
94
|
+
return [{
|
|
95
|
+
name: this.assignmenttype.name,
|
|
96
|
+
value: this.assignmenttype.value
|
|
97
|
+
}, {
|
|
98
|
+
name: this.user.name,
|
|
99
|
+
value: this.user.value
|
|
100
|
+
}];
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
/**
|
|
104
|
+
*/
|
|
105
|
+
get value() {
|
|
106
|
+
return {
|
|
107
|
+
[this.assignmenttype.name]: this.assignmenttype.value,
|
|
108
|
+
[this.user.name]: this.user.value
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
/**
|
|
113
|
+
*/
|
|
114
|
+
get inputvalue() {
|
|
115
|
+
return {
|
|
116
|
+
[this.assignmenttype.name]: this.assignmenttype.inputvalue,
|
|
117
|
+
[this.user.name]: this.user.inputvalue
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
/**
|
|
122
|
+
* Indicates if the filter has a value.
|
|
123
|
+
*/
|
|
124
|
+
hasValue() {
|
|
125
|
+
return this.assignmenttype.value !== null && this.assignmenttype.value !== "" || this.user.value !== null && this.user.value !== "";
|
|
113
126
|
}
|
|
114
127
|
|
|
115
128
|
/**
|
|
@@ -149,5 +162,20 @@ export default class AssignmentFilterModel extends BaseFilterModel {
|
|
|
149
162
|
get isValid() {
|
|
150
163
|
return this.assignmenttype != null && this.assignmenttype.isValid && this.user != null && this.user.isValid;
|
|
151
164
|
}
|
|
165
|
+
|
|
166
|
+
/**
|
|
167
|
+
*/
|
|
168
|
+
get readonlyvalue() {
|
|
169
|
+
return {
|
|
170
|
+
[this.assignmenttype.name]: this.assignmenttype.readonlyvalue,
|
|
171
|
+
[this.user.name]: this.user.readonlyvalue
|
|
172
|
+
};
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
/**
|
|
176
|
+
*/
|
|
177
|
+
get formdata() {
|
|
178
|
+
return this.value;
|
|
179
|
+
}
|
|
152
180
|
}
|
|
153
181
|
//# sourceMappingURL=AssignmentFilterModel.js.map
|
|
@@ -3,13 +3,14 @@ import BaseFilterModel from "../filters/BaseFilterModel";
|
|
|
3
3
|
|
|
4
4
|
import type { AttributeType, ModelOptions } from "../types";
|
|
5
5
|
import { IllegalStateException } from "../../exceptions";
|
|
6
|
+
import createAttribute from "../attributes/_createAttribute";
|
|
6
7
|
/**
|
|
7
8
|
* Assignment filter consists of two filters: assignment type and user filter
|
|
8
9
|
*/
|
|
9
10
|
export default class AssignmentFilterModel extends BaseFilterModel {
|
|
10
11
|
_listKey: string;
|
|
11
|
-
_assignmenttype:
|
|
12
|
-
_user:
|
|
12
|
+
_assignmenttype: AttributeType;
|
|
13
|
+
_user: AttributeType;
|
|
13
14
|
|
|
14
15
|
/**
|
|
15
16
|
* Construct an assignment filter
|
|
@@ -31,29 +32,16 @@ export default class AssignmentFilterModel extends BaseFilterModel {
|
|
|
31
32
|
return this.data.name;
|
|
32
33
|
}
|
|
33
34
|
|
|
34
|
-
/**
|
|
35
|
-
* Getting key of the list these filters apply to
|
|
36
|
-
*/
|
|
37
|
-
get listkey(): string {
|
|
38
|
-
return this._listKey;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
/**
|
|
42
|
-
* Set key of list this filter belongs to
|
|
43
|
-
*/
|
|
44
|
-
set listkey(key: string) {
|
|
45
|
-
this._listKey = key;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
35
|
/**
|
|
49
36
|
*/
|
|
50
37
|
get contextid(): string {
|
|
51
38
|
return this.getContribution("contextid", "");
|
|
52
39
|
}
|
|
40
|
+
|
|
53
41
|
/**
|
|
54
42
|
* Creates an assignmenttype model when assignmenttype json is present
|
|
55
43
|
*/
|
|
56
|
-
createAssignmentTypeModel():
|
|
44
|
+
createAssignmentTypeModel(): AttributeType {
|
|
57
45
|
const key = `${this.contextid}ASSIGNMENTTYPE`;
|
|
58
46
|
const assignmentTypeData = this.data[key];
|
|
59
47
|
|
|
@@ -71,22 +59,23 @@ export default class AssignmentFilterModel extends BaseFilterModel {
|
|
|
71
59
|
|
|
72
60
|
const assignmentTypeContributions = {
|
|
73
61
|
...this.contributions[key],
|
|
62
|
+
type: "choice",
|
|
74
63
|
enumerated: true,
|
|
75
64
|
optionMode: assignmentTypeData._links ? "lookup" : "static",
|
|
76
65
|
};
|
|
77
66
|
|
|
78
|
-
return
|
|
79
|
-
"choice",
|
|
67
|
+
return createAttribute(
|
|
80
68
|
assignmentTypeData.name || assignmentTypeData.param,
|
|
81
69
|
assignmentTypeData,
|
|
82
70
|
assignmentTypeContributions,
|
|
71
|
+
this.modelOptions,
|
|
83
72
|
);
|
|
84
73
|
}
|
|
85
74
|
|
|
86
75
|
/**
|
|
87
76
|
* Creates an assignmenttype model when userkey json is present
|
|
88
77
|
*/
|
|
89
|
-
createUserModel():
|
|
78
|
+
createUserModel(): AttributeType {
|
|
90
79
|
const key = `${this.contextid}USERKEY`;
|
|
91
80
|
const userData = this.data[key];
|
|
92
81
|
|
|
@@ -98,28 +87,30 @@ export default class AssignmentFilterModel extends BaseFilterModel {
|
|
|
98
87
|
|
|
99
88
|
const userContributions = {
|
|
100
89
|
...this.contributions[key],
|
|
90
|
+
type: "choice",
|
|
91
|
+
enumerated: true,
|
|
101
92
|
optionMode: userData._links ? "lookup" : "static",
|
|
102
93
|
};
|
|
103
94
|
|
|
104
|
-
return
|
|
105
|
-
"choice",
|
|
95
|
+
return createAttribute(
|
|
106
96
|
userData.name || userData.param,
|
|
107
97
|
userData,
|
|
108
98
|
userContributions,
|
|
99
|
+
this.modelOptions,
|
|
109
100
|
);
|
|
110
101
|
}
|
|
111
102
|
|
|
112
103
|
/**
|
|
113
104
|
* The assignment filter consists of two part. This method return the assignment type attribute
|
|
114
105
|
*/
|
|
115
|
-
get assignmenttype():
|
|
106
|
+
get assignmenttype(): AttributeType {
|
|
116
107
|
return this._assignmenttype;
|
|
117
108
|
}
|
|
118
109
|
|
|
119
110
|
/**
|
|
120
111
|
* The assignment filter consists of two part. This method return the user identifier attribute
|
|
121
112
|
*/
|
|
122
|
-
get user():
|
|
113
|
+
get user(): AttributeType {
|
|
123
114
|
return this._user;
|
|
124
115
|
}
|
|
125
116
|
|
|
@@ -127,20 +118,45 @@ export default class AssignmentFilterModel extends BaseFilterModel {
|
|
|
127
118
|
* Getting the parameters of this filter
|
|
128
119
|
*/
|
|
129
120
|
get params(): Array<{ name: string, value: ?string }> {
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
}
|
|
121
|
+
return [
|
|
122
|
+
{
|
|
123
|
+
name: this.assignmenttype.name,
|
|
124
|
+
value: this.assignmenttype.value,
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
name: this.user.name,
|
|
128
|
+
value: this.user.value,
|
|
129
|
+
},
|
|
130
|
+
];
|
|
131
|
+
}
|
|
142
132
|
|
|
143
|
-
|
|
133
|
+
/**
|
|
134
|
+
*/
|
|
135
|
+
get value(): { [string]: any } {
|
|
136
|
+
return {
|
|
137
|
+
[this.assignmenttype.name]: this.assignmenttype.value,
|
|
138
|
+
[this.user.name]: this.user.value,
|
|
139
|
+
};
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
*/
|
|
144
|
+
get inputvalue(): { [string]: any } {
|
|
145
|
+
return {
|
|
146
|
+
[this.assignmenttype.name]: this.assignmenttype.inputvalue,
|
|
147
|
+
[this.user.name]: this.user.inputvalue,
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
/**
|
|
152
|
+
* Indicates if the filter has a value.
|
|
153
|
+
*/
|
|
154
|
+
hasValue(): boolean {
|
|
155
|
+
return (
|
|
156
|
+
(this.assignmenttype.value !== null &&
|
|
157
|
+
this.assignmenttype.value !== "") ||
|
|
158
|
+
(this.user.value !== null && this.user.value !== "")
|
|
159
|
+
);
|
|
144
160
|
}
|
|
145
161
|
|
|
146
162
|
/**
|
|
@@ -192,4 +208,19 @@ export default class AssignmentFilterModel extends BaseFilterModel {
|
|
|
192
208
|
this.user.isValid
|
|
193
209
|
);
|
|
194
210
|
}
|
|
211
|
+
|
|
212
|
+
/**
|
|
213
|
+
*/
|
|
214
|
+
get readonlyvalue(): { [string]: string } {
|
|
215
|
+
return {
|
|
216
|
+
[this.assignmenttype.name]: this.assignmenttype.readonlyvalue,
|
|
217
|
+
[this.user.name]: this.user.readonlyvalue,
|
|
218
|
+
};
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
/**
|
|
222
|
+
*/
|
|
223
|
+
get formdata(): { [string]: any } | null {
|
|
224
|
+
return this.value;
|
|
225
|
+
}
|
|
195
226
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AssignmentFilterModel.js","names":["BaseFilterModel","IllegalStateException","AssignmentFilterModel","constructor","data","contributions","modelOptions","_defineProperty","_assignmenttype","createAssignmentTypeModel","_user","createUserModel","key","name","listkey","_listKey","contextid","getContribution","assignmentTypeData","dynamicschema","assignmentTypeContributions","enumerated","optionMode","_links","createAttribute","param","userData","userContributions","assignmenttype","user","params","value","reset","update","attribute","isActive","initvalue","isValid"],"sources":["../../../src/models/filters/AssignmentFilterModel.js"],"sourcesContent":["// @flow\nimport BaseFilterModel from \"../filters/BaseFilterModel\";\n\nimport type { AttributeType, ModelOptions } from \"../types\";\nimport { IllegalStateException } from \"../../exceptions\";\n/**\n * Assignment filter consists of two filters: assignment type and user filter\n */\nexport default class AssignmentFilterModel extends BaseFilterModel {\n _listKey: string;\n _assignmenttype: ?AttributeType;\n _user: ?AttributeType;\n\n /**\n * Construct an assignment filter\n */\n constructor(\n data: Object,\n contributions: Object,\n modelOptions?: ModelOptions,\n ) {\n super(data, contributions, modelOptions);\n\n this._assignmenttype = this.createAssignmentTypeModel();\n this._user = this.createUserModel();\n }\n\n /**\n */\n get key(): ?string {\n return this.data.name;\n }\n\n /**\n * Getting key of the list these filters apply to\n */\n get listkey(): string {\n return this._listKey;\n }\n\n /**\n * Set key of list this filter belongs to\n */\n set listkey(key: string) {\n this._listKey = key;\n }\n\n /**\n */\n get contextid(): string {\n return this.getContribution(\"contextid\", \"\");\n }\n /**\n * Creates an assignmenttype model when assignmenttype json is present\n */\n createAssignmentTypeModel(): ?AttributeType {\n const key = `${this.contextid}ASSIGNMENTTYPE`;\n const assignmentTypeData = this.data[key];\n\n if (typeof assignmentTypeData === \"undefined\") {\n throw new IllegalStateException(\n `Missing assignment type data for ${key}`,\n );\n }\n\n if (this.data.dynamicschema && this.data.dynamicschema[key]) {\n assignmentTypeData.dynamicschema = {\n [key]: this.data.dynamicschema[key],\n };\n }\n\n const assignmentTypeContributions = {\n ...this.contributions[key],\n enumerated: true,\n optionMode: assignmentTypeData._links ? \"lookup\" : \"static\",\n };\n\n return this.createAttribute(\n \"choice\",\n assignmentTypeData.name || assignmentTypeData.param,\n assignmentTypeData,\n assignmentTypeContributions,\n );\n }\n\n /**\n * Creates an assignmenttype model when userkey json is present\n */\n createUserModel(): ?AttributeType {\n const key = `${this.contextid}USERKEY`;\n const userData = this.data[key];\n\n if (this.data.dynamicschema && this.data.dynamicschema[key]) {\n userData.dynamicschema = {\n [key]: this.data.dynamicschema[key],\n };\n }\n\n const userContributions = {\n ...this.contributions[key],\n optionMode: userData._links ? \"lookup\" : \"static\",\n };\n\n return this.createAttribute(\n \"choice\",\n userData.name || userData.param,\n userData,\n userContributions,\n );\n }\n\n /**\n * The assignment filter consists of two part. This method return the assignment type attribute\n */\n get assignmenttype(): ?AttributeType {\n return this._assignmenttype;\n }\n\n /**\n * The assignment filter consists of two part. This method return the user identifier attribute\n */\n get user(): ?AttributeType {\n return this._user;\n }\n\n /**\n * Getting the parameters of this filter\n */\n get params(): Array<{ name: string, value: ?string }> {\n if (this.assignmenttype && this.user) {\n return [\n {\n name: this.assignmenttype.name,\n value: this.assignmenttype.value,\n },\n {\n name: this.user.name,\n value: this.user.value,\n },\n ];\n }\n\n return [];\n }\n\n /**\n * Reset the values within the filter\n */\n reset(): AssignmentFilterModel {\n if (this.assignmenttype) {\n this.assignmenttype.reset();\n }\n if (this.user) {\n this.user.reset();\n }\n\n return this;\n }\n\n /**\n * Update this filter\n */\n update(attribute: AttributeType, value: string) {\n if (this.user != null && this.user.key === attribute.key) {\n this.user.update(value);\n } else if (\n this.assignmenttype != null &&\n this.assignmenttype.key === attribute.key\n ) {\n this.assignmenttype.update(value);\n }\n }\n\n /**\n * Inidiates if filter is active\n */\n isActive(): boolean {\n return (\n (this.assignmenttype != null && this.assignmenttype.initvalue !== null) ||\n (this.user != null && this.user.initvalue !== null)\n );\n }\n\n /**\n * Inidiates if filter is valid\n */\n get isValid(): boolean {\n return (\n this.assignmenttype != null &&\n this.assignmenttype.isValid &&\n this.user != null &&\n this.user.isValid\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"AssignmentFilterModel.js","names":["BaseFilterModel","IllegalStateException","createAttribute","AssignmentFilterModel","constructor","data","contributions","modelOptions","_defineProperty","_assignmenttype","createAssignmentTypeModel","_user","createUserModel","key","name","contextid","getContribution","assignmentTypeData","dynamicschema","assignmentTypeContributions","type","enumerated","optionMode","_links","param","userData","userContributions","assignmenttype","user","params","value","inputvalue","hasValue","reset","update","attribute","isActive","initvalue","isValid","readonlyvalue","formdata"],"sources":["../../../src/models/filters/AssignmentFilterModel.js"],"sourcesContent":["// @flow\nimport BaseFilterModel from \"../filters/BaseFilterModel\";\n\nimport type { AttributeType, ModelOptions } from \"../types\";\nimport { IllegalStateException } from \"../../exceptions\";\nimport createAttribute from \"../attributes/_createAttribute\";\n/**\n * Assignment filter consists of two filters: assignment type and user filter\n */\nexport default class AssignmentFilterModel extends BaseFilterModel {\n _listKey: string;\n _assignmenttype: AttributeType;\n _user: AttributeType;\n\n /**\n * Construct an assignment filter\n */\n constructor(\n data: Object,\n contributions: Object,\n modelOptions?: ModelOptions,\n ) {\n super(data, contributions, modelOptions);\n\n this._assignmenttype = this.createAssignmentTypeModel();\n this._user = this.createUserModel();\n }\n\n /**\n */\n get key(): ?string {\n return this.data.name;\n }\n\n /**\n */\n get contextid(): string {\n return this.getContribution(\"contextid\", \"\");\n }\n\n /**\n * Creates an assignmenttype model when assignmenttype json is present\n */\n createAssignmentTypeModel(): AttributeType {\n const key = `${this.contextid}ASSIGNMENTTYPE`;\n const assignmentTypeData = this.data[key];\n\n if (typeof assignmentTypeData === \"undefined\") {\n throw new IllegalStateException(\n `Missing assignment type data for ${key}`,\n );\n }\n\n if (this.data.dynamicschema && this.data.dynamicschema[key]) {\n assignmentTypeData.dynamicschema = {\n [key]: this.data.dynamicschema[key],\n };\n }\n\n const assignmentTypeContributions = {\n ...this.contributions[key],\n type: \"choice\",\n enumerated: true,\n optionMode: assignmentTypeData._links ? \"lookup\" : \"static\",\n };\n\n return createAttribute(\n assignmentTypeData.name || assignmentTypeData.param,\n assignmentTypeData,\n assignmentTypeContributions,\n this.modelOptions,\n );\n }\n\n /**\n * Creates an assignmenttype model when userkey json is present\n */\n createUserModel(): AttributeType {\n const key = `${this.contextid}USERKEY`;\n const userData = this.data[key];\n\n if (this.data.dynamicschema && this.data.dynamicschema[key]) {\n userData.dynamicschema = {\n [key]: this.data.dynamicschema[key],\n };\n }\n\n const userContributions = {\n ...this.contributions[key],\n type: \"choice\",\n enumerated: true,\n optionMode: userData._links ? \"lookup\" : \"static\",\n };\n\n return createAttribute(\n userData.name || userData.param,\n userData,\n userContributions,\n this.modelOptions,\n );\n }\n\n /**\n * The assignment filter consists of two part. This method return the assignment type attribute\n */\n get assignmenttype(): AttributeType {\n return this._assignmenttype;\n }\n\n /**\n * The assignment filter consists of two part. This method return the user identifier attribute\n */\n get user(): AttributeType {\n return this._user;\n }\n\n /**\n * Getting the parameters of this filter\n */\n get params(): Array<{ name: string, value: ?string }> {\n return [\n {\n name: this.assignmenttype.name,\n value: this.assignmenttype.value,\n },\n {\n name: this.user.name,\n value: this.user.value,\n },\n ];\n }\n\n /**\n */\n get value(): { [string]: any } {\n return {\n [this.assignmenttype.name]: this.assignmenttype.value,\n [this.user.name]: this.user.value,\n };\n }\n\n /**\n */\n get inputvalue(): { [string]: any } {\n return {\n [this.assignmenttype.name]: this.assignmenttype.inputvalue,\n [this.user.name]: this.user.inputvalue,\n };\n }\n\n /**\n * Indicates if the filter has a value.\n */\n hasValue(): boolean {\n return (\n (this.assignmenttype.value !== null &&\n this.assignmenttype.value !== \"\") ||\n (this.user.value !== null && this.user.value !== \"\")\n );\n }\n\n /**\n * Reset the values within the filter\n */\n reset(): AssignmentFilterModel {\n if (this.assignmenttype) {\n this.assignmenttype.reset();\n }\n if (this.user) {\n this.user.reset();\n }\n\n return this;\n }\n\n /**\n * Update this filter\n */\n update(attribute: AttributeType, value: string) {\n if (this.user != null && this.user.key === attribute.key) {\n this.user.update(value);\n } else if (\n this.assignmenttype != null &&\n this.assignmenttype.key === attribute.key\n ) {\n this.assignmenttype.update(value);\n }\n }\n\n /**\n * Inidiates if filter is active\n */\n isActive(): boolean {\n return (\n (this.assignmenttype != null && this.assignmenttype.initvalue !== null) ||\n (this.user != null && this.user.initvalue !== null)\n );\n }\n\n /**\n * Inidiates if filter is valid\n */\n get isValid(): boolean {\n return (\n this.assignmenttype != null &&\n this.assignmenttype.isValid &&\n this.user != null &&\n this.user.isValid\n );\n }\n\n /**\n */\n get readonlyvalue(): { [string]: string } {\n return {\n [this.assignmenttype.name]: this.assignmenttype.readonlyvalue,\n [this.user.name]: this.user.readonlyvalue,\n };\n }\n\n /**\n */\n get formdata(): { [string]: any } | null {\n return this.value;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
|
|
2
2
|
import BaseModel from "../base/BaseModel";
|
|
3
|
-
import createAttribute from "../attributes/_createAttribute";
|
|
4
3
|
import { PARAMETER_SEPARATOR, PARAMETER_TYPES } from "../../constants/Constants";
|
|
5
|
-
import { IllegalStateException } from "../../exceptions";
|
|
6
|
-
|
|
7
4
|
/**
|
|
8
5
|
* Base class for filters
|
|
9
6
|
*/
|
|
@@ -12,10 +9,8 @@ export default class BaseFilterModel extends BaseModel {
|
|
|
12
9
|
*/
|
|
13
10
|
constructor(data, contributions, modelOptions) {
|
|
14
11
|
super(data, contributions, modelOptions);
|
|
15
|
-
_defineProperty(this, "_attribute", null);
|
|
16
12
|
_defineProperty(this, "_context", void 0);
|
|
17
13
|
_defineProperty(this, "_listKey", void 0);
|
|
18
|
-
this._attribute = this.createAttribute(this.type, this.param, this.data, this.contributions);
|
|
19
14
|
if (this.contributions.listKey) {
|
|
20
15
|
this.listkey = this.contributions.listKey;
|
|
21
16
|
}
|
|
@@ -41,19 +36,6 @@ export default class BaseFilterModel extends BaseModel {
|
|
|
41
36
|
}
|
|
42
37
|
}
|
|
43
38
|
|
|
44
|
-
/**
|
|
45
|
-
* Create attribute through the attribute factory. Create type based on filter key without the filter suffix
|
|
46
|
-
*/
|
|
47
|
-
createAttribute(type, param, data, contributions) {
|
|
48
|
-
if (type === "assignment") {
|
|
49
|
-
return null;
|
|
50
|
-
}
|
|
51
|
-
return createAttribute(param, data, {
|
|
52
|
-
...contributions,
|
|
53
|
-
type: type
|
|
54
|
-
}, this.modelOptions);
|
|
55
|
-
}
|
|
56
|
-
|
|
57
39
|
/**
|
|
58
40
|
* Inidiates if filter is multiplechoice
|
|
59
41
|
*/
|
|
@@ -120,69 +102,6 @@ export default class BaseFilterModel extends BaseModel {
|
|
|
120
102
|
return this.data.param ?? this.data.name;
|
|
121
103
|
}
|
|
122
104
|
|
|
123
|
-
/**
|
|
124
|
-
* Get attribute of filter
|
|
125
|
-
*/
|
|
126
|
-
get attribute() {
|
|
127
|
-
if (!this._attribute) {
|
|
128
|
-
throw new IllegalStateException(`Missing filter attribute on filter model: ${this.label}`);
|
|
129
|
-
}
|
|
130
|
-
return this._attribute;
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
/**
|
|
134
|
-
* Retrieve the parameters with it's value for this filter
|
|
135
|
-
*/
|
|
136
|
-
get params() {
|
|
137
|
-
if (!this.param) {
|
|
138
|
-
return [];
|
|
139
|
-
}
|
|
140
|
-
return [{
|
|
141
|
-
name: this.param,
|
|
142
|
-
value: this.attribute?.value
|
|
143
|
-
}];
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
/**
|
|
147
|
-
* Getting the value of the filter
|
|
148
|
-
*/
|
|
149
|
-
get value() {
|
|
150
|
-
return this.attribute?.value;
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
/**
|
|
154
|
-
* Getting the inputvalue of the filter
|
|
155
|
-
*/
|
|
156
|
-
get inputvalue() {
|
|
157
|
-
return this.attribute?.inputvalue;
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
/**
|
|
161
|
-
* Indicates if the filter has a value.
|
|
162
|
-
*/
|
|
163
|
-
hasValue() {
|
|
164
|
-
return this.value !== null && this.value !== "";
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
/**
|
|
168
|
-
* Reset the value of this filter to undefined
|
|
169
|
-
*/
|
|
170
|
-
reset() {
|
|
171
|
-
if (this.attribute) {
|
|
172
|
-
this.attribute.reset();
|
|
173
|
-
}
|
|
174
|
-
return this;
|
|
175
|
-
}
|
|
176
|
-
|
|
177
|
-
/**
|
|
178
|
-
* Update this filter with input name and value
|
|
179
|
-
*/
|
|
180
|
-
update(attribute, value) {
|
|
181
|
-
if (this.attribute) {
|
|
182
|
-
this.attribute.update(value);
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
|
|
186
105
|
/**
|
|
187
106
|
* Inidicates if filter is a quick search filter
|
|
188
107
|
*/
|
|
@@ -190,40 +109,11 @@ export default class BaseFilterModel extends BaseModel {
|
|
|
190
109
|
return this.contributions.quicksearch === true;
|
|
191
110
|
}
|
|
192
111
|
|
|
193
|
-
/**
|
|
194
|
-
* Inidiates if filter is active
|
|
195
|
-
*/
|
|
196
|
-
isActive() {
|
|
197
|
-
return this.attribute !== null && this.attribute.initvalue !== null;
|
|
198
|
-
}
|
|
199
|
-
|
|
200
|
-
/**
|
|
201
|
-
* Inidiates if filter is valid
|
|
202
|
-
*/
|
|
203
|
-
get isValid() {
|
|
204
|
-
return this.attribute !== null && this.attribute.isValid;
|
|
205
|
-
}
|
|
206
|
-
|
|
207
|
-
/**
|
|
208
|
-
*/
|
|
209
|
-
get readonlyvalue() {
|
|
210
|
-
if (this.attribute) {
|
|
211
|
-
return this.attribute.readonlyvalue;
|
|
212
|
-
}
|
|
213
|
-
return "";
|
|
214
|
-
}
|
|
215
|
-
|
|
216
112
|
/**
|
|
217
113
|
* Get assistant message
|
|
218
114
|
*/
|
|
219
115
|
get assistantMessage() {
|
|
220
116
|
return this.getContribution("assistant");
|
|
221
117
|
}
|
|
222
|
-
|
|
223
|
-
/**
|
|
224
|
-
*/
|
|
225
|
-
get formdata() {
|
|
226
|
-
return this.attribute.formdata ?? null;
|
|
227
|
-
}
|
|
228
118
|
}
|
|
229
119
|
//# sourceMappingURL=BaseFilterModel.js.map
|
|
@@ -1,19 +1,17 @@
|
|
|
1
1
|
// @flow
|
|
2
2
|
import BaseModel from "../base/BaseModel";
|
|
3
|
-
|
|
3
|
+
|
|
4
4
|
import {
|
|
5
5
|
PARAMETER_SEPARATOR,
|
|
6
6
|
PARAMETER_TYPES,
|
|
7
7
|
} from "../../constants/Constants";
|
|
8
8
|
|
|
9
|
-
import type {
|
|
10
|
-
import { IllegalStateException } from "../../exceptions";
|
|
9
|
+
import type { ModelOptions } from "../types";
|
|
11
10
|
|
|
12
11
|
/**
|
|
13
12
|
* Base class for filters
|
|
14
13
|
*/
|
|
15
14
|
export default class BaseFilterModel extends BaseModel {
|
|
16
|
-
_attribute: AttributeType | null = null;
|
|
17
15
|
_context: Object;
|
|
18
16
|
_listKey: string;
|
|
19
17
|
|
|
@@ -26,13 +24,6 @@ export default class BaseFilterModel extends BaseModel {
|
|
|
26
24
|
) {
|
|
27
25
|
super(data, contributions, modelOptions);
|
|
28
26
|
|
|
29
|
-
this._attribute = this.createAttribute(
|
|
30
|
-
this.type,
|
|
31
|
-
this.param,
|
|
32
|
-
this.data,
|
|
33
|
-
this.contributions,
|
|
34
|
-
);
|
|
35
|
-
|
|
36
27
|
if (this.contributions.listKey) {
|
|
37
28
|
this.listkey = this.contributions.listKey;
|
|
38
29
|
}
|
|
@@ -60,30 +51,6 @@ export default class BaseFilterModel extends BaseModel {
|
|
|
60
51
|
}
|
|
61
52
|
}
|
|
62
53
|
|
|
63
|
-
/**
|
|
64
|
-
* Create attribute through the attribute factory. Create type based on filter key without the filter suffix
|
|
65
|
-
*/
|
|
66
|
-
createAttribute(
|
|
67
|
-
type: string,
|
|
68
|
-
param: string,
|
|
69
|
-
data: Object,
|
|
70
|
-
contributions: Object,
|
|
71
|
-
): AttributeType | null {
|
|
72
|
-
if (type === "assignment") {
|
|
73
|
-
return null;
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
return createAttribute(
|
|
77
|
-
param,
|
|
78
|
-
data,
|
|
79
|
-
{
|
|
80
|
-
...contributions,
|
|
81
|
-
type: type,
|
|
82
|
-
},
|
|
83
|
-
this.modelOptions,
|
|
84
|
-
);
|
|
85
|
-
}
|
|
86
|
-
|
|
87
54
|
/**
|
|
88
55
|
* Inidiates if filter is multiplechoice
|
|
89
56
|
*/
|
|
@@ -151,75 +118,6 @@ export default class BaseFilterModel extends BaseModel {
|
|
|
151
118
|
return this.data.param ?? this.data.name;
|
|
152
119
|
}
|
|
153
120
|
|
|
154
|
-
/**
|
|
155
|
-
* Get attribute of filter
|
|
156
|
-
*/
|
|
157
|
-
get attribute(): AttributeType {
|
|
158
|
-
if (!this._attribute) {
|
|
159
|
-
throw new IllegalStateException(
|
|
160
|
-
`Missing filter attribute on filter model: ${this.label}`,
|
|
161
|
-
);
|
|
162
|
-
}
|
|
163
|
-
return this._attribute;
|
|
164
|
-
}
|
|
165
|
-
|
|
166
|
-
/**
|
|
167
|
-
* Retrieve the parameters with it's value for this filter
|
|
168
|
-
*/
|
|
169
|
-
get params(): Array<{ name: string, value: ?string }> {
|
|
170
|
-
if (!this.param) {
|
|
171
|
-
return [];
|
|
172
|
-
}
|
|
173
|
-
|
|
174
|
-
return [
|
|
175
|
-
{
|
|
176
|
-
name: this.param,
|
|
177
|
-
value: this.attribute?.value,
|
|
178
|
-
},
|
|
179
|
-
];
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
/**
|
|
183
|
-
* Getting the value of the filter
|
|
184
|
-
*/
|
|
185
|
-
get value(): string | null {
|
|
186
|
-
return this.attribute?.value;
|
|
187
|
-
}
|
|
188
|
-
|
|
189
|
-
/**
|
|
190
|
-
* Getting the inputvalue of the filter
|
|
191
|
-
*/
|
|
192
|
-
get inputvalue(): string {
|
|
193
|
-
return this.attribute?.inputvalue;
|
|
194
|
-
}
|
|
195
|
-
|
|
196
|
-
/**
|
|
197
|
-
* Indicates if the filter has a value.
|
|
198
|
-
*/
|
|
199
|
-
hasValue(): boolean {
|
|
200
|
-
return this.value !== null && this.value !== "";
|
|
201
|
-
}
|
|
202
|
-
|
|
203
|
-
/**
|
|
204
|
-
* Reset the value of this filter to undefined
|
|
205
|
-
*/
|
|
206
|
-
reset(): FilterType {
|
|
207
|
-
if (this.attribute) {
|
|
208
|
-
this.attribute.reset();
|
|
209
|
-
}
|
|
210
|
-
|
|
211
|
-
return this;
|
|
212
|
-
}
|
|
213
|
-
|
|
214
|
-
/**
|
|
215
|
-
* Update this filter with input name and value
|
|
216
|
-
*/
|
|
217
|
-
update(attribute: AttributeType, value: string) {
|
|
218
|
-
if (this.attribute) {
|
|
219
|
-
this.attribute.update(value);
|
|
220
|
-
}
|
|
221
|
-
}
|
|
222
|
-
|
|
223
121
|
/**
|
|
224
122
|
* Inidicates if filter is a quick search filter
|
|
225
123
|
*/
|
|
@@ -227,39 +125,10 @@ export default class BaseFilterModel extends BaseModel {
|
|
|
227
125
|
return this.contributions.quicksearch === true;
|
|
228
126
|
}
|
|
229
127
|
|
|
230
|
-
/**
|
|
231
|
-
* Inidiates if filter is active
|
|
232
|
-
*/
|
|
233
|
-
isActive(): boolean {
|
|
234
|
-
return this.attribute !== null && this.attribute.initvalue !== null;
|
|
235
|
-
}
|
|
236
|
-
|
|
237
|
-
/**
|
|
238
|
-
* Inidiates if filter is valid
|
|
239
|
-
*/
|
|
240
|
-
get isValid(): boolean {
|
|
241
|
-
return this.attribute !== null && this.attribute.isValid;
|
|
242
|
-
}
|
|
243
|
-
|
|
244
|
-
/**
|
|
245
|
-
*/
|
|
246
|
-
get readonlyvalue(): string {
|
|
247
|
-
if (this.attribute) {
|
|
248
|
-
return this.attribute.readonlyvalue;
|
|
249
|
-
}
|
|
250
|
-
return "";
|
|
251
|
-
}
|
|
252
|
-
|
|
253
128
|
/**
|
|
254
129
|
* Get assistant message
|
|
255
130
|
*/
|
|
256
131
|
get assistantMessage(): string | null {
|
|
257
132
|
return this.getContribution("assistant");
|
|
258
133
|
}
|
|
259
|
-
|
|
260
|
-
/**
|
|
261
|
-
*/
|
|
262
|
-
get formdata(): { [string]: any } | null {
|
|
263
|
-
return this.attribute.formdata ?? null;
|
|
264
|
-
}
|
|
265
134
|
}
|