@bitrise/bitkit-v2 0.3.354 → 0.3.356

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.
@@ -26,24 +26,43 @@ var useIsContentOverflowing = (collapsedHeight) => {
26
26
  const resizeObserver = new ResizeObserver(checkOverflow);
27
27
  resizeObserver.observe(contentEl);
28
28
  return () => resizeObserver.disconnect();
29
- }, [collapsedHeight]);
29
+ }, [collapsedHeight, isOverflowing]);
30
30
  return {
31
31
  contentRef,
32
32
  isOverflowing
33
33
  };
34
34
  };
35
35
  var BitkitCollapsible = forwardRef((props, ref) => {
36
- const { children, closedLabel = "Show less", collapsedHeight = "48px", defaultOpen, label, labelProps, onOpenChange, open, openLabel = "Show more", ...rest } = props;
36
+ const { children, closedLabel = "Show less", collapsedHeight = "48px", collapsedWidth, defaultOpen, disabled, hideMode, ids, label, labelProps, lazyMount, onExitComplete, onOpenChange, open, openLabel = "Show more", unmountOnExit, ...rest } = props;
37
37
  const styles = useSlotRecipe({ key: "collapsible" })();
38
38
  const { contentRef, isOverflowing } = useIsContentOverflowing(collapsedHeight);
39
39
  const handleOpenChange = onOpenChange ? (details) => onOpenChange(details.open) : void 0;
40
+ if (!isOverflowing) return /* @__PURE__ */ jsxs(Box, {
41
+ ref,
42
+ css: styles.root,
43
+ ...rest,
44
+ children: [label && /* @__PURE__ */ jsx(BitkitLabel, {
45
+ ...labelProps,
46
+ children: label
47
+ }), /* @__PURE__ */ jsx(Box, {
48
+ ref: contentRef,
49
+ children
50
+ })]
51
+ });
40
52
  return /* @__PURE__ */ jsxs(Collapsible.Root, {
41
53
  ref,
42
54
  collapsedHeight,
55
+ collapsedWidth,
43
56
  css: styles.root,
44
57
  defaultOpen,
58
+ disabled,
59
+ hideMode,
60
+ ids,
61
+ lazyMount,
62
+ onExitComplete,
45
63
  onOpenChange: handleOpenChange,
46
64
  open,
65
+ unmountOnExit,
47
66
  ...rest,
48
67
  children: [
49
68
  label && /* @__PURE__ */ jsx(BitkitLabel, {
@@ -57,7 +76,7 @@ var BitkitCollapsible = forwardRef((props, ref) => {
57
76
  children
58
77
  })
59
78
  }),
60
- isOverflowing && /* @__PURE__ */ jsx(Collapsible.Trigger, {
79
+ /* @__PURE__ */ jsx(Collapsible.Trigger, {
61
80
  css: styles.trigger,
62
81
  children: /* @__PURE__ */ jsx(Collapsible.Context, { children: (api) => /* @__PURE__ */ jsxs(Fragment$1, { children: [api.open ? closedLabel : openLabel, api.open ? /* @__PURE__ */ jsx(IconChevronUp, { size: "16" }) : /* @__PURE__ */ jsx(IconChevronDown, { size: "16" })] }) })
63
82
  })
@@ -1 +1 @@
1
- {"version":3,"file":"BitkitCollapsible.js","names":[],"sources":["../../../lib/components/BitkitCollapsible/BitkitCollapsible.tsx"],"sourcesContent":["import { Box } from '@chakra-ui/react/box';\nimport { Collapsible, type CollapsibleRootProps } from '@chakra-ui/react/collapsible';\nimport { useSafeLayoutEffect } from '@chakra-ui/react/hooks';\nimport { useSlotRecipe } from '@chakra-ui/react/styled-system';\nimport { forwardRef, type ReactNode, useRef, useState } from 'react';\n\n// TODO: Investigate using AssetSelectChevron instead of IconChevronDown/IconChevronUp\nimport { IconChevronDown, IconChevronUp } from '../../icons';\nimport BitkitLabel, { type BitkitLabelProps } from '../BitkitLabel/BitkitLabel';\n\ntype UncontrolledProps = {\n defaultOpen?: boolean;\n open?: never;\n onOpenChange?: never;\n};\n\ntype ControlledProps = {\n defaultOpen?: never;\n onOpenChange: (open: boolean) => void;\n open: boolean;\n};\n\nexport type BitkitCollapsibleProps = Omit<\n CollapsibleRootProps,\n 'collapsedHeight' | 'defaultOpen' | 'onOpenChange' | 'open'\n> & {\n children: ReactNode;\n closedLabel?: string;\n collapsedHeight?: string;\n label?: string;\n labelProps?: Omit<BitkitLabelProps, 'children'>;\n openLabel?: string;\n} & (UncontrolledProps | ControlledProps);\n\n// contentRef sits on an unclamped wrapper *inside* Collapsible.Content, not on Content itself: when\n// closed, Content's own box is pinned to collapsedHeight (max-height + overflow), so a ResizeObserver\n// on Content can't see content that grows without changing Content's own (clamped) box - e.g. an image\n// or async child rendering more after mount. scrollHeight still reports the wrapper's true height\n// either way, clamped or not, so the read doesn't change - only where we watch for changes does.\n// collapsedHeight is the only effect dependency: the wrapper being unclamped means the observer itself\n// sees every content-driven size change, so re-running the whole effect just because `children`'s\n// identity changed (which it does on every parent render, once children stop being a plain string)\n// would only add a redundant probe/layout/observer teardown-and-rebuild on top of what the observer\n// already covers.\nconst useIsContentOverflowing = (collapsedHeight: string) => {\n const contentRef = useRef<HTMLDivElement>(null);\n const [isOverflowing, setIsOverflowing] = useState(true);\n\n useSafeLayoutEffect(() => {\n const contentEl = contentRef.current;\n const measureScope = contentEl?.parentElement;\n if (!contentEl || !measureScope) {\n return undefined;\n }\n\n // Appended as a sibling of contentEl (not document.body) so it inherits the same font-size and\n // CSS custom properties contentEl actually sees, resolving em/var(...) heights correctly - not\n // just px/rem, which don't depend on where in the tree they're resolved.\n const probe = document.createElement('div');\n probe.style.cssText = `position: absolute; visibility: hidden; pointer-events: none; height: ${collapsedHeight};`;\n measureScope.appendChild(probe);\n const collapsedHeightPx = probe.getBoundingClientRect().height;\n measureScope.removeChild(probe);\n\n const checkOverflow = () => setIsOverflowing(contentEl.scrollHeight > collapsedHeightPx);\n checkOverflow();\n\n if (typeof ResizeObserver === 'undefined') {\n return undefined;\n }\n\n const resizeObserver = new ResizeObserver(checkOverflow);\n resizeObserver.observe(contentEl);\n return () => resizeObserver.disconnect();\n }, [collapsedHeight]);\n\n return { contentRef, isOverflowing };\n};\n\nconst BitkitCollapsible = forwardRef<HTMLDivElement, BitkitCollapsibleProps>((props, ref) => {\n const {\n children,\n closedLabel = 'Show less',\n collapsedHeight = '48px',\n defaultOpen,\n label,\n labelProps,\n onOpenChange,\n open,\n openLabel = 'Show more',\n ...rest\n } = props;\n\n const recipe = useSlotRecipe({ key: 'collapsible' });\n const styles = recipe();\n\n const { contentRef, isOverflowing } = useIsContentOverflowing(collapsedHeight);\n\n const handleOpenChange = onOpenChange ? (details: { open: boolean }) => onOpenChange(details.open) : undefined;\n\n return (\n <Collapsible.Root\n ref={ref}\n collapsedHeight={collapsedHeight}\n css={styles.root}\n defaultOpen={defaultOpen}\n onOpenChange={handleOpenChange}\n open={open}\n {...rest}\n >\n {label && <BitkitLabel {...labelProps}>{label}</BitkitLabel>}\n <Collapsible.Content css={styles.content}>\n <Box ref={contentRef}>{children}</Box>\n </Collapsible.Content>\n {isOverflowing && (\n <Collapsible.Trigger css={styles.trigger}>\n <Collapsible.Context>\n {(api) => (\n <>\n {api.open ? closedLabel : openLabel}\n {api.open ? <IconChevronUp size=\"16\" /> : <IconChevronDown size=\"16\" />}\n </>\n )}\n </Collapsible.Context>\n </Collapsible.Trigger>\n )}\n </Collapsible.Root>\n );\n});\n\nBitkitCollapsible.displayName = 'BitkitCollapsible';\n\nexport default BitkitCollapsible;\n"],"mappings":";;;;;;;;;;AA4CA,IAAM,2BAA2B,oBAA4B;CAC3D,MAAM,aAAa,OAAuB,IAAI;CAC9C,MAAM,CAAC,eAAe,oBAAoB,SAAS,IAAI;CAEvD,0BAA0B;EACxB,MAAM,YAAY,WAAW;EAC7B,MAAM,eAAe,WAAW;EAChC,IAAI,CAAC,aAAa,CAAC,cACjB;EAMF,MAAM,QAAQ,SAAS,cAAc,KAAK;EAC1C,MAAM,MAAM,UAAU,yEAAyE,gBAAgB;EAC/G,aAAa,YAAY,KAAK;EAC9B,MAAM,oBAAoB,MAAM,sBAAsB,CAAC,CAAC;EACxD,aAAa,YAAY,KAAK;EAE9B,MAAM,sBAAsB,iBAAiB,UAAU,eAAe,iBAAiB;EACvF,cAAc;EAEd,IAAI,OAAO,mBAAmB,aAC5B;EAGF,MAAM,iBAAiB,IAAI,eAAe,aAAa;EACvD,eAAe,QAAQ,SAAS;EAChC,aAAa,eAAe,WAAW;CACzC,GAAG,CAAC,eAAe,CAAC;CAEpB,OAAO;EAAE;EAAY;CAAc;AACrC;AAEA,IAAM,oBAAoB,YAAoD,OAAO,QAAQ;CAC3F,MAAM,EACJ,UACA,cAAc,aACd,kBAAkB,QAClB,aACA,OACA,YACA,cACA,MACA,YAAY,aACZ,GAAG,SACD;CAGJ,MAAM,SADS,cAAc,EAAE,KAAK,cAAc,CACnC,CAAA,CAAO;CAEtB,MAAM,EAAE,YAAY,kBAAkB,wBAAwB,eAAe;CAE7E,MAAM,mBAAmB,gBAAgB,YAA+B,aAAa,QAAQ,IAAI,IAAI,KAAA;CAErG,OACE,qBAAC,YAAY,MAAb;EACO;EACY;EACjB,KAAK,OAAO;EACC;EACb,cAAc;EACR;EACN,GAAI;EAPN,UAAA;GASG,SAAS,oBAAC,aAAD;IAAa,GAAI;IAAa,UAAA;GAAmB,CAAA;GAC3D,oBAAC,YAAY,SAAb;IAAqB,KAAK,OAAO;IAC/B,UAAA,oBAAC,KAAD;KAAK,KAAK;KAAa;IAAc,CAAA;GAClB,CAAA;GACpB,iBACC,oBAAC,YAAY,SAAb;IAAqB,KAAK,OAAO;IAC/B,UAAA,oBAAC,YAAY,SAAb,EAAA,WACI,QACA,qBAAA,YAAA,EAAA,UAAA,CACG,IAAI,OAAO,cAAc,WACzB,IAAI,OAAO,oBAAC,eAAD,EAAe,MAAK,KAAM,CAAA,IAAI,oBAAC,iBAAD,EAAiB,MAAK,KAAM,CAAA,CACtE,EAAA,CAAA,EAEe,CAAA;GACF,CAAA;EAEP;;AAEtB,CAAC;AAED,kBAAkB,cAAc"}
1
+ {"version":3,"file":"BitkitCollapsible.js","names":[],"sources":["../../../lib/components/BitkitCollapsible/BitkitCollapsible.tsx"],"sourcesContent":["import { Box } from '@chakra-ui/react/box';\nimport { Collapsible, type CollapsibleRootProps } from '@chakra-ui/react/collapsible';\nimport { useSafeLayoutEffect } from '@chakra-ui/react/hooks';\nimport { useSlotRecipe } from '@chakra-ui/react/styled-system';\nimport { forwardRef, type ReactNode, useRef, useState } from 'react';\n\n// TODO: Investigate using AssetSelectChevron instead of IconChevronDown/IconChevronUp\nimport { IconChevronDown, IconChevronUp } from '../../icons';\nimport BitkitLabel, { type BitkitLabelProps } from '../BitkitLabel/BitkitLabel';\n\ntype UncontrolledProps = {\n defaultOpen?: boolean;\n open?: never;\n onOpenChange?: never;\n};\n\ntype ControlledProps = {\n defaultOpen?: never;\n onOpenChange: (open: boolean) => void;\n open: boolean;\n};\n\nexport type BitkitCollapsibleProps = Omit<\n CollapsibleRootProps,\n 'collapsedHeight' | 'defaultOpen' | 'onOpenChange' | 'open'\n> & {\n children: ReactNode;\n closedLabel?: string;\n collapsedHeight?: string;\n label?: string;\n labelProps?: Omit<BitkitLabelProps, 'children'>;\n openLabel?: string;\n} & (UncontrolledProps | ControlledProps);\n\n// contentRef sits on an unclamped wrapper *inside* Collapsible.Content, not on Content itself: when\n// closed, Content's own box is pinned to collapsedHeight (max-height + overflow), so a ResizeObserver\n// on Content can't see content that grows without changing Content's own (clamped) box - e.g. an image\n// or async child rendering more after mount. scrollHeight still reports the wrapper's true height\n// either way, clamped or not, so the read doesn't change - only where we watch for changes does.\n// isOverflowing and collapsedHeight are the effect's only dependencies. isOverflowing: BitkitCollapsible\n// renders a different tree depending on it (see below), moving contentRef to a different DOM node each\n// time it flips, so the effect must re-attach then. children is deliberately not a dependency: the\n// wrapper being unclamped means the observer already sees every content-driven size change on its own.\nconst useIsContentOverflowing = (collapsedHeight: string) => {\n const contentRef = useRef<HTMLDivElement>(null);\n const [isOverflowing, setIsOverflowing] = useState(true);\n\n useSafeLayoutEffect(() => {\n const contentEl = contentRef.current;\n const measureScope = contentEl?.parentElement;\n if (!contentEl || !measureScope) {\n return undefined;\n }\n\n // Appended as a sibling of contentEl (not document.body) so it inherits the same font-size and\n // CSS custom properties contentEl actually sees, resolving em/var(...) heights correctly - not\n // just px/rem, which don't depend on where in the tree they're resolved.\n const probe = document.createElement('div');\n probe.style.cssText = `position: absolute; visibility: hidden; pointer-events: none; height: ${collapsedHeight};`;\n measureScope.appendChild(probe);\n const collapsedHeightPx = probe.getBoundingClientRect().height;\n measureScope.removeChild(probe);\n\n const checkOverflow = () => setIsOverflowing(contentEl.scrollHeight > collapsedHeightPx);\n checkOverflow();\n\n if (typeof ResizeObserver === 'undefined') {\n return undefined;\n }\n\n const resizeObserver = new ResizeObserver(checkOverflow);\n resizeObserver.observe(contentEl);\n return () => resizeObserver.disconnect();\n }, [collapsedHeight, isOverflowing]);\n\n return { contentRef, isOverflowing };\n};\n\nconst BitkitCollapsible = forwardRef<HTMLDivElement, BitkitCollapsibleProps>((props, ref) => {\n const {\n children,\n closedLabel = 'Show less',\n collapsedHeight = '48px',\n collapsedWidth,\n defaultOpen,\n disabled,\n hideMode,\n ids,\n label,\n labelProps,\n lazyMount,\n onExitComplete,\n onOpenChange,\n open,\n openLabel = 'Show more',\n unmountOnExit,\n ...rest\n } = props;\n\n const recipe = useSlotRecipe({ key: 'collapsible' });\n const styles = recipe();\n\n const { contentRef, isOverflowing } = useIsContentOverflowing(collapsedHeight);\n\n const handleOpenChange = onOpenChange ? (details: { open: boolean }) => onOpenChange(details.open) : undefined;\n\n // zag's closed-state styling (min/max-height clamp, the fade-out pseudo-element) is driven purely by\n // Collapsible.Root defaulting to \"closed\" - it doesn't know or care whether collapsedHeight would\n // ever actually clip anything. Passing collapsedHeight and hiding only the trigger still leaves\n // content that fits pinned to that height and faded, so when it doesn't overflow we skip\n // Collapsible.Root/Content entirely and render plain markup instead of fighting the closed-state\n // styling with overrides. Only styles.root applies here - it carries the inherited color/textStyle,\n // which is all a non-collapsing block needs; styles.content's overflow/position/fade rules are\n // collapse-only and would clip content (a focus ring, an absolutely-positioned child) that isn't\n // meant to be clipped. contentRef sits directly under styles.root rather than under a styles.content\n // box, so measureScope (its parent) is styles.root in this branch and styles.content in the\n // overflowing one below - both carry the same inherited font-size, since textStyle now lives on\n // root and cascades down, so collapsedHeight's em/var(...) units resolve the same way in either\n // branch. disabled/ids/collapsedWidth/onExitComplete/lazyMount/unmountOnExit/hideMode\n // are zag/Ark machine props with no meaning on plain markup, so they're destructured out above and\n // only forwarded to Collapsible.Root below - otherwise they'd reach the DOM as unknown attributes.\n //\n // isOverflowing starts true, so every mount (even of content that turns out to fit) renders through\n // this Collapsible.Root tree first and flips to the plain tree below once measured - a real\n // remount of children, since the two trees don't share a component type at that position. Same\n // going the other way on a runtime resize. Accepted tradeoff: measuring requires a real layout\n // pass, and we don't have the content's size before that first render.\n if (!isOverflowing) {\n return (\n <Box ref={ref} css={styles.root} {...rest}>\n {label && <BitkitLabel {...labelProps}>{label}</BitkitLabel>}\n <Box ref={contentRef}>{children}</Box>\n </Box>\n );\n }\n\n return (\n <Collapsible.Root\n ref={ref}\n collapsedHeight={collapsedHeight}\n collapsedWidth={collapsedWidth}\n css={styles.root}\n defaultOpen={defaultOpen}\n disabled={disabled}\n hideMode={hideMode}\n ids={ids}\n lazyMount={lazyMount}\n onExitComplete={onExitComplete}\n onOpenChange={handleOpenChange}\n open={open}\n unmountOnExit={unmountOnExit}\n {...rest}\n >\n {label && <BitkitLabel {...labelProps}>{label}</BitkitLabel>}\n <Collapsible.Content css={styles.content}>\n <Box ref={contentRef}>{children}</Box>\n </Collapsible.Content>\n <Collapsible.Trigger css={styles.trigger}>\n <Collapsible.Context>\n {(api) => (\n <>\n {api.open ? closedLabel : openLabel}\n {api.open ? <IconChevronUp size=\"16\" /> : <IconChevronDown size=\"16\" />}\n </>\n )}\n </Collapsible.Context>\n </Collapsible.Trigger>\n </Collapsible.Root>\n );\n});\n\nBitkitCollapsible.displayName = 'BitkitCollapsible';\n\nexport default BitkitCollapsible;\n"],"mappings":";;;;;;;;;;AA2CA,IAAM,2BAA2B,oBAA4B;CAC3D,MAAM,aAAa,OAAuB,IAAI;CAC9C,MAAM,CAAC,eAAe,oBAAoB,SAAS,IAAI;CAEvD,0BAA0B;EACxB,MAAM,YAAY,WAAW;EAC7B,MAAM,eAAe,WAAW;EAChC,IAAI,CAAC,aAAa,CAAC,cACjB;EAMF,MAAM,QAAQ,SAAS,cAAc,KAAK;EAC1C,MAAM,MAAM,UAAU,yEAAyE,gBAAgB;EAC/G,aAAa,YAAY,KAAK;EAC9B,MAAM,oBAAoB,MAAM,sBAAsB,CAAC,CAAC;EACxD,aAAa,YAAY,KAAK;EAE9B,MAAM,sBAAsB,iBAAiB,UAAU,eAAe,iBAAiB;EACvF,cAAc;EAEd,IAAI,OAAO,mBAAmB,aAC5B;EAGF,MAAM,iBAAiB,IAAI,eAAe,aAAa;EACvD,eAAe,QAAQ,SAAS;EAChC,aAAa,eAAe,WAAW;CACzC,GAAG,CAAC,iBAAiB,aAAa,CAAC;CAEnC,OAAO;EAAE;EAAY;CAAc;AACrC;AAEA,IAAM,oBAAoB,YAAoD,OAAO,QAAQ;CAC3F,MAAM,EACJ,UACA,cAAc,aACd,kBAAkB,QAClB,gBACA,aACA,UACA,UACA,KACA,OACA,YACA,WACA,gBACA,cACA,MACA,YAAY,aACZ,eACA,GAAG,SACD;CAGJ,MAAM,SADS,cAAc,EAAE,KAAK,cAAc,CACnC,CAAA,CAAO;CAEtB,MAAM,EAAE,YAAY,kBAAkB,wBAAwB,eAAe;CAE7E,MAAM,mBAAmB,gBAAgB,YAA+B,aAAa,QAAQ,IAAI,IAAI,KAAA;CAuBrG,IAAI,CAAC,eACH,OACE,qBAAC,KAAD;EAAU;EAAK,KAAK,OAAO;EAAM,GAAI;EAArC,UAAA,CACG,SAAS,oBAAC,aAAD;GAAa,GAAI;GAAa,UAAA;EAAmB,CAAA,GAC3D,oBAAC,KAAD;GAAK,KAAK;GAAa;EAAc,CAAA,CAClC;;CAIT,OACE,qBAAC,YAAY,MAAb;EACO;EACY;EACD;EAChB,KAAK,OAAO;EACC;EACH;EACA;EACL;EACM;EACK;EAChB,cAAc;EACR;EACS;EACf,GAAI;EAdN,UAAA;GAgBG,SAAS,oBAAC,aAAD;IAAa,GAAI;IAAa,UAAA;GAAmB,CAAA;GAC3D,oBAAC,YAAY,SAAb;IAAqB,KAAK,OAAO;IAC/B,UAAA,oBAAC,KAAD;KAAK,KAAK;KAAa;IAAc,CAAA;GAClB,CAAA;GACrB,oBAAC,YAAY,SAAb;IAAqB,KAAK,OAAO;IAC/B,UAAA,oBAAC,YAAY,SAAb,EAAA,WACI,QACA,qBAAA,YAAA,EAAA,UAAA,CACG,IAAI,OAAO,cAAc,WACzB,IAAI,OAAO,oBAAC,eAAD,EAAe,MAAK,KAAM,CAAA,IAAI,oBAAC,iBAAD,EAAiB,MAAK,KAAM,CAAA,CACtE,EAAA,CAAA,EAEe,CAAA;GACF,CAAA;EACL;;AAEtB,CAAC;AAED,kBAAkB,cAAc"}
@@ -7,11 +7,11 @@ declare const avatarSlotRecipe: import('@chakra-ui/react').SlotRecipeDefinition<
7
7
  borderRadius: number;
8
8
  };
9
9
  image: {
10
- borderRadius: number;
10
+ borderRadius: "calc({radii.4} - 1px)";
11
11
  };
12
12
  fallback: {
13
13
  textStyle: "comp/avatar/24";
14
- borderRadius: number;
14
+ borderRadius: "calc({radii.4} - 1px)";
15
15
  };
16
16
  icon: {
17
17
  width: number;
@@ -28,11 +28,11 @@ declare const avatarSlotRecipe: import('@chakra-ui/react').SlotRecipeDefinition<
28
28
  borderRadius: number;
29
29
  };
30
30
  image: {
31
- borderRadius: number;
31
+ borderRadius: "calc({radii.6} - 1px)";
32
32
  };
33
33
  fallback: {
34
34
  textStyle: "comp/avatar/32";
35
- borderRadius: number;
35
+ borderRadius: "calc({radii.6} - 1px)";
36
36
  };
37
37
  icon: {
38
38
  width: number;
@@ -53,11 +53,11 @@ declare const avatarSlotRecipe: import('@chakra-ui/react').SlotRecipeDefinition<
53
53
  borderRadius: number;
54
54
  };
55
55
  image: {
56
- borderRadius: number;
56
+ borderRadius: "calc({radii.8} - 1px)";
57
57
  };
58
58
  fallback: {
59
59
  textStyle: "comp/avatar/40";
60
- borderRadius: number;
60
+ borderRadius: "calc({radii.8} - 1px)";
61
61
  };
62
62
  icon: {
63
63
  width: number;
@@ -78,11 +78,11 @@ declare const avatarSlotRecipe: import('@chakra-ui/react').SlotRecipeDefinition<
78
78
  borderRadius: "10";
79
79
  };
80
80
  image: {
81
- borderRadius: "10";
81
+ borderRadius: "calc({radii.10} - 1px)";
82
82
  };
83
83
  fallback: {
84
84
  textStyle: "comp/avatar/48";
85
- borderRadius: "10";
85
+ borderRadius: "calc({radii.10} - 1px)";
86
86
  };
87
87
  icon: {
88
88
  width: number;
@@ -103,11 +103,11 @@ declare const avatarSlotRecipe: import('@chakra-ui/react').SlotRecipeDefinition<
103
103
  borderRadius: number;
104
104
  };
105
105
  image: {
106
- borderRadius: number;
106
+ borderRadius: "calc({radii.12} - 1px)";
107
107
  };
108
108
  fallback: {
109
109
  textStyle: "comp/avatar/64";
110
- borderRadius: number;
110
+ borderRadius: "calc({radii.12} - 1px)";
111
111
  };
112
112
  icon: {
113
113
  width: number;
@@ -128,11 +128,11 @@ declare const avatarSlotRecipe: import('@chakra-ui/react').SlotRecipeDefinition<
128
128
  borderRadius: number;
129
129
  };
130
130
  image: {
131
- borderRadius: number;
131
+ borderRadius: "calc({radii.16} - 1px)";
132
132
  };
133
133
  fallback: {
134
134
  textStyle: "comp/avatar/128";
135
- borderRadius: number;
135
+ borderRadius: "calc({radii.16} - 1px)";
136
136
  };
137
137
  icon: {
138
138
  width: number;
@@ -51,10 +51,10 @@ var avatarSlotRecipe = defineSlotRecipe({
51
51
  height: 24,
52
52
  borderRadius: 4
53
53
  },
54
- image: { borderRadius: 4 },
54
+ image: { borderRadius: "calc({radii.4} - 1px)" },
55
55
  fallback: {
56
56
  textStyle: "comp/avatar/24",
57
- borderRadius: 4
57
+ borderRadius: "calc({radii.4} - 1px)"
58
58
  },
59
59
  icon: {
60
60
  width: 16,
@@ -68,10 +68,10 @@ var avatarSlotRecipe = defineSlotRecipe({
68
68
  height: 32,
69
69
  borderRadius: 6
70
70
  },
71
- image: { borderRadius: 6 },
71
+ image: { borderRadius: "calc({radii.6} - 1px)" },
72
72
  fallback: {
73
73
  textStyle: "comp/avatar/32",
74
- borderRadius: 6
74
+ borderRadius: "calc({radii.6} - 1px)"
75
75
  },
76
76
  icon: {
77
77
  width: 20,
@@ -91,10 +91,10 @@ var avatarSlotRecipe = defineSlotRecipe({
91
91
  height: 40,
92
92
  borderRadius: 8
93
93
  },
94
- image: { borderRadius: 8 },
94
+ image: { borderRadius: "calc({radii.8} - 1px)" },
95
95
  fallback: {
96
96
  textStyle: "comp/avatar/40",
97
- borderRadius: 8
97
+ borderRadius: "calc({radii.8} - 1px)"
98
98
  },
99
99
  icon: {
100
100
  width: 24,
@@ -114,10 +114,10 @@ var avatarSlotRecipe = defineSlotRecipe({
114
114
  height: 48,
115
115
  borderRadius: "10"
116
116
  },
117
- image: { borderRadius: "10" },
117
+ image: { borderRadius: "calc({radii.10} - 1px)" },
118
118
  fallback: {
119
119
  textStyle: "comp/avatar/48",
120
- borderRadius: "10"
120
+ borderRadius: "calc({radii.10} - 1px)"
121
121
  },
122
122
  icon: {
123
123
  width: 32,
@@ -137,10 +137,10 @@ var avatarSlotRecipe = defineSlotRecipe({
137
137
  height: 64,
138
138
  borderRadius: 12
139
139
  },
140
- image: { borderRadius: 12 },
140
+ image: { borderRadius: "calc({radii.12} - 1px)" },
141
141
  fallback: {
142
142
  textStyle: "comp/avatar/64",
143
- borderRadius: 12
143
+ borderRadius: "calc({radii.12} - 1px)"
144
144
  },
145
145
  icon: {
146
146
  width: 48,
@@ -160,10 +160,10 @@ var avatarSlotRecipe = defineSlotRecipe({
160
160
  height: 128,
161
161
  borderRadius: 16
162
162
  },
163
- image: { borderRadius: 16 },
163
+ image: { borderRadius: "calc({radii.16} - 1px)" },
164
164
  fallback: {
165
165
  textStyle: "comp/avatar/128",
166
- borderRadius: 16
166
+ borderRadius: "calc({radii.16} - 1px)"
167
167
  },
168
168
  icon: {
169
169
  width: 96,
@@ -1 +1 @@
1
- {"version":3,"file":"Avatar.recipe.js","names":[],"sources":["../../../lib/theme/slot-recipes/Avatar.recipe.ts"],"sourcesContent":["import { avatarAnatomy } from '@chakra-ui/react/anatomy';\nimport { defineSlotRecipe } from '@chakra-ui/react/styled-system';\n\nconst avatarSlotRecipe = defineSlotRecipe({\n slots: [...avatarAnatomy.keys(), 'icon', 'badge', 'badgeContainer'],\n className: 'avatar',\n base: {\n root: {\n alignItems: 'center',\n border: '1px solid',\n borderColor: 'border/minimal',\n display: 'inline-flex',\n flexShrink: '0',\n justifyContent: 'center',\n position: 'relative',\n userSelect: 'none',\n verticalAlign: 'top',\n '&:has([data-part=image][data-state=visible])': {\n backgroundColor: 'transparent',\n },\n },\n image: {\n width: '100%',\n height: '100%',\n objectFit: 'cover',\n },\n fallback: {},\n icon: {},\n badge: {\n width: 16,\n height: 16,\n },\n badgeContainer: {\n display: 'flex',\n boxShadow: 'elevation/sm',\n position: 'absolute',\n alignItems: 'center',\n justifyContent: 'center',\n color: 'text/secondary',\n backgroundColor: 'background/primary',\n },\n },\n\n variants: {\n size: {\n '24': {\n root: { width: 24, height: 24, borderRadius: 4 },\n image: { borderRadius: 4 },\n fallback: { textStyle: 'comp/avatar/24', borderRadius: 4 },\n icon: { width: 16, height: 16 },\n badgeContainer: { display: 'none' },\n },\n '32': {\n root: { width: 32, height: 32, borderRadius: 6 },\n image: { borderRadius: 6 },\n fallback: { textStyle: 'comp/avatar/32', borderRadius: 6 },\n icon: { width: 20, height: 20 },\n badgeContainer: { width: 16, height: 16, bottom: -5, right: -5, borderRadius: 4 },\n },\n '40': {\n root: { width: 40, height: 40, borderRadius: 8 },\n image: { borderRadius: 8 },\n fallback: { textStyle: 'comp/avatar/40', borderRadius: 8 },\n icon: { width: 24, height: 24 },\n badgeContainer: { width: 16, height: 16, bottom: -2, right: -2, borderRadius: 4 },\n },\n '48': {\n root: { width: 48, height: 48, borderRadius: '10' },\n image: { borderRadius: '10' },\n fallback: { textStyle: 'comp/avatar/48', borderRadius: '10' },\n icon: { width: 32, height: 32 },\n badgeContainer: { width: 24, height: 24, bottom: -7, right: -7, borderRadius: '50%' },\n },\n '64': {\n root: { width: 64, height: 64, borderRadius: 12 },\n image: { borderRadius: 12 },\n fallback: { textStyle: 'comp/avatar/64', borderRadius: 12 },\n icon: { width: 48, height: 48 },\n badgeContainer: { width: 24, height: 24, bottom: -5, right: -5, borderRadius: '50%' },\n },\n '128': {\n root: { width: 128, height: 128, borderRadius: 16 },\n image: { borderRadius: 16 },\n fallback: { textStyle: 'comp/avatar/128', borderRadius: 16 },\n icon: { width: 96, height: 96 },\n badgeContainer: { display: 'none' },\n },\n },\n\n variant: {\n circle: {\n root: { borderRadius: '50%' },\n image: { borderRadius: '50%' },\n fallback: { borderRadius: '50%' },\n },\n rounded: {},\n },\n\n colorVariant: {\n neutral: { root: { color: 'color/neutral/strong', backgroundColor: 'color/neutral/subtle' } },\n purple: { root: { color: 'color/purple/strong', backgroundColor: 'color/purple/subtle' } },\n indigo: { root: { color: 'color/indigo/strong', backgroundColor: 'color/indigo/subtle' } },\n blue: { root: { color: 'color/blue/strong', backgroundColor: 'color/blue/subtle' } },\n green: { root: { color: 'color/green/strong', backgroundColor: 'color/green/subtle' } },\n yellow: { root: { color: 'color/yellow/strong', backgroundColor: 'color/yellow/subtle' } },\n red: { root: { color: 'color/red/strong', backgroundColor: 'color/red/subtle' } },\n orange: { root: { color: 'color/orange/strong', backgroundColor: 'color/orange/subtle' } },\n turquoise: { root: { color: 'color/turquoise/strong', backgroundColor: 'color/turquoise/subtle' } },\n },\n },\n\n defaultVariants: {\n colorVariant: 'neutral',\n size: '32',\n variant: 'circle',\n },\n});\n\nexport default avatarSlotRecipe;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Avatar.recipe.js","names":[],"sources":["../../../lib/theme/slot-recipes/Avatar.recipe.ts"],"sourcesContent":["import { avatarAnatomy } from '@chakra-ui/react/anatomy';\nimport { defineSlotRecipe } from '@chakra-ui/react/styled-system';\n\nconst avatarSlotRecipe = defineSlotRecipe({\n slots: [...avatarAnatomy.keys(), 'icon', 'badge', 'badgeContainer'],\n className: 'avatar',\n base: {\n root: {\n alignItems: 'center',\n border: '1px solid',\n borderColor: 'border/minimal',\n display: 'inline-flex',\n flexShrink: '0',\n justifyContent: 'center',\n position: 'relative',\n userSelect: 'none',\n verticalAlign: 'top',\n '&:has([data-part=image][data-state=visible])': {\n backgroundColor: 'transparent',\n },\n },\n image: {\n width: '100%',\n height: '100%',\n objectFit: 'cover',\n },\n fallback: {},\n icon: {},\n badge: {\n width: 16,\n height: 16,\n },\n badgeContainer: {\n display: 'flex',\n boxShadow: 'elevation/sm',\n position: 'absolute',\n alignItems: 'center',\n justifyContent: 'center',\n color: 'text/secondary',\n backgroundColor: 'background/primary',\n },\n },\n\n variants: {\n size: {\n '24': {\n root: { width: 24, height: 24, borderRadius: 4 },\n image: { borderRadius: 'calc({radii.4} - 1px)' },\n fallback: { textStyle: 'comp/avatar/24', borderRadius: 'calc({radii.4} - 1px)' },\n icon: { width: 16, height: 16 },\n badgeContainer: { display: 'none' },\n },\n '32': {\n root: { width: 32, height: 32, borderRadius: 6 },\n image: { borderRadius: 'calc({radii.6} - 1px)' },\n fallback: { textStyle: 'comp/avatar/32', borderRadius: 'calc({radii.6} - 1px)' },\n icon: { width: 20, height: 20 },\n badgeContainer: { width: 16, height: 16, bottom: -5, right: -5, borderRadius: 4 },\n },\n '40': {\n root: { width: 40, height: 40, borderRadius: 8 },\n image: { borderRadius: 'calc({radii.8} - 1px)' },\n fallback: { textStyle: 'comp/avatar/40', borderRadius: 'calc({radii.8} - 1px)' },\n icon: { width: 24, height: 24 },\n badgeContainer: { width: 16, height: 16, bottom: -2, right: -2, borderRadius: 4 },\n },\n '48': {\n root: { width: 48, height: 48, borderRadius: '10' },\n image: { borderRadius: 'calc({radii.10} - 1px)' },\n fallback: { textStyle: 'comp/avatar/48', borderRadius: 'calc({radii.10} - 1px)' },\n icon: { width: 32, height: 32 },\n badgeContainer: { width: 24, height: 24, bottom: -7, right: -7, borderRadius: '50%' },\n },\n '64': {\n root: { width: 64, height: 64, borderRadius: 12 },\n image: { borderRadius: 'calc({radii.12} - 1px)' },\n fallback: { textStyle: 'comp/avatar/64', borderRadius: 'calc({radii.12} - 1px)' },\n icon: { width: 48, height: 48 },\n badgeContainer: { width: 24, height: 24, bottom: -5, right: -5, borderRadius: '50%' },\n },\n '128': {\n root: { width: 128, height: 128, borderRadius: 16 },\n image: { borderRadius: 'calc({radii.16} - 1px)' },\n fallback: { textStyle: 'comp/avatar/128', borderRadius: 'calc({radii.16} - 1px)' },\n icon: { width: 96, height: 96 },\n badgeContainer: { display: 'none' },\n },\n },\n\n variant: {\n circle: {\n root: { borderRadius: '50%' },\n image: { borderRadius: '50%' },\n fallback: { borderRadius: '50%' },\n },\n rounded: {},\n },\n\n colorVariant: {\n neutral: { root: { color: 'color/neutral/strong', backgroundColor: 'color/neutral/subtle' } },\n purple: { root: { color: 'color/purple/strong', backgroundColor: 'color/purple/subtle' } },\n indigo: { root: { color: 'color/indigo/strong', backgroundColor: 'color/indigo/subtle' } },\n blue: { root: { color: 'color/blue/strong', backgroundColor: 'color/blue/subtle' } },\n green: { root: { color: 'color/green/strong', backgroundColor: 'color/green/subtle' } },\n yellow: { root: { color: 'color/yellow/strong', backgroundColor: 'color/yellow/subtle' } },\n red: { root: { color: 'color/red/strong', backgroundColor: 'color/red/subtle' } },\n orange: { root: { color: 'color/orange/strong', backgroundColor: 'color/orange/subtle' } },\n turquoise: { root: { color: 'color/turquoise/strong', backgroundColor: 'color/turquoise/subtle' } },\n },\n },\n\n defaultVariants: {\n colorVariant: 'neutral',\n size: '32',\n variant: 'circle',\n },\n});\n\nexport default avatarSlotRecipe;\n"],"mappings":"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"}
@@ -6,14 +6,12 @@ var collapsibleSlotRecipe = defineSlotRecipe({
6
6
  slots: [...collapsibleAnatomy.keys()],
7
7
  base: {
8
8
  root: {
9
- display: "flex",
10
- flexDirection: "column",
11
- width: "100%"
9
+ width: "100%",
10
+ color: "text/body",
11
+ textStyle: "body/lg/regular"
12
12
  },
13
13
  content: {
14
14
  overflow: "hidden",
15
- color: "text/body",
16
- textStyle: "body/lg/regular",
17
15
  position: "relative",
18
16
  _open: {
19
17
  animationName: "expand-height",
@@ -35,7 +33,7 @@ var collapsibleSlotRecipe = defineSlotRecipe({
35
33
  }
36
34
  },
37
35
  trigger: {
38
- display: "inline-flex",
36
+ display: "flex",
39
37
  alignItems: "center",
40
38
  color: "text/link",
41
39
  cursor: "pointer",
@@ -1 +1 @@
1
- {"version":3,"file":"Collapsible.recipe.js","names":[],"sources":["../../../lib/theme/slot-recipes/Collapsible.recipe.ts"],"sourcesContent":["import { collapsibleAnatomy } from '@chakra-ui/react/anatomy';\nimport { defineSlotRecipe } from '@chakra-ui/react/styled-system';\n\nconst collapsibleSlotRecipe = defineSlotRecipe({\n className: 'collapsible',\n slots: [...collapsibleAnatomy.keys()],\n base: {\n root: {\n display: 'flex',\n flexDirection: 'column',\n width: '100%',\n },\n content: {\n overflow: 'hidden',\n color: 'text/body',\n textStyle: 'body/lg/regular',\n position: 'relative',\n _open: {\n animationName: 'expand-height',\n animationDuration: 'moderate',\n },\n _closed: {\n animationName: 'collapse-height',\n animationDuration: 'moderate',\n _after: {\n content: '\"\"',\n position: 'absolute',\n insetInlineStart: 0,\n insetInlineEnd: 0,\n bottom: 0,\n height: '32',\n background: 'linear-gradient(to top, {colors.neutral.100}, transparent)',\n pointerEvents: 'none',\n },\n },\n },\n trigger: {\n display: 'inline-flex',\n alignItems: 'center',\n color: 'text/link',\n cursor: 'pointer',\n gap: '4',\n textStyle: 'body/md/regular',\n paddingBlockStart: '8',\n width: 'fit-content',\n _hover: {\n color: 'text/link-hover',\n _active: {\n color: 'text/primary',\n },\n },\n _active: {\n color: 'text/primary',\n },\n },\n indicator: {},\n },\n});\n\nexport default collapsibleSlotRecipe;\n"],"mappings":";;;AAGA,IAAM,wBAAwB,iBAAiB;CAC7C,WAAW;CACX,OAAO,CAAC,GAAG,mBAAmB,KAAK,CAAC;CACpC,MAAM;EACJ,MAAM;GACJ,SAAS;GACT,eAAe;GACf,OAAO;EACT;EACA,SAAS;GACP,UAAU;GACV,OAAO;GACP,WAAW;GACX,UAAU;GACV,OAAO;IACL,eAAe;IACf,mBAAmB;GACrB;GACA,SAAS;IACP,eAAe;IACf,mBAAmB;IACnB,QAAQ;KACN,SAAS;KACT,UAAU;KACV,kBAAkB;KAClB,gBAAgB;KAChB,QAAQ;KACR,QAAQ;KACR,YAAY;KACZ,eAAe;IACjB;GACF;EACF;EACA,SAAS;GACP,SAAS;GACT,YAAY;GACZ,OAAO;GACP,QAAQ;GACR,KAAK;GACL,WAAW;GACX,mBAAmB;GACnB,OAAO;GACP,QAAQ;IACN,OAAO;IACP,SAAS,EACP,OAAO,eACT;GACF;GACA,SAAS,EACP,OAAO,eACT;EACF;EACA,WAAW,CAAC;CACd;AACF,CAAC"}
1
+ {"version":3,"file":"Collapsible.recipe.js","names":[],"sources":["../../../lib/theme/slot-recipes/Collapsible.recipe.ts"],"sourcesContent":["import { collapsibleAnatomy } from '@chakra-ui/react/anatomy';\nimport { defineSlotRecipe } from '@chakra-ui/react/styled-system';\n\nconst collapsibleSlotRecipe = defineSlotRecipe({\n className: 'collapsible',\n slots: [...collapsibleAnatomy.keys()],\n base: {\n root: {\n width: '100%',\n color: 'text/body',\n textStyle: 'body/lg/regular',\n },\n content: {\n overflow: 'hidden',\n position: 'relative',\n _open: {\n animationName: 'expand-height',\n animationDuration: 'moderate',\n },\n _closed: {\n animationName: 'collapse-height',\n animationDuration: 'moderate',\n _after: {\n content: '\"\"',\n position: 'absolute',\n insetInlineStart: 0,\n insetInlineEnd: 0,\n bottom: 0,\n height: '32',\n background: 'linear-gradient(to top, {colors.neutral.100}, transparent)',\n pointerEvents: 'none',\n },\n },\n },\n trigger: {\n display: 'flex',\n alignItems: 'center',\n color: 'text/link',\n cursor: 'pointer',\n gap: '4',\n textStyle: 'body/md/regular',\n paddingBlockStart: '8',\n width: 'fit-content',\n _hover: {\n color: 'text/link-hover',\n _active: {\n color: 'text/primary',\n },\n },\n _active: {\n color: 'text/primary',\n },\n },\n indicator: {},\n },\n});\n\nexport default collapsibleSlotRecipe;\n"],"mappings":";;;AAGA,IAAM,wBAAwB,iBAAiB;CAC7C,WAAW;CACX,OAAO,CAAC,GAAG,mBAAmB,KAAK,CAAC;CACpC,MAAM;EACJ,MAAM;GACJ,OAAO;GACP,OAAO;GACP,WAAW;EACb;EACA,SAAS;GACP,UAAU;GACV,UAAU;GACV,OAAO;IACL,eAAe;IACf,mBAAmB;GACrB;GACA,SAAS;IACP,eAAe;IACf,mBAAmB;IACnB,QAAQ;KACN,SAAS;KACT,UAAU;KACV,kBAAkB;KAClB,gBAAgB;KAChB,QAAQ;KACR,QAAQ;KACR,YAAY;KACZ,eAAe;IACjB;GACF;EACF;EACA,SAAS;GACP,SAAS;GACT,YAAY;GACZ,OAAO;GACP,QAAQ;GACR,KAAK;GACL,WAAW;GACX,mBAAmB;GACnB,OAAO;GACP,QAAQ;IACN,OAAO;IACP,SAAS,EACP,OAAO,eACT;GACF;GACA,SAAS,EACP,OAAO,eACT;EACF;EACA,WAAW,CAAC;CACd;AACF,CAAC"}
@@ -68,11 +68,11 @@ declare const slotRecipes: {
68
68
  borderRadius: number;
69
69
  };
70
70
  image: {
71
- borderRadius: number;
71
+ borderRadius: "calc({radii.4} - 1px)";
72
72
  };
73
73
  fallback: {
74
74
  textStyle: "comp/avatar/24";
75
- borderRadius: number;
75
+ borderRadius: "calc({radii.4} - 1px)";
76
76
  };
77
77
  icon: {
78
78
  width: number;
@@ -89,11 +89,11 @@ declare const slotRecipes: {
89
89
  borderRadius: number;
90
90
  };
91
91
  image: {
92
- borderRadius: number;
92
+ borderRadius: "calc({radii.6} - 1px)";
93
93
  };
94
94
  fallback: {
95
95
  textStyle: "comp/avatar/32";
96
- borderRadius: number;
96
+ borderRadius: "calc({radii.6} - 1px)";
97
97
  };
98
98
  icon: {
99
99
  width: number;
@@ -114,11 +114,11 @@ declare const slotRecipes: {
114
114
  borderRadius: number;
115
115
  };
116
116
  image: {
117
- borderRadius: number;
117
+ borderRadius: "calc({radii.8} - 1px)";
118
118
  };
119
119
  fallback: {
120
120
  textStyle: "comp/avatar/40";
121
- borderRadius: number;
121
+ borderRadius: "calc({radii.8} - 1px)";
122
122
  };
123
123
  icon: {
124
124
  width: number;
@@ -139,11 +139,11 @@ declare const slotRecipes: {
139
139
  borderRadius: "10";
140
140
  };
141
141
  image: {
142
- borderRadius: "10";
142
+ borderRadius: "calc({radii.10} - 1px)";
143
143
  };
144
144
  fallback: {
145
145
  textStyle: "comp/avatar/48";
146
- borderRadius: "10";
146
+ borderRadius: "calc({radii.10} - 1px)";
147
147
  };
148
148
  icon: {
149
149
  width: number;
@@ -164,11 +164,11 @@ declare const slotRecipes: {
164
164
  borderRadius: number;
165
165
  };
166
166
  image: {
167
- borderRadius: number;
167
+ borderRadius: "calc({radii.12} - 1px)";
168
168
  };
169
169
  fallback: {
170
170
  textStyle: "comp/avatar/64";
171
- borderRadius: number;
171
+ borderRadius: "calc({radii.12} - 1px)";
172
172
  };
173
173
  icon: {
174
174
  width: number;
@@ -189,11 +189,11 @@ declare const slotRecipes: {
189
189
  borderRadius: number;
190
190
  };
191
191
  image: {
192
- borderRadius: number;
192
+ borderRadius: "calc({radii.16} - 1px)";
193
193
  };
194
194
  fallback: {
195
195
  textStyle: "comp/avatar/128";
196
- borderRadius: number;
196
+ borderRadius: "calc({radii.16} - 1px)";
197
197
  };
198
198
  icon: {
199
199
  width: number;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@bitrise/bitkit-v2",
3
3
  "private": false,
4
- "version": "0.3.354",
4
+ "version": "0.3.356",
5
5
  "description": "Bitrise Design System Components built with Chakra UI V3",
6
6
  "keywords": [
7
7
  "react",