PageSourceSearch

https://www.slate360.ai/_next/static/chunks/10956-4b27136498209df4.js

js slate360.ai collected 2026-10-05 15:05:15 UTC 16,618 bytes, 1 lines download raw bytes

1!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},a=(new e.Error).stack;a&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[a]="24f1c25d-7023-4363-8b2b-f0cae5a91ff4",e._sentryDebugIdIdentifier="sentry-dbid-24f1c25d-7023-4363-8b2b-f0cae5a91ff4")}catch(e){}}();"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[10956],{5121:(e,a,t)=>{t.d(a,{A:()=>o});var r=t(12115);let l=function(){for(var e=arguments.length,a=Array(e),t=0;t<e;t++)a[t]=arguments[t];return a.filter((e,a,t)=>!!e&&""!==e.trim()&&t.indexOf(e)===a).join(" ").trim()},s=e=>{let a=e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,a,t)=>t?t.toUpperCase():a.toLowerCase());return a.charAt(0).toUpperCase()+a.slice(1)};var n={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let i=(0,r.forwardRef)((e,a)=>{let{color:t="currentColor",size:s=24,strokeWidth:i=2,absoluteStrokeWidth:o,className:d="",children:c,iconNode:p,...m}=e;return(0,r.createElement)("svg",{ref:a,...n,width:s,height:s,stroke:t,strokeWidth:o?24*Number(i)/Number(s):i,className:l("lucide",d),...!c&&!(e=>{for(let a in e)if(a.startsWith("aria-")||"role"===a||"title"===a)return!0;return!1})(m)&&{"aria-hidden":"true"},...m},[...p.map(e=>{let[a,t]=e;return(0,r.createElement)(a,t)}),...Array.isArray(c)?c:[c]])}),o=(e,a)=>{let t=(0,r.forwardRef)((t,n)=>{let{className:o,...d}=t;return(0,r.createElement)(i,{ref:n,iconNode:a,className:l("lucide-".concat(s(e).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()),"lucide-".concat(e),o),...d})});return t.displayName=s(e),t}},6191:(e,a,t)=>{t.d(a,{A:()=>r});let r=(0,t(5121).A)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]])},7334:(e,a,t)=>{t.d(a,{MobileProjectCreateWizard:()=>N});var r=t(95155),l=t(20063),s=t(12115),n=t(59847),i=t(73181),o=t(25016);let d={page:"flex min-h-0 flex-1 flex-col bg-[var(--graphite-canvas)] text-[var(--graphite-text-body)]",scrollBody:"min-h-0 flex-1 overflow-y-auto overscroll-contain px-4 pb-28 pt-4",sectionLabel:"font-mono text-[11px] font-semibold uppercase tracking-[0.12em] text-[var(--graphite-muted)]",glassCard:"rounded-2xl border border-[var(--mobile-app-card-border)] bg-[color-mix(in_srgb,var(--graphite-canvas)_76%,transparent)] p-4 backdrop-blur-md",fieldInput:"w-full bg-transparent text-[var(--graphite-text-body)] placeholder:text-[var(--graphite-muted)] outline-none",fieldTitle:"text-xl font-semibold text-[var(--graphite-text-header)]",primaryButton:"w-full rounded-2xl bg-[var(--mobile-field-primary-bg)] py-3.5 font-medium text-[var(--mobile-field-primary-fg)] transition active:brightness-[0.92] disabled:opacity-40",primaryButtonLg:"w-full rounded-2xl bg-[var(--mobile-field-primary-bg)] py-4 text-lg font-semibold text-[var(--mobile-field-primary-fg)] transition active:brightness-[0.92] disabled:opacity-60",errorBanner:"rounded-xl border border-red-500/30 bg-red-950/30 px-4 py-2.5 text-sm text-red-400"};function c(e){let{children:a,className:t}=e;return(0,r.jsx)("div",{className:(0,o.cn)(d.glassCard,t),children:a})}function p(e){let{form:a,isSubmitting:t,onSubmit:l}=e;return(0,r.jsxs)("div",{className:"mx-auto max-w-2xl space-y-4",children:[(0,r.jsx)("div",{className:d.sectionLabel,children:"Confirm & preview"}),(0,r.jsxs)(c,{children:[(0,r.jsx)("div",{className:"font-semibold text-[var(--graphite-text-header)]",children:a.name}),a.projectType?(0,r.jsx)("div",{className:"mt-0.5 text-xs font-medium text-[var(--graphite-primary)]",children:a.projectType}):null,(0,r.jsxs)("dl",{className:"mt-3 mb-4 space-y-1.5 text-sm",children:[a.client?(0,r.jsx)(m,{label:"Client",value:a.client}):null,a.address?(0,r.jsx)(m,{label:"Site",value:a.address}):null,a.startDate?(0,r.jsx)(m,{label:"Start",value:a.startDate}):null,a.targetDate?(0,r.jsx)(m,{label:"Target",value:a.targetDate}):null,a.squareFootage?(0,r.jsx)(m,{label:"Size",value:"".concat(a.squareFootage," sq ft")}):null]}),a.scope?(0,r.jsx)("p",{className:"mb-4 text-sm text-[var(--graphite-text-body)]",children:a.scope}):null,(0,r.jsx)("div",{className:"mb-2 ".concat(d.sectionLabel),children:"Folders that will be created"}),(0,r.jsx)("div",{className:"space-y-1 pl-1 text-sm",children:i.bA.map(e=>(0,r.jsxs)("div",{className:"flex items-center gap-2 text-[var(--graphite-muted)]",children:[(0,r.jsx)(n.A,{className:"h-4 w-4 shrink-0","aria-hidden":!0}),e.label]},e.id))})]}),(0,r.jsx)("button",{type:"button",onClick:l,disabled:t||!a.name.trim(),className:d.primaryButtonLg,children:t?"Creating project…":"Create project"})]})}function m(e){let{label:a,value:t}=e;return(0,r.jsxs)("div",{className:"flex justify-between gap-3",children:[(0,r.jsx)("dt",{className:"text-[var(--graphite-muted)]",children:a}),(0,r.jsx)("dd",{className:"text-right text-[var(--graphite-text-body)]",children:t})]})}var u=t(90791);let h="mb-1 block text-[11px] font-semibold uppercase tracking-[0.1em] text-[var(--graphite-muted)]",x="w-full rounded-xl border border-[var(--mobile-app-card-border)] bg-[color-mix(in_srgb,var(--graphite-canvas)_60%,transparent)] px-3 py-2.5 text-sm text-[var(--graphite-text-body)] placeholder:text-[var(--graphite-muted)] outline-none focus:border-[color-mix(in_srgb,var(--graphite-primary)_45%,transparent)]";function f(e){let{form:a,onChange:t,onContinue:l}=e;return(0,r.jsxs)("div",{className:"mx-auto max-w-2xl space-y-4 lg:max-w-3xl",children:[(0,r.jsx)("div",{children:(0,r.jsxs)(c,{className:"space-y-3",children:[(0,r.jsx)("input",{className:"".concat(d.fieldInput," ").concat(d.fieldTitle),placeholder:"Project name",value:a.name,onChange:e=>t("name",e.target.value),autoFocus:!0}),(0,r.jsxs)("div",{children:[(0,r.jsx)("label",{className:h,children:"Project type"}
1),(0,r.jsxs)("select",{className:x,value:a.projectType,onChange:e=>t("projectType",e.target.value),children:[(0,r.jsx)("option",{value:"",children:"Select type…"}),i.gi.map(e=>(0,r.jsx)("option",{value:e,children:e},e))]})]}),(0,r.jsxs)("div",{children:[(0,r.jsx)("label",{className:h,children:"Scope / description"}),(0,r.jsx)("textarea",{className:"".concat(x," min-h-[80px] resize-y"),placeholder:"What's being built or inspected, and why.",value:a.scope,onChange:e=>t("scope",e.target.value)})]})]})}),(0,r.jsx)("div",{children:(0,r.jsxs)(c,{className:"space-y-3",children:[(0,r.jsxs)("div",{children:[(0,r.jsx)("label",{className:h,children:"Client / owner"}),(0,r.jsx)("input",{className:x,placeholder:"e.g. Oak Ridge Properties",value:a.client,onChange:e=>t("client",e.target.value)})]}),(0,r.jsxs)("div",{children:[(0,r.jsx)("label",{className:h,children:"Project location"}),(0,r.jsx)("div",{className:"h-72 overflow-hidden rounded-xl border border-[var(--mobile-app-card-border)] lg:h-[26rem]",children:(0,r.jsx)(u.default,{value:{address:a.address,lat:a.lat,lng:a.lng,boundary:a.boundary},onChange:e=>{t("address",e.address),t("lat",e.lat),t("lng",e.lng),t("boundary",e.boundary)}})}),(0,r.jsx)("p",{className:"mt-1 text-[11px] text-[var(--graphite-muted)]",children:a.address?a.address:"Search an address, or turn on Place pin and tap the map. This seeds walk and twin geolocation."})]})]})}),(0,r.jsx)("div",{children:(0,r.jsxs)(c,{className:"grid grid-cols-2 gap-3",children:[(0,r.jsxs)("div",{children:[(0,r.jsx)("label",{className:h,children:"Start date"}),(0,r.jsx)("input",{type:"date",className:x,value:a.startDate,onChange:e=>t("startDate",e.target.value)})]}),(0,r.jsxs)("div",{children:[(0,r.jsx)("label",{className:h,children:"Target completion"}),(0,r.jsx)("input",{type:"date",className:x,value:a.targetDate,onChange:e=>t("targetDate",e.target.value)})]}),(0,r.jsxs)("div",{className:"col-span-2",children:[(0,r.jsx)("label",{className:h,children:"Approx. size (sq ft, optional)"}),(0,r.jsx)("input",{inputMode:"numeric",className:x,placeholder:"e.g. 24,000",value:a.squareFootage,onChange:e=>t("squareFootage",e.target.value)})]})]})}),(0,r.jsx)("button",{type:"button",onClick:l,disabled:!a.name.trim(),className:d.primaryButton,children:"Continue"})]})}var g=t(52619),b=t.n(g),y=t(61362),v=t(87717);function j(e){let{projectId:a,projectName:t,inviteWarnings:l}=e;return(0,r.jsxs)("div",{className:"mx-auto flex max-w-2xl flex-col items-center px-4 py-10 text-center",children:[(0,r.jsx)("span",{className:"mb-4 flex h-16 w-16 items-center justify-center rounded-2xl border border-[var(--mobile-app-card-border)] bg-[color-mix(in_srgb,var(--graphite-primary)_16%,transparent)] text-[var(--graphite-primary)]",children:(0,r.jsx)(y.A,{className:"h-8 w-8","aria-hidden":!0})}),(0,r.jsx)("h1",{className:"text-xl font-bold text-[var(--graphite-text-header)]",children:"Project created"}),(0,r.jsxs)("p",{className:"mt-2 text-sm text-[var(--graphite-muted)]",children:[(0,r.jsx)("span",{className:"font-medium text-[var(--graphite-text-body)]",children:t})," is ready. SlateDrop folders and your project workspace are provisioned."]}),l.length>0?(0,r.jsxs)(c,{className:"mt-6 w-full text-left",children:[(0,r.jsx)("p",{className:"mb-2 text-sm font-medium text-[var(--graphite-text-header)]",children:"Some invites could not be sent"}),(0,r.jsx)("ul",{className:"space-y-1 text-xs text-[var(--graphite-muted)]",children:l.map(e=>(0,r.jsx)("li",{children:e},e))})]}):null,(0,r.jsxs)("div",{className:"mt-8 flex w-full flex-col gap-3",children:[(0,r.jsx)(b(),{href:"/projects/".concat(a),className:d.primaryButtonLg,children:"Open project"}),(0,r.jsxs)(b(),{href:"/projects",className:"inline-flex w-full items-center justify-center gap-2 rounded-2xl border border-white/10 py-3.5 text-sm font-medium text-[var(--graphite-text-body)] transition hover:bg-white/[0.04]",children:[(0,r.jsx)(v.A,{className:"h-4 w-4","aria-hidden":!0}),"Back to projects"]})]})]})}var _=t(35626);function w(e){let{step:a,onBack:t}=e;return(0,r.jsx)("div",{className:"sticky top-0 z-50 border-b border-white/10 bg-[color-mix(in_srgb,var(--graphite-canvas)_95%,transparent)] px-4 py-3 backdrop-blur-md",style:{paddingTop:"max(env(safe-area-inset-top, 0px), 12px)"},children:(0,r.jsxs)("div",{className:"flex items-center gap-3",children:[(0,r.jsx)("button",{type:"button",onClick:t,className:"-ml-2 inline-flex p-2 text-[var(--graphite-text-header)]","aria-label":"Back",children:(0,r.jsx)(_.A,{className:"h-5 w-5"})}),(0,r.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,r.jsxs)("div",{className:"font-mono text-xs tracking-[0.12em] text-[var(--graphite-muted)]",children:["STEP ",a," OF ",i.MU]}),(0,r.jsx)("div",{className:"font-semibold text-[var(--graphite-text-header)]",children:"Create New Project"})]}),(0,r.jsx)("div",{className:"flex gap-1.5",role:"progressbar","aria-valuenow":a,"aria-valuemin":1,"aria-valuemax":i.MU,"aria-label":"Step ".concat(a," of ").concat(i.MU),children:Array.from({length:i.MU},(e,t)=>{let l=t+1;return(0,r.jsx)("div",{className:(0,o.cn)("h-1.5 w-6 rounded-full transition-colors",l<=a?"bg-[var(--graphite-primary)]":"bg-white/20"),"aria-hidden":!0},l)})})]})})}
1function N(){let e=(0,l.useRouter)(),[a,t]=(0,s.useState)(1),[n,o]=(0,s.useState)(!1),{form:c,updateForm:m,createProject:u,isSubmitting:h,error:x,createdProjectId:g}=function(){let[e,a]=(0,s.useState)(i.Dh),[t,r]=(0,s.useState)(!1),[l,n]=(0,s.useState)(null),[o,d]=(0,s.useState)(null),c=(0,s.useCallback)((e,t)=>{a(a=>({...a,[e]:t}))},[]),p=(0,s.useCallback)(async()=>{r(!0),n(null);try{var a,t;let r=await fetch("/api/projects/create",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:e.name.trim(),description:e.scope.trim(),metadata:{project_type:e.projectType||null,client:e.client.trim()||null,start_date:e.startDate||null,target_date:e.targetDate||null,square_footage:e.squareFootage.trim()||null,location:{address:e.address.trim(),lat:e.lat,lng:e.lng,boundary:e.boundary}}})}),l=await r.json().catch(()=>({}));if(!r.ok||!(null==(a=l.project)?void 0:a.id))throw Error(null!=(t=l.error)?t:"Failed to create project");return d(l.project.id),l.project.id}catch(e){return n(e instanceof Error?e.message:"Something went wrong"),null}finally{r(!1)}},[e]);return{form:e,updateForm:c,createProject:p,isSubmitting:t,error:l,createdProjectId:o,reset:(0,s.useCallback)(()=>{a((0,i.Dh)()),n(null),d(null),r(!1)},[])}}(),b=()=>n?void e.push("/projects"):a>1?void t(e=>e-1):void e.back(),y=async()=>{await u()&&o(!0)};return n&&g?(0,r.jsxs)("div",{className:d.page,children:[(0,r.jsx)(w,{step:2,onBack:b}),(0,r.jsx)("div",{className:d.scrollBody,children:(0,r.jsx)(j,{projectId:g,projectName:c.name,inviteWarnings:[]})})]}):(0,r.jsxs)("div",{className:d.page,children:[(0,r.jsx)(w,{step:a,onBack:b}),(0,r.jsxs)("div",{className:d.scrollBody,children:[x?(0,r.jsx)("div",{className:"mb-4 ".concat(d.errorBanner),children:x}):null,1===a?(0,r.jsx)(f,{form:c,onChange:m,onContinue:()=>t(2)}):null,2===a?(0,r.jsx)(p,{form:c,isSubmitting:h,onSubmit:()=>void y()}):null]})]})}},20063:(e,a,t)=>{var r=t(47260);t.o(r,"useParams")&&t.d(a,{useParams:function(){return r.useParams}}),t.o(r,"usePathname")&&t.d(a,{usePathname:function(){return r.usePathname}}),t.o(r,"useRouter")&&t.d(a,{useRouter:function(){return r.useRouter}}),t.o(r,"useSearchParams")&&t.d(a,{useSearchParams:function(){return r.useSearchParams}})},25016:(e,a,t)=>{t.d(a,{cn:()=>s});var r=t(2821),l=t(75889);function s(){for(var e=arguments.length,a=Array(e),t=0;t<e;t++)a[t]=arguments[t];return(0,l.QP)((0,r.$)(a))}},35299:(e,a,t)=>{t.d(a,{A:()=>r});let r=(0,t(5121).A)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]])},35626:(e,a,t)=>{t.d(a,{A:()=>r});let r=(0,t(5121).A)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]])},59847:(e,a,t)=>{t.d(a,{A:()=>r});let r=(0,t(5121).A)("folder",[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]])},61362:(e,a,t)=>{t.d(a,{A:()=>r});let r=(0,t(5121).A)("circle-check",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]])},73181:(e,a,t)=>{t.d(a,{bA:()=>l,MU:()=>r,gi:()=>s,Dh:()=>n});let r=2,l=[{name:"01_Project_Info",folderType:"project_info",children:[{name:"Contracts",folderType:"contracts"},{name:"Drawings",folderType:"drawings"},{name:"Permits",folderType:"permits"},{name:"Specs",folderType:"specs"},{name:"Insurance",folderType:"insurance"}]},{name:"02_Site_Walk",folderType:"site_walk",app:"site_walk",children:[{name:"Photos",folderType:"site_walk_photos"},{name:"Notes",folderType:"site_walk_notes"},{name:"Voice_Memos",folderType:"site_walk_voice_memos"},{name:"Plans",folderType:"site_walk_plans"},{name:"Deliverables",folderType:"site_walk_deliverables"},{name:"Data",folderType:"site_walk_data"}]},{name:"03_Digital_Twin",folderType:"digital_twin",app:"digital_twin",children:[{name:"Clips",folderType:"twin_clips"},{name:"LiDAR",folderType:"twin_lidar"},{name:"Models",folderType:"twin_models"},{name:"Source_Assets",folderType:"twin_source_assets"},{name:"Deliverables",folderType:"twin_deliverables"}]},{name:"04_PM_Documents",folderType:"pm_documents",children:[{name:"RFIs",folderType:"rfis"},{name:"Submittals",folderType:"submittals"},{name:"Schedule",folderType:"schedule"},{name:"Budget",folderType:"budget"},{name:"Daily_Logs",folderType:"daily_logs"},{name:"Reports",folderType:"reports"},{name:"Records",folderType:"records"},{name:"Safety",folderType:"safety"},{name:"Correspondence",folderType:"correspondence"},{name:"Closeout",folderType:"closeout"}]},{name:"05_Team_Shared",folderType:"team_shared",children:[{name:"Uploads",folderType:"team_uploads"},{name:"Shared_Links",folderType:"team_shared_links"}]},{name:"06_Tour_360",folderType:"tour_360",app:"tours",children:[{name:"Scenes",folderType:"tour_360_scenes"},{name:"Plan_Sheets",folderType:"tour_360_plan_sheets"},{name:"Deliverables",folderType:"tour_360_deliverables"}]}].map(e=>({id:e.name,label:e.name.replace(/_/g," ")})),s=["Commercial","Residential","Industrial","Roofing","Civil / Infrastru
1cture","Institutional","Inspection","Other"],n=()=>({name:"",projectType:"",scope:"",client:"",address:"",lat:null,lng:null,boundary:[],startDate:"",targetDate:"",squareFootage:""})},87717:(e,a,t)=>{t.d(a,{A:()=>r});let r=(0,t(5121).A)("folder-kanban",[["path",{d:"M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.93a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2Z",key:"1fr9dc"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M12 10v2",key:"hh53o1"}],["path",{d:"M16 10v6",key:"1d6xys"}]])}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.