update colors

This commit is contained in:
sasha-astiadi 2024-10-01 20:09:05 +02:00
parent e48ec49452
commit 18b3ca26d0
87 changed files with 1439 additions and 811 deletions

View File

@ -1,148 +1,40 @@
{
"pages": {
"/not-found": [
"static/chunks/webpack-7fdd419211d08fb1.js",
"static/chunks/fd9d1056-187367407b805b2f.js",
"static/chunks/23-ea8affc1bb5e40b7.js",
"static/chunks/main-app-bf5a6740983e2ceb.js",
"static/chunks/630-4e5a547cb3cb7b12.js",
"static/chunks/202-160b7381a2044522.js",
"static/chunks/app/not-found-0a3206cb77426a91.js"
],
"/_not-found/page": [
"static/chunks/webpack-7fdd419211d08fb1.js",
"static/chunks/fd9d1056-187367407b805b2f.js",
"static/chunks/23-ea8affc1bb5e40b7.js",
"static/chunks/main-app-bf5a6740983e2ceb.js",
"static/chunks/app/_not-found/page-65e0e2f07e8a6141.js"
],
"/layout": [
"static/chunks/webpack-7fdd419211d08fb1.js",
"static/chunks/fd9d1056-187367407b805b2f.js",
"static/chunks/23-ea8affc1bb5e40b7.js",
"static/chunks/main-app-bf5a6740983e2ceb.js",
"static/css/ddee38ae768e0241.css",
"static/chunks/app/layout-35f2696849b06dca.js"
],
"/(main)/page": [
"static/chunks/webpack-7fdd419211d08fb1.js",
"static/chunks/fd9d1056-187367407b805b2f.js",
"static/chunks/23-ea8affc1bb5e40b7.js",
"static/chunks/main-app-bf5a6740983e2ceb.js",
"static/chunks/630-4e5a547cb3cb7b12.js",
"static/chunks/650-160763afc42e38b2.js",
"static/chunks/app/(main)/page-52381833c52a8c9a.js"
],
"/(main)/layout": [
"static/chunks/webpack-7fdd419211d08fb1.js",
"static/chunks/fd9d1056-187367407b805b2f.js",
"static/chunks/23-ea8affc1bb5e40b7.js",
"static/chunks/main-app-bf5a6740983e2ceb.js",
"static/chunks/630-4e5a547cb3cb7b12.js",
"static/chunks/202-160b7381a2044522.js",
"static/chunks/app/(main)/layout-11b533d62ef16061.js"
],
"/usecases/page": [
"static/chunks/webpack-7fdd419211d08fb1.js",
"static/chunks/fd9d1056-187367407b805b2f.js",
"static/chunks/23-ea8affc1bb5e40b7.js",
"static/chunks/main-app-bf5a6740983e2ceb.js",
"static/chunks/56-68515e4009ab953a.js",
"static/chunks/app/usecases/page-7cb48d14b45554eb.js"
],
"/usecases/layout": [
"static/chunks/webpack-7fdd419211d08fb1.js",
"static/chunks/fd9d1056-187367407b805b2f.js",
"static/chunks/23-ea8affc1bb5e40b7.js",
"static/chunks/main-app-bf5a6740983e2ceb.js",
"static/chunks/630-4e5a547cb3cb7b12.js",
"static/chunks/202-160b7381a2044522.js",
"static/chunks/app/usecases/layout-0f407282dbdaa6cc.js"
],
"/community/blogs/herogpt/page": [
"static/chunks/webpack-7fdd419211d08fb1.js",
"static/chunks/fd9d1056-187367407b805b2f.js",
"static/chunks/23-ea8affc1bb5e40b7.js",
"static/chunks/main-app-bf5a6740983e2ceb.js",
"static/chunks/app/community/blogs/herogpt/page-2eb505b10051d970.js"
],
"/community/layout": [
"static/chunks/webpack-7fdd419211d08fb1.js",
"static/chunks/fd9d1056-187367407b805b2f.js",
"static/chunks/23-ea8affc1bb5e40b7.js",
"static/chunks/main-app-bf5a6740983e2ceb.js",
"static/chunks/630-4e5a547cb3cb7b12.js",
"static/chunks/202-160b7381a2044522.js",
"static/chunks/app/community/layout-3d1beadd291aaa55.js"
],
"/events/blockchainweek2/page": [
"static/chunks/webpack-7fdd419211d08fb1.js",
"static/chunks/fd9d1056-187367407b805b2f.js",
"static/chunks/23-ea8affc1bb5e40b7.js",
"static/chunks/main-app-bf5a6740983e2ceb.js",
"static/chunks/app/events/blockchainweek2/page-64af35de23b45881.js"
"/events/versefest/page": [
"static/chunks/webpack.js",
"static/chunks/main-app.js",
"static/chunks/app/events/versefest/page.js"
],
"/events/layout": [
"static/chunks/webpack-7fdd419211d08fb1.js",
"static/chunks/fd9d1056-187367407b805b2f.js",
"static/chunks/23-ea8affc1bb5e40b7.js",
"static/chunks/main-app-bf5a6740983e2ceb.js",
"static/chunks/630-4e5a547cb3cb7b12.js",
"static/chunks/202-160b7381a2044522.js",
"static/chunks/app/events/layout-6604fad0b5d1dd90.js"
"static/chunks/webpack.js",
"static/chunks/main-app.js",
"static/chunks/app/events/layout.js"
],
"/events/blockchainweek1/page": [
"static/chunks/webpack-7fdd419211d08fb1.js",
"static/chunks/fd9d1056-187367407b805b2f.js",
"static/chunks/23-ea8affc1bb5e40b7.js",
"static/chunks/main-app-bf5a6740983e2ceb.js",
"static/chunks/app/events/blockchainweek1/page-0d5c5bb4c3050472.js"
"/layout": [
"static/chunks/webpack.js",
"static/chunks/main-app.js",
"static/css/app/layout.css",
"static/chunks/app/layout.js"
],
"/events/versefest/page": [
"static/chunks/webpack-7fdd419211d08fb1.js",
"static/chunks/fd9d1056-187367407b805b2f.js",
"static/chunks/23-ea8affc1bb5e40b7.js",
"static/chunks/main-app-bf5a6740983e2ceb.js",
"static/chunks/630-4e5a547cb3cb7b12.js",
"static/chunks/56-68515e4009ab953a.js",
"static/chunks/93-1b5ea051b5e765a7.js",
"static/chunks/app/events/versefest/page-60791d470b1a8894.js"
"/not-found": [
"static/chunks/webpack.js",
"static/chunks/main-app.js",
"static/chunks/app/not-found.js"
],
"/events/page": [
"static/chunks/webpack-7fdd419211d08fb1.js",
"static/chunks/fd9d1056-187367407b805b2f.js",
"static/chunks/23-ea8affc1bb5e40b7.js",
"static/chunks/main-app-bf5a6740983e2ceb.js",
"static/chunks/c16f53c3-fa1c880ea7e47b1d.js",
"static/chunks/56-68515e4009ab953a.js",
"static/chunks/125-de1b12e8ccc3262d.js",
"static/chunks/app/events/page-28d67276a86c0675.js"
"/(main)/page": [
"static/chunks/webpack.js",
"static/chunks/main-app.js",
"static/chunks/app/(main)/page.js"
],
"/community/page": [
"static/chunks/webpack-7fdd419211d08fb1.js",
"static/chunks/fd9d1056-187367407b805b2f.js",
"static/chunks/23-ea8affc1bb5e40b7.js",
"static/chunks/main-app-bf5a6740983e2ceb.js",
"static/chunks/c16f53c3-fa1c880ea7e47b1d.js",
"static/chunks/56-68515e4009ab953a.js",
"static/chunks/125-de1b12e8ccc3262d.js",
"static/chunks/app/community/page-6a3b7b922f91ce8f.js"
"/(main)/layout": [
"static/chunks/webpack.js",
"static/chunks/main-app.js",
"static/chunks/app/(main)/layout.js"
],
"/features/page": [
"static/chunks/webpack-7fdd419211d08fb1.js",
"static/chunks/fd9d1056-187367407b805b2f.js",
"static/chunks/23-ea8affc1bb5e40b7.js",
"static/chunks/main-app-bf5a6740983e2ceb.js",
"static/chunks/app/features/page-2525f207046873b0.js"
],
"/features/layout": [
"static/chunks/webpack-7fdd419211d08fb1.js",
"static/chunks/fd9d1056-187367407b805b2f.js",
"static/chunks/23-ea8affc1bb5e40b7.js",
"static/chunks/main-app-bf5a6740983e2ceb.js",
"static/chunks/630-4e5a547cb3cb7b12.js",
"static/chunks/202-160b7381a2044522.js",
"static/chunks/app/features/layout-3b895aa05dfe7eab.js"
"/_not-found/page": [
"static/chunks/webpack.js",
"static/chunks/main-app.js",
"static/chunks/app/_not-found/page.js"
]
}
}

View File

@ -1,31 +1,29 @@
{
"polyfillFiles": [
"static/chunks/polyfills-78c92fac7aa8fdd8.js"
"static/chunks/polyfills.js"
],
"devFiles": [
"static/chunks/react-refresh.js"
],
"devFiles": [],
"ampDevFiles": [],
"lowPriorityFiles": [
"static/EhtvBIkwlO3bugw26exaV/_buildManifest.js",
"static/EhtvBIkwlO3bugw26exaV/_ssgManifest.js"
"static/development/_buildManifest.js",
"static/development/_ssgManifest.js"
],
"rootMainFiles": [
"static/chunks/webpack-7fdd419211d08fb1.js",
"static/chunks/fd9d1056-187367407b805b2f.js",
"static/chunks/23-ea8affc1bb5e40b7.js",
"static/chunks/main-app-bf5a6740983e2ceb.js"
"static/chunks/webpack.js",
"static/chunks/main-app.js"
],
"pages": {
"/_app": [
"static/chunks/webpack-7fdd419211d08fb1.js",
"static/chunks/framework-aec844d2ccbe7592.js",
"static/chunks/main-003ad47792143762.js",
"static/chunks/pages/_app-6a626577ffa902a4.js"
"static/chunks/webpack.js",
"static/chunks/main.js",
"static/chunks/pages/_app.js"
],
"/_error": [
"static/chunks/webpack-7fdd419211d08fb1.js",
"static/chunks/framework-aec844d2ccbe7592.js",
"static/chunks/main-003ad47792143762.js",
"static/chunks/pages/_error-1be831200e60c5c0.js"
"static/chunks/webpack.js",
"static/chunks/main.js",
"static/chunks/pages/_error.js"
]
},
"ampFirstPages": []

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -1,12 +1,5 @@
{
"/_not-found/page": "app/_not-found/page.js",
"/(main)/page": "app/(main)/page.js",
"/usecases/page": "app/usecases/page.js",
"/community/blogs/herogpt/page": "app/community/blogs/herogpt/page.js",
"/events/blockchainweek2/page": "app/events/blockchainweek2/page.js",
"/events/blockchainweek1/page": "app/events/blockchainweek1/page.js",
"/events/versefest/page": "app/events/versefest/page.js",
"/events/page": "app/events/page.js",
"/community/page": "app/community/page.js",
"/features/page": "app/features/page.js"
"/events/versefest/page": "app/events/versefest/page.js"
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +0,0 @@
"use strict";(()=>{var e={};e.id=616,e.ids=[616],e.modules={2934:e=>{e.exports=require("next/dist/client/components/action-async-storage.external.js")},4580:e=>{e.exports=require("next/dist/client/components/request-async-storage.external.js")},5869:e=>{e.exports=require("next/dist/client/components/static-generation-async-storage.external.js")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},565:(e,r,t)=>{t.r(r),t.d(r,{GlobalError:()=>a.a,__next_app__:()=>c,originalPathname:()=>d,pages:()=>l,routeModule:()=>m,tree:()=>p}),t(6165),t(9155),t(3658),t(1837);var n=t(3191),o=t(8716),s=t(7922),a=t.n(s),i=t(5231),u={};for(let e in i)0>["default","tree","pages","GlobalError","originalPathname","__next_app__","routeModule"].indexOf(e)&&(u[e]=()=>i[e]);t.d(r,u);let p=["",{children:["community",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(t.bind(t,6165)),"C:\\github-repos\\ourverse_new\\src\\app\\community\\page.jsx"]}]},{layout:[()=>Promise.resolve().then(t.bind(t,9155)),"C:\\github-repos\\ourverse_new\\src\\app\\community\\layout.jsx"]}]},{layout:[()=>Promise.resolve().then(t.bind(t,3658)),"C:\\github-repos\\ourverse_new\\src\\app\\layout.jsx"],"not-found":[()=>Promise.resolve().then(t.bind(t,1837)),"C:\\github-repos\\ourverse_new\\src\\app\\not-found.jsx"]}],l=["C:\\github-repos\\ourverse_new\\src\\app\\community\\page.jsx"],d="/community/page",c={require:t,loadChunk:()=>Promise.resolve()},m=new n.AppPageRouteModule({definition:{kind:o.x.APP_PAGE,page:"/community/page",pathname:"/community",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:p}})},9155:(e,r,t)=>{t.r(r),t.d(r,{default:()=>s});var n=t(9510),o=t(1928);function s({children:e}){return n.jsx(o.A,{children:e})}},6165:(e,r,t)=>{t.r(r),t.d(r,{default:()=>u});var n=t(9510);t(22),t(2570);var o=t(7430);t(9110);var s=t(7395),a=t(8260),i=t(347);function u(){return(0,n.jsxs)(n.Fragment,{children:[n.jsx(o.Z,{}),n.jsx(a.Z,{}),n.jsx(s.Z,{}),n.jsx(i.Z,{})]})}}};var r=require("../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),n=r.X(0,[576,216,607,970,491],()=>t(565));module.exports=n})();

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
self.__INTERCEPTION_ROUTE_REWRITE_MANIFEST="[]";
self.__INTERCEPTION_ROUTE_REWRITE_MANIFEST="[]"

View File

@ -1 +1,32 @@
self.__BUILD_MANIFEST={polyfillFiles:["static/chunks/polyfills-78c92fac7aa8fdd8.js"],devFiles:[],ampDevFiles:[],lowPriorityFiles:[],rootMainFiles:["static/chunks/webpack-7fdd419211d08fb1.js","static/chunks/fd9d1056-187367407b805b2f.js","static/chunks/23-ea8affc1bb5e40b7.js","static/chunks/main-app-bf5a6740983e2ceb.js"],pages:{"/_app":["static/chunks/webpack-7fdd419211d08fb1.js","static/chunks/framework-aec844d2ccbe7592.js","static/chunks/main-003ad47792143762.js","static/chunks/pages/_app-6a626577ffa902a4.js"],"/_error":["static/chunks/webpack-7fdd419211d08fb1.js","static/chunks/framework-aec844d2ccbe7592.js","static/chunks/main-003ad47792143762.js","static/chunks/pages/_error-1be831200e60c5c0.js"]},ampFirstPages:[]},self.__BUILD_MANIFEST.lowPriorityFiles=["/static/"+process.env.__NEXT_BUILD_ID+"/_buildManifest.js",,"/static/"+process.env.__NEXT_BUILD_ID+"/_ssgManifest.js"];
self.__BUILD_MANIFEST = {
"polyfillFiles": [
"static/chunks/polyfills.js"
],
"devFiles": [
"static/chunks/react-refresh.js"
],
"ampDevFiles": [],
"lowPriorityFiles": [],
"rootMainFiles": [
"static/chunks/webpack.js",
"static/chunks/main-app.js"
],
"pages": {
"/_app": [
"static/chunks/webpack.js",
"static/chunks/main.js",
"static/chunks/pages/_app.js"
],
"/_error": [
"static/chunks/webpack.js",
"static/chunks/main.js",
"static/chunks/pages/_error.js"
]
},
"ampFirstPages": []
};
self.__BUILD_MANIFEST.lowPriorityFiles = [
"/static/" + process.env.__NEXT_BUILD_ID + "/_buildManifest.js",
,"/static/" + process.env.__NEXT_BUILD_ID + "/_ssgManifest.js",
];

View File

@ -1 +1 @@
self.__REACT_LOADABLE_MANIFEST="{}";
self.__REACT_LOADABLE_MANIFEST="{}"

View File

@ -1 +1 @@
self.__NEXT_FONT_MANIFEST='{"pages":{},"app":{},"appUsingSizeAdjust":false,"pagesUsingSizeAdjust":false}';
self.__NEXT_FONT_MANIFEST="{\"pages\":{},\"app\":{\"/Users/sashaastiadi/code/git.ourworld.tf/ourverse_new/src/app/layout\":[\"static/media/7e6a2e30184bb114-s.p.woff2\",\"static/media/a34f9d1faa5f3315-s.p.woff2\"]},\"appUsingSizeAdjust\":true,\"pagesUsingSizeAdjust\":false}"

View File

@ -1 +1 @@
{"pages":{},"app":{},"appUsingSizeAdjust":false,"pagesUsingSizeAdjust":false}
{"pages":{},"app":{"/Users/sashaastiadi/code/git.ourworld.tf/ourverse_new/src/app/layout":["static/media/7e6a2e30184bb114-s.p.woff2","static/media/a34f9d1faa5f3315-s.p.woff2"]},"appUsingSizeAdjust":true,"pagesUsingSizeAdjust":false}

View File

@ -1 +1,5 @@
{"/_app":"pages/_app.js","/_error":"pages/_error.js","/_document":"pages/_document.js","/404":"pages/404.html"}
{
"/_app": "pages/_app.js",
"/_error": "pages/_error.js",
"/_document": "pages/_document.js"
}

View File

@ -1 +1 @@
self.__RSC_SERVER_MANIFEST="{\"node\":{},\"edge\":{},\"encryptionKey\":\"process.env.NEXT_SERVER_ACTIONS_ENCRYPTION_KEY\"}"
self.__RSC_SERVER_MANIFEST="{\n \"node\": {},\n \"edge\": {},\n \"encryptionKey\": \"process.env.NEXT_SERVER_ACTIONS_ENCRYPTION_KEY\"\n}"

View File

@ -1 +1,5 @@
{"node":{},"edge":{},"encryptionKey":"/knEK15SVATKr8abgPgFhCx6yJkkoicqmPTeRFWsPXE="}
{
"node": {},
"edge": {},
"encryptionKey": "L5RleHwOBWxtb12ZIBoT+EpZnVmDL96LuFln3B3HCAc="
}

View File

@ -1 +1,215 @@
(()=>{"use strict";var e={},r={};function t(o){var n=r[o];if(void 0!==n)return n.exports;var a=r[o]={exports:{}},u=!0;try{e[o](a,a.exports,t),u=!1}finally{u&&delete r[o]}return a.exports}t.m=e,t.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return t.d(r,{a:r}),r},(()=>{var e,r=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__;t.t=function(o,n){if(1&n&&(o=this(o)),8&n||"object"==typeof o&&o&&(4&n&&o.__esModule||16&n&&"function"==typeof o.then))return o;var a=Object.create(null);t.r(a);var u={};e=e||[null,r({}),r([]),r(r)];for(var f=2&n&&o;"object"==typeof f&&!~e.indexOf(f);f=r(f))Object.getOwnPropertyNames(f).forEach(e=>u[e]=()=>o[e]);return u.default=()=>o,t.d(a,u),a}})(),t.d=(e,r)=>{for(var o in r)t.o(r,o)&&!t.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:r[o]})},t.f={},t.e=e=>Promise.all(Object.keys(t.f).reduce((r,o)=>(t.f[o](e,r),r),[])),t.u=e=>""+e+".js",t.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),t.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.X=(e,r,o)=>{var n=r;o||(r=e,o=()=>t(t.s=n)),r.map(t.e,t);var a=o();return void 0===a?e:a},(()=>{var e={658:1},r=r=>{var o=r.modules,n=r.ids,a=r.runtime;for(var u in o)t.o(o,u)&&(t.m[u]=o[u]);a&&a(t);for(var f=0;f<n.length;f++)e[n[f]]=1};t.f.require=(o,n)=>{e[o]||(658!=o?r(require("./chunks/"+t.u(o))):e[o]=1)},module.exports=t,t.C=r})()})();
/*
* ATTENTION: An "eval-source-map" devtool has been used.
* This devtool is neither made for production nor for readable output files.
* It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools.
* If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
* or disable the default devtool with "devtool: false".
* If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
*/
/******/ (() => { // webpackBootstrap
/******/ "use strict";
/******/ var __webpack_modules__ = ({});
/************************************************************************/
/******/ // The module cache
/******/ var __webpack_module_cache__ = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ var cachedModule = __webpack_module_cache__[moduleId];
/******/ if (cachedModule !== undefined) {
/******/ return cachedModule.exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = __webpack_module_cache__[moduleId] = {
/******/ id: moduleId,
/******/ loaded: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ var threw = true;
/******/ try {
/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/ threw = false;
/******/ } finally {
/******/ if(threw) delete __webpack_module_cache__[moduleId];
/******/ }
/******/
/******/ // Flag the module as loaded
/******/ module.loaded = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = __webpack_modules__;
/******/
/************************************************************************/
/******/ /* webpack/runtime/compat get default export */
/******/ (() => {
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = (module) => {
/******/ var getter = module && module.__esModule ?
/******/ () => (module['default']) :
/******/ () => (module);
/******/ __webpack_require__.d(getter, { a: getter });
/******/ return getter;
/******/ };
/******/ })();
/******/
/******/ /* webpack/runtime/create fake namespace object */
/******/ (() => {
/******/ var getProto = Object.getPrototypeOf ? (obj) => (Object.getPrototypeOf(obj)) : (obj) => (obj.__proto__);
/******/ var leafPrototypes;
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 16: return value when it's Promise-like
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = this(value);
/******/ if(mode & 8) return value;
/******/ if(typeof value === 'object' && value) {
/******/ if((mode & 4) && value.__esModule) return value;
/******/ if((mode & 16) && typeof value.then === 'function') return value;
/******/ }
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ var def = {};
/******/ leafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)];
/******/ for(var current = mode & 2 && value; typeof current == 'object' && !~leafPrototypes.indexOf(current); current = getProto(current)) {
/******/ Object.getOwnPropertyNames(current).forEach((key) => (def[key] = () => (value[key])));
/******/ }
/******/ def['default'] = () => (value);
/******/ __webpack_require__.d(ns, def);
/******/ return ns;
/******/ };
/******/ })();
/******/
/******/ /* webpack/runtime/define property getters */
/******/ (() => {
/******/ // define getter functions for harmony exports
/******/ __webpack_require__.d = (exports, definition) => {
/******/ for(var key in definition) {
/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
/******/ }
/******/ }
/******/ };
/******/ })();
/******/
/******/ /* webpack/runtime/ensure chunk */
/******/ (() => {
/******/ __webpack_require__.f = {};
/******/ // This file contains only the entry chunk.
/******/ // The chunk loading function for additional chunks
/******/ __webpack_require__.e = (chunkId) => {
/******/ return Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {
/******/ __webpack_require__.f[key](chunkId, promises);
/******/ return promises;
/******/ }, []));
/******/ };
/******/ })();
/******/
/******/ /* webpack/runtime/get javascript chunk filename */
/******/ (() => {
/******/ // This function allow to reference async chunks and sibling chunks for the entrypoint
/******/ __webpack_require__.u = (chunkId) => {
/******/ // return url for filenames based on template
/******/ return "" + chunkId + ".js";
/******/ };
/******/ })();
/******/
/******/ /* webpack/runtime/getFullHash */
/******/ (() => {
/******/ __webpack_require__.h = () => ("ce03ad8906bb918e")
/******/ })();
/******/
/******/ /* webpack/runtime/hasOwnProperty shorthand */
/******/ (() => {
/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
/******/ })();
/******/
/******/ /* webpack/runtime/make namespace object */
/******/ (() => {
/******/ // define __esModule on exports
/******/ __webpack_require__.r = (exports) => {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/ })();
/******/
/******/ /* webpack/runtime/node module decorator */
/******/ (() => {
/******/ __webpack_require__.nmd = (module) => {
/******/ module.paths = [];
/******/ if (!module.children) module.children = [];
/******/ return module;
/******/ };
/******/ })();
/******/
/******/ /* webpack/runtime/startup entrypoint */
/******/ (() => {
/******/ __webpack_require__.X = (result, chunkIds, fn) => {
/******/ // arguments: chunkIds, moduleId are deprecated
/******/ var moduleId = chunkIds;
/******/ if(!fn) chunkIds = result, fn = () => (__webpack_require__(__webpack_require__.s = moduleId));
/******/ chunkIds.map(__webpack_require__.e, __webpack_require__)
/******/ var r = fn();
/******/ return r === undefined ? result : r;
/******/ }
/******/ })();
/******/
/******/ /* webpack/runtime/require chunk loading */
/******/ (() => {
/******/ // no baseURI
/******/
/******/ // object to store loaded chunks
/******/ // "1" means "loaded", otherwise not loaded yet
/******/ var installedChunks = {
/******/ "webpack-runtime": 1
/******/ };
/******/
/******/ // no on chunks loaded
/******/
/******/ var installChunk = (chunk) => {
/******/ var moreModules = chunk.modules, chunkIds = chunk.ids, runtime = chunk.runtime;
/******/ for(var moduleId in moreModules) {
/******/ if(__webpack_require__.o(moreModules, moduleId)) {
/******/ __webpack_require__.m[moduleId] = moreModules[moduleId];
/******/ }
/******/ }
/******/ if(runtime) runtime(__webpack_require__);
/******/ for(var i = 0; i < chunkIds.length; i++)
/******/ installedChunks[chunkIds[i]] = 1;
/******/
/******/ };
/******/
/******/ // require() chunk loading for javascript
/******/ __webpack_require__.f.require = (chunkId, promises) => {
/******/ // "1" is the signal for "already loaded"
/******/ if(!installedChunks[chunkId]) {
/******/ if("webpack-runtime" != chunkId) {
/******/ installChunk(require("./" + __webpack_require__.u(chunkId)));
/******/ } else installedChunks[chunkId] = 1;
/******/ }
/******/ };
/******/
/******/ module.exports = __webpack_require__;
/******/ __webpack_require__.C = installChunk;
/******/
/******/ // no HMR
/******/
/******/ // no HMR manifest
/******/ })();
/******/
/************************************************************************/
/******/
/******/
/******/ })()
;

File diff suppressed because one or more lines are too long

View File

@ -1,4 +1,4 @@
// File: C:\github-repos\ourverse_new\src\app\(main)\layout.jsx
// File: /Users/sashaastiadi/code/git.ourworld.tf/ourverse_new/src/app/(main)/layout.jsx
import * as entry from '../../../../src/app/(main)/layout.js'
import type { ResolvingMetadata, ResolvingViewport } from 'next/dist/lib/metadata/types/metadata-interface.js'

View File

@ -1,4 +1,4 @@
// File: C:\github-repos\ourverse_new\src\app\(main)\page.jsx
// File: /Users/sashaastiadi/code/git.ourworld.tf/ourverse_new/src/app/(main)/page.jsx
import * as entry from '../../../../src/app/(main)/page.js'
import type { ResolvingMetadata, ResolvingViewport } from 'next/dist/lib/metadata/types/metadata-interface.js'

View File

@ -1,79 +0,0 @@
// File: C:\github-repos\ourverse_new\src\app\community\layout.jsx
import * as entry from '../../../../src/app/community/layout.js'
import type { ResolvingMetadata, ResolvingViewport } from 'next/dist/lib/metadata/types/metadata-interface.js'
type TEntry = typeof import('../../../../src/app/community/layout.js')
// Check that the entry is a valid entry
checkFields<Diff<{
default: Function
config?: {}
generateStaticParams?: Function
revalidate?: RevalidateRange<TEntry> | false
dynamic?: 'auto' | 'force-dynamic' | 'error' | 'force-static'
dynamicParams?: boolean
fetchCache?: 'auto' | 'force-no-store' | 'only-no-store' | 'default-no-store' | 'default-cache' | 'only-cache' | 'force-cache'
preferredRegion?: 'auto' | 'global' | 'home' | string | string[]
runtime?: 'nodejs' | 'experimental-edge' | 'edge'
maxDuration?: number
metadata?: any
generateMetadata?: Function
viewport?: any
generateViewport?: Function
}, TEntry, ''>>()
// Check the prop type of the entry function
checkFields<Diff<LayoutProps, FirstArg<TEntry['default']>, 'default'>>()
// Check the arguments and return type of the generateMetadata function
if ('generateMetadata' in entry) {
checkFields<Diff<LayoutProps, FirstArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
checkFields<Diff<ResolvingMetadata, SecondArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
}
// Check the arguments and return type of the generateViewport function
if ('generateViewport' in entry) {
checkFields<Diff<LayoutProps, FirstArg<MaybeField<TEntry, 'generateViewport'>>, 'generateViewport'>>()
checkFields<Diff<ResolvingViewport, SecondArg<MaybeField<TEntry, 'generateViewport'>>, 'generateViewport'>>()
}
// Check the arguments and return type of the generateStaticParams function
if ('generateStaticParams' in entry) {
checkFields<Diff<{ params: PageParams }, FirstArg<MaybeField<TEntry, 'generateStaticParams'>>, 'generateStaticParams'>>()
checkFields<Diff<{ __tag__: 'generateStaticParams', __return_type__: any[] | Promise<any[]> }, { __tag__: 'generateStaticParams', __return_type__: ReturnType<MaybeField<TEntry, 'generateStaticParams'>> }>>()
}
type PageParams = any
export interface PageProps {
params?: any
searchParams?: any
}
export interface LayoutProps {
children?: React.ReactNode
params?: any
}
// =============
// Utility types
type RevalidateRange<T> = T extends { revalidate: any } ? NonNegative<T['revalidate']> : never
// If T is unknown or any, it will be an empty {} type. Otherwise, it will be the same as Omit<T, keyof Base>.
type OmitWithTag<T, K extends keyof any, _M> = Omit<T, K>
type Diff<Base, T extends Base, Message extends string = ''> = 0 extends (1 & T) ? {} : OmitWithTag<T, keyof Base, Message>
type FirstArg<T extends Function> = T extends (...args: [infer T, any]) => any ? unknown extends T ? any : T : never
type SecondArg<T extends Function> = T extends (...args: [any, infer T]) => any ? unknown extends T ? any : T : never
type MaybeField<T, K extends string> = T extends { [k in K]: infer G } ? G extends Function ? G : never : never
function checkFields<_ extends { [k in keyof any]: never }>() {}
// https://github.com/sindresorhus/type-fest
type Numeric = number | bigint
type Zero = 0 | 0n
type Negative<T extends Numeric> = T extends Zero ? never : `${T}` extends `-${string}` ? T : never
type NonNegative<T extends Numeric> = T extends Zero ? T : Negative<T> extends never ? T : '__invalid_negative_number__'

View File

@ -1,79 +0,0 @@
// File: C:\github-repos\ourverse_new\src\app\community\page.jsx
import * as entry from '../../../../src/app/community/page.js'
import type { ResolvingMetadata, ResolvingViewport } from 'next/dist/lib/metadata/types/metadata-interface.js'
type TEntry = typeof import('../../../../src/app/community/page.js')
// Check that the entry is a valid entry
checkFields<Diff<{
default: Function
config?: {}
generateStaticParams?: Function
revalidate?: RevalidateRange<TEntry> | false
dynamic?: 'auto' | 'force-dynamic' | 'error' | 'force-static'
dynamicParams?: boolean
fetchCache?: 'auto' | 'force-no-store' | 'only-no-store' | 'default-no-store' | 'default-cache' | 'only-cache' | 'force-cache'
preferredRegion?: 'auto' | 'global' | 'home' | string | string[]
runtime?: 'nodejs' | 'experimental-edge' | 'edge'
maxDuration?: number
metadata?: any
generateMetadata?: Function
viewport?: any
generateViewport?: Function
}, TEntry, ''>>()
// Check the prop type of the entry function
checkFields<Diff<PageProps, FirstArg<TEntry['default']>, 'default'>>()
// Check the arguments and return type of the generateMetadata function
if ('generateMetadata' in entry) {
checkFields<Diff<PageProps, FirstArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
checkFields<Diff<ResolvingMetadata, SecondArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
}
// Check the arguments and return type of the generateViewport function
if ('generateViewport' in entry) {
checkFields<Diff<PageProps, FirstArg<MaybeField<TEntry, 'generateViewport'>>, 'generateViewport'>>()
checkFields<Diff<ResolvingViewport, SecondArg<MaybeField<TEntry, 'generateViewport'>>, 'generateViewport'>>()
}
// Check the arguments and return type of the generateStaticParams function
if ('generateStaticParams' in entry) {
checkFields<Diff<{ params: PageParams }, FirstArg<MaybeField<TEntry, 'generateStaticParams'>>, 'generateStaticParams'>>()
checkFields<Diff<{ __tag__: 'generateStaticParams', __return_type__: any[] | Promise<any[]> }, { __tag__: 'generateStaticParams', __return_type__: ReturnType<MaybeField<TEntry, 'generateStaticParams'>> }>>()
}
type PageParams = any
export interface PageProps {
params?: any
searchParams?: any
}
export interface LayoutProps {
children?: React.ReactNode
params?: any
}
// =============
// Utility types
type RevalidateRange<T> = T extends { revalidate: any } ? NonNegative<T['revalidate']> : never
// If T is unknown or any, it will be an empty {} type. Otherwise, it will be the same as Omit<T, keyof Base>.
type OmitWithTag<T, K extends keyof any, _M> = Omit<T, K>
type Diff<Base, T extends Base, Message extends string = ''> = 0 extends (1 & T) ? {} : OmitWithTag<T, keyof Base, Message>
type FirstArg<T extends Function> = T extends (...args: [infer T, any]) => any ? unknown extends T ? any : T : never
type SecondArg<T extends Function> = T extends (...args: [any, infer T]) => any ? unknown extends T ? any : T : never
type MaybeField<T, K extends string> = T extends { [k in K]: infer G } ? G extends Function ? G : never : never
function checkFields<_ extends { [k in keyof any]: never }>() {}
// https://github.com/sindresorhus/type-fest
type Numeric = number | bigint
type Zero = 0 | 0n
type Negative<T extends Numeric> = T extends Zero ? never : `${T}` extends `-${string}` ? T : never
type NonNegative<T extends Numeric> = T extends Zero ? T : Negative<T> extends never ? T : '__invalid_negative_number__'

View File

@ -1,79 +0,0 @@
// File: C:\github-repos\ourverse_new\src\app\features\layout.jsx
import * as entry from '../../../../src/app/features/layout.js'
import type { ResolvingMetadata, ResolvingViewport } from 'next/dist/lib/metadata/types/metadata-interface.js'
type TEntry = typeof import('../../../../src/app/features/layout.js')
// Check that the entry is a valid entry
checkFields<Diff<{
default: Function
config?: {}
generateStaticParams?: Function
revalidate?: RevalidateRange<TEntry> | false
dynamic?: 'auto' | 'force-dynamic' | 'error' | 'force-static'
dynamicParams?: boolean
fetchCache?: 'auto' | 'force-no-store' | 'only-no-store' | 'default-no-store' | 'default-cache' | 'only-cache' | 'force-cache'
preferredRegion?: 'auto' | 'global' | 'home' | string | string[]
runtime?: 'nodejs' | 'experimental-edge' | 'edge'
maxDuration?: number
metadata?: any
generateMetadata?: Function
viewport?: any
generateViewport?: Function
}, TEntry, ''>>()
// Check the prop type of the entry function
checkFields<Diff<LayoutProps, FirstArg<TEntry['default']>, 'default'>>()
// Check the arguments and return type of the generateMetadata function
if ('generateMetadata' in entry) {
checkFields<Diff<LayoutProps, FirstArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
checkFields<Diff<ResolvingMetadata, SecondArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
}
// Check the arguments and return type of the generateViewport function
if ('generateViewport' in entry) {
checkFields<Diff<LayoutProps, FirstArg<MaybeField<TEntry, 'generateViewport'>>, 'generateViewport'>>()
checkFields<Diff<ResolvingViewport, SecondArg<MaybeField<TEntry, 'generateViewport'>>, 'generateViewport'>>()
}
// Check the arguments and return type of the generateStaticParams function
if ('generateStaticParams' in entry) {
checkFields<Diff<{ params: PageParams }, FirstArg<MaybeField<TEntry, 'generateStaticParams'>>, 'generateStaticParams'>>()
checkFields<Diff<{ __tag__: 'generateStaticParams', __return_type__: any[] | Promise<any[]> }, { __tag__: 'generateStaticParams', __return_type__: ReturnType<MaybeField<TEntry, 'generateStaticParams'>> }>>()
}
type PageParams = any
export interface PageProps {
params?: any
searchParams?: any
}
export interface LayoutProps {
children?: React.ReactNode
params?: any
}
// =============
// Utility types
type RevalidateRange<T> = T extends { revalidate: any } ? NonNegative<T['revalidate']> : never
// If T is unknown or any, it will be an empty {} type. Otherwise, it will be the same as Omit<T, keyof Base>.
type OmitWithTag<T, K extends keyof any, _M> = Omit<T, K>
type Diff<Base, T extends Base, Message extends string = ''> = 0 extends (1 & T) ? {} : OmitWithTag<T, keyof Base, Message>
type FirstArg<T extends Function> = T extends (...args: [infer T, any]) => any ? unknown extends T ? any : T : never
type SecondArg<T extends Function> = T extends (...args: [any, infer T]) => any ? unknown extends T ? any : T : never
type MaybeField<T, K extends string> = T extends { [k in K]: infer G } ? G extends Function ? G : never : never
function checkFields<_ extends { [k in keyof any]: never }>() {}
// https://github.com/sindresorhus/type-fest
type Numeric = number | bigint
type Zero = 0 | 0n
type Negative<T extends Numeric> = T extends Zero ? never : `${T}` extends `-${string}` ? T : never
type NonNegative<T extends Numeric> = T extends Zero ? T : Negative<T> extends never ? T : '__invalid_negative_number__'

View File

@ -1,79 +0,0 @@
// File: C:\github-repos\ourverse_new\src\app\features\page.jsx
import * as entry from '../../../../src/app/features/page.js'
import type { ResolvingMetadata, ResolvingViewport } from 'next/dist/lib/metadata/types/metadata-interface.js'
type TEntry = typeof import('../../../../src/app/features/page.js')
// Check that the entry is a valid entry
checkFields<Diff<{
default: Function
config?: {}
generateStaticParams?: Function
revalidate?: RevalidateRange<TEntry> | false
dynamic?: 'auto' | 'force-dynamic' | 'error' | 'force-static'
dynamicParams?: boolean
fetchCache?: 'auto' | 'force-no-store' | 'only-no-store' | 'default-no-store' | 'default-cache' | 'only-cache' | 'force-cache'
preferredRegion?: 'auto' | 'global' | 'home' | string | string[]
runtime?: 'nodejs' | 'experimental-edge' | 'edge'
maxDuration?: number
metadata?: any
generateMetadata?: Function
viewport?: any
generateViewport?: Function
}, TEntry, ''>>()
// Check the prop type of the entry function
checkFields<Diff<PageProps, FirstArg<TEntry['default']>, 'default'>>()
// Check the arguments and return type of the generateMetadata function
if ('generateMetadata' in entry) {
checkFields<Diff<PageProps, FirstArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
checkFields<Diff<ResolvingMetadata, SecondArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
}
// Check the arguments and return type of the generateViewport function
if ('generateViewport' in entry) {
checkFields<Diff<PageProps, FirstArg<MaybeField<TEntry, 'generateViewport'>>, 'generateViewport'>>()
checkFields<Diff<ResolvingViewport, SecondArg<MaybeField<TEntry, 'generateViewport'>>, 'generateViewport'>>()
}
// Check the arguments and return type of the generateStaticParams function
if ('generateStaticParams' in entry) {
checkFields<Diff<{ params: PageParams }, FirstArg<MaybeField<TEntry, 'generateStaticParams'>>, 'generateStaticParams'>>()
checkFields<Diff<{ __tag__: 'generateStaticParams', __return_type__: any[] | Promise<any[]> }, { __tag__: 'generateStaticParams', __return_type__: ReturnType<MaybeField<TEntry, 'generateStaticParams'>> }>>()
}
type PageParams = any
export interface PageProps {
params?: any
searchParams?: any
}
export interface LayoutProps {
children?: React.ReactNode
params?: any
}
// =============
// Utility types
type RevalidateRange<T> = T extends { revalidate: any } ? NonNegative<T['revalidate']> : never
// If T is unknown or any, it will be an empty {} type. Otherwise, it will be the same as Omit<T, keyof Base>.
type OmitWithTag<T, K extends keyof any, _M> = Omit<T, K>
type Diff<Base, T extends Base, Message extends string = ''> = 0 extends (1 & T) ? {} : OmitWithTag<T, keyof Base, Message>
type FirstArg<T extends Function> = T extends (...args: [infer T, any]) => any ? unknown extends T ? any : T : never
type SecondArg<T extends Function> = T extends (...args: [any, infer T]) => any ? unknown extends T ? any : T : never
type MaybeField<T, K extends string> = T extends { [k in K]: infer G } ? G extends Function ? G : never : never
function checkFields<_ extends { [k in keyof any]: never }>() {}
// https://github.com/sindresorhus/type-fest
type Numeric = number | bigint
type Zero = 0 | 0n
type Negative<T extends Numeric> = T extends Zero ? never : `${T}` extends `-${string}` ? T : never
type NonNegative<T extends Numeric> = T extends Zero ? T : Negative<T> extends never ? T : '__invalid_negative_number__'

View File

@ -1,79 +0,0 @@
// File: C:\github-repos\ourverse_new\src\app\usecases\layout.jsx
import * as entry from '../../../../src/app/usecases/layout.js'
import type { ResolvingMetadata, ResolvingViewport } from 'next/dist/lib/metadata/types/metadata-interface.js'
type TEntry = typeof import('../../../../src/app/usecases/layout.js')
// Check that the entry is a valid entry
checkFields<Diff<{
default: Function
config?: {}
generateStaticParams?: Function
revalidate?: RevalidateRange<TEntry> | false
dynamic?: 'auto' | 'force-dynamic' | 'error' | 'force-static'
dynamicParams?: boolean
fetchCache?: 'auto' | 'force-no-store' | 'only-no-store' | 'default-no-store' | 'default-cache' | 'only-cache' | 'force-cache'
preferredRegion?: 'auto' | 'global' | 'home' | string | string[]
runtime?: 'nodejs' | 'experimental-edge' | 'edge'
maxDuration?: number
metadata?: any
generateMetadata?: Function
viewport?: any
generateViewport?: Function
}, TEntry, ''>>()
// Check the prop type of the entry function
checkFields<Diff<LayoutProps, FirstArg<TEntry['default']>, 'default'>>()
// Check the arguments and return type of the generateMetadata function
if ('generateMetadata' in entry) {
checkFields<Diff<LayoutProps, FirstArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
checkFields<Diff<ResolvingMetadata, SecondArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
}
// Check the arguments and return type of the generateViewport function
if ('generateViewport' in entry) {
checkFields<Diff<LayoutProps, FirstArg<MaybeField<TEntry, 'generateViewport'>>, 'generateViewport'>>()
checkFields<Diff<ResolvingViewport, SecondArg<MaybeField<TEntry, 'generateViewport'>>, 'generateViewport'>>()
}
// Check the arguments and return type of the generateStaticParams function
if ('generateStaticParams' in entry) {
checkFields<Diff<{ params: PageParams }, FirstArg<MaybeField<TEntry, 'generateStaticParams'>>, 'generateStaticParams'>>()
checkFields<Diff<{ __tag__: 'generateStaticParams', __return_type__: any[] | Promise<any[]> }, { __tag__: 'generateStaticParams', __return_type__: ReturnType<MaybeField<TEntry, 'generateStaticParams'>> }>>()
}
type PageParams = any
export interface PageProps {
params?: any
searchParams?: any
}
export interface LayoutProps {
children?: React.ReactNode
params?: any
}
// =============
// Utility types
type RevalidateRange<T> = T extends { revalidate: any } ? NonNegative<T['revalidate']> : never
// If T is unknown or any, it will be an empty {} type. Otherwise, it will be the same as Omit<T, keyof Base>.
type OmitWithTag<T, K extends keyof any, _M> = Omit<T, K>
type Diff<Base, T extends Base, Message extends string = ''> = 0 extends (1 & T) ? {} : OmitWithTag<T, keyof Base, Message>
type FirstArg<T extends Function> = T extends (...args: [infer T, any]) => any ? unknown extends T ? any : T : never
type SecondArg<T extends Function> = T extends (...args: [any, infer T]) => any ? unknown extends T ? any : T : never
type MaybeField<T, K extends string> = T extends { [k in K]: infer G } ? G extends Function ? G : never : never
function checkFields<_ extends { [k in keyof any]: never }>() {}
// https://github.com/sindresorhus/type-fest
type Numeric = number | bigint
type Zero = 0 | 0n
type Negative<T extends Numeric> = T extends Zero ? never : `${T}` extends `-${string}` ? T : never
type NonNegative<T extends Numeric> = T extends Zero ? T : Negative<T> extends never ? T : '__invalid_negative_number__'

View File

@ -1,79 +0,0 @@
// File: C:\github-repos\ourverse_new\src\app\usecases\page.jsx
import * as entry from '../../../../src/app/usecases/page.js'
import type { ResolvingMetadata, ResolvingViewport } from 'next/dist/lib/metadata/types/metadata-interface.js'
type TEntry = typeof import('../../../../src/app/usecases/page.js')
// Check that the entry is a valid entry
checkFields<Diff<{
default: Function
config?: {}
generateStaticParams?: Function
revalidate?: RevalidateRange<TEntry> | false
dynamic?: 'auto' | 'force-dynamic' | 'error' | 'force-static'
dynamicParams?: boolean
fetchCache?: 'auto' | 'force-no-store' | 'only-no-store' | 'default-no-store' | 'default-cache' | 'only-cache' | 'force-cache'
preferredRegion?: 'auto' | 'global' | 'home' | string | string[]
runtime?: 'nodejs' | 'experimental-edge' | 'edge'
maxDuration?: number
metadata?: any
generateMetadata?: Function
viewport?: any
generateViewport?: Function
}, TEntry, ''>>()
// Check the prop type of the entry function
checkFields<Diff<PageProps, FirstArg<TEntry['default']>, 'default'>>()
// Check the arguments and return type of the generateMetadata function
if ('generateMetadata' in entry) {
checkFields<Diff<PageProps, FirstArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
checkFields<Diff<ResolvingMetadata, SecondArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
}
// Check the arguments and return type of the generateViewport function
if ('generateViewport' in entry) {
checkFields<Diff<PageProps, FirstArg<MaybeField<TEntry, 'generateViewport'>>, 'generateViewport'>>()
checkFields<Diff<ResolvingViewport, SecondArg<MaybeField<TEntry, 'generateViewport'>>, 'generateViewport'>>()
}
// Check the arguments and return type of the generateStaticParams function
if ('generateStaticParams' in entry) {
checkFields<Diff<{ params: PageParams }, FirstArg<MaybeField<TEntry, 'generateStaticParams'>>, 'generateStaticParams'>>()
checkFields<Diff<{ __tag__: 'generateStaticParams', __return_type__: any[] | Promise<any[]> }, { __tag__: 'generateStaticParams', __return_type__: ReturnType<MaybeField<TEntry, 'generateStaticParams'>> }>>()
}
type PageParams = any
export interface PageProps {
params?: any
searchParams?: any
}
export interface LayoutProps {
children?: React.ReactNode
params?: any
}
// =============
// Utility types
type RevalidateRange<T> = T extends { revalidate: any } ? NonNegative<T['revalidate']> : never
// If T is unknown or any, it will be an empty {} type. Otherwise, it will be the same as Omit<T, keyof Base>.
type OmitWithTag<T, K extends keyof any, _M> = Omit<T, K>
type Diff<Base, T extends Base, Message extends string = ''> = 0 extends (1 & T) ? {} : OmitWithTag<T, keyof Base, Message>
type FirstArg<T extends Function> = T extends (...args: [infer T, any]) => any ? unknown extends T ? any : T : never
type SecondArg<T extends Function> = T extends (...args: [any, infer T]) => any ? unknown extends T ? any : T : never
type MaybeField<T, K extends string> = T extends { [k in K]: infer G } ? G extends Function ? G : never : never
function checkFields<_ extends { [k in keyof any]: never }>() {}
// https://github.com/sindresorhus/type-fest
type Numeric = number | bigint
type Zero = 0 | 0n
type Negative<T extends Numeric> = T extends Zero ? never : `${T}` extends `-${string}` ? T : never
type NonNegative<T extends Numeric> = T extends Zero ? T : Negative<T> extends never ? T : '__invalid_negative_number__'

View File

@ -1,7 +1,10 @@
/** @type {import('next').NextConfig} */
const nextConfig = {
output : 'export'
};
output: 'export',
images: {
unoptimized: true, // Disable the default image optimization
},
};
module.exports = nextConfig;
module.exports = nextConfig;

BIN
public/images/2.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 813 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 488 KiB

BIN
public/images/eventbg.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 924 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 229 KiB

BIN
public/videos/hero.mp4 Normal file

Binary file not shown.

View File

@ -4,16 +4,19 @@ import Events from '@/components/Events'
import { Product } from '@/components/Product'
import { Sponsors } from '@/components/Sponsors'
import BentoSection from '@/components/Bentosection'
import { Phasesdark } from '@/components/Phases'
import HeroFeature from '@/components/HeroFeature'
import Eventbanner from '@/components/Eventbanner'
export default function Home() {
return (
<>
<Homepage />
<Sponsors />
<Hero />
<Phasesdark />
<HeroFeature />
<BentoSection />
<Product />
<Events />
<Eventbanner />
</>
)
}

View File

@ -4,12 +4,12 @@ export default function Example() {
return (
<div className="flex items-center gap-x-6 btn-gradient-dark px-6 py-2.5 sm:px-3.5 sm:before:flex-1">
<p className="text-sm leading-6 text-white">
<a href="/events/versefest">
<a href="/events/versefest.html">
<strong className="font-semibold">OurVerse FutureFest 2024</strong>
<svg viewBox="0 0 2 2" aria-hidden="true" className="mx-2 inline h-0.5 w-0.5 fill-current">
<circle r={1} cx={1} cy={1} />
</svg>
Join us from Oct 25 27 to see whats coming next&nbsp;<span aria-hidden="true">&rarr;</span>
Join us from Nov 22 24 to see whats coming next&nbsp;<span aria-hidden="true">&rarr;</span>
</a>
</p>
<div className="flex flex-1 justify-end">

View File

@ -59,13 +59,14 @@ export default function BentoSection() {
return (
<Container>
<div className="relative pt-24 z-10 mx-auto max-w-2xl lg:mx-0 lg:max-w-5xl lg:pr-24">
<div className=' pt-12 pb-24'>
<div className="relative z-10 mx-auto max-w-2xl lg:mx-0 lg:max-w-5xl lg:pr-24">
<h2 className="text-base font-medium font-mono leading-7 text-cyan-700">Features</h2>
<h2 className="mt-2 h3-title">
Collaboration & Creation Tools
</h2>
<p className="mt-4 section-text">
Transform how you and your team work together with our innovative, real-time creative tools.
Transform how you and your team work together with our innovative creative tools and explore diverse scenarios where they empower users to collaborate in immersive virtual environments.
</p>
</div>
<div className="mt-10 grid grid-cols-1 gap-4 sm:mt-16 lg:grid-cols-6 lg:grid-rows-2">
@ -124,6 +125,7 @@ export default function BentoSection() {
link="/features"
/>
</div>
</div>
</Container>
)
}

40
src/components/Bottom.jsx Normal file
View File

@ -0,0 +1,40 @@
export default function Bottom() {
return (
<div className="relative isolate overflow-hidden bg-gray-900">
<div className="px-6 py-24 sm:px-6 sm:py-32 lg:px-8">
<div className="mx-auto max-w-2xl text-center">
<h2 className="text-3xl font-bold tracking-tight text-gradient lg:text-5xl">
The Future of Collaboration
<br />
is now.
</h2>
<p className="mx-auto mt-6 max-w-xl text-lg leading-8 text-gray-300">
Join OurVerse and experience the future of collaboration and creation tools beyond your imagination.
</p>
<div className="mt-10 flex items-center justify-center gap-x-6">
<a
href="#"
className="rounded-md btn-gradient-dark2 px-3.5 py-2.5 text-sm font-semibold text-gray-900 shadow-sm hover:bg-gray-100 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-white"
>
Sign Up Now
</a>
</div>
</div>
</div>
<svg
viewBox="0 0 1024 1024"
aria-hidden="true"
className="absolute left-1/2 top-1/2 -z-10 h-[64rem] w-[64rem] -translate-x-1/2 [mask-image:radial-gradient(closest-side,white,transparent)]"
>
<circle r={512} cx={512} cy={512} fill="url(#8d958450-c69f-4251-94bc-4e091a323369)" fillOpacity="0.7" />
<defs>
<radialGradient id="8d958450-c69f-4251-94bc-4e091a323369">
<stop stopColor="#7775D6" />
<stop offset={1} stopColor="#E935C1" />
</radialGradient>
</defs>
</svg>
</div>
)
}

View File

@ -0,0 +1,38 @@
export default function Eventbanner() {
return (
<div className="mx-auto max-w-2xl px-4 pb-24 sm:px-6 lg:max-w-7xl ">
<h2 className="text-base font-medium font-mono leading-7 text-cyan-700">Community</h2>
<h2 className="mt-2 mb-4 h3-title">
Events
</h2>
<div className="relative overflow-hidden rounded-lg lg:h-96">
<div className="absolute inset-0">
<img
alt=""
src="/images/eventbg.jpg"
className="h-full w-full object-cover object-center"
/>
</div>
<div aria-hidden="true" className="relative h-96 w-full lg:hidden" />
<div aria-hidden="true" className="relative h-32 w-full lg:hidden" />
<div className="absolute py-4 inset-x-0 bottom-0 rounded-bl-lg rounded-br-lg bg-purple-950 bg-opacity-90 p-6 backdrop-blur backdrop-filter sm:flex sm:items-center sm:justify-between lg:inset-x-auto lg:inset-y-0 lg:w-96 lg:flex-col lg:items-start lg:rounded-br-none lg:rounded-tl-lg">
<div>
<h2 className="mt-4 lg:text-3xl text-xl font-bold text-gradient">OurVerse </h2>
<h2 className="lg:text-3xl text-xl font-bold text-gradient">FutureFest 2024</h2>
<h3 className="text-xl font-bold text-gradient">Nov 22 - 24</h3>
<p className="mt-4 text-md text-gray-300">
OurVerse's OurFutureFest connects freelancers, innovators, and businesses in the Metaverse, empowering them to explore new technologies and collaborate seamlessly across boundaries.
</p>
</div>
<a
href="/events/versefest.html"
className="mt-6 flex flex-shrink-0 items-center justify-center rounded-md btn-gradient-dark bg-opacity-0 px-4 py-3 text-base font-medium text-white hover:bg-opacity-10 sm:ml-8 sm:mt-0 lg:ml-0 lg:w-full"
>
Register Now
</a>
</div>
</div>
</div>
)
}

View File

@ -2,43 +2,7 @@ import { BackgroundImage } from '@/components/BackgroundImage'
import { Button } from '@/components/Button'
import { Container } from '@/components/Container'
const timeline = [
{
name: 'Early Online Collaboration',
description:
'In the early days, digital collaboration was limited to basic tools like email and simple chat platforms. Communication was often slow, and interactions were minimal.',
date: 'Phase I',
dateTime: '2021-08',
},
{
name: 'The Rise of Video Conferencing',
description:
'With the advent of video conferencing tools like Zoom and Microsoft Teams, people could interact face-to-face online.',
date: 'Phase II',
dateTime: '2021-12',
},
{
name: 'Persistent Barriers',
description:
'Despite technological advances, many still struggle to meet and collaborate due to lack of access to reliable tools or infrastructure.',
date: 'Phase III',
dateTime: '2022-02',
},
{
name: 'The OurVerse Solution',
description:
'OurVerse introduces a fully immersive metaverse platform that makes collaboration accessible to all, enabling dynamic interactions and creativity beyond borders.',
date: 'Phase IV',
dateTime: '2022-12',
},
{
name: 'Unlimited Possibilities',
description:
"With OurVerse, you can create your own immersive virtual world as you envision it, making collaboration inclusive and without limits—the future is now.",
date: 'Phase V',
dateTime: '2022-12',
},
]
export function Hero() {
return (
@ -54,13 +18,14 @@ export function Hero() {
</h1>
<div className="mt-4 space-y-6 mx-4 font-display section-text">
<p>
<span className='emphasis'>OurVerse</span> empowers users to build, manage, and monetize their unique virtual experiences by blending the latest advancements
in blockchain technology with immersive virtual reality, built on top of the <span className='emphasis'>ThreeFold Grid</span>.
</p>
<p>Our mission is to make the metaverse accessible to all, fostering a creative, collaborative, and equitable digital community. By leveraging <span className='emphasis'>ThreeFold Grid</span>'s decentralized infrastructure,
we aim to provide a platform where data confidentiality, scalability, and independence are paramount.</p>
<span className='emphasis'>OurVerse</span> is a fully immersive metaverse platform, offering a space where virtual interactions
feel real, engaging, and limitless.</p>
<p>Our mission is to break down the barriers to meaningful connection and collaboration. We believe that everyone, regardless of location or resources,
should have access to immersive and engaging spaces where they can meet, create, and innovate together.</p>
</div>
<dl className="mt-10 grid grid-cols-2 gap-x-10 gap-y-4 gap-x-16 gap-y-10 text-center lg:auto-cols-auto lg:grid-flow-col lg:grid-cols-none lg:justify-start lg:text-left">
<dl className="mt-10 grid grid-cols-2 gap-x-10 gap-y-4 lg:auto-cols-auto lg:grid-flow-col lg:grid-cols-none lg:justify-start text-center lg:text-left">
{[
['3D Assets', '100000+'],
['Users', '5000+'],
@ -76,35 +41,6 @@ export function Hero() {
))}
</dl>
</div>
<div className="pt-6 pb-24"></div>
<div className="mx-auto max-w-7xl px-6 lg:px-8">
<h2 className="lg:text-4xl font-semibold tracking-tight leading-normal text-gradient-dark text-xl">A Journey to The Future</h2>
<div className="mt-4 mb-12 space-y-6 font-display section-text">
A journey through five transformative phases of digital collaboration, culminating in OurVersethe immersive
metaverse platform breaking down barriers and unlocking unlimited possibilities for global connection.
</div>
<div className="mx-auto grid max-w-2xl grid-cols-1 gap-8 overflow-hidden lg:mx-0 lg:max-w-none lg:grid-cols-5">
{timeline.map((item) => (
<div key={item.name}>
<time
dateTime={item.dateTime}
className="flex items-center text-sm font-semibold leading-6 text-cyan-600"
>
<svg viewBox="0 0 4 4" aria-hidden="true" className="mr-4 h-1 w-1 flex-none">
<circle r={2} cx={2} cy={2} fill="currentColor" />
</svg>
{item.date}
<div
aria-hidden="true"
className="absolute -ml-2 h-px w-screen -translate-x-full bg-purple-900/10 sm:-ml-4 lg:static lg:-mr-6 lg:ml-8 lg:w-auto lg:flex-auto lg:translate-x-0"
/>
</time>
<p className="mt-6 text-lg font-semibold leading-6 tracking-tight text-purple-700">{item.name}</p>
<p className="mt-4 text-sm leading-6 text-purple-900">{item.description}</p>
</div>
))}
</div>
</div>
</Container>
</div>
)

View File

@ -0,0 +1,77 @@
import {
ArrowPathIcon,
CloudArrowUpIcon,
Cog6ToothIcon,
FingerPrintIcon,
LockClosedIcon,
ServerIcon,
CubeIcon,
DocumentMagnifyingGlassIcon,
CpuChipIcon,
ShieldCheckIcon,
FilmIcon,
GlobeAltIcon,
RocketLaunchIcon,
} from '@heroicons/react/20/solid'
export default function HeroFeature() {
return (
<div className="bg-gradient-to-b from-purple-50/80 to-purple-50/10 pt-32 pb-12">
<div className="mx-auto max-w-7xl px-6 lg:px-8">
<div className="mx-auto max-w-4xl sm:text-center">
<btn className="items-center rounded-2xl px-12 btn-gradient-dark2 py-2.5 text-md font-semibold"
>
NEW
</btn>
<p className="mt-8 h2-title text-center">Introducing: OurHero Verse 3D</p>
<p className="mt-4 items-center align-center text-center section-text-ct">
First Generative AI 3D Tools for the Metaverse and Beyond
</p>
</div>
</div>
<div className="relative overflow-hidden pt-16">
<div className="mx-auto max-w-6xl px-6 lg:px-8">
{/* embed Video */}
<video
autoPlay
loop
muted
playsInline
className="relative w-full h-full overflow-hidden rounded-lg shadow-lg"
>
<source src="/videos/ourverse3.mp4" type="video/mp4" />
Your browser does not support the video tag.
</video>
<div aria-hidden="true" className="relative">
<div className="absolute -inset-x-20 bottom-0 bg-gradient-to-t from-white pt-[7%]" />
</div>
</div>
</div>
<div className="mt-4 mx-auto lg:mt-16 max-w-5xl px-6 mt-20 md:mt-24 lg:px-8 text-center items-center">
<h2 className="text-base font-medium font-mono leading-7 text-cyan-700">Generative AI 3D Tool</h2>
<p className="mt-4 h3-title text-center">Transform your Imagination into Immersive Reality </p>
<p className="mt-8 items-center align-center section-text-ct">
Our team has developed a cutting-edge system allowing users to generate with AI, full 3D virtual environments using text input alone,
by eliminating traditional barriers such as high technical skill requirements or expensive software.
</p>
<p className="mt-4 items-center align-center section-text-ct">
Anyone, regardless of their background, skill level, or geographical location, can use the system to create complex 3D interactives environments tailored to their needs,
simply by describing them.
</p>
</div>
<div className="mt-10 pb-8 flex items-center justify-center gap-x-6">
<a
href="#"
className="rounded-2xl btn-gradient-dark px-3.5 py-2.5 text-sm font-semibold text-white shadow-sm hover:bg-purple-500 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-purple-500"
>
Try Now
</a>
<a href="#" className="text-sm font-semibold leading-6 text-purple-900 hover:text-purple-500">
Learn more <span aria-hidden="true"></span>
</a>
</div>
</div>
)
}

View File

@ -5,7 +5,7 @@ import { ChevronRightIcon } from '@heroicons/react/20/solid'
export function Homepage() {
return (
<Gradient className="lg:pt-24 pt-20 pb-12">
<div className="lg:pt-24 pt-24 pb-12 min-h-screen flex items-center justify-center relative">
<Container>
{/* Background Video */}
<video
@ -15,34 +15,29 @@ export function Homepage() {
playsInline
className="absolute inset-0 w-full h-full object-cover -z-10"
>
<source src="/videos/ourverse5.mp4" type="video/mp4" />
<source src="/videos/hero.mp4" type="video/mp4" />
Your browser does not support the video tag.
</video>
<div className="mx-auto max-w-xl lg:max-w-6xl">
<h1 className="font-display lg:max-w-2xl font-bold tracking-tighter text-gradient-dark lg:text-7xl text-5xl">
The Future of Collaboration is Now.
<div className="mx-auto max-w-xl lg:max-w-6xl text-center">
<h1 className="font-display lg:max-w-3xl font-bold text-white tracking-tighter lg:text-7xl text-5xl">
The Future of <span className='text-gradient'>Collaboration is Now.</span>
</h1>
<div className="lg:max-w-3xl max-w-2xl my-6 space-y-6 font-display font-medium lg:text-2xl text-xl tracking-tight leading-normal text-purple-800">
<p>At <span className='bg-gradient3 font-semibold'>OurVerse</span>, we go beyond traditional video calls.
Our immersive metaverse platform brings people together in a dynamic, interactive environment where meetings
and events feel real.</p>
<p>Built on the decentralized ThreeFold Grid, we empower global collaboration with enhanced security,
flexibility, and freedom.</p>
</div>
<div className="mt-10 pb-8 flex items-center gap-x-6">
<div className="mt-10 pb-8 flex items-center justify-center gap-x-6">
<a
href="#"
className="rounded-2xl btn-gradient-dark px-3.5 py-2.5 text-sm font-semibold text-white shadow-sm hover:bg-purple-500 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-purple-500"
>
Join OurVerse
</a>
<a href="#" className="text-sm font-semibold leading-6 text-purple-900 hover:text-purple-700">
<a href="#" className="text-sm font-semibold leading-6 text-white hover:text-purple-200">
Learn more <span aria-hidden="true"></span>
</a>
</div>
</div>
</Container>
</Gradient>
</div>
);
}

View File

@ -1,5 +1,5 @@
import { Footer } from '@/components/Footer'
import { Newsletter } from '@/components/Newsletter'
import Bottom from '@/components/Bottom'
import Banner from '@/components/Banner'
import { Header } from '@/components/Header'
import Footer2 from './Footer2'
@ -10,7 +10,7 @@ export function Layout({ children, showFooter = true }) {
<Header />
<Banner />
<main className="flex-auto">{children}</main>
<Newsletter />
<Bottom />
{showFooter && <Footer2 />}
</>
)

87
src/components/Phases.jsx Normal file
View File

@ -0,0 +1,87 @@
import { BackgroundImage } from '@/components/BackgroundImage'
import { Button } from '@/components/Button'
import { Container } from '@/components/Container'
const timeline = [
{
name: 'Early Online Collaboration',
description:
'In the early days, digital collaboration was limited to basic tools like email and simple chat platforms. Communication was often slow, and interactions were minimal.',
date: 'Phase I',
dateTime: '2021-08',
},
{
name: 'The Rise of Video Conferencing',
description:
'With the advent of video conferencing tools like Zoom and Microsoft Teams, people could interact face-to-face online.',
date: 'Phase II',
dateTime: '2021-12',
},
{
name: 'Persistent Barriers',
description:
'Despite technological advances, many still struggle to meet and collaborate due to lack of access to reliable tools or infrastructure.',
date: 'Phase III',
dateTime: '2022-02',
},
{
name: 'The OurVerse Solution',
description:
'OurVerse introduces a fully immersive metaverse platform that makes collaboration accessible to all, enabling dynamic interactions and creativity beyond borders.',
date: 'Phase IV',
dateTime: '2022-12',
},
{
name: 'Unlimited Possibilities',
description:
"With OurVerse, you can create your own immersive virtual world as you envision it, making collaboration inclusive and without limits—the future is now.",
date: 'Phase V',
dateTime: '2022-12',
},
]
export function Phasesdark() {
return (
<div className="bg-gradient-dark min-h-screen">
<div className="mx-auto max-w-7xl py-24 px-6 lg:px-8">
<h2 className="lg:text-4xl pt-20 font-semibold tracking-tight leading-normal text-gradient text-3xl">
Experience True Collaboration
</h2>
<p className="mt-4 mb-4 text-purple-100 lg:text-xl space-y-6 font-display">
Weve all experienced different ways to connect and collaborate onlinethrough chat, video conferences, and shared platforms. But the reality is, not everyone has equal access.
Many people around the world still face barriers due to limited tools, infrastructure, or platforms. Geographic, technical, and economic challenges make it hard for businesses,
educators, and creators to collaborate effectively.
</p>
<p className="mt-4 mb-20 text-purple-100 lg:text-xl space-y-6 font-display">
Our journey through five transformative phases of digital collaboration leads to OurVersean immersive metaverse platform
designed to break down these barriers and unlock limitless opportunities for global connection and innovation.
</p>
<div className="mx-auto grid max-w-2xl grid-cols-1 gap-8 overflow-hidden lg:mx-0 lg:max-w-none lg:grid-cols-5">
{timeline.map((item) => (
<div key={item.name}>
<time
dateTime={item.dateTime}
className={`flex items-center text-md font-semibold leading-6 ${
item.date === 'Phase IV' || item.date === 'Phase V' ? 'text-purple-lt lg:text-xl' : 'text-purple-200'
}`}
>
<svg viewBox="0 0 4 4" aria-hidden="true" className="mr-4 h-1 w-1 flex-none">
<circle r={2} cx={2} cy={2} fill="currentColor" />
</svg>
{item.date}
</time>
<p
className={`mt-6 text-lg font-semibold leading-6 tracking-tight ${
item.date === 'Phase IV' || item.date === 'Phase V' ? 'text-purple-lt' : 'text-purple-200'
}`}
>
{item.name}
</p>
<p className="mt-4 text-sm leading-6 text-purple-100">{item.description}</p>
</div>
))}
</div>
</div>
</div>
)
}

View File

@ -0,0 +1,72 @@
import { BackgroundImage } from '@/components/BackgroundImage'
import { Button } from '@/components/Button'
import { Container } from '@/components/Container'
const timeline = [
{
name: 'Early Online Collaboration',
description:
'In the early days, digital collaboration was limited to basic tools like email and simple chat platforms. Communication was often slow, and interactions were minimal.',
date: 'Phase I',
dateTime: '2021-08',
},
{
name: 'The Rise of Video Conferencing',
description:
'With the advent of video conferencing tools like Zoom and Microsoft Teams, people could interact face-to-face online.',
date: 'Phase II',
dateTime: '2021-12',
},
{
name: 'Persistent Barriers',
description:
'Despite technological advances, many still struggle to meet and collaborate due to lack of access to reliable tools or infrastructure.',
date: 'Phase III',
dateTime: '2022-02',
},
{
name: 'The OurVerse Solution',
description:
'OurVerse introduces a fully immersive metaverse platform that makes collaboration accessible to all, enabling dynamic interactions and creativity beyond borders.',
date: 'Phase IV',
dateTime: '2022-12',
},
{
name: 'Unlimited Possibilities',
description:
"With OurVerse, you can create your own immersive virtual world as you envision it, making collaboration inclusive and without limits—the future is now.",
date: 'Phase V',
dateTime: '2022-12',
},
]
export function Phasesdark() {
return (
<div className="mx-auto max-w-7xl px-6 lg:px-8 bg-purple-900 text-white">
<h2 className="lg:text-4xl pt-20 font-semibold tracking-tight leading-normal text-white text-xl">
A Journey to The Future
</h2>
<p className="mt-4 mb-12 space-y-6 font-display section-text text-white">
A journey through five transformative phases of digital collaboration, culminating in OurVersethe immersive
metaverse platform breaking down barriers and unlocking unlimited possibilities for global connection.
</p>
<div className="mx-auto grid max-w-2xl grid-cols-1 gap-8 overflow-hidden lg:mx-0 lg:max-w-none lg:grid-cols-5">
{timeline.map((item) => (
<div key={item.name}>
<time
dateTime={item.dateTime}
className="flex items-center text-sm font-semibold leading-6 text-cyan-400"
>
<svg viewBox="0 0 4 4" aria-hidden="true" className="mr-4 h-1 w-1 flex-none">
<circle r={2} cx={2} cy={2} fill="currentColor" />
</svg>
{item.date}
</time>
<p className="mt-6 text-lg font-semibold leading-6 tracking-tight text-white">{item.name}</p>
<p className="mt-4 text-sm leading-6 text-gray-300">{item.description}</p>
</div>
))}
</div>
</div>
)
}

BIN
src/images/2.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 813 KiB

View File

@ -95,7 +95,7 @@
/* Darker button purple green version */
.btn-gradient-dark {
background-color: #2e2542;
background-image: linear-gradient(45deg, #5e4589 0%, #5fa69b 100%);
background-image: linear-gradient(45deg, #5e4589 0%, #b532ac 100%);
color: white;
padding: 8px 15px;
border: none;
@ -103,19 +103,52 @@
transition: background-image 0.3s ease;
}
.btn-gradient-dark2 {
background-color: #2e2542;
background-image: linear-gradient(45deg, #5e4589 0%, #b532ac 100%);
color: white;
padding: 8px 32px;
border: none;
cursor: pointer;
transition: background-image 0.3s ease;
}
.btn-gradient-dark:hover {
background-image: linear-gradient(45deg, #3e2e5d 0%, #487d76 100%);
background-image: linear-gradient(45deg, #3e2e5d 0%, #9a2a93 100%);
}
.text-gradient-dark {
background-color: #5e4589;
background-image: linear-gradient(45deg, #5e4589 0%, #5fa69b 25%, #5e4589 100%);
background-image: linear-gradient(45deg, #5e4589 0%, #b532ac 25%, #5e4589 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
text-fill-color: transparent;
}
.text-purple-lt {
background-color: #cf5af8;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
text-fill-color: transparent;
}
.text-gradient {
background-color: #704fa8;
background-image: linear-gradient(45deg, #703bca 0%, #d33bc9 25%, #703bca 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
text-fill-color: transparent;
}
.bg-gradient-dark {
background-color: #704fa8;
background-image: radial-gradient(circle, #302b4b 0%, #211d34 100%);
}
.btn-gradient-lt {
background-color: #7c65a9;
background-image: linear-gradient(45deg, #7c65a9 0%, #96d4ca 100%);
@ -180,7 +213,7 @@
line-height: 1.2; /* Equivalent to leading-normal */
font-size: 2.25rem; /* Default for text-4xl */
background-color: #5e4589;
background-image: linear-gradient(45deg, #5e4589 0%, #5fa69b 25%, #5e4589 100%);
background-image: linear-gradient(45deg, #703bca 0%, #d33bc9 25%, #703bca 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
@ -201,7 +234,7 @@
line-height: 1.2; /* Equivalent to leading-normal */
font-size: 1.25rem; /* Equivalent to text-xl */
background-color: #5e4589;
background-image: linear-gradient(45deg, #5e4589 0%, #5fa69b 25%, #5e4589 100%);
background-image: linear-gradient(45deg, #703bca 0%, #d33bc9 25%, #703bca 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
@ -232,3 +265,22 @@
}
}
/* H2,H3 Section texts */
.section-text-ct {
font-size: 1rem; /* matches 'text-lg', adjust to match 'lg:text-xl' for responsive design */
letter-spacing: -0.015em; /* matches 'tracking-tight' */
line-height: 1.5rem; /* matches 'leading-tight' */
color: #525763;
text-align: center;
}
@media (min-width: 1024px) {
.section-text-ct {
font-size: 1.25rem; /* matches 'lg:text-xl' for large screens */
line-height: 1.85rem; /* matches 'leading-tight' */
text-align: center;
}
}