@mieweb/ui 0.7.3 → 0.8.0-dev.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 +45 -24
- package/agent/README.md +20 -0
- package/agent/init-agent.mjs +61 -0
- package/agent/mieweb-ui.instructions.md +169 -0
- package/dist/ag-grid.cjs +11 -0
- package/dist/ag-grid.cjs.map +1 -1
- package/dist/ag-grid.d.cts +4 -0
- package/dist/ag-grid.d.ts +4 -0
- package/dist/ag-grid.js +11 -0
- package/dist/ag-grid.js.map +1 -1
- package/dist/brands/index.cjs +12 -12
- package/dist/brands/index.js +3 -3
- package/dist/chunk-3IMM2PM4.js +259 -0
- package/dist/chunk-3IMM2PM4.js.map +1 -0
- package/dist/chunk-3SHLOF4V.cjs +128 -0
- package/dist/chunk-3SHLOF4V.cjs.map +1 -0
- package/dist/chunk-3TXOFAXP.cjs +139 -0
- package/dist/chunk-3TXOFAXP.cjs.map +1 -0
- package/dist/{chunk-ZBI52NP2.cjs → chunk-56QJHQ5C.cjs} +156 -39
- package/dist/chunk-56QJHQ5C.cjs.map +1 -0
- package/dist/chunk-5JZIDILK.cjs +164 -0
- package/dist/chunk-5JZIDILK.cjs.map +1 -0
- package/dist/chunk-5MXO6PEV.cjs +78 -0
- package/dist/chunk-5MXO6PEV.cjs.map +1 -0
- package/dist/chunk-5QZ73PZC.js +62 -0
- package/dist/chunk-5QZ73PZC.js.map +1 -0
- package/dist/chunk-6NZXWKUE.js +3 -0
- package/dist/chunk-6NZXWKUE.js.map +1 -0
- package/dist/chunk-6SCQ7FKT.js +115 -0
- package/dist/chunk-6SCQ7FKT.js.map +1 -0
- package/dist/{chunk-KFLDXJEE.js → chunk-753Z3NXL.js} +46 -15
- package/dist/chunk-753Z3NXL.js.map +1 -0
- package/dist/{chunk-S3MKIDYG.cjs → chunk-7AECNMYV.cjs} +46 -15
- package/dist/chunk-7AECNMYV.cjs.map +1 -0
- package/dist/chunk-7IKLGH3Z.cjs +92 -0
- package/dist/chunk-7IKLGH3Z.cjs.map +1 -0
- package/dist/chunk-7L7OPISJ.cjs +291 -0
- package/dist/chunk-7L7OPISJ.cjs.map +1 -0
- package/dist/chunk-7RV6CAP6.cjs +106 -0
- package/dist/chunk-7RV6CAP6.cjs.map +1 -0
- package/dist/{chunk-LC7YHZXM.js → chunk-A5YOIJKL.js} +5 -5
- package/dist/{chunk-LC7YHZXM.js.map → chunk-A5YOIJKL.js.map} +1 -1
- package/dist/{chunk-6MMIWE7H.js → chunk-AESFOMSH.js} +373 -4
- package/dist/chunk-AESFOMSH.js.map +1 -0
- package/dist/{chunk-RBS3GHDZ.cjs → chunk-BOW7ZGI2.cjs} +4 -4
- package/dist/{chunk-RBS3GHDZ.cjs.map → chunk-BOW7ZGI2.cjs.map} +1 -1
- package/dist/{chunk-WUNWHOLA.cjs → chunk-BSDBI6H7.cjs} +116 -26
- package/dist/chunk-BSDBI6H7.cjs.map +1 -0
- package/dist/chunk-CG4ZKJLE.js +84 -0
- package/dist/chunk-CG4ZKJLE.js.map +1 -0
- package/dist/{chunk-Z4PECE5S.js → chunk-DX64KLSN.js} +2 -2
- package/dist/{chunk-Z4PECE5S.js.map → chunk-DX64KLSN.js.map} +1 -1
- package/dist/chunk-ELYGV32O.cjs +230 -0
- package/dist/chunk-ELYGV32O.cjs.map +1 -0
- package/dist/{chunk-QUUBTNMH.js → chunk-EPSB4WTL.js} +45 -15
- package/dist/chunk-EPSB4WTL.js.map +1 -0
- package/dist/chunk-F57VRLKP.js +708 -0
- package/dist/chunk-F57VRLKP.js.map +1 -0
- package/dist/{chunk-5IDYOJHO.cjs → chunk-G7EQ3JPX.cjs} +45 -15
- package/dist/chunk-G7EQ3JPX.cjs.map +1 -0
- package/dist/{chunk-FKLUSYFP.cjs → chunk-GQVL2JKQ.cjs} +4 -4
- package/dist/{chunk-FKLUSYFP.cjs.map → chunk-GQVL2JKQ.cjs.map} +1 -1
- package/dist/{chunk-3D4ITDLO.js → chunk-GXODR6V4.js} +3 -3
- package/dist/{chunk-3D4ITDLO.js.map → chunk-GXODR6V4.js.map} +1 -1
- package/dist/{chunk-AFGADE3B.js → chunk-H3YO5GBM.js} +117 -27
- package/dist/chunk-H3YO5GBM.js.map +1 -0
- package/dist/chunk-HK3AMH3Q.cjs +151 -0
- package/dist/chunk-HK3AMH3Q.cjs.map +1 -0
- package/dist/chunk-HQ3XPCHG.js +114 -0
- package/dist/chunk-HQ3XPCHG.js.map +1 -0
- package/dist/chunk-I44YNYI6.cjs +4 -0
- package/dist/chunk-I44YNYI6.cjs.map +1 -0
- package/dist/{chunk-EGWWTIWS.js → chunk-IILJGFI5.js} +125 -95
- package/dist/chunk-IILJGFI5.js.map +1 -0
- package/dist/{chunk-KRGKPUJH.js → chunk-IYXCFIMP.js} +8 -8
- package/dist/{chunk-KRGKPUJH.js.map → chunk-IYXCFIMP.js.map} +1 -1
- package/dist/{chunk-6J7UGYT5.cjs → chunk-JHGMZX4I.cjs} +47 -7
- package/dist/chunk-JHGMZX4I.cjs.map +1 -0
- package/dist/chunk-JHZW3Y62.js +142 -0
- package/dist/chunk-JHZW3Y62.js.map +1 -0
- package/dist/{chunk-JDHIBJ5K.cjs → chunk-JWTCEWQ4.cjs} +2 -2
- package/dist/{chunk-JDHIBJ5K.cjs.map → chunk-JWTCEWQ4.cjs.map} +1 -1
- package/dist/{chunk-URHXR5SC.cjs → chunk-KVE7PQ5P.cjs} +7 -7
- package/dist/{chunk-URHXR5SC.cjs.map → chunk-KVE7PQ5P.cjs.map} +1 -1
- package/dist/{chunk-LJDBD2DD.cjs → chunk-L6D4CKLV.cjs} +373 -4
- package/dist/chunk-L6D4CKLV.cjs.map +1 -0
- package/dist/chunk-L6MDULYB.js +87 -0
- package/dist/chunk-L6MDULYB.js.map +1 -0
- package/dist/{chunk-SYIFEJSF.cjs → chunk-LQHI44OZ.cjs} +13 -13
- package/dist/{chunk-SYIFEJSF.cjs.map → chunk-LQHI44OZ.cjs.map} +1 -1
- package/dist/{chunk-HIDV32ZX.js → chunk-LZU7YBXG.js} +3 -3
- package/dist/{chunk-HIDV32ZX.js.map → chunk-LZU7YBXG.js.map} +1 -1
- package/dist/chunk-N5O47VGS.cjs +109 -0
- package/dist/chunk-N5O47VGS.cjs.map +1 -0
- package/dist/chunk-NGSDBWKA.cjs +84 -0
- package/dist/chunk-NGSDBWKA.cjs.map +1 -0
- package/dist/chunk-NMBYU7D7.cjs +31 -0
- package/dist/chunk-NMBYU7D7.cjs.map +1 -0
- package/dist/{chunk-P6L74SKG.js → chunk-QGZC43L7.js} +47 -7
- package/dist/chunk-QGZC43L7.js.map +1 -0
- package/dist/{chunk-FTRGZOVJ.js → chunk-QHTDWIED.js} +3 -3
- package/dist/{chunk-FTRGZOVJ.js.map → chunk-QHTDWIED.js.map} +1 -1
- package/dist/chunk-RUGHNFQG.js +28 -0
- package/dist/chunk-RUGHNFQG.js.map +1 -0
- package/dist/{chunk-NQ2D2V6O.cjs → chunk-SK7H3Z67.cjs} +37 -37
- package/dist/{chunk-NQ2D2V6O.cjs.map → chunk-SK7H3Z67.cjs.map} +1 -1
- package/dist/{chunk-MO65V64I.js → chunk-TXRQQMG5.js} +2 -2
- package/dist/{chunk-MO65V64I.js.map → chunk-TXRQQMG5.js.map} +1 -1
- package/dist/{chunk-OAHORW4N.cjs → chunk-U5TTXN45.cjs} +127 -97
- package/dist/chunk-U5TTXN45.cjs.map +1 -0
- package/dist/chunk-WBGUYSWY.js +90 -0
- package/dist/chunk-WBGUYSWY.js.map +1 -0
- package/dist/{chunk-LJBWCUKP.cjs → chunk-WIYQI35R.cjs} +2 -2
- package/dist/{chunk-LJBWCUKP.cjs.map → chunk-WIYQI35R.cjs.map} +1 -1
- package/dist/chunk-WKSUL2ZN.js +56 -0
- package/dist/chunk-WKSUL2ZN.js.map +1 -0
- package/dist/chunk-X5ZPYYMS.js +105 -0
- package/dist/chunk-X5ZPYYMS.js.map +1 -0
- package/dist/{chunk-DLBV42JD.js → chunk-XBKOZRDO.js} +156 -39
- package/dist/chunk-XBKOZRDO.js.map +1 -0
- package/dist/{chunk-XB54G7WS.cjs → chunk-XJTFZLWH.cjs} +2 -86
- package/dist/chunk-XJTFZLWH.cjs.map +1 -0
- package/dist/chunk-XMECP2MD.js +208 -0
- package/dist/chunk-XMECP2MD.js.map +1 -0
- package/dist/{chunk-GTHNWP4P.js → chunk-XUVEF2RQ.js} +4 -87
- package/dist/chunk-XUVEF2RQ.js.map +1 -0
- package/dist/chunk-XWYKLEKG.js +269 -0
- package/dist/chunk-XWYKLEKG.js.map +1 -0
- package/dist/chunk-Y6YSJPVC.js +129 -0
- package/dist/chunk-Y6YSJPVC.js.map +1 -0
- package/dist/chunk-YVIH26FG.cjs +736 -0
- package/dist/chunk-YVIH26FG.cjs.map +1 -0
- package/dist/chunk-Z5S5JEJD.cjs +286 -0
- package/dist/chunk-Z5S5JEJD.cjs.map +1 -0
- package/dist/chunk-ZO4L6C2Y.cjs +137 -0
- package/dist/chunk-ZO4L6C2Y.cjs.map +1 -0
- package/dist/{collabKit-QZL4P5T5.js → collabKit-A643VH2I.js} +7 -3
- package/dist/collabKit-A643VH2I.js.map +1 -0
- package/dist/{collabKit-UF7E6V3N.cjs → collabKit-Q4A36LDA.cjs} +7 -3
- package/dist/collabKit-Q4A36LDA.cjs.map +1 -0
- package/dist/components/Accordion/index.cjs +13 -0
- package/dist/components/Accordion/index.cjs.map +1 -0
- package/dist/components/Accordion/index.d.cts +50 -0
- package/dist/components/Accordion/index.d.ts +50 -0
- package/dist/components/Accordion/index.js +4 -0
- package/dist/components/Accordion/index.js.map +1 -0
- package/dist/components/Alert/index.d.cts +1 -1
- package/dist/components/Alert/index.d.ts +1 -1
- package/dist/components/Autocomplete/index.cjs +4 -3
- package/dist/components/Autocomplete/index.d.cts +20 -3
- package/dist/components/Autocomplete/index.d.ts +20 -3
- package/dist/components/Autocomplete/index.js +3 -2
- package/dist/components/Badge/index.d.cts +1 -1
- package/dist/components/Badge/index.d.ts +1 -1
- package/dist/components/Card/index.d.cts +1 -1
- package/dist/components/Card/index.d.ts +1 -1
- package/dist/components/Checkbox/index.cjs +5 -4
- package/dist/components/Checkbox/index.d.cts +9 -1
- package/dist/components/Checkbox/index.d.ts +9 -1
- package/dist/components/Checkbox/index.js +2 -1
- package/dist/components/ClampedText/index.cjs +13 -0
- package/dist/components/ClampedText/index.cjs.map +1 -0
- package/dist/components/ClampedText/index.d.cts +33 -0
- package/dist/components/ClampedText/index.d.ts +33 -0
- package/dist/components/ClampedText/index.js +4 -0
- package/dist/components/ClampedText/index.js.map +1 -0
- package/dist/components/CopyButton/index.cjs +13 -0
- package/dist/components/CopyButton/index.cjs.map +1 -0
- package/dist/components/CopyButton/index.d.cts +29 -0
- package/dist/components/CopyButton/index.d.ts +29 -0
- package/dist/components/CopyButton/index.js +4 -0
- package/dist/components/CopyButton/index.js.map +1 -0
- package/dist/components/CustomizableDashboard/index.cjs +43 -0
- package/dist/components/CustomizableDashboard/index.cjs.map +1 -0
- package/dist/components/CustomizableDashboard/index.d.cts +195 -0
- package/dist/components/CustomizableDashboard/index.d.ts +195 -0
- package/dist/components/CustomizableDashboard/index.js +10 -0
- package/dist/components/CustomizableDashboard/index.js.map +1 -0
- package/dist/components/DateInput/index.cjs +4 -3
- package/dist/components/DateInput/index.d.cts +1 -0
- package/dist/components/DateInput/index.d.ts +1 -0
- package/dist/components/DateInput/index.js +3 -2
- package/dist/components/Dropdown/index.cjs +9 -8
- package/dist/components/Dropdown/index.js +3 -2
- package/dist/components/FilterSummaryBar/index.cjs +13 -0
- package/dist/components/FilterSummaryBar/index.cjs.map +1 -0
- package/dist/components/FilterSummaryBar/index.d.cts +53 -0
- package/dist/components/FilterSummaryBar/index.d.ts +53 -0
- package/dist/components/FilterSummaryBar/index.js +4 -0
- package/dist/components/FilterSummaryBar/index.js.map +1 -0
- package/dist/components/FreshnessBadge/index.cjs +25 -0
- package/dist/components/FreshnessBadge/index.cjs.map +1 -0
- package/dist/components/FreshnessBadge/index.d.cts +49 -0
- package/dist/components/FreshnessBadge/index.d.ts +49 -0
- package/dist/components/FreshnessBadge/index.js +4 -0
- package/dist/components/FreshnessBadge/index.js.map +1 -0
- package/dist/components/GlossaryTooltip/index.cjs +15 -0
- package/dist/components/GlossaryTooltip/index.cjs.map +1 -0
- package/dist/components/GlossaryTooltip/index.d.cts +64 -0
- package/dist/components/GlossaryTooltip/index.d.ts +64 -0
- package/dist/components/GlossaryTooltip/index.js +6 -0
- package/dist/components/GlossaryTooltip/index.js.map +1 -0
- package/dist/components/Input/index.cjs +20 -3
- package/dist/components/Input/index.d.cts +37 -2
- package/dist/components/Input/index.d.ts +37 -2
- package/dist/components/Input/index.js +2 -1
- package/dist/components/KeyboardShortcutsOverlay/index.cjs +21 -0
- package/dist/components/KeyboardShortcutsOverlay/index.cjs.map +1 -0
- package/dist/components/KeyboardShortcutsOverlay/index.d.cts +54 -0
- package/dist/components/KeyboardShortcutsOverlay/index.d.ts +54 -0
- package/dist/components/KeyboardShortcutsOverlay/index.js +8 -0
- package/dist/components/KeyboardShortcutsOverlay/index.js.map +1 -0
- package/dist/components/Markdown/index.cjs +10 -10
- package/dist/components/Markdown/index.js +2 -2
- package/dist/components/MediaEditor/index.cjs +10 -9
- package/dist/components/MediaEditor/index.js +5 -4
- package/dist/components/PhoneInput/index.cjs +5 -4
- package/dist/components/PhoneInput/index.js +3 -2
- package/dist/components/Progress/index.d.cts +1 -1
- package/dist/components/Progress/index.d.ts +1 -1
- package/dist/components/Radio/index.cjs +5 -4
- package/dist/components/Radio/index.d.cts +9 -1
- package/dist/components/Radio/index.d.ts +9 -1
- package/dist/components/Radio/index.js +2 -1
- package/dist/components/ReadingProgressBar/index.cjs +13 -0
- package/dist/components/ReadingProgressBar/index.cjs.map +1 -0
- package/dist/components/ReadingProgressBar/index.d.cts +20 -0
- package/dist/components/ReadingProgressBar/index.d.ts +20 -0
- package/dist/components/ReadingProgressBar/index.js +4 -0
- package/dist/components/ReadingProgressBar/index.js.map +1 -0
- package/dist/components/RichTextEditor/index.cjs +7 -6
- package/dist/components/RichTextEditor/index.js +4 -3
- package/dist/components/SectionSpyNav/index.cjs +15 -0
- package/dist/components/SectionSpyNav/index.cjs.map +1 -0
- package/dist/components/SectionSpyNav/index.d.cts +63 -0
- package/dist/components/SectionSpyNav/index.d.ts +63 -0
- package/dist/components/SectionSpyNav/index.js +6 -0
- package/dist/components/SectionSpyNav/index.js.map +1 -0
- package/dist/components/Select/index.cjs +5 -3
- package/dist/components/Select/index.d.cts +56 -9
- package/dist/components/Select/index.d.ts +56 -9
- package/dist/components/Select/index.js +3 -1
- package/dist/components/Slider/index.d.cts +2 -2
- package/dist/components/Slider/index.d.ts +2 -2
- package/dist/components/SourceTip/index.cjs +15 -0
- package/dist/components/SourceTip/index.cjs.map +1 -0
- package/dist/components/SourceTip/index.d.cts +58 -0
- package/dist/components/SourceTip/index.d.ts +58 -0
- package/dist/components/SourceTip/index.js +6 -0
- package/dist/components/SourceTip/index.js.map +1 -0
- package/dist/components/Sparkline/index.cjs +13 -0
- package/dist/components/Sparkline/index.cjs.map +1 -0
- package/dist/components/Sparkline/index.d.cts +53 -0
- package/dist/components/Sparkline/index.d.ts +53 -0
- package/dist/components/Sparkline/index.js +4 -0
- package/dist/components/Sparkline/index.js.map +1 -0
- package/dist/components/Spinner/index.d.cts +1 -1
- package/dist/components/Spinner/index.d.ts +1 -1
- package/dist/components/SuperChat/index.cjs +8 -7
- package/dist/components/SuperChat/index.cjs.map +1 -1
- package/dist/components/SuperChat/index.js +4 -3
- package/dist/components/SuperChat/index.js.map +1 -1
- package/dist/components/SuperChat/plugins/index.cjs +2 -22
- package/dist/components/SuperChat/plugins/index.cjs.map +1 -1
- package/dist/components/SuperChat/plugins/index.js +1 -21
- package/dist/components/SuperChat/plugins/index.js.map +1 -1
- package/dist/components/Text/index.d.cts +1 -1
- package/dist/components/Text/index.d.ts +1 -1
- package/dist/components/Textarea/index.cjs +5 -3
- package/dist/components/Textarea/index.d.cts +19 -1
- package/dist/components/Textarea/index.d.ts +19 -1
- package/dist/components/Textarea/index.js +3 -1
- package/dist/datavis.cjs +1 -1
- package/dist/datavis.js +1 -1
- package/dist/esheet.cjs +11 -10
- package/dist/esheet.cjs.map +1 -1
- package/dist/esheet.js +8 -7
- package/dist/esheet.js.map +1 -1
- package/dist/hooks/index.cjs +27 -17
- package/dist/hooks/index.d.cts +16 -1
- package/dist/hooks/index.d.ts +16 -1
- package/dist/hooks/index.js +3 -1
- package/dist/index.cjs +2907 -1989
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +191 -46
- package/dist/index.d.ts +191 -46
- package/dist/index.js +2130 -1325
- package/dist/index.js.map +1 -1
- package/dist/kerebron.cjs +200 -68
- package/dist/kerebron.cjs.map +1 -1
- package/dist/kerebron.css +129 -0
- package/dist/kerebron.d.cts +52 -3
- package/dist/kerebron.d.ts +52 -3
- package/dist/kerebron.js +201 -69
- package/dist/kerebron.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/tailwind-preset.cjs +4 -4
- package/dist/tailwind-preset.js +1 -1
- package/dist/utils/index.cjs +9 -9
- package/dist/utils/index.js +1 -1
- package/package.json +13 -4
- package/dist/chunk-5IDYOJHO.cjs.map +0 -1
- package/dist/chunk-6ECKH4DJ.cjs +0 -147
- package/dist/chunk-6ECKH4DJ.cjs.map +0 -1
- package/dist/chunk-6J7UGYT5.cjs.map +0 -1
- package/dist/chunk-6MMIWE7H.js.map +0 -1
- package/dist/chunk-AFGADE3B.js.map +0 -1
- package/dist/chunk-DLBV42JD.js.map +0 -1
- package/dist/chunk-EGWWTIWS.js.map +0 -1
- package/dist/chunk-GTHNWP4P.js.map +0 -1
- package/dist/chunk-KFLDXJEE.js.map +0 -1
- package/dist/chunk-LJDBD2DD.cjs.map +0 -1
- package/dist/chunk-OAHORW4N.cjs.map +0 -1
- package/dist/chunk-P6L74SKG.js.map +0 -1
- package/dist/chunk-QUUBTNMH.js.map +0 -1
- package/dist/chunk-S3MKIDYG.cjs.map +0 -1
- package/dist/chunk-WUNWHOLA.cjs.map +0 -1
- package/dist/chunk-XB54G7WS.cjs.map +0 -1
- package/dist/chunk-YXCE2HSK.js +0 -124
- package/dist/chunk-YXCE2HSK.js.map +0 -1
- package/dist/chunk-ZBI52NP2.cjs.map +0 -1
- package/dist/collabKit-QZL4P5T5.js.map +0 -1
- package/dist/collabKit-UF7E6V3N.cjs.map +0 -1
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
|
|
3
|
+
interface CopyButtonProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'value'> {
|
|
4
|
+
/** Text written to the clipboard. */
|
|
5
|
+
value: string;
|
|
6
|
+
/** Accessible label / tooltip (default "Copy"). */
|
|
7
|
+
label?: string;
|
|
8
|
+
/** Label while the copied state shows (default "Copied"). */
|
|
9
|
+
copiedLabel?: string;
|
|
10
|
+
/** How long the copied state shows, in ms (default 1200). */
|
|
11
|
+
timeout?: number;
|
|
12
|
+
/** Called after a successful copy. */
|
|
13
|
+
onCopied?: (value: string) => void;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* An inline copy-to-clipboard icon button with a brief success check.
|
|
17
|
+
* Copied state is isolated per instance — safe to drop into table rows,
|
|
18
|
+
* ID chips, and detail fields.
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```tsx
|
|
22
|
+
* <span className="flex items-center gap-1">
|
|
23
|
+
* MRN WC-10382 <CopyButton value="WC-10382" label="Copy MRN" />
|
|
24
|
+
* </span>
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
27
|
+
declare const CopyButton: React.ForwardRefExoticComponent<CopyButtonProps & React.RefAttributes<HTMLButtonElement>>;
|
|
28
|
+
|
|
29
|
+
export { CopyButton, type CopyButtonProps };
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
|
|
3
|
+
interface CopyButtonProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'value'> {
|
|
4
|
+
/** Text written to the clipboard. */
|
|
5
|
+
value: string;
|
|
6
|
+
/** Accessible label / tooltip (default "Copy"). */
|
|
7
|
+
label?: string;
|
|
8
|
+
/** Label while the copied state shows (default "Copied"). */
|
|
9
|
+
copiedLabel?: string;
|
|
10
|
+
/** How long the copied state shows, in ms (default 1200). */
|
|
11
|
+
timeout?: number;
|
|
12
|
+
/** Called after a successful copy. */
|
|
13
|
+
onCopied?: (value: string) => void;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* An inline copy-to-clipboard icon button with a brief success check.
|
|
17
|
+
* Copied state is isolated per instance — safe to drop into table rows,
|
|
18
|
+
* ID chips, and detail fields.
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```tsx
|
|
22
|
+
* <span className="flex items-center gap-1">
|
|
23
|
+
* MRN WC-10382 <CopyButton value="WC-10382" label="Copy MRN" />
|
|
24
|
+
* </span>
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
27
|
+
declare const CopyButton: React.ForwardRefExoticComponent<CopyButtonProps & React.RefAttributes<HTMLButtonElement>>;
|
|
28
|
+
|
|
29
|
+
export { CopyButton, type CopyButtonProps };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"index.js"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var chunkYVIH26FG_cjs = require('../../chunk-YVIH26FG.cjs');
|
|
4
|
+
require('../../chunk-PLMXN23Q.cjs');
|
|
5
|
+
require('../../chunk-RS5VA6QU.cjs');
|
|
6
|
+
require('../../chunk-RDGRKYQ5.cjs');
|
|
7
|
+
require('../../chunk-NNEFAUHV.cjs');
|
|
8
|
+
require('../../chunk-FHY3K6PL.cjs');
|
|
9
|
+
require('../../chunk-S5RVSXDV.cjs');
|
|
10
|
+
require('../../chunk-SCV7C55E.cjs');
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
Object.defineProperty(exports, "CustomizableDashboard", {
|
|
15
|
+
enumerable: true,
|
|
16
|
+
get: function () { return chunkYVIH26FG_cjs.CustomizableDashboard; }
|
|
17
|
+
});
|
|
18
|
+
Object.defineProperty(exports, "DashboardCustomizePanel", {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function () { return chunkYVIH26FG_cjs.DashboardCustomizePanel; }
|
|
21
|
+
});
|
|
22
|
+
Object.defineProperty(exports, "consolidateColumns", {
|
|
23
|
+
enumerable: true,
|
|
24
|
+
get: function () { return chunkYVIH26FG_cjs.consolidateColumns; }
|
|
25
|
+
});
|
|
26
|
+
Object.defineProperty(exports, "mergeColumnOrder", {
|
|
27
|
+
enumerable: true,
|
|
28
|
+
get: function () { return chunkYVIH26FG_cjs.mergeColumnOrder; }
|
|
29
|
+
});
|
|
30
|
+
Object.defineProperty(exports, "moveAcrossColumns", {
|
|
31
|
+
enumerable: true,
|
|
32
|
+
get: function () { return chunkYVIH26FG_cjs.moveAcrossColumns; }
|
|
33
|
+
});
|
|
34
|
+
Object.defineProperty(exports, "reorderOnDrop", {
|
|
35
|
+
enumerable: true,
|
|
36
|
+
get: function () { return chunkYVIH26FG_cjs.reorderOnDrop; }
|
|
37
|
+
});
|
|
38
|
+
Object.defineProperty(exports, "requiredColumns", {
|
|
39
|
+
enumerable: true,
|
|
40
|
+
get: function () { return chunkYVIH26FG_cjs.requiredColumns; }
|
|
41
|
+
});
|
|
42
|
+
//# sourceMappingURL=index.cjs.map
|
|
43
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"index.cjs"}
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
3
|
+
|
|
4
|
+
/** Catalog metadata for a widget a user can show or hide on a dashboard. */
|
|
5
|
+
interface WidgetDefinition {
|
|
6
|
+
/** Matches the portlet's `PortletItem.id`. */
|
|
7
|
+
id: string;
|
|
8
|
+
title: string;
|
|
9
|
+
description?: string;
|
|
10
|
+
/** Small leading icon, e.g. `<Activity className="h-4 w-4" />`. */
|
|
11
|
+
icon?: React.ReactNode;
|
|
12
|
+
/** Widgets sharing a category are grouped under a heading. */
|
|
13
|
+
category?: string;
|
|
14
|
+
}
|
|
15
|
+
interface DashboardCustomizePanelProps {
|
|
16
|
+
/** Whether the panel is open. */
|
|
17
|
+
open: boolean;
|
|
18
|
+
/** Callback when the panel should open or close. */
|
|
19
|
+
onOpenChange: (open: boolean) => void;
|
|
20
|
+
/** The full widget catalog for this dashboard. */
|
|
21
|
+
widgets: WidgetDefinition[];
|
|
22
|
+
/** Ids of widgets currently hidden. */
|
|
23
|
+
hiddenIds: string[];
|
|
24
|
+
/** Called when a widget is shown (`visible: true`) or hidden. */
|
|
25
|
+
onToggleWidget: (id: string, visible: boolean) => void;
|
|
26
|
+
/** When provided, renders a "Reset layout" action in the footer. */
|
|
27
|
+
onReset?: () => void;
|
|
28
|
+
/** Panel heading (default "Customize dashboard"). */
|
|
29
|
+
title?: string;
|
|
30
|
+
/** Supporting copy under the heading. */
|
|
31
|
+
description?: string;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* A slide-in panel listing a dashboard's widget catalog with show/hide
|
|
35
|
+
* toggles, grouped by category, plus an optional layout reset.
|
|
36
|
+
*
|
|
37
|
+
* Used automatically by `CustomizableDashboard` when its `widgets` prop is
|
|
38
|
+
* set, and exported standalone for hosts that render their own trigger or
|
|
39
|
+
* persist visibility elsewhere.
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* ```tsx
|
|
43
|
+
* <DashboardCustomizePanel
|
|
44
|
+
* open={open}
|
|
45
|
+
* onOpenChange={setOpen}
|
|
46
|
+
* widgets={WIDGETS}
|
|
47
|
+
* hiddenIds={hidden}
|
|
48
|
+
* onToggleWidget={(id, visible) =>
|
|
49
|
+
* setHidden((prev) =>
|
|
50
|
+
* visible ? prev.filter((h) => h !== id) : [...prev, id]
|
|
51
|
+
* )
|
|
52
|
+
* }
|
|
53
|
+
* />
|
|
54
|
+
* ```
|
|
55
|
+
*/
|
|
56
|
+
declare function DashboardCustomizePanel({ open, onOpenChange, widgets, hiddenIds, onToggleWidget, onReset, title, description, }: DashboardCustomizePanelProps): react_jsx_runtime.JSX.Element;
|
|
57
|
+
|
|
58
|
+
/** A dashboard item: a stable id plus the rendered content. */
|
|
59
|
+
interface PortletItem {
|
|
60
|
+
id: string;
|
|
61
|
+
node: React.ReactNode;
|
|
62
|
+
}
|
|
63
|
+
/** Number of visible columns. */
|
|
64
|
+
type DashboardLayout = 1 | 2 | 3;
|
|
65
|
+
/** Portlet items grouped into three logical columns. */
|
|
66
|
+
type DashboardColumns = [PortletItem[], PortletItem[], PortletItem[]];
|
|
67
|
+
/** Portlet ids grouped into three logical columns. */
|
|
68
|
+
type DashboardOrder = [string[], string[], string[]];
|
|
69
|
+
interface CustomizableDashboardProps {
|
|
70
|
+
/**
|
|
71
|
+
* Portlets grouped into three columns. This is the default arrangement;
|
|
72
|
+
* user reordering (persisted or controlled) takes precedence. Items later
|
|
73
|
+
* removed from props disappear from saved layouts automatically, and new
|
|
74
|
+
* items appear in their props column.
|
|
75
|
+
*/
|
|
76
|
+
columns: DashboardColumns;
|
|
77
|
+
/** Toolbar heading rendered before the layout toggle. */
|
|
78
|
+
title?: string;
|
|
79
|
+
/**
|
|
80
|
+
* Base localStorage key used to persist column order and layout mode
|
|
81
|
+
* (`{storageKey}-portlet-order` / `{storageKey}-dashboard-layout`).
|
|
82
|
+
* Omit to disable built-in persistence (e.g. when using `order` /
|
|
83
|
+
* `onOrderChange` with a server-side store). Distinct dashboards must
|
|
84
|
+
* pass distinct keys.
|
|
85
|
+
*/
|
|
86
|
+
storageKey?: string;
|
|
87
|
+
/** Accessible label for the dashboard grid region. */
|
|
88
|
+
ariaLabel?: string;
|
|
89
|
+
/**
|
|
90
|
+
* Optional DOM element to portal the toolbar (title + layout toggle)
|
|
91
|
+
* into, e.g. a page header actions row. When omitted, the toolbar
|
|
92
|
+
* renders inline above the grid.
|
|
93
|
+
*/
|
|
94
|
+
toolbarSlot?: HTMLElement | null;
|
|
95
|
+
/** Initial column order for uncontrolled usage with external persistence. */
|
|
96
|
+
defaultOrder?: DashboardOrder;
|
|
97
|
+
/** Controlled column order. Changes are reported via `onOrderChange`. */
|
|
98
|
+
order?: DashboardOrder;
|
|
99
|
+
/** Called with the full new order after a drop or layout normalization. */
|
|
100
|
+
onOrderChange?: (order: DashboardOrder) => void;
|
|
101
|
+
/** Initial layout mode for uncontrolled usage (default 3). */
|
|
102
|
+
defaultLayout?: DashboardLayout;
|
|
103
|
+
/** Controlled layout mode. Changes are reported via `onLayoutChange`. */
|
|
104
|
+
layout?: DashboardLayout;
|
|
105
|
+
/** Called when the user changes the column layout (or it auto-shrinks). */
|
|
106
|
+
onLayoutChange?: (layout: DashboardLayout) => void;
|
|
107
|
+
/**
|
|
108
|
+
* CSS selector for the header element inside each portlet that receives
|
|
109
|
+
* the drag handle. Defaults to the `DashboardWidget` header slot. When no
|
|
110
|
+
* header matches, the handle floats over the portlet's top end corner.
|
|
111
|
+
*/
|
|
112
|
+
dragHandleSelector?: string;
|
|
113
|
+
/**
|
|
114
|
+
* Widget catalog metadata. When provided, the toolbar gains a Customize
|
|
115
|
+
* button opening a panel where users show/hide widgets and reset the
|
|
116
|
+
* layout. Ids must match the portlet ids in `columns`.
|
|
117
|
+
*/
|
|
118
|
+
widgets?: WidgetDefinition[];
|
|
119
|
+
/** Initially hidden widget ids for uncontrolled usage. */
|
|
120
|
+
defaultHiddenIds?: string[];
|
|
121
|
+
/** Controlled hidden widget ids. Changes reported via `onHiddenChange`. */
|
|
122
|
+
hiddenIds?: string[];
|
|
123
|
+
/** Called with the full hidden-id list when visibility changes. */
|
|
124
|
+
onHiddenChange?: (hiddenIds: string[]) => void;
|
|
125
|
+
/** Label for the toolbar customize button (default "Customize"). */
|
|
126
|
+
customizeLabel?: string;
|
|
127
|
+
/** Additional class name for the grid element. */
|
|
128
|
+
className?: string;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Merge a saved/provided order with the current props columns: saved
|
|
132
|
+
* positions win, unknown saved ids are dropped, and new items are appended
|
|
133
|
+
* to their original props column.
|
|
134
|
+
*/
|
|
135
|
+
declare function mergeColumnOrder(columns: DashboardColumns, saved: DashboardOrder | null): DashboardOrder;
|
|
136
|
+
/**
|
|
137
|
+
* Move `activeId` into the column named by `overId` (a column id or an item
|
|
138
|
+
* id), inserted before the hovered item. Returns the same reference when no
|
|
139
|
+
* cross-column move is needed.
|
|
140
|
+
*/
|
|
141
|
+
declare function moveAcrossColumns(order: DashboardOrder, activeId: string, overId: string): DashboardOrder;
|
|
142
|
+
/**
|
|
143
|
+
* Final order for a drop. Same-column drags reorder around the hovered
|
|
144
|
+
* item. After a cross-column move, the one position `moveAcrossColumns`
|
|
145
|
+
* already chose — active sitting immediately before the hovered item — is
|
|
146
|
+
* kept (reordering would flip it to the other side of that item), but
|
|
147
|
+
* hovering any other item in the destination column still reorders, so a
|
|
148
|
+
* drag can keep moving after it crosses.
|
|
149
|
+
*/
|
|
150
|
+
declare function reorderOnDrop(order: DashboardOrder, activeId: string, overId: string, crossedColumns: boolean): DashboardOrder;
|
|
151
|
+
/**
|
|
152
|
+
* Consolidate columns beyond the visible count into the last visible one.
|
|
153
|
+
* Returns the same reference when nothing needs to move so callers can use
|
|
154
|
+
* reference equality to skip persistence/notification.
|
|
155
|
+
*/
|
|
156
|
+
declare function consolidateColumns(order: DashboardOrder, mode: DashboardLayout): DashboardOrder;
|
|
157
|
+
/**
|
|
158
|
+
* Columns needed to show every item: the highest occupied index + 1, so a
|
|
159
|
+
* gap like `[a], [], [c]` still requires three columns.
|
|
160
|
+
*/
|
|
161
|
+
declare function requiredColumns(order: DashboardOrder): DashboardLayout;
|
|
162
|
+
/**
|
|
163
|
+
* A user-customizable portlet dashboard: a responsive 1–3 column grid whose
|
|
164
|
+
* items can be dragged between and within columns, with a column-layout
|
|
165
|
+
* toggle and optional persistence.
|
|
166
|
+
*
|
|
167
|
+
* Each portlet's drag handle is appended to the header element matched by
|
|
168
|
+
* `dragHandleSelector` inside its content — `DashboardWidget` headers are
|
|
169
|
+
* matched by default. Portlets without a matching header get a floating
|
|
170
|
+
* handle in their top end corner.
|
|
171
|
+
*
|
|
172
|
+
* Order and layout are persisted to localStorage when `storageKey` is set,
|
|
173
|
+
* or can be controlled via `order`/`onOrderChange` and
|
|
174
|
+
* `layout`/`onLayoutChange` for server-side persistence.
|
|
175
|
+
*
|
|
176
|
+
* Passing a `widgets` catalog adds a toolbar Customize button opening a
|
|
177
|
+
* `DashboardCustomizePanel` where users show/hide widgets and reset the
|
|
178
|
+
* layout; visibility follows the same persistence rules via
|
|
179
|
+
* `hiddenIds`/`onHiddenChange`.
|
|
180
|
+
*
|
|
181
|
+
* @example
|
|
182
|
+
* ```tsx
|
|
183
|
+
* <CustomizableDashboard
|
|
184
|
+
* storageKey="home"
|
|
185
|
+
* columns={[
|
|
186
|
+
* [{ id: 'stats', node: <StatsWidget /> }],
|
|
187
|
+
* [{ id: 'tasks', node: <TasksWidget /> }],
|
|
188
|
+
* [{ id: 'orders', node: <OrdersWidget /> }],
|
|
189
|
+
* ]}
|
|
190
|
+
* />
|
|
191
|
+
* ```
|
|
192
|
+
*/
|
|
193
|
+
declare const CustomizableDashboard: React.ForwardRefExoticComponent<CustomizableDashboardProps & React.RefAttributes<HTMLDivElement>>;
|
|
194
|
+
|
|
195
|
+
export { CustomizableDashboard, type CustomizableDashboardProps, type DashboardColumns, DashboardCustomizePanel, type DashboardCustomizePanelProps, type DashboardLayout, type DashboardOrder, type PortletItem, type WidgetDefinition, consolidateColumns, mergeColumnOrder, moveAcrossColumns, reorderOnDrop, requiredColumns };
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
3
|
+
|
|
4
|
+
/** Catalog metadata for a widget a user can show or hide on a dashboard. */
|
|
5
|
+
interface WidgetDefinition {
|
|
6
|
+
/** Matches the portlet's `PortletItem.id`. */
|
|
7
|
+
id: string;
|
|
8
|
+
title: string;
|
|
9
|
+
description?: string;
|
|
10
|
+
/** Small leading icon, e.g. `<Activity className="h-4 w-4" />`. */
|
|
11
|
+
icon?: React.ReactNode;
|
|
12
|
+
/** Widgets sharing a category are grouped under a heading. */
|
|
13
|
+
category?: string;
|
|
14
|
+
}
|
|
15
|
+
interface DashboardCustomizePanelProps {
|
|
16
|
+
/** Whether the panel is open. */
|
|
17
|
+
open: boolean;
|
|
18
|
+
/** Callback when the panel should open or close. */
|
|
19
|
+
onOpenChange: (open: boolean) => void;
|
|
20
|
+
/** The full widget catalog for this dashboard. */
|
|
21
|
+
widgets: WidgetDefinition[];
|
|
22
|
+
/** Ids of widgets currently hidden. */
|
|
23
|
+
hiddenIds: string[];
|
|
24
|
+
/** Called when a widget is shown (`visible: true`) or hidden. */
|
|
25
|
+
onToggleWidget: (id: string, visible: boolean) => void;
|
|
26
|
+
/** When provided, renders a "Reset layout" action in the footer. */
|
|
27
|
+
onReset?: () => void;
|
|
28
|
+
/** Panel heading (default "Customize dashboard"). */
|
|
29
|
+
title?: string;
|
|
30
|
+
/** Supporting copy under the heading. */
|
|
31
|
+
description?: string;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* A slide-in panel listing a dashboard's widget catalog with show/hide
|
|
35
|
+
* toggles, grouped by category, plus an optional layout reset.
|
|
36
|
+
*
|
|
37
|
+
* Used automatically by `CustomizableDashboard` when its `widgets` prop is
|
|
38
|
+
* set, and exported standalone for hosts that render their own trigger or
|
|
39
|
+
* persist visibility elsewhere.
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* ```tsx
|
|
43
|
+
* <DashboardCustomizePanel
|
|
44
|
+
* open={open}
|
|
45
|
+
* onOpenChange={setOpen}
|
|
46
|
+
* widgets={WIDGETS}
|
|
47
|
+
* hiddenIds={hidden}
|
|
48
|
+
* onToggleWidget={(id, visible) =>
|
|
49
|
+
* setHidden((prev) =>
|
|
50
|
+
* visible ? prev.filter((h) => h !== id) : [...prev, id]
|
|
51
|
+
* )
|
|
52
|
+
* }
|
|
53
|
+
* />
|
|
54
|
+
* ```
|
|
55
|
+
*/
|
|
56
|
+
declare function DashboardCustomizePanel({ open, onOpenChange, widgets, hiddenIds, onToggleWidget, onReset, title, description, }: DashboardCustomizePanelProps): react_jsx_runtime.JSX.Element;
|
|
57
|
+
|
|
58
|
+
/** A dashboard item: a stable id plus the rendered content. */
|
|
59
|
+
interface PortletItem {
|
|
60
|
+
id: string;
|
|
61
|
+
node: React.ReactNode;
|
|
62
|
+
}
|
|
63
|
+
/** Number of visible columns. */
|
|
64
|
+
type DashboardLayout = 1 | 2 | 3;
|
|
65
|
+
/** Portlet items grouped into three logical columns. */
|
|
66
|
+
type DashboardColumns = [PortletItem[], PortletItem[], PortletItem[]];
|
|
67
|
+
/** Portlet ids grouped into three logical columns. */
|
|
68
|
+
type DashboardOrder = [string[], string[], string[]];
|
|
69
|
+
interface CustomizableDashboardProps {
|
|
70
|
+
/**
|
|
71
|
+
* Portlets grouped into three columns. This is the default arrangement;
|
|
72
|
+
* user reordering (persisted or controlled) takes precedence. Items later
|
|
73
|
+
* removed from props disappear from saved layouts automatically, and new
|
|
74
|
+
* items appear in their props column.
|
|
75
|
+
*/
|
|
76
|
+
columns: DashboardColumns;
|
|
77
|
+
/** Toolbar heading rendered before the layout toggle. */
|
|
78
|
+
title?: string;
|
|
79
|
+
/**
|
|
80
|
+
* Base localStorage key used to persist column order and layout mode
|
|
81
|
+
* (`{storageKey}-portlet-order` / `{storageKey}-dashboard-layout`).
|
|
82
|
+
* Omit to disable built-in persistence (e.g. when using `order` /
|
|
83
|
+
* `onOrderChange` with a server-side store). Distinct dashboards must
|
|
84
|
+
* pass distinct keys.
|
|
85
|
+
*/
|
|
86
|
+
storageKey?: string;
|
|
87
|
+
/** Accessible label for the dashboard grid region. */
|
|
88
|
+
ariaLabel?: string;
|
|
89
|
+
/**
|
|
90
|
+
* Optional DOM element to portal the toolbar (title + layout toggle)
|
|
91
|
+
* into, e.g. a page header actions row. When omitted, the toolbar
|
|
92
|
+
* renders inline above the grid.
|
|
93
|
+
*/
|
|
94
|
+
toolbarSlot?: HTMLElement | null;
|
|
95
|
+
/** Initial column order for uncontrolled usage with external persistence. */
|
|
96
|
+
defaultOrder?: DashboardOrder;
|
|
97
|
+
/** Controlled column order. Changes are reported via `onOrderChange`. */
|
|
98
|
+
order?: DashboardOrder;
|
|
99
|
+
/** Called with the full new order after a drop or layout normalization. */
|
|
100
|
+
onOrderChange?: (order: DashboardOrder) => void;
|
|
101
|
+
/** Initial layout mode for uncontrolled usage (default 3). */
|
|
102
|
+
defaultLayout?: DashboardLayout;
|
|
103
|
+
/** Controlled layout mode. Changes are reported via `onLayoutChange`. */
|
|
104
|
+
layout?: DashboardLayout;
|
|
105
|
+
/** Called when the user changes the column layout (or it auto-shrinks). */
|
|
106
|
+
onLayoutChange?: (layout: DashboardLayout) => void;
|
|
107
|
+
/**
|
|
108
|
+
* CSS selector for the header element inside each portlet that receives
|
|
109
|
+
* the drag handle. Defaults to the `DashboardWidget` header slot. When no
|
|
110
|
+
* header matches, the handle floats over the portlet's top end corner.
|
|
111
|
+
*/
|
|
112
|
+
dragHandleSelector?: string;
|
|
113
|
+
/**
|
|
114
|
+
* Widget catalog metadata. When provided, the toolbar gains a Customize
|
|
115
|
+
* button opening a panel where users show/hide widgets and reset the
|
|
116
|
+
* layout. Ids must match the portlet ids in `columns`.
|
|
117
|
+
*/
|
|
118
|
+
widgets?: WidgetDefinition[];
|
|
119
|
+
/** Initially hidden widget ids for uncontrolled usage. */
|
|
120
|
+
defaultHiddenIds?: string[];
|
|
121
|
+
/** Controlled hidden widget ids. Changes reported via `onHiddenChange`. */
|
|
122
|
+
hiddenIds?: string[];
|
|
123
|
+
/** Called with the full hidden-id list when visibility changes. */
|
|
124
|
+
onHiddenChange?: (hiddenIds: string[]) => void;
|
|
125
|
+
/** Label for the toolbar customize button (default "Customize"). */
|
|
126
|
+
customizeLabel?: string;
|
|
127
|
+
/** Additional class name for the grid element. */
|
|
128
|
+
className?: string;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Merge a saved/provided order with the current props columns: saved
|
|
132
|
+
* positions win, unknown saved ids are dropped, and new items are appended
|
|
133
|
+
* to their original props column.
|
|
134
|
+
*/
|
|
135
|
+
declare function mergeColumnOrder(columns: DashboardColumns, saved: DashboardOrder | null): DashboardOrder;
|
|
136
|
+
/**
|
|
137
|
+
* Move `activeId` into the column named by `overId` (a column id or an item
|
|
138
|
+
* id), inserted before the hovered item. Returns the same reference when no
|
|
139
|
+
* cross-column move is needed.
|
|
140
|
+
*/
|
|
141
|
+
declare function moveAcrossColumns(order: DashboardOrder, activeId: string, overId: string): DashboardOrder;
|
|
142
|
+
/**
|
|
143
|
+
* Final order for a drop. Same-column drags reorder around the hovered
|
|
144
|
+
* item. After a cross-column move, the one position `moveAcrossColumns`
|
|
145
|
+
* already chose — active sitting immediately before the hovered item — is
|
|
146
|
+
* kept (reordering would flip it to the other side of that item), but
|
|
147
|
+
* hovering any other item in the destination column still reorders, so a
|
|
148
|
+
* drag can keep moving after it crosses.
|
|
149
|
+
*/
|
|
150
|
+
declare function reorderOnDrop(order: DashboardOrder, activeId: string, overId: string, crossedColumns: boolean): DashboardOrder;
|
|
151
|
+
/**
|
|
152
|
+
* Consolidate columns beyond the visible count into the last visible one.
|
|
153
|
+
* Returns the same reference when nothing needs to move so callers can use
|
|
154
|
+
* reference equality to skip persistence/notification.
|
|
155
|
+
*/
|
|
156
|
+
declare function consolidateColumns(order: DashboardOrder, mode: DashboardLayout): DashboardOrder;
|
|
157
|
+
/**
|
|
158
|
+
* Columns needed to show every item: the highest occupied index + 1, so a
|
|
159
|
+
* gap like `[a], [], [c]` still requires three columns.
|
|
160
|
+
*/
|
|
161
|
+
declare function requiredColumns(order: DashboardOrder): DashboardLayout;
|
|
162
|
+
/**
|
|
163
|
+
* A user-customizable portlet dashboard: a responsive 1–3 column grid whose
|
|
164
|
+
* items can be dragged between and within columns, with a column-layout
|
|
165
|
+
* toggle and optional persistence.
|
|
166
|
+
*
|
|
167
|
+
* Each portlet's drag handle is appended to the header element matched by
|
|
168
|
+
* `dragHandleSelector` inside its content — `DashboardWidget` headers are
|
|
169
|
+
* matched by default. Portlets without a matching header get a floating
|
|
170
|
+
* handle in their top end corner.
|
|
171
|
+
*
|
|
172
|
+
* Order and layout are persisted to localStorage when `storageKey` is set,
|
|
173
|
+
* or can be controlled via `order`/`onOrderChange` and
|
|
174
|
+
* `layout`/`onLayoutChange` for server-side persistence.
|
|
175
|
+
*
|
|
176
|
+
* Passing a `widgets` catalog adds a toolbar Customize button opening a
|
|
177
|
+
* `DashboardCustomizePanel` where users show/hide widgets and reset the
|
|
178
|
+
* layout; visibility follows the same persistence rules via
|
|
179
|
+
* `hiddenIds`/`onHiddenChange`.
|
|
180
|
+
*
|
|
181
|
+
* @example
|
|
182
|
+
* ```tsx
|
|
183
|
+
* <CustomizableDashboard
|
|
184
|
+
* storageKey="home"
|
|
185
|
+
* columns={[
|
|
186
|
+
* [{ id: 'stats', node: <StatsWidget /> }],
|
|
187
|
+
* [{ id: 'tasks', node: <TasksWidget /> }],
|
|
188
|
+
* [{ id: 'orders', node: <OrdersWidget /> }],
|
|
189
|
+
* ]}
|
|
190
|
+
* />
|
|
191
|
+
* ```
|
|
192
|
+
*/
|
|
193
|
+
declare const CustomizableDashboard: React.ForwardRefExoticComponent<CustomizableDashboardProps & React.RefAttributes<HTMLDivElement>>;
|
|
194
|
+
|
|
195
|
+
export { CustomizableDashboard, type CustomizableDashboardProps, type DashboardColumns, DashboardCustomizePanel, type DashboardCustomizePanelProps, type DashboardLayout, type DashboardOrder, type PortletItem, type WidgetDefinition, consolidateColumns, mergeColumnOrder, moveAcrossColumns, reorderOnDrop, requiredColumns };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export { CustomizableDashboard, DashboardCustomizePanel, consolidateColumns, mergeColumnOrder, moveAcrossColumns, reorderOnDrop, requiredColumns } from '../../chunk-F57VRLKP.js';
|
|
2
|
+
import '../../chunk-AQ564XO7.js';
|
|
3
|
+
import '../../chunk-LMBXJZLG.js';
|
|
4
|
+
import '../../chunk-D2GID3YK.js';
|
|
5
|
+
import '../../chunk-4SMSH4OY.js';
|
|
6
|
+
import '../../chunk-T4ME7QCT.js';
|
|
7
|
+
import '../../chunk-TQONQSJO.js';
|
|
8
|
+
import '../../chunk-VSQF22GL.js';
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
10
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"index.js"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
require('../../chunk-
|
|
3
|
+
var chunkU5TTXN45_cjs = require('../../chunk-U5TTXN45.cjs');
|
|
4
|
+
require('../../chunk-I44YNYI6.cjs');
|
|
5
|
+
require('../../chunk-Z5S5JEJD.cjs');
|
|
5
6
|
require('../../chunk-MYFZYUPR.cjs');
|
|
6
7
|
require('../../chunk-CW75IKA6.cjs');
|
|
7
8
|
require('../../chunk-S5RVSXDV.cjs');
|
|
@@ -10,7 +11,7 @@ require('../../chunk-S5RVSXDV.cjs');
|
|
|
10
11
|
|
|
11
12
|
Object.defineProperty(exports, "DateInput", {
|
|
12
13
|
enumerable: true,
|
|
13
|
-
get: function () { return
|
|
14
|
+
get: function () { return chunkU5TTXN45_cjs.DateInput; }
|
|
14
15
|
});
|
|
15
16
|
//# sourceMappingURL=index.cjs.map
|
|
16
17
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
export { DateInput } from '../../chunk-
|
|
2
|
-
import '../../chunk-
|
|
1
|
+
export { DateInput } from '../../chunk-IILJGFI5.js';
|
|
2
|
+
import '../../chunk-6NZXWKUE.js';
|
|
3
|
+
import '../../chunk-3IMM2PM4.js';
|
|
3
4
|
import '../../chunk-BOOJDRJO.js';
|
|
4
5
|
import '../../chunk-RC2YMOMS.js';
|
|
5
6
|
import '../../chunk-TQONQSJO.js';
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
require('../../chunk-
|
|
3
|
+
var chunkBOW7ZGI2_cjs = require('../../chunk-BOW7ZGI2.cjs');
|
|
4
|
+
require('../../chunk-I44YNYI6.cjs');
|
|
5
|
+
require('../../chunk-Z5S5JEJD.cjs');
|
|
5
6
|
require('../../chunk-FHY3K6PL.cjs');
|
|
6
7
|
require('../../chunk-FSGEDDF2.cjs');
|
|
7
8
|
require('../../chunk-MYFZYUPR.cjs');
|
|
@@ -11,27 +12,27 @@ require('../../chunk-S5RVSXDV.cjs');
|
|
|
11
12
|
|
|
12
13
|
Object.defineProperty(exports, "Dropdown", {
|
|
13
14
|
enumerable: true,
|
|
14
|
-
get: function () { return
|
|
15
|
+
get: function () { return chunkBOW7ZGI2_cjs.Dropdown; }
|
|
15
16
|
});
|
|
16
17
|
Object.defineProperty(exports, "DropdownContent", {
|
|
17
18
|
enumerable: true,
|
|
18
|
-
get: function () { return
|
|
19
|
+
get: function () { return chunkBOW7ZGI2_cjs.DropdownContent; }
|
|
19
20
|
});
|
|
20
21
|
Object.defineProperty(exports, "DropdownHeader", {
|
|
21
22
|
enumerable: true,
|
|
22
|
-
get: function () { return
|
|
23
|
+
get: function () { return chunkBOW7ZGI2_cjs.DropdownHeader; }
|
|
23
24
|
});
|
|
24
25
|
Object.defineProperty(exports, "DropdownItem", {
|
|
25
26
|
enumerable: true,
|
|
26
|
-
get: function () { return
|
|
27
|
+
get: function () { return chunkBOW7ZGI2_cjs.DropdownItem; }
|
|
27
28
|
});
|
|
28
29
|
Object.defineProperty(exports, "DropdownLabel", {
|
|
29
30
|
enumerable: true,
|
|
30
|
-
get: function () { return
|
|
31
|
+
get: function () { return chunkBOW7ZGI2_cjs.DropdownLabel; }
|
|
31
32
|
});
|
|
32
33
|
Object.defineProperty(exports, "DropdownSeparator", {
|
|
33
34
|
enumerable: true,
|
|
34
|
-
get: function () { return
|
|
35
|
+
get: function () { return chunkBOW7ZGI2_cjs.DropdownSeparator; }
|
|
35
36
|
});
|
|
36
37
|
//# sourceMappingURL=index.cjs.map
|
|
37
38
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
export { Dropdown, DropdownContent, DropdownHeader, DropdownItem, DropdownLabel, DropdownSeparator } from '../../chunk-
|
|
2
|
-
import '../../chunk-
|
|
1
|
+
export { Dropdown, DropdownContent, DropdownHeader, DropdownItem, DropdownLabel, DropdownSeparator } from '../../chunk-LZU7YBXG.js';
|
|
2
|
+
import '../../chunk-6NZXWKUE.js';
|
|
3
|
+
import '../../chunk-3IMM2PM4.js';
|
|
3
4
|
import '../../chunk-T4ME7QCT.js';
|
|
4
5
|
import '../../chunk-62ZOA6PX.js';
|
|
5
6
|
import '../../chunk-BOOJDRJO.js';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var chunkZO4L6C2Y_cjs = require('../../chunk-ZO4L6C2Y.cjs');
|
|
4
|
+
require('../../chunk-S5RVSXDV.cjs');
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
Object.defineProperty(exports, "FilterSummaryBar", {
|
|
9
|
+
enumerable: true,
|
|
10
|
+
get: function () { return chunkZO4L6C2Y_cjs.FilterSummaryBar; }
|
|
11
|
+
});
|
|
12
|
+
//# sourceMappingURL=index.cjs.map
|
|
13
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"index.cjs"}
|