@womp/kookie-ui 0.35.7 → 0.37.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/components.css +12 -20
- 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.js +1 -1
- package/dist/cjs/components/_internal/menu-context.js.map +2 -2
- package/dist/cjs/components/_internal/pane-chrome.js +1 -1
- package/dist/cjs/components/_internal/pane-chrome.js.map +2 -2
- package/dist/cjs/components/_internal/shell-bottom.d.ts +3 -3
- package/dist/cjs/components/_internal/shell-bottom.d.ts.map +1 -1
- package/dist/cjs/components/_internal/shell-bottom.js +1 -1
- package/dist/cjs/components/_internal/shell-bottom.js.map +3 -3
- package/dist/cjs/components/_internal/shell-handles.d.ts.map +1 -1
- package/dist/cjs/components/_internal/shell-handles.js +1 -1
- package/dist/cjs/components/_internal/shell-handles.js.map +3 -3
- package/dist/cjs/components/_internal/shell-inspector.d.ts +3 -3
- package/dist/cjs/components/_internal/shell-inspector.d.ts.map +1 -1
- package/dist/cjs/components/_internal/shell-inspector.js +1 -1
- package/dist/cjs/components/_internal/shell-inspector.js.map +3 -3
- package/dist/cjs/components/_internal/shell-pane.d.ts +2 -7
- package/dist/cjs/components/_internal/shell-pane.d.ts.map +1 -1
- package/dist/cjs/components/_internal/shell-pane.js +1 -1
- package/dist/cjs/components/_internal/shell-pane.js.map +3 -3
- package/dist/cjs/components/_internal/shell-resizable.d.ts +3 -9
- package/dist/cjs/components/_internal/shell-resizable.d.ts.map +1 -1
- package/dist/cjs/components/_internal/shell-resizable.js +1 -1
- package/dist/cjs/components/_internal/shell-resizable.js.map +3 -3
- package/dist/cjs/components/_internal/shell-resize.d.ts +0 -4
- package/dist/cjs/components/_internal/shell-resize.d.ts.map +1 -1
- package/dist/cjs/components/_internal/shell-resize.js +1 -1
- package/dist/cjs/components/_internal/shell-resize.js.map +2 -2
- package/dist/cjs/components/_internal/shell-rest.d.ts +1 -6
- package/dist/cjs/components/_internal/shell-rest.d.ts.map +1 -1
- package/dist/cjs/components/_internal/shell-rest.js +1 -1
- package/dist/cjs/components/_internal/shell-rest.js.map +3 -3
- package/dist/cjs/components/_internal/shell-sidebar.d.ts +3 -3
- package/dist/cjs/components/_internal/shell-sidebar.d.ts.map +1 -1
- package/dist/cjs/components/_internal/shell-sidebar.js +1 -1
- package/dist/cjs/components/_internal/shell-sidebar.js.map +3 -3
- package/dist/cjs/components/_internal/shell-store.d.ts +0 -10
- package/dist/cjs/components/_internal/shell-store.d.ts.map +1 -1
- package/dist/cjs/components/_internal/shell-store.js +1 -1
- package/dist/cjs/components/_internal/shell-store.js.map +3 -3
- package/dist/cjs/components/_internal/use-close-warning.d.ts +12 -0
- package/dist/cjs/components/_internal/use-close-warning.d.ts.map +1 -0
- package/dist/cjs/components/_internal/use-close-warning.js +3 -0
- package/dist/cjs/components/_internal/use-close-warning.js.map +7 -0
- package/dist/cjs/components/checkbox-group.js +1 -1
- package/dist/cjs/components/checkbox-group.js.map +3 -3
- package/dist/cjs/components/checkbox-group.primitive.d.ts +0 -10
- package/dist/cjs/components/checkbox-group.primitive.d.ts.map +1 -1
- package/dist/cjs/components/checkbox-group.primitive.js +1 -1
- package/dist/cjs/components/checkbox-group.primitive.js.map +3 -3
- package/dist/cjs/components/context-menu.d.ts +1 -5
- package/dist/cjs/components/context-menu.d.ts.map +1 -1
- package/dist/cjs/components/context-menu.js +1 -1
- package/dist/cjs/components/context-menu.js.map +3 -3
- package/dist/cjs/components/dialog.d.ts.map +1 -1
- package/dist/cjs/components/dialog.js +1 -1
- package/dist/cjs/components/dialog.js.map +4 -4
- package/dist/cjs/components/dropdown-menu.js +1 -1
- package/dist/cjs/components/dropdown-menu.js.map +2 -2
- package/dist/cjs/components/index.js +2 -2
- package/dist/cjs/components/index.js.map +4 -4
- package/dist/cjs/components/navigator.js.map +2 -2
- package/dist/cjs/components/schemas/index.d.ts +1 -1
- package/dist/cjs/components/schemas/index.d.ts.map +1 -1
- package/dist/cjs/components/schemas/index.js +1 -1
- package/dist/cjs/components/schemas/index.js.map +3 -3
- package/dist/cjs/components/schemas/shell.schema.d.ts +6 -112
- package/dist/cjs/components/schemas/shell.schema.d.ts.map +1 -1
- package/dist/cjs/components/schemas/shell.schema.js +1 -1
- package/dist/cjs/components/schemas/shell.schema.js.map +3 -3
- package/dist/cjs/components/separator.js +1 -1
- package/dist/cjs/components/separator.js.map +2 -2
- package/dist/cjs/components/sheet.d.ts +7 -4
- package/dist/cjs/components/sheet.d.ts.map +1 -1
- package/dist/cjs/components/sheet.js +1 -1
- package/dist/cjs/components/sheet.js.map +4 -4
- package/dist/cjs/components/shell.context.d.ts +1 -45
- package/dist/cjs/components/shell.context.d.ts.map +1 -1
- package/dist/cjs/components/shell.context.js +1 -1
- package/dist/cjs/components/shell.context.js.map +4 -4
- package/dist/cjs/components/shell.d.ts +7 -37
- package/dist/cjs/components/shell.d.ts.map +1 -1
- package/dist/cjs/components/shell.js +1 -1
- package/dist/cjs/components/shell.js.map +4 -4
- package/dist/cjs/components/shell.types.d.ts +6 -27
- package/dist/cjs/components/shell.types.d.ts.map +1 -1
- package/dist/cjs/components/shell.types.js +1 -1
- package/dist/cjs/components/shell.types.js.map +2 -2
- package/dist/cjs/components/sidebar.js +1 -1
- package/dist/cjs/components/sidebar.js.map +2 -2
- package/dist/cjs/components/toolbar.js +1 -1
- package/dist/cjs/components/toolbar.js.map +2 -2
- package/dist/cjs/hooks/use-breakpoint.js +1 -1
- package/dist/cjs/hooks/use-breakpoint.js.map +2 -2
- package/dist/cjs/index.js +4 -4
- package/dist/cjs/index.js.map +4 -4
- package/dist/esm/{chunk-LR4X7SVV.js → chunk-2K46JPUL.js} +2 -2
- package/dist/esm/chunk-3K7E4XL3.js +3 -0
- package/dist/esm/chunk-3K7E4XL3.js.map +7 -0
- package/dist/esm/chunk-3LR7KMBE.js +3 -0
- package/dist/esm/chunk-3LR7KMBE.js.map +7 -0
- package/dist/esm/{chunk-HGF4CKRY.js → chunk-3ZBEWLSO.js} +2 -2
- package/dist/esm/{chunk-26O4RBOJ.js → chunk-5BABJBV3.js} +2 -2
- package/dist/esm/{chunk-5APRBJRR.js → chunk-5GTQXMS2.js} +2 -2
- package/dist/esm/chunk-5U2LEJLU.js +3 -0
- package/dist/esm/chunk-5U2LEJLU.js.map +7 -0
- package/dist/esm/{chunk-KBSH6CBD.js → chunk-5XO3PLDH.js} +2 -2
- package/dist/esm/{chunk-SGKLJDA3.js → chunk-74JANLVU.js} +2 -2
- package/dist/esm/{chunk-TUZ665BA.js → chunk-7E3ZOVRL.js} +2 -2
- package/dist/esm/{chunk-COLJWVN7.js → chunk-AQR42GKA.js} +2 -2
- package/dist/esm/{chunk-FTNZWAPB.js → chunk-ARPUPT4M.js} +2 -2
- package/dist/esm/{chunk-OMPLFDS6.js → chunk-ASBTPKH3.js} +2 -2
- package/dist/esm/{chunk-JFJV4HL3.js → chunk-CFXFWIRM.js} +2 -2
- package/dist/esm/{chunk-YLGIP3A5.js → chunk-CJZGEHVB.js} +2 -2
- package/dist/esm/{chunk-ISCZ57VL.js → chunk-DJGZ4K3V.js} +2 -2
- package/dist/esm/{chunk-PMXIQ5B4.js → chunk-FKCKELUB.js} +2 -2
- package/dist/esm/{chunk-Y5ITMKC6.js → chunk-G7S2BMS3.js} +2 -2
- package/dist/esm/{chunk-SR42NATX.js → chunk-GHIHF55B.js} +2 -2
- package/dist/esm/chunk-H7GH3DTF.js +3 -0
- package/dist/esm/chunk-H7GH3DTF.js.map +7 -0
- package/dist/esm/{chunk-C6VGCYFQ.js → chunk-HNOT2HS4.js} +2 -2
- package/dist/esm/chunk-HWT2K2XR.js +3 -0
- package/dist/esm/chunk-HWT2K2XR.js.map +7 -0
- package/dist/esm/{chunk-D42VCLKH.js → chunk-ICO5ULJL.js} +2 -2
- package/dist/esm/{chunk-FYZXC7AL.js → chunk-JJVAVLCN.js} +2 -2
- package/dist/esm/chunk-LBAC2X4U.js +3 -0
- package/dist/esm/{chunk-5BXCPANF.js.map → chunk-LBAC2X4U.js.map} +3 -3
- package/dist/esm/{chunk-R4DMVTM3.js → chunk-M6THDAMU.js} +2 -2
- package/dist/esm/{chunk-MAA6LEE2.js → chunk-MDQ7ZHOS.js} +1 -1
- package/dist/esm/chunk-MDQ7ZHOS.js.map +7 -0
- package/dist/esm/chunk-MQA3BKF4.js +3 -0
- package/dist/esm/chunk-MQA3BKF4.js.map +7 -0
- package/dist/esm/{chunk-VBF3XALY.js → chunk-MS2ONKJJ.js} +2 -2
- package/dist/esm/chunk-MXNPCJPV.js +3 -0
- package/dist/esm/chunk-MXNPCJPV.js.map +7 -0
- package/dist/esm/{chunk-XFMAA4MD.js → chunk-NJG42JDM.js} +2 -2
- package/dist/esm/{chunk-NJ7RQYLX.js → chunk-OIJQSUUM.js} +2 -2
- package/dist/esm/{chunk-VYF6KKYM.js → chunk-ONJYRJ66.js} +2 -2
- package/dist/esm/chunk-PIVHOUEA.js +3 -0
- package/dist/esm/chunk-PIVHOUEA.js.map +7 -0
- package/dist/esm/{chunk-UH6CJXHY.js → chunk-QPGW6RJG.js} +2 -2
- package/dist/esm/{chunk-EB4AG3OL.js → chunk-REELD6CT.js} +2 -2
- package/dist/esm/chunk-RYXIRZQW.js +3 -0
- package/dist/esm/chunk-RYXIRZQW.js.map +7 -0
- package/dist/esm/chunk-S66WR5R7.js +3 -0
- package/dist/esm/{chunk-MXEOE4LA.js.map → chunk-S66WR5R7.js.map} +2 -2
- package/dist/esm/chunk-SECVO3CW.js +3 -0
- package/dist/esm/chunk-SECVO3CW.js.map +7 -0
- package/dist/esm/chunk-SHDZYFUN.js +3 -0
- package/dist/esm/chunk-SHDZYFUN.js.map +7 -0
- package/dist/esm/{chunk-3M5ZM67R.js → chunk-TCFBNE6A.js} +2 -2
- package/dist/esm/chunk-U7P64MXD.js +3 -0
- package/dist/esm/chunk-U7P64MXD.js.map +7 -0
- package/dist/esm/chunk-UFYQC5XY.js +3 -0
- package/dist/esm/chunk-UFYQC5XY.js.map +7 -0
- package/dist/esm/{chunk-QBONJMSE.js → chunk-VRQK7U7J.js} +2 -2
- package/dist/esm/{chunk-TANYRHGP.js → chunk-W3X4N4JE.js} +2 -2
- package/dist/esm/{chunk-OPYTQ34H.js → chunk-W4CPV4PO.js} +2 -2
- package/dist/esm/{chunk-G66WDIIV.js → chunk-WJKCXGVN.js} +2 -2
- package/dist/esm/{chunk-YLPCYCYA.js → chunk-WT4IDG2W.js} +2 -2
- package/dist/esm/chunk-XBDAE77C.js +3 -0
- package/dist/esm/chunk-XBDAE77C.js.map +7 -0
- package/dist/esm/{chunk-X4PWBFOT.js → chunk-YM47BXKK.js} +2 -2
- package/dist/esm/chunk-YOESAYMJ.js +3 -0
- package/dist/esm/chunk-YOESAYMJ.js.map +7 -0
- package/dist/esm/{chunk-FVRVBB6O.js → chunk-YOZXIUZY.js} +2 -2
- package/dist/esm/{chunk-OGVKMDO7.js → chunk-YRCXTCIT.js} +2 -2
- package/dist/esm/components/_internal/base-button.js +1 -1
- package/dist/esm/components/_internal/base-menu.utils.js +1 -1
- package/dist/esm/components/_internal/menu-context.js +1 -1
- package/dist/esm/components/_internal/pane-chrome.js +1 -1
- package/dist/esm/components/_internal/portal-theme.js +1 -1
- package/dist/esm/components/_internal/shell-bottom.d.ts +3 -3
- package/dist/esm/components/_internal/shell-bottom.d.ts.map +1 -1
- package/dist/esm/components/_internal/shell-bottom.js +1 -1
- package/dist/esm/components/_internal/shell-handles.d.ts.map +1 -1
- package/dist/esm/components/_internal/shell-handles.js +1 -1
- package/dist/esm/components/_internal/shell-inspector.d.ts +3 -3
- package/dist/esm/components/_internal/shell-inspector.d.ts.map +1 -1
- package/dist/esm/components/_internal/shell-inspector.js +1 -1
- package/dist/esm/components/_internal/shell-pane.d.ts +2 -7
- package/dist/esm/components/_internal/shell-pane.d.ts.map +1 -1
- package/dist/esm/components/_internal/shell-pane.js +1 -1
- package/dist/esm/components/_internal/shell-resizable.d.ts +3 -9
- package/dist/esm/components/_internal/shell-resizable.d.ts.map +1 -1
- package/dist/esm/components/_internal/shell-resizable.js +1 -1
- package/dist/esm/components/_internal/shell-resize.d.ts +0 -4
- package/dist/esm/components/_internal/shell-resize.d.ts.map +1 -1
- package/dist/esm/components/_internal/shell-resize.js +1 -1
- package/dist/esm/components/_internal/shell-rest.d.ts +1 -6
- package/dist/esm/components/_internal/shell-rest.d.ts.map +1 -1
- package/dist/esm/components/_internal/shell-rest.js +1 -1
- package/dist/esm/components/_internal/shell-sidebar.d.ts +3 -3
- package/dist/esm/components/_internal/shell-sidebar.d.ts.map +1 -1
- package/dist/esm/components/_internal/shell-sidebar.js +1 -1
- package/dist/esm/components/_internal/shell-store.d.ts +0 -10
- package/dist/esm/components/_internal/shell-store.d.ts.map +1 -1
- package/dist/esm/components/_internal/shell-store.js +1 -1
- package/dist/esm/components/_internal/use-close-warning.d.ts +12 -0
- package/dist/esm/components/_internal/use-close-warning.d.ts.map +1 -0
- package/dist/esm/components/_internal/use-close-warning.js +3 -0
- package/dist/esm/components/accordion.js +1 -1
- package/dist/esm/components/alert-dialog.js +1 -1
- package/dist/esm/components/avatar.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/checkbox-group.primitive.d.ts +0 -10
- package/dist/esm/components/checkbox-group.primitive.d.ts.map +1 -1
- package/dist/esm/components/checkbox-group.primitive.js +1 -1
- package/dist/esm/components/checkbox.js +1 -1
- package/dist/esm/components/chip.js +1 -1
- package/dist/esm/components/combobox.js +1 -1
- package/dist/esm/components/command.js +1 -1
- package/dist/esm/components/context-menu.d.ts +1 -5
- package/dist/esm/components/context-menu.d.ts.map +1 -1
- package/dist/esm/components/context-menu.js +1 -1
- package/dist/esm/components/dialog.d.ts.map +1 -1
- package/dist/esm/components/dialog.js +1 -1
- package/dist/esm/components/dropdown-menu.js +1 -1
- package/dist/esm/components/index.js +1 -1
- package/dist/esm/components/message-scroller.js +1 -1
- package/dist/esm/components/navigator.js +1 -1
- package/dist/esm/components/notice.js +1 -1
- package/dist/esm/components/popover.js +1 -1
- package/dist/esm/components/radio-group.js +1 -1
- package/dist/esm/components/radio.js +1 -1
- package/dist/esm/components/schemas/index.d.ts +1 -1
- package/dist/esm/components/schemas/index.d.ts.map +1 -1
- package/dist/esm/components/schemas/index.js +1 -1
- package/dist/esm/components/schemas/index.js.map +2 -2
- package/dist/esm/components/schemas/shell.schema.d.ts +6 -112
- package/dist/esm/components/schemas/shell.schema.d.ts.map +1 -1
- package/dist/esm/components/schemas/shell.schema.js +1 -1
- package/dist/esm/components/select.js +1 -1
- package/dist/esm/components/separator.js +1 -1
- package/dist/esm/components/sheet.d.ts +7 -4
- package/dist/esm/components/sheet.d.ts.map +1 -1
- package/dist/esm/components/sheet.js +1 -1
- package/dist/esm/components/shell.context.d.ts +1 -45
- package/dist/esm/components/shell.context.d.ts.map +1 -1
- package/dist/esm/components/shell.context.js +1 -1
- package/dist/esm/components/shell.d.ts +7 -37
- package/dist/esm/components/shell.d.ts.map +1 -1
- package/dist/esm/components/shell.js +1 -1
- package/dist/esm/components/shell.types.d.ts +6 -27
- package/dist/esm/components/shell.types.d.ts.map +1 -1
- package/dist/esm/components/shell.types.js +1 -1
- package/dist/esm/components/sidebar.js +1 -1
- package/dist/esm/components/slider.js +1 -1
- package/dist/esm/components/switch.js +1 -1
- package/dist/esm/components/tabs.js +1 -1
- package/dist/esm/components/text-area.js +1 -1
- package/dist/esm/components/text-field.js +1 -1
- package/dist/esm/components/theme.js +1 -1
- package/dist/esm/components/toggle.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.js +1 -1
- package/dist/esm/hooks/use-breakpoint.js +1 -1
- package/dist/esm/index.js +1 -1
- package/package.json +1 -5
- package/schemas/index.json +13 -335
- package/schemas/shell-bottom.json +2 -63
- package/schemas/shell-inspector.json +2 -63
- package/schemas/shell-panel.json +2 -63
- package/schemas/shell-rail.json +2 -38
- package/schemas/shell-sidebar.json +5 -102
- package/schemas/shell-trigger.json +0 -6
- package/src/components/_internal/base-dialog.css +15 -0
- package/src/components/_internal/shell-bottom.tsx +6 -26
- package/src/components/_internal/shell-handles.tsx +2 -32
- package/src/components/_internal/shell-inspector.tsx +6 -26
- package/src/components/_internal/shell-pane.tsx +7 -56
- package/src/components/_internal/shell-resizable.tsx +6 -81
- package/src/components/_internal/shell-resize.tsx +0 -4
- package/src/components/_internal/shell-rest.ts +2 -11
- package/src/components/_internal/shell-sidebar.tsx +8 -30
- package/src/components/_internal/shell-store.tsx +1 -34
- package/src/components/_internal/use-close-warning.ts +38 -0
- package/src/components/checkbox-group.primitive.tsx +0 -12
- package/src/components/context-menu.tsx +1 -6
- package/src/components/dialog.tsx +6 -1
- package/src/components/schemas/index.ts +0 -1
- package/src/components/schemas/shell.schema.ts +3 -20
- package/src/components/sheet.tsx +11 -5
- package/src/components/shell.context.tsx +5 -112
- package/src/components/shell.css +1 -29
- package/src/components/shell.tsx +12 -97
- package/src/components/shell.types.ts +6 -28
- package/styles.css +12 -20
- package/dist/cjs/components/shell.hooks.d.ts +0 -10
- package/dist/cjs/components/shell.hooks.d.ts.map +0 -1
- package/dist/cjs/components/shell.hooks.js +0 -3
- package/dist/cjs/components/shell.hooks.js.map +0 -7
- package/dist/esm/chunk-2VSRZ4IT.js +0 -3
- package/dist/esm/chunk-2VSRZ4IT.js.map +0 -7
- package/dist/esm/chunk-2WFN4D52.js +0 -3
- package/dist/esm/chunk-2WFN4D52.js.map +0 -7
- package/dist/esm/chunk-4OJRLS5N.js +0 -3
- package/dist/esm/chunk-4OJRLS5N.js.map +0 -7
- package/dist/esm/chunk-4TTRPCGG.js +0 -3
- package/dist/esm/chunk-4TTRPCGG.js.map +0 -7
- package/dist/esm/chunk-5BXCPANF.js +0 -3
- package/dist/esm/chunk-B447PNRD.js +0 -3
- package/dist/esm/chunk-B447PNRD.js.map +0 -7
- package/dist/esm/chunk-BJVXB3PN.js +0 -3
- package/dist/esm/chunk-BJVXB3PN.js.map +0 -7
- package/dist/esm/chunk-HQT32HQ6.js +0 -3
- package/dist/esm/chunk-HQT32HQ6.js.map +0 -7
- package/dist/esm/chunk-KGCGT4MJ.js +0 -3
- package/dist/esm/chunk-KGCGT4MJ.js.map +0 -7
- package/dist/esm/chunk-M26LLCQC.js +0 -3
- package/dist/esm/chunk-M26LLCQC.js.map +0 -7
- package/dist/esm/chunk-MAA6LEE2.js.map +0 -7
- package/dist/esm/chunk-MXEOE4LA.js +0 -3
- package/dist/esm/chunk-QV66TN2A.js +0 -3
- package/dist/esm/chunk-QV66TN2A.js.map +0 -7
- package/dist/esm/chunk-TRJAVWCK.js +0 -3
- package/dist/esm/chunk-TRJAVWCK.js.map +0 -7
- package/dist/esm/chunk-TS4QCDSI.js +0 -3
- package/dist/esm/chunk-TS4QCDSI.js.map +0 -7
- package/dist/esm/chunk-XOAOSRTH.js +0 -3
- package/dist/esm/chunk-XOAOSRTH.js.map +0 -7
- package/dist/esm/chunk-XUCR7L4G.js +0 -3
- package/dist/esm/chunk-XUCR7L4G.js.map +0 -7
- package/dist/esm/chunk-XVN43IZL.js +0 -3
- package/dist/esm/chunk-XVN43IZL.js.map +0 -7
- package/dist/esm/components/shell.hooks.d.ts +0 -10
- package/dist/esm/components/shell.hooks.d.ts.map +0 -1
- package/dist/esm/components/shell.hooks.js +0 -3
- package/src/components/shell.hooks.ts +0 -20
- /package/dist/esm/{chunk-LR4X7SVV.js.map → chunk-2K46JPUL.js.map} +0 -0
- /package/dist/esm/{chunk-HGF4CKRY.js.map → chunk-3ZBEWLSO.js.map} +0 -0
- /package/dist/esm/{chunk-26O4RBOJ.js.map → chunk-5BABJBV3.js.map} +0 -0
- /package/dist/esm/{chunk-5APRBJRR.js.map → chunk-5GTQXMS2.js.map} +0 -0
- /package/dist/esm/{chunk-KBSH6CBD.js.map → chunk-5XO3PLDH.js.map} +0 -0
- /package/dist/esm/{chunk-SGKLJDA3.js.map → chunk-74JANLVU.js.map} +0 -0
- /package/dist/esm/{chunk-TUZ665BA.js.map → chunk-7E3ZOVRL.js.map} +0 -0
- /package/dist/esm/{chunk-COLJWVN7.js.map → chunk-AQR42GKA.js.map} +0 -0
- /package/dist/esm/{chunk-FTNZWAPB.js.map → chunk-ARPUPT4M.js.map} +0 -0
- /package/dist/esm/{chunk-OMPLFDS6.js.map → chunk-ASBTPKH3.js.map} +0 -0
- /package/dist/esm/{chunk-JFJV4HL3.js.map → chunk-CFXFWIRM.js.map} +0 -0
- /package/dist/esm/{chunk-YLGIP3A5.js.map → chunk-CJZGEHVB.js.map} +0 -0
- /package/dist/esm/{chunk-ISCZ57VL.js.map → chunk-DJGZ4K3V.js.map} +0 -0
- /package/dist/esm/{chunk-PMXIQ5B4.js.map → chunk-FKCKELUB.js.map} +0 -0
- /package/dist/esm/{chunk-Y5ITMKC6.js.map → chunk-G7S2BMS3.js.map} +0 -0
- /package/dist/esm/{chunk-SR42NATX.js.map → chunk-GHIHF55B.js.map} +0 -0
- /package/dist/esm/{chunk-C6VGCYFQ.js.map → chunk-HNOT2HS4.js.map} +0 -0
- /package/dist/esm/{chunk-D42VCLKH.js.map → chunk-ICO5ULJL.js.map} +0 -0
- /package/dist/esm/{chunk-FYZXC7AL.js.map → chunk-JJVAVLCN.js.map} +0 -0
- /package/dist/esm/{chunk-R4DMVTM3.js.map → chunk-M6THDAMU.js.map} +0 -0
- /package/dist/esm/{chunk-VBF3XALY.js.map → chunk-MS2ONKJJ.js.map} +0 -0
- /package/dist/esm/{chunk-XFMAA4MD.js.map → chunk-NJG42JDM.js.map} +0 -0
- /package/dist/esm/{chunk-NJ7RQYLX.js.map → chunk-OIJQSUUM.js.map} +0 -0
- /package/dist/esm/{chunk-VYF6KKYM.js.map → chunk-ONJYRJ66.js.map} +0 -0
- /package/dist/esm/{chunk-UH6CJXHY.js.map → chunk-QPGW6RJG.js.map} +0 -0
- /package/dist/esm/{chunk-EB4AG3OL.js.map → chunk-REELD6CT.js.map} +0 -0
- /package/dist/esm/{chunk-3M5ZM67R.js.map → chunk-TCFBNE6A.js.map} +0 -0
- /package/dist/esm/{chunk-QBONJMSE.js.map → chunk-VRQK7U7J.js.map} +0 -0
- /package/dist/esm/{chunk-TANYRHGP.js.map → chunk-W3X4N4JE.js.map} +0 -0
- /package/dist/esm/{chunk-OPYTQ34H.js.map → chunk-W4CPV4PO.js.map} +0 -0
- /package/dist/esm/{chunk-G66WDIIV.js.map → chunk-WJKCXGVN.js.map} +0 -0
- /package/dist/esm/{chunk-YLPCYCYA.js.map → chunk-WT4IDG2W.js.map} +0 -0
- /package/dist/esm/{chunk-X4PWBFOT.js.map → chunk-YM47BXKK.js.map} +0 -0
- /package/dist/esm/{chunk-FVRVBB6O.js.map → chunk-YOZXIUZY.js.map} +0 -0
- /package/dist/esm/{chunk-OGVKMDO7.js.map → chunk-YRCXTCIT.js.map} +0 -0
- /package/dist/esm/components/{shell.hooks.js.map → _internal/use-close-warning.js.map} +0 -0
|
@@ -24,7 +24,7 @@ const PaneModeSchema = z.enum(['expanded', 'collapsed']).describe('Pane state mo
|
|
|
24
24
|
const SidebarModeSchema = z.enum(['collapsed', 'expanded']).describe('Sidebar state');
|
|
25
25
|
const PresentationValueSchema = z.enum(['fixed', 'overlay', 'stacked']).describe('Presentation mode');
|
|
26
26
|
const _BreakpointSchema = z.enum(['initial', 'xs', 'sm', 'md', 'lg', 'xl']).describe('Responsive breakpoint');
|
|
27
|
-
const PaneTargetSchema = z.enum(['
|
|
27
|
+
const PaneTargetSchema = z.enum(['rail', 'panel', 'sidebar', 'inspector', 'bottom']).describe('Pane target');
|
|
28
28
|
const TriggerActionSchema = z.enum(['toggle', 'expand', 'collapse']).describe('Trigger action');
|
|
29
29
|
const OpenChangeReasonSchema = z.enum(['toggle', 'dismiss']).describe('Why the state changed: `toggle` for a trigger or the resize handle, `dismiss` for Escape or the scrim');
|
|
30
30
|
const SizeChangeReasonSchema = z.enum(['init', 'resize', 'controlled']).describe('Why the size changed');
|
|
@@ -49,21 +49,13 @@ const ResponsiveSidebarModeSchema = responsive(SidebarModeSchema).describe('Resp
|
|
|
49
49
|
const ResponsivePresentationSchema = responsive(PresentationValueSchema).describe('Responsive presentation configuration');
|
|
50
50
|
const ResponsiveOpenSchema = responsive(z.boolean()).describe('Responsive open state');
|
|
51
51
|
|
|
52
|
-
// Size persistence adapter (deprecated)
|
|
53
|
-
const PaneSizePersistenceSchema = z
|
|
54
|
-
.object({
|
|
55
|
-
load: z.function({ output: z.union([z.number(), z.promise(z.number()), z.undefined()]) }).optional(),
|
|
56
|
-
save: z.function({ input: [z.number()], output: z.union([z.void(), z.promise(z.void())]) }).optional(),
|
|
57
|
-
})
|
|
58
|
-
.describe('Deprecated, removed in 1.0. Keep the size in your own state with `size`/`onSizeChange`.');
|
|
59
|
-
|
|
60
52
|
const StyleSchema = z
|
|
61
53
|
.record(z.string(), z.union([z.string(), z.number()]))
|
|
62
54
|
.optional()
|
|
63
55
|
.describe('Inline styles');
|
|
64
56
|
|
|
65
57
|
const OpenPropsSchema = {
|
|
66
|
-
open: z.
|
|
58
|
+
open: z.boolean().optional().describe('The open state, when controlled'),
|
|
67
59
|
defaultOpen: z
|
|
68
60
|
.union([z.boolean(), ResponsiveOpenSchema])
|
|
69
61
|
.optional()
|
|
@@ -80,8 +72,6 @@ const PaneBaseShape = {
|
|
|
80
72
|
presentation: ResponsivePresentationSchema.optional(),
|
|
81
73
|
expandedSize: z.number().optional(),
|
|
82
74
|
flush: z.boolean().optional().describe('Whether the pane joins the app frame. Defaults to true. `false` pulls it off the frame as a card.'),
|
|
83
|
-
onExpand: z.function({ output: z.void() }).optional().describe('Deprecated: use `onOpenChange`'),
|
|
84
|
-
onCollapse: z.function({ output: z.void() }).optional().describe('Deprecated: use `onOpenChange`'),
|
|
85
75
|
className: z.string().optional().describe('Additional CSS class name'),
|
|
86
76
|
style: StyleSchema,
|
|
87
77
|
children: z.any().optional(),
|
|
@@ -107,11 +97,6 @@ const ResizeShape = {
|
|
|
107
97
|
.describe('Called during a drag, at most once per animation frame'),
|
|
108
98
|
onResizeStart: z.function({ input: [z.number()], output: z.void() }).optional(),
|
|
109
99
|
onResizeEnd: z.function({ input: [z.number()], output: z.void() }).optional(),
|
|
110
|
-
snapPoints: z.array(z.number()).optional().describe('Deprecated, removed in 1.0'),
|
|
111
|
-
snapTolerance: z.number().optional().describe('Deprecated, removed in 1.0'),
|
|
112
|
-
collapseThreshold: z.number().optional().describe('Deprecated, removed in 1.0'),
|
|
113
|
-
paneId: z.string().optional().describe('Deprecated, removed in 1.0'),
|
|
114
|
-
persistence: PaneSizePersistenceSchema.optional(),
|
|
115
100
|
};
|
|
116
101
|
|
|
117
102
|
/**
|
|
@@ -183,7 +168,7 @@ export const ShellSidebarSchema = z
|
|
|
183
168
|
.object({
|
|
184
169
|
...PaneBaseShape,
|
|
185
170
|
...ResizeShape,
|
|
186
|
-
state:
|
|
171
|
+
state: SidebarModeSchema.optional().describe('The state, when controlled'),
|
|
187
172
|
defaultState: ResponsiveSidebarModeSchema.optional().describe('The starting state. With no value the sidebar is open where it is in the frame and closed where it is an overlay.'),
|
|
188
173
|
onStateChange: z
|
|
189
174
|
.function({ input: [SidebarModeSchema, z.object({ reason: OpenChangeReasonSchema })], output: z.void() })
|
|
@@ -251,7 +236,6 @@ export const ShellTriggerSchema = z
|
|
|
251
236
|
.object({
|
|
252
237
|
target: PaneTargetSchema.describe('Which pane to drive'),
|
|
253
238
|
action: TriggerActionSchema.default('toggle').describe('Action to perform'),
|
|
254
|
-
peekOnHover: z.boolean().default(false).describe('Deprecated, removed in 1.0. Shows a preview of a closed pane on hover.'),
|
|
255
239
|
type: z.enum(['button', 'submit', 'reset']).default('button').describe('The button type'),
|
|
256
240
|
className: z.string().optional().describe('Additional CSS class name'),
|
|
257
241
|
style: StyleSchema,
|
|
@@ -298,7 +282,6 @@ export type TriggerAction = z.infer<typeof TriggerActionSchema>;
|
|
|
298
282
|
export type ResponsiveMode = z.infer<typeof _ResponsiveModeSchema>;
|
|
299
283
|
export type ResponsiveSidebarMode = z.infer<typeof ResponsiveSidebarModeSchema>;
|
|
300
284
|
export type ResponsivePresentation = z.infer<typeof ResponsivePresentationSchema>;
|
|
301
|
-
export type PaneSizePersistence = z.infer<typeof PaneSizePersistenceSchema>;
|
|
302
285
|
|
|
303
286
|
/**
|
|
304
287
|
* Development-only helper to validate and normalize Shell props
|
package/src/components/sheet.tsx
CHANGED
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
* - Sizing: reuses Dialog content prop defs (width/min/max/height/size). Size follows the
|
|
16
16
|
* Theme size; start/end sheets cap at the size's overlay width unless maxWidth is set.
|
|
17
17
|
* - A11y: provide an accessible name via `Sheet.Title` or `aria-label` on `Sheet.Content`.
|
|
18
|
+
* A titled sheet has a Close X at the end of a Toolbar in its top row; dev warns without one.
|
|
18
19
|
* Radix owns the focus trap, initial focus and the return of focus to the trigger.
|
|
19
20
|
*
|
|
20
21
|
* Example
|
|
@@ -23,11 +24,13 @@
|
|
|
23
24
|
* <Button>Open</Button>
|
|
24
25
|
* </Sheet.Trigger>
|
|
25
26
|
* <Sheet.Content side="end" width={{ initial: '280px', md: '360px' }}>
|
|
26
|
-
* <
|
|
27
|
+
* <Toolbar>
|
|
28
|
+
* <Toolbar.Title><Sheet.Title>Details</Sheet.Title></Toolbar.Title>
|
|
29
|
+
* <Sheet.Close>
|
|
30
|
+
* <Toolbar.Button iconOnly aria-label="Close">…</Toolbar.Button>
|
|
31
|
+
* </Sheet.Close>
|
|
32
|
+
* </Toolbar>
|
|
27
33
|
* ...
|
|
28
|
-
* <Sheet.Close>
|
|
29
|
-
* <Button>Close</Button>
|
|
30
|
-
* </Sheet.Close>
|
|
31
34
|
* </Sheet.Content>
|
|
32
35
|
* </Sheet.Root>
|
|
33
36
|
*/
|
|
@@ -40,6 +43,7 @@ import { dialogContentPropDefs } from './dialog.props.js';
|
|
|
40
43
|
import type { DialogContentOwnProps } from './dialog.props.js';
|
|
41
44
|
import { PortalTheme } from './_internal/portal-theme.js';
|
|
42
45
|
import { NavigatorHostContext, type NavigatorHost } from './_internal/navigator-host.js';
|
|
46
|
+
import { useCloseWarning } from './_internal/use-close-warning.js';
|
|
43
47
|
import { Heading } from './heading.js';
|
|
44
48
|
import { Text } from './text.js';
|
|
45
49
|
import { extractProps } from '../helpers/extract-props.js';
|
|
@@ -132,6 +136,7 @@ const Content = React.forwardRef<SheetContentElement, SheetContentProps>((allPro
|
|
|
132
136
|
// Dev-only a11y guard: the panel needs a name. A Sheet.Title anywhere inside counts it
|
|
133
137
|
// in a layout effect, which runs before this ref is attached, so nesting doesn't matter.
|
|
134
138
|
const titleCountRef = React.useRef(0);
|
|
139
|
+
const closeWarningRef = useCloseWarning('Sheet');
|
|
135
140
|
const combinedRef = React.useCallback(
|
|
136
141
|
(node: HTMLDivElement | null) => {
|
|
137
142
|
if (typeof forwardedRef === 'function') {
|
|
@@ -145,8 +150,9 @@ const Content = React.forwardRef<SheetContentElement, SheetContentProps>((allPro
|
|
|
145
150
|
console.warn('Sheet.Content: Missing accessible name. Include Sheet.Title inside it or provide aria-label.');
|
|
146
151
|
}
|
|
147
152
|
}
|
|
153
|
+
closeWarningRef(node);
|
|
148
154
|
},
|
|
149
|
-
[forwardedRef],
|
|
155
|
+
[forwardedRef, closeWarningRef],
|
|
150
156
|
);
|
|
151
157
|
|
|
152
158
|
useBodyPointerEventsCleanup();
|
|
@@ -1,34 +1,18 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* `useShell`.
|
|
4
|
+
* The Shell has two contexts: the pane registry (the store) and the set of panes off the frame.
|
|
5
|
+
* They live in `_internal/shell-store.tsx`. This module keeps the hook consumers can reach:
|
|
6
|
+
* `useSidebarMode`.
|
|
8
7
|
*/
|
|
9
8
|
import * as React from 'react';
|
|
10
|
-
import {
|
|
11
|
-
import
|
|
12
|
-
import { setShellPeek, subscribeShellStore, useShellStore, warnOnce, type PaneValue, type ShellStore } from './_internal/shell-store.js';
|
|
9
|
+
import type { SidebarMode } from './shell.types.js';
|
|
10
|
+
import { subscribeShellStore, useShellStore, type PaneValue } from './_internal/shell-store.js';
|
|
13
11
|
|
|
14
12
|
const toSidebarMode = (value: PaneValue | undefined): SidebarMode | undefined => (value === undefined ? undefined : value === 'closed' ? 'collapsed' : 'expanded');
|
|
15
13
|
|
|
16
14
|
const fromSidebarMode = (mode: SidebarMode): PaneValue => (mode === 'collapsed' ? 'closed' : 'open');
|
|
17
15
|
|
|
18
|
-
const toPaneMode = (value: PaneValue | undefined): PaneMode => (value === undefined || value === 'closed' ? 'collapsed' : 'expanded');
|
|
19
|
-
|
|
20
|
-
const paneName = (target: PaneTarget): PaneName => (target === 'left' ? 'rail' : target);
|
|
21
|
-
|
|
22
|
-
/** Re-renders on every change to the registry. For the deprecated whole-shell reader only. */
|
|
23
|
-
function useStoreVersion(store: ShellStore) {
|
|
24
|
-
const subscribe = React.useCallback((listener: () => void) => subscribeShellStore(store, listener), [store]);
|
|
25
|
-
return React.useSyncExternalStore(
|
|
26
|
-
subscribe,
|
|
27
|
-
() => store.version,
|
|
28
|
-
() => 0,
|
|
29
|
-
);
|
|
30
|
-
}
|
|
31
|
-
|
|
32
16
|
/**
|
|
33
17
|
* The Sidebar's mode, and a setter. The setter is a user action: it reports
|
|
34
18
|
* through the Sidebar's `onStateChange` the way a Trigger does.
|
|
@@ -49,94 +33,3 @@ export function useSidebarMode(): { sidebarMode: SidebarMode; setSidebarMode: (m
|
|
|
49
33
|
);
|
|
50
34
|
return { sidebarMode: toSidebarMode(value) ?? 'expanded', setSidebarMode };
|
|
51
35
|
}
|
|
52
|
-
|
|
53
|
-
export interface ShellContextValue {
|
|
54
|
-
leftMode: PaneMode;
|
|
55
|
-
setLeftMode: (mode: PaneMode) => void;
|
|
56
|
-
/** The Rail's open state, resolved, when it is controlled. */
|
|
57
|
-
leftControlledOpen?: boolean;
|
|
58
|
-
panelMode: PaneMode;
|
|
59
|
-
setPanelMode: (mode: PaneMode) => void;
|
|
60
|
-
sidebarMode: SidebarMode;
|
|
61
|
-
setSidebarMode: (mode: SidebarMode) => void;
|
|
62
|
-
inspectorMode: PaneMode;
|
|
63
|
-
setInspectorMode: (mode: PaneMode) => void;
|
|
64
|
-
bottomMode: PaneMode;
|
|
65
|
-
setBottomMode: (mode: PaneMode) => void;
|
|
66
|
-
peekTarget: PaneTarget | null;
|
|
67
|
-
setPeekTarget: (target: PaneTarget | null) => void;
|
|
68
|
-
peekPane: (target: PaneTarget) => void;
|
|
69
|
-
clearPeek: () => void;
|
|
70
|
-
/** Whether a Rail is mounted. */
|
|
71
|
-
hasLeft: boolean;
|
|
72
|
-
/** No effect since 0.8.0: the registry knows which panes are mounted. */
|
|
73
|
-
setHasLeft: (has: boolean) => void;
|
|
74
|
-
/** Whether a Sidebar is mounted. */
|
|
75
|
-
hasSidebar: boolean;
|
|
76
|
-
/** No effect since 0.8.0: the registry knows which panes are mounted. */
|
|
77
|
-
setHasSidebar: (has: boolean) => void;
|
|
78
|
-
currentBreakpoint: Breakpoint;
|
|
79
|
-
currentBreakpointReady: boolean;
|
|
80
|
-
/** The Rail's presentation at the current breakpoint, when known. */
|
|
81
|
-
leftResolvedPresentation?: PresentationValue;
|
|
82
|
-
togglePane: (target: PaneTarget) => void;
|
|
83
|
-
expandPane: (target: PaneTarget) => void;
|
|
84
|
-
collapsePane: (target: PaneTarget) => void;
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
const noop = () => {};
|
|
88
|
-
|
|
89
|
-
/**
|
|
90
|
-
* @deprecated The whole-shell reader re-renders its consumer on every change
|
|
91
|
-
* to any pane. Use `Shell.Trigger` to drive a pane, `Shell.useSidebarMode`
|
|
92
|
-
* for the Sidebar, and each pane's `open`/`onOpenChange` for its state.
|
|
93
|
-
* Removed in 1.0.
|
|
94
|
-
*
|
|
95
|
-
* Keeps 0.7's shape. The setters act as a user would: they report through
|
|
96
|
-
* the pane's own callback with `reason: 'toggle'`, and a controlled pane
|
|
97
|
-
* changes only when the app passes the new value.
|
|
98
|
-
*/
|
|
99
|
-
export function useShell(): ShellContextValue {
|
|
100
|
-
const store = useShellStore('useShell');
|
|
101
|
-
React.useEffect(() => {
|
|
102
|
-
warnOnce("Shell.useShell is deprecated and is removed in 1.0. Use Shell.Trigger, Shell.useSidebarMode, or a pane's own open/onOpenChange.");
|
|
103
|
-
}, []);
|
|
104
|
-
useStoreVersion(store);
|
|
105
|
-
const { breakpoint, ready } = useBreakpoint();
|
|
106
|
-
const actions = React.useMemo(() => {
|
|
107
|
-
const setMode = (name: PaneName) => (mode: PaneMode) => store.entries.get(name)?.setValue(mode === 'collapsed' ? 'closed' : 'open', 'toggle');
|
|
108
|
-
const setPeekTarget = (target: PaneTarget | null) => setShellPeek(store, target === null ? null : paneName(target));
|
|
109
|
-
return {
|
|
110
|
-
setLeftMode: setMode('rail'),
|
|
111
|
-
setPanelMode: setMode('panel'),
|
|
112
|
-
setInspectorMode: setMode('inspector'),
|
|
113
|
-
setBottomMode: setMode('bottom'),
|
|
114
|
-
setSidebarMode: (mode: SidebarMode) => store.entries.get('sidebar')?.setValue(fromSidebarMode(mode), 'toggle'),
|
|
115
|
-
setPeekTarget,
|
|
116
|
-
peekPane: (target: PaneTarget) => setPeekTarget(target),
|
|
117
|
-
clearPeek: () => setPeekTarget(null),
|
|
118
|
-
setHasLeft: noop,
|
|
119
|
-
setHasSidebar: noop,
|
|
120
|
-
togglePane: (target: PaneTarget) => store.entries.get(paneName(target))?.toggle('toggle'),
|
|
121
|
-
expandPane: (target: PaneTarget) => store.entries.get(paneName(target))?.setValue('open', 'toggle'),
|
|
122
|
-
collapsePane: (target: PaneTarget) => store.entries.get(paneName(target))?.setValue('closed', 'toggle'),
|
|
123
|
-
};
|
|
124
|
-
}, [store]);
|
|
125
|
-
const value = (name: PaneName) => store.entries.get(name)?.value;
|
|
126
|
-
const rail = store.entries.get('rail');
|
|
127
|
-
return {
|
|
128
|
-
leftMode: toPaneMode(value('rail')),
|
|
129
|
-
leftControlledOpen: rail?.value === undefined ? undefined : rail.value !== 'closed',
|
|
130
|
-
panelMode: toPaneMode(value('panel')),
|
|
131
|
-
sidebarMode: toSidebarMode(value('sidebar')) ?? 'expanded',
|
|
132
|
-
inspectorMode: toPaneMode(value('inspector')),
|
|
133
|
-
bottomMode: toPaneMode(value('bottom')),
|
|
134
|
-
peekTarget: store.peek,
|
|
135
|
-
hasLeft: store.entries.has('rail'),
|
|
136
|
-
hasSidebar: store.entries.has('sidebar'),
|
|
137
|
-
currentBreakpoint: breakpoint,
|
|
138
|
-
currentBreakpointReady: ready,
|
|
139
|
-
leftResolvedPresentation: rail?.presentation,
|
|
140
|
-
...actions,
|
|
141
|
-
};
|
|
142
|
-
}
|
package/src/components/shell.css
CHANGED
|
@@ -885,34 +885,6 @@
|
|
|
885
885
|
}
|
|
886
886
|
}
|
|
887
887
|
|
|
888
|
-
/* ── Peek ──────────────────────────────────────────────────────────────────── */
|
|
889
|
-
|
|
890
|
-
/*
|
|
891
|
-
* A Trigger with `peekOnHover` previews a closed pane while the pointer is on
|
|
892
|
-
* it. The pane shows, floating above the content at its edge. After every
|
|
893
|
-
* breakpoint block, so it wins over a closed state at any width.
|
|
894
|
-
*/
|
|
895
|
-
.kui-ShellPane[data-peek][data-state],
|
|
896
|
-
.kui-ShellRail ~ .kui-ShellPanel[data-presentation-follows][data-peek][data-state] {
|
|
897
|
-
--kui-shell-position: absolute;
|
|
898
|
-
--kui-shell-z: 4;
|
|
899
|
-
--kui-shell-pin: fixed;
|
|
900
|
-
--kui-shell-pin-top: initial;
|
|
901
|
-
--kui-shell-row: 2 / 3;
|
|
902
|
-
--kui-shell-col: 1 / -1;
|
|
903
|
-
--kui-shell-surface: var(--color-surface);
|
|
904
|
-
--kui-shell-shadow: var(--surface-chrome);
|
|
905
|
-
--kui-shell-edge: 1px;
|
|
906
|
-
--kui-shell-offset: var(--shell-rail-offset, 0px);
|
|
907
|
-
--kui-shell-handle: none;
|
|
908
|
-
|
|
909
|
-
display: flex;
|
|
910
|
-
}
|
|
911
|
-
|
|
912
|
-
.kui-ShellSidebar[data-peek][data-state] {
|
|
913
|
-
inline-size: var(--peek-sidebar-width, var(--sidebar-size, var(--sidebar-expanded-size, 288px)));
|
|
914
|
-
}
|
|
915
|
-
|
|
916
888
|
/* ── Scrim ─────────────────────────────────────────────────────────────────── */
|
|
917
889
|
|
|
918
890
|
/* Root-owned and always mounted; shown while an overlay is live. Under the overlay panes, over everything else. */
|
|
@@ -1207,7 +1179,7 @@
|
|
|
1207
1179
|
}
|
|
1208
1180
|
|
|
1209
1181
|
/*
|
|
1210
|
-
* The panes. A pane over the page (overlay, stacked
|
|
1182
|
+
* The panes. A pane over the page (overlay, stacked) attaches to the screen: its posture
|
|
1211
1183
|
* writes `--kui-shell-pin: fixed`. A pane in flow sticks beneath the header, a screen tall, and
|
|
1212
1184
|
* the bottom pane sticks to the screen's bottom. An overlay covers the header
|
|
1213
1185
|
* (`--kui-shell-pin-top: 0px`); the rest start beneath it.
|
package/src/components/shell.tsx
CHANGED
|
@@ -39,17 +39,14 @@ import {
|
|
|
39
39
|
ShellFrameContext,
|
|
40
40
|
ShellStoreContext,
|
|
41
41
|
createShellStore,
|
|
42
|
-
setShellPeek,
|
|
43
42
|
subscribeShellStore,
|
|
44
43
|
useFrameRegistration,
|
|
45
44
|
usePaneEntry,
|
|
46
45
|
useShellStore,
|
|
47
|
-
warnOnce,
|
|
48
46
|
type FramePaneId,
|
|
49
47
|
} from './_internal/shell-store.js';
|
|
50
|
-
import { navigationRest, detailRest, toPaneValue, startAnchoredGrowth
|
|
51
|
-
import {
|
|
52
|
-
import { useResponsivePresentation } from './shell.hooks.js';
|
|
48
|
+
import { navigationRest, detailRest, toPaneValue, startAnchoredGrowth } from './_internal/shell-rest.js';
|
|
49
|
+
import { useSidebarMode } from './shell.context.js';
|
|
53
50
|
import { readBreakpoint } from '../hooks/use-breakpoint.js';
|
|
54
51
|
import { useThemeSize } from '../hooks/theme-size.js';
|
|
55
52
|
import { PageScope } from './_internal/page-scope.js';
|
|
@@ -57,7 +54,7 @@ import { PaneChromeScope, PaneFooter, PaneHeader, Scroll, ShellContentContext, S
|
|
|
57
54
|
import { onPageScrollMediaChange, pageScrollMatches } from './_internal/shell-page-scroll.js';
|
|
58
55
|
import type { PaneSize, PaneHeaderProps, PaneFooterProps, ScrollProps } from './_internal/pane-chrome.js';
|
|
59
56
|
import { PaneBandSizeContext } from './_internal/pane-band-context.js';
|
|
60
|
-
import type { Breakpoint, CSSPropertiesWithVars, PaneBaseProps, PaneMode, PaneName, PaneTarget, ResponsivePresentation, SidebarMode } from './shell.types.js';
|
|
57
|
+
import type { Breakpoint, CSSPropertiesWithVars, PaneBaseProps, PaneMode, PaneName, PaneOpenChangeReason, PaneTarget, ResponsivePresentation, SidebarMode } from './shell.types.js';
|
|
61
58
|
|
|
62
59
|
/* ── Root ──────────────────────────────────────────────────────────────────── */
|
|
63
60
|
|
|
@@ -536,46 +533,17 @@ const Header = React.forwardRef<HTMLElement, ShellHeaderProps>(({ className, hei
|
|
|
536
533
|
});
|
|
537
534
|
Header.displayName = 'Shell.Header';
|
|
538
535
|
|
|
539
|
-
/* ── Left (deprecated) ─────────────────────────────────────────────────────── */
|
|
540
|
-
|
|
541
|
-
interface LeftProps extends React.ComponentPropsWithoutRef<'div'> {
|
|
542
|
-
presentation?: ResponsivePresentation;
|
|
543
|
-
open?: boolean;
|
|
544
|
-
defaultOpen?: boolean;
|
|
545
|
-
onOpenChange?: (open: boolean, meta: { reason: 'init' | 'toggle' | 'panel' | 'responsive' | 'dismiss' }) => void;
|
|
546
|
-
collapsible?: boolean;
|
|
547
|
-
onExpand?: () => void;
|
|
548
|
-
onCollapse?: () => void;
|
|
549
|
-
}
|
|
550
|
-
|
|
551
|
-
/**
|
|
552
|
-
* @deprecated The Root no longer wraps the Rail and Panel in a Left
|
|
553
|
-
* container: each is its own pane. `Shell.Left` renders its children and
|
|
554
|
-
* ignores its own props. Removed in 1.0.
|
|
555
|
-
*/
|
|
556
|
-
const Left = React.forwardRef<HTMLDivElement, LeftProps>(({ children }, _ref) => {
|
|
557
|
-
React.useEffect(() => {
|
|
558
|
-
warnOnce('Shell.Left is deprecated and is removed in 1.0. Render Shell.Rail and Shell.Panel directly in Shell.Root.');
|
|
559
|
-
}, []);
|
|
560
|
-
return <>{children}</>;
|
|
561
|
-
});
|
|
562
|
-
Left.displayName = 'Shell.Left';
|
|
563
|
-
|
|
564
536
|
/* ── Rail ──────────────────────────────────────────────────────────────────── */
|
|
565
537
|
|
|
566
|
-
type RailOpenChangeMeta = { reason:
|
|
538
|
+
type RailOpenChangeMeta = { reason: PaneOpenChangeReason };
|
|
567
539
|
|
|
568
|
-
type RailControlledProps = { open: boolean
|
|
540
|
+
type RailControlledProps = { open: boolean; onOpenChange?: (open: boolean, meta: RailOpenChangeMeta) => void; defaultOpen?: never };
|
|
569
541
|
type RailUncontrolledProps = { defaultOpen?: boolean | Partial<Record<Breakpoint, boolean>>; onOpenChange?: (open: boolean, meta: RailOpenChangeMeta) => void; open?: never };
|
|
570
542
|
|
|
571
543
|
type RailProps = React.ComponentPropsWithoutRef<'div'> & {
|
|
572
544
|
presentation?: ResponsivePresentation;
|
|
573
545
|
expandedSize?: number;
|
|
574
546
|
collapsible?: boolean;
|
|
575
|
-
/** @deprecated Use `onOpenChange`. */
|
|
576
|
-
onExpand?: () => void;
|
|
577
|
-
/** @deprecated Use `onOpenChange`. */
|
|
578
|
-
onCollapse?: () => void;
|
|
579
547
|
/**
|
|
580
548
|
* Sets whether this pane joins the app frame. The default is `true`: the pane sits against its
|
|
581
549
|
* neighbours with one hairline between them. Set `flush={false}` to pull it off the frame as a
|
|
@@ -588,7 +556,7 @@ type RailProps = React.ComponentPropsWithoutRef<'div'> & {
|
|
|
588
556
|
const RAIL_PROP_NAMES = { controlled: 'open', default: 'defaultOpen' };
|
|
589
557
|
|
|
590
558
|
const Rail = React.forwardRef<HTMLDivElement, RailProps>((props, ref) => {
|
|
591
|
-
const { className, presentation, expandedSize = 64, collapsible: _collapsible,
|
|
559
|
+
const { className, presentation, expandedSize = 64, collapsible: _collapsible, children, style, open, defaultOpen, onOpenChange, flush = true, id, ...domProps } = props;
|
|
592
560
|
const { table, attributes } = usePresentationTable(presentation, 'fixed');
|
|
593
561
|
const pane = usePane({
|
|
594
562
|
name: 'rail',
|
|
@@ -600,8 +568,6 @@ const Rail = React.forwardRef<HTMLDivElement, RailProps>((props, ref) => {
|
|
|
600
568
|
presentationTable: table,
|
|
601
569
|
builtIn: navigationRest,
|
|
602
570
|
onChange: (value, reason) => onOpenChange?.(value !== 'closed', { reason }),
|
|
603
|
-
onExpand,
|
|
604
|
-
onCollapse,
|
|
605
571
|
size: expandedSize,
|
|
606
572
|
});
|
|
607
573
|
useFrameRegistration('rail', flush);
|
|
@@ -639,8 +605,8 @@ function RailContent({ children }: { children: React.ReactNode }) {
|
|
|
639
605
|
|
|
640
606
|
type HandleComponent = React.ForwardRefExoticComponent<React.ComponentPropsWithoutRef<'div'> & React.RefAttributes<HTMLDivElement>>;
|
|
641
607
|
|
|
642
|
-
type PanelOpenChangeMeta = { reason:
|
|
643
|
-
type PanelControlledProps = { open: boolean
|
|
608
|
+
type PanelOpenChangeMeta = { reason: PaneOpenChangeReason };
|
|
609
|
+
type PanelControlledProps = { open: boolean; onOpenChange?: (open: boolean, meta: PanelOpenChangeMeta) => void; defaultOpen?: never };
|
|
644
610
|
type PanelUncontrolledProps = { defaultOpen?: boolean | Partial<Record<Breakpoint, boolean>>; onOpenChange?: (open: boolean, meta: PanelOpenChangeMeta) => void; open?: never };
|
|
645
611
|
|
|
646
612
|
type PanelSizeControlledProps = { size: number | string; defaultSize?: never };
|
|
@@ -687,16 +653,9 @@ const Panel = React.forwardRef<HTMLDivElement, PanelPublicProps>((props, ref) =>
|
|
|
687
653
|
maxSize = 800,
|
|
688
654
|
resizable = false,
|
|
689
655
|
collapsible = true,
|
|
690
|
-
onExpand,
|
|
691
|
-
onCollapse,
|
|
692
656
|
onResize,
|
|
693
657
|
onResizeStart,
|
|
694
658
|
onResizeEnd,
|
|
695
|
-
snapPoints,
|
|
696
|
-
snapTolerance,
|
|
697
|
-
collapseThreshold,
|
|
698
|
-
paneId,
|
|
699
|
-
persistence,
|
|
700
659
|
children,
|
|
701
660
|
style,
|
|
702
661
|
onSizeChange,
|
|
@@ -723,17 +682,10 @@ const Panel = React.forwardRef<HTMLDivElement, PanelPublicProps>((props, ref) =>
|
|
|
723
682
|
presentationTable,
|
|
724
683
|
builtIn: detailRest,
|
|
725
684
|
onChange: (value, reason) => onOpenChange?.(value !== 'closed', { reason }),
|
|
726
|
-
onExpand,
|
|
727
|
-
onCollapse,
|
|
728
685
|
size: expandedSize,
|
|
729
686
|
});
|
|
730
687
|
useFrameRegistration('panel', flush);
|
|
731
688
|
|
|
732
|
-
React.useEffect(() => {
|
|
733
|
-
if (snapPoints !== undefined || collapseThreshold !== undefined || paneId !== undefined || persistence !== undefined) {
|
|
734
|
-
warnOnce('Shell.Panel: `snapPoints`, `collapseThreshold`, `paneId` and `persistence` are deprecated and are removed in 1.0. Keep the size in your own state with `size`/`onSizeChange`.');
|
|
735
|
-
}
|
|
736
|
-
}, [snapPoints, collapseThreshold, paneId, persistence]);
|
|
737
689
|
|
|
738
690
|
const elementRef = React.useRef<HTMLElement | null>(null);
|
|
739
691
|
const composedRef = useComposedRefs(ref, pane.setElement, elementRef);
|
|
@@ -759,11 +711,6 @@ const Panel = React.forwardRef<HTMLDivElement, PanelPublicProps>((props, ref) =>
|
|
|
759
711
|
onResize,
|
|
760
712
|
onResizeStart,
|
|
761
713
|
onResizeEnd,
|
|
762
|
-
snapPoints,
|
|
763
|
-
snapTolerance,
|
|
764
|
-
collapseThreshold,
|
|
765
|
-
paneId,
|
|
766
|
-
persistence,
|
|
767
714
|
overlaying: pane.overlaying,
|
|
768
715
|
// Asked when the effect runs: the Rail registers its table after this
|
|
769
716
|
// Panel first renders, so the render's answer can be out of date.
|
|
@@ -771,7 +718,6 @@ const Panel = React.forwardRef<HTMLDivElement, PanelPublicProps>((props, ref) =>
|
|
|
771
718
|
const table = followsRail ? (store.entries.get('rail')?.presentationTable ?? FIXED_TABLE) : own.table;
|
|
772
719
|
return table[readBreakpoint()] === 'overlay';
|
|
773
720
|
},
|
|
774
|
-
requestCollapse: () => pane.setValue('closed', 'toggle'),
|
|
775
721
|
requestToggle: () => pane.toggle('toggle'),
|
|
776
722
|
});
|
|
777
723
|
|
|
@@ -782,7 +728,7 @@ const Panel = React.forwardRef<HTMLDivElement, PanelPublicProps>((props, ref) =>
|
|
|
782
728
|
|
|
783
729
|
return (
|
|
784
730
|
<div
|
|
785
|
-
{...
|
|
731
|
+
{...domProps}
|
|
786
732
|
role={domProps.role ?? 'navigation'}
|
|
787
733
|
id={pane.id}
|
|
788
734
|
ref={composedRef}
|
|
@@ -851,14 +797,6 @@ interface TriggerProps extends React.ComponentPropsWithoutRef<'button'> {
|
|
|
851
797
|
* `Button` the trigger: `<Shell.Trigger asChild><Button iconOnly aria-label="Toggle sidebar">…</Button></Shell.Trigger>`.
|
|
852
798
|
*/
|
|
853
799
|
asChild?: boolean;
|
|
854
|
-
/**
|
|
855
|
-
* Whether to show a preview of the target pane on hover while it is closed
|
|
856
|
-
* and not an overlay. Defaults to false.
|
|
857
|
-
*
|
|
858
|
-
* @deprecated Removed in 1.0. A preview reachable only by mouse hover has no
|
|
859
|
-
* keyboard or touch equivalent; open the pane instead.
|
|
860
|
-
*/
|
|
861
|
-
peekOnHover?: boolean;
|
|
862
800
|
}
|
|
863
801
|
|
|
864
802
|
/**
|
|
@@ -868,40 +806,22 @@ interface TriggerProps extends React.ComponentPropsWithoutRef<'button'> {
|
|
|
868
806
|
* consumer's `onClick` first: calling `preventDefault()` there cancels it. With `asChild` the
|
|
869
807
|
* child is the button, and its own `type` stands.
|
|
870
808
|
*/
|
|
871
|
-
const Trigger = React.forwardRef<HTMLButtonElement, TriggerProps>(({ target, action = 'toggle',
|
|
809
|
+
const Trigger = React.forwardRef<HTMLButtonElement, TriggerProps>(({ target, action = 'toggle', asChild = false, onClick, children, ...props }, ref) => {
|
|
872
810
|
const store = useShellStore('Shell.Trigger');
|
|
873
|
-
React.useEffect(() => {
|
|
874
|
-
if (target === 'left') warnOnce('Shell.Trigger target="left" is deprecated and is removed in 1.0. Use target="rail".');
|
|
875
|
-
if (peekOnHover) warnOnce('Shell.Trigger: `peekOnHover` is deprecated and is removed in 1.0.');
|
|
876
|
-
}, [target, peekOnHover]);
|
|
877
|
-
const name: PaneName = target === 'left' ? 'rail' : target;
|
|
878
811
|
// Subscribes to its own pane only.
|
|
879
|
-
const entry = usePaneEntry(store,
|
|
812
|
+
const entry = usePaneEntry(store, target);
|
|
880
813
|
const shown = entry?.value === undefined ? undefined : entry.value !== 'closed';
|
|
881
814
|
|
|
882
815
|
const handleClick = (event: React.MouseEvent<HTMLButtonElement>) => {
|
|
883
816
|
onClick?.(event);
|
|
884
817
|
if (event.defaultPrevented) return;
|
|
885
|
-
const current = store.entries.get(
|
|
818
|
+
const current = store.entries.get(target);
|
|
886
819
|
if (!current) return;
|
|
887
|
-
if (store.peek === name) setShellPeek(store, null);
|
|
888
820
|
if (action === 'toggle') current.toggle('toggle');
|
|
889
821
|
else if (action === 'expand') current.setValue('open', 'toggle');
|
|
890
822
|
else current.setValue('closed', 'toggle');
|
|
891
823
|
};
|
|
892
824
|
|
|
893
|
-
const handleMouseEnter = (event: React.MouseEvent<HTMLButtonElement>) => {
|
|
894
|
-
onMouseEnter?.(event);
|
|
895
|
-
if (!peekOnHover) return;
|
|
896
|
-
const current = store.entries.get(name);
|
|
897
|
-
if (current && current.value === 'closed' && current.presentation !== 'overlay') setShellPeek(store, name);
|
|
898
|
-
};
|
|
899
|
-
|
|
900
|
-
const handleMouseLeave = (event: React.MouseEvent<HTMLButtonElement>) => {
|
|
901
|
-
onMouseLeave?.(event);
|
|
902
|
-
if (peekOnHover && store.peek === name) setShellPeek(store, null);
|
|
903
|
-
};
|
|
904
|
-
|
|
905
825
|
const Comp = asChild ? Slot.Root : 'button';
|
|
906
826
|
return (
|
|
907
827
|
<Comp
|
|
@@ -914,8 +834,6 @@ const Trigger = React.forwardRef<HTMLButtonElement, TriggerProps>(({ target, act
|
|
|
914
834
|
{...props}
|
|
915
835
|
ref={ref}
|
|
916
836
|
onClick={handleClick}
|
|
917
|
-
onMouseEnter={handleMouseEnter}
|
|
918
|
-
onMouseLeave={handleMouseLeave}
|
|
919
837
|
data-shell-trigger={target}
|
|
920
838
|
data-shell-action={action}
|
|
921
839
|
>
|
|
@@ -929,7 +847,6 @@ Trigger.displayName = 'Shell.Trigger';
|
|
|
929
847
|
export {
|
|
930
848
|
Root,
|
|
931
849
|
Header,
|
|
932
|
-
Left,
|
|
933
850
|
Rail,
|
|
934
851
|
Panel,
|
|
935
852
|
Sidebar,
|
|
@@ -940,9 +857,7 @@ export {
|
|
|
940
857
|
PaneHeader,
|
|
941
858
|
PaneFooter,
|
|
942
859
|
Scroll,
|
|
943
|
-
useShell,
|
|
944
860
|
useSidebarMode,
|
|
945
|
-
useResponsivePresentation,
|
|
946
861
|
type PaneMode,
|
|
947
862
|
type SidebarMode,
|
|
948
863
|
type ResponsivePresentation,
|
|
@@ -13,19 +13,11 @@ export type ResponsiveSidebarMode = SidebarMode | Partial<Record<'initial' | 'xs
|
|
|
13
13
|
|
|
14
14
|
export type Responsive<T> = T | Partial<Record<'initial' | 'xs' | 'sm' | 'md' | 'lg' | 'xl', T>>;
|
|
15
15
|
|
|
16
|
-
export type PaneSizePersistence = {
|
|
17
|
-
load?: () => number | Promise<number | undefined> | undefined;
|
|
18
|
-
save?: (size: number) => void | Promise<void>;
|
|
19
|
-
};
|
|
20
|
-
|
|
21
16
|
/**
|
|
22
|
-
* Why a pane's open state changed.
|
|
23
|
-
* `
|
|
24
|
-
* `collapseThreshold`, and `dismiss` for Escape or a press on the scrim.
|
|
25
|
-
* `init`, `responsive`, `panel` and `left` are kept in the types for
|
|
26
|
-
* compatibility and are never sent.
|
|
17
|
+
* Why a pane's open state changed. Only a user action is reported: `toggle` for a Trigger or a
|
|
18
|
+
* handle double-click, and `dismiss` for Escape or a press on the scrim.
|
|
27
19
|
*/
|
|
28
|
-
export type PaneOpenChangeReason = 'toggle' | 'dismiss'
|
|
20
|
+
export type PaneOpenChangeReason = 'toggle' | 'dismiss';
|
|
29
21
|
|
|
30
22
|
export interface PaneBaseProps extends React.ComponentPropsWithoutRef<'div'> {
|
|
31
23
|
presentation?: ResponsivePresentation;
|
|
@@ -34,23 +26,9 @@ export interface PaneBaseProps extends React.ComponentPropsWithoutRef<'div'> {
|
|
|
34
26
|
maxSize?: number;
|
|
35
27
|
resizable?: boolean;
|
|
36
28
|
collapsible?: boolean;
|
|
37
|
-
/** @deprecated Use `onOpenChange`. Still called when a user's toggle or a controlled prop changes whether the pane is shown; never on mount or when the window crosses a breakpoint. */
|
|
38
|
-
onExpand?: () => void;
|
|
39
|
-
/** @deprecated Use `onOpenChange`. Still called when a user's toggle or a controlled prop changes whether the pane is shown; never on mount or when the window crosses a breakpoint. */
|
|
40
|
-
onCollapse?: () => void;
|
|
41
29
|
onResize?: (size: number) => void;
|
|
42
30
|
onResizeStart?: (size: number) => void;
|
|
43
31
|
onResizeEnd?: (size: number) => void;
|
|
44
|
-
/** @deprecated Removed in 1.0. Snap in your own `onSizeChange` and pass `size`. */
|
|
45
|
-
snapPoints?: number[];
|
|
46
|
-
/** @deprecated Removed in 1.0, with `snapPoints`. */
|
|
47
|
-
snapTolerance?: number;
|
|
48
|
-
/** @deprecated Removed in 1.0. Close the pane from your own `onResizeEnd`. */
|
|
49
|
-
collapseThreshold?: number;
|
|
50
|
-
/** @deprecated Removed in 1.0. Keep the size in your own state with `size`/`onSizeChange`. */
|
|
51
|
-
paneId?: string;
|
|
52
|
-
/** @deprecated Removed in 1.0. Keep the size in your own state with `size`/`onSizeChange`. */
|
|
53
|
-
persistence?: PaneSizePersistence;
|
|
54
32
|
}
|
|
55
33
|
|
|
56
34
|
export const _BREAKPOINTS = {
|
|
@@ -66,10 +44,10 @@ export type Breakpoint = 'initial' | keyof typeof _BREAKPOINTS;
|
|
|
66
44
|
/** Every breakpoint, smallest first. The stylesheet's @media blocks follow this order. */
|
|
67
45
|
export const SHELL_BREAKPOINTS: readonly Breakpoint[] = ['initial', 'xs', 'sm', 'md', 'lg', 'xl'];
|
|
68
46
|
|
|
69
|
-
|
|
47
|
+
/** The panes a Trigger can drive. */
|
|
48
|
+
export type PaneTarget = 'rail' | 'panel' | 'sidebar' | 'inspector' | 'bottom';
|
|
70
49
|
|
|
71
|
-
|
|
72
|
-
export type PaneName = Exclude<PaneTarget, 'left'>;
|
|
50
|
+
export type PaneName = PaneTarget;
|
|
73
51
|
|
|
74
52
|
/**
|
|
75
53
|
* CSS custom property key type for type-safe style objects.
|
package/styles.css
CHANGED
|
@@ -6528,6 +6528,18 @@
|
|
|
6528
6528
|
white-space: nowrap;
|
|
6529
6529
|
border: 0;
|
|
6530
6530
|
}
|
|
6531
|
+
.kui-Toolbar:where(.kui-BaseDialogContent > :first-child) {
|
|
6532
|
+
-webkit-margin-before: calc(-1 * var(--layout-space-2));
|
|
6533
|
+
margin-block-start: calc(-1 * var(--layout-space-2));
|
|
6534
|
+
margin-inline: calc(-1 * var(--layout-space-2));
|
|
6535
|
+
-webkit-margin-after: var(--layout-space-6);
|
|
6536
|
+
margin-block-end: var(--layout-space-6);
|
|
6537
|
+
}
|
|
6538
|
+
.kui-ToolbarTitle:where(.kui-BaseDialogContent > .kui-Toolbar:first-child > *) {
|
|
6539
|
+
-webkit-margin-end: auto;
|
|
6540
|
+
margin-inline-end: auto;
|
|
6541
|
+
min-inline-size: 0;
|
|
6542
|
+
}
|
|
6531
6543
|
.kui-AlertDialogContent {
|
|
6532
6544
|
max-width: var(--overlay-w);
|
|
6533
6545
|
}
|
|
@@ -17735,26 +17747,6 @@
|
|
|
17735
17747
|
inline-size: var(--sidebar-size, var(--sidebar-expanded-size, 288px));
|
|
17736
17748
|
}
|
|
17737
17749
|
}
|
|
17738
|
-
.kui-ShellPane[data-peek][data-state],
|
|
17739
|
-
.kui-ShellRail ~ .kui-ShellPanel[data-presentation-follows][data-peek][data-state] {
|
|
17740
|
-
--kui-shell-position: absolute;
|
|
17741
|
-
--kui-shell-z: 4;
|
|
17742
|
-
--kui-shell-pin: fixed;
|
|
17743
|
-
--kui-shell-pin-top: initial;
|
|
17744
|
-
--kui-shell-row: 2 / 3;
|
|
17745
|
-
--kui-shell-col: 1 / -1;
|
|
17746
|
-
--kui-shell-surface: var(--color-surface);
|
|
17747
|
-
--kui-shell-shadow: var(--surface-chrome);
|
|
17748
|
-
--kui-shell-edge: 1px;
|
|
17749
|
-
--kui-shell-offset: var(--shell-rail-offset, 0px);
|
|
17750
|
-
--kui-shell-handle: none;
|
|
17751
|
-
display: -webkit-box;
|
|
17752
|
-
display: -ms-flexbox;
|
|
17753
|
-
display: flex;
|
|
17754
|
-
}
|
|
17755
|
-
.kui-ShellSidebar[data-peek][data-state] {
|
|
17756
|
-
inline-size: var(--peek-sidebar-width, var(--sidebar-size, var(--sidebar-expanded-size, 288px)));
|
|
17757
|
-
}
|
|
17758
17750
|
.kui-ShellScrim {
|
|
17759
17751
|
display: none;
|
|
17760
17752
|
position: absolute;
|