1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,804730,e=>{e.v({name:"shipany-template-two",version:"1.8.2",private:!0,author:"ShipAny.ai",homepage:"https://shipany.ai",repository:{type:"git",url:"https://github.com/shipanyai/shipany-template-two"},keywords:["shipany","shipany-two","shipany-template-two","ai-saas-boilerplate","ai-saas-template","ai-saas-framework","ai-saas-development"],scripts:{dev:"next dev --turbopack",build:"next build","build:fast":"NODE_OPTIONS='--max-old-space-size=4096' next build",start:"next start",lint:"eslint .",test:"vitest run","test:watch":"vitest","test:coverage":"vitest run --coverage",format:"prettier --write .","format:check":"prettier --check .","db:generate":"tsx scripts/with-env.ts npx drizzle-kit generate --config=src/core/db/config.ts","db:migrate":"tsx scripts/with-env.ts npx drizzle-kit migrate --config=src/core/db/config.ts","db:push":"tsx scripts/with-env.ts npx drizzle-kit push --config=src/core/db/config.ts","db:studio":"tsx scripts/with-env.ts npx drizzle-kit studio --config=src/core/db/config.ts","auth:generate":"tsx scripts/with-env.ts npx @better-auth/cli generate --config=src/core/auth/index.ts","indexnow:submit":"tsx scripts/submit-indexnow.ts","rbac:init":"tsx scripts/with-env.ts npx tsx scripts/init-rbac.ts","rbac:assign":"tsx scripts/with-env.ts npx tsx scripts/assign-role.ts","proxy:test":"tsx scripts/with-env.ts npx tsx scripts/test-smartproxy.ts",postinstall:"fumadocs-mdx","cf:preview":"opennextjs-cloudflare build && opennextjs-cloudflare preview","cf:deploy":"opennextjs-cloudflare build && opennextjs-cloudflare deploy","cf:upload":"opennextjs-cloudflare build && opennextjs-cloudflare upload","cf:typegen":"wrangler types --env-interface CloudflareEnv src/shared/types/cloudflare.d.ts"},dependencies:{"@ai-sdk/react":"^2.0.89","@ai-sdk/replicate":"^1.0.8","@better-fetch/fetch":"^1.1.18","@dnd-kit/core":"^6.3.1","@dnd-kit/modifiers":"^9.0.0","@dnd-kit/sortable":"^10.0.0","@dnd-kit/utilities":"^3.2.2","@hookform/resolvers":"^5.2.1","@libsql/client":"^0.15.9","@next/bundle-analyzer":"16.0.7","@next/third-parties":"16.0.7","@openrouter/ai-sdk-provider":"^1.2.0","@paypal/checkout-server-sdk":"^1.0.3","@paypal/paypal-server-sdk":"1.1.0","@planetscale/database":"^1.19.0","@radix-ui/react-accordion":"^1.2.12","@radix-ui/react-avatar":"^1.1.10","@radix-ui/react-checkbox":"^1.3.3","@radix-ui/react-collapsible":"^1.1.12","@radix-ui/react-dialog":"^1.1.15","@radix-ui/react-dropdown-menu":"^2.1.16","@radix-ui/react-hover-card":"^1.1.15","@radix-ui/react-icons":"^1.3.2","@radix-ui/react-label":"^2.1.7","@radix-ui/react-navigation-menu":"^1.2.14","@radix-ui/react-progress":"^1.1.7","@radix-ui/react-radio-group":"^1.3.8","@radix-ui/react-scroll-area":"^1.2.10","@radix-ui/react-select":"^2.2.6","@radix-ui/react-separator":"^1.1.7","@radix-ui/react-slot":"^1.2.3","@radix-ui/react-switch":"^1.2.6","@radix-ui/react-tabs":"^1.1.13","@radix-ui/react-toggle":"^1.1.10","@radix-ui/react-toggle-group":"^1.1.11","@radix-ui/react-tooltip":"^1.2.8","@radix-ui/react-use-controllable-state":"^1.2.2","@react-email/components":"^1.0.2","@tabler/icons-react":"^3.34.1","@tanstack/react-table":"^8.21.3","@types/mdx":"^2.0.13","@vercel/analytics":"^1.5.0",ai:"^5.0.39","ai-elements":"^1.6.0",aws4fetch:"^1.0.20","better-auth":"^1.3.7","class-variance-authority":"^0.7.1",clsx:"^2.1.1",cmdk:"^1.1.1",creem:"^0.3.37",dotenv:"^17.2.0","drizzle-orm":"^0.44.2","embla-carousel-auto-scroll":"^8.6.0","embla-carousel-react":"^8.6.0","framer-motion":"^12.23.12","fumadocs-core":"^15.7.12","fumadocs-mdx":"^11.10.0","fumadocs-ui":"^15.7.12","github-markdown-css":"^5.8.1","github-slugger":"^2.0.0","https-proxy-agent":"^9.0.0","lucide-react":"^0.543.0","markdown-it":"^14.1.0",moment:"^2.30.1",motion:"^12.23.12",mysql2:"^3.16.0",nanoid:"^5.1.6",next:"16.0.7","next-intl":"^4.3.4","next-mdx-remote":"^6.0.0","next-themes":"^0.4.6","nextjs-toploader":"^3.9.17",overtype:"^1.2.6",postgres:"^3.4.7",react:"19.2.1","react-copy-to-clipboard":"^5.1.0","react-dom":"19.2.1","react-hook-form":"^7.62.0","react-icons":"^5.5.0","react-lazy-load-image-component":"^1.6.3","react-use-measure":"^2.1.7",recharts:"2.15.4","rehype-autolink-headings":"^7.1.0","rehype-slug":"^6.0.0","remark-gfm":"^4.0.1",replicate:"^1.3.1",resend:"^6.0.3","rough-notation":"^0.5.1",shiki:"^3.20.0","simple-flakeid":"^0.0.5",sonner:"^2.0.7",streamdown:"^1.4.0",stripe:"^18.5.0",swiper:"^12.0.1","tailwind-merge":"^3.3.1","tailwindcss-animate":"^1.0.7",tengwar:"1.2.6","use-stick-to-bottom":"^1.1.1",uuid:"^13.0.0",vaul:"^1.1.2",zod:"^4.1.5"},devDependencies:{"@eslint/eslintrc":"^3.3.1","@ianvs/prettier-plugin-sort-imports":"^4.7.0","@tailwindcss/postcss":"^4","@types/markdown-it":"^14.1.2","@types/node":"^20","@types/pg":"^8.15.5","@types/react":"19.2.2","@types/react-copy-to-cl
1ipboard":"^5.0.7","@types/react-dom":"19.2.2","@types/react-lazy-load-image-component":"^1.6.4","@vitest/coverage-v8":"^4.1.2",autoprefixer:"^10.4.21","babel-plugin-react-compiler":"^1.0.0","dotenv-cli":"^11.0.0","drizzle-kit":"^0.31.4",eslint:"^9.37.0","eslint-config-next":"16.0.7",postcss:"^8.5.6",prettier:"^3.6.2","prettier-plugin-tailwindcss":"^0.7.1",tailwindcss:"^4",tsx:"^4.20.3","tw-animate-css":"^1.3.5",typescript:"^5",vitest:"^4.1.2",wrangler:"^4.34.0"},pnpm:{overrides:{"@types/react":"19.2.2","@types/react-dom":"19.2.2"}}})},408430,e=>{"use strict";var t=e.i(884702),r=(e,t,r,a,i,s,n,o)=>{let c=document.documentElement,l=["light","dark"];function d(t){var r;(Array.isArray(e)?e:[e]).forEach(e=>{let r="class"===e,a=r&&s?i.map(e=>s[e]||e):i;r?(c.classList.remove(...a),c.classList.add(s&&s[t]?s[t]:t)):c.setAttribute(e,t)}),r=t,o&&l.includes(r)&&(c.style.colorScheme=r)}if(a)d(a);else try{let e=localStorage.getItem(t)||r,a=n&&"system"===e?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":e;d(a)}catch(e){}},a=["light","dark"],i="(prefers-color-scheme: dark)",s="undefined"==typeof window,n=t.createContext(void 0),o={setTheme:e=>{},themes:[]},c=()=>{var e;return null!=(e=t.useContext(n))?e:o},l=e=>t.useContext(n)?t.createElement(t.Fragment,null,e.children):t.createElement(u,{...e}),d=["light","dark"],u=({forcedTheme:e,disableTransitionOnChange:r=!1,enableSystem:s=!0,enableColorScheme:o=!0,storageKey:c="theme",themes:l=d,defaultTheme:u=s?"system":"light",attribute:v="data-theme",value:g,children:b,nonce:y,scriptProps:x})=>{let[w,k]=t.useState(()=>p(c,u)),[T,E]=t.useState(()=>"system"===w?f():w),S=g?Object.values(g):l,z=t.useCallback(e=>{let t=e;if(!t)return;"system"===e&&s&&(t=f());let i=g?g[t]:t,n=r?h(y):null,c=document.documentElement,l=e=>{"class"===e?(c.classList.remove(...S),i&&c.classList.add(i)):e.startsWith("data-")&&(i?c.setAttribute(e,i):c.removeAttribute(e))};if(Array.isArray(v)?v.forEach(l):l(v),o){let e=a.includes(u)?u:null,r=a.includes(t)?t:e;c.style.colorScheme=r}null==n||n()},[y]),C=t.useCallback(e=>{let t="function"==typeof e?e(w):e;k(t);try{localStorage.setItem(c,t)}catch(e){}},[w]),L=t.useCallback(t=>{E(f(t)),"system"===w&&s&&!e&&z("system")},[w,e]);t.useEffect(()=>{let e=window.matchMedia(i);return e.addListener(L),L(e),()=>e.removeListener(L)},[L]),t.useEffect(()=>{let e=e=>{e.key===c&&(e.newValue?k(e.newValue):C(u))};return window.addEventListener("storage",e),()=>window.removeEventListener("storage",e)},[C]),t.useEffect(()=>{z(null!=e?e:w)},[e,w]);let _=t.useMemo(()=>({theme:w,setTheme:C,forcedTheme:e,resolvedTheme:"system"===w?T:w,themes:s?[...l,"system"]:l,systemTheme:s?T:void 0}),[w,C,e,T,s,l]);return t.createElement(n.Provider,{value:_},t.createElement(m,{forcedTheme:e,storageKey:c,attribute:v,enableSystem:s,enableColorScheme:o,defaultTheme:u,value:g,themes:l,nonce:y,scriptProps:x}),b)},m=t.memo(({forcedTheme:e,storageKey:a,attribute:i,enableSystem:s,enableColorScheme:n,defaultTheme:o,value:c,themes:l,nonce:d,scriptProps:u})=>{let m=JSON.stringify([i,a,o,e,l,c,s,n]).slice(1,-1);return t.createElement("script",{...u,suppressHydrationWarning:!0,nonce:"undefined"==typeof window?d:"",dangerouslySetInnerHTML:{__html:`(${r.toString()})(${m})`}})}),p=(e,t)=>{let r;if(!s){try{r=localStorage.getItem(e)||void 0}catch(e){}return r||t}},h=e=>{let t=document.createElement("style");return e&&t.setAttribute("nonce",e),t.appendChild(document.createTextNode("*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}")),document.head.appendChild(t),()=>{window.getComputedStyle(document.body),setTimeout(()=>{document.head.removeChild(t)},1)}},f=e=>(e||(e=window.matchMedia(i)),e.matches?"dark":"light");e.s(["ThemeProvider",()=>l,"useTheme",()=>c])},804722,e=>{"use strict";let t=(0,e.i(889522).default)("arrow-up",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]);e.s(["default",()=>t])},797160,e=>{"use strict";var t=e.i(623099),r=e.i(466471);function a({locale:e,...a}){if(!e)throw Error(void 0);return(0,r.jsx)(t.IntlProvider,{locale:e,...a})}e.s(["default",()=>a])},998415,e=>{"use strict";var t=e.i(466471),r=e.i(536355),a=e.i(884702),i=e.i(623099),s=e.i(408430),n=e.i(551956);
1function o(e){let o,c,l,d=(0,r.c)(5),{children:u}=e,m=(0,i.useLocale)();return d[0]!==m?(o=()=>{"undefined"!=typeof document&&m&&(document.documentElement.lang=m)},c=[m],d[0]=m,d[1]=o,d[2]=c):(o=d[1],c=d[2]),(0,a.useEffect)(o,c),d[3]!==u?(l=(0,t.jsx)(s.ThemeProvider,{attribute:"class",defaultTheme:n.envConfigs.appearance,enableSystem:!0,disableTransitionOnChange:!0,children:u}),d[3]=u,d[4]=l):l=d[4],l}e.s(["ThemeProvider",()=>o])},653647,e=>{e.v({button:"back-to-top-module__D8Oasq__button"})},627328,e=>{"use strict";var t=e.i(466471),r=e.i(536355),a=e.i(884702),i=e.i(804722),i=i,s=e.i(653647);function n(){let e,n,c,l,d=(0,r.c)(8),[u,m]=(0,a.useState)(!1),[p,h]=(0,a.useState)(!1);d[0]===Symbol.for("react.memo_cache_sentinel")?(e=()=>{let e=window.matchMedia("(min-width: 64rem)"),t=window.scrollY,r=0,a=0,i=null,s=()=>{i=null;let s=Math.min(Math.max(0,document.documentElement.scrollHeight-window.innerHeight),Math.max(0,window.scrollY)),n=s-t;if(t=s,m(e.matches&&s>400),!e.matches||s<=400){r=0,a=0,h(!1);return}if(0===n)return;let o=Math.sign(n);a=o===r?a+Math.abs(n):Math.abs(n),r=o,a>=8&&h(r<0)},n=()=>{null===i&&(i=window.requestAnimationFrame(s))};return n(),window.addEventListener("scroll",n,{passive:!0}),window.addEventListener("resize",n),e.addEventListener("change",n),()=>{window.removeEventListener("scroll",n),window.removeEventListener("resize",n),e.removeEventListener("change",n),null!==i&&window.cancelAnimationFrame(i)}},n=[],d[0]=e,d[1]=n):(e=d[0],n=d[1]),(0,a.useEffect)(e,n);let f=!u,v=u?0:-1;return d[2]===Symbol.for("react.memo_cache_sentinel")?(c=(0,t.jsx)(i.default,{size:22,strokeWidth:2,"aria-hidden":"true"}),d[2]=c):c=d[2],d[3]!==p||d[4]!==f||d[5]!==v||d[6]!==u?(l=(0,t.jsx)("button",{type:"button",className:s.default.button,"data-visible":u,"data-scrolling-up":p,"aria-label":"Back to top",title:"Back to top","aria-hidden":f,tabIndex:v,onClick:o,children:c}),d[3]=p,d[4]=f,d[5]=v,d[6]=u,d[7]=l):l=d[7],l}function o(){document.getElementById("main-content")?.focus({preventScroll:!0}),window.scrollTo({top:0,behavior:window.matchMedia("(prefers-reduced-motion: reduce)").matches?"instant":"smooth"})}e.s(["BackToTop",()=>n],627328)},528842,e=>{"use strict";var t=e.i(466471),r=e.i(536355),a=e.i(408430),i=e.i(779342),s=e.i(884702);let n=e=>{let n,o,c,l,d,u=(0,r.c)(8);u[0]!==e?({...n}=e,u[0]=e,u[1]=n):n=u[1];let{theme:m}
1=(0,a.useTheme)(),[p,h]=(0,s.useState)(!1);if(u[2]===Symbol.for("react.memo_cache_sentinel")?(o=()=>{h(!0)},c=[],u[2]=o,u[3]=c):(o=u[2],c=u[3]),(0,s.useEffect)(o,c),!p)return null;let f=void 0===m?"system":m;return u[4]===Symbol.for("react.memo_cache_sentinel")?(l={"--normal-bg":"var(--popover)","--normal-text":"var(--popover-foreground)","--normal-border":"var(--border)"},u[4]=l):l=u[4],u[5]!==n||u[6]!==f?(d=(0,t.jsx)(i.Toaster,{theme:f,className:"toaster group",style:l,...n}),u[5]=n,u[6]=f,u[7]=d):d=u[7],d};e.s(["Toaster",()=>n])}]);
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.