@fuf-stack/pixels 0.5.4 → 0.5.6
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/Button/index.cjs +3 -2
- package/dist/Button/index.js +2 -1
- package/dist/Card/index.cjs +3 -2
- package/dist/Card/index.js +2 -1
- package/dist/Json/index.cjs +4 -3
- package/dist/Json/index.js +3 -2
- package/dist/Label/index.cjs +3 -2
- package/dist/Label/index.js +2 -1
- package/dist/Menu/index.cjs +3 -2
- package/dist/Menu/index.js +2 -1
- package/dist/Modal/index.cjs +3 -2
- package/dist/Modal/index.js +2 -1
- package/dist/Popover/index.cjs +3 -2
- package/dist/Popover/index.js +2 -1
- package/dist/Tooltip/index.cjs +3 -2
- package/dist/Tooltip/index.js +2 -1
- package/dist/{chunk-BTBF633Q.js → chunk-22MRKUHN.js} +32 -27
- package/dist/{chunk-BTBF633Q.js.map → chunk-22MRKUHN.js.map} +1 -1
- package/dist/{chunk-IEZVKZFP.js → chunk-2C2AZ4GY.js} +14 -9
- package/dist/{chunk-IEZVKZFP.js.map → chunk-2C2AZ4GY.js.map} +1 -1
- package/dist/{chunk-BMKGS5PK.cjs → chunk-5QFG2VXP.cjs} +9 -4
- package/dist/chunk-5QFG2VXP.cjs.map +1 -0
- package/dist/chunk-CJ7YDKHN.cjs +48 -0
- package/dist/chunk-CJ7YDKHN.cjs.map +1 -0
- package/dist/{chunk-7VAHMR2W.js → chunk-DAIBNNTS.js} +12 -7
- package/dist/{chunk-7VAHMR2W.js.map → chunk-DAIBNNTS.js.map} +1 -1
- package/dist/{chunk-GIM2W4JH.cjs → chunk-DFKOD7QX.cjs} +15 -10
- package/dist/chunk-DFKOD7QX.cjs.map +1 -0
- package/dist/chunk-EOBBMFEW.js +3193 -0
- package/dist/chunk-EOBBMFEW.js.map +1 -0
- package/dist/{chunk-HYXTFS4R.js → chunk-ILTQEFAN.js} +13 -8
- package/dist/{chunk-HYXTFS4R.js.map → chunk-ILTQEFAN.js.map} +1 -1
- package/dist/{chunk-ND4VZZVU.cjs → chunk-JSV7ZIIA.cjs} +14 -9
- package/dist/chunk-JSV7ZIIA.cjs.map +1 -0
- package/dist/{chunk-YO6VJ2OU.cjs → chunk-KVCXEJJD.cjs} +13 -8
- package/dist/chunk-KVCXEJJD.cjs.map +1 -0
- package/dist/{chunk-S2WOGSQV.js → chunk-L6CCOLHU.js} +8 -3
- package/dist/{chunk-S2WOGSQV.js.map → chunk-L6CCOLHU.js.map} +1 -1
- package/dist/{chunk-7GYTJLD6.cjs → chunk-NB2Y66Z3.cjs} +33 -28
- package/dist/chunk-NB2Y66Z3.cjs.map +1 -0
- package/dist/chunk-PD246EV7.js +48 -0
- package/dist/{chunk-6G5VTF6K.js.map → chunk-PD246EV7.js.map} +1 -1
- package/dist/chunk-PTN54X4Z.cjs +3193 -0
- package/dist/chunk-PTN54X4Z.cjs.map +1 -0
- package/dist/{chunk-236GX7PP.js → chunk-QC2FAH2W.js} +9 -4
- package/dist/{chunk-236GX7PP.js.map → chunk-QC2FAH2W.js.map} +1 -1
- package/dist/{chunk-HHTTNYDC.cjs → chunk-R2JOVQS5.cjs} +15 -10
- package/dist/chunk-R2JOVQS5.cjs.map +1 -0
- package/dist/{chunk-BSBPQXNG.cjs → chunk-SSPYXO6E.cjs} +10 -5
- package/dist/chunk-SSPYXO6E.cjs.map +1 -0
- package/dist/{chunk-VOXYQARK.js → chunk-XGAFPFRL.js} +14 -9
- package/dist/{chunk-VOXYQARK.js.map → chunk-XGAFPFRL.js.map} +1 -1
- package/dist/index.cjs +20 -16
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +19 -15
- package/dist/index.js.map +1 -1
- package/package.json +7 -7
- package/dist/chunk-6G5VTF6K.js +0 -43
- package/dist/chunk-7GYTJLD6.cjs.map +0 -1
- package/dist/chunk-B35F4645.cjs +0 -43
- package/dist/chunk-B35F4645.cjs.map +0 -1
- package/dist/chunk-BMKGS5PK.cjs.map +0 -1
- package/dist/chunk-BSBPQXNG.cjs.map +0 -1
- package/dist/chunk-GIM2W4JH.cjs.map +0 -1
- package/dist/chunk-HHTTNYDC.cjs.map +0 -1
- package/dist/chunk-ND4VZZVU.cjs.map +0 -1
- package/dist/chunk-YO6VJ2OU.cjs.map +0 -1
|
@@ -1,10 +1,15 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true})
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
var _chunkPTN54X4Zcjs = require('./chunk-PTN54X4Z.cjs');
|
|
5
|
+
|
|
6
|
+
// src/Button/Button.tsx
|
|
2
7
|
var _button = require('@nextui-org/button');
|
|
3
8
|
var _tailwindvariants = require('tailwind-variants');
|
|
4
9
|
|
|
5
10
|
// src/Button/subcomponents/LoadingSpinner.tsx
|
|
6
|
-
var
|
|
7
|
-
var LoadingSpinner_default = () => /* @__PURE__ */
|
|
11
|
+
var import_jsx_runtime = _chunkPTN54X4Zcjs.__toESM.call(void 0, _chunkPTN54X4Zcjs.require_jsx_runtime.call(void 0, ), 1);
|
|
12
|
+
var LoadingSpinner_default = () => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
8
13
|
"svg",
|
|
9
14
|
{
|
|
10
15
|
className: "animate-spin h-5 w-5 text-current",
|
|
@@ -12,7 +17,7 @@ var LoadingSpinner_default = () => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
|
12
17
|
viewBox: "0 0 24 24",
|
|
13
18
|
xmlns: "http://www.w3.org/2000/svg",
|
|
14
19
|
children: [
|
|
15
|
-
/* @__PURE__ */
|
|
20
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
16
21
|
"circle",
|
|
17
22
|
{
|
|
18
23
|
className: "opacity-25",
|
|
@@ -23,7 +28,7 @@ var LoadingSpinner_default = () => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
|
23
28
|
strokeWidth: "4"
|
|
24
29
|
}
|
|
25
30
|
),
|
|
26
|
-
/* @__PURE__ */
|
|
31
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
27
32
|
"path",
|
|
28
33
|
{
|
|
29
34
|
className: "opacity-75",
|
|
@@ -36,7 +41,7 @@ var LoadingSpinner_default = () => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
|
36
41
|
);
|
|
37
42
|
|
|
38
43
|
// src/Button/Button.tsx
|
|
39
|
-
|
|
44
|
+
var import_jsx_runtime2 = _chunkPTN54X4Zcjs.__toESM.call(void 0, _chunkPTN54X4Zcjs.require_jsx_runtime.call(void 0, ), 1);
|
|
40
45
|
var buttonVariants = _tailwindvariants.tv.call(void 0, {
|
|
41
46
|
base: "",
|
|
42
47
|
variants: {
|
|
@@ -88,7 +93,7 @@ var Button = ({
|
|
|
88
93
|
type = void 0,
|
|
89
94
|
variant = "solid"
|
|
90
95
|
}) => {
|
|
91
|
-
return /* @__PURE__ */
|
|
96
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
|
|
92
97
|
_button.Button,
|
|
93
98
|
{
|
|
94
99
|
"aria-label": ariaLabel,
|
|
@@ -102,7 +107,7 @@ var Button = ({
|
|
|
102
107
|
isLoading: loading,
|
|
103
108
|
onPress: onClick,
|
|
104
109
|
size,
|
|
105
|
-
spinner: /* @__PURE__ */
|
|
110
|
+
spinner: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(LoadingSpinner_default, {}),
|
|
106
111
|
type,
|
|
107
112
|
variant,
|
|
108
113
|
children: [
|
|
@@ -122,4 +127,4 @@ var Button_default2 = Button_default;
|
|
|
122
127
|
|
|
123
128
|
|
|
124
129
|
exports.buttonVariants = buttonVariants; exports.Button_default = Button_default; exports.Button_default2 = Button_default2;
|
|
125
|
-
//# sourceMappingURL=chunk-
|
|
130
|
+
//# sourceMappingURL=chunk-JSV7ZIIA.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/Button/Button.tsx","../src/Button/subcomponents/LoadingSpinner.tsx","../src/Button/index.ts"],"names":["import_jsx_runtime","Button_default"],"mappings":";;;;;;AAIA,SAAS,UAAU,kBAAkB;AACrC,SAAS,UAAU;;;ACAjB;AADF,IAAO,yBAAQ,MACb;AAAA,EAAC;AAAA;AAAA,IACC,WAAU;AAAA,IACV,MAAK;AAAA,IACL,SAAQ;AAAA,IACR,OAAM;AAAA,IAEN;AAAA;AAAA,QAAC;AAAA;AAAA,UACC,WAAU;AAAA,UACV,IAAG;AAAA,UACH,IAAG;AAAA,UACH,GAAE;AAAA,UACF,QAAO;AAAA,UACP,aAAY;AAAA;AAAA,MACd;AAAA,MACA;AAAA,QAAC;AAAA;AAAA,UACC,WAAU;AAAA,UACV,GAAE;AAAA,UACF,MAAK;AAAA;AAAA,MACP;AAAA;AAAA;AACF;;;ADwEE,IAAAA,sBAAA;AAvFG,IAAM,iBAAiB,GAAG;AAAA,EAC/B,MAAM;AAAA,EACN,UAAU;AAAA,IACR,OAAO;AAAA,MACL,SAAS;AAAA,MACT,SAAS;AAAA,MACT,WAAW;AAAA,MACX,SAAS;AAAA,MACT,SAAS;AAAA,MACT,QAAQ;AAAA,IACV;AAAA,IACA,SAAS;AAAA,MACP,OAAO;AAAA,MACP,UAAU;AAAA,MACV,OAAO;AAAA,MACP,MAAM;AAAA,MACN,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,OAAO;AAAA,IACT;AAAA,EACF;AAAA,EACA,kBAAkB;AAAA;AAAA,IAEhB;AAAA,MACE,OAAO;AAAA,MACP,SAAS,CAAC,SAAS,QAAQ;AAAA,MAC3B,OAAO;AAAA,IACT;AAAA;AAAA,IAEA;AAAA,MACE,OAAO;AAAA,MACP,SAAS,CAAC,SAAS,QAAQ;AAAA,MAC3B,OAAO;AAAA,IACT;AAAA,EACF;AACF,CAAC;AAoCD,IAAM,SAAS,CAAC;AAAA,EACd,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,YAAY;AAAA,EACZ,QAAQ;AAAA,EACR,WAAW;AAAA,EACX,mBAAmB;AAAA,EACnB,OAAO;AAAA,EACP,UAAU;AAAA,EACV,UAAU;AAAA,EACV,OAAO;AAAA,EACP,SAAS;AAAA,EACT,OAAO;AAAA,EACP,UAAU;AACZ,MAAmB;AACjB,SACE;AAAA,IAAC;AAAA;AAAA,MACC,cAAY;AAAA,MACZ,WAAW,eAAe,EAAE,OAAO,SAAS,UAAU,CAAC;AAAA,MACvD;AAAA,MACA,eAAa;AAAA,MACb;AAAA,MACA,eAAe;AAAA,MACf,YAAY;AAAA,MACZ,YAAY,CAAC,EAAE,QAAQ,CAAC;AAAA,MACxB,WAAW;AAAA,MACX,SAAS;AAAA,MACT;AAAA,MACA,SAAS,6CAAC,0BAAe;AAAA,MACzB;AAAA,MACA;AAAA,MAEC;AAAA;AAAA,QACA;AAAA;AAAA;AAAA,EACH;AAEJ;AAEA,IAAO,iBAAQ;;;AEhHf,IAAOC,kBAAQ","sourcesContent":["import type { ButtonProps as NextButtonProps } from '@nextui-org/button';\nimport type { ReactNode } from 'react';\nimport type { VariantProps } from 'tailwind-variants';\n\nimport { Button as NextButton } from '@nextui-org/button';\nimport { tv } from 'tailwind-variants';\n\nimport LoadingSpinner from './subcomponents/LoadingSpinner';\n\nexport const buttonVariants = tv({\n base: '',\n variants: {\n color: {\n default: '',\n primary: '',\n secondary: '',\n success: '',\n warning: '',\n danger: '',\n },\n variant: {\n solid: '',\n bordered: '',\n light: '',\n flat: '',\n faded: '',\n shadow: '',\n ghost: '',\n },\n },\n compoundVariants: [\n // white text on solid / shadow success button\n {\n color: 'success',\n variant: ['solid', 'shadow'],\n class: 'text-white',\n },\n // white text on solid / shadow warning button\n {\n color: 'warning',\n variant: ['solid', 'shadow'],\n class: 'text-white',\n },\n ],\n});\n\ntype ButtonVariantProps = VariantProps<typeof buttonVariants>;\n\nexport interface ButtonProps extends ButtonVariantProps {\n /** sets HTML aria-label attribute */\n ariaLabel?: string;\n /** child components */\n children?: ReactNode;\n /** CSS class name */\n className?: string | string[];\n /** next ui button color */\n color?: NextButtonProps['color'];\n /** disables function of the button. */\n disabled?: boolean;\n /** disables all button animations */\n disableAnimation?: boolean;\n /** If set loading animation is shown */\n loading?: boolean;\n /** optional icon */\n icon?: ReactNode;\n /** on click event */\n onClick?: NextButtonProps['onPress'];\n /** 3 size options */\n size?: NextButtonProps['size'];\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n /** sets the button type. */\n type?: 'button' | 'submit' | 'reset' | undefined;\n /** next ui button variants */\n variant?: NextButtonProps['variant'];\n}\n\n/**\n * Button component based on [NextUI Button](https://nextui.org/docs/components/button)\n */\nconst Button = ({\n ariaLabel = undefined,\n children = undefined,\n className = undefined,\n color = 'default',\n disabled = false,\n disableAnimation = false,\n icon = undefined,\n loading = false,\n onClick = undefined,\n size = undefined,\n testId = undefined,\n type = undefined,\n variant = 'solid',\n}: ButtonProps) => {\n return (\n <NextButton\n aria-label={ariaLabel}\n className={buttonVariants({ color, variant, className })}\n color={color}\n data-testid={testId}\n disableAnimation={disableAnimation}\n disableRipple={disableAnimation}\n isDisabled={disabled}\n isIconOnly={!!(icon && !children)}\n isLoading={loading}\n onPress={onClick}\n size={size}\n spinner={<LoadingSpinner />}\n type={type}\n variant={variant}\n >\n {icon}\n {children}\n </NextButton>\n );\n};\n\nexport default Button;\n","/**\n * svg loading spinner for button\n * @see https://nextui.org/docs/components/button#loading\n * */\nexport default () => (\n <svg\n className=\"animate-spin h-5 w-5 text-current\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle\n className=\"opacity-25\"\n cx=\"12\"\n cy=\"12\"\n r=\"10\"\n stroke=\"currentColor\"\n strokeWidth=\"4\"\n />\n <path\n className=\"opacity-75\"\n d=\"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z\"\n fill=\"currentColor\"\n />\n </svg>\n);\n","import Button, { buttonVariants } from './Button';\n\nexport type { ButtonProps } from './Button';\n\nexport { Button, buttonVariants };\n\nexport default Button;\n"]}
|
|
@@ -1,4 +1,10 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true})
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
var _chunkPTN54X4Zcjs = require('./chunk-PTN54X4Z.cjs');
|
|
5
|
+
|
|
6
|
+
// src/Modal/Modal.tsx
|
|
7
|
+
var import_jsx_runtime = _chunkPTN54X4Zcjs.__toESM.call(void 0, _chunkPTN54X4Zcjs.require_jsx_runtime.call(void 0, ), 1);
|
|
2
8
|
|
|
3
9
|
|
|
4
10
|
|
|
@@ -7,7 +13,6 @@
|
|
|
7
13
|
|
|
8
14
|
var _modal = require('@nextui-org/modal');
|
|
9
15
|
var _tailwindvariants = require('tailwind-variants');
|
|
10
|
-
var _jsxruntime = require('react/jsx-runtime');
|
|
11
16
|
var modalVariants = _tailwindvariants.tv.call(void 0, {
|
|
12
17
|
slots: {
|
|
13
18
|
backdrop: "",
|
|
@@ -51,7 +56,7 @@ var Modal = ({
|
|
|
51
56
|
header: variants.header({ className: classNameObj.header }),
|
|
52
57
|
wrapper: variants.wrapper({ className: classNameObj.wrapper })
|
|
53
58
|
};
|
|
54
|
-
return /* @__PURE__ */
|
|
59
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
55
60
|
_modal.Modal,
|
|
56
61
|
{
|
|
57
62
|
backdrop: "opaque",
|
|
@@ -61,10 +66,10 @@ var Modal = ({
|
|
|
61
66
|
onClose,
|
|
62
67
|
placement: "center",
|
|
63
68
|
scrollBehavior: "inside",
|
|
64
|
-
children: /* @__PURE__ */
|
|
65
|
-
header && /* @__PURE__ */
|
|
66
|
-
/* @__PURE__ */
|
|
67
|
-
footer && /* @__PURE__ */
|
|
69
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(_modal.ModalContent, { "data-testid": testId ? `modal_${testId}` : "modal", children: () => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
|
|
70
|
+
header && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(_modal.ModalHeader, { children: header }),
|
|
71
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(_modal.ModalBody, { id: "modal_body", children }),
|
|
72
|
+
footer && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(_modal.ModalFooter, { children: footer })
|
|
68
73
|
] }) })
|
|
69
74
|
}
|
|
70
75
|
);
|
|
@@ -79,4 +84,4 @@ var Modal_default2 = Modal_default;
|
|
|
79
84
|
|
|
80
85
|
|
|
81
86
|
exports.modalVariants = modalVariants; exports.Modal_default = Modal_default; exports.Modal_default2 = Modal_default2;
|
|
82
|
-
//# sourceMappingURL=chunk-
|
|
87
|
+
//# sourceMappingURL=chunk-KVCXEJJD.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/Modal/Modal.tsx","../src/Modal/index.ts"],"names":["Modal_default"],"mappings":";;;;;;AAkGU;AA/FV;AAAA,EACE,SAAS;AAAA,EACT,aAAa;AAAA,EACb,gBAAgB;AAAA,EAChB,eAAe;AAAA,EACf,eAAe;AAAA,OACV;AACP,SAAS,UAAU;AAGZ,IAAM,gBAAgB,GAAG;AAAA,EAC9B,OAAO;AAAA,IACL,UAAU;AAAA,IACV,MAAM;AAAA,IACN,MAAM;AAAA,IACN,aAAa;AAAA,IACb,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,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,YAAY;AAAA,MACxB,MAAM,EAAE,MAAM,uBAAuB;AAAA,IACvC;AAAA,EACF;AACF,CAAC;AA6BD,IAAM,QAAQ,CAAC;AAAA,EACb,WAAW;AAAA,EACX,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,SAAS;AAAA,EACT;AAAA,EACA;AAAA,EACA,OAAO;AAAA,EACP,SAAS;AACX,MAAkB;AAEhB,QAAM,WAAW,cAAc,EAAE,KAAK,CAAC;AACvC,QAAM,eAAgB,OAAO,cAAc,YAAY,aAAc,CAAC;AACtE,QAAM,aAAa;AAAA,IACjB,UAAU,SAAS,SAAS,EAAE,WAAW,aAAa,SAAS,CAAC;AAAA,IAChE,MAAM,SAAS,KAAK;AAAA,MAClB,WAAW,aAAa,QAAS;AAAA,IACnC,CAAC;AAAA,IACD,MAAM,SAAS,KAAK,EAAE,WAAW,aAAa,KAAK,CAAC;AAAA,IACpD,aAAa,SAAS,YAAY,EAAE,WAAW,aAAa,YAAY,CAAC;AAAA,IACzE,QAAQ,SAAS,OAAO,EAAE,WAAW,aAAa,OAAO,CAAC;AAAA,IAC1D,QAAQ,SAAS,OAAO,EAAE,WAAW,aAAa,OAAO,CAAC;AAAA,IAC1D,SAAS,SAAS,QAAQ,EAAE,WAAW,aAAa,QAAQ,CAAC;AAAA,EAC/D;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,UAAS;AAAA,MACT;AAAA,MACA,eAAa;AAAA,MACb;AAAA,MACA;AAAA,MACA,WAAU;AAAA,MACV,gBAAe;AAAA,MAEf,sDAAC,oBAAiB,eAAa,SAAS,SAAS,MAAM,KAAK,SACzD,gBACC,4EACG;AAAA,kBAAU,4CAAC,mBAAiB,kBAAO;AAAA,QACpC,4CAAC,iBAAc,IAAG,cAAc,UAAS;AAAA,QACxC,UAAU,4CAAC,mBAAiB,kBAAO;AAAA,SACtC,GAEJ;AAAA;AAAA,EACF;AAEJ;AAEA,IAAO,gBAAQ;;;ACvGf,IAAOA,iBAAQ","sourcesContent":["import type { ReactNode } from 'react';\nimport type { VariantProps } from 'tailwind-variants';\n\nimport {\n Modal as NextModal,\n ModalBody as NextModalBody,\n ModalContent as NextModalContent,\n ModalFooter as NextModalFooter,\n ModalHeader as NextModalHeader,\n} from '@nextui-org/modal';\nimport { tv } from 'tailwind-variants';\n\n// modal variants\nexport const modalVariants = tv({\n slots: {\n backdrop: '',\n base: '',\n body: '',\n closeButton: '',\n footer: '',\n header: '',\n wrapper: '',\n },\n variants: {\n size: {\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: 'h-[80dvh] max-w-full' },\n },\n },\n});\n\ntype ModalVariantProps = VariantProps<typeof modalVariants>;\ntype ModalVariantSlots = Partial<\n Record<keyof ReturnType<typeof modalVariants>, string>\n>;\n\nexport interface ModalProps extends ModalVariantProps {\n /** modal body content */\n children?: ReactNode;\n /** CSS class name */\n className?: string | ModalVariantSlots;\n /** modal footer */\n footer?: ReactNode;\n /** modal header */\n header?: ReactNode;\n /** open state (controlled) */\n isOpen: boolean;\n /** close event handler */\n onClose: () => void;\n /** modal size */\n size?: ModalVariantProps['size'];\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n}\n\n/**\n * Modal component based on [NextUI Modal](https://nextui.org/docs/components/modal)\n */\nconst Modal = ({\n children = null,\n className = undefined,\n footer = undefined,\n header = undefined,\n isOpen,\n onClose,\n size = 'md',\n testId = undefined,\n}: ModalProps) => {\n // classNames from slots\n const variants = modalVariants({ size });\n const classNameObj = (typeof className === 'object' && className) || {};\n const classNames = {\n backdrop: variants.backdrop({ className: classNameObj.backdrop }),\n base: variants.base({\n className: classNameObj.base || (className as string),\n }),\n body: variants.body({ className: classNameObj.body }),\n closeButton: variants.closeButton({ className: classNameObj.closeButton }),\n footer: variants.footer({ className: classNameObj.footer }),\n header: variants.header({ className: classNameObj.header }),\n wrapper: variants.wrapper({ className: classNameObj.wrapper }),\n };\n\n return (\n <NextModal\n backdrop=\"opaque\"\n classNames={classNames}\n data-testid={testId}\n isOpen={isOpen}\n onClose={onClose}\n placement=\"center\"\n scrollBehavior=\"inside\"\n >\n <NextModalContent data-testid={testId ? `modal_${testId}` : 'modal'}>\n {() => (\n <>\n {header && <NextModalHeader>{header}</NextModalHeader>}\n <NextModalBody id=\"modal_body\">{children}</NextModalBody>\n {footer && <NextModalFooter>{footer}</NextModalFooter>}\n </>\n )}\n </NextModalContent>\n </NextModal>\n );\n};\n\nexport default Modal;\n","import Modal, { modalVariants } from './Modal';\n\nexport type { ModalProps } from './Modal';\n\nexport { Modal, modalVariants };\n\nexport default Modal;\n"]}
|
|
@@ -1,7 +1,12 @@
|
|
|
1
|
+
import {
|
|
2
|
+
__toESM,
|
|
3
|
+
require_jsx_runtime
|
|
4
|
+
} from "./chunk-EOBBMFEW.js";
|
|
5
|
+
|
|
1
6
|
// src/Label/Label.tsx
|
|
7
|
+
var import_jsx_runtime = __toESM(require_jsx_runtime(), 1);
|
|
2
8
|
import { Chip as NextLabel } from "@nextui-org/chip";
|
|
3
9
|
import cn from "classnames";
|
|
4
|
-
import { jsx } from "react/jsx-runtime";
|
|
5
10
|
var Label = ({
|
|
6
11
|
children,
|
|
7
12
|
className = void 0,
|
|
@@ -9,7 +14,7 @@ var Label = ({
|
|
|
9
14
|
endContent = void 0,
|
|
10
15
|
size = "md",
|
|
11
16
|
startContent = void 0
|
|
12
|
-
}) => /* @__PURE__ */ jsx(
|
|
17
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
13
18
|
NextLabel,
|
|
14
19
|
{
|
|
15
20
|
className: cn(className),
|
|
@@ -29,4 +34,4 @@ export {
|
|
|
29
34
|
Label_default,
|
|
30
35
|
Label_default2
|
|
31
36
|
};
|
|
32
|
-
//# sourceMappingURL=chunk-
|
|
37
|
+
//# sourceMappingURL=chunk-L6CCOLHU.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Label/Label.tsx","../src/Label/index.ts"],"sourcesContent":["import type { ChipProps } from '@nextui-org/chip';\nimport type { ReactNode } from 'react';\n\nimport { Chip as NextLabel } from '@nextui-org/chip';\nimport cn from 'classnames';\n\nexport interface LabelProps {\n /** content of the label */\n children: ReactNode;\n /** CSS class name */\n className?: string;\n /** color of the label */\n color?: ChipProps['color'];\n /** element to be rendered in the right side of the label */\n endContent?: ChipProps['endContent'];\n /** size of the label */\n size?: ChipProps['size'];\n /** element to be rendered in the left side of the label */\n startContent?: ChipProps['startContent'];\n}\n\n/**\n * Label component based on [NextUI Chip](https://nextui.org/docs/components/chip)\n */\nconst Label = ({\n children,\n className = undefined,\n color = 'default',\n endContent = undefined,\n size = 'md',\n startContent = undefined,\n}: LabelProps) => (\n <NextLabel\n className={cn(className)}\n color={color}\n endContent={endContent}\n size={size}\n startContent={startContent}\n >\n {children}\n </NextLabel>\n);\n\nexport default Label;\n","import Label from './Label';\n\nexport type { LabelProps } from './Label';\n\nexport { Label };\n\nexport default Label;\n"],"mappings":";
|
|
1
|
+
{"version":3,"sources":["../src/Label/Label.tsx","../src/Label/index.ts"],"sourcesContent":["import type { ChipProps } from '@nextui-org/chip';\nimport type { ReactNode } from 'react';\n\nimport { Chip as NextLabel } from '@nextui-org/chip';\nimport cn from 'classnames';\n\nexport interface LabelProps {\n /** content of the label */\n children: ReactNode;\n /** CSS class name */\n className?: string;\n /** color of the label */\n color?: ChipProps['color'];\n /** element to be rendered in the right side of the label */\n endContent?: ChipProps['endContent'];\n /** size of the label */\n size?: ChipProps['size'];\n /** element to be rendered in the left side of the label */\n startContent?: ChipProps['startContent'];\n}\n\n/**\n * Label component based on [NextUI Chip](https://nextui.org/docs/components/chip)\n */\nconst Label = ({\n children,\n className = undefined,\n color = 'default',\n endContent = undefined,\n size = 'md',\n startContent = undefined,\n}: LabelProps) => (\n <NextLabel\n className={cn(className)}\n color={color}\n endContent={endContent}\n size={size}\n startContent={startContent}\n >\n {children}\n </NextLabel>\n);\n\nexport default Label;\n","import Label from './Label';\n\nexport type { LabelProps } from './Label';\n\nexport { Label };\n\nexport default Label;\n"],"mappings":";;;;;;AAgCE;AA7BF,SAAS,QAAQ,iBAAiB;AAClC,OAAO,QAAQ;AAoBf,IAAM,QAAQ,CAAC;AAAA,EACb;AAAA,EACA,YAAY;AAAA,EACZ,QAAQ;AAAA,EACR,aAAa;AAAA,EACb,OAAO;AAAA,EACP,eAAe;AACjB,MACE;AAAA,EAAC;AAAA;AAAA,IACC,WAAW,GAAG,SAAS;AAAA,IACvB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IAEC;AAAA;AACH;AAGF,IAAO,gBAAQ;;;ACrCf,IAAOA,iBAAQ;","names":["Label_default"]}
|
|
@@ -1,16 +1,21 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _chunkJSV7ZIIAcjs = require('./chunk-JSV7ZIIA.cjs');
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
var _chunkPTN54X4Zcjs = require('./chunk-PTN54X4Z.cjs');
|
|
4
9
|
|
|
5
10
|
// src/Json/Json.tsx
|
|
6
|
-
var
|
|
11
|
+
var import_react = _chunkPTN54X4Zcjs.__toESM.call(void 0, _chunkPTN54X4Zcjs.require_react.call(void 0, ), 1);
|
|
7
12
|
var _fa = require('react-icons/fa');
|
|
8
13
|
var _hi = require('react-icons/hi');
|
|
9
14
|
var _reactjsonview = require('@uiw/react-json-view'); var _reactjsonview2 = _interopRequireDefault(_reactjsonview);
|
|
10
15
|
var _light = require('@uiw/react-json-view/light');
|
|
11
16
|
var _vscode = require('@uiw/react-json-view/vscode');
|
|
12
17
|
var _classnames = require('classnames'); var _classnames2 = _interopRequireDefault(_classnames);
|
|
13
|
-
var
|
|
18
|
+
var import_jsx_runtime = _chunkPTN54X4Zcjs.__toESM.call(void 0, _chunkPTN54X4Zcjs.require_jsx_runtime.call(void 0, ), 1);
|
|
14
19
|
var getValue = (value) => {
|
|
15
20
|
if (typeof value === "string") {
|
|
16
21
|
return JSON.parse(value);
|
|
@@ -24,9 +29,9 @@ var Json = ({ className = null, collapsed = false, value }) => {
|
|
|
24
29
|
const isDarkMode = document.body.classList.contains("dark");
|
|
25
30
|
let content = null;
|
|
26
31
|
let error = null;
|
|
27
|
-
const [showDetails, setShowDetails] =
|
|
32
|
+
const [showDetails, setShowDetails] = (0, import_react.useState)(false);
|
|
28
33
|
try {
|
|
29
|
-
content = /* @__PURE__ */
|
|
34
|
+
content = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
30
35
|
_reactjsonview2.default,
|
|
31
36
|
{
|
|
32
37
|
className: "pr-5",
|
|
@@ -37,7 +42,7 @@ var Json = ({ className = null, collapsed = false, value }) => {
|
|
|
37
42
|
backgroundColor: "unset"
|
|
38
43
|
},
|
|
39
44
|
value: getValue(value),
|
|
40
|
-
children: /* @__PURE__ */
|
|
45
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
41
46
|
_reactjsonview2.default.Copied,
|
|
42
47
|
{
|
|
43
48
|
render: ({
|
|
@@ -51,7 +56,7 @@ var Json = ({ className = null, collapsed = false, value }) => {
|
|
|
51
56
|
"absolute -right-4 -top-[2px] h-4 w-4 !fill-transparent pl-1",
|
|
52
57
|
{ "text-success": copied }
|
|
53
58
|
);
|
|
54
|
-
return /* @__PURE__ */
|
|
59
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "relative !ml-0 !h-[1em] !w-0", style, children: copied ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
55
60
|
_hi.HiOutlineClipboardCheck,
|
|
56
61
|
{
|
|
57
62
|
...elmProps,
|
|
@@ -59,7 +64,7 @@ var Json = ({ className = null, collapsed = false, value }) => {
|
|
|
59
64
|
}
|
|
60
65
|
) : (
|
|
61
66
|
// eslint-disable-next-line react/jsx-props-no-spreading
|
|
62
|
-
/* @__PURE__ */
|
|
67
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(_hi.HiOutlineClipboard, { ...elmProps, className: elmClasses })
|
|
63
68
|
) });
|
|
64
69
|
}
|
|
65
70
|
}
|
|
@@ -67,53 +72,53 @@ var Json = ({ className = null, collapsed = false, value }) => {
|
|
|
67
72
|
}
|
|
68
73
|
);
|
|
69
74
|
} catch (err) {
|
|
70
|
-
error = /* @__PURE__ */
|
|
75
|
+
error = /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
71
76
|
"div",
|
|
72
77
|
{
|
|
73
78
|
className: "mb-4 flex flex-col items-center rounded-lg border border-danger bg-danger-50 p-4 text-sm text-danger",
|
|
74
79
|
role: "alert",
|
|
75
80
|
children: [
|
|
76
|
-
/* @__PURE__ */
|
|
77
|
-
/* @__PURE__ */
|
|
78
|
-
/* @__PURE__ */
|
|
79
|
-
/* @__PURE__ */
|
|
81
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex w-full justify-between gap-6", children: [
|
|
82
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-center", children: [
|
|
83
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(_fa.FaTimesCircle, { className: "mr-2" }),
|
|
84
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "font-medium", children: "Failed to parse JSON data" })
|
|
80
85
|
] }),
|
|
81
|
-
/* @__PURE__ */
|
|
82
|
-
|
|
86
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
87
|
+
_chunkJSV7ZIIAcjs.Button_default2,
|
|
83
88
|
{
|
|
84
89
|
color: "danger",
|
|
85
90
|
size: "sm",
|
|
86
91
|
variant: "light",
|
|
87
92
|
onClick: () => setShowDetails(!showDetails),
|
|
88
|
-
children: showDetails ? /* @__PURE__ */
|
|
89
|
-
/* @__PURE__ */
|
|
93
|
+
children: showDetails ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
|
|
94
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(_fa.FaChevronUp, {}),
|
|
90
95
|
" Hide Details"
|
|
91
|
-
] }) : /* @__PURE__ */
|
|
92
|
-
/* @__PURE__ */
|
|
96
|
+
] }) : /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
|
|
97
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(_fa.FaChevronDown, {}),
|
|
93
98
|
" Show Details"
|
|
94
99
|
] })
|
|
95
100
|
}
|
|
96
101
|
)
|
|
97
102
|
] }),
|
|
98
|
-
showDetails && /* @__PURE__ */
|
|
99
|
-
/* @__PURE__ */
|
|
100
|
-
/* @__PURE__ */
|
|
101
|
-
/* @__PURE__ */
|
|
103
|
+
showDetails && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "mt-4 w-full text-left", children: [
|
|
104
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { children: [
|
|
105
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("strong", { children: "Error:" }),
|
|
106
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("pre", { children: [
|
|
102
107
|
_optionalChain([err, 'optionalAccess', _ => _.name]),
|
|
103
108
|
": ",
|
|
104
109
|
_optionalChain([err, 'optionalAccess', _2 => _2.message])
|
|
105
110
|
] })
|
|
106
111
|
] }),
|
|
107
|
-
/* @__PURE__ */
|
|
108
|
-
/* @__PURE__ */
|
|
109
|
-
/* @__PURE__ */
|
|
112
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "mt-4", children: [
|
|
113
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("strong", { children: "Data:" }),
|
|
114
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("pre", { children: typeof value !== "string" ? JSON.stringify(value, null, 2) : value })
|
|
110
115
|
] })
|
|
111
116
|
] })
|
|
112
117
|
]
|
|
113
118
|
}
|
|
114
119
|
);
|
|
115
120
|
}
|
|
116
|
-
return /* @__PURE__ */
|
|
121
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: _classnames2.default.call(void 0, className), children: error || content });
|
|
117
122
|
};
|
|
118
123
|
var Json_default = Json;
|
|
119
124
|
|
|
@@ -124,4 +129,4 @@ var Json_default2 = Json_default;
|
|
|
124
129
|
|
|
125
130
|
|
|
126
131
|
exports.Json_default = Json_default; exports.Json_default2 = Json_default2;
|
|
127
|
-
//# sourceMappingURL=chunk-
|
|
132
|
+
//# sourceMappingURL=chunk-NB2Y66Z3.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/Json/Json.tsx","../src/Json/index.ts"],"names":["Json_default"],"mappings":";;;;;;;;;;AAEA,mBAAyB;AACzB,SAAS,eAAe,aAAa,qBAAqB;AAC1D,SAAS,oBAAoB,+BAA+B;AAE5D,OAAO,cAAc;AACrB,SAAS,kBAAkB;AAC3B,SAAS,mBAAmB;AAC5B,OAAO,QAAQ;AAiEG;AA1DlB,IAAM,WAAW,CAAC,UAA2B;AAC3C,MAAI,OAAO,UAAU,UAAU;AAC7B,WAAO,KAAK,MAAM,KAAK;AAAA,EACzB;AACA,MAAI,OAAO,UAAU,UAAU;AAC7B,WAAO;AAAA,EACT;AACA,QAAM,IAAI,MAAM,GAAG,OAAO,KAAK,wBAAwB;AACzD;AAcA,IAAM,OAAO,CAAC,EAAE,YAAY,MAAM,YAAY,OAAO,MAAM,MAAiB;AAC1E,QAAM,aAAa,SAAS,KAAK,UAAU,SAAS,MAAM;AAE1D,MAAI,UAAqB;AACzB,MAAI,QAAmB;AAEvB,QAAM,CAAC,aAAa,cAAc,QAAI,uBAAS,KAAK;AAEpD,MAAI;AACF,cACE;AAAA,MAAC;AAAA;AAAA,QACC,WAAU;AAAA,QACV;AAAA,QACA,kBAAkB;AAAA,QAClB,OAAO;AAAA,UACL,GAAI,aAAa,cAAc;AAAA,UAC/B,iBAAiB;AAAA,QACnB;AAAA,QACA,OAAO,SAAS,KAAK;AAAA,QAGrB;AAAA,UAAC,SAAS;AAAA,UAAT;AAAA,YACC,QAAQ,CAAC;AAAA;AAAA,cAEP,eAAe;AAAA,cACf;AAAA,cACA,GAAG;AAAA,YACL,MAAM;AACJ,oBAAM,aAAa;AAAA,gBACjB,SAAS;AAAA,gBACT;AAAA,gBACA,EAAE,gBAAgB,OAAO;AAAA,cAC3B;AACA,qBACE,4CAAC,UAAK,WAAU,gCAA+B,OAC5C,mBACC;AAAA,gBAAC;AAAA;AAAA,kBAEE,GAAG;AAAA,kBACJ,WAAW;AAAA;AAAA,cACb;AAAA;AAAA,gBAGA,4CAAC,sBAAoB,GAAG,UAAU,WAAW,YAAY;AAAA,iBAE7D;AAAA,YAEJ;AAAA;AAAA,QACF;AAAA;AAAA,IACF;AAAA,EAEJ,SAAS,KAAK;AACZ,YACE;AAAA,MAAC;AAAA;AAAA,QACC,WAAU;AAAA,QACV,MAAK;AAAA,QAEL;AAAA,uDAAC,SAAI,WAAU,qCACb;AAAA,yDAAC,SAAI,WAAU,qBACb;AAAA,0DAAC,iBAAc,WAAU,QAAO;AAAA,cAChC,4CAAC,UAAK,WAAU,eAAc,uCAAyB;AAAA,eACzD;AAAA,YACA;AAAA,cAAC;AAAA;AAAA,gBACC,OAAM;AAAA,gBACN,MAAK;AAAA,gBACL,SAAQ;AAAA,gBACR,SAAS,MAAM,eAAe,CAAC,WAAW;AAAA,gBAEzC,wBACC,4EACE;AAAA,8DAAC,eAAY;AAAA,kBAAE;AAAA,mBACjB,IAEA,4EACE;AAAA,8DAAC,iBAAc;AAAA,kBAAE;AAAA,mBACnB;AAAA;AAAA,YAEJ;AAAA,aACF;AAAA,UACC,eACC,6CAAC,SAAI,WAAU,yBACb;AAAA,yDAAC,SACC;AAAA,0DAAC,YAAO,oBAAM;AAAA,cACd,6CAAC,SAEE;AAAA,qBAAK;AAAA,gBAAK;AAAA,gBAAG,KAAK;AAAA,iBACrB;AAAA,eACF;AAAA,YACA,6CAAC,SAAI,WAAU,QACb;AAAA,0DAAC,YAAO,mBAAK;AAAA,cACb,4CAAC,SACE,iBAAO,UAAU,WACd,KAAK,UAAU,OAAO,MAAM,CAAC,IAC7B,OACN;AAAA,eACF;AAAA,aACF;AAAA;AAAA;AAAA,IAEJ;AAAA,EAEJ;AACA,SAAO,4CAAC,SAAI,WAAW,GAAG,SAAS,GAAI,mBAAS,SAAQ;AAC1D;AAEA,IAAO,eAAQ;;;ACxIf,IAAOA,gBAAQ","sourcesContent":["import type { ReactNode } from 'react';\n\nimport { useState } from 'react';\nimport { FaChevronDown, FaChevronUp, FaTimesCircle } from 'react-icons/fa';\nimport { HiOutlineClipboard, HiOutlineClipboardCheck } from 'react-icons/hi';\n\nimport JsonView from '@uiw/react-json-view';\nimport { lightTheme } from '@uiw/react-json-view/light';\nimport { vscodeTheme } from '@uiw/react-json-view/vscode';\nimport cn from 'classnames';\n\nimport Button from '../Button';\n\n/**\n * returns the value (JSON string or object) as object\n */\nconst getValue = (value: string | object) => {\n if (typeof value === 'string') {\n return JSON.parse(value);\n }\n if (typeof value === 'object') {\n return value;\n }\n throw new Error(`${typeof value} can not be visualized`);\n};\n\nexport interface JsonProps {\n /** CSS class name */\n className?: string | string[] | null;\n /** When set to true, all nodes will be collapsed by default. Use an integer value to collapse at a particular depth. */\n collapsed?: boolean | number;\n /** Object to be visualized JSON string or object */\n value: string | object;\n}\n\n/**\n * Json renderer based on [react-json-view](https://mac-s-g.github.io/react-json-view/demo/dist/)\n */\nconst Json = ({ className = null, collapsed = false, value }: JsonProps) => {\n const isDarkMode = document.body.classList.contains('dark');\n\n let content: ReactNode = null;\n let error: ReactNode = null;\n\n const [showDetails, setShowDetails] = useState(false);\n\n try {\n content = (\n <JsonView\n className=\"pr-5\"\n collapsed={collapsed}\n displayDataTypes={false}\n style={{\n ...(isDarkMode ? vscodeTheme : lightTheme),\n backgroundColor: 'unset',\n }}\n value={getValue(value)}\n >\n {/* FIX: overwrite Copied component to fix flickering copy button */}\n <JsonView.Copied\n render={({\n // @ts-expect-error this should be fine\n 'data-copied': copied,\n style,\n ...elmProps\n }) => {\n const elmClasses = cn(\n elmProps.className,\n 'absolute -right-4 -top-[2px] h-4 w-4 !fill-transparent pl-1',\n { 'text-success': copied },\n );\n return (\n <span className=\"relative !ml-0 !h-[1em] !w-0\" style={style}>\n {copied ? (\n <HiOutlineClipboardCheck\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...elmProps}\n className={elmClasses}\n />\n ) : (\n // eslint-disable-next-line react/jsx-props-no-spreading\n <HiOutlineClipboard {...elmProps} className={elmClasses} />\n )}\n </span>\n );\n }}\n />\n </JsonView>\n );\n } catch (err) {\n error = (\n <div\n className=\"mb-4 flex flex-col items-center rounded-lg border border-danger bg-danger-50 p-4 text-sm text-danger\"\n role=\"alert\"\n >\n <div className=\"flex w-full justify-between gap-6\">\n <div className=\"flex items-center\">\n <FaTimesCircle className=\"mr-2\" />\n <span className=\"font-medium\">Failed to parse JSON data</span>\n </div>\n <Button\n color=\"danger\"\n size=\"sm\"\n variant=\"light\"\n onClick={() => setShowDetails(!showDetails)}\n >\n {showDetails ? (\n <>\n <FaChevronUp /> Hide Details\n </>\n ) : (\n <>\n <FaChevronDown /> Show Details\n </>\n )}\n </Button>\n </div>\n {showDetails && (\n <div className=\"mt-4 w-full text-left\">\n <div>\n <strong>Error:</strong>\n <pre>\n {/* @ts-expect-error is ok */}\n {err?.name}: {err?.message}\n </pre>\n </div>\n <div className=\"mt-4\">\n <strong>Data:</strong>\n <pre>\n {typeof value !== 'string'\n ? JSON.stringify(value, null, 2)\n : value}\n </pre>\n </div>\n </div>\n )}\n </div>\n );\n }\n return <div className={cn(className)}>{error || content}</div>;\n};\n\nexport default Json;\n","import Json from './Json';\n\nexport type { JsonProps } from './Json';\n\nexport { Json };\n\nexport default Json;\n"]}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import {
|
|
2
|
+
__toESM,
|
|
3
|
+
require_jsx_runtime
|
|
4
|
+
} from "./chunk-EOBBMFEW.js";
|
|
5
|
+
|
|
6
|
+
// src/Popover/Popover.tsx
|
|
7
|
+
var import_jsx_runtime = __toESM(require_jsx_runtime(), 1);
|
|
8
|
+
import { Popover, PopoverContent, PopoverTrigger } from "@nextui-org/popover";
|
|
9
|
+
import cn from "classnames";
|
|
10
|
+
var Popover_default = ({
|
|
11
|
+
children = null,
|
|
12
|
+
className = void 0,
|
|
13
|
+
content,
|
|
14
|
+
contentTestId = void 0,
|
|
15
|
+
placement = "top",
|
|
16
|
+
openControlled = void 0,
|
|
17
|
+
testId = void 0,
|
|
18
|
+
title = void 0
|
|
19
|
+
}) => {
|
|
20
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
21
|
+
Popover,
|
|
22
|
+
{
|
|
23
|
+
placement,
|
|
24
|
+
radius: "sm",
|
|
25
|
+
showArrow: true,
|
|
26
|
+
...openControlled ? { isOpen: openControlled.open, onOpenChange: openControlled.setOpen } : {},
|
|
27
|
+
children: [
|
|
28
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(PopoverTrigger, { className: cn(className), "data-testid": testId, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("button", { children }) }),
|
|
29
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(PopoverContent, { "data-testid": contentTestId, children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "max-h-[80vh] overflow-y-auto", children: [
|
|
30
|
+
title && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { children: [
|
|
31
|
+
title,
|
|
32
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("hr", {})
|
|
33
|
+
] }),
|
|
34
|
+
content
|
|
35
|
+
] }) })
|
|
36
|
+
]
|
|
37
|
+
}
|
|
38
|
+
);
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
// src/Popover/index.ts
|
|
42
|
+
var Popover_default2 = Popover_default;
|
|
43
|
+
|
|
44
|
+
export {
|
|
45
|
+
Popover_default,
|
|
46
|
+
Popover_default2
|
|
47
|
+
};
|
|
48
|
+
//# sourceMappingURL=chunk-PD246EV7.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Popover/Popover.tsx","../src/Popover/index.ts"],"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';\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 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","import Popover from './Popover';\n\nexport type { PopoverProps } from './Popover';\n\nexport { Popover };\n\nexport default Popover;\n"],"mappings":";
|
|
1
|
+
{"version":3,"sources":["../src/Popover/Popover.tsx","../src/Popover/index.ts"],"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';\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 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","import Popover from './Popover';\n\nexport type { PopoverProps } from './Popover';\n\nexport { Popover };\n\nexport default Popover;\n"],"mappings":";;;;;;AAkDQ;AA/CR,SAAS,SAAS,gBAAgB,sBAAsB;AACxD,OAAO,QAAQ;AAwBf,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,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,kBAAe,WAAW,GAAG,SAAS,GAAG,eAAa,QAGrD,sDAAC,YAAQ,UAAS,GACpB;AAAA,QACA,4CAAC,kBAAe,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;;;AC3DA,IAAOA,mBAAQ;","names":["Popover_default"]}
|