@fuf-stack/pixels 0.2.5 → 0.3.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.
Files changed (164) hide show
  1. package/dist/Button/index.cjs +3 -112
  2. package/dist/Button/index.cjs.map +1 -1
  3. package/dist/Button/index.d.cts +3 -3
  4. package/dist/Button/index.d.ts +3 -3
  5. package/dist/Button/index.js +5 -5
  6. package/dist/{Button/Button.d.cts → Button-B0H0w1eR.d.cts} +1 -1
  7. package/dist/{Button/Button.d.ts → Button-B0H0w1eR.d.ts} +1 -1
  8. package/dist/Card/index.cjs +5 -133
  9. package/dist/Card/index.cjs.map +1 -1
  10. package/dist/Card/index.d.cts +3 -3
  11. package/dist/Card/index.d.ts +3 -3
  12. package/dist/Card/index.js +4 -5
  13. package/dist/Card/index.js.map +1 -1
  14. package/dist/{Card/Card.d.ts → Card-Cl_I4L8G.d.cts} +1 -1
  15. package/dist/{Card/Card.d.cts → Card-Cl_I4L8G.d.ts} +1 -1
  16. package/dist/Json/index.cjs +4 -203
  17. package/dist/Json/index.cjs.map +1 -1
  18. package/dist/Json/index.d.cts +3 -3
  19. package/dist/Json/index.d.ts +3 -3
  20. package/dist/Json/index.js +5 -8
  21. package/dist/Json/index.js.map +1 -1
  22. package/dist/{Json/Json.d.cts → Json-ClGDcbcp.d.cts} +1 -1
  23. package/dist/{Json/Json.d.ts → Json-ClGDcbcp.d.ts} +1 -1
  24. package/dist/Label/index.cjs +5 -59
  25. package/dist/Label/index.cjs.map +1 -1
  26. package/dist/Label/index.d.cts +3 -3
  27. package/dist/Label/index.d.ts +3 -3
  28. package/dist/Label/index.js +4 -5
  29. package/dist/Label/index.js.map +1 -1
  30. package/dist/{Label/Label.d.cts → Label-DzZDW95M.d.cts} +1 -1
  31. package/dist/{Label/Label.d.ts → Label-DzZDW95M.d.ts} +1 -1
  32. package/dist/Menu/index.cjs +5 -105
  33. package/dist/Menu/index.cjs.map +1 -1
  34. package/dist/Menu/index.d.cts +3 -3
  35. package/dist/Menu/index.d.ts +3 -3
  36. package/dist/Menu/index.js +4 -5
  37. package/dist/Menu/index.js.map +1 -1
  38. package/dist/{Menu/Menu.d.cts → Menu-D50c3gIq.d.cts} +2 -2
  39. package/dist/{Menu/Menu.d.ts → Menu-D50c3gIq.d.ts} +2 -2
  40. package/dist/Modal/index.cjs +5 -81
  41. package/dist/Modal/index.cjs.map +1 -1
  42. package/dist/Modal/index.d.cts +3 -3
  43. package/dist/Modal/index.d.ts +3 -3
  44. package/dist/Modal/index.js +4 -5
  45. package/dist/Modal/index.js.map +1 -1
  46. package/dist/{Modal/Modal.d.cts → Modal-CSxNe0bS.d.cts} +1 -1
  47. package/dist/{Modal/Modal.d.ts → Modal-CSxNe0bS.d.ts} +1 -1
  48. package/dist/Popover/index.cjs +5 -73
  49. package/dist/Popover/index.cjs.map +1 -1
  50. package/dist/Popover/index.d.cts +3 -3
  51. package/dist/Popover/index.d.ts +3 -3
  52. package/dist/Popover/index.js +4 -5
  53. package/dist/Popover/index.js.map +1 -1
  54. package/dist/{Popover/Popover.d.cts → Popover-DbTTk7_N.d.cts} +1 -1
  55. package/dist/{Popover/Popover.d.ts → Popover-DbTTk7_N.d.ts} +1 -1
  56. package/dist/Tooltip/index.cjs +3 -63
  57. package/dist/Tooltip/index.cjs.map +1 -1
  58. package/dist/Tooltip/index.d.cts +2 -2
  59. package/dist/Tooltip/index.d.ts +2 -2
  60. package/dist/Tooltip/index.js +2 -5
  61. package/dist/Tooltip/index.js.map +1 -1
  62. package/dist/{Tooltip/Tooltip.d.cts → Tooltip-D0yEMBnv.d.cts} +1 -1
  63. package/dist/{Tooltip/Tooltip.d.ts → Tooltip-D0yEMBnv.d.ts} +1 -1
  64. package/dist/chunk-2UJJIIMU.js +87 -0
  65. package/dist/chunk-2UJJIIMU.js.map +1 -0
  66. package/dist/{chunk-WBAURF6J.js → chunk-7ERBBFDC.js} +38 -5
  67. package/dist/chunk-7ERBBFDC.js.map +1 -0
  68. package/dist/chunk-BMKGS5PK.cjs +32 -0
  69. package/dist/chunk-BMKGS5PK.cjs.map +1 -0
  70. package/dist/chunk-DSSM3ANE.cjs +84 -0
  71. package/dist/chunk-DSSM3ANE.cjs.map +1 -0
  72. package/dist/chunk-I76NWOB3.cjs +87 -0
  73. package/dist/chunk-I76NWOB3.cjs.map +1 -0
  74. package/dist/{chunk-ONXXZTZY.js → chunk-J47IOXCU.js} +5 -4
  75. package/dist/chunk-J47IOXCU.js.map +1 -0
  76. package/dist/{chunk-Y35GJHOR.js → chunk-J4OGTE6Z.js} +6 -2
  77. package/dist/chunk-J4OGTE6Z.js.map +1 -0
  78. package/dist/chunk-JD3BEOSK.cjs +35 -0
  79. package/dist/chunk-JD3BEOSK.cjs.map +1 -0
  80. package/dist/{chunk-EYUTNORZ.js → chunk-MBQA3LPM.js} +6 -4
  81. package/dist/chunk-MBQA3LPM.js.map +1 -0
  82. package/dist/chunk-PI7CBPUS.cjs +127 -0
  83. package/dist/chunk-PI7CBPUS.cjs.map +1 -0
  84. package/dist/{chunk-CEUL4NWH.js → chunk-S2WOGSQV.js} +6 -2
  85. package/dist/chunk-S2WOGSQV.js.map +1 -0
  86. package/dist/chunk-STEC6TAQ.cjs +60 -0
  87. package/dist/chunk-STEC6TAQ.cjs.map +1 -0
  88. package/dist/{chunk-SGAWYTO7.js → chunk-V2C3KFMP.js} +6 -2
  89. package/dist/chunk-V2C3KFMP.js.map +1 -0
  90. package/dist/{chunk-XPTSDDXG.js → chunk-VQ5Q33MY.js} +6 -3
  91. package/dist/chunk-VQ5Q33MY.js.map +1 -0
  92. package/dist/chunk-WTKZJFQV.cjs +111 -0
  93. package/dist/chunk-WTKZJFQV.cjs.map +1 -0
  94. package/dist/chunk-YUOFNPJO.cjs +46 -0
  95. package/dist/chunk-YUOFNPJO.cjs.map +1 -0
  96. package/dist/index.cjs +102 -0
  97. package/dist/index.cjs.map +1 -0
  98. package/dist/index.d.cts +21 -0
  99. package/dist/index.d.ts +21 -0
  100. package/dist/{hooks/useLocalStorage.js → index.js} +56 -6
  101. package/dist/index.js.map +1 -0
  102. package/package.json +54 -11
  103. package/dist/Button/Button.cjs +0 -113
  104. package/dist/Button/Button.cjs.map +0 -1
  105. package/dist/Button/Button.js +0 -8
  106. package/dist/Button/Button.js.map +0 -1
  107. package/dist/Button/subcomponents/LoadingSpinner.cjs +0 -57
  108. package/dist/Button/subcomponents/LoadingSpinner.cjs.map +0 -1
  109. package/dist/Button/subcomponents/LoadingSpinner.d.cts +0 -9
  110. package/dist/Button/subcomponents/LoadingSpinner.d.ts +0 -9
  111. package/dist/Button/subcomponents/LoadingSpinner.js +0 -7
  112. package/dist/Button/subcomponents/LoadingSpinner.js.map +0 -1
  113. package/dist/Card/Card.cjs +0 -137
  114. package/dist/Card/Card.cjs.map +0 -1
  115. package/dist/Card/Card.js +0 -9
  116. package/dist/Card/Card.js.map +0 -1
  117. package/dist/Json/Json.cjs +0 -204
  118. package/dist/Json/Json.cjs.map +0 -1
  119. package/dist/Json/Json.js +0 -10
  120. package/dist/Json/Json.js.map +0 -1
  121. package/dist/Label/Label.cjs +0 -58
  122. package/dist/Label/Label.cjs.map +0 -1
  123. package/dist/Label/Label.js +0 -7
  124. package/dist/Label/Label.js.map +0 -1
  125. package/dist/Menu/Menu.cjs +0 -104
  126. package/dist/Menu/Menu.cjs.map +0 -1
  127. package/dist/Menu/Menu.js +0 -7
  128. package/dist/Menu/Menu.js.map +0 -1
  129. package/dist/Modal/Modal.cjs +0 -86
  130. package/dist/Modal/Modal.cjs.map +0 -1
  131. package/dist/Modal/Modal.js +0 -9
  132. package/dist/Modal/Modal.js.map +0 -1
  133. package/dist/Popover/Popover.cjs +0 -72
  134. package/dist/Popover/Popover.cjs.map +0 -1
  135. package/dist/Popover/Popover.js +0 -7
  136. package/dist/Popover/Popover.js.map +0 -1
  137. package/dist/Tooltip/Tooltip.cjs +0 -68
  138. package/dist/Tooltip/Tooltip.cjs.map +0 -1
  139. package/dist/Tooltip/Tooltip.js +0 -9
  140. package/dist/Tooltip/Tooltip.js.map +0 -1
  141. package/dist/chunk-4WCKFSLX.js +0 -11
  142. package/dist/chunk-4WCKFSLX.js.map +0 -1
  143. package/dist/chunk-6QVKZ4AT.js +0 -52
  144. package/dist/chunk-6QVKZ4AT.js.map +0 -1
  145. package/dist/chunk-CEUL4NWH.js.map +0 -1
  146. package/dist/chunk-EYUTNORZ.js.map +0 -1
  147. package/dist/chunk-ONXXZTZY.js.map +0 -1
  148. package/dist/chunk-SGAWYTO7.js.map +0 -1
  149. package/dist/chunk-WBAURF6J.js.map +0 -1
  150. package/dist/chunk-XPTSDDXG.js.map +0 -1
  151. package/dist/chunk-Y35GJHOR.js.map +0 -1
  152. package/dist/chunk-ZFEVTQWW.js +0 -37
  153. package/dist/chunk-ZFEVTQWW.js.map +0 -1
  154. package/dist/hooks/useDebounce.cjs +0 -43
  155. package/dist/hooks/useDebounce.cjs.map +0 -1
  156. package/dist/hooks/useDebounce.d.cts +0 -3
  157. package/dist/hooks/useDebounce.d.ts +0 -3
  158. package/dist/hooks/useDebounce.js +0 -22
  159. package/dist/hooks/useDebounce.js.map +0 -1
  160. package/dist/hooks/useLocalStorage.cjs +0 -73
  161. package/dist/hooks/useLocalStorage.cjs.map +0 -1
  162. package/dist/hooks/useLocalStorage.d.cts +0 -5
  163. package/dist/hooks/useLocalStorage.d.ts +0 -5
  164. package/dist/hooks/useLocalStorage.js.map +0 -1
@@ -1,137 +0,0 @@
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/Card/Card.tsx
31
- var Card_exports = {};
32
- __export(Card_exports, {
33
- cardVariants: () => cardVariants,
34
- default: () => Card_default
35
- });
36
- module.exports = __toCommonJS(Card_exports);
37
- var import_card = require("@nextui-org/card");
38
- var import_divider = require("@nextui-org/divider");
39
- var import_debug = __toESM(require("debug"), 1);
40
- var import_tailwind_variants = require("tailwind-variants");
41
- var import_jsx_runtime = require("react/jsx-runtime");
42
- var debug = (0, import_debug.default)("component:Card");
43
- var cardVariants = (0, import_tailwind_variants.tv)({
44
- slots: {
45
- base: "border border-slate-300",
46
- body: "",
47
- divider: "my-0 bg-slate-300",
48
- footer: "",
49
- header: "text-base font-semibold"
50
- }
51
- });
52
- var Card = ({
53
- children = null,
54
- className = void 0,
55
- testId = void 0,
56
- header = void 0,
57
- footer = void 0
58
- }) => {
59
- debug("Card", { className, testId });
60
- const {
61
- base: baseSlot,
62
- body: bodySlot,
63
- divider: dividerSlot,
64
- footer: footerSlot,
65
- header: headerSlot
66
- } = cardVariants();
67
- return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
68
- import_card.Card,
69
- {
70
- "data-testid": testId && `card_${testId}`,
71
- className: baseSlot({
72
- className: typeof className === "object" ? className.base : className
73
- }),
74
- fullWidth: true,
75
- radius: "sm",
76
- shadow: "none",
77
- children: [
78
- header && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
79
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
80
- import_card.CardHeader,
81
- {
82
- "data-testid": testId && `card_header_${testId}`,
83
- className: headerSlot({
84
- className: typeof className === "object" && className.header
85
- }),
86
- children: header
87
- }
88
- ),
89
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
90
- import_divider.Divider,
91
- {
92
- className: dividerSlot({
93
- className: typeof className === "object" && className.divider
94
- })
95
- }
96
- )
97
- ] }),
98
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
99
- import_card.CardBody,
100
- {
101
- "data-testid": testId && `card_body_${testId}`,
102
- className: bodySlot({
103
- className: typeof className === "object" && className.body
104
- }),
105
- children
106
- }
107
- ),
108
- footer && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
109
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
110
- import_divider.Divider,
111
- {
112
- className: dividerSlot({
113
- className: typeof className === "object" && className.divider
114
- })
115
- }
116
- ),
117
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
118
- import_card.CardFooter,
119
- {
120
- "data-testid": testId && `card_footer_${testId}`,
121
- className: footerSlot({
122
- className: typeof className === "object" && className.footer
123
- }),
124
- children: footer
125
- }
126
- )
127
- ] })
128
- ]
129
- }
130
- );
131
- };
132
- var Card_default = Card;
133
- // Annotate the CommonJS export names for ESM import in node:
134
- 0 && (module.exports = {
135
- cardVariants
136
- });
137
- //# sourceMappingURL=Card.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/Card/Card.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\nimport type { VariantProps } from 'tailwind-variants';\n\nimport {\n Card as NextCard,\n CardBody as NextCardBody,\n CardFooter as NextCardFooter,\n CardHeader as NextCardHeader,\n} from '@nextui-org/card';\nimport { Divider as NextDivider } from '@nextui-org/divider';\nimport createDebug from 'debug';\nimport { tv } from 'tailwind-variants';\n\nconst debug = createDebug('component:Card');\n\n// card styling variants\nexport const cardVariants = tv({\n slots: {\n base: 'border border-slate-300',\n body: '',\n divider: 'my-0 bg-slate-300',\n footer: '',\n header: 'text-base font-semibold',\n },\n});\n\ntype CardVariantProps = VariantProps<typeof cardVariants>;\ntype CardVariantSlots = Partial<\n Record<keyof ReturnType<typeof cardVariants>, string>\n>;\n\nexport interface CardProps extends CardVariantProps {\n /** child components */\n children?: ReactNode;\n /** CSS class name */\n className?: string | CardVariantSlots;\n /** footer content */\n footer?: ReactNode;\n /** header content */\n header?: ReactNode;\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n}\n\n/**\n * Card component based on [NextUI Card](https://nextui.org/docs/components/card)\n */\nconst Card = ({\n children = null,\n className = undefined,\n testId = undefined,\n header = undefined,\n footer = undefined,\n}: CardProps) => {\n debug('Card', { className, testId });\n const {\n base: baseSlot,\n body: bodySlot,\n divider: dividerSlot,\n footer: footerSlot,\n header: headerSlot,\n } = cardVariants();\n\n return (\n <NextCard\n data-testid={testId && `card_${testId}`}\n className={baseSlot({\n className: typeof className === 'object' ? className.base : className,\n })}\n fullWidth\n radius=\"sm\"\n shadow=\"none\"\n >\n {header && (\n <>\n <NextCardHeader\n data-testid={testId && `card_header_${testId}`}\n className={headerSlot({\n className: typeof className === 'object' && className.header,\n })}\n >\n {header}\n </NextCardHeader>\n <NextDivider\n className={dividerSlot({\n className: typeof className === 'object' && className.divider,\n })}\n />\n </>\n )}\n <NextCardBody\n data-testid={testId && `card_body_${testId}`}\n className={bodySlot({\n className: typeof className === 'object' && className.body,\n })}\n >\n {children}\n </NextCardBody>\n {footer && (\n <>\n <NextDivider\n className={dividerSlot({\n className: typeof className === 'object' && className.divider,\n })}\n />\n <NextCardFooter\n data-testid={testId && `card_footer_${testId}`}\n className={footerSlot({\n className: typeof className === 'object' && className.footer,\n })}\n >\n {footer}\n </NextCardFooter>\n </>\n )}\n </NextCard>\n );\n};\n\nexport default Card;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,kBAKO;AACP,qBAAuC;AACvC,mBAAwB;AACxB,+BAAmB;AA+DX;AA7DR,IAAM,YAAQ,aAAAA,SAAY,gBAAgB;AAGnC,IAAM,mBAAe,6BAAG;AAAA,EAC7B,OAAO;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,QAAQ;AAAA,EACV;AACF,CAAC;AAuBD,IAAM,OAAO,CAAC;AAAA,EACZ,WAAW;AAAA,EACX,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,SAAS;AAAA,EACT,SAAS;AACX,MAAiB;AACf,QAAM,QAAQ,EAAE,WAAW,OAAO,CAAC;AACnC,QAAM;AAAA,IACJ,MAAM;AAAA,IACN,MAAM;AAAA,IACN,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,QAAQ;AAAA,EACV,IAAI,aAAa;AAEjB,SACE;AAAA,IAAC,YAAAC;AAAA,IAAA;AAAA,MACC,eAAa,UAAU,QAAQ,MAAM;AAAA,MACrC,WAAW,SAAS;AAAA,QAClB,WAAW,OAAO,cAAc,WAAW,UAAU,OAAO;AAAA,MAC9D,CAAC;AAAA,MACD,WAAS;AAAA,MACT,QAAO;AAAA,MACP,QAAO;AAAA,MAEN;AAAA,kBACC,4EACE;AAAA;AAAA,YAAC,YAAAC;AAAA,YAAA;AAAA,cACC,eAAa,UAAU,eAAe,MAAM;AAAA,cAC5C,WAAW,WAAW;AAAA,gBACpB,WAAW,OAAO,cAAc,YAAY,UAAU;AAAA,cACxD,CAAC;AAAA,cAEA;AAAA;AAAA,UACH;AAAA,UACA;AAAA,YAAC,eAAAC;AAAA,YAAA;AAAA,cACC,WAAW,YAAY;AAAA,gBACrB,WAAW,OAAO,cAAc,YAAY,UAAU;AAAA,cACxD,CAAC;AAAA;AAAA,UACH;AAAA,WACF;AAAA,QAEF;AAAA,UAAC,YAAAC;AAAA,UAAA;AAAA,YACC,eAAa,UAAU,aAAa,MAAM;AAAA,YAC1C,WAAW,SAAS;AAAA,cAClB,WAAW,OAAO,cAAc,YAAY,UAAU;AAAA,YACxD,CAAC;AAAA,YAEA;AAAA;AAAA,QACH;AAAA,QACC,UACC,4EACE;AAAA;AAAA,YAAC,eAAAD;AAAA,YAAA;AAAA,cACC,WAAW,YAAY;AAAA,gBACrB,WAAW,OAAO,cAAc,YAAY,UAAU;AAAA,cACxD,CAAC;AAAA;AAAA,UACH;AAAA,UACA;AAAA,YAAC,YAAAE;AAAA,YAAA;AAAA,cACC,eAAa,UAAU,eAAe,MAAM;AAAA,cAC5C,WAAW,WAAW;AAAA,gBACpB,WAAW,OAAO,cAAc,YAAY,UAAU;AAAA,cACxD,CAAC;AAAA,cAEA;AAAA;AAAA,UACH;AAAA,WACF;AAAA;AAAA;AAAA,EAEJ;AAEJ;AAEA,IAAO,eAAQ;","names":["createDebug","NextCard","NextCardHeader","NextDivider","NextCardBody","NextCardFooter"]}
package/dist/Card/Card.js DELETED
@@ -1,9 +0,0 @@
1
- import {
2
- Card_default,
3
- cardVariants
4
- } from "../chunk-XPTSDDXG.js";
5
- export {
6
- cardVariants,
7
- Card_default as default
8
- };
9
- //# sourceMappingURL=Card.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,204 +0,0 @@
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/Json/Json.tsx
31
- var Json_exports = {};
32
- __export(Json_exports, {
33
- default: () => Json_default
34
- });
35
- module.exports = __toCommonJS(Json_exports);
36
- var import_react = require("react");
37
- var import_fa = require("react-icons/fa");
38
- var import_react_json_view = __toESM(require("@uiw/react-json-view"), 1);
39
- var import_light = require("@uiw/react-json-view/light");
40
- var import_vscode = require("@uiw/react-json-view/vscode");
41
- var import_classnames2 = __toESM(require("classnames"), 1);
42
-
43
- // src/Button/Button.tsx
44
- var import_button = require("@nextui-org/button");
45
- var import_classnames = __toESM(require("classnames"), 1);
46
-
47
- // src/Button/subcomponents/LoadingSpinner.tsx
48
- var import_jsx_runtime = require("react/jsx-runtime");
49
- var LoadingSpinner_default = () => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
50
- "svg",
51
- {
52
- className: "animate-spin h-5 w-5 text-current",
53
- fill: "none",
54
- viewBox: "0 0 24 24",
55
- xmlns: "http://www.w3.org/2000/svg",
56
- children: [
57
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
58
- "circle",
59
- {
60
- className: "opacity-25",
61
- cx: "12",
62
- cy: "12",
63
- r: "10",
64
- stroke: "currentColor",
65
- strokeWidth: "4"
66
- }
67
- ),
68
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
69
- "path",
70
- {
71
- className: "opacity-75",
72
- 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",
73
- fill: "currentColor"
74
- }
75
- )
76
- ]
77
- }
78
- );
79
-
80
- // src/Button/Button.tsx
81
- var import_jsx_runtime2 = require("react/jsx-runtime");
82
- var Button = ({
83
- ariaLabel = void 0,
84
- children = void 0,
85
- className = void 0,
86
- color = "default",
87
- disabled = false,
88
- icon = void 0,
89
- loading = false,
90
- onClick = void 0,
91
- size = void 0,
92
- testId = void 0,
93
- type = void 0,
94
- variant = "solid",
95
- ...passthrouhProps
96
- }) => {
97
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
98
- import_button.Button,
99
- {
100
- "aria-label": ariaLabel,
101
- className: (0, import_classnames.default)(className),
102
- color,
103
- "data-testid": testId,
104
- isDisabled: disabled,
105
- isIconOnly: !!(icon && !children),
106
- isLoading: loading,
107
- onPress: onClick,
108
- size,
109
- spinner: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(LoadingSpinner_default, {}),
110
- type,
111
- variant,
112
- ...passthrouhProps,
113
- children: [
114
- icon,
115
- children
116
- ]
117
- }
118
- );
119
- };
120
- var Button_default = Button;
121
-
122
- // src/Button/index.ts
123
- var Button_default2 = Button_default;
124
-
125
- // src/Json/Json.tsx
126
- var import_jsx_runtime3 = require("react/jsx-runtime");
127
- var getValue = (value) => {
128
- if (typeof value === "string") {
129
- return JSON.parse(value);
130
- }
131
- if (typeof value === "object") {
132
- return value;
133
- }
134
- throw new Error(`${typeof value} can not be visualized`);
135
- };
136
- var Json = ({ className = null, collapsed = false, value }) => {
137
- const isDarkMode = document.body.classList.contains("dark");
138
- let content = null;
139
- let error = null;
140
- const [showDetails, setShowDetails] = (0, import_react.useState)(false);
141
- try {
142
- content = /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
143
- import_react_json_view.default,
144
- {
145
- collapsed,
146
- displayDataTypes: false,
147
- style: {
148
- ...isDarkMode ? import_vscode.vscodeTheme : import_light.lightTheme,
149
- backgroundColor: "unset"
150
- },
151
- value: getValue(value)
152
- }
153
- );
154
- } catch (err) {
155
- error = /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(
156
- "div",
157
- {
158
- className: "mb-4 flex flex-col items-center rounded-lg border border-danger bg-danger-50 p-4 text-sm text-danger",
159
- role: "alert",
160
- children: [
161
- /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)("div", { className: "flex w-full justify-between gap-6", children: [
162
- /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)("div", { className: "flex items-center", children: [
163
- /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_fa.FaTimesCircle, { className: "mr-2" }),
164
- /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("span", { className: "font-medium", children: "Failed to parse JSON data" })
165
- ] }),
166
- /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
167
- Button_default2,
168
- {
169
- color: "danger",
170
- size: "sm",
171
- variant: "light",
172
- onClick: () => setShowDetails(!showDetails),
173
- children: showDetails ? /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(import_jsx_runtime3.Fragment, { children: [
174
- /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_fa.FaChevronUp, {}),
175
- " Hide Details"
176
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(import_jsx_runtime3.Fragment, { children: [
177
- /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_fa.FaChevronDown, {}),
178
- " Show Details"
179
- ] })
180
- }
181
- )
182
- ] }),
183
- showDetails && /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)("div", { className: "mt-4 w-full text-left", children: [
184
- /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)("div", { children: [
185
- /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("strong", { children: "Error:" }),
186
- /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)("pre", { children: [
187
- err?.name,
188
- ": ",
189
- err?.message
190
- ] })
191
- ] }),
192
- /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)("div", { className: "mt-4", children: [
193
- /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("strong", { children: "Data:" }),
194
- /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("pre", { children: typeof value !== "string" ? JSON.stringify(value, null, 2) : value })
195
- ] })
196
- ] })
197
- ]
198
- }
199
- );
200
- }
201
- return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("div", { className: (0, import_classnames2.default)(className), children: error || content });
202
- };
203
- var Json_default = Json;
204
- //# sourceMappingURL=Json.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/Json/Json.tsx","../../src/Button/Button.tsx","../../src/Button/subcomponents/LoadingSpinner.tsx","../../src/Button/index.ts"],"sourcesContent":["import type { ReactNode } from 'react';\n\nimport { useState } from 'react';\nimport { FaChevronDown, FaChevronUp, FaTimesCircle } from 'react-icons/fa';\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 collapsed={collapsed}\n displayDataTypes={false}\n style={{\n ...(isDarkMode ? vscodeTheme : lightTheme),\n backgroundColor: 'unset',\n }}\n value={getValue(value)}\n />\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 type { ButtonProps as NextButtonProps } from '@nextui-org/button';\nimport type { ReactNode } from 'react';\n\nimport { Button as NextButton } from '@nextui-org/button';\nimport cn from 'classnames';\n\nimport LoadingSpinner from './subcomponents/LoadingSpinner';\n\nexport interface ButtonProps {\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 /** 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 icon = undefined,\n loading = false,\n onClick = undefined,\n size = undefined,\n testId = undefined,\n type = undefined,\n variant = 'solid',\n ...passthrouhProps\n}: ButtonProps) => {\n return (\n <NextButton\n aria-label={ariaLabel}\n className={cn(className)}\n color={color}\n data-testid={testId}\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 {...passthrouhProps}\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 type { ButtonProps } from './Button';\n\nimport Button from './Button';\n\nexport type { ButtonProps };\nexport default Button;\n"],"mappings":"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","names":["import_classnames","import_jsx_runtime","NextButton","cn","Button_default","import_jsx_runtime","JsonView","Button_default","cn"]}
package/dist/Json/Json.js DELETED
@@ -1,10 +0,0 @@
1
- import {
2
- Json_default
3
- } from "../chunk-WBAURF6J.js";
4
- import "../chunk-4WCKFSLX.js";
5
- import "../chunk-6QVKZ4AT.js";
6
- import "../chunk-ZFEVTQWW.js";
7
- export {
8
- Json_default as default
9
- };
10
- //# sourceMappingURL=Json.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,58 +0,0 @@
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/Label/Label.tsx
31
- var Label_exports = {};
32
- __export(Label_exports, {
33
- default: () => Label_default
34
- });
35
- module.exports = __toCommonJS(Label_exports);
36
- var import_chip = require("@nextui-org/chip");
37
- var import_classnames = __toESM(require("classnames"), 1);
38
- var import_jsx_runtime = require("react/jsx-runtime");
39
- var Label = ({
40
- children,
41
- className = void 0,
42
- color = "default",
43
- endContent = void 0,
44
- size = "md",
45
- startContent = void 0
46
- }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
47
- import_chip.Chip,
48
- {
49
- className: (0, import_classnames.default)(className),
50
- color,
51
- endContent,
52
- size,
53
- startContent,
54
- children
55
- }
56
- );
57
- var Label_default = Label;
58
- //# sourceMappingURL=Label.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/Label/Label.tsx"],"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"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,kBAAkC;AAClC,wBAAe;AA4Bb;AARF,IAAM,QAAQ,CAAC;AAAA,EACb;AAAA,EACA,YAAY;AAAA,EACZ,QAAQ;AAAA,EACR,aAAa;AAAA,EACb,OAAO;AAAA,EACP,eAAe;AACjB,MACE;AAAA,EAAC,YAAAA;AAAA,EAAA;AAAA,IACC,eAAW,kBAAAC,SAAG,SAAS;AAAA,IACvB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IAEC;AAAA;AACH;AAGF,IAAO,gBAAQ;","names":["NextLabel","cn"]}
@@ -1,7 +0,0 @@
1
- import {
2
- Label_default
3
- } from "../chunk-CEUL4NWH.js";
4
- export {
5
- Label_default as default
6
- };
7
- //# sourceMappingURL=Label.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,104 +0,0 @@
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/Menu/Menu.tsx
31
- var Menu_exports = {};
32
- __export(Menu_exports, {
33
- default: () => Menu_default
34
- });
35
- module.exports = __toCommonJS(Menu_exports);
36
- var import_fa6 = require("react-icons/fa6");
37
- var import_button = require("@nextui-org/button");
38
- var import_dropdown = require("@nextui-org/dropdown");
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:Menu");
43
- var getDisabledKeys = (items) => {
44
- return items.map((item) => typeof item?.items === "undefined" ? item : item.items).flat().filter((item) => {
45
- return Object.hasOwn(item, "disabled") && item.disabled === true;
46
- }).map((item) => item.key);
47
- };
48
- var renderMenuItem = (item) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
49
- import_dropdown.DropdownItem,
50
- {
51
- className: item.className,
52
- "data-testid": item.testId || item.key,
53
- description: item.description,
54
- onClick: item.onClick,
55
- startContent: item.icon,
56
- children: item.label
57
- },
58
- item.key
59
- );
60
- var Menu = ({
61
- children = null,
62
- className = void 0,
63
- onAction = void 0,
64
- testId = void 0,
65
- isDisabled = false,
66
- items
67
- }) => {
68
- debug("Menu", { items });
69
- return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_dropdown.Dropdown, { isDisabled, children: [
70
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_dropdown.DropdownTrigger, { className: (0, import_classnames.default)(className), "data-testid": testId, children: children ? (
71
- // eslint-disable-next-line react/button-has-type
72
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("button", { children })
73
- ) : (
74
- // INFO: we use next button here so that ref passing works
75
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_button.Button, { size: "sm", variant: "flat", className: "min-w-0", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_fa6.FaEllipsisVertical, {}) })
76
- ) }),
77
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
78
- import_dropdown.DropdownMenu,
79
- {
80
- items,
81
- disabledKeys: getDisabledKeys(items),
82
- onAction,
83
- children: (item) => {
84
- if ("items" in item) {
85
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
86
- import_dropdown.DropdownSection,
87
- {
88
- items: item.items,
89
- title: item.label,
90
- children: (sectionItem) => {
91
- return renderMenuItem(sectionItem);
92
- }
93
- },
94
- item.key
95
- );
96
- }
97
- return renderMenuItem(item);
98
- }
99
- }
100
- )
101
- ] });
102
- };
103
- var Menu_default = Menu;
104
- //# sourceMappingURL=Menu.cjs.map
@@ -1 +0,0 @@
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 { Button } from '@nextui-org/button';\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 {children ? (\n // eslint-disable-next-line react/button-has-type\n <button>{children}</button>\n ) : (\n // INFO: we use next button here so that ref passing works\n <Button size=\"sm\" variant=\"flat\" className=\"min-w-0\">\n <FaEllipsisVertical />\n </Button>\n )}\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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,iBAAmC;AAEnC,oBAAuB;AACvB,sBAMO;AACP,wBAAe;AACf,mBAAwB;AAoEtB;AAlEF,IAAM,YAAQ,aAAAA,SAAY,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,gBAAAC;AAAA,EAAA;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,6CAAC,gBAAAC,UAAA,EAAa,YACZ;AAAA,gDAAC,gBAAAC,iBAAA,EAAoB,eAAW,kBAAAC,SAAG,SAAS,GAAG,eAAa,QACzD;AAAA;AAAA,MAEC,4CAAC,YAAQ,UAAS;AAAA;AAAA;AAAA,MAGlB,4CAAC,wBAAO,MAAK,MAAK,SAAQ,QAAO,WAAU,WACzC,sDAAC,iCAAmB,GACtB;AAAA,OAEJ;AAAA,IACA;AAAA,MAAC,gBAAAC;AAAA,MAAA;AAAA,QAEC;AAAA,QACA,cAAc,gBAAgB,KAAK;AAAA,QACnC;AAAA,QAEC,WAAC,SAAS;AACT,cAAI,WAAW,MAAM;AACnB,mBACE;AAAA,cAAC,gBAAAC;AAAA,cAAA;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":["createDebug","NextDropdownItem","NextDropdown","NextDropdownTrigger","cn","NextDropdownMenu","NextDropdownSection"]}
package/dist/Menu/Menu.js DELETED
@@ -1,7 +0,0 @@
1
- import {
2
- Menu_default
3
- } from "../chunk-Y35GJHOR.js";
4
- export {
5
- Menu_default as default
6
- };
7
- //# sourceMappingURL=Menu.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}