@lidofinance/lido-app-ui 1.12.0 → 1.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/README.md +1 -1
- package/dist/cjs/address/Address.cjs +50 -0
- package/dist/cjs/address/Address.cjs.map +1 -0
- package/dist/cjs/address/Address.module.css.cjs +6 -0
- package/dist/cjs/address/Address.module.css.cjs.map +1 -0
- package/dist/cjs/address-button/AddressButton.cjs +49 -0
- package/dist/cjs/address-button/AddressButton.cjs.map +1 -0
- package/dist/cjs/address-button/AddressButton.module.css.cjs +6 -0
- package/dist/cjs/address-button/AddressButton.module.css.cjs.map +1 -0
- package/dist/cjs/button/Button.cjs +1 -1
- package/dist/cjs/button/Button.cjs.map +1 -1
- package/dist/cjs/button/Button.module.css.cjs +1 -1
- package/dist/cjs/copy/Copy.cjs +55 -0
- package/dist/cjs/copy/Copy.cjs.map +1 -0
- package/dist/cjs/copy/Copy.module.css.cjs +6 -0
- package/dist/cjs/copy/Copy.module.css.cjs.map +1 -0
- package/dist/cjs/copy/useCopy.cjs +33 -0
- package/dist/cjs/copy/useCopy.cjs.map +1 -0
- package/dist/cjs/data-list/DataList.module.css.cjs +1 -1
- package/dist/cjs/data-list/DataListRow.cjs +5 -12
- package/dist/cjs/data-list/DataListRow.cjs.map +1 -1
- package/dist/cjs/hex/Hex.cjs +41 -0
- package/dist/cjs/hex/Hex.cjs.map +1 -0
- package/dist/cjs/hex/Hex.module.css.cjs +6 -0
- package/dist/cjs/hex/Hex.module.css.cjs.map +1 -0
- package/dist/cjs/hex/trimHex.cjs +15 -0
- package/dist/cjs/hex/trimHex.cjs.map +1 -0
- package/dist/cjs/icon-button/CloseButton.cjs +27 -0
- package/dist/cjs/icon-button/CloseButton.cjs.map +1 -0
- package/dist/cjs/icon-button/IconButton.cjs +2 -1
- package/dist/cjs/icon-button/IconButton.cjs.map +1 -1
- package/dist/cjs/icon-button/IconButton.module.css.cjs +1 -1
- package/dist/cjs/index.cjs +35 -1
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs/index.css +6 -4
- package/dist/cjs/info-tooltip/InfoTooltip.cjs +34 -0
- package/dist/cjs/info-tooltip/InfoTooltip.cjs.map +1 -0
- package/dist/cjs/info-tooltip/InfoTooltip.module.css.cjs +6 -0
- package/dist/cjs/info-tooltip/InfoTooltip.module.css.cjs.map +1 -0
- package/dist/cjs/input/Input.cjs +3 -8
- package/dist/cjs/input/Input.cjs.map +1 -1
- package/dist/cjs/input/Input.module.css.cjs +1 -1
- package/dist/cjs/modal/Modal.cjs +2 -6
- package/dist/cjs/modal/Modal.cjs.map +1 -1
- package/dist/cjs/rich-input/RichInput.cjs +4 -7
- package/dist/cjs/rich-input/RichInput.cjs.map +1 -1
- package/dist/cjs/rich-input/RichInput.module.css.cjs +1 -1
- package/dist/cjs/section-title/SectionTitle.cjs +8 -10
- package/dist/cjs/section-title/SectionTitle.cjs.map +1 -1
- package/dist/cjs/section-title/SectionTitle.module.css.cjs +1 -1
- package/dist/cjs/sidebar/Sidebar.cjs +134 -0
- package/dist/cjs/sidebar/Sidebar.cjs.map +1 -0
- package/dist/cjs/sidebar/Sidebar.module.css.cjs +6 -0
- package/dist/cjs/sidebar/Sidebar.module.css.cjs.map +1 -0
- package/dist/cjs/sidebar/SidebarContext.cjs +13 -0
- package/dist/cjs/sidebar/SidebarContext.cjs.map +1 -0
- package/dist/cjs/sidebar/SidebarGroup.cjs +37 -0
- package/dist/cjs/sidebar/SidebarGroup.cjs.map +1 -0
- package/dist/cjs/sidebar/SidebarGroup.module.css.cjs +6 -0
- package/dist/cjs/sidebar/SidebarGroup.module.css.cjs.map +1 -0
- package/dist/cjs/sidebar/SidebarInset.cjs +25 -0
- package/dist/cjs/sidebar/SidebarInset.cjs.map +1 -0
- package/dist/cjs/sidebar/SidebarInset.module.css.cjs +6 -0
- package/dist/cjs/sidebar/SidebarInset.module.css.cjs.map +1 -0
- package/dist/cjs/sidebar/SidebarItem.cjs +42 -0
- package/dist/cjs/sidebar/SidebarItem.cjs.map +1 -0
- package/dist/cjs/sidebar/SidebarItem.module.css.cjs +6 -0
- package/dist/cjs/sidebar/SidebarItem.module.css.cjs.map +1 -0
- package/dist/cjs/sidebar/SidebarLayout.cjs +41 -0
- package/dist/cjs/sidebar/SidebarLayout.cjs.map +1 -0
- package/dist/cjs/sidebar/SidebarLayout.module.css.cjs +6 -0
- package/dist/cjs/sidebar/SidebarLayout.module.css.cjs.map +1 -0
- package/dist/cjs/sidebar/SidebarToggle.cjs +44 -0
- package/dist/cjs/sidebar/SidebarToggle.cjs.map +1 -0
- package/dist/cjs/sidebar/SidebarToggle.module.css.cjs +6 -0
- package/dist/cjs/sidebar/SidebarToggle.module.css.cjs.map +1 -0
- package/dist/cjs/sidebar/useSidebarDrawer.cjs +47 -0
- package/dist/cjs/sidebar/useSidebarDrawer.cjs.map +1 -0
- package/dist/cjs/stat-item/StatItem.cjs +3 -8
- package/dist/cjs/stat-item/StatItem.cjs.map +1 -1
- package/dist/cjs/stat-item/StatItem.module.css.cjs +1 -1
- package/dist/cjs/utils/surface.module.css.cjs +6 -0
- package/dist/cjs/utils/surface.module.css.cjs.map +1 -0
- package/dist/esm/address/Address.mjs +46 -0
- package/dist/esm/address/Address.mjs.map +1 -0
- package/dist/esm/address/Address.module.css.mjs +4 -0
- package/dist/esm/address/Address.module.css.mjs.map +1 -0
- package/dist/esm/address-button/AddressButton.mjs +45 -0
- package/dist/esm/address-button/AddressButton.mjs.map +1 -0
- package/dist/esm/address-button/AddressButton.module.css.mjs +4 -0
- package/dist/esm/address-button/AddressButton.module.css.mjs.map +1 -0
- package/dist/esm/button/Button.mjs +1 -1
- package/dist/esm/button/Button.mjs.map +1 -1
- package/dist/esm/button/Button.module.css.mjs +1 -1
- package/dist/esm/copy/Copy.mjs +51 -0
- package/dist/esm/copy/Copy.mjs.map +1 -0
- package/dist/esm/copy/Copy.module.css.mjs +4 -0
- package/dist/esm/copy/Copy.module.css.mjs.map +1 -0
- package/dist/esm/copy/useCopy.mjs +29 -0
- package/dist/esm/copy/useCopy.mjs.map +1 -0
- package/dist/esm/data-list/DataList.module.css.mjs +1 -1
- package/dist/esm/data-list/DataListRow.mjs +5 -12
- package/dist/esm/data-list/DataListRow.mjs.map +1 -1
- package/dist/esm/hex/Hex.mjs +37 -0
- package/dist/esm/hex/Hex.mjs.map +1 -0
- package/dist/esm/hex/Hex.module.css.mjs +4 -0
- package/dist/esm/hex/Hex.module.css.mjs.map +1 -0
- package/dist/esm/hex/trimHex.mjs +11 -0
- package/dist/esm/hex/trimHex.mjs.map +1 -0
- package/dist/esm/icon-button/CloseButton.mjs +23 -0
- package/dist/esm/icon-button/CloseButton.mjs.map +1 -0
- package/dist/esm/icon-button/IconButton.mjs +2 -1
- package/dist/esm/icon-button/IconButton.mjs.map +1 -1
- package/dist/esm/icon-button/IconButton.module.css.mjs +1 -1
- package/dist/esm/index.css +6 -4
- package/dist/esm/index.mjs +22 -0
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/info-tooltip/InfoTooltip.mjs +30 -0
- package/dist/esm/info-tooltip/InfoTooltip.mjs.map +1 -0
- package/dist/esm/info-tooltip/InfoTooltip.module.css.mjs +4 -0
- package/dist/esm/info-tooltip/InfoTooltip.module.css.mjs.map +1 -0
- package/dist/esm/input/Input.mjs +3 -8
- package/dist/esm/input/Input.mjs.map +1 -1
- package/dist/esm/input/Input.module.css.mjs +1 -1
- package/dist/esm/modal/Modal.mjs +2 -6
- package/dist/esm/modal/Modal.mjs.map +1 -1
- package/dist/esm/rich-input/RichInput.mjs +4 -7
- package/dist/esm/rich-input/RichInput.mjs.map +1 -1
- package/dist/esm/rich-input/RichInput.module.css.mjs +1 -1
- package/dist/esm/section-title/SectionTitle.mjs +8 -10
- package/dist/esm/section-title/SectionTitle.mjs.map +1 -1
- package/dist/esm/section-title/SectionTitle.module.css.mjs +1 -1
- package/dist/esm/sidebar/Sidebar.mjs +129 -0
- package/dist/esm/sidebar/Sidebar.mjs.map +1 -0
- package/dist/esm/sidebar/Sidebar.module.css.mjs +4 -0
- package/dist/esm/sidebar/Sidebar.module.css.mjs.map +1 -0
- package/dist/esm/sidebar/SidebarContext.mjs +8 -0
- package/dist/esm/sidebar/SidebarContext.mjs.map +1 -0
- package/dist/esm/sidebar/SidebarGroup.mjs +33 -0
- package/dist/esm/sidebar/SidebarGroup.mjs.map +1 -0
- package/dist/esm/sidebar/SidebarGroup.module.css.mjs +4 -0
- package/dist/esm/sidebar/SidebarGroup.module.css.mjs.map +1 -0
- package/dist/esm/sidebar/SidebarInset.mjs +21 -0
- package/dist/esm/sidebar/SidebarInset.mjs.map +1 -0
- package/dist/esm/sidebar/SidebarInset.module.css.mjs +4 -0
- package/dist/esm/sidebar/SidebarInset.module.css.mjs.map +1 -0
- package/dist/esm/sidebar/SidebarItem.mjs +38 -0
- package/dist/esm/sidebar/SidebarItem.mjs.map +1 -0
- package/dist/esm/sidebar/SidebarItem.module.css.mjs +4 -0
- package/dist/esm/sidebar/SidebarItem.module.css.mjs.map +1 -0
- package/dist/esm/sidebar/SidebarLayout.mjs +37 -0
- package/dist/esm/sidebar/SidebarLayout.mjs.map +1 -0
- package/dist/esm/sidebar/SidebarLayout.module.css.mjs +4 -0
- package/dist/esm/sidebar/SidebarLayout.module.css.mjs.map +1 -0
- package/dist/esm/sidebar/SidebarToggle.mjs +40 -0
- package/dist/esm/sidebar/SidebarToggle.mjs.map +1 -0
- package/dist/esm/sidebar/SidebarToggle.module.css.mjs +4 -0
- package/dist/esm/sidebar/SidebarToggle.module.css.mjs.map +1 -0
- package/dist/esm/sidebar/useSidebarDrawer.mjs +43 -0
- package/dist/esm/sidebar/useSidebarDrawer.mjs.map +1 -0
- package/dist/esm/stat-item/StatItem.mjs +3 -8
- package/dist/esm/stat-item/StatItem.mjs.map +1 -1
- package/dist/esm/stat-item/StatItem.module.css.mjs +1 -1
- package/dist/esm/utils/surface.module.css.mjs +4 -0
- package/dist/esm/utils/surface.module.css.mjs.map +1 -0
- package/dist/index.css +6 -4
- package/dist/types/address/Address.d.ts +16 -0
- package/dist/types/address/Address.d.ts.map +1 -0
- package/dist/types/address/index.d.ts +3 -0
- package/dist/types/address/index.d.ts.map +1 -0
- package/dist/types/address-button/AddressButton.d.ts +13 -0
- package/dist/types/address-button/AddressButton.d.ts.map +1 -0
- package/dist/types/address-button/index.d.ts +3 -0
- package/dist/types/address-button/index.d.ts.map +1 -0
- package/dist/types/colors/colorTokens.d.ts.map +1 -1
- package/dist/types/copy/Copy.d.ts +10 -0
- package/dist/types/copy/Copy.d.ts.map +1 -0
- package/dist/types/copy/index.d.ts +5 -0
- package/dist/types/copy/index.d.ts.map +1 -0
- package/dist/types/copy/useCopy.d.ts +9 -0
- package/dist/types/copy/useCopy.d.ts.map +1 -0
- package/dist/types/data-list/DataListRow.d.ts.map +1 -1
- package/dist/types/hex/Hex.d.ts +10 -0
- package/dist/types/hex/Hex.d.ts.map +1 -0
- package/dist/types/hex/index.d.ts +4 -0
- package/dist/types/hex/index.d.ts.map +1 -0
- package/dist/types/hex/trimHex.d.ts +2 -0
- package/dist/types/hex/trimHex.d.ts.map +1 -0
- package/dist/types/hooks/useIsomorphicLayoutEffect.d.ts +2 -2
- package/dist/types/hooks/useIsomorphicLayoutEffect.d.ts.map +1 -1
- package/dist/types/icon-button/CloseButton.d.ts +9 -0
- package/dist/types/icon-button/CloseButton.d.ts.map +1 -0
- package/dist/types/icon-button/IconButton.d.ts.map +1 -1
- package/dist/types/icon-button/index.d.ts +2 -0
- package/dist/types/icon-button/index.d.ts.map +1 -1
- package/dist/types/index.d.ts +8 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/info-tooltip/InfoTooltip.d.ts +12 -0
- package/dist/types/info-tooltip/InfoTooltip.d.ts.map +1 -0
- package/dist/types/info-tooltip/index.d.ts +3 -0
- package/dist/types/info-tooltip/index.d.ts.map +1 -0
- package/dist/types/input/Input.d.ts.map +1 -1
- package/dist/types/modal/Modal.d.ts.map +1 -1
- package/dist/types/rich-input/RichInput.d.ts.map +1 -1
- package/dist/types/section-title/SectionTitle.d.ts +7 -2
- package/dist/types/section-title/SectionTitle.d.ts.map +1 -1
- package/dist/types/section-title/index.d.ts +1 -1
- package/dist/types/section-title/index.d.ts.map +1 -1
- package/dist/types/sidebar/Sidebar.d.ts +15 -0
- package/dist/types/sidebar/Sidebar.d.ts.map +1 -0
- package/dist/types/sidebar/SidebarContext.d.ts +6 -0
- package/dist/types/sidebar/SidebarContext.d.ts.map +1 -0
- package/dist/types/sidebar/SidebarGroup.d.ts +7 -0
- package/dist/types/sidebar/SidebarGroup.d.ts.map +1 -0
- package/dist/types/sidebar/SidebarInset.d.ts +5 -0
- package/dist/types/sidebar/SidebarInset.d.ts.map +1 -0
- package/dist/types/sidebar/SidebarItem.d.ts +10 -0
- package/dist/types/sidebar/SidebarItem.d.ts.map +1 -0
- package/dist/types/sidebar/SidebarLayout.d.ts +18 -0
- package/dist/types/sidebar/SidebarLayout.d.ts.map +1 -0
- package/dist/types/sidebar/SidebarToggle.d.ts +13 -0
- package/dist/types/sidebar/SidebarToggle.d.ts.map +1 -0
- package/dist/types/sidebar/index.d.ts +17 -0
- package/dist/types/sidebar/index.d.ts.map +1 -0
- package/dist/types/sidebar/useSidebarDrawer.d.ts +23 -0
- package/dist/types/sidebar/useSidebarDrawer.d.ts.map +1 -0
- package/dist/types/stat-item/StatItem.d.ts.map +1 -1
- package/package.json +3 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SidebarInset.module.css.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
+
|
|
5
|
+
const react = require('react');
|
|
6
|
+
const cn = require('classnames');
|
|
7
|
+
const SidebarItem_module = require('./SidebarItem.module.css.cjs');
|
|
8
|
+
const jsxRuntime = require('react/jsx-runtime');
|
|
9
|
+
const ActionElement = require('../utils/ActionElement.cjs');
|
|
10
|
+
|
|
11
|
+
const SidebarItem = /*#__PURE__*/react.forwardRef((_ref, ref) => {
|
|
12
|
+
let {
|
|
13
|
+
icon,
|
|
14
|
+
trailing,
|
|
15
|
+
active = false,
|
|
16
|
+
className,
|
|
17
|
+
children,
|
|
18
|
+
...rest
|
|
19
|
+
} = _ref;
|
|
20
|
+
return /*#__PURE__*/jsxRuntime.jsxs(ActionElement.ActionElement, {
|
|
21
|
+
ref: ref,
|
|
22
|
+
"aria-current": active ? 'page' : undefined,
|
|
23
|
+
className: cn(SidebarItem_module.item, active && SidebarItem_module.active, rest.disabled && SidebarItem_module.disabled, className),
|
|
24
|
+
...rest,
|
|
25
|
+
children: [icon != null ? /*#__PURE__*/jsxRuntime.jsx("span", {
|
|
26
|
+
className: SidebarItem_module.icon,
|
|
27
|
+
"aria-hidden": "true",
|
|
28
|
+
children: icon
|
|
29
|
+
}) : null, /*#__PURE__*/jsxRuntime.jsx("span", {
|
|
30
|
+
className: SidebarItem_module.label,
|
|
31
|
+
children: children
|
|
32
|
+
}), trailing != null && trailing !== false ? /*#__PURE__*/jsxRuntime.jsx("span", {
|
|
33
|
+
className: SidebarItem_module.trailing,
|
|
34
|
+
"aria-hidden": "true",
|
|
35
|
+
children: trailing
|
|
36
|
+
}) : null]
|
|
37
|
+
});
|
|
38
|
+
});
|
|
39
|
+
SidebarItem.displayName = 'SidebarItem';
|
|
40
|
+
|
|
41
|
+
exports.SidebarItem = SidebarItem;
|
|
42
|
+
//# sourceMappingURL=SidebarItem.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SidebarItem.cjs","sources":["../../../src/sidebar/SidebarItem.tsx"],"sourcesContent":["import { forwardRef, type ReactNode } from 'react'\n\nimport cn from 'classnames'\n\nimport { ActionElement, type ActionElementProps } from '../utils'\nimport styles from './SidebarItem.module.css'\n\nexport type SidebarItemProps = ActionElementProps & {\n icon?: ReactNode\n /** Trailing slot, usually a `<Counter>`; hidden from assistive tech. */\n trailing?: ReactNode\n active?: boolean\n}\n\nexport const SidebarItem = forwardRef<\n HTMLAnchorElement | HTMLButtonElement,\n SidebarItemProps\n>(({ icon, trailing, active = false, className, children, ...rest }, ref) => (\n <ActionElement\n ref={ref}\n aria-current={active ? 'page' : undefined}\n className={cn(\n styles.item,\n active && styles.active,\n rest.disabled && styles.disabled,\n className,\n )}\n {...rest}\n >\n {icon != null ? (\n <span className={styles.icon} aria-hidden='true'>\n {icon}\n </span>\n ) : null}\n <span className={styles.label}>{children}</span>\n {trailing != null && trailing !== false ? (\n <span className={styles.trailing} aria-hidden='true'>\n {trailing}\n </span>\n ) : null}\n </ActionElement>\n))\n\nSidebarItem.displayName = 'SidebarItem'\n"],"names":["SidebarItem","forwardRef","_ref","ref","icon","trailing","active","className","children","rest","_jsxs","ActionElement","undefined","cn","styles","item","disabled","_jsx","label","displayName"],"mappings":";;;;;;;;;;AAcO,MAAMA,WAAW,gBAAGC,gBAAU,CAGnC,CAAAC,IAAA,EAAmEC,GAAG,KAAA;EAAA,IAArE;IAAEC,IAAI;IAAEC,QAAQ;AAAEC,IAAAA,MAAM,GAAG,KAAK;IAAEC,SAAS;IAAEC,QAAQ;IAAE,GAAGC,IAAAA;AAAK,GAAC,GAAAP,IAAA,CAAA;EAAA,oBACjEQ,eAAA,CAACC,2BAAa,EAAA;AACZR,IAAAA,GAAG,EAAEA,GAAI;AACT,IAAA,cAAA,EAAcG,MAAM,GAAG,MAAM,GAAGM,SAAU;IAC1CL,SAAS,EAAEM,EAAE,CACXC,kBAAM,CAACC,IAAI,EACXT,MAAM,IAAIQ,kBAAM,CAACR,MAAM,EACvBG,IAAI,CAACO,QAAQ,IAAIF,kBAAM,CAACE,QAAQ,EAChCT,SACF,CAAE;AAAA,IAAA,GACEE,IAAI;AAAAD,IAAAA,QAAA,EAEPJ,CAAAA,IAAI,IAAI,IAAI,gBACXa,cAAA,CAAA,MAAA,EAAA;MAAMV,SAAS,EAAEO,kBAAM,CAACV,IAAK;AAAC,MAAA,aAAA,EAAY,MAAM;AAAAI,MAAAA,QAAA,EAC7CJ,IAAAA;AAAI,KACD,CAAC,GACL,IAAI,eACRa,cAAA,CAAA,MAAA,EAAA;MAAMV,SAAS,EAAEO,kBAAM,CAACI,KAAM;AAAAV,MAAAA,QAAA,EAAEA,QAAAA;KAAe,CAAC,EAC/CH,QAAQ,IAAI,IAAI,IAAIA,QAAQ,KAAK,KAAK,gBACrCY,cAAA,CAAA,MAAA,EAAA;MAAMV,SAAS,EAAEO,kBAAM,CAACT,QAAS;AAAC,MAAA,aAAA,EAAY,MAAM;AAAAG,MAAAA,QAAA,EACjDH,QAAAA;KACG,CAAC,GACL,IAAI,CAAA;AAAA,GACK,CAAC,CAAA;AAAA,CACjB,EAAC;AAEFL,WAAW,CAACmB,WAAW,GAAG,aAAa;;;;"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const styles = {"item":"SidebarItem-module_item__srUXX","disabled":"SidebarItem-module_disabled__P0pDL","active":"SidebarItem-module_active__Midud","icon":"SidebarItem-module_icon__pk4Aa","label":"SidebarItem-module_label__gFEjo","trailing":"SidebarItem-module_trailing__dyHoT"};
|
|
4
|
+
|
|
5
|
+
module.exports = styles;
|
|
6
|
+
//# sourceMappingURL=SidebarItem.module.css.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SidebarItem.module.css.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
+
|
|
5
|
+
const react = require('react');
|
|
6
|
+
const cn = require('classnames');
|
|
7
|
+
const SidebarLayout_module = require('./SidebarLayout.module.css.cjs');
|
|
8
|
+
const SidebarContext = require('./SidebarContext.cjs');
|
|
9
|
+
const useSidebarDrawer = require('./useSidebarDrawer.cjs');
|
|
10
|
+
const jsxRuntime = require('react/jsx-runtime');
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Row that holds Sidebar and SidebarInset and wires the drawer between Sidebar and SidebarToggle.
|
|
14
|
+
* The Sidebar must be its direct child: it measures its parent's top for the banner offset.
|
|
15
|
+
*/
|
|
16
|
+
const SidebarLayout = /*#__PURE__*/react.forwardRef((_ref, ref) => {
|
|
17
|
+
let {
|
|
18
|
+
defaultOpen,
|
|
19
|
+
open,
|
|
20
|
+
onOpenChange,
|
|
21
|
+
className,
|
|
22
|
+
...rest
|
|
23
|
+
} = _ref;
|
|
24
|
+
const value = useSidebarDrawer.useSidebarDrawer({
|
|
25
|
+
defaultOpen,
|
|
26
|
+
open,
|
|
27
|
+
onOpenChange
|
|
28
|
+
});
|
|
29
|
+
return /*#__PURE__*/jsxRuntime.jsx(SidebarContext.SidebarContext.Provider, {
|
|
30
|
+
value: value,
|
|
31
|
+
children: /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
32
|
+
ref: ref,
|
|
33
|
+
className: cn(SidebarLayout_module.root, className),
|
|
34
|
+
...rest
|
|
35
|
+
})
|
|
36
|
+
});
|
|
37
|
+
});
|
|
38
|
+
SidebarLayout.displayName = 'SidebarLayout';
|
|
39
|
+
|
|
40
|
+
exports.SidebarLayout = SidebarLayout;
|
|
41
|
+
//# sourceMappingURL=SidebarLayout.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SidebarLayout.cjs","sources":["../../../src/sidebar/SidebarLayout.tsx"],"sourcesContent":["import { forwardRef, type HTMLAttributes } from 'react'\n\nimport cn from 'classnames'\n\nimport styles from './SidebarLayout.module.css'\nimport { SidebarContext } from './SidebarContext'\nimport { useSidebarDrawer } from './useSidebarDrawer'\n\nexport type SidebarLayoutProps = HTMLAttributes<HTMLDivElement> & {\n defaultOpen?: boolean\n /** Controlled drawer state; pair with `onOpenChange`. */\n open?: boolean\n onOpenChange?: (open: boolean) => void\n}\n\n/**\n * Row that holds Sidebar and SidebarInset and wires the drawer between Sidebar and SidebarToggle.\n * The Sidebar must be its direct child: it measures its parent's top for the banner offset.\n */\nexport const SidebarLayout = forwardRef<HTMLDivElement, SidebarLayoutProps>(\n ({ defaultOpen, open, onOpenChange, className, ...rest }, ref) => {\n const value = useSidebarDrawer({ defaultOpen, open, onOpenChange })\n\n return (\n <SidebarContext.Provider value={value}>\n <div ref={ref} className={cn(styles.root, className)} {...rest} />\n </SidebarContext.Provider>\n )\n },\n)\n\nSidebarLayout.displayName = 'SidebarLayout'\n"],"names":["SidebarLayout","forwardRef","_ref","ref","defaultOpen","open","onOpenChange","className","rest","value","useSidebarDrawer","_jsx","SidebarContext","Provider","children","cn","styles","root","displayName"],"mappings":";;;;;;;;;;;AAeA;AACA;AACA;AACA;AACO,MAAMA,aAAa,gBAAGC,gBAAU,CACrC,CAAAC,IAAA,EAA0DC,GAAG,KAAK;EAAA,IAAjE;IAAEC,WAAW;IAAEC,IAAI;IAAEC,YAAY;IAAEC,SAAS;IAAE,GAAGC,IAAAA;AAAK,GAAC,GAAAN,IAAA,CAAA;EACtD,MAAMO,KAAK,GAAGC,iCAAgB,CAAC;IAAEN,WAAW;IAAEC,IAAI;AAAEC,IAAAA,YAAAA;AAAa,GAAC,CAAC,CAAA;AAEnE,EAAA,oBACEK,cAAA,CAACC,6BAAc,CAACC,QAAQ,EAAA;AAACJ,IAAAA,KAAK,EAAEA,KAAM;AAAAK,IAAAA,QAAA,eACpCH,cAAA,CAAA,KAAA,EAAA;AAAKR,MAAAA,GAAG,EAAEA,GAAI;MAACI,SAAS,EAAEQ,EAAE,CAACC,oBAAM,CAACC,IAAI,EAAEV,SAAS,CAAE;MAAA,GAAKC,IAAAA;KAAO,CAAA;AAAC,GAC3C,CAAC,CAAA;AAE9B,CACF,EAAC;AAEDR,aAAa,CAACkB,WAAW,GAAG,eAAe;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SidebarLayout.module.css.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
+
|
|
5
|
+
const react = require('react');
|
|
6
|
+
const cn = require('classnames');
|
|
7
|
+
const SidebarContext = require('./SidebarContext.cjs');
|
|
8
|
+
const SidebarToggle_module = require('./SidebarToggle.module.css.cjs');
|
|
9
|
+
const jsxRuntime = require('react/jsx-runtime');
|
|
10
|
+
const IconButton = require('../icon-button/IconButton.cjs');
|
|
11
|
+
const IconMenu = require('../icons/components/base/IconMenu.cjs');
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Burger that opens the Sidebar drawer; visible only at `ml-down` widths.
|
|
15
|
+
* Inside a SidebarLayout it wires `aria-*` (explicit props win) and toggles after your
|
|
16
|
+
* `onClick`, unless that calls `event.preventDefault()`.
|
|
17
|
+
*/
|
|
18
|
+
const SidebarToggle = /*#__PURE__*/react.forwardRef((_ref, ref) => {
|
|
19
|
+
let {
|
|
20
|
+
className,
|
|
21
|
+
'aria-label': ariaLabel = 'Open menu',
|
|
22
|
+
onClick,
|
|
23
|
+
...rest
|
|
24
|
+
} = _ref;
|
|
25
|
+
const toggleProps = react.useContext(SidebarContext.SidebarContext)?.toggleProps;
|
|
26
|
+
const handleClick = event => {
|
|
27
|
+
onClick?.(event);
|
|
28
|
+
if (!event.defaultPrevented) toggleProps?.onClick();
|
|
29
|
+
};
|
|
30
|
+
return /*#__PURE__*/jsxRuntime.jsx(IconButton.IconButton, {
|
|
31
|
+
ref: ref,
|
|
32
|
+
variant: "ghost",
|
|
33
|
+
icon: /*#__PURE__*/jsxRuntime.jsx(IconMenu.IconMenu, {}),
|
|
34
|
+
"aria-label": ariaLabel,
|
|
35
|
+
...toggleProps,
|
|
36
|
+
...rest,
|
|
37
|
+
onClick: handleClick,
|
|
38
|
+
className: cn(SidebarToggle_module.toggle, className)
|
|
39
|
+
});
|
|
40
|
+
});
|
|
41
|
+
SidebarToggle.displayName = 'SidebarToggle';
|
|
42
|
+
|
|
43
|
+
exports.SidebarToggle = SidebarToggle;
|
|
44
|
+
//# sourceMappingURL=SidebarToggle.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SidebarToggle.cjs","sources":["../../../src/sidebar/SidebarToggle.tsx"],"sourcesContent":["import { forwardRef, useContext, type MouseEvent } from 'react'\n\nimport cn from 'classnames'\n\nimport { IconButton, type IconButtonProps } from '../icon-button'\nimport { IconMenu } from '../icons'\nimport { SidebarContext } from './SidebarContext'\nimport styles from './SidebarToggle.module.css'\n\nexport type SidebarToggleProps = Omit<\n IconButtonProps,\n 'icon' | 'aria-label'\n> & {\n 'aria-label'?: string\n}\n\n/**\n * Burger that opens the Sidebar drawer; visible only at `ml-down` widths.\n * Inside a SidebarLayout it wires `aria-*` (explicit props win) and toggles after your\n * `onClick`, unless that calls `event.preventDefault()`.\n */\nexport const SidebarToggle = forwardRef<HTMLButtonElement, SidebarToggleProps>(\n (\n { className, 'aria-label': ariaLabel = 'Open menu', onClick, ...rest },\n ref,\n ) => {\n const toggleProps = useContext(SidebarContext)?.toggleProps\n const handleClick = (event: MouseEvent<HTMLButtonElement>) => {\n onClick?.(event)\n if (!event.defaultPrevented) toggleProps?.onClick()\n }\n return (\n <IconButton\n ref={ref}\n variant='ghost'\n icon={<IconMenu />}\n aria-label={ariaLabel}\n {...toggleProps}\n {...rest}\n onClick={handleClick}\n className={cn(styles.toggle, className)}\n />\n )\n },\n)\n\nSidebarToggle.displayName = 'SidebarToggle'\n"],"names":["SidebarToggle","forwardRef","_ref","ref","className","ariaLabel","onClick","rest","toggleProps","useContext","SidebarContext","handleClick","event","defaultPrevented","_jsx","IconButton","variant","icon","IconMenu","cn","styles","toggle","displayName"],"mappings":";;;;;;;;;;;;AAgBA;AACA;AACA;AACA;AACA;AACO,MAAMA,aAAa,gBAAGC,gBAAU,CACrC,CAAAC,IAAA,EAEEC,GAAG,KACA;EAAA,IAFH;IAAEC,SAAS;IAAE,YAAY,EAAEC,SAAS,GAAG,WAAW;IAAEC,OAAO;IAAE,GAAGC,IAAAA;AAAK,GAAC,GAAAL,IAAA,CAAA;AAGtE,EAAA,MAAMM,WAAW,GAAGC,gBAAU,CAACC,6BAAc,CAAC,EAAEF,WAAW,CAAA;EAC3D,MAAMG,WAAW,GAAIC,KAAoC,IAAK;IAC5DN,OAAO,GAAGM,KAAK,CAAC,CAAA;IAChB,IAAI,CAACA,KAAK,CAACC,gBAAgB,EAAEL,WAAW,EAAEF,OAAO,EAAE,CAAA;GACpD,CAAA;EACD,oBACEQ,cAAA,CAACC,qBAAU,EAAA;AACTZ,IAAAA,GAAG,EAAEA,GAAI;AACTa,IAAAA,OAAO,EAAC,OAAO;AACfC,IAAAA,IAAI,eAAEH,cAAA,CAACI,iBAAQ,IAAE,CAAE;AACnB,IAAA,YAAA,EAAYb,SAAU;AAAA,IAAA,GAClBG,WAAW;AAAA,IAAA,GACXD,IAAI;AACRD,IAAAA,OAAO,EAAEK,WAAY;AACrBP,IAAAA,SAAS,EAAEe,EAAE,CAACC,oBAAM,CAACC,MAAM,EAAEjB,SAAS,CAAA;AAAE,GACzC,CAAC,CAAA;AAEN,CACF,EAAC;AAEDJ,aAAa,CAACsB,WAAW,GAAG,eAAe;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SidebarToggle.module.css.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
+
|
|
5
|
+
const react = require('react');
|
|
6
|
+
|
|
7
|
+
/** Wires Sidebar and SidebarToggle together: spread `sidebarProps` and `toggleProps`. */
|
|
8
|
+
const useSidebarDrawer = function () {
|
|
9
|
+
let {
|
|
10
|
+
defaultOpen = false,
|
|
11
|
+
open: openProp,
|
|
12
|
+
onOpenChange
|
|
13
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
14
|
+
const id = react.useId();
|
|
15
|
+
const [internalOpen, setInternalOpen] = react.useState(defaultOpen);
|
|
16
|
+
const controlled = openProp !== undefined;
|
|
17
|
+
const open = openProp ?? internalOpen;
|
|
18
|
+
const openRef = react.useRef(open);
|
|
19
|
+
openRef.current = open;
|
|
20
|
+
const controlledRef = react.useRef(controlled);
|
|
21
|
+
controlledRef.current = controlled;
|
|
22
|
+
const onOpenChangeRef = react.useRef(onOpenChange);
|
|
23
|
+
onOpenChangeRef.current = onOpenChange;
|
|
24
|
+
const setOpen = react.useCallback(next => {
|
|
25
|
+
if (!controlledRef.current) setInternalOpen(next);
|
|
26
|
+
onOpenChangeRef.current?.(next);
|
|
27
|
+
}, []);
|
|
28
|
+
const onClose = react.useCallback(() => setOpen(false), [setOpen]);
|
|
29
|
+
const onClick = react.useCallback(() => setOpen(!openRef.current), [setOpen]);
|
|
30
|
+
return react.useMemo(() => ({
|
|
31
|
+
open,
|
|
32
|
+
setOpen,
|
|
33
|
+
sidebarProps: {
|
|
34
|
+
id,
|
|
35
|
+
open,
|
|
36
|
+
onClose
|
|
37
|
+
},
|
|
38
|
+
toggleProps: {
|
|
39
|
+
onClick,
|
|
40
|
+
'aria-expanded': open,
|
|
41
|
+
'aria-controls': id
|
|
42
|
+
}
|
|
43
|
+
}), [open, setOpen, id, onClose, onClick]);
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
exports.useSidebarDrawer = useSidebarDrawer;
|
|
47
|
+
//# sourceMappingURL=useSidebarDrawer.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSidebarDrawer.cjs","sources":["../../../src/sidebar/useSidebarDrawer.ts"],"sourcesContent":["import { useCallback, useId, useMemo, useRef, useState } from 'react'\n\nexport type UseSidebarDrawerOptions = {\n defaultOpen?: boolean\n /** Controlled state; pair with `onOpenChange`. */\n open?: boolean\n onOpenChange?: (open: boolean) => void\n}\n\nexport type UseSidebarDrawerResult = {\n open: boolean\n setOpen: (open: boolean) => void\n sidebarProps: { id: string; open: boolean; onClose: () => void }\n toggleProps: {\n onClick: () => void\n 'aria-expanded': boolean\n 'aria-controls': string\n }\n}\n\n/** Wires Sidebar and SidebarToggle together: spread `sidebarProps` and `toggleProps`. */\nexport const useSidebarDrawer = ({\n defaultOpen = false,\n open: openProp,\n onOpenChange,\n}: UseSidebarDrawerOptions = {}): UseSidebarDrawerResult => {\n const id = useId()\n const [internalOpen, setInternalOpen] = useState(defaultOpen)\n const controlled = openProp !== undefined\n const open = openProp ?? internalOpen\n\n const openRef = useRef(open)\n openRef.current = open\n const controlledRef = useRef(controlled)\n controlledRef.current = controlled\n const onOpenChangeRef = useRef(onOpenChange)\n onOpenChangeRef.current = onOpenChange\n\n const setOpen = useCallback((next: boolean) => {\n if (!controlledRef.current) setInternalOpen(next)\n onOpenChangeRef.current?.(next)\n }, [])\n const onClose = useCallback(() => setOpen(false), [setOpen])\n const onClick = useCallback(() => setOpen(!openRef.current), [setOpen])\n\n return useMemo(\n () => ({\n open,\n setOpen,\n sidebarProps: { id, open, onClose },\n toggleProps: { onClick, 'aria-expanded': open, 'aria-controls': id },\n }),\n [open, setOpen, id, onClose, onClick],\n )\n}\n"],"names":["useSidebarDrawer","defaultOpen","open","openProp","onOpenChange","arguments","length","undefined","id","useId","internalOpen","setInternalOpen","useState","controlled","openRef","useRef","current","controlledRef","onOpenChangeRef","setOpen","useCallback","next","onClose","onClick","useMemo","sidebarProps","toggleProps"],"mappings":";;;;;;AAoBA;AACaA,MAAAA,gBAAgB,GAAG,YAI4B;EAAA,IAJ3B;AAC/BC,IAAAA,WAAW,GAAG,KAAK;AACnBC,IAAAA,IAAI,EAAEC,QAAQ;AACdC,IAAAA,YAAAA;AACuB,GAAC,GAAAC,SAAA,CAAAC,MAAA,GAAAD,CAAAA,IAAAA,SAAA,CAAAE,CAAAA,CAAAA,KAAAA,SAAA,GAAAF,SAAA,CAAG,CAAA,CAAA,GAAA,EAAE,CAAA;AAC7B,EAAA,MAAMG,EAAE,GAAGC,WAAK,EAAE,CAAA;EAClB,MAAM,CAACC,YAAY,EAAEC,eAAe,CAAC,GAAGC,cAAQ,CAACX,WAAW,CAAC,CAAA;AAC7D,EAAA,MAAMY,UAAU,GAAGV,QAAQ,KAAKI,SAAS,CAAA;AACzC,EAAA,MAAML,IAAI,GAAGC,QAAQ,IAAIO,YAAY,CAAA;AAErC,EAAA,MAAMI,OAAO,GAAGC,YAAM,CAACb,IAAI,CAAC,CAAA;EAC5BY,OAAO,CAACE,OAAO,GAAGd,IAAI,CAAA;AACtB,EAAA,MAAMe,aAAa,GAAGF,YAAM,CAACF,UAAU,CAAC,CAAA;EACxCI,aAAa,CAACD,OAAO,GAAGH,UAAU,CAAA;AAClC,EAAA,MAAMK,eAAe,GAAGH,YAAM,CAACX,YAAY,CAAC,CAAA;EAC5Cc,eAAe,CAACF,OAAO,GAAGZ,YAAY,CAAA;AAEtC,EAAA,MAAMe,OAAO,GAAGC,iBAAW,CAAEC,IAAa,IAAK;IAC7C,IAAI,CAACJ,aAAa,CAACD,OAAO,EAAEL,eAAe,CAACU,IAAI,CAAC,CAAA;AACjDH,IAAAA,eAAe,CAACF,OAAO,GAAGK,IAAI,CAAC,CAAA;GAChC,EAAE,EAAE,CAAC,CAAA;AACN,EAAA,MAAMC,OAAO,GAAGF,iBAAW,CAAC,MAAMD,OAAO,CAAC,KAAK,CAAC,EAAE,CAACA,OAAO,CAAC,CAAC,CAAA;AAC5D,EAAA,MAAMI,OAAO,GAAGH,iBAAW,CAAC,MAAMD,OAAO,CAAC,CAACL,OAAO,CAACE,OAAO,CAAC,EAAE,CAACG,OAAO,CAAC,CAAC,CAAA;EAEvE,OAAOK,aAAO,CACZ,OAAO;IACLtB,IAAI;IACJiB,OAAO;AACPM,IAAAA,YAAY,EAAE;MAAEjB,EAAE;MAAEN,IAAI;AAAEoB,MAAAA,OAAAA;KAAS;AACnCI,IAAAA,WAAW,EAAE;MAAEH,OAAO;AAAE,MAAA,eAAe,EAAErB,IAAI;AAAE,MAAA,eAAe,EAAEM,EAAAA;AAAG,KAAA;AACrE,GAAC,CAAC,EACF,CAACN,IAAI,EAAEiB,OAAO,EAAEX,EAAE,EAAEc,OAAO,EAAEC,OAAO,CACtC,CAAC,CAAA;AACH;;;;"}
|
|
@@ -5,8 +5,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
|
5
5
|
const cn = require('classnames');
|
|
6
6
|
const StatItem_module = require('./StatItem.module.css.cjs');
|
|
7
7
|
const jsxRuntime = require('react/jsx-runtime');
|
|
8
|
-
const
|
|
9
|
-
const IconInfo = require('../icons/components/base/IconInfo.cjs');
|
|
8
|
+
const InfoTooltip = require('../info-tooltip/InfoTooltip.cjs');
|
|
10
9
|
|
|
11
10
|
const StatItem = _ref => {
|
|
12
11
|
let {
|
|
@@ -36,12 +35,8 @@ const StatItem = _ref => {
|
|
|
36
35
|
className: StatItem_module.label,
|
|
37
36
|
"data-testid": dataTestId?.label,
|
|
38
37
|
children: label
|
|
39
|
-
}), info ? /*#__PURE__*/jsxRuntime.jsx(
|
|
40
|
-
content: info
|
|
41
|
-
className: StatItem_module.info,
|
|
42
|
-
children: /*#__PURE__*/jsxRuntime.jsx(IconInfo.IconInfo, {
|
|
43
|
-
className: StatItem_module.infoIcon
|
|
44
|
-
})
|
|
38
|
+
}), info ? /*#__PURE__*/jsxRuntime.jsx(InfoTooltip.InfoTooltip, {
|
|
39
|
+
content: info
|
|
45
40
|
}) : null]
|
|
46
41
|
}), /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
47
42
|
className: StatItem_module.valueRow,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StatItem.cjs","sources":["../../../src/stat-item/StatItem.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode } from 'react'\n\nimport cn from 'classnames'\n\nimport {
|
|
1
|
+
{"version":3,"file":"StatItem.cjs","sources":["../../../src/stat-item/StatItem.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode } from 'react'\n\nimport cn from 'classnames'\n\nimport { InfoTooltip } from '../info-tooltip'\n\nimport styles from './StatItem.module.css'\n\nexport type StatItemAlign = 'left' | 'center'\n\nexport type StatItemDataTestId = {\n root?: string\n label?: string\n icon?: string\n value?: string\n subValue?: string\n description?: string\n}\n\nexport type StatItemProps = Omit<HTMLAttributes<HTMLDivElement>, 'children'> & {\n label: ReactNode\n value: ReactNode\n titleIcon?: ReactNode\n info?: ReactNode\n icon?: ReactNode\n subValue?: ReactNode\n description?: ReactNode\n align?: StatItemAlign\n dataTestId?: StatItemDataTestId\n}\n\nexport const StatItem = ({\n label,\n value,\n titleIcon,\n info,\n icon,\n subValue,\n description,\n align = 'center',\n className,\n dataTestId,\n ...rest\n}: StatItemProps) => (\n <div\n className={cn(styles.item, styles[align], className)}\n data-testid={dataTestId?.root}\n {...rest}\n >\n <div className={styles.title}>\n {titleIcon ? (\n <span className={styles.titleIcon} aria-hidden='true'>\n {titleIcon}\n </span>\n ) : null}\n <div className={styles.label} data-testid={dataTestId?.label}>\n {label}\n </div>\n {info ? <InfoTooltip content={info} /> : null}\n </div>\n <div className={styles.valueRow}>\n <div className={styles.value} data-testid={dataTestId?.value}>\n {value}\n </div>\n {icon != null ? (\n <span\n className={styles.icon}\n aria-hidden='true'\n data-testid={dataTestId?.icon}\n >\n {icon}\n </span>\n ) : null}\n {align === 'left' && subValue != null ? (\n <div className={styles.subValue} data-testid={dataTestId?.subValue}>\n {subValue}\n </div>\n ) : null}\n </div>\n {align === 'center' && subValue != null ? (\n <div className={styles.subValue} data-testid={dataTestId?.subValue}>\n {subValue}\n </div>\n ) : null}\n {description != null ? (\n <div className={styles.description} data-testid={dataTestId?.description}>\n {description}\n </div>\n ) : null}\n </div>\n)\n"],"names":["StatItem","_ref","label","value","titleIcon","info","icon","subValue","description","align","className","dataTestId","rest","_jsxs","cn","styles","item","root","children","title","_jsx","InfoTooltip","content","valueRow"],"mappings":";;;;;;;;;AA+BO,MAAMA,QAAQ,GAAGC,IAAA,IAAA;EAAA,IAAC;IACvBC,KAAK;IACLC,KAAK;IACLC,SAAS;IACTC,IAAI;IACJC,IAAI;IACJC,QAAQ;IACRC,WAAW;AACXC,IAAAA,KAAK,GAAG,QAAQ;IAChBC,SAAS;IACTC,UAAU;IACV,GAAGC,IAAAA;AACU,GAAC,GAAAX,IAAA,CAAA;AAAA,EAAA,oBACdY,eAAA,CAAA,KAAA,EAAA;AACEH,IAAAA,SAAS,EAAEI,EAAE,CAACC,eAAM,CAACC,IAAI,EAAED,eAAM,CAACN,KAAK,CAAC,EAAEC,SAAS,CAAE;IACrD,aAAaC,EAAAA,UAAU,EAAEM,IAAK;AAAA,IAAA,GAC1BL,IAAI;AAAAM,IAAAA,QAAA,gBAERL,eAAA,CAAA,KAAA,EAAA;MAAKH,SAAS,EAAEK,eAAM,CAACI,KAAM;MAAAD,QAAA,EAAA,CAC1Bd,SAAS,gBACRgB,cAAA,CAAA,MAAA,EAAA;QAAMV,SAAS,EAAEK,eAAM,CAACX,SAAU;AAAC,QAAA,aAAA,EAAY,MAAM;AAAAc,QAAAA,QAAA,EAClDd,SAAAA;AAAS,OACN,CAAC,GACL,IAAI,eACRgB,cAAA,CAAA,KAAA,EAAA;QAAKV,SAAS,EAAEK,eAAM,CAACb,KAAM;QAAC,aAAaS,EAAAA,UAAU,EAAET,KAAM;AAAAgB,QAAAA,QAAA,EAC1DhB,KAAAA;AAAK,OACH,CAAC,EACLG,IAAI,gBAAGe,cAAA,CAACC,uBAAW,EAAA;AAACC,QAAAA,OAAO,EAAEjB,IAAAA;OAAO,CAAC,GAAG,IAAI,CAAA;KAC1C,CAAC,eACNQ,eAAA,CAAA,KAAA,EAAA;MAAKH,SAAS,EAAEK,eAAM,CAACQ,QAAS;AAAAL,MAAAA,QAAA,gBAC9BE,cAAA,CAAA,KAAA,EAAA;QAAKV,SAAS,EAAEK,eAAM,CAACZ,KAAM;QAAC,aAAaQ,EAAAA,UAAU,EAAER,KAAM;AAAAe,QAAAA,QAAA,EAC1Df,KAAAA;AAAK,OACH,CAAC,EACLG,IAAI,IAAI,IAAI,gBACXc,cAAA,CAAA,MAAA,EAAA;QACEV,SAAS,EAAEK,eAAM,CAACT,IAAK;AACvB,QAAA,aAAA,EAAY,MAAM;QAClB,aAAaK,EAAAA,UAAU,EAAEL,IAAK;AAAAY,QAAAA,QAAA,EAE7BZ,IAAAA;AAAI,OACD,CAAC,GACL,IAAI,EACPG,KAAK,KAAK,MAAM,IAAIF,QAAQ,IAAI,IAAI,gBACnCa,cAAA,CAAA,KAAA,EAAA;QAAKV,SAAS,EAAEK,eAAM,CAACR,QAAS;QAAC,aAAaI,EAAAA,UAAU,EAAEJ,QAAS;AAAAW,QAAAA,QAAA,EAChEX,QAAAA;OACE,CAAC,GACJ,IAAI,CAAA;KACL,CAAC,EACLE,KAAK,KAAK,QAAQ,IAAIF,QAAQ,IAAI,IAAI,gBACrCa,cAAA,CAAA,KAAA,EAAA;MAAKV,SAAS,EAAEK,eAAM,CAACR,QAAS;MAAC,aAAaI,EAAAA,UAAU,EAAEJ,QAAS;AAAAW,MAAAA,QAAA,EAChEX,QAAAA;KACE,CAAC,GACJ,IAAI,EACPC,WAAW,IAAI,IAAI,gBAClBY,cAAA,CAAA,KAAA,EAAA;MAAKV,SAAS,EAAEK,eAAM,CAACP,WAAY;MAAC,aAAaG,EAAAA,UAAU,EAAEH,WAAY;AAAAU,MAAAA,QAAA,EACtEV,WAAAA;KACE,CAAC,GACJ,IAAI,CAAA;AAAA,GACL,CAAC,CAAA;AAAA;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
const styles = {"item":"StatItem-module_item__QRZDs","left":"StatItem-module_left__-Ovy7","title":"StatItem-module_title__FHb51","titleIcon":"StatItem-module_titleIcon__Ma4M2","label":"StatItem-module_label__VE-ss","
|
|
3
|
+
const styles = {"item":"StatItem-module_item__QRZDs","left":"StatItem-module_left__-Ovy7","title":"StatItem-module_title__FHb51","titleIcon":"StatItem-module_titleIcon__Ma4M2","label":"StatItem-module_label__VE-ss","valueRow":"StatItem-module_valueRow__29twm","value":"StatItem-module_value__SNuSG","icon":"StatItem-module_icon__azLse","subValue":"StatItem-module_subValue__cw34j","description":"StatItem-module_description__lwTA2"};
|
|
4
4
|
|
|
5
5
|
module.exports = styles;
|
|
6
6
|
//# sourceMappingURL=StatItem.module.css.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"surface.module.css.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { forwardRef } from 'react';
|
|
2
|
+
import cn from 'classnames';
|
|
3
|
+
import styles from './Address.module.css.mjs';
|
|
4
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
5
|
+
import { Identicon } from '../identicon/Identicon.mjs';
|
|
6
|
+
import { Tooltip } from '../tooltip/Tooltip.mjs';
|
|
7
|
+
import { Copy } from '../copy/Copy.mjs';
|
|
8
|
+
import { Hex } from '../hex/Hex.mjs';
|
|
9
|
+
|
|
10
|
+
const Address = /*#__PURE__*/forwardRef((_ref, ref) => {
|
|
11
|
+
let {
|
|
12
|
+
address,
|
|
13
|
+
symbols,
|
|
14
|
+
identicon,
|
|
15
|
+
tooltip = false,
|
|
16
|
+
copy = false,
|
|
17
|
+
className,
|
|
18
|
+
children,
|
|
19
|
+
...rest
|
|
20
|
+
} = _ref;
|
|
21
|
+
const hex = /*#__PURE__*/jsx(Hex, {
|
|
22
|
+
value: address,
|
|
23
|
+
symbols: symbols,
|
|
24
|
+
title: tooltip ? '' : undefined
|
|
25
|
+
});
|
|
26
|
+
return /*#__PURE__*/jsxs("span", {
|
|
27
|
+
ref: ref,
|
|
28
|
+
className: cn(styles.root, className),
|
|
29
|
+
...rest,
|
|
30
|
+
children: [identicon != null ? /*#__PURE__*/jsx(Identicon, {
|
|
31
|
+
address: address,
|
|
32
|
+
size: identicon,
|
|
33
|
+
className: cn(styles.identicon, identicon >= 28 && styles.identiconLarge)
|
|
34
|
+
}) : null, tooltip ? /*#__PURE__*/jsx(Tooltip, {
|
|
35
|
+
content: address,
|
|
36
|
+
tabIndex: 0,
|
|
37
|
+
children: hex
|
|
38
|
+
}) : hex, copy ? /*#__PURE__*/jsx(Copy, {
|
|
39
|
+
text: address
|
|
40
|
+
}) : null, children]
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
Address.displayName = 'Address';
|
|
44
|
+
|
|
45
|
+
export { Address };
|
|
46
|
+
//# sourceMappingURL=Address.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Address.mjs","sources":["../../../src/address/Address.tsx"],"sourcesContent":["import { forwardRef, type ComponentPropsWithoutRef } from 'react'\n\nimport cn from 'classnames'\n\nimport { Copy } from '../copy'\nimport { Hex } from '../hex'\nimport { Identicon } from '../identicon'\nimport { Tooltip } from '../tooltip'\nimport styles from './Address.module.css'\n\nexport type AddressProps = ComponentPropsWithoutRef<'span'> & {\n address: string\n symbols?: number\n identicon?: number\n tooltip?: boolean\n copy?: boolean\n}\n\nexport const Address = forwardRef<HTMLSpanElement, AddressProps>(\n (\n {\n address,\n symbols,\n identicon,\n tooltip = false,\n copy = false,\n className,\n children,\n ...rest\n },\n ref,\n ) => {\n const hex = (\n <Hex value={address} symbols={symbols} title={tooltip ? '' : undefined} />\n )\n\n return (\n <span ref={ref} className={cn(styles.root, className)} {...rest}>\n {identicon != null ? (\n <Identicon\n address={address}\n size={identicon}\n className={cn(\n styles.identicon,\n identicon >= 28 && styles.identiconLarge,\n )}\n />\n ) : null}\n {tooltip ? (\n <Tooltip content={address} tabIndex={0}>\n {hex}\n </Tooltip>\n ) : (\n hex\n )}\n {copy ? <Copy text={address} /> : null}\n {children}\n </span>\n )\n },\n)\n\nAddress.displayName = 'Address'\n"],"names":["Address","forwardRef","_ref","ref","address","symbols","identicon","tooltip","copy","className","children","rest","hex","_jsx","Hex","value","title","undefined","_jsxs","cn","styles","root","Identicon","size","identiconLarge","Tooltip","content","tabIndex","Copy","text","displayName"],"mappings":";;;;;;;;;AAkBO,MAAMA,OAAO,gBAAGC,UAAU,CAC/B,CAAAC,IAAA,EAWEC,GAAG,KACA;EAAA,IAXH;IACEC,OAAO;IACPC,OAAO;IACPC,SAAS;AACTC,IAAAA,OAAO,GAAG,KAAK;AACfC,IAAAA,IAAI,GAAG,KAAK;IACZC,SAAS;IACTC,QAAQ;IACR,GAAGC,IAAAA;AACL,GAAC,GAAAT,IAAA,CAAA;AAGD,EAAA,MAAMU,GAAG,gBACPC,GAAA,CAACC,GAAG,EAAA;AAACC,IAAAA,KAAK,EAAEX,OAAQ;AAACC,IAAAA,OAAO,EAAEA,OAAQ;AAACW,IAAAA,KAAK,EAAET,OAAO,GAAG,EAAE,GAAGU,SAAAA;AAAU,GAAE,CAC1E,CAAA;AAED,EAAA,oBACEC,IAAA,CAAA,MAAA,EAAA;AAAMf,IAAAA,GAAG,EAAEA,GAAI;IAACM,SAAS,EAAEU,EAAE,CAACC,MAAM,CAACC,IAAI,EAAEZ,SAAS,CAAE;AAAA,IAAA,GAAKE,IAAI;AAAAD,IAAAA,QAAA,GAC5DJ,SAAS,IAAI,IAAI,gBAChBO,GAAA,CAACS,SAAS,EAAA;AACRlB,MAAAA,OAAO,EAAEA,OAAQ;AACjBmB,MAAAA,IAAI,EAAEjB,SAAU;AAChBG,MAAAA,SAAS,EAAEU,EAAE,CACXC,MAAM,CAACd,SAAS,EAChBA,SAAS,IAAI,EAAE,IAAIc,MAAM,CAACI,cAC5B,CAAA;KACD,CAAC,GACA,IAAI,EACPjB,OAAO,gBACNM,GAAA,CAACY,OAAO,EAAA;AAACC,MAAAA,OAAO,EAAEtB,OAAQ;AAACuB,MAAAA,QAAQ,EAAE,CAAE;AAAAjB,MAAAA,QAAA,EACpCE,GAAAA;KACM,CAAC,GAEVA,GACD,EACAJ,IAAI,gBAAGK,GAAA,CAACe,IAAI,EAAA;AAACC,MAAAA,IAAI,EAAEzB,OAAAA;AAAQ,KAAE,CAAC,GAAG,IAAI,EACrCM,QAAQ,CAAA;AAAA,GACL,CAAC,CAAA;AAEX,CACF,EAAC;AAEDV,OAAO,CAAC8B,WAAW,GAAG,SAAS;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Address.module.css.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { forwardRef } from 'react';
|
|
2
|
+
import cn from 'classnames';
|
|
3
|
+
import surfaceStyles from '../utils/surface.module.css.mjs';
|
|
4
|
+
import styles from './AddressButton.module.css.mjs';
|
|
5
|
+
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
6
|
+
import { IconLoaderCircle } from '../icons/components/base/IconLoaderCircle.mjs';
|
|
7
|
+
import { Address } from '../address/Address.mjs';
|
|
8
|
+
|
|
9
|
+
/** Pill button showing an identicon and the trimmed address. */
|
|
10
|
+
const AddressButton = /*#__PURE__*/forwardRef((_ref, ref) => {
|
|
11
|
+
let {
|
|
12
|
+
address,
|
|
13
|
+
symbols,
|
|
14
|
+
loading = false,
|
|
15
|
+
disabled = false,
|
|
16
|
+
className,
|
|
17
|
+
type = 'button',
|
|
18
|
+
...rest
|
|
19
|
+
} = _ref;
|
|
20
|
+
return /*#__PURE__*/jsx("button", {
|
|
21
|
+
ref: ref,
|
|
22
|
+
type: type,
|
|
23
|
+
disabled: disabled || loading,
|
|
24
|
+
"aria-busy": loading || undefined,
|
|
25
|
+
className: cn(surfaceStyles.surface, styles.button, loading && !disabled && styles.loading, className),
|
|
26
|
+
...rest,
|
|
27
|
+
children: loading ? /*#__PURE__*/jsxs(Fragment, {
|
|
28
|
+
children: [/*#__PURE__*/jsx("span", {
|
|
29
|
+
className: styles.slot,
|
|
30
|
+
"aria-hidden": "true",
|
|
31
|
+
children: /*#__PURE__*/jsx(IconLoaderCircle, {
|
|
32
|
+
className: styles.spinner
|
|
33
|
+
})
|
|
34
|
+
}), "Loading"]
|
|
35
|
+
}) : /*#__PURE__*/jsx(Address, {
|
|
36
|
+
address: address,
|
|
37
|
+
symbols: symbols,
|
|
38
|
+
identicon: 28
|
|
39
|
+
})
|
|
40
|
+
});
|
|
41
|
+
});
|
|
42
|
+
AddressButton.displayName = 'AddressButton';
|
|
43
|
+
|
|
44
|
+
export { AddressButton };
|
|
45
|
+
//# sourceMappingURL=AddressButton.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AddressButton.mjs","sources":["../../../src/address-button/AddressButton.tsx"],"sourcesContent":["import { forwardRef, type ButtonHTMLAttributes } from 'react'\n\nimport cn from 'classnames'\n\nimport { Address } from '../address'\nimport { IconLoaderCircle } from '../icons'\nimport surfaceStyles from '../utils/surface.module.css'\nimport styles from './AddressButton.module.css'\n\nexport type AddressButtonProps = Omit<\n ButtonHTMLAttributes<HTMLButtonElement>,\n 'children'\n> & {\n address: string\n symbols?: number\n loading?: boolean\n}\n\n/** Pill button showing an identicon and the trimmed address. */\nexport const AddressButton = forwardRef<HTMLButtonElement, AddressButtonProps>(\n (\n {\n address,\n symbols,\n loading = false,\n disabled = false,\n className,\n type = 'button',\n ...rest\n },\n ref,\n ) => (\n <button\n ref={ref}\n type={type}\n disabled={disabled || loading}\n aria-busy={loading || undefined}\n className={cn(\n surfaceStyles.surface,\n styles.button,\n loading && !disabled && styles.loading,\n className,\n )}\n {...rest}\n >\n {loading ? (\n <>\n <span className={styles.slot} aria-hidden='true'>\n <IconLoaderCircle className={styles.spinner} />\n </span>\n Loading\n </>\n ) : (\n <Address address={address} symbols={symbols} identicon={28} />\n )}\n </button>\n ),\n)\n\nAddressButton.displayName = 'AddressButton'\n"],"names":["AddressButton","forwardRef","_ref","ref","address","symbols","loading","disabled","className","type","rest","_jsx","undefined","cn","surfaceStyles","surface","styles","button","children","_jsxs","_Fragment","slot","IconLoaderCircle","spinner","Address","identicon","displayName"],"mappings":";;;;;;;;AAkBA;AACO,MAAMA,aAAa,gBAAGC,UAAU,CACrC,CAAAC,IAAA,EAUEC,GAAG,KAAA;EAAA,IATH;IACEC,OAAO;IACPC,OAAO;AACPC,IAAAA,OAAO,GAAG,KAAK;AACfC,IAAAA,QAAQ,GAAG,KAAK;IAChBC,SAAS;AACTC,IAAAA,IAAI,GAAG,QAAQ;IACf,GAAGC,IAAAA;AACL,GAAC,GAAAR,IAAA,CAAA;AAAA,EAAA,oBAGDS,GAAA,CAAA,QAAA,EAAA;AACER,IAAAA,GAAG,EAAEA,GAAI;AACTM,IAAAA,IAAI,EAAEA,IAAK;IACXF,QAAQ,EAAEA,QAAQ,IAAID,OAAQ;IAC9B,WAAWA,EAAAA,OAAO,IAAIM,SAAU;IAChCJ,SAAS,EAAEK,EAAE,CACXC,aAAa,CAACC,OAAO,EACrBC,MAAM,CAACC,MAAM,EACbX,OAAO,IAAI,CAACC,QAAQ,IAAIS,MAAM,CAACV,OAAO,EACtCE,SACF,CAAE;AAAA,IAAA,GACEE,IAAI;AAAAQ,IAAAA,QAAA,EAEPZ,OAAO,gBACNa,IAAA,CAAAC,QAAA,EAAA;AAAAF,MAAAA,QAAA,gBACEP,GAAA,CAAA,MAAA,EAAA;QAAMH,SAAS,EAAEQ,MAAM,CAACK,IAAK;AAAC,QAAA,aAAA,EAAY,MAAM;QAAAH,QAAA,eAC9CP,GAAA,CAACW,gBAAgB,EAAA;UAACd,SAAS,EAAEQ,MAAM,CAACO,OAAAA;SAAU,CAAA;AAAC,OAC3C,CAAC,EAET,SAAA,CAAA;AAAA,KAAE,CAAC,gBAEHZ,GAAA,CAACa,OAAO,EAAA;AAACpB,MAAAA,OAAO,EAAEA,OAAQ;AAACC,MAAAA,OAAO,EAAEA,OAAQ;AAACoB,MAAAA,SAAS,EAAE,EAAA;KAAK,CAAA;AAC9D,GACK,CAAC,CAAA;AAAA,CAEb,EAAC;AAEDzB,aAAa,CAAC0B,WAAW,GAAG,eAAe;;;;"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
const styles = {"button":"AddressButton-module_button__cNJUm","loading":"AddressButton-module_loading__TmxUZ","slot":"AddressButton-module_slot__A5Xbe","spinner":"AddressButton-module_spinner__JztAP","spin":"AddressButton-module_spin__no7O5"};
|
|
2
|
+
|
|
3
|
+
export { styles as default };
|
|
4
|
+
//# sourceMappingURL=AddressButton.module.css.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AddressButton.module.css.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|
|
@@ -25,7 +25,7 @@ const Button = /*#__PURE__*/forwardRef((_ref, ref) => {
|
|
|
25
25
|
type: type,
|
|
26
26
|
disabled: disabled || loading,
|
|
27
27
|
"aria-busy": loading || undefined,
|
|
28
|
-
className: cn(styles.button, styles[variant], styles[size], loading && styles.loading, className),
|
|
28
|
+
className: cn(styles.button, styles[variant], styles[size], loading && !disabled && styles.loading, className),
|
|
29
29
|
"data-testid": dataTestId?.root,
|
|
30
30
|
...rest,
|
|
31
31
|
children: [loading ? /*#__PURE__*/jsx(IconLoaderCircle, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.mjs","sources":["../../../src/button/Button.tsx"],"sourcesContent":["import { forwardRef, type ButtonHTMLAttributes, type ReactNode } from 'react'\n\nimport cn from 'classnames'\n\nimport { CounterSlot } from '../counter/CounterSlot'\nimport { IconLoaderCircle } from '../icons'\nimport styles from './Button.module.css'\n\nexport type ButtonVariant = 'primary' | 'outline' | 'subtle' | 'ghost' | 'error'\n\nexport type ButtonSize = 'big' | 'small'\n\nexport type ButtonDataTestId = {\n root?: string\n iconLeft?: string\n iconRight?: string\n content?: string\n counter?: string\n}\n\nexport type ButtonProps = ButtonHTMLAttributes<HTMLButtonElement> & {\n variant?: ButtonVariant\n size?: ButtonSize\n loading?: boolean\n iconLeft?: ReactNode\n iconRight?: ReactNode\n /** Corner slot, aria-hidden: put the count into `aria-label`. */\n counter?: ReactNode\n dataTestId?: ButtonDataTestId\n}\n\nexport const Button = forwardRef<HTMLButtonElement, ButtonProps>(\n (\n {\n className,\n children,\n type = 'button',\n variant = 'primary',\n size = 'big',\n loading = false,\n disabled = false,\n iconLeft,\n iconRight,\n counter,\n dataTestId,\n ...rest\n },\n ref,\n ) => (\n <button\n ref={ref}\n type={type}\n disabled={disabled || loading}\n aria-busy={loading || undefined}\n className={cn(\n styles.button,\n styles[variant],\n styles[size],\n loading && styles.loading,\n className,\n )}\n data-testid={dataTestId?.root}\n {...rest}\n >\n {loading ? (\n <IconLoaderCircle className={styles.spinner} aria-hidden='true' />\n ) : (\n iconLeft != null && (\n <span\n className={styles.icon}\n aria-hidden='true'\n data-testid={dataTestId?.iconLeft}\n >\n {iconLeft}\n </span>\n )\n )}\n <span className={styles.content} data-testid={dataTestId?.content}>\n {children}\n </span>\n {!loading && iconRight != null ? (\n <span\n className={styles.icon}\n aria-hidden='true'\n data-testid={dataTestId?.iconRight}\n >\n {iconRight}\n </span>\n ) : null}\n <CounterSlot dataTestId={dataTestId?.counter}>{counter}</CounterSlot>\n </button>\n ),\n)\n\nButton.displayName = 'Button'\n"],"names":["Button","forwardRef","_ref","ref","className","children","type","variant","size","loading","disabled","iconLeft","iconRight","counter","dataTestId","rest","_jsxs","undefined","cn","styles","button","root","_jsx","IconLoaderCircle","spinner","icon","content","CounterSlot","displayName"],"mappings":";;;;;;;AA+BO,MAAMA,MAAM,gBAAGC,UAAU,CAC9B,CAAAC,IAAA,EAeEC,GAAG,KAAA;EAAA,IAdH;IACEC,SAAS;IACTC,QAAQ;AACRC,IAAAA,IAAI,GAAG,QAAQ;AACfC,IAAAA,OAAO,GAAG,SAAS;AACnBC,IAAAA,IAAI,GAAG,KAAK;AACZC,IAAAA,OAAO,GAAG,KAAK;AACfC,IAAAA,QAAQ,GAAG,KAAK;IAChBC,QAAQ;IACRC,SAAS;IACTC,OAAO;IACPC,UAAU;IACV,GAAGC,IAAAA;AACL,GAAC,GAAAb,IAAA,CAAA;AAAA,EAAA,oBAGDc,IAAA,CAAA,QAAA,EAAA;AACEb,IAAAA,GAAG,EAAEA,GAAI;AACTG,IAAAA,IAAI,EAAEA,IAAK;IACXI,QAAQ,EAAEA,QAAQ,IAAID,OAAQ;IAC9B,WAAWA,EAAAA,OAAO,IAAIQ,SAAU;IAChCb,SAAS,EAAEc,EAAE,CACXC,MAAM,CAACC,MAAM,EACbD,MAAM,CAACZ,OAAO,CAAC,EACfY,MAAM,CAACX,IAAI,CAAC,EACZC,OAAO,
|
|
1
|
+
{"version":3,"file":"Button.mjs","sources":["../../../src/button/Button.tsx"],"sourcesContent":["import { forwardRef, type ButtonHTMLAttributes, type ReactNode } from 'react'\n\nimport cn from 'classnames'\n\nimport { CounterSlot } from '../counter/CounterSlot'\nimport { IconLoaderCircle } from '../icons'\nimport styles from './Button.module.css'\n\nexport type ButtonVariant = 'primary' | 'outline' | 'subtle' | 'ghost' | 'error'\n\nexport type ButtonSize = 'big' | 'small'\n\nexport type ButtonDataTestId = {\n root?: string\n iconLeft?: string\n iconRight?: string\n content?: string\n counter?: string\n}\n\nexport type ButtonProps = ButtonHTMLAttributes<HTMLButtonElement> & {\n variant?: ButtonVariant\n size?: ButtonSize\n loading?: boolean\n iconLeft?: ReactNode\n iconRight?: ReactNode\n /** Corner slot, aria-hidden: put the count into `aria-label`. */\n counter?: ReactNode\n dataTestId?: ButtonDataTestId\n}\n\nexport const Button = forwardRef<HTMLButtonElement, ButtonProps>(\n (\n {\n className,\n children,\n type = 'button',\n variant = 'primary',\n size = 'big',\n loading = false,\n disabled = false,\n iconLeft,\n iconRight,\n counter,\n dataTestId,\n ...rest\n },\n ref,\n ) => (\n <button\n ref={ref}\n type={type}\n disabled={disabled || loading}\n aria-busy={loading || undefined}\n className={cn(\n styles.button,\n styles[variant],\n styles[size],\n loading && !disabled && styles.loading,\n className,\n )}\n data-testid={dataTestId?.root}\n {...rest}\n >\n {loading ? (\n <IconLoaderCircle className={styles.spinner} aria-hidden='true' />\n ) : (\n iconLeft != null && (\n <span\n className={styles.icon}\n aria-hidden='true'\n data-testid={dataTestId?.iconLeft}\n >\n {iconLeft}\n </span>\n )\n )}\n <span className={styles.content} data-testid={dataTestId?.content}>\n {children}\n </span>\n {!loading && iconRight != null ? (\n <span\n className={styles.icon}\n aria-hidden='true'\n data-testid={dataTestId?.iconRight}\n >\n {iconRight}\n </span>\n ) : null}\n <CounterSlot dataTestId={dataTestId?.counter}>{counter}</CounterSlot>\n </button>\n ),\n)\n\nButton.displayName = 'Button'\n"],"names":["Button","forwardRef","_ref","ref","className","children","type","variant","size","loading","disabled","iconLeft","iconRight","counter","dataTestId","rest","_jsxs","undefined","cn","styles","button","root","_jsx","IconLoaderCircle","spinner","icon","content","CounterSlot","displayName"],"mappings":";;;;;;;AA+BO,MAAMA,MAAM,gBAAGC,UAAU,CAC9B,CAAAC,IAAA,EAeEC,GAAG,KAAA;EAAA,IAdH;IACEC,SAAS;IACTC,QAAQ;AACRC,IAAAA,IAAI,GAAG,QAAQ;AACfC,IAAAA,OAAO,GAAG,SAAS;AACnBC,IAAAA,IAAI,GAAG,KAAK;AACZC,IAAAA,OAAO,GAAG,KAAK;AACfC,IAAAA,QAAQ,GAAG,KAAK;IAChBC,QAAQ;IACRC,SAAS;IACTC,OAAO;IACPC,UAAU;IACV,GAAGC,IAAAA;AACL,GAAC,GAAAb,IAAA,CAAA;AAAA,EAAA,oBAGDc,IAAA,CAAA,QAAA,EAAA;AACEb,IAAAA,GAAG,EAAEA,GAAI;AACTG,IAAAA,IAAI,EAAEA,IAAK;IACXI,QAAQ,EAAEA,QAAQ,IAAID,OAAQ;IAC9B,WAAWA,EAAAA,OAAO,IAAIQ,SAAU;IAChCb,SAAS,EAAEc,EAAE,CACXC,MAAM,CAACC,MAAM,EACbD,MAAM,CAACZ,OAAO,CAAC,EACfY,MAAM,CAACX,IAAI,CAAC,EACZC,OAAO,IAAI,CAACC,QAAQ,IAAIS,MAAM,CAACV,OAAO,EACtCL,SACF,CAAE;IACF,aAAaU,EAAAA,UAAU,EAAEO,IAAK;AAAA,IAAA,GAC1BN,IAAI;AAAAV,IAAAA,QAAA,EAEPI,CAAAA,OAAO,gBACNa,GAAA,CAACC,gBAAgB,EAAA;MAACnB,SAAS,EAAEe,MAAM,CAACK,OAAQ;MAAC,aAAY,EAAA,MAAA;AAAM,KAAE,CAAC,GAElEb,QAAQ,IAAI,IAAI,iBACdW,GAAA,CAAA,MAAA,EAAA;MACElB,SAAS,EAAEe,MAAM,CAACM,IAAK;AACvB,MAAA,aAAA,EAAY,MAAM;MAClB,aAAaX,EAAAA,UAAU,EAAEH,QAAS;AAAAN,MAAAA,QAAA,EAEjCM,QAAAA;KACG,CAET,eACDW,GAAA,CAAA,MAAA,EAAA;MAAMlB,SAAS,EAAEe,MAAM,CAACO,OAAQ;MAAC,aAAaZ,EAAAA,UAAU,EAAEY,OAAQ;AAAArB,MAAAA,QAAA,EAC/DA,QAAAA;KACG,CAAC,EACN,CAACI,OAAO,IAAIG,SAAS,IAAI,IAAI,gBAC5BU,GAAA,CAAA,MAAA,EAAA;MACElB,SAAS,EAAEe,MAAM,CAACM,IAAK;AACvB,MAAA,aAAA,EAAY,MAAM;MAClB,aAAaX,EAAAA,UAAU,EAAEF,SAAU;AAAAP,MAAAA,QAAA,EAElCO,SAAAA;AAAS,KACN,CAAC,GACL,IAAI,eACRU,GAAA,CAACK,WAAW,EAAA;MAACb,UAAU,EAAEA,UAAU,EAAED,OAAQ;AAAAR,MAAAA,QAAA,EAAEQ,OAAAA;AAAO,KAAc,CAAC,CAAA;AAAA,GAC/D,CAAC,CAAA;AAAA,CAEb,EAAC;AAEDb,MAAM,CAAC4B,WAAW,GAAG,QAAQ;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const styles = {"button":"Button-module_button__eiKKZ","content":"Button-module_content__SVjwi","icon":"Button-module_icon__Ojq-e","spinner":"Button-module_spinner__QToZm","spin":"Button-module_spin__Q6mex","big":"Button-module_big__-gJao","small":"Button-module_small__U2Zqq","primary":"Button-module_primary__EU45Z","outline":"Button-module_outline__Jx-Hc","subtle":"Button-module_subtle__2DyRK","ghost":"Button-module_ghost__OX4Ks","error":"Button-module_error__qp2tu"
|
|
1
|
+
const styles = {"button":"Button-module_button__eiKKZ","loading":"Button-module_loading__wZ1IR","content":"Button-module_content__SVjwi","icon":"Button-module_icon__Ojq-e","spinner":"Button-module_spinner__QToZm","spin":"Button-module_spin__Q6mex","big":"Button-module_big__-gJao","small":"Button-module_small__U2Zqq","primary":"Button-module_primary__EU45Z","outline":"Button-module_outline__Jx-Hc","subtle":"Button-module_subtle__2DyRK","ghost":"Button-module_ghost__OX4Ks","error":"Button-module_error__qp2tu"};
|
|
2
2
|
|
|
3
3
|
export { styles as default };
|
|
4
4
|
//# sourceMappingURL=Button.module.css.mjs.map
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { forwardRef } from 'react';
|
|
2
|
+
import cn from 'classnames';
|
|
3
|
+
import styles from './Copy.module.css.mjs';
|
|
4
|
+
import { useCopy } from './useCopy.mjs';
|
|
5
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
6
|
+
import { IconCopy } from '../icons/components/base/IconCopy.mjs';
|
|
7
|
+
import { IconCheck } from '../icons/components/base/IconCheck.mjs';
|
|
8
|
+
|
|
9
|
+
const Copy = /*#__PURE__*/forwardRef((_ref, ref) => {
|
|
10
|
+
let {
|
|
11
|
+
text,
|
|
12
|
+
onCopy,
|
|
13
|
+
onClick,
|
|
14
|
+
className,
|
|
15
|
+
...rest
|
|
16
|
+
} = _ref;
|
|
17
|
+
const {
|
|
18
|
+
copy,
|
|
19
|
+
copied
|
|
20
|
+
} = useCopy(text, {
|
|
21
|
+
onCopy
|
|
22
|
+
});
|
|
23
|
+
const handleClick = event => {
|
|
24
|
+
onClick?.(event);
|
|
25
|
+
void copy();
|
|
26
|
+
};
|
|
27
|
+
return /*#__PURE__*/jsx("button", {
|
|
28
|
+
ref: ref,
|
|
29
|
+
type: "button",
|
|
30
|
+
"aria-label": copied ? 'Copied' : 'Copy',
|
|
31
|
+
"data-copied": copied || undefined,
|
|
32
|
+
className: cn(styles.root, className),
|
|
33
|
+
onClick: handleClick,
|
|
34
|
+
...rest,
|
|
35
|
+
children: /*#__PURE__*/jsxs("span", {
|
|
36
|
+
className: styles.icon,
|
|
37
|
+
"aria-hidden": "true",
|
|
38
|
+
children: [/*#__PURE__*/jsx("span", {
|
|
39
|
+
className: cn(styles.glyph, styles.idle),
|
|
40
|
+
children: /*#__PURE__*/jsx(IconCopy, {})
|
|
41
|
+
}), /*#__PURE__*/jsx("span", {
|
|
42
|
+
className: cn(styles.glyph, styles.done),
|
|
43
|
+
children: /*#__PURE__*/jsx(IconCheck, {})
|
|
44
|
+
})]
|
|
45
|
+
})
|
|
46
|
+
});
|
|
47
|
+
});
|
|
48
|
+
Copy.displayName = 'Copy';
|
|
49
|
+
|
|
50
|
+
export { Copy };
|
|
51
|
+
//# sourceMappingURL=Copy.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Copy.mjs","sources":["../../../src/copy/Copy.tsx"],"sourcesContent":["import {\n forwardRef,\n type ComponentPropsWithoutRef,\n type MouseEvent,\n} from 'react'\n\nimport cn from 'classnames'\n\nimport { IconCheck, IconCopy } from '../icons'\nimport styles from './Copy.module.css'\nimport { useCopy } from './useCopy'\n\nexport type CopyProps = Omit<ComponentPropsWithoutRef<'button'>, 'children'> & {\n text: string\n onCopy?: () => void\n}\n\nexport const Copy = forwardRef<HTMLButtonElement, CopyProps>(\n ({ text, onCopy, onClick, className, ...rest }, ref) => {\n const { copy, copied } = useCopy(text, { onCopy })\n\n const handleClick = (event: MouseEvent<HTMLButtonElement>) => {\n onClick?.(event)\n void copy()\n }\n\n return (\n <button\n ref={ref}\n type='button'\n aria-label={copied ? 'Copied' : 'Copy'}\n data-copied={copied || undefined}\n className={cn(styles.root, className)}\n onClick={handleClick}\n {...rest}\n >\n <span className={styles.icon} aria-hidden='true'>\n <span className={cn(styles.glyph, styles.idle)}>\n <IconCopy />\n </span>\n <span className={cn(styles.glyph, styles.done)}>\n <IconCheck />\n </span>\n </span>\n </button>\n )\n },\n)\n\nCopy.displayName = 'Copy'\n"],"names":["Copy","forwardRef","_ref","ref","text","onCopy","onClick","className","rest","copy","copied","useCopy","handleClick","event","_jsx","type","undefined","cn","styles","root","children","_jsxs","icon","glyph","idle","IconCopy","done","IconCheck","displayName"],"mappings":";;;;;;;;AAiBO,MAAMA,IAAI,gBAAGC,UAAU,CAC5B,CAAAC,IAAA,EAAgDC,GAAG,KAAK;EAAA,IAAvD;IAAEC,IAAI;IAAEC,MAAM;IAAEC,OAAO;IAAEC,SAAS;IAAE,GAAGC,IAAAA;AAAK,GAAC,GAAAN,IAAA,CAAA;EAC5C,MAAM;IAAEO,IAAI;AAAEC,IAAAA,MAAAA;AAAO,GAAC,GAAGC,OAAO,CAACP,IAAI,EAAE;AAAEC,IAAAA,MAAAA;AAAO,GAAC,CAAC,CAAA;EAElD,MAAMO,WAAW,GAAIC,KAAoC,IAAK;IAC5DP,OAAO,GAAGO,KAAK,CAAC,CAAA;IAChB,KAAKJ,IAAI,EAAE,CAAA;GACZ,CAAA;AAED,EAAA,oBACEK,GAAA,CAAA,QAAA,EAAA;AACEX,IAAAA,GAAG,EAAEA,GAAI;AACTY,IAAAA,IAAI,EAAC,QAAQ;AACb,IAAA,YAAA,EAAYL,MAAM,GAAG,QAAQ,GAAG,MAAO;IACvC,aAAaA,EAAAA,MAAM,IAAIM,SAAU;IACjCT,SAAS,EAAEU,EAAE,CAACC,MAAM,CAACC,IAAI,EAAEZ,SAAS,CAAE;AACtCD,IAAAA,OAAO,EAAEM,WAAY;AAAA,IAAA,GACjBJ,IAAI;AAAAY,IAAAA,QAAA,eAERC,IAAA,CAAA,MAAA,EAAA;MAAMd,SAAS,EAAEW,MAAM,CAACI,IAAK;AAAC,MAAA,aAAA,EAAY,MAAM;AAAAF,MAAAA,QAAA,gBAC9CN,GAAA,CAAA,MAAA,EAAA;QAAMP,SAAS,EAAEU,EAAE,CAACC,MAAM,CAACK,KAAK,EAAEL,MAAM,CAACM,IAAI,CAAE;AAAAJ,QAAAA,QAAA,eAC7CN,GAAA,CAACW,QAAQ,EAAE,EAAA,CAAA;OACP,CAAC,eACPX,GAAA,CAAA,MAAA,EAAA;QAAMP,SAAS,EAAEU,EAAE,CAACC,MAAM,CAACK,KAAK,EAAEL,MAAM,CAACQ,IAAI,CAAE;AAAAN,QAAAA,QAAA,eAC7CN,GAAA,CAACa,SAAS,EAAE,EAAA,CAAA;AAAC,OACT,CAAC,CAAA;KACH,CAAA;AAAC,GACD,CAAC,CAAA;AAEb,CACF,EAAC;AAED3B,IAAI,CAAC4B,WAAW,GAAG,MAAM;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Copy.module.css.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { useState, useRef, useEffect, useCallback } from 'react';
|
|
2
|
+
|
|
3
|
+
const useCopy = function (text) {
|
|
4
|
+
let {
|
|
5
|
+
onCopy,
|
|
6
|
+
timeout = 1000
|
|
7
|
+
} = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
8
|
+
const [copied, setCopied] = useState(false);
|
|
9
|
+
const timerRef = useRef();
|
|
10
|
+
useEffect(() => () => clearTimeout(timerRef.current), []);
|
|
11
|
+
const copy = useCallback(async () => {
|
|
12
|
+
try {
|
|
13
|
+
await navigator.clipboard.writeText(text);
|
|
14
|
+
} catch {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
clearTimeout(timerRef.current);
|
|
18
|
+
setCopied(true);
|
|
19
|
+
onCopy?.();
|
|
20
|
+
timerRef.current = setTimeout(() => setCopied(false), timeout);
|
|
21
|
+
}, [text, onCopy, timeout]);
|
|
22
|
+
return {
|
|
23
|
+
copy,
|
|
24
|
+
copied
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
export { useCopy };
|
|
29
|
+
//# sourceMappingURL=useCopy.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useCopy.mjs","sources":["../../../src/copy/useCopy.ts"],"sourcesContent":["import { useCallback, useEffect, useRef, useState } from 'react'\n\nexport type UseCopyOptions = {\n onCopy?: () => void\n timeout?: number\n}\n\nexport const useCopy = (\n text: string,\n { onCopy, timeout = 1000 }: UseCopyOptions = {},\n) => {\n const [copied, setCopied] = useState(false)\n const timerRef = useRef<ReturnType<typeof setTimeout>>()\n\n useEffect(() => () => clearTimeout(timerRef.current), [])\n\n const copy = useCallback(async () => {\n try {\n await navigator.clipboard.writeText(text)\n } catch {\n return\n }\n\n clearTimeout(timerRef.current)\n setCopied(true)\n onCopy?.()\n timerRef.current = setTimeout(() => setCopied(false), timeout)\n }, [text, onCopy, timeout])\n\n return { copy, copied }\n}\n"],"names":["useCopy","text","onCopy","timeout","arguments","length","undefined","copied","setCopied","useState","timerRef","useRef","useEffect","clearTimeout","current","copy","useCallback","navigator","clipboard","writeText","setTimeout"],"mappings":";;MAOaA,OAAO,GAAG,UACrBC,IAAY,EAET;EAAA,IADH;IAAEC,MAAM;AAAEC,IAAAA,OAAO,GAAG,IAAA;AAAqB,GAAC,GAAAC,SAAA,CAAAC,MAAA,GAAAD,CAAAA,IAAAA,SAAA,CAAAE,CAAAA,CAAAA,KAAAA,SAAA,GAAAF,SAAA,CAAG,CAAA,CAAA,GAAA,EAAE,CAAA;EAE/C,MAAM,CAACG,MAAM,EAAEC,SAAS,CAAC,GAAGC,QAAQ,CAAC,KAAK,CAAC,CAAA;AAC3C,EAAA,MAAMC,QAAQ,GAAGC,MAAM,EAAiC,CAAA;EAExDC,SAAS,CAAC,MAAM,MAAMC,YAAY,CAACH,QAAQ,CAACI,OAAO,CAAC,EAAE,EAAE,CAAC,CAAA;AAEzD,EAAA,MAAMC,IAAI,GAAGC,WAAW,CAAC,YAAY;IACnC,IAAI;AACF,MAAA,MAAMC,SAAS,CAACC,SAAS,CAACC,SAAS,CAAClB,IAAI,CAAC,CAAA;AAC3C,KAAC,CAAC,MAAM;AACN,MAAA,OAAA;AACF,KAAA;AAEAY,IAAAA,YAAY,CAACH,QAAQ,CAACI,OAAO,CAAC,CAAA;IAC9BN,SAAS,CAAC,IAAI,CAAC,CAAA;AACfN,IAAAA,MAAM,IAAI,CAAA;AACVQ,IAAAA,QAAQ,CAACI,OAAO,GAAGM,UAAU,CAAC,MAAMZ,SAAS,CAAC,KAAK,CAAC,EAAEL,OAAO,CAAC,CAAA;GAC/D,EAAE,CAACF,IAAI,EAAEC,MAAM,EAAEC,OAAO,CAAC,CAAC,CAAA;EAE3B,OAAO;IAAEY,IAAI;AAAER,IAAAA,MAAAA;GAAQ,CAAA;AACzB;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const styles = {"card":"DataList-module_card__k21RE","divided":"DataList-module_divided__y48ZD","row":"DataList-module_row__d5UUl","mainRow":"DataList-module_mainRow__eAAA3","labelGroup":"DataList-module_labelGroup__-vCWZ","leadingIcon":"DataList-module_leadingIcon__6L9A9","label":"DataList-module_label__xl6By","
|
|
1
|
+
const styles = {"card":"DataList-module_card__k21RE","divided":"DataList-module_divided__y48ZD","row":"DataList-module_row__d5UUl","mainRow":"DataList-module_mainRow__eAAA3","labelGroup":"DataList-module_labelGroup__-vCWZ","leadingIcon":"DataList-module_leadingIcon__6L9A9","label":"DataList-module_label__xl6By","infoFaint":"DataList-module_infoFaint__lq3WZ","value":"DataList-module_value__oGp7D","valueOld":"DataList-module_valueOld__FuEV2","valueArrow":"DataList-module_valueArrow__7RRSA","descriptionRow":"DataList-module_descriptionRow__oZCWf","description":"DataList-module_description__biMHO"};
|
|
2
2
|
|
|
3
3
|
export { styles as default };
|
|
4
4
|
//# sourceMappingURL=DataList.module.css.mjs.map
|