{"version":3,"file":"share.cjs","names":[],"sources":["../../src/share/share.ts"],"sourcesContent":["export interface SharePayload {\n    title?: string;\n    text?: string;\n    url?: string;\n    /** Files to share (supported only on a subset of browsers). */\n    files?: File[];\n}\n\nexport interface ShareResult {\n    /** True when `navigator.share` resolved successfully. */\n    shared: boolean;\n    /** True when the platform did not support the requested payload. */\n    unsupported: boolean;\n    /** True when the user cancelled the share dialog. */\n    cancelled: boolean;\n    error?: unknown;\n}\n\n/**\n * Wrap the Web Share API with a uniform result object. Falls through to\n * `unsupported: true` when the browser lacks `navigator.share`, leaving the\n * caller free to render a custom fallback (copy-link, social buttons).\n */\nexport async function share(payload: SharePayload): Promise<ShareResult> {\n    if (typeof navigator === \"undefined\" || !(\"share\" in navigator)) {\n        return { shared: false, unsupported: true, cancelled: false };\n    }\n    if (payload.files && !navigator.canShare?.({ files: payload.files })) {\n        return { shared: false, unsupported: true, cancelled: false };\n    }\n    try {\n        await navigator.share(payload);\n        return { shared: true, unsupported: false, cancelled: false };\n    } catch (error) {\n        if (error instanceof DOMException && error.name === \"AbortError\") {\n            return { shared: false, unsupported: false, cancelled: true };\n        }\n        return { shared: false, unsupported: false, cancelled: false, error };\n    }\n}\n\n/** True when the Web Share API is available in this environment. */\nexport function isShareSupported(): boolean {\n    return typeof navigator !== \"undefined\" && \"share\" in navigator;\n}\n"],"mappings":"AAuBA,eAAsB,EAAM,EAA6C,CAIrE,GAHI,OAAO,UAAc,KAAe,EAAE,UAAW,YAGjD,EAAQ,OAAS,CAAC,UAAU,WAAW,CAAE,MAAO,EAAQ,KAAM,CAAC,EAC/D,MAAO,CAAE,OAAQ,GAAO,YAAa,GAAM,UAAW,EAAM,EAEhE,GAAI,CAEA,OADA,MAAM,UAAU,MAAM,CAAO,EACtB,CAAE,OAAQ,GAAM,YAAa,GAAO,UAAW,EAAM,CAChE,OAAS,EAAO,CAIZ,OAHI,aAAiB,cAAgB,EAAM,OAAS,aACzC,CAAE,OAAQ,GAAO,YAAa,GAAO,UAAW,EAAK,EAEzD,CAAE,OAAQ,GAAO,YAAa,GAAO,UAAW,GAAO,OAAM,CACxE,CACJ,CAGA,SAAgB,GAA4B,CACxC,OAAO,OAAO,UAAc,KAAe,UAAW,SAC1D"}