@livelike/react-native
Version:
LiveLike React Native package
21 lines (18 loc) • 647 B
text/typescript
import { CHOICE_WIDGET_KIND, IWidgetChoiceItem } from '@livelike/javascript';
import { widgetStore } from '../store';
import { useSelectedFieldStore } from './useSelectedFieldStore';
export type UseWidgetChoicesArg = {
widgetId: string;
};
export function useWidgetChoices({
widgetId,
}: UseWidgetChoicesArg): IWidgetChoiceItem[] {
const widgetChoices = useSelectedFieldStore(widgetStore, () => {
const widgetPayload = widgetStore.get()[widgetId]?.widgetPayload;
if (widgetPayload && CHOICE_WIDGET_KIND.includes(widgetPayload.kind)) {
return widgetPayload.choices;
}
return undefined;
});
return widgetChoices;
}