@saas-ui/react 3.0.0-alpha.3 → 3.0.0-alpha.4
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/CHANGELOG.md +6 -0
- package/dist/components/app-shell/index.cjs +1 -1
- package/dist/components/app-shell/index.d.cts +1 -1
- package/dist/components/app-shell/index.d.ts +1 -1
- package/dist/components/app-shell/index.js +1 -1
- package/dist/components/command/index.cjs +1 -1
- package/dist/components/command/index.js +1 -1
- package/dist/components/empty-state/index.cjs +48 -0
- package/dist/components/empty-state/index.d.cts +11 -0
- package/dist/components/empty-state/index.d.ts +11 -0
- package/dist/components/empty-state/index.js +23 -0
- package/dist/components/grid-list/index.cjs +68 -0
- package/dist/components/grid-list/index.d.cts +22 -0
- package/dist/components/grid-list/index.d.ts +22 -0
- package/dist/components/grid-list/index.js +45 -0
- package/dist/components/icon-badge/index.cjs +1 -1
- package/dist/components/icon-badge/index.d.cts +1 -1
- package/dist/components/icon-badge/index.d.ts +1 -1
- package/dist/components/icon-badge/index.js +1 -1
- package/dist/components/loading-overlay/index.cjs +30 -15
- package/dist/components/loading-overlay/index.d.cts +19 -6
- package/dist/components/loading-overlay/index.d.ts +19 -6
- package/dist/components/loading-overlay/index.js +26 -13
- package/dist/components/navbar/index.cjs +20 -12
- package/dist/components/navbar/index.d.cts +9 -9
- package/dist/components/navbar/index.d.ts +9 -9
- package/dist/components/navbar/index.js +17 -9
- package/dist/components/persona/index.cjs +52 -15
- package/dist/components/persona/index.d.cts +23 -3
- package/dist/components/persona/index.d.ts +23 -3
- package/dist/components/persona/index.js +42 -7
- package/dist/components/sidebar/index.cjs +58 -30
- package/dist/components/sidebar/index.d.cts +24 -23
- package/dist/components/sidebar/index.d.ts +24 -23
- package/dist/components/sidebar/index.js +55 -27
- package/dist/components/steps/index.cjs +7 -9
- package/dist/components/steps/index.d.cts +2 -2
- package/dist/components/steps/index.d.ts +2 -2
- package/dist/components/steps/index.js +4 -6
- package/dist/index.cjs +11 -11
- package/dist/index.js +11 -11
- package/package.json +1 -1
@@ -3,7 +3,27 @@ import react__default from 'react';
|
|
3
3
|
import { HTMLChakraProps, SlotRecipeProps, AvatarRootProps, ImageProps } from '@chakra-ui/react';
|
4
4
|
|
5
5
|
type Presence = 'online' | 'offline' | 'busy' | 'dnd' | 'away';
|
6
|
-
interface
|
6
|
+
interface PresenceConfig {
|
7
|
+
label: string;
|
8
|
+
color: string;
|
9
|
+
}
|
10
|
+
type PresenceOptions<P extends string = Presence> = Record<P, PresenceConfig>;
|
11
|
+
/**
|
12
|
+
* The presence configuration object.
|
13
|
+
*
|
14
|
+
* Default presence values: online, offline, busy, dnd, away
|
15
|
+
*
|
16
|
+
* You can overwrite colors in the theme semantic tokens.
|
17
|
+
* theme.semanticTokens.colors['presence.online'] = 'cyan.500'
|
18
|
+
*
|
19
|
+
* Or add a custom presence value
|
20
|
+
* theme.semanticTokens.colors['presence.vacay'] = 'blue.500'
|
21
|
+
*
|
22
|
+
* @see Docs https://saas-ui.dev/docs/components/data-display/persona
|
23
|
+
*/
|
24
|
+
declare const defaultPresenceOptions: PresenceOptions;
|
25
|
+
|
26
|
+
interface PersonaRootProps extends HTMLChakraProps<'div'>, SlotRecipeProps<'suiPersona'> {
|
7
27
|
/**
|
8
28
|
* Indicates that a person is out of office. Changes the presence badge style.
|
9
29
|
*/
|
@@ -78,7 +98,7 @@ interface PersonaOptions {
|
|
78
98
|
*/
|
79
99
|
hideDetails?: boolean;
|
80
100
|
}
|
81
|
-
interface PersonaProps extends PersonaOptions,
|
101
|
+
interface PersonaProps extends PersonaOptions, PersonaAvatarProps$1, PersonaRootProps {
|
82
102
|
}
|
83
103
|
/**
|
84
104
|
* The wrapper component that handles default composition.
|
@@ -90,4 +110,4 @@ interface PersonaAvatarProps extends Omit<PersonaProps, 'hideDetails' | 'label'
|
|
90
110
|
}
|
91
111
|
declare const PersonaAvatar: react.ForwardRefExoticComponent<PersonaAvatarProps & react.RefAttributes<HTMLDivElement>>;
|
92
112
|
|
93
|
-
export { Persona, PersonaAvatar, type PersonaAvatarProps, type PersonaProps };
|
113
|
+
export { Persona, PersonaAvatar, type PersonaAvatarProps, type PersonaProps, type Presence, type PresenceConfig, defaultPresenceOptions };
|
@@ -8,18 +8,22 @@ import * as React2 from "react";
|
|
8
8
|
import { forwardRef } from "react";
|
9
9
|
import {
|
10
10
|
Avatar,
|
11
|
-
chakra
|
12
|
-
createSlotRecipeContext
|
11
|
+
chakra
|
13
12
|
} from "@chakra-ui/react";
|
14
13
|
import { dataAttr } from "@saas-ui/core/utils";
|
15
|
-
|
14
|
+
|
15
|
+
// src/components/persona/persona.context.ts
|
16
|
+
import { createSlotRecipeContext } from "@chakra-ui/react";
|
16
17
|
var {
|
17
18
|
useStyles: usePersonaStyles,
|
18
19
|
withProvider,
|
19
20
|
withContext
|
20
21
|
} = createSlotRecipeContext({
|
21
|
-
key: "
|
22
|
+
key: "suiPersona"
|
22
23
|
});
|
24
|
+
|
25
|
+
// src/components/persona/persona-primitive.tsx
|
26
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
23
27
|
var PersonaRoot = withProvider(
|
24
28
|
forwardRef((props, ref) => {
|
25
29
|
const { outOfOffice, presence, ...rest } = props;
|
@@ -79,8 +83,14 @@ var PersonaLabel = withContext(
|
|
79
83
|
"label"
|
80
84
|
);
|
81
85
|
PersonaLabel.displayName = "PersonaLabel";
|
82
|
-
var PersonaSecondaryLabel = withContext(
|
83
|
-
|
86
|
+
var PersonaSecondaryLabel = withContext(
|
87
|
+
"span",
|
88
|
+
"secondaryLabel"
|
89
|
+
);
|
90
|
+
var PersonaTertiaryLabel = withContext(
|
91
|
+
"span",
|
92
|
+
"tertiaryLabel"
|
93
|
+
);
|
84
94
|
|
85
95
|
// src/components/persona/persona.tsx
|
86
96
|
import { jsx as jsx2, jsxs as jsxs2 } from "react/jsx-runtime";
|
@@ -143,7 +153,32 @@ Persona.displayName = "Persona";
|
|
143
153
|
var PersonaAvatar2 = React2.forwardRef(function PersonaAvatar3(props, ref) {
|
144
154
|
return /* @__PURE__ */ jsx2(Persona, { ref, ...props, hideDetails: true });
|
145
155
|
});
|
156
|
+
|
157
|
+
// src/components/persona/presence.ts
|
158
|
+
var defaultPresenceOptions = {
|
159
|
+
online: {
|
160
|
+
label: "Online",
|
161
|
+
color: "presence.online"
|
162
|
+
},
|
163
|
+
offline: {
|
164
|
+
label: "Offline",
|
165
|
+
color: "presence.offline"
|
166
|
+
},
|
167
|
+
busy: {
|
168
|
+
label: "Busy",
|
169
|
+
color: "presence.busy"
|
170
|
+
},
|
171
|
+
dnd: {
|
172
|
+
label: "Do-not-disturb",
|
173
|
+
color: "presence.dnd"
|
174
|
+
},
|
175
|
+
away: {
|
176
|
+
label: "Away",
|
177
|
+
color: "presence.away"
|
178
|
+
}
|
179
|
+
};
|
146
180
|
export {
|
147
181
|
Persona,
|
148
|
-
PersonaAvatar2 as PersonaAvatar
|
182
|
+
PersonaAvatar2 as PersonaAvatar,
|
183
|
+
defaultPresenceOptions
|
149
184
|
};
|
@@ -19,18 +19,18 @@ var __copyProps = (to, from, except, desc) => {
|
|
19
19
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
20
20
|
|
21
21
|
// src/components/sidebar/index.ts
|
22
|
-
var
|
23
|
-
__export(
|
24
|
-
Sidebar: () =>
|
25
|
-
useSidebar: () =>
|
22
|
+
var sidebar_exports2 = {};
|
23
|
+
__export(sidebar_exports2, {
|
24
|
+
Sidebar: () => sidebar_exports,
|
25
|
+
useSidebar: () => import_sidebar2.useSidebar,
|
26
26
|
useSidebarItemStyles: () => useSidebarItemStyles,
|
27
27
|
useSidebarStyles: () => useSidebarStyles
|
28
28
|
});
|
29
|
-
module.exports = __toCommonJS(
|
29
|
+
module.exports = __toCommonJS(sidebar_exports2);
|
30
30
|
|
31
|
-
// src/components/sidebar/
|
32
|
-
var
|
33
|
-
__export(
|
31
|
+
// src/components/sidebar/sidebar.tsx
|
32
|
+
var sidebar_exports = {};
|
33
|
+
__export(sidebar_exports, {
|
34
34
|
Backdrop: () => SidebarBackdrop,
|
35
35
|
Body: () => SidebarBody,
|
36
36
|
FlyoutTrigger: () => SidebarFlyoutTrigger,
|
@@ -49,11 +49,10 @@ __export(namespace_exports, {
|
|
49
49
|
Track: () => SidebarTrack,
|
50
50
|
Trigger: () => SidebarTrigger
|
51
51
|
});
|
52
|
+
var import_sidebar = require("@saas-ui/core/sidebar");
|
52
53
|
|
53
|
-
// src/components/sidebar/sidebar.
|
54
|
+
// src/components/sidebar/sidebar.context.ts
|
54
55
|
var import_react = require("@chakra-ui/react");
|
55
|
-
var import_sidebar = require("@saas-ui/core/sidebar");
|
56
|
-
var import_jsx_runtime = require("react/jsx-runtime");
|
57
56
|
var {
|
58
57
|
withContext,
|
59
58
|
useRecipeResult,
|
@@ -61,8 +60,18 @@ var {
|
|
61
60
|
ClassNamesProvider,
|
62
61
|
useStyles: useSidebarStyles
|
63
62
|
} = (0, import_react.createSlotRecipeContext)({
|
64
|
-
key: "
|
63
|
+
key: "suiSidebar"
|
64
|
+
});
|
65
|
+
var {
|
66
|
+
withProvider: withItemProvider,
|
67
|
+
withContext: withItemContext,
|
68
|
+
useStyles: useSidebarItemStyles
|
69
|
+
} = (0, import_react.createSlotRecipeContext)({
|
70
|
+
key: "suiSidebarNavItem"
|
65
71
|
});
|
72
|
+
|
73
|
+
// src/components/sidebar/sidebar.tsx
|
74
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
66
75
|
var SidebarProvider = function SidebarProvider2(props) {
|
67
76
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_sidebar.Sidebar.Provider, { ...props, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RecipeProvider, { ...props, children: props.children }) });
|
68
77
|
};
|
@@ -78,21 +87,35 @@ var SidebarRoot = withContext(
|
|
78
87
|
import_sidebar.Sidebar.Root,
|
79
88
|
"root"
|
80
89
|
);
|
81
|
-
var SidebarTrigger = withContext(
|
82
|
-
|
83
|
-
|
90
|
+
var SidebarTrigger = withContext(
|
91
|
+
import_sidebar.Sidebar.Trigger,
|
92
|
+
"trigger",
|
93
|
+
{
|
94
|
+
forwardAsChild: true
|
95
|
+
}
|
96
|
+
);
|
84
97
|
var SidebarFlyoutTrigger = withContext(import_sidebar.Sidebar.FlyoutTrigger, "flyoutTrigger", {
|
85
98
|
forwardAsChild: true
|
86
99
|
});
|
87
|
-
var SidebarBackdrop = withContext(
|
88
|
-
|
89
|
-
|
90
|
-
|
100
|
+
var SidebarBackdrop = withContext(
|
101
|
+
import_sidebar.Sidebar.Backdrop,
|
102
|
+
"backdrop",
|
103
|
+
{
|
104
|
+
forwardAsChild: true
|
105
|
+
}
|
106
|
+
);
|
107
|
+
var SidebarHeader = withContext(
|
108
|
+
import_sidebar.Sidebar.Header,
|
109
|
+
"header"
|
110
|
+
);
|
91
111
|
var SidebarBody = withContext(
|
92
112
|
import_sidebar.Sidebar.Body,
|
93
113
|
"body"
|
94
114
|
);
|
95
|
-
var SidebarFooter = withContext(
|
115
|
+
var SidebarFooter = withContext(
|
116
|
+
import_sidebar.Sidebar.Footer,
|
117
|
+
"footer"
|
118
|
+
);
|
96
119
|
var SidebarTrack = withContext(
|
97
120
|
import_sidebar.Sidebar.Track,
|
98
121
|
"track",
|
@@ -109,22 +132,27 @@ var SidebarGroup = withContext(
|
|
109
132
|
}
|
110
133
|
}
|
111
134
|
);
|
112
|
-
var SidebarGroupHeader = withContext(
|
135
|
+
var SidebarGroupHeader = withContext(
|
136
|
+
import_sidebar.Sidebar.GroupHeader,
|
137
|
+
"groupHeader"
|
138
|
+
);
|
113
139
|
var SidebarGroupTitle = withContext(import_sidebar.Sidebar.GroupTitle, "groupTitle");
|
114
140
|
var SidebarGroupEndElement = withContext(import_sidebar.Sidebar.GroupEndElement, "groupEndElement");
|
115
|
-
var SidebarGroupContent = withContext(
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
var SidebarNavItem = withItemProvider(import_sidebar.Sidebar.NavItem, "item");
|
141
|
+
var SidebarGroupContent = withContext(
|
142
|
+
import_sidebar.Sidebar.GroupContent,
|
143
|
+
"groupContent"
|
144
|
+
);
|
145
|
+
var SidebarNavItem = withItemProvider(
|
146
|
+
import_sidebar.Sidebar.NavItem,
|
147
|
+
"item"
|
148
|
+
);
|
124
149
|
var SidebarNavButton = withItemContext(import_sidebar.Sidebar.NavButton, "button", {
|
125
150
|
forwardAsChild: true
|
126
151
|
});
|
127
152
|
var SidebarNavItemEndElement = withItemContext(import_sidebar.Sidebar.NavItemEndElement, "endElement");
|
153
|
+
|
154
|
+
// src/components/sidebar/index.ts
|
155
|
+
var import_sidebar2 = require("@saas-ui/core/sidebar");
|
128
156
|
// Annotate the CommonJS export names for ESM import in node:
|
129
157
|
0 && (module.exports = {
|
130
158
|
Sidebar,
|