@zentauri-ui/zentauri-components 0.0.93 → 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 (142) hide show
  1. package/README.md +77 -34
  2. package/dist/chunk-B23TPTVG.mjs +11 -0
  3. package/dist/chunk-B23TPTVG.mjs.map +1 -0
  4. package/dist/{chunk-BZSIXBA7.js → chunk-BITDSQMR.js} +8 -6
  5. package/dist/chunk-BITDSQMR.js.map +1 -0
  6. package/dist/{chunk-VJHD7QZH.mjs → chunk-BORK3BJO.mjs} +4 -7
  7. package/dist/chunk-BORK3BJO.mjs.map +1 -0
  8. package/dist/chunk-WZ2GOU2J.js +13 -0
  9. package/dist/chunk-WZ2GOU2J.js.map +1 -0
  10. package/dist/ui/accordion.d.mts +1 -1
  11. package/dist/ui/accordion.d.ts +1 -1
  12. package/dist/ui/accordion.js +80 -61
  13. package/dist/ui/accordion.js.map +1 -1
  14. package/dist/ui/accordion.mjs +46 -39
  15. package/dist/ui/accordion.mjs.map +1 -1
  16. package/dist/ui/alert.d.mts +1 -1
  17. package/dist/ui/alert.d.ts +1 -1
  18. package/dist/ui/alert.js +57 -46
  19. package/dist/ui/alert.js.map +1 -1
  20. package/dist/ui/alert.mjs +28 -30
  21. package/dist/ui/alert.mjs.map +1 -1
  22. package/dist/ui/avatar.d.mts +59 -0
  23. package/dist/ui/avatar.d.ts +59 -0
  24. package/dist/ui/avatar.js +221 -0
  25. package/dist/ui/avatar.js.map +1 -0
  26. package/dist/ui/avatar.mjs +211 -0
  27. package/dist/ui/avatar.mjs.map +1 -0
  28. package/dist/ui/badge.js +20 -25
  29. package/dist/ui/badge.js.map +1 -1
  30. package/dist/ui/badge.mjs +8 -20
  31. package/dist/ui/badge.mjs.map +1 -1
  32. package/dist/ui/breadcrumb.d.mts +71 -0
  33. package/dist/ui/breadcrumb.d.ts +71 -0
  34. package/dist/ui/breadcrumb.js +174 -0
  35. package/dist/ui/breadcrumb.js.map +1 -0
  36. package/dist/ui/breadcrumb.mjs +161 -0
  37. package/dist/ui/breadcrumb.mjs.map +1 -0
  38. package/dist/ui/buttons.js +19 -21
  39. package/dist/ui/buttons.js.map +1 -1
  40. package/dist/ui/buttons.mjs +8 -18
  41. package/dist/ui/buttons.mjs.map +1 -1
  42. package/dist/ui/card.js +59 -54
  43. package/dist/ui/card.js.map +1 -1
  44. package/dist/ui/card.mjs +29 -39
  45. package/dist/ui/card.mjs.map +1 -1
  46. package/dist/ui/divider.js +39 -35
  47. package/dist/ui/divider.js.map +1 -1
  48. package/dist/ui/divider.mjs +18 -23
  49. package/dist/ui/divider.mjs.map +1 -1
  50. package/dist/ui/drawer.d.mts +1 -1
  51. package/dist/ui/drawer.d.ts +1 -1
  52. package/dist/ui/drawer.js +106 -73
  53. package/dist/ui/drawer.js.map +1 -1
  54. package/dist/ui/drawer.mjs +64 -45
  55. package/dist/ui/drawer.mjs.map +1 -1
  56. package/dist/ui/dropdown.js +42 -48
  57. package/dist/ui/dropdown.js.map +1 -1
  58. package/dist/ui/dropdown.mjs +13 -29
  59. package/dist/ui/dropdown.mjs.map +1 -1
  60. package/dist/ui/empty-state.d.mts +3 -3
  61. package/dist/ui/empty-state.d.ts +3 -3
  62. package/dist/ui/empty-state.js +83 -59
  63. package/dist/ui/empty-state.js.map +1 -1
  64. package/dist/ui/empty-state.mjs +64 -52
  65. package/dist/ui/empty-state.mjs.map +1 -1
  66. package/dist/ui/file-upload.d.mts +32 -0
  67. package/dist/ui/file-upload.d.ts +32 -0
  68. package/dist/ui/file-upload.js +142 -0
  69. package/dist/ui/file-upload.js.map +1 -0
  70. package/dist/ui/file-upload.mjs +139 -0
  71. package/dist/ui/file-upload.mjs.map +1 -0
  72. package/dist/ui/inputs.js +26 -31
  73. package/dist/ui/inputs.js.map +1 -1
  74. package/dist/ui/inputs.mjs +8 -19
  75. package/dist/ui/inputs.mjs.map +1 -1
  76. package/dist/ui/modal.d.mts +1 -1
  77. package/dist/ui/modal.d.ts +1 -1
  78. package/dist/ui/modal.js +116 -78
  79. package/dist/ui/modal.js.map +1 -1
  80. package/dist/ui/modal.mjs +74 -51
  81. package/dist/ui/modal.mjs.map +1 -1
  82. package/dist/ui/pagination.js +47 -60
  83. package/dist/ui/pagination.js.map +1 -1
  84. package/dist/ui/pagination.mjs +10 -32
  85. package/dist/ui/pagination.mjs.map +1 -1
  86. package/dist/ui/progress.js +70 -58
  87. package/dist/ui/progress.js.map +1 -1
  88. package/dist/ui/progress.mjs +44 -43
  89. package/dist/ui/progress.mjs.map +1 -1
  90. package/dist/ui/select.js +73 -81
  91. package/dist/ui/select.js.map +1 -1
  92. package/dist/ui/select.mjs +38 -59
  93. package/dist/ui/select.mjs.map +1 -1
  94. package/dist/ui/skeleton.js +45 -50
  95. package/dist/ui/skeleton.js.map +1 -1
  96. package/dist/ui/skeleton.mjs +8 -25
  97. package/dist/ui/skeleton.mjs.map +1 -1
  98. package/dist/ui/slider.d.mts +83 -0
  99. package/dist/ui/slider.d.ts +83 -0
  100. package/dist/ui/slider.js +521 -0
  101. package/dist/ui/slider.js.map +1 -0
  102. package/dist/ui/slider.mjs +511 -0
  103. package/dist/ui/slider.mjs.map +1 -0
  104. package/dist/ui/spinner.js +37 -38
  105. package/dist/ui/spinner.js.map +1 -1
  106. package/dist/ui/spinner.mjs +11 -18
  107. package/dist/ui/spinner.mjs.map +1 -1
  108. package/dist/ui/stepper.d.mts +64 -0
  109. package/dist/ui/stepper.d.ts +64 -0
  110. package/dist/ui/stepper.js +207 -0
  111. package/dist/ui/stepper.js.map +1 -0
  112. package/dist/ui/stepper.mjs +198 -0
  113. package/dist/ui/stepper.mjs.map +1 -0
  114. package/dist/ui/table.js +77 -79
  115. package/dist/ui/table.js.map +1 -1
  116. package/dist/ui/table.mjs +43 -60
  117. package/dist/ui/table.mjs.map +1 -1
  118. package/dist/ui/tabs.js +75 -75
  119. package/dist/ui/tabs.js.map +1 -1
  120. package/dist/ui/tabs.mjs +48 -59
  121. package/dist/ui/tabs.mjs.map +1 -1
  122. package/dist/ui/toast.d.mts +2 -2
  123. package/dist/ui/toast.d.ts +2 -2
  124. package/dist/ui/toast.js +111 -88
  125. package/dist/ui/toast.js.map +1 -1
  126. package/dist/ui/toast.mjs +77 -69
  127. package/dist/ui/toast.mjs.map +1 -1
  128. package/dist/ui/toggle.js +26 -28
  129. package/dist/ui/toggle.js.map +1 -1
  130. package/dist/ui/toggle.mjs +12 -21
  131. package/dist/ui/toggle.mjs.map +1 -1
  132. package/dist/ui/tooltip.js +29 -36
  133. package/dist/ui/tooltip.js.map +1 -1
  134. package/dist/ui/tooltip.mjs +8 -23
  135. package/dist/ui/tooltip.mjs.map +1 -1
  136. package/package.json +5 -3
  137. package/dist/chunk-BZSIXBA7.js.map +0 -1
  138. package/dist/chunk-E5UX537J.js +0 -11
  139. package/dist/chunk-E5UX537J.js.map +0 -1
  140. package/dist/chunk-MEWYFWBX.mjs +0 -14
  141. package/dist/chunk-MEWYFWBX.mjs.map +0 -1
  142. package/dist/chunk-VJHD7QZH.mjs.map +0 -1
@@ -0,0 +1,142 @@
1
+ "use client";
2
+ 'use strict';
3
+
4
+ var chunkWZ2GOU2J_js = require('../chunk-WZ2GOU2J.js');
5
+ var react = require('react');
6
+ var classVarianceAuthority = require('class-variance-authority');
7
+ var jsxRuntime = require('react/jsx-runtime');
8
+
9
+ var fileUploadVariants = classVarianceAuthority.cva(
10
+ "relative flex cursor-pointer flex-col items-center justify-center gap-2 rounded-2xl border border-dashed px-6 py-10 text-center text-sm transition-colors outline-none focus-visible:ring-2 focus-visible:ring-violet-400/60 focus-visible:ring-offset-2 focus-visible:ring-offset-slate-950",
11
+ {
12
+ variants: {
13
+ appearance: {
14
+ idle: "border-white/15 bg-white/5 text-slate-300 hover:border-white/25 hover:bg-white/[0.07]",
15
+ active: "border-violet-400/70 bg-violet-500/10 text-white",
16
+ disabled: "cursor-not-allowed opacity-50",
17
+ error: "border-red-400/70 bg-red-500/10 text-red-400 hover:border-red-400/80 hover:bg-red-500/15",
18
+ success: "border-green-400/70 bg-green-500/10 text-green-400 hover:border-green-400/80 hover:bg-green-500/15",
19
+ warning: "border-yellow-400/70 bg-yellow-500/10 text-yellow-400 hover:border-yellow-400/80 hover:bg-yellow-500/15",
20
+ info: "border-blue-400/70 bg-blue-500/10 text-blue-400 hover:border-blue-400/80 hover:bg-blue-500/15",
21
+ neutral: "border-gray-400/70 bg-gray-500/10 text-gray-400 hover:border-gray-400/80 hover:bg-gray-500/15",
22
+ purple: "border-purple-400/70 bg-purple-500/10 text-purple-400 hover:border-purple-400/80 hover:bg-purple-500/15",
23
+ indigo: "border-indigo-400/70 bg-indigo-500/10 text-indigo-400 hover:border-indigo-400/80 hover:bg-indigo-500/15",
24
+ emerald: "border-emerald-400/70 bg-emerald-500/10 text-emerald-400 hover:border-emerald-400/80 hover:bg-emerald-500/15",
25
+ amber: "border-amber-400/70 bg-amber-500/10 text-amber-400 hover:border-amber-400/80 hover:bg-amber-500/15",
26
+ pink: "border-pink-400/70 bg-pink-500/10 text-pink-400 hover:border-pink-400/80 hover:bg-pink-500/15",
27
+ orange: "border-orange-400/70 bg-orange-500/10 text-orange-400 hover:border-orange-400/80 hover:bg-orange-500/15",
28
+ teal: "border-teal-400/70 bg-teal-500/10 text-teal-400 hover:border-teal-400/80 hover:bg-teal-500/15"
29
+ }
30
+ },
31
+ defaultVariants: {
32
+ appearance: "idle"
33
+ }
34
+ }
35
+ );
36
+ function FileUpload({
37
+ className,
38
+ onFiles,
39
+ accept,
40
+ multiple = false,
41
+ disabled = false,
42
+ name,
43
+ children,
44
+ onChange,
45
+ ref,
46
+ appearance = "idle",
47
+ ...rest
48
+ }) {
49
+ const inputId = react.useId();
50
+ const [dragOver, setDragOver] = react.useState(false);
51
+ const emitFiles = react.useCallback(
52
+ (fileList) => {
53
+ if (!fileList?.length) {
54
+ return;
55
+ }
56
+ onFiles?.(Array.from(fileList));
57
+ },
58
+ [onFiles]
59
+ );
60
+ const handleChange = react.useCallback(
61
+ (event) => {
62
+ onChange?.(event);
63
+ emitFiles(event.target.files);
64
+ event.target.value = "";
65
+ },
66
+ [emitFiles, onChange]
67
+ );
68
+ const handleDrop = react.useCallback(
69
+ (event) => {
70
+ event.preventDefault();
71
+ setDragOver(false);
72
+ if (disabled) {
73
+ return;
74
+ }
75
+ emitFiles(event.dataTransfer.files);
76
+ },
77
+ [disabled, emitFiles]
78
+ );
79
+ return /* @__PURE__ */ jsxRuntime.jsxs(
80
+ "div",
81
+ {
82
+ ref,
83
+ "data-slot": "file-upload",
84
+ className: chunkWZ2GOU2J_js.cn(fileUploadVariants({ appearance }), className),
85
+ ...rest,
86
+ children: [
87
+ /* @__PURE__ */ jsxRuntime.jsx(
88
+ "input",
89
+ {
90
+ id: inputId,
91
+ name,
92
+ type: "file",
93
+ className: "sr-only",
94
+ accept,
95
+ multiple,
96
+ disabled,
97
+ onChange: handleChange,
98
+ "aria-hidden": true,
99
+ tabIndex: -1
100
+ }
101
+ ),
102
+ /* @__PURE__ */ jsxRuntime.jsxs(
103
+ "label",
104
+ {
105
+ htmlFor: inputId,
106
+ className: chunkWZ2GOU2J_js.cn(
107
+ "flex w-full cursor-pointer flex-col items-center gap-2",
108
+ disabled && "cursor-not-allowed"
109
+ ),
110
+ onDragEnter: (e) => {
111
+ e.preventDefault();
112
+ if (!disabled) {
113
+ setDragOver(true);
114
+ }
115
+ },
116
+ onDragOver: (e) => {
117
+ e.preventDefault();
118
+ if (!disabled) {
119
+ setDragOver(true);
120
+ }
121
+ },
122
+ onDragLeave: () => setDragOver(false),
123
+ onDrop: handleDrop,
124
+ children: [
125
+ children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
126
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-base font-semibold text-slate-100", children: "Drop files here" }),
127
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs text-slate-400", children: "or click to browse from your device" })
128
+ ] }),
129
+ dragOver && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs text-slate-400", children: "Drop files here" })
130
+ ]
131
+ }
132
+ )
133
+ ]
134
+ }
135
+ );
136
+ }
137
+ FileUpload.displayName = "FileUpload";
138
+
139
+ exports.FileUpload = FileUpload;
140
+ exports.fileUploadVariants = fileUploadVariants;
141
+ //# sourceMappingURL=file-upload.js.map
142
+ //# sourceMappingURL=file-upload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/ui/file-upload/variants.ts","../../src/ui/file-upload/file-upload.tsx"],"names":["cva","useId","useState","useCallback","jsxs","cn","jsx","Fragment"],"mappings":"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","file":"file-upload.js","sourcesContent":["import { cva } from \"class-variance-authority\";\n\nexport const fileUploadVariants = cva(\n \"relative flex cursor-pointer flex-col items-center justify-center gap-2 rounded-2xl border border-dashed px-6 py-10 text-center text-sm transition-colors outline-none focus-visible:ring-2 focus-visible:ring-violet-400/60 focus-visible:ring-offset-2 focus-visible:ring-offset-slate-950\",\n {\n variants: {\n appearance: {\n idle: \"border-white/15 bg-white/5 text-slate-300 hover:border-white/25 hover:bg-white/[0.07]\",\n active: \"border-violet-400/70 bg-violet-500/10 text-white\",\n disabled: \"cursor-not-allowed opacity-50\",\n error: \"border-red-400/70 bg-red-500/10 text-red-400 hover:border-red-400/80 hover:bg-red-500/15\",\n success: \"border-green-400/70 bg-green-500/10 text-green-400 hover:border-green-400/80 hover:bg-green-500/15\",\n warning: \"border-yellow-400/70 bg-yellow-500/10 text-yellow-400 hover:border-yellow-400/80 hover:bg-yellow-500/15\",\n info: \"border-blue-400/70 bg-blue-500/10 text-blue-400 hover:border-blue-400/80 hover:bg-blue-500/15\",\n neutral: \"border-gray-400/70 bg-gray-500/10 text-gray-400 hover:border-gray-400/80 hover:bg-gray-500/15\",\n purple: \"border-purple-400/70 bg-purple-500/10 text-purple-400 hover:border-purple-400/80 hover:bg-purple-500/15\",\n indigo: \"border-indigo-400/70 bg-indigo-500/10 text-indigo-400 hover:border-indigo-400/80 hover:bg-indigo-500/15\",\n emerald: \"border-emerald-400/70 bg-emerald-500/10 text-emerald-400 hover:border-emerald-400/80 hover:bg-emerald-500/15\",\n amber: \"border-amber-400/70 bg-amber-500/10 text-amber-400 hover:border-amber-400/80 hover:bg-amber-500/15\",\n pink: \"border-pink-400/70 bg-pink-500/10 text-pink-400 hover:border-pink-400/80 hover:bg-pink-500/15\",\n orange: \"border-orange-400/70 bg-orange-500/10 text-orange-400 hover:border-orange-400/80 hover:bg-orange-500/15\",\n teal: \"border-teal-400/70 bg-teal-500/10 text-teal-400 hover:border-teal-400/80 hover:bg-teal-500/15\",\n },\n },\n defaultVariants: {\n appearance: \"idle\",\n },\n },\n);\n","\"use client\";\n\nimport { useCallback, useId, useState } from \"react\";\n\nimport { cn } from \"../../lib/utils\";\n\nimport type { FileUploadProps } from \"./types\";\nimport { fileUploadVariants } from \"./variants\";\n\nexport function FileUpload({\n className,\n onFiles,\n accept,\n multiple = false,\n disabled = false,\n name,\n children,\n onChange,\n ref,\n appearance = \"idle\",\n ...rest\n}: FileUploadProps & { ref?: React.Ref<HTMLDivElement> }) {\n const inputId = useId();\n const [dragOver, setDragOver] = useState(false);\n\n const emitFiles = useCallback(\n (fileList: FileList | null) => {\n if (!fileList?.length) {\n return;\n }\n onFiles?.(Array.from(fileList));\n },\n [onFiles],\n );\n\n const handleChange = useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n onChange?.(event);\n emitFiles(event.target.files);\n event.target.value = \"\";\n },\n [emitFiles, onChange],\n );\n\n const handleDrop = useCallback(\n (event: React.DragEvent<HTMLLabelElement>) => {\n event.preventDefault();\n setDragOver(false);\n if (disabled) {\n return;\n }\n emitFiles(event.dataTransfer.files);\n },\n [disabled, emitFiles],\n );\n\n return (\n <div\n ref={ref}\n data-slot=\"file-upload\"\n className={cn(fileUploadVariants({ appearance }), className)}\n {...rest}\n >\n <input\n id={inputId}\n name={name}\n type=\"file\"\n className=\"sr-only\"\n accept={accept}\n multiple={multiple}\n disabled={disabled}\n onChange={handleChange}\n aria-hidden\n tabIndex={-1}\n />\n <label\n htmlFor={inputId}\n className={cn(\n \"flex w-full cursor-pointer flex-col items-center gap-2\",\n disabled && \"cursor-not-allowed\",\n )}\n onDragEnter={(e) => {\n e.preventDefault();\n if (!disabled) {\n setDragOver(true);\n }\n }}\n onDragOver={(e) => {\n e.preventDefault();\n if (!disabled) {\n setDragOver(true);\n }\n }}\n onDragLeave={() => setDragOver(false)}\n onDrop={handleDrop}\n >\n {children ?? (\n <>\n <span className=\"text-base font-semibold text-slate-100\">\n Drop files here\n </span>\n <span className=\"text-xs text-slate-400\">\n or click to browse from your device\n </span>\n </>\n )}\n {\n dragOver && (\n <span className=\"text-xs text-slate-400\">\n Drop files here\n </span>\n )\n }\n </label>\n </div>\n );\n}\n\nFileUpload.displayName = \"FileUpload\";\n"]}
@@ -0,0 +1,139 @@
1
+ "use client";
2
+ import { cn } from '../chunk-B23TPTVG.mjs';
3
+ import { useId, useState, useCallback } from 'react';
4
+ import { cva } from 'class-variance-authority';
5
+ import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
6
+
7
+ var fileUploadVariants = cva(
8
+ "relative flex cursor-pointer flex-col items-center justify-center gap-2 rounded-2xl border border-dashed px-6 py-10 text-center text-sm transition-colors outline-none focus-visible:ring-2 focus-visible:ring-violet-400/60 focus-visible:ring-offset-2 focus-visible:ring-offset-slate-950",
9
+ {
10
+ variants: {
11
+ appearance: {
12
+ idle: "border-white/15 bg-white/5 text-slate-300 hover:border-white/25 hover:bg-white/[0.07]",
13
+ active: "border-violet-400/70 bg-violet-500/10 text-white",
14
+ disabled: "cursor-not-allowed opacity-50",
15
+ error: "border-red-400/70 bg-red-500/10 text-red-400 hover:border-red-400/80 hover:bg-red-500/15",
16
+ success: "border-green-400/70 bg-green-500/10 text-green-400 hover:border-green-400/80 hover:bg-green-500/15",
17
+ warning: "border-yellow-400/70 bg-yellow-500/10 text-yellow-400 hover:border-yellow-400/80 hover:bg-yellow-500/15",
18
+ info: "border-blue-400/70 bg-blue-500/10 text-blue-400 hover:border-blue-400/80 hover:bg-blue-500/15",
19
+ neutral: "border-gray-400/70 bg-gray-500/10 text-gray-400 hover:border-gray-400/80 hover:bg-gray-500/15",
20
+ purple: "border-purple-400/70 bg-purple-500/10 text-purple-400 hover:border-purple-400/80 hover:bg-purple-500/15",
21
+ indigo: "border-indigo-400/70 bg-indigo-500/10 text-indigo-400 hover:border-indigo-400/80 hover:bg-indigo-500/15",
22
+ emerald: "border-emerald-400/70 bg-emerald-500/10 text-emerald-400 hover:border-emerald-400/80 hover:bg-emerald-500/15",
23
+ amber: "border-amber-400/70 bg-amber-500/10 text-amber-400 hover:border-amber-400/80 hover:bg-amber-500/15",
24
+ pink: "border-pink-400/70 bg-pink-500/10 text-pink-400 hover:border-pink-400/80 hover:bg-pink-500/15",
25
+ orange: "border-orange-400/70 bg-orange-500/10 text-orange-400 hover:border-orange-400/80 hover:bg-orange-500/15",
26
+ teal: "border-teal-400/70 bg-teal-500/10 text-teal-400 hover:border-teal-400/80 hover:bg-teal-500/15"
27
+ }
28
+ },
29
+ defaultVariants: {
30
+ appearance: "idle"
31
+ }
32
+ }
33
+ );
34
+ function FileUpload({
35
+ className,
36
+ onFiles,
37
+ accept,
38
+ multiple = false,
39
+ disabled = false,
40
+ name,
41
+ children,
42
+ onChange,
43
+ ref,
44
+ appearance = "idle",
45
+ ...rest
46
+ }) {
47
+ const inputId = useId();
48
+ const [dragOver, setDragOver] = useState(false);
49
+ const emitFiles = useCallback(
50
+ (fileList) => {
51
+ if (!fileList?.length) {
52
+ return;
53
+ }
54
+ onFiles?.(Array.from(fileList));
55
+ },
56
+ [onFiles]
57
+ );
58
+ const handleChange = useCallback(
59
+ (event) => {
60
+ onChange?.(event);
61
+ emitFiles(event.target.files);
62
+ event.target.value = "";
63
+ },
64
+ [emitFiles, onChange]
65
+ );
66
+ const handleDrop = useCallback(
67
+ (event) => {
68
+ event.preventDefault();
69
+ setDragOver(false);
70
+ if (disabled) {
71
+ return;
72
+ }
73
+ emitFiles(event.dataTransfer.files);
74
+ },
75
+ [disabled, emitFiles]
76
+ );
77
+ return /* @__PURE__ */ jsxs(
78
+ "div",
79
+ {
80
+ ref,
81
+ "data-slot": "file-upload",
82
+ className: cn(fileUploadVariants({ appearance }), className),
83
+ ...rest,
84
+ children: [
85
+ /* @__PURE__ */ jsx(
86
+ "input",
87
+ {
88
+ id: inputId,
89
+ name,
90
+ type: "file",
91
+ className: "sr-only",
92
+ accept,
93
+ multiple,
94
+ disabled,
95
+ onChange: handleChange,
96
+ "aria-hidden": true,
97
+ tabIndex: -1
98
+ }
99
+ ),
100
+ /* @__PURE__ */ jsxs(
101
+ "label",
102
+ {
103
+ htmlFor: inputId,
104
+ className: cn(
105
+ "flex w-full cursor-pointer flex-col items-center gap-2",
106
+ disabled && "cursor-not-allowed"
107
+ ),
108
+ onDragEnter: (e) => {
109
+ e.preventDefault();
110
+ if (!disabled) {
111
+ setDragOver(true);
112
+ }
113
+ },
114
+ onDragOver: (e) => {
115
+ e.preventDefault();
116
+ if (!disabled) {
117
+ setDragOver(true);
118
+ }
119
+ },
120
+ onDragLeave: () => setDragOver(false),
121
+ onDrop: handleDrop,
122
+ children: [
123
+ children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
124
+ /* @__PURE__ */ jsx("span", { className: "text-base font-semibold text-slate-100", children: "Drop files here" }),
125
+ /* @__PURE__ */ jsx("span", { className: "text-xs text-slate-400", children: "or click to browse from your device" })
126
+ ] }),
127
+ dragOver && /* @__PURE__ */ jsx("span", { className: "text-xs text-slate-400", children: "Drop files here" })
128
+ ]
129
+ }
130
+ )
131
+ ]
132
+ }
133
+ );
134
+ }
135
+ FileUpload.displayName = "FileUpload";
136
+
137
+ export { FileUpload, fileUploadVariants };
138
+ //# sourceMappingURL=file-upload.mjs.map
139
+ //# sourceMappingURL=file-upload.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/ui/file-upload/variants.ts","../../src/ui/file-upload/file-upload.tsx"],"names":[],"mappings":"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","file":"file-upload.mjs","sourcesContent":["import { cva } from \"class-variance-authority\";\n\nexport const fileUploadVariants = cva(\n \"relative flex cursor-pointer flex-col items-center justify-center gap-2 rounded-2xl border border-dashed px-6 py-10 text-center text-sm transition-colors outline-none focus-visible:ring-2 focus-visible:ring-violet-400/60 focus-visible:ring-offset-2 focus-visible:ring-offset-slate-950\",\n {\n variants: {\n appearance: {\n idle: \"border-white/15 bg-white/5 text-slate-300 hover:border-white/25 hover:bg-white/[0.07]\",\n active: \"border-violet-400/70 bg-violet-500/10 text-white\",\n disabled: \"cursor-not-allowed opacity-50\",\n error: \"border-red-400/70 bg-red-500/10 text-red-400 hover:border-red-400/80 hover:bg-red-500/15\",\n success: \"border-green-400/70 bg-green-500/10 text-green-400 hover:border-green-400/80 hover:bg-green-500/15\",\n warning: \"border-yellow-400/70 bg-yellow-500/10 text-yellow-400 hover:border-yellow-400/80 hover:bg-yellow-500/15\",\n info: \"border-blue-400/70 bg-blue-500/10 text-blue-400 hover:border-blue-400/80 hover:bg-blue-500/15\",\n neutral: \"border-gray-400/70 bg-gray-500/10 text-gray-400 hover:border-gray-400/80 hover:bg-gray-500/15\",\n purple: \"border-purple-400/70 bg-purple-500/10 text-purple-400 hover:border-purple-400/80 hover:bg-purple-500/15\",\n indigo: \"border-indigo-400/70 bg-indigo-500/10 text-indigo-400 hover:border-indigo-400/80 hover:bg-indigo-500/15\",\n emerald: \"border-emerald-400/70 bg-emerald-500/10 text-emerald-400 hover:border-emerald-400/80 hover:bg-emerald-500/15\",\n amber: \"border-amber-400/70 bg-amber-500/10 text-amber-400 hover:border-amber-400/80 hover:bg-amber-500/15\",\n pink: \"border-pink-400/70 bg-pink-500/10 text-pink-400 hover:border-pink-400/80 hover:bg-pink-500/15\",\n orange: \"border-orange-400/70 bg-orange-500/10 text-orange-400 hover:border-orange-400/80 hover:bg-orange-500/15\",\n teal: \"border-teal-400/70 bg-teal-500/10 text-teal-400 hover:border-teal-400/80 hover:bg-teal-500/15\",\n },\n },\n defaultVariants: {\n appearance: \"idle\",\n },\n },\n);\n","\"use client\";\n\nimport { useCallback, useId, useState } from \"react\";\n\nimport { cn } from \"../../lib/utils\";\n\nimport type { FileUploadProps } from \"./types\";\nimport { fileUploadVariants } from \"./variants\";\n\nexport function FileUpload({\n className,\n onFiles,\n accept,\n multiple = false,\n disabled = false,\n name,\n children,\n onChange,\n ref,\n appearance = \"idle\",\n ...rest\n}: FileUploadProps & { ref?: React.Ref<HTMLDivElement> }) {\n const inputId = useId();\n const [dragOver, setDragOver] = useState(false);\n\n const emitFiles = useCallback(\n (fileList: FileList | null) => {\n if (!fileList?.length) {\n return;\n }\n onFiles?.(Array.from(fileList));\n },\n [onFiles],\n );\n\n const handleChange = useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n onChange?.(event);\n emitFiles(event.target.files);\n event.target.value = \"\";\n },\n [emitFiles, onChange],\n );\n\n const handleDrop = useCallback(\n (event: React.DragEvent<HTMLLabelElement>) => {\n event.preventDefault();\n setDragOver(false);\n if (disabled) {\n return;\n }\n emitFiles(event.dataTransfer.files);\n },\n [disabled, emitFiles],\n );\n\n return (\n <div\n ref={ref}\n data-slot=\"file-upload\"\n className={cn(fileUploadVariants({ appearance }), className)}\n {...rest}\n >\n <input\n id={inputId}\n name={name}\n type=\"file\"\n className=\"sr-only\"\n accept={accept}\n multiple={multiple}\n disabled={disabled}\n onChange={handleChange}\n aria-hidden\n tabIndex={-1}\n />\n <label\n htmlFor={inputId}\n className={cn(\n \"flex w-full cursor-pointer flex-col items-center gap-2\",\n disabled && \"cursor-not-allowed\",\n )}\n onDragEnter={(e) => {\n e.preventDefault();\n if (!disabled) {\n setDragOver(true);\n }\n }}\n onDragOver={(e) => {\n e.preventDefault();\n if (!disabled) {\n setDragOver(true);\n }\n }}\n onDragLeave={() => setDragOver(false)}\n onDrop={handleDrop}\n >\n {children ?? (\n <>\n <span className=\"text-base font-semibold text-slate-100\">\n Drop files here\n </span>\n <span className=\"text-xs text-slate-400\">\n or click to browse from your device\n </span>\n </>\n )}\n {\n dragOver && (\n <span className=\"text-xs text-slate-400\">\n Drop files here\n </span>\n )\n }\n </label>\n </div>\n );\n}\n\nFileUpload.displayName = \"FileUpload\";\n"]}
package/dist/ui/inputs.js CHANGED
@@ -1,6 +1,11 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }
1
+ "use client";
2
+ 'use strict';
2
3
 
3
- var _chunkE5UX537Jjs = require('../chunk-E5UX537J.js');
4
+ var chunkWZ2GOU2J_js = require('../chunk-WZ2GOU2J.js');
5
+ var react = require('react');
6
+ var framerMotion = require('framer-motion');
7
+ var classVarianceAuthority = require('class-variance-authority');
8
+ var jsxRuntime = require('react/jsx-runtime');
4
9
 
5
10
  // src/ui/inputs/animations.ts
6
11
  var inputAnimationPresets = {
@@ -35,14 +40,7 @@ var inputAnimationPresets = {
35
40
  transition: { type: "spring", bounce: 0.35, duration: 0.4 }
36
41
  }
37
42
  };
38
-
39
- // src/ui/inputs/input.tsx
40
- var _react = require('react');
41
- var _framermotion = require('framer-motion');
42
-
43
- // src/ui/inputs/variants.ts
44
- var _classvarianceauthority = require('class-variance-authority');
45
- var inputVariants = _classvarianceauthority.cva.call(void 0,
43
+ var inputVariants = classVarianceAuthority.cva(
46
44
  [
47
45
  "w-full min-w-0 rounded-xl border bg-white/5 text-slate-50 shadow-[0_1px_2px_rgba(15,23,42,0.12)]",
48
46
  "ring-offset-slate-950 transition-colors",
@@ -321,11 +319,8 @@ var inputVariants = _classvarianceauthority.cva.call(void 0,
321
319
  ]
322
320
  }
323
321
  );
324
-
325
- // src/ui/inputs/input.tsx
326
- var _jsxruntime = require('react/jsx-runtime');
327
322
  var Input = (props) => {
328
- const generatedId = _react.useId.call(void 0, );
323
+ const generatedId = react.useId();
329
324
  if (props.as === "textarea") {
330
325
  const {
331
326
  className: className2,
@@ -340,18 +335,18 @@ var Input = (props) => {
340
335
  as: as2,
341
336
  ...rest2
342
337
  } = props;
343
- const controlId2 = _nullishCoalesce(id2, () => ( generatedId));
338
+ const controlId2 = id2 ?? generatedId;
344
339
  const errorId2 = `${controlId2}-error`;
345
340
  const motionProps2 = inputAnimationPresets[animation2];
346
341
  const ariaInvalid2 = ariaInvalidProp2 !== void 0 ? ariaInvalidProp2 : appearance2 === "error" ? true : void 0;
347
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
348
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
349
- _framermotion.motion.textarea,
342
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
343
+ /* @__PURE__ */ jsxRuntime.jsx(
344
+ framerMotion.motion.textarea,
350
345
  {
351
346
  ref: ref2,
352
347
  id: controlId2,
353
348
  "data-slot": "input",
354
- className: _chunkE5UX537Jjs.cn.call(void 0,
349
+ className: chunkWZ2GOU2J_js.cn(
355
350
  inputVariants({ appearance: appearance2, size: size2, ring: ring2, as: as2 }),
356
351
  className2
357
352
  ),
@@ -362,7 +357,7 @@ var Input = (props) => {
362
357
  ...rest2
363
358
  }
364
359
  ),
365
- errorMessage2 && appearance2 === "error" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
360
+ errorMessage2 && appearance2 === "error" && /* @__PURE__ */ jsxRuntime.jsx(
366
361
  "p",
367
362
  {
368
363
  id: errorId2,
@@ -385,19 +380,19 @@ var Input = (props) => {
385
380
  as,
386
381
  ...rest
387
382
  } = props;
388
- const controlId = _nullishCoalesce(id, () => ( generatedId));
383
+ const controlId = id ?? generatedId;
389
384
  const errorId = `${controlId}-error`;
390
385
  const motionProps = inputAnimationPresets[animation];
391
386
  const ariaInvalid = ariaInvalidProp !== void 0 ? ariaInvalidProp : appearance === "error" ? true : void 0;
392
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
393
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
394
- _framermotion.motion.input,
387
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
388
+ /* @__PURE__ */ jsxRuntime.jsx(
389
+ framerMotion.motion.input,
395
390
  {
396
391
  ref,
397
392
  id: controlId,
398
393
  "data-slot": "input",
399
- className: _chunkE5UX537Jjs.cn.call(void 0,
400
- inputVariants({ appearance, size, ring, as: _nullishCoalesce(as, () => ( "input")) }),
394
+ className: chunkWZ2GOU2J_js.cn(
395
+ inputVariants({ appearance, size, ring, as: as ?? "input" }),
401
396
  className
402
397
  ),
403
398
  initial: false,
@@ -407,7 +402,7 @@ var Input = (props) => {
407
402
  ...rest
408
403
  }
409
404
  ),
410
- errorMessage && appearance === "error" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
405
+ errorMessage && appearance === "error" && /* @__PURE__ */ jsxRuntime.jsx(
411
406
  "p",
412
407
  {
413
408
  id: errorId,
@@ -419,8 +414,8 @@ var Input = (props) => {
419
414
  };
420
415
  Input.displayName = "Input";
421
416
 
422
-
423
-
424
-
425
- exports.Input = Input; exports.inputAnimationPresets = inputAnimationPresets; exports.inputVariants = inputVariants;
417
+ exports.Input = Input;
418
+ exports.inputAnimationPresets = inputAnimationPresets;
419
+ exports.inputVariants = inputVariants;
420
+ //# sourceMappingURL=inputs.js.map
426
421
  //# sourceMappingURL=inputs.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/shubham/Desktop/Repos/NEXT%20JS/zentauri-ui/packages/components/dist/ui/inputs.js"],"names":[],"mappings":"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AA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,QAAA;AACA,MAAA;AACA,MAAA;AACA,QAAA;AACA,QAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,QAAA;AACA,MAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,oBAAA;AACA,MAAA;AACA,MAAA;AACA,QAAA;AACA,QAAA;AACA,QAAA;AACA,QAAA;AACA,UAAA;AACA,UAAA;AACA,QAAA;AACA,QAAA;AACA,QAAA;AACA,QAAA;AACA,QAAA;AACA,QAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,QAAA;AACA,QAAA;AACA,QAAA;AACA,MAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"/Users/shubham/Desktop/Repos/NEXT JS/zentauri-ui/packages/components/dist/ui/inputs.js","sourcesContent":[null]}
1
+ {"version":3,"sources":["../../src/ui/inputs/animations.ts","../../src/ui/inputs/variants.ts","../../src/ui/inputs/input.tsx"],"names":["cva","useId","className","appearance","size","animation","ring","ref","ariaInvalidProp","errorMessage","id","as","rest","controlId","errorId","motionProps","ariaInvalid","jsxs","Fragment","jsx","motion","cn"],"mappings":"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","file":"inputs.js","sourcesContent":["import type { InputAnimationPresets } from \"./types\";\n\nexport const inputAnimationPresets: InputAnimationPresets = {\n none: {},\n lift: {\n whileHover: { y: -1 },\n whileFocus: { y: -1 },\n transition: { type: \"spring\", stiffness: 480, damping: 32 },\n },\n press: {\n whileTap: { scale: 0.99 },\n transition: { type: \"spring\", stiffness: 520, damping: 30 },\n },\n glow: {\n whileFocus: {\n boxShadow:\n \"0 0 0 1px rgba(255,255,255,0.2), 0 12px 28px rgba(15,23,42,0.35)\",\n },\n whileHover: {\n boxShadow:\n \"0 0 0 1px rgba(255,255,255,0.12), 0 8px 20px rgba(15,23,42,0.25)\",\n },\n transition: { duration: 0.2, ease: \"easeOut\" },\n },\n tilt: {\n whileHover: { scale: 1.005 },\n whileFocus: { scale: 1.008 },\n whileTap: { scale: 0.995 },\n transition: { type: \"spring\", stiffness: 380, damping: 24 },\n },\n bounce: {\n whileFocus: { y: -2, scale: 1.01 },\n whileHover: { y: -1, scale: 1.005 },\n transition: { type: \"spring\", bounce: 0.35, duration: 0.4 },\n },\n};\n","import { cva } from \"class-variance-authority\";\n\nexport const inputVariants = cva(\n [\n \"w-full min-w-0 rounded-xl border bg-white/5 text-slate-50 shadow-[0_1px_2px_rgba(15,23,42,0.12)]\",\n \"ring-offset-slate-950 transition-colors\",\n \"placeholder:text-slate-500\",\n \"focus-visible:outline-none\",\n \"disabled:cursor-not-allowed disabled:opacity-50\",\n \"read-only:cursor-default read-only:bg-white/[0.03]\",\n \"file:h-8\",\n ],\n {\n variants: {\n as: {\n input: \"\",\n textarea: \"h-auto! resize-y py-2 align-top\",\n file: [\n // Reset native padding so we control it fully\n \"p-0! cursor-pointer\",\n // File-selector button base styles\n \"file:cursor-pointer file:border-0 file:border-r file:border-white/10\",\n \"file:bg-white/10 file:text-slate-200 file:font-medium\",\n \"file:transition-colors file:duration-200\",\n \"hover:file:bg-white/15\",\n // Content area padding\n \"[&:not(:disabled)]:file:hover:text-white\",\n \"disabled:file:cursor-not-allowed\",\n ],\n checkbox: [\n \"shrink-0 cursor-pointer appearance-none relative\",\n \"min-h-0! shadow-none outline-none\",\n \"border-2 border-white/30 [&:not(:checked)]:bg-transparent\",\n \"transition-[color,box-shadow,border-color,background-color]\",\n \"disabled:cursor-not-allowed disabled:opacity-50\",\n \"read-only:cursor-default\",\n \"checked:after:absolute checked:after:content-[''] checked:after:size-3 checked:after:top-1/2 checked:after:left-1/2 checked:after:-translate-x-1/2 checked:after:-translate-y-1/2 checked:after:rounded-full checked:after:bg-current\",\n ],\n radio: [\n \"shrink-0 cursor-pointer appearance-none rounded-full\",\n \"min-h-0! shadow-none outline-none\",\n \"border-2 border-white/30 bg-transparent! read-only:bg-transparent!\",\n \"ring-2 ring-white/20 ring-offset-2 ring-offset-slate-950\",\n \"transition-[color,box-shadow,background-color,border-color,box-shadow]\",\n \"disabled:cursor-not-allowed disabled:opacity-50\",\n \"read-only:cursor-default\",\n ],\n },\n appearance: {\n default: \"border-white/10 focus-visible:border-white/20\",\n warning:\n \"border-yellow-500/80 text-yellow-50 placeholder:text-yellow-300/70 focus-visible:border-yellow-400 focus-visible:ring-yellow-400/80\",\n error:\n \"border-rose-500/80 text-rose-50 placeholder:text-rose-300/70 focus-visible:border-rose-400 focus-visible:ring-rose-400/80\",\n success:\n \"border-emerald-500/70 text-emerald-50 placeholder:text-emerald-300/70 focus-visible:border-emerald-400 focus-visible:ring-emerald-400/80\",\n info: \"border-blue-500/80 text-blue-50 placeholder:text-blue-300/70 focus-visible:border-blue-400 focus-visible:ring-blue-400/80\",\n violet:\n \"border-violet-500/80 text-violet-50 placeholder:text-violet-300/70 focus-visible:border-violet-400 focus-visible:ring-violet-400/80\",\n amber:\n \"border-amber-500/80 text-amber-50 placeholder:text-amber-300/70 focus-visible:border-amber-400 focus-visible:ring-amber-400/80\",\n pink: \"border-pink-500/80 text-pink-50 placeholder:text-pink-300/70 focus-visible:border-pink-400 focus-visible:ring-pink-400/80\",\n indigo:\n \"border-indigo-500/80 text-indigo-50 placeholder:text-indigo-300/70 focus-visible:border-indigo-400 focus-visible:ring-indigo-400/80\",\n orange:\n \"border-orange-500/80 text-orange-50 placeholder:text-orange-300/70 focus-visible:border-orange-400 focus-visible:ring-orange-400/80\",\n },\n size: {\n sm: \"h-8 px-3 text-xs\",\n md: \"h-9 md:h-11 px-4 text-sm\",\n lg: \"h-10 md:h-12 px-5 text-base\",\n },\n ring: {\n true: \"focus-visible:ring-2 focus-visible:ring-offset-2\",\n false: \"\",\n },\n },\n defaultVariants: {\n as: \"input\",\n appearance: \"default\",\n size: \"md\",\n ring: true,\n },\n compoundVariants: [\n // ── textarea size overrides ──────────────────────────────────────────\n {\n as: \"textarea\",\n size: \"sm\",\n class: \"min-h-[5rem]\",\n },\n {\n as: \"textarea\",\n size: \"md\",\n class: \"min-h-[6rem]\",\n },\n {\n as: \"textarea\",\n size: \"lg\",\n class: \"min-h-[7.5rem]\",\n },\n // ── file input: size – height & file-button padding ──────────────────\n {\n as: \"file\",\n size: \"sm\",\n class: \"h-8 text-xs pl-1 file:h-8 file:px-3 file:text-xs\",\n },\n {\n as: \"file\",\n size: \"md\",\n class:\n \"h-9 md:h-11 text-sm pl-1 file:h-9 md:file:h-11 file:px-4 file:text-sm\",\n },\n {\n as: \"file\",\n size: \"lg\",\n class:\n \"h-10 md:h-12 text-base pl-1 file:h-10 md:file:h-12 file:px-5 file:text-base\",\n },\n // ── file input: appearance – file-button accent colour ───────────────\n {\n as: \"file\",\n appearance: \"default\",\n class: \"file:text-slate-200\",\n },\n {\n as: \"file\",\n appearance: \"warning\",\n class:\n \"file:bg-yellow-500/20 file:text-yellow-200 file:border-yellow-500/40 hover:file:bg-yellow-500/30\",\n },\n {\n as: \"file\",\n appearance: \"error\",\n class:\n \"file:bg-rose-500/20 file:text-rose-200 file:border-rose-500/40 hover:file:bg-rose-500/30\",\n },\n {\n as: \"file\",\n appearance: \"success\",\n class:\n \"file:bg-emerald-500/20 file:text-emerald-200 file:border-emerald-500/40 hover:file:bg-emerald-500/30\",\n },\n {\n as: \"file\",\n appearance: \"info\",\n class:\n \"file:bg-blue-500/20 file:text-blue-200 file:border-blue-500/40 hover:file:bg-blue-500/30\",\n },\n {\n as: \"file\",\n appearance: \"violet\",\n class:\n \"file:bg-violet-500/20 file:text-violet-200 file:border-violet-500/40 hover:file:bg-violet-500/30\",\n },\n {\n as: \"file\",\n appearance: \"amber\",\n class:\n \"file:bg-amber-500/20 file:text-amber-200 file:border-amber-500/40 hover:file:bg-amber-500/30\",\n },\n {\n as: \"file\",\n appearance: \"pink\",\n class:\n \"file:bg-pink-500/20 file:text-pink-200 file:border-pink-500/40 hover:file:bg-pink-500/30\",\n },\n {\n as: \"file\",\n appearance: \"indigo\",\n class:\n \"file:bg-indigo-500/20 file:text-indigo-200 file:border-indigo-500/40 hover:file:bg-indigo-500/30\",\n },\n // ── checkbox / radio: size (overrides text-field height & padding) ───\n {\n as: \"checkbox\",\n size: \"sm\",\n class: \"h-4! w-4! min-h-0! rounded-[0.35rem]! px-0! py-0!\",\n },\n {\n as: \"checkbox\",\n size: \"md\",\n class: \"h-5! w-5! min-h-0! rounded-md! px-0! py-0!\",\n },\n {\n as: \"checkbox\",\n size: \"lg\",\n class: \"h-6! w-6! min-h-0! rounded-md! px-0! py-0!\",\n },\n {\n as: \"radio\",\n size: \"sm\",\n class: \"h-4! w-4! min-h-0! px-0! py-0!\",\n },\n {\n as: \"radio\",\n size: \"md\",\n class: \"h-5! w-5! min-h-0! px-0! py-0!\",\n },\n {\n as: \"radio\",\n size: \"lg\",\n class: \"h-6! w-6! min-h-0! px-0! py-0!\",\n },\n // ── checkbox: appearance (border + tick color; fill stays transparent) ─\n {\n as: \"checkbox\",\n appearance: \"default\",\n class:\n \"border-slate-400/70! checked:border-slate-200 checked:text-slate-200 hover:border-slate-300 focus-visible:border-slate-300 focus-visible:ring-slate-400/70\",\n },\n {\n as: \"checkbox\",\n appearance: \"warning\",\n class:\n \"border-yellow-500/70! checked:border-yellow-400 checked:text-yellow-300 hover:border-yellow-400 focus-visible:border-yellow-400 focus-visible:ring-yellow-400/80\",\n },\n {\n as: \"checkbox\",\n appearance: \"error\",\n class:\n \"border-rose-500/70! checked:border-rose-400 checked:text-rose-300 hover:border-rose-400 focus-visible:border-rose-400 focus-visible:ring-rose-400/80\",\n },\n {\n as: \"checkbox\",\n appearance: \"success\",\n class:\n \"border-emerald-500/70! checked:border-emerald-400 checked:text-emerald-300 hover:border-emerald-400 focus-visible:border-emerald-400 focus-visible:ring-emerald-400/80\",\n },\n {\n as: \"checkbox\",\n appearance: \"info\",\n class:\n \"border-blue-500/70! checked:border-blue-400 checked:text-blue-300 hover:border-blue-400 focus-visible:border-blue-400 focus-visible:ring-blue-400/80\",\n },\n {\n as: \"checkbox\",\n appearance: \"violet\",\n class:\n \"border-violet-500/70! checked:after:bg-violet-400 checked:border-violet-400 checked:text-violet-300 hover:border-violet-400 focus-visible:border-violet-400 focus-visible:ring-violet-400/80\",\n },\n {\n as: \"checkbox\",\n appearance: \"amber\",\n class:\n \"border-amber-500/70! checked:border-amber-400! checked:text-amber-300 hover:border-amber-400! focus-visible:border-amber-400! focus-visible:ring-amber-400/80!\",\n },\n {\n as: \"checkbox\",\n appearance: \"pink\",\n class:\n \"border-pink-500/70! checked:border-pink-400 checked:text-pink-300 hover:border-pink-400 focus-visible:border-pink-400 focus-visible:ring-pink-400/80\",\n },\n {\n as: \"checkbox\",\n appearance: \"indigo\",\n class:\n \"border-indigo-500/70! checked:border-indigo-400! checked:text-indigo-300 hover:border-indigo-400! focus-visible:border-indigo-400! focus-visible:ring-indigo-400/80!\",\n },\n // ── radio: appearance (transparent fill, inner dot, coloured offset ring) ─\n {\n as: \"radio\",\n appearance: \"default\",\n class:\n \"border-slate-400/70! checked:border-slate-200 checked:bg-transparent! checked:shadow-[inset_0_0_0_0.28rem_rgb(226,232,240)]! hover:border-slate-300 focus-visible:border-slate-300 focus-visible:ring-slate-400/70 checked:ring-2! checked:ring-offset-2! checked:ring-offset-slate-950! checked:ring-slate-300/90!\",\n },\n {\n as: \"radio\",\n appearance: \"warning\",\n class:\n \"border-yellow-500/70! checked:border-yellow-400 checked:bg-transparent! checked:shadow-[inset_0_0_0_0.28rem_rgb(250,204,21)]! hover:border-yellow-400 focus-visible:border-yellow-400 focus-visible:ring-yellow-400/80 checked:ring-2! checked:ring-offset-2! checked:ring-offset-slate-950! checked:ring-yellow-400/90!\",\n },\n {\n as: \"radio\",\n appearance: \"error\",\n class:\n \"border-rose-500/70! checked:border-rose-400 checked:bg-transparent! checked:shadow-[inset_0_0_0_0.28rem_rgb(251,113,133)]! hover:border-rose-400 focus-visible:border-rose-400 focus-visible:ring-rose-400/80 checked:ring-2! checked:ring-offset-2! checked:ring-offset-slate-950! checked:ring-rose-400/90!\",\n },\n {\n as: \"radio\",\n appearance: \"success\",\n class:\n \"border-emerald-500/70! checked:border-emerald-400 checked:bg-transparent! checked:shadow-[inset_0_0_0_0.28rem_rgb(52,211,153)]! hover:border-emerald-400 focus-visible:border-emerald-400 focus-visible:ring-emerald-400/80 checked:ring-2! checked:ring-offset-2! checked:ring-offset-slate-950! checked:ring-emerald-400/90!\",\n },\n {\n as: \"radio\",\n appearance: \"info\",\n class:\n \"border-blue-500/70! checked:border-blue-400 checked:bg-transparent! checked:shadow-[inset_0_0_0_0.28rem_rgb(96,165,250)]! hover:border-blue-400 focus-visible:border-blue-400 focus-visible:ring-blue-400/80 checked:ring-2! checked:ring-offset-2! checked:ring-offset-slate-950! checked:ring-blue-400/90!\",\n },\n {\n as: \"radio\",\n appearance: \"violet\",\n class:\n \"border-violet-500/70! checked:border-violet-400 checked:bg-transparent! checked:shadow-[inset_0_0_0_0.28rem_rgb(167,139,250)]! hover:border-violet-400 focus-visible:border-violet-400 focus-visible:ring-violet-400/80 checked:ring-2! checked:ring-offset-2! checked:ring-offset-slate-950! checked:ring-violet-400/90!\",\n },\n {\n as: \"radio\",\n appearance: \"amber\",\n class:\n \"border-amber-500/70! checked:border-amber-400 checked:bg-transparent! checked:shadow-[inset_0_0_0_0.28rem_rgb(251,191,36)]! hover:border-amber-400 focus-visible:border-amber-400 focus-visible:ring-amber-400/80 checked:ring-2! checked:ring-offset-2! checked:ring-offset-slate-950! checked:ring-amber-400/90!\",\n },\n {\n as: \"radio\",\n appearance: \"pink\",\n class:\n \"border-pink-500/70! checked:border-pink-400 checked:bg-transparent! checked:shadow-[inset_0_0_0_0.28rem_rgb(244,114,182)]! hover:border-pink-400 focus-visible:border-pink-400 focus-visible:ring-pink-400/80 checked:ring-2! checked:ring-offset-2! checked:ring-offset-slate-950! checked:ring-pink-400/90!\",\n },\n {\n as: \"radio\",\n appearance: \"indigo\",\n class:\n \"border-indigo-500/70! checked:border-indigo-400 checked:bg-transparent! checked:shadow-[inset_0_0_0_0.28rem_rgb(129,140,248)]! hover:border-indigo-400 focus-visible:border-indigo-400 focus-visible:ring-indigo-400/80 checked:ring-2! checked:ring-offset-2! checked:ring-offset-slate-950! checked:ring-indigo-400/90!\",\n },\n ],\n },\n);\n","\"use client\";\n\nimport { useId } from \"react\";\nimport { motion } from \"framer-motion\";\n\nimport { cn } from \"../../lib/utils\";\nimport { inputAnimationPresets } from \"./animations\";\nimport type { InputProps } from \"./types\";\nimport { inputVariants } from \"./variants\";\n\nexport const Input = (props: InputProps) => {\n const generatedId = useId();\n\n if (props.as === \"textarea\") {\n const {\n className,\n appearance,\n size,\n animation = \"none\",\n ring = true,\n ref,\n \"aria-invalid\": ariaInvalidProp,\n errorMessage,\n id,\n as,\n ...rest\n } = props;\n\n const controlId = id ?? generatedId;\n const errorId = `${controlId}-error`;\n const motionProps = inputAnimationPresets[animation];\n const ariaInvalid =\n ariaInvalidProp !== undefined\n ? ariaInvalidProp\n : appearance === \"error\"\n ? true\n : undefined;\n\n return (\n <>\n <motion.textarea\n ref={ref}\n id={controlId}\n data-slot=\"input\"\n className={cn(\n inputVariants({ appearance, size, ring, as }),\n className,\n )}\n initial={false}\n aria-invalid={ariaInvalid}\n aria-describedby={\n errorMessage && appearance === \"error\" ? errorId : undefined\n }\n {...motionProps}\n {...rest}\n />\n {errorMessage && appearance === \"error\" && (\n <p\n id={errorId}\n className=\"text-sm text-rose-500 mt-2 pl-4 wrap-break-word\"\n >\n {errorMessage}\n </p>\n )}\n </>\n );\n }\n\n const {\n className,\n appearance,\n size,\n animation = \"none\",\n ring = true,\n ref,\n \"aria-invalid\": ariaInvalidProp,\n errorMessage,\n id,\n as,\n ...rest\n } = props;\n\n const controlId = id ?? generatedId;\n const errorId = `${controlId}-error`;\n const motionProps = inputAnimationPresets[animation];\n const ariaInvalid =\n ariaInvalidProp !== undefined\n ? ariaInvalidProp\n : appearance === \"error\"\n ? true\n : undefined;\n\n return (\n <>\n <motion.input\n ref={ref}\n id={controlId}\n data-slot=\"input\"\n className={cn(\n inputVariants({ appearance, size, ring, as: as ?? \"input\" }),\n className,\n )}\n initial={false}\n aria-invalid={ariaInvalid}\n aria-describedby={\n errorMessage && appearance === \"error\" ? errorId : undefined\n }\n {...motionProps}\n {...rest}\n />\n {errorMessage && appearance === \"error\" && (\n <p\n id={errorId}\n className=\"text-sm text-rose-500 mt-2 pl-4 wrap-break-word\"\n >\n {errorMessage}\n </p>\n )}\n </>\n );\n};\n\nInput.displayName = \"Input\";\n"]}
@@ -1,8 +1,9 @@
1
1
  "use client";
2
-
3
- import {
4
- cn
5
- } from "../chunk-MEWYFWBX.mjs";
2
+ import { cn } from '../chunk-B23TPTVG.mjs';
3
+ import { useId } from 'react';
4
+ import { motion } from 'framer-motion';
5
+ import { cva } from 'class-variance-authority';
6
+ import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
6
7
 
7
8
  // src/ui/inputs/animations.ts
8
9
  var inputAnimationPresets = {
@@ -37,13 +38,6 @@ var inputAnimationPresets = {
37
38
  transition: { type: "spring", bounce: 0.35, duration: 0.4 }
38
39
  }
39
40
  };
40
-
41
- // src/ui/inputs/input.tsx
42
- import { useId } from "react";
43
- import { motion } from "framer-motion";
44
-
45
- // src/ui/inputs/variants.ts
46
- import { cva } from "class-variance-authority";
47
41
  var inputVariants = cva(
48
42
  [
49
43
  "w-full min-w-0 rounded-xl border bg-white/5 text-slate-50 shadow-[0_1px_2px_rgba(15,23,42,0.12)]",
@@ -323,9 +317,6 @@ var inputVariants = cva(
323
317
  ]
324
318
  }
325
319
  );
326
-
327
- // src/ui/inputs/input.tsx
328
- import { Fragment, jsx, jsxs } from "react/jsx-runtime";
329
320
  var Input = (props) => {
330
321
  const generatedId = useId();
331
322
  if (props.as === "textarea") {
@@ -420,9 +411,7 @@ var Input = (props) => {
420
411
  ] });
421
412
  };
422
413
  Input.displayName = "Input";
423
- export {
424
- Input,
425
- inputAnimationPresets,
426
- inputVariants
427
- };
414
+
415
+ export { Input, inputAnimationPresets, inputVariants };
416
+ //# sourceMappingURL=inputs.mjs.map
428
417
  //# sourceMappingURL=inputs.mjs.map