UNPKG

softchatjs-react

Version:
1 lines 4.21 kB
{"version":3,"sources":["../../../src/components/menu/index.tsx","../../../src/components/text/text.tsx"],"sourcesContent":["import { Dispatch, SetStateAction, useEffect, useRef, useState } from \"react\";\r\nimport styles from \"./menu.module.css\";\r\nimport { HiPhoto } from \"react-icons/hi2\";\r\nimport Text from \"../text/text\";\r\n\r\ntype MenuProps = {\r\n element: JSX.Element;\r\n generalMenuRef: any;\r\n};\r\n\r\nexport const Menu = (props: MenuProps) => {\r\n return (\r\n <div ref={props.generalMenuRef} className={styles.menu}>\r\n {props.element}\r\n </div>\r\n );\r\n};\r\n\r\nexport const AttachmentMenu = ({\r\n onChange,\r\n setFiles,\r\n closeGeneralMenu,\r\n}: {\r\n onChange?: (event: any) => void;\r\n closeGeneralMenu: () => void;\r\n setFiles:Dispatch<SetStateAction<any[]>>\r\n}) => {\r\n const fileInputRef: any = useRef();\r\n const options = [\r\n {\r\n icon: <HiPhoto size={24} color=\"white\" />,\r\n title: \"Photo\",\r\n },\r\n ];\r\n\r\n const handleChange = (event: any) => {\r\n closeGeneralMenu();\r\n const files = event.target.files;\r\n setFiles(Array.from(files))\r\n };\r\n\r\n return (\r\n <div className={styles.attachment}>\r\n {options.map((item, index) => (\r\n <label htmlFor=\"upload\" key={index}>\r\n <div className={styles.attachment__item}>\r\n <div style={{ marginRight: \"10px\" }}> {item.icon}</div>\r\n <input\r\n onChange={handleChange}\r\n \r\n ref={fileInputRef}\r\n type=\"file\"\r\n hidden\r\n id=\"upload\"\r\n />\r\n <Text\r\n styles={{ marginBottom: \"3px\" }}\r\n size=\"sm\"\r\n text={item.title}\r\n />\r\n </div>\r\n </label>\r\n ))}\r\n </div>\r\n );\r\n};\r\n","import React from \"react\";\r\nimport styles from \"./text.module.css\";\r\n\r\ntype TextProps = {\r\n text: string;\r\n styles?: React.CSSProperties | undefined;\r\n weight?: \"bold\" | \"medium\";\r\n size?: \"sm\" | \"md\" | \"xs\";\r\n};\r\n\r\nconst Text = (props: TextProps) => {\r\n const textWeight = {\r\n bold: styles.textBold,\r\n medium: `${styles.textMedium}`,\r\n };\r\n\r\n const textSize: any = {\r\n sm: styles.textSmall,\r\n md: styles.textSizeMd,\r\n xs: styles.textExtraSmall,\r\n };\r\n\r\n return (\r\n <p\r\n style={props.styles}\r\n className={`${styles.text} ${textWeight[props.weight || \"medium\"]} ${\r\n textSize[props.size || \"md\"]\r\n }`}\r\n >\r\n {props.text}\r\n </p>\r\n );\r\n};\r\n\r\nexport default Text;\r\n"],"mappings":"AAAA,OAA8C,UAAAA,MAAwB,QACtE,OAAOC,MAAY,2BACnB,OAAS,WAAAC,MAAe,kBCDxB,OAAOC,MAAY,iCAsBf,cAAAC,MAAA,oBAbJ,IAAMC,EAAQC,GAAqB,CACjC,IAAMC,EAAa,CACjB,KAAMJ,EAAO,SACb,OAAQ,GAAGA,EAAO,UAAU,EAC9B,EAEMK,EAAgB,CACpB,GAAIL,EAAO,UACX,GAAIA,EAAO,WACX,GAAIA,EAAO,cACb,EAEA,OACEC,EAAC,KACC,MAAOE,EAAM,OACb,UAAW,GAAGH,EAAO,IAAI,IAAII,EAAWD,EAAM,QAAU,QAAQ,CAAC,IAC/DE,EAASF,EAAM,MAAQ,IAAI,CAC7B,GAEC,SAAAA,EAAM,KACT,CAEJ,EAEOG,EAAQJ,EDtBX,cAAAK,EAkCQ,QAAAC,MAlCR,oBAFG,IAAMC,EAAQC,GAEjBH,EAAC,OAAI,IAAKG,EAAM,eAAgB,UAAWC,EAAO,KAC/C,SAAAD,EAAM,QACT,EAISE,EAAiB,CAAC,CAC7B,SAAAC,EACA,SAAAC,EACA,iBAAAC,CACF,IAIM,CACJ,IAAMC,EAAoBC,EAAO,EAC3BC,EAAU,CACd,CACE,KAAMX,EAACY,EAAA,CAAQ,KAAM,GAAI,MAAM,QAAQ,EACvC,MAAO,OACT,CACF,EAEMC,EAAgBC,GAAe,CACnCN,EAAiB,EACjB,IAAMO,EAAQD,EAAM,OAAO,MAC3BP,EAAS,MAAM,KAAKQ,CAAK,CAAC,CAC5B,EAEA,OACEf,EAAC,OAAI,UAAWI,EAAO,WACpB,SAAAO,EAAQ,IAAI,CAACK,EAAMC,IAClBjB,EAAC,SAAM,QAAQ,SACb,SAAAC,EAAC,OAAI,UAAWG,EAAO,iBACrB,UAAAH,EAAC,OAAI,MAAO,CAAE,YAAa,MAAO,EAAG,cAAEe,EAAK,MAAK,EACjDhB,EAAC,SACC,SAAUa,EAEV,IAAKJ,EACL,KAAK,OACL,OAAM,GACN,GAAG,SACL,EACAT,EAACkB,EAAA,CACC,OAAQ,CAAE,aAAc,KAAM,EAC9B,KAAK,KACL,KAAMF,EAAK,MACb,GACF,GAhB2BC,CAiB7B,CACD,EACH,CAEJ","names":["useRef","styles","HiPhoto","styles","jsx","Text","props","textWeight","textSize","text_default","jsx","jsxs","Menu","props","styles","AttachmentMenu","onChange","setFiles","closeGeneralMenu","fileInputRef","useRef","options","HiPhoto","handleChange","event","files","item","index","text_default"]}