一些检查失败了
automerge / automerge (push) Has been cancelled
react-native-android-build-apk / AssembleRelease (push) Has been cancelled
Build macOS M1 / Main (push) Has been cancelled
Joplin Continuous Integration / Main (macos-15-intel) (push) Has been cancelled
Joplin Continuous Integration / Main (ubuntu-22.04) (push) Has been cancelled
Joplin Continuous Integration / Main (ubuntu-22.04-arm) (push) Has been cancelled
Joplin Continuous Integration / Main (windows-11-vs2026-arm) (push) Has been cancelled
Joplin Continuous Integration / Main (windows-2025) (push) Has been cancelled
Joplin Continuous Integration / ServerDockerImage (ubuntu-22.04) (push) Has been cancelled
Joplin Continuous Integration / ServerDockerImage (ubuntu-22.04-arm) (push) Has been cancelled
Joplin UI tests / Main (ubuntu-22.04) (push) Has been cancelled
Joplin UI tests / Main (windows-2025) (push) Has been cancelled
Joplin UI tests / Mobile (push) Has been cancelled
Close stale issues / ProcessStaleIssues (push) Has been cancelled
23 行
718 B
TypeScript
23 行
718 B
TypeScript
import { FolderEntity, NoteEntity } from '../../../services/database/types';
|
|
import { StateShare } from '../../../services/share/reducer';
|
|
import useAsyncEffect from '../../../hooks/useAsyncEffect';
|
|
import ShareService from '../../../services/share/ShareService';
|
|
import shim from '../../../shim';
|
|
const { useState } = shim.react();
|
|
|
|
const useIsPublished = (item: NoteEntity|FolderEntity, shares: StateShare[]) => {
|
|
const [isPublished, setIsPublished] = useState(false);
|
|
|
|
useAsyncEffect(async (event) => {
|
|
const shared = await ShareService.instance().isPublished(item, shares);
|
|
|
|
if (!event.cancelled) {
|
|
setIsPublished(shared);
|
|
}
|
|
}, [shares, item]);
|
|
|
|
return isPublished;
|
|
};
|
|
|
|
export default useIsPublished;
|