@memori.ai/memori-react 7.25.1 → 7.26.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (163) hide show
  1. package/CHANGELOG.md +52 -0
  2. package/dist/components/Chat/Chat.d.ts +5 -10
  3. package/dist/components/Chat/Chat.js +3 -3
  4. package/dist/components/Chat/Chat.js.map +1 -1
  5. package/dist/components/ChatBubble/ChatBubble.css +10 -0
  6. package/dist/components/ChatBubble/ChatBubble.d.ts +1 -0
  7. package/dist/components/ChatBubble/ChatBubble.js +24 -20
  8. package/dist/components/ChatBubble/ChatBubble.js.map +1 -1
  9. package/dist/components/ChatBubble/VirtualizedContent/VirtualizedContent.d.ts +7 -0
  10. package/dist/components/ChatBubble/VirtualizedContent/VirtualizedContent.js +69 -0
  11. package/dist/components/ChatBubble/VirtualizedContent/VirtualizedContent.js.map +1 -0
  12. package/dist/components/ChatInputs/ChatInputs.d.ts +6 -10
  13. package/dist/components/ChatInputs/ChatInputs.js +37 -30
  14. package/dist/components/ChatInputs/ChatInputs.js.map +1 -1
  15. package/dist/components/FilePreview/FilePreview.css +169 -140
  16. package/dist/components/FilePreview/FilePreview.d.ts +2 -6
  17. package/dist/components/FilePreview/FilePreview.js +58 -5
  18. package/dist/components/FilePreview/FilePreview.js.map +1 -1
  19. package/dist/components/MediaWidget/LinkItemWidget.css +1 -0
  20. package/dist/components/MediaWidget/MediaItemWidget.css +10 -0
  21. package/dist/components/MediaWidget/MediaItemWidget.d.ts +6 -2
  22. package/dist/components/MediaWidget/MediaItemWidget.js +49 -11
  23. package/dist/components/MediaWidget/MediaItemWidget.js.map +1 -1
  24. package/dist/components/MediaWidget/MediaWidget.d.ts +3 -1
  25. package/dist/components/MemoriWidget/MemoriWidget.d.ts +2 -1
  26. package/dist/components/MemoriWidget/MemoriWidget.js +10 -18
  27. package/dist/components/MemoriWidget/MemoriWidget.js.map +1 -1
  28. package/dist/components/UploadButton/UploadButton.css +506 -27
  29. package/dist/components/UploadButton/UploadButton.d.ts +14 -11
  30. package/dist/components/UploadButton/UploadButton.js +121 -288
  31. package/dist/components/UploadButton/UploadButton.js.map +1 -1
  32. package/dist/components/UploadButton/UploadDocuments/UploadDocuments.d.ts +19 -0
  33. package/dist/components/UploadButton/UploadDocuments/UploadDocuments.js +211 -0
  34. package/dist/components/UploadButton/UploadDocuments/UploadDocuments.js.map +1 -0
  35. package/dist/components/UploadButton/UploadImages/UploadImages.d.ts +13 -0
  36. package/dist/components/UploadButton/UploadImages/UploadImages.js +198 -0
  37. package/dist/components/UploadButton/UploadImages/UploadImages.js.map +1 -0
  38. package/dist/components/icons/Bug.d.ts +5 -0
  39. package/dist/components/icons/Bug.js +6 -0
  40. package/dist/components/icons/Bug.js.map +1 -0
  41. package/dist/components/icons/Document.d.ts +5 -0
  42. package/dist/components/icons/Document.js +10 -0
  43. package/dist/components/icons/Document.js.map +1 -0
  44. package/dist/components/icons/Image.d.ts +4 -0
  45. package/dist/components/icons/Image.js +9 -0
  46. package/dist/components/icons/Image.js.map +1 -0
  47. package/dist/components/icons/Preview.d.ts +4 -5
  48. package/dist/components/icons/Preview.js +5 -2
  49. package/dist/components/icons/Preview.js.map +1 -1
  50. package/dist/components/icons/Upload.d.ts +4 -5
  51. package/dist/components/icons/Upload.js +5 -2
  52. package/dist/components/icons/Upload.js.map +1 -1
  53. package/dist/components/layouts/HiddenChat.js +100 -10
  54. package/dist/components/layouts/HiddenChat.js.map +1 -1
  55. package/dist/components/layouts/hidden-chat.css +189 -119
  56. package/dist/components/ui/Card.d.ts +1 -0
  57. package/dist/components/ui/Card.js +2 -2
  58. package/dist/components/ui/Card.js.map +1 -1
  59. package/dist/locales/de.json +16 -0
  60. package/dist/locales/en.json +24 -0
  61. package/dist/locales/es.json +16 -0
  62. package/dist/locales/fr.json +16 -0
  63. package/dist/locales/it.json +22 -0
  64. package/esm/components/Chat/Chat.d.ts +5 -10
  65. package/esm/components/Chat/Chat.js +3 -3
  66. package/esm/components/Chat/Chat.js.map +1 -1
  67. package/esm/components/ChatBubble/ChatBubble.css +10 -0
  68. package/esm/components/ChatBubble/ChatBubble.d.ts +1 -0
  69. package/esm/components/ChatBubble/ChatBubble.js +24 -20
  70. package/esm/components/ChatBubble/ChatBubble.js.map +1 -1
  71. package/esm/components/ChatBubble/VirtualizedContent/VirtualizedContent.d.ts +7 -0
  72. package/esm/components/ChatBubble/VirtualizedContent/VirtualizedContent.js +67 -0
  73. package/esm/components/ChatBubble/VirtualizedContent/VirtualizedContent.js.map +1 -0
  74. package/esm/components/ChatInputs/ChatInputs.d.ts +6 -10
  75. package/esm/components/ChatInputs/ChatInputs.js +37 -30
  76. package/esm/components/ChatInputs/ChatInputs.js.map +1 -1
  77. package/esm/components/FilePreview/FilePreview.css +169 -140
  78. package/esm/components/FilePreview/FilePreview.d.ts +2 -6
  79. package/esm/components/FilePreview/FilePreview.js +58 -5
  80. package/esm/components/FilePreview/FilePreview.js.map +1 -1
  81. package/esm/components/MediaWidget/LinkItemWidget.css +1 -0
  82. package/esm/components/MediaWidget/MediaItemWidget.css +10 -0
  83. package/esm/components/MediaWidget/MediaItemWidget.d.ts +6 -2
  84. package/esm/components/MediaWidget/MediaItemWidget.js +50 -12
  85. package/esm/components/MediaWidget/MediaItemWidget.js.map +1 -1
  86. package/esm/components/MediaWidget/MediaWidget.d.ts +3 -1
  87. package/esm/components/MemoriWidget/MemoriWidget.d.ts +2 -1
  88. package/esm/components/MemoriWidget/MemoriWidget.js +10 -18
  89. package/esm/components/MemoriWidget/MemoriWidget.js.map +1 -1
  90. package/esm/components/UploadButton/UploadButton.css +506 -27
  91. package/esm/components/UploadButton/UploadButton.d.ts +14 -11
  92. package/esm/components/UploadButton/UploadButton.js +122 -289
  93. package/esm/components/UploadButton/UploadButton.js.map +1 -1
  94. package/esm/components/UploadButton/UploadDocuments/UploadDocuments.d.ts +19 -0
  95. package/esm/components/UploadButton/UploadDocuments/UploadDocuments.js +208 -0
  96. package/esm/components/UploadButton/UploadDocuments/UploadDocuments.js.map +1 -0
  97. package/esm/components/UploadButton/UploadImages/UploadImages.d.ts +13 -0
  98. package/esm/components/UploadButton/UploadImages/UploadImages.js +195 -0
  99. package/esm/components/UploadButton/UploadImages/UploadImages.js.map +1 -0
  100. package/esm/components/icons/Bug.d.ts +5 -0
  101. package/esm/components/icons/Bug.js +4 -0
  102. package/esm/components/icons/Bug.js.map +1 -0
  103. package/esm/components/icons/Document.d.ts +5 -0
  104. package/esm/components/icons/Document.js +6 -0
  105. package/esm/components/icons/Document.js.map +1 -0
  106. package/esm/components/icons/Image.d.ts +4 -0
  107. package/esm/components/icons/Image.js +5 -0
  108. package/esm/components/icons/Image.js.map +1 -0
  109. package/esm/components/icons/Preview.d.ts +4 -5
  110. package/esm/components/icons/Preview.js +4 -3
  111. package/esm/components/icons/Preview.js.map +1 -1
  112. package/esm/components/icons/Upload.d.ts +4 -5
  113. package/esm/components/icons/Upload.js +4 -3
  114. package/esm/components/icons/Upload.js.map +1 -1
  115. package/esm/components/layouts/HiddenChat.js +101 -11
  116. package/esm/components/layouts/HiddenChat.js.map +1 -1
  117. package/esm/components/layouts/hidden-chat.css +189 -119
  118. package/esm/components/ui/Card.d.ts +1 -0
  119. package/esm/components/ui/Card.js +2 -2
  120. package/esm/components/ui/Card.js.map +1 -1
  121. package/esm/locales/de.json +16 -0
  122. package/esm/locales/en.json +24 -0
  123. package/esm/locales/es.json +16 -0
  124. package/esm/locales/fr.json +16 -0
  125. package/esm/locales/it.json +22 -0
  126. package/package.json +1 -1
  127. package/src/components/Chat/Chat.stories.tsx +12 -0
  128. package/src/components/Chat/Chat.tsx +8 -8
  129. package/src/components/ChatBubble/ChatBubble.css +10 -0
  130. package/src/components/ChatBubble/ChatBubble.stories.tsx +203 -1
  131. package/src/components/ChatBubble/ChatBubble.tsx +49 -22
  132. package/src/components/ChatInputs/ChatInputs.tsx +92 -43
  133. package/src/components/FilePreview/FilePreview.css +169 -140
  134. package/src/components/FilePreview/FilePreview.tsx +106 -14
  135. package/src/components/FilePreview/__snapshots__/FilePreview.test.tsx.snap +146 -29
  136. package/src/components/MediaWidget/LinkItemWidget.css +1 -0
  137. package/src/components/MediaWidget/MediaItemWidget.css +10 -0
  138. package/src/components/MediaWidget/MediaItemWidget.tsx +136 -118
  139. package/src/components/MediaWidget/MediaWidget.test.tsx +2 -1
  140. package/src/components/MediaWidget/MediaWidget.tsx +1 -1
  141. package/src/components/MemoriWidget/MemoriWidget.tsx +7 -19
  142. package/src/components/UploadButton/UploadButton.css +506 -27
  143. package/src/components/UploadButton/UploadButton.stories.tsx +122 -20
  144. package/src/components/UploadButton/UploadButton.test.tsx +1 -1
  145. package/src/components/UploadButton/UploadButton.tsx +282 -451
  146. package/src/components/UploadButton/UploadDocuments/UploadDocuments.tsx +352 -0
  147. package/src/components/UploadButton/UploadImages/UploadImages.tsx +417 -0
  148. package/src/components/UploadButton/__snapshots__/UploadButton.test.tsx.snap +139 -13
  149. package/src/components/icons/Bug.tsx +81 -0
  150. package/src/components/icons/Document.tsx +50 -0
  151. package/src/components/icons/Image.tsx +37 -0
  152. package/src/components/icons/Preview.tsx +28 -22
  153. package/src/components/icons/Upload.tsx +33 -22
  154. package/src/components/layouts/HiddenChat.tsx +143 -7
  155. package/src/components/layouts/__snapshots__/HiddenChat.test.tsx.snap +1 -1
  156. package/src/components/layouts/hidden-chat.css +189 -119
  157. package/src/components/ui/Card.tsx +3 -0
  158. package/src/index.stories.tsx +19 -19
  159. package/src/locales/de.json +16 -0
  160. package/src/locales/en.json +24 -0
  161. package/src/locales/es.json +16 -0
  162. package/src/locales/fr.json +16 -0
  163. package/src/locales/it.json +22 -0
@@ -1,155 +1,184 @@
1
- .memori--preview-container {
2
- min-width: 200px;
3
- padding: 12px;
4
- border-radius: 8px;
5
- margin-bottom: 12px;
6
- animation: slide-in 0.3s ease;
7
- background: white;
8
- box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
9
- transition: all 0.3s ease;
10
- }
1
+ /* Updated FilePreview Styles */
11
2
 
12
- .memori--preview-container.slide-down {
13
- animation: slide-down 0.3s ease;
14
- }
15
-
16
- .memori--absolute-preview {
17
- position: absolute;
18
- right: 0;
19
- bottom: 100%;
20
- left: 0;
21
- }
22
-
23
- .memori--message-preview {
24
- margin: 12px 0;
25
- }
26
-
27
- .memori--preview-list {
28
- display: flex;
29
- flex-direction: column;
30
- gap: 8px;
31
- }
32
-
33
- .memori--preview-item {
34
- position: relative;
35
- display: flex;
36
- max-width: fit-content;
37
- align-items: center;
38
- padding: 8px;
39
- border-radius: 8px;
40
- animation: slide-in 0.3s ease;
41
- background-color: #f8f9fa;
42
- cursor: pointer;
43
- gap: 8px;
44
- transition: all 0.2s ease;
45
- }
46
-
47
- .memori--preview-item:hover {
48
- background-color: #f1f3f5;
49
- transform: translateX(4px);
50
- }
51
-
52
- .memori--preview-icon {
53
- width: 20px;
54
- height: 20px;
55
- flex-shrink: 0;
56
- fill: var(--memori-primary);
57
- }
58
-
59
- .memori--preview-filename {
60
- overflow: hidden;
61
- max-width: 200px;
62
- color: #495057;
63
- font-size: 14px;
64
- text-overflow: ellipsis;
65
- white-space: nowrap;
66
- }
67
-
68
- .memori--modal-title-preview {
69
- margin-top: 12px;
70
- margin-bottom: 12px;
71
- font-size: 20px;
72
- font-weight: 600;
73
- }
74
-
75
- .memori--remove-button {
76
- position: absolute;
77
- top: -4px;
78
- right: -4px;
79
- padding: 4px;
80
- border: none;
81
- border-radius: 50%;
82
- background-color: #e03131;
83
- color: white;
84
- cursor: pointer;
3
+ .memori--preview-container {
4
+ min-width: 100%;
5
+ padding: 12px;
6
+ border-radius: 8px;
7
+ margin-bottom: 12px;
8
+ animation: slide-in 0.3s ease;
9
+ background: white;
10
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
11
+ transition: all 0.3s ease;
12
+ }
13
+
14
+ .memori--preview-container.slide-down {
15
+ animation: slide-down 0.3s ease;
16
+ }
17
+
18
+ .memori--absolute-preview {
19
+ position: absolute;
20
+ bottom: 100%;
21
+ }
22
+
23
+ .memori--message-preview {
24
+ max-width: 100%;
25
+ margin: 12px 0;
26
+ }
27
+
28
+ .memori--preview-list {
29
+ display: flex;
30
+ flex-direction: row;
31
+ gap: 8px;
32
+ overflow-x: auto;
33
+ }
34
+
35
+ .memori--preview-item {
36
+ position: relative;
37
+ display: flex;
38
+ max-width: fit-content;
39
+ align-items: center;
40
+ padding: 8px;
41
+ border-radius: 8px;
42
+ animation: slide-in 0.3s ease;
43
+ background-color: #f8f9fa;
44
+ cursor: pointer;
45
+ gap: 8px;
46
+ transition: all 0.2s ease;
47
+ }
48
+
49
+ .memori--preview-item:hover {
50
+ background-color: #f1f3f5;
51
+ transform: translateX(4px);
52
+ }
53
+
54
+ .memori--preview-icon {
55
+ width: 20px;
56
+ height: 20px;
57
+ flex-shrink: 0;
58
+ color: #fff;
59
+ fill: var(--memori-primary);
60
+ }
61
+
62
+ .memori--preview-file-info {
63
+ display: flex;
64
+ overflow: hidden;
65
+ flex-direction: column;
66
+ }
67
+
68
+ .memori--preview-filename {
69
+ overflow: hidden;
70
+ max-width: 200px;
71
+ color: #495057;
72
+ font-size: 14px;
73
+ font-weight: 500;
74
+ text-overflow: ellipsis;
75
+ white-space: nowrap;
76
+ }
77
+
78
+ .memori--preview-filetype {
79
+ margin-top: 2px;
80
+ color: #868e96;
81
+ font-size: 12px;
82
+ }
83
+
84
+ .memori--modal-title-preview {
85
+ margin-top: 12px;
86
+ margin-bottom: 12px;
87
+ font-size: 20px;
88
+ font-weight: 600;
89
+ }
90
+
91
+ .memori--remove-button {
92
+ position: absolute;
93
+ top: -4px;
94
+ right: -4px;
95
+ padding: 4px;
96
+ border: none;
97
+ border-radius: 50%;
98
+ background-color: #e03131;
99
+ color: white;
100
+ cursor: pointer;
101
+ opacity: 0;
102
+ transform: scale(0.75);
103
+ transition: all 0.2s ease;
104
+ }
105
+
106
+ .memori--remove-button.visible {
107
+ opacity: 1;
108
+ transform: scale(1);
109
+ }
110
+
111
+ .memori--remove-button:hover {
112
+ background-color: #c92a2a;
113
+ transform: scale(1.1);
114
+ }
115
+
116
+ .memori--remove-icon {
117
+ width: 12px;
118
+ height: 12px;
119
+ }
120
+
121
+ .memori--modal-preview-file {
122
+ width: 100%;
123
+ max-width: 800px;
124
+ height: 100%;
125
+ padding: 12px;
126
+ }
127
+
128
+ .memori--preview-content {
129
+ padding: 16px;
130
+ border-radius: 8px;
131
+ background-color: #f8f9fa;
132
+ font-family: monospace;
133
+ font-size: 14px;
134
+ line-height: 1.5;
135
+ }
136
+
137
+ @keyframes fadeIn {
138
+ from { opacity: 0; }
139
+ to { opacity: 1; }
140
+ }
141
+
142
+ @keyframes scaleIn {
143
+ from {
85
144
  opacity: 0;
86
- transform: scale(0.75);
87
- transition: all 0.2s ease;
145
+ transform: scale(0.95);
88
146
  }
89
-
90
- .memori--remove-button.visible {
147
+ to {
91
148
  opacity: 1;
92
149
  transform: scale(1);
93
150
  }
151
+ }
94
152
 
95
- .memori--remove-button:hover {
96
- background-color: #c92a2a;
97
- transform: scale(1.1);
98
- }
99
-
100
- .memori--remove-icon {
101
- width: 12px;
102
- height: 12px;
153
+ @keyframes slide-up {
154
+ from {
155
+ opacity: 0;
156
+ transform: translateY(10px);
103
157
  }
104
-
105
- .memori--modal-preview-file {
106
- width: 100%;
107
- max-width: 800px;
108
- height: 100%;
109
- padding: 12px;
158
+ to {
159
+ opacity: 1;
160
+ transform: translateY(0);
110
161
  }
162
+ }
111
163
 
112
- @keyframes fadeIn {
113
- from { opacity: 0; }
114
- to { opacity: 1; }
164
+ @keyframes slide-in {
165
+ from {
166
+ opacity: 0;
167
+ transform: translateY(-10px);
115
168
  }
116
-
117
- @keyframes scaleIn {
118
- from {
119
- opacity: 0;
120
- transform: scale(0.95);
121
- }
122
- to {
123
- opacity: 1;
124
- transform: scale(1);
125
- }
169
+ to {
170
+ opacity: 1;
171
+ transform: translateY(0);
126
172
  }
173
+ }
127
174
 
128
- @keyframes slide-up {
129
- from {
130
- opacity: 0;
131
- transform: translateY(10px);
132
- }
133
- to {
134
- opacity: 1;
135
- transform: translateY(0);
136
- }
175
+ @keyframes slide-down {
176
+ from {
177
+ opacity: 1;
178
+ transform: translateY(0);
137
179
  }
138
-
139
- @keyframes slide-in {
140
- from {
141
- opacity: 0;
142
- transform: translateY(-10px);
143
- }
144
- to {
145
- opacity: 1;
146
- transform: translateY(0);
147
- }
180
+ to {
181
+ opacity: 0;
182
+ transform: translateY(10px);
148
183
  }
149
-
150
- @keyframes slide-down {
151
- from {
152
- opacity: 1;
153
- transform: translateY(0);
154
- }
155
- }
184
+ }
@@ -1,10 +1,6 @@
1
1
  type FilePreviewProps = {
2
- previewFiles: {
3
- name: string;
4
- id: string;
5
- content: string;
6
- }[];
7
- removeFile: (id: string) => void;
2
+ previewFiles: any;
3
+ removeFile: (id: string, mediumID: string | undefined) => void;
8
4
  allowRemove?: boolean;
9
5
  isMessagePreview?: boolean;
10
6
  };
@@ -1,18 +1,71 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { useState } from 'react';
3
- import PreviewIcon from '../icons/Preview';
3
+ import { DocumentIcon } from '../icons/Document';
4
4
  import CloseIcon from '../icons/Close';
5
5
  import Button from '../ui/Button';
6
6
  import Modal from '../ui/Modal';
7
+ import { stripHTML } from '../../helpers/utils';
7
8
  const FilePreview = ({ previewFiles, removeFile, allowRemove = true, isMessagePreview = false, }) => {
8
9
  const [selectedFile, setSelectedFile] = useState(null);
9
10
  const [hoveredId, setHoveredId] = useState(null);
10
- return (_jsxs(_Fragment, { children: [previewFiles.length > 0 && (_jsx("div", { className: `memori--preview-container ${isMessagePreview
11
+ const getFileType = (filename, type) => {
12
+ var _a, _b;
13
+ if (type === 'image') {
14
+ const extension = (_a = filename.split('.').pop()) === null || _a === void 0 ? void 0 : _a.toLowerCase();
15
+ switch (extension) {
16
+ case 'jpg':
17
+ case 'jpeg':
18
+ return 'JPEG';
19
+ case 'png':
20
+ return 'PNG';
21
+ default:
22
+ return 'Image';
23
+ }
24
+ }
25
+ const extension = (_b = filename.split('.').pop()) === null || _b === void 0 ? void 0 : _b.toLowerCase();
26
+ switch (extension) {
27
+ case 'pdf':
28
+ return 'PDF';
29
+ case 'txt':
30
+ return 'Text';
31
+ case 'json':
32
+ return 'JSON';
33
+ case 'xlsx':
34
+ return 'Excel';
35
+ case 'csv':
36
+ return 'CSV';
37
+ case 'jpg':
38
+ case 'jpeg':
39
+ return 'JPEG';
40
+ case 'png':
41
+ return 'PNG';
42
+ default:
43
+ return 'Document';
44
+ }
45
+ };
46
+ const isImageContent = (content, type) => {
47
+ if (type === 'image')
48
+ return true;
49
+ const hasImageExtension = /\.(jpg|jpeg|png|gif|webp|svg)$/i.test(content);
50
+ const isImageUrl = content.startsWith('http') &&
51
+ (content.includes('/image/') ||
52
+ content.includes('/img/') ||
53
+ hasImageExtension);
54
+ return isImageUrl || hasImageExtension;
55
+ };
56
+ return (_jsxs(_Fragment, { children: [previewFiles.length > 0 && (_jsx("div", { className: `memori--preview-container ${isMessagePreview
11
57
  ? 'memori--message-preview'
12
- : 'memori--absolute-preview'}`, children: _jsx("div", { className: "memori--preview-list", children: previewFiles.map(file => (_jsxs("div", { className: "memori--preview-item", onMouseEnter: () => setHoveredId(file.id), onMouseLeave: () => setHoveredId(null), onClick: () => setSelectedFile(file), children: [_jsx(PreviewIcon, { className: "memori--preview-icon" }), _jsx("span", { className: "memori--preview-filename", children: file.name }), allowRemove && (_jsx(Button, { shape: "rounded", icon: _jsx(CloseIcon, {}), danger: true, className: `memori--remove-button ${hoveredId === file.id ? 'visible' : ''}`, onClick: e => {
58
+ : 'memori--absolute-preview'}`, children: _jsx("div", { className: "memori--preview-list", children: previewFiles.map((file) => (_jsxs("div", { className: `memori--preview-item ${isImageContent(file.content, file.type)
59
+ ? 'memori--preview-item--image'
60
+ : 'memori--preview-item--document'}`, onMouseEnter: () => setHoveredId(file.id), onMouseLeave: () => setHoveredId(null), onClick: () => setSelectedFile(file), children: [isImageContent(file.content, file.type) ? (_jsx("div", { className: "memori--preview-thumbnail", children: _jsx("img", { src: file.content, alt: file.name }) })) : (_jsx(DocumentIcon, { className: "memori--preview-icon" })), _jsxs("div", { className: "memori--preview-file-info", children: [_jsx("span", { className: "memori--preview-filename", children: file.name }), _jsx("span", { className: "memori--preview-filetype", children: getFileType(file.name, file.type) })] }), allowRemove && (_jsx(Button, { shape: "rounded", icon: _jsx(CloseIcon, {}), danger: true, className: `memori--remove-button ${hoveredId === file.id ? 'visible' : ''}`, onClick: e => {
13
61
  e.stopPropagation();
14
- removeFile(file.id);
15
- } }))] }, file.id))) }) })), _jsx(Modal, { width: "80%", widthMd: "80%", open: !!selectedFile, className: "memori--modal-preview-file", onClose: () => setSelectedFile(null), closable: true, title: selectedFile === null || selectedFile === void 0 ? void 0 : selectedFile.name, children: _jsx("div", { className: "memori--preview-content", style: { whiteSpace: 'pre-wrap', maxHeight: '70vh', overflowY: 'auto' }, children: selectedFile === null || selectedFile === void 0 ? void 0 : selectedFile.content }) })] }));
62
+ removeFile(file.id, file === null || file === void 0 ? void 0 : file.mediumID);
63
+ } }))] }, file.id))) }) })), _jsx(Modal, { width: "80%", widthMd: "80%", open: !!selectedFile, className: "memori--modal-preview-file", onClose: () => setSelectedFile(null), closable: true, title: selectedFile === null || selectedFile === void 0 ? void 0 : selectedFile.name, children: _jsx("div", { className: "memori--preview-content", style: {
64
+ maxHeight: '70vh',
65
+ overflowY: 'auto',
66
+ textAlign: 'center',
67
+ whiteSpace: selectedFile && !isImageContent(selectedFile.content, selectedFile.type) ? 'pre-wrap' : 'normal'
68
+ }, children: selectedFile && isImageContent(selectedFile.content, selectedFile.type) ? (_jsx(_Fragment, { children: _jsx("img", { src: selectedFile.content, alt: selectedFile.name, style: { maxWidth: '100%', maxHeight: '60vh' } }) })) : (stripHTML((selectedFile === null || selectedFile === void 0 ? void 0 : selectedFile.content) || '')) }) })] }));
16
69
  };
17
70
  export default FilePreview;
18
71
  //# sourceMappingURL=FilePreview.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FilePreview.js","sourceRoot":"","sources":["../../../src/components/FilePreview/FilePreview.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,SAAS,MAAM,gBAAgB,CAAC;AACvC,OAAO,MAAM,MAAM,cAAc,CAAC;AAClC,OAAO,KAAK,MAAM,aAAa,CAAC;AAShC,MAAM,WAAW,GAAG,CAAC,EACnB,YAAY,EACZ,UAAU,EACV,WAAW,GAAG,IAAI,EAClB,gBAAgB,GAAG,KAAK,GACP,EAAE,EAAE;IACrB,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAGtC,IAAI,CAAC,CAAC;IAChB,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAEhE,OAAO,CACL,8BACG,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,CAC1B,cACE,SAAS,EAAE,6BACT,gBAAgB;oBACd,CAAC,CAAC,yBAAyB;oBAC3B,CAAC,CAAC,0BACN,EAAE,YAEF,cAAK,SAAS,EAAC,sBAAsB,YAClC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CACxB,eAEE,SAAS,EAAC,sBAAsB,EAChC,YAAY,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,EACzC,YAAY,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,EACtC,OAAO,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,aAEpC,KAAC,WAAW,IAAC,SAAS,EAAC,sBAAsB,GAAG,EAChD,eAAM,SAAS,EAAC,0BAA0B,YAAE,IAAI,CAAC,IAAI,GAAQ,EAE5D,WAAW,IAAI,CACd,KAAC,MAAM,IACL,KAAK,EAAC,SAAS,EACf,IAAI,EAAE,KAAC,SAAS,KAAG,EACnB,MAAM,QACN,SAAS,EAAE,yBACT,SAAS,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EACtC,EAAE,EACF,OAAO,EAAE,CAAC,CAAC,EAAE;oCACX,CAAC,CAAC,eAAe,EAAE,CAAC;oCACpB,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gCACtB,CAAC,GACD,CACH,KAtBI,IAAI,CAAC,EAAE,CAuBR,CACP,CAAC,GACE,GACF,CACP,EAED,KAAC,KAAK,IACJ,KAAK,EAAC,KAAK,EACX,OAAO,EAAC,KAAK,EACb,IAAI,EAAE,CAAC,CAAC,YAAY,EACpB,SAAS,EAAC,4BAA4B,EACtC,OAAO,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,EACpC,QAAQ,QACR,KAAK,EAAE,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,IAAI,YAEzB,cAAK,SAAS,EAAC,yBAAyB,EAAC,KAAK,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,YAC7G,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,OAAO,GAClB,GACA,IACP,CACJ,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"FilePreview.js","sourceRoot":"","sources":["../../../src/components/FilePreview/FilePreview.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,SAAS,MAAM,gBAAgB,CAAC;AACvC,OAAO,MAAM,MAAM,cAAc,CAAC;AAClC,OAAO,KAAK,MAAM,aAAa,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAShD,MAAM,WAAW,GAAG,CAAC,EACnB,YAAY,EACZ,UAAU,EACV,WAAW,GAAG,IAAI,EAClB,gBAAgB,GAAG,KAAK,GACP,EAAE,EAAE;IACrB,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAKtC,IAAI,CAAC,CAAC;IAEhB,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAEhE,MAAM,WAAW,GAAG,CAAC,QAAgB,EAAE,IAAa,EAAE,EAAE;;QAEtD,IAAI,IAAI,KAAK,OAAO,EAAE;YACpB,MAAM,SAAS,GAAG,MAAA,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,0CAAE,WAAW,EAAE,CAAC;YAC3D,QAAQ,SAAS,EAAE;gBACjB,KAAK,KAAK,CAAC;gBACX,KAAK,MAAM;oBACT,OAAO,MAAM,CAAC;gBAChB,KAAK,KAAK;oBACR,OAAO,KAAK,CAAC;gBACf;oBACE,OAAO,OAAO,CAAC;aAClB;SACF;QAGD,MAAM,SAAS,GAAG,MAAA,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,0CAAE,WAAW,EAAE,CAAC;QAC3D,QAAQ,SAAS,EAAE;YACjB,KAAK,KAAK;gBACR,OAAO,KAAK,CAAC;YACf,KAAK,KAAK;gBACR,OAAO,MAAM,CAAC;YAChB,KAAK,MAAM;gBACT,OAAO,MAAM,CAAC;YAChB,KAAK,MAAM;gBACT,OAAO,OAAO,CAAC;YACjB,KAAK,KAAK;gBACR,OAAO,KAAK,CAAC;YACf,KAAK,KAAK,CAAC;YACX,KAAK,MAAM;gBACT,OAAO,MAAM,CAAC;YAChB,KAAK,KAAK;gBACR,OAAO,KAAK,CAAC;YACf;gBACE,OAAO,UAAU,CAAC;SACrB;IACH,CAAC,CAAC;IAGF,MAAM,cAAc,GAAG,CAAC,OAAe,EAAE,IAAa,EAAW,EAAE;QACjE,IAAI,IAAI,KAAK,OAAO;YAAE,OAAO,IAAI,CAAC;QAGlC,MAAM,iBAAiB,GAAG,iCAAiC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1E,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;YAC1B,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAC3B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;gBACzB,iBAAiB,CAAC,CAAC;QAEvC,OAAO,UAAU,IAAI,iBAAiB,CAAC;IACzC,CAAC,CAAC;IAEF,OAAO,CACL,8BACG,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,CAC1B,cACE,SAAS,EAAE,8BACT,gBAAgB;oBACd,CAAC,CAAC,yBAAyB;oBAC3B,CAAC,CAAC,0BACN,EAAE,YAEF,cAAK,SAAS,EAAC,sBAAsB,YAClC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,CAC/B,eAEE,SAAS,EAAE,wBACT,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC;4BACrC,CAAC,CAAC,6BAA6B;4BAC/B,CAAC,CAAC,gCACN,EAAE,EACF,YAAY,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,EACzC,YAAY,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,EACtC,OAAO,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,aAEnC,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CACzC,cAAK,SAAS,EAAC,2BAA2B,YACxC,cAAK,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,GAAI,GACtC,CACP,CAAC,CAAC,CAAC,CACF,KAAC,YAAY,IAAC,SAAS,EAAC,sBAAsB,GAAG,CAClD,EAED,eAAK,SAAS,EAAC,2BAA2B,aACxC,eAAM,SAAS,EAAC,0BAA0B,YAAE,IAAI,CAAC,IAAI,GAAQ,EAC7D,eAAM,SAAS,EAAC,0BAA0B,YACvC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,GAC7B,IACH,EAEL,WAAW,IAAI,CACd,KAAC,MAAM,IACL,KAAK,EAAC,SAAS,EACf,IAAI,EAAE,KAAC,SAAS,KAAG,EACnB,MAAM,QACN,SAAS,EAAE,yBACT,SAAS,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EACtC,EAAE,EACF,OAAO,EAAE,CAAC,CAAC,EAAE;oCACX,CAAC,CAAC,eAAe,EAAE,CAAC;oCACpB,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,CAAC,CAAC;gCACtC,CAAC,GACD,CACH,KAtCI,IAAI,CAAC,EAAE,CAuCR,CACP,CAAC,GACE,GACF,CACP,EAED,KAAC,KAAK,IACJ,KAAK,EAAC,KAAK,EACX,OAAO,EAAC,KAAK,EACb,IAAI,EAAE,CAAC,CAAC,YAAY,EACpB,SAAS,EAAC,4BAA4B,EACtC,OAAO,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,EACpC,QAAQ,QACR,KAAK,EAAE,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,IAAI,YAEzB,cACE,SAAS,EAAC,yBAAyB,EACnC,KAAK,EAAE;wBACL,SAAS,EAAE,MAAM;wBACjB,SAAS,EAAE,MAAM;wBACjB,SAAS,EAAE,QAAQ;wBACnB,UAAU,EAAE,YAAY,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,OAAO,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ;qBAC7G,YAEA,YAAY,IAAI,cAAc,CAAC,YAAY,CAAC,OAAO,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CACzE,4BACE,cACE,GAAG,EAAE,YAAY,CAAC,OAAO,EACzB,GAAG,EAAE,YAAY,CAAC,IAAI,EACtB,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAChD,GACC,CACJ,CAAC,CAAC,CAAC,CACF,SAAS,CAAC,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,OAAO,KAAI,EAAE,CAAC,CACvC,GACG,GACA,IACP,CACJ,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -1,6 +1,7 @@
1
1
  .memori-link-items--grid {
2
2
  display: grid;
3
3
  padding: 1rem;
4
+ direction: rtl;
4
5
  grid-auto-flow: dense;
5
6
  grid-gap: 1rem;
6
7
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
@@ -1,6 +1,7 @@
1
1
  .memori-media-items--grid {
2
2
  display: grid;
3
3
  padding: 1rem;
4
+ direction: rtl;
4
5
  grid-auto-flow: dense;
5
6
  grid-gap: 1rem;
6
7
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
@@ -143,3 +144,12 @@ a.memori-media-item--link {
143
144
  border-color: #fff;
144
145
  color: #fff;
145
146
  }
147
+
148
+ .memori-media-item-preview--modal {
149
+ z-index: 10000;
150
+ width: 100%;
151
+ max-width: 80%;
152
+ height: 100%;
153
+ max-height: 80%;
154
+ background: #fff;
155
+ }
@@ -1,7 +1,9 @@
1
1
  import { Medium } from '@memori.ai/memori-api-client/dist/types';
2
2
  import React from 'react';
3
3
  export interface Props {
4
- items: Medium[];
4
+ items: (Medium & {
5
+ type?: string;
6
+ })[];
5
7
  sessionID?: string;
6
8
  tenantID?: string;
7
9
  translateTo?: string;
@@ -11,7 +13,9 @@ export interface Props {
11
13
  }
12
14
  export declare const RenderMediaItem: ({ isChild, item, sessionID, tenantID, preview, baseURL, apiURL, onClick, customMediaRenderer, }: {
13
15
  isChild?: boolean | undefined;
14
- item: Medium;
16
+ item: Medium & {
17
+ type: string;
18
+ };
15
19
  sessionID?: string | undefined;
16
20
  tenantID?: string | undefined;
17
21
  preview?: boolean | undefined;
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { useCallback, useEffect, useState, memo } from 'react';
3
3
  import { getResourceUrl } from '../../helpers/media';
4
4
  import { getTranslation } from '../../helpers/translations';
@@ -12,8 +12,10 @@ import FilePdf from '../icons/FilePdf';
12
12
  import FileExcel from '../icons/FileExcel';
13
13
  import FileWord from '../icons/FileWord';
14
14
  import { Transition } from '@headlessui/react';
15
+ import { stripHTML } from '../../helpers/utils';
15
16
  export const RenderMediaItem = ({ isChild = false, item, sessionID, tenantID, preview = false, baseURL, apiURL, onClick, customMediaRenderer, }) => {
16
17
  var _a, _b;
18
+ const [modalOpen, setModalOpen] = useState(false);
17
19
  const url = getResourceUrl({
18
20
  resourceURI: item.url,
19
21
  sessionID,
@@ -25,15 +27,51 @@ export const RenderMediaItem = ({ isChild = false, item, sessionID, tenantID, pr
25
27
  if (customRenderer) {
26
28
  return customRenderer;
27
29
  }
30
+ const renderMediaContent = (item) => {
31
+ switch (item.mimeType) {
32
+ case 'image/jpeg':
33
+ case 'image/png':
34
+ case 'image/jpg':
35
+ case 'image/gif':
36
+ return isImageRGB ? (_jsxs("picture", { className: "memori-media-item--figure", children: [_jsx("div", { className: "memori-media-item--rgb-item", style: {
37
+ backgroundColor: item.url,
38
+ } }), item.title && (_jsx("figcaption", { className: "memori-media-item--figure-caption", children: item.title }))] })) : (_jsxs("picture", { className: "memori-media-item--figure", children: [!preview && (_jsx("source", { srcSet: [url, item.url, item.content].join(', '), type: item.mimeType })), _jsx("img", { alt: item.title, src: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMIAAADDCAYAAADQvc6UAAABRWlDQ1BJQ0MgUHJvZmlsZQAAKJFjYGASSSwoyGFhYGDIzSspCnJ3UoiIjFJgf8LAwSDCIMogwMCcmFxc4BgQ4ANUwgCjUcG3awyMIPqyLsis7PPOq3QdDFcvjV3jOD1boQVTPQrgSkktTgbSf4A4LbmgqISBgTEFyFYuLykAsTuAbJEioKOA7DkgdjqEvQHEToKwj4DVhAQ5A9k3gGyB5IxEoBmML4BsnSQk8XQkNtReEOBxcfXxUQg1Mjc0dyHgXNJBSWpFCYh2zi+oLMpMzyhRcASGUqqCZ16yno6CkYGRAQMDKMwhqj/fAIcloxgHQqxAjIHBEugw5sUIsSQpBobtQPdLciLEVJYzMPBHMDBsayhILEqEO4DxG0txmrERhM29nYGBddr//5/DGRjYNRkY/l7////39v///y4Dmn+LgeHANwDrkl1AuO+pmgAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAAAwqADAAQAAAABAAAAwwAAAAD9b/HnAAAHlklEQVR4Ae3dP3PTWBSGcbGzM6GCKqlIBRV0dHRJFarQ0eUT8LH4BnRU0NHR0UEFVdIlFRV7TzRksomPY8uykTk/zewQfKw/9znv4yvJynLv4uLiV2dBoDiBf4qP3/ARuCRABEFAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghgg0Aj8i0JO4OzsrPv69Wv+hi2qPHr0qNvf39+iI97soRIh4f3z58/u7du3SXX7Xt7Z2enevHmzfQe+oSN2apSAPj09TSrb+XKI/f379+08+A0cNRE2ANkupk+ACNPvkSPcAAEibACyXUyfABGm3yNHuAECRNgAZLuYPgEirKlHu7u7XdyytGwHAd8jjNyng4OD7vnz51dbPT8/7z58+NB9+/bt6jU/TI+AGWHEnrx48eJ/EsSmHzx40L18+fLyzxF3ZVMjEyDCiEDjMYZZS5wiPXnyZFbJaxMhQIQRGzHvWR7XCyOCXsOmiDAi1HmPMMQjDpbpEiDCiL358eNHurW/5SnWdIBbXiDCiA38/Pnzrce2YyZ4//59F3ePLNMl4PbpiL2J0L979+7yDtHDhw8vtzzvdGnEXdvUigSIsCLAWavHp/+qM0BcXMd/q25n1vF57TYBp0a3mUzilePj4+7k5KSLb6gt6ydAhPUzXnoPR0dHl79WGTNCfBnn1uvSCJdegQhLI1vvCk+fPu2ePXt2tZOYEV6/fn31dz+shwAR1sP1cqvLntbEN9MxA9xcYjsxS1jWR4AIa2Ibzx0tc44fYX/16lV6NDFLXH+YL32jwiACRBiEbf5KcXoTIsQSpzXx4N28Ja4BQoK7rgXiydbHjx/P25TaQAJEGAguWy0+2Q8PD6/Ki4R8EVl+bzBOnZY95fq9rj9zAkTI2SxdidBHqG9+skdw43borCXO/ZcJdraPWdv22uIEiLA4q7nvvCug8WTqzQveOH26fodo7g6uFe/a17W3+nFBAkRYENRdb1vkkz1CH9cPsVy/jrhr27PqMYvENYNlHAIesRiBYwRy0V+8iXP8+/fvX11Mr7L7ECueb/r48eMqm7FuI2BGWDEG8cm+7G3NEOfmdcTQw4h9/55lhm7DekRYKQPZF2ArbXTAyu4kDYB2YxUzwg0gi/41ztHnfQG26HbGel/crVrm7tNY+/1btkOEAZ2M05r4FB7r9GbAIdxaZYrHdOsgJ/wCEQY0J74TmOKnbxxT9n3FgGGWWsVdowHtjt9Nnvf7yQM2aZU/TIAIAxrw6dOnAWtZZcoEnBpNuTuObWMEiLAx1HY0ZQJEmHJ3HNvGCBBhY6jtaMoEiJB0Z29vL6ls58vxPcO8/zfrdo5qvKO+d3Fx8Wu8zf1dW4p/cPzLly/dtv9Ts/EbcvGAHhHyfBIhZ6NSiIBTo0LNNtScABFyNiqFCBChULMNNSdAhJyNSiECRCjUbEPNCRAhZ6NSiAARCjXbUHMCRMjZqBQiQIRCzTbUnAARcjYqhQgQoVCzDTUnQIScjUohAkQo1GxDzQkQIWejUogAEQo121BzAkTI2agUIkCEQs021JwAEXI2KoUIEKFQsw01J0CEnI1KIQJEKNRsQ80JECFno1KIABEKNdtQcwJEyNmoFCJAhELNNtScABFyNiqFCBChULMNNSdAhJyNSiECRCjUbEPNCRAhZ6NSiAARCjXbUHMCRMjZqBQiQIRCzTbUnAARcjYqhQgQoVCzDTUnQIScjUohAkQo1GxDzQkQIWejUogAEQo121BzAkTI2agUIkCEQs021JwAEXI2KoUIEKFQsw01J0CEnI1KIQJEKNRsQ80JECFno1KIABEKNdtQcwJEyNmoFCJAhELNNtScABFyNiqFCBChULMNNSdAhJyNSiECRCjUbEPNCRAhZ6NSiAARCjXbUHMCRMjZqBQiQIRCzTbUnAARcjYqhQgQoVCzDTUnQIScjUohAkQo1GxDzQkQIWejUogAEQo121BzAkTI2agUIkCEQs021JwAEXI2KoUIEKFQsw01J0CEnI1KIQJEKNRsQ80JECFno1KIABEKNdtQcwJEyNmoFCJAhELNNtScABFyNiqFCBChULMNNSdAhJyNSiEC/wGgKKC4YMA4TAAAAABJRU5ErkJggg==" }), item.title && (_jsx("figcaption", { className: "memori-media-item--figure-caption", children: item.title }))] }));
39
+ case 'application/msword':
40
+ case 'application/vnd.openxmlformats-officedocument.wordprocessingml.document':
41
+ return _jsx(FileWord, { className: "memori-media-item--icon" });
42
+ case 'application/vnd.ms-excel':
43
+ case 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet':
44
+ return _jsx(FileExcel, { className: "memori-media-item--icon" });
45
+ case 'application/pdf':
46
+ return _jsx(FilePdf, { className: "memori-media-item--icon" });
47
+ case 'video/mp4':
48
+ case 'video/quicktime':
49
+ case 'video/avi':
50
+ case 'video/mpeg':
51
+ return (_jsxs("video", { style: { width: '100%', height: '100%' }, controls: true, src: url, title: item.title, children: [item.mimeType === 'video/quicktime' && (_jsx("source", { src: item.url, type: "video/mp4" })), _jsx("source", { src: item.url, type: item.mimeType }), "Your browser does not support this video format.", _jsx("br", {}), _jsx("a", { href: item.url, target: "_blank", rel: "noopener noreferrer", children: "Download the video" })] }));
52
+ case 'audio/mpeg3':
53
+ case 'audio/wav':
54
+ case 'audio/mpeg':
55
+ return (_jsx("audio", { style: { width: '100%', height: '100%' }, controls: true, src: url }));
56
+ case 'model/gltf-binary':
57
+ return (_jsx(ModelViewer, { src: url, alt: "", poster: "data:image/png;base64,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" }));
58
+ default:
59
+ return _jsx(File, { className: "memori-media-item--icon" });
60
+ }
61
+ };
62
+ if (!item.url && (item === null || item === void 0 ? void 0 : item.type) === 'document' && item.content) {
63
+ return (_jsxs(_Fragment, { children: [_jsx("a", { className: "memori-media-item--link", href: "#", onClick: e => {
64
+ e.preventDefault();
65
+ setModalOpen(true);
66
+ }, title: item.title, children: _jsx(Card, { hoverable: true, cover: renderMediaContent(item), title: item.title }) }), _jsx(Modal, { open: modalOpen, onClose: () => setModalOpen(false), title: item.title, className: "memori-media-item-preview--modal", children: _jsx("pre", { children: stripHTML(item.content) }) })] }));
67
+ }
28
68
  const isImageRGB = ((_a = item.url) === null || _a === void 0 ? void 0 : _a.startsWith('rgb(')) || ((_b = item.url) === null || _b === void 0 ? void 0 : _b.startsWith('rgba('));
29
69
  switch (item.mimeType) {
30
70
  case 'image/jpeg':
31
71
  case 'image/png':
32
72
  case 'image/jpg':
33
73
  case 'image/gif':
34
- return isImageRGB ? (_jsx(Card, { hoverable: true, className: "memori-media-item--card memori-media-item--image", cover: _jsxs("picture", { className: "memori-media-item--figure", children: [_jsx("div", { className: "memori-media-item--rgb-item", style: {
35
- backgroundColor: item.url,
36
- } }), item.title && (_jsx("figcaption", { className: "memori-media-item--figure-caption", children: item.title }))] }) })) : (_jsx("a", { className: "memori-media-item--link", href: item.url, onClick: e => {
74
+ return isImageRGB ? (_jsx(Card, { hoverable: true, className: "memori-media-item--card memori-media-item--image", cover: renderMediaContent(item) })) : (_jsx("a", { className: "memori-media-item--link", href: item.url, onClick: e => {
37
75
  if (isChild) {
38
76
  e.preventDefault();
39
77
  }
@@ -41,15 +79,13 @@ export const RenderMediaItem = ({ isChild = false, item, sessionID, tenantID, pr
41
79
  e.preventDefault();
42
80
  onClick(item.mediumID);
43
81
  }
44
- }, target: "_blank", rel: "noopener noreferrer", title: item.title, children: _jsx(Card, { hoverable: true, className: "memori-media-item--card memori-media-item--image", cover: _jsxs("picture", { className: "memori-media-item--figure", children: [!preview && (_jsx("source", { srcSet: [url, item.url, item.content].join(', '), type: item.mimeType })), _jsx("img", { alt: item.title, src: "data:image/png;base64,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" }), item.title && (_jsx("figcaption", { className: "memori-media-item--figure-caption", children: item.title }))] }) }) }));
82
+ }, target: "_blank", rel: "noopener noreferrer", title: item.title, children: _jsx(Card, { hoverable: true, className: "memori-media-item--card memori-media-item--image", cover: renderMediaContent(item) }) }));
45
83
  case 'application/msword':
46
84
  case 'application/vnd.openxmlformats-officedocument.wordprocessingml.document':
47
- return (_jsx("a", { className: "memori-media-item--link", href: url, target: "_blank", rel: "noopener noreferrer", title: item.title, children: _jsx(Card, { hoverable: true, cover: _jsx(FileWord, { className: "memori-media-item--icon" }), title: item.title }) }));
48
85
  case 'application/vnd.ms-excel':
49
86
  case 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet':
50
- return (_jsx("a", { className: "memori-media-item--link", href: url, target: "_blank", rel: "noopener noreferrer", title: item.title, children: _jsx(Card, { hoverable: true, cover: _jsx(FileExcel, { className: "memori-media-item--icon" }), title: item.title }) }));
51
87
  case 'application/pdf':
52
- return (_jsx("a", { className: "memori-media-item--link", href: url, target: "_blank", rel: "noopener noreferrer", title: item.title, children: _jsx(Card, { hoverable: true, cover: _jsx(FilePdf, { className: "memori-media-item--icon" }), title: item.title }) }));
88
+ return (_jsx("a", { className: "memori-media-item--link", href: url, target: "_blank", rel: "noopener noreferrer", title: item.title, children: _jsx(Card, { hoverable: true, cover: renderMediaContent(item), title: item.title }) }));
53
89
  case 'video/mp4':
54
90
  case 'video/quicktime':
55
91
  case 'video/avi':
@@ -62,15 +98,15 @@ export const RenderMediaItem = ({ isChild = false, item, sessionID, tenantID, pr
62
98
  e.preventDefault();
63
99
  onClick(item.mediumID);
64
100
  }
65
- }, target: "_blank", rel: "noopener noreferrer", title: item.title, children: _jsx(Card, { hoverable: true, cover: _jsxs("video", { style: { width: '100%', height: '100%' }, controls: true, src: url, title: item.title, children: [item.mimeType === 'video/quicktime' && (_jsx("source", { src: item.url, type: "video/mp4" })), _jsx("source", { src: item.url, type: item.mimeType }), "Your browser does not support this video format.", _jsx("br", {}), _jsx("a", { href: item.url, target: "_blank", rel: "noopener noreferrer", children: "Download the video" })] }), title: item.title }) }));
101
+ }, target: "_blank", rel: "noopener noreferrer", title: item.title, children: _jsx(Card, { hoverable: true, cover: renderMediaContent(item), title: item.title }) }));
66
102
  case 'audio/mpeg3':
67
103
  case 'audio/wav':
68
104
  case 'audio/mpeg':
69
- return (_jsx("a", { className: "memori-media-item--link", href: url, target: "_blank", rel: "noopener noreferrer", title: item.title, children: _jsx(Card, { hoverable: true, cover: _jsx("audio", { style: { width: '100%', height: '100%' }, controls: true, src: url }), title: item.title }) }));
105
+ return (_jsx("a", { className: "memori-media-item--link", href: url, target: "_blank", rel: "noopener noreferrer", title: item.title, children: _jsx(Card, { hoverable: true, cover: renderMediaContent(item), title: item.title }) }));
70
106
  case 'model/gltf-binary':
71
- return (_jsx(ModelViewer, { src: url, alt: "", poster: "data:image/png;base64,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" }));
107
+ return _jsx(Card, { hoverable: true, cover: renderMediaContent(item) });
72
108
  default:
73
- return (_jsx("a", { className: "memori-media-item--link", href: url, target: "_blank", rel: "noopener noreferrer", title: item.title, children: _jsx(Card, { hoverable: true, cover: _jsx(File, { className: "memori-media-item--icon" }), title: item.title }) }));
109
+ return (_jsx("a", { className: "memori-media-item--link", href: url, target: "_blank", rel: "noopener noreferrer", title: item.title, children: _jsx(Card, { hoverable: true, cover: renderMediaContent(item), title: item.title }) }));
74
110
  }
75
111
  };
76
112
  const MediaItemWidget = ({ items, sessionID, tenantID, translateTo, baseURL, apiURL, customMediaRenderer, }) => {
@@ -127,11 +163,13 @@ const MediaItemWidget = ({ items, sessionID, tenantID, translateTo, baseURL, api
127
163
  title: item.title,
128
164
  url: item.url,
129
165
  content: item.content,
166
+ type: 'document',
130
167
  }, customMediaRenderer: customMediaRenderer }) }, item.url + '&index=' + index))) })), codeSnippets.map(medium => (_jsx(Transition.Child, { as: "div", className: "memori-media-item--snippet", enter: "ease-out duration-500", enterFrom: "opacity-0 translate-y-1", enterTo: "opacity-1 translate-y-0", leave: "ease-in duration-300", leaveFrom: "opacity-1", leaveTo: "opacity-0", children: _jsx(Snippet, { medium: medium }, medium.mediumID) }, medium.mediumID))), cssExecutableCode.map(medium => (_jsx("style", { dangerouslySetInnerHTML: { __html: medium.content || '' } }, medium.mediumID))), (openModalMedium === null || openModalMedium === void 0 ? void 0 : openModalMedium.mediumID) && (_jsx(Modal, { width: "100%", widthMd: "100%", className: "memori-media-item--modal", open: !!openModalMedium, onClose: () => setOpenModalMedium(undefined), footer: null, children: _jsx(RenderMediaItem, { isChild: true, sessionID: sessionID, tenantID: tenantID, baseURL: baseURL, apiURL: apiURL, item: {
131
168
  ...openModalMedium,
132
169
  title: openModalMedium.title,
133
170
  url: openModalMedium.url,
134
171
  content: openModalMedium.content,
172
+ type: 'document',
135
173
  }, customMediaRenderer: customMediaRenderer }) }))] }));
136
174
  };
137
175
  export default memo(MediaItemWidget);