@universis/accommodation 1.0.0

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 (134) hide show
  1. package/.gitlab-ci.yml +23 -0
  2. package/LICENSE +163 -0
  3. package/README.md +3 -0
  4. package/dist/AccommodationSchemaLoader.js +35 -0
  5. package/dist/AccommodationSchemaLoader.js.map +1 -0
  6. package/dist/AccommodationService.js +68 -0
  7. package/dist/AccommodationService.js.map +1 -0
  8. package/dist/DepartmentReplacer.js +54 -0
  9. package/dist/DepartmentReplacer.js.map +1 -0
  10. package/dist/StudentReplacer.js +75 -0
  11. package/dist/StudentReplacer.js.map +1 -0
  12. package/dist/config/models/Accommodation.json +96 -0
  13. package/dist/config/models/AccommodationCardEffectiveStatusType.json +107 -0
  14. package/dist/config/models/AccommodationCardEffectiveStatusTypeLocale.json +85 -0
  15. package/dist/config/models/AccommodationChildFinancialAttribute.json +46 -0
  16. package/dist/config/models/AccommodationGuardianFinancialAttribute.json +46 -0
  17. package/dist/config/models/AccommodationInscriptionModeTag.json +100 -0
  18. package/dist/config/models/AccommodationRequestAction.json +500 -0
  19. package/dist/config/models/AccommodationRequestActionMessage.json +46 -0
  20. package/dist/config/models/AccommodationRequestActionReview.json +31 -0
  21. package/dist/config/models/AccommodationRequestAttachmentConfiguration.json +72 -0
  22. package/dist/config/models/AccommodationRequestCategory.json +50 -0
  23. package/dist/config/models/AccommodationRequestEffectiveStatusType.json +212 -0
  24. package/dist/config/models/AccommodationRequestEffectiveStatusTypeLocale.json +85 -0
  25. package/dist/config/models/AccommodationRequestEvent.json +117 -0
  26. package/dist/config/models/AccommodationRequestFinancialAttribute.json +53 -0
  27. package/dist/config/models/AccommodationRoom.json +151 -0
  28. package/dist/config/models/AccommodationSiblingFinancialAttribute.json +57 -0
  29. package/dist/config/models/CancelAccommodationCardAction.json +32 -0
  30. package/dist/config/models/GuardianType.json +78 -0
  31. package/dist/config/models/Review.json +50 -0
  32. package/dist/config/models/RoomType.json +320 -0
  33. package/dist/config/models/RoomTypeLocale.json +86 -0
  34. package/dist/config/models/StudentAccommodationCard.json +158 -0
  35. package/dist/config/models/TestAction.json +50 -0
  36. package/dist/config/scope.access.js +148 -0
  37. package/dist/config/scope.access.js.map +1 -0
  38. package/dist/index.d.ts +2 -0
  39. package/dist/index.js +3 -0
  40. package/dist/index.js.map +1 -0
  41. package/dist/listeners/AddDefaultAttachmentConfiguration.js +44 -0
  42. package/dist/listeners/AddDefaultAttachmentConfiguration.js.map +1 -0
  43. package/dist/listeners/DefaultAttachmentConfigurations.json +277 -0
  44. package/dist/listeners/DefaultAttachmentTypes.json +523 -0
  45. package/dist/listeners/GenerateRequestNumberListener.js +87 -0
  46. package/dist/listeners/GenerateRequestNumberListener.js.map +1 -0
  47. package/dist/listeners/OnActionCompleteListener.js +96 -0
  48. package/dist/listeners/OnActionCompleteListener.js.map +1 -0
  49. package/dist/listeners/OnCancelAccommodationCardListener.js +87 -0
  50. package/dist/listeners/OnCancelAccommodationCardListener.js.map +1 -0
  51. package/dist/listeners/OnReactivateAccommodationCardListener.js +87 -0
  52. package/dist/listeners/OnReactivateAccommodationCardListener.js.map +1 -0
  53. package/dist/listeners/SendEmailAfterActionStatusChangeListener.js +98 -0
  54. package/dist/listeners/SendEmailAfterActionStatusChangeListener.js.map +1 -0
  55. package/dist/listeners/SendEmailAfterCardStatusChangeListener.js +139 -0
  56. package/dist/listeners/SendEmailAfterCardStatusChangeListener.js.map +1 -0
  57. package/dist/listeners/StudentAccommodationCardSaveListener.js +90 -0
  58. package/dist/listeners/StudentAccommodationCardSaveListener.js.map +1 -0
  59. package/dist/listeners/UpdateStudentAccommodationCardListener.js +70 -0
  60. package/dist/listeners/UpdateStudentAccommodationCardListener.js.map +1 -0
  61. package/dist/listeners/ValidateActionListener.js +348 -0
  62. package/dist/listeners/ValidateActionListener.js.map +1 -0
  63. package/dist/listeners/data-localization.js +209 -0
  64. package/dist/listeners/data-localization.js.map +1 -0
  65. package/dist/listeners/lookup-cache-listener.js +90 -0
  66. package/dist/listeners/lookup-cache-listener.js.map +1 -0
  67. package/dist/models/Accommodation.js +53 -0
  68. package/dist/models/Accommodation.js.map +1 -0
  69. package/dist/models/AccommodationRequestAction.js +214 -0
  70. package/dist/models/AccommodationRequestAction.js.map +1 -0
  71. package/dist/models/AccommodationRequestEvent.js +277 -0
  72. package/dist/models/AccommodationRequestEvent.js.map +1 -0
  73. package/dist/models/EnableAttachmentModel.js +210 -0
  74. package/dist/models/EnableAttachmentModel.js.map +1 -0
  75. package/dist/models/StudentAccommodationCard.js +93 -0
  76. package/dist/models/StudentAccommodationCard.js.map +1 -0
  77. package/dist/models/TestAction.d.ts +5 -0
  78. package/dist/models/TestAction.js +5 -0
  79. package/dist/models/TestAction.js.map +1 -0
  80. package/dist/templates/mail-after-dining-request-status-change/html.ejs +27 -0
  81. package/package.json +57 -0
  82. package/src/AccommodationSchemaLoader.js +35 -0
  83. package/src/AccommodationService.js +67 -0
  84. package/src/DepartmentReplacer.js +53 -0
  85. package/src/StudentReplacer.js +74 -0
  86. package/src/config/models/Accommodation.json +96 -0
  87. package/src/config/models/AccommodationCardEffectiveStatusType.json +107 -0
  88. package/src/config/models/AccommodationCardEffectiveStatusTypeLocale.json +85 -0
  89. package/src/config/models/AccommodationChildFinancialAttribute.json +46 -0
  90. package/src/config/models/AccommodationGuardianFinancialAttribute.json +46 -0
  91. package/src/config/models/AccommodationInscriptionModeTag.json +100 -0
  92. package/src/config/models/AccommodationRequestAction.json +500 -0
  93. package/src/config/models/AccommodationRequestActionMessage.json +46 -0
  94. package/src/config/models/AccommodationRequestActionReview.json +31 -0
  95. package/src/config/models/AccommodationRequestAttachmentConfiguration.json +72 -0
  96. package/src/config/models/AccommodationRequestCategory.json +50 -0
  97. package/src/config/models/AccommodationRequestEffectiveStatusType.json +212 -0
  98. package/src/config/models/AccommodationRequestEffectiveStatusTypeLocale.json +85 -0
  99. package/src/config/models/AccommodationRequestEvent.json +117 -0
  100. package/src/config/models/AccommodationRequestFinancialAttribute.json +53 -0
  101. package/src/config/models/AccommodationRoom.json +151 -0
  102. package/src/config/models/AccommodationSiblingFinancialAttribute.json +57 -0
  103. package/src/config/models/CancelAccommodationCardAction.json +32 -0
  104. package/src/config/models/GuardianType.json +78 -0
  105. package/src/config/models/Review.json +50 -0
  106. package/src/config/models/RoomType.json +320 -0
  107. package/src/config/models/RoomTypeLocale.json +86 -0
  108. package/src/config/models/StudentAccommodationCard.json +158 -0
  109. package/src/config/models/TestAction.json +50 -0
  110. package/src/config/scope.access.js +148 -0
  111. package/src/index.d.ts +2 -0
  112. package/src/index.js +2 -0
  113. package/src/listeners/AddDefaultAttachmentConfiguration.js +43 -0
  114. package/src/listeners/DefaultAttachmentConfigurations.json +277 -0
  115. package/src/listeners/DefaultAttachmentTypes.json +523 -0
  116. package/src/listeners/GenerateRequestNumberListener.js +86 -0
  117. package/src/listeners/OnActionCompleteListener.js +95 -0
  118. package/src/listeners/OnCancelAccommodationCardListener.js +86 -0
  119. package/src/listeners/OnReactivateAccommodationCardListener.js +86 -0
  120. package/src/listeners/SendEmailAfterActionStatusChangeListener.js +97 -0
  121. package/src/listeners/SendEmailAfterCardStatusChangeListener.js +138 -0
  122. package/src/listeners/StudentAccommodationCardSaveListener.js +89 -0
  123. package/src/listeners/UpdateStudentAccommodationCardListener.js +69 -0
  124. package/src/listeners/ValidateActionListener.js +347 -0
  125. package/src/listeners/data-localization.js +214 -0
  126. package/src/listeners/lookup-cache-listener.js +89 -0
  127. package/src/models/Accommodation.js +52 -0
  128. package/src/models/AccommodationRequestAction.js +195 -0
  129. package/src/models/AccommodationRequestEvent.js +276 -0
  130. package/src/models/EnableAttachmentModel.js +209 -0
  131. package/src/models/StudentAccommodationCard.js +92 -0
  132. package/src/models/TestAction.d.ts +5 -0
  133. package/src/models/TestAction.js +10 -0
  134. package/src/templates/mail-after-dining-request-status-change/html.ejs +27 -0
@@ -0,0 +1,85 @@
1
+ {
2
+ "$schema": "https://themost-framework.github.io/themost/models/2018/2/schema.json",
3
+ "@id": "https://universis.io/entities/AccommodationCardEffectiveStatusTypeLocale",
4
+ "name": "AccommodationCardEffectiveStatusLocale",
5
+ "description": "Contains a collection of extra fields required for AccommodationCardEffectiveStatusType.",
6
+ "title": "AccommodationCardEffectiveStatusTypeLocale",
7
+ "abstract": false,
8
+ "contains": "AccommodationCardEffectiveStatusType",
9
+ "hidden": true,
10
+ "sealed": false,
11
+ "version": "1.0",
12
+ "fields": [
13
+ {
14
+ "@id": "https://themost.io/schemas/id",
15
+ "name": "id",
16
+ "title": "ID",
17
+ "description": "The identifier of the item.",
18
+ "type": "Counter",
19
+ "primary": true,
20
+ "nullable": false
21
+ },
22
+ {
23
+ "@id": "https://themost.io/schemas/object",
24
+ "name": "object",
25
+ "title": "object",
26
+ "description": "The parent item.",
27
+ "type": "AccommodationCardEffectiveStatusType"
28
+ },
29
+ {
30
+ "@id": "http://schema.org/inLanguage",
31
+ "name": "inLanguage",
32
+ "title": "inLanguage",
33
+ "description": "The language of this item.",
34
+ "type": "Text",
35
+ "size": 5
36
+ },
37
+ {
38
+ "name": "alternateName",
39
+ "title": "alternateName",
40
+ "description": "The alternate name of the item.",
41
+ "type": "Text"
42
+ },
43
+ {
44
+ "name": "name",
45
+ "title": "name",
46
+ "description": "The name of the item.",
47
+ "type": "Text"
48
+ },
49
+ {
50
+ "name": "description",
51
+ "title": "The description of the item.",
52
+ "type": "Note"
53
+ }
54
+ ],
55
+ "constraints": [
56
+ {
57
+ "type": "unique",
58
+ "description": "Object and inLanguage must be unique across different records",
59
+ "fields": [
60
+ "object", "inLanguage"
61
+ ]
62
+ }
63
+ ],
64
+ "privileges": [
65
+ {
66
+ "mask": 1,
67
+ "type": "global",
68
+ "account": "*"
69
+ },
70
+ {
71
+ "mask": 15,
72
+ "type": "global"
73
+ },
74
+ {
75
+ "mask": 15,
76
+ "type": "global",
77
+ "account": "Administrators"
78
+ },
79
+ {
80
+ "mask": 15,
81
+ "type": "global",
82
+ "account": "AccommodationAdministrators"
83
+ }
84
+ ]
85
+ }
@@ -0,0 +1,46 @@
1
+ {
2
+ "$schema": "https://themost-framework.github.io/themost/models/2018/2/schema.json",
3
+ "@id": "https://universis.io/schemas/AccommodationChildFinancialAttribute",
4
+ "name": "AccommodationChildFinancialAttribute",
5
+ "title": "AccommodationChildFinancialAttributes",
6
+ "hidden": true,
7
+ "sealed": false,
8
+ "abstract": false,
9
+ "version": "1.0",
10
+ "inherits": "AccommodationRequestFinancialAttribute",
11
+ "fields": [
12
+ {
13
+ "name": "accommodationRequest",
14
+ "type": "AccommodationRequestAction",
15
+ "nullable": false
16
+ }
17
+ ],
18
+ "privileges": [
19
+ {
20
+ "mask": 15,
21
+ "type": "global"
22
+ },
23
+ {
24
+ "mask": 15,
25
+ "type": "global",
26
+ "account": "Administrators"
27
+ },
28
+ {
29
+ "mask": 1,
30
+ "type": "self",
31
+ "filter": "accommodationRequest/owner eq me()"
32
+ },
33
+ {
34
+ "mask": 2,
35
+ "type": "self",
36
+ "filter": "accommodationRequest/owner eq me() and accommodationRequest/agent eq null and accommodationRequest/actionStatus/alternateName eq 'PotentialActionStatus'",
37
+ "account": "Students"
38
+ },
39
+ {
40
+ "mask": 4,
41
+ "type": "self",
42
+ "filter": "accommodationRequest/owner eq me() and accommodationRequest/agent eq null and accommodationRequest/actionStatus/alternateName eq 'PotentialActionStatus'",
43
+ "account": "Students"
44
+ }
45
+ ]
46
+ }
@@ -0,0 +1,46 @@
1
+ {
2
+ "$schema": "https://themost-framework.github.io/themost/models/2018/2/schema.json",
3
+ "@id": "https://universis.io/schemas/AccommodationGuardianFinancialAttribute",
4
+ "name": "AccommodationGuardianFinancialAttribute",
5
+ "title": "AccommodationGuardianFinancialAttributes",
6
+ "hidden": true,
7
+ "sealed": false,
8
+ "abstract": false,
9
+ "version": "1.0",
10
+ "inherits": "AccommodationRequestFinancialAttribute",
11
+ "fields": [
12
+ {
13
+ "name": "accommodationRequest",
14
+ "type": "AccommodationRequestAction",
15
+ "nullable": false
16
+ }
17
+ ],
18
+ "privileges": [
19
+ {
20
+ "mask": 15,
21
+ "type": "global"
22
+ },
23
+ {
24
+ "mask": 15,
25
+ "type": "global",
26
+ "account": "Administrators"
27
+ },
28
+ {
29
+ "mask": 1,
30
+ "type": "self",
31
+ "filter": "accommodationRequest/owner eq me()"
32
+ },
33
+ {
34
+ "mask": 2,
35
+ "type": "self",
36
+ "filter": "accommodationRequest/owner eq me() and accommodationRequest/agent eq null and accommodationRequest/actionStatus/alternateName eq 'PotentialActionStatus'",
37
+ "account": "Students"
38
+ },
39
+ {
40
+ "mask": 4,
41
+ "type": "self",
42
+ "filter": "accommodationRequest/owner eq me() and accommodationRequest/agent eq null and accommodationRequest/actionStatus/alternateName eq 'PotentialActionStatus'",
43
+ "account": "Students"
44
+ }
45
+ ]
46
+ }
@@ -0,0 +1,100 @@
1
+ {
2
+ "$schema": "https://themost-framework.github.io/themost/models/2018/2/schema.json",
3
+ "@id": "https://universis.io/schemas/AccommodationInscriptionModeTag",
4
+ "name": "AccommodationInscriptionModeTag",
5
+ "title": "AccommodationInscriptionModeTags",
6
+ "hidden": false,
7
+ "sealed": false,
8
+ "abstract": false,
9
+ "implements": "Enumeration",
10
+ "version": "1.0",
11
+ "fields": [
12
+ {
13
+ "name": "id",
14
+ "title": "Id",
15
+ "type": "Counter",
16
+ "nullable": false,
17
+ "primary": true
18
+ },
19
+ {
20
+ "name": "inscriptionModes",
21
+ "type": "InscriptionMode",
22
+ "many": true,
23
+ "mapping": {
24
+ "associationAdapter": "AccommodationInscriptionModeTagItems",
25
+ "parentModel": "AccommodationInscriptionModeTag",
26
+ "parentField": "id",
27
+ "childModel": "InscriptionMode",
28
+ "childField": "id",
29
+ "associationObjectField": "object",
30
+ "associationValueField": "value",
31
+ "cascade": "delete",
32
+ "privileges": [
33
+ {
34
+ "mask": 1,
35
+ "type": "global",
36
+ "account": "*"
37
+ },
38
+ {
39
+ "mask": 15,
40
+ "type": "global"
41
+ },
42
+ {
43
+ "mask": 15,
44
+ "type": "global",
45
+ "account": "Administrators"
46
+ },
47
+ {
48
+ "mask": 15,
49
+ "type": "global",
50
+ "account": "DiningAdministrators"
51
+ },
52
+ {
53
+ "mask": 15,
54
+ "type": "global",
55
+ "account": "Registrar"
56
+ }
57
+ ]
58
+ }
59
+ }
60
+ ],
61
+ "privileges": [
62
+ {
63
+ "mask": 1,
64
+ "type": "global",
65
+ "account": "*"
66
+ },
67
+ {
68
+ "mask": 15,
69
+ "type": "global"
70
+ },
71
+ {
72
+ "mask": 15,
73
+ "type": "global",
74
+ "account": "Administrators"
75
+ },
76
+ {
77
+ "mask": 15,
78
+ "type": "global",
79
+ "account": "DiningAdministrators"
80
+ }
81
+ ],
82
+ "constraints": [
83
+ {
84
+ "type": "unique",
85
+ "description": "Alternate name must be unique across different records",
86
+ "fields": [
87
+ "alternateName"
88
+ ]
89
+ },
90
+ {
91
+ "type": "unique",
92
+ "description": "Name must be unique across different records",
93
+ "fields": [
94
+ "name"
95
+ ]
96
+ }
97
+ ],
98
+ "seed": [],
99
+ "eventListeners": []
100
+ }