dash-ui-kit 1.0.93 → 2.0.0-dev
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/README.md +52 -0
- package/dist/react/components/accordion/index.cjs.js +193 -0
- package/dist/react/components/accordion/index.cjs.js.map +1 -0
- package/dist/react/components/accordion/index.esm.js +169 -0
- package/dist/react/components/accordion/index.esm.js.map +1 -0
- package/dist/react/components/avatar/index.cjs.js +39 -0
- package/dist/react/components/avatar/index.cjs.js.map +1 -0
- package/dist/react/components/avatar/index.esm.js +34 -0
- package/dist/react/components/avatar/index.esm.js.map +1 -0
- package/dist/react/components/badge/index.cjs.js +92 -0
- package/dist/react/components/badge/index.cjs.js.map +1 -0
- package/dist/react/components/badge/index.esm.js +87 -0
- package/dist/react/components/badge/index.esm.js.map +1 -0
- package/dist/react/components/bigNumber/index.cjs.js +100 -0
- package/dist/react/components/bigNumber/index.cjs.js.map +1 -0
- package/dist/react/components/bigNumber/index.esm.js +95 -0
- package/dist/react/components/bigNumber/index.esm.js.map +1 -0
- package/dist/react/components/button/index.cjs.js +535 -0
- package/dist/react/components/button/index.cjs.js.map +1 -0
- package/dist/react/components/button/index.d.ts +3 -1
- package/dist/react/components/button/index.esm.js +530 -0
- package/dist/react/components/button/index.esm.js.map +1 -0
- package/dist/react/components/copyButton/index.cjs.js +95 -0
- package/dist/react/components/copyButton/index.cjs.js.map +1 -0
- package/dist/react/components/copyButton/index.esm.js +71 -0
- package/dist/react/components/copyButton/index.esm.js.map +1 -0
- package/dist/react/components/dashLogo/index.cjs.js +74 -0
- package/dist/react/components/dashLogo/index.cjs.js.map +1 -0
- package/dist/react/components/dashLogo/index.esm.js +69 -0
- package/dist/react/components/dashLogo/index.esm.js.map +1 -0
- package/dist/react/components/dateBlock/index.cjs.js +120 -0
- package/dist/react/components/dateBlock/index.cjs.js.map +1 -0
- package/dist/react/components/dateBlock/index.esm.js +115 -0
- package/dist/react/components/dateBlock/index.esm.js.map +1 -0
- package/dist/react/components/dialog/index.cjs.js +292 -0
- package/dist/react/components/dialog/index.cjs.js.map +1 -0
- package/dist/react/components/dialog/index.esm.js +270 -0
- package/dist/react/components/dialog/index.esm.js.map +1 -0
- package/dist/react/components/heading/index.cjs.js +60 -0
- package/dist/react/components/heading/index.cjs.js.map +1 -0
- package/dist/react/components/heading/index.esm.js +58 -0
- package/dist/react/components/heading/index.esm.js.map +1 -0
- package/dist/react/components/icons/index.cjs.js +1173 -0
- package/dist/react/components/icons/index.cjs.js.map +1 -0
- package/dist/react/components/icons/index.d.ts +2 -0
- package/dist/react/components/icons/index.esm.js +1128 -0
- package/dist/react/components/icons/index.esm.js.map +1 -0
- package/dist/react/components/identifier/index.cjs.js +286 -0
- package/dist/react/components/identifier/index.cjs.js.map +1 -0
- package/dist/react/components/identifier/index.esm.js +282 -0
- package/dist/react/components/identifier/index.esm.js.map +1 -0
- package/dist/react/components/index.cjs.js +101 -0
- package/dist/react/components/index.cjs.js.map +1 -0
- package/dist/react/components/index.d.ts +1 -1
- package/dist/react/components/index.esm.js +29 -0
- package/dist/react/components/index.esm.js.map +1 -0
- package/dist/react/components/input/index.cjs.js +237 -0
- package/dist/react/components/input/index.cjs.js.map +1 -0
- package/dist/react/components/input/index.esm.js +232 -0
- package/dist/react/components/input/index.esm.js.map +1 -0
- package/dist/react/components/list/index.cjs.js +49 -0
- package/dist/react/components/list/index.cjs.js.map +1 -0
- package/dist/react/components/list/index.esm.js +47 -0
- package/dist/react/components/list/index.esm.js.map +1 -0
- package/dist/react/components/notActive/index.cjs.js +40 -0
- package/dist/react/components/notActive/index.cjs.js.map +1 -0
- package/dist/react/components/notActive/index.esm.js +38 -0
- package/dist/react/components/notActive/index.esm.js.map +1 -0
- package/dist/react/components/overlayMenu/index.cjs.js +425 -0
- package/dist/react/components/overlayMenu/index.cjs.js.map +1 -0
- package/dist/react/components/overlayMenu/index.esm.js +420 -0
- package/dist/react/components/overlayMenu/index.esm.js.map +1 -0
- package/dist/react/components/overlaySelect/index.cjs.js +345 -0
- package/dist/react/components/overlaySelect/index.cjs.js.map +1 -0
- package/dist/react/components/overlaySelect/index.esm.js +340 -0
- package/dist/react/components/overlaySelect/index.esm.js.map +1 -0
- package/dist/react/components/progressStepBar/index.cjs.js +49 -0
- package/dist/react/components/progressStepBar/index.cjs.js.map +1 -0
- package/dist/react/components/progressStepBar/index.d.ts +2 -1
- package/dist/react/components/progressStepBar/index.esm.js +47 -0
- package/dist/react/components/progressStepBar/index.esm.js.map +1 -0
- package/dist/react/components/select/index.cjs.js +236 -0
- package/dist/react/components/select/index.cjs.js.map +1 -0
- package/dist/react/components/select/index.esm.js +212 -0
- package/dist/react/components/select/index.esm.js.map +1 -0
- package/dist/react/components/switch/index.cjs.js +184 -0
- package/dist/react/components/switch/index.cjs.js.map +1 -0
- package/dist/react/components/switch/index.esm.js +179 -0
- package/dist/react/components/switch/index.esm.js.map +1 -0
- package/dist/react/components/tabs/index.cjs.js +178 -0
- package/dist/react/components/tabs/index.cjs.js.map +1 -0
- package/dist/react/components/tabs/index.esm.js +154 -0
- package/dist/react/components/tabs/index.esm.js.map +1 -0
- package/dist/react/components/text/index.cjs.js +120 -0
- package/dist/react/components/text/index.cjs.js.map +1 -0
- package/dist/react/components/text/index.esm.js +115 -0
- package/dist/react/components/text/index.esm.js.map +1 -0
- package/dist/react/components/textarea/index.cjs.js +256 -0
- package/dist/react/components/textarea/index.cjs.js.map +1 -0
- package/dist/react/components/textarea/index.esm.js +251 -0
- package/dist/react/components/textarea/index.esm.js.map +1 -0
- package/dist/react/components/timeDelta/index.cjs.js +93 -0
- package/dist/react/components/timeDelta/index.cjs.js.map +1 -0
- package/dist/react/components/timeDelta/index.d.ts +1 -1
- package/dist/react/components/timeDelta/index.esm.js +88 -0
- package/dist/react/components/timeDelta/index.esm.js.map +1 -0
- package/dist/react/components/transactionStatusIcon/index.cjs.js +59 -0
- package/dist/react/components/transactionStatusIcon/index.cjs.js.map +1 -0
- package/dist/react/components/transactionStatusIcon/index.esm.js +54 -0
- package/dist/react/components/transactionStatusIcon/index.esm.js.map +1 -0
- package/dist/react/components/valueCard/index.cjs.js +176 -0
- package/dist/react/components/valueCard/index.cjs.js.map +1 -0
- package/dist/react/components/valueCard/index.d.ts +1 -1
- package/dist/react/components/valueCard/index.esm.js +171 -0
- package/dist/react/components/valueCard/index.esm.js.map +1 -0
- package/dist/react/contexts/ThemeContext.cjs.js +79 -0
- package/dist/react/contexts/ThemeContext.cjs.js.map +1 -0
- package/dist/react/contexts/ThemeContext.esm.js +76 -0
- package/dist/react/contexts/ThemeContext.esm.js.map +1 -0
- package/dist/react/contexts/index.cjs.js +11 -0
- package/dist/react/contexts/index.cjs.js.map +1 -0
- package/dist/react/contexts/index.esm.js +4 -0
- package/dist/react/contexts/index.esm.js.map +1 -0
- package/dist/react/hooks/useDebounce.cjs.js +83 -0
- package/dist/react/hooks/useDebounce.cjs.js.map +1 -0
- package/dist/react/hooks/useDebounce.esm.js +78 -0
- package/dist/react/hooks/useDebounce.esm.js.map +1 -0
- package/dist/react/index.cjs.js +99 -12811
- package/dist/react/index.cjs.js.map +1 -1
- package/dist/react/index.d.ts +1 -1
- package/dist/react/index.esm.js +27 -12725
- package/dist/react/index.esm.js.map +1 -1
- package/dist/react/shared/utils/datetime.cjs.js +59 -0
- package/dist/react/shared/utils/datetime.cjs.js.map +1 -0
- package/dist/react/shared/utils/datetime.esm.js +57 -0
- package/dist/react/shared/utils/datetime.esm.js.map +1 -0
- package/dist/react/utils/copyToClipboard.cjs.js +31 -0
- package/dist/react/utils/copyToClipboard.cjs.js.map +1 -0
- package/dist/react/utils/copyToClipboard.esm.js +26 -0
- package/dist/react/utils/copyToClipboard.esm.js.map +1 -0
- package/dist/react/utils/index.d.ts +1 -1
- package/dist/react-native/components/avatar/index.d.ts +26 -0
- package/dist/react-native/components/avatar/index.web.d.ts +24 -0
- package/dist/react-native/components/badge/index.d.ts +51 -0
- package/dist/react-native/components/bigNumber/index.d.ts +26 -0
- package/dist/react-native/components/button/index.d.ts +39 -0
- package/dist/react-native/components/copyButton/index.d.ts +22 -0
- package/dist/react-native/components/copyButton/index.web.d.ts +20 -0
- package/dist/react-native/components/dashLogo/index.d.ts +30 -0
- package/dist/react-native/components/heading/index.d.ts +25 -0
- package/dist/react-native/components/icons/index.d.ts +43 -0
- package/dist/react-native/components/identifier/index.d.ts +47 -0
- package/dist/react-native/components/index.d.ts +15 -0
- package/dist/react-native/components/input/index.d.ts +53 -0
- package/dist/react-native/components/notActive/index.d.ts +16 -0
- package/dist/react-native/components/tabs/index.d.ts +50 -0
- package/dist/react-native/components/text/index.d.ts +28 -0
- package/dist/react-native/components/transactionStatusIcon/index.d.ts +24 -0
- package/dist/react-native/components/valueCard/index.d.ts +43 -0
- package/dist/react-native/hooks/index.d.ts +1 -0
- package/dist/react-native/hooks/useDebounce.d.ts +43 -0
- package/dist/react-native/index.cjs.js +2856 -0
- package/dist/react-native/index.cjs.js.map +1 -0
- package/dist/react-native/index.d.ts +4 -0
- package/dist/react-native/index.esm.js +2808 -0
- package/dist/react-native/index.esm.js.map +1 -0
- package/dist/react-native/styles/index.d.ts +11 -0
- package/dist/react-native/styles/tokens.d.ts +308 -0
- package/dist/react-native/styles/utils.d.ts +65 -0
- package/dist/react-native/utils/clipboard.d.ts +27 -0
- package/dist/react-native/utils/index.d.ts +2 -0
- package/dist/react-native/utils/tw.d.ts +7 -0
- package/dist/shared/constants/colors.d.ts +25 -0
- package/dist/shared/constants/index.d.ts +2 -0
- package/dist/shared/constants/sizes.d.ts +49 -0
- package/dist/shared/index.cjs.js +171 -0
- package/dist/shared/index.cjs.js.map +1 -0
- package/dist/shared/index.d.ts +3 -0
- package/dist/shared/index.esm.js +161 -0
- package/dist/shared/index.esm.js.map +1 -0
- package/dist/shared/types/common.d.ts +33 -0
- package/dist/shared/types/index.d.ts +1 -0
- package/dist/shared/utils/index.d.ts +1 -0
- package/dist/styles.css +1 -1
- package/package.json +50 -8
- /package/dist/{react → shared}/utils/datetime.d.ts +0 -0
|
@@ -0,0 +1,282 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
4
|
+
import { useRef, useState, useCallback, useEffect } from 'react';
|
|
5
|
+
import { cva } from 'class-variance-authority';
|
|
6
|
+
import useResizeObserver from '@react-hook/resize-observer';
|
|
7
|
+
import useDebounce from '../../hooks/useDebounce.esm.js';
|
|
8
|
+
import { NotActive } from '../notActive/index.esm.js';
|
|
9
|
+
import { CopyButton } from '../copyButton/index.esm.js';
|
|
10
|
+
import { useTheme } from '../../contexts/ThemeContext.esm.js';
|
|
11
|
+
import { Avatar } from '../avatar/index.esm.js';
|
|
12
|
+
|
|
13
|
+
/** CVA for the root container, now with light/dark theme */
|
|
14
|
+
const identifier = cva('flex items-center font-dash-grotesque text-sm font-normal break-all', {
|
|
15
|
+
variants: {
|
|
16
|
+
theme: {
|
|
17
|
+
light: 'text-gray-900',
|
|
18
|
+
dark: 'text-white'
|
|
19
|
+
},
|
|
20
|
+
ellipsis: {
|
|
21
|
+
false: '',
|
|
22
|
+
true: 'overflow-hidden'
|
|
23
|
+
},
|
|
24
|
+
highlight: {
|
|
25
|
+
default: '',
|
|
26
|
+
dim: '',
|
|
27
|
+
highlight: '',
|
|
28
|
+
first: '',
|
|
29
|
+
last: '',
|
|
30
|
+
both: ''
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
defaultVariants: {
|
|
34
|
+
theme: 'light',
|
|
35
|
+
ellipsis: false,
|
|
36
|
+
highlight: 'default'
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
/** CVA for each symbol span: inherits root color or dims */
|
|
40
|
+
const symbol = cva('flex-1', {
|
|
41
|
+
variants: {
|
|
42
|
+
dim: {
|
|
43
|
+
false: 'text-inherit',
|
|
44
|
+
true: 'text-gray-500'
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
defaultVariants: {
|
|
48
|
+
dim: false
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
/** Highlight‐modes config */
|
|
52
|
+
const highlightModes = {
|
|
53
|
+
default: {
|
|
54
|
+
first: true,
|
|
55
|
+
middle: false,
|
|
56
|
+
last: true
|
|
57
|
+
},
|
|
58
|
+
dim: {
|
|
59
|
+
first: false,
|
|
60
|
+
middle: false,
|
|
61
|
+
last: false
|
|
62
|
+
},
|
|
63
|
+
highlight: {
|
|
64
|
+
first: true,
|
|
65
|
+
middle: true,
|
|
66
|
+
last: true
|
|
67
|
+
},
|
|
68
|
+
first: {
|
|
69
|
+
first: true,
|
|
70
|
+
middle: false,
|
|
71
|
+
last: false
|
|
72
|
+
},
|
|
73
|
+
last: {
|
|
74
|
+
first: false,
|
|
75
|
+
middle: false,
|
|
76
|
+
last: true
|
|
77
|
+
},
|
|
78
|
+
both: {
|
|
79
|
+
first: true,
|
|
80
|
+
middle: false,
|
|
81
|
+
last: true
|
|
82
|
+
}
|
|
83
|
+
};
|
|
84
|
+
const HighlightedID = ({
|
|
85
|
+
children,
|
|
86
|
+
mode
|
|
87
|
+
}) => {
|
|
88
|
+
if (children == null || children === '') return jsx(NotActive, {});
|
|
89
|
+
const text = String(children);
|
|
90
|
+
const count = 5;
|
|
91
|
+
const first = text.slice(0, count);
|
|
92
|
+
const middle = text.slice(count, text.length - count);
|
|
93
|
+
const last = text.slice(-5);
|
|
94
|
+
const cfg = highlightModes[mode];
|
|
95
|
+
return jsxs(Fragment, {
|
|
96
|
+
children: [jsx("span", {
|
|
97
|
+
className: symbol({
|
|
98
|
+
dim: !cfg.first
|
|
99
|
+
}),
|
|
100
|
+
children: first
|
|
101
|
+
}), jsx("span", {
|
|
102
|
+
className: symbol({
|
|
103
|
+
dim: !cfg.middle
|
|
104
|
+
}),
|
|
105
|
+
children: middle
|
|
106
|
+
}), jsx("span", {
|
|
107
|
+
className: symbol({
|
|
108
|
+
dim: !cfg.last
|
|
109
|
+
}),
|
|
110
|
+
children: last
|
|
111
|
+
})]
|
|
112
|
+
});
|
|
113
|
+
};
|
|
114
|
+
const MiddleEllipsisText = ({
|
|
115
|
+
children,
|
|
116
|
+
edgeChars
|
|
117
|
+
}) => {
|
|
118
|
+
if (children == null || children === '') return jsx(NotActive, {});
|
|
119
|
+
const text = String(children);
|
|
120
|
+
if (text.length <= edgeChars * 2) {
|
|
121
|
+
return jsx(Fragment, {
|
|
122
|
+
children: text
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
const first = text.slice(0, edgeChars);
|
|
126
|
+
const last = text.slice(-edgeChars);
|
|
127
|
+
return jsxs(Fragment, {
|
|
128
|
+
children: [jsx("span", {
|
|
129
|
+
children: first
|
|
130
|
+
}), jsx("span", {
|
|
131
|
+
className: 'opacity-50',
|
|
132
|
+
children: "\u2026"
|
|
133
|
+
}), jsx("span", {
|
|
134
|
+
children: last
|
|
135
|
+
})]
|
|
136
|
+
});
|
|
137
|
+
};
|
|
138
|
+
/**
|
|
139
|
+
* Identifier component shows an ID string with optional highlighting, avatar,
|
|
140
|
+
* copy button, dynamic line adjustment, and multi-line clamp.
|
|
141
|
+
*/
|
|
142
|
+
const Identifier = ({
|
|
143
|
+
children,
|
|
144
|
+
ellipsis = false,
|
|
145
|
+
highlight = undefined,
|
|
146
|
+
avatar = false,
|
|
147
|
+
copyButton = false,
|
|
148
|
+
linesAdjustment = true,
|
|
149
|
+
maxLines = 0,
|
|
150
|
+
className,
|
|
151
|
+
middleEllipsis = false,
|
|
152
|
+
edgeChars = 4
|
|
153
|
+
}) => {
|
|
154
|
+
const {
|
|
155
|
+
theme
|
|
156
|
+
} = useTheme();
|
|
157
|
+
const symbolsRef = useRef(null);
|
|
158
|
+
const [containerWidth, setContainerWidth] = useState(0);
|
|
159
|
+
const [charWidth, setCharWidth] = useState(0);
|
|
160
|
+
const [linesMaxWidth, setLinesMaxWidth] = useState('none');
|
|
161
|
+
const [widthCounted, setWidthCounted] = useState(false);
|
|
162
|
+
const prevWinRef = useRef(null);
|
|
163
|
+
const [winWidth, setWinWidth] = useState(0);
|
|
164
|
+
const {
|
|
165
|
+
debouncedValue: debouncedWin,
|
|
166
|
+
cancel: cancelDebounce
|
|
167
|
+
} = useDebounce(winWidth, {
|
|
168
|
+
delay: 500,
|
|
169
|
+
callback: newWidth => {
|
|
170
|
+
// Log window width changes for debugging (optional)
|
|
171
|
+
// console.log('Window width debounced to:', newWidth)
|
|
172
|
+
}
|
|
173
|
+
});
|
|
174
|
+
if ((ellipsis !== null && ellipsis !== void 0 ? ellipsis : false) || maxLines > 0 || middleEllipsis) linesAdjustment = false;
|
|
175
|
+
useResizeObserver(symbolsRef, entry => {
|
|
176
|
+
setContainerWidth(entry.contentRect.width);
|
|
177
|
+
});
|
|
178
|
+
const measureChar = useCallback(() => {
|
|
179
|
+
if (symbolsRef.current == null || !linesAdjustment) return 0;
|
|
180
|
+
const temp = document.createElement('span');
|
|
181
|
+
const styles = getComputedStyle(symbolsRef.current);
|
|
182
|
+
temp.style.position = 'absolute';
|
|
183
|
+
temp.style.visibility = 'hidden';
|
|
184
|
+
temp.style.fontFamily = styles.fontFamily;
|
|
185
|
+
temp.style.fontSize = styles.fontSize;
|
|
186
|
+
temp.style.fontWeight = styles.fontWeight;
|
|
187
|
+
temp.textContent = 'A';
|
|
188
|
+
document.body.appendChild(temp);
|
|
189
|
+
const w = temp.getBoundingClientRect().width;
|
|
190
|
+
document.body.removeChild(temp);
|
|
191
|
+
return w > 0 ? w : 0;
|
|
192
|
+
}, [linesAdjustment]);
|
|
193
|
+
useEffect(() => {
|
|
194
|
+
if (symbolsRef.current == null || !linesAdjustment) return;
|
|
195
|
+
const measuredWidth = measureChar();
|
|
196
|
+
setCharWidth(measuredWidth > 0 ? measuredWidth : 0);
|
|
197
|
+
}, [measureChar]);
|
|
198
|
+
const updateSize = () => {
|
|
199
|
+
var _a;
|
|
200
|
+
if (widthCounted) return;
|
|
201
|
+
const len = (_a = children === null || children === void 0 ? void 0 : children.length) !== null && _a !== void 0 ? _a : 0;
|
|
202
|
+
if (charWidth === 0 || containerWidth === 0 || len === 0) {
|
|
203
|
+
setLinesMaxWidth('none');
|
|
204
|
+
return;
|
|
205
|
+
}
|
|
206
|
+
const spacingF = 0.1625;
|
|
207
|
+
const perLine = Math.floor(containerWidth / charWidth + spacingF);
|
|
208
|
+
if (perLine <= len / 8 || perLine > len) {
|
|
209
|
+
setLinesMaxWidth('none');
|
|
210
|
+
return;
|
|
211
|
+
}
|
|
212
|
+
const lines = Math.max(Math.ceil(len / perLine), 1);
|
|
213
|
+
const adjust = 0.7;
|
|
214
|
+
const width = charWidth * (len / lines + adjust);
|
|
215
|
+
setLinesMaxWidth(`${width}px`);
|
|
216
|
+
setWidthCounted(true);
|
|
217
|
+
};
|
|
218
|
+
useEffect(() => {
|
|
219
|
+
if (!linesAdjustment) return;
|
|
220
|
+
if (debouncedWin !== prevWinRef.current || !widthCounted || prevWinRef.current === null) {
|
|
221
|
+
updateSize();
|
|
222
|
+
}
|
|
223
|
+
prevWinRef.current = debouncedWin;
|
|
224
|
+
}, [charWidth, containerWidth, debouncedWin]);
|
|
225
|
+
useEffect(() => {
|
|
226
|
+
if (!linesAdjustment) return;
|
|
227
|
+
let prev = window.innerWidth;
|
|
228
|
+
const handler = () => {
|
|
229
|
+
const cur = window.innerWidth;
|
|
230
|
+
if (cur !== prev) {
|
|
231
|
+
setWinWidth(cur);
|
|
232
|
+
setWidthCounted(false);
|
|
233
|
+
prev = cur;
|
|
234
|
+
}
|
|
235
|
+
};
|
|
236
|
+
window.addEventListener('resize', handler);
|
|
237
|
+
return () => {
|
|
238
|
+
window.removeEventListener('resize', handler);
|
|
239
|
+
// Cancel pending debounce on unmount
|
|
240
|
+
cancelDebounce();
|
|
241
|
+
};
|
|
242
|
+
}, [cancelDebounce]);
|
|
243
|
+
const rootClass = identifier({
|
|
244
|
+
theme,
|
|
245
|
+
ellipsis,
|
|
246
|
+
highlight
|
|
247
|
+
}) + (className != null && className !== '' ? ` ${className}` : '');
|
|
248
|
+
const clampStyles = maxLines > 0 ? {
|
|
249
|
+
display: '-webkit-box',
|
|
250
|
+
WebkitLineClamp: maxLines,
|
|
251
|
+
WebkitBoxOrient: 'vertical',
|
|
252
|
+
overflow: 'hidden',
|
|
253
|
+
textOverflow: 'ellipsis'
|
|
254
|
+
} : {};
|
|
255
|
+
const symbolContainerClass = ellipsis === true ? 'flex-1 overflow-hidden whitespace-nowrap text-ellipsis' : 'flex-1 leading-[1rem]';
|
|
256
|
+
return jsxs("div", {
|
|
257
|
+
className: rootClass,
|
|
258
|
+
children: [(avatar !== null && avatar !== void 0 ? avatar : false) && children != null && children !== '' && jsx(Avatar, {
|
|
259
|
+
username: children,
|
|
260
|
+
className: 'w-6 h-6 mr-2 flex-shrink-0'
|
|
261
|
+
}), jsx("div", {
|
|
262
|
+
ref: symbolsRef,
|
|
263
|
+
className: symbolContainerClass,
|
|
264
|
+
style: Object.assign(Object.assign({}, widthCounted && maxLines === 0 ? {
|
|
265
|
+
maxWidth: linesMaxWidth
|
|
266
|
+
} : {}), clampStyles),
|
|
267
|
+
children: children != null && children !== '' && middleEllipsis ? jsx(MiddleEllipsisText, {
|
|
268
|
+
edgeChars: edgeChars,
|
|
269
|
+
children: children
|
|
270
|
+
}) : children != null && children !== '' && highlight != null ? jsx(HighlightedID, {
|
|
271
|
+
mode: highlight,
|
|
272
|
+
children: children
|
|
273
|
+
}) : children !== null && children !== void 0 ? children : jsx(NotActive, {})
|
|
274
|
+
}), (copyButton !== null && copyButton !== void 0 ? copyButton : false) && children != null && children !== '' && jsx(CopyButton, {
|
|
275
|
+
className: 'ml-3',
|
|
276
|
+
text: children
|
|
277
|
+
})]
|
|
278
|
+
});
|
|
279
|
+
};
|
|
280
|
+
|
|
281
|
+
export { Identifier as default };
|
|
282
|
+
//# sourceMappingURL=index.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.esm.js","sources":["../../../../src/react/components/identifier/index.tsx"],"sourcesContent":["import React, {\n useRef,\n useState,\n useEffect,\n useCallback,\n PropsWithChildren\n} from 'react'\nimport { cva, VariantProps } from 'class-variance-authority'\nimport useResizeObserver from '@react-hook/resize-observer'\nimport useDebounce from '../../hooks/useDebounce'\nimport { NotActive } from '../notActive'\nimport { CopyButton } from '../copyButton'\nimport { useTheme } from '../../contexts/ThemeContext'\nimport { Avatar } from '../avatar'\n\n/** CVA for the root container, now with light/dark theme */\nconst identifier = cva(\n 'flex items-center font-dash-grotesque text-sm font-normal break-all',\n {\n variants: {\n theme: {\n light: 'text-gray-900',\n dark: 'text-white'\n },\n ellipsis: {\n false: '',\n true: 'overflow-hidden'\n },\n highlight: {\n default: '',\n dim: '',\n highlight: '',\n first: '',\n last: '',\n both: ''\n }\n },\n defaultVariants: {\n theme: 'light',\n ellipsis: false,\n highlight: 'default'\n }\n }\n)\ntype IdentifierVariants = VariantProps<typeof identifier>\n\n/** CVA for each symbol span: inherits root color or dims */\nconst symbol = cva('flex-1', {\n variants: {\n dim: {\n false: 'text-inherit',\n true: 'text-gray-500'\n }\n },\n defaultVariants: {\n dim: false\n }\n})\n\n/** Highlight‐modes config */\nconst highlightModes = {\n default: { first: true, middle: false, last: true },\n dim: { first: false, middle: false, last: false },\n highlight: { first: true, middle: true, last: true },\n first: { first: true, middle: false, last: false },\n last: { first: false, middle: false, last: true },\n both: { first: true, middle: false, last: true }\n} as const\ntype HighlightMode = keyof typeof highlightModes\n\nexport interface IdentifierProps extends IdentifierVariants {\n children?: string\n avatar?: boolean\n copyButton?: boolean\n linesAdjustment?: boolean\n maxLines?: number\n className?: string\n middleEllipsis?: boolean\n edgeChars?: number\n}\n\nconst HighlightedID: React.FC<PropsWithChildren<{ mode: HighlightMode }>> = ({ children, mode }) => {\n if (children == null || children === '') return <NotActive />\n const text: string = String(children)\n const count = 5\n const first: string = text.slice(0, count)\n const middle: string = text.slice(count, text.length - count)\n const last: string = text.slice(-count)\n const cfg = highlightModes[mode]\n\n return (\n <>\n <span className={symbol({ dim: !cfg.first })}>{first}</span>\n <span className={symbol({ dim: !cfg.middle })}>{middle}</span>\n <span className={symbol({ dim: !cfg.last })}>{last}</span>\n </>\n )\n}\n\nconst MiddleEllipsisText: React.FC<{ children: string; edgeChars: number }> = ({ children, edgeChars }) => {\n if (children == null || children === '') return <NotActive />\n const text: string = String(children)\n \n if (text.length <= edgeChars * 2) {\n return <>{text}</>\n }\n \n const first: string = text.slice(0, edgeChars)\n const last: string = text.slice(-edgeChars)\n \n return (\n <>\n <span>{first}</span>\n <span className={'opacity-50'}>…</span>\n <span>{last}</span>\n </>\n )\n}\n\n/**\n * Identifier component shows an ID string with optional highlighting, avatar,\n * copy button, dynamic line adjustment, and multi-line clamp.\n */\nconst Identifier: React.FC<IdentifierProps> = ({\n children,\n ellipsis = false,\n highlight = undefined,\n avatar = false,\n copyButton = false,\n linesAdjustment = true,\n maxLines = 0,\n className,\n middleEllipsis = false,\n edgeChars = 4\n}) => {\n const { theme } = useTheme()\n const symbolsRef = useRef<HTMLDivElement>(null)\n const [containerWidth, setContainerWidth] = useState(0)\n const [charWidth, setCharWidth] = useState(0)\n const [linesMaxWidth, setLinesMaxWidth] = useState<'none' | string>('none')\n const [widthCounted, setWidthCounted] = useState(false)\n const prevWinRef = useRef<number | null>(null)\n const [winWidth, setWinWidth] = useState(0)\n const { debouncedValue: debouncedWin, cancel: cancelDebounce } = useDebounce(winWidth, {\n delay: 500,\n callback: (newWidth) => {\n // Log window width changes for debugging (optional)\n // console.log('Window width debounced to:', newWidth)\n }\n })\n\n if ((ellipsis ?? false) || maxLines > 0 || middleEllipsis) linesAdjustment = false\n\n useResizeObserver(symbolsRef, entry => {\n setContainerWidth(entry.contentRect.width)\n })\n\n const measureChar = useCallback((): number => {\n if ((symbolsRef.current == null) || !linesAdjustment) return 0\n const temp = document.createElement('span')\n const styles = getComputedStyle(symbolsRef.current)\n temp.style.position = 'absolute'\n temp.style.visibility = 'hidden'\n temp.style.fontFamily = styles.fontFamily\n temp.style.fontSize = styles.fontSize\n temp.style.fontWeight = styles.fontWeight\n temp.textContent = 'A'\n document.body.appendChild(temp)\n const w = temp.getBoundingClientRect().width\n document.body.removeChild(temp)\n return w > 0 ? w : 0\n }, [linesAdjustment])\n\n useEffect(() => {\n if ((symbolsRef.current == null) || !linesAdjustment) return\n const measuredWidth = measureChar()\n setCharWidth(measuredWidth > 0 ? measuredWidth : 0)\n }, [measureChar])\n\n const updateSize = (): void => {\n if (widthCounted) return\n const len = children?.length ?? 0\n if (charWidth === 0 || containerWidth === 0 || len === 0) {\n setLinesMaxWidth('none')\n return\n }\n const spacingF = 0.1625\n const perLine = Math.floor(containerWidth / charWidth + spacingF)\n if (perLine <= len / 8 || perLine > len) {\n setLinesMaxWidth('none')\n return\n }\n const lines = Math.max(Math.ceil(len / perLine), 1)\n const adjust = 0.7\n const width = charWidth * (len / lines + adjust)\n setLinesMaxWidth(`${width}px`)\n setWidthCounted(true)\n }\n\n useEffect(() => {\n if (!linesAdjustment) return\n if (\n debouncedWin !== prevWinRef.current ||\n !widthCounted ||\n prevWinRef.current === null\n ) {\n updateSize()\n }\n prevWinRef.current = debouncedWin\n }, [charWidth, containerWidth, debouncedWin])\n\n useEffect(() => {\n if (!linesAdjustment) return\n let prev = window.innerWidth\n const handler = (): void => {\n const cur = window.innerWidth\n if (cur !== prev) {\n setWinWidth(cur)\n setWidthCounted(false)\n prev = cur\n }\n }\n window.addEventListener('resize', handler)\n return () => {\n window.removeEventListener('resize', handler)\n // Cancel pending debounce on unmount\n cancelDebounce()\n }\n }, [cancelDebounce])\n\n const rootClass =\n identifier({ theme, ellipsis, highlight }) +\n (className != null && className !== '' ? ` ${className}` : '')\n\n const clampStyles: React.CSSProperties = maxLines > 0\n ? {\n display: '-webkit-box',\n WebkitLineClamp: maxLines,\n WebkitBoxOrient: 'vertical' as any,\n overflow: 'hidden',\n textOverflow: 'ellipsis'\n }\n : {}\n\n const symbolContainerClass = ellipsis === true\n ? 'flex-1 overflow-hidden whitespace-nowrap text-ellipsis'\n : 'flex-1 leading-[1rem]'\n\n return (\n <div className={rootClass}>\n {(avatar ?? false) && children != null && children !== '' && (\n <Avatar \n username={children} \n className='w-6 h-6 mr-2 flex-shrink-0' \n />\n )}\n <div\n ref={symbolsRef}\n className={symbolContainerClass}\n style={{\n ...(widthCounted && maxLines === 0 ? { maxWidth: linesMaxWidth } : {}),\n ...clampStyles\n }}\n >\n {children != null && children !== '' && middleEllipsis\n ? <MiddleEllipsisText edgeChars={edgeChars}>{children}</MiddleEllipsisText>\n : children != null && children !== '' && highlight != null\n ? <HighlightedID mode={highlight}>{children}</HighlightedID>\n : (children ?? <NotActive />)}\n </div>\n {(copyButton ?? false) && children != null && children !== '' && (\n <CopyButton className='ml-3' text={children} />\n )}\n </div>\n )\n}\n\nexport default Identifier "],"names":["identifier","cva","variants","theme","light","dark","ellipsis","false","true","highlight","default","dim","first","last","both","defaultVariants","symbol","highlightModes","middle","HighlightedID","children","mode","_jsx","NotActive","text","String","count","slice","length","cfg","_jsxs","_Fragment","className","MiddleEllipsisText","edgeChars","Identifier","undefined","avatar","copyButton","linesAdjustment","maxLines","middleEllipsis","useTheme","symbolsRef","useRef","containerWidth","setContainerWidth","useState","charWidth","setCharWidth","linesMaxWidth","setLinesMaxWidth","widthCounted","setWidthCounted","prevWinRef","winWidth","setWinWidth","debouncedValue","debouncedWin","cancel","cancelDebounce","useDebounce","delay","callback","newWidth","useResizeObserver","entry","contentRect","width","measureChar","useCallback","current","temp","document","createElement","styles","getComputedStyle","style","position","visibility","fontFamily","fontSize","fontWeight","textContent","body","appendChild","w","getBoundingClientRect","removeChild","useEffect","measuredWidth","updateSize","len","_a","spacingF","perLine","Math","floor","lines","max","ceil","adjust","prev","window","innerWidth","handler","cur","addEventListener","removeEventListener","rootClass","clampStyles","display","WebkitLineClamp","WebkitBoxOrient","overflow","textOverflow","symbolContainerClass","Avatar","username","ref","Object","assign","maxWidth","CopyButton"],"mappings":";;;;;;;;;;;;AAeA;AACA,MAAMA,UAAU,GAAGC,GAAG,CACpB,qEAAqE,EACrE;AACEC,EAAAA,QAAQ,EAAE;AACRC,IAAAA,KAAK,EAAE;AACLC,MAAAA,KAAK,EAAE,eAAe;AACtBC,MAAAA,IAAI,EAAE;KACP;AACDC,IAAAA,QAAQ,EAAE;AACRC,MAAAA,KAAK,EAAE,EAAE;AACTC,MAAAA,IAAI,EAAE;KACP;AACDC,IAAAA,SAAS,EAAE;AACTC,MAAAA,OAAO,EAAE,EAAE;AACXC,MAAAA,GAAG,EAAE,EAAE;AACPF,MAAAA,SAAS,EAAE,EAAE;AACbG,MAAAA,KAAK,EAAE,EAAE;AACTC,MAAAA,IAAI,EAAE,EAAE;AACRC,MAAAA,IAAI,EAAE;AACP;GACF;AACDC,EAAAA,eAAe,EAAE;AACfZ,IAAAA,KAAK,EAAE,OAAO;AACdG,IAAAA,QAAQ,EAAE,KAAK;AACfG,IAAAA,SAAS,EAAE;AACZ;AACF,CAAA,CACF;AAGD;AACA,MAAMO,MAAM,GAAGf,GAAG,CAAC,QAAQ,EAAE;AAC3BC,EAAAA,QAAQ,EAAE;AACRS,IAAAA,GAAG,EAAE;AACHJ,MAAAA,KAAK,EAAE,cAAc;AACrBC,MAAAA,IAAI,EAAE;AACP;GACF;AACDO,EAAAA,eAAe,EAAE;AACfJ,IAAAA,GAAG,EAAE;AACN;AACF,CAAA,CAAC;AAEF;AACA,MAAMM,cAAc,GAAG;AACrBP,EAAAA,OAAO,EAAE;AAAEE,IAAAA,KAAK,EAAE,IAAI;AAAEM,IAAAA,MAAM,EAAE,KAAK;AAAEL,IAAAA,IAAI,EAAE;GAAM;AACnDF,EAAAA,GAAG,EAAE;AAAEC,IAAAA,KAAK,EAAE,KAAK;AAAEM,IAAAA,MAAM,EAAE,KAAK;AAAEL,IAAAA,IAAI,EAAE;GAAO;AACjDJ,EAAAA,SAAS,EAAE;AAAEG,IAAAA,KAAK,EAAE,IAAI;AAAEM,IAAAA,MAAM,EAAE,IAAI;AAAEL,IAAAA,IAAI,EAAE;GAAM;AACpDD,EAAAA,KAAK,EAAE;AAAEA,IAAAA,KAAK,EAAE,IAAI;AAAEM,IAAAA,MAAM,EAAE,KAAK;AAAEL,IAAAA,IAAI,EAAE;GAAO;AAClDA,EAAAA,IAAI,EAAE;AAAED,IAAAA,KAAK,EAAE,KAAK;AAAEM,IAAAA,MAAM,EAAE,KAAK;AAAEL,IAAAA,IAAI,EAAE;GAAM;AACjDC,EAAAA,IAAI,EAAE;AAAEF,IAAAA,KAAK,EAAE,IAAI;AAAEM,IAAAA,MAAM,EAAE,KAAK;AAAEL,IAAAA,IAAI,EAAE;AAAM;CACxC;AAcV,MAAMM,aAAa,GAAyDA,CAAC;EAAEC,QAAQ;AAAEC,EAAAA;AAAM,CAAA,KAAI;AACjG,EAAA,IAAID,QAAQ,IAAI,IAAI,IAAIA,QAAQ,KAAK,EAAE,EAAE,OAAOE,GAAA,CAACC,SAAS,EAAA,EAAA,CAAG;AAC7D,EAAA,MAAMC,IAAI,GAAWC,MAAM,CAACL,QAAQ,CAAC;EACrC,MAAMM,KAAK,GAAG,CAAC;EACf,MAAMd,KAAK,GAAWY,IAAI,CAACG,KAAK,CAAC,CAAC,EAAED,KAAK,CAAC;AAC1C,EAAA,MAAMR,MAAM,GAAWM,IAAI,CAACG,KAAK,CAACD,KAAK,EAAEF,IAAI,CAACI,MAAM,GAAGF,KAAK,CAAC;EAC7D,MAAMb,IAAI,GAAWW,IAAI,CAACG,KAAK,CAAC,EAAM,CAAC;AACvC,EAAA,MAAME,GAAG,GAAGZ,cAAc,CAACI,IAAI,CAAC;EAEhC,OACES,IACE,CAAAC,QAAA,EAAA;AAAAX,IAAAA,QAAA,EAAA,CAAAE,GAAA,CAAA,MAAA,EAAA;MAAMU,SAAS,EAAEhB,MAAM,CAAC;QAAEL,GAAG,EAAE,CAACkB,GAAG,CAACjB;AAAO,OAAA,CAAC;AAAGQ,MAAAA,QAAA,EAAAR;AAAa,KAAA,CAAA,EAC5DU,GAAM,CAAA,MAAA,EAAA;MAAAU,SAAS,EAAEhB,MAAM,CAAC;QAAEL,GAAG,EAAE,CAACkB,GAAG,CAACX;AAAM,OAAE,CAAC;AAAAE,MAAAA,QAAA,EAAGF;AAAM,KAAA,CAAQ,EAC9DI,GAAA,CAAA,MAAA,EAAA;MAAMU,SAAS,EAAEhB,MAAM,CAAC;QAAEL,GAAG,EAAE,CAACkB,GAAG,CAAChB;AAAI,OAAE,CAAC;AAAAO,MAAAA,QAAA,EAAGP;AAAI,KAAA,CAAQ;AACzD,GAAA,CAAA;AAEP,CAAC;AAED,MAAMoB,kBAAkB,GAAsDA,CAAC;EAAEb,QAAQ;AAAEc,EAAAA;AAAW,CAAA,KAAI;AACxG,EAAA,IAAId,QAAQ,IAAI,IAAI,IAAIA,QAAQ,KAAK,EAAE,EAAE,OAAOE,GAAA,CAACC,SAAS,EAAA,EAAA,CAAG;AAC7D,EAAA,MAAMC,IAAI,GAAWC,MAAM,CAACL,QAAQ,CAAC;AAErC,EAAA,IAAII,IAAI,CAACI,MAAM,IAAIM,SAAS,GAAG,CAAC,EAAE;IAChC,OAAOZ,GAAA,CAAAS,QAAA,EAAA;AAAAX,MAAAA,QAAA,EAAGI;AAAI,KAAA,CAAI;AACpB;EAEA,MAAMZ,KAAK,GAAWY,IAAI,CAACG,KAAK,CAAC,CAAC,EAAEO,SAAS,CAAC;EAC9C,MAAMrB,IAAI,GAAWW,IAAI,CAACG,KAAK,CAAC,CAACO,SAAS,CAAC;EAE3C,OACEJ,IACE,CAAAC,QAAA,EAAA;AAAAX,IAAAA,QAAA,EAAA,CAAAE,GAAA,CAAA,MAAA,EAAA;AAAAF,MAAAA,QAAA,EAAOR;AAAK,KAAA,CAAQ,EACpBU,GAAM,CAAA,MAAA,EAAA;AAAAU,MAAAA,SAAS,EAAE,YAAY;;MAAiB,EAC9CV,GAAA,CAAA,MAAA,EAAA;AAAAF,MAAAA,QAAA,EAAOP;AAAY,KAAA,CAAA;AAAA,GAAA,CAClB;AAEP,CAAC;AAED;;;AAGG;AACGsB,MAAAA,UAAU,GAA8BA,CAAC;EAC7Cf,QAAQ;AACRd,EAAAA,QAAQ,GAAG,KAAK;AAChBG,EAAAA,SAAS,GAAG2B,SAAS;AACrBC,EAAAA,MAAM,GAAG,KAAK;AACdC,EAAAA,UAAU,GAAG,KAAK;AAClBC,EAAAA,eAAe,GAAG,IAAI;AACtBC,EAAAA,QAAQ,GAAG,CAAC;EACZR,SAAS;AACTS,EAAAA,cAAc,GAAG,KAAK;AACtBP,EAAAA,SAAS,GAAG;AAAC,CACd,KAAI;EACH,MAAM;AAAE/B,IAAAA;GAAO,GAAGuC,QAAQ,EAAE;AAC5B,EAAA,MAAMC,UAAU,GAAGC,MAAM,CAAiB,IAAI,CAAC;EAC/C,MAAM,CAACC,cAAc,EAAEC,iBAAiB,CAAC,GAAGC,QAAQ,CAAC,CAAC,CAAC;EACvD,MAAM,CAACC,SAAS,EAAEC,YAAY,CAAC,GAAGF,QAAQ,CAAC,CAAC,CAAC;EAC7C,MAAM,CAACG,aAAa,EAAEC,gBAAgB,CAAC,GAAGJ,QAAQ,CAAkB,MAAM,CAAC;EAC3E,MAAM,CAACK,YAAY,EAAEC,eAAe,CAAC,GAAGN,QAAQ,CAAC,KAAK,CAAC;AACvD,EAAA,MAAMO,UAAU,GAAGV,MAAM,CAAgB,IAAI,CAAC;EAC9C,MAAM,CAACW,QAAQ,EAAEC,WAAW,CAAC,GAAGT,QAAQ,CAAC,CAAC,CAAC;EAC3C,MAAM;AAAEU,IAAAA,cAAc,EAAEC,YAAY;AAAEC,IAAAA,MAAM,EAAEC;AAAgB,GAAA,GAAGC,WAAW,CAACN,QAAQ,EAAE;AACrFO,IAAAA,KAAK,EAAE,GAAG;IACVC,QAAQ,EAAGC,QAAQ,IAAI;AACrB;AACA;AAAA;AAEH,GAAA,CAAC;EAEF,IAAI,CAAC1D,QAAQ,KAAR,IAAA,IAAAA,QAAQ,cAARA,QAAQ,GAAI,KAAK,KAAKkC,QAAQ,GAAG,CAAC,IAAIC,cAAc,EAAEF,eAAe,GAAG,KAAK;AAElF0B,EAAAA,iBAAiB,CAACtB,UAAU,EAAEuB,KAAK,IAAG;AACpCpB,IAAAA,iBAAiB,CAACoB,KAAK,CAACC,WAAW,CAACC,KAAK,CAAC;AAC5C,GAAC,CAAC;AAEF,EAAA,MAAMC,WAAW,GAAGC,WAAW,CAAC,MAAa;IAC3C,IAAK3B,UAAU,CAAC4B,OAAO,IAAI,IAAI,IAAK,CAAChC,eAAe,EAAE,OAAO,CAAC;AAC9D,IAAA,MAAMiC,IAAI,GAAGC,QAAQ,CAACC,aAAa,CAAC,MAAM,CAAC;AAC3C,IAAA,MAAMC,MAAM,GAAGC,gBAAgB,CAACjC,UAAU,CAAC4B,OAAO,CAAC;AACnDC,IAAAA,IAAI,CAACK,KAAK,CAACC,QAAQ,GAAG,UAAU;AAChCN,IAAAA,IAAI,CAACK,KAAK,CAACE,UAAU,GAAG,QAAQ;AAChCP,IAAAA,IAAI,CAACK,KAAK,CAACG,UAAU,GAAGL,MAAM,CAACK,UAAU;AACzCR,IAAAA,IAAI,CAACK,KAAK,CAACI,QAAQ,GAAGN,MAAM,CAACM,QAAQ;AACrCT,IAAAA,IAAI,CAACK,KAAK,CAACK,UAAU,GAAGP,MAAM,CAACO,UAAU;IACzCV,IAAI,CAACW,WAAW,GAAG,GAAG;AACtBV,IAAAA,QAAQ,CAACW,IAAI,CAACC,WAAW,CAACb,IAAI,CAAC;IAC/B,MAAMc,CAAC,GAAGd,IAAI,CAACe,qBAAqB,EAAE,CAACnB,KAAK;AAC5CK,IAAAA,QAAQ,CAACW,IAAI,CAACI,WAAW,CAAChB,IAAI,CAAC;AAC/B,IAAA,OAAOc,CAAC,GAAG,CAAC,GAAGA,CAAC,GAAG,CAAC;AACtB,GAAC,EAAE,CAAC/C,eAAe,CAAC,CAAC;AAErBkD,EAAAA,SAAS,CAAC,MAAK;IACb,IAAK9C,UAAU,CAAC4B,OAAO,IAAI,IAAI,IAAK,CAAChC,eAAe,EAAE;AACtD,IAAA,MAAMmD,aAAa,GAAGrB,WAAW,EAAE;IACnCpB,YAAY,CAACyC,aAAa,GAAG,CAAC,GAAGA,aAAa,GAAG,CAAC,CAAC;AACrD,GAAC,EAAE,CAACrB,WAAW,CAAC,CAAC;EAEjB,MAAMsB,UAAU,GAAGA,MAAW;;AAC5B,IAAA,IAAIvC,YAAY,EAAE;AAClB,IAAA,MAAMwC,GAAG,GAAG,CAAAC,EAAA,GAAAzE,QAAQ,KAAR,IAAA,IAAAA,QAAQ,KAAR,MAAA,GAAA,MAAA,GAAAA,QAAQ,CAAEQ,MAAM,MAAI,IAAA,IAAAiE,EAAA,KAAA,MAAA,GAAAA,EAAA,GAAA,CAAC;IACjC,IAAI7C,SAAS,KAAK,CAAC,IAAIH,cAAc,KAAK,CAAC,IAAI+C,GAAG,KAAK,CAAC,EAAE;MACxDzC,gBAAgB,CAAC,MAAM,CAAC;AACxB,MAAA;AACF;IACA,MAAM2C,QAAQ,GAAG,MAAM;IACvB,MAAMC,OAAO,GAAGC,IAAI,CAACC,KAAK,CAACpD,cAAc,GAAGG,SAAS,GAAG8C,QAAQ,CAAC;IACjE,IAAIC,OAAO,IAAIH,GAAG,GAAG,CAAC,IAAIG,OAAO,GAAGH,GAAG,EAAE;MACvCzC,gBAAgB,CAAC,MAAM,CAAC;AACxB,MAAA;AACF;AACA,IAAA,MAAM+C,KAAK,GAAGF,IAAI,CAACG,GAAG,CAACH,IAAI,CAACI,IAAI,CAACR,GAAG,GAAGG,OAAO,CAAC,EAAE,CAAC,CAAC;IACnD,MAAMM,MAAM,GAAG,GAAG;IAClB,MAAMjC,KAAK,GAAGpB,SAAS,IAAI4C,GAAG,GAAGM,KAAK,GAAGG,MAAM,CAAC;AAChDlD,IAAAA,gBAAgB,CAAC,CAAA,EAAGiB,KAAK,CAAA,EAAA,CAAI,CAAC;IAC9Bf,eAAe,CAAC,IAAI,CAAC;GACtB;AAEDoC,EAAAA,SAAS,CAAC,MAAK;IACb,IAAI,CAAClD,eAAe,EAAE;AACtB,IAAA,IACEmB,YAAY,KAAKJ,UAAU,CAACiB,OAAO,IACnC,CAACnB,YAAY,IACbE,UAAU,CAACiB,OAAO,KAAK,IAAI,EAC3B;AACAoB,MAAAA,UAAU,EAAE;AACd;IACArC,UAAU,CAACiB,OAAO,GAAGb,YAAY;GAClC,EAAE,CAACV,SAAS,EAAEH,cAAc,EAAEa,YAAY,CAAC,CAAC;AAE7C+B,EAAAA,SAAS,CAAC,MAAK;IACb,IAAI,CAAClD,eAAe,EAAE;AACtB,IAAA,IAAI+D,IAAI,GAAGC,MAAM,CAACC,UAAU;IAC5B,MAAMC,OAAO,GAAGA,MAAW;AACzB,MAAA,MAAMC,GAAG,GAAGH,MAAM,CAACC,UAAU;MAC7B,IAAIE,GAAG,KAAKJ,IAAI,EAAE;QAChB9C,WAAW,CAACkD,GAAG,CAAC;QAChBrD,eAAe,CAAC,KAAK,CAAC;AACtBiD,QAAAA,IAAI,GAAGI,GAAG;AACZ;KACD;AACDH,IAAAA,MAAM,CAACI,gBAAgB,CAAC,QAAQ,EAAEF,OAAO,CAAC;AAC1C,IAAA,OAAO,MAAK;AACVF,MAAAA,MAAM,CAACK,mBAAmB,CAAC,QAAQ,EAAEH,OAAO,CAAC;AAC7C;AACA7C,MAAAA,cAAc,EAAE;KACjB;AACH,GAAC,EAAE,CAACA,cAAc,CAAC,CAAC;EAEpB,MAAMiD,SAAS,GACb7G,UAAU,CAAC;IAAEG,KAAK;IAAEG,QAAQ;AAAEG,IAAAA;AAAS,GAAE,CAAC,IACzCuB,SAAS,IAAI,IAAI,IAAIA,SAAS,KAAK,EAAE,GAAG,CAAIA,CAAAA,EAAAA,SAAS,CAAE,CAAA,GAAG,EAAE,CAAC;AAEhE,EAAA,MAAM8E,WAAW,GAAwBtE,QAAQ,GAAG,CAAC,GACjD;AACEuE,IAAAA,OAAO,EAAE,aAAa;AACtBC,IAAAA,eAAe,EAAExE,QAAQ;AACzByE,IAAAA,eAAe,EAAE,UAAiB;AAClCC,IAAAA,QAAQ,EAAE,QAAQ;AAClBC,IAAAA,YAAY,EAAE;GACf,GACD,EAAE;EAEN,MAAMC,oBAAoB,GAAG9G,QAAQ,KAAK,IAAI,GAC1C,wDAAwD,GACxD,uBAAuB;EAE3B,OACEwB,IAAK,CAAA,KAAA,EAAA;AAAAE,IAAAA,SAAS,EAAE6E,SAAS;eACtB,CAACxE,MAAM,KAAN,IAAA,IAAAA,MAAM,cAANA,MAAM,GAAI,KAAK,KAAKjB,QAAQ,IAAI,IAAI,IAAIA,QAAQ,KAAK,EAAE,IACvDE,IAAC+F,MAAM,EAAA;AACLC,MAAAA,QAAQ,EAAElG,QAAQ;AAClBY,MAAAA,SAAS,EAAC;AAA4B,KAAA,CAEzC,EACDV,GAAA,CAAA,KAAA,EAAA;AACEiG,MAAAA,GAAG,EAAE5E,UAAU;AACfX,MAAAA,SAAS,EAAEoF,oBAAoB;AAC/BvC,MAAAA,KAAK,EAAA2C,MAAA,CAAAC,MAAA,CAAAD,MAAA,CAAAC,MAAA,CAAA,EAAA,EACCrE,YAAY,IAAIZ,QAAQ,KAAK,CAAC,GAAG;AAAEkF,QAAAA,QAAQ,EAAExE;OAAe,GAAG,EAAG,CACnE,EAAA4D,WAAW,CAGf;AAAA1F,MAAAA,QAAA,EAAAA,QAAQ,IAAI,IAAI,IAAIA,QAAQ,KAAK,EAAE,IAAIqB,cAAc,GAClDnB,IAACW,kBAAkB,EAAA;AAACC,QAAAA,SAAS,EAAEA,SAAS;AAAGd,QAAAA,QAAA,EAAAA;AAA8B,OAAA,CAAA,GACzEA,QAAQ,IAAI,IAAI,IAAIA,QAAQ,KAAK,EAAE,IAAIX,SAAS,IAAI,IAAI,GACxDa,IAACH,aAAa,EAAA;AAACE,QAAAA,IAAI,EAAEZ,SAAS;AAAGW,QAAAA,QAAA,EAAAA;AAAyB,OAAA,CAAA,GACzDA,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAAR,MAAA,GAAAA,QAAQ,GAAIE,GAAC,CAAAC,SAAS;KAAI,CAC3B,EACL,CAACe,UAAU,aAAVA,UAAU,KAAA,MAAA,GAAVA,UAAU,GAAI,KAAK,KAAKlB,QAAQ,IAAI,IAAI,IAAIA,QAAQ,KAAK,EAAE,IAC3DE,GAAA,CAACqG,UAAU,EAAA;AAAC3F,MAAAA,SAAS,EAAC,MAAM;AAACR,MAAAA,IAAI,EAAEJ;AAAY,KAAA,CAChD;AACG,GAAA,CAAA;AAEV;;;;"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
'use strict';
|
|
4
|
+
|
|
5
|
+
var index = require('./accordion/index.cjs.js');
|
|
6
|
+
var index$1 = require('./badge/index.cjs.js');
|
|
7
|
+
var index$2 = require('./button/index.cjs.js');
|
|
8
|
+
var index$3 = require('./input/index.cjs.js');
|
|
9
|
+
var index$4 = require('./textarea/index.cjs.js');
|
|
10
|
+
var index$5 = require('./text/index.cjs.js');
|
|
11
|
+
var index$6 = require('./valueCard/index.cjs.js');
|
|
12
|
+
var index$7 = require('./select/index.cjs.js');
|
|
13
|
+
var index$8 = require('./overlaySelect/index.cjs.js');
|
|
14
|
+
var index$9 = require('./overlayMenu/index.cjs.js');
|
|
15
|
+
var index$a = require('./switch/index.cjs.js');
|
|
16
|
+
var index$b = require('./avatar/index.cjs.js');
|
|
17
|
+
var index$c = require('./list/index.cjs.js');
|
|
18
|
+
var index$d = require('./bigNumber/index.cjs.js');
|
|
19
|
+
var index$e = require('./identifier/index.cjs.js');
|
|
20
|
+
var index$f = require('./heading/index.cjs.js');
|
|
21
|
+
var index$g = require('./copyButton/index.cjs.js');
|
|
22
|
+
var index$h = require('./notActive/index.cjs.js');
|
|
23
|
+
var index$i = require('./timeDelta/index.cjs.js');
|
|
24
|
+
var index$j = require('./dateBlock/index.cjs.js');
|
|
25
|
+
var index$k = require('./transactionStatusIcon/index.cjs.js');
|
|
26
|
+
var index$l = require('./progressStepBar/index.cjs.js');
|
|
27
|
+
var index$m = require('./dashLogo/index.cjs.js');
|
|
28
|
+
var index$n = require('./dialog/index.cjs.js');
|
|
29
|
+
var index$o = require('./tabs/index.cjs.js');
|
|
30
|
+
var index$p = require('./icons/index.cjs.js');
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
exports.Accordion = index.Accordion;
|
|
35
|
+
exports.Badge = index$1.Badge;
|
|
36
|
+
exports.Button = index$2.Button;
|
|
37
|
+
exports.Input = index$3.Input;
|
|
38
|
+
exports.Textarea = index$4.Textarea;
|
|
39
|
+
exports.Text = index$5.Text;
|
|
40
|
+
exports.ValueCard = index$6.ValueCard;
|
|
41
|
+
exports.Select = index$7.Select;
|
|
42
|
+
exports.OverlaySelect = index$8.OverlaySelect;
|
|
43
|
+
exports.OverlayMenu = index$9.OverlayMenu;
|
|
44
|
+
exports.Switch = index$a.Switch;
|
|
45
|
+
exports.Avatar = index$b.Avatar;
|
|
46
|
+
exports.List = index$c.List;
|
|
47
|
+
exports.BigNumber = index$d.BigNumber;
|
|
48
|
+
exports.Identifier = index$e.default;
|
|
49
|
+
exports.Heading = index$f.Heading;
|
|
50
|
+
exports.CopyButton = index$g.CopyButton;
|
|
51
|
+
exports.NotActive = index$h.NotActive;
|
|
52
|
+
exports.TimeDelta = index$i.TimeDelta;
|
|
53
|
+
exports.DateBlock = index$j.DateBlock;
|
|
54
|
+
exports.TransactionStatusIcon = index$k.TransactionStatusIcon;
|
|
55
|
+
exports.ProgressStepBar = index$l.ProgressStepBar;
|
|
56
|
+
exports.DashLogo = index$m.DashLogo;
|
|
57
|
+
exports.Dialog = index$n.DashDialog;
|
|
58
|
+
exports.Tabs = index$o.Tabs;
|
|
59
|
+
exports.AirplaneIcon = index$p.AirplaneIcon;
|
|
60
|
+
exports.ArrowIcon = index$p.ArrowIcon;
|
|
61
|
+
exports.BroadcastedIcon = index$p.BroadcastedIcon;
|
|
62
|
+
exports.BurgerMenuIcon = index$p.BurgerMenuIcon;
|
|
63
|
+
exports.CalendarIcon = index$p.CalendarIcon;
|
|
64
|
+
exports.ChainSmallIcon = index$p.ChainSmallIcon;
|
|
65
|
+
exports.CheckIcon = index$p.CheckIcon;
|
|
66
|
+
exports.CheckmarkIcon = index$p.CheckmarkIcon;
|
|
67
|
+
exports.ChevronIcon = index$p.ChevronIcon;
|
|
68
|
+
exports.CircleProcessIcon = index$p.CircleProcessIcon;
|
|
69
|
+
exports.CopyIcon = index$p.CopyIcon;
|
|
70
|
+
exports.CreditsIcon = index$p.CreditsIcon;
|
|
71
|
+
exports.CrossIcon = index$p.CrossIcon;
|
|
72
|
+
exports.DeleteIcon = index$p.DeleteIcon;
|
|
73
|
+
exports.DocumentIcon = index$p.DocumentIcon;
|
|
74
|
+
exports.EditIcon = index$p.EditIcon;
|
|
75
|
+
exports.ErrorIcon = index$p.ErrorIcon;
|
|
76
|
+
exports.ExternalLinkIcon = index$p.ExternalLinkIcon;
|
|
77
|
+
exports.EyeClosedIcon = index$p.EyeClosedIcon;
|
|
78
|
+
exports.EyeOpenIcon = index$p.EyeOpenIcon;
|
|
79
|
+
exports.FaceIcon = index$p.FaceIcon;
|
|
80
|
+
exports.FilterIcon = index$p.FilterIcon;
|
|
81
|
+
exports.FingerprintIcon = index$p.FingerprintIcon;
|
|
82
|
+
exports.InfoCircleIcon = index$p.InfoCircleIcon;
|
|
83
|
+
exports.KebabMenuIcon = index$p.KebabMenuIcon;
|
|
84
|
+
exports.KeyIcon = index$p.KeyIcon;
|
|
85
|
+
exports.LockIcon = index$p.LockIcon;
|
|
86
|
+
exports.PendingIcon = index$p.PendingIcon;
|
|
87
|
+
exports.PlusIcon = index$p.PlusIcon;
|
|
88
|
+
exports.PooledIcon = index$p.PooledIcon;
|
|
89
|
+
exports.ProtectedMessageIcon = index$p.ProtectedMessageIcon;
|
|
90
|
+
exports.QuestionMessageIcon = index$p.QuestionMessageIcon;
|
|
91
|
+
exports.QueuedIcon = index$p.QueuedIcon;
|
|
92
|
+
exports.SearchIcon = index$p.SearchIcon;
|
|
93
|
+
exports.SettingsIcon = index$p.SettingsIcon;
|
|
94
|
+
exports.ShieldSmallIcon = index$p.ShieldSmallIcon;
|
|
95
|
+
exports.SignIcon = index$p.SignIcon;
|
|
96
|
+
exports.SignLockIcon = index$p.SignLockIcon;
|
|
97
|
+
exports.SmartphoneIcon = index$p.SmartphoneIcon;
|
|
98
|
+
exports.SuccessIcon = index$p.SuccessIcon;
|
|
99
|
+
exports.WalletIcon = index$p.WalletIcon;
|
|
100
|
+
exports.WebIcon = index$p.WebIcon;
|
|
101
|
+
//# sourceMappingURL=index.cjs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.cjs.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -23,5 +23,5 @@ export { ProgressStepBar, type ProgressStepBarProps } from './progressStepBar';
|
|
|
23
23
|
export { DashLogo, type DashLogoProps } from './dashLogo';
|
|
24
24
|
export { Dialog, type DialogProps } from './dialog';
|
|
25
25
|
export { Tabs, type TabsProps, type TabItem } from './tabs';
|
|
26
|
-
export type { TimeDeltaFormat } from '
|
|
26
|
+
export type { TimeDeltaFormat } from '../../shared/utils/datetime';
|
|
27
27
|
export { ArrowIcon, CopyIcon, SuccessIcon, ErrorIcon, QueuedIcon, PooledIcon, BroadcastedIcon, CalendarIcon, EyeOpenIcon, EyeClosedIcon, CheckIcon, KeyIcon, ProtectedMessageIcon, SmartphoneIcon, CrossIcon, WalletIcon, PlusIcon, FilterIcon, EditIcon, DeleteIcon, DocumentIcon, ChevronIcon, BurgerMenuIcon, KebabMenuIcon, CircleProcessIcon, CreditsIcon, WebIcon, ChainSmallIcon, SettingsIcon, ShieldSmallIcon, QuestionMessageIcon, CheckmarkIcon, FingerprintIcon, FaceIcon, SignIcon, SignLockIcon, LockIcon, PendingIcon, SearchIcon, AirplaneIcon, ExternalLinkIcon, InfoCircleIcon } from './icons';
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
export { Accordion } from './accordion/index.esm.js';
|
|
4
|
+
export { Badge } from './badge/index.esm.js';
|
|
5
|
+
export { Button } from './button/index.esm.js';
|
|
6
|
+
export { Input } from './input/index.esm.js';
|
|
7
|
+
export { Textarea } from './textarea/index.esm.js';
|
|
8
|
+
export { Text } from './text/index.esm.js';
|
|
9
|
+
export { ValueCard } from './valueCard/index.esm.js';
|
|
10
|
+
export { Select } from './select/index.esm.js';
|
|
11
|
+
export { OverlaySelect } from './overlaySelect/index.esm.js';
|
|
12
|
+
export { OverlayMenu } from './overlayMenu/index.esm.js';
|
|
13
|
+
export { Switch } from './switch/index.esm.js';
|
|
14
|
+
export { Avatar } from './avatar/index.esm.js';
|
|
15
|
+
export { List } from './list/index.esm.js';
|
|
16
|
+
export { BigNumber } from './bigNumber/index.esm.js';
|
|
17
|
+
export { default as Identifier } from './identifier/index.esm.js';
|
|
18
|
+
export { Heading } from './heading/index.esm.js';
|
|
19
|
+
export { CopyButton } from './copyButton/index.esm.js';
|
|
20
|
+
export { NotActive } from './notActive/index.esm.js';
|
|
21
|
+
export { TimeDelta } from './timeDelta/index.esm.js';
|
|
22
|
+
export { DateBlock } from './dateBlock/index.esm.js';
|
|
23
|
+
export { TransactionStatusIcon } from './transactionStatusIcon/index.esm.js';
|
|
24
|
+
export { ProgressStepBar } from './progressStepBar/index.esm.js';
|
|
25
|
+
export { DashLogo } from './dashLogo/index.esm.js';
|
|
26
|
+
export { DashDialog as Dialog } from './dialog/index.esm.js';
|
|
27
|
+
export { Tabs } from './tabs/index.esm.js';
|
|
28
|
+
export { AirplaneIcon, ArrowIcon, BroadcastedIcon, BurgerMenuIcon, CalendarIcon, ChainSmallIcon, CheckIcon, CheckmarkIcon, ChevronIcon, CircleProcessIcon, CopyIcon, CreditsIcon, CrossIcon, DeleteIcon, DocumentIcon, EditIcon, ErrorIcon, ExternalLinkIcon, EyeClosedIcon, EyeOpenIcon, FaceIcon, FilterIcon, FingerprintIcon, InfoCircleIcon, KebabMenuIcon, KeyIcon, LockIcon, PendingIcon, PlusIcon, PooledIcon, ProtectedMessageIcon, QuestionMessageIcon, QueuedIcon, SearchIcon, SettingsIcon, ShieldSmallIcon, SignIcon, SignLockIcon, SmartphoneIcon, SuccessIcon, WalletIcon, WebIcon } from './icons/index.esm.js';
|
|
29
|
+
//# sourceMappingURL=index.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|