@accelint/design-toolkit 2.5.0 → 3.0.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/dist/components/accordion/index.d.ts +42 -0
- package/dist/components/accordion/index.js.map +1 -1
- package/dist/components/accordion/styles.js +1 -1
- package/dist/components/accordion/styles.js.map +1 -1
- package/dist/components/avatar/index.d.ts +29 -0
- package/dist/components/avatar/index.js.map +1 -1
- package/dist/components/badge/index.d.ts +24 -0
- package/dist/components/badge/index.js.map +1 -1
- package/dist/components/button/index.d.ts +104 -0
- package/dist/components/button/index.js +1 -1
- package/dist/components/button/index.js.map +1 -1
- package/dist/components/button/styles.d.ts +28 -106
- package/dist/components/button/styles.js +1 -1
- package/dist/components/button/styles.js.map +1 -1
- package/dist/components/button/types.d.ts +6 -4
- package/dist/components/checkbox/index.d.ts +33 -0
- package/dist/components/checkbox/index.js.map +1 -1
- package/dist/components/checkbox/styles.d.ts +3 -3
- package/dist/components/checkbox/styles.js +1 -1
- package/dist/components/checkbox/styles.js.map +1 -1
- package/dist/components/chip/index.d.ts +34 -0
- package/dist/components/chip/index.js.map +1 -1
- package/dist/components/chip/styles.js +1 -1
- package/dist/components/chip/styles.js.map +1 -1
- package/dist/components/classification-badge/index.d.ts +15 -0
- package/dist/components/classification-badge/index.js.map +1 -1
- package/dist/components/classification-banner/index.d.ts +11 -0
- package/dist/components/classification-banner/index.js.map +1 -1
- package/dist/components/color-picker/styles.js +1 -1
- package/dist/components/color-picker/styles.js.map +1 -1
- package/dist/components/combobox-field/index.d.ts +19 -0
- package/dist/components/combobox-field/index.js +2 -0
- package/dist/components/combobox-field/index.js.map +1 -0
- package/dist/components/combobox-field/styles.d.ts +72 -0
- package/dist/components/combobox-field/styles.js +2 -0
- package/dist/components/combobox-field/styles.js.map +1 -0
- package/dist/components/combobox-field/types.d.ts +29 -0
- package/dist/components/date-field/index.d.ts +44 -0
- package/dist/components/date-field/index.js.map +1 -1
- package/dist/components/date-field/styles.d.ts +3 -3
- package/dist/components/date-field/styles.js +1 -1
- package/dist/components/date-field/styles.js.map +1 -1
- package/dist/components/dialog/index.d.ts +26 -4
- package/dist/components/dialog/index.js +1 -1
- package/dist/components/dialog/index.js.map +1 -1
- package/dist/components/drawer/events.d.ts +8 -0
- package/dist/components/drawer/events.js +2 -0
- package/dist/components/drawer/events.js.map +1 -0
- package/dist/components/drawer/index.d.ts +89 -43
- package/dist/components/drawer/index.js +1 -1
- package/dist/components/drawer/index.js.map +1 -1
- package/dist/components/drawer/styles.d.ts +50 -16
- package/dist/components/drawer/styles.js +1 -1
- package/dist/components/drawer/styles.js.map +1 -1
- package/dist/components/drawer/types.d.ts +154 -238
- package/dist/components/drawer/types.js +1 -1
- package/dist/components/drawer/types.js.map +1 -1
- package/dist/components/hotkey/index.d.ts +56 -0
- package/dist/components/hotkey/index.js +2 -0
- package/dist/components/hotkey/index.js.map +1 -0
- package/dist/components/hotkey/styles.d.ts +53 -0
- package/dist/components/hotkey/styles.js +2 -0
- package/dist/components/hotkey/styles.js.map +1 -0
- package/dist/components/hotkey/types.d.ts +8 -0
- package/dist/components/hotkey/types.js +2 -0
- package/dist/components/hotkey/types.js.map +1 -0
- package/dist/components/icon/index.d.ts +29 -0
- package/dist/components/icon/index.js.map +1 -1
- package/dist/components/input/index.d.ts +19 -0
- package/dist/components/input/index.js +1 -1
- package/dist/components/input/index.js.map +1 -1
- package/dist/components/input/styles.d.ts +2 -24
- package/dist/components/input/styles.js +1 -1
- package/dist/components/input/styles.js.map +1 -1
- package/dist/components/input/types.d.ts +1 -0
- package/dist/components/label/index.d.ts +19 -0
- package/dist/components/label/index.js.map +1 -1
- package/dist/components/menu/index.d.ts +69 -7
- package/dist/components/menu/index.js +1 -1
- package/dist/components/menu/index.js.map +1 -1
- package/dist/components/menu/styles.d.ts +19 -43
- package/dist/components/menu/styles.js +1 -1
- package/dist/components/menu/styles.js.map +1 -1
- package/dist/components/menu/types.d.ts +17 -15
- package/dist/components/options/index.d.ts +41 -0
- package/dist/components/options/index.js.map +1 -1
- package/dist/components/options/styles.d.ts +3 -3
- package/dist/components/options/styles.js +1 -1
- package/dist/components/options/styles.js.map +1 -1
- package/dist/components/popover/index.d.ts +36 -2
- package/dist/components/popover/index.js +1 -1
- package/dist/components/popover/index.js.map +1 -1
- package/dist/components/query-builder/index.d.ts +24 -0
- package/dist/components/query-builder/index.js.map +1 -1
- package/dist/components/query-builder/value-selector.js +1 -1
- package/dist/components/query-builder/value-selector.js.map +1 -1
- package/dist/components/radio/index.d.ts +31 -0
- package/dist/components/radio/index.js.map +1 -1
- package/dist/components/radio/styles.d.ts +3 -3
- package/dist/components/radio/styles.js +1 -1
- package/dist/components/radio/styles.js.map +1 -1
- package/dist/components/search-field/styles.js +1 -1
- package/dist/components/search-field/styles.js.map +1 -1
- package/dist/components/search-field/types.d.ts +1 -0
- package/dist/components/select-field/index.d.ts +67 -0
- package/dist/components/select-field/index.js +2 -0
- package/dist/components/select-field/index.js.map +1 -0
- package/dist/components/select-field/styles.d.ts +60 -0
- package/dist/components/select-field/styles.js +2 -0
- package/dist/components/select-field/styles.js.map +1 -0
- package/dist/components/select-field/types.d.ts +27 -0
- package/dist/components/select-field/types.js +2 -0
- package/dist/components/select-field/types.js.map +1 -0
- package/dist/components/slider/index.d.ts +36 -2
- package/dist/components/slider/index.js +1 -1
- package/dist/components/slider/index.js.map +1 -1
- package/dist/components/switch/index.d.ts +36 -0
- package/dist/components/switch/index.js +1 -1
- package/dist/components/switch/index.js.map +1 -1
- package/dist/components/switch/styles.d.ts +23 -21
- package/dist/components/switch/styles.js +1 -1
- package/dist/components/switch/styles.js.map +1 -1
- package/dist/components/switch/types.d.ts +1 -0
- package/dist/components/tabs/index.d.ts +46 -0
- package/dist/components/tabs/index.js.map +1 -1
- package/dist/components/text-area-field/index.d.ts +20 -0
- package/dist/components/text-area-field/index.js.map +1 -1
- package/dist/components/text-area-field/styles.d.ts +3 -3
- package/dist/components/text-area-field/styles.js +1 -1
- package/dist/components/text-area-field/styles.js.map +1 -1
- package/dist/components/text-field/index.d.ts +62 -0
- package/dist/components/text-field/index.js.map +1 -1
- package/dist/components/text-field/styles.d.ts +3 -3
- package/dist/components/text-field/types.d.ts +1 -0
- package/dist/components/tooltip/index.d.ts +42 -0
- package/dist/components/tooltip/index.js.map +1 -1
- package/dist/components/view-stack/events.d.ts +9 -0
- package/dist/components/view-stack/events.js +2 -0
- package/dist/components/view-stack/events.js.map +1 -0
- package/dist/components/view-stack/index.d.ts +31 -0
- package/dist/components/view-stack/index.js +2 -0
- package/dist/components/view-stack/index.js.map +1 -0
- package/dist/components/view-stack/types.d.ts +62 -0
- package/dist/components/view-stack/types.js +2 -0
- package/dist/components/view-stack/types.js.map +1 -0
- package/dist/index.css +20 -0
- package/dist/index.d.ts +24 -17
- package/dist/index.js +1 -1
- package/dist/lib/types.d.ts +6 -2
- package/dist/metafile-esm.json +1 -1
- package/dist/styles.css +1081 -676
- package/dist/variants/variants.css +6 -5
- package/package.json +11 -6
- package/dist/components/box/index.d.ts +0 -19
- package/dist/components/box/index.js +0 -2
- package/dist/components/box/index.js.map +0 -1
- package/dist/components/combobox/index.d.ts +0 -27
- package/dist/components/combobox/index.js +0 -2
- package/dist/components/combobox/index.js.map +0 -1
- package/dist/components/drawer/context.d.ts +0 -13
- package/dist/components/drawer/context.js +0 -2
- package/dist/components/drawer/context.js.map +0 -1
- package/dist/components/drawer/state.d.ts +0 -26
- package/dist/components/drawer/state.js +0 -2
- package/dist/components/drawer/state.js.map +0 -1
- package/dist/components/navigation-stack/index.d.ts +0 -20
- package/dist/components/navigation-stack/index.js +0 -2
- package/dist/components/navigation-stack/index.js.map +0 -1
- package/dist/components/navigation-stack/types.d.ts +0 -31
- /package/dist/components/{navigation-stack → combobox-field}/types.js +0 -0
- /package/dist/components/{navigation-stack → combobox-field}/types.js.map +0 -0
|
@@ -1,48 +1,94 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
-
import
|
|
2
|
+
import * as react from 'react';
|
|
3
|
+
import { ComponentPropsWithRef } from 'react';
|
|
4
|
+
import { UniqueId } from '@accelint/core';
|
|
5
|
+
import { ViewStackViewProps } from '../view-stack/types.js';
|
|
6
|
+
import { DrawerProps, DrawerLayoutProps, DrawerMenuProps, DrawerMenuItemProps, DrawerTitleProps, DrawerTriggerProps, DrawerContextValue } from './types.js';
|
|
7
|
+
import '@accelint/bus';
|
|
8
|
+
import 'react-aria-components';
|
|
9
|
+
import '../view-stack/events.js';
|
|
10
|
+
import '../../lib/types.js';
|
|
3
11
|
import '@react-types/shared';
|
|
4
|
-
import '
|
|
12
|
+
import 'tailwind-variants';
|
|
13
|
+
import '../button/types.js';
|
|
14
|
+
import '../button/styles.js';
|
|
15
|
+
import 'tailwind-merge';
|
|
16
|
+
import './events.js';
|
|
17
|
+
import './styles.js';
|
|
5
18
|
|
|
6
|
-
declare const
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
};
|
|
16
|
-
Menu: {
|
|
17
|
-
({ children, className, position, ...props }: DrawerMenuProps): react_jsx_runtime.JSX.Element;
|
|
18
|
-
displayName: string;
|
|
19
|
-
Item: {
|
|
20
|
-
({ id, children, className, ...rest }: DrawerMenuItemProps): react_jsx_runtime.JSX.Element;
|
|
21
|
-
displayName: string;
|
|
22
|
-
};
|
|
23
|
-
};
|
|
24
|
-
Trigger: {
|
|
25
|
-
({ for: drawerId, children, behavior, }: DrawerTriggerProps): react_jsx_runtime.JSX.Element;
|
|
26
|
-
displayName: string;
|
|
27
|
-
};
|
|
28
|
-
Panel: {
|
|
29
|
-
({ id, children, className, ...props }: DrawerPanelProps): react_jsx_runtime.JSX.Element | null;
|
|
30
|
-
displayName: string;
|
|
31
|
-
};
|
|
32
|
-
Header: {
|
|
33
|
-
({ children, className }: DrawerContainerProps): react_jsx_runtime.JSX.Element;
|
|
34
|
-
displayName: string;
|
|
35
|
-
};
|
|
36
|
-
Title: ({ children, className }: DrawerContainerProps) => react_jsx_runtime.JSX.Element;
|
|
37
|
-
Footer: {
|
|
38
|
-
({ children, className }: DrawerContainerProps): react_jsx_runtime.JSX.Element;
|
|
39
|
-
displayName: string;
|
|
40
|
-
};
|
|
41
|
-
Content: {
|
|
42
|
-
({ children, className }: DrawerContainerProps): react_jsx_runtime.JSX.Element;
|
|
43
|
-
displayName: string;
|
|
44
|
-
};
|
|
45
|
-
Provider: ({ children, onStateChange }: DrawerProviderProps) => react_jsx_runtime.JSX.Element;
|
|
19
|
+
declare const DrawerContext: react.Context<DrawerContextValue>;
|
|
20
|
+
declare const DrawerEventHandlers: {
|
|
21
|
+
readonly close: (stack: UniqueId) => void;
|
|
22
|
+
readonly open: (view: UniqueId) => void;
|
|
23
|
+
readonly toggle: (view: UniqueId) => void;
|
|
24
|
+
readonly back: (stack: UniqueId) => void;
|
|
25
|
+
readonly clear: (stack: UniqueId) => void;
|
|
26
|
+
readonly push: (view: UniqueId) => void;
|
|
27
|
+
readonly reset: (stack: UniqueId) => void;
|
|
46
28
|
};
|
|
29
|
+
declare function DrawerTrigger({ children, for: events }: DrawerTriggerProps): react_jsx_runtime.JSX.Element;
|
|
30
|
+
declare namespace DrawerTrigger {
|
|
31
|
+
var displayName: string;
|
|
32
|
+
}
|
|
33
|
+
declare function DrawerLayoutMain({ className, ...rest }: ComponentPropsWithRef<'main'>): react_jsx_runtime.JSX.Element;
|
|
34
|
+
declare namespace DrawerLayoutMain {
|
|
35
|
+
var displayName: string;
|
|
36
|
+
}
|
|
37
|
+
declare function DrawerLayout({ className, extend, push, ...rest }: DrawerLayoutProps): react_jsx_runtime.JSX.Element;
|
|
38
|
+
declare namespace DrawerLayout {
|
|
39
|
+
var displayName: string;
|
|
40
|
+
var Main: typeof DrawerLayoutMain;
|
|
41
|
+
}
|
|
42
|
+
declare function DrawerMenuItem({ for: id, children, className, toggle, views, ...rest }: DrawerMenuItemProps): react_jsx_runtime.JSX.Element | null;
|
|
43
|
+
declare namespace DrawerMenuItem {
|
|
44
|
+
var displayName: string;
|
|
45
|
+
}
|
|
46
|
+
declare function DrawerMenu({ className, position, children, ...rest }: DrawerMenuProps): react_jsx_runtime.JSX.Element;
|
|
47
|
+
declare namespace DrawerMenu {
|
|
48
|
+
var displayName: string;
|
|
49
|
+
var Item: typeof DrawerMenuItem;
|
|
50
|
+
}
|
|
51
|
+
declare function DrawerPanel({ className, ...rest }: ComponentPropsWithRef<'div'>): react_jsx_runtime.JSX.Element;
|
|
52
|
+
declare namespace DrawerPanel {
|
|
53
|
+
var displayName: string;
|
|
54
|
+
}
|
|
55
|
+
declare function DrawerView({ id, children, className, ...rest }: ViewStackViewProps & ComponentPropsWithRef<'div'>): react_jsx_runtime.JSX.Element;
|
|
56
|
+
declare namespace DrawerView {
|
|
57
|
+
var displayName: string;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* To change size of title, use the `level` prop: `1`-`3` (large), `4`-`6` (medium).
|
|
61
|
+
*
|
|
62
|
+
* `level` also changes the semantic heading tag number `h1`-`h6`
|
|
63
|
+
*/
|
|
64
|
+
declare function DrawerHeaderTitle({ className, level, ...rest }: DrawerTitleProps): react_jsx_runtime.JSX.Element;
|
|
65
|
+
declare namespace DrawerHeaderTitle {
|
|
66
|
+
var displayName: string;
|
|
67
|
+
}
|
|
68
|
+
declare function DrawerHeader({ className, ...rest }: ComponentPropsWithRef<'header'>): react_jsx_runtime.JSX.Element;
|
|
69
|
+
declare namespace DrawerHeader {
|
|
70
|
+
var displayName: string;
|
|
71
|
+
var Title: typeof DrawerHeaderTitle;
|
|
72
|
+
}
|
|
73
|
+
declare function DrawerContent({ className, ...rest }: ComponentPropsWithRef<'div'>): react_jsx_runtime.JSX.Element;
|
|
74
|
+
declare namespace DrawerContent {
|
|
75
|
+
var displayName: string;
|
|
76
|
+
}
|
|
77
|
+
declare function DrawerFooter({ className, ...rest }: ComponentPropsWithRef<'footer'>): react_jsx_runtime.JSX.Element;
|
|
78
|
+
declare namespace DrawerFooter {
|
|
79
|
+
var displayName: string;
|
|
80
|
+
}
|
|
81
|
+
declare function Drawer({ id, children, className, defaultView, placement, size, onChange, ...rest }: DrawerProps): react_jsx_runtime.JSX.Element;
|
|
82
|
+
declare namespace Drawer {
|
|
83
|
+
var displayName: string;
|
|
84
|
+
var Layout: typeof DrawerLayout;
|
|
85
|
+
var Menu: typeof DrawerMenu;
|
|
86
|
+
var Panel: typeof DrawerPanel;
|
|
87
|
+
var View: typeof DrawerView;
|
|
88
|
+
var Header: typeof DrawerHeader;
|
|
89
|
+
var Content: typeof DrawerContent;
|
|
90
|
+
var Footer: typeof DrawerFooter;
|
|
91
|
+
var Trigger: typeof DrawerTrigger;
|
|
92
|
+
}
|
|
47
93
|
|
|
48
|
-
export { Drawer };
|
|
94
|
+
export { Drawer, DrawerContext, DrawerEventHandlers };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {jsx}from'react/jsx-runtime';import'client-only';import {
|
|
1
|
+
import {jsx}from'react/jsx-runtime';import'client-only';import {containsExactChildren}from'./../../lib/react.js';import {Broadcast}from'@accelint/bus';import {isUUID}from'@accelint/core';import {Pressable}from'@react-aria/interactions';import {createContext,useRef,useState,useCallback,useEffect,useContext}from'react';import {composeRenderProps,Heading,Header}from'react-aria-components';import {ToggleButton}from'../button/index.js';import {Icon}from'../icon/index.js';import {ViewStackEventHandlers,ViewStack,ViewStackContext}from'../view-stack/index.js';import {ViewStackEventTypes}from'../view-stack/events.js';import {DrawerEventTypes}from'./events.js';import {DrawerStyles,DrawerMenuStyles,DrawerTitleStyles}from'./styles.js';const {layout:j,main:ee,drawer:re,panel:te,view:ae,header:ne,content:oe,footer:ie}=DrawerStyles(),{menu:se,item:pe}=DrawerMenuStyles(),l=Broadcast.getInstance(),R=createContext({register:()=>{},unregister:()=>{}}),le={...ViewStackEventHandlers,close:ViewStackEventHandlers.clear,open:e=>l.emit(DrawerEventTypes.open,{view:e}),toggle:e=>l.emit(DrawerEventTypes.toggle,{view:e})};function g({children:e,for:r}){const{parent:n}=useContext(ViewStackContext);function o(){for(const i of Array.isArray(r)?r:[r]){let[p,m]=isUUID(i)?["push",i]:i.split(":");m??=n,m&&le[p](m);}}return jsx(Pressable,{onPress:o,children:e})}g.displayName="Drawer.Trigger";function q({className:e,...r}){return jsx("main",{...r,className:ee({className:e})})}q.displayName="Drawer.Layout.Main";function P({className:e,extend:r="left right",push:n,...o}){return jsx("div",{...o,className:j({className:e}),"data-extend":r,"data-push":n})}P.displayName="Drawer.Layout",P.Main=q;function N({for:e,children:r,className:n,toggle:o,views:i,...p}){const{parent:m,stack:y}=useContext(ViewStackContext),c=y.at(-1),w=o?"toggle":"open";return m?jsx(g,{for:`${w}:${e}`,children:jsx(ToggleButton,{...p,className:composeRenderProps(n,u=>pe({className:u})),role:"tab",variant:"icon",isSelected:e===c||!!i?.some(u=>e===u),children:composeRenderProps(r,u=>jsx(Icon,{children:u}))})}):null}N.displayName="Drawer.Menu.Item";function d({className:e,position:r="center",children:n,...o}){return containsExactChildren({children:n,componentName:d.displayName,restrictions:[[N,{min:1}],[g,{min:0,max:0}]]}),jsx("nav",{...o,className:se({position:r,className:e}),children:n})}d.displayName="Drawer.Menu",d.Item=N;function h({className:e,...r}){return jsx("div",{...r,className:te({className:e})})}h.displayName="Drawer.Panel";function H({id:e,children:r,className:n,...o}){const{register:i,unregister:p}=useContext(R);return useEffect(()=>{i(e);},[i,p,e]),jsx(ViewStack.View,{id:e,children:jsx("div",{...o,className:ae({className:n}),role:"tabpanel",children:r})})}H.displayName="Drawer.View";function b({className:e,level:r,...n}){return jsx(Heading,{...n,className:DrawerTitleStyles({className:e,level:r}),level:r})}b.displayName="Drawer.Title";function C({className:e,...r}){return jsx(Header,{...r,className:ne({className:e})})}C.displayName="Drawer.Header",C.Title=b;function L({className:e,...r}){return jsx("div",{...r,className:oe({className:e})})}L.displayName="Drawer.Content";function W({className:e,...r}){return jsx("footer",{...r,className:ie({className:e})})}W.displayName="Drawer.Footer";function s({id:e,children:r,className:n,defaultView:o,placement:i="left",size:p="medium",onChange:m,...y}){containsExactChildren({children:r,componentName:s.displayName,restrictions:[[d,{min:0,max:1}],[h,{min:1,max:1}]]});const c=useRef(new Set),[w,u]=useState(o||null),T=useCallback(a=>{c.current.has(a?.payload?.view)&&(l.emit(ViewStackEventTypes.clear,{stack:e}),l.emit(ViewStackEventTypes.push,a.payload));},[e]),V=useCallback(a=>{c.current.has(a?.payload?.view)&&(l.emit(ViewStackEventTypes.clear,{stack:e}),w!==a?.payload?.view&&l.emit(ViewStackEventTypes.push,a.payload));},[e,w]);return useEffect(()=>{const a=[l.on(DrawerEventTypes.open,T),l.on(DrawerEventTypes.toggle,V)];return ()=>{for(const A of a)A();}},[T,V]),jsx(R.Provider,{value:{register:a=>c.current.add(a),unregister:a=>c.current.delete(a)},children:jsx(ViewStack,{id:e,defaultView:o,onChange:a=>{u(a),m?.(a);},children:jsx("div",{...y,className:re({className:n}),"data-open":!!w||null,"data-placement":i,"data-size":p,children:r})})})}s.displayName="Drawer",s.Layout=P,s.Menu=d,s.Panel=h,s.View=H,s.Header=C,s.Content=L,s.Footer=W,s.Trigger=g;export{s as Drawer,R as DrawerContext,le as DrawerEventHandlers};//# sourceMappingURL=index.js.map
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/drawer/index.tsx"],"names":["panel","title","menu","DrawerMenuStyles","O","children","onStateChange","useDrawersState","DrawersContext","R","drawerState","B","DrawerLayout","className","extend","jsx","push","isOpen","getDrawerState","registerDrawer","initialState","createDefaultDrawerState","id","$","k","onOpenChange","DrawerContext","currentState","t","H","rest","placement","size","DrawerMenu","position","props","DrawerMenuItem","isSelectedMenuItem","w","handlePress","openDrawer","state","Button","h","item","isSelected","Icon","F","u","toggleDrawer","handleOnPress","behavior","L","drawerId","closeDrawer","PressResponder","x","DrawerTrigger","b","DrawerHeader","DrawerMain","DrawerContent","Drawer","DrawerPanel","DrawerTitle","DrawerFooter","DrawerProvider"],"mappings":"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","file":"index.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n'use client';\nimport 'client-only';\nimport { PressResponder, Pressable } from '@react-aria/interactions';\nimport { useCallback, useEffect } from 'react';\nimport { Button } from '../button';\nimport { Icon } from '../icon';\nimport {\n DrawerContext,\n DrawersContext,\n useDrawerContext,\n useDrawersContext,\n useDrawersState,\n} from './context';\nimport { createDefaultDrawerState } from './state';\nimport { DrawerMenuStyles, DrawerStyles } from './styles';\nimport type {\n DrawerContainerProps,\n DrawerLayoutProps,\n DrawerMenuItemProps,\n DrawerMenuProps,\n DrawerPanelProps,\n DrawerProps,\n DrawerProviderProps,\n DrawerTriggerProps,\n} from './types';\n\nconst { layout, main, drawer, content, panel, header, footer, title } =\n DrawerStyles();\n\nconst { menu, item } = DrawerMenuStyles();\n\nconst DrawerProvider = ({ children, onStateChange }: DrawerProviderProps) => {\n const drawerState = useDrawersState({\n onStateChange,\n });\n\n return (\n <DrawersContext.Provider value={drawerState}>\n {children}\n </DrawersContext.Provider>\n );\n};\n\nconst DrawerLayout = ({\n children,\n className,\n extend = 'left right',\n push,\n}: DrawerLayoutProps) => {\n return (\n <div\n className={layout({ className })}\n data-extend={extend}\n data-push={push}\n >\n {children}\n </div>\n );\n};\nDrawerLayout.displayName = 'Drawer.Layout';\n\nexport const Drawer = ({\n id,\n placement = 'left',\n isOpen = false,\n size = 'medium',\n defaultSelectedMenuItemId,\n className,\n children,\n onOpenChange,\n onStateChange,\n ...rest\n}: DrawerProps) => {\n const { getDrawerState, registerDrawer } = useDrawersContext();\n const currentState = getDrawerState(id);\n\n // biome-ignore lint/correctness/useExhaustiveDependencies: this should only run if these props change\n useEffect(() => {\n const initialState = createDefaultDrawerState({\n id,\n selectedMenuItemId: defaultSelectedMenuItemId,\n isOpen,\n });\n registerDrawer(initialState, {\n onOpenChange,\n onStateChange,\n });\n }, [isOpen, size, placement]);\n\n return (\n <DrawerContext.Provider value={{ state: currentState }}>\n <div\n {...rest}\n className={drawer({ className })}\n data-placement={placement}\n data-drawer-id={id}\n data-size={size}\n data-open={currentState.isOpen || null}\n >\n {children}\n </div>\n </DrawerContext.Provider>\n );\n};\n\nconst DrawerMenu = ({\n children,\n className,\n position = 'middle',\n ...props\n}: DrawerMenuProps) => {\n return (\n <nav\n className={menu({\n position,\n className,\n })}\n {...props}\n >\n {children}\n </nav>\n );\n};\nDrawerMenu.displayName = 'Drawer.Menu';\n\nconst DrawerMenuItem = ({\n id,\n children,\n className,\n ...rest\n}: DrawerMenuItemProps) => {\n const { openDrawer, isSelectedMenuItem } = useDrawersContext();\n const { state } = useDrawerContext();\n const isSelected = isSelectedMenuItem(state.selectedMenuItemId, id);\n\n const handlePress = () => {\n openDrawer(state.id, id);\n };\n return (\n <Button\n {...rest}\n variant='icon'\n className={item({ className })}\n aria-selected={isSelected}\n aria-controls={`panel-${id}`}\n id={`tab-${id}`}\n data-selected={isSelected ? true : undefined}\n onPress={handlePress}\n >\n <Icon>{children}</Icon>\n </Button>\n );\n};\nDrawerMenuItem.displayName = 'Drawer.Menu.Item';\n\nconst DrawerPanel = ({\n id,\n children,\n className,\n ...props\n}: DrawerPanelProps) => {\n const { state } = useDrawerContext();\n const isSelected = state?.selectedMenuItemId === id;\n\n if (!isSelected) {\n return null;\n }\n\n return (\n <div\n {...props}\n className={panel({ className })}\n id={`panel-${id}`}\n role='tabpanel'\n aria-labelledby={`tab-${id}`}\n >\n {children}\n </div>\n );\n};\nDrawerPanel.displayName = 'Drawer.Panel';\n\nconst DrawerTrigger = ({\n for: drawerId,\n children,\n behavior = 'toggle',\n}: DrawerTriggerProps) => {\n const { toggleDrawer, openDrawer, closeDrawer } = useDrawersContext();\n\n const handleOnPress = useCallback(() => {\n if (behavior === 'open') {\n openDrawer(drawerId);\n } else if (behavior === 'close') {\n closeDrawer(drawerId);\n } else {\n toggleDrawer(drawerId);\n }\n }, [behavior, drawerId, openDrawer, closeDrawer, toggleDrawer]);\n\n return (\n <PressResponder onPress={handleOnPress}>\n <Pressable>{children}</Pressable>\n </PressResponder>\n );\n};\nDrawerTrigger.displayName = 'Drawer.Trigger';\n\nconst DrawerHeader = ({ children, className }: DrawerContainerProps) => {\n return (\n <div\n className={header({\n className,\n })}\n >\n {children}\n </div>\n );\n};\nDrawerHeader.displayName = 'Drawer.Header';\n\nconst DrawerTitle = ({ children, className }: DrawerContainerProps) => {\n return <div className={title({ className })}>{children}</div>;\n};\nDrawerHeader.displayName = 'Drawer.Title';\n\nconst DrawerFooter = ({ children, className }: DrawerContainerProps) => {\n return <div className={footer({ className })}>{children}</div>;\n};\nDrawerFooter.displayName = 'Drawer.Footer';\n\nconst DrawerMain = ({ children, className }: DrawerContainerProps) => (\n <main className={main({ className })}>{children}</main>\n);\nDrawerMain.displayName = 'Drawer.Main';\n\nconst DrawerContent = ({ children, className }: DrawerContainerProps) => {\n return <div className={content({ className })}>{children}</div>;\n};\nDrawerContent.displayName = 'Drawer.Content';\n\nDrawer.Layout = DrawerLayout;\nDrawer.Main = DrawerMain;\nDrawerMenu.Item = DrawerMenuItem;\nDrawer.Menu = DrawerMenu;\nDrawer.Trigger = DrawerTrigger;\nDrawer.Panel = DrawerPanel;\nDrawer.Header = DrawerHeader;\nDrawer.Title = DrawerTitle;\nDrawer.Footer = DrawerFooter;\nDrawer.Content = DrawerContent;\nDrawer.Provider = DrawerProvider;\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/drawer/index.tsx"],"names":["header","DrawerStyles","item","bus","Broadcast","createContext","Z","Y","B","ViewStackEventHandlers","$","view","U","D","DrawerTrigger","children","events","useContext","ViewStackContext","handlePress","type","v","E","isUUID","id","parent","DrawerEventHandlers","event","jsx","Pressable","t","O","className","rest","main","DrawerLayoutMain","DrawerLayout","extend","push","DrawerMenuItem","toggle","action","composeRenderProps","Q","S","views","X","DrawerMenu","position","I","DrawerPanel","panel","register","DrawerContext","useEffect","ViewStack","x","M","DrawerHeaderTitle","level","K","_","DrawerHeader","J","DrawerContent","content","defaultView","placement","size","activeView","setActiveView","useState","useCallback","data","G","ViewStackEventTypes","k","handleToggle","f","listeners","DrawerEventTypes","off","handleOpen","onChange","drawer","Drawer","DrawerFooter"],"mappings":"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","file":"index.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n'use client';\n\nimport 'client-only';\nimport { containsExactChildren } from '@/lib/react';\nimport { Broadcast } from '@accelint/bus';\nimport { type UniqueId, isUUID } from '@accelint/core';\nimport { Pressable } from '@react-aria/interactions';\nimport {\n type ComponentPropsWithRef,\n createContext,\n useCallback,\n useContext,\n useEffect,\n useRef,\n useState,\n} from 'react';\nimport { Header, Heading, composeRenderProps } from 'react-aria-components';\nimport { ToggleButton } from '../button';\nimport { Icon } from '../icon';\nimport {\n ViewStack,\n ViewStackContext,\n ViewStackEventHandlers,\n} from '../view-stack';\nimport { ViewStackEventTypes } from '../view-stack/events';\nimport type { ViewStackViewProps } from '../view-stack/types';\nimport { DrawerEventTypes } from './events';\nimport { DrawerMenuStyles, DrawerStyles, DrawerTitleStyles } from './styles';\nimport type {\n DrawerContextValue,\n DrawerEvent,\n DrawerLayoutProps,\n DrawerMenuItemProps,\n DrawerMenuProps,\n DrawerOpenEvent,\n DrawerProps,\n DrawerTitleProps,\n DrawerToggleEvent,\n DrawerTriggerProps,\n} from './types';\n\nconst { layout, main, drawer, panel, view, header, content, footer } =\n DrawerStyles();\nconst { menu, item } = DrawerMenuStyles();\nconst bus = Broadcast.getInstance<DrawerEvent>();\n\nexport const DrawerContext = createContext<DrawerContextValue>({\n register: () => undefined,\n unregister: () => undefined,\n});\n\nexport const DrawerEventHandlers = {\n ...ViewStackEventHandlers,\n close: ViewStackEventHandlers.clear,\n open: (view: UniqueId) => bus.emit(DrawerEventTypes.open, { view }),\n toggle: (view: UniqueId) => bus.emit(DrawerEventTypes.toggle, { view }),\n} as const;\n\nfunction DrawerTrigger({ children, for: events }: DrawerTriggerProps) {\n const { parent } = useContext(ViewStackContext);\n\n function handlePress() {\n for (const type of Array.isArray(events) ? events : [events]) {\n let [event, id] = (isUUID(type) ? ['push', type] : type.split(':')) as [\n 'back' | 'clear' | 'close' | 'open' | 'push' | 'reset' | 'toggle',\n UniqueId | undefined | null,\n ];\n\n id ??= parent;\n\n if (!id) {\n continue;\n }\n\n DrawerEventHandlers[event](id);\n }\n }\n\n return <Pressable onPress={handlePress}>{children}</Pressable>;\n}\nDrawerTrigger.displayName = 'Drawer.Trigger';\n\nfunction DrawerLayoutMain({\n className,\n ...rest\n}: ComponentPropsWithRef<'main'>) {\n return <main {...rest} className={main({ className })} />;\n}\nDrawerLayoutMain.displayName = 'Drawer.Layout.Main';\n\nfunction DrawerLayout({\n className,\n extend = 'left right',\n push,\n ...rest\n}: DrawerLayoutProps) {\n return (\n <div\n {...rest}\n className={layout({ className })}\n data-extend={extend}\n data-push={push}\n />\n );\n}\nDrawerLayout.displayName = 'Drawer.Layout';\nDrawerLayout.Main = DrawerLayoutMain;\n\nfunction DrawerMenuItem({\n for: id,\n children,\n className,\n toggle,\n views,\n ...rest\n}: DrawerMenuItemProps) {\n const { parent, stack } = useContext(ViewStackContext);\n const view = stack.at(-1);\n const action = toggle ? 'toggle' : 'open';\n\n if (!parent) {\n return null;\n }\n\n return (\n <DrawerTrigger for={`${action}:${id}`}>\n <ToggleButton\n {...rest}\n className={composeRenderProps(className, (className) =>\n item({ className }),\n )}\n role='tab'\n variant='icon'\n isSelected={id === view || !!views?.some((view) => id === view)}\n >\n {composeRenderProps(children, (children) => (\n <Icon>{children}</Icon>\n ))}\n </ToggleButton>\n </DrawerTrigger>\n );\n}\nDrawerMenuItem.displayName = 'Drawer.Menu.Item';\n\nfunction DrawerMenu({\n className,\n position = 'center',\n children,\n ...rest\n}: DrawerMenuProps) {\n containsExactChildren({\n children,\n componentName: DrawerMenu.displayName,\n restrictions: [\n [DrawerMenuItem, { min: 1 }],\n [DrawerTrigger, { min: 0, max: 0 }],\n ],\n });\n return (\n <nav\n {...rest}\n className={menu({\n position,\n className,\n })}\n >\n {children}\n </nav>\n );\n}\nDrawerMenu.displayName = 'Drawer.Menu';\nDrawerMenu.Item = DrawerMenuItem;\n\nfunction DrawerPanel({ className, ...rest }: ComponentPropsWithRef<'div'>) {\n return <div {...rest} className={panel({ className })} />;\n}\nDrawerPanel.displayName = 'Drawer.Panel';\n\nfunction DrawerView({\n id,\n children,\n className,\n ...rest\n}: ViewStackViewProps & ComponentPropsWithRef<'div'>) {\n const { register, unregister } = useContext(DrawerContext);\n\n useEffect(() => {\n register(id);\n\n () => unregister(id);\n }, [register, unregister, id]);\n\n return (\n <ViewStack.View id={id}>\n <div {...rest} className={view({ className })} role='tabpanel'>\n {children}\n </div>\n </ViewStack.View>\n );\n}\nDrawerView.displayName = 'Drawer.View';\n\n/**\n * To change size of title, use the `level` prop: `1`-`3` (large), `4`-`6` (medium).\n *\n * `level` also changes the semantic heading tag number `h1`-`h6`\n */\nfunction DrawerHeaderTitle({ className, level, ...rest }: DrawerTitleProps) {\n return (\n <Heading\n {...rest}\n className={DrawerTitleStyles({ className, level })}\n level={level}\n />\n );\n}\nDrawerHeaderTitle.displayName = 'Drawer.Title';\n\nfunction DrawerHeader({ className, ...rest }: ComponentPropsWithRef<'header'>) {\n return <Header {...rest} className={header({ className })} />;\n}\nDrawerHeader.displayName = 'Drawer.Header';\nDrawerHeader.Title = DrawerHeaderTitle;\n\nfunction DrawerContent({ className, ...rest }: ComponentPropsWithRef<'div'>) {\n return <div {...rest} className={content({ className })} />;\n}\nDrawerContent.displayName = 'Drawer.Content';\n\nfunction DrawerFooter({ className, ...rest }: ComponentPropsWithRef<'footer'>) {\n return <footer {...rest} className={footer({ className })} />;\n}\nDrawerFooter.displayName = 'Drawer.Footer';\n\nexport function Drawer({\n id,\n children,\n className,\n defaultView,\n placement = 'left',\n size = 'medium',\n onChange,\n ...rest\n}: DrawerProps) {\n containsExactChildren({\n children,\n componentName: Drawer.displayName,\n restrictions: [\n [DrawerMenu, { min: 0, max: 1 }],\n [DrawerPanel, { min: 1, max: 1 }],\n ],\n });\n\n const views = useRef(new Set<UniqueId>());\n const [activeView, setActiveView] = useState<UniqueId | null>(\n defaultView || null,\n );\n\n const handleOpen = useCallback(\n (data: DrawerOpenEvent) => {\n if (views.current.has(data?.payload?.view)) {\n bus.emit(ViewStackEventTypes.clear, { stack: id });\n bus.emit(ViewStackEventTypes.push, data.payload);\n }\n },\n [id],\n );\n const handleToggle = useCallback(\n (data: DrawerToggleEvent) => {\n if (views.current.has(data?.payload?.view)) {\n bus.emit(ViewStackEventTypes.clear, { stack: id });\n if (activeView !== data?.payload?.view) {\n bus.emit(ViewStackEventTypes.push, data.payload);\n }\n }\n },\n [id, activeView],\n );\n\n useEffect(() => {\n const listeners = [\n bus.on(DrawerEventTypes.open, handleOpen),\n bus.on(DrawerEventTypes.toggle, handleToggle),\n ];\n\n return () => {\n for (const off of listeners) {\n off();\n }\n };\n }, [handleOpen, handleToggle]);\n\n return (\n <DrawerContext.Provider\n value={{\n register: (view: UniqueId) => views.current.add(view),\n unregister: (view: UniqueId) => views.current.delete(view),\n }}\n >\n <ViewStack\n id={id}\n defaultView={defaultView}\n onChange={(view) => {\n setActiveView(view);\n onChange?.(view);\n }}\n >\n <div\n {...rest}\n className={drawer({ className })}\n data-open={!!activeView || null}\n data-placement={placement}\n data-size={size}\n >\n {children}\n </div>\n </ViewStack>\n </DrawerContext.Provider>\n );\n}\nDrawer.displayName = 'Drawer';\n\nDrawer.Layout = DrawerLayout;\nDrawer.Menu = DrawerMenu;\nDrawer.Panel = DrawerPanel;\nDrawer.View = DrawerView;\nDrawer.Header = DrawerHeader;\nDrawer.Content = DrawerContent;\nDrawer.Footer = DrawerFooter;\nDrawer.Trigger = DrawerTrigger;\n"]}
|
|
@@ -5,10 +5,10 @@ declare const DrawerStyles: tailwind_variants.TVReturnType<{
|
|
|
5
5
|
[key: string]: {
|
|
6
6
|
[key: string]: tailwind_merge.ClassNameValue | {
|
|
7
7
|
content?: tailwind_merge.ClassNameValue;
|
|
8
|
+
main?: tailwind_merge.ClassNameValue;
|
|
8
9
|
footer?: tailwind_merge.ClassNameValue;
|
|
9
10
|
header?: tailwind_merge.ClassNameValue;
|
|
10
|
-
|
|
11
|
-
title?: tailwind_merge.ClassNameValue;
|
|
11
|
+
view?: tailwind_merge.ClassNameValue;
|
|
12
12
|
panel?: tailwind_merge.ClassNameValue;
|
|
13
13
|
layout?: tailwind_merge.ClassNameValue;
|
|
14
14
|
drawer?: tailwind_merge.ClassNameValue;
|
|
@@ -18,10 +18,10 @@ declare const DrawerStyles: tailwind_variants.TVReturnType<{
|
|
|
18
18
|
[x: string]: {
|
|
19
19
|
[x: string]: tailwind_merge.ClassNameValue | {
|
|
20
20
|
content?: tailwind_merge.ClassNameValue;
|
|
21
|
+
main?: tailwind_merge.ClassNameValue;
|
|
21
22
|
footer?: tailwind_merge.ClassNameValue;
|
|
22
23
|
header?: tailwind_merge.ClassNameValue;
|
|
23
|
-
|
|
24
|
-
title?: tailwind_merge.ClassNameValue;
|
|
24
|
+
view?: tailwind_merge.ClassNameValue;
|
|
25
25
|
panel?: tailwind_merge.ClassNameValue;
|
|
26
26
|
layout?: tailwind_merge.ClassNameValue;
|
|
27
27
|
drawer?: tailwind_merge.ClassNameValue;
|
|
@@ -31,19 +31,19 @@ declare const DrawerStyles: tailwind_variants.TVReturnType<{
|
|
|
31
31
|
layout: string[];
|
|
32
32
|
main: string;
|
|
33
33
|
drawer: string[];
|
|
34
|
-
content: string[];
|
|
35
34
|
panel: string[];
|
|
35
|
+
view: string;
|
|
36
|
+
content: string[];
|
|
36
37
|
header: string[];
|
|
37
|
-
title: string;
|
|
38
38
|
footer: string;
|
|
39
39
|
}, undefined, {
|
|
40
40
|
[key: string]: {
|
|
41
41
|
[key: string]: tailwind_merge.ClassNameValue | {
|
|
42
42
|
content?: tailwind_merge.ClassNameValue;
|
|
43
|
+
main?: tailwind_merge.ClassNameValue;
|
|
43
44
|
footer?: tailwind_merge.ClassNameValue;
|
|
44
45
|
header?: tailwind_merge.ClassNameValue;
|
|
45
|
-
|
|
46
|
-
title?: tailwind_merge.ClassNameValue;
|
|
46
|
+
view?: tailwind_merge.ClassNameValue;
|
|
47
47
|
panel?: tailwind_merge.ClassNameValue;
|
|
48
48
|
layout?: tailwind_merge.ClassNameValue;
|
|
49
49
|
drawer?: tailwind_merge.ClassNameValue;
|
|
@@ -53,27 +53,61 @@ declare const DrawerStyles: tailwind_variants.TVReturnType<{
|
|
|
53
53
|
layout: string[];
|
|
54
54
|
main: string;
|
|
55
55
|
drawer: string[];
|
|
56
|
-
content: string[];
|
|
57
56
|
panel: string[];
|
|
57
|
+
view: string;
|
|
58
|
+
content: string[];
|
|
58
59
|
header: string[];
|
|
59
|
-
title: string;
|
|
60
60
|
footer: string;
|
|
61
61
|
}, tailwind_variants.TVReturnType<unknown, {
|
|
62
62
|
layout: string[];
|
|
63
63
|
main: string;
|
|
64
64
|
drawer: string[];
|
|
65
|
-
content: string[];
|
|
66
65
|
panel: string[];
|
|
66
|
+
view: string;
|
|
67
|
+
content: string[];
|
|
67
68
|
header: string[];
|
|
68
|
-
title: string;
|
|
69
69
|
footer: string;
|
|
70
70
|
}, undefined, unknown, unknown, undefined>>;
|
|
71
|
+
declare const DrawerTitleStylesDefaults: {
|
|
72
|
+
readonly level: 2;
|
|
73
|
+
};
|
|
74
|
+
declare const DrawerTitleStyles: tailwind_variants.TVReturnType<{
|
|
75
|
+
level: {
|
|
76
|
+
1: string;
|
|
77
|
+
2: string;
|
|
78
|
+
3: string;
|
|
79
|
+
4: string;
|
|
80
|
+
5: string;
|
|
81
|
+
6: string;
|
|
82
|
+
};
|
|
83
|
+
}, undefined, "w-full text-default-light", {
|
|
84
|
+
level: {
|
|
85
|
+
1: string;
|
|
86
|
+
2: string;
|
|
87
|
+
3: string;
|
|
88
|
+
4: string;
|
|
89
|
+
5: string;
|
|
90
|
+
6: string;
|
|
91
|
+
};
|
|
92
|
+
}, undefined, tailwind_variants.TVReturnType<{
|
|
93
|
+
level: {
|
|
94
|
+
1: string;
|
|
95
|
+
2: string;
|
|
96
|
+
3: string;
|
|
97
|
+
4: string;
|
|
98
|
+
5: string;
|
|
99
|
+
6: string;
|
|
100
|
+
};
|
|
101
|
+
}, undefined, "w-full text-default-light", unknown, unknown, undefined>>;
|
|
102
|
+
declare const DrawerMenuStylesDefaults: {
|
|
103
|
+
readonly position: "center";
|
|
104
|
+
};
|
|
71
105
|
declare const DrawerMenuStyles: tailwind_variants.TVReturnType<{
|
|
72
106
|
position: {
|
|
73
107
|
start: {
|
|
74
108
|
menu: string[];
|
|
75
109
|
};
|
|
76
|
-
|
|
110
|
+
center: {
|
|
77
111
|
menu: string[];
|
|
78
112
|
};
|
|
79
113
|
end: {
|
|
@@ -88,7 +122,7 @@ declare const DrawerMenuStyles: tailwind_variants.TVReturnType<{
|
|
|
88
122
|
start: {
|
|
89
123
|
menu: string[];
|
|
90
124
|
};
|
|
91
|
-
|
|
125
|
+
center: {
|
|
92
126
|
menu: string[];
|
|
93
127
|
};
|
|
94
128
|
end: {
|
|
@@ -103,7 +137,7 @@ declare const DrawerMenuStyles: tailwind_variants.TVReturnType<{
|
|
|
103
137
|
start: {
|
|
104
138
|
menu: string[];
|
|
105
139
|
};
|
|
106
|
-
|
|
140
|
+
center: {
|
|
107
141
|
menu: string[];
|
|
108
142
|
};
|
|
109
143
|
end: {
|
|
@@ -115,4 +149,4 @@ declare const DrawerMenuStyles: tailwind_variants.TVReturnType<{
|
|
|
115
149
|
item: string[];
|
|
116
150
|
}, undefined, unknown, unknown, undefined>>;
|
|
117
151
|
|
|
118
|
-
export { DrawerMenuStyles, DrawerStyles };
|
|
152
|
+
export { DrawerMenuStyles, DrawerMenuStylesDefaults, DrawerStyles, DrawerTitleStyles, DrawerTitleStylesDefaults };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {tv}from'tailwind-variants';const
|
|
1
|
+
import {tv}from'tailwind-variants';const o=tv({slots:{layout:["[--drawer-main-row-start:1]","data-[push~=top]:[--drawer-main-row-start:2]","[--drawer-main-row-end:4]","data-[push~=bottom]:[--drawer-main-row-end:3]","[--drawer-main-col-start:1]","data-[push~=left]:[--drawer-main-col-start:2]","[--drawer-main-col-end:4]","data-[push~=right]:[--drawer-main-col-end:3]","[--drawer-menu-size:40px]","[--drawer-size-small:100px]","[--drawer-size-medium:200px]","[--drawer-size-large:400px]","[--route-layout-grid-cols:auto_1fr_auto]","[--route-layout-grid-rows:auto_1fr_auto]","[--drawer-main-cols:var(--drawer-main-col-start)/var(--drawer-main-col-end)]","[--drawer-main-rows:var(--drawer-main-row-start)/var(--drawer-main-row-end)]","group/layout relative top-[var(--classification-banner-height)]","grid grid-cols-[var(--route-layout-grid-cols)] grid-rows-[var(--route-layout-grid-rows)]","transition-[grid-template-columns,grid-template-rows]","h-full max-h-full w-full"],main:"relative z-1 col-[var(--drawer-main-cols)] row-[var(--drawer-main-rows)]",drawer:["group/drawer","bg-surface-default text-body-m","relative z-5 flex h-full min-h-0 flex-col","pointer-events-none [&>*]:pointer-events-auto","placement-top:col-start-2 placement-top:col-end-3 placement-top:row-start-1 placement-top:row-end-2","placement-bottom:col-start-2 placement-bottom:col-end-3 placement-bottom:row-start-3 placement-bottom:row-end-4","placement-left:col-start-1 placement-left:col-end-2 placement-left:row-start-2 placement-left:row-end-3","placement-right:col-start-3 placement-right:col-end-4 placement-right:row-start-2 placement-right:row-end-3","group-data-[extend~=top]/layout:placement-top:col-span-full","group-data-[extend~=bottom]/layout:placement-bottom:col-span-full","group-data-[extend~=left]/layout:placement-left:row-span-full","group-data-[extend~=right]/layout:placement-right:row-span-full","group-data-[extend=top]/layout:placement-left:row-end-4 group-data-[extend=top]/layout:placement-right:row-end-4","group-data-[extend=bottom]/layout:placement-left:row-start-1 group-data-[extend=bottom]/layout:placement-right:row-start-1","group-data-[extend=left]/layout:placement-bottom:col-end-4 group-data-[extend=left]/layout:placement-top:col-end-4","group-data-[extend=right]/layout:placement-bottom:col-start-1 group-data-[extend=right]/layout:placement-top:col-start-1"],panel:["hidden h-full min-h-0 flex-col gap-s p-l","group-open/drawer:flex","group-placement-left/drawer:group-size-large/drawer:w-[var(--drawer-size-large)] group-placement-left/drawer:group-size-medium/drawer:w-[var(--drawer-size-medium)] group-placement-left/drawer:group-size-small/drawer:w-[var(--drawer-size-small)]","group-placement-right/drawer:group-size-large/drawer:w-[var(--drawer-size-large)] group-placement-right/drawer:group-size-medium/drawer:w-[var(--drawer-size-medium)] group-placement-right/drawer:group-size-small/drawer:w-[var(--drawer-size-small)]","group-placement-top/drawer:group-size-large/drawer:h-[var(--drawer-size-large)] group-placement-top/drawer:group-size-medium/drawer:h-[var(--drawer-size-medium)] group-placement-top/drawer:group-size-small/drawer:h-[var(--drawer-size-small)]","group-placement-bottom/drawer:group-size-large/drawer:h-[var(--drawer-size-large)] group-placement-bottom/drawer:group-size-medium/drawer:h-[var(--drawer-size-medium)] group-placement-bottom/drawer:group-size-small/drawer:h-[var(--drawer-size-small)]"],view:"flex h-full flex-col",content:["flex max-h-full flex-1 flex-col overflow-y-auto text-default-light"],header:["mb-s flex flex-row items-center justify-between pt-px pr-px"],footer:"mt-s flex flex-row items-center justify-end text-default-light"}}),r={level:2},l=tv({base:"w-full text-default-light",variants:{level:{1:"",2:"",3:"",4:"",5:"",6:""}},compoundVariants:[{level:[1,2,3],className:"text-header-l"},{level:[4,5,6],className:"text-header-m"}],defaultVariants:r}),t={position:"center"},p=tv({slots:{menu:["absolute flex rounded-large bg-surface-default p-s","group-placement-top/drawer:transform-[translateX(-50%)] group-placement-top/drawer:left-[50%] group-placement-top/drawer:h-[var(--drawer-menu-size)] group-placement-top/drawer:flex-row","group-placement-bottom/drawer:transform-[translateX(-50%)] group-placement-bottom/drawer:left-[50%] group-placement-bottom/drawer:h-[var(--drawer-menu-size)] group-placement-bottom/drawer:flex-row","group-placement-bottom/drawer:-translate-y-[var(--drawer-menu-size)] group-placement-bottom/drawer:rounded-b-none","group-placement-top/drawer:bottom-0 group-placement-top/drawer:translate-y-[var(--drawer-menu-size)] group-placement-top/drawer:rounded-t-none","group-placement-left/drawer:left-full group-placement-left/drawer:rounded-l-none","group-placement-left/drawer:w-[var(--drawer-menu-size)] group-placement-left/drawer:flex-col group-placement-left/drawer:items-center","group-placement-right/drawer:-left-[var(--drawer-menu-size)] group-placement-right/drawer:rounded-r-none","group-placement-right/drawer:w-[var(--drawer-menu-size)] group-placement-right/drawer:flex-col group-placement-right/drawer:items-center"],item:["flex flex-col items-center justify-center","fg-default-dark !p-xs cursor-pointer outline-none","rounded-medium","hover:fg-default-light hover:!bg-transparent","selected:fg-highlight selected:bg-highlight-subtle","focus:fg-default-light","disabled:fg-disabled disabled:cursor-not-allowed"]},variants:{position:{start:{menu:["group-placement-left/drawer:-translate-y-1/2 group-placement-left/drawer:top-1/8","group-placement-right/drawer:-translate-y-1/2 group-placement-right/drawer:top-1/8","group-placement-top/drawer:left-1/8 group-placement-top/drawer:translate-x-1/4","group-placement-bottom/drawer:left-1/8 group-placement-bottom/drawer:translate-x-1/4"]},center:{menu:["group-placement-left/drawer:-translate-y-1/2 group-placement-left/drawer:top-1/2","group-placement-right/drawer:-translate-y-1/2 group-placement-right/drawer:top-1/2","group-placement-top/drawer:-translate-x-1/8 group-placement-top/drawer:left-1/2","group-placement-bottom/drawer:-translate-x-1/8 group-placement-bottom/drawer:left-1/2"]},end:{menu:["group-placement-left/drawer:-translate-y-7/2 group-placement-left/drawer:top-7/8","group-placement-right/drawer:-translate-y-7/8 group-placement-right/drawer:top-7/8","group-placement-top/drawer:-translate-x-1/2 group-placement-top/drawer:left-7/8","group-placement-bottom/drawer:-translate-x-1/2 group-placement-bottom/drawer:left-7/8"]}}},defaultVariants:t});export{p as DrawerMenuStyles,t as DrawerMenuStylesDefaults,o as DrawerStyles,l as DrawerTitleStyles,r as DrawerTitleStylesDefaults};//# sourceMappingURL=styles.js.map
|
|
2
2
|
//# sourceMappingURL=styles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/drawer/styles.ts"],"names":["DrawerStyles","tv","DrawerMenuStyles"],"mappings":"mCAcO,MAAMA,CAAAA,CAAeC,GAAG,CAC7B,KAAA,CAAO,CACL,MAAA,CAAQ,CAEN,6BAAA,CACA,8CAAA,CACA,4BACA,+CAAA,CACA,6BAAA,CACA,gDACA,2BAAA,CACA,8CAAA,CAEA,0BAAA,CACA,2BAAA,CACA,8BACA,8BAAA,CACA,6BAAA,CAGA,0CAAA,CACA,0CAAA,CACA,+EACA,8EAAA,CAGA,iEAAA,CACA,0FAAA,CACA,uDAAA,CACA,0BACF,CAAA,CACA,IAAA,CAAM,2EACN,MAAA,CAAQ,CACN,eACA,gCAAA,CACA,2CAAA,CACA,+CAAA,CACA,8BAAA,CAGA,sGACA,oDAAA,CACA,6DAAA,CACA,yDAAA,CACA,4DAAA,CACA,qDACA,4DAAA,CACA,8DAAA,CACA,4DAAA,CAGA,iHAAA,CACA,0DACA,mEAAA,CACA,4DAAA,CACA,gEACA,uDAAA,CACA,+DAAA,CACA,kEACA,+DAAA,CAGA,yGAAA,CACA,qDAAA,CACA,qDAAA,CACA,sDACA,6DAAA,CACA,+DAAA,CACA,8DACA,+DAAA,CACA,yDAAA,CACA,+DAGA,6GAAA,CACA,uDAAA,CACA,qDAAA,CACA,iEAAA,CACA,2DACA,+DAAA,CACA,sDAAA,CACA,+DACA,gEAAA,CACA,8DACF,EACA,OAAA,CAAS,CACP,iEACF,CAAA,CACA,MAAO,CACL,oEACF,CAAA,CACA,MAAA,CAAQ,CAAC,6DAA6D,CAAA,CACtE,KAAA,CAAO,yCAAA,CACP,OAAQ,gEACV,CACF,CAAC,CAAA,CAEYC,CAAAA,CAAmBD,GAAG,CACjC,KAAA,CAAO,CACL,IAAA,CAAM,CACJ,oDAAA,CAGA,0LAAA,CACA,uMACA,mHAAA,CACA,gJAAA,CAEA,qFACA,kFAAA,CACA,uIAAA,CACA,0GAAA,CACA,0IACF,EACA,IAAA,CAAM,CACJ,4CACA,iDAAA,CACA,+GAAA,CACA,iGACA,yFAAA,CAEA,8GAAA,CAEA,+GAAA,CAEA,wFAAA,CAEA,wHACF,CACF,CAAA,CACA,QAAA,CAAU,CACR,SAAU,CACR,KAAA,CAAO,CACL,IAAA,CAAM,CACJ,kFAAA,CACA,oFAAA,CACA,iFACA,sFACF,CACF,EACA,MAAA,CAAQ,CACN,IAAA,CAAM,CACJ,mFACA,oFAAA,CACA,iFAAA,CACA,uFACF,CACF,CAAA,CACA,IAAK,CACH,IAAA,CAAM,CACJ,kFAAA,CACA,qFACA,iFAAA,CACA,uFACF,CACF,CACF,CACF,CACF,CAAC","file":"styles.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { tv } from 'tailwind-variants';\n\nexport const DrawerStyles = tv({\n slots: {\n layout: [\n //properties\n '[--drawer-main-row-start:1]', //top overlay\n 'data-[push~=top]:[--drawer-main-row-start:2]',\n '[--drawer-main-row-end:4]', //bottom overlay\n 'data-[push~=bottom]:[--drawer-main-row-end:3]',\n '[--drawer-main-col-start:1]', //left overlay\n 'data-[push~=left]:[--drawer-main-col-start:2]',\n '[--drawer-main-col-end:4]', //right overlay\n 'data-[push~=right]:[--drawer-main-col-end:3]',\n\n '[--drawer-size-closed:0]',\n '[--drawer-menu-size:40px]',\n '[--drawer-size-small:100px]',\n '[--drawer-size-medium:200px]',\n '[--drawer-size-large:400px]',\n\n //Grid template definitions\n '[--route-layout-grid-cols:auto_1fr_auto]',\n '[--route-layout-grid-rows:auto_1fr_auto]',\n '[--drawer-main-cols:var(--drawer-main-col-start)/var(--drawer-main-col-end)]',\n '[--drawer-main-rows:var(--drawer-main-row-start)/var(--drawer-main-row-end)]',\n\n //container\n 'group/layout relative top-[var(--classification-banner-height)]',\n 'grid grid-cols-[var(--route-layout-grid-cols)] grid-rows-[var(--route-layout-grid-rows)]',\n 'transition-[grid-template-columns,grid-template-rows]',\n 'h-full max-h-full w-full',\n ],\n main: 'relative z-1 col-[var(--drawer-main-cols)] row-[var(--drawer-main-rows)]',\n drawer: [\n 'group/drawer',\n 'bg-surface-default text-body-m',\n 'relative z-5 flex h-full min-h-0 flex-col',\n 'pointer-events-none [&>*]:pointer-events-auto',\n 'closed:[&>*:not(nav)]:hidden',\n\n //top\n 'placement-top:col-start-2 placement-top:col-end-3 placement-top:row-start-1 placement-top:row-end-2',\n 'group-data-[extend~=top]/layout:placement-top:z-10',\n 'group-data-[extend~=top]/layout:placement-top:col-span-full',\n 'group-data-[extend=left]/layout:placement-top:col-end-4',\n 'group-data-[extend=right]/layout:placement-top:col-start-1',\n 'placement-top:closed:h-[var(--drawer-size-closed)]',\n 'placement-top:open:size-small:h-[var(--drawer-size-small)]',\n 'placement-top:open:size-medium:h-[var(--drawer-size-medium)]',\n 'placement-top:open:size-large:h-[var(--drawer-size-large)]',\n\n //bottom\n 'placement-bottom:col-start-2 placement-bottom:col-end-3 placement-bottom:row-start-3 placement-bottom:row-end-4',\n 'group-data-[extend=bottom]/layout:placement-bottom:z-10',\n 'group-data-[extend~=bottom]/layout:placement-bottom:col-span-full',\n 'group-data-[extend=left]/layout:placement-bottom:col-end-4',\n 'group-data-[extend=right]/layout:placement-bottom:col-start-1',\n 'placement-bottom:closed:h-[var(--drawer-size-closed)]',\n 'placement-bottom:open:size-small:h-[var(--drawer-size-small)]',\n 'placement-bottom:open:size-medium:h-[var(--drawer-size-medium)]',\n 'placement-bottom:open:size-large:h-[var(--drawer-size-large)]',\n\n //left\n 'placement-left:col-start-1 placement-left:col-end-2 placement-left:row-start-2 placement-left:row-end-3',\n 'group-data-[extend=left]/layout:placement-left:z-10',\n 'group-data-[extend=right]/layout:placement-left:z-1',\n 'placement-left:closed:w-[var(--drawer-size-closed)]',\n 'placement-left:open:size-small:w-[var(--drawer-size-small)]',\n 'placement-left:open:size-medium:w-[var(--drawer-size-medium)]',\n 'placement-left:open:size-large:w-[var(--drawer-size-large)]',\n 'group-data-[extend~=left]/layout:placement-left:row-span-full',\n 'group-data-[extend=top]/layout:placement-left:row-end-4',\n 'group-data-[extend=bottom]/layout:placement-left:row-start-1',\n\n //right\n 'placement-right:col-start-3 placement-right:col-end-4 placement-right:row-start-2 placement-right:row-end-3',\n 'group-data-[extend=right]/layout:placement-right:z-10',\n 'group-data-[extend=left]/layout:placement-right:z-1',\n 'group-data-[extend~=right]/layout:placement-right:row-span-full',\n 'group-data-[extend=top]/layout:placement-right:row-end-4',\n 'group-data-[extend=bottom]/layout:placement-right:row-start-1',\n 'placement-right:closed:w-[var(--drawer-size-closed)]',\n 'placement-right:open:size-small:w-[var(--drawer-size-small)]',\n 'placement-right:open:size-medium:w-[var(--drawer-size-medium)]',\n 'placement-right:open:size-large:w-[var(--drawer-size-large)]',\n ],\n content: [\n 'hidden h-full min-h-0 flex-col gap-s p-l group-open/drawer:flex',\n ],\n panel: [\n 'flex max-h-full flex-1 flex-col overflow-y-auto text-default-light',\n ],\n header: ['mb-s flex flex-row items-center justify-between pt-px pr-px'],\n title: 'w-full text-default-light text-header-l',\n footer: 'mt-s flex flex-row items-center justify-end text-default-light',\n },\n});\n\nexport const DrawerMenuStyles = tv({\n slots: {\n menu: [\n 'absolute flex rounded-large bg-surface-default p-s',\n\n //horizontal\n 'group-placement-top/drawer:transform-[translateX(-50%)] group-placement-top/drawer:left-[50%] group-placement-top/drawer:h-[var(--drawer-menu-size)] group-placement-top/drawer:flex-row',\n 'group-placement-bottom/drawer:transform-[translateX(-50%)] group-placement-bottom/drawer:left-[50%] group-placement-bottom/drawer:h-[var(--drawer-menu-size)] group-placement-bottom/drawer:flex-row',\n 'group-placement-bottom/drawer:-translate-y-[var(--drawer-menu-size)] group-placement-bottom/drawer:rounded-b-none',\n 'group-placement-top/drawer:bottom-0 group-placement-top/drawer:translate-y-[var(--drawer-menu-size)] group-placement-top/drawer:rounded-t-none',\n //vertical\n 'group-placement-right/drawer:-translate-y-1/8 group-placement-right/drawer:top-1/8',\n 'group-placement-left/drawer:left-full group-placement-left/drawer:rounded-l-none',\n 'group-placement-left/drawer:w-[var(--drawer-menu-size)] group-placement-left/drawer:flex-col group-placement-left/drawer:items-center',\n 'group-placement-right/drawer:-left-[var(--drawer-menu-size)] group-placement-right/drawer:rounded-r-none',\n 'group-placement-right/drawer:w-[var(--drawer-menu-size)] group-placement-right/drawer:flex-col group-placement-right/drawer:items-center',\n ],\n item: [\n 'flex flex-col items-center justify-center',\n 'fg-default-dark cursor-pointer p-s outline-none',\n 'rounded-medium group-dtk-orientation-horizontal:rounded-small group-dtk-orientation-horizontal:rounded-b-none',\n 'group-dtk-orientation-horizontal:border-static-light group-dtk-orientation-horizontal:border-b',\n 'group-dtk-orientation-vertical:border group-dtk-orientation-vertical:border-transparent',\n //hover\n 'hover:fg-default-light hover:!bg-transparent hover:group-dtk-orientation-horizontal:border-interactive-hover',\n //selected\n 'selected:fg-highlight selected:bg-highlight-subtle selected:group-dtk-orientation-horizontal:border-highlight',\n //focused\n 'focus:fg-default-light focus:group-dtk-orientation-horizontal:border-interactive-hover',\n //disabled\n 'disabled:fg-disabled disabled:cursor-not-allowed disabled:group-dtk-orientation-horizontal:border-interactive-disabled',\n ],\n },\n variants: {\n position: {\n start: {\n menu: [\n 'group-placement-left/drawer:-translate-y-1/2 group-placement-left/drawer:top-1/8',\n 'group-placement-right/drawer:-translate-y-1/2 group-placement-right/drawer:top-1/8',\n 'group-placement-top/drawer:left-1/8 group-placement-top/drawer:translate-x-1/4',\n 'group-placement-bottom/drawer:left-1/8 group-placement-bottom/drawer:translate-x-1/4',\n ],\n },\n middle: {\n menu: [\n 'group-placement-left/drawer:-translate-y-1/2 group-placement-left/drawer:top-1/2',\n 'group-placement-right/drawer:-translate-y-1/2 group-placement-right/drawer:top-1/2',\n 'group-placement-top/drawer:-translate-x-1/8 group-placement-top/drawer:left-1/2',\n 'group-placement-bottom/drawer:-translate-x-1/8 group-placement-bottom/drawer:left-1/2',\n ],\n },\n end: {\n menu: [\n 'group-placement-left/drawer:-translate-y-7/2 group-placement-left/drawer:top-7/8',\n 'group-placement-right/drawer:-translate-y-7/8 group-placement-right/drawer:top-7/8',\n 'group-placement-top/drawer:-translate-x-1/2 group-placement-top/drawer:left-7/8',\n 'group-placement-bottom/drawer:-translate-x-1/2 group-placement-bottom/drawer:left-7/8',\n ],\n },\n },\n },\n});\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/drawer/styles.ts"],"names":["DrawerStyles","tv","DrawerTitleStylesDefaults","DrawerTitleStyles","DrawerMenuStylesDefaults","DrawerMenuStyles"],"mappings":"mCAcO,MAAMA,EAAeC,EAAAA,CAAG,CAC7B,MAAO,CACL,MAAA,CAAQ,CAEN,6BAAA,CACA,8CAAA,CACA,4BACA,+CAAA,CACA,6BAAA,CACA,gDACA,2BAAA,CACA,8CAAA,CAEA,2BAAA,CACA,6BAAA,CACA,8BAAA,CACA,6BAAA,CAGA,2CACA,0CAAA,CACA,8EAAA,CACA,+EAGA,iEAAA,CACA,0FAAA,CACA,wDACA,0BACF,CAAA,CACA,IAAA,CAAM,0EAAA,CACN,MAAA,CAAQ,CACN,eACA,gCAAA,CACA,2CAAA,CACA,gDAGA,qGAAA,CACA,iHAAA,CACA,0GACA,6GAAA,CAGA,6DAAA,CACA,mEAAA,CACA,+DAAA,CACA,iEAAA,CAGA,kHAAA,CACA,6HACA,oHAAA,CACA,0HACF,EACA,KAAA,CAAO,CACL,2CACA,wBAAA,CACA,sPAAA,CACA,yPAAA,CACA,mPAAA,CACA,4PACF,CAAA,CACA,KAAM,sBAAA,CACN,OAAA,CAAS,CACP,oEACF,CAAA,CACA,OAAQ,CAAC,6DAA6D,CAAA,CACtE,MAAA,CAAQ,gEACV,CACF,CAAC,CAAA,CAEYC,CAAAA,CAA4B,CACvC,KAAA,CAAO,CACT,EAEaC,CAAAA,CAAoBF,EAAAA,CAAG,CAClC,IAAA,CAAM,2BAAA,CACN,QAAA,CAAU,CACR,KAAA,CAAO,CACJ,EAAI,EAAA,CACJ,CAAA,CAAI,GACJ,CAAA,CAAI,EAAA,CACJ,CAAA,CAAI,EAAA,CACJ,CAAA,CAAI,EAAA,CACJ,EAAI,EACP,CACF,EACA,gBAAA,CAAkB,CAChB,CACE,KAAA,CAAO,CAAC,CAAA,CAAG,CAAA,CAAG,CAAC,CAAA,CACf,UAAW,eACb,CAAA,CACA,CACE,KAAA,CAAO,CAAC,EAAG,CAAA,CAAG,CAAC,CAAA,CACf,SAAA,CAAW,eACb,CACF,EACA,eAAA,CAAiBC,CACnB,CAAC,CAAA,CAEYE,CAAAA,CAA2B,CACtC,QAAA,CAAU,QACZ,CAAA,CAEaC,CAAAA,CAAmBJ,EAAAA,CAAG,CACjC,MAAO,CACL,IAAA,CAAM,CACJ,oDAAA,CAGA,0LAAA,CACA,uMACA,mHAAA,CACA,gJAAA,CAEA,kFAAA,CACA,uIAAA,CACA,0GAAA,CACA,0IACF,EACA,IAAA,CAAM,CACJ,4CACA,mDAAA,CACA,gBAAA,CAEA,+CAEA,oDAAA,CAEA,wBAAA,CAEA,kDACF,CACF,CAAA,CACA,QAAA,CAAU,CACR,QAAA,CAAU,CACR,MAAO,CACL,IAAA,CAAM,CACJ,kFAAA,CACA,oFAAA,CACA,gFAAA,CACA,sFACF,CACF,CAAA,CACA,OAAQ,CACN,IAAA,CAAM,CACJ,kFAAA,CACA,oFAAA,CACA,kFACA,uFACF,CACF,CAAA,CACA,GAAA,CAAK,CACH,IAAA,CAAM,CACJ,kFAAA,CACA,oFAAA,CACA,kFACA,uFACF,CACF,CACF,CACF,CAAA,CACA,eAAA,CAAiBG,CACnB,CAAC","file":"styles.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { tv } from 'tailwind-variants';\n\nexport const DrawerStyles = tv({\n slots: {\n layout: [\n //properties\n '[--drawer-main-row-start:1]', //top overlay\n 'data-[push~=top]:[--drawer-main-row-start:2]',\n '[--drawer-main-row-end:4]', //bottom overlay\n 'data-[push~=bottom]:[--drawer-main-row-end:3]',\n '[--drawer-main-col-start:1]', //left overlay\n 'data-[push~=left]:[--drawer-main-col-start:2]',\n '[--drawer-main-col-end:4]', //right overlay\n 'data-[push~=right]:[--drawer-main-col-end:3]',\n\n '[--drawer-menu-size:40px]',\n '[--drawer-size-small:100px]',\n '[--drawer-size-medium:200px]',\n '[--drawer-size-large:400px]',\n\n //Grid template definitions\n '[--route-layout-grid-cols:auto_1fr_auto]',\n '[--route-layout-grid-rows:auto_1fr_auto]',\n '[--drawer-main-cols:var(--drawer-main-col-start)/var(--drawer-main-col-end)]',\n '[--drawer-main-rows:var(--drawer-main-row-start)/var(--drawer-main-row-end)]',\n\n //container\n 'group/layout relative top-[var(--classification-banner-height)]',\n 'grid grid-cols-[var(--route-layout-grid-cols)] grid-rows-[var(--route-layout-grid-rows)]',\n 'transition-[grid-template-columns,grid-template-rows]',\n 'h-full max-h-full w-full',\n ],\n main: 'relative z-1 col-[var(--drawer-main-cols)] row-[var(--drawer-main-rows)]',\n drawer: [\n 'group/drawer',\n 'bg-surface-default text-body-m',\n 'relative z-5 flex h-full min-h-0 flex-col',\n 'pointer-events-none [&>*]:pointer-events-auto',\n\n //Base positioning\n 'placement-top:col-start-2 placement-top:col-end-3 placement-top:row-start-1 placement-top:row-end-2',\n 'placement-bottom:col-start-2 placement-bottom:col-end-3 placement-bottom:row-start-3 placement-bottom:row-end-4',\n 'placement-left:col-start-1 placement-left:col-end-2 placement-left:row-start-2 placement-left:row-end-3',\n 'placement-right:col-start-3 placement-right:col-end-4 placement-right:row-start-2 placement-right:row-end-3',\n\n //Extend positioning\n 'group-data-[extend~=top]/layout:placement-top:col-span-full',\n 'group-data-[extend~=bottom]/layout:placement-bottom:col-span-full',\n 'group-data-[extend~=left]/layout:placement-left:row-span-full',\n 'group-data-[extend~=right]/layout:placement-right:row-span-full',\n\n //Extend fitment\n 'group-data-[extend=top]/layout:placement-left:row-end-4 group-data-[extend=top]/layout:placement-right:row-end-4',\n 'group-data-[extend=bottom]/layout:placement-left:row-start-1 group-data-[extend=bottom]/layout:placement-right:row-start-1',\n 'group-data-[extend=left]/layout:placement-bottom:col-end-4 group-data-[extend=left]/layout:placement-top:col-end-4',\n 'group-data-[extend=right]/layout:placement-bottom:col-start-1 group-data-[extend=right]/layout:placement-top:col-start-1',\n ],\n panel: [\n 'hidden h-full min-h-0 flex-col gap-s p-l',\n 'group-open/drawer:flex',\n 'group-placement-left/drawer:group-size-large/drawer:w-[var(--drawer-size-large)] group-placement-left/drawer:group-size-medium/drawer:w-[var(--drawer-size-medium)] group-placement-left/drawer:group-size-small/drawer:w-[var(--drawer-size-small)]',\n 'group-placement-right/drawer:group-size-large/drawer:w-[var(--drawer-size-large)] group-placement-right/drawer:group-size-medium/drawer:w-[var(--drawer-size-medium)] group-placement-right/drawer:group-size-small/drawer:w-[var(--drawer-size-small)]',\n 'group-placement-top/drawer:group-size-large/drawer:h-[var(--drawer-size-large)] group-placement-top/drawer:group-size-medium/drawer:h-[var(--drawer-size-medium)] group-placement-top/drawer:group-size-small/drawer:h-[var(--drawer-size-small)]',\n 'group-placement-bottom/drawer:group-size-large/drawer:h-[var(--drawer-size-large)] group-placement-bottom/drawer:group-size-medium/drawer:h-[var(--drawer-size-medium)] group-placement-bottom/drawer:group-size-small/drawer:h-[var(--drawer-size-small)]',\n ],\n view: 'flex h-full flex-col',\n content: [\n 'flex max-h-full flex-1 flex-col overflow-y-auto text-default-light',\n ],\n header: ['mb-s flex flex-row items-center justify-between pt-px pr-px'],\n footer: 'mt-s flex flex-row items-center justify-end text-default-light',\n },\n});\n\nexport const DrawerTitleStylesDefaults = {\n level: 2,\n} as const;\n\nexport const DrawerTitleStyles = tv({\n base: 'w-full text-default-light',\n variants: {\n level: {\n [1]: '',\n [2]: '',\n [3]: '',\n [4]: '',\n [5]: '',\n [6]: '',\n },\n },\n compoundVariants: [\n {\n level: [1, 2, 3],\n className: 'text-header-l',\n },\n {\n level: [4, 5, 6],\n className: 'text-header-m',\n },\n ],\n defaultVariants: DrawerTitleStylesDefaults,\n});\n\nexport const DrawerMenuStylesDefaults = {\n position: 'center',\n} as const;\n\nexport const DrawerMenuStyles = tv({\n slots: {\n menu: [\n 'absolute flex rounded-large bg-surface-default p-s',\n\n //horizontal\n 'group-placement-top/drawer:transform-[translateX(-50%)] group-placement-top/drawer:left-[50%] group-placement-top/drawer:h-[var(--drawer-menu-size)] group-placement-top/drawer:flex-row',\n 'group-placement-bottom/drawer:transform-[translateX(-50%)] group-placement-bottom/drawer:left-[50%] group-placement-bottom/drawer:h-[var(--drawer-menu-size)] group-placement-bottom/drawer:flex-row',\n 'group-placement-bottom/drawer:-translate-y-[var(--drawer-menu-size)] group-placement-bottom/drawer:rounded-b-none',\n 'group-placement-top/drawer:bottom-0 group-placement-top/drawer:translate-y-[var(--drawer-menu-size)] group-placement-top/drawer:rounded-t-none',\n //vertical\n 'group-placement-left/drawer:left-full group-placement-left/drawer:rounded-l-none',\n 'group-placement-left/drawer:w-[var(--drawer-menu-size)] group-placement-left/drawer:flex-col group-placement-left/drawer:items-center',\n 'group-placement-right/drawer:-left-[var(--drawer-menu-size)] group-placement-right/drawer:rounded-r-none',\n 'group-placement-right/drawer:w-[var(--drawer-menu-size)] group-placement-right/drawer:flex-col group-placement-right/drawer:items-center',\n ],\n item: [\n 'flex flex-col items-center justify-center',\n 'fg-default-dark !p-xs cursor-pointer outline-none',\n 'rounded-medium',\n //hover\n 'hover:fg-default-light hover:!bg-transparent',\n //selected\n 'selected:fg-highlight selected:bg-highlight-subtle',\n //focused\n 'focus:fg-default-light',\n //disabled\n 'disabled:fg-disabled disabled:cursor-not-allowed',\n ],\n },\n variants: {\n position: {\n start: {\n menu: [\n 'group-placement-left/drawer:-translate-y-1/2 group-placement-left/drawer:top-1/8',\n 'group-placement-right/drawer:-translate-y-1/2 group-placement-right/drawer:top-1/8',\n 'group-placement-top/drawer:left-1/8 group-placement-top/drawer:translate-x-1/4',\n 'group-placement-bottom/drawer:left-1/8 group-placement-bottom/drawer:translate-x-1/4',\n ],\n },\n center: {\n menu: [\n 'group-placement-left/drawer:-translate-y-1/2 group-placement-left/drawer:top-1/2',\n 'group-placement-right/drawer:-translate-y-1/2 group-placement-right/drawer:top-1/2',\n 'group-placement-top/drawer:-translate-x-1/8 group-placement-top/drawer:left-1/2',\n 'group-placement-bottom/drawer:-translate-x-1/8 group-placement-bottom/drawer:left-1/2',\n ],\n },\n end: {\n menu: [\n 'group-placement-left/drawer:-translate-y-7/2 group-placement-left/drawer:top-7/8',\n 'group-placement-right/drawer:-translate-y-7/8 group-placement-right/drawer:top-7/8',\n 'group-placement-top/drawer:-translate-x-1/2 group-placement-top/drawer:left-7/8',\n 'group-placement-bottom/drawer:-translate-x-1/2 group-placement-bottom/drawer:left-7/8',\n ],\n },\n },\n },\n defaultVariants: DrawerMenuStylesDefaults,\n});\n"]}
|