@fuf-stack/pixels 0.6.0 → 0.7.1
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/AvatarGroup/index.cjs +10 -0
- package/dist/AvatarGroup/index.cjs.map +1 -0
- package/dist/AvatarGroup/index.d.cts +9 -0
- package/dist/AvatarGroup/index.d.ts +9 -0
- package/dist/AvatarGroup/index.js +10 -0
- package/dist/AvatarGroup/index.js.map +1 -0
- package/dist/AvatarGroup-BhgTIcSs.d.cts +22 -0
- package/dist/AvatarGroup-tWe-Vgrz.d.ts +22 -0
- package/dist/Json/index.cjs +2 -2
- package/dist/Json/index.js +1 -1
- package/dist/{chunk-YQBT544X.js → chunk-4S2N2V4Y.js} +61 -3
- package/dist/chunk-4S2N2V4Y.js.map +1 -0
- package/dist/chunk-EJSTUBPU.cjs +65 -0
- package/dist/chunk-EJSTUBPU.cjs.map +1 -0
- package/dist/{chunk-M7IVIJEA.cjs → chunk-JFNPXLHM.cjs} +62 -4
- package/dist/chunk-JFNPXLHM.cjs.map +1 -0
- package/dist/chunk-LAGUJC5D.js +65 -0
- package/dist/chunk-LAGUJC5D.js.map +1 -0
- package/dist/index.cjs +8 -4
- package/dist/index.d.cts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +8 -4
- package/package.json +10 -5
- package/dist/chunk-M7IVIJEA.cjs.map +0 -1
- package/dist/chunk-YQBT544X.js.map +0 -1
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
var _chunkEJSTUBPUcjs = require('../chunk-EJSTUBPU.cjs');
|
|
5
|
+
require('../chunk-XGHRKDIM.cjs');
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
exports.AvatarGroup = _chunkEJSTUBPUcjs.AvatarGroup_default; exports.default = _chunkEJSTUBPUcjs.AvatarGroup_default2;
|
|
10
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { A as AvatarGroup } from '../AvatarGroup-BhgTIcSs.cjs';
|
|
2
|
+
export { a as AvatarGroupProps } from '../AvatarGroup-BhgTIcSs.cjs';
|
|
3
|
+
import 'react/jsx-runtime';
|
|
4
|
+
import '../Avatar-Bl6oBjgb.cjs';
|
|
5
|
+
import 'react';
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
export { AvatarGroup, AvatarGroup as default };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { A as AvatarGroup } from '../AvatarGroup-tWe-Vgrz.js';
|
|
2
|
+
export { a as AvatarGroupProps } from '../AvatarGroup-tWe-Vgrz.js';
|
|
3
|
+
import 'react/jsx-runtime';
|
|
4
|
+
import '../Avatar-Bl6oBjgb.js';
|
|
5
|
+
import 'react';
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
export { AvatarGroup, AvatarGroup as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { a as AvatarProps } from './Avatar-Bl6oBjgb.cjs';
|
|
3
|
+
|
|
4
|
+
interface AvatarGroupProps {
|
|
5
|
+
bordered?: boolean;
|
|
6
|
+
rounded?: 'none' | 'sm' | 'md' | 'lg' | 'full';
|
|
7
|
+
/** CSS class name */
|
|
8
|
+
className?: string;
|
|
9
|
+
disabled?: boolean;
|
|
10
|
+
size?: 'sm' | 'md' | 'lg';
|
|
11
|
+
max?: number;
|
|
12
|
+
avatars?: (Omit<AvatarProps, 'size' | 'rounded' | 'bordered'> & {
|
|
13
|
+
wrapperProps?: Record<string, unknown>;
|
|
14
|
+
})[];
|
|
15
|
+
avatarWrapper?: JSX.ElementType;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* AvatarGroup component based on [NextUI AvatarGroup](https://nextui.org/docs/components/avatar)
|
|
19
|
+
*/
|
|
20
|
+
declare const AvatarGroup: ({ bordered, rounded, className, disabled, size, avatars, max, avatarWrapper: AvatarWrapper, }: AvatarGroupProps) => react_jsx_runtime.JSX.Element;
|
|
21
|
+
|
|
22
|
+
export { AvatarGroup as A, type AvatarGroupProps as a };
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { a as AvatarProps } from './Avatar-Bl6oBjgb.js';
|
|
3
|
+
|
|
4
|
+
interface AvatarGroupProps {
|
|
5
|
+
bordered?: boolean;
|
|
6
|
+
rounded?: 'none' | 'sm' | 'md' | 'lg' | 'full';
|
|
7
|
+
/** CSS class name */
|
|
8
|
+
className?: string;
|
|
9
|
+
disabled?: boolean;
|
|
10
|
+
size?: 'sm' | 'md' | 'lg';
|
|
11
|
+
max?: number;
|
|
12
|
+
avatars?: (Omit<AvatarProps, 'size' | 'rounded' | 'bordered'> & {
|
|
13
|
+
wrapperProps?: Record<string, unknown>;
|
|
14
|
+
})[];
|
|
15
|
+
avatarWrapper?: JSX.ElementType;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* AvatarGroup component based on [NextUI AvatarGroup](https://nextui.org/docs/components/avatar)
|
|
19
|
+
*/
|
|
20
|
+
declare const AvatarGroup: ({ bordered, rounded, className, disabled, size, avatars, max, avatarWrapper: AvatarWrapper, }: AvatarGroupProps) => react_jsx_runtime.JSX.Element;
|
|
21
|
+
|
|
22
|
+
export { AvatarGroup as A, type AvatarGroupProps as a };
|
package/dist/Json/index.cjs
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
2
|
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var _chunkJFNPXLHMcjs = require('../chunk-JFNPXLHM.cjs');
|
|
5
5
|
require('../chunk-ND4VZZVU.cjs');
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
exports.Json =
|
|
9
|
+
exports.Json = _chunkJFNPXLHMcjs.Json_default; exports.default = _chunkJFNPXLHMcjs.Json_default2;
|
|
10
10
|
//# sourceMappingURL=index.cjs.map
|
package/dist/Json/index.js
CHANGED
|
@@ -7,9 +7,67 @@ import { useState } from "react";
|
|
|
7
7
|
import { FaChevronDown, FaChevronUp, FaTimesCircle } from "react-icons/fa";
|
|
8
8
|
import { HiOutlineClipboard, HiOutlineClipboardCheck } from "react-icons/hi";
|
|
9
9
|
import JsonView from "@uiw/react-json-view";
|
|
10
|
-
import { lightTheme } from "@uiw/react-json-view/light";
|
|
11
|
-
import { vscodeTheme } from "@uiw/react-json-view/vscode";
|
|
12
10
|
import cn from "classnames";
|
|
11
|
+
|
|
12
|
+
// src/Json/theme.ts
|
|
13
|
+
var lightTheme = {
|
|
14
|
+
"--w-rjv-font-family": "monospace",
|
|
15
|
+
"--w-rjv-color": "#002b36",
|
|
16
|
+
"--w-rjv-key-string": "#002b36",
|
|
17
|
+
"--w-rjv-background-color": "#ffffff",
|
|
18
|
+
"--w-rjv-line-color": "#ebebeb",
|
|
19
|
+
"--w-rjv-arrow-color": "var(--w-rjv-color)",
|
|
20
|
+
"--w-rjv-edit-color": "var(--w-rjv-color)",
|
|
21
|
+
"--w-rjv-info-color": "#0000004d",
|
|
22
|
+
"--w-rjv-update-color": "#ebcb8b",
|
|
23
|
+
"--w-rjv-copied-color": "#002b36",
|
|
24
|
+
"--w-rjv-copied-success-color": "#28a745",
|
|
25
|
+
"--w-rjv-curlybraces-color": "#236a7c",
|
|
26
|
+
"--w-rjv-colon-color": "#002b36",
|
|
27
|
+
"--w-rjv-brackets-color": "#236a7c",
|
|
28
|
+
"--w-rjv-quotes-color": "var(--w-rjv-key-string)",
|
|
29
|
+
"--w-rjv-quotes-string-color": "var(--w-rjv-type-string-color)",
|
|
30
|
+
"--w-rjv-type-string-color": "#cb4b16",
|
|
31
|
+
"--w-rjv-type-int-color": "#268bd2",
|
|
32
|
+
"--w-rjv-type-float-color": "#859900",
|
|
33
|
+
"--w-rjv-type-bigint-color": "#268bd2",
|
|
34
|
+
"--w-rjv-type-boolean-color": "#2aa198",
|
|
35
|
+
"--w-rjv-type-date-color": "#586e75",
|
|
36
|
+
"--w-rjv-type-url-color": "#0969da",
|
|
37
|
+
"--w-rjv-type-null-color": "#d33682",
|
|
38
|
+
"--w-rjv-type-nan-color": "#859900",
|
|
39
|
+
"--w-rjv-type-undefined-color": "#586e75"
|
|
40
|
+
};
|
|
41
|
+
var vscodeTheme = {
|
|
42
|
+
"--w-rjv-font-family": "monospace",
|
|
43
|
+
"--w-rjv-color": "#9cdcfe",
|
|
44
|
+
"--w-rjv-key-string": "#9cdcfe",
|
|
45
|
+
"--w-rjv-background-color": "#1e1e1e",
|
|
46
|
+
"--w-rjv-line-color": "#36334280",
|
|
47
|
+
"--w-rjv-arrow-color": "#838383",
|
|
48
|
+
"--w-rjv-edit-color": "var(--w-rjv-color)",
|
|
49
|
+
"--w-rjv-info-color": "#9c9c9c7a",
|
|
50
|
+
"--w-rjv-update-color": "#9cdcfe",
|
|
51
|
+
"--w-rjv-copied-color": "#9cdcfe",
|
|
52
|
+
"--w-rjv-copied-success-color": "#28a745",
|
|
53
|
+
"--w-rjv-curlybraces-color": "#d4d4d4",
|
|
54
|
+
"--w-rjv-colon-color": "#d4d4d4",
|
|
55
|
+
"--w-rjv-brackets-color": "#d4d4d4",
|
|
56
|
+
"--w-rjv-quotes-color": "var(--w-rjv-key-string)",
|
|
57
|
+
"--w-rjv-quotes-string-color": "var(--w-rjv-type-string-color)",
|
|
58
|
+
"--w-rjv-type-string-color": "#ce9178",
|
|
59
|
+
"--w-rjv-type-int-color": "#b5cea8",
|
|
60
|
+
"--w-rjv-type-float-color": "#b5cea8",
|
|
61
|
+
"--w-rjv-type-bigint-color": "#b5cea8",
|
|
62
|
+
"--w-rjv-type-boolean-color": "#569cd6",
|
|
63
|
+
"--w-rjv-type-date-color": "#b5cea8",
|
|
64
|
+
"--w-rjv-type-url-color": "#3b89cf",
|
|
65
|
+
"--w-rjv-type-null-color": "#569cd6",
|
|
66
|
+
"--w-rjv-type-nan-color": "#859900",
|
|
67
|
+
"--w-rjv-type-undefined-color": "#569cd6"
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
// src/Json/Json.tsx
|
|
13
71
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
14
72
|
var getValue = (value) => {
|
|
15
73
|
if (typeof value === "string") {
|
|
@@ -124,4 +182,4 @@ export {
|
|
|
124
182
|
Json_default,
|
|
125
183
|
Json_default2
|
|
126
184
|
};
|
|
127
|
-
//# sourceMappingURL=chunk-
|
|
185
|
+
//# sourceMappingURL=chunk-4S2N2V4Y.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/Json/Json.tsx","../src/Json/theme.ts","../src/Json/index.ts"],"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 cn from 'classnames';\n\nimport { Button } from '../Button';\nimport { lightTheme, vscodeTheme } from './theme';\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","// see: https://github.com/uiwjs/react-json-view/blob/main/core/src/theme/light.ts\nexport const lightTheme = {\n '--w-rjv-font-family': 'monospace',\n '--w-rjv-color': '#002b36',\n '--w-rjv-key-string': '#002b36',\n '--w-rjv-background-color': '#ffffff',\n '--w-rjv-line-color': '#ebebeb',\n '--w-rjv-arrow-color': 'var(--w-rjv-color)',\n '--w-rjv-edit-color': 'var(--w-rjv-color)',\n '--w-rjv-info-color': '#0000004d',\n '--w-rjv-update-color': '#ebcb8b',\n '--w-rjv-copied-color': '#002b36',\n '--w-rjv-copied-success-color': '#28a745',\n\n '--w-rjv-curlybraces-color': '#236a7c',\n '--w-rjv-colon-color': '#002b36',\n '--w-rjv-brackets-color': '#236a7c',\n '--w-rjv-quotes-color': 'var(--w-rjv-key-string)',\n '--w-rjv-quotes-string-color': 'var(--w-rjv-type-string-color)',\n\n '--w-rjv-type-string-color': '#cb4b16',\n '--w-rjv-type-int-color': '#268bd2',\n '--w-rjv-type-float-color': '#859900',\n '--w-rjv-type-bigint-color': '#268bd2',\n '--w-rjv-type-boolean-color': '#2aa198',\n '--w-rjv-type-date-color': '#586e75',\n '--w-rjv-type-url-color': '#0969da',\n '--w-rjv-type-null-color': '#d33682',\n '--w-rjv-type-nan-color': '#859900',\n '--w-rjv-type-undefined-color': '#586e75',\n} as React.CSSProperties;\n\n// see: https://github.com/uiwjs/react-json-view/blob/main/core/src/theme/vscode.ts\nexport const vscodeTheme = {\n '--w-rjv-font-family': 'monospace',\n '--w-rjv-color': '#9cdcfe',\n '--w-rjv-key-string': '#9cdcfe',\n '--w-rjv-background-color': '#1e1e1e',\n '--w-rjv-line-color': '#36334280',\n '--w-rjv-arrow-color': '#838383',\n '--w-rjv-edit-color': 'var(--w-rjv-color)',\n '--w-rjv-info-color': '#9c9c9c7a',\n '--w-rjv-update-color': '#9cdcfe',\n '--w-rjv-copied-color': '#9cdcfe',\n '--w-rjv-copied-success-color': '#28a745',\n\n '--w-rjv-curlybraces-color': '#d4d4d4',\n '--w-rjv-colon-color': '#d4d4d4',\n '--w-rjv-brackets-color': '#d4d4d4',\n '--w-rjv-quotes-color': 'var(--w-rjv-key-string)',\n '--w-rjv-quotes-string-color': 'var(--w-rjv-type-string-color)',\n\n '--w-rjv-type-string-color': '#ce9178',\n '--w-rjv-type-int-color': '#b5cea8',\n '--w-rjv-type-float-color': '#b5cea8',\n '--w-rjv-type-bigint-color': '#b5cea8',\n '--w-rjv-type-boolean-color': '#569cd6',\n '--w-rjv-type-date-color': '#b5cea8',\n '--w-rjv-type-url-color': '#3b89cf',\n '--w-rjv-type-null-color': '#569cd6',\n '--w-rjv-type-nan-color': '#859900',\n '--w-rjv-type-undefined-color': '#569cd6',\n} as React.CSSProperties;\n","import Json from './Json';\n\nexport type { JsonProps } from './Json';\n\nexport { Json };\n\nexport default Json;\n"],"mappings":"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","names":["Json_default"]}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); 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
|
+
|
|
3
|
+
var _chunkXGHRKDIMcjs = require('./chunk-XGHRKDIM.cjs');
|
|
4
|
+
|
|
5
|
+
// src/AvatarGroup/AvatarGroup.tsx
|
|
6
|
+
var _avatar = require('@nextui-org/avatar');
|
|
7
|
+
var _jsxruntime = require('react/jsx-runtime');
|
|
8
|
+
var AvatarGroup = ({
|
|
9
|
+
bordered = false,
|
|
10
|
+
rounded = "full",
|
|
11
|
+
className = "",
|
|
12
|
+
disabled = false,
|
|
13
|
+
size = "md",
|
|
14
|
+
avatars = [],
|
|
15
|
+
max = 3,
|
|
16
|
+
avatarWrapper: AvatarWrapper = void 0
|
|
17
|
+
}) => {
|
|
18
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19
|
+
_avatar.AvatarGroup,
|
|
20
|
+
{
|
|
21
|
+
max,
|
|
22
|
+
className,
|
|
23
|
+
isBordered: bordered,
|
|
24
|
+
isDisabled: disabled,
|
|
25
|
+
radius: rounded,
|
|
26
|
+
size,
|
|
27
|
+
children: _optionalChain([avatars, 'optionalAccess', _ => _.map, 'call', _2 => _2((avatar) => {
|
|
28
|
+
return AvatarWrapper ? (
|
|
29
|
+
// eslint-disable-next-line react/jsx-props-no-spreading
|
|
30
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, AvatarWrapper, { ...avatar.wrapperProps, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31
|
+
_chunkXGHRKDIMcjs.Avatar_default2,
|
|
32
|
+
{
|
|
33
|
+
...avatar,
|
|
34
|
+
disabled: disabled || _optionalChain([avatar, 'optionalAccess', _3 => _3.disabled]),
|
|
35
|
+
rounded,
|
|
36
|
+
bordered,
|
|
37
|
+
size
|
|
38
|
+
},
|
|
39
|
+
avatar.src
|
|
40
|
+
) })
|
|
41
|
+
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42
|
+
_chunkXGHRKDIMcjs.Avatar_default2,
|
|
43
|
+
{
|
|
44
|
+
...avatar,
|
|
45
|
+
disabled: disabled || _optionalChain([avatar, 'optionalAccess', _4 => _4.disabled]),
|
|
46
|
+
rounded,
|
|
47
|
+
bordered,
|
|
48
|
+
size
|
|
49
|
+
},
|
|
50
|
+
avatar.src
|
|
51
|
+
);
|
|
52
|
+
})])
|
|
53
|
+
}
|
|
54
|
+
);
|
|
55
|
+
};
|
|
56
|
+
var AvatarGroup_default = AvatarGroup;
|
|
57
|
+
|
|
58
|
+
// src/AvatarGroup/index.ts
|
|
59
|
+
var AvatarGroup_default2 = AvatarGroup_default;
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
exports.AvatarGroup_default = AvatarGroup_default; exports.AvatarGroup_default2 = AvatarGroup_default2;
|
|
65
|
+
//# sourceMappingURL=chunk-EJSTUBPU.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/AvatarGroup/AvatarGroup.tsx","../src/AvatarGroup/index.ts"],"names":["AvatarGroup_default"],"mappings":";;;;;AAEA,SAAS,eAAe,uBAAuB;AAoDnC;AAvBZ,IAAM,cAAc,CAAC;AAAA,EACnB,WAAW;AAAA,EACX,UAAU;AAAA,EACV,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,OAAO;AAAA,EACP,UAAU,CAAC;AAAA,EACX,MAAM;AAAA,EACN,eAAe,gBAAgB;AACjC,MAAwB;AACtB,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,QAAQ;AAAA,MACR;AAAA,MAEC,mBAAS,IAAI,CAAC,WAAW;AACxB,eAAO;AAAA;AAAA,UAEL,oBAAC,iBAAe,GAAG,OAAO,cACxB;AAAA,YAAC;AAAA;AAAA,cAGE,GAAG;AAAA,cACJ,UAAU,YAAY,QAAQ;AAAA,cAC9B;AAAA,cACA;AAAA,cACA;AAAA;AAAA,YANK,OAAO;AAAA,UAOd,GACF;AAAA,YAEA;AAAA,UAAC;AAAA;AAAA,YAGE,GAAG;AAAA,YACJ,UAAU,YAAY,QAAQ;AAAA,YAC9B;AAAA,YACA;AAAA,YACA;AAAA;AAAA,UANK,OAAO;AAAA,QAOd;AAAA,MAEJ,CAAC;AAAA;AAAA,EACH;AAEJ;AAEA,IAAO,sBAAQ;;;AC1Ef,IAAOA,uBAAQ","sourcesContent":["import type { AvatarProps } from '../Avatar/Avatar';\n\nimport { AvatarGroup as NextAvatarGroup } from '@nextui-org/avatar';\n\nimport Avatar from '../Avatar';\n\nexport interface AvatarGroupProps {\n /* Display a border ring around the Avatar */\n bordered?: boolean;\n /* Roundness of the border around the Avatar */\n rounded?: 'none' | 'sm' | 'md' | 'lg' | 'full';\n /** CSS class name */\n className?: string;\n /* Disables the Avatar */\n disabled?: boolean;\n /* Size of the Avatar */\n size?: 'sm' | 'md' | 'lg';\n /* Maximum number of avatars to display before +X is displayed */\n max?: number;\n /* Array of avatarProps */\n avatars?: (Omit<AvatarProps, 'size' | 'rounded' | 'bordered'> & {\n /* Custom wrapperProps for each avatarWrapper */\n wrapperProps?: Record<string, unknown>;\n })[];\n /* Custom wrapper for each avatar */\n avatarWrapper?: JSX.ElementType;\n}\n\n/**\n * AvatarGroup component based on [NextUI AvatarGroup](https://nextui.org/docs/components/avatar)\n */\nconst AvatarGroup = ({\n bordered = false,\n rounded = 'full',\n className = '',\n disabled = false,\n size = 'md',\n avatars = [],\n max = 3,\n avatarWrapper: AvatarWrapper = undefined,\n}: AvatarGroupProps) => {\n return (\n <NextAvatarGroup\n max={max}\n className={className}\n isBordered={bordered}\n isDisabled={disabled}\n radius={rounded}\n size={size}\n >\n {avatars?.map((avatar) => {\n return AvatarWrapper ? (\n // eslint-disable-next-line react/jsx-props-no-spreading\n <AvatarWrapper {...avatar.wrapperProps}>\n <Avatar\n key={avatar.src}\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...avatar}\n disabled={disabled || avatar?.disabled}\n rounded={rounded}\n bordered={bordered}\n size={size}\n />\n </AvatarWrapper>\n ) : (\n <Avatar\n key={avatar.src}\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...avatar}\n disabled={disabled || avatar?.disabled}\n rounded={rounded}\n bordered={bordered}\n size={size}\n />\n );\n })}\n </NextAvatarGroup>\n );\n};\n\nexport default AvatarGroup;\n","import AvatarGroup from './AvatarGroup';\n\nexport type { AvatarGroupProps } from './AvatarGroup';\n\nexport { AvatarGroup };\n\nexport default AvatarGroup;\n"]}
|
|
@@ -7,9 +7,67 @@ var _react = require('react');
|
|
|
7
7
|
var _fa = require('react-icons/fa');
|
|
8
8
|
var _hi = require('react-icons/hi');
|
|
9
9
|
var _reactjsonview = require('@uiw/react-json-view'); var _reactjsonview2 = _interopRequireDefault(_reactjsonview);
|
|
10
|
-
var _light = require('@uiw/react-json-view/light');
|
|
11
|
-
var _vscode = require('@uiw/react-json-view/vscode');
|
|
12
10
|
var _classnames = require('classnames'); var _classnames2 = _interopRequireDefault(_classnames);
|
|
11
|
+
|
|
12
|
+
// src/Json/theme.ts
|
|
13
|
+
var lightTheme = {
|
|
14
|
+
"--w-rjv-font-family": "monospace",
|
|
15
|
+
"--w-rjv-color": "#002b36",
|
|
16
|
+
"--w-rjv-key-string": "#002b36",
|
|
17
|
+
"--w-rjv-background-color": "#ffffff",
|
|
18
|
+
"--w-rjv-line-color": "#ebebeb",
|
|
19
|
+
"--w-rjv-arrow-color": "var(--w-rjv-color)",
|
|
20
|
+
"--w-rjv-edit-color": "var(--w-rjv-color)",
|
|
21
|
+
"--w-rjv-info-color": "#0000004d",
|
|
22
|
+
"--w-rjv-update-color": "#ebcb8b",
|
|
23
|
+
"--w-rjv-copied-color": "#002b36",
|
|
24
|
+
"--w-rjv-copied-success-color": "#28a745",
|
|
25
|
+
"--w-rjv-curlybraces-color": "#236a7c",
|
|
26
|
+
"--w-rjv-colon-color": "#002b36",
|
|
27
|
+
"--w-rjv-brackets-color": "#236a7c",
|
|
28
|
+
"--w-rjv-quotes-color": "var(--w-rjv-key-string)",
|
|
29
|
+
"--w-rjv-quotes-string-color": "var(--w-rjv-type-string-color)",
|
|
30
|
+
"--w-rjv-type-string-color": "#cb4b16",
|
|
31
|
+
"--w-rjv-type-int-color": "#268bd2",
|
|
32
|
+
"--w-rjv-type-float-color": "#859900",
|
|
33
|
+
"--w-rjv-type-bigint-color": "#268bd2",
|
|
34
|
+
"--w-rjv-type-boolean-color": "#2aa198",
|
|
35
|
+
"--w-rjv-type-date-color": "#586e75",
|
|
36
|
+
"--w-rjv-type-url-color": "#0969da",
|
|
37
|
+
"--w-rjv-type-null-color": "#d33682",
|
|
38
|
+
"--w-rjv-type-nan-color": "#859900",
|
|
39
|
+
"--w-rjv-type-undefined-color": "#586e75"
|
|
40
|
+
};
|
|
41
|
+
var vscodeTheme = {
|
|
42
|
+
"--w-rjv-font-family": "monospace",
|
|
43
|
+
"--w-rjv-color": "#9cdcfe",
|
|
44
|
+
"--w-rjv-key-string": "#9cdcfe",
|
|
45
|
+
"--w-rjv-background-color": "#1e1e1e",
|
|
46
|
+
"--w-rjv-line-color": "#36334280",
|
|
47
|
+
"--w-rjv-arrow-color": "#838383",
|
|
48
|
+
"--w-rjv-edit-color": "var(--w-rjv-color)",
|
|
49
|
+
"--w-rjv-info-color": "#9c9c9c7a",
|
|
50
|
+
"--w-rjv-update-color": "#9cdcfe",
|
|
51
|
+
"--w-rjv-copied-color": "#9cdcfe",
|
|
52
|
+
"--w-rjv-copied-success-color": "#28a745",
|
|
53
|
+
"--w-rjv-curlybraces-color": "#d4d4d4",
|
|
54
|
+
"--w-rjv-colon-color": "#d4d4d4",
|
|
55
|
+
"--w-rjv-brackets-color": "#d4d4d4",
|
|
56
|
+
"--w-rjv-quotes-color": "var(--w-rjv-key-string)",
|
|
57
|
+
"--w-rjv-quotes-string-color": "var(--w-rjv-type-string-color)",
|
|
58
|
+
"--w-rjv-type-string-color": "#ce9178",
|
|
59
|
+
"--w-rjv-type-int-color": "#b5cea8",
|
|
60
|
+
"--w-rjv-type-float-color": "#b5cea8",
|
|
61
|
+
"--w-rjv-type-bigint-color": "#b5cea8",
|
|
62
|
+
"--w-rjv-type-boolean-color": "#569cd6",
|
|
63
|
+
"--w-rjv-type-date-color": "#b5cea8",
|
|
64
|
+
"--w-rjv-type-url-color": "#3b89cf",
|
|
65
|
+
"--w-rjv-type-null-color": "#569cd6",
|
|
66
|
+
"--w-rjv-type-nan-color": "#859900",
|
|
67
|
+
"--w-rjv-type-undefined-color": "#569cd6"
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
// src/Json/Json.tsx
|
|
13
71
|
var _jsxruntime = require('react/jsx-runtime');
|
|
14
72
|
var getValue = (value) => {
|
|
15
73
|
if (typeof value === "string") {
|
|
@@ -33,7 +91,7 @@ var Json = ({ className = null, collapsed = false, value }) => {
|
|
|
33
91
|
collapsed,
|
|
34
92
|
displayDataTypes: false,
|
|
35
93
|
style: {
|
|
36
|
-
...isDarkMode ?
|
|
94
|
+
...isDarkMode ? vscodeTheme : lightTheme,
|
|
37
95
|
backgroundColor: "unset"
|
|
38
96
|
},
|
|
39
97
|
value: getValue(value),
|
|
@@ -124,4 +182,4 @@ var Json_default2 = Json_default;
|
|
|
124
182
|
|
|
125
183
|
|
|
126
184
|
exports.Json_default = Json_default; exports.Json_default2 = Json_default2;
|
|
127
|
-
//# sourceMappingURL=chunk-
|
|
185
|
+
//# sourceMappingURL=chunk-JFNPXLHM.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/Json/Json.tsx","../src/Json/theme.ts","../src/Json/index.ts"],"names":["Json_default"],"mappings":"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","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 cn from 'classnames';\n\nimport { Button } from '../Button';\nimport { lightTheme, vscodeTheme } from './theme';\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","// see: https://github.com/uiwjs/react-json-view/blob/main/core/src/theme/light.ts\nexport const lightTheme = {\n '--w-rjv-font-family': 'monospace',\n '--w-rjv-color': '#002b36',\n '--w-rjv-key-string': '#002b36',\n '--w-rjv-background-color': '#ffffff',\n '--w-rjv-line-color': '#ebebeb',\n '--w-rjv-arrow-color': 'var(--w-rjv-color)',\n '--w-rjv-edit-color': 'var(--w-rjv-color)',\n '--w-rjv-info-color': '#0000004d',\n '--w-rjv-update-color': '#ebcb8b',\n '--w-rjv-copied-color': '#002b36',\n '--w-rjv-copied-success-color': '#28a745',\n\n '--w-rjv-curlybraces-color': '#236a7c',\n '--w-rjv-colon-color': '#002b36',\n '--w-rjv-brackets-color': '#236a7c',\n '--w-rjv-quotes-color': 'var(--w-rjv-key-string)',\n '--w-rjv-quotes-string-color': 'var(--w-rjv-type-string-color)',\n\n '--w-rjv-type-string-color': '#cb4b16',\n '--w-rjv-type-int-color': '#268bd2',\n '--w-rjv-type-float-color': '#859900',\n '--w-rjv-type-bigint-color': '#268bd2',\n '--w-rjv-type-boolean-color': '#2aa198',\n '--w-rjv-type-date-color': '#586e75',\n '--w-rjv-type-url-color': '#0969da',\n '--w-rjv-type-null-color': '#d33682',\n '--w-rjv-type-nan-color': '#859900',\n '--w-rjv-type-undefined-color': '#586e75',\n} as React.CSSProperties;\n\n// see: https://github.com/uiwjs/react-json-view/blob/main/core/src/theme/vscode.ts\nexport const vscodeTheme = {\n '--w-rjv-font-family': 'monospace',\n '--w-rjv-color': '#9cdcfe',\n '--w-rjv-key-string': '#9cdcfe',\n '--w-rjv-background-color': '#1e1e1e',\n '--w-rjv-line-color': '#36334280',\n '--w-rjv-arrow-color': '#838383',\n '--w-rjv-edit-color': 'var(--w-rjv-color)',\n '--w-rjv-info-color': '#9c9c9c7a',\n '--w-rjv-update-color': '#9cdcfe',\n '--w-rjv-copied-color': '#9cdcfe',\n '--w-rjv-copied-success-color': '#28a745',\n\n '--w-rjv-curlybraces-color': '#d4d4d4',\n '--w-rjv-colon-color': '#d4d4d4',\n '--w-rjv-brackets-color': '#d4d4d4',\n '--w-rjv-quotes-color': 'var(--w-rjv-key-string)',\n '--w-rjv-quotes-string-color': 'var(--w-rjv-type-string-color)',\n\n '--w-rjv-type-string-color': '#ce9178',\n '--w-rjv-type-int-color': '#b5cea8',\n '--w-rjv-type-float-color': '#b5cea8',\n '--w-rjv-type-bigint-color': '#b5cea8',\n '--w-rjv-type-boolean-color': '#569cd6',\n '--w-rjv-type-date-color': '#b5cea8',\n '--w-rjv-type-url-color': '#3b89cf',\n '--w-rjv-type-null-color': '#569cd6',\n '--w-rjv-type-nan-color': '#859900',\n '--w-rjv-type-undefined-color': '#569cd6',\n} as React.CSSProperties;\n","import Json from './Json';\n\nexport type { JsonProps } from './Json';\n\nexport { Json };\n\nexport default Json;\n"]}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Avatar_default2 as Avatar_default
|
|
3
|
+
} from "./chunk-SFGC6YVH.js";
|
|
4
|
+
|
|
5
|
+
// src/AvatarGroup/AvatarGroup.tsx
|
|
6
|
+
import { AvatarGroup as NextAvatarGroup } from "@nextui-org/avatar";
|
|
7
|
+
import { jsx } from "react/jsx-runtime";
|
|
8
|
+
var AvatarGroup = ({
|
|
9
|
+
bordered = false,
|
|
10
|
+
rounded = "full",
|
|
11
|
+
className = "",
|
|
12
|
+
disabled = false,
|
|
13
|
+
size = "md",
|
|
14
|
+
avatars = [],
|
|
15
|
+
max = 3,
|
|
16
|
+
avatarWrapper: AvatarWrapper = void 0
|
|
17
|
+
}) => {
|
|
18
|
+
return /* @__PURE__ */ jsx(
|
|
19
|
+
NextAvatarGroup,
|
|
20
|
+
{
|
|
21
|
+
max,
|
|
22
|
+
className,
|
|
23
|
+
isBordered: bordered,
|
|
24
|
+
isDisabled: disabled,
|
|
25
|
+
radius: rounded,
|
|
26
|
+
size,
|
|
27
|
+
children: avatars?.map((avatar) => {
|
|
28
|
+
return AvatarWrapper ? (
|
|
29
|
+
// eslint-disable-next-line react/jsx-props-no-spreading
|
|
30
|
+
/* @__PURE__ */ jsx(AvatarWrapper, { ...avatar.wrapperProps, children: /* @__PURE__ */ jsx(
|
|
31
|
+
Avatar_default,
|
|
32
|
+
{
|
|
33
|
+
...avatar,
|
|
34
|
+
disabled: disabled || avatar?.disabled,
|
|
35
|
+
rounded,
|
|
36
|
+
bordered,
|
|
37
|
+
size
|
|
38
|
+
},
|
|
39
|
+
avatar.src
|
|
40
|
+
) })
|
|
41
|
+
) : /* @__PURE__ */ jsx(
|
|
42
|
+
Avatar_default,
|
|
43
|
+
{
|
|
44
|
+
...avatar,
|
|
45
|
+
disabled: disabled || avatar?.disabled,
|
|
46
|
+
rounded,
|
|
47
|
+
bordered,
|
|
48
|
+
size
|
|
49
|
+
},
|
|
50
|
+
avatar.src
|
|
51
|
+
);
|
|
52
|
+
})
|
|
53
|
+
}
|
|
54
|
+
);
|
|
55
|
+
};
|
|
56
|
+
var AvatarGroup_default = AvatarGroup;
|
|
57
|
+
|
|
58
|
+
// src/AvatarGroup/index.ts
|
|
59
|
+
var AvatarGroup_default2 = AvatarGroup_default;
|
|
60
|
+
|
|
61
|
+
export {
|
|
62
|
+
AvatarGroup_default,
|
|
63
|
+
AvatarGroup_default2
|
|
64
|
+
};
|
|
65
|
+
//# sourceMappingURL=chunk-LAGUJC5D.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/AvatarGroup/AvatarGroup.tsx","../src/AvatarGroup/index.ts"],"sourcesContent":["import type { AvatarProps } from '../Avatar/Avatar';\n\nimport { AvatarGroup as NextAvatarGroup } from '@nextui-org/avatar';\n\nimport Avatar from '../Avatar';\n\nexport interface AvatarGroupProps {\n /* Display a border ring around the Avatar */\n bordered?: boolean;\n /* Roundness of the border around the Avatar */\n rounded?: 'none' | 'sm' | 'md' | 'lg' | 'full';\n /** CSS class name */\n className?: string;\n /* Disables the Avatar */\n disabled?: boolean;\n /* Size of the Avatar */\n size?: 'sm' | 'md' | 'lg';\n /* Maximum number of avatars to display before +X is displayed */\n max?: number;\n /* Array of avatarProps */\n avatars?: (Omit<AvatarProps, 'size' | 'rounded' | 'bordered'> & {\n /* Custom wrapperProps for each avatarWrapper */\n wrapperProps?: Record<string, unknown>;\n })[];\n /* Custom wrapper for each avatar */\n avatarWrapper?: JSX.ElementType;\n}\n\n/**\n * AvatarGroup component based on [NextUI AvatarGroup](https://nextui.org/docs/components/avatar)\n */\nconst AvatarGroup = ({\n bordered = false,\n rounded = 'full',\n className = '',\n disabled = false,\n size = 'md',\n avatars = [],\n max = 3,\n avatarWrapper: AvatarWrapper = undefined,\n}: AvatarGroupProps) => {\n return (\n <NextAvatarGroup\n max={max}\n className={className}\n isBordered={bordered}\n isDisabled={disabled}\n radius={rounded}\n size={size}\n >\n {avatars?.map((avatar) => {\n return AvatarWrapper ? (\n // eslint-disable-next-line react/jsx-props-no-spreading\n <AvatarWrapper {...avatar.wrapperProps}>\n <Avatar\n key={avatar.src}\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...avatar}\n disabled={disabled || avatar?.disabled}\n rounded={rounded}\n bordered={bordered}\n size={size}\n />\n </AvatarWrapper>\n ) : (\n <Avatar\n key={avatar.src}\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...avatar}\n disabled={disabled || avatar?.disabled}\n rounded={rounded}\n bordered={bordered}\n size={size}\n />\n );\n })}\n </NextAvatarGroup>\n );\n};\n\nexport default AvatarGroup;\n","import AvatarGroup from './AvatarGroup';\n\nexport type { AvatarGroupProps } from './AvatarGroup';\n\nexport { AvatarGroup };\n\nexport default AvatarGroup;\n"],"mappings":";;;;;AAEA,SAAS,eAAe,uBAAuB;AAoDnC;AAvBZ,IAAM,cAAc,CAAC;AAAA,EACnB,WAAW;AAAA,EACX,UAAU;AAAA,EACV,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,OAAO;AAAA,EACP,UAAU,CAAC;AAAA,EACX,MAAM;AAAA,EACN,eAAe,gBAAgB;AACjC,MAAwB;AACtB,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,QAAQ;AAAA,MACR;AAAA,MAEC,mBAAS,IAAI,CAAC,WAAW;AACxB,eAAO;AAAA;AAAA,UAEL,oBAAC,iBAAe,GAAG,OAAO,cACxB;AAAA,YAAC;AAAA;AAAA,cAGE,GAAG;AAAA,cACJ,UAAU,YAAY,QAAQ;AAAA,cAC9B;AAAA,cACA;AAAA,cACA;AAAA;AAAA,YANK,OAAO;AAAA,UAOd,GACF;AAAA,YAEA;AAAA,UAAC;AAAA;AAAA,YAGE,GAAG;AAAA,YACJ,UAAU,YAAY,QAAQ;AAAA,YAC9B;AAAA,YACA;AAAA,YACA;AAAA;AAAA,UANK,OAAO;AAAA,QAOd;AAAA,MAEJ,CAAC;AAAA;AAAA,EACH;AAEJ;AAEA,IAAO,sBAAQ;;;AC1Ef,IAAOA,uBAAQ;","names":["AvatarGroup_default"]}
|
package/dist/index.cjs
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
2
|
|
|
3
|
+
var _chunkB35F4645cjs = require('./chunk-B35F4645.cjs');
|
|
4
|
+
|
|
5
|
+
|
|
3
6
|
|
|
4
7
|
var _chunkBSBPQXNGcjs = require('./chunk-BSBPQXNG.cjs');
|
|
5
8
|
|
|
@@ -11,6 +14,9 @@ var _chunkMWNBYTRNcjs = require('./chunk-MWNBYTRN.cjs');
|
|
|
11
14
|
var _chunk64K2TRGLcjs = require('./chunk-64K2TRGL.cjs');
|
|
12
15
|
|
|
13
16
|
|
|
17
|
+
var _chunkEJSTUBPUcjs = require('./chunk-EJSTUBPU.cjs');
|
|
18
|
+
|
|
19
|
+
|
|
14
20
|
var _chunkXGHRKDIMcjs = require('./chunk-XGHRKDIM.cjs');
|
|
15
21
|
|
|
16
22
|
|
|
@@ -18,7 +24,7 @@ var _chunkXGHRKDIMcjs = require('./chunk-XGHRKDIM.cjs');
|
|
|
18
24
|
var _chunkGIM2W4JHcjs = require('./chunk-GIM2W4JH.cjs');
|
|
19
25
|
|
|
20
26
|
|
|
21
|
-
var
|
|
27
|
+
var _chunkJFNPXLHMcjs = require('./chunk-JFNPXLHM.cjs');
|
|
22
28
|
|
|
23
29
|
|
|
24
30
|
|
|
@@ -35,8 +41,6 @@ var _chunkHHTTNYDCcjs = require('./chunk-HHTTNYDC.cjs');
|
|
|
35
41
|
var _chunkX2MUU2ZIcjs = require('./chunk-X2MUU2ZI.cjs');
|
|
36
42
|
|
|
37
43
|
|
|
38
|
-
var _chunkB35F4645cjs = require('./chunk-B35F4645.cjs');
|
|
39
|
-
|
|
40
44
|
|
|
41
45
|
|
|
42
46
|
|
|
@@ -53,5 +57,5 @@ var _chunkB35F4645cjs = require('./chunk-B35F4645.cjs');
|
|
|
53
57
|
|
|
54
58
|
|
|
55
59
|
|
|
56
|
-
exports.Avatar = _chunkXGHRKDIMcjs.Avatar_default; exports.Button = _chunkND4VZZVUcjs.Button_default; exports.Card = _chunkGIM2W4JHcjs.Card_default; exports.Json =
|
|
60
|
+
exports.Avatar = _chunkXGHRKDIMcjs.Avatar_default; exports.AvatarGroup = _chunkEJSTUBPUcjs.AvatarGroup_default; exports.Button = _chunkND4VZZVUcjs.Button_default; exports.Card = _chunkGIM2W4JHcjs.Card_default; exports.Json = _chunkJFNPXLHMcjs.Json_default; exports.Label = _chunkBMKGS5PKcjs.Label_default; exports.Menu = _chunkHHTTNYDCcjs.Menu_default; exports.Modal = _chunkX2MUU2ZIcjs.Modal_default; exports.Popover = _chunkB35F4645cjs.Popover_default; exports.Tooltip = _chunkBSBPQXNGcjs.Tooltip_default; exports.buttonVariants = _chunkND4VZZVUcjs.buttonVariants; exports.cardVariants = _chunkGIM2W4JHcjs.cardVariants; exports.modalVariants = _chunkX2MUU2ZIcjs.modalVariants; exports.nextui = _chunk64K2TRGLcjs.nextui; exports.tooltipPlacementOptions = _chunkBSBPQXNGcjs.tooltipPlacementOptions; exports.useDebounce = _chunkMWNBYTRNcjs.useDebounce; exports.useLocalStorage = _chunkMWNBYTRNcjs.useLocalStorage;
|
|
57
61
|
//# sourceMappingURL=index.cjs.map
|
package/dist/index.d.cts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export { A as Avatar, a as AvatarProps } from './Avatar-Bl6oBjgb.cjs';
|
|
2
|
+
export { A as AvatarGroup, a as AvatarGroupProps } from './AvatarGroup-BhgTIcSs.cjs';
|
|
2
3
|
export { B as Button, a as ButtonProps, b as buttonVariants } from './Button-DS4qK4Lf.cjs';
|
|
3
4
|
export { C as Card, a as CardProps, c as cardVariants } from './Card-D5kspciY.cjs';
|
|
4
5
|
export { J as Json, a as JsonProps } from './Json-ClGDcbcp.cjs';
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export { A as Avatar, a as AvatarProps } from './Avatar-Bl6oBjgb.js';
|
|
2
|
+
export { A as AvatarGroup, a as AvatarGroupProps } from './AvatarGroup-tWe-Vgrz.js';
|
|
2
3
|
export { B as Button, a as ButtonProps, b as buttonVariants } from './Button-DS4qK4Lf.js';
|
|
3
4
|
export { C as Card, a as CardProps, c as cardVariants } from './Card-D5kspciY.js';
|
|
4
5
|
export { J as Json, a as JsonProps } from './Json-ClGDcbcp.js';
|
package/dist/index.js
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Popover_default
|
|
3
|
+
} from "./chunk-6G5VTF6K.js";
|
|
1
4
|
import {
|
|
2
5
|
Tooltip_default,
|
|
3
6
|
tooltipPlacementOptions
|
|
@@ -9,6 +12,9 @@ import {
|
|
|
9
12
|
import {
|
|
10
13
|
nextui
|
|
11
14
|
} from "./chunk-MM5H2WFG.js";
|
|
15
|
+
import {
|
|
16
|
+
AvatarGroup_default
|
|
17
|
+
} from "./chunk-LAGUJC5D.js";
|
|
12
18
|
import {
|
|
13
19
|
Avatar_default
|
|
14
20
|
} from "./chunk-SFGC6YVH.js";
|
|
@@ -18,7 +24,7 @@ import {
|
|
|
18
24
|
} from "./chunk-IEZVKZFP.js";
|
|
19
25
|
import {
|
|
20
26
|
Json_default
|
|
21
|
-
} from "./chunk-
|
|
27
|
+
} from "./chunk-4S2N2V4Y.js";
|
|
22
28
|
import {
|
|
23
29
|
Button_default,
|
|
24
30
|
buttonVariants
|
|
@@ -33,11 +39,9 @@ import {
|
|
|
33
39
|
Modal_default,
|
|
34
40
|
modalVariants
|
|
35
41
|
} from "./chunk-O6OLR36Y.js";
|
|
36
|
-
import {
|
|
37
|
-
Popover_default
|
|
38
|
-
} from "./chunk-6G5VTF6K.js";
|
|
39
42
|
export {
|
|
40
43
|
Avatar_default as Avatar,
|
|
44
|
+
AvatarGroup_default as AvatarGroup,
|
|
41
45
|
Button_default as Button,
|
|
42
46
|
Card_default as Card,
|
|
43
47
|
Json_default as Json,
|
package/package.json
CHANGED
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
"name": "@fuf-stack/pixels",
|
|
3
3
|
"description": "fuf react component library",
|
|
4
4
|
"author": "Hannes Tiede",
|
|
5
|
-
"version": "0.
|
|
5
|
+
"version": "0.7.1",
|
|
6
6
|
"type": "module",
|
|
7
|
-
"main": "./dist/index.
|
|
8
|
-
"module": "./dist/index.
|
|
7
|
+
"main": "./dist/index.cjs",
|
|
8
|
+
"module": "./dist/index.js",
|
|
9
9
|
"types": "./dist/index.d.ts",
|
|
10
10
|
"sideEffects": false,
|
|
11
11
|
"exports": {
|
|
@@ -19,6 +19,11 @@
|
|
|
19
19
|
"require": "./dist/Avatar/index.cjs",
|
|
20
20
|
"types": "./dist/Avatar/index.d.ts"
|
|
21
21
|
},
|
|
22
|
+
"./AvatarGroup": {
|
|
23
|
+
"import": "./dist/AvatarGroup/index.js",
|
|
24
|
+
"require": "./dist/AvatarGroup/index.cjs",
|
|
25
|
+
"types": "./dist/AvatarGroup/index.d.ts"
|
|
26
|
+
},
|
|
22
27
|
"./Button": {
|
|
23
28
|
"import": "./dist/Button/index.js",
|
|
24
29
|
"require": "./dist/Button/index.cjs",
|
|
@@ -120,8 +125,8 @@
|
|
|
120
125
|
"react-dom": "18.3.1",
|
|
121
126
|
"@repo/storybook-config": "0.0.1",
|
|
122
127
|
"@repo/tailwind-config": "0.0.1",
|
|
123
|
-
"@repo/
|
|
124
|
-
"@repo/
|
|
128
|
+
"@repo/tsup-config": "0.0.1",
|
|
129
|
+
"@repo/vite-config": "0.0.1"
|
|
125
130
|
},
|
|
126
131
|
"scripts": {
|
|
127
132
|
"build": "tsup --config node_modules/@repo/tsup-config/config.ts",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Json/Json.tsx","../src/Json/index.ts"],"names":["Json_default"],"mappings":"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","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"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Json/Json.tsx","../src/Json/index.ts"],"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"],"mappings":"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","names":["Json_default"]}
|