@lokalise/harmony 1.27.3-exp-teamTypes.1 → 1.27.3

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 (251) hide show
  1. package/README.md +8 -7
  2. package/dist/harmony.cjs +1 -4
  3. package/dist/harmony.cjs.map +1 -1
  4. package/dist/harmony.css +3 -2
  5. package/dist/harmony.mjs +2 -5
  6. package/dist/harmony100.cjs +5 -7
  7. package/dist/harmony100.cjs.map +1 -1
  8. package/dist/harmony100.mjs +5 -7
  9. package/dist/harmony100.mjs.map +1 -1
  10. package/dist/harmony101.cjs +40 -18
  11. package/dist/harmony101.cjs.map +1 -1
  12. package/dist/harmony101.mjs +40 -18
  13. package/dist/harmony101.mjs.map +1 -1
  14. package/dist/harmony102.cjs +59 -13
  15. package/dist/harmony102.cjs.map +1 -1
  16. package/dist/harmony102.mjs +59 -13
  17. package/dist/harmony102.mjs.map +1 -1
  18. package/dist/harmony103.cjs +7 -16
  19. package/dist/harmony103.cjs.map +1 -1
  20. package/dist/harmony103.mjs +7 -16
  21. package/dist/harmony103.mjs.map +1 -1
  22. package/dist/harmony104.cjs +5 -6
  23. package/dist/harmony104.cjs.map +1 -1
  24. package/dist/harmony104.mjs +5 -6
  25. package/dist/harmony105.cjs +5 -5
  26. package/dist/harmony105.mjs +5 -5
  27. package/dist/harmony106.cjs +6 -5
  28. package/dist/harmony106.cjs.map +1 -1
  29. package/dist/harmony106.mjs +6 -5
  30. package/dist/harmony107.cjs +95 -61
  31. package/dist/harmony107.cjs.map +1 -1
  32. package/dist/harmony107.mjs +95 -61
  33. package/dist/harmony107.mjs.map +1 -1
  34. package/dist/harmony108.cjs +13 -88
  35. package/dist/harmony108.cjs.map +1 -1
  36. package/dist/harmony108.mjs +13 -88
  37. package/dist/harmony108.mjs.map +1 -1
  38. package/dist/harmony109.cjs +15 -19
  39. package/dist/harmony109.cjs.map +1 -1
  40. package/dist/harmony109.mjs +14 -18
  41. package/dist/harmony109.mjs.map +1 -1
  42. package/dist/harmony110.cjs +34 -94
  43. package/dist/harmony110.cjs.map +1 -1
  44. package/dist/harmony110.mjs +34 -94
  45. package/dist/harmony110.mjs.map +1 -1
  46. package/dist/harmony111.cjs +26 -11
  47. package/dist/harmony111.cjs.map +1 -1
  48. package/dist/harmony111.mjs +26 -11
  49. package/dist/harmony111.mjs.map +1 -1
  50. package/dist/harmony112.cjs +60 -12
  51. package/dist/harmony112.cjs.map +1 -1
  52. package/dist/harmony112.mjs +60 -12
  53. package/dist/harmony112.mjs.map +1 -1
  54. package/dist/harmony113.cjs +88 -36
  55. package/dist/harmony113.cjs.map +1 -1
  56. package/dist/harmony113.mjs +88 -36
  57. package/dist/harmony113.mjs.map +1 -1
  58. package/dist/harmony114.cjs +19 -29
  59. package/dist/harmony114.cjs.map +1 -1
  60. package/dist/harmony114.mjs +18 -28
  61. package/dist/harmony114.mjs.map +1 -1
  62. package/dist/harmony115.cjs +13 -7
  63. package/dist/harmony115.cjs.map +1 -1
  64. package/dist/harmony115.mjs +13 -7
  65. package/dist/harmony115.mjs.map +1 -1
  66. package/dist/harmony116.cjs +15 -57
  67. package/dist/harmony116.cjs.map +1 -1
  68. package/dist/harmony116.mjs +15 -57
  69. package/dist/harmony116.mjs.map +1 -1
  70. package/dist/harmony117.cjs +15 -59
  71. package/dist/harmony117.cjs.map +1 -1
  72. package/dist/harmony117.mjs +15 -59
  73. package/dist/harmony117.mjs.map +1 -1
  74. package/dist/harmony118.cjs +12 -19
  75. package/dist/harmony118.cjs.map +1 -1
  76. package/dist/harmony118.mjs +11 -18
  77. package/dist/harmony118.mjs.map +1 -1
  78. package/dist/harmony119.cjs +15 -12
  79. package/dist/harmony119.cjs.map +1 -1
  80. package/dist/harmony119.mjs +15 -12
  81. package/dist/harmony119.mjs.map +1 -1
  82. package/dist/harmony120.cjs +19 -13
  83. package/dist/harmony120.cjs.map +1 -1
  84. package/dist/harmony120.mjs +19 -13
  85. package/dist/harmony120.mjs.map +1 -1
  86. package/dist/harmony121.cjs +10 -14
  87. package/dist/harmony121.cjs.map +1 -1
  88. package/dist/harmony121.mjs +10 -14
  89. package/dist/harmony121.mjs.map +1 -1
  90. package/dist/harmony122.cjs +5 -10
  91. package/dist/harmony122.cjs.map +1 -1
  92. package/dist/harmony122.mjs +5 -10
  93. package/dist/harmony122.mjs.map +1 -1
  94. package/dist/harmony123.cjs +7 -16
  95. package/dist/harmony123.cjs.map +1 -1
  96. package/dist/harmony123.mjs +7 -16
  97. package/dist/harmony123.mjs.map +1 -1
  98. package/dist/harmony124.cjs +56 -20
  99. package/dist/harmony124.cjs.map +1 -1
  100. package/dist/harmony124.mjs +56 -20
  101. package/dist/harmony124.mjs.map +1 -1
  102. package/dist/harmony125.cjs +59 -11
  103. package/dist/harmony125.cjs.map +1 -1
  104. package/dist/harmony125.mjs +59 -11
  105. package/dist/harmony125.mjs.map +1 -1
  106. package/dist/harmony126.cjs +18 -46
  107. package/dist/harmony126.cjs.map +1 -1
  108. package/dist/harmony126.mjs +17 -45
  109. package/dist/harmony126.mjs.map +1 -1
  110. package/dist/harmony127.cjs +13 -13
  111. package/dist/harmony127.cjs.map +1 -1
  112. package/dist/harmony127.mjs +12 -12
  113. package/dist/harmony127.mjs.map +1 -1
  114. package/dist/harmony128.cjs +31 -5
  115. package/dist/harmony128.cjs.map +1 -1
  116. package/dist/harmony128.mjs +31 -5
  117. package/dist/harmony128.mjs.map +1 -1
  118. package/dist/harmony129.cjs +13 -11
  119. package/dist/harmony129.cjs.map +1 -1
  120. package/dist/harmony129.mjs +13 -11
  121. package/dist/harmony129.mjs.map +1 -1
  122. package/dist/harmony130.cjs +45 -31
  123. package/dist/harmony130.cjs.map +1 -1
  124. package/dist/harmony130.mjs +45 -31
  125. package/dist/harmony130.mjs.map +1 -1
  126. package/dist/harmony131.cjs +13 -15
  127. package/dist/harmony131.cjs.map +1 -1
  128. package/dist/harmony131.mjs +12 -14
  129. package/dist/harmony131.mjs.map +1 -1
  130. package/dist/harmony15.cjs +1 -1
  131. package/dist/harmony15.mjs +1 -1
  132. package/dist/harmony22.cjs +1 -1
  133. package/dist/harmony22.mjs +1 -1
  134. package/dist/harmony23.cjs +1 -1
  135. package/dist/harmony23.mjs +1 -1
  136. package/dist/harmony30.cjs +1 -1
  137. package/dist/harmony30.mjs +1 -1
  138. package/dist/harmony4.cjs.map +1 -1
  139. package/dist/harmony4.mjs.map +1 -1
  140. package/dist/harmony59.cjs +29 -63
  141. package/dist/harmony59.cjs.map +1 -1
  142. package/dist/harmony59.mjs +29 -63
  143. package/dist/harmony59.mjs.map +1 -1
  144. package/dist/harmony66.cjs +1 -1
  145. package/dist/harmony66.mjs +1 -1
  146. package/dist/harmony67.cjs +1 -1
  147. package/dist/harmony67.mjs +1 -1
  148. package/dist/harmony68.cjs +1 -1
  149. package/dist/harmony68.mjs +1 -1
  150. package/dist/harmony69.cjs +2 -2
  151. package/dist/harmony69.mjs +2 -2
  152. package/dist/harmony70.cjs +2 -2
  153. package/dist/harmony70.mjs +2 -2
  154. package/dist/harmony71.cjs +2 -2
  155. package/dist/harmony71.mjs +2 -2
  156. package/dist/harmony72.cjs +2 -2
  157. package/dist/harmony72.mjs +2 -2
  158. package/dist/harmony73.cjs +3 -3
  159. package/dist/harmony73.mjs +3 -3
  160. package/dist/harmony74.cjs +6 -6
  161. package/dist/harmony74.mjs +6 -6
  162. package/dist/harmony77.cjs +2 -2
  163. package/dist/harmony77.mjs +2 -2
  164. package/dist/harmony79.cjs +12 -7
  165. package/dist/harmony79.cjs.map +1 -1
  166. package/dist/harmony79.mjs +11 -6
  167. package/dist/harmony79.mjs.map +1 -1
  168. package/dist/harmony80.cjs +20 -8
  169. package/dist/harmony80.cjs.map +1 -1
  170. package/dist/harmony80.mjs +20 -8
  171. package/dist/harmony80.mjs.map +1 -1
  172. package/dist/harmony81.cjs +3 -6
  173. package/dist/harmony81.cjs.map +1 -1
  174. package/dist/harmony81.mjs +3 -6
  175. package/dist/harmony81.mjs.map +1 -1
  176. package/dist/harmony82.cjs +9 -57
  177. package/dist/harmony82.cjs.map +1 -1
  178. package/dist/harmony82.mjs +8 -56
  179. package/dist/harmony82.mjs.map +1 -1
  180. package/dist/harmony83.cjs +9 -33
  181. package/dist/harmony83.cjs.map +1 -1
  182. package/dist/harmony83.mjs +8 -32
  183. package/dist/harmony83.mjs.map +1 -1
  184. package/dist/harmony84.cjs +57 -5
  185. package/dist/harmony84.cjs.map +1 -1
  186. package/dist/harmony84.mjs +57 -5
  187. package/dist/harmony84.mjs.map +1 -1
  188. package/dist/harmony85.cjs +32 -9
  189. package/dist/harmony85.cjs.map +1 -1
  190. package/dist/harmony85.mjs +31 -8
  191. package/dist/harmony85.mjs.map +1 -1
  192. package/dist/harmony86.cjs +6 -25
  193. package/dist/harmony86.cjs.map +1 -1
  194. package/dist/harmony86.mjs +5 -24
  195. package/dist/harmony86.mjs.map +1 -1
  196. package/dist/harmony87.cjs +6 -3
  197. package/dist/harmony87.cjs.map +1 -1
  198. package/dist/harmony87.mjs +6 -3
  199. package/dist/harmony87.mjs.map +1 -1
  200. package/dist/harmony88.cjs +24 -21
  201. package/dist/harmony88.cjs.map +1 -1
  202. package/dist/harmony88.mjs +23 -20
  203. package/dist/harmony88.mjs.map +1 -1
  204. package/dist/harmony89.cjs +3 -9
  205. package/dist/harmony89.cjs.map +1 -1
  206. package/dist/harmony89.mjs +3 -9
  207. package/dist/harmony89.mjs.map +1 -1
  208. package/dist/harmony90.cjs +19 -9
  209. package/dist/harmony90.cjs.map +1 -1
  210. package/dist/harmony90.mjs +21 -11
  211. package/dist/harmony90.mjs.map +1 -1
  212. package/dist/harmony91.cjs +11 -20
  213. package/dist/harmony91.cjs.map +1 -1
  214. package/dist/harmony91.mjs +11 -20
  215. package/dist/harmony91.mjs.map +1 -1
  216. package/dist/harmony92.cjs +2 -2
  217. package/dist/harmony92.mjs +2 -2
  218. package/dist/harmony93.cjs +19 -22
  219. package/dist/harmony93.cjs.map +1 -1
  220. package/dist/harmony93.mjs +18 -21
  221. package/dist/harmony93.mjs.map +1 -1
  222. package/dist/harmony94.cjs +13 -5
  223. package/dist/harmony94.cjs.map +1 -1
  224. package/dist/harmony94.mjs +13 -5
  225. package/dist/harmony94.mjs.map +1 -1
  226. package/dist/harmony95.cjs +13 -129
  227. package/dist/harmony95.cjs.map +1 -1
  228. package/dist/harmony95.mjs +13 -129
  229. package/dist/harmony95.mjs.map +1 -1
  230. package/dist/harmony96.cjs +18 -9
  231. package/dist/harmony96.cjs.map +1 -1
  232. package/dist/harmony96.mjs +18 -9
  233. package/dist/harmony96.mjs.map +1 -1
  234. package/dist/harmony97.cjs +5 -5
  235. package/dist/harmony97.cjs.map +1 -1
  236. package/dist/harmony97.mjs +5 -5
  237. package/dist/harmony97.mjs.map +1 -1
  238. package/dist/harmony98.cjs +129 -37
  239. package/dist/harmony98.cjs.map +1 -1
  240. package/dist/harmony98.mjs +129 -37
  241. package/dist/harmony98.mjs.map +1 -1
  242. package/dist/harmony99.cjs +12 -60
  243. package/dist/harmony99.cjs.map +1 -1
  244. package/dist/harmony99.mjs +11 -59
  245. package/dist/harmony99.mjs.map +1 -1
  246. package/dist/types/src/components/Sidebar/Sidebar.d.ts +1 -1
  247. package/dist/types/src/features/publicApi/hooks/useListTeamsQuery.d.ts +9 -7
  248. package/dist/types/src/features/publicApi/hooks/useRetrieveTeamQuery.d.ts +11 -24
  249. package/dist/types/src/features/publicApi/team.d.ts +108 -187
  250. package/dist/types/src/features/publicApi/types/teamTypes.d.ts +115 -272
  251. package/package.json +1 -1
package/README.md CHANGED
@@ -1,6 +1,7 @@
1
- # harmony
1
+ # Harmony
2
+
2
3
  A temporary shared library designed to house reusable components, such as molecules and organisms, exclusively for the Expert and Flow platforms during the migration period. This library will be retired upon the completion of the migration and the establishment of the unified next-gen platform.
3
-
4
+
4
5
  ## Storybook
5
6
  https://lokalise.github.io/harmony/?path=/story/app-shell-navigationpanel--default&args=sticky:!true
6
7
 
@@ -33,15 +34,15 @@ export const authenticationHeaderBuilder = HeaderBuilder.create()
33
34
  JwtAuthHeaderBuilderMiddleware({
34
35
  // Provide a way to refresh the token - there are utility functions to help with this in the frontend
35
36
  refreshToken: refreshExpiredToken(authHttpClient, getTeamId),
36
-
37
+
37
38
  // Setup a source for the current token - there are utility functions to help with this in the frontend
38
39
  getCurrentToken: getJwtTokenFromCookie,
39
40
 
40
41
  // Additionally, you can promote a classic session to an authenticated session
41
42
  // when configuring a client in the context of a classic PHP CSRF session.
42
- // this `promoteClassicSession` method will automatically promote the session to JWT
43
+ // this `promoteClassicSession` method will automatically promote the session to JWT
43
44
  generateNewToken: generateTokenFromClassicSession(authHttpClient, getCsrfTokenFromCookie, getTeamId),
44
-
45
+
45
46
  // Optionally, you can provide a callback to be notified when a new token is issued
46
47
  onNewTokenIssued: (token) => {
47
48
  // Do something with the new token
@@ -78,9 +79,9 @@ import { type TeamUserResponse, getTeamUser } from '@lokalise/harmony';
78
79
  import { Client } from 'undici'
79
80
 
80
81
  const result: TeamUserResponse = async (client: Client) => {
81
- return sendByGetRoute(client, getTeamUser, {
82
+ return sendByGetRoute(client, getTeamUser, {
82
83
  pathParams: { teamId, userId },
83
84
  headers: { 'authorization': `Bearer token` }
84
85
  });
85
86
  }
86
- ```
87
+ ```
package/dist/harmony.cjs CHANGED
@@ -199,12 +199,9 @@ exports.LIST_TEAMS_QUERY_SCHEMA = teamTypes.LIST_TEAMS_QUERY_SCHEMA;
199
199
  exports.LIST_TEAMS_RESPONSE_SCHEMA = teamTypes.LIST_TEAMS_RESPONSE_SCHEMA;
200
200
  exports.RETRIEVE_TEAM_PATH_PARAMS_SCHEMA = teamTypes.RETRIEVE_TEAM_PATH_PARAMS_SCHEMA;
201
201
  exports.RETRIEVE_TEAM_RESPONSE_SCHEMA = teamTypes.RETRIEVE_TEAM_RESPONSE_SCHEMA;
202
- exports.TEAMS_QUOTA_ALLOWED_SCHEMA = teamTypes.TEAMS_QUOTA_ALLOWED_SCHEMA;
203
- exports.TEAMS_QUOTA_METRICS = teamTypes.TEAMS_QUOTA_METRICS;
204
- exports.TEAMS_QUOTA_METRICS_SCHEMA = teamTypes.TEAMS_QUOTA_METRICS_SCHEMA;
205
- exports.TEAMS_QUOTA_USAGE_SCHEMA = teamTypes.TEAMS_QUOTA_USAGE_SCHEMA;
206
202
  exports.TEAM_API_BASE_HEADERS_SCHEMA = teamTypes.TEAM_API_BASE_HEADERS_SCHEMA;
207
203
  exports.TEAM_QUOTA_ALLOWED_SCHEMA = teamTypes.TEAM_QUOTA_ALLOWED_SCHEMA;
204
+ exports.TEAM_QUOTA_METRICS = teamTypes.TEAM_QUOTA_METRICS;
208
205
  exports.TEAM_QUOTA_METRICS_SCHEMA = teamTypes.TEAM_QUOTA_METRICS_SCHEMA;
209
206
  exports.TEAM_QUOTA_USAGE_SCHEMA = teamTypes.TEAM_QUOTA_USAGE_SCHEMA;
210
207
  exports.TEAM_USER_API_BASE_HEADERS_SCHEMA = teamUserTypes.TEAM_USER_API_BASE_HEADERS_SCHEMA;
@@ -1 +1 @@
1
- {"version":3,"file":"harmony.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"harmony.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/harmony.css CHANGED
@@ -122,7 +122,8 @@
122
122
  color: var(--lok-color-background-action-primary-default);
123
123
  background-color: var(--lok-color-background-surface-fore);
124
124
  }
125
- ._dropdownButton_13l5r_1 {
125
+ ._dropdownButton_1naek_1 {
126
+ cursor: pointer;
126
127
  display: flex;
127
128
  justify-content: center;
128
129
  align-items: center;
@@ -139,7 +140,7 @@
139
140
  }
140
141
  }
141
142
 
142
- ._dropdownButtonActive_13l5r_18 {
143
+ ._dropdownButtonActive_1naek_19 {
143
144
  color: var(--lok-color-background-action-primary-default);
144
145
  background-color: var(--lok-color-background-surface-fore);
145
146
  }
package/dist/harmony.mjs CHANGED
@@ -55,7 +55,7 @@ import { CREATE_PROJECT_REQUEST_BODY_SCHEMA, GET_PROJECT_PERMISSION_META_RESPONS
55
55
  import { GET_SCORE_REQUEST_QUERY_SCHEMA, GET_SCORE_RESPONSE_SCHEMA, ISSUE_SCHEMA, SEVERITY_ENUM } from "./harmony56.mjs";
56
56
  import { API_PLUGIN_HEADER_SCHEMA, APU_TOKEN_AUTH_HEADER_SCHEMA, AUTHENTICATION_HEADERS_SCHEMA, AUTHORIZATION_HEADER_SCHEMA, BASE_API_ENDPOINT_HEADER_SCHEMA } from "./harmony57.mjs";
57
57
  import { TEAM_ROLE_SCHEMA } from "./harmony58.mjs";
58
- import { LIST_TEAMS_QUERY_SCHEMA, LIST_TEAMS_RESPONSE_SCHEMA, RETRIEVE_TEAM_PATH_PARAMS_SCHEMA, RETRIEVE_TEAM_RESPONSE_SCHEMA, TEAMS_QUOTA_ALLOWED_SCHEMA, TEAMS_QUOTA_METRICS, TEAMS_QUOTA_METRICS_SCHEMA, TEAMS_QUOTA_USAGE_SCHEMA, TEAM_API_BASE_HEADERS_SCHEMA, TEAM_QUOTA_ALLOWED_SCHEMA, TEAM_QUOTA_METRICS_SCHEMA, TEAM_QUOTA_USAGE_SCHEMA } from "./harmony59.mjs";
58
+ import { LIST_TEAMS_QUERY_SCHEMA, LIST_TEAMS_RESPONSE_SCHEMA, RETRIEVE_TEAM_PATH_PARAMS_SCHEMA, RETRIEVE_TEAM_RESPONSE_SCHEMA, TEAM_API_BASE_HEADERS_SCHEMA, TEAM_QUOTA_ALLOWED_SCHEMA, TEAM_QUOTA_METRICS, TEAM_QUOTA_METRICS_SCHEMA, TEAM_QUOTA_USAGE_SCHEMA } from "./harmony59.mjs";
59
59
  import { TEAM_USER_API_BASE_HEADERS_SCHEMA, TEAM_USER_PATH_PARAMS_SCHEMA, TEAM_USER_RESPONSE_SCHEMA, TEAM_USER_SCHEMA } from "./harmony60.mjs";
60
60
  import { JWT_TOKEN_SCHEMA, USER_TOKEN_REQUEST_HEADER_SCHEMA } from "./harmony61.mjs";
61
61
  export {
@@ -127,12 +127,9 @@ export {
127
127
  SidebarTaskLanguageStatuses,
128
128
  SidebarTaskStatuses,
129
129
  SidebarTaskTypeOptions,
130
- TEAMS_QUOTA_ALLOWED_SCHEMA,
131
- TEAMS_QUOTA_METRICS,
132
- TEAMS_QUOTA_METRICS_SCHEMA,
133
- TEAMS_QUOTA_USAGE_SCHEMA,
134
130
  TEAM_API_BASE_HEADERS_SCHEMA,
135
131
  TEAM_QUOTA_ALLOWED_SCHEMA,
132
+ TEAM_QUOTA_METRICS,
136
133
  TEAM_QUOTA_METRICS_SCHEMA,
137
134
  TEAM_QUOTA_USAGE_SCHEMA,
138
135
  TEAM_ROLE_SCHEMA,
@@ -1,10 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const TaskEvents = {
4
- TaskCompleted: "task_completed",
5
- TaskClosed: "task_closed",
6
- Refresh: "refresh",
7
- ShowDialog: "show_dialog"
8
- };
9
- exports.TaskEvents = TaskEvents;
3
+ const React = require("react");
4
+ const TasksContext = React.createContext({});
5
+ const useTasks = () => React.useContext(TasksContext);
6
+ exports.TasksContext = TasksContext;
7
+ exports.useTasks = useTasks;
10
8
  //# sourceMappingURL=harmony100.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony100.cjs","sources":["../src/components/Sidebar/Widgets/Tasks/utils/taskEvents.ts"],"sourcesContent":["import type { TypesFromMap } from '@utils'\n\nexport const TaskEvents = {\n\tTaskCompleted: 'task_completed',\n\tTaskClosed: 'task_closed',\n\tRefresh: 'refresh',\n\tShowDialog: 'show_dialog',\n} as const\n\nexport type TaskEvent = TypesFromMap<typeof TaskEvents>\n\ntype SingleTaskPayload = {\n\ttaskId: string | number\n}\n\ntype DispatchTaskEventPayload =\n\t| {\n\t\t\tname: typeof TaskEvents.TaskCompleted\n\t\t\tdetail: SingleTaskPayload\n\t }\n\t| {\n\t\t\tname: typeof TaskEvents.TaskClosed\n\t\t\tdetail: SingleTaskPayload\n\t }\n\t| {\n\t\t\tname: typeof TaskEvents.Refresh\n\t }\n\t| {\n\t\t\tname: typeof TaskEvents.ShowDialog\n\t }\n\nexport const dispatchTaskEvent = (props: DispatchTaskEventPayload) => {\n\tconst { name } = props\n\tdocument.dispatchEvent(new CustomEvent(name, { detail: 'detail' in props ? props.detail : {} }))\n}\n"],"names":[],"mappings":";;AAEO,MAAM,aAAa;AAAA,EACzB,eAAe;AAAA,EACf,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,YAAY;AACb;;"}
1
+ {"version":3,"file":"harmony100.cjs","sources":["../src/components/Sidebar/Widgets/Tasks/TasksContext.ts"],"sourcesContent":["import { createContext, useContext } from 'react'\nimport type { SidebarTasksContextProps } from './types'\n\nexport const TasksContext = createContext({} as SidebarTasksContextProps)\n\nexport const useTasks = () => useContext(TasksContext)\n"],"names":["createContext","useContext"],"mappings":";;;AAGa,MAAA,eAAeA,MAAc,cAAA,CAA8B,CAAA;AAE3D,MAAA,WAAW,MAAMC,MAAAA,WAAW,YAAY;;;"}
@@ -1,10 +1,8 @@
1
- const TaskEvents = {
2
- TaskCompleted: "task_completed",
3
- TaskClosed: "task_closed",
4
- Refresh: "refresh",
5
- ShowDialog: "show_dialog"
6
- };
1
+ import { createContext, useContext } from "react";
2
+ const TasksContext = createContext({});
3
+ const useTasks = () => useContext(TasksContext);
7
4
  export {
8
- TaskEvents
5
+ TasksContext,
6
+ useTasks
9
7
  };
10
8
  //# sourceMappingURL=harmony100.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony100.mjs","sources":["../src/components/Sidebar/Widgets/Tasks/utils/taskEvents.ts"],"sourcesContent":["import type { TypesFromMap } from '@utils'\n\nexport const TaskEvents = {\n\tTaskCompleted: 'task_completed',\n\tTaskClosed: 'task_closed',\n\tRefresh: 'refresh',\n\tShowDialog: 'show_dialog',\n} as const\n\nexport type TaskEvent = TypesFromMap<typeof TaskEvents>\n\ntype SingleTaskPayload = {\n\ttaskId: string | number\n}\n\ntype DispatchTaskEventPayload =\n\t| {\n\t\t\tname: typeof TaskEvents.TaskCompleted\n\t\t\tdetail: SingleTaskPayload\n\t }\n\t| {\n\t\t\tname: typeof TaskEvents.TaskClosed\n\t\t\tdetail: SingleTaskPayload\n\t }\n\t| {\n\t\t\tname: typeof TaskEvents.Refresh\n\t }\n\t| {\n\t\t\tname: typeof TaskEvents.ShowDialog\n\t }\n\nexport const dispatchTaskEvent = (props: DispatchTaskEventPayload) => {\n\tconst { name } = props\n\tdocument.dispatchEvent(new CustomEvent(name, { detail: 'detail' in props ? props.detail : {} }))\n}\n"],"names":[],"mappings":"AAEO,MAAM,aAAa;AAAA,EACzB,eAAe;AAAA,EACf,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,YAAY;AACb;"}
1
+ {"version":3,"file":"harmony100.mjs","sources":["../src/components/Sidebar/Widgets/Tasks/TasksContext.ts"],"sourcesContent":["import { createContext, useContext } from 'react'\nimport type { SidebarTasksContextProps } from './types'\n\nexport const TasksContext = createContext({} as SidebarTasksContextProps)\n\nexport const useTasks = () => useContext(TasksContext)\n"],"names":[],"mappings":";AAGa,MAAA,eAAe,cAAc,CAA8B,CAAA;AAE3D,MAAA,WAAW,MAAM,WAAW,YAAY;"}
@@ -1,21 +1,43 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const zod = require("zod");
4
- const teamRoleTypes = require("./harmony58.cjs");
5
- const JWT_TOKEN_PAYLOAD_SCHEMA = zod.z.object({
6
- userId: zod.z.number(),
7
- userUuid: zod.z.string().uuid(),
8
- teamId: zod.z.number(),
9
- teamUuid: zod.z.string().uuid(),
10
- userTeamRole: teamRoleTypes.TEAM_ROLE_SCHEMA,
11
- userEmail: zod.z.string().email(),
12
- userName: zod.z.string(),
13
- userCurrentTeamId: zod.z.number(),
14
- planId: zod.z.number(),
15
- planName: zod.z.string(),
16
- isProviderAlpha: zod.z.boolean(),
17
- isFullyAuthenticated: zod.z.boolean(),
18
- exp: zod.z.number()
19
- });
20
- exports.JWT_TOKEN_PAYLOAD_SCHEMA = JWT_TOKEN_PAYLOAD_SCHEMA;
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const louis = require("@lokalise/louis");
5
+ const useEffectOnce = require("./harmony11.cjs");
6
+ const TaskOverview = require("./harmony113.cjs");
7
+ const TasksContext = require("./harmony100.cjs");
8
+ const taskEvents = require("./harmony103.cjs");
9
+ const TasksPopover_module = require("./harmony114.cjs");
10
+ const TasksPopover = () => {
11
+ const { tasks, onTasksWidgetOpen, loadingTasks, fetchTasks } = TasksContext.useTasks();
12
+ useEffectOnce.useEffectOnce(() => {
13
+ const handleTaskPopoverOpen = async () => {
14
+ const contextTasks = await fetchTasks();
15
+ onTasksWidgetOpen == null ? void 0 : onTasksWidgetOpen({ tasks: contextTasks });
16
+ };
17
+ handleTaskPopoverOpen();
18
+ document.addEventListener(taskEvents.TaskEvents.TaskCompleted, fetchTasks);
19
+ document.addEventListener(taskEvents.TaskEvents.TaskClosed, fetchTasks);
20
+ document.addEventListener(taskEvents.TaskEvents.Refresh, fetchTasks);
21
+ return () => {
22
+ document.removeEventListener(taskEvents.TaskEvents.TaskCompleted, fetchTasks);
23
+ document.removeEventListener(taskEvents.TaskEvents.TaskClosed, fetchTasks);
24
+ document.removeEventListener(taskEvents.TaskEvents.Refresh, fetchTasks);
25
+ };
26
+ });
27
+ if (loadingTasks) {
28
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { "data-testid": "sidebar-tasks-loading-popover", className: TasksPopover_module.default.loadingContainer, children: /* @__PURE__ */ jsxRuntime.jsx(louis.Loading, {}) });
29
+ }
30
+ if (tasks.length === 0) {
31
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { "data-testid": "sidebar-no-tasks-popover", className: TasksPopover_module.default.noTasksContainer, children: [
32
+ /* @__PURE__ */ jsxRuntime.jsx("h3", { className: TasksPopover_module.default.noTasksHeading, children: "No tasks" }),
33
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: TasksPopover_module.default.noTasksText, children: [
34
+ "Your incoming tasks will appear here.",
35
+ /* @__PURE__ */ jsxRuntime.jsx("br", {}),
36
+ /* @__PURE__ */ jsxRuntime.jsx(louis.Link, { href: "https://docs.lokalise.com/translation-workflow/tasks", target: "_new", children: "Learn more" })
37
+ ] })
38
+ ] });
39
+ }
40
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { "data-testid": "sidebar-tasks-popover", className: TasksPopover_module.default.tasksContainer, children: tasks.map((task) => /* @__PURE__ */ jsxRuntime.jsx(TaskOverview.TaskOverview, { task }, task.id)) });
41
+ };
42
+ exports.TasksPopover = TasksPopover;
21
43
  //# sourceMappingURL=harmony101.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony101.cjs","sources":["../src/features/auth/core/types/jwtTokenPayload.ts"],"sourcesContent":["import { z } from 'zod'\nimport { TEAM_ROLE_SCHEMA } from '../../../publicApi/types/teamRoleTypes'\n\nexport const JWT_TOKEN_PAYLOAD_SCHEMA = z.object({\n\tuserId: z.number(),\n\tuserUuid: z.string().uuid(),\n\tteamId: z.number(),\n\tteamUuid: z.string().uuid(),\n\tuserTeamRole: TEAM_ROLE_SCHEMA,\n\tuserEmail: z.string().email(),\n\tuserName: z.string(),\n\tuserCurrentTeamId: z.number(),\n\tplanId: z.number(),\n\tplanName: z.string(),\n\tisProviderAlpha: z.boolean(),\n\tisFullyAuthenticated: z.boolean(),\n\texp: z.number(),\n})\nexport type JwtTokenPayload = z.infer<typeof JWT_TOKEN_PAYLOAD_SCHEMA>\n"],"names":["z","TEAM_ROLE_SCHEMA"],"mappings":";;;;AAGa,MAAA,2BAA2BA,MAAE,OAAO;AAAA,EAChD,QAAQA,MAAE,OAAO;AAAA,EACjB,UAAUA,IAAA,EAAE,OAAO,EAAE,KAAK;AAAA,EAC1B,QAAQA,MAAE,OAAO;AAAA,EACjB,UAAUA,IAAA,EAAE,OAAO,EAAE,KAAK;AAAA,EAC1B,cAAcC,cAAA;AAAA,EACd,WAAWD,IAAA,EAAE,OAAO,EAAE,MAAM;AAAA,EAC5B,UAAUA,MAAE,OAAO;AAAA,EACnB,mBAAmBA,MAAE,OAAO;AAAA,EAC5B,QAAQA,MAAE,OAAO;AAAA,EACjB,UAAUA,MAAE,OAAO;AAAA,EACnB,iBAAiBA,MAAE,QAAQ;AAAA,EAC3B,sBAAsBA,MAAE,QAAQ;AAAA,EAChC,KAAKA,MAAE,OAAO;AACf,CAAC;;"}
1
+ {"version":3,"file":"harmony101.cjs","sources":["../src/components/Sidebar/Widgets/Tasks/TasksPopover/TasksPopover.tsx"],"sourcesContent":["import { Link, Loading } from '@lokalise/louis'\nimport { useEffectOnce } from '@utils'\nimport { TaskOverview } from '../TaskOverview/TaskOverview'\nimport { useTasks } from '../TasksContext'\nimport type { SidebarTask } from '../types'\nimport { TaskEvents } from '../utils/taskEvents'\nimport styles from './TasksPopover.module.css'\n\nexport const TasksPopover = () => {\n\tconst { tasks, onTasksWidgetOpen, loadingTasks, fetchTasks } = useTasks()\n\n\tuseEffectOnce(() => {\n\t\tconst handleTaskPopoverOpen = async () => {\n\t\t\tconst contextTasks = await fetchTasks()\n\t\t\tonTasksWidgetOpen?.({ tasks: contextTasks })\n\t\t}\n\n\t\thandleTaskPopoverOpen()\n\n\t\tdocument.addEventListener(TaskEvents.TaskCompleted, fetchTasks)\n\t\tdocument.addEventListener(TaskEvents.TaskClosed, fetchTasks)\n\t\tdocument.addEventListener(TaskEvents.Refresh, fetchTasks)\n\n\t\treturn () => {\n\t\t\tdocument.removeEventListener(TaskEvents.TaskCompleted, fetchTasks)\n\t\t\tdocument.removeEventListener(TaskEvents.TaskClosed, fetchTasks)\n\t\t\tdocument.removeEventListener(TaskEvents.Refresh, fetchTasks)\n\t\t}\n\t})\n\n\tif (loadingTasks) {\n\t\treturn (\n\t\t\t<div data-testid=\"sidebar-tasks-loading-popover\" className={styles.loadingContainer}>\n\t\t\t\t<Loading />\n\t\t\t</div>\n\t\t)\n\t}\n\n\tif (tasks.length === 0) {\n\t\treturn (\n\t\t\t<div data-testid=\"sidebar-no-tasks-popover\" className={styles.noTasksContainer}>\n\t\t\t\t<h3 className={styles.noTasksHeading}>No tasks</h3>\n\t\t\t\t<div className={styles.noTasksText}>\n\t\t\t\t\tYour incoming tasks will appear here.\n\t\t\t\t\t<br />\n\t\t\t\t\t<Link href=\"https://docs.lokalise.com/translation-workflow/tasks\" target=\"_new\">\n\t\t\t\t\t\tLearn more\n\t\t\t\t\t</Link>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t)\n\t}\n\n\treturn (\n\t\t<div data-testid=\"sidebar-tasks-popover\" className={styles.tasksContainer}>\n\t\t\t{tasks.map((task: SidebarTask) => (\n\t\t\t\t<TaskOverview key={task.id} task={task} />\n\t\t\t))}\n\t\t</div>\n\t)\n}\n"],"names":["useTasks","useEffectOnce","TaskEvents","jsx","styles","Loading","jsxs","Link","TaskOverview"],"mappings":";;;;;;;;;AAQO,MAAM,eAAe,MAAM;AACjC,QAAM,EAAE,OAAO,mBAAmB,cAAc,WAAA,IAAeA,aAAAA,SAAS;AAExEC,gBAAAA,cAAc,MAAM;AACnB,UAAM,wBAAwB,YAAY;AACnC,YAAA,eAAe,MAAM,WAAW;AAClB,6DAAA,EAAE,OAAO;IAC9B;AAEsB,0BAAA;AAEb,aAAA,iBAAiBC,sBAAW,eAAe,UAAU;AACrD,aAAA,iBAAiBA,sBAAW,YAAY,UAAU;AAClD,aAAA,iBAAiBA,sBAAW,SAAS,UAAU;AAExD,WAAO,MAAM;AACH,eAAA,oBAAoBA,sBAAW,eAAe,UAAU;AACxD,eAAA,oBAAoBA,sBAAW,YAAY,UAAU;AACrD,eAAA,oBAAoBA,sBAAW,SAAS,UAAU;AAAA,IAC5D;AAAA,EAAA,CACA;AAED,MAAI,cAAc;AAEhB,WAAAC,2BAAA,IAAC,SAAI,eAAY,iCAAgC,WAAWC,4BAAO,kBAClE,UAACD,2BAAAA,IAAAE,MAAAA,SAAA,CAAA,CAAQ,EACV,CAAA;AAAA,EAAA;AAIE,MAAA,MAAM,WAAW,GAAG;AACvB,2CACE,OAAI,EAAA,eAAY,4BAA2B,WAAWD,oBAAAA,QAAO,kBAC7D,UAAA;AAAA,MAAAD,2BAAA,IAAC,MAAG,EAAA,WAAWC,oBAAO,QAAA,gBAAgB,UAAQ,YAAA;AAAA,MAC7CE,2BAAA,KAAA,OAAA,EAAI,WAAWF,oBAAAA,QAAO,aAAa,UAAA;AAAA,QAAA;AAAA,uCAElC,MAAG,EAAA;AAAA,uCACHG,MAAAA,MAAK,EAAA,MAAK,wDAAuD,QAAO,QAAO,UAEhF,aAAA,CAAA;AAAA,MAAA,EACD,CAAA;AAAA,IAAA,GACD;AAAA,EAAA;AAIF,wCACE,OAAI,EAAA,eAAY,yBAAwB,WAAWH,oBAAAA,QAAO,gBACzD,UAAA,MAAM,IAAI,CAAC,SACVD,2BAAA,IAAAK,2BAAA,EAA2B,QAAT,KAAK,EAAgB,CACxC,GACF;AAEF;;"}
@@ -1,21 +1,43 @@
1
- import { z } from "zod";
2
- import { TEAM_ROLE_SCHEMA } from "./harmony58.mjs";
3
- const JWT_TOKEN_PAYLOAD_SCHEMA = z.object({
4
- userId: z.number(),
5
- userUuid: z.string().uuid(),
6
- teamId: z.number(),
7
- teamUuid: z.string().uuid(),
8
- userTeamRole: TEAM_ROLE_SCHEMA,
9
- userEmail: z.string().email(),
10
- userName: z.string(),
11
- userCurrentTeamId: z.number(),
12
- planId: z.number(),
13
- planName: z.string(),
14
- isProviderAlpha: z.boolean(),
15
- isFullyAuthenticated: z.boolean(),
16
- exp: z.number()
17
- });
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { Loading, Link } from "@lokalise/louis";
3
+ import { useEffectOnce } from "./harmony11.mjs";
4
+ import { TaskOverview } from "./harmony113.mjs";
5
+ import { useTasks } from "./harmony100.mjs";
6
+ import { TaskEvents } from "./harmony103.mjs";
7
+ import styles from "./harmony114.mjs";
8
+ const TasksPopover = () => {
9
+ const { tasks, onTasksWidgetOpen, loadingTasks, fetchTasks } = useTasks();
10
+ useEffectOnce(() => {
11
+ const handleTaskPopoverOpen = async () => {
12
+ const contextTasks = await fetchTasks();
13
+ onTasksWidgetOpen == null ? void 0 : onTasksWidgetOpen({ tasks: contextTasks });
14
+ };
15
+ handleTaskPopoverOpen();
16
+ document.addEventListener(TaskEvents.TaskCompleted, fetchTasks);
17
+ document.addEventListener(TaskEvents.TaskClosed, fetchTasks);
18
+ document.addEventListener(TaskEvents.Refresh, fetchTasks);
19
+ return () => {
20
+ document.removeEventListener(TaskEvents.TaskCompleted, fetchTasks);
21
+ document.removeEventListener(TaskEvents.TaskClosed, fetchTasks);
22
+ document.removeEventListener(TaskEvents.Refresh, fetchTasks);
23
+ };
24
+ });
25
+ if (loadingTasks) {
26
+ return /* @__PURE__ */ jsx("div", { "data-testid": "sidebar-tasks-loading-popover", className: styles.loadingContainer, children: /* @__PURE__ */ jsx(Loading, {}) });
27
+ }
28
+ if (tasks.length === 0) {
29
+ return /* @__PURE__ */ jsxs("div", { "data-testid": "sidebar-no-tasks-popover", className: styles.noTasksContainer, children: [
30
+ /* @__PURE__ */ jsx("h3", { className: styles.noTasksHeading, children: "No tasks" }),
31
+ /* @__PURE__ */ jsxs("div", { className: styles.noTasksText, children: [
32
+ "Your incoming tasks will appear here.",
33
+ /* @__PURE__ */ jsx("br", {}),
34
+ /* @__PURE__ */ jsx(Link, { href: "https://docs.lokalise.com/translation-workflow/tasks", target: "_new", children: "Learn more" })
35
+ ] })
36
+ ] });
37
+ }
38
+ return /* @__PURE__ */ jsx("div", { "data-testid": "sidebar-tasks-popover", className: styles.tasksContainer, children: tasks.map((task) => /* @__PURE__ */ jsx(TaskOverview, { task }, task.id)) });
39
+ };
18
40
  export {
19
- JWT_TOKEN_PAYLOAD_SCHEMA
41
+ TasksPopover
20
42
  };
21
43
  //# sourceMappingURL=harmony101.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony101.mjs","sources":["../src/features/auth/core/types/jwtTokenPayload.ts"],"sourcesContent":["import { z } from 'zod'\nimport { TEAM_ROLE_SCHEMA } from '../../../publicApi/types/teamRoleTypes'\n\nexport const JWT_TOKEN_PAYLOAD_SCHEMA = z.object({\n\tuserId: z.number(),\n\tuserUuid: z.string().uuid(),\n\tteamId: z.number(),\n\tteamUuid: z.string().uuid(),\n\tuserTeamRole: TEAM_ROLE_SCHEMA,\n\tuserEmail: z.string().email(),\n\tuserName: z.string(),\n\tuserCurrentTeamId: z.number(),\n\tplanId: z.number(),\n\tplanName: z.string(),\n\tisProviderAlpha: z.boolean(),\n\tisFullyAuthenticated: z.boolean(),\n\texp: z.number(),\n})\nexport type JwtTokenPayload = z.infer<typeof JWT_TOKEN_PAYLOAD_SCHEMA>\n"],"names":[],"mappings":";;AAGa,MAAA,2BAA2B,EAAE,OAAO;AAAA,EAChD,QAAQ,EAAE,OAAO;AAAA,EACjB,UAAU,EAAE,OAAO,EAAE,KAAK;AAAA,EAC1B,QAAQ,EAAE,OAAO;AAAA,EACjB,UAAU,EAAE,OAAO,EAAE,KAAK;AAAA,EAC1B,cAAc;AAAA,EACd,WAAW,EAAE,OAAO,EAAE,MAAM;AAAA,EAC5B,UAAU,EAAE,OAAO;AAAA,EACnB,mBAAmB,EAAE,OAAO;AAAA,EAC5B,QAAQ,EAAE,OAAO;AAAA,EACjB,UAAU,EAAE,OAAO;AAAA,EACnB,iBAAiB,EAAE,QAAQ;AAAA,EAC3B,sBAAsB,EAAE,QAAQ;AAAA,EAChC,KAAK,EAAE,OAAO;AACf,CAAC;"}
1
+ {"version":3,"file":"harmony101.mjs","sources":["../src/components/Sidebar/Widgets/Tasks/TasksPopover/TasksPopover.tsx"],"sourcesContent":["import { Link, Loading } from '@lokalise/louis'\nimport { useEffectOnce } from '@utils'\nimport { TaskOverview } from '../TaskOverview/TaskOverview'\nimport { useTasks } from '../TasksContext'\nimport type { SidebarTask } from '../types'\nimport { TaskEvents } from '../utils/taskEvents'\nimport styles from './TasksPopover.module.css'\n\nexport const TasksPopover = () => {\n\tconst { tasks, onTasksWidgetOpen, loadingTasks, fetchTasks } = useTasks()\n\n\tuseEffectOnce(() => {\n\t\tconst handleTaskPopoverOpen = async () => {\n\t\t\tconst contextTasks = await fetchTasks()\n\t\t\tonTasksWidgetOpen?.({ tasks: contextTasks })\n\t\t}\n\n\t\thandleTaskPopoverOpen()\n\n\t\tdocument.addEventListener(TaskEvents.TaskCompleted, fetchTasks)\n\t\tdocument.addEventListener(TaskEvents.TaskClosed, fetchTasks)\n\t\tdocument.addEventListener(TaskEvents.Refresh, fetchTasks)\n\n\t\treturn () => {\n\t\t\tdocument.removeEventListener(TaskEvents.TaskCompleted, fetchTasks)\n\t\t\tdocument.removeEventListener(TaskEvents.TaskClosed, fetchTasks)\n\t\t\tdocument.removeEventListener(TaskEvents.Refresh, fetchTasks)\n\t\t}\n\t})\n\n\tif (loadingTasks) {\n\t\treturn (\n\t\t\t<div data-testid=\"sidebar-tasks-loading-popover\" className={styles.loadingContainer}>\n\t\t\t\t<Loading />\n\t\t\t</div>\n\t\t)\n\t}\n\n\tif (tasks.length === 0) {\n\t\treturn (\n\t\t\t<div data-testid=\"sidebar-no-tasks-popover\" className={styles.noTasksContainer}>\n\t\t\t\t<h3 className={styles.noTasksHeading}>No tasks</h3>\n\t\t\t\t<div className={styles.noTasksText}>\n\t\t\t\t\tYour incoming tasks will appear here.\n\t\t\t\t\t<br />\n\t\t\t\t\t<Link href=\"https://docs.lokalise.com/translation-workflow/tasks\" target=\"_new\">\n\t\t\t\t\t\tLearn more\n\t\t\t\t\t</Link>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t)\n\t}\n\n\treturn (\n\t\t<div data-testid=\"sidebar-tasks-popover\" className={styles.tasksContainer}>\n\t\t\t{tasks.map((task: SidebarTask) => (\n\t\t\t\t<TaskOverview key={task.id} task={task} />\n\t\t\t))}\n\t\t</div>\n\t)\n}\n"],"names":[],"mappings":";;;;;;;AAQO,MAAM,eAAe,MAAM;AACjC,QAAM,EAAE,OAAO,mBAAmB,cAAc,WAAA,IAAe,SAAS;AAExE,gBAAc,MAAM;AACnB,UAAM,wBAAwB,YAAY;AACnC,YAAA,eAAe,MAAM,WAAW;AAClB,6DAAA,EAAE,OAAO;IAC9B;AAEsB,0BAAA;AAEb,aAAA,iBAAiB,WAAW,eAAe,UAAU;AACrD,aAAA,iBAAiB,WAAW,YAAY,UAAU;AAClD,aAAA,iBAAiB,WAAW,SAAS,UAAU;AAExD,WAAO,MAAM;AACH,eAAA,oBAAoB,WAAW,eAAe,UAAU;AACxD,eAAA,oBAAoB,WAAW,YAAY,UAAU;AACrD,eAAA,oBAAoB,WAAW,SAAS,UAAU;AAAA,IAC5D;AAAA,EAAA,CACA;AAED,MAAI,cAAc;AAEhB,WAAA,oBAAC,SAAI,eAAY,iCAAgC,WAAW,OAAO,kBAClE,UAAC,oBAAA,SAAA,CAAA,CAAQ,EACV,CAAA;AAAA,EAAA;AAIE,MAAA,MAAM,WAAW,GAAG;AACvB,gCACE,OAAI,EAAA,eAAY,4BAA2B,WAAW,OAAO,kBAC7D,UAAA;AAAA,MAAA,oBAAC,MAAG,EAAA,WAAW,OAAO,gBAAgB,UAAQ,YAAA;AAAA,MAC7C,qBAAA,OAAA,EAAI,WAAW,OAAO,aAAa,UAAA;AAAA,QAAA;AAAA,4BAElC,MAAG,EAAA;AAAA,4BACH,MAAK,EAAA,MAAK,wDAAuD,QAAO,QAAO,UAEhF,aAAA,CAAA;AAAA,MAAA,EACD,CAAA;AAAA,IAAA,GACD;AAAA,EAAA;AAIF,6BACE,OAAI,EAAA,eAAY,yBAAwB,WAAW,OAAO,gBACzD,UAAA,MAAM,IAAI,CAAC,SACV,oBAAA,cAAA,EAA2B,QAAT,KAAK,EAAgB,CACxC,GACF;AAEF;"}
@@ -1,17 +1,63 @@
1
1
  "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
4
- var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
5
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
6
- const jwtTokenPayload = require("./harmony15.cjs");
7
- const _NewJwtIssuedEvent = class _NewJwtIssuedEvent extends CustomEvent {
8
- constructor(token) {
9
- super(_NewJwtIssuedEvent.eventName, {
10
- detail: { token, payload: jwtTokenPayload.parseJwtTokenPayload(token.accessToken) }
11
- });
12
- }
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const useEffectOnce = require("./harmony11.cjs");
5
+ const React = require("react");
6
+ const TasksContext = require("./harmony100.cjs");
7
+ const taskEvents = require("./harmony103.cjs");
8
+ const TasksProvider = ({ children, config }) => {
9
+ const [tasks, setTasks] = React.useState([]);
10
+ const [loadingTasks, setLoadingTasks] = React.useState(true);
11
+ const [tasksCount, setTaskCount] = React.useState(0);
12
+ const {
13
+ getProjectUrl,
14
+ onLanguageCompleteConfirm,
15
+ onTasksWidgetOpen,
16
+ langNameOnClick,
17
+ langProgressOnClick,
18
+ taskTitleOnClick
19
+ } = config;
20
+ const { getTasks, getTasksCount } = config;
21
+ const fetchTasks = async () => {
22
+ setLoadingTasks(true);
23
+ const result = await getTasks();
24
+ setTasks(result);
25
+ setLoadingTasks(false);
26
+ return result;
27
+ };
28
+ const fetchTaskCount = async () => {
29
+ const result = await getTasksCount();
30
+ setTaskCount(result);
31
+ };
32
+ useEffectOnce.useEffectOnce(() => {
33
+ fetchTaskCount();
34
+ document.addEventListener(taskEvents.TaskEvents.TaskCompleted, fetchTaskCount);
35
+ document.addEventListener(taskEvents.TaskEvents.TaskClosed, fetchTaskCount);
36
+ document.addEventListener(taskEvents.TaskEvents.Refresh, fetchTaskCount);
37
+ return () => {
38
+ document.removeEventListener(taskEvents.TaskEvents.TaskCompleted, fetchTaskCount);
39
+ document.removeEventListener(taskEvents.TaskEvents.TaskClosed, fetchTaskCount);
40
+ document.removeEventListener(taskEvents.TaskEvents.Refresh, fetchTaskCount);
41
+ };
42
+ });
43
+ const providerValue = {
44
+ fetchTasks,
45
+ tasks,
46
+ tasksCount,
47
+ loadingTasks,
48
+ getProjectUrl,
49
+ onLanguageCompleteConfirm,
50
+ onTasksWidgetOpen,
51
+ langNameOnClick,
52
+ langProgressOnClick,
53
+ taskTitleOnClick
54
+ };
55
+ return /* @__PURE__ */ jsxRuntime.jsx(TasksContext.TasksContext.Provider, { value: providerValue, children });
13
56
  };
14
- __publicField(_NewJwtIssuedEvent, "eventName", "new-jwt-issued");
15
- let NewJwtIssuedEvent = _NewJwtIssuedEvent;
16
- exports.NewJwtIssuedEvent = NewJwtIssuedEvent;
57
+ const withTasksContext = (WrappedComponent) => function withTasksContextFn(props) {
58
+ const { config, ...rest } = props;
59
+ return /* @__PURE__ */ jsxRuntime.jsx(TasksProvider, { config, children: /* @__PURE__ */ jsxRuntime.jsx(WrappedComponent, { ...rest }) });
60
+ };
61
+ exports.TasksProvider = TasksProvider;
62
+ exports.withTasksContext = withTasksContext;
17
63
  //# sourceMappingURL=harmony102.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony102.cjs","sources":["../src/features/auth/frontend/events/NewJwtIssuedEvent.ts"],"sourcesContent":["import type { JwtTokenPayload } from '@features/auth/core/types/jwtTokenPayload'\nimport { parseJwtTokenPayload } from '@features/auth/core/utils/jwtTokenPayload'\nimport type { JwtToken } from '@features/publicApi/types/userTokenTypes'\n\ntype NewJwtIssuedEventDetail = {\n\ttoken: JwtToken\n\tpayload: JwtTokenPayload | undefined\n}\n\n/**\n * This event is emitted when a new JWT token is issued or refreshed.\n */\nexport class NewJwtIssuedEvent extends CustomEvent<NewJwtIssuedEventDetail> {\n\tstatic readonly eventName = 'new-jwt-issued' as const\n\n\tconstructor(token: JwtToken) {\n\t\tsuper(NewJwtIssuedEvent.eventName, {\n\t\t\tdetail: { token, payload: parseJwtTokenPayload(token.accessToken) },\n\t\t})\n\t}\n}\n\nexport const isNewJwtIssuedEvent = (event: Event): event is NewJwtIssuedEvent =>\n\tevent.type === NewJwtIssuedEvent.eventName\n\ndeclare global {\n\tinterface WindowEventMap {\n\t\t[NewJwtIssuedEvent.eventName]: NewJwtIssuedEvent\n\t}\n}\n"],"names":["parseJwtTokenPayload"],"mappings":";;;;;;AAYO,MAAM,qBAAN,MAAM,2BAA0B,YAAqC;AAAA,EAG3E,YAAY,OAAiB;AAC5B,UAAM,mBAAkB,WAAW;AAAA,MAClC,QAAQ,EAAE,OAAO,SAASA,gBAAAA,qBAAqB,MAAM,WAAW,EAAE;AAAA,IAAA,CAClE;AAAA,EAAA;AAEH;AAPC,cADY,oBACI,aAAY;AADtB,IAAM,oBAAN;;"}
1
+ {"version":3,"file":"harmony102.cjs","sources":["../src/components/Sidebar/Widgets/Tasks/TasksProvider.tsx"],"sourcesContent":["import { useEffectOnce } from '@utils'\nimport { type FC, type PropsWithChildren, useState } from 'react'\nimport { TasksContext } from './TasksContext'\nimport type { SidebarTask, SidebarTasksConfig, SidebarTasksContextProps } from './types'\nimport { TaskEvents } from './utils/taskEvents'\n\ntype TasksProviderProps = PropsWithChildren<{\n\tconfig: SidebarTasksConfig\n}>\n\nexport const TasksProvider = ({ children, config }: TasksProviderProps) => {\n\tconst [tasks, setTasks] = useState<SidebarTask[]>([])\n\tconst [loadingTasks, setLoadingTasks] = useState(true)\n\n\tconst [tasksCount, setTaskCount] = useState(0)\n\n\tconst {\n\t\tgetProjectUrl,\n\t\tonLanguageCompleteConfirm,\n\t\tonTasksWidgetOpen,\n\t\tlangNameOnClick,\n\t\tlangProgressOnClick,\n\t\ttaskTitleOnClick,\n\t} = config\n\n\tconst { getTasks, getTasksCount } = config\n\n\tconst fetchTasks = async () => {\n\t\tsetLoadingTasks(true)\n\t\tconst result = await getTasks()\n\t\tsetTasks(result)\n\t\tsetLoadingTasks(false)\n\t\treturn result\n\t}\n\n\tconst fetchTaskCount = async () => {\n\t\tconst result = await getTasksCount()\n\t\tsetTaskCount(result)\n\t}\n\n\tuseEffectOnce(() => {\n\t\tfetchTaskCount()\n\n\t\tdocument.addEventListener(TaskEvents.TaskCompleted, fetchTaskCount)\n\t\tdocument.addEventListener(TaskEvents.TaskClosed, fetchTaskCount)\n\t\tdocument.addEventListener(TaskEvents.Refresh, fetchTaskCount)\n\n\t\treturn () => {\n\t\t\tdocument.removeEventListener(TaskEvents.TaskCompleted, fetchTaskCount)\n\t\t\tdocument.removeEventListener(TaskEvents.TaskClosed, fetchTaskCount)\n\t\t\tdocument.removeEventListener(TaskEvents.Refresh, fetchTaskCount)\n\t\t}\n\t})\n\n\tconst providerValue: SidebarTasksContextProps = {\n\t\tfetchTasks,\n\t\ttasks,\n\t\ttasksCount,\n\t\tloadingTasks,\n\t\tgetProjectUrl,\n\t\tonLanguageCompleteConfirm,\n\t\tonTasksWidgetOpen,\n\t\tlangNameOnClick,\n\t\tlangProgressOnClick,\n\t\ttaskTitleOnClick,\n\t}\n\n\treturn <TasksContext.Provider value={providerValue}>{children}</TasksContext.Provider>\n}\n\nexport const withTasksContext = <P extends { config: SidebarTasksConfig }>(\n\tWrappedComponent: FC<Omit<P, 'config'>>,\n) =>\n\tfunction withTasksContextFn(props: P) {\n\t\tconst { config, ...rest } = props\n\n\t\treturn (\n\t\t\t<TasksProvider config={config}>\n\t\t\t\t<WrappedComponent {...rest} />\n\t\t\t</TasksProvider>\n\t\t)\n\t}\n"],"names":["useState","useEffectOnce","TaskEvents","TasksContext"],"mappings":";;;;;;;AAUO,MAAM,gBAAgB,CAAC,EAAE,UAAU,aAAiC;AAC1E,QAAM,CAAC,OAAO,QAAQ,IAAIA,MAAAA,SAAwB,CAAA,CAAE;AACpD,QAAM,CAAC,cAAc,eAAe,IAAIA,MAAAA,SAAS,IAAI;AAErD,QAAM,CAAC,YAAY,YAAY,IAAIA,MAAAA,SAAS,CAAC;AAEvC,QAAA;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA,IACG;AAEE,QAAA,EAAE,UAAU,cAAA,IAAkB;AAEpC,QAAM,aAAa,YAAY;AAC9B,oBAAgB,IAAI;AACd,UAAA,SAAS,MAAM,SAAS;AAC9B,aAAS,MAAM;AACf,oBAAgB,KAAK;AACd,WAAA;AAAA,EACR;AAEA,QAAM,iBAAiB,YAAY;AAC5B,UAAA,SAAS,MAAM,cAAc;AACnC,iBAAa,MAAM;AAAA,EACpB;AAEAC,gBAAAA,cAAc,MAAM;AACJ,mBAAA;AAEN,aAAA,iBAAiBC,sBAAW,eAAe,cAAc;AACzD,aAAA,iBAAiBA,sBAAW,YAAY,cAAc;AACtD,aAAA,iBAAiBA,sBAAW,SAAS,cAAc;AAE5D,WAAO,MAAM;AACH,eAAA,oBAAoBA,sBAAW,eAAe,cAAc;AAC5D,eAAA,oBAAoBA,sBAAW,YAAY,cAAc;AACzD,eAAA,oBAAoBA,sBAAW,SAAS,cAAc;AAAA,IAChE;AAAA,EAAA,CACA;AAED,QAAM,gBAA0C;AAAA,IAC/C;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAEA,wCAAQC,aAAAA,aAAa,UAAb,EAAsB,OAAO,eAAgB,UAAS;AAC/D;AAEO,MAAM,mBAAmB,CAC/B,qBAEA,SAAS,mBAAmB,OAAU;AACrC,QAAM,EAAE,QAAQ,GAAG,KAAA,IAAS;AAE5B,wCACE,eAAc,EAAA,QACd,yCAAC,kBAAkB,EAAA,GAAG,KAAM,CAAA,GAC7B;AAEF;;;"}
@@ -1,17 +1,63 @@
1
- var __defProp = Object.defineProperty;
2
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
- var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
4
- import { parseJwtTokenPayload } from "./harmony15.mjs";
5
- const _NewJwtIssuedEvent = class _NewJwtIssuedEvent extends CustomEvent {
6
- constructor(token) {
7
- super(_NewJwtIssuedEvent.eventName, {
8
- detail: { token, payload: parseJwtTokenPayload(token.accessToken) }
9
- });
10
- }
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { useEffectOnce } from "./harmony11.mjs";
3
+ import { useState } from "react";
4
+ import { TasksContext } from "./harmony100.mjs";
5
+ import { TaskEvents } from "./harmony103.mjs";
6
+ const TasksProvider = ({ children, config }) => {
7
+ const [tasks, setTasks] = useState([]);
8
+ const [loadingTasks, setLoadingTasks] = useState(true);
9
+ const [tasksCount, setTaskCount] = useState(0);
10
+ const {
11
+ getProjectUrl,
12
+ onLanguageCompleteConfirm,
13
+ onTasksWidgetOpen,
14
+ langNameOnClick,
15
+ langProgressOnClick,
16
+ taskTitleOnClick
17
+ } = config;
18
+ const { getTasks, getTasksCount } = config;
19
+ const fetchTasks = async () => {
20
+ setLoadingTasks(true);
21
+ const result = await getTasks();
22
+ setTasks(result);
23
+ setLoadingTasks(false);
24
+ return result;
25
+ };
26
+ const fetchTaskCount = async () => {
27
+ const result = await getTasksCount();
28
+ setTaskCount(result);
29
+ };
30
+ useEffectOnce(() => {
31
+ fetchTaskCount();
32
+ document.addEventListener(TaskEvents.TaskCompleted, fetchTaskCount);
33
+ document.addEventListener(TaskEvents.TaskClosed, fetchTaskCount);
34
+ document.addEventListener(TaskEvents.Refresh, fetchTaskCount);
35
+ return () => {
36
+ document.removeEventListener(TaskEvents.TaskCompleted, fetchTaskCount);
37
+ document.removeEventListener(TaskEvents.TaskClosed, fetchTaskCount);
38
+ document.removeEventListener(TaskEvents.Refresh, fetchTaskCount);
39
+ };
40
+ });
41
+ const providerValue = {
42
+ fetchTasks,
43
+ tasks,
44
+ tasksCount,
45
+ loadingTasks,
46
+ getProjectUrl,
47
+ onLanguageCompleteConfirm,
48
+ onTasksWidgetOpen,
49
+ langNameOnClick,
50
+ langProgressOnClick,
51
+ taskTitleOnClick
52
+ };
53
+ return /* @__PURE__ */ jsx(TasksContext.Provider, { value: providerValue, children });
54
+ };
55
+ const withTasksContext = (WrappedComponent) => function withTasksContextFn(props) {
56
+ const { config, ...rest } = props;
57
+ return /* @__PURE__ */ jsx(TasksProvider, { config, children: /* @__PURE__ */ jsx(WrappedComponent, { ...rest }) });
11
58
  };
12
- __publicField(_NewJwtIssuedEvent, "eventName", "new-jwt-issued");
13
- let NewJwtIssuedEvent = _NewJwtIssuedEvent;
14
59
  export {
15
- NewJwtIssuedEvent
60
+ TasksProvider,
61
+ withTasksContext
16
62
  };
17
63
  //# sourceMappingURL=harmony102.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony102.mjs","sources":["../src/features/auth/frontend/events/NewJwtIssuedEvent.ts"],"sourcesContent":["import type { JwtTokenPayload } from '@features/auth/core/types/jwtTokenPayload'\nimport { parseJwtTokenPayload } from '@features/auth/core/utils/jwtTokenPayload'\nimport type { JwtToken } from '@features/publicApi/types/userTokenTypes'\n\ntype NewJwtIssuedEventDetail = {\n\ttoken: JwtToken\n\tpayload: JwtTokenPayload | undefined\n}\n\n/**\n * This event is emitted when a new JWT token is issued or refreshed.\n */\nexport class NewJwtIssuedEvent extends CustomEvent<NewJwtIssuedEventDetail> {\n\tstatic readonly eventName = 'new-jwt-issued' as const\n\n\tconstructor(token: JwtToken) {\n\t\tsuper(NewJwtIssuedEvent.eventName, {\n\t\t\tdetail: { token, payload: parseJwtTokenPayload(token.accessToken) },\n\t\t})\n\t}\n}\n\nexport const isNewJwtIssuedEvent = (event: Event): event is NewJwtIssuedEvent =>\n\tevent.type === NewJwtIssuedEvent.eventName\n\ndeclare global {\n\tinterface WindowEventMap {\n\t\t[NewJwtIssuedEvent.eventName]: NewJwtIssuedEvent\n\t}\n}\n"],"names":[],"mappings":";;;;AAYO,MAAM,qBAAN,MAAM,2BAA0B,YAAqC;AAAA,EAG3E,YAAY,OAAiB;AAC5B,UAAM,mBAAkB,WAAW;AAAA,MAClC,QAAQ,EAAE,OAAO,SAAS,qBAAqB,MAAM,WAAW,EAAE;AAAA,IAAA,CAClE;AAAA,EAAA;AAEH;AAPC,cADY,oBACI,aAAY;AADtB,IAAM,oBAAN;"}
1
+ {"version":3,"file":"harmony102.mjs","sources":["../src/components/Sidebar/Widgets/Tasks/TasksProvider.tsx"],"sourcesContent":["import { useEffectOnce } from '@utils'\nimport { type FC, type PropsWithChildren, useState } from 'react'\nimport { TasksContext } from './TasksContext'\nimport type { SidebarTask, SidebarTasksConfig, SidebarTasksContextProps } from './types'\nimport { TaskEvents } from './utils/taskEvents'\n\ntype TasksProviderProps = PropsWithChildren<{\n\tconfig: SidebarTasksConfig\n}>\n\nexport const TasksProvider = ({ children, config }: TasksProviderProps) => {\n\tconst [tasks, setTasks] = useState<SidebarTask[]>([])\n\tconst [loadingTasks, setLoadingTasks] = useState(true)\n\n\tconst [tasksCount, setTaskCount] = useState(0)\n\n\tconst {\n\t\tgetProjectUrl,\n\t\tonLanguageCompleteConfirm,\n\t\tonTasksWidgetOpen,\n\t\tlangNameOnClick,\n\t\tlangProgressOnClick,\n\t\ttaskTitleOnClick,\n\t} = config\n\n\tconst { getTasks, getTasksCount } = config\n\n\tconst fetchTasks = async () => {\n\t\tsetLoadingTasks(true)\n\t\tconst result = await getTasks()\n\t\tsetTasks(result)\n\t\tsetLoadingTasks(false)\n\t\treturn result\n\t}\n\n\tconst fetchTaskCount = async () => {\n\t\tconst result = await getTasksCount()\n\t\tsetTaskCount(result)\n\t}\n\n\tuseEffectOnce(() => {\n\t\tfetchTaskCount()\n\n\t\tdocument.addEventListener(TaskEvents.TaskCompleted, fetchTaskCount)\n\t\tdocument.addEventListener(TaskEvents.TaskClosed, fetchTaskCount)\n\t\tdocument.addEventListener(TaskEvents.Refresh, fetchTaskCount)\n\n\t\treturn () => {\n\t\t\tdocument.removeEventListener(TaskEvents.TaskCompleted, fetchTaskCount)\n\t\t\tdocument.removeEventListener(TaskEvents.TaskClosed, fetchTaskCount)\n\t\t\tdocument.removeEventListener(TaskEvents.Refresh, fetchTaskCount)\n\t\t}\n\t})\n\n\tconst providerValue: SidebarTasksContextProps = {\n\t\tfetchTasks,\n\t\ttasks,\n\t\ttasksCount,\n\t\tloadingTasks,\n\t\tgetProjectUrl,\n\t\tonLanguageCompleteConfirm,\n\t\tonTasksWidgetOpen,\n\t\tlangNameOnClick,\n\t\tlangProgressOnClick,\n\t\ttaskTitleOnClick,\n\t}\n\n\treturn <TasksContext.Provider value={providerValue}>{children}</TasksContext.Provider>\n}\n\nexport const withTasksContext = <P extends { config: SidebarTasksConfig }>(\n\tWrappedComponent: FC<Omit<P, 'config'>>,\n) =>\n\tfunction withTasksContextFn(props: P) {\n\t\tconst { config, ...rest } = props\n\n\t\treturn (\n\t\t\t<TasksProvider config={config}>\n\t\t\t\t<WrappedComponent {...rest} />\n\t\t\t</TasksProvider>\n\t\t)\n\t}\n"],"names":[],"mappings":";;;;;AAUO,MAAM,gBAAgB,CAAC,EAAE,UAAU,aAAiC;AAC1E,QAAM,CAAC,OAAO,QAAQ,IAAI,SAAwB,CAAA,CAAE;AACpD,QAAM,CAAC,cAAc,eAAe,IAAI,SAAS,IAAI;AAErD,QAAM,CAAC,YAAY,YAAY,IAAI,SAAS,CAAC;AAEvC,QAAA;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA,IACG;AAEE,QAAA,EAAE,UAAU,cAAA,IAAkB;AAEpC,QAAM,aAAa,YAAY;AAC9B,oBAAgB,IAAI;AACd,UAAA,SAAS,MAAM,SAAS;AAC9B,aAAS,MAAM;AACf,oBAAgB,KAAK;AACd,WAAA;AAAA,EACR;AAEA,QAAM,iBAAiB,YAAY;AAC5B,UAAA,SAAS,MAAM,cAAc;AACnC,iBAAa,MAAM;AAAA,EACpB;AAEA,gBAAc,MAAM;AACJ,mBAAA;AAEN,aAAA,iBAAiB,WAAW,eAAe,cAAc;AACzD,aAAA,iBAAiB,WAAW,YAAY,cAAc;AACtD,aAAA,iBAAiB,WAAW,SAAS,cAAc;AAE5D,WAAO,MAAM;AACH,eAAA,oBAAoB,WAAW,eAAe,cAAc;AAC5D,eAAA,oBAAoB,WAAW,YAAY,cAAc;AACzD,eAAA,oBAAoB,WAAW,SAAS,cAAc;AAAA,IAChE;AAAA,EAAA,CACA;AAED,QAAM,gBAA0C;AAAA,IAC/C;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAEA,6BAAQ,aAAa,UAAb,EAAsB,OAAO,eAAgB,UAAS;AAC/D;AAEO,MAAM,mBAAmB,CAC/B,qBAEA,SAAS,mBAAmB,OAAU;AACrC,QAAM,EAAE,QAAQ,GAAG,KAAA,IAAS;AAE5B,6BACE,eAAc,EAAA,QACd,8BAAC,kBAAkB,EAAA,GAAG,KAAM,CAAA,GAC7B;AAEF;"}
@@ -1,19 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- function buildGetRoute(params) {
4
- return {
5
- isEmptyResponseExpected: params.isEmptyResponseExpected ?? false,
6
- isNonJSONResponseExpected: params.isNonJSONResponseExpected ?? false,
7
- method: "get",
8
- pathResolver: params.pathResolver,
9
- requestHeaderSchema: params.requestHeaderSchema,
10
- requestPathParamsSchema: params.requestPathParamsSchema,
11
- requestQuerySchema: params.requestQuerySchema,
12
- successResponseBodySchema: params.successResponseBodySchema,
13
- description: params.description,
14
- responseSchemasByStatusCode: params.responseSchemasByStatusCode,
15
- metadata: params.metadata
16
- };
17
- }
18
- exports.buildGetRoute = buildGetRoute;
3
+ const TaskEvents = {
4
+ TaskCompleted: "task_completed",
5
+ TaskClosed: "task_closed",
6
+ Refresh: "refresh",
7
+ ShowDialog: "show_dialog"
8
+ };
9
+ exports.TaskEvents = TaskEvents;
19
10
  //# sourceMappingURL=harmony103.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony103.cjs","sources":["../node_modules/@lokalise/universal-ts-utils/dist/public/api-contracts/apiContracts.js"],"sourcesContent":["const EMPTY_PARAMS = {};\nexport function buildPayloadRoute(params) {\n return {\n isEmptyResponseExpected: params.isEmptyResponseExpected ?? false,\n isNonJSONResponseExpected: params.isNonJSONResponseExpected ?? false,\n method: params.method,\n pathResolver: params.pathResolver,\n requestBodySchema: params.requestBodySchema,\n requestHeaderSchema: params.requestHeaderSchema,\n requestPathParamsSchema: params.requestPathParamsSchema,\n requestQuerySchema: params.requestQuerySchema,\n successResponseBodySchema: params.successResponseBodySchema,\n description: params.description,\n responseSchemasByStatusCode: params.responseSchemasByStatusCode,\n metadata: params.metadata,\n };\n}\nexport function buildGetRoute(params) {\n return {\n isEmptyResponseExpected: params.isEmptyResponseExpected ?? false,\n isNonJSONResponseExpected: params.isNonJSONResponseExpected ?? false,\n method: 'get',\n pathResolver: params.pathResolver,\n requestHeaderSchema: params.requestHeaderSchema,\n requestPathParamsSchema: params.requestPathParamsSchema,\n requestQuerySchema: params.requestQuerySchema,\n successResponseBodySchema: params.successResponseBodySchema,\n description: params.description,\n responseSchemasByStatusCode: params.responseSchemasByStatusCode,\n metadata: params.metadata,\n };\n}\nexport function buildDeleteRoute(params) {\n return {\n isEmptyResponseExpected: params.isEmptyResponseExpected ?? true,\n isNonJSONResponseExpected: params.isNonJSONResponseExpected ?? false,\n method: 'delete',\n pathResolver: params.pathResolver,\n requestHeaderSchema: params.requestHeaderSchema,\n requestPathParamsSchema: params.requestPathParamsSchema,\n requestQuerySchema: params.requestQuerySchema,\n successResponseBodySchema: params.successResponseBodySchema,\n description: params.description,\n responseSchemasByStatusCode: params.responseSchemasByStatusCode,\n metadata: params.metadata,\n };\n}\n/**\n * This method maps given route definition to a string of the format '/static-path-part/:path-param-value'\n */\nexport function mapRouteToPath(\n// biome-ignore lint/suspicious/noExplicitAny: We don't care about types here, we just need Zod schema\nrouteDefinition) {\n if (!routeDefinition.requestPathParamsSchema) {\n return routeDefinition.pathResolver(EMPTY_PARAMS);\n }\n const shape = routeDefinition.requestPathParamsSchema.shape;\n const resolverParams = {};\n for (const key of Object.keys(shape)) {\n resolverParams[key] = `:${key}`;\n }\n return routeDefinition.pathResolver(resolverParams);\n}\n//# sourceMappingURL=apiContracts.js.map"],"names":[],"mappings":";;AAiBO,SAAS,cAAc,QAAQ;AAClC,SAAO;AAAA,IACH,yBAAyB,OAAO,2BAA2B;AAAA,IAC3D,2BAA2B,OAAO,6BAA6B;AAAA,IAC/D,QAAQ;AAAA,IACR,cAAc,OAAO;AAAA,IACrB,qBAAqB,OAAO;AAAA,IAC5B,yBAAyB,OAAO;AAAA,IAChC,oBAAoB,OAAO;AAAA,IAC3B,2BAA2B,OAAO;AAAA,IAClC,aAAa,OAAO;AAAA,IACpB,6BAA6B,OAAO;AAAA,IACpC,UAAU,OAAO;AAAA,EACpB;AACL;;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"harmony103.cjs","sources":["../src/components/Sidebar/Widgets/Tasks/utils/taskEvents.ts"],"sourcesContent":["import type { TypesFromMap } from '@utils'\n\nexport const TaskEvents = {\n\tTaskCompleted: 'task_completed',\n\tTaskClosed: 'task_closed',\n\tRefresh: 'refresh',\n\tShowDialog: 'show_dialog',\n} as const\n\nexport type TaskEvent = TypesFromMap<typeof TaskEvents>\n\ntype SingleTaskPayload = {\n\ttaskId: string | number\n}\n\ntype DispatchTaskEventPayload =\n\t| {\n\t\t\tname: typeof TaskEvents.TaskCompleted\n\t\t\tdetail: SingleTaskPayload\n\t }\n\t| {\n\t\t\tname: typeof TaskEvents.TaskClosed\n\t\t\tdetail: SingleTaskPayload\n\t }\n\t| {\n\t\t\tname: typeof TaskEvents.Refresh\n\t }\n\t| {\n\t\t\tname: typeof TaskEvents.ShowDialog\n\t }\n\nexport const dispatchTaskEvent = (props: DispatchTaskEventPayload) => {\n\tconst { name } = props\n\tdocument.dispatchEvent(new CustomEvent(name, { detail: 'detail' in props ? props.detail : {} }))\n}\n"],"names":[],"mappings":";;AAEO,MAAM,aAAa;AAAA,EACzB,eAAe;AAAA,EACf,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,YAAY;AACb;;"}
@@ -1,19 +1,10 @@
1
- function buildGetRoute(params) {
2
- return {
3
- isEmptyResponseExpected: params.isEmptyResponseExpected ?? false,
4
- isNonJSONResponseExpected: params.isNonJSONResponseExpected ?? false,
5
- method: "get",
6
- pathResolver: params.pathResolver,
7
- requestHeaderSchema: params.requestHeaderSchema,
8
- requestPathParamsSchema: params.requestPathParamsSchema,
9
- requestQuerySchema: params.requestQuerySchema,
10
- successResponseBodySchema: params.successResponseBodySchema,
11
- description: params.description,
12
- responseSchemasByStatusCode: params.responseSchemasByStatusCode,
13
- metadata: params.metadata
14
- };
15
- }
1
+ const TaskEvents = {
2
+ TaskCompleted: "task_completed",
3
+ TaskClosed: "task_closed",
4
+ Refresh: "refresh",
5
+ ShowDialog: "show_dialog"
6
+ };
16
7
  export {
17
- buildGetRoute
8
+ TaskEvents
18
9
  };
19
10
  //# sourceMappingURL=harmony103.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony103.mjs","sources":["../node_modules/@lokalise/universal-ts-utils/dist/public/api-contracts/apiContracts.js"],"sourcesContent":["const EMPTY_PARAMS = {};\nexport function buildPayloadRoute(params) {\n return {\n isEmptyResponseExpected: params.isEmptyResponseExpected ?? false,\n isNonJSONResponseExpected: params.isNonJSONResponseExpected ?? false,\n method: params.method,\n pathResolver: params.pathResolver,\n requestBodySchema: params.requestBodySchema,\n requestHeaderSchema: params.requestHeaderSchema,\n requestPathParamsSchema: params.requestPathParamsSchema,\n requestQuerySchema: params.requestQuerySchema,\n successResponseBodySchema: params.successResponseBodySchema,\n description: params.description,\n responseSchemasByStatusCode: params.responseSchemasByStatusCode,\n metadata: params.metadata,\n };\n}\nexport function buildGetRoute(params) {\n return {\n isEmptyResponseExpected: params.isEmptyResponseExpected ?? false,\n isNonJSONResponseExpected: params.isNonJSONResponseExpected ?? false,\n method: 'get',\n pathResolver: params.pathResolver,\n requestHeaderSchema: params.requestHeaderSchema,\n requestPathParamsSchema: params.requestPathParamsSchema,\n requestQuerySchema: params.requestQuerySchema,\n successResponseBodySchema: params.successResponseBodySchema,\n description: params.description,\n responseSchemasByStatusCode: params.responseSchemasByStatusCode,\n metadata: params.metadata,\n };\n}\nexport function buildDeleteRoute(params) {\n return {\n isEmptyResponseExpected: params.isEmptyResponseExpected ?? true,\n isNonJSONResponseExpected: params.isNonJSONResponseExpected ?? false,\n method: 'delete',\n pathResolver: params.pathResolver,\n requestHeaderSchema: params.requestHeaderSchema,\n requestPathParamsSchema: params.requestPathParamsSchema,\n requestQuerySchema: params.requestQuerySchema,\n successResponseBodySchema: params.successResponseBodySchema,\n description: params.description,\n responseSchemasByStatusCode: params.responseSchemasByStatusCode,\n metadata: params.metadata,\n };\n}\n/**\n * This method maps given route definition to a string of the format '/static-path-part/:path-param-value'\n */\nexport function mapRouteToPath(\n// biome-ignore lint/suspicious/noExplicitAny: We don't care about types here, we just need Zod schema\nrouteDefinition) {\n if (!routeDefinition.requestPathParamsSchema) {\n return routeDefinition.pathResolver(EMPTY_PARAMS);\n }\n const shape = routeDefinition.requestPathParamsSchema.shape;\n const resolverParams = {};\n for (const key of Object.keys(shape)) {\n resolverParams[key] = `:${key}`;\n }\n return routeDefinition.pathResolver(resolverParams);\n}\n//# sourceMappingURL=apiContracts.js.map"],"names":[],"mappings":"AAiBO,SAAS,cAAc,QAAQ;AAClC,SAAO;AAAA,IACH,yBAAyB,OAAO,2BAA2B;AAAA,IAC3D,2BAA2B,OAAO,6BAA6B;AAAA,IAC/D,QAAQ;AAAA,IACR,cAAc,OAAO;AAAA,IACrB,qBAAqB,OAAO;AAAA,IAC5B,yBAAyB,OAAO;AAAA,IAChC,oBAAoB,OAAO;AAAA,IAC3B,2BAA2B,OAAO;AAAA,IAClC,aAAa,OAAO;AAAA,IACpB,6BAA6B,OAAO;AAAA,IACpC,UAAU,OAAO;AAAA,EACpB;AACL;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"harmony103.mjs","sources":["../src/components/Sidebar/Widgets/Tasks/utils/taskEvents.ts"],"sourcesContent":["import type { TypesFromMap } from '@utils'\n\nexport const TaskEvents = {\n\tTaskCompleted: 'task_completed',\n\tTaskClosed: 'task_closed',\n\tRefresh: 'refresh',\n\tShowDialog: 'show_dialog',\n} as const\n\nexport type TaskEvent = TypesFromMap<typeof TaskEvents>\n\ntype SingleTaskPayload = {\n\ttaskId: string | number\n}\n\ntype DispatchTaskEventPayload =\n\t| {\n\t\t\tname: typeof TaskEvents.TaskCompleted\n\t\t\tdetail: SingleTaskPayload\n\t }\n\t| {\n\t\t\tname: typeof TaskEvents.TaskClosed\n\t\t\tdetail: SingleTaskPayload\n\t }\n\t| {\n\t\t\tname: typeof TaskEvents.Refresh\n\t }\n\t| {\n\t\t\tname: typeof TaskEvents.ShowDialog\n\t }\n\nexport const dispatchTaskEvent = (props: DispatchTaskEventPayload) => {\n\tconst { name } = props\n\tdocument.dispatchEvent(new CustomEvent(name, { detail: 'detail' in props ? props.detail : {} }))\n}\n"],"names":[],"mappings":"AAEO,MAAM,aAAa;AAAA,EACzB,eAAe;AAAA,EACf,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,YAAY;AACb;"}