@myrjfa/ui 1.0.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/LICENSE +201 -0
- package/README.md +2 -0
- package/dist/dashboard/action-buttons.d.ts +16 -0
- package/dist/dashboard/action-buttons.d.ts.map +1 -0
- package/dist/dashboard/action-buttons.js +10 -0
- package/dist/dashboard/app-sidebar.d.ts +3 -0
- package/dist/dashboard/app-sidebar.d.ts.map +1 -0
- package/dist/dashboard/app-sidebar.js +145 -0
- package/dist/dashboard/card-header.d.ts +11 -0
- package/dist/dashboard/card-header.d.ts.map +1 -0
- package/dist/dashboard/card-header.js +8 -0
- package/dist/dashboard/dashboard-components.d.ts +13 -0
- package/dist/dashboard/dashboard-components.d.ts.map +1 -0
- package/dist/dashboard/dashboard-components.js +12 -0
- package/dist/dashboard/data-table.d.ts +19 -0
- package/dist/dashboard/data-table.d.ts.map +1 -0
- package/dist/dashboard/data-table.js +59 -0
- package/dist/dashboard/nav-main.d.ts +9 -0
- package/dist/dashboard/nav-main.d.ts.map +1 -0
- package/dist/dashboard/nav-main.js +10 -0
- package/dist/dashboard/nav-secondary.d.ts +10 -0
- package/dist/dashboard/nav-secondary.d.ts.map +1 -0
- package/dist/dashboard/nav-secondary.js +29 -0
- package/dist/dashboard/stats-card.d.ts +6 -0
- package/dist/dashboard/stats-card.d.ts.map +1 -0
- package/dist/dashboard/stats-card.js +6 -0
- package/dist/dashboard/table.d.ts +11 -0
- package/dist/dashboard/table.d.ts.map +1 -0
- package/dist/dashboard/table.js +67 -0
- package/dist/header/mobile-nav-item.d.ts +9 -0
- package/dist/header/mobile-nav-item.d.ts.map +1 -0
- package/dist/header/mobile-nav-item.js +7 -0
- package/dist/header/mobile-navbar.d.ts +5 -0
- package/dist/header/mobile-navbar.d.ts.map +1 -0
- package/dist/header/mobile-navbar.js +22 -0
- package/dist/header/nav-item.d.ts +9 -0
- package/dist/header/nav-item.d.ts.map +1 -0
- package/dist/header/nav-item.js +7 -0
- package/dist/index.d.ts +57 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +57 -0
- package/dist/main/footer.d.ts +6 -0
- package/dist/main/footer.d.ts.map +1 -0
- package/dist/main/footer.js +47 -0
- package/dist/main/navbar.d.ts +6 -0
- package/dist/main/navbar.d.ts.map +1 -0
- package/dist/main/navbar.js +180 -0
- package/dist/main/paginationBar.d.ts +5 -0
- package/dist/main/paginationBar.d.ts.map +1 -0
- package/dist/main/paginationBar.js +30 -0
- package/dist/main/review-page.d.ts +13 -0
- package/dist/main/review-page.d.ts.map +1 -0
- package/dist/main/review-page.js +246 -0
- package/dist/misc/accordion.d.ts +7 -0
- package/dist/misc/accordion.d.ts.map +1 -0
- package/dist/misc/accordion.js +44 -0
- package/dist/misc/alert-dialog.d.ts +14 -0
- package/dist/misc/alert-dialog.d.ts.map +1 -0
- package/dist/misc/alert-dialog.js +72 -0
- package/dist/misc/alert.d.ts +9 -0
- package/dist/misc/alert.d.ts.map +1 -0
- package/dist/misc/alert.js +49 -0
- package/dist/misc/alertdialogclaude.d.ts +15 -0
- package/dist/misc/alertdialogclaude.d.ts.map +1 -0
- package/dist/misc/alertdialogclaude.js +226 -0
- package/dist/misc/avatar.d.ts +6 -0
- package/dist/misc/avatar.d.ts.map +1 -0
- package/dist/misc/avatar.js +39 -0
- package/dist/misc/badge.d.ts +9 -0
- package/dist/misc/badge.d.ts.map +1 -0
- package/dist/misc/badge.js +45 -0
- package/dist/misc/button.d.ts +10 -0
- package/dist/misc/button.d.ts.map +1 -0
- package/dist/misc/button.js +54 -0
- package/dist/misc/card.d.ts +9 -0
- package/dist/misc/card.d.ts.map +1 -0
- package/dist/misc/card.js +49 -0
- package/dist/misc/carousel.d.ts +20 -0
- package/dist/misc/carousel.d.ts.map +1 -0
- package/dist/misc/carousel.js +115 -0
- package/dist/misc/checkbox.d.ts +4 -0
- package/dist/misc/checkbox.d.ts.map +1 -0
- package/dist/misc/checkbox.js +32 -0
- package/dist/misc/command.d.ts +16 -0
- package/dist/misc/command.d.ts.map +1 -0
- package/dist/misc/command.js +65 -0
- package/dist/misc/datepicker.d.ts +12 -0
- package/dist/misc/datepicker.d.ts.map +1 -0
- package/dist/misc/datepicker.js +199 -0
- package/dist/misc/dialog.d.ts +13 -0
- package/dist/misc/dialog.d.ts.map +1 -0
- package/dist/misc/dialog.js +68 -0
- package/dist/misc/dropdown-menu.d.ts +25 -0
- package/dist/misc/dropdown-menu.d.ts.map +1 -0
- package/dist/misc/dropdown-menu.js +88 -0
- package/dist/misc/faq.d.ts +5 -0
- package/dist/misc/faq.d.ts.map +1 -0
- package/dist/misc/faq.js +6 -0
- package/dist/misc/file-preview.d.ts +8 -0
- package/dist/misc/file-preview.d.ts.map +1 -0
- package/dist/misc/file-preview.js +130 -0
- package/dist/misc/filter.d.ts +12 -0
- package/dist/misc/filter.d.ts.map +1 -0
- package/dist/misc/filter.js +47 -0
- package/dist/misc/filterBar.d.ts +5 -0
- package/dist/misc/filterBar.d.ts.map +1 -0
- package/dist/misc/filterBar.js +196 -0
- package/dist/misc/form.d.ts +25 -0
- package/dist/misc/form.d.ts.map +1 -0
- package/dist/misc/form.js +81 -0
- package/dist/misc/input.d.ts +4 -0
- package/dist/misc/input.d.ts.map +1 -0
- package/dist/misc/input.js +29 -0
- package/dist/misc/label.d.ts +4 -0
- package/dist/misc/label.d.ts.map +1 -0
- package/dist/misc/label.js +31 -0
- package/dist/misc/line-carousel.d.ts +9 -0
- package/dist/misc/line-carousel.d.ts.map +1 -0
- package/dist/misc/line-carousel.js +15 -0
- package/dist/misc/multiImageUploader.d.ts +9 -0
- package/dist/misc/multiImageUploader.d.ts.map +1 -0
- package/dist/misc/multiImageUploader.js +11 -0
- package/dist/misc/newsLetter.d.ts +3 -0
- package/dist/misc/newsLetter.d.ts.map +1 -0
- package/dist/misc/newsLetter.js +101 -0
- package/dist/misc/notification.d.ts +6 -0
- package/dist/misc/notification.d.ts.map +1 -0
- package/dist/misc/notification.js +148 -0
- package/dist/misc/pagination.d.ts +15 -0
- package/dist/misc/pagination.d.ts.map +1 -0
- package/dist/misc/pagination.js +59 -0
- package/dist/misc/password-eye.d.ts +6 -0
- package/dist/misc/password-eye.d.ts.map +1 -0
- package/dist/misc/password-eye.js +7 -0
- package/dist/misc/popover.d.ts +7 -0
- package/dist/misc/popover.d.ts.map +1 -0
- package/dist/misc/popover.js +43 -0
- package/dist/misc/progress.d.ts +4 -0
- package/dist/misc/progress.d.ts.map +1 -0
- package/dist/misc/progress.js +31 -0
- package/dist/misc/scroll-area.d.ts +5 -0
- package/dist/misc/scroll-area.d.ts.map +1 -0
- package/dist/misc/scroll-area.js +37 -0
- package/dist/misc/searchBar.d.ts +6 -0
- package/dist/misc/searchBar.d.ts.map +1 -0
- package/dist/misc/searchBar.js +93 -0
- package/dist/misc/searchBox.d.ts +12 -0
- package/dist/misc/searchBox.d.ts.map +1 -0
- package/dist/misc/searchBox.js +66 -0
- package/dist/misc/select.d.ts +13 -0
- package/dist/misc/select.d.ts.map +1 -0
- package/dist/misc/select.js +70 -0
- package/dist/misc/separator.d.ts +4 -0
- package/dist/misc/separator.d.ts.map +1 -0
- package/dist/misc/separator.js +31 -0
- package/dist/misc/share.d.ts +5 -0
- package/dist/misc/share.d.ts.map +1 -0
- package/dist/misc/share.js +213 -0
- package/dist/misc/sheet.d.ts +13 -0
- package/dist/misc/sheet.d.ts.map +1 -0
- package/dist/misc/sheet.js +72 -0
- package/dist/misc/sidebar.d.ts +70 -0
- package/dist/misc/sidebar.d.ts.map +1 -0
- package/dist/misc/sidebar.js +253 -0
- package/dist/misc/skeleton.d.ts +3 -0
- package/dist/misc/skeleton.d.ts.map +1 -0
- package/dist/misc/skeleton.js +29 -0
- package/dist/misc/starRating.d.ts +4 -0
- package/dist/misc/starRating.d.ts.map +1 -0
- package/dist/misc/starRating.js +21 -0
- package/dist/misc/stateCard.d.ts +7 -0
- package/dist/misc/stateCard.d.ts.map +1 -0
- package/dist/misc/stateCard.js +22 -0
- package/dist/misc/tabs.d.ts +8 -0
- package/dist/misc/tabs.d.ts.map +1 -0
- package/dist/misc/tabs.js +43 -0
- package/dist/misc/textarea.d.ts +4 -0
- package/dist/misc/textarea.d.ts.map +1 -0
- package/dist/misc/textarea.js +29 -0
- package/dist/misc/tile.d.ts +3 -0
- package/dist/misc/tile.d.ts.map +1 -0
- package/dist/misc/tile.js +137 -0
- package/dist/misc/tooltip.d.ts +8 -0
- package/dist/misc/tooltip.d.ts.map +1 -0
- package/dist/misc/tooltip.js +43 -0
- package/dist/profile/socialLink.d.ts +10 -0
- package/dist/profile/socialLink.d.ts.map +1 -0
- package/dist/profile/socialLink.js +82 -0
- package/package.json +79 -0
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
declare const Table: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLTableElement> & React.RefAttributes<HTMLTableElement>>;
|
|
3
|
+
declare const TableHeader: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLTableSectionElement> & React.RefAttributes<HTMLTableSectionElement>>;
|
|
4
|
+
declare const TableBody: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLTableSectionElement> & React.RefAttributes<HTMLTableSectionElement>>;
|
|
5
|
+
declare const TableFooter: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLTableSectionElement> & React.RefAttributes<HTMLTableSectionElement>>;
|
|
6
|
+
declare const TableRow: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLTableRowElement> & React.RefAttributes<HTMLTableRowElement>>;
|
|
7
|
+
declare const TableHead: React.ForwardRefExoticComponent<React.ThHTMLAttributes<HTMLTableCellElement> & React.RefAttributes<HTMLTableCellElement>>;
|
|
8
|
+
declare const TableCell: React.ForwardRefExoticComponent<React.TdHTMLAttributes<HTMLTableCellElement> & React.RefAttributes<HTMLTableCellElement>>;
|
|
9
|
+
declare const TableCaption: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLTableCaptionElement> & React.RefAttributes<HTMLTableCaptionElement>>;
|
|
10
|
+
export { Table, TableHeader, TableBody, TableFooter, TableHead, TableRow, TableCell, TableCaption, };
|
|
11
|
+
//# sourceMappingURL=table.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../src/dashboard/table.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAG9B,QAAA,MAAM,KAAK,iHAWT,CAAA;AAGF,QAAA,MAAM,WAAW,+HAKf,CAAA;AAGF,QAAA,MAAM,SAAS,+HASb,CAAA;AAGF,QAAA,MAAM,WAAW,+HASf,CAAA;AAGF,QAAA,MAAM,QAAQ,uHAYZ,CAAA;AAGF,QAAA,MAAM,SAAS,2HAYb,CAAA;AAGF,QAAA,MAAM,SAAS,2HASb,CAAA;AAGF,QAAA,MAAM,YAAY,+HAShB,CAAA;AAGF,OAAO,EACH,KAAK,EACL,WAAW,EACX,SAAS,EACT,WAAW,EACX,SAAS,EACT,QAAQ,EACR,SAAS,EACT,YAAY,GACf,CAAA"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
13
|
+
var t = {};
|
|
14
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
15
|
+
t[p] = s[p];
|
|
16
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
17
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
18
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
19
|
+
t[p[i]] = s[p[i]];
|
|
20
|
+
}
|
|
21
|
+
return t;
|
|
22
|
+
};
|
|
23
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
24
|
+
// components/ui/table.tsx
|
|
25
|
+
import { cn } from "@myrjfa/state/dist/lib/utils";
|
|
26
|
+
import * as React from "react";
|
|
27
|
+
var Table = React.forwardRef(function (_a, ref) {
|
|
28
|
+
var className = _a.className, props = __rest(_a, ["className"]);
|
|
29
|
+
return (_jsx("div", { className: "relative w-full overflow-auto", children: _jsx("table", __assign({ ref: ref, className: cn("w-full caption-bottom text-sm", className) }, props)) }));
|
|
30
|
+
});
|
|
31
|
+
Table.displayName = "Table";
|
|
32
|
+
var TableHeader = React.forwardRef(function (_a, ref) {
|
|
33
|
+
var className = _a.className, props = __rest(_a, ["className"]);
|
|
34
|
+
return (_jsx("thead", __assign({ ref: ref, className: cn("[&_tr]:border-b", className) }, props)));
|
|
35
|
+
});
|
|
36
|
+
TableHeader.displayName = "TableHeader";
|
|
37
|
+
var TableBody = React.forwardRef(function (_a, ref) {
|
|
38
|
+
var className = _a.className, props = __rest(_a, ["className"]);
|
|
39
|
+
return (_jsx("tbody", __assign({ ref: ref, className: cn("[&_tr:last-child]:border-0", className) }, props)));
|
|
40
|
+
});
|
|
41
|
+
TableBody.displayName = "TableBody";
|
|
42
|
+
var TableFooter = React.forwardRef(function (_a, ref) {
|
|
43
|
+
var className = _a.className, props = __rest(_a, ["className"]);
|
|
44
|
+
return (_jsx("tfoot", __assign({ ref: ref, className: cn("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0", className) }, props)));
|
|
45
|
+
});
|
|
46
|
+
TableFooter.displayName = "TableFooter";
|
|
47
|
+
var TableRow = React.forwardRef(function (_a, ref) {
|
|
48
|
+
var className = _a.className, props = __rest(_a, ["className"]);
|
|
49
|
+
return (_jsx("tr", __assign({ ref: ref, className: cn("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted", className) }, props)));
|
|
50
|
+
});
|
|
51
|
+
TableRow.displayName = "TableRow";
|
|
52
|
+
var TableHead = React.forwardRef(function (_a, ref) {
|
|
53
|
+
var className = _a.className, props = __rest(_a, ["className"]);
|
|
54
|
+
return (_jsx("th", __assign({ ref: ref, className: cn("h-12 px-4 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0", className) }, props)));
|
|
55
|
+
});
|
|
56
|
+
TableHead.displayName = "TableHead";
|
|
57
|
+
var TableCell = React.forwardRef(function (_a, ref) {
|
|
58
|
+
var className = _a.className, props = __rest(_a, ["className"]);
|
|
59
|
+
return (_jsx("td", __assign({ ref: ref, className: cn("p-4 align-middle [&:has([role=checkbox])]:pr-0", className) }, props)));
|
|
60
|
+
});
|
|
61
|
+
TableCell.displayName = "TableCell";
|
|
62
|
+
var TableCaption = React.forwardRef(function (_a, ref) {
|
|
63
|
+
var className = _a.className, props = __rest(_a, ["className"]);
|
|
64
|
+
return (_jsx("caption", __assign({ ref: ref, className: cn("mt-4 text-sm text-muted-foreground", className) }, props)));
|
|
65
|
+
});
|
|
66
|
+
TableCaption.displayName = "TableCaption";
|
|
67
|
+
export { Table, TableHeader, TableBody, TableFooter, TableHead, TableRow, TableCell, TableCaption, };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
interface MobileNavItemProps {
|
|
2
|
+
label?: string;
|
|
3
|
+
href: string;
|
|
4
|
+
className?: string;
|
|
5
|
+
icon?: React.ReactNode;
|
|
6
|
+
}
|
|
7
|
+
export declare function MobileNavItem({ label, href, className, icon }: MobileNavItemProps): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=mobile-nav-item.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mobile-nav-item.d.ts","sourceRoot":"","sources":["../../src/header/mobile-nav-item.tsx"],"names":[],"mappings":"AAGA,UAAU,kBAAkB;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CACzB;AAED,wBAAgB,aAAa,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,kBAAkB,2CAajF"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { cn } from "@myrjfa/state/dist/lib/utils";
|
|
3
|
+
import Link from "next/link";
|
|
4
|
+
export function MobileNavItem(_a) {
|
|
5
|
+
var label = _a.label, href = _a.href, className = _a.className, icon = _a.icon;
|
|
6
|
+
return (_jsxs(Link, { href: href, className: cn("flex w-full cursor-pointer items-center rounded-md p-2 gap-1 font-medium text-muted-foreground hover:text-foreground", className), children: [icon && _jsx("span", { children: icon }), label] }));
|
|
7
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mobile-navbar.d.ts","sourceRoot":"","sources":["../../src/header/mobile-navbar.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAuB,MAAM,OAAO,CAAC;AAEvD,wBAAgB,YAAY,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,2CAkCjE"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { Menu, X } from "lucide-react";
|
|
4
|
+
import { useEffect, useState } from "react";
|
|
5
|
+
export function MobileNavbar(_a) {
|
|
6
|
+
var children = _a.children;
|
|
7
|
+
var _b = useState(false), isOpen = _b[0], setIsOpen = _b[1];
|
|
8
|
+
useEffect(function () {
|
|
9
|
+
var overflow = isOpen ? "hidden" : "auto";
|
|
10
|
+
document.documentElement.style.overflow = overflow;
|
|
11
|
+
}, [isOpen]);
|
|
12
|
+
useEffect(function () {
|
|
13
|
+
var closeHamburgerNavigation = function () { return setIsOpen(false); };
|
|
14
|
+
window.addEventListener("orientationchange", closeHamburgerNavigation);
|
|
15
|
+
window.addEventListener("resize", closeHamburgerNavigation);
|
|
16
|
+
return function () {
|
|
17
|
+
window.removeEventListener("orientationchange", closeHamburgerNavigation);
|
|
18
|
+
window.removeEventListener("resize", closeHamburgerNavigation);
|
|
19
|
+
};
|
|
20
|
+
}, []);
|
|
21
|
+
return (_jsxs("div", { className: "md:hidden", children: [_jsx("button", { className: "md:hidden", onClick: function () { return setIsOpen(!isOpen); }, children: isOpen ? _jsx(X, {}) : _jsx(Menu, {}) }), isOpen && (_jsx("div", { className: "fixed inset-0 top-[50px] z-40 size-full bg-black/40 animate-in slide-in-from-bottom-24 md:hidden", onClick: function () { return setIsOpen(false); }, children: children }))] }));
|
|
22
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
interface NavItemProps {
|
|
2
|
+
label?: string;
|
|
3
|
+
href: string;
|
|
4
|
+
className?: string;
|
|
5
|
+
icon?: React.ReactNode;
|
|
6
|
+
}
|
|
7
|
+
export declare function NavItem({ label, href, className, icon }: NavItemProps): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=nav-item.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nav-item.d.ts","sourceRoot":"","sources":["../../src/header/nav-item.tsx"],"names":[],"mappings":"AAGA,UAAU,YAAY;IAClB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CACzB;AAED,wBAAgB,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,YAAY,2CAarE"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { cn } from "@myrjfa/state/dist/lib/utils";
|
|
3
|
+
import Link from "next/link";
|
|
4
|
+
export function NavItem(_a) {
|
|
5
|
+
var label = _a.label, href = _a.href, className = _a.className, icon = _a.icon;
|
|
6
|
+
return (_jsxs(Link, { href: href, className: cn("text-muted-foreground hover:text-foreground flex cursor-pointer items-center text-sm font-medium transition-colors gap-1", className), children: [icon && _jsx("span", { children: icon }), label] }));
|
|
7
|
+
}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
export * from './misc/button';
|
|
2
|
+
export * from './misc/accordion';
|
|
3
|
+
export * from './misc/alert';
|
|
4
|
+
export * from './misc/alertdialogclaude';
|
|
5
|
+
export * from './misc/avatar';
|
|
6
|
+
export * from './misc/badge';
|
|
7
|
+
export * from './misc/carousel';
|
|
8
|
+
export * from './misc/checkbox';
|
|
9
|
+
export * from './misc/command';
|
|
10
|
+
export * from './misc/datepicker';
|
|
11
|
+
export * from './misc/dialog';
|
|
12
|
+
export * from './misc/dropdown-menu';
|
|
13
|
+
export * from './misc/faq';
|
|
14
|
+
export * from './misc/file-preview';
|
|
15
|
+
export * from './misc/filter';
|
|
16
|
+
export * from './misc/filterBar';
|
|
17
|
+
export * from './misc/form';
|
|
18
|
+
export * from './misc/input';
|
|
19
|
+
export * from './misc/label';
|
|
20
|
+
export * from './misc/line-carousel';
|
|
21
|
+
export * from './misc/newsLetter';
|
|
22
|
+
export * from './misc/notification';
|
|
23
|
+
export * from './misc/pagination';
|
|
24
|
+
export * from './misc/password-eye';
|
|
25
|
+
export * from './misc/popover';
|
|
26
|
+
export * from './misc/progress';
|
|
27
|
+
export * from './misc/scroll-area';
|
|
28
|
+
export * from './misc/searchBar';
|
|
29
|
+
export * from './misc/searchBox';
|
|
30
|
+
export * from './misc/select';
|
|
31
|
+
export * from './misc/separator';
|
|
32
|
+
export * from './misc/share';
|
|
33
|
+
export * from './misc/sheet';
|
|
34
|
+
export * from './misc/sidebar';
|
|
35
|
+
export * from './misc/skeleton';
|
|
36
|
+
export * from './misc/starRating';
|
|
37
|
+
export * from './misc/stateCard';
|
|
38
|
+
export * from './misc/tabs';
|
|
39
|
+
export * from './misc/textarea';
|
|
40
|
+
export * from './misc/tile';
|
|
41
|
+
export * from './misc/tooltip';
|
|
42
|
+
export * from './dashboard/action-buttons';
|
|
43
|
+
export * from './dashboard/app-sidebar';
|
|
44
|
+
export * from './dashboard/card-header';
|
|
45
|
+
export * from './dashboard/dashboard-components';
|
|
46
|
+
export * from './dashboard/data-table';
|
|
47
|
+
export * from './dashboard/nav-main';
|
|
48
|
+
export * from './dashboard/nav-secondary';
|
|
49
|
+
export * from './dashboard/table';
|
|
50
|
+
export * from './header/mobile-nav-item';
|
|
51
|
+
export * from './header/mobile-navbar';
|
|
52
|
+
export * from './header/nav-item';
|
|
53
|
+
export * from './main/footer';
|
|
54
|
+
export * from './main/navbar';
|
|
55
|
+
export * from './main/paginationBar';
|
|
56
|
+
export * from './main/review-page';
|
|
57
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,0BAA0B,CAAC;AACzC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kCAAkC,CAAC;AACjD,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
// Export all your shared UI components
|
|
2
|
+
export * from './misc/button';
|
|
3
|
+
export * from './misc/accordion';
|
|
4
|
+
export * from './misc/alert';
|
|
5
|
+
export * from './misc/alertdialogclaude';
|
|
6
|
+
export * from './misc/avatar';
|
|
7
|
+
export * from './misc/badge';
|
|
8
|
+
export * from './misc/carousel';
|
|
9
|
+
export * from './misc/checkbox';
|
|
10
|
+
export * from './misc/command';
|
|
11
|
+
export * from './misc/datepicker';
|
|
12
|
+
export * from './misc/dialog';
|
|
13
|
+
export * from './misc/dropdown-menu';
|
|
14
|
+
export * from './misc/faq';
|
|
15
|
+
export * from './misc/file-preview';
|
|
16
|
+
export * from './misc/filter';
|
|
17
|
+
export * from './misc/filterBar';
|
|
18
|
+
export * from './misc/form';
|
|
19
|
+
export * from './misc/input';
|
|
20
|
+
export * from './misc/label';
|
|
21
|
+
export * from './misc/line-carousel';
|
|
22
|
+
export * from './misc/newsLetter';
|
|
23
|
+
export * from './misc/notification';
|
|
24
|
+
export * from './misc/pagination';
|
|
25
|
+
export * from './misc/password-eye';
|
|
26
|
+
export * from './misc/popover';
|
|
27
|
+
export * from './misc/progress';
|
|
28
|
+
export * from './misc/scroll-area';
|
|
29
|
+
export * from './misc/searchBar';
|
|
30
|
+
export * from './misc/searchBox';
|
|
31
|
+
export * from './misc/select';
|
|
32
|
+
export * from './misc/separator';
|
|
33
|
+
export * from './misc/share';
|
|
34
|
+
export * from './misc/sheet';
|
|
35
|
+
export * from './misc/sidebar';
|
|
36
|
+
export * from './misc/skeleton';
|
|
37
|
+
export * from './misc/starRating';
|
|
38
|
+
export * from './misc/stateCard';
|
|
39
|
+
export * from './misc/tabs';
|
|
40
|
+
export * from './misc/textarea';
|
|
41
|
+
export * from './misc/tile';
|
|
42
|
+
export * from './misc/tooltip';
|
|
43
|
+
export * from './dashboard/action-buttons';
|
|
44
|
+
export * from './dashboard/app-sidebar';
|
|
45
|
+
export * from './dashboard/card-header';
|
|
46
|
+
export * from './dashboard/dashboard-components';
|
|
47
|
+
export * from './dashboard/data-table';
|
|
48
|
+
export * from './dashboard/nav-main';
|
|
49
|
+
export * from './dashboard/nav-secondary';
|
|
50
|
+
export * from './dashboard/table';
|
|
51
|
+
export * from './header/mobile-nav-item';
|
|
52
|
+
export * from './header/mobile-navbar';
|
|
53
|
+
export * from './header/nav-item';
|
|
54
|
+
export * from './main/footer';
|
|
55
|
+
export * from './main/navbar';
|
|
56
|
+
export * from './main/paginationBar';
|
|
57
|
+
export * from './main/review-page';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"footer.d.ts","sourceRoot":"","sources":["../../src/main/footer.tsx"],"names":[],"mappings":"AAOA,UAAU,WAAW;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AA8BD,QAAA,MAAM,MAAM,GAAI,UAAkB,WAAW,4CA2E5C,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Icon } from "@iconify/react";
|
|
3
|
+
import { Mail } from "lucide-react";
|
|
4
|
+
import Link from "next/link";
|
|
5
|
+
import { Card } from "../misc/card";
|
|
6
|
+
import NewsletterSubscribe from "../misc/newsLetter";
|
|
7
|
+
import { Separator } from "../misc/separator";
|
|
8
|
+
var footerItems = [
|
|
9
|
+
{
|
|
10
|
+
"title": "Company",
|
|
11
|
+
"fields": {
|
|
12
|
+
"About Us": "/about",
|
|
13
|
+
"Contact": "/contact",
|
|
14
|
+
"FAQs": "/#faq"
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"title": "Services",
|
|
19
|
+
"fields": {
|
|
20
|
+
"Opportunities": "/opportunities",
|
|
21
|
+
"Packages": "/packages",
|
|
22
|
+
"Blogs": "/blogs"
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"title": "Legal",
|
|
27
|
+
"fields": {
|
|
28
|
+
"Privacy Policy": "/privacy",
|
|
29
|
+
"Terms of Service": "/terms",
|
|
30
|
+
"Security": "/security"
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
];
|
|
34
|
+
var Footer = function (_a) {
|
|
35
|
+
var _b = _a.dark, dark = _b === void 0 ? false : _b;
|
|
36
|
+
var theme = dark
|
|
37
|
+
? "bg-foreground text-muted border-border"
|
|
38
|
+
: "bg-background text-muted-foreground border-border";
|
|
39
|
+
var iconColor = dark
|
|
40
|
+
? "text-muted hover:text-white"
|
|
41
|
+
: "text-muted-foreground hover:text-foreground";
|
|
42
|
+
return (_jsxs("footer", { className: "h-full md:-mt-20", children: [_jsx("div", { className: "w-full px-6 my-5 md:translate-y-5/8 md:px-12 md:mb-5", children: _jsx(Card, { className: "relative bg-muted p-6 rounded-lg shadow-md mx-auto w-4/5 flex flex-col md:flex-row items-center justify-between gap-6 md:p-10", children: _jsxs("div", { className: "flex-1 text-center md:text-left", children: [_jsx("h3", { className: "text-2xl font-bold text-foreground", children: "Subscribe Newsletter" }), _jsx("p", { className: "text-sm text-muted-foreground mt-1", children: "Get inspired! Receive travel discounts, tips, and behind-the-scenes stories." }), _jsx(NewsletterSubscribe, {})] }) }) }), _jsxs("div", { className: "w-full border-t ".concat(theme, " pb-10 pt-10 sm:pt-30 md:pt-30"), children: [_jsxs("div", { className: "container mx-auto px-6 md:px-12 grid grid-cols-2 gap-10 md:grid-cols-5", children: [_jsxs("div", { className: "col-span-2", children: [_jsx("div", { className: "text-2xl font-semibold mb-4", children: "TrippEaze" }), _jsx("p", { className: "text-sm mb-4", children: "Your trusted travel partner for seamless adventures." }), _jsxs("div", { className: "flex gap-4", children: [_jsx("a", { href: "https://www.instagram.com/trippeaze/", target: "_blank", rel: "noopener noreferrer", className: "transition-colors ".concat(iconColor), children: _jsx(Icon, { icon: "mdi:instagram", className: "w-5 h-5" }) }), _jsx("a", { href: "https://wa.me/918482944029", target: "_blank", rel: "noopener noreferrer", className: "transition-colors ".concat(iconColor), children: _jsx(Icon, { icon: "mdi:whatsapp", className: "w-5 h-5" }) }), _jsx("a", { href: "https://www.youtube.com/@TrippEaze", target: "_blank", rel: "noopener noreferrer", className: "transition-colors ".concat(iconColor), children: _jsx(Icon, { icon: "mdi:youtube", className: "w-5 h-5" }) }), _jsx("a", { href: "https://www.facebook.com/profile.php?id=61576541488437", target: "_blank", rel: "noopener noreferrer", className: "transition-colors ".concat(iconColor), children: _jsx(Icon, { icon: "mdi:facebook", className: "w-5 h-5" }) }), _jsx("a", { href: "mailto:contact@trippeaze.com", className: "transition-colors ".concat(iconColor), children: _jsx(Mail, { className: "w-5 h-5" }) })] })] }), footerItems.map(function (section) { return (_jsxs("div", { children: [_jsx("h4", { className: "text-lg font-medium ".concat(iconColor, " mb-3"), children: section.title }), _jsx("nav", { className: "flex flex-col gap-2 text-sm", children: Object.entries(section.fields).map(function (_a) {
|
|
43
|
+
var label = _a[0], href = _a[1];
|
|
44
|
+
return (_jsx(Link, { href: href, className: "hover:text-foreground transition-colors", children: label }, label));
|
|
45
|
+
}) })] }, section.title)); })] }), _jsxs("div", { className: "w-full mt-10", children: [_jsx(Separator, {}), _jsxs("p", { className: "text-xs text-muted-foreground text-center mt-4", children: ["\u00A9 ", new Date().getFullYear(), " TrippEaze. All rights reserved."] })] })] })] }));
|
|
46
|
+
};
|
|
47
|
+
export default Footer;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"navbar.d.ts","sourceRoot":"","sources":["../../src/main/navbar.tsx"],"names":[],"mappings":"AAmBA,UAAU,WAAW;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAAE,IAAY,EAAE,EAAE,WAAW,2CAoN3D"}
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
|
|
13
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
39
|
+
import { Popover, PopoverContent, PopoverTrigger } from "@radix-ui/react-popover";
|
|
40
|
+
import { Separator } from "@radix-ui/react-separator";
|
|
41
|
+
import { logoutUser } from "@myrjfa/state/dist/lib/auth";
|
|
42
|
+
import { isLoggedInAtom, userAtom, userLoadingAtom } from "@myrjfa/state/dist/lib/userAtom";
|
|
43
|
+
import { useAtom, useAtomValue } from "jotai";
|
|
44
|
+
import { Globe, Heart, LayoutDashboardIcon, Store, Target, Luggage } from "lucide-react";
|
|
45
|
+
import Link from "next/link";
|
|
46
|
+
import { useRouter } from "next/navigation";
|
|
47
|
+
import { useEffect, useState } from "react";
|
|
48
|
+
import { MobileNavItem } from "../header/mobile-nav-item";
|
|
49
|
+
import { MobileNavbar } from "../header/mobile-navbar";
|
|
50
|
+
import { NavItem } from "../header/nav-item";
|
|
51
|
+
import { showAlert } from "../misc/alertdialogclaude";
|
|
52
|
+
import { Avatar, AvatarFallback, AvatarImage } from "../misc/avatar";
|
|
53
|
+
import { Button } from "../misc/button";
|
|
54
|
+
import { Label } from "../misc/label";
|
|
55
|
+
import { MobileNotificationBell, NotificationBell } from "../misc/notification";
|
|
56
|
+
export default function Navbar(_a) {
|
|
57
|
+
var _this = this;
|
|
58
|
+
var _b, _c, _d;
|
|
59
|
+
var _e = _a.dark, dark = _e === void 0 ? false : _e;
|
|
60
|
+
var router = useRouter();
|
|
61
|
+
var _f = useAtom(userAtom), currentUser = _f[0], setCurrentUser = _f[1];
|
|
62
|
+
var loading = useAtomValue(userLoadingAtom);
|
|
63
|
+
var _g = useAtom(isLoggedInAtom), isLoggedIn = _g[0], setIsLoggedIn = _g[1];
|
|
64
|
+
var _h = useState(false), scrolled = _h[0], setScrolled = _h[1];
|
|
65
|
+
useEffect(function () {
|
|
66
|
+
var handleScroll = function () {
|
|
67
|
+
var isScrolled = window.scrollY > 10;
|
|
68
|
+
if (isScrolled !== scrolled) {
|
|
69
|
+
setScrolled(isScrolled);
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
window.addEventListener("scroll", handleScroll);
|
|
73
|
+
return function () {
|
|
74
|
+
window.removeEventListener("scroll", handleScroll);
|
|
75
|
+
};
|
|
76
|
+
}, [scrolled]);
|
|
77
|
+
if (loading)
|
|
78
|
+
return _jsx("div", { className: "w-full h-screen flex items-center justify-center", children: "Loading..." });
|
|
79
|
+
var logout = function () { return __awaiter(_this, void 0, void 0, function () {
|
|
80
|
+
var role, response;
|
|
81
|
+
var _a;
|
|
82
|
+
return __generator(this, function (_b) {
|
|
83
|
+
switch (_b.label) {
|
|
84
|
+
case 0:
|
|
85
|
+
role = (currentUser === null || currentUser === void 0 ? void 0 : currentUser.role) || "user";
|
|
86
|
+
setCurrentUser(null);
|
|
87
|
+
setIsLoggedIn(false);
|
|
88
|
+
return [4 /*yield*/, logoutUser(role)];
|
|
89
|
+
case 1:
|
|
90
|
+
response = _b.sent();
|
|
91
|
+
if (!(response === null || response === void 0 ? void 0 : response.error)) return [3 /*break*/, 3];
|
|
92
|
+
return [4 /*yield*/, showAlert(response.error)];
|
|
93
|
+
case 2:
|
|
94
|
+
_b.sent();
|
|
95
|
+
return [3 /*break*/, 5];
|
|
96
|
+
case 3: return [4 /*yield*/, showAlert((_a = response.message) !== null && _a !== void 0 ? _a : "Logged out successfully")];
|
|
97
|
+
case 4:
|
|
98
|
+
_b.sent();
|
|
99
|
+
_b.label = 5;
|
|
100
|
+
case 5: return [2 /*return*/];
|
|
101
|
+
}
|
|
102
|
+
});
|
|
103
|
+
}); };
|
|
104
|
+
var navbarBg = scrolled || window.scrollY > 10
|
|
105
|
+
? dark
|
|
106
|
+
? "bg-foreground/50 backdrop-blur-md"
|
|
107
|
+
: "bg-background/50 backdrop-blur-md"
|
|
108
|
+
: "bg-transparent";
|
|
109
|
+
var navbarBorder = scrolled || window.scrollY > 10 ? "border-b border-border/30 shadow-lg" : "";
|
|
110
|
+
var textColor = dark ? "text-gray-200" : "text-foreground";
|
|
111
|
+
var navItemColor = dark
|
|
112
|
+
? "hover:text-white text-gray-250"
|
|
113
|
+
: "hover:text-foreground text-gray-750";
|
|
114
|
+
return (_jsx("header", { className: "fixed top-0 left-0 z-[100] mx-auto transition-all duration-300 w-full ".concat(navbarBg, " ").concat(textColor, " ").concat(navbarBorder), children: _jsxs("div", { className: "mx-auto flex items-center justify-between gap-10 py-4 px-4 lg:px-8", children: [_jsxs(Link, { href: "/", className: "flex items-center gap-3", children: [_jsxs(Avatar, { className: "ml-2 -mr-4.5", children: [_jsx(AvatarImage, { src: "/images/logoicon.webp" }), _jsxs(AvatarFallback, { children: [(currentUser === null || currentUser === void 0 ? void 0 : currentUser.firstName.charAt(0)) || "D", (currentUser === null || currentUser === void 0 ? void 0 : currentUser.lastName.charAt(0)) || "P"] })] }), _jsx("span", { className: "font-heading text-xl font-bold", children: "rippeaze" })] }), _jsxs("div", { className: "flex items-center gap-2", children: [_jsxs("nav", { className: "hidden md:flex items-center gap-10 justify-end", children: [_jsx(NavItem, { icon: _jsx(Target, { className: "h-5 w-5" }), label: "Opportunities", href: "/opportunities", className: navItemColor }), _jsx(NavItem, { icon: _jsx(Luggage, { className: "h-5 w-5" }), label: "Packages", href: "/packages", className: navItemColor }), _jsx(NavItem, { icon: _jsx(Globe, { className: "h-5 w-5" }), label: "Blogs", href: "/blogs", className: navItemColor }), currentUser ? _jsx(NavItem, { icon: _jsx(Store, { className: "h-5 w-5" }), label: "Become a Partner", href: "/contact", className: navItemColor })
|
|
115
|
+
: _jsx(NavItem, { icon: _jsx(Store, { className: "h-5 w-5" }), label: "Register as Business", href: "/auth/register?role=host", className: navItemColor }), isLoggedIn && _jsx(NotificationBell, { id: (_b = currentUser === null || currentUser === void 0 ? void 0 : currentUser.username) !== null && _b !== void 0 ? _b : null, navItemColor: navItemColor })] }), _jsx("div", { className: "hidden md:flex items-center gap-2", children: _jsxs(Popover, { children: [_jsx(PopoverTrigger, { asChild: true, children: _jsx(Button, { variant: "link", className: "flex w-full gap-1 cursor-pointer", children: _jsxs(Avatar, { className: "ml-5 mr-4.5", children: [_jsx(AvatarImage, { src: (_c = currentUser === null || currentUser === void 0 ? void 0 : currentUser.profilePic) !== null && _c !== void 0 ? _c : "/images/profile_placeholder.webp" }), _jsxs(AvatarFallback, { children: [(currentUser === null || currentUser === void 0 ? void 0 : currentUser.firstName.charAt(0)) || "D", (currentUser === null || currentUser === void 0 ? void 0 : currentUser.lastName.charAt(0)) || "P"] })] }) }) }), _jsx(PopoverContent, { className: "w-full p-0 mt-3 bg-".concat(dark ? "primary" : "white", " rounded-lg shadow-lg"), align: "end", sideOffset: 5, children: _jsxs("div", { className: "py-2 w-full", children: [_jsxs("div", { className: "px-4 py-3 border-b w-full", children: [_jsx("p", { className: "text-sm font-medium", children: (currentUser === null || currentUser === void 0 ? void 0 : currentUser.username) || "Guest" }), _jsx("p", { className: "text-xs text-gray-500", children: (currentUser === null || currentUser === void 0 ? void 0 : currentUser.email) || "user@example.com" })] }), _jsxs("div", { className: "flex flex-col", children: [isLoggedIn ?
|
|
116
|
+
_jsxs(Link, { href: "/profile/".concat((currentUser === null || currentUser === void 0 ? void 0 : currentUser.role) || "user", "/").concat((currentUser === null || currentUser === void 0 ? void 0 : currentUser.username) || "Guest"), className: "w-full py-2 px-4 text-sm text-gray-700 hover:bg-gray-100 flex items-center gap-2", children: [_jsxs(Avatar, { className: "w-4 h-4", children: [_jsx(AvatarImage, { src: (_d = currentUser === null || currentUser === void 0 ? void 0 : currentUser.profilePic) !== null && _d !== void 0 ? _d : "/images/profile_placeholder.webp" }), _jsx(AvatarFallback, { children: "U" })] }), "Profile"] }) :
|
|
117
|
+
_jsxs(Button, { variant: "ghost", onClick: function () { return router.push('/auth/login?role=user'); }, className: "w-full py-2 px-4 text-sm text-gray-700 hover:bg-gray-100 flex items-center gap-2 justify-start", children: [_jsxs(Avatar, { className: "w-4 h-4", children: [_jsx(AvatarImage, { src: "/images/profile_placeholder.webp" }), _jsx(AvatarFallback, { children: "U" })] }), "Login As Volunteer"] }), isLoggedIn && _jsxs(Link, { href: "/overview/".concat((currentUser === null || currentUser === void 0 ? void 0 : currentUser.role) || 'user'), className: "w-full py-2 px-4 text-sm text-gray-700 hover:bg-gray-100 flex items-center gap-2", children: [_jsx(LayoutDashboardIcon, { className: "h-4 w-4" }), "Dashboard"] }), isLoggedIn && ((currentUser === null || currentUser === void 0 ? void 0 : currentUser.role) === "user" || (currentUser === null || currentUser === void 0 ? void 0 : currentUser.role) == null) &&
|
|
118
|
+
_jsxs(Link, { href: "/opportunities/favourites", className: "w-full py-2 px-4 text-sm text-gray-700 hover:bg-gray-100 flex items-center gap-2", children: [_jsx(Heart, { className: "h-4 w-4" }), "Favourites"] }), (currentUser === null || currentUser === void 0 ? void 0 : currentUser.role) === "host" ?
|
|
119
|
+
_jsxs(Button, { variant: "ghost", onClick: function () { return __awaiter(_this, void 0, void 0, function () {
|
|
120
|
+
return __generator(this, function (_a) {
|
|
121
|
+
switch (_a.label) {
|
|
122
|
+
case 0: return [4 /*yield*/, logout()];
|
|
123
|
+
case 1:
|
|
124
|
+
_a.sent();
|
|
125
|
+
router.push('/auth/login?role=user');
|
|
126
|
+
return [2 /*return*/];
|
|
127
|
+
}
|
|
128
|
+
});
|
|
129
|
+
}); }, className: "w-full py-2 px-4 text-sm text-gray-700 hover:bg-gray-100 flex items-center gap-2 justify-start", children: [_jsxs(Avatar, { className: "w-4 h-4", children: [_jsx(AvatarImage, { src: "/images/profile_placeholder.webp" }), _jsx(AvatarFallback, { children: "U" })] }), "Login As Volunteer"] })
|
|
130
|
+
:
|
|
131
|
+
_jsxs(Button, { variant: "ghost", onClick: function () { return __awaiter(_this, void 0, void 0, function () {
|
|
132
|
+
return __generator(this, function (_a) {
|
|
133
|
+
switch (_a.label) {
|
|
134
|
+
case 0:
|
|
135
|
+
if (!isLoggedIn) return [3 /*break*/, 2];
|
|
136
|
+
return [4 /*yield*/, logout()];
|
|
137
|
+
case 1:
|
|
138
|
+
_a.sent();
|
|
139
|
+
_a.label = 2;
|
|
140
|
+
case 2:
|
|
141
|
+
router.push('/auth/login?role=host');
|
|
142
|
+
return [2 /*return*/];
|
|
143
|
+
}
|
|
144
|
+
});
|
|
145
|
+
}); }, className: "w-full py-2 px-4 text-sm text-gray-700 hover:bg-gray-100 flex items-center gap-2 justify-start", children: [_jsxs(Avatar, { className: "w-4 h-4", children: [_jsx(AvatarImage, { src: "/images/profile_placeholder.webp" }), _jsx(AvatarFallback, { children: "H" })] }), "Login As Business"] }), _jsx(Separator, { className: "my-1" }), isLoggedIn && _jsx(Button, { variant: "outline", className: "py-2 mx-2 text-sm text-gray-700 hover:bg-gray-100 justify-center cursor-pointer", onClick: function () {
|
|
146
|
+
logout();
|
|
147
|
+
}, children: "Sign out" })] })] }) })] }) })] }), _jsx(MobileNavbar, { children: _jsx("div", { className: "rounded-b-lg py-4 px-4 shadow-xl ".concat("bg-background", " ").concat(textColor), children: _jsxs("nav", { className: "flex flex-col gap-1 pt-2", children: [_jsx(MobileNavItem, { icon: _jsx(Target, { className: "h-5 w-5" }), label: "Opportunities", href: "/opportunities" }), _jsx(MobileNavItem, { icon: _jsx(Luggage, { className: "h-5 w-5" }), label: "Packages", href: "/packages" }), _jsx(MobileNavItem, { icon: _jsx(Globe, { className: "h-5 w-5" }), label: "Blogs", href: "/blogs" }), currentUser ? _jsx(MobileNavItem, { icon: _jsx(Store, { className: "h-5 w-5" }), label: "Become a Partner", href: "/contact" }) :
|
|
148
|
+
_jsx(MobileNavItem, { icon: _jsx(Store, { className: "h-5 w-5" }), label: "Register as Business", href: "/auth/register?role=host" }), isLoggedIn && _jsx(MobileNotificationBell, {}), isLoggedIn && _jsx(MobileNavItem, { icon: _jsx(LayoutDashboardIcon, { className: "h-5 w-5" }), label: "Dashboard", href: "/overview/".concat((currentUser === null || currentUser === void 0 ? void 0 : currentUser.role) || 'user'), className: "md:hidden" }), isLoggedIn && ((currentUser === null || currentUser === void 0 ? void 0 : currentUser.role) === "user" || (currentUser === null || currentUser === void 0 ? void 0 : currentUser.role) == null) &&
|
|
149
|
+
_jsx(MobileNavItem, { icon: _jsx(Heart, { className: "h-5 w-5" }), label: "Favourites", href: "/opportunities/favourites", className: "md:hidden" }), isLoggedIn ? _jsxs(Link, { href: "/profile/".concat((currentUser === null || currentUser === void 0 ? void 0 : currentUser.role) || "user", "/").concat((currentUser === null || currentUser === void 0 ? void 0 : currentUser.username) || "Guest"), className: "flex w-full gap-1 cursor-pointer my-2", children: [_jsxs(Avatar, { className: "w-5 h-5 ml-2", children: [_jsx(AvatarImage, { src: (currentUser === null || currentUser === void 0 ? void 0 : currentUser.profilePic) || "/images/profile_placeholder.webp" }), _jsx(AvatarFallback, { children: "DP" })] }), _jsx(Label, { htmlFor: "username", className: "cursor-pointer text-muted-foreground hover:text-foreground", children: (currentUser === null || currentUser === void 0 ? void 0 : currentUser.username) || "Guest" })] }) :
|
|
150
|
+
_jsxs(Link, { href: "/auth/login", className: "flex w-full gap-1 cursor-pointer my-2", children: [_jsxs(Avatar, { className: "w-5 h-5 ml-2", children: [_jsx(AvatarImage, { src: "/images/profile_placeholder.webp" }), _jsx(AvatarFallback, { children: "U" })] }), _jsx(Label, { htmlFor: "username", className: "cursor-pointer text-muted-foreground hover:text-foreground", children: "Login As Volunteer" })] }), (currentUser === null || currentUser === void 0 ? void 0 : currentUser.role) === "host" ?
|
|
151
|
+
_jsxs(Button, { variant: "ghost", onClick: function () { return __awaiter(_this, void 0, void 0, function () {
|
|
152
|
+
return __generator(this, function (_a) {
|
|
153
|
+
switch (_a.label) {
|
|
154
|
+
case 0: return [4 /*yield*/, logout()];
|
|
155
|
+
case 1:
|
|
156
|
+
_a.sent();
|
|
157
|
+
router.push('/auth/login?role=user');
|
|
158
|
+
return [2 /*return*/];
|
|
159
|
+
}
|
|
160
|
+
});
|
|
161
|
+
}); }, className: "w-full text-md text-gray-500 flex gap-1 justify-start", children: [_jsxs(Avatar, { className: "w-5 h-5 -ml-2", children: [_jsx(AvatarImage, { src: "/images/profile_placeholder.webp" }), _jsx(AvatarFallback, { children: "U" })] }), "Login As Volunteer"] })
|
|
162
|
+
:
|
|
163
|
+
_jsxs(Button, { variant: "ghost", onClick: function () { return __awaiter(_this, void 0, void 0, function () {
|
|
164
|
+
return __generator(this, function (_a) {
|
|
165
|
+
switch (_a.label) {
|
|
166
|
+
case 0:
|
|
167
|
+
if (!isLoggedIn) return [3 /*break*/, 2];
|
|
168
|
+
return [4 /*yield*/, logout()];
|
|
169
|
+
case 1:
|
|
170
|
+
_a.sent();
|
|
171
|
+
_a.label = 2;
|
|
172
|
+
case 2:
|
|
173
|
+
router.push('/auth/login?role=host');
|
|
174
|
+
return [2 /*return*/];
|
|
175
|
+
}
|
|
176
|
+
});
|
|
177
|
+
}); }, className: "w-full text-md text-gray-500 flex gap-1 justify-start", children: [_jsxs(Avatar, { className: "w-5 h-5 -ml-2", children: [_jsx(AvatarImage, { src: "/images/profile_placeholder.webp" }), _jsx(AvatarFallback, { children: "H" })] }), "Login As Business"] }), isLoggedIn && _jsx(Button, { variant: "outline", className: "py-2 mx-2 text-sm text-gray-700 hover:bg-gray-100 justify-center cursor-pointer", onClick: function () {
|
|
178
|
+
logout();
|
|
179
|
+
}, children: "Sign out" })] }) }) })] }) }));
|
|
180
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paginationBar.d.ts","sourceRoot":"","sources":["../../src/main/paginationBar.tsx"],"names":[],"mappings":"AAkEA,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EAClC,WAAW,EACX,UAAU,EACb,EAAE;IACC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACtB,2CASA"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { usePathname, useSearchParams } from "next/navigation";
|
|
4
|
+
import { Suspense } from "react";
|
|
5
|
+
import { Pagination, PaginationContent, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious } from "../misc/pagination";
|
|
6
|
+
function PaginationBarComponent(_a) {
|
|
7
|
+
var currentPage = _a.currentPage, totalPages = _a.totalPages;
|
|
8
|
+
var searchParams = useSearchParams();
|
|
9
|
+
var pathname = usePathname();
|
|
10
|
+
function createPageURL(page) {
|
|
11
|
+
var params = new URLSearchParams(searchParams);
|
|
12
|
+
params.set('page', page.toString());
|
|
13
|
+
return "".concat(pathname, "?").concat(params.toString());
|
|
14
|
+
}
|
|
15
|
+
var maxVisible = 5;
|
|
16
|
+
var half = Math.floor(maxVisible / 2);
|
|
17
|
+
var start = Math.max(1, currentPage - half);
|
|
18
|
+
var end = Math.min(totalPages, start + maxVisible - 1);
|
|
19
|
+
if (end - start < maxVisible - 1) {
|
|
20
|
+
start = Math.max(1, end - maxVisible + 1);
|
|
21
|
+
}
|
|
22
|
+
return (_jsx(Pagination, { children: _jsxs(PaginationContent, { children: [currentPage > 1 && (_jsx(PaginationItem, { children: _jsx(PaginationPrevious, { href: createPageURL(currentPage - 1) }) })), Array.from({ length: end - start + 1 }, function (_, i) {
|
|
23
|
+
var page = start + i;
|
|
24
|
+
return (_jsx(PaginationItem, { children: _jsx(PaginationLink, { href: createPageURL(page), isActive: page === currentPage, children: page }) }, page));
|
|
25
|
+
}), currentPage < totalPages && (_jsx(PaginationItem, { children: _jsx(PaginationNext, { href: createPageURL(currentPage + 1) }) }))] }) }));
|
|
26
|
+
}
|
|
27
|
+
export default function PaginationBar(_a) {
|
|
28
|
+
var currentPage = _a.currentPage, totalPages = _a.totalPages;
|
|
29
|
+
return (_jsx(Suspense, { fallback: _jsx("div", { className: "w-full h-screen flex items-center justify-center", children: "Loading..." }), children: _jsx(PaginationBarComponent, { currentPage: currentPage, totalPages: totalPages }) }));
|
|
30
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Review } from "@myrjfa/state/dist/lib/models/review";
|
|
2
|
+
interface ReviewPageProps {
|
|
3
|
+
title?: string;
|
|
4
|
+
subtitle?: string;
|
|
5
|
+
targetId: string;
|
|
6
|
+
targetType?: "user" | "opportunity" | "package" | "host" | "blog";
|
|
7
|
+
editable?: boolean;
|
|
8
|
+
initialReviews?: Review[];
|
|
9
|
+
reviewCategory?: "review" | "comment";
|
|
10
|
+
}
|
|
11
|
+
export default function ReviewPage({ title, subtitle, targetId, targetType, editable, initialReviews, reviewCategory, }: ReviewPageProps): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=review-page.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"review-page.d.ts","sourceRoot":"","sources":["../../src/main/review-page.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAiC,MAAM,sCAAsC,CAAC;AAoD7F,UAAU,eAAe;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;IAClE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,cAAc,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CACzC;AAED,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EAC/B,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,UAA0B,EAC1B,QAAgB,EAChB,cAAmB,EACnB,cAAyB,GAC5B,EAAE,eAAe,2CAsNjB"}
|