@lokalise/harmony 1.30.1 → 1.31.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/harmony100.cjs +6 -132
- package/dist/harmony100.cjs.map +1 -1
- package/dist/harmony100.mjs +5 -131
- package/dist/harmony100.mjs.map +1 -1
- package/dist/harmony101.cjs +132 -12
- package/dist/harmony101.cjs.map +1 -1
- package/dist/harmony101.mjs +131 -11
- package/dist/harmony101.mjs.map +1 -1
- package/dist/harmony102.cjs +13 -6
- package/dist/harmony102.cjs.map +1 -1
- package/dist/harmony102.mjs +12 -5
- package/dist/harmony102.mjs.map +1 -1
- package/dist/harmony103.cjs +5 -40
- package/dist/harmony103.cjs.map +1 -1
- package/dist/harmony103.mjs +5 -40
- package/dist/harmony103.mjs.map +1 -1
- package/dist/harmony104.cjs +33 -53
- package/dist/harmony104.cjs.map +1 -1
- package/dist/harmony104.mjs +34 -54
- package/dist/harmony104.mjs.map +1 -1
- package/dist/harmony105.cjs +59 -6
- package/dist/harmony105.cjs.map +1 -1
- package/dist/harmony105.mjs +59 -6
- package/dist/harmony105.mjs.map +1 -1
- package/dist/harmony106.cjs +7 -6
- package/dist/harmony106.cjs.map +1 -1
- package/dist/harmony106.mjs +6 -5
- package/dist/harmony106.mjs.map +1 -1
- package/dist/harmony115.cjs +1 -1
- package/dist/harmony115.mjs +1 -1
- package/dist/harmony125.cjs +1 -1
- package/dist/harmony125.mjs +1 -1
- package/dist/harmony132.cjs +1 -1
- package/dist/harmony132.mjs +1 -1
- package/dist/harmony77.cjs +6 -6
- package/dist/harmony77.mjs +6 -6
- package/dist/harmony93.cjs +1 -1
- package/dist/harmony93.mjs +1 -1
- package/dist/types/src/components/Table/Table.d.ts +9 -0
- package/dist/types/src/components/Table/Table.stories.d.ts +14 -0
- package/dist/types/src/components/Table/Table.test.d.ts +1 -0
- package/dist/types/src/components/Table/components/SortingIcon.d.ts +6 -0
- package/dist/types/src/components/Table/components/SortingIcon.test.d.ts +1 -0
- package/dist/types/src/components/Table/components/TableHeaderCell.d.ts +10 -0
- package/package.json +2 -1
package/dist/harmony104.cjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"harmony104.cjs","sources":["../src/components/Sidebar/Widgets/Tasks/
|
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;;"}
|
package/dist/harmony104.mjs
CHANGED
@@ -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 {
|
4
|
-
import {
|
5
|
-
import { TaskEvents } from "./
|
6
|
-
|
7
|
-
|
8
|
-
const
|
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 "./harmony115.mjs";
|
5
|
+
import { useTasks } from "./harmony103.mjs";
|
6
|
+
import { TaskEvents } from "./harmony106.mjs";
|
7
|
+
import styles from "./harmony116.mjs";
|
8
|
+
const TasksPopover = () => {
|
9
|
+
const { tasks, onTasksWidgetOpen, loadingTasks, fetchTasks } = useTasks();
|
30
10
|
useEffectOnce(() => {
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
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,
|
37
|
-
document.removeEventListener(TaskEvents.TaskClosed,
|
38
|
-
document.removeEventListener(TaskEvents.Refresh,
|
20
|
+
document.removeEventListener(TaskEvents.TaskCompleted, fetchTasks);
|
21
|
+
document.removeEventListener(TaskEvents.TaskClosed, fetchTasks);
|
22
|
+
document.removeEventListener(TaskEvents.Refresh, fetchTasks);
|
39
23
|
};
|
40
24
|
});
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
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
|
-
|
61
|
-
withTasksContext
|
41
|
+
TasksPopover
|
62
42
|
};
|
63
43
|
//# sourceMappingURL=harmony104.mjs.map
|
package/dist/harmony104.mjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"harmony104.mjs","sources":["../src/components/Sidebar/Widgets/Tasks/
|
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;"}
|
package/dist/harmony105.cjs
CHANGED
@@ -1,10 +1,63 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
3
|
-
const
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
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
|
-
|
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
|
package/dist/harmony105.cjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"harmony105.cjs","sources":["../src/components/Sidebar/Widgets/Tasks/
|
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;;;"}
|
package/dist/harmony105.mjs
CHANGED
@@ -1,10 +1,63 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
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
|
-
|
60
|
+
TasksProvider,
|
61
|
+
withTasksContext
|
9
62
|
};
|
10
63
|
//# sourceMappingURL=harmony105.mjs.map
|
package/dist/harmony105.mjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"harmony105.mjs","sources":["../src/components/Sidebar/Widgets/Tasks/
|
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;"}
|
package/dist/harmony106.cjs
CHANGED
@@ -1,9 +1,10 @@
|
|
1
1
|
"use strict";
|
2
|
-
Object.
|
3
|
-
const
|
4
|
-
|
5
|
-
|
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"
|
6
8
|
};
|
7
|
-
exports.
|
8
|
-
exports.iconContainer = iconContainer;
|
9
|
+
exports.TaskEvents = TaskEvents;
|
9
10
|
//# sourceMappingURL=harmony106.cjs.map
|
package/dist/harmony106.cjs.map
CHANGED
@@ -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;;"}
|
package/dist/harmony106.mjs
CHANGED
@@ -1,9 +1,10 @@
|
|
1
|
-
const
|
2
|
-
|
3
|
-
|
1
|
+
const TaskEvents = {
|
2
|
+
TaskCompleted: "task_completed",
|
3
|
+
TaskClosed: "task_closed",
|
4
|
+
Refresh: "refresh",
|
5
|
+
ShowDialog: "show_dialog"
|
4
6
|
};
|
5
7
|
export {
|
6
|
-
|
7
|
-
iconContainer
|
8
|
+
TaskEvents
|
8
9
|
};
|
9
10
|
//# sourceMappingURL=harmony106.mjs.map
|
package/dist/harmony106.mjs.map
CHANGED
@@ -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;"}
|
package/dist/harmony115.cjs
CHANGED
@@ -8,7 +8,7 @@ const date = require("./harmony10.cjs");
|
|
8
8
|
const dateFns = require("date-fns");
|
9
9
|
const index = require("./harmony124.cjs");
|
10
10
|
const TaskLanguage = require("./harmony125.cjs");
|
11
|
-
const TasksContext = require("./
|
11
|
+
const TasksContext = require("./harmony103.cjs");
|
12
12
|
const content = require("./harmony126.cjs");
|
13
13
|
const TaskOverview_module = require("./harmony127.cjs");
|
14
14
|
const TaskOverview = ({ task }) => {
|
package/dist/harmony115.mjs
CHANGED
@@ -6,7 +6,7 @@ import { formatDate } from "./harmony10.mjs";
|
|
6
6
|
import { parseISO } from "date-fns";
|
7
7
|
import { splitFileName } from "./harmony124.mjs";
|
8
8
|
import { TaskLanguage } from "./harmony125.mjs";
|
9
|
-
import { useTasks } from "./
|
9
|
+
import { useTasks } from "./harmony103.mjs";
|
10
10
|
import { getTaskLanguages, tagColor } from "./harmony126.mjs";
|
11
11
|
import styles from "./harmony127.mjs";
|
12
12
|
const TaskOverview = ({ task }) => {
|
package/dist/harmony125.cjs
CHANGED
@@ -6,7 +6,7 @@ const content = require("./harmony126.cjs");
|
|
6
6
|
const types = require("./harmony2.cjs");
|
7
7
|
const clsx = require("./harmony65.cjs");
|
8
8
|
const TaskLanguageCompleted = require("./harmony132.cjs");
|
9
|
-
const TasksContext = require("./
|
9
|
+
const TasksContext = require("./harmony103.cjs");
|
10
10
|
const TaskLanguage_module = require("./harmony133.cjs");
|
11
11
|
const TaskLanguage = ({ language, task }) => {
|
12
12
|
const { getProjectUrl, langNameOnClick, langProgressOnClick } = TasksContext.useTasks();
|
package/dist/harmony125.mjs
CHANGED
@@ -4,7 +4,7 @@ import { isLanguageProgressCompleted, getStatusText } from "./harmony126.mjs";
|
|
4
4
|
import { SidebarTaskLanguageStatuses } from "./harmony2.mjs";
|
5
5
|
import { clsx } from "./harmony65.mjs";
|
6
6
|
import { TaskLanguageCompleted } from "./harmony132.mjs";
|
7
|
-
import { useTasks } from "./
|
7
|
+
import { useTasks } from "./harmony103.mjs";
|
8
8
|
import styles from "./harmony133.mjs";
|
9
9
|
const TaskLanguage = ({ language, task }) => {
|
10
10
|
const { getProjectUrl, langNameOnClick, langProgressOnClick } = useTasks();
|
package/dist/harmony132.cjs
CHANGED
@@ -3,7 +3,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
3
|
const jsxRuntime = require("react/jsx-runtime");
|
4
4
|
const louis = require("@lokalise/louis");
|
5
5
|
const React = require("react");
|
6
|
-
const TasksContext = require("./
|
6
|
+
const TasksContext = require("./harmony103.cjs");
|
7
7
|
const TaskLanguageCompleted = ({ task, language }) => {
|
8
8
|
const [loading, setLoading] = React.useState(false);
|
9
9
|
const [isMarkAsDonePromptShown, setIsMarkAsDonePromptShown] = React.useState(false);
|
package/dist/harmony132.mjs
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
import { jsxs, Fragment, jsx } from "react/jsx-runtime";
|
2
2
|
import { ConfirmModal, Alert, Link } from "@lokalise/louis";
|
3
3
|
import { useState } from "react";
|
4
|
-
import { useTasks } from "./
|
4
|
+
import { useTasks } from "./harmony103.mjs";
|
5
5
|
const TaskLanguageCompleted = ({ task, language }) => {
|
6
6
|
const [loading, setLoading] = useState(false);
|
7
7
|
const [isMarkAsDonePromptShown, setIsMarkAsDonePromptShown] = useState(false);
|
package/dist/harmony77.cjs
CHANGED
@@ -1,16 +1,16 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
3
3
|
const jsxRuntime = require("react/jsx-runtime");
|
4
|
-
const floatingUi_core = require("./
|
4
|
+
const floatingUi_core = require("./harmony101.cjs");
|
5
5
|
const louis = require("@lokalise/louis");
|
6
6
|
const useEffectOnce = require("./harmony11.cjs");
|
7
7
|
const clsx = require("./harmony65.cjs");
|
8
8
|
const React = require("react");
|
9
|
-
const Tasks_module = require("./
|
10
|
-
const TasksContext = require("./
|
11
|
-
const TasksPopover = require("./
|
12
|
-
const TasksProvider = require("./
|
13
|
-
const taskEvents = require("./
|
9
|
+
const Tasks_module = require("./harmony102.cjs");
|
10
|
+
const TasksContext = require("./harmony103.cjs");
|
11
|
+
const TasksPopover = require("./harmony104.cjs");
|
12
|
+
const TasksProvider = require("./harmony105.cjs");
|
13
|
+
const taskEvents = require("./harmony106.cjs");
|
14
14
|
const Tasks = TasksProvider.withTasksContext(() => {
|
15
15
|
const [open, setOpen] = React.useState(false);
|
16
16
|
const { tasksCount } = TasksContext.useTasks();
|
package/dist/harmony77.mjs
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
import { jsx, jsxs } from "react/jsx-runtime";
|
2
|
-
import { shift } from "./
|
2
|
+
import { shift } from "./harmony101.mjs";
|
3
3
|
import { Tooltip, Popover, Button, JobIcon } from "@lokalise/louis";
|
4
4
|
import { useEffectOnce } from "./harmony11.mjs";
|
5
5
|
import { clsx } from "./harmony65.mjs";
|
6
6
|
import { useState } from "react";
|
7
|
-
import styles from "./
|
8
|
-
import { useTasks } from "./
|
9
|
-
import { TasksPopover } from "./
|
10
|
-
import { withTasksContext } from "./
|
11
|
-
import { TaskEvents } from "./
|
7
|
+
import styles from "./harmony102.mjs";
|
8
|
+
import { useTasks } from "./harmony103.mjs";
|
9
|
+
import { TasksPopover } from "./harmony104.mjs";
|
10
|
+
import { withTasksContext } from "./harmony105.mjs";
|
11
|
+
import { TaskEvents } from "./harmony106.mjs";
|
12
12
|
const Tasks = withTasksContext(() => {
|
13
13
|
const [open, setOpen] = useState(false);
|
14
14
|
const { tasksCount } = useTasks();
|
package/dist/harmony93.cjs
CHANGED
@@ -3,7 +3,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
3
|
const jsxRuntime = require("react/jsx-runtime");
|
4
4
|
const louis = require("@lokalise/louis");
|
5
5
|
const clsx = require("./harmony65.cjs");
|
6
|
-
const UpgradeIcon_module = require("./
|
6
|
+
const UpgradeIcon_module = require("./harmony100.cjs");
|
7
7
|
const UpgradeIcon = ({ className = "" }) => {
|
8
8
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
9
9
|
"div",
|
package/dist/harmony93.mjs
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
2
2
|
import { CaretUpIcon } from "@lokalise/louis";
|
3
3
|
import { clsx } from "./harmony65.mjs";
|
4
|
-
import styles from "./
|
4
|
+
import styles from "./harmony100.mjs";
|
5
5
|
const UpgradeIcon = ({ className = "" }) => {
|
6
6
|
return /* @__PURE__ */ jsx(
|
7
7
|
"div",
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import { HeaderGroup, Row } from '@tanstack/react-table';
|
2
|
+
import { MutableRefObject } from 'react';
|
3
|
+
type TableProps<T> = {
|
4
|
+
headers: HeaderGroup<T>[];
|
5
|
+
rows: Row<T>[];
|
6
|
+
tbodyRef?: MutableRefObject<HTMLTableSectionElement>;
|
7
|
+
};
|
8
|
+
export declare const Table: <T>({ headers, rows, tbodyRef }: TableProps<T>) => import("react/jsx-runtime").JSX.Element;
|
9
|
+
export {};
|
@@ -0,0 +1,14 @@
|
|
1
|
+
import { Table } from './Table';
|
2
|
+
import { Meta, StoryObj } from '@storybook/react';
|
3
|
+
declare const meta: Meta<typeof Table>;
|
4
|
+
export default meta;
|
5
|
+
type Story = StoryObj<typeof Table>;
|
6
|
+
export type TableRow = {
|
7
|
+
user: {
|
8
|
+
fullName: string;
|
9
|
+
};
|
10
|
+
languages: {
|
11
|
+
locales: string[];
|
12
|
+
};
|
13
|
+
};
|
14
|
+
export declare const Default: Story;
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
@@ -0,0 +1,10 @@
|
|
1
|
+
import { Header } from '@tanstack/react-table';
|
2
|
+
type CellProps = {
|
3
|
+
align?: 'left' | 'center' | 'right';
|
4
|
+
className?: string;
|
5
|
+
};
|
6
|
+
type TableHeaderProps<T> = CellProps & {
|
7
|
+
header: Header<T, unknown>;
|
8
|
+
};
|
9
|
+
export declare const TableHeaderCell: <T>({ header, align, className }: TableHeaderProps<T>) => import("react/jsx-runtime").JSX.Element;
|
10
|
+
export {};
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@lokalise/harmony",
|
3
|
-
"version": "1.
|
3
|
+
"version": "1.31.0",
|
4
4
|
"author": {
|
5
5
|
"name": "Lokalise",
|
6
6
|
"url": "https://lokalise.com/"
|
@@ -34,6 +34,7 @@
|
|
34
34
|
"@lokalise/louis": ">=26.0.0",
|
35
35
|
"@lokalise/token-dictionary": ">=2.42.1",
|
36
36
|
"@tanstack/react-query": ">=5.66.9",
|
37
|
+
"@tanstack/react-table": ">=8.21.3",
|
37
38
|
"date-fns": ">=4.1",
|
38
39
|
"react": "^18.0.0 || ^19.0.0",
|
39
40
|
"react-dom": "^18.0.0 || ^19.0.0",
|