@manafishrov/ui 1.2.8 → 1.2.10

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.
@@ -1,5 +1,6 @@
1
1
  import { Component, ComponentProps } from 'solid-js';
2
2
  export type SidebarProps = ComponentProps<'aside'> & {
3
+ innerClass?: string;
3
4
  side?: 'left' | 'right';
4
5
  variant?: 'sidebar' | 'floating' | 'inset';
5
6
  collapsible?: 'offcanvas' | 'icon' | 'none';
@@ -1 +1 @@
1
- {"version":3,"file":"Sidebar.js","sources":["../../../src/components/sidebar/Sidebar.tsx"],"sourcesContent":["import { type Component, type ComponentProps, createEffect, onCleanup } from 'solid-js';\n\nimport { createMediaQuery } from '@/primitives/createMediaQuery';\n\nimport { useSidebar } from './context';\nimport { SidebarDesktop } from './SidebarDesktop';\nimport { SidebarMobile } from './SidebarMobile';\n\nexport type SidebarProps = ComponentProps<'aside'> & {\n side?: 'left' | 'right';\n variant?: 'sidebar' | 'floating' | 'inset';\n collapsible?: 'offcanvas' | 'icon' | 'none';\n disableMobileSidebar?: boolean;\n};\n\nexport const Sidebar: Component<SidebarProps> = (props) => {\n const { isMobile, setMobileDisabled, setOpen, setSide } = useSidebar();\n const isViewportMobile = createMediaQuery('(max-width: 768px)');\n\n onCleanup(() => {\n setMobileDisabled(false);\n });\n\n createEffect(() => {\n const currentSide = props.side ?? 'left';\n const mobileDisabled = props.disableMobileSidebar ?? false;\n setSide(currentSide);\n setMobileDisabled(mobileDisabled);\n });\n\n createEffect(() => {\n if (props.disableMobileSidebar === true && props.collapsible === 'icon') {\n setOpen(!isViewportMobile());\n }\n });\n\n return (\n <Show\n when={!isMobile()}\n fallback={\n <Show when={(props.collapsible ?? 'offcanvas') !== 'none'}>\n <SidebarMobile {...props} />\n </Show>\n }\n >\n <SidebarDesktop {...props} />\n </Show>\n );\n};\n"],"names":["Sidebar","props","isMobile","setMobileDisabled","setOpen","setSide","useSidebar","isViewportMobile","createMediaQuery","onCleanup","createEffect","currentSide","side","mobileDisabled","disableMobileSidebar","collapsible","_$createComponent","_$Show","when","fallback","children","SidebarMobile","SidebarDesktop"],"mappings":";;;;;;AAeO,MAAMA,IAAoCC,CAAAA,MAAU;AACzD,QAAM;AAAA,IAAEC,UAAAA;AAAAA,IAAUC,mBAAAA;AAAAA,IAAmBC,SAAAA;AAAAA,IAASC,SAAAA;AAAAA,EAAAA,IAAYC,EAAAA,GACpDC,IAAmBC,EAAiB,oBAAoB;AAE9DC,SAAAA,EAAU,MAAM;AACdN,IAAAA,EAAkB,EAAK;AAAA,EACzB,CAAC,GAEDO,EAAa,MAAM;AACjB,UAAMC,IAAcV,EAAMW,QAAQ,QAC5BC,IAAiBZ,EAAMa,wBAAwB;AACrDT,IAAAA,EAAQM,CAAW,GACnBR,EAAkBU,CAAc;AAAA,EAClC,CAAC,GAEDH,EAAa,MAAM;AACjB,IAAIT,EAAMa,yBAAyB,MAAQb,EAAMc,gBAAgB,UAC/DX,EAAQ,CAACG,GAAkB;AAAA,EAE/B,CAAC,GAEDS,EACGC,GAAI;AAAA,IAAA,IACHC,OAAI;AAAA,aAAE,CAAChB,EAAAA;AAAAA,IAAU;AAAA,IAAA,IACjBiB,WAAQ;AAAA,aAAAH,EACLC,GAAI;AAAA,QAAA,IAACC,OAAI;AAAA,kBAAGjB,EAAMc,eAAe,iBAAiB;AAAA,QAAM;AAAA,QAAA,IAAAK,WAAA;AAAA,iBAAAJ,EACtDK,GAAkBpB,CAAK;AAAA,QAAA;AAAA,MAAA,CAAA;AAAA,IAAA;AAAA,IAAA,IAAAmB,WAAA;AAAA,aAAAJ,EAI3BM,GAAmBrB,CAAK;AAAA,IAAA;AAAA,EAAA,CAAA;AAG/B;"}
1
+ {"version":3,"file":"Sidebar.js","sources":["../../../src/components/sidebar/Sidebar.tsx"],"sourcesContent":["import { type Component, type ComponentProps, createEffect, onCleanup } from 'solid-js';\n\nimport { createMediaQuery } from '@/primitives/createMediaQuery';\n\nimport { useSidebar } from './context';\nimport { SidebarDesktop } from './SidebarDesktop';\nimport { SidebarMobile } from './SidebarMobile';\n\nexport type SidebarProps = ComponentProps<'aside'> & {\n innerClass?: string;\n side?: 'left' | 'right';\n variant?: 'sidebar' | 'floating' | 'inset';\n collapsible?: 'offcanvas' | 'icon' | 'none';\n disableMobileSidebar?: boolean;\n};\n\nexport const Sidebar: Component<SidebarProps> = (props) => {\n const { isMobile, setMobileDisabled, setOpen, setSide } = useSidebar();\n const isViewportMobile = createMediaQuery('(max-width: 768px)');\n\n onCleanup(() => {\n setMobileDisabled(false);\n });\n\n createEffect(() => {\n const currentSide = props.side ?? 'left';\n const mobileDisabled = props.disableMobileSidebar ?? false;\n setSide(currentSide);\n setMobileDisabled(mobileDisabled);\n });\n\n createEffect(() => {\n if (props.disableMobileSidebar === true && props.collapsible === 'icon') {\n setOpen(!isViewportMobile());\n }\n });\n\n return (\n <Show\n when={!isMobile()}\n fallback={\n <Show when={(props.collapsible ?? 'offcanvas') !== 'none'}>\n <SidebarMobile {...props} />\n </Show>\n }\n >\n <SidebarDesktop {...props} />\n </Show>\n );\n};\n"],"names":["Sidebar","props","isMobile","setMobileDisabled","setOpen","setSide","useSidebar","isViewportMobile","createMediaQuery","onCleanup","createEffect","currentSide","side","mobileDisabled","disableMobileSidebar","collapsible","_$createComponent","_$Show","when","fallback","children","SidebarMobile","SidebarDesktop"],"mappings":";;;;;;AAgBO,MAAMA,IAAoCC,CAAAA,MAAU;AACzD,QAAM;AAAA,IAAEC,UAAAA;AAAAA,IAAUC,mBAAAA;AAAAA,IAAmBC,SAAAA;AAAAA,IAASC,SAAAA;AAAAA,EAAAA,IAAYC,EAAAA,GACpDC,IAAmBC,EAAiB,oBAAoB;AAE9DC,SAAAA,EAAU,MAAM;AACdN,IAAAA,EAAkB,EAAK;AAAA,EACzB,CAAC,GAEDO,EAAa,MAAM;AACjB,UAAMC,IAAcV,EAAMW,QAAQ,QAC5BC,IAAiBZ,EAAMa,wBAAwB;AACrDT,IAAAA,EAAQM,CAAW,GACnBR,EAAkBU,CAAc;AAAA,EAClC,CAAC,GAEDH,EAAa,MAAM;AACjB,IAAIT,EAAMa,yBAAyB,MAAQb,EAAMc,gBAAgB,UAC/DX,EAAQ,CAACG,GAAkB;AAAA,EAE/B,CAAC,GAEDS,EACGC,GAAI;AAAA,IAAA,IACHC,OAAI;AAAA,aAAE,CAAChB,EAAAA;AAAAA,IAAU;AAAA,IAAA,IACjBiB,WAAQ;AAAA,aAAAH,EACLC,GAAI;AAAA,QAAA,IAACC,OAAI;AAAA,kBAAGjB,EAAMc,eAAe,iBAAiB;AAAA,QAAM;AAAA,QAAA,IAAAK,WAAA;AAAA,iBAAAJ,EACtDK,GAAkBpB,CAAK;AAAA,QAAA;AAAA,MAAA,CAAA;AAAA,IAAA;AAAA,IAAA,IAAAmB,WAAA;AAAA,aAAAJ,EAI3BM,GAAmBrB,CAAK;AAAA,IAAA;AAAA,EAAA,CAAA;AAG/B;"}
@@ -1,10 +1,10 @@
1
- import { template as p, insert as h, createComponent as C, mergeProps as m, effect as D, style as k, className as u, setAttribute as s, spread as I } from "solid-js/web";
2
- import { splitProps as w, createMemo as y } from "solid-js";
3
- import { cn as d } from "../../node_modules/.bun/tailwind-variants@3.2.2_7ac958b541464b98/node_modules/tailwind-variants/dist/index.js";
1
+ import { template as p, insert as h, createComponent as D, mergeProps as m, effect as w, style as k, className as n, setAttribute as l, spread as I } from "solid-js/web";
2
+ import { splitProps as S, createMemo as y } from "solid-js";
3
+ import { cn as o } from "../../node_modules/.bun/tailwind-variants@3.2.2_7ac958b541464b98/node_modules/tailwind-variants/dist/index.js";
4
4
  import { SIDEBAR_WIDTH_ICON as M, SIDEBAR_WIDTH as A } from "./constants.js";
5
5
  import { useSidebar as R } from "./context.js";
6
- var z = /* @__PURE__ */ p('<aside data-slot=sidebar-container><div data-sidebar=sidebar data-slot=sidebar-inner class="group-data-[variant=floating]:shadow-sm flex size-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:ring-1 group-data-[variant=floating]:ring-sidebar-border">'), B = /* @__PURE__ */ p("<div data-slot=sidebar><div data-slot=sidebar-gap>");
7
- const E = (t) => d(t === !0 ? "group peer min-h-0 relative block self-stretch text-sidebar-foreground" : "group peer md:block min-h-0 relative hidden self-stretch text-sidebar-foreground"), H = (t) => d("relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear", "group-data-[collapsible=offcanvas]:w-0", "group-data-[side=right]:rotate-180", t === "floating" || t === "inset" ? "group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+1rem)]" : "group-data-[collapsible=icon]:w-(--sidebar-width-icon)"), N = (t) => {
6
+ var z = /* @__PURE__ */ p("<aside data-slot=sidebar-container><div data-sidebar=sidebar data-slot=sidebar-inner>"), B = /* @__PURE__ */ p("<div data-slot=sidebar><div data-slot=sidebar-gap>");
7
+ const E = (t) => o(t === !0 ? "group peer min-h-0 relative block self-stretch text-sidebar-foreground" : "group peer md:block min-h-0 relative hidden self-stretch text-sidebar-foreground"), H = (t) => o("relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear", "group-data-[collapsible=offcanvas]:w-0", "group-data-[side=right]:rotate-180", t === "floating" || t === "inset" ? "group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+1rem)]" : "group-data-[collapsible=icon]:w-(--sidebar-width-icon)"), N = (t) => {
8
8
  const r = {
9
9
  "--sidebar-width": A,
10
10
  "--sidebar-width-icon": M
@@ -14,22 +14,22 @@ const E = (t) => d(t === !0 ? "group peer min-h-0 relative block self-stretch te
14
14
  ...t
15
15
  } : r;
16
16
  }, P = (t) => {
17
- const [r, e] = w(t, ["variant", "side", "class", "children"]);
17
+ const [r, e] = S(t, ["variant", "side", "class", "children", "innerClass"]);
18
18
  return (() => {
19
- var o = z(), l = o.firstChild;
20
- return I(o, m({
19
+ var s = z(), d = s.firstChild;
20
+ return I(s, m({
21
21
  get class() {
22
- return d("top-0 bottom-0 md:flex absolute z-10 hidden w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear", r.side === "left" ? "left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]" : "right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]", r.variant === "floating" || r.variant === "inset" ? "p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+1rem+2px)]" : "group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l", r.class);
22
+ return o("top-0 bottom-0 md:flex absolute z-10 hidden w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear", r.side === "left" ? "left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]" : "right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]", r.variant === "floating" || r.variant === "inset" ? "p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+1rem+2px)]" : "group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l", r.class);
23
23
  }
24
- }, e), !1, !0), h(l, () => r.children), o;
24
+ }, e), !1, !0), h(d, () => r.children), w(() => n(d, o("group-data-[variant=floating]:shadow-sm flex size-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:ring-1 group-data-[variant=floating]:ring-sidebar-border", r.innerClass))), s;
25
25
  })();
26
26
  }, O = (t) => {
27
27
  const {
28
28
  state: r
29
- } = R(), [e, o] = w(t, ["side", "variant", "collapsible", "disableMobileSidebar", "style", "class", "children"]), l = y(() => N(e.style));
29
+ } = R(), [e, s] = S(t, ["side", "variant", "collapsible", "disableMobileSidebar", "style", "class", "innerClass", "children"]), d = y(() => N(e.style));
30
30
  return (() => {
31
- var i = B(), S = i.firstChild;
32
- return h(i, C(P, m({
31
+ var i = B(), C = i.firstChild;
32
+ return h(i, D(P, m({
33
33
  get variant() {
34
34
  return e.variant ?? "sidebar";
35
35
  },
@@ -37,15 +37,15 @@ const E = (t) => d(t === !0 ? "group peer min-h-0 relative block self-stretch te
37
37
  return e.side ?? "left";
38
38
  },
39
39
  get class() {
40
- return d(e.disableMobileSidebar === !0 ? "flex" : "md:flex hidden", e.class);
40
+ return o(e.disableMobileSidebar === !0 ? "flex" : "md:flex hidden", e.class);
41
41
  }
42
- }, o, {
42
+ }, s, {
43
43
  get children() {
44
44
  return e.children;
45
45
  }
46
- })), null), D((a) => {
47
- var x = l(), n = E(e.disableMobileSidebar), c = r(), b = r() === "collapsed" ? e.collapsible ?? "offcanvas" : "", g = e.variant ?? "sidebar", v = e.side ?? "left", f = H(e.variant);
48
- return a.e = k(i, x, a.e), n !== a.t && u(i, a.t = n), c !== a.a && s(i, "data-state", a.a = c), b !== a.o && s(i, "data-collapsible", a.o = b), g !== a.i && s(i, "data-variant", a.i = g), v !== a.n && s(i, "data-side", a.n = v), f !== a.s && u(S, a.s = f), a;
46
+ })), null), w((a) => {
47
+ var x = d(), c = E(e.disableMobileSidebar), b = r(), g = r() === "collapsed" ? e.collapsible ?? "offcanvas" : "", v = e.variant ?? "sidebar", f = e.side ?? "left", u = H(e.variant);
48
+ return a.e = k(i, x, a.e), c !== a.t && n(i, a.t = c), b !== a.a && l(i, "data-state", a.a = b), g !== a.o && l(i, "data-collapsible", a.o = g), v !== a.i && l(i, "data-variant", a.i = v), f !== a.n && l(i, "data-side", a.n = f), u !== a.s && n(C, a.s = u), a;
49
49
  }, {
50
50
  e: void 0,
51
51
  t: void 0,
@@ -1 +1 @@
1
- {"version":3,"file":"SidebarDesktop.js","sources":["../../../src/components/sidebar/SidebarDesktop.tsx"],"sourcesContent":["import {\n createMemo,\n type Component,\n type ComponentProps,\n type JSX,\n type JSXElement,\n} from 'solid-js';\nimport { cn } from 'tailwind-variants';\n\nimport type { SidebarProps } from './Sidebar';\n\nimport { SIDEBAR_WIDTH, SIDEBAR_WIDTH_ICON } from './constants';\nimport { useSidebar } from './context';\n\ntype SidebarDesktopContainerProps = ComponentProps<'aside'> & {\n variant: string;\n side: string;\n children: JSXElement;\n};\n\nconst getSidebarDesktopRootClass = (\n disableMobileSidebar: boolean | undefined,\n): ComponentProps<'div'>['class'] =>\n cn(\n disableMobileSidebar === true\n ? 'group peer min-h-0 relative block self-stretch text-sidebar-foreground'\n : 'group peer md:block min-h-0 relative hidden self-stretch text-sidebar-foreground',\n );\n\nconst getSidebarGapClass = (variant: SidebarProps['variant']): ComponentProps<'div'>['class'] =>\n cn(\n 'relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear',\n 'group-data-[collapsible=offcanvas]:w-0',\n 'group-data-[side=right]:rotate-180',\n variant === 'floating' || variant === 'inset'\n ? 'group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+1rem)]'\n : 'group-data-[collapsible=icon]:w-(--sidebar-width-icon)',\n );\n\nconst getSidebarStyle = (style: SidebarProps['style']): JSX.CSSProperties => {\n const base: JSX.CSSProperties = {\n '--sidebar-width': SIDEBAR_WIDTH,\n '--sidebar-width-icon': SIDEBAR_WIDTH_ICON,\n };\n return typeof style === 'object' && style !== null ? { ...base, ...style } : base;\n};\n\nconst SidebarDesktopContainer: Component<SidebarDesktopContainerProps> = (props) => {\n const [local, others] = splitProps(props, ['variant', 'side', 'class', 'children']);\n return (\n <aside\n data-slot='sidebar-container'\n class={cn(\n 'top-0 bottom-0 md:flex absolute z-10 hidden w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear',\n local.side === 'left'\n ? 'left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]'\n : 'right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]',\n local.variant === 'floating' || local.variant === 'inset'\n ? 'p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+1rem+2px)]'\n : 'group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l',\n local.class,\n )}\n {...others}\n >\n <div\n data-sidebar='sidebar'\n data-slot='sidebar-inner'\n class='group-data-[variant=floating]:shadow-sm flex size-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:ring-1 group-data-[variant=floating]:ring-sidebar-border'\n >\n {local.children}\n </div>\n </aside>\n );\n};\n\nexport const SidebarDesktop: Component<SidebarProps> = (props) => {\n const { state } = useSidebar();\n const [local, others] = splitProps(props, [\n 'side',\n 'variant',\n 'collapsible',\n 'disableMobileSidebar',\n 'style',\n 'class',\n 'children',\n ]);\n\n const style = createMemo(() => getSidebarStyle(local.style));\n\n return (\n <div\n style={style()}\n class={getSidebarDesktopRootClass(local.disableMobileSidebar)}\n data-state={state()}\n data-collapsible={state() === 'collapsed' ? (local.collapsible ?? 'offcanvas') : ''}\n data-variant={local.variant ?? 'sidebar'}\n data-side={local.side ?? 'left'}\n data-slot='sidebar'\n >\n <div data-slot='sidebar-gap' class={getSidebarGapClass(local.variant)} />\n <SidebarDesktopContainer\n variant={local.variant ?? 'sidebar'}\n side={local.side ?? 'left'}\n class={cn(local.disableMobileSidebar === true ? 'flex' : 'md:flex hidden', local.class)}\n {...others}\n >\n {local.children}\n </SidebarDesktopContainer>\n </div>\n );\n};\n"],"names":["getSidebarDesktopRootClass","disableMobileSidebar","cn","getSidebarGapClass","variant","getSidebarStyle","style","base","SIDEBAR_WIDTH","SIDEBAR_WIDTH_ICON","SidebarDesktopContainer","props","local","others","splitProps","_el$","_tmpl$","_el$2","firstChild","_$spread","_$mergeProps","side","class","_$insert","children","SidebarDesktop","state","useSidebar","createMemo","_el$3","_tmpl$2","_el$4","_$createComponent","_$effect","_p$","_v$","_v$2","_v$3","_v$4","collapsible","_v$5","_v$6","_v$7","e","_$style","t","_$className","a","_$setAttribute","o","i","n","s","undefined"],"mappings":"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"}
1
+ {"version":3,"file":"SidebarDesktop.js","sources":["../../../src/components/sidebar/SidebarDesktop.tsx"],"sourcesContent":["import {\n createMemo,\n type Component,\n type ComponentProps,\n type JSX,\n type JSXElement,\n} from 'solid-js';\nimport { cn } from 'tailwind-variants';\n\nimport type { SidebarProps } from './Sidebar';\n\nimport { SIDEBAR_WIDTH, SIDEBAR_WIDTH_ICON } from './constants';\nimport { useSidebar } from './context';\n\ntype SidebarDesktopContainerProps = ComponentProps<'aside'> & {\n innerClass?: string;\n variant: string;\n side: string;\n children: JSXElement;\n};\n\nconst getSidebarDesktopRootClass = (\n disableMobileSidebar: boolean | undefined,\n): ComponentProps<'div'>['class'] =>\n cn(\n disableMobileSidebar === true\n ? 'group peer min-h-0 relative block self-stretch text-sidebar-foreground'\n : 'group peer md:block min-h-0 relative hidden self-stretch text-sidebar-foreground',\n );\n\nconst getSidebarGapClass = (variant: SidebarProps['variant']): ComponentProps<'div'>['class'] =>\n cn(\n 'relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear',\n 'group-data-[collapsible=offcanvas]:w-0',\n 'group-data-[side=right]:rotate-180',\n variant === 'floating' || variant === 'inset'\n ? 'group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+1rem)]'\n : 'group-data-[collapsible=icon]:w-(--sidebar-width-icon)',\n );\n\nconst getSidebarStyle = (style: SidebarProps['style']): JSX.CSSProperties => {\n const base: JSX.CSSProperties = {\n '--sidebar-width': SIDEBAR_WIDTH,\n '--sidebar-width-icon': SIDEBAR_WIDTH_ICON,\n };\n return typeof style === 'object' && style !== null ? { ...base, ...style } : base;\n};\n\nconst SidebarDesktopContainer: Component<SidebarDesktopContainerProps> = (props) => {\n const [local, others] = splitProps(props, ['variant', 'side', 'class', 'children', 'innerClass']);\n return (\n <aside\n data-slot='sidebar-container'\n class={cn(\n 'top-0 bottom-0 md:flex absolute z-10 hidden w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear',\n local.side === 'left'\n ? 'left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]'\n : 'right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]',\n local.variant === 'floating' || local.variant === 'inset'\n ? 'p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+1rem+2px)]'\n : 'group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l',\n local.class,\n )}\n {...others}\n >\n <div\n data-sidebar='sidebar'\n data-slot='sidebar-inner'\n class={cn(\n 'group-data-[variant=floating]:shadow-sm flex size-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:ring-1 group-data-[variant=floating]:ring-sidebar-border',\n local.innerClass,\n )}\n >\n {local.children}\n </div>\n </aside>\n );\n};\n\nexport const SidebarDesktop: Component<SidebarProps> = (props) => {\n const { state } = useSidebar();\n const [local, others] = splitProps(props, [\n 'side',\n 'variant',\n 'collapsible',\n 'disableMobileSidebar',\n 'style',\n 'class',\n 'innerClass',\n 'children',\n ]);\n\n const style = createMemo(() => getSidebarStyle(local.style));\n\n return (\n <div\n style={style()}\n class={getSidebarDesktopRootClass(local.disableMobileSidebar)}\n data-state={state()}\n data-collapsible={state() === 'collapsed' ? (local.collapsible ?? 'offcanvas') : ''}\n data-variant={local.variant ?? 'sidebar'}\n data-side={local.side ?? 'left'}\n data-slot='sidebar'\n >\n <div data-slot='sidebar-gap' class={getSidebarGapClass(local.variant)} />\n <SidebarDesktopContainer\n variant={local.variant ?? 'sidebar'}\n side={local.side ?? 'left'}\n class={cn(local.disableMobileSidebar === true ? 'flex' : 'md:flex hidden', local.class)}\n {...others}\n >\n {local.children}\n </SidebarDesktopContainer>\n </div>\n );\n};\n"],"names":["getSidebarDesktopRootClass","disableMobileSidebar","cn","getSidebarGapClass","variant","getSidebarStyle","style","base","SIDEBAR_WIDTH","SIDEBAR_WIDTH_ICON","SidebarDesktopContainer","props","local","others","splitProps","_el$","_tmpl$","_el$2","firstChild","_$spread","_$mergeProps","side","class","_$insert","children","_$effect","_$className","innerClass","SidebarDesktop","state","useSidebar","createMemo","_el$3","_tmpl$2","_el$4","_$createComponent","_p$","_v$","_v$2","_v$3","_v$4","collapsible","_v$5","_v$6","_v$7","e","_$style","t","a","_$setAttribute","o","i","n","s","undefined"],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package",
3
3
  "name": "@manafishrov/ui",
4
- "version": "1.2.8",
4
+ "version": "1.2.10",
5
5
  "description": "Styled component library for Manafish interfaces ",
6
6
  "license": "AGPL-3.0-or-later",
7
7
  "repository": {
@@ -7,6 +7,7 @@ import { SidebarDesktop } from './SidebarDesktop';
7
7
  import { SidebarMobile } from './SidebarMobile';
8
8
 
9
9
  export type SidebarProps = ComponentProps<'aside'> & {
10
+ innerClass?: string;
10
11
  side?: 'left' | 'right';
11
12
  variant?: 'sidebar' | 'floating' | 'inset';
12
13
  collapsible?: 'offcanvas' | 'icon' | 'none';
@@ -13,6 +13,7 @@ import { SIDEBAR_WIDTH, SIDEBAR_WIDTH_ICON } from './constants';
13
13
  import { useSidebar } from './context';
14
14
 
15
15
  type SidebarDesktopContainerProps = ComponentProps<'aside'> & {
16
+ innerClass?: string;
16
17
  variant: string;
17
18
  side: string;
18
19
  children: JSXElement;
@@ -46,7 +47,7 @@ const getSidebarStyle = (style: SidebarProps['style']): JSX.CSSProperties => {
46
47
  };
47
48
 
48
49
  const SidebarDesktopContainer: Component<SidebarDesktopContainerProps> = (props) => {
49
- const [local, others] = splitProps(props, ['variant', 'side', 'class', 'children']);
50
+ const [local, others] = splitProps(props, ['variant', 'side', 'class', 'children', 'innerClass']);
50
51
  return (
51
52
  <aside
52
53
  data-slot='sidebar-container'
@@ -65,7 +66,10 @@ const SidebarDesktopContainer: Component<SidebarDesktopContainerProps> = (props)
65
66
  <div
66
67
  data-sidebar='sidebar'
67
68
  data-slot='sidebar-inner'
68
- class='group-data-[variant=floating]:shadow-sm flex size-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:ring-1 group-data-[variant=floating]:ring-sidebar-border'
69
+ class={cn(
70
+ 'group-data-[variant=floating]:shadow-sm flex size-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:ring-1 group-data-[variant=floating]:ring-sidebar-border',
71
+ local.innerClass,
72
+ )}
69
73
  >
70
74
  {local.children}
71
75
  </div>
@@ -82,6 +86,7 @@ export const SidebarDesktop: Component<SidebarProps> = (props) => {
82
86
  'disableMobileSidebar',
83
87
  'style',
84
88
  'class',
89
+ 'innerClass',
85
90
  'children',
86
91
  ]);
87
92