@bitrise/bitkit-v2 0.3.247 → 0.3.249

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.
@@ -28,7 +28,7 @@ export interface BitkitMenuGroupProps extends MenuItemGroupProps {
28
28
  }
29
29
  declare const BitkitActionMenu: {
30
30
  Root: {
31
- ({ trigger, children, ...props }: BitkitMenuRootProps): import("react").JSX.Element;
31
+ ({ trigger, children, size, ...props }: BitkitMenuRootProps): import("react").JSX.Element;
32
32
  displayName: string;
33
33
  };
34
34
  Separator: {
@@ -7,14 +7,15 @@ import { Menu, useMenuStyles } from "@chakra-ui/react/menu";
7
7
  import { Separator } from "@chakra-ui/react/separator";
8
8
  //#region lib/components/BitkitActionMenu/BitkitActionMenu.tsx
9
9
  var BitkitMenuContext = createContext("lg");
10
- var Root = ({ trigger, children, ...props }) => {
10
+ var Root = ({ trigger, children, size = "lg", ...props }) => {
11
11
  return /* @__PURE__ */ jsxs(Menu.Root, {
12
+ size,
12
13
  ...props,
13
14
  children: [/* @__PURE__ */ jsx(Menu.Trigger, {
14
15
  asChild: true,
15
16
  children: trigger
16
17
  }), /* @__PURE__ */ jsx(Portal, { children: /* @__PURE__ */ jsx(Menu.Positioner, { children: /* @__PURE__ */ jsx(BitkitMenuContext.Provider, {
17
- value: props.size,
18
+ value: size,
18
19
  children: /* @__PURE__ */ jsx(Menu.Content, { children })
19
20
  }) }) })]
20
21
  });
@@ -1 +1 @@
1
- {"version":3,"file":"BitkitActionMenu.js","names":[],"sources":["../../../lib/components/BitkitActionMenu/BitkitActionMenu.tsx"],"sourcesContent":["import { Box } from '@chakra-ui/react/box';\nimport {\n Menu,\n type MenuItemGroupProps,\n type MenuItemProps,\n type MenuRootProps,\n useMenuStyles,\n} from '@chakra-ui/react/menu';\nimport { Portal } from '@chakra-ui/react/portal';\nimport { Separator as ChakraSeparator } from '@chakra-ui/react/separator';\nimport { Text } from '@chakra-ui/react/text';\nimport { createContext, forwardRef, type ReactNode, type Ref, useContext } from 'react';\n\nimport { type BitkitIconComponent } from '../../icons';\n\nconst BitkitMenuContext = createContext<MenuRootProps['size']>('lg');\n\ninterface BitkitMenuRootProps extends Omit<MenuRootProps, 'children'> {\n trigger: ReactNode;\n children?: ReactNode;\n}\n\nconst Root = ({ trigger, children, ...props }: BitkitMenuRootProps) => {\n return (\n <Menu.Root {...props}>\n <Menu.Trigger asChild>{trigger}</Menu.Trigger>\n <Portal>\n <Menu.Positioner>\n <BitkitMenuContext.Provider value={props.size}>\n <Menu.Content>{children}</Menu.Content>\n </BitkitMenuContext.Provider>\n </Menu.Positioner>\n </Portal>\n </Menu.Root>\n );\n};\nRoot.displayName = 'BitkitActionMenu.Root';\n\ninterface BitkitMenuItemCommonProps extends MenuItemProps {\n danger?: boolean;\n icon?: BitkitIconComponent;\n secondaryText?: ReactNode;\n}\n\ninterface BitkitMenuItemAsButtonProps extends BitkitMenuItemCommonProps {\n href?: undefined;\n isExternal?: undefined;\n rel?: undefined;\n target?: undefined;\n}\n\ninterface BitkitMenuItemAsAnchorProps extends BitkitMenuItemCommonProps {\n href: string;\n isExternal?: boolean;\n rel?: string;\n target?: string;\n}\n\nexport type BitkitMenuItemProps = BitkitMenuItemAsButtonProps | BitkitMenuItemAsAnchorProps;\n\nconst Item = forwardRef<HTMLElement, BitkitMenuItemProps>((props, ref) => {\n const { children, danger, icon: Icon, secondaryText } = props;\n const style = useMenuStyles();\n const menuCtx = useContext(BitkitMenuContext);\n\n const content = (\n <>\n {Icon && <Icon size={menuCtx === 'lg' ? '24' : '16'} />}\n <Box flex=\"1\">\n <Text>{children}</Text>\n {secondaryText && <Text css={style.itemHelper}>{secondaryText}</Text>}\n </Box>\n </>\n );\n\n if (props.href !== undefined) {\n const {\n children: _children,\n danger: _danger,\n href,\n icon: _icon,\n isExternal,\n rel,\n secondaryText: _secondaryText,\n target,\n ...rest\n } = props;\n const effectiveTarget = isExternal ? '_blank' : target;\n const effectiveRel = isExternal ? (rel ? `${rel} noreferrer noopener` : 'noreferrer noopener') : rel;\n return (\n <Menu.Item asChild data-danger={danger} {...rest}>\n <a ref={ref as Ref<HTMLAnchorElement>} href={href} rel={effectiveRel} target={effectiveTarget}>\n {content}\n </a>\n </Menu.Item>\n );\n }\n\n const { children: _children, danger: _danger, icon: _icon, secondaryText: _secondaryText, ...rest } = props;\n return (\n <Menu.Item data-danger={danger} ref={ref as Ref<HTMLDivElement>} {...rest}>\n {content}\n </Menu.Item>\n );\n});\nItem.displayName = 'BitkitActionMenu.Item';\n\nexport interface BitkitMenuGroupProps extends MenuItemGroupProps {\n label: ReactNode;\n}\nconst Group = forwardRef<HTMLDivElement, BitkitMenuGroupProps>(({ label, children, ...props }, ref) => {\n return (\n <Menu.ItemGroup ref={ref} {...props}>\n <Menu.ItemGroupLabel>\n <Text>{label}</Text>\n <ChakraSeparator flex=\"1\" />\n </Menu.ItemGroupLabel>\n {children}\n </Menu.ItemGroup>\n );\n});\nGroup.displayName = 'BitkitActionMenu.Group';\n\nconst Separator = () => {\n return <Menu.Separator />;\n};\nSeparator.displayName = 'BitkitActionMenu.Separator';\n\nconst BitkitActionMenu = {\n Root,\n Separator,\n Item,\n Group,\n};\n\nexport default BitkitActionMenu;\n"],"mappings":";;;;;;;;AAeA,IAAM,oBAAoB,cAAqC,IAAI;AAOnE,IAAM,QAAQ,EAAE,SAAS,UAAU,GAAG,YAAiC;CACrE,OACE,qBAAC,KAAK,MAAN;EAAW,GAAI;YAAf,CACE,oBAAC,KAAK,SAAN;GAAc,SAAA;aAAS;EAAsB,CAAA,GAC7C,oBAAC,QAAD,EAAA,UACE,oBAAC,KAAK,YAAN,EAAA,UACE,oBAAC,kBAAkB,UAAnB;GAA4B,OAAO,MAAM;aACvC,oBAAC,KAAK,SAAN,EAAe,SAAuB,CAAA;EACZ,CAAA,EACb,CAAA,EACX,CAAA,CACC;;AAEf;AACA,KAAK,cAAc;AAwBnB,IAAM,OAAO,YAA8C,OAAO,QAAQ;CACxE,MAAM,EAAE,UAAU,QAAQ,MAAM,MAAM,kBAAkB;CACxD,MAAM,QAAQ,cAAc;CAC5B,MAAM,UAAU,WAAW,iBAAiB;CAE5C,MAAM,UACJ,qBAAA,YAAA,EAAA,UAAA,CACG,QAAQ,oBAAC,MAAD,EAAM,MAAM,YAAY,OAAO,OAAO,KAAO,CAAA,GACtD,qBAAC,KAAD;EAAK,MAAK;YAAV,CACE,oBAAC,MAAD,EAAO,SAAe,CAAA,GACrB,iBAAiB,oBAAC,MAAD;GAAM,KAAK,MAAM;aAAa;EAAoB,CAAA,CACjE;GACL,EAAA,CAAA;CAGJ,IAAI,MAAM,SAAS,KAAA,GAAW;EAC5B,MAAM,EACJ,UAAU,WACV,QAAQ,SACR,MACA,MAAM,OACN,YACA,KACA,eAAe,gBACf,QACA,GAAG,SACD;EACJ,MAAM,kBAAkB,aAAa,WAAW;EAChD,MAAM,eAAe,aAAc,MAAM,GAAG,IAAI,wBAAwB,wBAAyB;EACjG,OACE,oBAAC,KAAK,MAAN;GAAW,SAAA;GAAQ,eAAa;GAAQ,GAAI;aAC1C,oBAAC,KAAD;IAAQ;IAAqC;IAAM,KAAK;IAAc,QAAQ;cAC3E;GACA,CAAA;EACM,CAAA;CAEf;CAEA,MAAM,EAAE,UAAU,WAAW,QAAQ,SAAS,MAAM,OAAO,eAAe,gBAAgB,GAAG,SAAS;CACtG,OACE,oBAAC,KAAK,MAAN;EAAW,eAAa;EAAa;EAA4B,GAAI;YAClE;CACQ,CAAA;AAEf,CAAC;AACD,KAAK,cAAc;AAKnB,IAAM,QAAQ,YAAkD,EAAE,OAAO,UAAU,GAAG,SAAS,QAAQ;CACrG,OACE,qBAAC,KAAK,WAAN;EAAqB;EAAK,GAAI;YAA9B,CACE,qBAAC,KAAK,gBAAN,EAAA,UAAA,CACE,oBAAC,MAAD,EAAA,UAAO,MAAY,CAAA,GACnB,oBAAC,WAAD,EAAiB,MAAK,IAAK,CAAA,CACR,EAAA,CAAA,GACpB,QACa;;AAEpB,CAAC;AACD,MAAM,cAAc;AAEpB,IAAM,oBAAkB;CACtB,OAAO,oBAAC,KAAK,WAAN,CAAiB,CAAA;AAC1B;AACA,YAAU,cAAc;AAExB,IAAM,mBAAmB;CACvB;CACA,WAAA;CACA;CACA;AACF"}
1
+ {"version":3,"file":"BitkitActionMenu.js","names":[],"sources":["../../../lib/components/BitkitActionMenu/BitkitActionMenu.tsx"],"sourcesContent":["import { Box } from '@chakra-ui/react/box';\nimport {\n Menu,\n type MenuItemGroupProps,\n type MenuItemProps,\n type MenuRootProps,\n useMenuStyles,\n} from '@chakra-ui/react/menu';\nimport { Portal } from '@chakra-ui/react/portal';\nimport { Separator as ChakraSeparator } from '@chakra-ui/react/separator';\nimport { Text } from '@chakra-ui/react/text';\nimport { createContext, forwardRef, type ReactNode, type Ref, useContext } from 'react';\n\nimport { type BitkitIconComponent } from '../../icons';\n\nconst BitkitMenuContext = createContext<MenuRootProps['size']>('lg');\n\ninterface BitkitMenuRootProps extends Omit<MenuRootProps, 'children'> {\n trigger: ReactNode;\n children?: ReactNode;\n}\n\nconst Root = ({ trigger, children, size = 'lg', ...props }: BitkitMenuRootProps) => {\n return (\n <Menu.Root size={size} {...props}>\n <Menu.Trigger asChild>{trigger}</Menu.Trigger>\n <Portal>\n <Menu.Positioner>\n <BitkitMenuContext.Provider value={size}>\n <Menu.Content>{children}</Menu.Content>\n </BitkitMenuContext.Provider>\n </Menu.Positioner>\n </Portal>\n </Menu.Root>\n );\n};\nRoot.displayName = 'BitkitActionMenu.Root';\n\ninterface BitkitMenuItemCommonProps extends MenuItemProps {\n danger?: boolean;\n icon?: BitkitIconComponent;\n secondaryText?: ReactNode;\n}\n\ninterface BitkitMenuItemAsButtonProps extends BitkitMenuItemCommonProps {\n href?: undefined;\n isExternal?: undefined;\n rel?: undefined;\n target?: undefined;\n}\n\ninterface BitkitMenuItemAsAnchorProps extends BitkitMenuItemCommonProps {\n href: string;\n isExternal?: boolean;\n rel?: string;\n target?: string;\n}\n\nexport type BitkitMenuItemProps = BitkitMenuItemAsButtonProps | BitkitMenuItemAsAnchorProps;\n\nconst Item = forwardRef<HTMLElement, BitkitMenuItemProps>((props, ref) => {\n const { children, danger, icon: Icon, secondaryText } = props;\n const style = useMenuStyles();\n const menuCtx = useContext(BitkitMenuContext);\n\n const content = (\n <>\n {Icon && <Icon size={menuCtx === 'lg' ? '24' : '16'} />}\n <Box flex=\"1\">\n <Text>{children}</Text>\n {secondaryText && <Text css={style.itemHelper}>{secondaryText}</Text>}\n </Box>\n </>\n );\n\n if (props.href !== undefined) {\n const {\n children: _children,\n danger: _danger,\n href,\n icon: _icon,\n isExternal,\n rel,\n secondaryText: _secondaryText,\n target,\n ...rest\n } = props;\n const effectiveTarget = isExternal ? '_blank' : target;\n const effectiveRel = isExternal ? (rel ? `${rel} noreferrer noopener` : 'noreferrer noopener') : rel;\n return (\n <Menu.Item asChild data-danger={danger} {...rest}>\n <a ref={ref as Ref<HTMLAnchorElement>} href={href} rel={effectiveRel} target={effectiveTarget}>\n {content}\n </a>\n </Menu.Item>\n );\n }\n\n const { children: _children, danger: _danger, icon: _icon, secondaryText: _secondaryText, ...rest } = props;\n return (\n <Menu.Item data-danger={danger} ref={ref as Ref<HTMLDivElement>} {...rest}>\n {content}\n </Menu.Item>\n );\n});\nItem.displayName = 'BitkitActionMenu.Item';\n\nexport interface BitkitMenuGroupProps extends MenuItemGroupProps {\n label: ReactNode;\n}\nconst Group = forwardRef<HTMLDivElement, BitkitMenuGroupProps>(({ label, children, ...props }, ref) => {\n return (\n <Menu.ItemGroup ref={ref} {...props}>\n <Menu.ItemGroupLabel>\n <Text>{label}</Text>\n <ChakraSeparator flex=\"1\" />\n </Menu.ItemGroupLabel>\n {children}\n </Menu.ItemGroup>\n );\n});\nGroup.displayName = 'BitkitActionMenu.Group';\n\nconst Separator = () => {\n return <Menu.Separator />;\n};\nSeparator.displayName = 'BitkitActionMenu.Separator';\n\nconst BitkitActionMenu = {\n Root,\n Separator,\n Item,\n Group,\n};\n\nexport default BitkitActionMenu;\n"],"mappings":";;;;;;;;AAeA,IAAM,oBAAoB,cAAqC,IAAI;AAOnE,IAAM,QAAQ,EAAE,SAAS,UAAU,OAAO,MAAM,GAAG,YAAiC;CAClF,OACE,qBAAC,KAAK,MAAN;EAAiB;EAAM,GAAI;YAA3B,CACE,oBAAC,KAAK,SAAN;GAAc,SAAA;aAAS;EAAsB,CAAA,GAC7C,oBAAC,QAAD,EAAA,UACE,oBAAC,KAAK,YAAN,EAAA,UACE,oBAAC,kBAAkB,UAAnB;GAA4B,OAAO;aACjC,oBAAC,KAAK,SAAN,EAAe,SAAuB,CAAA;EACZ,CAAA,EACb,CAAA,EACX,CAAA,CACC;;AAEf;AACA,KAAK,cAAc;AAwBnB,IAAM,OAAO,YAA8C,OAAO,QAAQ;CACxE,MAAM,EAAE,UAAU,QAAQ,MAAM,MAAM,kBAAkB;CACxD,MAAM,QAAQ,cAAc;CAC5B,MAAM,UAAU,WAAW,iBAAiB;CAE5C,MAAM,UACJ,qBAAA,YAAA,EAAA,UAAA,CACG,QAAQ,oBAAC,MAAD,EAAM,MAAM,YAAY,OAAO,OAAO,KAAO,CAAA,GACtD,qBAAC,KAAD;EAAK,MAAK;YAAV,CACE,oBAAC,MAAD,EAAO,SAAe,CAAA,GACrB,iBAAiB,oBAAC,MAAD;GAAM,KAAK,MAAM;aAAa;EAAoB,CAAA,CACjE;GACL,EAAA,CAAA;CAGJ,IAAI,MAAM,SAAS,KAAA,GAAW;EAC5B,MAAM,EACJ,UAAU,WACV,QAAQ,SACR,MACA,MAAM,OACN,YACA,KACA,eAAe,gBACf,QACA,GAAG,SACD;EACJ,MAAM,kBAAkB,aAAa,WAAW;EAChD,MAAM,eAAe,aAAc,MAAM,GAAG,IAAI,wBAAwB,wBAAyB;EACjG,OACE,oBAAC,KAAK,MAAN;GAAW,SAAA;GAAQ,eAAa;GAAQ,GAAI;aAC1C,oBAAC,KAAD;IAAQ;IAAqC;IAAM,KAAK;IAAc,QAAQ;cAC3E;GACA,CAAA;EACM,CAAA;CAEf;CAEA,MAAM,EAAE,UAAU,WAAW,QAAQ,SAAS,MAAM,OAAO,eAAe,gBAAgB,GAAG,SAAS;CACtG,OACE,oBAAC,KAAK,MAAN;EAAW,eAAa;EAAa;EAA4B,GAAI;YAClE;CACQ,CAAA;AAEf,CAAC;AACD,KAAK,cAAc;AAKnB,IAAM,QAAQ,YAAkD,EAAE,OAAO,UAAU,GAAG,SAAS,QAAQ;CACrG,OACE,qBAAC,KAAK,WAAN;EAAqB;EAAK,GAAI;YAA9B,CACE,qBAAC,KAAK,gBAAN,EAAA,UAAA,CACE,oBAAC,MAAD,EAAA,UAAO,MAAY,CAAA,GACnB,oBAAC,WAAD,EAAiB,MAAK,IAAK,CAAA,CACR,EAAA,CAAA,GACpB,QACa;;AAEpB,CAAC;AACD,MAAM,cAAc;AAEpB,IAAM,oBAAkB;CACtB,OAAO,oBAAC,KAAK,WAAN,CAAiB,CAAA;AAC1B;AACA,YAAU,cAAc;AAExB,IAAM,mBAAmB;CACvB;CACA,WAAA;CACA;CACA;AACF"}
@@ -1,12 +1,15 @@
1
+ import { useRef } from "react";
1
2
  import { jsx, jsxs } from "react/jsx-runtime";
2
3
  import { Portal } from "@chakra-ui/react/portal";
3
4
  import { Tooltip } from "@chakra-ui/react/tooltip";
4
5
  //#region lib/components/BitkitLabelTooltip/BitkitLabelTooltip.tsx
5
6
  var BitkitLabelTooltip = ({ children, disabled, placement = "top", text }) => {
7
+ const triggerRef = useRef(null);
6
8
  return /* @__PURE__ */ jsxs(Tooltip.Root, {
7
9
  disabled,
8
10
  paddingSize: "sm",
9
11
  positioning: {
12
+ getAnchorElement: () => triggerRef.current,
10
13
  placement,
11
14
  offset: {
12
15
  mainAxis: 4,
@@ -15,6 +18,7 @@ var BitkitLabelTooltip = ({ children, disabled, placement = "top", text }) => {
15
18
  },
16
19
  textStyle: "sm/semibold",
17
20
  children: [/* @__PURE__ */ jsx(Tooltip.Trigger, {
21
+ ref: triggerRef,
18
22
  asChild: true,
19
23
  children
20
24
  }), /* @__PURE__ */ jsx(Portal, { children: /* @__PURE__ */ jsx(Tooltip.Positioner, { children: /* @__PURE__ */ jsx(Tooltip.Content, { children: text }) }) })]
@@ -1 +1 @@
1
- {"version":3,"file":"BitkitLabelTooltip.js","names":[],"sources":["../../../lib/components/BitkitLabelTooltip/BitkitLabelTooltip.tsx"],"sourcesContent":["import { Portal } from '@chakra-ui/react/portal';\nimport { Tooltip, type TooltipRootProps } from '@chakra-ui/react/tooltip';\nimport { type ReactNode } from 'react';\n\nexport type BitkitLabelTooltipProps = {\n children: ReactNode;\n disabled?: TooltipRootProps['disabled'];\n placement?: NonNullable<TooltipRootProps['positioning']>['placement'];\n text: string;\n};\n\nconst BitkitLabelTooltip = ({ children, disabled, placement = 'top', text }: BitkitLabelTooltipProps) => {\n return (\n <Tooltip.Root\n disabled={disabled}\n paddingSize=\"sm\"\n positioning={{ placement, offset: { mainAxis: 4, crossAxis: 0 } }}\n textStyle=\"sm/semibold\"\n >\n <Tooltip.Trigger asChild>{children}</Tooltip.Trigger>\n <Portal>\n <Tooltip.Positioner>\n <Tooltip.Content>{text}</Tooltip.Content>\n </Tooltip.Positioner>\n </Portal>\n </Tooltip.Root>\n );\n};\n\nBitkitLabelTooltip.displayName = 'BitkitLabelTooltip';\n\nexport default BitkitLabelTooltip;\n"],"mappings":";;;;AAWA,IAAM,sBAAsB,EAAE,UAAU,UAAU,YAAY,OAAO,WAAoC;CACvG,OACE,qBAAC,QAAQ,MAAT;EACY;EACV,aAAY;EACZ,aAAa;GAAE;GAAW,QAAQ;IAAE,UAAU;IAAG,WAAW;GAAE;EAAE;EAChE,WAAU;YAJZ,CAME,oBAAC,QAAQ,SAAT;GAAiB,SAAA;GAAS;EAA0B,CAAA,GACpD,oBAAC,QAAD,EAAA,UACE,oBAAC,QAAQ,YAAT,EAAA,UACE,oBAAC,QAAQ,SAAT,EAAA,UAAkB,KAAsB,CAAA,EACtB,CAAA,EACd,CAAA,CACI;;AAElB;AAEA,mBAAmB,cAAc"}
1
+ {"version":3,"file":"BitkitLabelTooltip.js","names":[],"sources":["../../../lib/components/BitkitLabelTooltip/BitkitLabelTooltip.tsx"],"sourcesContent":["import { Portal } from '@chakra-ui/react/portal';\nimport { Tooltip, type TooltipRootProps } from '@chakra-ui/react/tooltip';\nimport { type ReactNode, type Ref, useRef } from 'react';\n\nexport type BitkitLabelTooltipProps = {\n children: ReactNode;\n disabled?: TooltipRootProps['disabled'];\n placement?: NonNullable<TooltipRootProps['positioning']>['placement'];\n text: string;\n};\n\nconst BitkitLabelTooltip = ({ children, disabled, placement = 'top', text }: BitkitLabelTooltipProps) => {\n // Anchor positioning to the trigger node by ref rather than relying on Zag's\n // id/data-scope lookup. When the trigger is also wrapped by another `asChild`\n // trigger (e.g. Menu.Trigger, Dialog.CloseTrigger), the outer trigger's id and\n // data-scope/data-part overwrite ours on the shared node, so `getTriggerEl()`\n // can't find it and the tooltip loses its anchor. `getAnchorElement` takes\n // precedence over the id lookup, so this is safe in the standalone case too.\n const triggerRef = useRef<HTMLElement>(null);\n\n return (\n <Tooltip.Root\n disabled={disabled}\n paddingSize=\"sm\"\n positioning={{ getAnchorElement: () => triggerRef.current, placement, offset: { mainAxis: 4, crossAxis: 0 } }}\n textStyle=\"sm/semibold\"\n >\n <Tooltip.Trigger ref={triggerRef as Ref<HTMLButtonElement>} asChild>\n {children}\n </Tooltip.Trigger>\n <Portal>\n <Tooltip.Positioner>\n <Tooltip.Content>{text}</Tooltip.Content>\n </Tooltip.Positioner>\n </Portal>\n </Tooltip.Root>\n );\n};\n\nBitkitLabelTooltip.displayName = 'BitkitLabelTooltip';\n\nexport default BitkitLabelTooltip;\n"],"mappings":";;;;;AAWA,IAAM,sBAAsB,EAAE,UAAU,UAAU,YAAY,OAAO,WAAoC;CAOvG,MAAM,aAAa,OAAoB,IAAI;CAE3C,OACE,qBAAC,QAAQ,MAAT;EACY;EACV,aAAY;EACZ,aAAa;GAAE,wBAAwB,WAAW;GAAS;GAAW,QAAQ;IAAE,UAAU;IAAG,WAAW;GAAE;EAAE;EAC5G,WAAU;YAJZ,CAME,oBAAC,QAAQ,SAAT;GAAiB,KAAK;GAAsC,SAAA;GACzD;EACc,CAAA,GACjB,oBAAC,QAAD,EAAA,UACE,oBAAC,QAAQ,YAAT,EAAA,UACE,oBAAC,QAAQ,SAAT,EAAA,UAAkB,KAAsB,CAAA,EACtB,CAAA,EACd,CAAA,CACI;;AAElB;AAEA,mBAAmB,cAAc"}
@@ -1,12 +1,15 @@
1
1
  import { rem } from "../../theme/themeUtils.js";
2
+ import { useRef } from "react";
2
3
  import { jsx, jsxs } from "react/jsx-runtime";
3
4
  import { Tooltip } from "@chakra-ui/react/tooltip";
4
5
  //#region lib/components/BitkitOverflowTooltip/BitkitOverflowTooltip.tsx
5
6
  var BitkitOverflowTooltip = ({ children, disabled, placement = "right", text }) => {
7
+ const triggerRef = useRef(null);
6
8
  return /* @__PURE__ */ jsxs(Tooltip.Root, {
7
9
  disabled,
8
10
  paddingSize: "sm",
9
11
  positioning: {
12
+ getAnchorElement: () => triggerRef.current,
10
13
  placement,
11
14
  offset: {
12
15
  mainAxis: 4,
@@ -16,6 +19,7 @@ var BitkitOverflowTooltip = ({ children, disabled, placement = "right", text })
16
19
  textStyle: "sm/regular",
17
20
  variant: "light",
18
21
  children: [/* @__PURE__ */ jsx(Tooltip.Trigger, {
22
+ ref: triggerRef,
19
23
  asChild: true,
20
24
  children
21
25
  }), /* @__PURE__ */ jsx(Tooltip.Positioner, { children: /* @__PURE__ */ jsx(Tooltip.Content, {
@@ -1 +1 @@
1
- {"version":3,"file":"BitkitOverflowTooltip.js","names":[],"sources":["../../../lib/components/BitkitOverflowTooltip/BitkitOverflowTooltip.tsx"],"sourcesContent":["import { Tooltip, type TooltipRootProps } from '@chakra-ui/react/tooltip';\nimport { type ReactNode } from 'react';\n\nimport { rem } from '../../theme/themeUtils';\n\nexport type BitkitOverflowTooltipProps = {\n children: ReactNode;\n disabled?: TooltipRootProps['disabled'];\n placement?: NonNullable<TooltipRootProps['positioning']>['placement'];\n text: string;\n};\n\nconst BitkitOverflowTooltip = ({ children, disabled, placement = 'right', text }: BitkitOverflowTooltipProps) => {\n return (\n <Tooltip.Root\n disabled={disabled}\n paddingSize=\"sm\"\n positioning={{ placement, offset: { mainAxis: 4, crossAxis: 0 } }}\n textStyle=\"sm/regular\"\n variant=\"light\"\n >\n <Tooltip.Trigger asChild>{children}</Tooltip.Trigger>\n <Tooltip.Positioner>\n <Tooltip.Content css={{ maxWidth: rem(800) }}>{text}</Tooltip.Content>\n </Tooltip.Positioner>\n </Tooltip.Root>\n );\n};\n\nBitkitOverflowTooltip.displayName = 'BitkitOverflowTooltip';\n\nexport default BitkitOverflowTooltip;\n"],"mappings":";;;;AAYA,IAAM,yBAAyB,EAAE,UAAU,UAAU,YAAY,SAAS,WAAuC;CAC/G,OACE,qBAAC,QAAQ,MAAT;EACY;EACV,aAAY;EACZ,aAAa;GAAE;GAAW,QAAQ;IAAE,UAAU;IAAG,WAAW;GAAE;EAAE;EAChE,WAAU;EACV,SAAQ;YALV,CAOE,oBAAC,QAAQ,SAAT;GAAiB,SAAA;GAAS;EAA0B,CAAA,GACpD,oBAAC,QAAQ,YAAT,EAAA,UACE,oBAAC,QAAQ,SAAT;GAAiB,KAAK,EAAE,UAAU,IAAI,GAAG,EAAE;aAAI;EAAsB,CAAA,EACnD,CAAA,CACR;;AAElB;AAEA,sBAAsB,cAAc"}
1
+ {"version":3,"file":"BitkitOverflowTooltip.js","names":[],"sources":["../../../lib/components/BitkitOverflowTooltip/BitkitOverflowTooltip.tsx"],"sourcesContent":["import { Tooltip, type TooltipRootProps } from '@chakra-ui/react/tooltip';\nimport { type ReactNode, type Ref, useRef } from 'react';\n\nimport { rem } from '../../theme/themeUtils';\n\nexport type BitkitOverflowTooltipProps = {\n children: ReactNode;\n disabled?: TooltipRootProps['disabled'];\n placement?: NonNullable<TooltipRootProps['positioning']>['placement'];\n text: string;\n};\n\nconst BitkitOverflowTooltip = ({ children, disabled, placement = 'right', text }: BitkitOverflowTooltipProps) => {\n // Anchor positioning to the trigger node by ref rather than relying on Zag's\n // id/data-scope lookup. When the trigger is also wrapped by another `asChild`\n // trigger (e.g. Menu.Trigger), the outer trigger's id and data-scope/data-part\n // overwrite ours on the shared node, so `getTriggerEl()` can't find it and the\n // tooltip loses its anchor. `getAnchorElement` takes precedence over the id\n // lookup, so this is safe in the standalone case too.\n const triggerRef = useRef<HTMLElement>(null);\n\n return (\n <Tooltip.Root\n disabled={disabled}\n paddingSize=\"sm\"\n positioning={{ getAnchorElement: () => triggerRef.current, placement, offset: { mainAxis: 4, crossAxis: 0 } }}\n textStyle=\"sm/regular\"\n variant=\"light\"\n >\n <Tooltip.Trigger ref={triggerRef as Ref<HTMLButtonElement>} asChild>\n {children}\n </Tooltip.Trigger>\n <Tooltip.Positioner>\n <Tooltip.Content css={{ maxWidth: rem(800) }}>{text}</Tooltip.Content>\n </Tooltip.Positioner>\n </Tooltip.Root>\n );\n};\n\nBitkitOverflowTooltip.displayName = 'BitkitOverflowTooltip';\n\nexport default BitkitOverflowTooltip;\n"],"mappings":";;;;;AAYA,IAAM,yBAAyB,EAAE,UAAU,UAAU,YAAY,SAAS,WAAuC;CAO/G,MAAM,aAAa,OAAoB,IAAI;CAE3C,OACE,qBAAC,QAAQ,MAAT;EACY;EACV,aAAY;EACZ,aAAa;GAAE,wBAAwB,WAAW;GAAS;GAAW,QAAQ;IAAE,UAAU;IAAG,WAAW;GAAE;EAAE;EAC5G,WAAU;EACV,SAAQ;YALV,CAOE,oBAAC,QAAQ,SAAT;GAAiB,KAAK;GAAsC,SAAA;GACzD;EACc,CAAA,GACjB,oBAAC,QAAQ,YAAT,EAAA,UACE,oBAAC,QAAQ,SAAT;GAAiB,KAAK,EAAE,UAAU,IAAI,GAAG,EAAE;aAAI;EAAsB,CAAA,EACnD,CAAA,CACR;;AAElB;AAEA,sBAAsB,cAAc"}
@@ -1,12 +1,14 @@
1
1
  import { rem } from "../../theme/themeUtils.js";
2
2
  import BitkitColorButton from "../BitkitColorButton/BitkitColorButton.js";
3
3
  import { Box } from "@chakra-ui/react/box";
4
+ import { useRef } from "react";
4
5
  import { jsx, jsxs } from "react/jsx-runtime";
5
6
  import { Tooltip } from "@chakra-ui/react/tooltip";
6
7
  import { Link } from "@chakra-ui/react/link";
7
8
  //#region lib/components/BitkitTooltip/BitkitTooltip.tsx
8
9
  var BitkitTooltip = ({ button, children, closeOnClick, disabled, icon: Icon, learnMoreTarget, learnMoreUrl, onOpenChange, open, openDelay, placement = "top", text }) => {
9
10
  const isInteractive = !!learnMoreUrl || !!button;
11
+ const triggerRef = useRef(null);
10
12
  return /* @__PURE__ */ jsxs(Tooltip.Root, {
11
13
  closeOnClick,
12
14
  disabled,
@@ -16,6 +18,7 @@ var BitkitTooltip = ({ button, children, closeOnClick, disabled, icon: Icon, lea
16
18
  openDelay,
17
19
  paddingSize: isInteractive ? "lg" : void 0,
18
20
  positioning: {
21
+ getAnchorElement: () => triggerRef.current,
19
22
  placement,
20
23
  offset: {
21
24
  mainAxis: 4,
@@ -23,6 +26,7 @@ var BitkitTooltip = ({ button, children, closeOnClick, disabled, icon: Icon, lea
23
26
  }
24
27
  },
25
28
  children: [/* @__PURE__ */ jsx(Tooltip.Trigger, {
29
+ ref: triggerRef,
26
30
  asChild: true,
27
31
  children
28
32
  }), /* @__PURE__ */ jsx(Tooltip.Positioner, { children: /* @__PURE__ */ jsxs(Tooltip.Content, {
@@ -1 +1 @@
1
- {"version":3,"file":"BitkitTooltip.js","names":[],"sources":["../../../lib/components/BitkitTooltip/BitkitTooltip.tsx"],"sourcesContent":["import { Box } from '@chakra-ui/react/box';\nimport { Link } from '@chakra-ui/react/link';\nimport { Tooltip, type TooltipRootProps } from '@chakra-ui/react/tooltip';\nimport { type ReactNode } from 'react';\n\nimport { type BitkitIconComponent } from '../../icons';\nimport { rem } from '../../theme/themeUtils';\nimport BitkitColorButton, { type BitkitColorButtonProps } from '../BitkitColorButton/BitkitColorButton';\n\nexport type BitkitTooltipProps = {\n button?: BitkitColorButtonProps;\n children: ReactNode;\n closeOnClick?: TooltipRootProps['closeOnClick'];\n disabled?: TooltipRootProps['disabled'];\n icon?: BitkitIconComponent;\n learnMoreTarget?: HTMLAnchorElement['target'];\n learnMoreUrl?: string;\n onOpenChange?: TooltipRootProps['onOpenChange'];\n open?: TooltipRootProps['open'];\n openDelay?: TooltipRootProps['openDelay'];\n placement?: NonNullable<TooltipRootProps['positioning']>['placement'];\n text: string;\n};\n\nconst BitkitTooltip = ({\n button,\n children,\n closeOnClick,\n disabled,\n icon: Icon,\n learnMoreTarget,\n learnMoreUrl,\n onOpenChange,\n open,\n openDelay,\n placement = 'top',\n text,\n}: BitkitTooltipProps) => {\n const isInteractive = !!learnMoreUrl || !!button;\n\n return (\n <Tooltip.Root\n closeOnClick={closeOnClick}\n disabled={disabled}\n interactive={isInteractive || undefined}\n onOpenChange={onOpenChange}\n open={open}\n openDelay={openDelay}\n paddingSize={isInteractive ? 'lg' : undefined}\n positioning={{ placement, offset: { mainAxis: 4, crossAxis: 0 } }}\n >\n <Tooltip.Trigger asChild>{children}</Tooltip.Trigger>\n <Tooltip.Positioner>\n <Tooltip.Content maxWidth={rem(320)} css={isInteractive && { minWidth: rem(240) }}>\n <Tooltip.Arrow>\n <Tooltip.ArrowTip />\n </Tooltip.Arrow>\n <Box display=\"flex\" gap=\"8\">\n {text}\n {Icon && <Icon flexShrink=\"0\" size=\"16\" />}\n </Box>\n {isInteractive && (\n <Box alignItems=\"center\" display=\"flex\" gap=\"16\" marginBlockStart=\"16\">\n {learnMoreUrl && (\n <Link\n color=\"sys/purple/highlight\"\n href={learnMoreUrl}\n rel={learnMoreTarget === '_blank' ? 'noopener noreferrer' : undefined}\n target={learnMoreTarget}\n >\n Learn more\n </Link>\n )}\n {button && <BitkitColorButton css={{ marginInlineStart: 'auto' }} {...button} />}\n </Box>\n )}\n </Tooltip.Content>\n </Tooltip.Positioner>\n </Tooltip.Root>\n );\n};\n\nBitkitTooltip.displayName = 'BitkitTooltip';\n\nexport default BitkitTooltip;\n"],"mappings":";;;;;;;AAwBA,IAAM,iBAAiB,EACrB,QACA,UACA,cACA,UACA,MAAM,MACN,iBACA,cACA,cACA,MACA,WACA,YAAY,OACZ,WACwB;CACxB,MAAM,gBAAgB,CAAC,CAAC,gBAAgB,CAAC,CAAC;CAE1C,OACE,qBAAC,QAAQ,MAAT;EACgB;EACJ;EACV,aAAa,iBAAiB,KAAA;EAChB;EACR;EACK;EACX,aAAa,gBAAgB,OAAO,KAAA;EACpC,aAAa;GAAE;GAAW,QAAQ;IAAE,UAAU;IAAG,WAAW;GAAE;EAAE;YARlE,CAUE,oBAAC,QAAQ,SAAT;GAAiB,SAAA;GAAS;EAA0B,CAAA,GACpD,oBAAC,QAAQ,YAAT,EAAA,UACE,qBAAC,QAAQ,SAAT;GAAiB,UAAU,IAAI,GAAG;GAAG,KAAK,iBAAiB,EAAE,UAAU,IAAI,GAAG,EAAE;aAAhF;IACE,oBAAC,QAAQ,OAAT,EAAA,UACE,oBAAC,QAAQ,UAAT,CAAmB,CAAA,EACN,CAAA;IACf,qBAAC,KAAD;KAAK,SAAQ;KAAO,KAAI;eAAxB,CACG,MACA,QAAQ,oBAAC,MAAD;MAAM,YAAW;MAAI,MAAK;KAAM,CAAA,CACtC;;IACJ,iBACC,qBAAC,KAAD;KAAK,YAAW;KAAS,SAAQ;KAAO,KAAI;KAAK,kBAAiB;eAAlE,CACG,gBACC,oBAAC,MAAD;MACE,OAAM;MACN,MAAM;MACN,KAAK,oBAAoB,WAAW,wBAAwB,KAAA;MAC5D,QAAQ;gBACT;KAEK,CAAA,GAEP,UAAU,oBAAC,mBAAD;MAAmB,KAAK,EAAE,mBAAmB,OAAO;MAAG,GAAI;KAAS,CAAA,CAC5E;;GAEQ;KACC,CAAA,CACR;;AAElB;AAEA,cAAc,cAAc"}
1
+ {"version":3,"file":"BitkitTooltip.js","names":[],"sources":["../../../lib/components/BitkitTooltip/BitkitTooltip.tsx"],"sourcesContent":["import { Box } from '@chakra-ui/react/box';\nimport { Link } from '@chakra-ui/react/link';\nimport { Tooltip, type TooltipRootProps } from '@chakra-ui/react/tooltip';\nimport { type ReactNode, type Ref, useRef } from 'react';\n\nimport { type BitkitIconComponent } from '../../icons';\nimport { rem } from '../../theme/themeUtils';\nimport BitkitColorButton, { type BitkitColorButtonProps } from '../BitkitColorButton/BitkitColorButton';\n\nexport type BitkitTooltipProps = {\n button?: BitkitColorButtonProps;\n children: ReactNode;\n closeOnClick?: TooltipRootProps['closeOnClick'];\n disabled?: TooltipRootProps['disabled'];\n icon?: BitkitIconComponent;\n learnMoreTarget?: HTMLAnchorElement['target'];\n learnMoreUrl?: string;\n onOpenChange?: TooltipRootProps['onOpenChange'];\n open?: TooltipRootProps['open'];\n openDelay?: TooltipRootProps['openDelay'];\n placement?: NonNullable<TooltipRootProps['positioning']>['placement'];\n text: string;\n};\n\nconst BitkitTooltip = ({\n button,\n children,\n closeOnClick,\n disabled,\n icon: Icon,\n learnMoreTarget,\n learnMoreUrl,\n onOpenChange,\n open,\n openDelay,\n placement = 'top',\n text,\n}: BitkitTooltipProps) => {\n const isInteractive = !!learnMoreUrl || !!button;\n\n // Anchor positioning to the trigger node by ref rather than relying on Zag's\n // id/data-scope lookup. When the trigger is also wrapped by another `asChild`\n // trigger (e.g. Menu.Trigger), the outer trigger's id and data-scope/data-part\n // overwrite ours on the shared node, so `getTriggerEl()` can't find it and the\n // tooltip loses its anchor. `getAnchorElement` takes precedence over the id\n // lookup, so this is safe in the standalone case too.\n const triggerRef = useRef<HTMLElement>(null);\n\n return (\n <Tooltip.Root\n closeOnClick={closeOnClick}\n disabled={disabled}\n interactive={isInteractive || undefined}\n onOpenChange={onOpenChange}\n open={open}\n openDelay={openDelay}\n paddingSize={isInteractive ? 'lg' : undefined}\n positioning={{ getAnchorElement: () => triggerRef.current, placement, offset: { mainAxis: 4, crossAxis: 0 } }}\n >\n <Tooltip.Trigger ref={triggerRef as Ref<HTMLButtonElement>} asChild>\n {children}\n </Tooltip.Trigger>\n <Tooltip.Positioner>\n <Tooltip.Content maxWidth={rem(320)} css={isInteractive && { minWidth: rem(240) }}>\n <Tooltip.Arrow>\n <Tooltip.ArrowTip />\n </Tooltip.Arrow>\n <Box display=\"flex\" gap=\"8\">\n {text}\n {Icon && <Icon flexShrink=\"0\" size=\"16\" />}\n </Box>\n {isInteractive && (\n <Box alignItems=\"center\" display=\"flex\" gap=\"16\" marginBlockStart=\"16\">\n {learnMoreUrl && (\n <Link\n color=\"sys/purple/highlight\"\n href={learnMoreUrl}\n rel={learnMoreTarget === '_blank' ? 'noopener noreferrer' : undefined}\n target={learnMoreTarget}\n >\n Learn more\n </Link>\n )}\n {button && <BitkitColorButton css={{ marginInlineStart: 'auto' }} {...button} />}\n </Box>\n )}\n </Tooltip.Content>\n </Tooltip.Positioner>\n </Tooltip.Root>\n );\n};\n\nBitkitTooltip.displayName = 'BitkitTooltip';\n\nexport default BitkitTooltip;\n"],"mappings":";;;;;;;;AAwBA,IAAM,iBAAiB,EACrB,QACA,UACA,cACA,UACA,MAAM,MACN,iBACA,cACA,cACA,MACA,WACA,YAAY,OACZ,WACwB;CACxB,MAAM,gBAAgB,CAAC,CAAC,gBAAgB,CAAC,CAAC;CAQ1C,MAAM,aAAa,OAAoB,IAAI;CAE3C,OACE,qBAAC,QAAQ,MAAT;EACgB;EACJ;EACV,aAAa,iBAAiB,KAAA;EAChB;EACR;EACK;EACX,aAAa,gBAAgB,OAAO,KAAA;EACpC,aAAa;GAAE,wBAAwB,WAAW;GAAS;GAAW,QAAQ;IAAE,UAAU;IAAG,WAAW;GAAE;EAAE;YAR9G,CAUE,oBAAC,QAAQ,SAAT;GAAiB,KAAK;GAAsC,SAAA;GACzD;EACc,CAAA,GACjB,oBAAC,QAAQ,YAAT,EAAA,UACE,qBAAC,QAAQ,SAAT;GAAiB,UAAU,IAAI,GAAG;GAAG,KAAK,iBAAiB,EAAE,UAAU,IAAI,GAAG,EAAE;aAAhF;IACE,oBAAC,QAAQ,OAAT,EAAA,UACE,oBAAC,QAAQ,UAAT,CAAmB,CAAA,EACN,CAAA;IACf,qBAAC,KAAD;KAAK,SAAQ;KAAO,KAAI;eAAxB,CACG,MACA,QAAQ,oBAAC,MAAD;MAAM,YAAW;MAAI,MAAK;KAAM,CAAA,CACtC;;IACJ,iBACC,qBAAC,KAAD;KAAK,YAAW;KAAS,SAAQ;KAAO,KAAI;KAAK,kBAAiB;eAAlE,CACG,gBACC,oBAAC,MAAD;MACE,OAAM;MACN,MAAM;MACN,KAAK,oBAAoB,WAAW,wBAAwB,KAAA;MAC5D,QAAQ;gBACT;KAEK,CAAA,GAEP,UAAU,oBAAC,mBAAD;MAAmB,KAAK,EAAE,mBAAmB,OAAO;MAAG,GAAI;KAAS,CAAA,CAC5E;;GAEQ;KACC,CAAA,CACR;;AAElB;AAEA,cAAc,cAAc"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@bitrise/bitkit-v2",
3
3
  "private": false,
4
- "version": "0.3.247",
4
+ "version": "0.3.249",
5
5
  "description": "Bitrise Design System Components built with Chakra UI V3",
6
6
  "keywords": [
7
7
  "react",
@@ -72,14 +72,14 @@
72
72
  "@figma-export/cli": "^6.4.0",
73
73
  "@figma-export/output-components-as-svg": "^6.4.0",
74
74
  "@figma-export/transform-svg-with-svgo": "^6.4.0",
75
- "@google-cloud/storage": "^7.19.0",
75
+ "@google-cloud/storage": "^7.21.0",
76
76
  "@storybook/addon-docs": "^10.4.2",
77
77
  "@storybook/addon-mcp": "^0.6.0",
78
78
  "@storybook/mcp": "^0.7.0",
79
79
  "@storybook/react-vite": "^10.4.2",
80
80
  "@svgr/plugin-jsx": "^8.1.0",
81
- "@types/node": "^24.13.0",
82
- "@types/react": "^18.3.30",
81
+ "@types/node": "^24.13.1",
82
+ "@types/react": "^18.3.31",
83
83
  "@types/react-dom": "^18.3.7",
84
84
  "@vitejs/plugin-react": "^6.0.2",
85
85
  "react": "^18.3.1",