@womp/kookie-ui 0.19.0 → 0.20.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/codemods/type-0.20.py +73 -0
- package/components.css +1003 -2360
- package/dist/cjs/components/_internal/base-menu.props.d.ts +2 -2
- package/dist/cjs/components/_internal/base-menu.props.js +1 -1
- package/dist/cjs/components/_internal/base-menu.props.js.map +2 -2
- package/dist/cjs/components/_internal/base-menu.utils.d.ts.map +1 -1
- package/dist/cjs/components/_internal/base-menu.utils.js +1 -1
- package/dist/cjs/components/_internal/base-menu.utils.js.map +2 -2
- package/dist/cjs/components/_internal/menu-context.d.ts +5 -2
- package/dist/cjs/components/_internal/menu-context.d.ts.map +1 -1
- package/dist/cjs/components/_internal/menu-context.js +1 -1
- package/dist/cjs/components/_internal/menu-context.js.map +2 -2
- package/dist/cjs/components/alert-dialog.js +1 -1
- package/dist/cjs/components/alert-dialog.js.map +2 -2
- package/dist/cjs/components/badge.js +1 -1
- package/dist/cjs/components/badge.js.map +2 -2
- package/dist/cjs/components/blockquote.js +1 -1
- package/dist/cjs/components/blockquote.js.map +2 -2
- package/dist/cjs/components/blockquote.props.d.ts +2 -2
- package/dist/cjs/components/blockquote.props.js +1 -1
- package/dist/cjs/components/blockquote.props.js.map +2 -2
- package/dist/cjs/components/button.js +1 -1
- package/dist/cjs/components/button.js.map +2 -2
- package/dist/cjs/components/chatbar.js +1 -1
- package/dist/cjs/components/chatbar.js.map +2 -2
- package/dist/cjs/components/checkbox-group.js +1 -1
- package/dist/cjs/components/checkbox-group.js.map +2 -2
- package/dist/cjs/components/code.js +1 -1
- package/dist/cjs/components/code.js.map +2 -2
- package/dist/cjs/components/code.props.d.ts +2 -2
- package/dist/cjs/components/code.props.js +1 -1
- package/dist/cjs/components/code.props.js.map +2 -2
- package/dist/cjs/components/combobox.js +1 -1
- package/dist/cjs/components/combobox.js.map +2 -2
- package/dist/cjs/components/combobox.props.d.ts +1 -1
- package/dist/cjs/components/combobox.props.js +1 -1
- package/dist/cjs/components/combobox.props.js.map +2 -2
- package/dist/cjs/components/context-menu.js +1 -1
- package/dist/cjs/components/context-menu.js.map +2 -2
- package/dist/cjs/components/context-menu.props.js +1 -1
- package/dist/cjs/components/context-menu.props.js.map +2 -2
- package/dist/cjs/components/data-list.js +1 -1
- package/dist/cjs/components/data-list.js.map +2 -2
- package/dist/cjs/components/dialog.js +1 -1
- package/dist/cjs/components/dialog.js.map +2 -2
- package/dist/cjs/components/dropdown-menu.js +1 -1
- package/dist/cjs/components/dropdown-menu.js.map +2 -2
- package/dist/cjs/components/dropdown-menu.props.js +1 -1
- package/dist/cjs/components/dropdown-menu.props.js.map +2 -2
- package/dist/cjs/components/heading.js +1 -1
- package/dist/cjs/components/heading.js.map +2 -2
- package/dist/cjs/components/heading.props.d.ts +2 -2
- package/dist/cjs/components/heading.props.js +1 -1
- package/dist/cjs/components/heading.props.js.map +2 -2
- package/dist/cjs/components/icon-button.js +1 -1
- package/dist/cjs/components/icon-button.js.map +2 -2
- package/dist/cjs/components/index.js +3 -3
- package/dist/cjs/components/index.js.map +3 -3
- package/dist/cjs/components/kbd.js +1 -1
- package/dist/cjs/components/kbd.js.map +2 -2
- package/dist/cjs/components/kbd.props.d.ts +1 -1
- package/dist/cjs/components/kbd.props.js +1 -1
- package/dist/cjs/components/kbd.props.js.map +2 -2
- package/dist/cjs/components/link.js +1 -1
- package/dist/cjs/components/link.js.map +2 -2
- package/dist/cjs/components/link.props.d.ts +2 -2
- package/dist/cjs/components/link.props.js +1 -1
- package/dist/cjs/components/link.props.js.map +2 -2
- package/dist/cjs/components/message-scroller.js +1 -1
- package/dist/cjs/components/message-scroller.js.map +2 -2
- package/dist/cjs/components/notice.js +1 -1
- package/dist/cjs/components/notice.js.map +2 -2
- package/dist/cjs/components/radio-group.js +1 -1
- package/dist/cjs/components/radio-group.js.map +2 -2
- package/dist/cjs/components/sheet.js +1 -1
- package/dist/cjs/components/sheet.js.map +2 -2
- package/dist/cjs/components/sidebar.d.ts.map +1 -1
- package/dist/cjs/components/sidebar.js +1 -1
- package/dist/cjs/components/sidebar.js.map +3 -3
- package/dist/cjs/components/text.js +1 -1
- package/dist/cjs/components/text.js.map +2 -2
- package/dist/cjs/components/text.props.d.ts +2 -2
- package/dist/cjs/components/text.props.js +1 -1
- package/dist/cjs/components/text.props.js.map +2 -2
- package/dist/cjs/components/theme-panel.js +2 -2
- package/dist/cjs/components/theme-panel.js.map +2 -2
- package/dist/cjs/components/toggle-button.js +1 -1
- package/dist/cjs/components/toggle-button.js.map +2 -2
- package/dist/cjs/components/toggle-icon-button.js +1 -1
- package/dist/cjs/components/toggle-icon-button.js.map +2 -2
- package/dist/cjs/components/toolbar.js +1 -1
- package/dist/cjs/components/toolbar.js.map +2 -2
- package/dist/cjs/components/tooltip.js +1 -1
- package/dist/cjs/components/tooltip.js.map +2 -2
- package/dist/cjs/components/virtual-menu.d.ts +2 -1
- package/dist/cjs/components/virtual-menu.d.ts.map +1 -1
- package/dist/cjs/components/virtual-menu.js +1 -1
- package/dist/cjs/components/virtual-menu.js.map +2 -2
- package/dist/cjs/index.js +3 -3
- package/dist/cjs/index.js.map +3 -3
- package/dist/cjs/props/index.js +1 -1
- package/dist/cjs/props/index.js.map +2 -2
- package/dist/cjs/props/weight.prop.d.ts +1 -1
- package/dist/cjs/props/weight.prop.d.ts.map +1 -1
- package/dist/cjs/props/weight.prop.js +1 -1
- package/dist/cjs/props/weight.prop.js.map +2 -2
- package/dist/esm/chunk-2WSD2H23.js +2 -0
- package/dist/esm/chunk-2WSD2H23.js.map +7 -0
- package/dist/esm/{chunk-JZSXHYUU.js → chunk-33IRPFDK.js} +2 -2
- package/dist/esm/{chunk-32ATKZAP.js → chunk-3E6ADI2F.js} +2 -2
- package/dist/esm/{chunk-JBC6DT2X.js → chunk-74SNS4VY.js} +2 -2
- package/dist/esm/chunk-CD324U6G.js +2 -0
- package/dist/esm/chunk-CD324U6G.js.map +7 -0
- package/dist/esm/{chunk-DIR22XIX.js → chunk-CNMFVJNC.js} +2 -2
- package/dist/esm/{chunk-UUHTK35B.js → chunk-EUHAZKWY.js} +2 -2
- package/dist/esm/chunk-F7HK2QLM.js +2 -0
- package/dist/esm/{chunk-5AHQJB6H.js.map → chunk-F7HK2QLM.js.map} +2 -2
- package/dist/esm/{chunk-MZR6YBE7.js → chunk-GDACOD53.js} +2 -2
- package/dist/esm/chunk-GTXRD4FZ.js +2 -0
- package/dist/esm/{chunk-UUV5UNYL.js.map → chunk-GTXRD4FZ.js.map} +3 -3
- package/dist/esm/{chunk-BUBV3C6C.js → chunk-HJ6ACBXW.js} +2 -2
- package/dist/esm/{chunk-XTE22CXV.js → chunk-HJZNHNLX.js} +2 -2
- package/dist/esm/chunk-HK7RJPQ2.js +2 -0
- package/dist/esm/chunk-HK7RJPQ2.js.map +7 -0
- package/dist/esm/{chunk-IXNJFV4O.js → chunk-HVXXJZC2.js} +2 -2
- package/dist/esm/{chunk-GYB7PAGB.js → chunk-IND2NZIN.js} +2 -2
- package/dist/esm/{chunk-UZQO4APP.js → chunk-JDMJC76O.js} +2 -2
- package/dist/esm/{chunk-PUQXBW2K.js → chunk-JH55M4I2.js} +2 -2
- package/dist/esm/{chunk-N77QJUTO.js → chunk-JOB6FH3D.js} +2 -2
- package/dist/esm/chunk-JOB6FH3D.js.map +7 -0
- package/dist/esm/{chunk-GIIMBBVM.js → chunk-MLXFZDFU.js} +2 -2
- package/dist/esm/{chunk-GYNRAVCL.js → chunk-NEK7F746.js} +2 -2
- package/dist/esm/chunk-NTGRWJEG.js +2 -0
- package/dist/esm/{chunk-EVTNB4TB.js.map → chunk-NTGRWJEG.js.map} +2 -2
- package/dist/esm/{chunk-KDKL3HXD.js → chunk-O7IPBLC7.js} +2 -2
- package/dist/esm/{chunk-K6Y2SM5N.js → chunk-OLSTITVY.js} +2 -2
- package/dist/esm/{chunk-X3D3JR64.js → chunk-Q6GUADLO.js} +2 -2
- package/dist/esm/{chunk-YVHRWMSZ.js → chunk-QETAAJJV.js} +2 -2
- package/dist/esm/chunk-QEYOXQK5.js +2 -0
- package/dist/esm/{chunk-PDBVZAUJ.js.map → chunk-QEYOXQK5.js.map} +2 -2
- package/dist/esm/chunk-R372ULQC.js +2 -0
- package/dist/esm/chunk-R372ULQC.js.map +7 -0
- package/dist/esm/chunk-RDS3AJWW.js +2 -0
- package/dist/esm/chunk-RDS3AJWW.js.map +7 -0
- package/dist/esm/{chunk-6XNQ5XD3.js → chunk-SKOF4A27.js} +2 -2
- package/dist/esm/{chunk-BINUV3ME.js → chunk-TBWKDBUF.js} +2 -2
- package/dist/esm/{chunk-MAI7FEU7.js → chunk-TLZMLJTI.js} +2 -2
- package/dist/esm/{chunk-MAI7FEU7.js.map → chunk-TLZMLJTI.js.map} +2 -2
- package/dist/esm/{chunk-CR2BSCFM.js → chunk-UNH3FGU4.js} +2 -2
- package/dist/esm/{chunk-L2IIIELE.js → chunk-WBGKTN35.js} +2 -2
- package/dist/esm/chunk-WSKA5MZZ.js +2 -0
- package/dist/esm/chunk-WSKA5MZZ.js.map +7 -0
- package/dist/esm/chunk-XDAQXNBQ.js +2 -0
- package/dist/esm/chunk-XDAQXNBQ.js.map +7 -0
- package/dist/esm/{chunk-63ASTOS2.js → chunk-XDV2SDJ3.js} +2 -2
- package/dist/esm/{chunk-G6PO4QKW.js → chunk-XPT5ELKO.js} +2 -2
- package/dist/esm/{chunk-2XQECQF2.js → chunk-XXHIMGBY.js} +2 -2
- package/dist/esm/{chunk-JRIBL4WJ.js → chunk-ZRHXFYAE.js} +2 -2
- package/dist/esm/components/_internal/base-menu.props.d.ts +2 -2
- package/dist/esm/components/_internal/base-menu.props.js +1 -1
- package/dist/esm/components/_internal/base-menu.utils.d.ts.map +1 -1
- package/dist/esm/components/_internal/base-menu.utils.js +1 -1
- package/dist/esm/components/_internal/menu-context.d.ts +5 -2
- package/dist/esm/components/_internal/menu-context.d.ts.map +1 -1
- package/dist/esm/components/_internal/menu-context.js +1 -1
- package/dist/esm/components/alert-dialog.js +1 -1
- package/dist/esm/components/badge.js +1 -1
- package/dist/esm/components/blockquote.js +1 -1
- package/dist/esm/components/blockquote.props.d.ts +2 -2
- package/dist/esm/components/blockquote.props.js +1 -1
- package/dist/esm/components/button.js +1 -1
- package/dist/esm/components/chatbar.js +1 -1
- package/dist/esm/components/checkbox-group.js +1 -1
- package/dist/esm/components/code.js +1 -1
- package/dist/esm/components/code.props.d.ts +2 -2
- package/dist/esm/components/code.props.js +1 -1
- package/dist/esm/components/combobox.js +1 -1
- package/dist/esm/components/combobox.props.d.ts +1 -1
- package/dist/esm/components/combobox.props.js +1 -1
- package/dist/esm/components/context-menu.js +1 -1
- package/dist/esm/components/context-menu.props.js +1 -1
- package/dist/esm/components/data-list.js +1 -1
- package/dist/esm/components/dialog.js +1 -1
- package/dist/esm/components/dropdown-menu.js +1 -1
- package/dist/esm/components/dropdown-menu.props.js +1 -1
- package/dist/esm/components/heading.js +1 -1
- package/dist/esm/components/heading.props.d.ts +2 -2
- package/dist/esm/components/heading.props.js +1 -1
- package/dist/esm/components/icon-button.js +1 -1
- package/dist/esm/components/index.js +1 -1
- package/dist/esm/components/kbd.js +1 -1
- package/dist/esm/components/kbd.props.d.ts +1 -1
- package/dist/esm/components/kbd.props.js +1 -1
- package/dist/esm/components/link.js +1 -1
- package/dist/esm/components/link.props.d.ts +2 -2
- package/dist/esm/components/link.props.js +1 -1
- package/dist/esm/components/message-scroller.js +1 -1
- package/dist/esm/components/notice.js +1 -1
- package/dist/esm/components/radio-group.js +1 -1
- package/dist/esm/components/sheet.js +1 -1
- package/dist/esm/components/sidebar.d.ts.map +1 -1
- package/dist/esm/components/sidebar.js +1 -1
- package/dist/esm/components/text.js +1 -1
- package/dist/esm/components/text.props.d.ts +2 -2
- package/dist/esm/components/text.props.js +1 -1
- package/dist/esm/components/theme-panel.js +1 -1
- package/dist/esm/components/toggle-button.js +1 -1
- package/dist/esm/components/toggle-icon-button.js +1 -1
- package/dist/esm/components/toolbar.js +1 -1
- package/dist/esm/components/tooltip.js +1 -1
- package/dist/esm/components/virtual-menu.d.ts +2 -1
- package/dist/esm/components/virtual-menu.d.ts.map +1 -1
- package/dist/esm/components/virtual-menu.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/props/index.js +1 -1
- package/dist/esm/props/weight.prop.d.ts +1 -1
- package/dist/esm/props/weight.prop.d.ts.map +1 -1
- package/dist/esm/props/weight.prop.js +1 -1
- package/package.json +1 -1
- package/src/components/_internal/base-menu.css +120 -114
- package/src/components/_internal/base-menu.props.ts +1 -1
- package/src/components/_internal/base-menu.utils.tsx +2 -1
- package/src/components/_internal/base-sidebar-menu.css +8 -38
- package/src/components/_internal/menu-context.tsx +9 -4
- package/src/components/avatar.css +3 -3
- package/src/components/badge.css +3 -3
- package/src/components/blockquote.props.tsx +1 -1
- package/src/components/code.css +10 -32
- package/src/components/code.props.tsx +1 -1
- package/src/components/combobox.css +0 -9
- package/src/components/combobox.props.tsx +1 -1
- package/src/components/heading.css +9 -29
- package/src/components/heading.props.tsx +1 -1
- package/src/components/kbd.css +1 -29
- package/src/components/kbd.props.tsx +1 -1
- package/src/components/link.props.tsx +1 -1
- package/src/components/notice.css +10 -13
- package/src/components/select.css +19 -134
- package/src/components/sidebar.css +82 -123
- package/src/components/sidebar.tsx +1 -3
- package/src/components/slider.css +2 -2
- package/src/components/table.css +24 -11
- package/src/components/text.css +0 -20
- package/src/components/text.props.tsx +1 -1
- package/src/components/virtual-menu.tsx +3 -1
- package/src/props/weight.prop.ts +2 -1
- package/src/styles/tokens/radius.css +12 -0
- package/src/styles/tokens/typography.css +21 -49
- package/src/styles/utilities/font-weight.css +0 -20
- package/styles.css +1034 -2503
- package/tokens/base.css +23 -45
- package/tokens.css +23 -45
- package/utilities.css +0 -90
- package/dist/esm/chunk-5AHQJB6H.js +0 -2
- package/dist/esm/chunk-ABQHBDM4.js +0 -2
- package/dist/esm/chunk-ABQHBDM4.js.map +0 -7
- package/dist/esm/chunk-B72RMGWZ.js +0 -2
- package/dist/esm/chunk-B72RMGWZ.js.map +0 -7
- package/dist/esm/chunk-EUSKAXHP.js +0 -2
- package/dist/esm/chunk-EUSKAXHP.js.map +0 -7
- package/dist/esm/chunk-EVTNB4TB.js +0 -2
- package/dist/esm/chunk-FD2TR343.js +0 -2
- package/dist/esm/chunk-FD2TR343.js.map +0 -7
- package/dist/esm/chunk-FTGD2SZ6.js +0 -2
- package/dist/esm/chunk-FTGD2SZ6.js.map +0 -7
- package/dist/esm/chunk-G3U6OHVA.js +0 -2
- package/dist/esm/chunk-G3U6OHVA.js.map +0 -7
- package/dist/esm/chunk-N77QJUTO.js.map +0 -7
- package/dist/esm/chunk-PDBVZAUJ.js +0 -2
- package/dist/esm/chunk-UUV5UNYL.js +0 -2
- package/dist/esm/chunk-ZMFZYXLB.js +0 -2
- package/dist/esm/chunk-ZMFZYXLB.js.map +0 -7
- /package/dist/esm/{chunk-JZSXHYUU.js.map → chunk-33IRPFDK.js.map} +0 -0
- /package/dist/esm/{chunk-32ATKZAP.js.map → chunk-3E6ADI2F.js.map} +0 -0
- /package/dist/esm/{chunk-JBC6DT2X.js.map → chunk-74SNS4VY.js.map} +0 -0
- /package/dist/esm/{chunk-DIR22XIX.js.map → chunk-CNMFVJNC.js.map} +0 -0
- /package/dist/esm/{chunk-UUHTK35B.js.map → chunk-EUHAZKWY.js.map} +0 -0
- /package/dist/esm/{chunk-MZR6YBE7.js.map → chunk-GDACOD53.js.map} +0 -0
- /package/dist/esm/{chunk-BUBV3C6C.js.map → chunk-HJ6ACBXW.js.map} +0 -0
- /package/dist/esm/{chunk-XTE22CXV.js.map → chunk-HJZNHNLX.js.map} +0 -0
- /package/dist/esm/{chunk-IXNJFV4O.js.map → chunk-HVXXJZC2.js.map} +0 -0
- /package/dist/esm/{chunk-GYB7PAGB.js.map → chunk-IND2NZIN.js.map} +0 -0
- /package/dist/esm/{chunk-UZQO4APP.js.map → chunk-JDMJC76O.js.map} +0 -0
- /package/dist/esm/{chunk-PUQXBW2K.js.map → chunk-JH55M4I2.js.map} +0 -0
- /package/dist/esm/{chunk-GIIMBBVM.js.map → chunk-MLXFZDFU.js.map} +0 -0
- /package/dist/esm/{chunk-GYNRAVCL.js.map → chunk-NEK7F746.js.map} +0 -0
- /package/dist/esm/{chunk-KDKL3HXD.js.map → chunk-O7IPBLC7.js.map} +0 -0
- /package/dist/esm/{chunk-K6Y2SM5N.js.map → chunk-OLSTITVY.js.map} +0 -0
- /package/dist/esm/{chunk-X3D3JR64.js.map → chunk-Q6GUADLO.js.map} +0 -0
- /package/dist/esm/{chunk-YVHRWMSZ.js.map → chunk-QETAAJJV.js.map} +0 -0
- /package/dist/esm/{chunk-6XNQ5XD3.js.map → chunk-SKOF4A27.js.map} +0 -0
- /package/dist/esm/{chunk-BINUV3ME.js.map → chunk-TBWKDBUF.js.map} +0 -0
- /package/dist/esm/{chunk-CR2BSCFM.js.map → chunk-UNH3FGU4.js.map} +0 -0
- /package/dist/esm/{chunk-L2IIIELE.js.map → chunk-WBGKTN35.js.map} +0 -0
- /package/dist/esm/{chunk-63ASTOS2.js.map → chunk-XDV2SDJ3.js.map} +0 -0
- /package/dist/esm/{chunk-G6PO4QKW.js.map → chunk-XPT5ELKO.js.map} +0 -0
- /package/dist/esm/{chunk-2XQECQF2.js.map → chunk-XXHIMGBY.js.map} +0 -0
- /package/dist/esm/{chunk-JRIBL4WJ.js.map → chunk-ZRHXFYAE.js.map} +0 -0
package/tokens/base.css
CHANGED
|
@@ -282,53 +282,36 @@
|
|
|
282
282
|
--default-font-family-sans: var(--font-sans);
|
|
283
283
|
--default-font-family-mono: var(--font-mono);
|
|
284
284
|
--default-font-family-serif: var(--font-serif);
|
|
285
|
-
--font-size-0: calc(10px * var(--scale));
|
|
286
285
|
--font-size-1: calc(12px * var(--scale));
|
|
287
286
|
--font-size-2: calc(14px * var(--scale));
|
|
288
287
|
--font-size-3: calc(16px * var(--scale));
|
|
289
288
|
--font-size-4: calc(18px * var(--scale));
|
|
290
289
|
--font-size-5: calc(20px * var(--scale));
|
|
291
290
|
--font-size-6: calc(24px * var(--scale));
|
|
292
|
-
--font-size-7: calc(
|
|
293
|
-
--font-size-8: calc(
|
|
294
|
-
--font-size-9: calc(
|
|
295
|
-
--font-size-10: calc(72px * var(--scale));
|
|
296
|
-
--font-size-11: calc(86px * var(--scale));
|
|
297
|
-
--font-size-12: calc(104px * var(--scale));
|
|
298
|
-
--font-weight-thin: 100;
|
|
299
|
-
--font-weight-extralight: 200;
|
|
300
|
-
--font-weight-light: 300;
|
|
291
|
+
--font-size-7: calc(32px * var(--scale));
|
|
292
|
+
--font-size-8: calc(44px * var(--scale));
|
|
293
|
+
--font-size-9: calc(64px * var(--scale));
|
|
301
294
|
--font-weight-regular: 400;
|
|
302
295
|
--font-weight-medium: 500;
|
|
303
296
|
--font-weight-semibold: 600;
|
|
304
|
-
--font-weight-bold: 700;
|
|
305
|
-
--font-weight-extrabold: 800;
|
|
306
|
-
--line-height-0: calc(12px * var(--scale));
|
|
307
297
|
--line-height-1: calc(16px * var(--scale));
|
|
308
298
|
--line-height-2: calc(20px * var(--scale));
|
|
309
299
|
--line-height-3: calc(24px * var(--scale));
|
|
310
300
|
--line-height-4: calc(26px * var(--scale));
|
|
311
301
|
--line-height-5: calc(28px * var(--scale));
|
|
312
|
-
--line-height-6: calc(
|
|
313
|
-
--line-height-7: calc(
|
|
314
|
-
--line-height-8: calc(
|
|
315
|
-
--line-height-9: calc(
|
|
316
|
-
--
|
|
317
|
-
--line-height-11: calc(90px * var(--scale));
|
|
318
|
-
--line-height-12: calc(108px * var(--scale));
|
|
319
|
-
--letter-spacing-0: 0.005em;
|
|
320
|
-
--letter-spacing-1: 0.0025em;
|
|
302
|
+
--line-height-6: calc(32px * var(--scale));
|
|
303
|
+
--line-height-7: calc(40px * var(--scale));
|
|
304
|
+
--line-height-8: calc(52px * var(--scale));
|
|
305
|
+
--line-height-9: calc(70px * var(--scale));
|
|
306
|
+
--letter-spacing-1: 0em;
|
|
321
307
|
--letter-spacing-2: 0em;
|
|
322
308
|
--letter-spacing-3: 0em;
|
|
323
|
-
--letter-spacing-4: -0.
|
|
324
|
-
--letter-spacing-5: -0.
|
|
325
|
-
--letter-spacing-6: -0.
|
|
326
|
-
--letter-spacing-7: -0.
|
|
327
|
-
--letter-spacing-8: -0.
|
|
309
|
+
--letter-spacing-4: -0.005em;
|
|
310
|
+
--letter-spacing-5: -0.0075em;
|
|
311
|
+
--letter-spacing-6: -0.01em;
|
|
312
|
+
--letter-spacing-7: -0.015em;
|
|
313
|
+
--letter-spacing-8: -0.02em;
|
|
328
314
|
--letter-spacing-9: -0.025em;
|
|
329
|
-
--letter-spacing-10: -0.03em;
|
|
330
|
-
--letter-spacing-11: -0.035em;
|
|
331
|
-
--letter-spacing-12: -0.04em;
|
|
332
315
|
--default-font-size: var(--font-size-3);
|
|
333
316
|
--default-font-style: normal;
|
|
334
317
|
--default-font-weight: var(--font-weight-regular);
|
|
@@ -341,20 +324,8 @@
|
|
|
341
324
|
--heading-leading-trim-start: var(--default-leading-trim-start);
|
|
342
325
|
--heading-leading-trim-end: var(--default-leading-trim-end);
|
|
343
326
|
--heading-letter-spacing: 0em;
|
|
344
|
-
--heading-
|
|
345
|
-
--
|
|
346
|
-
--heading-line-height-2: calc(18px * var(--scale));
|
|
347
|
-
--heading-line-height-3: calc(22px * var(--scale));
|
|
348
|
-
--heading-line-height-4: calc(24px * var(--scale));
|
|
349
|
-
--heading-line-height-5: calc(26px * var(--scale));
|
|
350
|
-
--heading-line-height-6: calc(30px * var(--scale));
|
|
351
|
-
--heading-line-height-7: calc(36px * var(--scale));
|
|
352
|
-
--heading-line-height-8: calc(40px * var(--scale));
|
|
353
|
-
--heading-line-height-9: calc(60px * var(--scale));
|
|
354
|
-
--heading-line-height-10: calc(76px * var(--scale));
|
|
355
|
-
--heading-line-height-11: calc(90px * var(--scale));
|
|
356
|
-
--heading-line-height-12: calc(108px * var(--scale));
|
|
357
|
-
--code-font-size-adjust: 0.95;
|
|
327
|
+
--heading-font-weight: var(--font-weight-medium);
|
|
328
|
+
--mono-scale: 0.925;
|
|
358
329
|
--code-font-style: normal;
|
|
359
330
|
--code-font-weight: inherit;
|
|
360
331
|
--code-letter-spacing: -0.007em;
|
|
@@ -364,7 +335,6 @@
|
|
|
364
335
|
--code-padding-right: 0.25em;
|
|
365
336
|
--strong-font-size-adjust: 1;
|
|
366
337
|
--strong-font-style: inherit;
|
|
367
|
-
--heading-font-weight: var(--font-weight-bold);
|
|
368
338
|
--strong-font-weight: var(--font-weight-medium);
|
|
369
339
|
--strong-letter-spacing: 0em;
|
|
370
340
|
--em-font-size-adjust: 1.18;
|
|
@@ -1360,6 +1330,10 @@
|
|
|
1360
1330
|
--radius-control-2: var(--radius-2);
|
|
1361
1331
|
--radius-control-3: var(--radius-3);
|
|
1362
1332
|
--radius-control-4: var(--radius-4);
|
|
1333
|
+
--radius-row-1: var(--radius-control-1);
|
|
1334
|
+
--radius-row-2: var(--radius-control-2);
|
|
1335
|
+
--radius-row-3: var(--radius-control-3);
|
|
1336
|
+
--radius-row-4: var(--radius-control-4);
|
|
1363
1337
|
--radius-surface-1: calc(10px * var(--scale) * var(--radius-surface-factor));
|
|
1364
1338
|
--radius-surface-2: calc(16px * var(--scale) * var(--radius-surface-factor));
|
|
1365
1339
|
--radius-surface-3: calc(22px * var(--scale) * var(--radius-surface-factor));
|
|
@@ -1397,6 +1371,10 @@
|
|
|
1397
1371
|
--radius-control-2: calc(var(--control-height-2) / 2);
|
|
1398
1372
|
--radius-control-3: calc(var(--control-height-3) / 2);
|
|
1399
1373
|
--radius-control-4: calc(var(--control-height-4) / 2);
|
|
1374
|
+
--radius-row-1: calc((var(--line-height-1) + 2 * var(--row-inset-1)) / 2);
|
|
1375
|
+
--radius-row-2: calc((var(--line-height-2) + 2 * var(--row-inset-2)) / 2);
|
|
1376
|
+
--radius-row-3: calc((var(--line-height-3) + 2 * var(--row-inset-3)) / 2);
|
|
1377
|
+
--radius-row-4: calc((var(--line-height-4) + 2 * var(--row-inset-4)) / 2);
|
|
1400
1378
|
}
|
|
1401
1379
|
.rt-SurfaceNest:where(.rt-r-size-1) {
|
|
1402
1380
|
--kui-sf-radius: var(--radius-surface-1);
|
package/tokens.css
CHANGED
|
@@ -3628,53 +3628,36 @@
|
|
|
3628
3628
|
--default-font-family-sans: var(--font-sans);
|
|
3629
3629
|
--default-font-family-mono: var(--font-mono);
|
|
3630
3630
|
--default-font-family-serif: var(--font-serif);
|
|
3631
|
-
--font-size-0: calc(10px * var(--scale));
|
|
3632
3631
|
--font-size-1: calc(12px * var(--scale));
|
|
3633
3632
|
--font-size-2: calc(14px * var(--scale));
|
|
3634
3633
|
--font-size-3: calc(16px * var(--scale));
|
|
3635
3634
|
--font-size-4: calc(18px * var(--scale));
|
|
3636
3635
|
--font-size-5: calc(20px * var(--scale));
|
|
3637
3636
|
--font-size-6: calc(24px * var(--scale));
|
|
3638
|
-
--font-size-7: calc(
|
|
3639
|
-
--font-size-8: calc(
|
|
3640
|
-
--font-size-9: calc(
|
|
3641
|
-
--font-size-10: calc(72px * var(--scale));
|
|
3642
|
-
--font-size-11: calc(86px * var(--scale));
|
|
3643
|
-
--font-size-12: calc(104px * var(--scale));
|
|
3644
|
-
--font-weight-thin: 100;
|
|
3645
|
-
--font-weight-extralight: 200;
|
|
3646
|
-
--font-weight-light: 300;
|
|
3637
|
+
--font-size-7: calc(32px * var(--scale));
|
|
3638
|
+
--font-size-8: calc(44px * var(--scale));
|
|
3639
|
+
--font-size-9: calc(64px * var(--scale));
|
|
3647
3640
|
--font-weight-regular: 400;
|
|
3648
3641
|
--font-weight-medium: 500;
|
|
3649
3642
|
--font-weight-semibold: 600;
|
|
3650
|
-
--font-weight-bold: 700;
|
|
3651
|
-
--font-weight-extrabold: 800;
|
|
3652
|
-
--line-height-0: calc(12px * var(--scale));
|
|
3653
3643
|
--line-height-1: calc(16px * var(--scale));
|
|
3654
3644
|
--line-height-2: calc(20px * var(--scale));
|
|
3655
3645
|
--line-height-3: calc(24px * var(--scale));
|
|
3656
3646
|
--line-height-4: calc(26px * var(--scale));
|
|
3657
3647
|
--line-height-5: calc(28px * var(--scale));
|
|
3658
|
-
--line-height-6: calc(
|
|
3659
|
-
--line-height-7: calc(
|
|
3660
|
-
--line-height-8: calc(
|
|
3661
|
-
--line-height-9: calc(
|
|
3662
|
-
--
|
|
3663
|
-
--line-height-11: calc(90px * var(--scale));
|
|
3664
|
-
--line-height-12: calc(108px * var(--scale));
|
|
3665
|
-
--letter-spacing-0: 0.005em;
|
|
3666
|
-
--letter-spacing-1: 0.0025em;
|
|
3648
|
+
--line-height-6: calc(32px * var(--scale));
|
|
3649
|
+
--line-height-7: calc(40px * var(--scale));
|
|
3650
|
+
--line-height-8: calc(52px * var(--scale));
|
|
3651
|
+
--line-height-9: calc(70px * var(--scale));
|
|
3652
|
+
--letter-spacing-1: 0em;
|
|
3667
3653
|
--letter-spacing-2: 0em;
|
|
3668
3654
|
--letter-spacing-3: 0em;
|
|
3669
|
-
--letter-spacing-4: -0.
|
|
3670
|
-
--letter-spacing-5: -0.
|
|
3671
|
-
--letter-spacing-6: -0.
|
|
3672
|
-
--letter-spacing-7: -0.
|
|
3673
|
-
--letter-spacing-8: -0.
|
|
3655
|
+
--letter-spacing-4: -0.005em;
|
|
3656
|
+
--letter-spacing-5: -0.0075em;
|
|
3657
|
+
--letter-spacing-6: -0.01em;
|
|
3658
|
+
--letter-spacing-7: -0.015em;
|
|
3659
|
+
--letter-spacing-8: -0.02em;
|
|
3674
3660
|
--letter-spacing-9: -0.025em;
|
|
3675
|
-
--letter-spacing-10: -0.03em;
|
|
3676
|
-
--letter-spacing-11: -0.035em;
|
|
3677
|
-
--letter-spacing-12: -0.04em;
|
|
3678
3661
|
--default-font-size: var(--font-size-3);
|
|
3679
3662
|
--default-font-style: normal;
|
|
3680
3663
|
--default-font-weight: var(--font-weight-regular);
|
|
@@ -3687,20 +3670,8 @@
|
|
|
3687
3670
|
--heading-leading-trim-start: var(--default-leading-trim-start);
|
|
3688
3671
|
--heading-leading-trim-end: var(--default-leading-trim-end);
|
|
3689
3672
|
--heading-letter-spacing: 0em;
|
|
3690
|
-
--heading-
|
|
3691
|
-
--
|
|
3692
|
-
--heading-line-height-2: calc(18px * var(--scale));
|
|
3693
|
-
--heading-line-height-3: calc(22px * var(--scale));
|
|
3694
|
-
--heading-line-height-4: calc(24px * var(--scale));
|
|
3695
|
-
--heading-line-height-5: calc(26px * var(--scale));
|
|
3696
|
-
--heading-line-height-6: calc(30px * var(--scale));
|
|
3697
|
-
--heading-line-height-7: calc(36px * var(--scale));
|
|
3698
|
-
--heading-line-height-8: calc(40px * var(--scale));
|
|
3699
|
-
--heading-line-height-9: calc(60px * var(--scale));
|
|
3700
|
-
--heading-line-height-10: calc(76px * var(--scale));
|
|
3701
|
-
--heading-line-height-11: calc(90px * var(--scale));
|
|
3702
|
-
--heading-line-height-12: calc(108px * var(--scale));
|
|
3703
|
-
--code-font-size-adjust: 0.95;
|
|
3673
|
+
--heading-font-weight: var(--font-weight-medium);
|
|
3674
|
+
--mono-scale: 0.925;
|
|
3704
3675
|
--code-font-style: normal;
|
|
3705
3676
|
--code-font-weight: inherit;
|
|
3706
3677
|
--code-letter-spacing: -0.007em;
|
|
@@ -3710,7 +3681,6 @@
|
|
|
3710
3681
|
--code-padding-right: 0.25em;
|
|
3711
3682
|
--strong-font-size-adjust: 1;
|
|
3712
3683
|
--strong-font-style: inherit;
|
|
3713
|
-
--heading-font-weight: var(--font-weight-bold);
|
|
3714
3684
|
--strong-font-weight: var(--font-weight-medium);
|
|
3715
3685
|
--strong-letter-spacing: 0em;
|
|
3716
3686
|
--em-font-size-adjust: 1.18;
|
|
@@ -4706,6 +4676,10 @@
|
|
|
4706
4676
|
--radius-control-2: var(--radius-2);
|
|
4707
4677
|
--radius-control-3: var(--radius-3);
|
|
4708
4678
|
--radius-control-4: var(--radius-4);
|
|
4679
|
+
--radius-row-1: var(--radius-control-1);
|
|
4680
|
+
--radius-row-2: var(--radius-control-2);
|
|
4681
|
+
--radius-row-3: var(--radius-control-3);
|
|
4682
|
+
--radius-row-4: var(--radius-control-4);
|
|
4709
4683
|
--radius-surface-1: calc(10px * var(--scale) * var(--radius-surface-factor));
|
|
4710
4684
|
--radius-surface-2: calc(16px * var(--scale) * var(--radius-surface-factor));
|
|
4711
4685
|
--radius-surface-3: calc(22px * var(--scale) * var(--radius-surface-factor));
|
|
@@ -4743,6 +4717,10 @@
|
|
|
4743
4717
|
--radius-control-2: calc(var(--control-height-2) / 2);
|
|
4744
4718
|
--radius-control-3: calc(var(--control-height-3) / 2);
|
|
4745
4719
|
--radius-control-4: calc(var(--control-height-4) / 2);
|
|
4720
|
+
--radius-row-1: calc((var(--line-height-1) + 2 * var(--row-inset-1)) / 2);
|
|
4721
|
+
--radius-row-2: calc((var(--line-height-2) + 2 * var(--row-inset-2)) / 2);
|
|
4722
|
+
--radius-row-3: calc((var(--line-height-3) + 2 * var(--row-inset-3)) / 2);
|
|
4723
|
+
--radius-row-4: calc((var(--line-height-4) + 2 * var(--row-inset-4)) / 2);
|
|
4746
4724
|
}
|
|
4747
4725
|
.rt-SurfaceNest:where(.rt-r-size-1) {
|
|
4748
4726
|
--kui-sf-radius: var(--radius-surface-1);
|
package/utilities.css
CHANGED
|
@@ -13198,15 +13198,6 @@
|
|
|
13198
13198
|
max-width: var(--max-width-xl);
|
|
13199
13199
|
}
|
|
13200
13200
|
}
|
|
13201
|
-
.rt-r-weight-thin {
|
|
13202
|
-
font-weight: var(--font-weight-thin);
|
|
13203
|
-
}
|
|
13204
|
-
.rt-r-weight-extralight {
|
|
13205
|
-
font-weight: var(--font-weight-extralight);
|
|
13206
|
-
}
|
|
13207
|
-
.rt-r-weight-light {
|
|
13208
|
-
font-weight: var(--font-weight-light);
|
|
13209
|
-
}
|
|
13210
13201
|
.rt-r-weight-regular {
|
|
13211
13202
|
font-weight: var(--font-weight-regular);
|
|
13212
13203
|
}
|
|
@@ -13216,22 +13207,7 @@
|
|
|
13216
13207
|
.rt-r-weight-semibold {
|
|
13217
13208
|
font-weight: var(--font-weight-semibold);
|
|
13218
13209
|
}
|
|
13219
|
-
.rt-r-weight-bold {
|
|
13220
|
-
font-weight: var(--font-weight-bold);
|
|
13221
|
-
}
|
|
13222
|
-
.rt-r-weight-extrabold {
|
|
13223
|
-
font-weight: var(--font-weight-extrabold);
|
|
13224
|
-
}
|
|
13225
13210
|
@media (min-width: 520px) {
|
|
13226
|
-
.xs\:rt-r-weight-thin {
|
|
13227
|
-
font-weight: var(--font-weight-thin);
|
|
13228
|
-
}
|
|
13229
|
-
.xs\:rt-r-weight-extralight {
|
|
13230
|
-
font-weight: var(--font-weight-extralight);
|
|
13231
|
-
}
|
|
13232
|
-
.xs\:rt-r-weight-light {
|
|
13233
|
-
font-weight: var(--font-weight-light);
|
|
13234
|
-
}
|
|
13235
13211
|
.xs\:rt-r-weight-regular {
|
|
13236
13212
|
font-weight: var(--font-weight-regular);
|
|
13237
13213
|
}
|
|
@@ -13241,23 +13217,8 @@
|
|
|
13241
13217
|
.xs\:rt-r-weight-semibold {
|
|
13242
13218
|
font-weight: var(--font-weight-semibold);
|
|
13243
13219
|
}
|
|
13244
|
-
.xs\:rt-r-weight-bold {
|
|
13245
|
-
font-weight: var(--font-weight-bold);
|
|
13246
|
-
}
|
|
13247
|
-
.xs\:rt-r-weight-extrabold {
|
|
13248
|
-
font-weight: var(--font-weight-extrabold);
|
|
13249
|
-
}
|
|
13250
13220
|
}
|
|
13251
13221
|
@media (min-width: 768px) {
|
|
13252
|
-
.sm\:rt-r-weight-thin {
|
|
13253
|
-
font-weight: var(--font-weight-thin);
|
|
13254
|
-
}
|
|
13255
|
-
.sm\:rt-r-weight-extralight {
|
|
13256
|
-
font-weight: var(--font-weight-extralight);
|
|
13257
|
-
}
|
|
13258
|
-
.sm\:rt-r-weight-light {
|
|
13259
|
-
font-weight: var(--font-weight-light);
|
|
13260
|
-
}
|
|
13261
13222
|
.sm\:rt-r-weight-regular {
|
|
13262
13223
|
font-weight: var(--font-weight-regular);
|
|
13263
13224
|
}
|
|
@@ -13267,23 +13228,8 @@
|
|
|
13267
13228
|
.sm\:rt-r-weight-semibold {
|
|
13268
13229
|
font-weight: var(--font-weight-semibold);
|
|
13269
13230
|
}
|
|
13270
|
-
.sm\:rt-r-weight-bold {
|
|
13271
|
-
font-weight: var(--font-weight-bold);
|
|
13272
|
-
}
|
|
13273
|
-
.sm\:rt-r-weight-extrabold {
|
|
13274
|
-
font-weight: var(--font-weight-extrabold);
|
|
13275
|
-
}
|
|
13276
13231
|
}
|
|
13277
13232
|
@media (min-width: 1024px) {
|
|
13278
|
-
.md\:rt-r-weight-thin {
|
|
13279
|
-
font-weight: var(--font-weight-thin);
|
|
13280
|
-
}
|
|
13281
|
-
.md\:rt-r-weight-extralight {
|
|
13282
|
-
font-weight: var(--font-weight-extralight);
|
|
13283
|
-
}
|
|
13284
|
-
.md\:rt-r-weight-light {
|
|
13285
|
-
font-weight: var(--font-weight-light);
|
|
13286
|
-
}
|
|
13287
13233
|
.md\:rt-r-weight-regular {
|
|
13288
13234
|
font-weight: var(--font-weight-regular);
|
|
13289
13235
|
}
|
|
@@ -13293,23 +13239,8 @@
|
|
|
13293
13239
|
.md\:rt-r-weight-semibold {
|
|
13294
13240
|
font-weight: var(--font-weight-semibold);
|
|
13295
13241
|
}
|
|
13296
|
-
.md\:rt-r-weight-bold {
|
|
13297
|
-
font-weight: var(--font-weight-bold);
|
|
13298
|
-
}
|
|
13299
|
-
.md\:rt-r-weight-extrabold {
|
|
13300
|
-
font-weight: var(--font-weight-extrabold);
|
|
13301
|
-
}
|
|
13302
13242
|
}
|
|
13303
13243
|
@media (min-width: 1280px) {
|
|
13304
|
-
.lg\:rt-r-weight-thin {
|
|
13305
|
-
font-weight: var(--font-weight-thin);
|
|
13306
|
-
}
|
|
13307
|
-
.lg\:rt-r-weight-extralight {
|
|
13308
|
-
font-weight: var(--font-weight-extralight);
|
|
13309
|
-
}
|
|
13310
|
-
.lg\:rt-r-weight-light {
|
|
13311
|
-
font-weight: var(--font-weight-light);
|
|
13312
|
-
}
|
|
13313
13244
|
.lg\:rt-r-weight-regular {
|
|
13314
13245
|
font-weight: var(--font-weight-regular);
|
|
13315
13246
|
}
|
|
@@ -13319,23 +13250,8 @@
|
|
|
13319
13250
|
.lg\:rt-r-weight-semibold {
|
|
13320
13251
|
font-weight: var(--font-weight-semibold);
|
|
13321
13252
|
}
|
|
13322
|
-
.lg\:rt-r-weight-bold {
|
|
13323
|
-
font-weight: var(--font-weight-bold);
|
|
13324
|
-
}
|
|
13325
|
-
.lg\:rt-r-weight-extrabold {
|
|
13326
|
-
font-weight: var(--font-weight-extrabold);
|
|
13327
|
-
}
|
|
13328
13253
|
}
|
|
13329
13254
|
@media (min-width: 1640px) {
|
|
13330
|
-
.xl\:rt-r-weight-thin {
|
|
13331
|
-
font-weight: var(--font-weight-thin);
|
|
13332
|
-
}
|
|
13333
|
-
.xl\:rt-r-weight-extralight {
|
|
13334
|
-
font-weight: var(--font-weight-extralight);
|
|
13335
|
-
}
|
|
13336
|
-
.xl\:rt-r-weight-light {
|
|
13337
|
-
font-weight: var(--font-weight-light);
|
|
13338
|
-
}
|
|
13339
13255
|
.xl\:rt-r-weight-regular {
|
|
13340
13256
|
font-weight: var(--font-weight-regular);
|
|
13341
13257
|
}
|
|
@@ -13345,12 +13261,6 @@
|
|
|
13345
13261
|
.xl\:rt-r-weight-semibold {
|
|
13346
13262
|
font-weight: var(--font-weight-semibold);
|
|
13347
13263
|
}
|
|
13348
|
-
.xl\:rt-r-weight-bold {
|
|
13349
|
-
font-weight: var(--font-weight-bold);
|
|
13350
|
-
}
|
|
13351
|
-
.xl\:rt-r-weight-extrabold {
|
|
13352
|
-
font-weight: var(--font-weight-extrabold);
|
|
13353
|
-
}
|
|
13354
13264
|
}
|
|
13355
13265
|
.rt-r-lt-normal::before,
|
|
13356
13266
|
.rt-r-lt-end::before,
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as t}from"./chunk-FD2TR343.js";import{a as p}from"./chunk-WYADYDPN.js";import{a as s}from"./chunk-ZE2KAVXW.js";import{b as e}from"./chunk-ZWZGUBL4.js";import{a as o}from"./chunk-NZJGC6ZW.js";import{c as r}from"./chunk-34KVYDF6.js";var f=["0","1","2","3","4","5","6","7","8","9","10","11","12"],n={...o,size:{type:"enum",className:"rt-r-size",values:f,responsive:!0},...t,...r,...e,...s,...p};export{n as a};
|
|
2
|
-
//# sourceMappingURL=chunk-5AHQJB6H.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as s}from"./chunk-NZJGC6ZW.js";var e=["0","1","2","3","4","5","6","7","8","9","10","11","12"],r=["raised","soft"],a={...s,size:{type:"enum",className:"rt-r-size",values:e,responsive:!0},variant:{type:"enum",className:"rt-variant",values:r,default:"raised"}};export{a};
|
|
2
|
-
//# sourceMappingURL=chunk-ABQHBDM4.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/kbd.props.tsx"],
|
|
4
|
-
"sourcesContent": ["import { asChildPropDef } from '../props/as-child.prop.js';\n\nimport type { PropDef } from '../props/prop-def.js';\n\nconst sizes = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12'] as const;\nconst variants = ['raised', 'soft'] as const;\n\nconst kbdPropDefs = {\n ...asChildPropDef,\n size: {\n type: 'enum',\n className: 'rt-r-size',\n values: sizes,\n responsive: true,\n },\n variant: {\n type: 'enum',\n className: 'rt-variant',\n values: variants,\n default: 'raised',\n },\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n variant: PropDef<(typeof variants)[number]>;\n};\n\nexport { kbdPropDefs };\n"],
|
|
5
|
-
"mappings": "wCAIA,IAAMA,EAAQ,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,KAAM,IAAI,EAC3EC,EAAW,CAAC,SAAU,MAAM,EAE5BC,EAAc,CAClB,GAAGC,EACH,KAAM,CACJ,KAAM,OACN,UAAW,YACX,OAAQH,EACR,WAAY,EACd,EACA,QAAS,CACP,KAAM,OACN,UAAW,aACX,OAAQC,EACR,QAAS,QACX,CACF",
|
|
6
|
-
"names": ["sizes", "variants", "kbdPropDefs", "asChildPropDef"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as o}from"./chunk-KNQBAOMV.js";import{a as p}from"./chunk-FD2TR343.js";import{a as t}from"./chunk-WYADYDPN.js";import{a as s}from"./chunk-ZE2KAVXW.js";import{a as e}from"./chunk-NZJGC6ZW.js";import{d as r}from"./chunk-34KVYDF6.js";var n=["0","1","2","3","4","5","6","7","8","9","10","11","12"],i=["auto","always","hover","none"],D={...e,size:{type:"enum",className:"rt-r-size",values:n,responsive:!0},...p,...o,...s,...t,underline:{type:"enum",className:"rt-underline",values:i,default:"auto"},...r};export{D as a};
|
|
2
|
-
//# sourceMappingURL=chunk-B72RMGWZ.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/link.props.tsx"],
|
|
4
|
-
"sourcesContent": ["import { asChildPropDef } from '../props/as-child.prop.js';\nimport { accentColorPropDef } from '../props/color.prop.js';\nimport { leadingTrimPropDef } from '../props/leading-trim.prop.js';\nimport { textWrapPropDef } from '../props/text-wrap.prop.js';\nimport { truncatePropDef } from '../props/truncate.prop.js';\nimport { weightPropDef } from '../props/weight.prop.js';\n\nimport type { PropDef } from '../props/prop-def.js';\n\nconst sizes = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12'] as const;\nconst underline = ['auto', 'always', 'hover', 'none'] as const;\n\nconst linkPropDefs = {\n ...asChildPropDef,\n size: {\n type: 'enum',\n className: 'rt-r-size',\n values: sizes,\n responsive: true,\n },\n ...weightPropDef,\n ...leadingTrimPropDef,\n ...truncatePropDef,\n ...textWrapPropDef,\n underline: { type: 'enum', className: 'rt-underline', values: underline, default: 'auto' },\n ...accentColorPropDef,\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n underline: PropDef<(typeof underline)[number]>;\n};\n\nexport { linkPropDefs };\n"],
|
|
5
|
-
"mappings": "gPASA,IAAMA,EAAQ,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,KAAM,IAAI,EAC3EC,EAAY,CAAC,OAAQ,SAAU,QAAS,MAAM,EAE9CC,EAAe,CACnB,GAAGC,EACH,KAAM,CACJ,KAAM,OACN,UAAW,YACX,OAAQH,EACR,WAAY,EACd,EACA,GAAGI,EACH,GAAGC,EACH,GAAGC,EACH,GAAGC,EACH,UAAW,CAAE,KAAM,OAAQ,UAAW,eAAgB,OAAQN,EAAW,QAAS,MAAO,EACzF,GAAGO,CACL",
|
|
6
|
-
"names": ["sizes", "underline", "linkPropDefs", "asChildPropDef", "weightPropDef", "leadingTrimPropDef", "truncatePropDef", "textWrapPropDef", "accentColorPropDef"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as s}from"./chunk-NZJGC6ZW.js";import{c as e}from"./chunk-34KVYDF6.js";var t=["1","2"],r=["cascade","drill-down"],o={size:{type:"enum",className:"rt-r-size",values:t,default:"2",responsive:!0},...e},i={...o,submenuBehavior:{type:"enum",values:r,default:"cascade",responsive:!0}},u=o,a={...s,...e,shortcut:{type:"string"}},f={...e,shortcut:{type:"string"}},c={...e};export{r as a,i as b,u as c,a as d,f as e,c as f};
|
|
2
|
-
//# sourceMappingURL=chunk-EUSKAXHP.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/_internal/base-menu.props.ts"],
|
|
4
|
-
"sourcesContent": ["import { asChildPropDef } from '../../props/as-child.prop.js';\nimport { colorPropDef } from '../../props/color.prop.js';\n\nimport type { PropDef } from '../../props/prop-def.js';\n\nconst contentSizes = ['1', '2'] as const;\nconst submenuBehaviors = ['cascade', 'drill-down'] as const;\n\n// Base props shared between Content and SubContent\nconst baseMenuSharedPropDefs = {\n size: {\n type: 'enum',\n className: 'rt-r-size',\n values: contentSizes,\n default: '2',\n responsive: true,\n },\n ...colorPropDef,\n} satisfies {\n size: PropDef<(typeof contentSizes)[number]>;\n};\n\n// Content-specific props (includes submenuBehavior)\nconst baseMenuContentPropDefs = {\n ...baseMenuSharedPropDefs,\n /**\n * Controls how submenus behave.\n * - `cascade`: Default cascading behavior where submenus open to the side (portal-based)\n * - `drill-down`: Mobile-friendly behavior where submenus replace the content inline\n * Supports responsive values: `{ initial: 'drill-down', md: 'cascade' }`\n */\n submenuBehavior: {\n type: 'enum',\n values: submenuBehaviors,\n default: 'cascade',\n responsive: true,\n },\n} satisfies {\n size: PropDef<(typeof contentSizes)[number]>;\n submenuBehavior: PropDef<(typeof submenuBehaviors)[number]>;\n};\n\n// SubContent props (no submenuBehavior)\nconst baseMenuSubContentPropDefs = baseMenuSharedPropDefs;\n\nconst baseMenuItemPropDefs = {\n ...asChildPropDef,\n ...colorPropDef,\n shortcut: { type: 'string' },\n} satisfies {\n shortcut: PropDef<string>;\n};\n\nconst baseMenuCheckboxItemPropDefs = {\n ...colorPropDef,\n shortcut: { type: 'string' },\n} satisfies {\n shortcut: PropDef<string>;\n};\n\nconst baseMenuRadioItemPropDefs = {\n ...colorPropDef,\n};\n\nexport {\n baseMenuContentPropDefs,\n baseMenuSubContentPropDefs,\n baseMenuItemPropDefs,\n baseMenuCheckboxItemPropDefs,\n baseMenuRadioItemPropDefs,\n submenuBehaviors,\n};\n"],
|
|
5
|
-
"mappings": "gFAKA,IAAMA,EAAe,CAAC,IAAK,GAAG,EACxBC,EAAmB,CAAC,UAAW,YAAY,EAG3CC,EAAyB,CAC7B,KAAM,CACJ,KAAM,OACN,UAAW,YACX,OAAQF,EACR,QAAS,IACT,WAAY,EACd,EACA,GAAGG,CACL,EAKMC,EAA0B,CAC9B,GAAGF,EAOH,gBAAiB,CACf,KAAM,OACN,OAAQD,EACR,QAAS,UACT,WAAY,EACd,CACF,EAMMI,EAA6BH,EAE7BI,EAAuB,CAC3B,GAAGC,EACH,GAAGJ,EACH,SAAU,CAAE,KAAM,QAAS,CAC7B,EAIMK,EAA+B,CACnC,GAAGL,EACH,SAAU,CAAE,KAAM,QAAS,CAC7B,EAIMM,EAA4B,CAChC,GAAGN,CACL",
|
|
6
|
-
"names": ["contentSizes", "submenuBehaviors", "baseMenuSharedPropDefs", "colorPropDef", "baseMenuContentPropDefs", "baseMenuSubContentPropDefs", "baseMenuItemPropDefs", "asChildPropDef", "baseMenuCheckboxItemPropDefs", "baseMenuRadioItemPropDefs"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as t}from"./chunk-G2CKYO2I.js";import{a as m}from"./chunk-AXUDFYLY.js";import{a as p}from"./chunk-KNQBAOMV.js";import{a as i}from"./chunk-FD2TR343.js";import{a as s}from"./chunk-WYADYDPN.js";import{a as f}from"./chunk-ZE2KAVXW.js";import{b as e}from"./chunk-ZWZGUBL4.js";import{a as o}from"./chunk-NZJGC6ZW.js";import{c as r}from"./chunk-34KVYDF6.js";var a=["h1","h2","h3","h4","h5","h6"],n=["0","1","2","3","4","5","6","7","8","9","10","11","12"],g={as:{type:"enum",values:a,default:"h1"},...o,size:{type:"enum",className:"rt-r-size",values:n,default:"6",responsive:!0},...m,...i,...t,...p,...f,...s,...r,...e};export{g as a};
|
|
2
|
-
//# sourceMappingURL=chunk-EVTNB4TB.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/props/weight.prop.ts"],
|
|
4
|
-
"sourcesContent": ["import type { PropDef } from './prop-def.js';\n\nconst weights = ['thin', 'extralight', 'light', 'regular', 'medium', 'semibold', 'bold', 'extrabold'] as const;\n\nconst weightPropDef = {\n weight: {\n type: 'enum',\n className: 'rt-r-weight',\n values: weights,\n responsive: true,\n },\n} satisfies {\n weight: PropDef<(typeof weights)[number]>;\n};\n\nexport { weightPropDef };\n"],
|
|
5
|
-
"mappings": "AAEA,IAAMA,EAAU,CAAC,OAAQ,aAAc,QAAS,UAAW,SAAU,WAAY,OAAQ,WAAW,EAE9FC,EAAgB,CACpB,OAAQ,CACN,KAAM,OACN,UAAW,cACX,OAAQD,EACR,WAAY,EACd,CACF",
|
|
6
|
-
"names": ["weights", "weightPropDef"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as c}from"./chunk-DIR22XIX.js";import{b as p}from"./chunk-TBZO22XK.js";import*as a from"react";import l from"classnames";var i=["xl","lg","md","sm","xs","initial"];function m(e,t,o){if(e==null)return o;if(typeof e!="object")return e;let s=e;for(let r=i.indexOf(t);r<i.length;r++){let n=s[i[r]];if(n!==void 0)return n}return o}function A(e,t){let o=typeof e=="object"&&e!==null,{breakpoint:s}=p(o);return m(e,s,t)}var d={1:8,2:12,3:12};function B(e){return-(d[e]??d[2])}var f={"\u2318":"Meta",cmd:"Meta",command:"Meta",meta:"Meta","\u2325":"Alt",option:"Alt",opt:"Alt",alt:"Alt","\u21E7":"Shift",shift:"Shift","\u2303":"Control",ctrl:"Control",control:"Control","\u232B":"Backspace","\u2326":"Delete","\u23CE":"Enter","\u21B5":"Enter","\u238B":"Escape",esc:"Escape","\u21E5":"Tab","\u2191":"ArrowUp","\u2193":"ArrowDown","\u2190":"ArrowLeft","\u2192":"ArrowRight"},u=new Map;function S(e){let t=u.get(e);if(t!==void 0)return t||void 0;let r=(e.match(/[⌘⌥⇧⌃]|[^\s+⌘⌥⇧⌃]+/gu)??[]).map(n=>f[n]??f[n.toLowerCase()]??(n.length===1?n.toUpperCase():n)).join("+");return u.set(e,r),r||void 0}function k({shortcut:e,className:t}){return a.createElement("div",{"aria-hidden":!0,className:l("rt-BaseMenuShortcut",t)},a.createElement(c,{size:"1"},e))}export{m as a,A as b,B as c,S as d,k as e};
|
|
2
|
-
//# sourceMappingURL=chunk-FTGD2SZ6.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/_internal/base-menu.utils.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client';\n\nimport * as React from 'react';\nimport classNames from 'classnames';\n\nimport { Kbd } from '../kbd.js';\nimport { useBreakpoint } from '../../hooks/use-breakpoint.js';\n\nimport type { Breakpoint, Responsive } from '../../props/prop-def.js';\n\nconst BREAKPOINTS_DESCENDING: Breakpoint[] = ['xl', 'lg', 'md', 'sm', 'xs', 'initial'];\n\n/**\n * Resolves a responsive value for the given breakpoint, falling back through\n * the smaller breakpoints when the current one is not set.\n */\nfunction resolveResponsiveValue<T>(\n value: T | Partial<Record<Breakpoint, T>> | undefined,\n currentBreakpoint: Breakpoint,\n defaultValue: T,\n): T {\n if (value === undefined || value === null) return defaultValue;\n if (typeof value !== 'object') return value;\n\n const map = value as Partial<Record<Breakpoint, T>>;\n for (let i = BREAKPOINTS_DESCENDING.indexOf(currentBreakpoint); i < BREAKPOINTS_DESCENDING.length; i++) {\n const resolved = map[BREAKPOINTS_DESCENDING[i]];\n if (resolved !== undefined) return resolved;\n }\n return defaultValue;\n}\n\n/**\n * Resolves a possibly responsive value against the current viewport. Only a\n * responsive object subscribes to breakpoint changes; a plain value costs\n * nothing.\n */\nfunction useResolvedResponsiveValue<T>(value: Responsive<T> | undefined, defaultValue: T): T {\n const isResponsive = typeof value === 'object' && value !== null;\n const { breakpoint } = useBreakpoint(isResponsive);\n return resolveResponsiveValue(value as T | Partial<Record<Breakpoint, T>> | undefined, breakpoint, defaultValue);\n}\n\n/** Content padding per menu size, in px (see base-menu.css). */\nconst CONTENT_PADDING: Record<string, number> = { '1': 8, '2': 12, '3': 12 };\n\n/**\n * Offset that lines the first item of a menu up with its anchor: the pointer\n * for a context menu, or the sub trigger for a submenu. It cancels the content\n * padding.\n */\nfunction getMenuAlignOffset(size: string): number {\n return -(CONTENT_PADDING[size] ?? CONTENT_PADDING['2']);\n}\n\nconst KEY_SYMBOLS: Record<string, string> = {\n '\u2318': 'Meta',\n cmd: 'Meta',\n command: 'Meta',\n meta: 'Meta',\n '\u2325': 'Alt',\n option: 'Alt',\n opt: 'Alt',\n alt: 'Alt',\n '\u21E7': 'Shift',\n shift: 'Shift',\n '\u2303': 'Control',\n ctrl: 'Control',\n control: 'Control',\n '\u232B': 'Backspace',\n '\u2326': 'Delete',\n '\u23CE': 'Enter',\n '\u21B5': 'Enter',\n '\u238B': 'Escape',\n esc: 'Escape',\n '\u21E5': 'Tab',\n '\u2191': 'ArrowUp',\n '\u2193': 'ArrowDown',\n '\u2190': 'ArrowLeft',\n '\u2192': 'ArrowRight',\n};\n\nconst ariaKeyShortcutsCache = new Map<string, string>();\n\n/**\n * Converts a display shortcut such as \"\u2318 \u21E7 P\" or \"Ctrl+S\" into the\n * `aria-keyshortcuts` format (\"Meta+Shift+P\", \"Control+S\").\n */\nfunction toAriaKeyShortcuts(shortcut: string): string | undefined {\n const cached = ariaKeyShortcutsCache.get(shortcut);\n if (cached !== undefined) return cached || undefined;\n\n // Modifier symbols are tokens of their own (\"\u2318\u21E7P\"); otherwise split on \"+\" and spaces.\n const tokens = shortcut.match(/[\u2318\u2325\u21E7\u2303]|[^\\s+\u2318\u2325\u21E7\u2303]+/gu) ?? [];\n const keys = tokens.map((token) => {\n const mapped = KEY_SYMBOLS[token] ?? KEY_SYMBOLS[token.toLowerCase()];\n return mapped ?? (token.length === 1 ? token.toUpperCase() : token);\n });\n const result = keys.join('+');\n ariaKeyShortcutsCache.set(shortcut, result);\n return result || undefined;\n}\n\n/**\n * The keyboard shortcut hint at the end of a menu item. It is hidden from\n * assistive technology because the item exposes it through\n * `aria-keyshortcuts` instead of reading it as part of the item name.\n */\nfunction MenuShortcut({ shortcut, className }: { shortcut: string; className?: string }) {\n return (\n <div aria-hidden className={classNames('rt-BaseMenuShortcut', className)}>\n <Kbd size=\"1\">{shortcut}</Kbd>\n </div>\n );\n}\n\nexport {\n resolveResponsiveValue,\n useResolvedResponsiveValue,\n getMenuAlignOffset,\n toAriaKeyShortcuts,\n MenuShortcut,\n};\n"],
|
|
5
|
-
"mappings": "gFAEA,UAAYA,MAAW,QACvB,OAAOC,MAAgB,aAOvB,IAAMC,EAAuC,CAAC,KAAM,KAAM,KAAM,KAAM,KAAM,SAAS,EAMrF,SAASC,EACPC,EACAC,EACAC,EACG,CACH,GAA2BF,GAAU,KAAM,OAAOE,EAClD,GAAI,OAAOF,GAAU,SAAU,OAAOA,EAEtC,IAAMG,EAAMH,EACZ,QAASI,EAAIN,EAAuB,QAAQG,CAAiB,EAAGG,EAAIN,EAAuB,OAAQM,IAAK,CACtG,IAAMC,EAAWF,EAAIL,EAAuBM,CAAC,CAAC,EAC9C,GAAIC,IAAa,OAAW,OAAOA,CACrC,CACA,OAAOH,CACT,CAOA,SAASI,EAA8BN,EAAkCE,EAAoB,CAC3F,IAAMK,EAAe,OAAOP,GAAU,UAAYA,IAAU,KACtD,CAAE,WAAAQ,CAAW,EAAIC,EAAcF,CAAY,EACjD,OAAOR,EAAuBC,EAAyDQ,EAAYN,CAAY,CACjH,CAGA,IAAMQ,EAA0C,CAAE,EAAK,EAAG,EAAK,GAAI,EAAK,EAAG,EAO3E,SAASC,EAAmBC,EAAsB,CAChD,MAAO,EAAEF,EAAgBE,CAAI,GAAKF,EAAgB,CAAG,EACvD,CAEA,IAAMG,EAAsC,CAC1C,SAAK,OACL,IAAK,OACL,QAAS,OACT,KAAM,OACN,SAAK,MACL,OAAQ,MACR,IAAK,MACL,IAAK,MACL,SAAK,QACL,MAAO,QACP,SAAK,UACL,KAAM,UACN,QAAS,UACT,SAAK,YACL,SAAK,SACL,SAAK,QACL,SAAK,QACL,SAAK,SACL,IAAK,SACL,SAAK,MACL,SAAK,UACL,SAAK,YACL,SAAK,YACL,SAAK,YACP,EAEMC,EAAwB,IAAI,IAMlC,SAASC,EAAmBC,EAAsC,CAChE,IAAMC,EAASH,EAAsB,IAAIE,CAAQ,EACjD,GAAIC,IAAW,OAAW,OAAOA,GAAU,OAQ3C,IAAMC,GALSF,EAAS,MAAM,sBAAsB,GAAK,CAAC,GACtC,IAAKG,GACRN,EAAYM,CAAK,GAAKN,EAAYM,EAAM,YAAY,CAAC,IAClDA,EAAM,SAAW,EAAIA,EAAM,YAAY,EAAIA,EAC9D,EACmB,KAAK,GAAG,EAC5B,OAAAL,EAAsB,IAAIE,EAAUE,CAAM,EACnCA,GAAU,MACnB,CAOA,SAASE,EAAa,CAAE,SAAAJ,EAAU,UAAAK,CAAU,EAA6C,CACvF,OACE,gBAAC,OAAI,cAAW,GAAC,UAAWC,EAAW,sBAAuBD,CAAS,GACrE,gBAACE,EAAA,CAAI,KAAK,KAAKP,CAAS,CAC1B,CAEJ",
|
|
6
|
-
"names": ["React", "classNames", "BREAKPOINTS_DESCENDING", "resolveResponsiveValue", "value", "currentBreakpoint", "defaultValue", "map", "i", "resolved", "useResolvedResponsiveValue", "isResponsive", "breakpoint", "useBreakpoint", "CONTENT_PADDING", "getMenuAlignOffset", "size", "KEY_SYMBOLS", "ariaKeyShortcutsCache", "toAriaKeyShortcuts", "shortcut", "cached", "result", "token", "MenuShortcut", "className", "classNames", "Kbd"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{b as i}from"./chunk-FTGD2SZ6.js";import*as e from"react";var u=e.createContext({isInsideMenu:!1}),c={1:28,2:32};function d(t){return c[t]}function M({children:t,size:r}){let n=i(r,void 0),o=n?d(n):void 0,s=e.useMemo(()=>({isInsideMenu:!0,size:n,itemHeight:o}),[n,o]);return e.createElement(u.Provider,{value:s},t)}function a(){return e.useContext(u)}export{c as a,d as b,M as c,a as d};
|
|
2
|
-
//# sourceMappingURL=chunk-G3U6OHVA.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/_internal/menu-context.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client';\n\nimport * as React from 'react';\n\nimport { useResolvedResponsiveValue } from './base-menu.utils.js';\n\nimport type { Responsive } from '../../props/prop-def.js';\n\n/**\n * Context to detect if a component is rendered inside a menu (DropdownMenu, ContextMenu, etc.)\n * Used by VirtualMenu to adjust its behavior:\n * - Skip role=\"menu\" when inside a parent menu (parent owns the role)\n * - Delegate certain keyboard handling to parent\n * - Use the correct item height based on menu size\n */\n\nexport type MenuSize = '1' | '2';\n\ninterface MenuContextValue {\n /** Whether we're inside a menu that owns the menu role */\n isInsideMenu: boolean;\n /** Menu size for the current breakpoint */\n size?: MenuSize;\n /** Item height in px for the current size and theme scaling */\n itemHeight?: number;\n}\n\nconst MenuContext = React.createContext<MenuContextValue>({ isInsideMenu: false });\n\ninterface MenuProviderProps {\n children: React.ReactNode;\n /** Menu size passed from parent (DropdownMenu.Content, ContextMenu.Content, etc.) */\n size?: Responsive<MenuSize>;\n}\n\n/** Menu item height in pixels per size: the control height ladder (--control-height-N). */\nexport const menuSizeToItemHeight: Record<MenuSize, number> = {\n '1': 28,\n '2': 32,\n};\n\nexport function getMenuItemHeight(size: MenuSize): number {\n return menuSizeToItemHeight[size];\n}\n\nexport function MenuProvider({ children, size }: MenuProviderProps) {\n const resolvedSize = useResolvedResponsiveValue<MenuSize | undefined>(size, undefined);\n const itemHeight = resolvedSize ? getMenuItemHeight(resolvedSize) : undefined;\n const value = React.useMemo(\n () => ({ isInsideMenu: true, size: resolvedSize, itemHeight }),\n [resolvedSize, itemHeight],\n );\n return <MenuContext.Provider value={value}>{children}</MenuContext.Provider>;\n}\n\nexport function useMenuContext() {\n return React.useContext(MenuContext);\n}\n"],
|
|
5
|
-
"mappings": "wCAEA,UAAYA,MAAW,QAyBvB,IAAMC,EAAoB,gBAAgC,CAAE,aAAc,EAAM,CAAC,EASpEC,EAAiD,CAC5D,EAAK,GACL,EAAK,EACP,EAEO,SAASC,EAAkBC,EAAwB,CACxD,OAAOF,EAAqBE,CAAI,CAClC,CAEO,SAASC,EAAa,CAAE,SAAAC,EAAU,KAAAF,CAAK,EAAsB,CAClE,IAAMG,EAAeC,EAAiDJ,EAAM,MAAS,EAC/EK,EAAaF,EAAeJ,EAAkBI,CAAY,EAAI,OAC9DG,EAAc,UAClB,KAAO,CAAE,aAAc,GAAM,KAAMH,EAAc,WAAAE,CAAW,GAC5D,CAACF,EAAcE,CAAU,CAC3B,EACA,OAAO,gBAACR,EAAY,SAAZ,CAAqB,MAAOS,GAAQJ,CAAS,CACvD,CAEO,SAASK,GAAiB,CAC/B,OAAa,aAAWV,CAAW,CACrC",
|
|
6
|
-
"names": ["React", "MenuContext", "menuSizeToItemHeight", "getMenuItemHeight", "size", "MenuProvider", "children", "resolvedSize", "useResolvedResponsiveValue", "itemHeight", "value", "useMenuContext"]
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/virtual-menu.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client';\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { useVirtualizer } from '@tanstack/react-virtual';\nimport { useMenuContext, getMenuItemHeight } from './_internal/menu-context.js';\n\n/**\n * VirtualMenu - A virtualized menu component for rendering large lists efficiently.\n *\n * Uses TanStack Virtual to render only visible items.\n * Works inside any container (DropdownMenu.Content, Popover.Content, etc.)\n *\n * @example\n * // Simple usage with itemLabel\n * <VirtualMenu\n * items={items}\n * itemLabel={(item) => item.name}\n * onSelect={handleSelect}\n * />\n *\n * @example\n * // Custom rendering with renderItem\n * const UserItem = React.memo(({ item, ...props }) => (\n * <VirtualMenu.Item {...props}>\n * <Avatar src={item.avatar} />\n * {item.name}\n * </VirtualMenu.Item>\n * ));\n *\n * <VirtualMenu items={users} renderItem={UserItem} onSelect={handleSelect} />\n */\n\n// ============================================================================\n// Types\n// ============================================================================\n\n/** Props passed to custom renderItem components */\ninterface VirtualMenuRenderItemProps<T> {\n /** The item data */\n item: T;\n /** Index in the items array */\n index: number;\n /** Whether this item is currently highlighted */\n isHighlighted: boolean;\n /** Unique ID for accessibility */\n id: string;\n /** Positioning styles - must be applied */\n style: React.CSSProperties;\n /** Tab index for focus management */\n tabIndex: number;\n /** Data attribute for CSS styling */\n 'data-highlighted': true | undefined;\n /** Data attribute for event delegation */\n 'data-index': number;\n /** Mouse enter handler */\n onMouseEnter: (e: React.MouseEvent<HTMLElement>) => void;\n /** Mouse leave handler */\n onMouseLeave: () => void;\n /** Click handler */\n onClick: (e: React.MouseEvent<HTMLElement>) => void;\n /** Keyboard handler for Enter/Space activation */\n onKeyDown: (e: React.KeyboardEvent<HTMLElement>) => void;\n}\n\ninterface VirtualMenuProps<T> {\n /** Array of items to render */\n items: T[];\n /**\n * Simple label accessor for basic text items.\n * Can be a property key or a function.\n * @example\n * itemLabel=\"name\"\n * itemLabel={(item) => item.name}\n */\n itemLabel?: keyof T | ((item: T) => React.ReactNode);\n /**\n * Custom component for rendering items.\n * Must be memoized (React.memo) for optimal performance.\n * @example\n * const MyItem = React.memo(({ item, ...props }) => (\n * <VirtualMenu.Item {...props}>{item.name}</VirtualMenu.Item>\n * ));\n * <VirtualMenu items={items} renderItem={MyItem} />\n */\n renderItem?: React.ComponentType<VirtualMenuRenderItemProps<T>>;\n /**\n * Menu size - controls item height.\n * Automatically inherited from parent DropdownMenu.Content/ContextMenu.Content.\n * Only set manually when using VirtualMenu outside of a menu context.\n * @default '2' (or inherited from context)\n */\n size?: '1' | '2';\n /**\n * Estimated height of each item in pixels.\n * Can be a number (same for all) or a function (per-item).\n * Usually not needed - height is automatically derived from size prop/context.\n * Use this only for custom item heights (e.g., variable height items).\n */\n estimatedItemSize?: number | ((index: number) => number);\n /** Number of items to render outside visible area */\n overscan?: number;\n /** Callback when an item is selected */\n onSelect?: (item: T, index: number) => void;\n /** Additional class name */\n className?: string;\n /** Additional styles */\n style?: React.CSSProperties;\n /** Accessible label for the menu */\n 'aria-label'?: string;\n}\n\n// ============================================================================\n// Internal Memoized Item Component\n// ============================================================================\n\ninterface SimpleItemProps {\n label: React.ReactNode;\n isHighlighted: boolean;\n id: string;\n style: React.CSSProperties;\n tabIndex: number;\n 'data-highlighted': true | undefined;\n 'data-index': number;\n onMouseEnter: (e: React.MouseEvent<HTMLElement>) => void;\n onMouseLeave: () => void;\n onClick: (e: React.MouseEvent<HTMLElement>) => void;\n onKeyDown: (e: React.KeyboardEvent<HTMLElement>) => void;\n}\n\nconst SimpleItem = React.memo(\n function SimpleItem({\n label,\n isHighlighted: _isHighlighted,\n id,\n style,\n tabIndex,\n 'data-highlighted': dataHighlighted,\n 'data-index': dataIndex,\n onMouseEnter,\n onMouseLeave,\n onClick,\n onKeyDown,\n }: SimpleItemProps) {\n return (\n <div\n id={id}\n role=\"menuitem\"\n className={classNames('rt-reset', 'rt-BaseMenuItem', 'rt-VirtualMenuItem')}\n style={style}\n tabIndex={tabIndex}\n data-highlighted={dataHighlighted}\n data-index={dataIndex}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n onClick={onClick}\n onKeyDown={onKeyDown}\n >\n {label}\n </div>\n );\n },\n (prev, next) => {\n // Custom comparison - only re-render if these change\n if (prev.label !== next.label) return false;\n if (prev['data-highlighted'] !== next['data-highlighted']) return false;\n if (prev.style.height !== next.style.height) return false;\n if (prev.style.transform !== next.style.transform) return false;\n if (prev.tabIndex !== next.tabIndex) return false;\n if (prev.id !== next.id) return false;\n // Event handlers are stable, skip comparison\n return true;\n },\n);\n\n// ============================================================================\n// VirtualMenu Component\n// ============================================================================\n\nfunction VirtualMenuRoot<T>({\n items,\n itemLabel,\n renderItem: RenderItem,\n size: sizeProp,\n estimatedItemSize: estimatedItemSizeProp,\n overscan = 5,\n onSelect,\n className,\n style,\n 'aria-label': ariaLabel,\n}: VirtualMenuProps<T>) {\n const menuId = React.useId();\n const parentRef = React.useRef<HTMLDivElement>(null);\n const [highlightedIndex, setHighlightedIndex] = React.useState<number>(-1);\n const { isInsideMenu, size: contextSize, itemHeight: contextItemHeight } = useMenuContext();\n\n // Resolve item height: explicit prop > own size > parent menu > default size '2'.\n // Heights follow the theme scaling, like the --base-menu-item-height token.\n const estimatedItemSize =\n estimatedItemSizeProp ??\n (sizeProp\n ? getMenuItemHeight(sizeProp)\n : (contextItemHeight ?? getMenuItemHeight(contextSize ?? '2')));\n\n // Validate props\n if (!itemLabel && !RenderItem) {\n throw new Error('VirtualMenu requires either itemLabel or renderItem prop');\n }\n\n // Normalize itemLabel to a function\n const getLabel = React.useMemo(() => {\n if (!itemLabel) return null;\n if (typeof itemLabel === 'function') return itemLabel;\n return (item: T) => item[itemLabel] as React.ReactNode;\n }, [itemLabel]);\n\n // Derive safe highlighted index\n const safeHighlightedIndex = React.useMemo(() => {\n if (items.length === 0) return -1;\n if (highlightedIndex < 0) return -1;\n return Math.min(highlightedIndex, items.length - 1);\n }, [highlightedIndex, items.length]);\n\n // Normalize estimatedItemSize to a function\n const getItemSize = React.useMemo(\n () =>\n typeof estimatedItemSize === 'function'\n ? estimatedItemSize\n : () => estimatedItemSize,\n [estimatedItemSize],\n );\n\n const virtualizer = useVirtualizer({\n count: items.length,\n getScrollElement: () => parentRef.current,\n estimateSize: getItemSize,\n overscan,\n });\n\n const virtualItems = virtualizer.getVirtualItems();\n\n // Refs for stable handler references\n const itemsRef = React.useRef(items);\n const onSelectRef = React.useRef(onSelect);\n itemsRef.current = items;\n onSelectRef.current = onSelect;\n\n const scrollToIndexRef = React.useRef(virtualizer.scrollToIndex);\n scrollToIndexRef.current = virtualizer.scrollToIndex;\n\n const highlightedIndexRef = React.useRef(safeHighlightedIndex);\n highlightedIndexRef.current = safeHighlightedIndex;\n\n // Stable event handlers\n const handleItemMouseEnter = React.useCallback((e: React.MouseEvent<HTMLElement>) => {\n const index = e.currentTarget.dataset.index;\n if (index != null) {\n setHighlightedIndex(Number(index));\n }\n }, []);\n\n const handleItemClick = React.useCallback((e: React.MouseEvent<HTMLElement>) => {\n const index = e.currentTarget.dataset.index;\n if (index != null) {\n const idx = Number(index);\n const currentItems = itemsRef.current;\n if (idx >= 0 && idx < currentItems.length) {\n onSelectRef.current?.(currentItems[idx], idx);\n }\n }\n }, []);\n\n const noop = React.useCallback(() => {}, []);\n\n // Item-level keyboard handler for Enter/Space activation (satisfies a11y lint rule)\n const handleItemKeyDown = React.useCallback((e: React.KeyboardEvent<HTMLElement>) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n const index = e.currentTarget.dataset.index;\n if (index != null) {\n const idx = Number(index);\n const currentItems = itemsRef.current;\n if (idx >= 0 && idx < currentItems.length) {\n onSelectRef.current?.(currentItems[idx], idx);\n }\n }\n }\n }, []);\n\n // Keyboard navigation\n const handleKeyDown = React.useCallback((e: React.KeyboardEvent) => {\n const currentItems = itemsRef.current;\n const currentHighlightedIndex = highlightedIndexRef.current;\n\n switch (e.key) {\n case 'ArrowDown': {\n e.preventDefault();\n const nextIndex =\n currentHighlightedIndex < currentItems.length - 1 ? currentHighlightedIndex + 1 : 0;\n setHighlightedIndex(nextIndex);\n scrollToIndexRef.current(nextIndex, { align: 'auto' });\n break;\n }\n case 'ArrowUp': {\n e.preventDefault();\n const prevIndex =\n currentHighlightedIndex > 0 ? currentHighlightedIndex - 1 : currentItems.length - 1;\n setHighlightedIndex(prevIndex);\n scrollToIndexRef.current(prevIndex, { align: 'auto' });\n break;\n }\n case 'Home': {\n e.preventDefault();\n setHighlightedIndex(0);\n scrollToIndexRef.current(0, { align: 'start' });\n break;\n }\n case 'End': {\n e.preventDefault();\n const lastIndex = currentItems.length - 1;\n setHighlightedIndex(lastIndex);\n scrollToIndexRef.current(lastIndex, { align: 'end' });\n break;\n }\n case 'Enter':\n case ' ': {\n e.preventDefault();\n if (currentHighlightedIndex >= 0 && currentHighlightedIndex < currentItems.length) {\n onSelectRef.current?.(currentItems[currentHighlightedIndex], currentHighlightedIndex);\n }\n break;\n }\n case 'Tab': {\n e.preventDefault();\n break;\n }\n case 'Escape': {\n (e.currentTarget as HTMLElement).blur();\n break;\n }\n }\n }, []);\n\n // Item ID generator\n const getItemId = React.useCallback(\n (index: number) => `${menuId}-item-${index}`,\n [menuId],\n );\n\n // Memoize styles\n const rootStyle = React.useMemo(\n () => ({\n overflow: 'auto' as const,\n position: 'relative' as const,\n ...style,\n }),\n [style],\n );\n\n const totalSize = virtualizer.getTotalSize();\n const viewportStyle = React.useMemo(\n () => ({\n height: `${totalSize}px`,\n width: '100%' as const,\n position: 'relative' as const,\n }),\n [totalSize],\n );\n\n return (\n <div\n ref={parentRef}\n role={isInsideMenu ? 'group' : 'menu'}\n aria-label={ariaLabel}\n aria-activedescendant={safeHighlightedIndex >= 0 ? getItemId(safeHighlightedIndex) : undefined}\n tabIndex={0}\n onKeyDown={handleKeyDown}\n className={classNames('rt-VirtualMenuRoot', className)}\n style={rootStyle}\n >\n <div className=\"rt-VirtualMenuViewport\" style={viewportStyle}>\n {virtualItems.map((virtualRow) => {\n const item = items[virtualRow.index];\n const index = virtualRow.index;\n const isHighlighted = safeHighlightedIndex === index;\n\n const itemStyle: React.CSSProperties = {\n height: virtualRow.size,\n transform: `translateY(${virtualRow.start}px)`,\n };\n\n const commonProps = {\n id: getItemId(index),\n isHighlighted,\n style: itemStyle,\n tabIndex: isHighlighted ? 0 : -1,\n 'data-highlighted': isHighlighted ? true as const : undefined,\n 'data-index': index,\n onMouseEnter: handleItemMouseEnter,\n onMouseLeave: noop,\n onClick: handleItemClick,\n onKeyDown: handleItemKeyDown,\n };\n\n // Use renderItem if provided, otherwise use SimpleItem with itemLabel\n if (RenderItem) {\n return (\n <RenderItem\n key={virtualRow.key}\n item={item}\n index={index}\n {...commonProps}\n />\n );\n }\n\n return (\n <SimpleItem\n key={virtualRow.key}\n label={getLabel!(item)}\n {...commonProps}\n />\n );\n })}\n </div>\n </div>\n );\n}\n\nVirtualMenuRoot.displayName = 'VirtualMenu';\n\n// ============================================================================\n// VirtualMenu.Item Component (for custom renderItem usage)\n// ============================================================================\n\ninterface VirtualMenuItemProps extends React.ComponentPropsWithoutRef<'div'> {\n children: React.ReactNode;\n /** Data attribute for highlight styling */\n 'data-highlighted'?: true | undefined;\n /** Data attribute for event delegation */\n 'data-index'?: number;\n}\n\nconst VirtualMenuItemInner = React.forwardRef<HTMLDivElement, VirtualMenuItemProps>(\n ({ className, children, ...props }, forwardedRef) => {\n return (\n <div\n ref={forwardedRef}\n role=\"menuitem\"\n className={classNames('rt-reset', 'rt-BaseMenuItem', 'rt-VirtualMenuItem', className)}\n {...props}\n >\n {children}\n </div>\n );\n },\n);\n\nVirtualMenuItemInner.displayName = 'VirtualMenu.Item';\n\n// Memoized with custom comparison\nconst VirtualMenuItem = React.memo(VirtualMenuItemInner, (prevProps, nextProps) => {\n const prevStyle = prevProps.style as React.CSSProperties | undefined;\n const nextStyle = nextProps.style as React.CSSProperties | undefined;\n if (prevStyle?.height !== nextStyle?.height) return false;\n if (prevStyle?.transform !== nextStyle?.transform) return false;\n if (prevProps['data-highlighted'] !== nextProps['data-highlighted']) return false;\n if (prevProps.tabIndex !== nextProps.tabIndex) return false;\n if (prevProps.id !== nextProps.id) return false;\n if (prevProps.className !== nextProps.className) return false;\n if (prevProps.children !== nextProps.children) return false;\n return true;\n});\n\n// ============================================================================\n// Exports\n// ============================================================================\n\nconst VirtualMenu = Object.assign(VirtualMenuRoot, {\n Item: VirtualMenuItem,\n});\n\nexport { VirtualMenu };\nexport type { VirtualMenuProps, VirtualMenuItemProps, VirtualMenuRenderItemProps };\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["React", "classNames", "useVirtualizer", "SimpleItem", "label", "_isHighlighted", "id", "style", "tabIndex", "dataHighlighted", "dataIndex", "onMouseEnter", "onMouseLeave", "onClick", "onKeyDown", "classNames", "prev", "next", "VirtualMenuRoot", "items", "itemLabel", "RenderItem", "sizeProp", "estimatedItemSizeProp", "overscan", "onSelect", "className", "ariaLabel", "menuId", "parentRef", "highlightedIndex", "setHighlightedIndex", "isInsideMenu", "contextSize", "contextItemHeight", "useMenuContext", "estimatedItemSize", "getMenuItemHeight", "getLabel", "item", "safeHighlightedIndex", "getItemSize", "virtualizer", "useVirtualizer", "virtualItems", "itemsRef", "onSelectRef", "scrollToIndexRef", "highlightedIndexRef", "handleItemMouseEnter", "e", "index", "handleItemClick", "idx", "currentItems", "noop", "handleItemKeyDown", "handleKeyDown", "currentHighlightedIndex", "nextIndex", "prevIndex", "lastIndex", "getItemId", "rootStyle", "totalSize", "viewportStyle", "virtualRow", "isHighlighted", "itemStyle", "commonProps", "VirtualMenuItemInner", "children", "props", "forwardedRef", "VirtualMenuItem", "prevProps", "nextProps", "prevStyle", "nextStyle", "VirtualMenu"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as s}from"./chunk-G2CKYO2I.js";import{a as m}from"./chunk-AXUDFYLY.js";import{a as p}from"./chunk-KNQBAOMV.js";import{a as i}from"./chunk-FD2TR343.js";import{a as t}from"./chunk-WYADYDPN.js";import{a as f}from"./chunk-ZE2KAVXW.js";import{b as e}from"./chunk-ZWZGUBL4.js";import{a as o}from"./chunk-NZJGC6ZW.js";import{c as r}from"./chunk-34KVYDF6.js";var a=["span","div","label","p"],n=["0","1","2","3","4","5","6","7","8","9","10","11","12"],x={as:{type:"enum",values:a,default:"span"},...o,size:{type:"enum",className:"rt-r-size",values:n,responsive:!0},...m,...i,...s,...p,...f,...t,...r,...e};export{x as a};
|
|
2
|
-
//# sourceMappingURL=chunk-PDBVZAUJ.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as U}from"./chunk-OMYAVTX6.js";import{a as K,b as F,c as j,e as E,f as O}from"./chunk-GYB7PAGB.js";import{a as z,b as H,c as W}from"./chunk-UFJJTUOU.js";import{d as G}from"./chunk-IX5HIHVI.js";import{a as w}from"./chunk-2XQECQF2.js";import{b as P}from"./chunk-6RZVKCNG.js";import{b as x}from"./chunk-FWB47YCH.js";import{a as D}from"./chunk-DIR22XIX.js";import{a as ae}from"./chunk-OS3FCYZY.js";var oe={};ae(oe,{Group:()=>_,GroupContent:()=>re,GroupLabel:()=>ee,Menu:()=>$,MenuButton:()=>J,MenuItem:()=>X,MenuSub:()=>Q,MenuSubContent:()=>Z,MenuSubTrigger:()=>Y,Search:()=>te,Separator:()=>V});import*as e from"react";import u from"classnames";import*as f from"@radix-ui/react-accordion";var V=e.forwardRef(({className:r,...t},n)=>e.createElement(U,{...t,ref:n,className:u("rt-SidebarSeparator",r)}));V.displayName="Sidebar.Separator";var $=e.forwardRef(({className:r,...t},n)=>e.createElement("ul",{...t,ref:n,className:u("rt-SidebarMenu",r)}));$.displayName="Sidebar.Menu";var X=e.forwardRef(({className:r,...t},n)=>e.createElement("li",{...t,ref:n,className:u("rt-SidebarMenuItem",r)}));X.displayName="Sidebar.MenuItem";function ne(r){let t=[],n=[];return e.Children.forEach(r,a=>{if(typeof a=="string"||typeof a=="number")n.push(e.createElement("span",{key:n.length,className:"rt-SidebarMenuLabel"},a));else if(e.isValidElement(a)){let i=a;i.type==="svg"||i.props&&i.props.icon||typeof i.type=="function"&&(i.type.displayName?.includes("Icon")||i.type.name?.includes("Icon"))?t.push(a):n.push(a)}else a&&n.push(a)}),{icons:t,labels:n}}function k(r){if(typeof r=="string"||typeof r=="number")return e.createElement("span",{className:"rt-SidebarMenuLabel"},r);if(Array.isArray(r))return r.map((t,n)=>e.createElement(e.Fragment,{key:n},k(t)));if(e.isValidElement(r)){let t=r,n=t.props&&t.props.className||"";if(typeof t.type=="string"&&n.split(" ").includes("rt-SidebarMenuLabel"))return t;let i=k(t.props?.children);return e.cloneElement(t,{...t.props},i)}return r}var J=e.forwardRef(({asChild:r=!1,isActive:t=!1,shortcut:n,badge:a,className:i,children:l,onKeyDown:m,...M},C)=>{let s=P(),c=s?.size??"2",p=s?.presentation==="thin",v=r?x:"button",I=e.useCallback(o=>{if(o.key==="ArrowDown"||o.key==="ArrowUp"){let b=o.currentTarget.closest(".rt-SidebarContent, .rt-SidebarSearchPopover"),y=b?Array.from(b.querySelectorAll(".rt-SidebarMenuButton")).filter(h=>h.offsetParent!==null):[],d=y.indexOf(o.currentTarget),N=y[d+(o.key==="ArrowDown"?1:-1)];d!==-1&&N&&(o.preventDefault(),N.focus())}m?.(o)},[m]),S=e.useMemo(()=>k(l),[l]),{icons:R,labels:B}=e.useMemo(()=>p?ne(l):{icons:[],labels:[]},[p,l]),L=e.useMemo(()=>{if(!r)return null;try{let o=e.Children.only(S),b=o.props?.children,y=e.createElement(e.Fragment,null,b,a&&e.createElement("div",{className:"rt-SidebarMenuBadge"},typeof a=="string"?e.createElement(w,{size:c,variant:"soft"},a):e.createElement(w,{size:a.size||c,variant:a.variant||"soft",color:a.color,radius:a.radius},a.content)),n&&e.createElement("div",{className:"rt-BaseMenuShortcut rt-SidebarMenuShortcut"},e.createElement(D,{size:c},n)));return e.cloneElement(o,{...o.props},y)}catch{return S}},[r,S,a,n,c]);return e.createElement(v,{...M,ref:C,"aria-current":t?"page":void 0,className:u("rt-reset","rt-BaseMenuItem","rt-SidebarMenuButton",i),"data-active":t||void 0,onKeyDown:I},r?L:p&&R.length>0?e.createElement(e.Fragment,null,e.createElement("span",{className:"rt-SidebarMenuIconWrapper"},R),B.map((o,b)=>e.createElement(e.Fragment,{key:b},typeof o=="string"||typeof o=="number"?e.createElement("span",{className:"rt-SidebarMenuLabel"},o):o))):e.createElement(e.Fragment,null,S,a&&e.createElement("div",{className:"rt-SidebarMenuBadge"},typeof a=="string"?e.createElement(w,{size:c,variant:"soft"},a):e.createElement(w,{size:a.size||c,variant:a.variant||"soft",color:a.color,radius:a.radius},a.content)),n&&e.createElement("div",{className:"rt-BaseMenuShortcut rt-SidebarMenuShortcut"},e.createElement(D,{size:c},n))))});J.displayName="Sidebar.MenuButton";var T=e.createContext("accordion"),Q=e.forwardRef(({defaultOpen:r=!1,children:t,...n},a)=>(P()?.presentation==="thin"?"dropdown":"accordion")==="dropdown"?e.createElement("div",{...n,ref:a},e.createElement(K,null,e.createElement(T.Provider,{value:"dropdown"},t))):e.createElement("div",{...n,ref:a},e.createElement(T.Provider,{value:"accordion"},e.createElement(f.Root,{type:"single",collapsible:!0,defaultValue:r?"item":void 0},e.createElement(f.Item,{value:"item"},t)))));Q.displayName="Sidebar.MenuSub";var Y=e.forwardRef(({asChild:r=!1,className:t,children:n,...a},i)=>e.useContext(T)==="dropdown"?e.createElement(F,null,e.createElement("button",{...a,ref:i,type:"button","aria-haspopup":"menu",className:u("rt-reset","rt-BaseMenuItem","rt-SidebarMenuButton","rt-SidebarMenuSubTrigger",t)},n)):e.createElement(f.Header,{asChild:!0},e.createElement("div",null,e.createElement(f.Trigger,{...a,ref:i,asChild:r,className:u("rt-reset","rt-BaseMenuItem","rt-SidebarMenuButton","rt-SidebarMenuSubTrigger",t)},r?n:e.createElement(e.Fragment,null,n,e.createElement(G,{className:u("rt-BaseMenuSubTriggerIcon","rt-SidebarMenuSubTriggerIcon")}))))));Y.displayName="Sidebar.MenuSubTrigger";var Z=e.forwardRef(({className:r,children:t,...n},a)=>{let i=P();if(e.useContext(T)==="dropdown"){let m=s=>{if(Array.isArray(s))return s.map((c,p)=>e.createElement(e.Fragment,{key:p},m(c)));if(e.isValidElement(s)){if(s.type?.displayName==="Sidebar.MenuButton")return s.props?.children;let p=s.props?.children;if(p!==void 0)return e.cloneElement(s,{...s.props,children:m(p)})}return s},M=e.Children.map(t,(s,c)=>{if(e.isValidElement(s)&&s.type?.displayName==="Sidebar.MenuItem"){let p=s.props?.children,v=m(p);return e.createElement(E,{key:c,asChild:!0},v)}return e.createElement(E,{key:c,asChild:!0},m(s))}),C=i?.size==="3"?"2":i?.size;return e.createElement(j,{size:C,className:u(r)},e.createElement(O,null,M))}return e.createElement(f.Content,{...n,ref:a,className:u("rt-SidebarMenuSubContent",r)},e.createElement("div",{className:"rt-SidebarMenuSubList"},t))});Z.displayName="Sidebar.MenuSubContent";var _=e.forwardRef(({className:r,...t},n)=>e.createElement("div",{...t,ref:n,className:u("rt-BaseMenuGroup","rt-SidebarGroup",r)}));_.displayName="Sidebar.Group";var ee=e.forwardRef(({asChild:r=!1,className:t,...n},a)=>e.createElement(r?x:"div",{...n,ref:a,className:u("rt-BaseMenuLabel","rt-SidebarGroupLabel",t)}));ee.displayName="Sidebar.GroupLabel";var re=e.forwardRef(({className:r,...t},n)=>e.createElement("div",{...t,ref:n,className:u("rt-SidebarGroupContent",r)}));re.displayName="Sidebar.GroupContent";var A=({className:r})=>e.createElement("svg",{className:r,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true"},e.createElement("circle",{cx:"11",cy:"11",r:"8"}),e.createElement("line",{x1:"21",y1:"21",x2:"16.65",y2:"16.65"})),q=({className:r})=>e.createElement("svg",{className:r,width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true"},e.createElement("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),e.createElement("line",{x1:"6",y1:"6",x2:"18",y2:"18"})),te=e.forwardRef(({value:r,onValueChange:t,placeholder:n="Search...",children:a,className:i,...l},m)=>{let M=P(),C=M?.presentation==="thin",s=e.useRef(null),c=e.useRef(null),v=`${e.useId()}-results`,I=e.useRef(r);I.current=r;let S=e.useRef(t);S.current=t;let R=n.replace(/\.+$/,""),B=e.useCallback(o=>{o.key==="Escape"&&I.current&&(o.preventDefault(),o.stopPropagation(),S.current(""),s.current?.focus())},[]),L=e.useCallback(o=>{let b=c.current;if(!b)return;let y=b.querySelector('[role="group"]');if(!y)return;let d=Array.from(y.querySelectorAll("a, button"));if(d.length===0)return;let N=document.activeElement,h=N===s.current,g=d.indexOf(N);if(o.key.length===1&&!o.ctrlKey&&!o.metaKey&&!o.altKey&&!h&&g!==-1){s.current?.focus();return}switch(o.key){case"ArrowDown":{o.preventDefault(),h||g===-1?d[0]?.focus():g<d.length-1&&d[g+1]?.focus();break}case"ArrowUp":{o.preventDefault(),g<=0?s.current?.focus():d[g-1]?.focus();break}case"Home":{h||(o.preventDefault(),d[0]?.focus());break}case"End":{h||(o.preventDefault(),d[d.length-1]?.focus());break}}},[]);return C?e.createElement("div",{...l,ref:m,className:u("rt-SidebarSearch","rt-SidebarSearch--thin",i)},e.createElement(z,null,e.createElement(H,null,e.createElement("button",{type:"button",className:u("rt-reset","rt-BaseMenuItem","rt-SidebarMenuButton","rt-SidebarSearchTrigger"),"aria-label":R},e.createElement("span",{className:"rt-SidebarMenuIconWrapper"},e.createElement(A,null)),e.createElement("span",{className:"rt-SidebarMenuLabel"},"Search"))),e.createElement(W,{side:"right",align:"start",size:"2",width:"280px","aria-label":R},e.createElement("div",{ref:c,className:"rt-SidebarSearchPopover",role:"search",onKeyDown:L},e.createElement("div",{className:"rt-SidebarSearchInputWrapper"},e.createElement(A,{className:"rt-SidebarSearchIcon"}),e.createElement("input",{ref:s,type:"search",className:"rt-SidebarSearchInput",value:r,onChange:o=>t(o.target.value),onKeyDown:B,placeholder:n,"aria-label":R,"aria-controls":a?v:void 0,autoFocus:!0}),r&&e.createElement("button",{type:"button",className:"rt-reset rt-SidebarSearchClear",onClick:()=>{t(""),s.current?.focus()},"aria-label":"Clear search"},e.createElement(q,null))),a&&e.createElement("div",{id:v,role:"group","aria-label":"Search results"},a))))):e.createElement("div",{...l,ref:m,className:u("rt-SidebarSearch","rt-SidebarSearch--expanded","rt-ShellPaneChrome",`rt-r-size-${M?.size??"2"}`,i),role:"search"},e.createElement("div",{className:"rt-SidebarSearchInputWrapper"},e.createElement(A,{className:"rt-SidebarSearchIcon"}),e.createElement("input",{ref:s,type:"search",className:"rt-SidebarSearchInput",value:r,onChange:o=>t(o.target.value),onKeyDown:B,placeholder:n,"aria-label":R}),r&&e.createElement("button",{type:"button",className:"rt-reset rt-SidebarSearchClear",onClick:()=>{t(""),s.current?.focus()},"aria-label":"Clear search"},e.createElement(q,null))))});te.displayName="Sidebar.Search";export{V as a,$ as b,X as c,J as d,Q as e,Y as f,Z as g,_ as h,ee as i,re as j,te as k,oe as l};
|
|
2
|
-
//# sourceMappingURL=chunk-UUV5UNYL.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as p}from"./chunk-FD2TR343.js";import{a as t}from"./chunk-WYADYDPN.js";import{a as s}from"./chunk-ZE2KAVXW.js";import{b as e}from"./chunk-ZWZGUBL4.js";import{a as o}from"./chunk-NZJGC6ZW.js";import{e as r}from"./chunk-34KVYDF6.js";var a=["0","1","2","3","4","5","6","7","8","9","10","11","12"],i=["solid","soft","outline","ghost"],P={...o,size:{type:"enum",className:"rt-r-size",values:a,responsive:!0},variant:{type:"enum",className:"rt-variant",values:i,default:"soft"},...p,...r,...e,...s,...t};export{P as a};
|
|
2
|
-
//# sourceMappingURL=chunk-ZMFZYXLB.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/code.props.tsx"],
|
|
4
|
-
"sourcesContent": ["import { asChildPropDef } from '../props/as-child.prop.js';\nimport { grayAccentColorPropDef } from '../props/color.prop.js';\nimport { emphasisPropDef } from '../props/emphasis.prop.js';\nimport { textWrapPropDef } from '../props/text-wrap.prop.js';\nimport { truncatePropDef } from '../props/truncate.prop.js';\nimport { weightPropDef } from '../props/weight.prop.js';\n\nimport type { PropDef } from '../props/prop-def.js';\n\nconst sizes = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12'] as const;\nconst variants = ['solid', 'soft', 'outline', 'ghost'] as const;\n\nconst codePropDefs = {\n ...asChildPropDef,\n size: {\n type: 'enum',\n className: 'rt-r-size',\n values: sizes,\n responsive: true,\n },\n variant: { type: 'enum', className: 'rt-variant', values: variants, default: 'soft' },\n ...weightPropDef,\n ...grayAccentColorPropDef,\n ...emphasisPropDef,\n ...truncatePropDef,\n ...textWrapPropDef,\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n variant: PropDef<(typeof variants)[number]>;\n};\n\nexport { codePropDefs };\n"],
|
|
5
|
-
"mappings": "gPASA,IAAMA,EAAQ,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,KAAM,IAAI,EAC3EC,EAAW,CAAC,QAAS,OAAQ,UAAW,OAAO,EAE/CC,EAAe,CACnB,GAAGC,EACH,KAAM,CACJ,KAAM,OACN,UAAW,YACX,OAAQH,EACR,WAAY,EACd,EACA,QAAS,CAAE,KAAM,OAAQ,UAAW,aAAc,OAAQC,EAAU,QAAS,MAAO,EACpF,GAAGG,EACH,GAAGC,EACH,GAAGC,EACH,GAAGC,EACH,GAAGC,CACL",
|
|
6
|
-
"names": ["sizes", "variants", "codePropDefs", "asChildPropDef", "weightPropDef", "grayAccentColorPropDef", "emphasisPropDef", "truncatePropDef", "textWrapPropDef"]
|
|
7
|
-
}
|
|
File without changes
|
|
File without changes
|