@norskvideo/norsk-studio 1.27.0-2025-05-21-b03b48ea → 1.27.0-2025-05-26-a443eb84

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 (134) hide show
  1. package/lib/client/cpu.js +1 -11
  2. package/lib/client/cpu.js.map +1 -1
  3. package/lib/client/creator.d.ts +0 -2
  4. package/lib/client/creator.js +3 -3
  5. package/lib/client/creator.js.map +1 -1
  6. package/lib/client/jsx/components/node.js +5 -4
  7. package/lib/client/jsx/components/node.js.map +1 -1
  8. package/lib/client/jsx/components/studio-sidebar-footer.d.ts +2 -0
  9. package/lib/client/jsx/components/studio-sidebar-footer.js +14 -0
  10. package/lib/client/jsx/components/studio-sidebar-footer.js.map +1 -0
  11. package/lib/client/jsx/components/studio-sidebar-header.d.ts +10 -0
  12. package/lib/client/jsx/components/studio-sidebar-header.js +37 -0
  13. package/lib/client/jsx/components/studio-sidebar-header.js.map +1 -0
  14. package/lib/client/jsx/components/studio-sidebar.d.ts +16 -0
  15. package/lib/client/jsx/components/studio-sidebar.js +200 -0
  16. package/lib/client/jsx/components/studio-sidebar.js.map +1 -0
  17. package/lib/client/jsx/components/toolbox.d.ts +12 -0
  18. package/lib/client/jsx/components/toolbox.js +94 -0
  19. package/lib/client/jsx/components/toolbox.js.map +1 -0
  20. package/lib/client/jsx/connection-editor.d.ts +2 -8
  21. package/lib/client/jsx/connection-editor.js +19 -17
  22. package/lib/client/jsx/connection-editor.js.map +1 -1
  23. package/lib/client/jsx/context/sidebar.d.ts +44 -0
  24. package/lib/client/jsx/context/sidebar.js +15 -0
  25. package/lib/client/jsx/context/sidebar.js.map +1 -0
  26. package/lib/client/jsx/global-configuration.d.ts +11 -0
  27. package/lib/client/jsx/global-configuration.js +18 -0
  28. package/lib/client/jsx/global-configuration.js.map +1 -0
  29. package/lib/client/jsx/hooks/alerts.d.ts +9 -0
  30. package/lib/client/jsx/hooks/alerts.js +22 -0
  31. package/lib/client/jsx/hooks/alerts.js.map +1 -0
  32. package/lib/client/jsx/hooks/toolbox.d.ts +6 -0
  33. package/lib/client/jsx/hooks/toolbox.js +238 -0
  34. package/lib/client/jsx/hooks/toolbox.js.map +1 -0
  35. package/lib/client/jsx/node-editor.d.ts +20 -21
  36. package/lib/client/jsx/node-editor.js +30 -33
  37. package/lib/client/jsx/node-editor.js.map +1 -1
  38. package/lib/client/jsx/selected-connection.d.ts +0 -2
  39. package/lib/client/jsx/selected-connection.js +4 -4
  40. package/lib/client/jsx/selected-connection.js.map +1 -1
  41. package/lib/client/jsx/selected-node.d.ts +0 -2
  42. package/lib/client/jsx/selected-node.js +54 -75
  43. package/lib/client/jsx/selected-node.js.map +1 -1
  44. package/lib/client/jsx/selected.d.ts +4 -13
  45. package/lib/client/jsx/selected.js +9 -5
  46. package/lib/client/jsx/selected.js.map +1 -1
  47. package/lib/client/jsx/shadcn-ui/accordion.d.ts +8 -0
  48. package/lib/client/jsx/shadcn-ui/accordion.js +50 -0
  49. package/lib/client/jsx/shadcn-ui/accordion.js.map +1 -0
  50. package/lib/client/jsx/shadcn-ui/command.d.ts +2 -1
  51. package/lib/client/jsx/shadcn-ui/command.js +31 -1
  52. package/lib/client/jsx/shadcn-ui/command.js.map +1 -1
  53. package/lib/client/jsx/shadcn-ui/separator.d.ts +4 -0
  54. package/lib/client/jsx/shadcn-ui/separator.js +34 -0
  55. package/lib/client/jsx/shadcn-ui/separator.js.map +1 -0
  56. package/lib/client/jsx/shadcn-ui/sidebar.d.ts +66 -0
  57. package/lib/client/jsx/shadcn-ui/sidebar.js +233 -0
  58. package/lib/client/jsx/shadcn-ui/sidebar.js.map +1 -0
  59. package/lib/client/jsx/shadcn-ui/skeleton.d.ts +2 -0
  60. package/lib/client/jsx/shadcn-ui/skeleton.js +9 -0
  61. package/lib/client/jsx/shadcn-ui/skeleton.js.map +1 -0
  62. package/lib/client/jsx/shadcn-ui/sonner.d.ts +3 -0
  63. package/lib/client/jsx/shadcn-ui/sonner.js +16 -0
  64. package/lib/client/jsx/shadcn-ui/sonner.js.map +1 -0
  65. package/lib/client/jsx/types/toolbox.d.ts +58 -0
  66. package/lib/client/jsx/types/toolbox.js +3 -0
  67. package/lib/client/jsx/types/toolbox.js.map +1 -0
  68. package/lib/client/navbar-right.js +12 -28
  69. package/lib/client/navbar-right.js.map +1 -1
  70. package/lib/client/rete/node.d.ts +10 -2
  71. package/lib/client/session-view.js +9 -6
  72. package/lib/client/session-view.js.map +1 -1
  73. package/lib/client/session.d.ts +5 -4
  74. package/lib/client/session.js +9 -7
  75. package/lib/client/session.js.map +1 -1
  76. package/lib/client/studio-layout.js +9 -3
  77. package/lib/client/studio-layout.js.map +1 -1
  78. package/lib/client/tools.d.ts +4 -6
  79. package/lib/client/tools.js +7 -312
  80. package/lib/client/tools.js.map +1 -1
  81. package/lib/extension/client-types.d.ts +3 -0
  82. package/lib/extension/client-types.js.map +1 -1
  83. package/lib/extension/runtime-types.d.ts +4 -1
  84. package/lib/extension/runtime-types.js +391 -3
  85. package/lib/extension/runtime-types.js.map +1 -1
  86. package/lib/runtime/execution.d.ts +2 -0
  87. package/lib/runtime/execution.js +43 -2
  88. package/lib/runtime/execution.js.map +1 -1
  89. package/lib/runtime/stream-registration.d.ts +5 -1
  90. package/lib/runtime/stream-registration.js +10 -0
  91. package/lib/runtime/stream-registration.js.map +1 -1
  92. package/lib/server/index.js +11 -0
  93. package/lib/server/index.js.map +1 -1
  94. package/lib/server/runner.js +3 -0
  95. package/lib/server/runner.js.map +1 -1
  96. package/lib/server/session.d.ts +7 -1
  97. package/lib/server/session.js +6 -0
  98. package/lib/server/session.js.map +1 -1
  99. package/lib/shared/names.d.ts +1 -0
  100. package/lib/shared/names.js +2 -1
  101. package/lib/shared/names.js.map +1 -1
  102. package/lib/shared/server-msg.d.ts +6 -5
  103. package/lib/test/_util/driver.js +11 -0
  104. package/lib/test/_util/driver.js.map +1 -1
  105. package/lib/test/_util/manual-driver.js +2 -1
  106. package/lib/test/_util/manual-driver.js.map +1 -1
  107. package/lib/test/_util/runtime.js +2 -2
  108. package/lib/test/_util/sinks.d.ts +2 -0
  109. package/lib/test/_util/sinks.js.map +1 -1
  110. package/lib/test/client-liveview.js +11 -11
  111. package/lib/test/client-liveview.js.map +1 -1
  112. package/lib/test/preview-endpoints.d.ts +1 -0
  113. package/lib/test/preview-endpoints.js +423 -0
  114. package/lib/test/preview-endpoints.js.map +1 -0
  115. package/lib/types/base.yml +15 -0
  116. package/lib/types/stream-mapping.yaml +12 -0
  117. package/lib/types.d.ts +14 -0
  118. package/lib/types.yaml +17 -0
  119. package/package.json +9 -7
  120. package/static/style.css +918 -3992
  121. package/static/tailwind.css +6 -2
  122. package/tailwind-theme.js +19 -2
  123. package/tailwind.config.js +0 -6
  124. package/ui/index.html +7 -9
  125. package/ui/index.js +22922 -30519
  126. package/lib/client/jsx/modal.d.ts +0 -30
  127. package/lib/client/jsx/modal.js +0 -71
  128. package/lib/client/jsx/modal.js.map +0 -1
  129. package/lib/client/jsx/toolbox.d.ts +0 -14
  130. package/lib/client/jsx/toolbox.js +0 -42
  131. package/lib/client/jsx/toolbox.js.map +0 -1
  132. package/lib/client/jsx/upstream/Accordion.d.ts +0 -30
  133. package/lib/client/jsx/upstream/Accordion.js +0 -65
  134. package/lib/client/jsx/upstream/Accordion.js.map +0 -1
@@ -1,4 +1,27 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  Object.defineProperty(exports, "__esModule", { value: true });
3
26
  exports.Command = Command;
4
27
  exports.CommandDialog = CommandDialog;
@@ -9,11 +32,14 @@ exports.CommandGroup = CommandGroup;
9
32
  exports.CommandItem = CommandItem;
10
33
  exports.CommandShortcut = CommandShortcut;
11
34
  exports.CommandSeparator = CommandSeparator;
35
+ exports.SearchInput = SearchInput;
12
36
  const jsx_runtime_1 = require("react/jsx-runtime");
37
+ const React = __importStar(require("react"));
13
38
  const cmdk_1 = require("cmdk");
14
39
  const lucide_react_1 = require("lucide-react");
15
40
  const tailwind_merge_1 = require("tailwind-merge");
16
41
  const dialog_1 = require("./dialog");
42
+ const input_1 = require("./input");
17
43
  function Command({ className, ...props }) {
18
44
  return ((0, jsx_runtime_1.jsx)(cmdk_1.Command, { "data-slot": "command", className: (0, tailwind_merge_1.twMerge)("bg-white text-gray-900 dark:bg-gray-800 dark:text-white flex h-full w-full flex-col overflow-hidden rounded-lg", className), ...props }));
19
45
  }
@@ -21,7 +47,11 @@ function CommandDialog({ title = "Command Palette", description = "Search for a
21
47
  return ((0, jsx_runtime_1.jsxs)(dialog_1.Dialog, { ...props, children: [(0, jsx_runtime_1.jsxs)(dialog_1.DialogHeader, { className: "sr-only", children: [(0, jsx_runtime_1.jsx)(dialog_1.DialogTitle, { children: title }), (0, jsx_runtime_1.jsx)(dialog_1.DialogDescription, { children: description })] }), (0, jsx_runtime_1.jsx)(dialog_1.DialogContent, { className: "overflow-hidden p-0", children: (0, jsx_runtime_1.jsx)(Command, { className: "[&_[cmdk-group-heading]]:text-gray-500 dark:[&_[cmdk-group-heading]]:text-gray-400 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group]]:px-2 [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5", children: children }) })] }));
22
48
  }
23
49
  function CommandInput({ className, ...props }) {
24
- return ((0, jsx_runtime_1.jsxs)("div", { "data-slot": "command-input-wrapper", className: "flex h-8 items-center gap-2 border-b border-gray-200 dark:border-gray-600 px-3", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.SearchIcon, { className: "size-4 shrink-0 text-gray-500 dark:text-gray-400" }), (0, jsx_runtime_1.jsx)(cmdk_1.Command.Input, { "data-slot": "command-input", className: (0, tailwind_merge_1.twMerge)("placeholder:text-gray-500 dark:placeholder:text-gray-400 flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden disabled:cursor-not-allowed disabled:opacity-50 focus:outline-none focus:ring-0 focus:ring-offset-0", className), ...props })] }));
50
+ return ((0, jsx_runtime_1.jsxs)("div", { "data-slot": "command-input-wrapper", className: "flex h-8 items-center gap-2 border-b border-gray-200 dark:border-gray-600 px-3", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.SearchIcon, { className: "size-4 shrink-0 text-gray-500 dark:text-gray-400" }), (0, jsx_runtime_1.jsx)(cmdk_1.Command.Input, { "data-slot": "command-input", className: (0, tailwind_merge_1.twMerge)("placeholder:text-gray-500 dark:placeholder:text-gray-400 flex h-8 w-full rounded-md border-b border-gray-200 dark:border-gray-700 bg-transparent py-3 text-sm outline-hidden disabled:cursor-not-allowed disabled:opacity-50", className), ...props })] }));
51
+ }
52
+ function SearchInput({ className, ...props }) {
53
+ const [focused, setFocused] = React.useState(false);
54
+ return ((0, jsx_runtime_1.jsxs)("div", { "data-slot": "search-input-wrapper", className: (0, tailwind_merge_1.twMerge)("flex h-8 items-center gap-2 border border-gray-200 dark:border-gray-700 rounded-md px-2", focused && "border-blue-500 dark:border-blue-500", className), children: [(0, jsx_runtime_1.jsx)(lucide_react_1.SearchIcon, { className: "size-4 shrink-0 text-gray-500 dark:text-gray-400" }), (0, jsx_runtime_1.jsx)(input_1.Input, { type: "text", onFocus: () => setFocused(true), onBlur: () => setFocused(false), "data-slot": "search-input", className: (0, tailwind_merge_1.twMerge)("border-none placeholder:text-gray-500 dark:placeholder:text-gray-400 flex h-full w-full px-0 bg-transparent text-base font-normal outline-hidden disabled:cursor-not-allowed disabled:opacity-50"), ...props })] }));
25
55
  }
26
56
  function CommandList({ className, ...props }) {
27
57
  return ((0, jsx_runtime_1.jsx)(cmdk_1.Command.List, { "data-slot": "command-list", className: (0, tailwind_merge_1.twMerge)("max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto", className), ...props }));
@@ -1 +1 @@
1
- {"version":3,"file":"command.js","sourceRoot":"","sources":["../../../../src/client/jsx/shadcn-ui/command.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command.js","sourceRoot":"","sources":["../../../../src/client/jsx/shadcn-ui/command.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAsME,0BAAO;AACP,sCAAa;AACb,oCAAY;AACZ,kCAAW;AACX,oCAAY;AACZ,oCAAY;AACZ,kCAAW;AACX,0CAAe;AACf,4CAAgB;AAChB,kCAAW;;AA/Mb,6CAA8B;AAC9B,+BAAkD;AAClD,+CAAyC;AAEzC,mDAAyC;AACzC,qCAMiB;AACjB,mCAAgC;AAEhC,SAAS,OAAO,CAAC,EACf,SAAS,EACT,GAAG,KAAK,EACsC;IAC9C,OAAO,CACL,uBAAC,cAAgB,iBACL,SAAS,EACnB,SAAS,EAAE,IAAA,wBAAO,EAChB,gHAAgH,EAChH,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAA;AACH,CAAC;AAED,SAAS,aAAa,CAAC,EACrB,KAAK,GAAG,iBAAiB,EACzB,WAAW,GAAG,gCAAgC,EAC9C,QAAQ,EACR,GAAG,KAAK,EAIT;IACC,OAAO,CACL,wBAAC,eAAM,OAAK,KAAK,aACf,wBAAC,qBAAY,IAAC,SAAS,EAAC,SAAS,aAC/B,uBAAC,oBAAW,cAAE,KAAK,GAAe,EAClC,uBAAC,0BAAiB,cAAE,WAAW,GAAqB,IACvC,EACf,uBAAC,sBAAa,IAAC,SAAS,EAAC,qBAAqB,YAC5C,uBAAC,OAAO,IAAC,SAAS,EAAC,iZAAiZ,YACja,QAAQ,GACD,GACI,IACT,CACV,CAAA;AACH,CAAC;AAED,SAAS,YAAY,CAAC,EACpB,SAAS,EACT,GAAG,KAAK,EAC4C;IACpD,OAAO,CACL,8CACY,uBAAuB,EACjC,SAAS,EAAC,gFAAgF,aAE1F,uBAAC,yBAAU,IAAC,SAAS,EAAC,kDAAkD,GAAG,EAC3E,uBAAC,cAAgB,CAAC,KAAK,iBACX,eAAe,EACzB,SAAS,EAAE,IAAA,wBAAO,EAChB,8NAA8N,EAC9N,SAAS,CACV,KACG,KAAK,GACT,IACE,CACP,CAAA;AACH,CAAC;AAED,SAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EACsB;IAE9B,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEpD,OAAO,CACL,8CACY,sBAAsB,EAChC,SAAS,EACP,IAAA,wBAAO,EACL,yFAAyF,EACzF,OAAO,IAAI,sCAAsC,EACjD,SAAS,CACV,aAED,uBAAC,yBAAU,IAAC,SAAS,EAAC,kDAAkD,GAAG,EAC3E,uBAAC,aAAK,IACJ,IAAI,EAAC,MAAM,EACX,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAC/B,MAAM,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,eACrB,cAAc,EACxB,SAAS,EAAE,IAAA,wBAAO,EAChB,kMAAkM,CACnM,KACG,KAAK,GACT,IACA,CACP,CAAA;AACH,CAAC;AAED,SAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EAC2C;IACnD,OAAO,CACL,uBAAC,cAAgB,CAAC,IAAI,iBACV,cAAc,EACxB,SAAS,EAAE,IAAA,wBAAO,EAChB,6DAA6D,EAC7D,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAA;AACH,CAAC;AAED,SAAS,YAAY,CAAC,EACpB,GAAG,KAAK,EAC4C;IACpD,OAAO,CACL,uBAAC,cAAgB,CAAC,KAAK,iBACX,eAAe,EACzB,SAAS,EAAC,2DAA2D,KACjE,KAAK,GACT,CACH,CAAA;AACH,CAAC;AAED,SAAS,YAAY,CAAC,EACpB,SAAS,EACT,GAAG,KAAK,EAC4C;IACpD,OAAO,CACL,uBAAC,cAAgB,CAAC,KAAK,iBACX,eAAe,EACzB,SAAS,EAAE,IAAA,wBAAO,EAChB,0QAA0Q,EAC1Q,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAA;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,EACxB,SAAS,EACT,GAAG,KAAK,EACgD;IACxD,OAAO,CACL,uBAAC,cAAgB,CAAC,SAAS,iBACf,mBAAmB,EAC7B,SAAS,EAAE,IAAA,wBAAO,EAAC,yCAAyC,EAAE,SAAS,CAAC,KACpE,KAAK,GACT,CACH,CAAA;AACH,CAAC;AAED,SAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EAC2C;IACnD,OAAO,CACL,uBAAC,cAAgB,CAAC,IAAI,iBACV,cAAc,EACxB,SAAS,EAAE,IAAA,wBAAO,EAChB,0jBAA0jB,EAC1jB,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAA;AACH,CAAC;AAED,SAAS,eAAe,CAAC,EACvB,SAAS,EACT,GAAG,KAAK,EACqB;IAC7B,OAAO,CACL,8CACY,kBAAkB,EAC5B,SAAS,EAAE,IAAA,wBAAO,EAChB,kEAAkE,EAClE,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAA;AACH,CAAC"}
@@ -0,0 +1,4 @@
1
+ import * as React from "react";
2
+ import * as SeparatorPrimitive from "@radix-ui/react-separator";
3
+ declare function Separator({ className, orientation, decorative, ...props }: React.ComponentProps<typeof SeparatorPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
+ export { Separator };
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ "use client";
3
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = { enumerable: true, get: function() { return m[k]; } };
8
+ }
9
+ Object.defineProperty(o, k2, desc);
10
+ }) : (function(o, m, k, k2) {
11
+ if (k2 === undefined) k2 = k;
12
+ o[k2] = m[k];
13
+ }));
14
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
15
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
16
+ }) : function(o, v) {
17
+ o["default"] = v;
18
+ });
19
+ var __importStar = (this && this.__importStar) || function (mod) {
20
+ if (mod && mod.__esModule) return mod;
21
+ var result = {};
22
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
23
+ __setModuleDefault(result, mod);
24
+ return result;
25
+ };
26
+ Object.defineProperty(exports, "__esModule", { value: true });
27
+ exports.Separator = Separator;
28
+ const jsx_runtime_1 = require("react/jsx-runtime");
29
+ const SeparatorPrimitive = __importStar(require("@radix-ui/react-separator"));
30
+ const tailwind_merge_1 = require("tailwind-merge");
31
+ function Separator({ className, orientation = "horizontal", decorative = true, ...props }) {
32
+ return ((0, jsx_runtime_1.jsx)(SeparatorPrimitive.Root, { "data-slot": "separator-root", decorative: decorative, orientation: orientation, className: (0, tailwind_merge_1.twMerge)("bg-neutral-200 shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px dark:bg-neutral-800", className), ...props }));
33
+ }
34
+ //# sourceMappingURL=separator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"separator.js","sourceRoot":"","sources":["../../../../src/client/jsx/shadcn-ui/separator.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;AA2BH,8BAAS;;AAxBlB,8EAA+D;AAE/D,mDAAwC;AAExC,SAAS,SAAS,CAAC,EACjB,SAAS,EACT,WAAW,GAAG,YAAY,EAC1B,UAAU,GAAG,IAAI,EACjB,GAAG,KAAK,EAC6C;IACrD,OAAO,CACL,uBAAC,kBAAkB,CAAC,IAAI,iBACZ,gBAAgB,EAC1B,UAAU,EAAE,UAAU,EACtB,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,IAAA,wBAAO,EAChB,yLAAyL,EACzL,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAA;AACH,CAAC"}
@@ -0,0 +1,66 @@
1
+ import * as React from "react";
2
+ import { VariantProps } from "class-variance-authority";
3
+ import { Button } from "../../../client/jsx/components/button";
4
+ import { Input } from "../../../client/jsx/shadcn-ui/input";
5
+ import { Separator } from "../../../client/jsx/shadcn-ui/separator";
6
+ import { TooltipContent } from "../../../client/jsx/shadcn-ui/tooltip";
7
+ type SidebarContextProps = {
8
+ state: "expanded" | "collapsed";
9
+ open: boolean;
10
+ setOpen: (open: boolean) => void;
11
+ toggleSidebar: () => void;
12
+ };
13
+ declare function useSidebar(): SidebarContextProps;
14
+ declare function SidebarProvider({ defaultOpen, open: openProp, onOpenChange: setOpenProp, className, style, children, ...props }: React.ComponentProps<"div"> & {
15
+ defaultOpen?: boolean;
16
+ open?: boolean;
17
+ onOpenChange?: (open: boolean) => void;
18
+ }): import("react/jsx-runtime").JSX.Element;
19
+ declare function Sidebar({ side, variant, collapsible, className, children, ...props }: React.ComponentProps<"div"> & {
20
+ side?: "left" | "right";
21
+ variant?: "sidebar" | "floating" | "inset";
22
+ collapsible?: "offcanvas" | "icon" | "none";
23
+ }): import("react/jsx-runtime").JSX.Element;
24
+ declare function SidebarTrigger({ className, onClick, ...props }: Omit<React.ComponentProps<typeof Button>, "children">): import("react/jsx-runtime").JSX.Element;
25
+ declare function SidebarRail({ className, ...props }: React.ComponentProps<"button">): import("react/jsx-runtime").JSX.Element;
26
+ declare function SidebarInset({ className, ...props }: React.ComponentProps<"main">): import("react/jsx-runtime").JSX.Element;
27
+ declare function SidebarInput({ className, ...props }: React.ComponentProps<typeof Input>): import("react/jsx-runtime").JSX.Element;
28
+ declare function SidebarHeader({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
29
+ declare function SidebarFooter({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
30
+ declare function SidebarSeparator({ className, ...props }: React.ComponentProps<typeof Separator>): import("react/jsx-runtime").JSX.Element;
31
+ declare function SidebarContent({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
32
+ declare function SidebarGroup({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
33
+ declare function SidebarGroupLabel({ className, asChild, ...props }: React.ComponentProps<"div"> & {
34
+ asChild?: boolean;
35
+ }): import("react/jsx-runtime").JSX.Element;
36
+ declare function SidebarGroupAction({ className, asChild, ...props }: React.ComponentProps<"button"> & {
37
+ asChild?: boolean;
38
+ }): import("react/jsx-runtime").JSX.Element;
39
+ declare function SidebarGroupContent({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
40
+ declare function SidebarMenu({ className, ...props }: React.ComponentProps<"ul">): import("react/jsx-runtime").JSX.Element;
41
+ declare function SidebarMenuItem({ className, ...props }: React.ComponentProps<"li">): import("react/jsx-runtime").JSX.Element;
42
+ declare const sidebarMenuButtonVariants: (props?: ({
43
+ variant?: "default" | "outline" | null | undefined;
44
+ size?: "default" | "sm" | "lg" | null | undefined;
45
+ } & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
46
+ declare function SidebarMenuButton({ asChild, isActive, variant, size, tooltip, className, ...props }: React.ComponentProps<"button"> & {
47
+ asChild?: boolean;
48
+ isActive?: boolean;
49
+ tooltip?: string | React.ComponentProps<typeof TooltipContent>;
50
+ } & VariantProps<typeof sidebarMenuButtonVariants>): import("react/jsx-runtime").JSX.Element;
51
+ declare function SidebarMenuAction({ className, asChild, showOnHover, ...props }: React.ComponentProps<"button"> & {
52
+ asChild?: boolean;
53
+ showOnHover?: boolean;
54
+ }): import("react/jsx-runtime").JSX.Element;
55
+ declare function SidebarMenuBadge({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
56
+ declare function SidebarMenuSkeleton({ className, showIcon, ...props }: React.ComponentProps<"div"> & {
57
+ showIcon?: boolean;
58
+ }): import("react/jsx-runtime").JSX.Element;
59
+ declare function SidebarMenuSub({ className, ...props }: React.ComponentProps<"ul">): import("react/jsx-runtime").JSX.Element;
60
+ declare function SidebarMenuSubItem({ className, ...props }: React.ComponentProps<"li">): import("react/jsx-runtime").JSX.Element;
61
+ declare function SidebarMenuSubButton({ asChild, size, isActive, className, ...props }: React.ComponentProps<"a"> & {
62
+ asChild?: boolean;
63
+ size?: "sm" | "md";
64
+ isActive?: boolean;
65
+ }): import("react/jsx-runtime").JSX.Element;
66
+ export { Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, useSidebar, };
@@ -0,0 +1,233 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.Sidebar = Sidebar;
27
+ exports.SidebarContent = SidebarContent;
28
+ exports.SidebarFooter = SidebarFooter;
29
+ exports.SidebarGroup = SidebarGroup;
30
+ exports.SidebarGroupAction = SidebarGroupAction;
31
+ exports.SidebarGroupContent = SidebarGroupContent;
32
+ exports.SidebarGroupLabel = SidebarGroupLabel;
33
+ exports.SidebarHeader = SidebarHeader;
34
+ exports.SidebarInput = SidebarInput;
35
+ exports.SidebarInset = SidebarInset;
36
+ exports.SidebarMenu = SidebarMenu;
37
+ exports.SidebarMenuAction = SidebarMenuAction;
38
+ exports.SidebarMenuBadge = SidebarMenuBadge;
39
+ exports.SidebarMenuButton = SidebarMenuButton;
40
+ exports.SidebarMenuItem = SidebarMenuItem;
41
+ exports.SidebarMenuSkeleton = SidebarMenuSkeleton;
42
+ exports.SidebarMenuSub = SidebarMenuSub;
43
+ exports.SidebarMenuSubButton = SidebarMenuSubButton;
44
+ exports.SidebarMenuSubItem = SidebarMenuSubItem;
45
+ exports.SidebarProvider = SidebarProvider;
46
+ exports.SidebarRail = SidebarRail;
47
+ exports.SidebarSeparator = SidebarSeparator;
48
+ exports.SidebarTrigger = SidebarTrigger;
49
+ exports.useSidebar = useSidebar;
50
+ const jsx_runtime_1 = require("react/jsx-runtime");
51
+ const React = __importStar(require("react"));
52
+ const react_slot_1 = require("@radix-ui/react-slot");
53
+ const class_variance_authority_1 = require("class-variance-authority");
54
+ const lucide_react_1 = require("lucide-react");
55
+ const tailwind_merge_1 = require("tailwind-merge");
56
+ const button_1 = require("../../../client/jsx/components/button");
57
+ const input_1 = require("../../../client/jsx/shadcn-ui/input");
58
+ const separator_1 = require("../../../client/jsx/shadcn-ui/separator");
59
+ const skeleton_1 = require("../../../client/jsx/shadcn-ui/skeleton");
60
+ const tooltip_1 = require("../../../client/jsx/shadcn-ui/tooltip");
61
+ const SIDEBAR_COOKIE_NAME = "sidebar_state";
62
+ const SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7;
63
+ const SIDEBAR_WIDTH = "320px";
64
+ const SIDEBAR_WIDTH_ICON = "32px";
65
+ const SIDEBAR_KEYBOARD_SHORTCUT = "b";
66
+ const SidebarContext = React.createContext(null);
67
+ function useSidebar() {
68
+ const context = React.useContext(SidebarContext);
69
+ if (!context) {
70
+ throw new Error("useSidebar must be used within a SidebarProvider.");
71
+ }
72
+ return context;
73
+ }
74
+ function SidebarProvider({ defaultOpen = true, open: openProp, onOpenChange: setOpenProp, className, style, children, ...props }) {
75
+ const [_open, _setOpen] = React.useState(defaultOpen);
76
+ const open = openProp ?? _open;
77
+ const setOpen = React.useCallback((value) => {
78
+ const openState = typeof value === "function" ? value(open) : value;
79
+ if (setOpenProp) {
80
+ setOpenProp(openState);
81
+ }
82
+ else {
83
+ _setOpen(openState);
84
+ }
85
+ document.cookie = `${SIDEBAR_COOKIE_NAME}=${openState}; path=/; max-age=${SIDEBAR_COOKIE_MAX_AGE}`;
86
+ }, [setOpenProp, open]);
87
+ const toggleSidebar = React.useCallback(() => {
88
+ setOpen((open) => !open);
89
+ }, [setOpen]);
90
+ React.useEffect(() => {
91
+ const handleKeyDown = (event) => {
92
+ if (event.key === SIDEBAR_KEYBOARD_SHORTCUT &&
93
+ (event.metaKey || event.ctrlKey)) {
94
+ event.preventDefault();
95
+ toggleSidebar();
96
+ }
97
+ };
98
+ window.addEventListener("keydown", handleKeyDown);
99
+ return () => window.removeEventListener("keydown", handleKeyDown);
100
+ }, [toggleSidebar]);
101
+ const state = open ? "expanded" : "collapsed";
102
+ const contextValue = React.useMemo(() => ({
103
+ state,
104
+ open,
105
+ setOpen,
106
+ toggleSidebar,
107
+ }), [state, open, setOpen, toggleSidebar]);
108
+ return ((0, jsx_runtime_1.jsx)(SidebarContext.Provider, { value: contextValue, children: (0, jsx_runtime_1.jsx)(tooltip_1.TooltipProvider, { delayDuration: 0, children: (0, jsx_runtime_1.jsx)("div", { "data-slot": "sidebar-wrapper", style: {
109
+ "--sidebar-width": SIDEBAR_WIDTH,
110
+ "--sidebar-width-icon": SIDEBAR_WIDTH_ICON,
111
+ ...style,
112
+ }, className: (0, tailwind_merge_1.twMerge)("group/sidebar-wrapper has-data-[variant=inset]:bg-sidebar flex h-full w-full", className), ...props, children: children }) }) }));
113
+ }
114
+ function Sidebar({ side = "left", variant = "sidebar", collapsible = "offcanvas", className, children, ...props }) {
115
+ const { state } = useSidebar();
116
+ if (collapsible === "none") {
117
+ return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "sidebar", className: (0, tailwind_merge_1.twMerge)("bg-sidebar text-sidebar-foreground flex h-full w-[var(--sidebar-width)] flex-col", className), ...props, children: children }));
118
+ }
119
+ return ((0, jsx_runtime_1.jsxs)("div", { className: "group peer text-sidebar-foreground block", "data-state": state, "data-collapsible": state === "collapsed" ? collapsible : "", "data-variant": variant, "data-side": side, "data-slot": "sidebar", children: [(0, jsx_runtime_1.jsx)("div", { "data-slot": "sidebar-gap", className: (0, tailwind_merge_1.twMerge)("relative w-[var(--sidebar-width)] bg-transparent transition-[width] duration-200 ease-in-out", "group-data-[collapsible=offcanvas]:w-0", "group-data-[side=right]:rotate-180", variant === "floating" || variant === "inset"
120
+ ? "group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]"
121
+ : "group-data-[collapsible=icon]:w-[var(--sidebar-width-icon)]") }), (0, jsx_runtime_1.jsx)("div", { "data-slot": "sidebar-container", className: (0, tailwind_merge_1.twMerge)("absolute inset-y-0 z-10 h-full w-[var(--sidebar-width)] transition-[width] duration-200 ease-in-out block bg-white dark:bg-gray-800 rounded-lg border-gray-200 dark:border-gray-600", side === "left"
122
+ ? "left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]"
123
+ : "right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]", variant === "floating" || variant === "inset"
124
+ ? "p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]"
125
+ : "group-data-[collapsible=icon]:w-[var(--sidebar-width-icon)]", className), ...props, children: (0, jsx_runtime_1.jsx)("div", { "data-sidebar": "sidebar", "data-slot": "sidebar-inner", className: "flex h-full w-full flex-col text-gray-900 dark:text-white", children: children }) })] }));
126
+ }
127
+ function SidebarTrigger({ className, onClick, ...props }) {
128
+ const { toggleSidebar } = useSidebar();
129
+ return ((0, jsx_runtime_1.jsxs)(button_1.Button, { "data-sidebar": "trigger", "data-slot": "sidebar-trigger", variant: "secondary", className: (0, tailwind_merge_1.twMerge)("w-[32px] h-[32px] p-0 border-none", className), onClick: (event) => {
130
+ onClick?.(event);
131
+ toggleSidebar();
132
+ }, ...props, children: [(0, jsx_runtime_1.jsx)(lucide_react_1.PanelLeftIcon, { className: "w-4 h-4" }), (0, jsx_runtime_1.jsx)("span", { className: "sr-only", children: "Toggle Sidebar" })] }));
133
+ }
134
+ function SidebarRail({ className, ...props }) {
135
+ const { toggleSidebar } = useSidebar();
136
+ return ((0, jsx_runtime_1.jsx)("button", { "data-sidebar": "rail", "data-slot": "sidebar-rail", "aria-label": "Toggle Sidebar", tabIndex: -1, onClick: toggleSidebar, title: "Toggle Sidebar", className: (0, tailwind_merge_1.twMerge)("hover:after:bg-sidebar-border absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] sm:flex", "in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize", "[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize", "hover:group-data-[collapsible=offcanvas]:bg-sidebar group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full", "[[data-side=left][data-collapsible=offcanvas]_&]:-right-2", "[[data-side=right][data-collapsible=offcanvas]_&]:-left-2", className), ...props }));
137
+ }
138
+ function SidebarInset({ className, ...props }) {
139
+ return ((0, jsx_runtime_1.jsx)("main", { "data-slot": "sidebar-inset", className: (0, tailwind_merge_1.twMerge)("bg-white relative flex w-full flex-1 flex-col dark:bg-neutral-950", "md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2", className), ...props }));
140
+ }
141
+ function SidebarInput({ className, ...props }) {
142
+ return ((0, jsx_runtime_1.jsx)(input_1.Input, { "data-slot": "sidebar-input", "data-sidebar": "input", className: (0, tailwind_merge_1.twMerge)("bg-white h-8 w-full shadow-none dark:bg-neutral-950", className), ...props }));
143
+ }
144
+ function SidebarHeader({ className, ...props }) {
145
+ return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "sidebar-header", "data-sidebar": "header", className: (0, tailwind_merge_1.twMerge)("flex flex-col gap-2 px-3 pt-6 pb-3", className), ...props }));
146
+ }
147
+ function SidebarFooter({ className, ...props }) {
148
+ return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "sidebar-footer", "data-sidebar": "footer", className: (0, tailwind_merge_1.twMerge)("flex flex-col gap-2 px-3 py-3", className), ...props }));
149
+ }
150
+ function SidebarSeparator({ className, ...props }) {
151
+ return ((0, jsx_runtime_1.jsx)(separator_1.Separator, { "data-slot": "sidebar-separator", "data-sidebar": "separator", className: (0, tailwind_merge_1.twMerge)("bg-sidebar-border mx-2 w-auto", className), ...props }));
152
+ }
153
+ function SidebarContent({ className, ...props }) {
154
+ return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "sidebar-content", "data-sidebar": "content", className: (0, tailwind_merge_1.twMerge)("flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden scrollbar-thin scrollbar-track-transparent scrollbar-thumb-gray-300 dark:scrollbar-thumb-gray-600", className), ...props }));
155
+ }
156
+ function SidebarGroup({ className, ...props }) {
157
+ return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "sidebar-group", "data-sidebar": "group", className: (0, tailwind_merge_1.twMerge)("relative flex w-full min-w-0 flex-col p-2", className), ...props }));
158
+ }
159
+ function SidebarGroupLabel({ className, asChild = false, ...props }) {
160
+ const Comp = asChild ? react_slot_1.Slot : "div";
161
+ return ((0, jsx_runtime_1.jsx)(Comp, { "data-slot": "sidebar-group-label", "data-sidebar": "group-label", className: (0, tailwind_merge_1.twMerge)("text-sidebar-foreground/70 ring-sidebar-ring flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium outline-hidden transition-[margin,opacity] duration-200 ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0", "group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0", className), ...props }));
162
+ }
163
+ function SidebarGroupAction({ className, asChild = false, ...props }) {
164
+ const Comp = asChild ? react_slot_1.Slot : "button";
165
+ return ((0, jsx_runtime_1.jsx)(Comp, { "data-slot": "sidebar-group-action", "data-sidebar": "group-action", className: (0, tailwind_merge_1.twMerge)("text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground absolute top-3.5 right-3 flex aspect-square w-5 h-5 items-center justify-center rounded-md p-0 outline-hidden transition-transform focus-visible:ring-2 [&>svg]:w-4 [&>svg]:h-4 [&>svg]:shrink-0", "after:absolute after:-inset-2 md:after:hidden", "group-data-[collapsible=icon]:hidden", className), ...props }));
166
+ }
167
+ function SidebarGroupContent({ className, ...props }) {
168
+ return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "sidebar-group-content", "data-sidebar": "group-content", className: (0, tailwind_merge_1.twMerge)("w-full text-sm", className), ...props }));
169
+ }
170
+ function SidebarMenu({ className, ...props }) {
171
+ return ((0, jsx_runtime_1.jsx)("ul", { "data-slot": "sidebar-menu", "data-sidebar": "menu", className: (0, tailwind_merge_1.twMerge)("flex w-full min-w-0 flex-col gap-1", className), ...props }));
172
+ }
173
+ function SidebarMenuItem({ className, ...props }) {
174
+ return ((0, jsx_runtime_1.jsx)("li", { "data-slot": "sidebar-menu-item", "data-sidebar": "menu-item", className: (0, tailwind_merge_1.twMerge)("group/menu-item relative", className), ...props }));
175
+ }
176
+ const sidebarMenuButtonVariants = (0, class_variance_authority_1.cva)("peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-hidden ring-gray-950 transition-[width,height,padding] hover:bg-gray-100 hover:text-gray-900 focus-visible:ring-2 active:bg-gray-100 active:text-gray-900 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-gray-100 data-[active=true]:font-medium data-[active=true]:text-gray-900 data-[state=open]:hover:bg-gray-100 data-[state=open]:hover:text-gray-900 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 dark:hover:bg-gray-700 dark:hover:text-white dark:active:bg-gray-700 dark:active:text-white dark:data-[active=true]:bg-gray-700 dark:data-[active=true]:text-white dark:data-[state=open]:hover:bg-gray-700 dark:data-[state=open]:hover:text-white", {
177
+ variants: {
178
+ variant: {
179
+ default: "hover:bg-gray-100 hover:text-gray-900 dark:hover:bg-gray-700 dark:hover:text-white",
180
+ outline: "bg-white shadow-[0_0_0_1px_hsl(var(--gray-200))] hover:bg-gray-100 hover:text-gray-900 hover:shadow-[0_0_0_1px_hsl(var(--gray-300))] dark:bg-gray-800 dark:shadow-[0_0_0_1px_hsl(var(--gray-600))] dark:hover:bg-gray-700 dark:hover:text-white dark:hover:shadow-[0_0_0_1px_hsl(var(--gray-500))]",
181
+ },
182
+ size: {
183
+ default: "h-8 text-sm",
184
+ sm: "h-7 text-xs",
185
+ lg: "h-12 text-sm group-data-[collapsible=icon]:p-0!",
186
+ },
187
+ },
188
+ defaultVariants: {
189
+ variant: "default",
190
+ size: "default",
191
+ },
192
+ });
193
+ function SidebarMenuButton({ asChild = false, isActive = false, variant = "default", size = "default", tooltip, className, ...props }) {
194
+ const Comp = asChild ? react_slot_1.Slot : "button";
195
+ const { state } = useSidebar();
196
+ const button = ((0, jsx_runtime_1.jsx)(Comp, { "data-slot": "sidebar-menu-button", "data-sidebar": "menu-button", "data-size": size, "data-active": isActive, className: (0, tailwind_merge_1.twMerge)(sidebarMenuButtonVariants({ variant, size }), className), ...props }));
197
+ if (!tooltip) {
198
+ return button;
199
+ }
200
+ if (typeof tooltip === "string") {
201
+ tooltip = {
202
+ children: tooltip,
203
+ };
204
+ }
205
+ return ((0, jsx_runtime_1.jsxs)(tooltip_1.Tooltip, { children: [(0, jsx_runtime_1.jsx)(tooltip_1.TooltipTrigger, { asChild: true, children: button }), (0, jsx_runtime_1.jsx)(tooltip_1.TooltipContent, { side: "right", align: "center", hidden: state !== "collapsed", ...tooltip })] }));
206
+ }
207
+ function SidebarMenuAction({ className, asChild = false, showOnHover = false, ...props }) {
208
+ const Comp = asChild ? react_slot_1.Slot : "button";
209
+ return ((0, jsx_runtime_1.jsx)(Comp, { "data-slot": "sidebar-menu-action", "data-sidebar": "menu-action", className: (0, tailwind_merge_1.twMerge)("text-gray-900 ring-gray-950 hover:bg-gray-100 hover:text-gray-900 peer-hover/menu-button:text-gray-900 absolute top-1.5 right-1 flex aspect-square w-5 h-5 items-center justify-center rounded-md p-0 outline-hidden transition-transform focus-visible:ring-2 [&>svg]:w-4 [&>svg]:h-4 [&>svg]:shrink-0 dark:text-white dark:hover:bg-gray-700 dark:hover:text-white dark:peer-hover/menu-button:text-white", "after:absolute after:-inset-2 md:after:hidden", "peer-data-[size=sm]/menu-button:top-1", "peer-data-[size=default]/menu-button:top-1.5", "peer-data-[size=lg]/menu-button:top-2.5", "group-data-[collapsible=icon]:hidden", showOnHover &&
210
+ "peer-data-[active=true]/menu-button:text-gray-900 group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 md:opacity-0 dark:peer-data-[active=true]/menu-button:text-white", className), ...props }));
211
+ }
212
+ function SidebarMenuBadge({ className, ...props }) {
213
+ return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "sidebar-menu-badge", "data-sidebar": "menu-badge", className: (0, tailwind_merge_1.twMerge)("text-gray-900 pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium tabular-nums select-none dark:text-white", "peer-hover/menu-button:text-gray-900 peer-data-[active=true]/menu-button:text-gray-900 dark:peer-hover/menu-button:text-white dark:peer-data-[active=true]/menu-button:text-white", "peer-data-[size=sm]/menu-button:top-1", "peer-data-[size=default]/menu-button:top-1.5", "peer-data-[size=lg]/menu-button:top-2.5", "group-data-[collapsible=icon]:hidden", className), ...props }));
214
+ }
215
+ function SidebarMenuSkeleton({ className, showIcon = false, ...props }) {
216
+ const width = React.useMemo(() => {
217
+ return `${Math.floor(Math.random() * 40) + 50}%`;
218
+ }, []);
219
+ return ((0, jsx_runtime_1.jsxs)("div", { "data-slot": "sidebar-menu-skeleton", "data-sidebar": "menu-skeleton", className: (0, tailwind_merge_1.twMerge)("flex h-8 items-center gap-2 rounded-md px-2", className), ...props, children: [showIcon && ((0, jsx_runtime_1.jsx)(skeleton_1.Skeleton, { className: "w-4 h-4 rounded-md", "data-sidebar": "menu-skeleton-icon" })), (0, jsx_runtime_1.jsx)(skeleton_1.Skeleton, { className: "h-4 max-w-[var(--skeleton-width)] flex-1", "data-sidebar": "menu-skeleton-text", style: {
220
+ "--skeleton-width": width,
221
+ } })] }));
222
+ }
223
+ function SidebarMenuSub({ className, ...props }) {
224
+ return ((0, jsx_runtime_1.jsx)("ul", { "data-slot": "sidebar-menu-sub", "data-sidebar": "menu-sub", className: (0, tailwind_merge_1.twMerge)("border-sidebar-border mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l px-2.5 py-0.5", "group-data-[collapsible=icon]:hidden", className), ...props }));
225
+ }
226
+ function SidebarMenuSubItem({ className, ...props }) {
227
+ return ((0, jsx_runtime_1.jsx)("li", { "data-slot": "sidebar-menu-sub-item", "data-sidebar": "menu-sub-item", className: (0, tailwind_merge_1.twMerge)("group/menu-sub-item relative", className), ...props }));
228
+ }
229
+ function SidebarMenuSubButton({ asChild = false, size = "md", isActive = false, className, ...props }) {
230
+ const Comp = asChild ? react_slot_1.Slot : "a";
231
+ return ((0, jsx_runtime_1.jsx)(Comp, { "data-slot": "sidebar-menu-sub-button", "data-sidebar": "menu-sub-button", "data-size": size, "data-active": isActive, className: (0, tailwind_merge_1.twMerge)("text-gray-900 ring-gray-950 hover:bg-gray-100 hover:text-gray-900 active:bg-gray-100 active:text-gray-900 [&>svg]:text-gray-900 flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 outline-hidden focus-visible:ring-2 disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:w-4 [&>svg]:h-4 [&>svg]:shrink-0 dark:text-white dark:hover:bg-gray-700 dark:hover:text-white dark:active:bg-gray-700 dark:active:text-white dark:[&>svg]:text-white", "data-[active=true]:bg-gray-100 data-[active=true]:text-gray-900 dark:data-[active=true]:bg-gray-700 dark:data-[active=true]:text-white", size === "sm" && "text-xs", size === "md" && "text-sm", "group-data-[collapsible=icon]:hidden", className), ...props }));
232
+ }
233
+ //# sourceMappingURL=sidebar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sidebar.js","sourceRoot":"","sources":["../../../../src/client/jsx/shadcn-ui/sidebar.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ declare function Skeleton({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
2
+ export { Skeleton };
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Skeleton = Skeleton;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const tailwind_merge_1 = require("tailwind-merge");
6
+ function Skeleton({ className, ...props }) {
7
+ return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "skeleton", className: (0, tailwind_merge_1.twMerge)("animate-pulse rounded-md", className), ...props }));
8
+ }
9
+ //# sourceMappingURL=skeleton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skeleton.js","sourceRoot":"","sources":["../../../../src/client/jsx/shadcn-ui/skeleton.tsx"],"names":[],"mappings":";;AAYS,4BAAQ;;AAZjB,mDAAyC;AAEzC,SAAS,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAA+B;IACpE,OAAO,CACL,6CACY,UAAU,EACpB,SAAS,EAAE,IAAA,wBAAO,EAAC,0BAA0B,EAAE,SAAS,CAAC,KACrD,KAAK,GACT,CACH,CAAA;AACH,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { ToasterProps } from "sonner";
2
+ declare const Toaster: ({ ...props }: ToasterProps) => import("react/jsx-runtime").JSX.Element;
3
+ export { Toaster };
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Toaster = void 0;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const next_themes_1 = require("next-themes");
6
+ const sonner_1 = require("sonner");
7
+ const Toaster = ({ ...props }) => {
8
+ const { theme } = (0, next_themes_1.useTheme)();
9
+ return ((0, jsx_runtime_1.jsx)(sonner_1.Toaster, { theme: theme, className: "toaster group", style: {
10
+ "--normal-bg": "var(--popover)",
11
+ "--normal-text": "var(--popover-foreground)",
12
+ "--normal-border": "var(--border)",
13
+ }, ...props }));
14
+ };
15
+ exports.Toaster = Toaster;
16
+ //# sourceMappingURL=sonner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sonner.js","sourceRoot":"","sources":["../../../../src/client/jsx/shadcn-ui/sonner.tsx"],"names":[],"mappings":";;;;AAAA,6CAAsC;AACtC,mCAAwD;AAExD,MAAM,OAAO,GAAG,CAAC,EAAE,GAAG,KAAK,EAAgB,EAAE,EAAE;IAC7C,MAAM,EAAE,KAAK,EAAE,GAAG,IAAA,sBAAQ,GAAE,CAAA;IAE5B,OAAO,CACL,uBAAC,gBAAM,IACL,KAAK,EAAE,KAA8B,EACrC,SAAS,EAAC,eAAe,EACzB,KAAK,EACH;YACE,aAAa,EAAE,gBAAgB;YAC/B,eAAe,EAAE,2BAA2B;YAC5C,iBAAiB,EAAE,eAAe;SACZ,KAEtB,KAAK,GACT,CACH,CAAA;AACH,CAAC,CAAA;AAEQ,0BAAO"}
@@ -0,0 +1,58 @@
1
+ import React from "react";
2
+ export type ToolType = {
3
+ name: string;
4
+ type: string;
5
+ featurePacks?: string[];
6
+ icon?: React.ComponentType;
7
+ };
8
+ export type ToolGroupType = {
9
+ title: string;
10
+ tools: ToolType[];
11
+ };
12
+ type AccordionState = {
13
+ title: string;
14
+ isOpen: boolean;
15
+ };
16
+ export type ToolAccordionSection = AccordionState & ToolGroupType;
17
+ type FeaturePacksSection = AccordionState & {
18
+ packs: {
19
+ [packName: string]: ToolAccordionSection;
20
+ };
21
+ };
22
+ export type ToolboxAccordionState = {
23
+ favourites: AccordionState;
24
+ allComponents: AccordionState & {
25
+ sections: {
26
+ inputs: ToolAccordionSection;
27
+ processors: ToolAccordionSection;
28
+ outputs: ToolAccordionSection;
29
+ };
30
+ };
31
+ featurePacks: FeaturePacksSection;
32
+ };
33
+ export type UseToolboxAccordionReturn = {
34
+ state: ToolboxAccordionState;
35
+ favourites: ToolType["name"][];
36
+ updateSection: (sections: string[]) => void;
37
+ updateNestedSection: (parent: 'allComponents' | 'featurePacks', sections: string[]) => void;
38
+ toggleFavourite: (tool: ToolType) => void;
39
+ };
40
+ export type PersistedToolboxState = {
41
+ [K in keyof ToolboxAccordionState]: K extends 'allComponents' ? ({
42
+ title: ToolboxAccordionState['allComponents']['title'];
43
+ isOpen: ToolboxAccordionState['allComponents']['isOpen'];
44
+ sections: {
45
+ [K in keyof ToolboxAccordionState['allComponents']['sections']]: boolean;
46
+ };
47
+ }) : K extends 'featurePacks' ? {
48
+ title: ToolboxAccordionState['featurePacks']['title'];
49
+ isOpen: ToolboxAccordionState['featurePacks']['isOpen'];
50
+ packs: {
51
+ [K in keyof ToolboxAccordionState['featurePacks']['packs']]: boolean;
52
+ };
53
+ } : K extends 'favourites' ? {
54
+ title: ToolboxAccordionState['favourites']['title'];
55
+ isOpen: ToolboxAccordionState['favourites']['isOpen'];
56
+ } : boolean;
57
+ };
58
+ export {};
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=toolbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toolbox.js","sourceRoot":"","sources":["../../../../src/client/jsx/types/toolbox.ts"],"names":[],"mappings":""}