@lerianstudio/sindarian-ui 1.0.0-beta.7 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (210) hide show
  1. package/dist/components/breadcrumb/index.js +2 -2
  2. package/dist/components/card/account-card/index.d.ts +32 -0
  3. package/dist/components/card/account-card/index.d.ts.map +1 -0
  4. package/dist/components/card/account-card/index.js +69 -0
  5. package/dist/components/card/basic-card/index.d.ts +6 -0
  6. package/dist/components/card/basic-card/index.d.ts.map +1 -0
  7. package/dist/components/card/basic-card/index.js +20 -0
  8. package/dist/components/card/dashboard-card/index.d.ts +5 -0
  9. package/dist/components/card/dashboard-card/index.d.ts.map +1 -0
  10. package/dist/components/card/dashboard-card/index.js +20 -0
  11. package/dist/components/card/entity-card/index.d.ts +22 -0
  12. package/dist/components/card/entity-card/index.d.ts.map +1 -0
  13. package/dist/components/card/entity-card/index.js +64 -0
  14. package/dist/components/card/index.d.ts +5 -0
  15. package/dist/components/card/index.d.ts.map +1 -0
  16. package/dist/components/card/index.js +20 -0
  17. package/dist/components/dialog/confirmation-dialog/index.d.ts +15 -0
  18. package/dist/components/dialog/confirmation-dialog/index.d.ts.map +1 -0
  19. package/dist/components/dialog/confirmation-dialog/index.js +28 -0
  20. package/dist/components/dialog/confirmation-dialog/use-confirm-dialog.d.ts +31 -0
  21. package/dist/components/dialog/confirmation-dialog/use-confirm-dialog.d.ts.map +1 -0
  22. package/dist/components/dialog/confirmation-dialog/use-confirm-dialog.js +55 -0
  23. package/dist/components/dialog/index.d.ts +4 -0
  24. package/dist/components/dialog/index.d.ts.map +1 -0
  25. package/dist/components/dialog/index.js +19 -0
  26. package/dist/components/dialog/large-dialog/index.d.ts +11 -0
  27. package/dist/components/dialog/large-dialog/index.d.ts.map +1 -0
  28. package/dist/components/dialog/large-dialog/index.js +21 -0
  29. package/dist/components/entity-box/index.js +3 -3
  30. package/dist/components/form/combo-box-field/index.js +1 -1
  31. package/dist/components/form/date-picker-field/index.d.ts +20 -0
  32. package/dist/components/form/date-picker-field/index.d.ts.map +1 -0
  33. package/dist/components/form/date-picker-field/index.js +43 -0
  34. package/dist/components/form/date-range-field/index.d.ts +20 -0
  35. package/dist/components/form/date-range-field/index.d.ts.map +1 -0
  36. package/dist/components/form/date-range-field/index.js +22 -0
  37. package/dist/components/form/index.d.ts +3 -0
  38. package/dist/components/form/index.d.ts.map +1 -1
  39. package/dist/components/form/index.js +3 -0
  40. package/dist/components/form/input-field/index.d.ts +4 -1
  41. package/dist/components/form/input-field/index.d.ts.map +1 -1
  42. package/dist/components/form/input-field/index.js +3 -3
  43. package/dist/components/form/pagination-limit-field/index.d.ts +2 -1
  44. package/dist/components/form/pagination-limit-field/index.d.ts.map +1 -1
  45. package/dist/components/form/pagination-limit-field/index.js +2 -2
  46. package/dist/components/form/password-field/index.d.ts +5 -4
  47. package/dist/components/form/password-field/index.d.ts.map +1 -1
  48. package/dist/components/form/password-field/index.js +8 -7
  49. package/dist/components/form/select-field/index.d.ts +3 -1
  50. package/dist/components/form/select-field/index.d.ts.map +1 -1
  51. package/dist/components/form/select-field/index.js +8 -2
  52. package/dist/components/form/state-field/index.js +1 -1
  53. package/dist/components/form/switch-field/index.d.ts +2 -1
  54. package/dist/components/form/switch-field/index.d.ts.map +1 -1
  55. package/dist/components/form/switch-field/index.js +2 -2
  56. package/dist/components/page/index.d.ts.map +1 -1
  57. package/dist/components/page/index.js +3 -3
  58. package/dist/components/page-header/index.d.ts.map +1 -1
  59. package/dist/components/page-header/index.js +8 -6
  60. package/dist/components/pagination/index.js +1 -1
  61. package/dist/components/table/id-table-cell.d.ts +3 -2
  62. package/dist/components/table/id-table-cell.d.ts.map +1 -1
  63. package/dist/components/table/id-table-cell.js +2 -2
  64. package/dist/components/table/locked-table-actions.js +1 -1
  65. package/dist/components/ui/alert/index.d.ts +5 -1
  66. package/dist/components/ui/alert/index.d.ts.map +1 -1
  67. package/dist/components/ui/alert/index.js +22 -8
  68. package/dist/components/ui/alert/styles.css +68 -0
  69. package/dist/components/ui/autocomplete/index.js +8 -8
  70. package/dist/components/ui/autosize-textarea/index.js +1 -1
  71. package/dist/components/ui/badge/index.d.ts +1 -1
  72. package/dist/components/ui/badge/index.d.ts.map +1 -1
  73. package/dist/components/ui/badge/index.js +11 -7
  74. package/dist/components/ui/breadcrumb/index.d.ts.map +1 -1
  75. package/dist/components/ui/breadcrumb/index.js +5 -5
  76. package/dist/components/ui/breadcrumb/styles.css +27 -0
  77. package/dist/components/ui/button/index.d.ts +8 -3
  78. package/dist/components/ui/button/index.d.ts.map +1 -1
  79. package/dist/components/ui/button/index.js +22 -30
  80. package/dist/components/ui/button/styles.css +64 -0
  81. package/dist/components/ui/calendar/index.d.ts +9 -0
  82. package/dist/components/ui/calendar/index.d.ts.map +1 -0
  83. package/dist/components/ui/calendar/index.js +115 -0
  84. package/dist/components/ui/card/index.js +1 -1
  85. package/dist/components/ui/checkbox/index.js +1 -1
  86. package/dist/components/ui/command/index.d.ts +1 -1
  87. package/dist/components/ui/command/index.d.ts.map +1 -1
  88. package/dist/components/ui/command/index.js +59 -9
  89. package/dist/components/ui/dialog/index.d.ts.map +1 -1
  90. package/dist/components/ui/dialog/index.js +6 -6
  91. package/dist/components/ui/dialog/styles.css +34 -0
  92. package/dist/components/ui/dropdown-menu/index.js +6 -6
  93. package/dist/components/ui/field/index.d.ts +25 -0
  94. package/dist/components/ui/field/index.d.ts.map +1 -0
  95. package/dist/components/ui/field/index.js +79 -0
  96. package/dist/components/ui/form.d.ts.map +1 -1
  97. package/dist/components/ui/form.js +3 -2
  98. package/dist/components/ui/icon-button/index.d.ts +13 -0
  99. package/dist/components/ui/icon-button/index.d.ts.map +1 -0
  100. package/dist/components/ui/icon-button/index.js +35 -0
  101. package/dist/components/ui/icon-button/styles.css +33 -0
  102. package/dist/components/ui/input/adornment.d.ts +9 -0
  103. package/dist/components/ui/input/adornment.d.ts.map +1 -0
  104. package/dist/components/ui/input/adornment.js +21 -0
  105. package/dist/components/ui/input/index.d.ts +16 -2
  106. package/dist/components/ui/input/index.d.ts.map +1 -1
  107. package/dist/components/ui/input/index.js +90 -2
  108. package/dist/components/ui/input/styles.css +68 -0
  109. package/dist/components/ui/multiple-select/index.d.ts +6 -6
  110. package/dist/components/ui/multiple-select/index.d.ts.map +1 -1
  111. package/dist/components/ui/multiple-select/index.js +14 -12
  112. package/dist/components/ui/paper/index.js +1 -1
  113. package/dist/components/ui/paper-collapsible/index.d.ts +9 -0
  114. package/dist/components/ui/paper-collapsible/index.d.ts.map +1 -0
  115. package/dist/components/ui/paper-collapsible/index.js +24 -0
  116. package/dist/components/ui/progress/index.d.ts +1 -1
  117. package/dist/components/ui/progress/index.d.ts.map +1 -1
  118. package/dist/components/ui/select/index.d.ts +1 -2
  119. package/dist/components/ui/select/index.d.ts.map +1 -1
  120. package/dist/components/ui/select/index.js +9 -18
  121. package/dist/components/ui/select/styles.css +57 -0
  122. package/dist/components/ui/separator/index.js +1 -1
  123. package/dist/components/ui/sheet/index.d.ts +1 -1
  124. package/dist/components/ui/sheet/index.d.ts.map +1 -1
  125. package/dist/components/ui/sheet/index.js +12 -3
  126. package/dist/components/ui/sidebar/index.d.ts +10 -0
  127. package/dist/components/ui/sidebar/index.d.ts.map +1 -0
  128. package/dist/components/ui/sidebar/index.js +25 -0
  129. package/dist/components/ui/sidebar/sidebar-back-button.d.ts +3 -0
  130. package/dist/components/ui/sidebar/sidebar-back-button.d.ts.map +1 -0
  131. package/dist/components/ui/sidebar/sidebar-back-button.js +8 -0
  132. package/dist/components/ui/sidebar/sidebar-components.d.ts +23 -0
  133. package/dist/components/ui/sidebar/sidebar-components.d.ts.map +1 -0
  134. package/dist/components/ui/sidebar/sidebar-components.js +23 -0
  135. package/dist/components/ui/sidebar/sidebar-expand-button.d.ts +6 -0
  136. package/dist/components/ui/sidebar/sidebar-expand-button.d.ts.map +1 -0
  137. package/dist/components/ui/sidebar/sidebar-expand-button.js +19 -0
  138. package/dist/components/ui/sidebar/sidebar-item-button.d.ts +12 -0
  139. package/dist/components/ui/sidebar/sidebar-item-button.d.ts.map +1 -0
  140. package/dist/components/ui/sidebar/sidebar-item-button.js +23 -0
  141. package/dist/components/ui/sidebar/sidebar-item-collapsible.d.ts +12 -0
  142. package/dist/components/ui/sidebar/sidebar-item-collapsible.d.ts.map +1 -0
  143. package/dist/components/ui/sidebar/sidebar-item-collapsible.js +52 -0
  144. package/dist/components/ui/sidebar/sidebar-item-icon-button.d.ts +12 -0
  145. package/dist/components/ui/sidebar/sidebar-item-icon-button.d.ts.map +1 -0
  146. package/dist/components/ui/sidebar/sidebar-item-icon-button.js +20 -0
  147. package/dist/components/ui/sidebar/sidebar-item.d.ts +13 -0
  148. package/dist/components/ui/sidebar/sidebar-item.d.ts.map +1 -0
  149. package/dist/components/ui/sidebar/sidebar-item.js +19 -0
  150. package/dist/components/ui/sidebar/sidebar-provider.d.ts +12 -0
  151. package/dist/components/ui/sidebar/sidebar-provider.d.ts.map +1 -0
  152. package/dist/components/ui/sidebar/sidebar-provider.js +59 -0
  153. package/dist/components/ui/sidebar/sidebar-provider.test.d.ts +2 -0
  154. package/dist/components/ui/sidebar/sidebar-provider.test.d.ts.map +1 -0
  155. package/dist/components/ui/sidebar/sidebar-provider.test.js +167 -0
  156. package/dist/components/ui/sidebar/sidebar-root.d.ts +3 -0
  157. package/dist/components/ui/sidebar/sidebar-root.d.ts.map +1 -0
  158. package/dist/components/ui/sidebar/sidebar-root.js +24 -0
  159. package/dist/components/ui/stepper/index.d.ts.map +1 -1
  160. package/dist/components/ui/stepper/index.js +5 -5
  161. package/dist/components/ui/stepper/styles.css +41 -0
  162. package/dist/components/ui/switch/index.js +1 -1
  163. package/dist/components/ui/table/index.js +4 -4
  164. package/dist/components/ui/tabs/index.d.ts.map +1 -1
  165. package/dist/components/ui/tabs/index.js +4 -4
  166. package/dist/components/ui/tabs/styles.css +31 -0
  167. package/dist/components/ui/textarea/index.js +1 -1
  168. package/dist/components/ui/toast/index.d.ts +16 -15
  169. package/dist/components/ui/toast/index.d.ts.map +1 -1
  170. package/dist/components/ui/toast/index.js +0 -77
  171. package/dist/components/ui/toast/toaster.d.ts +5 -1
  172. package/dist/components/ui/toast/toaster.d.ts.map +1 -1
  173. package/dist/components/ui/toast/toaster.js +5 -7
  174. package/dist/globals.css +472 -0
  175. package/dist/hooks/use-time.d.ts +6 -0
  176. package/dist/hooks/use-time.d.ts.map +1 -0
  177. package/dist/hooks/use-time.js +20 -0
  178. package/dist/hooks/use-toast.d.ts +19 -33
  179. package/dist/hooks/use-toast.d.ts.map +1 -1
  180. package/dist/hooks/use-toast.js +49 -150
  181. package/dist/index.d.ts +7 -1
  182. package/dist/index.d.ts.map +1 -1
  183. package/dist/index.js +8 -1
  184. package/dist/lib/storage/get-storage-object.d.ts +2 -0
  185. package/dist/lib/storage/get-storage-object.d.ts.map +1 -0
  186. package/dist/lib/storage/get-storage-object.js +19 -0
  187. package/dist/lib/storage/get-storage.d.ts +2 -0
  188. package/dist/lib/storage/get-storage.d.ts.map +1 -0
  189. package/dist/lib/storage/get-storage.js +17 -0
  190. package/dist/lib/storage/index.d.ts +3 -0
  191. package/dist/lib/storage/index.d.ts.map +1 -0
  192. package/dist/lib/storage/index.js +18 -0
  193. package/dist/public/arm.gif +0 -0
  194. package/dist/public/clap.gif +0 -0
  195. package/dist/public/confetti-ball.gif +0 -0
  196. package/dist/public/countries.json +21200 -21200
  197. package/dist/public/dizzy.gif +0 -0
  198. package/dist/public/electricity.gif +0 -0
  199. package/dist/public/gear.gif +0 -0
  200. package/dist/public/gem.gif +0 -0
  201. package/dist/public/pencil.gif +0 -0
  202. package/dist/public/robot.gif +0 -0
  203. package/dist/public/rocket.gif +0 -0
  204. package/dist/public/software.gif +0 -0
  205. package/dist/public/solar-system.gif +0 -0
  206. package/dist/public/unicorn.gif +0 -0
  207. package/package.json +32 -29
  208. package/dist/components/ui/input-with-icon/index.d.ts +0 -12
  209. package/dist/components/ui/input-with-icon/index.d.ts.map +0 -1
  210. package/dist/components/ui/input-with-icon/index.js +0 -57
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/command/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,MAAM,CAAA;AAMlD,iBAAS,OAAO,CAAC,EACf,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,2CAW/C;AAED,QAAA,MAAM,aAAa,GAAI,wBAAwB,WAAW,4CAUzD,CAAA;AAED,iBAAS,YAAY,CAAC,EACpB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,KAAK,CAAC,2CAiBrD;AAED,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,IAAI,CAAC,2CAYpD;AAED,iBAAS,YAAY,CACnB,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,KAAK,CAAC,2CAS3D;AAED,iBAAS,YAAY,CAAC,EACpB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,KAAK,CAAC,2CAWrD;AAED,iBAAS,gBAAgB,CAAC,EACxB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,SAAS,CAAC,2CAQzD;AAED,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,IAAI,CAAC,2CAWpD;AAED,iBAAS,eAAe,CAAC,EACvB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,2CAW9B;AAED,OAAO,EACL,OAAO,EACP,aAAa,EACb,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,eAAe,EACf,gBAAgB,EACjB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/command/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,MAAM,CAAA;AAMlD,iBAAS,OAAO,CAAC,EACf,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,2CAW/C;AAED,QAAA,MAAM,aAAa,GAAI,wBAAwB,WAAW,4CAUzD,CAAA;AAED,iBAAS,YAAY,CAAC,EACpB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,KAAK,CAAC,2CAiBrD;AAED,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,IAAI,CAAC,2CAmCpD;AAED,iBAAS,YAAY,CACnB,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,KAAK,CAAC,2CAS3D;AAED,iBAAS,YAAY,CAAC,EACpB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,KAAK,CAAC,2CAWrD;AAED,iBAAS,gBAAgB,CAAC,EACxB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,SAAS,CAAC,2CAQzD;AAED,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,IAAI,CAAC,2CAWpD;AAED,iBAAS,eAAe,CAAC,EACvB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,2CAW9B;AAED,OAAO,EACL,OAAO,EACP,aAAa,EACb,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,eAAe,EACf,gBAAgB,EACjB,CAAA"}
@@ -1,5 +1,38 @@
1
1
  'use client';
2
2
  "use strict";
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 () {
20
+ var ownKeys = function(o) {
21
+ ownKeys = Object.getOwnPropertyNames || function (o) {
22
+ var ar = [];
23
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
24
+ return ar;
25
+ };
26
+ return ownKeys(o);
27
+ };
28
+ return function (mod) {
29
+ if (mod && mod.__esModule) return mod;
30
+ var result = {};
31
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
32
+ __setModuleDefault(result, mod);
33
+ return result;
34
+ };
35
+ })();
3
36
  Object.defineProperty(exports, "__esModule", { value: true });
4
37
  exports.CommandDialog = void 0;
5
38
  exports.Command = Command;
@@ -11,35 +44,52 @@ exports.CommandItem = CommandItem;
11
44
  exports.CommandShortcut = CommandShortcut;
12
45
  exports.CommandSeparator = CommandSeparator;
13
46
  const jsx_runtime_1 = require("react/jsx-runtime");
47
+ const React = __importStar(require("react"));
14
48
  const cmdk_1 = require("cmdk");
15
49
  const lucide_react_1 = require("lucide-react");
16
50
  const utils_1 = require("../../../lib/utils");
17
51
  const dialog_1 = require("../../../components/ui/dialog");
18
52
  function Command({ className, ...props }) {
19
- return ((0, jsx_runtime_1.jsx)(cmdk_1.Command, { "data-slot": "command", className: (0, utils_1.cn)('flex h-full w-full flex-col overflow-hidden rounded-md bg-white text-slate-950 dark:bg-slate-950 dark:text-slate-50', className), ...props }));
53
+ return ((0, jsx_runtime_1.jsx)(cmdk_1.Command, { "data-slot": "command", className: (0, utils_1.cn)('bg-card text-foreground flex h-full w-full flex-col overflow-hidden rounded-md', className), ...props }));
20
54
  }
21
55
  const CommandDialog = ({ children, ...props }) => {
22
- return ((0, jsx_runtime_1.jsx)(dialog_1.Dialog, { ...props, children: (0, jsx_runtime_1.jsx)(dialog_1.DialogContent, { className: "overflow-hidden p-0 shadow-lg", children: (0, jsx_runtime_1.jsx)(Command, { className: "[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-slate-500 dark:[&_[cmdk-group-heading]]:text-slate-400 [&_[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 }) }) }));
56
+ return ((0, jsx_runtime_1.jsx)(dialog_1.Dialog, { ...props, children: (0, jsx_runtime_1.jsx)(dialog_1.DialogContent, { className: "overflow-hidden p-0 shadow-lg", children: (0, jsx_runtime_1.jsx)(Command, { className: "[&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[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 }) }) }));
23
57
  };
24
58
  exports.CommandDialog = CommandDialog;
25
59
  function CommandInput({ className, ...props }) {
26
- return ((0, jsx_runtime_1.jsxs)("div", { "data-slot": "command-input-wrapper", className: "flex items-center border-b px-3", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.Search, { className: "mr-2 h-4 w-4 shrink-0 opacity-50" }), (0, jsx_runtime_1.jsx)(cmdk_1.Command.Input, { "data-slot": "command-input", className: (0, utils_1.cn)('flex h-11 w-full rounded-md bg-transparent py-3 text-sm outline-hidden placeholder:text-slate-500 disabled:cursor-not-allowed disabled:opacity-50 dark:placeholder:text-slate-400', className), ...props })] }));
60
+ return ((0, jsx_runtime_1.jsxs)("div", { "data-slot": "command-input-wrapper", className: "flex items-center border-b px-3", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.Search, { className: "mr-2 h-4 w-4 shrink-0 opacity-50" }), (0, jsx_runtime_1.jsx)(cmdk_1.Command.Input, { "data-slot": "command-input", className: (0, utils_1.cn)('outline-hidden placeholder:text-muted-foreground flex h-11 w-full rounded-md bg-transparent py-3 text-sm disabled:cursor-not-allowed disabled:opacity-50', className), ...props })] }));
27
61
  }
28
- function CommandList({ className, ...props }) {
29
- return ((0, jsx_runtime_1.jsx)(cmdk_1.Command.List, { "data-slot": "command-list", className: (0, utils_1.cn)('max-h-[300px] overflow-x-hidden overflow-y-auto', className), style: { scrollBehavior: 'smooth' }, ...props }));
62
+ function CommandList({ className, children, ...props }) {
63
+ const listRef = React.useRef(null);
64
+ React.useEffect(() => {
65
+ const listElement = listRef.current;
66
+ if (!listElement)
67
+ return;
68
+ const handleWheel = (event) => {
69
+ const { scrollTop, scrollHeight, clientHeight } = listElement;
70
+ const isAtTop = scrollTop === 0 && event.deltaY < 0;
71
+ const isAtBottom = scrollTop + clientHeight >= scrollHeight && event.deltaY > 0;
72
+ if (!isAtTop && !isAtBottom) {
73
+ event.stopPropagation();
74
+ }
75
+ };
76
+ listElement.addEventListener('wheel', handleWheel, { passive: true });
77
+ return () => listElement.removeEventListener('wheel', handleWheel);
78
+ }, []);
79
+ return ((0, jsx_runtime_1.jsx)(cmdk_1.Command.List, { ref: listRef, "data-slot": "command-list", className: (0, utils_1.cn)('max-h-[300px] overflow-y-auto overflow-x-hidden', className), ...props, children: children }));
30
80
  }
31
81
  function CommandEmpty(props) {
32
82
  return ((0, jsx_runtime_1.jsx)(cmdk_1.Command.Empty, { "data-slot": "command-empty", className: "py-6 text-center text-sm", ...props }));
33
83
  }
34
84
  function CommandGroup({ className, ...props }) {
35
- return ((0, jsx_runtime_1.jsx)(cmdk_1.Command.Group, { "data-slot": "command-group", className: (0, utils_1.cn)('overflow-hidden p-1 text-slate-950 dark:text-slate-50 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-slate-500 dark:[&_[cmdk-group-heading]]:text-slate-400', className), ...props }));
85
+ return ((0, jsx_runtime_1.jsx)(cmdk_1.Command.Group, { "data-slot": "command-group", className: (0, utils_1.cn)('text-foreground [&_[cmdk-group-heading]]:text-muted-foreground overflow-hidden p-1 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium', className), ...props }));
36
86
  }
37
87
  function CommandSeparator({ className, ...props }) {
38
- return ((0, jsx_runtime_1.jsx)(cmdk_1.Command.Separator, { "data-slot": "command-separator", className: (0, utils_1.cn)('-mx-1 h-px bg-slate-200 dark:bg-slate-800', className), ...props }));
88
+ return ((0, jsx_runtime_1.jsx)(cmdk_1.Command.Separator, { "data-slot": "command-separator", className: (0, utils_1.cn)('bg-border -mx-1 h-px', className), ...props }));
39
89
  }
40
90
  function CommandItem({ className, ...props }) {
41
- return ((0, jsx_runtime_1.jsx)(cmdk_1.Command.Item, { "data-slot": "command-item", className: (0, utils_1.cn)("relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 data-[selected='true']:bg-slate-100 data-[selected=true]:text-slate-900 dark:data-[selected='true']:bg-slate-800 dark:data-[selected=true]:text-slate-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0", className), ...props }));
91
+ return ((0, jsx_runtime_1.jsx)(cmdk_1.Command.Item, { "data-slot": "command-item", className: (0, utils_1.cn)("outline-hidden data-[selected='true']:bg-muted data-[selected=true]:text-foreground relative flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0", className), ...props }));
42
92
  }
43
93
  function CommandShortcut({ className, ...props }) {
44
- return ((0, jsx_runtime_1.jsx)("span", { "data-slot": "command-shortcut", className: (0, utils_1.cn)('ml-auto text-xs tracking-widest text-slate-500 dark:text-slate-400', className), ...props }));
94
+ return ((0, jsx_runtime_1.jsx)("span", { "data-slot": "command-shortcut", className: (0, utils_1.cn)('text-muted-foreground ml-auto text-xs tracking-widest', className), ...props }));
45
95
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/dialog/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAA;AAKzD,iBAAS,MAAM,CAAC,EACd,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,2CAEnD;AAED,iBAAS,aAAa,CAAC,EACrB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,2CAEtD;AAED,iBAAS,YAAY,CAAC,EACpB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,MAAM,CAAC,2CAErD;AAED,iBAAS,WAAW,CAAC,EACnB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,2CAEpD;AAED,iBAAS,aAAa,CAAC,EACrB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,2CAWtD;AAED,iBAAS,aAAa,CAAC,EACrB,SAAS,EACT,QAAQ,EACR,eAAsB,EACtB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,GAAG;IACxD,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B,2CAwBA;AAED,iBAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAWzE;AAED,iBAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAWzE;AAED,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,2CAWpD;AAED,iBAAS,iBAAiB,CAAC,EACzB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,WAAW,CAAC,2CAQ1D;AAED,OAAO,EACL,MAAM,EACN,YAAY,EACZ,aAAa,EACb,WAAW,EACX,aAAa,EACb,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,iBAAiB,EAClB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/dialog/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAA;AAKzD,iBAAS,MAAM,CAAC,EACd,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,2CAEnD;AAED,iBAAS,aAAa,CAAC,EACrB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,2CAEtD;AAED,iBAAS,YAAY,CAAC,EACpB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,MAAM,CAAC,2CAErD;AAED,iBAAS,WAAW,CAAC,EACnB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,2CAEpD;AAED,iBAAS,aAAa,CAAC,EACrB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,2CAQtD;AAED,iBAAS,aAAa,CAAC,EACrB,SAAS,EACT,QAAQ,EACR,eAAsB,EACtB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,GAAG;IACxD,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B,2CAwBA;AAED,iBAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAQzE;AAED,iBAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAQzE;AAED,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,2CAQpD;AAED,iBAAS,iBAAiB,CAAC,EACzB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,WAAW,CAAC,2CAQ1D;AAED,OAAO,EACL,MAAM,EACN,YAAY,EACZ,aAAa,EACb,WAAW,EACX,aAAa,EACb,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,iBAAiB,EAClB,CAAA"}
@@ -61,20 +61,20 @@ function DialogClose({ ...props }) {
61
61
  return (0, jsx_runtime_1.jsx)(DialogPrimitive.Close, { "data-slot": "dialog-close", ...props });
62
62
  }
63
63
  function DialogOverlay({ className, ...props }) {
64
- return ((0, jsx_runtime_1.jsx)(DialogPrimitive.Overlay, { "data-slot": "dialog-overlay", className: (0, utils_1.cn)('data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/80', className), ...props }));
64
+ return ((0, jsx_runtime_1.jsx)(DialogPrimitive.Overlay, { "data-slot": "dialog-overlay", className: (0, utils_1.cn)('dialog-overlay', className), ...props }));
65
65
  }
66
66
  function DialogContent({ className, children, showCloseButton = true, ...props }) {
67
- return ((0, jsx_runtime_1.jsxs)(DialogPortal, { "data-slot": "dialog-portal", children: [(0, jsx_runtime_1.jsx)(DialogOverlay, {}), (0, jsx_runtime_1.jsxs)(DialogPrimitive.Content, { "data-slot": "dialog-content", className: (0, utils_1.cn)('bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] fixed top-[50%] left-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border p-6 shadow-lg duration-200 sm:max-w-[425px] sm:rounded-lg', !showCloseButton && '*:data-radix-dialog-close:hidden', className), ...props, children: [children, (0, jsx_runtime_1.jsxs)(DialogPrimitive.Close, { "data-slot": "dialog-close", className: "data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-sm opacity-70 transition-opacity hover:opacity-100 disabled:pointer-events-none", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.X, { className: "h-4 w-4" }), (0, jsx_runtime_1.jsx)("span", { className: "sr-only", children: "Close" })] })] })] }));
67
+ return ((0, jsx_runtime_1.jsxs)(DialogPortal, { "data-slot": "dialog-portal", children: [(0, jsx_runtime_1.jsx)(DialogOverlay, {}), (0, jsx_runtime_1.jsxs)(DialogPrimitive.Content, { "data-slot": "dialog-content", className: (0, utils_1.cn)('dialog-content', !showCloseButton && '*:data-radix-dialog-close:hidden', className), ...props, children: [children, (0, jsx_runtime_1.jsxs)(DialogPrimitive.Close, { "data-slot": "dialog-close", className: "dialog-close", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.X, { className: "size-4" }), (0, jsx_runtime_1.jsx)("span", { className: "sr-only", children: "Close" })] })] })] }));
68
68
  }
69
69
  function DialogHeader({ className, ...props }) {
70
- return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "dialog-header", className: (0, utils_1.cn)('flex flex-col gap-4 space-y-1.5 text-center sm:text-left', className), ...props }));
70
+ return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "dialog-header", className: (0, utils_1.cn)('dialog-header', className), ...props }));
71
71
  }
72
72
  function DialogFooter({ className, ...props }) {
73
- return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "dialog-footer", className: (0, utils_1.cn)('flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2', className), ...props }));
73
+ return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "dialog-footer", className: (0, utils_1.cn)('dialog-footer', className), ...props }));
74
74
  }
75
75
  function DialogTitle({ className, ...props }) {
76
- return ((0, jsx_runtime_1.jsx)(DialogPrimitive.Title, { "data-slot": "dialog-title", className: (0, utils_1.cn)('text-lg leading-none font-semibold tracking-tight', className), ...props }));
76
+ return ((0, jsx_runtime_1.jsx)(DialogPrimitive.Title, { "data-slot": "dialog-title", className: (0, utils_1.cn)('dialog-title', className), ...props }));
77
77
  }
78
78
  function DialogDescription({ className, ...props }) {
79
- return ((0, jsx_runtime_1.jsx)(DialogPrimitive.Description, { "data-slot": "dialog-description", className: (0, utils_1.cn)('text-muted-foreground text-xs font-medium', className), ...props }));
79
+ return ((0, jsx_runtime_1.jsx)(DialogPrimitive.Description, { "data-slot": "dialog-description", className: (0, utils_1.cn)('dialog-description', className), ...props }));
80
80
  }
@@ -0,0 +1,34 @@
1
+ @theme inline {
2
+ --color-dialog-title-text: var(--color-container-title);
3
+ --color-dialog-description-text: var(--color-container-text);
4
+ }
5
+
6
+ @layer components {
7
+ .dialog-overlay {
8
+ @apply data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50;
9
+ }
10
+
11
+ .dialog-content {
12
+ @apply bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-8 border p-6 shadow-lg duration-200 sm:max-w-[425px] sm:rounded-lg;
13
+ }
14
+
15
+ .dialog-close {
16
+ @apply data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute right-4 top-4 rounded-sm opacity-70 transition-opacity hover:opacity-100 disabled:pointer-events-none;
17
+ }
18
+
19
+ .dialog-header {
20
+ @apply flex flex-col gap-4 space-y-1.5 text-center sm:text-left;
21
+ }
22
+
23
+ .dialog-footer {
24
+ @apply flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2;
25
+ }
26
+
27
+ .dialog-title {
28
+ @apply text-dialog-title-text text-lg font-bold leading-none tracking-tight;
29
+ }
30
+
31
+ .dialog-description {
32
+ @apply text-dialog-description-text text-sm font-medium;
33
+ }
34
+ }
@@ -62,7 +62,7 @@ function DropdownMenuPortal({ ...props }) {
62
62
  return ((0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.Portal, { "data-slot": "dropdown-menu-portal", ...props }));
63
63
  }
64
64
  function DropdownMenuTrigger({ className, ...props }) {
65
- return ((0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.Trigger, { "data-slot": "dropdown-menu-trigger", className: (0, utils_1.cn)('flex items-center justify-center outline-hidden', className), ...props }));
65
+ return ((0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.Trigger, { "data-slot": "dropdown-menu-trigger", className: (0, utils_1.cn)('outline-hidden flex items-center justify-center', className), ...props }));
66
66
  }
67
67
  function DropdownMenuContent({ className, sideOffset = 4, ...props }) {
68
68
  return ((0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.Portal, { children: (0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.Content, { "data-slot": "dropdown-menu-content", sideOffset: sideOffset, className: (0, utils_1.cn)('bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-32 overflow-hidden rounded-lg border shadow-md', className), ...props }) }));
@@ -71,7 +71,7 @@ function DropdownMenuGroup({ ...props }) {
71
71
  return ((0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.Group, { "data-slot": "dropdown-menu-group", ...props }));
72
72
  }
73
73
  function DropdownMenuItem({ className, inset, variant = 'default', ...props }) {
74
- return ((0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.Item, { "data-slot": "dropdown-menu-item", "data-inset": inset, "data-variant": variant, className: (0, utils_1.cn)('focus:bg-shadcn-100 focus:text-accent-foreground relative flex cursor-pointer items-center gap-3 px-3 py-2 text-sm font-medium text-[#52525b] outline-hidden transition-colors select-none data-disabled:pointer-events-none data-disabled:opacity-50', className), ...props }));
74
+ return ((0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.Item, { "data-slot": "dropdown-menu-item", "data-inset": inset, "data-variant": variant, className: (0, utils_1.cn)('focus:bg-shadcn-100 focus:text-accent-foreground text-muted-foreground outline-hidden data-disabled:pointer-events-none data-disabled:opacity-50 relative flex cursor-pointer select-none items-center gap-3 px-3 py-2 text-sm font-medium transition-colors', className), ...props }));
75
75
  }
76
76
  function DropdownMenuItemIcon({ className, children, ...props }) {
77
77
  return ((0, jsx_runtime_1.jsx)("span", { "data-slot": "dropdown-menu-item-icon", className: (0, utils_1.cn)('text-shadcn-400', className), ...props, children: React.Children.map(React.Children.toArray(children), (child) => React.isValidElement(child)
@@ -79,16 +79,16 @@ function DropdownMenuItemIcon({ className, children, ...props }) {
79
79
  : child) }));
80
80
  }
81
81
  function DropdownMenuCheckboxItem({ className, children, checked, ...props }) {
82
- return ((0, jsx_runtime_1.jsxs)(DropdownMenuPrimitive.CheckboxItem, { "data-slot": "dropdown-menu-checkbox-item", className: (0, utils_1.cn)('focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden transition-colors select-none data-disabled:pointer-events-none data-disabled:opacity-50', className), checked: checked, ...props, children: [(0, jsx_runtime_1.jsx)("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: (0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.ItemIndicator, { children: (0, jsx_runtime_1.jsx)(lucide_react_1.Check, { className: "size-4" }) }) }), children] }));
82
+ return ((0, jsx_runtime_1.jsxs)(DropdownMenuPrimitive.CheckboxItem, { "data-slot": "dropdown-menu-checkbox-item", className: (0, utils_1.cn)('focus:bg-accent focus:text-accent-foreground outline-hidden data-disabled:pointer-events-none data-disabled:opacity-50 relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm transition-colors', className), checked: checked, ...props, children: [(0, jsx_runtime_1.jsx)("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: (0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.ItemIndicator, { children: (0, jsx_runtime_1.jsx)(lucide_react_1.Check, { className: "size-4" }) }) }), children] }));
83
83
  }
84
84
  function DropdownMenuRadioGroup({ ...props }) {
85
85
  return ((0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.RadioGroup, { "data-slot": "dropdown-menu-radio-group", ...props }));
86
86
  }
87
87
  function DropdownMenuRadioItem({ className, children, ...props }) {
88
- return ((0, jsx_runtime_1.jsxs)(DropdownMenuPrimitive.RadioItem, { "data-slot": "dropdown-menu-radio-item", className: (0, utils_1.cn)('focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden transition-colors select-none data-disabled:pointer-events-none data-disabled:opacity-50', className), ...props, children: [(0, jsx_runtime_1.jsx)("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: (0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.ItemIndicator, { children: (0, jsx_runtime_1.jsx)(lucide_react_1.Circle, { className: "size-2 fill-current" }) }) }), children] }));
88
+ return ((0, jsx_runtime_1.jsxs)(DropdownMenuPrimitive.RadioItem, { "data-slot": "dropdown-menu-radio-item", className: (0, utils_1.cn)('focus:bg-accent focus:text-accent-foreground outline-hidden data-disabled:pointer-events-none data-disabled:opacity-50 relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm transition-colors', className), ...props, children: [(0, jsx_runtime_1.jsx)("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: (0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.ItemIndicator, { children: (0, jsx_runtime_1.jsx)(lucide_react_1.Circle, { className: "size-2 fill-current" }) }) }), children] }));
89
89
  }
90
90
  function DropdownMenuLabel({ className, inset, ...props }) {
91
- return ((0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.Label, { "data-slot": "dropdown-menu-label", "data-inset": inset, className: (0, utils_1.cn)('hover:bg-shadcn-100 flex items-center gap-3 px-3 py-2 text-sm font-bold text-[#52525b] transition-colors', className), ...props }));
91
+ return ((0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.Label, { "data-slot": "dropdown-menu-label", "data-inset": inset, className: (0, utils_1.cn)('hover:bg-shadcn-100 text-muted-foreground flex items-center gap-3 px-3 py-2 text-sm font-bold transition-colors', className), ...props }));
92
92
  }
93
93
  function DropdownMenuSeparator({ className, ...props }) {
94
94
  return ((0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.Separator, { "data-slot": "dropdown-menu-separator", className: (0, utils_1.cn)('bg-muted -mx-1 my-1 h-px', className), ...props }));
@@ -100,7 +100,7 @@ function DropdownMenuSub({ ...props }) {
100
100
  return (0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.Sub, { "data-slot": "dropdown-menu-sub", ...props });
101
101
  }
102
102
  function DropdownMenuSubTrigger({ className, inset, children, ...props }) {
103
- return ((0, jsx_runtime_1.jsxs)(DropdownMenuPrimitive.SubTrigger, { "data-slot": "dropdown-menu-sub-trigger", "data-inset": inset, className: (0, utils_1.cn)('focus:bg-shadcn-100 data-[state=open]:bg-accent flex cursor-default items-center gap-3 px-3 py-2 text-sm font-medium text-[#52525b] outline-hidden select-none', className), ...props, children: [children, (0, jsx_runtime_1.jsx)(lucide_react_1.ChevronRight, { className: "ml-auto h-4 w-4" })] }));
103
+ return ((0, jsx_runtime_1.jsxs)(DropdownMenuPrimitive.SubTrigger, { "data-slot": "dropdown-menu-sub-trigger", "data-inset": inset, className: (0, utils_1.cn)('focus:bg-shadcn-100 data-[state=open]:bg-accent text-muted-foreground outline-hidden flex cursor-default select-none items-center gap-3 px-3 py-2 text-sm font-medium', className), ...props, children: [children, (0, jsx_runtime_1.jsx)(lucide_react_1.ChevronRight, { className: "ml-auto h-4 w-4" })] }));
104
104
  }
105
105
  function DropdownMenuSubContent({ className, ...props }) {
106
106
  return ((0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.SubContent, { "data-slot": "dropdown-menu-sub-content", className: (0, utils_1.cn)('bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-32 overflow-hidden rounded-md border p-1 shadow-lg', className), ...props }));
@@ -0,0 +1,25 @@
1
+ import { type VariantProps } from 'class-variance-authority';
2
+ import { Label } from '../../../components/ui/label';
3
+ declare function FieldSet({ className, ...props }: React.ComponentProps<'fieldset'>): import("react/jsx-runtime").JSX.Element;
4
+ declare function FieldLegend({ className, variant, ...props }: React.ComponentProps<'legend'> & {
5
+ variant?: 'legend' | 'label';
6
+ }): import("react/jsx-runtime").JSX.Element;
7
+ declare function FieldGroup({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
8
+ declare const fieldVariants: (props?: ({
9
+ orientation?: "horizontal" | "vertical" | "responsive" | null | undefined;
10
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
11
+ declare function Field({ className, orientation, ...props }: React.ComponentProps<'div'> & VariantProps<typeof fieldVariants>): import("react/jsx-runtime").JSX.Element;
12
+ declare function FieldContent({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
13
+ declare function FieldLabel({ className, ...props }: React.ComponentProps<typeof Label>): import("react/jsx-runtime").JSX.Element;
14
+ declare function FieldTitle({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
15
+ declare function FieldDescription({ className, ...props }: React.ComponentProps<'p'>): import("react/jsx-runtime").JSX.Element;
16
+ declare function FieldSeparator({ children, className, ...props }: React.ComponentProps<'div'> & {
17
+ children?: React.ReactNode;
18
+ }): import("react/jsx-runtime").JSX.Element;
19
+ declare function FieldError({ className, children, errors, ...props }: React.ComponentProps<'div'> & {
20
+ errors?: Array<{
21
+ message?: string;
22
+ } | undefined>;
23
+ }): import("react/jsx-runtime").JSX.Element | null;
24
+ export { Field, FieldLabel, FieldDescription, FieldError, FieldGroup, FieldLegend, FieldSeparator, FieldSet, FieldContent, FieldTitle };
25
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/field/index.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAGjE,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAA;AAG7C,iBAAS,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,2CAW1E;AAED,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,OAAkB,EAClB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,GAAG;IAAE,OAAO,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAA;CAAE,2CAYnE;AAED,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAWvE;AAED,QAAA,MAAM,aAAa;;8EAgBlB,CAAA;AAED,iBAAS,KAAK,CAAC,EACb,SAAS,EACT,WAAwB,EACxB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,OAAO,aAAa,CAAC,2CAUlE;AAED,iBAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAWzE;AAED,iBAAS,UAAU,CAAC,EAClB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,KAAK,CAAC,2CAYpC;AAED,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAWvE;AAED,iBAAS,gBAAgB,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,2CAa3E;AAED,iBAAS,cAAc,CAAC,EACtB,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG;IAC/B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAC3B,2CAsBA;AAED,iBAAS,UAAU,CAAC,EAClB,SAAS,EACT,QAAQ,EACR,MAAM,EACN,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG;IAC/B,MAAM,CAAC,EAAE,KAAK,CAAC;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC,CAAA;CACjD,kDA0CA;AAED,OAAO,EACL,KAAK,EACL,UAAU,EACV,gBAAgB,EAChB,UAAU,EACV,UAAU,EACV,WAAW,EACX,cAAc,EACd,QAAQ,EACR,YAAY,EACZ,UAAU,EACX,CAAA"}
@@ -0,0 +1,79 @@
1
+ 'use client';
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.Field = Field;
5
+ exports.FieldLabel = FieldLabel;
6
+ exports.FieldDescription = FieldDescription;
7
+ exports.FieldError = FieldError;
8
+ exports.FieldGroup = FieldGroup;
9
+ exports.FieldLegend = FieldLegend;
10
+ exports.FieldSeparator = FieldSeparator;
11
+ exports.FieldSet = FieldSet;
12
+ exports.FieldContent = FieldContent;
13
+ exports.FieldTitle = FieldTitle;
14
+ const jsx_runtime_1 = require("react/jsx-runtime");
15
+ const react_1 = require("react");
16
+ const class_variance_authority_1 = require("class-variance-authority");
17
+ const utils_1 = require("../../../lib/utils");
18
+ const label_1 = require("../../../components/ui/label");
19
+ const separator_1 = require("../../../components/ui/separator");
20
+ function FieldSet({ className, ...props }) {
21
+ return ((0, jsx_runtime_1.jsx)("fieldset", { "data-slot": "field-set", className: (0, utils_1.cn)('flex flex-col gap-4 has-[>[data-slot=checkbox-group]]:gap-3 has-[>[data-slot=radio-group]]:gap-3', className), ...props }));
22
+ }
23
+ function FieldLegend({ className, variant = 'legend', ...props }) {
24
+ return ((0, jsx_runtime_1.jsx)("legend", { "data-slot": "field-legend", "data-variant": variant, className: (0, utils_1.cn)('mb-1.5 font-medium data-[variant=label]:text-sm data-[variant=legend]:text-base', className), ...props }));
25
+ }
26
+ function FieldGroup({ className, ...props }) {
27
+ return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "field-group", className: (0, utils_1.cn)('group/field-group @container/field-group flex w-full flex-col gap-5 data-[slot=checkbox-group]:gap-3 [&>[data-slot=field-group]]:gap-4', className), ...props }));
28
+ }
29
+ const fieldVariants = (0, class_variance_authority_1.cva)('data-[invalid=true]:text-destructive gap-2 group/field flex w-full', {
30
+ variants: {
31
+ orientation: {
32
+ vertical: 'flex-col [&>*]:w-full [&>.sr-only]:w-auto',
33
+ horizontal: 'flex-row items-center [&>[data-slot=field-label]]:flex-auto has-[>[data-slot=field-content]]:items-start has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px',
34
+ responsive: 'flex-col [&>*]:w-full [&>.sr-only]:w-auto @md/field-group:flex-row @md/field-group:items-center @md/field-group:[&>*]:w-auto @md/field-group:[&>[data-slot=field-label]]:flex-auto @md/field-group:has-[>[data-slot=field-content]]:items-start @md/field-group:has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px'
35
+ }
36
+ },
37
+ defaultVariants: {
38
+ orientation: 'vertical'
39
+ }
40
+ });
41
+ function Field({ className, orientation = 'vertical', ...props }) {
42
+ return ((0, jsx_runtime_1.jsx)("div", { role: "group", "data-slot": "field", "data-orientation": orientation, className: (0, utils_1.cn)(fieldVariants({ orientation }), className), ...props }));
43
+ }
44
+ function FieldContent({ className, ...props }) {
45
+ return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "field-content", className: (0, utils_1.cn)('group/field-content flex flex-1 flex-col gap-0.5 leading-snug', className), ...props }));
46
+ }
47
+ function FieldLabel({ className, ...props }) {
48
+ return ((0, jsx_runtime_1.jsx)(label_1.Label, { "data-slot": "field-label", className: (0, utils_1.cn)('has-data-checked:bg-primary/5 has-data-checked:border-primary dark:has-data-checked:bg-primary/10 group/field-label peer/field-label flex w-fit gap-2 leading-snug group-data-[disabled=true]/field:opacity-50 has-[>[data-slot=field]]:rounded-lg has-[>[data-slot=field]]:border [&>*]:data-[slot=field]:p-2.5', 'has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col', className), ...props }));
49
+ }
50
+ function FieldTitle({ className, ...props }) {
51
+ return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "field-label", className: (0, utils_1.cn)('flex w-fit items-center gap-2 text-sm leading-snug font-medium group-data-[disabled=true]/field:opacity-50', className), ...props }));
52
+ }
53
+ function FieldDescription({ className, ...props }) {
54
+ return ((0, jsx_runtime_1.jsx)("p", { "data-slot": "field-description", className: (0, utils_1.cn)('text-muted-foreground text-left text-sm leading-normal font-normal group-has-[[data-orientation=horizontal]]/field:text-balance [[data-variant=legend]+&]:-mt-1.5', 'last:mt-0 nth-last-2:-mt-1', '[&>a:hover]:text-primary [&>a]:underline [&>a]:underline-offset-4', className), ...props }));
55
+ }
56
+ function FieldSeparator({ children, className, ...props }) {
57
+ return ((0, jsx_runtime_1.jsxs)("div", { "data-slot": "field-separator", "data-content": !!children, className: (0, utils_1.cn)('relative -my-2 h-5 text-sm group-data-[variant=outline]/field-group:-mb-2', className), ...props, children: [(0, jsx_runtime_1.jsx)(separator_1.Separator, { className: "absolute inset-0 top-1/2" }), children && ((0, jsx_runtime_1.jsx)("span", { className: "text-muted-foreground bg-background relative mx-auto block w-fit px-2", "data-slot": "field-separator-content", children: children }))] }));
58
+ }
59
+ function FieldError({ className, children, errors, ...props }) {
60
+ const content = (0, react_1.useMemo)(() => {
61
+ if (children) {
62
+ return children;
63
+ }
64
+ if (!errors?.length) {
65
+ return null;
66
+ }
67
+ const uniqueErrors = [
68
+ ...new Map(errors.map((error) => [error?.message, error])).values()
69
+ ];
70
+ if (uniqueErrors?.length === 1) {
71
+ return uniqueErrors[0]?.message;
72
+ }
73
+ return ((0, jsx_runtime_1.jsx)("ul", { className: "ml-4 flex list-disc flex-col gap-1", children: uniqueErrors.map((error, index) => error?.message && (0, jsx_runtime_1.jsx)("li", { children: error.message }, index)) }));
74
+ }, [children, errors]);
75
+ if (!content) {
76
+ return null;
77
+ }
78
+ return ((0, jsx_runtime_1.jsx)("div", { role: "alert", "data-slot": "field-error", className: (0, utils_1.cn)('text-destructive text-sm font-normal', className), ...props, children: content }));
79
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../../../src/components/ui/form.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,cAAc,MAAM,uBAAuB,CAAA;AAEvD,OAAO,EAEL,eAAe,EACf,SAAS,EACT,WAAW,EAGZ,MAAM,iBAAiB,CAAA;AAKxB,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAS9D,QAAA,MAAM,IAAI,4MAAe,CAAA;AAazB,QAAA,MAAM,SAAS,GACb,YAAY,SAAS,WAAW,GAAG,WAAW,EAC9C,KAAK,SAAS,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,EAC/D,cAEC,eAAe,CAAC,YAAY,EAAE,KAAK,CAAC,4CAMtC,CAAA;AAED,QAAA,MAAM,YAAY;;;;;;;;;;;;CAsBjB,CAAA;AAWD,MAAM,MAAM,aAAa,GAAG,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG;IACjE,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,CAAA;AAED,QAAA,MAAM,QAAQ;eAHD,OAAO;wCAanB,CAAA;AAGD,MAAM,MAAM,cAAc,GAAG,KAAK,CAAC,wBAAwB,CACzD,OAAO,cAAc,CAAC,IAAI,CAC3B,GAAG;IACF,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CACxB,CAAA;AAED,QAAA,MAAM,SAAS;YAHL,KAAK,CAAC,SAAS;0CA2BvB,CAAA;AAGF,eAAO,MAAM,WAAW,GAAI,yBAAyB,oBAAoB,4CASxE,CAAA;AAED,QAAA,MAAM,WAAW,8JAmBf,CAAA;AAGF,QAAA,MAAM,eAAe,yHAcnB,CAAA;AAGF,QAAA,MAAM,WAAW,yHAqBf,CAAA;AAGF,OAAO,EACL,YAAY,EACZ,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,WAAW,EACX,eAAe,EACf,WAAW,EACX,SAAS,EACV,CAAA"}
1
+ {"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../../../src/components/ui/form.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,cAAc,MAAM,uBAAuB,CAAA;AAEvD,OAAO,EAEL,eAAe,EACf,SAAS,EACT,WAAW,EAGZ,MAAM,iBAAiB,CAAA;AAKxB,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAS9D,QAAA,MAAM,IAAI,4MAAe,CAAA;AAazB,QAAA,MAAM,SAAS,GACb,YAAY,SAAS,WAAW,GAAG,WAAW,EAC9C,KAAK,SAAS,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,EAC/D,cAEC,eAAe,CAAC,YAAY,EAAE,KAAK,CAAC,4CAMtC,CAAA;AAED,QAAA,MAAM,YAAY;;;;;;;;;;;;CAsBjB,CAAA;AAWD,MAAM,MAAM,aAAa,GAAG,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG;IACjE,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,CAAA;AAED,QAAA,MAAM,QAAQ;eAHD,OAAO;wCAanB,CAAA;AAGD,MAAM,MAAM,cAAc,GAAG,KAAK,CAAC,wBAAwB,CACzD,OAAO,cAAc,CAAC,IAAI,CAC3B,GAAG;IACF,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CACxB,CAAA;AAED,QAAA,MAAM,SAAS;YAHL,KAAK,CAAC,SAAS;0CA2BvB,CAAA;AAGF,eAAO,MAAM,WAAW,GAAI,yBAAyB,oBAAoB,4CASxE,CAAA;AAED,QAAA,MAAM,WAAW,8JAmBf,CAAA;AAGF,QAAA,MAAM,eAAe,yHAcnB,CAAA;AAGF,QAAA,MAAM,WAAW,yHAqBf,CAAA;AAGF,OAAO,EACL,YAAY,EACZ,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,WAAW,EACX,eAAe,EACf,WAAW,EACX,SAAS,EACV,CAAA"}
@@ -1,3 +1,4 @@
1
+ 'use client';
1
2
  "use strict";
2
3
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
4
  if (k2 === undefined) k2 = k;
@@ -78,11 +79,11 @@ exports.FormItem = FormItem;
78
79
  FormItem.displayName = 'FormItem';
79
80
  const FormLabel = React.forwardRef(({ className, extra, children, ...props }, ref) => {
80
81
  const { required, error, formItemId } = useFormField();
81
- return ((0, jsx_runtime_1.jsxs)(label_1.Label, { ref: ref, className: (0, utils_1.cn)('flex justify-between text-sm font-semibold text-[#52525b]', error && 'text-destructive', className), htmlFor: formItemId, ...props, children: [(0, jsx_runtime_1.jsxs)("span", { children: [children, required ? ' *' : ''] }), extra] }));
82
+ return ((0, jsx_runtime_1.jsxs)(label_1.Label, { ref: ref, className: (0, utils_1.cn)('text-muted-foreground flex justify-between text-sm font-semibold', error && 'text-destructive', className), htmlFor: formItemId, ...props, children: [(0, jsx_runtime_1.jsxs)("span", { children: [children, required ? ' *' : ''] }), extra] }));
82
83
  });
83
84
  exports.FormLabel = FormLabel;
84
85
  FormLabel.displayName = 'FormLabel';
85
- const FormTooltip = ({ children, ...others }) => ((0, jsx_runtime_1.jsx)(tooltip_1.TooltipProvider, { ...others, children: (0, jsx_runtime_1.jsxs)(tooltip_1.Tooltip, { children: [(0, jsx_runtime_1.jsx)(tooltip_1.TooltipTrigger, { asChild: true, children: (0, jsx_runtime_1.jsx)(lucide_react_1.HelpCircle, { className: "ml-2 h-4 w-4 text-gray-400" }) }), (0, jsx_runtime_1.jsx)(tooltip_1.TooltipContent, { children: children })] }) }));
86
+ const FormTooltip = ({ children, ...others }) => ((0, jsx_runtime_1.jsx)(tooltip_1.TooltipProvider, { ...others, children: (0, jsx_runtime_1.jsxs)(tooltip_1.Tooltip, { children: [(0, jsx_runtime_1.jsx)(tooltip_1.TooltipTrigger, { asChild: true, children: (0, jsx_runtime_1.jsx)(lucide_react_1.HelpCircle, { className: "text-container-text ml-2 h-4 w-4" }) }), (0, jsx_runtime_1.jsx)(tooltip_1.TooltipContent, { children: children })] }) }));
86
87
  exports.FormTooltip = FormTooltip;
87
88
  const FormControl = React.forwardRef(({ ...props }, ref) => {
88
89
  const { error, formItemId, formDescriptionId, formMessageId } = useFormField();
@@ -0,0 +1,13 @@
1
+ import { type VariantProps } from 'class-variance-authority';
2
+ import { buttonVariants } from '../button';
3
+ export declare const iconButtonVariants: (props?: ({
4
+ rounded?: boolean | null | undefined;
5
+ size?: "default" | "small" | null | undefined;
6
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
7
+ export type IconButtonProps = React.ComponentProps<'button'> & VariantProps<typeof buttonVariants> & {
8
+ rounded?: boolean;
9
+ asChild?: boolean;
10
+ readOnly?: boolean;
11
+ };
12
+ export declare function IconButton({ className, variant, rounded, size, asChild, readOnly, onClick, ...props }: IconButtonProps): import("react/jsx-runtime").JSX.Element;
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/icon-button/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAG1C,eAAO,MAAM,kBAAkB;;;8EAiB9B,CAAA;AAED,MAAM,MAAM,eAAe,GAAG,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,GAC1D,YAAY,CAAC,OAAO,cAAc,CAAC,GAAG;IACpC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,CAAA;AAEH,wBAAgB,UAAU,CAAC,EACzB,SAAS,EACT,OAAO,EACP,OAAO,EACP,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,OAAO,EACP,GAAG,KAAK,EACT,EAAE,eAAe,2CAwBjB"}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.iconButtonVariants = void 0;
4
+ exports.IconButton = IconButton;
5
+ const jsx_runtime_1 = require("react/jsx-runtime");
6
+ const react_slot_1 = require("@radix-ui/react-slot");
7
+ const class_variance_authority_1 = require("class-variance-authority");
8
+ const button_1 = require("../button");
9
+ const utils_1 = require("../../../lib/utils");
10
+ exports.iconButtonVariants = (0, class_variance_authority_1.cva)('icon-button-base icon-button-read-only icon-button-disabled', {
11
+ variants: {
12
+ rounded: {
13
+ true: 'icon-button-rounded',
14
+ false: ''
15
+ },
16
+ size: {
17
+ default: '',
18
+ small: 'icon-button-small'
19
+ }
20
+ },
21
+ defaultVariants: {
22
+ size: 'default'
23
+ }
24
+ });
25
+ function IconButton({ className, variant, rounded, size, asChild, readOnly, onClick, ...props }) {
26
+ const Comp = asChild ? react_slot_1.Slot : 'button';
27
+ const handleClick = (e) => {
28
+ if (readOnly) {
29
+ e.preventDefault();
30
+ return;
31
+ }
32
+ onClick?.(e);
33
+ };
34
+ return ((0, jsx_runtime_1.jsx)(Comp, { className: (0, utils_1.cn)((0, button_1.buttonVariants)({ variant, size }), (0, exports.iconButtonVariants)({ rounded, size }), className), "data-read-only": readOnly, "data-slot": "button", ...props, onClick: handleClick }));
35
+ }
@@ -0,0 +1,33 @@
1
+ @theme inline {
2
+ --spacing-icon-button-p: calc(var(--spacing) * 2)
3
+ }
4
+
5
+ @layer components {
6
+ .icon-button-base {
7
+ @apply p-icon-button-p rounded-md size-10 [&>*]:size-6;
8
+ }
9
+
10
+ .icon-button-read-only {
11
+ @apply data-[read-only=true]:border data-[read-only=true]:border-button-border;
12
+ }
13
+
14
+ .icon-button-disabled {
15
+ @apply disabled:border disabled:border-button-border;
16
+ }
17
+
18
+ .icon-button-small {
19
+ @apply size-8 [&>*]:size-4;
20
+ }
21
+
22
+ .icon-button-rounded {
23
+ @apply rounded-full;
24
+ }
25
+
26
+ /* Overwrite for outline style */
27
+ .button-outline.icon-button-disabled {
28
+ @apply disabled:border-transparent
29
+ }
30
+ .button-outline.icon-button-read-only {
31
+ @apply data-[read-only=true]:border-transparent
32
+ }
33
+ }
@@ -0,0 +1,9 @@
1
+ import { VariantProps } from 'class-variance-authority';
2
+ export declare const inputAdornmentVariants: (props?: ({
3
+ position?: "start" | "end" | null | undefined;
4
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
5
+ export type InputAdornmentProps = React.ComponentProps<'span'> & VariantProps<typeof inputAdornmentVariants> & {
6
+ position?: 'start' | 'end';
7
+ };
8
+ export declare function InputAdornment({ className, position, ...props }: InputAdornmentProps): import("react/jsx-runtime").JSX.Element;
9
+ //# sourceMappingURL=adornment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adornment.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/input/adornment.tsx"],"names":[],"mappings":"AACA,OAAO,EAAO,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAE5D,eAAO,MAAM,sBAAsB;;8EAUjC,CAAA;AAEF,MAAM,MAAM,mBAAmB,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,GAC5D,YAAY,CAAC,OAAO,sBAAsB,CAAC,GAAG;IAC5C,QAAQ,CAAC,EAAE,OAAO,GAAG,KAAK,CAAA;CAC3B,CAAA;AAEH,wBAAgB,cAAc,CAAC,EAC7B,SAAS,EACT,QAAkB,EAClB,GAAG,KAAK,EACT,EAAE,mBAAmB,2CAQrB"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.inputAdornmentVariants = void 0;
4
+ exports.InputAdornment = InputAdornment;
5
+ const jsx_runtime_1 = require("react/jsx-runtime");
6
+ const utils_1 = require("../../../lib/utils");
7
+ const class_variance_authority_1 = require("class-variance-authority");
8
+ exports.inputAdornmentVariants = (0, class_variance_authority_1.cva)('input-adornment', {
9
+ variants: {
10
+ position: {
11
+ start: 'input-adornment-start',
12
+ end: 'input-adornment-end'
13
+ }
14
+ },
15
+ defaultVariants: {
16
+ position: 'start'
17
+ }
18
+ });
19
+ function InputAdornment({ className, position = 'start', ...props }) {
20
+ return ((0, jsx_runtime_1.jsx)("span", { "data-slot": "input-adornment", className: (0, utils_1.cn)((0, exports.inputAdornmentVariants)({ position }), className), ...props }));
21
+ }
@@ -1,4 +1,18 @@
1
1
  import * as React from 'react';
2
- declare function Input({ className, type, ...props }: React.ComponentProps<'input'>): import("react/jsx-runtime").JSX.Element;
3
- export { Input };
2
+ import { VariantProps } from 'class-variance-authority';
3
+ declare const inputVariants: (props?: ({
4
+ startAdornment?: boolean | null | undefined;
5
+ endAdornment?: boolean | null | undefined;
6
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
7
+ export type InputRef = {
8
+ focus: () => void;
9
+ blur: () => void;
10
+ };
11
+ export type InputProps = Omit<VariantProps<typeof inputVariants>, 'startAdornment' | 'endAdornment'> & React.ComponentProps<'input'> & {
12
+ startAdornment?: React.ReactNode;
13
+ endAdornment?: React.ReactNode;
14
+ ref?: React.Ref<InputRef>;
15
+ };
16
+ export declare function Input({ className, startAdornment, endAdornment, onFocus, onBlur, onClick, ref, ...props }: InputProps): import("react/jsx-runtime").JSX.Element;
17
+ export * from './adornment';
4
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/input/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAK9B,iBAAS,KAAK,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,2CAgB1E;AAED,OAAO,EAAE,KAAK,EAAE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/input/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,OAAO,EAAO,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAE5D,QAAA,MAAM,aAAa;;;8EAejB,CAAA;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,KAAK,EAAE,MAAM,IAAI,CAAA;IACjB,IAAI,EAAE,MAAM,IAAI,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,UAAU,GAAG,IAAI,CAC3B,YAAY,CAAC,OAAO,aAAa,CAAC,EAClC,gBAAgB,GAAG,cAAc,CAClC,GACC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG;IAC9B,cAAc,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAChC,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC9B,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;CAC1B,CAAA;AAEH,wBAAgB,KAAK,CAAC,EACpB,SAAS,EACT,cAAc,EACd,YAAY,EACZ,OAAO,EACP,MAAM,EACN,OAAO,EACP,GAAG,EACH,GAAG,KAAK,EACT,EAAE,UAAU,2CAuEZ;AAED,cAAc,aAAa,CAAA"}