✨ sites page
This commit is contained in:
		
							parent
							
								
									c232a4705c
								
							
						
					
					
						commit
						660e1cd10b
					
				
							
								
								
									
										13
									
								
								app/(defaults)/sungrow/page.tsx
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								app/(defaults)/sungrow/page.tsx
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,13 @@ | ||||
| import axios from 'axios'; | ||||
| import { Metadata } from 'next'; | ||||
| import React from 'react'; | ||||
| 
 | ||||
| export const metadata: Metadata = { | ||||
| }; | ||||
| 
 | ||||
| 
 | ||||
| const SungrowIndex = async () => { | ||||
|     return <div>SungrowIndex</div>; | ||||
| }; | ||||
| 
 | ||||
| export default SungrowIndex; | ||||
							
								
								
									
										39
									
								
								app/(defaults)/sungrow/sites/page.tsx
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										39
									
								
								app/(defaults)/sungrow/sites/page.tsx
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,39 @@ | ||||
| "use client"; | ||||
| // app/(defaults)/sungrow/assets/page.tsx
 | ||||
| 
 | ||||
| import ComponentsTablesSimple from "@/components/tables/components-tables-simple"; | ||||
| import axios from "axios"; | ||||
| import React, { useEffect, useState } from "react"; | ||||
| 
 | ||||
| const SungrowAssets =  () => { | ||||
|     const [devices, setDevices] = useState<any[]>([]); | ||||
|     const [loading, setLoading] = useState(true); | ||||
| 
 | ||||
|     useEffect(() => { | ||||
|         const fetchData = async () => { | ||||
|             try { | ||||
|                 const res = await axios.get("https://api-a.fomware.com.cn/asset/v1/list", { | ||||
|                     headers: { | ||||
|                         "Authorization": "Bearer lIywwAMdrOdsRxuWvRoekdxrPtmIPkxA" | ||||
|                     } | ||||
|                 }) | ||||
|                 console.log("res", res.data.data.devices) | ||||
|                 setDevices(res.data.data.devices); | ||||
|             } catch (error) { | ||||
|                 console.error("Error fetching data:", error); | ||||
|             } finally { | ||||
|                 setLoading(false); | ||||
|             } | ||||
|         }; | ||||
| 
 | ||||
|         fetchData(); | ||||
|     }, []); | ||||
| 
 | ||||
|     return ( | ||||
|         <div> | ||||
|             {loading ? <p>Loading...</p> : <ComponentsTablesSimple tableData={devices} />} | ||||
|         </div> | ||||
|     ) | ||||
| } | ||||
| 
 | ||||
| export default SungrowAssets; | ||||
| @ -163,25 +163,6 @@ const Header = () => { | ||||
|                         </button> | ||||
|                     </div> | ||||
| 
 | ||||
|                     <div className="hidden ltr:mr-2 rtl:ml-2 sm:block"> | ||||
|                         <ul className="flex items-center space-x-2 rtl:space-x-reverse dark:text-[#d0d2d6]"> | ||||
|                             <li> | ||||
|                                 <Link href="/apps/calendar" className="block rounded-full bg-white-light/40 p-2 hover:bg-white-light/90 hover:text-primary dark:bg-dark/40 dark:hover:bg-dark/60"> | ||||
|                                     <IconCalendar /> | ||||
|                                 </Link> | ||||
|                             </li> | ||||
|                             <li> | ||||
|                                 <Link href="/apps/todolist" className="block rounded-full bg-white-light/40 p-2 hover:bg-white-light/90 hover:text-primary dark:bg-dark/40 dark:hover:bg-dark/60"> | ||||
|                                     <IconEdit /> | ||||
|                                 </Link> | ||||
|                             </li> | ||||
|                             <li> | ||||
|                                 <Link href="/apps/chat" className="block rounded-full bg-white-light/40 p-2 hover:bg-white-light/90 hover:text-primary dark:bg-dark/40 dark:hover:bg-dark/60"> | ||||
|                                     <IconChatNotification /> | ||||
|                                 </Link> | ||||
|                             </li> | ||||
|                         </ul> | ||||
|                     </div> | ||||
|                     <div className="flex items-center justify-end space-x-1.5 ltr:ml-auto rtl:mr-auto rtl:space-x-reverse dark:text-[#d0d2d6] sm:flex-1 ltr:sm:ml-0 sm:rtl:mr-0 lg:space-x-2"> | ||||
| 
 | ||||
|                         <div className="dropdown flex shrink-0"> | ||||
|  | ||||
| @ -10,6 +10,7 @@ import IconCaretsDown from '@/components/icon/icon-carets-down'; | ||||
| import IconMenuComponents from '@/components/icon/menu/icon-menu-components'; | ||||
| import { usePathname } from 'next/navigation'; | ||||
| import { getTranslation } from '@/i18n'; | ||||
| import IconCaretDown from '../icon/icon-caret-down'; | ||||
| 
 | ||||
| const Sidebar = () => { | ||||
|     const dispatch = useDispatch(); | ||||
| @ -117,12 +118,24 @@ const Sidebar = () => { | ||||
|                             </li> | ||||
| 
 | ||||
|                             <li className="menu nav-item"> | ||||
|                                 <Link href="#" className="nav-link group"> | ||||
|                                 <button type="button" className={`${currentMenu === 'sungrow' ? 'active' : ''} nav-link group w-full`} onClick={() => toggleMenu('sungrow')}> | ||||
|                                     <div className="flex items-center"> | ||||
|                                         <IconMenuComponents className="shrink-0 group-hover:!text-primary" /> | ||||
|                                         <span className="text-black ltr:pl-3 rtl:pr-3 dark:text-[#506690] dark:group-hover:text-white-dark">Sungrow</span> | ||||
|                                     </div> | ||||
|                                 </Link> | ||||
| 
 | ||||
|                                     <div className={currentMenu !== 'component' ? '-rotate-90 rtl:rotate-90' : ''}> | ||||
|                                         <IconCaretDown /> | ||||
|                                     </div> | ||||
|                                 </button> | ||||
| 
 | ||||
|                                 <AnimateHeight duration={300} height={currentMenu === 'sungrow' ? 'auto' : 0}> | ||||
|                                     <ul className="sub-menu text-gray-500"> | ||||
|                                         <li> | ||||
|                                             <Link href="/sungrow/sites">Sites</Link> | ||||
|                                         </li> | ||||
|                                     </ul> | ||||
|                                 </AnimateHeight> | ||||
|                             </li> | ||||
|                         </ul> | ||||
|                     </PerfectScrollbar> | ||||
|  | ||||
| @ -10,18 +10,12 @@ interface PanelCodeHighlightProps { | ||||
|     className?: string; | ||||
| } | ||||
| 
 | ||||
| const PanelCodeHighlight = ({ children, title, codeHighlight, id, className = '' }: PanelCodeHighlightProps) => { | ||||
|     const [toggleCode, setToggleCode] = useState(false); | ||||
| const PanelCodeHighlight = ({ children, title, id, className = '' }: PanelCodeHighlightProps) => { | ||||
|     return ( | ||||
|         <div className={`panel ${className}`} id={id}> | ||||
|             <div className="mb-5 flex items-center justify-between"> | ||||
|                 <h5 className="text-lg font-semibold dark:text-white-light">{title}</h5> | ||||
|                 <button type="button" className="font-semibold hover:text-gray-400 dark:text-gray-400 dark:hover:text-gray-600" onClick={() => setToggleCode(!toggleCode)}> | ||||
|                     <span className="flex items-center"> | ||||
|                         <IconCode className="me-2" /> | ||||
|                         Code | ||||
|                     </span> | ||||
|                 </button> | ||||
| 
 | ||||
|             </div> | ||||
|             {children} | ||||
|         </div> | ||||
|  | ||||
| @ -4,100 +4,45 @@ import PanelCodeHighlight from '@/components/panel-code-highlight'; | ||||
| import Tippy from '@tippyjs/react'; | ||||
| import 'tippy.js/dist/tippy.css'; | ||||
| import React from 'react'; | ||||
| import IconEye from '../icon/icon-eye'; | ||||
| import { formatUnixTimestamp } from "@/utils/helpers" | ||||
| 
 | ||||
| const ComponentsTablesSimple = ({ tableData = [] }: { tableData: any[] }) => { | ||||
| 
 | ||||
| const ComponentsTablesSimple = () => { | ||||
|     const tableData = [ | ||||
|         { | ||||
|             id: 1, | ||||
|             name: 'John Doe', | ||||
|             email: 'johndoe@yahoo.com', | ||||
|             date: '10/08/2020', | ||||
|             sale: 120, | ||||
|             status: 'Complete', | ||||
|             register: '5 min ago', | ||||
|             progress: '40%', | ||||
|             position: 'Developer', | ||||
|             office: 'London', | ||||
|         }, | ||||
|         { | ||||
|             id: 2, | ||||
|             name: 'Shaun Park', | ||||
|             email: 'shaunpark@gmail.com', | ||||
|             date: '11/08/2020', | ||||
|             sale: 400, | ||||
|             status: 'Pending', | ||||
|             register: '11 min ago', | ||||
|             progress: '23%', | ||||
|             position: 'Designer', | ||||
|             office: 'New York', | ||||
|         }, | ||||
|         { | ||||
|             id: 3, | ||||
|             name: 'Alma Clarke', | ||||
|             email: 'alma@gmail.com', | ||||
|             date: '12/02/2020', | ||||
|             sale: 310, | ||||
|             status: 'In Progress', | ||||
|             register: '1 hour ago', | ||||
|             progress: '80%', | ||||
|             position: 'Accountant', | ||||
|             office: 'Amazon', | ||||
|         }, | ||||
|         { | ||||
|             id: 4, | ||||
|             name: 'Vincent Carpenter', | ||||
|             email: 'vincent@gmail.com', | ||||
|             date: '13/08/2020', | ||||
|             sale: 100, | ||||
|             status: 'Canceled', | ||||
|             register: '1 day ago', | ||||
|             progress: '60%', | ||||
|             position: 'Data Scientist', | ||||
|             office: 'Canada', | ||||
|         }, | ||||
|     ]; | ||||
|     return ( | ||||
|         <PanelCodeHighlight | ||||
|             title="Simple Table" | ||||
|         > | ||||
|         <PanelCodeHighlight title="Chint Sites"> | ||||
|             <div className="table-responsive mb-5"> | ||||
|                 <table> | ||||
|                     <thead> | ||||
|                         <tr> | ||||
|                             <th>Name</th> | ||||
|                             <th>Date</th> | ||||
|                             <th>Sale</th> | ||||
|                             <th>Site Name</th> | ||||
|                             <th>Inverters</th> | ||||
|                             <th>Status</th> | ||||
|                             <th>Created At</th> | ||||
|                             <th>Updated At</th> | ||||
|                             <th className="text-center">Action</th> | ||||
|                         </tr> | ||||
|                     </thead> | ||||
|                     <tbody> | ||||
|                         {tableData.map((data) => { | ||||
|                             return ( | ||||
|                         {tableData.map((data) => ( | ||||
|                             <tr key={data.id}> | ||||
|                                 <td> | ||||
|                                         <div className="whitespace-nowrap">{data.name}</div> | ||||
|                                     <div className="whitespace-nowrap">{data.siteName}</div> | ||||
|                                 </td> | ||||
|                                     <td>{data.date}</td> | ||||
|                                     <td>{data.sale}</td> | ||||
|                                 <td>{data.inverter.length}</td> | ||||
|                                 <td> | ||||
|                                         <div | ||||
|                                             className={`whitespace-nowrap ${ | ||||
|                                                 data.status === 'completed' | ||||
|                                                     ? 'text-success' | ||||
|                                                     : data.status === 'Pending' | ||||
|                                                     ? 'text-secondary' | ||||
|                                                     : data.status === 'In Progress' | ||||
|                                                     ? 'text-info' | ||||
|                                                     : data.status === 'Canceled' | ||||
|                                                     ? 'text-danger' | ||||
|                                                     : 'text-success' | ||||
|                                             }`}
 | ||||
|                                         > | ||||
|                                             {data.status} | ||||
|                                     <div className={`whitespace-nowrap ${ data.status === 1 ? "text-danger" : "text-success" }`} > | ||||
|                                         {data.statusLabel} | ||||
|                                     </div> | ||||
|                                 </td> | ||||
|                                 <td>{formatUnixTimestamp(data.createdAt)}</td> | ||||
|                                 <td>{formatUnixTimestamp(data.updatedAt)}</td> | ||||
|                                 <td className="text-center"> | ||||
|                                     <Tippy content="View"> | ||||
|                                         <button type="button" className='mr-2'> | ||||
|                                             <IconEye className="m-auto" /> | ||||
|                                         </button> | ||||
|                                     </Tippy> | ||||
|                                     <Tippy content="Delete"> | ||||
|                                         <button type="button"> | ||||
|                                             <IconTrashLines className="m-auto" /> | ||||
| @ -105,8 +50,7 @@ const ComponentsTablesSimple = () => { | ||||
|                                     </Tippy> | ||||
|                                 </td> | ||||
|                             </tr> | ||||
|                             ); | ||||
|                         })} | ||||
|                         ))} | ||||
|                     </tbody> | ||||
|                 </table> | ||||
|             </div> | ||||
| @ -114,4 +58,5 @@ const ComponentsTablesSimple = () => { | ||||
|     ); | ||||
| }; | ||||
| 
 | ||||
| 
 | ||||
| export default ComponentsTablesSimple; | ||||
|  | ||||
							
								
								
									
										456
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										456
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							| @ -1,11 +1,11 @@ | ||||
| { | ||||
|     "name": "vristo-next", | ||||
|     "name": "rooftop-next", | ||||
|     "version": "0.1.0", | ||||
|     "lockfileVersion": 2, | ||||
|     "requires": true, | ||||
|     "packages": { | ||||
|         "": { | ||||
|             "name": "vristo-next", | ||||
|             "name": "rooftop-next", | ||||
|             "version": "0.1.0", | ||||
|             "dependencies": { | ||||
|                 "@emotion/react": "^11.10.6", | ||||
| @ -15,6 +15,7 @@ | ||||
|                 "@types/node": "18.11.18", | ||||
|                 "@types/react": "18.0.27", | ||||
|                 "@types/react-dom": "18.0.10", | ||||
|                 "axios": "^1.7.9", | ||||
|                 "eslint": "8.32.0", | ||||
|                 "eslint-config-next": "13.1.2", | ||||
|                 "i18next": "^22.4.10", | ||||
| @ -1027,6 +1028,12 @@ | ||||
|             "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", | ||||
|             "integrity": "sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==" | ||||
|         }, | ||||
|         "node_modules/asynckit": { | ||||
|             "version": "0.4.0", | ||||
|             "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", | ||||
|             "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", | ||||
|             "license": "MIT" | ||||
|         }, | ||||
|         "node_modules/autoprefixer": { | ||||
|             "version": "10.4.17", | ||||
|             "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.17.tgz", | ||||
| @ -1083,6 +1090,17 @@ | ||||
|                 "node": ">=4" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/axios": { | ||||
|             "version": "1.7.9", | ||||
|             "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.9.tgz", | ||||
|             "integrity": "sha512-LhLcE7Hbiryz8oMDdDptSrWowmB4Bl6RCt6sIJKpRB4XtVf0iEgewX3au/pJqm+Py1kCASkb/FFKjxQaLtxJvw==", | ||||
|             "license": "MIT", | ||||
|             "dependencies": { | ||||
|                 "follow-redirects": "^1.15.6", | ||||
|                 "form-data": "^4.0.0", | ||||
|                 "proxy-from-env": "^1.1.0" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/axobject-query": { | ||||
|             "version": "3.1.1", | ||||
|             "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-3.1.1.tgz", | ||||
| @ -1194,6 +1212,19 @@ | ||||
|                 "url": "https://github.com/sponsors/ljharb" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/call-bind-apply-helpers": { | ||||
|             "version": "1.0.2", | ||||
|             "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", | ||||
|             "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", | ||||
|             "license": "MIT", | ||||
|             "dependencies": { | ||||
|                 "es-errors": "^1.3.0", | ||||
|                 "function-bind": "^1.1.2" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">= 0.4" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/callsites": { | ||||
|             "version": "3.1.0", | ||||
|             "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", | ||||
| @ -1305,6 +1336,18 @@ | ||||
|             "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", | ||||
|             "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" | ||||
|         }, | ||||
|         "node_modules/combined-stream": { | ||||
|             "version": "1.0.8", | ||||
|             "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", | ||||
|             "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", | ||||
|             "license": "MIT", | ||||
|             "dependencies": { | ||||
|                 "delayed-stream": "~1.0.0" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">= 0.8" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/commander": { | ||||
|             "version": "4.1.1", | ||||
|             "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", | ||||
| @ -1461,6 +1504,15 @@ | ||||
|                 "url": "https://github.com/sponsors/ljharb" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/delayed-stream": { | ||||
|             "version": "1.0.0", | ||||
|             "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", | ||||
|             "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", | ||||
|             "license": "MIT", | ||||
|             "engines": { | ||||
|                 "node": ">=0.4.0" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/didyoumean": { | ||||
|             "version": "1.2.2", | ||||
|             "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", | ||||
| @ -1495,6 +1547,20 @@ | ||||
|                 "node": ">=6.0.0" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/dunder-proto": { | ||||
|             "version": "1.0.1", | ||||
|             "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", | ||||
|             "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", | ||||
|             "license": "MIT", | ||||
|             "dependencies": { | ||||
|                 "call-bind-apply-helpers": "^1.0.1", | ||||
|                 "es-errors": "^1.3.0", | ||||
|                 "gopd": "^1.2.0" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">= 0.4" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/electron-to-chromium": { | ||||
|             "version": "1.4.670", | ||||
|             "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.670.tgz", | ||||
| @ -1572,6 +1638,24 @@ | ||||
|                 "url": "https://github.com/sponsors/ljharb" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/es-define-property": { | ||||
|             "version": "1.0.1", | ||||
|             "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", | ||||
|             "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", | ||||
|             "license": "MIT", | ||||
|             "engines": { | ||||
|                 "node": ">= 0.4" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/es-errors": { | ||||
|             "version": "1.3.0", | ||||
|             "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", | ||||
|             "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", | ||||
|             "license": "MIT", | ||||
|             "engines": { | ||||
|                 "node": ">= 0.4" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/es-get-iterator": { | ||||
|             "version": "1.1.3", | ||||
|             "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", | ||||
| @ -1591,14 +1675,28 @@ | ||||
|                 "url": "https://github.com/sponsors/ljharb" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/es-set-tostringtag": { | ||||
|             "version": "2.0.1", | ||||
|             "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", | ||||
|             "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", | ||||
|         "node_modules/es-object-atoms": { | ||||
|             "version": "1.1.1", | ||||
|             "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", | ||||
|             "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", | ||||
|             "license": "MIT", | ||||
|             "dependencies": { | ||||
|                 "get-intrinsic": "^1.1.3", | ||||
|                 "has": "^1.0.3", | ||||
|                 "has-tostringtag": "^1.0.0" | ||||
|                 "es-errors": "^1.3.0" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">= 0.4" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/es-set-tostringtag": { | ||||
|             "version": "2.1.0", | ||||
|             "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", | ||||
|             "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", | ||||
|             "license": "MIT", | ||||
|             "dependencies": { | ||||
|                 "es-errors": "^1.3.0", | ||||
|                 "get-intrinsic": "^1.2.6", | ||||
|                 "has-tostringtag": "^1.0.2", | ||||
|                 "hasown": "^2.0.2" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">= 0.4" | ||||
| @ -2196,6 +2294,26 @@ | ||||
|             "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", | ||||
|             "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==" | ||||
|         }, | ||||
|         "node_modules/follow-redirects": { | ||||
|             "version": "1.15.9", | ||||
|             "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", | ||||
|             "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", | ||||
|             "funding": [ | ||||
|                 { | ||||
|                     "type": "individual", | ||||
|                     "url": "https://github.com/sponsors/RubenVerborgh" | ||||
|                 } | ||||
|             ], | ||||
|             "license": "MIT", | ||||
|             "engines": { | ||||
|                 "node": ">=4.0" | ||||
|             }, | ||||
|             "peerDependenciesMeta": { | ||||
|                 "debug": { | ||||
|                     "optional": true | ||||
|                 } | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/for-each": { | ||||
|             "version": "0.3.3", | ||||
|             "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", | ||||
| @ -2204,6 +2322,21 @@ | ||||
|                 "is-callable": "^1.1.3" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/form-data": { | ||||
|             "version": "4.0.2", | ||||
|             "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.2.tgz", | ||||
|             "integrity": "sha512-hGfm/slu0ZabnNt4oaRZ6uREyfCj6P4fT/n6A1rGV+Z0VdGXjfOhVUpkn6qVQONHGIFwmveGXyDs75+nr6FM8w==", | ||||
|             "license": "MIT", | ||||
|             "dependencies": { | ||||
|                 "asynckit": "^0.4.0", | ||||
|                 "combined-stream": "^1.0.8", | ||||
|                 "es-set-tostringtag": "^2.1.0", | ||||
|                 "mime-types": "^2.1.12" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">= 6" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/fraction.js": { | ||||
|             "version": "4.3.7", | ||||
|             "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", | ||||
| @ -2237,9 +2370,13 @@ | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/function-bind": { | ||||
|             "version": "1.1.1", | ||||
|             "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", | ||||
|             "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" | ||||
|             "version": "1.1.2", | ||||
|             "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", | ||||
|             "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", | ||||
|             "license": "MIT", | ||||
|             "funding": { | ||||
|                 "url": "https://github.com/sponsors/ljharb" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/function.prototype.name": { | ||||
|             "version": "1.1.5", | ||||
| @ -2267,18 +2404,42 @@ | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/get-intrinsic": { | ||||
|             "version": "1.1.3", | ||||
|             "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", | ||||
|             "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", | ||||
|             "version": "1.2.7", | ||||
|             "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.7.tgz", | ||||
|             "integrity": "sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==", | ||||
|             "license": "MIT", | ||||
|             "dependencies": { | ||||
|                 "function-bind": "^1.1.1", | ||||
|                 "has": "^1.0.3", | ||||
|                 "has-symbols": "^1.0.3" | ||||
|                 "call-bind-apply-helpers": "^1.0.1", | ||||
|                 "es-define-property": "^1.0.1", | ||||
|                 "es-errors": "^1.3.0", | ||||
|                 "es-object-atoms": "^1.0.0", | ||||
|                 "function-bind": "^1.1.2", | ||||
|                 "get-proto": "^1.0.0", | ||||
|                 "gopd": "^1.2.0", | ||||
|                 "has-symbols": "^1.1.0", | ||||
|                 "hasown": "^2.0.2", | ||||
|                 "math-intrinsics": "^1.1.0" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">= 0.4" | ||||
|             }, | ||||
|             "funding": { | ||||
|                 "url": "https://github.com/sponsors/ljharb" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/get-proto": { | ||||
|             "version": "1.0.1", | ||||
|             "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", | ||||
|             "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", | ||||
|             "license": "MIT", | ||||
|             "dependencies": { | ||||
|                 "dunder-proto": "^1.0.1", | ||||
|                 "es-object-atoms": "^1.0.0" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">= 0.4" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/get-symbol-description": { | ||||
|             "version": "1.0.0", | ||||
|             "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", | ||||
| @ -2395,11 +2556,12 @@ | ||||
|             "integrity": "sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==" | ||||
|         }, | ||||
|         "node_modules/gopd": { | ||||
|             "version": "1.0.1", | ||||
|             "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", | ||||
|             "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", | ||||
|             "dependencies": { | ||||
|                 "get-intrinsic": "^1.1.3" | ||||
|             "version": "1.2.0", | ||||
|             "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", | ||||
|             "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", | ||||
|             "license": "MIT", | ||||
|             "engines": { | ||||
|                 "node": ">= 0.4" | ||||
|             }, | ||||
|             "funding": { | ||||
|                 "url": "https://github.com/sponsors/ljharb" | ||||
| @ -2465,9 +2627,10 @@ | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/has-symbols": { | ||||
|             "version": "1.0.3", | ||||
|             "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", | ||||
|             "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", | ||||
|             "version": "1.1.0", | ||||
|             "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", | ||||
|             "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", | ||||
|             "license": "MIT", | ||||
|             "engines": { | ||||
|                 "node": ">= 0.4" | ||||
|             }, | ||||
| @ -2476,11 +2639,12 @@ | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/has-tostringtag": { | ||||
|             "version": "1.0.0", | ||||
|             "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", | ||||
|             "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", | ||||
|             "version": "1.0.2", | ||||
|             "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", | ||||
|             "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", | ||||
|             "license": "MIT", | ||||
|             "dependencies": { | ||||
|                 "has-symbols": "^1.0.2" | ||||
|                 "has-symbols": "^1.0.3" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">= 0.4" | ||||
| @ -2489,6 +2653,18 @@ | ||||
|                 "url": "https://github.com/sponsors/ljharb" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/hasown": { | ||||
|             "version": "2.0.2", | ||||
|             "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", | ||||
|             "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", | ||||
|             "license": "MIT", | ||||
|             "dependencies": { | ||||
|                 "function-bind": "^1.1.2" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">= 0.4" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/hoist-non-react-statics": { | ||||
|             "version": "3.3.2", | ||||
|             "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", | ||||
| @ -3102,6 +3278,15 @@ | ||||
|                 "node": ">=10" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/math-intrinsics": { | ||||
|             "version": "1.1.0", | ||||
|             "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", | ||||
|             "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", | ||||
|             "license": "MIT", | ||||
|             "engines": { | ||||
|                 "node": ">= 0.4" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/merge2": { | ||||
|             "version": "1.4.1", | ||||
|             "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", | ||||
| @ -3122,6 +3307,27 @@ | ||||
|                 "node": ">=8.6" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/mime-db": { | ||||
|             "version": "1.52.0", | ||||
|             "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", | ||||
|             "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", | ||||
|             "license": "MIT", | ||||
|             "engines": { | ||||
|                 "node": ">= 0.6" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/mime-types": { | ||||
|             "version": "2.1.35", | ||||
|             "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", | ||||
|             "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", | ||||
|             "license": "MIT", | ||||
|             "dependencies": { | ||||
|                 "mime-db": "1.52.0" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">= 0.6" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/mini-svg-data-uri": { | ||||
|             "version": "1.4.4", | ||||
|             "resolved": "https://registry.npmjs.org/mini-svg-data-uri/-/mini-svg-data-uri-1.4.4.tgz", | ||||
| @ -3785,6 +3991,12 @@ | ||||
|             "resolved": "https://registry.npmjs.org/property-expr/-/property-expr-2.0.5.tgz", | ||||
|             "integrity": "sha512-IJUkICM5dP5znhCckHSv30Q4b5/JA5enCtkRHYaOVOAocnH/1BQEYTC5NMfT3AVl/iXKdr3aqQbQn9DxyWknwA==" | ||||
|         }, | ||||
|         "node_modules/proxy-from-env": { | ||||
|             "version": "1.1.0", | ||||
|             "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", | ||||
|             "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", | ||||
|             "license": "MIT" | ||||
|         }, | ||||
|         "node_modules/punycode": { | ||||
|             "version": "2.2.0", | ||||
|             "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.2.0.tgz", | ||||
| @ -5576,6 +5788,11 @@ | ||||
|             "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", | ||||
|             "integrity": "sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==" | ||||
|         }, | ||||
|         "asynckit": { | ||||
|             "version": "0.4.0", | ||||
|             "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", | ||||
|             "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" | ||||
|         }, | ||||
|         "autoprefixer": { | ||||
|             "version": "10.4.17", | ||||
|             "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.17.tgz", | ||||
| @ -5600,6 +5817,16 @@ | ||||
|             "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.6.2.tgz", | ||||
|             "integrity": "sha512-b1WlTV8+XKLj9gZy2DZXgQiyDp9xkkoe2a6U6UbYccScq2wgH/YwCeI2/Jq2mgo0HzQxqJOjWZBLeA/mqsk5Mg==" | ||||
|         }, | ||||
|         "axios": { | ||||
|             "version": "1.7.9", | ||||
|             "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.9.tgz", | ||||
|             "integrity": "sha512-LhLcE7Hbiryz8oMDdDptSrWowmB4Bl6RCt6sIJKpRB4XtVf0iEgewX3au/pJqm+Py1kCASkb/FFKjxQaLtxJvw==", | ||||
|             "requires": { | ||||
|                 "follow-redirects": "^1.15.6", | ||||
|                 "form-data": "^4.0.0", | ||||
|                 "proxy-from-env": "^1.1.0" | ||||
|             } | ||||
|         }, | ||||
|         "axobject-query": { | ||||
|             "version": "3.1.1", | ||||
|             "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-3.1.1.tgz", | ||||
| @ -5675,6 +5902,15 @@ | ||||
|                 "get-intrinsic": "^1.0.2" | ||||
|             } | ||||
|         }, | ||||
|         "call-bind-apply-helpers": { | ||||
|             "version": "1.0.2", | ||||
|             "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", | ||||
|             "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", | ||||
|             "requires": { | ||||
|                 "es-errors": "^1.3.0", | ||||
|                 "function-bind": "^1.1.2" | ||||
|             } | ||||
|         }, | ||||
|         "callsites": { | ||||
|             "version": "3.1.0", | ||||
|             "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", | ||||
| @ -5745,6 +5981,14 @@ | ||||
|             "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", | ||||
|             "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" | ||||
|         }, | ||||
|         "combined-stream": { | ||||
|             "version": "1.0.8", | ||||
|             "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", | ||||
|             "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", | ||||
|             "requires": { | ||||
|                 "delayed-stream": "~1.0.0" | ||||
|             } | ||||
|         }, | ||||
|         "commander": { | ||||
|             "version": "4.1.1", | ||||
|             "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", | ||||
| @ -5863,6 +6107,11 @@ | ||||
|                 "object-keys": "^1.1.1" | ||||
|             } | ||||
|         }, | ||||
|         "delayed-stream": { | ||||
|             "version": "1.0.0", | ||||
|             "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", | ||||
|             "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" | ||||
|         }, | ||||
|         "didyoumean": { | ||||
|             "version": "1.2.2", | ||||
|             "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", | ||||
| @ -5891,6 +6140,16 @@ | ||||
|                 "esutils": "^2.0.2" | ||||
|             } | ||||
|         }, | ||||
|         "dunder-proto": { | ||||
|             "version": "1.0.1", | ||||
|             "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", | ||||
|             "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", | ||||
|             "requires": { | ||||
|                 "call-bind-apply-helpers": "^1.0.1", | ||||
|                 "es-errors": "^1.3.0", | ||||
|                 "gopd": "^1.2.0" | ||||
|             } | ||||
|         }, | ||||
|         "electron-to-chromium": { | ||||
|             "version": "1.4.670", | ||||
|             "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.670.tgz", | ||||
| @ -5959,6 +6218,16 @@ | ||||
|                 "which-typed-array": "^1.1.9" | ||||
|             } | ||||
|         }, | ||||
|         "es-define-property": { | ||||
|             "version": "1.0.1", | ||||
|             "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", | ||||
|             "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==" | ||||
|         }, | ||||
|         "es-errors": { | ||||
|             "version": "1.3.0", | ||||
|             "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", | ||||
|             "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==" | ||||
|         }, | ||||
|         "es-get-iterator": { | ||||
|             "version": "1.1.3", | ||||
|             "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", | ||||
| @ -5975,14 +6244,23 @@ | ||||
|                 "stop-iteration-iterator": "^1.0.0" | ||||
|             } | ||||
|         }, | ||||
|         "es-set-tostringtag": { | ||||
|             "version": "2.0.1", | ||||
|             "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", | ||||
|             "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", | ||||
|         "es-object-atoms": { | ||||
|             "version": "1.1.1", | ||||
|             "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", | ||||
|             "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", | ||||
|             "requires": { | ||||
|                 "get-intrinsic": "^1.1.3", | ||||
|                 "has": "^1.0.3", | ||||
|                 "has-tostringtag": "^1.0.0" | ||||
|                 "es-errors": "^1.3.0" | ||||
|             } | ||||
|         }, | ||||
|         "es-set-tostringtag": { | ||||
|             "version": "2.1.0", | ||||
|             "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", | ||||
|             "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", | ||||
|             "requires": { | ||||
|                 "es-errors": "^1.3.0", | ||||
|                 "get-intrinsic": "^1.2.6", | ||||
|                 "has-tostringtag": "^1.0.2", | ||||
|                 "hasown": "^2.0.2" | ||||
|             } | ||||
|         }, | ||||
|         "es-shim-unscopables": { | ||||
| @ -6429,6 +6707,11 @@ | ||||
|             "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", | ||||
|             "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==" | ||||
|         }, | ||||
|         "follow-redirects": { | ||||
|             "version": "1.15.9", | ||||
|             "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", | ||||
|             "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==" | ||||
|         }, | ||||
|         "for-each": { | ||||
|             "version": "0.3.3", | ||||
|             "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", | ||||
| @ -6437,6 +6720,17 @@ | ||||
|                 "is-callable": "^1.1.3" | ||||
|             } | ||||
|         }, | ||||
|         "form-data": { | ||||
|             "version": "4.0.2", | ||||
|             "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.2.tgz", | ||||
|             "integrity": "sha512-hGfm/slu0ZabnNt4oaRZ6uREyfCj6P4fT/n6A1rGV+Z0VdGXjfOhVUpkn6qVQONHGIFwmveGXyDs75+nr6FM8w==", | ||||
|             "requires": { | ||||
|                 "asynckit": "^0.4.0", | ||||
|                 "combined-stream": "^1.0.8", | ||||
|                 "es-set-tostringtag": "^2.1.0", | ||||
|                 "mime-types": "^2.1.12" | ||||
|             } | ||||
|         }, | ||||
|         "fraction.js": { | ||||
|             "version": "4.3.7", | ||||
|             "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", | ||||
| @ -6456,9 +6750,9 @@ | ||||
|             "optional": true | ||||
|         }, | ||||
|         "function-bind": { | ||||
|             "version": "1.1.1", | ||||
|             "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", | ||||
|             "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" | ||||
|             "version": "1.1.2", | ||||
|             "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", | ||||
|             "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==" | ||||
|         }, | ||||
|         "function.prototype.name": { | ||||
|             "version": "1.1.5", | ||||
| @ -6477,13 +6771,29 @@ | ||||
|             "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==" | ||||
|         }, | ||||
|         "get-intrinsic": { | ||||
|             "version": "1.1.3", | ||||
|             "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", | ||||
|             "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", | ||||
|             "version": "1.2.7", | ||||
|             "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.7.tgz", | ||||
|             "integrity": "sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==", | ||||
|             "requires": { | ||||
|                 "function-bind": "^1.1.1", | ||||
|                 "has": "^1.0.3", | ||||
|                 "has-symbols": "^1.0.3" | ||||
|                 "call-bind-apply-helpers": "^1.0.1", | ||||
|                 "es-define-property": "^1.0.1", | ||||
|                 "es-errors": "^1.3.0", | ||||
|                 "es-object-atoms": "^1.0.0", | ||||
|                 "function-bind": "^1.1.2", | ||||
|                 "get-proto": "^1.0.0", | ||||
|                 "gopd": "^1.2.0", | ||||
|                 "has-symbols": "^1.1.0", | ||||
|                 "hasown": "^2.0.2", | ||||
|                 "math-intrinsics": "^1.1.0" | ||||
|             } | ||||
|         }, | ||||
|         "get-proto": { | ||||
|             "version": "1.0.1", | ||||
|             "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", | ||||
|             "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", | ||||
|             "requires": { | ||||
|                 "dunder-proto": "^1.0.1", | ||||
|                 "es-object-atoms": "^1.0.0" | ||||
|             } | ||||
|         }, | ||||
|         "get-symbol-description": { | ||||
| @ -6566,12 +6876,9 @@ | ||||
|             "integrity": "sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==" | ||||
|         }, | ||||
|         "gopd": { | ||||
|             "version": "1.0.1", | ||||
|             "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", | ||||
|             "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", | ||||
|             "requires": { | ||||
|                 "get-intrinsic": "^1.1.3" | ||||
|             } | ||||
|             "version": "1.2.0", | ||||
|             "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", | ||||
|             "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==" | ||||
|         }, | ||||
|         "graceful-fs": { | ||||
|             "version": "4.2.10", | ||||
| @ -6615,16 +6922,24 @@ | ||||
|             "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==" | ||||
|         }, | ||||
|         "has-symbols": { | ||||
|             "version": "1.0.3", | ||||
|             "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", | ||||
|             "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" | ||||
|             "version": "1.1.0", | ||||
|             "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", | ||||
|             "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==" | ||||
|         }, | ||||
|         "has-tostringtag": { | ||||
|             "version": "1.0.0", | ||||
|             "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", | ||||
|             "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", | ||||
|             "version": "1.0.2", | ||||
|             "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", | ||||
|             "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", | ||||
|             "requires": { | ||||
|                 "has-symbols": "^1.0.2" | ||||
|                 "has-symbols": "^1.0.3" | ||||
|             } | ||||
|         }, | ||||
|         "hasown": { | ||||
|             "version": "2.0.2", | ||||
|             "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", | ||||
|             "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", | ||||
|             "requires": { | ||||
|                 "function-bind": "^1.1.2" | ||||
|             } | ||||
|         }, | ||||
|         "hoist-non-react-statics": { | ||||
| @ -7059,6 +7374,11 @@ | ||||
|                 "yallist": "^4.0.0" | ||||
|             } | ||||
|         }, | ||||
|         "math-intrinsics": { | ||||
|             "version": "1.1.0", | ||||
|             "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", | ||||
|             "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==" | ||||
|         }, | ||||
|         "merge2": { | ||||
|             "version": "1.4.1", | ||||
|             "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", | ||||
| @ -7073,6 +7393,19 @@ | ||||
|                 "picomatch": "^2.3.1" | ||||
|             } | ||||
|         }, | ||||
|         "mime-db": { | ||||
|             "version": "1.52.0", | ||||
|             "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", | ||||
|             "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" | ||||
|         }, | ||||
|         "mime-types": { | ||||
|             "version": "2.1.35", | ||||
|             "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", | ||||
|             "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", | ||||
|             "requires": { | ||||
|                 "mime-db": "1.52.0" | ||||
|             } | ||||
|         }, | ||||
|         "mini-svg-data-uri": { | ||||
|             "version": "1.4.4", | ||||
|             "resolved": "https://registry.npmjs.org/mini-svg-data-uri/-/mini-svg-data-uri-1.4.4.tgz", | ||||
| @ -7492,6 +7825,11 @@ | ||||
|             "resolved": "https://registry.npmjs.org/property-expr/-/property-expr-2.0.5.tgz", | ||||
|             "integrity": "sha512-IJUkICM5dP5znhCckHSv30Q4b5/JA5enCtkRHYaOVOAocnH/1BQEYTC5NMfT3AVl/iXKdr3aqQbQn9DxyWknwA==" | ||||
|         }, | ||||
|         "proxy-from-env": { | ||||
|             "version": "1.1.0", | ||||
|             "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", | ||||
|             "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" | ||||
|         }, | ||||
|         "punycode": { | ||||
|             "version": "2.2.0", | ||||
|             "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.2.0.tgz", | ||||
|  | ||||
| @ -16,6 +16,7 @@ | ||||
|         "@types/node": "18.11.18", | ||||
|         "@types/react": "18.0.27", | ||||
|         "@types/react-dom": "18.0.10", | ||||
|         "axios": "^1.7.9", | ||||
|         "eslint": "8.32.0", | ||||
|         "eslint-config-next": "13.1.2", | ||||
|         "i18next": "^22.4.10", | ||||
|  | ||||
| @ -17,7 +17,7 @@ module.exports = { | ||||
|         extend: { | ||||
|             colors: { | ||||
|                 primary: { | ||||
|                     DEFAULT: '#4361ee', | ||||
|                     DEFAULT: '#fcd913', | ||||
|                     light: '#eaf1ff', | ||||
|                     'dark-light': 'rgba(67,97,238,.15)', | ||||
|                 }, | ||||
|  | ||||
							
								
								
									
										12
									
								
								utils/helpers.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								utils/helpers.ts
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,12 @@ | ||||
| export const formatUnixTimestamp = (timestamp: number): string => { | ||||
|     const date = new Date(timestamp * 1000) // Convert seconds to milliseconds
 | ||||
| 
 | ||||
|     const day = date.getDate().toString().padStart(2, "0") | ||||
|     const month = (date.getMonth() + 1).toString().padStart(2, "0") // Months are 0-based
 | ||||
|     const year = date.getFullYear() | ||||
| 
 | ||||
|     const hours = date.getHours().toString().padStart(2, "0") | ||||
|     const minutes = date.getMinutes().toString().padStart(2, "0") | ||||
| 
 | ||||
|     return `${day}-${month}-${year} ${hours}:${minutes}` | ||||
| } | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 sam
						sam