@schemavaults/ui 0.27.2 → 0.28.1

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.
@@ -5,7 +5,7 @@ import { cn } from "../../../lib/utils";
5
5
  export function DashboardLayoutMainContentContainer({ children, }) {
6
6
  const openState = useDashboardSidebarOpenState();
7
7
  const size = useDashboardSidebarSizing();
8
- return (_jsx("div", { id: "dashboard-layout-main-content-container", className: cn("absolute", "h-full grow", "overflow-x-hidden overflow-y-scroll", "overscroll-none", "no-scrollbar", "max-md:w-screen", "transition-[width,left] ease-linear will-change-[width]", openState.open
8
+ return (_jsx("div", { id: "dashboard-layout-main-content-container", className: cn("absolute", "h-full grow", "flex flex-col flex-nowrap justify-start items-stretch", "overflow-x-hidden overflow-y-scroll", "overscroll-none", "no-scrollbar", "max-md:w-full", "transition-[width,left] ease-linear will-change-[width]", openState.open
9
9
  ? size.content_container_desktop_sidebar_open_width_classname
10
10
  : size.content_container_desktop_sidebar_closed_width_classname, "max-md:left-0", openState.open
11
11
  ? size.content_container_desktop_sidebar_open_left_classname
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard-layout-main-content-container.js","sourceRoot":"","sources":["../../../../src/components/layout/dashboard-layout/dashboard-layout-main-content-container.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAGb,OAAO,EACL,yBAAyB,EACzB,4BAA4B,GAC7B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAIjC,MAAM,UAAU,mCAAmC,CAAC,EAClD,QAAQ,GACiC;IACzC,MAAM,SAAS,GAAG,4BAA4B,EAAE,CAAC;IACjD,MAAM,IAAI,GAAG,yBAAyB,EAAE,CAAC;IAEzC,OAAO,CACL,cACE,EAAE,EAAC,yCAAyC,EAC5C,SAAS,EAAE,EAAE,CACX,UAAU,EACV,aAAa,EACb,qCAAqC,EACrC,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,yDAAyD,EACzD,SAAS,CAAC,IAAI;YACZ,CAAC,CAAC,IAAI,CAAC,sDAAsD;YAC7D,CAAC,CAAC,IAAI,CAAC,wDAAwD,EACjE,eAAe,EACf,SAAS,CAAC,IAAI;YACZ,CAAC,CAAC,IAAI,CAAC,qDAAqD;YAC5D,CAAC,CAAC,IAAI,CAAC,uDAAuD,CACjE,YAEA,QAAQ,GACL,CACP,CAAC;AACJ,CAAC;AAED,eAAe,mCAAmC,CAAC"}
1
+ {"version":3,"file":"dashboard-layout-main-content-container.js","sourceRoot":"","sources":["../../../../src/components/layout/dashboard-layout/dashboard-layout-main-content-container.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAGb,OAAO,EACL,yBAAyB,EACzB,4BAA4B,GAC7B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAIjC,MAAM,UAAU,mCAAmC,CAAC,EAClD,QAAQ,GACiC;IACzC,MAAM,SAAS,GAAG,4BAA4B,EAAE,CAAC;IACjD,MAAM,IAAI,GAAG,yBAAyB,EAAE,CAAC;IAEzC,OAAO,CACL,cACE,EAAE,EAAC,yCAAyC,EAC5C,SAAS,EAAE,EAAE,CACX,UAAU,EACV,aAAa,EACb,uDAAuD,EACvD,qCAAqC,EACrC,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,yDAAyD,EACzD,SAAS,CAAC,IAAI;YACZ,CAAC,CAAC,IAAI,CAAC,sDAAsD;YAC7D,CAAC,CAAC,IAAI,CAAC,wDAAwD,EACjE,eAAe,EACf,SAAS,CAAC,IAAI;YACZ,CAAC,CAAC,IAAI,CAAC,qDAAqD;YAC5D,CAAC,CAAC,IAAI,CAAC,uDAAuD,CACjE,YAEA,QAAQ,GACL,CACP,CAAC;AACJ,CAAC;AAED,eAAe,mCAAmC,CAAC"}
@@ -22,7 +22,7 @@ export function DashboardLayout({ children, wordmark, logo, Link, brandHref, top
22
22
  }
23
23
  }
24
24
  const TopBarButtonsComponent = props.topBarButtons;
25
- return (_jsx(DashboardSidebarContextProvider, { sidebarItems: props.sidebarItems, sizing: props.sizing, onOpenSidebar: props.onOpenSidebar, onCloseSidebar: props.onCloseSidebar, children: _jsxs("div", { className: "w-screen h-screen min-h-screen", children: [_jsx(DashboardSidebar, { wordmark: wordmark, Link: Link, brandHref: brandHref, logo: logo, sidebarFooterContent: props.sidebarFooterContent }), _jsxs(DashboardLayoutMainContentContainer, { children: [_jsx("header", { className: cn("sticky top-0", "flex shrink-0 items-center gap-2", "transition-[width,height] ease-linear", "bg-background", "border-b", size.sidebar_and_header_z_index_classname), style: {
25
+ return (_jsx(DashboardSidebarContextProvider, { sidebarItems: props.sidebarItems, sizing: props.sizing, onOpenSidebar: props.onOpenSidebar, onCloseSidebar: props.onCloseSidebar, children: _jsxs("div", { id: "dashboard-layout-container", className: "w-full h-dvh min-h-dvh", children: [_jsx(DashboardSidebar, { wordmark: wordmark, Link: Link, brandHref: brandHref, logo: logo, sidebarFooterContent: props.sidebarFooterContent }), _jsxs(DashboardLayoutMainContentContainer, { children: [_jsx("header", { id: "dashboard-layout-main-content-header", className: cn("sticky top-0", "flex shrink-0 items-center gap-2", "transition-[width,height] ease-linear", "bg-background", "border-b border-border", size.sidebar_and_header_z_index_classname), style: {
26
26
  height: size.header_height,
27
27
  }, children: _jsxs("div", { className: "flex flex-row justify-between items-center gap-2 px-4 w-full", children: [_jsx(DashboardLayoutSidebarTrigger, {}), _jsx(Separator, { orientation: "vertical", className: "mr-2 data-[orientation=vertical]:h-4" }), _jsx(HeaderBarPageIdentifierComponent, {}), _jsx("div", { role: "none", className: "grow" }), typeof TopBarButtonsComponent === "function" && (_jsx(TopBarButtonsComponent, { useDashboardSidebarSizing: useDashboardSidebarSizing, useDashboardSidebarOpenState: useDashboardSidebarOpenState, Link: Link }))] }) }), children] })] }) }));
28
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard-layout.js","sourceRoot":"","sources":["../../../../src/components/layout/dashboard-layout/dashboard-layout.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAGb,OAAO,gBAAgB,EAAE,EACvB,6BAA6B,EAC7B,+BAA+B,EAC/B,4BAA4B,EAC5B,yBAAyB,GAC1B,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,mCAAmC,MAAM,2CAA2C,CAAC;AAE5F,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAIjC;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,EAC9B,QAAQ,EACR,QAAQ,EACR,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,WAAW,EACX,GAAG,KAAK,EACa;IACrB,MAAM,IAAI,GAAG,yBAAyB,EAAE,CAAC;IAEzC,SAAS,gCAAgC;QACvC,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;YACpC,OAAO,aAAI,SAAS,EAAC,mBAAmB,YAAE,WAAW,GAAM,CAAC;QAC9D,CAAC;aAAM,CAAC;YACN,MAAM,2BAA2B,GAAG,WAAW,CAAC;YAChD,OAAO,CACL,KAAC,2BAA2B,IAC1B,yBAAyB,EAAE,yBAAyB,EACpD,4BAA4B,EAAE,4BAA4B,EAC1D,IAAI,EAAE,IAAI,GACV,CACH,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,sBAAsB,GAEZ,KAAK,CAAC,aAAa,CAAC;IAEpC,OAAO,CACL,KAAC,+BAA+B,IAC9B,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,aAAa,EAAE,KAAK,CAAC,aAAa,EAClC,cAAc,EAAE,KAAK,CAAC,cAAc,YAEpC,eAAK,SAAS,EAAC,gCAAgC,aAC7C,KAAC,gBAAgB,IACf,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,oBAAoB,EAAE,KAAK,CAAC,oBAAoB,GAChD,EACF,MAAC,mCAAmC,eAClC,iBACE,SAAS,EAAE,EAAE,CACX,cAAc,EACd,kCAAkC,EAClC,uCAAuC,EACvC,eAAe,EACf,UAAU,EACV,IAAI,CAAC,oCAAoC,CAC1C,EACD,KAAK,EAAE;gCACL,MAAM,EAAE,IAAI,CAAC,aAAa;6BAC3B,YAED,eAAK,SAAS,EAAC,8DAA8D,aAC3E,KAAC,6BAA6B,KAAG,EACjC,KAAC,SAAS,IACR,WAAW,EAAC,UAAU,EACtB,SAAS,EAAC,sCAAsC,GAChD,EACF,KAAC,gCAAgC,KAAG,EACpC,cAAK,IAAI,EAAC,MAAM,EAAC,SAAS,EAAC,MAAM,GAAG,EACnC,OAAO,sBAAsB,KAAK,UAAU,IAAI,CAC/C,KAAC,sBAAsB,IACrB,yBAAyB,EAAE,yBAAyB,EACpD,4BAA4B,EAAE,4BAA4B,EAC1D,IAAI,EAAE,IAAI,GACV,CACH,IACG,GACC,EACR,QAAQ,IAC2B,IAClC,GAC0B,CACnC,CAAC;AACJ,CAAC;AAED,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"dashboard-layout.js","sourceRoot":"","sources":["../../../../src/components/layout/dashboard-layout/dashboard-layout.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAGb,OAAO,gBAAgB,EAAE,EACvB,6BAA6B,EAC7B,+BAA+B,EAC/B,4BAA4B,EAC5B,yBAAyB,GAC1B,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,mCAAmC,MAAM,2CAA2C,CAAC;AAE5F,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAIjC;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,EAC9B,QAAQ,EACR,QAAQ,EACR,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,WAAW,EACX,GAAG,KAAK,EACa;IACrB,MAAM,IAAI,GAAG,yBAAyB,EAAE,CAAC;IAEzC,SAAS,gCAAgC;QACvC,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;YACpC,OAAO,aAAI,SAAS,EAAC,mBAAmB,YAAE,WAAW,GAAM,CAAC;QAC9D,CAAC;aAAM,CAAC;YACN,MAAM,2BAA2B,GAAG,WAAW,CAAC;YAChD,OAAO,CACL,KAAC,2BAA2B,IAC1B,yBAAyB,EAAE,yBAAyB,EACpD,4BAA4B,EAAE,4BAA4B,EAC1D,IAAI,EAAE,IAAI,GACV,CACH,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,sBAAsB,GAEZ,KAAK,CAAC,aAAa,CAAC;IAEpC,OAAO,CACL,KAAC,+BAA+B,IAC9B,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,aAAa,EAAE,KAAK,CAAC,aAAa,EAClC,cAAc,EAAE,KAAK,CAAC,cAAc,YAEpC,eAAK,EAAE,EAAC,4BAA4B,EAAC,SAAS,EAAC,wBAAwB,aACrE,KAAC,gBAAgB,IACf,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,oBAAoB,EAAE,KAAK,CAAC,oBAAoB,GAChD,EACF,MAAC,mCAAmC,eAClC,iBACE,EAAE,EAAC,sCAAsC,EACzC,SAAS,EAAE,EAAE,CACX,cAAc,EACd,kCAAkC,EAClC,uCAAuC,EACvC,eAAe,EACf,wBAAwB,EACxB,IAAI,CAAC,oCAAoC,CAC1C,EACD,KAAK,EAAE;gCACL,MAAM,EAAE,IAAI,CAAC,aAAa;6BAC3B,YAED,eAAK,SAAS,EAAC,8DAA8D,aAC3E,KAAC,6BAA6B,KAAG,EACjC,KAAC,SAAS,IACR,WAAW,EAAC,UAAU,EACtB,SAAS,EAAC,sCAAsC,GAChD,EACF,KAAC,gCAAgC,KAAG,EACpC,cAAK,IAAI,EAAC,MAAM,EAAC,SAAS,EAAC,MAAM,GAAG,EACnC,OAAO,sBAAsB,KAAK,UAAU,IAAI,CAC/C,KAAC,sBAAsB,IACrB,yBAAyB,EAAE,yBAAyB,EACpD,4BAA4B,EAAE,4BAA4B,EAC1D,IAAI,EAAE,IAAI,GACV,CACH,IACG,GACC,EACR,QAAQ,IAC2B,IAClC,GAC0B,CACnC,CAAC;AACJ,CAAC;AAED,eAAe,eAAe,CAAC"}
@@ -27,9 +27,9 @@ export declare const DEFAULT_DASHBOARD_SIDEBAR_SIZE: {
27
27
  readonly mobile_expanded_width_classname: "w-[16rem]";
28
28
  readonly header_height: "4rem";
29
29
  readonly header_height_classname: "h-[4rem]";
30
- readonly content_container_desktop_sidebar_open_width_classname: "md:w-[calc(100vw-14rem)]";
30
+ readonly content_container_desktop_sidebar_open_width_classname: "md:w-[calc(100%-14rem)]";
31
31
  readonly content_container_desktop_sidebar_open_left_classname: "md:left-[14rem]";
32
- readonly content_container_desktop_sidebar_closed_width_classname: "md:w-[calc(100vw-4rem)]";
32
+ readonly content_container_desktop_sidebar_closed_width_classname: "md:w-[calc(100%-4rem)]";
33
33
  readonly content_container_desktop_sidebar_closed_left_classname: "md:left-[4rem]";
34
34
  readonly sidebar_menu_item_height: "2.5rem";
35
35
  readonly sidebar_menu_item_height_classname: "h-[2.5rem]";
@@ -8,16 +8,16 @@ export const DEFAULT_DASHBOARD_SIDEBAR_SIZE = {
8
8
  mobile_expanded_width_classname: `w-[16rem]`,
9
9
  header_height: `4rem`,
10
10
  header_height_classname: `h-[4rem]`,
11
- content_container_desktop_sidebar_open_width_classname: "md:w-[calc(100vw-14rem)]",
11
+ content_container_desktop_sidebar_open_width_classname: "md:w-[calc(100%-14rem)]",
12
12
  content_container_desktop_sidebar_open_left_classname: "md:left-[14rem]",
13
- content_container_desktop_sidebar_closed_width_classname: "md:w-[calc(100vw-4rem)]",
13
+ content_container_desktop_sidebar_closed_width_classname: "md:w-[calc(100%-4rem)]",
14
14
  content_container_desktop_sidebar_closed_left_classname: "md:left-[4rem]",
15
- sidebar_menu_item_height: '2.5rem',
16
- sidebar_menu_item_height_classname: 'h-[2.5rem]',
15
+ sidebar_menu_item_height: "2.5rem",
16
+ sidebar_menu_item_height_classname: "h-[2.5rem]",
17
17
  sidebar_expanded_menu_group_label_bottom_padding: 4,
18
18
  sidebar_and_header_z_index_classname: "z-40",
19
19
  sidebar_menu_item_gap_classname: "gap-2",
20
- sidebar_menu_item_x_margin_classname: "mx-2"
20
+ sidebar_menu_item_x_margin_classname: "mx-2",
21
21
  };
22
22
  export const DashboardLayoutSidebarSizeContext = createContext(DEFAULT_DASHBOARD_SIDEBAR_SIZE);
23
23
  //# sourceMappingURL=dashboard-sidebar-sizing.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard-sidebar-sizing.js","sourceRoot":"","sources":["../../../../../src/components/layout/dashboard-layout/dashboard-sidebar/dashboard-sidebar-sizing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAuBtC,MAAM,CAAC,MAAM,8BAA8B,GAAG;IAC5C,uBAAuB,EAAE,MAAM;IAC/B,iCAAiC,EAAE,UAAU;IAC7C,sBAAsB,EAAE,OAAO;IAC/B,gCAAgC,EAAE,WAAW;IAC7C,qBAAqB,EAAE,OAAO;IAC9B,+BAA+B,EAAE,WAAW;IAC5C,aAAa,EAAE,MAAM;IACrB,uBAAuB,EAAE,UAAU;IACnC,sDAAsD,EACpD,0BAA0B;IAC5B,qDAAqD,EAAE,iBAAiB;IACxE,wDAAwD,EACtD,yBAAyB;IAC3B,uDAAuD,EAAE,gBAAgB;IACzE,wBAAwB,EAAE,QAAQ;IAClC,kCAAkC,EAAE,YAAY;IAChD,gDAAgD,EAAE,CAAC;IACnD,oCAAoC,EAAE,MAAM;IAC5C,+BAA+B,EAAE,OAAO;IACxC,oCAAoC,EAAE,MAAM;CACG,CAAC;AAElD,MAAM,CAAC,MAAM,iCAAiC,GAC5C,aAAa,CAA+B,8BAA8B,CAAC,CAAC"}
1
+ {"version":3,"file":"dashboard-sidebar-sizing.js","sourceRoot":"","sources":["../../../../../src/components/layout/dashboard-layout/dashboard-sidebar/dashboard-sidebar-sizing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAuBtC,MAAM,CAAC,MAAM,8BAA8B,GAAG;IAC5C,uBAAuB,EAAE,MAAM;IAC/B,iCAAiC,EAAE,UAAU;IAC7C,sBAAsB,EAAE,OAAO;IAC/B,gCAAgC,EAAE,WAAW;IAC7C,qBAAqB,EAAE,OAAO;IAC9B,+BAA+B,EAAE,WAAW;IAC5C,aAAa,EAAE,MAAM;IACrB,uBAAuB,EAAE,UAAU;IACnC,sDAAsD,EACpD,yBAAyB;IAC3B,qDAAqD,EAAE,iBAAiB;IACxE,wDAAwD,EACtD,wBAAwB;IAC1B,uDAAuD,EAAE,gBAAgB;IACzE,wBAAwB,EAAE,QAAQ;IAClC,kCAAkC,EAAE,YAAY;IAChD,gDAAgD,EAAE,CAAC;IACnD,oCAAoC,EAAE,MAAM;IAC5C,+BAA+B,EAAE,OAAO;IACxC,oCAAoC,EAAE,MAAM;CACG,CAAC;AAElD,MAAM,CAAC,MAAM,iCAAiC,GAC5C,aAAa,CAA+B,8BAA8B,CAAC,CAAC"}
@@ -122,3 +122,5 @@ export * from "./number-input";
122
122
  export type * from "./number-input";
123
123
  export * from "./code-block";
124
124
  export type * from "./code-block";
125
+ export * from "./segmented-control";
126
+ export type * from "./segmented-control";
@@ -60,4 +60,5 @@ export * from "./timeline";
60
60
  export * from "./rating";
61
61
  export * from "./number-input";
62
62
  export * from "./code-block";
63
+ export * from "./segmented-control";
63
64
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/ui/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AAGzB,cAAc,aAAa,CAAC;AAG5B,cAAc,SAAS,CAAC;AAGxB,cAAc,SAAS,CAAC;AAGxB,cAAc,mBAAmB,CAAC;AAGlC,cAAc,0BAA0B,CAAC;AAGzC,cAAc,UAAU,CAAC;AAGzB,cAAc,SAAS,CAAC;AAGxB,cAAc,kBAAkB,CAAC;AAGjC,cAAc,aAAa,CAAC;AAG5B,cAAc,kCAAkC,CAAC;AAGjD,cAAc,cAAc,CAAC;AAG7B,cAAc,SAAS,CAAC;AAGxB,cAAc,SAAS,CAAC;AAExB,cAAc,WAAW,CAAC;AAG1B,cAAc,YAAY,CAAC;AAG3B,cAAc,QAAQ,CAAC;AAGvB,cAAc,QAAQ,CAAC;AAGvB,cAAc,aAAa,CAAC;AAG5B,cAAc,iBAAiB,CAAC;AAGhC,cAAc,WAAW,CAAC;AAG1B,cAAc,mBAAmB,CAAC;AAGlC,cAAc,UAAU,CAAC;AAGzB,cAAc,WAAW,CAAC;AAG1B,cAAc,WAAW,CAAC;AAG1B,cAAc,SAAS,CAAC;AAGxB,cAAc,aAAa,CAAC;AAG5B,cAAc,YAAY,CAAC;AAG3B,cAAc,YAAY,CAAC;AAG3B,cAAc,cAAc,CAAC;AAG7B,cAAc,eAAe,CAAC;AAG9B,cAAc,YAAY,CAAC;AAG3B,cAAc,2BAA2B,CAAC;AAG1C,cAAc,kBAAkB,CAAC;AAGjC,cAAc,gBAAgB,CAAC;AAG/B,cAAc,eAAe,CAAC;AAG9B,cAAc,WAAW,CAAC;AAG1B,cAAc,gBAAgB,CAAC;AAG/B,cAAc,cAAc,CAAC;AAG7B,cAAc,SAAS,CAAC;AAGxB,cAAc,UAAU,CAAC;AAGzB,cAAc,eAAe,CAAC;AAG9B,cAAc,qBAAqB,CAAC;AAGpC,cAAc,oBAAoB,CAAC;AAGnC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,QAAQ,CAAC;AAGvB,cAAc,QAAQ,CAAC;AAGvB,cAAc,UAAU,CAAC;AAGzB,cAAc,UAAU,CAAC;AAGzB,cAAc,gBAAgB,CAAC;AAG/B,cAAc,cAAc,CAAC;AAG7B,cAAc,cAAc,CAAC;AAG7B,cAAc,OAAO,CAAC;AAGtB,cAAc,eAAe,CAAC;AAG9B,cAAc,WAAW,CAAC;AAG1B,cAAc,UAAU,CAAC;AAGzB,cAAc,eAAe,CAAC;AAG9B,cAAc,aAAa,CAAC;AAG5B,cAAc,YAAY,CAAC;AAG3B,cAAc,UAAU,CAAC;AAGzB,cAAc,gBAAgB,CAAC;AAG/B,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/ui/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AAGzB,cAAc,aAAa,CAAC;AAG5B,cAAc,SAAS,CAAC;AAGxB,cAAc,SAAS,CAAC;AAGxB,cAAc,mBAAmB,CAAC;AAGlC,cAAc,0BAA0B,CAAC;AAGzC,cAAc,UAAU,CAAC;AAGzB,cAAc,SAAS,CAAC;AAGxB,cAAc,kBAAkB,CAAC;AAGjC,cAAc,aAAa,CAAC;AAG5B,cAAc,kCAAkC,CAAC;AAGjD,cAAc,cAAc,CAAC;AAG7B,cAAc,SAAS,CAAC;AAGxB,cAAc,SAAS,CAAC;AAExB,cAAc,WAAW,CAAC;AAG1B,cAAc,YAAY,CAAC;AAG3B,cAAc,QAAQ,CAAC;AAGvB,cAAc,QAAQ,CAAC;AAGvB,cAAc,aAAa,CAAC;AAG5B,cAAc,iBAAiB,CAAC;AAGhC,cAAc,WAAW,CAAC;AAG1B,cAAc,mBAAmB,CAAC;AAGlC,cAAc,UAAU,CAAC;AAGzB,cAAc,WAAW,CAAC;AAG1B,cAAc,WAAW,CAAC;AAG1B,cAAc,SAAS,CAAC;AAGxB,cAAc,aAAa,CAAC;AAG5B,cAAc,YAAY,CAAC;AAG3B,cAAc,YAAY,CAAC;AAG3B,cAAc,cAAc,CAAC;AAG7B,cAAc,eAAe,CAAC;AAG9B,cAAc,YAAY,CAAC;AAG3B,cAAc,2BAA2B,CAAC;AAG1C,cAAc,kBAAkB,CAAC;AAGjC,cAAc,gBAAgB,CAAC;AAG/B,cAAc,eAAe,CAAC;AAG9B,cAAc,WAAW,CAAC;AAG1B,cAAc,gBAAgB,CAAC;AAG/B,cAAc,cAAc,CAAC;AAG7B,cAAc,SAAS,CAAC;AAGxB,cAAc,UAAU,CAAC;AAGzB,cAAc,eAAe,CAAC;AAG9B,cAAc,qBAAqB,CAAC;AAGpC,cAAc,oBAAoB,CAAC;AAGnC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,QAAQ,CAAC;AAGvB,cAAc,QAAQ,CAAC;AAGvB,cAAc,UAAU,CAAC;AAGzB,cAAc,UAAU,CAAC;AAGzB,cAAc,gBAAgB,CAAC;AAG/B,cAAc,cAAc,CAAC;AAG7B,cAAc,cAAc,CAAC;AAG7B,cAAc,OAAO,CAAC;AAGtB,cAAc,eAAe,CAAC;AAG9B,cAAc,WAAW,CAAC;AAG1B,cAAc,UAAU,CAAC;AAGzB,cAAc,eAAe,CAAC;AAG9B,cAAc,aAAa,CAAC;AAG5B,cAAc,YAAY,CAAC;AAG3B,cAAc,UAAU,CAAC;AAGzB,cAAc,gBAAgB,CAAC;AAG/B,cAAc,cAAc,CAAC;AAG7B,cAAc,qBAAqB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { SegmentedControl, SegmentedControlItem, segmentedControlVariants, segmentedControlItemVariants, segmentedControlVariantIds, segmentedControlSizeIds, } from "./segmented-control";
2
+ export type { SegmentedControlProps, SegmentedControlItemProps, SegmentedControlVariantId, SegmentedControlSizeId, } from "./segmented-control";
3
+ export { SegmentedControl as default } from "./segmented-control";
@@ -0,0 +1,3 @@
1
+ export { SegmentedControl, SegmentedControlItem, segmentedControlVariants, segmentedControlItemVariants, segmentedControlVariantIds, segmentedControlSizeIds, } from "./segmented-control";
2
+ export { SegmentedControl as default } from "./segmented-control";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/ui/segmented-control/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,wBAAwB,EACxB,4BAA4B,EAC5B,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AAO7B,OAAO,EAAE,gBAAgB,IAAI,OAAO,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,34 @@
1
+ import { type ButtonHTMLAttributes, type HTMLAttributes, type ReactElement, type ReactNode } from "react";
2
+ import { type VariantProps } from "class-variance-authority";
3
+ export declare const segmentedControlVariantIds: readonly ["default", "outline", "ghost"];
4
+ export type SegmentedControlVariantId = (typeof segmentedControlVariantIds)[number];
5
+ export declare const segmentedControlSizeIds: readonly ["sm", "default", "lg"];
6
+ export type SegmentedControlSizeId = (typeof segmentedControlSizeIds)[number];
7
+ export declare const segmentedControlVariants: (props?: ({
8
+ variant?: "default" | "ghost" | "outline" | null | undefined;
9
+ size?: "sm" | "default" | "lg" | null | undefined;
10
+ fullWidth?: boolean | null | undefined;
11
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
12
+ export declare const segmentedControlItemVariants: (props?: ({
13
+ size?: "sm" | "default" | "lg" | null | undefined;
14
+ fullWidth?: boolean | null | undefined;
15
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
16
+ export interface SegmentedControlProps extends Omit<HTMLAttributes<HTMLDivElement>, "onChange" | "defaultValue">, VariantProps<typeof segmentedControlVariants> {
17
+ value?: string;
18
+ defaultValue?: string;
19
+ onValueChange?: (value: string) => void;
20
+ disabled?: boolean;
21
+ children: ReactNode;
22
+ }
23
+ export declare function SegmentedControl({ className, value: controlledValue, defaultValue, onValueChange, variant, size, fullWidth, disabled, children, ...props }: SegmentedControlProps): ReactElement;
24
+ export declare namespace SegmentedControl {
25
+ var displayName: string;
26
+ }
27
+ export interface SegmentedControlItemProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, "value"> {
28
+ value: string;
29
+ children: ReactNode;
30
+ }
31
+ export declare function SegmentedControlItem({ value, className, children, disabled: itemDisabled, onClick, ...props }: SegmentedControlItemProps): ReactElement;
32
+ export declare namespace SegmentedControlItem {
33
+ var displayName: string;
34
+ }
@@ -0,0 +1,119 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { createContext, useCallback, useContext, useId, useMemo, useState, } from "react";
4
+ import { cva } from "class-variance-authority";
5
+ import { LazyMotion, domAnimation, m } from "framer-motion";
6
+ import { cn } from "../../../lib/utils";
7
+ export const segmentedControlVariantIds = [
8
+ "default",
9
+ "outline",
10
+ "ghost",
11
+ ];
12
+ export const segmentedControlSizeIds = [
13
+ "sm",
14
+ "default",
15
+ "lg",
16
+ ];
17
+ export const segmentedControlVariants = cva("relative inline-flex items-center justify-center gap-1 rounded-lg p-1 text-muted-foreground select-none", {
18
+ variants: {
19
+ variant: {
20
+ default: "bg-muted",
21
+ outline: "border border-input bg-background",
22
+ ghost: "bg-transparent",
23
+ },
24
+ size: {
25
+ sm: "h-8 text-xs",
26
+ default: "h-9 text-sm",
27
+ lg: "h-11 text-base",
28
+ },
29
+ fullWidth: {
30
+ true: "w-full",
31
+ false: "",
32
+ },
33
+ },
34
+ defaultVariants: {
35
+ variant: "default",
36
+ size: "default",
37
+ fullWidth: false,
38
+ },
39
+ });
40
+ export const segmentedControlItemVariants = cva("relative z-10 inline-flex items-center justify-center gap-1.5 whitespace-nowrap rounded-md font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:text-foreground data-[state=inactive]:hover:text-foreground/80 cursor-pointer", {
41
+ variants: {
42
+ size: {
43
+ sm: "h-6 px-2.5 text-xs",
44
+ default: "h-7 px-3 text-sm",
45
+ lg: "h-9 px-4 text-base",
46
+ },
47
+ fullWidth: {
48
+ true: "flex-1",
49
+ false: "",
50
+ },
51
+ },
52
+ defaultVariants: {
53
+ size: "default",
54
+ fullWidth: false,
55
+ },
56
+ });
57
+ const segmentedControlIndicatorVariants = cva("absolute inset-0 z-0 rounded-md", {
58
+ variants: {
59
+ variant: {
60
+ default: "bg-background shadow-sm",
61
+ outline: "bg-accent",
62
+ ghost: "bg-muted",
63
+ },
64
+ },
65
+ defaultVariants: {
66
+ variant: "default",
67
+ },
68
+ });
69
+ const SegmentedControlContext = createContext(null);
70
+ function useSegmentedControlContext() {
71
+ const ctx = useContext(SegmentedControlContext);
72
+ if (!ctx) {
73
+ throw new Error("SegmentedControlItem must be rendered inside a <SegmentedControl />");
74
+ }
75
+ return ctx;
76
+ }
77
+ export function SegmentedControl({ className, value: controlledValue, defaultValue, onValueChange, variant, size, fullWidth, disabled = false, children, ...props }) {
78
+ const reactId = useId();
79
+ const [uncontrolledValue, setUncontrolledValue] = useState(defaultValue);
80
+ const isControlled = controlledValue !== undefined;
81
+ const value = isControlled ? controlledValue : uncontrolledValue;
82
+ const setValue = useCallback((next) => {
83
+ if (!isControlled) {
84
+ setUncontrolledValue(next);
85
+ }
86
+ onValueChange?.(next);
87
+ }, [isControlled, onValueChange]);
88
+ const resolvedVariant = variant ?? "default";
89
+ const resolvedSize = size ?? "default";
90
+ const resolvedFullWidth = fullWidth ?? false;
91
+ const ctx = useMemo(() => ({
92
+ value,
93
+ setValue,
94
+ layoutId: `segmented-control-indicator-${reactId}`,
95
+ size: resolvedSize,
96
+ variant: resolvedVariant,
97
+ fullWidth: resolvedFullWidth,
98
+ disabled,
99
+ }), [value, setValue, reactId, resolvedSize, resolvedVariant, resolvedFullWidth, disabled]);
100
+ return (_jsx(SegmentedControlContext.Provider, { value: ctx, children: _jsx(LazyMotion, { features: domAnimation, strict: true, children: _jsx("div", { role: "radiogroup", "aria-disabled": disabled || undefined, className: cn(segmentedControlVariants({
101
+ variant: resolvedVariant,
102
+ size: resolvedSize,
103
+ fullWidth: resolvedFullWidth,
104
+ }), className), ...props, children: children }) }) }));
105
+ }
106
+ SegmentedControl.displayName = "SegmentedControl";
107
+ export function SegmentedControlItem({ value, className, children, disabled: itemDisabled, onClick, ...props }) {
108
+ const { value: activeValue, setValue, layoutId, size, variant, fullWidth, disabled: groupDisabled } = useSegmentedControlContext();
109
+ const isActive = activeValue === value;
110
+ const isDisabled = groupDisabled || itemDisabled;
111
+ return (_jsxs("button", { type: "button", role: "radio", "aria-checked": isActive, "data-state": isActive ? "active" : "inactive", disabled: isDisabled, onClick: (event) => {
112
+ onClick?.(event);
113
+ if (!event.defaultPrevented && !isDisabled) {
114
+ setValue(value);
115
+ }
116
+ }, className: cn(segmentedControlItemVariants({ size, fullWidth }), className), ...props, children: [isActive ? (_jsx(m.span, { layoutId: layoutId, "aria-hidden": "true", className: cn(segmentedControlIndicatorVariants({ variant })), transition: { type: "spring", stiffness: 380, damping: 32 } })) : null, _jsx("span", { className: "relative z-10 inline-flex items-center justify-center gap-1.5", children: children })] }));
117
+ }
118
+ SegmentedControlItem.displayName = "SegmentedControlItem";
119
+ //# sourceMappingURL=segmented-control.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"segmented-control.js","sourceRoot":"","sources":["../../../../src/components/ui/segmented-control/segmented-control.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EACL,aAAa,EACb,WAAW,EACX,UAAU,EACV,KAAK,EACL,OAAO,EACP,QAAQ,GAKT,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,GAAG,EAAqB,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAE5D,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAEjC,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,SAAS;IACT,SAAS;IACT,OAAO;CAC6B,CAAC;AAIvC,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,IAAI;IACJ,SAAS;IACT,IAAI;CACgC,CAAC;AAGvC,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAG,CACzC,yGAAyG,EACzG;IACE,QAAQ,EAAE;QACR,OAAO,EAAE;YACP,OAAO,EAAE,UAAU;YACnB,OAAO,EAAE,mCAAmC;YAC5C,KAAK,EAAE,gBAAgB;SAC4B;QACrD,IAAI,EAAE;YACJ,EAAE,EAAE,aAAa;YACjB,OAAO,EAAE,aAAa;YACtB,EAAE,EAAE,gBAAgB;SAC4B;QAClD,SAAS,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,EAAE;SACV;KACF;IACD,eAAe,EAAE;QACf,OAAO,EAAE,SAAS;QAClB,IAAI,EAAE,SAAS;QACf,SAAS,EAAE,KAAK;KACjB;CACF,CACF,CAAC;AAEF,MAAM,CAAC,MAAM,4BAA4B,GAAG,GAAG,CAC7C,wYAAwY,EACxY;IACE,QAAQ,EAAE;QACR,IAAI,EAAE;YACJ,EAAE,EAAE,oBAAoB;YACxB,OAAO,EAAE,kBAAkB;YAC3B,EAAE,EAAE,oBAAoB;SACwB;QAClD,SAAS,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,EAAE;SACV;KACF;IACD,eAAe,EAAE;QACf,IAAI,EAAE,SAAS;QACf,SAAS,EAAE,KAAK;KACjB;CACF,CACF,CAAC;AAEF,MAAM,iCAAiC,GAAG,GAAG,CAC3C,iCAAiC,EACjC;IACE,QAAQ,EAAE;QACR,OAAO,EAAE;YACP,OAAO,EAAE,yBAAyB;YAClC,OAAO,EAAE,WAAW;YACpB,KAAK,EAAE,UAAU;SACkC;KACtD;IACD,eAAe,EAAE;QACf,OAAO,EAAE,SAAS;KACnB;CACF,CACF,CAAC;AAYF,MAAM,uBAAuB,GAC3B,aAAa,CAAsC,IAAI,CAAC,CAAC;AAE3D,SAAS,0BAA0B;IACjC,MAAM,GAAG,GAAG,UAAU,CAAC,uBAAuB,CAAC,CAAC;IAChD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CACb,qEAAqE,CACtE,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAYD,MAAM,UAAU,gBAAgB,CAAC,EAC/B,SAAS,EACT,KAAK,EAAE,eAAe,EACtB,YAAY,EACZ,aAAa,EACb,OAAO,EACP,IAAI,EACJ,SAAS,EACT,QAAQ,GAAG,KAAK,EAChB,QAAQ,EACR,GAAG,KAAK,EACc;IACtB,MAAM,OAAO,GAAG,KAAK,EAAE,CAAC;IACxB,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,QAAQ,CACxD,YAAY,CACb,CAAC;IACF,MAAM,YAAY,GAAG,eAAe,KAAK,SAAS,CAAC;IACnD,MAAM,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,iBAAiB,CAAC;IAEjE,MAAM,QAAQ,GAAG,WAAW,CAC1B,CAAC,IAAY,EAAQ,EAAE;QACrB,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,oBAAoB,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;QACD,aAAa,EAAE,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC,EACD,CAAC,YAAY,EAAE,aAAa,CAAC,CAC9B,CAAC;IAEF,MAAM,eAAe,GAA8B,OAAO,IAAI,SAAS,CAAC;IACxE,MAAM,YAAY,GAA2B,IAAI,IAAI,SAAS,CAAC;IAC/D,MAAM,iBAAiB,GAAY,SAAS,IAAI,KAAK,CAAC;IAEtD,MAAM,GAAG,GAAG,OAAO,CACjB,GAAG,EAAE,CAAC,CAAC;QACL,KAAK;QACL,QAAQ;QACR,QAAQ,EAAE,+BAA+B,OAAO,EAAE;QAClD,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,eAAe;QACxB,SAAS,EAAE,iBAAiB;QAC5B,QAAQ;KACT,CAAC,EACF,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,QAAQ,CAAC,CACvF,CAAC;IAEF,OAAO,CACL,KAAC,uBAAuB,CAAC,QAAQ,IAAC,KAAK,EAAE,GAAG,YAC1C,KAAC,UAAU,IAAC,QAAQ,EAAE,YAAY,EAAE,MAAM,kBACxC,cACE,IAAI,EAAC,YAAY,mBACF,QAAQ,IAAI,SAAS,EACpC,SAAS,EAAE,EAAE,CACX,wBAAwB,CAAC;oBACvB,OAAO,EAAE,eAAe;oBACxB,IAAI,EAAE,YAAY;oBAClB,SAAS,EAAE,iBAAiB;iBAC7B,CAAC,EACF,SAAS,CACV,KACG,KAAK,YAER,QAAQ,GACL,GACK,GACoB,CACpC,CAAC;AACJ,CAAC;AACD,gBAAgB,CAAC,WAAW,GAAG,kBAAkB,CAAC;AAQlD,MAAM,UAAU,oBAAoB,CAAC,EACnC,KAAK,EACL,SAAS,EACT,QAAQ,EACR,QAAQ,EAAE,YAAY,EACtB,OAAO,EACP,GAAG,KAAK,EACkB;IAC1B,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,aAAa,EAAE,GACjG,0BAA0B,EAAE,CAAC;IAC/B,MAAM,QAAQ,GAAG,WAAW,KAAK,KAAK,CAAC;IACvC,MAAM,UAAU,GAAG,aAAa,IAAI,YAAY,CAAC;IAEjD,OAAO,CACL,kBACE,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,OAAO,kBACE,QAAQ,gBACV,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,EAC5C,QAAQ,EAAE,UAAU,EACpB,OAAO,EAAE,CAAC,KAAK,EAAQ,EAAE;YACvB,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;YACjB,IAAI,CAAC,KAAK,CAAC,gBAAgB,IAAI,CAAC,UAAU,EAAE,CAAC;gBAC3C,QAAQ,CAAC,KAAK,CAAC,CAAC;YAClB,CAAC;QACH,CAAC,EACD,SAAS,EAAE,EAAE,CACX,4BAA4B,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EACjD,SAAS,CACV,KACG,KAAK,aAER,QAAQ,CAAC,CAAC,CAAC,CACV,KAAC,CAAC,CAAC,IAAI,IACL,QAAQ,EAAE,QAAQ,iBACN,MAAM,EAClB,SAAS,EAAE,EAAE,CAAC,iCAAiC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,EAC7D,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,GAC3D,CACH,CAAC,CAAC,CAAC,IAAI,EACR,eAAM,SAAS,EAAC,+DAA+D,YAC5E,QAAQ,GACJ,IACA,CACV,CAAC;AACJ,CAAC;AACD,oBAAoB,CAAC,WAAW,GAAG,sBAAsB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@schemavaults/ui",
3
- "version": "0.27.2",
3
+ "version": "0.28.1",
4
4
  "private": false,
5
5
  "license": "UNLICENSED",
6
6
  "description": "React.js UI components for SchemaVaults frontend applications",