@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.
Files changed (96) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/esm/hooks/useList.js +4 -4
  3. package/esm/hooks/useList.js.flow +5 -5
  4. package/esm/hooks/useList.js.map +1 -1
  5. package/esm/models/concepts/ConceptIndexModel.js +3 -2
  6. package/esm/models/concepts/ConceptIndexModel.js.flow +5 -4
  7. package/esm/models/concepts/ConceptIndexModel.js.map +1 -1
  8. package/esm/models/content/ContentIndexModel.js +7 -1
  9. package/esm/models/content/ContentIndexModel.js.flow +8 -3
  10. package/esm/models/content/ContentIndexModel.js.map +1 -1
  11. package/esm/models/content/ContentModel.js +3 -2
  12. package/esm/models/content/ContentModel.js.flow +4 -3
  13. package/esm/models/content/ContentModel.js.map +1 -1
  14. package/esm/models/content/ContentTOCModel.js +6 -2
  15. package/esm/models/content/ContentTOCModel.js.flow +6 -2
  16. package/esm/models/content/ContentTOCModel.js.map +1 -1
  17. package/esm/models/filters/AssignmentFilterModel.js +54 -26
  18. package/esm/models/filters/AssignmentFilterModel.js.flow +68 -37
  19. package/esm/models/filters/AssignmentFilterModel.js.map +1 -1
  20. package/esm/models/filters/BaseFilterModel.js +0 -110
  21. package/esm/models/filters/BaseFilterModel.js.flow +2 -133
  22. package/esm/models/filters/BaseFilterModel.js.map +1 -1
  23. package/esm/models/filters/ConceptIndexFilterModel.js +2 -2
  24. package/esm/models/filters/ConceptIndexFilterModel.js.flow +2 -2
  25. package/esm/models/filters/ConceptIndexFilterModel.js.map +1 -1
  26. package/esm/models/filters/FilterModel.js +117 -2
  27. package/esm/models/filters/FilterModel.js.flow +146 -1
  28. package/esm/models/filters/FilterModel.js.map +1 -1
  29. package/esm/models/filters/RangeFilterModel.js +2 -2
  30. package/esm/models/filters/RangeFilterModel.js.flow +2 -2
  31. package/esm/models/filters/RangeFilterModel.js.map +1 -1
  32. package/esm/models/href/Href.js +1 -1
  33. package/esm/models/href/Href.js.flow +1 -1
  34. package/esm/models/href/Href.js.map +1 -1
  35. package/esm/models/list/ListModel.js +5 -1
  36. package/esm/models/list/ListModel.js.flow +7 -3
  37. package/esm/models/list/ListModel.js.map +1 -1
  38. package/esm/models/sorting/SortOptionModel.js +7 -0
  39. package/esm/models/sorting/SortOptionModel.js.flow +7 -0
  40. package/esm/models/sorting/SortOptionModel.js.map +1 -1
  41. package/esm/models/sorting/SortingModel.js +14 -2
  42. package/esm/models/sorting/SortingModel.js.flow +14 -2
  43. package/esm/models/sorting/SortingModel.js.map +1 -1
  44. package/esm/models/types.js.flow +1 -3
  45. package/esm/models/types.js.map +1 -1
  46. package/esm/redux/_modularui/ModularUIConnector.js +7 -6
  47. package/esm/redux/_modularui/ModularUIConnector.js.flow +6 -4
  48. package/esm/redux/_modularui/ModularUIConnector.js.map +1 -1
  49. package/lib/hooks/useList.js +4 -4
  50. package/lib/hooks/useList.js.map +1 -1
  51. package/lib/models/concepts/ConceptIndexModel.js +3 -2
  52. package/lib/models/concepts/ConceptIndexModel.js.map +1 -1
  53. package/lib/models/content/ContentIndexModel.js +6 -1
  54. package/lib/models/content/ContentIndexModel.js.map +1 -1
  55. package/lib/models/content/ContentModel.js +3 -2
  56. package/lib/models/content/ContentModel.js.map +1 -1
  57. package/lib/models/content/ContentTOCModel.js +6 -2
  58. package/lib/models/content/ContentTOCModel.js.map +1 -1
  59. package/lib/models/filters/AssignmentFilterModel.js +54 -26
  60. package/lib/models/filters/AssignmentFilterModel.js.map +1 -1
  61. package/lib/models/filters/BaseFilterModel.js +0 -109
  62. package/lib/models/filters/BaseFilterModel.js.map +1 -1
  63. package/lib/models/filters/ConceptIndexFilterModel.js +2 -2
  64. package/lib/models/filters/ConceptIndexFilterModel.js.map +1 -1
  65. package/lib/models/filters/FilterModel.js +117 -1
  66. package/lib/models/filters/FilterModel.js.map +1 -1
  67. package/lib/models/filters/RangeFilterModel.js +2 -2
  68. package/lib/models/filters/RangeFilterModel.js.map +1 -1
  69. package/lib/models/href/Href.js +1 -1
  70. package/lib/models/href/Href.js.map +1 -1
  71. package/lib/models/list/ListModel.js +5 -1
  72. package/lib/models/list/ListModel.js.map +1 -1
  73. package/lib/models/sorting/SortOptionModel.js +7 -0
  74. package/lib/models/sorting/SortOptionModel.js.map +1 -1
  75. package/lib/models/sorting/SortingModel.js +14 -2
  76. package/lib/models/sorting/SortingModel.js.map +1 -1
  77. package/lib/models/types.js.map +1 -1
  78. package/lib/redux/_modularui/ModularUIConnector.js +7 -6
  79. package/lib/redux/_modularui/ModularUIConnector.js.map +1 -1
  80. package/package.json +6 -6
  81. package/src/hooks/useList.js +5 -5
  82. package/src/models/concepts/ConceptIndexModel.js +5 -4
  83. package/src/models/content/ContentIndexModel.js +8 -3
  84. package/src/models/content/ContentModel.js +4 -3
  85. package/src/models/content/ContentTOCModel.js +6 -2
  86. package/src/models/filters/AssignmentFilterModel.js +68 -37
  87. package/src/models/filters/BaseFilterModel.js +2 -133
  88. package/src/models/filters/ConceptIndexFilterModel.js +2 -2
  89. package/src/models/filters/FilterModel.js +146 -1
  90. package/src/models/filters/RangeFilterModel.js +2 -2
  91. package/src/models/href/Href.js +1 -1
  92. package/src/models/list/ListModel.js +7 -3
  93. package/src/models/sorting/SortOptionModel.js +7 -0
  94. package/src/models/sorting/SortingModel.js +14 -2
  95. package/src/models/types.js +1 -3
  96. 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 this.createAttribute("choice", assignmentTypeData.name || assignmentTypeData.param, assignmentTypeData, assignmentTypeContributions);
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 this.createAttribute("choice", userData.name || userData.param, userData, userContributions);
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
- if (this.assignmenttype && this.user) {
104
- return [{
105
- name: this.assignmenttype.name,
106
- value: this.assignmenttype.value
107
- }, {
108
- name: this.user.name,
109
- value: this.user.value
110
- }];
111
- }
112
- return [];
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: ?AttributeType;
12
- _user: ?AttributeType;
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(): ?AttributeType {
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 this.createAttribute(
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(): ?AttributeType {
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 this.createAttribute(
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(): ?AttributeType {
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(): ?AttributeType {
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
- if (this.assignmenttype && this.user) {
131
- return [
132
- {
133
- name: this.assignmenttype.name,
134
- value: this.assignmenttype.value,
135
- },
136
- {
137
- name: this.user.name,
138
- value: this.user.value,
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
- return [];
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
- import createAttribute from "../attributes/_createAttribute";
3
+
4
4
  import {
5
5
  PARAMETER_SEPARATOR,
6
6
  PARAMETER_TYPES,
7
7
  } from "../../constants/Constants";
8
8
 
9
- import type { AttributeType, FilterType, ModelOptions } from "../types";
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
  }