@appcorp/shadcn 1.1.45 → 1.1.46
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/components/nav-main.d.ts +17 -10
- package/components/nav-main.js +61 -12
- package/components/team-switcher.js +7 -1
- package/data/admin-dashboard.d.ts +8 -0
- package/data/admin-dashboard.js +74 -0
- package/package.json +1 -1
package/components/nav-main.d.ts
CHANGED
|
@@ -1,15 +1,22 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { type LucideIcon } from "lucide-react";
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
interface NavItem {
|
|
4
|
+
title: string;
|
|
5
|
+
url: string;
|
|
6
|
+
icon?: LucideIcon;
|
|
7
|
+
isActive?: boolean;
|
|
8
|
+
enabled: boolean;
|
|
9
|
+
order: number;
|
|
10
|
+
subItems?: {
|
|
5
11
|
title: string;
|
|
6
12
|
url: string;
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
title: string;
|
|
11
|
-
url: string;
|
|
12
|
-
isActive: boolean;
|
|
13
|
-
}[];
|
|
13
|
+
isActive: boolean;
|
|
14
|
+
enabled: boolean;
|
|
15
|
+
order: number;
|
|
14
16
|
}[];
|
|
15
|
-
}
|
|
17
|
+
}
|
|
18
|
+
interface NavMainProps {
|
|
19
|
+
items: NavItem[];
|
|
20
|
+
}
|
|
21
|
+
export declare const NavMain: React.NamedExoticComponent<NavMainProps>;
|
|
22
|
+
export {};
|
package/components/nav-main.js
CHANGED
|
@@ -1,39 +1,88 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
"use strict";
|
|
3
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
4
|
+
if (k2 === undefined) k2 = k;
|
|
5
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
7
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
8
|
+
}
|
|
9
|
+
Object.defineProperty(o, k2, desc);
|
|
10
|
+
}) : (function(o, m, k, k2) {
|
|
11
|
+
if (k2 === undefined) k2 = k;
|
|
12
|
+
o[k2] = m[k];
|
|
13
|
+
}));
|
|
14
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
15
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
16
|
+
}) : function(o, v) {
|
|
17
|
+
o["default"] = v;
|
|
18
|
+
});
|
|
19
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
20
|
+
var ownKeys = function(o) {
|
|
21
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
22
|
+
var ar = [];
|
|
23
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
24
|
+
return ar;
|
|
25
|
+
};
|
|
26
|
+
return ownKeys(o);
|
|
27
|
+
};
|
|
28
|
+
return function (mod) {
|
|
29
|
+
if (mod && mod.__esModule) return mod;
|
|
30
|
+
var result = {};
|
|
31
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
32
|
+
__setModuleDefault(result, mod);
|
|
33
|
+
return result;
|
|
34
|
+
};
|
|
35
|
+
})();
|
|
3
36
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
37
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
38
|
};
|
|
6
39
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.NavMain =
|
|
8
|
-
var react_1 =
|
|
40
|
+
exports.NavMain = void 0;
|
|
41
|
+
var react_1 = __importStar(require("react"));
|
|
9
42
|
var lucide_react_1 = require("lucide-react");
|
|
10
43
|
var collapsible_1 = require("./ui/collapsible");
|
|
11
44
|
var sidebar_1 = require("./sidebar");
|
|
12
45
|
var link_1 = __importDefault(require("next/link"));
|
|
13
|
-
function
|
|
46
|
+
exports.NavMain = react_1.default.memo(function (_a) {
|
|
14
47
|
var items = _a.items;
|
|
48
|
+
var processedItems = (0, react_1.useMemo)(function () {
|
|
49
|
+
return items
|
|
50
|
+
.filter(function (_a) {
|
|
51
|
+
var enabled = _a.enabled;
|
|
52
|
+
return enabled;
|
|
53
|
+
})
|
|
54
|
+
.sort(function (a, b) { return a.order - b.order; });
|
|
55
|
+
}, [items]);
|
|
15
56
|
return (react_1.default.createElement(sidebar_1.SidebarGroup, null,
|
|
16
57
|
react_1.default.createElement(sidebar_1.SidebarGroupLabel, null, "Current App"),
|
|
17
|
-
react_1.default.createElement(sidebar_1.SidebarMenu, null,
|
|
18
|
-
var _a
|
|
19
|
-
if (!item.subItems ||
|
|
20
|
-
return (react_1.default.createElement(sidebar_1.SidebarMenuItem, { key: item.
|
|
58
|
+
react_1.default.createElement(sidebar_1.SidebarMenu, null, processedItems.map(function (item) {
|
|
59
|
+
var _a;
|
|
60
|
+
if (!((_a = item.subItems) === null || _a === void 0 ? void 0 : _a.length)) {
|
|
61
|
+
return (react_1.default.createElement(sidebar_1.SidebarMenuItem, { key: item.url },
|
|
21
62
|
react_1.default.createElement(link_1.default, { href: item.url },
|
|
22
63
|
react_1.default.createElement(sidebar_1.SidebarMenuButton, { className: "cursor-pointer" },
|
|
23
64
|
item.icon && react_1.default.createElement(item.icon, null),
|
|
24
65
|
react_1.default.createElement("span", null, item.title)))));
|
|
25
66
|
}
|
|
26
|
-
|
|
67
|
+
var processedSubItems = (0, react_1.useMemo)(function () {
|
|
68
|
+
return item
|
|
69
|
+
.subItems.filter(function (_a) {
|
|
70
|
+
var enabled = _a.enabled;
|
|
71
|
+
return enabled;
|
|
72
|
+
})
|
|
73
|
+
.sort(function (a, b) { return a.order - b.order; });
|
|
74
|
+
}, [item.subItems]);
|
|
75
|
+
return (react_1.default.createElement(collapsible_1.Collapsible, { key: item.url, asChild: true, defaultOpen: item.isActive, className: "group/collapsible" },
|
|
27
76
|
react_1.default.createElement(sidebar_1.SidebarMenuItem, null,
|
|
28
77
|
react_1.default.createElement(collapsible_1.CollapsibleTrigger, { asChild: true },
|
|
29
78
|
react_1.default.createElement(sidebar_1.SidebarMenuButton, { tooltip: item.title, className: item.isActive ? "bg-gray-300" : "" },
|
|
30
79
|
item.icon && react_1.default.createElement(item.icon, null),
|
|
31
80
|
react_1.default.createElement("span", null, item.title),
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
react_1.default.createElement(sidebar_1.SidebarMenuSub, null,
|
|
81
|
+
react_1.default.createElement(lucide_react_1.ChevronRight, { className: "ml-auto transition-transform duration-200 group-data-[state=open]/collapsible:rotate-90" }))),
|
|
82
|
+
processedSubItems.length > 0 && (react_1.default.createElement(collapsible_1.CollapsibleContent, null,
|
|
83
|
+
react_1.default.createElement(sidebar_1.SidebarMenuSub, null, processedSubItems.map(function (subItem) { return (react_1.default.createElement(sidebar_1.SidebarMenuSubItem, { key: subItem.url, className: "rounded-md ".concat(subItem.isActive ? "bg-gray-200" : "") },
|
|
35
84
|
react_1.default.createElement(sidebar_1.SidebarMenuSubButton, { asChild: true },
|
|
36
85
|
react_1.default.createElement(link_1.default, { href: subItem.url },
|
|
37
86
|
react_1.default.createElement("span", null, subItem.title))))); })))))));
|
|
38
87
|
}))));
|
|
39
|
-
}
|
|
88
|
+
});
|
|
@@ -32,7 +32,13 @@ var TeamSwitcher = function (_a) {
|
|
|
32
32
|
react_1.default.createElement(lucide_react_1.ChevronsUpDown, { className: "ml-auto" }))),
|
|
33
33
|
react_1.default.createElement(dropdown_menu_1.DropdownMenuContent, { className: "w-(--radix-dropdown-menu-trigger-width) min-w-56 rounded-lg", align: "start", side: isMobile ? "bottom" : "right", sideOffset: 4 },
|
|
34
34
|
react_1.default.createElement(dropdown_menu_1.DropdownMenuLabel, { className: "text-muted-foreground text-xs" }, "Profiles"),
|
|
35
|
-
profiles
|
|
35
|
+
profiles
|
|
36
|
+
.filter(function (_a) {
|
|
37
|
+
var enabled = _a.enabled;
|
|
38
|
+
return enabled;
|
|
39
|
+
})
|
|
40
|
+
.sort(function (a, b) { return a.order - b.order; })
|
|
41
|
+
.map(function (profile) { return (react_1.default.createElement(dropdown_menu_1.DropdownMenuItem, { key: profile.name, onClick: function () { return setActiveMember(profile); }, className: "gap-2 p-2" },
|
|
36
42
|
react_1.default.createElement("div", { className: "flex size-6 items-center justify-center rounded-md border" },
|
|
37
43
|
react_1.default.createElement(avatar_1.Avatar, { className: "size-6" },
|
|
38
44
|
react_1.default.createElement(avatar_1.AvatarImage, { src: profile.avatar, alt: profile.name }),
|
|
@@ -4,22 +4,30 @@ export interface DashboardProfileItem {
|
|
|
4
4
|
name: string;
|
|
5
5
|
avatar: string;
|
|
6
6
|
age: string;
|
|
7
|
+
enabled: boolean;
|
|
8
|
+
order: number;
|
|
7
9
|
}
|
|
8
10
|
export interface DashboardNavItem {
|
|
9
11
|
title: string;
|
|
10
12
|
url: string;
|
|
11
13
|
icon: typeof Frame;
|
|
12
14
|
isActive: boolean;
|
|
15
|
+
enabled: boolean;
|
|
16
|
+
order: number;
|
|
13
17
|
subItems: Array<{
|
|
14
18
|
title: string;
|
|
15
19
|
url: string;
|
|
16
20
|
isActive: boolean;
|
|
21
|
+
enabled: boolean;
|
|
22
|
+
order: number;
|
|
17
23
|
}>;
|
|
18
24
|
}
|
|
19
25
|
export interface AppItem {
|
|
20
26
|
name: string;
|
|
21
27
|
url: string;
|
|
22
28
|
icon: typeof PieChart;
|
|
29
|
+
enabled: boolean;
|
|
30
|
+
order: number;
|
|
23
31
|
}
|
|
24
32
|
export interface BreadcrumbItem {
|
|
25
33
|
label: string;
|
package/data/admin-dashboard.js
CHANGED
|
@@ -8,11 +8,15 @@ exports.adminDashboardData = {
|
|
|
8
8
|
name: "Analytics",
|
|
9
9
|
url: "#",
|
|
10
10
|
icon: lucide_react_1.PieChart,
|
|
11
|
+
enabled: true,
|
|
12
|
+
order: 1,
|
|
11
13
|
},
|
|
12
14
|
{
|
|
13
15
|
name: "Terminal",
|
|
14
16
|
url: "#",
|
|
15
17
|
icon: lucide_react_1.SquareTerminal,
|
|
18
|
+
enabled: true,
|
|
19
|
+
order: 2,
|
|
16
20
|
},
|
|
17
21
|
],
|
|
18
22
|
offerUrl: "/offer",
|
|
@@ -27,11 +31,15 @@ exports.adminDashboardData = {
|
|
|
27
31
|
name: "Subhan",
|
|
28
32
|
avatar: "https://www.w3schools.com/w3images/avatar6.png",
|
|
29
33
|
age: "3 Yrs",
|
|
34
|
+
enabled: true,
|
|
35
|
+
order: 1,
|
|
30
36
|
},
|
|
31
37
|
{
|
|
32
38
|
name: "Mustajab",
|
|
33
39
|
avatar: "https://www.w3schools.com/w3images/avatar6.png",
|
|
34
40
|
age: "4 Yrs",
|
|
41
|
+
enabled: false,
|
|
42
|
+
order: 2,
|
|
35
43
|
},
|
|
36
44
|
],
|
|
37
45
|
navItems: [
|
|
@@ -40,6 +48,8 @@ exports.adminDashboardData = {
|
|
|
40
48
|
url: "/dashboard",
|
|
41
49
|
icon: lucide_react_1.SquareTerminal,
|
|
42
50
|
isActive: false,
|
|
51
|
+
enabled: true,
|
|
52
|
+
order: 1,
|
|
43
53
|
subItems: [],
|
|
44
54
|
},
|
|
45
55
|
{
|
|
@@ -47,51 +57,71 @@ exports.adminDashboardData = {
|
|
|
47
57
|
url: "#",
|
|
48
58
|
icon: lucide_react_1.Bot,
|
|
49
59
|
isActive: true,
|
|
60
|
+
enabled: true,
|
|
61
|
+
order: 2,
|
|
50
62
|
subItems: [
|
|
51
63
|
{
|
|
52
64
|
title: "Manage",
|
|
53
65
|
url: "",
|
|
54
66
|
isActive: true,
|
|
67
|
+
enabled: true,
|
|
68
|
+
order: 1,
|
|
55
69
|
},
|
|
56
70
|
{
|
|
57
71
|
title: "Toddler / Early childhood",
|
|
58
72
|
url: "#",
|
|
59
73
|
isActive: false,
|
|
74
|
+
enabled: true,
|
|
75
|
+
order: 2,
|
|
60
76
|
},
|
|
61
77
|
{
|
|
62
78
|
title: "Preschool / Pre-kindergarten",
|
|
63
79
|
url: "#",
|
|
64
80
|
isActive: false,
|
|
81
|
+
enabled: true,
|
|
82
|
+
order: 3,
|
|
65
83
|
},
|
|
66
84
|
{
|
|
67
85
|
title: "Kindergarten",
|
|
68
86
|
url: "#",
|
|
69
87
|
isActive: false,
|
|
88
|
+
enabled: true,
|
|
89
|
+
order: 4,
|
|
70
90
|
},
|
|
71
91
|
{
|
|
72
92
|
title: "Grade / Standard 1",
|
|
73
93
|
url: "#",
|
|
74
94
|
isActive: false,
|
|
95
|
+
enabled: true,
|
|
96
|
+
order: 5,
|
|
75
97
|
},
|
|
76
98
|
{
|
|
77
99
|
title: "Grade / Standard 2",
|
|
78
100
|
url: "#",
|
|
79
101
|
isActive: false,
|
|
102
|
+
enabled: true,
|
|
103
|
+
order: 6,
|
|
80
104
|
},
|
|
81
105
|
{
|
|
82
106
|
title: "Grade / Standard 3",
|
|
83
107
|
url: "#",
|
|
84
108
|
isActive: false,
|
|
109
|
+
enabled: true,
|
|
110
|
+
order: 7,
|
|
85
111
|
},
|
|
86
112
|
{
|
|
87
113
|
title: "Grade / Standard 4",
|
|
88
114
|
url: "#",
|
|
89
115
|
isActive: false,
|
|
116
|
+
enabled: true,
|
|
117
|
+
order: 8,
|
|
90
118
|
},
|
|
91
119
|
{
|
|
92
120
|
title: "Grade / Standard 5",
|
|
93
121
|
url: "#",
|
|
94
122
|
isActive: false,
|
|
123
|
+
enabled: true,
|
|
124
|
+
order: 9,
|
|
95
125
|
},
|
|
96
126
|
],
|
|
97
127
|
},
|
|
@@ -100,46 +130,64 @@ exports.adminDashboardData = {
|
|
|
100
130
|
url: "#",
|
|
101
131
|
icon: lucide_react_1.Bot,
|
|
102
132
|
isActive: false,
|
|
133
|
+
enabled: true,
|
|
134
|
+
order: 3,
|
|
103
135
|
subItems: [
|
|
104
136
|
{
|
|
105
137
|
title: "Toddler / Early childhood",
|
|
106
138
|
url: "#",
|
|
107
139
|
isActive: false,
|
|
140
|
+
enabled: true,
|
|
141
|
+
order: 1,
|
|
108
142
|
},
|
|
109
143
|
{
|
|
110
144
|
title: "Preschool / Pre-kindergarten",
|
|
111
145
|
url: "#",
|
|
112
146
|
isActive: false,
|
|
147
|
+
enabled: true,
|
|
148
|
+
order: 2,
|
|
113
149
|
},
|
|
114
150
|
{
|
|
115
151
|
title: "Kindergarten",
|
|
116
152
|
url: "#",
|
|
117
153
|
isActive: false,
|
|
154
|
+
enabled: true,
|
|
155
|
+
order: 3,
|
|
118
156
|
},
|
|
119
157
|
{
|
|
120
158
|
title: "Grade / Standard 1",
|
|
121
159
|
url: "#",
|
|
122
160
|
isActive: false,
|
|
161
|
+
enabled: true,
|
|
162
|
+
order: 4,
|
|
123
163
|
},
|
|
124
164
|
{
|
|
125
165
|
title: "Grade / Standard 2",
|
|
126
166
|
url: "#",
|
|
127
167
|
isActive: false,
|
|
168
|
+
enabled: true,
|
|
169
|
+
order: 5,
|
|
128
170
|
},
|
|
129
171
|
{
|
|
130
172
|
title: "Grade / Standard 3",
|
|
131
173
|
url: "#",
|
|
132
174
|
isActive: false,
|
|
175
|
+
enabled: true,
|
|
176
|
+
order: 6,
|
|
133
177
|
},
|
|
134
178
|
{
|
|
135
179
|
title: "Grade / Standard 4",
|
|
136
180
|
url: "#",
|
|
137
181
|
isActive: false,
|
|
182
|
+
enabled: true,
|
|
183
|
+
order: 7,
|
|
138
184
|
},
|
|
139
185
|
{
|
|
140
186
|
title: "Grade / Standard 5",
|
|
141
187
|
url: "#",
|
|
142
188
|
isActive: false,
|
|
189
|
+
enabled: true,
|
|
190
|
+
order: 8,
|
|
143
191
|
},
|
|
144
192
|
],
|
|
145
193
|
},
|
|
@@ -148,26 +196,36 @@ exports.adminDashboardData = {
|
|
|
148
196
|
url: "#",
|
|
149
197
|
icon: lucide_react_1.BookOpen,
|
|
150
198
|
isActive: false,
|
|
199
|
+
enabled: true,
|
|
200
|
+
order: 4,
|
|
151
201
|
subItems: [
|
|
152
202
|
{
|
|
153
203
|
title: "Introduction",
|
|
154
204
|
url: "#",
|
|
155
205
|
isActive: false,
|
|
206
|
+
enabled: true,
|
|
207
|
+
order: 1,
|
|
156
208
|
},
|
|
157
209
|
{
|
|
158
210
|
title: "Get Started",
|
|
159
211
|
url: "#",
|
|
160
212
|
isActive: false,
|
|
213
|
+
enabled: true,
|
|
214
|
+
order: 2,
|
|
161
215
|
},
|
|
162
216
|
{
|
|
163
217
|
title: "Tutorials",
|
|
164
218
|
url: "#",
|
|
165
219
|
isActive: false,
|
|
220
|
+
enabled: true,
|
|
221
|
+
order: 3,
|
|
166
222
|
},
|
|
167
223
|
{
|
|
168
224
|
title: "Changelog",
|
|
169
225
|
url: "#",
|
|
170
226
|
isActive: false,
|
|
227
|
+
enabled: true,
|
|
228
|
+
order: 4,
|
|
171
229
|
},
|
|
172
230
|
],
|
|
173
231
|
},
|
|
@@ -176,16 +234,22 @@ exports.adminDashboardData = {
|
|
|
176
234
|
url: "#",
|
|
177
235
|
icon: lucide_react_1.Settings2,
|
|
178
236
|
isActive: false,
|
|
237
|
+
enabled: true,
|
|
238
|
+
order: 5,
|
|
179
239
|
subItems: [
|
|
180
240
|
{
|
|
181
241
|
title: "General",
|
|
182
242
|
url: "#",
|
|
183
243
|
isActive: false,
|
|
244
|
+
enabled: true,
|
|
245
|
+
order: 1,
|
|
184
246
|
},
|
|
185
247
|
{
|
|
186
248
|
title: "Kids",
|
|
187
249
|
url: "#",
|
|
188
250
|
isActive: false,
|
|
251
|
+
enabled: true,
|
|
252
|
+
order: 2,
|
|
189
253
|
},
|
|
190
254
|
],
|
|
191
255
|
},
|
|
@@ -196,6 +260,8 @@ exports.adminDashboardData = {
|
|
|
196
260
|
url: "#",
|
|
197
261
|
icon: lucide_react_1.Sparkles,
|
|
198
262
|
isActive: false,
|
|
263
|
+
enabled: true,
|
|
264
|
+
order: 1,
|
|
199
265
|
subItems: [],
|
|
200
266
|
},
|
|
201
267
|
{
|
|
@@ -203,6 +269,8 @@ exports.adminDashboardData = {
|
|
|
203
269
|
url: "#",
|
|
204
270
|
icon: lucide_react_1.Sparkles,
|
|
205
271
|
isActive: false,
|
|
272
|
+
enabled: true,
|
|
273
|
+
order: 2,
|
|
206
274
|
subItems: [],
|
|
207
275
|
},
|
|
208
276
|
{
|
|
@@ -210,6 +278,8 @@ exports.adminDashboardData = {
|
|
|
210
278
|
url: "#",
|
|
211
279
|
icon: lucide_react_1.BadgeCheck,
|
|
212
280
|
isActive: false,
|
|
281
|
+
enabled: true,
|
|
282
|
+
order: 3,
|
|
213
283
|
subItems: [],
|
|
214
284
|
},
|
|
215
285
|
{
|
|
@@ -217,6 +287,8 @@ exports.adminDashboardData = {
|
|
|
217
287
|
url: "#",
|
|
218
288
|
icon: lucide_react_1.CreditCard,
|
|
219
289
|
isActive: false,
|
|
290
|
+
enabled: true,
|
|
291
|
+
order: 4,
|
|
220
292
|
subItems: [],
|
|
221
293
|
},
|
|
222
294
|
{
|
|
@@ -224,6 +296,8 @@ exports.adminDashboardData = {
|
|
|
224
296
|
url: "#",
|
|
225
297
|
icon: lucide_react_1.Bell,
|
|
226
298
|
isActive: false,
|
|
299
|
+
enabled: true,
|
|
300
|
+
order: 5,
|
|
227
301
|
subItems: [],
|
|
228
302
|
},
|
|
229
303
|
],
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@appcorp/shadcn",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.46",
|
|
4
4
|
"scripts": {
|
|
5
5
|
"build:next": "next build",
|
|
6
6
|
"build:storybook": "mv ../.pnp.cjs ../.pnp.cjs.bak 2>/dev/null || true && storybook build -c .storybook -o .out && mv ../.pnp.cjs.bak ../.pnp.cjs 2>/dev/null || true",
|