@chayns-components/gallery 5.0.0-beta.247 → 5.0.0-beta.249
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.
|
@@ -182,15 +182,13 @@ const Gallery = _ref => {
|
|
|
182
182
|
*/
|
|
183
183
|
const openFiles = (0, _react.useCallback)(file => {
|
|
184
184
|
const startIndex = fileItems.findIndex(item => item.id === file.id);
|
|
185
|
-
console.debug('Files: ', fileItems);
|
|
186
185
|
const items = fileItems.map(item => {
|
|
187
186
|
var _item$uploadedFile$ur, _item$uploadedFile, _item$file;
|
|
188
187
|
return {
|
|
189
|
-
url: (_item$uploadedFile$ur = (_item$uploadedFile = item.uploadedFile) === null || _item$uploadedFile === void 0 ? void 0 : _item$uploadedFile.url) !== null && _item$uploadedFile$ur !== void 0 ? _item$uploadedFile$ur : '',
|
|
188
|
+
url: (_item$uploadedFile$ur = (_item$uploadedFile = item.uploadedFile) === null || _item$uploadedFile === void 0 ? void 0 : _item$uploadedFile.url.replace('_0.mp4', '.mp4')) !== null && _item$uploadedFile$ur !== void 0 ? _item$uploadedFile$ur : '',
|
|
190
189
|
mediaType: (_item$file = item.file) !== null && _item$file !== void 0 && _item$file.type.includes('video/') ? _chaynsApi.MediaType.VIDEO : _chaynsApi.MediaType.IMAGE
|
|
191
190
|
};
|
|
192
191
|
});
|
|
193
|
-
console.debug('MediaItem: ', items);
|
|
194
192
|
|
|
195
193
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
196
194
|
// @ts-ignore
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Gallery.js","names":["_core","require","_react","_interopRequireWildcard","_uuid","_file","_AddFile","_interopRequireDefault","_GalleryItem","_Gallery","_chaynsApi","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","Gallery","_ref","accessToken","allowDragAndDrop","isEditMode","files","onAdd","onRemove","personId","fileItems","setFileItems","useState","handlePreviewUrlCallback","previewUrl","file","prevState","map","prevFile","id","handleUploadFileCallback","useCallback","UploadedFile","uploadedFile","state","useEffect","filesToGeneratePreview","filter","filesToUpload","forEach","type","includes","generateVideoThumbnail","callback","generatePreviewUrl","uploadFile","fileToUpload","handleAddFiles","filesToAdd","newFileItems","filterDuplicateFile","newFile","push","uuidv4","handleDeleteFile","fileToDelete","filteredFiles","fileId","handleDrop","e","preventDefault","draggedFiles","Array","from","dataTransfer","openFiles","startIndex","findIndex","item","console","debug","items","_item$uploadedFile$ur","_item$uploadedFile","_item$file","url","mediaType","MediaType","VIDEO","IMAGE","openMedia","ratio","useMemo","_fileItems$0$uploaded","_fileItems$","length","Math","max","columns","combinedFilesLength","galleryContent","createElement","fileItem","onClick","shortedFiles","slice","index","remainingItemsLength","undefined","StyledGallery","StyledGalleryEditModeWrapper","onDragOver","onDrop","StyledGalleryItemWrapper","uploadedFileLength","displayName","_default","exports"],"sources":["../../src/components/Gallery.tsx"],"sourcesContent":["import { uploadFile } from '@chayns-components/core';\nimport type { FileItem, Image, Video } from '@chayns-components/core/lib/types/file'; // TODO: Check why absolute import is needed\nimport React, { DragEvent, FC, useCallback, useEffect, useMemo, useState } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\nimport { filterDuplicateFile, generatePreviewUrl, generateVideoThumbnail } from '../utils/file';\nimport AddFile from './add-file/AddFile';\nimport GalleryItem from './gallery-item/GalleryItem';\nimport {\n StyledGallery,\n StyledGalleryEditModeWrapper,\n StyledGalleryItemWrapper,\n} from './Gallery.styles';\nimport { MediaType, openMedia, OpenMediaItem } from 'chayns-api';\n\nexport type GalleryProps = {\n /**\n * AccessToken of the user\n */\n accessToken: string;\n /**\n * Whether drag and drop is allowed or not\n */\n allowDragAndDrop?: boolean;\n /**\n * Whether images and videos can be edited\n */\n isEditMode?: boolean;\n /**\n * Images and videos which should be displayed\n */\n files?: FileItem[];\n /**\n * Function to be executed when files are added and uploaded\n */\n onAdd?: (files: FileItem) => void;\n /**\n * Function to be executed when a file is removed\n */\n onRemove?: (file: FileItem) => void;\n /**\n * PersonId of the user\n */\n personId: string;\n};\n\nconst Gallery: FC<GalleryProps> = ({\n accessToken,\n allowDragAndDrop = false,\n isEditMode = false,\n files,\n onAdd,\n onRemove,\n personId,\n}) => {\n const [fileItems, setFileItems] = useState<FileItem[]>([]);\n\n /**\n * This function adds a previewUrl to fileItems\n */\n const handlePreviewUrlCallback = (previewUrl: string, file: FileItem) => {\n setFileItems((prevState) =>\n prevState.map((prevFile) => {\n if (prevFile.id === file.id) {\n return { ...prevFile, previewUrl };\n }\n return prevFile;\n })\n );\n };\n\n /**\n * This function adds uploaded files to fileItems\n */\n const handleUploadFileCallback = useCallback(\n (file: FileItem, UploadedFile: Video | Image) => {\n setFileItems((prevState) =>\n prevState.map((prevFile) => {\n if (prevFile.id === file.id) {\n if (typeof onAdd === 'function') {\n onAdd({\n ...prevFile,\n uploadedFile: UploadedFile,\n state: 'uploaded',\n });\n }\n\n return {\n ...prevFile,\n uploadedFile: UploadedFile,\n state: 'uploaded',\n };\n }\n return prevFile;\n })\n );\n },\n [onAdd]\n );\n\n /**\n * Prepares files for previewUrl and upload\n */\n useEffect(() => {\n const filesToGeneratePreview = fileItems.filter(\n (file) => file.file && !file.previewUrl && (file.state === 'none' || !file.state)\n );\n\n const filesToUpload = fileItems.filter(\n (file) => !file.uploadedFile && file.state !== 'uploading'\n );\n\n filesToGeneratePreview.forEach((file) => {\n if (!file.file) {\n return;\n }\n\n if (file.file.type.includes('video/')) {\n generateVideoThumbnail({\n file: file.file,\n callback: (previewUrl) => handlePreviewUrlCallback(previewUrl, file),\n });\n\n return;\n }\n\n generatePreviewUrl({\n file: file.file,\n callback: (previewUrl) => handlePreviewUrlCallback(previewUrl, file),\n });\n });\n\n filesToUpload.forEach((file) => {\n setFileItems((prevState) =>\n prevState.map((prevFile) => {\n if (prevFile.id === file.id) {\n return { ...prevFile, state: 'uploading' };\n }\n return prevFile;\n })\n );\n\n void uploadFile({\n fileToUpload: file,\n personId,\n accessToken,\n callback: (UploadedFile) => handleUploadFileCallback(file, UploadedFile),\n });\n });\n }, [accessToken, fileItems, handleUploadFileCallback, personId]);\n\n /**\n * This function formats and adds files to fileItems\n */\n const handleAddFiles = useCallback(\n (filesToAdd: File[]) => {\n const newFileItems: FileItem[] = [];\n\n filesToAdd.forEach((file) => {\n if (file && !filterDuplicateFile({ files: fileItems, newFile: file })) {\n newFileItems.push({\n id: uuidv4(),\n file,\n state: 'none',\n });\n }\n });\n\n setFileItems((prevState) => [...prevState, ...newFileItems]);\n },\n [fileItems]\n );\n\n /**\n * This function adds external files to fileItems\n */\n useEffect(() => {\n if (files) {\n const newFileItems: FileItem[] = [];\n\n files.forEach((file) => {\n newFileItems.push({\n id: uuidv4(),\n uploadedFile: file.uploadedFile,\n file: file.file,\n state: file.uploadedFile ? 'uploaded' : 'none',\n });\n });\n\n setFileItems((prevState) => [...prevState, ...newFileItems]);\n }\n }, [files]);\n\n /**\n * This function deletes a selected file from the file list\n */\n const handleDeleteFile = useCallback(\n (id?: string) => {\n let fileToDelete: FileItem | undefined;\n\n const filteredFiles = fileItems.filter((file) => {\n const fileId = file.id;\n\n if (fileId === id) {\n fileToDelete = file;\n }\n\n return fileId !== id;\n });\n\n setFileItems(filteredFiles);\n\n if (!fileToDelete || typeof onRemove !== 'function') {\n return;\n }\n\n onRemove(fileToDelete);\n },\n [fileItems, onRemove]\n );\n\n /**\n * This function handles the drag and drop\n */\n const handleDrop = useCallback(\n (e: DragEvent<HTMLDivElement>) => {\n if (!allowDragAndDrop) {\n return;\n }\n\n e.preventDefault();\n const draggedFiles = Array.from(e.dataTransfer.files);\n\n handleAddFiles(draggedFiles);\n },\n [allowDragAndDrop, handleAddFiles]\n );\n\n /**\n * Opens the files in a slideShow\n */\n const openFiles = useCallback(\n (file: FileItem) => {\n const startIndex = fileItems.findIndex((item) => item.id === file.id);\n\n console.debug('Files: ', fileItems);\n\n const items: OpenMediaItem[] = fileItems.map((item) => ({\n url: item.uploadedFile?.url ?? '',\n mediaType: item.file?.type.includes('video/') ? MediaType.VIDEO : MediaType.IMAGE,\n }));\n\n console.debug('MediaItem: ', items);\n\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n void openMedia({ items, startIndex });\n },\n [fileItems]\n );\n\n /**\n * Returns the ratio of the single file\n */\n const ratio = useMemo(() => {\n switch (fileItems.length) {\n case 0:\n return 0;\n case 1:\n return Math.max(fileItems[0]?.uploadedFile?.ratio ?? 1, 1);\n case 2:\n return 2;\n case 3:\n return 3;\n default:\n return 1;\n }\n }, [fileItems]);\n\n /**\n * Returns the number of columns\n */\n const columns = useMemo(() => {\n const combinedFilesLength = fileItems.length;\n\n if (combinedFilesLength <= 1) {\n return '';\n }\n\n return `repeat(${combinedFilesLength === 3 ? 3 : 2}, 1fr)`;\n }, [fileItems.length]);\n\n const galleryContent = useMemo(() => {\n const combinedFilesLength = fileItems.length;\n\n if (isEditMode) {\n const items = fileItems.map((file) => (\n <GalleryItem\n key={file.id}\n fileItem={file}\n isEditMode\n onClick={openFiles}\n handleDeleteFile={handleDeleteFile}\n />\n ));\n\n items.push(<AddFile key=\"add_file\" onAdd={handleAddFiles} />);\n\n return items;\n }\n\n const shortedFiles = fileItems.slice(0, 4);\n\n return shortedFiles.map((file, index) => (\n <GalleryItem\n key={file.id}\n fileItem={file}\n isEditMode={false}\n handleDeleteFile={handleDeleteFile}\n onClick={openFiles}\n remainingItemsLength={\n combinedFilesLength > 4 && index === 3 ? combinedFilesLength : undefined\n }\n />\n ));\n }, [fileItems, isEditMode, handleAddFiles, openFiles, handleDeleteFile]);\n\n return useMemo(\n () => (\n <StyledGallery>\n {isEditMode ? (\n <StyledGalleryEditModeWrapper\n onDragOver={(e) => e.preventDefault()}\n onDrop={(e) => void handleDrop(e)}\n >\n {galleryContent}\n </StyledGalleryEditModeWrapper>\n ) : (\n <StyledGalleryItemWrapper\n ratio={ratio}\n columns={columns}\n uploadedFileLength={fileItems.length}\n >\n {galleryContent}\n </StyledGalleryItemWrapper>\n )}\n </StyledGallery>\n ),\n [isEditMode, galleryContent, ratio, columns, fileItems.length, handleDrop]\n );\n};\n\nGallery.displayName = 'Gallery';\n\nexport default Gallery;\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAC,uBAAA,CAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,KAAA,GAAAJ,OAAA;AACA,IAAAK,QAAA,GAAAC,sBAAA,CAAAN,OAAA;AACA,IAAAO,YAAA,GAAAD,sBAAA,CAAAN,OAAA;AACA,IAAAQ,QAAA,GAAAR,OAAA;AAKA,IAAAS,UAAA,GAAAT,OAAA;AAAiE,SAAAM,uBAAAI,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAZ,wBAAAQ,GAAA,EAAAI,WAAA,SAAAA,WAAA,IAAAJ,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAQ,KAAA,GAAAL,wBAAA,CAAAC,WAAA,OAAAI,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAT,GAAA,YAAAQ,KAAA,CAAAE,GAAA,CAAAV,GAAA,SAAAW,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAhB,GAAA,QAAAgB,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAnB,GAAA,EAAAgB,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAf,GAAA,EAAAgB,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAhB,GAAA,CAAAgB,GAAA,SAAAL,MAAA,CAAAT,OAAA,GAAAF,GAAA,MAAAQ,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAArB,GAAA,EAAAW,MAAA,YAAAA,MAAA;AAXqB;;AA4CtF,MAAMW,OAAyB,GAAGC,IAAA,IAQ5B;EAAA,IAR6B;IAC/BC,WAAW;IACXC,gBAAgB,GAAG,KAAK;IACxBC,UAAU,GAAG,KAAK;IAClBC,KAAK;IACLC,KAAK;IACLC,QAAQ;IACRC;EACJ,CAAC,GAAAP,IAAA;EACG,MAAM,CAACQ,SAAS,EAAEC,YAAY,CAAC,GAAG,IAAAC,eAAQ,EAAa,EAAE,CAAC;;EAE1D;AACJ;AACA;EACI,MAAMC,wBAAwB,GAAGA,CAACC,UAAkB,EAAEC,IAAc,KAAK;IACrEJ,YAAY,CAAEK,SAAS,IACnBA,SAAS,CAACC,GAAG,CAAEC,QAAQ,IAAK;MACxB,IAAIA,QAAQ,CAACC,EAAE,KAAKJ,IAAI,CAACI,EAAE,EAAE;QACzB,OAAO;UAAE,GAAGD,QAAQ;UAAEJ;QAAW,CAAC;MACtC;MACA,OAAOI,QAAQ;IACnB,CAAC,CACL,CAAC;EACL,CAAC;;EAED;AACJ;AACA;EACI,MAAME,wBAAwB,GAAG,IAAAC,kBAAW,EACxC,CAACN,IAAc,EAAEO,YAA2B,KAAK;IAC7CX,YAAY,CAAEK,SAAS,IACnBA,SAAS,CAACC,GAAG,CAAEC,QAAQ,IAAK;MACxB,IAAIA,QAAQ,CAACC,EAAE,KAAKJ,IAAI,CAACI,EAAE,EAAE;QACzB,IAAI,OAAOZ,KAAK,KAAK,UAAU,EAAE;UAC7BA,KAAK,CAAC;YACF,GAAGW,QAAQ;YACXK,YAAY,EAAED,YAAY;YAC1BE,KAAK,EAAE;UACX,CAAC,CAAC;QACN;QAEA,OAAO;UACH,GAAGN,QAAQ;UACXK,YAAY,EAAED,YAAY;UAC1BE,KAAK,EAAE;QACX,CAAC;MACL;MACA,OAAON,QAAQ;IACnB,CAAC,CACL,CAAC;EACL,CAAC,EACD,CAACX,KAAK,CACV,CAAC;;EAED;AACJ;AACA;EACI,IAAAkB,gBAAS,EAAC,MAAM;IACZ,MAAMC,sBAAsB,GAAGhB,SAAS,CAACiB,MAAM,CAC1CZ,IAAI,IAAKA,IAAI,CAACA,IAAI,IAAI,CAACA,IAAI,CAACD,UAAU,KAAKC,IAAI,CAACS,KAAK,KAAK,MAAM,IAAI,CAACT,IAAI,CAACS,KAAK,CACpF,CAAC;IAED,MAAMI,aAAa,GAAGlB,SAAS,CAACiB,MAAM,CACjCZ,IAAI,IAAK,CAACA,IAAI,CAACQ,YAAY,IAAIR,IAAI,CAACS,KAAK,KAAK,WACnD,CAAC;IAEDE,sBAAsB,CAACG,OAAO,CAAEd,IAAI,IAAK;MACrC,IAAI,CAACA,IAAI,CAACA,IAAI,EAAE;QACZ;MACJ;MAEA,IAAIA,IAAI,CAACA,IAAI,CAACe,IAAI,CAACC,QAAQ,CAAC,QAAQ,CAAC,EAAE;QACnC,IAAAC,4BAAsB,EAAC;UACnBjB,IAAI,EAAEA,IAAI,CAACA,IAAI;UACfkB,QAAQ,EAAGnB,UAAU,IAAKD,wBAAwB,CAACC,UAAU,EAAEC,IAAI;QACvE,CAAC,CAAC;QAEF;MACJ;MAEA,IAAAmB,wBAAkB,EAAC;QACfnB,IAAI,EAAEA,IAAI,CAACA,IAAI;QACfkB,QAAQ,EAAGnB,UAAU,IAAKD,wBAAwB,CAACC,UAAU,EAAEC,IAAI;MACvE,CAAC,CAAC;IACN,CAAC,CAAC;IAEFa,aAAa,CAACC,OAAO,CAAEd,IAAI,IAAK;MAC5BJ,YAAY,CAAEK,SAAS,IACnBA,SAAS,CAACC,GAAG,CAAEC,QAAQ,IAAK;QACxB,IAAIA,QAAQ,CAACC,EAAE,KAAKJ,IAAI,CAACI,EAAE,EAAE;UACzB,OAAO;YAAE,GAAGD,QAAQ;YAAEM,KAAK,EAAE;UAAY,CAAC;QAC9C;QACA,OAAON,QAAQ;MACnB,CAAC,CACL,CAAC;MAED,KAAK,IAAAiB,gBAAU,EAAC;QACZC,YAAY,EAAErB,IAAI;QAClBN,QAAQ;QACRN,WAAW;QACX8B,QAAQ,EAAGX,YAAY,IAAKF,wBAAwB,CAACL,IAAI,EAAEO,YAAY;MAC3E,CAAC,CAAC;IACN,CAAC,CAAC;EACN,CAAC,EAAE,CAACnB,WAAW,EAAEO,SAAS,EAAEU,wBAAwB,EAAEX,QAAQ,CAAC,CAAC;;EAEhE;AACJ;AACA;EACI,MAAM4B,cAAc,GAAG,IAAAhB,kBAAW,EAC7BiB,UAAkB,IAAK;IACpB,MAAMC,YAAwB,GAAG,EAAE;IAEnCD,UAAU,CAACT,OAAO,CAAEd,IAAI,IAAK;MACzB,IAAIA,IAAI,IAAI,CAAC,IAAAyB,yBAAmB,EAAC;QAAElC,KAAK,EAAEI,SAAS;QAAE+B,OAAO,EAAE1B;MAAK,CAAC,CAAC,EAAE;QACnEwB,YAAY,CAACG,IAAI,CAAC;UACdvB,EAAE,EAAE,IAAAwB,QAAM,EAAC,CAAC;UACZ5B,IAAI;UACJS,KAAK,EAAE;QACX,CAAC,CAAC;MACN;IACJ,CAAC,CAAC;IAEFb,YAAY,CAAEK,SAAS,IAAK,CAAC,GAAGA,SAAS,EAAE,GAAGuB,YAAY,CAAC,CAAC;EAChE,CAAC,EACD,CAAC7B,SAAS,CACd,CAAC;;EAED;AACJ;AACA;EACI,IAAAe,gBAAS,EAAC,MAAM;IACZ,IAAInB,KAAK,EAAE;MACP,MAAMiC,YAAwB,GAAG,EAAE;MAEnCjC,KAAK,CAACuB,OAAO,CAAEd,IAAI,IAAK;QACpBwB,YAAY,CAACG,IAAI,CAAC;UACdvB,EAAE,EAAE,IAAAwB,QAAM,EAAC,CAAC;UACZpB,YAAY,EAAER,IAAI,CAACQ,YAAY;UAC/BR,IAAI,EAAEA,IAAI,CAACA,IAAI;UACfS,KAAK,EAAET,IAAI,CAACQ,YAAY,GAAG,UAAU,GAAG;QAC5C,CAAC,CAAC;MACN,CAAC,CAAC;MAEFZ,YAAY,CAAEK,SAAS,IAAK,CAAC,GAAGA,SAAS,EAAE,GAAGuB,YAAY,CAAC,CAAC;IAChE;EACJ,CAAC,EAAE,CAACjC,KAAK,CAAC,CAAC;;EAEX;AACJ;AACA;EACI,MAAMsC,gBAAgB,GAAG,IAAAvB,kBAAW,EAC/BF,EAAW,IAAK;IACb,IAAI0B,YAAkC;IAEtC,MAAMC,aAAa,GAAGpC,SAAS,CAACiB,MAAM,CAAEZ,IAAI,IAAK;MAC7C,MAAMgC,MAAM,GAAGhC,IAAI,CAACI,EAAE;MAEtB,IAAI4B,MAAM,KAAK5B,EAAE,EAAE;QACf0B,YAAY,GAAG9B,IAAI;MACvB;MAEA,OAAOgC,MAAM,KAAK5B,EAAE;IACxB,CAAC,CAAC;IAEFR,YAAY,CAACmC,aAAa,CAAC;IAE3B,IAAI,CAACD,YAAY,IAAI,OAAOrC,QAAQ,KAAK,UAAU,EAAE;MACjD;IACJ;IAEAA,QAAQ,CAACqC,YAAY,CAAC;EAC1B,CAAC,EACD,CAACnC,SAAS,EAAEF,QAAQ,CACxB,CAAC;;EAED;AACJ;AACA;EACI,MAAMwC,UAAU,GAAG,IAAA3B,kBAAW,EACzB4B,CAA4B,IAAK;IAC9B,IAAI,CAAC7C,gBAAgB,EAAE;MACnB;IACJ;IAEA6C,CAAC,CAACC,cAAc,CAAC,CAAC;IAClB,MAAMC,YAAY,GAAGC,KAAK,CAACC,IAAI,CAACJ,CAAC,CAACK,YAAY,CAAChD,KAAK,CAAC;IAErD+B,cAAc,CAACc,YAAY,CAAC;EAChC,CAAC,EACD,CAAC/C,gBAAgB,EAAEiC,cAAc,CACrC,CAAC;;EAED;AACJ;AACA;EACI,MAAMkB,SAAS,GAAG,IAAAlC,kBAAW,EACxBN,IAAc,IAAK;IAChB,MAAMyC,UAAU,GAAG9C,SAAS,CAAC+C,SAAS,CAAEC,IAAI,IAAKA,IAAI,CAACvC,EAAE,KAAKJ,IAAI,CAACI,EAAE,CAAC;IAErEwC,OAAO,CAACC,KAAK,CAAC,SAAS,EAAElD,SAAS,CAAC;IAEnC,MAAMmD,KAAsB,GAAGnD,SAAS,CAACO,GAAG,CAAEyC,IAAI;MAAA,IAAAI,qBAAA,EAAAC,kBAAA,EAAAC,UAAA;MAAA,OAAM;QACpDC,GAAG,GAAAH,qBAAA,IAAAC,kBAAA,GAAEL,IAAI,CAACnC,YAAY,cAAAwC,kBAAA,uBAAjBA,kBAAA,CAAmBE,GAAG,cAAAH,qBAAA,cAAAA,qBAAA,GAAI,EAAE;QACjCI,SAAS,EAAE,CAAAF,UAAA,GAAAN,IAAI,CAAC3C,IAAI,cAAAiD,UAAA,eAATA,UAAA,CAAWlC,IAAI,CAACC,QAAQ,CAAC,QAAQ,CAAC,GAAGoC,oBAAS,CAACC,KAAK,GAAGD,oBAAS,CAACE;MAChF,CAAC;IAAA,CAAC,CAAC;IAEHV,OAAO,CAACC,KAAK,CAAC,aAAa,EAAEC,KAAK,CAAC;;IAEnC;IACA;IACA,KAAK,IAAAS,oBAAS,EAAC;MAAET,KAAK;MAAEL;IAAW,CAAC,CAAC;EACzC,CAAC,EACD,CAAC9C,SAAS,CACd,CAAC;;EAED;AACJ;AACA;EACI,MAAM6D,KAAK,GAAG,IAAAC,cAAO,EAAC,MAAM;IAAA,IAAAC,qBAAA,EAAAC,WAAA;IACxB,QAAQhE,SAAS,CAACiE,MAAM;MACpB,KAAK,CAAC;QACF,OAAO,CAAC;MACZ,KAAK,CAAC;QACF,OAAOC,IAAI,CAACC,GAAG,EAAAJ,qBAAA,IAAAC,WAAA,GAAChE,SAAS,CAAC,CAAC,CAAC,cAAAgE,WAAA,gBAAAA,WAAA,GAAZA,WAAA,CAAcnD,YAAY,cAAAmD,WAAA,uBAA1BA,WAAA,CAA4BH,KAAK,cAAAE,qBAAA,cAAAA,qBAAA,GAAI,CAAC,EAAE,CAAC,CAAC;MAC9D,KAAK,CAAC;QACF,OAAO,CAAC;MACZ,KAAK,CAAC;QACF,OAAO,CAAC;MACZ;QACI,OAAO,CAAC;IAChB;EACJ,CAAC,EAAE,CAAC/D,SAAS,CAAC,CAAC;;EAEf;AACJ;AACA;EACI,MAAMoE,OAAO,GAAG,IAAAN,cAAO,EAAC,MAAM;IAC1B,MAAMO,mBAAmB,GAAGrE,SAAS,CAACiE,MAAM;IAE5C,IAAII,mBAAmB,IAAI,CAAC,EAAE;MAC1B,OAAO,EAAE;IACb;IAEA,OAAQ,UAASA,mBAAmB,KAAK,CAAC,GAAG,CAAC,GAAG,CAAE,QAAO;EAC9D,CAAC,EAAE,CAACrE,SAAS,CAACiE,MAAM,CAAC,CAAC;EAEtB,MAAMK,cAAc,GAAG,IAAAR,cAAO,EAAC,MAAM;IACjC,MAAMO,mBAAmB,GAAGrE,SAAS,CAACiE,MAAM;IAE5C,IAAItE,UAAU,EAAE;MACZ,MAAMwD,KAAK,GAAGnD,SAAS,CAACO,GAAG,CAAEF,IAAI,iBAC7B7C,MAAA,CAAAW,OAAA,CAAAoG,aAAA,CAACzG,YAAA,CAAAK,OAAW;QACRc,GAAG,EAAEoB,IAAI,CAACI,EAAG;QACb+D,QAAQ,EAAEnE,IAAK;QACfV,UAAU;QACV8E,OAAO,EAAE5B,SAAU;QACnBX,gBAAgB,EAAEA;MAAiB,CACtC,CACJ,CAAC;MAEFiB,KAAK,CAACnB,IAAI,eAACxE,MAAA,CAAAW,OAAA,CAAAoG,aAAA,CAAC3G,QAAA,CAAAO,OAAO;QAACc,GAAG,EAAC,UAAU;QAACY,KAAK,EAAE8B;MAAe,CAAE,CAAC,CAAC;MAE7D,OAAOwB,KAAK;IAChB;IAEA,MAAMuB,YAAY,GAAG1E,SAAS,CAAC2E,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;IAE1C,OAAOD,YAAY,CAACnE,GAAG,CAAC,CAACF,IAAI,EAAEuE,KAAK,kBAChCpH,MAAA,CAAAW,OAAA,CAAAoG,aAAA,CAACzG,YAAA,CAAAK,OAAW;MACRc,GAAG,EAAEoB,IAAI,CAACI,EAAG;MACb+D,QAAQ,EAAEnE,IAAK;MACfV,UAAU,EAAE,KAAM;MAClBuC,gBAAgB,EAAEA,gBAAiB;MACnCuC,OAAO,EAAE5B,SAAU;MACnBgC,oBAAoB,EAChBR,mBAAmB,GAAG,CAAC,IAAIO,KAAK,KAAK,CAAC,GAAGP,mBAAmB,GAAGS;IAClE,CACJ,CACJ,CAAC;EACN,CAAC,EAAE,CAAC9E,SAAS,EAAEL,UAAU,EAAEgC,cAAc,EAAEkB,SAAS,EAAEX,gBAAgB,CAAC,CAAC;EAExE,OAAO,IAAA4B,cAAO,EACV,mBACItG,MAAA,CAAAW,OAAA,CAAAoG,aAAA,CAACxG,QAAA,CAAAgH,aAAa,QACTpF,UAAU,gBACPnC,MAAA,CAAAW,OAAA,CAAAoG,aAAA,CAACxG,QAAA,CAAAiH,4BAA4B;IACzBC,UAAU,EAAG1C,CAAC,IAAKA,CAAC,CAACC,cAAc,CAAC,CAAE;IACtC0C,MAAM,EAAG3C,CAAC,IAAK,KAAKD,UAAU,CAACC,CAAC;EAAE,GAEjC+B,cACyB,CAAC,gBAE/B9G,MAAA,CAAAW,OAAA,CAAAoG,aAAA,CAACxG,QAAA,CAAAoH,wBAAwB;IACrBtB,KAAK,EAAEA,KAAM;IACbO,OAAO,EAAEA,OAAQ;IACjBgB,kBAAkB,EAAEpF,SAAS,CAACiE;EAAO,GAEpCK,cACqB,CAEnB,CAClB,EACD,CAAC3E,UAAU,EAAE2E,cAAc,EAAET,KAAK,EAAEO,OAAO,EAAEpE,SAAS,CAACiE,MAAM,EAAE3B,UAAU,CAC7E,CAAC;AACL,CAAC;AAED/C,OAAO,CAAC8F,WAAW,GAAG,SAAS;AAAC,IAAAC,QAAA,GAEjB/F,OAAO;AAAAgG,OAAA,CAAApH,OAAA,GAAAmH,QAAA"}
|
|
1
|
+
{"version":3,"file":"Gallery.js","names":["_core","require","_react","_interopRequireWildcard","_uuid","_file","_AddFile","_interopRequireDefault","_GalleryItem","_Gallery","_chaynsApi","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","Gallery","_ref","accessToken","allowDragAndDrop","isEditMode","files","onAdd","onRemove","personId","fileItems","setFileItems","useState","handlePreviewUrlCallback","previewUrl","file","prevState","map","prevFile","id","handleUploadFileCallback","useCallback","UploadedFile","uploadedFile","state","useEffect","filesToGeneratePreview","filter","filesToUpload","forEach","type","includes","generateVideoThumbnail","callback","generatePreviewUrl","uploadFile","fileToUpload","handleAddFiles","filesToAdd","newFileItems","filterDuplicateFile","newFile","push","uuidv4","handleDeleteFile","fileToDelete","filteredFiles","fileId","handleDrop","e","preventDefault","draggedFiles","Array","from","dataTransfer","openFiles","startIndex","findIndex","item","items","_item$uploadedFile$ur","_item$uploadedFile","_item$file","url","replace","mediaType","MediaType","VIDEO","IMAGE","openMedia","ratio","useMemo","_fileItems$0$uploaded","_fileItems$","length","Math","max","columns","combinedFilesLength","galleryContent","createElement","fileItem","onClick","shortedFiles","slice","index","remainingItemsLength","undefined","StyledGallery","StyledGalleryEditModeWrapper","onDragOver","onDrop","StyledGalleryItemWrapper","uploadedFileLength","displayName","_default","exports"],"sources":["../../src/components/Gallery.tsx"],"sourcesContent":["import { uploadFile } from '@chayns-components/core';\nimport type { FileItem, Image, Video } from '@chayns-components/core/lib/types/file'; // TODO: Check why absolute import is needed\nimport React, { DragEvent, FC, useCallback, useEffect, useMemo, useState } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\nimport { filterDuplicateFile, generatePreviewUrl, generateVideoThumbnail } from '../utils/file';\nimport AddFile from './add-file/AddFile';\nimport GalleryItem from './gallery-item/GalleryItem';\nimport {\n StyledGallery,\n StyledGalleryEditModeWrapper,\n StyledGalleryItemWrapper,\n} from './Gallery.styles';\nimport { MediaType, openMedia, OpenMediaItem } from 'chayns-api';\n\nexport type GalleryProps = {\n /**\n * AccessToken of the user\n */\n accessToken: string;\n /**\n * Whether drag and drop is allowed or not\n */\n allowDragAndDrop?: boolean;\n /**\n * Whether images and videos can be edited\n */\n isEditMode?: boolean;\n /**\n * Images and videos which should be displayed\n */\n files?: FileItem[];\n /**\n * Function to be executed when files are added and uploaded\n */\n onAdd?: (files: FileItem) => void;\n /**\n * Function to be executed when a file is removed\n */\n onRemove?: (file: FileItem) => void;\n /**\n * PersonId of the user\n */\n personId: string;\n};\n\nconst Gallery: FC<GalleryProps> = ({\n accessToken,\n allowDragAndDrop = false,\n isEditMode = false,\n files,\n onAdd,\n onRemove,\n personId,\n}) => {\n const [fileItems, setFileItems] = useState<FileItem[]>([]);\n\n /**\n * This function adds a previewUrl to fileItems\n */\n const handlePreviewUrlCallback = (previewUrl: string, file: FileItem) => {\n setFileItems((prevState) =>\n prevState.map((prevFile) => {\n if (prevFile.id === file.id) {\n return { ...prevFile, previewUrl };\n }\n return prevFile;\n })\n );\n };\n\n /**\n * This function adds uploaded files to fileItems\n */\n const handleUploadFileCallback = useCallback(\n (file: FileItem, UploadedFile: Video | Image) => {\n setFileItems((prevState) =>\n prevState.map((prevFile) => {\n if (prevFile.id === file.id) {\n if (typeof onAdd === 'function') {\n onAdd({\n ...prevFile,\n uploadedFile: UploadedFile,\n state: 'uploaded',\n });\n }\n\n return {\n ...prevFile,\n uploadedFile: UploadedFile,\n state: 'uploaded',\n };\n }\n return prevFile;\n })\n );\n },\n [onAdd]\n );\n\n /**\n * Prepares files for previewUrl and upload\n */\n useEffect(() => {\n const filesToGeneratePreview = fileItems.filter(\n (file) => file.file && !file.previewUrl && (file.state === 'none' || !file.state)\n );\n\n const filesToUpload = fileItems.filter(\n (file) => !file.uploadedFile && file.state !== 'uploading'\n );\n\n filesToGeneratePreview.forEach((file) => {\n if (!file.file) {\n return;\n }\n\n if (file.file.type.includes('video/')) {\n generateVideoThumbnail({\n file: file.file,\n callback: (previewUrl) => handlePreviewUrlCallback(previewUrl, file),\n });\n\n return;\n }\n\n generatePreviewUrl({\n file: file.file,\n callback: (previewUrl) => handlePreviewUrlCallback(previewUrl, file),\n });\n });\n\n filesToUpload.forEach((file) => {\n setFileItems((prevState) =>\n prevState.map((prevFile) => {\n if (prevFile.id === file.id) {\n return { ...prevFile, state: 'uploading' };\n }\n return prevFile;\n })\n );\n\n void uploadFile({\n fileToUpload: file,\n personId,\n accessToken,\n callback: (UploadedFile) => handleUploadFileCallback(file, UploadedFile),\n });\n });\n }, [accessToken, fileItems, handleUploadFileCallback, personId]);\n\n /**\n * This function formats and adds files to fileItems\n */\n const handleAddFiles = useCallback(\n (filesToAdd: File[]) => {\n const newFileItems: FileItem[] = [];\n\n filesToAdd.forEach((file) => {\n if (file && !filterDuplicateFile({ files: fileItems, newFile: file })) {\n newFileItems.push({\n id: uuidv4(),\n file,\n state: 'none',\n });\n }\n });\n\n setFileItems((prevState) => [...prevState, ...newFileItems]);\n },\n [fileItems]\n );\n\n /**\n * This function adds external files to fileItems\n */\n useEffect(() => {\n if (files) {\n const newFileItems: FileItem[] = [];\n\n files.forEach((file) => {\n newFileItems.push({\n id: uuidv4(),\n uploadedFile: file.uploadedFile,\n file: file.file,\n state: file.uploadedFile ? 'uploaded' : 'none',\n });\n });\n\n setFileItems((prevState) => [...prevState, ...newFileItems]);\n }\n }, [files]);\n\n /**\n * This function deletes a selected file from the file list\n */\n const handleDeleteFile = useCallback(\n (id?: string) => {\n let fileToDelete: FileItem | undefined;\n\n const filteredFiles = fileItems.filter((file) => {\n const fileId = file.id;\n\n if (fileId === id) {\n fileToDelete = file;\n }\n\n return fileId !== id;\n });\n\n setFileItems(filteredFiles);\n\n if (!fileToDelete || typeof onRemove !== 'function') {\n return;\n }\n\n onRemove(fileToDelete);\n },\n [fileItems, onRemove]\n );\n\n /**\n * This function handles the drag and drop\n */\n const handleDrop = useCallback(\n (e: DragEvent<HTMLDivElement>) => {\n if (!allowDragAndDrop) {\n return;\n }\n\n e.preventDefault();\n const draggedFiles = Array.from(e.dataTransfer.files);\n\n handleAddFiles(draggedFiles);\n },\n [allowDragAndDrop, handleAddFiles]\n );\n\n /**\n * Opens the files in a slideShow\n */\n const openFiles = useCallback(\n (file: FileItem) => {\n const startIndex = fileItems.findIndex((item) => item.id === file.id);\n\n const items: OpenMediaItem[] = fileItems.map((item) => ({\n url: item.uploadedFile?.url.replace('_0.mp4', '.mp4') ?? '',\n mediaType: item.file?.type.includes('video/') ? MediaType.VIDEO : MediaType.IMAGE,\n }));\n\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n void openMedia({ items, startIndex });\n },\n [fileItems]\n );\n\n /**\n * Returns the ratio of the single file\n */\n const ratio = useMemo(() => {\n switch (fileItems.length) {\n case 0:\n return 0;\n case 1:\n return Math.max(fileItems[0]?.uploadedFile?.ratio ?? 1, 1);\n case 2:\n return 2;\n case 3:\n return 3;\n default:\n return 1;\n }\n }, [fileItems]);\n\n /**\n * Returns the number of columns\n */\n const columns = useMemo(() => {\n const combinedFilesLength = fileItems.length;\n\n if (combinedFilesLength <= 1) {\n return '';\n }\n\n return `repeat(${combinedFilesLength === 3 ? 3 : 2}, 1fr)`;\n }, [fileItems.length]);\n\n const galleryContent = useMemo(() => {\n const combinedFilesLength = fileItems.length;\n\n if (isEditMode) {\n const items = fileItems.map((file) => (\n <GalleryItem\n key={file.id}\n fileItem={file}\n isEditMode\n onClick={openFiles}\n handleDeleteFile={handleDeleteFile}\n />\n ));\n\n items.push(<AddFile key=\"add_file\" onAdd={handleAddFiles} />);\n\n return items;\n }\n\n const shortedFiles = fileItems.slice(0, 4);\n\n return shortedFiles.map((file, index) => (\n <GalleryItem\n key={file.id}\n fileItem={file}\n isEditMode={false}\n handleDeleteFile={handleDeleteFile}\n onClick={openFiles}\n remainingItemsLength={\n combinedFilesLength > 4 && index === 3 ? combinedFilesLength : undefined\n }\n />\n ));\n }, [fileItems, isEditMode, handleAddFiles, openFiles, handleDeleteFile]);\n\n return useMemo(\n () => (\n <StyledGallery>\n {isEditMode ? (\n <StyledGalleryEditModeWrapper\n onDragOver={(e) => e.preventDefault()}\n onDrop={(e) => void handleDrop(e)}\n >\n {galleryContent}\n </StyledGalleryEditModeWrapper>\n ) : (\n <StyledGalleryItemWrapper\n ratio={ratio}\n columns={columns}\n uploadedFileLength={fileItems.length}\n >\n {galleryContent}\n </StyledGalleryItemWrapper>\n )}\n </StyledGallery>\n ),\n [isEditMode, galleryContent, ratio, columns, fileItems.length, handleDrop]\n );\n};\n\nGallery.displayName = 'Gallery';\n\nexport default Gallery;\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAC,uBAAA,CAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,KAAA,GAAAJ,OAAA;AACA,IAAAK,QAAA,GAAAC,sBAAA,CAAAN,OAAA;AACA,IAAAO,YAAA,GAAAD,sBAAA,CAAAN,OAAA;AACA,IAAAQ,QAAA,GAAAR,OAAA;AAKA,IAAAS,UAAA,GAAAT,OAAA;AAAiE,SAAAM,uBAAAI,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAZ,wBAAAQ,GAAA,EAAAI,WAAA,SAAAA,WAAA,IAAAJ,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAQ,KAAA,GAAAL,wBAAA,CAAAC,WAAA,OAAAI,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAT,GAAA,YAAAQ,KAAA,CAAAE,GAAA,CAAAV,GAAA,SAAAW,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAhB,GAAA,QAAAgB,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAnB,GAAA,EAAAgB,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAf,GAAA,EAAAgB,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAhB,GAAA,CAAAgB,GAAA,SAAAL,MAAA,CAAAT,OAAA,GAAAF,GAAA,MAAAQ,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAArB,GAAA,EAAAW,MAAA,YAAAA,MAAA;AAXqB;;AA4CtF,MAAMW,OAAyB,GAAGC,IAAA,IAQ5B;EAAA,IAR6B;IAC/BC,WAAW;IACXC,gBAAgB,GAAG,KAAK;IACxBC,UAAU,GAAG,KAAK;IAClBC,KAAK;IACLC,KAAK;IACLC,QAAQ;IACRC;EACJ,CAAC,GAAAP,IAAA;EACG,MAAM,CAACQ,SAAS,EAAEC,YAAY,CAAC,GAAG,IAAAC,eAAQ,EAAa,EAAE,CAAC;;EAE1D;AACJ;AACA;EACI,MAAMC,wBAAwB,GAAGA,CAACC,UAAkB,EAAEC,IAAc,KAAK;IACrEJ,YAAY,CAAEK,SAAS,IACnBA,SAAS,CAACC,GAAG,CAAEC,QAAQ,IAAK;MACxB,IAAIA,QAAQ,CAACC,EAAE,KAAKJ,IAAI,CAACI,EAAE,EAAE;QACzB,OAAO;UAAE,GAAGD,QAAQ;UAAEJ;QAAW,CAAC;MACtC;MACA,OAAOI,QAAQ;IACnB,CAAC,CACL,CAAC;EACL,CAAC;;EAED;AACJ;AACA;EACI,MAAME,wBAAwB,GAAG,IAAAC,kBAAW,EACxC,CAACN,IAAc,EAAEO,YAA2B,KAAK;IAC7CX,YAAY,CAAEK,SAAS,IACnBA,SAAS,CAACC,GAAG,CAAEC,QAAQ,IAAK;MACxB,IAAIA,QAAQ,CAACC,EAAE,KAAKJ,IAAI,CAACI,EAAE,EAAE;QACzB,IAAI,OAAOZ,KAAK,KAAK,UAAU,EAAE;UAC7BA,KAAK,CAAC;YACF,GAAGW,QAAQ;YACXK,YAAY,EAAED,YAAY;YAC1BE,KAAK,EAAE;UACX,CAAC,CAAC;QACN;QAEA,OAAO;UACH,GAAGN,QAAQ;UACXK,YAAY,EAAED,YAAY;UAC1BE,KAAK,EAAE;QACX,CAAC;MACL;MACA,OAAON,QAAQ;IACnB,CAAC,CACL,CAAC;EACL,CAAC,EACD,CAACX,KAAK,CACV,CAAC;;EAED;AACJ;AACA;EACI,IAAAkB,gBAAS,EAAC,MAAM;IACZ,MAAMC,sBAAsB,GAAGhB,SAAS,CAACiB,MAAM,CAC1CZ,IAAI,IAAKA,IAAI,CAACA,IAAI,IAAI,CAACA,IAAI,CAACD,UAAU,KAAKC,IAAI,CAACS,KAAK,KAAK,MAAM,IAAI,CAACT,IAAI,CAACS,KAAK,CACpF,CAAC;IAED,MAAMI,aAAa,GAAGlB,SAAS,CAACiB,MAAM,CACjCZ,IAAI,IAAK,CAACA,IAAI,CAACQ,YAAY,IAAIR,IAAI,CAACS,KAAK,KAAK,WACnD,CAAC;IAEDE,sBAAsB,CAACG,OAAO,CAAEd,IAAI,IAAK;MACrC,IAAI,CAACA,IAAI,CAACA,IAAI,EAAE;QACZ;MACJ;MAEA,IAAIA,IAAI,CAACA,IAAI,CAACe,IAAI,CAACC,QAAQ,CAAC,QAAQ,CAAC,EAAE;QACnC,IAAAC,4BAAsB,EAAC;UACnBjB,IAAI,EAAEA,IAAI,CAACA,IAAI;UACfkB,QAAQ,EAAGnB,UAAU,IAAKD,wBAAwB,CAACC,UAAU,EAAEC,IAAI;QACvE,CAAC,CAAC;QAEF;MACJ;MAEA,IAAAmB,wBAAkB,EAAC;QACfnB,IAAI,EAAEA,IAAI,CAACA,IAAI;QACfkB,QAAQ,EAAGnB,UAAU,IAAKD,wBAAwB,CAACC,UAAU,EAAEC,IAAI;MACvE,CAAC,CAAC;IACN,CAAC,CAAC;IAEFa,aAAa,CAACC,OAAO,CAAEd,IAAI,IAAK;MAC5BJ,YAAY,CAAEK,SAAS,IACnBA,SAAS,CAACC,GAAG,CAAEC,QAAQ,IAAK;QACxB,IAAIA,QAAQ,CAACC,EAAE,KAAKJ,IAAI,CAACI,EAAE,EAAE;UACzB,OAAO;YAAE,GAAGD,QAAQ;YAAEM,KAAK,EAAE;UAAY,CAAC;QAC9C;QACA,OAAON,QAAQ;MACnB,CAAC,CACL,CAAC;MAED,KAAK,IAAAiB,gBAAU,EAAC;QACZC,YAAY,EAAErB,IAAI;QAClBN,QAAQ;QACRN,WAAW;QACX8B,QAAQ,EAAGX,YAAY,IAAKF,wBAAwB,CAACL,IAAI,EAAEO,YAAY;MAC3E,CAAC,CAAC;IACN,CAAC,CAAC;EACN,CAAC,EAAE,CAACnB,WAAW,EAAEO,SAAS,EAAEU,wBAAwB,EAAEX,QAAQ,CAAC,CAAC;;EAEhE;AACJ;AACA;EACI,MAAM4B,cAAc,GAAG,IAAAhB,kBAAW,EAC7BiB,UAAkB,IAAK;IACpB,MAAMC,YAAwB,GAAG,EAAE;IAEnCD,UAAU,CAACT,OAAO,CAAEd,IAAI,IAAK;MACzB,IAAIA,IAAI,IAAI,CAAC,IAAAyB,yBAAmB,EAAC;QAAElC,KAAK,EAAEI,SAAS;QAAE+B,OAAO,EAAE1B;MAAK,CAAC,CAAC,EAAE;QACnEwB,YAAY,CAACG,IAAI,CAAC;UACdvB,EAAE,EAAE,IAAAwB,QAAM,EAAC,CAAC;UACZ5B,IAAI;UACJS,KAAK,EAAE;QACX,CAAC,CAAC;MACN;IACJ,CAAC,CAAC;IAEFb,YAAY,CAAEK,SAAS,IAAK,CAAC,GAAGA,SAAS,EAAE,GAAGuB,YAAY,CAAC,CAAC;EAChE,CAAC,EACD,CAAC7B,SAAS,CACd,CAAC;;EAED;AACJ;AACA;EACI,IAAAe,gBAAS,EAAC,MAAM;IACZ,IAAInB,KAAK,EAAE;MACP,MAAMiC,YAAwB,GAAG,EAAE;MAEnCjC,KAAK,CAACuB,OAAO,CAAEd,IAAI,IAAK;QACpBwB,YAAY,CAACG,IAAI,CAAC;UACdvB,EAAE,EAAE,IAAAwB,QAAM,EAAC,CAAC;UACZpB,YAAY,EAAER,IAAI,CAACQ,YAAY;UAC/BR,IAAI,EAAEA,IAAI,CAACA,IAAI;UACfS,KAAK,EAAET,IAAI,CAACQ,YAAY,GAAG,UAAU,GAAG;QAC5C,CAAC,CAAC;MACN,CAAC,CAAC;MAEFZ,YAAY,CAAEK,SAAS,IAAK,CAAC,GAAGA,SAAS,EAAE,GAAGuB,YAAY,CAAC,CAAC;IAChE;EACJ,CAAC,EAAE,CAACjC,KAAK,CAAC,CAAC;;EAEX;AACJ;AACA;EACI,MAAMsC,gBAAgB,GAAG,IAAAvB,kBAAW,EAC/BF,EAAW,IAAK;IACb,IAAI0B,YAAkC;IAEtC,MAAMC,aAAa,GAAGpC,SAAS,CAACiB,MAAM,CAAEZ,IAAI,IAAK;MAC7C,MAAMgC,MAAM,GAAGhC,IAAI,CAACI,EAAE;MAEtB,IAAI4B,MAAM,KAAK5B,EAAE,EAAE;QACf0B,YAAY,GAAG9B,IAAI;MACvB;MAEA,OAAOgC,MAAM,KAAK5B,EAAE;IACxB,CAAC,CAAC;IAEFR,YAAY,CAACmC,aAAa,CAAC;IAE3B,IAAI,CAACD,YAAY,IAAI,OAAOrC,QAAQ,KAAK,UAAU,EAAE;MACjD;IACJ;IAEAA,QAAQ,CAACqC,YAAY,CAAC;EAC1B,CAAC,EACD,CAACnC,SAAS,EAAEF,QAAQ,CACxB,CAAC;;EAED;AACJ;AACA;EACI,MAAMwC,UAAU,GAAG,IAAA3B,kBAAW,EACzB4B,CAA4B,IAAK;IAC9B,IAAI,CAAC7C,gBAAgB,EAAE;MACnB;IACJ;IAEA6C,CAAC,CAACC,cAAc,CAAC,CAAC;IAClB,MAAMC,YAAY,GAAGC,KAAK,CAACC,IAAI,CAACJ,CAAC,CAACK,YAAY,CAAChD,KAAK,CAAC;IAErD+B,cAAc,CAACc,YAAY,CAAC;EAChC,CAAC,EACD,CAAC/C,gBAAgB,EAAEiC,cAAc,CACrC,CAAC;;EAED;AACJ;AACA;EACI,MAAMkB,SAAS,GAAG,IAAAlC,kBAAW,EACxBN,IAAc,IAAK;IAChB,MAAMyC,UAAU,GAAG9C,SAAS,CAAC+C,SAAS,CAAEC,IAAI,IAAKA,IAAI,CAACvC,EAAE,KAAKJ,IAAI,CAACI,EAAE,CAAC;IAErE,MAAMwC,KAAsB,GAAGjD,SAAS,CAACO,GAAG,CAAEyC,IAAI;MAAA,IAAAE,qBAAA,EAAAC,kBAAA,EAAAC,UAAA;MAAA,OAAM;QACpDC,GAAG,GAAAH,qBAAA,IAAAC,kBAAA,GAAEH,IAAI,CAACnC,YAAY,cAAAsC,kBAAA,uBAAjBA,kBAAA,CAAmBE,GAAG,CAACC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,cAAAJ,qBAAA,cAAAA,qBAAA,GAAI,EAAE;QAC3DK,SAAS,EAAE,CAAAH,UAAA,GAAAJ,IAAI,CAAC3C,IAAI,cAAA+C,UAAA,eAATA,UAAA,CAAWhC,IAAI,CAACC,QAAQ,CAAC,QAAQ,CAAC,GAAGmC,oBAAS,CAACC,KAAK,GAAGD,oBAAS,CAACE;MAChF,CAAC;IAAA,CAAC,CAAC;;IAEH;IACA;IACA,KAAK,IAAAC,oBAAS,EAAC;MAAEV,KAAK;MAAEH;IAAW,CAAC,CAAC;EACzC,CAAC,EACD,CAAC9C,SAAS,CACd,CAAC;;EAED;AACJ;AACA;EACI,MAAM4D,KAAK,GAAG,IAAAC,cAAO,EAAC,MAAM;IAAA,IAAAC,qBAAA,EAAAC,WAAA;IACxB,QAAQ/D,SAAS,CAACgE,MAAM;MACpB,KAAK,CAAC;QACF,OAAO,CAAC;MACZ,KAAK,CAAC;QACF,OAAOC,IAAI,CAACC,GAAG,EAAAJ,qBAAA,IAAAC,WAAA,GAAC/D,SAAS,CAAC,CAAC,CAAC,cAAA+D,WAAA,gBAAAA,WAAA,GAAZA,WAAA,CAAclD,YAAY,cAAAkD,WAAA,uBAA1BA,WAAA,CAA4BH,KAAK,cAAAE,qBAAA,cAAAA,qBAAA,GAAI,CAAC,EAAE,CAAC,CAAC;MAC9D,KAAK,CAAC;QACF,OAAO,CAAC;MACZ,KAAK,CAAC;QACF,OAAO,CAAC;MACZ;QACI,OAAO,CAAC;IAChB;EACJ,CAAC,EAAE,CAAC9D,SAAS,CAAC,CAAC;;EAEf;AACJ;AACA;EACI,MAAMmE,OAAO,GAAG,IAAAN,cAAO,EAAC,MAAM;IAC1B,MAAMO,mBAAmB,GAAGpE,SAAS,CAACgE,MAAM;IAE5C,IAAII,mBAAmB,IAAI,CAAC,EAAE;MAC1B,OAAO,EAAE;IACb;IAEA,OAAQ,UAASA,mBAAmB,KAAK,CAAC,GAAG,CAAC,GAAG,CAAE,QAAO;EAC9D,CAAC,EAAE,CAACpE,SAAS,CAACgE,MAAM,CAAC,CAAC;EAEtB,MAAMK,cAAc,GAAG,IAAAR,cAAO,EAAC,MAAM;IACjC,MAAMO,mBAAmB,GAAGpE,SAAS,CAACgE,MAAM;IAE5C,IAAIrE,UAAU,EAAE;MACZ,MAAMsD,KAAK,GAAGjD,SAAS,CAACO,GAAG,CAAEF,IAAI,iBAC7B7C,MAAA,CAAAW,OAAA,CAAAmG,aAAA,CAACxG,YAAA,CAAAK,OAAW;QACRc,GAAG,EAAEoB,IAAI,CAACI,EAAG;QACb8D,QAAQ,EAAElE,IAAK;QACfV,UAAU;QACV6E,OAAO,EAAE3B,SAAU;QACnBX,gBAAgB,EAAEA;MAAiB,CACtC,CACJ,CAAC;MAEFe,KAAK,CAACjB,IAAI,eAACxE,MAAA,CAAAW,OAAA,CAAAmG,aAAA,CAAC1G,QAAA,CAAAO,OAAO;QAACc,GAAG,EAAC,UAAU;QAACY,KAAK,EAAE8B;MAAe,CAAE,CAAC,CAAC;MAE7D,OAAOsB,KAAK;IAChB;IAEA,MAAMwB,YAAY,GAAGzE,SAAS,CAAC0E,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;IAE1C,OAAOD,YAAY,CAAClE,GAAG,CAAC,CAACF,IAAI,EAAEsE,KAAK,kBAChCnH,MAAA,CAAAW,OAAA,CAAAmG,aAAA,CAACxG,YAAA,CAAAK,OAAW;MACRc,GAAG,EAAEoB,IAAI,CAACI,EAAG;MACb8D,QAAQ,EAAElE,IAAK;MACfV,UAAU,EAAE,KAAM;MAClBuC,gBAAgB,EAAEA,gBAAiB;MACnCsC,OAAO,EAAE3B,SAAU;MACnB+B,oBAAoB,EAChBR,mBAAmB,GAAG,CAAC,IAAIO,KAAK,KAAK,CAAC,GAAGP,mBAAmB,GAAGS;IAClE,CACJ,CACJ,CAAC;EACN,CAAC,EAAE,CAAC7E,SAAS,EAAEL,UAAU,EAAEgC,cAAc,EAAEkB,SAAS,EAAEX,gBAAgB,CAAC,CAAC;EAExE,OAAO,IAAA2B,cAAO,EACV,mBACIrG,MAAA,CAAAW,OAAA,CAAAmG,aAAA,CAACvG,QAAA,CAAA+G,aAAa,QACTnF,UAAU,gBACPnC,MAAA,CAAAW,OAAA,CAAAmG,aAAA,CAACvG,QAAA,CAAAgH,4BAA4B;IACzBC,UAAU,EAAGzC,CAAC,IAAKA,CAAC,CAACC,cAAc,CAAC,CAAE;IACtCyC,MAAM,EAAG1C,CAAC,IAAK,KAAKD,UAAU,CAACC,CAAC;EAAE,GAEjC8B,cACyB,CAAC,gBAE/B7G,MAAA,CAAAW,OAAA,CAAAmG,aAAA,CAACvG,QAAA,CAAAmH,wBAAwB;IACrBtB,KAAK,EAAEA,KAAM;IACbO,OAAO,EAAEA,OAAQ;IACjBgB,kBAAkB,EAAEnF,SAAS,CAACgE;EAAO,GAEpCK,cACqB,CAEnB,CAClB,EACD,CAAC1E,UAAU,EAAE0E,cAAc,EAAET,KAAK,EAAEO,OAAO,EAAEnE,SAAS,CAACgE,MAAM,EAAE1B,UAAU,CAC7E,CAAC;AACL,CAAC;AAED/C,OAAO,CAAC6F,WAAW,GAAG,SAAS;AAAC,IAAAC,QAAA,GAEjB9F,OAAO;AAAA+F,OAAA,CAAAnH,OAAA,GAAAkH,QAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@chayns-components/gallery",
|
|
3
|
-
"version": "5.0.0-beta.
|
|
3
|
+
"version": "5.0.0-beta.249",
|
|
4
4
|
"description": "A set of beautiful React components for developing your own applications with chayns.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"chayns",
|
|
@@ -50,7 +50,7 @@
|
|
|
50
50
|
"typescript": "^4.9.5"
|
|
51
51
|
},
|
|
52
52
|
"dependencies": {
|
|
53
|
-
"@chayns-components/core": "^5.0.0-beta.
|
|
53
|
+
"@chayns-components/core": "^5.0.0-beta.249",
|
|
54
54
|
"@chayns/colors": "^2.0.0",
|
|
55
55
|
"chayns-api": "^1.0.38",
|
|
56
56
|
"clsx": "^1.2.1",
|
|
@@ -65,5 +65,5 @@
|
|
|
65
65
|
"publishConfig": {
|
|
66
66
|
"access": "public"
|
|
67
67
|
},
|
|
68
|
-
"gitHead": "
|
|
68
|
+
"gitHead": "b4a1c3c2662c060c621b91260f2fe3f053259504"
|
|
69
69
|
}
|