📄 useShare¶
📊 Analysis Summary¶
| Metric | Count |
|---|---|
| 🔧 Functions | 2 |
| 📦 Imports | 6 |
| ⚡ Async/Await Patterns | 1 |
| 📐 Interfaces | 3 |
📚 Table of Contents¶
🛠️ File Location:¶
📂 packages/core/useShare/index.ts
📦 Imports¶
| Name | Source |
|---|---|
MaybeRefOrGetter |
vue |
ConfigurableNavigator |
../_configurable |
Supportable |
../types |
toValue |
vue |
defaultNavigator |
../_configurable |
useSupported |
../useSupported |
Async/Await Patterns¶
| Type | Function | Await Expressions | Promise Chains |
|---|---|---|---|
| async-function | share |
none | none |
Functions¶
useShare(shareOptions: MaybeRefOrGetter<UseShareOptions>, options: ConfigurableNavigator): UseShareReturn¶
Reactive Web Share API.
Parameters:
shareOptionsany: No descriptionoptionsany: No description
See: https://vueuse.org/useShare
Tags: @__NO_SIDE_EFFECTS__
Raw JSDoc
Calls:
useSupported (from ../useSupported)toValue (from vue)_navigator.canSharecomplex_call_1467
Code
export function useShare(shareOptions: MaybeRefOrGetter<UseShareOptions> = {}, options: ConfigurableNavigator = {}): UseShareReturn {
const { navigator = defaultNavigator } = options
const _navigator = navigator as NavigatorWithShare
const isSupported = useSupported(() => _navigator && 'canShare' in _navigator)
const share = async (overrideOptions: MaybeRefOrGetter<UseShareOptions> = {}) => {
if (isSupported.value) {
const data = {
...toValue(shareOptions),
...toValue(overrideOptions),
}
let granted = false
if (_navigator.canShare)
granted = _navigator.canShare(data)
if (granted)
return _navigator.share!(data)
}
}
return {
isSupported,
share,
}
}
Internal helpers¶
Declared inside another function in this file.
share(overrideOptions: MaybeRefOrGetter<UseShareOptions>): Promise<void>¶
Parameters:
overrideOptionsMaybeRefOrGetter<UseShareOptions>
Returns: Promise<void>
Calls:
toValue (from vue)_navigator.canSharecomplex_call_1467
Code
Interfaces¶
UseShareOptions¶
Interface Code
Properties¶
| Name | Type | Optional | Description |
|---|---|---|---|
title |
string |
✓ | not shown |
files |
File[] |
✓ | not shown |
text |
string |
✓ | not shown |
url |
string |
✓ | not shown |
UseShareReturn¶
Interface Code
Properties¶
| Name | Type | Optional | Description |
|---|---|---|---|
share |
(overrideOptions?: MaybeRefOrGetter<UseShareOptions>) => Promise<void> |
✗ | not shown |
NavigatorWithShare¶
Interface Code
Properties¶
| Name | Type | Optional | Description |
|---|---|---|---|
share |
(data: UseShareOptions) => Promise<void> |
✓ | not shown |
canShare |
(data: UseShareOptions) => boolean |
✓ | not shown |
Generated by Syntax Scribe