Files
Newbie_CRM/login.html
T

25 lines
32 KiB
HTML

<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/app/layout.css?v=1782480248065" data-precedence="next_static/css/app/layout.css"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack.js?v=1782480248065"/><script src="/_next/static/chunks/main-app.js?v=1782480248065" async=""></script><script src="/_next/static/chunks/app-pages-internals.js" async=""></script><script src="/_next/static/chunks/app/not-found.js" async=""></script><script src="/_next/static/chunks/app/layout.js" async=""></script><script src="/_next/static/chunks/app/login/page.js" async=""></script><title>CRM</title><meta name="description" content="Customer Relationship Management System"/><link rel="icon" href="/logo/CompanyMiniLogo.png"/><script src="/_next/static/chunks/polyfills.js" noModule=""></script></head><body class="__variable_f367f3 min-h-screen antialiased"><script>((e, i, s, u, m, a, l, h)=>{
let d = document.documentElement, w = [
"light",
"dark"
];
function p(n) {
(Array.isArray(e) ? e : [
e
]).forEach((y)=>{
let k = y === "class", S = k && a ? m.map((f)=>a[f] || f) : m;
k ? (d.classList.remove(...S), d.classList.add(a && a[n] ? a[n] : n)) : d.setAttribute(y, n);
}), R(n);
}
function R(n) {
h && w.includes(n) && (d.style.colorScheme = n);
}
function c() {
return window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light";
}
if (u) p(u);
else try {
let n = localStorage.getItem(i) || s, y = l && n === "system" ? c() : n;
p(y);
} catch (n) {}
})("class","theme","dark",null,["light","dark","system","ocean","forest","sunset","midnight"],null,true,true)</script><div class="flex min-h-screen bg-[#0a0a0f]"><div class="left-panel flex flex-1 flex-col p-12"><div class="relative z-10 px-4"><h1 class="text-3xl font-extrabold text-[#e8e8ef] tracking-[-0.6px]">Black Cipher</h1></div><div class="relative z-10 flex-1 flex items-center justify-center"><div class="text-center"><h1 class="text-[34px] font-extrabold text-[#e8e8ef] leading-tight tracking-[-0.6px]">Your Agency&#x27;s<!-- --> <span class="growth-word">Growth</span> <!-- -->Starts Here</h1><p class="mt-4 text-[13px] leading-[1.7] max-w-[360px] mx-auto body-text">Manage leads, track conversions, and grow your web development business with our CRM.</p><div class="stats-row"><div class="stat"><div class="stat-number">0</div><div class="stat-label">leads tracked</div></div><div class="stat"><div class="stat-number">0<!-- -->%</div><div class="stat-label">conversion lift</div></div><div class="stat"><div class="stat-number">0</div><div class="stat-label">active users</div></div></div></div></div><div class="relative z-10 testimonial" style="background:rgba(255,255,255,0.7);padding:16px 20px 16px 16px;clip-path:url(#testimonialClip)"><svg width="0" height="0" style="position:absolute"><defs><clipPath id="testimonialClip" clipPathUnits="objectBoundingBox"><path d="M0,0 L0.92,0 C0.96,0 1,0.03 1,0.08 C1,0.14 0.97,0.22 0.9,0.3 C0.85,0.36 0.83,0.42 0.83,0.5 C0.83,0.58 0.85,0.64 0.9,0.7 C0.97,0.78 1,0.86 1,0.92 C1,0.97 0.96,1 0.92,1 L0,1 Z"></path></clipPath></defs></svg><div class="transition-opacity duration-500"><p class="text-sm font-semibold leading-relaxed" style="color:#0a0a0f"><!-- -->This CRM transformed how we manage our sales pipeline. We&#x27;ve seen a 40% increase in lead conversion.<!-- --></p><p class="text-xs font-bold mt-2" style="color:#0a0a0f">Marcus Johnson, Sales Lead at Black Cipher</p></div><div class="flex items-center justify-center gap-1.5 mt-3"><button type="button" class="h-1.5 rounded-full transition-all duration-300 w-5 bg-[#1BB0CE]"></button><button type="button" class="h-1.5 rounded-full transition-all duration-300 w-1.5 bg-[#1BB0CE]/30"></button></div></div><canvas class="wave-canvas"></canvas></div><div class="panel-divider"></div><div class="right-panel flex items-center justify-center p-10"><canvas class="stars-canvas"></canvas><div class="accent-line"></div><div class="w-full" style="max-width:340px"><h2 class="text-[24px] font-bold text-[#e8e8ef] tracking-[-0.3px] mb-[5px]">Welcome back</h2><p class="text-[13px] mb-[26px] subheading-text">Sign in to your account to continue</p><form class="space-y-5"><div><label for="email" class="login-label">Email</label><div class="input-sheen"><input id="email" type="email" placeholder="name@company.com" required="" autoComplete="email" class="login-input" value=""/></div></div><div><div class="flex items-center justify-between mb-[6px]"><label for="password" class="login-label" style="margin-bottom:0">Password</label><button type="button" class="text-[12px] text-[#1BB0CE] hover:underline">Forgot password?</button></div><div class="input-sheen input-sheen-delayed"><div class="relative"><input id="password" type="password" placeholder="Enter your password" required="" autoComplete="current-password" class="login-input" value=""/><button type="button" class="password-toggle"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-eye h-4 w-4"><path d="M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0"></path><circle cx="12" cy="12" r="3"></circle></svg></button></div></div></div><label class="flex items-center gap-2 cursor-pointer"><input type="checkbox" class="login-checkbox"/><span class="text-[13px] checkbox-text">Remember me</span></label><button type="submit" class="auth-btn">Sign in</button></form><p class="text-center text-[11px] mt-4 footer-text">By signing in, you agree to our<!-- --> <button type="button" class="text-[#1BB0CE] hover:underline">Terms of Service</button> <!-- -->and<!-- --> <button type="button" class="text-[#1BB0CE] hover:underline">Privacy Policy</button></p></div></div></div><section aria-label="Notifications alt+T" tabindex="-1" aria-live="polite" aria-relevant="additions text" aria-atomic="false"></section><script src="/_next/static/chunks/webpack.js?v=1782480248065" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"4:\"$Sreact.fragment\"\n6:I[\"(app-pages-browser)/./node_modules/next/dist/client/components/layout-router.js\",[\"app-pages-internals\",\"static/chunks/app-pages-internals.js\"],\"\"]\n7:I[\"(app-pages-browser)/./node_modules/next/dist/client/components/render-from-template-context.js\",[\"app-pages-internals\",\"static/chunks/app-pages-internals.js\"],\"\"]\n8:I[\"(app-pages-browser)/./src/app/not-found.tsx\",[\"app/not-found\",\"static/chunks/app/not-found.js\"],\"default\"]\na:I[\"(app-pages-browser)/./src/providers/theme-provider.tsx\",[\"app/layout\",\"static/chunks/app/layout.js\"],\"ThemeProvider\"]\nb:I[\"(app-pages-browser)/./src/providers/website-theme-provider.tsx\",[\"app/layout\",\"static/chunks/app/layout.js\"],\"WebsiteThemeProvider\"]\nc:I[\"(app-pages-browser)/./src/components/ui/sonner.tsx\",[\"app/layout\",\"static/chunks/app/layout.js\"],\"Toaster\"]\nf:I[\"(app-pages-browser)/./node_modules/next/dist/client/components/client-page.js\",[\"app-pages-internals\",\"static/chunks/app-pages-internals.js\"],\"ClientPageRoot\"]\n10:I[\"(app-pages-browser)/./src/app/login/page.tsx\",[\"app/login/page\",\"static/chunks/app/login/page.js\"],\"default\"]\n11:I[\"(app-pages-browser)/./node_modules/next/dist/lib/metadata/metadata-boundary.js\",[\"app-pages-internals\",\"static/chunks/app-pages-internals.js\"],\"OutletBoundary\"]\n15:I[\"(app-pages-browser)/./node_modules/next/dist/client/components/error-boundary.js\",[\"app-pages-internals\",\"static/chunks/app-pages-internals.js\"],\"\"]\n16:I[\"(app-pages-browser)/./node_modules/next/dist/client/components/client-segment.js\",[\"app-pages-internals\",\"static/chunks/app-pages-internals.js\"],\"ClientSegmentRoot\"]\n17:I[\"(app-pages-browser)/./node_modules/next/dist/lib/metadata/metadata-boundary.js\",[\"app-pages-internals\",\"static/chunks/app-pages-internals.js\"],\"MetadataBoundary\"]\n18:I[\"(app-pages-browser)/./node_modules/next/dist/client/components/not-found-boundary.js\",[\"app-pages-internals\",\"static/chunks/app-pages-internals.js\"],\"NotFoundBoundary\"]\n19:I[\"(app-pages-browser)/./node_modules/next/dist/lib/metadata/metadata-boundary.js\",[\"app-pages-int"])</script><script>self.__next_f.push([1,"ernals\",\"static/chunks/app-pages-internals.js\"],\"ViewportBoundary\"]\n3:HL[\"/_next/static/css/app/layout.css?v=1782480248065\",\"style\"]\n2:{\"name\":\"Preloads\",\"env\":\"Server\",\"key\":null,\"owner\":null,\"props\":{\"preloadCallbacks\":[\"$E(()=\u003e{ctx.componentMod.preloadStyle(fullHref,ctx.renderOpts.crossOrigin,ctx.nonce)})\"]}}\n1:D\"$2\"\n1:null\n9:{\"name\":\"RootLayout\",\"env\":\"Server\",\"key\":null,\"owner\":null,\"props\":{\"children\":[\"$\",\"$L6\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$4\",null,{\"children\":[\"$\",\"$L7\",null,{},null]},null],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[\"$\",\"$L8\",null,{},null],\"notFoundStyles\":\"$Y\"},null],\"params\":\"$Y\"}}\n5:D\"$9\"\n5:[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"body\",null,{\"className\":\"__variable_f367f3 min-h-screen antialiased\",\"children\":[\"$\",\"$La\",null,{\"attribute\":\"class\",\"defaultTheme\":\"dark\",\"disableTransitionOnChange\":true,\"children\":[\"$\",\"$Lb\",null,{\"children\":[[\"$\",\"$L6\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L7\",null,{},null],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[\"$\",\"$L8\",null,{},null],\"notFoundStyles\":[]},null],[\"$\",\"$Lc\",null,{},\"$9\"]]},\"$9\"]},\"$9\"]},\"$9\"]},\"$9\"]\ne:{\"name\":\"LoginLayout\",\"env\":\"Server\",\"key\":null,\"owner\":null,\"props\":{\"children\":[\"$\",\"$L6\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"login\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$4\",null,{\"children\":[\"$\",\"$L7\",null,{},null]},null],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\"},null],\"params\":\"$@\"}}\nd:D\"$e\"\nd:[\"$\",\"$L6\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"login\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefi"])</script><script>self.__next_f.push([1,"ned\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L7\",null,{},null],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\"},null]\n13:{\"name\":\"__next_outlet_boundary__\",\"env\":\"Server\",\"key\":null,\"owner\":null,\"props\":{\"ready\":\"$E(async function getMetadataAndViewportReady() {\\n await viewport();\\n await metadata();\\n return undefined;\\n })\"}}\n12:D\"$13\"\n"])</script><script>self.__next_f.push([1,"1a:{\"name\":\"NonIndex\",\"env\":\"Server\",\"key\":null,\"owner\":null,\"props\":{\"ctx\":{\"componentMod\":{\"GlobalError\":\"$15\",\"__next_app__\":{\"require\":\"$E(function __webpack_require__(moduleId) {\\n/******/ \\t\\t// Check if module is in cache\\n/******/ \\t\\tvar cachedModule = __webpack_module_cache__[moduleId];\\n/******/ \\t\\tif (cachedModule !== undefined) {\\n/******/ \\t\\t\\treturn cachedModule.exports;\\n/******/ \\t\\t}\\n/******/ \\t\\t// Create a new module (and put it into the cache)\\n/******/ \\t\\tvar module = __webpack_module_cache__[moduleId] = {\\n/******/ \\t\\t\\tid: moduleId,\\n/******/ \\t\\t\\tloaded: false,\\n/******/ \\t\\t\\texports: {}\\n/******/ \\t\\t};\\n/******/ \\t\\n/******/ \\t\\t// Execute the module function\\n/******/ \\t\\tvar threw = true;\\n/******/ \\t\\ttry {\\n/******/ \\t\\t\\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\\n/******/ \\t\\t\\tthrew = false;\\n/******/ \\t\\t} finally {\\n/******/ \\t\\t\\tif(threw) delete __webpack_module_cache__[moduleId];\\n/******/ \\t\\t}\\n/******/ \\t\\n/******/ \\t\\t// Flag the module as loaded\\n/******/ \\t\\tmodule.loaded = true;\\n/******/ \\t\\n/******/ \\t\\t// Return the exports of the module\\n/******/ \\t\\treturn module.exports;\\n/******/ \\t})\",\"loadChunk\":\"$E(() =\u003e Promise.resolve())\"},\"pages\":[\"E:\\\\Coastal IT\\\\CRM_ENVR\\\\Web App\\\\src\\\\app\\\\login\\\\page.tsx\"],\"routeModule\":{\"userland\":{\"loaderTree\":[\"\",{\"children\":\"$Y\"},\"$Y\"]},\"definition\":\"$Y\"},\"tree\":\"$Y\",\"ClientPageRoot\":\"$f\",\"ClientSegmentRoot\":\"$16\",\"LayoutRouter\":\"$6\",\"MetadataBoundary\":\"$17\",\"NotFoundBoundary\":\"$18\",\"OutletBoundary\":\"$11\",\"Postpone\":\"$E(function Postpone({ reason, route }) {\\n const prerenderStore = _workunitasyncstorageexternal.workUnitAsyncStorage.getStore();\\n const dynamicTracking = prerenderStore \u0026\u0026 prerenderStore.type === 'prerender-ppr' ? prerenderStore.dynamicTracking : null;\\n postponeWithTracking(route, reason, dynamicTracking);\\n})\",\"RenderFromTemplateContext\":\"$7\",\"ViewportBoundary\":\"$19\",\"actionAsyncStorage\":\"$Y\",\"collectSegmentData\":\"$E(async function collectSegmentData(fullPageDataBuffer, staleTime, clientModules, serverConsumerManifest) {\\n // Traverse the router tree and generate a prefetch response for each segment.\\n // A mutable map to collect the results as we traverse the route tree.\\n const resultMap = new Map();\\n // Before we start, warm up the module cache by decoding the page data once.\\n // Then we can assume that any remaining async tasks that occur the next time\\n // are due to hanging promises caused by dynamic data access. Note we only\\n // have to do this once per page, not per individual segment.\\n //\\n try {\\n await (0, _clientedge.createFromReadableStream)((0, _nodewebstreamshelper.streamFromBuffer)(fullPageDataBuffer), {\\n serverConsumerManifest\\n });\\n await (0, _scheduler.waitAtLeastOneReactRenderTask)();\\n } catch {}\\n // Generate a stream for the route tree prefetch. While we're walking the\\n // tree, we'll also spawn additional tasks to generate the segment prefetches.\\n // The promises for these tasks are pushed to a mutable array that we will\\n // await once the route tree is fully rendered.\\n const segmentTasks = [];\\n const treeStream = await (0, _serveredge.renderToReadableStream)(// RootTreePrefetch is not a valid return type for a React component, but\\n // we need to use a component so that when we decode the original stream\\n // inside of it, the side effects are transferred to the new stream.\\n // @ts-expect-error\\n /*#__PURE__*/ (0, _jsxruntime.jsx)(PrefetchTreeData, {\\n fullPageDataBuffer: fullPageDataBuffer,\\n serverConsumerManifest: serverConsumerManifest,\\n clientModules: clientModules,\\n staleTime: staleTime,\\n segmentTasks: segmentTasks\\n }), clientModules, {\\n // Unlike when rendering the segment streams, we do not pass an abort\\n // controller here. There's nothing dynamic in the prefetch metadata; we\\n // will always render the result. We do still have to account for hanging\\n // promises, but we use a different strategy. See PrefetchTreeData.\\n onError () {\\n // Ignore any errors. These would have already been reported when\\n // we created the full page data.\\n }\\n });\\n // Write the route tree to a special `/_tree` segment.\\n const treeBuffer = await (0, _nodewebstreamshelper.streamToBuffer)(treeStream);\\n resultMap.set('/_tree', treeBuffer);\\n // Now that we've finished rendering the route tree, all the segment tasks\\n // should have been spawned. Await them in parallel and write the segment\\n // prefetches to the result map.\\n for (const [segmentPath, buffer] of (await Promise.all(segmentTasks))){\\n resultMap.set(segmentPath, buffer);\\n }\\n return resultMap;\\n})\",\"createMetadataComponents\":\"$E(function createMetadataComponents({ tree, searchParams, metadataContext, getDynamicParamFromSegment, appUsingSizeAdjustment, errorType, createServerParamsForMetadata, workStore, MetadataBoundary, ViewportBoundary }) {\\n function MetadataRoot() {\\n return /*#__PURE__*/ (0, _jsxruntime.jsxs)(_jsxruntime.Fragment, {\\n children: [\\n /*#__PURE__*/ (0, _jsxruntime.jsx)(MetadataBoundary, {\\n children: /*#__PURE__*/ (0, _jsxruntime.jsx)(Metadata, {})\\n }),\\n /*#__PURE__*/ (0, _jsxruntime.jsx)(ViewportBoundary, {\\n children: /*#__PURE__*/ (0, _jsxruntime.jsx)(Viewport, {})\\n }),\\n appUsingSizeAdjustment ? /*#__PURE__*/ (0, _jsxruntime.jsx)(\\\"meta\\\", {\\n name: \\\"next-size-adjust\\\"\\n }) : null\\n ]\\n });\\n }\\n async function viewport() {\\n return getResolvedViewport(tree, searchParams, getDynamicParamFromSegment, createServerParamsForMetadata, workStore, errorType);\\n }\\n async function Viewport() {\\n try {\\n return await viewport();\\n } catch (error) {\\n if (!errorType \u0026\u0026 (0, _notfound.isNotFoundError)(error)) {\\n try {\\n return await getNotFoundViewport(tree, searchParams, getDynamicParamFromSegment, createServerParamsForMetadata, workStore);\\n } catch {}\\n }\\n // We don't actually want to error in this component. We will\\n // also error in the MetadataOutlet which causes the error to\\n // bubble from the right position in the page to be caught by the\\n // appropriate boundaries\\n return null;\\n }\\n }\\n Viewport.displayName = _metadataconstants.VIEWPORT_BOUNDARY_NAME;\\n async function metadata() {\\n return getResolvedMetadata(tree, searchParams, getDynamicParamFromSegment, metadataContext, createServerParamsForMetadata, workStore, errorType);\\n }\\n async function Metadata() {\\n try {\\n return await metadata();\\n } catch (error) {\\n if (!errorType \u0026\u0026 (0, _notfound.isNotFoundError)(error)) {\\n try {\\n return await getNotFoundMetadata(tree, searchParams, getDynamicParamFromSegment, metadataContext, createServerParamsForMetadata, workStore);\\n } catch {}\\n }\\n // We don't actually want to error in this component. We will\\n // also error in the MetadataOutlet which causes the error to\\n // bubble from the right position in the page to be caught by the\\n // appropriate boundaries\\n return null;\\n }\\n }\\n Metadata.displayName = _metadataconstants.METADATA_BOUNDARY_NAME;\\n async function getMetadataAndViewportReady() {\\n await viewport();\\n await metadata();\\n return undefined;\\n }\\n return [\\n MetadataRoot,\\n getMetadataAndViewportReady\\n ];\\n})\",\"createPrerenderParamsForClientSegment\":\"$E(function createPrerenderParamsForClientSegment(underlyingParams, workStore) {\\n const prerenderStore = _workunitasyncstorageexternal.workUnitAsyncStorage.getStore();\\n if (prerenderStore \u0026\u0026 prerenderStore.type === 'prerender') {\\n const fallbackParams = workStore.fallbackRouteParams;\\n if (fallbackParams) {\\n for(let key in underlyingParams){\\n if (fallbackParams.has(key)) {\\n // This params object has one of more fallback params so we need to consider\\n // the awaiting of this params object \\\"dynamic\\\". Since we are in dynamicIO mode\\n // we encode this as a promise that never resolves\\n return (0, _dynamicrenderingutils.makeHangingPromise)(prerenderStore.renderSignal, '`params`');\\n }\\n }\\n }\\n }\\n // We're prerendering in a mode that does not abort. We resolve the promise without\\n // any tracking because we're just transporting a value from server to client where the tracking\\n // will be applied.\\n return Promise.resolve(underlyingParams);\\n})\",\"createPrerenderSearchParamsForClientPage\":\"$E(function createPrerenderSearchParamsForClientPage(workStore) {\\n if (workStore.forceStatic) {\\n // When using forceStatic we override all other logic and always just return an empty\\n // dictionary object.\\n return Promise.resolve({});\\n }\\n const prerenderStore = _workunitasyncstorageexternal.workUnitAsyncStorage.getStore();\\n if (prerenderStore \u0026\u0026 prerenderStore.type === 'prerender') {\\n // dynamicIO Prerender\\n // We're prerendering in a mode that aborts (dynamicIO) and should stall\\n // the promise to ensure the RSC side is considered dynamic\\n return (0, _dynamicrenderingutils.makeHangingPromise)(prerenderStore.renderSignal, '`searchParams`');\\n }\\n // We're prerendering in a mode that does not aborts. We resolve the promise without\\n // any tracking because we're just transporting a value from server to client where the tracking\\n // will be applied.\\n return Promise.resolve({});\\n})\",\"createServerParamsForMetadata\":\"$E(function createServerParamsForServerSegment(underlyingParams, workStore) {\\n const workUnitStore = _workunitasyncstorageexternal.workUnitAsyncStorage.getStore();\\n if (workUnitStore) {\\n switch(workUnitStore.type){\\n case 'prerender':\\n case 'prerender-ppr':\\n case 'prerender-legacy':\\n return createPrerenderParams(underlyingParams, workStore, workUnitStore);\\n default:\\n }\\n }\\n return createRenderParams(underlyingParams, workStore);\\n})\",\"createServerParamsForServerSegment\":\"$E(function createServerParamsForServerSegment(underlyingParams, workStore) {\\n const workUnitStore = _workunitasyncstorageexternal.workUnitAsyncStorage.getStore();\\n if (workUnitStore) {\\n switch(workUnitStore.type){\\n case 'prerender':\\n case 'prerender-ppr':\\n case 'prerender-legacy':\\n return createPrerenderParams(underlyingParams, workStore, workUnitStore);\\n default:\\n }\\n }\\n return createRenderParams(underlyingParams, workStore);\\n})\",\"createServerSearchParamsForMetadata\":\"$E(function createServerSearchParamsForServerPage(underlyingSearchParams, workStore) {\\n const workUnitStore = _workunitasyncstorageexternal.workUnitAsyncStorage.getStore();\\n if (workUnitStore) {\\n switch(workUnitStore.type){\\n case 'prerender':\\n case 'prerender-ppr':\\n case 'prerender-legacy':\\n return createPrerenderSearchParams(workStore, workUnitStore);\\n default:\\n }\\n }\\n return createRenderSearchParams(underlyingSearchParams, workStore);\\n})\",\"createServerSearchParamsForServerPage\":\"$E(function createServerSearchParamsForServerPage(underlyingSearchParams, workStore) {\\n const workUnitStore = _workunitasyncstorageexternal.workUnitAsyncStorage.getStore();\\n if (workUnitStore) {\\n switch(workUnitStore.type){\\n case 'prerender':\\n case 'prerender-ppr':\\n case 'prerender-legacy':\\n return createPrerenderSearchParams(workStore, workUnitStore);\\n default:\\n }\\n }\\n return createRenderSearchParams(underlyingSearchParams, workStore);\\n})\",\"createTemporaryReferenceSet\":\"$E(function(){return new WeakMap})\",\"decodeAction\":\"$E(function(body,serverManifest){var formData=new FormData,action=null;return body.forEach(function(value1,key){key.startsWith(\\\"$ACTION_\\\")?key.startsWith(\\\"$ACTION_REF_\\\")?(value1=decodeBoundActionMetaData(body,serverManifest,value1=\\\"$ACTION_\\\"+key.slice(12)+\\\":\\\"),action=loadServerReference(serverManifest,value1.id,value1.bound)):key.startsWith(\\\"$ACTION_ID_\\\")\u0026\u0026(action=loadServerReference(serverManifest,value1=key.slice(11),null)):formData.append(key,value1)}),null===action?null:action.then(function(fn){return fn.bind(null,formData)})})\",\"decodeFormState\":\"$E(function(actionResult,body,serverManifest){var keyPath=body.get(\\\"$ACTION_KEY\\\");if(\\\"string\\\"!=typeof keyPath)return Promise.resolve(null);var metaData=null;if(body.forEach(function(value1,key){key.startsWith(\\\"$ACTION_REF_\\\")\u0026\u0026(metaData=decodeBoundActionMetaData(body,serverManifest,\\\"$ACTION_\\\"+key.slice(12)+\\\":\\\"))}),null===metaData)return Promise.resolve(null);var referenceId=metaData.id;return Promise.resolve(metaData.bound).then(function(bound){return null===bound?null:[actionResult,keyPath,referenceId,bound.length-1]})})\",\"decodeReply\":\"$E(function(body,webpackMap,options){if(\\\"string\\\"==typeof body){var form=new FormData;form.append(\\\"0\\\",body),body=form}return webpackMap=getChunk(body=createResponse(webpackMap,\\\"\\\",options?options.temporaryReferences:void 0,body),0),close(body),webpackMap})\",\"patchFetch\":\"$E(function patchFetch() {\\n return (0, _patchfetch.patchFetch)({\\n workAsyncStorage: _workasyncstorageexternal.workAsyncStorage,\\n workUnitAsyncStorage: _workunitasyncstorageexternal.workUnitAsyncStorage\\n });\\n})\",\"preconnect\":\"$E(function preconnect(href, crossOrigin, nonce) {\\n const opts = {};\\n if (typeof crossOrigin === 'string') {\\n opts.crossOrigin = crossOrigin;\\n }\\n if (typeof nonce === 'string') {\\n opts.nonce = nonce;\\n }\\n _reactdom.default.preconnect(href, opts);\\n})\",\"preloadFont\":\"$E(function preloadFont(href, type, crossOrigin, nonce) {\\n const opts = {\\n as: 'font',\\n type\\n };\\n if (typeof crossOrigin === 'string') {\\n opts.crossOrigin = crossOrigin;\\n }\\n if (typeof nonce === 'string') {\\n opts.nonce = nonce;\\n }\\n _reactdom.default.preload(href, opts);\\n})\",\"preloadStyle\":\"$E(function preloadStyle(href, crossOrigin, nonce) {\\n const opts = {\\n as: 'style'\\n };\\n if (typeof crossOrigin === 'string') {\\n opts.crossOrigin = crossOrigin;\\n }\\n if (typeof nonce === 'string') {\\n opts.nonce = nonce;\\n }\\n _reactdom.default.preload(href, opts);\\n})\",\"prerender\":\"$undefined\",\"renderToReadableStream\":\"$E(function(model,webpackMap,options){var request=new RequestInstance(20,model,webpackMap,options?options.onError:void 0,options?options.identifierPrefix:void 0,options?options.onPostpone:void 0,options?options.temporaryReferences:void 0,options?options.environmentName:void 0,options?options.filterStackFrame:void 0,noop,noop);if(options\u0026\u0026options.signal){var signal=options.signal;if(signal.aborted)abort(request,signal.reason);else{var listener=function(){abort(request,signal.reason),signal.removeEventListener(\\\"abort\\\",listener)};signal.addEventListener(\\\"abort\\\",listener)}}return new ReadableStream({type:\\\"bytes\\\",start:function(){request.flushScheduled=null!==request.destination,supportsRequestStorage?scheduleMicrotask(function(){requestStorage.run(request,performWork,request)}):scheduleMicrotask(function(){return performWork(request)}),setTimeoutOrImmediate(function(){request.status===OPENING\u0026\u0026(request.status=11)},0)},pull:function(controller){if(request.status===CLOSING)request.status=CLOSED,closeWithError(controller,request.fatalError);else if(request.status!==CLOSED\u0026\u0026null===request.destination){request.destination=controller;try{flushCompletedChunks(request,controller)}catch(error){logRecoverableError(request,error,null),fatalError(request,error)}}},cancel:function(reason){request.destination=null,abort(request,reason)}},{highWaterMark:0})})\",\"serverHooks\":\"$Y\",\"taintObjectReference\":\"$E(function notImplemented() {\\n throw new Error('Taint can only be used with the taint flag.');\\n})\",\"workAsyncStorage\":\"$Y\",\"workUnitAsyncStorage\":\"$Y\"},\"url\":\"$Y\",\"renderOpts\":\"$Y\",\"workStore\":\"$Y\",\"parsedRequestHeaders\":\"$Y\",\"getDynamicParamFromSegment\":\"$E(function(segment){let segmentParam=getSegmentParam(segment);if(!segmentParam)return null;let key=segmentParam.param,value1=params[key];if(fallbackRouteParams\u0026\u0026fallbackRouteParams.has(segmentParam.param)?value1=fallbackRouteParams.get(segmentParam.param):Array.isArray(value1)?value1=value1.map(i=\u003eencodeURIComponent(i)):\\\"string\\\"==typeof value1\u0026\u0026(value1=encodeURIComponent(value1)),!value1){let isCatchall=\\\"catchall\\\"===segmentParam.type,isOptionalCatchall=\\\"optional-catchall\\\"===segmentParam.type;if(isCatchall||isOptionalCatchall){let dynamicParamType=dynamicParamTypes[segmentParam.type];return isOptionalCatchall?{param:key,value:null,type:dynamicParamType,treeSegment:[key,\\\"\\\",dynamicParamType]}:{param:key,value:value1=pagePath.split(\\\"/\\\").slice(1).flatMap(pathSegment=\u003e{let param=function(param){let match=param.match(PARAMETER_PATTERN);return match?parseMatchedParameter(match[1]):parseMatchedParameter(param)}(pathSegment);return params[param.key]??param.key}),type:dynamicParamType,treeSegment:[key,value1.join(\\\"/\\\"),dynamicParamType]}}}let type=function(type){let short=dynamicParamTypes[type];if(!short)throw Error(\\\"Unknown dynamic param type\\\");return short}(segmentParam.type);return{param:key,value:value1,treeSegment:[key,Array.isArray(value1)?value1.join(\\\"/\\\"):value1,type],type:type}})\",\"query\":\"$0:f:0:1:2:children:2:children:1:props:children:0:props:searchParams\",\"isPrefetch\":false,\"isAction\":false,\"requestTimestamp\":1782480248065,\"appUsingSizeAdjustment\":false,\"flightRouterState\":\"$undefined\",\"requestId\":\"1UskcsuNWThYUjhCon6e0\",\"pagePath\":\"/login\",\"clientReferenceManifest\":\"$Y\",\"assetPrefix\":\"\",\"isNotFoundPath\":false,\"nonce\":\"$undefined\",\"res\":\"$Y\"}}}\n"])</script><script>self.__next_f.push([1,"14:D\"$1a\"\n14:null\n1c:{\"name\":\"MetadataRoot\",\"env\":\"Server\",\"key\":\"1UskcsuNWThYUjhCon6e0\",\"owner\":null,\"props\":{}}\n1b:D\"$1c\"\n1e:{\"name\":\"__next_metadata_boundary__\",\"env\":\"Server\",\"key\":null,\"owner\":\"$1c\",\"props\":{}}\n1d:D\"$1e\"\n20:{\"name\":\"__next_viewport_boundary__\",\"env\":\"Server\",\"key\":null,\"owner\":\"$1c\",\"props\":{}}\n1f:D\"$20\"\n1b:[\"$\",\"$4\",\"1UskcsuNWThYUjhCon6e0\",{\"children\":[[\"$\",\"$L17\",null,{\"children\":\"$L1d\"},\"$1c\"],[\"$\",\"$L19\",null,{\"children\":\"$L1f\"},\"$1c\"],null]},null]\n21:[]\n0:{\"P\":\"$1\",\"b\":\"development\",\"p\":\"\",\"c\":[\"\",\"login\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"login\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$4\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/app/layout.css?v=1782480248065\",\"precedence\":\"next_static/css/app/layout.css\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"},null]],\"$5\"]},null],{\"children\":[\"login\",[\"$\",\"$4\",\"c\",{\"children\":[null,\"$d\"]},null],{\"children\":[\"__PAGE__\",[\"$\",\"$4\",\"c\",{\"children\":[[\"$\",\"$Lf\",null,{\"Component\":\"$10\",\"searchParams\":{},\"params\":{}},null],null,[\"$\",\"$L11\",null,{\"children\":\"$L12\"},null]]},null],{},null]},null]},null],[\"$\",\"$4\",\"h\",{\"children\":[\"$14\",\"$1b\"]},null]]],\"m\":\"$W21\",\"G\":[\"$15\",\"$undefined\"],\"s\":false,\"S\":false}\n1f:[[\"$\",\"meta\",\"0\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"},\"$13\"]]\n1d:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"},\"$1e\"],[\"$\",\"title\",\"1\",{\"children\":\"CRM\"},\"$1e\"],[\"$\",\"meta\",\"2\",{\"name\":\"description\",\"content\":\"Customer Relationship Management System\"},\"$1e\"],[\"$\",\"link\",\"3\",{\"rel\":\"icon\",\"href\":\"/logo/CompanyMiniLogo.png\"},\"$1e\"]]\n12:null\n"])</script></body></html>