@pixpilot/shadcn-ui 0.16.1 → 0.18.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.
- package/dist/Select.cjs +8 -5
- package/dist/Select.d.cts +3 -2
- package/dist/Select.d.ts +3 -2
- package/dist/Select.js +8 -5
- package/dist/file-upload/FileUpload.d.ts +2 -2
- package/dist/file-upload-inline/FileUploadInline.d.ts +2 -2
- package/dist/icon-selector/icon-picker-content.cjs +3 -1
- package/dist/icon-selector/icon-picker-content.js +4 -2
- package/dist/index.cjs +5 -0
- package/dist/index.d.cts +4 -1
- package/dist/index.d.ts +4 -1
- package/dist/index.js +4 -1
- package/dist/input/Input.cjs +41 -0
- package/dist/input/Input.d.cts +15 -0
- package/dist/input/Input.d.ts +15 -0
- package/dist/input/Input.js +37 -0
- package/dist/input/index.cjs +1 -0
- package/dist/input/index.d.cts +1 -0
- package/dist/input/index.d.ts +1 -0
- package/dist/input/index.js +1 -0
- package/dist/layout/Layout.cjs +2 -2
- package/dist/layout/Layout.d.cts +3 -1
- package/dist/layout/Layout.d.ts +3 -1
- package/dist/layout/Layout.js +2 -2
- package/dist/layout/LayoutFooter.cjs +1 -1
- package/dist/layout/LayoutFooter.d.cts +3 -1
- package/dist/layout/LayoutFooter.d.ts +3 -1
- package/dist/layout/LayoutFooter.js +1 -1
- package/dist/layout/LayoutHeader.cjs +1 -1
- package/dist/layout/LayoutHeader.d.cts +3 -1
- package/dist/layout/LayoutHeader.d.ts +3 -1
- package/dist/layout/LayoutHeader.js +1 -1
- package/dist/layout/LayoutMain.cjs +2 -2
- package/dist/layout/LayoutMain.d.cts +3 -2
- package/dist/layout/LayoutMain.d.ts +3 -2
- package/dist/layout/LayoutMain.js +2 -2
- package/dist/slider/SliderInput.cjs +5 -3
- package/dist/slider/SliderInput.d.cts +3 -1
- package/dist/slider/SliderInput.d.ts +3 -1
- package/dist/slider/SliderInput.js +4 -3
- package/dist/slider/SliderSelect.cjs +99 -0
- package/dist/slider/SliderSelect.d.cts +27 -0
- package/dist/slider/SliderSelect.d.ts +27 -0
- package/dist/slider/SliderSelect.js +95 -0
- package/dist/slider/index.cjs +1 -0
- package/dist/slider/index.d.cts +2 -1
- package/dist/slider/index.d.ts +2 -1
- package/dist/slider/index.js +1 -0
- package/package.json +2 -2
package/dist/Select.cjs
CHANGED
|
@@ -8,7 +8,7 @@ react_jsx_runtime = require_rolldown_runtime.__toESM(react_jsx_runtime);
|
|
|
8
8
|
|
|
9
9
|
//#region src/Select.tsx
|
|
10
10
|
function Select(props) {
|
|
11
|
-
const { options, value = "", onChange, placeholder,...restProps } = props;
|
|
11
|
+
const { options, value = "", onChange, placeholder, contentProps,...restProps } = props;
|
|
12
12
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(__pixpilot_shadcn.Select, {
|
|
13
13
|
value,
|
|
14
14
|
onValueChange: onChange,
|
|
@@ -16,10 +16,13 @@ function Select(props) {
|
|
|
16
16
|
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(__pixpilot_shadcn.SelectTrigger, {
|
|
17
17
|
className: "w-full",
|
|
18
18
|
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__pixpilot_shadcn.SelectValue, { placeholder })
|
|
19
|
-
}), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__pixpilot_shadcn.SelectContent, {
|
|
20
|
-
|
|
21
|
-
children: option.
|
|
22
|
-
|
|
19
|
+
}), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__pixpilot_shadcn.SelectContent, {
|
|
20
|
+
...contentProps,
|
|
21
|
+
children: options?.map((option) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__pixpilot_shadcn.SelectItem, {
|
|
22
|
+
value: String(option.value),
|
|
23
|
+
children: option.label
|
|
24
|
+
}, option.value))
|
|
25
|
+
})]
|
|
23
26
|
});
|
|
24
27
|
}
|
|
25
28
|
|
package/dist/Select.d.cts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as react_jsx_runtime3 from "react/jsx-runtime";
|
|
2
|
-
import { Select } from "@pixpilot/shadcn";
|
|
3
|
-
import { ComponentProps } from "react";
|
|
2
|
+
import { Select, SelectContent } from "@pixpilot/shadcn";
|
|
3
|
+
import React, { ComponentProps } from "react";
|
|
4
4
|
|
|
5
5
|
//#region src/Select.d.ts
|
|
6
6
|
interface SelectOption {
|
|
@@ -9,6 +9,7 @@ interface SelectOption {
|
|
|
9
9
|
}
|
|
10
10
|
type BaseSelectProps = {
|
|
11
11
|
options?: SelectOption[];
|
|
12
|
+
contentProps?: React.ComponentProps<typeof SelectContent>;
|
|
12
13
|
value?: string;
|
|
13
14
|
onChange?: (value: string) => void;
|
|
14
15
|
placeholder?: string;
|
package/dist/Select.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Select } from "@pixpilot/shadcn";
|
|
2
|
-
import { ComponentProps } from "react";
|
|
1
|
+
import { Select, SelectContent } from "@pixpilot/shadcn";
|
|
2
|
+
import React, { ComponentProps } from "react";
|
|
3
3
|
import * as react_jsx_runtime3 from "react/jsx-runtime";
|
|
4
4
|
|
|
5
5
|
//#region src/Select.d.ts
|
|
@@ -9,6 +9,7 @@ interface SelectOption {
|
|
|
9
9
|
}
|
|
10
10
|
type BaseSelectProps = {
|
|
11
11
|
options?: SelectOption[];
|
|
12
|
+
contentProps?: React.ComponentProps<typeof SelectContent>;
|
|
12
13
|
value?: string;
|
|
13
14
|
onChange?: (value: string) => void;
|
|
14
15
|
placeholder?: string;
|
package/dist/Select.js
CHANGED
|
@@ -4,7 +4,7 @@ import { jsx, jsxs } from "react/jsx-runtime";
|
|
|
4
4
|
|
|
5
5
|
//#region src/Select.tsx
|
|
6
6
|
function Select$1(props) {
|
|
7
|
-
const { options, value = "", onChange, placeholder,...restProps } = props;
|
|
7
|
+
const { options, value = "", onChange, placeholder, contentProps,...restProps } = props;
|
|
8
8
|
return /* @__PURE__ */ jsxs(Select, {
|
|
9
9
|
value,
|
|
10
10
|
onValueChange: onChange,
|
|
@@ -12,10 +12,13 @@ function Select$1(props) {
|
|
|
12
12
|
children: [/* @__PURE__ */ jsx(SelectTrigger, {
|
|
13
13
|
className: "w-full",
|
|
14
14
|
children: /* @__PURE__ */ jsx(SelectValue, { placeholder })
|
|
15
|
-
}), /* @__PURE__ */ jsx(SelectContent, {
|
|
16
|
-
|
|
17
|
-
children: option
|
|
18
|
-
|
|
15
|
+
}), /* @__PURE__ */ jsx(SelectContent, {
|
|
16
|
+
...contentProps,
|
|
17
|
+
children: options?.map((option) => /* @__PURE__ */ jsx(SelectItem, {
|
|
18
|
+
value: String(option.value),
|
|
19
|
+
children: option.label
|
|
20
|
+
}, option.value))
|
|
21
|
+
})]
|
|
19
22
|
});
|
|
20
23
|
}
|
|
21
24
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { FileUploadProps } from "./types/index.js";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react_jsx_runtime7 from "react/jsx-runtime";
|
|
3
3
|
|
|
4
4
|
//#region src/file-upload/FileUpload.d.ts
|
|
5
|
-
declare function FileUpload(props: FileUploadProps):
|
|
5
|
+
declare function FileUpload(props: FileUploadProps): react_jsx_runtime7.JSX.Element;
|
|
6
6
|
//#endregion
|
|
7
7
|
export { FileUpload };
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { FileUploadInlineProps } from "./types.js";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react_jsx_runtime8 from "react/jsx-runtime";
|
|
3
3
|
|
|
4
4
|
//#region src/file-upload-inline/FileUploadInline.d.ts
|
|
5
5
|
/**
|
|
6
6
|
* FileUploadInline - An inline file upload component using FileUpload primitives
|
|
7
7
|
*/
|
|
8
|
-
declare function FileUploadInline(props: FileUploadInlineProps):
|
|
8
|
+
declare function FileUploadInline(props: FileUploadInlineProps): react_jsx_runtime8.JSX.Element;
|
|
9
9
|
//#endregion
|
|
10
10
|
export { FileUploadInline };
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
const require_rolldown_runtime = require('../_virtual/rolldown_runtime.cjs');
|
|
2
|
+
const require_Input = require('../input/Input.cjs');
|
|
3
|
+
require('../input/index.cjs');
|
|
2
4
|
const require_LoadingOverlay = require('../LoadingOverlay.cjs');
|
|
3
5
|
const require_use_async_providers = require('./use-async-providers.cjs');
|
|
4
6
|
const require_virtualized_icon_grid = require('./virtualized-icon-grid.cjs');
|
|
@@ -84,7 +86,7 @@ const IconPickerContent = ({ providers: providersProp, onChange, onSelect, maxHe
|
|
|
84
86
|
children: [
|
|
85
87
|
/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
86
88
|
className: "relative",
|
|
87
|
-
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(
|
|
89
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Input.Input, {
|
|
88
90
|
placeholder: "Search icons...",
|
|
89
91
|
value: searchQuery,
|
|
90
92
|
onChange: (e) => setSearchQuery(e.target.value),
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
import { Input as Input$1 } from "../input/Input.js";
|
|
2
|
+
import "../input/index.js";
|
|
1
3
|
import { LoadingOverlay } from "../LoadingOverlay.js";
|
|
2
4
|
import { useAsyncProviders } from "./use-async-providers.js";
|
|
3
5
|
import virtualized_icon_grid_default from "./virtualized-icon-grid.js";
|
|
4
|
-
import {
|
|
6
|
+
import { Tabs, TabsContent, TabsList, TabsTrigger } from "@pixpilot/shadcn";
|
|
5
7
|
import { X } from "lucide-react";
|
|
6
8
|
import { useCallback, useEffect, useMemo, useState } from "react";
|
|
7
9
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
@@ -79,7 +81,7 @@ const IconPickerContent = ({ providers: providersProp, onChange, onSelect, maxHe
|
|
|
79
81
|
children: [
|
|
80
82
|
/* @__PURE__ */ jsxs("div", {
|
|
81
83
|
className: "relative",
|
|
82
|
-
children: [/* @__PURE__ */ jsx(Input, {
|
|
84
|
+
children: [/* @__PURE__ */ jsx(Input$1, {
|
|
83
85
|
placeholder: "Search icons...",
|
|
84
86
|
value: searchQuery,
|
|
85
87
|
onChange: (e) => setSearchQuery(e.target.value),
|
package/dist/index.cjs
CHANGED
|
@@ -24,6 +24,8 @@ const require_FileUploadInline = require('./file-upload-inline/FileUploadInline.
|
|
|
24
24
|
require('./file-upload-inline/index.cjs');
|
|
25
25
|
const require_use_media_query = require('./hooks/use-media-query.cjs');
|
|
26
26
|
require('./hooks/index.cjs');
|
|
27
|
+
const require_Input = require('./input/Input.cjs');
|
|
28
|
+
require('./input/index.cjs');
|
|
27
29
|
const require_LoadingOverlay = require('./LoadingOverlay.cjs');
|
|
28
30
|
const require_IconPicker = require('./icon-selector/IconPicker.cjs');
|
|
29
31
|
require('./icon-selector/index.cjs');
|
|
@@ -40,6 +42,7 @@ const require_ScaledPreview = require('./ScaledPreview.cjs');
|
|
|
40
42
|
const require_Select = require('./Select.cjs');
|
|
41
43
|
const require_Slider = require('./slider/Slider.cjs');
|
|
42
44
|
const require_SliderInput = require('./slider/SliderInput.cjs');
|
|
45
|
+
const require_SliderSelect = require('./slider/SliderSelect.cjs');
|
|
43
46
|
require('./slider/index.cjs');
|
|
44
47
|
const require_TabsContext = require('./tabs/TabsContext.cjs');
|
|
45
48
|
const require_TabsList = require('./tabs/TabsList.cjs');
|
|
@@ -73,6 +76,7 @@ exports.DialogProvider = require_DialogProvider.DialogProvider;
|
|
|
73
76
|
exports.FileUpload = require_FileUpload.FileUpload;
|
|
74
77
|
exports.FileUploadInline = require_FileUploadInline.FileUploadInline;
|
|
75
78
|
exports.IconPicker = require_IconPicker.IconPicker;
|
|
79
|
+
exports.Input = require_Input.Input;
|
|
76
80
|
exports.Layout = require_Layout.Layout;
|
|
77
81
|
exports.LayoutFooter = require_LayoutFooter.LayoutFooter;
|
|
78
82
|
exports.LayoutHeader = require_LayoutHeader.LayoutHeader;
|
|
@@ -84,6 +88,7 @@ exports.ScaledPreview = require_ScaledPreview.ScaledPreview;
|
|
|
84
88
|
exports.Select = require_Select.Select;
|
|
85
89
|
exports.Slider = require_Slider.Slider;
|
|
86
90
|
exports.SliderInput = require_SliderInput.SliderInput;
|
|
91
|
+
exports.SliderSelect = require_SliderSelect.SliderSelect;
|
|
87
92
|
exports.Tabs = __pixpilot_shadcn.Tabs;
|
|
88
93
|
exports.TabsContent = __pixpilot_shadcn.TabsContent;
|
|
89
94
|
exports.TabsContext = require_TabsContext.TabsContext;
|
package/dist/index.d.cts
CHANGED
|
@@ -27,6 +27,8 @@ import { useMediaQuery } from "./hooks/use-media-query.cjs";
|
|
|
27
27
|
import { IconProvider, IconProviderLoader, IconProviderProps } from "./icon-selector/types.cjs";
|
|
28
28
|
import { IconPicker, IconPickerProps, IconPickerVariant } from "./icon-selector/IconPicker.cjs";
|
|
29
29
|
import "./icon-selector/index.cjs";
|
|
30
|
+
import { Input, InputProps } from "./input/Input.cjs";
|
|
31
|
+
import "./input/index.cjs";
|
|
30
32
|
import { Layout, LayoutProps } from "./layout/Layout.cjs";
|
|
31
33
|
import { LayoutFooter, LayoutFooterProps } from "./layout/LayoutFooter.cjs";
|
|
32
34
|
import { LayoutHeader, LayoutHeaderProps } from "./layout/LayoutHeader.cjs";
|
|
@@ -41,6 +43,7 @@ import { ScaledPreview, ScaledPreviewProps, ScaledPreviewSize } from "./ScaledPr
|
|
|
41
43
|
import { Select, SelectOption } from "./Select.cjs";
|
|
42
44
|
import { Slider, SliderProps } from "./slider/Slider.cjs";
|
|
43
45
|
import { SliderInput, SliderInputProps } from "./slider/SliderInput.cjs";
|
|
46
|
+
import { SliderSelect, SliderSelectOption, SliderSelectProps, SliderSelectValue } from "./slider/SliderSelect.cjs";
|
|
44
47
|
import "./slider/index.cjs";
|
|
45
48
|
import { Tabs } from "./tabs/Tabs.cjs";
|
|
46
49
|
import { TabsContent } from "./tabs/TabsContent.cjs";
|
|
@@ -56,4 +59,4 @@ import { ThemeToggle } from "./ThemeToggle.cjs";
|
|
|
56
59
|
import { DEFAULT_ALERT_DURATION, ToastMessage, toast, toastError, toastInfo, toastSuccess, toastWarning } from "./toast/toast.cjs";
|
|
57
60
|
import "./toast/index.cjs";
|
|
58
61
|
import { cn } from "@pixpilot/shadcn";
|
|
59
|
-
export { AbsoluteFill, Alert, AlertBaseProps, AlertProps, AlertVariant, AvatarUpload, AvatarUploadProps, BaseTabsTriggerProps, Button, ButtonLoaderProps, ButtonProps, CircleLoader, CircleLoaderProps, CloseButtonAbsolute, CloseButtonRounded, CloseButtonRoundedProps, ColorPicker, ColorPickerBase, ColorPickerBaseProps, ColorPickerProps, Combobox, ConfirmationDialogProps, ContentCard, DEFAULT_ALERT_DURATION, DatePicker, DatePickerProps, DialogProvider, DialogProviderProps, type FileMetadata, FileUpload, FileUploadBaseProps, FileUploadInline, FileUploadInlineBaseProps, FileUploadInlineProps, type FileUploadProgressCallBacks, type FileUploadProps, IconPicker, IconPickerProps, IconPickerVariant, IconProvider, IconProviderLoader, IconProviderProps, Layout, LayoutFooter, LayoutFooterProps, LayoutHeader, LayoutHeaderProps, LayoutMain, LayoutMainProps, LayoutProps, LoaderProps, LoadingOverlay, MultiFileUploadProps, OnChangeMultipleFiles, OnChangeSingleFile, Pagination, PaginationProps, PopoverCloseButtonProps, RichTextEditor, RichTextEditorProps, ScaledPreview, ScaledPreviewProps, ScaledPreviewSize, Select, SelectOption, SingleFileUploadProps, Slider, SliderInput, SliderInputProps, SliderProps, Tabs, TabsContent, TabsContext, TabsContextValue, TabsList, TabsListProps, TabsTrigger, TabsTriggerProps, TabsVariant, TagsInput, TagsInputProps, ThemeProvider, ThemeProviderProps, ThemeToggle, ToastMessage, ToolbarOption, cn, showConfirmDialog, toast, toastError, toastInfo, toastSuccess, toastWarning, useMediaQuery, useTabsContext, useTheme };
|
|
62
|
+
export { AbsoluteFill, Alert, AlertBaseProps, AlertProps, AlertVariant, AvatarUpload, AvatarUploadProps, BaseTabsTriggerProps, Button, ButtonLoaderProps, ButtonProps, CircleLoader, CircleLoaderProps, CloseButtonAbsolute, CloseButtonRounded, CloseButtonRoundedProps, ColorPicker, ColorPickerBase, ColorPickerBaseProps, ColorPickerProps, Combobox, ConfirmationDialogProps, ContentCard, DEFAULT_ALERT_DURATION, DatePicker, DatePickerProps, DialogProvider, DialogProviderProps, type FileMetadata, FileUpload, FileUploadBaseProps, FileUploadInline, FileUploadInlineBaseProps, FileUploadInlineProps, type FileUploadProgressCallBacks, type FileUploadProps, IconPicker, IconPickerProps, IconPickerVariant, IconProvider, IconProviderLoader, IconProviderProps, Input, InputProps, Layout, LayoutFooter, LayoutFooterProps, LayoutHeader, LayoutHeaderProps, LayoutMain, LayoutMainProps, LayoutProps, LoaderProps, LoadingOverlay, MultiFileUploadProps, OnChangeMultipleFiles, OnChangeSingleFile, Pagination, PaginationProps, PopoverCloseButtonProps, RichTextEditor, RichTextEditorProps, ScaledPreview, ScaledPreviewProps, ScaledPreviewSize, Select, SelectOption, SingleFileUploadProps, Slider, SliderInput, SliderInputProps, SliderProps, SliderSelect, SliderSelectOption, SliderSelectProps, SliderSelectValue, Tabs, TabsContent, TabsContext, TabsContextValue, TabsList, TabsListProps, TabsTrigger, TabsTriggerProps, TabsVariant, TagsInput, TagsInputProps, ThemeProvider, ThemeProviderProps, ThemeToggle, ToastMessage, ToolbarOption, cn, showConfirmDialog, toast, toastError, toastInfo, toastSuccess, toastWarning, useMediaQuery, useTabsContext, useTheme };
|
package/dist/index.d.ts
CHANGED
|
@@ -30,6 +30,8 @@ import "./hooks/index.js";
|
|
|
30
30
|
import { IconProvider, IconProviderLoader, IconProviderProps } from "./icon-selector/types.js";
|
|
31
31
|
import { IconPicker, IconPickerProps, IconPickerVariant } from "./icon-selector/IconPicker.js";
|
|
32
32
|
import "./icon-selector/index.js";
|
|
33
|
+
import { Input, InputProps } from "./input/Input.js";
|
|
34
|
+
import "./input/index.js";
|
|
33
35
|
import { Layout, LayoutProps } from "./layout/Layout.js";
|
|
34
36
|
import { LayoutFooter, LayoutFooterProps } from "./layout/LayoutFooter.js";
|
|
35
37
|
import { LayoutHeader, LayoutHeaderProps } from "./layout/LayoutHeader.js";
|
|
@@ -44,6 +46,7 @@ import { ScaledPreview, ScaledPreviewProps, ScaledPreviewSize } from "./ScaledPr
|
|
|
44
46
|
import { Select, SelectOption } from "./Select.js";
|
|
45
47
|
import { Slider, SliderProps } from "./slider/Slider.js";
|
|
46
48
|
import { SliderInput, SliderInputProps } from "./slider/SliderInput.js";
|
|
49
|
+
import { SliderSelect, SliderSelectOption, SliderSelectProps, SliderSelectValue } from "./slider/SliderSelect.js";
|
|
47
50
|
import "./slider/index.js";
|
|
48
51
|
import { Tabs } from "./tabs/Tabs.js";
|
|
49
52
|
import { TabsContent } from "./tabs/TabsContent.js";
|
|
@@ -59,4 +62,4 @@ import { ThemeToggle } from "./ThemeToggle.js";
|
|
|
59
62
|
import { DEFAULT_ALERT_DURATION, ToastMessage, toast, toastError, toastInfo, toastSuccess, toastWarning } from "./toast/toast.js";
|
|
60
63
|
import "./toast/index.js";
|
|
61
64
|
import { cn } from "@pixpilot/shadcn";
|
|
62
|
-
export { AbsoluteFill, Alert, AlertBaseProps, AlertProps, AlertVariant, AvatarUpload, AvatarUploadProps, BaseTabsTriggerProps, Button, ButtonLoaderProps, ButtonProps, CircleLoader, CircleLoaderProps, CloseButtonAbsolute, CloseButtonRounded, CloseButtonRoundedProps, ColorPicker, ColorPickerBase, ColorPickerBaseProps, ColorPickerProps, Combobox, ConfirmationDialogProps, ContentCard, DEFAULT_ALERT_DURATION, DatePicker, DatePickerProps, DialogProvider, DialogProviderProps, type FileMetadata, FileUpload, FileUploadBaseProps, FileUploadInline, FileUploadInlineBaseProps, FileUploadInlineProps, type FileUploadProgressCallBacks, type FileUploadProps, IconPicker, IconPickerProps, IconPickerVariant, IconProvider, IconProviderLoader, IconProviderProps, Layout, LayoutFooter, LayoutFooterProps, LayoutHeader, LayoutHeaderProps, LayoutMain, LayoutMainProps, LayoutProps, LoaderProps, LoadingOverlay, MultiFileUploadProps, OnChangeMultipleFiles, OnChangeSingleFile, Pagination, PaginationProps, PopoverCloseButtonProps, RichTextEditor, RichTextEditorProps, ScaledPreview, ScaledPreviewProps, ScaledPreviewSize, Select, SelectOption, SingleFileUploadProps, Slider, SliderInput, SliderInputProps, SliderProps, Tabs, TabsContent, TabsContext, TabsContextValue, TabsList, TabsListProps, TabsTrigger, TabsTriggerProps, TabsVariant, TagsInput, TagsInputProps, ThemeProvider, ThemeProviderProps, ThemeToggle, ToastMessage, ToolbarOption, cn, showConfirmDialog, toast, toastError, toastInfo, toastSuccess, toastWarning, useMediaQuery, useTabsContext, useTheme };
|
|
65
|
+
export { AbsoluteFill, Alert, AlertBaseProps, AlertProps, AlertVariant, AvatarUpload, AvatarUploadProps, BaseTabsTriggerProps, Button, ButtonLoaderProps, ButtonProps, CircleLoader, CircleLoaderProps, CloseButtonAbsolute, CloseButtonRounded, CloseButtonRoundedProps, ColorPicker, ColorPickerBase, ColorPickerBaseProps, ColorPickerProps, Combobox, ConfirmationDialogProps, ContentCard, DEFAULT_ALERT_DURATION, DatePicker, DatePickerProps, DialogProvider, DialogProviderProps, type FileMetadata, FileUpload, FileUploadBaseProps, FileUploadInline, FileUploadInlineBaseProps, FileUploadInlineProps, type FileUploadProgressCallBacks, type FileUploadProps, IconPicker, IconPickerProps, IconPickerVariant, IconProvider, IconProviderLoader, IconProviderProps, Input, InputProps, Layout, LayoutFooter, LayoutFooterProps, LayoutHeader, LayoutHeaderProps, LayoutMain, LayoutMainProps, LayoutProps, LoaderProps, LoadingOverlay, MultiFileUploadProps, OnChangeMultipleFiles, OnChangeSingleFile, Pagination, PaginationProps, PopoverCloseButtonProps, RichTextEditor, RichTextEditorProps, ScaledPreview, ScaledPreviewProps, ScaledPreviewSize, Select, SelectOption, SingleFileUploadProps, Slider, SliderInput, SliderInputProps, SliderProps, SliderSelect, SliderSelectOption, SliderSelectProps, SliderSelectValue, Tabs, TabsContent, TabsContext, TabsContextValue, TabsList, TabsListProps, TabsTrigger, TabsTriggerProps, TabsVariant, TagsInput, TagsInputProps, ThemeProvider, ThemeProviderProps, ThemeToggle, ToastMessage, ToolbarOption, cn, showConfirmDialog, toast, toastError, toastInfo, toastSuccess, toastWarning, useMediaQuery, useTabsContext, useTheme };
|
package/dist/index.js
CHANGED
|
@@ -23,6 +23,8 @@ import { FileUploadInline } from "./file-upload-inline/FileUploadInline.js";
|
|
|
23
23
|
import "./file-upload-inline/index.js";
|
|
24
24
|
import { useMediaQuery } from "./hooks/use-media-query.js";
|
|
25
25
|
import "./hooks/index.js";
|
|
26
|
+
import { Input } from "./input/Input.js";
|
|
27
|
+
import "./input/index.js";
|
|
26
28
|
import { LoadingOverlay } from "./LoadingOverlay.js";
|
|
27
29
|
import { IconPicker } from "./icon-selector/IconPicker.js";
|
|
28
30
|
import "./icon-selector/index.js";
|
|
@@ -39,6 +41,7 @@ import { ScaledPreview } from "./ScaledPreview.js";
|
|
|
39
41
|
import { Select } from "./Select.js";
|
|
40
42
|
import { Slider } from "./slider/Slider.js";
|
|
41
43
|
import { SliderInput } from "./slider/SliderInput.js";
|
|
44
|
+
import { SliderSelect } from "./slider/SliderSelect.js";
|
|
42
45
|
import "./slider/index.js";
|
|
43
46
|
import { Tabs } from "./tabs/Tabs.js";
|
|
44
47
|
import { TabsContent } from "./tabs/TabsContent.js";
|
|
@@ -54,4 +57,4 @@ import { DEFAULT_ALERT_DURATION, toast, toastError, toastInfo, toastSuccess, toa
|
|
|
54
57
|
import "./toast/index.js";
|
|
55
58
|
import { cn } from "@pixpilot/shadcn";
|
|
56
59
|
|
|
57
|
-
export { AbsoluteFill, Alert, AvatarUpload, Button, CircleLoader, CloseButtonAbsolute, CloseButtonRounded, ColorPicker, ColorPickerBase, Combobox, ContentCard, DEFAULT_ALERT_DURATION, DatePicker, DialogProvider, FileUpload, FileUploadInline, IconPicker, Layout, LayoutFooter, LayoutHeader, LayoutMain, LoadingOverlay, Pagination, RichTextEditor, ScaledPreview, Select, Slider, SliderInput, Tabs, TabsContent, TabsContext, TabsList, TabsTrigger, TagsInput, ThemeProvider, ThemeToggle, cn, showConfirmDialog, toast, toastError, toastInfo, toastSuccess, toastWarning, useMediaQuery, useTabsContext, useTheme };
|
|
60
|
+
export { AbsoluteFill, Alert, AvatarUpload, Button, CircleLoader, CloseButtonAbsolute, CloseButtonRounded, ColorPicker, ColorPickerBase, Combobox, ContentCard, DEFAULT_ALERT_DURATION, DatePicker, DialogProvider, FileUpload, FileUploadInline, IconPicker, Input, Layout, LayoutFooter, LayoutHeader, LayoutMain, LoadingOverlay, Pagination, RichTextEditor, ScaledPreview, Select, Slider, SliderInput, SliderSelect, Tabs, TabsContent, TabsContext, TabsList, TabsTrigger, TagsInput, ThemeProvider, ThemeToggle, cn, showConfirmDialog, toast, toastError, toastInfo, toastSuccess, toastWarning, useMediaQuery, useTabsContext, useTheme };
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
const require_rolldown_runtime = require('../_virtual/rolldown_runtime.cjs');
|
|
2
|
+
let __pixpilot_shadcn = require("@pixpilot/shadcn");
|
|
3
|
+
__pixpilot_shadcn = require_rolldown_runtime.__toESM(__pixpilot_shadcn);
|
|
4
|
+
let react = require("react");
|
|
5
|
+
react = require_rolldown_runtime.__toESM(react);
|
|
6
|
+
let react_jsx_runtime = require("react/jsx-runtime");
|
|
7
|
+
react_jsx_runtime = require_rolldown_runtime.__toESM(react_jsx_runtime);
|
|
8
|
+
|
|
9
|
+
//#region src/input/Input.tsx
|
|
10
|
+
function Input(props) {
|
|
11
|
+
const { prefix, suffix, groupClassName, prefixClassName, suffixClassName, className, disabled,...restProps } = props;
|
|
12
|
+
if (prefix == null && suffix == null) return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__pixpilot_shadcn.Input, {
|
|
13
|
+
className,
|
|
14
|
+
disabled,
|
|
15
|
+
...restProps
|
|
16
|
+
});
|
|
17
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(__pixpilot_shadcn.InputGroup, {
|
|
18
|
+
className: (0, __pixpilot_shadcn.cn)(groupClassName),
|
|
19
|
+
"data-disabled": disabled ? "true" : void 0,
|
|
20
|
+
children: [
|
|
21
|
+
prefix != null ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__pixpilot_shadcn.InputGroupAddon, {
|
|
22
|
+
align: "inline-start",
|
|
23
|
+
className: prefixClassName,
|
|
24
|
+
children: prefix
|
|
25
|
+
}) : null,
|
|
26
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsx)(__pixpilot_shadcn.InputGroupInput, {
|
|
27
|
+
className,
|
|
28
|
+
disabled,
|
|
29
|
+
...restProps
|
|
30
|
+
}),
|
|
31
|
+
suffix != null ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__pixpilot_shadcn.InputGroupAddon, {
|
|
32
|
+
align: "inline-end",
|
|
33
|
+
className: suffixClassName,
|
|
34
|
+
children: suffix
|
|
35
|
+
}) : null
|
|
36
|
+
]
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
//#endregion
|
|
41
|
+
exports.Input = Input;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as react_jsx_runtime8 from "react/jsx-runtime";
|
|
2
|
+
import { InputProps } from "@pixpilot/shadcn";
|
|
3
|
+
import * as React$1 from "react";
|
|
4
|
+
|
|
5
|
+
//#region src/input/Input.d.ts
|
|
6
|
+
type InputProps$1 = InputProps & {
|
|
7
|
+
prefix?: React$1.ReactNode;
|
|
8
|
+
suffix?: React$1.ReactNode;
|
|
9
|
+
groupClassName?: string;
|
|
10
|
+
prefixClassName?: string;
|
|
11
|
+
suffixClassName?: string;
|
|
12
|
+
};
|
|
13
|
+
declare function Input(props: InputProps$1): react_jsx_runtime8.JSX.Element;
|
|
14
|
+
//#endregion
|
|
15
|
+
export { Input, InputProps$1 as InputProps };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { InputProps } from "@pixpilot/shadcn";
|
|
2
|
+
import * as React$1 from "react";
|
|
3
|
+
import * as react_jsx_runtime6 from "react/jsx-runtime";
|
|
4
|
+
|
|
5
|
+
//#region src/input/Input.d.ts
|
|
6
|
+
type InputProps$1 = InputProps & {
|
|
7
|
+
prefix?: React$1.ReactNode;
|
|
8
|
+
suffix?: React$1.ReactNode;
|
|
9
|
+
groupClassName?: string;
|
|
10
|
+
prefixClassName?: string;
|
|
11
|
+
suffixClassName?: string;
|
|
12
|
+
};
|
|
13
|
+
declare function Input$1(props: InputProps$1): react_jsx_runtime6.JSX.Element;
|
|
14
|
+
//#endregion
|
|
15
|
+
export { Input$1 as Input, InputProps$1 as InputProps };
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Input, InputGroup, InputGroupAddon, InputGroupInput, cn } from "@pixpilot/shadcn";
|
|
2
|
+
import "react";
|
|
3
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
4
|
+
|
|
5
|
+
//#region src/input/Input.tsx
|
|
6
|
+
function Input$1(props) {
|
|
7
|
+
const { prefix, suffix, groupClassName, prefixClassName, suffixClassName, className, disabled,...restProps } = props;
|
|
8
|
+
if (prefix == null && suffix == null) return /* @__PURE__ */ jsx(Input, {
|
|
9
|
+
className,
|
|
10
|
+
disabled,
|
|
11
|
+
...restProps
|
|
12
|
+
});
|
|
13
|
+
return /* @__PURE__ */ jsxs(InputGroup, {
|
|
14
|
+
className: cn(groupClassName),
|
|
15
|
+
"data-disabled": disabled ? "true" : void 0,
|
|
16
|
+
children: [
|
|
17
|
+
prefix != null ? /* @__PURE__ */ jsx(InputGroupAddon, {
|
|
18
|
+
align: "inline-start",
|
|
19
|
+
className: prefixClassName,
|
|
20
|
+
children: prefix
|
|
21
|
+
}) : null,
|
|
22
|
+
/* @__PURE__ */ jsx(InputGroupInput, {
|
|
23
|
+
className,
|
|
24
|
+
disabled,
|
|
25
|
+
...restProps
|
|
26
|
+
}),
|
|
27
|
+
suffix != null ? /* @__PURE__ */ jsx(InputGroupAddon, {
|
|
28
|
+
align: "inline-end",
|
|
29
|
+
className: suffixClassName,
|
|
30
|
+
children: suffix
|
|
31
|
+
}) : null
|
|
32
|
+
]
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
//#endregion
|
|
37
|
+
export { Input$1 as Input };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const require_Input = require('./Input.cjs');
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import { Input, InputProps } from "./Input.cjs";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import { Input, InputProps } from "./Input.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import { Input } from "./Input.js";
|
package/dist/layout/Layout.cjs
CHANGED
|
@@ -7,8 +7,8 @@ let react_jsx_runtime = require("react/jsx-runtime");
|
|
|
7
7
|
react_jsx_runtime = require_rolldown_runtime.__toESM(react_jsx_runtime);
|
|
8
8
|
|
|
9
9
|
//#region src/layout/Layout.tsx
|
|
10
|
-
const Layout = react.default.forwardRef(({ className,...props }, ref) => {
|
|
11
|
-
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(
|
|
10
|
+
const Layout = react.default.forwardRef(({ className, as: Component = "div",...props }, ref) => {
|
|
11
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Component, {
|
|
12
12
|
ref,
|
|
13
13
|
className: (0, __pixpilot_shadcn.cn)("flex w-full flex-col overflow-hidden", "h-dvh", "max-h-full", className),
|
|
14
14
|
...props
|
package/dist/layout/Layout.d.cts
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
|
|
3
3
|
//#region src/layout/Layout.d.ts
|
|
4
|
-
interface LayoutProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
4
|
+
interface LayoutProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
5
|
+
as?: React.ElementType;
|
|
6
|
+
}
|
|
5
7
|
declare const Layout: React.ForwardRefExoticComponent<LayoutProps & React.RefAttributes<HTMLDivElement>>;
|
|
6
8
|
//#endregion
|
|
7
9
|
export { Layout, LayoutProps };
|
package/dist/layout/Layout.d.ts
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
|
|
3
3
|
//#region src/layout/Layout.d.ts
|
|
4
|
-
interface LayoutProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
4
|
+
interface LayoutProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
5
|
+
as?: React.ElementType;
|
|
6
|
+
}
|
|
5
7
|
declare const Layout: React.ForwardRefExoticComponent<LayoutProps & React.RefAttributes<HTMLDivElement>>;
|
|
6
8
|
//#endregion
|
|
7
9
|
export { Layout, LayoutProps };
|
package/dist/layout/Layout.js
CHANGED
|
@@ -3,8 +3,8 @@ import React from "react";
|
|
|
3
3
|
import { jsx } from "react/jsx-runtime";
|
|
4
4
|
|
|
5
5
|
//#region src/layout/Layout.tsx
|
|
6
|
-
const Layout = React.forwardRef(({ className,...props }, ref) => {
|
|
7
|
-
return /* @__PURE__ */ jsx(
|
|
6
|
+
const Layout = React.forwardRef(({ className, as: Component = "div",...props }, ref) => {
|
|
7
|
+
return /* @__PURE__ */ jsx(Component, {
|
|
8
8
|
ref,
|
|
9
9
|
className: cn("flex w-full flex-col overflow-hidden", "h-dvh", "max-h-full", className),
|
|
10
10
|
...props
|
|
@@ -7,7 +7,7 @@ let react_jsx_runtime = require("react/jsx-runtime");
|
|
|
7
7
|
react_jsx_runtime = require_rolldown_runtime.__toESM(react_jsx_runtime);
|
|
8
8
|
|
|
9
9
|
//#region src/layout/LayoutFooter.tsx
|
|
10
|
-
const LayoutFooter = react.default.forwardRef(({ className,...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(
|
|
10
|
+
const LayoutFooter = react.default.forwardRef(({ className, as: Component = "div",...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Component, {
|
|
11
11
|
...props,
|
|
12
12
|
className: (0, __pixpilot_shadcn.cn)(className),
|
|
13
13
|
ref
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
|
|
3
3
|
//#region src/layout/LayoutFooter.d.ts
|
|
4
|
-
interface LayoutFooterProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
4
|
+
interface LayoutFooterProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
5
|
+
as?: React.ElementType;
|
|
6
|
+
}
|
|
5
7
|
declare const LayoutFooter: React.ForwardRefExoticComponent<LayoutFooterProps & React.RefAttributes<HTMLDivElement>>;
|
|
6
8
|
//#endregion
|
|
7
9
|
export { LayoutFooter, LayoutFooterProps };
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
|
|
3
3
|
//#region src/layout/LayoutFooter.d.ts
|
|
4
|
-
interface LayoutFooterProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
4
|
+
interface LayoutFooterProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
5
|
+
as?: React.ElementType;
|
|
6
|
+
}
|
|
5
7
|
declare const LayoutFooter: React.ForwardRefExoticComponent<LayoutFooterProps & React.RefAttributes<HTMLDivElement>>;
|
|
6
8
|
//#endregion
|
|
7
9
|
export { LayoutFooter, LayoutFooterProps };
|
|
@@ -3,7 +3,7 @@ import React from "react";
|
|
|
3
3
|
import { jsx } from "react/jsx-runtime";
|
|
4
4
|
|
|
5
5
|
//#region src/layout/LayoutFooter.tsx
|
|
6
|
-
const LayoutFooter = React.forwardRef(({ className,...props }, ref) => /* @__PURE__ */ jsx(
|
|
6
|
+
const LayoutFooter = React.forwardRef(({ className, as: Component = "div",...props }, ref) => /* @__PURE__ */ jsx(Component, {
|
|
7
7
|
...props,
|
|
8
8
|
className: cn(className),
|
|
9
9
|
ref
|
|
@@ -7,7 +7,7 @@ let react_jsx_runtime = require("react/jsx-runtime");
|
|
|
7
7
|
react_jsx_runtime = require_rolldown_runtime.__toESM(react_jsx_runtime);
|
|
8
8
|
|
|
9
9
|
//#region src/layout/LayoutHeader.tsx
|
|
10
|
-
const LayoutHeader = react.default.forwardRef(({ className,...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(
|
|
10
|
+
const LayoutHeader = react.default.forwardRef(({ className, as: Component = "div",...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Component, {
|
|
11
11
|
...props,
|
|
12
12
|
className: (0, __pixpilot_shadcn.cn)(className),
|
|
13
13
|
ref
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
|
|
3
3
|
//#region src/layout/LayoutHeader.d.ts
|
|
4
|
-
interface LayoutHeaderProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
4
|
+
interface LayoutHeaderProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
5
|
+
as?: React.ElementType;
|
|
6
|
+
}
|
|
5
7
|
declare const LayoutHeader: React.ForwardRefExoticComponent<LayoutHeaderProps & React.RefAttributes<HTMLDivElement>>;
|
|
6
8
|
//#endregion
|
|
7
9
|
export { LayoutHeader, LayoutHeaderProps };
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
|
|
3
3
|
//#region src/layout/LayoutHeader.d.ts
|
|
4
|
-
interface LayoutHeaderProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
4
|
+
interface LayoutHeaderProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
5
|
+
as?: React.ElementType;
|
|
6
|
+
}
|
|
5
7
|
declare const LayoutHeader: React.ForwardRefExoticComponent<LayoutHeaderProps & React.RefAttributes<HTMLDivElement>>;
|
|
6
8
|
//#endregion
|
|
7
9
|
export { LayoutHeader, LayoutHeaderProps };
|
|
@@ -3,7 +3,7 @@ import React from "react";
|
|
|
3
3
|
import { jsx } from "react/jsx-runtime";
|
|
4
4
|
|
|
5
5
|
//#region src/layout/LayoutHeader.tsx
|
|
6
|
-
const LayoutHeader = React.forwardRef(({ className,...props }, ref) => /* @__PURE__ */ jsx(
|
|
6
|
+
const LayoutHeader = React.forwardRef(({ className, as: Component = "div",...props }, ref) => /* @__PURE__ */ jsx(Component, {
|
|
7
7
|
...props,
|
|
8
8
|
className: cn(className),
|
|
9
9
|
ref
|
|
@@ -7,8 +7,8 @@ let react_jsx_runtime = require("react/jsx-runtime");
|
|
|
7
7
|
react_jsx_runtime = require_rolldown_runtime.__toESM(react_jsx_runtime);
|
|
8
8
|
|
|
9
9
|
//#region src/layout/LayoutMain.tsx
|
|
10
|
-
const LayoutMain = react.default.forwardRef(({ autoScroll = true, className,...props }, ref) => {
|
|
11
|
-
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(
|
|
10
|
+
const LayoutMain = react.default.forwardRef(({ autoScroll = true, className, as: Component = "div",...props }, ref) => {
|
|
11
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Component, {
|
|
12
12
|
ref,
|
|
13
13
|
className: (0, __pixpilot_shadcn.cn)("flex-1", { "overflow-auto": autoScroll }, className),
|
|
14
14
|
...props
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
|
|
3
3
|
//#region src/layout/LayoutMain.d.ts
|
|
4
|
-
interface LayoutMainProps extends React.HTMLAttributes<
|
|
4
|
+
interface LayoutMainProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
5
5
|
autoScroll?: boolean;
|
|
6
|
+
as?: React.ElementType;
|
|
6
7
|
}
|
|
7
|
-
declare const LayoutMain: React.ForwardRefExoticComponent<LayoutMainProps & React.RefAttributes<
|
|
8
|
+
declare const LayoutMain: React.ForwardRefExoticComponent<LayoutMainProps & React.RefAttributes<HTMLDivElement>>;
|
|
8
9
|
//#endregion
|
|
9
10
|
export { LayoutMain, LayoutMainProps };
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
|
|
3
3
|
//#region src/layout/LayoutMain.d.ts
|
|
4
|
-
interface LayoutMainProps extends React.HTMLAttributes<
|
|
4
|
+
interface LayoutMainProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
5
5
|
autoScroll?: boolean;
|
|
6
|
+
as?: React.ElementType;
|
|
6
7
|
}
|
|
7
|
-
declare const LayoutMain: React.ForwardRefExoticComponent<LayoutMainProps & React.RefAttributes<
|
|
8
|
+
declare const LayoutMain: React.ForwardRefExoticComponent<LayoutMainProps & React.RefAttributes<HTMLDivElement>>;
|
|
8
9
|
//#endregion
|
|
9
10
|
export { LayoutMain, LayoutMainProps };
|
|
@@ -3,8 +3,8 @@ import React from "react";
|
|
|
3
3
|
import { jsx } from "react/jsx-runtime";
|
|
4
4
|
|
|
5
5
|
//#region src/layout/LayoutMain.tsx
|
|
6
|
-
const LayoutMain = React.forwardRef(({ autoScroll = true, className,...props }, ref) => {
|
|
7
|
-
return /* @__PURE__ */ jsx(
|
|
6
|
+
const LayoutMain = React.forwardRef(({ autoScroll = true, className, as: Component = "div",...props }, ref) => {
|
|
7
|
+
return /* @__PURE__ */ jsx(Component, {
|
|
8
8
|
ref,
|
|
9
9
|
className: cn("flex-1", { "overflow-auto": autoScroll }, className),
|
|
10
10
|
...props
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
const require_rolldown_runtime = require('../_virtual/rolldown_runtime.cjs');
|
|
2
2
|
const require_use_controlled = require('../hooks/src/use-controlled.cjs');
|
|
3
3
|
require('../hooks/src/index.cjs');
|
|
4
|
+
const require_Input = require('../input/Input.cjs');
|
|
4
5
|
const require_Slider = require('./Slider.cjs');
|
|
5
|
-
|
|
6
|
-
__pixpilot_shadcn = require_rolldown_runtime.__toESM(__pixpilot_shadcn);
|
|
6
|
+
require('../index.cjs');
|
|
7
7
|
let react = require("react");
|
|
8
8
|
react = require_rolldown_runtime.__toESM(react);
|
|
9
9
|
let react_jsx_runtime = require("react/jsx-runtime");
|
|
10
10
|
react_jsx_runtime = require_rolldown_runtime.__toESM(react_jsx_runtime);
|
|
11
|
+
let __pixpilot_shadcn = require("@pixpilot/shadcn");
|
|
12
|
+
__pixpilot_shadcn = require_rolldown_runtime.__toESM(__pixpilot_shadcn);
|
|
11
13
|
|
|
12
14
|
//#region src/slider/SliderInput.tsx
|
|
13
15
|
function clampNumber(input, min, max) {
|
|
@@ -56,7 +58,7 @@ const SliderInput = (props) => {
|
|
|
56
58
|
disabled,
|
|
57
59
|
value: currentValue,
|
|
58
60
|
onValueChange: handleValueChange
|
|
59
|
-
}), showInput && Array.isArray(currentValue) && currentValue.map((v, i) => /* @__PURE__ */ (0, react.createElement)(
|
|
61
|
+
}), showInput && Array.isArray(currentValue) && currentValue.map((v, i) => /* @__PURE__ */ (0, react.createElement)(require_Input.Input, {
|
|
60
62
|
id: id ?? `${id}-input-${i}`,
|
|
61
63
|
disabled,
|
|
62
64
|
...input,
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
+
import { InputProps } from "../input/Input.cjs";
|
|
1
2
|
import { Slider } from "./Slider.cjs";
|
|
3
|
+
import "../index.cjs";
|
|
2
4
|
import React from "react";
|
|
3
5
|
|
|
4
6
|
//#region src/slider/SliderInput.d.ts
|
|
5
7
|
interface SliderInputProps extends React.ComponentProps<typeof Slider> {
|
|
6
8
|
showInput?: boolean;
|
|
7
|
-
input?:
|
|
9
|
+
input?: InputProps;
|
|
8
10
|
slider?: {
|
|
9
11
|
className?: string;
|
|
10
12
|
};
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
+
import { InputProps } from "../input/Input.js";
|
|
1
2
|
import { Slider } from "./Slider.js";
|
|
3
|
+
import "../index.js";
|
|
2
4
|
import React from "react";
|
|
3
5
|
|
|
4
6
|
//#region src/slider/SliderInput.d.ts
|
|
5
7
|
interface SliderInputProps extends React.ComponentProps<typeof Slider> {
|
|
6
8
|
showInput?: boolean;
|
|
7
|
-
input?:
|
|
9
|
+
input?: InputProps;
|
|
8
10
|
slider?: {
|
|
9
11
|
className?: string;
|
|
10
12
|
};
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import useControlled from "../hooks/src/use-controlled.js";
|
|
2
2
|
import "../hooks/src/index.js";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { Input } from "../input/Input.js";
|
|
4
|
+
import { Slider } from "./Slider.js";
|
|
5
|
+
import { cn } from "../index.js";
|
|
5
6
|
import React, { createElement } from "react";
|
|
6
7
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
7
8
|
|
|
@@ -42,7 +43,7 @@ const SliderInput = (props) => {
|
|
|
42
43
|
id,
|
|
43
44
|
className: "flex items-center gap-2",
|
|
44
45
|
style,
|
|
45
|
-
children: [/* @__PURE__ */ jsx(Slider
|
|
46
|
+
children: [/* @__PURE__ */ jsx(Slider, {
|
|
46
47
|
...rest,
|
|
47
48
|
className: slider?.className,
|
|
48
49
|
id: id ?? `${id}-slider`,
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
const require_rolldown_runtime = require('../_virtual/rolldown_runtime.cjs');
|
|
2
|
+
const require_use_controlled = require('../hooks/src/use-controlled.cjs');
|
|
3
|
+
require('../hooks/src/index.cjs');
|
|
4
|
+
const require_Select = require('../Select.cjs');
|
|
5
|
+
const require_Slider = require('./Slider.cjs');
|
|
6
|
+
let __pixpilot_shadcn = require("@pixpilot/shadcn");
|
|
7
|
+
__pixpilot_shadcn = require_rolldown_runtime.__toESM(__pixpilot_shadcn);
|
|
8
|
+
let react = require("react");
|
|
9
|
+
react = require_rolldown_runtime.__toESM(react);
|
|
10
|
+
let react_jsx_runtime = require("react/jsx-runtime");
|
|
11
|
+
react_jsx_runtime = require_rolldown_runtime.__toESM(react_jsx_runtime);
|
|
12
|
+
|
|
13
|
+
//#region src/slider/SliderSelect.tsx
|
|
14
|
+
function normalizeOptions(options) {
|
|
15
|
+
return options.map((option) => {
|
|
16
|
+
if (typeof option === "object" && option !== null && "value" in option) return {
|
|
17
|
+
value: option.value,
|
|
18
|
+
label: option.label ?? String(option.value)
|
|
19
|
+
};
|
|
20
|
+
return {
|
|
21
|
+
value: option,
|
|
22
|
+
label: String(option)
|
|
23
|
+
};
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
const SliderSelect = (props) => {
|
|
27
|
+
const { options, value: valueProp, defaultValue, onValueChange, disabled, id, className, style, showSelect = true, select, slider,...rest } = props;
|
|
28
|
+
const { containerClassName: selectContainerClassName,...selectProps } = select ?? {};
|
|
29
|
+
const normalizedOptions = react.default.useMemo(() => normalizeOptions(options), [options]);
|
|
30
|
+
const hasOptions = normalizedOptions.length > 0;
|
|
31
|
+
const [currentValue, setCurrentValue] = require_use_controlled.default({
|
|
32
|
+
controlled: valueProp,
|
|
33
|
+
default: react.default.useMemo(() => {
|
|
34
|
+
if (defaultValue !== void 0) return defaultValue;
|
|
35
|
+
if (valueProp !== void 0) return valueProp;
|
|
36
|
+
return hasOptions ? normalizedOptions[0].value : "";
|
|
37
|
+
}, [
|
|
38
|
+
defaultValue,
|
|
39
|
+
valueProp,
|
|
40
|
+
hasOptions,
|
|
41
|
+
normalizedOptions
|
|
42
|
+
]),
|
|
43
|
+
name: "SliderSelect",
|
|
44
|
+
state: "value"
|
|
45
|
+
});
|
|
46
|
+
const currentIndex = react.default.useMemo(() => {
|
|
47
|
+
const idx = normalizedOptions.findIndex((o) => o.value === currentValue);
|
|
48
|
+
return idx >= 0 ? idx : 0;
|
|
49
|
+
}, [currentValue, normalizedOptions]);
|
|
50
|
+
const handleOptionChange = (nextValue) => {
|
|
51
|
+
setCurrentValue(nextValue);
|
|
52
|
+
onValueChange?.(nextValue);
|
|
53
|
+
};
|
|
54
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
55
|
+
id,
|
|
56
|
+
className: (0, __pixpilot_shadcn.cn)("flex items-center gap-2", className),
|
|
57
|
+
style,
|
|
58
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Slider.Slider, {
|
|
59
|
+
...rest,
|
|
60
|
+
className: slider?.className,
|
|
61
|
+
id: id != null ? `${id}-slider` : void 0,
|
|
62
|
+
min: 0,
|
|
63
|
+
max: Math.max(0, normalizedOptions.length - 1),
|
|
64
|
+
step: 1,
|
|
65
|
+
disabled: disabled || !hasOptions,
|
|
66
|
+
value: [currentIndex],
|
|
67
|
+
onValueChange: (next) => {
|
|
68
|
+
const index = next[0] ?? 0;
|
|
69
|
+
const option = normalizedOptions[Math.max(0, Math.min(index, normalizedOptions.length - 1))];
|
|
70
|
+
if (!option) return;
|
|
71
|
+
handleOptionChange(option.value);
|
|
72
|
+
}
|
|
73
|
+
}), showSelect && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
74
|
+
className: (0, __pixpilot_shadcn.cn)("w-28", selectContainerClassName),
|
|
75
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Select.Select, {
|
|
76
|
+
...selectProps,
|
|
77
|
+
contentProps: {
|
|
78
|
+
position: "item-aligned",
|
|
79
|
+
...selectProps.contentProps
|
|
80
|
+
},
|
|
81
|
+
options: normalizedOptions.map((o) => ({
|
|
82
|
+
value: o.value,
|
|
83
|
+
label: o.label
|
|
84
|
+
})),
|
|
85
|
+
value: String(currentValue ?? ""),
|
|
86
|
+
onChange: (v) => {
|
|
87
|
+
const matched = normalizedOptions.find((o) => String(o.value) === v);
|
|
88
|
+
if (!matched) return;
|
|
89
|
+
handleOptionChange(matched.value);
|
|
90
|
+
},
|
|
91
|
+
disabled: disabled || !hasOptions
|
|
92
|
+
})
|
|
93
|
+
})]
|
|
94
|
+
});
|
|
95
|
+
};
|
|
96
|
+
SliderSelect.displayName = "SliderSelect";
|
|
97
|
+
|
|
98
|
+
//#endregion
|
|
99
|
+
exports.SliderSelect = SliderSelect;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Select } from "../Select.cjs";
|
|
2
|
+
import { Slider } from "./Slider.cjs";
|
|
3
|
+
import React, { ComponentProps } from "react";
|
|
4
|
+
|
|
5
|
+
//#region src/slider/SliderSelect.d.ts
|
|
6
|
+
type SliderSelectValue = string | number;
|
|
7
|
+
type SliderSelectOption = SliderSelectValue | {
|
|
8
|
+
value: SliderSelectValue;
|
|
9
|
+
label?: string;
|
|
10
|
+
};
|
|
11
|
+
type SliderSelectSelectProps = Omit<ComponentProps<typeof Select>, 'options' | 'value' | 'onChange'> & {
|
|
12
|
+
containerClassName?: string;
|
|
13
|
+
};
|
|
14
|
+
interface SliderSelectProps extends Omit<ComponentProps<typeof Slider>, 'min' | 'max' | 'step' | 'value' | 'defaultValue' | 'onValueChange'> {
|
|
15
|
+
options: SliderSelectOption[];
|
|
16
|
+
value?: SliderSelectValue;
|
|
17
|
+
defaultValue?: SliderSelectValue;
|
|
18
|
+
onValueChange?: (value: SliderSelectValue) => void;
|
|
19
|
+
showSelect?: boolean;
|
|
20
|
+
select?: SliderSelectSelectProps;
|
|
21
|
+
slider?: {
|
|
22
|
+
className?: string;
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
declare const SliderSelect: React.FC<SliderSelectProps>;
|
|
26
|
+
//#endregion
|
|
27
|
+
export { SliderSelect, SliderSelectOption, SliderSelectProps, SliderSelectValue };
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Select } from "../Select.js";
|
|
2
|
+
import { Slider } from "./Slider.js";
|
|
3
|
+
import React, { ComponentProps } from "react";
|
|
4
|
+
|
|
5
|
+
//#region src/slider/SliderSelect.d.ts
|
|
6
|
+
type SliderSelectValue = string | number;
|
|
7
|
+
type SliderSelectOption = SliderSelectValue | {
|
|
8
|
+
value: SliderSelectValue;
|
|
9
|
+
label?: string;
|
|
10
|
+
};
|
|
11
|
+
type SliderSelectSelectProps = Omit<ComponentProps<typeof Select>, 'options' | 'value' | 'onChange'> & {
|
|
12
|
+
containerClassName?: string;
|
|
13
|
+
};
|
|
14
|
+
interface SliderSelectProps extends Omit<ComponentProps<typeof Slider>, 'min' | 'max' | 'step' | 'value' | 'defaultValue' | 'onValueChange'> {
|
|
15
|
+
options: SliderSelectOption[];
|
|
16
|
+
value?: SliderSelectValue;
|
|
17
|
+
defaultValue?: SliderSelectValue;
|
|
18
|
+
onValueChange?: (value: SliderSelectValue) => void;
|
|
19
|
+
showSelect?: boolean;
|
|
20
|
+
select?: SliderSelectSelectProps;
|
|
21
|
+
slider?: {
|
|
22
|
+
className?: string;
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
declare const SliderSelect: React.FC<SliderSelectProps>;
|
|
26
|
+
//#endregion
|
|
27
|
+
export { SliderSelect, SliderSelectOption, SliderSelectProps, SliderSelectValue };
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import useControlled from "../hooks/src/use-controlled.js";
|
|
2
|
+
import "../hooks/src/index.js";
|
|
3
|
+
import { Select as Select$1 } from "../Select.js";
|
|
4
|
+
import { Slider as Slider$1 } from "./Slider.js";
|
|
5
|
+
import { cn } from "@pixpilot/shadcn";
|
|
6
|
+
import React from "react";
|
|
7
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
8
|
+
|
|
9
|
+
//#region src/slider/SliderSelect.tsx
|
|
10
|
+
function normalizeOptions(options) {
|
|
11
|
+
return options.map((option) => {
|
|
12
|
+
if (typeof option === "object" && option !== null && "value" in option) return {
|
|
13
|
+
value: option.value,
|
|
14
|
+
label: option.label ?? String(option.value)
|
|
15
|
+
};
|
|
16
|
+
return {
|
|
17
|
+
value: option,
|
|
18
|
+
label: String(option)
|
|
19
|
+
};
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
const SliderSelect = (props) => {
|
|
23
|
+
const { options, value: valueProp, defaultValue, onValueChange, disabled, id, className, style, showSelect = true, select, slider,...rest } = props;
|
|
24
|
+
const { containerClassName: selectContainerClassName,...selectProps } = select ?? {};
|
|
25
|
+
const normalizedOptions = React.useMemo(() => normalizeOptions(options), [options]);
|
|
26
|
+
const hasOptions = normalizedOptions.length > 0;
|
|
27
|
+
const [currentValue, setCurrentValue] = useControlled({
|
|
28
|
+
controlled: valueProp,
|
|
29
|
+
default: React.useMemo(() => {
|
|
30
|
+
if (defaultValue !== void 0) return defaultValue;
|
|
31
|
+
if (valueProp !== void 0) return valueProp;
|
|
32
|
+
return hasOptions ? normalizedOptions[0].value : "";
|
|
33
|
+
}, [
|
|
34
|
+
defaultValue,
|
|
35
|
+
valueProp,
|
|
36
|
+
hasOptions,
|
|
37
|
+
normalizedOptions
|
|
38
|
+
]),
|
|
39
|
+
name: "SliderSelect",
|
|
40
|
+
state: "value"
|
|
41
|
+
});
|
|
42
|
+
const currentIndex = React.useMemo(() => {
|
|
43
|
+
const idx = normalizedOptions.findIndex((o) => o.value === currentValue);
|
|
44
|
+
return idx >= 0 ? idx : 0;
|
|
45
|
+
}, [currentValue, normalizedOptions]);
|
|
46
|
+
const handleOptionChange = (nextValue) => {
|
|
47
|
+
setCurrentValue(nextValue);
|
|
48
|
+
onValueChange?.(nextValue);
|
|
49
|
+
};
|
|
50
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
51
|
+
id,
|
|
52
|
+
className: cn("flex items-center gap-2", className),
|
|
53
|
+
style,
|
|
54
|
+
children: [/* @__PURE__ */ jsx(Slider$1, {
|
|
55
|
+
...rest,
|
|
56
|
+
className: slider?.className,
|
|
57
|
+
id: id != null ? `${id}-slider` : void 0,
|
|
58
|
+
min: 0,
|
|
59
|
+
max: Math.max(0, normalizedOptions.length - 1),
|
|
60
|
+
step: 1,
|
|
61
|
+
disabled: disabled || !hasOptions,
|
|
62
|
+
value: [currentIndex],
|
|
63
|
+
onValueChange: (next) => {
|
|
64
|
+
const index = next[0] ?? 0;
|
|
65
|
+
const option = normalizedOptions[Math.max(0, Math.min(index, normalizedOptions.length - 1))];
|
|
66
|
+
if (!option) return;
|
|
67
|
+
handleOptionChange(option.value);
|
|
68
|
+
}
|
|
69
|
+
}), showSelect && /* @__PURE__ */ jsx("div", {
|
|
70
|
+
className: cn("w-28", selectContainerClassName),
|
|
71
|
+
children: /* @__PURE__ */ jsx(Select$1, {
|
|
72
|
+
...selectProps,
|
|
73
|
+
contentProps: {
|
|
74
|
+
position: "item-aligned",
|
|
75
|
+
...selectProps.contentProps
|
|
76
|
+
},
|
|
77
|
+
options: normalizedOptions.map((o) => ({
|
|
78
|
+
value: o.value,
|
|
79
|
+
label: o.label
|
|
80
|
+
})),
|
|
81
|
+
value: String(currentValue ?? ""),
|
|
82
|
+
onChange: (v) => {
|
|
83
|
+
const matched = normalizedOptions.find((o) => String(o.value) === v);
|
|
84
|
+
if (!matched) return;
|
|
85
|
+
handleOptionChange(matched.value);
|
|
86
|
+
},
|
|
87
|
+
disabled: disabled || !hasOptions
|
|
88
|
+
})
|
|
89
|
+
})]
|
|
90
|
+
});
|
|
91
|
+
};
|
|
92
|
+
SliderSelect.displayName = "SliderSelect";
|
|
93
|
+
|
|
94
|
+
//#endregion
|
|
95
|
+
export { SliderSelect };
|
package/dist/slider/index.cjs
CHANGED
package/dist/slider/index.d.cts
CHANGED
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
import { Slider, SliderProps } from "./Slider.cjs";
|
|
2
|
-
import { SliderInput, SliderInputProps } from "./SliderInput.cjs";
|
|
2
|
+
import { SliderInput, SliderInputProps } from "./SliderInput.cjs";
|
|
3
|
+
import { SliderSelect, SliderSelectOption, SliderSelectProps, SliderSelectValue } from "./SliderSelect.cjs";
|
package/dist/slider/index.d.ts
CHANGED
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
import { Slider, SliderProps } from "./Slider.js";
|
|
2
|
-
import { SliderInput, SliderInputProps } from "./SliderInput.js";
|
|
2
|
+
import { SliderInput, SliderInputProps } from "./SliderInput.js";
|
|
3
|
+
import { SliderSelect, SliderSelectOption, SliderSelectProps, SliderSelectValue } from "./SliderSelect.js";
|
package/dist/slider/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pixpilot/shadcn-ui",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.18.0",
|
|
5
5
|
"description": "Custom UI components and utilities built with shadcn/ui.",
|
|
6
6
|
"author": "m.doaie <m.doaie@hotmail.com>",
|
|
7
7
|
"license": "MIT",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"pretty-bytes": "^7.1.0",
|
|
45
45
|
"react-responsive": "^10.0.1",
|
|
46
46
|
"sonner": "2.0.7",
|
|
47
|
-
"@pixpilot/shadcn": "0.
|
|
47
|
+
"@pixpilot/shadcn": "0.7.0"
|
|
48
48
|
},
|
|
49
49
|
"devDependencies": {
|
|
50
50
|
"@storybook/react": "^8.6.14",
|