@nomos-ui/form 0.0.10 → 0.0.12
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.
- package/dist/components/form-image-input.d.ts +8 -0
- package/dist/components/form-image-input.d.ts.map +1 -0
- package/dist/components/form-image-input.js +21 -0
- package/dist/components/form-image-input.js.map +1 -0
- package/dist/components/image-input.d.ts +22 -0
- package/dist/components/image-input.d.ts.map +1 -0
- package/dist/components/image-input.js +58 -0
- package/dist/components/image-input.js.map +1 -0
- package/dist/components/shadcn-ui/select.js +1 -1
- package/dist/exports/index.d.ts +3 -1
- package/dist/exports/index.d.ts.map +1 -1
- package/dist/exports/index.js +5 -1
- package/dist/exports/index.js.map +1 -1
- package/package.json +15 -6
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Control, FieldValues, Path } from "react-hook-form";
|
|
2
|
+
import { ImageInputProps } from "./image-input";
|
|
3
|
+
export type FormImageInputProps<TFieldValues extends FieldValues> = Omit<ImageInputProps, "value" | "onChange" | "onError" | "error"> & {
|
|
4
|
+
control: Control<TFieldValues>;
|
|
5
|
+
name: Path<TFieldValues>;
|
|
6
|
+
};
|
|
7
|
+
export default function FormImageInput<TFieldValues extends FieldValues>({ control, name, ...props }: FormImageInputProps<TFieldValues>): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
//# sourceMappingURL=form-image-input.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form-image-input.d.ts","sourceRoot":"","sources":["../../src/components/form-image-input.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAc,WAAW,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACzE,OAAmB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAG5D,MAAM,MAAM,mBAAmB,CAAC,YAAY,SAAS,WAAW,IAAI,IAAI,CACtE,eAAe,EACf,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,OAAO,CAC3C,GAAG;IACF,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAC/B,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;CAC1B,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,YAAY,SAAS,WAAW,EAAE,EACvE,OAAO,EACP,IAAI,EACJ,GAAG,KAAK,EACT,EAAE,mBAAmB,CAAC,YAAY,CAAC,2CAyBnC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.default = FormImageInput;
|
|
7
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
8
|
+
const react_hook_form_1 = require("react-hook-form");
|
|
9
|
+
const image_input_1 = __importDefault(require("./image-input"));
|
|
10
|
+
const form_helpers_1 = require("../utils/helpers/form.helpers");
|
|
11
|
+
function FormImageInput({ control, name, ...props }) {
|
|
12
|
+
return ((0, jsx_runtime_1.jsx)(react_hook_form_1.Controller, { control: control, name: name, rules: {
|
|
13
|
+
required: props.required ? "Required" : false,
|
|
14
|
+
}, render: ({ field: { onChange, value }, formState: { errors } }) => ((0, jsx_runtime_1.jsx)(image_input_1.default, { ...props, name: name, value: value, onChange: onChange, onError: (errorMessage) => {
|
|
15
|
+
control.setError(name, {
|
|
16
|
+
type: "manual",
|
|
17
|
+
message: errorMessage,
|
|
18
|
+
});
|
|
19
|
+
}, error: (0, form_helpers_1.getNestedErrorMessage)(errors, name) })) }));
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=form-image-input.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form-image-input.js","sourceRoot":"","sources":["../../src/components/form-image-input.tsx"],"names":[],"mappings":";;;;;AAYA,iCA6BC;;AAzCD,qDAAyE;AACzE,gEAA4D;AAC5D,gEAAsE;AAUtE,SAAwB,cAAc,CAAmC,EACvE,OAAO,EACP,IAAI,EACJ,GAAG,KAAK,EAC0B;IAClC,OAAO,CACL,uBAAC,4BAAU,IACT,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE;YACL,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK;SAC9C,EACD,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CACjE,uBAAC,qBAAU,OACL,KAAK,EACT,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,CAAC,YAAoB,EAAE,EAAE;gBAChC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE;oBACrB,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,YAAY;iBACtB,CAAC,CAAC;YACL,CAAC,EACD,KAAK,EAAE,IAAA,oCAAqB,EAAC,MAAM,EAAE,IAAI,CAAC,GAC1C,CACH,GACD,CACH,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
export type ImageInputProps = {
|
|
3
|
+
value?: File | string | null;
|
|
4
|
+
onChange?: (file: File | null) => void;
|
|
5
|
+
onError?: (error: string) => void;
|
|
6
|
+
className?: string;
|
|
7
|
+
dropzoneClassName?: string;
|
|
8
|
+
previewClassName?: string;
|
|
9
|
+
disabled?: boolean;
|
|
10
|
+
accept?: string;
|
|
11
|
+
maxSize?: number;
|
|
12
|
+
error?: string;
|
|
13
|
+
name: string;
|
|
14
|
+
label?: string;
|
|
15
|
+
required?: boolean;
|
|
16
|
+
showRequiredSign?: boolean;
|
|
17
|
+
tip?: string;
|
|
18
|
+
renderEmpty?: () => React.ReactNode;
|
|
19
|
+
renderPreview?: (url: string, onRemove: () => void) => React.ReactNode;
|
|
20
|
+
};
|
|
21
|
+
export default function ImageInput({ value, onChange, onError, className, dropzoneClassName, previewClassName, disabled, accept, maxSize, error, name, label, required, showRequiredSign, tip, renderEmpty, renderPreview, }: ImageInputProps): import("react/jsx-runtime").JSX.Element;
|
|
22
|
+
//# sourceMappingURL=image-input.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"image-input.d.ts","sourceRoot":"","sources":["../../src/components/image-input.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC;IACvC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,KAAK,CAAC,SAAS,CAAC;IACpC,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,KAAK,KAAK,CAAC,SAAS,CAAC;CACxE,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EACjC,KAAK,EACL,QAAQ,EACR,OAAO,EACP,SAAS,EACT,iBAAiB,EACjB,gBAAgB,EAChB,QAAgB,EAChB,MAAkB,EAClB,OAAO,EACP,KAAK,EACL,IAAI,EACJ,KAAK,EACL,QAAgB,EAChB,gBAAwB,EACxB,GAAG,EACH,WAAW,EACX,aAAa,GACd,EAAE,eAAe,2CAoIjB"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.default = ImageInput;
|
|
7
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
8
|
+
const react_1 = __importDefault(require("react"));
|
|
9
|
+
const lucide_react_1 = require("lucide-react");
|
|
10
|
+
const tailwind_merge_1 = require("tailwind-merge");
|
|
11
|
+
function ImageInput({ value, onChange, onError, className, dropzoneClassName, previewClassName, disabled = false, accept = "image/*", maxSize, error, name, label, required = false, showRequiredSign = false, tip, renderEmpty, renderPreview, }) {
|
|
12
|
+
const [isDragging, setIsDragging] = react_1.default.useState(false);
|
|
13
|
+
const handleFile = (file) => {
|
|
14
|
+
if (file) {
|
|
15
|
+
if (maxSize && file.size > maxSize) {
|
|
16
|
+
onError?.(`Max size: ${Math.round(maxSize / (1024 * 1024))}MB`);
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
onChange?.(file);
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
onChange?.(null);
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
const handleRemove = () => {
|
|
26
|
+
handleFile(null);
|
|
27
|
+
};
|
|
28
|
+
let previewUrl = null;
|
|
29
|
+
if (value instanceof File) {
|
|
30
|
+
previewUrl = URL.createObjectURL(value);
|
|
31
|
+
}
|
|
32
|
+
else if (typeof value === "string") {
|
|
33
|
+
previewUrl = value;
|
|
34
|
+
}
|
|
35
|
+
return ((0, jsx_runtime_1.jsxs)("div", { className: (0, tailwind_merge_1.twMerge)("space-y-1.5", className), children: [label && ((0, jsx_runtime_1.jsxs)("div", { className: "flex items-center gap-1.5", children: [(0, jsx_runtime_1.jsx)("label", { htmlFor: `input-${name}`, className: "text-sm font-bold text-foreground", children: label }), required && showRequiredSign && ((0, jsx_runtime_1.jsx)(lucide_react_1.AsteriskIcon, { className: "w-3 h-3 text-destructive" })), tip && ((0, jsx_runtime_1.jsxs)("div", { className: "ml-auto relative group", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.CircleHelpIcon, { className: "w-4 h-4 text-muted-foreground cursor-help" }), (0, jsx_runtime_1.jsx)("span", { className: "absolute left-1/2 -translate-x-1/2 top-6 w-max max-w-xs px-2 py-1 bg-popover text-popover-foreground text-xs rounded-md border border-input shadow-md opacity-0 group-hover:opacity-100 transition-opacity pointer-events-none z-50", children: tip })] }))] })), (0, jsx_runtime_1.jsxs)("div", { className: "relative h-48 w-full", children: [(0, jsx_runtime_1.jsx)("input", { type: "file", id: `input-${name}`, name: `input-${name}`, accept: accept, disabled: disabled, onChange: (e) => handleFile(e.target.files?.[0] || null), className: "absolute inset-0 w-full h-full opacity-0 cursor-pointer z-10 disabled:cursor-not-allowed", onDragOver: (e) => {
|
|
36
|
+
e.preventDefault();
|
|
37
|
+
if (!disabled)
|
|
38
|
+
setIsDragging(true);
|
|
39
|
+
}, onDragLeave: (e) => {
|
|
40
|
+
e.preventDefault();
|
|
41
|
+
setIsDragging(false);
|
|
42
|
+
}, onDrop: (e) => {
|
|
43
|
+
e.preventDefault();
|
|
44
|
+
setIsDragging(false);
|
|
45
|
+
if (!disabled && e.dataTransfer.files?.[0]) {
|
|
46
|
+
handleFile(e.dataTransfer.files[0]);
|
|
47
|
+
}
|
|
48
|
+
} }), (0, jsx_runtime_1.jsx)("div", { className: (0, tailwind_merge_1.twMerge)("w-full h-full border-2 border-input border-dashed rounded-lg flex items-center justify-center bg-transparent transition-colors", disabled && "opacity-50 cursor-not-allowed", isDragging && "border-primary bg-primary/5", !isDragging &&
|
|
49
|
+
!previewUrl &&
|
|
50
|
+
"border-input hover:border-primary/50", dropzoneClassName), children: previewUrl ? (renderPreview ? (renderPreview(previewUrl, handleRemove)) : ((0, jsx_runtime_1.jsxs)("div", { className: (0, tailwind_merge_1.twMerge)("relative w-full h-full", previewClassName), children: [(0, jsx_runtime_1.jsx)("img", { src: previewUrl, alt: "Preview", className: "w-full h-full object-cover rounded-lg" }), !disabled && ((0, jsx_runtime_1.jsx)("button", { type: "button", onClick: (e) => {
|
|
51
|
+
e.preventDefault();
|
|
52
|
+
e.stopPropagation();
|
|
53
|
+
handleRemove();
|
|
54
|
+
}, className: "absolute -top-2 -right-2 p-1 bg-destructive text-destructive-foreground rounded-full hover:bg-destructive/90 transition-colors z-20 shadow-sm", children: (0, jsx_runtime_1.jsx)(lucide_react_1.X, { className: "w-3.5 h-3.5" }) }))] }))) : renderEmpty ? (renderEmpty()) : ((0, jsx_runtime_1.jsxs)("div", { className: "flex flex-col items-center gap-2 text-muted-foreground px-4", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.ImageIcon, { className: "w-8 h-8" }), (0, jsx_runtime_1.jsx)("p", { className: "text-sm text-center", children: disabled
|
|
55
|
+
? "Upload desabilitado"
|
|
56
|
+
: "Arraste uma imagem ou clique para selecionar" })] })) })] }), error && (0, jsx_runtime_1.jsx)("p", { className: "text-sm text-destructive", children: error })] }));
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=image-input.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"image-input.js","sourceRoot":"","sources":["../../src/components/image-input.tsx"],"names":[],"mappings":"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"}
|
|
@@ -57,7 +57,7 @@ function SelectValue({ ...props }) {
|
|
|
57
57
|
return (0, jsx_runtime_1.jsx)(SelectPrimitive.Value, { "data-slot": "select-value", ...props });
|
|
58
58
|
}
|
|
59
59
|
function SelectTrigger({ className, size = "default", children, ...props }) {
|
|
60
|
-
return ((0, jsx_runtime_1.jsxs)(SelectPrimitive.Trigger, { "data-slot": "select-trigger", "data-size": size, className: (0, utils_1.cn)("border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-
|
|
60
|
+
return ((0, jsx_runtime_1.jsxs)(SelectPrimitive.Trigger, { "data-slot": "select-trigger", "data-size": size, className: (0, utils_1.cn)("border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-8 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className), ...props, children: [children, (0, jsx_runtime_1.jsx)(SelectPrimitive.Icon, { asChild: true, children: (0, jsx_runtime_1.jsx)(lucide_react_1.ChevronDownIcon, { className: "size-4 opacity-50" }) })] }));
|
|
61
61
|
}
|
|
62
62
|
function SelectContent({ className, children, position = "popper", align = "center", ...props }) {
|
|
63
63
|
return ((0, jsx_runtime_1.jsx)(SelectPrimitive.Portal, { children: (0, jsx_runtime_1.jsxs)(SelectPrimitive.Content, { "data-slot": "select-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 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md", position === "popper" &&
|
package/dist/exports/index.d.ts
CHANGED
|
@@ -5,7 +5,9 @@ import Select, { SelectOption, SelectProps } from "../components/select";
|
|
|
5
5
|
import FormSelect, { FormSelectProps } from "../components/form-select";
|
|
6
6
|
import Textarea from "../components/textarea";
|
|
7
7
|
import FormTextarea from "../components/form-textarea";
|
|
8
|
-
|
|
8
|
+
import FormImageInput from "../components/form-image-input";
|
|
9
|
+
import ImageInput from "../components/image-input";
|
|
10
|
+
export { Button, FormInput, Input, Select, FormSelect, Textarea, FormTextarea, ImageInput, FormImageInput, };
|
|
9
11
|
export type { SelectOption, SelectProps, FormSelectProps };
|
|
10
12
|
export * from "../components/input";
|
|
11
13
|
export * from "../components/form-input";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/exports/index.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,sBAAsB,CAAC;AAC1C,OAAO,SAAS,MAAM,0BAA0B,CAAC;AACjD,OAAO,KAAK,MAAM,qBAAqB,CAAC;AACxC,OAAO,MAAM,EAAE,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,UAAU,EAAE,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,QAAQ,MAAM,wBAAwB,CAAC;AAC9C,OAAO,YAAY,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/exports/index.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,sBAAsB,CAAC;AAC1C,OAAO,SAAS,MAAM,0BAA0B,CAAC;AACjD,OAAO,KAAK,MAAM,qBAAqB,CAAC;AACxC,OAAO,MAAM,EAAE,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,UAAU,EAAE,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,QAAQ,MAAM,wBAAwB,CAAC;AAC9C,OAAO,YAAY,MAAM,6BAA6B,CAAC;AACvD,OAAO,cAAc,MAAM,gCAAgC,CAAC;AAC5D,OAAO,UAAU,MAAM,2BAA2B,CAAC;AAEnD,OAAO,EACL,MAAM,EACN,SAAS,EACT,KAAK,EACL,MAAM,EACN,UAAU,EACV,QAAQ,EACR,YAAY,EACZ,UAAU,EACV,cAAc,GACf,CAAC;AACF,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC;AAC3D,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC"}
|
package/dist/exports/index.js
CHANGED
|
@@ -17,7 +17,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
17
17
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
18
18
|
};
|
|
19
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
-
exports.FormTextarea = exports.Textarea = exports.FormSelect = exports.Select = exports.Input = exports.FormInput = exports.Button = void 0;
|
|
20
|
+
exports.FormImageInput = exports.ImageInput = exports.FormTextarea = exports.Textarea = exports.FormSelect = exports.Select = exports.Input = exports.FormInput = exports.Button = void 0;
|
|
21
21
|
const button_1 = __importDefault(require("../components/button"));
|
|
22
22
|
exports.Button = button_1.default;
|
|
23
23
|
const form_input_1 = __importDefault(require("../components/form-input"));
|
|
@@ -32,6 +32,10 @@ const textarea_1 = __importDefault(require("../components/textarea"));
|
|
|
32
32
|
exports.Textarea = textarea_1.default;
|
|
33
33
|
const form_textarea_1 = __importDefault(require("../components/form-textarea"));
|
|
34
34
|
exports.FormTextarea = form_textarea_1.default;
|
|
35
|
+
const form_image_input_1 = __importDefault(require("../components/form-image-input"));
|
|
36
|
+
exports.FormImageInput = form_image_input_1.default;
|
|
37
|
+
const image_input_1 = __importDefault(require("../components/image-input"));
|
|
38
|
+
exports.ImageInput = image_input_1.default;
|
|
35
39
|
__exportStar(require("../components/input"), exports);
|
|
36
40
|
__exportStar(require("../components/form-input"), exports);
|
|
37
41
|
__exportStar(require("../components/button"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/exports/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,kEAA0C;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/exports/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,kEAA0C;AAWxC,iBAXK,gBAAM,CAWL;AAVR,0EAAiD;AAW/C,oBAXK,oBAAS,CAWL;AAVX,gEAAwC;AAWtC,gBAXK,eAAK,CAWL;AAVP,kEAAyE;AAWvE,iBAXK,gBAAM,CAWL;AAVR,4EAAwE;AAWtE,qBAXK,qBAAU,CAWL;AAVZ,sEAA8C;AAW5C,mBAXK,kBAAQ,CAWL;AAVV,gFAAuD;AAWrD,uBAXK,uBAAY,CAWL;AAVd,sFAA4D;AAY1D,yBAZK,0BAAc,CAYL;AAXhB,4EAAmD;AAUjD,qBAVK,qBAAU,CAUL;AAIZ,sDAAoC;AACpC,2DAAyC;AACzC,uDAAqC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nomos-ui/form",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.12",
|
|
4
4
|
"description": "The Shadcn library for building robust React forms",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/exports/index.js",
|
|
@@ -8,19 +8,28 @@
|
|
|
8
8
|
"exports": {
|
|
9
9
|
".": {
|
|
10
10
|
"types": "./dist/exports/index.d.ts",
|
|
11
|
-
"import": "./dist/exports/index.js"
|
|
11
|
+
"import": "./dist/exports/index.js",
|
|
12
|
+
"require": "./dist/exports/index.js"
|
|
12
13
|
},
|
|
13
14
|
"./hooks": {
|
|
14
15
|
"types": "./dist/hooks/index.d.ts",
|
|
15
|
-
"import": "./dist/hooks/index.js"
|
|
16
|
+
"import": "./dist/hooks/index.js",
|
|
17
|
+
"require": "./dist/hooks/index.js"
|
|
18
|
+
},
|
|
19
|
+
"./modals": {
|
|
20
|
+
"types": "./dist/exports/modals.d.ts",
|
|
21
|
+
"import": "./dist/exports/modals.js",
|
|
22
|
+
"require": "./dist/exports/modals.js"
|
|
16
23
|
},
|
|
17
24
|
"./utils": {
|
|
18
|
-
"types": "./dist/
|
|
19
|
-
"import": "./dist/
|
|
25
|
+
"types": "./dist/utils/index.d.ts",
|
|
26
|
+
"import": "./dist/utils/index.js",
|
|
27
|
+
"require": "./dist/utils/index.js"
|
|
20
28
|
},
|
|
21
29
|
"./types": {
|
|
22
30
|
"types": "./dist/types/index.d.ts",
|
|
23
|
-
"import": "./dist/types/index.js"
|
|
31
|
+
"import": "./dist/types/index.js",
|
|
32
|
+
"require": "./dist/types/index.js"
|
|
24
33
|
}
|
|
25
34
|
},
|
|
26
35
|
"typesVersions": {
|