@intlayer/design-system 9.5.2 → 9.5.4-canary.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -7
- package/dist/esm/api/useAuth/useOAuth2.mjs +1 -1
- package/dist/esm/api/useAuth/useSession.mjs +2 -2
- package/dist/esm/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.mjs +6 -6
- package/dist/esm/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.mjs.map +1 -1
- package/dist/esm/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.mjs +11 -11
- package/dist/esm/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.mjs.map +1 -1
- package/dist/esm/components/Form/FormBase.mjs +17 -3
- package/dist/esm/components/Form/FormBase.mjs.map +1 -1
- package/dist/esm/components/Form/elements/FormElement.mjs +4 -1
- package/dist/esm/components/Form/elements/FormElement.mjs.map +1 -1
- package/dist/esm/components/Form/elements/FormElementWrapper.mjs +2 -2
- package/dist/esm/components/Form/elements/FormElementWrapper.mjs.map +1 -1
- package/dist/esm/components/Form/elements/OTPElement.mjs +1 -1
- package/dist/esm/components/Form/index.mjs +2 -2
- package/dist/esm/components/IDE/MarkDownRender.mjs +1 -1
- package/dist/esm/components/LocaleSwitcherContentDropDown/LocaleSwitcherContent.mjs +1 -1
- package/dist/esm/components/Modal/Modal.mjs +2 -2
- package/dist/esm/components/Navbar/MobileNavbar.mjs +1 -1
- package/dist/esm/components/Pagination/Pagination.mjs +1 -1
- package/dist/esm/components/Pattern/GridDistortionPattern.mjs +1 -1
- package/dist/esm/components/RightDrawer/RightDrawer.mjs +3 -3
- package/dist/esm/components/Status/index.mjs +3 -6
- package/dist/esm/components/Status/index.mjs.map +1 -1
- package/dist/esm/components/Tab/Tab.mjs +1 -1
- package/dist/esm/components/index.mjs +2 -2
- package/dist/esm/hooks/index.mjs +11 -9
- package/dist/esm/hooks/useRemoteMcpTools.mjs +56 -0
- package/dist/esm/hooks/useRemoteMcpTools.mjs.map +1 -0
- package/dist/esm/hooks/useWebMCPTools.mjs +44 -0
- package/dist/esm/hooks/useWebMCPTools.mjs.map +1 -0
- package/dist/esm/libs/auth.mjs +3 -2
- package/dist/esm/libs/auth.mjs.map +1 -1
- package/dist/esm/providers/index.mjs +1 -1
- package/dist/esm/structured-data/index.mjs +6 -6
- package/dist/esm/webmcp/createRemoteMcpTools.mjs +65 -0
- package/dist/esm/webmcp/createRemoteMcpTools.mjs.map +1 -0
- package/dist/esm/webmcp/getModelContext.mjs +28 -0
- package/dist/esm/webmcp/getModelContext.mjs.map +1 -0
- package/dist/esm/webmcp/index.mjs +5 -0
- package/dist/esm/webmcp/registerWebMCPTools.mjs +54 -0
- package/dist/esm/webmcp/registerWebMCPTools.mjs.map +1 -0
- package/dist/esm/webmcp/types.mjs +0 -0
- package/dist/types/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.d.ts +7 -7
- package/dist/types/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.d.ts.map +1 -1
- package/dist/types/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.d.ts +10 -10
- package/dist/types/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.d.ts.map +1 -1
- package/dist/types/components/Form/FormBase.d.ts +27 -4
- package/dist/types/components/Form/FormBase.d.ts.map +1 -1
- package/dist/types/components/Form/elements/FormElement.d.ts +1 -0
- package/dist/types/components/Form/elements/FormElement.d.ts.map +1 -1
- package/dist/types/components/Form/elements/FormElementWrapper.d.ts +3 -3
- package/dist/types/components/Form/index.d.ts +2 -2
- package/dist/types/components/index.d.ts +2 -2
- package/dist/types/hooks/index.d.ts +3 -1
- package/dist/types/hooks/useRemoteMcpTools.d.ts +18 -0
- package/dist/types/hooks/useRemoteMcpTools.d.ts.map +1 -0
- package/dist/types/hooks/useWebMCPTools.d.ts +22 -0
- package/dist/types/hooks/useWebMCPTools.d.ts.map +1 -0
- package/dist/types/libs/auth.d.ts.map +1 -1
- package/dist/types/webmcp/createRemoteMcpTools.d.ts +52 -0
- package/dist/types/webmcp/createRemoteMcpTools.d.ts.map +1 -0
- package/dist/types/webmcp/getModelContext.d.ts +18 -0
- package/dist/types/webmcp/getModelContext.d.ts.map +1 -0
- package/dist/types/webmcp/index.d.ts +5 -0
- package/dist/types/webmcp/registerWebMCPTools.d.ts +19 -0
- package/dist/types/webmcp/registerWebMCPTools.d.ts.map +1 -0
- package/dist/types/webmcp/types.d.ts +74 -0
- package/dist/types/webmcp/types.d.ts.map +1 -0
- package/package.json +36 -30
|
@@ -56,7 +56,7 @@ import { Flag } from "./Flags/Flag.js";
|
|
|
56
56
|
import { flags_d_exports } from "./Flags/flags.js";
|
|
57
57
|
import "./Flags/index.js";
|
|
58
58
|
import { Footer, FooterLink, LinkGroup } from "./Footer/index.js";
|
|
59
|
-
import { useForm } from "./Form/FormBase.js";
|
|
59
|
+
import { FormWebMCPProps, getFormWebMCPAttributes, useForm } from "./Form/FormBase.js";
|
|
60
60
|
import { Form } from "./Form/Form.js";
|
|
61
61
|
import { FormControl } from "./Form/FormControl.js";
|
|
62
62
|
import { FormDescription } from "./Form/FormDescription.js";
|
|
@@ -184,4 +184,4 @@ import { reducer, toast, useToast } from "./Toaster/useToast.js";
|
|
|
184
184
|
import "./Toaster/index.js";
|
|
185
185
|
import { WithResizer } from "./WithResizer/index.js";
|
|
186
186
|
import { MarkdownRenderer, ParsedMarkdown, baseMarkdownComponents, getIntlayerMarkdownOptions } from "./MarkDownRender/MarkDownRender.js";
|
|
187
|
-
export { Accordion, AccordionProps, AutoCompleteTextarea, AutoSizedTextArea, AutoSizedTextAreaProps, AutocompleteTextAreaProps, Avatar, AvatarProps, Badge, BadgeColor, BadgeProps, BadgeSize, BadgeVariant, BadgeVariantProps, BitbucketLogo, Breadcrumb, BreadcrumbLink, BreadcrumbProps, Browser, BrowserProps, Burger, Button, ButtonColor, ButtonProps, ButtonSize, ButtonTextAlign, ButtonVariant, Carousel, Checkbox, CheckboxColor, CheckboxProps, CheckboxSize, ClickOutsideDiv, ClickOutsideDivProps, Code, CodeBlock, CodeBlockProps, CodeCompAttributes, CodeDefault, CodeHighlighted, type CodeLanguage, CollapsibleTable, CollapsibleTableProps, Command, CommandRoot, Container, ContainerBackground, ContainerBorderColor, ContainerGap, ContainerPadding, ContainerProps, ContainerRoundedSize, ContainerSeparator, ContainerTransparency, ContentEditableTextArea, ContentEditableTextAreaHandle, ContentEditableTextAreaProps, ContentEditor, ContentEditorInput, ContentEditorInputProps, ContentEditorProps, ContentEditorTextArea, ContentEditorTextAreaProps, ContentSelector, CopyButton, CopyToClipboard, CopyToClipboardProps, type CreateEditorUploadFnOptions, DesktopNavbar, DesktopThemeSwitcher, Detail, DetailProps, DictionaryCreationForm, DictionaryEditor, DictionaryFieldEditor, DiscordLogo, DotPattern, DropDown, DropDownAlign, DropDownProps, DropDownType, DropDownYAlign, EditableFieldInput, EditableFieldTextArea, ExpandCollapse, ExpandCollapseProps, FacebookLogo, FileList, FileListProps, Flag, flags_d_exports as Flags, Footer, FooterLink, Form, AutoSizedTextAreaElement as FormAutoSizedTextArea, Button as FormButton, CheckboxElement as FormCheckbox, FormControl, FormDescription, EditableFieldInputElement as FormEditableFieldInput, EditableFieldTextAreaElement as FormEditableFieldTextArea, FormElement, FormField, InputElement as FormInput, InputPasswordElement as FormInputPassword, FormItem, FormLabelLayout as FormLabel, FormMessage, MultiSelectElement as FormMultiSelect, OTPElement as FormOTP, SearchInputElement as FormSearchInput, SelectElement as FormSelect, SwitchSelectorElement as FormSwitchSelector, TextAreaElement as FormTextArea, GitHubLogo, GitLabLogo, GoogleLogo, GridDistortionPattern, GridPattern, H1, H2, H3, H4, H5, H6, HTMLRenderer, HeadingProps, HeightResizer, HideShow, HideShowProps, Hr, IDE, IDEProps, InformationTag, Input, InputIndicator, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, InputPassword, InputProps, InputSize, InputVariant, InstagramLogo, KeyList, KeyPathBreadcrumb, KeyboardScreenAdapter, KeyboardShortcut, KeyboardShortcutProps, KeyboardShortcutType, Label, LabelProps, LanguageBackground, LanguageSection, Link, LinkColor, LinkGroup, LinkProps, LinkRoundedSize, LinkSize, LinkUnderlined, LinkVariant, LinkedInLogo, Loader, LoaderProps, LocalCardList, LocaleSwitcher, LocaleSwitcherContent, LocaleSwitcherContentProps, LocaleSwitcherContentProvider, LocaleSwitcherProps, Logo, LogoTextOnly, LogoWithText, LogoWithTextBelow, MarkDownIframe, MarkdownEditor, type MarkdownEditorProps, MarkdownRenderer, MaxHeightSmoother, MaxWidthSmoother, MobileNavbar, MobileThemeSwitcher, Modal, ModalSize, Modes, MultiSelect, Navbar, NodeEditor, NodeEditorProps, NumberItemsSelector, NumberItemsSelectorProps, OTPInput, OTPInputContext, OTPInputProps, Pagination, PaginationProps, PaginationSize, PaginationVariant, PanelProps, type ParsedMarkdown, Popover, PopoverProps, PopoverStatic, PopoverType, PopoverXAlign, PopoverYAlign, PressableSpan, ProductHuntLogo, Radio, RadioColor, RadioProps, RadioSize, RenderProps, RightDrawer, SaveForm, SearchInput, Select, SelectContent, SelectContentPosition, SelectLabel, SelectSeparator, ShowingResultsNumberItems, ShowingResultsNumberItemsProps, SlotProps, SmartTable, SocialNetworks, Spotlight, Step, Steps, SwitchSelector, SwitchSelectorBaseProps, SwitchSelectorChoice, SwitchSelectorChoices, SwitchSelectorColor, SwitchSelectorProps, SwitchSelectorSize, Tab, TabItemProps, TabProps, TabSelector, TabSelectorColor, TabSelectorItemProps, TabSelectorProps, Table, TableProps, Tag, TagBackground, TagBorder, TagColor, TagRoundedSize, TagSize, Td, TechLogo, type TechLogoName, techLogos_d_exports as TechLogos, Terminal, TerminalProps, TextArea, TextAreaProps, TextEditor, TextEditorContainer, TextEditorProps, Th, TiktokLogo, Toast, ToastAction, ToastActionElement, ToastClose, ToastDescription, ToastProps, ToastProvider, ToastTitle, ToastViewport, Toaster, Tr, TriggerProps, type UploadImageFn, VersionSwitcher, VersionSwitcherProps, VersionSwitcherProvider, VerticalSwitchSelector, VerticalSwitchSelectorProps, WithResizer, XLogo, YoutubeLogo, badgeVariants, baseMarkdownComponents, buttonVariants, checkIsExternalLink, checkboxVariants, choiceVariant, containerVariants, createEditorUploadFn, defaultChoices, drawerManager, getCapitals, getIntlayerHTMLOptions, getIntlayerMarkdownOptions, getYoutubeEmbedUrl, getYoutubeVideoId, getYoutubeWatchUrl, indicatorVariant, inputSlotVariants, inputVariants, isTextChildren, linkVariants, paginationVariants, radioVariants, reducer, shikiWrapperClassName, switchSelectorVariant, toast, toastVariants, traceKeys, useContentEditable, useCopyToClipboard, useForm, useFormField, useIsRightDrawerOpen, useLocaleSwitcherContent, usePasswordManagerBadge, usePopoverIds, usePrevious, useRightDrawer, useRightDrawerActions, useToast, useVersionSwitcher };
|
|
187
|
+
export { Accordion, AccordionProps, AutoCompleteTextarea, AutoSizedTextArea, AutoSizedTextAreaProps, AutocompleteTextAreaProps, Avatar, AvatarProps, Badge, BadgeColor, BadgeProps, BadgeSize, BadgeVariant, BadgeVariantProps, BitbucketLogo, Breadcrumb, BreadcrumbLink, BreadcrumbProps, Browser, BrowserProps, Burger, Button, ButtonColor, ButtonProps, ButtonSize, ButtonTextAlign, ButtonVariant, Carousel, Checkbox, CheckboxColor, CheckboxProps, CheckboxSize, ClickOutsideDiv, ClickOutsideDivProps, Code, CodeBlock, CodeBlockProps, CodeCompAttributes, CodeDefault, CodeHighlighted, type CodeLanguage, CollapsibleTable, CollapsibleTableProps, Command, CommandRoot, Container, ContainerBackground, ContainerBorderColor, ContainerGap, ContainerPadding, ContainerProps, ContainerRoundedSize, ContainerSeparator, ContainerTransparency, ContentEditableTextArea, ContentEditableTextAreaHandle, ContentEditableTextAreaProps, ContentEditor, ContentEditorInput, ContentEditorInputProps, ContentEditorProps, ContentEditorTextArea, ContentEditorTextAreaProps, ContentSelector, CopyButton, CopyToClipboard, CopyToClipboardProps, type CreateEditorUploadFnOptions, DesktopNavbar, DesktopThemeSwitcher, Detail, DetailProps, DictionaryCreationForm, DictionaryEditor, DictionaryFieldEditor, DiscordLogo, DotPattern, DropDown, DropDownAlign, DropDownProps, DropDownType, DropDownYAlign, EditableFieldInput, EditableFieldTextArea, ExpandCollapse, ExpandCollapseProps, FacebookLogo, FileList, FileListProps, Flag, flags_d_exports as Flags, Footer, FooterLink, Form, AutoSizedTextAreaElement as FormAutoSizedTextArea, Button as FormButton, CheckboxElement as FormCheckbox, FormControl, FormDescription, EditableFieldInputElement as FormEditableFieldInput, EditableFieldTextAreaElement as FormEditableFieldTextArea, FormElement, FormField, InputElement as FormInput, InputPasswordElement as FormInputPassword, FormItem, FormLabelLayout as FormLabel, FormMessage, MultiSelectElement as FormMultiSelect, OTPElement as FormOTP, SearchInputElement as FormSearchInput, SelectElement as FormSelect, SwitchSelectorElement as FormSwitchSelector, TextAreaElement as FormTextArea, type FormWebMCPProps, GitHubLogo, GitLabLogo, GoogleLogo, GridDistortionPattern, GridPattern, H1, H2, H3, H4, H5, H6, HTMLRenderer, HeadingProps, HeightResizer, HideShow, HideShowProps, Hr, IDE, IDEProps, InformationTag, Input, InputIndicator, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, InputPassword, InputProps, InputSize, InputVariant, InstagramLogo, KeyList, KeyPathBreadcrumb, KeyboardScreenAdapter, KeyboardShortcut, KeyboardShortcutProps, KeyboardShortcutType, Label, LabelProps, LanguageBackground, LanguageSection, Link, LinkColor, LinkGroup, LinkProps, LinkRoundedSize, LinkSize, LinkUnderlined, LinkVariant, LinkedInLogo, Loader, LoaderProps, LocalCardList, LocaleSwitcher, LocaleSwitcherContent, LocaleSwitcherContentProps, LocaleSwitcherContentProvider, LocaleSwitcherProps, Logo, LogoTextOnly, LogoWithText, LogoWithTextBelow, MarkDownIframe, MarkdownEditor, type MarkdownEditorProps, MarkdownRenderer, MaxHeightSmoother, MaxWidthSmoother, MobileNavbar, MobileThemeSwitcher, Modal, ModalSize, Modes, MultiSelect, Navbar, NodeEditor, NodeEditorProps, NumberItemsSelector, NumberItemsSelectorProps, OTPInput, OTPInputContext, OTPInputProps, Pagination, PaginationProps, PaginationSize, PaginationVariant, PanelProps, type ParsedMarkdown, Popover, PopoverProps, PopoverStatic, PopoverType, PopoverXAlign, PopoverYAlign, PressableSpan, ProductHuntLogo, Radio, RadioColor, RadioProps, RadioSize, RenderProps, RightDrawer, SaveForm, SearchInput, Select, SelectContent, SelectContentPosition, SelectLabel, SelectSeparator, ShowingResultsNumberItems, ShowingResultsNumberItemsProps, SlotProps, SmartTable, SocialNetworks, Spotlight, Step, Steps, SwitchSelector, SwitchSelectorBaseProps, SwitchSelectorChoice, SwitchSelectorChoices, SwitchSelectorColor, SwitchSelectorProps, SwitchSelectorSize, Tab, TabItemProps, TabProps, TabSelector, TabSelectorColor, TabSelectorItemProps, TabSelectorProps, Table, TableProps, Tag, TagBackground, TagBorder, TagColor, TagRoundedSize, TagSize, Td, TechLogo, type TechLogoName, techLogos_d_exports as TechLogos, Terminal, TerminalProps, TextArea, TextAreaProps, TextEditor, TextEditorContainer, TextEditorProps, Th, TiktokLogo, Toast, ToastAction, ToastActionElement, ToastClose, ToastDescription, ToastProps, ToastProvider, ToastTitle, ToastViewport, Toaster, Tr, TriggerProps, type UploadImageFn, VersionSwitcher, VersionSwitcherProps, VersionSwitcherProvider, VerticalSwitchSelector, VerticalSwitchSelectorProps, WithResizer, XLogo, YoutubeLogo, badgeVariants, baseMarkdownComponents, buttonVariants, checkIsExternalLink, checkboxVariants, choiceVariant, containerVariants, createEditorUploadFn, defaultChoices, drawerManager, getCapitals, getFormWebMCPAttributes, getIntlayerHTMLOptions, getIntlayerMarkdownOptions, getYoutubeEmbedUrl, getYoutubeVideoId, getYoutubeWatchUrl, indicatorVariant, inputSlotVariants, inputVariants, isTextChildren, linkVariants, paginationVariants, radioVariants, reducer, shikiWrapperClassName, switchSelectorVariant, toast, toastVariants, traceKeys, useContentEditable, useCopyToClipboard, useForm, useFormField, useIsRightDrawerOpen, useLocaleSwitcherContent, usePasswordManagerBadge, usePopoverIds, usePrevious, useRightDrawer, useRightDrawerActions, useToast, useVersionSwitcher };
|
|
@@ -7,10 +7,12 @@ import { useIsMounted } from "./useIsMounted.js";
|
|
|
7
7
|
import { useKeyboardDetector } from "./useKeyboardDetector.js";
|
|
8
8
|
import { NO_HIGHLIGHTED_INDEX, UseListKeyboardNavigationProps, useListKeyboardNavigation } from "./useListKeyboardNavigation.js";
|
|
9
9
|
import { usePersistedStore } from "./usePersistedStore.js";
|
|
10
|
+
import { UseRemoteMcpToolsOptions, useRemoteMcpTools } from "./useRemoteMcpTools.js";
|
|
10
11
|
import { useScreenWidth } from "./useScreenWidth.js";
|
|
11
12
|
import { useScrollBlockage } from "./useScrollBlockage/index.js";
|
|
12
13
|
import { useScrollDetection } from "./useScrollDetection.js";
|
|
13
14
|
import { useScrollY } from "./useScrollY.js";
|
|
14
15
|
import { useSearch } from "./useSearch.js";
|
|
15
16
|
import { StickToBottomRefs, useStickToBottom } from "./useStickToBottom.js";
|
|
16
|
-
|
|
17
|
+
import { AnyWebMCPTool, useWebMCPTools } from "./useWebMCPTools.js";
|
|
18
|
+
export { AnyWebMCPTool, DeviceState, HorizontalSwipeConfig, HorizontalSwipeHook, ItemSelectorOrientation, NO_HIGHLIGHTED_INDEX, SizeType, StickToBottomRefs, UseListKeyboardNavigationProps, UseRemoteMcpToolsOptions, calculateIsMobile, checkIsIOS, checkIsIphoneOrSafariDevice, checkIsMac, checkIsMobileScreen, checkIsMobileUserAgent, getBreakpointFromSize, useDevice, useGetElementById, useGetElementOrWindow, useHorizontalSwipe, useIsMounted, useItemSelector, useKeyboardDetector, useListKeyboardNavigation, usePersistedStore, useRemoteMcpTools, useScreenWidth, useScrollBlockage, useScrollDetection, useScrollY, useSearch, useStickToBottom, useWebMCPTools };
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { WebMCPTool } from "../webmcp/types.js";
|
|
2
|
+
import { CreateRemoteMcpToolsOptions } from "../webmcp/createRemoteMcpTools.js";
|
|
3
|
+
//#region src/hooks/useRemoteMcpTools.d.ts
|
|
4
|
+
export type UseRemoteMcpToolsOptions = Partial<Omit<CreateRemoteMcpToolsOptions, 'signal'>>;
|
|
5
|
+
/**
|
|
6
|
+
* Bridges the tools of a remote MCP server into the page, so an agent in the
|
|
7
|
+
* browser gets the same retrieval an IDE agent has, without the page
|
|
8
|
+
* re-implementing them.
|
|
9
|
+
*
|
|
10
|
+
* Defaults to the documentation tools of the Intlayer MCP server. Discovery
|
|
11
|
+
* runs once per `serverUrl`; the other options are read at that moment.
|
|
12
|
+
*
|
|
13
|
+
* @returns The wrapped tools, empty until discovery completes or when no
|
|
14
|
+
* browser agent could use them.
|
|
15
|
+
*/
|
|
16
|
+
export declare const useRemoteMcpTools: (options?: UseRemoteMcpToolsOptions) => WebMCPTool[];
|
|
17
|
+
//#endregion
|
|
18
|
+
//# sourceMappingURL=useRemoteMcpTools.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useRemoteMcpTools.d.ts","names":[],"sources":["../../../src/hooks/useRemoteMcpTools.ts"],"mappings":";;;YA8BY,2BAA2B,QACrC,KAAK;;;;;;;;;;;;qBAcM,oBAAiB,UACnB,6BACR"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { WebMCPTool } from "../webmcp/types.js";
|
|
2
|
+
//#region src/hooks/useWebMCPTools.d.ts
|
|
3
|
+
/**
|
|
4
|
+
* A tool of any input type. `never` is assignable from every input, so tools
|
|
5
|
+
* declared with a precise input type fit in one list; the browser hands each
|
|
6
|
+
* `execute` the object it parsed from the agent's JSON.
|
|
7
|
+
*/
|
|
8
|
+
export type AnyWebMCPTool = WebMCPTool<never>;
|
|
9
|
+
/**
|
|
10
|
+
* Exposes tools to browser agents for as long as the calling component is
|
|
11
|
+
* mounted, which scopes page-specific tools (a formatter, a scanner) to the
|
|
12
|
+
* page they belong to.
|
|
13
|
+
*
|
|
14
|
+
* Registration happens once per distinct tool set; `execute` handlers are
|
|
15
|
+
* read through a ref, so tools may close over fresh React state without being
|
|
16
|
+
* re-registered on every render. Renders nothing on the server.
|
|
17
|
+
*
|
|
18
|
+
* @param tools - Tools to expose while mounted.
|
|
19
|
+
*/
|
|
20
|
+
export declare const useWebMCPTools: (tools: AnyWebMCPTool[]) => void;
|
|
21
|
+
//#endregion
|
|
22
|
+
//# sourceMappingURL=useWebMCPTools.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useWebMCPTools.d.ts","names":[],"sources":["../../../src/hooks/useWebMCPTools.ts"],"mappings":";;;;;;;YAWY,gBAAgB;;;;;;;;;;;;qBAwBf,iBAAc,OAAW"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","names":[],"sources":["../../../src/libs/auth.ts"],"mappings":";;
|
|
1
|
+
{"version":3,"file":"auth.d.ts","names":[],"sources":["../../../src/libs/auth.ts"],"mappings":";;cAaM,gBAAa;KAwBd,aAAa,kBAAkB;iBAEnB;EACf,qBAAqB;EACrB,aAAa;EACb,aAAa;EACb,SAAS;EACT,cAAc;EACd,YAAY;EACZ,uBAAuB;EACvB,6BAA6B;EAC7B,eAAe;EACf,oBAAoB;EACpB,YAAY;EACZ,gBAAgB;EAChB,uBAAuB;EACvB,aAAa;EACb,YAAY;EACZ,eAAe;EACf,gBAAgB;EAChB,qBAAqB;EACrB,cAAc;EACd,eAAe;EACf,cAAc;EACd,gBAAgB;EAChB,aAAa;EACb,YAAY;EACZ,cAAc;EACd,iBAAiB;EACjB,kBAAkB;EAClB,YAAY;EACZ,kBAAkB;EAClB,YAAY;EACZ,eAAe;EACf,eAAe;EACf,oBAAoB;EACpB,kBAEE;IAAS;IAAe;;EAE1B,aAAa;EACb,wBAAwB;EACxB,oBAAoB;IAAQ;QAAyB;EACrD,WAAW;EACX,oBAAoB;EACpB,kBAAkB;EAClB,qBAAqB;;qBAGV,aAAU,iBACJ,KAAK,8BACrB"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { WebMCPJsonSchema, WebMCPTool, WebMCPToolAnnotations } from "./types.js";
|
|
2
|
+
//#region src/webmcp/createRemoteMcpTools.d.ts
|
|
3
|
+
/** A tool as described by an MCP server's `tools/list` response. */
|
|
4
|
+
export type RemoteMcpToolDescriptor = {
|
|
5
|
+
name: string;
|
|
6
|
+
title?: string;
|
|
7
|
+
description?: string;
|
|
8
|
+
inputSchema?: WebMCPJsonSchema;
|
|
9
|
+
annotations?: WebMCPToolAnnotations;
|
|
10
|
+
};
|
|
11
|
+
/** Text-bearing entry of an MCP `tools/call` result. */
|
|
12
|
+
type RemoteMcpContent = {
|
|
13
|
+
type: string;
|
|
14
|
+
text?: string;
|
|
15
|
+
};
|
|
16
|
+
type RemoteMcpToolCallResult = {
|
|
17
|
+
content?: RemoteMcpContent[];
|
|
18
|
+
isError?: boolean;
|
|
19
|
+
};
|
|
20
|
+
export type CreateRemoteMcpToolsOptions = {
|
|
21
|
+
/** Streamable-HTTP endpoint of the MCP server (`https://mcp.intlayer.org`). */
|
|
22
|
+
serverUrl: string;
|
|
23
|
+
/**
|
|
24
|
+
* Keeps only the tools worth exposing to a browser agent. Defaults to
|
|
25
|
+
* read-only tools, which excludes anything needing credentials.
|
|
26
|
+
*/
|
|
27
|
+
filter?: (tool: RemoteMcpToolDescriptor) => boolean;
|
|
28
|
+
/** Prepended to every tool name to avoid collisions with page tools. */
|
|
29
|
+
namePrefix?: string;
|
|
30
|
+
/**
|
|
31
|
+
* Rewrites a server tool name before it is exposed, e.g. to camelCase a
|
|
32
|
+
* kebab-case name. The server still receives the original name.
|
|
33
|
+
*/
|
|
34
|
+
renameTool?: (name: string) => string;
|
|
35
|
+
/** Aborts the discovery request. */
|
|
36
|
+
signal?: AbortSignal;
|
|
37
|
+
/** Injectable for tests. Defaults to the global `fetch`. */
|
|
38
|
+
fetch?: typeof globalThis.fetch;
|
|
39
|
+
};
|
|
40
|
+
/** Flattens an MCP tool result into the text an agent can read. */
|
|
41
|
+
export declare const formatRemoteMcpResult: (result: RemoteMcpToolCallResult) => string;
|
|
42
|
+
/**
|
|
43
|
+
* Discovers the tools of a remote MCP server and wraps each as a WebMCP tool
|
|
44
|
+
* forwarding its calls, so a page can expose an existing MCP server (the
|
|
45
|
+
* Intlayer documentation server, for instance) to browser agents without
|
|
46
|
+
* re-implementing its tools.
|
|
47
|
+
*
|
|
48
|
+
* @returns The wrapped tools, ready for `registerWebMCPTools`.
|
|
49
|
+
*/
|
|
50
|
+
export declare const createRemoteMcpTools: ({ serverUrl, filter, namePrefix, renameTool, signal, fetch: fetchImplementation }: CreateRemoteMcpToolsOptions) => Promise<WebMCPTool[]>;
|
|
51
|
+
//#endregion
|
|
52
|
+
//# sourceMappingURL=createRemoteMcpTools.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createRemoteMcpTools.d.ts","names":[],"sources":["../../../src/webmcp/createRemoteMcpTools.ts"],"mappings":";;;YAOY;EACV;EACA;EACA;EACA,cAAc;EACd,cAAc;;;KAIX;EAAqB;EAAc;;KAEnC;EACH,UAAU;EACV;;YAUU;;EAEV;;;;;EAKA,UAAU,MAAM;;EAEhB;;;;;EAKA,cAAc;;EAEd,SAAS;;EAET,eAAe,WAAW;;;qBAgDf,wBAAqB,QACxB;;;;;;;;;qBAsBG,yBAAoB,WAAA,QAAA,YAAA,YAAA,QAAA,OAAA,uBAO9B,gCAA8B,QAAQ"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ModelContext } from "./types.js";
|
|
2
|
+
//#region src/webmcp/getModelContext.d.ts
|
|
3
|
+
/**
|
|
4
|
+
* Resolves the WebMCP entry point exposed by the current browser, if any.
|
|
5
|
+
*
|
|
6
|
+
* Candidates are probed in order: `navigator.modelContextTesting` (Chrome with
|
|
7
|
+
* the `#enable-webmcp-testing` flag), `navigator.modelContext` (Chrome early
|
|
8
|
+
* preview / origin trial) and `document.modelContext` (W3C draft). Only an
|
|
9
|
+
* object able to register tools is returned, so callers can rely on
|
|
10
|
+
* `registerTool` being present.
|
|
11
|
+
*
|
|
12
|
+
* @returns The model context, or `null` outside a supporting browser.
|
|
13
|
+
*/
|
|
14
|
+
export declare const getModelContext: () => ModelContext | null;
|
|
15
|
+
/** Whether the current browser exposes a usable WebMCP entry point. */
|
|
16
|
+
export declare const isWebMCPAvailable: () => boolean;
|
|
17
|
+
//#endregion
|
|
18
|
+
//# sourceMappingURL=getModelContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getModelContext.d.ts","names":[],"sources":["../../../src/webmcp/getModelContext.ts"],"mappings":";;;;;;;;;;;;;qBAaa,uBAAsB;;qBAuBtB"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ModelContext, ModelContextHost, WebMCPJsonSchema, WebMCPRegisterToolOptions, WebMCPTool, WebMCPToolAnnotations, WebMCPToolExecuteOptions, WebMCPToolResult } from "./types.js";
|
|
2
|
+
import { CreateRemoteMcpToolsOptions, RemoteMcpToolDescriptor, createRemoteMcpTools, formatRemoteMcpResult } from "./createRemoteMcpTools.js";
|
|
3
|
+
import { getModelContext, isWebMCPAvailable } from "./getModelContext.js";
|
|
4
|
+
import { formatToolResult, registerWebMCPTools } from "./registerWebMCPTools.js";
|
|
5
|
+
export { type CreateRemoteMcpToolsOptions, type ModelContext, type ModelContextHost, type RemoteMcpToolDescriptor, type WebMCPJsonSchema, type WebMCPRegisterToolOptions, type WebMCPTool, type WebMCPToolAnnotations, type WebMCPToolExecuteOptions, type WebMCPToolResult, createRemoteMcpTools, formatRemoteMcpResult, formatToolResult, getModelContext, isWebMCPAvailable, registerWebMCPTools };
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { ModelContext, WebMCPTool, WebMCPToolResult } from "./types.js";
|
|
2
|
+
//#region src/webmcp/registerWebMCPTools.d.ts
|
|
3
|
+
/** Serializes a tool result the way the browser would, for logging and errors. */
|
|
4
|
+
export declare const formatToolResult: (result: WebMCPToolResult) => string;
|
|
5
|
+
/**
|
|
6
|
+
* Registers tools with the WebMCP API and returns a function undoing it.
|
|
7
|
+
*
|
|
8
|
+
* Unregistration goes through `unregisterTool(name)` when the browser has it,
|
|
9
|
+
* and through the `AbortSignal` handed to `registerTool` otherwise. Without a
|
|
10
|
+
* model context the call is a no-op returning a no-op, so callers do not need
|
|
11
|
+
* to feature-detect.
|
|
12
|
+
*
|
|
13
|
+
* @param tools - Tools to expose. Names must be unique within the page.
|
|
14
|
+
* @param modelContext - Defaults to the entry point of the current browser.
|
|
15
|
+
* @returns A cleanup function removing every tool this call registered.
|
|
16
|
+
*/
|
|
17
|
+
export declare const registerWebMCPTools: (tools: WebMCPTool<never>[], modelContext?: ModelContext | null) => (() => void);
|
|
18
|
+
//#endregion
|
|
19
|
+
//# sourceMappingURL=registerWebMCPTools.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registerWebMCPTools.d.ts","names":[],"sources":["../../../src/webmcp/registerWebMCPTools.ts"],"mappings":";;;qBASa,mBAAgB,QAAY;;;;;;;;;;;;;qBA+B5B,sBAAmB,OACvB,qBAAmB,eACZ"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
//#region src/webmcp/types.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* Minimal typings for the WebMCP browser API.
|
|
4
|
+
*
|
|
5
|
+
* The API is still evolving: Chrome's early preview exposes
|
|
6
|
+
* `navigator.modelContext` (with `registerTool` / `unregisterTool` /
|
|
7
|
+
* `provideContext` / `clearContext`), the `chrome://flags/#enable-webmcp-testing`
|
|
8
|
+
* flag adds `navigator.modelContextTesting`, and the W3C draft moves the entry
|
|
9
|
+
* point to `document.modelContext` with an `AbortSignal` based unregistration.
|
|
10
|
+
* Every member is optional so a single adapter can drive all three shapes.
|
|
11
|
+
*
|
|
12
|
+
* @see https://webmachinelearning.github.io/webmcp/
|
|
13
|
+
*/
|
|
14
|
+
/** JSON Schema describing a tool's input object. */
|
|
15
|
+
export type WebMCPJsonSchema = Record<string, unknown>;
|
|
16
|
+
/**
|
|
17
|
+
* Hints letting an agent decide whether a call needs user confirmation.
|
|
18
|
+
*
|
|
19
|
+
* `readOnlyHint`, `untrustedContentHint` and `consequentialHint` are the
|
|
20
|
+
* WebMCP ones; the rest mirror MCP tool annotations so a bridged MCP tool
|
|
21
|
+
* keeps its hints.
|
|
22
|
+
*/
|
|
23
|
+
export type WebMCPToolAnnotations = {
|
|
24
|
+
/** The tool does not modify anything. */
|
|
25
|
+
readOnlyHint?: boolean;
|
|
26
|
+
/** The result carries content the page does not control (user data, remote text). */
|
|
27
|
+
untrustedContentHint?: boolean;
|
|
28
|
+
/** The tool performs an action that is hard to undo. */
|
|
29
|
+
consequentialHint?: boolean;
|
|
30
|
+
/** The tool may delete or irreversibly alter data (MCP). */
|
|
31
|
+
destructiveHint?: boolean;
|
|
32
|
+
/** Repeating the call with the same input has no additional effect (MCP). */
|
|
33
|
+
idempotentHint?: boolean;
|
|
34
|
+
/** The tool reaches beyond the page, e.g. a third-party website (MCP). */
|
|
35
|
+
openWorldHint?: boolean;
|
|
36
|
+
};
|
|
37
|
+
export type WebMCPToolExecuteOptions = {
|
|
38
|
+
signal?: AbortSignal;
|
|
39
|
+
};
|
|
40
|
+
/**
|
|
41
|
+
* The value returned by a tool. Strings are handed to the agent verbatim,
|
|
42
|
+
* anything else is JSON-serialized by the browser.
|
|
43
|
+
*/
|
|
44
|
+
export type WebMCPToolResult = string | Record<string, unknown> | unknown[];
|
|
45
|
+
/** A tool an agent can invoke through the WebMCP browser API. */
|
|
46
|
+
export type WebMCPTool<TInput = Record<string, unknown>> = {
|
|
47
|
+
/** 1–128 chars, ASCII alphanumeric plus `_`, `-` and `.`. */
|
|
48
|
+
name: string;
|
|
49
|
+
title?: string;
|
|
50
|
+
description: string;
|
|
51
|
+
inputSchema?: WebMCPJsonSchema;
|
|
52
|
+
annotations?: WebMCPToolAnnotations;
|
|
53
|
+
execute: (input: TInput, options?: WebMCPToolExecuteOptions) => Promise<WebMCPToolResult> | WebMCPToolResult;
|
|
54
|
+
};
|
|
55
|
+
export type WebMCPRegisterToolOptions = {
|
|
56
|
+
/** Aborting unregisters the tool (W3C draft shape). */
|
|
57
|
+
signal?: AbortSignal;
|
|
58
|
+
};
|
|
59
|
+
/** The subset of the `ModelContext` interface this package relies on. */
|
|
60
|
+
export type ModelContext = {
|
|
61
|
+
registerTool?: (tool: WebMCPTool<never>, options?: WebMCPRegisterToolOptions) => void | Promise<void>;
|
|
62
|
+
unregisterTool?: (name: string) => void | Promise<void>;
|
|
63
|
+
provideContext?: (context: {
|
|
64
|
+
tools: WebMCPTool<never>[];
|
|
65
|
+
}) => void;
|
|
66
|
+
clearContext?: () => void;
|
|
67
|
+
};
|
|
68
|
+
/** `Navigator` and `Document` as extended by the WebMCP proposals. */
|
|
69
|
+
export type ModelContextHost = {
|
|
70
|
+
modelContextTesting?: ModelContext;
|
|
71
|
+
modelContext?: ModelContext;
|
|
72
|
+
};
|
|
73
|
+
//#endregion
|
|
74
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","names":[],"sources":["../../../src/webmcp/types.ts"],"mappings":";;;;;;;;;;;;;;YAcY,mBAAmB;;;;;;;;YASnB;;EAEV;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;YAGU;EACV,SAAS;;;;;;YAOC,4BAA4B;;YAG5B,WAAW,SAAS;;EAE9B;EACA;EACA;EACA,cAAc;EACd,cAAc;EACd,UACE,OAAO,QACP,UAAU,6BACP,QAAQ,oBAAoB;;YAGvB;;EAEV,SAAS;;;YAIC;EACV,gBACE,MAAM,mBACN,UAAU,qCACA;EACZ,kBAAkB,wBAAwB;EAC1C,kBAAkB;IAAW,OAAO;;EACpC;;;YAIU;EACV,sBAAsB;EACtB,eAAe"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@intlayer/design-system",
|
|
3
|
-
"version": "9.5.
|
|
3
|
+
"version": "9.5.4-canary.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Intlayer design system, including UI components used in the Intlayer editor, website, and visual editor/CMS.",
|
|
6
6
|
"keywords": [
|
|
@@ -68,6 +68,11 @@
|
|
|
68
68
|
"import": "./dist/esm/routes.mjs",
|
|
69
69
|
"default": "./dist/esm/routes.mjs"
|
|
70
70
|
},
|
|
71
|
+
"./webmcp": {
|
|
72
|
+
"types": "./dist/types/webmcp/index.d.ts",
|
|
73
|
+
"import": "./dist/esm/webmcp/index.mjs",
|
|
74
|
+
"default": "./dist/esm/webmcp/index.mjs"
|
|
75
|
+
},
|
|
71
76
|
"./structured-data": {
|
|
72
77
|
"types": "./dist/types/structured-data/index.d.ts",
|
|
73
78
|
"import": "./dist/esm/structured-data/index.mjs",
|
|
@@ -444,6 +449,7 @@
|
|
|
444
449
|
"preview": "bun --bun vite preview",
|
|
445
450
|
"publish": "bun publish || true",
|
|
446
451
|
"publish:canary": "bun publish --access public --tag canary || true",
|
|
452
|
+
"publish:ci": "bun ../../../scripts/publish-package.mjs",
|
|
447
453
|
"publish:latest": "bun publish --access public --tag latest || true",
|
|
448
454
|
"start": "bun storybook -p 6006 --no-open --host 0.0.0.0",
|
|
449
455
|
"start:serve": "bun x serve ./storybook-static -l 6006",
|
|
@@ -455,23 +461,23 @@
|
|
|
455
461
|
"typecheck_": "tsc --noEmit --project tsconfig.types.json"
|
|
456
462
|
},
|
|
457
463
|
"dependencies": {
|
|
458
|
-
"@better-auth/passkey": "1.7.
|
|
459
|
-
"@better-auth/sso": "1.7.
|
|
460
|
-
"@intlayer/api": "9.5.
|
|
461
|
-
"@intlayer/config": "9.5.
|
|
462
|
-
"@intlayer/core": "9.5.
|
|
463
|
-
"@intlayer/dictionaries-entry": "9.5.
|
|
464
|
-
"@intlayer/editor-react": "9.5.
|
|
465
|
-
"@intlayer/engine": "9.5.
|
|
466
|
-
"@intlayer/types": "9.5.
|
|
464
|
+
"@better-auth/passkey": "1.7.5",
|
|
465
|
+
"@better-auth/sso": "1.7.5",
|
|
466
|
+
"@intlayer/api": "9.5.4-canary.0",
|
|
467
|
+
"@intlayer/config": "9.5.4-canary.0",
|
|
468
|
+
"@intlayer/core": "9.5.4-canary.0",
|
|
469
|
+
"@intlayer/dictionaries-entry": "9.5.4-canary.0",
|
|
470
|
+
"@intlayer/editor-react": "9.5.4-canary.0",
|
|
471
|
+
"@intlayer/engine": "9.5.4-canary.0",
|
|
472
|
+
"@intlayer/types": "9.5.4-canary.0",
|
|
467
473
|
"@radix-ui/react-dialog": "1.1.23",
|
|
468
474
|
"@radix-ui/react-select": "2.3.7",
|
|
469
475
|
"@radix-ui/react-slot": "1.3.3",
|
|
470
476
|
"@radix-ui/react-toast": "1.2.23",
|
|
471
477
|
"@tailwindcss/aspect-ratio": "0.4.2",
|
|
472
|
-
"@tanstack/query-async-storage-persister": "5.
|
|
473
|
-
"@tanstack/react-query-persist-client": "5.
|
|
474
|
-
"@tanstack/react-virtual": "3.14.
|
|
478
|
+
"@tanstack/query-async-storage-persister": "5.103.1",
|
|
479
|
+
"@tanstack/react-query-persist-client": "5.103.1",
|
|
480
|
+
"@tanstack/react-virtual": "3.14.13",
|
|
475
481
|
"@tiptap/core": "3.31.3",
|
|
476
482
|
"@tiptap/extension-character-count": "3.31.3",
|
|
477
483
|
"@tiptap/extension-code-block": "3.31.3",
|
|
@@ -490,22 +496,22 @@
|
|
|
490
496
|
"@tiptap/react": "3.31.3",
|
|
491
497
|
"@tiptap/starter-kit": "3.31.3",
|
|
492
498
|
"@tiptap/suggestion": "3.31.3",
|
|
493
|
-
"better-auth": "1.7.
|
|
499
|
+
"better-auth": "1.7.5",
|
|
494
500
|
"class-variance-authority": "0.7.1",
|
|
495
501
|
"cmdk": "1.1.1",
|
|
496
502
|
"cnfast": "0.2.0",
|
|
497
503
|
"defu": "6.1.7",
|
|
498
504
|
"dompurify": "3.4.15",
|
|
499
|
-
"isomorphic-dompurify": "4.
|
|
500
|
-
"react-intlayer": "9.5.
|
|
505
|
+
"isomorphic-dompurify": "4.2.0",
|
|
506
|
+
"react-intlayer": "9.5.4-canary.0",
|
|
501
507
|
"rollup-preserve-directives": "1.1.3",
|
|
502
508
|
"tiptap-extension-global-drag-handle": "^0.1.18",
|
|
503
509
|
"tiptap-markdown": "^0.9.0",
|
|
504
510
|
"tunnel-rat": "^0.1.2",
|
|
505
|
-
"zod": "4.6.
|
|
511
|
+
"zod": "4.6.5"
|
|
506
512
|
},
|
|
507
513
|
"devDependencies": {
|
|
508
|
-
"@intlayer/backend": "9.5.
|
|
514
|
+
"@intlayer/backend": "9.5.4-canary.0",
|
|
509
515
|
"@shikijs/core": "4.4.3",
|
|
510
516
|
"@shikijs/engine-oniguruma": "4.4.3",
|
|
511
517
|
"@shikijs/transformers": "4.4.3",
|
|
@@ -532,35 +538,35 @@
|
|
|
532
538
|
"@utils/ts-config": "1.0.4",
|
|
533
539
|
"@utils/ts-config-types": "1.0.4",
|
|
534
540
|
"fast-glob": "3.3.3",
|
|
535
|
-
"intlayer": "9.5.
|
|
541
|
+
"intlayer": "9.5.4-canary.0",
|
|
536
542
|
"rimraf": "6.1.3",
|
|
537
543
|
"shiki": "4.4.3",
|
|
538
544
|
"storybook": "10.6.0",
|
|
539
545
|
"tsdown": "0.23.0",
|
|
540
546
|
"typescript": "7.0.2",
|
|
541
547
|
"vite": "8.3.0",
|
|
542
|
-
"vite-intlayer": "9.5.
|
|
548
|
+
"vite-intlayer": "9.5.4-canary.0",
|
|
543
549
|
"vite-plugin-dts": "5.1.0",
|
|
544
|
-
"vitest": "5.0.
|
|
550
|
+
"vitest": "5.0.1"
|
|
545
551
|
},
|
|
546
552
|
"peerDependencies": {
|
|
547
|
-
"@better-fetch/fetch": "1.3.
|
|
553
|
+
"@better-fetch/fetch": "1.3.2",
|
|
548
554
|
"@hookform/resolvers": "5.9.1",
|
|
549
|
-
"@intlayer/backend": "9.5.
|
|
555
|
+
"@intlayer/backend": "9.5.4-canary.0",
|
|
550
556
|
"@monaco-editor/react": "4.7.0",
|
|
551
557
|
"@shikijs/core": "4.4.3",
|
|
552
558
|
"@shikijs/engine-oniguruma": "4.4.3",
|
|
553
559
|
"@shikijs/transformers": "4.4.3",
|
|
554
|
-
"@tanstack/react-query": "5.
|
|
555
|
-
"@tanstack/react-query-devtools": "5.
|
|
556
|
-
"framer-motion": "13.
|
|
560
|
+
"@tanstack/react-query": "5.103.1",
|
|
561
|
+
"@tanstack/react-query-devtools": "5.103.1",
|
|
562
|
+
"framer-motion": "13.4.0",
|
|
557
563
|
"fuse.js": "7.5.0",
|
|
558
|
-
"intlayer": "9.5.
|
|
559
|
-
"lucide-react": "1.
|
|
564
|
+
"intlayer": "9.5.4-canary.0",
|
|
565
|
+
"lucide-react": "1.47.0",
|
|
560
566
|
"react": ">=16.0.0",
|
|
561
567
|
"react-dom": ">=16.0.0",
|
|
562
|
-
"react-hook-form": "7.
|
|
563
|
-
"react-intlayer": "9.5.
|
|
568
|
+
"react-hook-form": "7.88.0",
|
|
569
|
+
"react-intlayer": "9.5.4-canary.0",
|
|
564
570
|
"shiki": "4.4.3",
|
|
565
571
|
"tailwindcss": "4.3.3"
|
|
566
572
|
},
|