@edifice.io/community-client-rest 1.0.0-develop-pedago.13 → 1.0.0-develop.20251204185004

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 (248) hide show
  1. package/dist/browser/clients/adapters/fetch-adapter.d.ts +5 -5
  2. package/dist/browser/clients/adapters/fetch-adapter.js +21 -25
  3. package/dist/browser/clients/adapters/fetch-adapter.js.map +1 -1
  4. package/dist/browser/clients/adapters/http-adapter.d.ts +4 -4
  5. package/dist/browser/clients/adapters/http-adapter.js +1 -2
  6. package/dist/browser/clients/adapters/http-service-adapter.d.ts +7 -5
  7. package/dist/browser/clients/adapters/http-service-adapter.js +1 -5
  8. package/dist/browser/clients/adapters/http-service-adapter.js.map +1 -1
  9. package/dist/browser/clients/announcement.client.js +4 -8
  10. package/dist/browser/clients/announcement.client.js.map +1 -1
  11. package/dist/browser/clients/base-api.client.d.ts +3 -1
  12. package/dist/browser/clients/base-api.client.js +5 -9
  13. package/dist/browser/clients/base-api.client.js.map +1 -1
  14. package/dist/browser/clients/community.client.d.ts +7 -6
  15. package/dist/browser/clients/community.client.js +13 -11
  16. package/dist/browser/clients/community.client.js.map +1 -1
  17. package/dist/browser/clients/discussion.client.js +2 -6
  18. package/dist/browser/clients/discussion.client.js.map +1 -1
  19. package/dist/browser/clients/errors/api-error.d.ts +1 -1
  20. package/dist/browser/clients/errors/api-error.js +7 -10
  21. package/dist/browser/clients/errors/api-error.js.map +1 -1
  22. package/dist/browser/clients/folder.client.d.ts +13 -0
  23. package/dist/browser/clients/folder.client.js +38 -0
  24. package/dist/browser/clients/folder.client.js.map +1 -0
  25. package/dist/browser/clients/index.d.ts +11 -11
  26. package/dist/browser/clients/index.js +11 -27
  27. package/dist/browser/clients/index.js.map +1 -1
  28. package/dist/browser/clients/invitation.client.d.ts +11 -9
  29. package/dist/browser/clients/invitation.client.js +21 -13
  30. package/dist/browser/clients/invitation.client.js.map +1 -1
  31. package/dist/browser/clients/membership.client.js +4 -6
  32. package/dist/browser/clients/membership.client.js.map +1 -1
  33. package/dist/browser/clients/resource.client.js +2 -6
  34. package/dist/browser/clients/resource.client.js.map +1 -1
  35. package/dist/browser/clients/wiki.client.js +2 -6
  36. package/dist/browser/clients/wiki.client.js.map +1 -1
  37. package/dist/browser/decorators/custom-type.decorator.browser.d.ts +3 -3
  38. package/dist/browser/decorators/custom-type.decorator.browser.js +3 -8
  39. package/dist/browser/decorators/custom-type.decorator.browser.js.map +1 -1
  40. package/dist/browser/decorators/custom-type.decorator.node.js +3 -8
  41. package/dist/browser/decorators/custom-type.decorator.node.js.map +1 -1
  42. package/dist/browser/dtos/announcement.d.ts +23 -4
  43. package/dist/browser/dtos/announcement.js +127 -64
  44. package/dist/browser/dtos/announcement.js.map +1 -1
  45. package/dist/browser/dtos/base.js +38 -45
  46. package/dist/browser/dtos/base.js.map +1 -1
  47. package/dist/browser/dtos/community.d.ts +1 -1
  48. package/dist/browser/dtos/community.js +139 -150
  49. package/dist/browser/dtos/community.js.map +1 -1
  50. package/dist/browser/dtos/discussion.js +31 -41
  51. package/dist/browser/dtos/discussion.js.map +1 -1
  52. package/dist/browser/dtos/folder.d.ts +6 -3
  53. package/dist/browser/dtos/folder.js +74 -75
  54. package/dist/browser/dtos/folder.js.map +1 -1
  55. package/dist/browser/dtos/index.js +9 -25
  56. package/dist/browser/dtos/index.js.map +1 -1
  57. package/dist/browser/dtos/invitation.js +149 -168
  58. package/dist/browser/dtos/invitation.js.map +1 -1
  59. package/dist/browser/dtos/membership.d.ts +1 -0
  60. package/dist/browser/dtos/membership.js +75 -78
  61. package/dist/browser/dtos/membership.js.map +1 -1
  62. package/dist/browser/dtos/resource.d.ts +3 -2
  63. package/dist/browser/dtos/resource.js +123 -126
  64. package/dist/browser/dtos/resource.js.map +1 -1
  65. package/dist/browser/dtos/wiki.js +15 -22
  66. package/dist/browser/dtos/wiki.js.map +1 -1
  67. package/dist/browser/index.d.ts +1 -0
  68. package/dist/browser/index.js +5 -21
  69. package/dist/browser/index.js.map +1 -1
  70. package/dist/browser/mocks/index.js +1 -17
  71. package/dist/browser/mocks/index.js.map +1 -1
  72. package/dist/browser/mocks/search-community-response.mock.js +16 -25
  73. package/dist/browser/mocks/search-community-response.mock.js.map +1 -1
  74. package/dist/browser/utils/background-images.constants.d.ts +3 -0
  75. package/dist/browser/utils/background-images.constants.js +77 -0
  76. package/dist/browser/utils/background-images.constants.js.map +1 -0
  77. package/dist/browser/utils/community-image.types.d.ts +26 -0
  78. package/dist/browser/utils/community-image.types.js +2 -0
  79. package/dist/browser/utils/community-image.types.js.map +1 -0
  80. package/dist/browser/utils/community-image.util.d.ts +13 -0
  81. package/dist/browser/utils/community-image.util.js +81 -0
  82. package/dist/browser/utils/community-image.util.js.map +1 -0
  83. package/dist/browser/utils/community-image.util.test.d.ts +1 -0
  84. package/dist/browser/utils/community-image.util.test.js +355 -0
  85. package/dist/browser/utils/community-image.util.test.js.map +1 -0
  86. package/dist/browser/utils/index.d.ts +3 -0
  87. package/dist/browser/utils/index.js +5 -18
  88. package/dist/browser/utils/index.js.map +1 -1
  89. package/dist/browser/utils/resource-url.util.js +12 -15
  90. package/dist/browser/utils/resource-url.util.js.map +1 -1
  91. package/dist/browser/utils/rights.utils.js +1 -4
  92. package/dist/browser/utils/rights.utils.js.map +1 -1
  93. package/dist/node/clients/adapters/fetch-adapter.d.ts +5 -5
  94. package/dist/node/clients/adapters/fetch-adapter.js +18 -18
  95. package/dist/node/clients/adapters/fetch-adapter.js.map +1 -1
  96. package/dist/node/clients/adapters/http-adapter.d.ts +4 -4
  97. package/dist/node/clients/adapters/http-service-adapter.d.ts +7 -5
  98. package/dist/node/clients/adapters/http-service-adapter.js.map +1 -1
  99. package/dist/node/clients/announcement.client.js +2 -2
  100. package/dist/node/clients/base-api.client.d.ts +3 -1
  101. package/dist/node/clients/base-api.client.js.map +1 -1
  102. package/dist/node/clients/community.client.d.ts +7 -6
  103. package/dist/node/clients/community.client.js +11 -5
  104. package/dist/node/clients/community.client.js.map +1 -1
  105. package/dist/node/clients/errors/api-error.d.ts +1 -1
  106. package/dist/node/clients/errors/api-error.js +6 -5
  107. package/dist/node/clients/errors/api-error.js.map +1 -1
  108. package/dist/node/clients/folder.client.d.ts +13 -0
  109. package/dist/node/clients/folder.client.js +42 -0
  110. package/dist/node/clients/folder.client.js.map +1 -0
  111. package/dist/node/clients/index.d.ts +11 -11
  112. package/dist/node/clients/invitation.client.d.ts +11 -9
  113. package/dist/node/clients/invitation.client.js +19 -7
  114. package/dist/node/clients/invitation.client.js.map +1 -1
  115. package/dist/node/clients/membership.client.js +2 -0
  116. package/dist/node/clients/membership.client.js.map +1 -1
  117. package/dist/node/clients/resource.client.js.map +1 -1
  118. package/dist/node/decorators/custom-type.decorator.browser.d.ts +3 -3
  119. package/dist/node/decorators/custom-type.decorator.browser.js.map +1 -1
  120. package/dist/node/decorators/custom-type.decorator.node.js.map +1 -1
  121. package/dist/node/dtos/announcement.d.ts +23 -4
  122. package/dist/node/dtos/announcement.js +102 -28
  123. package/dist/node/dtos/announcement.js.map +1 -1
  124. package/dist/node/dtos/base.js +7 -7
  125. package/dist/node/dtos/base.js.map +1 -1
  126. package/dist/node/dtos/community.d.ts +1 -1
  127. package/dist/node/dtos/community.js.map +1 -1
  128. package/dist/node/dtos/folder.d.ts +6 -3
  129. package/dist/node/dtos/folder.js +28 -19
  130. package/dist/node/dtos/folder.js.map +1 -1
  131. package/dist/node/dtos/membership.d.ts +1 -0
  132. package/dist/node/dtos/membership.js +13 -2
  133. package/dist/node/dtos/membership.js.map +1 -1
  134. package/dist/node/dtos/resource.d.ts +3 -2
  135. package/dist/node/dtos/resource.js +19 -12
  136. package/dist/node/dtos/resource.js.map +1 -1
  137. package/dist/node/index.d.ts +1 -0
  138. package/dist/node/index.js +3 -1
  139. package/dist/node/index.js.map +1 -1
  140. package/dist/node/utils/background-images.constants.d.ts +3 -0
  141. package/dist/node/utils/background-images.constants.js +80 -0
  142. package/dist/node/utils/background-images.constants.js.map +1 -0
  143. package/dist/node/utils/community-image.types.d.ts +26 -0
  144. package/dist/node/utils/community-image.types.js +3 -0
  145. package/dist/node/utils/community-image.types.js.map +1 -0
  146. package/dist/node/utils/community-image.util.d.ts +13 -0
  147. package/dist/node/utils/community-image.util.js +94 -0
  148. package/dist/node/utils/community-image.util.js.map +1 -0
  149. package/dist/node/utils/community-image.util.test.d.ts +1 -0
  150. package/dist/node/utils/community-image.util.test.js +357 -0
  151. package/dist/node/utils/community-image.util.test.js.map +1 -0
  152. package/dist/node/utils/index.d.ts +3 -0
  153. package/dist/node/utils/index.js +3 -0
  154. package/dist/node/utils/index.js.map +1 -1
  155. package/dist/react-native/clients/adapters/fetch-adapter.d.ts +5 -5
  156. package/dist/react-native/clients/adapters/fetch-adapter.js +21 -25
  157. package/dist/react-native/clients/adapters/fetch-adapter.js.map +1 -1
  158. package/dist/react-native/clients/adapters/http-adapter.d.ts +4 -4
  159. package/dist/react-native/clients/adapters/http-adapter.js +1 -2
  160. package/dist/react-native/clients/adapters/http-service-adapter.d.ts +7 -5
  161. package/dist/react-native/clients/adapters/http-service-adapter.js +1 -5
  162. package/dist/react-native/clients/adapters/http-service-adapter.js.map +1 -1
  163. package/dist/react-native/clients/announcement.client.js +4 -8
  164. package/dist/react-native/clients/announcement.client.js.map +1 -1
  165. package/dist/react-native/clients/base-api.client.d.ts +3 -1
  166. package/dist/react-native/clients/base-api.client.js +5 -9
  167. package/dist/react-native/clients/base-api.client.js.map +1 -1
  168. package/dist/react-native/clients/community.client.d.ts +7 -6
  169. package/dist/react-native/clients/community.client.js +13 -11
  170. package/dist/react-native/clients/community.client.js.map +1 -1
  171. package/dist/react-native/clients/discussion.client.js +2 -6
  172. package/dist/react-native/clients/discussion.client.js.map +1 -1
  173. package/dist/react-native/clients/errors/api-error.d.ts +1 -1
  174. package/dist/react-native/clients/errors/api-error.js +7 -10
  175. package/dist/react-native/clients/errors/api-error.js.map +1 -1
  176. package/dist/react-native/clients/folder.client.d.ts +13 -0
  177. package/dist/react-native/clients/folder.client.js +38 -0
  178. package/dist/react-native/clients/folder.client.js.map +1 -0
  179. package/dist/react-native/clients/index.d.ts +11 -11
  180. package/dist/react-native/clients/index.js +11 -27
  181. package/dist/react-native/clients/index.js.map +1 -1
  182. package/dist/react-native/clients/invitation.client.d.ts +11 -9
  183. package/dist/react-native/clients/invitation.client.js +21 -13
  184. package/dist/react-native/clients/invitation.client.js.map +1 -1
  185. package/dist/react-native/clients/membership.client.js +4 -6
  186. package/dist/react-native/clients/membership.client.js.map +1 -1
  187. package/dist/react-native/clients/resource.client.js +2 -6
  188. package/dist/react-native/clients/resource.client.js.map +1 -1
  189. package/dist/react-native/clients/wiki.client.js +2 -6
  190. package/dist/react-native/clients/wiki.client.js.map +1 -1
  191. package/dist/react-native/decorators/custom-type.decorator.browser.d.ts +3 -3
  192. package/dist/react-native/decorators/custom-type.decorator.browser.js +3 -8
  193. package/dist/react-native/decorators/custom-type.decorator.browser.js.map +1 -1
  194. package/dist/react-native/dtos/announcement.d.ts +23 -4
  195. package/dist/react-native/dtos/announcement.js +127 -64
  196. package/dist/react-native/dtos/announcement.js.map +1 -1
  197. package/dist/react-native/dtos/base.js +38 -45
  198. package/dist/react-native/dtos/base.js.map +1 -1
  199. package/dist/react-native/dtos/community.d.ts +1 -1
  200. package/dist/react-native/dtos/community.js +139 -150
  201. package/dist/react-native/dtos/community.js.map +1 -1
  202. package/dist/react-native/dtos/discussion.js +31 -41
  203. package/dist/react-native/dtos/discussion.js.map +1 -1
  204. package/dist/react-native/dtos/folder.d.ts +6 -3
  205. package/dist/react-native/dtos/folder.js +74 -75
  206. package/dist/react-native/dtos/folder.js.map +1 -1
  207. package/dist/react-native/dtos/index.js +9 -25
  208. package/dist/react-native/dtos/index.js.map +1 -1
  209. package/dist/react-native/dtos/invitation.js +149 -168
  210. package/dist/react-native/dtos/invitation.js.map +1 -1
  211. package/dist/react-native/dtos/membership.d.ts +1 -0
  212. package/dist/react-native/dtos/membership.js +75 -78
  213. package/dist/react-native/dtos/membership.js.map +1 -1
  214. package/dist/react-native/dtos/resource.d.ts +3 -2
  215. package/dist/react-native/dtos/resource.js +123 -126
  216. package/dist/react-native/dtos/resource.js.map +1 -1
  217. package/dist/react-native/dtos/wiki.js +15 -22
  218. package/dist/react-native/dtos/wiki.js.map +1 -1
  219. package/dist/react-native/index.d.ts +1 -0
  220. package/dist/react-native/index.js +5 -21
  221. package/dist/react-native/index.js.map +1 -1
  222. package/dist/react-native/mocks/index.js +1 -17
  223. package/dist/react-native/mocks/index.js.map +1 -1
  224. package/dist/react-native/mocks/search-community-response.mock.js +16 -25
  225. package/dist/react-native/mocks/search-community-response.mock.js.map +1 -1
  226. package/dist/react-native/package.json +5 -5
  227. package/dist/react-native/utils/background-images.constants.d.ts +3 -0
  228. package/dist/react-native/utils/background-images.constants.js +77 -0
  229. package/dist/react-native/utils/background-images.constants.js.map +1 -0
  230. package/dist/react-native/utils/community-image.types.d.ts +26 -0
  231. package/dist/react-native/utils/community-image.types.js +2 -0
  232. package/dist/react-native/utils/community-image.types.js.map +1 -0
  233. package/dist/react-native/utils/community-image.util.d.ts +13 -0
  234. package/dist/react-native/utils/community-image.util.js +81 -0
  235. package/dist/react-native/utils/community-image.util.js.map +1 -0
  236. package/dist/react-native/utils/community-image.util.test.d.ts +1 -0
  237. package/dist/react-native/utils/community-image.util.test.js +355 -0
  238. package/dist/react-native/utils/community-image.util.test.js.map +1 -0
  239. package/dist/react-native/utils/index.d.ts +3 -0
  240. package/dist/react-native/utils/index.js +5 -18
  241. package/dist/react-native/utils/index.js.map +1 -1
  242. package/dist/react-native/utils/resource-url.util.js +12 -15
  243. package/dist/react-native/utils/resource-url.util.js.map +1 -1
  244. package/dist/react-native/utils/rights.utils.js +1 -4
  245. package/dist/react-native/utils/rights.utils.js.map +1 -1
  246. package/package.json +31 -16
  247. package/package.json.rn +5 -5
  248. package/scripts/sync-rn-version.js +25 -0
@@ -0,0 +1,355 @@
1
+ import { describe, it, expect } from "vitest";
2
+ import { convertToMobileThumbnails, mapCommunityWithThumbnails, mapCommunitySummaryWithThumbnails, mapInvitationWithThumbnails, mapInvitationOrMemberWithThumbnails, mapCommunitiesWithThumbnails, mapInvitationsWithThumbnails, mapInvitationsOrMembersWithThumbnails, } from "./community-image.util";
3
+ describe("convertToMobileThumbnails", () => {
4
+ describe("with /defaultCover/ format", () => {
5
+ it("should convert /defaultCover/admin-blue.png to mobile thumbnails", () => {
6
+ const result = convertToMobileThumbnails("/defaultCover/admin-blue.png");
7
+ expect(result).toHaveLength(3);
8
+ expect(result[0]).toEqual({
9
+ uri: "/communities/public/mobile/defaultCover/admin-blue.png",
10
+ scale: 1,
11
+ });
12
+ expect(result[1]).toEqual({
13
+ uri: "/communities/public/mobile/defaultCover/admin-blue@2x.png",
14
+ scale: 2,
15
+ });
16
+ expect(result[2]).toEqual({
17
+ uri: "/communities/public/mobile/defaultCover/admin-blue@3x.png",
18
+ scale: 3,
19
+ });
20
+ });
21
+ it("should convert /defaultCover/school-green.png to mobile thumbnails", () => {
22
+ const result = convertToMobileThumbnails("/defaultCover/school-green.png");
23
+ expect(result).toHaveLength(3);
24
+ expect(result[0].uri).toBe("/communities/public/mobile/defaultCover/school-green.png");
25
+ expect(result[1].uri).toBe("/communities/public/mobile/defaultCover/school-green@2x.png");
26
+ expect(result[2].uri).toBe("/communities/public/mobile/defaultCover/school-green@3x.png");
27
+ });
28
+ it("should convert all background images", () => {
29
+ const backgroundImages = [
30
+ "/defaultCover/school-green.png",
31
+ "/defaultCover/school-yellow.png",
32
+ "/defaultCover/reading-pink.png",
33
+ "/defaultCover/reading-blue.png",
34
+ "/defaultCover/sport-yellow.png",
35
+ "/defaultCover/sport-orange.png",
36
+ "/defaultCover/science-green.png",
37
+ "/defaultCover/science-pink.png",
38
+ "/defaultCover/admin-orange.png",
39
+ "/defaultCover/admin-blue.png",
40
+ "/defaultCover/travel-green.png",
41
+ "/defaultCover/travel-blue.png",
42
+ ];
43
+ backgroundImages.forEach((imagePath) => {
44
+ const result = convertToMobileThumbnails(imagePath);
45
+ expect(result).toHaveLength(3);
46
+ expect(result[0].scale).toBe(1);
47
+ expect(result[1].scale).toBe(2);
48
+ expect(result[2].scale).toBe(3);
49
+ });
50
+ });
51
+ });
52
+ describe("with /communities/defaultCover/ format", () => {
53
+ it("should convert /communities/defaultCover/admin-blue.png to mobile thumbnails", () => {
54
+ const result = convertToMobileThumbnails("/communities/defaultCover/admin-blue.png");
55
+ expect(result).toHaveLength(3);
56
+ expect(result[0]).toEqual({
57
+ uri: "/communities/public/mobile/defaultCover/admin-blue.png",
58
+ scale: 1,
59
+ });
60
+ expect(result[1]).toEqual({
61
+ uri: "/communities/public/mobile/defaultCover/admin-blue@2x.png",
62
+ scale: 2,
63
+ });
64
+ expect(result[2]).toEqual({
65
+ uri: "/communities/public/mobile/defaultCover/admin-blue@3x.png",
66
+ scale: 3,
67
+ });
68
+ });
69
+ it("should handle /communities/defaultCover/ format consistently with /defaultCover/", () => {
70
+ const result1 = convertToMobileThumbnails("/defaultCover/admin-blue.png");
71
+ const result2 = convertToMobileThumbnails("/communities/defaultCover/admin-blue.png");
72
+ expect(result1).toEqual(result2);
73
+ });
74
+ });
75
+ describe("with no image", () => {
76
+ it("should return empty array when imagePath is undefined", () => {
77
+ const result = convertToMobileThumbnails(undefined);
78
+ expect(result).toEqual([]);
79
+ });
80
+ it("should return empty array when imagePath is null", () => {
81
+ const result = convertToMobileThumbnails(null);
82
+ expect(result).toEqual([]);
83
+ });
84
+ it("should return empty array when imagePath is empty string", () => {
85
+ const result = convertToMobileThumbnails("");
86
+ expect(result).toEqual([]);
87
+ });
88
+ });
89
+ describe("with external URL", () => {
90
+ it("should return empty array for external URL (not in mapping)", () => {
91
+ const result = convertToMobileThumbnails("https://example.com/image.png");
92
+ expect(result).toEqual([]);
93
+ });
94
+ it("should return empty array for unknown image path", () => {
95
+ const result = convertToMobileThumbnails("/defaultCover/unknown-image.png");
96
+ expect(result).toEqual([]);
97
+ });
98
+ });
99
+ });
100
+ describe("mapCommunityWithThumbnails", () => {
101
+ it("should add mobileThumbnails to CommunityResponseDto", () => {
102
+ const community = {
103
+ id: 1,
104
+ title: "Test Community",
105
+ image: "/defaultCover/admin-blue.png",
106
+ };
107
+ const result = mapCommunityWithThumbnails(community);
108
+ expect(result.id).toBe(1);
109
+ expect(result.title).toBe("Test Community");
110
+ expect(result.image).toBe("/defaultCover/admin-blue.png");
111
+ expect(result.mobileThumbnails).toHaveLength(3);
112
+ expect(result.mobileThumbnails[0].scale).toBe(1);
113
+ expect(result.mobileThumbnails[1].scale).toBe(2);
114
+ expect(result.mobileThumbnails[2].scale).toBe(3);
115
+ });
116
+ it("should handle community with /communities/defaultCover/ format", () => {
117
+ const community = {
118
+ id: 1,
119
+ title: "Test Community",
120
+ image: "/communities/defaultCover/admin-blue.png",
121
+ };
122
+ const result = mapCommunityWithThumbnails(community);
123
+ expect(result.mobileThumbnails).toHaveLength(3);
124
+ });
125
+ it("should handle community with no image", () => {
126
+ const community = {
127
+ id: 1,
128
+ title: "Test Community",
129
+ image: undefined,
130
+ };
131
+ const result = mapCommunityWithThumbnails(community);
132
+ expect(result.mobileThumbnails).toEqual([]);
133
+ });
134
+ it("should handle community with external URL", () => {
135
+ const community = {
136
+ id: 1,
137
+ title: "Test Community",
138
+ image: "https://example.com/image.png",
139
+ };
140
+ const result = mapCommunityWithThumbnails(community);
141
+ expect(result.mobileThumbnails).toEqual([]);
142
+ });
143
+ });
144
+ describe("mapCommunitySummaryWithThumbnails", () => {
145
+ it("should add mobileThumbnails to CommunitySummaryDto", () => {
146
+ const community = {
147
+ id: 1,
148
+ title: "Test Community",
149
+ image: "/defaultCover/school-green.png",
150
+ };
151
+ const result = mapCommunitySummaryWithThumbnails(community);
152
+ expect(result.id).toBe(1);
153
+ expect(result.title).toBe("Test Community");
154
+ expect(result.mobileThumbnails).toHaveLength(3);
155
+ });
156
+ it("should preserve original properties", () => {
157
+ const community = {
158
+ id: 1,
159
+ title: "Test Community",
160
+ image: "/defaultCover/school-green.png",
161
+ };
162
+ const result = mapCommunitySummaryWithThumbnails(community);
163
+ expect(result.id).toBe(1);
164
+ expect(result.title).toBe("Test Community");
165
+ expect(result.image).toBe("/defaultCover/school-green.png");
166
+ });
167
+ });
168
+ describe("mapInvitationWithThumbnails", () => {
169
+ it("should add mobileThumbnails to community in invitation", () => {
170
+ const invitation = {
171
+ id: 1,
172
+ status: "PENDING",
173
+ community: {
174
+ id: 1,
175
+ title: "Test Community",
176
+ image: "/defaultCover/admin-blue.png",
177
+ },
178
+ };
179
+ const result = mapInvitationWithThumbnails(invitation);
180
+ expect(result.id).toBe(1);
181
+ expect(result.status).toBe("PENDING");
182
+ expect(result.community?.mobileThumbnails).toHaveLength(3);
183
+ });
184
+ it("should handle invitation without community", () => {
185
+ const invitation = {
186
+ id: 1,
187
+ status: "PENDING",
188
+ community: undefined,
189
+ };
190
+ const result = mapInvitationWithThumbnails(invitation);
191
+ expect(result.id).toBe(1);
192
+ expect(result.community).toBeUndefined();
193
+ });
194
+ });
195
+ describe("mapInvitationOrMemberWithThumbnails", () => {
196
+ it("should add mobileThumbnails to community in invitation or member", () => {
197
+ const item = {
198
+ id: 1,
199
+ community: {
200
+ id: 1,
201
+ title: "Test Community",
202
+ image: "/defaultCover/reading-pink.png",
203
+ },
204
+ };
205
+ const result = mapInvitationOrMemberWithThumbnails(item);
206
+ expect(result.id).toBe(1);
207
+ expect(result.community?.mobileThumbnails).toHaveLength(3);
208
+ });
209
+ it("should handle item without community", () => {
210
+ const item = {
211
+ id: 1,
212
+ community: undefined,
213
+ };
214
+ const result = mapInvitationOrMemberWithThumbnails(item);
215
+ expect(result.id).toBe(1);
216
+ expect(result.community).toBeUndefined();
217
+ });
218
+ });
219
+ describe("mapCommunitiesWithThumbnails", () => {
220
+ it("should map array of communities", () => {
221
+ const communities = [
222
+ {
223
+ id: 1,
224
+ title: "Community 1",
225
+ image: "/defaultCover/admin-blue.png",
226
+ },
227
+ {
228
+ id: 2,
229
+ title: "Community 2",
230
+ image: "/defaultCover/school-green.png",
231
+ },
232
+ ];
233
+ const result = mapCommunitiesWithThumbnails(communities);
234
+ expect(result).toHaveLength(2);
235
+ expect(result[0].mobileThumbnails).toHaveLength(3);
236
+ expect(result[1].mobileThumbnails).toHaveLength(3);
237
+ });
238
+ it("should handle empty array", () => {
239
+ const communities = [];
240
+ const result = mapCommunitiesWithThumbnails(communities);
241
+ expect(result).toEqual([]);
242
+ });
243
+ it("should handle array with mixed image types", () => {
244
+ const communities = [
245
+ {
246
+ id: 1,
247
+ title: "Community 1",
248
+ image: "/defaultCover/admin-blue.png",
249
+ },
250
+ {
251
+ id: 2,
252
+ title: "Community 2",
253
+ image: undefined,
254
+ },
255
+ {
256
+ id: 3,
257
+ title: "Community 3",
258
+ image: "https://example.com/image.png",
259
+ },
260
+ ];
261
+ const result = mapCommunitiesWithThumbnails(communities);
262
+ expect(result).toHaveLength(3);
263
+ expect(result[0].mobileThumbnails).toHaveLength(3);
264
+ expect(result[1].mobileThumbnails).toEqual([]);
265
+ expect(result[2].mobileThumbnails).toEqual([]);
266
+ });
267
+ });
268
+ describe("mapInvitationsWithThumbnails", () => {
269
+ it("should map array of invitations", () => {
270
+ const invitations = [
271
+ {
272
+ id: 1,
273
+ status: "PENDING",
274
+ community: {
275
+ id: 1,
276
+ title: "Community 1",
277
+ image: "/defaultCover/admin-blue.png",
278
+ },
279
+ },
280
+ {
281
+ id: 2,
282
+ status: "ACCEPTED",
283
+ community: {
284
+ id: 2,
285
+ title: "Community 2",
286
+ image: "/defaultCover/school-green.png",
287
+ },
288
+ },
289
+ ];
290
+ const result = mapInvitationsWithThumbnails(invitations);
291
+ expect(result).toHaveLength(2);
292
+ expect(result[0].community?.mobileThumbnails).toHaveLength(3);
293
+ expect(result[1].community?.mobileThumbnails).toHaveLength(3);
294
+ });
295
+ it("should handle empty array", () => {
296
+ const invitations = [];
297
+ const result = mapInvitationsWithThumbnails(invitations);
298
+ expect(result).toEqual([]);
299
+ });
300
+ });
301
+ describe("mapInvitationsOrMembersWithThumbnails", () => {
302
+ it("should map array of invitations or members", () => {
303
+ const items = [
304
+ {
305
+ id: 1,
306
+ community: {
307
+ id: 1,
308
+ title: "Community 1",
309
+ image: "/defaultCover/admin-blue.png",
310
+ },
311
+ },
312
+ {
313
+ id: 2,
314
+ community: {
315
+ id: 2,
316
+ title: "Community 2",
317
+ image: "/communities/defaultCover/reading-pink.png",
318
+ },
319
+ },
320
+ ];
321
+ const result = mapInvitationsOrMembersWithThumbnails(items);
322
+ expect(result).toHaveLength(2);
323
+ expect(result[0].community?.mobileThumbnails).toHaveLength(3);
324
+ expect(result[1].community?.mobileThumbnails).toHaveLength(3);
325
+ });
326
+ it("should handle empty array", () => {
327
+ const items = [];
328
+ const result = mapInvitationsOrMembersWithThumbnails(items);
329
+ expect(result).toEqual([]);
330
+ });
331
+ it("should handle mixed formats in array", () => {
332
+ const items = [
333
+ {
334
+ id: 1,
335
+ community: {
336
+ id: 1,
337
+ title: "Community 1",
338
+ image: "/defaultCover/admin-blue.png",
339
+ },
340
+ },
341
+ {
342
+ id: 2,
343
+ community: {
344
+ id: 2,
345
+ title: "Community 2",
346
+ image: "/communities/defaultCover/admin-blue.png",
347
+ },
348
+ },
349
+ ];
350
+ const result = mapInvitationsOrMembersWithThumbnails(items);
351
+ expect(result).toHaveLength(2);
352
+ expect(result[0].community?.mobileThumbnails).toEqual(result[1].community?.mobileThumbnails);
353
+ });
354
+ });
355
+ //# sourceMappingURL=community-image.util.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"community-image.util.test.js","sourceRoot":"","sources":["../../../src/utils/community-image.util.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,5 @@
1
1
  export * from "./resource-url.util";
2
2
  export * from "./rights.utils";
3
+ export * from "./community-image.types";
4
+ export * from "./community-image.util";
5
+ export * from "./background-images.constants";
@@ -1,19 +1,6 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./resource-url.util"), exports);
18
- __exportStar(require("./rights.utils"), exports);
1
+ export * from "./resource-url.util";
2
+ export * from "./rights.utils";
3
+ export * from "./community-image.types";
4
+ export * from "./community-image.util";
5
+ export * from "./background-images.constants";
19
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,iDAA+B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC"}
@@ -1,33 +1,30 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getResourceUrl = getResourceUrl;
4
- const dtos_1 = require("../dtos");
5
- function getResourceUrl(resource) {
1
+ import { AppName } from "../dtos";
2
+ export function getResourceUrl(resource) {
6
3
  if (!resource)
7
4
  return undefined;
8
5
  if (resource.url)
9
6
  return resource.url;
10
7
  if (resource.resourceEntId) {
11
8
  switch (resource.appName) {
12
- case dtos_1.AppName.BLOG:
9
+ case AppName.BLOG:
13
10
  return `/blog/id/${resource.resourceEntId}`;
14
- case dtos_1.AppName.COLLABORATIVEDITOR:
11
+ case AppName.COLLABORATIVEDITOR:
15
12
  return `/collaborativeeditor#/view/${resource.resourceEntId}`;
16
- case dtos_1.AppName.WORKSPACE:
13
+ case AppName.WORKSPACE:
17
14
  return `/workspace/document/${resource.resourceEntId}`;
18
- case dtos_1.AppName.TIMELINEGENERATOR:
15
+ case AppName.TIMELINEGENERATOR:
19
16
  return `/timelinegenerator#/view/${resource.resourceEntId}`;
20
- case dtos_1.AppName.SCRAPBOOK:
17
+ case AppName.SCRAPBOOK:
21
18
  return `/scrapbook#/view-scrapbook/${resource.resourceEntId}`;
22
- case dtos_1.AppName.MINDMAP:
19
+ case AppName.MINDMAP:
23
20
  return `/mindmap/id/${resource.resourceEntId}`;
24
- case dtos_1.AppName.WIKI:
21
+ case AppName.WIKI:
25
22
  return `/wiki/id/${resource.resourceEntId}`;
26
- case dtos_1.AppName.EXERCIZER:
23
+ case AppName.EXERCIZER:
27
24
  return `/exercizer#/subject/edit/${resource.resourceEntId}`;
28
- case dtos_1.AppName.FORM:
25
+ case AppName.FORM:
29
26
  return `/form/id/${resource.resourceEntId}`;
30
- case dtos_1.AppName.COLLABORATIVEWALL:
27
+ case AppName.COLLABORATIVEWALL:
31
28
  return `/collaborativewall/id/${resource.resourceEntId}`;
32
29
  default:
33
30
  return `/${resource.appName}/id/${resource.resourceEntId}`;
@@ -1 +1 @@
1
- {"version":3,"file":"resource-url.util.js","sourceRoot":"","sources":["../../../src/utils/resource-url.util.ts"],"names":[],"mappings":";;AAOA,wCA+BC;AAtCD,kCAA+C;AAO/C,SAAgB,cAAc,CAAC,QAAqB;IAClD,IAAI,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChC,IAAI,QAAQ,CAAC,GAAG;QAAE,OAAO,QAAQ,CAAC,GAAG,CAAC;IAEtC,IAAI,QAAQ,CAAC,aAAa,EAAE,CAAC;QAC3B,QAAQ,QAAQ,CAAC,OAAO,EAAE,CAAC;YACzB,KAAK,cAAO,CAAC,IAAI;gBACf,OAAO,YAAY,QAAQ,CAAC,aAAa,EAAE,CAAC;YAC9C,KAAK,cAAO,CAAC,kBAAkB;gBAC7B,OAAO,8BAA8B,QAAQ,CAAC,aAAa,EAAE,CAAC;YAChE,KAAK,cAAO,CAAC,SAAS;gBACpB,OAAO,uBAAuB,QAAQ,CAAC,aAAa,EAAE,CAAC;YACzD,KAAK,cAAO,CAAC,iBAAiB;gBAC5B,OAAO,4BAA4B,QAAQ,CAAC,aAAa,EAAE,CAAC;YAC9D,KAAK,cAAO,CAAC,SAAS;gBACpB,OAAO,8BAA8B,QAAQ,CAAC,aAAa,EAAE,CAAC;YAChE,KAAK,cAAO,CAAC,OAAO;gBAClB,OAAO,eAAe,QAAQ,CAAC,aAAa,EAAE,CAAC;YACjD,KAAK,cAAO,CAAC,IAAI;gBACf,OAAO,YAAY,QAAQ,CAAC,aAAa,EAAE,CAAC;YAC9C,KAAK,cAAO,CAAC,SAAS;gBACpB,OAAO,4BAA4B,QAAQ,CAAC,aAAa,EAAE,CAAC;YAC9D,KAAK,cAAO,CAAC,IAAI;gBACf,OAAO,YAAY,QAAQ,CAAC,aAAa,EAAE,CAAC;YAC9C,KAAK,cAAO,CAAC,iBAAiB;gBAC5B,OAAO,yBAAyB,QAAQ,CAAC,aAAa,EAAE,CAAC;YAC3D;gBACE,OAAO,IAAI,QAAQ,CAAC,OAAO,OAAO,QAAQ,CAAC,aAAa,EAAE,CAAC;QAC/D,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"resource-url.util.js","sourceRoot":"","sources":["../../../src/utils/resource-url.util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAe,MAAM,SAAS,CAAC;AAO/C,MAAM,UAAU,cAAc,CAAC,QAAqB;IAClD,IAAI,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChC,IAAI,QAAQ,CAAC,GAAG;QAAE,OAAO,QAAQ,CAAC,GAAG,CAAC;IAEtC,IAAI,QAAQ,CAAC,aAAa,EAAE,CAAC;QAC3B,QAAQ,QAAQ,CAAC,OAAO,EAAE,CAAC;YACzB,KAAK,OAAO,CAAC,IAAI;gBACf,OAAO,YAAY,QAAQ,CAAC,aAAa,EAAE,CAAC;YAC9C,KAAK,OAAO,CAAC,kBAAkB;gBAC7B,OAAO,8BAA8B,QAAQ,CAAC,aAAa,EAAE,CAAC;YAChE,KAAK,OAAO,CAAC,SAAS;gBACpB,OAAO,uBAAuB,QAAQ,CAAC,aAAa,EAAE,CAAC;YACzD,KAAK,OAAO,CAAC,iBAAiB;gBAC5B,OAAO,4BAA4B,QAAQ,CAAC,aAAa,EAAE,CAAC;YAC9D,KAAK,OAAO,CAAC,SAAS;gBACpB,OAAO,8BAA8B,QAAQ,CAAC,aAAa,EAAE,CAAC;YAChE,KAAK,OAAO,CAAC,OAAO;gBAClB,OAAO,eAAe,QAAQ,CAAC,aAAa,EAAE,CAAC;YACjD,KAAK,OAAO,CAAC,IAAI;gBACf,OAAO,YAAY,QAAQ,CAAC,aAAa,EAAE,CAAC;YAC9C,KAAK,OAAO,CAAC,SAAS;gBACpB,OAAO,4BAA4B,QAAQ,CAAC,aAAa,EAAE,CAAC;YAC9D,KAAK,OAAO,CAAC,IAAI;gBACf,OAAO,YAAY,QAAQ,CAAC,aAAa,EAAE,CAAC;YAC9C,KAAK,OAAO,CAAC,iBAAiB;gBAC5B,OAAO,yBAAyB,QAAQ,CAAC,aAAa,EAAE,CAAC;YAC3D;gBACE,OAAO,IAAI,QAAQ,CAAC,OAAO,OAAO,QAAQ,CAAC,aAAa,EAAE,CAAC;QAC/D,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.WORKFLOW_RIGHTS = void 0;
4
- exports.WORKFLOW_RIGHTS = {
1
+ export const WORKFLOW_RIGHTS = {
5
2
  COMMUNITY_ACCESS: "community.access",
6
3
  COMMUNITY_CREATE: "community.create",
7
4
  };
@@ -1 +1 @@
1
- {"version":3,"file":"rights.utils.js","sourceRoot":"","sources":["../../../src/utils/rights.utils.ts"],"names":[],"mappings":";;;AAAa,QAAA,eAAe,GAAG;IAI7B,gBAAgB,EAAE,kBAAkB;IAKpC,gBAAgB,EAAE,kBAAkB;CAC5B,CAAC"}
1
+ {"version":3,"file":"rights.utils.js","sourceRoot":"","sources":["../../../src/utils/rights.utils.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG;IAI7B,gBAAgB,EAAE,kBAAkB;IAKpC,gBAAgB,EAAE,kBAAkB;CAC5B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@edifice.io/community-client-rest",
3
- "version": "1.0.0-develop-pedago.13",
3
+ "version": "1.0.0-develop.20251204185004",
4
4
  "description": "",
5
5
  "author": "",
6
6
  "private": false,
@@ -18,19 +18,32 @@
18
18
  "module": "dist/browser/index.js",
19
19
  "types": "dist/node/index.d.ts",
20
20
  "scripts": {
21
- "prebuild": "rm -rf dist",
22
- "build:node": "tsc -p tsconfig.node.json --outDir dist/node && tsc-alias -p tsconfig.node.json --outDir dist/node",
21
+ "build": "pnpm run build:node && pnpm run build:browser && pnpm run build:react-native",
22
+ "build:prod": "NODE_ENV=production pnpm run build:node && pnpm run build:browser && pnpm run build:react-native",
23
23
  "build:browser": "tsc -p tsconfig.browser.json --outDir dist/browser && tsc-alias -p tsconfig.browser.json --outDir dist/browser",
24
+ "build:node": "tsc -p tsconfig.node.json --outDir dist/node && tsc-alias -p tsconfig.node.json --outDir dist/node",
24
25
  "build:react-native": "mkdir -p dist/react-native && cp -r dist/browser/* dist/react-native/ && find dist/react-native -name '*.node.js*' -delete && cp package.json.rn dist/react-native/package.json",
25
- "build": "pnpm run build:node && pnpm run build:browser && pnpm run build:react-native",
26
- "publish:main": "npm publish --no-git-checks --tag latest --access public",
27
- "publish:react-native": "cp .npmrc dist/react-native/ && cd dist/react-native && npm publish --no-git-checks --tag latest --access public"
26
+ "clean": "rm -rf dist node_modules",
27
+ "format": "prettier --write src",
28
+ "lint": "eslint src",
29
+ "lint:fix": "eslint src --fix",
30
+ "prebuild": "pnpm clean && pnpm install",
31
+ "publish:main": "npm publish --no-git-checks --access public",
32
+ "publish:react-native": "cp .npmrc dist/react-native/ && cd dist/react-native && npm publish --no-git-checks --access public",
33
+ "publish:all": "pnpm run sync:rn-version && pnpm run publish:main && pnpm run publish:react-native",
34
+ "prepublishOnly": "pnpm run sync:rn-version",
35
+ "sync:rn-version": "edifice-update-rn-version",
36
+ "test": "pnpm run prebuild && vitest",
37
+ "test:coverage": "vitest --coverage",
38
+ "test:ui": "vitest --ui",
39
+ "test:watch": "vitest --watch"
28
40
  },
29
41
  "dependencies": {
30
- "@nestjs/swagger": "^11.2.0",
31
- "class-transformer": "^0.5.1",
32
- "class-validator": "^0.14.2",
33
- "uuid": "^11.1.0"
42
+ "class-transformer": "0.5.1",
43
+ "class-validator": "0.14.2",
44
+ "@edifice.io/client": "develop-pedago",
45
+ "@nestjs/swagger": "11.2.0",
46
+ "uuid": "11.1.0"
34
47
  },
35
48
  "jest": {
36
49
  "moduleFileExtensions": [
@@ -54,10 +67,12 @@
54
67
  "pnpm": ">=8"
55
68
  },
56
69
  "devDependencies": {
57
- "@edifice.io/client": "develop-pedago",
58
- "@types/node": "^22.16.0",
59
- "@types/uuid": "^10.0.0",
60
- "tsc-alias": "^1.8.16",
61
- "typescript": "^5.8.3"
70
+ "@edifice.io/edifice-nestjs-core": "develop-pedago",
71
+ "vitest": "latest",
72
+ "@vitest/ui": "latest",
73
+ "@vitest/coverage-v8": "latest",
74
+ "@types/uuid": "10.0.0",
75
+ "tsc-alias": "1.8.16",
76
+ "typescript": "5.9.2"
62
77
  }
63
- }
78
+ }
package/package.json.rn CHANGED
@@ -1,14 +1,14 @@
1
1
  {
2
2
  "name": "@edifice.io/community-client-rest-rn",
3
- "version": "1.0.0-develop-pedago.13",
3
+ "version": "1.0.0-develop.20251204185004",
4
4
  "description": "React Native compatible version of community-client-rest",
5
5
  "author": "",
6
6
  "private": false,
7
7
  "license": "UNLICENSED",
8
8
  "main": "index.js",
9
9
  "dependencies": {
10
- "uuid": "^11.1.0",
11
- "class-transformer": "^0.5.1",
12
- "class-validator": "^0.14.2"
10
+ "uuid": "11.1.0",
11
+ "class-transformer": "0.5.1",
12
+ "class-validator": "0.14.2"
13
13
  }
14
- }
14
+ }
@@ -0,0 +1,25 @@
1
+ // eslint-disable-next-line @typescript-eslint/no-require-imports
2
+ const fs = require("fs");
3
+
4
+ // Get current version from package.json
5
+ const pkgPath = "package.json";
6
+ const pkg = JSON.parse(fs.readFileSync(pkgPath));
7
+
8
+ // Generate new timestamp
9
+ const now = new Date();
10
+ const pad = (n) => n.toString().padStart(2, "0");
11
+ const timestamp = `${now.getFullYear()}${pad(now.getMonth() + 1)}${pad(now.getDate())}${pad(now.getHours())}${pad(now.getMinutes())}${pad(now.getSeconds())}`;
12
+
13
+ // Remove all trailing timestamps and add the new one
14
+ const baseVersion = pkg.version.replace(/(\.\d{14})+$/, "");
15
+ const newVersion = `${baseVersion}.${timestamp}`;
16
+ pkg.version = newVersion;
17
+ fs.writeFileSync(pkgPath, JSON.stringify(pkg, null, 2) + "\n");
18
+
19
+ // Sync version to package.json.rn
20
+ const rnPath = "package.json.rn";
21
+ const rn = JSON.parse(fs.readFileSync(rnPath));
22
+ rn.version = newVersion;
23
+ fs.writeFileSync(rnPath, JSON.stringify(rn, null, 2) + "\n");
24
+
25
+ console.log("Client version updated:", newVersion);