CupThread React Native & Expo SDK - v0.1.0
    Preparing search index...

    Interface FeedbackComposerProps

    Props for configuring the FeedbackComposer form sheet or embedded component.

    <FeedbackComposer
    visible={isOpen}
    onClose={() => setIsOpen(false)}
    onSubmitSuccess={(result) => {
    console.log('Submitted:', result.submissionId);
    setIsOpen(false);
    }}
    initialDraft={{ title: 'Report issue' }}
    onPickAttachment={async () => {
    const file = await pickImage();
    return file ? { file: { uri: file.uri }, filename: file.name, mimeType: 'image/jpeg' } : null;
    }}
    isModal={true}
    />
    interface FeedbackComposerProps {
        initialDraft?: Partial<FeedbackDraft>;
        isModal?: boolean;
        onClose?: () => void;
        onPickAttachment?: () => Promise<
            PickedAttachmentInput
            | PickedAttachmentInput[]
            | null
            | undefined,
        >;
        onSubmitSuccess?: (result: FeedbackSubmissionResult) => void;
        preserveDraftOnClose?: boolean;
        visible?: boolean;
    }
    Index
    initialDraft?: Partial<FeedbackDraft>

    Pre-filled feedback fields (e.g. category, metadata, or screenshot attachments).

    isModal?: boolean

    Whether to wrap the form in a native React Native full-screen <Modal>. Set to false when embedding directly in an existing screen layout.

    true

    onClose?: () => void

    Callback invoked when the user dismisses the composer without submitting.

    onPickAttachment?: () => Promise<
        PickedAttachmentInput
        | PickedAttachmentInput[]
        | null
        | undefined,
    >

    Custom attachment picker handler. Allows host applications to trigger their preferred file/image picker (e.g. Expo ImagePicker, react-native-document-picker) and return either pre-uploaded FeedbackAttachment descriptors, raw UploadAttachmentOptions which will automatically be uploaded via client.uploadAttachment(), or the legacy { fileUri, filename?, mimeType?, kind? } shape which is normalized into an upload automatically. Items matching no known shape surface a visible, localized error instead of being silently dropped.

    onSubmitSuccess?: (result: FeedbackSubmissionResult) => void

    Callback invoked when feedback is successfully submitted to the server.

    preserveDraftOnClose?: boolean

    Whether to preserve entered draft state when the modal is closed without submitting. When false (default), dismissing or reopening the composer resets the form to initialDraft.

    false

    visible?: boolean

    Whether the modal dialog is currently visible (when isModal is true).

    true