@mirantes-micro/foundation-design-system 1.2.39 → 1.2.41
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.
- package/dist/27d54d5c68c7baef59d63931c62016d014d55518-Y4EV6WKY.png +0 -0
- package/dist/chunk-5KHU3CLL.js +2 -0
- package/dist/design-system.css +2 -0
- package/dist/dynamic-input-W6QXTNYD.js +2 -0
- package/dist/index.d.ts +2431 -393
- package/dist/index.js +3944 -418
- package/package.json +212 -136
package/dist/index.d.ts
CHANGED
|
@@ -1,39 +1,143 @@
|
|
|
1
1
|
import * as React$1 from 'react';
|
|
2
|
-
import React__default, { ReactNode, ChangeEvent, KeyboardEvent, FocusEvent } from 'react';
|
|
2
|
+
import React__default, { ReactNode, JSX, RefObject, InputHTMLAttributes, ChangeEvent, KeyboardEvent, FocusEvent } from 'react';
|
|
3
|
+
import * as _tanstack_react_query from '@tanstack/react-query';
|
|
3
4
|
import { QueryClient } from '@tanstack/react-query';
|
|
4
|
-
import { AxiosInstance } from 'axios';
|
|
5
|
+
import { AxiosInstance, GenericAbortSignal } from 'axios';
|
|
6
|
+
import { Socket } from 'socket.io-client';
|
|
5
7
|
import * as zustand from 'zustand';
|
|
8
|
+
import * as zustand_middleware from 'zustand/middleware';
|
|
9
|
+
export { ErrorResponse, ErrorType } from '@mirantes-micro/errors';
|
|
6
10
|
|
|
7
|
-
|
|
11
|
+
interface ModalProps {
|
|
12
|
+
isOpen: boolean;
|
|
13
|
+
onClose: () => void;
|
|
14
|
+
children: ReactNode;
|
|
15
|
+
showCloseButton?: boolean;
|
|
16
|
+
hideCloseButton?: boolean;
|
|
17
|
+
closeOnClickOutside?: boolean;
|
|
8
18
|
className?: string;
|
|
9
|
-
|
|
19
|
+
header?: React__default.ReactNode;
|
|
20
|
+
footer?: React__default.ReactNode;
|
|
21
|
+
disableFullScreen?: boolean;
|
|
22
|
+
isLoading?: boolean;
|
|
23
|
+
size?: "sm" | "md" | "lg" | "xl";
|
|
24
|
+
showOverlay?: boolean;
|
|
25
|
+
asStacked?: boolean;
|
|
26
|
+
asSheet?: boolean;
|
|
27
|
+
}
|
|
28
|
+
declare const MirantesModal: ({ isOpen, onClose, children, showCloseButton, hideCloseButton, closeOnClickOutside, className, header, footer, disableFullScreen, isLoading, size, showOverlay, asStacked, asSheet, }: ModalProps) => React__default.ReactPortal | null;
|
|
10
29
|
|
|
11
|
-
|
|
30
|
+
type ToastProps = {
|
|
31
|
+
title: string;
|
|
32
|
+
message?: ReactNode;
|
|
33
|
+
icon?: ReactNode;
|
|
34
|
+
duration?: number;
|
|
35
|
+
actionLabel?: string;
|
|
36
|
+
onAction?: () => void;
|
|
37
|
+
cancelLabel?: string;
|
|
38
|
+
onCancel?: () => void;
|
|
39
|
+
};
|
|
40
|
+
type ActionToastProps = ToastProps & {
|
|
41
|
+
actionLabel: string;
|
|
42
|
+
onAction: () => void;
|
|
43
|
+
cancelLabel?: string;
|
|
44
|
+
onCancel?: () => void;
|
|
45
|
+
};
|
|
46
|
+
declare function useMirantesToast(): {
|
|
47
|
+
successToast: (props: ToastProps) => string | number;
|
|
48
|
+
errorToast: (props: ToastProps) => string | number;
|
|
49
|
+
infoToast: (props: ToastProps) => string | number;
|
|
50
|
+
warnToast: (props: ToastProps) => string | number;
|
|
51
|
+
actionToast: (props: ActionToastProps) => string | number;
|
|
52
|
+
};
|
|
12
53
|
|
|
13
|
-
declare
|
|
54
|
+
declare const NoRecruitmentResponsiveIlustration: ({ className, }: {
|
|
55
|
+
className?: string;
|
|
56
|
+
}) => React__default.JSX.Element;
|
|
14
57
|
|
|
15
|
-
|
|
58
|
+
interface IFollowerUser {
|
|
59
|
+
id?: string;
|
|
60
|
+
name?: string;
|
|
61
|
+
avatar?: string;
|
|
62
|
+
}
|
|
63
|
+
interface IFollowerPage {
|
|
64
|
+
id?: string;
|
|
65
|
+
name?: string;
|
|
66
|
+
logo?: string;
|
|
67
|
+
}
|
|
68
|
+
interface IFollowers {
|
|
69
|
+
page?: IFollowerPage[];
|
|
70
|
+
user?: IFollowerUser[];
|
|
71
|
+
}
|
|
72
|
+
interface IPage {
|
|
73
|
+
id?: string;
|
|
74
|
+
name?: string;
|
|
75
|
+
slug?: string;
|
|
76
|
+
logo?: string;
|
|
77
|
+
sector?: string;
|
|
78
|
+
sectorId?: string;
|
|
79
|
+
description?: string;
|
|
80
|
+
aboutUs?: string;
|
|
81
|
+
site?: string;
|
|
82
|
+
organizationSize?: string;
|
|
83
|
+
organizationType?: string;
|
|
84
|
+
pageType?: string;
|
|
85
|
+
isAcademic?: boolean;
|
|
86
|
+
foundedYear?: number;
|
|
87
|
+
address?: {
|
|
88
|
+
city?: string;
|
|
89
|
+
country?: string;
|
|
90
|
+
address?: string;
|
|
91
|
+
};
|
|
92
|
+
phoneNumber?: string;
|
|
93
|
+
followers?: IFollowers;
|
|
94
|
+
followersCount?: number;
|
|
95
|
+
}
|
|
16
96
|
|
|
17
|
-
|
|
97
|
+
declare const useApiGetPage: (slug?: string) => {
|
|
98
|
+
page: IPage | null | undefined;
|
|
99
|
+
isGettingPage: boolean;
|
|
100
|
+
};
|
|
101
|
+
|
|
102
|
+
type TLocale$1 = "pt" | "en" | "fr";
|
|
18
103
|
interface IMirantesFoundationProviderProps {
|
|
19
104
|
children: ReactNode;
|
|
20
105
|
Notification?: ReactNode;
|
|
21
106
|
queryClient?: QueryClient;
|
|
22
107
|
onOpenCreatePostModal?: () => void;
|
|
108
|
+
commentComponents?: ReactNode | JSX.Element;
|
|
109
|
+
pageTriggerComponents?: ReactNode | JSX.Element;
|
|
110
|
+
createJobButton?: ({ onClick, showLabel, }: {
|
|
111
|
+
onClick?: () => void;
|
|
112
|
+
showLabel?: boolean;
|
|
113
|
+
}) => JSX.Element;
|
|
114
|
+
openCreateJobModal?: () => void;
|
|
23
115
|
values?: {
|
|
24
116
|
pageId?: string;
|
|
117
|
+
isPageFeed?: boolean;
|
|
118
|
+
isCommunityFeed?: boolean;
|
|
119
|
+
community?: {
|
|
120
|
+
id?: string;
|
|
121
|
+
name?: string;
|
|
122
|
+
slug?: string;
|
|
123
|
+
image?: string;
|
|
124
|
+
};
|
|
25
125
|
page?: {
|
|
26
126
|
id?: string;
|
|
27
127
|
slug?: string;
|
|
28
128
|
logo?: string;
|
|
29
129
|
name?: string;
|
|
130
|
+
sector?: string;
|
|
30
131
|
};
|
|
31
132
|
widgetsApi?: string;
|
|
32
133
|
searchApi?: string;
|
|
33
134
|
feedApi?: string;
|
|
135
|
+
authV2ApiUrl?: string;
|
|
34
136
|
environment?: string;
|
|
35
137
|
profileApiUrl?: string;
|
|
138
|
+
analyticsApiUrl?: string;
|
|
36
139
|
billingApiUrl?: string;
|
|
140
|
+
assetsApiUrl?: string;
|
|
37
141
|
multicaixaExpressUrl?: string;
|
|
38
142
|
stripeKey?: string;
|
|
39
143
|
socketApiUrl?: string;
|
|
@@ -42,10 +146,10 @@ interface IMirantesFoundationProviderProps {
|
|
|
42
146
|
mirantesDomain?: string;
|
|
43
147
|
openCageApiKey?: string;
|
|
44
148
|
ocpSubscriptionKey?: string;
|
|
45
|
-
locale?: TLocale;
|
|
149
|
+
locale?: TLocale$1;
|
|
46
150
|
Link?: LinkComponent;
|
|
47
151
|
usePathname?: UsePathname;
|
|
48
|
-
user?: User;
|
|
152
|
+
user?: User$4;
|
|
49
153
|
isGettingUser?: boolean;
|
|
50
154
|
isGettingStats?: boolean;
|
|
51
155
|
hostUrl?: string;
|
|
@@ -58,26 +162,40 @@ interface IMirantesFoundationProviderProps {
|
|
|
58
162
|
interface IMirantesFoundationContext {
|
|
59
163
|
widgetsApi?: string;
|
|
60
164
|
feedApi?: string;
|
|
165
|
+
authV2ApiUrl?: string;
|
|
61
166
|
searchApi?: string;
|
|
62
167
|
profileApiUrl?: string;
|
|
63
168
|
chatApiUrl?: string;
|
|
64
169
|
billingApiUrl?: string;
|
|
170
|
+
analyticsApiUrl?: string;
|
|
171
|
+
assetsApiUrl?: string;
|
|
65
172
|
multicaixaExpressUrl?: string;
|
|
66
173
|
stripeKey?: string;
|
|
67
174
|
chatForPage?: boolean;
|
|
68
175
|
environment?: string;
|
|
69
176
|
socketApiUrl?: string;
|
|
177
|
+
socketRef?: RefObject<Socket | null>;
|
|
70
178
|
mirantesDomain?: string;
|
|
71
|
-
|
|
179
|
+
hostUrl?: string;
|
|
180
|
+
locale?: TLocale$1;
|
|
72
181
|
Link?: LinkComponent;
|
|
73
182
|
usePathname?: UsePathname;
|
|
183
|
+
user?: User$4;
|
|
184
|
+
isPageFeed?: boolean;
|
|
185
|
+
isCommunityFeed?: boolean;
|
|
186
|
+
community?: {
|
|
187
|
+
id?: string;
|
|
188
|
+
name?: string;
|
|
189
|
+
slug?: string;
|
|
190
|
+
image?: string;
|
|
191
|
+
};
|
|
74
192
|
pageId?: string;
|
|
75
|
-
user?: User;
|
|
76
193
|
page?: {
|
|
77
194
|
id?: string;
|
|
78
195
|
slug?: string;
|
|
79
196
|
logo?: string;
|
|
80
197
|
name?: string;
|
|
198
|
+
sector?: string;
|
|
81
199
|
};
|
|
82
200
|
isGettingUser?: boolean;
|
|
83
201
|
isGettingStats?: boolean;
|
|
@@ -89,6 +207,13 @@ interface IMirantesFoundationContext {
|
|
|
89
207
|
authApiUrl?: string;
|
|
90
208
|
queryClient?: QueryClient;
|
|
91
209
|
onOpenCreatePostModal?: (cb?: () => void) => void;
|
|
210
|
+
openCreateJobModal?: () => void;
|
|
211
|
+
commentComponents?: ReactNode | JSX.Element;
|
|
212
|
+
pageTriggerComponents?: ReactNode | JSX.Element;
|
|
213
|
+
createJobButton?: ({ onClick, showLabel, }: {
|
|
214
|
+
onClick?: () => void;
|
|
215
|
+
showLabel?: boolean;
|
|
216
|
+
}) => JSX.Element;
|
|
92
217
|
}
|
|
93
218
|
type CommonLinkProps = {
|
|
94
219
|
to?: string;
|
|
@@ -98,178 +223,361 @@ type CommonLinkProps = {
|
|
|
98
223
|
replace?: boolean;
|
|
99
224
|
[key: string]: any;
|
|
100
225
|
};
|
|
101
|
-
type User = {
|
|
226
|
+
type User$4 = {
|
|
102
227
|
id: string;
|
|
103
228
|
name: string;
|
|
104
229
|
email: string;
|
|
105
230
|
phone: string;
|
|
106
231
|
currentCompany?: string;
|
|
107
232
|
isOpenToWork: boolean;
|
|
233
|
+
isActive: boolean;
|
|
108
234
|
avatar: string;
|
|
109
235
|
accessToken: string;
|
|
110
236
|
refreshToken: string;
|
|
111
237
|
role?: string;
|
|
112
238
|
slug: string;
|
|
113
239
|
isInterestsSynced?: boolean;
|
|
240
|
+
headline?: string;
|
|
114
241
|
followersCount?: number;
|
|
115
242
|
followingCount?: number;
|
|
243
|
+
socialStats?: {
|
|
244
|
+
contactsCount?: number;
|
|
245
|
+
followingCount?: number;
|
|
246
|
+
followersCount?: number;
|
|
247
|
+
};
|
|
116
248
|
postsCount?: number;
|
|
117
249
|
profileCompletedPercentage?: number;
|
|
118
250
|
};
|
|
119
251
|
type LinkComponent = (props: CommonLinkProps) => any;
|
|
120
252
|
type UsePathname = () => string;
|
|
121
253
|
|
|
122
|
-
declare function MirantesFoundationProvider({ children, Notification, queryClient, onOpenCreatePostModal, values: { chatApiUrl, chatForPage, locale, Link, usePathname, user, isGettingUser, mirantesDomain, environment, feedApi, searchApi, widgetsApi, hostUrl, isDev, profileApiUrl, isGettingStats, openCageApiKey, pageId, authedApi, authApiUrl, socketApiUrl, uploadFilesApi, page, ocpSubscriptionKey, billingApiUrl, multicaixaExpressUrl, stripeKey }, }: IMirantesFoundationProviderProps): React__default.JSX.Element;
|
|
123
|
-
|
|
124
|
-
declare function WorkspacePanel(): React__default.JSX.Element;
|
|
125
|
-
|
|
126
|
-
declare function Header({ className }: {
|
|
127
|
-
className?: string;
|
|
128
|
-
}): React__default.JSX.Element;
|
|
254
|
+
declare function MirantesFoundationProvider({ children, Notification, queryClient, onOpenCreatePostModal, commentComponents, pageTriggerComponents, openCreateJobModal, createJobButton, values: { chatApiUrl, chatForPage, locale, Link, usePathname, user, isGettingUser, mirantesDomain, environment, feedApi, searchApi, widgetsApi, hostUrl, assetsApiUrl, isDev, profileApiUrl, analyticsApiUrl, isGettingStats, openCageApiKey, pageId, authedApi, authApiUrl, socketApiUrl, uploadFilesApi, page, ocpSubscriptionKey, billingApiUrl, multicaixaExpressUrl, stripeKey, isPageFeed, community, isCommunityFeed, authV2ApiUrl, }, }: IMirantesFoundationProviderProps): React__default.JSX.Element;
|
|
129
255
|
|
|
130
256
|
declare function useMirantesFoundation(): IMirantesFoundationContext;
|
|
131
257
|
|
|
132
|
-
|
|
133
|
-
|
|
258
|
+
/**
|
|
259
|
+
* Creates a persistent state from localStorage
|
|
260
|
+
* @param key - The localStorage key to use
|
|
261
|
+
* @param defaultValue - The default value if no stored value exists
|
|
262
|
+
* @returns The stored value or defaultValue
|
|
263
|
+
*/
|
|
264
|
+
declare function createPersistentState<T>(key: string, defaultValue: T): T;
|
|
134
265
|
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
266
|
+
/**
|
|
267
|
+
* A hook that persists UI state (views, modals) to localStorage
|
|
268
|
+
* The state is automatically saved when changed and restored on page load
|
|
269
|
+
*
|
|
270
|
+
* @param key - The localStorage key to use for persistence
|
|
271
|
+
* @param defaultValue - The default value if no stored value exists
|
|
272
|
+
* @returns A tuple of [state, setState] similar to useState
|
|
273
|
+
*
|
|
274
|
+
* @example
|
|
275
|
+
* ```tsx
|
|
276
|
+
* // Persist view state
|
|
277
|
+
* const [view, setView] = usePersistentUIState<"home" | "chat">("ui-view", "home");
|
|
278
|
+
*
|
|
279
|
+
* // Persist modal state
|
|
280
|
+
* const [modal, setModal] = usePersistentUIState<string | null>("ui-modal", null);
|
|
281
|
+
* ```
|
|
282
|
+
*/
|
|
283
|
+
declare function usePersistentUIState<T>(key: string, defaultValue: T): readonly [T, React$1.Dispatch<React$1.SetStateAction<T>>];
|
|
284
|
+
|
|
285
|
+
interface IUserVisibilitySettings {
|
|
286
|
+
userId?: string;
|
|
287
|
+
profileViewMode?: EProfileViewMode;
|
|
288
|
+
profilePublic?: boolean;
|
|
289
|
+
profilePictureScope?: EPictureVisibility;
|
|
290
|
+
followingVisibility?: EFollowingVisibility;
|
|
291
|
+
notifyMentionsInMedia?: boolean;
|
|
292
|
+
}
|
|
293
|
+
declare enum EProfileViewMode {
|
|
294
|
+
professional = "PROFESSIONAL_IDENTITY",
|
|
295
|
+
sector = "SECTOR_IDENTIFICATION",
|
|
296
|
+
confidential = "CONFIDENTIAL_MODE"
|
|
297
|
+
}
|
|
298
|
+
declare enum EPictureVisibility {
|
|
299
|
+
contacts = "CONTACTS",
|
|
300
|
+
network = "NETWORK",
|
|
301
|
+
public = "PUBLIC"
|
|
302
|
+
}
|
|
303
|
+
declare enum EFollowingVisibility {
|
|
304
|
+
me = "ONLY_ME",
|
|
305
|
+
contacts = "CONTACTS",
|
|
306
|
+
all = "EVERYONE"
|
|
145
307
|
}
|
|
146
|
-
declare function DateInput({ label, onChange, value, required, className, triggerClassName, error, disabled, calendarClassName, }: DateInputProps$1): React$1.JSX.Element;
|
|
147
308
|
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
309
|
+
type Settings = {
|
|
310
|
+
language: {
|
|
311
|
+
interface: string;
|
|
312
|
+
content: string;
|
|
313
|
+
};
|
|
314
|
+
theme: string;
|
|
315
|
+
feed: {
|
|
316
|
+
preference: string;
|
|
317
|
+
allowMentions: boolean;
|
|
318
|
+
};
|
|
319
|
+
profile: IUserVisibilitySettings;
|
|
320
|
+
};
|
|
321
|
+
declare const getSettingsFromCookie: (cookieName: string) => Settings | null;
|
|
322
|
+
declare const clearSettingsCookie: (cookieName: string, options: {
|
|
323
|
+
domain: string;
|
|
324
|
+
isDev: boolean;
|
|
325
|
+
}) => void;
|
|
326
|
+
declare const useLoadSettings: () => Settings | null;
|
|
156
327
|
|
|
157
|
-
interface
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
328
|
+
interface ICreateTelemetryEventInput {
|
|
329
|
+
input?: {
|
|
330
|
+
source?: {
|
|
331
|
+
app?: "mirantes-web" | "mirantes-mobile";
|
|
332
|
+
platform?: "ios" | "android" | "web";
|
|
333
|
+
version?: string;
|
|
334
|
+
environment?: string;
|
|
335
|
+
};
|
|
336
|
+
actor?: {
|
|
337
|
+
user_id?: string;
|
|
338
|
+
anonymous_id?: string;
|
|
339
|
+
session_id?: string;
|
|
340
|
+
};
|
|
341
|
+
context?: {
|
|
342
|
+
route?: string;
|
|
343
|
+
referrer?: string;
|
|
344
|
+
timezone?: string;
|
|
345
|
+
locale?: string;
|
|
346
|
+
country?: string;
|
|
347
|
+
device?: {
|
|
348
|
+
os?: string;
|
|
349
|
+
model?: string;
|
|
350
|
+
};
|
|
351
|
+
browser?: {
|
|
352
|
+
name?: string;
|
|
353
|
+
version?: string;
|
|
354
|
+
};
|
|
355
|
+
};
|
|
356
|
+
events?: ITelemetryEvent[];
|
|
357
|
+
};
|
|
173
358
|
}
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
latitude?: number;
|
|
180
|
-
longitude?: number;
|
|
181
|
-
address?: string;
|
|
359
|
+
interface ITelemetryEvent {
|
|
360
|
+
event_id?: string;
|
|
361
|
+
event_type?: "PAGE_VIEW" | "PROFILE_VIEW" | "CLICK_APPLY_JOB" | "SIGNUP_STEP_1" | "SIGNUP_STEP_2" | "SIGNUP_STEP_3" | "PERF_LOAD_TIME";
|
|
362
|
+
occurred_at?: Date;
|
|
363
|
+
metadata?: any;
|
|
182
364
|
}
|
|
183
|
-
interface
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
wrapperClassName?: string;
|
|
188
|
-
inputClassName?: string;
|
|
189
|
-
suggestionsWrapperClassName?: string;
|
|
190
|
-
suggestionItemClassName?: string;
|
|
191
|
-
selectedItemClassName?: string;
|
|
192
|
-
loadingIndicatorClassName?: string;
|
|
193
|
-
clearButtonClassName?: string;
|
|
194
|
-
error?: string;
|
|
195
|
-
errorClassName?: string;
|
|
196
|
-
leftElement?: ReactNode;
|
|
197
|
-
minChars?: number;
|
|
198
|
-
debounceDelay?: number;
|
|
199
|
-
placeholder?: string;
|
|
200
|
-
noResultsText?: string;
|
|
201
|
-
customLoading?: ReactNode;
|
|
202
|
-
floatable?: boolean;
|
|
365
|
+
interface ICreateTelemetryEventOutput {
|
|
366
|
+
events?: {
|
|
367
|
+
id?: string;
|
|
368
|
+
}[];
|
|
203
369
|
}
|
|
204
|
-
declare function AddressAutocompleteInput({ value, onChange, className, wrapperClassName, inputClassName, suggestionsWrapperClassName, suggestionItemClassName, selectedItemClassName, loadingIndicatorClassName, clearButtonClassName, errorClassName, error, leftElement, minChars, debounceDelay, placeholder, noResultsText, customLoading, floatable, }: AddressInputProps): React__default.JSX.Element;
|
|
205
370
|
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
onChange?: (value: {
|
|
210
|
-
locale: string;
|
|
211
|
-
name: string;
|
|
212
|
-
}) => void;
|
|
213
|
-
className?: string;
|
|
214
|
-
defaultCode?: string;
|
|
215
|
-
forNationality?: boolean;
|
|
216
|
-
}
|
|
371
|
+
declare function useRegisterTracking(): {
|
|
372
|
+
registerEvent: _tanstack_react_query.UseMutateFunction<ICreateTelemetryEventOutput | null, Error, ICreateTelemetryEventInput, unknown>;
|
|
373
|
+
};
|
|
217
374
|
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
code: string;
|
|
225
|
-
name: string;
|
|
226
|
-
}) => void;
|
|
227
|
-
error?: string;
|
|
228
|
-
floatable?: boolean;
|
|
375
|
+
type OwnerType = "user" | "organization" | "system" | "chat";
|
|
376
|
+
interface AssetUploadRequest {
|
|
377
|
+
file: File;
|
|
378
|
+
owner_type: OwnerType;
|
|
379
|
+
owner_id?: string;
|
|
380
|
+
is_public: boolean;
|
|
229
381
|
}
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
382
|
+
interface AssetUploadResponse {
|
|
383
|
+
data: {
|
|
384
|
+
url?: string;
|
|
385
|
+
assetId?: string;
|
|
386
|
+
};
|
|
387
|
+
message: string;
|
|
233
388
|
}
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
className?: string;
|
|
389
|
+
interface SignedUrlRequest {
|
|
390
|
+
assetId: string;
|
|
391
|
+
expiry: number;
|
|
392
|
+
version: "small" | "medium" | "large";
|
|
239
393
|
}
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
394
|
+
interface SignedUrlResponse {
|
|
395
|
+
data: {
|
|
396
|
+
expiresAt: string;
|
|
397
|
+
signedUrl: string;
|
|
398
|
+
version: string;
|
|
399
|
+
};
|
|
400
|
+
message: string;
|
|
243
401
|
}
|
|
244
|
-
|
|
245
|
-
interface
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
402
|
+
type AssetVersionKey = "small" | "medium" | "large";
|
|
403
|
+
interface AssetVersion {
|
|
404
|
+
format: string;
|
|
405
|
+
platforms: string[];
|
|
406
|
+
recommended: boolean;
|
|
407
|
+
url: string;
|
|
408
|
+
}
|
|
409
|
+
interface AssetVersionsResponse {
|
|
410
|
+
mediaID: string;
|
|
411
|
+
platform: string;
|
|
412
|
+
versions: Record<AssetVersionKey, AssetVersion>;
|
|
413
|
+
}
|
|
414
|
+
interface BulkAssetUploadItemSuccess {
|
|
415
|
+
status: "success";
|
|
416
|
+
message: string;
|
|
417
|
+
data: {
|
|
418
|
+
url: string;
|
|
419
|
+
assetId?: string;
|
|
250
420
|
};
|
|
251
|
-
onChange?: (val: {
|
|
252
|
-
amount: string;
|
|
253
|
-
currency: string;
|
|
254
|
-
}) => void;
|
|
255
|
-
onGenerate?: () => void;
|
|
256
|
-
placeholder?: string;
|
|
257
|
-
disabled?: boolean;
|
|
258
|
-
className?: string;
|
|
259
|
-
buttonLabel?: string;
|
|
260
421
|
}
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
422
|
+
interface BulkAssetUploadItemError {
|
|
423
|
+
status: "error";
|
|
424
|
+
message: string;
|
|
425
|
+
data?: null;
|
|
426
|
+
}
|
|
427
|
+
type BulkAssetUploadItem = BulkAssetUploadItemSuccess | BulkAssetUploadItemError;
|
|
428
|
+
interface AssetUploadBulkRequest {
|
|
429
|
+
files: File[];
|
|
430
|
+
owner_type: OwnerType;
|
|
431
|
+
owner_id?: string;
|
|
432
|
+
is_public: boolean;
|
|
433
|
+
signal?: GenericAbortSignal;
|
|
434
|
+
}
|
|
435
|
+
interface AssetUploadBulkResponse {
|
|
436
|
+
results: BulkAssetUploadItem[];
|
|
269
437
|
}
|
|
270
|
-
declare function Calendar({ onMarkAsUnavailable, isModalOpen, onClose, calendarCardClassName, }: CalendarProps): React__default.JSX.Element;
|
|
271
438
|
|
|
272
|
-
|
|
439
|
+
/** POST /assets */
|
|
440
|
+
declare function useUploadAsset(): {
|
|
441
|
+
uploadAssets: _tanstack_react_query.UseMutateFunction<AssetUploadResponse | null, Error, AssetUploadRequest, unknown>;
|
|
442
|
+
isUploadingAsset: boolean;
|
|
443
|
+
};
|
|
444
|
+
/** POST /assets/bulk */
|
|
445
|
+
declare function useUploadAssetsBulk(): {
|
|
446
|
+
uploadAssetsBulk: _tanstack_react_query.UseMutateFunction<AssetUploadBulkResponse | null, Error, AssetUploadBulkRequest, unknown>;
|
|
447
|
+
isUploadingBulk: boolean;
|
|
448
|
+
};
|
|
449
|
+
/** POST /assets/signed-url */
|
|
450
|
+
declare function useSignedUrl(): {
|
|
451
|
+
postSignedUrl: _tanstack_react_query.UseMutateFunction<SignedUrlResponse | null, Error, SignedUrlRequest, unknown>;
|
|
452
|
+
isPostingSignedUrl: boolean;
|
|
453
|
+
};
|
|
454
|
+
/** GET /assets/:id/versions */
|
|
455
|
+
declare function useAssetVersions(assetId?: string): {
|
|
456
|
+
assetVersions: AssetVersionsResponse | null | undefined;
|
|
457
|
+
isGettingAssetVersions: boolean;
|
|
458
|
+
error: Error | null;
|
|
459
|
+
};
|
|
460
|
+
/** Auto-picks best version (large/medium/small) */
|
|
461
|
+
declare function useBestAssetVersion(assetId?: string): {
|
|
462
|
+
url: string | null | undefined;
|
|
463
|
+
isGettingUrl: boolean;
|
|
464
|
+
error: Error | null;
|
|
465
|
+
};
|
|
466
|
+
|
|
467
|
+
declare const dispatchLogoutEvent: () => void;
|
|
468
|
+
|
|
469
|
+
interface LogoutOptions$1 {
|
|
470
|
+
broadcast?: boolean;
|
|
471
|
+
reload?: boolean;
|
|
472
|
+
redirectUrl?: string;
|
|
473
|
+
}
|
|
474
|
+
|
|
475
|
+
interface UseApiLogoutOptions extends LogoutOptions$1 {
|
|
476
|
+
onSuccess?: () => void;
|
|
477
|
+
onError?: (error: unknown) => void;
|
|
478
|
+
}
|
|
479
|
+
declare function useApiLogout(): {
|
|
480
|
+
handleApiLogout: (options?: UseApiLogoutOptions) => Promise<void>;
|
|
481
|
+
};
|
|
482
|
+
|
|
483
|
+
declare function useLogout(): {
|
|
484
|
+
handleLogout: (options?: LogoutOptions$1) => void;
|
|
485
|
+
};
|
|
486
|
+
|
|
487
|
+
interface AutoComponentProps {
|
|
488
|
+
component?: React__default.ElementType;
|
|
489
|
+
render?: (props: {
|
|
490
|
+
isOpen: boolean;
|
|
491
|
+
onClose: () => void;
|
|
492
|
+
}) => React__default.ReactNode;
|
|
493
|
+
componentProps?: Record<string, any>;
|
|
494
|
+
maxShows?: number;
|
|
495
|
+
initialDelayMs?: number;
|
|
496
|
+
intervalMs?: number;
|
|
497
|
+
mobileOnly?: boolean;
|
|
498
|
+
enabled?: boolean;
|
|
499
|
+
storageKey?: string;
|
|
500
|
+
}
|
|
501
|
+
declare const AutoComponent: React__default.FC<AutoComponentProps>;
|
|
502
|
+
|
|
503
|
+
interface AutoDisplayConfig {
|
|
504
|
+
storageKey?: string;
|
|
505
|
+
maxShows?: number;
|
|
506
|
+
initialDelayMs?: number;
|
|
507
|
+
intervalMs?: number;
|
|
508
|
+
mobileOnly?: boolean;
|
|
509
|
+
enabled?: boolean;
|
|
510
|
+
onOpen?: () => void;
|
|
511
|
+
onClose?: () => void;
|
|
512
|
+
}
|
|
513
|
+
declare const useAutoDisplay: (config?: AutoDisplayConfig) => {
|
|
514
|
+
isOpen: boolean;
|
|
515
|
+
open: () => void;
|
|
516
|
+
close: () => void;
|
|
517
|
+
canShow: boolean;
|
|
518
|
+
reset: () => void;
|
|
519
|
+
};
|
|
520
|
+
|
|
521
|
+
interface LogoutOptions {
|
|
522
|
+
broadcast?: boolean;
|
|
523
|
+
reload?: boolean;
|
|
524
|
+
redirectUrl?: string;
|
|
525
|
+
domain?: string;
|
|
526
|
+
secure?: boolean;
|
|
527
|
+
}
|
|
528
|
+
declare function clearUserSession(options?: LogoutOptions): void;
|
|
529
|
+
|
|
530
|
+
declare function ChatView(): React__default.JSX.Element;
|
|
531
|
+
|
|
532
|
+
declare function useSetChatVisibility(): {
|
|
533
|
+
isChatVisible: boolean;
|
|
534
|
+
isToSendMessageToPage: boolean;
|
|
535
|
+
isPageContext: boolean;
|
|
536
|
+
};
|
|
537
|
+
|
|
538
|
+
type ModalVariant = "expanded" | "minimized" | "center";
|
|
539
|
+
interface ModalPosition {
|
|
540
|
+
top?: string;
|
|
541
|
+
bottom?: string;
|
|
542
|
+
left?: string;
|
|
543
|
+
right?: string;
|
|
544
|
+
}
|
|
545
|
+
interface ModalAnimationConfig {
|
|
546
|
+
duration?: number;
|
|
547
|
+
ease?: string | number[];
|
|
548
|
+
exitDuration?: number;
|
|
549
|
+
}
|
|
550
|
+
interface BaseModalProps {
|
|
551
|
+
isOpen: boolean;
|
|
552
|
+
onClose: () => void;
|
|
553
|
+
children: React.ReactNode;
|
|
554
|
+
}
|
|
555
|
+
interface ModalStyleProps {
|
|
556
|
+
className?: string;
|
|
557
|
+
contentClassName?: string;
|
|
558
|
+
overlayClassName?: string;
|
|
559
|
+
}
|
|
560
|
+
interface ModalBehaviorProps {
|
|
561
|
+
closeOnClickOutside?: boolean;
|
|
562
|
+
closeOnEscape?: boolean;
|
|
563
|
+
hideCloseButton?: boolean;
|
|
564
|
+
preventBodyScroll?: boolean;
|
|
565
|
+
showOverlay?: boolean;
|
|
566
|
+
}
|
|
567
|
+
interface ModalConfigProps {
|
|
568
|
+
variant?: ModalVariant;
|
|
569
|
+
position?: ModalPosition;
|
|
570
|
+
animationConfig?: ModalAnimationConfig;
|
|
571
|
+
header?: React.ReactNode;
|
|
572
|
+
zIndex?: number;
|
|
573
|
+
offsetTop?: number;
|
|
574
|
+
}
|
|
575
|
+
interface AnimatedModalProps extends BaseModalProps, ModalStyleProps, ModalBehaviorProps, ModalConfigProps {
|
|
576
|
+
}
|
|
577
|
+
|
|
578
|
+
declare function AnimatedModal({ isOpen, onClose, children, variant, className, contentClassName, overlayClassName, closeOnClickOutside, closeOnEscape, hideCloseButton, showOverlay, position, header, zIndex, offsetTop, preventBodyScroll, }: AnimatedModalProps): React__default.JSX.Element;
|
|
579
|
+
|
|
580
|
+
interface BaseInputProps extends InputHTMLAttributes<HTMLInputElement> {
|
|
273
581
|
placeholder: string;
|
|
274
582
|
value: string;
|
|
275
583
|
onChange: (e: ChangeEvent<HTMLInputElement>) => void;
|
|
@@ -279,24 +587,26 @@ type BaseInputProps = {
|
|
|
279
587
|
leftIcon?: React__default.ReactNode;
|
|
280
588
|
label?: string;
|
|
281
589
|
error?: string;
|
|
282
|
-
disabled?: boolean;
|
|
283
|
-
type?: string;
|
|
284
|
-
name?: string;
|
|
285
|
-
id?: string;
|
|
286
|
-
className?: string;
|
|
287
|
-
children?: React__default.ReactNode;
|
|
288
590
|
wrapperClassName?: string;
|
|
289
|
-
required?: boolean;
|
|
290
591
|
inputClassName?: string;
|
|
291
592
|
requiredInPlaceholder?: boolean;
|
|
292
|
-
min?: number;
|
|
293
|
-
max?: number;
|
|
294
593
|
placeholderColor?: string;
|
|
295
|
-
}
|
|
594
|
+
}
|
|
296
595
|
declare const BaseInput: React__default.ForwardRefExoticComponent<BaseInputProps & React__default.RefAttributes<HTMLInputElement>>;
|
|
297
596
|
|
|
298
|
-
|
|
597
|
+
type ButtonProps = {
|
|
598
|
+
children: React__default.ReactNode;
|
|
599
|
+
type?: "button" | "submit";
|
|
600
|
+
className?: string;
|
|
601
|
+
onClick?: () => void;
|
|
602
|
+
disabled?: boolean;
|
|
603
|
+
isLoading?: boolean;
|
|
604
|
+
};
|
|
605
|
+
declare function Button({ children, className, disabled, isLoading, onClick, type, }: ButtonProps): React__default.JSX.Element;
|
|
606
|
+
|
|
607
|
+
declare function CheckBoxInput({ isChecked, onClick, label, disabled, isRequired, }: {
|
|
299
608
|
isChecked?: boolean;
|
|
609
|
+
isRequired?: boolean;
|
|
300
610
|
onClick?: (e: React__default.MouseEvent<HTMLDivElement> | React__default.KeyboardEvent<HTMLDivElement>) => void;
|
|
301
611
|
label?: string;
|
|
302
612
|
disabled?: boolean;
|
|
@@ -305,18 +615,34 @@ declare function CheckBoxInput({ isChecked, onClick, label, disabled, }: {
|
|
|
305
615
|
type CustomDrawerProps = {
|
|
306
616
|
children: React__default.ReactNode;
|
|
307
617
|
footer?: React__default.ReactNode;
|
|
618
|
+
title?: React__default.ReactNode;
|
|
308
619
|
onClose: () => void;
|
|
309
620
|
className?: string;
|
|
310
621
|
isOpen?: boolean;
|
|
311
622
|
hideCloseBlock?: boolean;
|
|
623
|
+
direction?: 'bottom' | 'right' | 'left';
|
|
624
|
+
hiddenInMobileArticle?: boolean;
|
|
312
625
|
};
|
|
313
|
-
declare function CustomDrawer({ children, footer, onClose, className, isOpen, hideCloseBlock, }: CustomDrawerProps): React__default.JSX.Element;
|
|
626
|
+
declare function CustomDrawer({ children, footer, title, onClose, className, isOpen, hideCloseBlock, direction, hiddenInMobileArticle, }: CustomDrawerProps): React__default.JSX.Element | null;
|
|
314
627
|
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
onSelect
|
|
319
|
-
|
|
628
|
+
interface IDropdownProps {
|
|
629
|
+
trigger: React.ReactNode;
|
|
630
|
+
options: IDropdownOption[];
|
|
631
|
+
onSelect: (id: string) => void;
|
|
632
|
+
className?: string;
|
|
633
|
+
itemClassName?: string;
|
|
634
|
+
itemHoverClassName?: string;
|
|
635
|
+
animate?: boolean;
|
|
636
|
+
enableSearch?: boolean;
|
|
637
|
+
}
|
|
638
|
+
interface IDropdownOption {
|
|
639
|
+
id: string;
|
|
640
|
+
label: string;
|
|
641
|
+
value: string;
|
|
642
|
+
icon?: React.ReactNode;
|
|
643
|
+
}
|
|
644
|
+
|
|
645
|
+
declare function CustomDropdown({ trigger, options, onSelect, className, itemClassName, itemHoverClassName, animate, enableSearch, }: IDropdownProps): React__default.JSX.Element;
|
|
320
646
|
|
|
321
647
|
type Option = {
|
|
322
648
|
id: string;
|
|
@@ -326,7 +652,7 @@ type Option = {
|
|
|
326
652
|
type CustomSelectInputProps = {
|
|
327
653
|
options: Option[];
|
|
328
654
|
value?: string;
|
|
329
|
-
onChange?: (option: Option) => void;
|
|
655
|
+
onChange?: (option: Option | null) => void;
|
|
330
656
|
placeholder?: string;
|
|
331
657
|
className?: string;
|
|
332
658
|
enableSearch?: boolean;
|
|
@@ -338,18 +664,14 @@ type CustomSelectInputProps = {
|
|
|
338
664
|
disabled?: boolean;
|
|
339
665
|
onSearch?: (query: string) => void;
|
|
340
666
|
isLoading?: boolean;
|
|
667
|
+
reset?: boolean;
|
|
341
668
|
};
|
|
342
|
-
declare function CustomSelectInput({ options, value, onChange, placeholder, className, enableSearch, floattable, required, showCheck, label, error, disabled, onSearch, isLoading, }: CustomSelectInputProps): React$1.JSX.Element;
|
|
669
|
+
declare function CustomSelectInput({ options, value, onChange, placeholder, className, enableSearch, floattable, required, showCheck, label, error, disabled, onSearch, isLoading, reset, }: CustomSelectInputProps): React$1.JSX.Element;
|
|
343
670
|
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
onClick?: () => void;
|
|
349
|
-
disabled?: boolean;
|
|
350
|
-
isLoading?: boolean;
|
|
351
|
-
};
|
|
352
|
-
declare function Button({ children, className, disabled, isLoading, onClick, type, }: ButtonProps): React__default.JSX.Element;
|
|
671
|
+
interface EmojiPickerButtonProps {
|
|
672
|
+
onEmojiSelect: (emoji: string) => void;
|
|
673
|
+
}
|
|
674
|
+
declare const EmojiPickerButton: ({ onEmojiSelect, }: EmojiPickerButtonProps) => React__default.JSX.Element;
|
|
353
675
|
|
|
354
676
|
interface IMirantesButton extends React__default.ButtonHTMLAttributes<HTMLButtonElement> {
|
|
355
677
|
label?: string;
|
|
@@ -360,145 +682,1552 @@ interface IMirantesButton extends React__default.ButtonHTMLAttributes<HTMLButton
|
|
|
360
682
|
}
|
|
361
683
|
declare const MirantesButton: React__default.ForwardRefExoticComponent<IMirantesButton & React__default.RefAttributes<HTMLButtonElement>>;
|
|
362
684
|
|
|
363
|
-
interface
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
685
|
+
interface MirantesSheetsProps {
|
|
686
|
+
isOpen: boolean;
|
|
687
|
+
onOpenChange: (open: boolean) => void;
|
|
688
|
+
title?: string;
|
|
689
|
+
iconTitle?: ReactNode;
|
|
690
|
+
iconTitleClassName?: string;
|
|
691
|
+
customHeader?: ReactNode;
|
|
692
|
+
children: ReactNode;
|
|
693
|
+
footer?: ReactNode;
|
|
694
|
+
side?: "top" | "bottom" | "left" | "right";
|
|
367
695
|
className?: string;
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
enableSearch?: boolean;
|
|
372
|
-
}
|
|
373
|
-
interface IDropdownOption {
|
|
374
|
-
id: string;
|
|
375
|
-
label: string;
|
|
376
|
-
value: string;
|
|
377
|
-
icon?: React.ReactNode;
|
|
696
|
+
contentClassName?: string;
|
|
697
|
+
hideCloseButton?: boolean;
|
|
698
|
+
zIndex?: number;
|
|
378
699
|
}
|
|
700
|
+
declare const MirantesSheets: ({ isOpen, onOpenChange, title, customHeader, children, footer, side, className, contentClassName, hideCloseButton, iconTitle, iconTitleClassName, zIndex, }: MirantesSheetsProps) => React__default.JSX.Element;
|
|
379
701
|
|
|
380
|
-
declare function
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
slug?: string;
|
|
702
|
+
declare function RadioButtonInput({ label, isSelected, onSelect, }: {
|
|
703
|
+
label?: string;
|
|
704
|
+
isSelected?: boolean;
|
|
705
|
+
onSelect?: () => void;
|
|
385
706
|
}): React__default.JSX.Element;
|
|
386
707
|
|
|
387
|
-
interface
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
708
|
+
interface IResponsiveDrawerProps {
|
|
709
|
+
isOpen: boolean;
|
|
710
|
+
onClose: () => void;
|
|
711
|
+
header?: React$1.ReactNode;
|
|
712
|
+
footer?: React$1.ReactNode;
|
|
713
|
+
children: React$1.ReactNode;
|
|
714
|
+
className?: string;
|
|
715
|
+
side?: "right" | "left" | "bottom";
|
|
716
|
+
swipeable?: boolean;
|
|
717
|
+
swipeThreshold?: number;
|
|
394
718
|
}
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
confidential = "CONFIDENTIAL_MODE"
|
|
719
|
+
|
|
720
|
+
interface ExtendedDrawerProps extends IResponsiveDrawerProps {
|
|
721
|
+
title?: string;
|
|
399
722
|
}
|
|
400
|
-
declare
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
723
|
+
declare function ResponsiveDrawer$1({ isOpen, onClose, title, header, footer, children, className, swipeable, }: ExtendedDrawerProps): React$1.JSX.Element;
|
|
724
|
+
|
|
725
|
+
type Language = "pt" | "en" | "fr";
|
|
726
|
+
interface DateOutput {
|
|
727
|
+
day: string;
|
|
728
|
+
month: string;
|
|
729
|
+
year: string;
|
|
730
|
+
formattedYMD: string | null;
|
|
731
|
+
formattedDMY: string | null;
|
|
732
|
+
isoString: string | null;
|
|
404
733
|
}
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
734
|
+
interface TripleInputDateProps {
|
|
735
|
+
label?: string;
|
|
736
|
+
required?: boolean;
|
|
737
|
+
disabled?: boolean;
|
|
738
|
+
error?: string;
|
|
739
|
+
showDay?: boolean;
|
|
740
|
+
showMonth?: boolean;
|
|
741
|
+
showYear?: boolean;
|
|
742
|
+
lang?: Language;
|
|
743
|
+
value?: Date | string | null;
|
|
744
|
+
minYear?: number;
|
|
745
|
+
maxYear?: number;
|
|
746
|
+
onChange?: (dateData: DateOutput) => void;
|
|
747
|
+
isNewChevronIcon?: boolean;
|
|
409
748
|
}
|
|
749
|
+
declare const TripleInputDate: ({ label, required, disabled, error, showDay, showMonth, showYear, lang, value, minYear, maxYear, onChange, isNewChevronIcon, }: TripleInputDateProps) => React__default.JSX.Element;
|
|
410
750
|
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
feed: {
|
|
418
|
-
preference: string;
|
|
419
|
-
allowMentions: boolean;
|
|
420
|
-
};
|
|
421
|
-
profile: IUserVisibilitySettings;
|
|
422
|
-
};
|
|
423
|
-
declare const getSettingsFromCookie: (cookieName: string) => Settings | null;
|
|
424
|
-
declare const clearSettingsCookie: (cookieName: string, options: {
|
|
425
|
-
domain: string;
|
|
426
|
-
isDev: boolean;
|
|
427
|
-
}) => void;
|
|
428
|
-
declare const useLoadSettings: () => Settings | null;
|
|
429
|
-
|
|
430
|
-
interface IFollowerUser {
|
|
431
|
-
id?: string;
|
|
432
|
-
name?: string;
|
|
433
|
-
avatar?: string;
|
|
434
|
-
}
|
|
435
|
-
interface IFollowerPage {
|
|
436
|
-
id?: string;
|
|
437
|
-
name?: string;
|
|
438
|
-
logo?: string;
|
|
751
|
+
interface AddressSuggestion {
|
|
752
|
+
country?: string;
|
|
753
|
+
city?: string;
|
|
754
|
+
latitude?: number;
|
|
755
|
+
longitude?: number;
|
|
756
|
+
address?: string;
|
|
439
757
|
}
|
|
440
|
-
interface
|
|
441
|
-
|
|
442
|
-
|
|
758
|
+
interface AddressInputProps {
|
|
759
|
+
value: string;
|
|
760
|
+
onChange: (props?: AddressSuggestion) => void;
|
|
761
|
+
className?: string;
|
|
762
|
+
wrapperClassName?: string;
|
|
763
|
+
inputClassName?: string;
|
|
764
|
+
suggestionsWrapperClassName?: string;
|
|
765
|
+
suggestionItemClassName?: string;
|
|
766
|
+
selectedItemClassName?: string;
|
|
767
|
+
loadingIndicatorClassName?: string;
|
|
768
|
+
clearButtonClassName?: string;
|
|
769
|
+
error?: string;
|
|
770
|
+
errorClassName?: string;
|
|
771
|
+
leftElement?: ReactNode;
|
|
772
|
+
minChars?: number;
|
|
773
|
+
debounceDelay?: number;
|
|
774
|
+
placeholder?: string;
|
|
775
|
+
noResultsText?: string;
|
|
776
|
+
customLoading?: ReactNode;
|
|
777
|
+
floatable?: boolean;
|
|
443
778
|
}
|
|
444
|
-
|
|
779
|
+
declare function AddressAutocompleteInput({ value, onChange, className, wrapperClassName, inputClassName, suggestionsWrapperClassName, suggestionItemClassName, selectedItemClassName, loadingIndicatorClassName, clearButtonClassName, errorClassName, error, leftElement, minChars, debounceDelay, placeholder, noResultsText, customLoading, floatable, }: AddressInputProps): React__default.JSX.Element;
|
|
780
|
+
|
|
781
|
+
interface IActivateAccountModalProps {
|
|
782
|
+
isOpen: boolean;
|
|
783
|
+
onClose?: () => void;
|
|
784
|
+
}
|
|
785
|
+
|
|
786
|
+
declare function ActivateAccountModal({ isOpen, onClose, }: IActivateAccountModalProps): React__default.JSX.Element;
|
|
787
|
+
|
|
788
|
+
declare function ChatContacts({ postId, onClose, searchTerm, selectedContacts, setSelectedContacts, }: {
|
|
789
|
+
postId?: string;
|
|
790
|
+
onClose?: () => void;
|
|
791
|
+
searchTerm?: string;
|
|
792
|
+
selectedContacts?: Set<string>;
|
|
793
|
+
setSelectedContacts?: (contacts: Set<string> | ((prev: Set<string>) => Set<string>)) => void;
|
|
794
|
+
}): React__default.JSX.Element;
|
|
795
|
+
|
|
796
|
+
declare function ChatListWrapper({ isChatOpen, isCompactMode }: {
|
|
797
|
+
isChatOpen?: boolean;
|
|
798
|
+
isCompactMode?: boolean;
|
|
799
|
+
}): React__default.JSX.Element;
|
|
800
|
+
|
|
801
|
+
declare function ChatViewDesktopPage(): React__default.JSX.Element;
|
|
802
|
+
|
|
803
|
+
interface TargetEntity$1 {
|
|
804
|
+
id?: string;
|
|
805
|
+
name?: string;
|
|
806
|
+
avatar?: string;
|
|
807
|
+
logo?: string;
|
|
808
|
+
image?: string;
|
|
809
|
+
}
|
|
810
|
+
interface IMessageButtonProps$1 {
|
|
811
|
+
user?: TargetEntity$1;
|
|
812
|
+
page?: TargetEntity$1;
|
|
813
|
+
icon?: React__default.ReactNode;
|
|
814
|
+
label?: string;
|
|
815
|
+
className?: string;
|
|
816
|
+
disabled?: boolean;
|
|
817
|
+
onClick?: () => void;
|
|
818
|
+
isSharing?: boolean;
|
|
819
|
+
link?: string;
|
|
820
|
+
onConversationReady?: (conversationId: string) => void;
|
|
821
|
+
}
|
|
822
|
+
declare function MessageButton({ user, page, icon, label, className, disabled, onClick: customOnClick, isSharing, link, onConversationReady, }: IMessageButtonProps$1): React__default.JSX.Element;
|
|
823
|
+
|
|
824
|
+
interface TargetEntity {
|
|
825
|
+
id?: string;
|
|
826
|
+
name?: string;
|
|
827
|
+
avatar?: string;
|
|
828
|
+
logo?: string;
|
|
829
|
+
image?: string;
|
|
830
|
+
slug?: string;
|
|
831
|
+
}
|
|
832
|
+
interface IMessageButtonProps {
|
|
833
|
+
user?: TargetEntity;
|
|
834
|
+
label?: string;
|
|
835
|
+
className?: string;
|
|
836
|
+
disabled?: boolean;
|
|
837
|
+
onClick?: () => void;
|
|
838
|
+
variant?: "default" | "small";
|
|
839
|
+
onConversationReady?: (conversationId: string) => void;
|
|
840
|
+
}
|
|
841
|
+
declare function MessagesButtonFromPage({ user, label, className, disabled, onClick: customOnClick, variant, }: IMessageButtonProps): React__default.JSX.Element;
|
|
842
|
+
|
|
843
|
+
declare function useRestorePendingChat(): void;
|
|
844
|
+
|
|
845
|
+
interface IMessage {
|
|
846
|
+
id?: string;
|
|
847
|
+
conversationId?: string;
|
|
848
|
+
senderId?: string;
|
|
849
|
+
pageId?: string;
|
|
850
|
+
sender?: {
|
|
851
|
+
name?: string;
|
|
852
|
+
slug?: string;
|
|
853
|
+
avatar?: string;
|
|
854
|
+
id?: string;
|
|
855
|
+
};
|
|
856
|
+
attachments?: {
|
|
857
|
+
type?: string;
|
|
858
|
+
url?: string;
|
|
859
|
+
}[];
|
|
860
|
+
body?: string;
|
|
861
|
+
content?: string;
|
|
862
|
+
actions?: string;
|
|
863
|
+
replyMessageId?: string;
|
|
864
|
+
replyMessage?: IMessage;
|
|
865
|
+
createdAt?: Date;
|
|
866
|
+
updatedAt?: Date;
|
|
867
|
+
totalReactions?: number;
|
|
868
|
+
myReaction?: string | null;
|
|
869
|
+
reactions?: {
|
|
870
|
+
reaction?: string;
|
|
871
|
+
count?: number;
|
|
872
|
+
}[];
|
|
873
|
+
isForwarded?: boolean;
|
|
874
|
+
mentions?: {
|
|
875
|
+
mentionedId: string;
|
|
876
|
+
}[];
|
|
877
|
+
}
|
|
878
|
+
|
|
879
|
+
type MessageApp = {
|
|
880
|
+
id: string;
|
|
881
|
+
component: React__default.ReactNode;
|
|
882
|
+
};
|
|
883
|
+
type TOption = "add-participant" | "select-messages" | "new-group" | "edit-group" | "new-message" | "filter-all" | "filter-unread" | "filter-favorites" | "filter-groups" | "filter-recruitment" | "filter-main" | "filter-archived" | "filter-spam" | "filter-muted" | "filter-pinned" | "options";
|
|
884
|
+
type SelectionMode = "all" | "delete-only" | "forward-only";
|
|
885
|
+
type TMessageSubject = "service-request" | "service-request-demo" | "support" | "careers" | "other";
|
|
886
|
+
type UnreadState = {
|
|
887
|
+
count: number;
|
|
888
|
+
dot: boolean;
|
|
889
|
+
};
|
|
890
|
+
interface IUser {
|
|
891
|
+
id?: string;
|
|
892
|
+
name?: string;
|
|
893
|
+
avatar?: string;
|
|
894
|
+
isOnline?: boolean;
|
|
895
|
+
email?: string;
|
|
896
|
+
role?: string;
|
|
897
|
+
isGroupOwner?: boolean;
|
|
898
|
+
slug?: string;
|
|
899
|
+
conversationId?: string;
|
|
900
|
+
description?: string;
|
|
901
|
+
isGroup?: boolean;
|
|
902
|
+
isMuted?: boolean;
|
|
903
|
+
participants?: IUser[];
|
|
904
|
+
isGroupAdmin?: boolean;
|
|
905
|
+
}
|
|
906
|
+
type TMessage = {
|
|
907
|
+
id: string;
|
|
908
|
+
type: "text" | "audio" | "image" | "video" | "file" | "temporary";
|
|
909
|
+
content: string;
|
|
910
|
+
timestamp: number;
|
|
911
|
+
sender: "me" | "other" | {
|
|
912
|
+
name?: string;
|
|
913
|
+
avatar?: string;
|
|
914
|
+
id?: string;
|
|
915
|
+
slug?: string;
|
|
916
|
+
};
|
|
917
|
+
replyMessageId?: string;
|
|
918
|
+
isTemporary?: boolean;
|
|
919
|
+
attachmentType?: "image" | "audio" | "video" | "gif" | "file";
|
|
920
|
+
body?: string;
|
|
921
|
+
createdAt?: string;
|
|
922
|
+
senderId?: string;
|
|
923
|
+
replyMessage?: any;
|
|
924
|
+
};
|
|
925
|
+
type State = {
|
|
926
|
+
replyMessage?: IMessage | null;
|
|
927
|
+
setReplyMessage?: (message: IMessage | null) => void;
|
|
928
|
+
apps: MessageApp[];
|
|
929
|
+
selectedAppId: string | null;
|
|
930
|
+
setSelectedApp: (id: string) => void;
|
|
931
|
+
chatHeaderOption?: TOption;
|
|
932
|
+
onSelectChatHeaderOption?: (id: TOption) => void;
|
|
933
|
+
subject?: TMessageSubject;
|
|
934
|
+
onSelectMessageSubject?: (id: TMessageSubject) => void;
|
|
935
|
+
searchQuery?: string;
|
|
936
|
+
onSearchQuery?: (value: string) => void;
|
|
937
|
+
searchMessage?: string;
|
|
938
|
+
onSearchMessage?: (value: string) => void;
|
|
939
|
+
selectedChat?: IUser | null;
|
|
940
|
+
onSelectChat?: (user: IUser | null) => void;
|
|
941
|
+
messages: Record<string, TMessage[]>;
|
|
942
|
+
draftMessages: Record<string, string>;
|
|
943
|
+
setDraftMessage: (chatId: string, text: string) => void;
|
|
944
|
+
sendTextMessage: (chatId: string, text: string) => void;
|
|
945
|
+
sendAudioMessage: (chatId: string, blob: Blob) => void;
|
|
946
|
+
addTemporaryMessage: (conversationId: string, content: string, attachmentType?: "image" | "audio" | "video" | "gif" | "file", messageId?: string) => void;
|
|
947
|
+
removeTemporaryMessage: (conversationId: string, messageId: string) => void;
|
|
948
|
+
unreadChats: Record<string, UnreadState>;
|
|
949
|
+
markChatAsRead: (id?: string) => void;
|
|
950
|
+
incrementUnread: (id: string) => void;
|
|
951
|
+
resetUnread: (id?: string) => void;
|
|
952
|
+
clearDot: (id?: string) => void;
|
|
953
|
+
replaceTempConversationId: (tempId: string, realId: string) => void;
|
|
954
|
+
selectedUsers: IUser[];
|
|
955
|
+
addUser: (user: IUser) => void;
|
|
956
|
+
removeUser: (userId: string) => void;
|
|
957
|
+
resetSelectedUsers?: () => void;
|
|
958
|
+
groupToEdit?: {
|
|
959
|
+
id?: string;
|
|
960
|
+
name?: string;
|
|
961
|
+
description?: string;
|
|
962
|
+
participants?: string[];
|
|
963
|
+
image?: string;
|
|
964
|
+
} | null;
|
|
965
|
+
onEditGroup?: (group?: {
|
|
966
|
+
id?: string;
|
|
967
|
+
name?: string;
|
|
968
|
+
description?: string;
|
|
969
|
+
participants?: string[];
|
|
970
|
+
image?: string;
|
|
971
|
+
}) => void;
|
|
972
|
+
resetAll?: () => void;
|
|
973
|
+
selectedMessageIds: string[];
|
|
974
|
+
selectMessage: (id: string) => void;
|
|
975
|
+
clearSelectedMessages: () => void;
|
|
976
|
+
deleteSelectedMessages: () => void;
|
|
977
|
+
selectionMode: SelectionMode;
|
|
978
|
+
setSelectionMode: (mode: SelectionMode) => void;
|
|
979
|
+
mobileSelectedMessageId: string | null;
|
|
980
|
+
setMobileSelectedMessage: (id: string | null) => void;
|
|
981
|
+
forwardMessageIds: string[];
|
|
982
|
+
selectForwardMessage: (id: string) => void;
|
|
983
|
+
clearForwardMessages: () => void;
|
|
984
|
+
forwardTargets: Array<{
|
|
985
|
+
userId?: string;
|
|
986
|
+
conversationId?: string;
|
|
987
|
+
}>;
|
|
988
|
+
selectForwardTarget: (target: {
|
|
989
|
+
userId?: string;
|
|
990
|
+
conversationId?: string;
|
|
991
|
+
}) => void;
|
|
992
|
+
removeForwardTarget: (target: {
|
|
993
|
+
userId?: string;
|
|
994
|
+
conversationId?: string;
|
|
995
|
+
}) => void;
|
|
996
|
+
clearForwardTargets: () => void;
|
|
997
|
+
};
|
|
998
|
+
|
|
999
|
+
declare const useMessageAppStore: zustand.UseBoundStore<zustand.StoreApi<State>>;
|
|
1000
|
+
|
|
1001
|
+
declare function PageChatContent(): React__default.JSX.Element;
|
|
1002
|
+
|
|
1003
|
+
declare function PageChatContentHeader(): React__default.JSX.Element | null;
|
|
1004
|
+
|
|
1005
|
+
declare function PageChatInput(): React__default.JSX.Element;
|
|
1006
|
+
|
|
1007
|
+
declare function PageChatList(): React__default.JSX.Element;
|
|
1008
|
+
|
|
1009
|
+
declare function PageChatListWrapper(): React__default.JSX.Element;
|
|
1010
|
+
|
|
1011
|
+
type PageChatUserSuggestionsProps = {
|
|
1012
|
+
onUserClick?: () => void;
|
|
1013
|
+
};
|
|
1014
|
+
declare const PageChatUserSuggestions: React__default.ForwardRefExoticComponent<PageChatUserSuggestionsProps & React__default.RefAttributes<HTMLDivElement>>;
|
|
1015
|
+
|
|
1016
|
+
declare function PageMessageWrapper({ containerRef: externalContainerRef }: {
|
|
1017
|
+
containerRef?: React__default.RefObject<HTMLDivElement | null>;
|
|
1018
|
+
}): React__default.JSX.Element;
|
|
1019
|
+
|
|
1020
|
+
interface CommunityTriggerState {
|
|
1021
|
+
isCommunitiesOpen: boolean;
|
|
1022
|
+
openCommunity: () => void;
|
|
1023
|
+
closeCommunity: () => void;
|
|
1024
|
+
toggleCommunity: () => void;
|
|
1025
|
+
}
|
|
1026
|
+
declare const useCommunityTriggerStore: zustand.UseBoundStore<zustand.StoreApi<CommunityTriggerState>>;
|
|
1027
|
+
|
|
1028
|
+
type User$3 = {
|
|
1029
|
+
id: string;
|
|
1030
|
+
name: string;
|
|
1031
|
+
slug: string;
|
|
1032
|
+
email: string;
|
|
1033
|
+
avatar: string;
|
|
1034
|
+
isOpenToWork: boolean;
|
|
1035
|
+
isFollowed: boolean;
|
|
1036
|
+
isContact: boolean;
|
|
1037
|
+
headline?: string;
|
|
1038
|
+
};
|
|
1039
|
+
|
|
1040
|
+
type Contact = {
|
|
1041
|
+
id: string;
|
|
1042
|
+
followerId: string;
|
|
1043
|
+
followedId: string;
|
|
1044
|
+
isFollowing: boolean;
|
|
1045
|
+
createdAt: string;
|
|
1046
|
+
updatedAt: string;
|
|
1047
|
+
follower: User$3;
|
|
1048
|
+
followed: User$3;
|
|
1049
|
+
};
|
|
1050
|
+
type ContactsResponse = {
|
|
1051
|
+
contact: {
|
|
1052
|
+
meta: {
|
|
1053
|
+
currentPage: number;
|
|
1054
|
+
perPage: number;
|
|
1055
|
+
lastPage: number;
|
|
1056
|
+
total: number;
|
|
1057
|
+
};
|
|
1058
|
+
data: Contact[];
|
|
1059
|
+
};
|
|
1060
|
+
};
|
|
1061
|
+
type GetFollowersOptions = {
|
|
1062
|
+
page: number;
|
|
1063
|
+
perPage: number;
|
|
1064
|
+
sort: string;
|
|
1065
|
+
sortDir: string;
|
|
1066
|
+
filter?: {
|
|
1067
|
+
name?: string | null;
|
|
1068
|
+
slug?: string | null;
|
|
1069
|
+
};
|
|
1070
|
+
slug?: string;
|
|
1071
|
+
};
|
|
1072
|
+
declare const useApiGetContacts: (options: Omit<GetFollowersOptions, "page">, slug?: string, tabEnabled?: boolean) => {
|
|
1073
|
+
contacts: Contact[];
|
|
1074
|
+
fetchNextPage: (options?: _tanstack_react_query.FetchNextPageOptions) => Promise<_tanstack_react_query.InfiniteQueryObserverResult<_tanstack_react_query.InfiniteData<ContactsResponse, unknown>, Error>>;
|
|
1075
|
+
hasNextPage: boolean;
|
|
1076
|
+
isFetchingNextPage: boolean;
|
|
1077
|
+
isGettingContacts: boolean;
|
|
1078
|
+
meta: {
|
|
1079
|
+
currentPage: number;
|
|
1080
|
+
perPage: number;
|
|
1081
|
+
lastPage: number;
|
|
1082
|
+
total: number;
|
|
1083
|
+
} | undefined;
|
|
1084
|
+
};
|
|
1085
|
+
|
|
1086
|
+
declare function ContactsModal({ onClose, slug, }: {
|
|
1087
|
+
onClose: () => void;
|
|
1088
|
+
slug?: string;
|
|
1089
|
+
}): React__default.JSX.Element;
|
|
1090
|
+
|
|
1091
|
+
interface CountryDisplayProps {
|
|
1092
|
+
code: string;
|
|
1093
|
+
locale: "pt" | "fr" | "en";
|
|
1094
|
+
className?: string;
|
|
1095
|
+
}
|
|
1096
|
+
declare function CountryDisplay({ code, locale, className, }: CountryDisplayProps): React__default.JSX.Element | null;
|
|
1097
|
+
declare namespace CountryDisplay {
|
|
1098
|
+
var displayName: string;
|
|
1099
|
+
}
|
|
1100
|
+
|
|
1101
|
+
interface ICountryInputProps {
|
|
1102
|
+
locale?: "pt" | "fr" | "en";
|
|
1103
|
+
value?: string;
|
|
1104
|
+
onChange?: (value: {
|
|
1105
|
+
locale: string;
|
|
1106
|
+
name: string;
|
|
1107
|
+
}) => void;
|
|
1108
|
+
className?: string;
|
|
1109
|
+
defaultCode?: string;
|
|
1110
|
+
forNationality?: boolean;
|
|
1111
|
+
}
|
|
1112
|
+
|
|
1113
|
+
interface CountryInputProps extends Omit<ICountryInputProps, "locale" | "onChange"> {
|
|
1114
|
+
className?: string;
|
|
1115
|
+
buttonClassName?: string;
|
|
1116
|
+
inputClassName?: string;
|
|
1117
|
+
value?: string;
|
|
1118
|
+
onChange?: (payload: {
|
|
1119
|
+
code: string;
|
|
1120
|
+
name: string;
|
|
1121
|
+
}) => void;
|
|
1122
|
+
error?: string;
|
|
1123
|
+
floatable?: boolean;
|
|
1124
|
+
}
|
|
1125
|
+
declare function CountryInput({ className, buttonClassName, inputClassName, defaultCode, onChange, value, error, floatable, }: CountryInputProps): React__default.JSX.Element;
|
|
1126
|
+
declare namespace CountryInput {
|
|
1127
|
+
var displayName: string;
|
|
1128
|
+
}
|
|
1129
|
+
|
|
1130
|
+
interface DateInputProps$1 {
|
|
1131
|
+
value?: Date | string | null;
|
|
1132
|
+
onChange?: (date: Date | null) => void;
|
|
1133
|
+
minDate?: Date;
|
|
1134
|
+
maxDate?: Date;
|
|
1135
|
+
required?: boolean;
|
|
1136
|
+
showDateIcon?: boolean;
|
|
1137
|
+
disabled?: boolean;
|
|
1138
|
+
readOnly?: boolean;
|
|
1139
|
+
className?: string;
|
|
1140
|
+
placeholder?: string;
|
|
1141
|
+
inputClassName?: string;
|
|
1142
|
+
label?: string;
|
|
1143
|
+
"data-testid"?: string;
|
|
1144
|
+
error?: string;
|
|
1145
|
+
formattedAsMonthYear?: boolean;
|
|
1146
|
+
}
|
|
1147
|
+
declare function CustomDateInput({ value, error: errorMessage, onChange, minDate, maxDate, required, showDateIcon, disabled, readOnly, className, placeholder, inputClassName, label, "data-testid": testId, formattedAsMonthYear, }: DateInputProps$1): React__default.JSX.Element;
|
|
1148
|
+
|
|
1149
|
+
interface DateInputProps {
|
|
1150
|
+
label: string;
|
|
1151
|
+
onChange: (date: Date) => void;
|
|
1152
|
+
value: Date;
|
|
1153
|
+
required?: boolean;
|
|
1154
|
+
className?: string;
|
|
1155
|
+
error?: string;
|
|
1156
|
+
disabled?: boolean;
|
|
1157
|
+
calendarClassName?: string;
|
|
1158
|
+
triggerClassName?: string;
|
|
1159
|
+
mode?: "date" | "time" | "both" | "calendar";
|
|
1160
|
+
setHasError?: (value: boolean) => void;
|
|
1161
|
+
}
|
|
1162
|
+
declare function DateInput({ label, onChange, value, required, className, triggerClassName, error: externalError, disabled, calendarClassName, mode, setHasError, }: DateInputProps): React$1.JSX.Element;
|
|
1163
|
+
|
|
1164
|
+
interface AutoDownloadBannerProps {
|
|
1165
|
+
/** Número máximo de vezes que o banner pode ser mostrado (padrão: 5) */
|
|
1166
|
+
maxShows?: number;
|
|
1167
|
+
/** Delay inicial em milissegundos antes de mostrar o banner pela primeira vez (padrão: 30 segundos) */
|
|
1168
|
+
initialDelayMs?: number;
|
|
1169
|
+
/** Se deve mostrar apenas em dispositivos móveis (padrão: true) */
|
|
1170
|
+
mobileOnly?: boolean;
|
|
1171
|
+
/** Se o banner automático está ativo (padrão: true) */
|
|
1172
|
+
enabled?: boolean;
|
|
1173
|
+
}
|
|
1174
|
+
declare const AutoDownloadBanner: React__default.FC<AutoDownloadBannerProps>;
|
|
1175
|
+
|
|
1176
|
+
declare const DownloadModalTrigger: () => React__default.JSX.Element;
|
|
1177
|
+
|
|
1178
|
+
declare const DownloadMobileVersionBanner: () => React__default.JSX.Element;
|
|
1179
|
+
|
|
1180
|
+
interface BannerConfig {
|
|
1181
|
+
/** Número máximo de vezes que o banner pode ser mostrado (padrão: 5) */
|
|
1182
|
+
maxShows?: number;
|
|
1183
|
+
/** Delay inicial em milissegundos antes de mostrar o banner pela primeira vez (padrão: 5 segundos) */
|
|
1184
|
+
initialDelayMs?: number;
|
|
1185
|
+
/** Se deve mostrar apenas em dispositivos móveis (padrão: true) */
|
|
1186
|
+
mobileOnly?: boolean;
|
|
1187
|
+
}
|
|
1188
|
+
declare const usePeriodicDownloadBanner: (config?: BannerConfig) => {
|
|
1189
|
+
shouldShow: boolean;
|
|
1190
|
+
showBanner: () => void;
|
|
1191
|
+
resetBannerData: () => void;
|
|
1192
|
+
getBannerStats: () => {
|
|
1193
|
+
lastShown: Date | null;
|
|
1194
|
+
showsCount: number;
|
|
1195
|
+
remainingShows: number;
|
|
1196
|
+
canShow: boolean;
|
|
1197
|
+
shownInCurrentSession: boolean;
|
|
1198
|
+
};
|
|
1199
|
+
canShow: boolean;
|
|
1200
|
+
isMobile: boolean;
|
|
1201
|
+
};
|
|
1202
|
+
|
|
1203
|
+
interface ModalState$1 {
|
|
1204
|
+
isDownloadModalOpen: boolean;
|
|
1205
|
+
openDownloadModal: () => void;
|
|
1206
|
+
closeDownloadModal: () => void;
|
|
1207
|
+
toggleDownloadModal: () => void;
|
|
1208
|
+
}
|
|
1209
|
+
declare const useModalStore: zustand.UseBoundStore<zustand.StoreApi<ModalState$1>>;
|
|
1210
|
+
|
|
1211
|
+
interface ArticleContentProps {
|
|
1212
|
+
isOpen: boolean;
|
|
1213
|
+
onClose: () => void;
|
|
1214
|
+
}
|
|
1215
|
+
declare const ArticleContent: ({ isOpen, onClose }: ArticleContentProps) => React__default.JSX.Element;
|
|
1216
|
+
|
|
1217
|
+
type User$2 = {
|
|
1218
|
+
id?: string;
|
|
1219
|
+
name?: string;
|
|
1220
|
+
slug?: string;
|
|
1221
|
+
about?: string;
|
|
1222
|
+
email?: string;
|
|
1223
|
+
phone?: string;
|
|
1224
|
+
isOpenToWork?: boolean;
|
|
1225
|
+
gender?: string;
|
|
1226
|
+
banner?: string;
|
|
1227
|
+
isContact?: boolean;
|
|
1228
|
+
isFollowed?: boolean;
|
|
1229
|
+
isFollowedBy?: boolean;
|
|
1230
|
+
birthDate?: string;
|
|
1231
|
+
nationality?: string;
|
|
1232
|
+
headline?: string;
|
|
1233
|
+
country?: string;
|
|
1234
|
+
city?: string;
|
|
1235
|
+
street?: string;
|
|
1236
|
+
countryCode?: string;
|
|
1237
|
+
profession?: string;
|
|
1238
|
+
addresses?: {
|
|
1239
|
+
country?: string;
|
|
1240
|
+
city?: string;
|
|
1241
|
+
address?: string;
|
|
1242
|
+
}[];
|
|
1243
|
+
address?: {
|
|
1244
|
+
country?: string;
|
|
1245
|
+
city?: string;
|
|
1246
|
+
address?: string;
|
|
1247
|
+
};
|
|
1248
|
+
avatar?: string;
|
|
1249
|
+
avatarDisplay?: string;
|
|
1250
|
+
provider?: string;
|
|
1251
|
+
role?: string;
|
|
1252
|
+
status?: string;
|
|
1253
|
+
createdAt?: string;
|
|
1254
|
+
updatedAt?: string;
|
|
1255
|
+
isPublic?: boolean;
|
|
1256
|
+
currentCompany?: string;
|
|
1257
|
+
person?: IPerson$2;
|
|
1258
|
+
link?: string;
|
|
1259
|
+
links?: string[];
|
|
1260
|
+
};
|
|
1261
|
+
interface IPerson$2 {
|
|
1262
|
+
gender?: string;
|
|
1263
|
+
birthDate?: Date;
|
|
1264
|
+
nationality?: string;
|
|
1265
|
+
maritalStatus?: string;
|
|
1266
|
+
salaryExpectation?: string;
|
|
1267
|
+
countryCode?: string;
|
|
1268
|
+
}
|
|
1269
|
+
|
|
1270
|
+
type PostAttachmentProps$2 = {
|
|
1271
|
+
title?: string;
|
|
1272
|
+
description?: string;
|
|
1273
|
+
imageUrl?: string;
|
|
1274
|
+
url?: string;
|
|
1275
|
+
type: string;
|
|
1276
|
+
};
|
|
1277
|
+
type PostAuthor = {
|
|
1278
|
+
id?: string;
|
|
1279
|
+
name?: string;
|
|
1280
|
+
avatar?: string | null;
|
|
1281
|
+
slug?: string;
|
|
1282
|
+
headline?: string | null;
|
|
1283
|
+
rating?: number;
|
|
1284
|
+
isFollowing?: boolean;
|
|
1285
|
+
};
|
|
1286
|
+
type Post$2 = {
|
|
1287
|
+
user: User$2;
|
|
1288
|
+
/** Timeline / feed-with-go APIs expose publisher as `author` instead of `user`. */
|
|
1289
|
+
author?: PostAuthor;
|
|
1290
|
+
clientId?: string;
|
|
1291
|
+
postType: "NORMAL" | "REEL" | "ARTICLE";
|
|
1292
|
+
id: string;
|
|
1293
|
+
createdAt: string;
|
|
1294
|
+
scheduledAt?: string;
|
|
1295
|
+
bio?: string;
|
|
1296
|
+
content: string;
|
|
1297
|
+
totalShares?: number;
|
|
1298
|
+
totalReactions?: number;
|
|
1299
|
+
currentUserReaction?: string | undefined;
|
|
1300
|
+
totalComments?: number;
|
|
1301
|
+
attachment?: PostAttachmentProps$2;
|
|
1302
|
+
isFollowed?: boolean;
|
|
1303
|
+
isContact?: boolean;
|
|
1304
|
+
isArticle?: boolean;
|
|
1305
|
+
isDraft?: boolean;
|
|
1306
|
+
expiresAt?: string | null;
|
|
1307
|
+
link?: {
|
|
1308
|
+
title: string;
|
|
1309
|
+
description: string;
|
|
1310
|
+
imageUrl: string;
|
|
1311
|
+
url: string;
|
|
1312
|
+
};
|
|
1313
|
+
images: PostAssetProps$2[];
|
|
1314
|
+
videos: PostAssetProps$2[];
|
|
1315
|
+
reactions?: PostReactionsProps$2[];
|
|
1316
|
+
comments?: CommentProps$2[];
|
|
1317
|
+
sharedPostId?: string;
|
|
1318
|
+
page?: {
|
|
1319
|
+
id?: string;
|
|
1320
|
+
name?: string;
|
|
1321
|
+
slug?: string;
|
|
1322
|
+
sector?: string;
|
|
1323
|
+
banner?: string;
|
|
1324
|
+
logo?: string;
|
|
1325
|
+
site?: string;
|
|
1326
|
+
};
|
|
1327
|
+
media?: unknown;
|
|
1328
|
+
linkPreview?: unknown;
|
|
1329
|
+
visibility?: string;
|
|
1330
|
+
sharedPost?: Post$2;
|
|
1331
|
+
title?: string;
|
|
1332
|
+
stats?: {
|
|
1333
|
+
reactionCount?: number;
|
|
1334
|
+
commentCount?: number;
|
|
1335
|
+
shareCount?: number;
|
|
1336
|
+
};
|
|
1337
|
+
sharedContext?: unknown;
|
|
1338
|
+
mention?: {
|
|
1339
|
+
id: string;
|
|
1340
|
+
mentionedId: string;
|
|
1341
|
+
mentioned: User$2;
|
|
1342
|
+
}[];
|
|
1343
|
+
community?: {
|
|
1344
|
+
id: string;
|
|
1345
|
+
visibility?: string;
|
|
1346
|
+
slug: string;
|
|
1347
|
+
banner?: string;
|
|
1348
|
+
createdAt?: string;
|
|
1349
|
+
description?: string;
|
|
1350
|
+
image?: string;
|
|
1351
|
+
location?: string;
|
|
1352
|
+
name: string;
|
|
1353
|
+
owner?: {
|
|
1354
|
+
id: string;
|
|
1355
|
+
name: string;
|
|
1356
|
+
slug: string;
|
|
1357
|
+
email?: string;
|
|
1358
|
+
};
|
|
1359
|
+
ownerId?: string;
|
|
1360
|
+
members?: {
|
|
1361
|
+
userId: string;
|
|
1362
|
+
user: {
|
|
1363
|
+
id: string;
|
|
1364
|
+
name: string;
|
|
1365
|
+
slug: string;
|
|
1366
|
+
};
|
|
1367
|
+
}[];
|
|
1368
|
+
};
|
|
1369
|
+
userId?: string;
|
|
1370
|
+
sharedInCommunity?: {
|
|
1371
|
+
id: string;
|
|
1372
|
+
slug: string;
|
|
1373
|
+
visibility: string;
|
|
1374
|
+
name: string;
|
|
1375
|
+
banner?: string;
|
|
1376
|
+
image?: string;
|
|
1377
|
+
location?: string;
|
|
1378
|
+
ownerId: string;
|
|
1379
|
+
owner: {
|
|
1380
|
+
id: string;
|
|
1381
|
+
slug: string;
|
|
1382
|
+
name: string;
|
|
1383
|
+
};
|
|
1384
|
+
};
|
|
1385
|
+
communityId?: string;
|
|
1386
|
+
};
|
|
1387
|
+
type PostAssetProps$2 = {
|
|
1388
|
+
id: string;
|
|
1389
|
+
url: string;
|
|
1390
|
+
type?: "image" | "video" | "pdf";
|
|
1391
|
+
createdAt?: string;
|
|
1392
|
+
};
|
|
1393
|
+
type PostReactionsProps$2 = {
|
|
1394
|
+
id: string;
|
|
1395
|
+
userId: string;
|
|
1396
|
+
postId: string;
|
|
1397
|
+
reaction: "LIKE" | "LOVE" | "HAHA" | "WOW" | "SAD" | "ANGRY" | "AGREE" | "EUREKA" | "NO_COMMENT" | "SUPPORT" | "DISAGREE" | "DISLIKE";
|
|
1398
|
+
createdAt?: string;
|
|
1399
|
+
updatedAt?: string;
|
|
1400
|
+
user?: User$2;
|
|
1401
|
+
};
|
|
1402
|
+
type CommentReactionsProps$2 = {
|
|
1403
|
+
id: string;
|
|
1404
|
+
userId: string;
|
|
1405
|
+
commentId: string;
|
|
1406
|
+
reaction: "LIKE" | "LOVE" | "HAHA" | "WOW" | "SAD" | "ANGRY" | "AGREE" | "DISAGREE" | "EUREKA" | "NO_COMMENT" | "SUPPORT" | "DISLIKE";
|
|
1407
|
+
createdAt: string;
|
|
1408
|
+
updatedAt: string;
|
|
1409
|
+
user?: User$2;
|
|
1410
|
+
};
|
|
1411
|
+
type CommentProps$2 = {
|
|
1412
|
+
id: string;
|
|
1413
|
+
userId: string;
|
|
1414
|
+
postId: string;
|
|
1415
|
+
answerId: string;
|
|
1416
|
+
content: string;
|
|
1417
|
+
imageUrl: string;
|
|
1418
|
+
createdAt: string;
|
|
1419
|
+
updatedAt: string;
|
|
1420
|
+
user: User$2;
|
|
1421
|
+
reactions: CommentReactionsProps$2[];
|
|
1422
|
+
totalReactions?: number;
|
|
1423
|
+
answers: CommentProps$2[];
|
|
1424
|
+
totalAnswers: number;
|
|
1425
|
+
page?: {
|
|
1426
|
+
id: string;
|
|
1427
|
+
name: string;
|
|
1428
|
+
slug: string;
|
|
1429
|
+
sector: string;
|
|
1430
|
+
};
|
|
1431
|
+
};
|
|
1432
|
+
|
|
1433
|
+
interface IUserDraft {
|
|
1434
|
+
id: string;
|
|
1435
|
+
content: string;
|
|
1436
|
+
title: string;
|
|
1437
|
+
isArticle: boolean;
|
|
1438
|
+
isDraft: boolean;
|
|
1439
|
+
user: {
|
|
1440
|
+
name: string;
|
|
1441
|
+
slug: string;
|
|
1442
|
+
};
|
|
1443
|
+
}
|
|
1444
|
+
|
|
1445
|
+
type Profile$2 = {
|
|
1446
|
+
id: string;
|
|
1447
|
+
name: string;
|
|
1448
|
+
avatar: string;
|
|
1449
|
+
role?: string;
|
|
1450
|
+
isPage?: boolean;
|
|
1451
|
+
};
|
|
1452
|
+
type ArticleViewMode = "create" | "view";
|
|
1453
|
+
type ArticleStep = "create" | "preview" | "published";
|
|
1454
|
+
type ArticleMedia = {
|
|
1455
|
+
id: string;
|
|
1456
|
+
url: string;
|
|
1457
|
+
type: "image" | "video";
|
|
1458
|
+
file?: File;
|
|
1459
|
+
};
|
|
1460
|
+
|
|
1461
|
+
type ArticleState = {
|
|
1462
|
+
title: string;
|
|
1463
|
+
content: string;
|
|
1464
|
+
post: Post$2 | null;
|
|
1465
|
+
selectedProfile: Profile$2 | null;
|
|
1466
|
+
media: ArticleMedia[];
|
|
1467
|
+
uploadedMedia: string[];
|
|
1468
|
+
isUploading: boolean;
|
|
1469
|
+
selectedHashtags: string[];
|
|
1470
|
+
viewMode: ArticleViewMode;
|
|
1471
|
+
currentStep: ArticleStep;
|
|
1472
|
+
isModalOpen: boolean;
|
|
1473
|
+
isSaved: boolean;
|
|
1474
|
+
isDraft: boolean;
|
|
1475
|
+
isPublishing: boolean;
|
|
1476
|
+
isSavingDraft: boolean;
|
|
1477
|
+
lastSavedAt: Date | null;
|
|
1478
|
+
currentDraftId: string | null;
|
|
1479
|
+
setTitle: (title: string) => void;
|
|
1480
|
+
setContent: (content: string) => void;
|
|
1481
|
+
setPost: (post: Post$2 | null) => void;
|
|
1482
|
+
setSelectedProfile: (profile: Profile$2 | null) => void;
|
|
1483
|
+
addMedia: (media: ArticleMedia) => void;
|
|
1484
|
+
removeMedia: (id: string) => void;
|
|
1485
|
+
setIsUploading: (isUploading: boolean) => void;
|
|
1486
|
+
toggleHashtag: (hashtagId: string) => void;
|
|
1487
|
+
setSelectedHashtags: (hashtags: string[]) => void;
|
|
1488
|
+
loadDraft: (draft: IUserDraft) => void;
|
|
1489
|
+
clearDraft: () => void;
|
|
1490
|
+
setCurrentDraftId: (id: string | null) => void;
|
|
1491
|
+
setViewMode: (mode: ArticleViewMode) => void;
|
|
1492
|
+
setCurrentStep: (step: ArticleStep) => void;
|
|
1493
|
+
openModal: () => void;
|
|
1494
|
+
closeModal: () => void;
|
|
1495
|
+
setIsSaved: (isSaved: boolean) => void;
|
|
1496
|
+
setIsPublishing: (isPublishing: boolean) => void;
|
|
1497
|
+
setIsSavingDraft: (isSavingDraft: boolean) => void;
|
|
1498
|
+
markAsSaved: () => void;
|
|
1499
|
+
resetArticle: () => void;
|
|
1500
|
+
};
|
|
1501
|
+
declare const useArticleStore: zustand.UseBoundStore<zustand.StoreApi<ArticleState>>;
|
|
1502
|
+
|
|
1503
|
+
declare const useArticleNavigation: () => {
|
|
1504
|
+
viewMode: ArticleViewMode;
|
|
1505
|
+
currentStep: ArticleStep;
|
|
1506
|
+
isModalOpen: boolean;
|
|
1507
|
+
goToCreate: () => void;
|
|
1508
|
+
goToPreview: () => void;
|
|
1509
|
+
goToPublished: () => void;
|
|
1510
|
+
openModal: () => void;
|
|
1511
|
+
closeModal: () => void;
|
|
1512
|
+
resetAndClose: () => void;
|
|
1513
|
+
};
|
|
1514
|
+
|
|
1515
|
+
interface ArticleViewerProps {
|
|
1516
|
+
content: string;
|
|
1517
|
+
}
|
|
1518
|
+
declare function ArticleViewer({ content }: ArticleViewerProps): React__default.JSX.Element;
|
|
1519
|
+
|
|
1520
|
+
declare const PostCardArticle: ({ src, title, content, isCompact, classImage, fontSize }: {
|
|
1521
|
+
src?: string;
|
|
1522
|
+
title?: string;
|
|
1523
|
+
content?: string;
|
|
1524
|
+
classImage?: string;
|
|
1525
|
+
fontSize?: string;
|
|
1526
|
+
isCompact?: boolean;
|
|
1527
|
+
}) => React__default.JSX.Element;
|
|
1528
|
+
|
|
1529
|
+
type ModalState = {
|
|
1530
|
+
isOpen: boolean;
|
|
1531
|
+
modalId: string | null;
|
|
1532
|
+
openModal: () => void;
|
|
1533
|
+
closeModal: () => void;
|
|
1534
|
+
toggleModal: () => void;
|
|
1535
|
+
};
|
|
1536
|
+
declare const useModalArticleStore: zustand.UseBoundStore<zustand.StoreApi<ModalState>>;
|
|
1537
|
+
|
|
1538
|
+
declare function CreatePostCard(): React__default.JSX.Element;
|
|
1539
|
+
|
|
1540
|
+
type Profile$1 = {
|
|
1541
|
+
id: string;
|
|
1542
|
+
name: string;
|
|
1543
|
+
avatar: string;
|
|
1544
|
+
role?: string;
|
|
1545
|
+
isPage?: boolean;
|
|
1546
|
+
};
|
|
1547
|
+
|
|
1548
|
+
type ModalStep = 'main' | 'select-profile' | 'schedule' | 'scheduled-posts' | 'post-actions-menu' | 'edit-scheduled-post';
|
|
1549
|
+
interface CreatePostContentProps {
|
|
1550
|
+
readonly currentStep: ModalStep;
|
|
1551
|
+
readonly selectedProfile: Profile$1 | null;
|
|
1552
|
+
readonly scheduledDate: Date | null;
|
|
1553
|
+
readonly selectedPostForAction: string | null;
|
|
1554
|
+
readonly isSubmitting: boolean;
|
|
1555
|
+
readonly isLoading: boolean;
|
|
1556
|
+
readonly onProfileSelect: (profile: Profile$1) => void;
|
|
1557
|
+
readonly onGoToProfileSelection: () => void;
|
|
1558
|
+
readonly onGoToSchedule: () => void;
|
|
1559
|
+
readonly onScheduleSelect: (date: Date) => void;
|
|
1560
|
+
readonly onBackToMain: () => void;
|
|
1561
|
+
readonly onScheduleMore: () => void;
|
|
1562
|
+
readonly onPostActions: (postId: string) => void;
|
|
1563
|
+
readonly onEditScheduledPost: (postId: string) => void;
|
|
1564
|
+
readonly onDeleteScheduledPost: (postId?: string) => void;
|
|
1565
|
+
readonly onEditPostSubmit: (postId: string, updatedDate?: Date | null, shouldUpdateScheduledAt?: boolean) => void;
|
|
1566
|
+
readonly onSubmit: (type: 'REEL' | 'NORMAL') => void;
|
|
1567
|
+
readonly onClose?: () => void;
|
|
1568
|
+
readonly shouldLoadScheduledPosts?: boolean;
|
|
1569
|
+
readonly onPostDeleted?: () => void;
|
|
1570
|
+
readonly onPostUpdated?: () => void;
|
|
1571
|
+
readonly showScheduleOption?: boolean;
|
|
1572
|
+
}
|
|
1573
|
+
declare function CreatePostContent(props: CreatePostContentProps): React__default.JSX.Element;
|
|
1574
|
+
|
|
1575
|
+
type CreatePostFormProps = {
|
|
1576
|
+
readonly onSubmit: (data: {
|
|
1577
|
+
content: string;
|
|
1578
|
+
media: string[];
|
|
1579
|
+
}) => void;
|
|
1580
|
+
readonly onScheduleClick?: () => void;
|
|
1581
|
+
readonly scheduledDate?: Date | null;
|
|
1582
|
+
readonly showScheduleOption?: boolean;
|
|
1583
|
+
readonly onViewScheduledPosts?: () => void;
|
|
1584
|
+
};
|
|
1585
|
+
declare function CreatePostForm({ onSubmit, onScheduleClick, scheduledDate, showScheduleOption, onViewScheduledPosts, }: CreatePostFormProps): React__default.JSX.Element;
|
|
1586
|
+
|
|
1587
|
+
interface IMention {
|
|
1588
|
+
id: string;
|
|
1589
|
+
mentionedId: string;
|
|
1590
|
+
mentionType: string;
|
|
1591
|
+
mentionedCommunity?: {
|
|
1592
|
+
slug: string;
|
|
1593
|
+
name: string;
|
|
1594
|
+
id: string;
|
|
1595
|
+
image: string;
|
|
1596
|
+
};
|
|
1597
|
+
mentionedPage?: {
|
|
1598
|
+
name: string;
|
|
1599
|
+
slug: string;
|
|
1600
|
+
logo: string;
|
|
1601
|
+
id: string;
|
|
1602
|
+
};
|
|
1603
|
+
mentionedUser?: {
|
|
1604
|
+
id: string;
|
|
1605
|
+
name: string;
|
|
1606
|
+
slug: string;
|
|
1607
|
+
avatar: string;
|
|
1608
|
+
};
|
|
1609
|
+
}
|
|
1610
|
+
|
|
1611
|
+
interface CreatePostFormState {
|
|
1612
|
+
content: string;
|
|
1613
|
+
isUploading: boolean;
|
|
1614
|
+
hashtags?: string[];
|
|
1615
|
+
setHashtags: (value?: string[]) => void;
|
|
1616
|
+
mentions?: IMention[];
|
|
1617
|
+
setMentions: (mentions?: IMention[]) => void;
|
|
1618
|
+
mentionedUsers?: User$4[];
|
|
1619
|
+
setMentionedUsers: (users?: User$4[]) => void;
|
|
1620
|
+
uploadedMedia: string[];
|
|
1621
|
+
selectedFiles: File[];
|
|
1622
|
+
currentAssets: {
|
|
1623
|
+
id: string;
|
|
1624
|
+
url: string;
|
|
1625
|
+
}[];
|
|
1626
|
+
assetsToDelete: {
|
|
1627
|
+
id: string;
|
|
1628
|
+
url: string;
|
|
1629
|
+
}[];
|
|
1630
|
+
setCurrentAssets: (assets: {
|
|
1631
|
+
id: string;
|
|
1632
|
+
url: string;
|
|
1633
|
+
}[]) => void;
|
|
1634
|
+
setContent: (content: string) => void;
|
|
1635
|
+
handleMediaUpload: (files: FileList | null, ignore?: boolean) => void;
|
|
1636
|
+
removeMedia: (index: number) => void;
|
|
1637
|
+
replaceMedia: (index: number, file: File) => void;
|
|
1638
|
+
resetForm: () => void;
|
|
1639
|
+
resetFormContent: () => void;
|
|
1640
|
+
isValid: boolean;
|
|
1641
|
+
isCreatingThePost: boolean;
|
|
1642
|
+
setIsCreatingThePost: (isCreatingThePost: boolean) => void;
|
|
1643
|
+
uploadProgress: number;
|
|
1644
|
+
setUploadProgress: (progress: number) => void;
|
|
1645
|
+
isProcessingPost: boolean;
|
|
1646
|
+
setIsProcessingPost: (isProcessing: boolean) => void;
|
|
1647
|
+
progressText: string;
|
|
1648
|
+
setProgressText: (text: string) => void;
|
|
1649
|
+
}
|
|
1650
|
+
declare const useCreatePostFormStore: zustand.UseBoundStore<zustand.StoreApi<CreatePostFormState>>;
|
|
1651
|
+
|
|
1652
|
+
interface CreatePostModalProps {
|
|
1653
|
+
inline?: boolean;
|
|
1654
|
+
}
|
|
1655
|
+
declare function CreatePostModal({ inline }: CreatePostModalProps): React__default.JSX.Element;
|
|
1656
|
+
|
|
1657
|
+
type Profile = {
|
|
1658
|
+
id: string;
|
|
1659
|
+
name: string;
|
|
1660
|
+
avatar: string;
|
|
1661
|
+
role?: string;
|
|
1662
|
+
};
|
|
1663
|
+
type CreatePostModalFiltersProps = {
|
|
1664
|
+
readonly selectedProfile?: Profile | null;
|
|
1665
|
+
readonly onProfileSelectClick: () => void;
|
|
1666
|
+
};
|
|
1667
|
+
declare function CreatePostModalFilters({ selectedProfile, onProfileSelectClick, }: CreatePostModalFiltersProps): React__default.JSX.Element;
|
|
1668
|
+
|
|
1669
|
+
interface CreatePostReelFormProps {
|
|
1670
|
+
onSubmit: (data: {
|
|
1671
|
+
content: string;
|
|
1672
|
+
media: string[];
|
|
1673
|
+
}) => void;
|
|
1674
|
+
}
|
|
1675
|
+
declare function CreatePostReelForm({ onSubmit }: CreatePostReelFormProps): React__default.JSX.Element;
|
|
1676
|
+
|
|
1677
|
+
type CreatePostScheduleStepProps = {
|
|
1678
|
+
readonly onBack: () => void;
|
|
1679
|
+
readonly onScheduleSelect: (scheduledDate: Date) => void;
|
|
1680
|
+
readonly onClose?: () => void;
|
|
1681
|
+
readonly initialDate?: Date;
|
|
1682
|
+
readonly onViewScheduledPosts?: () => void;
|
|
1683
|
+
};
|
|
1684
|
+
declare function CreatePostScheduleStep({ onBack, onScheduleSelect, onClose, initialDate, onViewScheduledPosts, }: CreatePostScheduleStepProps): React__default.JSX.Element;
|
|
1685
|
+
|
|
1686
|
+
type CreatePostToolbarProps = {
|
|
1687
|
+
readonly onMediaSelect?: (files: FileList | null) => void;
|
|
1688
|
+
readonly isForReels?: boolean;
|
|
1689
|
+
readonly onScheduleClick?: () => void;
|
|
1690
|
+
readonly onMentionClick?: () => void;
|
|
1691
|
+
readonly showScheduleOption?: boolean;
|
|
1692
|
+
readonly hasMedia?: boolean;
|
|
1693
|
+
readonly onEmojiSelect?: (emoji: string) => void;
|
|
1694
|
+
readonly onViewScheduledPosts?: () => void;
|
|
1695
|
+
readonly onSubmit?: (type: 'REEL' | 'NORMAL') => void;
|
|
1696
|
+
readonly postType?: string;
|
|
1697
|
+
};
|
|
1698
|
+
declare function CreatePostToolbar({ onMediaSelect, isForReels, onScheduleClick, onMentionClick, hasMedia, onEmojiSelect, onViewScheduledPosts, onSubmit, postType, }: CreatePostToolbarProps): React__default.JSX.Element;
|
|
1699
|
+
|
|
1700
|
+
type User$1 = {
|
|
445
1701
|
id?: string;
|
|
446
1702
|
name?: string;
|
|
447
1703
|
slug?: string;
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
1704
|
+
about?: string;
|
|
1705
|
+
email?: string;
|
|
1706
|
+
phone?: string;
|
|
1707
|
+
isOpenToWork?: boolean;
|
|
1708
|
+
gender?: string;
|
|
1709
|
+
banner?: string;
|
|
1710
|
+
isContact?: boolean;
|
|
1711
|
+
isFollowed?: boolean;
|
|
1712
|
+
isFollowedBy?: boolean;
|
|
1713
|
+
birthDate?: string;
|
|
1714
|
+
nationality?: string;
|
|
1715
|
+
headline?: string;
|
|
1716
|
+
country?: string;
|
|
1717
|
+
city?: string;
|
|
1718
|
+
street?: string;
|
|
1719
|
+
countryCode?: string;
|
|
1720
|
+
profession?: string;
|
|
1721
|
+
addresses?: {
|
|
1722
|
+
country?: string;
|
|
460
1723
|
city?: string;
|
|
1724
|
+
address?: string;
|
|
1725
|
+
}[];
|
|
1726
|
+
address?: {
|
|
461
1727
|
country?: string;
|
|
1728
|
+
city?: string;
|
|
462
1729
|
address?: string;
|
|
463
1730
|
};
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
1731
|
+
avatar?: string;
|
|
1732
|
+
avatarDisplay?: string;
|
|
1733
|
+
provider?: string;
|
|
1734
|
+
role?: string;
|
|
1735
|
+
status?: string;
|
|
1736
|
+
createdAt?: string;
|
|
1737
|
+
updatedAt?: string;
|
|
1738
|
+
isPublic?: boolean;
|
|
1739
|
+
currentCompany?: string;
|
|
1740
|
+
person?: IPerson$1;
|
|
1741
|
+
link?: string;
|
|
1742
|
+
links?: string[];
|
|
1743
|
+
};
|
|
1744
|
+
interface IPerson$1 {
|
|
1745
|
+
gender?: string;
|
|
1746
|
+
birthDate?: Date;
|
|
1747
|
+
nationality?: string;
|
|
1748
|
+
maritalStatus?: string;
|
|
1749
|
+
salaryExpectation?: string;
|
|
1750
|
+
countryCode?: string;
|
|
467
1751
|
}
|
|
468
1752
|
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
1753
|
+
type PostAttachmentProps$1 = {
|
|
1754
|
+
title?: string;
|
|
1755
|
+
description?: string;
|
|
1756
|
+
imageUrl?: string;
|
|
1757
|
+
url?: string;
|
|
1758
|
+
type: string;
|
|
1759
|
+
};
|
|
1760
|
+
type Post$1 = {
|
|
1761
|
+
user: User$1;
|
|
1762
|
+
postType: "NORMAL" | "REEL" | "ARTICLE";
|
|
1763
|
+
id: string;
|
|
1764
|
+
createdAt: string;
|
|
1765
|
+
scheduledAt?: string;
|
|
1766
|
+
bio: string;
|
|
1767
|
+
content: string;
|
|
1768
|
+
totalShares: number;
|
|
1769
|
+
totalReactions?: number;
|
|
1770
|
+
totalComments?: number;
|
|
1771
|
+
attachment?: PostAttachmentProps$1;
|
|
1772
|
+
isFollowed?: boolean;
|
|
1773
|
+
isContact?: boolean;
|
|
1774
|
+
isArticle?: boolean;
|
|
1775
|
+
isDraft?: boolean;
|
|
1776
|
+
expiresAt?: string | null;
|
|
1777
|
+
link: {
|
|
1778
|
+
title: string;
|
|
1779
|
+
description: string;
|
|
1780
|
+
imageUrl: string;
|
|
1781
|
+
url: string;
|
|
1782
|
+
};
|
|
1783
|
+
images: PostAssetProps$1[];
|
|
1784
|
+
videos: PostAssetProps$1[];
|
|
1785
|
+
reactions: PostReactionsProps$1[];
|
|
1786
|
+
comments: CommentProps$1[];
|
|
1787
|
+
sharedPostId: string;
|
|
1788
|
+
pageId?: string;
|
|
1789
|
+
page?: {
|
|
1790
|
+
id?: string;
|
|
1791
|
+
name?: string;
|
|
1792
|
+
slug?: string;
|
|
1793
|
+
sector?: string;
|
|
1794
|
+
banner?: string;
|
|
1795
|
+
logo?: string;
|
|
1796
|
+
site?: string;
|
|
1797
|
+
};
|
|
1798
|
+
media?: unknown;
|
|
1799
|
+
linkPreview?: unknown;
|
|
1800
|
+
visibility?: string;
|
|
1801
|
+
sharedPost: Post$1;
|
|
1802
|
+
currentUserReaction?: string;
|
|
1803
|
+
title?: string;
|
|
1804
|
+
stats?: {
|
|
1805
|
+
reactionCount?: number;
|
|
1806
|
+
commentCount?: number;
|
|
1807
|
+
shareCount?: number;
|
|
1808
|
+
};
|
|
1809
|
+
sharedContext?: unknown;
|
|
1810
|
+
mention?: IMention[];
|
|
1811
|
+
community?: {
|
|
1812
|
+
id: string;
|
|
1813
|
+
visibility: string;
|
|
1814
|
+
slug: string;
|
|
1815
|
+
banner?: string;
|
|
1816
|
+
createdAt?: string;
|
|
1817
|
+
description?: string;
|
|
1818
|
+
image?: string;
|
|
1819
|
+
location?: string;
|
|
1820
|
+
name: string;
|
|
1821
|
+
owner: {
|
|
1822
|
+
id: string;
|
|
1823
|
+
name: string;
|
|
1824
|
+
slug: string;
|
|
1825
|
+
email?: string;
|
|
1826
|
+
};
|
|
1827
|
+
ownerId: string;
|
|
1828
|
+
members?: {
|
|
1829
|
+
userId: string;
|
|
1830
|
+
user: {
|
|
1831
|
+
id: string;
|
|
1832
|
+
name: string;
|
|
1833
|
+
slug: string;
|
|
1834
|
+
};
|
|
1835
|
+
}[];
|
|
1836
|
+
};
|
|
1837
|
+
userId?: string;
|
|
1838
|
+
sharedInCommunity?: {
|
|
1839
|
+
id: string;
|
|
1840
|
+
slug: string;
|
|
1841
|
+
visibility: string;
|
|
1842
|
+
name: string;
|
|
1843
|
+
banner?: string;
|
|
1844
|
+
image?: string;
|
|
1845
|
+
location?: string;
|
|
1846
|
+
ownerId: string;
|
|
1847
|
+
owner: {
|
|
1848
|
+
id: string;
|
|
1849
|
+
slug: string;
|
|
1850
|
+
name: string;
|
|
1851
|
+
};
|
|
1852
|
+
};
|
|
1853
|
+
communityId?: string;
|
|
1854
|
+
};
|
|
1855
|
+
type PostAssetProps$1 = {
|
|
1856
|
+
id: string;
|
|
1857
|
+
url: string;
|
|
1858
|
+
type?: "image" | "video" | "pdf";
|
|
1859
|
+
createdAt?: string;
|
|
1860
|
+
};
|
|
1861
|
+
type PostReactionsProps$1 = {
|
|
1862
|
+
id: string;
|
|
1863
|
+
userId: string;
|
|
1864
|
+
postId: string;
|
|
1865
|
+
reaction: "LIKE" | "LOVE" | "HAHA" | "WOW" | "SAD" | "ANGRY" | "AGREE" | "DISAGREE" | "NO_COMMENT" | "EUREKA" | "SUPPORT";
|
|
1866
|
+
createdAt: string;
|
|
1867
|
+
updatedAt: string;
|
|
1868
|
+
user: User$1;
|
|
1869
|
+
};
|
|
1870
|
+
type CommentReactionsProps$1 = {
|
|
1871
|
+
id: string;
|
|
1872
|
+
userId: string;
|
|
1873
|
+
commentId: string;
|
|
1874
|
+
reaction: "LIKE" | "LOVE" | "HAHA" | "WOW" | "SAD" | "ANGRY" | "AGREE" | "DISAGREE" | "EUREKA" | "NO_COMMENT" | "SUPPORT" | "DISLIKE";
|
|
1875
|
+
createdAt: string;
|
|
1876
|
+
updatedAt: string;
|
|
1877
|
+
user?: User$1;
|
|
1878
|
+
};
|
|
1879
|
+
type CommentProps$1 = {
|
|
1880
|
+
id: string;
|
|
1881
|
+
userId: string;
|
|
1882
|
+
postId: string;
|
|
1883
|
+
answerId: string;
|
|
1884
|
+
content: string;
|
|
1885
|
+
imageUrl: string;
|
|
1886
|
+
createdAt: string;
|
|
1887
|
+
updatedAt: string;
|
|
1888
|
+
user: User$1;
|
|
1889
|
+
reactions: CommentReactionsProps$1[];
|
|
1890
|
+
totalReactions?: number;
|
|
1891
|
+
answers: CommentProps$1[];
|
|
1892
|
+
totalAnswers: number;
|
|
1893
|
+
page?: {
|
|
1894
|
+
id: string;
|
|
1895
|
+
name: string;
|
|
1896
|
+
slug: string;
|
|
1897
|
+
sector: string;
|
|
1898
|
+
};
|
|
472
1899
|
};
|
|
473
1900
|
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
1901
|
+
type PostType = "text" | "media" | "job" | "reel" | "schedule" | null;
|
|
1902
|
+
type InitialStep = "main" | "schedule" | "scheduled-posts" | null;
|
|
1903
|
+
interface CreatePostState {
|
|
1904
|
+
isOpen: boolean;
|
|
1905
|
+
post: Post$1 | undefined;
|
|
1906
|
+
setPost: (post: Post$1 | undefined) => void;
|
|
1907
|
+
postType: PostType;
|
|
1908
|
+
initialStep: InitialStep;
|
|
1909
|
+
openModal: (type?: PostType, step?: InitialStep) => void;
|
|
1910
|
+
closeModal: (preserveFormState?: boolean) => void;
|
|
1911
|
+
operation: "create" | "update";
|
|
1912
|
+
setOperation: (operation: "create" | "update") => void;
|
|
1913
|
+
setInitialStep: (step: InitialStep) => void;
|
|
1914
|
+
}
|
|
1915
|
+
declare const useCreatePostStore: zustand.UseBoundStore<zustand.StoreApi<CreatePostState>>;
|
|
1916
|
+
|
|
1917
|
+
type TMentionType = "user" | "page" | "community";
|
|
1918
|
+
type TMentionItem = {
|
|
1919
|
+
id?: string;
|
|
1920
|
+
name?: string;
|
|
1921
|
+
slug?: string;
|
|
1922
|
+
logo?: string;
|
|
1923
|
+
image?: string;
|
|
1924
|
+
avatar?: string;
|
|
1925
|
+
headline?: string;
|
|
1926
|
+
type?: TMentionType;
|
|
477
1927
|
};
|
|
478
1928
|
|
|
479
|
-
|
|
1929
|
+
type MentionableItem$1 = {
|
|
1930
|
+
id?: string;
|
|
1931
|
+
name?: string;
|
|
1932
|
+
slug?: string;
|
|
1933
|
+
image?: string;
|
|
1934
|
+
type?: 'user' | 'page' | 'community';
|
|
1935
|
+
originalData?: TMentionItem;
|
|
1936
|
+
};
|
|
480
1937
|
|
|
481
|
-
declare function
|
|
1938
|
+
declare function injectMentionUIDs(text: string, mentionedItems: MentionableItem$1[]): string;
|
|
482
1939
|
|
|
483
|
-
|
|
1940
|
+
type MentionableItem = {
|
|
484
1941
|
id?: string;
|
|
485
1942
|
name?: string;
|
|
486
|
-
|
|
487
|
-
logo?: string;
|
|
1943
|
+
slug?: string;
|
|
488
1944
|
image?: string;
|
|
1945
|
+
type?: "user" | "page" | "community";
|
|
1946
|
+
originalData?: TMentionItem;
|
|
1947
|
+
};
|
|
1948
|
+
|
|
1949
|
+
interface MentionableTextareaRef {
|
|
1950
|
+
insertMention: () => void;
|
|
1951
|
+
focus: () => void;
|
|
1952
|
+
getEditor: () => HTMLDivElement | null;
|
|
489
1953
|
}
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
label?: string;
|
|
1954
|
+
type MentionableTextareaProps = {
|
|
1955
|
+
value: string;
|
|
1956
|
+
onChange: (value: string) => void;
|
|
1957
|
+
placeholder?: string;
|
|
495
1958
|
className?: string;
|
|
496
1959
|
disabled?: boolean;
|
|
497
|
-
|
|
498
|
-
|
|
1960
|
+
onMentionsChange?: (mentions: IMention[]) => void;
|
|
1961
|
+
onKeyDown?: React__default.KeyboardEventHandler<HTMLDivElement>;
|
|
1962
|
+
minHeight?: number;
|
|
1963
|
+
maxHeight?: number;
|
|
1964
|
+
initialMentions?: MentionableItem[];
|
|
1965
|
+
};
|
|
1966
|
+
declare const MentionableTextarea: React__default.ForwardRefExoticComponent<MentionableTextareaProps & React__default.RefAttributes<MentionableTextareaRef>>;
|
|
1967
|
+
|
|
1968
|
+
type User = {
|
|
1969
|
+
id?: string;
|
|
1970
|
+
name?: string;
|
|
1971
|
+
slug?: string;
|
|
1972
|
+
about?: string;
|
|
1973
|
+
email?: string;
|
|
1974
|
+
phone?: string;
|
|
1975
|
+
isOpenToWork?: boolean;
|
|
1976
|
+
gender?: string;
|
|
1977
|
+
banner?: string;
|
|
1978
|
+
isContact?: boolean;
|
|
1979
|
+
isFollowed?: boolean;
|
|
1980
|
+
isFollowedBy?: boolean;
|
|
1981
|
+
birthDate?: string;
|
|
1982
|
+
nationality?: string;
|
|
1983
|
+
headline?: string;
|
|
1984
|
+
country?: string;
|
|
1985
|
+
city?: string;
|
|
1986
|
+
street?: string;
|
|
1987
|
+
countryCode?: string;
|
|
1988
|
+
profession?: string;
|
|
1989
|
+
addresses?: {
|
|
1990
|
+
country?: string;
|
|
1991
|
+
city?: string;
|
|
1992
|
+
address?: string;
|
|
1993
|
+
}[];
|
|
1994
|
+
address?: {
|
|
1995
|
+
country?: string;
|
|
1996
|
+
city?: string;
|
|
1997
|
+
address?: string;
|
|
1998
|
+
};
|
|
1999
|
+
avatar?: string;
|
|
2000
|
+
avatarDisplay?: string;
|
|
2001
|
+
provider?: string;
|
|
2002
|
+
role?: string;
|
|
2003
|
+
status?: string;
|
|
2004
|
+
createdAt?: string;
|
|
2005
|
+
updatedAt?: string;
|
|
2006
|
+
isPublic?: boolean;
|
|
2007
|
+
currentCompany?: string;
|
|
2008
|
+
person?: IPerson;
|
|
499
2009
|
link?: string;
|
|
2010
|
+
links?: string[];
|
|
2011
|
+
};
|
|
2012
|
+
interface IPerson {
|
|
2013
|
+
gender?: string;
|
|
2014
|
+
birthDate?: Date;
|
|
2015
|
+
nationality?: string;
|
|
2016
|
+
maritalStatus?: string;
|
|
2017
|
+
salaryExpectation?: string;
|
|
2018
|
+
countryCode?: string;
|
|
2019
|
+
}
|
|
2020
|
+
type PostAttachmentProps = {
|
|
2021
|
+
title?: string;
|
|
2022
|
+
description?: string;
|
|
2023
|
+
imageUrl?: string;
|
|
2024
|
+
url?: string;
|
|
2025
|
+
slug?: string;
|
|
2026
|
+
type: string;
|
|
2027
|
+
};
|
|
2028
|
+
type Post = {
|
|
2029
|
+
user: User;
|
|
2030
|
+
postType: "NORMAL" | "REEL";
|
|
2031
|
+
id: string;
|
|
2032
|
+
slug: string;
|
|
2033
|
+
createdAt: string;
|
|
2034
|
+
scheduledAt?: string;
|
|
2035
|
+
bio: string;
|
|
2036
|
+
content: string;
|
|
2037
|
+
totalShares: number;
|
|
2038
|
+
totalReactions?: number;
|
|
2039
|
+
totalComments?: number;
|
|
2040
|
+
attachment?: PostAttachmentProps;
|
|
2041
|
+
isFollowed?: boolean;
|
|
2042
|
+
isContact?: boolean;
|
|
2043
|
+
isArticle?: boolean;
|
|
2044
|
+
expiresAt?: string | null;
|
|
2045
|
+
link: {
|
|
2046
|
+
title: string;
|
|
2047
|
+
description: string;
|
|
2048
|
+
imageUrl: string;
|
|
2049
|
+
url: string;
|
|
2050
|
+
slug: string;
|
|
2051
|
+
};
|
|
2052
|
+
images: PostAssetProps[];
|
|
2053
|
+
videos: PostAssetProps[];
|
|
2054
|
+
reactions: PostReactionsProps[];
|
|
2055
|
+
comments: CommentProps[];
|
|
2056
|
+
sharedPostId: string;
|
|
2057
|
+
page?: {
|
|
2058
|
+
id?: string;
|
|
2059
|
+
name?: string;
|
|
2060
|
+
slug?: string;
|
|
2061
|
+
sector?: string;
|
|
2062
|
+
banner?: string;
|
|
2063
|
+
logo?: string;
|
|
2064
|
+
site?: string;
|
|
2065
|
+
};
|
|
2066
|
+
media?: unknown;
|
|
2067
|
+
linkPreview?: unknown;
|
|
2068
|
+
visibility?: string;
|
|
2069
|
+
sharedPost: Post;
|
|
2070
|
+
title?: string;
|
|
2071
|
+
stats?: {
|
|
2072
|
+
reactionCount?: number;
|
|
2073
|
+
commentCount?: number;
|
|
2074
|
+
shareCount?: number;
|
|
2075
|
+
};
|
|
2076
|
+
sharedContext?: unknown;
|
|
2077
|
+
mention?: {
|
|
2078
|
+
id: string;
|
|
2079
|
+
mentionedId: string;
|
|
2080
|
+
mentioned: User;
|
|
2081
|
+
}[];
|
|
2082
|
+
community?: {
|
|
2083
|
+
id: string;
|
|
2084
|
+
visibility: string;
|
|
2085
|
+
slug: string;
|
|
2086
|
+
banner?: string;
|
|
2087
|
+
createdAt?: string;
|
|
2088
|
+
description?: string;
|
|
2089
|
+
image?: string;
|
|
2090
|
+
location?: string;
|
|
2091
|
+
name: string;
|
|
2092
|
+
owner: {
|
|
2093
|
+
id: string;
|
|
2094
|
+
name: string;
|
|
2095
|
+
slug: string;
|
|
2096
|
+
email?: string;
|
|
2097
|
+
};
|
|
2098
|
+
ownerId: string;
|
|
2099
|
+
members?: {
|
|
2100
|
+
userId: string;
|
|
2101
|
+
user: {
|
|
2102
|
+
id: string;
|
|
2103
|
+
name: string;
|
|
2104
|
+
slug: string;
|
|
2105
|
+
};
|
|
2106
|
+
}[];
|
|
2107
|
+
};
|
|
2108
|
+
userId?: string;
|
|
2109
|
+
sharedInCommunity?: {
|
|
2110
|
+
id: string;
|
|
2111
|
+
slug: string;
|
|
2112
|
+
visibility: string;
|
|
2113
|
+
name: string;
|
|
2114
|
+
banner?: string;
|
|
2115
|
+
image?: string;
|
|
2116
|
+
location?: string;
|
|
2117
|
+
ownerId: string;
|
|
2118
|
+
owner: {
|
|
2119
|
+
id: string;
|
|
2120
|
+
slug: string;
|
|
2121
|
+
name: string;
|
|
2122
|
+
};
|
|
2123
|
+
};
|
|
2124
|
+
communityId?: string;
|
|
2125
|
+
};
|
|
2126
|
+
type PostAssetProps = {
|
|
2127
|
+
id: string;
|
|
2128
|
+
url: string;
|
|
2129
|
+
type?: "image" | "video" | "pdf";
|
|
2130
|
+
createdAt?: string;
|
|
2131
|
+
};
|
|
2132
|
+
type PostReactionsProps = {
|
|
2133
|
+
id: string;
|
|
2134
|
+
userId: string;
|
|
2135
|
+
postId: string;
|
|
2136
|
+
reaction: "LIKE" | "LOVE" | "HAHA" | "WOW" | "SAD" | "ANGRY";
|
|
2137
|
+
createdAt: string;
|
|
2138
|
+
updatedAt: string;
|
|
2139
|
+
user: User;
|
|
2140
|
+
};
|
|
2141
|
+
type CommentReactionsProps = {
|
|
2142
|
+
id: string;
|
|
2143
|
+
userId: string;
|
|
2144
|
+
commentId: string;
|
|
2145
|
+
reaction: "LIKE" | "LOVE" | "HAHA" | "AGREE" | "DISLIKE" | "EUREKA" | "NO_COMMENT" | "SUPPORT";
|
|
2146
|
+
createdAt: string;
|
|
2147
|
+
updatedAt: string;
|
|
2148
|
+
user?: User;
|
|
2149
|
+
};
|
|
2150
|
+
type CommentProps = {
|
|
2151
|
+
id: string;
|
|
2152
|
+
userId: string;
|
|
2153
|
+
postId: string;
|
|
2154
|
+
answerId: string;
|
|
2155
|
+
content: string;
|
|
2156
|
+
imageUrl: string;
|
|
2157
|
+
createdAt: string;
|
|
2158
|
+
updatedAt: string;
|
|
2159
|
+
user: User;
|
|
2160
|
+
reactions: CommentReactionsProps[];
|
|
2161
|
+
totalReactions?: number;
|
|
2162
|
+
answers: CommentProps[];
|
|
2163
|
+
totalAnswers: number;
|
|
2164
|
+
page?: {
|
|
2165
|
+
id: string;
|
|
2166
|
+
name: string;
|
|
2167
|
+
slug: string;
|
|
2168
|
+
sector: string;
|
|
2169
|
+
};
|
|
2170
|
+
};
|
|
2171
|
+
|
|
2172
|
+
interface RepostFlowTriggerProps {
|
|
2173
|
+
post: Post;
|
|
2174
|
+
className?: string;
|
|
2175
|
+
}
|
|
2176
|
+
declare function RepostFlowTrigger({ post, className }: RepostFlowTriggerProps): React__default.JSX.Element;
|
|
2177
|
+
|
|
2178
|
+
interface ShareFlowTriggerProps {
|
|
2179
|
+
post: Post;
|
|
2180
|
+
className?: string;
|
|
2181
|
+
}
|
|
2182
|
+
declare function ShareFlowTrigger({ post, className }: ShareFlowTriggerProps): React__default.JSX.Element;
|
|
2183
|
+
|
|
2184
|
+
interface SavedItemsStoreProps {
|
|
2185
|
+
isOpen: boolean;
|
|
2186
|
+
openModal: () => void;
|
|
2187
|
+
closeModal: () => void;
|
|
2188
|
+
toggleModal: () => void;
|
|
2189
|
+
}
|
|
2190
|
+
declare const useSavedItemsStore: zustand.UseBoundStore<zustand.StoreApi<SavedItemsStoreProps>>;
|
|
2191
|
+
|
|
2192
|
+
declare function GradientModal({ onClose, children, isOpen, className, contentClassName, showGradient, }: {
|
|
2193
|
+
onClose: () => void;
|
|
2194
|
+
children: React__default.ReactNode;
|
|
2195
|
+
isOpen: boolean;
|
|
2196
|
+
className?: string;
|
|
2197
|
+
contentClassName?: string;
|
|
2198
|
+
showGradient?: boolean;
|
|
2199
|
+
}): React__default.JSX.Element;
|
|
2200
|
+
|
|
2201
|
+
type OportunityType = "jobs" | "candidancies" | null;
|
|
2202
|
+
interface OportunitiesState {
|
|
2203
|
+
openType: OportunityType;
|
|
2204
|
+
setOpenType: (type: OportunityType) => void;
|
|
2205
|
+
reset: () => void;
|
|
2206
|
+
}
|
|
2207
|
+
declare const useOportunitiesStore: zustand.UseBoundStore<zustand.StoreApi<OportunitiesState>>;
|
|
2208
|
+
|
|
2209
|
+
interface ICreateCompanyModalProps {
|
|
2210
|
+
isOpen: boolean;
|
|
2211
|
+
onClose: () => void;
|
|
2212
|
+
}
|
|
2213
|
+
|
|
2214
|
+
declare function CreateCompany({ isOpen, onClose }: ICreateCompanyModalProps): React__default.JSX.Element;
|
|
2215
|
+
|
|
2216
|
+
declare function PagesFeedTrigger({ onClick }: {
|
|
2217
|
+
onClick?: (e: React__default.MouseEvent) => void;
|
|
2218
|
+
}): React__default.JSX.Element;
|
|
2219
|
+
|
|
2220
|
+
declare function Header({ className }: {
|
|
2221
|
+
className?: string;
|
|
2222
|
+
}): React__default.JSX.Element;
|
|
2223
|
+
|
|
2224
|
+
interface CandidaciesTriggerState {
|
|
2225
|
+
isCandidaciesOpen: boolean;
|
|
2226
|
+
openCandidacies: () => void;
|
|
2227
|
+
closeCandidacies: () => void;
|
|
2228
|
+
toggleCandidacies: () => void;
|
|
500
2229
|
}
|
|
501
|
-
declare
|
|
2230
|
+
declare const useCandidaciesTriggerStore: zustand.UseBoundStore<zustand.StoreApi<CandidaciesTriggerState>>;
|
|
502
2231
|
|
|
503
2232
|
interface JobTriggerState {
|
|
504
2233
|
isJobOpen: boolean;
|
|
@@ -506,156 +2235,300 @@ interface JobTriggerState {
|
|
|
506
2235
|
closeJob: () => void;
|
|
507
2236
|
toggleJob: () => void;
|
|
508
2237
|
}
|
|
509
|
-
declare const useJobTriggerStore: zustand.UseBoundStore<zustand.StoreApi<JobTriggerState
|
|
2238
|
+
declare const useJobTriggerStore: zustand.UseBoundStore<Omit<zustand.StoreApi<JobTriggerState>, "setState" | "persist"> & {
|
|
2239
|
+
setState(partial: JobTriggerState | Partial<JobTriggerState> | ((state: JobTriggerState) => JobTriggerState | Partial<JobTriggerState>), replace?: false | undefined): unknown;
|
|
2240
|
+
setState(state: JobTriggerState | ((state: JobTriggerState) => JobTriggerState), replace: true): unknown;
|
|
2241
|
+
persist: {
|
|
2242
|
+
setOptions: (options: Partial<zustand_middleware.PersistOptions<JobTriggerState, unknown, unknown>>) => void;
|
|
2243
|
+
clearStorage: () => void;
|
|
2244
|
+
rehydrate: () => Promise<void> | void;
|
|
2245
|
+
hasHydrated: () => boolean;
|
|
2246
|
+
onHydrate: (fn: (state: JobTriggerState) => void) => () => void;
|
|
2247
|
+
onFinishHydration: (fn: (state: JobTriggerState) => void) => () => void;
|
|
2248
|
+
getOptions: () => Partial<zustand_middleware.PersistOptions<JobTriggerState, unknown, unknown>>;
|
|
2249
|
+
};
|
|
2250
|
+
}>;
|
|
510
2251
|
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
2252
|
+
type TLocale = "pt" | "en" | "fr";
|
|
2253
|
+
type ToastVariant = "error" | "warning" | "info";
|
|
2254
|
+
interface IMirantesErrorHandlerConfig {
|
|
2255
|
+
onRedirect?: (path: string) => void;
|
|
2256
|
+
onLogout?: () => void;
|
|
2257
|
+
onRetry?: () => void;
|
|
2258
|
+
onCriticalError?: (title: string, message: string) => void;
|
|
2259
|
+
locale?: TLocale;
|
|
516
2260
|
}
|
|
517
|
-
declare const useCandidaciesTriggerStore: zustand.UseBoundStore<zustand.StoreApi<CandidaciesTriggerState>>;
|
|
518
2261
|
|
|
519
|
-
interface
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
2262
|
+
interface MirantesErrorBoundaryProps {
|
|
2263
|
+
children: React__default.ReactNode;
|
|
2264
|
+
locale?: TLocale;
|
|
2265
|
+
fallback?: React__default.ReactNode | ((error: Error, reset: () => void) => React__default.ReactNode);
|
|
2266
|
+
onError?: (error: Error, info: React__default.ErrorInfo) => void;
|
|
524
2267
|
}
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
interface ModalPosition {
|
|
529
|
-
top?: string;
|
|
530
|
-
bottom?: string;
|
|
531
|
-
left?: string;
|
|
532
|
-
right?: string;
|
|
2268
|
+
interface MirantesErrorBoundaryState {
|
|
2269
|
+
hasError: boolean;
|
|
2270
|
+
error: Error | null;
|
|
533
2271
|
}
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
2272
|
+
declare class MirantesErrorBoundary extends React__default.Component<MirantesErrorBoundaryProps, MirantesErrorBoundaryState> {
|
|
2273
|
+
constructor(props: MirantesErrorBoundaryProps);
|
|
2274
|
+
static getDerivedStateFromError(error: Error): MirantesErrorBoundaryState;
|
|
2275
|
+
componentDidCatch(error: Error, info: React__default.ErrorInfo): void;
|
|
2276
|
+
handleReset(): void;
|
|
2277
|
+
render(): string | number | bigint | boolean | Iterable<React__default.ReactNode> | Promise<string | number | bigint | boolean | React__default.ReactPortal | React__default.ReactElement<unknown, string | React__default.JSXElementConstructor<any>> | Iterable<React__default.ReactNode> | null | undefined> | React__default.JSX.Element | null | undefined;
|
|
538
2278
|
}
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
2279
|
+
|
|
2280
|
+
declare function setErrorConfig(newConfig: IMirantesErrorHandlerConfig): void;
|
|
2281
|
+
declare function getErrorConfig(): IMirantesErrorHandlerConfig | null;
|
|
2282
|
+
declare function clearErrorConfig(): void;
|
|
2283
|
+
|
|
2284
|
+
declare function handleError(error: unknown, toastFunctions?: {
|
|
2285
|
+
errorToast: (props: {
|
|
2286
|
+
title: string;
|
|
2287
|
+
message?: string;
|
|
2288
|
+
actionLabel?: string;
|
|
2289
|
+
onAction?: () => void;
|
|
2290
|
+
}) => void;
|
|
2291
|
+
warningToast: (props: {
|
|
2292
|
+
title: string;
|
|
2293
|
+
message?: string;
|
|
2294
|
+
}) => void;
|
|
2295
|
+
infoToast: (props: {
|
|
2296
|
+
title: string;
|
|
2297
|
+
message?: string;
|
|
2298
|
+
}) => void;
|
|
2299
|
+
}): void;
|
|
2300
|
+
declare function handleAxiosError(error: any, toastFunctions?: any): void;
|
|
2301
|
+
declare function handleGraphQLError(error: any, toastFunctions?: any): void;
|
|
2302
|
+
|
|
2303
|
+
declare function useErrorHandler(): {
|
|
2304
|
+
handleError: (error: unknown) => void;
|
|
2305
|
+
handleAxiosError: (error: any) => void;
|
|
2306
|
+
handleGraphQLError: (error: any) => void;
|
|
2307
|
+
};
|
|
2308
|
+
declare function useAxiosErrorInterceptor(axiosInstance?: AxiosInstance): void;
|
|
2309
|
+
|
|
2310
|
+
interface MirantesChatButtonProps {
|
|
2311
|
+
forMobile?: boolean;
|
|
2312
|
+
chatForPage?: boolean;
|
|
543
2313
|
}
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
2314
|
+
declare function MirantesChatButton({ forMobile, chatForPage, }: MirantesChatButtonProps): React__default.JSX.Element;
|
|
2315
|
+
|
|
2316
|
+
declare function useOpenChat(): {
|
|
2317
|
+
isChatVisible: boolean;
|
|
2318
|
+
isToSendMessageToPage: boolean;
|
|
2319
|
+
toggleChat: () => void;
|
|
2320
|
+
openChat: (sendMessageToPage?: boolean) => void;
|
|
2321
|
+
closeChat: () => void;
|
|
2322
|
+
};
|
|
2323
|
+
|
|
2324
|
+
interface IndexProps {
|
|
2325
|
+
chatForPage?: boolean;
|
|
2326
|
+
isCompactMode?: boolean;
|
|
548
2327
|
}
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
2328
|
+
declare const Index: ({ chatForPage, isCompactMode }: IndexProps) => React__default.JSX.Element;
|
|
2329
|
+
|
|
2330
|
+
declare const MirantesPDFViewer: ({ url, className, }: {
|
|
2331
|
+
url?: string;
|
|
2332
|
+
className?: string;
|
|
2333
|
+
}) => React__default.JSX.Element;
|
|
2334
|
+
|
|
2335
|
+
interface CalendarProps {
|
|
2336
|
+
locale?: "pt" | "fr" | "en";
|
|
2337
|
+
onMarkAsUnavailable?: () => void;
|
|
2338
|
+
isModalOpen?: boolean;
|
|
2339
|
+
onClose?: () => void;
|
|
2340
|
+
calendarCardClassName?: string;
|
|
555
2341
|
}
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
2342
|
+
declare function Calendar({ onMarkAsUnavailable, isModalOpen, onClose, calendarCardClassName, }: CalendarProps): React__default.JSX.Element;
|
|
2343
|
+
|
|
2344
|
+
interface PageFloatFooterProps {
|
|
2345
|
+
/**
|
|
2346
|
+
* Callback chamado quando o botão de adicionar é clicado.
|
|
2347
|
+
* Se fornecido, será usado em vez do comportamento padrão.
|
|
2348
|
+
*/
|
|
2349
|
+
onAddClick?: () => void;
|
|
563
2350
|
}
|
|
564
|
-
|
|
2351
|
+
declare function PageFloatFooter({ onAddClick }: PageFloatFooterProps): React__default.JSX.Element;
|
|
2352
|
+
|
|
2353
|
+
interface ControlButtonsProps {
|
|
2354
|
+
onPrevious: () => void;
|
|
2355
|
+
onNext: () => void;
|
|
2356
|
+
canGoPrevious: boolean;
|
|
2357
|
+
canGoNext: boolean;
|
|
565
2358
|
}
|
|
2359
|
+
declare const ControlButtons: ({ onPrevious, onNext, canGoPrevious, canGoNext }: ControlButtonsProps) => React__default.JSX.Element;
|
|
566
2360
|
|
|
567
|
-
|
|
2361
|
+
interface PdfFooterProps {
|
|
2362
|
+
currentPage: number;
|
|
2363
|
+
numPages: number;
|
|
2364
|
+
pdfUrl: string;
|
|
2365
|
+
isHovered: boolean;
|
|
2366
|
+
onToggleFullscreen?: () => void;
|
|
2367
|
+
variant?: 'default' | 'fullscreen';
|
|
2368
|
+
zoom?: number;
|
|
2369
|
+
onZoomIn?: () => void;
|
|
2370
|
+
onZoomOut?: () => void;
|
|
2371
|
+
}
|
|
2372
|
+
declare const PdfFooter: ({ currentPage, numPages, pdfUrl, isHovered, onToggleFullscreen, variant, zoom, onZoomIn, onZoomOut }: PdfFooterProps) => React__default.JSX.Element;
|
|
568
2373
|
|
|
569
|
-
interface
|
|
570
|
-
|
|
2374
|
+
interface PdfFullscreenViewProps {
|
|
2375
|
+
pdfUrl: string;
|
|
2376
|
+
pdfUrlWithPage: string;
|
|
2377
|
+
currentPage: number;
|
|
2378
|
+
numPages: number;
|
|
2379
|
+
pdfName: string;
|
|
2380
|
+
zoom: number;
|
|
571
2381
|
onClose: () => void;
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
2382
|
+
onDownload: () => void;
|
|
2383
|
+
onOpenAccessibility: () => void;
|
|
2384
|
+
onZoomIn: () => void;
|
|
2385
|
+
onZoomOut: () => void;
|
|
2386
|
+
onPreviousPage: () => void;
|
|
2387
|
+
onNextPage: () => void;
|
|
2388
|
+
canGoPrevious: boolean;
|
|
2389
|
+
canGoNext: boolean;
|
|
2390
|
+
}
|
|
2391
|
+
declare const PdfFullscreenView: ({ pdfUrl, pdfUrlWithPage, currentPage, numPages, pdfName, zoom, onClose, onDownload, onOpenAccessibility, onZoomIn, onZoomOut, onPreviousPage, onNextPage, canGoPrevious, canGoNext, }: PdfFullscreenViewProps) => React__default.ReactPortal | null;
|
|
2392
|
+
|
|
2393
|
+
interface PdfReaderProps {
|
|
2394
|
+
pdfUrl?: string;
|
|
2395
|
+
totalPages?: number;
|
|
2396
|
+
pdfName?: string;
|
|
575
2397
|
className?: string;
|
|
576
|
-
|
|
577
|
-
swipeable?: boolean;
|
|
578
|
-
swipeThreshold?: number;
|
|
2398
|
+
onMaximizeClicked?: () => void;
|
|
579
2399
|
}
|
|
2400
|
+
declare const PdfReader: ({ pdfUrl, totalPages: initialTotalPages, pdfName: initialPdfName, className, onMaximizeClicked }: PdfReaderProps) => React__default.JSX.Element;
|
|
580
2401
|
|
|
581
|
-
interface
|
|
582
|
-
|
|
2402
|
+
interface PdfReaderHeaderProps {
|
|
2403
|
+
pdfName: string;
|
|
2404
|
+
currentPage: number;
|
|
2405
|
+
numPages: number;
|
|
2406
|
+
isHovered: boolean;
|
|
2407
|
+
variant?: 'default' | 'fullscreen';
|
|
2408
|
+
onOpenAccessibility?: () => void;
|
|
2409
|
+
onDownload?: () => void;
|
|
2410
|
+
onClose?: () => void;
|
|
583
2411
|
}
|
|
584
|
-
declare
|
|
2412
|
+
declare const PdfReaderHeader: ({ pdfName, currentPage, numPages, isHovered, variant, onOpenAccessibility, onDownload, onClose }: PdfReaderHeaderProps) => React__default.JSX.Element;
|
|
585
2413
|
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
setOpenType: (type: OportunityType) => void;
|
|
590
|
-
reset: () => void;
|
|
2414
|
+
interface ProgressBarProps {
|
|
2415
|
+
currentPage: number;
|
|
2416
|
+
totalPages: number;
|
|
591
2417
|
}
|
|
592
|
-
declare const
|
|
2418
|
+
declare const ProgressBar: ({ currentPage, totalPages }: ProgressBarProps) => React__default.JSX.Element;
|
|
593
2419
|
|
|
594
|
-
declare function
|
|
595
|
-
postId?: string;
|
|
596
|
-
onClose?: () => void;
|
|
597
|
-
}): React__default.JSX.Element;
|
|
2420
|
+
declare function OpenClipsButton(): React__default.JSX.Element;
|
|
598
2421
|
|
|
599
|
-
declare
|
|
2422
|
+
declare function PostTriggerModal(props: any): React__default.JSX.Element | null;
|
|
600
2423
|
|
|
601
|
-
declare
|
|
2424
|
+
declare function PostBackgroundManager({ displayMode, }: {
|
|
2425
|
+
displayMode?: "inline" | "floating";
|
|
2426
|
+
}): React__default.JSX.Element;
|
|
602
2427
|
|
|
603
|
-
|
|
604
|
-
/** Número máximo de vezes que o banner pode ser mostrado (padrão: 5) */
|
|
605
|
-
maxShows?: number;
|
|
606
|
-
/** Delay inicial em milissegundos antes de mostrar o banner pela primeira vez (padrão: 30 segundos) */
|
|
607
|
-
initialDelayMs?: number;
|
|
608
|
-
/** Se deve mostrar apenas em dispositivos móveis (padrão: true) */
|
|
609
|
-
mobileOnly?: boolean;
|
|
610
|
-
/** Se o banner automático está ativo (padrão: true) */
|
|
611
|
-
enabled?: boolean;
|
|
612
|
-
}
|
|
613
|
-
declare const AutoDownloadBanner: React__default.FC<AutoDownloadBannerProps>;
|
|
2428
|
+
type TActions = "media" | "clips" | "saved-items" | "articles" | "mention" | "create-a-job" | "schedule-a-post";
|
|
614
2429
|
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
2430
|
+
declare function PostTrigger({ community, type: initialType, restrictProfileSelection, optimisticUpdateType, hiddenOptions, onClickAction, processModeDisplay, typeRender, }: {
|
|
2431
|
+
processModeDisplay?: "floating" | "inline";
|
|
2432
|
+
typeRender?: {
|
|
2433
|
+
render?: "input" | "button";
|
|
2434
|
+
buttonClassName?: string;
|
|
2435
|
+
buttonText?: string;
|
|
2436
|
+
};
|
|
2437
|
+
type?: "page" | "user" | "community";
|
|
2438
|
+
restrictProfileSelection?: boolean;
|
|
2439
|
+
optimisticUpdateType: "profile" | "pages" | "community" | "feed" | "feed-with-go";
|
|
2440
|
+
hiddenOptions?: TActions[];
|
|
2441
|
+
onClickAction: (action: "clips" | "saved-items" | "articles") => void;
|
|
2442
|
+
community?: {
|
|
2443
|
+
id?: string;
|
|
2444
|
+
name?: string;
|
|
2445
|
+
logo?: string;
|
|
2446
|
+
sector?: string;
|
|
2447
|
+
};
|
|
2448
|
+
}): React__default.JSX.Element;
|
|
622
2449
|
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
2450
|
+
declare const useApiCheckRater: ({ userId, pageId, communityId, forAPage, inView, }: {
|
|
2451
|
+
userId?: string;
|
|
2452
|
+
pageId?: string;
|
|
2453
|
+
communityId?: string;
|
|
2454
|
+
forAPage?: boolean;
|
|
2455
|
+
inView?: boolean;
|
|
2456
|
+
}) => {
|
|
2457
|
+
hasRated: boolean;
|
|
2458
|
+
isCheckingRater: boolean;
|
|
2459
|
+
error: Error | null;
|
|
2460
|
+
};
|
|
2461
|
+
|
|
2462
|
+
type AddRatingProps = {
|
|
2463
|
+
enableTitle?: boolean;
|
|
2464
|
+
variantStars?: "large" | "small" | "medium";
|
|
2465
|
+
starSize?: {
|
|
2466
|
+
width: number;
|
|
2467
|
+
height: number;
|
|
641
2468
|
};
|
|
642
|
-
|
|
643
|
-
|
|
2469
|
+
forAPage?: boolean;
|
|
2470
|
+
receiverPageId?: string;
|
|
2471
|
+
receiverUserId?: string;
|
|
2472
|
+
receiverCommunityId?: string;
|
|
2473
|
+
className?: string;
|
|
2474
|
+
isCommunity?: boolean;
|
|
2475
|
+
variant?: "default" | "feed" | "only-one-card";
|
|
2476
|
+
userSlug?: string;
|
|
2477
|
+
pageSlug?: string;
|
|
2478
|
+
communitySlug?: string;
|
|
2479
|
+
align?: "left" | "center" | "right";
|
|
2480
|
+
};
|
|
2481
|
+
declare function AddRating({ enableTitle, variantStars, starSize, forAPage, receiverPageId, receiverUserId, receiverCommunityId, className, isCommunity, variant, userSlug, pageSlug, communitySlug, align, }: AddRatingProps): React__default.JSX.Element;
|
|
2482
|
+
|
|
2483
|
+
type AvatarRatingBadgeProps = {
|
|
2484
|
+
name?: string;
|
|
2485
|
+
src?: string;
|
|
2486
|
+
rating: number;
|
|
2487
|
+
asPage?: boolean;
|
|
2488
|
+
isCommunity?: boolean;
|
|
2489
|
+
className?: string;
|
|
2490
|
+
slug?: string;
|
|
644
2491
|
};
|
|
2492
|
+
declare function AvatarRatingBadge({ name, asPage, src, rating, isCommunity, className, slug, }: AvatarRatingBadgeProps): React__default.JSX.Element;
|
|
645
2493
|
|
|
646
|
-
declare function
|
|
2494
|
+
declare function RatingReviewsList({ variant, forPage, receiverPageId, receiverUserId, receiverCommunityId, inlinePreview, onOpenAllRatings, externalError, }: {
|
|
2495
|
+
variant?: "maximized" | "minimized";
|
|
2496
|
+
forPage?: boolean;
|
|
2497
|
+
receiverUserId?: string;
|
|
2498
|
+
receiverPageId?: string;
|
|
2499
|
+
receiverCommunityId?: string;
|
|
2500
|
+
inlinePreview?: boolean;
|
|
2501
|
+
onOpenAllRatings?: () => void;
|
|
2502
|
+
externalError?: unknown;
|
|
2503
|
+
}): React__default.JSX.Element | null;
|
|
647
2504
|
|
|
648
2505
|
interface IRatingsCardProps {
|
|
649
2506
|
isCurrentPageOrProfile?: boolean;
|
|
650
2507
|
userId?: string;
|
|
651
2508
|
pageId?: string;
|
|
2509
|
+
communityId?: string;
|
|
652
2510
|
forAPage?: boolean;
|
|
653
2511
|
currentUserId?: string;
|
|
2512
|
+
pageSlug?: string;
|
|
2513
|
+
userSlug?: string;
|
|
2514
|
+
communitySlug?: string;
|
|
654
2515
|
}
|
|
2516
|
+
type TRatingUserCard = {
|
|
2517
|
+
user: {
|
|
2518
|
+
name: string;
|
|
2519
|
+
profession: string;
|
|
2520
|
+
avatar?: string;
|
|
2521
|
+
isOwner?: boolean;
|
|
2522
|
+
slug?: string;
|
|
2523
|
+
};
|
|
2524
|
+
anonymous?: boolean;
|
|
2525
|
+
rating: number;
|
|
2526
|
+
userRating: number;
|
|
2527
|
+
comment: string;
|
|
2528
|
+
createdAt: string | Date;
|
|
2529
|
+
};
|
|
655
2530
|
|
|
656
|
-
declare function
|
|
657
|
-
variant?: "maximized" | "minimized";
|
|
658
|
-
}): React__default.JSX.Element;
|
|
2531
|
+
declare function RatingUserCard({ user, rating, userRating, comment, createdAt, anonymous, }: TRatingUserCard): React__default.JSX.Element;
|
|
659
2532
|
|
|
660
2533
|
interface RattingSuggestionCardProps {
|
|
661
2534
|
asPage?: boolean;
|
|
@@ -677,8 +2550,22 @@ interface RattingSuggestionCardProps {
|
|
|
677
2550
|
totalRatings?: number;
|
|
678
2551
|
};
|
|
679
2552
|
renderFollowButton?: ReactNode;
|
|
2553
|
+
averageRatingScore?: number;
|
|
2554
|
+
}
|
|
2555
|
+
declare function RattingSuggestionCard({ asPage, page, user, renderFollowButton, averageRatingScore, }: RattingSuggestionCardProps): React__default.JSX.Element;
|
|
2556
|
+
|
|
2557
|
+
declare function RatingsSummary({ variant, asPage, receiverUserId, receiverPageId, receiverCommunityId }: {
|
|
2558
|
+
variant?: "maximized" | "minimized";
|
|
2559
|
+
asPage?: boolean;
|
|
2560
|
+
receiverUserId?: string;
|
|
2561
|
+
receiverPageId?: string;
|
|
2562
|
+
receiverCommunityId?: string;
|
|
2563
|
+
}): React__default.JSX.Element;
|
|
2564
|
+
|
|
2565
|
+
interface ShareProfileDivProps extends RattingSuggestionCardProps {
|
|
2566
|
+
className?: string;
|
|
680
2567
|
}
|
|
681
|
-
declare function
|
|
2568
|
+
declare function ShareProfile({ asPage, page, user, className, }: ShareProfileDivProps): React__default.JSX.Element;
|
|
682
2569
|
|
|
683
2570
|
interface ShareProfileButtonProps {
|
|
684
2571
|
onClick: () => void;
|
|
@@ -689,11 +2576,162 @@ interface ShareProfileModalProps extends RattingSuggestionCardProps {
|
|
|
689
2576
|
isOpen: boolean;
|
|
690
2577
|
onClose: () => void;
|
|
691
2578
|
}
|
|
692
|
-
declare function ShareProfileModal({ asPage, page, user, isOpen, onClose }: ShareProfileModalProps): React__default.JSX.Element;
|
|
2579
|
+
declare function ShareProfileModal({ asPage, page, user, isOpen, onClose, }: ShareProfileModalProps): React__default.JSX.Element;
|
|
693
2580
|
|
|
694
|
-
|
|
2581
|
+
declare function RatingsCard({ isCurrentPageOrProfile, pageId, userId, communityId, variant, forAPage, currentUserId, className, userSlug, pageSlug, communitySlug, }: IRatingsCardProps & {
|
|
2582
|
+
variant?: "maximized" | "minimized";
|
|
2583
|
+
className?: string;
|
|
2584
|
+
userSlug?: string;
|
|
2585
|
+
pageSlug?: string;
|
|
2586
|
+
communitySlug?: string;
|
|
2587
|
+
}): React__default.JSX.Element;
|
|
2588
|
+
|
|
2589
|
+
type TReaction = "AGREE" | "SUPPORT" | "EUREKA" | "NO_COMMENT" | "DISAGREE";
|
|
2590
|
+
type TReactionsFor = "feed" | "comments" | "profile" | "pages" | "communities";
|
|
2591
|
+
type TReactionPostSnapshot = {
|
|
2592
|
+
id?: string;
|
|
2593
|
+
totalReactions?: number;
|
|
2594
|
+
currentUserReaction?: string | null;
|
|
2595
|
+
myReaction?: string | null;
|
|
2596
|
+
reactions?: Array<{
|
|
2597
|
+
reaction?: string;
|
|
2598
|
+
userId?: string;
|
|
2599
|
+
}>;
|
|
2600
|
+
metrics?: {
|
|
2601
|
+
reactions?: Array<{
|
|
2602
|
+
type?: string;
|
|
2603
|
+
count?: number;
|
|
2604
|
+
}>;
|
|
2605
|
+
};
|
|
2606
|
+
};
|
|
2607
|
+
type TReactionsButtonProps = {
|
|
2608
|
+
className?: string;
|
|
2609
|
+
currentReaction?: TReaction | null;
|
|
2610
|
+
totalReactions?: number;
|
|
2611
|
+
topReactions?: TReaction[];
|
|
2612
|
+
/** When set (e.g. feed post), totals and top badges are derived from this object and stay in sync after optimistic updates. */
|
|
2613
|
+
post?: TReactionPostSnapshot;
|
|
2614
|
+
reactionsFor?: TReactionsFor;
|
|
2615
|
+
isGettingReactions?: boolean;
|
|
2616
|
+
postId?: string;
|
|
2617
|
+
commentId?: string;
|
|
2618
|
+
/** Profile feed cache (`postsByUser`) when `reactionsFor` is `"profile"`. */
|
|
2619
|
+
profileUserId?: string;
|
|
2620
|
+
/** Page posts cache (`post-page`) when `reactionsFor` is `"pages"`. */
|
|
2621
|
+
pageId?: string;
|
|
2622
|
+
};
|
|
2623
|
+
|
|
2624
|
+
declare function ReactionButton({ reactionsFor, currentReaction, isGettingReactions, topReactions, totalReactions, post, postId, commentId, profileUserId, pageId, className, }: TReactionsButtonProps): React__default.JSX.Element;
|
|
2625
|
+
|
|
2626
|
+
declare function getPostReactionSummary(post: TReactionPostSnapshot, options?: {
|
|
2627
|
+
fallbackTop?: TReaction[];
|
|
2628
|
+
fallbackTotal?: number;
|
|
2629
|
+
userId?: string;
|
|
2630
|
+
}): {
|
|
2631
|
+
totalReactions: number;
|
|
2632
|
+
topReactions: TReaction[];
|
|
2633
|
+
currentReaction: TReaction | null;
|
|
2634
|
+
};
|
|
2635
|
+
declare function applyOptimisticReactionToSnapshot(snapshot: TReactionPostSnapshot, postId: string, reaction: TReaction, userId: string, userInfo: {
|
|
2636
|
+
id: string;
|
|
2637
|
+
name: string;
|
|
2638
|
+
email: string;
|
|
2639
|
+
avatar: string;
|
|
2640
|
+
slug: string;
|
|
2641
|
+
headline: string;
|
|
2642
|
+
}): TReactionPostSnapshot;
|
|
2643
|
+
|
|
2644
|
+
type ReactionType = {
|
|
2645
|
+
emoji: ReactNode;
|
|
2646
|
+
id: string;
|
|
2647
|
+
label: string;
|
|
2648
|
+
};
|
|
2649
|
+
|
|
2650
|
+
type ReactionMetric = {
|
|
2651
|
+
type?: string;
|
|
2652
|
+
count?: number;
|
|
2653
|
+
};
|
|
2654
|
+
type ReactPostButtonProps = {
|
|
2655
|
+
post: Post$2;
|
|
2656
|
+
hideLabel?: boolean;
|
|
2657
|
+
className?: string;
|
|
2658
|
+
orientation?: "vertical" | "horizontal";
|
|
2659
|
+
compact?: boolean;
|
|
2660
|
+
currentReaction?: string | null;
|
|
2661
|
+
totalReactions?: number;
|
|
2662
|
+
reactions?: Post$2["reactions"];
|
|
2663
|
+
optimisticReactions?: PostReactionsProps$2[];
|
|
2664
|
+
topReactions?: ReactionType[];
|
|
2665
|
+
metrics?: {
|
|
2666
|
+
reactions?: ReactionMetric[];
|
|
2667
|
+
} | ReactionMetric[];
|
|
2668
|
+
};
|
|
2669
|
+
declare function ReactPostButton({ post, hideLabel, className, orientation, compact, currentReaction: currentReactionOverride, totalReactions: totalReactionsOverride, reactions: reactionsOverride, optimisticReactions: optimisticReactionsOverride, topReactions: topReactionsOverride, metrics, }: ReactPostButtonProps): JSX.Element;
|
|
2670
|
+
|
|
2671
|
+
type DrawerSide = 'bottom' | 'right';
|
|
2672
|
+
interface ResponsiveDrawerProps {
|
|
2673
|
+
isOpen: boolean;
|
|
2674
|
+
onClose: () => void;
|
|
2675
|
+
children: React__default.ReactNode;
|
|
2676
|
+
className?: string;
|
|
2677
|
+
fullWidth?: boolean;
|
|
2678
|
+
title?: string;
|
|
2679
|
+
header?: React__default.ReactNode;
|
|
2680
|
+
footer?: React__default.ReactNode;
|
|
2681
|
+
side?: DrawerSide;
|
|
2682
|
+
}
|
|
2683
|
+
declare const ResponsiveDrawer: React__default.FC<ResponsiveDrawerProps>;
|
|
2684
|
+
|
|
2685
|
+
declare function Spinner({ className }: {
|
|
2686
|
+
className?: string;
|
|
2687
|
+
}): React__default.JSX.Element;
|
|
2688
|
+
|
|
2689
|
+
interface SalaryInputWithButtonProps {
|
|
2690
|
+
label?: string;
|
|
2691
|
+
value?: {
|
|
2692
|
+
amount: string;
|
|
2693
|
+
currency: string;
|
|
2694
|
+
};
|
|
2695
|
+
onChange?: (val: {
|
|
2696
|
+
amount: string;
|
|
2697
|
+
currency: string;
|
|
2698
|
+
}) => void;
|
|
2699
|
+
onGenerate?: () => void;
|
|
2700
|
+
placeholder?: string;
|
|
2701
|
+
disabled?: boolean;
|
|
695
2702
|
className?: string;
|
|
2703
|
+
buttonLabel?: string;
|
|
2704
|
+
}
|
|
2705
|
+
declare function SalaryInputWithButton({ label, value, onChange, onGenerate, placeholder, disabled, className, buttonLabel, }: SalaryInputWithButtonProps): React__default.JSX.Element;
|
|
2706
|
+
|
|
2707
|
+
interface SharePostModalProps {
|
|
2708
|
+
isOpen: boolean;
|
|
2709
|
+
onClose: () => void;
|
|
2710
|
+
post: Post;
|
|
2711
|
+
isProfileLink?: boolean;
|
|
2712
|
+
variant?: "share" | "repost";
|
|
2713
|
+
postCardComponent?: React__default.ReactNode | JSX.Element;
|
|
696
2714
|
}
|
|
697
|
-
declare
|
|
2715
|
+
declare const SharePostModal: ({ isOpen, onClose, post, variant, isProfileLink, postCardComponent, }: SharePostModalProps) => JSX.Element;
|
|
2716
|
+
|
|
2717
|
+
declare function getInitials(fullName: string): string;
|
|
2718
|
+
|
|
2719
|
+
declare function joinUrlWithPathAndQuery(baseUrl: string, path: string, query?: Record<string, string>): string;
|
|
2720
|
+
|
|
2721
|
+
declare function broadcastLogout(): void;
|
|
2722
|
+
declare function onLogout(callback: () => void): void;
|
|
2723
|
+
declare function closeLogoutChannel(): void;
|
|
2724
|
+
|
|
2725
|
+
declare function stringToObj<T>(inputString: string, separator: string): T | undefined;
|
|
2726
|
+
|
|
2727
|
+
type MobileWorkspaceBarProps = {
|
|
2728
|
+
onCreatePost?: () => void;
|
|
2729
|
+
onCreateReel?: () => void;
|
|
2730
|
+
onCreateJob?: () => void;
|
|
2731
|
+
onJobsClick?: () => void;
|
|
2732
|
+
};
|
|
2733
|
+
declare function MobileWorkspaceBar({ onCreateJob, }: MobileWorkspaceBarProps): React__default.JSX.Element;
|
|
2734
|
+
|
|
2735
|
+
declare function WorkspacePanel(): React__default.JSX.Element;
|
|
698
2736
|
|
|
699
|
-
export { AddressAutocompleteInput, AnimatedModal, AutoDownloadBanner, BaseInput, Button, ChatContacts, ChatView, ChatViewDesktopPage, CheckBoxInput, ContactsModal, CountryDisplay, CountryInput, CustomDateInput, CustomDrawer, CustomDropdown, CustomSelectInput, DateInput, DownloadMobileVersionBanner, DownloadModalTrigger, GradientModal, Header, MessageButton, MirantesButton, MirantesFoundationProvider, PagesFeedTrigger, RadioButtonInput, RatingsCard, RattingSuggestionCard, ResponsiveDrawer, SalaryInputWithButton, Calendar as ScheduleCalendar, ShareProfile, ShareProfileButton, ShareProfileModal, Spinner, WorkspacePanel, clearSettingsCookie, closeLogoutChannel, getInitials, getSettingsFromCookie, joinUrlWithPathAndQuery, onLogout, stringToObj, useApiGetPage, useCandidaciesTriggerStore, useCommunityTriggerStore, useJobTriggerStore, useLoadSettings, useMirantesFoundation, useModalStore, useOportunitiesStore, usePeriodicDownloadBanner, useSetChatVisibility };
|
|
2737
|
+
export { ActivateAccountModal, AddRating, AddressAutocompleteInput, AnimatedModal, ArticleContent, ArticleViewer, AutoComponent, AutoDownloadBanner, AvatarRatingBadge, BaseInput, Button, ChatContacts, ChatListWrapper, ChatView, ChatViewDesktopPage, CheckBoxInput, closeLogoutChannel as CloseLogoutChannel, ContactsModal, ControlButtons, CountryDisplay, CountryInput, CreateCompany, CreatePostCard, CreatePostContent, CreatePostForm, CreatePostModal, CreatePostModalFilters, CreatePostReelForm, CreatePostScheduleStep, CreatePostToolbar, CustomDateInput, CustomDrawer, CustomDropdown, MirantesModal as CustomMirantesModal, CustomSelectInput, DateInput, DownloadMobileVersionBanner, DownloadModalTrigger, EmojiPickerButton, GradientModal, Header, type IMirantesErrorHandlerConfig, MentionableTextarea, MessageButton, MessagesButtonFromPage, MirantesButton, Index as MirantesChatApp, MirantesChatButton, MirantesErrorBoundary, MirantesFoundationProvider, MirantesPDFViewer, ResponsiveDrawer as MirantesResponsiveDrawer, MirantesSheets, MobileWorkspaceBar, NoRecruitmentResponsiveIlustration, onLogout as Onlogout, OpenClipsButton, PageChatContent, PageChatContentHeader, PageChatInput, PageChatList, PageChatListWrapper, PageChatUserSuggestions, PageFloatFooter, PageMessageWrapper, PagesFeedTrigger, PdfFooter, PdfFullscreenView, PdfReader, PdfReaderHeader, PostBackgroundManager, PostCardArticle, PostTrigger, PostTriggerModal, ProgressBar, RadioButtonInput, RatingReviewsList, RatingUserCard, RatingsCard, RatingsSummary, RattingSuggestionCard, ReactPostButton, ReactionButton, RepostFlowTrigger, ResponsiveDrawer$1 as ResponsiveDrawer, SalaryInputWithButton, Calendar as ScheduleCalendar, ShareFlowTrigger, SharePostModal, ShareProfile, ShareProfileButton, ShareProfileModal, Spinner, type TReactionPostSnapshot, type ToastVariant, TripleInputDate, PostBackgroundManager as UploadProgressManager, WorkspacePanel, applyOptimisticReactionToSnapshot, broadcastLogout, clearErrorConfig, clearSettingsCookie, clearUserSession, closeLogoutChannel, createPersistentState, dispatchLogoutEvent, getErrorConfig, getInitials, getPostReactionSummary, getSettingsFromCookie, handleAxiosError, handleError, handleGraphQLError, injectMentionUIDs, joinUrlWithPathAndQuery, onLogout, setErrorConfig, stringToObj, useApiCheckRater, useApiGetContacts, useApiGetPage, useApiLogout, useArticleNavigation, useArticleStore, useAssetVersions, useAutoDisplay, useAxiosErrorInterceptor, useBestAssetVersion, useCandidaciesTriggerStore, useCommunityTriggerStore, useCreatePostFormStore, useCreatePostStore, useErrorHandler, useJobTriggerStore, useLoadSettings, useLogout, useMessageAppStore, useMirantesFoundation, useMirantesToast, useModalArticleStore, useModalStore, useOpenChat, useOportunitiesStore, usePeriodicDownloadBanner, usePersistentUIState, useRegisterTracking, useRestorePendingChat, useSavedItemsStore, useSetChatVisibility, useSignedUrl, useUploadAsset, useUploadAssetsBulk };
|