@edifice.io/react 2.2.2-develop.20250409145633 → 2.2.3-develop-b2school.20250414171310

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/dist/components/Combobox/Combobox.d.ts +55 -5
  2. package/dist/components/Combobox/Combobox.js +13 -7
  3. package/dist/components/Combobox/ComboboxTrigger.d.ts +30 -2
  4. package/dist/components/Combobox/ComboboxTrigger.js +27 -8
  5. package/dist/components/Dropdown/Dropdown.d.ts +9 -1
  6. package/dist/components/Dropdown/Dropdown.js +5 -3
  7. package/dist/components/Dropdown/DropdownItem.js +3 -1
  8. package/dist/components/Dropdown/DropdownTrigger.js +4 -1
  9. package/dist/components/List/List.d.ts +9 -1
  10. package/dist/components/List/List.js +9 -9
  11. package/dist/components/SearchBar/SearchBar.d.ts +1 -1
  12. package/dist/components/SearchBar/SearchBar.js +3 -1
  13. package/dist/editor.js +28 -24
  14. package/dist/hooks/index.d.ts +1 -0
  15. package/dist/hooks/useCheckable/useCheckable.js +10 -3
  16. package/dist/hooks/useConversation/useConversation.d.ts +1 -1
  17. package/dist/hooks/useConversation/useConversation.js +13 -17
  18. package/dist/hooks/useDropdown/useDropdown.d.ts +2 -1
  19. package/dist/hooks/useDropdown/useDropdown.js +5 -3
  20. package/dist/hooks/useWorkspaceFolders/index.d.ts +2 -0
  21. package/dist/hooks/useWorkspaceFolders/useWorkspaceFolders.d.ts +28 -0
  22. package/dist/hooks/useWorkspaceFolders/useWorkspaceFolders.js +74 -0
  23. package/dist/icons.js +232 -212
  24. package/dist/index.d.ts +1 -0
  25. package/dist/index.js +48 -20
  26. package/dist/modals.js +16 -14
  27. package/dist/modules/editor/components/Editor/Editor.d.ts +3 -1
  28. package/dist/modules/editor/components/Editor/Editor.js +2 -1
  29. package/dist/modules/editor/components/NodeView/ConversationHistoryNodeView.d.ts +2 -0
  30. package/dist/modules/editor/components/NodeView/ConversationHistoryNodeView.js +10 -0
  31. package/dist/modules/editor/components/NodeView/index.d.ts +2 -1
  32. package/dist/modules/editor/components/Renderer/ConversationHistoryRenderer.d.ts +8 -0
  33. package/dist/modules/editor/components/Renderer/ConversationHistoryRenderer.js +28 -0
  34. package/dist/modules/editor/components/Renderer/index.d.ts +2 -1
  35. package/dist/modules/editor/hooks/useTipTapEditor.d.ts +6 -2
  36. package/dist/modules/editor/hooks/useTipTapEditor.js +1 -1
  37. package/dist/modules/icons/components/IconFolderAdd.d.ts +7 -0
  38. package/dist/modules/icons/components/IconFolderAdd.js +13 -0
  39. package/dist/modules/icons/components/IconFolderDelete.d.ts +7 -0
  40. package/dist/modules/icons/components/IconFolderDelete.js +12 -0
  41. package/dist/modules/icons/components/IconGlobe2.d.ts +7 -0
  42. package/dist/modules/icons/components/IconGlobe2.js +16 -0
  43. package/dist/modules/icons/components/IconGroupAvatar.d.ts +7 -0
  44. package/dist/modules/icons/components/IconGroupAvatar.js +12 -0
  45. package/dist/modules/icons/components/IconMailRecall.d.ts +7 -0
  46. package/dist/modules/icons/components/IconMailRecall.js +13 -0
  47. package/dist/modules/icons/components/IconQuestionMark.d.ts +7 -0
  48. package/dist/modules/icons/components/IconQuestionMark.js +13 -0
  49. package/dist/modules/icons/components/IconReadMail.d.ts +7 -0
  50. package/dist/modules/icons/components/IconReadMail.js +16 -0
  51. package/dist/modules/icons/components/IconSignature.d.ts +7 -0
  52. package/dist/modules/icons/components/IconSignature.js +13 -0
  53. package/dist/modules/icons/components/IconUndoAll.d.ts +7 -0
  54. package/dist/modules/icons/components/IconUndoAll.js +14 -0
  55. package/dist/modules/icons/components/IconUnreadMail.d.ts +7 -0
  56. package/dist/modules/icons/components/IconUnreadMail.js +16 -0
  57. package/dist/modules/icons/components/index.d.ts +10 -0
  58. package/dist/modules/modals/ConfirmModal/ConfirmModal.d.ts +42 -0
  59. package/dist/modules/modals/ConfirmModal/ConfirmModal.js +36 -0
  60. package/dist/modules/modals/ConfirmModal/index.d.ts +1 -0
  61. package/dist/modules/modals/index.d.ts +1 -0
  62. package/dist/modules/multimedia/WorkspaceFolders/WorkspaceFolders.d.ts +8 -0
  63. package/dist/modules/multimedia/WorkspaceFolders/WorkspaceFolders.js +31 -0
  64. package/dist/modules/multimedia/WorkspaceFolders/index.d.ts +1 -0
  65. package/dist/modules/multimedia/index.d.ts +1 -0
  66. package/dist/multimedia.js +3 -1
  67. package/package.json +6 -6
@@ -44,11 +44,15 @@ export { default as IconExternalLink } from './IconExternalLink';
44
44
  export { default as IconFiles } from './IconFiles';
45
45
  export { default as IconFilter } from './IconFilter';
46
46
  export { default as IconFlag } from './IconFlag';
47
+ export { default as IconFolderAdd } from './IconFolderAdd';
48
+ export { default as IconFolderDelete } from './IconFolderDelete';
47
49
  export { default as IconFolderMove } from './IconFolderMove';
48
50
  export { default as IconFolder } from './IconFolder';
49
51
  export { default as IconForgoing } from './IconForgoing';
50
52
  export { default as IconFullScreen } from './IconFullScreen';
53
+ export { default as IconGlobe2 } from './IconGlobe2';
51
54
  export { default as IconGlobe } from './IconGlobe';
55
+ export { default as IconGroupAvatar } from './IconGroupAvatar';
52
56
  export { default as IconHandMove } from './IconHandMove';
53
57
  export { default as IconHeadphone } from './IconHeadphone';
54
58
  export { default as IconHide } from './IconHide';
@@ -67,6 +71,7 @@ export { default as IconLink } from './IconLink';
67
71
  export { default as IconListOrder } from './IconListOrder';
68
72
  export { default as IconLoader } from './IconLoader';
69
73
  export { default as IconLock } from './IconLock';
74
+ export { default as IconMailRecall } from './IconMailRecall';
70
75
  export { default as IconMail } from './IconMail';
71
76
  export { default as IconMergeCells } from './IconMergeCells';
72
77
  export { default as IconMessageInfo } from './IconMessageInfo';
@@ -87,12 +92,14 @@ export { default as IconPlus } from './IconPlus';
87
92
  export { default as IconPointerDefault } from './IconPointerDefault';
88
93
  export { default as IconPointerHand } from './IconPointerHand';
89
94
  export { default as IconPrint } from './IconPrint';
95
+ export { default as IconQuestionMark } from './IconQuestionMark';
90
96
  export { default as IconQuestion } from './IconQuestion';
91
97
  export { default as IconRafterDown } from './IconRafterDown';
92
98
  export { default as IconRafterLeft } from './IconRafterLeft';
93
99
  export { default as IconRafterRight } from './IconRafterRight';
94
100
  export { default as IconRafterUp } from './IconRafterUp';
95
101
  export { default as IconReaction } from './IconReaction';
102
+ export { default as IconReadMail } from './IconReadMail';
96
103
  export { default as IconRecordPause } from './IconRecordPause';
97
104
  export { default as IconRecordStop } from './IconRecordStop';
98
105
  export { default as IconRecordVideo } from './IconRecordVideo';
@@ -109,6 +116,7 @@ export { default as IconSend } from './IconSend';
109
116
  export { default as IconSetBackground } from './IconSetBackground';
110
117
  export { default as IconSettings } from './IconSettings';
111
118
  export { default as IconShare } from './IconShare';
119
+ export { default as IconSignature } from './IconSignature';
112
120
  export { default as IconSmartphone } from './IconSmartphone';
113
121
  export { default as IconSmiley } from './IconSmiley';
114
122
  export { default as IconSortAscendingLetters } from './IconSortAscendingLetters';
@@ -136,9 +144,11 @@ export { default as IconTextVanilla } from './IconTextVanilla';
136
144
  export { default as IconToolCenter } from './IconToolCenter';
137
145
  export { default as IconTool } from './IconTool';
138
146
  export { default as IconTrendingUp } from './IconTrendingUp';
147
+ export { default as IconUndoAll } from './IconUndoAll';
139
148
  export { default as IconUndo } from './IconUndo';
140
149
  export { default as IconUnlink } from './IconUnlink';
141
150
  export { default as IconUnlock } from './IconUnlock';
151
+ export { default as IconUnreadMail } from './IconUnreadMail';
142
152
  export { default as IconUpload } from './IconUpload';
143
153
  export { default as IconUserSearch } from './IconUserSearch';
144
154
  export { default as IconUser } from './IconUser';
@@ -0,0 +1,42 @@
1
+ import { ReactNode } from 'react';
2
+ export type ConfirmModalVariant = 'yes/no' | 'ok/cancel';
3
+ interface ConfirmModalProps {
4
+ /**
5
+ * Variant of text buttons content
6
+ */
7
+ variant?: ConfirmModalVariant;
8
+ /**
9
+ * Modal id (useful when multiple modal on the same page)
10
+ */
11
+ id: string;
12
+ /**
13
+ * Is Modal Open
14
+ */
15
+ isOpen: boolean;
16
+ /**
17
+ * Content of header modal's
18
+ */
19
+ header?: ReactNode;
20
+ /**
21
+ * Content of body modal's
22
+ */
23
+ body?: ReactNode;
24
+ /**
25
+ * Key text translation of confirm button (useTranslation('common'))
26
+ */
27
+ okText?: string;
28
+ /**
29
+ * Key text translation of cancel button (useTranslation('common'))
30
+ */
31
+ koText?: string;
32
+ /**
33
+ * Function to call when success button proceed
34
+ */
35
+ onSuccess?: () => void;
36
+ /**
37
+ * Function to call when closing modal
38
+ */
39
+ onCancel?: () => void;
40
+ }
41
+ export default function ConfirmModal({ variant, id, isOpen, header, body, okText, koText, onSuccess, onCancel, }: ConfirmModalProps): import("react/jsx-runtime").JSX.Element;
42
+ export {};
@@ -0,0 +1,36 @@
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { useTranslation } from "react-i18next";
3
+ import Modal from "../../../components/Modal/Modal.js";
4
+ import Button from "../../../components/Button/Button.js";
5
+ function ConfirmModal({
6
+ variant = "yes/no",
7
+ id,
8
+ isOpen,
9
+ header,
10
+ body,
11
+ okText,
12
+ koText,
13
+ onSuccess = () => ({}),
14
+ onCancel = () => ({})
15
+ }) {
16
+ const {
17
+ t
18
+ } = useTranslation(), ok = {
19
+ "yes/no": t("yes"),
20
+ "ok/cancel": t("ok")
21
+ }, ko = {
22
+ "yes/no": t("no"),
23
+ "ok/cancel": t("cancel")
24
+ };
25
+ return /* @__PURE__ */ jsxs(Modal, { isOpen, onModalClose: onCancel, id, children: [
26
+ /* @__PURE__ */ jsx(Modal.Header, { onModalClose: onCancel, children: header }),
27
+ /* @__PURE__ */ jsx(Modal.Body, { children: body }),
28
+ /* @__PURE__ */ jsxs(Modal.Footer, { children: [
29
+ /* @__PURE__ */ jsx(Button, { color: "tertiary", onClick: onCancel, type: "button", variant: "ghost", children: koText ? t(koText) : ko[variant] }),
30
+ /* @__PURE__ */ jsx(Button, { color: "danger", onClick: onSuccess, type: "button", variant: "filled", children: okText ? t(okText) : ok[variant] })
31
+ ] })
32
+ ] });
33
+ }
34
+ export {
35
+ ConfirmModal as default
36
+ };
@@ -0,0 +1 @@
1
+ export { default as ConfirmModal } from './ConfirmModal';
@@ -1,3 +1,4 @@
1
+ export * from './ConfirmModal';
1
2
  export * from './OnboardingModal';
2
3
  export * from './PublishModal';
3
4
  export * from './ResourceModal';
@@ -0,0 +1,8 @@
1
+ interface WorkspaceFoldersProps {
2
+ /**
3
+ * Function called when a folder is selected
4
+ */
5
+ onFolderSelected: (folderId: string, canCopyFileInto: boolean) => void;
6
+ }
7
+ export default function WorkspaceFolders({ onFolderSelected, }: WorkspaceFoldersProps): import("react/jsx-runtime").JSX.Element;
8
+ export {};
@@ -0,0 +1,31 @@
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { useState } from "react";
3
+ import { useTranslation } from "react-i18next";
4
+ import useWorkspaceFolders, { WORKSPACE_OWNER_FOLDER_ID, WORKSPACE_SHARED_FOLDER_ID } from "../../../hooks/useWorkspaceFolders/useWorkspaceFolders.js";
5
+ import SearchBar from "../../../components/SearchBar/SearchBar.js";
6
+ import Tree from "../../../components/Tree/components/Tree.js";
7
+ function WorkspaceFolders({
8
+ onFolderSelected
9
+ }) {
10
+ const {
11
+ t
12
+ } = useTranslation(), {
13
+ folderTree,
14
+ setSearchQuery
15
+ } = useWorkspaceFolders(), [shouldExpandAllNodes, setShouldExpandAllNodes] = useState(!1), [searchValue, setSearchValue] = useState(""), handleSearchChange = (e) => {
16
+ setSearchValue(e.target.value);
17
+ }, handleSearchSubmit = () => {
18
+ setSearchQuery(searchValue), setShouldExpandAllNodes(searchValue !== "");
19
+ }, handleFolderSelected = (folderId) => {
20
+ const selectedFolderId = folderId === WORKSPACE_OWNER_FOLDER_ID ? "" : folderId, canCopyFileInto = folderId != WORKSPACE_SHARED_FOLDER_ID;
21
+ onFolderSelected(selectedFolderId, canCopyFileInto);
22
+ };
23
+ return /* @__PURE__ */ jsxs("div", { className: "d-flex flex-column gap-12", children: [
24
+ /* @__PURE__ */ jsx("p", { children: t("attachments.add.to.folder.modal.description") }),
25
+ /* @__PURE__ */ jsx(SearchBar, { onChange: handleSearchChange, isVariant: !1, placeholder: t("search"), onClick: handleSearchSubmit }),
26
+ /* @__PURE__ */ jsx("div", { className: "border border-gray-400 rounded", children: /* @__PURE__ */ jsx("div", { className: "p-12", children: /* @__PURE__ */ jsx(Tree, { nodes: folderTree, onTreeItemClick: handleFolderSelected, shouldExpandAllNodes }) }) })
27
+ ] });
28
+ }
29
+ export {
30
+ WorkspaceFolders as default
31
+ };
@@ -0,0 +1 @@
1
+ export { default as WorkspaceFolders } from './WorkspaceFolders';
@@ -7,3 +7,4 @@ export * from './MediaLibrary';
7
7
  export * from './VideoEmbed';
8
8
  export * from './VideoRecorder';
9
9
  export * from './Workspace';
10
+ export * from './WorkspaceFolders';
@@ -6,6 +6,7 @@ import { default as default6 } from "./modules/multimedia/MediaLibrary/MediaLibr
6
6
  import { default as default7 } from "./modules/multimedia/VideoEmbed/VideoEmbed.js";
7
7
  import { default as default8 } from "./modules/multimedia/VideoRecorder/VideoRecorder.js";
8
8
  import { default as default9 } from "./modules/multimedia/Workspace/Workspace.js";
9
+ import { default as default10 } from "./modules/multimedia/WorkspaceFolders/WorkspaceFolders.js";
9
10
  import { ExternalLinker } from "./modules/multimedia/Linker/ExternalLinker/ExternalLinker.js";
10
11
  import { InternalLinker } from "./modules/multimedia/Linker/InternalLinker/InternalLinker.js";
11
12
  export {
@@ -18,5 +19,6 @@ export {
18
19
  default6 as MediaLibrary,
19
20
  default7 as VideoEmbed,
20
21
  default8 as VideoRecorder,
21
- default9 as Workspace
22
+ default9 as Workspace,
23
+ default10 as WorkspaceFolders
22
24
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@edifice.io/react",
3
- "version": "2.2.2-develop.20250409145633",
3
+ "version": "2.2.3-develop-b2school.20250414171310",
4
4
  "description": "Edifice React Library",
5
5
  "keywords": [
6
6
  "react",
@@ -118,9 +118,9 @@
118
118
  "react-slugify": "^3.0.3",
119
119
  "swiper": "^10.1.0",
120
120
  "ua-parser-js": "^1.0.36",
121
- "@edifice.io/bootstrap": "2.2.2-develop.20250409145633",
122
- "@edifice.io/tiptap-extensions": "2.2.2-develop.20250409145633",
123
- "@edifice.io/utilities": "2.2.2-develop.20250409145633"
121
+ "@edifice.io/bootstrap": "2.2.3-develop-b2school.20250414171310",
122
+ "@edifice.io/tiptap-extensions": "2.2.3-develop-b2school.20250414171310",
123
+ "@edifice.io/utilities": "2.2.3-develop-b2school.20250414171310"
124
124
  },
125
125
  "devDependencies": {
126
126
  "@babel/plugin-transform-react-pure-annotations": "^7.23.3",
@@ -151,8 +151,8 @@
151
151
  "vite": "^5.4.11",
152
152
  "vite-plugin-dts": "^4.1.0",
153
153
  "vite-tsconfig-paths": "^5.0.1",
154
- "@edifice.io/client": "2.2.2-develop.20250409145633",
155
- "@edifice.io/config": "2.2.2-develop.20250409145633"
154
+ "@edifice.io/client": "2.2.3-develop-b2school.20250414171310",
155
+ "@edifice.io/config": "2.2.3-develop-b2school.20250414171310"
156
156
  },
157
157
  "peerDependencies": {
158
158
  "@react-spring/web": "^9.7.5",