@goodhood-web/nebenan-base 4.1.0-development.2 → 4.1.0-development.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/index.js +76 -76
  2. package/index.mjs +11522 -11318
  3. package/lib/Authentication/Registration/VerificationForm/Steps/index.d.ts +2 -1
  4. package/lib/Authentication/Registration/VerificationForm/VerificationForm.types.d.ts +3 -2
  5. package/lib/Authentication/Registration/VerificationForm/network.d.ts +2 -1
  6. package/lib/ComplaintModal/ComplaintModal.types.d.ts +2 -6
  7. package/lib/Feed/FeedItem/FeedItemComplaintModal/FeedItemComplaintModal.d.ts +2 -0
  8. package/lib/Feed/FeedItem/FeedItemComplaintModal/FeedItemComplaintModal.types.d.ts +6 -0
  9. package/lib/Feed/FeedItem/PostReactions/PostReactions.d.ts +3 -0
  10. package/lib/Feed/FeedItem/PostReactions/PostReactions.types.d.ts +10 -0
  11. package/lib/Feed/FeedItem/{Reactions/PostReactions → PostReactions}/utils.d.ts +2 -2
  12. package/lib/Feed/FeedItem/Replies/Reply/Reply.d.ts +2 -0
  13. package/lib/Feed/FeedItem/Replies/Reply/Reply.types.d.ts +7 -0
  14. package/lib/Feed/FeedItem/Replies/Reply/utils.d.ts +2 -0
  15. package/lib/Feed/FeedItem/Replies/ReplyBubble/ReplyBubble.d.ts +3 -0
  16. package/lib/Feed/FeedItem/Replies/ReplyBubble/ReplyBubble.types.d.ts +10 -0
  17. package/lib/Feed/FeedItem/Replies/ReplyBubble/ReplyGallery/ReplyGallery.d.ts +5 -0
  18. package/lib/Feed/FeedItem/Replies/ReplyBubble/ReplyMoreOptions/ReplyMoreOptions.d.ts +10 -0
  19. package/lib/Feed/FeedItem/Replies/ReplyBubble/ReplyPoi/ReplyPoi.d.ts +7 -0
  20. package/lib/Feed/FeedItem/Replies/ReplyBubble/utils.d.ts +4 -0
  21. package/lib/Feed/FeedItem/{Reactions → Replies}/ReplyReactions/Like/Like.types.d.ts +4 -5
  22. package/lib/Feed/FeedItem/Replies/ReplyReactions/ReplyReactions.d.ts +3 -0
  23. package/lib/Feed/FeedItem/Replies/ReplyReactions/ReplyReactions.types.d.ts +12 -0
  24. package/lib/Feed/FeedItem/Replies/ReplyReactions/constants.d.ts +5 -0
  25. package/lib/Feed/FeedItem/Replies/ReplyReactions/network.d.ts +14 -0
  26. package/lib/Feed/FeedItem/Replies/ReplyReactions/utils.d.ts +22 -0
  27. package/lib/Feed/FeedItem/Replies/ReplySection/ReplySection.d.ts +3 -0
  28. package/lib/Feed/FeedItem/Replies/ReplySection/ReplySection.types.d.ts +10 -0
  29. package/lib/Feed/FeedItem/Replies/ReplySection/network.d.ts +16 -0
  30. package/lib/Feed/FeedItem/Replies/ReplySection/utils.d.ts +20 -0
  31. package/lib/Forms/Wizard/Wizard.types.d.ts +6 -0
  32. package/lib/Forms/Wizard/useTrackStepPageView.d.ts +9 -0
  33. package/lib/ImageCropper/ImageCropper.d.ts +1 -1
  34. package/lib/ImageCropper/ImageCropper.types.d.ts +9 -2
  35. package/lib/Profile/Profile.d.ts +1 -1
  36. package/lib/Profile/Profile.types.d.ts +1 -0
  37. package/lib/Reactions/ReactionTabList/ReactionTabList.d.ts +1 -1
  38. package/lib/Reactions/ReactionTabList/ReactionTabList.types.d.ts +1 -2
  39. package/lib/RichTextArea/RichTextArea.d.ts +1 -1
  40. package/lib/RichTextArea/RichTextArea.types.d.ts +9 -11
  41. package/lib/RichTextArea/components/POI/useBusinessProfile.d.ts +1 -1
  42. package/lib/RichTextArea/lexical/plugins/MentionPlugin.d.ts +1 -3
  43. package/lib/RichTextArea/lexical/utils.d.ts +4 -7
  44. package/package.json +1 -1
  45. package/style.css +1 -1
  46. package/lib/Feed/FeedItem/Marketplace/MarketplaceMoreOptions/ComplaintModalComponent/ComplaintModalComponent.d.ts +0 -8
  47. package/lib/Feed/FeedItem/Reactions/PostReactions/PostReactions.d.ts +0 -3
  48. package/lib/Feed/FeedItem/Reactions/PostReactions/PostReactions.types.d.ts +0 -13
  49. package/lib/Feed/FeedItem/Reactions/ReplyReactions/ReplyReactions.d.ts +0 -3
  50. package/lib/Feed/FeedItem/Reactions/ReplyReactions/ReplyReactions.types.d.ts +0 -16
  51. package/lib/RichTextArea/utils.d.ts +0 -3
  52. /package/lib/Feed/FeedItem/{Reactions → Replies}/ReplyReactions/Like/Like.d.ts +0 -0
  53. /package/lib/Feed/FeedItem/{Reactions → Replies}/ReplyReactions/Like/ReactionLabel/ReactionLabel.d.ts +0 -0
@@ -1,7 +1,8 @@
1
+ import { getGpsMethod } from './Gps';
1
2
  import { getInviteCodeMethod } from './InviteCode';
2
3
  import { getMethods } from './Methods';
3
4
  import { getPostalCodeMethod } from './PostalCode';
4
5
  import { getPostalCodeRequested } from './PostalCodeRequested';
5
6
  import { getSmsMethod } from './Sms';
6
7
  import { getSmsCodeMethod } from './SmsCode';
7
- export { getSmsMethod, getSmsCodeMethod, getPostalCodeMethod, getInviteCodeMethod, getMethods, getPostalCodeRequested, };
8
+ export { getSmsMethod, getSmsCodeMethod, getPostalCodeMethod, getInviteCodeMethod, getGpsMethod, getMethods, getPostalCodeRequested, };
@@ -1,8 +1,9 @@
1
- import { VerificationMethods, VerificationSMSResponse } from '../../../../../../api/src/lib/core_v2';
1
+ import { VerificationGPSResponse, VerificationMethods, VerificationSMSResponse } from '../../../../../../api/src/lib/core_v2';
2
+ export type VerificationResponse = VerificationSMSResponse | VerificationGPSResponse;
2
3
  export interface VerificationFormProps {
3
4
  initialStep?: string | number;
4
5
  onFetchProfile: () => Promise<void>;
5
- onSubmit: (data?: VerificationSMSResponse) => void;
6
+ onSubmit: (data?: VerificationResponse) => void;
6
7
  status: {
7
8
  verification_methods: VerificationMethods;
8
9
  };
@@ -1,7 +1,8 @@
1
- import { VerificationSMSResponse } from '../../../../../../api/src/lib/core_v2';
1
+ import { VerificationGPSResponse, VerificationSMSResponse } from '../../../../../../api/src/lib/core_v2';
2
2
  import { FormField, InferFormData } from '../../../Forms';
3
3
  import { OnFormSubmitType } from '../../../Forms/Form/Form.types';
4
4
  export declare const handleSmsCodeRequest: (data: OnFormSubmitType<InferFormData<FormField[]>>, setFormError: (error: string | null) => void, token: string | null) => Promise<boolean>;
5
5
  export declare const handleSmsCodeSend: (data: OnFormSubmitType<InferFormData<FormField[]>>, onSubmit: (data: VerificationSMSResponse) => void, setFormError: (error: string | null) => void, token: string | null) => Promise<boolean | undefined>;
6
6
  export declare const handleInviteCodeSend: (data: OnFormSubmitType<InferFormData<FormField[]>>, onSubmit: (data: VerificationSMSResponse) => void, setFormError: (error: string | null) => void, token: string | null) => Promise<boolean | undefined>;
7
7
  export declare const handlePostalCodeRequest: (onFetchProfile: () => Promise<void>, setFormError: (error: string | null) => void, token: string | null) => Promise<boolean | "postalCodeRequested">;
8
+ export declare const handleGpsVerification: (onSubmit: (data: VerificationGPSResponse) => void, setFormError: (error: string | null) => void, token: string | null) => Promise<boolean>;
@@ -1,13 +1,9 @@
1
+ import { components } from '../../../../api/src/lib/core';
1
2
  import { ComplaintReason } from '../../../../api/src/lib/core_v2/public/v1/types';
2
3
  export interface ComplaintModalProps {
3
4
  complaintReasons?: ComplaintReason[];
4
5
  handleModalClick: () => void;
5
6
  open: boolean;
6
- reporter?: {
7
- email: string;
8
- firstname: string;
9
- id: number;
10
- lastname: string;
11
- };
7
+ reporter?: Omit<components['schemas']['Core_V3_UserProfile'], 'implicit_interests'>;
12
8
  subjectId: number;
13
9
  }
@@ -0,0 +1,2 @@
1
+ import { FeedItemComplaintModalProps } from './FeedItemComplaintModal.types';
2
+ export declare const FeedItemComplaintModal: ({ handleReport, id, isAuthenticated, open, }: FeedItemComplaintModalProps) => import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,6 @@
1
+ export type FeedItemComplaintModalProps = {
2
+ handleReport: () => void;
3
+ id: number;
4
+ isAuthenticated: boolean;
5
+ open: boolean;
6
+ };
@@ -0,0 +1,3 @@
1
+ import { PostReactionsProps } from './PostReactions.types';
2
+ export declare const PostReactions: ({ itemId, limit, onReactionSelect, onToggleComments, reactions, replies, selectedReaction, tooltipReactions, }: PostReactionsProps) => import("react/jsx-runtime").JSX.Element;
3
+ export default PostReactions;
@@ -0,0 +1,10 @@
1
+ import { ReactionType } from '../../../../../../api/src/lib/types/reactions';
2
+ import { Reaction, ReactionStackProps } from '../../../Reactions/ReactionStack/ReactionStack.types';
3
+ export type PostReactionsProps = Omit<ReactionStackProps, 'stack' | 'expanded' | 'onClick'> & {
4
+ itemId: number;
5
+ onReactionSelect: (emoji: ReactionType) => void;
6
+ onToggleComments: () => void;
7
+ replies?: number;
8
+ selectedReaction?: ReactionType;
9
+ tooltipReactions: Reaction[];
10
+ };
@@ -1,5 +1,5 @@
1
- import { ReactionType } from '../../../../../../../api/src/lib/types/reactions';
2
- import { Reaction } from '../../../../../index';
1
+ import { ReactionType } from '../../../../../../api/src/lib/types/reactions';
2
+ import { Reaction } from '../../../../index';
3
3
  export declare const getReactionsArray: (reactions: Reaction[], selectedReaction?: ReactionType) => {
4
4
  selected: boolean;
5
5
  tooltip?: import('react').ReactNode;
@@ -0,0 +1,2 @@
1
+ import { ReplyProps } from './Reply.types';
2
+ export declare const Reply: ({ isAuthenticated, isEdited, onAddReply, postId, profile, reply, saveReply, }: ReplyProps) => import("react/jsx-runtime").JSX.Element | undefined;
@@ -0,0 +1,7 @@
1
+ import { components } from '../../../../../../../api/src/lib/core';
2
+ import { ReplyBubbleProps, ReplyType } from '../ReplyBubble/ReplyBubble.types';
3
+ export type ReplyProps = Omit<ReplyBubbleProps, 'handleEditing'> & {
4
+ onAddReply: (author_details: components['schemas']['Core_V3_AuthorDetails']) => void;
5
+ profile: components['schemas']['Core_V3_UserProfile'];
6
+ saveReply: (reply: ReplyType) => void;
7
+ };
@@ -0,0 +1,2 @@
1
+ import { components } from '../../../../../../../api/src/lib/core';
2
+ export declare const getAuthorBadges: (author_details?: components["schemas"]["Core_V3_AuthorDetails"] | null) => [import('../../../../../../../api/src/lib/types/newsFeeds').BadgeIconType] | [import('../../../../../../../api/src/lib/types/newsFeeds').BadgeIconType, import('../../../../../../../api/src/lib/types/newsFeeds').BadgeIconType] | [import('../../../../../../../api/src/lib/types/newsFeeds').BadgeIconType, import('../../../../../../../api/src/lib/types/newsFeeds').BadgeIconType, import('../../../../../../../api/src/lib/types/newsFeeds').BadgeIconType] | never[];
@@ -0,0 +1,3 @@
1
+ import { ReplyBubbleProps } from './ReplyBubble.types';
2
+ export declare const ReplyBubble: ({ handleEditing, isAuthenticated, isEdited, postId, profile, reply, }: ReplyBubbleProps) => import("react/jsx-runtime").JSX.Element;
3
+ export default ReplyBubble;
@@ -0,0 +1,10 @@
1
+ import { components } from '../../../../../../../api/src/lib/core';
2
+ export type ReplyType = components['schemas']['Core_V3_HoodMessageReply'];
3
+ export type ReplyBubbleProps = {
4
+ handleEditing: () => void;
5
+ isAuthenticated: boolean;
6
+ isEdited: boolean;
7
+ postId: number;
8
+ profile: components['schemas']['Core_V3_UserProfile'];
9
+ reply: ReplyType;
10
+ };
@@ -0,0 +1,5 @@
1
+ type ReplyGalleryProps = {
2
+ images: string[];
3
+ };
4
+ export declare const ReplyGallery: ({ images }: ReplyGalleryProps) => import("react/jsx-runtime").JSX.Element;
5
+ export {};
@@ -0,0 +1,10 @@
1
+ import { ReplyBubbleProps } from '../ReplyBubble.types';
2
+ type ReplyMoreOptionsProps = {
3
+ authorId: number;
4
+ handleEditing: ReplyBubbleProps['handleEditing'];
5
+ isAuthenticated: boolean;
6
+ isMine?: boolean;
7
+ postId: number;
8
+ };
9
+ export declare const ReplyMoreOptions: ({ authorId, handleEditing, isAuthenticated, isMine, postId, }: ReplyMoreOptionsProps) => import("react/jsx-runtime").JSX.Element;
10
+ export {};
@@ -0,0 +1,7 @@
1
+ import { components } from '../../../../../../../../api/src/lib/core';
2
+ type ReplyPoiProps = {
3
+ embeddable: components['schemas']['Core_V3_EmbedDetails'];
4
+ recommendedByUser?: boolean;
5
+ };
6
+ export declare const ReplyPoi: ({ embeddable, recommendedByUser }: ReplyPoiProps) => import("react/jsx-runtime").JSX.Element | null;
7
+ export {};
@@ -0,0 +1,4 @@
1
+ import { ReactNode } from 'react';
2
+ import { ReplyBubbleProps } from './ReplyBubble.types';
3
+ export declare const parseReplyContent: (reply?: ReplyBubbleProps["reply"]) => ReactNode[] | null;
4
+ export declare const renderEmbeddables: (reply: ReplyBubbleProps["reply"]) => (import("react/jsx-runtime").JSX.Element | null)[] | null;
@@ -1,8 +1,7 @@
1
1
  import { ReactionType } from '../../../../../../../../api/src/lib/types/reactions';
2
- import { ReplyReactionsProps } from '../ReplyReactions.types';
3
2
  export interface Item {
4
- id: string;
5
- reaction?: ReactionType;
3
+ id: number;
4
+ reaction?: ReactionType | null;
6
5
  }
7
6
  export interface Reaction {
8
7
  count?: number;
@@ -14,8 +13,8 @@ export type SetReaction = (reaction: ReactionType | null) => void;
14
13
  export interface LikeProps {
15
14
  isComment?: boolean;
16
15
  isVerticalLayout?: boolean;
17
- item: Item;
16
+ item?: Item;
18
17
  locked?: boolean;
19
- reactions: ReplyReactionsProps['tooltipReactions'];
18
+ reactions: Reaction[];
20
19
  setReaction: SetReaction;
21
20
  }
@@ -0,0 +1,3 @@
1
+ import { ReplyReactionsProps } from './ReplyReactions.types';
2
+ export declare const ReplyReactions: ({ onAddReply, profile, reply }: ReplyReactionsProps) => import("react/jsx-runtime").JSX.Element;
3
+ export default ReplyReactions;
@@ -0,0 +1,12 @@
1
+ import { components } from '../../../../../../../api/src/lib/core';
2
+ import { ReactionType } from '../../../../../../../api/src/lib/types/reactions';
3
+ import { ReplyType } from '../ReplyBubble/ReplyBubble.types';
4
+ export type ReplyReactionsProps = {
5
+ onAddReply: () => void;
6
+ profile: components['schemas']['Core_V3_UserProfile'];
7
+ reply: ReplyType;
8
+ };
9
+ export type Item = {
10
+ id: number;
11
+ reaction: ReactionType | null;
12
+ };
@@ -0,0 +1,5 @@
1
+ import { ReactionType } from '../../../../../../../api/src/lib/types/reactions';
2
+ export declare const tooltipReactions: {
3
+ reaction: ReactionType;
4
+ tooltip: string;
5
+ }[];
@@ -0,0 +1,14 @@
1
+ import { components } from '../../../../../../../api/src/lib/core';
2
+ export declare const fetchInteractions: (reply: components["schemas"]["Core_V3_HoodMessageReply"]) => Promise<{
3
+ hood_message_id: number;
4
+ bookmark: boolean;
5
+ reaction_love: boolean;
6
+ reaction_good_idea: boolean;
7
+ reaction_bravo: boolean;
8
+ reaction_thankyou: boolean;
9
+ reaction_agree: boolean;
10
+ reaction_support: boolean;
11
+ reaction_haha: boolean;
12
+ reaction_wow: boolean;
13
+ reaction_sad: boolean;
14
+ }[] | undefined>;
@@ -0,0 +1,22 @@
1
+ import { components } from '../../../../../../../api/src/lib/core';
2
+ import { ReactionType } from '../../../../../../../api/src/lib/types/reactions';
3
+ import { Reaction } from '../../../../Reactions/ReactionStack/ReactionStack.types';
4
+ import { Item, ReplyReactionsProps } from './ReplyReactions.types';
5
+ export declare const reactionMap: {
6
+ reaction_agree: string;
7
+ reaction_bravo: string;
8
+ reaction_good_idea: string;
9
+ reaction_haha: string;
10
+ reaction_love: string;
11
+ reaction_sad: string;
12
+ reaction_support: string;
13
+ reaction_thankyou: string;
14
+ reaction_wow: string;
15
+ };
16
+ export declare const getV3Reaction: (reaction: ReactionType | null) => string | null;
17
+ export declare const parseReactions: ({ counters, item, }: {
18
+ counters: ReplyReactionsProps["reply"]["counters"];
19
+ item: Item;
20
+ }) => Reaction[] | [];
21
+ export declare const countReactions: (reactions: Reaction[] | []) => number;
22
+ export declare const parseUserInteraction: (data: components["schemas"]["Core_V3_Interaction_List"]) => ReactionType | null;
@@ -0,0 +1,3 @@
1
+ import { ReplySectionProps } from './ReplySection.types';
2
+ export declare const ReplySection: ({ isAuthenticated, limit, postId, profile, replies, }: ReplySectionProps) => import("react/jsx-runtime").JSX.Element;
3
+ export default ReplySection;
@@ -0,0 +1,10 @@
1
+ import { components } from '../../../../../../../api/src/lib/core';
2
+ import { ReplyType } from '../ReplyBubble/ReplyBubble.types';
3
+ export type ReplySectionProps = {
4
+ isAuthenticated: boolean;
5
+ limit: number;
6
+ onAddReply: (author_details: components['schemas']['Core_V3_AuthorDetails']) => void;
7
+ postId: number;
8
+ profile: components['schemas']['Core_V3_UserProfile'];
9
+ replies: ReplyType[];
10
+ };
@@ -0,0 +1,16 @@
1
+ import { RichTextAreaValueType } from '../../../../RichTextArea/RichTextArea.types';
2
+ type PostReplyProps = {
3
+ postId: number;
4
+ reply: RichTextAreaValueType;
5
+ };
6
+ export declare const postReply: ({ postId, reply }: PostReplyProps) => Promise<{
7
+ id: number;
8
+ body: string;
9
+ author_details?: import('../../../../../../../api/src/lib/core').components["schemas"]["Core_V3_AuthorDetails"] | null;
10
+ created_at: string;
11
+ updated_at?: string | null;
12
+ embeds: import('../../../../../../../api/src/lib/core').components["schemas"]["Core_V3_EmbedDetails_List"];
13
+ images: import('../../../../../../../api/src/lib/core').components["schemas"]["Core_V3_HoodMessageImage_List"];
14
+ counters: import('../../../../../../../api/src/lib/core').components["schemas"]["Core_V3_HoodMessageCounters"];
15
+ } | undefined>;
16
+ export {};
@@ -0,0 +1,20 @@
1
+ import { components } from '../../../../../../../api/src/lib/core';
2
+ import { ReplySectionProps } from './ReplySection.types';
3
+ export declare const sortByCreatedAt: (a: components["schemas"]["Core_V3_HoodMessageReply"], b: components["schemas"]["Core_V3_HoodMessageReply"]) => number;
4
+ export declare const isExpanded: (limit: number, replies: ReplySectionProps["replies"]) => boolean;
5
+ type SlicedRepliesProps = {
6
+ expanded: boolean;
7
+ limit: number;
8
+ replies: ReplySectionProps['replies'];
9
+ };
10
+ export declare const slicedReplies: ({ expanded, limit, replies }: SlicedRepliesProps) => {
11
+ id: number;
12
+ body: string;
13
+ author_details?: components["schemas"]["Core_V3_AuthorDetails"] | null;
14
+ created_at: string;
15
+ updated_at?: string | null;
16
+ embeds: components["schemas"]["Core_V3_EmbedDetails_List"];
17
+ images: components["schemas"]["Core_V3_HoodMessageImage_List"];
18
+ counters: components["schemas"]["Core_V3_HoodMessageCounters"];
19
+ }[];
20
+ export {};
@@ -1,4 +1,6 @@
1
1
  import { ReactNode } from 'react';
2
+ import { PageSection } from '../../../../../services/src/analytics';
3
+ import { SnowplowTrackEventMap } from '../../../../../services/src/snowplow/types';
2
4
  import { TGridSpacing } from '../../Grids/Grid/Grid.types';
3
5
  import { GridItemProps } from '../../Grids/Grid/GridItem/GridItem.types';
4
6
  import { FormButtonProps } from '../Fields/FormButton/FormButtonProps';
@@ -95,6 +97,10 @@ export type WizardStepT = {
95
97
  formKey?: string;
96
98
  id: string;
97
99
  onSubmit?: FormProps<InferFormData<FormField[]>>['onSubmit'];
100
+ pageViewtracking?: {
101
+ name: SnowplowTrackEventMap['page_view']['name'];
102
+ section?: PageSection;
103
+ };
98
104
  spacing?: TGridSpacing;
99
105
  validationMode?: FormProps<InferFormData<FormField[]>>['validationMode'];
100
106
  validationSchema?: FormProps<InferFormData<FormField[]>>['validationSchema'];
@@ -0,0 +1,9 @@
1
+ import { TrackFunction } from '../../../../../services/src/analytics';
2
+ import { SnowplowTrackFunction } from '../../../../../services/src/snowplow';
3
+ import { WizardStepT } from './Wizard.types';
4
+ interface TrackingFunctions {
5
+ snowplowTrack: SnowplowTrackFunction;
6
+ track?: TrackFunction;
7
+ }
8
+ export declare const useTrackStepPageView: (currentStep: number, steps: WizardStepT[], trackingFunctions: TrackingFunctions) => void;
9
+ export default useTrackStepPageView;
@@ -1,3 +1,3 @@
1
1
  import { ImageCropperProps } from './ImageCropper.types';
2
- declare const ImageCropper: ({ aspectRatio, imageFile, onClose, onCrop, translations: t, }: ImageCropperProps) => import("react/jsx-runtime").JSX.Element;
2
+ declare const ImageCropper: (props: ImageCropperProps) => import("react/jsx-runtime").JSX.Element;
3
3
  export default ImageCropper;
@@ -1,5 +1,5 @@
1
+ import { ArbitraryProps } from 'react-advanced-cropper/dist/types';
1
2
  export type ImageCropperProps = {
2
- aspectRatio?: number;
3
3
  imageFile?: File;
4
4
  onClose: () => void;
5
5
  onCrop: (image: File) => void;
@@ -10,4 +10,11 @@ export type ImageCropperProps = {
10
10
  rotate: string;
11
11
  title: string;
12
12
  };
13
- };
13
+ } & ({
14
+ aspectRatio?: number;
15
+ stencil?: 'rectangular';
16
+ stencilProps?: ArbitraryProps;
17
+ } | {
18
+ stencil: 'circular';
19
+ stencilProps?: ArbitraryProps;
20
+ });
@@ -1,3 +1,3 @@
1
1
  import { ProfileProps } from './Profile.types';
2
- declare const Profile: ({ alt, link, name, onClick, src }: ProfileProps) => import("react/jsx-runtime").JSX.Element;
2
+ declare const Profile: ({ alt, link, name, onClick, src, userId }: ProfileProps) => import("react/jsx-runtime").JSX.Element;
3
3
  export default Profile;
@@ -4,4 +4,5 @@ export interface ProfileProps {
4
4
  name: string;
5
5
  onClick?: () => void;
6
6
  src: string;
7
+ userId: number;
7
8
  }
@@ -1,3 +1,3 @@
1
1
  import { ReactionTabListProps } from './ReactionTabList.types';
2
- declare const ReactionTabList: ({ closeText, getPicturePlaceholder, getReactions, headerTitle, open, postId, setOpen, userLink, }: ReactionTabListProps) => import("react/jsx-runtime").JSX.Element | null;
2
+ declare const ReactionTabList: ({ closeText, getReactions, headerTitle, open, postId, setOpen, userLink, }: ReactionTabListProps) => import("react/jsx-runtime").JSX.Element | null;
3
3
  export default ReactionTabList;
@@ -1,7 +1,6 @@
1
- import { ReactionUser, ReactionsGetPayload, ReactionsGetResponse } from '../../../../../api/src/lib/core_v2';
1
+ import { ReactionsGetPayload, ReactionsGetResponse } from '../../../../../api/src/lib/core_v2';
2
2
  export interface ReactionTabListProps {
3
3
  closeText?: string;
4
- getPicturePlaceholder: (user: ReactionUser) => string;
5
4
  getReactions: (payload: ReactionsGetPayload) => Promise<ReactionsGetResponse>;
6
5
  headerTitle?: string;
7
6
  open: boolean;
@@ -1,2 +1,2 @@
1
1
  import { RichTextAreaProps } from './RichTextArea.types';
2
- export default function RichTextArea({ ariaDescribedby, attachment, charLimit, colorScheme, disabled, errorText, hintText, hoodId, label, onBlur, onChange, onFocus, onImageClick, onPoiClick, onPoiDismiss, reachedHoodIds, size, value, }: RichTextAreaProps): import("react/jsx-runtime").JSX.Element;
2
+ export default function RichTextArea({ ariaDescribedby, attachment, charLimit, colorScheme, contentEditableRef, disabled, errorText, hintText, id, label, onBlur, onChange, onFocus, onImageClick, onPoiClick, onPoiDismiss, size, submitButton, value, }: RichTextAreaProps): import("react/jsx-runtime").JSX.Element;
@@ -1,5 +1,5 @@
1
- import { FocusEvent } from 'react';
2
- export type AttachmentType = 'image' | 'poi';
1
+ import { FocusEvent, ReactNode, RefObject } from 'react';
2
+ export type AttachmentType = 'image' | 'poi' | 'emoji';
3
3
  export type AttachmentConfig = {
4
4
  ariaLabel: string;
5
5
  onClick?: () => void;
@@ -10,10 +10,10 @@ export type RichTextAreaProps = {
10
10
  attachment?: AttachmentConfig[];
11
11
  charLimit?: number;
12
12
  colorScheme?: 'outline' | 'filled';
13
+ contentEditableRef?: RefObject<HTMLDivElement>;
13
14
  disabled?: boolean;
14
15
  errorText?: string;
15
16
  hintText?: string;
16
- hoodId?: number;
17
17
  id?: string;
18
18
  label?: string;
19
19
  name?: string;
@@ -23,24 +23,22 @@ export type RichTextAreaProps = {
23
23
  onImageClick?: () => void;
24
24
  onPoiClick?: boolean;
25
25
  onPoiDismiss?: () => void;
26
- reachedHoodIds?: number[];
27
26
  size?: 'medium' | 'large';
27
+ submitButton?: ReactNode;
28
28
  value: RichTextAreaValueType;
29
29
  };
30
30
  export type CoreV3Embed = {
31
- gid: string;
32
- indices?: number[] | null;
33
- role: 'mention' | 'link' | 'profile';
34
- };
35
- export type CoreV3EmbedWithDetails = CoreV3Embed & {
36
31
  cta_url?: string;
37
32
  description?: string | null;
33
+ gid: string;
38
34
  image_url?: string | null;
35
+ indices?: number[] | null;
39
36
  recommendations_count?: number;
37
+ role: 'mention' | 'link' | 'profile';
40
38
  title?: string;
41
39
  };
42
- export type EmbeddableType = CoreV3Embed | CoreV3EmbedWithDetails;
43
- export type ContentEmbeddable = CoreV3Embed | CoreV3EmbedWithDetails;
40
+ export type EmbeddableType = CoreV3Embed;
41
+ export type ContentEmbeddable = CoreV3Embed;
44
42
  export type RichTextAreaValueType = {
45
43
  attachments?: {
46
44
  images?: ImageFile[];
@@ -1,5 +1,5 @@
1
1
  import { LinkedBusinessProfile } from '../../../../../../api/src/lib/types/newsFeeds';
2
- export declare const useBusinessProfiles: (id: number) => {
2
+ export declare const useBusinessProfiles: (id?: number) => {
3
3
  poi: LinkedBusinessProfile | null;
4
4
  poiError: string | null;
5
5
  };
@@ -1,7 +1,5 @@
1
1
  interface MentionPluginProps {
2
2
  anchorRef: React.RefObject<HTMLElement>;
3
- hoodId: number;
4
- reachedHoodIds: number[];
5
3
  }
6
- export declare function MentionPlugin({ anchorRef, hoodId, reachedHoodIds }: MentionPluginProps): import("react/jsx-runtime").JSX.Element;
4
+ export declare function MentionPlugin({ anchorRef }: MentionPluginProps): import("react/jsx-runtime").JSX.Element;
7
5
  export {};
@@ -1,9 +1,3 @@
1
- import { NeighbourResponse } from '../../../../../api/src/lib/core_v2';
2
- declare global {
3
- interface Window {
4
- __STORYBOOK_MOCK_USERS__?: NeighbourResponse[];
5
- }
6
- }
7
1
  /**
8
2
  * Generate a unique GID for a mention
9
3
  */
@@ -11,4 +5,7 @@ export declare function generateGID(userId: number): string;
11
5
  /**
12
6
  * Fetch neighbours for mention suggestions
13
7
  */
14
- export declare function fetchNeighbours(reachedHoodIds: number[], hoodId: number, query: string): Promise<NeighbourResponse[]>;
8
+ export declare function fetchNeighbours(query: string): Promise<{
9
+ page: import('../../../../../api/src/lib/core').components["schemas"]["Core_V3_Neighbour_List"];
10
+ page_info: import('../../../../../api/src/lib/core').components["schemas"]["PageInfo"];
11
+ } | undefined>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@goodhood-web/nebenan-base",
3
- "version": "4.1.0-development.2",
3
+ "version": "4.1.0-development.21",
4
4
  "main": "./index.js",
5
5
  "types": "./index.d.ts",
6
6
  "repository": "https://github.com/good-hood-gmbh/goodhood-web",