@lokalise/harmony 2.0.4 → 2.0.5
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/harmony.cjs +1 -1
- package/dist/harmony.mjs +3 -3
- package/dist/harmony105.cjs +2 -2
- package/dist/harmony105.mjs +2 -2
- package/dist/harmony106.cjs +1 -1
- package/dist/harmony106.mjs +1 -1
- package/dist/harmony107.cjs +1 -1
- package/dist/harmony107.mjs +1 -1
- package/dist/harmony109.cjs +9 -10
- package/dist/harmony109.cjs.map +1 -1
- package/dist/harmony109.mjs +11 -12
- package/dist/harmony109.mjs.map +1 -1
- package/dist/harmony110.cjs +20 -11
- package/dist/harmony110.cjs.map +1 -1
- package/dist/harmony110.mjs +20 -11
- package/dist/harmony110.mjs.map +1 -1
- package/dist/harmony112.cjs +1 -1
- package/dist/harmony112.mjs +1 -1
- package/dist/harmony113.cjs +12 -12
- package/dist/harmony113.mjs +12 -12
- package/dist/harmony116.cjs +1 -1
- package/dist/harmony116.mjs +1 -1
- package/dist/harmony117.cjs +1 -1
- package/dist/harmony117.mjs +1 -1
- package/dist/harmony119.cjs +10 -9
- package/dist/harmony119.cjs.map +1 -1
- package/dist/harmony119.mjs +12 -11
- package/dist/harmony119.mjs.map +1 -1
- package/dist/harmony120.cjs +11 -20
- package/dist/harmony120.cjs.map +1 -1
- package/dist/harmony120.mjs +11 -20
- package/dist/harmony120.mjs.map +1 -1
- package/dist/harmony121.cjs +98 -6
- package/dist/harmony121.cjs.map +1 -1
- package/dist/harmony121.mjs +82 -7
- package/dist/harmony121.mjs.map +1 -1
- package/dist/harmony122.cjs +86 -16
- package/dist/harmony122.cjs.map +1 -1
- package/dist/harmony122.mjs +86 -16
- package/dist/harmony122.mjs.map +1 -1
- package/dist/harmony123.cjs +30 -8
- package/dist/harmony123.cjs.map +1 -1
- package/dist/harmony123.mjs +30 -8
- package/dist/harmony123.mjs.map +1 -1
- package/dist/harmony124.cjs +6 -9
- package/dist/harmony124.cjs.map +1 -1
- package/dist/harmony124.mjs +5 -8
- package/dist/harmony124.mjs.map +1 -1
- package/dist/harmony125.cjs +6 -16
- package/dist/harmony125.cjs.map +1 -1
- package/dist/harmony125.mjs +5 -15
- package/dist/harmony125.mjs.map +1 -1
- package/dist/harmony127.cjs +7 -87
- package/dist/harmony127.cjs.map +1 -1
- package/dist/harmony127.mjs +7 -87
- package/dist/harmony127.mjs.map +1 -1
- package/dist/harmony128.cjs +17 -30
- package/dist/harmony128.cjs.map +1 -1
- package/dist/harmony128.mjs +17 -30
- package/dist/harmony128.mjs.map +1 -1
- package/dist/harmony129.cjs +7 -98
- package/dist/harmony129.cjs.map +1 -1
- package/dist/harmony129.mjs +7 -81
- package/dist/harmony129.mjs.map +1 -1
- package/dist/harmony130.cjs +8 -9
- package/dist/harmony130.cjs.map +1 -1
- package/dist/harmony130.mjs +7 -8
- package/dist/harmony130.mjs.map +1 -1
- package/dist/harmony131.cjs +14 -11
- package/dist/harmony131.cjs.map +1 -1
- package/dist/harmony131.mjs +14 -11
- package/dist/harmony131.mjs.map +1 -1
- package/dist/harmony132.cjs +9 -15
- package/dist/harmony132.cjs.map +1 -1
- package/dist/harmony132.mjs +8 -14
- package/dist/harmony132.mjs.map +1 -1
- package/dist/harmony133.cjs +4 -11
- package/dist/harmony133.cjs.map +1 -1
- package/dist/harmony133.mjs +7 -14
- package/dist/harmony133.mjs.map +1 -1
- package/dist/harmony134.cjs +12 -7
- package/dist/harmony134.cjs.map +1 -1
- package/dist/harmony134.mjs +14 -9
- package/dist/harmony134.mjs.map +1 -1
- package/dist/harmony135.cjs +11 -18
- package/dist/harmony135.cjs.map +1 -1
- package/dist/harmony135.mjs +14 -21
- package/dist/harmony135.mjs.map +1 -1
- package/dist/harmony136.cjs +7 -9
- package/dist/harmony136.cjs.map +1 -1
- package/dist/harmony136.mjs +9 -11
- package/dist/harmony136.mjs.map +1 -1
- package/dist/harmony137.cjs +17 -29
- package/dist/harmony137.cjs.map +1 -1
- package/dist/harmony137.mjs +19 -31
- package/dist/harmony137.mjs.map +1 -1
- package/dist/harmony138.cjs +4 -4
- package/dist/harmony138.cjs.map +1 -1
- package/dist/harmony138.mjs +5 -5
- package/dist/harmony138.mjs.map +1 -1
- package/dist/harmony139.cjs +28 -12
- package/dist/harmony139.cjs.map +1 -1
- package/dist/harmony139.mjs +29 -13
- package/dist/harmony139.mjs.map +1 -1
- package/dist/harmony140.cjs +5 -29
- package/dist/harmony140.cjs.map +1 -1
- package/dist/harmony140.mjs +7 -31
- package/dist/harmony140.mjs.map +1 -1
- package/dist/harmony141.cjs +22 -21
- package/dist/harmony141.cjs.map +1 -1
- package/dist/harmony141.mjs +21 -20
- package/dist/harmony141.mjs.map +1 -1
- package/dist/harmony142.cjs +30 -15
- package/dist/harmony142.cjs.map +1 -1
- package/dist/harmony142.mjs +32 -17
- package/dist/harmony142.mjs.map +1 -1
- package/dist/harmony143.cjs +18 -3
- package/dist/harmony143.cjs.map +1 -1
- package/dist/harmony143.mjs +18 -3
- package/dist/harmony143.mjs.map +1 -1
- package/dist/harmony144.cjs +21 -15
- package/dist/harmony144.cjs.map +1 -1
- package/dist/harmony144.mjs +20 -14
- package/dist/harmony144.mjs.map +1 -1
- package/dist/harmony145.cjs +7 -4
- package/dist/harmony145.cjs.map +1 -1
- package/dist/harmony145.mjs +6 -3
- package/dist/harmony145.mjs.map +1 -1
- package/dist/harmony146.cjs +16 -4
- package/dist/harmony146.cjs.map +1 -1
- package/dist/harmony146.mjs +15 -3
- package/dist/harmony146.mjs.map +1 -1
- package/dist/harmony147.cjs +10 -3
- package/dist/harmony147.cjs.map +1 -1
- package/dist/harmony147.mjs +10 -3
- package/dist/harmony147.mjs.map +1 -1
- package/dist/harmony148.cjs +96 -14
- package/dist/harmony148.cjs.map +1 -1
- package/dist/harmony148.mjs +96 -14
- package/dist/harmony148.mjs.map +1 -1
- package/dist/harmony149.cjs +13 -14
- package/dist/harmony149.cjs.map +1 -1
- package/dist/harmony149.mjs +13 -14
- package/dist/harmony149.mjs.map +1 -1
- package/dist/harmony150.cjs +14 -3
- package/dist/harmony150.cjs.map +1 -1
- package/dist/harmony150.mjs +14 -3
- package/dist/harmony150.mjs.map +1 -1
- package/dist/harmony151.cjs +37 -6
- package/dist/harmony151.cjs.map +1 -1
- package/dist/harmony151.mjs +36 -5
- package/dist/harmony151.mjs.map +1 -1
- package/dist/harmony152.cjs +29 -6
- package/dist/harmony152.cjs.map +1 -1
- package/dist/harmony152.mjs +28 -5
- package/dist/harmony152.mjs.map +1 -1
- package/dist/harmony153.cjs +3 -10
- package/dist/harmony153.cjs.map +1 -1
- package/dist/harmony153.mjs +3 -10
- package/dist/harmony153.mjs.map +1 -1
- package/dist/harmony154.cjs +4 -10
- package/dist/harmony154.cjs.map +1 -1
- package/dist/harmony154.mjs +3 -9
- package/dist/harmony154.mjs.map +1 -1
- package/dist/harmony155.cjs +4 -7
- package/dist/harmony155.cjs.map +1 -1
- package/dist/harmony155.mjs +3 -6
- package/dist/harmony155.mjs.map +1 -1
- package/dist/harmony156.cjs +15 -10
- package/dist/harmony156.cjs.map +1 -1
- package/dist/harmony156.mjs +14 -9
- package/dist/harmony156.mjs.map +1 -1
- package/dist/harmony157.cjs +15 -25
- package/dist/harmony157.cjs.map +1 -1
- package/dist/harmony157.mjs +14 -24
- package/dist/harmony157.mjs.map +1 -1
- package/dist/harmony158.cjs +4 -7
- package/dist/harmony158.cjs.map +1 -1
- package/dist/harmony158.mjs +3 -6
- package/dist/harmony158.mjs.map +1 -1
- package/dist/harmony159.cjs +14 -13
- package/dist/harmony159.cjs.map +1 -1
- package/dist/harmony159.mjs +13 -12
- package/dist/harmony159.mjs.map +1 -1
- package/dist/harmony160.cjs +16 -7
- package/dist/harmony160.cjs.map +1 -1
- package/dist/harmony160.mjs +15 -6
- package/dist/harmony160.mjs.map +1 -1
- package/dist/harmony161.cjs +15 -31
- package/dist/harmony161.cjs.map +1 -1
- package/dist/harmony161.mjs +15 -31
- package/dist/harmony161.mjs.map +1 -1
- package/dist/harmony162.cjs +10 -97
- package/dist/harmony162.cjs.map +1 -1
- package/dist/harmony162.mjs +9 -96
- package/dist/harmony162.mjs.map +1 -1
- package/dist/harmony163.cjs +7 -14
- package/dist/harmony163.cjs.map +1 -1
- package/dist/harmony163.mjs +6 -13
- package/dist/harmony163.mjs.map +1 -1
- package/dist/harmony164.cjs +10 -15
- package/dist/harmony164.cjs.map +1 -1
- package/dist/harmony164.mjs +9 -14
- package/dist/harmony164.mjs.map +1 -1
- package/dist/harmony165.cjs +25 -37
- package/dist/harmony165.cjs.map +1 -1
- package/dist/harmony165.mjs +24 -36
- package/dist/harmony165.mjs.map +1 -1
- package/dist/harmony166.cjs +7 -29
- package/dist/harmony166.cjs.map +1 -1
- package/dist/harmony166.mjs +6 -28
- package/dist/harmony166.mjs.map +1 -1
- package/dist/harmony167.cjs +13 -14
- package/dist/harmony167.cjs.map +1 -1
- package/dist/harmony167.mjs +12 -13
- package/dist/harmony167.mjs.map +1 -1
- package/dist/harmony168.cjs +7 -16
- package/dist/harmony168.cjs.map +1 -1
- package/dist/harmony168.mjs +6 -15
- package/dist/harmony168.mjs.map +1 -1
- package/dist/harmony169.cjs +14 -14
- package/dist/harmony169.cjs.map +1 -1
- package/dist/harmony169.mjs +14 -14
- package/dist/harmony169.mjs.map +1 -1
- package/dist/harmony170.cjs +21 -4
- package/dist/harmony170.cjs.map +1 -1
- package/dist/harmony170.mjs +21 -4
- package/dist/harmony170.mjs.map +1 -1
- package/dist/harmony171.cjs +11 -10
- package/dist/harmony171.cjs.map +1 -1
- package/dist/harmony171.mjs +11 -10
- package/dist/harmony171.mjs.map +1 -1
- package/dist/harmony172.cjs +10 -15
- package/dist/harmony172.cjs.map +1 -1
- package/dist/harmony172.mjs +10 -15
- package/dist/harmony172.mjs.map +1 -1
- package/dist/harmony173.cjs +31 -20
- package/dist/harmony173.cjs.map +1 -1
- package/dist/harmony173.mjs +31 -20
- package/dist/harmony173.mjs.map +1 -1
- package/dist/harmony174.cjs +11 -11
- package/dist/harmony174.cjs.map +1 -1
- package/dist/harmony174.mjs +11 -11
- package/dist/harmony174.mjs.map +1 -1
- package/dist/harmony175.cjs +31 -5
- package/dist/harmony175.cjs.map +1 -1
- package/dist/harmony175.mjs +31 -5
- package/dist/harmony175.mjs.map +1 -1
- package/dist/harmony176.cjs +13 -11
- package/dist/harmony176.cjs.map +1 -1
- package/dist/harmony176.mjs +13 -11
- package/dist/harmony176.mjs.map +1 -1
- package/dist/harmony177.cjs +5 -31
- package/dist/harmony177.cjs.map +1 -1
- package/dist/harmony177.mjs +5 -31
- package/dist/harmony177.mjs.map +1 -1
- package/dist/harmony178.cjs +4 -14
- package/dist/harmony178.cjs.map +1 -1
- package/dist/harmony178.mjs +4 -14
- package/dist/harmony178.mjs.map +1 -1
- package/dist/harmony32.cjs +1 -1
- package/dist/harmony32.mjs +1 -1
- package/dist/harmony33.cjs +1 -1
- package/dist/harmony33.mjs +1 -1
- package/dist/harmony34.cjs +1 -1
- package/dist/harmony34.mjs +1 -1
- package/dist/harmony39.cjs +1 -1
- package/dist/harmony39.mjs +1 -1
- package/dist/harmony40.cjs +1 -1
- package/dist/harmony40.mjs +1 -1
- package/dist/harmony41.cjs +1 -1
- package/dist/harmony41.mjs +1 -1
- package/dist/harmony42.cjs +2 -2
- package/dist/harmony42.mjs +2 -2
- package/dist/harmony43.cjs +2 -2
- package/dist/harmony43.mjs +2 -2
- package/dist/harmony44.cjs +1 -1
- package/dist/harmony44.mjs +1 -1
- package/dist/harmony45.cjs +2 -0
- package/dist/harmony45.cjs.map +1 -1
- package/dist/harmony45.mjs +2 -0
- package/dist/harmony45.mjs.map +1 -1
- package/dist/harmony81.cjs +5 -20
- package/dist/harmony81.cjs.map +1 -1
- package/dist/harmony81.mjs +5 -20
- package/dist/harmony81.mjs.map +1 -1
- package/dist/harmony82.cjs +5 -1
- package/dist/harmony82.cjs.map +1 -1
- package/dist/harmony82.mjs +5 -1
- package/dist/harmony82.mjs.map +1 -1
- package/dist/harmony88.cjs +2 -1
- package/dist/harmony88.cjs.map +1 -1
- package/dist/harmony88.mjs +3 -2
- package/dist/harmony88.mjs.map +1 -1
- package/dist/harmony94.cjs +1 -1
- package/dist/harmony94.mjs +1 -1
- package/dist/harmony96.cjs +2 -2
- package/dist/harmony96.mjs +2 -2
- package/dist/types/src/features/permissions/types.d.ts +2 -0
- package/dist/types/src/features/publicApi/permissionTemplates.d.ts +5 -5
- package/dist/types/src/features/publicApi/projects.d.ts +15 -15
- package/dist/types/src/features/publicApi/teamUsers.d.ts +5 -5
- package/dist/types/src/features/publicApi/types/permissionTemplateTypes.d.ts +9 -10
- package/dist/types/src/features/publicApi/types/permissionTypes.d.ts +4 -4
- package/dist/types/src/features/publicApi/types/projectTypes.d.ts +24 -24
- package/dist/types/src/features/publicApi/types/teamUserTypes.d.ts +8 -8
- package/package.json +1 -1
package/dist/harmony121.cjs
CHANGED
|
@@ -1,10 +1,102 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
3
|
const React = require("react");
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
4
|
+
const debounce = require("./harmony124.cjs");
|
|
5
|
+
const throttle = require("./harmony125.cjs");
|
|
6
|
+
function _interopNamespaceDefault(e) {
|
|
7
|
+
const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
|
|
8
|
+
if (e) {
|
|
9
|
+
for (const k in e) {
|
|
10
|
+
if (k !== "default") {
|
|
11
|
+
const d = Object.getOwnPropertyDescriptor(e, k);
|
|
12
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: () => e[k]
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
n.default = e;
|
|
20
|
+
return Object.freeze(n);
|
|
21
|
+
}
|
|
22
|
+
const React__namespace = /* @__PURE__ */ _interopNamespaceDefault(React);
|
|
23
|
+
const patchResizeCallback = (resizeCallback, refreshMode, refreshRate, refreshOptions) => {
|
|
24
|
+
switch (refreshMode) {
|
|
25
|
+
case "debounce":
|
|
26
|
+
return debounce.default(resizeCallback, refreshRate, refreshOptions);
|
|
27
|
+
case "throttle":
|
|
28
|
+
return throttle.default(resizeCallback, refreshRate, refreshOptions);
|
|
29
|
+
default:
|
|
30
|
+
return resizeCallback;
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
const useCallbackRef = (
|
|
34
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
35
|
+
(callback) => {
|
|
36
|
+
const callbackRef = React__namespace.useRef(callback);
|
|
37
|
+
React__namespace.useEffect(() => {
|
|
38
|
+
callbackRef.current = callback;
|
|
39
|
+
});
|
|
40
|
+
return React__namespace.useMemo(() => (...args) => {
|
|
41
|
+
var _a;
|
|
42
|
+
return (_a = callbackRef.current) === null || _a === void 0 ? void 0 : _a.call(callbackRef, ...args);
|
|
43
|
+
}, []);
|
|
44
|
+
}
|
|
45
|
+
);
|
|
46
|
+
const useRefProxy = (
|
|
47
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
48
|
+
(targetRef) => {
|
|
49
|
+
const [refElement, setRefElement] = React__namespace.useState((targetRef === null || targetRef === void 0 ? void 0 : targetRef.current) || null);
|
|
50
|
+
if (targetRef) {
|
|
51
|
+
setTimeout(() => {
|
|
52
|
+
if (targetRef.current !== refElement) {
|
|
53
|
+
setRefElement(targetRef.current);
|
|
54
|
+
}
|
|
55
|
+
}, 0);
|
|
56
|
+
}
|
|
57
|
+
const refProxy = React__namespace.useMemo(() => new Proxy((node) => {
|
|
58
|
+
if (node !== refElement) {
|
|
59
|
+
setRefElement(node);
|
|
60
|
+
}
|
|
61
|
+
}, {
|
|
62
|
+
get(target, prop) {
|
|
63
|
+
if (prop === "current") {
|
|
64
|
+
return refElement;
|
|
65
|
+
}
|
|
66
|
+
return target[prop];
|
|
67
|
+
},
|
|
68
|
+
set(target, prop, value) {
|
|
69
|
+
if (prop === "current") {
|
|
70
|
+
setRefElement(value);
|
|
71
|
+
} else {
|
|
72
|
+
target[prop] = value;
|
|
73
|
+
}
|
|
74
|
+
return true;
|
|
75
|
+
}
|
|
76
|
+
}), [refElement]);
|
|
77
|
+
return { refProxy, refElement, setRefElement };
|
|
78
|
+
}
|
|
79
|
+
);
|
|
80
|
+
const getDimensions = (entry, box) => {
|
|
81
|
+
if (box === "border-box") {
|
|
82
|
+
return {
|
|
83
|
+
width: entry.borderBoxSize[0].inlineSize,
|
|
84
|
+
height: entry.borderBoxSize[0].blockSize
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
if (box === "content-box") {
|
|
88
|
+
return {
|
|
89
|
+
width: entry.contentBoxSize[0].inlineSize,
|
|
90
|
+
height: entry.contentBoxSize[0].blockSize
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
return {
|
|
94
|
+
width: entry.contentRect.width,
|
|
95
|
+
height: entry.contentRect.height
|
|
96
|
+
};
|
|
97
|
+
};
|
|
98
|
+
exports.getDimensions = getDimensions;
|
|
99
|
+
exports.patchResizeCallback = patchResizeCallback;
|
|
100
|
+
exports.useCallbackRef = useCallbackRef;
|
|
101
|
+
exports.useRefProxy = useRefProxy;
|
|
10
102
|
//# sourceMappingURL=harmony121.cjs.map
|
package/dist/harmony121.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"harmony121.cjs","sources":["../
|
|
1
|
+
{"version":3,"file":"harmony121.cjs","sources":["../node_modules/react-resize-detector/build/utils.js"],"sourcesContent":["import * as React from 'react';\nimport debounce from 'lodash/debounce.js';\nimport throttle from 'lodash/throttle.js';\n\n/**\n * Wraps the resize callback with a lodash debounce / throttle based on the refresh mode\n */\nconst patchResizeCallback = (resizeCallback, refreshMode, refreshRate, refreshOptions) => {\n switch (refreshMode) {\n case 'debounce':\n return debounce(resizeCallback, refreshRate, refreshOptions);\n case 'throttle':\n return throttle(resizeCallback, refreshRate, refreshOptions);\n default:\n return resizeCallback;\n }\n};\n/**\n * A custom hook that converts a callback to a ref to avoid triggering re-renders when passed as a\n * prop or avoid re-executing effects when passed as a dependency\n */\nconst useCallbackRef = \n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n(callback) => {\n const callbackRef = React.useRef(callback);\n React.useEffect(() => {\n callbackRef.current = callback;\n });\n return React.useMemo(() => ((...args) => { var _a; return (_a = callbackRef.current) === null || _a === void 0 ? void 0 : _a.call(callbackRef, ...args); }), []);\n};\n/** `useRef` hook doesn't handle conditional rendering or dynamic ref changes.\n * This hook creates a proxy that ensures that `refElement` is updated whenever the ref is changed. */\nconst useRefProxy = \n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n(targetRef) => {\n // we are going to use this ref to store the last element that was passed to the hook\n const [refElement, setRefElement] = React.useState((targetRef === null || targetRef === void 0 ? void 0 : targetRef.current) || null);\n // if targetRef is passed, we need to update the refElement\n // we have to use setTimeout because ref get assigned after the hook is called\n // in the future releases we are going to remove targetRef and force users to use ref returned by the hook\n if (targetRef) {\n setTimeout(() => {\n if (targetRef.current !== refElement) {\n setRefElement(targetRef.current);\n }\n }, 0);\n }\n // this is a memo that will be called every time the ref is changed\n // This proxy will properly call setState either when the ref is called as a function or when `.current` is set\n // we call setState inside to trigger rerender\n const refProxy = React.useMemo(() => new Proxy((node) => {\n if (node !== refElement) {\n setRefElement(node);\n }\n }, {\n get(target, prop) {\n if (prop === 'current') {\n return refElement;\n }\n return target[prop];\n },\n set(target, prop, value) {\n if (prop === 'current') {\n setRefElement(value);\n }\n else {\n target[prop] = value;\n }\n return true;\n },\n }), [refElement]);\n return { refProxy, refElement, setRefElement };\n};\n/** Calculates the dimensions of the element based on the current box model.\n * @see https://developer.mozilla.org/en-US/docs/Learn/CSS/Building_blocks/The_box_model\n */\nconst getDimensions = (entry, box) => {\n // Value\t Border\t Padding\t Inner Content\n // ---------------------------------------------------\n // 'border-box'\t Yes\t Yes\t Yes\n // 'content-box'\t No\t No\t Yes\n // undefined No\t No?\t Yes\n if (box === 'border-box') {\n return {\n width: entry.borderBoxSize[0].inlineSize,\n height: entry.borderBoxSize[0].blockSize,\n };\n }\n if (box === 'content-box') {\n return {\n width: entry.contentBoxSize[0].inlineSize,\n height: entry.contentBoxSize[0].blockSize,\n };\n }\n return {\n width: entry.contentRect.width,\n height: entry.contentRect.height,\n };\n};\n\nexport { getDimensions, patchResizeCallback, useCallbackRef, useRefProxy };\n//# sourceMappingURL=utils.js.map\n"],"names":["debounce","throttle","React"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAOK,MAAC,sBAAsB,CAAC,gBAAgB,aAAa,aAAa,mBAAmB;AACtF,UAAQ,aAAW;AAAA,IACf,KAAK;AACD,aAAOA,iBAAS,gBAAgB,aAAa,cAAc;AAAA,IAC/D,KAAK;AACD,aAAOC,iBAAS,gBAAgB,aAAa,cAAc;AAAA,IAC/D;AACI,aAAO;AAAA,EACnB;AACA;AAKK,MAAC;AAAA;AAAA,EAEN,CAAC,aAAa;AACV,UAAM,cAAcC,iBAAM,OAAO,QAAQ;AACzCA,qBAAM,UAAU,MAAM;AAClB,kBAAY,UAAU;AAAA,IAC9B,CAAK;AACD,WAAOA,iBAAM,QAAQ,MAAO,IAAI,SAAS;AAAE,UAAI;AAAI,cAAQ,KAAK,YAAY,aAAa,QAAQ,OAAO,SAAS,SAAS,GAAG,KAAK,aAAa,GAAG,IAAI;AAAA,IAAI,GAAG,CAAA,CAAE;AAAA,EACnK;AAAA;AAGK,MAAC;AAAA;AAAA,EAEN,CAAC,cAAc;AAEX,UAAM,CAAC,YAAY,aAAa,IAAIA,iBAAM,UAAU,cAAc,QAAQ,cAAc,SAAS,SAAS,UAAU,YAAY,IAAI;AAIpI,QAAI,WAAW;AACX,iBAAW,MAAM;AACb,YAAI,UAAU,YAAY,YAAY;AAClC,wBAAc,UAAU,OAAO;AAAA,QAC/C;AAAA,MACS,GAAE,CAAC;AAAA,IACZ;AAII,UAAM,WAAWA,iBAAM,QAAQ,MAAM,IAAI,MAAM,CAAC,SAAS;AACrD,UAAI,SAAS,YAAY;AACrB,sBAAc,IAAI;AAAA,MAC9B;AAAA,IACA,GAAO;AAAA,MACC,IAAI,QAAQ,MAAM;AACd,YAAI,SAAS,WAAW;AACpB,iBAAO;AAAA,QACvB;AACY,eAAO,OAAO,IAAI;AAAA,MACrB;AAAA,MACD,IAAI,QAAQ,MAAM,OAAO;AACrB,YAAI,SAAS,WAAW;AACpB,wBAAc,KAAK;AAAA,QACnC,OACiB;AACD,iBAAO,IAAI,IAAI;AAAA,QAC/B;AACY,eAAO;AAAA,MACV;AAAA,IACT,CAAK,GAAG,CAAC,UAAU,CAAC;AAChB,WAAO,EAAE,UAAU,YAAY,cAAe;AAAA,EAClD;AAAA;AAIK,MAAC,gBAAgB,CAAC,OAAO,QAAQ;AAMlC,MAAI,QAAQ,cAAc;AACtB,WAAO;AAAA,MACH,OAAO,MAAM,cAAc,CAAC,EAAE;AAAA,MAC9B,QAAQ,MAAM,cAAc,CAAC,EAAE;AAAA,IAClC;AAAA,EACT;AACI,MAAI,QAAQ,eAAe;AACvB,WAAO;AAAA,MACH,OAAO,MAAM,eAAe,CAAC,EAAE;AAAA,MAC/B,QAAQ,MAAM,eAAe,CAAC,EAAE;AAAA,IACnC;AAAA,EACT;AACI,SAAO;AAAA,IACH,OAAO,MAAM,YAAY;AAAA,IACzB,QAAQ,MAAM,YAAY;AAAA,EAC7B;AACL;;;;;","x_google_ignoreList":[0]}
|
package/dist/harmony121.mjs
CHANGED
|
@@ -1,10 +1,85 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import debounce from "./harmony124.mjs";
|
|
3
|
+
import throttle from "./harmony125.mjs";
|
|
4
|
+
const patchResizeCallback = (resizeCallback, refreshMode, refreshRate, refreshOptions) => {
|
|
5
|
+
switch (refreshMode) {
|
|
6
|
+
case "debounce":
|
|
7
|
+
return debounce(resizeCallback, refreshRate, refreshOptions);
|
|
8
|
+
case "throttle":
|
|
9
|
+
return throttle(resizeCallback, refreshRate, refreshOptions);
|
|
10
|
+
default:
|
|
11
|
+
return resizeCallback;
|
|
12
|
+
}
|
|
13
|
+
};
|
|
14
|
+
const useCallbackRef = (
|
|
15
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
16
|
+
(callback) => {
|
|
17
|
+
const callbackRef = React.useRef(callback);
|
|
18
|
+
React.useEffect(() => {
|
|
19
|
+
callbackRef.current = callback;
|
|
20
|
+
});
|
|
21
|
+
return React.useMemo(() => (...args) => {
|
|
22
|
+
var _a;
|
|
23
|
+
return (_a = callbackRef.current) === null || _a === void 0 ? void 0 : _a.call(callbackRef, ...args);
|
|
24
|
+
}, []);
|
|
25
|
+
}
|
|
26
|
+
);
|
|
27
|
+
const useRefProxy = (
|
|
28
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
29
|
+
(targetRef) => {
|
|
30
|
+
const [refElement, setRefElement] = React.useState((targetRef === null || targetRef === void 0 ? void 0 : targetRef.current) || null);
|
|
31
|
+
if (targetRef) {
|
|
32
|
+
setTimeout(() => {
|
|
33
|
+
if (targetRef.current !== refElement) {
|
|
34
|
+
setRefElement(targetRef.current);
|
|
35
|
+
}
|
|
36
|
+
}, 0);
|
|
37
|
+
}
|
|
38
|
+
const refProxy = React.useMemo(() => new Proxy((node) => {
|
|
39
|
+
if (node !== refElement) {
|
|
40
|
+
setRefElement(node);
|
|
41
|
+
}
|
|
42
|
+
}, {
|
|
43
|
+
get(target, prop) {
|
|
44
|
+
if (prop === "current") {
|
|
45
|
+
return refElement;
|
|
46
|
+
}
|
|
47
|
+
return target[prop];
|
|
48
|
+
},
|
|
49
|
+
set(target, prop, value) {
|
|
50
|
+
if (prop === "current") {
|
|
51
|
+
setRefElement(value);
|
|
52
|
+
} else {
|
|
53
|
+
target[prop] = value;
|
|
54
|
+
}
|
|
55
|
+
return true;
|
|
56
|
+
}
|
|
57
|
+
}), [refElement]);
|
|
58
|
+
return { refProxy, refElement, setRefElement };
|
|
59
|
+
}
|
|
60
|
+
);
|
|
61
|
+
const getDimensions = (entry, box) => {
|
|
62
|
+
if (box === "border-box") {
|
|
63
|
+
return {
|
|
64
|
+
width: entry.borderBoxSize[0].inlineSize,
|
|
65
|
+
height: entry.borderBoxSize[0].blockSize
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
if (box === "content-box") {
|
|
69
|
+
return {
|
|
70
|
+
width: entry.contentBoxSize[0].inlineSize,
|
|
71
|
+
height: entry.contentBoxSize[0].blockSize
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
return {
|
|
75
|
+
width: entry.contentRect.width,
|
|
76
|
+
height: entry.contentRect.height
|
|
77
|
+
};
|
|
78
|
+
};
|
|
5
79
|
export {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
80
|
+
getDimensions,
|
|
81
|
+
patchResizeCallback,
|
|
82
|
+
useCallbackRef,
|
|
83
|
+
useRefProxy
|
|
9
84
|
};
|
|
10
85
|
//# sourceMappingURL=harmony121.mjs.map
|
package/dist/harmony121.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"harmony121.mjs","sources":["../
|
|
1
|
+
{"version":3,"file":"harmony121.mjs","sources":["../node_modules/react-resize-detector/build/utils.js"],"sourcesContent":["import * as React from 'react';\nimport debounce from 'lodash/debounce.js';\nimport throttle from 'lodash/throttle.js';\n\n/**\n * Wraps the resize callback with a lodash debounce / throttle based on the refresh mode\n */\nconst patchResizeCallback = (resizeCallback, refreshMode, refreshRate, refreshOptions) => {\n switch (refreshMode) {\n case 'debounce':\n return debounce(resizeCallback, refreshRate, refreshOptions);\n case 'throttle':\n return throttle(resizeCallback, refreshRate, refreshOptions);\n default:\n return resizeCallback;\n }\n};\n/**\n * A custom hook that converts a callback to a ref to avoid triggering re-renders when passed as a\n * prop or avoid re-executing effects when passed as a dependency\n */\nconst useCallbackRef = \n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n(callback) => {\n const callbackRef = React.useRef(callback);\n React.useEffect(() => {\n callbackRef.current = callback;\n });\n return React.useMemo(() => ((...args) => { var _a; return (_a = callbackRef.current) === null || _a === void 0 ? void 0 : _a.call(callbackRef, ...args); }), []);\n};\n/** `useRef` hook doesn't handle conditional rendering or dynamic ref changes.\n * This hook creates a proxy that ensures that `refElement` is updated whenever the ref is changed. */\nconst useRefProxy = \n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n(targetRef) => {\n // we are going to use this ref to store the last element that was passed to the hook\n const [refElement, setRefElement] = React.useState((targetRef === null || targetRef === void 0 ? void 0 : targetRef.current) || null);\n // if targetRef is passed, we need to update the refElement\n // we have to use setTimeout because ref get assigned after the hook is called\n // in the future releases we are going to remove targetRef and force users to use ref returned by the hook\n if (targetRef) {\n setTimeout(() => {\n if (targetRef.current !== refElement) {\n setRefElement(targetRef.current);\n }\n }, 0);\n }\n // this is a memo that will be called every time the ref is changed\n // This proxy will properly call setState either when the ref is called as a function or when `.current` is set\n // we call setState inside to trigger rerender\n const refProxy = React.useMemo(() => new Proxy((node) => {\n if (node !== refElement) {\n setRefElement(node);\n }\n }, {\n get(target, prop) {\n if (prop === 'current') {\n return refElement;\n }\n return target[prop];\n },\n set(target, prop, value) {\n if (prop === 'current') {\n setRefElement(value);\n }\n else {\n target[prop] = value;\n }\n return true;\n },\n }), [refElement]);\n return { refProxy, refElement, setRefElement };\n};\n/** Calculates the dimensions of the element based on the current box model.\n * @see https://developer.mozilla.org/en-US/docs/Learn/CSS/Building_blocks/The_box_model\n */\nconst getDimensions = (entry, box) => {\n // Value\t Border\t Padding\t Inner Content\n // ---------------------------------------------------\n // 'border-box'\t Yes\t Yes\t Yes\n // 'content-box'\t No\t No\t Yes\n // undefined No\t No?\t Yes\n if (box === 'border-box') {\n return {\n width: entry.borderBoxSize[0].inlineSize,\n height: entry.borderBoxSize[0].blockSize,\n };\n }\n if (box === 'content-box') {\n return {\n width: entry.contentBoxSize[0].inlineSize,\n height: entry.contentBoxSize[0].blockSize,\n };\n }\n return {\n width: entry.contentRect.width,\n height: entry.contentRect.height,\n };\n};\n\nexport { getDimensions, patchResizeCallback, useCallbackRef, useRefProxy };\n//# sourceMappingURL=utils.js.map\n"],"names":[],"mappings":";;;AAOK,MAAC,sBAAsB,CAAC,gBAAgB,aAAa,aAAa,mBAAmB;AACtF,UAAQ,aAAW;AAAA,IACf,KAAK;AACD,aAAO,SAAS,gBAAgB,aAAa,cAAc;AAAA,IAC/D,KAAK;AACD,aAAO,SAAS,gBAAgB,aAAa,cAAc;AAAA,IAC/D;AACI,aAAO;AAAA,EACnB;AACA;AAKK,MAAC;AAAA;AAAA,EAEN,CAAC,aAAa;AACV,UAAM,cAAc,MAAM,OAAO,QAAQ;AACzC,UAAM,UAAU,MAAM;AAClB,kBAAY,UAAU;AAAA,IAC9B,CAAK;AACD,WAAO,MAAM,QAAQ,MAAO,IAAI,SAAS;AAAE,UAAI;AAAI,cAAQ,KAAK,YAAY,aAAa,QAAQ,OAAO,SAAS,SAAS,GAAG,KAAK,aAAa,GAAG,IAAI;AAAA,IAAI,GAAG,CAAA,CAAE;AAAA,EACnK;AAAA;AAGK,MAAC;AAAA;AAAA,EAEN,CAAC,cAAc;AAEX,UAAM,CAAC,YAAY,aAAa,IAAI,MAAM,UAAU,cAAc,QAAQ,cAAc,SAAS,SAAS,UAAU,YAAY,IAAI;AAIpI,QAAI,WAAW;AACX,iBAAW,MAAM;AACb,YAAI,UAAU,YAAY,YAAY;AAClC,wBAAc,UAAU,OAAO;AAAA,QAC/C;AAAA,MACS,GAAE,CAAC;AAAA,IACZ;AAII,UAAM,WAAW,MAAM,QAAQ,MAAM,IAAI,MAAM,CAAC,SAAS;AACrD,UAAI,SAAS,YAAY;AACrB,sBAAc,IAAI;AAAA,MAC9B;AAAA,IACA,GAAO;AAAA,MACC,IAAI,QAAQ,MAAM;AACd,YAAI,SAAS,WAAW;AACpB,iBAAO;AAAA,QACvB;AACY,eAAO,OAAO,IAAI;AAAA,MACrB;AAAA,MACD,IAAI,QAAQ,MAAM,OAAO;AACrB,YAAI,SAAS,WAAW;AACpB,wBAAc,KAAK;AAAA,QACnC,OACiB;AACD,iBAAO,IAAI,IAAI;AAAA,QAC/B;AACY,eAAO;AAAA,MACV;AAAA,IACT,CAAK,GAAG,CAAC,UAAU,CAAC;AAChB,WAAO,EAAE,UAAU,YAAY,cAAe;AAAA,EAClD;AAAA;AAIK,MAAC,gBAAgB,CAAC,OAAO,QAAQ;AAMlC,MAAI,QAAQ,cAAc;AACtB,WAAO;AAAA,MACH,OAAO,MAAM,cAAc,CAAC,EAAE;AAAA,MAC9B,QAAQ,MAAM,cAAc,CAAC,EAAE;AAAA,IAClC;AAAA,EACT;AACI,MAAI,QAAQ,eAAe;AACvB,WAAO;AAAA,MACH,OAAO,MAAM,eAAe,CAAC,EAAE;AAAA,MAC/B,QAAQ,MAAM,eAAe,CAAC,EAAE;AAAA,IACnC;AAAA,EACT;AACI,SAAO;AAAA,IACH,OAAO,MAAM,YAAY;AAAA,IACzB,QAAQ,MAAM,YAAY;AAAA,EAC7B;AACL;","x_google_ignoreList":[0]}
|
package/dist/harmony122.cjs
CHANGED
|
@@ -1,20 +1,90 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
3
|
+
const permissions = require("./harmony147.cjs");
|
|
4
|
+
const getProjectNavigationVisibilityMap = (project, adminRights, isFeatureEnabled) => {
|
|
5
|
+
var _a, _b;
|
|
6
|
+
return {
|
|
7
|
+
upload: {
|
|
8
|
+
visible: permissions.hasAdminRight(adminRights, "upload"),
|
|
9
|
+
disabled: false
|
|
10
|
+
},
|
|
11
|
+
download: {
|
|
12
|
+
visible: permissions.hasAdminRight(adminRights, "download"),
|
|
13
|
+
disabled: false
|
|
14
|
+
},
|
|
15
|
+
// TODO: HOME-1009, Clean up after permission management
|
|
16
|
+
// -- There is a plan for "Install apps" permission. Right..?
|
|
17
|
+
apps: {
|
|
18
|
+
visible: true,
|
|
19
|
+
disabled: false
|
|
20
|
+
},
|
|
21
|
+
// TODO: HOME-1009, Clean up after permission management
|
|
22
|
+
// -- There is a plan for "Install apps" permission. Right..?
|
|
23
|
+
contentManagement: {
|
|
24
|
+
visible: project.project_type === "content_integration" && permissions.hasAdminRight(adminRights, "keys"),
|
|
25
|
+
disabled: false
|
|
26
|
+
},
|
|
27
|
+
editor: {
|
|
28
|
+
visible: true,
|
|
29
|
+
disabled: false
|
|
30
|
+
},
|
|
31
|
+
files: {
|
|
32
|
+
visible: isFeatureEnabled("lionLfcFilesManagement") && project.project_type === "paged_documents" && permissions.hasAnyAdminRight(adminRights, ["upload", "download"]),
|
|
33
|
+
disabled: false
|
|
34
|
+
},
|
|
35
|
+
tasks: {
|
|
36
|
+
visible: permissions.hasAdminRight(adminRights, "tasks"),
|
|
37
|
+
disabled: false
|
|
38
|
+
},
|
|
39
|
+
contributors: {
|
|
40
|
+
visible: permissions.hasAdminRight(adminRights, "contributors"),
|
|
41
|
+
disabled: false
|
|
42
|
+
},
|
|
43
|
+
workflows: {
|
|
44
|
+
visible: permissions.hasAdminRight(adminRights, "settings"),
|
|
45
|
+
disabled: false
|
|
46
|
+
},
|
|
47
|
+
screenshots: {
|
|
48
|
+
visible: permissions.hasAdminRight(adminRights, "screenshots"),
|
|
49
|
+
disabled: false
|
|
50
|
+
},
|
|
51
|
+
glossary: {
|
|
52
|
+
visible: permissions.hasAdminRight(adminRights, "glossary"),
|
|
53
|
+
disabled: false
|
|
54
|
+
},
|
|
55
|
+
more: {
|
|
56
|
+
visible: true,
|
|
57
|
+
disabled: false
|
|
58
|
+
},
|
|
59
|
+
settings: {
|
|
60
|
+
visible: permissions.hasAdminRight(adminRights, "settings"),
|
|
61
|
+
disabled: false
|
|
62
|
+
},
|
|
63
|
+
branches: {
|
|
64
|
+
visible: !!((_a = project.settings) == null ? void 0 : _a.branching) && permissions.hasAnyAdminRight(adminRights, ["branches_create", "create_branches", "branches_merge"]),
|
|
65
|
+
disabled: false
|
|
66
|
+
},
|
|
67
|
+
otaBundles: {
|
|
68
|
+
visible: permissions.hasAnyAdminRight(adminRights, ["download", "settings", "keys"]) && project.project_type === "localization_files",
|
|
69
|
+
disabled: false
|
|
70
|
+
},
|
|
71
|
+
automations: {
|
|
72
|
+
visible: permissions.hasAdminRight(adminRights, "settings"),
|
|
73
|
+
disabled: false
|
|
74
|
+
},
|
|
75
|
+
duplicateFinder: {
|
|
76
|
+
visible: permissions.hasAdminRight(adminRights, "keys") && project.project_type === "localization_files",
|
|
77
|
+
disabled: false
|
|
78
|
+
},
|
|
79
|
+
activity: {
|
|
80
|
+
visible: !!((_b = project.settings) == null ? void 0 : _b.offline_translation) || permissions.hasAdminRight(adminRights, "activity"),
|
|
81
|
+
disabled: false
|
|
82
|
+
},
|
|
83
|
+
statistics: {
|
|
84
|
+
visible: permissions.hasAdminRight(adminRights, "statistics"),
|
|
85
|
+
disabled: false
|
|
86
|
+
}
|
|
87
|
+
};
|
|
18
88
|
};
|
|
19
|
-
exports.
|
|
89
|
+
exports.getProjectNavigationVisibilityMap = getProjectNavigationVisibilityMap;
|
|
20
90
|
//# sourceMappingURL=harmony122.cjs.map
|
package/dist/harmony122.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"harmony122.cjs","sources":["../src/features/
|
|
1
|
+
{"version":3,"file":"harmony122.cjs","sources":["../src/features/navigation/utils/toolbarVisibility.ts"],"sourcesContent":["import { hasAdminRight, hasAnyAdminRight } from '@features/auth/utils/permissions'\nimport type { Project } from '@features/node'\n\ntype ToolbarVisibility = {\n\tdisabled: boolean\n\tvisible: boolean\n}\n\nexport type ToolbarVisibilityMap = {\n\tupload: ToolbarVisibility\n\tdownload: ToolbarVisibility\n\tapps: ToolbarVisibility\n\tcontentManagement: ToolbarVisibility\n\teditor: ToolbarVisibility\n\tfiles: ToolbarVisibility\n\ttasks: ToolbarVisibility\n\tworkflows: ToolbarVisibility\n\tcontributors: ToolbarVisibility\n\tscreenshots: ToolbarVisibility\n\tglossary: ToolbarVisibility\n\tmore: ToolbarVisibility\n\tsettings: ToolbarVisibility\n\tbranches: ToolbarVisibility\n\totaBundles: ToolbarVisibility\n\tautomations: ToolbarVisibility\n\tduplicateFinder: ToolbarVisibility\n\tactivity: ToolbarVisibility\n\tstatistics: ToolbarVisibility\n}\n\nexport const getProjectNavigationVisibilityMap = (\n\tproject: Project,\n\tadminRights: string[],\n\tisFeatureEnabled: (key: string) => boolean,\n): ToolbarVisibilityMap => ({\n\tupload: {\n\t\tvisible: hasAdminRight(adminRights, 'upload'),\n\t\tdisabled: false,\n\t},\n\tdownload: {\n\t\tvisible: hasAdminRight(adminRights, 'download'),\n\t\tdisabled: false,\n\t},\n\t// TODO: HOME-1009, Clean up after permission management\n\t// -- There is a plan for \"Install apps\" permission. Right..?\n\tapps: {\n\t\tvisible: true,\n\t\tdisabled: false,\n\t},\n\t// TODO: HOME-1009, Clean up after permission management\n\t// -- There is a plan for \"Install apps\" permission. Right..?\n\tcontentManagement: {\n\t\tvisible: project.project_type === 'content_integration' && hasAdminRight(adminRights, 'keys'),\n\t\tdisabled: false,\n\t},\n\teditor: {\n\t\tvisible: true,\n\t\tdisabled: false,\n\t},\n\tfiles: {\n\t\tvisible:\n\t\t\tisFeatureEnabled('lionLfcFilesManagement') &&\n\t\t\tproject.project_type === 'paged_documents' &&\n\t\t\thasAnyAdminRight(adminRights, ['upload', 'download']),\n\t\tdisabled: false,\n\t},\n\ttasks: {\n\t\tvisible: hasAdminRight(adminRights, 'tasks'),\n\t\tdisabled: false,\n\t},\n\tcontributors: {\n\t\tvisible: hasAdminRight(adminRights, 'contributors'),\n\t\tdisabled: false,\n\t},\n\tworkflows: {\n\t\tvisible: hasAdminRight(adminRights, 'settings'),\n\t\tdisabled: false,\n\t},\n\tscreenshots: {\n\t\tvisible: hasAdminRight(adminRights, 'screenshots'),\n\t\tdisabled: false,\n\t},\n\tglossary: {\n\t\tvisible: hasAdminRight(adminRights, 'glossary'),\n\t\tdisabled: false,\n\t},\n\tmore: {\n\t\tvisible: true,\n\t\tdisabled: false,\n\t},\n\tsettings: {\n\t\tvisible: hasAdminRight(adminRights, 'settings'),\n\t\tdisabled: false,\n\t},\n\tbranches: {\n\t\tvisible:\n\t\t\t!!project.settings?.branching &&\n\t\t\thasAnyAdminRight(adminRights, ['branches_create', 'create_branches', 'branches_merge']),\n\t\tdisabled: false,\n\t},\n\totaBundles: {\n\t\tvisible:\n\t\t\thasAnyAdminRight(adminRights, ['download', 'settings', 'keys']) &&\n\t\t\tproject.project_type === 'localization_files',\n\t\tdisabled: false,\n\t},\n\tautomations: {\n\t\tvisible: hasAdminRight(adminRights, 'settings'),\n\t\tdisabled: false,\n\t},\n\tduplicateFinder: {\n\t\tvisible: hasAdminRight(adminRights, 'keys') && project.project_type === 'localization_files',\n\t\tdisabled: false,\n\t},\n\tactivity: {\n\t\tvisible: !!project.settings?.offline_translation || hasAdminRight(adminRights, 'activity'),\n\t\tdisabled: false,\n\t},\n\tstatistics: {\n\t\tvisible: hasAdminRight(adminRights, 'statistics'),\n\t\tdisabled: false,\n\t},\n})\n"],"names":["hasAdminRight","hasAnyAdminRight"],"mappings":";;;AA8BO,MAAM,oCAAoC,CAChD,SACA,aACA,qBAC2B;;AAAA;AAAA,IAC3B,QAAQ;AAAA,MACP,SAASA,YAAAA,cAAc,aAAa,QAAQ;AAAA,MAC5C,UAAU;AAAA,IACX;AAAA,IACA,UAAU;AAAA,MACT,SAASA,YAAAA,cAAc,aAAa,UAAU;AAAA,MAC9C,UAAU;AAAA,IACX;AAAA;AAAA;AAAA,IAGA,MAAM;AAAA,MACL,SAAS;AAAA,MACT,UAAU;AAAA,IACX;AAAA;AAAA;AAAA,IAGA,mBAAmB;AAAA,MAClB,SAAS,QAAQ,iBAAiB,yBAAyBA,YAAA,cAAc,aAAa,MAAM;AAAA,MAC5F,UAAU;AAAA,IACX;AAAA,IACA,QAAQ;AAAA,MACP,SAAS;AAAA,MACT,UAAU;AAAA,IACX;AAAA,IACA,OAAO;AAAA,MACN,SACC,iBAAiB,wBAAwB,KACzC,QAAQ,iBAAiB,qBACzBC,YAAAA,iBAAiB,aAAa,CAAC,UAAU,UAAU,CAAC;AAAA,MACrD,UAAU;AAAA,IACX;AAAA,IACA,OAAO;AAAA,MACN,SAASD,YAAAA,cAAc,aAAa,OAAO;AAAA,MAC3C,UAAU;AAAA,IACX;AAAA,IACA,cAAc;AAAA,MACb,SAASA,YAAAA,cAAc,aAAa,cAAc;AAAA,MAClD,UAAU;AAAA,IACX;AAAA,IACA,WAAW;AAAA,MACV,SAASA,YAAAA,cAAc,aAAa,UAAU;AAAA,MAC9C,UAAU;AAAA,IACX;AAAA,IACA,aAAa;AAAA,MACZ,SAASA,YAAAA,cAAc,aAAa,aAAa;AAAA,MACjD,UAAU;AAAA,IACX;AAAA,IACA,UAAU;AAAA,MACT,SAASA,YAAAA,cAAc,aAAa,UAAU;AAAA,MAC9C,UAAU;AAAA,IACX;AAAA,IACA,MAAM;AAAA,MACL,SAAS;AAAA,MACT,UAAU;AAAA,IACX;AAAA,IACA,UAAU;AAAA,MACT,SAASA,YAAAA,cAAc,aAAa,UAAU;AAAA,MAC9C,UAAU;AAAA,IACX;AAAA,IACA,UAAU;AAAA,MACT,SACC,CAAC,GAAC,aAAQ,aAAR,mBAAkB,cACpBC,6BAAiB,aAAa,CAAC,mBAAmB,mBAAmB,gBAAgB,CAAC;AAAA,MACvF,UAAU;AAAA,IACX;AAAA,IACA,YAAY;AAAA,MACX,SACCA,YAAAA,iBAAiB,aAAa,CAAC,YAAY,YAAY,MAAM,CAAC,KAC9D,QAAQ,iBAAiB;AAAA,MAC1B,UAAU;AAAA,IACX;AAAA,IACA,aAAa;AAAA,MACZ,SAASD,YAAAA,cAAc,aAAa,UAAU;AAAA,MAC9C,UAAU;AAAA,IACX;AAAA,IACA,iBAAiB;AAAA,MAChB,SAASA,YAAc,cAAA,aAAa,MAAM,KAAK,QAAQ,iBAAiB;AAAA,MACxE,UAAU;AAAA,IACX;AAAA,IACA,UAAU;AAAA,MACT,SAAS,CAAC,GAAC,aAAQ,aAAR,mBAAkB,wBAAuBA,YAAA,cAAc,aAAa,UAAU;AAAA,MACzF,UAAU;AAAA,IACX;AAAA,IACA,YAAY;AAAA,MACX,SAASA,YAAAA,cAAc,aAAa,YAAY;AAAA,MAChD,UAAU;AAAA,IAAA;AAAA,EAEZ;AAAA;;"}
|
package/dist/harmony122.mjs
CHANGED
|
@@ -1,20 +1,90 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
1
|
+
import { hasAdminRight, hasAnyAdminRight } from "./harmony147.mjs";
|
|
2
|
+
const getProjectNavigationVisibilityMap = (project, adminRights, isFeatureEnabled) => {
|
|
3
|
+
var _a, _b;
|
|
4
|
+
return {
|
|
5
|
+
upload: {
|
|
6
|
+
visible: hasAdminRight(adminRights, "upload"),
|
|
7
|
+
disabled: false
|
|
8
|
+
},
|
|
9
|
+
download: {
|
|
10
|
+
visible: hasAdminRight(adminRights, "download"),
|
|
11
|
+
disabled: false
|
|
12
|
+
},
|
|
13
|
+
// TODO: HOME-1009, Clean up after permission management
|
|
14
|
+
// -- There is a plan for "Install apps" permission. Right..?
|
|
15
|
+
apps: {
|
|
16
|
+
visible: true,
|
|
17
|
+
disabled: false
|
|
18
|
+
},
|
|
19
|
+
// TODO: HOME-1009, Clean up after permission management
|
|
20
|
+
// -- There is a plan for "Install apps" permission. Right..?
|
|
21
|
+
contentManagement: {
|
|
22
|
+
visible: project.project_type === "content_integration" && hasAdminRight(adminRights, "keys"),
|
|
23
|
+
disabled: false
|
|
24
|
+
},
|
|
25
|
+
editor: {
|
|
26
|
+
visible: true,
|
|
27
|
+
disabled: false
|
|
28
|
+
},
|
|
29
|
+
files: {
|
|
30
|
+
visible: isFeatureEnabled("lionLfcFilesManagement") && project.project_type === "paged_documents" && hasAnyAdminRight(adminRights, ["upload", "download"]),
|
|
31
|
+
disabled: false
|
|
32
|
+
},
|
|
33
|
+
tasks: {
|
|
34
|
+
visible: hasAdminRight(adminRights, "tasks"),
|
|
35
|
+
disabled: false
|
|
36
|
+
},
|
|
37
|
+
contributors: {
|
|
38
|
+
visible: hasAdminRight(adminRights, "contributors"),
|
|
39
|
+
disabled: false
|
|
40
|
+
},
|
|
41
|
+
workflows: {
|
|
42
|
+
visible: hasAdminRight(adminRights, "settings"),
|
|
43
|
+
disabled: false
|
|
44
|
+
},
|
|
45
|
+
screenshots: {
|
|
46
|
+
visible: hasAdminRight(adminRights, "screenshots"),
|
|
47
|
+
disabled: false
|
|
48
|
+
},
|
|
49
|
+
glossary: {
|
|
50
|
+
visible: hasAdminRight(adminRights, "glossary"),
|
|
51
|
+
disabled: false
|
|
52
|
+
},
|
|
53
|
+
more: {
|
|
54
|
+
visible: true,
|
|
55
|
+
disabled: false
|
|
56
|
+
},
|
|
57
|
+
settings: {
|
|
58
|
+
visible: hasAdminRight(adminRights, "settings"),
|
|
59
|
+
disabled: false
|
|
60
|
+
},
|
|
61
|
+
branches: {
|
|
62
|
+
visible: !!((_a = project.settings) == null ? void 0 : _a.branching) && hasAnyAdminRight(adminRights, ["branches_create", "create_branches", "branches_merge"]),
|
|
63
|
+
disabled: false
|
|
64
|
+
},
|
|
65
|
+
otaBundles: {
|
|
66
|
+
visible: hasAnyAdminRight(adminRights, ["download", "settings", "keys"]) && project.project_type === "localization_files",
|
|
67
|
+
disabled: false
|
|
68
|
+
},
|
|
69
|
+
automations: {
|
|
70
|
+
visible: hasAdminRight(adminRights, "settings"),
|
|
71
|
+
disabled: false
|
|
72
|
+
},
|
|
73
|
+
duplicateFinder: {
|
|
74
|
+
visible: hasAdminRight(adminRights, "keys") && project.project_type === "localization_files",
|
|
75
|
+
disabled: false
|
|
76
|
+
},
|
|
77
|
+
activity: {
|
|
78
|
+
visible: !!((_b = project.settings) == null ? void 0 : _b.offline_translation) || hasAdminRight(adminRights, "activity"),
|
|
79
|
+
disabled: false
|
|
80
|
+
},
|
|
81
|
+
statistics: {
|
|
82
|
+
visible: hasAdminRight(adminRights, "statistics"),
|
|
83
|
+
disabled: false
|
|
84
|
+
}
|
|
85
|
+
};
|
|
16
86
|
};
|
|
17
87
|
export {
|
|
18
|
-
|
|
88
|
+
getProjectNavigationVisibilityMap
|
|
19
89
|
};
|
|
20
90
|
//# sourceMappingURL=harmony122.mjs.map
|
package/dist/harmony122.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"harmony122.mjs","sources":["../src/features/
|
|
1
|
+
{"version":3,"file":"harmony122.mjs","sources":["../src/features/navigation/utils/toolbarVisibility.ts"],"sourcesContent":["import { hasAdminRight, hasAnyAdminRight } from '@features/auth/utils/permissions'\nimport type { Project } from '@features/node'\n\ntype ToolbarVisibility = {\n\tdisabled: boolean\n\tvisible: boolean\n}\n\nexport type ToolbarVisibilityMap = {\n\tupload: ToolbarVisibility\n\tdownload: ToolbarVisibility\n\tapps: ToolbarVisibility\n\tcontentManagement: ToolbarVisibility\n\teditor: ToolbarVisibility\n\tfiles: ToolbarVisibility\n\ttasks: ToolbarVisibility\n\tworkflows: ToolbarVisibility\n\tcontributors: ToolbarVisibility\n\tscreenshots: ToolbarVisibility\n\tglossary: ToolbarVisibility\n\tmore: ToolbarVisibility\n\tsettings: ToolbarVisibility\n\tbranches: ToolbarVisibility\n\totaBundles: ToolbarVisibility\n\tautomations: ToolbarVisibility\n\tduplicateFinder: ToolbarVisibility\n\tactivity: ToolbarVisibility\n\tstatistics: ToolbarVisibility\n}\n\nexport const getProjectNavigationVisibilityMap = (\n\tproject: Project,\n\tadminRights: string[],\n\tisFeatureEnabled: (key: string) => boolean,\n): ToolbarVisibilityMap => ({\n\tupload: {\n\t\tvisible: hasAdminRight(adminRights, 'upload'),\n\t\tdisabled: false,\n\t},\n\tdownload: {\n\t\tvisible: hasAdminRight(adminRights, 'download'),\n\t\tdisabled: false,\n\t},\n\t// TODO: HOME-1009, Clean up after permission management\n\t// -- There is a plan for \"Install apps\" permission. Right..?\n\tapps: {\n\t\tvisible: true,\n\t\tdisabled: false,\n\t},\n\t// TODO: HOME-1009, Clean up after permission management\n\t// -- There is a plan for \"Install apps\" permission. Right..?\n\tcontentManagement: {\n\t\tvisible: project.project_type === 'content_integration' && hasAdminRight(adminRights, 'keys'),\n\t\tdisabled: false,\n\t},\n\teditor: {\n\t\tvisible: true,\n\t\tdisabled: false,\n\t},\n\tfiles: {\n\t\tvisible:\n\t\t\tisFeatureEnabled('lionLfcFilesManagement') &&\n\t\t\tproject.project_type === 'paged_documents' &&\n\t\t\thasAnyAdminRight(adminRights, ['upload', 'download']),\n\t\tdisabled: false,\n\t},\n\ttasks: {\n\t\tvisible: hasAdminRight(adminRights, 'tasks'),\n\t\tdisabled: false,\n\t},\n\tcontributors: {\n\t\tvisible: hasAdminRight(adminRights, 'contributors'),\n\t\tdisabled: false,\n\t},\n\tworkflows: {\n\t\tvisible: hasAdminRight(adminRights, 'settings'),\n\t\tdisabled: false,\n\t},\n\tscreenshots: {\n\t\tvisible: hasAdminRight(adminRights, 'screenshots'),\n\t\tdisabled: false,\n\t},\n\tglossary: {\n\t\tvisible: hasAdminRight(adminRights, 'glossary'),\n\t\tdisabled: false,\n\t},\n\tmore: {\n\t\tvisible: true,\n\t\tdisabled: false,\n\t},\n\tsettings: {\n\t\tvisible: hasAdminRight(adminRights, 'settings'),\n\t\tdisabled: false,\n\t},\n\tbranches: {\n\t\tvisible:\n\t\t\t!!project.settings?.branching &&\n\t\t\thasAnyAdminRight(adminRights, ['branches_create', 'create_branches', 'branches_merge']),\n\t\tdisabled: false,\n\t},\n\totaBundles: {\n\t\tvisible:\n\t\t\thasAnyAdminRight(adminRights, ['download', 'settings', 'keys']) &&\n\t\t\tproject.project_type === 'localization_files',\n\t\tdisabled: false,\n\t},\n\tautomations: {\n\t\tvisible: hasAdminRight(adminRights, 'settings'),\n\t\tdisabled: false,\n\t},\n\tduplicateFinder: {\n\t\tvisible: hasAdminRight(adminRights, 'keys') && project.project_type === 'localization_files',\n\t\tdisabled: false,\n\t},\n\tactivity: {\n\t\tvisible: !!project.settings?.offline_translation || hasAdminRight(adminRights, 'activity'),\n\t\tdisabled: false,\n\t},\n\tstatistics: {\n\t\tvisible: hasAdminRight(adminRights, 'statistics'),\n\t\tdisabled: false,\n\t},\n})\n"],"names":[],"mappings":";AA8BO,MAAM,oCAAoC,CAChD,SACA,aACA,qBAC2B;;AAAA;AAAA,IAC3B,QAAQ;AAAA,MACP,SAAS,cAAc,aAAa,QAAQ;AAAA,MAC5C,UAAU;AAAA,IACX;AAAA,IACA,UAAU;AAAA,MACT,SAAS,cAAc,aAAa,UAAU;AAAA,MAC9C,UAAU;AAAA,IACX;AAAA;AAAA;AAAA,IAGA,MAAM;AAAA,MACL,SAAS;AAAA,MACT,UAAU;AAAA,IACX;AAAA;AAAA;AAAA,IAGA,mBAAmB;AAAA,MAClB,SAAS,QAAQ,iBAAiB,yBAAyB,cAAc,aAAa,MAAM;AAAA,MAC5F,UAAU;AAAA,IACX;AAAA,IACA,QAAQ;AAAA,MACP,SAAS;AAAA,MACT,UAAU;AAAA,IACX;AAAA,IACA,OAAO;AAAA,MACN,SACC,iBAAiB,wBAAwB,KACzC,QAAQ,iBAAiB,qBACzB,iBAAiB,aAAa,CAAC,UAAU,UAAU,CAAC;AAAA,MACrD,UAAU;AAAA,IACX;AAAA,IACA,OAAO;AAAA,MACN,SAAS,cAAc,aAAa,OAAO;AAAA,MAC3C,UAAU;AAAA,IACX;AAAA,IACA,cAAc;AAAA,MACb,SAAS,cAAc,aAAa,cAAc;AAAA,MAClD,UAAU;AAAA,IACX;AAAA,IACA,WAAW;AAAA,MACV,SAAS,cAAc,aAAa,UAAU;AAAA,MAC9C,UAAU;AAAA,IACX;AAAA,IACA,aAAa;AAAA,MACZ,SAAS,cAAc,aAAa,aAAa;AAAA,MACjD,UAAU;AAAA,IACX;AAAA,IACA,UAAU;AAAA,MACT,SAAS,cAAc,aAAa,UAAU;AAAA,MAC9C,UAAU;AAAA,IACX;AAAA,IACA,MAAM;AAAA,MACL,SAAS;AAAA,MACT,UAAU;AAAA,IACX;AAAA,IACA,UAAU;AAAA,MACT,SAAS,cAAc,aAAa,UAAU;AAAA,MAC9C,UAAU;AAAA,IACX;AAAA,IACA,UAAU;AAAA,MACT,SACC,CAAC,GAAC,aAAQ,aAAR,mBAAkB,cACpB,iBAAiB,aAAa,CAAC,mBAAmB,mBAAmB,gBAAgB,CAAC;AAAA,MACvF,UAAU;AAAA,IACX;AAAA,IACA,YAAY;AAAA,MACX,SACC,iBAAiB,aAAa,CAAC,YAAY,YAAY,MAAM,CAAC,KAC9D,QAAQ,iBAAiB;AAAA,MAC1B,UAAU;AAAA,IACX;AAAA,IACA,aAAa;AAAA,MACZ,SAAS,cAAc,aAAa,UAAU;AAAA,MAC9C,UAAU;AAAA,IACX;AAAA,IACA,iBAAiB;AAAA,MAChB,SAAS,cAAc,aAAa,MAAM,KAAK,QAAQ,iBAAiB;AAAA,MACxE,UAAU;AAAA,IACX;AAAA,IACA,UAAU;AAAA,MACT,SAAS,CAAC,GAAC,aAAQ,aAAR,mBAAkB,wBAAuB,cAAc,aAAa,UAAU;AAAA,MACzF,UAAU;AAAA,IACX;AAAA,IACA,YAAY;AAAA,MACX,SAAS,cAAc,aAAa,YAAY;AAAA,MAChD,UAAU;AAAA,IAAA;AAAA,EAEZ;AAAA;"}
|
package/dist/harmony123.cjs
CHANGED
|
@@ -1,11 +1,33 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
3
|
+
const navigationItems = [
|
|
4
|
+
{
|
|
5
|
+
key: "editor",
|
|
6
|
+
labelKey: "Editor",
|
|
7
|
+
path: ({ projectId }) => `/project/${projectId}/editor`
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
key: "dashboard",
|
|
11
|
+
labelKey: "Download",
|
|
12
|
+
path: ({ projectId }) => `/project/${projectId}/dashboard`
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
key: "contributors",
|
|
16
|
+
labelKey: "Contributors",
|
|
17
|
+
path: ({ projectId }) => `/project/${projectId}/contributors`
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
key: "orders",
|
|
21
|
+
labelKey: "Human proofreading",
|
|
22
|
+
path: ({ projectId }) => `/project/${projectId}/orders`,
|
|
23
|
+
shouldShow: ({ flags }) => flags.ap_feature_hraas === "on"
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
key: "billing",
|
|
27
|
+
labelKey: "Billing",
|
|
28
|
+
path: ({ projectId }) => `/project/${projectId}/billing`,
|
|
29
|
+
shouldShow: ({ flags }) => flags.ap_feature_billing === "on"
|
|
30
|
+
}
|
|
31
|
+
];
|
|
32
|
+
exports.navigationItems = navigationItems;
|
|
11
33
|
//# sourceMappingURL=harmony123.cjs.map
|
package/dist/harmony123.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"harmony123.cjs","sources":["../src/features/
|
|
1
|
+
{"version":3,"file":"harmony123.cjs","sources":["../src/features/navigation/schemas/navigationSchema.ts"],"sourcesContent":["import type { DropdownItem, NavItemIcon } from '@features/navigation/types/navigation'\n\nexport type NavKey = 'editor' | 'contributors' | 'orders' | 'billing' | 'settings' | 'dashboard'\n\nexport interface NavigationItem {\n\tkey: NavKey\n\tlabelKey: string // TODO: i18n key inside this package\n\tpath: ({ projectId }: { projectId: string }) => string\n\n\ticon?: NavItemIcon\n\tdropdown?: DropdownItem[][]\n\tbadge?: number | ((ctx: NavCtx) => number)\n\n\tshouldShow?: (ctx: NavCtx) => boolean\n\tdisabled?: boolean | ((ctx: NavCtx) => boolean)\n\tisActive?: (pathname: string) => boolean // custom match, else fallback\n}\n\n/** What the gate functions receive */\nexport interface NavCtx {\n\tflags: Record<string, string>\n\tpathname: string\n\tpermissions?: Array<string> // e.g. contributor admin_rights //TODO: Provide type for permissions\n}\n\n// TODO: Handle Translations on harmony side.\nexport const navigationItems: NavigationItem[] = [\n\t{\n\t\tkey: 'editor',\n\t\tlabelKey: 'Editor',\n\t\tpath: ({ projectId }) => `/project/${projectId}/editor`,\n\t},\n\t{\n\t\tkey: 'dashboard',\n\t\tlabelKey: 'Download',\n\t\tpath: ({ projectId }) => `/project/${projectId}/dashboard`,\n\t},\n\t{\n\t\tkey: 'contributors',\n\t\tlabelKey: 'Contributors',\n\t\tpath: ({ projectId }) => `/project/${projectId}/contributors`,\n\t},\n\n\t{\n\t\tkey: 'orders',\n\t\tlabelKey: 'Human proofreading',\n\t\tpath: ({ projectId }) => `/project/${projectId}/orders`,\n\t\tshouldShow: ({ flags }) => flags.ap_feature_hraas === 'on',\n\t},\n\t{\n\t\tkey: 'billing',\n\t\tlabelKey: 'Billing',\n\t\tpath: ({ projectId }) => `/project/${projectId}/billing`,\n\t\tshouldShow: ({ flags }) => flags.ap_feature_billing === 'on',\n\t},\n]\n"],"names":[],"mappings":";;AA0BO,MAAM,kBAAoC;AAAA,EAChD;AAAA,IACC,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,EAAE,UAAU,MAAM,YAAY,SAAS;AAAA,EAC/C;AAAA,EACA;AAAA,IACC,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,EAAE,UAAU,MAAM,YAAY,SAAS;AAAA,EAC/C;AAAA,EACA;AAAA,IACC,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,EAAE,UAAU,MAAM,YAAY,SAAS;AAAA,EAC/C;AAAA,EAEA;AAAA,IACC,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,EAAE,UAAU,MAAM,YAAY,SAAS;AAAA,IAC9C,YAAY,CAAC,EAAE,YAAY,MAAM,qBAAqB;AAAA,EACvD;AAAA,EACA;AAAA,IACC,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,EAAE,UAAU,MAAM,YAAY,SAAS;AAAA,IAC9C,YAAY,CAAC,EAAE,YAAY,MAAM,uBAAuB;AAAA,EAAA;AAE1D;;"}
|
package/dist/harmony123.mjs
CHANGED
|
@@ -1,11 +1,33 @@
|
|
|
1
|
-
const
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
const navigationItems = [
|
|
2
|
+
{
|
|
3
|
+
key: "editor",
|
|
4
|
+
labelKey: "Editor",
|
|
5
|
+
path: ({ projectId }) => `/project/${projectId}/editor`
|
|
6
|
+
},
|
|
7
|
+
{
|
|
8
|
+
key: "dashboard",
|
|
9
|
+
labelKey: "Download",
|
|
10
|
+
path: ({ projectId }) => `/project/${projectId}/dashboard`
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
key: "contributors",
|
|
14
|
+
labelKey: "Contributors",
|
|
15
|
+
path: ({ projectId }) => `/project/${projectId}/contributors`
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
key: "orders",
|
|
19
|
+
labelKey: "Human proofreading",
|
|
20
|
+
path: ({ projectId }) => `/project/${projectId}/orders`,
|
|
21
|
+
shouldShow: ({ flags }) => flags.ap_feature_hraas === "on"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
key: "billing",
|
|
25
|
+
labelKey: "Billing",
|
|
26
|
+
path: ({ projectId }) => `/project/${projectId}/billing`,
|
|
27
|
+
shouldShow: ({ flags }) => flags.ap_feature_billing === "on"
|
|
28
|
+
}
|
|
29
|
+
];
|
|
8
30
|
export {
|
|
9
|
-
|
|
31
|
+
navigationItems
|
|
10
32
|
};
|
|
11
33
|
//# sourceMappingURL=harmony123.mjs.map
|
package/dist/harmony123.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"harmony123.mjs","sources":["../src/features/
|
|
1
|
+
{"version":3,"file":"harmony123.mjs","sources":["../src/features/navigation/schemas/navigationSchema.ts"],"sourcesContent":["import type { DropdownItem, NavItemIcon } from '@features/navigation/types/navigation'\n\nexport type NavKey = 'editor' | 'contributors' | 'orders' | 'billing' | 'settings' | 'dashboard'\n\nexport interface NavigationItem {\n\tkey: NavKey\n\tlabelKey: string // TODO: i18n key inside this package\n\tpath: ({ projectId }: { projectId: string }) => string\n\n\ticon?: NavItemIcon\n\tdropdown?: DropdownItem[][]\n\tbadge?: number | ((ctx: NavCtx) => number)\n\n\tshouldShow?: (ctx: NavCtx) => boolean\n\tdisabled?: boolean | ((ctx: NavCtx) => boolean)\n\tisActive?: (pathname: string) => boolean // custom match, else fallback\n}\n\n/** What the gate functions receive */\nexport interface NavCtx {\n\tflags: Record<string, string>\n\tpathname: string\n\tpermissions?: Array<string> // e.g. contributor admin_rights //TODO: Provide type for permissions\n}\n\n// TODO: Handle Translations on harmony side.\nexport const navigationItems: NavigationItem[] = [\n\t{\n\t\tkey: 'editor',\n\t\tlabelKey: 'Editor',\n\t\tpath: ({ projectId }) => `/project/${projectId}/editor`,\n\t},\n\t{\n\t\tkey: 'dashboard',\n\t\tlabelKey: 'Download',\n\t\tpath: ({ projectId }) => `/project/${projectId}/dashboard`,\n\t},\n\t{\n\t\tkey: 'contributors',\n\t\tlabelKey: 'Contributors',\n\t\tpath: ({ projectId }) => `/project/${projectId}/contributors`,\n\t},\n\n\t{\n\t\tkey: 'orders',\n\t\tlabelKey: 'Human proofreading',\n\t\tpath: ({ projectId }) => `/project/${projectId}/orders`,\n\t\tshouldShow: ({ flags }) => flags.ap_feature_hraas === 'on',\n\t},\n\t{\n\t\tkey: 'billing',\n\t\tlabelKey: 'Billing',\n\t\tpath: ({ projectId }) => `/project/${projectId}/billing`,\n\t\tshouldShow: ({ flags }) => flags.ap_feature_billing === 'on',\n\t},\n]\n"],"names":[],"mappings":"AA0BO,MAAM,kBAAoC;AAAA,EAChD;AAAA,IACC,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,EAAE,UAAU,MAAM,YAAY,SAAS;AAAA,EAC/C;AAAA,EACA;AAAA,IACC,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,EAAE,UAAU,MAAM,YAAY,SAAS;AAAA,EAC/C;AAAA,EACA;AAAA,IACC,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,EAAE,UAAU,MAAM,YAAY,SAAS;AAAA,EAC/C;AAAA,EAEA;AAAA,IACC,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,EAAE,UAAU,MAAM,YAAY,SAAS;AAAA,IAC9C,YAAY,CAAC,EAAE,YAAY,MAAM,qBAAqB;AAAA,EACvD;AAAA,EACA;AAAA,IACC,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,EAAE,UAAU,MAAM,YAAY,SAAS;AAAA,IAC9C,YAAY,CAAC,EAAE,YAAY,MAAM,uBAAuB;AAAA,EAAA;AAE1D;"}
|
package/dist/harmony124.cjs
CHANGED
|
@@ -1,11 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.
|
|
3
|
-
const
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
return items.every((item) => seedArray.includes(item));
|
|
9
|
-
};
|
|
10
|
-
exports.has = has;
|
|
2
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
|
+
const _commonjsHelpers = require("./harmony177.cjs");
|
|
4
|
+
const debounce$1 = require("./harmony148.cjs");
|
|
5
|
+
var debounceExports = debounce$1.__require();
|
|
6
|
+
const debounce = /* @__PURE__ */ _commonjsHelpers.getDefaultExportFromCjs(debounceExports);
|
|
7
|
+
exports.default = debounce;
|
|
11
8
|
//# sourceMappingURL=harmony124.cjs.map
|