@fuf-stack/pixels 0.43.2 → 0.43.4

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.
@@ -1,11 +1,11 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
3
 
4
- var _chunkPCQ7BVAEcjs = require('../chunk-PCQ7BVAE.cjs');
4
+ var _chunk4X7MUSJBcjs = require('../chunk-4X7MUSJB.cjs');
5
5
  require('../chunk-TX2VP4J7.cjs');
6
6
  require('../chunk-D4TLDLEX.cjs');
7
7
 
8
8
 
9
9
 
10
- exports.Popover = _chunkPCQ7BVAEcjs.Popover_default; exports.default = _chunkPCQ7BVAEcjs.Popover_default2;
10
+ exports.Popover = _chunk4X7MUSJBcjs.Popover_default; exports.default = _chunk4X7MUSJBcjs.Popover_default2;
11
11
  //# sourceMappingURL=index.cjs.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  Popover_default,
3
3
  Popover_default2
4
- } from "../chunk-RQPO3EBI.js";
4
+ } from "../chunk-LQZEECJY.js";
5
5
  import "../chunk-EQVC4PJE.js";
6
6
  import "../chunk-J7N2552D.js";
7
7
  export {
@@ -1,11 +1,11 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
3
 
4
- var _chunkTSJGQNILcjs = require('../chunk-TSJGQNIL.cjs');
4
+ var _chunkDDQIHJ3Ecjs = require('../chunk-DDQIHJ3E.cjs');
5
5
  require('../chunk-TX2VP4J7.cjs');
6
6
  require('../chunk-D4TLDLEX.cjs');
7
7
 
8
8
 
9
9
 
10
- exports.Tooltip = _chunkTSJGQNILcjs.Tooltip_default; exports.default = _chunkTSJGQNILcjs.Tooltip_default2;
10
+ exports.Tooltip = _chunkDDQIHJ3Ecjs.Tooltip_default; exports.default = _chunkDDQIHJ3Ecjs.Tooltip_default2;
11
11
  //# sourceMappingURL=index.cjs.map
@@ -1,8 +1,8 @@
1
- import { T as Tooltip } from '../Tooltip-DxeP1nbI.cjs';
2
- export { b as TooltipPlacement, a as TooltipProps } from '../Tooltip-DxeP1nbI.cjs';
1
+ import { T as Tooltip } from '../Tooltip-Cpmigwzs.cjs';
2
+ export { b as TooltipPlacement, a as TooltipProps } from '../Tooltip-Cpmigwzs.cjs';
3
3
  import 'react/jsx-runtime';
4
- import 'tailwind-variants/dist/config.js';
5
4
  import 'tailwind-variants';
5
+ import 'tailwind-variants/dist/config.js';
6
6
  import '@fuf-stack/pixel-utils';
7
7
  import '@heroui/tooltip';
8
8
  import 'react';
@@ -1,8 +1,8 @@
1
- import { T as Tooltip } from '../Tooltip-DxeP1nbI.js';
2
- export { b as TooltipPlacement, a as TooltipProps } from '../Tooltip-DxeP1nbI.js';
1
+ import { T as Tooltip } from '../Tooltip-Cpmigwzs.js';
2
+ export { b as TooltipPlacement, a as TooltipProps } from '../Tooltip-Cpmigwzs.js';
3
3
  import 'react/jsx-runtime';
4
- import 'tailwind-variants/dist/config.js';
5
4
  import 'tailwind-variants';
5
+ import 'tailwind-variants/dist/config.js';
6
6
  import '@fuf-stack/pixel-utils';
7
7
  import '@heroui/tooltip';
8
8
  import 'react';
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  Tooltip_default,
3
3
  Tooltip_default2
4
- } from "../chunk-FNOZMB2P.js";
4
+ } from "../chunk-3BSRRSR3.js";
5
5
  import "../chunk-EQVC4PJE.js";
6
6
  import "../chunk-J7N2552D.js";
7
7
  export {
@@ -0,0 +1,220 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import * as tailwind_variants from 'tailwind-variants';
3
+ import * as tailwind_variants_dist_config_js from 'tailwind-variants/dist/config.js';
4
+ import { TVProps, TVClassName } from '@fuf-stack/pixel-utils';
5
+ import { TooltipPlacement as TooltipPlacement$1 } from '@heroui/tooltip';
6
+ import { ReactNode } from 'react';
7
+
8
+ declare const tooltipVariants: tailwind_variants.TVReturnType<{
9
+ size: {
10
+ xs: {
11
+ base: string;
12
+ };
13
+ sm: {
14
+ base: string;
15
+ };
16
+ md: {
17
+ base: string;
18
+ };
19
+ lg: {
20
+ base: string;
21
+ };
22
+ xl: {
23
+ base: string;
24
+ };
25
+ full: {
26
+ base: string;
27
+ };
28
+ };
29
+ }, {
30
+ base: string;
31
+ body: string;
32
+ content: string;
33
+ divider: string;
34
+ footer: string;
35
+ footerWrapper: string;
36
+ header: string;
37
+ headerWrapper: string;
38
+ trigger: string;
39
+ }, undefined, tailwind_variants_dist_config_js.TVConfig<{
40
+ size: {
41
+ xs: {
42
+ base: string;
43
+ };
44
+ sm: {
45
+ base: string;
46
+ };
47
+ md: {
48
+ base: string;
49
+ };
50
+ lg: {
51
+ base: string;
52
+ };
53
+ xl: {
54
+ base: string;
55
+ };
56
+ full: {
57
+ base: string;
58
+ };
59
+ };
60
+ }, {
61
+ size: {
62
+ xs: {
63
+ base: string;
64
+ };
65
+ sm: {
66
+ base: string;
67
+ };
68
+ md: {
69
+ base: string;
70
+ };
71
+ lg: {
72
+ base: string;
73
+ };
74
+ xl: {
75
+ base: string;
76
+ };
77
+ full: {
78
+ base: string;
79
+ };
80
+ };
81
+ }>, {
82
+ size: {
83
+ xs: {
84
+ base: string;
85
+ };
86
+ sm: {
87
+ base: string;
88
+ };
89
+ md: {
90
+ base: string;
91
+ };
92
+ lg: {
93
+ base: string;
94
+ };
95
+ xl: {
96
+ base: string;
97
+ };
98
+ full: {
99
+ base: string;
100
+ };
101
+ };
102
+ }, {
103
+ base: string;
104
+ body: string;
105
+ content: string;
106
+ divider: string;
107
+ footer: string;
108
+ footerWrapper: string;
109
+ header: string;
110
+ headerWrapper: string;
111
+ trigger: string;
112
+ }, tailwind_variants.TVReturnType<{
113
+ size: {
114
+ xs: {
115
+ base: string;
116
+ };
117
+ sm: {
118
+ base: string;
119
+ };
120
+ md: {
121
+ base: string;
122
+ };
123
+ lg: {
124
+ base: string;
125
+ };
126
+ xl: {
127
+ base: string;
128
+ };
129
+ full: {
130
+ base: string;
131
+ };
132
+ };
133
+ }, {
134
+ base: string;
135
+ body: string;
136
+ content: string;
137
+ divider: string;
138
+ footer: string;
139
+ footerWrapper: string;
140
+ header: string;
141
+ headerWrapper: string;
142
+ trigger: string;
143
+ }, undefined, tailwind_variants_dist_config_js.TVConfig<{
144
+ size: {
145
+ xs: {
146
+ base: string;
147
+ };
148
+ sm: {
149
+ base: string;
150
+ };
151
+ md: {
152
+ base: string;
153
+ };
154
+ lg: {
155
+ base: string;
156
+ };
157
+ xl: {
158
+ base: string;
159
+ };
160
+ full: {
161
+ base: string;
162
+ };
163
+ };
164
+ }, {
165
+ size: {
166
+ xs: {
167
+ base: string;
168
+ };
169
+ sm: {
170
+ base: string;
171
+ };
172
+ md: {
173
+ base: string;
174
+ };
175
+ lg: {
176
+ base: string;
177
+ };
178
+ xl: {
179
+ base: string;
180
+ };
181
+ full: {
182
+ base: string;
183
+ };
184
+ };
185
+ }>, unknown, unknown, undefined>>;
186
+ type VariantProps = TVProps<typeof tooltipVariants>;
187
+ type ClassName = TVClassName<typeof tooltipVariants>;
188
+ type TooltipPlacement = TooltipPlacement$1;
189
+ interface TooltipProps extends VariantProps {
190
+ /** trigger child components */
191
+ children: ReactNode;
192
+ /** CSS class name */
193
+ className?: ClassName;
194
+ /** delay in milliseconds before the tooltip opens. */
195
+ closeDelay?: number;
196
+ /** placement padding in px */
197
+ containerPadding?: number;
198
+ /** content displayed in the tooltip */
199
+ content: ReactNode;
200
+ /** open overlay initially when uncontrolled */
201
+ defaultOpen?: boolean;
202
+ /** delay in milliseconds before the tooltip opens. */
203
+ delay?: number;
204
+ /** tooltip footer */
205
+ footer?: ReactNode;
206
+ /** tooltip header */
207
+ header?: ReactNode;
208
+ /** handler that is called when the overlay's open state changes */
209
+ onOpenChange?: (isOpen: boolean) => void;
210
+ /** placement if the tooltip */
211
+ placement?: TooltipPlacement;
212
+ /** size of the tooltip */
213
+ size?: VariantProps['size'];
214
+ }
215
+ /**
216
+ * Tooltip component based on [HeroUI Tooltip](https://www.heroui.com//docs/components/tooltip)
217
+ */
218
+ declare const Tooltip: ({ children, className: _className, closeDelay, containerPadding, content, defaultOpen, delay, footer, header, onOpenChange, placement, size, }: TooltipProps) => react_jsx_runtime.JSX.Element;
219
+
220
+ export { Tooltip as T, type TooltipProps as a, type TooltipPlacement as b };
@@ -0,0 +1,220 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import * as tailwind_variants from 'tailwind-variants';
3
+ import * as tailwind_variants_dist_config_js from 'tailwind-variants/dist/config.js';
4
+ import { TVProps, TVClassName } from '@fuf-stack/pixel-utils';
5
+ import { TooltipPlacement as TooltipPlacement$1 } from '@heroui/tooltip';
6
+ import { ReactNode } from 'react';
7
+
8
+ declare const tooltipVariants: tailwind_variants.TVReturnType<{
9
+ size: {
10
+ xs: {
11
+ base: string;
12
+ };
13
+ sm: {
14
+ base: string;
15
+ };
16
+ md: {
17
+ base: string;
18
+ };
19
+ lg: {
20
+ base: string;
21
+ };
22
+ xl: {
23
+ base: string;
24
+ };
25
+ full: {
26
+ base: string;
27
+ };
28
+ };
29
+ }, {
30
+ base: string;
31
+ body: string;
32
+ content: string;
33
+ divider: string;
34
+ footer: string;
35
+ footerWrapper: string;
36
+ header: string;
37
+ headerWrapper: string;
38
+ trigger: string;
39
+ }, undefined, tailwind_variants_dist_config_js.TVConfig<{
40
+ size: {
41
+ xs: {
42
+ base: string;
43
+ };
44
+ sm: {
45
+ base: string;
46
+ };
47
+ md: {
48
+ base: string;
49
+ };
50
+ lg: {
51
+ base: string;
52
+ };
53
+ xl: {
54
+ base: string;
55
+ };
56
+ full: {
57
+ base: string;
58
+ };
59
+ };
60
+ }, {
61
+ size: {
62
+ xs: {
63
+ base: string;
64
+ };
65
+ sm: {
66
+ base: string;
67
+ };
68
+ md: {
69
+ base: string;
70
+ };
71
+ lg: {
72
+ base: string;
73
+ };
74
+ xl: {
75
+ base: string;
76
+ };
77
+ full: {
78
+ base: string;
79
+ };
80
+ };
81
+ }>, {
82
+ size: {
83
+ xs: {
84
+ base: string;
85
+ };
86
+ sm: {
87
+ base: string;
88
+ };
89
+ md: {
90
+ base: string;
91
+ };
92
+ lg: {
93
+ base: string;
94
+ };
95
+ xl: {
96
+ base: string;
97
+ };
98
+ full: {
99
+ base: string;
100
+ };
101
+ };
102
+ }, {
103
+ base: string;
104
+ body: string;
105
+ content: string;
106
+ divider: string;
107
+ footer: string;
108
+ footerWrapper: string;
109
+ header: string;
110
+ headerWrapper: string;
111
+ trigger: string;
112
+ }, tailwind_variants.TVReturnType<{
113
+ size: {
114
+ xs: {
115
+ base: string;
116
+ };
117
+ sm: {
118
+ base: string;
119
+ };
120
+ md: {
121
+ base: string;
122
+ };
123
+ lg: {
124
+ base: string;
125
+ };
126
+ xl: {
127
+ base: string;
128
+ };
129
+ full: {
130
+ base: string;
131
+ };
132
+ };
133
+ }, {
134
+ base: string;
135
+ body: string;
136
+ content: string;
137
+ divider: string;
138
+ footer: string;
139
+ footerWrapper: string;
140
+ header: string;
141
+ headerWrapper: string;
142
+ trigger: string;
143
+ }, undefined, tailwind_variants_dist_config_js.TVConfig<{
144
+ size: {
145
+ xs: {
146
+ base: string;
147
+ };
148
+ sm: {
149
+ base: string;
150
+ };
151
+ md: {
152
+ base: string;
153
+ };
154
+ lg: {
155
+ base: string;
156
+ };
157
+ xl: {
158
+ base: string;
159
+ };
160
+ full: {
161
+ base: string;
162
+ };
163
+ };
164
+ }, {
165
+ size: {
166
+ xs: {
167
+ base: string;
168
+ };
169
+ sm: {
170
+ base: string;
171
+ };
172
+ md: {
173
+ base: string;
174
+ };
175
+ lg: {
176
+ base: string;
177
+ };
178
+ xl: {
179
+ base: string;
180
+ };
181
+ full: {
182
+ base: string;
183
+ };
184
+ };
185
+ }>, unknown, unknown, undefined>>;
186
+ type VariantProps = TVProps<typeof tooltipVariants>;
187
+ type ClassName = TVClassName<typeof tooltipVariants>;
188
+ type TooltipPlacement = TooltipPlacement$1;
189
+ interface TooltipProps extends VariantProps {
190
+ /** trigger child components */
191
+ children: ReactNode;
192
+ /** CSS class name */
193
+ className?: ClassName;
194
+ /** delay in milliseconds before the tooltip opens. */
195
+ closeDelay?: number;
196
+ /** placement padding in px */
197
+ containerPadding?: number;
198
+ /** content displayed in the tooltip */
199
+ content: ReactNode;
200
+ /** open overlay initially when uncontrolled */
201
+ defaultOpen?: boolean;
202
+ /** delay in milliseconds before the tooltip opens. */
203
+ delay?: number;
204
+ /** tooltip footer */
205
+ footer?: ReactNode;
206
+ /** tooltip header */
207
+ header?: ReactNode;
208
+ /** handler that is called when the overlay's open state changes */
209
+ onOpenChange?: (isOpen: boolean) => void;
210
+ /** placement if the tooltip */
211
+ placement?: TooltipPlacement;
212
+ /** size of the tooltip */
213
+ size?: VariantProps['size'];
214
+ }
215
+ /**
216
+ * Tooltip component based on [HeroUI Tooltip](https://www.heroui.com//docs/components/tooltip)
217
+ */
218
+ declare const Tooltip: ({ children, className: _className, closeDelay, containerPadding, content, defaultOpen, delay, footer, header, onOpenChange, placement, size, }: TooltipProps) => react_jsx_runtime.JSX.Element;
219
+
220
+ export { Tooltip as T, type TooltipProps as a, type TooltipPlacement as b };
@@ -16,7 +16,17 @@ var tooltipVariants = tv({
16
16
  footerWrapper: "w-full",
17
17
  header: "w-full px-4 pb-1 pt-2 font-semibold",
18
18
  headerWrapper: "w-full",
19
- wrapper: "cursor-pointer"
19
+ trigger: "cursor-pointer"
20
+ },
21
+ variants: {
22
+ size: {
23
+ xs: { base: "max-w-xs" },
24
+ sm: { base: "max-w-sm" },
25
+ md: { base: "max-w-md" },
26
+ lg: { base: "max-w-lg" },
27
+ xl: { base: "max-w-5xl" },
28
+ full: { base: "" }
29
+ }
20
30
  }
21
31
  });
22
32
  var Tooltip = ({
@@ -30,9 +40,10 @@ var Tooltip = ({
30
40
  footer = void 0,
31
41
  header = void 0,
32
42
  onOpenChange = void 0,
33
- placement = "top"
43
+ placement = "top",
44
+ size = "full"
34
45
  }) => {
35
- const variants = tooltipVariants();
46
+ const variants = tooltipVariants({ size });
36
47
  const classNames = variantsToClassNames(variants, _className, "base");
37
48
  return /* @__PURE__ */ jsx(
38
49
  HeroTooltip,
@@ -58,7 +69,7 @@ var Tooltip = ({
58
69
  placement,
59
70
  shouldFlip: true,
60
71
  showArrow: true,
61
- children: /* @__PURE__ */ jsx("span", { className: classNames.wrapper, children })
72
+ children: /* @__PURE__ */ jsx("span", { className: classNames.trigger, children })
62
73
  }
63
74
  );
64
75
  };
@@ -71,4 +82,4 @@ export {
71
82
  Tooltip_default,
72
83
  Tooltip_default2
73
84
  };
74
- //# sourceMappingURL=chunk-FNOZMB2P.js.map
85
+ //# sourceMappingURL=chunk-3BSRRSR3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/Tooltip/Tooltip.tsx","../src/Tooltip/index.ts"],"sourcesContent":["import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { TooltipPlacement as HeroTooltipPlacement } from '@heroui/tooltip';\nimport type { ReactNode } from 'react';\n\nimport { Tooltip as HeroTooltip } from '@heroui/tooltip';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nimport ScrollShadow from '../ScrollShadow/ScrollShadow';\n\n// tooltip variants\nexport const tooltipVariants = tv({\n slots: {\n base: '',\n body: 'w-full px-4 py-2',\n content: 'flex max-h-[80vh] flex-col p-0',\n divider: 'm-0 w-full p-0',\n footer: 'w-full px-4 py-2',\n footerWrapper: 'w-full',\n header: 'w-full px-4 pb-1 pt-2 font-semibold',\n headerWrapper: 'w-full',\n trigger: 'cursor-pointer',\n },\n variants: {\n size: {\n xs: { base: 'max-w-xs' },\n sm: { base: 'max-w-sm' },\n md: { base: 'max-w-md' },\n lg: { base: 'max-w-lg' },\n xl: { base: 'max-w-5xl' },\n full: { base: '' },\n },\n },\n});\n\ntype VariantProps = TVProps<typeof tooltipVariants>;\ntype ClassName = TVClassName<typeof tooltipVariants>;\n\nexport type TooltipPlacement = HeroTooltipPlacement;\n\nexport interface TooltipProps extends VariantProps {\n /** trigger child components */\n children: ReactNode;\n /** CSS class name */\n className?: ClassName;\n /** delay in milliseconds before the tooltip opens. */\n closeDelay?: number;\n /** placement padding in px */\n containerPadding?: number;\n /** content displayed in the tooltip */\n content: ReactNode;\n /** open overlay initially when uncontrolled */\n defaultOpen?: boolean;\n /** delay in milliseconds before the tooltip opens. */\n delay?: number;\n /** tooltip footer */\n footer?: ReactNode;\n /** tooltip header */\n header?: ReactNode;\n /** handler that is called when the overlay's open state changes */\n onOpenChange?: (isOpen: boolean) => void;\n /** placement if the tooltip */\n placement?: TooltipPlacement;\n /** size of the tooltip */\n size?: VariantProps['size'];\n}\n\n/**\n * Tooltip component based on [HeroUI Tooltip](https://www.heroui.com//docs/components/tooltip)\n */\nconst Tooltip = ({\n children,\n className: _className = undefined,\n closeDelay = 500,\n containerPadding = 0,\n content,\n defaultOpen = false,\n delay = 0,\n footer = undefined,\n header = undefined,\n onOpenChange = undefined,\n placement = 'top',\n size = 'full',\n}: TooltipProps) => {\n // classNames from slots\n const variants = tooltipVariants({ size });\n const classNames = variantsToClassNames(variants, _className, 'base');\n\n return (\n <HeroTooltip\n classNames={classNames}\n closeDelay={closeDelay}\n containerPadding={containerPadding}\n content={\n <div>\n {header && (\n <div className={classNames.headerWrapper}>\n <div className={classNames.header}>{header}</div>\n <hr className={classNames.divider} />\n </div>\n )}\n <ScrollShadow className={classNames.body}>{content}</ScrollShadow>\n {footer && (\n <div className={classNames.footerWrapper}>\n <hr className={classNames.divider} />\n <div className={classNames.footer}>{footer}</div>\n </div>\n )}\n </div>\n }\n defaultOpen={defaultOpen}\n delay={delay}\n onClick={(e) => e.preventDefault()}\n onOpenChange={onOpenChange}\n placement={placement}\n shouldFlip\n showArrow\n >\n <span className={classNames.trigger}>{children}</span>\n </HeroTooltip>\n );\n};\n\nexport default Tooltip;\n","import Tooltip from './Tooltip';\n\nexport type { TooltipProps, TooltipPlacement } from './Tooltip';\n\nexport { Tooltip };\n\nexport default Tooltip;\n"],"mappings":";;;;;AAIA,SAAS,WAAW,mBAAmB;AAEvC,SAAS,IAAI,4BAA4B;AA0F7B,SACE,KADF;AArFL,IAAM,kBAAkB,GAAG;AAAA,EAChC,OAAO;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,SAAS;AAAA,IACT,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,eAAe;AAAA,IACf,QAAQ;AAAA,IACR,eAAe;AAAA,IACf,SAAS;AAAA,EACX;AAAA,EACA,UAAU;AAAA,IACR,MAAM;AAAA,MACJ,IAAI,EAAE,MAAM,WAAW;AAAA,MACvB,IAAI,EAAE,MAAM,WAAW;AAAA,MACvB,IAAI,EAAE,MAAM,WAAW;AAAA,MACvB,IAAI,EAAE,MAAM,WAAW;AAAA,MACvB,IAAI,EAAE,MAAM,YAAY;AAAA,MACxB,MAAM,EAAE,MAAM,GAAG;AAAA,IACnB;AAAA,EACF;AACF,CAAC;AAqCD,IAAM,UAAU,CAAC;AAAA,EACf;AAAA,EACA,WAAW,aAAa;AAAA,EACxB,aAAa;AAAA,EACb,mBAAmB;AAAA,EACnB;AAAA,EACA,cAAc;AAAA,EACd,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,SAAS;AAAA,EACT,eAAe;AAAA,EACf,YAAY;AAAA,EACZ,OAAO;AACT,MAAoB;AAElB,QAAM,WAAW,gBAAgB,EAAE,KAAK,CAAC;AACzC,QAAM,aAAa,qBAAqB,UAAU,YAAY,MAAM;AAEpE,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA,SACE,qBAAC,SACE;AAAA,kBACC,qBAAC,SAAI,WAAW,WAAW,eACzB;AAAA,8BAAC,SAAI,WAAW,WAAW,QAAS,kBAAO;AAAA,UAC3C,oBAAC,QAAG,WAAW,WAAW,SAAS;AAAA,WACrC;AAAA,QAEF,oBAAC,wBAAa,WAAW,WAAW,MAAO,mBAAQ;AAAA,QAClD,UACC,qBAAC,SAAI,WAAW,WAAW,eACzB;AAAA,8BAAC,QAAG,WAAW,WAAW,SAAS;AAAA,UACnC,oBAAC,SAAI,WAAW,WAAW,QAAS,kBAAO;AAAA,WAC7C;AAAA,SAEJ;AAAA,MAEF;AAAA,MACA;AAAA,MACA,SAAS,CAAC,MAAM,EAAE,eAAe;AAAA,MACjC;AAAA,MACA;AAAA,MACA,YAAU;AAAA,MACV,WAAS;AAAA,MAET,8BAAC,UAAK,WAAW,WAAW,SAAU,UAAS;AAAA;AAAA,EACjD;AAEJ;AAEA,IAAO,kBAAQ;;;ACrHf,IAAOA,mBAAQ;","names":["Tooltip_default"]}
@@ -18,7 +18,7 @@ var popoverVariants = _pixelutils.tv.call(void 0, {
18
18
  divider: "m-0 w-full p-0",
19
19
  footer: "w-full px-4 py-2",
20
20
  footerWrapper: "w-full",
21
- header: "w-full px-4 pb-1 pt-2 text-lg font-semibold",
21
+ header: "w-full px-4 pb-1 pt-2 font-semibold",
22
22
  headerWrapper: "w-full",
23
23
  trigger: ""
24
24
  }
@@ -82,4 +82,4 @@ var Popover_default2 = Popover_default;
82
82
 
83
83
 
84
84
  exports.Popover_default = Popover_default; exports.Popover_default2 = Popover_default2;
85
- //# sourceMappingURL=chunk-PCQ7BVAE.cjs.map
85
+ //# sourceMappingURL=chunk-4X7MUSJB.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/home/runner/work/pixels/pixels/packages/pixels/dist/chunk-4X7MUSJB.cjs","../src/Popover/Popover.tsx","../src/Popover/index.ts"],"names":["Popover_default"],"mappings":"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","file":"/home/runner/work/pixels/pixels/packages/pixels/dist/chunk-4X7MUSJB.cjs","sourcesContent":[null,"import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { PopoverProps as HeroPopoverProps } from '@heroui/popover';\nimport type { ReactNode } from 'react';\nimport type { ButtonProps } from '../Button';\n\nimport { Button } from '@heroui/button';\nimport { Popover, PopoverContent, PopoverTrigger } from '@heroui/popover';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nimport ScrollShadow from '../ScrollShadow/ScrollShadow';\n\n// popover styling variants\nexport const popoverVariants = tv({\n slots: {\n body: 'w-full px-4 py-2',\n content: 'flex max-h-[80vh] flex-col p-0',\n divider: 'm-0 w-full p-0',\n footer: 'w-full px-4 py-2',\n footerWrapper: 'w-full',\n header: 'w-full px-4 pb-1 pt-2 font-semibold',\n headerWrapper: 'w-full',\n trigger: '',\n },\n});\n\ntype VariantProps = TVProps<typeof popoverVariants>;\ntype ClassName = TVClassName<typeof popoverVariants>;\n\nexport interface PopoverProps extends VariantProps {\n /** child components */\n children?: ReactNode;\n /** CSS class name */\n className?: ClassName;\n /** content of the popover */\n content: ReactNode;\n /** HTML data-testid attribute used in e2e tests */\n contentTestId?: string;\n /** popover footer */\n footer?: ReactNode;\n /** Popover title */\n header?: ReactNode;\n /** use as controlled component */\n openControlled?: { open: boolean; setOpen: (open: boolean) => void };\n /** placement of the popover relative to its trigger reference */\n placement?: HeroPopoverProps['placement'];\n /** The container element in which the overlay portal will be placed. */\n portalContainer?: HeroPopoverProps['portalContainer'];\n /** Whether to block scrolling outside the popover */\n shouldBlockScroll?: boolean;\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n /** When defined a Button will be rendered as trigger (with provided props) instead of unstyled html button */\n triggerButtonProps?: Pick<\n ButtonProps,\n | 'ariaLabel'\n | 'className'\n | 'color'\n | 'disableAnimation'\n | 'disabled'\n | 'size'\n | 'testId'\n | 'variant'\n >;\n}\n\n/**\n * Popover component based on [HeroUI Card](https://www.heroui.com//docs/components/popover)\n */\nexport default ({\n children = null,\n className: _className = undefined,\n content,\n contentTestId = undefined,\n footer = undefined,\n header = undefined,\n openControlled = undefined,\n placement = 'top',\n portalContainer = undefined,\n shouldBlockScroll = undefined,\n testId = undefined,\n triggerButtonProps = undefined,\n}: PopoverProps) => {\n // className from slots\n const variants = popoverVariants();\n const className = variantsToClassNames(variants, _className, 'trigger');\n\n return (\n <Popover\n classNames={className}\n placement={placement}\n portalContainer={portalContainer}\n radius=\"sm\"\n shouldBlockScroll={shouldBlockScroll}\n showArrow\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...(openControlled\n ? { isOpen: openControlled.open, onOpenChange: openControlled.setOpen }\n : {})}\n >\n <PopoverTrigger data-testid={testId}>\n {/* NOTE: type and aria properties are injected by PopoverTrigger */}\n {triggerButtonProps ? (\n // TODO: currently we have to use @heroui/button because\n // passing ref does not work (even with forwardRef in Button)\n // eslint-disable-next-line react/jsx-props-no-spreading\n <Button className={className.trigger} {...triggerButtonProps}>\n {children}\n </Button>\n ) : (\n // eslint-disable-next-line react/button-has-type\n <button className={className.trigger}>{children}</button>\n )}\n </PopoverTrigger>\n <PopoverContent data-testid={contentTestId}>\n {header && (\n <div className={className.headerWrapper}>\n <div className={className.header}>{header}</div>\n <hr className={className.divider} />\n </div>\n )}\n <ScrollShadow className={className.body}>{content}</ScrollShadow>\n {footer && (\n <div className={className.footerWrapper}>\n <hr className={className.divider} />\n <div className={className.footer}>{footer}</div>\n </div>\n )}\n </PopoverContent>\n </Popover>\n );\n};\n","import Popover from './Popover';\n\nexport type { PopoverProps } from './Popover';\n\nexport { Popover };\n\nexport default Popover;\n"]}
@@ -16,7 +16,17 @@ var tooltipVariants = _pixelutils.tv.call(void 0, {
16
16
  footerWrapper: "w-full",
17
17
  header: "w-full px-4 pb-1 pt-2 font-semibold",
18
18
  headerWrapper: "w-full",
19
- wrapper: "cursor-pointer"
19
+ trigger: "cursor-pointer"
20
+ },
21
+ variants: {
22
+ size: {
23
+ xs: { base: "max-w-xs" },
24
+ sm: { base: "max-w-sm" },
25
+ md: { base: "max-w-md" },
26
+ lg: { base: "max-w-lg" },
27
+ xl: { base: "max-w-5xl" },
28
+ full: { base: "" }
29
+ }
20
30
  }
21
31
  });
22
32
  var Tooltip = ({
@@ -30,9 +40,10 @@ var Tooltip = ({
30
40
  footer = void 0,
31
41
  header = void 0,
32
42
  onOpenChange = void 0,
33
- placement = "top"
43
+ placement = "top",
44
+ size = "full"
34
45
  }) => {
35
- const variants = tooltipVariants();
46
+ const variants = tooltipVariants({ size });
36
47
  const classNames = _pixelutils.variantsToClassNames.call(void 0, variants, _className, "base");
37
48
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38
49
  _tooltip.Tooltip,
@@ -58,7 +69,7 @@ var Tooltip = ({
58
69
  placement,
59
70
  shouldFlip: true,
60
71
  showArrow: true,
61
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: classNames.wrapper, children })
72
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: classNames.trigger, children })
62
73
  }
63
74
  );
64
75
  };
@@ -71,4 +82,4 @@ var Tooltip_default2 = Tooltip_default;
71
82
 
72
83
 
73
84
  exports.Tooltip_default = Tooltip_default; exports.Tooltip_default2 = Tooltip_default2;
74
- //# sourceMappingURL=chunk-TSJGQNIL.cjs.map
85
+ //# sourceMappingURL=chunk-DDQIHJ3E.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/home/runner/work/pixels/pixels/packages/pixels/dist/chunk-DDQIHJ3E.cjs","../src/Tooltip/Tooltip.tsx","../src/Tooltip/index.ts"],"names":["Tooltip_default"],"mappings":"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","file":"/home/runner/work/pixels/pixels/packages/pixels/dist/chunk-DDQIHJ3E.cjs","sourcesContent":[null,"import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { TooltipPlacement as HeroTooltipPlacement } from '@heroui/tooltip';\nimport type { ReactNode } from 'react';\n\nimport { Tooltip as HeroTooltip } from '@heroui/tooltip';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nimport ScrollShadow from '../ScrollShadow/ScrollShadow';\n\n// tooltip variants\nexport const tooltipVariants = tv({\n slots: {\n base: '',\n body: 'w-full px-4 py-2',\n content: 'flex max-h-[80vh] flex-col p-0',\n divider: 'm-0 w-full p-0',\n footer: 'w-full px-4 py-2',\n footerWrapper: 'w-full',\n header: 'w-full px-4 pb-1 pt-2 font-semibold',\n headerWrapper: 'w-full',\n trigger: 'cursor-pointer',\n },\n variants: {\n size: {\n xs: { base: 'max-w-xs' },\n sm: { base: 'max-w-sm' },\n md: { base: 'max-w-md' },\n lg: { base: 'max-w-lg' },\n xl: { base: 'max-w-5xl' },\n full: { base: '' },\n },\n },\n});\n\ntype VariantProps = TVProps<typeof tooltipVariants>;\ntype ClassName = TVClassName<typeof tooltipVariants>;\n\nexport type TooltipPlacement = HeroTooltipPlacement;\n\nexport interface TooltipProps extends VariantProps {\n /** trigger child components */\n children: ReactNode;\n /** CSS class name */\n className?: ClassName;\n /** delay in milliseconds before the tooltip opens. */\n closeDelay?: number;\n /** placement padding in px */\n containerPadding?: number;\n /** content displayed in the tooltip */\n content: ReactNode;\n /** open overlay initially when uncontrolled */\n defaultOpen?: boolean;\n /** delay in milliseconds before the tooltip opens. */\n delay?: number;\n /** tooltip footer */\n footer?: ReactNode;\n /** tooltip header */\n header?: ReactNode;\n /** handler that is called when the overlay's open state changes */\n onOpenChange?: (isOpen: boolean) => void;\n /** placement if the tooltip */\n placement?: TooltipPlacement;\n /** size of the tooltip */\n size?: VariantProps['size'];\n}\n\n/**\n * Tooltip component based on [HeroUI Tooltip](https://www.heroui.com//docs/components/tooltip)\n */\nconst Tooltip = ({\n children,\n className: _className = undefined,\n closeDelay = 500,\n containerPadding = 0,\n content,\n defaultOpen = false,\n delay = 0,\n footer = undefined,\n header = undefined,\n onOpenChange = undefined,\n placement = 'top',\n size = 'full',\n}: TooltipProps) => {\n // classNames from slots\n const variants = tooltipVariants({ size });\n const classNames = variantsToClassNames(variants, _className, 'base');\n\n return (\n <HeroTooltip\n classNames={classNames}\n closeDelay={closeDelay}\n containerPadding={containerPadding}\n content={\n <div>\n {header && (\n <div className={classNames.headerWrapper}>\n <div className={classNames.header}>{header}</div>\n <hr className={classNames.divider} />\n </div>\n )}\n <ScrollShadow className={classNames.body}>{content}</ScrollShadow>\n {footer && (\n <div className={classNames.footerWrapper}>\n <hr className={classNames.divider} />\n <div className={classNames.footer}>{footer}</div>\n </div>\n )}\n </div>\n }\n defaultOpen={defaultOpen}\n delay={delay}\n onClick={(e) => e.preventDefault()}\n onOpenChange={onOpenChange}\n placement={placement}\n shouldFlip\n showArrow\n >\n <span className={classNames.trigger}>{children}</span>\n </HeroTooltip>\n );\n};\n\nexport default Tooltip;\n","import Tooltip from './Tooltip';\n\nexport type { TooltipProps, TooltipPlacement } from './Tooltip';\n\nexport { Tooltip };\n\nexport default Tooltip;\n"]}
@@ -18,7 +18,7 @@ var popoverVariants = tv({
18
18
  divider: "m-0 w-full p-0",
19
19
  footer: "w-full px-4 py-2",
20
20
  footerWrapper: "w-full",
21
- header: "w-full px-4 pb-1 pt-2 text-lg font-semibold",
21
+ header: "w-full px-4 pb-1 pt-2 font-semibold",
22
22
  headerWrapper: "w-full",
23
23
  trigger: ""
24
24
  }
@@ -82,4 +82,4 @@ export {
82
82
  Popover_default,
83
83
  Popover_default2
84
84
  };
85
- //# sourceMappingURL=chunk-RQPO3EBI.js.map
85
+ //# sourceMappingURL=chunk-LQZEECJY.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/Popover/Popover.tsx","../src/Popover/index.ts"],"sourcesContent":["import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { PopoverProps as HeroPopoverProps } from '@heroui/popover';\nimport type { ReactNode } from 'react';\nimport type { ButtonProps } from '../Button';\n\nimport { Button } from '@heroui/button';\nimport { Popover, PopoverContent, PopoverTrigger } from '@heroui/popover';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nimport ScrollShadow from '../ScrollShadow/ScrollShadow';\n\n// popover styling variants\nexport const popoverVariants = tv({\n slots: {\n body: 'w-full px-4 py-2',\n content: 'flex max-h-[80vh] flex-col p-0',\n divider: 'm-0 w-full p-0',\n footer: 'w-full px-4 py-2',\n footerWrapper: 'w-full',\n header: 'w-full px-4 pb-1 pt-2 font-semibold',\n headerWrapper: 'w-full',\n trigger: '',\n },\n});\n\ntype VariantProps = TVProps<typeof popoverVariants>;\ntype ClassName = TVClassName<typeof popoverVariants>;\n\nexport interface PopoverProps extends VariantProps {\n /** child components */\n children?: ReactNode;\n /** CSS class name */\n className?: ClassName;\n /** content of the popover */\n content: ReactNode;\n /** HTML data-testid attribute used in e2e tests */\n contentTestId?: string;\n /** popover footer */\n footer?: ReactNode;\n /** Popover title */\n header?: ReactNode;\n /** use as controlled component */\n openControlled?: { open: boolean; setOpen: (open: boolean) => void };\n /** placement of the popover relative to its trigger reference */\n placement?: HeroPopoverProps['placement'];\n /** The container element in which the overlay portal will be placed. */\n portalContainer?: HeroPopoverProps['portalContainer'];\n /** Whether to block scrolling outside the popover */\n shouldBlockScroll?: boolean;\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n /** When defined a Button will be rendered as trigger (with provided props) instead of unstyled html button */\n triggerButtonProps?: Pick<\n ButtonProps,\n | 'ariaLabel'\n | 'className'\n | 'color'\n | 'disableAnimation'\n | 'disabled'\n | 'size'\n | 'testId'\n | 'variant'\n >;\n}\n\n/**\n * Popover component based on [HeroUI Card](https://www.heroui.com//docs/components/popover)\n */\nexport default ({\n children = null,\n className: _className = undefined,\n content,\n contentTestId = undefined,\n footer = undefined,\n header = undefined,\n openControlled = undefined,\n placement = 'top',\n portalContainer = undefined,\n shouldBlockScroll = undefined,\n testId = undefined,\n triggerButtonProps = undefined,\n}: PopoverProps) => {\n // className from slots\n const variants = popoverVariants();\n const className = variantsToClassNames(variants, _className, 'trigger');\n\n return (\n <Popover\n classNames={className}\n placement={placement}\n portalContainer={portalContainer}\n radius=\"sm\"\n shouldBlockScroll={shouldBlockScroll}\n showArrow\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...(openControlled\n ? { isOpen: openControlled.open, onOpenChange: openControlled.setOpen }\n : {})}\n >\n <PopoverTrigger data-testid={testId}>\n {/* NOTE: type and aria properties are injected by PopoverTrigger */}\n {triggerButtonProps ? (\n // TODO: currently we have to use @heroui/button because\n // passing ref does not work (even with forwardRef in Button)\n // eslint-disable-next-line react/jsx-props-no-spreading\n <Button className={className.trigger} {...triggerButtonProps}>\n {children}\n </Button>\n ) : (\n // eslint-disable-next-line react/button-has-type\n <button className={className.trigger}>{children}</button>\n )}\n </PopoverTrigger>\n <PopoverContent data-testid={contentTestId}>\n {header && (\n <div className={className.headerWrapper}>\n <div className={className.header}>{header}</div>\n <hr className={className.divider} />\n </div>\n )}\n <ScrollShadow className={className.body}>{content}</ScrollShadow>\n {footer && (\n <div className={className.footerWrapper}>\n <hr className={className.divider} />\n <div className={className.footer}>{footer}</div>\n </div>\n )}\n </PopoverContent>\n </Popover>\n );\n};\n","import Popover from './Popover';\n\nexport type { PopoverProps } from './Popover';\n\nexport { Popover };\n\nexport default Popover;\n"],"mappings":";;;;;;;;;AAKA,SAAS,cAAc;AACvB,SAAS,SAAS,gBAAgB,sBAAsB;AAExD,SAAS,IAAI,4BAA4B;AAkG/B,cAUA,YAVA;AA7FH,IAAM,kBAAkB,GAAG;AAAA,EAChC,OAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,IACT,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,eAAe;AAAA,IACf,QAAQ;AAAA,IACR,eAAe;AAAA,IACf,SAAS;AAAA,EACX;AACF,CAAC;AA6CD,IAAO,kBAAQ,CAAC;AAAA,EACd,WAAW;AAAA,EACX,WAAW,aAAa;AAAA,EACxB;AAAA,EACA,gBAAgB;AAAA,EAChB,SAAS;AAAA,EACT,SAAS;AAAA,EACT,iBAAiB;AAAA,EACjB,YAAY;AAAA,EACZ,kBAAkB;AAAA,EAClB,oBAAoB;AAAA,EACpB,SAAS;AAAA,EACT,qBAAqB;AACvB,MAAoB;AAElB,QAAM,WAAW,gBAAgB;AACjC,QAAM,YAAY,qBAAqB,UAAU,YAAY,SAAS;AAEtE,SACE;AAAA,IAAC;AAAA;AAAA,MACC,YAAY;AAAA,MACZ;AAAA,MACA;AAAA,MACA,QAAO;AAAA,MACP;AAAA,MACA,WAAS;AAAA,OAEJ,iBACD,EAAE,QAAQ,eAAe,MAAM,cAAc,eAAe,QAAQ,IACpE,CAAC,IAVN;AAAA,MAYC;AAAA,4BAAC,kBAAe,eAAa,QAE1B;AAAA;AAAA;AAAA;AAAA,UAIC,oBAAC,uCAAO,WAAW,UAAU,WAAa,qBAAzC,EACE,WACH;AAAA;AAAA;AAAA,UAGA,oBAAC,YAAO,WAAW,UAAU,SAAU,UAAS;AAAA,WAEpD;AAAA,QACA,qBAAC,kBAAe,eAAa,eAC1B;AAAA,oBACC,qBAAC,SAAI,WAAW,UAAU,eACxB;AAAA,gCAAC,SAAI,WAAW,UAAU,QAAS,kBAAO;AAAA,YAC1C,oBAAC,QAAG,WAAW,UAAU,SAAS;AAAA,aACpC;AAAA,UAEF,oBAAC,wBAAa,WAAW,UAAU,MAAO,mBAAQ;AAAA,UACjD,UACC,qBAAC,SAAI,WAAW,UAAU,eACxB;AAAA,gCAAC,QAAG,WAAW,UAAU,SAAS;AAAA,YAClC,oBAAC,SAAI,WAAW,UAAU,QAAS,kBAAO;AAAA,aAC5C;AAAA,WAEJ;AAAA;AAAA;AAAA,EACF;AAEJ;;;AC7HA,IAAOA,mBAAQ;","names":["Popover_default"]}
package/dist/index.cjs CHANGED
@@ -22,7 +22,7 @@ var _chunkD5BXY6EGcjs = require('./chunk-D5BXY6EG.cjs');
22
22
  var _chunkGXIDQFQ6cjs = require('./chunk-GXIDQFQ6.cjs');
23
23
 
24
24
 
25
- var _chunkTSJGQNILcjs = require('./chunk-TSJGQNIL.cjs');
25
+ var _chunkDDQIHJ3Ecjs = require('./chunk-DDQIHJ3E.cjs');
26
26
 
27
27
 
28
28
 
@@ -59,7 +59,7 @@ var _chunkXHOAZB2Zcjs = require('./chunk-XHOAZB2Z.cjs');
59
59
  var _chunkPEUUQMJScjs = require('./chunk-PEUUQMJS.cjs');
60
60
 
61
61
 
62
- var _chunkPCQ7BVAEcjs = require('./chunk-PCQ7BVAE.cjs');
62
+ var _chunk4X7MUSJBcjs = require('./chunk-4X7MUSJB.cjs');
63
63
  require('./chunk-TX2VP4J7.cjs');
64
64
 
65
65
 
@@ -131,5 +131,5 @@ require('./chunk-D4TLDLEX.cjs');
131
131
 
132
132
 
133
133
 
134
- exports.Accordion = _chunk2P5WWVQ6cjs.Accordion_default; exports.Alert = _chunkYVPRFCWIcjs.Alert_default; exports.Avatar = _chunk77J7NZYBcjs.Avatar_default; exports.AvatarGroup = _chunkLIZGYO24cjs.AvatarGroup_default; exports.Badge = _chunkJSANDW3Wcjs.Badge_default; exports.Breadcrumb = _chunkZZOEFQWQcjs.Breadcrumb_default; exports.Button = _chunkAN7A66NScjs.Button_default; exports.ButtonGroup = _chunkY3RSI2KVcjs.ButtonGroup_default; exports.Card = _chunkMHZAWSFJcjs.Card_default; exports.Drawer = _chunk7RVUB6I5cjs.Drawer_default; exports.Json = _chunk77THLTVPcjs.Json_default; exports.Label = _chunkPLJWIGRScjs.Label_default; exports.Menu = _chunkXHOAZB2Zcjs.Menu_default; exports.Modal = _chunkPEUUQMJScjs.Modal_default; exports.Popover = _chunkPCQ7BVAEcjs.Popover_default; exports.Progress = _chunkXOCP745Xcjs.Progress_default; exports.ProgressCircular = _chunkW2EOAUKEcjs.ProgressCircular_default; exports.Table = _chunkAJCAIA6Hcjs.Table_default; exports.Tabs = _chunkD5BXY6EGcjs.Tabs_default; exports.Toast = _chunkGXIDQFQ6cjs.Toast; exports.ToastProvider = _chunkGXIDQFQ6cjs.ToastProvider_default; exports.Tooltip = _chunkTSJGQNILcjs.Tooltip_default; exports.accordionVariants = _chunk2P5WWVQ6cjs.accordionVariants; exports.addToast = _chunkGXIDQFQ6cjs.addToast; exports.alertVariants = _chunkYVPRFCWIcjs.alertVariants; exports.breadcrumbVariants = _chunkZZOEFQWQcjs.breadcrumbVariants; exports.buttonVariants = _chunkAN7A66NScjs.buttonVariants; exports.cardVariants = _chunkMHZAWSFJcjs.cardVariants; exports.drawerBackdrops = _chunk7RVUB6I5cjs.drawerBackdrops; exports.drawerPlacements = _chunk7RVUB6I5cjs.drawerPlacements; exports.drawerRadii = _chunk7RVUB6I5cjs.drawerRadii; exports.drawerSizes = _chunk7RVUB6I5cjs.drawerSizes; exports.drawerVariants = _chunk7RVUB6I5cjs.drawerVariants; exports.labelVariants = _chunkPLJWIGRScjs.labelVariants; exports.modalVariants = _chunkPEUUQMJScjs.modalVariants; exports.progressCircularVariants = _chunkW2EOAUKEcjs.progressCircularVariants; exports.progressVariants = _chunkXOCP745Xcjs.progressVariants; exports.tableVariants = _chunkAJCAIA6Hcjs.tableVariants; exports.tabsVariants = _chunkD5BXY6EGcjs.tabsVariants; exports.toastVariants = _chunkGXIDQFQ6cjs.toastVariants; exports.useDebounce = _chunkOLI32URUcjs.useDebounce; exports.useIsInitialRenderCycle = _chunkOLI32URUcjs.useIsInitialRenderCycle; exports.useLocalStorage = _chunkOLI32URUcjs.useLocalStorage;
134
+ exports.Accordion = _chunk2P5WWVQ6cjs.Accordion_default; exports.Alert = _chunkYVPRFCWIcjs.Alert_default; exports.Avatar = _chunk77J7NZYBcjs.Avatar_default; exports.AvatarGroup = _chunkLIZGYO24cjs.AvatarGroup_default; exports.Badge = _chunkJSANDW3Wcjs.Badge_default; exports.Breadcrumb = _chunkZZOEFQWQcjs.Breadcrumb_default; exports.Button = _chunkAN7A66NScjs.Button_default; exports.ButtonGroup = _chunkY3RSI2KVcjs.ButtonGroup_default; exports.Card = _chunkMHZAWSFJcjs.Card_default; exports.Drawer = _chunk7RVUB6I5cjs.Drawer_default; exports.Json = _chunk77THLTVPcjs.Json_default; exports.Label = _chunkPLJWIGRScjs.Label_default; exports.Menu = _chunkXHOAZB2Zcjs.Menu_default; exports.Modal = _chunkPEUUQMJScjs.Modal_default; exports.Popover = _chunk4X7MUSJBcjs.Popover_default; exports.Progress = _chunkXOCP745Xcjs.Progress_default; exports.ProgressCircular = _chunkW2EOAUKEcjs.ProgressCircular_default; exports.Table = _chunkAJCAIA6Hcjs.Table_default; exports.Tabs = _chunkD5BXY6EGcjs.Tabs_default; exports.Toast = _chunkGXIDQFQ6cjs.Toast; exports.ToastProvider = _chunkGXIDQFQ6cjs.ToastProvider_default; exports.Tooltip = _chunkDDQIHJ3Ecjs.Tooltip_default; exports.accordionVariants = _chunk2P5WWVQ6cjs.accordionVariants; exports.addToast = _chunkGXIDQFQ6cjs.addToast; exports.alertVariants = _chunkYVPRFCWIcjs.alertVariants; exports.breadcrumbVariants = _chunkZZOEFQWQcjs.breadcrumbVariants; exports.buttonVariants = _chunkAN7A66NScjs.buttonVariants; exports.cardVariants = _chunkMHZAWSFJcjs.cardVariants; exports.drawerBackdrops = _chunk7RVUB6I5cjs.drawerBackdrops; exports.drawerPlacements = _chunk7RVUB6I5cjs.drawerPlacements; exports.drawerRadii = _chunk7RVUB6I5cjs.drawerRadii; exports.drawerSizes = _chunk7RVUB6I5cjs.drawerSizes; exports.drawerVariants = _chunk7RVUB6I5cjs.drawerVariants; exports.labelVariants = _chunkPLJWIGRScjs.labelVariants; exports.modalVariants = _chunkPEUUQMJScjs.modalVariants; exports.progressCircularVariants = _chunkW2EOAUKEcjs.progressCircularVariants; exports.progressVariants = _chunkXOCP745Xcjs.progressVariants; exports.tableVariants = _chunkAJCAIA6Hcjs.tableVariants; exports.tabsVariants = _chunkD5BXY6EGcjs.tabsVariants; exports.toastVariants = _chunkGXIDQFQ6cjs.toastVariants; exports.useDebounce = _chunkOLI32URUcjs.useDebounce; exports.useIsInitialRenderCycle = _chunkOLI32URUcjs.useIsInitialRenderCycle; exports.useLocalStorage = _chunkOLI32URUcjs.useLocalStorage;
135
135
  //# sourceMappingURL=index.cjs.map
package/dist/index.d.cts CHANGED
@@ -19,7 +19,7 @@ export { T as Table, c as TableColumnProps, a as TableProps, b as TableRowProps,
19
19
  export { b as TabProps, T as Tabs, a as TabsProps, t as tabsVariants } from './Tabs-C1UEkvSr.cjs';
20
20
  export { Toast } from '@heroui/toast';
21
21
  export { A as AddToastVariantProps, b as ToastProps, T as ToastProvider, c as ToastProviderProps, a as addToast, t as toastVariants } from './ToastProvider-CL1v-bkE.cjs';
22
- export { T as Tooltip, b as TooltipPlacement, a as TooltipProps } from './Tooltip-DxeP1nbI.cjs';
22
+ export { T as Tooltip, b as TooltipPlacement, a as TooltipProps } from './Tooltip-Cpmigwzs.cjs';
23
23
  export { useDebounce, useIsInitialRenderCycle, useLocalStorage } from './hooks/index.cjs';
24
24
  export { ButtonGroupProps } from '@heroui/button';
25
25
  import 'react/jsx-runtime';
package/dist/index.d.ts CHANGED
@@ -19,7 +19,7 @@ export { T as Table, c as TableColumnProps, a as TableProps, b as TableRowProps,
19
19
  export { b as TabProps, T as Tabs, a as TabsProps, t as tabsVariants } from './Tabs-C1UEkvSr.js';
20
20
  export { Toast } from '@heroui/toast';
21
21
  export { A as AddToastVariantProps, b as ToastProps, T as ToastProvider, c as ToastProviderProps, a as addToast, t as toastVariants } from './ToastProvider-CL1v-bkE.js';
22
- export { T as Tooltip, b as TooltipPlacement, a as TooltipProps } from './Tooltip-DxeP1nbI.js';
22
+ export { T as Tooltip, b as TooltipPlacement, a as TooltipProps } from './Tooltip-Cpmigwzs.js';
23
23
  export { useDebounce, useIsInitialRenderCycle, useLocalStorage } from './hooks/index.js';
24
24
  export { ButtonGroupProps } from '@heroui/button';
25
25
  import 'react/jsx-runtime';
package/dist/index.js CHANGED
@@ -22,7 +22,7 @@ import {
22
22
  } from "./chunk-ZMEVGJBC.js";
23
23
  import {
24
24
  Tooltip_default
25
- } from "./chunk-FNOZMB2P.js";
25
+ } from "./chunk-3BSRRSR3.js";
26
26
  import {
27
27
  useDebounce,
28
28
  useIsInitialRenderCycle,
@@ -59,7 +59,7 @@ import {
59
59
  } from "./chunk-RW4WTSLJ.js";
60
60
  import {
61
61
  Popover_default
62
- } from "./chunk-RQPO3EBI.js";
62
+ } from "./chunk-LQZEECJY.js";
63
63
  import "./chunk-EQVC4PJE.js";
64
64
  import {
65
65
  Accordion_default,
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@fuf-stack/pixels",
3
3
  "description": "fuf core react component library",
4
4
  "author": "Hannes Tiede",
5
- "version": "0.43.2",
5
+ "version": "0.43.4",
6
6
  "type": "module",
7
7
  "main": "./dist/index.cjs",
8
8
  "module": "./dist/index.js",
@@ -193,9 +193,9 @@
193
193
  "react": "19.0.0",
194
194
  "react-dom": "19.0.0",
195
195
  "@repo/storybook-config": "0.0.1",
196
- "@repo/tailwind-config": "0.0.1",
196
+ "@repo/vite-config": "0.0.1",
197
197
  "@repo/tsup-config": "0.0.1",
198
- "@repo/vite-config": "0.0.1"
198
+ "@repo/tailwind-config": "0.0.1"
199
199
  },
200
200
  "scripts": {
201
201
  "build": "tsup --config node_modules/@repo/tsup-config/config.ts --dts-resolve",
@@ -1,141 +0,0 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import * as tailwind_variants_dist_config_js from 'tailwind-variants/dist/config.js';
3
- import * as tailwind_variants from 'tailwind-variants';
4
- import { TVProps, TVClassName } from '@fuf-stack/pixel-utils';
5
- import { TooltipPlacement as TooltipPlacement$1 } from '@heroui/tooltip';
6
- import { ReactNode } from 'react';
7
-
8
- declare const tooltipVariants: tailwind_variants.TVReturnType<{
9
- [key: string]: {
10
- [key: string]: tailwind_variants.ClassValue | {
11
- base?: tailwind_variants.ClassValue;
12
- content?: tailwind_variants.ClassValue;
13
- wrapper?: tailwind_variants.ClassValue;
14
- body?: tailwind_variants.ClassValue;
15
- footer?: tailwind_variants.ClassValue;
16
- header?: tailwind_variants.ClassValue;
17
- divider?: tailwind_variants.ClassValue;
18
- footerWrapper?: tailwind_variants.ClassValue;
19
- headerWrapper?: tailwind_variants.ClassValue;
20
- };
21
- };
22
- } | {
23
- [x: string]: {
24
- [x: string]: tailwind_variants.ClassValue | {
25
- base?: tailwind_variants.ClassValue;
26
- content?: tailwind_variants.ClassValue;
27
- wrapper?: tailwind_variants.ClassValue;
28
- body?: tailwind_variants.ClassValue;
29
- footer?: tailwind_variants.ClassValue;
30
- header?: tailwind_variants.ClassValue;
31
- divider?: tailwind_variants.ClassValue;
32
- footerWrapper?: tailwind_variants.ClassValue;
33
- headerWrapper?: tailwind_variants.ClassValue;
34
- };
35
- };
36
- } | {}, {
37
- base: string;
38
- body: string;
39
- content: string;
40
- divider: string;
41
- footer: string;
42
- footerWrapper: string;
43
- header: string;
44
- headerWrapper: string;
45
- wrapper: string;
46
- }, undefined, tailwind_variants_dist_config_js.TVConfig<unknown, {
47
- [key: string]: {
48
- [key: string]: tailwind_variants.ClassValue | {
49
- base?: tailwind_variants.ClassValue;
50
- content?: tailwind_variants.ClassValue;
51
- wrapper?: tailwind_variants.ClassValue;
52
- body?: tailwind_variants.ClassValue;
53
- footer?: tailwind_variants.ClassValue;
54
- header?: tailwind_variants.ClassValue;
55
- divider?: tailwind_variants.ClassValue;
56
- footerWrapper?: tailwind_variants.ClassValue;
57
- headerWrapper?: tailwind_variants.ClassValue;
58
- };
59
- };
60
- } | {}>, {
61
- [key: string]: {
62
- [key: string]: tailwind_variants.ClassValue | {
63
- base?: tailwind_variants.ClassValue;
64
- content?: tailwind_variants.ClassValue;
65
- wrapper?: tailwind_variants.ClassValue;
66
- body?: tailwind_variants.ClassValue;
67
- footer?: tailwind_variants.ClassValue;
68
- header?: tailwind_variants.ClassValue;
69
- divider?: tailwind_variants.ClassValue;
70
- footerWrapper?: tailwind_variants.ClassValue;
71
- headerWrapper?: tailwind_variants.ClassValue;
72
- };
73
- };
74
- } | {}, {
75
- base: string;
76
- body: string;
77
- content: string;
78
- divider: string;
79
- footer: string;
80
- footerWrapper: string;
81
- header: string;
82
- headerWrapper: string;
83
- wrapper: string;
84
- }, tailwind_variants.TVReturnType<unknown, {
85
- base: string;
86
- body: string;
87
- content: string;
88
- divider: string;
89
- footer: string;
90
- footerWrapper: string;
91
- header: string;
92
- headerWrapper: string;
93
- wrapper: string;
94
- }, undefined, tailwind_variants_dist_config_js.TVConfig<unknown, {
95
- [key: string]: {
96
- [key: string]: tailwind_variants.ClassValue | {
97
- base?: tailwind_variants.ClassValue;
98
- content?: tailwind_variants.ClassValue;
99
- wrapper?: tailwind_variants.ClassValue;
100
- body?: tailwind_variants.ClassValue;
101
- footer?: tailwind_variants.ClassValue;
102
- header?: tailwind_variants.ClassValue;
103
- divider?: tailwind_variants.ClassValue;
104
- footerWrapper?: tailwind_variants.ClassValue;
105
- headerWrapper?: tailwind_variants.ClassValue;
106
- };
107
- };
108
- } | {}>, unknown, unknown, undefined>>;
109
- type VariantProps = TVProps<typeof tooltipVariants>;
110
- type ClassName = TVClassName<typeof tooltipVariants>;
111
- type TooltipPlacement = TooltipPlacement$1;
112
- interface TooltipProps extends VariantProps {
113
- /** trigger child components */
114
- children: ReactNode;
115
- /** CSS class name */
116
- className?: ClassName;
117
- /** delay in milliseconds before the tooltip opens. */
118
- closeDelay?: number;
119
- /** delay in milliseconds before the tooltip opens. */
120
- delay?: number;
121
- /** placement padding in px */
122
- containerPadding?: number;
123
- /** content displayed in the tooltip */
124
- content: ReactNode;
125
- /** open overlay initially when uncontrolled */
126
- defaultOpen?: boolean;
127
- /** tooltip footer */
128
- footer?: ReactNode;
129
- /** tooltip header */
130
- header?: ReactNode;
131
- /** handler that is called when the overlay's open state changes */
132
- onOpenChange?: (isOpen: boolean) => void;
133
- /** placement if the tooltip */
134
- placement?: TooltipPlacement;
135
- }
136
- /**
137
- * Tooltip component based on [HeroUI Tooltip](https://www.heroui.com//docs/components/tooltip)
138
- */
139
- declare const Tooltip: ({ children, className: _className, closeDelay, containerPadding, content, defaultOpen, delay, footer, header, onOpenChange, placement, }: TooltipProps) => react_jsx_runtime.JSX.Element;
140
-
141
- export { Tooltip as T, type TooltipProps as a, type TooltipPlacement as b };
@@ -1,141 +0,0 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import * as tailwind_variants_dist_config_js from 'tailwind-variants/dist/config.js';
3
- import * as tailwind_variants from 'tailwind-variants';
4
- import { TVProps, TVClassName } from '@fuf-stack/pixel-utils';
5
- import { TooltipPlacement as TooltipPlacement$1 } from '@heroui/tooltip';
6
- import { ReactNode } from 'react';
7
-
8
- declare const tooltipVariants: tailwind_variants.TVReturnType<{
9
- [key: string]: {
10
- [key: string]: tailwind_variants.ClassValue | {
11
- base?: tailwind_variants.ClassValue;
12
- content?: tailwind_variants.ClassValue;
13
- wrapper?: tailwind_variants.ClassValue;
14
- body?: tailwind_variants.ClassValue;
15
- footer?: tailwind_variants.ClassValue;
16
- header?: tailwind_variants.ClassValue;
17
- divider?: tailwind_variants.ClassValue;
18
- footerWrapper?: tailwind_variants.ClassValue;
19
- headerWrapper?: tailwind_variants.ClassValue;
20
- };
21
- };
22
- } | {
23
- [x: string]: {
24
- [x: string]: tailwind_variants.ClassValue | {
25
- base?: tailwind_variants.ClassValue;
26
- content?: tailwind_variants.ClassValue;
27
- wrapper?: tailwind_variants.ClassValue;
28
- body?: tailwind_variants.ClassValue;
29
- footer?: tailwind_variants.ClassValue;
30
- header?: tailwind_variants.ClassValue;
31
- divider?: tailwind_variants.ClassValue;
32
- footerWrapper?: tailwind_variants.ClassValue;
33
- headerWrapper?: tailwind_variants.ClassValue;
34
- };
35
- };
36
- } | {}, {
37
- base: string;
38
- body: string;
39
- content: string;
40
- divider: string;
41
- footer: string;
42
- footerWrapper: string;
43
- header: string;
44
- headerWrapper: string;
45
- wrapper: string;
46
- }, undefined, tailwind_variants_dist_config_js.TVConfig<unknown, {
47
- [key: string]: {
48
- [key: string]: tailwind_variants.ClassValue | {
49
- base?: tailwind_variants.ClassValue;
50
- content?: tailwind_variants.ClassValue;
51
- wrapper?: tailwind_variants.ClassValue;
52
- body?: tailwind_variants.ClassValue;
53
- footer?: tailwind_variants.ClassValue;
54
- header?: tailwind_variants.ClassValue;
55
- divider?: tailwind_variants.ClassValue;
56
- footerWrapper?: tailwind_variants.ClassValue;
57
- headerWrapper?: tailwind_variants.ClassValue;
58
- };
59
- };
60
- } | {}>, {
61
- [key: string]: {
62
- [key: string]: tailwind_variants.ClassValue | {
63
- base?: tailwind_variants.ClassValue;
64
- content?: tailwind_variants.ClassValue;
65
- wrapper?: tailwind_variants.ClassValue;
66
- body?: tailwind_variants.ClassValue;
67
- footer?: tailwind_variants.ClassValue;
68
- header?: tailwind_variants.ClassValue;
69
- divider?: tailwind_variants.ClassValue;
70
- footerWrapper?: tailwind_variants.ClassValue;
71
- headerWrapper?: tailwind_variants.ClassValue;
72
- };
73
- };
74
- } | {}, {
75
- base: string;
76
- body: string;
77
- content: string;
78
- divider: string;
79
- footer: string;
80
- footerWrapper: string;
81
- header: string;
82
- headerWrapper: string;
83
- wrapper: string;
84
- }, tailwind_variants.TVReturnType<unknown, {
85
- base: string;
86
- body: string;
87
- content: string;
88
- divider: string;
89
- footer: string;
90
- footerWrapper: string;
91
- header: string;
92
- headerWrapper: string;
93
- wrapper: string;
94
- }, undefined, tailwind_variants_dist_config_js.TVConfig<unknown, {
95
- [key: string]: {
96
- [key: string]: tailwind_variants.ClassValue | {
97
- base?: tailwind_variants.ClassValue;
98
- content?: tailwind_variants.ClassValue;
99
- wrapper?: tailwind_variants.ClassValue;
100
- body?: tailwind_variants.ClassValue;
101
- footer?: tailwind_variants.ClassValue;
102
- header?: tailwind_variants.ClassValue;
103
- divider?: tailwind_variants.ClassValue;
104
- footerWrapper?: tailwind_variants.ClassValue;
105
- headerWrapper?: tailwind_variants.ClassValue;
106
- };
107
- };
108
- } | {}>, unknown, unknown, undefined>>;
109
- type VariantProps = TVProps<typeof tooltipVariants>;
110
- type ClassName = TVClassName<typeof tooltipVariants>;
111
- type TooltipPlacement = TooltipPlacement$1;
112
- interface TooltipProps extends VariantProps {
113
- /** trigger child components */
114
- children: ReactNode;
115
- /** CSS class name */
116
- className?: ClassName;
117
- /** delay in milliseconds before the tooltip opens. */
118
- closeDelay?: number;
119
- /** delay in milliseconds before the tooltip opens. */
120
- delay?: number;
121
- /** placement padding in px */
122
- containerPadding?: number;
123
- /** content displayed in the tooltip */
124
- content: ReactNode;
125
- /** open overlay initially when uncontrolled */
126
- defaultOpen?: boolean;
127
- /** tooltip footer */
128
- footer?: ReactNode;
129
- /** tooltip header */
130
- header?: ReactNode;
131
- /** handler that is called when the overlay's open state changes */
132
- onOpenChange?: (isOpen: boolean) => void;
133
- /** placement if the tooltip */
134
- placement?: TooltipPlacement;
135
- }
136
- /**
137
- * Tooltip component based on [HeroUI Tooltip](https://www.heroui.com//docs/components/tooltip)
138
- */
139
- declare const Tooltip: ({ children, className: _className, closeDelay, containerPadding, content, defaultOpen, delay, footer, header, onOpenChange, placement, }: TooltipProps) => react_jsx_runtime.JSX.Element;
140
-
141
- export { Tooltip as T, type TooltipProps as a, type TooltipPlacement as b };
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/Tooltip/Tooltip.tsx","../src/Tooltip/index.ts"],"sourcesContent":["import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { TooltipPlacement as HeroTooltipPlacement } from '@heroui/tooltip';\nimport type { ReactNode } from 'react';\n\nimport { Tooltip as HeroTooltip } from '@heroui/tooltip';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nimport ScrollShadow from '../ScrollShadow/ScrollShadow';\n\n// tooltip variants\nexport const tooltipVariants = tv({\n slots: {\n base: '',\n body: 'w-full px-4 py-2',\n content: 'flex max-h-[80vh] flex-col p-0',\n divider: 'm-0 w-full p-0',\n footer: 'w-full px-4 py-2',\n footerWrapper: 'w-full',\n header: 'w-full px-4 pb-1 pt-2 font-semibold',\n headerWrapper: 'w-full',\n wrapper: 'cursor-pointer',\n },\n});\n\ntype VariantProps = TVProps<typeof tooltipVariants>;\ntype ClassName = TVClassName<typeof tooltipVariants>;\n\nexport type TooltipPlacement = HeroTooltipPlacement;\n\nexport interface TooltipProps extends VariantProps {\n /** trigger child components */\n children: ReactNode;\n /** CSS class name */\n className?: ClassName;\n /** delay in milliseconds before the tooltip opens. */\n closeDelay?: number;\n /** delay in milliseconds before the tooltip opens. */\n delay?: number;\n /** placement padding in px */\n containerPadding?: number;\n /** content displayed in the tooltip */\n content: ReactNode;\n /** open overlay initially when uncontrolled */\n defaultOpen?: boolean;\n /** tooltip footer */\n footer?: ReactNode;\n /** tooltip header */\n header?: ReactNode;\n /** handler that is called when the overlay's open state changes */\n onOpenChange?: (isOpen: boolean) => void;\n /** placement if the tooltip */\n placement?: TooltipPlacement;\n}\n\n/**\n * Tooltip component based on [HeroUI Tooltip](https://www.heroui.com//docs/components/tooltip)\n */\nconst Tooltip = ({\n children,\n className: _className = undefined,\n closeDelay = 500,\n containerPadding = 0,\n content,\n defaultOpen = false,\n delay = 0,\n footer = undefined,\n header = undefined,\n onOpenChange = undefined,\n placement = 'top',\n}: TooltipProps) => {\n // classNames from slots\n const variants = tooltipVariants();\n const classNames = variantsToClassNames(variants, _className, 'base');\n\n return (\n <HeroTooltip\n classNames={classNames}\n closeDelay={closeDelay}\n containerPadding={containerPadding}\n content={\n <div>\n {header && (\n <div className={classNames.headerWrapper}>\n <div className={classNames.header}>{header}</div>\n <hr className={classNames.divider} />\n </div>\n )}\n <ScrollShadow className={classNames.body}>{content}</ScrollShadow>\n {footer && (\n <div className={classNames.footerWrapper}>\n <hr className={classNames.divider} />\n <div className={classNames.footer}>{footer}</div>\n </div>\n )}\n </div>\n }\n defaultOpen={defaultOpen}\n delay={delay}\n onClick={(e) => e.preventDefault()}\n onOpenChange={onOpenChange}\n placement={placement}\n shouldFlip\n showArrow\n >\n <span className={classNames.wrapper}>{children}</span>\n </HeroTooltip>\n );\n};\n\nexport default Tooltip;\n","import Tooltip from './Tooltip';\n\nexport type { TooltipProps, TooltipPlacement } from './Tooltip';\n\nexport { Tooltip };\n\nexport default Tooltip;\n"],"mappings":";;;;;AAIA,SAAS,WAAW,mBAAmB;AAEvC,SAAS,IAAI,4BAA4B;AA6E7B,SACE,KADF;AAxEL,IAAM,kBAAkB,GAAG;AAAA,EAChC,OAAO;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,SAAS;AAAA,IACT,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,eAAe;AAAA,IACf,QAAQ;AAAA,IACR,eAAe;AAAA,IACf,SAAS;AAAA,EACX;AACF,CAAC;AAmCD,IAAM,UAAU,CAAC;AAAA,EACf;AAAA,EACA,WAAW,aAAa;AAAA,EACxB,aAAa;AAAA,EACb,mBAAmB;AAAA,EACnB;AAAA,EACA,cAAc;AAAA,EACd,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,SAAS;AAAA,EACT,eAAe;AAAA,EACf,YAAY;AACd,MAAoB;AAElB,QAAM,WAAW,gBAAgB;AACjC,QAAM,aAAa,qBAAqB,UAAU,YAAY,MAAM;AAEpE,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA,SACE,qBAAC,SACE;AAAA,kBACC,qBAAC,SAAI,WAAW,WAAW,eACzB;AAAA,8BAAC,SAAI,WAAW,WAAW,QAAS,kBAAO;AAAA,UAC3C,oBAAC,QAAG,WAAW,WAAW,SAAS;AAAA,WACrC;AAAA,QAEF,oBAAC,wBAAa,WAAW,WAAW,MAAO,mBAAQ;AAAA,QAClD,UACC,qBAAC,SAAI,WAAW,WAAW,eACzB;AAAA,8BAAC,QAAG,WAAW,WAAW,SAAS;AAAA,UACnC,oBAAC,SAAI,WAAW,WAAW,QAAS,kBAAO;AAAA,WAC7C;AAAA,SAEJ;AAAA,MAEF;AAAA,MACA;AAAA,MACA,SAAS,CAAC,MAAM,EAAE,eAAe;AAAA,MACjC;AAAA,MACA;AAAA,MACA,YAAU;AAAA,MACV,WAAS;AAAA,MAET,8BAAC,UAAK,WAAW,WAAW,SAAU,UAAS;AAAA;AAAA,EACjD;AAEJ;AAEA,IAAO,kBAAQ;;;ACxGf,IAAOA,mBAAQ;","names":["Tooltip_default"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/home/runner/work/pixels/pixels/packages/pixels/dist/chunk-PCQ7BVAE.cjs","../src/Popover/Popover.tsx","../src/Popover/index.ts"],"names":["Popover_default"],"mappings":"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","file":"/home/runner/work/pixels/pixels/packages/pixels/dist/chunk-PCQ7BVAE.cjs","sourcesContent":[null,"import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { PopoverProps as HeroPopoverProps } from '@heroui/popover';\nimport type { ReactNode } from 'react';\nimport type { ButtonProps } from '../Button';\n\nimport { Button } from '@heroui/button';\nimport { Popover, PopoverContent, PopoverTrigger } from '@heroui/popover';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nimport ScrollShadow from '../ScrollShadow/ScrollShadow';\n\n// popover styling variants\nexport const popoverVariants = tv({\n slots: {\n body: 'w-full px-4 py-2',\n content: 'flex max-h-[80vh] flex-col p-0',\n divider: 'm-0 w-full p-0',\n footer: 'w-full px-4 py-2',\n footerWrapper: 'w-full',\n header: 'w-full px-4 pb-1 pt-2 text-lg font-semibold',\n headerWrapper: 'w-full',\n trigger: '',\n },\n});\n\ntype VariantProps = TVProps<typeof popoverVariants>;\ntype ClassName = TVClassName<typeof popoverVariants>;\n\nexport interface PopoverProps extends VariantProps {\n /** child components */\n children?: ReactNode;\n /** CSS class name */\n className?: ClassName;\n /** content of the popover */\n content: ReactNode;\n /** HTML data-testid attribute used in e2e tests */\n contentTestId?: string;\n /** popover footer */\n footer?: ReactNode;\n /** Popover title */\n header?: ReactNode;\n /** use as controlled component */\n openControlled?: { open: boolean; setOpen: (open: boolean) => void };\n /** placement of the popover relative to its trigger reference */\n placement?: HeroPopoverProps['placement'];\n /** The container element in which the overlay portal will be placed. */\n portalContainer?: HeroPopoverProps['portalContainer'];\n /** Whether to block scrolling outside the popover */\n shouldBlockScroll?: boolean;\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n /** When defined a Button will be rendered as trigger (with provided props) instead of unstyled html button */\n triggerButtonProps?: Pick<\n ButtonProps,\n | 'ariaLabel'\n | 'className'\n | 'color'\n | 'disableAnimation'\n | 'disabled'\n | 'size'\n | 'testId'\n | 'variant'\n >;\n}\n\n/**\n * Popover component based on [HeroUI Card](https://www.heroui.com//docs/components/popover)\n */\nexport default ({\n children = null,\n className: _className = undefined,\n content,\n contentTestId = undefined,\n footer = undefined,\n header = undefined,\n openControlled = undefined,\n placement = 'top',\n portalContainer = undefined,\n shouldBlockScroll = undefined,\n testId = undefined,\n triggerButtonProps = undefined,\n}: PopoverProps) => {\n // className from slots\n const variants = popoverVariants();\n const className = variantsToClassNames(variants, _className, 'trigger');\n\n return (\n <Popover\n classNames={className}\n placement={placement}\n portalContainer={portalContainer}\n radius=\"sm\"\n shouldBlockScroll={shouldBlockScroll}\n showArrow\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...(openControlled\n ? { isOpen: openControlled.open, onOpenChange: openControlled.setOpen }\n : {})}\n >\n <PopoverTrigger data-testid={testId}>\n {/* NOTE: type and aria properties are injected by PopoverTrigger */}\n {triggerButtonProps ? (\n // TODO: currently we have to use @heroui/button because\n // passing ref does not work (even with forwardRef in Button)\n // eslint-disable-next-line react/jsx-props-no-spreading\n <Button className={className.trigger} {...triggerButtonProps}>\n {children}\n </Button>\n ) : (\n // eslint-disable-next-line react/button-has-type\n <button className={className.trigger}>{children}</button>\n )}\n </PopoverTrigger>\n <PopoverContent data-testid={contentTestId}>\n {header && (\n <div className={className.headerWrapper}>\n <div className={className.header}>{header}</div>\n <hr className={className.divider} />\n </div>\n )}\n <ScrollShadow className={className.body}>{content}</ScrollShadow>\n {footer && (\n <div className={className.footerWrapper}>\n <hr className={className.divider} />\n <div className={className.footer}>{footer}</div>\n </div>\n )}\n </PopoverContent>\n </Popover>\n );\n};\n","import Popover from './Popover';\n\nexport type { PopoverProps } from './Popover';\n\nexport { Popover };\n\nexport default Popover;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/Popover/Popover.tsx","../src/Popover/index.ts"],"sourcesContent":["import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { PopoverProps as HeroPopoverProps } from '@heroui/popover';\nimport type { ReactNode } from 'react';\nimport type { ButtonProps } from '../Button';\n\nimport { Button } from '@heroui/button';\nimport { Popover, PopoverContent, PopoverTrigger } from '@heroui/popover';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nimport ScrollShadow from '../ScrollShadow/ScrollShadow';\n\n// popover styling variants\nexport const popoverVariants = tv({\n slots: {\n body: 'w-full px-4 py-2',\n content: 'flex max-h-[80vh] flex-col p-0',\n divider: 'm-0 w-full p-0',\n footer: 'w-full px-4 py-2',\n footerWrapper: 'w-full',\n header: 'w-full px-4 pb-1 pt-2 text-lg font-semibold',\n headerWrapper: 'w-full',\n trigger: '',\n },\n});\n\ntype VariantProps = TVProps<typeof popoverVariants>;\ntype ClassName = TVClassName<typeof popoverVariants>;\n\nexport interface PopoverProps extends VariantProps {\n /** child components */\n children?: ReactNode;\n /** CSS class name */\n className?: ClassName;\n /** content of the popover */\n content: ReactNode;\n /** HTML data-testid attribute used in e2e tests */\n contentTestId?: string;\n /** popover footer */\n footer?: ReactNode;\n /** Popover title */\n header?: ReactNode;\n /** use as controlled component */\n openControlled?: { open: boolean; setOpen: (open: boolean) => void };\n /** placement of the popover relative to its trigger reference */\n placement?: HeroPopoverProps['placement'];\n /** The container element in which the overlay portal will be placed. */\n portalContainer?: HeroPopoverProps['portalContainer'];\n /** Whether to block scrolling outside the popover */\n shouldBlockScroll?: boolean;\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n /** When defined a Button will be rendered as trigger (with provided props) instead of unstyled html button */\n triggerButtonProps?: Pick<\n ButtonProps,\n | 'ariaLabel'\n | 'className'\n | 'color'\n | 'disableAnimation'\n | 'disabled'\n | 'size'\n | 'testId'\n | 'variant'\n >;\n}\n\n/**\n * Popover component based on [HeroUI Card](https://www.heroui.com//docs/components/popover)\n */\nexport default ({\n children = null,\n className: _className = undefined,\n content,\n contentTestId = undefined,\n footer = undefined,\n header = undefined,\n openControlled = undefined,\n placement = 'top',\n portalContainer = undefined,\n shouldBlockScroll = undefined,\n testId = undefined,\n triggerButtonProps = undefined,\n}: PopoverProps) => {\n // className from slots\n const variants = popoverVariants();\n const className = variantsToClassNames(variants, _className, 'trigger');\n\n return (\n <Popover\n classNames={className}\n placement={placement}\n portalContainer={portalContainer}\n radius=\"sm\"\n shouldBlockScroll={shouldBlockScroll}\n showArrow\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...(openControlled\n ? { isOpen: openControlled.open, onOpenChange: openControlled.setOpen }\n : {})}\n >\n <PopoverTrigger data-testid={testId}>\n {/* NOTE: type and aria properties are injected by PopoverTrigger */}\n {triggerButtonProps ? (\n // TODO: currently we have to use @heroui/button because\n // passing ref does not work (even with forwardRef in Button)\n // eslint-disable-next-line react/jsx-props-no-spreading\n <Button className={className.trigger} {...triggerButtonProps}>\n {children}\n </Button>\n ) : (\n // eslint-disable-next-line react/button-has-type\n <button className={className.trigger}>{children}</button>\n )}\n </PopoverTrigger>\n <PopoverContent data-testid={contentTestId}>\n {header && (\n <div className={className.headerWrapper}>\n <div className={className.header}>{header}</div>\n <hr className={className.divider} />\n </div>\n )}\n <ScrollShadow className={className.body}>{content}</ScrollShadow>\n {footer && (\n <div className={className.footerWrapper}>\n <hr className={className.divider} />\n <div className={className.footer}>{footer}</div>\n </div>\n )}\n </PopoverContent>\n </Popover>\n );\n};\n","import Popover from './Popover';\n\nexport type { PopoverProps } from './Popover';\n\nexport { Popover };\n\nexport default Popover;\n"],"mappings":";;;;;;;;;AAKA,SAAS,cAAc;AACvB,SAAS,SAAS,gBAAgB,sBAAsB;AAExD,SAAS,IAAI,4BAA4B;AAkG/B,cAUA,YAVA;AA7FH,IAAM,kBAAkB,GAAG;AAAA,EAChC,OAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,IACT,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,eAAe;AAAA,IACf,QAAQ;AAAA,IACR,eAAe;AAAA,IACf,SAAS;AAAA,EACX;AACF,CAAC;AA6CD,IAAO,kBAAQ,CAAC;AAAA,EACd,WAAW;AAAA,EACX,WAAW,aAAa;AAAA,EACxB;AAAA,EACA,gBAAgB;AAAA,EAChB,SAAS;AAAA,EACT,SAAS;AAAA,EACT,iBAAiB;AAAA,EACjB,YAAY;AAAA,EACZ,kBAAkB;AAAA,EAClB,oBAAoB;AAAA,EACpB,SAAS;AAAA,EACT,qBAAqB;AACvB,MAAoB;AAElB,QAAM,WAAW,gBAAgB;AACjC,QAAM,YAAY,qBAAqB,UAAU,YAAY,SAAS;AAEtE,SACE;AAAA,IAAC;AAAA;AAAA,MACC,YAAY;AAAA,MACZ;AAAA,MACA;AAAA,MACA,QAAO;AAAA,MACP;AAAA,MACA,WAAS;AAAA,OAEJ,iBACD,EAAE,QAAQ,eAAe,MAAM,cAAc,eAAe,QAAQ,IACpE,CAAC,IAVN;AAAA,MAYC;AAAA,4BAAC,kBAAe,eAAa,QAE1B;AAAA;AAAA;AAAA;AAAA,UAIC,oBAAC,uCAAO,WAAW,UAAU,WAAa,qBAAzC,EACE,WACH;AAAA;AAAA;AAAA,UAGA,oBAAC,YAAO,WAAW,UAAU,SAAU,UAAS;AAAA,WAEpD;AAAA,QACA,qBAAC,kBAAe,eAAa,eAC1B;AAAA,oBACC,qBAAC,SAAI,WAAW,UAAU,eACxB;AAAA,gCAAC,SAAI,WAAW,UAAU,QAAS,kBAAO;AAAA,YAC1C,oBAAC,QAAG,WAAW,UAAU,SAAS;AAAA,aACpC;AAAA,UAEF,oBAAC,wBAAa,WAAW,UAAU,MAAO,mBAAQ;AAAA,UACjD,UACC,qBAAC,SAAI,WAAW,UAAU,eACxB;AAAA,gCAAC,QAAG,WAAW,UAAU,SAAS;AAAA,YAClC,oBAAC,SAAI,WAAW,UAAU,QAAS,kBAAO;AAAA,aAC5C;AAAA,WAEJ;AAAA;AAAA;AAAA,EACF;AAEJ;;;AC7HA,IAAOA,mBAAQ;","names":["Popover_default"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/home/runner/work/pixels/pixels/packages/pixels/dist/chunk-TSJGQNIL.cjs","../src/Tooltip/Tooltip.tsx","../src/Tooltip/index.ts"],"names":["Tooltip_default"],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACA;ACAA,0CAAuC;AAEvC,oDAAyC;AA6E7B,+CAAA;AAxEL,IAAM,gBAAA,EAAkB,4BAAA;AAAG,EAChC,KAAA,EAAO;AAAA,IACL,IAAA,EAAM,EAAA;AAAA,IACN,IAAA,EAAM,kBAAA;AAAA,IACN,OAAA,EAAS,gCAAA;AAAA,IACT,OAAA,EAAS,gBAAA;AAAA,IACT,MAAA,EAAQ,kBAAA;AAAA,IACR,aAAA,EAAe,QAAA;AAAA,IACf,MAAA,EAAQ,qCAAA;AAAA,IACR,aAAA,EAAe,QAAA;AAAA,IACf,OAAA,EAAS;AAAA,EACX;AACF,CAAC,CAAA;AAmCD,IAAM,QAAA,EAAU,CAAC;AAAA,EACf,QAAA;AAAA,EACA,SAAA,EAAW,WAAA,EAAa,KAAA,CAAA;AAAA,EACxB,WAAA,EAAa,GAAA;AAAA,EACb,iBAAA,EAAmB,CAAA;AAAA,EACnB,OAAA;AAAA,EACA,YAAA,EAAc,KAAA;AAAA,EACd,MAAA,EAAQ,CAAA;AAAA,EACR,OAAA,EAAS,KAAA,CAAA;AAAA,EACT,OAAA,EAAS,KAAA,CAAA;AAAA,EACT,aAAA,EAAe,KAAA,CAAA;AAAA,EACf,UAAA,EAAY;AACd,CAAA,EAAA,GAAoB;AAElB,EAAA,MAAM,SAAA,EAAW,eAAA,CAAgB,CAAA;AACjC,EAAA,MAAM,WAAA,EAAa,8CAAA,QAAqB,EAAU,UAAA,EAAY,MAAM,CAAA;AAEpE,EAAA,uBACE,6BAAA;AAAA,IAAC,gBAAA;AAAA,IAAA;AAAA,MACC,UAAA;AAAA,MACA,UAAA;AAAA,MACA,gBAAA;AAAA,MACA,OAAA,kBACE,8BAAA,KAAC,EAAA,EACE,QAAA,EAAA;AAAA,QAAA,OAAA,mBACC,8BAAA,KAAC,EAAA,EAAI,SAAA,EAAW,UAAA,CAAW,aAAA,EACzB,QAAA,EAAA;AAAA,0BAAA,6BAAA,KAAC,EAAA,EAAI,SAAA,EAAW,UAAA,CAAW,MAAA,EAAS,QAAA,EAAA,OAAA,CAAO,CAAA;AAAA,0BAC3C,6BAAA,IAAC,EAAA,EAAG,SAAA,EAAW,UAAA,CAAW,QAAA,CAAS;AAAA,QAAA,EAAA,CACrC,CAAA;AAAA,wBAEF,6BAAA,sCAAC,EAAA,EAAa,SAAA,EAAW,UAAA,CAAW,IAAA,EAAO,QAAA,EAAA,QAAA,CAAQ,CAAA;AAAA,QAClD,OAAA,mBACC,8BAAA,KAAC,EAAA,EAAI,SAAA,EAAW,UAAA,CAAW,aAAA,EACzB,QAAA,EAAA;AAAA,0BAAA,6BAAA,IAAC,EAAA,EAAG,SAAA,EAAW,UAAA,CAAW,QAAA,CAAS,CAAA;AAAA,0BACnC,6BAAA,KAAC,EAAA,EAAI,SAAA,EAAW,UAAA,CAAW,MAAA,EAAS,QAAA,EAAA,OAAA,CAAO;AAAA,QAAA,EAAA,CAC7C;AAAA,MAAA,EAAA,CAEJ,CAAA;AAAA,MAEF,WAAA;AAAA,MACA,KAAA;AAAA,MACA,OAAA,EAAS,CAAC,CAAA,EAAA,GAAM,CAAA,CAAE,cAAA,CAAe,CAAA;AAAA,MACjC,YAAA;AAAA,MACA,SAAA;AAAA,MACA,UAAA,EAAU,IAAA;AAAA,MACV,SAAA,EAAS,IAAA;AAAA,MAET,QAAA,kBAAA,6BAAA,MAAC,EAAA,EAAK,SAAA,EAAW,UAAA,CAAW,OAAA,EAAU,SAAA,CAAS;AAAA,IAAA;AAAA,EACjD,CAAA;AAEJ,CAAA;AAEA,IAAO,gBAAA,EAAQ,OAAA;AD7Cf;AACA;AE5DA,IAAOA,iBAAAA,EAAQ,eAAA;AF8Df;AACA;AACE;AACA;AACF,uFAAC","file":"/home/runner/work/pixels/pixels/packages/pixels/dist/chunk-TSJGQNIL.cjs","sourcesContent":[null,"import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { TooltipPlacement as HeroTooltipPlacement } from '@heroui/tooltip';\nimport type { ReactNode } from 'react';\n\nimport { Tooltip as HeroTooltip } from '@heroui/tooltip';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nimport ScrollShadow from '../ScrollShadow/ScrollShadow';\n\n// tooltip variants\nexport const tooltipVariants = tv({\n slots: {\n base: '',\n body: 'w-full px-4 py-2',\n content: 'flex max-h-[80vh] flex-col p-0',\n divider: 'm-0 w-full p-0',\n footer: 'w-full px-4 py-2',\n footerWrapper: 'w-full',\n header: 'w-full px-4 pb-1 pt-2 font-semibold',\n headerWrapper: 'w-full',\n wrapper: 'cursor-pointer',\n },\n});\n\ntype VariantProps = TVProps<typeof tooltipVariants>;\ntype ClassName = TVClassName<typeof tooltipVariants>;\n\nexport type TooltipPlacement = HeroTooltipPlacement;\n\nexport interface TooltipProps extends VariantProps {\n /** trigger child components */\n children: ReactNode;\n /** CSS class name */\n className?: ClassName;\n /** delay in milliseconds before the tooltip opens. */\n closeDelay?: number;\n /** delay in milliseconds before the tooltip opens. */\n delay?: number;\n /** placement padding in px */\n containerPadding?: number;\n /** content displayed in the tooltip */\n content: ReactNode;\n /** open overlay initially when uncontrolled */\n defaultOpen?: boolean;\n /** tooltip footer */\n footer?: ReactNode;\n /** tooltip header */\n header?: ReactNode;\n /** handler that is called when the overlay's open state changes */\n onOpenChange?: (isOpen: boolean) => void;\n /** placement if the tooltip */\n placement?: TooltipPlacement;\n}\n\n/**\n * Tooltip component based on [HeroUI Tooltip](https://www.heroui.com//docs/components/tooltip)\n */\nconst Tooltip = ({\n children,\n className: _className = undefined,\n closeDelay = 500,\n containerPadding = 0,\n content,\n defaultOpen = false,\n delay = 0,\n footer = undefined,\n header = undefined,\n onOpenChange = undefined,\n placement = 'top',\n}: TooltipProps) => {\n // classNames from slots\n const variants = tooltipVariants();\n const classNames = variantsToClassNames(variants, _className, 'base');\n\n return (\n <HeroTooltip\n classNames={classNames}\n closeDelay={closeDelay}\n containerPadding={containerPadding}\n content={\n <div>\n {header && (\n <div className={classNames.headerWrapper}>\n <div className={classNames.header}>{header}</div>\n <hr className={classNames.divider} />\n </div>\n )}\n <ScrollShadow className={classNames.body}>{content}</ScrollShadow>\n {footer && (\n <div className={classNames.footerWrapper}>\n <hr className={classNames.divider} />\n <div className={classNames.footer}>{footer}</div>\n </div>\n )}\n </div>\n }\n defaultOpen={defaultOpen}\n delay={delay}\n onClick={(e) => e.preventDefault()}\n onOpenChange={onOpenChange}\n placement={placement}\n shouldFlip\n showArrow\n >\n <span className={classNames.wrapper}>{children}</span>\n </HeroTooltip>\n );\n};\n\nexport default Tooltip;\n","import Tooltip from './Tooltip';\n\nexport type { TooltipProps, TooltipPlacement } from './Tooltip';\n\nexport { Tooltip };\n\nexport default Tooltip;\n"]}