@intlayer/design-system 8.11.0-canary.0 → 8.11.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 (188) hide show
  1. package/dist/esm/api/hooks/ai.mjs +66 -0
  2. package/dist/esm/api/hooks/ai.mjs.map +1 -0
  3. package/dist/esm/api/hooks/audit.mjs +34 -0
  4. package/dist/esm/api/hooks/audit.mjs.map +1 -0
  5. package/dist/esm/api/hooks/auth.mjs +217 -0
  6. package/dist/esm/api/hooks/auth.mjs.map +1 -0
  7. package/dist/esm/api/hooks/bitbucket.mjs +39 -0
  8. package/dist/esm/api/hooks/bitbucket.mjs.map +1 -0
  9. package/dist/esm/api/hooks/dictionary.mjs +105 -0
  10. package/dist/esm/api/hooks/dictionary.mjs.map +1 -0
  11. package/dist/esm/api/hooks/discussions.mjs +37 -0
  12. package/dist/esm/api/hooks/discussions.mjs.map +1 -0
  13. package/dist/esm/api/hooks/editor.mjs +24 -0
  14. package/dist/esm/api/hooks/editor.mjs.map +1 -0
  15. package/dist/esm/api/hooks/github.mjs +54 -0
  16. package/dist/esm/api/hooks/github.mjs.map +1 -0
  17. package/dist/esm/api/hooks/gitlab.mjs +43 -0
  18. package/dist/esm/api/hooks/gitlab.mjs.map +1 -0
  19. package/dist/esm/api/hooks/newsletter.mjs +31 -0
  20. package/dist/esm/api/hooks/newsletter.mjs.map +1 -0
  21. package/dist/esm/api/hooks/organization.mjs +123 -0
  22. package/dist/esm/api/hooks/organization.mjs.map +1 -0
  23. package/dist/esm/api/hooks/project.mjs +187 -0
  24. package/dist/esm/api/hooks/project.mjs.map +1 -0
  25. package/dist/esm/api/hooks/reviewer.mjs +288 -0
  26. package/dist/esm/api/hooks/reviewer.mjs.map +1 -0
  27. package/dist/esm/api/hooks/search.mjs +18 -0
  28. package/dist/esm/api/hooks/search.mjs.map +1 -0
  29. package/dist/esm/api/hooks/showcaseProject.mjs +95 -0
  30. package/dist/esm/api/hooks/showcaseProject.mjs.map +1 -0
  31. package/dist/esm/api/hooks/stripe.mjs +261 -0
  32. package/dist/esm/api/hooks/stripe.mjs.map +1 -0
  33. package/dist/esm/api/hooks/tag.mjs +45 -0
  34. package/dist/esm/api/hooks/tag.mjs.map +1 -0
  35. package/dist/esm/api/hooks/translate.mjs +47 -0
  36. package/dist/esm/api/hooks/translate.mjs.map +1 -0
  37. package/dist/esm/api/hooks/user.mjs +58 -0
  38. package/dist/esm/api/hooks/user.mjs.map +1 -0
  39. package/dist/esm/api/hooks/utils.mjs +30 -0
  40. package/dist/esm/api/hooks/utils.mjs.map +1 -0
  41. package/dist/esm/api/index.mjs +26 -0
  42. package/dist/esm/{hooks → api}/useAuth/useAuth.mjs +1 -1
  43. package/dist/esm/api/useAuth/useAuth.mjs.map +1 -0
  44. package/dist/esm/{hooks → api}/useAuth/useOAuth2.mjs +2 -2
  45. package/dist/esm/api/useAuth/useOAuth2.mjs.map +1 -0
  46. package/dist/esm/{hooks → api}/useAuth/useSession.mjs +2 -3
  47. package/dist/esm/api/useAuth/useSession.mjs.map +1 -0
  48. package/dist/esm/api/useIntlayerAPI.mjs +123 -0
  49. package/dist/esm/api/useIntlayerAPI.mjs.map +1 -0
  50. package/dist/esm/{hooks → api}/useUser/index.mjs +2 -2
  51. package/dist/esm/api/useUser/index.mjs.map +1 -0
  52. package/dist/esm/components/Badge/index.mjs +1 -3
  53. package/dist/esm/components/Badge/index.mjs.map +1 -1
  54. package/dist/esm/components/Breadcrumb/index.mjs +0 -1
  55. package/dist/esm/components/Breadcrumb/index.mjs.map +1 -1
  56. package/dist/esm/components/Button/Button.mjs +2 -4
  57. package/dist/esm/components/Button/Button.mjs.map +1 -1
  58. package/dist/esm/components/ContentEditor/ContentEditorTextArea.mjs +1 -1
  59. package/dist/esm/components/ContentEditor/ContentEditorTextArea.mjs.map +1 -1
  60. package/dist/esm/components/DictionaryFieldEditor/ContentEditorView/TextEditor.mjs +1 -1
  61. package/dist/esm/components/DictionaryFieldEditor/ContentEditorView/TextEditor.mjs.map +1 -1
  62. package/dist/esm/components/DictionaryFieldEditor/DictionaryCreationForm/DictionaryCreationForm.mjs +3 -2
  63. package/dist/esm/components/DictionaryFieldEditor/DictionaryCreationForm/DictionaryCreationForm.mjs.map +1 -1
  64. package/dist/esm/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.mjs +4 -2
  65. package/dist/esm/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.mjs.map +1 -1
  66. package/dist/esm/components/DictionaryFieldEditor/SaveForm/SaveForm.mjs +3 -2
  67. package/dist/esm/components/DictionaryFieldEditor/SaveForm/SaveForm.mjs.map +1 -1
  68. package/dist/esm/components/Input/Checkbox.mjs +0 -2
  69. package/dist/esm/components/Input/Checkbox.mjs.map +1 -1
  70. package/dist/esm/components/Label/index.mjs +2 -2
  71. package/dist/esm/components/Label/index.mjs.map +1 -1
  72. package/dist/esm/components/LanguageBackground/LanguageSection.mjs +8 -6
  73. package/dist/esm/components/LanguageBackground/LanguageSection.mjs.map +1 -1
  74. package/dist/esm/components/LanguageBackground/index.mjs +7 -5
  75. package/dist/esm/components/LanguageBackground/index.mjs.map +1 -1
  76. package/dist/esm/components/Link/Link.mjs +0 -7
  77. package/dist/esm/components/Link/Link.mjs.map +1 -1
  78. package/dist/esm/components/Pagination/Pagination.mjs +1 -2
  79. package/dist/esm/components/Pagination/Pagination.mjs.map +1 -1
  80. package/dist/esm/components/SwitchSelector/SwitchSelector.mjs +3 -5
  81. package/dist/esm/components/SwitchSelector/SwitchSelector.mjs.map +1 -1
  82. package/dist/esm/components/SwitchSelector/VerticalSwitchSelector.mjs +3 -3
  83. package/dist/esm/components/SwitchSelector/VerticalSwitchSelector.mjs.map +1 -1
  84. package/dist/esm/components/TabSelector/TabSelector.mjs +3 -3
  85. package/dist/esm/components/TabSelector/TabSelector.mjs.map +1 -1
  86. package/dist/esm/components/Toaster/Toast.mjs +3 -3
  87. package/dist/esm/components/Toaster/Toast.mjs.map +1 -1
  88. package/dist/esm/hooks/index.mjs +1 -7
  89. package/dist/esm/routes.mjs +4 -1
  90. package/dist/esm/routes.mjs.map +1 -1
  91. package/dist/types/api/hooks/ai.d.ts +12 -0
  92. package/dist/types/api/hooks/ai.d.ts.map +1 -0
  93. package/dist/types/api/hooks/audit.d.ts +10 -0
  94. package/dist/types/api/hooks/audit.d.ts.map +1 -0
  95. package/dist/types/api/hooks/auth.d.ts +29 -0
  96. package/dist/types/api/hooks/auth.d.ts.map +1 -0
  97. package/dist/types/api/hooks/bitbucket.d.ts +8 -0
  98. package/dist/types/api/hooks/bitbucket.d.ts.map +1 -0
  99. package/dist/types/api/hooks/dictionary.d.ts +15 -0
  100. package/dist/types/api/hooks/dictionary.d.ts.map +1 -0
  101. package/dist/types/api/hooks/discussions.d.ts +8 -0
  102. package/dist/types/api/hooks/discussions.d.ts.map +1 -0
  103. package/dist/types/api/hooks/editor.d.ts +6 -0
  104. package/dist/types/api/hooks/editor.d.ts.map +1 -0
  105. package/dist/types/api/hooks/github.d.ts +12 -0
  106. package/dist/types/api/hooks/github.d.ts.map +1 -0
  107. package/dist/types/api/hooks/gitlab.d.ts +8 -0
  108. package/dist/types/api/hooks/gitlab.d.ts.map +1 -0
  109. package/dist/types/api/hooks/newsletter.d.ts +7 -0
  110. package/dist/types/api/hooks/newsletter.d.ts.map +1 -0
  111. package/dist/types/api/hooks/organization.d.ts +16 -0
  112. package/dist/types/api/hooks/organization.d.ts.map +1 -0
  113. package/dist/types/api/hooks/project.d.ts +23 -0
  114. package/dist/types/api/hooks/project.d.ts.map +1 -0
  115. package/dist/types/api/hooks/reviewer.d.ts +39 -0
  116. package/dist/types/api/hooks/reviewer.d.ts.map +1 -0
  117. package/dist/types/api/hooks/search.d.ts +7 -0
  118. package/dist/types/api/hooks/search.d.ts.map +1 -0
  119. package/dist/types/api/hooks/showcaseProject.d.ts +16 -0
  120. package/dist/types/api/hooks/showcaseProject.d.ts.map +1 -0
  121. package/dist/types/api/hooks/stripe.d.ts +33 -0
  122. package/dist/types/api/hooks/stripe.d.ts.map +1 -0
  123. package/dist/types/api/hooks/tag.d.ts +11 -0
  124. package/dist/types/api/hooks/tag.d.ts.map +1 -0
  125. package/dist/types/api/hooks/translate.d.ts +8 -0
  126. package/dist/types/api/hooks/translate.d.ts.map +1 -0
  127. package/dist/types/api/hooks/user.d.ts +13 -0
  128. package/dist/types/api/hooks/user.d.ts.map +1 -0
  129. package/dist/types/api/hooks/utils.d.ts +23 -0
  130. package/dist/types/api/hooks/utils.d.ts.map +1 -0
  131. package/dist/types/api/index.d.ts +25 -0
  132. package/dist/types/{hooks → api}/useAuth/useAuth.d.ts +1 -1
  133. package/dist/types/api/useAuth/useAuth.d.ts.map +1 -0
  134. package/dist/types/{hooks → api}/useAuth/useOAuth2.d.ts +1 -1
  135. package/dist/types/api/useAuth/useOAuth2.d.ts.map +1 -0
  136. package/dist/types/{hooks → api}/useAuth/useSession.d.ts +1 -1
  137. package/dist/types/api/useAuth/useSession.d.ts.map +1 -0
  138. package/dist/types/api/useIntlayerAPI.d.ts +297 -0
  139. package/dist/types/api/useIntlayerAPI.d.ts.map +1 -0
  140. package/dist/types/{hooks → api}/useUser/index.d.ts +1 -1
  141. package/dist/types/api/useUser/index.d.ts.map +1 -0
  142. package/dist/types/components/Badge/index.d.ts +3 -4
  143. package/dist/types/components/Badge/index.d.ts.map +1 -1
  144. package/dist/types/components/Breadcrumb/index.d.ts.map +1 -1
  145. package/dist/types/components/Button/Button.d.ts +5 -6
  146. package/dist/types/components/Button/Button.d.ts.map +1 -1
  147. package/dist/types/components/CollapsibleTable/CollapsibleTable.d.ts +1 -1
  148. package/dist/types/components/Command/index.d.ts +1 -1
  149. package/dist/types/components/Container/index.d.ts +4 -4
  150. package/dist/types/components/Input/Checkbox.d.ts +1 -2
  151. package/dist/types/components/Input/Checkbox.d.ts.map +1 -1
  152. package/dist/types/components/LanguageBackground/index.d.ts.map +1 -1
  153. package/dist/types/components/Link/Link.d.ts +3 -4
  154. package/dist/types/components/Link/Link.d.ts.map +1 -1
  155. package/dist/types/components/Pagination/Pagination.d.ts +1 -1
  156. package/dist/types/components/Pagination/Pagination.d.ts.map +1 -1
  157. package/dist/types/components/SwitchSelector/SwitchSelector.d.ts +2 -3
  158. package/dist/types/components/SwitchSelector/SwitchSelector.d.ts.map +1 -1
  159. package/dist/types/components/SwitchSelector/VerticalSwitchSelector.d.ts +1 -1
  160. package/dist/types/components/SwitchSelector/VerticalSwitchSelector.d.ts.map +1 -1
  161. package/dist/types/components/TabSelector/TabSelector.d.ts +2 -2
  162. package/dist/types/components/TabSelector/TabSelector.d.ts.map +1 -1
  163. package/dist/types/components/Tag/index.d.ts +2 -2
  164. package/dist/types/components/Toaster/Toast.d.ts +1 -1
  165. package/dist/types/hooks/index.d.ts +1 -7
  166. package/dist/types/providers/ReactQueryProvider.d.ts +1 -1
  167. package/dist/types/routes.d.ts +4 -1
  168. package/dist/types/routes.d.ts.map +1 -1
  169. package/package.json +28 -23
  170. package/tailwind.css +0 -19
  171. package/dist/esm/hooks/reactQuery.mjs +0 -1586
  172. package/dist/esm/hooks/reactQuery.mjs.map +0 -1
  173. package/dist/esm/hooks/useAuth/useAuth.mjs.map +0 -1
  174. package/dist/esm/hooks/useAuth/useOAuth2.mjs.map +0 -1
  175. package/dist/esm/hooks/useAuth/useSession.mjs.map +0 -1
  176. package/dist/esm/hooks/useIntlayerAPI.mjs +0 -22
  177. package/dist/esm/hooks/useIntlayerAPI.mjs.map +0 -1
  178. package/dist/esm/hooks/useUser/index.mjs.map +0 -1
  179. package/dist/types/hooks/reactQuery.d.ts +0 -236
  180. package/dist/types/hooks/reactQuery.d.ts.map +0 -1
  181. package/dist/types/hooks/useAuth/useAuth.d.ts.map +0 -1
  182. package/dist/types/hooks/useAuth/useOAuth2.d.ts.map +0 -1
  183. package/dist/types/hooks/useAuth/useSession.d.ts.map +0 -1
  184. package/dist/types/hooks/useIntlayerAPI.d.ts +0 -14
  185. package/dist/types/hooks/useIntlayerAPI.d.ts.map +0 -1
  186. package/dist/types/hooks/useUser/index.d.ts.map +0 -1
  187. /package/dist/esm/{hooks → api}/useAuth/index.mjs +0 -0
  188. /package/dist/types/{hooks → api}/useAuth/index.d.ts +0 -0
@@ -0,0 +1,288 @@
1
+ 'use client';
2
+
3
+ import { useReviewerAPI } from "../useIntlayerAPI.mjs";
4
+ import { useAppQuery } from "./utils.mjs";
5
+ import { useMutation, useQueryClient } from "@tanstack/react-query";
6
+
7
+ //#region src/api/hooks/reviewer.ts
8
+ const useGetReviewerMarketplace = (params, options) => {
9
+ const reviewerAPI = useReviewerAPI();
10
+ return useAppQuery({
11
+ queryKey: [
12
+ "reviewer",
13
+ "marketplace",
14
+ params
15
+ ],
16
+ queryFn: ({ signal }) => reviewerAPI.getMarketplace(params, { signal }),
17
+ ...options
18
+ });
19
+ };
20
+ const useGetReviewerPriceDistribution = (params, options) => {
21
+ const reviewerAPI = useReviewerAPI();
22
+ return useAppQuery({
23
+ queryKey: [
24
+ "reviewer",
25
+ "marketplace",
26
+ "price-distribution",
27
+ params
28
+ ],
29
+ queryFn: ({ signal }) => reviewerAPI.getPriceDistribution(params, { signal }),
30
+ ...options
31
+ });
32
+ };
33
+ const useGetReviewerById = (reviewerId, options) => {
34
+ const reviewerAPI = useReviewerAPI();
35
+ return useAppQuery({
36
+ queryKey: ["reviewer", reviewerId],
37
+ queryFn: ({ signal }) => reviewerAPI.getReviewerById(reviewerId, { signal }),
38
+ enabled: Boolean(reviewerId),
39
+ ...options
40
+ });
41
+ };
42
+ const useGetReviewerReviews = (reviewerId, params, options) => {
43
+ const reviewerAPI = useReviewerAPI();
44
+ return useAppQuery({
45
+ queryKey: [
46
+ "reviewer",
47
+ reviewerId,
48
+ "reviews",
49
+ params
50
+ ],
51
+ queryFn: ({ signal }) => reviewerAPI.getReviewerReviews(reviewerId, params, { signal }),
52
+ enabled: Boolean(reviewerId),
53
+ ...options
54
+ });
55
+ };
56
+ const useGetMyReviewerProfile = (options) => {
57
+ const reviewerAPI = useReviewerAPI();
58
+ return useAppQuery({
59
+ queryKey: ["reviewer", "me"],
60
+ queryFn: ({ signal }) => reviewerAPI.getMyReviewerProfile({ signal }),
61
+ requireUser: true,
62
+ ...options
63
+ });
64
+ };
65
+ const useRegisterAsReviewer = () => {
66
+ const reviewerAPI = useReviewerAPI();
67
+ const queryClient = useQueryClient();
68
+ return useMutation({
69
+ mutationKey: ["reviewer", "register"],
70
+ mutationFn: (body) => reviewerAPI.registerAsReviewer(body),
71
+ onSuccess: () => {
72
+ queryClient.invalidateQueries({ queryKey: ["reviewer", "me"] });
73
+ queryClient.invalidateQueries({ queryKey: ["reviewer", "marketplace"] });
74
+ }
75
+ });
76
+ };
77
+ const useUpdateReviewerProfile = () => {
78
+ const reviewerAPI = useReviewerAPI();
79
+ const queryClient = useQueryClient();
80
+ return useMutation({
81
+ mutationKey: ["reviewer", "update"],
82
+ mutationFn: (body) => reviewerAPI.updateReviewerProfile(body),
83
+ onSuccess: () => {
84
+ queryClient.invalidateQueries({ queryKey: ["reviewer", "me"] });
85
+ }
86
+ });
87
+ };
88
+ const useDeleteReviewerProfile = () => {
89
+ const reviewerAPI = useReviewerAPI();
90
+ const queryClient = useQueryClient();
91
+ return useMutation({
92
+ mutationKey: ["reviewer", "delete"],
93
+ mutationFn: () => reviewerAPI.deleteReviewerProfile(),
94
+ onSuccess: () => {
95
+ queryClient.invalidateQueries({ queryKey: ["reviewer", "me"] });
96
+ queryClient.invalidateQueries({ queryKey: ["reviewer", "marketplace"] });
97
+ }
98
+ });
99
+ };
100
+ const useUploadReviewerMainPicture = () => {
101
+ const reviewerAPI = useReviewerAPI();
102
+ const queryClient = useQueryClient();
103
+ return useMutation({
104
+ mutationKey: [
105
+ "reviewer",
106
+ "picture",
107
+ "main"
108
+ ],
109
+ mutationFn: (file) => reviewerAPI.uploadMainPicture(file),
110
+ onSuccess: () => {
111
+ queryClient.invalidateQueries({ queryKey: ["reviewer", "me"] });
112
+ }
113
+ });
114
+ };
115
+ const useUploadReviewerCoverPicture = () => {
116
+ const reviewerAPI = useReviewerAPI();
117
+ const queryClient = useQueryClient();
118
+ return useMutation({
119
+ mutationKey: [
120
+ "reviewer",
121
+ "picture",
122
+ "cover"
123
+ ],
124
+ mutationFn: (file) => reviewerAPI.uploadCoverPicture(file),
125
+ onSuccess: () => {
126
+ queryClient.invalidateQueries({ queryKey: ["reviewer", "me"] });
127
+ }
128
+ });
129
+ };
130
+ const useEstimateMission = () => {
131
+ const reviewerAPI = useReviewerAPI();
132
+ return useMutation({
133
+ mutationKey: [
134
+ "reviewer",
135
+ "mission",
136
+ "estimate"
137
+ ],
138
+ mutationFn: (body) => reviewerAPI.estimateMission(body)
139
+ });
140
+ };
141
+ const useCreateMission = () => {
142
+ const reviewerAPI = useReviewerAPI();
143
+ const queryClient = useQueryClient();
144
+ return useMutation({
145
+ mutationKey: [
146
+ "reviewer",
147
+ "mission",
148
+ "create"
149
+ ],
150
+ mutationFn: (body) => reviewerAPI.createMission(body),
151
+ onSuccess: () => {
152
+ queryClient.invalidateQueries({ queryKey: ["reviewer", "missions"] });
153
+ }
154
+ });
155
+ };
156
+ const useGetMyMissions = (params, options) => {
157
+ const reviewerAPI = useReviewerAPI();
158
+ return useAppQuery({
159
+ queryKey: [
160
+ "reviewer",
161
+ "missions",
162
+ params
163
+ ],
164
+ queryFn: ({ signal }) => reviewerAPI.getMyMissions(params, { signal }),
165
+ requireUser: true,
166
+ ...options
167
+ });
168
+ };
169
+ const useGetMissionById = (missionId, options) => {
170
+ const reviewerAPI = useReviewerAPI();
171
+ return useAppQuery({
172
+ queryKey: [
173
+ "reviewer",
174
+ "mission",
175
+ missionId
176
+ ],
177
+ queryFn: ({ signal }) => reviewerAPI.getMissionById(missionId, { signal }),
178
+ enabled: Boolean(missionId),
179
+ requireUser: true,
180
+ ...options
181
+ });
182
+ };
183
+ const useUpdateMissionStatus = () => {
184
+ const reviewerAPI = useReviewerAPI();
185
+ const queryClient = useQueryClient();
186
+ return useMutation({
187
+ mutationKey: [
188
+ "reviewer",
189
+ "mission",
190
+ "status"
191
+ ],
192
+ mutationFn: ({ missionId, body }) => reviewerAPI.updateMissionStatus(missionId, body),
193
+ onSuccess: (_data, { missionId }) => {
194
+ queryClient.invalidateQueries({ queryKey: [
195
+ "reviewer",
196
+ "mission",
197
+ missionId
198
+ ] });
199
+ queryClient.invalidateQueries({ queryKey: ["reviewer", "missions"] });
200
+ }
201
+ });
202
+ };
203
+ const useSubmitReview = () => {
204
+ const reviewerAPI = useReviewerAPI();
205
+ const queryClient = useQueryClient();
206
+ return useMutation({
207
+ mutationKey: ["reviewer", "review"],
208
+ mutationFn: ({ missionId, body }) => reviewerAPI.submitReview(missionId, body),
209
+ onSuccess: () => {
210
+ queryClient.invalidateQueries({ queryKey: ["reviewer"] });
211
+ }
212
+ });
213
+ };
214
+ const useGetChatHistory = (missionId, options) => {
215
+ const reviewerAPI = useReviewerAPI();
216
+ return useAppQuery({
217
+ queryKey: [
218
+ "reviewer",
219
+ "mission",
220
+ missionId,
221
+ "chat"
222
+ ],
223
+ queryFn: ({ signal }) => reviewerAPI.getChatHistory(missionId, { signal }),
224
+ enabled: Boolean(missionId),
225
+ requireUser: true,
226
+ ...options
227
+ });
228
+ };
229
+ const useSendReviewerMessage = () => {
230
+ const reviewerAPI = useReviewerAPI();
231
+ const queryClient = useQueryClient();
232
+ return useMutation({
233
+ mutationKey: [
234
+ "reviewer",
235
+ "chat",
236
+ "send"
237
+ ],
238
+ mutationFn: ({ missionId, content }) => reviewerAPI.sendMessage(missionId, { content }),
239
+ onSuccess: (_data, { missionId }) => {
240
+ queryClient.invalidateQueries({ queryKey: [
241
+ "reviewer",
242
+ "mission",
243
+ missionId,
244
+ "chat"
245
+ ] });
246
+ }
247
+ });
248
+ };
249
+ const useContactReviewer = () => {
250
+ const reviewerAPI = useReviewerAPI();
251
+ return useMutation({
252
+ mutationKey: ["reviewer", "contact"],
253
+ mutationFn: ({ reviewerId, message }) => reviewerAPI.contactReviewer(reviewerId, { message })
254
+ });
255
+ };
256
+ const useGetAdminReviewers = (params = {}, options) => {
257
+ const reviewerAPI = useReviewerAPI();
258
+ return useAppQuery({
259
+ queryKey: [
260
+ "admin",
261
+ "reviewers",
262
+ params
263
+ ],
264
+ queryFn: ({ signal }) => reviewerAPI.getAdminReviewers(params, { signal }),
265
+ requireUser: true,
266
+ ...options
267
+ });
268
+ };
269
+ const useValidateReviewerProfile = () => {
270
+ const reviewerAPI = useReviewerAPI();
271
+ const queryClient = useQueryClient();
272
+ return useMutation({
273
+ mutationKey: [
274
+ "admin",
275
+ "reviewer",
276
+ "validate"
277
+ ],
278
+ mutationFn: (reviewerId) => reviewerAPI.validateReviewerProfile(reviewerId),
279
+ onSuccess: (_data, reviewerId) => {
280
+ queryClient.invalidateQueries({ queryKey: ["admin", "reviewers"] });
281
+ queryClient.invalidateQueries({ queryKey: ["reviewer", reviewerId] });
282
+ }
283
+ });
284
+ };
285
+
286
+ //#endregion
287
+ export { useContactReviewer, useCreateMission, useDeleteReviewerProfile, useEstimateMission, useGetAdminReviewers, useGetChatHistory, useGetMissionById, useGetMyMissions, useGetMyReviewerProfile, useGetReviewerById, useGetReviewerMarketplace, useGetReviewerPriceDistribution, useGetReviewerReviews, useRegisterAsReviewer, useSendReviewerMessage, useSubmitReview, useUpdateMissionStatus, useUpdateReviewerProfile, useUploadReviewerCoverPicture, useUploadReviewerMainPicture, useValidateReviewerProfile };
288
+ //# sourceMappingURL=reviewer.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reviewer.mjs","names":[],"sources":["../../../../src/api/hooks/reviewer.ts"],"sourcesContent":["'use client';\n\nimport type {\n CreateMissionBody,\n EstimateMissionBody,\n GetMarketplaceQuery,\n RegisterReviewerBody,\n SubmitReviewBody,\n UpdateMissionStatusBody,\n UpdateReviewerBody,\n} from '@intlayer/backend';\nimport {\n type UseQueryOptions,\n useMutation,\n useQueryClient,\n} from '@tanstack/react-query';\nimport { useReviewerAPI } from '../useIntlayerAPI';\nimport { useAppQuery } from './utils';\n\nexport const useGetReviewerMarketplace = (\n params?: GetMarketplaceQuery,\n options?: Partial<UseQueryOptions>\n) => {\n const reviewerAPI = useReviewerAPI();\n\n return useAppQuery({\n queryKey: ['reviewer', 'marketplace', params],\n queryFn: ({ signal }) => reviewerAPI.getMarketplace(params, { signal }),\n ...options,\n });\n};\n\nexport const useGetReviewerPriceDistribution = (\n params?: Pick<\n GetMarketplaceQuery,\n 'fromLocale' | 'toLocale' | 'minRating' | 'categories'\n >,\n options?: Partial<UseQueryOptions>\n) => {\n const reviewerAPI = useReviewerAPI();\n\n return useAppQuery({\n queryKey: ['reviewer', 'marketplace', 'price-distribution', params],\n queryFn: ({ signal }) =>\n reviewerAPI.getPriceDistribution(params, { signal }),\n ...options,\n });\n};\n\nexport const useGetReviewerById = (\n reviewerId: string | undefined,\n options?: Partial<UseQueryOptions>\n) => {\n const reviewerAPI = useReviewerAPI();\n\n return useAppQuery({\n queryKey: ['reviewer', reviewerId],\n queryFn: ({ signal }) =>\n reviewerAPI.getReviewerById(reviewerId!, { signal }),\n enabled: Boolean(reviewerId),\n ...options,\n });\n};\n\nexport const useGetReviewerReviews = (\n reviewerId: string | undefined,\n params?: { page?: number; pageSize?: number },\n options?: Partial<UseQueryOptions>\n) => {\n const reviewerAPI = useReviewerAPI();\n\n return useAppQuery({\n queryKey: ['reviewer', reviewerId, 'reviews', params],\n queryFn: ({ signal }) =>\n reviewerAPI.getReviewerReviews(reviewerId!, params, {\n signal,\n }),\n enabled: Boolean(reviewerId),\n ...options,\n });\n};\n\nexport const useGetMyReviewerProfile = (options?: Partial<UseQueryOptions>) => {\n const reviewerAPI = useReviewerAPI();\n\n return useAppQuery({\n queryKey: ['reviewer', 'me'],\n queryFn: ({ signal }) => reviewerAPI.getMyReviewerProfile({ signal }),\n requireUser: true,\n ...options,\n });\n};\n\nexport const useRegisterAsReviewer = () => {\n const reviewerAPI = useReviewerAPI();\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['reviewer', 'register'],\n mutationFn: (body: RegisterReviewerBody) =>\n reviewerAPI.registerAsReviewer(body),\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['reviewer', 'me'] });\n queryClient.invalidateQueries({\n queryKey: ['reviewer', 'marketplace'],\n });\n },\n });\n};\n\nexport const useUpdateReviewerProfile = () => {\n const reviewerAPI = useReviewerAPI();\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['reviewer', 'update'],\n mutationFn: (body: UpdateReviewerBody) =>\n reviewerAPI.updateReviewerProfile(body),\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['reviewer', 'me'] });\n },\n });\n};\n\nexport const useDeleteReviewerProfile = () => {\n const reviewerAPI = useReviewerAPI();\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['reviewer', 'delete'],\n mutationFn: () => reviewerAPI.deleteReviewerProfile(),\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['reviewer', 'me'] });\n queryClient.invalidateQueries({ queryKey: ['reviewer', 'marketplace'] });\n },\n });\n};\n\nexport const useUploadReviewerMainPicture = () => {\n const reviewerAPI = useReviewerAPI();\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['reviewer', 'picture', 'main'],\n mutationFn: (file: File) => reviewerAPI.uploadMainPicture(file),\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['reviewer', 'me'] });\n },\n });\n};\n\nexport const useUploadReviewerCoverPicture = () => {\n const reviewerAPI = useReviewerAPI();\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['reviewer', 'picture', 'cover'],\n mutationFn: (file: File) => reviewerAPI.uploadCoverPicture(file),\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['reviewer', 'me'] });\n },\n });\n};\n\nexport const useEstimateMission = () => {\n const reviewerAPI = useReviewerAPI();\n\n return useMutation({\n mutationKey: ['reviewer', 'mission', 'estimate'],\n mutationFn: (body: EstimateMissionBody) =>\n reviewerAPI.estimateMission(body),\n });\n};\n\nexport const useCreateMission = () => {\n const reviewerAPI = useReviewerAPI();\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['reviewer', 'mission', 'create'],\n mutationFn: (body: CreateMissionBody) => reviewerAPI.createMission(body),\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['reviewer', 'missions'] });\n },\n });\n};\n\nexport const useGetMyMissions = (\n params?: { role?: 'client' | 'reviewer'; page?: number; pageSize?: number },\n options?: Partial<UseQueryOptions>\n) => {\n const reviewerAPI = useReviewerAPI();\n\n return useAppQuery({\n queryKey: ['reviewer', 'missions', params],\n queryFn: ({ signal }) => reviewerAPI.getMyMissions(params, { signal }),\n requireUser: true,\n ...options,\n });\n};\n\nexport const useGetMissionById = (\n missionId: string | undefined,\n options?: Partial<UseQueryOptions>\n) => {\n const reviewerAPI = useReviewerAPI();\n\n return useAppQuery({\n queryKey: ['reviewer', 'mission', missionId],\n queryFn: ({ signal }) => reviewerAPI.getMissionById(missionId!, { signal }),\n enabled: Boolean(missionId),\n requireUser: true,\n ...options,\n });\n};\n\nexport const useUpdateMissionStatus = () => {\n const reviewerAPI = useReviewerAPI();\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['reviewer', 'mission', 'status'],\n mutationFn: ({\n missionId,\n body,\n }: {\n missionId: string;\n body: UpdateMissionStatusBody;\n }) => reviewerAPI.updateMissionStatus(missionId, body),\n onSuccess: (_data, { missionId }) => {\n queryClient.invalidateQueries({\n queryKey: ['reviewer', 'mission', missionId],\n });\n queryClient.invalidateQueries({ queryKey: ['reviewer', 'missions'] });\n },\n });\n};\n\nexport const useSubmitReview = () => {\n const reviewerAPI = useReviewerAPI();\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['reviewer', 'review'],\n mutationFn: ({\n missionId,\n body,\n }: {\n missionId: string;\n body: SubmitReviewBody;\n }) => reviewerAPI.submitReview(missionId, body),\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['reviewer'] });\n },\n });\n};\n\nexport const useGetChatHistory = (\n missionId: string | undefined,\n options?: Partial<UseQueryOptions>\n) => {\n const reviewerAPI = useReviewerAPI();\n\n return useAppQuery({\n queryKey: ['reviewer', 'mission', missionId, 'chat'],\n queryFn: ({ signal }) => reviewerAPI.getChatHistory(missionId!, { signal }),\n enabled: Boolean(missionId),\n requireUser: true,\n ...options,\n });\n};\n\nexport const useSendReviewerMessage = () => {\n const reviewerAPI = useReviewerAPI();\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['reviewer', 'chat', 'send'],\n mutationFn: ({\n missionId,\n content,\n }: {\n missionId: string;\n content: string;\n }) => reviewerAPI.sendMessage(missionId, { content }),\n onSuccess: (_data, { missionId }) => {\n queryClient.invalidateQueries({\n queryKey: ['reviewer', 'mission', missionId, 'chat'],\n });\n },\n });\n};\n\nexport const useContactReviewer = () => {\n const reviewerAPI = useReviewerAPI();\n return useMutation({\n mutationKey: ['reviewer', 'contact'],\n mutationFn: ({\n reviewerId,\n message,\n }: {\n reviewerId: string;\n message: string;\n }) => reviewerAPI.contactReviewer(reviewerId, { message }),\n });\n};\n\nexport const useGetAdminReviewers = (\n params: { page?: number; pageSize?: number; status?: string } = {},\n options?: Partial<UseQueryOptions>\n) => {\n const reviewerAPI = useReviewerAPI();\n\n return useAppQuery({\n queryKey: ['admin', 'reviewers', params],\n queryFn: ({ signal }) => reviewerAPI.getAdminReviewers(params, { signal }),\n requireUser: true,\n ...options,\n });\n};\n\nexport const useValidateReviewerProfile = () => {\n const reviewerAPI = useReviewerAPI();\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['admin', 'reviewer', 'validate'],\n mutationFn: (reviewerId: string) =>\n reviewerAPI.validateReviewerProfile(reviewerId),\n onSuccess: (_data, reviewerId) => {\n queryClient.invalidateQueries({ queryKey: ['admin', 'reviewers'] });\n queryClient.invalidateQueries({\n queryKey: ['reviewer', reviewerId],\n });\n },\n });\n};\n"],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ 'use client';
2
+
3
+ import { useSearchAPI } from "../useIntlayerAPI.mjs";
4
+ import { useQuery } from "@tanstack/react-query";
5
+
6
+ //#region src/api/hooks/search.ts
7
+ const useSearchDoc = (params) => {
8
+ const searchAPI = useSearchAPI();
9
+ return useQuery({
10
+ queryKey: ["search", params],
11
+ queryFn: () => searchAPI.searchDoc(params),
12
+ enabled: (params?.input?.length ?? 0) > 3
13
+ });
14
+ };
15
+
16
+ //#endregion
17
+ export { useSearchDoc };
18
+ //# sourceMappingURL=search.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.mjs","names":[],"sources":["../../../../src/api/hooks/search.ts"],"sourcesContent":["'use client';\n\nimport type { SearchDocUtilParams } from '@intlayer/backend';\nimport { useQuery } from '@tanstack/react-query';\nimport { useSearchAPI } from '../useIntlayerAPI';\n\nexport const useSearchDoc = (params: SearchDocUtilParams) => {\n const searchAPI = useSearchAPI();\n\n return useQuery({\n queryKey: ['search', params],\n queryFn: () => searchAPI.searchDoc(params),\n enabled: (params?.input?.length ?? 0) > 3,\n });\n};\n"],"mappings":";;;;;;AAMA,MAAa,gBAAgB,WAAgC;CAC3D,MAAM,YAAY,aAAa;CAE/B,OAAO,SAAS;EACd,UAAU,CAAC,UAAU,MAAM;EAC3B,eAAe,UAAU,UAAU,MAAM;EACzC,UAAU,QAAQ,OAAO,UAAU,KAAK;CAC1C,CAAC;AACH"}
@@ -0,0 +1,95 @@
1
+ 'use client';
2
+
3
+ import { useShowcaseProjectAPI } from "../useIntlayerAPI.mjs";
4
+ import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query";
5
+
6
+ //#region src/api/hooks/showcaseProject.ts
7
+ const useGetShowcaseProjects = (query, options) => {
8
+ const showcaseProjectAPI = useShowcaseProjectAPI();
9
+ return useQuery({
10
+ queryKey: [
11
+ "showcase",
12
+ "projects",
13
+ query
14
+ ],
15
+ queryFn: ({ signal }) => showcaseProjectAPI.getShowcaseProjects(query, { signal }),
16
+ ...options
17
+ });
18
+ };
19
+ const useGetShowcaseProjectById = (projectId, options) => {
20
+ const showcaseProjectAPI = useShowcaseProjectAPI();
21
+ return useQuery({
22
+ queryKey: [
23
+ "showcase",
24
+ "project",
25
+ projectId
26
+ ],
27
+ queryFn: ({ signal }) => showcaseProjectAPI.getShowcaseProjectById(projectId, { signal }),
28
+ enabled: Boolean(projectId),
29
+ ...options
30
+ });
31
+ };
32
+ const useGetOtherShowcaseProjects = (query, options) => {
33
+ const showcaseProjectAPI = useShowcaseProjectAPI();
34
+ return useQuery({
35
+ queryKey: [
36
+ "showcase",
37
+ "other-projects",
38
+ query
39
+ ],
40
+ queryFn: ({ signal }) => showcaseProjectAPI.getOtherShowcaseProjects(query, { signal }),
41
+ enabled: Boolean(query.excludeId),
42
+ ...options
43
+ });
44
+ };
45
+ const useSubmitShowcaseProject = (props) => {
46
+ const showcaseProjectAPI = useShowcaseProjectAPI(props);
47
+ const queryClient = useQueryClient();
48
+ return useMutation({
49
+ mutationKey: ["showcase", "submit"],
50
+ mutationFn: (body) => showcaseProjectAPI.submitShowcaseProject(body),
51
+ onSuccess: () => {
52
+ queryClient.invalidateQueries({ queryKey: ["showcase"] });
53
+ }
54
+ });
55
+ };
56
+ const useDeleteShowcaseProject = (props) => {
57
+ const showcaseProjectAPI = useShowcaseProjectAPI(props);
58
+ const queryClient = useQueryClient();
59
+ return useMutation({
60
+ mutationKey: ["showcase", "delete"],
61
+ mutationFn: (projectId) => showcaseProjectAPI.deleteShowcaseProject(projectId),
62
+ onSuccess: () => {
63
+ queryClient.invalidateQueries({ queryKey: ["showcase"] });
64
+ }
65
+ });
66
+ };
67
+ const useToggleShowcaseUpvote = (props) => {
68
+ const showcaseProjectAPI = useShowcaseProjectAPI(props);
69
+ return useMutation({
70
+ mutationKey: ["showcase", "upvote"],
71
+ mutationFn: (projectId) => showcaseProjectAPI.toggleShowcaseUpvote({ projectId })
72
+ });
73
+ };
74
+ const useToggleShowcaseDownvote = (props) => {
75
+ const showcaseProjectAPI = useShowcaseProjectAPI(props);
76
+ return useMutation({
77
+ mutationKey: ["showcase", "downvote"],
78
+ mutationFn: (projectId) => showcaseProjectAPI.toggleShowcaseDownvote({ projectId })
79
+ });
80
+ };
81
+ const useUpdateShowcaseProject = (props) => {
82
+ const showcaseProjectAPI = useShowcaseProjectAPI(props);
83
+ const queryClient = useQueryClient();
84
+ return useMutation({
85
+ mutationKey: ["showcase", "update"],
86
+ mutationFn: ({ projectId, ...body }) => showcaseProjectAPI.updateShowcaseProject(projectId, body),
87
+ onSuccess: () => {
88
+ queryClient.invalidateQueries({ queryKey: ["showcase"] });
89
+ }
90
+ });
91
+ };
92
+
93
+ //#endregion
94
+ export { useDeleteShowcaseProject, useGetOtherShowcaseProjects, useGetShowcaseProjectById, useGetShowcaseProjects, useSubmitShowcaseProject, useToggleShowcaseDownvote, useToggleShowcaseUpvote, useUpdateShowcaseProject };
95
+ //# sourceMappingURL=showcaseProject.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"showcaseProject.mjs","names":[],"sources":["../../../../src/api/hooks/showcaseProject.ts"],"sourcesContent":["'use client';\n\nimport type {\n GetShowcaseProjectByIdParams,\n GetShowcaseProjectsResult,\n OtherShowcaseProjectsQuery,\n ShowcaseProjectsQuery,\n SubmitShowcaseProjectBody,\n} from '@intlayer/backend';\nimport {\n type UseQueryOptions,\n useMutation,\n useQuery,\n useQueryClient,\n} from '@tanstack/react-query';\nimport {\n type UseIntlayerAuthProps,\n useShowcaseProjectAPI,\n} from '../useIntlayerAPI';\n\nexport const useGetShowcaseProjects = (\n query?: ShowcaseProjectsQuery,\n options?: Partial<UseQueryOptions<GetShowcaseProjectsResult>>\n) => {\n const showcaseProjectAPI = useShowcaseProjectAPI();\n\n return useQuery({\n queryKey: ['showcase', 'projects', query],\n queryFn: ({ signal }) =>\n showcaseProjectAPI.getShowcaseProjects(query, { signal }),\n ...options,\n });\n};\n\nexport const useGetShowcaseProjectById = (\n projectId: GetShowcaseProjectByIdParams['projectId'],\n options?: Partial<UseQueryOptions>\n) => {\n const showcaseProjectAPI = useShowcaseProjectAPI();\n\n return useQuery({\n queryKey: ['showcase', 'project', projectId],\n queryFn: ({ signal }) =>\n showcaseProjectAPI.getShowcaseProjectById(projectId, {\n signal,\n }),\n enabled: Boolean(projectId),\n ...options,\n });\n};\n\nexport const useGetOtherShowcaseProjects = (\n query: OtherShowcaseProjectsQuery,\n options?: Partial<UseQueryOptions>\n) => {\n const showcaseProjectAPI = useShowcaseProjectAPI();\n\n return useQuery({\n queryKey: ['showcase', 'other-projects', query],\n queryFn: ({ signal }) =>\n showcaseProjectAPI.getOtherShowcaseProjects(query, {\n signal,\n }),\n enabled: Boolean(query.excludeId),\n ...options,\n });\n};\n\nexport const useSubmitShowcaseProject = (props?: UseIntlayerAuthProps) => {\n const showcaseProjectAPI = useShowcaseProjectAPI(props);\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['showcase', 'submit'],\n mutationFn: (body: SubmitShowcaseProjectBody) =>\n showcaseProjectAPI.submitShowcaseProject(body),\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['showcase'] });\n },\n });\n};\n\nexport const useDeleteShowcaseProject = (props?: UseIntlayerAuthProps) => {\n const showcaseProjectAPI = useShowcaseProjectAPI(props);\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['showcase', 'delete'],\n mutationFn: (projectId: string) =>\n showcaseProjectAPI.deleteShowcaseProject(projectId),\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['showcase'] });\n },\n });\n};\n\nexport const useToggleShowcaseUpvote = (props?: UseIntlayerAuthProps) => {\n const showcaseProjectAPI = useShowcaseProjectAPI(props);\n\n return useMutation({\n mutationKey: ['showcase', 'upvote'],\n mutationFn: (projectId: string) =>\n showcaseProjectAPI.toggleShowcaseUpvote({ projectId }),\n });\n};\n\nexport const useToggleShowcaseDownvote = (props?: UseIntlayerAuthProps) => {\n const showcaseProjectAPI = useShowcaseProjectAPI(props);\n\n return useMutation({\n mutationKey: ['showcase', 'downvote'],\n mutationFn: (projectId: string) =>\n showcaseProjectAPI.toggleShowcaseDownvote({ projectId }),\n });\n};\n\nexport const useUpdateShowcaseProject = (props?: UseIntlayerAuthProps) => {\n const showcaseProjectAPI = useShowcaseProjectAPI(props);\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['showcase', 'update'],\n mutationFn: ({\n projectId,\n ...body\n }: {\n projectId: string;\n name?: string;\n url?: string;\n githubUrl?: string;\n tagline?: string;\n description?: string;\n useCases?: string[];\n }) => showcaseProjectAPI.updateShowcaseProject(projectId, body),\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['showcase'] });\n },\n });\n};\n"],"mappings":";;;;;;AAoBA,MAAa,0BACX,OACA,YACG;CACH,MAAM,qBAAqB,sBAAsB;CAEjD,OAAO,SAAS;EACd,UAAU;GAAC;GAAY;GAAY;EAAK;EACxC,UAAU,EAAE,aACV,mBAAmB,oBAAoB,OAAO,EAAE,OAAO,CAAC;EAC1D,GAAG;CACL,CAAC;AACH;AAEA,MAAa,6BACX,WACA,YACG;CACH,MAAM,qBAAqB,sBAAsB;CAEjD,OAAO,SAAS;EACd,UAAU;GAAC;GAAY;GAAW;EAAS;EAC3C,UAAU,EAAE,aACV,mBAAmB,uBAAuB,WAAW,EACnD,OACF,CAAC;EACH,SAAS,QAAQ,SAAS;EAC1B,GAAG;CACL,CAAC;AACH;AAEA,MAAa,+BACX,OACA,YACG;CACH,MAAM,qBAAqB,sBAAsB;CAEjD,OAAO,SAAS;EACd,UAAU;GAAC;GAAY;GAAkB;EAAK;EAC9C,UAAU,EAAE,aACV,mBAAmB,yBAAyB,OAAO,EACjD,OACF,CAAC;EACH,SAAS,QAAQ,MAAM,SAAS;EAChC,GAAG;CACL,CAAC;AACH;AAEA,MAAa,4BAA4B,UAAiC;CACxE,MAAM,qBAAqB,sBAAsB,KAAK;CACtD,MAAM,cAAc,eAAe;CAEnC,OAAO,YAAY;EACjB,aAAa,CAAC,YAAY,QAAQ;EAClC,aAAa,SACX,mBAAmB,sBAAsB,IAAI;EAC/C,iBAAiB;GACf,YAAY,kBAAkB,EAAE,UAAU,CAAC,UAAU,EAAE,CAAC;EAC1D;CACF,CAAC;AACH;AAEA,MAAa,4BAA4B,UAAiC;CACxE,MAAM,qBAAqB,sBAAsB,KAAK;CACtD,MAAM,cAAc,eAAe;CAEnC,OAAO,YAAY;EACjB,aAAa,CAAC,YAAY,QAAQ;EAClC,aAAa,cACX,mBAAmB,sBAAsB,SAAS;EACpD,iBAAiB;GACf,YAAY,kBAAkB,EAAE,UAAU,CAAC,UAAU,EAAE,CAAC;EAC1D;CACF,CAAC;AACH;AAEA,MAAa,2BAA2B,UAAiC;CACvE,MAAM,qBAAqB,sBAAsB,KAAK;CAEtD,OAAO,YAAY;EACjB,aAAa,CAAC,YAAY,QAAQ;EAClC,aAAa,cACX,mBAAmB,qBAAqB,EAAE,UAAU,CAAC;CACzD,CAAC;AACH;AAEA,MAAa,6BAA6B,UAAiC;CACzE,MAAM,qBAAqB,sBAAsB,KAAK;CAEtD,OAAO,YAAY;EACjB,aAAa,CAAC,YAAY,UAAU;EACpC,aAAa,cACX,mBAAmB,uBAAuB,EAAE,UAAU,CAAC;CAC3D,CAAC;AACH;AAEA,MAAa,4BAA4B,UAAiC;CACxE,MAAM,qBAAqB,sBAAsB,KAAK;CACtD,MAAM,cAAc,eAAe;CAEnC,OAAO,YAAY;EACjB,aAAa,CAAC,YAAY,QAAQ;EAClC,aAAa,EACX,WACA,GAAG,WASC,mBAAmB,sBAAsB,WAAW,IAAI;EAC9D,iBAAiB;GACf,YAAY,kBAAkB,EAAE,UAAU,CAAC,UAAU,EAAE,CAAC;EAC1D;CACF,CAAC;AACH"}