@intlayer/design-system 8.7.12 → 8.7.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/README.md +1 -1
  2. package/dist/esm/components/DictionaryEditor/NodeWrapper/BooleanWrapper.mjs +1 -1
  3. package/dist/esm/components/DictionaryFieldEditor/ContentEditorView/TextEditor.mjs +1 -1
  4. package/dist/esm/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.mjs +2 -0
  5. package/dist/esm/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.mjs.map +1 -1
  6. package/dist/esm/components/DictionaryFieldEditor/DictionaryFieldEditor.mjs +1 -1
  7. package/dist/esm/components/DictionaryFieldEditor/DictionaryFieldEditor.mjs.map +1 -1
  8. package/dist/esm/components/Form/elements/SwitchSelectorElement.mjs +1 -1
  9. package/dist/esm/components/IDE/Code.mjs +4 -1
  10. package/dist/esm/components/IDE/Code.mjs.map +1 -1
  11. package/dist/esm/components/IDE/CodeBlockClient.mjs.map +1 -1
  12. package/dist/esm/components/IDE/CodeBlockHighlight.mjs +2 -2
  13. package/dist/esm/components/IDE/CodeBlockHighlight.mjs.map +1 -1
  14. package/dist/esm/components/IDE/CodeBlockShiki.mjs +1 -1
  15. package/dist/esm/components/IDE/CodeBlockShiki.mjs.map +1 -1
  16. package/dist/esm/components/Input/Checkbox.mjs +13 -13
  17. package/dist/esm/components/Input/Checkbox.mjs.map +1 -1
  18. package/dist/esm/components/Link/Link.mjs +3 -3
  19. package/dist/esm/components/Link/Link.mjs.map +1 -1
  20. package/dist/esm/components/LocaleSwitcherContentDropDown/LocaleSwitcherContent.mjs +2 -1
  21. package/dist/esm/components/LocaleSwitcherContentDropDown/LocaleSwitcherContent.mjs.map +1 -1
  22. package/dist/esm/components/Navbar/index.mjs.map +1 -1
  23. package/dist/esm/components/Popover/static.mjs +1 -1
  24. package/dist/esm/components/Popover/static.mjs.map +1 -1
  25. package/dist/esm/components/SwitchSelector/SwitchSelector.mjs +127 -0
  26. package/dist/esm/components/SwitchSelector/SwitchSelector.mjs.map +1 -0
  27. package/dist/esm/components/SwitchSelector/VerticalSwitchSelector.mjs +105 -0
  28. package/dist/esm/components/SwitchSelector/VerticalSwitchSelector.mjs.map +1 -0
  29. package/dist/esm/components/SwitchSelector/index.mjs +3 -179
  30. package/dist/esm/components/SwitchSelector/useSwitchSelector.mjs +44 -0
  31. package/dist/esm/components/SwitchSelector/useSwitchSelector.mjs.map +1 -0
  32. package/dist/esm/components/index.mjs +3 -2
  33. package/dist/esm/hooks/index.mjs +2 -2
  34. package/dist/esm/hooks/reactQuery.mjs +41 -12
  35. package/dist/esm/hooks/reactQuery.mjs.map +1 -1
  36. package/dist/esm/hooks/useAuth/useOAuth2.mjs +2 -2
  37. package/dist/esm/hooks/useAuth/useOAuth2.mjs.map +1 -1
  38. package/dist/esm/hooks/useAuth/useSession.mjs +6 -4
  39. package/dist/esm/hooks/useAuth/useSession.mjs.map +1 -1
  40. package/dist/esm/hooks/useItemSelector.mjs +33 -20
  41. package/dist/esm/hooks/useItemSelector.mjs.map +1 -1
  42. package/dist/esm/providers/ReactQueryProvider.mjs +56 -21
  43. package/dist/esm/providers/ReactQueryProvider.mjs.map +1 -1
  44. package/dist/types/components/Badge/index.d.ts +3 -3
  45. package/dist/types/components/Button/Button.d.ts +5 -5
  46. package/dist/types/components/CollapsibleTable/CollapsibleTable.d.ts +1 -1
  47. package/dist/types/components/Command/index.d.ts +3 -3
  48. package/dist/types/components/Container/index.d.ts +8 -8
  49. package/dist/types/components/IDE/Code.d.ts +2 -2
  50. package/dist/types/components/IDE/Code.d.ts.map +1 -1
  51. package/dist/types/components/IDE/CodeBlockClient.d.ts +3 -3
  52. package/dist/types/components/IDE/CodeBlockClient.d.ts.map +1 -1
  53. package/dist/types/components/IDE/CodeBlockHighlight.d.ts +2 -1
  54. package/dist/types/components/IDE/CodeBlockHighlight.d.ts.map +1 -1
  55. package/dist/types/components/IDE/CodeBlockShiki.d.ts +2 -2
  56. package/dist/types/components/IDE/CodeBlockShiki.d.ts.map +1 -1
  57. package/dist/types/components/Input/Checkbox.d.ts +3 -3
  58. package/dist/types/components/Input/Checkbox.d.ts.map +1 -1
  59. package/dist/types/components/Input/Input.d.ts +1 -1
  60. package/dist/types/components/Link/Link.d.ts +4 -4
  61. package/dist/types/components/Navbar/index.d.ts.map +1 -1
  62. package/dist/types/components/Pagination/Pagination.d.ts +1 -1
  63. package/dist/types/components/SwitchSelector/SwitchSelector.d.ts +56 -0
  64. package/dist/types/components/SwitchSelector/SwitchSelector.d.ts.map +1 -0
  65. package/dist/types/components/SwitchSelector/VerticalSwitchSelector.d.ts +22 -0
  66. package/dist/types/components/SwitchSelector/VerticalSwitchSelector.d.ts.map +1 -0
  67. package/dist/types/components/SwitchSelector/index.d.ts +3 -79
  68. package/dist/types/components/SwitchSelector/useSwitchSelector.d.ts +27 -0
  69. package/dist/types/components/SwitchSelector/useSwitchSelector.d.ts.map +1 -0
  70. package/dist/types/components/Tab/Tab.d.ts +1 -1
  71. package/dist/types/components/TabSelector/TabSelector.d.ts +1 -1
  72. package/dist/types/components/Tag/index.d.ts +3 -3
  73. package/dist/types/components/Toaster/Toast.d.ts +1 -1
  74. package/dist/types/components/index.d.ts +3 -2
  75. package/dist/types/hooks/index.d.ts +2 -2
  76. package/dist/types/hooks/reactQuery.d.ts +4 -1
  77. package/dist/types/hooks/reactQuery.d.ts.map +1 -1
  78. package/dist/types/hooks/useAuth/useOAuth2.d.ts.map +1 -1
  79. package/dist/types/providers/ReactQueryProvider.d.ts +5 -2
  80. package/dist/types/providers/ReactQueryProvider.d.ts.map +1 -1
  81. package/package.json +24 -21
  82. package/dist/esm/components/SwitchSelector/index.mjs.map +0 -1
  83. package/dist/types/components/SwitchSelector/index.d.ts.map +0 -1
@@ -0,0 +1,44 @@
1
+ 'use client';
2
+
3
+ import { useItemSelector } from "../../hooks/useItemSelector.mjs";
4
+ import { useEffect, useRef, useState } from "react";
5
+
6
+ //#region src/components/SwitchSelector/useSwitchSelector.ts
7
+ const useSwitchSelector = ({ choices = [], value, defaultValue, onChange, hoverable = true, disabled = false }, orientation) => {
8
+ const [valueState, setValue] = useState(value ?? defaultValue ?? choices[0]?.value);
9
+ const [hoveredIndex, setHoveredIndex] = useState(null);
10
+ const optionsRefs = useRef([]);
11
+ const indicatorRef = useRef(null);
12
+ const { choiceIndicatorPosition } = useItemSelector(optionsRefs, {
13
+ selector: (el) => el.getAttribute("data-indicator") === "true",
14
+ isHoverable: false,
15
+ orientation
16
+ });
17
+ const selectedIndex = choices.findIndex((choice) => choice.value === valueState);
18
+ const indicatorIndex = hoverable && hoveredIndex !== null ? hoveredIndex : selectedIndex;
19
+ const handleChange = (newValue) => {
20
+ console.log("useSwitchSelector handleChange", newValue);
21
+ setValue(newValue);
22
+ onChange?.(newValue);
23
+ };
24
+ useEffect(() => {
25
+ if (value === void 0) return;
26
+ setValue(value);
27
+ }, [value]);
28
+ return {
29
+ valueState,
30
+ hoveredIndex,
31
+ setHoveredIndex,
32
+ optionsRefs,
33
+ indicatorRef,
34
+ choiceIndicatorPosition,
35
+ selectedIndex,
36
+ indicatorIndex,
37
+ handleChange,
38
+ disabled
39
+ };
40
+ };
41
+
42
+ //#endregion
43
+ export { useSwitchSelector };
44
+ //# sourceMappingURL=useSwitchSelector.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSwitchSelector.mjs","names":[],"sources":["../../../../src/components/SwitchSelector/useSwitchSelector.ts"],"sourcesContent":["'use client';\n\nimport {\n type ItemSelectorOrientation,\n useItemSelector,\n} from '@hooks/useItemSelector';\nimport { useEffect, useRef, useState } from 'react';\nimport type { SwitchSelectorBaseProps } from './SwitchSelector';\n\nexport const useSwitchSelector = <T>(\n {\n choices = [],\n value,\n defaultValue,\n onChange,\n hoverable = true,\n disabled = false,\n }: SwitchSelectorBaseProps<T>,\n orientation: ItemSelectorOrientation\n) => {\n const [valueState, setValue] = useState<T>(\n value ?? defaultValue ?? choices[0]?.value\n );\n const [hoveredIndex, setHoveredIndex] = useState<number | null>(null);\n\n const optionsRefs = useRef<HTMLButtonElement[]>([]);\n const indicatorRef = useRef<HTMLDivElement | null>(null);\n const { choiceIndicatorPosition } = useItemSelector(optionsRefs, {\n selector: (el) => el.getAttribute('data-indicator') === 'true',\n isHoverable: false,\n orientation,\n });\n\n const selectedIndex = choices.findIndex(\n (choice) => choice.value === valueState\n );\n\n // The indicator follows hover if hoverable, otherwise the selected option\n const indicatorIndex =\n hoverable && hoveredIndex !== null ? hoveredIndex : selectedIndex;\n\n const handleChange = (newValue: T) => {\n console.log('useSwitchSelector handleChange', newValue);\n setValue(newValue);\n onChange?.(newValue);\n };\n\n useEffect(() => {\n if (value === undefined) return;\n setValue(value);\n }, [value]);\n\n return {\n valueState,\n hoveredIndex,\n setHoveredIndex,\n optionsRefs,\n indicatorRef,\n choiceIndicatorPosition,\n selectedIndex,\n indicatorIndex,\n handleChange,\n disabled,\n };\n};\n"],"mappings":";;;;;;AASA,MAAa,qBACX,EACE,UAAU,EAAE,EACZ,OACA,cACA,UACA,YAAY,MACZ,WAAW,SAEb,gBACG;CACH,MAAM,CAAC,YAAY,YAAY,SAC7B,SAAS,gBAAgB,QAAQ,IAAI,MACtC;CACD,MAAM,CAAC,cAAc,mBAAmB,SAAwB,KAAK;CAErE,MAAM,cAAc,OAA4B,EAAE,CAAC;CACnD,MAAM,eAAe,OAA8B,KAAK;CACxD,MAAM,EAAE,4BAA4B,gBAAgB,aAAa;EAC/D,WAAW,OAAO,GAAG,aAAa,iBAAiB,KAAK;EACxD,aAAa;EACb;EACD,CAAC;CAEF,MAAM,gBAAgB,QAAQ,WAC3B,WAAW,OAAO,UAAU,WAC9B;CAGD,MAAM,iBACJ,aAAa,iBAAiB,OAAO,eAAe;CAEtD,MAAM,gBAAgB,aAAgB;AACpC,UAAQ,IAAI,kCAAkC,SAAS;AACvD,WAAS,SAAS;AAClB,aAAW,SAAS;;AAGtB,iBAAgB;AACd,MAAI,UAAU,OAAW;AACzB,WAAS,MAAM;IACd,CAAC,MAAM,CAAC;AAEX,QAAO;EACL;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD"}
@@ -27,7 +27,8 @@ import { PressableSpan } from "./PressableSpan/PressableSpan.mjs";
27
27
  import { ContentSelector } from "./ContentSelector/ContentSelector.mjs";
28
28
  import { CopyButton } from "./CopyButton/index.mjs";
29
29
  import { CopyToClipboard, useCopyToClipboard } from "./CopyToClipboard/index.mjs";
30
- import { SwitchSelector, SwitchSelectorColor, SwitchSelectorSize } from "./SwitchSelector/index.mjs";
30
+ import { SwitchSelector, SwitchSelectorColor, SwitchSelectorSize, choiceVariant, defaultChoices, indicatorVariant, switchSelectorVariant } from "./SwitchSelector/SwitchSelector.mjs";
31
+ import { VerticalSwitchSelector } from "./SwitchSelector/VerticalSwitchSelector.mjs";
31
32
  import { EditableFieldInput } from "./EditableField/EditableFieldInput.mjs";
32
33
  import { ContentEditableTextArea, useContentEditable } from "./TextArea/ContentEditableTextArea.mjs";
33
34
  import { AutoCompleteTextarea } from "./TextArea/AutocompleteTextArea.mjs";
@@ -114,4 +115,4 @@ import { Modes } from "./ThemeSwitcherDropDown/types.mjs";
114
115
  import { DesktopThemeSwitcher } from "./ThemeSwitcherDropDown/DesktopThemeSwitcher.mjs";
115
116
  import { MobileThemeSwitcher } from "./ThemeSwitcherDropDown/MobileThemeSwitcher.mjs";
116
117
 
117
- export { Accordion, AutoCompleteTextarea, AutoSizedTextArea, Avatar, Badge, BadgeColor, BadgeSize, BadgeVariant, BitbucketLogo, Breadcrumb, Browser, Burger, Button, ButtonColor, ButtonSize, ButtonTextAlign, ButtonVariant, Carousel, Checkbox, CheckboxColor, CheckboxSize, ClickOutsideDiv, Code, CodeBlock, CodeDefault, CollapsibleTable, Command, CommandRoot, Container, ContainerBackground, ContainerBorderColor, ContainerGap, ContainerPadding, ContainerRoundedSize, ContainerSeparator, ContainerTransparency, ContentEditableTextArea, ContentEditor, ContentSelector, CopyButton, CopyToClipboard, DesktopNavbar, DesktopThemeSwitcher, Detail, DictionaryCreationForm, DictionaryEditor, DictionaryFieldEditor, DiscordLogo, DotPattern, DropDown, DropDownAlign, DropDownYAlign, EditableFieldInput, EditableFieldTextArea, ExpandCollapse, FacebookLogo, FileList, Flag, flags_exports as Flags, Footer, Form, GitHubLogo, GitLabLogo, GoogleLogo, GridPattern, H1, H2, H3, H4, H5, H6, HTMLRenderer, HeightResizer, HideShow, IDE, InformationTag, Input, InputIndicator, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, InputPassword, InputSize, InputVariant, InstagramLogo, KeyList, KeyPathBreadcrumb, KeyboardScreenAdapter, KeyboardShortcut, Label, LanguageBackground, LanguageSection, Link, LinkColor, LinkRoundedSize, LinkSize, LinkUnderlined, LinkVariant, LinkedInLogo, Loader, LocaleSwitcher, LocaleSwitcherContent, LocaleSwitcherContentProvider, Logo, LogoTextOnly, LogoWithText, LogoWithTextBelow, MarkdownRenderer, MaxHeightSmoother, MaxWidthSmoother, MobileNavbar, MobileThemeSwitcher, Modal, ModalSize, Modes, MultiSelect, Navbar, NumberItemsSelector, OTPInput, OTPInputContext, Pagination, PaginationSize, PaginationVariant, Popover, PopoverStatic, PopoverXAlign, PopoverYAlign, PressableSpan, ProductHuntLogo, RightDrawer, SaveForm, SearchInput, Select, SelectContent, SelectContentPosition, SelectLabel, SelectSeparator, ShowingResultsNumberItems, SmartTable, SocialNetworks, Spotlight, SwitchSelector, SwitchSelectorColor, SwitchSelectorSize, Tab, TabSelector, TabSelectorColor, Table, Tag, TagBackground, TagBorder, TagColor, TagRoundedSize, TagSize, TechLogo, TechLogoName, techLogos_exports as TechLogos, Terminal, TextArea, TextEditor, TextEditorContainer, TiktokLogo, Toast, ToastAction, ToastClose, ToastDescription, ToastProvider, ToastTitle, ToastViewport, Toaster, VersionSwitcher, VersionSwitcherProvider, WithResizer, XLogo, YoutubeLogo, badgeVariants, baseMarkdownComponents, buttonVariants, checkIsExternalLink, checkboxVariants, containerVariants, drawerManager, getCapitals, getIntlayerHTMLOptions, getIntlayerMarkdownOptions, inputSlotVariants, inputVariants, isTextChildren, linkVariants, paginationVariants, reducer, toast, traceKeys, useContentEditable, useCopyToClipboard, useForm, useFormField, useLocaleSwitcherContent, usePasswordManagerBadge, usePrevious, useRightDrawer, useToast, useVersionSwitcher };
118
+ export { Accordion, AutoCompleteTextarea, AutoSizedTextArea, Avatar, Badge, BadgeColor, BadgeSize, BadgeVariant, BitbucketLogo, Breadcrumb, Browser, Burger, Button, ButtonColor, ButtonSize, ButtonTextAlign, ButtonVariant, Carousel, Checkbox, CheckboxColor, CheckboxSize, ClickOutsideDiv, Code, CodeBlock, CodeDefault, CollapsibleTable, Command, CommandRoot, Container, ContainerBackground, ContainerBorderColor, ContainerGap, ContainerPadding, ContainerRoundedSize, ContainerSeparator, ContainerTransparency, ContentEditableTextArea, ContentEditor, ContentSelector, CopyButton, CopyToClipboard, DesktopNavbar, DesktopThemeSwitcher, Detail, DictionaryCreationForm, DictionaryEditor, DictionaryFieldEditor, DiscordLogo, DotPattern, DropDown, DropDownAlign, DropDownYAlign, EditableFieldInput, EditableFieldTextArea, ExpandCollapse, FacebookLogo, FileList, Flag, flags_exports as Flags, Footer, Form, GitHubLogo, GitLabLogo, GoogleLogo, GridPattern, H1, H2, H3, H4, H5, H6, HTMLRenderer, HeightResizer, HideShow, IDE, InformationTag, Input, InputIndicator, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, InputPassword, InputSize, InputVariant, InstagramLogo, KeyList, KeyPathBreadcrumb, KeyboardScreenAdapter, KeyboardShortcut, Label, LanguageBackground, LanguageSection, Link, LinkColor, LinkRoundedSize, LinkSize, LinkUnderlined, LinkVariant, LinkedInLogo, Loader, LocaleSwitcher, LocaleSwitcherContent, LocaleSwitcherContentProvider, Logo, LogoTextOnly, LogoWithText, LogoWithTextBelow, MarkdownRenderer, MaxHeightSmoother, MaxWidthSmoother, MobileNavbar, MobileThemeSwitcher, Modal, ModalSize, Modes, MultiSelect, Navbar, NumberItemsSelector, OTPInput, OTPInputContext, Pagination, PaginationSize, PaginationVariant, Popover, PopoverStatic, PopoverXAlign, PopoverYAlign, PressableSpan, ProductHuntLogo, RightDrawer, SaveForm, SearchInput, Select, SelectContent, SelectContentPosition, SelectLabel, SelectSeparator, ShowingResultsNumberItems, SmartTable, SocialNetworks, Spotlight, SwitchSelector, SwitchSelectorColor, SwitchSelectorSize, Tab, TabSelector, TabSelectorColor, Table, Tag, TagBackground, TagBorder, TagColor, TagRoundedSize, TagSize, TechLogo, TechLogoName, techLogos_exports as TechLogos, Terminal, TextArea, TextEditor, TextEditorContainer, TiktokLogo, Toast, ToastAction, ToastClose, ToastDescription, ToastProvider, ToastTitle, ToastViewport, Toaster, VersionSwitcher, VersionSwitcherProvider, VerticalSwitchSelector, WithResizer, XLogo, YoutubeLogo, badgeVariants, baseMarkdownComponents, buttonVariants, checkIsExternalLink, checkboxVariants, choiceVariant, containerVariants, defaultChoices, drawerManager, getCapitals, getIntlayerHTMLOptions, getIntlayerMarkdownOptions, indicatorVariant, inputSlotVariants, inputVariants, isTextChildren, linkVariants, paginationVariants, reducer, switchSelectorVariant, toast, traceKeys, useContentEditable, useCopyToClipboard, useForm, useFormField, useLocaleSwitcherContent, usePasswordManagerBadge, usePrevious, useRightDrawer, useToast, useVersionSwitcher };
@@ -5,7 +5,7 @@ import { useOAuth2 } from "./useAuth/useOAuth2.mjs";
5
5
  import { useSession } from "./useAuth/useSession.mjs";
6
6
  import { useAuth } from "./useAuth/useAuth.mjs";
7
7
  import { useIntlayerAuth, useIntlayerOAuth } from "./useIntlayerAPI.mjs";
8
- import { useAddDictionary, useAddNewAccessKey, useAddOrganization, useAddOrganizationMember, useAddPasskey, useAddProject, useAddTag, useAppQuery, useAskDocQuestion, useAskResetPassword, useAuditContentDeclaration, useAuditContentDeclarationField, useAuditContentDeclarationMetadata, useAuditScan, useAuditTag, useAutocomplete, useBitbucketAuth, useBitbucketCheckConfig, useBitbucketGetConfigFile, useBitbucketRepos, useCancelSubscription, useChangePassword, useCreateUser, useDeleteAccessKey, useDeleteDictionary, useDeleteOrganization, useDeletePasskey, useDeleteProject, useDeleteSSOProvider, useDeleteShowcaseProject, useDeleteTag, useDeleteUser, useDisableTwoFactor, useEnableTwoFactor, useFillAllTranslations, useGetCIConfig, useGetDictionaries, useGetDictionariesKeys, useGetDictionary, useGetDiscussions, useGetDiscussionsData, useGetEditorDictionaries, useGetNewsletterStatus, useGetOrganizations, useGetOtherShowcaseProjects, useGetPricing, useGetProjects, useGetRecursiveAuditStatus, useGetShowcaseProjectById, useGetShowcaseProjects, useGetSubscription, useGetTags, useGetUserByAccount, useGetUserById, useGetUsers, useGetVerifyEmailStatus, useGithubAuth, useGithubCheckConfig, useGithubGetAuthUrl, useGithubGetConfigFile, useGithubRepos, useGitlabAuth, useGitlabCheckConfig, useGitlabGetConfigFile, useGitlabProjects, useInfiniteGetDictionaries, useListPasskeys, useListSSOProviders, useLogin, useLogout, usePauseTranslationJob, usePushCIConfig, usePushDictionaries, useQueryClient, useRefreshAccessKey, useRegister, useRegisterSSO, useResetPassword, useResumeTranslationJob, useSearchDoc, useSelectOrganization, useSelectProject, useSignInMagicLink, useSignInPasskey, useSignInSSO, useStartRecursiveAudit, useStopTranslationJob, useSubmitShowcaseProject, useSubscribeToNewsletter, useToggleShowcaseDownvote, useToggleShowcaseUpvote, useTranslateJSONDeclaration, useTriggerBuild, useTriggerWebhook, useUnselectOrganization, useUnselectProject, useUnsubscribeFromNewsletter, useUpdateDictionary, useUpdateOrganization, useUpdateOrganizationMembers, useUpdateOrganizationMembersById, useUpdateProject, useUpdateProjectMembers, useUpdateShowcaseProject, useUpdateTag, useUpdateUser, useVerifyBackupCode, useVerifyEmail, useVerifyTotp, useWriteDictionary } from "./reactQuery.mjs";
8
+ import { useAddDictionary, useAddNewAccessKey, useAddOrganization, useAddOrganizationMember, useAddPasskey, useAddProject, useAddTag, useAppQuery, useAskDocQuestion, useAskResetPassword, useAuditContentDeclaration, useAuditContentDeclarationField, useAuditContentDeclarationMetadata, useAuditScan, useAuditTag, useAutocomplete, useBitbucketAuth, useBitbucketCheckConfig, useBitbucketGetConfigFile, useBitbucketRepos, useCancelSubscription, useChangePassword, useCreatePortalSession, useCreateUser, useDeleteAccessKey, useDeleteDictionary, useDeleteOrganization, useDeletePasskey, useDeleteProject, useDeleteSSOProvider, useDeleteShowcaseProject, useDeleteTag, useDeleteUser, useDisableTwoFactor, useEnableTwoFactor, useFillAllTranslations, useGetCIConfig, useGetDictionaries, useGetDictionariesKeys, useGetDictionary, useGetDiscussions, useGetDiscussionsData, useGetEditorDictionaries, useGetInvoices, useGetNewsletterStatus, useGetOrganizations, useGetOtherShowcaseProjects, useGetPaymentMethod, useGetPricing, useGetProjects, useGetRecursiveAuditStatus, useGetShowcaseProjectById, useGetShowcaseProjects, useGetSubscription, useGetTags, useGetUserByAccount, useGetUserById, useGetUsers, useGetVerifyEmailStatus, useGithubAuth, useGithubCheckConfig, useGithubGetAuthUrl, useGithubGetConfigFile, useGithubRepos, useGitlabAuth, useGitlabCheckConfig, useGitlabGetConfigFile, useGitlabProjects, useInfiniteGetDictionaries, useListPasskeys, useListSSOProviders, useLogin, useLogout, usePauseTranslationJob, usePushCIConfig, usePushDictionaries, useQueryClient, useRefreshAccessKey, useRegister, useRegisterSSO, useResetPassword, useResumeTranslationJob, useSearchDoc, useSelectOrganization, useSelectProject, useSignInMagicLink, useSignInPasskey, useSignInSSO, useStartRecursiveAudit, useStopTranslationJob, useSubmitShowcaseProject, useSubscribeToNewsletter, useToggleShowcaseDownvote, useToggleShowcaseUpvote, useTranslateJSONDeclaration, useTriggerBuild, useTriggerWebhook, useUnselectOrganization, useUnselectProject, useUnsubscribeFromNewsletter, useUpdateDictionary, useUpdateOrganization, useUpdateOrganizationMembers, useUpdateOrganizationMembersById, useUpdateProject, useUpdateProjectMembers, useUpdateShowcaseProject, useUpdateTag, useUpdateUser, useVerifyBackupCode, useVerifyEmail, useVerifyTotp, useWriteDictionary } from "./reactQuery.mjs";
9
9
  import { useUser } from "./useUser/index.mjs";
10
10
  import { useHorizontalSwipe } from "./useHorizontalSwipe.mjs";
11
11
  import { useGetElementById } from "./useGetElementById.mjs";
@@ -19,4 +19,4 @@ import { useScrollDetection } from "./useScrollDetection.mjs";
19
19
  import { useScrollY } from "./useScrollY.mjs";
20
20
  import { useSearch } from "./useSearch.mjs";
21
21
 
22
- export { calculateIsMobile, checkIsIOS, checkIsIphoneOrSafariDevice, checkIsMac, checkIsMobileScreen, checkIsMobileUserAgent, getBreakpointFromSize, useAddDictionary, useAddNewAccessKey, useAddOrganization, useAddOrganizationMember, useAddPasskey, useAddProject, useAddTag, useAppQuery, useAskDocQuestion, useAskResetPassword, useAuditContentDeclaration, useAuditContentDeclarationField, useAuditContentDeclarationMetadata, useAuditScan, useAuditTag, useAuth, useAutocomplete, useBitbucketAuth, useBitbucketCheckConfig, useBitbucketGetConfigFile, useBitbucketRepos, useCancelSubscription, useChangePassword, useCreateUser, useDeleteAccessKey, useDeleteDictionary, useDeleteOrganization, useDeletePasskey, useDeleteProject, useDeleteSSOProvider, useDeleteShowcaseProject, useDeleteTag, useDeleteUser, useDevice, useDisableTwoFactor, useEnableTwoFactor, useFillAllTranslations, useGetCIConfig, useGetDictionaries, useGetDictionariesKeys, useGetDictionary, useGetDiscussions, useGetDiscussionsData, useGetEditorDictionaries, useGetElementById, useGetElementOrWindow, useGetNewsletterStatus, useGetOrganizations, useGetOtherShowcaseProjects, useGetPricing, useGetProjects, useGetRecursiveAuditStatus, useGetShowcaseProjectById, useGetShowcaseProjects, useGetSubscription, useGetTags, useGetUserByAccount, useGetUserById, useGetUsers, useGetVerifyEmailStatus, useGithubAuth, useGithubCheckConfig, useGithubGetAuthUrl, useGithubGetConfigFile, useGithubRepos, useGitlabAuth, useGitlabCheckConfig, useGitlabGetConfigFile, useGitlabProjects, useHorizontalSwipe, useInfiniteGetDictionaries, useIntlayerAuth, useIntlayerOAuth, useIsDarkMode, useIsMounted, useItemSelector, useKeyboardDetector, useListPasskeys, useListSSOProviders, useLogin, useLogout, useOAuth2, usePauseTranslationJob, usePersistedStore, usePushCIConfig, usePushDictionaries, useQueryClient, useRefreshAccessKey, useRegister, useRegisterSSO, useResetPassword, useResumeTranslationJob, useScreenWidth, useScrollBlockage, useScrollDetection, useScrollY, useSearch, useSearchDoc, useSelectOrganization, useSelectProject, useSession, useSignInMagicLink, useSignInPasskey, useSignInSSO, useStartRecursiveAudit, useStopTranslationJob, useSubmitShowcaseProject, useSubscribeToNewsletter, useToggleShowcaseDownvote, useToggleShowcaseUpvote, useTranslateJSONDeclaration, useTriggerBuild, useTriggerWebhook, useUnselectOrganization, useUnselectProject, useUnsubscribeFromNewsletter, useUpdateDictionary, useUpdateOrganization, useUpdateOrganizationMembers, useUpdateOrganizationMembersById, useUpdateProject, useUpdateProjectMembers, useUpdateShowcaseProject, useUpdateTag, useUpdateUser, useUser, useVerifyBackupCode, useVerifyEmail, useVerifyTotp, useWriteDictionary };
22
+ export { calculateIsMobile, checkIsIOS, checkIsIphoneOrSafariDevice, checkIsMac, checkIsMobileScreen, checkIsMobileUserAgent, getBreakpointFromSize, useAddDictionary, useAddNewAccessKey, useAddOrganization, useAddOrganizationMember, useAddPasskey, useAddProject, useAddTag, useAppQuery, useAskDocQuestion, useAskResetPassword, useAuditContentDeclaration, useAuditContentDeclarationField, useAuditContentDeclarationMetadata, useAuditScan, useAuditTag, useAuth, useAutocomplete, useBitbucketAuth, useBitbucketCheckConfig, useBitbucketGetConfigFile, useBitbucketRepos, useCancelSubscription, useChangePassword, useCreatePortalSession, useCreateUser, useDeleteAccessKey, useDeleteDictionary, useDeleteOrganization, useDeletePasskey, useDeleteProject, useDeleteSSOProvider, useDeleteShowcaseProject, useDeleteTag, useDeleteUser, useDevice, useDisableTwoFactor, useEnableTwoFactor, useFillAllTranslations, useGetCIConfig, useGetDictionaries, useGetDictionariesKeys, useGetDictionary, useGetDiscussions, useGetDiscussionsData, useGetEditorDictionaries, useGetElementById, useGetElementOrWindow, useGetInvoices, useGetNewsletterStatus, useGetOrganizations, useGetOtherShowcaseProjects, useGetPaymentMethod, useGetPricing, useGetProjects, useGetRecursiveAuditStatus, useGetShowcaseProjectById, useGetShowcaseProjects, useGetSubscription, useGetTags, useGetUserByAccount, useGetUserById, useGetUsers, useGetVerifyEmailStatus, useGithubAuth, useGithubCheckConfig, useGithubGetAuthUrl, useGithubGetConfigFile, useGithubRepos, useGitlabAuth, useGitlabCheckConfig, useGitlabGetConfigFile, useGitlabProjects, useHorizontalSwipe, useInfiniteGetDictionaries, useIntlayerAuth, useIntlayerOAuth, useIsDarkMode, useIsMounted, useItemSelector, useKeyboardDetector, useListPasskeys, useListSSOProviders, useLogin, useLogout, useOAuth2, usePauseTranslationJob, usePersistedStore, usePushCIConfig, usePushDictionaries, useQueryClient, useRefreshAccessKey, useRegister, useRegisterSSO, useResetPassword, useResumeTranslationJob, useScreenWidth, useScrollBlockage, useScrollDetection, useScrollY, useSearch, useSearchDoc, useSelectOrganization, useSelectProject, useSession, useSignInMagicLink, useSignInPasskey, useSignInSSO, useStartRecursiveAudit, useStopTranslationJob, useSubmitShowcaseProject, useSubscribeToNewsletter, useToggleShowcaseDownvote, useToggleShowcaseUpvote, useTranslateJSONDeclaration, useTriggerBuild, useTriggerWebhook, useUnselectOrganization, useUnselectProject, useUnsubscribeFromNewsletter, useUpdateDictionary, useUpdateOrganization, useUpdateOrganizationMembers, useUpdateOrganizationMembersById, useUpdateProject, useUpdateProjectMembers, useUpdateShowcaseProject, useUpdateTag, useUpdateUser, useUser, useVerifyBackupCode, useVerifyEmail, useVerifyTotp, useWriteDictionary };
@@ -39,7 +39,7 @@ const useLogin = () => {
39
39
  mutationFn: (args) => intlayerAuth.signInEmail(args),
40
40
  onSuccess: (data) => {
41
41
  const session = queryClient.getQueryData(["session"]);
42
- if (session && data.data?.user) queryClient.setQueryData(["session"], {
42
+ queryClient.setQueryData(["session"], {
43
43
  ...session,
44
44
  user: data.data.user
45
45
  });
@@ -326,8 +326,8 @@ const useSelectOrganization = () => {
326
326
  ] },
327
327
  onSuccess: (data) => {
328
328
  const session = queryClient.getQueryData(["session"]);
329
- if (session) queryClient.setQueryData(["session"], {
330
- ...session,
329
+ queryClient.setQueryData(["session"], {
330
+ ...session ?? {},
331
331
  organization: data.data
332
332
  });
333
333
  }
@@ -350,8 +350,8 @@ const useUnselectOrganization = () => {
350
350
  ] },
351
351
  onSuccess: () => {
352
352
  const session = queryClient.getQueryData(["session"]);
353
- if (session) queryClient.setQueryData(["session"], {
354
- ...session,
353
+ queryClient.setQueryData(["session"], {
354
+ ...session ?? {},
355
355
  organization: null,
356
356
  project: null
357
357
  });
@@ -388,8 +388,8 @@ const useUpdateProject = () => {
388
388
  meta: { invalidateQueries: [["projects"]] },
389
389
  onSuccess: (data) => {
390
390
  const session = queryClient.getQueryData(["session"]);
391
- if (session && data.data) queryClient.setQueryData(["session"], {
392
- ...session,
391
+ queryClient.setQueryData(["session"], {
392
+ ...session ?? {},
393
393
  project: data.data
394
394
  });
395
395
  }
@@ -418,6 +418,7 @@ const useSelectProject = () => {
418
418
  mutationKey: ["session-projects"],
419
419
  mutationFn: (args) => intlayerOAuth.project.selectProject(args),
420
420
  meta: { invalidateQueries: [
421
+ ["session"],
421
422
  ["projects"],
422
423
  ["dictionaries"],
423
424
  ["tags"],
@@ -426,8 +427,8 @@ const useSelectProject = () => {
426
427
  ] },
427
428
  onSuccess: (data) => {
428
429
  const session = queryClient.getQueryData(["session"]);
429
- if (session) queryClient.setQueryData(["session"], {
430
- ...session,
430
+ queryClient.setQueryData(["session"], {
431
+ ...session ?? {},
431
432
  project: data.data
432
433
  });
433
434
  }
@@ -440,6 +441,7 @@ const useUnselectProject = () => {
440
441
  mutationKey: ["session-projects"],
441
442
  mutationFn: () => intlayerOAuth.project.unselectProject(),
442
443
  meta: { resetQueries: [
444
+ ["session"],
443
445
  ["projects"],
444
446
  ["dictionaries"],
445
447
  ["tags"],
@@ -448,8 +450,8 @@ const useUnselectProject = () => {
448
450
  ] },
449
451
  onSuccess: () => {
450
452
  const session = queryClient.getQueryData(["session"]);
451
- if (session) queryClient.setQueryData(["session"], {
452
- ...session,
453
+ queryClient.setQueryData(["session"], {
454
+ ...session ?? {},
453
455
  project: null
454
456
  });
455
457
  }
@@ -675,6 +677,33 @@ const useCancelSubscription = () => {
675
677
  meta: { invalidateQueries: [["session"], ["subscription"]] }
676
678
  });
677
679
  };
680
+ const useGetInvoices = (options) => {
681
+ const intlayerOAuth = useIntlayerOAuth();
682
+ return useAppQuery({
683
+ queryKey: ["invoices"],
684
+ queryFn: ({ signal }) => intlayerOAuth.stripe.getInvoices({ signal }),
685
+ requireUser: true,
686
+ requireOrganization: true,
687
+ ...options
688
+ });
689
+ };
690
+ const useGetPaymentMethod = (options) => {
691
+ const intlayerOAuth = useIntlayerOAuth();
692
+ return useAppQuery({
693
+ queryKey: ["paymentMethod"],
694
+ queryFn: ({ signal }) => intlayerOAuth.stripe.getPaymentMethod({ signal }),
695
+ requireUser: true,
696
+ requireOrganization: true,
697
+ ...options
698
+ });
699
+ };
700
+ const useCreatePortalSession = () => {
701
+ const intlayerOAuth = useIntlayerOAuth();
702
+ return useMutation({
703
+ mutationKey: ["portalSession"],
704
+ mutationFn: () => intlayerOAuth.stripe.createPortalSession()
705
+ });
706
+ };
678
707
  /**
679
708
  * AI
680
709
  */
@@ -1071,5 +1100,5 @@ const useResumeTranslationJob = () => {
1071
1100
  };
1072
1101
 
1073
1102
  //#endregion
1074
- export { useAddDictionary, useAddNewAccessKey, useAddOrganization, useAddOrganizationMember, useAddPasskey, useAddProject, useAddTag, useAppQuery, useAskDocQuestion, useAskResetPassword, useAuditContentDeclaration, useAuditContentDeclarationField, useAuditContentDeclarationMetadata, useAuditScan, useAuditTag, useAutocomplete, useBitbucketAuth, useBitbucketCheckConfig, useBitbucketGetConfigFile, useBitbucketRepos, useCancelSubscription, useChangePassword, useCreateUser, useDeleteAccessKey, useDeleteDictionary, useDeleteOrganization, useDeletePasskey, useDeleteProject, useDeleteSSOProvider, useDeleteShowcaseProject, useDeleteTag, useDeleteUser, useDisableTwoFactor, useEnableTwoFactor, useFillAllTranslations, useGetCIConfig, useGetDictionaries, useGetDictionariesKeys, useGetDictionary, useGetDiscussions, useGetDiscussionsData, useGetEditorDictionaries, useGetNewsletterStatus, useGetOrganizations, useGetOtherShowcaseProjects, useGetPricing, useGetProjects, useGetRecursiveAuditStatus, useGetShowcaseProjectById, useGetShowcaseProjects, useGetSubscription, useGetTags, useGetUserByAccount, useGetUserById, useGetUsers, useGetVerifyEmailStatus, useGithubAuth, useGithubCheckConfig, useGithubGetAuthUrl, useGithubGetConfigFile, useGithubRepos, useGitlabAuth, useGitlabCheckConfig, useGitlabGetConfigFile, useGitlabProjects, useInfiniteGetDictionaries, useListPasskeys, useListSSOProviders, useLogin, useLogout, usePauseTranslationJob, usePushCIConfig, usePushDictionaries, useQueryClient, useRefreshAccessKey, useRegister, useRegisterSSO, useResetPassword, useResumeTranslationJob, useSearchDoc, useSelectOrganization, useSelectProject, useSignInMagicLink, useSignInPasskey, useSignInSSO, useStartRecursiveAudit, useStopTranslationJob, useSubmitShowcaseProject, useSubscribeToNewsletter, useToggleShowcaseDownvote, useToggleShowcaseUpvote, useTranslateJSONDeclaration, useTriggerBuild, useTriggerWebhook, useUnselectOrganization, useUnselectProject, useUnsubscribeFromNewsletter, useUpdateDictionary, useUpdateOrganization, useUpdateOrganizationMembers, useUpdateOrganizationMembersById, useUpdateProject, useUpdateProjectMembers, useUpdateShowcaseProject, useUpdateTag, useUpdateUser, useVerifyBackupCode, useVerifyEmail, useVerifyTotp, useWriteDictionary };
1103
+ export { useAddDictionary, useAddNewAccessKey, useAddOrganization, useAddOrganizationMember, useAddPasskey, useAddProject, useAddTag, useAppQuery, useAskDocQuestion, useAskResetPassword, useAuditContentDeclaration, useAuditContentDeclarationField, useAuditContentDeclarationMetadata, useAuditScan, useAuditTag, useAutocomplete, useBitbucketAuth, useBitbucketCheckConfig, useBitbucketGetConfigFile, useBitbucketRepos, useCancelSubscription, useChangePassword, useCreatePortalSession, useCreateUser, useDeleteAccessKey, useDeleteDictionary, useDeleteOrganization, useDeletePasskey, useDeleteProject, useDeleteSSOProvider, useDeleteShowcaseProject, useDeleteTag, useDeleteUser, useDisableTwoFactor, useEnableTwoFactor, useFillAllTranslations, useGetCIConfig, useGetDictionaries, useGetDictionariesKeys, useGetDictionary, useGetDiscussions, useGetDiscussionsData, useGetEditorDictionaries, useGetInvoices, useGetNewsletterStatus, useGetOrganizations, useGetOtherShowcaseProjects, useGetPaymentMethod, useGetPricing, useGetProjects, useGetRecursiveAuditStatus, useGetShowcaseProjectById, useGetShowcaseProjects, useGetSubscription, useGetTags, useGetUserByAccount, useGetUserById, useGetUsers, useGetVerifyEmailStatus, useGithubAuth, useGithubCheckConfig, useGithubGetAuthUrl, useGithubGetConfigFile, useGithubRepos, useGitlabAuth, useGitlabCheckConfig, useGitlabGetConfigFile, useGitlabProjects, useInfiniteGetDictionaries, useListPasskeys, useListSSOProviders, useLogin, useLogout, usePauseTranslationJob, usePushCIConfig, usePushDictionaries, useQueryClient, useRefreshAccessKey, useRegister, useRegisterSSO, useResetPassword, useResumeTranslationJob, useSearchDoc, useSelectOrganization, useSelectProject, useSignInMagicLink, useSignInPasskey, useSignInSSO, useStartRecursiveAudit, useStopTranslationJob, useSubmitShowcaseProject, useSubscribeToNewsletter, useToggleShowcaseDownvote, useToggleShowcaseUpvote, useTranslateJSONDeclaration, useTriggerBuild, useTriggerWebhook, useUnselectOrganization, useUnselectProject, useUnsubscribeFromNewsletter, useUpdateDictionary, useUpdateOrganization, useUpdateOrganizationMembers, useUpdateOrganizationMembersById, useUpdateProject, useUpdateProjectMembers, useUpdateShowcaseProject, useUpdateTag, useUpdateUser, useVerifyBackupCode, useVerifyEmail, useVerifyTotp, useWriteDictionary };
1075
1104
  //# sourceMappingURL=reactQuery.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"reactQuery.mjs","names":[],"sources":["../../../src/hooks/reactQuery.ts"],"sourcesContent":["'use client';\n\nimport type {} from '@better-fetch/fetch'; // Import for type inference\nimport type {\n GetRecursiveAuditStatusParams,\n ScanUrlBody,\n StartRecursiveAuditBody,\n} from '@intlayer/api';\nimport type {\n AddDictionaryBody,\n AddNewAccessKeyBody,\n AddOrganizationBody,\n AddOrganizationMemberBody,\n AddProjectBody,\n AddTagBody,\n AskDocQuestionBody,\n AuditContentDeclarationBody,\n AuditContentDeclarationFieldBody,\n AuditContentDeclarationMetadataBody,\n AuditTagBody,\n AutocompleteBody,\n CreateUserBody,\n DeleteAccessKeyBody,\n DeleteDictionaryParam,\n DeleteTagParams,\n GetCheckoutSessionBody,\n GetDictionariesParams,\n GetDictionaryParams,\n GetDictionaryQuery,\n GetOrganizationsParams,\n GetPricingBody,\n GetPricingResult,\n GetProjectsParams,\n GetShowcaseProjectByIdParams,\n GetShowcaseProjectsResult,\n GetTagsParams,\n GetUsersParams,\n NewsletterSubscriptionBody,\n NewsletterUnsubscriptionBody,\n OtherShowcaseProjectsQuery,\n PushDictionariesBody,\n RefreshAccessKeyBody,\n SearchDocUtilParams,\n SelectOrganizationParam,\n SelectProjectParam,\n ShowcaseProjectsQuery,\n SubmitShowcaseProjectBody,\n TranslateDictionariesBody,\n TranslateJSONBody,\n UpdateDictionaryBody,\n UpdateOrganizationBody,\n UpdateOrganizationMembersBody,\n UpdateProjectBody,\n UpdateProjectMembersBody,\n UpdateUserBody,\n} from '@intlayer/backend';\n\nimport { useConfiguration } from '@intlayer/editor-react';\nimport {\n type UseQueryOptions,\n useInfiniteQuery,\n useMutation,\n useQuery,\n useQueryClient,\n} from '@tanstack/react-query';\nimport type {} from 'better-auth'; // Import for type inference\n// @ts-ignore\nimport type { WriteContentDeclarationBody } from 'intlayer-editor';\nimport type { AuthAPI } from '../libs/auth';\nimport { useAuth } from './useAuth';\nimport {\n type UseIntlayerAuthProps,\n useIntlayerAuth,\n useIntlayerOAuth,\n} from './useIntlayerAPI';\n\nexport { useQueryClient };\n\ntype AuthEnableOptions = {\n requireUser?: boolean;\n requireProject?: boolean;\n requireOrganization?: boolean;\n};\n\n/**\n * Hook to enable authentication\n */\nconst useAuthEnable = ({\n requireUser,\n requireProject,\n requireOrganization,\n}: AuthEnableOptions) => {\n const configuration = useConfiguration();\n const { oAuth2AccessToken, session } = useAuth({\n intlayerConfiguration: configuration,\n });\n\n const user = session ? session.user : oAuth2AccessToken?.user;\n\n const organization = session\n ? session.organization\n : oAuth2AccessToken?.organization;\n\n const project = session ? session.project : oAuth2AccessToken?.project;\n\n const isUserEnabled = requireUser ? Boolean(user) : true;\n\n const isProjectEnabled = requireProject ? Boolean(project) : true;\n\n const isOrganizationEnabled = requireOrganization\n ? Boolean(organization)\n : true;\n\n const isEnabled = isUserEnabled && isProjectEnabled && isOrganizationEnabled;\n\n return {\n enable: isEnabled,\n };\n};\n\nexport const useAppQuery = (\n options: UseQueryOptions & {\n requireUser?: boolean;\n requireProject?: boolean;\n requireOrganization?: boolean;\n }\n) => {\n const { requireUser, requireProject, requireOrganization, ...rest } = options;\n const { enable } = useAuthEnable({\n requireUser,\n requireProject,\n requireOrganization,\n });\n\n const result = useQuery({\n enabled: rest?.enabled === false ? false : enable,\n ...rest,\n });\n\n return result;\n};\n\n// Removed unused useEditorMutation\n\n/**\n * Auth\n */\n\nexport const useLogin = () => {\n const intlayerAuth = useIntlayerAuth();\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['login'],\n mutationFn: (args: Parameters<AuthAPI['signInEmail']>[0]) =>\n intlayerAuth.signInEmail(args),\n onSuccess: (data) => {\n const session = queryClient.getQueryData(['session']);\n\n if (session && data.data?.user) {\n queryClient.setQueryData(['session'], {\n ...session,\n user: data.data.user,\n });\n }\n },\n });\n};\n\nexport const useGetVerifyEmailStatus = () => {\n const intlayerAuth = useIntlayerAuth();\n\n return useMutation({\n mutationKey: ['getVerifyEmailStatus'],\n mutationFn: (args: Parameters<AuthAPI['verifyEmailSession']>) =>\n intlayerAuth.verifyEmailSession(...args),\n });\n};\n\nexport const useRegister = () => {\n const intlayerAuth = useIntlayerAuth();\n\n return useMutation({\n mutationKey: ['register'],\n mutationFn: (args: Parameters<AuthAPI['signUpEmail']>[0]) =>\n intlayerAuth.signUpEmail(args),\n });\n};\n\nexport const useLogout = () => {\n const intlayerAuth = useIntlayerAuth();\n\n return useMutation({\n mutationKey: ['logout'],\n mutationFn: () => intlayerAuth.signOut(),\n meta: {\n resetQueries: [\n ['session'],\n ['users'],\n ['organizations'],\n ['projects'],\n ['dictionaries'],\n ['tags'],\n ],\n },\n });\n};\n\nexport const useChangePassword = () => {\n const intlayerAuth = useIntlayerAuth();\n\n return useMutation({\n mutationKey: ['changePassword'],\n mutationFn: (args: Parameters<AuthAPI['changePasswordSession']>) =>\n intlayerAuth.changePasswordSession(...args),\n });\n};\n\nexport const useAskResetPassword = () => {\n const intlayerAuth = useIntlayerAuth();\n\n return useMutation({\n mutationKey: ['askResetPassword'],\n mutationFn: (args: Parameters<AuthAPI['requestPasswordResetSession']>[0]) =>\n intlayerAuth.requestPasswordResetSession(args),\n });\n};\n\nexport const useResetPassword = () => {\n const intlayerAuth = useIntlayerAuth();\n\n return useMutation({\n mutationKey: ['resetPassword'],\n mutationFn: (args: Parameters<AuthAPI['resetPassword']>[0]) =>\n intlayerAuth.resetPassword(args),\n });\n};\n\nexport const useVerifyEmail = () => {\n const intlayerAuth = useIntlayerAuth();\n\n return useMutation({\n mutationKey: ['verifyEmail'],\n mutationFn: (args: Parameters<AuthAPI['verifyEmailSession']>[0]) =>\n intlayerAuth.verifyEmailSession(args),\n });\n};\n\nexport const useGetUserByAccount = () => {\n const intlayerAuth = useIntlayerAuth();\n\n return useMutation({\n mutationKey: ['user'],\n mutationFn: (args: Parameters<AuthAPI['accountInfo']>[0]) =>\n intlayerAuth.accountInfo(args),\n });\n};\n\nexport const useEnableTwoFactor = () => {\n const intlayerAuth = useIntlayerAuth();\n return useMutation({\n mutationKey: ['enableTwoFactor'],\n mutationFn: (args: Parameters<AuthAPI['enableTwoFactor']>[0]) =>\n intlayerAuth.enableTwoFactor(args),\n });\n};\n\nexport const useDisableTwoFactor = () => {\n const intlayerAuth = useIntlayerAuth();\n return useMutation({\n mutationKey: ['disableTwoFactor'],\n mutationFn: (args: Parameters<AuthAPI['disableTwoFactor']>[0]) =>\n intlayerAuth.disableTwoFactor(args),\n });\n};\n\nexport const useVerifyTotp = () => {\n const intlayerAuth = useIntlayerAuth();\n return useMutation({\n mutationKey: ['verifyTotp'],\n mutationFn: (args: Parameters<AuthAPI['verifyTotp']>[0]) =>\n intlayerAuth.verifyTotp(args),\n });\n};\n\nexport const useVerifyBackupCode = () => {\n const intlayerAuth = useIntlayerAuth();\n return useMutation({\n mutationKey: ['verifyBackupCode'],\n mutationFn: (args: Parameters<AuthAPI['verifyBackupCode']>[0]) =>\n intlayerAuth.verifyBackupCode(args),\n });\n};\n\nexport const useAddPasskey = () => {\n const intlayerAuth = useIntlayerAuth();\n return useMutation({\n mutationKey: ['addPasskey'],\n mutationFn: (args: Parameters<AuthAPI['addPasskey']>[0]) =>\n intlayerAuth.addPasskey(args),\n });\n};\n\nexport const useSignInPasskey = () => {\n const intlayerAuth = useIntlayerAuth();\n return useMutation({\n mutationKey: ['signInPasskey'],\n mutationFn: (args?: Parameters<AuthAPI['signInPasskey']>[0]) =>\n intlayerAuth.signInPasskey(args),\n });\n};\n\nexport const useDeletePasskey = () => {\n const intlayerAuth = useIntlayerAuth();\n return useMutation({\n mutationKey: ['deletePasskey'],\n mutationFn: (args: Parameters<AuthAPI['deletePasskey']>[0]) =>\n intlayerAuth.deletePasskey(args),\n });\n};\n\nexport const useListPasskeys = () => {\n const intlayerAuth = useIntlayerAuth();\n return useQuery({\n queryKey: ['listPasskeys'],\n queryFn: () => intlayerAuth.listPasskeys(),\n });\n};\n\nexport const useSignInMagicLink = () => {\n const intlayerAuth = useIntlayerAuth();\n return useMutation({\n mutationKey: ['signInMagicLink'],\n mutationFn: (args?: any) => intlayerAuth.signInMagicLink(args),\n });\n};\n\nexport const useRegisterSSO = () => {\n const intlayerAuth = useIntlayerAuth();\n const queryClient = useQueryClient();\n return useMutation({\n mutationKey: ['registerSSO'],\n mutationFn: (args: Parameters<AuthAPI['registerSSO']>[0]) =>\n intlayerAuth.registerSSO(args),\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['ssoProviders'] });\n },\n });\n};\n\nexport const useSignInSSO = () => {\n const intlayerAuth = useIntlayerAuth();\n return useMutation({\n mutationKey: ['signInSSO'],\n mutationFn: (args: Parameters<AuthAPI['signInSSO']>[0]) =>\n intlayerAuth.signInSSO(args),\n });\n};\n\nexport const useListSSOProviders = () => {\n const intlayerAuth = useIntlayerAuth();\n return useQuery({\n queryKey: ['ssoProviders'],\n queryFn: () => intlayerAuth.listSSOProviders(),\n });\n};\n\nexport const useDeleteSSOProvider = () => {\n const intlayerAuth = useIntlayerAuth();\n const queryClient = useQueryClient();\n return useMutation({\n mutationKey: ['deleteSSOProvider'],\n mutationFn: (args: Parameters<AuthAPI['deleteSSOProvider']>[0]) =>\n intlayerAuth.deleteSSOProvider(args),\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['ssoProviders'] });\n },\n });\n};\n\n/**\n * User\n */\n\nexport const useGetUsers = (\n filters?: GetUsersParams,\n options?: Partial<UseQueryOptions>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['users', filters],\n queryFn: () => intlayerOAuth.user.getUsers(filters),\n requireUser: true,\n // placeholderData: keepPreviousData,\n ...options,\n });\n};\n\nexport const useGetUserById = (userId: string) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['users', userId],\n queryFn: () => intlayerOAuth.user.getUserById(userId),\n requireUser: true,\n });\n};\n\nexport const useCreateUser = () => {\n const intlayerAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['users'],\n mutationFn: (args: CreateUserBody) => intlayerAuth.user.createUser(args),\n });\n};\n\nexport const useUpdateUser = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['users'],\n mutationFn: (args: UpdateUserBody) => intlayerOAuth.user.updateUser(args),\n });\n};\n\nexport const useDeleteUser = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['users'],\n mutationFn: (args: string) => intlayerOAuth.user.deleteUser(args),\n meta: {\n invalidateQueries: [['users']],\n },\n });\n};\n\n/**\n * Organization\n */\n\nexport const useGetOrganizations = (filters?: GetOrganizationsParams) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['organizations', filters],\n queryFn: ({ signal }) =>\n intlayerOAuth.organization.getOrganizations(filters, { signal }),\n // placeholderData: keepPreviousData,\n requireUser: true,\n });\n};\n\nexport const useAddOrganization = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['organizations'],\n mutationFn: (args: AddOrganizationBody) =>\n intlayerOAuth.organization.addOrganization(args),\n meta: {\n invalidateQueries: [['organizations']],\n },\n });\n};\n\nexport const useUpdateOrganization = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['organizations'],\n mutationFn: (args: UpdateOrganizationBody) =>\n intlayerOAuth.organization.updateOrganization(args),\n });\n};\n\nexport const useUpdateOrganizationMembers = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['organizations'],\n mutationFn: (args: UpdateOrganizationMembersBody) =>\n intlayerOAuth.organization.updateOrganizationMembers(args),\n meta: {\n invalidateQueries: [['organizations'], ['users']],\n },\n });\n};\n\nexport const useUpdateOrganizationMembersById = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['organizations'],\n mutationFn: ({\n organizationId,\n ...body\n }: {\n organizationId: string;\n membersIds: string[];\n adminsIds?: string[];\n }) =>\n intlayerOAuth.organization.updateOrganizationMembersById(\n organizationId,\n body\n ),\n meta: {\n invalidateQueries: [['organizations'], ['users']],\n },\n });\n};\n\nexport const useAddOrganizationMember = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['organizations'],\n mutationFn: (args: AddOrganizationMemberBody) =>\n intlayerOAuth.organization.addOrganizationMember(args),\n meta: {\n invalidateQueries: [['organizations']],\n },\n });\n};\n\nexport const useDeleteOrganization = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['organizations'],\n mutationFn: () => intlayerOAuth.organization.deleteOrganization(),\n meta: {\n invalidateQueries: [['organizations'], ['session']],\n },\n });\n};\n\nexport const useSelectOrganization = () => {\n const intlayerOAuth = useIntlayerOAuth();\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['session-organizations'],\n mutationFn: (args: SelectOrganizationParam) =>\n intlayerOAuth.organization.selectOrganization(args),\n meta: {\n invalidateQueries: [\n ['session'],\n ['organizations'],\n ['projects'],\n ['dictionaries'],\n ['tags'],\n ['subscription'],\n ['users'],\n ],\n },\n onSuccess: (data) => {\n const session = queryClient.getQueryData(['session']);\n\n if (session) {\n queryClient.setQueryData(['session'], {\n ...session,\n organization: data.data,\n });\n }\n },\n });\n};\n\nexport const useUnselectOrganization = () => {\n const intlayerOAuth = useIntlayerOAuth();\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['session-organizations'],\n mutationFn: () => intlayerOAuth.organization.unselectOrganization(),\n meta: {\n resetQueries: [\n ['session'],\n ['organizations'],\n ['projects'],\n ['dictionaries'],\n ['tags'],\n ['subscription'],\n ['users'],\n ],\n },\n onSuccess: () => {\n const session = queryClient.getQueryData(['session']);\n\n if (session) {\n queryClient.setQueryData(['session'], {\n ...session,\n organization: null,\n project: null,\n });\n }\n },\n });\n};\n\n/**\n * Project\n */\n\nexport const useGetProjects = (\n filters?: GetProjectsParams,\n options?: Partial<UseQueryOptions>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['projects', filters],\n queryFn: ({ signal }) =>\n intlayerOAuth.project.getProjects(filters, { signal }),\n // placeholderData: keepPreviousData,\n requireUser: true,\n requireOrganization: true,\n ...options,\n });\n};\n\nexport const useAddProject = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['projects'],\n mutationFn: (args: AddProjectBody) =>\n intlayerOAuth.project.addProject(args),\n meta: {\n invalidateQueries: [['projects']],\n },\n });\n};\n\nexport const useUpdateProject = () => {\n const intlayerOAuth = useIntlayerOAuth();\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['projects'],\n mutationFn: (args: UpdateProjectBody) =>\n intlayerOAuth.project.updateProject(args),\n meta: {\n invalidateQueries: [['projects']],\n },\n onSuccess: (data) => {\n const session = queryClient.getQueryData(['session']);\n\n if (session && data.data) {\n queryClient.setQueryData(['session'], {\n ...session,\n project: data.data,\n });\n }\n },\n });\n};\n\nexport const useUpdateProjectMembers = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['projects'],\n mutationFn: (args: UpdateProjectMembersBody) =>\n intlayerOAuth.project.updateProjectMembers(args),\n meta: {\n invalidateQueries: [['projects']],\n },\n });\n};\n\nexport const useDeleteProject = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['projects'],\n mutationFn: () => intlayerOAuth.project.deleteProject(),\n meta: {\n invalidateQueries: [['projects']],\n },\n });\n};\n\nexport const useSelectProject = () => {\n const intlayerOAuth = useIntlayerOAuth();\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['session-projects'],\n mutationFn: (args: SelectProjectParam) =>\n intlayerOAuth.project.selectProject(args),\n meta: {\n invalidateQueries: [\n ['projects'],\n ['dictionaries'],\n ['tags'],\n ['subscription'],\n ['users'],\n ],\n },\n onSuccess: (data) => {\n const session = queryClient.getQueryData(['session']);\n\n if (session) {\n queryClient.setQueryData(['session'], {\n ...session,\n project: data.data,\n });\n }\n },\n });\n};\n\nexport const useUnselectProject = () => {\n const intlayerOAuth = useIntlayerOAuth();\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['session-projects'],\n mutationFn: () => intlayerOAuth.project.unselectProject(),\n meta: {\n resetQueries: [\n ['projects'],\n ['dictionaries'],\n ['tags'],\n ['subscription'],\n ['users'],\n ],\n },\n onSuccess: () => {\n const session = queryClient.getQueryData(['session']);\n\n if (session) {\n queryClient.setQueryData(['session'], {\n ...session,\n project: null,\n });\n }\n },\n });\n};\n\nexport const useGetCIConfig = (options?: Partial<UseQueryOptions>) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['ci-config'],\n queryFn: ({ signal }) => intlayerOAuth.project.getCIConfig({ signal }),\n requireProject: true,\n ...options,\n });\n};\n\nexport const usePushCIConfig = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['ci-config'],\n mutationFn: () => intlayerOAuth.project.pushCIConfig(),\n meta: {\n invalidateQueries: [['ci-config']],\n },\n });\n};\n\nexport const useTriggerBuild = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['projects', 'build'],\n mutationFn: () => intlayerOAuth.project.triggerBuild(),\n meta: {\n invalidateQueries: [['projects']],\n },\n });\n};\n\nexport const useTriggerWebhook = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['projects', 'webhook'],\n mutationFn: (webhookIndex: number) =>\n intlayerOAuth.project.triggerWebhook(webhookIndex),\n meta: {\n invalidateQueries: [['projects']],\n },\n });\n};\n\nexport const useAddNewAccessKey = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['projects'],\n mutationFn: (args: AddNewAccessKeyBody) =>\n intlayerOAuth.project.addNewAccessKey(args),\n meta: {\n invalidateQueries: [['projects']],\n },\n });\n};\n\nexport const useDeleteAccessKey = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['projects'],\n mutationFn: (args: DeleteAccessKeyBody) =>\n intlayerOAuth.project.deleteAccessKey(args),\n meta: {\n invalidateQueries: [['projects']],\n },\n });\n};\n\nexport const useRefreshAccessKey = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['projects'],\n mutationFn: (args: RefreshAccessKeyBody) =>\n intlayerOAuth.project.refreshAccessKey(args),\n meta: {\n invalidateQueries: [['projects']],\n },\n });\n};\n\n/**\n * Dictionary\n */\n\nexport const useGetDictionaries = (\n filters?: GetDictionariesParams,\n options?: Partial<UseQueryOptions>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['dictionaries', filters],\n queryFn: ({ signal }) =>\n intlayerOAuth.dictionary.getDictionaries(filters, { signal }),\n // placeholderData: keepPreviousData,\n requireUser: true,\n requireOrganization: true,\n requireProject: true,\n ...options,\n });\n};\n\nexport const useInfiniteGetDictionaries = (\n filters?: Omit<GetDictionariesParams, 'page'>,\n options?: Partial<UseQueryOptions>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n const { enable } = useAuthEnable({\n requireUser: true,\n requireOrganization: true,\n requireProject: true,\n });\n\n return useInfiniteQuery({\n queryKey: ['dictionaries', 'infinite', filters],\n queryFn: async ({ pageParam = 1, signal }) => {\n const res = await intlayerOAuth.dictionary.getDictionaries(\n { ...filters, page: pageParam },\n { signal }\n );\n return res;\n },\n getNextPageParam: (lastPage) => {\n if (lastPage.data.length === 0) return undefined;\n const currentPage = lastPage.page ?? 1;\n const totalPages = lastPage.total_pages ?? 1;\n return currentPage < totalPages ? currentPage + 1 : undefined;\n },\n initialPageParam: 1,\n enabled: options?.enabled === false ? false : enable,\n ...options,\n });\n};\n\nexport const useGetDictionariesKeys = (options?: Partial<UseQueryOptions>) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['dictionariesKeys'],\n queryFn: () => intlayerOAuth.dictionary.getDictionariesKeys(),\n requireUser: true,\n requireOrganization: true,\n requireProject: true,\n ...options,\n });\n};\n\nexport const useGetDictionary = (\n dictionaryKey: GetDictionaryParams['dictionaryKey'],\n version?: GetDictionaryQuery['version'],\n options?: Partial<UseQueryOptions>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['dictionary', dictionaryKey],\n queryFn: ({ signal }) =>\n intlayerOAuth.dictionary.getDictionary(dictionaryKey, version, {\n signal,\n }),\n requireUser: true,\n requireOrganization: true,\n requireProject: true,\n ...options,\n });\n};\n\nexport const useAddDictionary = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['dictionaries'],\n mutationFn: (args: AddDictionaryBody) =>\n intlayerOAuth.dictionary.addDictionary(args),\n meta: {\n invalidateQueries: [['dictionaries'], ['dictionariesKeys']],\n },\n });\n};\n\nexport const usePushDictionaries = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['dictionaries'],\n mutationFn: (args: PushDictionariesBody) =>\n intlayerOAuth.dictionary.pushDictionaries(args.dictionaries),\n meta: {\n invalidateQueries: [['dictionaries'], ['dictionariesKeys']],\n },\n });\n};\n\nexport const useUpdateDictionary = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['dictionaries'],\n mutationFn: (args: UpdateDictionaryBody) =>\n intlayerOAuth.dictionary.updateDictionary(args),\n meta: {\n invalidateQueries: [['dictionaries'], ['dictionariesKeys']],\n },\n });\n};\n\nexport const useDeleteDictionary = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['dictionaries'],\n mutationFn: (args: DeleteDictionaryParam) =>\n intlayerOAuth.dictionary.deleteDictionary(args.dictionaryId),\n meta: {\n invalidateQueries: [['dictionaries'], ['dictionariesKeys']],\n },\n });\n};\n\n/**\n * Tag\n */\n\nexport const useGetTags = (\n filters?: GetTagsParams,\n options?: Partial<UseQueryOptions>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['tags', filters],\n queryFn: ({ signal }) => intlayerOAuth.tag.getTags(filters, { signal }),\n // placeholderData: keepPreviousData,\n requireUser: true,\n requireOrganization: true,\n ...options,\n });\n};\n\nexport const useAddTag = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['tags'],\n mutationFn: (args: AddTagBody) => intlayerOAuth.tag.addTag(args),\n meta: {\n invalidateQueries: [['tags']],\n },\n });\n};\n\nexport const useUpdateTag = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['tags'],\n mutationFn: (v: { tagId: string; tag: any }) =>\n intlayerOAuth.tag.updateTag(v.tagId, v.tag),\n meta: {\n invalidateQueries: [['tags']],\n },\n });\n};\n\nexport const useDeleteTag = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['tags'],\n mutationFn: (args: DeleteTagParams) => intlayerOAuth.tag.deleteTag(args),\n meta: {\n invalidateQueries: [['tags']],\n },\n });\n};\n\n/**\n * Stripe\n */\n\nexport const useGetPricing = (\n body: GetPricingBody,\n options?: Partial<UseQueryOptions<GetPricingResult>>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useQuery({\n queryKey: ['pricing', body],\n queryFn: ({ signal }) => intlayerOAuth.stripe.getPricing(body, { signal }),\n ...options,\n });\n};\n\nexport const useGetSubscription = (\n body: GetCheckoutSessionBody,\n options?: Partial<UseQueryOptions>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['subscription', body],\n queryFn: ({ signal }) =>\n intlayerOAuth.stripe.getSubscription(body, { signal }),\n requireUser: true,\n requireOrganization: true,\n ...options,\n });\n};\n\nexport const useCancelSubscription = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['subscription'],\n mutationFn: () => intlayerOAuth.stripe.cancelSubscription(),\n meta: {\n invalidateQueries: [['session'], ['subscription']],\n },\n });\n};\n\n/**\n * AI\n */\n\nexport const useTranslateJSONDeclaration = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['ai-translateJSON'],\n mutationFn: (args: TranslateJSONBody) =>\n intlayerOAuth.ai.translateJSON(args),\n });\n};\n\nexport const useAuditContentDeclaration = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['ai-auditContentDeclaration'],\n mutationFn: (args: AuditContentDeclarationBody) =>\n intlayerOAuth.ai.auditContentDeclaration(args),\n });\n};\n\nexport const useAuditContentDeclarationMetadata = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['ai-auditContentDeclarationMetadata'],\n mutationFn: (args: AuditContentDeclarationMetadataBody) =>\n intlayerOAuth.ai.auditContentDeclarationMetadata(args),\n });\n};\n\nexport const useAuditContentDeclarationField = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['ai-auditContentDeclarationField'],\n mutationFn: (args: AuditContentDeclarationFieldBody) =>\n intlayerOAuth.ai.auditContentDeclarationField(args),\n });\n};\n\nexport const useAuditTag = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['ai-auditTag'],\n mutationFn: (args: AuditTagBody) => intlayerOAuth.ai.auditTag(args),\n });\n};\n\nexport const useAskDocQuestion = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: [],\n mutationFn: (args?: AskDocQuestionBody) =>\n intlayerOAuth.ai.askDocQuestion(args),\n });\n};\n\nexport const useAutocomplete = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['ai-autocomplete'],\n mutationFn: (args?: AutocompleteBody) =>\n intlayerOAuth.ai.autocomplete(args),\n });\n};\n\n/**\n * Audit\n */\n\nexport const useAuditScan = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['audit-scan'],\n mutationFn: (args: ScanUrlBody) => intlayerOAuth.audit.scanUrl(args),\n });\n};\n\nexport const useStartRecursiveAudit = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['audit-recursive-start'],\n mutationFn: (args: StartRecursiveAuditBody) =>\n intlayerOAuth.audit.startRecursiveAudit(args),\n });\n};\n\nexport const useGetRecursiveAuditStatus = (\n params?: GetRecursiveAuditStatusParams,\n options?: Partial<UseQueryOptions>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['audit-recursive-status', params?.jobId],\n queryFn: ({ signal }) =>\n intlayerOAuth.audit.getRecursiveAuditStatus(params, { signal }),\n enabled: Boolean(params?.jobId),\n ...options,\n });\n};\n\n/**\n * Discussions\n */\n\nexport const useGetDiscussions = (\n params?: Record<string, string | string[] | undefined>,\n options?: Partial<UseQueryOptions>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['discussions', params],\n queryFn: ({ signal }) =>\n intlayerOAuth.ai.getDiscussions(params, { signal, cache: 'no-store' }),\n requireUser: true,\n ...options,\n });\n};\n\nexport const useGetDiscussionsData = (\n params?: Record<string, string | string[] | undefined>,\n options?: Partial<UseQueryOptions>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['discussions-data', params],\n queryFn: ({ signal }) =>\n intlayerOAuth.ai.getDiscussions(\n { includeMessages: 'false', ...(params ?? {}) } as any,\n { signal, cache: 'no-store' }\n ),\n requireUser: true,\n ...options,\n });\n};\n\n/**\n * Search\n */\n\nexport const useSearchDoc = (params: SearchDocUtilParams) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useQuery({\n queryKey: ['search', params],\n queryFn: () => intlayerOAuth.search.searchDoc(params),\n enabled: (params?.input?.length ?? 0) > 3,\n });\n};\n\n/**\n * Newsletter\n */\n\nexport const useSubscribeToNewsletter = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['newsletter'],\n mutationFn: (args: NewsletterSubscriptionBody) =>\n intlayerOAuth.newsletter.subscribeToNewsletter(args),\n });\n};\n\nexport const useUnsubscribeFromNewsletter = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['newsletter'],\n mutationFn: (args: NewsletterUnsubscriptionBody) =>\n intlayerOAuth.newsletter.unsubscribeFromNewsletter(args),\n });\n};\n\nexport const useGetNewsletterStatus = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['newsletter'],\n mutationFn: () => intlayerOAuth.newsletter.getNewsletterStatus(),\n });\n};\n\n/**\n * GitHub\n */\n\nexport const useGithubGetAuthUrl = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['github', 'auth-url'],\n mutationFn: (redirectUri: string) =>\n intlayerOAuth.github.getAuthUrl(redirectUri),\n });\n};\n\nexport const useGithubAuth = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['github', 'auth'],\n mutationFn: (code: string) => intlayerOAuth.github.authenticate(code),\n });\n};\n\nexport const useGithubRepos = (enabled: boolean = true) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useQuery({\n queryKey: ['github', 'repos'],\n queryFn: () => intlayerOAuth.github.getRepositories(),\n enabled,\n });\n};\n\nexport const useGithubCheckConfig = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['github', 'check-config'],\n mutationFn: (args: {\n owner: string;\n repository: string;\n branch?: string;\n }) =>\n intlayerOAuth.github.checkIntlayerConfig(\n undefined,\n args.owner,\n args.repository,\n args.branch\n ),\n });\n};\n\nexport const useGithubGetConfigFile = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['github', 'get-config-file'],\n mutationFn: (args: {\n owner: string;\n repository: string;\n branch?: string;\n path?: string;\n }) =>\n intlayerOAuth.github.getConfigFile(\n undefined,\n args.owner,\n args.repository,\n args.branch,\n args.path\n ),\n });\n};\n\n/**\n * GitLab\n */\n\nexport const useGitlabAuth = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['gitlab', 'auth'],\n mutationFn: (args: {\n code: string;\n redirectUri: string;\n instanceUrl?: string;\n }) =>\n intlayerOAuth.gitlab.authenticate(\n args.code,\n args.redirectUri,\n args.instanceUrl\n ),\n });\n};\n\nexport const useGitlabProjects = (\n enabled: boolean = true,\n instanceUrl?: string\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useQuery({\n queryKey: ['gitlab', 'projects', instanceUrl],\n queryFn: () => intlayerOAuth.gitlab.getProjects(undefined, instanceUrl),\n enabled,\n });\n};\n\nexport const useGitlabCheckConfig = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['gitlab', 'check-config'],\n mutationFn: (args: {\n projectId: number;\n branch?: string;\n instanceUrl?: string;\n }) =>\n intlayerOAuth.gitlab.checkIntlayerConfig(\n undefined,\n args.projectId,\n args.branch,\n args.instanceUrl\n ),\n });\n};\n\nexport const useGitlabGetConfigFile = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['gitlab', 'get-config-file'],\n mutationFn: (args: {\n projectId: number;\n branch?: string;\n path?: string;\n instanceUrl?: string;\n }) =>\n intlayerOAuth.gitlab.getConfigFile(\n undefined,\n args.projectId,\n args.branch,\n args.path,\n args.instanceUrl\n ),\n });\n};\n\n/**\n * Bitbucket\n */\n\nexport const useBitbucketAuth = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['bitbucket', 'auth'],\n mutationFn: (code: string) => intlayerOAuth.bitbucket.authenticate(code),\n });\n};\n\nexport const useBitbucketRepos = (enabled: boolean = true) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useQuery({\n queryKey: ['bitbucket', 'repos'],\n queryFn: () => intlayerOAuth.bitbucket.getRepositories(),\n enabled,\n });\n};\n\nexport const useBitbucketCheckConfig = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['bitbucket', 'check-config'],\n mutationFn: (args: {\n workspace: string;\n repoSlug: string;\n branch?: string;\n }) =>\n intlayerOAuth.bitbucket.checkIntlayerConfig(\n undefined,\n args.workspace,\n args.repoSlug,\n args.branch\n ),\n });\n};\n\nexport const useBitbucketGetConfigFile = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['bitbucket', 'get-config-file'],\n mutationFn: (args: {\n workspace: string;\n repoSlug: string;\n branch?: string;\n path?: string;\n }) =>\n intlayerOAuth.bitbucket.getConfigFile(\n undefined,\n args.workspace,\n args.repoSlug,\n args.branch,\n args.path\n ),\n });\n};\n\n/**\n * Editor\n */\n\nexport const useGetEditorDictionaries = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useQuery({\n queryKey: ['editor', 'dictionaries'],\n queryFn: () => intlayerOAuth.editor.getDictionaries(),\n });\n};\n\nexport const useWriteDictionary = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['editor', 'dictionaries'],\n mutationFn: (args: WriteContentDeclarationBody) =>\n intlayerOAuth.editor.writeDictionary(args),\n });\n};\n\n/**\n * Showcase\n */\n\nexport const useGetShowcaseProjects = (\n query?: ShowcaseProjectsQuery,\n options?: Partial<UseQueryOptions<GetShowcaseProjectsResult>>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useQuery({\n queryKey: ['showcase', 'projects', query],\n queryFn: ({ signal }) =>\n intlayerOAuth.showcaseProject.getShowcaseProjects(query, { signal }),\n ...options,\n });\n};\n\nexport const useGetShowcaseProjectById = (\n projectId: GetShowcaseProjectByIdParams['projectId'],\n options?: Partial<UseQueryOptions>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useQuery({\n queryKey: ['showcase', 'project', projectId],\n queryFn: ({ signal }) =>\n intlayerOAuth.showcaseProject.getShowcaseProjectById(projectId, {\n signal,\n }),\n enabled: Boolean(projectId),\n ...options,\n });\n};\n\nexport const useGetOtherShowcaseProjects = (\n query: OtherShowcaseProjectsQuery,\n options?: Partial<UseQueryOptions>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useQuery({\n queryKey: ['showcase', 'other-projects', query],\n queryFn: ({ signal }) =>\n intlayerOAuth.showcaseProject.getOtherShowcaseProjects(query, {\n signal,\n }),\n enabled: Boolean(query.excludeId),\n ...options,\n });\n};\n\nexport const useSubmitShowcaseProject = (props?: UseIntlayerAuthProps) => {\n const intlayerOAuth = useIntlayerOAuth(props);\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['showcase', 'submit'],\n mutationFn: (body: SubmitShowcaseProjectBody) =>\n intlayerOAuth.showcaseProject.submitShowcaseProject(body),\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['showcase'] });\n },\n });\n};\n\nexport const useDeleteShowcaseProject = (props?: UseIntlayerAuthProps) => {\n const intlayerOAuth = useIntlayerOAuth(props);\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['showcase', 'delete'],\n mutationFn: (projectId: string) =>\n intlayerOAuth.showcaseProject.deleteShowcaseProject(projectId),\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['showcase'] });\n },\n });\n};\n\nexport const useToggleShowcaseUpvote = (props?: UseIntlayerAuthProps) => {\n const intlayerOAuth = useIntlayerOAuth(props);\n\n return useMutation({\n mutationKey: ['showcase', 'upvote'],\n mutationFn: (projectId: string) =>\n intlayerOAuth.showcaseProject.toggleShowcaseUpvote({ projectId }),\n });\n};\n\nexport const useToggleShowcaseDownvote = (props?: UseIntlayerAuthProps) => {\n const intlayerOAuth = useIntlayerOAuth(props);\n\n return useMutation({\n mutationKey: ['showcase', 'downvote'],\n mutationFn: (projectId: string) =>\n intlayerOAuth.showcaseProject.toggleShowcaseDownvote({ projectId }),\n });\n};\n\nexport const useUpdateShowcaseProject = (props?: UseIntlayerAuthProps) => {\n const intlayerOAuth = useIntlayerOAuth(props);\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['showcase', 'update'],\n mutationFn: ({\n projectId,\n ...body\n }: {\n projectId: string;\n name?: string;\n url?: string;\n githubUrl?: string;\n tagline?: string;\n description?: string;\n useCases?: string[];\n }) => intlayerOAuth.showcaseProject.updateShowcaseProject(projectId, body),\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['showcase'] });\n },\n });\n};\n\n/**\n * Translation\n */\n\nexport const useFillAllTranslations = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['fill-all-translations'],\n mutationFn: async (\n args: Pick<TranslateDictionariesBody, 'targetLocales' | 'mode'> & {\n dictionaryIds?: string[];\n }\n ) => {\n let dictionaryIds = args.dictionaryIds;\n if (!dictionaryIds || dictionaryIds.length === 0) {\n const result = await intlayerOAuth.dictionary.getDictionaries({\n pageSize: 1000,\n });\n dictionaryIds = (result?.data ?? []).map((d) => d.id);\n }\n return intlayerOAuth.translate.translateDictionaries({\n dictionaryIds,\n targetLocales: args.targetLocales,\n mode: args.mode,\n });\n },\n });\n};\n\nexport const useStopTranslationJob = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['stop-translation-job'],\n mutationFn: (jobId: string) =>\n intlayerOAuth.translate.stopTranslationJob(jobId),\n });\n};\n\nexport const usePauseTranslationJob = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['pause-translation-job'],\n mutationFn: (jobId: string) =>\n intlayerOAuth.translate.pauseTranslationJob(jobId),\n });\n};\n\nexport const useResumeTranslationJob = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['resume-translation-job'],\n mutationFn: (jobId: string) =>\n intlayerOAuth.translate.resumeTranslationJob(jobId),\n });\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"reactQuery.mjs","names":[],"sources":["../../../src/hooks/reactQuery.ts"],"sourcesContent":["'use client';\n\nimport type {} from '@better-fetch/fetch'; // Import for type inference\nimport type {\n GetRecursiveAuditStatusParams,\n ScanUrlBody,\n StartRecursiveAuditBody,\n} from '@intlayer/api';\nimport type {\n AddDictionaryBody,\n AddNewAccessKeyBody,\n AddOrganizationBody,\n AddOrganizationMemberBody,\n AddProjectBody,\n AddTagBody,\n AskDocQuestionBody,\n AuditContentDeclarationBody,\n AuditContentDeclarationFieldBody,\n AuditContentDeclarationMetadataBody,\n AuditTagBody,\n AutocompleteBody,\n CreateUserBody,\n DeleteAccessKeyBody,\n DeleteDictionaryParam,\n DeleteTagParams,\n GetCheckoutSessionBody,\n GetDictionariesParams,\n GetDictionaryParams,\n GetDictionaryQuery,\n GetOrganizationsParams,\n GetPricingBody,\n GetPricingResult,\n GetProjectsParams,\n GetShowcaseProjectByIdParams,\n GetShowcaseProjectsResult,\n GetTagsParams,\n GetUsersParams,\n NewsletterSubscriptionBody,\n NewsletterUnsubscriptionBody,\n OtherShowcaseProjectsQuery,\n PushDictionariesBody,\n RefreshAccessKeyBody,\n SearchDocUtilParams,\n SelectOrganizationParam,\n SelectProjectParam,\n ShowcaseProjectsQuery,\n SubmitShowcaseProjectBody,\n TranslateDictionariesBody,\n TranslateJSONBody,\n UpdateDictionaryBody,\n UpdateOrganizationBody,\n UpdateOrganizationMembersBody,\n UpdateProjectBody,\n UpdateProjectMembersBody,\n UpdateUserBody,\n} from '@intlayer/backend';\n\nimport { useConfiguration } from '@intlayer/editor-react';\nimport {\n type UseQueryOptions,\n useInfiniteQuery,\n useMutation,\n useQuery,\n useQueryClient,\n} from '@tanstack/react-query';\nimport type {} from 'better-auth'; // Import for type inference\n// @ts-ignore\nimport type { WriteContentDeclarationBody } from 'intlayer-editor';\nimport type { AuthAPI } from '../libs/auth';\nimport { useAuth } from './useAuth';\nimport {\n type UseIntlayerAuthProps,\n useIntlayerAuth,\n useIntlayerOAuth,\n} from './useIntlayerAPI';\n\nexport { useQueryClient };\n\ntype AuthEnableOptions = {\n requireUser?: boolean;\n requireProject?: boolean;\n requireOrganization?: boolean;\n};\n\n/**\n * Hook to enable authentication\n */\nconst useAuthEnable = ({\n requireUser,\n requireProject,\n requireOrganization,\n}: AuthEnableOptions) => {\n const configuration = useConfiguration();\n const { oAuth2AccessToken, session } = useAuth({\n intlayerConfiguration: configuration,\n });\n\n const user = session ? session.user : oAuth2AccessToken?.user;\n\n const organization = session\n ? session.organization\n : oAuth2AccessToken?.organization;\n\n const project = session ? session.project : oAuth2AccessToken?.project;\n\n const isUserEnabled = requireUser ? Boolean(user) : true;\n\n const isProjectEnabled = requireProject ? Boolean(project) : true;\n\n const isOrganizationEnabled = requireOrganization\n ? Boolean(organization)\n : true;\n\n const isEnabled = isUserEnabled && isProjectEnabled && isOrganizationEnabled;\n\n return {\n enable: isEnabled,\n };\n};\n\nexport const useAppQuery = (\n options: UseQueryOptions & {\n requireUser?: boolean;\n requireProject?: boolean;\n requireOrganization?: boolean;\n }\n) => {\n const { requireUser, requireProject, requireOrganization, ...rest } = options;\n const { enable } = useAuthEnable({\n requireUser,\n requireProject,\n requireOrganization,\n });\n\n const result = useQuery({\n enabled: rest?.enabled === false ? false : enable,\n ...rest,\n });\n\n return result;\n};\n\n// Removed unused useEditorMutation\n\n/**\n * Auth\n */\n\nexport const useLogin = () => {\n const intlayerAuth = useIntlayerAuth();\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['login'],\n mutationFn: (args: Parameters<AuthAPI['signInEmail']>[0]) =>\n intlayerAuth.signInEmail(args),\n onSuccess: (data) => {\n const session = queryClient.getQueryData(['session']);\n\n queryClient.setQueryData(['session'], {\n ...session,\n user: data.data.user,\n });\n },\n });\n};\n\nexport const useGetVerifyEmailStatus = () => {\n const intlayerAuth = useIntlayerAuth();\n\n return useMutation({\n mutationKey: ['getVerifyEmailStatus'],\n mutationFn: (args: Parameters<AuthAPI['verifyEmailSession']>) =>\n intlayerAuth.verifyEmailSession(...args),\n });\n};\n\nexport const useRegister = () => {\n const intlayerAuth = useIntlayerAuth();\n\n return useMutation({\n mutationKey: ['register'],\n mutationFn: (args: Parameters<AuthAPI['signUpEmail']>[0]) =>\n intlayerAuth.signUpEmail(args),\n });\n};\n\nexport const useLogout = () => {\n const intlayerAuth = useIntlayerAuth();\n\n return useMutation({\n mutationKey: ['logout'],\n mutationFn: () => intlayerAuth.signOut(),\n meta: {\n resetQueries: [\n ['session'],\n ['users'],\n ['organizations'],\n ['projects'],\n ['dictionaries'],\n ['tags'],\n ],\n },\n });\n};\n\nexport const useChangePassword = () => {\n const intlayerAuth = useIntlayerAuth();\n\n return useMutation({\n mutationKey: ['changePassword'],\n mutationFn: (args: Parameters<AuthAPI['changePasswordSession']>) =>\n intlayerAuth.changePasswordSession(...args),\n });\n};\n\nexport const useAskResetPassword = () => {\n const intlayerAuth = useIntlayerAuth();\n\n return useMutation({\n mutationKey: ['askResetPassword'],\n mutationFn: (args: Parameters<AuthAPI['requestPasswordResetSession']>[0]) =>\n intlayerAuth.requestPasswordResetSession(args),\n });\n};\n\nexport const useResetPassword = () => {\n const intlayerAuth = useIntlayerAuth();\n\n return useMutation({\n mutationKey: ['resetPassword'],\n mutationFn: (args: Parameters<AuthAPI['resetPassword']>[0]) =>\n intlayerAuth.resetPassword(args),\n });\n};\n\nexport const useVerifyEmail = () => {\n const intlayerAuth = useIntlayerAuth();\n\n return useMutation({\n mutationKey: ['verifyEmail'],\n mutationFn: (args: Parameters<AuthAPI['verifyEmailSession']>[0]) =>\n intlayerAuth.verifyEmailSession(args),\n });\n};\n\nexport const useGetUserByAccount = () => {\n const intlayerAuth = useIntlayerAuth();\n\n return useMutation({\n mutationKey: ['user'],\n mutationFn: (args: Parameters<AuthAPI['accountInfo']>[0]) =>\n intlayerAuth.accountInfo(args),\n });\n};\n\nexport const useEnableTwoFactor = () => {\n const intlayerAuth = useIntlayerAuth();\n return useMutation({\n mutationKey: ['enableTwoFactor'],\n mutationFn: (args: Parameters<AuthAPI['enableTwoFactor']>[0]) =>\n intlayerAuth.enableTwoFactor(args),\n });\n};\n\nexport const useDisableTwoFactor = () => {\n const intlayerAuth = useIntlayerAuth();\n return useMutation({\n mutationKey: ['disableTwoFactor'],\n mutationFn: (args: Parameters<AuthAPI['disableTwoFactor']>[0]) =>\n intlayerAuth.disableTwoFactor(args),\n });\n};\n\nexport const useVerifyTotp = () => {\n const intlayerAuth = useIntlayerAuth();\n return useMutation({\n mutationKey: ['verifyTotp'],\n mutationFn: (args: Parameters<AuthAPI['verifyTotp']>[0]) =>\n intlayerAuth.verifyTotp(args),\n });\n};\n\nexport const useVerifyBackupCode = () => {\n const intlayerAuth = useIntlayerAuth();\n return useMutation({\n mutationKey: ['verifyBackupCode'],\n mutationFn: (args: Parameters<AuthAPI['verifyBackupCode']>[0]) =>\n intlayerAuth.verifyBackupCode(args),\n });\n};\n\nexport const useAddPasskey = () => {\n const intlayerAuth = useIntlayerAuth();\n return useMutation({\n mutationKey: ['addPasskey'],\n mutationFn: (args: Parameters<AuthAPI['addPasskey']>[0]) =>\n intlayerAuth.addPasskey(args),\n });\n};\n\nexport const useSignInPasskey = () => {\n const intlayerAuth = useIntlayerAuth();\n return useMutation({\n mutationKey: ['signInPasskey'],\n mutationFn: (args?: Parameters<AuthAPI['signInPasskey']>[0]) =>\n intlayerAuth.signInPasskey(args),\n });\n};\n\nexport const useDeletePasskey = () => {\n const intlayerAuth = useIntlayerAuth();\n return useMutation({\n mutationKey: ['deletePasskey'],\n mutationFn: (args: Parameters<AuthAPI['deletePasskey']>[0]) =>\n intlayerAuth.deletePasskey(args),\n });\n};\n\nexport const useListPasskeys = () => {\n const intlayerAuth = useIntlayerAuth();\n return useQuery({\n queryKey: ['listPasskeys'],\n queryFn: () => intlayerAuth.listPasskeys(),\n });\n};\n\nexport const useSignInMagicLink = () => {\n const intlayerAuth = useIntlayerAuth();\n return useMutation({\n mutationKey: ['signInMagicLink'],\n mutationFn: (args?: any) => intlayerAuth.signInMagicLink(args),\n });\n};\n\nexport const useRegisterSSO = () => {\n const intlayerAuth = useIntlayerAuth();\n const queryClient = useQueryClient();\n return useMutation({\n mutationKey: ['registerSSO'],\n mutationFn: (args: Parameters<AuthAPI['registerSSO']>[0]) =>\n intlayerAuth.registerSSO(args),\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['ssoProviders'] });\n },\n });\n};\n\nexport const useSignInSSO = () => {\n const intlayerAuth = useIntlayerAuth();\n return useMutation({\n mutationKey: ['signInSSO'],\n mutationFn: (args: Parameters<AuthAPI['signInSSO']>[0]) =>\n intlayerAuth.signInSSO(args),\n });\n};\n\nexport const useListSSOProviders = () => {\n const intlayerAuth = useIntlayerAuth();\n return useQuery({\n queryKey: ['ssoProviders'],\n queryFn: () => intlayerAuth.listSSOProviders(),\n });\n};\n\nexport const useDeleteSSOProvider = () => {\n const intlayerAuth = useIntlayerAuth();\n const queryClient = useQueryClient();\n return useMutation({\n mutationKey: ['deleteSSOProvider'],\n mutationFn: (args: Parameters<AuthAPI['deleteSSOProvider']>[0]) =>\n intlayerAuth.deleteSSOProvider(args),\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['ssoProviders'] });\n },\n });\n};\n\n/**\n * User\n */\n\nexport const useGetUsers = (\n filters?: GetUsersParams,\n options?: Partial<UseQueryOptions>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['users', filters],\n queryFn: () => intlayerOAuth.user.getUsers(filters),\n requireUser: true,\n // placeholderData: keepPreviousData,\n ...options,\n });\n};\n\nexport const useGetUserById = (userId: string) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['users', userId],\n queryFn: () => intlayerOAuth.user.getUserById(userId),\n requireUser: true,\n });\n};\n\nexport const useCreateUser = () => {\n const intlayerAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['users'],\n mutationFn: (args: CreateUserBody) => intlayerAuth.user.createUser(args),\n });\n};\n\nexport const useUpdateUser = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['users'],\n mutationFn: (args: UpdateUserBody) => intlayerOAuth.user.updateUser(args),\n });\n};\n\nexport const useDeleteUser = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['users'],\n mutationFn: (args: string) => intlayerOAuth.user.deleteUser(args),\n meta: {\n invalidateQueries: [['users']],\n },\n });\n};\n\n/**\n * Organization\n */\n\nexport const useGetOrganizations = (filters?: GetOrganizationsParams) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['organizations', filters],\n queryFn: ({ signal }) =>\n intlayerOAuth.organization.getOrganizations(filters, { signal }),\n // placeholderData: keepPreviousData,\n requireUser: true,\n });\n};\n\nexport const useAddOrganization = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['organizations'],\n mutationFn: (args: AddOrganizationBody) =>\n intlayerOAuth.organization.addOrganization(args),\n meta: {\n invalidateQueries: [['organizations']],\n },\n });\n};\n\nexport const useUpdateOrganization = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['organizations'],\n mutationFn: (args: UpdateOrganizationBody) =>\n intlayerOAuth.organization.updateOrganization(args),\n });\n};\n\nexport const useUpdateOrganizationMembers = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['organizations'],\n mutationFn: (args: UpdateOrganizationMembersBody) =>\n intlayerOAuth.organization.updateOrganizationMembers(args),\n meta: {\n invalidateQueries: [['organizations'], ['users']],\n },\n });\n};\n\nexport const useUpdateOrganizationMembersById = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['organizations'],\n mutationFn: ({\n organizationId,\n ...body\n }: {\n organizationId: string;\n membersIds: string[];\n adminsIds?: string[];\n }) =>\n intlayerOAuth.organization.updateOrganizationMembersById(\n organizationId,\n body\n ),\n meta: {\n invalidateQueries: [['organizations'], ['users']],\n },\n });\n};\n\nexport const useAddOrganizationMember = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['organizations'],\n mutationFn: (args: AddOrganizationMemberBody) =>\n intlayerOAuth.organization.addOrganizationMember(args),\n meta: {\n invalidateQueries: [['organizations']],\n },\n });\n};\n\nexport const useDeleteOrganization = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['organizations'],\n mutationFn: () => intlayerOAuth.organization.deleteOrganization(),\n meta: {\n invalidateQueries: [['organizations'], ['session']],\n },\n });\n};\n\nexport const useSelectOrganization = () => {\n const intlayerOAuth = useIntlayerOAuth();\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['session-organizations'],\n mutationFn: (args: SelectOrganizationParam) =>\n intlayerOAuth.organization.selectOrganization(args),\n meta: {\n invalidateQueries: [\n ['session'],\n ['organizations'],\n ['projects'],\n ['dictionaries'],\n ['tags'],\n ['subscription'],\n ['users'],\n ],\n },\n onSuccess: (data) => {\n const session = queryClient.getQueryData(['session']);\n\n queryClient.setQueryData(['session'], {\n ...(session ?? {}),\n organization: data.data,\n });\n },\n });\n};\n\nexport const useUnselectOrganization = () => {\n const intlayerOAuth = useIntlayerOAuth();\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['session-organizations'],\n mutationFn: () => intlayerOAuth.organization.unselectOrganization(),\n meta: {\n resetQueries: [\n ['session'],\n ['organizations'],\n ['projects'],\n ['dictionaries'],\n ['tags'],\n ['subscription'],\n ['users'],\n ],\n },\n onSuccess: () => {\n const session = queryClient.getQueryData(['session']);\n\n queryClient.setQueryData(['session'], {\n ...(session ?? {}),\n organization: null,\n project: null,\n });\n },\n });\n};\n\n/**\n * Project\n */\n\nexport const useGetProjects = (\n filters?: GetProjectsParams,\n options?: Partial<UseQueryOptions>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['projects', filters],\n queryFn: ({ signal }) =>\n intlayerOAuth.project.getProjects(filters, { signal }),\n // placeholderData: keepPreviousData,\n requireUser: true,\n requireOrganization: true,\n ...options,\n });\n};\n\nexport const useAddProject = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['projects'],\n mutationFn: (args: AddProjectBody) =>\n intlayerOAuth.project.addProject(args),\n meta: {\n invalidateQueries: [['projects']],\n },\n });\n};\n\nexport const useUpdateProject = () => {\n const intlayerOAuth = useIntlayerOAuth();\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['projects'],\n mutationFn: (args: UpdateProjectBody) =>\n intlayerOAuth.project.updateProject(args),\n meta: {\n invalidateQueries: [['projects']],\n },\n onSuccess: (data) => {\n const session = queryClient.getQueryData(['session']);\n\n queryClient.setQueryData(['session'], {\n ...(session ?? {}),\n project: data.data,\n });\n },\n });\n};\n\nexport const useUpdateProjectMembers = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['projects'],\n mutationFn: (args: UpdateProjectMembersBody) =>\n intlayerOAuth.project.updateProjectMembers(args),\n meta: {\n invalidateQueries: [['projects']],\n },\n });\n};\n\nexport const useDeleteProject = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['projects'],\n mutationFn: () => intlayerOAuth.project.deleteProject(),\n meta: {\n invalidateQueries: [['projects']],\n },\n });\n};\n\nexport const useSelectProject = () => {\n const intlayerOAuth = useIntlayerOAuth();\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['session-projects'],\n mutationFn: (args: SelectProjectParam) =>\n intlayerOAuth.project.selectProject(args),\n meta: {\n invalidateQueries: [\n ['session'],\n ['projects'],\n ['dictionaries'],\n ['tags'],\n ['subscription'],\n ['users'],\n ],\n },\n onSuccess: (data) => {\n const session = queryClient.getQueryData(['session']);\n\n queryClient.setQueryData(['session'], {\n ...(session ?? {}),\n project: data.data,\n });\n },\n });\n};\n\nexport const useUnselectProject = () => {\n const intlayerOAuth = useIntlayerOAuth();\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['session-projects'],\n mutationFn: () => intlayerOAuth.project.unselectProject(),\n meta: {\n resetQueries: [\n ['session'],\n ['projects'],\n ['dictionaries'],\n ['tags'],\n ['subscription'],\n ['users'],\n ],\n },\n onSuccess: () => {\n const session = queryClient.getQueryData(['session']);\n\n queryClient.setQueryData(['session'], {\n ...(session ?? {}),\n project: null,\n });\n },\n });\n};\n\nexport const useGetCIConfig = (options?: Partial<UseQueryOptions>) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['ci-config'],\n queryFn: ({ signal }) => intlayerOAuth.project.getCIConfig({ signal }),\n requireProject: true,\n ...options,\n });\n};\n\nexport const usePushCIConfig = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['ci-config'],\n mutationFn: () => intlayerOAuth.project.pushCIConfig(),\n meta: {\n invalidateQueries: [['ci-config']],\n },\n });\n};\n\nexport const useTriggerBuild = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['projects', 'build'],\n mutationFn: () => intlayerOAuth.project.triggerBuild(),\n meta: {\n invalidateQueries: [['projects']],\n },\n });\n};\n\nexport const useTriggerWebhook = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['projects', 'webhook'],\n mutationFn: (webhookIndex: number) =>\n intlayerOAuth.project.triggerWebhook(webhookIndex),\n meta: {\n invalidateQueries: [['projects']],\n },\n });\n};\n\nexport const useAddNewAccessKey = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['projects'],\n mutationFn: (args: AddNewAccessKeyBody) =>\n intlayerOAuth.project.addNewAccessKey(args),\n meta: {\n invalidateQueries: [['projects']],\n },\n });\n};\n\nexport const useDeleteAccessKey = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['projects'],\n mutationFn: (args: DeleteAccessKeyBody) =>\n intlayerOAuth.project.deleteAccessKey(args),\n meta: {\n invalidateQueries: [['projects']],\n },\n });\n};\n\nexport const useRefreshAccessKey = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['projects'],\n mutationFn: (args: RefreshAccessKeyBody) =>\n intlayerOAuth.project.refreshAccessKey(args),\n meta: {\n invalidateQueries: [['projects']],\n },\n });\n};\n\n/**\n * Dictionary\n */\n\nexport const useGetDictionaries = (\n filters?: GetDictionariesParams,\n options?: Partial<UseQueryOptions>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['dictionaries', filters],\n queryFn: ({ signal }) =>\n intlayerOAuth.dictionary.getDictionaries(filters, { signal }),\n // placeholderData: keepPreviousData,\n requireUser: true,\n requireOrganization: true,\n requireProject: true,\n ...options,\n });\n};\n\nexport const useInfiniteGetDictionaries = (\n filters?: Omit<GetDictionariesParams, 'page'>,\n options?: Partial<UseQueryOptions>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n const { enable } = useAuthEnable({\n requireUser: true,\n requireOrganization: true,\n requireProject: true,\n });\n\n return useInfiniteQuery({\n queryKey: ['dictionaries', 'infinite', filters],\n queryFn: async ({ pageParam = 1, signal }) => {\n const res = await intlayerOAuth.dictionary.getDictionaries(\n { ...filters, page: pageParam },\n { signal }\n );\n return res;\n },\n getNextPageParam: (lastPage) => {\n if (lastPage.data.length === 0) return undefined;\n const currentPage = lastPage.page ?? 1;\n const totalPages = lastPage.total_pages ?? 1;\n return currentPage < totalPages ? currentPage + 1 : undefined;\n },\n initialPageParam: 1,\n enabled: options?.enabled === false ? false : enable,\n ...options,\n });\n};\n\nexport const useGetDictionariesKeys = (options?: Partial<UseQueryOptions>) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['dictionariesKeys'],\n queryFn: () => intlayerOAuth.dictionary.getDictionariesKeys(),\n requireUser: true,\n requireOrganization: true,\n requireProject: true,\n ...options,\n });\n};\n\nexport const useGetDictionary = (\n dictionaryKey: GetDictionaryParams['dictionaryKey'],\n version?: GetDictionaryQuery['version'],\n options?: Partial<UseQueryOptions>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['dictionary', dictionaryKey],\n queryFn: ({ signal }) =>\n intlayerOAuth.dictionary.getDictionary(dictionaryKey, version, {\n signal,\n }),\n requireUser: true,\n requireOrganization: true,\n requireProject: true,\n ...options,\n });\n};\n\nexport const useAddDictionary = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['dictionaries'],\n mutationFn: (args: AddDictionaryBody) =>\n intlayerOAuth.dictionary.addDictionary(args),\n meta: {\n invalidateQueries: [['dictionaries'], ['dictionariesKeys']],\n },\n });\n};\n\nexport const usePushDictionaries = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['dictionaries'],\n mutationFn: (args: PushDictionariesBody) =>\n intlayerOAuth.dictionary.pushDictionaries(args.dictionaries),\n meta: {\n invalidateQueries: [['dictionaries'], ['dictionariesKeys']],\n },\n });\n};\n\nexport const useUpdateDictionary = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['dictionaries'],\n mutationFn: (args: UpdateDictionaryBody) =>\n intlayerOAuth.dictionary.updateDictionary(args),\n meta: {\n invalidateQueries: [['dictionaries'], ['dictionariesKeys']],\n },\n });\n};\n\nexport const useDeleteDictionary = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['dictionaries'],\n mutationFn: (args: DeleteDictionaryParam) =>\n intlayerOAuth.dictionary.deleteDictionary(args.dictionaryId),\n meta: {\n invalidateQueries: [['dictionaries'], ['dictionariesKeys']],\n },\n });\n};\n\n/**\n * Tag\n */\n\nexport const useGetTags = (\n filters?: GetTagsParams,\n options?: Partial<UseQueryOptions>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['tags', filters],\n queryFn: ({ signal }) => intlayerOAuth.tag.getTags(filters, { signal }),\n // placeholderData: keepPreviousData,\n requireUser: true,\n requireOrganization: true,\n ...options,\n });\n};\n\nexport const useAddTag = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['tags'],\n mutationFn: (args: AddTagBody) => intlayerOAuth.tag.addTag(args),\n meta: {\n invalidateQueries: [['tags']],\n },\n });\n};\n\nexport const useUpdateTag = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['tags'],\n mutationFn: (v: { tagId: string; tag: any }) =>\n intlayerOAuth.tag.updateTag(v.tagId, v.tag),\n meta: {\n invalidateQueries: [['tags']],\n },\n });\n};\n\nexport const useDeleteTag = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['tags'],\n mutationFn: (args: DeleteTagParams) => intlayerOAuth.tag.deleteTag(args),\n meta: {\n invalidateQueries: [['tags']],\n },\n });\n};\n\n/**\n * Stripe\n */\n\nexport const useGetPricing = (\n body: GetPricingBody,\n options?: Partial<UseQueryOptions<GetPricingResult>>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useQuery({\n queryKey: ['pricing', body],\n queryFn: ({ signal }) => intlayerOAuth.stripe.getPricing(body, { signal }),\n ...options,\n });\n};\n\nexport const useGetSubscription = (\n body: GetCheckoutSessionBody,\n options?: Partial<UseQueryOptions>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['subscription', body],\n queryFn: ({ signal }) =>\n intlayerOAuth.stripe.getSubscription(body, { signal }),\n requireUser: true,\n requireOrganization: true,\n ...options,\n });\n};\n\nexport const useCancelSubscription = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['subscription'],\n mutationFn: () => intlayerOAuth.stripe.cancelSubscription(),\n meta: {\n invalidateQueries: [['session'], ['subscription']],\n },\n });\n};\n\nexport const useGetInvoices = (options?: Partial<UseQueryOptions>) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['invoices'],\n queryFn: ({ signal }) => intlayerOAuth.stripe.getInvoices({ signal }),\n requireUser: true,\n requireOrganization: true,\n ...options,\n });\n};\n\nexport const useGetPaymentMethod = (options?: Partial<UseQueryOptions>) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['paymentMethod'],\n queryFn: ({ signal }) => intlayerOAuth.stripe.getPaymentMethod({ signal }),\n requireUser: true,\n requireOrganization: true,\n ...options,\n });\n};\n\nexport const useCreatePortalSession = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['portalSession'],\n mutationFn: () => intlayerOAuth.stripe.createPortalSession(),\n });\n};\n\n/**\n * AI\n */\n\nexport const useTranslateJSONDeclaration = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['ai-translateJSON'],\n mutationFn: (args: TranslateJSONBody) =>\n intlayerOAuth.ai.translateJSON(args),\n });\n};\n\nexport const useAuditContentDeclaration = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['ai-auditContentDeclaration'],\n mutationFn: (args: AuditContentDeclarationBody) =>\n intlayerOAuth.ai.auditContentDeclaration(args),\n });\n};\n\nexport const useAuditContentDeclarationMetadata = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['ai-auditContentDeclarationMetadata'],\n mutationFn: (args: AuditContentDeclarationMetadataBody) =>\n intlayerOAuth.ai.auditContentDeclarationMetadata(args),\n });\n};\n\nexport const useAuditContentDeclarationField = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['ai-auditContentDeclarationField'],\n mutationFn: (args: AuditContentDeclarationFieldBody) =>\n intlayerOAuth.ai.auditContentDeclarationField(args),\n });\n};\n\nexport const useAuditTag = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['ai-auditTag'],\n mutationFn: (args: AuditTagBody) => intlayerOAuth.ai.auditTag(args),\n });\n};\n\nexport const useAskDocQuestion = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: [],\n mutationFn: (args?: AskDocQuestionBody) =>\n intlayerOAuth.ai.askDocQuestion(args),\n });\n};\n\nexport const useAutocomplete = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['ai-autocomplete'],\n mutationFn: (args?: AutocompleteBody) =>\n intlayerOAuth.ai.autocomplete(args),\n });\n};\n\n/**\n * Audit\n */\n\nexport const useAuditScan = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['audit-scan'],\n mutationFn: (args: ScanUrlBody) => intlayerOAuth.audit.scanUrl(args),\n });\n};\n\nexport const useStartRecursiveAudit = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['audit-recursive-start'],\n mutationFn: (args: StartRecursiveAuditBody) =>\n intlayerOAuth.audit.startRecursiveAudit(args),\n });\n};\n\nexport const useGetRecursiveAuditStatus = (\n params?: GetRecursiveAuditStatusParams,\n options?: Partial<UseQueryOptions>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['audit-recursive-status', params?.jobId],\n queryFn: ({ signal }) =>\n intlayerOAuth.audit.getRecursiveAuditStatus(params, { signal }),\n enabled: Boolean(params?.jobId),\n ...options,\n });\n};\n\n/**\n * Discussions\n */\n\nexport const useGetDiscussions = (\n params?: Record<string, string | string[] | undefined>,\n options?: Partial<UseQueryOptions>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['discussions', params],\n queryFn: ({ signal }) =>\n intlayerOAuth.ai.getDiscussions(params, { signal, cache: 'no-store' }),\n requireUser: true,\n ...options,\n });\n};\n\nexport const useGetDiscussionsData = (\n params?: Record<string, string | string[] | undefined>,\n options?: Partial<UseQueryOptions>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useAppQuery({\n queryKey: ['discussions-data', params],\n queryFn: ({ signal }) =>\n intlayerOAuth.ai.getDiscussions(\n { includeMessages: 'false', ...(params ?? {}) } as any,\n { signal, cache: 'no-store' }\n ),\n requireUser: true,\n ...options,\n });\n};\n\n/**\n * Search\n */\n\nexport const useSearchDoc = (params: SearchDocUtilParams) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useQuery({\n queryKey: ['search', params],\n queryFn: () => intlayerOAuth.search.searchDoc(params),\n enabled: (params?.input?.length ?? 0) > 3,\n });\n};\n\n/**\n * Newsletter\n */\n\nexport const useSubscribeToNewsletter = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['newsletter'],\n mutationFn: (args: NewsletterSubscriptionBody) =>\n intlayerOAuth.newsletter.subscribeToNewsletter(args),\n });\n};\n\nexport const useUnsubscribeFromNewsletter = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['newsletter'],\n mutationFn: (args: NewsletterUnsubscriptionBody) =>\n intlayerOAuth.newsletter.unsubscribeFromNewsletter(args),\n });\n};\n\nexport const useGetNewsletterStatus = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['newsletter'],\n mutationFn: () => intlayerOAuth.newsletter.getNewsletterStatus(),\n });\n};\n\n/**\n * GitHub\n */\n\nexport const useGithubGetAuthUrl = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['github', 'auth-url'],\n mutationFn: (redirectUri: string) =>\n intlayerOAuth.github.getAuthUrl(redirectUri),\n });\n};\n\nexport const useGithubAuth = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['github', 'auth'],\n mutationFn: (code: string) => intlayerOAuth.github.authenticate(code),\n });\n};\n\nexport const useGithubRepos = (enabled: boolean = true) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useQuery({\n queryKey: ['github', 'repos'],\n queryFn: () => intlayerOAuth.github.getRepositories(),\n enabled,\n });\n};\n\nexport const useGithubCheckConfig = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['github', 'check-config'],\n mutationFn: (args: {\n owner: string;\n repository: string;\n branch?: string;\n }) =>\n intlayerOAuth.github.checkIntlayerConfig(\n undefined,\n args.owner,\n args.repository,\n args.branch\n ),\n });\n};\n\nexport const useGithubGetConfigFile = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['github', 'get-config-file'],\n mutationFn: (args: {\n owner: string;\n repository: string;\n branch?: string;\n path?: string;\n }) =>\n intlayerOAuth.github.getConfigFile(\n undefined,\n args.owner,\n args.repository,\n args.branch,\n args.path\n ),\n });\n};\n\n/**\n * GitLab\n */\n\nexport const useGitlabAuth = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['gitlab', 'auth'],\n mutationFn: (args: {\n code: string;\n redirectUri: string;\n instanceUrl?: string;\n }) =>\n intlayerOAuth.gitlab.authenticate(\n args.code,\n args.redirectUri,\n args.instanceUrl\n ),\n });\n};\n\nexport const useGitlabProjects = (\n enabled: boolean = true,\n instanceUrl?: string\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useQuery({\n queryKey: ['gitlab', 'projects', instanceUrl],\n queryFn: () => intlayerOAuth.gitlab.getProjects(undefined, instanceUrl),\n enabled,\n });\n};\n\nexport const useGitlabCheckConfig = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['gitlab', 'check-config'],\n mutationFn: (args: {\n projectId: number;\n branch?: string;\n instanceUrl?: string;\n }) =>\n intlayerOAuth.gitlab.checkIntlayerConfig(\n undefined,\n args.projectId,\n args.branch,\n args.instanceUrl\n ),\n });\n};\n\nexport const useGitlabGetConfigFile = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['gitlab', 'get-config-file'],\n mutationFn: (args: {\n projectId: number;\n branch?: string;\n path?: string;\n instanceUrl?: string;\n }) =>\n intlayerOAuth.gitlab.getConfigFile(\n undefined,\n args.projectId,\n args.branch,\n args.path,\n args.instanceUrl\n ),\n });\n};\n\n/**\n * Bitbucket\n */\n\nexport const useBitbucketAuth = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['bitbucket', 'auth'],\n mutationFn: (code: string) => intlayerOAuth.bitbucket.authenticate(code),\n });\n};\n\nexport const useBitbucketRepos = (enabled: boolean = true) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useQuery({\n queryKey: ['bitbucket', 'repos'],\n queryFn: () => intlayerOAuth.bitbucket.getRepositories(),\n enabled,\n });\n};\n\nexport const useBitbucketCheckConfig = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['bitbucket', 'check-config'],\n mutationFn: (args: {\n workspace: string;\n repoSlug: string;\n branch?: string;\n }) =>\n intlayerOAuth.bitbucket.checkIntlayerConfig(\n undefined,\n args.workspace,\n args.repoSlug,\n args.branch\n ),\n });\n};\n\nexport const useBitbucketGetConfigFile = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['bitbucket', 'get-config-file'],\n mutationFn: (args: {\n workspace: string;\n repoSlug: string;\n branch?: string;\n path?: string;\n }) =>\n intlayerOAuth.bitbucket.getConfigFile(\n undefined,\n args.workspace,\n args.repoSlug,\n args.branch,\n args.path\n ),\n });\n};\n\n/**\n * Editor\n */\n\nexport const useGetEditorDictionaries = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useQuery({\n queryKey: ['editor', 'dictionaries'],\n queryFn: () => intlayerOAuth.editor.getDictionaries(),\n });\n};\n\nexport const useWriteDictionary = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['editor', 'dictionaries'],\n mutationFn: (args: WriteContentDeclarationBody) =>\n intlayerOAuth.editor.writeDictionary(args),\n });\n};\n\n/**\n * Showcase\n */\n\nexport const useGetShowcaseProjects = (\n query?: ShowcaseProjectsQuery,\n options?: Partial<UseQueryOptions<GetShowcaseProjectsResult>>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useQuery({\n queryKey: ['showcase', 'projects', query],\n queryFn: ({ signal }) =>\n intlayerOAuth.showcaseProject.getShowcaseProjects(query, { signal }),\n ...options,\n });\n};\n\nexport const useGetShowcaseProjectById = (\n projectId: GetShowcaseProjectByIdParams['projectId'],\n options?: Partial<UseQueryOptions>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useQuery({\n queryKey: ['showcase', 'project', projectId],\n queryFn: ({ signal }) =>\n intlayerOAuth.showcaseProject.getShowcaseProjectById(projectId, {\n signal,\n }),\n enabled: Boolean(projectId),\n ...options,\n });\n};\n\nexport const useGetOtherShowcaseProjects = (\n query: OtherShowcaseProjectsQuery,\n options?: Partial<UseQueryOptions>\n) => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useQuery({\n queryKey: ['showcase', 'other-projects', query],\n queryFn: ({ signal }) =>\n intlayerOAuth.showcaseProject.getOtherShowcaseProjects(query, {\n signal,\n }),\n enabled: Boolean(query.excludeId),\n ...options,\n });\n};\n\nexport const useSubmitShowcaseProject = (props?: UseIntlayerAuthProps) => {\n const intlayerOAuth = useIntlayerOAuth(props);\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['showcase', 'submit'],\n mutationFn: (body: SubmitShowcaseProjectBody) =>\n intlayerOAuth.showcaseProject.submitShowcaseProject(body),\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['showcase'] });\n },\n });\n};\n\nexport const useDeleteShowcaseProject = (props?: UseIntlayerAuthProps) => {\n const intlayerOAuth = useIntlayerOAuth(props);\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['showcase', 'delete'],\n mutationFn: (projectId: string) =>\n intlayerOAuth.showcaseProject.deleteShowcaseProject(projectId),\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['showcase'] });\n },\n });\n};\n\nexport const useToggleShowcaseUpvote = (props?: UseIntlayerAuthProps) => {\n const intlayerOAuth = useIntlayerOAuth(props);\n\n return useMutation({\n mutationKey: ['showcase', 'upvote'],\n mutationFn: (projectId: string) =>\n intlayerOAuth.showcaseProject.toggleShowcaseUpvote({ projectId }),\n });\n};\n\nexport const useToggleShowcaseDownvote = (props?: UseIntlayerAuthProps) => {\n const intlayerOAuth = useIntlayerOAuth(props);\n\n return useMutation({\n mutationKey: ['showcase', 'downvote'],\n mutationFn: (projectId: string) =>\n intlayerOAuth.showcaseProject.toggleShowcaseDownvote({ projectId }),\n });\n};\n\nexport const useUpdateShowcaseProject = (props?: UseIntlayerAuthProps) => {\n const intlayerOAuth = useIntlayerOAuth(props);\n const queryClient = useQueryClient();\n\n return useMutation({\n mutationKey: ['showcase', 'update'],\n mutationFn: ({\n projectId,\n ...body\n }: {\n projectId: string;\n name?: string;\n url?: string;\n githubUrl?: string;\n tagline?: string;\n description?: string;\n useCases?: string[];\n }) => intlayerOAuth.showcaseProject.updateShowcaseProject(projectId, body),\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['showcase'] });\n },\n });\n};\n\n/**\n * Translation\n */\n\nexport const useFillAllTranslations = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['fill-all-translations'],\n mutationFn: async (\n args: Pick<TranslateDictionariesBody, 'targetLocales' | 'mode'> & {\n dictionaryIds?: string[];\n }\n ) => {\n let dictionaryIds = args.dictionaryIds;\n if (!dictionaryIds || dictionaryIds.length === 0) {\n const result = await intlayerOAuth.dictionary.getDictionaries({\n pageSize: 1000,\n });\n dictionaryIds = (result?.data ?? []).map((d) => d.id);\n }\n return intlayerOAuth.translate.translateDictionaries({\n dictionaryIds,\n targetLocales: args.targetLocales,\n mode: args.mode,\n });\n },\n });\n};\n\nexport const useStopTranslationJob = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['stop-translation-job'],\n mutationFn: (jobId: string) =>\n intlayerOAuth.translate.stopTranslationJob(jobId),\n });\n};\n\nexport const usePauseTranslationJob = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['pause-translation-job'],\n mutationFn: (jobId: string) =>\n intlayerOAuth.translate.pauseTranslationJob(jobId),\n });\n};\n\nexport const useResumeTranslationJob = () => {\n const intlayerOAuth = useIntlayerOAuth();\n\n return useMutation({\n mutationKey: ['resume-translation-job'],\n mutationFn: (jobId: string) =>\n intlayerOAuth.translate.resumeTranslationJob(jobId),\n });\n};\n"],"mappings":"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"}
@@ -4,11 +4,11 @@ import { useQuery } from "@tanstack/react-query";
4
4
  import configuration from "@intlayer/config/built";
5
5
  import { useConfiguration } from "@intlayer/editor-react";
6
6
  import { getOAuthAPI } from "@intlayer/api";
7
+ import { defu } from "defu";
7
8
 
8
9
  //#region src/hooks/useAuth/useOAuth2.ts
9
10
  const useOAuth2 = (intlayerConfiguration) => {
10
- const configuration$1 = useConfiguration();
11
- const config = intlayerConfiguration ?? configuration$1 ?? configuration;
11
+ const config = defu(intlayerConfiguration, useConfiguration(), configuration);
12
12
  const { data } = useQuery({
13
13
  queryKey: ["oAuth2AccessToken"],
14
14
  queryFn: getOAuthAPI(config).getOAuth2AccessToken,
@@ -1 +1 @@
1
- {"version":3,"file":"useOAuth2.mjs","names":["configuration","defaultConfiguration"],"sources":["../../../../src/hooks/useAuth/useOAuth2.ts"],"sourcesContent":["'use client';\n\nimport { getOAuthAPI } from '@intlayer/api';\nimport { default as defaultConfiguration } from '@intlayer/config/built';\nimport { useConfiguration } from '@intlayer/editor-react';\nimport type { IntlayerConfig } from '@intlayer/types/config';\nimport { useQuery } from '@tanstack/react-query';\n\nexport const useOAuth2 = (intlayerConfiguration?: IntlayerConfig) => {\n const configuration = useConfiguration();\n const config = intlayerConfiguration ?? configuration ?? defaultConfiguration;\n const intlayerAPI = getOAuthAPI(config);\n\n const { data } = useQuery({\n queryKey: ['oAuth2AccessToken'],\n queryFn: intlayerAPI.getOAuth2AccessToken,\n enabled: !!(config.editor.clientId && config.editor.clientSecret),\n staleTime: 0,\n gcTime: 0,\n refetchOnWindowFocus: false,\n refetchOnMount: false,\n refetchOnReconnect: false,\n refetchInterval: false,\n refetchIntervalInBackground: false,\n });\n\n const oAuth2AccessToken = data?.data;\n\n return {\n oAuth2AccessToken,\n };\n};\n"],"mappings":";;;;;;;;AAQA,MAAa,aAAa,0BAA2C;CACnE,MAAMA,kBAAgB,kBAAkB;CACxC,MAAM,SAAS,yBAAyBA,mBAAiBC;CAGzD,MAAM,EAAE,SAAS,SAAS;EACxB,UAAU,CAAC,oBAAoB;EAC/B,SAJkB,YAAY,OAIV,CAAC;EACrB,SAAS,CAAC,EAAE,OAAO,OAAO,YAAY,OAAO,OAAO;EACpD,WAAW;EACX,QAAQ;EACR,sBAAsB;EACtB,gBAAgB;EAChB,oBAAoB;EACpB,iBAAiB;EACjB,6BAA6B;EAC9B,CAAC;AAIF,QAAO,EACL,mBAHwB,MAAM,MAI/B"}
1
+ {"version":3,"file":"useOAuth2.mjs","names":["defaultConfiguration"],"sources":["../../../../src/hooks/useAuth/useOAuth2.ts"],"sourcesContent":["'use client';\n\nimport { getOAuthAPI } from '@intlayer/api';\nimport { default as defaultConfiguration } from '@intlayer/config/built';\nimport { useConfiguration } from '@intlayer/editor-react';\nimport type { IntlayerConfig } from '@intlayer/types/config';\nimport { useQuery } from '@tanstack/react-query';\nimport { defu } from 'defu';\n\nexport const useOAuth2 = (intlayerConfiguration?: IntlayerConfig) => {\n const configuration = useConfiguration();\n const config = defu(\n intlayerConfiguration,\n configuration,\n defaultConfiguration\n );\n\n const intlayerAPI = getOAuthAPI(config);\n\n const { data } = useQuery({\n queryKey: ['oAuth2AccessToken'],\n queryFn: intlayerAPI.getOAuth2AccessToken,\n enabled: !!(config.editor.clientId && config.editor.clientSecret),\n staleTime: 0,\n gcTime: 0,\n refetchOnWindowFocus: false,\n refetchOnMount: false,\n refetchOnReconnect: false,\n refetchInterval: false,\n refetchIntervalInBackground: false,\n });\n\n const oAuth2AccessToken = data?.data;\n\n return {\n oAuth2AccessToken,\n };\n};\n"],"mappings":";;;;;;;;;AASA,MAAa,aAAa,0BAA2C;CAEnE,MAAM,SAAS,KACb,uBAFoB,kBAGP,EACbA,cACD;CAID,MAAM,EAAE,SAAS,SAAS;EACxB,UAAU,CAAC,oBAAoB;EAC/B,SAJkB,YAAY,OAIV,CAAC;EACrB,SAAS,CAAC,EAAE,OAAO,OAAO,YAAY,OAAO,OAAO;EACpD,WAAW;EACX,QAAQ;EACR,sBAAsB;EACtB,gBAAgB;EAChB,oBAAoB;EACpB,iBAAiB;EACjB,6BAA6B;EAC9B,CAAC;AAIF,QAAO,EACL,mBAHwB,MAAM,MAI/B"}
@@ -16,11 +16,13 @@ const useSession = (sessionProp, intlayerConfiguration) => {
16
16
  queryFn: async () => {
17
17
  return (await getAuthAPI(config).getSession()).data;
18
18
  },
19
- staleTime: 60 * 1e3,
20
- gcTime: 300 * 1e3,
19
+ staleTime: 300 * 1e3,
20
+ gcTime: 1800 * 1e3,
21
+ refetchInterval: 600 * 1e3,
22
+ refetchIntervalInBackground: false,
21
23
  refetchOnMount: true,
22
- refetchOnWindowFocus: false,
23
- refetchOnReconnect: false,
24
+ refetchOnWindowFocus: true,
25
+ refetchOnReconnect: true,
24
26
  enabled: !sessionProp
25
27
  });
26
28
  const session = data ?? (isFetched ? null : void 0);