@fuf-stack/pixels 0.0.6 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{components/Button → Button}/Button.cjs +3 -3
- package/dist/Button/Button.cjs.map +1 -0
- package/dist/Button/Button.js +8 -0
- package/dist/{components/Button → Button}/index.cjs +5 -5
- package/dist/Button/index.cjs.map +1 -0
- package/dist/Button/index.js +11 -0
- package/dist/Button/index.js.map +1 -0
- package/dist/{components/Button → Button}/subcomponents/LoadingSpinner.cjs +1 -1
- package/dist/Button/subcomponents/LoadingSpinner.cjs.map +1 -0
- package/dist/{components/Button → Button}/subcomponents/LoadingSpinner.js +1 -1
- package/dist/{components/Card → Card}/Card.cjs +1 -1
- package/dist/Card/Card.cjs.map +1 -0
- package/dist/{components/Card → Card}/Card.d.cts +3 -3
- package/dist/{components/Card → Card}/Card.d.ts +3 -3
- package/dist/{components/Card → Card}/Card.js +1 -1
- package/dist/{components/Card → Card}/index.cjs +3 -3
- package/dist/Card/index.cjs.map +1 -0
- package/dist/{components/Card → Card}/index.d.cts +1 -1
- package/dist/{components/Card → Card}/index.d.ts +1 -1
- package/dist/Card/index.js +10 -0
- package/dist/Card/index.js.map +1 -0
- package/dist/Label/Label.cjs +58 -0
- package/dist/Label/Label.cjs.map +1 -0
- package/dist/Label/Label.d.cts +24 -0
- package/dist/Label/Label.d.ts +24 -0
- package/dist/Label/Label.js +7 -0
- package/dist/Label/Label.js.map +1 -0
- package/dist/Label/index.cjs +63 -0
- package/dist/Label/index.cjs.map +1 -0
- package/dist/Label/index.d.cts +8 -0
- package/dist/Label/index.d.ts +8 -0
- package/dist/Label/index.js +10 -0
- package/dist/Label/index.js.map +1 -0
- package/dist/Menu/Menu.cjs +97 -0
- package/dist/Menu/Menu.cjs.map +1 -0
- package/dist/Menu/Menu.d.cts +55 -0
- package/dist/Menu/Menu.d.ts +55 -0
- package/dist/Menu/Menu.js +7 -0
- package/dist/Menu/Menu.js.map +1 -0
- package/dist/Menu/index.cjs +102 -0
- package/dist/Menu/index.cjs.map +1 -0
- package/dist/Menu/index.d.cts +7 -0
- package/dist/Menu/index.d.ts +7 -0
- package/dist/Menu/index.js +10 -0
- package/dist/Menu/index.js.map +1 -0
- package/dist/Modal/Modal.cjs +86 -0
- package/dist/Modal/Modal.cjs.map +1 -0
- package/dist/Modal/Modal.d.cts +29 -0
- package/dist/Modal/Modal.d.ts +29 -0
- package/dist/Modal/Modal.js +9 -0
- package/dist/Modal/Modal.js.map +1 -0
- package/dist/Modal/index.cjs +85 -0
- package/dist/Modal/index.cjs.map +1 -0
- package/dist/Modal/index.d.cts +7 -0
- package/dist/Modal/index.d.ts +7 -0
- package/dist/Modal/index.js +10 -0
- package/dist/Modal/index.js.map +1 -0
- package/dist/Popover/Popover.cjs +72 -0
- package/dist/Popover/Popover.cjs.map +1 -0
- package/dist/Popover/Popover.d.cts +31 -0
- package/dist/Popover/Popover.d.ts +31 -0
- package/dist/Popover/Popover.js +7 -0
- package/dist/Popover/Popover.js.map +1 -0
- package/dist/Popover/index.cjs +77 -0
- package/dist/Popover/index.cjs.map +1 -0
- package/dist/Popover/index.d.cts +8 -0
- package/dist/Popover/index.d.ts +8 -0
- package/dist/Popover/index.js +10 -0
- package/dist/Popover/index.js.map +1 -0
- package/dist/Tooltip/Tooltip.cjs +68 -0
- package/dist/Tooltip/Tooltip.cjs.map +1 -0
- package/dist/Tooltip/Tooltip.d.cts +27 -0
- package/dist/Tooltip/Tooltip.d.ts +27 -0
- package/dist/Tooltip/Tooltip.js +9 -0
- package/dist/Tooltip/Tooltip.js.map +1 -0
- package/dist/Tooltip/index.cjs +67 -0
- package/dist/Tooltip/index.cjs.map +1 -0
- package/dist/Tooltip/index.d.cts +7 -0
- package/dist/Tooltip/index.d.ts +7 -0
- package/dist/Tooltip/index.js +10 -0
- package/dist/Tooltip/index.js.map +1 -0
- package/dist/chunk-6ZUWYBMG.js +73 -0
- package/dist/chunk-6ZUWYBMG.js.map +1 -0
- package/dist/chunk-CEUL4NWH.js +28 -0
- package/dist/chunk-CEUL4NWH.js.map +1 -0
- package/dist/chunk-EYUTNORZ.js +58 -0
- package/dist/chunk-EYUTNORZ.js.map +1 -0
- package/dist/chunk-ONXXZTZY.js +34 -0
- package/dist/chunk-ONXXZTZY.js.map +1 -0
- package/dist/chunk-SGAWYTO7.js +42 -0
- package/dist/chunk-SGAWYTO7.js.map +1 -0
- package/dist/{chunk-XWTXH2TR.js → chunk-XPTSDDXG.js} +2 -2
- package/dist/chunk-XPTSDDXG.js.map +1 -0
- package/dist/{chunk-YOPQSZ46.js → chunk-ZFEVTQWW.js} +2 -2
- package/dist/chunk-ZFEVTQWW.js.map +1 -0
- package/dist/{chunk-WQN756O7.js → chunk-ZXTDGCUF.js} +3 -3
- package/dist/chunk-ZXTDGCUF.js.map +1 -0
- package/package.json +3 -5
- package/dist/chunk-WQN756O7.js.map +0 -1
- package/dist/chunk-XWTXH2TR.js.map +0 -1
- package/dist/chunk-YOPQSZ46.js.map +0 -1
- package/dist/components/Button/Button.cjs.map +0 -1
- package/dist/components/Button/Button.js +0 -8
- package/dist/components/Button/index.cjs.map +0 -1
- package/dist/components/Button/index.js +0 -11
- package/dist/components/Button/index.js.map +0 -1
- package/dist/components/Button/subcomponents/LoadingSpinner.cjs.map +0 -1
- package/dist/components/Card/Card.cjs.map +0 -1
- package/dist/components/Card/index.cjs.map +0 -1
- package/dist/components/Card/index.js +0 -10
- package/dist/components/Card/index.js.map +0 -1
- /package/dist/{components/Button → Button}/Button.d.cts +0 -0
- /package/dist/{components/Button → Button}/Button.d.ts +0 -0
- /package/dist/{components/Button → Button}/Button.js.map +0 -0
- /package/dist/{components/Button → Button}/index.d.cts +0 -0
- /package/dist/{components/Button → Button}/index.d.ts +0 -0
- /package/dist/{components/Button → Button}/subcomponents/LoadingSpinner.d.cts +0 -0
- /package/dist/{components/Button → Button}/subcomponents/LoadingSpinner.d.ts +0 -0
- /package/dist/{components/Button → Button}/subcomponents/LoadingSpinner.js.map +0 -0
- /package/dist/{components/Card → Card}/Card.js.map +0 -0
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
|
|
30
|
+
// src/Popover/Popover.tsx
|
|
31
|
+
var Popover_exports = {};
|
|
32
|
+
__export(Popover_exports, {
|
|
33
|
+
default: () => Popover_default
|
|
34
|
+
});
|
|
35
|
+
module.exports = __toCommonJS(Popover_exports);
|
|
36
|
+
var import_popover = require("@nextui-org/popover");
|
|
37
|
+
var import_classnames = __toESM(require("classnames"), 1);
|
|
38
|
+
var import_debug = __toESM(require("debug"), 1);
|
|
39
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
40
|
+
var debug = (0, import_debug.default)("component:Popover");
|
|
41
|
+
var Popover_default = ({
|
|
42
|
+
children = null,
|
|
43
|
+
className = void 0,
|
|
44
|
+
content,
|
|
45
|
+
contentTestId = void 0,
|
|
46
|
+
placement = "top",
|
|
47
|
+
openControlled = void 0,
|
|
48
|
+
testId = void 0,
|
|
49
|
+
title = void 0
|
|
50
|
+
}) => {
|
|
51
|
+
debug("Popover");
|
|
52
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
53
|
+
import_popover.Popover,
|
|
54
|
+
{
|
|
55
|
+
placement,
|
|
56
|
+
radius: "sm",
|
|
57
|
+
showArrow: true,
|
|
58
|
+
...openControlled ? { isOpen: openControlled.open, onOpenChange: openControlled.setOpen } : {},
|
|
59
|
+
children: [
|
|
60
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_popover.PopoverTrigger, { className: (0, import_classnames.default)(className), "data-testid": testId, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("button", { children }) }),
|
|
61
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_popover.PopoverContent, { "data-testid": contentTestId, children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "max-h-[80vh] overflow-y-auto", children: [
|
|
62
|
+
title && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { children: [
|
|
63
|
+
title,
|
|
64
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("hr", {})
|
|
65
|
+
] }),
|
|
66
|
+
content
|
|
67
|
+
] }) })
|
|
68
|
+
]
|
|
69
|
+
}
|
|
70
|
+
);
|
|
71
|
+
};
|
|
72
|
+
//# sourceMappingURL=Popover.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/Popover/Popover.tsx"],"sourcesContent":["import type { PopoverProps as NextPopoverProps } from '@nextui-org/popover';\nimport type { ReactNode } from 'react';\n\nimport { Popover, PopoverContent, PopoverTrigger } from '@nextui-org/popover';\nimport cn from 'classnames';\nimport createDebug from 'debug';\n\nconst debug = createDebug('component:Popover');\n\nexport interface PopoverProps {\n /** child components */\n children?: ReactNode;\n /** CSS class name */\n className?: string | string[];\n /** content of the popover */\n content: ReactNode;\n /** HTML data-testid attribute used in e2e tests */\n contentTestId?: string;\n /** placement of the popover relative to its trigger reference */\n placement?: NextPopoverProps['placement'];\n /** use as controlled component */\n openControlled?: { open: boolean; setOpen: (open: boolean) => void };\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n /** popover title */\n title?: ReactNode;\n}\n\n/**\n * Popover component based on [NextUI Card](https://nextui.org/docs/components/popover)\n */\nexport default ({\n children = null,\n className = undefined,\n content,\n contentTestId = undefined,\n placement = 'top',\n openControlled = undefined,\n testId = undefined,\n title = undefined,\n}: PopoverProps) => {\n debug('Popover');\n\n return (\n <Popover\n placement={placement}\n radius=\"sm\"\n showArrow\n {...(openControlled\n ? { isOpen: openControlled.open, onOpenChange: openControlled.setOpen }\n : {})}\n >\n <PopoverTrigger className={cn(className)} data-testid={testId}>\n {/* NOTE: type and aria properties are injected by PopoverTrigger */}\n {/* eslint-disable-next-line react/button-has-type */}\n <button>{children}</button>\n </PopoverTrigger>\n <PopoverContent data-testid={contentTestId}>\n <div className=\"max-h-[80vh] overflow-y-auto\">\n {title && (\n <div>\n {title}\n <hr />\n </div>\n )}\n {content}\n </div>\n </PopoverContent>\n </Popover>\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,qBAAwD;AACxD,wBAAe;AACf,mBAAwB;AAkDhB;AAhDR,IAAM,YAAQ,aAAAA,SAAY,mBAAmB;AAwB7C,IAAO,kBAAQ,CAAC;AAAA,EACd,WAAW;AAAA,EACX,YAAY;AAAA,EACZ;AAAA,EACA,gBAAgB;AAAA,EAChB,YAAY;AAAA,EACZ,iBAAiB;AAAA,EACjB,SAAS;AAAA,EACT,QAAQ;AACV,MAAoB;AAClB,QAAM,SAAS;AAEf,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,QAAO;AAAA,MACP,WAAS;AAAA,MACR,GAAI,iBACD,EAAE,QAAQ,eAAe,MAAM,cAAc,eAAe,QAAQ,IACpE,CAAC;AAAA,MAEL;AAAA,oDAAC,iCAAe,eAAW,kBAAAC,SAAG,SAAS,GAAG,eAAa,QAGrD,sDAAC,YAAQ,UAAS,GACpB;AAAA,QACA,4CAAC,iCAAe,eAAa,eAC3B,uDAAC,SAAI,WAAU,gCACZ;AAAA,mBACC,6CAAC,SACE;AAAA;AAAA,YACD,4CAAC,QAAG;AAAA,aACN;AAAA,UAED;AAAA,WACH,GACF;AAAA;AAAA;AAAA,EACF;AAEJ;","names":["createDebug","cn"]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { PopoverProps as PopoverProps$1 } from '@nextui-org/popover';
|
|
3
|
+
import { ReactNode } from 'react';
|
|
4
|
+
|
|
5
|
+
interface PopoverProps {
|
|
6
|
+
/** child components */
|
|
7
|
+
children?: ReactNode;
|
|
8
|
+
/** CSS class name */
|
|
9
|
+
className?: string | string[];
|
|
10
|
+
/** content of the popover */
|
|
11
|
+
content: ReactNode;
|
|
12
|
+
/** HTML data-testid attribute used in e2e tests */
|
|
13
|
+
contentTestId?: string;
|
|
14
|
+
/** placement of the popover relative to its trigger reference */
|
|
15
|
+
placement?: PopoverProps$1['placement'];
|
|
16
|
+
/** use as controlled component */
|
|
17
|
+
openControlled?: {
|
|
18
|
+
open: boolean;
|
|
19
|
+
setOpen: (open: boolean) => void;
|
|
20
|
+
};
|
|
21
|
+
/** HTML data-testid attribute used in e2e tests */
|
|
22
|
+
testId?: string;
|
|
23
|
+
/** popover title */
|
|
24
|
+
title?: ReactNode;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Popover component based on [NextUI Card](https://nextui.org/docs/components/popover)
|
|
28
|
+
*/
|
|
29
|
+
declare const _default: ({ children, className, content, contentTestId, placement, openControlled, testId, title, }: PopoverProps) => react_jsx_runtime.JSX.Element;
|
|
30
|
+
|
|
31
|
+
export { type PopoverProps, _default as default };
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { PopoverProps as PopoverProps$1 } from '@nextui-org/popover';
|
|
3
|
+
import { ReactNode } from 'react';
|
|
4
|
+
|
|
5
|
+
interface PopoverProps {
|
|
6
|
+
/** child components */
|
|
7
|
+
children?: ReactNode;
|
|
8
|
+
/** CSS class name */
|
|
9
|
+
className?: string | string[];
|
|
10
|
+
/** content of the popover */
|
|
11
|
+
content: ReactNode;
|
|
12
|
+
/** HTML data-testid attribute used in e2e tests */
|
|
13
|
+
contentTestId?: string;
|
|
14
|
+
/** placement of the popover relative to its trigger reference */
|
|
15
|
+
placement?: PopoverProps$1['placement'];
|
|
16
|
+
/** use as controlled component */
|
|
17
|
+
openControlled?: {
|
|
18
|
+
open: boolean;
|
|
19
|
+
setOpen: (open: boolean) => void;
|
|
20
|
+
};
|
|
21
|
+
/** HTML data-testid attribute used in e2e tests */
|
|
22
|
+
testId?: string;
|
|
23
|
+
/** popover title */
|
|
24
|
+
title?: ReactNode;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Popover component based on [NextUI Card](https://nextui.org/docs/components/popover)
|
|
28
|
+
*/
|
|
29
|
+
declare const _default: ({ children, className, content, contentTestId, placement, openControlled, testId, title, }: PopoverProps) => react_jsx_runtime.JSX.Element;
|
|
30
|
+
|
|
31
|
+
export { type PopoverProps, _default as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
|
|
30
|
+
// src/Popover/index.ts
|
|
31
|
+
var Popover_exports = {};
|
|
32
|
+
__export(Popover_exports, {
|
|
33
|
+
default: () => Popover_default2
|
|
34
|
+
});
|
|
35
|
+
module.exports = __toCommonJS(Popover_exports);
|
|
36
|
+
|
|
37
|
+
// src/Popover/Popover.tsx
|
|
38
|
+
var import_popover = require("@nextui-org/popover");
|
|
39
|
+
var import_classnames = __toESM(require("classnames"), 1);
|
|
40
|
+
var import_debug = __toESM(require("debug"), 1);
|
|
41
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
42
|
+
var debug = (0, import_debug.default)("component:Popover");
|
|
43
|
+
var Popover_default = ({
|
|
44
|
+
children = null,
|
|
45
|
+
className = void 0,
|
|
46
|
+
content,
|
|
47
|
+
contentTestId = void 0,
|
|
48
|
+
placement = "top",
|
|
49
|
+
openControlled = void 0,
|
|
50
|
+
testId = void 0,
|
|
51
|
+
title = void 0
|
|
52
|
+
}) => {
|
|
53
|
+
debug("Popover");
|
|
54
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
55
|
+
import_popover.Popover,
|
|
56
|
+
{
|
|
57
|
+
placement,
|
|
58
|
+
radius: "sm",
|
|
59
|
+
showArrow: true,
|
|
60
|
+
...openControlled ? { isOpen: openControlled.open, onOpenChange: openControlled.setOpen } : {},
|
|
61
|
+
children: [
|
|
62
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_popover.PopoverTrigger, { className: (0, import_classnames.default)(className), "data-testid": testId, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("button", { children }) }),
|
|
63
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_popover.PopoverContent, { "data-testid": contentTestId, children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "max-h-[80vh] overflow-y-auto", children: [
|
|
64
|
+
title && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { children: [
|
|
65
|
+
title,
|
|
66
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("hr", {})
|
|
67
|
+
] }),
|
|
68
|
+
content
|
|
69
|
+
] }) })
|
|
70
|
+
]
|
|
71
|
+
}
|
|
72
|
+
);
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
// src/Popover/index.ts
|
|
76
|
+
var Popover_default2 = Popover_default;
|
|
77
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/Popover/index.ts","../../src/Popover/Popover.tsx"],"sourcesContent":["import Popover from './Popover';\n\nexport default Popover;\n","import type { PopoverProps as NextPopoverProps } from '@nextui-org/popover';\nimport type { ReactNode } from 'react';\n\nimport { Popover, PopoverContent, PopoverTrigger } from '@nextui-org/popover';\nimport cn from 'classnames';\nimport createDebug from 'debug';\n\nconst debug = createDebug('component:Popover');\n\nexport interface PopoverProps {\n /** child components */\n children?: ReactNode;\n /** CSS class name */\n className?: string | string[];\n /** content of the popover */\n content: ReactNode;\n /** HTML data-testid attribute used in e2e tests */\n contentTestId?: string;\n /** placement of the popover relative to its trigger reference */\n placement?: NextPopoverProps['placement'];\n /** use as controlled component */\n openControlled?: { open: boolean; setOpen: (open: boolean) => void };\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n /** popover title */\n title?: ReactNode;\n}\n\n/**\n * Popover component based on [NextUI Card](https://nextui.org/docs/components/popover)\n */\nexport default ({\n children = null,\n className = undefined,\n content,\n contentTestId = undefined,\n placement = 'top',\n openControlled = undefined,\n testId = undefined,\n title = undefined,\n}: PopoverProps) => {\n debug('Popover');\n\n return (\n <Popover\n placement={placement}\n radius=\"sm\"\n showArrow\n {...(openControlled\n ? { isOpen: openControlled.open, onOpenChange: openControlled.setOpen }\n : {})}\n >\n <PopoverTrigger className={cn(className)} data-testid={testId}>\n {/* NOTE: type and aria properties are injected by PopoverTrigger */}\n {/* eslint-disable-next-line react/button-has-type */}\n <button>{children}</button>\n </PopoverTrigger>\n <PopoverContent data-testid={contentTestId}>\n <div className=\"max-h-[80vh] overflow-y-auto\">\n {title && (\n <div>\n {title}\n <hr />\n </div>\n )}\n {content}\n </div>\n </PopoverContent>\n </Popover>\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA,iBAAAA;AAAA;AAAA;;;ACGA,qBAAwD;AACxD,wBAAe;AACf,mBAAwB;AAkDhB;AAhDR,IAAM,YAAQ,aAAAC,SAAY,mBAAmB;AAwB7C,IAAO,kBAAQ,CAAC;AAAA,EACd,WAAW;AAAA,EACX,YAAY;AAAA,EACZ;AAAA,EACA,gBAAgB;AAAA,EAChB,YAAY;AAAA,EACZ,iBAAiB;AAAA,EACjB,SAAS;AAAA,EACT,QAAQ;AACV,MAAoB;AAClB,QAAM,SAAS;AAEf,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,QAAO;AAAA,MACP,WAAS;AAAA,MACR,GAAI,iBACD,EAAE,QAAQ,eAAe,MAAM,cAAc,eAAe,QAAQ,IACpE,CAAC;AAAA,MAEL;AAAA,oDAAC,iCAAe,eAAW,kBAAAC,SAAG,SAAS,GAAG,eAAa,QAGrD,sDAAC,YAAQ,UAAS,GACpB;AAAA,QACA,4CAAC,iCAAe,eAAa,eAC3B,uDAAC,SAAI,WAAU,gCACZ;AAAA,mBACC,6CAAC,SACE;AAAA;AAAA,YACD,4CAAC,QAAG;AAAA,aACN;AAAA,UAED;AAAA,WACH,GACF;AAAA;AAAA;AAAA,EACF;AAEJ;;;ADpEA,IAAOC,mBAAQ;","names":["Popover_default","createDebug","cn","Popover_default"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/Popover/index.ts"],"sourcesContent":["import Popover from './Popover';\n\nexport default Popover;\n"],"mappings":";;;;;AAEA,IAAOA,mBAAQ;","names":["Popover_default"]}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
|
|
30
|
+
// src/Tooltip/Tooltip.tsx
|
|
31
|
+
var Tooltip_exports = {};
|
|
32
|
+
__export(Tooltip_exports, {
|
|
33
|
+
PlacementOptions: () => PlacementOptions,
|
|
34
|
+
default: () => Tooltip_default
|
|
35
|
+
});
|
|
36
|
+
module.exports = __toCommonJS(Tooltip_exports);
|
|
37
|
+
var import_tooltip = require("@nextui-org/tooltip");
|
|
38
|
+
var import_classnames = __toESM(require("classnames"), 1);
|
|
39
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
40
|
+
var PlacementOptions = ["top", "bottom", "left", "right"];
|
|
41
|
+
var Tooltip = ({
|
|
42
|
+
children,
|
|
43
|
+
className = void 0,
|
|
44
|
+
content,
|
|
45
|
+
placement = "top",
|
|
46
|
+
defaultOpen = false,
|
|
47
|
+
onOpenChange = void 0,
|
|
48
|
+
containerPadding = 0
|
|
49
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
50
|
+
import_tooltip.Tooltip,
|
|
51
|
+
{
|
|
52
|
+
className: (0, import_classnames.default)(className),
|
|
53
|
+
containerPadding,
|
|
54
|
+
content,
|
|
55
|
+
defaultOpen,
|
|
56
|
+
onOpenChange,
|
|
57
|
+
placement,
|
|
58
|
+
shouldFlip: true,
|
|
59
|
+
showArrow: true,
|
|
60
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "cursor-pointer", children })
|
|
61
|
+
}
|
|
62
|
+
);
|
|
63
|
+
var Tooltip_default = Tooltip;
|
|
64
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
65
|
+
0 && (module.exports = {
|
|
66
|
+
PlacementOptions
|
|
67
|
+
});
|
|
68
|
+
//# sourceMappingURL=Tooltip.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/Tooltip/Tooltip.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\n\nimport { Tooltip as NextTooltip } from '@nextui-org/tooltip';\nimport cn from 'classnames';\n\nexport const PlacementOptions = ['top', 'bottom', 'left', 'right'] as const;\nexport type Placement = (typeof PlacementOptions)[number];\n\nexport interface TooltipProps {\n /** trigger child components */\n children: ReactNode;\n /** CSS class name */\n className?: string;\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 /** handler that is called when the overlay's open state changes */\n onOpenChange?: (isOpen: boolean) => void;\n /** placement if the tooltip */\n placement?: Placement;\n}\n\n/**\n * Tooltip component based on [NextUI Tooltip](https://nextui.org/docs/components/tooltip)\n */\nconst Tooltip = ({\n children,\n className = undefined,\n content,\n placement = 'top',\n defaultOpen = false,\n onOpenChange = undefined,\n containerPadding = 0,\n}: TooltipProps) => (\n <NextTooltip\n className={cn(className)}\n containerPadding={containerPadding}\n content={content}\n defaultOpen={defaultOpen}\n onOpenChange={onOpenChange}\n placement={placement}\n shouldFlip\n showArrow\n >\n <span className=\"cursor-pointer\">{children}</span>\n </NextTooltip>\n);\n\nexport default Tooltip;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,qBAAuC;AACvC,wBAAe;AA4CX;AA1CG,IAAM,mBAAmB,CAAC,OAAO,UAAU,QAAQ,OAAO;AAuBjE,IAAM,UAAU,CAAC;AAAA,EACf;AAAA,EACA,YAAY;AAAA,EACZ;AAAA,EACA,YAAY;AAAA,EACZ,cAAc;AAAA,EACd,eAAe;AAAA,EACf,mBAAmB;AACrB,MACE;AAAA,EAAC,eAAAA;AAAA,EAAA;AAAA,IACC,eAAW,kBAAAC,SAAG,SAAS;AAAA,IACvB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,YAAU;AAAA,IACV,WAAS;AAAA,IAET,sDAAC,UAAK,WAAU,kBAAkB,UAAS;AAAA;AAC7C;AAGF,IAAO,kBAAQ;","names":["NextTooltip","cn"]}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
|
|
4
|
+
declare const PlacementOptions: readonly ["top", "bottom", "left", "right"];
|
|
5
|
+
type Placement = (typeof PlacementOptions)[number];
|
|
6
|
+
interface TooltipProps {
|
|
7
|
+
/** trigger child components */
|
|
8
|
+
children: ReactNode;
|
|
9
|
+
/** CSS class name */
|
|
10
|
+
className?: string;
|
|
11
|
+
/** placement padding in px */
|
|
12
|
+
containerPadding?: number;
|
|
13
|
+
/** content displayed in the tooltip */
|
|
14
|
+
content: ReactNode;
|
|
15
|
+
/** open overlay initially when uncontrolled */
|
|
16
|
+
defaultOpen?: boolean;
|
|
17
|
+
/** handler that is called when the overlay's open state changes */
|
|
18
|
+
onOpenChange?: (isOpen: boolean) => void;
|
|
19
|
+
/** placement if the tooltip */
|
|
20
|
+
placement?: Placement;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Tooltip component based on [NextUI Tooltip](https://nextui.org/docs/components/tooltip)
|
|
24
|
+
*/
|
|
25
|
+
declare const Tooltip: ({ children, className, content, placement, defaultOpen, onOpenChange, containerPadding, }: TooltipProps) => react_jsx_runtime.JSX.Element;
|
|
26
|
+
|
|
27
|
+
export { type Placement, PlacementOptions, type TooltipProps, Tooltip as default };
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
|
|
4
|
+
declare const PlacementOptions: readonly ["top", "bottom", "left", "right"];
|
|
5
|
+
type Placement = (typeof PlacementOptions)[number];
|
|
6
|
+
interface TooltipProps {
|
|
7
|
+
/** trigger child components */
|
|
8
|
+
children: ReactNode;
|
|
9
|
+
/** CSS class name */
|
|
10
|
+
className?: string;
|
|
11
|
+
/** placement padding in px */
|
|
12
|
+
containerPadding?: number;
|
|
13
|
+
/** content displayed in the tooltip */
|
|
14
|
+
content: ReactNode;
|
|
15
|
+
/** open overlay initially when uncontrolled */
|
|
16
|
+
defaultOpen?: boolean;
|
|
17
|
+
/** handler that is called when the overlay's open state changes */
|
|
18
|
+
onOpenChange?: (isOpen: boolean) => void;
|
|
19
|
+
/** placement if the tooltip */
|
|
20
|
+
placement?: Placement;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Tooltip component based on [NextUI Tooltip](https://nextui.org/docs/components/tooltip)
|
|
24
|
+
*/
|
|
25
|
+
declare const Tooltip: ({ children, className, content, placement, defaultOpen, onOpenChange, containerPadding, }: TooltipProps) => react_jsx_runtime.JSX.Element;
|
|
26
|
+
|
|
27
|
+
export { type Placement, PlacementOptions, type TooltipProps, Tooltip as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
|
|
30
|
+
// src/Tooltip/index.ts
|
|
31
|
+
var Tooltip_exports = {};
|
|
32
|
+
__export(Tooltip_exports, {
|
|
33
|
+
default: () => Tooltip_default2
|
|
34
|
+
});
|
|
35
|
+
module.exports = __toCommonJS(Tooltip_exports);
|
|
36
|
+
|
|
37
|
+
// src/Tooltip/Tooltip.tsx
|
|
38
|
+
var import_tooltip = require("@nextui-org/tooltip");
|
|
39
|
+
var import_classnames = __toESM(require("classnames"), 1);
|
|
40
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
41
|
+
var Tooltip = ({
|
|
42
|
+
children,
|
|
43
|
+
className = void 0,
|
|
44
|
+
content,
|
|
45
|
+
placement = "top",
|
|
46
|
+
defaultOpen = false,
|
|
47
|
+
onOpenChange = void 0,
|
|
48
|
+
containerPadding = 0
|
|
49
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
50
|
+
import_tooltip.Tooltip,
|
|
51
|
+
{
|
|
52
|
+
className: (0, import_classnames.default)(className),
|
|
53
|
+
containerPadding,
|
|
54
|
+
content,
|
|
55
|
+
defaultOpen,
|
|
56
|
+
onOpenChange,
|
|
57
|
+
placement,
|
|
58
|
+
shouldFlip: true,
|
|
59
|
+
showArrow: true,
|
|
60
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "cursor-pointer", children })
|
|
61
|
+
}
|
|
62
|
+
);
|
|
63
|
+
var Tooltip_default = Tooltip;
|
|
64
|
+
|
|
65
|
+
// src/Tooltip/index.ts
|
|
66
|
+
var Tooltip_default2 = Tooltip_default;
|
|
67
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/Tooltip/index.ts","../../src/Tooltip/Tooltip.tsx"],"sourcesContent":["import Tooltip from './Tooltip';\n\nexport default Tooltip;\n","import type { ReactNode } from 'react';\n\nimport { Tooltip as NextTooltip } from '@nextui-org/tooltip';\nimport cn from 'classnames';\n\nexport const PlacementOptions = ['top', 'bottom', 'left', 'right'] as const;\nexport type Placement = (typeof PlacementOptions)[number];\n\nexport interface TooltipProps {\n /** trigger child components */\n children: ReactNode;\n /** CSS class name */\n className?: string;\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 /** handler that is called when the overlay's open state changes */\n onOpenChange?: (isOpen: boolean) => void;\n /** placement if the tooltip */\n placement?: Placement;\n}\n\n/**\n * Tooltip component based on [NextUI Tooltip](https://nextui.org/docs/components/tooltip)\n */\nconst Tooltip = ({\n children,\n className = undefined,\n content,\n placement = 'top',\n defaultOpen = false,\n onOpenChange = undefined,\n containerPadding = 0,\n}: TooltipProps) => (\n <NextTooltip\n className={cn(className)}\n containerPadding={containerPadding}\n content={content}\n defaultOpen={defaultOpen}\n onOpenChange={onOpenChange}\n placement={placement}\n shouldFlip\n showArrow\n >\n <span className=\"cursor-pointer\">{children}</span>\n </NextTooltip>\n);\n\nexport default Tooltip;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA,iBAAAA;AAAA;AAAA;;;ACEA,qBAAuC;AACvC,wBAAe;AA4CX;AAnBJ,IAAM,UAAU,CAAC;AAAA,EACf;AAAA,EACA,YAAY;AAAA,EACZ;AAAA,EACA,YAAY;AAAA,EACZ,cAAc;AAAA,EACd,eAAe;AAAA,EACf,mBAAmB;AACrB,MACE;AAAA,EAAC,eAAAC;AAAA,EAAA;AAAA,IACC,eAAW,kBAAAC,SAAG,SAAS;AAAA,IACvB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,YAAU;AAAA,IACV,WAAS;AAAA,IAET,sDAAC,UAAK,WAAU,kBAAkB,UAAS;AAAA;AAC7C;AAGF,IAAO,kBAAQ;;;ADjDf,IAAOC,mBAAQ;","names":["Tooltip_default","NextTooltip","cn","Tooltip_default"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/Tooltip/index.ts"],"sourcesContent":["import Tooltip from './Tooltip';\n\nexport default Tooltip;\n"],"mappings":";;;;;AAEA,IAAOA,mBAAQ;","names":["Tooltip_default"]}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
// src/Menu/Menu.tsx
|
|
2
|
+
import { FaEllipsisVertical } from "react-icons/fa6";
|
|
3
|
+
import {
|
|
4
|
+
Dropdown as NextDropdown,
|
|
5
|
+
DropdownItem as NextDropdownItem,
|
|
6
|
+
DropdownMenu as NextDropdownMenu,
|
|
7
|
+
DropdownSection as NextDropdownSection,
|
|
8
|
+
DropdownTrigger as NextDropdownTrigger
|
|
9
|
+
} from "@nextui-org/dropdown";
|
|
10
|
+
import cn from "classnames";
|
|
11
|
+
import createDebug from "debug";
|
|
12
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
13
|
+
var debug = createDebug("component:Menu");
|
|
14
|
+
var getDisabledKeys = (items) => {
|
|
15
|
+
return items.map((item) => typeof item?.items === "undefined" ? item : item.items).flat().filter((item) => {
|
|
16
|
+
return Object.hasOwn(item, "disabled") && item.disabled === true;
|
|
17
|
+
}).map((item) => item.key);
|
|
18
|
+
};
|
|
19
|
+
var renderMenuItem = (item) => /* @__PURE__ */ jsx(
|
|
20
|
+
NextDropdownItem,
|
|
21
|
+
{
|
|
22
|
+
className: item.className,
|
|
23
|
+
"data-testid": item.testId || item.key,
|
|
24
|
+
description: item.description,
|
|
25
|
+
onClick: item.onClick,
|
|
26
|
+
startContent: item.icon,
|
|
27
|
+
children: item.label
|
|
28
|
+
},
|
|
29
|
+
item.key
|
|
30
|
+
);
|
|
31
|
+
var Menu = ({
|
|
32
|
+
children = null,
|
|
33
|
+
className = void 0,
|
|
34
|
+
onAction = void 0,
|
|
35
|
+
testId = void 0,
|
|
36
|
+
isDisabled = false,
|
|
37
|
+
items
|
|
38
|
+
}) => {
|
|
39
|
+
debug("Menu", { items });
|
|
40
|
+
return /* @__PURE__ */ jsxs(NextDropdown, { isDisabled, children: [
|
|
41
|
+
/* @__PURE__ */ jsx(NextDropdownTrigger, { className: cn(className), "data-testid": testId, children: /* @__PURE__ */ jsx("button", { children: children || /* @__PURE__ */ jsx(FaEllipsisVertical, { className: "px-2" }) }) }),
|
|
42
|
+
/* @__PURE__ */ jsx(
|
|
43
|
+
NextDropdownMenu,
|
|
44
|
+
{
|
|
45
|
+
items,
|
|
46
|
+
disabledKeys: getDisabledKeys(items),
|
|
47
|
+
onAction,
|
|
48
|
+
children: (item) => {
|
|
49
|
+
if ("items" in item) {
|
|
50
|
+
return /* @__PURE__ */ jsx(
|
|
51
|
+
NextDropdownSection,
|
|
52
|
+
{
|
|
53
|
+
items: item.items,
|
|
54
|
+
title: item.label,
|
|
55
|
+
children: (sectionItem) => {
|
|
56
|
+
return renderMenuItem(sectionItem);
|
|
57
|
+
}
|
|
58
|
+
},
|
|
59
|
+
item.key
|
|
60
|
+
);
|
|
61
|
+
}
|
|
62
|
+
return renderMenuItem(item);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
)
|
|
66
|
+
] });
|
|
67
|
+
};
|
|
68
|
+
var Menu_default = Menu;
|
|
69
|
+
|
|
70
|
+
export {
|
|
71
|
+
Menu_default
|
|
72
|
+
};
|
|
73
|
+
//# sourceMappingURL=chunk-6ZUWYBMG.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/Menu/Menu.tsx"],"sourcesContent":["import type { DropdownSectionProps } from '@nextui-org/dropdown';\nimport type { Key, MouseEventHandler, ReactNode } from 'react';\n\nimport { FaEllipsisVertical } from 'react-icons/fa6';\n\nimport {\n Dropdown as NextDropdown,\n DropdownItem as NextDropdownItem,\n DropdownMenu as NextDropdownMenu,\n DropdownSection as NextDropdownSection,\n DropdownTrigger as NextDropdownTrigger,\n} from '@nextui-org/dropdown';\nimport cn from 'classnames';\nimport createDebug from 'debug';\n\nconst debug = createDebug('component:Menu');\n\n/**\n * Menu item type\n */\nexport interface MenuItem {\n /** unique identifier */\n key: string;\n /** CSS class name */\n className?: string;\n /** additional description shown under the label */\n description?: string;\n /** disables the menu item */\n disabled?: boolean;\n /** menu item icon */\n icon?: ReactNode;\n /** menu item name */\n label: ReactNode;\n /** click event handler */\n onClick?: MouseEventHandler<HTMLLIElement>;\n /** e2e test identifier */\n testId?: string;\n}\n\n/**\n * Menu section type\n */\nexport interface MenuSection {\n /** unique identifier */\n key: string;\n /** section label */\n label: ReactNode;\n /** section items (array of MenuItem) */\n items: MenuItem[];\n}\n\nexport interface MenuProps {\n /** child components */\n children?: ReactNode;\n /** CSS class name */\n className?: string | string[];\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n /** menu item structure */\n items: (MenuSection | MenuItem)[];\n /** disable menu trigger */\n isDisabled?: boolean;\n /** called if item is selected */\n onAction?: (key: Key) => void;\n}\n\n/** returns String[] of disabled items/keys */\nconst getDisabledKeys = (items: (MenuSection | MenuItem)[]) => {\n return (\n items\n // @ts-expect-error typing issue with MenuSection | MenuItem\n .map((item) => (typeof item?.items === 'undefined' ? item : item.items))\n .flat<MenuItem[]>()\n .filter((item) => {\n return Object.hasOwn(item, 'disabled') && item.disabled === true;\n })\n .map((item) => item.key)\n );\n};\n\nconst renderMenuItem = (item: MenuItem) => (\n <NextDropdownItem\n className={item.className}\n data-testid={item.testId || item.key}\n description={item.description}\n key={item.key}\n onClick={item.onClick}\n startContent={item.icon}\n >\n {item.label}\n </NextDropdownItem>\n);\n\n/**\n * Dropdown menu component based on [NextUI Dropdown](https://nextui.org/docs/components/dropdown)\n */\nconst Menu = ({\n children = null,\n className = undefined,\n onAction = undefined,\n testId = undefined,\n isDisabled = false,\n items,\n}: MenuProps) => {\n debug('Menu', { items });\n\n return (\n <NextDropdown isDisabled={isDisabled}>\n <NextDropdownTrigger className={cn(className)} data-testid={testId}>\n {/* eslint-disable-next-line react/button-has-type */}\n <button>{children || <FaEllipsisVertical className=\"px-2\" />}</button>\n </NextDropdownTrigger>\n <NextDropdownMenu\n // aria-label=\"Dynamic Actions\"\n items={items}\n disabledKeys={getDisabledKeys(items)}\n onAction={onAction}\n >\n {(item) => {\n if ('items' in item) {\n return (\n <NextDropdownSection\n items={item.items as MenuSection['items']}\n title={item.label as DropdownSectionProps['title']}\n key={item.key}\n >\n {/* @ts-expect-error ts problem here with render fn */}\n {(sectionItem) => {\n return renderMenuItem(sectionItem);\n }}\n </NextDropdownSection>\n );\n }\n return renderMenuItem(item);\n }}\n </NextDropdownMenu>\n </NextDropdown>\n );\n};\n\nexport default Menu;\n"],"mappings":";AAGA,SAAS,0BAA0B;AAEnC;AAAA,EACE,YAAY;AAAA,EACZ,gBAAgB;AAAA,EAChB,gBAAgB;AAAA,EAChB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,OACd;AACP,OAAO,QAAQ;AACf,OAAO,iBAAiB;AAoEtB,cA0BE,YA1BF;AAlEF,IAAM,QAAQ,YAAY,gBAAgB;AAoD1C,IAAM,kBAAkB,CAAC,UAAsC;AAC7D,SACE,MAEG,IAAI,CAAC,SAAU,OAAO,MAAM,UAAU,cAAc,OAAO,KAAK,KAAM,EACtE,KAAiB,EACjB,OAAO,CAAC,SAAS;AAChB,WAAO,OAAO,OAAO,MAAM,UAAU,KAAK,KAAK,aAAa;AAAA,EAC9D,CAAC,EACA,IAAI,CAAC,SAAS,KAAK,GAAG;AAE7B;AAEA,IAAM,iBAAiB,CAAC,SACtB;AAAA,EAAC;AAAA;AAAA,IACC,WAAW,KAAK;AAAA,IAChB,eAAa,KAAK,UAAU,KAAK;AAAA,IACjC,aAAa,KAAK;AAAA,IAElB,SAAS,KAAK;AAAA,IACd,cAAc,KAAK;AAAA,IAElB,eAAK;AAAA;AAAA,EAJD,KAAK;AAKZ;AAMF,IAAM,OAAO,CAAC;AAAA,EACZ,WAAW;AAAA,EACX,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,SAAS;AAAA,EACT,aAAa;AAAA,EACb;AACF,MAAiB;AACf,QAAM,QAAQ,EAAE,MAAM,CAAC;AAEvB,SACE,qBAAC,gBAAa,YACZ;AAAA,wBAAC,uBAAoB,WAAW,GAAG,SAAS,GAAG,eAAa,QAE1D,8BAAC,YAAQ,sBAAY,oBAAC,sBAAmB,WAAU,QAAO,GAAG,GAC/D;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QAEC;AAAA,QACA,cAAc,gBAAgB,KAAK;AAAA,QACnC;AAAA,QAEC,WAAC,SAAS;AACT,cAAI,WAAW,MAAM;AACnB,mBACE;AAAA,cAAC;AAAA;AAAA,gBACC,OAAO,KAAK;AAAA,gBACZ,OAAO,KAAK;AAAA,gBAIX,WAAC,gBAAgB;AAChB,yBAAO,eAAe,WAAW;AAAA,gBACnC;AAAA;AAAA,cALK,KAAK;AAAA,YAMZ;AAAA,UAEJ;AACA,iBAAO,eAAe,IAAI;AAAA,QAC5B;AAAA;AAAA,IACF;AAAA,KACF;AAEJ;AAEA,IAAO,eAAQ;","names":[]}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
// src/Label/Label.tsx
|
|
2
|
+
import { Chip as NextLabel } from "@nextui-org/chip";
|
|
3
|
+
import cn from "classnames";
|
|
4
|
+
import { jsx } from "react/jsx-runtime";
|
|
5
|
+
var Label = ({
|
|
6
|
+
children,
|
|
7
|
+
className = void 0,
|
|
8
|
+
color = "default",
|
|
9
|
+
endContent = void 0,
|
|
10
|
+
size = "md",
|
|
11
|
+
startContent = void 0
|
|
12
|
+
}) => /* @__PURE__ */ jsx(
|
|
13
|
+
NextLabel,
|
|
14
|
+
{
|
|
15
|
+
className: cn(className),
|
|
16
|
+
color,
|
|
17
|
+
endContent,
|
|
18
|
+
size,
|
|
19
|
+
startContent,
|
|
20
|
+
children
|
|
21
|
+
}
|
|
22
|
+
);
|
|
23
|
+
var Label_default = Label;
|
|
24
|
+
|
|
25
|
+
export {
|
|
26
|
+
Label_default
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=chunk-CEUL4NWH.js.map
|