@edifice.io/react 2.2.2-develop-pedago.20250409103005 → 2.2.2-develop-b2school.20250410105023
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/components/Avatar/Avatar.d.ts +0 -21
- package/dist/components/Avatar/Avatar.js +2 -15
- package/dist/components/Card/Card.d.ts +1 -3
- package/dist/components/Card/CardBody.d.ts +1 -3
- package/dist/components/Card/CardBody.js +2 -4
- package/dist/components/Combobox/Combobox.d.ts +55 -5
- package/dist/components/Combobox/Combobox.js +13 -7
- package/dist/components/Combobox/ComboboxTrigger.d.ts +30 -2
- package/dist/components/Combobox/ComboboxTrigger.js +27 -8
- package/dist/components/Dropdown/Dropdown.d.ts +10 -6
- package/dist/components/Dropdown/Dropdown.js +5 -5
- package/dist/components/Dropdown/DropdownItem.d.ts +3 -3
- package/dist/components/Dropdown/DropdownItem.js +6 -8
- package/dist/components/Dropdown/DropdownTrigger.d.ts +2 -31
- package/dist/components/Dropdown/DropdownTrigger.js +8 -24
- package/dist/components/List/List.d.ts +9 -1
- package/dist/components/List/List.js +9 -9
- package/dist/components/SearchBar/SearchBar.d.ts +1 -1
- package/dist/components/SearchBar/SearchBar.js +3 -1
- package/dist/components/index.d.ts +0 -4
- package/dist/editor.js +22 -22
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/useCheckable/useCheckable.js +10 -3
- package/dist/hooks/useConf/useConf.d.ts +1 -1
- package/dist/hooks/useConversation/useConversation.d.ts +1 -1
- package/dist/hooks/useConversation/useConversation.js +13 -17
- package/dist/hooks/useDropdown/useDropdown.d.ts +2 -1
- package/dist/hooks/useDropdown/useDropdown.js +5 -3
- package/dist/hooks/useSession/useSession.d.ts +1 -1
- package/dist/hooks/useWorkspaceFolders/index.d.ts +1 -0
- package/dist/hooks/useWorkspaceFolders/useWorkspaceFolders.d.ts +14 -0
- package/dist/hooks/useWorkspaceFolders/useWorkspaceFolders.js +44 -0
- package/dist/icons.js +230 -212
- package/dist/index.d.ts +1 -0
- package/dist/index.js +172 -154
- package/dist/modals.js +16 -14
- package/dist/modules/comments/components/Comment.js +34 -49
- package/dist/modules/comments/components/CommentForm.d.ts +1 -2
- package/dist/modules/comments/components/CommentForm.js +8 -12
- package/dist/modules/comments/components/CommentList.js +3 -3
- package/dist/modules/comments/constants.d.ts +0 -4
- package/dist/modules/comments/constants.js +1 -2
- package/dist/modules/comments/context/Context.d.ts +4 -6
- package/dist/modules/comments/hooks/useComments.d.ts +7 -7
- package/dist/modules/comments/hooks/useComments.js +19 -24
- package/dist/modules/comments/hooks/useCommentsContext.d.ts +4 -6
- package/dist/modules/comments/provider/CommentProvider.js +13 -16
- package/dist/modules/comments/types.d.ts +1 -14
- package/dist/modules/editor/components/Editor/Editor.d.ts +3 -1
- package/dist/modules/editor/components/Editor/Editor.js +5 -8
- package/dist/modules/editor/components/EditorToolbar/EditorToolbar.js +0 -12
- package/dist/modules/editor/components/NodeView/ConversationHistoryNodeView.d.ts +2 -0
- package/dist/modules/editor/components/NodeView/ConversationHistoryNodeView.js +10 -0
- package/dist/modules/editor/components/NodeView/index.d.ts +2 -2
- package/dist/modules/editor/components/Renderer/ConversationHistoryRenderer.d.ts +8 -0
- package/dist/modules/editor/components/Renderer/ConversationHistoryRenderer.js +28 -0
- package/dist/modules/editor/components/Renderer/index.d.ts +2 -2
- package/dist/modules/editor/hooks/useTipTapEditor.d.ts +6 -2
- package/dist/modules/editor/hooks/useTipTapEditor.js +2 -4
- package/dist/modules/icons/components/IconFolderAdd.d.ts +7 -0
- package/dist/modules/icons/components/IconFolderAdd.js +13 -0
- package/dist/modules/icons/components/IconFolderDelete.d.ts +7 -0
- package/dist/modules/icons/components/IconFolderDelete.js +12 -0
- package/dist/modules/icons/components/IconGlobe2.d.ts +7 -0
- package/dist/modules/icons/components/IconGlobe2.js +16 -0
- package/dist/modules/icons/components/IconGroupAvatar.d.ts +7 -0
- package/dist/modules/icons/components/IconGroupAvatar.js +12 -0
- package/dist/modules/icons/components/IconMailRecall.d.ts +7 -0
- package/dist/modules/icons/components/IconMailRecall.js +13 -0
- package/dist/modules/icons/components/IconQuestionMark.d.ts +7 -0
- package/dist/modules/icons/components/IconQuestionMark.js +13 -0
- package/dist/modules/icons/components/IconReadMail.d.ts +7 -0
- package/dist/modules/icons/components/IconReadMail.js +16 -0
- package/dist/modules/icons/components/IconSignature.d.ts +7 -0
- package/dist/modules/icons/components/IconSignature.js +13 -0
- package/dist/modules/icons/components/IconUndoAll.d.ts +7 -0
- package/dist/modules/icons/components/IconUndoAll.js +14 -0
- package/dist/modules/icons/components/IconUnreadMail.d.ts +7 -0
- package/dist/modules/icons/components/IconUnreadMail.js +16 -0
- package/dist/modules/icons/components/index.d.ts +10 -1
- package/dist/modules/modals/ConfirmModal/ConfirmModal.d.ts +42 -0
- package/dist/modules/modals/ConfirmModal/ConfirmModal.js +36 -0
- package/dist/modules/modals/ConfirmModal/index.d.ts +1 -0
- package/dist/modules/modals/ResourceModal/ResourceModal.d.ts +1 -1
- package/dist/modules/modals/ResourceModal/hooks/useUpdateMutation.d.ts +1 -1
- package/dist/modules/modals/ShareModal/ShareModal.d.ts +1 -1
- package/dist/modules/modals/ShareModal/apps/ShareBlog.d.ts +1 -1
- package/dist/modules/modals/ShareModal/hooks/useShareMutation.d.ts +1 -1
- package/dist/modules/modals/index.d.ts +1 -0
- package/dist/modules/multimedia/Linker/InternalLinker/InternalLinker.js +5 -9
- package/dist/modules/multimedia/WorkspaceFolders/WorkspaceFolders.d.ts +8 -0
- package/dist/modules/multimedia/WorkspaceFolders/WorkspaceFolders.js +28 -0
- package/dist/modules/multimedia/WorkspaceFolders/index.d.ts +1 -0
- package/dist/modules/multimedia/index.d.ts +1 -0
- package/dist/multimedia.js +3 -1
- package/dist/providers/EdificeClientProvider/EdificeClientProvider.context.d.ts +1 -1
- package/dist/types/index.d.ts +0 -1
- package/package.json +6 -6
- package/dist/components/AvatarGroup/AvatarGroup.d.ts +0 -24
- package/dist/components/AvatarGroup/AvatarGroup.js +0 -24
- package/dist/components/AvatarGroup/index.d.ts +0 -2
- package/dist/components/PreventPropagation/PreventPropagation.d.ts +0 -10
- package/dist/components/PreventPropagation/PreventPropagation.js +0 -9
- package/dist/components/PreventPropagation/index.d.ts +0 -2
- package/dist/components/StackedGroup/StackedGroup.d.ts +0 -23
- package/dist/components/StackedGroup/StackedGroup.js +0 -21
- package/dist/components/StackedGroup/index.d.ts +0 -1
- package/dist/components/Switch/Switch.d.ts +0 -29
- package/dist/components/Switch/Switch.js +0 -27
- package/dist/components/Switch/index.d.ts +0 -2
- package/dist/modules/comments/components/CommentDeleted.d.ts +0 -1
- package/dist/modules/comments/components/CommentDeleted.js +0 -11
- package/dist/modules/comments/components/CommentReplies.d.ts +0 -4
- package/dist/modules/comments/components/CommentReplies.js +0 -33
- package/dist/modules/comments/hooks/useCommentReplies.d.ts +0 -12
- package/dist/modules/comments/hooks/useCommentReplies.js +0 -36
- package/dist/modules/editor/components/BubbleMenuEditInformationPane/BubbleMenuEditInformationPane.d.ts +0 -6
- package/dist/modules/editor/components/BubbleMenuEditInformationPane/BubbleMenuEditInformationPane.js +0 -136
- package/dist/modules/editor/components/BubbleMenuEditInformationPane/index.d.ts +0 -1
- package/dist/modules/editor/components/NodeView/InformationPaneNodeView.d.ts +0 -2
- package/dist/modules/editor/components/NodeView/InformationPaneNodeView.js +0 -10
- package/dist/modules/editor/components/Renderer/InformationPaneRenderer.d.ts +0 -3
- package/dist/modules/editor/components/Renderer/InformationPaneRenderer.js +0 -33
- package/dist/modules/icons/components/IconInfoRectangle.d.ts +0 -7
- package/dist/modules/icons/components/IconInfoRectangle.js +0 -13
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
const DEFAULT_MAX_COMMENT_LENGTH = 200, DEFAULT_MAX_REPLY_LENGTH = 200, DEFAULT_MAX_COMMENTS = 4, DEFAULT_ADD_COMMENTS = 5, DEFAULT_MAX_REPLIES = 5
|
|
1
|
+
const DEFAULT_MAX_COMMENT_LENGTH = 200, DEFAULT_MAX_REPLY_LENGTH = 200, DEFAULT_MAX_COMMENTS = 4, DEFAULT_ADD_COMMENTS = 5, DEFAULT_MAX_REPLIES = 5;
|
|
2
2
|
export {
|
|
3
3
|
DEFAULT_ADD_COMMENTS,
|
|
4
|
-
DEFAULT_ADD_REPLIES,
|
|
5
4
|
DEFAULT_MAX_COMMENTS,
|
|
6
5
|
DEFAULT_MAX_COMMENT_LENGTH,
|
|
7
6
|
DEFAULT_MAX_REPLIES,
|
|
@@ -1,20 +1,18 @@
|
|
|
1
1
|
import { RightRole } from '@edifice.io/client';
|
|
2
2
|
import { CommentOptions, CommentProps, CommentType, UserProfileResult } from '../types';
|
|
3
3
|
export declare const CommentContext: import('react').Context<{
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
comments: CommentProps[] | undefined;
|
|
5
|
+
content: string;
|
|
6
6
|
editCommentId: string | null;
|
|
7
|
-
replyToCommentId: string | null;
|
|
8
7
|
profiles: (UserProfileResult | undefined)[];
|
|
9
8
|
options: Partial<CommentOptions>;
|
|
10
9
|
type: CommentType;
|
|
11
10
|
userRights?: Record<RightRole, boolean>;
|
|
12
11
|
setEditCommentId: (value: string | null) => void;
|
|
13
|
-
setReplyToCommentId: (value: string | null) => void;
|
|
14
12
|
handleModifyComment: (commentId: string) => void;
|
|
15
|
-
|
|
13
|
+
handleChangeContent: (event: React.ChangeEvent<HTMLTextAreaElement>) => void;
|
|
14
|
+
handleCreateComment: (content: string) => void;
|
|
16
15
|
handleUpdateComment: (comment: string) => void;
|
|
17
16
|
handleDeleteComment: (id: string) => void;
|
|
18
|
-
handleReplyToComment: (commentId: string) => void;
|
|
19
17
|
handleReset: () => void;
|
|
20
18
|
} | null>;
|
|
@@ -5,7 +5,6 @@ export declare const useComments: ({ defaultComments, options, type, callbacks,
|
|
|
5
5
|
type: CommentType;
|
|
6
6
|
callbacks: CommentCallbacks | null;
|
|
7
7
|
}) => {
|
|
8
|
-
t: import('i18next').TFunction<"translation", undefined>;
|
|
9
8
|
profilesQueries: {
|
|
10
9
|
data: ({
|
|
11
10
|
userId: string;
|
|
@@ -13,20 +12,21 @@ export declare const useComments: ({ defaultComments, options, type, callbacks,
|
|
|
13
12
|
} | undefined)[];
|
|
14
13
|
isLoading: boolean;
|
|
15
14
|
};
|
|
15
|
+
content: string;
|
|
16
16
|
title: string;
|
|
17
17
|
user: import('@edifice.io/client').IUserInfo | undefined;
|
|
18
18
|
emptyscreenPath: string;
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
defaultCommentsCount: number;
|
|
20
|
+
comments: CommentProps[];
|
|
21
21
|
editCommentId: string | null;
|
|
22
22
|
setEditCommentId: import('react').Dispatch<import('react').SetStateAction<string | null>>;
|
|
23
|
-
|
|
24
|
-
|
|
23
|
+
commentsCount: number;
|
|
24
|
+
t: import('i18next').TFunction<"translation", undefined>;
|
|
25
25
|
handleMoreComments: () => void;
|
|
26
|
+
handleChangeContent: (event: React.ChangeEvent<HTMLTextAreaElement>) => void;
|
|
26
27
|
handleDeleteComment: (id: string) => void;
|
|
27
|
-
handleCreateComment: (content: string
|
|
28
|
+
handleCreateComment: (content: string) => void;
|
|
28
29
|
handleModifyComment: (commentId: string) => void;
|
|
29
30
|
handleUpdateComment: (comment: string) => Promise<void>;
|
|
30
|
-
handleReplyToComment: (commentId: string) => void;
|
|
31
31
|
handleReset: () => void;
|
|
32
32
|
};
|
|
@@ -9,45 +9,43 @@ const useComments = ({
|
|
|
9
9
|
type,
|
|
10
10
|
callbacks
|
|
11
11
|
}) => {
|
|
12
|
-
|
|
13
|
-
const [editCommentId, setEditCommentId] = useState(null), [replyToCommentId, setReplyToCommentId] = useState(null), [commentLimit, setCommentLimit] = useState(options.maxComments), {
|
|
12
|
+
const [content, setContent] = useState(""), [editCommentId, setEditCommentId] = useState(null), [commentLimit, setCommentLimit] = useState(options.maxComments), {
|
|
14
13
|
t
|
|
15
14
|
} = useTranslation(), {
|
|
16
15
|
user
|
|
17
|
-
} = useEdificeClient(), usersIds = Array.from(new Set(defaultComments == null ? void 0 : defaultComments.map((comment) => comment.authorId))), profilesQueries = useProfileQueries(usersIds),
|
|
18
|
-
() =>
|
|
19
|
-
var _a2;
|
|
20
|
-
const result = ((_a2 = defaultComments == null ? void 0 : defaultComments.filter((comment) => !comment.replyTo && !idsOfDeletedCommentWithNoReply.includes(comment.id))) == null ? void 0 : _a2.sort((a, b) => b.createdAt - a.createdAt)) ?? [];
|
|
21
|
-
return type === "edit" ? result.slice(0, commentLimit) ?? [] : result;
|
|
22
|
-
},
|
|
16
|
+
} = useEdificeClient(), usersIds = Array.from(new Set(defaultComments == null ? void 0 : defaultComments.map((comment) => comment.authorId))), profilesQueries = useProfileQueries(usersIds), comments = useMemo(
|
|
17
|
+
() => type === "edit" ? (defaultComments == null ? void 0 : defaultComments.sort((a, b) => b.createdAt - a.createdAt).slice(0, commentLimit)) ?? [] : (defaultComments == null ? void 0 : defaultComments.sort((a, b) => b.createdAt - a.createdAt)) ?? [],
|
|
23
18
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
24
19
|
[commentLimit, defaultComments]
|
|
25
|
-
),
|
|
26
|
-
number:
|
|
20
|
+
), commentsCount = (comments == null ? void 0 : comments.length) ?? 0, defaultCommentsCount = (defaultComments == null ? void 0 : defaultComments.length) ?? 0, title = defaultCommentsCount && defaultCommentsCount > 1 ? t("comment.several", {
|
|
21
|
+
number: defaultCommentsCount
|
|
27
22
|
}) : t("comment.little", {
|
|
28
|
-
number:
|
|
23
|
+
number: defaultCommentsCount
|
|
29
24
|
});
|
|
30
25
|
return {
|
|
31
|
-
t,
|
|
32
26
|
profilesQueries,
|
|
27
|
+
content,
|
|
33
28
|
title,
|
|
34
29
|
user,
|
|
35
30
|
emptyscreenPath: illuPad,
|
|
36
|
-
|
|
37
|
-
|
|
31
|
+
defaultCommentsCount,
|
|
32
|
+
comments,
|
|
38
33
|
editCommentId,
|
|
39
34
|
setEditCommentId,
|
|
40
|
-
|
|
41
|
-
|
|
35
|
+
commentsCount,
|
|
36
|
+
t,
|
|
42
37
|
handleMoreComments: () => {
|
|
43
|
-
const newLimit =
|
|
44
|
-
newLimit !==
|
|
38
|
+
const newLimit = (comments == null ? void 0 : comments.length) + (options.additionalComments ?? 5);
|
|
39
|
+
newLimit !== comments.length && setCommentLimit(newLimit);
|
|
40
|
+
},
|
|
41
|
+
handleChangeContent: (event) => {
|
|
42
|
+
setContent(event.target.value);
|
|
45
43
|
},
|
|
46
44
|
handleDeleteComment: (id) => {
|
|
47
45
|
type === "edit" && (callbacks == null || callbacks.delete(id));
|
|
48
46
|
},
|
|
49
|
-
handleCreateComment: (
|
|
50
|
-
type === "edit" && (callbacks == null || callbacks.post(
|
|
47
|
+
handleCreateComment: (content2) => {
|
|
48
|
+
type === "edit" && (callbacks == null || callbacks.post(content2)), setContent("");
|
|
51
49
|
},
|
|
52
50
|
handleModifyComment: (commentId) => {
|
|
53
51
|
setEditCommentId(commentId);
|
|
@@ -58,11 +56,8 @@ const useComments = ({
|
|
|
58
56
|
commentId: editCommentId
|
|
59
57
|
})), setEditCommentId(null));
|
|
60
58
|
},
|
|
61
|
-
handleReplyToComment: (commentId) => {
|
|
62
|
-
setReplyToCommentId(commentId);
|
|
63
|
-
},
|
|
64
59
|
handleReset: () => {
|
|
65
|
-
editCommentId && setEditCommentId(null);
|
|
60
|
+
setContent(""), editCommentId && setEditCommentId(null);
|
|
66
61
|
}
|
|
67
62
|
};
|
|
68
63
|
};
|
|
@@ -1,18 +1,16 @@
|
|
|
1
1
|
export declare const useCommentsContext: () => {
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
comments: import('../types').CommentProps[] | undefined;
|
|
3
|
+
content: string;
|
|
4
4
|
editCommentId: string | null;
|
|
5
|
-
replyToCommentId: string | null;
|
|
6
5
|
profiles: (import('../types').UserProfileResult | undefined)[];
|
|
7
6
|
options: Partial<import('../types').CommentOptions>;
|
|
8
7
|
type: import('../types').CommentType;
|
|
9
8
|
userRights?: Record<import('@edifice.io/client').RightRole, boolean>;
|
|
10
9
|
setEditCommentId: (value: string | null) => void;
|
|
11
|
-
setReplyToCommentId: (value: string | null) => void;
|
|
12
10
|
handleModifyComment: (commentId: string) => void;
|
|
13
|
-
|
|
11
|
+
handleChangeContent: (event: React.ChangeEvent<HTMLTextAreaElement>) => void;
|
|
12
|
+
handleCreateComment: (content: string) => void;
|
|
14
13
|
handleUpdateComment: (comment: string) => void;
|
|
15
14
|
handleDeleteComment: (id: string) => void;
|
|
16
|
-
handleReplyToComment: (commentId: string) => void;
|
|
17
15
|
handleReset: () => void;
|
|
18
16
|
};
|
|
@@ -3,7 +3,7 @@ import { useMemo } from "react";
|
|
|
3
3
|
import { CommentForm } from "../components/CommentForm.js";
|
|
4
4
|
import { CommentHeader } from "../components/CommentHeader.js";
|
|
5
5
|
import { CommentList } from "../components/CommentList.js";
|
|
6
|
-
import {
|
|
6
|
+
import { DEFAULT_MAX_REPLIES, DEFAULT_ADD_COMMENTS, DEFAULT_MAX_COMMENTS, DEFAULT_MAX_REPLY_LENGTH, DEFAULT_MAX_COMMENT_LENGTH } from "../constants.js";
|
|
7
7
|
import { CommentContext } from "../context/Context.js";
|
|
8
8
|
import { useComments } from "../hooks/useComments.js";
|
|
9
9
|
import Button from "../../../components/Button/Button.js";
|
|
@@ -19,28 +19,27 @@ const CommentProvider = ({
|
|
|
19
19
|
maxComments: DEFAULT_MAX_COMMENTS,
|
|
20
20
|
additionalComments: DEFAULT_ADD_COMMENTS,
|
|
21
21
|
maxReplies: DEFAULT_MAX_REPLIES,
|
|
22
|
-
additionalReplies: DEFAULT_ADD_REPLIES,
|
|
23
22
|
...commentOptions
|
|
24
23
|
}, {
|
|
25
24
|
type
|
|
26
25
|
} = props, {
|
|
27
26
|
profilesQueries,
|
|
27
|
+
content,
|
|
28
28
|
title,
|
|
29
29
|
user,
|
|
30
30
|
emptyscreenPath,
|
|
31
|
-
|
|
32
|
-
|
|
31
|
+
defaultCommentsCount,
|
|
32
|
+
comments,
|
|
33
33
|
editCommentId,
|
|
34
34
|
setEditCommentId,
|
|
35
|
-
|
|
36
|
-
setReplyToCommentId,
|
|
35
|
+
commentsCount,
|
|
37
36
|
t,
|
|
38
37
|
handleMoreComments,
|
|
38
|
+
handleChangeContent,
|
|
39
39
|
handleDeleteComment,
|
|
40
40
|
handleCreateComment,
|
|
41
41
|
handleModifyComment,
|
|
42
42
|
handleUpdateComment,
|
|
43
|
-
handleReplyToComment,
|
|
44
43
|
handleReset
|
|
45
44
|
} = useComments({
|
|
46
45
|
type,
|
|
@@ -49,25 +48,23 @@ const CommentProvider = ({
|
|
|
49
48
|
options
|
|
50
49
|
}), userRights = type === "edit" ? props.rights : void 0, values = useMemo(
|
|
51
50
|
() => ({
|
|
52
|
-
|
|
53
|
-
|
|
51
|
+
comments,
|
|
52
|
+
content,
|
|
54
53
|
profiles: profilesQueries.data,
|
|
55
54
|
editCommentId,
|
|
56
|
-
replyToCommentId,
|
|
57
55
|
options,
|
|
58
56
|
type,
|
|
59
57
|
userRights,
|
|
60
58
|
setEditCommentId,
|
|
61
|
-
setReplyToCommentId,
|
|
62
59
|
handleCreateComment,
|
|
63
60
|
handleModifyComment,
|
|
64
61
|
handleUpdateComment,
|
|
65
62
|
handleDeleteComment,
|
|
66
|
-
|
|
67
|
-
|
|
63
|
+
handleReset,
|
|
64
|
+
handleChangeContent
|
|
68
65
|
}),
|
|
69
66
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
70
|
-
[
|
|
67
|
+
[comments, content, editCommentId, profilesQueries, options]
|
|
71
68
|
);
|
|
72
69
|
return /* @__PURE__ */ jsx(CommentContext.Provider, { value: values, children: /* @__PURE__ */ jsxs("div", { className: "my-24", children: [
|
|
73
70
|
/* @__PURE__ */ jsx(CommentHeader, { title }),
|
|
@@ -75,10 +72,10 @@ const CommentProvider = ({
|
|
|
75
72
|
user && /* @__PURE__ */ jsx(CommentForm, { userId: user.userId }),
|
|
76
73
|
profilesQueries.isLoading ? null : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
77
74
|
/* @__PURE__ */ jsx(CommentList, {}),
|
|
78
|
-
|
|
75
|
+
commentsCount !== defaultCommentsCount && /* @__PURE__ */ jsx(Button, { variant: "ghost", color: "tertiary", onClick: handleMoreComments, className: "my-16", children: t("comment.more") })
|
|
79
76
|
] })
|
|
80
77
|
] }),
|
|
81
|
-
!
|
|
78
|
+
!commentsCount && type === "edit" && /* @__PURE__ */ jsxs("div", { className: "comments-emptyscreen", children: [
|
|
82
79
|
/* @__PURE__ */ jsx("div", { className: "comments-emptyscreen-wrapper", children: /* @__PURE__ */ jsx(EmptyScreen, { imageSrc: emptyscreenPath, size: 150 }) }),
|
|
83
80
|
/* @__PURE__ */ jsx("p", { children: t("comment.emptyscreen") })
|
|
84
81
|
] })
|
|
@@ -24,22 +24,13 @@ export interface CommentProps {
|
|
|
24
24
|
* Date when comment was updated
|
|
25
25
|
*/
|
|
26
26
|
updatedAt?: number;
|
|
27
|
-
/**
|
|
28
|
-
* The comment parent ID.
|
|
29
|
-
*/
|
|
30
|
-
replyTo?: string;
|
|
31
|
-
/**
|
|
32
|
-
* If the comment is deleted.
|
|
33
|
-
*/
|
|
34
|
-
deleted?: boolean;
|
|
35
27
|
}
|
|
36
28
|
export interface CommentCallbacks {
|
|
37
29
|
/**
|
|
38
30
|
* Method to create a new comment
|
|
39
31
|
* Get the new comment in the callback function
|
|
40
|
-
* If replyTo is provided, it is a reply to a comment
|
|
41
32
|
*/
|
|
42
|
-
post: (comment: string
|
|
33
|
+
post: (comment: string) => Promise<void>;
|
|
43
34
|
/**
|
|
44
35
|
* Method to update a comment
|
|
45
36
|
* Get the comment and commentId in the callback function
|
|
@@ -100,10 +91,6 @@ export type CommentOptions = {
|
|
|
100
91
|
* Limit on displaying replies to a comment
|
|
101
92
|
*/
|
|
102
93
|
maxReplies: number;
|
|
103
|
-
/**
|
|
104
|
-
* Number of replies to load additionally in the limited list
|
|
105
|
-
*/
|
|
106
|
-
additionalReplies: number;
|
|
107
94
|
};
|
|
108
95
|
export interface UserProfileResult {
|
|
109
96
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { WorkspaceVisibility } from '@edifice.io/client';
|
|
2
|
-
import { Content, FocusPosition, JSONContent } from '@tiptap/react';
|
|
2
|
+
import { Content, Extensions, FocusPosition, JSONContent } from '@tiptap/react';
|
|
3
3
|
export interface EditorRef {
|
|
4
4
|
/** Get the current content. */
|
|
5
5
|
getContent: (as: 'html' | 'json' | 'plain') => undefined | string | JSONContent;
|
|
@@ -40,6 +40,8 @@ export interface EditorProps {
|
|
|
40
40
|
onContentChange?: ({ editor }: {
|
|
41
41
|
editor: any;
|
|
42
42
|
}) => void;
|
|
43
|
+
/** Extensions to add to the editor */
|
|
44
|
+
extensions?: Extensions;
|
|
43
45
|
}
|
|
44
46
|
declare const Editor: import('react').ForwardRefExoticComponent<EditorProps & import('react').RefAttributes<EditorRef>>;
|
|
45
47
|
export default Editor;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jsxs, jsx
|
|
1
|
+
import { jsxs, jsx } from "react/jsx-runtime";
|
|
2
2
|
import { forwardRef, useId, useImperativeHandle, Suspense, lazy } from "react";
|
|
3
3
|
import { EditorContent } from "@tiptap/react";
|
|
4
4
|
import clsx from "clsx";
|
|
@@ -16,7 +16,6 @@ import { EditorToolbar } from "../EditorToolbar/EditorToolbar.js";
|
|
|
16
16
|
import LinkToolbar from "../Toolbar/LinkToolbar.js";
|
|
17
17
|
import TableToolbar from "../Toolbar/TableToolbar.js";
|
|
18
18
|
import BubbleMenuEditImage from "../BubbleMenuEditImage/BubbleMenuEditImage.js";
|
|
19
|
-
import BubbleMenuEditInformationPane from "../BubbleMenuEditInformationPane/BubbleMenuEditInformationPane.js";
|
|
20
19
|
import MediaLibrary from "../../../multimedia/MediaLibrary/MediaLibrary.js";
|
|
21
20
|
import LoadingScreen from "../../../../components/LoadingScreen/LoadingScreen.js";
|
|
22
21
|
const MathsModal = /* @__PURE__ */ lazy(async () => await import("../MathsModal/MathsModal.js")), ImageEditor = /* @__PURE__ */ lazy(async () => await import("../../../multimedia/ImageEditor/components/ImageEditor.js")), Editor = /* @__PURE__ */ forwardRef(({
|
|
@@ -28,14 +27,15 @@ const MathsModal = /* @__PURE__ */ lazy(async () => await import("../MathsModal/
|
|
|
28
27
|
focus = "start",
|
|
29
28
|
placeholder = "",
|
|
30
29
|
visibility = "protected",
|
|
31
|
-
onContentChange
|
|
30
|
+
onContentChange,
|
|
31
|
+
extensions
|
|
32
32
|
}, ref) => {
|
|
33
33
|
const editorId = useId(), {
|
|
34
34
|
appCode
|
|
35
35
|
} = useEdificeClient(), {
|
|
36
36
|
editor,
|
|
37
37
|
editable
|
|
38
|
-
} = useTipTapEditor(mode === "edit", content, focus, placeholder, onContentChange, visibility), {
|
|
38
|
+
} = useTipTapEditor(mode === "edit", content, focus, placeholder, onContentChange, visibility, extensions), {
|
|
39
39
|
ref: mediaLibraryModalRef,
|
|
40
40
|
...mediaLibraryModalHandlers
|
|
41
41
|
} = useMediaLibraryEditor(editor), {
|
|
@@ -71,10 +71,7 @@ const MathsModal = /* @__PURE__ */ lazy(async () => await import("../MathsModal/
|
|
|
71
71
|
] }),
|
|
72
72
|
/* @__PURE__ */ jsx(LinkToolbar, { editor, ...linkToolbarHandlers }),
|
|
73
73
|
/* @__PURE__ */ jsx(TableToolbar, { editor }),
|
|
74
|
-
editor && /* @__PURE__ */
|
|
75
|
-
/* @__PURE__ */ jsx(BubbleMenuEditImage, { editor, onEditImage: imageModal.handleEdit, openEditImage: imageModal.isOpen, editable }),
|
|
76
|
-
/* @__PURE__ */ jsx(BubbleMenuEditInformationPane, { editor, editable })
|
|
77
|
-
] }),
|
|
74
|
+
editor && /* @__PURE__ */ jsx(BubbleMenuEditImage, { editor, onEditImage: imageModal.handleEdit, openEditImage: imageModal.isOpen, editable }),
|
|
78
75
|
/* @__PURE__ */ jsxs(Suspense, { fallback: /* @__PURE__ */ jsx(LoadingScreen, {}), children: [
|
|
79
76
|
editable && /* @__PURE__ */ jsx(MediaLibrary, { appCode, visibility, multiple: !0, ref: mediaLibraryModalRef, ...mediaLibraryModalHandlers }),
|
|
80
77
|
editable && mathsModalHandlers.isOpen && /* @__PURE__ */ jsx(MathsModal, { ...mathsModalHandlers }),
|
|
@@ -5,7 +5,6 @@ import "@tiptap/react";
|
|
|
5
5
|
import "@tiptap/starter-kit";
|
|
6
6
|
import SvgIconAlignLeft from "../../../icons/components/IconAlignLeft.js";
|
|
7
7
|
import SvgIconBulletList from "../../../icons/components/IconBulletList.js";
|
|
8
|
-
import SvgIconInfoRectangle from "../../../icons/components/IconInfoRectangle.js";
|
|
9
8
|
import SvgIconLandscape from "../../../icons/components/IconLandscape.js";
|
|
10
9
|
import SvgIconLink from "../../../icons/components/IconLink.js";
|
|
11
10
|
import SvgIconMic from "../../../icons/components/IconMic.js";
|
|
@@ -214,17 +213,6 @@ const EditorToolbar = ({
|
|
|
214
213
|
visibility: showIf(hasMark("customHighlight", editor)),
|
|
215
214
|
tooltip: t("tiptap.toolbar.highlight.back")
|
|
216
215
|
},
|
|
217
|
-
//--------------- INFORMATION PANE ---------------//
|
|
218
|
-
{
|
|
219
|
-
type: "icon",
|
|
220
|
-
props: {
|
|
221
|
-
icon: /* @__PURE__ */ jsx(SvgIconInfoRectangle, {}),
|
|
222
|
-
"aria-label": t("tiptap.toolbar.information.pane"),
|
|
223
|
-
onClick: () => editor == null ? void 0 : editor.chain().focus().setInformationPane("info").run()
|
|
224
|
-
},
|
|
225
|
-
name: "information-pane",
|
|
226
|
-
tooltip: t("tiptap.toolbar.information.pane")
|
|
227
|
-
},
|
|
228
216
|
//-------------------------------------//
|
|
229
217
|
{
|
|
230
218
|
type: "divider",
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ConversationHistory } from "@edifice.io/tiptap-extensions/conversation-history";
|
|
2
|
+
import { ReactNodeViewRenderer } from "@tiptap/react";
|
|
3
|
+
const ConversationHistoryNodeView = (Component) => ConversationHistory.extend({
|
|
4
|
+
addNodeView() {
|
|
5
|
+
return ReactNodeViewRenderer(Component);
|
|
6
|
+
}
|
|
7
|
+
});
|
|
8
|
+
export {
|
|
9
|
+
ConversationHistoryNodeView as default
|
|
10
|
+
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { default as AudioNodeView } from './AudioNodeView';
|
|
2
1
|
export { default as AttachmentNodeView } from './AttachmentNodeView';
|
|
2
|
+
export { default as AudioNodeView } from './AudioNodeView';
|
|
3
|
+
export { default as ConversationHistoryNodeView } from './ConversationHistoryNodeView';
|
|
3
4
|
export { default as ImageNodeView } from './ImageNodeView';
|
|
4
5
|
export { default as LinkerNodeView } from './LinkerNodeView';
|
|
5
6
|
export { default as VideoNodeView } from './VideoNodeView';
|
|
6
|
-
export { default as InformationPaneNodeView } from './InformationPaneNodeView';
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `ConversationHistoryRenderer` is a React component that renders a button to toggle the visibility
|
|
3
|
+
* of conversation history content. It uses the `@tiptap/react` library for rendering content and
|
|
4
|
+
* `clsx` for conditional class names. The component also utilizes the `useTranslation` hook from
|
|
5
|
+
* `react-i18next` for internationalization and a custom `useToggle` hook for managing the open state.
|
|
6
|
+
*/
|
|
7
|
+
declare const ConversationHistoryRenderer: () => import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export default ConversationHistoryRenderer;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { jsxs, jsx, Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { NodeViewWrapper, NodeViewContent } from "@tiptap/react";
|
|
3
|
+
import clsx from "clsx";
|
|
4
|
+
import { useTranslation } from "react-i18next";
|
|
5
|
+
import SvgIconRafterDown from "../../../icons/components/IconRafterDown.js";
|
|
6
|
+
import SvgIconRafterUp from "../../../icons/components/IconRafterUp.js";
|
|
7
|
+
import useToggle from "../../../../hooks/useToggle/useToggle.js";
|
|
8
|
+
import Button from "../../../../components/Button/Button.js";
|
|
9
|
+
const ConversationHistoryRenderer = () => {
|
|
10
|
+
const {
|
|
11
|
+
t
|
|
12
|
+
} = useTranslation("conversation"), [open, toggleOpen] = useToggle(!1), classes = clsx("conversation-history ps-16", {
|
|
13
|
+
show: open
|
|
14
|
+
});
|
|
15
|
+
return /* @__PURE__ */ jsxs(NodeViewWrapper, { as: "div", contentEditable: !1, children: [
|
|
16
|
+
/* @__PURE__ */ jsx(Button, { variant: "ghost", onClick: toggleOpen, size: "sm", className: "d-flex align-items-center gap-4 text-gray-800 fs-6 mt-24", children: open ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
17
|
+
t("message.history.hide"),
|
|
18
|
+
/* @__PURE__ */ jsx(SvgIconRafterUp, { width: 16, height: 16 })
|
|
19
|
+
] }) : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
20
|
+
t("message.history.show"),
|
|
21
|
+
/* @__PURE__ */ jsx(SvgIconRafterDown, { width: 16, height: 16 })
|
|
22
|
+
] }) }),
|
|
23
|
+
/* @__PURE__ */ jsx("div", { className: classes, "data-testid": "conversation-history-content", children: /* @__PURE__ */ jsx(NodeViewContent, {}) })
|
|
24
|
+
] });
|
|
25
|
+
};
|
|
26
|
+
export {
|
|
27
|
+
ConversationHistoryRenderer as default
|
|
28
|
+
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { default as AudioRenderer } from './AudioRenderer';
|
|
2
1
|
export { default as AttachmentRenderer } from './AttachmentRenderer';
|
|
2
|
+
export { default as AudioRenderer } from './AudioRenderer';
|
|
3
|
+
export { default as ConversationHistoryRenderer } from './ConversationHistoryRenderer';
|
|
3
4
|
export { default as LinkerRenderer } from './LinkerRenderer';
|
|
4
5
|
export { default as MediaRenderer } from './MediaRenderer';
|
|
5
|
-
export { default as InformationPaneRenderer } from './InformationPaneRenderer';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Content, FocusPosition } from '@tiptap/react';
|
|
1
|
+
import { Content, Extensions, FocusPosition } from '@tiptap/react';
|
|
2
2
|
import { WorkspaceVisibility } from '@edifice.io/client';
|
|
3
3
|
/**
|
|
4
4
|
* Hook that creates a tiptap editor instance.
|
|
@@ -7,10 +7,14 @@ import { WorkspaceVisibility } from '@edifice.io/client';
|
|
|
7
7
|
* @param content default rich content
|
|
8
8
|
* @param focus set focus position to the editor
|
|
9
9
|
* @param placeholder editor placeholder content
|
|
10
|
+
* @param onContentChange callback to be called on content change
|
|
11
|
+
* @param visibility workspace visibility
|
|
12
|
+
* @param extensions extensions to add to the editor
|
|
13
|
+
* @returns the editor instance and the editable state
|
|
10
14
|
*/
|
|
11
15
|
export declare const useTipTapEditor: (editable: boolean, content: Content, focus?: FocusPosition, placeholder?: string, onContentChange?: ({ editor }: {
|
|
12
16
|
editor: any;
|
|
13
|
-
}) => void, visibility?: WorkspaceVisibility) => {
|
|
17
|
+
}) => void, visibility?: WorkspaceVisibility, extensions?: Extensions) => {
|
|
14
18
|
editor: import('@tiptap/core').Editor | null;
|
|
15
19
|
editable: boolean;
|
|
16
20
|
};
|
|
@@ -32,13 +32,11 @@ import AudioNodeView from "../components/NodeView/AudioNodeView.js";
|
|
|
32
32
|
import LinkerNodeView from "../components/NodeView/LinkerNodeView.js";
|
|
33
33
|
import ImageNodeView from "../components/NodeView/ImageNodeView.js";
|
|
34
34
|
import AttachmentNodeView from "../components/NodeView/AttachmentNodeView.js";
|
|
35
|
-
import InformationPaneNodeView from "../components/NodeView/InformationPaneNodeView.js";
|
|
36
35
|
import MediaRenderer from "../components/Renderer/MediaRenderer.js";
|
|
37
36
|
import AudioRenderer from "../components/Renderer/AudioRenderer.js";
|
|
38
37
|
import LinkerRenderer from "../components/Renderer/LinkerRenderer.js";
|
|
39
38
|
import AttachmentRenderer from "../components/Renderer/AttachmentRenderer.js";
|
|
40
|
-
|
|
41
|
-
const useTipTapEditor = (editable, content, focus, placeholder, onContentChange, visibility = "protected") => {
|
|
39
|
+
const useTipTapEditor = (editable, content, focus, placeholder, onContentChange, visibility = "protected", extensions) => {
|
|
42
40
|
const {
|
|
43
41
|
currentLanguage
|
|
44
42
|
} = useEdificeClient(), {
|
|
@@ -65,7 +63,7 @@ const useTipTapEditor = (editable, content, focus, placeholder, onContentChange,
|
|
|
65
63
|
levels: [1, 2]
|
|
66
64
|
}), Typography, FontSize, SpeechRecognition, SpeechSynthesis.configure({
|
|
67
65
|
lang: (currentLanguage == null ? void 0 : currentLanguage.length) === 2 ? `${currentLanguage}-${currentLanguage.toUpperCase()}` : "fr-FR"
|
|
68
|
-
}), Iframe, Hyperlink, FontFamily, Mathematics, Alert, VideoNodeView(MediaRenderer), AudioNodeView(AudioRenderer), LinkerNodeView(LinkerRenderer), ImageNodeView(MediaRenderer, uploadFile), AttachmentNodeView(AttachmentRenderer),
|
|
66
|
+
}), Iframe, Hyperlink, FontFamily, Mathematics, Alert, VideoNodeView(MediaRenderer), AudioNodeView(AudioRenderer), LinkerNodeView(LinkerRenderer), ImageNodeView(MediaRenderer, uploadFile), AttachmentNodeView(AttachmentRenderer), ...extensions || []],
|
|
69
67
|
content,
|
|
70
68
|
// If the onContentChange callback is provided, we call it on every content change.
|
|
71
69
|
...onContentChange ? {
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { SVGProps } from 'react';
|
|
2
|
+
interface SVGRProps {
|
|
3
|
+
title?: string;
|
|
4
|
+
titleId?: string;
|
|
5
|
+
}
|
|
6
|
+
declare const SvgIconFolderAdd: ({ title, titleId, ...props }: SVGProps<SVGSVGElement> & SVGRProps) => import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export default SvgIconFolderAdd;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { jsxs, jsx } from "react/jsx-runtime";
|
|
2
|
+
const SvgIconFolderAdd = ({
|
|
3
|
+
title,
|
|
4
|
+
titleId,
|
|
5
|
+
...props
|
|
6
|
+
}) => /* @__PURE__ */ jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", fill: "none", viewBox: "0 0 24 24", "aria-hidden": "true", "aria-labelledby": titleId, ...props, children: [
|
|
7
|
+
title ? /* @__PURE__ */ jsx("title", { id: titleId, children: title }) : null,
|
|
8
|
+
/* @__PURE__ */ jsx("g", { clipPath: "url(#icon-folder-add_svg__a)", children: /* @__PURE__ */ jsx("path", { fill: "currentColor", fillRule: "evenodd", d: "M10.985 5.283A2 2 0 0 0 12.965 7H22v12H2V4h7.5a1.5 1.5 0 0 1 1.485 1.283M1.902 2C.852 2 0 2.852 0 3.902V19a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-9.035A3.5 3.5 0 0 0 9.5 2zM12 8a1 1 0 0 1 1 1v3h3a1 1 0 1 1 0 2h-3v3a1 1 0 1 1-2 0v-3H8a1 1 0 1 1 0-2h3V9a1 1 0 0 1 1-1", clipRule: "evenodd" }) }),
|
|
9
|
+
/* @__PURE__ */ jsx("defs", { children: /* @__PURE__ */ jsx("clipPath", { id: "icon-folder-add_svg__a", children: /* @__PURE__ */ jsx("path", { fill: "#fff", d: "M0 0h24v24H0z" }) }) })
|
|
10
|
+
] });
|
|
11
|
+
export {
|
|
12
|
+
SvgIconFolderAdd as default
|
|
13
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { SVGProps } from 'react';
|
|
2
|
+
interface SVGRProps {
|
|
3
|
+
title?: string;
|
|
4
|
+
titleId?: string;
|
|
5
|
+
}
|
|
6
|
+
declare const SvgIconFolderDelete: ({ title, titleId, ...props }: SVGProps<SVGSVGElement> & SVGRProps) => import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export default SvgIconFolderDelete;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { jsxs, jsx } from "react/jsx-runtime";
|
|
2
|
+
const SvgIconFolderDelete = ({
|
|
3
|
+
title,
|
|
4
|
+
titleId,
|
|
5
|
+
...props
|
|
6
|
+
}) => /* @__PURE__ */ jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", fill: "none", viewBox: "0 0 24 24", "aria-hidden": "true", "aria-labelledby": titleId, ...props, children: [
|
|
7
|
+
title ? /* @__PURE__ */ jsx("title", { id: titleId, children: title }) : null,
|
|
8
|
+
/* @__PURE__ */ jsx("path", { fill: "currentColor", fillRule: "evenodd", d: "M2.756 2A2.756 2.756 0 0 0 0 4.756V18a3 3 0 0 0 3 3h6.5a1 1 0 1 0 0-2H3a1 1 0 0 1-1-1V4.756C2 4.34 2.339 4 2.756 4H9.5A2.5 2.5 0 0 1 12 6.5a1 1 0 0 0 1 1h8a1 1 0 0 1 1 1 1 1 0 1 0 2 0 3 3 0 0 0-3-3h-7.111A4.5 4.5 0 0 0 9.5 2zm20.85 9.536a1 1 0 0 1 0 1.414l-3.535 3.535 3.536 3.536a1 1 0 0 1-1.415 1.414L18.657 17.9l-3.536 3.535a1 1 0 0 1-1.414-1.414l3.536-3.536-3.536-3.535a1 1 0 0 1 1.414-1.414l3.536 3.535 3.535-3.535a1 1 0 0 1 1.415 0", clipRule: "evenodd" })
|
|
9
|
+
] });
|
|
10
|
+
export {
|
|
11
|
+
SvgIconFolderDelete as default
|
|
12
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { SVGProps } from 'react';
|
|
2
|
+
interface SVGRProps {
|
|
3
|
+
title?: string;
|
|
4
|
+
titleId?: string;
|
|
5
|
+
}
|
|
6
|
+
declare const SvgIconGlobe2: ({ title, titleId, ...props }: SVGProps<SVGSVGElement> & SVGRProps) => import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export default SvgIconGlobe2;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { jsxs, jsx } from "react/jsx-runtime";
|
|
2
|
+
const SvgIconGlobe2 = ({
|
|
3
|
+
title,
|
|
4
|
+
titleId,
|
|
5
|
+
...props
|
|
6
|
+
}) => /* @__PURE__ */ jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", fill: "none", viewBox: "0 0 24 24", "aria-hidden": "true", "aria-labelledby": titleId, ...props, children: [
|
|
7
|
+
title ? /* @__PURE__ */ jsx("title", { id: titleId, children: title }) : null,
|
|
8
|
+
/* @__PURE__ */ jsxs("g", { fill: "currentColor", fillRule: "evenodd", clipPath: "url(#icon-globe-2_svg__a)", clipRule: "evenodd", children: [
|
|
9
|
+
/* @__PURE__ */ jsx("path", { d: "M12 22c5.523 0 10-4.477 10-10S17.523 2 12 2 2 6.477 2 12s4.477 10 10 10m0 2c6.627 0 12-5.373 12-12S18.627 0 12 0C5.372 0 0 5.373 0 12s5.372 12 12 12" }),
|
|
10
|
+
/* @__PURE__ */ jsx("path", { d: "M16.944 2.761V2.76a.67.67 0 0 0 .09-.683l-.416.182-.057.129-.078.611a.63.63 0 0 0 .46-.238m-.571.224-.065-.025.096-.216zm.01.003.03-.267.146-.328-.08.606h-.052zm.235-.73.416-.18a7.3 7.3 0 0 1 .504 1.754c.047.324.07.701.007 1.064-.061.355-.234.847-.714 1.16l-.09.059-1.215.464a1.26 1.26 0 0 0-.82 1.012l-.002.008-.009.069c-.136.95-1.001 1.151-1.134 1.177-.414.082-1.113.007-1.519-.64l-.006-.011-.224-.377c-.35.728-.718 1.572-.809 2.32v.002a.44.44 0 0 0 .041.247l.023.043.478 1.161c.097.17.245.324.437.44.36.218 1.13.713 1.654 1.323.04.047.264.221.9.398.633.177 1.133.73 1.181 1.432.058.849.193 1.37.335 1.649a.6.6 0 0 0 .103.157l.033.001.05.007.02.001.056.002c.14 0 .375-.03.603-.19.318-.223.634-.703.755-1.68v-.001c.051-.404.12-.913.239-1.429l.064-.34a297 297 0 0 1 .31-1.625l.084-.403.015-.058a1.012 1.012 0 0 1 1.04-.758c.26.015.443.128.488.156h.001c.124.077.216.17.249.203.09.091.183.203.25.287.075.092.145.184.196.251l.062.084.018.024.005.007.002.003-.384.28.384-.28.013.018.012.018a.34.34 0 0 0 .221.138.39.39 0 0 0 .292-.06l1.04-.745a.66.66 0 0 0-.273.536h2c0 .443-.219.843-.562 1.09m0 0-1.04.744a2.38 2.38 0 0 1-2.411.21l-.047.248-.067.359-.004.022-.005.022c-.097.416-.157.848-.207 1.246-.159 1.279-.633 2.398-1.592 3.071a3.06 3.06 0 0 1-2.032.538c-.847-.043-1.428-.586-1.764-1.248-.29-.571-.449-1.306-.525-2.136-.634-.2-1.235-.49-1.626-.946-.3-.35-.829-.707-1.17-.913a3.23 3.23 0 0 1-1.193-1.259l-.021-.04-.483-1.171a2.44 2.44 0 0 1-.233-1.378l.993.122-.993-.121c.15-1.234.775-2.507 1.135-3.242l.025-.05a1.79 1.79 0 0 1 1.527-.994h.008c.516-.02 1.031.175 1.396.56a3.3 3.3 0 0 1 1.703-1.46l.771-.294q0-.115-.024-.301a5.3 5.3 0 0 0-.358-1.236c-.2-.459-.126-.985.183-1.37l.78.626-.78-.625v-.002c.31-.385.786-.551 1.232-.498h.01l.115.016q.192.024.376.105l-.499 1.128m3.692 9.553-.096.07zM6.045 14.091a1.84 1.84 0 0 1 1.507.163c.575.348.805.94.805 1.502v.747c0 .338.081.546.191.694.116.156.329.33.73.48l1.751.655c.534.2 1.02.485 1.443.854l.344.3c1.015.887 1.445 2.241 1.024 3.528l-.098.298-1.9-.624.097-.296c.152-.464.021-.998-.439-1.4l-.344-.3a2.7 2.7 0 0 0-.827-.486l-1.75-.655c-.656-.245-1.23-.615-1.635-1.16-.411-.552-.587-1.201-.587-1.888v-.382l-3.93 1.605-.755-1.852 4.338-1.772zM8.876 2.991c.084.494.124.996.124 1.32m0 .84v-.84zm0 0c0 .847-.41 1.658-1.001 2.268L6.196 9.276a.82.82 0 0 0-.187.831 1.825 1.825 0 0 1-1.017 2.245L1.4 13.917l-.798-1.834 3.462-1.508a2.82 2.82 0 0 1 .698-2.692l1.803-1.857C6.885 5.695 7 5.36 7 5.15v-.84c0-.196-.028-.584-.096-.982-.074-.436-.169-.708-.222-.791L8.37 1.463c.286.45.429 1.072.507 1.528m-4.77 7.733" })
|
|
11
|
+
] }),
|
|
12
|
+
/* @__PURE__ */ jsx("defs", { children: /* @__PURE__ */ jsx("clipPath", { id: "icon-globe-2_svg__a", children: /* @__PURE__ */ jsx("path", { fill: "#fff", d: "M0 0h24v24H0z" }) }) })
|
|
13
|
+
] });
|
|
14
|
+
export {
|
|
15
|
+
SvgIconGlobe2 as default
|
|
16
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { SVGProps } from 'react';
|
|
2
|
+
interface SVGRProps {
|
|
3
|
+
title?: string;
|
|
4
|
+
titleId?: string;
|
|
5
|
+
}
|
|
6
|
+
declare const SvgIconGroupAvatar: ({ title, titleId, ...props }: SVGProps<SVGSVGElement> & SVGRProps) => import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export default SvgIconGroupAvatar;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { jsxs, jsx } from "react/jsx-runtime";
|
|
2
|
+
const SvgIconGroupAvatar = ({
|
|
3
|
+
title,
|
|
4
|
+
titleId,
|
|
5
|
+
...props
|
|
6
|
+
}) => /* @__PURE__ */ jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", fill: "none", viewBox: "0 0 24 24", "aria-hidden": "true", "aria-labelledby": titleId, ...props, children: [
|
|
7
|
+
title ? /* @__PURE__ */ jsx("title", { id: titleId, children: title }) : null,
|
|
8
|
+
/* @__PURE__ */ jsx("path", { fill: "currentColor", fillRule: "evenodd", d: "M18.467 13.128a.917.917 0 0 1 1.166-.566c1.034.358 1.89 1.143 2.475 2.155.586 1.014.891 2.233.892 3.467v2.458a.917.917 0 0 1-1.833 0v-2.457c0-.944-.236-1.842-.646-2.55-.41-.709-.948-1.154-1.488-1.34a.917.917 0 0 1-.566-1.167M14.921 2.661a.917.917 0 0 1 .95-.882 4.702 4.702 0 0 1 1.934 8.902.917.917 0 0 1-.822-1.64 2.868 2.868 0 0 0-1.18-5.43.917.917 0 0 1-.882-.95M2.38 15.778c.894-.982 2.127-1.552 3.432-1.552h7.792c1.306 0 2.538.57 3.433 1.552.892.98 1.38 2.29 1.38 3.642v2.14a.917.917 0 1 1-1.834 0v-2.14c0-.917-.332-1.782-.902-2.407-.567-.623-1.316-.954-2.077-.954H5.812c-.76 0-1.51.331-2.077.954-.569.625-.902 1.49-.902 2.407v2.14a.917.917 0 1 1-1.833 0v-2.14c0-1.351.488-2.663 1.38-3.642M9.708 4.142a3.208 3.208 0 1 0 0 6.417 3.208 3.208 0 0 0 0-6.417M4.667 7.351a5.042 5.042 0 1 1 10.083 0 5.042 5.042 0 0 1-10.083 0", clipRule: "evenodd" })
|
|
9
|
+
] });
|
|
10
|
+
export {
|
|
11
|
+
SvgIconGroupAvatar as default
|
|
12
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { SVGProps } from 'react';
|
|
2
|
+
interface SVGRProps {
|
|
3
|
+
title?: string;
|
|
4
|
+
titleId?: string;
|
|
5
|
+
}
|
|
6
|
+
declare const SvgIconMailRecall: ({ title, titleId, ...props }: SVGProps<SVGSVGElement> & SVGRProps) => import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export default SvgIconMailRecall;
|