@lokalise/harmony 1.29.4 → 1.29.5-exp-teamSwitch.1

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 (226) hide show
  1. package/dist/harmony.cjs +3 -0
  2. package/dist/harmony.cjs.map +1 -1
  3. package/dist/harmony.mjs +5 -2
  4. package/dist/harmony100.cjs +12 -130
  5. package/dist/harmony100.cjs.map +1 -1
  6. package/dist/harmony100.mjs +12 -130
  7. package/dist/harmony100.mjs.map +1 -1
  8. package/dist/harmony101.cjs +132 -12
  9. package/dist/harmony101.cjs.map +1 -1
  10. package/dist/harmony101.mjs +131 -11
  11. package/dist/harmony101.mjs.map +1 -1
  12. package/dist/harmony102.cjs +13 -6
  13. package/dist/harmony102.cjs.map +1 -1
  14. package/dist/harmony102.mjs +12 -5
  15. package/dist/harmony102.mjs.map +1 -1
  16. package/dist/harmony103.cjs +5 -40
  17. package/dist/harmony103.cjs.map +1 -1
  18. package/dist/harmony103.mjs +5 -40
  19. package/dist/harmony103.mjs.map +1 -1
  20. package/dist/harmony104.cjs +33 -53
  21. package/dist/harmony104.cjs.map +1 -1
  22. package/dist/harmony104.mjs +34 -54
  23. package/dist/harmony104.mjs.map +1 -1
  24. package/dist/harmony105.cjs +59 -6
  25. package/dist/harmony105.cjs.map +1 -1
  26. package/dist/harmony105.mjs +59 -6
  27. package/dist/harmony105.mjs.map +1 -1
  28. package/dist/harmony106.cjs +8 -6
  29. package/dist/harmony106.cjs.map +1 -1
  30. package/dist/harmony106.mjs +7 -5
  31. package/dist/harmony106.mjs.map +1 -1
  32. package/dist/harmony107.cjs +6 -5
  33. package/dist/harmony107.cjs.map +1 -1
  34. package/dist/harmony107.mjs +6 -5
  35. package/dist/harmony110.cjs +1 -1
  36. package/dist/harmony110.mjs +1 -1
  37. package/dist/harmony111.cjs +2 -2
  38. package/dist/harmony111.mjs +2 -2
  39. package/dist/harmony113.cjs +13 -62
  40. package/dist/harmony113.cjs.map +1 -1
  41. package/dist/harmony113.mjs +12 -61
  42. package/dist/harmony113.mjs.map +1 -1
  43. package/dist/harmony114.cjs +15 -88
  44. package/dist/harmony114.cjs.map +1 -1
  45. package/dist/harmony114.mjs +15 -88
  46. package/dist/harmony114.mjs.map +1 -1
  47. package/dist/harmony115.cjs +17 -19
  48. package/dist/harmony115.cjs.map +1 -1
  49. package/dist/harmony115.mjs +16 -18
  50. package/dist/harmony115.mjs.map +1 -1
  51. package/dist/harmony116.cjs +62 -13
  52. package/dist/harmony116.cjs.map +1 -1
  53. package/dist/harmony116.mjs +61 -12
  54. package/dist/harmony116.mjs.map +1 -1
  55. package/dist/harmony117.cjs +88 -15
  56. package/dist/harmony117.cjs.map +1 -1
  57. package/dist/harmony117.mjs +88 -15
  58. package/dist/harmony117.mjs.map +1 -1
  59. package/dist/harmony118.cjs +19 -17
  60. package/dist/harmony118.cjs.map +1 -1
  61. package/dist/harmony118.mjs +18 -16
  62. package/dist/harmony118.mjs.map +1 -1
  63. package/dist/harmony119.cjs +10 -15
  64. package/dist/harmony119.cjs.map +1 -1
  65. package/dist/harmony119.mjs +10 -15
  66. package/dist/harmony119.mjs.map +1 -1
  67. package/dist/harmony120.cjs +13 -18
  68. package/dist/harmony120.cjs.map +1 -1
  69. package/dist/harmony120.mjs +13 -18
  70. package/dist/harmony120.mjs.map +1 -1
  71. package/dist/harmony121.cjs +19 -10
  72. package/dist/harmony121.cjs.map +1 -1
  73. package/dist/harmony121.mjs +19 -10
  74. package/dist/harmony121.mjs.map +1 -1
  75. package/dist/harmony122.cjs +11 -10
  76. package/dist/harmony122.cjs.map +1 -1
  77. package/dist/harmony122.mjs +11 -10
  78. package/dist/harmony122.mjs.map +1 -1
  79. package/dist/harmony123.cjs +6 -7
  80. package/dist/harmony123.cjs.map +1 -1
  81. package/dist/harmony123.mjs +6 -7
  82. package/dist/harmony123.mjs.map +1 -1
  83. package/dist/harmony124.cjs +12 -57
  84. package/dist/harmony124.cjs.map +1 -1
  85. package/dist/harmony124.mjs +12 -57
  86. package/dist/harmony124.mjs.map +1 -1
  87. package/dist/harmony125.cjs +30 -58
  88. package/dist/harmony125.cjs.map +1 -1
  89. package/dist/harmony125.mjs +30 -58
  90. package/dist/harmony125.mjs.map +1 -1
  91. package/dist/harmony126.cjs +15 -19
  92. package/dist/harmony126.cjs.map +1 -1
  93. package/dist/harmony126.mjs +14 -18
  94. package/dist/harmony126.mjs.map +1 -1
  95. package/dist/harmony127.cjs +7 -12
  96. package/dist/harmony127.cjs.map +1 -1
  97. package/dist/harmony127.mjs +7 -12
  98. package/dist/harmony127.mjs.map +1 -1
  99. package/dist/harmony128.cjs +56 -31
  100. package/dist/harmony128.cjs.map +1 -1
  101. package/dist/harmony128.mjs +56 -31
  102. package/dist/harmony128.mjs.map +1 -1
  103. package/dist/harmony129.cjs +59 -13
  104. package/dist/harmony129.cjs.map +1 -1
  105. package/dist/harmony129.mjs +59 -13
  106. package/dist/harmony129.mjs.map +1 -1
  107. package/dist/harmony130.cjs +19 -7
  108. package/dist/harmony130.cjs.map +1 -1
  109. package/dist/harmony130.mjs +18 -6
  110. package/dist/harmony130.mjs.map +1 -1
  111. package/dist/harmony131.cjs +1 -1
  112. package/dist/harmony131.mjs +1 -1
  113. package/dist/harmony15.cjs +1 -1
  114. package/dist/harmony15.mjs +1 -1
  115. package/dist/harmony22.cjs +1 -1
  116. package/dist/harmony22.mjs +1 -1
  117. package/dist/harmony23.cjs +1 -1
  118. package/dist/harmony23.mjs +1 -1
  119. package/dist/harmony31.cjs +9 -0
  120. package/dist/harmony31.cjs.map +1 -1
  121. package/dist/harmony31.mjs +12 -3
  122. package/dist/harmony31.mjs.map +1 -1
  123. package/dist/harmony61.cjs +7 -1
  124. package/dist/harmony61.cjs.map +1 -1
  125. package/dist/harmony61.mjs +7 -1
  126. package/dist/harmony61.mjs.map +1 -1
  127. package/dist/harmony68.cjs +1 -1
  128. package/dist/harmony68.mjs +1 -1
  129. package/dist/harmony69.cjs +1 -1
  130. package/dist/harmony69.mjs +1 -1
  131. package/dist/harmony70.cjs +1 -1
  132. package/dist/harmony70.mjs +1 -1
  133. package/dist/harmony71.cjs +2 -2
  134. package/dist/harmony71.mjs +2 -2
  135. package/dist/harmony72.cjs +2 -2
  136. package/dist/harmony72.mjs +2 -2
  137. package/dist/harmony73.cjs +2 -2
  138. package/dist/harmony73.mjs +2 -2
  139. package/dist/harmony74.cjs +2 -2
  140. package/dist/harmony74.mjs +2 -2
  141. package/dist/harmony75.cjs +3 -3
  142. package/dist/harmony75.mjs +3 -3
  143. package/dist/harmony76.cjs +6 -6
  144. package/dist/harmony76.mjs +6 -6
  145. package/dist/harmony79.cjs +2 -2
  146. package/dist/harmony79.mjs +2 -2
  147. package/dist/harmony81.cjs +12 -7
  148. package/dist/harmony81.cjs.map +1 -1
  149. package/dist/harmony81.mjs +11 -6
  150. package/dist/harmony81.mjs.map +1 -1
  151. package/dist/harmony82.cjs +20 -8
  152. package/dist/harmony82.cjs.map +1 -1
  153. package/dist/harmony82.mjs +20 -8
  154. package/dist/harmony82.mjs.map +1 -1
  155. package/dist/harmony83.cjs +3 -6
  156. package/dist/harmony83.cjs.map +1 -1
  157. package/dist/harmony83.mjs +3 -6
  158. package/dist/harmony83.mjs.map +1 -1
  159. package/dist/harmony84.cjs +9 -57
  160. package/dist/harmony84.cjs.map +1 -1
  161. package/dist/harmony84.mjs +8 -56
  162. package/dist/harmony84.mjs.map +1 -1
  163. package/dist/harmony85.cjs +9 -42
  164. package/dist/harmony85.cjs.map +1 -1
  165. package/dist/harmony85.mjs +8 -41
  166. package/dist/harmony85.mjs.map +1 -1
  167. package/dist/harmony86.cjs +57 -5
  168. package/dist/harmony86.cjs.map +1 -1
  169. package/dist/harmony86.mjs +57 -5
  170. package/dist/harmony86.mjs.map +1 -1
  171. package/dist/harmony87.cjs +42 -9
  172. package/dist/harmony87.cjs.map +1 -1
  173. package/dist/harmony87.mjs +41 -8
  174. package/dist/harmony87.mjs.map +1 -1
  175. package/dist/harmony88.cjs +6 -25
  176. package/dist/harmony88.cjs.map +1 -1
  177. package/dist/harmony88.mjs +5 -24
  178. package/dist/harmony88.mjs.map +1 -1
  179. package/dist/harmony89.cjs +6 -3
  180. package/dist/harmony89.cjs.map +1 -1
  181. package/dist/harmony89.mjs +6 -3
  182. package/dist/harmony89.mjs.map +1 -1
  183. package/dist/harmony90.cjs +24 -21
  184. package/dist/harmony90.cjs.map +1 -1
  185. package/dist/harmony90.mjs +23 -20
  186. package/dist/harmony90.mjs.map +1 -1
  187. package/dist/harmony91.cjs +3 -9
  188. package/dist/harmony91.cjs.map +1 -1
  189. package/dist/harmony91.mjs +3 -9
  190. package/dist/harmony91.mjs.map +1 -1
  191. package/dist/harmony92.cjs +19 -9
  192. package/dist/harmony92.cjs.map +1 -1
  193. package/dist/harmony92.mjs +21 -11
  194. package/dist/harmony92.mjs.map +1 -1
  195. package/dist/harmony93.cjs +11 -20
  196. package/dist/harmony93.cjs.map +1 -1
  197. package/dist/harmony93.mjs +11 -20
  198. package/dist/harmony93.mjs.map +1 -1
  199. package/dist/harmony94.cjs +2 -2
  200. package/dist/harmony94.mjs +2 -2
  201. package/dist/harmony95.cjs +22 -19
  202. package/dist/harmony95.cjs.map +1 -1
  203. package/dist/harmony95.mjs +21 -18
  204. package/dist/harmony95.mjs.map +1 -1
  205. package/dist/harmony96.cjs +5 -13
  206. package/dist/harmony96.cjs.map +1 -1
  207. package/dist/harmony96.mjs +5 -13
  208. package/dist/harmony96.mjs.map +1 -1
  209. package/dist/harmony97.cjs +5 -21
  210. package/dist/harmony97.cjs.map +1 -1
  211. package/dist/harmony97.mjs +5 -21
  212. package/dist/harmony97.mjs.map +1 -1
  213. package/dist/harmony98.cjs +6 -7
  214. package/dist/harmony98.cjs.map +1 -1
  215. package/dist/harmony98.mjs +5 -6
  216. package/dist/harmony98.mjs.map +1 -1
  217. package/dist/harmony99.cjs +19 -7
  218. package/dist/harmony99.cjs.map +1 -1
  219. package/dist/harmony99.mjs +18 -6
  220. package/dist/harmony99.mjs.map +1 -1
  221. package/dist/types/src/features/publicApi/hooks/useSwitchTeamMutation.d.ts +15 -0
  222. package/dist/types/src/features/publicApi/hooks/useSwitchTeamMutation.test.d.ts +1 -0
  223. package/dist/types/src/features/publicApi/team.d.ts +61 -0
  224. package/dist/types/src/features/publicApi/types/teamTypes.d.ts +10 -0
  225. package/dist/types/tests/utils/apiHelpers.d.ts +1 -0
  226. package/package.json +1 -1
@@ -1,43 +1,8 @@
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 "./harmony114.mjs";
5
- import { useTasks } from "./harmony102.mjs";
6
- import { TaskEvents } from "./harmony105.mjs";
7
- import styles from "./harmony115.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
- };
1
+ import { createContext, useContext } from "react";
2
+ const TasksContext = createContext({});
3
+ const useTasks = () => useContext(TasksContext);
40
4
  export {
41
- TasksPopover
5
+ TasksContext,
6
+ useTasks
42
7
  };
43
8
  //# sourceMappingURL=harmony103.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony103.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
+ {"version":3,"file":"harmony103.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,63 +1,43 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
+ const louis = require("@lokalise/louis");
4
5
  const useEffectOnce = require("./harmony11.cjs");
5
- const React = require("react");
6
- const TasksContext = require("./harmony102.cjs");
7
- const taskEvents = require("./harmony105.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
- };
6
+ const TaskOverview = require("./harmony117.cjs");
7
+ const TasksContext = require("./harmony103.cjs");
8
+ const taskEvents = require("./harmony106.cjs");
9
+ const TasksPopover_module = require("./harmony118.cjs");
10
+ const TasksPopover = () => {
11
+ const { tasks, onTasksWidgetOpen, loadingTasks, fetchTasks } = TasksContext.useTasks();
32
12
  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);
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);
37
21
  return () => {
38
- document.removeEventListener(taskEvents.TaskEvents.TaskCompleted, fetchTaskCount);
39
- document.removeEventListener(taskEvents.TaskEvents.TaskClosed, fetchTaskCount);
40
- document.removeEventListener(taskEvents.TaskEvents.Refresh, fetchTaskCount);
22
+ document.removeEventListener(taskEvents.TaskEvents.TaskCompleted, fetchTasks);
23
+ document.removeEventListener(taskEvents.TaskEvents.TaskClosed, fetchTasks);
24
+ document.removeEventListener(taskEvents.TaskEvents.Refresh, fetchTasks);
41
25
  };
42
26
  });
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 });
56
- };
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 }) });
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)) });
60
41
  };
61
- exports.TasksProvider = TasksProvider;
62
- exports.withTasksContext = withTasksContext;
42
+ exports.TasksPopover = TasksPopover;
63
43
  //# sourceMappingURL=harmony104.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony104.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
+ {"version":3,"file":"harmony104.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,63 +1,43 @@
1
- import { jsx } from "react/jsx-runtime";
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { Loading, Link } from "@lokalise/louis";
2
3
  import { useEffectOnce } from "./harmony11.mjs";
3
- import { useState } from "react";
4
- import { TasksContext } from "./harmony102.mjs";
5
- import { TaskEvents } from "./harmony105.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
- };
4
+ import { TaskOverview } from "./harmony117.mjs";
5
+ import { useTasks } from "./harmony103.mjs";
6
+ import { TaskEvents } from "./harmony106.mjs";
7
+ import styles from "./harmony118.mjs";
8
+ const TasksPopover = () => {
9
+ const { tasks, onTasksWidgetOpen, loadingTasks, fetchTasks } = useTasks();
30
10
  useEffectOnce(() => {
31
- fetchTaskCount();
32
- document.addEventListener(TaskEvents.TaskCompleted, fetchTaskCount);
33
- document.addEventListener(TaskEvents.TaskClosed, fetchTaskCount);
34
- document.addEventListener(TaskEvents.Refresh, fetchTaskCount);
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);
35
19
  return () => {
36
- document.removeEventListener(TaskEvents.TaskCompleted, fetchTaskCount);
37
- document.removeEventListener(TaskEvents.TaskClosed, fetchTaskCount);
38
- document.removeEventListener(TaskEvents.Refresh, fetchTaskCount);
20
+ document.removeEventListener(TaskEvents.TaskCompleted, fetchTasks);
21
+ document.removeEventListener(TaskEvents.TaskClosed, fetchTasks);
22
+ document.removeEventListener(TaskEvents.Refresh, fetchTasks);
39
23
  };
40
24
  });
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 }) });
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)) });
58
39
  };
59
40
  export {
60
- TasksProvider,
61
- withTasksContext
41
+ TasksPopover
62
42
  };
63
43
  //# sourceMappingURL=harmony104.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony104.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
+ {"version":3,"file":"harmony104.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,10 +1,63 @@
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"
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const useEffectOnce = require("./harmony11.cjs");
5
+ const React = require("react");
6
+ const TasksContext = require("./harmony103.cjs");
7
+ const taskEvents = require("./harmony106.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 });
8
56
  };
9
- exports.TaskEvents = TaskEvents;
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;
10
63
  //# sourceMappingURL=harmony105.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony105.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":"harmony105.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,10 +1,63 @@
1
- const TaskEvents = {
2
- TaskCompleted: "task_completed",
3
- TaskClosed: "task_closed",
4
- Refresh: "refresh",
5
- ShowDialog: "show_dialog"
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { useEffectOnce } from "./harmony11.mjs";
3
+ import { useState } from "react";
4
+ import { TasksContext } from "./harmony103.mjs";
5
+ import { TaskEvents } from "./harmony106.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 }) });
6
58
  };
7
59
  export {
8
- TaskEvents
60
+ TasksProvider,
61
+ withTasksContext
9
62
  };
10
63
  //# sourceMappingURL=harmony105.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony105.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":"harmony105.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,8 +1,10 @@
1
1
  "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
- const _commonjsHelpers = require("./harmony130.cjs");
4
- const debounce$1 = require("./harmony108.cjs");
5
- var debounceExports = debounce$1.__require();
6
- const debounce = /* @__PURE__ */ _commonjsHelpers.getDefaultExportFromCjs(debounceExports);
7
- exports.default = debounce;
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;
8
10
  //# sourceMappingURL=harmony106.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony106.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
1
+ {"version":3,"file":"harmony106.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,8 +1,10 @@
1
- import { getDefaultExportFromCjs } from "./harmony130.mjs";
2
- import { __require as requireDebounce } from "./harmony108.mjs";
3
- var debounceExports = requireDebounce();
4
- const debounce = /* @__PURE__ */ getDefaultExportFromCjs(debounceExports);
1
+ const TaskEvents = {
2
+ TaskCompleted: "task_completed",
3
+ TaskClosed: "task_closed",
4
+ Refresh: "refresh",
5
+ ShowDialog: "show_dialog"
6
+ };
5
7
  export {
6
- debounce as default
8
+ TaskEvents
7
9
  };
8
10
  //# sourceMappingURL=harmony106.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony106.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
1
+ {"version":3,"file":"harmony106.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,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
- const _commonjsHelpers = require("./harmony130.cjs");
4
- const throttle$1 = require("./harmony112.cjs");
5
- var throttleExports = throttle$1.__require();
6
- const throttle = /* @__PURE__ */ _commonjsHelpers.getDefaultExportFromCjs(throttleExports);
7
- exports.default = throttle;
3
+ const iconContainer = "_iconContainer_nz34m_1";
4
+ const styles = {
5
+ iconContainer
6
+ };
7
+ exports.default = styles;
8
+ exports.iconContainer = iconContainer;
8
9
  //# sourceMappingURL=harmony107.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony107.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
1
+ {"version":3,"file":"harmony107.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
@@ -1,8 +1,9 @@
1
- import { getDefaultExportFromCjs } from "./harmony130.mjs";
2
- import { __require as requireThrottle } from "./harmony112.mjs";
3
- var throttleExports = requireThrottle();
4
- const throttle = /* @__PURE__ */ getDefaultExportFromCjs(throttleExports);
1
+ const iconContainer = "_iconContainer_nz34m_1";
2
+ const styles = {
3
+ iconContainer
4
+ };
5
5
  export {
6
- throttle as default
6
+ styles as default,
7
+ iconContainer
7
8
  };
8
9
  //# sourceMappingURL=harmony107.mjs.map
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const _root = require("./harmony116.cjs");
3
+ const _root = require("./harmony113.cjs");
4
4
  var now_1;
5
5
  var hasRequiredNow;
6
6
  function requireNow() {
@@ -1,4 +1,4 @@
1
- import { __require as require_root } from "./harmony116.mjs";
1
+ import { __require as require_root } from "./harmony113.mjs";
2
2
  var now_1;
3
3
  var hasRequiredNow;
4
4
  function requireNow() {
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const _baseTrim = require("./harmony117.cjs");
3
+ const _baseTrim = require("./harmony114.cjs");
4
4
  const isObject = require("./harmony109.cjs");
5
- const isSymbol = require("./harmony118.cjs");
5
+ const isSymbol = require("./harmony115.cjs");
6
6
  var toNumber_1;
7
7
  var hasRequiredToNumber;
8
8
  function requireToNumber() {
@@ -1,6 +1,6 @@
1
- import { __require as require_baseTrim } from "./harmony117.mjs";
1
+ import { __require as require_baseTrim } from "./harmony114.mjs";
2
2
  import { __require as requireIsObject } from "./harmony109.mjs";
3
- import { __require as requireIsSymbol } from "./harmony118.mjs";
3
+ import { __require as requireIsSymbol } from "./harmony115.mjs";
4
4
  var toNumber_1;
5
5
  var hasRequiredToNumber;
6
6
  function requireToNumber() {