PageSourceSearch

https://app.aziru.email/_next/static/chunks/6124-d000e627b51eaa08.js

js aziru.email collected 2026-10-09 04:49:31 UTC 13,686 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[6124],{6124:(e,t,a)=>{a.d(t,{rc:()=>d,i8:()=>s,An:()=>m,AJ:()=>l,b1:()=>C,cS:()=>J,wT:()=>F,Fh:()=>$,M9:()=>r,wz:()=>c,NB:()=>Z,D:()=>Q,EZ:()=>o,GZ:()=>ee,Wo:()=>P,cI:()=>n,nj:()=>W,gk:()=>_,Jx:()=>H,kL:()=>i,j4:()=>j,iO:()=>w,cs:()=>O,Tw:()=>v});let o=3,r=100;function n(e,t){let a=e.find(e=>e.isRoot);if(!a)return 0;let o=new Map;for(let e of t){let t=o.get(e.sourceNodeId)??[];t.push(e.targetNodeId),o.set(e.sourceNodeId,t)}let r=new Set([a.id]),n=[a.id];for(;n.length>0;){let e=n.shift();for(let t of o.get(e)??[])r.has(t)||(r.add(t),n.push(t))}let i=0;for(let t of e)!t.isRoot&&!t.isCatchAll&&r.has(t.id)&&i++;return i}function i(e,t){return n(e,t)>=o}let l="updates_other",s="Updates / Other",d="Automated notifications, newsletters, and service updates that don't fit another folder.",m={x:300,y:600};var u=a(6813);let c=12;u.Yj().min(c,`Password must be at least ${c} characters`).max(72,"Password must be at most 72 characters"),u.Ik({email:u.Yj().email("Invalid email address")});let p=u.k5(["LOW","MEDIUM","HIGH"]),f=u.k5(["NONE","SOON","TODAY","OVERDUE","UNKNOWN"]),h=u.k5(["LOW","MEDIUM","HIGH"]),k=u.k5(["NONE","REPLY","REVIEW","APPROVE","SCHEDULE","PAY","DELEGATE","ARCHIVE","UNKNOWN"]),b=u.k5(["NORMAL","CONFIDENTIAL","PERSONAL_DATA","FINANCIAL","LEGAL","SECURITY"]),g=u.k5(["LABEL_ONLY","CREATE_DRAFT","ASK_USER","OPEN_IN_GMAIL"]);var y=a(7329);let I=/<[a-zA-Z][^>]*>/,Y=/[\p{Script=Han}\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Hangul}]/gu;function x(e){let t=e.replace(/\s/g,"");return 0!==t.length&&(t.match(Y)?.length??0)/t.length>.5}function w(e){return x(e)?2:3}function j(e){return x(e)?12:30}let S=u.Yj().trim().max(40,"Name must be at most 40 characters").refine(e=>e.length>=w(e),"Name must be at least 3 characters (2 for Chinese/Japanese)").refine(e=>/[\p{L}\p{N}]/u.test(e),"Name must contain at least one letter or digit"),E=u.Yj().trim().max(300,"Description must be at most 300 characters").refine(e=>e.replace(/\s/g,"").length>=j(e),"Description must have at least 30 non-whitespace characters (12 for Chinese/Japanese). Descriptions improve AI sorting quality.").refine(e=>!I.test(e),"Description must be plain text (no HTML). Descriptions improve AI sorting quality.");u.Ik({id:u.Yj().min(1),workspaceId:u.Yj().min(1),name:u.Yj().min(1).max(100),description:u.Yj().max(500).nullable(),instructions:u.Yj().max(2e3).nullable(),draftPrompt:u.Yj().max(500).nullable(),examples:u.YO(u.Yj()),isRoot:u.zM(),isCatchAll:u.zM().optional(),colorKey:u.Yj().nullable().optional(),positionX:u.ai(),positionY:u.ai(),createdAt:u.Yj().datetime(),updatedAt:u.Yj().datetime()}),u.Ik({workspaceId:u.Yj().min(1),name:S,description:E,instructions:u.Yj().max(2e3).optional(),draftPrompt:u.Yj().trim().max(500).nullable().optional(),examples:u.YO(u.Yj()).optional(),colorKey:u.Yj().trim().max(32).nullable().optional(),positionX:u.ai().optional(),positionY:u.ai().optional()}).superRefine((e,t)=>{e.description.trim().toLowerCase()===e.name.trim().toLowerCase()&&t.addIssue({code:y.eq.custom,message:"Description must differ from the node name. Descriptions improve AI sorting quality.",path:["description"]})}),u.Ik({name:S.optional(),description:E.optional(),instructions:u.Yj().max(2e3).optional(),draftPrompt:u.Yj().trim().max(500).nullable().optional(),examples:u.YO(u.Yj()).optional(),colorKey:u.Yj().trim().max(32).nullable().optional(),positionX:u.ai().optional(),positionY:u.ai().optional()}).superRefine((e,t)=>{void 0!==e.name&&void 0!==e.description&&e.description.trim().toLowerCase()===e.name.trim().toLowerCase()&&t.addIssue({code:y.eq.custom,message:"Description must differ from the node name. Descriptions improve AI sorting quality.",path:["description"]})}),u.Ik({id:u.Yj().min(1),workspaceId:u.Yj().min(1),sourceNodeId:u.Yj().min(1),targetNodeId:u.Yj().min(1),createdAt:u.Yj().datetime(),updatedAt:u.Yj().datetime()}),u.Ik({workspaceId:u.Yj().min(1),sourceNodeId:u.Yj().min(1),targetNodeId:u.Yj().min(1)});let A=u.Ik({edgeId:u.Yj().min(1),sourceNodeId:u.Yj().min(1),targetNodeId:u.Yj().min(1),confidence:u.ai().min(0).max(1),explanation:u.Yj()}),R=/<[a-zA-Z][^>]*>/,M=e=>u.Yj().max(e).refine(e=>!R.test(e),"Must be plain text (no HTML)"),N=u.Ik({ref:u.Yj().min(1),name:u.Yj().min(1).max(100).refine(e=>!R.test(e),"Must be plain text (no HTML)"),description:u.Yj().max(500).nullable(),instructions:M(2e3).nullable(),draftPrompt:M(500).nullable(),examples:u.YO(M(500)).max(20),isRo
1ot:u.zM(),isCatchAll:u.zM().optional(),positionX:u.ai().finite(),positionY:u.ai().finite()}),T=u.Ik({sourceRef:u.Yj().min(1),targetRef:u.Yj().min(1)}),P=u.Ik({amarnaiTaxonomyVersion:u.eu(1),exportedAt:u.Yj().datetime(),nodes:u.YO(N).min(1).max(300),edges:u.YO(T).max(600)});function v(e){let{nodes:t,edges:a}=e,o=new Set;for(let e of t){if(o.has(e.ref))return{ok:!1,error:`Duplicate folder ref: "${e.ref}"`};o.add(e.ref)}let n=t.filter(e=>e.isRoot);if(0===n.length)return{ok:!1,error:"Taxonomy must have exactly one root folder (Inbox)"};if(n.length>1)return{ok:!1,error:"Taxonomy must have exactly one root folder. Found multiple."};let i=n[0].ref,l=t.length-n.length;if(l>r)return{ok:!1,error:`Taxonomy has too many folders (${l}). The maximum is ${r}.`};for(let e of t){if(e.isRoot)continue;let t=S.safeParse(e.name);if(!t.success)return{ok:!1,error:`Folder "${e.name}": ${t.error.issues[0]?.message??"invalid name"}`};if(!e.description)return{ok:!1,error:`Folder "${e.name}": description is required`};let a=E.safeParse(e.description);if(!a.success)return{ok:!1,error:`Folder "${e.name}": ${a.error.issues[0]?.message??"invalid description"}`};if(e.description.trim().toLowerCase()===e.name.trim().toLowerCase())return{ok:!1,error:`Folder "${e.name}": description must differ from the folder name`}}let s=new Map;for(let e of a){if(!o.has(e.sourceRef))return{ok:!1,error:`Path references unknown source ref: "${e.sourceRef}"`};if(!o.has(e.targetRef))return{ok:!1,error:`Path references unknown target ref: "${e.targetRef}"`};if(e.targetRef===i)return{ok:!1,error:"The root folder cannot be the target of a Path"};let t=(s.get(e.targetRef)??0)+1;if(t>1)return{ok:!1,error:`Folder ref "${e.targetRef}" has more than one parent. Taxonomy must be a tree.`};s.set(e.targetRef,t)}if(function(e){let t=new Map;for(let a of e){let e=t.get(a.sourceRef)??[];e.push(a.targetRef),t.set(a.sourceRef,e)}let a=new Set,o=new Set;for(let e of t.keys())if(function e(r){if(o.has(r))return!0;if(a.has(r))return!1;for(let n of(a.add(r),o.add(r),t.get(r)??[]))if(e(n))return!0;return o.delete(r),!1}(e))return!0;return!1}(a))return{ok:!1,error:"Taxonomy contains a cycle"};let d=t.filter(e=>e.isCatchAll);if(0===d.length)return{ok:!1,error:"Taxonomy must have exactly one catch-all folder (e.g. Updates / Other)"};if(d.length>1)return{ok:!1,error:"Taxonomy must have exactly one catch-all folder. Found multiple."};let m=d[0];return m.isRoot?{ok:!1,error:"The catch-all folder cannot also be the root (Inbox)"}:a.some(e=>e.sourceRef===m.ref)?{ok:!1,error:`Catch-all folder "${m.name}" must be a leaf (it cannot have sub-folders)`}:a.some(e=>e.targetRef===m.ref&&e.sourceRef!==i)?{ok:!1,error:`Catch-all folder "${m.name}" can only be connected directly to the Inbox`}:{ok:!0,data:e}}function O(e,t){return{amarnaiTaxonomyVersion:1,exportedAt:new Date().toISOString(),nodes:e.map(e=>({ref:e.id,name:e.name,description:e.description,instructions:e.instructions,draftPrompt:e.draftPrompt,examples:e.examples,isRoot:e.isRoot,isCatchAll:e.isCatchAll??!1,positionX:e.positionX,positionY:e.positionY})),edges:t.map(e=>({sourceRef:e.sourceNodeId,targetRef:e.targetNodeId}))}}u.KC([P,u.Ik({file:P,mapping:u.g1(u.Yj(),u.KC([u.Yj().min(1),u.eu("resort")]))})]);let D=u.k5(["AMARNAI","GMAIL"]);u.Ik({workspaceId:u.Yj().min(1),name:u.Yj().min(1).max(50),color:u.Yj().regex(/^#[0-9a-fA-F]{6}$/,"Must be a valid hex color").optional(),source:D,gmailLabelId:u.Yj().optional()}),u.Ik({v:u.eu(1),maxRawSim:u.ai(),maxSubtreeScore:u.ai(),thetaMin:u.ai(),topRawSims:u.YO(u.Ik({nodeId:u.Yj(),sim:u.ai()})),crossBranch:u.Ik({site:u.k5(["root","mid"]),gap:u.ai(),rivalScore:u.ai(),triggered:u.zM()}).nullable()}),u.Ik({finalNodeId:u.Yj().min(1),path:u.YO(A),confidence:u.ai().min(0).max(1),explanation:u.Yj().optional(),priority:p,urgency:f,riskLevel:h,requiredAction:k,sensitivity:b,dueAt:u.Yj().datetime().optional(),suggestedNextStep:g,needsHumanReview:u.zM(),modelProvider:u.Yj().optional(),modelName:u.Yj().optional(),promptVersion:u.Yj().optional(),rawOutput:u.g1(u.L5()).optional()});let L=u.Ik({includeSpam:u.zM().default(!1),includePromotions:u.zM().default(!1),sortingPaused:u.zM().default(!1),routeBulkToOther:u.zM().default(!0),labelWritebackEnabled:u.zM().default(!0),threadSummaryInjectionEnabled:u.zM().default(!0),replyButtonInjectionEnabled:u.zM().default(!0),injectedPanelEnabled:u.zM().default(!0),blacklistedSenderEmails:u.YO(u.Yj().email()
1).default([])}),C={includeSpam:!1,includePromotions:!1,sortingPaused:!1,routeBulkToOther:!0,labelWritebackEnabled:!0,threadSummaryInjectionEnabled:!0,replyButtonInjectionEnabled:!0,injectedPanelEnabled:!0,blacklistedSenderEmails:[]};L.extend({writebackAvailable:u.zM().default(!1),hasWritebackScope:u.zM().default(!1)}),u.Ik({includeSpam:u.zM().optional(),includePromotions:u.zM().optional(),sortingPaused:u.zM().optional(),routeBulkToOther:u.zM().optional(),labelWritebackEnabled:u.zM().optional(),threadSummaryInjectionEnabled:u.zM().optional(),replyButtonInjectionEnabled:u.zM().optional(),injectedPanelEnabled:u.zM().optional()}),u.Ik({email:u.Yj().email()}),u.Ik({writebackAvailable:u.zM().default(!1)});let z=u.k5(["ANDROID","IOS"]);u.Ik({expoPushToken:u.Yj().min(1).max(512),platform:z});let U=u.k5(["CHROME","FIREFOX"]);u.Ik({browser:U,version:u.Yj().min(1).max(32)});let F=2e3,$=10;function H(e=new Date){return new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth()+1,1))}function W(e){return new Date(e).toLocaleDateString("en",{month:"short",day:"numeric",timeZone:"UTC"})}u.Ik({body:u.Yj().trim().min(1).max(F),mentionUserIds:u.YO(u.Yj().min(1)).max($).default([])});let B={FREE:0,PRO:1,BUSINESS:2};function _(e){return B[e]??B.FREE}let q={FREE:{monthly:{maxThreads:500,windowDays:null},annual:{maxThreads:500,windowDays:null}},PRO:{monthly:{maxThreads:1e4,windowDays:null},annual:{maxThreads:5e4,windowDays:null}},BUSINESS:{monthly:{maxThreads:2e4,windowDays:null},annual:{maxThreads:75e3,windowDays:null}}};function K(e,t){let a=q[e]??q.FREE;return"ANNUAL"===t?a.annual:a.monthly}let G={free:"FREE",pro:"PRO",business:"BUSINESS"};function V(e){return e.toLocaleString("en-US")}function X(e,t,a){let o=K(G[e],"MONTHLY"),r=K(G[e],"annual"===t?"ANNUAL":"MONTHLY");return"annual"===t&&r.maxThreads===o.maxThreads&&r.windowDays===o.windowDays?"Same as monthly":null!=r.windowDays?`${V(r.maxThreads)} threads or last ${r.windowDays} days`:`${V(r.maxThreads)} ${a}`}let Z=[{id:"free",name:"Apprentice",tagline:"For trying Aziru on your own inbox.",monthlyPrice:0,annualMonthlyPrice:0,free:!0,highlights:["1 free workspace","50 threads sorted / month","3 reply drafts / month","50 thread summaries / month","Up to 12 plan nodes"],cta:{label:"Start free",kind:"secondary"}},{id:"pro",name:"Scribe",tagline:"For your busy inbox as a freelancer, consultant, property manager, or business owner.",monthlyPrice:6,annualMonthlyPrice:5,featured:!0,badge:"Most popular",highlights:["Up to 2 people","5,000 threads sorted / month","200 reply drafts / month, pooled","5,000 thread summaries / month, pooled","Unlimited plan nodes","Shared plan"],cta:{label:"Start 14-day trial",kind:"primary"}},{id:"business",name:"Pharaoh",tagline:"For your high-volume or shared inbox as a recruiter, agency, or small team on one mailbox.",monthlyPrice:15,annualMonthlyPrice:12,highlights:["Up to 3 people","10,000 threads sorted / month","500 reply drafts / month, pooled","10,000 thread summaries / month, pooled","Unlimited plan nodes","Shared plan"],cta:{label:"Start 14-day trial",kind:"secondary"}}],J=[{name:"Workspace",rows:[{label:"Billing unit",values:["Workspace","Workspace","Workspace"]},{label:"Workspace type",values:["Default free workspace","Paid or upgraded workspace","Paid or upgraded workspace"]},{label:"Workspaces included",values:["1 free workspace / user","1 Scribe workspace","1 Pharaoh workspace"]},{label:"Collaborators",values:["1 person","2 people","3 people"]}]},{name:"Sorting volume",rows:[{label:"Threads sorted / month",values:["50","5,000","10,000"]},{label:"Initial backfill",hint:"Historical threads sorted when you first connect",billing:{monthly:[X("free","monthly","threads"),X("pro","monthly","threads"),X("business","monthly","threads")],annual:[X("free","annual","threads"),X("pro","annual","threads"),X("business","annual","threads")]}},{label:"Reply drafts",values:["3 / month","200 / month, pooled","500 / month, pooled"]},{label:"Thread summaries",hint:"AI TL;DR of a thread, generated the first time you open it",values:["50 / month","5,000 / month, pooled","10,000 / month, pooled"]}
1,{label:"Plan nodes",values:["12",{note:"Unlimited"},{note:"Unlimited"}]}]},{name:"Triage & review",rows:[{label:"Shared plan",values:[!1,!0,!0]},{label:"Metadata",values:["Basic","Full","Full"]},{label:"Model quality",values:["Standard sorting","Enhanced + fallback","Enhanced + higher fallback"]}]},{name:"Support",rows:[{label:"Support",values:["Community & docs","Email support","Priority support"]}]}],Q={title:"Prefer to self-host?",body:"Aziru is open source under AGPL-3.0. Clone it, bring your own keys, and run every tier free on your own infrastructure.",cta:{label:"Self-host guide",href:"https://docs.aziru.email/docs/self-hosting"}},ee="BUSINESS"}}]);

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.