@myrjfa/ui 1.1.0 → 1.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chat/ChatMain.d.ts +3 -1
- package/dist/chat/ChatMain.d.ts.map +1 -1
- package/dist/chat/ChatMain.js +174 -145
- package/dist/chat/ChatSidebar.js +7 -8
- package/dist/chat/ConversationList.d.ts.map +1 -1
- package/dist/chat/ConversationList.js +20 -18
- package/dist/chat/ExpensePanel.d.ts +4 -1
- package/dist/chat/ExpensePanel.d.ts.map +1 -1
- package/dist/chat/ExpensePanel.js +215 -195
- package/dist/chat/MessageBubble.d.ts +5 -3
- package/dist/chat/MessageBubble.d.ts.map +1 -1
- package/dist/chat/MessageBubble.js +185 -103
- package/dist/chat/MessageInput.d.ts +8 -1
- package/dist/chat/MessageInput.d.ts.map +1 -1
- package/dist/chat/MessageInput.js +182 -165
- package/dist/chat/MilestonePanel.d.ts +4 -1
- package/dist/chat/MilestonePanel.d.ts.map +1 -1
- package/dist/chat/MilestonePanel.js +150 -150
- package/dist/chat/components/ParticipantSelector.d.ts +11 -0
- package/dist/chat/components/ParticipantSelector.d.ts.map +1 -0
- package/dist/chat/components/ParticipantSelector.js +17 -0
- package/dist/chat/components/SplitInputs.d.ts +11 -0
- package/dist/chat/components/SplitInputs.d.ts.map +1 -0
- package/dist/chat/components/SplitInputs.js +83 -0
- package/dist/chat/components/SplitTypeSelector.d.ts +8 -0
- package/dist/chat/components/SplitTypeSelector.d.ts.map +1 -0
- package/dist/chat/components/SplitTypeSelector.js +13 -0
- package/dist/chat/dialogs/AddMemberDialog.js +30 -90
- package/dist/chat/dialogs/CameraDialog.js +38 -86
- package/dist/chat/dialogs/CreatePollDialog.d.ts +8 -0
- package/dist/chat/dialogs/CreatePollDialog.d.ts.map +1 -0
- package/dist/chat/dialogs/CreatePollDialog.js +38 -0
- package/dist/chat/dialogs/ExpenseAnalyticsDialog.d.ts +19 -0
- package/dist/chat/dialogs/ExpenseAnalyticsDialog.d.ts.map +1 -0
- package/dist/chat/dialogs/ExpenseAnalyticsDialog.js +52 -0
- package/dist/chat/dialogs/GroupInfoDialog.d.ts.map +1 -1
- package/dist/chat/dialogs/GroupInfoDialog.js +55 -92
- package/dist/chat/dialogs/GroupInfoViewDialog.js +5 -6
- package/dist/chat/dialogs/NewChatDialog.d.ts.map +1 -1
- package/dist/chat/dialogs/NewChatDialog.js +49 -113
- package/dist/chat/dialogs/NewGroupDialog.d.ts.map +1 -1
- package/dist/chat/dialogs/NewGroupDialog.js +49 -92
- package/dist/chat/dialogs/ParticipantsDialog.d.ts.map +1 -1
- package/dist/chat/dialogs/ParticipantsDialog.js +68 -118
- package/dist/dashboard/action-buttons.js +4 -5
- package/dist/dashboard/app-sidebar.js +47 -129
- package/dist/dashboard/card-header.js +1 -2
- package/dist/dashboard/dashboard-components.js +3 -5
- package/dist/dashboard/data-table.d.ts +2 -1
- package/dist/dashboard/data-table.d.ts.map +1 -1
- package/dist/dashboard/data-table.js +21 -33
- package/dist/dashboard/nav-main.js +4 -5
- package/dist/dashboard/nav-secondary.js +2 -25
- package/dist/dashboard/stats-card.js +1 -2
- package/dist/dashboard/table.js +8 -54
- package/dist/header/mobile-nav-item.js +1 -2
- package/dist/header/mobile-navbar.js +8 -9
- package/dist/header/nav-item.js +1 -2
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -1
- package/dist/main/footer.js +5 -9
- package/dist/main/navbar.js +55 -138
- package/dist/main/paginationBar.js +12 -14
- package/dist/main/portfolio/portfolioItem.js +1 -2
- package/dist/main/portfolio/portfolioPopup.js +16 -17
- package/dist/main/review-page.d.ts.map +1 -1
- package/dist/main/review-page.js +132 -199
- package/dist/misc/accordion.js +8 -34
- package/dist/misc/alert-dialog.js +22 -55
- package/dist/misc/alert.js +7 -32
- package/dist/misc/alertdialogclaude.js +50 -125
- package/dist/misc/avatar.js +6 -31
- package/dist/misc/badge.js +4 -27
- package/dist/misc/button.js +4 -27
- package/dist/misc/card.js +12 -40
- package/dist/misc/carousel.js +37 -61
- package/dist/misc/checkbox.js +2 -25
- package/dist/misc/command.js +18 -49
- package/dist/misc/datepicker.js +66 -76
- package/dist/misc/dialog.js +20 -52
- package/dist/misc/document-upload-button.d.ts +12 -0
- package/dist/misc/document-upload-button.d.ts.map +1 -0
- package/dist/misc/document-upload-button.js +27 -0
- package/dist/misc/dropdown-menu.js +30 -67
- package/dist/misc/empty-state.d.ts +10 -0
- package/dist/misc/empty-state.d.ts.map +1 -0
- package/dist/misc/empty-state.js +5 -0
- package/dist/misc/faq.js +2 -3
- package/dist/misc/file-preview.js +43 -97
- package/dist/misc/filter.d.ts.map +1 -1
- package/dist/misc/filter.js +18 -21
- package/dist/misc/filterBar.js +136 -160
- package/dist/misc/form.js +39 -60
- package/dist/misc/image-compressor.d.ts +29 -0
- package/dist/misc/image-compressor.d.ts.map +1 -0
- package/dist/misc/image-compressor.js +70 -0
- package/dist/misc/image-cropper.d.ts +10 -0
- package/dist/misc/image-cropper.d.ts.map +1 -0
- package/dist/misc/image-cropper.js +44 -0
- package/dist/misc/input.d.ts.map +1 -1
- package/dist/misc/input.js +2 -25
- package/dist/misc/label.js +2 -25
- package/dist/misc/line-carousel.js +3 -13
- package/dist/misc/multiImageUploader.d.ts +2 -1
- package/dist/misc/multiImageUploader.d.ts.map +1 -1
- package/dist/misc/multiImageUploader.js +26 -3
- package/dist/misc/newsLetter.js +19 -79
- package/dist/misc/notification.d.ts +1 -2
- package/dist/misc/notification.d.ts.map +1 -1
- package/dist/misc/notification.js +89 -125
- package/dist/misc/pagination.js +16 -45
- package/dist/misc/password-eye.js +2 -3
- package/dist/misc/popover.d.ts.map +1 -1
- package/dist/misc/popover.js +8 -34
- package/dist/misc/progress.js +2 -25
- package/dist/misc/pwa-install-button.d.ts +9 -0
- package/dist/misc/pwa-install-button.d.ts.map +1 -0
- package/dist/misc/pwa-install-button.js +158 -0
- package/dist/misc/scroll-area.js +5 -29
- package/dist/misc/searchBar.js +27 -31
- package/dist/misc/searchBox.js +18 -22
- package/dist/misc/select.d.ts.map +1 -1
- package/dist/misc/select.js +22 -54
- package/dist/misc/separator.js +2 -25
- package/dist/misc/share.js +48 -104
- package/dist/misc/sheet.js +21 -53
- package/dist/misc/sidebar.js +112 -153
- package/dist/misc/skeleton.d.ts +36 -1
- package/dist/misc/skeleton.d.ts.map +1 -1
- package/dist/misc/skeleton.js +41 -27
- package/dist/misc/slider.js +3 -26
- package/dist/misc/starRating.js +5 -15
- package/dist/misc/stateCard.js +7 -8
- package/dist/misc/switch.d.ts +5 -0
- package/dist/misc/switch.d.ts.map +1 -0
- package/dist/misc/switch.js +8 -0
- package/dist/misc/tabs.js +8 -34
- package/dist/misc/textarea.js +2 -25
- package/dist/misc/tile.js +32 -93
- package/dist/misc/tooltip.js +8 -34
- package/dist/misc/whatsapp-help.d.ts +9 -0
- package/dist/misc/whatsapp-help.d.ts.map +1 -0
- package/dist/misc/whatsapp-help.js +13 -0
- package/dist/profile/socialLink.d.ts +1 -1
- package/dist/profile/socialLink.d.ts.map +1 -1
- package/dist/profile/socialLink.js +53 -69
- package/dist/utils/permissions.d.ts +7 -0
- package/dist/utils/permissions.d.ts.map +1 -0
- package/dist/utils/permissions.js +38 -0
- package/package.json +6 -4
- package/dist/main/portfolio/temp-page.d.ts +0 -2
- package/dist/main/portfolio/temp-page.d.ts.map +0 -1
- package/dist/main/portfolio/temp-page.js +0 -102
package/package.json
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@myrjfa/ui",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.2",
|
|
4
|
+
"type": "module",
|
|
4
5
|
"description": "Shared UI components for my apps",
|
|
5
6
|
"main": "dist/index.js",
|
|
6
7
|
"types": "dist/index.d.ts",
|
|
8
|
+
"sideEffects": false,
|
|
7
9
|
"files": [
|
|
8
10
|
"dist"
|
|
9
11
|
],
|
|
@@ -36,7 +38,7 @@
|
|
|
36
38
|
"cmdk": "1.1.1",
|
|
37
39
|
"embla-carousel-react": "^8.5.2",
|
|
38
40
|
"emoji-picker-react": "^4.18.0",
|
|
39
|
-
"
|
|
41
|
+
"react-easy-crop": "^5.5.6",
|
|
40
42
|
"react-hook-form": "^7.54.2",
|
|
41
43
|
"react-icons": "^5.5.0",
|
|
42
44
|
"react-share": "^5.2.2"
|
|
@@ -48,11 +50,11 @@
|
|
|
48
50
|
"lucide-react": "*",
|
|
49
51
|
"next": "*",
|
|
50
52
|
"react": "*",
|
|
51
|
-
"react-dom": "",
|
|
53
|
+
"react-dom": "*",
|
|
52
54
|
"zod": "*"
|
|
53
55
|
},
|
|
54
56
|
"devDependencies": {
|
|
55
|
-
"@myrjfa/state": "1.1.
|
|
57
|
+
"@myrjfa/state": "1.1.2",
|
|
56
58
|
"@types/react": "19.0.10",
|
|
57
59
|
"@types/react-dom": "^19.0.4",
|
|
58
60
|
"date-fns": "^3.0.0",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"temp-page.d.ts","sourceRoot":"","sources":["../../../src/main/portfolio/temp-page.tsx"],"names":[],"mappings":"AAYA,MAAM,CAAC,OAAO,UAAU,aAAa,4CAmKpC"}
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
// app/(dashboard)/profile/[userId]/portfolio/page.tsx
|
|
2
|
-
'use client';
|
|
3
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
4
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
5
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
6
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
7
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
8
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
9
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
10
|
-
});
|
|
11
|
-
};
|
|
12
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
13
|
-
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);
|
|
14
|
-
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
15
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
16
|
-
function step(op) {
|
|
17
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
18
|
-
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
19
|
-
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;
|
|
20
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
21
|
-
switch (op[0]) {
|
|
22
|
-
case 0: case 1: t = op; break;
|
|
23
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
24
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
25
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
26
|
-
default:
|
|
27
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
28
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
29
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
30
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
31
|
-
if (t[2]) _.ops.pop();
|
|
32
|
-
_.trys.pop(); continue;
|
|
33
|
-
}
|
|
34
|
-
op = body.call(thisArg, _);
|
|
35
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
36
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
37
|
-
}
|
|
38
|
-
};
|
|
39
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
40
|
-
import { useEffect, useState, useRef } from 'react';
|
|
41
|
-
import { useParams, useRouter, useSearchParams } from 'next/navigation';
|
|
42
|
-
import Image from 'next/image';
|
|
43
|
-
import { Button } from '@myrjfa/ui/dist/misc/button';
|
|
44
|
-
import { ExternalLink, ChevronLeft } from 'lucide-react';
|
|
45
|
-
import ShareButton from '@myrjfa/ui/dist/misc/share';
|
|
46
|
-
import { getUserPortfolio } from '@/lib/actions';
|
|
47
|
-
export default function PortfolioPage() {
|
|
48
|
-
var _this = this;
|
|
49
|
-
var router = useRouter();
|
|
50
|
-
var id = useParams().id;
|
|
51
|
-
var userId = decodeURIComponent(id);
|
|
52
|
-
var searchParams = useSearchParams();
|
|
53
|
-
var firstName = searchParams.get("firstName");
|
|
54
|
-
var _a = useState([]), portfolio = _a[0], setPortfolio = _a[1];
|
|
55
|
-
var _b = useState(0), currentIndex = _b[0], setCurrentIndex = _b[1];
|
|
56
|
-
var containerRef = useRef(null);
|
|
57
|
-
useEffect(function () {
|
|
58
|
-
// Fetch portfolio data
|
|
59
|
-
// This should match your existing data fetching logic
|
|
60
|
-
var fetchData = function () { return __awaiter(_this, void 0, void 0, function () {
|
|
61
|
-
var portfolioResponse;
|
|
62
|
-
return __generator(this, function (_a) {
|
|
63
|
-
switch (_a.label) {
|
|
64
|
-
case 0: return [4 /*yield*/, getUserPortfolio(userId)];
|
|
65
|
-
case 1:
|
|
66
|
-
portfolioResponse = _a.sent();
|
|
67
|
-
if (portfolioResponse.error)
|
|
68
|
-
console.error(portfolioResponse.error);
|
|
69
|
-
else
|
|
70
|
-
setPortfolio(portfolioResponse.portfolios);
|
|
71
|
-
return [2 /*return*/];
|
|
72
|
-
}
|
|
73
|
-
});
|
|
74
|
-
}); };
|
|
75
|
-
fetchData();
|
|
76
|
-
var index = searchParams.get('index');
|
|
77
|
-
if (index) {
|
|
78
|
-
setCurrentIndex(parseInt(index));
|
|
79
|
-
}
|
|
80
|
-
}, [userId, searchParams]);
|
|
81
|
-
useEffect(function () {
|
|
82
|
-
// Scroll to current item
|
|
83
|
-
if (containerRef.current) {
|
|
84
|
-
var items = containerRef.current.children;
|
|
85
|
-
if (items[currentIndex]) {
|
|
86
|
-
items[currentIndex].scrollIntoView({ behavior: 'smooth', block: 'start' });
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
}, [currentIndex]);
|
|
90
|
-
var handleScroll = function () {
|
|
91
|
-
if (!containerRef.current)
|
|
92
|
-
return;
|
|
93
|
-
var container = containerRef.current;
|
|
94
|
-
var scrollPosition = container.scrollTop;
|
|
95
|
-
var itemHeight = window.innerHeight;
|
|
96
|
-
var newIndex = Math.round(scrollPosition / itemHeight);
|
|
97
|
-
if (newIndex !== currentIndex && newIndex >= 0 && newIndex < portfolio.length) {
|
|
98
|
-
setCurrentIndex(newIndex);
|
|
99
|
-
}
|
|
100
|
-
};
|
|
101
|
-
return (_jsxs("div", { className: "fixed inset-0 bg-black z-50 mt-15", children: [_jsx("div", { className: "absolute top-0 left-0 right-0 z-10 bg-gradient-to-b from-black/50 to-transparent", children: _jsxs("div", { className: "flex items-center justify-between p-4", children: [_jsx(Button, { variant: "ghost", size: "sm", onClick: function () { return router.back(); }, className: "text-white hover:bg-white/10", children: _jsx(ChevronLeft, { className: "h-6 w-6" }) }), _jsxs("div", { className: "flex items-center gap-2", children: [_jsx("div", { className: "w-8 h-8 bg-gradient-to-r from-blue-500 to-purple-500 rounded-full flex items-center justify-center", children: _jsx("span", { className: "text-white text-xs font-bold", children: "P" }) }), _jsxs("span", { className: "text-white font-semibold", children: [firstName, "'s Portfolio"] })] }), _jsx("div", { className: "w-10" }), " "] }) }), _jsx("div", { ref: containerRef, onScroll: handleScroll, className: "h-full overflow-y-scroll snap-y snap-mandatory scrollbar-hide", style: { scrollbarWidth: 'none', msOverflowStyle: 'none' }, children: portfolio.map(function (item, index) { return (_jsxs("div", { className: "h-screen w-full snap-start snap-always relative flex flex-col", children: [_jsx("div", { className: "flex-1 flex items-center justify-center bg-black", children: item.mediaType === 'video' ? (_jsx("video", { src: item.url, controls: true, loop: true, playsInline: true, className: "max-w-full max-h-full object-contain" })) : (_jsx("div", { className: "relative w-full h-full", children: _jsx(Image, { src: item.url, alt: item.caption, fill: true, sizes: "100vw", className: "object-contain", priority: index === currentIndex }) })) }), _jsx("div", { className: "absolute bottom-0 left-0 right-0 bg-gradient-to-t from-black/80 via-black/50 to-transparent p-4 pb-6", children: _jsxs("div", { className: "space-y-3", children: [_jsxs("div", { className: "flex items-center gap-4", children: [_jsx(ShareButton, {}), item.mainUrl && (_jsx(Button, { variant: "ghost", size: "sm", onClick: function () { return window.open(item.mainUrl, '_blank'); }, className: "text-white hover:bg-white/10", children: _jsx(ExternalLink, { className: "w-5 h-5" }) }))] }), _jsxs("div", { className: "text-white text-sm", children: [_jsx("p", { className: "font-medium", children: "5 likes" }), _jsxs("p", { className: "text-white/70 text-xs", children: [item.comments || 0, " comments \u2022 ", item.shares || 0, " shares"] })] }), _jsx("div", { className: "text-white", children: _jsxs("p", { className: "text-sm leading-relaxed line-clamp-3", children: [_jsx("span", { className: "font-semibold", children: firstName }), " ", item.caption] }) }), _jsx("div", { className: "flex gap-1 justify-center pt-2", children: portfolio.map(function (_, i) { return (_jsx("div", { className: "h-0.5 flex-1 rounded-full transition-all ".concat(i === currentIndex ? 'bg-white' : 'bg-white/30') }, i)); }) })] }) })] }, item._id)); }) }), _jsx("style", { jsx: true, children: "\n .scrollbar-hide::-webkit-scrollbar {\n display: none;\n }\n " })] }));
|
|
102
|
-
}
|