{"version":3,"sources":["jsdelivr-header.js","/npm/orange-react-native-receive-sharing-intent@1.0.6/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,OCNS,cAAe,SAAU,QAAS,aAAgB,sBACpD,cAAe,aAEtB,MAAM,qBAAE,sBAAyB,cAE3B,MAAwB,QAAhB,SAAS,kBAER,MAAM,2BAEjB,wBAA0B,CAAC,EAAS,EAAc,EAAa,gBACvD,OACA,QAAQ,gBAAgB,MAAK,IACrB,GAAO,EAAI,WAAW,GAAG,gBACzB,KAAK,aAAa,EAAS,EAAc,EAC7C,IACD,OAAM,QACT,QAAQ,iBAAiB,OAAQ,IAC7B,QAAQ,IAAI,IACF,EAAM,EAAI,IAAM,IAClB,WAAW,GAAG,gBAClB,KAAK,aAAa,EAAQ,EAAc,EAAI,IAChD,MAGJ,SAAS,iBAAiB,UAAW,IAClB,WAAX,GACA,KAAK,aAAa,EAAQ,EAAc,KAC5C,IAEJ,KAAK,aAAa,EAAQ,EAAc,MAC5C,EAIJ,oBAAsB,CAAC,EAAQ,EAAc,KACtC,MACH,qBAAqB,aAAa,GAAK,MAAK,IACvC,IAAI,EAAQ,cAAc,GAC1B,EAAQ,EAAM,IAChB,OAAM,GAAG,EAAa,KAErB,qBAAqB,eAAe,MAAK,IACrC,IAAI,EAAQ,OAAO,KAAK,GAAY,KAAK,GAAM,EAAW,KAC1D,EAAQ,EAAM,IACf,OAAM,IACL,EAAa,EAAC,GAEtB,EAIJ,0BAA4B,KACxB,qBAAqB,gBAAgB,EAM7C,MAAM,cAAiB,IACnB,IAAI,EAAU,CAAE,SAAU,KAAM,KAAM,KAAM,QAAS,KAAM,SAAU,KAAM,WAAY,KAAM,SAAU,KAAM,UAAW,MACpH,EAAO,EACX,GAAI,EAAK,WAAW,SAAU,CAC1B,IAAI,EAAO,EAAK,QAAQ,QAAS,IACjC,GAAI,EAAK,WAAW,QAAS,CAIzB,MAHa,CACT,IAAK,EAAS,QAAS,GAG/B,CAIA,MAHa,CACT,IAAK,EAAS,KAAM,GAG5B,CAAO,GAAI,EAAK,WAAW,WAAY,CACnC,IAAI,EAAU,EAAK,QAAQ,UAAW,IAItC,MAHa,CACT,IAAK,EAAS,QAAS,GAG/B,CACI,IACI,IAAI,EAAQ,KAAK,MAAM,GACnB,EAAS,GACb,IAAK,IAAI,EAAI,EAAG,EAAI,EAAM,OAAQ,IAAK,CACnC,IAAI,EAAO,EAAM,GAAG,KAChB,EAAM,IACH,EACH,SAAU,YAAY,GACtB,UAAW,aAAa,GACxB,SAAU,YAAY,GACtB,SAAU,GAEd,EAAO,KAAK,EAChB,CACA,OAAO,CACX,CAAE,MAAO,GACL,MAAO,CAAC,IAAK,GACjB,CACJ,EAIJ,IAAI,YAAe,GACR,EAAK,QAAQ,gBAAiB,IAGrC,aAAgB,GACT,EAAS,OAAO,EAAS,YAAY,KAAO,GAGnD,YAAe,IACf,IACI,EAAY,IADN,aAAa,GACG,cAC1B,OAAI,UAAU,GACH,UAAU,GAEd","file":"/npm/orange-react-native-receive-sharing-intent@1.0.6/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/orange-react-native-receive-sharing-intent@1.0.6/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","import { NativeModules, Platform, Linking, AppState } from 'react-native';\nimport MimeTypes from \"./mimeType\";\n\nconst { ReceiveSharingIntent } = NativeModules;\n\nconst isIos = Platform.OS === 'ios';\n\nexport default class ReceiveSharingIntentModule {\n\n    static getReceivedFiles = (handler, errorHandler, appBaseUrl = 'ShareMedia') => {\n        if (isIos) {\n            Linking.getInitialURL().then(res => {\n                if (res && res.startsWith(`${appBaseUrl}://dataUrl`)) {\n                    this.getFileNames(handler, errorHandler, res);\n                }\n            }).catch(e => { });\n            Linking.addEventListener(\"url\", (res) => {\n                console.log(res);\n                let url = res ? res.url : \"\";\n                if (url.startsWith(`${appBaseUrl}://dataUrl`)) {\n                    this.getFileNames(handler,errorHandler, res.url);\n                }\n            });\n        }else{\n            AppState.addEventListener('change', (status) => {\n                if (status === 'active') {\n                    this.getFileNames(handler,errorHandler, null);\n                }\n              });\n            this.getFileNames(handler,errorHandler, null);\n        }\n    }\n\n\n    static getFileNames = (handler,errorHandler, url) => {\n        if(isIos){\n        ReceiveSharingIntent.getFileNames(url).then(data=>{\n             let files = iosSortedData(data);\n             handler(files);\n        }).catch(e=>errorHandler(e));\n        }else{\n            ReceiveSharingIntent.getFileNames().then(fileObject => {\n                let files = Object.keys(fileObject).map((k) => fileObject[k])\n                handler(files);\n            }).catch(e=>{\n                errorHandler(e)\n            })\n        }\n    }\n\n\n    static clearReceivedFiles = () => {\n        ReceiveSharingIntent.clearFileNames();\n    }\n\n}\n\n\nconst iosSortedData = (data) => {\n    let objects = { filePath: null, text: null, weblink: null, mimeType: null, contentUri: null, fileName: null, extension: null };\n    let file = data;\n    if (file.startsWith('text:')) {\n        let text = file.replace(\"text:\", \"\");\n        if (text.startsWith(\"http\")) {\n            let object = [\n                { ...objects, weblink: text }\n            ];\n            return object;\n        }\n        let object = [\n            { ...objects, text: text }\n        ];\n        return object;\n    } else if (file.startsWith('webUrl:')) {\n        let weblink = file.replace(\"webUrl:\", \"\");\n        let object = [\n            { ...objects, weblink: weblink }\n        ];\n        return object;\n    } else {\n        try {\n            let files = JSON.parse(file)\n            let object = [];\n            for (let i = 0; i < files.length; i++) {\n                let path = files[i].path;\n                let obj = {\n                    ...objects,\n                    fileName: getFileName(path),\n                    extension: getExtension(path),\n                    mimeType: getMimeType(path),\n                    filePath: path\n                }\n                object.push(obj);\n            }\n            return object;\n        } catch (error) {\n            return [{ ...objects }];\n        }\n    }\n}\n\n\nvar getFileName = (file) => {\n    return file.replace(/^.*(\\\\|\\/|\\:)/, '');\n}\n\nvar getExtension = (fileName) => {\n    return fileName.substr(fileName.lastIndexOf('.') + 1);\n}\n\nvar getMimeType = (file) => {\n    let ext = getExtension(file);\n    let extension = \".\" + ext.toLowerCase();\n    if (MimeTypes[extension]) {\n        return MimeTypes[extension];\n    }\n    return null\n}\n"]}