@chayns-components/core 5.0.0-beta.920 → 5.0.0-beta.922
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/components/input/Input.js +6 -3
- package/lib/cjs/components/input/Input.js.map +1 -1
- package/lib/cjs/utils/file.js +20 -378
- package/lib/cjs/utils/file.js.map +1 -1
- package/lib/esm/components/input/Input.js +6 -3
- package/lib/esm/components/input/Input.js.map +1 -1
- package/lib/esm/utils/file.js +18 -376
- package/lib/esm/utils/file.js.map +1 -1
- package/lib/types/components/input/Input.d.ts +4 -0
- package/lib/types/utils/file.d.ts +4 -357
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file.js","names":["filterDuplicateFile","newFile","files","duplicates","filter","fileItem","name","size","length","exports","filterDuplicateFileUrls","FILE_SIZE_UNITS","getHumanSize","bytes","unitIndex","Math","round","toString","replace","isValidFileType","types","file","allowedTypesArray","split","map","type","trim","fileType","some","endsWith","baseType","slice","startsWith","MIME_TYPE_MAPPING","image","audio","video","getIconByMimeType","mimeType","icon","Object","entries","find","key"],"sources":["../../../src/utils/file.ts"],"sourcesContent":["interface FilerDuplicateFileOptions {\n files: File[];\n newFile: File;\n}\n\nexport const filterDuplicateFile = ({ newFile, files }: FilerDuplicateFileOptions) => {\n const duplicates = files.filter(\n (fileItem) => fileItem && fileItem.name === newFile.name && fileItem.size === newFile.size,\n );\n\n return duplicates.length > 0;\n};\n\ninterface FilterDuplicateFileUrlsOptions {\n files: string[];\n newFile: string;\n}\n\nexport const filterDuplicateFileUrls = ({ newFile, files }: FilterDuplicateFileUrlsOptions) => {\n const duplicates = files.filter((fileItem) => fileItem === newFile);\n\n return duplicates.length > 0;\n};\n\nconst FILE_SIZE_UNITS = ['B', 'KB', 'MB', 'GB', 'TB', 'PB'];\n\nexport const getHumanSize = (bytes: number): string => {\n let size = bytes || 0;\n let unitIndex = 0;\n\n while (size >= 1024) {\n size /= 1024;\n unitIndex += 1;\n }\n\n size = Math.round(size * 10) / 10;\n\n return `${size.toString().replace('.', ',')} ${FILE_SIZE_UNITS[unitIndex] ?? ''}`;\n};\n\ninterface IsValidFileTypeOptions {\n file: File;\n types: string;\n}\n\nexport const isValidFileType = ({ types, file }: IsValidFileTypeOptions) => {\n const allowedTypesArray = types.split(',').map((type) => type.trim());\n const fileType = file.type;\n\n return allowedTypesArray.some((type) => {\n if (type.endsWith('/*')) {\n const baseType = type.slice(0, -2); // remove '/*'\n return fileType.startsWith(baseType);\n }\n return fileType === type;\n });\n};\n\nexport const MIME_TYPE_MAPPING = {\n // Excel\n 'application/vnd.ms-excel': 'fa fa-file-excel',\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet': 'fa fa-file-excel',\n 'application/vnd.ms-excel.sheet.macroEnabled.12': 'fa fa-file-excel',\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.template': 'fa fa-file-excel',\n 'application/vnd.ms-excel.template.macroEnabled.12': 'fa fa-file-excel',\n 'application/vnd.ms-excel.addin.macroEnabled.12': 'fa fa-file-excel',\n 'application/vnd.ms-excel.sheet.binary.macroEnabled.12': 'fa fa-file-excel',\n 'application/msexcel': 'fa fa-file-excel',\n 'application/x-msexcel': 'fa fa-file-excel',\n 'application/x-ms-excel': 'fa fa-file-excel',\n 'application/x-excel': 'fa fa-file-excel',\n 'application/x-dos_ms_excel': 'fa fa-file-excel',\n 'application/xls': 'fa fa-file-excel',\n 'application/x-xls': 'fa fa-file-excel',\n 'application/vnd.ms-excel.sheet': 'fa fa-file-excel',\n 'appliaction/msexcel': 'fa fa-file-excel',\n 'application/vnd.openxmlformats-officedocument.spreadsheetml': 'fa fa-file-excel',\n 'application/vnd.oasis.opendocument.spreadsheet': 'fa fa-file-excel',\n\n // Word\n 'application/msword': 'fa fa-file-word',\n 'application/vnd.openxmlformats-officedocument.wordprocessingml.document': 'fa fa-file-word',\n 'application/vnd.ms-word.document.macroEnabled.12': 'fa fa-file-word',\n 'application/vnd.openxmlformats-officedocument.wordprocessingml.template': 'fa fa-file-word',\n 'application/vnd.ms-word.template.macroEnabled.12': 'fa fa-file-word',\n 'application/doc': 'fa fa-file-word',\n 'application/vnd.ms-word': 'fa fa-file-word',\n 'application/vnd.ms-word.document.macroEnabled': 'fa fa-file-word',\n 'application/vnd.ms-word.template.macroEnabled': 'fa fa-file-word',\n 'application/word': 'fa fa-file-word',\n 'application/x-msword': 'fa fa-file-word',\n 'application/x-msword-template': 'fa fa-file-word',\n 'application/vnd.ms-word.document': 'fa fa-file-word',\n 'application/rtf': 'fa fa-file-word',\n 'application/vnd.oasis.opendocument.text': 'fa fa-file-word',\n 'application/vnd.openxmlformats-officedocument.wordprocessingml': 'fa fa-file-word',\n\n // PDF\n 'application/pdf': 'fa fa-file-pdf',\n 'application/x-pdf': 'fa fa-file-pdf',\n 'application/vnd.pdf': 'fa fa-file-pdf',\n 'text/pdf': 'fa fa-file-pdf',\n 'application/x-bzpdf': 'fa fa-file-pdf',\n 'application/x-gzpdf': 'fa fa-file-pdf',\n 'application/x-xzpdf': 'fa fa-file-pdf',\n 'application/vnd.adobe.pdf': 'fa fa-file-pdf',\n 'application/vnd.adobe.x-mars': 'fa fa-file-pdf',\n 'application/vnd.fdf': 'fa fa-file-pdf',\n 'application/vnd.adobe.xfdf': 'fa fa-file-pdf',\n 'application/vnd.adobe.xdp+xml': 'fa fa-file-pdf',\n 'application/vnd.adobe.xfd+xml': 'fa fa-file-pdf',\n 'application/vnd.adobe.xslfo+xml': 'fa fa-file-pdf',\n 'application/vnd.adobe.pdx': 'fa fa-file-pdf',\n 'application/vnd.adobe.xsp+xml': 'fa fa-file-pdf',\n 'application/vnd.adobe.xp+xml': 'fa fa-file-pdf',\n 'application/vnd.adobe.xpp+xml': 'fa fa-file-pdf',\n 'application/vnd.adobe.xdp+zip': 'fa fa-file-pdf',\n 'application/vnd.adobe.xfd+zip': 'fa fa-file-pdf',\n 'application/vnd.adobe.xfdf+zip': 'fa fa-file-pdf',\n 'application/vnd.adobe.xslt+xml': 'fa fa-file-pdf',\n 'application/vnd.adobe.xfm+xml': 'fa fa-file-pdf',\n 'application/vnd.adobe.xsf+xml': 'fa fa-file-pdf',\n 'application/vnd.adobe.xdpxml': 'fa fa-file-pdf',\n 'application/vnd.adobe.xfa': 'fa fa-file-pdf',\n 'application/vnd.adobe.xpinstall': 'fa fa-file-pdf',\n 'application/vnd.adobe.xquery': 'fa fa-file-pdf',\n 'application/vnd.adobe.xrd+xml': 'fa fa-file-pdf',\n 'application/vnd.adobe.xspf+xml': 'fa fa-file-pdf',\n 'application/vnd.adobe.xliff+xml': 'fa fa-file-pdf',\n 'application/vnd.adobe.xfdf+xml': 'fa fa-file-pdf',\n 'application/vnd.adobe.xmp+xml': 'fa fa-file-pdf',\n 'application/vnd.adobe.xmp+zip': 'fa fa-file-pdf',\n 'application/vnd.adobe.xna+xml': 'fa fa-file-pdf',\n 'application/vnd.adobe.cif+xml': 'fa fa-file-pdf',\n 'application/vnd.adobe.edn+xml': 'fa fa-file-pdf',\n 'application/vnd.adobe.eps': 'fa fa-file-pdf',\n 'application/vnd.adobe.encase.package+xml': 'fa fa-file-pdf',\n 'application/vnd.adobe.flash.movie': 'fa fa-file-pdf',\n 'application/vnd.adobe.formscentral.fcdt': 'fa fa-file-pdf',\n 'application/vnd.adobe.illustrator': 'fa fa-file-pdf',\n 'application/vnd.adobe.flash-movie': 'fa fa-file-pdf',\n 'application/vnd.adobe.air-application-installer-package+zip': 'fa fa-file-pdf',\n\n // Zip\n 'application/zip': 'fa fa-file-archive',\n 'application/x-rar-compressed': 'fa fa-file-archive',\n 'application/x-tar': 'fa fa-file-archive',\n 'application/x-7z-compressed': 'fa fa-file-archive',\n 'application/x-gzip': 'fa fa-file-archive',\n 'application/x-bzip2': 'fa fa-file-archive',\n 'application/x-xz': 'fa fa-file-archive',\n 'application/x-zip-compressed': 'fa fa-file-archive',\n 'application/java-archive': 'fa fa-file-archive',\n 'application/vnd.ms-cab-compressed': 'fa fa-file-archive',\n 'application/x-ace-compressed': 'fa fa-file-archive',\n 'application/x-apple-diskimage': 'fa fa-file-archive',\n 'application/x-stuffit': 'fa fa-file-archive',\n 'application/x-deb': 'fa fa-file-archive',\n 'application/x-lzip': 'fa fa-file-archive',\n 'application/x-lzma': 'fa fa-file-archive',\n 'application/x-lz4': 'fa fa-file-archive',\n 'application/x-arj': 'fa fa-file-archive',\n 'application/x-gtar': 'fa fa-file-archive',\n 'application/x-gtar-compressed': 'fa fa-file-archive',\n 'application/x-compress': 'fa fa-file-archive',\n 'application/x-bzip': 'fa fa-file-archive',\n 'application/x-bzip2-compressed-tar': 'fa fa-file-archive',\n 'application/x-iso9660-image': 'fa fa-file-archive',\n 'application/x-nrg': 'fa fa-file-archive',\n 'application/x-cpio': 'fa fa-file-archive',\n 'application/x-rpm': 'fa fa-file-archive',\n 'application/x-msdownload': 'fa fa-file-archive',\n 'application/x-ace': 'fa fa-file-archive',\n 'application/x-gca-compressed': 'fa fa-file-archive',\n 'application/x-java-pack200': 'fa fa-file-archive',\n 'application/x-tarz': 'fa fa-file-archive',\n 'application/x-vhd': 'fa fa-file-archive',\n 'application/x-virtualbox-hdd': 'fa fa-file-archive',\n 'application/x-lha': 'fa fa-file-archive',\n 'application/x-lzx': 'fa fa-file-archive',\n 'application/x-nsis': 'fa fa-file-archive',\n 'application/x-sit': 'fa fa-file-archive',\n 'application/x-squashfs': 'fa fa-file-archive',\n 'application/x-tzo': 'fa fa-file-archive',\n 'application/x-lzh-compressed': 'fa fa-file-archive',\n 'application/x-xar': 'fa fa-file-archive',\n 'application/x-war': 'fa fa-file-archive',\n 'application/x-cfs-compressed': 'fa fa-file-archive',\n 'application/x-zoo': 'fa fa-file-archive',\n 'application/x-ice': 'fa fa-file-archive',\n 'application/x-b1': 'fa fa-file-archive',\n 'application/x-arc': 'fa fa-file-archive',\n 'application/x-uc2': 'fa fa-file-archive',\n 'application/x-gzcompressed': 'fa fa-file-archive',\n 'application/x-cab-compressed': 'fa fa-file-archive',\n 'application/x-egg': 'fa fa-file-archive',\n 'application/x-ipynb+zip': 'fa fa-file-archive',\n 'application/x-iso9660-appimage': 'fa fa-file-archive',\n 'application/x-java-archive-diff': 'fa fa-file-archive',\n 'application/x-lhz': 'fa fa-file-archive',\n 'application/x-ms-wim': 'fa fa-file-archive',\n 'application/x-rar': 'fa fa-file-archive',\n 'application/x-sfx': 'fa fa-file-archive',\n 'application/x-shar': 'fa fa-file-archive',\n 'application/x-tar-gz': 'fa fa-file-archive',\n 'application/x-tar-bz2': 'fa fa-file-archive',\n 'application/x-tar-xz': 'fa fa-file-archive',\n 'application/x-tar-z': 'fa fa-file-archive',\n 'application/x-tar-zstd': 'fa fa-file-archive',\n 'application/x-tar.lz': 'fa fa-file-archive',\n 'application/x-tar.lzo': 'fa fa-file-archive',\n 'application/x-ustar': 'fa fa-file-archive',\n 'application/x-wim': 'fa fa-file-archive',\n 'application/x-xpinstall': 'fa fa-file-archive',\n 'application/x-xz-compressed-tar': 'fa fa-file-archive',\n 'application/xz-compressed-tar': 'fa fa-file-archive',\n 'application/x-zip': 'fa fa-file-archive',\n 'application/x-zip-sfx': 'fa fa-file-archive',\n 'application/x-zipx': 'fa fa-file-archive',\n 'application/xz': 'fa fa-file-archive',\n 'application/zlib': 'fa fa-file-archive',\n 'application/vnd.apple.installer+xml': 'fa fa-file-archive',\n 'application/vnd.debian.binary-package': 'fa fa-file-archive',\n 'application/vnd.ms-office.addin.macroEnabled.12': 'fa fa-file-archive',\n 'application/vnd.ms-office.activex+xml': 'fa fa-file-archive',\n 'application/vnd.ms-pki.seccat': 'fa fa-file-archive',\n 'application/vnd.ms-pki.stl': 'fa fa-file-archive',\n 'application/vnd.ms-powerpoint.addin.macroEnabled.12': 'fa fa-file-archive',\n 'application/vnd.ms-powerpoint.presentation.macroEnabled.12': 'fa fa-file-archive',\n 'application/vnd.ms-powerpoint.slide.macroEnabled.12': 'fa fa-file-archive',\n 'application/vnd.ms-powerpoint.slideshow.macroEnabled.12': 'fa fa-file-archive',\n 'application/vnd.ms-powerpoint.template.macroEnabled.12': 'fa fa-file-archive',\n 'application/vnd.ms-visio.drawing': 'fa fa-file-archive',\n 'application/vnd.ms-visio.drawing.macroEnabled.12': 'fa fa-file-archive',\n 'application/vnd.ms-visio.stencil': 'fa fa-file-archive',\n 'application/vnd.ms-visio.stencil.macroEnabled.12': 'fa fa-file-archive',\n 'application/vnd.ms-visio.template': 'fa fa-file-archive',\n 'application/vnd.ms-visio.template.macroEnabled.12': 'fa fa-file-archive',\n 'application/vnd.ms-xpsdocument': 'fa fa-file-archive',\n 'application/octet-stream': 'fa fa-file-archive',\n 'application/gzip': 'fa fa-file-archive',\n\n // PowerPoint\n 'application/vnd.ms-powerpoint': 'fa fa-file-powerpoint',\n 'application/vnd.openxmlformats-officedocument.presentationml.presentation':\n 'fa fa-file-powerpoint',\n 'application/vnd.openxmlformats-officedocument.presentationml.slideshow':\n 'fa fa-file-powerpoint',\n 'application/vnd.openxmlformats-officedocument.presentationml.template':\n 'fa fa-file-powerpoint',\n 'application/vnd.ms-powerpoint.slide+xml': 'fa fa-file-powerpoint',\n 'application/vnd.ms-powerpoint.slide.show+xml': 'fa fa-file-powerpoint',\n 'application/vnd.ms-powerpoint.slide.show.macroEnabled.12': 'fa fa-file-powerpoint',\n 'application/vnd.ms-powerpoint.slideLayout+xml': 'fa fa-file-powerpoint',\n 'application/vnd.ms-powerpoint.slideMaster+xml': 'fa fa-file-powerpoint',\n 'application/vnd.ms-powerpoint.slideshow+xml': 'fa fa-file-powerpoint',\n 'application/vnd.ms-powerpoint.template+xml': 'fa fa-file-powerpoint',\n 'application/vnd.ms-powerpoint.presentation+xml': 'fa fa-file-powerpoint',\n 'application/vnd.ms-powerpoint.addin+xml': 'fa fa-file-powerpoint',\n 'application/vnd.ms-powerpoint.presentation.macroEnabled+xml': 'fa fa-file-powerpoint',\n 'application/vnd.ms-powerpoint.presentation.main+xml': 'fa fa-file-powerpoint',\n 'application/vnd.ms-powerpoint.slide.show.macroEnabled+xml': 'fa fa-file-powerpoint',\n 'application/vnd.ms-powerpoint.template.macroEnabled+xml': 'fa fa-file-powerpoint',\n 'application/x-mspowerpoint': 'fa fa-file-powerpoint',\n 'application/x-ms-powerpoint': 'fa fa-file-powerpoint',\n 'application/mspowerpoint': 'fa fa-file-powerpoint',\n 'application/ppt': 'fa fa-file-powerpoint',\n 'application/vnd.ms-ppt': 'fa fa-file-powerpoint',\n 'application/powerpoint': 'fa fa-file-powerpoint',\n 'application/x-ppt': 'fa fa-file-powerpoint',\n 'application/pptx': 'fa fa-file-powerpoint',\n 'application/vnd.openxmlformats-officedocument.presentationml.slide': 'fa fa-file-powerpoint',\n 'application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml':\n 'fa fa-file-powerpoint',\n 'application/vnd.openxmlformats-officedocument.presentationml.slideLayout+xml':\n 'fa fa-file-powerpoint',\n 'application/vnd.openxmlformats-officedocument.presentationml.slideMaster+xml':\n 'fa fa-file-powerpoint',\n 'application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml':\n 'fa fa-file-powerpoint',\n 'application/vnd.openxmlformats-officedocument.presentationml': 'fa fa-file-powerpoint',\n 'application/vnd.oasis.opendocument.presentation': 'fa fa-file-powerpoint',\n\n // Text\n 'text/plain': 'fa fa-file-alt',\n\n // CSV\n 'text/csv': 'fa fa-file-csv',\n 'application/csv': 'fa fa-file-csv',\n 'application/x-csv': 'fa fa-file-csv',\n 'text/comma-separated-values': 'fa fa-file-csv',\n 'text/x-comma-separated-values': 'fa fa-file-csv',\n 'text/tab-separated-values': 'fa fa-file-csv',\n 'application/x-sqlite3': 'fa fa-file-csv',\n 'application/vnd.oasis.opendocument.graphics': 'fa fa-file-csv',\n 'application/vnd.oasis.opendocument.chart': 'fa fa-file-csv',\n 'application/vnd.oasis.opendocument.database': 'fa fa-file-csv',\n 'application/vnd.oasis.opendocument.formula': 'fa fa-file-csv',\n 'application/vnd.oasis.opendocument.image': 'fa fa-file-csv',\n 'application/vnd.oasis.opendocument.text-master': 'fa fa-file-csv',\n 'application/vnd.oasis.opendocument.presentation-master': 'fa fa-file-csv',\n 'application/vnd.oasis.opendocument.spreadsheet-template': 'fa fa-file-csv',\n 'application/vnd.oasis.opendocument.text-template': 'fa fa-file-csv',\n 'application/vnd.oasis.opendocument.presentation-template': 'fa fa-file-csv',\n 'application/vnd.oasis.opendocument.graphics-template': 'fa fa-file-csv',\n 'application/vnd.oasis.opendocument.chart-template': 'fa fa-file-csv',\n 'application/vnd.oasis.opendocument.database-template': 'fa fa-file-csv',\n 'application/vnd.oasis.opendocument.formula-template': 'fa fa-file-csv',\n 'application/vnd.oasis.opendocument.image-template': 'fa fa-file-csv',\n 'application/vnd.sun.xml.writer': 'fa fa-file-csv',\n 'application/vnd.sun.xml.writer.template': 'fa fa-file-csv',\n 'application/vnd.sun.xml.calc': 'fa fa-file-csv',\n 'application/vnd.sun.xml.calc.template': 'fa fa-file-csv',\n 'application/vnd.sun.xml.impress': 'fa fa-file-csv',\n 'application/vnd.sun.xml.impress.template': 'fa fa-file-csv',\n 'application/vnd.sun.xml.draw': 'fa fa-file-csv',\n 'application/vnd.sun.xml.draw.template': 'fa fa-file-csv',\n 'application/vnd.sun.xml.math': 'fa fa-file-csv',\n\n // Code\n 'text/x-sass': 'fa fa-file-code',\n 'text/x-scheme': 'fa fa-file-code',\n 'text/x-scons': 'fa fa-file-code',\n 'text/x-stsrc': 'fa fa-file-code',\n 'text/x-tcl': 'fa fa-file-code',\n 'text/x-tex': 'fa fa-file-code',\n 'text/x-texinfo': 'fa fa-file-code',\n 'text/x-toml': 'fa fa-file-code',\n 'text/x-uuencode': 'fa fa-file-code',\n 'text/x-vala': 'fa fa-file-code',\n 'text/x-vbdotnet': 'fa fa-file-code',\n 'text/x-vbnet': 'fa fa-file-code',\n 'text/x-verilog': 'fa fa-file-code',\n 'text/x-vhdl': 'fa fa-file-code',\n 'text/x-yaml': 'fa fa-file-code',\n 'application/x-gnuplot': 'fa fa-file-code',\n 'application/x-haml': 'fa fa-file-code',\n 'application/x-ini': 'fa fa-file-code',\n 'application/x-mumps': 'fa fa-file-code',\n 'application/x-ocaml': 'fa fa-file-code',\n 'application/x-ooc': 'fa fa-file-code',\n 'application/x-patch': 'fa fa-file-code',\n 'application/x-prolog': 'fa fa-file-code',\n 'application/x-properties': 'fa fa-file-code',\n 'application/x-rsrc': 'fa fa-file-code',\n 'application/x-sass': 'fa fa-file-code',\n 'application/x-scheme': 'fa fa-file-code',\n 'application/x-scons': 'fa fa-file-code',\n 'application/x-stsrc': 'fa fa-file-code',\n 'application/x-tcl': 'fa fa-file-code',\n 'application/x-tex': 'fa fa-file-code',\n 'application/x-texinfo': 'fa fa-file-code',\n 'application/x-toml': 'fa fa-file-code',\n 'application/x-uuencode': 'fa fa-file-code',\n 'application/x-vala': 'fa fa-file-code',\n 'application/x-vbdotnet': 'fa fa-file-code',\n 'application/x-vbnet': 'fa fa-file-code',\n 'application/x-vhdl': 'fa fa-file-code',\n 'application/x-verilog': 'fa fa-file-code',\n 'application/x-yaml': 'fa fa-file-code',\n 'text/x-arduino': 'fa fa-file-code',\n 'text/x-bibtex': 'fa fa-file-code',\n 'text/x-coffeescript': 'fa fa-file-code',\n 'text/x-dtd': 'fa fa-file-code',\n 'text/x-erlang': 'fa fa-file-code',\n 'text/x-gnuplot': 'fa fa-file-code',\n 'text/x-go': 'fa fa-file-code',\n 'text/x-gwt-rpc': 'fa fa-file-code',\n 'text/x-handlebars': 'fa fa-file-code',\n 'text/x-haml': 'fa fa-file-code',\n 'text/x-ini': 'fa fa-file-code',\n 'text/x-json': 'fa fa-file-code',\n 'text/x-kotlin': 'fa fa-file-code',\n 'text/x-liquid': 'fa fa-file-code',\n 'text/x-literate-haskell': 'fa fa-file-code',\n 'text/x-lua': 'fa fa-file-code',\n 'text/x-makefile': 'fa fa-file-code',\n 'text/x-nfo': 'fa fa-file-code',\n 'text/x-ocaml': 'fa fa-file-code',\n 'text/x-ooc': 'fa fa-file-code',\n 'text/x-patch': 'fa fa-file-code',\n 'text/x-prolog': 'fa fa-file-code',\n 'text/x-properties': 'fa fa-file-code',\n 'text/x-rsrc': 'fa fa-file-code',\n 'text/x-rust': 'fa fa-file-code',\n 'text/html': 'fa fa-file-code',\n 'text/css': 'fa fa-file-code',\n 'text/javascript': 'fa fa-file-code',\n 'application/javascript': 'fa fa-file-code',\n 'application/json': 'fa fa-file-code',\n 'application/xml': 'fa fa-file-code',\n 'application/xhtml+xml': 'fa fa-file-code',\n 'application/atom+xml': 'fa fa-file-code',\n 'application/rss+xml': 'fa fa-file-code',\n 'application/x-latex': 'fa fa-file-code',\n 'application/x-sh': 'fa fa-file-code',\n 'application/x-python': 'fa fa-file-code',\n 'application/x-perl': 'fa fa-file-code',\n 'application/x-ruby': 'fa fa-file-code',\n 'application/x-php': 'fa fa-file-code',\n 'application/x-java': 'fa fa-file-code',\n 'application/x-c++': 'fa fa-file-code',\n 'application/x-c': 'fa fa-file-code',\n 'application/x-shellscript': 'fa fa-file-code',\n 'application/x-diff': 'fa fa-file-code',\n 'application/x-go': 'fa fa-file-code',\n 'application/x-swift': 'fa fa-file-code',\n 'application/x-objective-c': 'fa fa-file-code',\n 'application/x-scala': 'fa fa-file-code',\n 'application/x-rust': 'fa fa-file-code',\n 'application/x-haskell': 'fa fa-file-code',\n 'application/x-lua': 'fa fa-file-code',\n 'application/x-matlab': 'fa fa-file-code',\n 'application/x-fortran': 'fa fa-file-code',\n 'application/x-csharp': 'fa fa-file-code',\n 'application/x-vb': 'fa fa-file-code',\n 'application/x-pascal': 'fa fa-file-code',\n 'application/x-cobol': 'fa fa-file-code',\n 'application/x-groovy': 'fa fa-file-code',\n 'application/x-sql': 'fa fa-file-code',\n 'application/x-typescript': 'fa fa-file-code',\n 'application/x-kotlin': 'fa fa-file-code',\n 'application/x-erlang': 'fa fa-file-code',\n 'application/x-clojure': 'fa fa-file-code',\n 'application/x-less': 'fa fa-file-code',\n 'application/x-stylus': 'fa fa-file-code',\n 'application/x-markdown': 'fa fa-file-code',\n 'application/x-coffeescript': 'fa fa-file-code',\n 'application/x-dart': 'fa fa-file-code',\n 'application/x-lisp': 'fa fa-file-code',\n 'application/x-powershell': 'fa fa-file-code',\n\n // Images\n image: 'fa fa-file-image',\n // Audio\n audio: 'fa fa-file-audio',\n // Video\n video: 'fa fa-file-video',\n};\n\nexport const getIconByMimeType = (mimeType?: string): string => {\n const icon = Object.entries(MIME_TYPE_MAPPING).find(([key]) => mimeType?.startsWith(key));\n\n return icon?.[1] ?? 'fa fa-file';\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"file.js","names":["hasDuplicate","items","newItem","comparator","some","item","exports","filterDuplicateFile","files","newFile","a","b","name","size","filterDuplicateFileUrls","getHumanSize","bytes","FILE_SIZE_UNITS","unitIndex","Math","round","toString","replace","isValidFileType","types","file","allowedTypesArray","split","map","type","trim","fileType","endsWith","baseType","slice","startsWith","MIME_TYPE_MAPPING","getIconByMimeType","mimeType","matchedType","Object","keys","find"],"sources":["../../../src/utils/file.ts"],"sourcesContent":["export const hasDuplicate = <T>(\n items: T[],\n newItem: T,\n comparator: (a: T, b: T) => boolean,\n): boolean => items.some((item) => comparator(item, newItem));\n\ninterface FilerDuplicateFileOptions {\n files: File[];\n newFile: File;\n}\n\nexport const filterDuplicateFile = ({ files, newFile }: FilerDuplicateFileOptions) =>\n hasDuplicate(files, newFile, (a, b) => a.name === b.name && a.size === b.size);\n\ninterface FilterDuplicateFileUrlsOptions {\n files: string[];\n newFile: string;\n}\n\nexport const filterDuplicateFileUrls = ({ files, newFile }: FilterDuplicateFileUrlsOptions) =>\n hasDuplicate(files, newFile, (a, b) => a === b);\n\nexport const getHumanSize = (bytes: number): string => {\n const FILE_SIZE_UNITS = ['B', 'KB', 'MB', 'GB', 'TB', 'PB'];\n let size = bytes || 0;\n let unitIndex = 0;\n\n while (size >= 1024) {\n size /= 1024;\n unitIndex += 1;\n }\n\n size = Math.round(size * 10) / 10;\n\n return `${size.toString().replace('.', ',')} ${FILE_SIZE_UNITS[unitIndex] ?? ''}`;\n};\n\ninterface IsValidFileTypeOptions {\n file: File;\n types: string;\n}\n\nexport const isValidFileType = ({ types, file }: IsValidFileTypeOptions) => {\n const allowedTypesArray = types.split(',').map((type) => type.trim());\n const fileType = file.type;\n\n return allowedTypesArray.some((type) => {\n if (type.endsWith('/*')) {\n const baseType = type.slice(0, -2); // remove '/*'\n return fileType.startsWith(baseType);\n }\n return fileType === type;\n });\n};\n\nexport const MIME_TYPE_MAPPING: Record<string, string> = {\n // Haupttypen\n 'application/pdf': 'fa fa-file-pdf',\n 'application/zip': 'fa fa-file-archive',\n 'application/msword': 'fa fa-file-word',\n 'application/vnd.ms-excel': 'fa fa-file-excel',\n // Typen mit Wildcards\n 'application/vnd.openxmlformats-officedocument.': 'fa fa-file-word',\n 'application/x-': 'fa fa-file-archive',\n // Addiere nur spezifische Fälle\n 'text/pdf': 'fa fa-file-pdf',\n};\n\nexport const getIconByMimeType = (mimeType?: string): string => {\n const matchedType = Object.keys(MIME_TYPE_MAPPING).find((type) => mimeType?.startsWith(type));\n return MIME_TYPE_MAPPING[matchedType!] || 'fa fa-file';\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -29,6 +29,7 @@ const Input = /*#__PURE__*/forwardRef((_ref, ref) => {
|
|
|
29
29
|
value,
|
|
30
30
|
shouldUseAutoFocus = false,
|
|
31
31
|
isInvalid = false,
|
|
32
|
+
shouldPreventPlaceholderAnimation = false,
|
|
32
33
|
id
|
|
33
34
|
} = _ref;
|
|
34
35
|
const [hasValue, setHasValue] = useState(typeof value === 'string' && value !== '');
|
|
@@ -73,7 +74,7 @@ const Input = /*#__PURE__*/forwardRef((_ref, ref) => {
|
|
|
73
74
|
}
|
|
74
75
|
}, [value]);
|
|
75
76
|
const labelPosition = useMemo(() => {
|
|
76
|
-
if (hasValue && !shouldRemainPlaceholder) {
|
|
77
|
+
if (hasValue && !shouldRemainPlaceholder && !shouldPreventPlaceholderAnimation) {
|
|
77
78
|
return shouldShowOnlyBottomBorder ? {
|
|
78
79
|
right: 3,
|
|
79
80
|
top: -1.5
|
|
@@ -113,7 +114,9 @@ const Input = /*#__PURE__*/forwardRef((_ref, ref) => {
|
|
|
113
114
|
$isInvalid: isInvalid,
|
|
114
115
|
$shouldShowCenteredContent: shouldShowCenteredContent
|
|
115
116
|
}), /*#__PURE__*/React.createElement(StyledMotionInputLabelWrapper, {
|
|
116
|
-
animate: {
|
|
117
|
+
animate: shouldPreventPlaceholderAnimation ? {
|
|
118
|
+
opacity: hasValue ? 0 : 1
|
|
119
|
+
} : {
|
|
117
120
|
fontSize: hasValue && !shouldShowOnlyBottomBorder && !shouldRemainPlaceholder ? '9px' : '16px'
|
|
118
121
|
},
|
|
119
122
|
initial: false,
|
|
@@ -124,7 +127,7 @@ const Input = /*#__PURE__*/forwardRef((_ref, ref) => {
|
|
|
124
127
|
},
|
|
125
128
|
transition: {
|
|
126
129
|
type: 'tween',
|
|
127
|
-
duration: 0.1
|
|
130
|
+
duration: shouldPreventPlaceholderAnimation ? 0 : 0.1
|
|
128
131
|
}
|
|
129
132
|
}, /*#__PURE__*/React.createElement(StyledInputLabel, {
|
|
130
133
|
$isInvalid: isInvalid
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Input.js","names":["React","forwardRef","useCallback","useContext","useEffect","useImperativeHandle","useMemo","useRef","useState","useTheme","useElementSize","AreaContext","Icon","StyledInput","StyledInputContent","StyledInputContentWrapper","StyledInputField","StyledInputIconWrapper","StyledInputLabel","StyledInputRightElement","StyledMotionInputClearIcon","StyledMotionInputLabelWrapper","InputSize","Input","_ref","ref","leftElement","inputMode","isDisabled","onBlur","onChange","onFocus","onKeyDown","placeholder","rightElement","shouldShowOnlyBottomBorder","shouldRemainPlaceholder","shouldShowClearIcon","shouldShowCenteredContent","size","Medium","type","value","shouldUseAutoFocus","isInvalid","id","hasValue","setHasValue","placeholderWidth","setPlaceholderWidth","areaProvider","theme","inputRef","placeholderRef","placeholderSize","width","shouldChangeColor","handleClearIconClick","current","target","shouldShowBorder","props","style","backgroundColor","undefined","handleInputFieldChange","event","focus","labelPosition","right","top","bottom","Small","left","createElement","className","$isDisabled","$shouldChangeColor","$isInvalid","$shouldRoundRightCorners","$shouldShowOnlyBottomBorder","$size","$placeholderWidth","disabled","autoFocus","$shouldShowCenteredContent","animate","fontSize","initial","layout","transition","duration","opacity","onClick","icons","color","wrong","displayName"],"sources":["../../../../src/components/input/Input.tsx"],"sourcesContent":["import React, {\n ChangeEvent,\n ChangeEventHandler,\n FocusEventHandler,\n forwardRef,\n HTMLInputTypeAttribute,\n KeyboardEventHandler,\n ReactNode,\n useCallback,\n useContext,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n type ReactElement,\n} from 'react';\nimport { useTheme } from 'styled-components';\nimport { useElementSize } from '../../hooks/useElementSize';\nimport { AreaContext } from '../area-provider/AreaContextProvider';\nimport type { Theme } from '../color-scheme-provider/ColorSchemeProvider';\nimport Icon from '../icon/Icon';\nimport {\n StyledInput,\n StyledInputContent,\n StyledInputContentWrapper,\n StyledInputField,\n StyledInputIconWrapper,\n StyledInputLabel,\n StyledInputRightElement,\n StyledMotionInputClearIcon,\n StyledMotionInputLabelWrapper,\n} from './Input.styles';\n\nexport type InputRef = {\n focus: VoidFunction;\n};\n\ntype InputMode =\n | 'email'\n | 'search'\n | 'tel'\n | 'text'\n | 'url'\n | 'none'\n | 'numeric'\n | 'decimal'\n | undefined;\n\nexport enum InputSize {\n Small = 'small',\n Medium = 'medium',\n}\n\nexport type InputProps = {\n /**\n * An element to be displayed on the left side of the input field\n */\n leftElement?: ReactNode;\n /**\n * The id of the input\n */\n id?: string;\n /**\n * Defines the input mode of the input\n */\n inputMode?: InputMode;\n /**\n * Disables the input so that it cannot be changed anymore\n */\n isDisabled?: boolean;\n /**\n * If true, the input field is marked as invalid\n */\n isInvalid?: boolean;\n /**\n * Function that is executed when the input field loses focus\n */\n onBlur?: FocusEventHandler<HTMLInputElement>;\n /**\n * Function that is executed when the text of the input changes\n */\n onChange?: ChangeEventHandler<HTMLInputElement>;\n /**\n * Function that is executed when the input field is focused\n */\n onFocus?: FocusEventHandler<HTMLInputElement>;\n /**\n * Function that is executed when a letter is pressed\n */\n onKeyDown?: KeyboardEventHandler<HTMLInputElement>;\n /**\n * Placeholder for the input field\n */\n placeholder?: string;\n /**\n * An element that should be displayed on the right side of the Input.\n */\n rightElement?: ReactElement;\n /**\n * Whether the placeholder should remain at its position if a value is typed.\n */\n shouldRemainPlaceholder?: boolean;\n /**\n * Whether the content should be displayed centered inside the input.\n */\n shouldShowCenteredContent?: boolean;\n /**\n * If true, a clear icon is displayed at the end of the input field\n */\n shouldShowClearIcon?: boolean;\n /**\n * Whether only the bottom border should be displayed\n */\n shouldShowOnlyBottomBorder?: boolean;\n /**\n * If true, the input field is focused when the component is mounted\n */\n shouldUseAutoFocus?: boolean;\n /**\n * The size of the input field\n */\n size?: InputSize;\n /**\n * Input type set for input element (e.g. 'text', 'number' or 'password')\n */\n type?: HTMLInputTypeAttribute;\n /**\n * Value if the input field should be controlled\n */\n value?: string;\n};\n\nconst Input = forwardRef<InputRef, InputProps>(\n (\n {\n leftElement,\n inputMode,\n isDisabled,\n onBlur,\n onChange,\n onFocus,\n onKeyDown,\n placeholder,\n rightElement,\n shouldShowOnlyBottomBorder,\n shouldRemainPlaceholder = false,\n shouldShowClearIcon = false,\n shouldShowCenteredContent = false,\n size = InputSize.Medium,\n type = 'text',\n value,\n shouldUseAutoFocus = false,\n isInvalid = false,\n id,\n },\n ref,\n ) => {\n const [hasValue, setHasValue] = useState(typeof value === 'string' && value !== '');\n const [placeholderWidth, setPlaceholderWidth] = useState(0);\n\n const areaProvider = useContext(AreaContext);\n\n const theme = useTheme() as Theme;\n\n const inputRef = useRef<HTMLInputElement>(null);\n const placeholderRef = useRef<HTMLLabelElement>(null);\n\n const placeholderSize = useElementSize(placeholderRef);\n\n useEffect(() => {\n if (placeholderSize && shouldShowOnlyBottomBorder) {\n setPlaceholderWidth(placeholderSize.width + 5);\n }\n }, [placeholderSize, shouldShowOnlyBottomBorder]);\n\n const shouldChangeColor = useMemo(\n () => areaProvider.shouldChangeColor ?? false,\n [areaProvider.shouldChangeColor],\n );\n\n const handleClearIconClick = useCallback(() => {\n if (inputRef.current) {\n inputRef.current.value = '';\n\n setHasValue(false);\n\n if (typeof onChange === 'function') {\n onChange({ target: inputRef.current } as ChangeEvent<HTMLInputElement>);\n }\n }\n }, [onChange]);\n\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n const shouldShowBorder = rightElement?.props?.style?.backgroundColor === undefined;\n\n const handleInputFieldChange = useCallback(\n (event: ChangeEvent<HTMLInputElement>) => {\n setHasValue(event.target.value !== '');\n\n if (typeof onChange === 'function') {\n onChange(event);\n }\n },\n [onChange],\n );\n\n useImperativeHandle(\n ref,\n () => ({\n focus: () => inputRef.current?.focus(),\n }),\n [],\n );\n\n useEffect(() => {\n if (typeof value === 'string') {\n setHasValue(value !== '');\n }\n }, [value]);\n\n const labelPosition = useMemo(() => {\n if (hasValue && !shouldRemainPlaceholder) {\n return shouldShowOnlyBottomBorder\n ? { right: 3, top: -1.5 }\n : { bottom: size === InputSize.Small ? -4 : -10, right: -6 };\n }\n\n return { left: -1 };\n }, [hasValue, shouldRemainPlaceholder, shouldShowOnlyBottomBorder, size]);\n\n return (\n <StyledInput className=\"beta-chayns-input\" $isDisabled={isDisabled}>\n <StyledInputContentWrapper\n $shouldChangeColor={shouldChangeColor}\n $isInvalid={isInvalid}\n $shouldRoundRightCorners={shouldShowBorder}\n $shouldShowOnlyBottomBorder={shouldShowOnlyBottomBorder}\n $size={size}\n >\n {leftElement && <StyledInputIconWrapper>{leftElement}</StyledInputIconWrapper>}\n <StyledInputContent $shouldShowOnlyBottomBorder={shouldShowOnlyBottomBorder}>\n <StyledInputField\n $placeholderWidth={placeholderWidth}\n id={id}\n disabled={isDisabled}\n onBlur={onBlur}\n onChange={handleInputFieldChange}\n onFocus={onFocus}\n onKeyDown={onKeyDown}\n ref={inputRef}\n type={type}\n value={value}\n autoFocus={shouldUseAutoFocus}\n inputMode={inputMode}\n $isInvalid={isInvalid}\n $shouldShowCenteredContent={shouldShowCenteredContent}\n />\n <StyledMotionInputLabelWrapper\n animate={{\n fontSize:\n hasValue &&\n !shouldShowOnlyBottomBorder &&\n !shouldRemainPlaceholder\n ? '9px'\n : '16px',\n }}\n initial={false}\n layout\n ref={placeholderRef}\n style={{ ...labelPosition }}\n transition={{ type: 'tween', duration: 0.1 }}\n >\n <StyledInputLabel $isInvalid={isInvalid}>\n {placeholder}\n </StyledInputLabel>\n </StyledMotionInputLabelWrapper>\n </StyledInputContent>\n {shouldShowClearIcon && (\n <StyledMotionInputClearIcon\n $shouldShowOnlyBottomBorder={shouldShowOnlyBottomBorder}\n $size={size}\n animate={{ opacity: hasValue ? 1 : 0 }}\n initial={false}\n onClick={handleClearIconClick}\n transition={{ type: 'tween' }}\n >\n <Icon\n icons={['fa fa-times']}\n color={isInvalid ? theme.wrong : undefined}\n />\n </StyledMotionInputClearIcon>\n )}\n {rightElement && shouldShowBorder && rightElement}\n </StyledInputContentWrapper>\n {rightElement && !shouldShowBorder && (\n <StyledInputRightElement>{rightElement}</StyledInputRightElement>\n )}\n </StyledInput>\n );\n },\n);\n\nInput.displayName = 'Input';\n\nexport default Input;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Input.js","names":["React","forwardRef","useCallback","useContext","useEffect","useImperativeHandle","useMemo","useRef","useState","useTheme","useElementSize","AreaContext","Icon","StyledInput","StyledInputContent","StyledInputContentWrapper","StyledInputField","StyledInputIconWrapper","StyledInputLabel","StyledInputRightElement","StyledMotionInputClearIcon","StyledMotionInputLabelWrapper","InputSize","Input","_ref","ref","leftElement","inputMode","isDisabled","onBlur","onChange","onFocus","onKeyDown","placeholder","rightElement","shouldShowOnlyBottomBorder","shouldRemainPlaceholder","shouldShowClearIcon","shouldShowCenteredContent","size","Medium","type","value","shouldUseAutoFocus","isInvalid","shouldPreventPlaceholderAnimation","id","hasValue","setHasValue","placeholderWidth","setPlaceholderWidth","areaProvider","theme","inputRef","placeholderRef","placeholderSize","width","shouldChangeColor","handleClearIconClick","current","target","shouldShowBorder","props","style","backgroundColor","undefined","handleInputFieldChange","event","focus","labelPosition","right","top","bottom","Small","left","createElement","className","$isDisabled","$shouldChangeColor","$isInvalid","$shouldRoundRightCorners","$shouldShowOnlyBottomBorder","$size","$placeholderWidth","disabled","autoFocus","$shouldShowCenteredContent","animate","opacity","fontSize","initial","layout","transition","duration","onClick","icons","color","wrong","displayName"],"sources":["../../../../src/components/input/Input.tsx"],"sourcesContent":["import React, {\n ChangeEvent,\n ChangeEventHandler,\n FocusEventHandler,\n forwardRef,\n HTMLInputTypeAttribute,\n KeyboardEventHandler,\n ReactNode,\n useCallback,\n useContext,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n type ReactElement,\n} from 'react';\nimport { useTheme } from 'styled-components';\nimport { useElementSize } from '../../hooks/useElementSize';\nimport { AreaContext } from '../area-provider/AreaContextProvider';\nimport type { Theme } from '../color-scheme-provider/ColorSchemeProvider';\nimport Icon from '../icon/Icon';\nimport {\n StyledInput,\n StyledInputContent,\n StyledInputContentWrapper,\n StyledInputField,\n StyledInputIconWrapper,\n StyledInputLabel,\n StyledInputRightElement,\n StyledMotionInputClearIcon,\n StyledMotionInputLabelWrapper,\n} from './Input.styles';\n\nexport type InputRef = {\n focus: VoidFunction;\n};\n\ntype InputMode =\n | 'email'\n | 'search'\n | 'tel'\n | 'text'\n | 'url'\n | 'none'\n | 'numeric'\n | 'decimal'\n | undefined;\n\nexport enum InputSize {\n Small = 'small',\n Medium = 'medium',\n}\n\nexport type InputProps = {\n /**\n * An element to be displayed on the left side of the input field\n */\n leftElement?: ReactNode;\n /**\n * The id of the input\n */\n id?: string;\n /**\n * Defines the input mode of the input\n */\n inputMode?: InputMode;\n /**\n * Disables the input so that it cannot be changed anymore\n */\n isDisabled?: boolean;\n /**\n * If true, the input field is marked as invalid\n */\n isInvalid?: boolean;\n /**\n * Function that is executed when the input field loses focus\n */\n onBlur?: FocusEventHandler<HTMLInputElement>;\n /**\n * Function that is executed when the text of the input changes\n */\n onChange?: ChangeEventHandler<HTMLInputElement>;\n /**\n * Function that is executed when the input field is focused\n */\n onFocus?: FocusEventHandler<HTMLInputElement>;\n /**\n * Function that is executed when a letter is pressed\n */\n onKeyDown?: KeyboardEventHandler<HTMLInputElement>;\n /**\n * Placeholder for the input field\n */\n placeholder?: string;\n /**\n * An element that should be displayed on the right side of the Input.\n */\n rightElement?: ReactElement;\n /**\n * Whether the placeholder animation should be prevented.\n */\n shouldPreventPlaceholderAnimation?: boolean;\n /**\n * Whether the placeholder should remain at its position if a value is typed.\n */\n shouldRemainPlaceholder?: boolean;\n /**\n * Whether the content should be displayed centered inside the input.\n */\n shouldShowCenteredContent?: boolean;\n /**\n * If true, a clear icon is displayed at the end of the input field\n */\n shouldShowClearIcon?: boolean;\n /**\n * Whether only the bottom border should be displayed\n */\n shouldShowOnlyBottomBorder?: boolean;\n /**\n * If true, the input field is focused when the component is mounted\n */\n shouldUseAutoFocus?: boolean;\n /**\n * The size of the input field\n */\n size?: InputSize;\n /**\n * Input type set for input element (e.g. 'text', 'number' or 'password')\n */\n type?: HTMLInputTypeAttribute;\n /**\n * Value if the input field should be controlled\n */\n value?: string;\n};\n\nconst Input = forwardRef<InputRef, InputProps>(\n (\n {\n leftElement,\n inputMode,\n isDisabled,\n onBlur,\n onChange,\n onFocus,\n onKeyDown,\n placeholder,\n rightElement,\n shouldShowOnlyBottomBorder,\n shouldRemainPlaceholder = false,\n shouldShowClearIcon = false,\n shouldShowCenteredContent = false,\n size = InputSize.Medium,\n type = 'text',\n value,\n shouldUseAutoFocus = false,\n isInvalid = false,\n shouldPreventPlaceholderAnimation = false,\n id,\n },\n ref,\n ) => {\n const [hasValue, setHasValue] = useState(typeof value === 'string' && value !== '');\n const [placeholderWidth, setPlaceholderWidth] = useState(0);\n\n const areaProvider = useContext(AreaContext);\n\n const theme = useTheme() as Theme;\n\n const inputRef = useRef<HTMLInputElement>(null);\n const placeholderRef = useRef<HTMLLabelElement>(null);\n\n const placeholderSize = useElementSize(placeholderRef);\n\n useEffect(() => {\n if (placeholderSize && shouldShowOnlyBottomBorder) {\n setPlaceholderWidth(placeholderSize.width + 5);\n }\n }, [placeholderSize, shouldShowOnlyBottomBorder]);\n\n const shouldChangeColor = useMemo(\n () => areaProvider.shouldChangeColor ?? false,\n [areaProvider.shouldChangeColor],\n );\n\n const handleClearIconClick = useCallback(() => {\n if (inputRef.current) {\n inputRef.current.value = '';\n\n setHasValue(false);\n\n if (typeof onChange === 'function') {\n onChange({ target: inputRef.current } as ChangeEvent<HTMLInputElement>);\n }\n }\n }, [onChange]);\n\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n const shouldShowBorder = rightElement?.props?.style?.backgroundColor === undefined;\n\n const handleInputFieldChange = useCallback(\n (event: ChangeEvent<HTMLInputElement>) => {\n setHasValue(event.target.value !== '');\n\n if (typeof onChange === 'function') {\n onChange(event);\n }\n },\n [onChange],\n );\n\n useImperativeHandle(\n ref,\n () => ({\n focus: () => inputRef.current?.focus(),\n }),\n [],\n );\n\n useEffect(() => {\n if (typeof value === 'string') {\n setHasValue(value !== '');\n }\n }, [value]);\n\n const labelPosition = useMemo(() => {\n if (hasValue && !shouldRemainPlaceholder && !shouldPreventPlaceholderAnimation) {\n return shouldShowOnlyBottomBorder\n ? { right: 3, top: -1.5 }\n : { bottom: size === InputSize.Small ? -4 : -10, right: -6 };\n }\n\n return { left: -1 };\n }, [hasValue, shouldRemainPlaceholder, shouldShowOnlyBottomBorder, size]);\n\n return (\n <StyledInput className=\"beta-chayns-input\" $isDisabled={isDisabled}>\n <StyledInputContentWrapper\n $shouldChangeColor={shouldChangeColor}\n $isInvalid={isInvalid}\n $shouldRoundRightCorners={shouldShowBorder}\n $shouldShowOnlyBottomBorder={shouldShowOnlyBottomBorder}\n $size={size}\n >\n {leftElement && <StyledInputIconWrapper>{leftElement}</StyledInputIconWrapper>}\n <StyledInputContent $shouldShowOnlyBottomBorder={shouldShowOnlyBottomBorder}>\n <StyledInputField\n $placeholderWidth={placeholderWidth}\n id={id}\n disabled={isDisabled}\n onBlur={onBlur}\n onChange={handleInputFieldChange}\n onFocus={onFocus}\n onKeyDown={onKeyDown}\n ref={inputRef}\n type={type}\n value={value}\n autoFocus={shouldUseAutoFocus}\n inputMode={inputMode}\n $isInvalid={isInvalid}\n $shouldShowCenteredContent={shouldShowCenteredContent}\n />\n <StyledMotionInputLabelWrapper\n animate={shouldPreventPlaceholderAnimation ? {\n opacity: hasValue ? 0 : 1,\n }:{\n fontSize:\n hasValue &&\n !shouldShowOnlyBottomBorder &&\n !shouldRemainPlaceholder\n ? '9px'\n : '16px',\n }}\n initial={false}\n layout\n ref={placeholderRef}\n style={{ ...labelPosition }}\n transition={{ type: 'tween', duration: shouldPreventPlaceholderAnimation ? 0 : 0.1 }}\n >\n <StyledInputLabel $isInvalid={isInvalid}>\n {placeholder}\n </StyledInputLabel>\n </StyledMotionInputLabelWrapper>\n </StyledInputContent>\n {shouldShowClearIcon && (\n <StyledMotionInputClearIcon\n $shouldShowOnlyBottomBorder={shouldShowOnlyBottomBorder}\n $size={size}\n animate={{ opacity: hasValue ? 1 : 0 }}\n initial={false}\n onClick={handleClearIconClick}\n transition={{ type: 'tween' }}\n >\n <Icon\n icons={['fa fa-times']}\n color={isInvalid ? theme.wrong : undefined}\n />\n </StyledMotionInputClearIcon>\n )}\n {rightElement && shouldShowBorder && rightElement}\n </StyledInputContentWrapper>\n {rightElement && !shouldShowBorder && (\n <StyledInputRightElement>{rightElement}</StyledInputRightElement>\n )}\n </StyledInput>\n );\n },\n);\n\nInput.displayName = 'Input';\n\nexport default Input;\n"],"mappings":"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","ignoreList":[]}
|