@lerianstudio/sindarian-ui 1.0.0-beta.2 → 1.0.0-beta.20
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/breadcrumb/index.js +2 -2
- package/dist/components/card/account-card/index.d.ts +32 -0
- package/dist/components/card/account-card/index.d.ts.map +1 -0
- package/dist/components/card/account-card/index.js +69 -0
- package/dist/components/card/basic-card/index.d.ts +6 -0
- package/dist/components/card/basic-card/index.d.ts.map +1 -0
- package/dist/components/card/basic-card/index.js +20 -0
- package/dist/components/card/dashboard-card/index.d.ts +5 -0
- package/dist/components/card/dashboard-card/index.d.ts.map +1 -0
- package/dist/components/card/dashboard-card/index.js +20 -0
- package/dist/components/card/entity-card/index.d.ts +21 -0
- package/dist/components/card/entity-card/index.d.ts.map +1 -0
- package/dist/components/card/entity-card/index.js +60 -0
- package/dist/components/card/index.d.ts +5 -0
- package/dist/components/card/index.d.ts.map +1 -0
- package/dist/components/card/index.js +20 -0
- package/dist/components/dialog/confirmation-dialog/index.d.ts +15 -0
- package/dist/components/dialog/confirmation-dialog/index.d.ts.map +1 -0
- package/dist/components/dialog/confirmation-dialog/index.js +28 -0
- package/dist/components/dialog/confirmation-dialog/use-confirm-dialog.d.ts +31 -0
- package/dist/components/dialog/confirmation-dialog/use-confirm-dialog.d.ts.map +1 -0
- package/dist/components/dialog/confirmation-dialog/use-confirm-dialog.js +55 -0
- package/dist/components/dialog/index.d.ts +4 -0
- package/dist/components/dialog/index.d.ts.map +1 -0
- package/dist/components/dialog/index.js +19 -0
- package/dist/components/dialog/large-dialog/index.d.ts +11 -0
- package/dist/components/dialog/large-dialog/index.d.ts.map +1 -0
- package/dist/components/dialog/large-dialog/index.js +21 -0
- package/dist/components/form/input-field/index.d.ts +4 -1
- package/dist/components/form/input-field/index.d.ts.map +1 -1
- package/dist/components/form/input-field/index.js +3 -3
- package/dist/components/form/pagination-limit-field/index.d.ts +2 -1
- package/dist/components/form/pagination-limit-field/index.d.ts.map +1 -1
- package/dist/components/form/pagination-limit-field/index.js +2 -2
- package/dist/components/form/password-field/index.d.ts +5 -4
- package/dist/components/form/password-field/index.d.ts.map +1 -1
- package/dist/components/form/password-field/index.js +8 -7
- package/dist/components/form/select-field/index.d.ts +1 -0
- package/dist/components/form/select-field/index.d.ts.map +1 -1
- package/dist/components/form/select-field/index.js +1 -1
- package/dist/components/form/switch-field/index.d.ts +2 -1
- package/dist/components/form/switch-field/index.d.ts.map +1 -1
- package/dist/components/form/switch-field/index.js +2 -2
- package/dist/components/page/index.d.ts.map +1 -1
- package/dist/components/page/index.js +3 -3
- package/dist/components/page-header/index.js +1 -1
- package/dist/components/pagination/index.js +1 -1
- package/dist/components/table/id-table-cell.d.ts +3 -2
- package/dist/components/table/id-table-cell.d.ts.map +1 -1
- package/dist/components/table/id-table-cell.js +2 -2
- package/dist/components/table/locked-table-actions.js +1 -1
- package/dist/components/ui/alert/index.d.ts +5 -1
- package/dist/components/ui/alert/index.d.ts.map +1 -1
- package/dist/components/ui/alert/index.js +22 -8
- package/dist/components/ui/alert/styles.css +68 -0
- package/dist/components/ui/badge/index.d.ts +1 -1
- package/dist/components/ui/breadcrumb/index.d.ts.map +1 -1
- package/dist/components/ui/breadcrumb/index.js +5 -5
- package/dist/components/ui/breadcrumb/styles.css +27 -0
- package/dist/components/ui/button/index.d.ts +8 -3
- package/dist/components/ui/button/index.d.ts.map +1 -1
- package/dist/components/ui/button/index.js +21 -29
- package/dist/components/ui/button/styles.css +64 -0
- package/dist/components/ui/card/index.js +1 -1
- package/dist/components/ui/dialog/index.d.ts.map +1 -1
- package/dist/components/ui/dialog/index.js +6 -6
- package/dist/components/ui/dialog/styles.css +34 -0
- package/dist/components/ui/form.d.ts.map +1 -1
- package/dist/components/ui/form.js +1 -0
- package/dist/components/ui/icon-button/index.d.ts +13 -0
- package/dist/components/ui/icon-button/index.d.ts.map +1 -0
- package/dist/components/ui/icon-button/index.js +35 -0
- package/dist/components/ui/icon-button/styles.css +33 -0
- package/dist/components/ui/input/adornment.d.ts +9 -0
- package/dist/components/ui/input/adornment.d.ts.map +1 -0
- package/dist/components/ui/input/adornment.js +21 -0
- package/dist/components/ui/input/index.d.ts +16 -2
- package/dist/components/ui/input/index.d.ts.map +1 -1
- package/dist/components/ui/input/index.js +90 -2
- package/dist/components/ui/input/styles.css +68 -0
- package/dist/components/ui/multiple-select/index.d.ts +6 -6
- package/dist/components/ui/paper-collapsible/index.d.ts +9 -0
- package/dist/components/ui/paper-collapsible/index.d.ts.map +1 -0
- package/dist/components/ui/paper-collapsible/index.js +24 -0
- package/dist/components/ui/progress/index.d.ts +1 -1
- package/dist/components/ui/progress/index.d.ts.map +1 -1
- package/dist/components/ui/select/index.d.ts +1 -2
- package/dist/components/ui/select/index.d.ts.map +1 -1
- package/dist/components/ui/select/index.js +9 -18
- package/dist/components/ui/select/styles.css +57 -0
- package/dist/components/ui/sidebar/index.d.ts +9 -0
- package/dist/components/ui/sidebar/index.d.ts.map +1 -0
- package/dist/components/ui/sidebar/index.js +24 -0
- package/dist/components/ui/sidebar/sidebar-back-button.d.ts +3 -0
- package/dist/components/ui/sidebar/sidebar-back-button.d.ts.map +1 -0
- package/dist/components/ui/sidebar/sidebar-back-button.js +11 -0
- package/dist/components/ui/sidebar/sidebar-components.d.ts +23 -0
- package/dist/components/ui/sidebar/sidebar-components.d.ts.map +1 -0
- package/dist/components/ui/sidebar/sidebar-components.js +23 -0
- package/dist/components/ui/sidebar/sidebar-expand-button.d.ts +6 -0
- package/dist/components/ui/sidebar/sidebar-expand-button.d.ts.map +1 -0
- package/dist/components/ui/sidebar/sidebar-expand-button.js +19 -0
- package/dist/components/ui/sidebar/sidebar-item-button.d.ts +11 -0
- package/dist/components/ui/sidebar/sidebar-item-button.d.ts.map +1 -0
- package/dist/components/ui/sidebar/sidebar-item-button.js +23 -0
- package/dist/components/ui/sidebar/sidebar-item-icon-button.d.ts +11 -0
- package/dist/components/ui/sidebar/sidebar-item-icon-button.d.ts.map +1 -0
- package/dist/components/ui/sidebar/sidebar-item-icon-button.js +20 -0
- package/dist/components/ui/sidebar/sidebar-item.d.ts +12 -0
- package/dist/components/ui/sidebar/sidebar-item.d.ts.map +1 -0
- package/dist/components/ui/sidebar/sidebar-item.js +19 -0
- package/dist/components/ui/sidebar/sidebar-provider.d.ts +8 -0
- package/dist/components/ui/sidebar/sidebar-provider.d.ts.map +1 -0
- package/dist/components/ui/sidebar/sidebar-provider.js +28 -0
- package/dist/components/ui/sidebar/sidebar-root.d.ts +3 -0
- package/dist/components/ui/sidebar/sidebar-root.d.ts.map +1 -0
- package/dist/components/ui/sidebar/sidebar-root.js +24 -0
- package/dist/components/ui/stepper/index.d.ts.map +1 -1
- package/dist/components/ui/stepper/index.js +4 -4
- package/dist/components/ui/stepper/styles.css +41 -0
- package/dist/components/ui/tabs/index.d.ts.map +1 -1
- package/dist/components/ui/tabs/index.js +4 -4
- package/dist/components/ui/tabs/styles.css +31 -0
- package/dist/components/ui/toast/toaster.js +1 -1
- package/dist/globals.css +218 -0
- package/dist/hooks/use-time.d.ts +6 -0
- package/dist/hooks/use-time.d.ts.map +1 -0
- package/dist/hooks/use-time.js +20 -0
- package/dist/index.d.ts +6 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -1
- package/dist/lib/storage/get-storage-object.d.ts +2 -0
- package/dist/lib/storage/get-storage-object.d.ts.map +1 -0
- package/dist/lib/storage/get-storage-object.js +19 -0
- package/dist/lib/storage/get-storage.d.ts +2 -0
- package/dist/lib/storage/get-storage.d.ts.map +1 -0
- package/dist/lib/storage/get-storage.js +17 -0
- package/dist/lib/storage/index.d.ts +3 -0
- package/dist/lib/storage/index.d.ts.map +1 -0
- package/dist/lib/storage/index.js +18 -0
- package/dist/public/arm.gif +0 -0
- package/dist/public/clap.gif +0 -0
- package/dist/public/confetti-ball.gif +0 -0
- package/dist/public/countries.json +21200 -21200
- package/dist/public/dizzy.gif +0 -0
- package/dist/public/electricity.gif +0 -0
- package/dist/public/gear.gif +0 -0
- package/dist/public/gem.gif +0 -0
- package/dist/public/pencil.gif +0 -0
- package/dist/public/robot.gif +0 -0
- package/dist/public/rocket.gif +0 -0
- package/dist/public/software.gif +0 -0
- package/dist/public/solar-system.gif +0 -0
- package/dist/public/unicorn.gif +0 -0
- package/package.json +22 -19
- package/dist/components/ui/input-with-icon/index.d.ts +0 -12
- package/dist/components/ui/input-with-icon/index.d.ts.map +0 -1
- package/dist/components/ui/input-with-icon/index.js +0 -57
|
@@ -4,7 +4,7 @@ exports.PaginationLimitField = void 0;
|
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const select_field_1 = require("../select-field");
|
|
6
6
|
const select_1 = require("../../../components/ui/select");
|
|
7
|
-
const PaginationLimitField = ({ options = [10, 50, 100], label = 'Items per page', control }) => {
|
|
8
|
-
return ((0, jsx_runtime_1.jsxs)("div", { className: "flex items-center gap-4", children: [(0, jsx_runtime_1.jsx)("p", { className: "text-sm font-medium whitespace-nowrap text-gray-600", children: label }), (0, jsx_runtime_1.jsx)(select_field_1.SelectField, { name: "limit", control: control, children: options.map((pageSize) => ((0, jsx_runtime_1.jsx)(select_1.SelectItem, { value: String(pageSize), children: pageSize }, pageSize))) })] }));
|
|
7
|
+
const PaginationLimitField = ({ options = [10, 50, 100], label = 'Items per page', control, ['data-testid']: dataTestId }) => {
|
|
8
|
+
return ((0, jsx_runtime_1.jsxs)("div", { className: "flex items-center gap-4", children: [(0, jsx_runtime_1.jsx)("p", { className: "text-sm font-medium whitespace-nowrap text-gray-600", children: label }), (0, jsx_runtime_1.jsx)(select_field_1.SelectField, { name: "limit", control: control, "data-testid": dataTestId, children: options.map((pageSize) => ((0, jsx_runtime_1.jsx)(select_1.SelectItem, { value: String(pageSize), children: pageSize }, pageSize))) })] }));
|
|
9
9
|
};
|
|
10
10
|
exports.PaginationLimitField = PaginationLimitField;
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { Control, FieldPath, FieldValues } from 'react-hook-form';
|
|
2
|
-
|
|
2
|
+
export type PasswordFieldProps<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = {
|
|
3
3
|
name: TName;
|
|
4
4
|
label: string;
|
|
5
5
|
tooltip?: string;
|
|
6
|
+
placeholder?: string;
|
|
6
7
|
control: Control<TFieldValues>;
|
|
7
8
|
required?: boolean;
|
|
8
9
|
disabled?: boolean;
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
export {};
|
|
10
|
+
'data-testid'?: string;
|
|
11
|
+
};
|
|
12
|
+
export declare function PasswordField<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>({ name, label, tooltip, placeholder, control, required, disabled, 'data-testid': dataTestId }: PasswordFieldProps<TFieldValues, TName>): import("react/jsx-runtime").JSX.Element;
|
|
12
13
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/form/password-field/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/form/password-field/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAajE,MAAM,MAAM,kBAAkB,CAC5B,YAAY,SAAS,WAAW,GAAG,WAAW,EAC9C,KAAK,SAAS,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,IAC7D;IACF,IAAI,EAAE,KAAK,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,CAAA;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB,CAAA;AAED,wBAAgB,aAAa,CAC3B,YAAY,SAAS,WAAW,GAAG,WAAW,EAC9C,KAAK,SAAS,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,EAC/D,EACA,IAAI,EACJ,KAAK,EACL,OAAO,EACP,WAAW,EACX,OAAO,EACP,QAAgB,EAChB,QAAgB,EAChB,aAAa,EAAE,UAAU,EAC1B,EAAE,kBAAkB,CAAC,YAAY,EAAE,KAAK,CAAC,2CAyCzC"}
|
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
6
|
exports.PasswordField = PasswordField;
|
|
4
7
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
const react_1 = require("react");
|
|
8
|
+
const react_1 = __importDefault(require("react"));
|
|
6
9
|
const form_1 = require("../../../components/ui/form");
|
|
7
10
|
const input_1 = require("../../../components/ui/input");
|
|
8
11
|
const lucide_react_1 = require("lucide-react");
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
setShowPassword(!showPassword);
|
|
14
|
-
}, children: showPassword ? (0, jsx_runtime_1.jsx)(lucide_react_1.EyeOffIcon, { size: 20 }) : (0, jsx_runtime_1.jsx)(lucide_react_1.EyeIcon, { size: 20 }) })] }), (0, jsx_runtime_1.jsx)(form_1.FormMessage, {})] })) }));
|
|
12
|
+
const icon_button_1 = require("../../../components/ui/icon-button");
|
|
13
|
+
function PasswordField({ name, label, tooltip, placeholder, control, required = false, disabled = false, 'data-testid': dataTestId }) {
|
|
14
|
+
const [show, setShow] = react_1.default.useState(false);
|
|
15
|
+
return ((0, jsx_runtime_1.jsx)(form_1.FormField, { control: control, name: name, render: ({ field }) => ((0, jsx_runtime_1.jsxs)(form_1.FormItem, { required: required, children: [(0, jsx_runtime_1.jsx)(form_1.FormLabel, { extra: tooltip ? (0, jsx_runtime_1.jsx)(form_1.FormTooltip, { children: tooltip }) : undefined, children: label }), (0, jsx_runtime_1.jsx)(form_1.FormControl, { children: (0, jsx_runtime_1.jsx)(input_1.Input, { ...field, type: show ? 'text' : 'password', placeholder: placeholder, endAdornment: (0, jsx_runtime_1.jsx)(input_1.InputAdornment, { position: "end", children: (0, jsx_runtime_1.jsx)(icon_button_1.IconButton, { variant: "outline", rounded: true, onClick: () => setShow(!show), children: show ? (0, jsx_runtime_1.jsx)(lucide_react_1.EyeOff, {}) : (0, jsx_runtime_1.jsx)(lucide_react_1.Eye, {}) }) }), disabled: disabled, className: "pr-10", "data-testid": dataTestId }) }), (0, jsx_runtime_1.jsx)(form_1.FormMessage, {})] })) }));
|
|
15
16
|
}
|
|
@@ -13,6 +13,7 @@ export type SelectFieldProps = PropsWithChildren & {
|
|
|
13
13
|
multi?: boolean;
|
|
14
14
|
required?: boolean;
|
|
15
15
|
emptyMessage?: string;
|
|
16
|
+
'data-testid'?: string;
|
|
16
17
|
};
|
|
17
18
|
export declare const SelectField: ({ name, label, tooltip, labelExtra, required, placeholder, description, disabled, readOnly, multi, control, children, emptyMessage, ...others }: SelectFieldProps) => import("react/jsx-runtime").JSX.Element;
|
|
18
19
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/form/select-field/index.tsx"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAEzC,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,GAAG;IACjD,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC5B,WAAW,CAAC,EAAE,SAAS,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAA;IACrB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,YAAY,CAAC,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/form/select-field/index.tsx"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAEzC,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,GAAG;IACjD,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC5B,WAAW,CAAC,EAAE,SAAS,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAA;IACrB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,iJAezB,gBAAgB,4CA6DlB,CAAA"}
|
|
@@ -8,7 +8,7 @@ const select_1 = require("../../../components/ui/select");
|
|
|
8
8
|
const utils_1 = require("../../../lib/utils");
|
|
9
9
|
const SelectField = ({ name, label, tooltip, labelExtra, required, placeholder, description, disabled, readOnly, multi, control, children, emptyMessage = 'No options found.', ...others }) => {
|
|
10
10
|
return ((0, jsx_runtime_1.jsx)(form_1.FormField, { name: name, control: control, ...others, render: ({ field }) => {
|
|
11
|
-
return ((0, jsx_runtime_1.jsxs)(form_1.FormItem, { required: required, children: [label && ((0, jsx_runtime_1.jsx)(form_1.FormLabel, { extra: tooltip ? (0, jsx_runtime_1.jsx)(form_1.FormTooltip, { children: tooltip }) : labelExtra, children: label })), multi ? ((0, jsx_runtime_1.jsxs)(multiple_select_1.MultipleSelect, { onValueChange: field.onChange, disabled: disabled, ...field, children: [(0, jsx_runtime_1.jsx)(multiple_select_1.MultipleSelectTrigger, { readOnly: readOnly, children: (0, jsx_runtime_1.jsx)(multiple_select_1.MultipleSelectValue, { placeholder: placeholder }) }), (0, jsx_runtime_1.jsx)(multiple_select_1.MultipleSelectContent, { children: children })] })) : ((0, jsx_runtime_1.jsxs)(select_1.Select, { onValueChange: field.onChange, value: field.value, disabled: disabled, open: readOnly ? false : undefined, onOpenChange: readOnly ? () => { } : undefined, children: [(0, jsx_runtime_1.jsx)(form_1.FormControl, { children: (0, jsx_runtime_1.jsx)(select_1.SelectTrigger, { className: (0, utils_1.cn)(disabled && 'bg-shadcn-100'), readOnly: readOnly, children: (0, jsx_runtime_1.jsx)(select_1.SelectValue, { placeholder: placeholder }) }) }), (0, jsx_runtime_1.jsxs)(select_1.SelectContent, { children: [(0, jsx_runtime_1.jsx)(select_1.SelectEmpty, { children: emptyMessage }), children] })] })), (0, jsx_runtime_1.jsx)(form_1.FormMessage, {}), description && (0, jsx_runtime_1.jsx)(form_1.FormDescription, { children: description })] }));
|
|
11
|
+
return ((0, jsx_runtime_1.jsxs)(form_1.FormItem, { required: required, children: [label && ((0, jsx_runtime_1.jsx)(form_1.FormLabel, { extra: tooltip ? (0, jsx_runtime_1.jsx)(form_1.FormTooltip, { children: tooltip }) : labelExtra, children: label })), multi ? ((0, jsx_runtime_1.jsxs)(multiple_select_1.MultipleSelect, { onValueChange: field.onChange, disabled: disabled, ...field, children: [(0, jsx_runtime_1.jsx)(multiple_select_1.MultipleSelectTrigger, { readOnly: readOnly, children: (0, jsx_runtime_1.jsx)(multiple_select_1.MultipleSelectValue, { placeholder: placeholder }) }), (0, jsx_runtime_1.jsx)(multiple_select_1.MultipleSelectContent, { children: children })] })) : ((0, jsx_runtime_1.jsxs)(select_1.Select, { onValueChange: field.onChange, value: field.value, disabled: disabled, open: readOnly ? false : undefined, onOpenChange: readOnly ? () => { } : undefined, children: [(0, jsx_runtime_1.jsx)(form_1.FormControl, { children: (0, jsx_runtime_1.jsx)(select_1.SelectTrigger, { className: (0, utils_1.cn)(disabled && 'bg-shadcn-100'), readOnly: readOnly, "data-testid": others['data-testid'], children: (0, jsx_runtime_1.jsx)(select_1.SelectValue, { placeholder: placeholder }) }) }), (0, jsx_runtime_1.jsxs)(select_1.SelectContent, { children: [(0, jsx_runtime_1.jsx)(select_1.SelectEmpty, { children: emptyMessage }), children] })] })), (0, jsx_runtime_1.jsx)(form_1.FormMessage, {}), description && (0, jsx_runtime_1.jsx)(form_1.FormDescription, { children: description })] }));
|
|
12
12
|
} }));
|
|
13
13
|
};
|
|
14
14
|
exports.SelectField = SelectField;
|
|
@@ -9,6 +9,7 @@ export type SwitchFieldProps = {
|
|
|
9
9
|
required?: boolean;
|
|
10
10
|
disabled?: boolean;
|
|
11
11
|
disabledTooltip?: string;
|
|
12
|
+
'data-testid'?: string;
|
|
12
13
|
};
|
|
13
|
-
export declare const SwitchField: ({ label, name, control, labelExtra, tooltip, required, disabled, disabledTooltip }: SwitchFieldProps) => import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
export declare const SwitchField: ({ label, name, control, labelExtra, tooltip, required, disabled, disabledTooltip, "data-testid": dataTestId }: SwitchFieldProps) => import("react/jsx-runtime").JSX.Element;
|
|
14
15
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/form/switch-field/index.tsx"],"names":[],"mappings":"AAeA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAEzC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAA;IACrB,UAAU,CAAC,EAAE,SAAS,CAAA;IACtB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,eAAe,CAAC,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/form/switch-field/index.tsx"],"names":[],"mappings":"AAeA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAEzC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAA;IACrB,UAAU,CAAC,EAAE,SAAS,CAAA;IACtB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,+GAUzB,gBAAgB,4CAiDlB,CAAA"}
|
|
@@ -5,7 +5,7 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
5
5
|
const form_1 = require("../../../components/ui/form");
|
|
6
6
|
const switch_1 = require("../../../components/ui/switch");
|
|
7
7
|
const tooltip_1 = require("../../../components/ui/tooltip");
|
|
8
|
-
const SwitchField = ({ label, name, control, labelExtra, tooltip, required, disabled, disabledTooltip }) => {
|
|
9
|
-
return ((0, jsx_runtime_1.jsx)(form_1.FormField, { name: name, control: control, render: ({ field }) => ((0, jsx_runtime_1.jsxs)(form_1.FormItem, { required: required, children: [label && ((0, jsx_runtime_1.jsx)(form_1.FormLabel, { extra: tooltip ? (0, jsx_runtime_1.jsx)(form_1.FormTooltip, { children: tooltip }) : labelExtra, children: label })), (0, jsx_runtime_1.jsx)("div", { className: "relative", children: (0, jsx_runtime_1.jsx)(form_1.FormControl, { children: disabled && disabledTooltip ? ((0, jsx_runtime_1.jsx)(tooltip_1.TooltipProvider, { 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)("div", { className: "inline-flex w-auto", children: (0, jsx_runtime_1.jsx)(switch_1.Switch, { checked: field.value, onCheckedChange: field.onChange, disabled: disabled }) }) }), (0, jsx_runtime_1.jsx)(tooltip_1.TooltipContent, { children: disabledTooltip })] }) })) : ((0, jsx_runtime_1.jsx)(switch_1.Switch, { checked: field.value, onCheckedChange: field.onChange, disabled: disabled })) }) }), (0, jsx_runtime_1.jsx)(form_1.FormMessage, {})] })) }));
|
|
8
|
+
const SwitchField = ({ label, name, control, labelExtra, tooltip, required, disabled, disabledTooltip, 'data-testid': dataTestId }) => {
|
|
9
|
+
return ((0, jsx_runtime_1.jsx)(form_1.FormField, { name: name, control: control, render: ({ field }) => ((0, jsx_runtime_1.jsxs)(form_1.FormItem, { required: required, children: [label && ((0, jsx_runtime_1.jsx)(form_1.FormLabel, { extra: tooltip ? (0, jsx_runtime_1.jsx)(form_1.FormTooltip, { children: tooltip }) : labelExtra, children: label })), (0, jsx_runtime_1.jsx)("div", { className: "relative", children: (0, jsx_runtime_1.jsx)(form_1.FormControl, { children: disabled && disabledTooltip ? ((0, jsx_runtime_1.jsx)(tooltip_1.TooltipProvider, { 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)("div", { className: "inline-flex w-auto", children: (0, jsx_runtime_1.jsx)(switch_1.Switch, { checked: field.value, onCheckedChange: field.onChange, disabled: disabled }) }) }), (0, jsx_runtime_1.jsx)(tooltip_1.TooltipContent, { children: disabledTooltip })] }) })) : ((0, jsx_runtime_1.jsx)(switch_1.Switch, { checked: field.value, onCheckedChange: field.onChange, disabled: disabled, "data-testid": dataTestId })) }) }), (0, jsx_runtime_1.jsx)(form_1.FormMessage, {})] })) }));
|
|
10
10
|
};
|
|
11
11
|
exports.SwitchField = SwitchField;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/page/index.tsx"],"names":[],"mappings":"AAEA,wBAAgB,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAW5E;AAED,wBAAgB,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/page/index.tsx"],"names":[],"mappings":"AAEA,wBAAgB,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAW5E;AAED,wBAAgB,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAQ5E;AAED,wBAAgB,WAAW,CAAC,EAC1B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAQ7B"}
|
|
@@ -6,11 +6,11 @@ exports.PageContent = PageContent;
|
|
|
6
6
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
7
7
|
const utils_1 = require("../../lib/utils");
|
|
8
8
|
function PageRoot({ className, ...props }) {
|
|
9
|
-
return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "page-root", className: (0, utils_1.cn)('
|
|
9
|
+
return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "page-root", className: (0, utils_1.cn)('text-foreground flex h-screen min-h-screen w-full flex-col overflow-y-auto bg-zinc-100', className), ...props }));
|
|
10
10
|
}
|
|
11
11
|
function PageView({ className, ...props }) {
|
|
12
|
-
return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "page-view", className: (0, utils_1.cn)('
|
|
12
|
+
return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "page-view", className: (0, utils_1.cn)('flex min-h-0 flex-1', className), ...props }));
|
|
13
13
|
}
|
|
14
14
|
function PageContent({ className, ...props }) {
|
|
15
|
-
return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "page-content", className: (0, utils_1.cn)('
|
|
15
|
+
return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "page-content", className: (0, utils_1.cn)('flex grow flex-col overflow-y-auto p-16', className), ...props }));
|
|
16
16
|
}
|
|
@@ -43,5 +43,5 @@ function PageHeaderCollapsibleInfoTrigger({ question }) {
|
|
|
43
43
|
return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "page-header-collapsible-info-trigger", children: (0, jsx_runtime_1.jsx)(collapsible_1.CollapsibleTrigger, { asChild: true, children: (0, jsx_runtime_1.jsxs)(button_1.Button, { variant: "link", className: "flex gap-2 pr-0", children: [(0, jsx_runtime_1.jsx)("span", { className: "text-sm font-medium text-[#3f3f46]", children: question }), (0, jsx_runtime_1.jsx)(lucide_react_1.HelpCircle, { className: "h-4 w-4" })] }) }) }));
|
|
44
44
|
}
|
|
45
45
|
function PageHeaderCollapsibleInfo({ question, answer, seeMore, href }) {
|
|
46
|
-
return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "page-header-collapsible-info", children: (0, jsx_runtime_1.jsx)(collapsible_1.CollapsibleContent, { children: (0, jsx_runtime_1.jsxs)("div", { className: "flex w-full justify-between", children: [(0, jsx_runtime_1.jsxs)("div", { className: "mt-12 flex flex-col gap-3", children: [(0, jsx_runtime_1.jsx)("h1", { className: "text-xl font-bold text-[#3f3f46]", children: question }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center gap-3", children: [(0, jsx_runtime_1.jsx)("p", { className: "text-shadcn-500 text-sm leading-none font-medium", children: answer }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center gap-1", children: [(0, jsx_runtime_1.jsx)("a", { target: "_blank", rel: "noopener noreferrer", href: href, className: "text-shadcn-600 justify-start text-sm font-medium underline underline-offset-4", children: seeMore }), (0, jsx_runtime_1.jsx)(lucide_react_1.ExternalLink, { size: 16 })] })] })] }), (0, jsx_runtime_1.jsx)(collapsible_1.CollapsibleTrigger, { asChild: true, children: (0, jsx_runtime_1.jsx)(button_1.Button, { variant: "
|
|
46
|
+
return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "page-header-collapsible-info", children: (0, jsx_runtime_1.jsx)(collapsible_1.CollapsibleContent, { children: (0, jsx_runtime_1.jsxs)("div", { className: "flex w-full justify-between", children: [(0, jsx_runtime_1.jsxs)("div", { className: "mt-12 flex flex-col gap-3", children: [(0, jsx_runtime_1.jsx)("h1", { className: "text-xl font-bold text-[#3f3f46]", children: question }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center gap-3", children: [(0, jsx_runtime_1.jsx)("p", { className: "text-shadcn-500 text-sm leading-none font-medium", children: answer }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center gap-1", children: [(0, jsx_runtime_1.jsx)("a", { target: "_blank", rel: "noopener noreferrer", href: href, className: "text-shadcn-600 justify-start text-sm font-medium underline underline-offset-4", children: seeMore }), (0, jsx_runtime_1.jsx)(lucide_react_1.ExternalLink, { size: 16 })] })] })] }), (0, jsx_runtime_1.jsx)(collapsible_1.CollapsibleTrigger, { asChild: true, children: (0, jsx_runtime_1.jsx)(button_1.Button, { variant: "link", className: "cursor-pointer self-start", children: (0, jsx_runtime_1.jsx)(lucide_react_1.ChevronUp, { size: 24, className: "text-shadcn-500" }) }) })] }) }) }));
|
|
47
47
|
}
|
|
@@ -5,6 +5,6 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
5
5
|
const button_1 = require("../ui/button");
|
|
6
6
|
const lucide_react_1 = require("lucide-react");
|
|
7
7
|
const Pagination = ({ page, limit, total = 0, previousLabel, nextLabel, nextPage, previousPage }) => {
|
|
8
|
-
return ((0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-end space-x-2", children: [(0, jsx_runtime_1.jsx)(button_1.Button, { variant: "outline", size: "
|
|
8
|
+
return ((0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-end space-x-2", children: [(0, jsx_runtime_1.jsx)(button_1.Button, { variant: "outline", size: "small", onClick: previousPage, disabled: page <= 1, icon: (0, jsx_runtime_1.jsx)(lucide_react_1.ChevronLeft, { size: 16 }), iconPlacement: "start", children: previousLabel }), (0, jsx_runtime_1.jsx)(button_1.Button, { variant: "outline", size: "small", onClick: nextPage, disabled: total < limit, icon: (0, jsx_runtime_1.jsx)(lucide_react_1.ChevronRight, { size: 16 }), iconPlacement: "end", children: nextLabel })] }));
|
|
9
9
|
};
|
|
10
10
|
exports.Pagination = Pagination;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
import { TableCell } from '../../components/ui/table';
|
|
2
|
+
export type IdTableCellProps = Omit<React.ComponentProps<typeof TableCell>, 'onCopy'> & {
|
|
2
3
|
id?: string;
|
|
3
4
|
onCopy?: (id: string) => void;
|
|
4
5
|
};
|
|
5
|
-
export declare const IdTableCell: ({ id, onCopy }: IdTableCellProps) => import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export declare const IdTableCell: ({ id, onCopy, ...others }: IdTableCellProps) => import("react/jsx-runtime").JSX.Element;
|
|
6
7
|
//# sourceMappingURL=id-table-cell.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"id-table-cell.d.ts","sourceRoot":"","sources":["../../../src/components/table/id-table-cell.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"id-table-cell.d.ts","sourceRoot":"","sources":["../../../src/components/table/id-table-cell.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAGV,MAAM,uBAAuB,CAAA;AAU9B,MAAM,MAAM,gBAAgB,GAAG,IAAI,CACjC,KAAK,CAAC,cAAc,CAAC,OAAO,SAAS,CAAC,EACtC,QAAQ,CACT,GAAG;IACF,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;CAC9B,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,2BAA2B,gBAAgB,4CAqBtE,CAAA"}
|
|
@@ -6,11 +6,11 @@ const table_1 = require("../../components/ui/table");
|
|
|
6
6
|
const tooltip_1 = require("../../components/ui/tooltip");
|
|
7
7
|
const lodash_1 = require("lodash");
|
|
8
8
|
const lucide_react_1 = require("lucide-react");
|
|
9
|
-
const IdTableCell = ({ id, onCopy }) => {
|
|
9
|
+
const IdTableCell = ({ id, onCopy, ...others }) => {
|
|
10
10
|
const handleCopyToClipboard = () => {
|
|
11
11
|
navigator.clipboard.writeText(id);
|
|
12
12
|
onCopy?.(id);
|
|
13
13
|
};
|
|
14
|
-
return ((0, jsx_runtime_1.jsx)(table_1.TableCell, { onClick: handleCopyToClipboard, children: (0, jsx_runtime_1.jsxs)(table_1.TableCellWrapper, { children: [(0, jsx_runtime_1.jsx)(tooltip_1.TooltipProvider, { children: (0, jsx_runtime_1.jsxs)(tooltip_1.Tooltip, { delayDuration: 300, children: [(0, jsx_runtime_1.jsx)(tooltip_1.TooltipTrigger, { children: (0, lodash_1.truncate)(id, { length: 16 }) }), (0, jsx_runtime_1.jsx)(tooltip_1.TooltipContent, { children: id })] }) }), (0, jsx_runtime_1.jsx)(table_1.TableCellAction, { children: (0, jsx_runtime_1.jsx)(lucide_react_1.Copy, { className: "size-3.5" }) })] }) }));
|
|
14
|
+
return ((0, jsx_runtime_1.jsx)(table_1.TableCell, { onClick: handleCopyToClipboard, ...others, children: (0, jsx_runtime_1.jsxs)(table_1.TableCellWrapper, { children: [(0, jsx_runtime_1.jsx)(tooltip_1.TooltipProvider, { children: (0, jsx_runtime_1.jsxs)(tooltip_1.Tooltip, { delayDuration: 300, children: [(0, jsx_runtime_1.jsx)(tooltip_1.TooltipTrigger, { children: (0, lodash_1.truncate)(id, { length: 16 }) }), (0, jsx_runtime_1.jsx)(tooltip_1.TooltipContent, { children: id })] }) }), (0, jsx_runtime_1.jsx)(table_1.TableCellAction, { children: (0, jsx_runtime_1.jsx)(lucide_react_1.Copy, { className: "size-3.5" }) })] }) }));
|
|
15
15
|
};
|
|
16
16
|
exports.IdTableCell = IdTableCell;
|
|
@@ -6,6 +6,6 @@ const lucide_react_1 = require("lucide-react");
|
|
|
6
6
|
const tooltip_1 = require("../../components/ui/tooltip");
|
|
7
7
|
const utils_1 = require("../../lib/utils");
|
|
8
8
|
const LockedTableActions = ({ message, className }) => {
|
|
9
|
-
return ((0, jsx_runtime_1.jsx)(tooltip_1.TooltipProvider, { 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)("div", { className: (0, utils_1.cn)('border-border bg-muted flex
|
|
9
|
+
return ((0, jsx_runtime_1.jsx)(tooltip_1.TooltipProvider, { 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)("div", { className: (0, utils_1.cn)('border-border bg-muted flex size-9 items-center justify-center rounded-md border', className), children: (0, jsx_runtime_1.jsx)(lucide_react_1.LockIcon, { size: 14, className: "text-muted-foreground" }) }) }), (0, jsx_runtime_1.jsx)(tooltip_1.TooltipContent, { side: "left", children: message })] }) }));
|
|
10
10
|
};
|
|
11
11
|
exports.LockedTableActions = LockedTableActions;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { type VariantProps } from 'class-variance-authority';
|
|
3
|
+
import { IconButton } from '../icon-button';
|
|
3
4
|
declare const alertVariants: (props?: ({
|
|
4
5
|
variant?: "default" | "informative" | "destructive" | "warning" | "success" | null | undefined;
|
|
5
6
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
@@ -7,5 +8,8 @@ export type AlertProps = React.ComponentProps<'div'> & VariantProps<typeof alert
|
|
|
7
8
|
declare function Alert({ className, variant, ...props }: AlertProps): import("react/jsx-runtime").JSX.Element;
|
|
8
9
|
declare function AlertTitle({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
|
|
9
10
|
declare function AlertDescription({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
|
|
10
|
-
|
|
11
|
+
declare function AlertActions({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
declare function AlertTopAction({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
declare function AlertClose({ className, ...props }: React.ComponentProps<typeof IconButton>): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
export { Alert, AlertTitle, AlertDescription, AlertActions, AlertTopAction, AlertClose };
|
|
11
15
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/alert/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/alert/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAGjE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAG3C,QAAA,MAAM,aAAa;;8EAajB,CAAA;AAEF,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAClD,YAAY,CAAC,OAAO,aAAa,CAAC,CAAA;AAEpC,iBAAS,KAAK,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,KAAK,EAAE,EAAE,UAAU,2CAS1D;AAED,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAQvE;AAED,iBAAS,gBAAgB,CAAC,EACxB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAQ7B;AAED,iBAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAQzE;AAED,iBAAS,cAAc,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAQ3E;AAED,iBAAS,UAAU,CAAC,EAClB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,UAAU,CAAC,2CAczC;AAED,OAAO,EACL,KAAK,EACL,UAAU,EACV,gBAAgB,EAChB,YAAY,EACZ,cAAc,EACd,UAAU,EACX,CAAA"}
|
|
@@ -3,17 +3,22 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.Alert = Alert;
|
|
4
4
|
exports.AlertTitle = AlertTitle;
|
|
5
5
|
exports.AlertDescription = AlertDescription;
|
|
6
|
+
exports.AlertActions = AlertActions;
|
|
7
|
+
exports.AlertTopAction = AlertTopAction;
|
|
8
|
+
exports.AlertClose = AlertClose;
|
|
6
9
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
7
10
|
const class_variance_authority_1 = require("class-variance-authority");
|
|
8
11
|
const utils_1 = require("../../../lib/utils");
|
|
9
|
-
const
|
|
12
|
+
const icon_button_1 = require("../icon-button");
|
|
13
|
+
const lucide_react_1 = require("lucide-react");
|
|
14
|
+
const alertVariants = (0, class_variance_authority_1.cva)('alert', {
|
|
10
15
|
variants: {
|
|
11
16
|
variant: {
|
|
12
|
-
default: '
|
|
13
|
-
informative: '
|
|
14
|
-
destructive: '
|
|
15
|
-
warning: '
|
|
16
|
-
success: '
|
|
17
|
+
default: '',
|
|
18
|
+
informative: 'alert-informative',
|
|
19
|
+
destructive: 'alert-destructive',
|
|
20
|
+
warning: 'alert-warning',
|
|
21
|
+
success: 'alert-success'
|
|
17
22
|
}
|
|
18
23
|
},
|
|
19
24
|
defaultVariants: {
|
|
@@ -24,8 +29,17 @@ function Alert({ className, variant, ...props }) {
|
|
|
24
29
|
return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "alert", role: "alert", className: (0, utils_1.cn)(alertVariants({ variant }), className), ...props }));
|
|
25
30
|
}
|
|
26
31
|
function AlertTitle({ className, ...props }) {
|
|
27
|
-
return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "alert-title", className: (0, utils_1.cn)('
|
|
32
|
+
return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "alert-title", className: (0, utils_1.cn)('alert-title', className), ...props }));
|
|
28
33
|
}
|
|
29
34
|
function AlertDescription({ className, ...props }) {
|
|
30
|
-
return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "alert-description", className: (0, utils_1.cn)('
|
|
35
|
+
return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "alert-description", className: (0, utils_1.cn)('alert-description', className), ...props }));
|
|
36
|
+
}
|
|
37
|
+
function AlertActions({ className, ...props }) {
|
|
38
|
+
return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "alert-actions", className: (0, utils_1.cn)('alert-actions', className), ...props }));
|
|
39
|
+
}
|
|
40
|
+
function AlertTopAction({ className, ...props }) {
|
|
41
|
+
return ((0, jsx_runtime_1.jsx)("div", { "data-slot": "alert-top-action", className: (0, utils_1.cn)('alert-top-action', className), ...props }));
|
|
42
|
+
}
|
|
43
|
+
function AlertClose({ className, ...props }) {
|
|
44
|
+
return ((0, jsx_runtime_1.jsx)(AlertTopAction, { children: (0, jsx_runtime_1.jsx)(icon_button_1.IconButton, { className: (0, utils_1.cn)('alert-close', className), variant: "outline", size: "small", rounded: true, ...props, children: (0, jsx_runtime_1.jsx)(lucide_react_1.X, {}) }) }));
|
|
31
45
|
}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
@theme inline {
|
|
2
|
+
--spacing-alert-p: calc(var(--spacing) * 4.5);
|
|
3
|
+
--text-alert-title: var(--text-sm);
|
|
4
|
+
--text-alert-description: 13px;
|
|
5
|
+
--spacing-alert-icon-size: calc(var(--spacing) * 5);
|
|
6
|
+
|
|
7
|
+
/* Variants */
|
|
8
|
+
--color-alert-text: var(--color-zinc-700);
|
|
9
|
+
--color-alert-informative: var(--color-blue-50);
|
|
10
|
+
--color-alert-informative-border: var(--color-blue-600);
|
|
11
|
+
--color-alert-informative-text: var(--color-blue-800);
|
|
12
|
+
--color-alert-warning: var(--color-yellow-50);
|
|
13
|
+
--color-alert-warning-border: var(--color-yellow-500);
|
|
14
|
+
--color-alert-warning-text: var(--color-yellow-800);
|
|
15
|
+
--color-alert-success: var(--color-green-50);
|
|
16
|
+
--color-alert-success-border: var(--color-green-600);
|
|
17
|
+
--color-alert-success-text: var(--color-green-800);
|
|
18
|
+
--color-alert-destructive: var(--color-red-50);
|
|
19
|
+
--color-alert-destructive-border: var(--color-red-600);
|
|
20
|
+
--color-alert-destructive-text: var(--color-red-800);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
@layer components {
|
|
24
|
+
.alert {
|
|
25
|
+
@apply relative w-full rounded-lg bg-white p-alert-p text-alert-text;
|
|
26
|
+
@apply [&>svg]:size-alert-icon-size [&>svg~*]:pl-9.5 [&>svg]:absolute [&>svg]:left-4.5 [&>svg]:top-4.5 [&>svg]:text-alert-text;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.alert-informative {
|
|
30
|
+
@apply bg-alert-informative border border-alert-informative-border/50 text-alert-informative-text;
|
|
31
|
+
@apply [&>svg]:text-alert-informative-border [&>div:nth-child(3)]:text-alert-informative-text/70;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.alert-warning {
|
|
35
|
+
@apply bg-alert-warning border border-alert-warning-border/50 text-alert-warning-text;
|
|
36
|
+
@apply [&>svg]:text-alert-warning-border [&>div:nth-child(3)]:text-alert-warning-text/70;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
.alert-success {
|
|
40
|
+
@apply bg-alert-success border border-alert-success-border/50 text-alert-success-text;
|
|
41
|
+
@apply [&>svg]:text-alert-success-border [&>div:nth-child(3)]:text-alert-success-text/70;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.alert-destructive {
|
|
45
|
+
@apply bg-alert-destructive border border-alert-destructive-border/50 text-alert-destructive-text;
|
|
46
|
+
@apply [&>svg]:text-alert-destructive-border [&>div:nth-child(3)]:text-alert-destructive-text/70;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.alert-title {
|
|
50
|
+
@apply text-alert-title font-medium mb-2 leading-none tracking-tight;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.alert-description {
|
|
54
|
+
@apply text-alert-description font-normal [&_p]:leading-relaxed;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.alert-actions {
|
|
58
|
+
@apply flex mt-3.5 gap-5;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
.alert-top-action {
|
|
62
|
+
@apply !pl-0 absolute top-2 right-2 flex gap-2;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
.alert-close {
|
|
66
|
+
@apply text-inherit;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { type VariantProps } from 'class-variance-authority';
|
|
3
3
|
declare const badgeVariants: (props?: ({
|
|
4
|
-
variant?: "default" | "
|
|
4
|
+
variant?: "default" | "secondary" | "outline" | "destructive" | "active" | "inactive" | null | undefined;
|
|
5
5
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
6
6
|
export type BadgeProps = React.ComponentProps<'span'> & VariantProps<typeof badgeVariants> & {
|
|
7
7
|
asChild?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/breadcrumb/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAM9B,iBAAS,UAAU,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAE5D;AAED,iBAAS,cAAc,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/breadcrumb/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAM9B,iBAAS,UAAU,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAE5D;AAED,iBAAS,cAAc,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,2CAQ1E;AAED,iBAAS,cAAc,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,2CAQ1E;AAED,iBAAS,cAAc,CAAC,EACtB,OAAO,EACP,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,2CAUA;AAED,iBAAS,cAAc,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,2CAW5E;AAED,iBAAS,mBAAmB,CAAC,EAC3B,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,2CAY5B;AAED,iBAAS,kBAAkB,CAAC,EAC1B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,2CAa9B;AAED,OAAO,EACL,UAAU,EACV,cAAc,EACd,cAAc,EACd,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EACnB,CAAA"}
|
|
@@ -15,20 +15,20 @@ function Breadcrumb({ ...props }) {
|
|
|
15
15
|
return (0, jsx_runtime_1.jsx)("nav", { "aria-label": "breadcrumb", "data-slot": "breadcrumb", ...props });
|
|
16
16
|
}
|
|
17
17
|
function BreadcrumbList({ className, ...props }) {
|
|
18
|
-
return ((0, jsx_runtime_1.jsx)("ol", { "data-slot": "breadcrumb-list", className: (0, utils_1.cn)('
|
|
18
|
+
return ((0, jsx_runtime_1.jsx)("ol", { "data-slot": "breadcrumb-list", className: (0, utils_1.cn)('breadcrumb-list', className), ...props }));
|
|
19
19
|
}
|
|
20
20
|
function BreadcrumbItem({ className, ...props }) {
|
|
21
|
-
return ((0, jsx_runtime_1.jsx)("li", { "data-slot": "breadcrumb-item", className: (0, utils_1.cn)('
|
|
21
|
+
return ((0, jsx_runtime_1.jsx)("li", { "data-slot": "breadcrumb-item", className: (0, utils_1.cn)('breadcrumb-item', className), ...props }));
|
|
22
22
|
}
|
|
23
23
|
function BreadcrumbLink({ asChild, className, ...props }) {
|
|
24
24
|
const Comp = asChild ? react_slot_1.Slot : 'a';
|
|
25
|
-
return ((0, jsx_runtime_1.jsx)(Comp, { "data-slot": "breadcrumb-link", className: (0, utils_1.cn)('
|
|
25
|
+
return ((0, jsx_runtime_1.jsx)(Comp, { "data-slot": "breadcrumb-link", className: (0, utils_1.cn)('breadcrumb-link', className), ...props }));
|
|
26
26
|
}
|
|
27
27
|
function BreadcrumbPage({ className, ...props }) {
|
|
28
|
-
return ((0, jsx_runtime_1.jsx)("span", { "data-slot": "breadcrumb-page", role: "link", "aria-disabled": "true", "aria-current": "page", className: (0, utils_1.cn)('
|
|
28
|
+
return ((0, jsx_runtime_1.jsx)("span", { "data-slot": "breadcrumb-page", role: "link", "aria-disabled": "true", "aria-current": "page", className: (0, utils_1.cn)('breadcrumb-page', className), ...props }));
|
|
29
29
|
}
|
|
30
30
|
function BreadcrumbSeparator({ children, className, ...props }) {
|
|
31
|
-
return ((0, jsx_runtime_1.jsx)("li", { "data-slot": "breadcrumb-separator", role: "presentation", "aria-hidden": "true", className: (0, utils_1.cn)('
|
|
31
|
+
return ((0, jsx_runtime_1.jsx)("li", { "data-slot": "breadcrumb-separator", role: "presentation", "aria-hidden": "true", className: (0, utils_1.cn)('breadcrumb-separator', className), ...props, children: children ?? (0, jsx_runtime_1.jsx)(lucide_react_1.Slash, {}) }));
|
|
32
32
|
}
|
|
33
33
|
function BreadcrumbEllipsis({ className, ...props }) {
|
|
34
34
|
return ((0, jsx_runtime_1.jsxs)("span", { "data-slot": "breadcrumb-ellipsis", role: "presentation", "aria-hidden": "true", className: (0, utils_1.cn)('flex h-9 w-9 items-center justify-center', className), ...props, children: [(0, jsx_runtime_1.jsx)(lucide_react_1.MoreHorizontal, { className: "h-4 w-4" }), (0, jsx_runtime_1.jsx)("span", { className: "sr-only", children: "More" })] }));
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
@theme inline {
|
|
2
|
+
--color-breadcrumb-link-foreground: var(--color-zinc-700);
|
|
3
|
+
--color-breadcrumb-link-foreground-hover: var(--color-zinc-900);
|
|
4
|
+
--color-breadcrumb-muted-foreground: var(--color-shadcn-400);
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
@layer components {
|
|
8
|
+
.breadcrumb-list {
|
|
9
|
+
@apply flex flex-wrap items-center gap-2 text-xs font-medium break-words sm:gap-2.5;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.breadcrumb-item {
|
|
13
|
+
@apply inline-flex items-center gap-1.5;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.breadcrumb-link {
|
|
17
|
+
@apply text-breadcrumb-link-foreground underline cursor-pointer hover:text-breadcrumb-link-foreground-hover transition-colors;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.breadcrumb-page {
|
|
21
|
+
@apply text-breadcrumb-muted-foreground;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.breadcrumb-separator {
|
|
25
|
+
@apply text-breadcrumb-muted-foreground [&>svg]:size-2.5;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { type VariantProps } from 'class-variance-authority';
|
|
3
3
|
declare const buttonVariants: (props?: ({
|
|
4
|
-
variant?: "default" | "
|
|
5
|
-
|
|
4
|
+
variant?: "default" | "plain" | "hoverLink" | "primary" | "secondary" | "tertiary" | "outline" | "link" | null | undefined;
|
|
5
|
+
fullWidth?: boolean | null | undefined;
|
|
6
|
+
size?: "default" | "small" | null | undefined;
|
|
7
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
8
|
+
declare const iconVariants: (props?: ({
|
|
9
|
+
position?: "start" | "end" | "far-end" | null | undefined;
|
|
10
|
+
size?: "default" | "small" | null | undefined;
|
|
6
11
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
7
12
|
export type ButtonProps = React.ComponentProps<'button'> & VariantProps<typeof buttonVariants> & {
|
|
8
13
|
asChild?: boolean;
|
|
@@ -13,5 +18,5 @@ export type ButtonProps = React.ComponentProps<'button'> & VariantProps<typeof b
|
|
|
13
18
|
readOnly?: boolean;
|
|
14
19
|
};
|
|
15
20
|
declare function Button({ className, variant, size, asChild, icon, iconPlacement, fullWidth, readOnly, onClick, ...props }: ButtonProps): import("react/jsx-runtime").JSX.Element;
|
|
16
|
-
export { Button, buttonVariants };
|
|
21
|
+
export { Button, buttonVariants, iconVariants };
|
|
17
22
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/button/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAIjE,QAAA,MAAM,cAAc;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/button/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAIjE,QAAA,MAAM,cAAc;;;;8EA0BlB,CAAA;AAEF,QAAA,MAAM,YAAY;;;8EAgBhB,CAAA;AAEF,MAAM,MAAM,WAAW,GAAG,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,GACtD,YAAY,CAAC,OAAO,cAAc,CAAC,GAAG;IACpC,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,GAAG;IACF,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACtB,aAAa,CAAC,EAAE,OAAO,GAAG,KAAK,GAAG,SAAS,CAAA;IAC3C,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,CAAA;AAEH,iBAAS,MAAM,CAAC,EACd,SAAS,EACT,OAAO,EACP,IAAI,EACJ,OAAe,EACf,IAAI,EACJ,aAAuB,EACvB,SAAiB,EACjB,QAAgB,EAChB,OAAO,EACP,GAAG,KAAK,EACT,EAAE,WAAW,2CAgCb;AAED,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,CAAA"}
|
|
@@ -1,32 +1,30 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.buttonVariants = void 0;
|
|
3
|
+
exports.iconVariants = exports.buttonVariants = void 0;
|
|
4
4
|
exports.Button = Button;
|
|
5
5
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
6
|
const react_slot_1 = require("@radix-ui/react-slot");
|
|
7
7
|
const class_variance_authority_1 = require("class-variance-authority");
|
|
8
8
|
const utils_1 = require("../../../lib/utils");
|
|
9
|
-
const buttonVariants = (0, class_variance_authority_1.cva)('
|
|
9
|
+
const buttonVariants = (0, class_variance_authority_1.cva)('button-base button-disabled button-read-only', {
|
|
10
10
|
variants: {
|
|
11
11
|
variant: {
|
|
12
|
-
plain: '',
|
|
13
|
-
white: 'bg-white text-black font-semibold',
|
|
14
|
-
activeLink: 'bg-shadcn-100 text-black font-medium',
|
|
12
|
+
plain: 'button-plain',
|
|
15
13
|
hoverLink: 'hover:bg-accent text-black hover:text-accent-foreground font-normal',
|
|
16
|
-
default: '
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
link: '
|
|
14
|
+
default: 'button-primary',
|
|
15
|
+
primary: 'button-primary',
|
|
16
|
+
secondary: 'button-secondary',
|
|
17
|
+
tertiary: 'button-tertiary',
|
|
18
|
+
outline: 'button-outline',
|
|
19
|
+
link: 'button-link'
|
|
20
|
+
},
|
|
21
|
+
fullWidth: {
|
|
22
|
+
true: 'w-full',
|
|
23
|
+
false: 'w-fit'
|
|
22
24
|
},
|
|
23
25
|
size: {
|
|
24
|
-
default: '
|
|
25
|
-
|
|
26
|
-
lg: 'h-12 rounded-md px-8',
|
|
27
|
-
icon: 'h-10 w-10',
|
|
28
|
-
link: 'p-0 w-auto h-auto',
|
|
29
|
-
xl: 'h-14 p-4'
|
|
26
|
+
default: '',
|
|
27
|
+
small: 'button-small'
|
|
30
28
|
}
|
|
31
29
|
},
|
|
32
30
|
defaultVariants: {
|
|
@@ -43,18 +41,16 @@ const iconVariants = (0, class_variance_authority_1.cva)('', {
|
|
|
43
41
|
'far-end': 'absolute right-2'
|
|
44
42
|
},
|
|
45
43
|
size: {
|
|
46
|
-
default: '
|
|
47
|
-
|
|
48
|
-
lg: 'h-12',
|
|
49
|
-
icon: 'h-10',
|
|
50
|
-
link: 'h-6',
|
|
51
|
-
xl: 'h-14'
|
|
44
|
+
default: '[&>*]:size-6',
|
|
45
|
+
small: '[&>*]:size-4'
|
|
52
46
|
}
|
|
53
47
|
},
|
|
54
48
|
defaultVariants: {
|
|
55
|
-
position: 'start'
|
|
49
|
+
position: 'start',
|
|
50
|
+
size: 'default'
|
|
56
51
|
}
|
|
57
52
|
});
|
|
53
|
+
exports.iconVariants = iconVariants;
|
|
58
54
|
function Button({ className, variant, size, asChild = false, icon, iconPlacement = 'start', fullWidth = false, readOnly = false, onClick, ...props }) {
|
|
59
55
|
const Comp = asChild ? react_slot_1.Slot : 'button';
|
|
60
56
|
const handleClick = (e) => {
|
|
@@ -64,9 +60,5 @@ function Button({ className, variant, size, asChild = false, icon, iconPlacement
|
|
|
64
60
|
}
|
|
65
61
|
onClick?.(e);
|
|
66
62
|
};
|
|
67
|
-
return ((0, jsx_runtime_1.jsxs)(Comp, { className: (0, utils_1.cn)(buttonVariants({ variant, size, className }), {
|
|
68
|
-
'w-full': fullWidth
|
|
69
|
-
}, {
|
|
70
|
-
'data-read-only:bg-shadcn-200 data-read-only:text-shadcn-600 data-read-only:cursor-default data-read-only:opacity-50 data-read-only:focus:ring-0 data-read-only:focus:outline-hidden': readOnly
|
|
71
|
-
}), "data-read-only": readOnly, "data-slot": "button", ...props, onClick: handleClick, children: [icon && iconPlacement === 'start' && ((0, jsx_runtime_1.jsx)("span", { className: (0, utils_1.cn)(iconVariants({ position: iconPlacement })), children: icon })), props.children, icon && iconPlacement !== 'start' && ((0, jsx_runtime_1.jsx)("span", { className: (0, utils_1.cn)(iconVariants({ position: iconPlacement })), children: icon }))] }));
|
|
63
|
+
return ((0, jsx_runtime_1.jsxs)(Comp, { className: (0, utils_1.cn)(buttonVariants({ variant, size, fullWidth }), className), "data-read-only": readOnly, "data-slot": "button", ...props, onClick: handleClick, children: [icon && iconPlacement === 'start' && ((0, jsx_runtime_1.jsx)("span", { className: (0, utils_1.cn)(iconVariants({ position: iconPlacement, size })), children: icon })), props.children, icon && iconPlacement !== 'start' && ((0, jsx_runtime_1.jsx)("span", { className: (0, utils_1.cn)(iconVariants({ position: iconPlacement, size })), children: icon }))] }));
|
|
72
64
|
}
|