React Activity Feed
Edit page
Introduction
Top Level Components
ActivityFlat feedNotificationNotification dropdownNotification feedSingle postStatus update formPropertiesBasic usage
UI Components
Layout Components
Streami18n
Composition Components
Readme

StatusUpdateForm

This component should be a child of <StreamApp/> component.

Features:

  • OG scraping
  • Image uploads
  • File uploads
  • Emoji select and autocomplete

Properties

activityVerb
string | undefined
post
doRequest
((activity: NewActivity<AT>) => Promise<Activity<AT>>) | undefined
emojiData
Data | undefined
emojiI18n
Partial<Pick<I18n, "search" | "notfound"> & { categories: Partial<Record<CategoryName, string>>; }> | undefined
feedGroup
string | undefined
user
FooterItem
ReactNode
Header
ReactNode
modifyActivityData
((activity: NewActivity<AT>) => NewActivity<AT>) | undefined
onSuccess
((activity: Activity<AT>) => void) | undefined
Textarea
string | number | boolean | ReactElement<Pick<PropsWithElementAttributes<{ emojiData?: Data | undefined; innerRef?: MutableRefObject<HTMLTextAreaElement | undefined> | ((el: HTMLTextAreaElement) => void) | undefined; ... 6 more ...; value?: string | undefined; }, HTMLDivElement>, "className" | ... 7 more ... | "valu...
({ emojiData = defaultEmojiData, innerRef, maxLength, onChange, onPaste, placeholder = 'Share your opinion', rows = 3, trigger = {}, value, className, style, }: TextareaProps) => { const emoji = useMemo(() => emojiTrigger(emojiData), []); return ( <ReactTextareaAutocomplete loadingComponent={LoadingIndicator} // @ts-expect-error trigger={{ ...emoji, ...trigger }} innerRef={ innerRef && ((el) => { if (typeof innerRef === 'function') { innerRef(el); } else if (innerRef !== null) { innerRef.current = el; } }) } rows={rows} maxLength={maxLength} className={classNames('raf-textarea__textarea', className)} style={style} containerClassName="raf-textarea" dropdownClassName="raf-emojisearch" listClassName="raf-emojisearch__list" itemClassName="raf-emojisearch__item" placeholder={placeholder} onChange={onChange} onSelect={onChange} onPaste={onPaste} value={value} /> ); }
trigger
TriggerType<Record<string, unknown>> | undefined
userId
string | undefined

Basic usage