@kushagradhawan/kookie-ui 0.1.117 → 0.1.119

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/components.css +77 -0
  2. package/dist/cjs/components/image.d.ts +6 -1
  3. package/dist/cjs/components/image.d.ts.map +1 -1
  4. package/dist/cjs/components/image.js.map +2 -2
  5. package/dist/cjs/components/index.d.ts +1 -0
  6. package/dist/cjs/components/index.d.ts.map +1 -1
  7. package/dist/cjs/components/index.js +1 -1
  8. package/dist/cjs/components/index.js.map +3 -3
  9. package/dist/cjs/components/toolbar.d.ts +42 -0
  10. package/dist/cjs/components/toolbar.d.ts.map +1 -0
  11. package/dist/cjs/components/toolbar.js +2 -0
  12. package/dist/cjs/components/toolbar.js.map +7 -0
  13. package/dist/esm/components/image.d.ts +6 -1
  14. package/dist/esm/components/image.d.ts.map +1 -1
  15. package/dist/esm/components/image.js.map +2 -2
  16. package/dist/esm/components/index.d.ts +1 -0
  17. package/dist/esm/components/index.d.ts.map +1 -1
  18. package/dist/esm/components/index.js +1 -1
  19. package/dist/esm/components/index.js.map +3 -3
  20. package/dist/esm/components/toolbar.d.ts +42 -0
  21. package/dist/esm/components/toolbar.d.ts.map +1 -0
  22. package/dist/esm/components/toolbar.js +2 -0
  23. package/dist/esm/components/toolbar.js.map +7 -0
  24. package/package.json +1 -1
  25. package/schemas/base-button.json +1 -1
  26. package/schemas/button.json +1 -1
  27. package/schemas/icon-button.json +1 -1
  28. package/schemas/index.json +6 -6
  29. package/schemas/toggle-button.json +1 -1
  30. package/schemas/toggle-icon-button.json +1 -1
  31. package/src/components/image.tsx +6 -1
  32. package/src/components/index.css +1 -0
  33. package/src/components/index.tsx +1 -0
  34. package/src/components/toolbar.css +161 -0
  35. package/src/components/toolbar.tsx +251 -0
  36. package/src/styles/index.css +1 -0
  37. package/src/styles/scrollbar.css +31 -0
  38. package/styles.css +98 -0
package/components.css CHANGED
@@ -19989,6 +19989,83 @@
19989
19989
  outline-style: solid;
19990
19990
  outline-color: var(--accent-9);
19991
19991
  }
19992
+ .rt-Toolbar {
19993
+ position: sticky;
19994
+ z-index: 1;
19995
+ }
19996
+ .rt-ToolbarInner {
19997
+ width: 100%;
19998
+ height: 100%;
19999
+ }
20000
+ .rt-Toolbar:where([data-anchor='top']) {
20001
+ top: 0;
20002
+ left: 0;
20003
+ right: 0;
20004
+ }
20005
+ .rt-Toolbar:where([data-anchor='bottom']) {
20006
+ bottom: 0;
20007
+ left: 0;
20008
+ right: 0;
20009
+ }
20010
+ .rt-Toolbar:where([data-anchor='left']) {
20011
+ top: 0;
20012
+ bottom: 0;
20013
+ left: 0;
20014
+ }
20015
+ .rt-Toolbar:where([data-anchor='right']) {
20016
+ top: 0;
20017
+ bottom: 0;
20018
+ right: 0;
20019
+ }
20020
+ .rt-Toolbar:where(:not([data-floating])) {
20021
+ --base-card-border-radius: 0;
20022
+ }
20023
+ .rt-Toolbar:where([data-anchor='top']:not([data-floating]))::after {
20024
+ box-shadow: inset 0 -1px 0 0 var(--gray-6);
20025
+ }
20026
+ :where([data-panel-background='translucent'], [data-material='translucent']) .rt-Toolbar:where([data-anchor='top']:not([data-floating]))::after, .rt-Toolbar:where([data-anchor='top']:not([data-floating])):where([data-panel-background='translucent'], [data-material='translucent'])::after {
20027
+ box-shadow: inset 0 -1px 0 0 var(--gray-a6);
20028
+ }
20029
+ .rt-Toolbar:where([data-anchor='bottom']:not([data-floating]))::after {
20030
+ box-shadow: inset 0 1px 0 0 var(--gray-6);
20031
+ }
20032
+ :where([data-panel-background='translucent'], [data-material='translucent']) .rt-Toolbar:where([data-anchor='bottom']:not([data-floating]))::after, .rt-Toolbar:where([data-anchor='bottom']:not([data-floating])):where([data-panel-background='translucent'], [data-material='translucent'])::after {
20033
+ box-shadow: inset 0 1px 0 0 var(--gray-a6);
20034
+ }
20035
+ .rt-Toolbar:where([data-anchor='left']:not([data-floating]))::after {
20036
+ box-shadow: inset -1px 0 0 0 var(--gray-6);
20037
+ }
20038
+ :where([data-panel-background='translucent'], [data-material='translucent']) .rt-Toolbar:where([data-anchor='left']:not([data-floating]))::after, .rt-Toolbar:where([data-anchor='left']:not([data-floating])):where([data-panel-background='translucent'], [data-material='translucent'])::after {
20039
+ box-shadow: inset -1px 0 0 0 var(--gray-a6);
20040
+ }
20041
+ .rt-Toolbar:where([data-anchor='right']:not([data-floating]))::after {
20042
+ box-shadow: inset 1px 0 0 0 var(--gray-6);
20043
+ }
20044
+ :where([data-panel-background='translucent'], [data-material='translucent']) .rt-Toolbar:where([data-anchor='right']:not([data-floating]))::after, .rt-Toolbar:where([data-anchor='right']:not([data-floating])):where([data-panel-background='translucent'], [data-material='translucent'])::after {
20045
+ box-shadow: inset 1px 0 0 0 var(--gray-a6);
20046
+ }
20047
+ .rt-Toolbar:where(.rt-variant-ghost:not([data-floating]))::after {
20048
+ box-shadow: none;
20049
+ }
20050
+ .rt-Toolbar:where(.rt-variant-soft:not([data-floating]))::after {
20051
+ box-shadow: none;
20052
+ }
20053
+ .rt-Toolbar:where([data-floating]) {
20054
+ position: absolute;
20055
+ }
20056
+ .rt-ToolbarTitle {
20057
+ min-width: 0;
20058
+ flex-shrink: 1;
20059
+ }
20060
+ .rt-ToolbarLeft {
20061
+ justify-content: flex-start;
20062
+ }
20063
+ .rt-ToolbarCenter {
20064
+ justify-content: center;
20065
+ }
20066
+ .rt-ToolbarRight {
20067
+ justify-content: flex-end;
20068
+ }
19992
20069
  .rt-TooltipContent {
19993
20070
  box-sizing: border-box;
19994
20071
  padding: var(--space-1) var(--space-2);
@@ -66,10 +66,15 @@ type ImageProps = CommonImageProps & (ImageImgProps | ImageComponentProps);
66
66
  * // Basic usage
67
67
  * <Image src="/photo.jpg" alt="Team photo" />
68
68
  *
69
- * // With Next.js Image
69
+ * // With Next.js Image (fixed dimensions)
70
70
  * import NextImage from 'next/image';
71
71
  * <Image as={NextImage} src="/photo.jpg" alt="..." width={400} height={300} />
72
72
  *
73
+ * // With Next.js Image (fill mode - parent needs position: relative and dimensions)
74
+ * <div style={{ position: 'relative', width: '100%', aspectRatio: '16/9' }}>
75
+ * <Image as={NextImage} src="/photo.jpg" alt="..." fill />
76
+ * </div>
77
+ *
73
78
  * // With placeholder and skeleton
74
79
  * <Image
75
80
  * src="/high-res.jpg"
@@ -1 +1 @@
1
- {"version":3,"file":"image.d.ts","sourceRoot":"","sources":["../../../src/components/image.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAQjD,OAAO,KAAK,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AACzF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAI5D,KAAK,aAAa,GAAG,eAAe,CAAC,OAAO,aAAa,CAAC,GAAG;IAC3D;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC3B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IACjE;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IAClE;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF,UAAU,gBACR,SAAQ,WAAW,EACjB,UAAU,EACV,WAAW,EACX,WAAW,EACX,aAAa;CAAG;AAEpB,KAAK,aAAa,GAAG;IAAE,EAAE,CAAC,EAAE,KAAK,CAAA;CAAE,GAAG,qBAAqB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC,CAAC;AACxH,KAAK,mBAAmB,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAClF,KAAK,UAAU,GAAG,gBAAgB,GAAG,CAAC,aAAa,GAAG,mBAAmB,CAAC,CAAC;AAE3E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,QAAA,MAAM,KAAK;SAlCiB,KAAK;;QACA,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC;yEA2OvD,CAAC;AAIH,OAAO,EAAE,KAAK,EAAE,CAAC;AACjB,YAAY,EAAE,UAAU,EAAE,CAAC"}
1
+ {"version":3,"file":"image.d.ts","sourceRoot":"","sources":["../../../src/components/image.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAQjD,OAAO,KAAK,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AACzF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAI5D,KAAK,aAAa,GAAG,eAAe,CAAC,OAAO,aAAa,CAAC,GAAG;IAC3D;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC3B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IACjE;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IAClE;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF,UAAU,gBACR,SAAQ,WAAW,EACjB,UAAU,EACV,WAAW,EACX,WAAW,EACX,aAAa;CAAG;AAEpB,KAAK,aAAa,GAAG;IAAE,EAAE,CAAC,EAAE,KAAK,CAAA;CAAE,GAAG,qBAAqB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC,CAAC;AACxH,KAAK,mBAAmB,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAClF,KAAK,UAAU,GAAG,gBAAgB,GAAG,CAAC,aAAa,GAAG,mBAAmB,CAAC,CAAC;AAE3E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,QAAA,MAAM,KAAK;SAvCiB,KAAK;;QACA,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC;yEAgPvD,CAAC;AAIH,OAAO,EAAE,KAAK,EAAE,CAAC;AACjB,YAAY,EAAE,UAAU,EAAE,CAAC"}
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/image.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nimport classNames from 'classnames';\n\nimport { imagePropDefs } from './image.props.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { marginPropDefs } from '../props/margin.props.js';\nimport { widthPropDefs } from '../props/width.props.js';\nimport { heightPropDefs } from '../props/height.props.js';\nimport { layoutPropDefs } from '../props/layout.props.js';\nimport { Skeleton } from './skeleton.js';\n\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { WidthProps } from '../props/width.props.js';\nimport type { HeightProps } from '../props/height.props.js';\nimport type { LayoutProps } from '../props/layout.props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype ImageElement = React.ElementRef<'img'>;\n\ntype ImageOwnProps = GetPropDefTypes<typeof imagePropDefs> & {\n /**\n * Native loading behavior for the image\n * @default 'lazy'\n */\n loading?: 'eager' | 'lazy';\n /**\n * Placeholder image URL to show while the main image is loading (LQIP pattern)\n */\n placeholder?: string;\n /**\n * Shows a skeleton placeholder while loading\n */\n showSkeleton?: boolean;\n /**\n * Whether the image should fade in when loaded\n * @default true\n */\n fadeIn?: boolean;\n /**\n * Callback fired when the image successfully loads\n */\n onLoad?: (event: React.SyntheticEvent<HTMLImageElement>) => void;\n /**\n * Callback fired when the image fails to load\n */\n onError?: (event: React.SyntheticEvent<HTMLImageElement>) => void;\n /**\n * Alternative text for the image (required for accessibility)\n */\n alt: string;\n /**\n * Image source URL\n */\n src: string;\n /**\n * When true, the image will fill its parent container (for Next.js Image compatibility).\n * Parent must have `position: relative` and defined dimensions.\n */\n fill?: boolean;\n};\n\ninterface CommonImageProps\n extends MarginProps,\n WidthProps,\n HeightProps,\n LayoutProps,\n ImageOwnProps {}\n\ntype ImageImgProps = { as?: 'img' } & ComponentPropsWithout<'img', RemovedProps | 'color' | 'width' | 'height' | 'alt'>;\ntype ImageComponentProps = { as: React.ComponentType<any> } & Record<string, any>;\ntype ImageProps = CommonImageProps & (ImageImgProps | ImageComponentProps);\n\n/**\n * Image component for displaying images with enhanced loading states and accessibility.\n *\n * Supports polymorphic rendering via the `as` prop for Next.js Image compatibility.\n *\n * @example\n * ```tsx\n * // Basic usage\n * <Image src=\"/photo.jpg\" alt=\"Team photo\" />\n *\n * // With Next.js Image\n * import NextImage from 'next/image';\n * <Image as={NextImage} src=\"/photo.jpg\" alt=\"...\" width={400} height={300} />\n *\n * // With placeholder and skeleton\n * <Image\n * src=\"/high-res.jpg\"\n * placeholder=\"/low-res.jpg\"\n * showSkeleton\n * alt=\"Product showcase\"\n * />\n *\n * // With caption\n * <Image\n * src=\"/chart.png\"\n * alt=\"Sales data visualization\"\n * caption=\"Q3 2024 Sales Performance\"\n * />\n * ```\n */\nconst Image = React.forwardRef<ImageElement, ImageProps>((props, forwardedRef) => {\n // Extract native width/height before extractProps consumes them (for Next.js Image compatibility)\n const nativeWidth = typeof props.width === 'number' ? props.width : undefined;\n const nativeHeight = typeof props.height === 'number' ? props.height : undefined;\n // Check if fill prop is used (for Next.js Image compatibility)\n const hasFill = 'fill' in props && props.fill === true;\n\n const {\n as: Component = 'img',\n asChild: _asChild, // Extract to prevent passing to DOM element\n fill: _fill, // Extract to prevent passing to native img element (only used for custom components)\n className,\n style,\n loading = 'lazy',\n alt,\n src,\n placeholder,\n showSkeleton = false,\n fadeIn = true,\n loadingAriaLabel = 'Loading image...',\n errorAriaLabel = 'Failed to load image',\n radius,\n caption,\n onLoad: userOnLoad,\n onError: userOnError,\n ...restProps\n } = extractProps(\n props,\n imagePropDefs,\n marginPropDefs,\n widthPropDefs,\n heightPropDefs,\n layoutPropDefs,\n );\n\n // When using a custom component (like Next.js Image), pass native width/height and fill\n const isCustomComponent = Component !== 'img';\n const componentDimensionProps = isCustomComponent\n ? { width: nativeWidth, height: nativeHeight, ...(hasFill ? { fill: true } : {}) }\n : {};\n\n const [loadingState, setLoadingState] = React.useState<'loading' | 'loaded' | 'error'>('loading');\n const [showPlaceholder, setShowPlaceholder] = React.useState(!!placeholder);\n const imgRef = React.useRef<HTMLImageElement>(null);\n\n const handleLoad = React.useCallback(\n (event: React.SyntheticEvent<HTMLImageElement>) => {\n setLoadingState('loaded');\n setShowPlaceholder(false);\n userOnLoad?.(event);\n },\n [userOnLoad],\n );\n\n const handleError = React.useCallback(\n (event: React.SyntheticEvent<HTMLImageElement>) => {\n setLoadingState('error');\n setShowPlaceholder(false);\n userOnError?.(event);\n },\n [userOnError],\n );\n\n // Check if image is already cached\n React.useEffect(() => {\n const img = imgRef.current;\n if (img && img.complete && img.naturalWidth > 0) {\n setLoadingState('loaded');\n setShowPlaceholder(false);\n }\n }, [src]);\n\n if (!src) {\n console.warn('Image component: src prop is required');\n return null;\n }\n\n const isLoading = loadingState === 'loading';\n const isError = loadingState === 'error';\n const isLoaded = loadingState === 'loaded';\n\n // When using fill (Next.js Image), don't add dimension/position styles as Next.js handles them\n const imgStyle: React.CSSProperties = hasFill\n ? {\n display: 'block',\n opacity: fadeIn ? (isLoaded ? 1 : 0) : 1,\n transition: fadeIn ? 'opacity 0.3s ease-out' : 'none',\n }\n : {\n width: '100%',\n height: '100%',\n display: 'block',\n opacity: fadeIn ? (isLoaded ? 1 : 0) : 1,\n transition: fadeIn ? 'opacity 0.3s ease-out' : 'none',\n };\n\n const mergeRefs = (node: HTMLImageElement | null) => {\n (imgRef as React.RefObject<HTMLImageElement | null>).current = node;\n if (typeof forwardedRef === 'function') {\n forwardedRef(node);\n } else if (forwardedRef) {\n forwardedRef.current = node;\n }\n };\n\n const imageElement = (\n <Component\n ref={mergeRefs}\n loading={loading}\n style={hasFill ? imgStyle : { ...imgStyle, position: 'relative', zIndex: 1 }}\n className={classNames('rt-reset', 'rt-Image')}\n alt={alt}\n src={src}\n data-radius={radius}\n onLoad={handleLoad}\n onError={handleError}\n aria-busy={isLoading}\n aria-invalid={isError}\n aria-describedby={isError ? 'image-error' : undefined}\n {...componentDimensionProps}\n {...restProps}\n />\n );\n\n const loadingAnnouncement = isLoading && (\n <div className=\"rt-sr-only\" aria-live=\"polite\" role=\"status\">\n {loadingAriaLabel}\n </div>\n );\n\n const errorAnnouncement = isError && (\n <div id=\"image-error\" className=\"rt-sr-only\" aria-live=\"polite\" role=\"alert\">\n {errorAriaLabel}\n </div>\n );\n\n const skeletonElement = showSkeleton && isLoading && (\n <Skeleton width=\"100%\" height=\"100%\" style={{ position: 'absolute', inset: 0 }} />\n );\n\n const placeholderElement = placeholder && showPlaceholder && (\n <img\n style={{\n ...imgStyle,\n position: 'absolute',\n inset: 0,\n filter: 'blur(4px)',\n opacity: 0.7,\n zIndex: 0,\n }}\n className={classNames('rt-reset', 'rt-Image', 'rt-Image--placeholder')}\n alt=\"\"\n src={placeholder}\n />\n );\n\n // Simple flat structure when no caption\n if (!caption) {\n // When using fill, wrapper uses absolute positioning to fill the nearest positioned ancestor\n const wrapperStyle: React.CSSProperties = hasFill\n ? { position: 'absolute', inset: 0, ...style }\n : { position: 'relative', ...style };\n return (\n <div className={className} style={wrapperStyle}>\n {loadingAnnouncement}\n {errorAnnouncement}\n {skeletonElement}\n {placeholderElement}\n {imageElement}\n </div>\n );\n }\n\n // Flexbox structure when caption is present\n return (\n <div\n className={className}\n style={{\n display: 'flex',\n flexDirection: 'column',\n ...style,\n }}\n >\n <div\n style={{\n position: 'relative',\n flex: '1 1 0%',\n minHeight: 0,\n }}\n >\n {loadingAnnouncement}\n {errorAnnouncement}\n {skeletonElement}\n {placeholderElement}\n {imageElement}\n </div>\n\n <div className=\"rt-Image-caption\" style={{ flex: '0 0 auto' }}>\n {caption}\n </div>\n </div>\n );\n});\n\nImage.displayName = 'Image';\n\nexport { Image };\nexport type { ImageProps };\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import * as React from 'react';\nimport classNames from 'classnames';\n\nimport { imagePropDefs } from './image.props.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { marginPropDefs } from '../props/margin.props.js';\nimport { widthPropDefs } from '../props/width.props.js';\nimport { heightPropDefs } from '../props/height.props.js';\nimport { layoutPropDefs } from '../props/layout.props.js';\nimport { Skeleton } from './skeleton.js';\n\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { WidthProps } from '../props/width.props.js';\nimport type { HeightProps } from '../props/height.props.js';\nimport type { LayoutProps } from '../props/layout.props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype ImageElement = React.ElementRef<'img'>;\n\ntype ImageOwnProps = GetPropDefTypes<typeof imagePropDefs> & {\n /**\n * Native loading behavior for the image\n * @default 'lazy'\n */\n loading?: 'eager' | 'lazy';\n /**\n * Placeholder image URL to show while the main image is loading (LQIP pattern)\n */\n placeholder?: string;\n /**\n * Shows a skeleton placeholder while loading\n */\n showSkeleton?: boolean;\n /**\n * Whether the image should fade in when loaded\n * @default true\n */\n fadeIn?: boolean;\n /**\n * Callback fired when the image successfully loads\n */\n onLoad?: (event: React.SyntheticEvent<HTMLImageElement>) => void;\n /**\n * Callback fired when the image fails to load\n */\n onError?: (event: React.SyntheticEvent<HTMLImageElement>) => void;\n /**\n * Alternative text for the image (required for accessibility)\n */\n alt: string;\n /**\n * Image source URL\n */\n src: string;\n /**\n * When true, the image will fill its parent container (for Next.js Image compatibility).\n * Parent must have `position: relative` and defined dimensions.\n */\n fill?: boolean;\n};\n\ninterface CommonImageProps\n extends MarginProps,\n WidthProps,\n HeightProps,\n LayoutProps,\n ImageOwnProps {}\n\ntype ImageImgProps = { as?: 'img' } & ComponentPropsWithout<'img', RemovedProps | 'color' | 'width' | 'height' | 'alt'>;\ntype ImageComponentProps = { as: React.ComponentType<any> } & Record<string, any>;\ntype ImageProps = CommonImageProps & (ImageImgProps | ImageComponentProps);\n\n/**\n * Image component for displaying images with enhanced loading states and accessibility.\n *\n * Supports polymorphic rendering via the `as` prop for Next.js Image compatibility.\n *\n * @example\n * ```tsx\n * // Basic usage\n * <Image src=\"/photo.jpg\" alt=\"Team photo\" />\n *\n * // With Next.js Image (fixed dimensions)\n * import NextImage from 'next/image';\n * <Image as={NextImage} src=\"/photo.jpg\" alt=\"...\" width={400} height={300} />\n *\n * // With Next.js Image (fill mode - parent needs position: relative and dimensions)\n * <div style={{ position: 'relative', width: '100%', aspectRatio: '16/9' }}>\n * <Image as={NextImage} src=\"/photo.jpg\" alt=\"...\" fill />\n * </div>\n *\n * // With placeholder and skeleton\n * <Image\n * src=\"/high-res.jpg\"\n * placeholder=\"/low-res.jpg\"\n * showSkeleton\n * alt=\"Product showcase\"\n * />\n *\n * // With caption\n * <Image\n * src=\"/chart.png\"\n * alt=\"Sales data visualization\"\n * caption=\"Q3 2024 Sales Performance\"\n * />\n * ```\n */\nconst Image = React.forwardRef<ImageElement, ImageProps>((props, forwardedRef) => {\n // Extract native width/height before extractProps consumes them (for Next.js Image compatibility)\n const nativeWidth = typeof props.width === 'number' ? props.width : undefined;\n const nativeHeight = typeof props.height === 'number' ? props.height : undefined;\n // Check if fill prop is used (for Next.js Image compatibility)\n const hasFill = 'fill' in props && props.fill === true;\n\n const {\n as: Component = 'img',\n asChild: _asChild, // Extract to prevent passing to DOM element\n fill: _fill, // Extract to prevent passing to native img element (only used for custom components)\n className,\n style,\n loading = 'lazy',\n alt,\n src,\n placeholder,\n showSkeleton = false,\n fadeIn = true,\n loadingAriaLabel = 'Loading image...',\n errorAriaLabel = 'Failed to load image',\n radius,\n caption,\n onLoad: userOnLoad,\n onError: userOnError,\n ...restProps\n } = extractProps(\n props,\n imagePropDefs,\n marginPropDefs,\n widthPropDefs,\n heightPropDefs,\n layoutPropDefs,\n );\n\n // When using a custom component (like Next.js Image), pass native width/height and fill\n const isCustomComponent = Component !== 'img';\n const componentDimensionProps = isCustomComponent\n ? { width: nativeWidth, height: nativeHeight, ...(hasFill ? { fill: true } : {}) }\n : {};\n\n const [loadingState, setLoadingState] = React.useState<'loading' | 'loaded' | 'error'>('loading');\n const [showPlaceholder, setShowPlaceholder] = React.useState(!!placeholder);\n const imgRef = React.useRef<HTMLImageElement>(null);\n\n const handleLoad = React.useCallback(\n (event: React.SyntheticEvent<HTMLImageElement>) => {\n setLoadingState('loaded');\n setShowPlaceholder(false);\n userOnLoad?.(event);\n },\n [userOnLoad],\n );\n\n const handleError = React.useCallback(\n (event: React.SyntheticEvent<HTMLImageElement>) => {\n setLoadingState('error');\n setShowPlaceholder(false);\n userOnError?.(event);\n },\n [userOnError],\n );\n\n // Check if image is already cached\n React.useEffect(() => {\n const img = imgRef.current;\n if (img && img.complete && img.naturalWidth > 0) {\n setLoadingState('loaded');\n setShowPlaceholder(false);\n }\n }, [src]);\n\n if (!src) {\n console.warn('Image component: src prop is required');\n return null;\n }\n\n const isLoading = loadingState === 'loading';\n const isError = loadingState === 'error';\n const isLoaded = loadingState === 'loaded';\n\n // When using fill (Next.js Image), don't add dimension/position styles as Next.js handles them\n const imgStyle: React.CSSProperties = hasFill\n ? {\n display: 'block',\n opacity: fadeIn ? (isLoaded ? 1 : 0) : 1,\n transition: fadeIn ? 'opacity 0.3s ease-out' : 'none',\n }\n : {\n width: '100%',\n height: '100%',\n display: 'block',\n opacity: fadeIn ? (isLoaded ? 1 : 0) : 1,\n transition: fadeIn ? 'opacity 0.3s ease-out' : 'none',\n };\n\n const mergeRefs = (node: HTMLImageElement | null) => {\n (imgRef as React.RefObject<HTMLImageElement | null>).current = node;\n if (typeof forwardedRef === 'function') {\n forwardedRef(node);\n } else if (forwardedRef) {\n forwardedRef.current = node;\n }\n };\n\n const imageElement = (\n <Component\n ref={mergeRefs}\n loading={loading}\n style={hasFill ? imgStyle : { ...imgStyle, position: 'relative', zIndex: 1 }}\n className={classNames('rt-reset', 'rt-Image')}\n alt={alt}\n src={src}\n data-radius={radius}\n onLoad={handleLoad}\n onError={handleError}\n aria-busy={isLoading}\n aria-invalid={isError}\n aria-describedby={isError ? 'image-error' : undefined}\n {...componentDimensionProps}\n {...restProps}\n />\n );\n\n const loadingAnnouncement = isLoading && (\n <div className=\"rt-sr-only\" aria-live=\"polite\" role=\"status\">\n {loadingAriaLabel}\n </div>\n );\n\n const errorAnnouncement = isError && (\n <div id=\"image-error\" className=\"rt-sr-only\" aria-live=\"polite\" role=\"alert\">\n {errorAriaLabel}\n </div>\n );\n\n const skeletonElement = showSkeleton && isLoading && (\n <Skeleton width=\"100%\" height=\"100%\" style={{ position: 'absolute', inset: 0 }} />\n );\n\n const placeholderElement = placeholder && showPlaceholder && (\n <img\n style={{\n ...imgStyle,\n position: 'absolute',\n inset: 0,\n filter: 'blur(4px)',\n opacity: 0.7,\n zIndex: 0,\n }}\n className={classNames('rt-reset', 'rt-Image', 'rt-Image--placeholder')}\n alt=\"\"\n src={placeholder}\n />\n );\n\n // Simple flat structure when no caption\n if (!caption) {\n // When using fill, wrapper uses absolute positioning to fill the nearest positioned ancestor\n const wrapperStyle: React.CSSProperties = hasFill\n ? { position: 'absolute', inset: 0, ...style }\n : { position: 'relative', ...style };\n return (\n <div className={className} style={wrapperStyle}>\n {loadingAnnouncement}\n {errorAnnouncement}\n {skeletonElement}\n {placeholderElement}\n {imageElement}\n </div>\n );\n }\n\n // Flexbox structure when caption is present\n return (\n <div\n className={className}\n style={{\n display: 'flex',\n flexDirection: 'column',\n ...style,\n }}\n >\n <div\n style={{\n position: 'relative',\n flex: '1 1 0%',\n minHeight: 0,\n }}\n >\n {loadingAnnouncement}\n {errorAnnouncement}\n {skeletonElement}\n {placeholderElement}\n {imageElement}\n </div>\n\n <div className=\"rt-Image-caption\" style={{ flex: '0 0 auto' }}>\n {caption}\n </div>\n </div>\n );\n});\n\nImage.displayName = 'Image';\n\nexport { Image };\nexport type { ImageProps };\n"],
5
+ "mappings": "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",
6
6
  "names": ["image_exports", "__export", "Image", "__toCommonJS", "React", "import_classnames", "import_image_props", "import_extract_props", "import_margin_props", "import_width_props", "import_height_props", "import_layout_props", "import_skeleton", "props", "forwardedRef", "nativeWidth", "nativeHeight", "hasFill", "Component", "_asChild", "_fill", "className", "style", "loading", "alt", "src", "placeholder", "showSkeleton", "fadeIn", "loadingAriaLabel", "errorAriaLabel", "radius", "caption", "userOnLoad", "userOnError", "restProps", "componentDimensionProps", "loadingState", "setLoadingState", "showPlaceholder", "setShowPlaceholder", "imgRef", "handleLoad", "event", "handleError", "img", "isLoading", "isError", "isLoaded", "imgStyle", "imageElement", "node", "classNames", "loadingAnnouncement", "errorAnnouncement", "skeletonElement", "placeholderElement", "wrapperStyle"]
7
7
  }
@@ -60,6 +60,7 @@ export { ThemePanel, type ThemePanelProps } from './theme-panel.js';
60
60
  export { Theme, ThemeContext, type ThemeProps, useThemeContext } from './theme.js';
61
61
  export { ToggleButton, type ToggleButtonProps } from './toggle-button.js';
62
62
  export { ToggleIconButton, type ToggleIconButtonProps } from './toggle-icon-button.js';
63
+ export { Toolbar } from './toolbar.js';
63
64
  export { Tooltip, type TooltipProps } from './tooltip.js';
64
65
  export { UserCard, type UserCardProps } from './user-card.js';
65
66
  export { VisuallyHidden, type VisuallyHiddenProps } from './visually-hidden.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.tsx"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";var _=Object.create;var m=Object.defineProperty;var $=Object.getOwnPropertyDescriptor;var oo=Object.getOwnPropertyNames;var ro=Object.getPrototypeOf,eo=Object.prototype.hasOwnProperty;var to=(r,e)=>{for(var t in e)m(r,t,{get:e[t],enumerable:!0})},n=(r,e,t,f)=>{if(e&&typeof e=="object"||typeof e=="function")for(let x of oo(e))!eo.call(r,x)&&x!==t&&m(r,x,{get:()=>e[x],enumerable:!(f=$(e,x))||f.enumerable});return r};var o=(r,e,t)=>(t=r!=null?_(ro(r)):{},n(e||!r||!r.__esModule?m(t,"default",{value:r,enumerable:!0}):t,r)),po=r=>n(m({},"__esModule",{value:!0}),r);var so={};to(so,{AccessibleIcon:()=>P.AccessibleIcon,Accordion:()=>xo,AlertDialog:()=>mo,AspectRatio:()=>y.AspectRatio,Avatar:()=>i.Avatar,Badge:()=>l.Badge,Blockquote:()=>c.Blockquote,Box:()=>d.Box,Button:()=>C.Button,Callout:()=>ao,Card:()=>S.Card,Chatbar:()=>Ho,Checkbox:()=>T.Checkbox,CheckboxCards:()=>fo,CheckboxGroup:()=>no,ChevronDownIcon:()=>p.ChevronDownIcon,Code:()=>g.Code,Combobox:()=>co,Container:()=>h.Container,ContextMenu:()=>Po,DataList:()=>yo,Dialog:()=>io,DropdownMenu:()=>lo,Em:()=>u.Em,Flex:()=>b.Flex,Grid:()=>I.Grid,Heading:()=>k.Heading,HoverCard:()=>Co,IconButton:()=>B.IconButton,Image:()=>A.Image,Inset:()=>v.Inset,Kbd:()=>R.Kbd,Link:()=>D.Link,Navbar:()=>So,Popover:()=>To,Portal:()=>H.Portal,Progress:()=>w.Progress,Quote:()=>G.Quote,Radio:()=>F.Radio,RadioCards:()=>go,RadioGroup:()=>ho,Reset:()=>L.Reset,ScrollArea:()=>q.ScrollArea,Section:()=>E.Section,SegmentedControl:()=>uo,Select:()=>bo,Separator:()=>K.Separator,Sheet:()=>Do,Shell:()=>Ro,Sidebar:()=>vo,Skeleton:()=>M.Skeleton,Slider:()=>N.Slider,Slot:()=>a.Slot,Slottable:()=>a.Slottable,Spinner:()=>Q.Spinner,Strong:()=>U.Strong,Switch:()=>V.Switch,TabNav:()=>Io,Table:()=>ko,Tabs:()=>Bo,Text:()=>j.Text,TextArea:()=>z.TextArea,TextField:()=>Ao,Theme:()=>s.Theme,ThemeContext:()=>s.ThemeContext,ThemePanel:()=>J.ThemePanel,ThickCheckIcon:()=>p.ThickCheckIcon,ThickChevronRightIcon:()=>p.ThickChevronRightIcon,ThickDividerHorizontalIcon:()=>p.ThickDividerHorizontalIcon,ToggleButton:()=>O.ToggleButton,ToggleIconButton:()=>W.ToggleIconButton,Tooltip:()=>X.Tooltip,UserCard:()=>Y.UserCard,VisuallyHidden:()=>Z.VisuallyHidden,useThemeContext:()=>s.useThemeContext});module.exports=po(so);var P=require("./accessible-icon.js"),xo=o(require("./accordion.js")),mo=o(require("./alert-dialog.js")),y=require("./aspect-ratio.js"),i=require("./avatar.js"),l=require("./badge.js"),c=require("./blockquote.js"),d=require("./box.js"),C=require("./button.js"),ao=o(require("./callout.js")),S=require("./card.js"),fo=o(require("./checkbox-cards.js")),no=o(require("./checkbox-group.js")),T=require("./checkbox.js"),g=require("./code.js"),h=require("./container.js"),Po=o(require("./context-menu.js")),yo=o(require("./data-list.js")),io=o(require("./dialog.js")),lo=o(require("./dropdown-menu.js")),co=o(require("./combobox.js")),u=require("./em.js"),b=require("./flex.js"),I=require("./grid.js"),k=require("./heading.js"),Co=o(require("./hover-card.js")),B=require("./icon-button.js"),p=require("./icons.js"),A=require("./image.js"),v=require("./inset.js"),R=require("./kbd.js"),D=require("./link.js"),So=o(require("./navbar.js")),To=o(require("./popover.js")),H=require("./portal.js"),w=require("./progress.js"),G=require("./quote.js"),go=o(require("./radio-cards.js")),ho=o(require("./radio-group.js")),F=require("./radio.js"),L=require("./reset.js"),q=require("./scroll-area.js"),uo=o(require("./segmented-control.js")),E=require("./section.js"),bo=o(require("./select.js")),K=require("./separator.js"),M=require("./skeleton.js"),N=require("./slider.js"),a=require("./slot.js"),Q=require("./spinner.js"),U=require("./strong.js"),V=require("./switch.js"),Io=o(require("./tab-nav.js")),ko=o(require("./table.js")),Bo=o(require("./tabs.js")),z=require("./text-area.js"),Ao=o(require("./text-field.js")),j=require("./text.js"),J=require("./theme-panel.js"),s=require("./theme.js"),O=require("./toggle-button.js"),W=require("./toggle-icon-button.js"),X=require("./tooltip.js"),Y=require("./user-card.js"),Z=require("./visually-hidden.js"),vo=o(require("./sidebar.js")),Ro=o(require("./shell.js")),Do=o(require("./sheet.js")),Ho=o(require("./chatbar.js"));
1
+ "use strict";var $=Object.create;var m=Object.defineProperty;var oo=Object.getOwnPropertyDescriptor;var ro=Object.getOwnPropertyNames;var eo=Object.getPrototypeOf,to=Object.prototype.hasOwnProperty;var po=(r,e)=>{for(var t in e)m(r,t,{get:e[t],enumerable:!0})},n=(r,e,t,f)=>{if(e&&typeof e=="object"||typeof e=="function")for(let x of ro(e))!to.call(r,x)&&x!==t&&m(r,x,{get:()=>e[x],enumerable:!(f=oo(e,x))||f.enumerable});return r};var o=(r,e,t)=>(t=r!=null?$(eo(r)):{},n(e||!r||!r.__esModule?m(t,"default",{value:r,enumerable:!0}):t,r)),so=r=>n(m({},"__esModule",{value:!0}),r);var xo={};po(xo,{AccessibleIcon:()=>P.AccessibleIcon,Accordion:()=>mo,AlertDialog:()=>ao,AspectRatio:()=>y.AspectRatio,Avatar:()=>l.Avatar,Badge:()=>i.Badge,Blockquote:()=>c.Blockquote,Box:()=>d.Box,Button:()=>C.Button,Callout:()=>fo,Card:()=>T.Card,Chatbar:()=>wo,Checkbox:()=>S.Checkbox,CheckboxCards:()=>no,CheckboxGroup:()=>Po,ChevronDownIcon:()=>p.ChevronDownIcon,Code:()=>g.Code,Combobox:()=>Co,Container:()=>h.Container,ContextMenu:()=>yo,DataList:()=>lo,Dialog:()=>io,DropdownMenu:()=>co,Em:()=>u.Em,Flex:()=>b.Flex,Grid:()=>I.Grid,Heading:()=>k.Heading,HoverCard:()=>To,IconButton:()=>B.IconButton,Image:()=>A.Image,Inset:()=>v.Inset,Kbd:()=>R.Kbd,Link:()=>D.Link,Navbar:()=>So,Popover:()=>go,Portal:()=>H.Portal,Progress:()=>w.Progress,Quote:()=>G.Quote,Radio:()=>F.Radio,RadioCards:()=>ho,RadioGroup:()=>uo,Reset:()=>L.Reset,ScrollArea:()=>q.ScrollArea,Section:()=>E.Section,SegmentedControl:()=>bo,Select:()=>Io,Separator:()=>K.Separator,Sheet:()=>Ho,Shell:()=>Do,Sidebar:()=>Ro,Skeleton:()=>M.Skeleton,Slider:()=>N.Slider,Slot:()=>a.Slot,Slottable:()=>a.Slottable,Spinner:()=>Q.Spinner,Strong:()=>U.Strong,Switch:()=>V.Switch,TabNav:()=>ko,Table:()=>Bo,Tabs:()=>Ao,Text:()=>j.Text,TextArea:()=>z.TextArea,TextField:()=>vo,Theme:()=>s.Theme,ThemeContext:()=>s.ThemeContext,ThemePanel:()=>J.ThemePanel,ThickCheckIcon:()=>p.ThickCheckIcon,ThickChevronRightIcon:()=>p.ThickChevronRightIcon,ThickDividerHorizontalIcon:()=>p.ThickDividerHorizontalIcon,ToggleButton:()=>O.ToggleButton,ToggleIconButton:()=>W.ToggleIconButton,Toolbar:()=>X.Toolbar,Tooltip:()=>Y.Tooltip,UserCard:()=>Z.UserCard,VisuallyHidden:()=>_.VisuallyHidden,useThemeContext:()=>s.useThemeContext});module.exports=so(xo);var P=require("./accessible-icon.js"),mo=o(require("./accordion.js")),ao=o(require("./alert-dialog.js")),y=require("./aspect-ratio.js"),l=require("./avatar.js"),i=require("./badge.js"),c=require("./blockquote.js"),d=require("./box.js"),C=require("./button.js"),fo=o(require("./callout.js")),T=require("./card.js"),no=o(require("./checkbox-cards.js")),Po=o(require("./checkbox-group.js")),S=require("./checkbox.js"),g=require("./code.js"),h=require("./container.js"),yo=o(require("./context-menu.js")),lo=o(require("./data-list.js")),io=o(require("./dialog.js")),co=o(require("./dropdown-menu.js")),Co=o(require("./combobox.js")),u=require("./em.js"),b=require("./flex.js"),I=require("./grid.js"),k=require("./heading.js"),To=o(require("./hover-card.js")),B=require("./icon-button.js"),p=require("./icons.js"),A=require("./image.js"),v=require("./inset.js"),R=require("./kbd.js"),D=require("./link.js"),So=o(require("./navbar.js")),go=o(require("./popover.js")),H=require("./portal.js"),w=require("./progress.js"),G=require("./quote.js"),ho=o(require("./radio-cards.js")),uo=o(require("./radio-group.js")),F=require("./radio.js"),L=require("./reset.js"),q=require("./scroll-area.js"),bo=o(require("./segmented-control.js")),E=require("./section.js"),Io=o(require("./select.js")),K=require("./separator.js"),M=require("./skeleton.js"),N=require("./slider.js"),a=require("./slot.js"),Q=require("./spinner.js"),U=require("./strong.js"),V=require("./switch.js"),ko=o(require("./tab-nav.js")),Bo=o(require("./table.js")),Ao=o(require("./tabs.js")),z=require("./text-area.js"),vo=o(require("./text-field.js")),j=require("./text.js"),J=require("./theme-panel.js"),s=require("./theme.js"),O=require("./toggle-button.js"),W=require("./toggle-icon-button.js"),X=require("./toolbar.js"),Y=require("./tooltip.js"),Z=require("./user-card.js"),_=require("./visually-hidden.js"),Ro=o(require("./sidebar.js")),Do=o(require("./shell.js")),Ho=o(require("./sheet.js")),wo=o(require("./chatbar.js"));
2
2
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/index.tsx"],
4
- "sourcesContent": ["export { AccessibleIcon, type AccessibleIconProps } from './accessible-icon.js';\nexport * as Accordion from './accordion.js';\nexport * as AlertDialog from './alert-dialog.js';\nexport { AspectRatio, type AspectRatioProps } from './aspect-ratio.js';\nexport { Avatar, type AvatarProps } from './avatar.js';\nexport { Badge, type BadgeProps } from './badge.js';\nexport { Blockquote, type BlockquoteProps } from './blockquote.js';\nexport { Box, type BoxProps } from './box.js';\nexport { Button, type ButtonProps } from './button.js';\nexport * as Callout from './callout.js';\nexport { Card, type CardProps } from './card.js';\nexport * as CheckboxCards from './checkbox-cards.js';\nexport * as CheckboxGroup from './checkbox-group.js';\nexport { Checkbox, type CheckboxProps } from './checkbox.js';\nexport { Code, type CodeProps } from './code.js';\nexport { Container, type ContainerProps } from './container.js';\nexport * as ContextMenu from './context-menu.js';\nexport * as DataList from './data-list.js';\nexport * as Dialog from './dialog.js';\nexport * as DropdownMenu from './dropdown-menu.js';\nexport * as Combobox from './combobox.js';\nexport { Em, type EmProps } from './em.js';\nexport { Flex, type FlexProps } from './flex.js';\nexport { Grid, type GridProps } from './grid.js';\nexport { Heading, type HeadingProps } from './heading.js';\nexport * as HoverCard from './hover-card.js';\nexport { IconButton, type IconButtonProps } from './icon-button.js';\nexport {\n type IconProps,\n ChevronDownIcon,\n ThickCheckIcon,\n ThickChevronRightIcon,\n ThickDividerHorizontalIcon,\n} from './icons.js';\nexport { Image, type ImageProps } from './image.js';\nexport { Inset, type InsetProps } from './inset.js';\nexport { Kbd, type KbdProps } from './kbd.js';\nexport { Link, type LinkProps } from './link.js';\nexport * as Navbar from './navbar.js';\nexport * as Popover from './popover.js';\nexport { Portal, type PortalProps } from './portal.js';\nexport { Progress, type ProgressProps } from './progress.js';\nexport { Quote, type QuoteProps } from './quote.js';\nexport * as RadioCards from './radio-cards.js';\nexport * as RadioGroup from './radio-group.js';\nexport { Radio, type RadioProps } from './radio.js';\nexport { Reset, type ResetProps } from './reset.js';\nexport { ScrollArea, type ScrollAreaProps } from './scroll-area.js';\nexport * as SegmentedControl from './segmented-control.js';\nexport { Section, type SectionProps } from './section.js';\nexport * as Select from './select.js';\nexport { Separator, type SeparatorProps } from './separator.js';\nexport { Skeleton, type SkeletonProps } from './skeleton.js';\nexport { Slider, type SliderProps } from './slider.js';\nexport { Slot, Slottable } from './slot.js';\nexport { Spinner, type SpinnerProps } from './spinner.js';\nexport { Strong, type StrongProps } from './strong.js';\nexport { Switch, type SwitchProps } from './switch.js';\nexport * as TabNav from './tab-nav.js';\nexport * as Table from './table.js';\nexport * as Tabs from './tabs.js';\nexport { TextArea, type TextAreaProps } from './text-area.js';\nexport * as TextField from './text-field.js';\nexport { Text, type TextProps } from './text.js';\nexport { ThemePanel, type ThemePanelProps } from './theme-panel.js';\nexport { Theme, ThemeContext, type ThemeProps, useThemeContext } from './theme.js';\nexport { ToggleButton, type ToggleButtonProps } from './toggle-button.js';\nexport { ToggleIconButton, type ToggleIconButtonProps } from './toggle-icon-button.js';\nexport { Tooltip, type TooltipProps } from './tooltip.js';\nexport { UserCard, type UserCardProps } from './user-card.js';\nexport { VisuallyHidden, type VisuallyHiddenProps } from './visually-hidden.js';\nexport * as Sidebar from './sidebar.js';\nexport * as Shell from './shell.js';\nexport * as Sheet from './sheet.js';\nexport * as Chatbar from './chatbar.js';\n"],
5
- "mappings": "kkBAAA,IAAAA,GAAA,GAAAC,GAAAD,GAAA,mDAAAE,GAAA,gBAAAC,GAAA,8IAAAC,GAAA,4BAAAC,GAAA,0CAAAC,GAAA,kBAAAC,GAAA,mEAAAC,GAAA,0CAAAC,GAAA,aAAAC,GAAA,WAAAC,GAAA,iBAAAC,GAAA,gFAAAC,GAAA,yGAAAC,GAAA,YAAAC,GAAA,+FAAAC,GAAA,eAAAC,GAAA,yFAAAC,GAAA,WAAAC,GAAA,oCAAAC,GAAA,UAAAC,GAAA,YAAAC,GAAA,+JAAAC,GAAA,UAAAC,GAAA,SAAAC,GAAA,sDAAAC,GAAA,ibAAAC,GAAA3B,IAAA,IAAA4B,EAAyD,gCACzD1B,GAA2B,6BAC3BC,GAA6B,gCAC7B0B,EAAmD,6BACnDC,EAAyC,uBACzCC,EAAuC,sBACvCC,EAAiD,2BACjDC,EAAmC,oBACnCC,EAAyC,uBACzC9B,GAAyB,2BACzB+B,EAAqC,qBACrC7B,GAA+B,kCAC/BC,GAA+B,kCAC/B6B,EAA6C,yBAC7CC,EAAqC,qBACrCC,EAA+C,0BAC/C7B,GAA6B,gCAC7BC,GAA0B,6BAC1BC,GAAwB,0BACxBC,GAA8B,iCAC9BJ,GAA0B,4BAC1B+B,EAAiC,mBACjCC,EAAqC,qBACrCC,EAAqC,qBACrCC,EAA2C,wBAC3C7B,GAA2B,8BAC3B8B,EAAiD,4BACjDC,EAMO,sBACPC,EAAuC,sBACvCC,EAAuC,sBACvCC,EAAmC,oBACnCC,EAAqC,qBACrClC,GAAwB,0BACxBC,GAAyB,2BACzBkC,EAAyC,uBACzCC,EAA6C,yBAC7CC,EAAuC,sBACvCnC,GAA4B,+BAC5BC,GAA4B,+BAC5BmC,EAAuC,sBACvCC,EAAuC,sBACvCC,EAAiD,4BACjDpC,GAAkC,qCAClCqC,EAA2C,wBAC3CpC,GAAwB,0BACxBqC,EAA+C,0BAC/CC,EAA6C,yBAC7CC,EAAyC,uBACzCC,EAAgC,qBAChCC,EAA2C,wBAC3CC,EAAyC,uBACzCC,EAAyC,uBACzCvC,GAAwB,2BACxBC,GAAuB,yBACvBC,GAAsB,wBACtBsC,EAA6C,0BAC7CrC,GAA2B,8BAC3BsC,EAAqC,qBACrCC,EAAiD,4BACjDC,EAAsE,sBACtEC,EAAqD,8BACrDC,EAA6D,mCAC7DC,EAA2C,wBAC3CC,EAA6C,0BAC7CC,EAAyD,gCACzDjD,GAAyB,2BACzBD,GAAuB,yBACvBD,GAAuB,yBACvBf,GAAyB",
6
- "names": ["components_exports", "__export", "Accordion", "AlertDialog", "Callout", "Chatbar", "CheckboxCards", "CheckboxGroup", "Combobox", "ContextMenu", "DataList", "Dialog", "DropdownMenu", "HoverCard", "Navbar", "Popover", "RadioCards", "RadioGroup", "SegmentedControl", "Select", "Sheet", "Shell", "Sidebar", "TabNav", "Table", "Tabs", "TextField", "__toCommonJS", "import_accessible_icon", "import_aspect_ratio", "import_avatar", "import_badge", "import_blockquote", "import_box", "import_button", "import_card", "import_checkbox", "import_code", "import_container", "import_em", "import_flex", "import_grid", "import_heading", "import_icon_button", "import_icons", "import_image", "import_inset", "import_kbd", "import_link", "import_portal", "import_progress", "import_quote", "import_radio", "import_reset", "import_scroll_area", "import_section", "import_separator", "import_skeleton", "import_slider", "import_slot", "import_spinner", "import_strong", "import_switch", "import_text_area", "import_text", "import_theme_panel", "import_theme", "import_toggle_button", "import_toggle_icon_button", "import_tooltip", "import_user_card", "import_visually_hidden"]
4
+ "sourcesContent": ["export { AccessibleIcon, type AccessibleIconProps } from './accessible-icon.js';\nexport * as Accordion from './accordion.js';\nexport * as AlertDialog from './alert-dialog.js';\nexport { AspectRatio, type AspectRatioProps } from './aspect-ratio.js';\nexport { Avatar, type AvatarProps } from './avatar.js';\nexport { Badge, type BadgeProps } from './badge.js';\nexport { Blockquote, type BlockquoteProps } from './blockquote.js';\nexport { Box, type BoxProps } from './box.js';\nexport { Button, type ButtonProps } from './button.js';\nexport * as Callout from './callout.js';\nexport { Card, type CardProps } from './card.js';\nexport * as CheckboxCards from './checkbox-cards.js';\nexport * as CheckboxGroup from './checkbox-group.js';\nexport { Checkbox, type CheckboxProps } from './checkbox.js';\nexport { Code, type CodeProps } from './code.js';\nexport { Container, type ContainerProps } from './container.js';\nexport * as ContextMenu from './context-menu.js';\nexport * as DataList from './data-list.js';\nexport * as Dialog from './dialog.js';\nexport * as DropdownMenu from './dropdown-menu.js';\nexport * as Combobox from './combobox.js';\nexport { Em, type EmProps } from './em.js';\nexport { Flex, type FlexProps } from './flex.js';\nexport { Grid, type GridProps } from './grid.js';\nexport { Heading, type HeadingProps } from './heading.js';\nexport * as HoverCard from './hover-card.js';\nexport { IconButton, type IconButtonProps } from './icon-button.js';\nexport {\n type IconProps,\n ChevronDownIcon,\n ThickCheckIcon,\n ThickChevronRightIcon,\n ThickDividerHorizontalIcon,\n} from './icons.js';\nexport { Image, type ImageProps } from './image.js';\nexport { Inset, type InsetProps } from './inset.js';\nexport { Kbd, type KbdProps } from './kbd.js';\nexport { Link, type LinkProps } from './link.js';\nexport * as Navbar from './navbar.js';\nexport * as Popover from './popover.js';\nexport { Portal, type PortalProps } from './portal.js';\nexport { Progress, type ProgressProps } from './progress.js';\nexport { Quote, type QuoteProps } from './quote.js';\nexport * as RadioCards from './radio-cards.js';\nexport * as RadioGroup from './radio-group.js';\nexport { Radio, type RadioProps } from './radio.js';\nexport { Reset, type ResetProps } from './reset.js';\nexport { ScrollArea, type ScrollAreaProps } from './scroll-area.js';\nexport * as SegmentedControl from './segmented-control.js';\nexport { Section, type SectionProps } from './section.js';\nexport * as Select from './select.js';\nexport { Separator, type SeparatorProps } from './separator.js';\nexport { Skeleton, type SkeletonProps } from './skeleton.js';\nexport { Slider, type SliderProps } from './slider.js';\nexport { Slot, Slottable } from './slot.js';\nexport { Spinner, type SpinnerProps } from './spinner.js';\nexport { Strong, type StrongProps } from './strong.js';\nexport { Switch, type SwitchProps } from './switch.js';\nexport * as TabNav from './tab-nav.js';\nexport * as Table from './table.js';\nexport * as Tabs from './tabs.js';\nexport { TextArea, type TextAreaProps } from './text-area.js';\nexport * as TextField from './text-field.js';\nexport { Text, type TextProps } from './text.js';\nexport { ThemePanel, type ThemePanelProps } from './theme-panel.js';\nexport { Theme, ThemeContext, type ThemeProps, useThemeContext } from './theme.js';\nexport { ToggleButton, type ToggleButtonProps } from './toggle-button.js';\nexport { ToggleIconButton, type ToggleIconButtonProps } from './toggle-icon-button.js';\nexport { Toolbar } from './toolbar.js';\nexport { Tooltip, type TooltipProps } from './tooltip.js';\nexport { UserCard, type UserCardProps } from './user-card.js';\nexport { VisuallyHidden, type VisuallyHiddenProps } from './visually-hidden.js';\nexport * as Sidebar from './sidebar.js';\nexport * as Shell from './shell.js';\nexport * as Sheet from './sheet.js';\nexport * as Chatbar from './chatbar.js';\n"],
5
+ "mappings": "okBAAA,IAAAA,GAAA,GAAAC,GAAAD,GAAA,mDAAAE,GAAA,gBAAAC,GAAA,8IAAAC,GAAA,4BAAAC,GAAA,0CAAAC,GAAA,kBAAAC,GAAA,mEAAAC,GAAA,0CAAAC,GAAA,aAAAC,GAAA,WAAAC,GAAA,iBAAAC,GAAA,gFAAAC,GAAA,yGAAAC,GAAA,YAAAC,GAAA,+FAAAC,GAAA,eAAAC,GAAA,yFAAAC,GAAA,WAAAC,GAAA,oCAAAC,GAAA,UAAAC,GAAA,YAAAC,GAAA,+JAAAC,GAAA,UAAAC,GAAA,SAAAC,GAAA,sDAAAC,GAAA,ucAAAC,GAAA3B,IAAA,IAAA4B,EAAyD,gCACzD1B,GAA2B,6BAC3BC,GAA6B,gCAC7B0B,EAAmD,6BACnDC,EAAyC,uBACzCC,EAAuC,sBACvCC,EAAiD,2BACjDC,EAAmC,oBACnCC,EAAyC,uBACzC9B,GAAyB,2BACzB+B,EAAqC,qBACrC7B,GAA+B,kCAC/BC,GAA+B,kCAC/B6B,EAA6C,yBAC7CC,EAAqC,qBACrCC,EAA+C,0BAC/C7B,GAA6B,gCAC7BC,GAA0B,6BAC1BC,GAAwB,0BACxBC,GAA8B,iCAC9BJ,GAA0B,4BAC1B+B,EAAiC,mBACjCC,EAAqC,qBACrCC,EAAqC,qBACrCC,EAA2C,wBAC3C7B,GAA2B,8BAC3B8B,EAAiD,4BACjDC,EAMO,sBACPC,EAAuC,sBACvCC,EAAuC,sBACvCC,EAAmC,oBACnCC,EAAqC,qBACrClC,GAAwB,0BACxBC,GAAyB,2BACzBkC,EAAyC,uBACzCC,EAA6C,yBAC7CC,EAAuC,sBACvCnC,GAA4B,+BAC5BC,GAA4B,+BAC5BmC,EAAuC,sBACvCC,EAAuC,sBACvCC,EAAiD,4BACjDpC,GAAkC,qCAClCqC,EAA2C,wBAC3CpC,GAAwB,0BACxBqC,EAA+C,0BAC/CC,EAA6C,yBAC7CC,EAAyC,uBACzCC,EAAgC,qBAChCC,EAA2C,wBAC3CC,EAAyC,uBACzCC,EAAyC,uBACzCvC,GAAwB,2BACxBC,GAAuB,yBACvBC,GAAsB,wBACtBsC,EAA6C,0BAC7CrC,GAA2B,8BAC3BsC,EAAqC,qBACrCC,EAAiD,4BACjDC,EAAsE,sBACtEC,EAAqD,8BACrDC,EAA6D,mCAC7DC,EAAwB,wBACxBC,EAA2C,wBAC3CC,EAA6C,0BAC7CC,EAAyD,gCACzDlD,GAAyB,2BACzBD,GAAuB,yBACvBD,GAAuB,yBACvBf,GAAyB",
6
+ "names": ["components_exports", "__export", "Accordion", "AlertDialog", "Callout", "Chatbar", "CheckboxCards", "CheckboxGroup", "Combobox", "ContextMenu", "DataList", "Dialog", "DropdownMenu", "HoverCard", "Navbar", "Popover", "RadioCards", "RadioGroup", "SegmentedControl", "Select", "Sheet", "Shell", "Sidebar", "TabNav", "Table", "Tabs", "TextField", "__toCommonJS", "import_accessible_icon", "import_aspect_ratio", "import_avatar", "import_badge", "import_blockquote", "import_box", "import_button", "import_card", "import_checkbox", "import_code", "import_container", "import_em", "import_flex", "import_grid", "import_heading", "import_icon_button", "import_icons", "import_image", "import_inset", "import_kbd", "import_link", "import_portal", "import_progress", "import_quote", "import_radio", "import_reset", "import_scroll_area", "import_section", "import_separator", "import_skeleton", "import_slider", "import_slot", "import_spinner", "import_strong", "import_switch", "import_text_area", "import_text", "import_theme_panel", "import_theme", "import_toggle_button", "import_toggle_icon_button", "import_toolbar", "import_tooltip", "import_user_card", "import_visually_hidden"]
7
7
  }
@@ -0,0 +1,42 @@
1
+ import * as React from 'react';
2
+ import { Heading } from './heading.js';
3
+ import type { CardProps } from './card.js';
4
+ import type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';
5
+ type Anchor = 'top' | 'bottom' | 'left' | 'right';
6
+ type SpaceScale = '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9';
7
+ interface ToolbarRootProps extends Omit<CardProps, 'asChild'> {
8
+ /**
9
+ * Which edge to anchor to. Sets position: sticky and the appropriate edge.
10
+ * @default "top"
11
+ */
12
+ anchor?: Anchor;
13
+ /**
14
+ * Floating variant adds margin from edges for a detached look.
15
+ * When floating, shows full card treatment. When not floating, only shows exposed edge border.
16
+ * @default false
17
+ */
18
+ floating?: boolean;
19
+ /**
20
+ * Margin offset from edges when floating. Uses space scale values.
21
+ * @default "2"
22
+ */
23
+ offset?: SpaceScale;
24
+ }
25
+ declare const ToolbarRoot: React.ForwardRefExoticComponent<ToolbarRootProps & React.RefAttributes<HTMLDivElement>>;
26
+ interface ToolbarSectionProps extends ComponentPropsWithout<'div', RemovedProps> {
27
+ }
28
+ declare const ToolbarLeft: React.ForwardRefExoticComponent<ToolbarSectionProps & React.RefAttributes<HTMLDivElement>>;
29
+ declare const ToolbarCenter: React.ForwardRefExoticComponent<ToolbarSectionProps & React.RefAttributes<HTMLDivElement>>;
30
+ declare const ToolbarRight: React.ForwardRefExoticComponent<ToolbarSectionProps & React.RefAttributes<HTMLDivElement>>;
31
+ interface ToolbarTitleProps extends React.ComponentPropsWithoutRef<typeof Heading> {
32
+ }
33
+ declare const ToolbarTitle: React.ForwardRefExoticComponent<ToolbarTitleProps & React.RefAttributes<HTMLHeadingElement>>;
34
+ declare const Toolbar: typeof ToolbarRoot & {
35
+ Left: typeof ToolbarLeft;
36
+ Center: typeof ToolbarCenter;
37
+ Right: typeof ToolbarRight;
38
+ Title: typeof ToolbarTitle;
39
+ };
40
+ export { Toolbar, ToolbarRoot as Root, ToolbarLeft as Left, ToolbarCenter as Center, ToolbarRight as Right, ToolbarTitle as Title, };
41
+ export type { ToolbarRootProps as RootProps, ToolbarSectionProps as LeftProps, ToolbarSectionProps as CenterProps, ToolbarSectionProps as RightProps, ToolbarTitleProps as TitleProps, };
42
+ //# sourceMappingURL=toolbar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toolbar.d.ts","sourceRoot":"","sources":["../../../src/components/toolbar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAOzF,KAAK,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;AAClD,KAAK,UAAU,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAEtE,UAAU,gBAAiB,SAAQ,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC;IAC3D;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,MAAM,CAAC,EAAE,UAAU,CAAC;CACrB;AAED,QAAA,MAAM,WAAW,yFA6FhB,CAAC;AAQF,UAAU,mBAAoB,SAAQ,qBAAqB,CAAC,KAAK,EAAE,YAAY,CAAC;CAAG;AAEnF,QAAA,MAAM,WAAW,4FAahB,CAAC;AAOF,QAAA,MAAM,aAAa,4FAclB,CAAC;AAOF,QAAA,MAAM,YAAY,4FAajB,CAAC;AAQF,UAAU,iBAAkB,SAAQ,KAAK,CAAC,wBAAwB,CAAC,OAAO,OAAO,CAAC;CAAG;AAErF,QAAA,MAAM,YAAY,8FAajB,CAAC;AAOF,QAAA,MAAM,OAAO,EAAkB,OAAO,WAAW,GAAG;IAClD,IAAI,EAAE,OAAO,WAAW,CAAC;IACzB,MAAM,EAAE,OAAO,aAAa,CAAC;IAC7B,KAAK,EAAE,OAAO,YAAY,CAAC;IAC3B,KAAK,EAAE,OAAO,YAAY,CAAC;CAC5B,CAAC;AAOF,OAAO,EACL,OAAO,EACP,WAAW,IAAI,IAAI,EACnB,WAAW,IAAI,IAAI,EACnB,aAAa,IAAI,MAAM,EACvB,YAAY,IAAI,KAAK,EACrB,YAAY,IAAI,KAAK,GACtB,CAAC;AACF,YAAY,EACV,gBAAgB,IAAI,SAAS,EAC7B,mBAAmB,IAAI,SAAS,EAChC,mBAAmB,IAAI,WAAW,EAClC,mBAAmB,IAAI,UAAU,EACjC,iBAAiB,IAAI,UAAU,GAChC,CAAC"}
@@ -0,0 +1,2 @@
1
+ "use strict";var O=Object.create;var f=Object.defineProperty;var k=Object.getOwnPropertyDescriptor;var $=Object.getOwnPropertyNames;var A=Object.getPrototypeOf,G=Object.prototype.hasOwnProperty;var I=(o,e)=>{for(var t in e)f(o,t,{get:e[t],enumerable:!0})},x=(o,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of $(e))!G.call(o,n)&&n!==t&&f(o,n,{get:()=>e[n],enumerable:!(r=k(e,n))||r.enumerable});return o};var v=(o,e,t)=>(t=o!=null?O(A(o)):{},x(e||!o||!o.__esModule?f(t,"default",{value:o,enumerable:!0}):t,o)),q=o=>x(f({},"__esModule",{value:!0}),o);var B={};I(B,{Center:()=>b,Left:()=>T,Right:()=>d,Root:()=>m,Title:()=>g,Toolbar:()=>i});module.exports=q(B);var a=v(require("react")),s=v(require("classnames")),N=require("./card.js"),p=require("./flex.js"),L=require("./heading.js");const m=a.forwardRef((o,e)=>{const{anchor:t="top",floating:r=!1,offset:n="2",size:y="1",variant:h="ghost",material:H,className:w,style:P,children:z,...F}=o,c=t==="top"||t==="bottom",S=a.useRef(null),j=a.useCallback(l=>{S.current=l,typeof e=="function"?e(l):e&&(e.current=l)},[e]);a.useEffect(()=>{const l=S.current;if(!l)return;const R=l.parentElement;if(!R)return;const C=()=>{let u=c?l.offsetHeight:l.offsetWidth;if(r){const D=getComputedStyle(l),M=parseFloat(D.marginTop)||0;u+=M*2}c?R.style.setProperty("--rt-toolbar-height",`${u}px`):R.style.setProperty("--rt-toolbar-width",`${u}px`)};C();const E=new ResizeObserver(C);return E.observe(l),()=>E.disconnect()},[c,r]);const W=r?{margin:`var(--space-${n})`,...P}:P;return a.createElement(N.Card,{ref:j,size:y,variant:h,material:H,"data-anchor":t,"data-floating":r||void 0,className:(0,s.default)("rt-Toolbar",w),style:W,...F},a.createElement(p.Flex,{align:"center",justify:"between",direction:c?"row":"column",gap:"2",className:"rt-ToolbarInner"},z))});m.displayName="Toolbar.Root";const T=a.forwardRef(({className:o,children:e,...t},r)=>a.createElement(p.Flex,{ref:r,align:"center",gap:"2",flexShrink:"0",className:(0,s.default)("rt-ToolbarSection","rt-ToolbarLeft",o),...t},e));T.displayName="Toolbar.Left";const b=a.forwardRef(({className:o,children:e,...t},r)=>a.createElement(p.Flex,{ref:r,align:"center",justify:"center",flexGrow:"1",minWidth:"0",className:(0,s.default)("rt-ToolbarSection","rt-ToolbarCenter",o),...t},e));b.displayName="Toolbar.Center";const d=a.forwardRef(({className:o,children:e,...t},r)=>a.createElement(p.Flex,{ref:r,align:"center",gap:"2",flexShrink:"0",className:(0,s.default)("rt-ToolbarSection","rt-ToolbarRight",o),...t},e));d.displayName="Toolbar.Right";const g=a.forwardRef(({className:o,size:e="3",weight:t="medium",truncate:r=!0,children:n,...y},h)=>a.createElement(L.Heading,{ref:h,size:e,weight:t,truncate:r,className:(0,s.default)("rt-ToolbarTitle",o),...y},n));g.displayName="Toolbar.Title";const i=m;i.Left=T,i.Center=b,i.Right=d,i.Title=g;
2
+ //# sourceMappingURL=toolbar.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/toolbar.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nimport classNames from 'classnames';\n\nimport { Card } from './card.js';\nimport { Flex } from './flex.js';\nimport { Heading } from './heading.js';\n\nimport type { CardProps } from './card.js';\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\n\n// ============================================================================\n// Toolbar Root\n// ============================================================================\n\ntype ToolbarRootElement = React.ElementRef<'div'>;\ntype Anchor = 'top' | 'bottom' | 'left' | 'right';\ntype SpaceScale = '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9';\n\ninterface ToolbarRootProps extends Omit<CardProps, 'asChild'> {\n /**\n * Which edge to anchor to. Sets position: sticky and the appropriate edge.\n * @default \"top\"\n */\n anchor?: Anchor;\n /**\n * Floating variant adds margin from edges for a detached look.\n * When floating, shows full card treatment. When not floating, only shows exposed edge border.\n * @default false\n */\n floating?: boolean;\n /**\n * Margin offset from edges when floating. Uses space scale values.\n * @default \"2\"\n */\n offset?: SpaceScale;\n}\n\nconst ToolbarRoot = React.forwardRef<ToolbarRootElement, ToolbarRootProps>(\n (props, forwardedRef) => {\n const {\n anchor = 'top',\n floating = false,\n offset = '2',\n size = '1',\n variant = 'ghost',\n material,\n className,\n style,\n children,\n ...restProps\n } = props;\n\n const isHorizontal = anchor === 'top' || anchor === 'bottom';\n const internalRef = React.useRef<HTMLDivElement>(null);\n\n // Merge refs\n const mergedRef = React.useCallback(\n (node: HTMLDivElement | null) => {\n (internalRef as React.MutableRefObject<HTMLDivElement | null>).current = node;\n if (typeof forwardedRef === 'function') {\n forwardedRef(node);\n } else if (forwardedRef) {\n forwardedRef.current = node;\n }\n },\n [forwardedRef],\n );\n\n // Measure and expose height/width as CSS variable on parent element\n // so that sibling elements can access it\n React.useEffect(() => {\n const element = internalRef.current;\n if (!element) return;\n\n const parent = element.parentElement;\n if (!parent) return;\n\n const updateDimension = () => {\n let dimension = isHorizontal ? element.offsetHeight : element.offsetWidth;\n\n // For floating toolbars, include the margin offset (2x for top + bottom or left + right)\n if (floating) {\n const computedStyle = getComputedStyle(element);\n const margin = parseFloat(computedStyle.marginTop) || 0;\n dimension += margin * 2;\n }\n\n if (isHorizontal) {\n parent.style.setProperty('--rt-toolbar-height', `${dimension}px`);\n } else {\n parent.style.setProperty('--rt-toolbar-width', `${dimension}px`);\n }\n };\n\n updateDimension();\n\n const resizeObserver = new ResizeObserver(updateDimension);\n resizeObserver.observe(element);\n\n return () => resizeObserver.disconnect();\n }, [isHorizontal, floating]);\n\n const floatingStyle = floating\n ? { margin: `var(--space-${offset})`, ...style }\n : style;\n\n return (\n <Card\n ref={mergedRef}\n size={size}\n variant={variant}\n material={material}\n data-anchor={anchor}\n data-floating={floating || undefined}\n className={classNames('rt-Toolbar', className)}\n style={floatingStyle}\n {...restProps}\n >\n <Flex\n align=\"center\"\n justify=\"between\"\n direction={isHorizontal ? 'row' : 'column'}\n gap=\"2\"\n className=\"rt-ToolbarInner\"\n >\n {children}\n </Flex>\n </Card>\n );\n },\n);\nToolbarRoot.displayName = 'Toolbar.Root';\n\n// ============================================================================\n// Toolbar Left (for horizontal) / Start (alias)\n// ============================================================================\n\ntype ToolbarSectionElement = React.ElementRef<'div'>;\ninterface ToolbarSectionProps extends ComponentPropsWithout<'div', RemovedProps> {}\n\nconst ToolbarLeft = React.forwardRef<ToolbarSectionElement, ToolbarSectionProps>(\n ({ className, children, ...props }, forwardedRef) => (\n <Flex\n ref={forwardedRef}\n align=\"center\"\n gap=\"2\"\n flexShrink=\"0\"\n className={classNames('rt-ToolbarSection', 'rt-ToolbarLeft', className)}\n {...props}\n >\n {children}\n </Flex>\n ),\n);\nToolbarLeft.displayName = 'Toolbar.Left';\n\n// ============================================================================\n// Toolbar Center\n// ============================================================================\n\nconst ToolbarCenter = React.forwardRef<ToolbarSectionElement, ToolbarSectionProps>(\n ({ className, children, ...props }, forwardedRef) => (\n <Flex\n ref={forwardedRef}\n align=\"center\"\n justify=\"center\"\n flexGrow=\"1\"\n minWidth=\"0\"\n className={classNames('rt-ToolbarSection', 'rt-ToolbarCenter', className)}\n {...props}\n >\n {children}\n </Flex>\n ),\n);\nToolbarCenter.displayName = 'Toolbar.Center';\n\n// ============================================================================\n// Toolbar Right (for horizontal) / End (alias)\n// ============================================================================\n\nconst ToolbarRight = React.forwardRef<ToolbarSectionElement, ToolbarSectionProps>(\n ({ className, children, ...props }, forwardedRef) => (\n <Flex\n ref={forwardedRef}\n align=\"center\"\n gap=\"2\"\n flexShrink=\"0\"\n className={classNames('rt-ToolbarSection', 'rt-ToolbarRight', className)}\n {...props}\n >\n {children}\n </Flex>\n ),\n);\nToolbarRight.displayName = 'Toolbar.Right';\n\n// ============================================================================\n// Toolbar Title\n// ============================================================================\n\ntype ToolbarTitleElement = React.ElementRef<typeof Heading>;\ninterface ToolbarTitleProps extends React.ComponentPropsWithoutRef<typeof Heading> {}\n\nconst ToolbarTitle = React.forwardRef<ToolbarTitleElement, ToolbarTitleProps>(\n ({ className, size = '3', weight = 'medium', truncate = true, children, ...props }, forwardedRef) => (\n <Heading\n ref={forwardedRef}\n size={size}\n weight={weight}\n truncate={truncate}\n className={classNames('rt-ToolbarTitle', className)}\n {...props}\n >\n {children}\n </Heading>\n ),\n);\nToolbarTitle.displayName = 'Toolbar.Title';\n\n// ============================================================================\n// Exports\n// ============================================================================\n\nconst Toolbar = ToolbarRoot as typeof ToolbarRoot & {\n Left: typeof ToolbarLeft;\n Center: typeof ToolbarCenter;\n Right: typeof ToolbarRight;\n Title: typeof ToolbarTitle;\n};\n\nToolbar.Left = ToolbarLeft;\nToolbar.Center = ToolbarCenter;\nToolbar.Right = ToolbarRight;\nToolbar.Title = ToolbarTitle;\n\nexport {\n Toolbar,\n ToolbarRoot as Root,\n ToolbarLeft as Left,\n ToolbarCenter as Center,\n ToolbarRight as Right,\n ToolbarTitle as Title,\n};\nexport type {\n ToolbarRootProps as RootProps,\n ToolbarSectionProps as LeftProps,\n ToolbarSectionProps as CenterProps,\n ToolbarSectionProps as RightProps,\n ToolbarTitleProps as TitleProps,\n};\n"],
5
+ "mappings": "0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,YAAAE,EAAA,SAAAC,EAAA,UAAAC,EAAA,SAAAC,EAAA,UAAAC,EAAA,YAAAC,IAAA,eAAAC,EAAAR,GAAA,IAAAS,EAAuB,oBACvBC,EAAuB,yBAEvBC,EAAqB,qBACrBC,EAAqB,qBACrBC,EAAwB,wBAgCxB,MAAMR,EAAcI,EAAM,WACxB,CAACK,EAAOC,IAAiB,CACvB,KAAM,CACJ,OAAAC,EAAS,MACT,SAAAC,EAAW,GACX,OAAAC,EAAS,IACT,KAAAC,EAAO,IACP,QAAAC,EAAU,QACV,SAAAC,EACA,UAAAC,EACA,MAAAC,EACA,SAAAC,EACA,GAAGC,CACL,EAAIX,EAEEY,EAAeV,IAAW,OAASA,IAAW,SAC9CW,EAAclB,EAAM,OAAuB,IAAI,EAG/CmB,EAAYnB,EAAM,YACrBoB,GAAgC,CAC9BF,EAA8D,QAAUE,EACrE,OAAOd,GAAiB,WAC1BA,EAAac,CAAI,EACRd,IACTA,EAAa,QAAUc,EAE3B,EACA,CAACd,CAAY,CACf,EAIAN,EAAM,UAAU,IAAM,CACpB,MAAMqB,EAAUH,EAAY,QAC5B,GAAI,CAACG,EAAS,OAEd,MAAMC,EAASD,EAAQ,cACvB,GAAI,CAACC,EAAQ,OAEb,MAAMC,EAAkB,IAAM,CAC5B,IAAIC,EAAYP,EAAeI,EAAQ,aAAeA,EAAQ,YAG9D,GAAIb,EAAU,CACZ,MAAMiB,EAAgB,iBAAiBJ,CAAO,EACxCK,EAAS,WAAWD,EAAc,SAAS,GAAK,EACtDD,GAAaE,EAAS,CACxB,CAEIT,EACFK,EAAO,MAAM,YAAY,sBAAuB,GAAGE,CAAS,IAAI,EAEhEF,EAAO,MAAM,YAAY,qBAAsB,GAAGE,CAAS,IAAI,CAEnE,EAEAD,EAAgB,EAEhB,MAAMI,EAAiB,IAAI,eAAeJ,CAAe,EACzD,OAAAI,EAAe,QAAQN,CAAO,EAEvB,IAAMM,EAAe,WAAW,CACzC,EAAG,CAACV,EAAcT,CAAQ,CAAC,EAE3B,MAAMoB,EAAgBpB,EAClB,CAAE,OAAQ,eAAeC,CAAM,IAAK,GAAGK,CAAM,EAC7CA,EAEJ,OACEd,EAAA,cAAC,QACC,IAAKmB,EACL,KAAMT,EACN,QAASC,EACT,SAAUC,EACV,cAAaL,EACb,gBAAeC,GAAY,OAC3B,aAAW,EAAAqB,SAAW,aAAchB,CAAS,EAC7C,MAAOe,EACN,GAAGZ,GAEJhB,EAAA,cAAC,QACC,MAAM,SACN,QAAQ,UACR,UAAWiB,EAAe,MAAQ,SAClC,IAAI,IACJ,UAAU,mBAETF,CACH,CACF,CAEJ,CACF,EACAnB,EAAY,YAAc,eAS1B,MAAMF,EAAcM,EAAM,WACxB,CAAC,CAAE,UAAAa,EAAW,SAAAE,EAAU,GAAGV,CAAM,EAAGC,IAClCN,EAAA,cAAC,QACC,IAAKM,EACL,MAAM,SACN,IAAI,IACJ,WAAW,IACX,aAAW,EAAAuB,SAAW,oBAAqB,iBAAkBhB,CAAS,EACrE,GAAGR,GAEHU,CACH,CAEJ,EACArB,EAAY,YAAc,eAM1B,MAAMD,EAAgBO,EAAM,WAC1B,CAAC,CAAE,UAAAa,EAAW,SAAAE,EAAU,GAAGV,CAAM,EAAGC,IAClCN,EAAA,cAAC,QACC,IAAKM,EACL,MAAM,SACN,QAAQ,SACR,SAAS,IACT,SAAS,IACT,aAAW,EAAAuB,SAAW,oBAAqB,mBAAoBhB,CAAS,EACvE,GAAGR,GAEHU,CACH,CAEJ,EACAtB,EAAc,YAAc,iBAM5B,MAAME,EAAeK,EAAM,WACzB,CAAC,CAAE,UAAAa,EAAW,SAAAE,EAAU,GAAGV,CAAM,EAAGC,IAClCN,EAAA,cAAC,QACC,IAAKM,EACL,MAAM,SACN,IAAI,IACJ,WAAW,IACX,aAAW,EAAAuB,SAAW,oBAAqB,kBAAmBhB,CAAS,EACtE,GAAGR,GAEHU,CACH,CAEJ,EACApB,EAAa,YAAc,gBAS3B,MAAME,EAAeG,EAAM,WACzB,CAAC,CAAE,UAAAa,EAAW,KAAAH,EAAO,IAAK,OAAAoB,EAAS,SAAU,SAAAC,EAAW,GAAM,SAAAhB,EAAU,GAAGV,CAAM,EAAGC,IAClFN,EAAA,cAAC,WACC,IAAKM,EACL,KAAMI,EACN,OAAQoB,EACR,SAAUC,EACV,aAAW,EAAAF,SAAW,kBAAmBhB,CAAS,EACjD,GAAGR,GAEHU,CACH,CAEJ,EACAlB,EAAa,YAAc,gBAM3B,MAAMC,EAAUF,EAOhBE,EAAQ,KAAOJ,EACfI,EAAQ,OAASL,EACjBK,EAAQ,MAAQH,EAChBG,EAAQ,MAAQD",
6
+ "names": ["toolbar_exports", "__export", "ToolbarCenter", "ToolbarLeft", "ToolbarRight", "ToolbarRoot", "ToolbarTitle", "Toolbar", "__toCommonJS", "React", "import_classnames", "import_card", "import_flex", "import_heading", "props", "forwardedRef", "anchor", "floating", "offset", "size", "variant", "material", "className", "style", "children", "restProps", "isHorizontal", "internalRef", "mergedRef", "node", "element", "parent", "updateDimension", "dimension", "computedStyle", "margin", "resizeObserver", "floatingStyle", "classNames", "weight", "truncate"]
7
+ }
@@ -66,10 +66,15 @@ type ImageProps = CommonImageProps & (ImageImgProps | ImageComponentProps);
66
66
  * // Basic usage
67
67
  * <Image src="/photo.jpg" alt="Team photo" />
68
68
  *
69
- * // With Next.js Image
69
+ * // With Next.js Image (fixed dimensions)
70
70
  * import NextImage from 'next/image';
71
71
  * <Image as={NextImage} src="/photo.jpg" alt="..." width={400} height={300} />
72
72
  *
73
+ * // With Next.js Image (fill mode - parent needs position: relative and dimensions)
74
+ * <div style={{ position: 'relative', width: '100%', aspectRatio: '16/9' }}>
75
+ * <Image as={NextImage} src="/photo.jpg" alt="..." fill />
76
+ * </div>
77
+ *
73
78
  * // With placeholder and skeleton
74
79
  * <Image
75
80
  * src="/high-res.jpg"
@@ -1 +1 @@
1
- {"version":3,"file":"image.d.ts","sourceRoot":"","sources":["../../../src/components/image.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAQjD,OAAO,KAAK,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AACzF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAI5D,KAAK,aAAa,GAAG,eAAe,CAAC,OAAO,aAAa,CAAC,GAAG;IAC3D;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC3B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IACjE;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IAClE;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF,UAAU,gBACR,SAAQ,WAAW,EACjB,UAAU,EACV,WAAW,EACX,WAAW,EACX,aAAa;CAAG;AAEpB,KAAK,aAAa,GAAG;IAAE,EAAE,CAAC,EAAE,KAAK,CAAA;CAAE,GAAG,qBAAqB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC,CAAC;AACxH,KAAK,mBAAmB,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAClF,KAAK,UAAU,GAAG,gBAAgB,GAAG,CAAC,aAAa,GAAG,mBAAmB,CAAC,CAAC;AAE3E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,QAAA,MAAM,KAAK;SAlCiB,KAAK;;QACA,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC;yEA2OvD,CAAC;AAIH,OAAO,EAAE,KAAK,EAAE,CAAC;AACjB,YAAY,EAAE,UAAU,EAAE,CAAC"}
1
+ {"version":3,"file":"image.d.ts","sourceRoot":"","sources":["../../../src/components/image.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAQjD,OAAO,KAAK,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AACzF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAI5D,KAAK,aAAa,GAAG,eAAe,CAAC,OAAO,aAAa,CAAC,GAAG;IAC3D;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC3B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IACjE;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IAClE;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF,UAAU,gBACR,SAAQ,WAAW,EACjB,UAAU,EACV,WAAW,EACX,WAAW,EACX,aAAa;CAAG;AAEpB,KAAK,aAAa,GAAG;IAAE,EAAE,CAAC,EAAE,KAAK,CAAA;CAAE,GAAG,qBAAqB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC,CAAC;AACxH,KAAK,mBAAmB,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAClF,KAAK,UAAU,GAAG,gBAAgB,GAAG,CAAC,aAAa,GAAG,mBAAmB,CAAC,CAAC;AAE3E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,QAAA,MAAM,KAAK;SAvCiB,KAAK;;QACA,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC;yEAgPvD,CAAC;AAIH,OAAO,EAAE,KAAK,EAAE,CAAC;AACjB,YAAY,EAAE,UAAU,EAAE,CAAC"}
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/image.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nimport classNames from 'classnames';\n\nimport { imagePropDefs } from './image.props.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { marginPropDefs } from '../props/margin.props.js';\nimport { widthPropDefs } from '../props/width.props.js';\nimport { heightPropDefs } from '../props/height.props.js';\nimport { layoutPropDefs } from '../props/layout.props.js';\nimport { Skeleton } from './skeleton.js';\n\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { WidthProps } from '../props/width.props.js';\nimport type { HeightProps } from '../props/height.props.js';\nimport type { LayoutProps } from '../props/layout.props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype ImageElement = React.ElementRef<'img'>;\n\ntype ImageOwnProps = GetPropDefTypes<typeof imagePropDefs> & {\n /**\n * Native loading behavior for the image\n * @default 'lazy'\n */\n loading?: 'eager' | 'lazy';\n /**\n * Placeholder image URL to show while the main image is loading (LQIP pattern)\n */\n placeholder?: string;\n /**\n * Shows a skeleton placeholder while loading\n */\n showSkeleton?: boolean;\n /**\n * Whether the image should fade in when loaded\n * @default true\n */\n fadeIn?: boolean;\n /**\n * Callback fired when the image successfully loads\n */\n onLoad?: (event: React.SyntheticEvent<HTMLImageElement>) => void;\n /**\n * Callback fired when the image fails to load\n */\n onError?: (event: React.SyntheticEvent<HTMLImageElement>) => void;\n /**\n * Alternative text for the image (required for accessibility)\n */\n alt: string;\n /**\n * Image source URL\n */\n src: string;\n /**\n * When true, the image will fill its parent container (for Next.js Image compatibility).\n * Parent must have `position: relative` and defined dimensions.\n */\n fill?: boolean;\n};\n\ninterface CommonImageProps\n extends MarginProps,\n WidthProps,\n HeightProps,\n LayoutProps,\n ImageOwnProps {}\n\ntype ImageImgProps = { as?: 'img' } & ComponentPropsWithout<'img', RemovedProps | 'color' | 'width' | 'height' | 'alt'>;\ntype ImageComponentProps = { as: React.ComponentType<any> } & Record<string, any>;\ntype ImageProps = CommonImageProps & (ImageImgProps | ImageComponentProps);\n\n/**\n * Image component for displaying images with enhanced loading states and accessibility.\n *\n * Supports polymorphic rendering via the `as` prop for Next.js Image compatibility.\n *\n * @example\n * ```tsx\n * // Basic usage\n * <Image src=\"/photo.jpg\" alt=\"Team photo\" />\n *\n * // With Next.js Image\n * import NextImage from 'next/image';\n * <Image as={NextImage} src=\"/photo.jpg\" alt=\"...\" width={400} height={300} />\n *\n * // With placeholder and skeleton\n * <Image\n * src=\"/high-res.jpg\"\n * placeholder=\"/low-res.jpg\"\n * showSkeleton\n * alt=\"Product showcase\"\n * />\n *\n * // With caption\n * <Image\n * src=\"/chart.png\"\n * alt=\"Sales data visualization\"\n * caption=\"Q3 2024 Sales Performance\"\n * />\n * ```\n */\nconst Image = React.forwardRef<ImageElement, ImageProps>((props, forwardedRef) => {\n // Extract native width/height before extractProps consumes them (for Next.js Image compatibility)\n const nativeWidth = typeof props.width === 'number' ? props.width : undefined;\n const nativeHeight = typeof props.height === 'number' ? props.height : undefined;\n // Check if fill prop is used (for Next.js Image compatibility)\n const hasFill = 'fill' in props && props.fill === true;\n\n const {\n as: Component = 'img',\n asChild: _asChild, // Extract to prevent passing to DOM element\n fill: _fill, // Extract to prevent passing to native img element (only used for custom components)\n className,\n style,\n loading = 'lazy',\n alt,\n src,\n placeholder,\n showSkeleton = false,\n fadeIn = true,\n loadingAriaLabel = 'Loading image...',\n errorAriaLabel = 'Failed to load image',\n radius,\n caption,\n onLoad: userOnLoad,\n onError: userOnError,\n ...restProps\n } = extractProps(\n props,\n imagePropDefs,\n marginPropDefs,\n widthPropDefs,\n heightPropDefs,\n layoutPropDefs,\n );\n\n // When using a custom component (like Next.js Image), pass native width/height and fill\n const isCustomComponent = Component !== 'img';\n const componentDimensionProps = isCustomComponent\n ? { width: nativeWidth, height: nativeHeight, ...(hasFill ? { fill: true } : {}) }\n : {};\n\n const [loadingState, setLoadingState] = React.useState<'loading' | 'loaded' | 'error'>('loading');\n const [showPlaceholder, setShowPlaceholder] = React.useState(!!placeholder);\n const imgRef = React.useRef<HTMLImageElement>(null);\n\n const handleLoad = React.useCallback(\n (event: React.SyntheticEvent<HTMLImageElement>) => {\n setLoadingState('loaded');\n setShowPlaceholder(false);\n userOnLoad?.(event);\n },\n [userOnLoad],\n );\n\n const handleError = React.useCallback(\n (event: React.SyntheticEvent<HTMLImageElement>) => {\n setLoadingState('error');\n setShowPlaceholder(false);\n userOnError?.(event);\n },\n [userOnError],\n );\n\n // Check if image is already cached\n React.useEffect(() => {\n const img = imgRef.current;\n if (img && img.complete && img.naturalWidth > 0) {\n setLoadingState('loaded');\n setShowPlaceholder(false);\n }\n }, [src]);\n\n if (!src) {\n console.warn('Image component: src prop is required');\n return null;\n }\n\n const isLoading = loadingState === 'loading';\n const isError = loadingState === 'error';\n const isLoaded = loadingState === 'loaded';\n\n // When using fill (Next.js Image), don't add dimension/position styles as Next.js handles them\n const imgStyle: React.CSSProperties = hasFill\n ? {\n display: 'block',\n opacity: fadeIn ? (isLoaded ? 1 : 0) : 1,\n transition: fadeIn ? 'opacity 0.3s ease-out' : 'none',\n }\n : {\n width: '100%',\n height: '100%',\n display: 'block',\n opacity: fadeIn ? (isLoaded ? 1 : 0) : 1,\n transition: fadeIn ? 'opacity 0.3s ease-out' : 'none',\n };\n\n const mergeRefs = (node: HTMLImageElement | null) => {\n (imgRef as React.RefObject<HTMLImageElement | null>).current = node;\n if (typeof forwardedRef === 'function') {\n forwardedRef(node);\n } else if (forwardedRef) {\n forwardedRef.current = node;\n }\n };\n\n const imageElement = (\n <Component\n ref={mergeRefs}\n loading={loading}\n style={hasFill ? imgStyle : { ...imgStyle, position: 'relative', zIndex: 1 }}\n className={classNames('rt-reset', 'rt-Image')}\n alt={alt}\n src={src}\n data-radius={radius}\n onLoad={handleLoad}\n onError={handleError}\n aria-busy={isLoading}\n aria-invalid={isError}\n aria-describedby={isError ? 'image-error' : undefined}\n {...componentDimensionProps}\n {...restProps}\n />\n );\n\n const loadingAnnouncement = isLoading && (\n <div className=\"rt-sr-only\" aria-live=\"polite\" role=\"status\">\n {loadingAriaLabel}\n </div>\n );\n\n const errorAnnouncement = isError && (\n <div id=\"image-error\" className=\"rt-sr-only\" aria-live=\"polite\" role=\"alert\">\n {errorAriaLabel}\n </div>\n );\n\n const skeletonElement = showSkeleton && isLoading && (\n <Skeleton width=\"100%\" height=\"100%\" style={{ position: 'absolute', inset: 0 }} />\n );\n\n const placeholderElement = placeholder && showPlaceholder && (\n <img\n style={{\n ...imgStyle,\n position: 'absolute',\n inset: 0,\n filter: 'blur(4px)',\n opacity: 0.7,\n zIndex: 0,\n }}\n className={classNames('rt-reset', 'rt-Image', 'rt-Image--placeholder')}\n alt=\"\"\n src={placeholder}\n />\n );\n\n // Simple flat structure when no caption\n if (!caption) {\n // When using fill, wrapper uses absolute positioning to fill the nearest positioned ancestor\n const wrapperStyle: React.CSSProperties = hasFill\n ? { position: 'absolute', inset: 0, ...style }\n : { position: 'relative', ...style };\n return (\n <div className={className} style={wrapperStyle}>\n {loadingAnnouncement}\n {errorAnnouncement}\n {skeletonElement}\n {placeholderElement}\n {imageElement}\n </div>\n );\n }\n\n // Flexbox structure when caption is present\n return (\n <div\n className={className}\n style={{\n display: 'flex',\n flexDirection: 'column',\n ...style,\n }}\n >\n <div\n style={{\n position: 'relative',\n flex: '1 1 0%',\n minHeight: 0,\n }}\n >\n {loadingAnnouncement}\n {errorAnnouncement}\n {skeletonElement}\n {placeholderElement}\n {imageElement}\n </div>\n\n <div className=\"rt-Image-caption\" style={{ flex: '0 0 auto' }}>\n {caption}\n </div>\n </div>\n );\n});\n\nImage.displayName = 'Image';\n\nexport { Image };\nexport type { ImageProps };\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import * as React from 'react';\nimport classNames from 'classnames';\n\nimport { imagePropDefs } from './image.props.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { marginPropDefs } from '../props/margin.props.js';\nimport { widthPropDefs } from '../props/width.props.js';\nimport { heightPropDefs } from '../props/height.props.js';\nimport { layoutPropDefs } from '../props/layout.props.js';\nimport { Skeleton } from './skeleton.js';\n\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { WidthProps } from '../props/width.props.js';\nimport type { HeightProps } from '../props/height.props.js';\nimport type { LayoutProps } from '../props/layout.props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype ImageElement = React.ElementRef<'img'>;\n\ntype ImageOwnProps = GetPropDefTypes<typeof imagePropDefs> & {\n /**\n * Native loading behavior for the image\n * @default 'lazy'\n */\n loading?: 'eager' | 'lazy';\n /**\n * Placeholder image URL to show while the main image is loading (LQIP pattern)\n */\n placeholder?: string;\n /**\n * Shows a skeleton placeholder while loading\n */\n showSkeleton?: boolean;\n /**\n * Whether the image should fade in when loaded\n * @default true\n */\n fadeIn?: boolean;\n /**\n * Callback fired when the image successfully loads\n */\n onLoad?: (event: React.SyntheticEvent<HTMLImageElement>) => void;\n /**\n * Callback fired when the image fails to load\n */\n onError?: (event: React.SyntheticEvent<HTMLImageElement>) => void;\n /**\n * Alternative text for the image (required for accessibility)\n */\n alt: string;\n /**\n * Image source URL\n */\n src: string;\n /**\n * When true, the image will fill its parent container (for Next.js Image compatibility).\n * Parent must have `position: relative` and defined dimensions.\n */\n fill?: boolean;\n};\n\ninterface CommonImageProps\n extends MarginProps,\n WidthProps,\n HeightProps,\n LayoutProps,\n ImageOwnProps {}\n\ntype ImageImgProps = { as?: 'img' } & ComponentPropsWithout<'img', RemovedProps | 'color' | 'width' | 'height' | 'alt'>;\ntype ImageComponentProps = { as: React.ComponentType<any> } & Record<string, any>;\ntype ImageProps = CommonImageProps & (ImageImgProps | ImageComponentProps);\n\n/**\n * Image component for displaying images with enhanced loading states and accessibility.\n *\n * Supports polymorphic rendering via the `as` prop for Next.js Image compatibility.\n *\n * @example\n * ```tsx\n * // Basic usage\n * <Image src=\"/photo.jpg\" alt=\"Team photo\" />\n *\n * // With Next.js Image (fixed dimensions)\n * import NextImage from 'next/image';\n * <Image as={NextImage} src=\"/photo.jpg\" alt=\"...\" width={400} height={300} />\n *\n * // With Next.js Image (fill mode - parent needs position: relative and dimensions)\n * <div style={{ position: 'relative', width: '100%', aspectRatio: '16/9' }}>\n * <Image as={NextImage} src=\"/photo.jpg\" alt=\"...\" fill />\n * </div>\n *\n * // With placeholder and skeleton\n * <Image\n * src=\"/high-res.jpg\"\n * placeholder=\"/low-res.jpg\"\n * showSkeleton\n * alt=\"Product showcase\"\n * />\n *\n * // With caption\n * <Image\n * src=\"/chart.png\"\n * alt=\"Sales data visualization\"\n * caption=\"Q3 2024 Sales Performance\"\n * />\n * ```\n */\nconst Image = React.forwardRef<ImageElement, ImageProps>((props, forwardedRef) => {\n // Extract native width/height before extractProps consumes them (for Next.js Image compatibility)\n const nativeWidth = typeof props.width === 'number' ? props.width : undefined;\n const nativeHeight = typeof props.height === 'number' ? props.height : undefined;\n // Check if fill prop is used (for Next.js Image compatibility)\n const hasFill = 'fill' in props && props.fill === true;\n\n const {\n as: Component = 'img',\n asChild: _asChild, // Extract to prevent passing to DOM element\n fill: _fill, // Extract to prevent passing to native img element (only used for custom components)\n className,\n style,\n loading = 'lazy',\n alt,\n src,\n placeholder,\n showSkeleton = false,\n fadeIn = true,\n loadingAriaLabel = 'Loading image...',\n errorAriaLabel = 'Failed to load image',\n radius,\n caption,\n onLoad: userOnLoad,\n onError: userOnError,\n ...restProps\n } = extractProps(\n props,\n imagePropDefs,\n marginPropDefs,\n widthPropDefs,\n heightPropDefs,\n layoutPropDefs,\n );\n\n // When using a custom component (like Next.js Image), pass native width/height and fill\n const isCustomComponent = Component !== 'img';\n const componentDimensionProps = isCustomComponent\n ? { width: nativeWidth, height: nativeHeight, ...(hasFill ? { fill: true } : {}) }\n : {};\n\n const [loadingState, setLoadingState] = React.useState<'loading' | 'loaded' | 'error'>('loading');\n const [showPlaceholder, setShowPlaceholder] = React.useState(!!placeholder);\n const imgRef = React.useRef<HTMLImageElement>(null);\n\n const handleLoad = React.useCallback(\n (event: React.SyntheticEvent<HTMLImageElement>) => {\n setLoadingState('loaded');\n setShowPlaceholder(false);\n userOnLoad?.(event);\n },\n [userOnLoad],\n );\n\n const handleError = React.useCallback(\n (event: React.SyntheticEvent<HTMLImageElement>) => {\n setLoadingState('error');\n setShowPlaceholder(false);\n userOnError?.(event);\n },\n [userOnError],\n );\n\n // Check if image is already cached\n React.useEffect(() => {\n const img = imgRef.current;\n if (img && img.complete && img.naturalWidth > 0) {\n setLoadingState('loaded');\n setShowPlaceholder(false);\n }\n }, [src]);\n\n if (!src) {\n console.warn('Image component: src prop is required');\n return null;\n }\n\n const isLoading = loadingState === 'loading';\n const isError = loadingState === 'error';\n const isLoaded = loadingState === 'loaded';\n\n // When using fill (Next.js Image), don't add dimension/position styles as Next.js handles them\n const imgStyle: React.CSSProperties = hasFill\n ? {\n display: 'block',\n opacity: fadeIn ? (isLoaded ? 1 : 0) : 1,\n transition: fadeIn ? 'opacity 0.3s ease-out' : 'none',\n }\n : {\n width: '100%',\n height: '100%',\n display: 'block',\n opacity: fadeIn ? (isLoaded ? 1 : 0) : 1,\n transition: fadeIn ? 'opacity 0.3s ease-out' : 'none',\n };\n\n const mergeRefs = (node: HTMLImageElement | null) => {\n (imgRef as React.RefObject<HTMLImageElement | null>).current = node;\n if (typeof forwardedRef === 'function') {\n forwardedRef(node);\n } else if (forwardedRef) {\n forwardedRef.current = node;\n }\n };\n\n const imageElement = (\n <Component\n ref={mergeRefs}\n loading={loading}\n style={hasFill ? imgStyle : { ...imgStyle, position: 'relative', zIndex: 1 }}\n className={classNames('rt-reset', 'rt-Image')}\n alt={alt}\n src={src}\n data-radius={radius}\n onLoad={handleLoad}\n onError={handleError}\n aria-busy={isLoading}\n aria-invalid={isError}\n aria-describedby={isError ? 'image-error' : undefined}\n {...componentDimensionProps}\n {...restProps}\n />\n );\n\n const loadingAnnouncement = isLoading && (\n <div className=\"rt-sr-only\" aria-live=\"polite\" role=\"status\">\n {loadingAriaLabel}\n </div>\n );\n\n const errorAnnouncement = isError && (\n <div id=\"image-error\" className=\"rt-sr-only\" aria-live=\"polite\" role=\"alert\">\n {errorAriaLabel}\n </div>\n );\n\n const skeletonElement = showSkeleton && isLoading && (\n <Skeleton width=\"100%\" height=\"100%\" style={{ position: 'absolute', inset: 0 }} />\n );\n\n const placeholderElement = placeholder && showPlaceholder && (\n <img\n style={{\n ...imgStyle,\n position: 'absolute',\n inset: 0,\n filter: 'blur(4px)',\n opacity: 0.7,\n zIndex: 0,\n }}\n className={classNames('rt-reset', 'rt-Image', 'rt-Image--placeholder')}\n alt=\"\"\n src={placeholder}\n />\n );\n\n // Simple flat structure when no caption\n if (!caption) {\n // When using fill, wrapper uses absolute positioning to fill the nearest positioned ancestor\n const wrapperStyle: React.CSSProperties = hasFill\n ? { position: 'absolute', inset: 0, ...style }\n : { position: 'relative', ...style };\n return (\n <div className={className} style={wrapperStyle}>\n {loadingAnnouncement}\n {errorAnnouncement}\n {skeletonElement}\n {placeholderElement}\n {imageElement}\n </div>\n );\n }\n\n // Flexbox structure when caption is present\n return (\n <div\n className={className}\n style={{\n display: 'flex',\n flexDirection: 'column',\n ...style,\n }}\n >\n <div\n style={{\n position: 'relative',\n flex: '1 1 0%',\n minHeight: 0,\n }}\n >\n {loadingAnnouncement}\n {errorAnnouncement}\n {skeletonElement}\n {placeholderElement}\n {imageElement}\n </div>\n\n <div className=\"rt-Image-caption\" style={{ flex: '0 0 auto' }}>\n {caption}\n </div>\n </div>\n );\n});\n\nImage.displayName = 'Image';\n\nexport { Image };\nexport type { ImageProps };\n"],
5
+ "mappings": "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",
6
6
  "names": ["React", "classNames", "imagePropDefs", "extractProps", "marginPropDefs", "widthPropDefs", "heightPropDefs", "layoutPropDefs", "Skeleton", "Image", "props", "forwardedRef", "nativeWidth", "nativeHeight", "hasFill", "Component", "_asChild", "_fill", "className", "style", "loading", "alt", "src", "placeholder", "showSkeleton", "fadeIn", "loadingAriaLabel", "errorAriaLabel", "radius", "caption", "userOnLoad", "userOnError", "restProps", "componentDimensionProps", "loadingState", "setLoadingState", "showPlaceholder", "setShowPlaceholder", "imgRef", "handleLoad", "event", "handleError", "img", "isLoading", "isError", "isLoaded", "imgStyle", "imageElement", "node", "loadingAnnouncement", "errorAnnouncement", "skeletonElement", "placeholderElement", "wrapperStyle"]
7
7
  }
@@ -60,6 +60,7 @@ export { ThemePanel, type ThemePanelProps } from './theme-panel.js';
60
60
  export { Theme, ThemeContext, type ThemeProps, useThemeContext } from './theme.js';
61
61
  export { ToggleButton, type ToggleButtonProps } from './toggle-button.js';
62
62
  export { ToggleIconButton, type ToggleIconButtonProps } from './toggle-icon-button.js';
63
+ export { Toolbar } from './toolbar.js';
63
64
  export { Tooltip, type TooltipProps } from './tooltip.js';
64
65
  export { UserCard, type UserCardProps } from './user-card.js';
65
66
  export { VisuallyHidden, type VisuallyHiddenProps } from './visually-hidden.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.tsx"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{AccessibleIcon as e}from"./accessible-icon.js";import*as t from"./accordion.js";import*as p from"./alert-dialog.js";import{AspectRatio as x}from"./aspect-ratio.js";import{Avatar as a}from"./avatar.js";import{Badge as n}from"./badge.js";import{Blockquote as y}from"./blockquote.js";import{Box as l}from"./box.js";import{Button as d}from"./button.js";import*as C from"./callout.js";import{Card as T}from"./card.js";import*as g from"./checkbox-cards.js";import*as h from"./checkbox-group.js";import{Checkbox as b}from"./checkbox.js";import{Code as k}from"./code.js";import{Container as A}from"./container.js";import*as v from"./context-menu.js";import*as R from"./data-list.js";import*as D from"./dialog.js";import*as H from"./dropdown-menu.js";import*as w from"./combobox.js";import{Em as F}from"./em.js";import{Flex as q}from"./flex.js";import{Grid as K}from"./grid.js";import{Heading as N}from"./heading.js";import*as Q from"./hover-card.js";import{IconButton as V}from"./icon-button.js";import{ChevronDownIcon as j,ThickCheckIcon as J,ThickChevronRightIcon as O,ThickDividerHorizontalIcon as W}from"./icons.js";import{Image as Y}from"./image.js";import{Inset as _}from"./inset.js";import{Kbd as oo}from"./kbd.js";import{Link as eo}from"./link.js";import*as to from"./navbar.js";import*as po from"./popover.js";import{Portal as xo}from"./portal.js";import{Progress as ao}from"./progress.js";import{Quote as no}from"./quote.js";import*as Po from"./radio-cards.js";import*as yo from"./radio-group.js";import{Radio as lo}from"./radio.js";import{Reset as Co}from"./reset.js";import{ScrollArea as To}from"./scroll-area.js";import*as go from"./segmented-control.js";import{Section as uo}from"./section.js";import*as bo from"./select.js";import{Separator as ko}from"./separator.js";import{Skeleton as Ao}from"./skeleton.js";import{Slider as Ro}from"./slider.js";import{Slot as Ho,Slottable as wo}from"./slot.js";import{Spinner as Fo}from"./spinner.js";import{Strong as qo}from"./strong.js";import{Switch as Ko}from"./switch.js";import*as Mo from"./tab-nav.js";import*as No from"./table.js";import*as Qo from"./tabs.js";import{TextArea as Vo}from"./text-area.js";import*as zo from"./text-field.js";import{Text as Jo}from"./text.js";import{ThemePanel as Wo}from"./theme-panel.js";import{Theme as Yo,ThemeContext as Zo,useThemeContext as _o}from"./theme.js";import{ToggleButton as or}from"./toggle-button.js";import{ToggleIconButton as er}from"./toggle-icon-button.js";import{Tooltip as pr}from"./tooltip.js";import{UserCard as xr}from"./user-card.js";import{VisuallyHidden as ar}from"./visually-hidden.js";import*as fr from"./sidebar.js";import*as nr from"./shell.js";import*as Pr from"./sheet.js";import*as yr from"./chatbar.js";export{e as AccessibleIcon,t as Accordion,p as AlertDialog,x as AspectRatio,a as Avatar,n as Badge,y as Blockquote,l as Box,d as Button,C as Callout,T as Card,yr as Chatbar,b as Checkbox,g as CheckboxCards,h as CheckboxGroup,j as ChevronDownIcon,k as Code,w as Combobox,A as Container,v as ContextMenu,R as DataList,D as Dialog,H as DropdownMenu,F as Em,q as Flex,K as Grid,N as Heading,Q as HoverCard,V as IconButton,Y as Image,_ as Inset,oo as Kbd,eo as Link,to as Navbar,po as Popover,xo as Portal,ao as Progress,no as Quote,lo as Radio,Po as RadioCards,yo as RadioGroup,Co as Reset,To as ScrollArea,uo as Section,go as SegmentedControl,bo as Select,ko as Separator,Pr as Sheet,nr as Shell,fr as Sidebar,Ao as Skeleton,Ro as Slider,Ho as Slot,wo as Slottable,Fo as Spinner,qo as Strong,Ko as Switch,Mo as TabNav,No as Table,Qo as Tabs,Jo as Text,Vo as TextArea,zo as TextField,Yo as Theme,Zo as ThemeContext,Wo as ThemePanel,J as ThickCheckIcon,O as ThickChevronRightIcon,W as ThickDividerHorizontalIcon,or as ToggleButton,er as ToggleIconButton,pr as Tooltip,xr as UserCard,ar as VisuallyHidden,_o as useThemeContext};
1
+ import{AccessibleIcon as e}from"./accessible-icon.js";import*as t from"./accordion.js";import*as p from"./alert-dialog.js";import{AspectRatio as x}from"./aspect-ratio.js";import{Avatar as a}from"./avatar.js";import{Badge as n}from"./badge.js";import{Blockquote as y}from"./blockquote.js";import{Box as i}from"./box.js";import{Button as d}from"./button.js";import*as C from"./callout.js";import{Card as S}from"./card.js";import*as g from"./checkbox-cards.js";import*as h from"./checkbox-group.js";import{Checkbox as b}from"./checkbox.js";import{Code as k}from"./code.js";import{Container as A}from"./container.js";import*as v from"./context-menu.js";import*as R from"./data-list.js";import*as D from"./dialog.js";import*as H from"./dropdown-menu.js";import*as w from"./combobox.js";import{Em as F}from"./em.js";import{Flex as q}from"./flex.js";import{Grid as K}from"./grid.js";import{Heading as N}from"./heading.js";import*as Q from"./hover-card.js";import{IconButton as V}from"./icon-button.js";import{ChevronDownIcon as j,ThickCheckIcon as J,ThickChevronRightIcon as O,ThickDividerHorizontalIcon as W}from"./icons.js";import{Image as Y}from"./image.js";import{Inset as _}from"./inset.js";import{Kbd as oo}from"./kbd.js";import{Link as eo}from"./link.js";import*as to from"./navbar.js";import*as po from"./popover.js";import{Portal as xo}from"./portal.js";import{Progress as ao}from"./progress.js";import{Quote as no}from"./quote.js";import*as Po from"./radio-cards.js";import*as yo from"./radio-group.js";import{Radio as io}from"./radio.js";import{Reset as Co}from"./reset.js";import{ScrollArea as So}from"./scroll-area.js";import*as go from"./segmented-control.js";import{Section as uo}from"./section.js";import*as bo from"./select.js";import{Separator as ko}from"./separator.js";import{Skeleton as Ao}from"./skeleton.js";import{Slider as Ro}from"./slider.js";import{Slot as Ho,Slottable as wo}from"./slot.js";import{Spinner as Fo}from"./spinner.js";import{Strong as qo}from"./strong.js";import{Switch as Ko}from"./switch.js";import*as Mo from"./tab-nav.js";import*as No from"./table.js";import*as Qo from"./tabs.js";import{TextArea as Vo}from"./text-area.js";import*as zo from"./text-field.js";import{Text as Jo}from"./text.js";import{ThemePanel as Wo}from"./theme-panel.js";import{Theme as Yo,ThemeContext as Zo,useThemeContext as _o}from"./theme.js";import{ToggleButton as or}from"./toggle-button.js";import{ToggleIconButton as er}from"./toggle-icon-button.js";import{Toolbar as pr}from"./toolbar.js";import{Tooltip as xr}from"./tooltip.js";import{UserCard as ar}from"./user-card.js";import{VisuallyHidden as nr}from"./visually-hidden.js";import*as Pr from"./sidebar.js";import*as yr from"./shell.js";import*as lr from"./sheet.js";import*as ir from"./chatbar.js";export{e as AccessibleIcon,t as Accordion,p as AlertDialog,x as AspectRatio,a as Avatar,n as Badge,y as Blockquote,i as Box,d as Button,C as Callout,S as Card,ir as Chatbar,b as Checkbox,g as CheckboxCards,h as CheckboxGroup,j as ChevronDownIcon,k as Code,w as Combobox,A as Container,v as ContextMenu,R as DataList,D as Dialog,H as DropdownMenu,F as Em,q as Flex,K as Grid,N as Heading,Q as HoverCard,V as IconButton,Y as Image,_ as Inset,oo as Kbd,eo as Link,to as Navbar,po as Popover,xo as Portal,ao as Progress,no as Quote,io as Radio,Po as RadioCards,yo as RadioGroup,Co as Reset,So as ScrollArea,uo as Section,go as SegmentedControl,bo as Select,ko as Separator,lr as Sheet,yr as Shell,Pr as Sidebar,Ao as Skeleton,Ro as Slider,Ho as Slot,wo as Slottable,Fo as Spinner,qo as Strong,Ko as Switch,Mo as TabNav,No as Table,Qo as Tabs,Jo as Text,Vo as TextArea,zo as TextField,Yo as Theme,Zo as ThemeContext,Wo as ThemePanel,J as ThickCheckIcon,O as ThickChevronRightIcon,W as ThickDividerHorizontalIcon,or as ToggleButton,er as ToggleIconButton,pr as Toolbar,xr as Tooltip,ar as UserCard,nr as VisuallyHidden,_o as useThemeContext};
2
2
  //# sourceMappingURL=index.js.map