@epicbagel/saas-kit 1.5.0 → 1.6.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/README.md +22 -0
- package/dist/{chunk-GFG2R5BZ.js → chunk-2V7AVB2U.js} +1 -1
- package/dist/{chunk-LI5EOSQG.js → chunk-43UMPZWD.js} +1 -1
- package/dist/{chunk-XABXUP6L.cjs → chunk-5VMKDVB6.cjs} +2 -2
- package/dist/{chunk-QNZYQLNP.js → chunk-6S6GD43V.js} +1 -1
- package/dist/{chunk-WQJKUKBL.cjs → chunk-6YXKFVZU.cjs} +4 -4
- package/dist/{chunk-RIWLAMME.cjs → chunk-7LDJAXRX.cjs} +2 -2
- package/dist/{chunk-FNDBM67K.cjs → chunk-7YCKII7G.cjs} +2 -2
- package/dist/{chunk-2TKLS73N.js → chunk-C3VZMTVB.js} +1 -1
- package/dist/{chunk-G54TQV2R.cjs → chunk-CLYAASFN.cjs} +2 -2
- package/dist/{chunk-SGW4FWBX.cjs → chunk-CRTH5GJ5.cjs} +13 -13
- package/dist/{chunk-EZCKWTH7.js → chunk-CYDICVH2.js} +1 -1
- package/dist/{chunk-J3GQXM37.js → chunk-EEHIMPD7.js} +1 -1
- package/dist/{chunk-4NN7EA3W.js → chunk-ET4THLFX.js} +1 -1
- package/dist/{chunk-PNWNU6JW.cjs → chunk-EUFV25KL.cjs} +4 -4
- package/dist/{chunk-HHV4G77I.js → chunk-F3B4M6DU.js} +1 -1
- package/dist/{chunk-32Q4XOTU.cjs → chunk-FYRQFEU4.cjs} +2 -2
- package/dist/{chunk-VLXPLKFR.cjs → chunk-GTVSRRE3.cjs} +2 -2
- package/dist/{chunk-RRRD5EUI.js → chunk-H2CCBRVG.js} +1 -1
- package/dist/{chunk-FGISSYXG.js → chunk-H4XH2PPU.js} +1 -1
- package/dist/{chunk-M7FYGAGO.js → chunk-HBRVOGLA.js} +1 -1
- package/dist/{chunk-NW3OWKBN.js → chunk-HREEZUKL.js} +1 -1
- package/dist/{chunk-THWIJG5C.js → chunk-IJG2B3Y2.js} +1 -1
- package/dist/{chunk-L4DH72UF.cjs → chunk-JDEXZGIY.cjs} +2 -1
- package/dist/{chunk-HRLP4BHJ.js → chunk-JN6JOSZG.js} +4 -4
- package/dist/{chunk-NE3ZVJ6G.cjs → chunk-KM5FHCXU.cjs} +8 -8
- package/dist/{chunk-MLHNYRFX.js → chunk-KNKV25WS.js} +2 -2
- package/dist/{chunk-23UMHZ4S.cjs → chunk-LIUYHYFN.cjs} +3 -3
- package/dist/{chunk-EOUO3ORO.cjs → chunk-LKPM6DQP.cjs} +3 -3
- package/dist/{chunk-SUB4BAYE.cjs → chunk-M4V7OJNF.cjs} +2 -2
- package/dist/{chunk-VKIGJNJR.cjs → chunk-MU4F3DSW.cjs} +2 -2
- package/dist/{chunk-LAN3K2JI.cjs → chunk-NWDPH2Z7.cjs} +2 -2
- package/dist/{chunk-MHYAVXOE.js → chunk-QTPPNK6F.js} +1 -1
- package/dist/{chunk-IH3COANJ.cjs → chunk-QTWJQQDH.cjs} +12 -12
- package/dist/chunk-QZBPZLAB.js +24 -0
- package/dist/{chunk-HAC32ALJ.js → chunk-TI57GAQP.js} +1 -1
- package/dist/{chunk-GRY77463.cjs → chunk-TP74SBRH.cjs} +3 -3
- package/dist/chunk-VMXKT67E.cjs +24 -0
- package/dist/{chunk-R5L4CM6V.cjs → chunk-VOTCYG3F.cjs} +4 -4
- package/dist/{chunk-HQRWRRZJ.js → chunk-W326GKML.js} +2 -1
- package/dist/{chunk-HYSWE75T.js → chunk-WL73DFE3.js} +1 -1
- package/dist/{chunk-KADJ56AH.cjs → chunk-Z3JJSNR5.cjs} +2 -2
- package/dist/{chunk-FLPYZNWZ.js → chunk-ZLU32SRP.js} +1 -1
- package/dist/primitives/activity-feed.cjs +3 -3
- package/dist/primitives/activity-feed.js +2 -2
- package/dist/primitives/activity-log.cjs +3 -3
- package/dist/primitives/activity-log.js +2 -2
- package/dist/primitives/alert-dialog.cjs +3 -3
- package/dist/primitives/alert-dialog.js +2 -2
- package/dist/primitives/alert.d.cts +1 -1
- package/dist/primitives/alert.d.ts +1 -1
- package/dist/primitives/archive-confirmation-dialog.cjs +4 -4
- package/dist/primitives/archive-confirmation-dialog.js +3 -3
- package/dist/primitives/attachment.cjs +3 -3
- package/dist/primitives/attachment.js +2 -2
- package/dist/primitives/badge.d.cts +1 -1
- package/dist/primitives/badge.d.ts +1 -1
- package/dist/primitives/board-view.cjs +7 -7
- package/dist/primitives/board-view.js +6 -6
- package/dist/primitives/bubble.d.cts +1 -1
- package/dist/primitives/bubble.d.ts +1 -1
- package/dist/primitives/button.cjs +2 -2
- package/dist/primitives/button.d.cts +3 -3
- package/dist/primitives/button.d.ts +3 -3
- package/dist/primitives/button.js +1 -1
- package/dist/primitives/calendar.cjs +3 -3
- package/dist/primitives/calendar.js +2 -2
- package/dist/primitives/chat.cjs +85 -58
- package/dist/primitives/chat.d.cts +13 -1
- package/dist/primitives/chat.d.ts +13 -1
- package/dist/primitives/chat.js +50 -23
- package/dist/primitives/code-block.cjs +4 -4
- package/dist/primitives/code-block.js +3 -3
- package/dist/primitives/confirm-bar.cjs +3 -3
- package/dist/primitives/confirm-bar.js +1 -1
- package/dist/primitives/connection-status-bar.cjs +4 -4
- package/dist/primitives/connection-status-bar.js +1 -1
- package/dist/primitives/connection.cjs +13 -13
- package/dist/primitives/connection.js +3 -3
- package/dist/primitives/copy-button.cjs +3 -3
- package/dist/primitives/copy-button.js +2 -2
- package/dist/primitives/decision-actions.cjs +2 -2
- package/dist/primitives/decision-actions.js +1 -1
- package/dist/primitives/delete-confirmation-dialog.cjs +4 -4
- package/dist/primitives/delete-confirmation-dialog.js +3 -3
- package/dist/primitives/document-preview.cjs +4 -4
- package/dist/primitives/document-preview.js +2 -2
- package/dist/primitives/editable-list.cjs +6 -6
- package/dist/primitives/editable-list.js +1 -1
- package/dist/primitives/empty-state.cjs +3 -3
- package/dist/primitives/empty-state.js +2 -2
- package/dist/primitives/file-dropzone.cjs +3 -3
- package/dist/primitives/file-dropzone.js +2 -2
- package/dist/primitives/file-preview-internals.cjs +3 -3
- package/dist/primitives/file-preview-internals.js +2 -2
- package/dist/primitives/file-preview.cjs +15 -15
- package/dist/primitives/file-preview.js +4 -4
- package/dist/primitives/filter-bar.cjs +4 -4
- package/dist/primitives/filter-bar.js +3 -3
- package/dist/primitives/input-group.cjs +3 -3
- package/dist/primitives/input-group.js +2 -2
- package/dist/primitives/load-more-button.cjs +3 -3
- package/dist/primitives/load-more-button.js +2 -2
- package/dist/primitives/message-scroller.cjs +3 -3
- package/dist/primitives/message-scroller.js +2 -2
- package/dist/primitives/message.cjs +3 -3
- package/dist/primitives/message.js +2 -2
- package/dist/primitives/page-header-actions.cjs +3 -3
- package/dist/primitives/page-header-actions.js +2 -2
- package/dist/primitives/quick-filters.cjs +3 -3
- package/dist/primitives/quick-filters.js +2 -2
- package/dist/primitives/resource-list.cjs +7 -7
- package/dist/primitives/resource-list.js +6 -6
- package/dist/primitives/search-input.cjs +101 -0
- package/dist/primitives/search-input.d.cts +23 -0
- package/dist/primitives/search-input.d.ts +23 -0
- package/dist/primitives/search-input.js +101 -0
- package/dist/primitives/spinner.cjs +3 -18
- package/dist/primitives/spinner.js +3 -18
- package/dist/primitives/split-action-button.cjs +3 -3
- package/dist/primitives/split-action-button.js +1 -1
- package/dist/primitives/suggestion.cjs +3 -3
- package/dist/primitives/suggestion.js +2 -2
- package/dist/primitives/tag-input.cjs +3 -3
- package/dist/primitives/tag-input.js +1 -1
- package/dist/primitives/voice-dictation-button.cjs +3 -3
- package/dist/primitives/voice-dictation-button.js +2 -2
- package/package.json +11 -1
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
"use client";
|
|
3
|
+
import {
|
|
4
|
+
Spinner
|
|
5
|
+
} from "../chunk-QZBPZLAB.js";
|
|
6
|
+
import {
|
|
7
|
+
InputGroup,
|
|
8
|
+
InputGroupAddon,
|
|
9
|
+
InputGroupButton,
|
|
10
|
+
InputGroupInput
|
|
11
|
+
} from "../chunk-QTPPNK6F.js";
|
|
12
|
+
import "../chunk-6FC65AZQ.js";
|
|
13
|
+
import "../chunk-QMA3WVB7.js";
|
|
14
|
+
import "../chunk-W326GKML.js";
|
|
15
|
+
import {
|
|
16
|
+
cn
|
|
17
|
+
} from "../chunk-G6SRSWXB.js";
|
|
18
|
+
|
|
19
|
+
// src/primitives/search-input.tsx
|
|
20
|
+
import { forwardRef, useImperativeHandle, useRef } from "react";
|
|
21
|
+
import { Search, X } from "lucide-react";
|
|
22
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
23
|
+
var SearchInput = forwardRef(function SearchInput2({
|
|
24
|
+
label,
|
|
25
|
+
value,
|
|
26
|
+
onValueChange,
|
|
27
|
+
loading = false,
|
|
28
|
+
loadingLabel = "Searching\u2026",
|
|
29
|
+
clearLabel = "Clear search",
|
|
30
|
+
controlSize = "default",
|
|
31
|
+
placeholder = label,
|
|
32
|
+
disabled = false,
|
|
33
|
+
readOnly = false,
|
|
34
|
+
className,
|
|
35
|
+
onKeyDown,
|
|
36
|
+
...inputProps
|
|
37
|
+
}, ref) {
|
|
38
|
+
const inputRef = useRef(null);
|
|
39
|
+
useImperativeHandle(ref, () => inputRef.current);
|
|
40
|
+
const canClear = value.length > 0 && !disabled && !readOnly;
|
|
41
|
+
const clear = () => {
|
|
42
|
+
if (!canClear) return;
|
|
43
|
+
onValueChange("");
|
|
44
|
+
inputRef.current?.focus();
|
|
45
|
+
};
|
|
46
|
+
return /* @__PURE__ */ jsxs(
|
|
47
|
+
InputGroup,
|
|
48
|
+
{
|
|
49
|
+
"data-slot": "search-input",
|
|
50
|
+
"data-disabled": disabled || void 0,
|
|
51
|
+
"aria-busy": loading || void 0,
|
|
52
|
+
className: cn(
|
|
53
|
+
"w-full rounded-full border-0 bg-muted px-1 shadow-none dark:bg-muted",
|
|
54
|
+
"has-[[data-slot=input-group-control]:focus-visible]:ring-2",
|
|
55
|
+
controlSize === "lg" ? "h-[48px]" : "h-[44px]",
|
|
56
|
+
disabled ? "opacity-60" : "hover:bg-muted/80",
|
|
57
|
+
className
|
|
58
|
+
),
|
|
59
|
+
children: [
|
|
60
|
+
/* @__PURE__ */ jsx(InputGroupAddon, { align: "inline-start", className: "shrink-0 pl-3", children: loading ? /* @__PURE__ */ jsx(Spinner, { "aria-label": loadingLabel, className: "size-5" }) : /* @__PURE__ */ jsx(Search, { "aria-hidden": true, className: "size-5" }) }),
|
|
61
|
+
/* @__PURE__ */ jsx(
|
|
62
|
+
InputGroupInput,
|
|
63
|
+
{
|
|
64
|
+
...inputProps,
|
|
65
|
+
ref: inputRef,
|
|
66
|
+
type: "search",
|
|
67
|
+
"aria-label": label,
|
|
68
|
+
value,
|
|
69
|
+
placeholder,
|
|
70
|
+
disabled,
|
|
71
|
+
readOnly,
|
|
72
|
+
onChange: (event) => onValueChange(event.target.value),
|
|
73
|
+
onKeyDown: (event) => {
|
|
74
|
+
onKeyDown?.(event);
|
|
75
|
+
if (event.defaultPrevented || event.nativeEvent.isComposing || event.key !== "Escape" || !canClear) return;
|
|
76
|
+
event.preventDefault();
|
|
77
|
+
event.stopPropagation();
|
|
78
|
+
clear();
|
|
79
|
+
},
|
|
80
|
+
className: "h-full rounded-none pe-3 [&::-webkit-search-cancel-button]:hidden [&::-webkit-search-decoration]:hidden"
|
|
81
|
+
}
|
|
82
|
+
),
|
|
83
|
+
value.length > 0 && /* @__PURE__ */ jsx(InputGroupAddon, { align: "inline-end", className: "shrink-0 p-0", children: /* @__PURE__ */ jsx(
|
|
84
|
+
InputGroupButton,
|
|
85
|
+
{
|
|
86
|
+
size: "icon-sm",
|
|
87
|
+
shape: "circle",
|
|
88
|
+
"aria-label": clearLabel,
|
|
89
|
+
disabled: disabled || readOnly,
|
|
90
|
+
onClick: clear,
|
|
91
|
+
className: "size-[44px] shrink-0",
|
|
92
|
+
children: /* @__PURE__ */ jsx(X, { "aria-hidden": true })
|
|
93
|
+
}
|
|
94
|
+
) })
|
|
95
|
+
]
|
|
96
|
+
}
|
|
97
|
+
);
|
|
98
|
+
});
|
|
99
|
+
export {
|
|
100
|
+
SearchInput
|
|
101
|
+
};
|
|
@@ -1,23 +1,8 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
|
|
2
2
|
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var _chunkVMXKT67Ecjs = require('../chunk-VMXKT67E.cjs');
|
|
5
|
+
require('../chunk-KWLSBTB2.cjs');
|
|
5
6
|
|
|
6
|
-
// src/primitives/spinner.tsx
|
|
7
|
-
var _lucidereact = require('lucide-react');
|
|
8
|
-
var _jsxruntime = require('react/jsx-runtime');
|
|
9
|
-
function Spinner({ className, ...props }) {
|
|
10
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11
|
-
_lucidereact.Loader2,
|
|
12
|
-
{
|
|
13
|
-
"data-slot": "spinner",
|
|
14
|
-
role: "status",
|
|
15
|
-
"aria-label": "Loading",
|
|
16
|
-
className: _chunkKWLSBTB2cjs.cn.call(void 0, "size-4 animate-spin", className),
|
|
17
|
-
...props
|
|
18
|
-
}
|
|
19
|
-
);
|
|
20
|
-
}
|
|
21
7
|
|
|
22
|
-
|
|
23
|
-
exports.Spinner = Spinner;
|
|
8
|
+
exports.Spinner = _chunkVMXKT67Ecjs.Spinner;
|
|
@@ -1,23 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import {
|
|
3
|
-
|
|
4
|
-
} from "../chunk-
|
|
5
|
-
|
|
6
|
-
// src/primitives/spinner.tsx
|
|
7
|
-
import { Loader2 } from "lucide-react";
|
|
8
|
-
import { jsx } from "react/jsx-runtime";
|
|
9
|
-
function Spinner({ className, ...props }) {
|
|
10
|
-
return /* @__PURE__ */ jsx(
|
|
11
|
-
Loader2,
|
|
12
|
-
{
|
|
13
|
-
"data-slot": "spinner",
|
|
14
|
-
role: "status",
|
|
15
|
-
"aria-label": "Loading",
|
|
16
|
-
className: cn("size-4 animate-spin", className),
|
|
17
|
-
...props
|
|
18
|
-
}
|
|
19
|
-
);
|
|
20
|
-
}
|
|
3
|
+
Spinner
|
|
4
|
+
} from "../chunk-QZBPZLAB.js";
|
|
5
|
+
import "../chunk-G6SRSWXB.js";
|
|
21
6
|
export {
|
|
22
7
|
Spinner
|
|
23
8
|
};
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
var _chunkZAITUDYDcjs = require('../chunk-ZAITUDYD.cjs');
|
|
10
10
|
|
|
11
11
|
|
|
12
|
-
var
|
|
12
|
+
var _chunkJDEXZGIYcjs = require('../chunk-JDEXZGIY.cjs');
|
|
13
13
|
|
|
14
14
|
|
|
15
15
|
var _chunkKWLSBTB2cjs = require('../chunk-KWLSBTB2.cjs');
|
|
@@ -35,7 +35,7 @@ var SplitActionButton = _react.forwardRef.call(void 0, function SplitActionButto
|
|
|
35
35
|
}, ref) {
|
|
36
36
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref, className: _chunkKWLSBTB2cjs.cn.call(void 0, "inline-flex items-stretch", className), children: [
|
|
37
37
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
38
|
-
|
|
38
|
+
_chunkJDEXZGIYcjs.Button,
|
|
39
39
|
{
|
|
40
40
|
size,
|
|
41
41
|
variant,
|
|
@@ -53,7 +53,7 @@ var SplitActionButton = _react.forwardRef.call(void 0, function SplitActionButto
|
|
|
53
53
|
),
|
|
54
54
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkZAITUDYDcjs.DropdownMenu, { children: [
|
|
55
55
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZAITUDYDcjs.DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
56
|
-
|
|
56
|
+
_chunkJDEXZGIYcjs.Button,
|
|
57
57
|
{
|
|
58
58
|
size,
|
|
59
59
|
variant,
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
var
|
|
6
|
-
require('../chunk-
|
|
5
|
+
var _chunkM4V7OJNFcjs = require('../chunk-M4V7OJNF.cjs');
|
|
6
|
+
require('../chunk-JDEXZGIY.cjs');
|
|
7
7
|
require('../chunk-KWLSBTB2.cjs');
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
exports.Suggestion =
|
|
11
|
+
exports.Suggestion = _chunkM4V7OJNFcjs.Suggestion; exports.Suggestions = _chunkM4V7OJNFcjs.Suggestions;
|
|
@@ -11,7 +11,7 @@ var _chunkPQUSJEXLcjs = require('../chunk-PQUSJEXL.cjs');
|
|
|
11
11
|
var _chunkI6GUOEBOcjs = require('../chunk-I6GUOEBO.cjs');
|
|
12
12
|
|
|
13
13
|
|
|
14
|
-
var
|
|
14
|
+
var _chunkJDEXZGIYcjs = require('../chunk-JDEXZGIY.cjs');
|
|
15
15
|
require('../chunk-KWLSBTB2.cjs');
|
|
16
16
|
|
|
17
17
|
// src/primitives/tag-input.tsx
|
|
@@ -48,7 +48,7 @@ function TagInput({
|
|
|
48
48
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex flex-wrap gap-2", children: value.map((tag) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkI6GUOEBOcjs.Badge, { variant: "secondary", className: "text-sm", children: [
|
|
49
49
|
tag,
|
|
50
50
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
51
|
-
|
|
51
|
+
_chunkJDEXZGIYcjs.Button,
|
|
52
52
|
{
|
|
53
53
|
variant: "ghost",
|
|
54
54
|
size: "sm",
|
|
@@ -72,7 +72,7 @@ function TagInput({
|
|
|
72
72
|
}
|
|
73
73
|
),
|
|
74
74
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
75
|
-
|
|
75
|
+
_chunkJDEXZGIYcjs.Button,
|
|
76
76
|
{
|
|
77
77
|
type: "button",
|
|
78
78
|
variant: "outline",
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
"use client";
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
var
|
|
6
|
-
require('../chunk-
|
|
5
|
+
var _chunkLKPM6DQPcjs = require('../chunk-LKPM6DQP.cjs');
|
|
6
|
+
require('../chunk-JDEXZGIY.cjs');
|
|
7
7
|
require('../chunk-KWLSBTB2.cjs');
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
exports.VoiceDictationButton =
|
|
10
|
+
exports.VoiceDictationButton = _chunkLKPM6DQPcjs.VoiceDictationButton;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@epicbagel/saas-kit",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.6.0",
|
|
4
4
|
"description": "Accessible React primitives, layout components and design tokens for SaaS apps, built on Radix UI and Tailwind CSS v4.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"keywords": [
|
|
@@ -920,6 +920,16 @@
|
|
|
920
920
|
"default": "./dist/primitives/scroll-area.cjs"
|
|
921
921
|
}
|
|
922
922
|
},
|
|
923
|
+
"./primitives/search-input": {
|
|
924
|
+
"import": {
|
|
925
|
+
"types": "./dist/primitives/search-input.d.ts",
|
|
926
|
+
"default": "./dist/primitives/search-input.js"
|
|
927
|
+
},
|
|
928
|
+
"require": {
|
|
929
|
+
"types": "./dist/primitives/search-input.d.cts",
|
|
930
|
+
"default": "./dist/primitives/search-input.cjs"
|
|
931
|
+
}
|
|
932
|
+
},
|
|
923
933
|
"./primitives/section-header": {
|
|
924
934
|
"import": {
|
|
925
935
|
"types": "./dist/primitives/section-header.d.ts",
|