@egose/shadcn-theme 0.0.60 → 0.0.61

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.
Files changed (96) hide show
  1. package/{chunk-XNTCCRNR.mjs → chunk-3DG54EVO.mjs} +4 -4
  2. package/{chunk-MW4W54D3.js → chunk-5AC6SSUU.js} +6 -6
  3. package/{chunk-MW4W54D3.js.map → chunk-5AC6SSUU.js.map} +1 -1
  4. package/{chunk-RXDQPTVS.js → chunk-5WZCVX6I.js} +9 -9
  5. package/{chunk-RXDQPTVS.js.map → chunk-5WZCVX6I.js.map} +1 -1
  6. package/{chunk-LSVA45KP.mjs → chunk-C736G6RV.mjs} +5 -5
  7. package/{chunk-JOD4N4QT.js → chunk-CSDFVUNP.js} +3 -3
  8. package/{chunk-JOD4N4QT.js.map → chunk-CSDFVUNP.js.map} +1 -1
  9. package/{chunk-UVCJNDR3.mjs → chunk-EIAS7WVI.mjs} +6 -6
  10. package/chunk-EIAS7WVI.mjs.map +1 -0
  11. package/{chunk-CJQZPOT7.mjs → chunk-F57PDM2P.mjs} +7 -7
  12. package/{chunk-MGX55IOV.mjs → chunk-GGOYFF4M.mjs} +2 -2
  13. package/{chunk-YRL22JCC.mjs → chunk-IYZWOHGP.mjs} +4 -4
  14. package/{chunk-6YOBNAXV.js → chunk-NUCMI4CP.js} +3 -3
  15. package/{chunk-6YOBNAXV.js.map → chunk-NUCMI4CP.js.map} +1 -1
  16. package/{chunk-36OX4XHZ.mjs → chunk-OI7CIW4X.mjs} +7 -7
  17. package/{chunk-JXS4XATF.js → chunk-PVKN7E6W.js} +9 -9
  18. package/chunk-PVKN7E6W.js.map +1 -0
  19. package/{chunk-KQXA7HBQ.js → chunk-Q5QVXAFP.js} +7 -7
  20. package/{chunk-KQXA7HBQ.js.map → chunk-Q5QVXAFP.js.map} +1 -1
  21. package/{chunk-757RWUDS.mjs → chunk-QJLNEVAE.mjs} +7 -7
  22. package/{chunk-UUWNH7TQ.mjs → chunk-VOED37ZV.mjs} +2 -2
  23. package/{chunk-BBVLNT32.js → chunk-WCMH464B.js} +5 -5
  24. package/{chunk-BBVLNT32.js.map → chunk-WCMH464B.js.map} +1 -1
  25. package/{chunk-J6TVLHSD.js → chunk-WGNLM36B.js} +3 -3
  26. package/{chunk-J6TVLHSD.js.map → chunk-WGNLM36B.js.map} +1 -1
  27. package/{chunk-SOP27IBG.js → chunk-XCFEBPRG.js} +3 -3
  28. package/{chunk-SOP27IBG.js.map → chunk-XCFEBPRG.js.map} +1 -1
  29. package/components/form/date-picker.js +4 -4
  30. package/components/form/date-picker.mjs +3 -3
  31. package/components/form/date-range-picker.js +3 -3
  32. package/components/form/date-range-picker.js.map +1 -1
  33. package/components/form/date-range-picker.mjs +5 -5
  34. package/components/form/hook-checkbox.js +3 -3
  35. package/components/form/hook-checkbox.js.map +1 -1
  36. package/components/form/hook-checkbox.mjs +3 -3
  37. package/components/form/hook-date-picker.js +7 -7
  38. package/components/form/hook-date-picker.js.map +1 -1
  39. package/components/form/hook-date-picker.mjs +6 -6
  40. package/components/form/hook-native-select.js +1 -1
  41. package/components/form/hook-native-select.js.map +1 -1
  42. package/components/form/hook-native-select.mjs +1 -1
  43. package/components/form/hook-searchable-select.js +4 -4
  44. package/components/form/hook-searchable-select.js.map +1 -1
  45. package/components/form/hook-searchable-select.mjs +3 -3
  46. package/components/form/hook-select.js +1 -1
  47. package/components/form/hook-select.js.map +1 -1
  48. package/components/form/hook-select.mjs +1 -1
  49. package/components/form/hook-text-input.js +4 -4
  50. package/components/form/hook-text-input.mjs +3 -3
  51. package/components/form/hook-textarea.js +1 -1
  52. package/components/form/hook-textarea.js.map +1 -1
  53. package/components/form/hook-textarea.mjs +1 -1
  54. package/components/form/hook-time-input.js +5 -5
  55. package/components/form/hook-time-input.mjs +4 -4
  56. package/components/form/searchable-select.js +3 -3
  57. package/components/form/searchable-select.mjs +2 -2
  58. package/components/form/text-input.js +3 -3
  59. package/components/form/text-input.mjs +2 -2
  60. package/components/form/time-input.js +5 -5
  61. package/components/form/time-input.mjs +4 -4
  62. package/components/ui/copy-button.js +2 -2
  63. package/components/ui/copy-button.js.map +1 -1
  64. package/components/ui/copy-button.mjs +3 -3
  65. package/components/ui/separator.d.mts +2 -2
  66. package/components/ui/separator.d.ts +2 -2
  67. package/components/ui/sidebar.d.mts +2 -2
  68. package/components/ui/sidebar.d.ts +2 -2
  69. package/components/ui/sidebar.js +4 -4
  70. package/components/ui/sidebar.mjs +3 -3
  71. package/layouts/sidebar1/app-sidebar.d.mts +2 -2
  72. package/layouts/sidebar1/app-sidebar.d.ts +2 -2
  73. package/layouts/sidebar1/app-sidebar.js +11 -11
  74. package/layouts/sidebar1/app-sidebar.mjs +10 -10
  75. package/layouts/sidebar1/context-switcher.js +6 -6
  76. package/layouts/sidebar1/context-switcher.mjs +5 -5
  77. package/layouts/sidebar1/index.js +15 -15
  78. package/layouts/sidebar1/index.js.map +1 -1
  79. package/layouts/sidebar1/index.mjs +17 -17
  80. package/layouts/sidebar1/nav-menus.js +6 -6
  81. package/layouts/sidebar1/nav-menus.mjs +5 -5
  82. package/layouts/sidebar1/nav-user.js +7 -7
  83. package/layouts/sidebar1/nav-user.mjs +6 -6
  84. package/layouts/simple/index.js +2 -2
  85. package/layouts/simple/index.mjs +3 -3
  86. package/package.json +1 -1
  87. package/chunk-JXS4XATF.js.map +0 -1
  88. package/chunk-UVCJNDR3.mjs.map +0 -1
  89. /package/{chunk-XNTCCRNR.mjs.map → chunk-3DG54EVO.mjs.map} +0 -0
  90. /package/{chunk-LSVA45KP.mjs.map → chunk-C736G6RV.mjs.map} +0 -0
  91. /package/{chunk-CJQZPOT7.mjs.map → chunk-F57PDM2P.mjs.map} +0 -0
  92. /package/{chunk-MGX55IOV.mjs.map → chunk-GGOYFF4M.mjs.map} +0 -0
  93. /package/{chunk-YRL22JCC.mjs.map → chunk-IYZWOHGP.mjs.map} +0 -0
  94. /package/{chunk-36OX4XHZ.mjs.map → chunk-OI7CIW4X.mjs.map} +0 -0
  95. /package/{chunk-757RWUDS.mjs.map → chunk-QJLNEVAE.mjs.map} +0 -0
  96. /package/{chunk-UUWNH7TQ.mjs.map → chunk-VOED37ZV.mjs.map} +0 -0
@@ -11,12 +11,12 @@ import {
11
11
  PopoverContent,
12
12
  PopoverTrigger
13
13
  } from "./chunk-47TKC7DB.mjs";
14
- import {
15
- Label
16
- } from "./chunk-NL4534LH.mjs";
17
14
  import {
18
15
  Button
19
16
  } from "./chunk-SQK67X4D.mjs";
17
+ import {
18
+ Label
19
+ } from "./chunk-NL4534LH.mjs";
20
20
  import {
21
21
  cn
22
22
  } from "./chunk-KGUUDFJE.mjs";
@@ -84,4 +84,4 @@ function FormSearchableSelect({
84
84
  export {
85
85
  FormSearchableSelect
86
86
  };
87
- //# sourceMappingURL=chunk-XNTCCRNR.mjs.map
87
+ //# sourceMappingURL=chunk-3DG54EVO.mjs.map
@@ -1,9 +1,6 @@
1
1
  "use client";
2
2
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } }
3
3
 
4
- var _chunkHN73FRPZjs = require('./chunk-HN73FRPZ.js');
5
-
6
-
7
4
  var _chunkHMEHDD5Njs = require('./chunk-HMEHDD5N.js');
8
5
 
9
6
 
@@ -12,6 +9,9 @@ var _chunkHMEHDD5Njs = require('./chunk-HMEHDD5N.js');
12
9
  var _chunkBH4FHKARjs = require('./chunk-BH4FHKAR.js');
13
10
 
14
11
 
12
+ var _chunkHN73FRPZjs = require('./chunk-HN73FRPZ.js');
13
+
14
+
15
15
 
16
16
 
17
17
 
@@ -21,10 +21,10 @@ var _chunkGZPKVSCRjs = require('./chunk-GZPKVSCR.js');
21
21
  var _chunkAPMXMQPZjs = require('./chunk-APMXMQPZ.js');
22
22
 
23
23
 
24
- var _chunkOFRRRK4Njs = require('./chunk-OFRRRK4N.js');
24
+ var _chunkN7JSYNXMjs = require('./chunk-N7JSYNXM.js');
25
25
 
26
26
 
27
- var _chunkN7JSYNXMjs = require('./chunk-N7JSYNXM.js');
27
+ var _chunkOFRRRK4Njs = require('./chunk-OFRRRK4N.js');
28
28
 
29
29
 
30
30
  var _chunkPSPAJNNBjs = require('./chunk-PSPAJNNB.js');
@@ -564,4 +564,4 @@ SidebarMenuSubButton.displayName = "SidebarMenuSubButton";
564
564
 
565
565
 
566
566
  exports.useSidebar = useSidebar; exports.SidebarProvider = SidebarProvider; exports.Sidebar = Sidebar; exports.SidebarTrigger = SidebarTrigger; exports.SidebarRail = SidebarRail; exports.SidebarInset = SidebarInset; exports.SidebarInput = SidebarInput; exports.SidebarHeader = SidebarHeader; exports.SidebarFooter = SidebarFooter; exports.SidebarSeparator = SidebarSeparator; exports.SidebarContent = SidebarContent; exports.SidebarGroup = SidebarGroup; exports.SidebarGroupLabel = SidebarGroupLabel; exports.SidebarGroupAction = SidebarGroupAction; exports.SidebarGroupContent = SidebarGroupContent; exports.SidebarMenu = SidebarMenu; exports.SidebarMenuItem = SidebarMenuItem; exports.SidebarMenuButton = SidebarMenuButton; exports.SidebarMenuAction = SidebarMenuAction; exports.SidebarMenuBadge = SidebarMenuBadge; exports.SidebarMenuSkeleton = SidebarMenuSkeleton; exports.SidebarMenuSub = SidebarMenuSub; exports.SidebarMenuSubItem = SidebarMenuSubItem; exports.SidebarMenuSubButton = SidebarMenuSubButton;
567
- //# sourceMappingURL=chunk-MW4W54D3.js.map
567
+ //# sourceMappingURL=chunk-5AC6SSUU.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-MW4W54D3.js","../components/ui/sidebar.tsx"],"names":[],"mappings":"AAAA;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACA;AACA;AACF,sDAA4B;AAC5B;AACE;AACA;AACA;AACA;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACA;AACF,sDAA4B;AAC5B;AACA;ACjCA,2EAAuB;AACvB,iDAAqB;AACrB,kEAAkC;AAClC,2CAA0B;AAW1B,IAAM,oBAAA,EAAsB,eAAA;AAC5B,IAAM,uBAAA,EAAyB,GAAA,EAAK,GAAA,EAAK,GAAA,EAAK,CAAA;AAC9C,IAAM,cAAA,EAAgB,OAAA;AACtB,IAAM,qBAAA,EAAuB,OAAA;AAC7B,IAAM,mBAAA,EAAqB,MAAA;AAC3B,IAAM,0BAAA,EAA4B,GAAA;AAYlC,IAAM,eAAA,EAAuB,KAAA,CAAA,aAAA,CAAqC,IAAI,CAAA;AAEtE,SAAS,UAAA,CAAA,EAAa;AACpB,EAAA,MAAM,QAAA,EAAgB,KAAA,CAAA,UAAA,CAAW,cAAc,CAAA;AAC/C,EAAA,GAAA,CAAI,CAAC,OAAA,EAAS;AACZ,IAAA,MAAM,IAAI,KAAA,CAAM,mDAAmD,CAAA;AAAA,EACrE;AAEA,EAAA,OAAO,OAAA;AACT;AAEA,IAAM,gBAAA,EAAwB,KAAA,CAAA,UAAA,CAO5B,CAAC,EAAA,EAAyG,GAAA,EAAA,GAAQ;AAAjH,EAAA,IAAA,GAAA,EAAA,EAAA,EAAE,EAAA,YAAA,EAAc,IAAA,EAAM,IAAA,EAAM,QAAA,EAAU,YAAA,EAAc,WAAA,EAAa,SAAA,EAAW,KAAA,EAAO,SAlDtF,EAAA,EAkDG,EAAA,EAAgG,MAAA,EAAA,wCAAA,EAAhG,EAAgG,CAA9F,aAAA,EAAoB,MAAA,EAAgB,cAAA,EAA2B,WAAA,EAAW,OAAA,EAAO,UAAA,CAAA,CAAA;AACpF,EAAA,MAAM,SAAA,EAAW,0CAAA,CAAY;AAC7B,EAAA,MAAM,CAAC,UAAA,EAAY,aAAa,EAAA,EAAU,KAAA,CAAA,QAAA,CAAS,KAAK,CAAA;AAIxD,EAAA,MAAM,CAAC,KAAA,EAAO,QAAQ,EAAA,EAAU,KAAA,CAAA,QAAA,CAAS,WAAW,CAAA;AACpD,EAAA,MAAM,KAAA,EAAO,SAAA,GAAA,KAAA,EAAA,SAAA,EAAY,KAAA;AACzB,EAAA,MAAM,QAAA,EAAgB,KAAA,CAAA,WAAA;AAAA,IACpB,CAAC,KAAA,EAAA,GAAmD;AAClD,MAAA,MAAM,UAAA,EAAY,OAAO,MAAA,IAAU,WAAA,EAAa,KAAA,CAAM,IAAI,EAAA,EAAI,KAAA;AAC9D,MAAA,GAAA,CAAI,WAAA,EAAa;AACf,QAAA,WAAA,CAAY,SAAS,CAAA;AAAA,MACvB,EAAA,KAAO;AACL,QAAA,QAAA,CAAS,SAAS,CAAA;AAAA,MACpB;AAGA,MAAA,QAAA,CAAS,OAAA,EAAS,CAAA,EAAA;AACpB,IAAA;AACkB,IAAA;AACpB,EAAA;AAG4B,EAAA;AACR,IAAA;AACG,EAAA;AAGD,EAAA;AACd,IAAA;AACc,MAAA;AACV,QAAA;AACQ,QAAA;AAChB,MAAA;AACF,IAAA;AAEO,IAAA;AACa,IAAA;AACJ,EAAA;AAIG,EAAA;AAEM,EAAA;AAClB,IAAA;AACL,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACF,IAAA;AACc,IAAA;AAChB,EAAA;AAGE,EAAA;AAEK,IAAA;AAAA,IAAA;AAEG,MAAA;AACE,QAAA;AACA,QAAA;AACG,MAAA;AAGI,MAAA;AACT,QAAA;AACA,QAAA;AACF,MAAA;AACA,MAAA;AACI,IAAA;AAEH,IAAA;AAGP,EAAA;AAEH;AACe;AAEM;AAOV,EAAA;AACQ,EAAA;AAEE,EAAA;AAEhB,IAAA;AAAC,MAAA;AAAA,MAAA;AACe,QAAA;AACd,QAAA;AACI,MAAA;AAEH,MAAA;AACH,IAAA;AAEJ,EAAA;AAEc,EAAA;AAEV,IAAA;AAEG,MAAA;AAAA,MAAA;AACc,QAAA;AACD,QAAA;AACZ,QAAA;AACU,QAAA;AAER,QAAA;AACE,UAAA;AACF,QAAA;AAEF,QAAA;AAAA,MAAA;AAEA,sBAAA;AAEJ,IAAA;AAEJ,EAAA;AAGE,EAAA;AAAC,IAAA;AAAA,IAAA;AACC,MAAA;AACU,MAAA;AACE,MAAA;AACZ,MAAA;AACc,MAAA;AACH,MAAA;AAAA,IAAA;AAGX,oBAAA;AAAC,MAAA;AAAA,MAAA;AACY,QAAA;AACT,UAAA;AACA,UAAA;AACA,UAAA;AACY,UAAA;AAGd,QAAA;AAAA,MAAA;AACF,IAAA;AACA,oBAAA;AAAC,MAAA;AAAA,MAAA;AACY,QAAA;AACT,UAAA;AACS,UAAA;AAEL;AAEQ,UAAA;AAGZ,UAAA;AACF,QAAA;AACI,MAAA;AAEJ,sBAAA;AAAC,QAAA;AAAA,QAAA;AACC,UAAA;AACU,UAAA;AAAA,QAAA;AAET,QAAA;AACH,MAAA;AACF,IAAA;AACF,EAAA;AAEH;AACqB;AAEO;AACgB,EAAA;AAAxC,IAAA;AACO,IAAA;AAGN,IAAA;AAAC,MAAA;AAAA,MAAA;AACC,QAAA;AACa,QAAA;AACL,QAAA;AACH,QAAA;AACS,QAAA;AACJ,QAAA;AACR,UAAA;AACc,UAAA;AAChB,QAAA;AACI,MAAA;AAEJ,sBAAA;AACA,sBAAA;AACF,IAAA;AAEJ,EAAA;AACF;AACe;AAEW;AACU,EAAA;AAA/B,IAAA;AACO,IAAA;AAGN,IAAA;AAAC,MAAA;AAAA,MAAA;AACC,QAAA;AACa,QAAA;AACF,QAAA;AACD,QAAA;AACD,QAAA;AACH,QAAA;AACK,QAAA;AACT,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACF,QAAA;AACI,MAAA;AACN,IAAA;AAEJ,EAAA;AACF;AACY;AAEe;AAA4D,EAAA;AAEnF,EAAA;AAAC,IAAA;AAAA,IAAA;AACC,MAAA;AACW,MAAA;AACT,QAAA;AACA,QAAA;AACA,QAAA;AACF,MAAA;AACI,IAAA;AACN,EAAA;AAEH;AACY;AAEc;AACS,EAAA;AAA/B,IAAA;AAEC,IAAA;AAAC,MAAA;AAAA,MAAA;AACC,QAAA;AACa,QAAA;AACF,QAAA;AACT,UAAA;AACA,UAAA;AACF,QAAA;AACI,MAAA;AACN,IAAA;AAEJ,EAAA;AACF;AACa;AAEe;AAA2D,EAAA;AAC9E,EAAA;AACR;AACa;AAEc;AAA2D,EAAA;AAC9E,EAAA;AACR;AACa;AAEiB;AACK,EAAA;AAA/B,IAAA;AAEC,IAAA;AAAC,MAAA;AAAA,MAAA;AACC,QAAA;AACa,QAAA;AACC,QAAA;AACV,MAAA;AACN,IAAA;AAEJ,EAAA;AACF;AACiB;AAEY;AAA2D,EAAA;AAEpF,EAAA;AAAC,IAAA;AAAA,IAAA;AACC,MAAA;AACa,MAAA;AACF,MAAA;AACT,QAAA;AACA,QAAA;AACF,MAAA;AACI,IAAA;AACN,EAAA;AAEH;AACc;AAEY;AAA2D,EAAA;AAElF,EAAA;AAAC,IAAA;AAAA,IAAA;AACC,MAAA;AACa,MAAA;AACC,MAAA;AACV,IAAA;AACN,EAAA;AAEH;AACY;AAEmB;AACqB,EAAA;AAAhD,IAAA;AACY,IAAA;AAGX,IAAA;AAAC,MAAA;AAAA,MAAA;AACC,QAAA;AACa,QAAA;AACF,QAAA;AACT,UAAA;AACA,UAAA;AACA,UAAA;AACF,QAAA;AACI,MAAA;AACN,IAAA;AAEJ,EAAA;AACF;AACkB;AAEe;AACoB,EAAA;AAAhD,IAAA;AACY,IAAA;AAGX,IAAA;AAAC,MAAA;AAAA,MAAA;AACC,QAAA;AACa,QAAA;AACF,QAAA;AACT,UAAA;AAAA;AAEA,UAAA;AACA,UAAA;AACA,UAAA;AACF,QAAA;AACI,MAAA;AACN,IAAA;AAEJ,EAAA;AACF;AACmB;AAEb;AAC2B,EAAA;AAA5B,IAAA;AACD,IAAA;AAAmG,EAAA;AAEvG;AACoB;AAEM;AAA4D,EAAA;AACpF,EAAA;AACD;AACW;AAEkB;AAAyD,EAAA;AACrF,EAAA;AACD;AACe;AAEV;AACJ,EAAA;AACA,EAAA;AACY,IAAA;AACC,MAAA;AACE,QAAA;AAEP,QAAA;AACJ,MAAA;AACM,MAAA;AACK,QAAA;AACL,QAAA;AACA,QAAA;AACN,MAAA;AACF,IAAA;AACiB,IAAA;AACN,MAAA;AACH,MAAA;AACR,IAAA;AACF,EAAA;AACF;AAEgC;AAO3B,EAAA;AACoB,EAAA;AACL,EAAA;AAGhB,EAAA;AAAC,IAAA;AAAA,IAAA;AACC,MAAA;AACa,MAAA;AACF,MAAA;AACE,MAAA;AACC,MAAA;AACV,IAAA;AACN,EAAA;AAGY,EAAA;AACL,IAAA;AACT,EAAA;AAEuB,EAAA;AACX,IAAA;AACE,MAAA;AACZ,IAAA;AACF,EAAA;AAGE,EAAA;AAKH;AACiB;AAEc;AAM3B,EAAA;AACoB,EAAA;AAGrB,EAAA;AAAC,IAAA;AAAA,IAAA;AACC,MAAA;AACa,MAAA;AACF,MAAA;AACT,QAAA;AAAA;AAEA,QAAA;AACA,QAAA;AACA,QAAA;AACA,QAAA;AACA,QAAA;AAEE,QAAA;AACF,QAAA;AACF,MAAA;AACI,IAAA;AACN,EAAA;AAEH;AACiB;AAEa;AACE,EAAA;AAA5B,IAAA;AACD,IAAA;AAAC,MAAA;AAAA,MAAA;AACC,QAAA;AACa,QAAA;AACF,QAAA;AACT,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACF,QAAA;AACI,MAAA;AACN,IAAA;AAAA,EAAA;AAEJ;AACiB;AAEX;AAKD,EAAA;AAEiB,EAAA;AACG,IAAA;AAClB,EAAA;AAGH,EAAA;AAAC,IAAA;AAAA,IAAA;AACC,MAAA;AACa,MAAA;AACC,MAAA;AACV,IAAA;AAES,IAAA;AACb,oBAAA;AAAC,MAAA;AAAA,MAAA;AACW,QAAA;AACG,QAAA;AAEX,QAAA;AACE,UAAA;AACF,QAAA;AAAA,MAAA;AAEJ,IAAA;AACF,EAAA;AAEH;AACmB;AAES;AACI,EAAA;AAA5B,IAAA;AACD,IAAA;AAAC,MAAA;AAAA,MAAA;AACC,QAAA;AACa,QAAA;AACF,QAAA;AACT,UAAA;AACA,UAAA;AACA,UAAA;AACF,QAAA;AACI,MAAA;AACN,IAAA;AAAA,EAAA;AAEJ;AACe;AAEkB;AAAuD,EAAA;AACtF,EAAA;AACD;AACkB;AAEb;AAOD,EAAA;AACoB,EAAA;AAGrB,EAAA;AAAC,IAAA;AAAA,IAAA;AACC,MAAA;AACa,MAAA;AACF,MAAA;AACE,MAAA;AACF,MAAA;AACT,QAAA;AACA,QAAA;AACiB,QAAA;AACA,QAAA;AACjB,QAAA;AACA,QAAA;AACF,MAAA;AACI,IAAA;AACN,EAAA;AAEH;AACoB;AD7EI;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-MW4W54D3.js","sourcesContent":[null,"\"use client\";\nimport * as React from 'react';\nimport { Slot } from '@radix-ui/react-slot';\nimport { VariantProps, cva } from 'class-variance-authority';\nimport { PanelLeft } from 'lucide-react';\n\nimport { useIsMobile } from '../../hooks/use-mobile';\nimport { cn } from '../../utils/ui';\nimport { Button } from './button';\nimport { Input } from './input';\nimport { Separator } from './separator';\nimport { Sheet, SheetTitle, SheetContent } from './sheet';\nimport { Skeleton } from './skeleton';\nimport { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from './tooltip';\n\nconst SIDEBAR_COOKIE_NAME = 'sidebar_state';\nconst SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7;\nconst SIDEBAR_WIDTH = '16rem';\nconst SIDEBAR_WIDTH_MOBILE = '18rem';\nconst SIDEBAR_WIDTH_ICON = '3rem';\nconst SIDEBAR_KEYBOARD_SHORTCUT = 'b';\n\ntype SidebarContext = {\n state: 'expanded' | 'collapsed';\n open: boolean;\n setOpen: (open: boolean) => void;\n openMobile: boolean;\n setOpenMobile: (open: boolean) => void;\n isMobile: boolean;\n toggleSidebar: () => void;\n};\n\nconst SidebarContext = React.createContext<SidebarContext | null>(null);\n\nfunction useSidebar() {\n const context = React.useContext(SidebarContext);\n if (!context) {\n throw new Error('useSidebar must be used within a SidebarProvider.');\n }\n\n return context;\n}\n\nconst SidebarProvider = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<'div'> & {\n defaultOpen?: boolean;\n open?: boolean;\n onOpenChange?: (open: boolean) => void;\n }\n>(({ defaultOpen = true, open: openProp, onOpenChange: setOpenProp, className, style, children, ...props }, ref) => {\n const isMobile = useIsMobile();\n const [openMobile, setOpenMobile] = React.useState(false);\n\n // This is the internal state of the sidebar.\n // We use openProp and setOpenProp for control from outside the component.\n const [_open, _setOpen] = React.useState(defaultOpen);\n const open = openProp ?? _open;\n const setOpen = React.useCallback(\n (value: boolean | ((value: boolean) => boolean)) => {\n const openState = typeof value === 'function' ? value(open) : value;\n if (setOpenProp) {\n setOpenProp(openState);\n } else {\n _setOpen(openState);\n }\n\n // This sets the cookie to keep the sidebar state.\n document.cookie = `${SIDEBAR_COOKIE_NAME}=${openState}; path=/; max-age=${SIDEBAR_COOKIE_MAX_AGE}`;\n },\n [setOpenProp, open],\n );\n\n // Helper to toggle the sidebar.\n const toggleSidebar = React.useCallback(() => {\n return isMobile ? setOpenMobile((open) => !open) : setOpen((open) => !open);\n }, [isMobile, setOpen, setOpenMobile]);\n\n // Adds a keyboard shortcut to toggle the sidebar.\n React.useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent) => {\n if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {\n event.preventDefault();\n toggleSidebar();\n }\n };\n\n window.addEventListener('keydown', handleKeyDown);\n return () => window.removeEventListener('keydown', handleKeyDown);\n }, [toggleSidebar]);\n\n // We add a state so that we can do data-state=\"expanded\" or \"collapsed\".\n // This makes it easier to style the sidebar with Tailwind classes.\n const state = open ? 'expanded' : 'collapsed';\n\n const contextValue = React.useMemo<SidebarContext>(\n () => ({\n state,\n open,\n setOpen,\n isMobile,\n openMobile,\n setOpenMobile,\n toggleSidebar,\n }),\n [state, open, setOpen, isMobile, openMobile, setOpenMobile, toggleSidebar],\n );\n\n return (\n <SidebarContext.Provider value={contextValue}>\n <TooltipProvider delayDuration={0}>\n <div\n style={\n {\n '--sidebar-width': SIDEBAR_WIDTH,\n '--sidebar-width-icon': SIDEBAR_WIDTH_ICON,\n ...style,\n } as React.CSSProperties\n }\n className={cn(\n 'group/sidebar-wrapper flex min-h-svh w-screen has-[[data-variant=inset]]:bg-sidebar w-full',\n className,\n )}\n ref={ref}\n {...props}\n >\n {children}\n </div>\n </TooltipProvider>\n </SidebarContext.Provider>\n );\n});\nSidebarProvider.displayName = 'SidebarProvider';\n\nconst Sidebar = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<'div'> & {\n side?: 'left' | 'right';\n variant?: 'sidebar' | 'floating' | 'inset';\n collapsible?: 'offcanvas' | 'icon' | 'none';\n }\n>(({ side = 'left', variant = 'sidebar', collapsible = 'offcanvas', className, children, ...props }, ref) => {\n const { isMobile, state, openMobile, setOpenMobile } = useSidebar();\n\n if (collapsible === 'none') {\n return (\n <div\n className={cn('flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground', className)}\n ref={ref}\n {...props}\n >\n {children}\n </div>\n );\n }\n\n if (isMobile) {\n return (\n <Sheet open={openMobile} onOpenChange={setOpenMobile} {...props}>\n <SheetTitle className=\"hidden\"></SheetTitle>\n <SheetContent\n data-sidebar=\"sidebar\"\n data-mobile=\"true\"\n aria-describedby=\"\"\n className=\"w-(--sidebar-width) bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden\"\n style={\n {\n '--sidebar-width': SIDEBAR_WIDTH_MOBILE,\n } as React.CSSProperties\n }\n side={side}\n >\n <div className=\"flex h-full w-full flex-col\">{children}</div>\n </SheetContent>\n </Sheet>\n );\n }\n\n return (\n <div\n ref={ref}\n className=\"group peer hidden text-sidebar-foreground md:block\"\n data-state={state}\n data-collapsible={state === 'collapsed' ? collapsible : ''}\n data-variant={variant}\n data-side={side}\n >\n {/* This is what handles the sidebar gap on desktop */}\n <div\n className={cn(\n 'relative h-svh 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)_+_theme(spacing.4))]'\n : 'group-data-[collapsible=icon]:w-(--sidebar-width-icon)',\n )}\n />\n <div\n className={cn(\n 'fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear md:flex',\n 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 // Adjust the padding for floating and inset variants.\n variant === 'floating' || variant === 'inset'\n ? 'p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4)_+2px)]'\n : 'group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l',\n className,\n )}\n {...props}\n >\n <div\n data-sidebar=\"sidebar\"\n className=\"flex h-full w-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:border-sidebar-border group-data-[variant=floating]:shadow\"\n >\n {children}\n </div>\n </div>\n </div>\n );\n});\nSidebar.displayName = 'Sidebar';\n\nconst SidebarTrigger = React.forwardRef<React.ElementRef<typeof Button>, React.ComponentProps<typeof Button>>(\n ({ className, onClick, ...props }, ref) => {\n const { toggleSidebar } = useSidebar();\n\n return (\n <Button\n ref={ref}\n data-sidebar=\"trigger\"\n variant=\"light\"\n size=\"icon\"\n className={cn('h-7 w-7', className)}\n onClick={(event) => {\n onClick?.(event);\n toggleSidebar();\n }}\n {...props}\n >\n <PanelLeft />\n <span className=\"sr-only\">Toggle Sidebar</span>\n </Button>\n );\n },\n);\nSidebarTrigger.displayName = 'SidebarTrigger';\n\nconst SidebarRail = React.forwardRef<HTMLButtonElement, React.ComponentProps<'button'>>(\n ({ className, ...props }, ref) => {\n const { toggleSidebar } = useSidebar();\n\n return (\n <button\n ref={ref}\n data-sidebar=\"rail\"\n aria-label=\"Toggle Sidebar\"\n tabIndex={-1}\n onClick={toggleSidebar}\n title=\"Toggle Sidebar\"\n className={cn(\n 'absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] hover:after:bg-sidebar-border group-data-[side=left]:-right-4 group-data-[side=right]:left-0 sm:flex',\n '[[data-side=left]_&]:cursor-w-resize [[data-side=right]_&]:cursor-e-resize',\n '[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize',\n 'group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full group-data-[collapsible=offcanvas]:hover:bg-sidebar',\n '[[data-side=left][data-collapsible=offcanvas]_&]:-right-2',\n '[[data-side=right][data-collapsible=offcanvas]_&]:-left-2',\n className,\n )}\n {...props}\n />\n );\n },\n);\nSidebarRail.displayName = 'SidebarRail';\n\nconst SidebarInset = React.forwardRef<HTMLDivElement, React.ComponentProps<'main'>>(({ className, ...props }, ref) => {\n return (\n <main\n ref={ref}\n className={cn(\n 'relative flex min-h-svh flex-1 flex-col bg-background',\n 'peer-data-[variant=inset]:min-h-[calc(100svh-theme(spacing.4))] md:peer-data-[variant=inset]:m-2 md:peer-data-[state=collapsed]:peer-data-[variant=inset]:ml-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow',\n className,\n )}\n {...props}\n />\n );\n});\nSidebarInset.displayName = 'SidebarInset';\n\nconst SidebarInput = React.forwardRef<React.ElementRef<typeof Input>, React.ComponentProps<typeof Input>>(\n ({ className, ...props }, ref) => {\n return (\n <Input\n ref={ref}\n data-sidebar=\"input\"\n className={cn(\n 'h-8 w-full bg-background shadow-none focus-visible:ring-2 focus-visible:ring-sidebar-ring',\n className,\n )}\n {...props}\n />\n );\n },\n);\nSidebarInput.displayName = 'SidebarInput';\n\nconst SidebarHeader = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'>>(({ className, ...props }, ref) => {\n return <div ref={ref} data-sidebar=\"header\" className={cn('flex flex-col gap-2 p-2', className)} {...props} />;\n});\nSidebarHeader.displayName = 'SidebarHeader';\n\nconst SidebarFooter = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'>>(({ className, ...props }, ref) => {\n return <div ref={ref} data-sidebar=\"footer\" className={cn('flex flex-col gap-2 p-2', className)} {...props} />;\n});\nSidebarFooter.displayName = 'SidebarFooter';\n\nconst SidebarSeparator = React.forwardRef<React.ElementRef<typeof Separator>, React.ComponentProps<typeof Separator>>(\n ({ className, ...props }, ref) => {\n return (\n <Separator\n ref={ref}\n data-sidebar=\"separator\"\n className={cn('mx-2 w-auto bg-sidebar-border', className)}\n {...props}\n />\n );\n },\n);\nSidebarSeparator.displayName = 'SidebarSeparator';\n\nconst SidebarContent = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'>>(({ className, ...props }, ref) => {\n return (\n <div\n ref={ref}\n data-sidebar=\"content\"\n className={cn(\n 'flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden',\n className,\n )}\n {...props}\n />\n );\n});\nSidebarContent.displayName = 'SidebarContent';\n\nconst SidebarGroup = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'>>(({ className, ...props }, ref) => {\n return (\n <div\n ref={ref}\n data-sidebar=\"group\"\n className={cn('relative flex w-full min-w-0 flex-col p-2', className)}\n {...props}\n />\n );\n});\nSidebarGroup.displayName = 'SidebarGroup';\n\nconst SidebarGroupLabel = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'> & { asChild?: boolean }>(\n ({ className, asChild = false, ...props }, ref) => {\n const Comp = asChild ? Slot : 'div';\n\n return (\n <Comp\n ref={ref}\n data-sidebar=\"group-label\"\n className={cn(\n 'flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium text-sidebar-foreground/70 outline-none ring-sidebar-ring transition-[margin,opacity] duration-200 ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0',\n 'group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0',\n className,\n )}\n {...props}\n />\n );\n },\n);\nSidebarGroupLabel.displayName = 'SidebarGroupLabel';\n\nconst SidebarGroupAction = React.forwardRef<HTMLButtonElement, React.ComponentProps<'button'> & { asChild?: boolean }>(\n ({ className, asChild = false, ...props }, ref) => {\n const Comp = asChild ? Slot : 'button';\n\n return (\n <Comp\n ref={ref}\n data-sidebar=\"group-action\"\n className={cn(\n 'absolute right-3 top-3.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-none ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0',\n // Increases the hit area of the button on mobile.\n 'after:absolute after:-inset-2 after:md:hidden',\n 'group-data-[collapsible=icon]:hidden',\n className,\n )}\n {...props}\n />\n );\n },\n);\nSidebarGroupAction.displayName = 'SidebarGroupAction';\n\nconst SidebarGroupContent = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'>>(\n ({ className, ...props }, ref) => (\n <div ref={ref} data-sidebar=\"group-content\" className={cn('w-full text-sm', className)} {...props} />\n ),\n);\nSidebarGroupContent.displayName = 'SidebarGroupContent';\n\nconst SidebarMenu = React.forwardRef<HTMLUListElement, React.ComponentProps<'ul'>>(({ className, ...props }, ref) => (\n <ul ref={ref} data-sidebar=\"menu\" className={cn('flex w-full min-w-0 flex-col gap-1', className)} {...props} />\n));\nSidebarMenu.displayName = 'SidebarMenu';\n\nconst SidebarMenuItem = React.forwardRef<HTMLLIElement, React.ComponentProps<'li'>>(({ className, ...props }, ref) => (\n <li ref={ref} data-sidebar=\"menu-item\" className={cn('group/menu-item relative', className)} {...props} />\n));\nSidebarMenuItem.displayName = 'SidebarMenuItem';\n\nconst sidebarMenuButtonVariants = cva(\n 'peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-none ring-sidebar-ring transition-[width,height,padding] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 group-has-[[data-sidebar=menu-action]]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:!size-8 group-data-[collapsible=icon]:!p-2 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0',\n {\n variants: {\n variant: {\n default: 'hover:bg-sidebar-accent hover:text-sidebar-accent-foreground',\n outline:\n 'bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]',\n },\n size: {\n default: 'h-8 text-sm',\n sm: 'h-7 text-xs',\n lg: 'h-12 text-sm group-data-[collapsible=icon]:!p-0',\n },\n },\n defaultVariants: {\n variant: 'default',\n size: 'default',\n },\n },\n);\n\nconst SidebarMenuButton = React.forwardRef<\n HTMLButtonElement,\n React.ComponentProps<'button'> & {\n asChild?: boolean;\n isActive?: boolean;\n tooltip?: string | React.ComponentProps<typeof TooltipContent>;\n } & VariantProps<typeof sidebarMenuButtonVariants>\n>(({ asChild = false, isActive = false, variant = 'default', size = 'default', tooltip, className, ...props }, ref) => {\n const Comp = asChild ? Slot : 'button';\n const { isMobile, state } = useSidebar();\n\n const button = (\n <Comp\n ref={ref}\n data-sidebar=\"menu-button\"\n data-size={size}\n data-active={isActive}\n className={cn(sidebarMenuButtonVariants({ variant, size }), className)}\n {...props}\n />\n );\n\n if (!tooltip) {\n return button;\n }\n\n if (typeof tooltip === 'string') {\n tooltip = {\n children: tooltip,\n };\n }\n\n return (\n <Tooltip>\n <TooltipTrigger asChild>{button}</TooltipTrigger>\n <TooltipContent side=\"right\" align=\"center\" hidden={state !== 'collapsed' || isMobile} {...tooltip} />\n </Tooltip>\n );\n});\nSidebarMenuButton.displayName = 'SidebarMenuButton';\n\nconst SidebarMenuAction = React.forwardRef<\n HTMLButtonElement,\n React.ComponentProps<'button'> & {\n asChild?: boolean;\n showOnHover?: boolean;\n }\n>(({ className, asChild = false, showOnHover = false, ...props }, ref) => {\n const Comp = asChild ? Slot : 'button';\n\n return (\n <Comp\n ref={ref}\n data-sidebar=\"menu-action\"\n className={cn(\n 'absolute right-1 top-1.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-none ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 peer-hover/menu-button:text-sidebar-accent-foreground [&>svg]:size-4 [&>svg]:shrink-0',\n // Increases the hit area of the button on mobile.\n 'after:absolute after:-inset-2 after:md:hidden',\n 'peer-data-[size=sm]/menu-button:top-1',\n 'peer-data-[size=default]/menu-button:top-1.5',\n 'peer-data-[size=lg]/menu-button:top-2.5',\n 'group-data-[collapsible=icon]:hidden',\n showOnHover &&\n 'group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 peer-data-[active=true]/menu-button:text-sidebar-accent-foreground md:opacity-0',\n className,\n )}\n {...props}\n />\n );\n});\nSidebarMenuAction.displayName = 'SidebarMenuAction';\n\nconst SidebarMenuBadge = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'>>(\n ({ className, ...props }, ref) => (\n <div\n ref={ref}\n data-sidebar=\"menu-badge\"\n className={cn(\n 'pointer-events-none absolute right-1 flex h-5 min-w-5 select-none items-center justify-center rounded-md px-1 text-xs font-medium tabular-nums text-sidebar-foreground',\n 'peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground',\n 'peer-data-[size=sm]/menu-button:top-1',\n 'peer-data-[size=default]/menu-button:top-1.5',\n 'peer-data-[size=lg]/menu-button:top-2.5',\n 'group-data-[collapsible=icon]:hidden',\n className,\n )}\n {...props}\n />\n ),\n);\nSidebarMenuBadge.displayName = 'SidebarMenuBadge';\n\nconst SidebarMenuSkeleton = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<'div'> & {\n showIcon?: boolean;\n }\n>(({ className, showIcon = false, ...props }, ref) => {\n // Random width between 50 to 90%.\n const width = React.useMemo(() => {\n return `${Math.floor(Math.random() * 40) + 50}%`;\n }, []);\n\n return (\n <div\n ref={ref}\n data-sidebar=\"menu-skeleton\"\n className={cn('flex h-8 items-center gap-2 rounded-md px-2', className)}\n {...props}\n >\n {showIcon && <Skeleton className=\"size-4 rounded-md\" data-sidebar=\"menu-skeleton-icon\" />}\n <Skeleton\n className=\"h-4 max-w-[--skeleton-width] flex-1\"\n data-sidebar=\"menu-skeleton-text\"\n style={\n {\n '--skeleton-width': width,\n } as React.CSSProperties\n }\n />\n </div>\n );\n});\nSidebarMenuSkeleton.displayName = 'SidebarMenuSkeleton';\n\nconst SidebarMenuSub = React.forwardRef<HTMLUListElement, React.ComponentProps<'ul'>>(\n ({ className, ...props }, ref) => (\n <ul\n ref={ref}\n data-sidebar=\"menu-sub\"\n className={cn(\n 'mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l border-sidebar-border px-2.5 py-0.5',\n 'group-data-[collapsible=icon]:hidden',\n className,\n )}\n {...props}\n />\n ),\n);\nSidebarMenuSub.displayName = 'SidebarMenuSub';\n\nconst SidebarMenuSubItem = React.forwardRef<HTMLLIElement, React.ComponentProps<'li'>>(({ ...props }, ref) => (\n <li ref={ref} {...props} />\n));\nSidebarMenuSubItem.displayName = 'SidebarMenuSubItem';\n\nconst SidebarMenuSubButton = React.forwardRef<\n HTMLAnchorElement,\n React.ComponentProps<'a'> & {\n asChild?: boolean;\n size?: 'sm' | 'md';\n isActive?: boolean;\n }\n>(({ asChild = false, size = 'md', isActive, className, ...props }, ref) => {\n const Comp = asChild ? Slot : 'a';\n\n return (\n <Comp\n ref={ref}\n data-sidebar=\"menu-sub-button\"\n data-size={size}\n data-active={isActive}\n className={cn(\n 'flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 text-sidebar-foreground outline-none ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground',\n 'data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground',\n size === 'sm' && 'text-xs',\n size === 'md' && 'text-sm',\n 'group-data-[collapsible=icon]:hidden',\n className,\n )}\n {...props}\n />\n );\n});\nSidebarMenuSubButton.displayName = 'SidebarMenuSubButton';\n\nexport {\n Sidebar,\n SidebarContent,\n SidebarFooter,\n SidebarGroup,\n SidebarGroupAction,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarHeader,\n SidebarInput,\n SidebarInset,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuBadge,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSkeleton,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n SidebarProvider,\n SidebarRail,\n SidebarSeparator,\n SidebarTrigger,\n useSidebar,\n};\n"]}
1
+ {"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-5AC6SSUU.js","../components/ui/sidebar.tsx"],"names":[],"mappings":"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","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-5AC6SSUU.js","sourcesContent":[null,"\"use client\";\nimport * as React from 'react';\nimport { Slot } from '@radix-ui/react-slot';\nimport { VariantProps, cva } from 'class-variance-authority';\nimport { PanelLeft } from 'lucide-react';\n\nimport { useIsMobile } from '../../hooks/use-mobile';\nimport { cn } from '../../utils/ui';\nimport { Button } from './button';\nimport { Input } from './input';\nimport { Separator } from './separator';\nimport { Sheet, SheetTitle, SheetContent } from './sheet';\nimport { Skeleton } from './skeleton';\nimport { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from './tooltip';\n\nconst SIDEBAR_COOKIE_NAME = 'sidebar_state';\nconst SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7;\nconst SIDEBAR_WIDTH = '16rem';\nconst SIDEBAR_WIDTH_MOBILE = '18rem';\nconst SIDEBAR_WIDTH_ICON = '3rem';\nconst SIDEBAR_KEYBOARD_SHORTCUT = 'b';\n\ntype SidebarContext = {\n state: 'expanded' | 'collapsed';\n open: boolean;\n setOpen: (open: boolean) => void;\n openMobile: boolean;\n setOpenMobile: (open: boolean) => void;\n isMobile: boolean;\n toggleSidebar: () => void;\n};\n\nconst SidebarContext = React.createContext<SidebarContext | null>(null);\n\nfunction useSidebar() {\n const context = React.useContext(SidebarContext);\n if (!context) {\n throw new Error('useSidebar must be used within a SidebarProvider.');\n }\n\n return context;\n}\n\nconst SidebarProvider = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<'div'> & {\n defaultOpen?: boolean;\n open?: boolean;\n onOpenChange?: (open: boolean) => void;\n }\n>(({ defaultOpen = true, open: openProp, onOpenChange: setOpenProp, className, style, children, ...props }, ref) => {\n const isMobile = useIsMobile();\n const [openMobile, setOpenMobile] = React.useState(false);\n\n // This is the internal state of the sidebar.\n // We use openProp and setOpenProp for control from outside the component.\n const [_open, _setOpen] = React.useState(defaultOpen);\n const open = openProp ?? _open;\n const setOpen = React.useCallback(\n (value: boolean | ((value: boolean) => boolean)) => {\n const openState = typeof value === 'function' ? value(open) : value;\n if (setOpenProp) {\n setOpenProp(openState);\n } else {\n _setOpen(openState);\n }\n\n // This sets the cookie to keep the sidebar state.\n document.cookie = `${SIDEBAR_COOKIE_NAME}=${openState}; path=/; max-age=${SIDEBAR_COOKIE_MAX_AGE}`;\n },\n [setOpenProp, open],\n );\n\n // Helper to toggle the sidebar.\n const toggleSidebar = React.useCallback(() => {\n return isMobile ? setOpenMobile((open) => !open) : setOpen((open) => !open);\n }, [isMobile, setOpen, setOpenMobile]);\n\n // Adds a keyboard shortcut to toggle the sidebar.\n React.useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent) => {\n if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {\n event.preventDefault();\n toggleSidebar();\n }\n };\n\n window.addEventListener('keydown', handleKeyDown);\n return () => window.removeEventListener('keydown', handleKeyDown);\n }, [toggleSidebar]);\n\n // We add a state so that we can do data-state=\"expanded\" or \"collapsed\".\n // This makes it easier to style the sidebar with Tailwind classes.\n const state = open ? 'expanded' : 'collapsed';\n\n const contextValue = React.useMemo<SidebarContext>(\n () => ({\n state,\n open,\n setOpen,\n isMobile,\n openMobile,\n setOpenMobile,\n toggleSidebar,\n }),\n [state, open, setOpen, isMobile, openMobile, setOpenMobile, toggleSidebar],\n );\n\n return (\n <SidebarContext.Provider value={contextValue}>\n <TooltipProvider delayDuration={0}>\n <div\n style={\n {\n '--sidebar-width': SIDEBAR_WIDTH,\n '--sidebar-width-icon': SIDEBAR_WIDTH_ICON,\n ...style,\n } as React.CSSProperties\n }\n className={cn(\n 'group/sidebar-wrapper flex min-h-svh w-screen has-[[data-variant=inset]]:bg-sidebar w-full',\n className,\n )}\n ref={ref}\n {...props}\n >\n {children}\n </div>\n </TooltipProvider>\n </SidebarContext.Provider>\n );\n});\nSidebarProvider.displayName = 'SidebarProvider';\n\nconst Sidebar = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<'div'> & {\n side?: 'left' | 'right';\n variant?: 'sidebar' | 'floating' | 'inset';\n collapsible?: 'offcanvas' | 'icon' | 'none';\n }\n>(({ side = 'left', variant = 'sidebar', collapsible = 'offcanvas', className, children, ...props }, ref) => {\n const { isMobile, state, openMobile, setOpenMobile } = useSidebar();\n\n if (collapsible === 'none') {\n return (\n <div\n className={cn('flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground', className)}\n ref={ref}\n {...props}\n >\n {children}\n </div>\n );\n }\n\n if (isMobile) {\n return (\n <Sheet open={openMobile} onOpenChange={setOpenMobile} {...props}>\n <SheetTitle className=\"hidden\"></SheetTitle>\n <SheetContent\n data-sidebar=\"sidebar\"\n data-mobile=\"true\"\n aria-describedby=\"\"\n className=\"w-(--sidebar-width) bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden\"\n style={\n {\n '--sidebar-width': SIDEBAR_WIDTH_MOBILE,\n } as React.CSSProperties\n }\n side={side}\n >\n <div className=\"flex h-full w-full flex-col\">{children}</div>\n </SheetContent>\n </Sheet>\n );\n }\n\n return (\n <div\n ref={ref}\n className=\"group peer hidden text-sidebar-foreground md:block\"\n data-state={state}\n data-collapsible={state === 'collapsed' ? collapsible : ''}\n data-variant={variant}\n data-side={side}\n >\n {/* This is what handles the sidebar gap on desktop */}\n <div\n className={cn(\n 'relative h-svh 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)_+_theme(spacing.4))]'\n : 'group-data-[collapsible=icon]:w-(--sidebar-width-icon)',\n )}\n />\n <div\n className={cn(\n 'fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear md:flex',\n 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 // Adjust the padding for floating and inset variants.\n variant === 'floating' || variant === 'inset'\n ? 'p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4)_+2px)]'\n : 'group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l',\n className,\n )}\n {...props}\n >\n <div\n data-sidebar=\"sidebar\"\n className=\"flex h-full w-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:border-sidebar-border group-data-[variant=floating]:shadow\"\n >\n {children}\n </div>\n </div>\n </div>\n );\n});\nSidebar.displayName = 'Sidebar';\n\nconst SidebarTrigger = React.forwardRef<React.ElementRef<typeof Button>, React.ComponentProps<typeof Button>>(\n ({ className, onClick, ...props }, ref) => {\n const { toggleSidebar } = useSidebar();\n\n return (\n <Button\n ref={ref}\n data-sidebar=\"trigger\"\n variant=\"light\"\n size=\"icon\"\n className={cn('h-7 w-7', className)}\n onClick={(event) => {\n onClick?.(event);\n toggleSidebar();\n }}\n {...props}\n >\n <PanelLeft />\n <span className=\"sr-only\">Toggle Sidebar</span>\n </Button>\n );\n },\n);\nSidebarTrigger.displayName = 'SidebarTrigger';\n\nconst SidebarRail = React.forwardRef<HTMLButtonElement, React.ComponentProps<'button'>>(\n ({ className, ...props }, ref) => {\n const { toggleSidebar } = useSidebar();\n\n return (\n <button\n ref={ref}\n data-sidebar=\"rail\"\n aria-label=\"Toggle Sidebar\"\n tabIndex={-1}\n onClick={toggleSidebar}\n title=\"Toggle Sidebar\"\n className={cn(\n 'absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] hover:after:bg-sidebar-border group-data-[side=left]:-right-4 group-data-[side=right]:left-0 sm:flex',\n '[[data-side=left]_&]:cursor-w-resize [[data-side=right]_&]:cursor-e-resize',\n '[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize',\n 'group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full group-data-[collapsible=offcanvas]:hover:bg-sidebar',\n '[[data-side=left][data-collapsible=offcanvas]_&]:-right-2',\n '[[data-side=right][data-collapsible=offcanvas]_&]:-left-2',\n className,\n )}\n {...props}\n />\n );\n },\n);\nSidebarRail.displayName = 'SidebarRail';\n\nconst SidebarInset = React.forwardRef<HTMLDivElement, React.ComponentProps<'main'>>(({ className, ...props }, ref) => {\n return (\n <main\n ref={ref}\n className={cn(\n 'relative flex min-h-svh flex-1 flex-col bg-background',\n 'peer-data-[variant=inset]:min-h-[calc(100svh-theme(spacing.4))] md:peer-data-[variant=inset]:m-2 md:peer-data-[state=collapsed]:peer-data-[variant=inset]:ml-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow',\n className,\n )}\n {...props}\n />\n );\n});\nSidebarInset.displayName = 'SidebarInset';\n\nconst SidebarInput = React.forwardRef<React.ElementRef<typeof Input>, React.ComponentProps<typeof Input>>(\n ({ className, ...props }, ref) => {\n return (\n <Input\n ref={ref}\n data-sidebar=\"input\"\n className={cn(\n 'h-8 w-full bg-background shadow-none focus-visible:ring-2 focus-visible:ring-sidebar-ring',\n className,\n )}\n {...props}\n />\n );\n },\n);\nSidebarInput.displayName = 'SidebarInput';\n\nconst SidebarHeader = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'>>(({ className, ...props }, ref) => {\n return <div ref={ref} data-sidebar=\"header\" className={cn('flex flex-col gap-2 p-2', className)} {...props} />;\n});\nSidebarHeader.displayName = 'SidebarHeader';\n\nconst SidebarFooter = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'>>(({ className, ...props }, ref) => {\n return <div ref={ref} data-sidebar=\"footer\" className={cn('flex flex-col gap-2 p-2', className)} {...props} />;\n});\nSidebarFooter.displayName = 'SidebarFooter';\n\nconst SidebarSeparator = React.forwardRef<React.ElementRef<typeof Separator>, React.ComponentProps<typeof Separator>>(\n ({ className, ...props }, ref) => {\n return (\n <Separator\n ref={ref}\n data-sidebar=\"separator\"\n className={cn('mx-2 w-auto bg-sidebar-border', className)}\n {...props}\n />\n );\n },\n);\nSidebarSeparator.displayName = 'SidebarSeparator';\n\nconst SidebarContent = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'>>(({ className, ...props }, ref) => {\n return (\n <div\n ref={ref}\n data-sidebar=\"content\"\n className={cn(\n 'flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden',\n className,\n )}\n {...props}\n />\n );\n});\nSidebarContent.displayName = 'SidebarContent';\n\nconst SidebarGroup = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'>>(({ className, ...props }, ref) => {\n return (\n <div\n ref={ref}\n data-sidebar=\"group\"\n className={cn('relative flex w-full min-w-0 flex-col p-2', className)}\n {...props}\n />\n );\n});\nSidebarGroup.displayName = 'SidebarGroup';\n\nconst SidebarGroupLabel = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'> & { asChild?: boolean }>(\n ({ className, asChild = false, ...props }, ref) => {\n const Comp = asChild ? Slot : 'div';\n\n return (\n <Comp\n ref={ref}\n data-sidebar=\"group-label\"\n className={cn(\n 'flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium text-sidebar-foreground/70 outline-none ring-sidebar-ring transition-[margin,opacity] duration-200 ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0',\n 'group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0',\n className,\n )}\n {...props}\n />\n );\n },\n);\nSidebarGroupLabel.displayName = 'SidebarGroupLabel';\n\nconst SidebarGroupAction = React.forwardRef<HTMLButtonElement, React.ComponentProps<'button'> & { asChild?: boolean }>(\n ({ className, asChild = false, ...props }, ref) => {\n const Comp = asChild ? Slot : 'button';\n\n return (\n <Comp\n ref={ref}\n data-sidebar=\"group-action\"\n className={cn(\n 'absolute right-3 top-3.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-none ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0',\n // Increases the hit area of the button on mobile.\n 'after:absolute after:-inset-2 after:md:hidden',\n 'group-data-[collapsible=icon]:hidden',\n className,\n )}\n {...props}\n />\n );\n },\n);\nSidebarGroupAction.displayName = 'SidebarGroupAction';\n\nconst SidebarGroupContent = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'>>(\n ({ className, ...props }, ref) => (\n <div ref={ref} data-sidebar=\"group-content\" className={cn('w-full text-sm', className)} {...props} />\n ),\n);\nSidebarGroupContent.displayName = 'SidebarGroupContent';\n\nconst SidebarMenu = React.forwardRef<HTMLUListElement, React.ComponentProps<'ul'>>(({ className, ...props }, ref) => (\n <ul ref={ref} data-sidebar=\"menu\" className={cn('flex w-full min-w-0 flex-col gap-1', className)} {...props} />\n));\nSidebarMenu.displayName = 'SidebarMenu';\n\nconst SidebarMenuItem = React.forwardRef<HTMLLIElement, React.ComponentProps<'li'>>(({ className, ...props }, ref) => (\n <li ref={ref} data-sidebar=\"menu-item\" className={cn('group/menu-item relative', className)} {...props} />\n));\nSidebarMenuItem.displayName = 'SidebarMenuItem';\n\nconst sidebarMenuButtonVariants = cva(\n 'peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-none ring-sidebar-ring transition-[width,height,padding] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 group-has-[[data-sidebar=menu-action]]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:!size-8 group-data-[collapsible=icon]:!p-2 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0',\n {\n variants: {\n variant: {\n default: 'hover:bg-sidebar-accent hover:text-sidebar-accent-foreground',\n outline:\n 'bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]',\n },\n size: {\n default: 'h-8 text-sm',\n sm: 'h-7 text-xs',\n lg: 'h-12 text-sm group-data-[collapsible=icon]:!p-0',\n },\n },\n defaultVariants: {\n variant: 'default',\n size: 'default',\n },\n },\n);\n\nconst SidebarMenuButton = React.forwardRef<\n HTMLButtonElement,\n React.ComponentProps<'button'> & {\n asChild?: boolean;\n isActive?: boolean;\n tooltip?: string | React.ComponentProps<typeof TooltipContent>;\n } & VariantProps<typeof sidebarMenuButtonVariants>\n>(({ asChild = false, isActive = false, variant = 'default', size = 'default', tooltip, className, ...props }, ref) => {\n const Comp = asChild ? Slot : 'button';\n const { isMobile, state } = useSidebar();\n\n const button = (\n <Comp\n ref={ref}\n data-sidebar=\"menu-button\"\n data-size={size}\n data-active={isActive}\n className={cn(sidebarMenuButtonVariants({ variant, size }), className)}\n {...props}\n />\n );\n\n if (!tooltip) {\n return button;\n }\n\n if (typeof tooltip === 'string') {\n tooltip = {\n children: tooltip,\n };\n }\n\n return (\n <Tooltip>\n <TooltipTrigger asChild>{button}</TooltipTrigger>\n <TooltipContent side=\"right\" align=\"center\" hidden={state !== 'collapsed' || isMobile} {...tooltip} />\n </Tooltip>\n );\n});\nSidebarMenuButton.displayName = 'SidebarMenuButton';\n\nconst SidebarMenuAction = React.forwardRef<\n HTMLButtonElement,\n React.ComponentProps<'button'> & {\n asChild?: boolean;\n showOnHover?: boolean;\n }\n>(({ className, asChild = false, showOnHover = false, ...props }, ref) => {\n const Comp = asChild ? Slot : 'button';\n\n return (\n <Comp\n ref={ref}\n data-sidebar=\"menu-action\"\n className={cn(\n 'absolute right-1 top-1.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-none ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 peer-hover/menu-button:text-sidebar-accent-foreground [&>svg]:size-4 [&>svg]:shrink-0',\n // Increases the hit area of the button on mobile.\n 'after:absolute after:-inset-2 after:md:hidden',\n 'peer-data-[size=sm]/menu-button:top-1',\n 'peer-data-[size=default]/menu-button:top-1.5',\n 'peer-data-[size=lg]/menu-button:top-2.5',\n 'group-data-[collapsible=icon]:hidden',\n showOnHover &&\n 'group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 peer-data-[active=true]/menu-button:text-sidebar-accent-foreground md:opacity-0',\n className,\n )}\n {...props}\n />\n );\n});\nSidebarMenuAction.displayName = 'SidebarMenuAction';\n\nconst SidebarMenuBadge = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'>>(\n ({ className, ...props }, ref) => (\n <div\n ref={ref}\n data-sidebar=\"menu-badge\"\n className={cn(\n 'pointer-events-none absolute right-1 flex h-5 min-w-5 select-none items-center justify-center rounded-md px-1 text-xs font-medium tabular-nums text-sidebar-foreground',\n 'peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground',\n 'peer-data-[size=sm]/menu-button:top-1',\n 'peer-data-[size=default]/menu-button:top-1.5',\n 'peer-data-[size=lg]/menu-button:top-2.5',\n 'group-data-[collapsible=icon]:hidden',\n className,\n )}\n {...props}\n />\n ),\n);\nSidebarMenuBadge.displayName = 'SidebarMenuBadge';\n\nconst SidebarMenuSkeleton = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<'div'> & {\n showIcon?: boolean;\n }\n>(({ className, showIcon = false, ...props }, ref) => {\n // Random width between 50 to 90%.\n const width = React.useMemo(() => {\n return `${Math.floor(Math.random() * 40) + 50}%`;\n }, []);\n\n return (\n <div\n ref={ref}\n data-sidebar=\"menu-skeleton\"\n className={cn('flex h-8 items-center gap-2 rounded-md px-2', className)}\n {...props}\n >\n {showIcon && <Skeleton className=\"size-4 rounded-md\" data-sidebar=\"menu-skeleton-icon\" />}\n <Skeleton\n className=\"h-4 max-w-[--skeleton-width] flex-1\"\n data-sidebar=\"menu-skeleton-text\"\n style={\n {\n '--skeleton-width': width,\n } as React.CSSProperties\n }\n />\n </div>\n );\n});\nSidebarMenuSkeleton.displayName = 'SidebarMenuSkeleton';\n\nconst SidebarMenuSub = React.forwardRef<HTMLUListElement, React.ComponentProps<'ul'>>(\n ({ className, ...props }, ref) => (\n <ul\n ref={ref}\n data-sidebar=\"menu-sub\"\n className={cn(\n 'mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l border-sidebar-border px-2.5 py-0.5',\n 'group-data-[collapsible=icon]:hidden',\n className,\n )}\n {...props}\n />\n ),\n);\nSidebarMenuSub.displayName = 'SidebarMenuSub';\n\nconst SidebarMenuSubItem = React.forwardRef<HTMLLIElement, React.ComponentProps<'li'>>(({ ...props }, ref) => (\n <li ref={ref} {...props} />\n));\nSidebarMenuSubItem.displayName = 'SidebarMenuSubItem';\n\nconst SidebarMenuSubButton = React.forwardRef<\n HTMLAnchorElement,\n React.ComponentProps<'a'> & {\n asChild?: boolean;\n size?: 'sm' | 'md';\n isActive?: boolean;\n }\n>(({ asChild = false, size = 'md', isActive, className, ...props }, ref) => {\n const Comp = asChild ? Slot : 'a';\n\n return (\n <Comp\n ref={ref}\n data-sidebar=\"menu-sub-button\"\n data-size={size}\n data-active={isActive}\n className={cn(\n 'flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 text-sidebar-foreground outline-none ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground',\n 'data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground',\n size === 'sm' && 'text-xs',\n size === 'md' && 'text-sm',\n 'group-data-[collapsible=icon]:hidden',\n className,\n )}\n {...props}\n />\n );\n});\nSidebarMenuSubButton.displayName = 'SidebarMenuSubButton';\n\nexport {\n Sidebar,\n SidebarContent,\n SidebarFooter,\n SidebarGroup,\n SidebarGroupAction,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarHeader,\n SidebarInput,\n SidebarInset,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuBadge,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSkeleton,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n SidebarProvider,\n SidebarRail,\n SidebarSeparator,\n SidebarTrigger,\n useSidebar,\n};\n"]}
@@ -3,18 +3,18 @@
3
3
 
4
4
 
5
5
 
6
- var _chunkOROMS2CNjs = require('./chunk-OROMS2CN.js');
7
6
 
8
7
 
9
8
 
10
9
 
11
10
 
12
11
 
12
+ var _chunk5AC6SSUUjs = require('./chunk-5AC6SSUU.js');
13
13
 
14
14
 
15
15
 
16
16
 
17
- var _chunkMW4W54D3js = require('./chunk-MW4W54D3.js');
17
+ var _chunkOROMS2CNjs = require('./chunk-OROMS2CN.js');
18
18
 
19
19
 
20
20
  var _chunkPSPAJNNBjs = require('./chunk-PSPAJNNB.js');
@@ -23,19 +23,19 @@ var _chunkPSPAJNNBjs = require('./chunk-PSPAJNNB.js');
23
23
  var _react = require('react'); var React = _interopRequireWildcard(_react);
24
24
  var _lucidereact = require('lucide-react');
25
25
  function SidebarMenuLink({ item, as: LinkComponent }) {
26
- const { setOpenMobile } = _chunkMW4W54D3js.useSidebar.call(void 0, );
26
+ const { setOpenMobile } = _chunk5AC6SSUUjs.useSidebar.call(void 0, );
27
27
  const Comp = LinkComponent && item.url ? LinkComponent : "button";
28
- return /* @__PURE__ */ React.createElement(_chunkMW4W54D3js.SidebarMenuItem, null, /* @__PURE__ */ React.createElement(_chunkMW4W54D3js.SidebarMenuButton, { asChild: true, isActive: item.isActive, tooltip: item.title, onClick: () => setOpenMobile(false) }, /* @__PURE__ */ React.createElement(Comp, { to: item.url, href: item.url, onClick: () => {
28
+ return /* @__PURE__ */ React.createElement(_chunk5AC6SSUUjs.SidebarMenuItem, null, /* @__PURE__ */ React.createElement(_chunk5AC6SSUUjs.SidebarMenuButton, { asChild: true, isActive: item.isActive, tooltip: item.title, onClick: () => setOpenMobile(false) }, /* @__PURE__ */ React.createElement(Comp, { to: item.url, href: item.url, onClick: () => {
29
29
  var _a;
30
30
  return (_a = item.onClick) == null ? void 0 : _a.call(item, item.title);
31
31
  } }, item.icon && /* @__PURE__ */ React.createElement(item.icon, null), /* @__PURE__ */ React.createElement("span", null, item.title))));
32
32
  }
33
33
  function SidebarMenuCollapsible({ item, as: LinkComponent }) {
34
- const { setOpenMobile } = _chunkMW4W54D3js.useSidebar.call(void 0, );
34
+ const { setOpenMobile } = _chunk5AC6SSUUjs.useSidebar.call(void 0, );
35
35
  if (!item.subItems) return null;
36
- return /* @__PURE__ */ React.createElement(_chunkOROMS2CNjs.Collapsible, { key: item.title, asChild: true, defaultOpen: item.isActive, className: "group/collapsible" }, /* @__PURE__ */ React.createElement(_chunkMW4W54D3js.SidebarMenuItem, null, /* @__PURE__ */ React.createElement(_chunkOROMS2CNjs.CollapsibleTrigger, { asChild: true }, /* @__PURE__ */ React.createElement(_chunkMW4W54D3js.SidebarMenuButton, { tooltip: item.title }, item.icon && /* @__PURE__ */ React.createElement(item.icon, null), /* @__PURE__ */ React.createElement("span", null, item.title), /* @__PURE__ */ React.createElement(_lucidereact.ChevronRight, { className: "ml-auto transition-transform duration-200 group-data-[state=open]/collapsible:rotate-90" }))), /* @__PURE__ */ React.createElement(_chunkOROMS2CNjs.CollapsibleContent, null, /* @__PURE__ */ React.createElement(_chunkMW4W54D3js.SidebarMenuSub, null, item.subItems.map((subItem) => {
36
+ return /* @__PURE__ */ React.createElement(_chunkOROMS2CNjs.Collapsible, { key: item.title, asChild: true, defaultOpen: item.isActive, className: "group/collapsible" }, /* @__PURE__ */ React.createElement(_chunk5AC6SSUUjs.SidebarMenuItem, null, /* @__PURE__ */ React.createElement(_chunkOROMS2CNjs.CollapsibleTrigger, { asChild: true }, /* @__PURE__ */ React.createElement(_chunk5AC6SSUUjs.SidebarMenuButton, { tooltip: item.title }, item.icon && /* @__PURE__ */ React.createElement(item.icon, null), /* @__PURE__ */ React.createElement("span", null, item.title), /* @__PURE__ */ React.createElement(_lucidereact.ChevronRight, { className: "ml-auto transition-transform duration-200 group-data-[state=open]/collapsible:rotate-90" }))), /* @__PURE__ */ React.createElement(_chunkOROMS2CNjs.CollapsibleContent, null, /* @__PURE__ */ React.createElement(_chunk5AC6SSUUjs.SidebarMenuSub, null, item.subItems.map((subItem) => {
37
37
  const Comp = LinkComponent && subItem.url ? LinkComponent : "button";
38
- return /* @__PURE__ */ React.createElement(_chunkMW4W54D3js.SidebarMenuSubItem, { key: subItem.title }, /* @__PURE__ */ React.createElement(_chunkMW4W54D3js.SidebarMenuSubButton, { asChild: true, isActive: subItem.isActive, onClick: () => setOpenMobile(false) }, /* @__PURE__ */ React.createElement(
38
+ return /* @__PURE__ */ React.createElement(_chunk5AC6SSUUjs.SidebarMenuSubItem, { key: subItem.title }, /* @__PURE__ */ React.createElement(_chunk5AC6SSUUjs.SidebarMenuSubButton, { asChild: true, isActive: subItem.isActive, onClick: () => setOpenMobile(false) }, /* @__PURE__ */ React.createElement(
39
39
  Comp,
40
40
  {
41
41
  to: subItem.url,
@@ -53,7 +53,7 @@ function SidebarMenuCollapsible({ item, as: LinkComponent }) {
53
53
  }
54
54
  function NavMenus({ menus, aslink }) {
55
55
  return menus.map((menu) => {
56
- return /* @__PURE__ */ React.createElement(_chunkMW4W54D3js.SidebarGroup, { key: menu.title, className: _chunkPSPAJNNBjs.cn.call(void 0, menu.className) }, !menu.hideTitle && /* @__PURE__ */ React.createElement(_chunkMW4W54D3js.SidebarGroupLabel, null, menu.title), /* @__PURE__ */ React.createElement(_chunkMW4W54D3js.SidebarMenu, null, menu.items.map(
56
+ return /* @__PURE__ */ React.createElement(_chunk5AC6SSUUjs.SidebarGroup, { key: menu.title, className: _chunkPSPAJNNBjs.cn.call(void 0, menu.className) }, !menu.hideTitle && /* @__PURE__ */ React.createElement(_chunk5AC6SSUUjs.SidebarGroupLabel, null, menu.title), /* @__PURE__ */ React.createElement(_chunk5AC6SSUUjs.SidebarMenu, null, menu.items.map(
57
57
  (item) => item.subItems && item.subItems.length > 0 ? /* @__PURE__ */ React.createElement(SidebarMenuCollapsible, { key: item.title, item, as: aslink }) : /* @__PURE__ */ React.createElement(SidebarMenuLink, { key: item.title, item, as: aslink })
58
58
  )));
59
59
  });
@@ -62,4 +62,4 @@ function NavMenus({ menus, aslink }) {
62
62
 
63
63
 
64
64
  exports.NavMenus = NavMenus;
65
- //# sourceMappingURL=chunk-RXDQPTVS.js.map
65
+ //# sourceMappingURL=chunk-5WZCVX6I.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-RXDQPTVS.js","../layouts/sidebar1/nav-menus.tsx"],"names":[],"mappings":"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","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-RXDQPTVS.js","sourcesContent":[null,"\"use client\";\nimport * as React from 'react';\nimport { ChevronRight } from 'lucide-react';\nimport { Collapsible, CollapsibleContent, CollapsibleTrigger } from '../../components/ui/collapsible';\nimport {\n SidebarGroup,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n} from '../../components/ui/sidebar';\nimport { useSidebar } from '../../components/ui/sidebar';\nimport { cn } from '../../utils/ui';\n\nexport interface IMenuSubItem {\n title: string;\n url?: string;\n icon?: React.ElementType;\n isActive?: boolean;\n onClick?: (title: string) => void;\n}\n\nexport interface IMenuItem extends IMenuSubItem {\n subItems?: IMenuSubItem[];\n}\n\nexport interface INavMenu {\n title: string;\n items: IMenuItem[];\n hideTitle?: boolean;\n className?: string;\n}\n\nfunction SidebarMenuLink({ item, as: LinkComponent }: { item: IMenuSubItem; as: React.ElementType }) {\n const { setOpenMobile } = useSidebar();\n const Comp = LinkComponent && item.url ? LinkComponent : 'button';\n\n return (\n <SidebarMenuItem>\n <SidebarMenuButton asChild isActive={item.isActive} tooltip={item.title} onClick={() => setOpenMobile(false)}>\n <Comp to={item.url} href={item.url} onClick={() => item.onClick?.(item.title)}>\n {item.icon && <item.icon />}\n <span>{item.title}</span>\n </Comp>\n </SidebarMenuButton>\n </SidebarMenuItem>\n );\n}\n\nfunction SidebarMenuCollapsible({ item, as: LinkComponent }: { item: IMenuItem; as: React.ElementType }) {\n const { setOpenMobile } = useSidebar();\n if (!item.subItems) return null;\n\n return (\n <Collapsible key={item.title} asChild defaultOpen={item.isActive} className=\"group/collapsible\">\n <SidebarMenuItem>\n <CollapsibleTrigger asChild>\n <SidebarMenuButton tooltip={item.title}>\n {item.icon && <item.icon />}\n <span>{item.title}</span>\n\n <ChevronRight className=\"ml-auto transition-transform duration-200 group-data-[state=open]/collapsible:rotate-90\" />\n </SidebarMenuButton>\n </CollapsibleTrigger>\n\n <CollapsibleContent>\n <SidebarMenuSub>\n {item.subItems.map((subItem) => {\n const Comp = LinkComponent && subItem.url ? LinkComponent : 'button';\n\n return (\n <SidebarMenuSubItem key={subItem.title}>\n <SidebarMenuSubButton asChild isActive={subItem.isActive} onClick={() => setOpenMobile(false)}>\n <Comp\n to={subItem.url}\n href={subItem.url}\n onClick={() => item.onClick?.(subItem.title)}\n className=\"block w-full\"\n >\n {subItem.icon && <subItem.icon />}\n <span>{subItem.title}</span>\n </Comp>\n </SidebarMenuSubButton>\n </SidebarMenuSubItem>\n );\n })}\n </SidebarMenuSub>\n </CollapsibleContent>\n </SidebarMenuItem>\n </Collapsible>\n );\n}\n\nexport function NavMenus({ menus, aslink }: { menus: INavMenu[]; aslink: React.ElementType }) {\n return menus.map((menu) => {\n return (\n <SidebarGroup key={menu.title} className={cn(menu.className)}>\n {!menu.hideTitle && <SidebarGroupLabel>{menu.title}</SidebarGroupLabel>}\n\n <SidebarMenu>\n {menu.items.map((item) =>\n item.subItems && item.subItems.length > 0 ? (\n <SidebarMenuCollapsible key={item.title} item={item} as={aslink} />\n ) : (\n <SidebarMenuLink key={item.title} item={item} as={aslink} />\n ),\n )}\n </SidebarMenu>\n </SidebarGroup>\n );\n });\n}\n"]}
1
+ {"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-5WZCVX6I.js","../layouts/sidebar1/nav-menus.tsx"],"names":[],"mappings":"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","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-5WZCVX6I.js","sourcesContent":[null,"\"use client\";\nimport * as React from 'react';\nimport { ChevronRight } from 'lucide-react';\nimport { Collapsible, CollapsibleContent, CollapsibleTrigger } from '../../components/ui/collapsible';\nimport {\n SidebarGroup,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n} from '../../components/ui/sidebar';\nimport { useSidebar } from '../../components/ui/sidebar';\nimport { cn } from '../../utils/ui';\n\nexport interface IMenuSubItem {\n title: string;\n url?: string;\n icon?: React.ElementType;\n isActive?: boolean;\n onClick?: (title: string) => void;\n}\n\nexport interface IMenuItem extends IMenuSubItem {\n subItems?: IMenuSubItem[];\n}\n\nexport interface INavMenu {\n title: string;\n items: IMenuItem[];\n hideTitle?: boolean;\n className?: string;\n}\n\nfunction SidebarMenuLink({ item, as: LinkComponent }: { item: IMenuSubItem; as: React.ElementType }) {\n const { setOpenMobile } = useSidebar();\n const Comp = LinkComponent && item.url ? LinkComponent : 'button';\n\n return (\n <SidebarMenuItem>\n <SidebarMenuButton asChild isActive={item.isActive} tooltip={item.title} onClick={() => setOpenMobile(false)}>\n <Comp to={item.url} href={item.url} onClick={() => item.onClick?.(item.title)}>\n {item.icon && <item.icon />}\n <span>{item.title}</span>\n </Comp>\n </SidebarMenuButton>\n </SidebarMenuItem>\n );\n}\n\nfunction SidebarMenuCollapsible({ item, as: LinkComponent }: { item: IMenuItem; as: React.ElementType }) {\n const { setOpenMobile } = useSidebar();\n if (!item.subItems) return null;\n\n return (\n <Collapsible key={item.title} asChild defaultOpen={item.isActive} className=\"group/collapsible\">\n <SidebarMenuItem>\n <CollapsibleTrigger asChild>\n <SidebarMenuButton tooltip={item.title}>\n {item.icon && <item.icon />}\n <span>{item.title}</span>\n\n <ChevronRight className=\"ml-auto transition-transform duration-200 group-data-[state=open]/collapsible:rotate-90\" />\n </SidebarMenuButton>\n </CollapsibleTrigger>\n\n <CollapsibleContent>\n <SidebarMenuSub>\n {item.subItems.map((subItem) => {\n const Comp = LinkComponent && subItem.url ? LinkComponent : 'button';\n\n return (\n <SidebarMenuSubItem key={subItem.title}>\n <SidebarMenuSubButton asChild isActive={subItem.isActive} onClick={() => setOpenMobile(false)}>\n <Comp\n to={subItem.url}\n href={subItem.url}\n onClick={() => item.onClick?.(subItem.title)}\n className=\"block w-full\"\n >\n {subItem.icon && <subItem.icon />}\n <span>{subItem.title}</span>\n </Comp>\n </SidebarMenuSubButton>\n </SidebarMenuSubItem>\n );\n })}\n </SidebarMenuSub>\n </CollapsibleContent>\n </SidebarMenuItem>\n </Collapsible>\n );\n}\n\nexport function NavMenus({ menus, aslink }: { menus: INavMenu[]; aslink: React.ElementType }) {\n return menus.map((menu) => {\n return (\n <SidebarGroup key={menu.title} className={cn(menu.className)}>\n {!menu.hideTitle && <SidebarGroupLabel>{menu.title}</SidebarGroupLabel>}\n\n <SidebarMenu>\n {menu.items.map((item) =>\n item.subItems && item.subItems.length > 0 ? (\n <SidebarMenuCollapsible key={item.title} item={item} as={aslink} />\n ) : (\n <SidebarMenuLink key={item.title} item={item} as={aslink} />\n ),\n )}\n </SidebarMenu>\n </SidebarGroup>\n );\n });\n}\n"]}
@@ -7,14 +7,14 @@ import {
7
7
  PopoverTrigger
8
8
  } from "./chunk-47TKC7DB.mjs";
9
9
  import {
10
- Label
11
- } from "./chunk-NL4534LH.mjs";
10
+ Button
11
+ } from "./chunk-SQK67X4D.mjs";
12
12
  import {
13
13
  isEqualDate
14
14
  } from "./chunk-SX4LQFOF.mjs";
15
15
  import {
16
- Button
17
- } from "./chunk-SQK67X4D.mjs";
16
+ Label
17
+ } from "./chunk-NL4534LH.mjs";
18
18
  import {
19
19
  cn
20
20
  } from "./chunk-KGUUDFJE.mjs";
@@ -103,4 +103,4 @@ function FormDatePicker({
103
103
  export {
104
104
  FormDatePicker
105
105
  };
106
- //# sourceMappingURL=chunk-LSVA45KP.mjs.map
106
+ //# sourceMappingURL=chunk-C736G6RV.mjs.map
@@ -9,13 +9,13 @@ var _chunkXDCB6C5Sjs = require('./chunk-XDCB6C5S.js');
9
9
  var _chunkLYMKN3NYjs = require('./chunk-LYMKN3NY.js');
10
10
 
11
11
 
12
- var _chunkKNNX4FAHjs = require('./chunk-KNNX4FAH.js');
12
+ var _chunkOFRRRK4Njs = require('./chunk-OFRRRK4N.js');
13
13
 
14
14
 
15
15
  var _chunkIYVLRZJ4js = require('./chunk-IYVLRZJ4.js');
16
16
 
17
17
 
18
- var _chunkOFRRRK4Njs = require('./chunk-OFRRRK4N.js');
18
+ var _chunkKNNX4FAHjs = require('./chunk-KNNX4FAH.js');
19
19
 
20
20
 
21
21
  var _chunkPSPAJNNBjs = require('./chunk-PSPAJNNB.js');
@@ -104,4 +104,4 @@ function FormDatePicker({
104
104
 
105
105
 
106
106
  exports.FormDatePicker = FormDatePicker;
107
- //# sourceMappingURL=chunk-JOD4N4QT.js.map
107
+ //# sourceMappingURL=chunk-CSDFVUNP.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-JOD4N4QT.js","../components/form/date-picker.tsx"],"names":[],"mappings":"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","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-JOD4N4QT.js","sourcesContent":[null,"\"use client\";\nimport React, { useEffect, useState } from 'react';\nimport { addDays, format, isEqual } from 'date-fns';\nimport { CalendarIcon } from 'lucide-react';\nimport _kebabCase from 'lodash-es/kebabCase';\nimport _isNil from 'lodash-es/isNil';\nimport _isUndefined from 'lodash-es/isUndefined';\nimport _isString from 'lodash-es/isString';\n\nimport { isEqualDate } from '../../utils/date';\nimport { cn } from '../../utils/ui';\nimport { Button } from '../ui/button';\nimport { Label } from '../ui/label';\nimport { Calendar } from '../ui/calendar';\nimport { Popover, PopoverContent, PopoverTrigger } from '../ui/popover';\nimport { Matcher } from 'react-day-picker';\n\nfunction formatDate(date: Date) {\n return format(date, 'LLL dd, y');\n}\n\nfunction getStartOfDay(date: Date) {\n const startOfDay = new Date(date.getFullYear(), date.getMonth(), date.getDate());\n return startOfDay;\n}\n\nexport interface FormDatePickerProps {\n id?: string;\n name: string;\n label?: string;\n required?: boolean;\n disabled?: Matcher | Matcher[];\n initialValue?: Date | string;\n closeOnSelect?: boolean;\n value?: Date | string;\n onChange: (value?: Date) => void;\n classNames?: {\n wrapper?: string;\n label?: string;\n button?: string;\n };\n}\n\nexport function FormDatePicker({\n id,\n name,\n label,\n required = false,\n closeOnSelect = true,\n disabled,\n initialValue,\n value,\n onChange,\n classNames,\n}: FormDatePickerProps) {\n const [date, setDate] = useState<Date | undefined>(undefined);\n const [initialized, setInitialized] = useState(false);\n const [isOpen, setIsOpen] = useState(false);\n\n useEffect(() => {\n if (!initialized) {\n const dt = initialValue ? getStartOfDay(new Date(initialValue)) : getStartOfDay(new Date());\n\n setDate(dt);\n setInitialized(true);\n }\n }, [initialized, initialValue]);\n\n useEffect(() => {\n if (_isUndefined(value)) {\n if (!_isUndefined(date)) {\n setDate(undefined);\n }\n } else {\n const dt = _isString(value) ? new Date(value) : value;\n if (!isEqualDate(date, dt)) {\n setDate(getStartOfDay(dt));\n }\n }\n }, [value]);\n\n useEffect(() => {\n if (initialized) {\n onChange(date);\n }\n }, [date, initialized]);\n\n if (!id) id = _kebabCase(name);\n\n const display = !initialized ? <span></span> : date ? <>{formatDate(date)}</> : <span>Pick a date</span>;\n\n return (\n <div className={cn('date-picker', classNames?.wrapper)}>\n {label && (\n <Label htmlFor={id} className={classNames?.label} required={required}>\n {label}\n </Label>\n )}\n\n <div className={cn('grid gap-2')}>\n <Popover open={isOpen} onOpenChange={setIsOpen}>\n <PopoverTrigger asChild>\n <Button\n variant={date ? 'secondary' : 'muted'}\n appearance=\"outline\"\n className={cn('min-w-[145px] justify-start text-left font-normal', classNames?.button)}\n >\n <CalendarIcon />\n {display}\n </Button>\n </PopoverTrigger>\n\n <PopoverContent className=\"w-auto p-0\" align=\"start\">\n <Calendar\n mode=\"single\"\n defaultMonth={date}\n selected={date}\n onSelect={(newdate) => {\n if (!isEqualDate(date, newdate)) {\n setDate(newdate);\n }\n if (closeOnSelect) setIsOpen(false);\n }}\n disabled={disabled}\n />\n </PopoverContent>\n </Popover>\n </div>\n </div>\n );\n}\n"]}
1
+ {"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-CSDFVUNP.js","../components/form/date-picker.tsx"],"names":[],"mappings":"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","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-CSDFVUNP.js","sourcesContent":[null,"\"use client\";\nimport React, { useEffect, useState } from 'react';\nimport { addDays, format, isEqual } from 'date-fns';\nimport { CalendarIcon } from 'lucide-react';\nimport _kebabCase from 'lodash-es/kebabCase';\nimport _isNil from 'lodash-es/isNil';\nimport _isUndefined from 'lodash-es/isUndefined';\nimport _isString from 'lodash-es/isString';\n\nimport { isEqualDate } from '../../utils/date';\nimport { cn } from '../../utils/ui';\nimport { Button } from '../ui/button';\nimport { Label } from '../ui/label';\nimport { Calendar } from '../ui/calendar';\nimport { Popover, PopoverContent, PopoverTrigger } from '../ui/popover';\nimport { Matcher } from 'react-day-picker';\n\nfunction formatDate(date: Date) {\n return format(date, 'LLL dd, y');\n}\n\nfunction getStartOfDay(date: Date) {\n const startOfDay = new Date(date.getFullYear(), date.getMonth(), date.getDate());\n return startOfDay;\n}\n\nexport interface FormDatePickerProps {\n id?: string;\n name: string;\n label?: string;\n required?: boolean;\n disabled?: Matcher | Matcher[];\n initialValue?: Date | string;\n closeOnSelect?: boolean;\n value?: Date | string;\n onChange: (value?: Date) => void;\n classNames?: {\n wrapper?: string;\n label?: string;\n button?: string;\n };\n}\n\nexport function FormDatePicker({\n id,\n name,\n label,\n required = false,\n closeOnSelect = true,\n disabled,\n initialValue,\n value,\n onChange,\n classNames,\n}: FormDatePickerProps) {\n const [date, setDate] = useState<Date | undefined>(undefined);\n const [initialized, setInitialized] = useState(false);\n const [isOpen, setIsOpen] = useState(false);\n\n useEffect(() => {\n if (!initialized) {\n const dt = initialValue ? getStartOfDay(new Date(initialValue)) : getStartOfDay(new Date());\n\n setDate(dt);\n setInitialized(true);\n }\n }, [initialized, initialValue]);\n\n useEffect(() => {\n if (_isUndefined(value)) {\n if (!_isUndefined(date)) {\n setDate(undefined);\n }\n } else {\n const dt = _isString(value) ? new Date(value) : value;\n if (!isEqualDate(date, dt)) {\n setDate(getStartOfDay(dt));\n }\n }\n }, [value]);\n\n useEffect(() => {\n if (initialized) {\n onChange(date);\n }\n }, [date, initialized]);\n\n if (!id) id = _kebabCase(name);\n\n const display = !initialized ? <span></span> : date ? <>{formatDate(date)}</> : <span>Pick a date</span>;\n\n return (\n <div className={cn('date-picker', classNames?.wrapper)}>\n {label && (\n <Label htmlFor={id} className={classNames?.label} required={required}>\n {label}\n </Label>\n )}\n\n <div className={cn('grid gap-2')}>\n <Popover open={isOpen} onOpenChange={setIsOpen}>\n <PopoverTrigger asChild>\n <Button\n variant={date ? 'secondary' : 'muted'}\n appearance=\"outline\"\n className={cn('min-w-[145px] justify-start text-left font-normal', classNames?.button)}\n >\n <CalendarIcon />\n {display}\n </Button>\n </PopoverTrigger>\n\n <PopoverContent className=\"w-auto p-0\" align=\"start\">\n <Calendar\n mode=\"single\"\n defaultMonth={date}\n selected={date}\n onSelect={(newdate) => {\n if (!isEqualDate(date, newdate)) {\n setDate(newdate);\n }\n if (closeOnSelect) setIsOpen(false);\n }}\n disabled={disabled}\n />\n </PopoverContent>\n </Popover>\n </div>\n </div>\n );\n}\n"]}
@@ -1,19 +1,19 @@
1
1
  import {
2
2
  ContextSwitcher
3
- } from "./chunk-MGX55IOV.mjs";
3
+ } from "./chunk-GGOYFF4M.mjs";
4
4
  import {
5
5
  NavMenus
6
- } from "./chunk-757RWUDS.mjs";
6
+ } from "./chunk-QJLNEVAE.mjs";
7
7
  import {
8
8
  NavUser
9
- } from "./chunk-CJQZPOT7.mjs";
9
+ } from "./chunk-F57PDM2P.mjs";
10
10
  import {
11
11
  Sidebar,
12
12
  SidebarContent,
13
13
  SidebarFooter,
14
14
  SidebarHeader,
15
15
  SidebarRail
16
- } from "./chunk-36OX4XHZ.mjs";
16
+ } from "./chunk-OI7CIW4X.mjs";
17
17
  import {
18
18
  Button
19
19
  } from "./chunk-SQK67X4D.mjs";
@@ -29,7 +29,7 @@ function AppSidebar(_a) {
29
29
  var _b;
30
30
  const _a2 = props, { data, aslink } = _a2, rest = __objRest(_a2, ["data", "aslink"]);
31
31
  const { context } = data;
32
- return /* @__PURE__ */ React.createElement(Sidebar, __spreadValues({ collapsible: "icon" }, rest), /* @__PURE__ */ React.createElement(SidebarHeader, null, /* @__PURE__ */ React.createElement(
32
+ return /* @__PURE__ */ React.createElement(Sidebar, __spreadValues({ collapsible: "icon" }, rest), (context == null ? void 0 : context.items) && context.items.length > 0 && /* @__PURE__ */ React.createElement(SidebarHeader, null, /* @__PURE__ */ React.createElement(
33
33
  ContextSwitcher,
34
34
  {
35
35
  items: context.items,
@@ -67,4 +67,4 @@ function AppSidebar(_a) {
67
67
  export {
68
68
  AppSidebar
69
69
  };
70
- //# sourceMappingURL=chunk-UVCJNDR3.mjs.map
70
+ //# sourceMappingURL=chunk-EIAS7WVI.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../layouts/sidebar1/app-sidebar.tsx"],"sourcesContent":["\"use client\";\nimport * as React from 'react';\nimport { NavMenus } from './nav-menus';\nimport { NavUser, INavUser, INavUserMenuItem } from './nav-user';\nimport { ContextSwitcher, INavContext } from './context-switcher';\nimport { INavMenu } from './nav-menus';\nimport { Sidebar, SidebarContent, SidebarFooter, SidebarHeader, SidebarRail } from '../../components/ui/sidebar';\nimport { Button } from '../../components/ui/button';\n\nexport interface ISidebarContext {\n title?: string;\n addText?: string;\n items?: INavContext[];\n canAdd?: boolean;\n}\n\nexport interface ISidebarData {\n user?: INavUser;\n context?: ISidebarContext;\n menus: INavMenu[];\n userMenus: INavUserMenuItem[];\n events?: {\n login?: () => void;\n logout?: (user: INavUser) => void;\n newContext?: () => void;\n contextSelect?: (context: INavContext) => void;\n };\n}\n\nexport function AppSidebar({\n ...props\n}: React.ComponentProps<typeof Sidebar> & {\n data: ISidebarData;\n aslink: React.ElementType;\n}) {\n const { data, aslink, ...rest } = props;\n const { context } = data;\n\n return (\n <Sidebar collapsible=\"icon\" {...rest}>\n {context?.items && context.items.length > 0 && (\n <SidebarHeader>\n <ContextSwitcher\n items={context.items}\n title={context.title}\n newContextText={context.addText}\n canAdd={context.canAdd}\n onContextAdd={() => {\n if (data.events?.newContext) {\n data.events.newContext();\n }\n }}\n onContextSelected={(context: INavContext) => {\n if (data.events?.contextSelect) {\n data.events.contextSelect(context);\n }\n }}\n />\n </SidebarHeader>\n )}\n\n <SidebarContent>\n <NavMenus menus={data.menus} aslink={aslink} />\n </SidebarContent>\n\n <SidebarFooter>\n {data.user ? (\n <NavUser user={data.user} menus={data.userMenus} aslink={aslink} onLogout={data.events?.logout} />\n ) : (\n <Button\n variant=\"primary\"\n onClick={() => {\n if (data.events?.login) {\n data.events.login();\n }\n }}\n >\n Sign in\n </Button>\n )}\n </SidebarFooter>\n\n <SidebarRail />\n </Sidebar>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AACA,YAAY,WAAW;AA4BhB,SAAS,WAAW,IAKxB;AALwB,MACtB,kBADsB,IACtB;AA9BL;AAmCE,QAAkCA,MAAA,OAA1B,QAAM,OAnChB,IAmCoCA,KAAT,iBAASA,KAAT,CAAjB,QAAM;AACd,QAAM,EAAE,QAAQ,IAAI;AAEpB,SACE,oCAAC,0BAAQ,aAAY,UAAW,QAC7B,mCAAS,UAAS,QAAQ,MAAM,SAAS,KACxC,oCAAC,qBACC;AAAA,IAAC;AAAA;AAAA,MACC,OAAO,QAAQ;AAAA,MACf,OAAO,QAAQ;AAAA,MACf,gBAAgB,QAAQ;AAAA,MACxB,QAAQ,QAAQ;AAAA,MAChB,cAAc,MAAM;AA/ChC,YAAAA;AAgDc,aAAIA,MAAA,KAAK,WAAL,gBAAAA,IAAa,YAAY;AAC3B,eAAK,OAAO,WAAW;AAAA,QACzB;AAAA,MACF;AAAA,MACA,mBAAmB,CAACC,aAAyB;AApDzD,YAAAD;AAqDc,aAAIA,MAAA,KAAK,WAAL,gBAAAA,IAAa,eAAe;AAC9B,eAAK,OAAO,cAAcC,QAAO;AAAA,QACnC;AAAA,MACF;AAAA;AAAA,EACF,CACF,GAGF,oCAAC,sBACC,oCAAC,YAAS,OAAO,KAAK,OAAO,QAAgB,CAC/C,GAEA,oCAAC,qBACE,KAAK,OACJ,oCAAC,WAAQ,MAAM,KAAK,MAAM,OAAO,KAAK,WAAW,QAAgB,WAAU,UAAK,WAAL,mBAAa,QAAQ,IAEhG;AAAA,IAAC;AAAA;AAAA,MACC,SAAQ;AAAA,MACR,SAAS,MAAM;AAvE3B,YAAAD;AAwEc,aAAIA,MAAA,KAAK,WAAL,gBAAAA,IAAa,OAAO;AACtB,eAAK,OAAO,MAAM;AAAA,QACpB;AAAA,MACF;AAAA;AAAA,IACD;AAAA,EAED,CAEJ,GAEA,oCAAC,iBAAY,CACf;AAEJ;","names":["_a","context"]}
@@ -1,14 +1,9 @@
1
- import {
2
- Avatar,
3
- AvatarFallback,
4
- AvatarImage
5
- } from "./chunk-M55DCHAX.mjs";
6
1
  import {
7
2
  SidebarMenu,
8
3
  SidebarMenuButton,
9
4
  SidebarMenuItem,
10
5
  useSidebar
11
- } from "./chunk-36OX4XHZ.mjs";
6
+ } from "./chunk-OI7CIW4X.mjs";
12
7
  import {
13
8
  DropdownMenu,
14
9
  DropdownMenuContent,
@@ -18,6 +13,11 @@ import {
18
13
  DropdownMenuSeparator,
19
14
  DropdownMenuTrigger
20
15
  } from "./chunk-QJKRCNUX.mjs";
16
+ import {
17
+ Avatar,
18
+ AvatarFallback,
19
+ AvatarImage
20
+ } from "./chunk-M55DCHAX.mjs";
21
21
 
22
22
  // layouts/sidebar1/nav-user.tsx
23
23
  import * as React from "react";
@@ -72,4 +72,4 @@ function NavUser({
72
72
  export {
73
73
  NavUser
74
74
  };
75
- //# sourceMappingURL=chunk-CJQZPOT7.mjs.map
75
+ //# sourceMappingURL=chunk-F57PDM2P.mjs.map
@@ -3,7 +3,7 @@ import {
3
3
  SidebarMenuButton,
4
4
  SidebarMenuItem,
5
5
  useSidebar
6
- } from "./chunk-36OX4XHZ.mjs";
6
+ } from "./chunk-OI7CIW4X.mjs";
7
7
  import {
8
8
  DropdownMenu,
9
9
  DropdownMenuContent,
@@ -97,4 +97,4 @@ function ContextSwitcher({
97
97
  export {
98
98
  ContextSwitcher
99
99
  };
100
- //# sourceMappingURL=chunk-MGX55IOV.mjs.map
100
+ //# sourceMappingURL=chunk-GGOYFF4M.mjs.map
@@ -1,9 +1,9 @@
1
- import {
2
- Label
3
- } from "./chunk-NL4534LH.mjs";
4
1
  import {
5
2
  Input
6
3
  } from "./chunk-ABZ4SF2K.mjs";
4
+ import {
5
+ Label
6
+ } from "./chunk-NL4534LH.mjs";
7
7
  import {
8
8
  cn
9
9
  } from "./chunk-KGUUDFJE.mjs";
@@ -56,4 +56,4 @@ function FormTextInput(_a) {
56
56
  export {
57
57
  FormTextInput
58
58
  };
59
- //# sourceMappingURL=chunk-YRL22JCC.mjs.map
59
+ //# sourceMappingURL=chunk-IYZWOHGP.mjs.map
@@ -1,10 +1,10 @@
1
1
  "use client";
2
2
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
3
3
 
4
- var _chunkKNNX4FAHjs = require('./chunk-KNNX4FAH.js');
4
+ var _chunkAPMXMQPZjs = require('./chunk-APMXMQPZ.js');
5
5
 
6
6
 
7
- var _chunkAPMXMQPZjs = require('./chunk-APMXMQPZ.js');
7
+ var _chunkKNNX4FAHjs = require('./chunk-KNNX4FAH.js');
8
8
 
9
9
 
10
10
  var _chunkPSPAJNNBjs = require('./chunk-PSPAJNNB.js');
@@ -57,4 +57,4 @@ function FormTextInput(_a) {
57
57
 
58
58
 
59
59
  exports.FormTextInput = FormTextInput;
60
- //# sourceMappingURL=chunk-6YOBNAXV.js.map
60
+ //# sourceMappingURL=chunk-NUCMI4CP.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-6YOBNAXV.js","../components/form/text-input.tsx"],"names":[],"mappings":"AAAA;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACA;AACA;AACF,sDAA4B;AAC5B;AACA;ACdA,4EAA2C;AAC3C,wGAAuB;AAOvB,IAAM,WAAA,EAAa,EAAA;AAcZ,SAAS,aAAA,CAAc,EAAA,EAUP;AAVO,EAAA,IAAA,GAAA,EAAA,EAAA,EAC5B;AAAA,IAAA,EAAA;AAAA,IACA,IAAA;AAAA,IACA,KAAA;AAAA,IACA,KAAA,EAAO,MAAA;AAAA,IACP,UAAA;AAAA,IACA,QAAA;AAAA,IACA,QAAA;AAAA,IACA,WAAA,EAAa,CAAC;AAAA,EA/BhB,EAAA,EAuB8B,EAAA,EASzB,KAAA,EAAA,wCAAA,EATyB,EASzB;AAAA,IARH,IAAA;AAAA,IACA,MAAA;AAAA,IACA,OAAA;AAAA,IACA,MAAA;AAAA,IACA,YAAA;AAAA,IACA,UAAA;AAAA,IACA,UAAA;AAAA,IACA;AAAA,EAAA,CAAA,CAAA;AAGA,EAAA,GAAA,CAAI,CAAC,EAAA,EAAI,GAAA,EAAK,iCAAA,IAAe,CAAA;AAE7B,EAAA,uBACE,eAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,iCAAA,aAAG,EAAe,WAAA,GAAA,KAAA,EAAA,KAAA,EAAA,EAAA,UAAA,CAAY,OAAO,EAAA,CAAA,EAClD,MAAA,mBACC,eAAA,CAAA,aAAA,CAAC,sBAAA,EAAA,EAAM,OAAA,EAAS,EAAA,EAAI,SAAA,EAAW,WAAA,GAAA,KAAA,EAAA,KAAA,EAAA,EAAA,UAAA,CAAY,KAAA,EAAO,SAAA,CAAA,EAC/C,KACH,CAAA,kBAGF,eAAA,CAAA,aAAA;AAAA,IAAC,sBAAA;AAAA,IAAA,4CAAA,6CAAA,6CAAA;AAAA,MACC,IAAA;AAAA,MACA,EAAA;AAAA,MACA,IAAA;AAAA,MACA,QAAA;AAAA,MACA,QAAA;AAAA,MACA,YAAA,EAAa;AAAA,IAAA,CAAA,EACT,UAAA,CAAA,EACA,IAAA,CAAA,EARL;AAAA,MASC,SAAA,EAAW,iCAAA,UAAG,EAAY,WAAA,GAAA,KAAA,EAAA,KAAA,EAAA,EAAA,UAAA,CAAY,KAAK;AAAA,IAAA,CAAA;AAAA,EAC7C,CACF,CAAA;AAEJ;ADHA;AACA;AACE;AACF,sCAAC","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-6YOBNAXV.js","sourcesContent":[null,"\"use client\";\nimport React, { InputHTMLAttributes } from 'react';\nimport _kebabCase from 'lodash-es/kebabCase';\nimport { cn } from '../../utils/ui';\nimport { Label } from '../ui/label';\nimport { Input } from '../ui/input';\n\ninterface InputProps extends InputHTMLAttributes<HTMLInputElement> {}\n\nconst inputClass = '';\n\nexport interface FormTextInputProps extends InputProps {\n id?: string;\n name: string;\n label?: string;\n inputProps?: InputProps;\n classNames?: {\n wrapper?: string;\n label?: string;\n input?: string;\n };\n}\n\nexport function FormTextInput({\n id,\n name,\n label,\n type = 'text',\n classNames,\n required,\n disabled,\n inputProps = {},\n ...rest\n}: FormTextInputProps) {\n if (!id) id = _kebabCase(name);\n\n return (\n <div className={cn('_text-input', classNames?.wrapper)}>\n {label && (\n <Label htmlFor={id} className={classNames?.label} required={required}>\n {label}\n </Label>\n )}\n\n <Input\n type={type}\n id={id}\n name={name}\n required={required}\n disabled={disabled}\n autoComplete=\"off\"\n {...inputProps}\n {...rest}\n className={cn(inputClass, classNames?.input)}\n />\n </div>\n );\n}\n"]}
1
+ {"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-NUCMI4CP.js","../components/form/text-input.tsx"],"names":[],"mappings":"AAAA;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACA;AACA;AACF,sDAA4B;AAC5B;AACA;ACdA,4EAA2C;AAC3C,wGAAuB;AAOvB,IAAM,WAAA,EAAa,EAAA;AAcZ,SAAS,aAAA,CAAc,EAAA,EAUP;AAVO,EAAA,IAAA,GAAA,EAAA,EAAA,EAC5B;AAAA,IAAA,EAAA;AAAA,IACA,IAAA;AAAA,IACA,KAAA;AAAA,IACA,KAAA,EAAO,MAAA;AAAA,IACP,UAAA;AAAA,IACA,QAAA;AAAA,IACA,QAAA;AAAA,IACA,WAAA,EAAa,CAAC;AAAA,EA/BhB,EAAA,EAuB8B,EAAA,EASzB,KAAA,EAAA,wCAAA,EATyB,EASzB;AAAA,IARH,IAAA;AAAA,IACA,MAAA;AAAA,IACA,OAAA;AAAA,IACA,MAAA;AAAA,IACA,YAAA;AAAA,IACA,UAAA;AAAA,IACA,UAAA;AAAA,IACA;AAAA,EAAA,CAAA,CAAA;AAGA,EAAA,GAAA,CAAI,CAAC,EAAA,EAAI,GAAA,EAAK,iCAAA,IAAe,CAAA;AAE7B,EAAA,uBACE,eAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,iCAAA,aAAG,EAAe,WAAA,GAAA,KAAA,EAAA,KAAA,EAAA,EAAA,UAAA,CAAY,OAAO,EAAA,CAAA,EAClD,MAAA,mBACC,eAAA,CAAA,aAAA,CAAC,sBAAA,EAAA,EAAM,OAAA,EAAS,EAAA,EAAI,SAAA,EAAW,WAAA,GAAA,KAAA,EAAA,KAAA,EAAA,EAAA,UAAA,CAAY,KAAA,EAAO,SAAA,CAAA,EAC/C,KACH,CAAA,kBAGF,eAAA,CAAA,aAAA;AAAA,IAAC,sBAAA;AAAA,IAAA,4CAAA,6CAAA,6CAAA;AAAA,MACC,IAAA;AAAA,MACA,EAAA;AAAA,MACA,IAAA;AAAA,MACA,QAAA;AAAA,MACA,QAAA;AAAA,MACA,YAAA,EAAa;AAAA,IAAA,CAAA,EACT,UAAA,CAAA,EACA,IAAA,CAAA,EARL;AAAA,MASC,SAAA,EAAW,iCAAA,UAAG,EAAY,WAAA,GAAA,KAAA,EAAA,KAAA,EAAA,EAAA,UAAA,CAAY,KAAK;AAAA,IAAA,CAAA;AAAA,EAC7C,CACF,CAAA;AAEJ;ADHA;AACA;AACE;AACF,sCAAC","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-NUCMI4CP.js","sourcesContent":[null,"\"use client\";\nimport React, { InputHTMLAttributes } from 'react';\nimport _kebabCase from 'lodash-es/kebabCase';\nimport { cn } from '../../utils/ui';\nimport { Label } from '../ui/label';\nimport { Input } from '../ui/input';\n\ninterface InputProps extends InputHTMLAttributes<HTMLInputElement> {}\n\nconst inputClass = '';\n\nexport interface FormTextInputProps extends InputProps {\n id?: string;\n name: string;\n label?: string;\n inputProps?: InputProps;\n classNames?: {\n wrapper?: string;\n label?: string;\n input?: string;\n };\n}\n\nexport function FormTextInput({\n id,\n name,\n label,\n type = 'text',\n classNames,\n required,\n disabled,\n inputProps = {},\n ...rest\n}: FormTextInputProps) {\n if (!id) id = _kebabCase(name);\n\n return (\n <div className={cn('_text-input', classNames?.wrapper)}>\n {label && (\n <Label htmlFor={id} className={classNames?.label} required={required}>\n {label}\n </Label>\n )}\n\n <Input\n type={type}\n id={id}\n name={name}\n required={required}\n disabled={disabled}\n autoComplete=\"off\"\n {...inputProps}\n {...rest}\n className={cn(inputClass, classNames?.input)}\n />\n </div>\n );\n}\n"]}
@@ -1,6 +1,3 @@
1
- import {
2
- Skeleton
3
- } from "./chunk-AJFINSLK.mjs";
4
1
  import {
5
2
  Separator
6
3
  } from "./chunk-SSL4EXAQ.mjs";
@@ -9,6 +6,9 @@ import {
9
6
  SheetContent,
10
7
  SheetTitle
11
8
  } from "./chunk-JVMY3LCD.mjs";
9
+ import {
10
+ Skeleton
11
+ } from "./chunk-AJFINSLK.mjs";
12
12
  import {
13
13
  Tooltip,
14
14
  TooltipContent,
@@ -18,12 +18,12 @@ import {
18
18
  import {
19
19
  Input
20
20
  } from "./chunk-ABZ4SF2K.mjs";
21
- import {
22
- Button
23
- } from "./chunk-SQK67X4D.mjs";
24
21
  import {
25
22
  useIsMobile
26
23
  } from "./chunk-77MASFCZ.mjs";
24
+ import {
25
+ Button
26
+ } from "./chunk-SQK67X4D.mjs";
27
27
  import {
28
28
  cn
29
29
  } from "./chunk-KGUUDFJE.mjs";
@@ -563,4 +563,4 @@ export {
563
563
  SidebarMenuSubItem,
564
564
  SidebarMenuSubButton
565
565
  };
566
- //# sourceMappingURL=chunk-36OX4XHZ.mjs.map
566
+ //# sourceMappingURL=chunk-OI7CIW4X.mjs.map